/*
 * Style wydzielone z start/programpartnerski.php.
 * Arkusz jest ładowany po Bootstrapie i Skeletonie.
 */

.gf-aml {
            --view-max-width: 1240px;
            width: 100%;
            max-width: none;
            margin: 0;
            padding: 0;
            font-size: 16px;
            line-height: 1.58;
            text-align: left;
        }
        .gf-aml, .gf-aml *, .gf-aml *::before, .gf-aml *::after { box-sizing: border-box; }
        .gf-aml :where(.container) {
            width: min(var(--view-max-width), calc(100% - 40px));
            max-width: none;
            margin-inline: auto;
            padding-inline: 0;
        }
        .gf-aml :where(.section) { text-align: left; }
        .gf-aml :where(button) {
            height: auto;
            min-height: 0;
            margin: 0;
            color: inherit;
            font: inherit;
            letter-spacing: normal;
            line-height: normal;
            text-align: inherit;
            text-transform: none;
            white-space: normal;
            border-radius: 0;
            cursor: pointer;
        }
        .gf-aml :where(button, input, select, textarea) { font-family: inherit; }
        .gf-aml :where(p, span, li, i) { color: inherit; }
        .gf-aml :where(img, svg, video) { display: block; max-width: 100%; }
        .gf-aml :where(img, video) { height: auto; }
        .gf-aml :where(p, ul, ol, figure) { margin-top: 0; }
        @media (max-width: 760px) {
            .gf-aml :where(.container) { width: min(var(--view-max-width), calc(100% - 28px)); }
        }

.gf-aml {
            --navy-950: #041a30;
            --navy-900: #072541;
            --navy-800: #0a355b;
            --navy-700: #174f75;
            --navy-600: #2c6688;
            --ink: #17364f;
            --muted: #63798b;
            --line: #d9e5ec;
            --paper: #f8fbfd;
            --white: #ffffff;
            --yellow: #f4c64e;
            --yellow-strong: #efb72a;
            --orange: #e98b4a;
            --red: #cf4650;
            --red-deep: #a92f3a;
            --red-soft: #fff0f1;
            --sky: #eaf5fb;
            --sky-strong: #bfdeee;
            --mint: #eaf7f1;
            --mint-strong: #b9dfce;
            --lilac: #f3effb;
            --lilac-strong: #d7cbea;
            --sand: #fff7df;
            --sand-strong: #ecd791;
            --peach: #fff0e6;
            --peach-strong: #f1c4a8;
            --shadow: 0 28px 70px rgba(7, 37, 65, .14);
            --shadow-soft: 0 12px 34px rgba(7, 37, 65, .08);
            --max: 1240px;
            color: var(--ink);
            background: var(--white);
            font-family: Montserrat, Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
            line-height: 1.58;
            overflow: hidden;
            text-rendering: optimizeLegibility;
        }
        .gf-aml, .gf-aml * { box-sizing: border-box; }
        .gf-aml a { color: inherit; }
        .gf-aml img, .gf-aml svg { display: block; max-width: 100%; }
        .gf-aml button, .gf-aml input, .gf-aml select, .gf-aml textarea { font: inherit; }
        .gf-aml button { cursor: pointer; }
        .gf-aml h1, .gf-aml h2, .gf-aml h3, .gf-aml h4 { margin: 0; color: var(--navy-900); line-height: 1.08; letter-spacing: -.035em; }
        .gf-aml h1 { font-size: clamp(42.4px, 6.2vw, 90.4px); }
        .gf-aml h2 { font-size: clamp(32px, 4.2vw, 60px); }
        .gf-aml h3 { font-size: clamp(17.28px, 1.7vw, 22.72px); }
        .gf-aml p { margin: 0; }
        .gf-aml ul { margin: 0; }
        .gf-aml .container { width: min(var(--max), calc(100% - 40px)); margin-inline: auto; }
        .gf-aml .section { padding: 100px 0; }
        .gf-aml .section-paper { background: var(--paper); }
        .gf-aml .section-sky { background: linear-gradient(180deg, #fbfdfe, var(--sky)); }
        .gf-aml .section-mint { background: linear-gradient(180deg, #fcfefd, var(--mint)); }
        .gf-aml .section-lilac { background: linear-gradient(180deg, #fdfcfe, var(--lilac)); }
        .gf-aml .section-navy { color: var(--white); background: linear-gradient(145deg, var(--navy-950), var(--navy-800)); }
        .gf-aml .section-navy h2, .gf-aml .section-navy h3, .gf-aml .section-navy h4 { color: var(--white); }
        .gf-aml .lead { max-width: 820px; color: var(--muted); font-size: clamp(16.64px, 1.8vw, 20px); }
        .gf-aml .muted { color: var(--muted); }
        .gf-aml .section-head { display: flex; align-items: end; justify-content: space-between; gap: 42px; margin-bottom: 48px; }
        .gf-aml .section-head .lead { max-width: 660px; }
        .gf-aml .eyebrow {
            display: inline-flex;
            align-items: center;
            gap: 10px;
            margin-bottom: 16px;
            color: var(--navy-600);
            font-size: 12.16px;
            font-weight: 900;
            letter-spacing: .14em;
            text-transform: uppercase;
        }
        .gf-aml .eyebrow::before { content: ""; width: 26px; height: 4px; background: linear-gradient(90deg, var(--yellow), var(--orange)); }
        .gf-aml .section-navy .eyebrow { color: rgba(255,255,255,.72); }
        .gf-aml .section-navy .lead, .gf-aml .section-navy .muted { color: rgba(255,255,255,.72); }

        .gf-aml .btn {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 10px;
            min-height: 54px;
            padding: 0 25px;
            border: 1px solid transparent;
            border-radius: 999px;
            text-decoration: none;
            font-weight: 900;
            transition: transform .18s ease, box-shadow .18s ease, background .18s ease;
        }
        .gf-aml .btn:hover { transform: translateY(-2px); }
        .gf-aml .btn-primary { color: var(--navy-950); background: var(--yellow); box-shadow: 0 14px 30px rgba(244,198,78,.25); }
        .gf-aml .btn-primary:hover { background: #ffd365; }
        .gf-aml .btn-light { color: var(--navy-900); background: var(--white); border-color: rgba(255,255,255,.32); }
        .gf-aml .btn-outline { color: var(--navy-800); background: rgba(255,255,255,.75); border-color: rgba(10,53,91,.22); }
        .gf-aml .btn-red { color: var(--white); background: var(--red); box-shadow: 0 14px 30px rgba(207,70,80,.20); }

        .gf-aml .hero {
            position: relative;
            overflow: hidden;
            padding: 88px 0 84px;
            color: var(--white);
            background:
                    radial-gradient(circle at 84% 12%, rgba(244,198,78,.22), transparent 25%),
                    radial-gradient(circle at 63% 93%, rgba(106,205,176,.18), transparent 28%),
                    linear-gradient(135deg, var(--navy-950) 0%, var(--navy-800) 68%, #0d416a 100%);
        }
        .gf-aml .hero::before {
            content: "";
            position: absolute;
            width: 620px;
            height: 620px;
            top: -390px;
            left: -250px;
            border: 1px solid rgba(255,255,255,.09);
            border-radius: 50%;
            box-shadow: 0 0 0 90px rgba(255,255,255,.025), 0 0 0 180px rgba(255,255,255,.018);
        }
        .gf-aml .hero::after {
            content: "";
            position: absolute;
            width: 260px;
            height: 260px;
            right: -70px;
            bottom: -100px;
            background: var(--yellow);
            opacity: .09;
            transform: rotate(18deg);
        }
        .gf-aml .hero-grid { position: relative; z-index: 2; display: grid; grid-template-columns: 1.04fr .96fr; gap: 58px; align-items: center; }
        .gf-aml .hero .eyebrow { color: rgba(255,255,255,.74); }
        .gf-aml .hero h1 { color: var(--white); }
        .gf-aml .hero h1 span { color: var(--yellow); }
        .gf-aml .hero-copy .lead { margin-top: 25px; color: rgba(255,255,255,.77); }
        .gf-aml .hero-actions { display: flex; flex-wrap: wrap; gap: 13px; margin-top: 30px; }
        .gf-aml .hero-note { margin-top: 17px; color: rgba(255,255,255,.60); font-size: 13.28px; }
        .gf-aml .trust-row { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 27px; }
        .gf-aml .trust-chip { display: inline-flex; align-items: center; gap: 8px; padding: 9px 12px; border: 1px solid rgba(255,255,255,.13); border-radius: 999px; background: rgba(255,255,255,.07); color: rgba(255,255,255,.88); font-size: 12.64px; font-weight: 800; backdrop-filter: blur(8px); }
        .gf-aml .trust-chip::before { content: "✓"; color: var(--yellow); font-weight: 900; }

        .gf-aml .app-preview { position: relative; padding: 17px; border: 1px solid rgba(255,255,255,.19); border-radius: 0 34px 0 34px; background: rgba(255,255,255,.10); box-shadow: 0 36px 90px rgba(0,0,0,.30); backdrop-filter: blur(14px); }
        .gf-aml .preview-bar { display: flex; align-items: center; justify-content: space-between; padding: 4px 4px 15px; color: rgba(255,255,255,.68); font-size: 11.2px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
        .gf-aml .dots { display: flex; gap: 6px; }
        .gf-aml .dots i { width: 9px; height: 9px; border-radius: 50%; background: rgba(255,255,255,.25); }
        .gf-aml .dots i:nth-child(1) { background: #f0838c; }
        .gf-aml .dots i:nth-child(2) { background: #f4ca60; }
        .gf-aml .dots i:nth-child(3) { background: #7dd2b3; }
        .gf-aml .app-shell { overflow: hidden; display: grid; grid-template-columns: 145px 1fr; min-height: 458px; background: #f6fafc; border-radius: 0 23px 0 23px; }
        .gf-aml .app-side { padding: 20px 13px; color: rgba(255,255,255,.82); background: linear-gradient(180deg, var(--navy-800), var(--navy-950)); }
        .gf-aml .app-brand { margin-bottom: 20px; color: var(--white); font-size: 12.8px; font-weight: 950; }
        .gf-aml .app-menu { display: grid; gap: 7px; }
        .gf-aml .app-menu div { padding: 9px 9px; border-radius: 8px; font-size: 10.24px; }
        .gf-aml .app-menu div.active { color: var(--navy-950); background: var(--yellow); font-weight: 900; }
        .gf-aml .app-content { padding: 17px; }
        .gf-aml .app-head { display: flex; align-items: center; justify-content: space-between; gap: 14px; }
        .gf-aml .app-head strong { color: var(--navy-900); font-size: 15.2px; }
        .gf-aml .app-head span { padding: 6px 9px; border-radius: 999px; color: #287659; background: var(--mint); font-size: 9.6px; font-weight: 900; }
        .gf-aml .app-kpis { display: grid; grid-template-columns: repeat(3,1fr); gap: 9px; margin-top: 15px; }
        .gf-aml .app-kpi { padding: 13px; background: var(--white); box-shadow: 0 8px 20px rgba(7,37,65,.07); }
        .gf-aml .app-kpi:nth-child(2) { border-radius: 14px; }
        .gf-aml .app-kpi:nth-child(3) { border-radius: 0 14px 0 14px; }
        .gf-aml .app-kpi small { display: block; color: var(--muted); font-size: 8.96px; }
        .gf-aml .app-kpi b { display: block; margin-top: 5px; color: var(--navy-900); font-size: 19.2px; }
        .gf-aml .app-grid { display: grid; grid-template-columns: 1.15fr .85fr; gap: 10px; margin-top: 11px; }
        .gf-aml .app-panel { padding: 14px; background: var(--white); box-shadow: 0 8px 20px rgba(7,37,65,.06); }
        .gf-aml .app-panel.round { border-radius: 15px; }
        .gf-aml .app-panel.cut { border-radius: 0 15px 0 15px; }
        .gf-aml .app-panel h4 { font-size: 11.52px; letter-spacing: 0; }
        .gf-aml .client-row { display: grid; grid-template-columns: 1fr auto; gap: 8px; align-items: center; padding: 9px 0; border-bottom: 1px solid #edf2f5; }
        .gf-aml .client-row:last-child { border-bottom: 0; }
        .gf-aml .client-row strong { display: block; color: var(--ink); font-size: 9.76px; }
        .gf-aml .client-row small { display: block; margin-top: 2px; color: var(--muted); font-size: 8.32px; }
        .gf-aml .status { padding: 4px 7px; border-radius: 999px; font-size: 8px; font-style: normal; font-weight: 900; }
        .gf-aml .status.ok { color: #277052; background: var(--mint); }
        .gf-aml .status.mid { color: #8a650b; background: var(--sand); }
        .gf-aml .status.high { color: var(--red-deep); background: var(--red-soft); }
        .gf-aml .task { display: flex; gap: 7px; padding: 8px 0; border-bottom: 1px solid #edf2f5; color: var(--muted); font-size: 8.8px; }
        .gf-aml .task:last-child { border-bottom: 0; }
        .gf-aml .task::before { content: ""; width: 8px; height: 8px; flex: 0 0 8px; margin-top: 2px; border: 2px solid #83b5ce; border-radius: 50%; }

        .gf-aml .legal-alert { position: relative; z-index: 3; margin-top: -1px; background: linear-gradient(105deg,#fffaf0,#fff3cf); border-top: 1px solid #efd58b; border-bottom: 1px solid #efd58b; }
        .gf-aml .legal-alert-inner { display: grid; grid-template-columns: auto 1fr auto; gap: 19px; align-items: center; padding: 24px 0; }
        .gf-aml .alert-mark { width: 50px; height: 50px; display: grid; place-items: center; color: var(--navy-950); background: var(--yellow-strong); font-size: 21.6px; font-weight: 950; box-shadow: 0 8px 20px rgba(122,88,16,.16); }
        .gf-aml .legal-alert strong { display: block; color: var(--navy-900); font-size: 16.32px; }
        .gf-aml .legal-alert p { margin-top: 4px; color: #665b43; font-size: 14.4px; }
        .gf-aml .legal-alert a { display: inline-flex; align-items: center; justify-content: center; min-height: 43px; padding: 10px 17px; border: 1px solid rgba(7,37,65,.12); border-radius: 999px; color: var(--navy-900); background: var(--white); box-shadow: 0 8px 22px rgba(89,67,20,.12); font-size: 12.48px; font-weight: 900; line-height: 1.35; text-align: center; text-decoration: none; transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease; }
        .gf-aml .legal-alert a:hover { border-color: rgba(7,37,65,.25); box-shadow: 0 11px 27px rgba(89,67,20,.17); transform: translateY(-2px); }

        .gf-aml .obligation-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 16px; }
        .gf-aml .obligation-card { min-height: 250px; padding: 25px; border: 1px solid var(--line); background: var(--white); box-shadow: var(--shadow-soft); }
        .gf-aml .obligation-card:nth-child(1), .gf-aml .obligation-card:nth-child(5) { border-radius: 0; background: var(--sky); border-color: var(--sky-strong); }
        .gf-aml .obligation-card:nth-child(2), .gf-aml .obligation-card:nth-child(7) { border-radius: 24px; background: var(--mint); border-color: var(--mint-strong); }
        .gf-aml .obligation-card:nth-child(3), .gf-aml .obligation-card:nth-child(6) { border-radius: 0 26px 0 26px; background: var(--sand); border-color: var(--sand-strong); }
        .gf-aml .obligation-card:nth-child(4), .gf-aml .obligation-card:nth-child(8) { border-radius: 26px 0 26px 0; background: var(--lilac); border-color: var(--lilac-strong); }
        .gf-aml .obligation-icon { width: 47px; height: 47px; display: grid; place-items: center; margin-bottom: 18px; color: var(--navy-800); background: rgba(255,255,255,.83); border: 1px solid rgba(10,53,91,.08); font-size: 17.6px; font-weight: 950; }
        .gf-aml .obligation-card:nth-child(even) .obligation-icon { border-radius: 14px; }
        .gf-aml .obligation-card h3 { margin-bottom: 10px; }
        .gf-aml .obligation-card p { color: var(--muted); font-size: 14.4px; }

        .gf-aml .product-layout { display: grid; grid-template-columns: .9fr 1.1fr; gap: 55px; align-items: start; }
        .gf-aml .product-copy { position: sticky; top: 30px; }
        .gf-aml .product-copy .lead { margin-top: 21px; }
        .gf-aml .product-points { display: grid; gap: 11px; margin-top: 26px; }
        .gf-aml .product-point { display: grid; grid-template-columns: 38px 1fr; gap: 13px; align-items: start; }
        .gf-aml .product-point i { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 12px; color: var(--navy-900); background: var(--yellow); font-style: normal; font-weight: 950; }
        .gf-aml .product-point strong { display: block; color: var(--navy-900); }
        .gf-aml .product-point span { display: block; margin-top: 2px; color: var(--muted); font-size: 14.08px; }

        .gf-aml .demo-card { overflow: hidden; border: 1px solid rgba(10,53,91,.13); border-radius: 0 30px 0 30px; background: var(--white); box-shadow: var(--shadow); }
        .gf-aml .demo-tabs { display: grid; grid-template-columns: repeat(4,1fr); border-bottom: 1px solid var(--line); background: #f4f8fa; }
        .gf-aml .demo-tab { min-height: 60px; padding: 12px 8px; border: 0; border-right: 1px solid var(--line); color: var(--muted); background: transparent; font-size: 12.8px; font-weight: 900; }
        .gf-aml .demo-tab:last-child { border-right: 0; }
        .gf-aml .demo-tab.active { color: var(--navy-900); background: var(--yellow); }
        .gf-aml .demo-body { display: grid; grid-template-columns: .88fr 1.12fr; min-height: 430px; }
        .gf-aml .demo-copy { padding: 34px 29px; background: var(--navy-900); color: var(--white); }
        .gf-aml .demo-copy h3 { color: var(--white); font-size: 27.2px; }
        .gf-aml .demo-copy p { margin-top: 15px; color: rgba(255,255,255,.72); }
        .gf-aml .demo-copy ul { margin-top: 22px; padding: 0; list-style: none; }
        .gf-aml .demo-copy li { position: relative; padding-left: 25px; color: rgba(255,255,255,.85); font-size: 14.08px; }
        .gf-aml .demo-copy li + li { margin-top: 11px; }
        .gf-aml .demo-copy li::before { content: "✓"; position: absolute; left: 0; color: var(--yellow); font-weight: 950; }
        .gf-aml .demo-screen { padding: 28px; background: linear-gradient(180deg, #f8fbfc, #eef5f8); }
        .gf-aml .screen-head { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
        .gf-aml .screen-head strong { color: var(--navy-900); }
        .gf-aml .screen-head span { padding: 6px 10px; border-radius: 999px; color: #277052; background: var(--mint); font-size: 10.4px; font-weight: 900; }
        .gf-aml .screen-list { display: grid; gap: 10px; margin-top: 20px; }
        .gf-aml .screen-row { display: grid; grid-template-columns: auto 1fr auto; gap: 12px; align-items: center; padding: 14px; background: var(--white); box-shadow: 0 7px 20px rgba(7,37,65,.06); }
        .gf-aml .screen-row:nth-child(even) { border-radius: 14px; }
        .gf-aml .screen-row:nth-child(3) { border-radius: 0 14px 0 14px; }
        .gf-aml .screen-no { width: 31px; height: 31px; display: grid; place-items: center; color: var(--navy-900); background: var(--sky); font-size: 11.2px; font-weight: 950; }
        .gf-aml .screen-row:nth-child(even) .screen-no { border-radius: 9px; }
        .gf-aml .screen-row b { display: block; color: var(--ink); font-size: 12.48px; }
        .gf-aml .screen-row small { display: block; margin-top: 3px; color: var(--muted); font-size: 10.4px; }
        .gf-aml .screen-badge { padding: 5px 8px; border-radius: 999px; color: var(--navy-800); background: var(--sand); font-size: 9.28px; font-weight: 900; }

        .gf-aml .bundle-grid { display: grid; grid-template-columns: 1.05fr .95fr; gap: 22px; }
        .gf-aml .partner-card { position: relative; overflow: hidden; padding: 38px; color: var(--white); background: linear-gradient(145deg, var(--navy-900), var(--navy-700)); border-radius: 0 34px 0 34px; box-shadow: var(--shadow); }
        .gf-aml .partner-card::after { content: "10%"; position: absolute; right: -8px; bottom: -32px; color: rgba(255,255,255,.07); font-size: 144px; font-weight: 950; line-height: 1; }
        .gf-aml .partner-card h2, .gf-aml .partner-card h3 { color: var(--white); }
        .gf-aml .partner-card .lead { margin-top: 18px; color: rgba(255,255,255,.72); }
        .gf-aml .commission { display: inline-flex; align-items: center; gap: 12px; margin-top: 27px; padding: 13px 17px; color: var(--navy-950); background: var(--yellow); font-weight: 950; }
        .gf-aml .commission strong { font-size: 23.2px; }
        .gf-aml .bundle-list { display: grid; gap: 12px; margin-top: 29px; padding: 0; list-style: none; }
        .gf-aml .bundle-list li { position: relative; padding-left: 27px; color: rgba(255,255,255,.85); }
        .gf-aml .bundle-list li::before { content: "✓"; position: absolute; left: 0; color: var(--yellow); font-weight: 950; }
        .gf-aml .offer-stack { display: grid; gap: 18px; }
        .gf-aml .offer-card { padding: 29px; border: 1px solid var(--line); background: var(--white); box-shadow: var(--shadow-soft); }
        .gf-aml .offer-card:nth-child(1) { border-radius: 24px; background: var(--sand); border-color: var(--sand-strong); }
        .gf-aml .offer-card:nth-child(2) { border-radius: 0; background: var(--sky); border-color: var(--sky-strong); }
        .gf-aml .offer-card:nth-child(3) { border-radius: 0 24px 0 24px; background: var(--mint); border-color: var(--mint-strong); }
        .gf-aml .offer-card span { display: inline-block; margin-bottom: 13px; color: var(--navy-600); font-size: 11.52px; font-weight: 950; letter-spacing: .1em; text-transform: uppercase; }
        .gf-aml .offer-card p { margin-top: 9px; color: var(--muted); }

        .gf-aml .process-grid { display: grid; grid-template-columns: repeat(5,1fr); gap: 13px; }
        .gf-aml .process-card { position: relative; min-height: 260px; padding: 25px 23px; border: 1px solid var(--line); background: var(--white); }
        .gf-aml .process-card:nth-child(odd) { border-radius: 0; }
        .gf-aml .process-card:nth-child(even) { border-radius: 22px; }
        .gf-aml .process-card:nth-child(3) { border-radius: 0 23px 0 23px; }
        .gf-aml .process-no { display: inline-grid; place-items: center; width: 42px; height: 42px; margin-bottom: 24px; color: var(--navy-950); background: var(--yellow); font-weight: 950; }
        .gf-aml .process-card:nth-child(even) .process-no { border-radius: 12px; }
        .gf-aml .process-card h3 { margin-bottom: 10px; }
        .gf-aml .process-card p { color: var(--muted); font-size: 14.08px; }
        .gf-aml .process-card::after { content: "→"; position: absolute; right: -13px; top: 39px; z-index: 2; color: var(--orange); font-size: 21.6px; font-weight: 950; }
        .gf-aml .process-card:last-child::after { display: none; }

        .gf-aml .services-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 17px; }
        .gf-aml .service-card { min-height: 255px; padding: 28px; border: 1px solid rgba(255,255,255,.13); background: rgba(255,255,255,.07); }
        .gf-aml .service-card:nth-child(1), .gf-aml .service-card:nth-child(4) { border-radius: 0; }
        .gf-aml .service-card:nth-child(2), .gf-aml .service-card:nth-child(5) { border-radius: 25px; }
        .gf-aml .service-card:nth-child(3), .gf-aml .service-card:nth-child(6) { border-radius: 0 25px 0 25px; }
        .gf-aml .service-icon { width: 47px; height: 47px; display: grid; place-items: center; margin-bottom: 20px; color: var(--navy-950); background: var(--yellow); font-weight: 950; }
        .gf-aml .service-card:nth-child(2n) .service-icon { border-radius: 14px; }
        .gf-aml .service-card p { margin-top: 10px; color: rgba(255,255,255,.70); }

        .gf-aml .proof-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 18px; }
        .gf-aml .proof-card { padding: 28px; border: 1px solid var(--line); background: var(--white); box-shadow: var(--shadow-soft); }
        .gf-aml .proof-card:nth-child(1) { border-radius: 24px; background: var(--sky); border-color: var(--sky-strong); }
        .gf-aml .proof-card:nth-child(2) { border-radius: 0; background: var(--lilac); border-color: var(--lilac-strong); }
        .gf-aml .proof-card:nth-child(3) { border-radius: 0 24px 0 24px; background: var(--mint); border-color: var(--mint-strong); }
        .gf-aml .proof-card p { color: var(--muted); font-size: 15.04px; }
        .gf-aml .proof-card strong { display: block; margin-top: 22px; color: var(--navy-900); }
        .gf-aml .proof-card small { display: block; margin-top: 4px; color: var(--muted); }

        .gf-aml .faq-layout { display: grid; grid-template-columns: .72fr 1.28fr; gap: 52px; align-items: start; }
        .gf-aml .faq-copy { position: sticky; top: 30px; }
        .gf-aml .faq-copy .lead { margin-top: 20px; }
        .gf-aml .faq-list { border-top: 1px solid var(--line); }
        .gf-aml .faq-item { border-bottom: 1px solid var(--line); }
        .gf-aml .faq-question { width: 100%; display: grid; grid-template-columns: 1fr auto; gap: 16px; align-items: center; padding: 23px 0; border: 0; color: var(--navy-900); background: transparent; text-align: left; font-weight: 900; }
        .gf-aml .faq-question span:last-child { width: 31px; height: 31px; display: grid; place-items: center; border: 1px solid var(--line); border-radius: 50%; transition: transform .2s ease; }
        .gf-aml .faq-item.open .faq-question span:last-child { transform: rotate(45deg); background: var(--yellow); border-color: var(--yellow); }
        .gf-aml .faq-answer { display: grid; grid-template-rows: 0fr; transition: grid-template-rows .22s ease; }
        .gf-aml .faq-answer > div { overflow: hidden; }
        .gf-aml .faq-answer p { padding: 0 0 23px; color: var(--muted); }
        .gf-aml .faq-item.open .faq-answer { grid-template-rows: 1fr; }

        .gf-aml .legal-note { padding: 28px 0; background: var(--sand); border-top: 1px solid var(--sand-strong); border-bottom: 1px solid var(--sand-strong); }
        .gf-aml .legal-note-inner { display: grid; grid-template-columns: auto 1fr; gap: 18px; align-items: start; }
        .gf-aml .legal-note-mark { width: 46px; height: 46px; display: grid; place-items: center; color: var(--navy-950); background: var(--yellow); font-weight: 950; }
        .gf-aml .legal-note strong { display: block; color: var(--navy-900); }
        .gf-aml .legal-note p { margin-top: 5px; color: var(--muted); font-size: 14.08px; }
        .gf-aml .legal-note a { color: var(--navy-800); font-weight: 800; }

        .gf-aml .contact-section { position: relative; overflow: hidden; padding: 96px 0; color: var(--white); background: linear-gradient(145deg, var(--navy-950), var(--navy-800)); }
        .gf-aml .contact-section::after { content: ""; position: absolute; width: 380px; height: 380px; right: -170px; top: -190px; border-radius: 50%; background: var(--yellow); opacity: .09; }
        .gf-aml .contact-grid { position: relative; z-index: 2; display: grid; grid-template-columns: .86fr 1.14fr; gap: 56px; align-items: start; }
        .gf-aml .contact-copy h2 { color: var(--white); }
        .gf-aml .contact-copy .lead { margin-top: 20px; color: rgba(255,255,255,.72); }
        .gf-aml .contact-list { display: grid; gap: 12px; margin-top: 29px; padding: 0; list-style: none; }
        .gf-aml .contact-list li { position: relative; padding-left: 27px; color: rgba(255,255,255,.86); }
        .gf-aml .contact-list li::before { content: "✓"; position: absolute; left: 0; color: var(--yellow); font-weight: 950; }
        .gf-aml .direct-contact { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 31px; }
        .gf-aml .direct-contact a { text-decoration: none; }
        .gf-aml .lead-form { padding: 30px; color: var(--ink); background: var(--white); border-radius: 0 30px 0 30px; box-shadow: 0 35px 90px rgba(0,0,0,.26); }
        .gf-aml .lead-form h3 { margin-bottom: 8px; font-size: 27.2px; }
        .gf-aml .lead-form > p { color: var(--muted); }
        .gf-aml .form-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 13px; margin-top: 23px; }
        .gf-aml .field { display: grid; gap: 7px; }
        .gf-aml .field.full { grid-column: 1 / -1; }
        .gf-aml .field label { color: var(--navy-900); font-size: 12.48px; font-weight: 900; }
        .gf-aml .field input, .gf-aml .field select, .gf-aml .field textarea { width: 100%; border: 1px solid var(--line); border-radius: 10px; outline: none; background: #fbfdfe; color: var(--ink); }
        .gf-aml .field input, .gf-aml .field select { height: 50px; padding: 0 13px; }
        .gf-aml .field textarea { min-height: 95px; padding: 12px 13px; resize: vertical; }
        .gf-aml .field input:focus, .gf-aml .field select:focus, .gf-aml .field textarea:focus { border-color: var(--navy-600); box-shadow: 0 0 0 3px rgba(44,102,136,.12); }
        .gf-aml .consent { display: grid; grid-template-columns: auto 1fr; gap: 10px; margin-top: 16px; color: var(--muted); font-size: 11.52px; }
        .gf-aml .consent input { margin-top: 3px; accent-color: var(--navy-800); }
        .gf-aml .form-actions { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-top: 20px; }
        .gf-aml .form-status { color: var(--muted); font-size: 12.16px; }




        .gf-aml .reveal { opacity: 0; transform: translateY(18px); transition: opacity .55s ease, transform .55s ease; }
        .gf-aml .reveal.visible { opacity: 1; transform: none; }

        @media (max-width: 1080px) {
            .gf-aml .hero-grid, .gf-aml .product-layout, .gf-aml .contact-grid { grid-template-columns: 1fr; }
            .gf-aml .product-copy, .gf-aml .faq-copy { position: static; }
            .gf-aml .obligation-grid { grid-template-columns: repeat(2,1fr); }
            .gf-aml .process-grid { grid-template-columns: repeat(3,1fr); }
            .gf-aml .process-card::after { display: none; }
            .gf-aml .bundle-grid { grid-template-columns: 1fr; }
            .gf-aml .services-grid { grid-template-columns: repeat(2,1fr); }
            .gf-aml .faq-layout { grid-template-columns: 1fr; }
        }
        @media (max-width: 760px) {
            .gf-aml .container { width: min(100% - 28px, var(--max)); }
            .gf-aml .section { padding: 76px 0; }
            .gf-aml .hero { padding: 66px 0 70px; }
            .gf-aml .hero-grid { gap: 38px; }
            .gf-aml .section-head { display: block; }
            .gf-aml .section-head .lead { margin-top: 18px; }
            .gf-aml .legal-alert-inner { grid-template-columns: auto 1fr; }
            .gf-aml .legal-alert a { grid-column: 2; }
            .gf-aml .app-preview { padding: 10px; border-radius: 0 24px 0 24px; }
            .gf-aml .app-shell { grid-template-columns: 105px 1fr; min-height: 390px; }
            .gf-aml .app-side { padding: 14px 8px; }
            .gf-aml .app-menu div { padding: 7px 6px; font-size: 8.32px; }
            .gf-aml .app-content { padding: 11px; }
            .gf-aml .app-kpis { grid-template-columns: 1fr 1fr; }
            .gf-aml .app-kpi:last-child { display: none; }
            .gf-aml .app-grid { grid-template-columns: 1fr; }
            .gf-aml .app-panel.cut { display: none; }
            .gf-aml .obligation-grid, .gf-aml .services-grid, .gf-aml .proof-grid { grid-template-columns: 1fr; }
            .gf-aml .obligation-card { min-height: auto; }
            .gf-aml .demo-tabs { grid-template-columns: repeat(2,1fr); }
            .gf-aml .demo-tab:nth-child(2) { border-right: 0; }
            .gf-aml .demo-tab:nth-child(-n/**/+2) { border-bottom: 1px solid var(--line); }
            .gf-aml .demo-body { grid-template-columns: 1fr; }
            .gf-aml .demo-copy { padding: 28px 24px; }
            .gf-aml .demo-screen { padding: 21px; }
            .gf-aml .process-grid { grid-template-columns: 1fr; }
            .gf-aml .process-card { min-height: auto; }
            .gf-aml .form-grid { grid-template-columns: 1fr; }
            .gf-aml .form-actions { align-items: stretch; flex-direction: column; }
            .gf-aml .form-actions .btn { width: 100%; }

        }
        @media (max-width: 480px) {
            .gf-aml .hero-actions, .gf-aml .direct-contact { flex-direction: column; }
            .gf-aml .hero-actions .btn, .gf-aml .direct-contact .btn { width: 100%; }
            .gf-aml .trust-row { display: grid; grid-template-columns: 1fr; }
            .gf-aml .app-shell { grid-template-columns: 88px 1fr; }
            .gf-aml .app-brand { font-size: 10.56px; }
            .gf-aml .app-menu div { font-size: 7.36px; }
            .gf-aml .app-kpi { padding: 10px; }
            .gf-aml .app-kpi b { font-size: 16px; }
            .gf-aml .partner-card, .gf-aml .lead-form { padding: 25px 21px; }

        }
        @media (prefers-reduced-motion: reduce) {
            .gf-aml *, .gf-aml *::before, .gf-aml *::after { scroll-behavior: auto !important; transition: none !important; animation: none !important; }
            .gf-aml .reveal { opacity: 1; transform: none; }
        }


        /* Dodatkowe moduły: film i zespół */
        .gf-aml .film-section {
            background:
                    radial-gradient(circle at 92% 10%, rgba(244,198,78,.20), transparent 24%),
                    linear-gradient(180deg, #fbfdfe 0%, #f2f7fa 100%);
        }
        .gf-aml .film-layout {
            display: grid;
            grid-template-columns: .72fr 1.28fr;
            gap: 48px;
            align-items: center;
        }
        .gf-aml .film-copy .lead { margin-top: 20px; }
        .gf-aml .film-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 27px; }
        .gf-aml .film-shell {
            overflow: hidden;
            border: 1px solid rgba(7,37,65,.16);
            border-radius: 0 30px 0 30px;
            background: var(--navy-950);
            box-shadow: var(--shadow);
        }





























        .gf-aml .team-grid { display: grid; grid-template-columns: .92fr 1.08fr; gap: 48px; align-items: center; }
        .gf-aml .team-copy .lead { margin-top: 22px; }
        .gf-aml .team-check-list { display: grid; gap: 15px; margin-top: 28px; }
        .gf-aml .team-check-item { display: grid; grid-template-columns: 38px 1fr; gap: 14px; align-items: start; }
        .gf-aml .team-check-icon { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 50%; color: var(--navy-950); background: var(--yellow); font-weight: 950; }
        .gf-aml .team-check-item strong { display: block; color: var(--navy-900); }
        .gf-aml .team-check-item p { margin-top: 3px; color: var(--muted); font-size: 14.4px; }
        .gf-aml .team-panel { display: grid; grid-template-columns: repeat(2,1fr); gap: 14px; }
        .gf-aml .team-number { min-height: 170px; padding: 27px; color: var(--white); background: var(--navy-900); box-shadow: var(--shadow-soft); }
        .gf-aml .team-number:nth-child(1) { border-radius: 0; }
        .gf-aml .team-number:nth-child(2) { border-radius: 24px; color: var(--navy-950); background: var(--yellow); }
        .gf-aml .team-number:nth-child(3) { border-radius: 0 24px 0 24px; background: var(--navy-700); }
        .gf-aml .team-number:nth-child(4) { border-radius: 24px 0 24px 0; color: var(--navy-900); background: var(--sky); }
        .gf-aml .team-number strong { display: block; font-size: 42.4px; line-height: 1; }
        .gf-aml .team-number span { display: block; margin-top: 12px; font-weight: 850; }
        .gf-aml .team-bottom { display: grid; grid-template-columns: 1.04fr .96fr; gap: 28px; margin-top: 42px; }
        .gf-aml .experts-panel, .gf-aml .orbit-panel { min-width: 0; padding: 32px; border: 1px solid var(--line); background: var(--white); box-shadow: var(--shadow-soft); }
        .gf-aml .experts-panel { border-radius: 0; }
        .gf-aml .orbit-panel { border-radius: 0 30px 0 30px; }
        .gf-aml .experts-panel > h3, .gf-aml .orbit-panel > h3 { margin-bottom: 24px; }
        .gf-aml .experts-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 18px; }
        .gf-aml .expert-card { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 16px; min-height: 285px; padding: 22px 18px; border: 1px solid var(--line); background: linear-gradient(145deg, #ffffff, #f3f7fb); text-align: center; }
        .gf-aml .expert-card:nth-child(1) { border-radius: 24px; }
        .gf-aml .expert-card:nth-child(2) { border-radius: 0 24px 0 24px; }
        .gf-aml .expert-portrait { width: 138px; height: 138px; overflow: hidden; border-radius: 50%; background: linear-gradient(145deg, var(--yellow-soft), var(--sky)); border: 7px solid var(--white); box-shadow: 0 10px 28px rgba(7,37,65,.16); }
        .gf-aml .expert-portrait img { width: 100%; height: 100%; object-fit: cover; transform: scale(1.08); }
        .gf-aml .portrait-paulina img { object-position: center 21%; }
        .gf-aml .portrait-elzbieta img { object-position: center 18%; }
        .gf-aml .portrait-karolina img { object-position: center 18%; }
        .gf-aml .portrait-oliwia img { object-position: center 16%; }
        .gf-aml .expert-info h4 { font-size: 20.48px; margin-bottom: 8px; }
        .gf-aml .expert-info p { color: var(--muted); font-weight: 780; }
        .gf-aml .orbit-panel { color: var(--white); background: linear-gradient(145deg, var(--navy-950), var(--navy-800)); }
        .gf-aml .orbit-panel h3 { color: var(--white); }
        .gf-aml .orbit-panel .eyebrow { color: rgba(255,255,255,.76); }
        .gf-aml .circle-graph { position: relative; width: min(420px, 100%); height: 360px; margin: 0 auto; color: rgba(255,255,255,.34); }
        .gf-aml .orbit-lines { position: absolute; inset: 0; width: 100%; height: 100%; }
        .gf-aml .orbit-lines line { stroke: rgba(255,255,255,.20); stroke-width: 1.5; }
        .gf-aml .circle-core, .gf-aml .circle-node { position: absolute; display: grid; place-items: center; text-align: center; border-radius: 50%; }
        .gf-aml .circle-core { left: 50%; top: 50%; width: 154px; height: 154px; transform: translate(-50%, -50%); padding: 22px; color: var(--white); background: #0d416a; border: 10px solid rgba(255,255,255,.10); box-shadow: 0 18px 40px rgba(0,0,0,.24); }
        .gf-aml .circle-core small { font-size: 10.88px; letter-spacing: .12em; text-transform: uppercase; color: rgba(255,255,255,.64); }
        .gf-aml .circle-core strong { font-size: 17.12px; line-height: 1.05; }
        .gf-aml .circle-core span { font-size: 10.88px; color: var(--yellow); font-weight: 900; }
        .gf-aml .circle-node { width: 82px; height: 82px; padding: 10px; color: var(--navy-950); border: 7px solid rgba(255,255,255,.78); box-shadow: 0 10px 28px rgba(0,0,0,.22); font-size: 11.52px; line-height: 1.05; }
        .gf-aml .node-1 { left: 50%; top: 0; transform: translateX(-50%); background: #08aeb6; }
        .gf-aml .node-2 { right: 1px; top: 72px; background: #d9b8e4; }
        .gf-aml .node-3 { right: 20px; bottom: 0; background: var(--yellow); }
        .gf-aml .node-4 { left: 20px; bottom: 0; background: #b9dfce; }
        .gf-aml .node-5 { left: 1px; top: 72px; background: #ef7c76; }

        @media (max-width: 1080px) {
            .gf-aml .film-layout, .gf-aml .team-grid, .gf-aml .team-bottom { grid-template-columns: 1fr; }
        }
        @media (max-width: 760px) {






            .gf-aml .team-panel, .gf-aml .experts-grid { grid-template-columns: 1fr; }
            .gf-aml .expert-card { min-height: 250px; padding: 18px 14px; }
            .gf-aml .expert-portrait { width: 120px; height: 120px; }
            .gf-aml .experts-panel, .gf-aml .orbit-panel { padding: 24px 18px; }
            .gf-aml .circle-graph { transform: scale(.88); transform-origin: top center; margin-bottom: -42px; }
        }
        @media (max-width: 520px) {










        }


        /* ===== WERSJA ZIELONA / CENTRUM ZGODNOŚCI ===== */
        .gf-aml {
            --navy-950: #082b22;
            --navy-900: #103f32;
            --navy-800: #155641;
            --navy-700: #2d745a;
            --navy-600: #4e8e76;
            --ink: #173a30;
            --muted: #637b72;
            --line: #d5e6df;
            --paper: #f7fbf9;
            --sky: #e9f6f1;
            --sky-strong: #bedfd3;
            --mint: #edf8f2;
            --mint-strong: #bce2d0;
            --lilac: #f3f5ed;
            --lilac-strong: #d7e0c9;
            --shadow: 0 28px 70px rgba(8,43,34,.15);
            --shadow-soft: 0 12px 34px rgba(8,43,34,.09);
        }
        .gf-aml .hero {
            background:
                    radial-gradient(circle at 84% 12%, rgba(244,198,78,.24), transparent 25%),
                    radial-gradient(circle at 63% 93%, rgba(155,222,192,.24), transparent 28%),
                    linear-gradient(135deg, #082b22 0%, #155641 68%, #26745a 100%);
        }
        .gf-aml .section-navy,
        .gf-aml .contact-section { background: linear-gradient(145deg, #082b22, #1a6049); }
        .gf-aml .app-side,
        .gf-aml .demo-copy { background: linear-gradient(180deg, #155641, #082b22); }
        .gf-aml .partner-card { background: linear-gradient(145deg, #103f32, #2d745a); }
        .gf-aml .orbit-panel { background: linear-gradient(145deg, #082b22, #155641); }
        .gf-aml .circle-core { background: #1b674e; }
        .gf-aml .film-section { background: linear-gradient(120deg, #fbfefc 0%, #e8f5ef 58%, #dff1e9 100%); }


        .gf-aml .btn-outline { color: #155641; border-color: rgba(21,86,65,.24); }
        .gf-aml .screen-head span,
        .gf-aml .app-head span { color: #216c50; }

        /* Pasek produktu bez globalnego menu */
        .gf-aml .cz-brand-strip {
            position: relative;
            padding: 21px 0;
            overflow: hidden;
            background: linear-gradient(105deg, #f8fcfa 0%, #e9f6f1 70%, #dcefe7 100%);
            border-bottom: 1px solid #cfe4db;
        }
        .gf-aml .cz-brand-strip::after {
            content: "";
            position: absolute;
            width: 420px;
            height: 420px;
            right: -180px;
            top: -300px;
            border-radius: 50%;
            border: 1px solid rgba(21,86,65,.13);
            box-shadow: 0 0 0 55px rgba(21,86,65,.025), 0 0 0 110px rgba(21,86,65,.018);
        }
        .gf-aml .cz-brand-inner { position: relative; z-index: 2; display: grid; grid-template-columns: 118px 1fr auto; gap: 25px; align-items: center; }
        .gf-aml .cz-brand-logo-wrap { width: 108px; height: 108px; display: grid; place-items: center; background: rgba(255,255,255,.92); border: 1px solid #d2e6dd; box-shadow: 0 12px 30px rgba(18,80,61,.10); }
        .gf-aml .cz-brand-logo { width: 98px; height: 98px; object-fit: contain; }
        .gf-aml .cz-brand-copy span { display: block; color: #4b8c73; font-size: 11.2px; font-weight: 950; letter-spacing: .16em; }
        .gf-aml .cz-brand-copy strong { display: block; margin-top: 5px; color: #103f32; font-size: clamp(24.8px,3vw,36.8px); line-height: 1.05; }
        .gf-aml .cz-brand-copy p { max-width: 720px; margin-top: 7px; color: #607c71; }
        .gf-aml .cz-brand-cta { white-space: nowrap; background: rgba(255,255,255,.78); }

        /* Główne moduły mają proste narożniki, drobne elementy pozostają miękkie */
        .gf-aml .app-preview,
        .gf-aml .app-shell,
        .gf-aml .demo-card,
        .gf-aml .film-shell,
        .gf-aml .partner-card,
        .gf-aml .obligation-card,
        .gf-aml .offer-card,
        .gf-aml .service-card,
        .gf-aml .proof-card,
        .gf-aml .team-number,
        .gf-aml .experts-panel,
        .gf-aml .orbit-panel,
        .gf-aml .expert-card,
        .gf-aml .lead-form,
        .gf-aml .process-orbit { border-radius: 0 !important; }

        /* Profesjonalny przycisk filmu */




        /* Wizualny akcent Programu Partnerskiego */
        .gf-aml .partner-card { min-height: 600px; padding-right: 292px; }
        .gf-aml .partner-card > *:not(.partner-visual) { position: relative; z-index: 2; }
        .gf-aml .partner-visual {
            position: absolute;
            z-index: 1;
            top: 24px;
            right: 20px;
            width: 255px;
            height: 278px;
            margin: 0;
            overflow: hidden;
            border: 1px solid rgba(255,255,255,.24);
            background: #eef7f2;
            box-shadow: 0 18px 45px rgba(0,0,0,.22);
        }
        .gf-aml .partner-visual::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 58%, rgba(8,43,34,.78)); pointer-events: none; }
        .gf-aml .partner-visual img { width: 100%; height: 100%; object-fit: cover; object-position: center; }
        .gf-aml .partner-visual figcaption { position: absolute; z-index: 2; left: 15px; right: 15px; bottom: 12px; color: #fff; font-size: 12.16px; font-weight: 900; line-height: 1.25; }
        .gf-aml .partner-card h2 { max-width: 330px; }
        .gf-aml .partner-card .lead { max-width: 330px; }

        /* Okrągły graf procesu współpracy */
        .gf-aml .process-orbit {
            position: relative;
            min-height: 650px;
            overflow: hidden;
            border: 1px solid #cde3da;
            background:
                    radial-gradient(circle at 50% 50%, rgba(255,255,255,.96) 0 18%, transparent 19%),
                    linear-gradient(135deg, #f9fcfa, #e8f5ef);
            box-shadow: var(--shadow-soft);
            color: rgba(21,86,65,.30);
        }
        .gf-aml .process-orbit::before { content: ""; position: absolute; width: 620px; height: 620px; left: 50%; top: 50%; transform: translate(-50%,-50%); border-radius: 50%; border: 1px solid rgba(21,86,65,.08); box-shadow: 0 0 0 55px rgba(21,86,65,.025), 0 0 0 110px rgba(21,86,65,.016); }
        .gf-aml .process-orbit-lines { position: absolute; inset: 0; width: 100%; height: 100%; }
        .gf-aml .process-orbit-lines line { stroke: rgba(21,86,65,.22); stroke-width: 2; }
        .gf-aml .process-core,
        .gf-aml .process-node { position: absolute; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; border-radius: 50%; }
        .gf-aml .process-core { left: 50%; top: 50%; width: 210px; height: 210px; transform: translate(-50%,-50%); padding: 28px; color: #fff; background: linear-gradient(145deg,#103f32,#2d745a); border: 12px solid rgba(255,255,255,.88); box-shadow: 0 22px 50px rgba(8,43,34,.24); }
        .gf-aml .process-core span { color: #f4c64e; font-size: 11.2px; font-weight: 950; letter-spacing: .13em; text-transform: uppercase; }
        .gf-aml .process-core strong { margin-top: 6px; font-size: 24.8px; line-height: 1; }
        .gf-aml .process-core small { margin-top: 8px; color: rgba(255,255,255,.72); line-height: 1.3; }
        .gf-aml .process-node { width: 176px; height: 176px; padding: 24px 20px; color: var(--ink); background: #fff; border: 8px solid rgba(255,255,255,.88); box-shadow: 0 14px 34px rgba(8,43,34,.14); }
        .gf-aml .process-node b { display: grid; place-items: center; width: 34px; height: 34px; margin-bottom: 8px; border-radius: 50%; color: #fff; background: #2d745a; font-size: 12.8px; }
        .gf-aml .process-node h3 { font-size: 16px; letter-spacing: -.02em; }
        .gf-aml .process-node p { margin-top: 6px; color: var(--muted); font-size: 11.52px; line-height: 1.35; }
        .gf-aml .process-node-1 { left: 50%; top: 3%; transform: translateX(-50%); }
        .gf-aml .process-node-2 { right: 5%; top: 23%; }
        .gf-aml .process-node-3 { right: 17%; bottom: 3%; }
        .gf-aml .process-node-4 { left: 17%; bottom: 3%; }
        .gf-aml .process-node-5 { left: 5%; top: 23%; }
        .gf-aml .process-node-1, .gf-aml .process-node-4 { background: #e9f6f1; }
        .gf-aml .process-node-2 { background: #fff7df; }
        .gf-aml .process-node-3 { background: #f3f5ed; }
        .gf-aml .process-node-5 { background: #fff0e6; }

        /* Dodatkowe krótkie opisy ekspertów */
        .gf-aml .expert-desc { display: block; max-width: 250px; margin-top: 10px; color: #6a8178; font-size: 12.16px; line-height: 1.45; font-weight: 500; }

        /* Każda sekcja wjeżdża, a elementy wewnętrzne są delikatnie stopniowane */
        .gf-aml .section-enter { opacity: 0; transition: opacity .78s cubic-bezier(.2,.7,.2,1), transform .78s cubic-bezier(.2,.7,.2,1); will-change: opacity, transform; }
        .gf-aml .section-enter.enter-up { transform: translate3d(0,58px,0); }
        .gf-aml .section-enter.enter-left { transform: translate3d(-64px,0,0); }
        .gf-aml .section-enter.enter-right { transform: translate3d(64px,0,0); }
        .gf-aml .section-enter.visible { opacity: 1; transform: translate3d(0,0,0); }
        .gf-aml .reveal { transition-duration: .68s; transition-delay: var(--reveal-delay, 0ms); }

        @media (max-width: 1080px) {
            .gf-aml .cz-brand-inner { grid-template-columns: 102px 1fr; }
            .gf-aml .cz-brand-logo-wrap { width: 94px; height: 94px; }
            .gf-aml .cz-brand-logo { width: 84px; height: 84px; }
            .gf-aml .cz-brand-cta { grid-column: 2; justify-self: start; }
            .gf-aml .partner-card { padding-right: 330px; min-height: 560px; }
            .gf-aml .process-node-2 { right: 2%; }
            .gf-aml .process-node-5 { left: 2%; }
        }
        @media (max-width: 760px) {
            .gf-aml .cz-brand-strip { padding: 17px 0; }
            .gf-aml .cz-brand-inner { grid-template-columns: 78px 1fr; gap: 15px; }
            .gf-aml .cz-brand-logo-wrap { width: 72px; height: 72px; }
            .gf-aml .cz-brand-logo { width: 65px; height: 65px; }
            .gf-aml .cz-brand-copy span { font-size: 8.8px; }
            .gf-aml .cz-brand-copy strong { font-size: 22.08px; }
            .gf-aml .cz-brand-copy p { font-size: 12.8px; }
            .gf-aml .cz-brand-cta { grid-column: 1 / -1; width: 100%; }
            .gf-aml .partner-card { min-height: 0; padding: 24px 20px; }
            .gf-aml .partner-visual { position: relative; top: auto; right: auto; width: 100%; height: 235px; margin: 0 0 24px; }
            .gf-aml .partner-card h2,
            .gf-aml .partner-card .lead { max-width: none; }
            .gf-aml .process-orbit { min-height: 0; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; padding: 24px 16px; }
            .gf-aml .process-orbit::before,
            .gf-aml .process-orbit-lines { display: none; }
            .gf-aml .process-core,
            .gf-aml .process-node { position: static; transform: none !important; width: 100%; height: auto; min-height: 180px; padding: 22px 18px; }
            .gf-aml .process-core { grid-column: 1 / -1; width: 210px; height: 210px; justify-self: center; border-radius: 50%; }
            .gf-aml .process-node { border-radius: 24px; }

        }
        @media (max-width: 520px) {
            .gf-aml .process-orbit { grid-template-columns: 1fr; }
            .gf-aml .process-core { grid-column: auto; width: 190px; height: 190px; }
            .gf-aml .process-node { min-height: 155px; }
        }
        @media (prefers-reduced-motion: reduce) {
            .gf-aml .section-enter { opacity: 1 !important; transform: none !important; }
        }

/* Stabilny układ dwóch grafik kołowych - desktop/tablet/mobile */
        .gf-aml .process-orbit {
            min-height: 650px;
            height: clamp(620px, 52vw, 690px);
            overflow: hidden;
            isolation: isolate;
        }
        .gf-aml .process-orbit::before {
            width: min(72%, 760px);
            height: min(92%, 635px);
            box-shadow: 0 0 0 55px rgba(21,86,65,.025), 0 0 0 110px rgba(21,86,65,.016);
            pointer-events: none;
        }
        .gf-aml .process-orbit-lines {
            z-index: 0;
            pointer-events: none;
        }
        .gf-aml .process-core,
        .gf-aml .process-node {
            z-index: 2;
            box-sizing: border-box;
        }
        .gf-aml .process-core {
            left: 50%;
            top: 50%;
            width: 210px;
            height: 210px;
            transform: translate(-50%, -50%);
        }
        .gf-aml .process-node {
            width: 176px;
            height: 176px;
            transform: translate(-50%, -50%);
        }
        .gf-aml .process-node-1 { left: 50%; top: 16.15%; }
        .gf-aml .process-node-2 { left: 86.5%; top: 35.4%; right: auto; }
        .gf-aml .process-node-3 { left: 75.5%; top: 82.3%; right: auto; bottom: auto; }
        .gf-aml .process-node-4 { left: 24.5%; top: 82.3%; bottom: auto; }
        .gf-aml .process-node-5 { left: 13.5%; top: 35.4%; }
        .gf-aml .process-node h3 { max-width: 130px; }
        .gf-aml .process-node p { max-width: 136px; }

        .gf-aml .circle-graph {
            position: relative;
            width: min(460px, 100%);
            height: auto;
            aspect-ratio: 420 / 360;
            margin: 8px auto 0;
            transform: none;
            color: rgba(255,255,255,.34);
        }
        .gf-aml .circle-graph .orbit-lines {
            z-index: 0;
            overflow: visible;
            pointer-events: none;
        }
        .gf-aml .circle-core,
        .gf-aml .circle-node {
            z-index: 2;
            box-sizing: border-box;
        }
        .gf-aml .circle-core {
            left: 50%;
            top: 50%;
            width: 164px;
            height: 164px;
            transform: translate(-50%, -50%);
            padding: 22px;
        }
        .gf-aml .circle-node {
            width: 92px;
            height: 92px;
            padding: 9px;
            transform: translate(-50%, -50%);
            font-size: 10.88px;
            line-height: 1.08;
            white-space: normal;
            overflow-wrap: normal;
        }
        .gf-aml .circle-node strong {
            display: block;
            max-width: 72px;
            line-height: 1.08;
        }
        .gf-aml .node-1 { left: 50%; top: 13.9%; }
        .gf-aml .node-2 { left: 83.33%; top: 33.33%; right: auto; }
        .gf-aml .node-3 { left: 78.57%; top: 80%; right: auto; bottom: auto; }
        .gf-aml .node-4 { left: 21.43%; top: 80%; bottom: auto; }
        .gf-aml .node-5 { left: 16.67%; top: 33.33%; }

        @media (max-width: 1080px) and (min-width: 761px) {
            .gf-aml .process-orbit {
                height: 660px;
            }
            .gf-aml .process-node-2 { left: 84%; }
            .gf-aml .process-node-5 { left: 16%; }
        }

        @media (max-width: 760px) {
            .gf-aml .process-orbit {
                height: auto;
                min-height: 0;
                display: grid;
                grid-template-columns: repeat(2, minmax(0, 1fr));
                gap: 16px;
                padding: 24px 16px;
            }
            .gf-aml .process-orbit::before,
            .gf-aml .process-orbit-lines { display: none; }
            .gf-aml .process-core,
            .gf-aml .process-node {
                position: static;
                left: auto;
                top: auto;
                right: auto;
                bottom: auto;
                transform: none !important;
            }
            .gf-aml .process-core {
                grid-column: 1 / -1;
                width: 196px;
                height: 196px;
                min-height: 196px;
                justify-self: center;
                border-radius: 50%;
            }
            .gf-aml .process-node {
                width: 100%;
                height: auto;
                min-height: 174px;
                padding: 20px 14px;
                border-radius: 24px;
            }
            .gf-aml .process-node h3,
            .gf-aml .process-node p { max-width: none; }

            .gf-aml .circle-graph {
                width: min(100%, 400px);
                margin-top: 10px;
                margin-bottom: 0;
                transform: none;
            }
            .gf-aml .circle-core { width: 142px; height: 142px; border-width: 9px; padding: 18px; }
            .gf-aml .circle-core strong { font-size: 15.68px; }
            .gf-aml .circle-node { width: 80px; height: 80px; border-width: 6px; font-size: 9.92px; padding: 7px; }
            .gf-aml .circle-node strong { max-width: 64px; }
        }

        @media (max-width: 520px) {
            .gf-aml .process-orbit { grid-template-columns: 1fr; }
            .gf-aml .process-core { grid-column: auto; width: 184px; height: 184px; min-height: 184px; }
            .gf-aml .process-node { min-height: 150px; }

            .gf-aml .circle-graph { width: min(100%, 330px); }
            .gf-aml .circle-core { width: 122px; height: 122px; border-width: 8px; padding: 14px; }
            .gf-aml .circle-core small { font-size: 8.96px; }
            .gf-aml .circle-core strong { font-size: 13.76px; }
            .gf-aml .circle-core span { font-size: 8.96px; }
            .gf-aml .circle-node { width: 68px; height: 68px; border-width: 5px; font-size: 8.64px; padding: 5px; }
            .gf-aml .circle-node strong { max-width: 56px; }
        }

/* Clip decorative section entrances without creating a nested scroll container. */
        .gf-aml { --aml-scroll-offset: 28px; overflow: clip; }
        @supports not (overflow: clip) { .gf-aml { overflow: visible; } }
        .gf-aml section[id], .gf-aml aside[id] {
            scroll-margin-top: var(--aml-scroll-offset);
        }

        /* Original screenshot, embedded in this HTML with its native proportions. */
        .gf-aml .app-preview-real { width: 100%; min-width: 0; margin: 0; }
        .gf-aml .panel-preview-trigger {
            display: block;
            width: 100%;
            padding: 0;
            overflow: hidden;
            border: 1px solid rgba(255,255,255,.22);
            background: #e7e7e9;
            cursor: zoom-in;
        }
        .gf-aml .panel-screenshot { width: 100%; height: auto; }
        .gf-aml .panel-preview-caption {
            display: flex;
            align-items: center;
            justify-content: space-between;
            flex-wrap: wrap;
            gap: 10px 18px;
            padding: 12px 3px 0;
            color: rgba(255,255,255,.78);
            font-size: 12.16px;
        }
        .gf-aml .panel-preview-open {
            display: inline-flex;
            align-items: center;
            gap: 8px;
            min-height: 36px;
            padding: 6px 0;
            border: 0;
            color: var(--yellow);
            background: transparent;
            font-size: 12.16px;
            font-weight: 850;
            text-align: left;
        }
        .gf-aml .panel-preview-open svg { flex: 0 0 16px; }
        .gf-aml .panel-preview-open:hover { color: #ffdf87; }
        .gf-aml .panel-preview-trigger:focus-visible,
        .gf-aml .panel-preview-open:focus-visible {
            outline: 3px solid var(--yellow);
            outline-offset: 4px;
        }

        /* Native dialog: keyboard focus stays inside; Escape closes the preview. */
        .gf-aml .panel-dialog {
            width: min(1600px, calc(100vw - 40px));
            max-width: none;
            max-height: calc(100dvh - 40px);
            margin: auto;
            padding: 0;
            overflow: hidden;
            color: var(--ink);
            background: var(--white);
            border: 1px solid var(--line);
            border-radius: 12px;
            box-shadow: 0 30px 110px rgba(0,0,0,.36);
        }
        .gf-aml .panel-dialog::backdrop {
            background: rgba(4,27,21,.80);
            backdrop-filter: blur(6px);
        }
        .gf-aml .panel-dialog-head {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 20px;
            padding: 16px 20px;
            border-bottom: 1px solid var(--line);
        }
        .gf-aml .panel-dialog-head h2 { font-size: 18.88px; letter-spacing: -.02em; }
        .gf-aml .panel-dialog-head p { margin-top: 5px; color: var(--muted); font-size: 12.48px; }
        .gf-aml .panel-dialog-close {
            display: grid;
            place-items: center;
            flex: 0 0 44px;
            width: 44px;
            height: 44px;
            padding: 0;
            border: 1px solid var(--line);
            border-radius: 50%;
            color: var(--navy-900);
            background: var(--paper);
        }
        .gf-aml .panel-dialog-close:hover { background: var(--mint-strong); }
        .gf-aml .panel-dialog-close:focus-visible,
        .gf-aml .panel-dialog-body:focus-visible {
            outline: 3px solid var(--navy-600);
            outline-offset: -3px;
        }
        .gf-aml .panel-dialog-body {
            max-height: calc(100dvh - 160px);
            overflow: auto;
            overscroll-behavior: contain;
            background: #e7e7e9;
        }
        .gf-aml .panel-dialog-body img {
            width: 100%;
            min-width: 1280px;
            max-width: none;
            height: auto;
        }
        .gf-aml .panel-dialog-hint {
            display: none;
            padding: 10px 16px;
            color: var(--muted);
            font-size: 11.68px;
            border-top: 1px solid var(--line);
        }
        @media (max-width: 1320px) {
            .gf-aml .panel-dialog-hint { display: block; }
            .gf-aml .panel-dialog-body { max-height: calc(100dvh - 195px); }
        }
        @media (max-width: 760px) {
            .gf-aml .panel-preview-caption { font-size: 11.2px; gap: 4px 12px; }
            .gf-aml .panel-preview-open { font-size: 11.2px; }
            .gf-aml .panel-dialog { width: calc(100vw - 20px); max-height: calc(100dvh - 20px); }
            .gf-aml .panel-dialog-head { padding: 12px 14px; gap: 12px; }
            .gf-aml .panel-dialog-head h2 { font-size: 16px; }
            .gf-aml .panel-dialog-head p { font-size: 11.2px; }
        }

/* Wspolny uklad trzech podstron. Kolory pozostaja w oryginalnych motywach. */
        .gf-unified {
            --gf-max: 1240px;
            --gf-gap: 48px;
            --gf-card-gap: 18px;
            --gf-section-space: 96px;
            --gf-h1: clamp(38px, 4.9vw, 68px);
            --gf-h2: clamp(30px, 3.8vw, 52px);
            --gf-h3: clamp(18px, 1.7vw, 22px);
            font-family: Montserrat, Arial, Helvetica, sans-serif;
            font-size: 16px;
            line-height: 1.58;
            text-rendering: optimizeLegibility;
        }
        .gf-unified, .gf-unified * { box-sizing: border-box; }
        .gf-unified [hidden] { display: none !important; }
        .gf-unified :is(button, input, select, textarea) { font-family: inherit; }
        .gf-unified :is(a, button, input, select, textarea, summary):focus-visible {
            outline: 3px solid var(--orange);
            outline-offset: 4px;
        }
        .gf-unified.gf-unified .container {
            width: min(var(--gf-max), calc(100% - 40px));
            margin-inline: auto;
        }
        .gf-unified.gf-unified :is(h1, h2, h3, h4) {
            font-family: inherit;
            font-weight: 800;
            letter-spacing: -.028em;
            overflow-wrap: break-word;
        }
        .gf-unified.gf-unified h1 { font-size: var(--gf-h1); line-height: 1.08; }
        .gf-unified.gf-unified h2 { font-size: var(--gf-h2); line-height: 1.12; }
        .gf-unified.gf-unified h3 { font-size: var(--gf-h3); line-height: 1.25; }
        .gf-unified.gf-unified :is(.section, .contact, .contact-section) {
            padding-block: var(--gf-section-space);
        }
        .gf-unified.gf-unified .hero { padding: 72px 0 80px; }
        .gf-unified.gf-unified .lead {
            max-width: 820px;
            font-size: clamp(17px, 1.8vw, 20px);
            line-height: 1.58;
        }
        .gf-unified.gf-unified .eyebrow {
            gap: 10px;
            margin-bottom: 16px;
            font-size: 12px;
            font-weight: 800;
            line-height: 1.5;
            letter-spacing: .14em;
        }
        .gf-unified.gf-unified .eyebrow::before { width: 26px; height: 4px; flex-shrink: 0; }
        .gf-unified.gf-unified .section-head {
            gap: var(--gf-gap);
            margin-bottom: 48px;
        }
        .gf-unified.gf-unified .section-head > * { flex: 1 1 0; min-width: 0; }
        .gf-unified.gf-unified .section-head .lead { max-width: 660px; }
        .gf-unified.gf-unified .btn {
            min-height: 54px;
            padding: 12px 24px;
            gap: 10px;
            font-size: 16px;
            font-weight: 800;
            line-height: 1.4;
            text-align: center;
            white-space: normal;
        }
        .gf-unified.gf-unified :is(.hero-actions, .film-actions, .draft-actions) {
            display: flex;
            flex-wrap: wrap;
            gap: 12px;
            margin-top: 28px;
        }
        .gf-unified.gf-unified .hero-copy .lead { margin-top: 24px; }
        .gf-unified.gf-unified .hero-note { margin-top: 16px; font-size: 13px; line-height: 1.58; }
        .gf-unified.gf-unified .trust-row { gap: 10px; margin-top: 24px; }
        .gf-unified.gf-unified .trust-chip { padding: 9px 12px; font-size: 13px; line-height: 1.4; font-weight: 700; }
        .gf-unified.gf-unified :is(.hero-grid, .product-layout, .problem-grid, .film-layout,
  .app-layout, .team-grid, .training-grid, .contact-grid, .faq-layout) {
            display: grid;
            gap: var(--gf-gap);
        }
        .gf-unified.gf-unified :is(.hero-grid, .team-grid) { grid-template-columns: minmax(0, 1.04fr) minmax(0, .96fr); }
        .gf-unified.gf-unified :is(.product-layout, .problem-grid) { grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); }
        .gf-unified.gf-unified .film-layout { grid-template-columns: minmax(0, .78fr) minmax(0, 1.22fr); align-items: center; }
        .gf-unified.gf-unified .app-layout { grid-template-columns: minmax(0, 1.08fr) minmax(0, .92fr); }
        .gf-unified.gf-unified .training-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
        .gf-unified.gf-unified .contact-grid { grid-template-columns: minmax(0, .86fr) minmax(0, 1.14fr); align-items: start; }
        .gf-unified.gf-unified .faq-layout { grid-template-columns: minmax(0, .72fr) minmax(0, 1.28fr); }
        .gf-unified.gf-unified :is(.hero-grid, .product-layout, .problem-grid, .film-layout,
  .app-layout, .team-grid, .training-grid, .contact-grid, .faq-layout, .section-head,
  .bundle-grid, .team-bottom, .form-grid) > * { min-width: 0; }
        .gf-unified.gf-unified :is(.product-copy, .problem-copy, .faq-copy) { top: 30px; }
        .gf-unified.gf-unified :is(.product-copy, .problem-copy, .film-copy, .app-copy,
  .team-copy, .training-copy, .faq-copy) > .lead { margin-top: 24px; }
        .gf-unified.gf-unified :is(.obligation-grid, .services-grid, .proof-grid, .cards,
  .modules-grid, .audience-grid, .team-panel, .offer-stack, .experts-grid,
  .auditors-grid, .process-grid, .journey) { gap: var(--gf-card-gap); }
        .gf-unified.gf-unified :is(.bundle-grid, .team-bottom) { gap: 24px; }
        .gf-unified.gf-unified .bundle-grid { grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr); }
        .gf-unified.gf-unified .team-bottom { grid-template-columns: minmax(0, 1.04fr) minmax(0, .96fr); margin-top: 40px; }
        .gf-unified.gf-unified :is(.obligation-card, .service-card, .proof-card, .card,
  .module-card, .audience-card, .offer-card, .process-card, .journey-step) { padding: 26px; }
        .gf-unified.gf-unified :is(.obligation-card, .service-card, .proof-card, .card,
  .module-card, .audience-card, .offer-card, .process-card, .journey-step) p {
            font-size: 15px;
            line-height: 1.58;
        }
        .gf-unified.gf-unified :is(.obligation-card, .service-card, .card, .module-card,
  .audience-card, .offer-card, .process-card) h3 { margin-bottom: 10px; }
        .gf-unified.gf-unified :is(.obligation-icon, .service-icon, .audience-icon, .card-number) {
            width: 46px;
            height: 46px;
            margin-bottom: 18px;
            font-size: 16px;
        }
        .gf-unified.gf-unified :is(.team-checks, .check-list, .product-points) { gap: 14px; margin-top: 26px; }
        .gf-unified.gf-unified :is(.team-check-item, .check-item, .product-point) {
            display: grid;
            grid-template-columns: 38px minmax(0, 1fr);
            gap: 14px;
        }
        .gf-unified.gf-unified :is(.team-check-icon, .check-icon, .product-point > i) { width: 38px; height: 38px; }
        .gf-unified.gf-unified .team-number { min-height: 170px; padding: 26px; }
        .gf-unified.gf-unified .team-number strong { font-size: 42.4px; line-height: 1; }
        .gf-unified.gf-unified .team-number span { margin-top: 12px; font-weight: 700; }
        .gf-unified.gf-unified :is(.demo-tab, .tab-btn) { min-height: 50px; font-size: 14px; line-height: 1.4; }
        .gf-unified.gf-unified :is(.contact-copy, .contact-grid > div) > .lead { margin-top: 24px; }
        .gf-unified.gf-unified :is(.contact-list, .contact-points) { gap: 12px; margin-top: 28px; }
        .gf-unified.gf-unified :is(.contact-list li, .contact-point) { font-size: 16px; line-height: 1.58; }
        .gf-unified.gf-unified :is(.direct-contact, .contact-direct) { margin-top: 28px; }

        /* Pasek Centrum Zgodnosci: identyczna geometria, oryginalne kolory i tekst. */
        .gf-unified.gf-unified .gf-brand { padding: 20px 0; }
        .gf-unified.gf-unified .gf-brand-inner {
            display: grid;
            grid-template-columns: 126px minmax(0, 1fr) 224px;
            grid-template-areas: "logo copy action";
            gap: 32px;
            align-items: center;
            min-height: 144px;
        }
        .gf-unified.gf-unified .gf-brand-logo-box {
            grid-area: logo;
            display: grid;
            place-items: center;
            width: 126px;
            height: 126px;
            padding: 10px;
            overflow: hidden;
        }
        .gf-unified.gf-unified .gf-brand-logo {
            display: block;
            width: 104px;
            height: 104px;
            max-width: none;
            object-fit: contain;
            transform: none;
        }
        .gf-unified.gf-unified .gf-brand-copy { grid-area: copy; }
        .gf-unified.gf-unified .gf-brand-copy > span {
            display: block;
            margin: 0;
            font-size: 11px;
            font-weight: 800;
            line-height: 1.5;
            letter-spacing: .14em;
        }
        .gf-unified.gf-unified .gf-brand-copy > strong {
            display: block;
            margin: 6px 0 0;
            font-size: 36px;
            font-weight: 800;
            line-height: 1.12;
            letter-spacing: -.025em;
        }
        .gf-unified.gf-unified .gf-brand-copy > p {
            max-width: none;
            margin: 10px 0 0;
            font-size: 16px;
            line-height: 1.5;
        }
        .gf-unified.gf-unified .gf-brand-action {
            grid-area: action;
            justify-self: stretch;
            width: 224px;
            min-height: 54px;
            margin: 0;
        }

        /* Jedno statyczne pole 16:9, bez klikalnej atrapy filmu. */
        .gf-unified { --gf-media-start: var(--navy-800); --gf-media-end: var(--navy-950); }
        .gf-ksc.gf-unified { --gf-media-start: #08233f; --gf-media-end: #051c33; }
        .gf-unified.gf-unified .gf-media {
            position: relative;
            display: block;
            width: 100%;
            aspect-ratio: 16 / 9;
            padding: 0;
            border: 0;
            border-radius: 0 !important;
            overflow: hidden;
            background: var(--gf-media-end);
        }
        .gf-unified.gf-unified .gf-media-placeholder {
            position: absolute;
            inset: 0;
            background: radial-gradient(circle at center, rgba(255,255,255,.03), transparent 54%),
            linear-gradient(145deg, var(--gf-media-start), var(--gf-media-end) 68%);
            border: 1px solid rgba(255,255,255,.08);
        }
        .gf-unified.gf-unified .gf-media-placeholder::before {
            content: "";
            position: absolute;
            left: 50%;
            top: 50%;
            width: clamp(64px, 10vw, 108px);
            height: clamp(64px, 10vw, 108px);
            transform: translate(-50%, -50%);
            border-radius: 50%;
            background: rgba(255,255,255,.08);
            box-shadow: 0 10px 30px rgba(0,0,0,.18), inset 0 0 0 1px rgba(255,255,255,.06);
        }
        .gf-unified.gf-unified .gf-media-placeholder::after {
            content: "";
            position: absolute;
            left: 50%;
            top: 50%;
            transform: translate(-38%, -50%);
            width: 0;
            height: 0;
            border-top: clamp(11px, 1.9vw, 18px) solid transparent;
            border-bottom: clamp(11px, 1.9vw, 18px) solid transparent;
            border-left: clamp(19px, 3.1vw, 31px) solid rgba(232,236,241,.88);
        }
        .gf-unified.gf-unified .gf-media > video {
            position: absolute;
            inset: 0;
            display: block;
            width: 100%;
            height: 100%;
            object-fit: contain;
        }

        /* Formularze: te same pola geometryczne, rozne etykiety i zakres tematyczny. */
        .gf-unified.gf-unified .gf-form {
            display: flex;
            flex-direction: column;
            width: 100%;
            margin: 0;
            padding: 30px;
            border: 1px solid var(--line);
            border-radius: 0 !important;
            font-size: 16px;
            line-height: 1.58;
        }
        .gf-unified.gf-unified .gf-form-header { min-height: 96px; }
        .gf-unified.gf-unified .gf-form-header h3 {
            margin: 0 0 8px;
            font-size: 26px;
            line-height: 1.25;
            font-weight: 800;
        }
        .gf-unified.gf-unified .gf-form-header p { margin: 0; color: var(--muted); font-size: 16px; line-height: 1.58; }
        .gf-unified.gf-unified .gf-form .form-grid {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            grid-template-rows: repeat(3, minmax(77px, auto)) minmax(139px, auto);
            gap: 16px;
            margin-top: 24px;
            align-content: start;
        }
        .gf-unified.gf-unified .gf-form .field {
            display: grid;
            grid-template-rows: 20px auto;
            align-content: start;
            min-width: 0;
            gap: 7px;
        }
        .gf-unified.gf-unified .gf-form .field.full { grid-column: 1 / -1; }
        .gf-unified.gf-unified .gf-form .gf-field-message { grid-row: 4; }
        .gf-unified.gf-unified .gf-form .field > label {
            font-size: 13px;
            font-weight: 800;
            line-height: 20px;
            margin: 0;
        }
        .gf-unified.gf-unified .gf-form .field :is(input, select, textarea) {
            width: 100%;
            min-width: 0;
            max-width: 100%;
            margin: 0;
            border-width: 1px;
            border-style: solid;
            border-radius: 10px;
            font-size: 16px;
            font-weight: 400;
            line-height: 1.4;
        }
        .gf-unified.gf-unified .gf-form .field :is(input, select) { height: 50px; padding: 0 12px; }
        .gf-unified.gf-unified .gf-form .field textarea {
            display: block;
            height: 112px;
            min-height: 112px;
            padding: 12px;
            resize: vertical;
        }
        .gf-unified.gf-unified .gf-form-consent { min-height: 88px; margin-top: 16px; }
        .gf-unified.gf-unified .gf-form .consent {
            display: grid;
            grid-template-columns: 18px minmax(0, 1fr);
            align-items: start;
            gap: 10px;
            margin: 0;
            font-size: 13px;
            line-height: 1.5;
            font-weight: 400;
        }
        .gf-unified.gf-unified .gf-form .consent input {
            width: 18px;
            height: 18px;
            margin: 1px 0 0;
            flex-shrink: 0;
        }
        .gf-unified.gf-unified .gf-form .consent-details {
            margin: 12px 0 0;
            padding: 0;
            border: 0;
            background: transparent;
        }
        .gf-unified.gf-unified .gf-form .consent-details summary {
            margin: 0;
            padding: 0;
            font-size: 13px;
            line-height: 1.5;
            font-weight: 700;
        }
        .gf-unified.gf-unified .gf-form .consent-details p { font-size: 13px; line-height: 1.5; }
        .gf-unified.gf-unified .gf-form .form-actions {
            display: grid;
            grid-template-columns: minmax(0, 1fr);
            grid-template-rows: minmax(40px, auto) 54px;
            align-items: start;
            gap: 12px;
            margin-top: 16px;
        }
        .gf-unified.gf-unified .gf-form .form-status {
            grid-row: 1;
            margin: 0;
            padding: 0;
            border: 0;
            border-radius: 0;
            background: transparent;
            color: var(--muted);
            font-size: 13px;
            font-weight: 400;
            line-height: 1.5;
        }
        .gf-unified.gf-unified .gf-form .form-actions > .btn {
            grid-row: 2;
            width: 100%;
            height: 54px;
            min-height: 54px;
            margin: 0;
        }
        .gf-unified.gf-unified .form-draft { margin-top: 24px; }
        .gf-unified.gf-unified .form-draft .field { grid-template-rows: auto auto; }
        .gf-unified.gf-unified .form-draft textarea { min-height: 200px; }

        /* Czytelna tresc takze bez JavaScript; animacje nie obejmuja calej sekcji. */
        .gf-unified.gf-unified .reveal,
        .gf-unified.gf-unified .section-enter { opacity: 1; transform: none; }
        .gf-unified.gf-unified :is(.scroll-reveal, .reveal):focus-within { opacity: 1; transform: none; }
        @media (max-width: 1080px) {
            .gf-unified { --gf-gap: 36px; --gf-section-space: 80px; }
            .gf-unified.gf-unified :is(.hero-grid, .product-layout, .problem-grid,
    .film-layout, .app-layout, .team-grid, .training-grid, .contact-grid,
    .faq-layout, .bundle-grid, .team-bottom) { grid-template-columns: minmax(0, 1fr); }
            .gf-unified.gf-unified :is(.product-copy, .problem-copy, .faq-copy) { position: static; }
            .gf-unified.gf-unified .gf-brand-inner {
                grid-template-columns: 108px minmax(0, 1fr);
                grid-template-areas: "logo copy" ". action";
                grid-template-rows: 144px 54px;
                gap: 16px 24px;
                min-height: 214px;
            }
            .gf-unified.gf-unified .gf-brand-logo-box { width: 108px; height: 108px; }
            .gf-unified.gf-unified .gf-brand-logo { width: 86px; height: 86px; }
            .gf-unified.gf-unified .gf-brand-copy > strong { font-size: 32px; }
            .gf-unified.gf-unified .gf-brand-action { justify-self: start; }
            .gf-unified.gf-unified :is(.gf-form, .film-shell) { width: 100%; }
        }
        @media (max-width: 760px) {
            .gf-unified { --gf-gap: 32px; --gf-section-space: 64px; --gf-card-gap: 16px; }
            .gf-unified.gf-unified .container { width: min(var(--gf-max), calc(100% - 28px)); }
            .gf-unified.gf-unified .hero { padding: 52px 0 60px; }
            .gf-unified.gf-unified .section-head { display: block; margin-bottom: 32px; }
            .gf-unified.gf-unified .section-head .lead { margin-top: 18px; }
            .gf-unified.gf-unified :is(.obligation-card, .service-card, .proof-card, .card,
    .module-card, .audience-card, .offer-card, .process-card, .journey-step) { padding: 24px; }
            .gf-unified.gf-unified .gf-brand { padding: 16px 0; }
            .gf-unified.gf-unified .gf-brand-inner {
                grid-template-columns: 80px minmax(0, 1fr);
                grid-template-areas: "logo kicker" "logo title" "description description" "action action";
                grid-template-rows: 28px 52px 84px 54px;
                row-gap: 0;
                column-gap: 16px;
                min-height: 250px;
            }
            .gf-unified.gf-unified .gf-brand-logo-box { width: 80px; height: 80px; padding: 7px; }
            .gf-unified.gf-unified .gf-brand-logo { width: 64px; height: 64px; }
            .gf-unified.gf-unified .gf-brand-copy { display: contents; }
            .gf-unified.gf-unified .gf-brand-copy > span {
                grid-area: kicker;
                align-self: end;
                font-size: 10px;
                line-height: 1.4;
                letter-spacing: .1em;
            }
            .gf-unified.gf-unified .gf-brand-copy > strong {
                grid-area: title;
                align-self: center;
                margin: 0;
                font-size: 24px;
                line-height: 1.08;
            }
            .gf-unified.gf-unified .gf-brand-copy > p {
                grid-area: description;
                align-self: center;
                margin: 0;
                font-size: 14px;
                line-height: 1.5;
            }
            .gf-unified.gf-unified .gf-brand-action {
                width: 100%;
                min-height: 54px;
                justify-self: stretch;
                align-self: end;
                margin: 0;
            }
            .gf-unified.gf-unified .gf-form { padding: 24px; }
            .gf-unified.gf-unified .gf-form-consent { min-height: 108px; }
            .gf-unified.gf-unified .gf-form-header { min-height: 108px; }
        }
        @media (max-width: 600px) {
            .gf-unified.gf-unified .gf-form { padding: 20px; }
            .gf-unified.gf-unified .gf-form-header { min-height: 128px; }
            .gf-unified.gf-unified .gf-form-header h3 { font-size: 24px; }
            .gf-unified.gf-unified .gf-form .form-grid {
                grid-template-columns: repeat(2, minmax(0, 1fr));
                grid-template-rows: repeat(5, minmax(77px, auto)) minmax(139px, auto);
            }
            .gf-unified.gf-unified .gf-form .form-grid > .field { grid-column: 1 / -1; }
            .gf-unified.gf-unified .gf-form .form-grid > .gf-field-short { grid-column: auto; }
            .gf-unified.gf-unified .gf-form .gf-field-message { grid-row: 6; }
            .gf-unified.gf-unified .gf-form-consent { min-height: 128px; }
            .gf-unified.gf-unified .gf-form .form-actions { grid-template-rows: minmax(64px, auto) 54px; }
            .gf-unified.gf-unified :is(.hero-actions, .film-actions) > .btn { width: 100%; }
            .gf-unified.gf-unified .gf-brand-inner { grid-template-rows: 28px 52px 105px 54px; min-height: 271px; }
        }
        @media (prefers-reduced-motion: reduce) {
            .gf-unified *, .gf-unified *::before, .gf-unified *::after {
                animation: none !important;
                transition: none !important;
                scroll-behavior: auto !important;
            }
        }
        @media print {
            .gf-unified :is(.reveal, .scroll-reveal, .section-enter) { opacity: 1 !important; transform: none !important; }
        }

/* Zespół: szeroki panel ekspertek, niżej wsparcie obok diagramu. */
        .gf-aml.gf-unified :where(#zespol) .wide-experts-bottom {
            grid-template-columns: minmax(0, 1fr);
            margin-top: 28px;
        }
        .gf-aml.gf-unified :where(#zespol) .wide-experts-bottom > .experts-panel {
            grid-column: 1 / -1;
            display: grid;
            grid-template-columns: minmax(240px, .68fr) minmax(0, 1.32fr);
            align-items: center;
            gap: 34px;
            background: linear-gradient(120deg, #fff 0%, #f4f9f6 100%);
        }
        .gf-aml.gf-unified :where(#zespol) .wide-panel-heading h3 {
            max-width: 360px;
            margin: 0;
        }
        .gf-aml.gf-unified :where(#zespol) .wide-experts-bottom .experts-grid {
            min-width: 0;
        }
        .gf-aml.gf-unified :where(#zespol) .wide-experts-bottom .expert-card {
            min-height: 270px;
        }
        @media (max-width: 900px) {
            .gf-aml.gf-unified :where(#zespol) .wide-experts-bottom > .experts-panel {
                grid-template-columns: minmax(0, 1fr);
                gap: 24px;
            }
            .gf-aml.gf-unified :where(#zespol) .wide-panel-heading h3 {
                max-width: none;
            }
        }
        @media (max-width: 760px) {
            .gf-aml.gf-unified :where(#zespol) .wide-experts-bottom {
                margin-top: 22px;
            }
            .gf-aml.gf-unified :where(#zespol) .wide-experts-bottom > .experts-panel {
                gap: 20px;
            }
            .gf-aml.gf-unified :where(#zespol) .wide-experts-bottom .expert-card {
                min-height: 250px;
            }
        }
