/* DOP — wspólne style dla stron statycznych. Generowane z index.html. */
.page{display:block!important;opacity:1!important}

:root {
 /* Brandbook 2026 — Granat / Złoto / Biel / Grafit */
 --black:#1B2C4F; --dark:#15243F; --dark2:#0F1B30; --dark3:#0A1322;
 --cream:#FFFFFF; --cream2:#F5F3EE; --warm:#A8852B;
 --gold:#C9A24A; --hot:#D9B560; --red:#c94040; --green:#3a8c5c; --muted:#4F4E4A;
 /* P0: semantic tokens — on dark surfaces */
 --ink-on-dark:#FFFFFF;
 --ink-on-dark-2:rgba(255,255,255,.82);
 --ink-on-dark-3:rgba(255,255,255,.58);
 --ink-on-dark-4:rgba(255,255,255,.35);
 --border-on-dark:rgba(255,255,255,.12);
 --gold-on-dark:rgba(217,181,96,.85);
 /* P1: type scale (8 stops) */
 --fs-xs:12px; --fs-sm:14px; --fs-base:16px; --fs-md:18px;
 --fs-lg:22px; --fs-xl:28px; --fs-2xl:40px; --fs-3xl:64px;
 --max:1140px;
  /* P2: Motion tokens */
  --dur-fast: 160ms;
  --dur-medium: 240ms;
  --dur-slow: 320ms;
  --ease-out: cubic-bezier(.22,1,.36,1);
  /* v25 — fundament tokenów (XXV wiek): spacing / radius / kontrast / easing */
  --space-1:4px; --space-2:8px; --space-3:12px; --space-4:16px; --space-5:24px; --space-6:32px; --space-8:48px; --space-10:64px; --space-12:96px;
  --radius-xs:4px; --radius-sm:6px; --radius-md:10px; --radius-lg:16px; --radius-xl:24px; --radius-pill:999px;
  --gold-ink:#7A5E1F; /* złoto bezpieczne kontrastowo dla tekstu na jasnym (WCAG AA) */
  --ease-expo:cubic-bezier(.16,1,.3,1); --ease-spring:cubic-bezier(.34,1.56,.64,1);
 /* P0: display = Instrument Serif (Bebas wycofany — niezgodny z brandbookiem 2026) */
 --display:'Instrument Serif',Georgia,serif;
 --serif:'Instrument Serif',Georgia,serif;
 --body:'Figtree',system-ui,sans-serif;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--body);background:var(--cream);color:var(--black);line-height:1.55;overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
a{color:inherit;text-decoration:none}
button{font:inherit;cursor:pointer;border:none;background:none}
/* === P0: A11Y — focus visible + reduced-motion === */
:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[role="button"]:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--hot);outline-offset:3px;border-radius:2px}
@media (prefers-reduced-motion:reduce){
 *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
}
/* Skip-link — visible on focus z premium animation */
.skip-link{position:fixed;left:-9999px;top:12px;padding:12px 22px;background:var(--gold);color:var(--black);font-weight:800;font-size:14px;letter-spacing:.04em;text-transform:uppercase;z-index:9999;text-decoration:none;border-radius:6px;box-shadow:0 12px 32px -8px rgba(201,162,74,.5);transition:transform .2s,box-shadow .2s}
.skip-link:focus{left:12px;outline:none;transform:translateY(0)}
.skip-link:focus:hover{transform:translateY(-2px);box-shadow:0 16px 40px -10px rgba(201,162,74,.7)}

/* ── PAGES ── */
/* Page transitions — XXII wiek smooth fade-in (240ms ease-out) */
.page{display:none;opacity:0}
/* Zanim JS wykona showPage('home'), jedyne widoczne bloki to naglowek, dwie sekcje
   pre-footer i stopka — a potem JS wstawia nad nimi 29 000 px tresci. Stad skok
   ukladu CLS 0,94 przy progu 0,1. Strona glowna jest teraz widoczna od pierwszej
   klatki; klase js-gotowe ustawia showPage przy pierwszym wywolaniu i od tego
   momentu o widocznosci decyduje wylacznie .active. */
html:not(.js-gotowe) #page-home{display:block;opacity:1}
.page.active{display:block;opacity:1;animation:pageFadeIn 320ms cubic-bezier(.22,1,.36,1)}
.cal2-footer > div:first-child,
.hero-price,
[data-price-preview],
.price-preview-hero,
.kurs-hero-price{display:none !important}
@keyframes pageFadeIn{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}
@media (prefers-reduced-motion:reduce){.page.active{animation:none}}

/* ── NAV ── */
.nav{position:sticky;top:0;z-index:200;background:rgba(27,44,79,.97);border-bottom:1px solid rgba(201,162,74,.2);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.nav-inner{max-width:var(--max);margin:0 auto;padding:10px 28px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.brand{cursor:pointer;display:flex;flex-direction:column}
.brand-name{font-family:var(--display);font-size:24px;letter-spacing:.01em;color:var(--ink-on-dark);line-height:1}
.brand-sub{font-size:13px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-on-dark);margin-top:3px;font-weight:700;font-family:var(--body)}
.nav-links{display:flex;align-items:center;gap:2px}
.nav-link{font-size:14px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-on-dark-2);padding:14px 14px;min-height:44px;display:inline-flex;align-items:center;transition:color .15s;cursor:pointer;border-radius:4px}
.nav-link:hover,.nav-link.active{color:var(--hot)}
.nav-cta{font-size:14px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;padding:0 22px;min-height:44px;display:inline-flex;align-items:center;background:var(--gold);color:var(--black);transition:background .15s,transform .15s;margin-left:6px;cursor:pointer;border-radius:6px}
.nav-cta:hover{background:var(--hot);transform:translateY(-1px)}

/* ── SHARED ── */
.wrap{max-width:var(--max);margin:0 auto;padding:80px 28px}
.sec-label{display:inline-flex;align-items:center;gap:10px;font-size:14px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--gold-ink);margin-bottom:20px}
.sec-label::before{content:'';width:24px;height:1px;background:var(--gold-ink)}
.sec-label.on-dark{color:rgba(201,162,74,.55)}.sec-label.on-dark::before{background:rgba(201,162,74,.4)}
.sec-h2{font-family:var(--display);font-size:clamp(44px,5.5vw,76px);letter-spacing:.01em;line-height:.94;margin-bottom:18px}
.sec-lead{font-size:17px;color:var(--muted);max-width:640px;line-height:1.65}
.sec-lead.on-dark{color:rgba(27,44,79,.66)}
section{border-top:1px solid rgba(27,44,79,.08)}

/* ── GRAIN OVERLAY ── */
.grain-bg{position:relative;overflow:hidden}
.grain-bg::before{content:'';position:absolute;inset:-50%;width:200%;height:200%;
background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='1'/%3E%3C/svg%3E");
opacity:.04;pointer-events:none;z-index:0}
.grain-bg::after{content:'';position:absolute;top:0;right:25%;width:1px;height:100%;background:linear-gradient(180deg,transparent,rgba(201,162,74,.22) 30%,rgba(201,162,74,.07) 70%,transparent);pointer-events:none;z-index:0}
.grain-inner{position:relative;z-index:1}

/* ── BUTTONS ── XXIII wiek CTA system: 3 tiery (primary / secondary / ghost) + sizes (xl / md / sm) === */
/* CTA tokens */
:root{--cta-shadow-rest:0 1px 0 0 rgba(27,44,79,.06);--cta-shadow-hover:0 16px 40px -12px rgba(201,162,74,.55)}
/* TIER 1: Primary (gold filled) — najwyższe zaangażowanie */
.cta-xl{display:inline-flex;align-items:center;gap:12px;padding:0 32px;min-height:60px;background:var(--gold);color:var(--black);font-weight:800;font-size:16px;letter-spacing:.04em;text-transform:uppercase;border:none;cursor:pointer;font-family:var(--body);border-radius:10px;transition:background .2s,transform .2s,box-shadow .2s;box-shadow:var(--cta-shadow-rest)}
.cta-xl:hover{background:var(--hot);transform:translateY(-3px);box-shadow:var(--cta-shadow-hover)}
.cta-xl .cta-arrow{display:inline-block;transition:transform .2s}
.cta-xl:hover .cta-arrow{transform:translateX(4px)}
/* TIER 2: Secondary (gold outline) — średnie zaangażowanie */
.cta-md{display:inline-flex;align-items:center;gap:10px;padding:0 24px;min-height:48px;background:transparent;color:var(--gold-ink);font-weight:700;font-size:14px;letter-spacing:.05em;text-transform:uppercase;border:1.5px solid rgba(201,162,74,.55);cursor:pointer;font-family:var(--body);border-radius:8px;transition:all .18s}
.cta-md:hover{border-color:var(--gold);background:rgba(201,162,74,.08);color:var(--hot);transform:translateY(-1px)}
/* TIER 3: Tertiary link with animated underline */
.cta-link{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:600;letter-spacing:.04em;color:var(--gold);background:none;border:none;cursor:pointer;padding:8px 4px;min-height:44px;font-family:var(--body);position:relative;transition:color .15s}
.cta-link::after{content:'';position:absolute;bottom:6px;left:4px;right:24px;height:1px;background:currentColor;transform:scaleX(.4);transform-origin:left;transition:transform .25s cubic-bezier(.22,1,.36,1)}
.cta-link:hover{color:var(--hot)}
.cta-link:hover::after{transform:scaleX(1)}
.cta-link .cta-arrow{transition:transform .2s}
.cta-link:hover .cta-arrow{transform:translateX(4px)}
/* Dark version of ghost (na granacie) */
.cta-md-dark{display:inline-flex;align-items:center;gap:10px;padding:0 24px;min-height:48px;background:transparent;color:rgba(255,255,255,.85);font-weight:700;font-size:14px;letter-spacing:.05em;text-transform:uppercase;border:1.5px solid rgba(255,255,255,.18);cursor:pointer;font-family:var(--body);border-radius:8px;transition:all .18s}
.cta-md-dark:hover{border-color:var(--hot);background:rgba(201,162,74,.1);color:var(--hot)}
/* Loading state na CTA */
.cta-xl[data-loading="1"],.cta-md[data-loading="1"]{pointer-events:none;opacity:.7;position:relative}
.cta-xl[data-loading="1"]::after,.cta-md[data-loading="1"]::after{content:'';position:absolute;right:18px;top:50%;width:16px;height:16px;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:cta-spin .7s linear infinite;transform:translateY(-50%)}
@keyframes cta-spin{to{transform:translateY(-50%) rotate(360deg)}}

/* LEGACY (zachowane dla istniejących stron) */
.btn-gold{display:inline-flex;align-items:center;gap:10px;padding:14px 24px;min-height:48px;background:var(--gold);color:var(--black);font-weight:800;font-size:16px;letter-spacing:.05em;text-transform:uppercase;transition:background .18s,transform .18s;cursor:pointer;border-radius:6px}
.btn-gold:hover{background:var(--hot);transform:translateY(-2px);box-shadow:0 8px 24px -8px rgba(201,162,74,.6)}
.btn-dark{display:inline-flex;align-items:center;gap:10px;padding:14px 24px;min-height:48px;background:var(--dark2);color:var(--ink-on-dark);font-weight:800;font-size:16px;letter-spacing:.05em;text-transform:uppercase;border:1px solid var(--border-on-dark);transition:background .18s,transform .18s;cursor:pointer;border-radius:6px}
.btn-dark:hover{background:var(--dark);transform:translateY(-2px)}
.btn-ghost-l{display:inline-flex;align-items:center;gap:10px;padding:14px 24px;min-height:48px;background:transparent;color:var(--black);font-weight:800;font-size:16px;letter-spacing:.05em;text-transform:uppercase;border:1.5px solid rgba(27,44,79,.25);transition:all .18s;cursor:pointer;border-radius:6px}
.btn-ghost-l:hover{border-color:var(--gold);color:var(--gold);background:rgba(201,162,74,.04)}
.btn-ghost-d{display:inline-flex;align-items:center;gap:10px;padding:11px 20px;min-height:44px;background:transparent;color:var(--ink-on-dark-2);font-weight:700;font-size:14px;letter-spacing:.05em;text-transform:uppercase;border:1px solid var(--border-on-dark);transition:all .18s;cursor:pointer;border-radius:5px}
.btn-ghost-d:hover{border-color:var(--gold);color:var(--hot);background:rgba(201,162,74,.08)}
.btn-hero{display:inline-flex;align-items:center;justify-content:space-between;padding:18px 26px;min-height:56px;background:var(--gold);color:var(--black);font-weight:800;font-size:16px;letter-spacing:.05em;text-transform:uppercase;transition:background .18s,transform .18s,box-shadow .18s;gap:12px;cursor:pointer;width:100%;max-width:480px;border-radius:8px}
.btn-hero:hover{background:var(--hot);transform:translateY(-2px);box-shadow:0 12px 32px -10px rgba(201,162,74,.65)}
.btn-hero-sec{display:inline-flex;align-items:center;gap:10px;font-size:16px;font-weight:500;letter-spacing:.02em;color:var(--ink-on-dark-2);transition:color .15s;cursor:pointer;padding:10px 0}
.btn-hero-sec:hover{color:var(--hot)}
.btn-hero-sec::before{content:'';width:18px;height:1px;background:currentColor}

/* ── URGENCY BAR ── */
.urgency{background:var(--dark2);padding:13px 28px;text-align:center;font-size:14px;font-weight:600;color:var(--hot);letter-spacing:.02em;border-top:1px solid rgba(201,162,74,.25);border-bottom:1px solid rgba(201,162,74,.25);font-family:var(--body)}
.urgency span{opacity:.75;color:var(--ink-on-dark-2)}

/* ── HERO DARK (clean brandbook granat — bez plam) ── */
.hero-dark{background:var(--black);min-height:100dvh;display:flex;flex-direction:column;justify-content:center;position:relative}
.hero-dark-inner{max-width:var(--max);margin:0 auto;width:100%;padding:70px 28px 80px;display:grid;grid-template-columns:1fr 370px;gap:56px;align-items:start;position:relative;z-index:1}
/* Brandbook 2026: granat ma być solidny — żadnego noise, żadnych gold-glow plam */
.grain-bg[style*="background:var(--black)"]::before,
.grain-bg[style*="background:var(--black)"]::after,
.hero-dark.grain-bg::before,
.hero-dark .grain-bg::before,
.selector-section.grain-bg::before,
.final.grain-bg::before{display:none!important}
/* Brand light overrides też muszą nie wrzucać noise na granat */
[style*="background:var(--black)"].grain-bg::before,
[style*="background:var(--black)"].grain-bg::after{display:none!important}
.hero-ticker{font-size:13px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-on-dark);margin-bottom:30px;display:flex;align-items:center;gap:12px;font-family:var(--body)}
.hero-ticker::before{content:'';width:40px;height:1px;background:var(--gold-on-dark)}
.hero-h1{font-family:var(--display);font-size:clamp(56px,8.5vw,120px);line-height:.98;letter-spacing:-.015em;color:var(--ink-on-dark)}
.hero-h1 .gold{color:var(--hot);display:block;font-style:italic}
.hero-h1 .dim{color:var(--ink-on-dark-3);display:block;font-size:.6em;font-style:italic}
.hero-sub{font-family:var(--serif);font-size:clamp(19px,1.8vw,23px);font-style:italic;color:var(--ink-on-dark-2);margin:24px 0 32px;max-width:560px;line-height:1.55}
.hero-sub strong{color:var(--ink-on-dark);font-style:normal;font-weight:500;font-family:var(--body)}
.hero-ctas{display:flex;flex-direction:column;gap:14px;max-width:480px}
.hero-proof{display:flex;align-items:stretch;margin-top:48px;border-top:1px solid var(--border-on-dark);padding-top:28px}
.proof-stat{flex:1;padding:0 20px;border-right:1px solid var(--border-on-dark)}
.proof-stat:first-child{padding-left:0}
.proof-stat:last-child{border-right:none}
.proof-num{font-family:var(--display);font-size:48px;letter-spacing:-.01em;color:var(--hot);line-height:1;display:block;font-style:italic}
.proof-label{font-size:13px;color:var(--ink-on-dark-3);letter-spacing:.1em;text-transform:uppercase;margin-top:6px;font-weight:600}

/* ── HERO CARD ── */
.hero-card{background:rgba(255,255,255,.05);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--border-on-dark);padding:30px 26px;position:relative;margin-top:56px;align-self:start;border-radius:12px}
.hero-card::before{content:'';position:absolute;top:-1px;left:20px;right:20px;height:2px;background:linear-gradient(90deg,transparent,var(--hot),transparent)}
.card-eye{font-size:13px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-on-dark);margin-bottom:14px;font-family:var(--body)}
.card-q{font-family:var(--serif);font-size:20px;color:var(--ink-on-dark);line-height:1.35;margin-bottom:20px;font-style:italic}
.loss-big{font-family:var(--display);font-size:64px;line-height:.95;color:var(--hot);border-bottom:1px solid var(--border-on-dark);padding-bottom:16px;margin-bottom:18px;font-style:italic;letter-spacing:-.01em}
.loss-cap{font-size:14px;color:var(--ink-on-dark-3);letter-spacing:.02em;margin-bottom:20px;font-family:var(--body)}
.loss-rows{display:grid;gap:8px}
.loss-row{display:flex;align-items:flex-start;gap:10px;font-size:14px;color:var(--ink-on-dark-2);line-height:1.5;padding:11px 14px;background:rgba(255,255,255,.04);border-left:2px solid rgba(201,162,74,.5);border-radius:0 4px 4px 0}
.loss-arr{color:var(--gold);flex-shrink:0;font-size:14px;margin-top:1px}
.loss-row strong{color:var(--ink-on-dark);font-weight:600}
.card-fn{margin-top:14px;font-size:14px;color:var(--ink-on-dark-4)}

/* ── SELECTOR OKIENEK ── */
.selector-section{background:var(--dark2);padding:0;border-top:none}
.selector-inner{max-width:var(--max);margin:0 auto;padding:72px 28px 80px}
.selector-label{font-size:13px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-on-dark);margin-bottom:14px;display:flex;align-items:center;gap:10px;font-family:var(--body)}
.selector-label::before{content:'';width:24px;height:1px;background:var(--gold-on-dark)}
.selector-intro{font-family:var(--display);font-size:clamp(36px,4.5vw,56px);color:var(--ink-on-dark);line-height:1.02;letter-spacing:-.015em;margin-bottom:12px}
.selector-sub{font-size:17px;color:var(--ink-on-dark-2);margin-bottom:40px;max-width:560px;line-height:1.55}
.selector-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:rgba(27,44,79,.06)}
.sel-card{background:var(--cream);padding:28px 26px;border-bottom:3px solid transparent;transition:all .2s;cursor:pointer;display:flex;flex-direction:column;gap:0;position:relative}
.sel-card:hover{background:var(--cream2);border-color:rgba(201,162,74,.5)}
.sel-card.featured{background:var(--cream2);border-color:var(--gold)}
.sel-card.featured::before{content:'★ POLECANY';position:absolute;top:0;right:0;font-size:12px;font-weight:800;letter-spacing:.12em;background:var(--gold);color:var(--black);padding:4px 10px}
.sel-icon{font-size:26px;margin-bottom:14px}
.sel-type{font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:rgba(201,162,74,.6);margin-bottom:8px}
.sel-card h3{font-family:var(--serif);font-size:19px;color:var(--black);line-height:1.25;margin-bottom:10px}
.sel-card p{font-size:16px;color:rgba(27,44,79,.66);line-height:1.55;flex:1}
.sel-footer{display:flex;align-items:center;justify-content:space-between;margin-top:18px;padding-top:16px;border-top:1px solid rgba(27,44,79,.07)}
.sel-price{font-family:var(--body);font-size:26px;color:var(--hot);line-height:1}
.sel-price span{font-family:var(--body);font-size:14px;color:rgba(27,44,79,.68);font-weight:400}
.sel-arr{font-size:18px;color:var(--gold);transition:transform .2s}
.sel-card:hover .sel-arr{transform:translateX(4px)}

/* ── COURSE DETAIL (shared) ── */
.course-detail{display:none}
.course-detail.active{display:block}

/* ── KWALIFIKACJA ── */
.qual-grid{display:grid;grid-template-columns:1fr 1fr;gap:2px;background:rgba(27,44,79,.08);margin-top:48px}
.qual-col{padding:36px 32px}
.qual-col.yes{background:var(--cream)}
.qual-col.no{background:var(--cream2);color:var(--black)}
.qual-header{font-size:13px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;margin-bottom:22px;padding-bottom:14px;border-bottom:1px solid rgba(27,44,79,.08)}
.qual-col.yes .qual-header{color:var(--green)}
.qual-col.no .qual-header{color:rgba(201,64,64,.8);border-color:rgba(27,44,79,.07)}
.qual-list{list-style:none;display:grid;gap:12px}
.qual-list li{display:flex;gap:10px;font-size:16px;line-height:1.5;align-items:flex-start}
.qual-col.yes .qual-list li{color:var(--muted)}
.qual-col.no .qual-list li{color:rgba(27,44,79,.66)}
.qual-icon{flex-shrink:0;font-weight:900;margin-top:1px}
.qual-col.yes .qual-icon{color:var(--green)}
.qual-col.no .qual-icon{color:rgba(201,64,64,.7)}

/* ── GETS GRID 3Ã2 ── */
.gets-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:rgba(27,44,79,.08);margin-top:48px}
.get-card{background:var(--cream);padding:30px 26px;border-bottom:3px solid transparent;transition:border-color .2s}
.get-card:hover{border-color:var(--gold)}
.get-num{font-family:var(--body);font-size:62px;color:rgba(27,44,79,.06);line-height:1;margin-bottom:4px}
.get-card h3{font-family:var(--serif);font-size:20px;color:var(--black);margin-bottom:10px;line-height:1.2}
.get-card p{font-size:16px;color:var(--muted);line-height:1.65}
.get-result{display:inline-flex;align-items:center;gap:6px;margin-top:14px;font-size:14px;font-weight:700;color:var(--green);background:rgba(58,140,92,.09);padding:5px 10px}
.get-result::before{content:'→'}

/* ── PROGRAM ── */
.prog-section{background:var(--cream)}
.prog-grid{display:grid;grid-template-columns:1fr 1fr;gap:2px;background:rgba(27,44,79,.06);margin-top:48px}
.prog-col{background:var(--cream)}
.prog-day-hdr{padding:22px 28px 18px;border-bottom:1px solid rgba(27,44,79,.07)}
.prog-day-num{font-family:var(--body);font-size:48px;color:rgba(201,162,74,.18);line-height:1}
.prog-day-title{font-family:var(--serif);font-size:22px;color:var(--black);line-height:1.2;margin-top:4px}
.prog-day-sub{font-size:14px;color:rgba(27,44,79,.68);letter-spacing:.06em;text-transform:uppercase;margin-top:5px}
.prog-items{display:grid}
.prog-item{padding:17px 28px;border-bottom:1px solid rgba(27,44,79,.05);display:flex;gap:14px;align-items:flex-start;transition:background .15s}
.prog-item:hover{background:rgba(27,44,79,.03)}
.prog-time{font-size:14px;color:rgba(27,44,79,.68);font-weight:700;letter-spacing:.04em;width:50px;flex-shrink:0;padding-top:2px}
.prog-content h4{font-size:16px;font-weight:700;color:var(--black);margin-bottom:4px;line-height:1.3}
.prog-content p{font-size:16px;color:rgba(27,44,79,.66);line-height:1.5}
.prog-tag{display:inline-block;padding:2px 7px;font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;margin-top:7px}
.t-tool{background:rgba(201,162,74,.16);color:var(--gold-ink)}
.t-ex{background:rgba(58,140,92,.18);color:#7fd4a5}
.t-str{background:rgba(80,120,200,.18);color:#9ec0ff}

/* ── CONTRAST ── */
.contrast-grid{display:grid;grid-template-columns:1fr 1fr;gap:2px;background:rgba(27,44,79,.08);margin-top:48px}
.con-col{padding:36px 32px}
.con-col.bad{background:#fff}
.con-col.good{background:var(--cream2);color:var(--black)}
.con-hdr{font-size:13px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;margin-bottom:22px;padding-bottom:14px;border-bottom:1px solid rgba(27,44,79,.08)}
.con-col.bad .con-hdr{color:rgba(27,44,79,.68)}
.con-col.good .con-hdr{color:var(--gold);border-color:rgba(201,162,74,.2)}
.con-list{list-style:none;display:grid;gap:13px}
.con-list li{font-size:16px;line-height:1.5;display:flex;gap:10px;align-items:flex-start}
.con-col.bad .con-list li{color:var(--muted)}
.con-col.good .con-list li{color:rgba(27,44,79,.72)}
.ci{flex-shrink:0;font-size:16px;margin-top:1px}
.con-col.bad .ci{color:rgba(200,50,50,.6)}
.con-col.good .ci{color:var(--gold)}

/* ── TESTIMONIALS ── */
.testi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:48px}
.testi{background:var(--cream2);border-top:2px solid var(--gold);display:flex;flex-direction:column;overflow:hidden}
.testi-video{position:relative;aspect-ratio:16/9;background:var(--cream2);cursor:pointer;overflow:hidden;display:none}
.testi-video.has-video{display:block}
.testi-video iframe{width:100%;height:100%;border:none;position:absolute;inset:0;display:none}
.testi-video.playing iframe{display:block}
.testi-video-thumb{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}
.testi-play{width:52px;height:52px;border-radius:50%;background:var(--gold);display:flex;align-items:center;justify-content:center;font-size:18px;padding-left:4px;transition:transform .2s,background .2s;box-shadow:0 4px 20px rgba(0,0,0,.4)}
.testi-video:hover .testi-play{transform:scale(1.1);background:var(--hot)}
.testi-body{padding:24px 22px;display:flex;flex-direction:column;gap:12px;flex:1}
.testi-stars{color:var(--gold);letter-spacing:2px;font-size:16px}
.testi-text{font-family:var(--serif);font-weight:800;font-size:17px;line-height:1.65;color:var(--dark);flex:1}
.testi-result{display:inline-flex;align-items:center;gap:7px;font-size:14px;font-weight:700;color:var(--green);background:rgba(58,140,92,.09);padding:5px 11px}
.testi-result::before{content:'↑';font-size:16px}
.testi-author{border-top:1px solid rgba(27,44,79,.08);padding-top:12px;display:flex;align-items:center;gap:12px}
.testi-photo{width:44px;height:44px;border-radius:50%;object-fit:cover;flex-shrink:0;border:2px solid var(--gold)}
.testi-photo-mono{width:44px;height:44px;border-radius:50%;background:var(--cream2);flex-shrink:0;display:flex;align-items:center;justify-content:center;font-family:var(--display);font-size:17px;color:rgba(201,162,74,.5);border:2px solid rgba(201,162,74,.18)}
.testi-info{flex:1}
.testi-name{font-weight:800;font-size:16px}
.testi-role{font-size:14px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-top:2px}

/* ── CENA CARD ── */
.price-section{background:var(--cream)}
.price-inner{max-width:var(--max);margin:0 auto;padding:72px 28px;display:grid;grid-template-columns:1fr 420px;gap:60px;align-items:start}
.price-card{background:rgba(27,44,79,.04);border:1px solid rgba(201,162,74,.22);padding:34px 30px;position:relative}
.price-card::before{content:'';position:absolute;top:-1px;left:18px;right:18px;height:2px;background:linear-gradient(90deg,transparent,var(--hot),transparent)}
.price-big{font-family:var(--display);font-size:72px;color:var(--hot);line-height:1}
.price-netto{font-size:16px;color:rgba(27,44,79,.65);margin-top:4px;margin-bottom:22px}
.price-tags{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:22px}
.price-tag{padding:11px 14px;background:rgba(27,44,79,.04);border-left:2px solid rgba(201,162,74,.3)}
.price-tag strong{display:block;font-size:13px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:rgba(27,44,79,.68);margin-bottom:3px}
.price-tag span{font-size:16px;color:var(--black)}
.price-spots{display:flex;align-items:center;gap:8px;font-size:16px;color:var(--red);font-weight:700;margin-bottom:22px}
.sdot{width:8px;height:8px;border-radius:50%;background:var(--red);flex-shrink:0;animation:pulse 1.5s infinite}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.35}}
.price-copy h3{font-family:var(--display);font-size:40px;color:var(--black);line-height:.94;margin-bottom:16px}
.price-copy p{font-size:17px;color:rgba(27,44,79,.66);line-height:1.75;margin-bottom:24px}
.price-includes{list-style:none;display:grid;gap:10px}
.price-includes li{display:flex;align-items:flex-start;gap:10px;font-size:16px;color:rgba(27,44,79,.68);padding:10px 14px;background:rgba(27,44,79,.04);border-left:2px solid rgba(201,162,74,.3)}
.price-includes li span{color:var(--gold);flex-shrink:0}

/* ── MECH GRID ── */
.mech-grid{display:grid;grid-template-columns:1fr 1fr;gap:2px;background:rgba(27,44,79,.06);margin-top:48px}
.mech-cell{background:var(--cream);padding:34px 30px;border-bottom:3px solid transparent;transition:border-color .2s}
.mech-cell:hover{border-color:var(--gold)}
.mech-num{font-family:var(--display);font-size:72px;color:rgba(27,44,79,.05);line-height:1;margin-bottom:4px}
.mech-tag{display:inline-block;background:rgba(201,162,74,.16);color:var(--gold-ink);font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;padding:3px 8px;margin-bottom:12px}
.mech-cell h3{font-family:var(--serif);font-size:22px;color:var(--black);line-height:1.2;margin-bottom:10px}
.mech-cell p{font-size:16px;color:rgba(27,44,79,.52);line-height:1.7}
.fw-strip{background:rgba(201,162,74,.07);border:1px solid rgba(201,162,74,.2);padding:28px 32px;display:grid;grid-template-columns:auto 1fr;gap:24px;align-items:center;margin-top:2px}
.fw-lbl{font-family:var(--display);font-size:44px;color:var(--warm);line-height:1;letter-spacing:.04em}
.fw-copy h4{font-family:var(--serif);font-size:20px;color:var(--black);margin-bottom:6px}
.fw-copy p{font-size:16px;color:rgba(27,44,79,.66)}
.fw-steps{display:flex;margin-top:14px}
.fw-step{flex:1;padding:12px 14px;background:rgba(27,44,79,.04);border-left:2px solid rgba(201,162,74,.2);font-size:16px;color:rgba(27,44,79,.68)}
.fw-step:first-child{border-color:var(--gold)}
.fw-step strong{display:block;color:var(--black);font-size:14px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;margin-bottom:3px}

/* ── AUTOR ── */
.autor-section{background:var(--cream);color:var(--black)}
.autor-grid{display:grid;grid-template-columns:310px 1fr;gap:56px;align-items:start}
.autor-photo{aspect-ratio:3/4;background:var(--cream2);border:1px solid rgba(201,162,74,.18);position:relative;display:flex;align-items:flex-end;padding:20px;overflow:hidden}
.autor-photo-bg{position:absolute;inset:0;background:radial-gradient(circle at 50% 35%,rgba(201,162,74,.18),transparent 55%),linear-gradient(180deg,var(--dark3) 0%,var(--black) 100%);display:flex;align-items:center;justify-content:center}
.autor-mono{font-family:var(--display);font-size:108px;color:rgba(217,181,96,.28);letter-spacing:-.02em;font-style:italic}
.autor-nametag{position:relative;z-index:1;font-family:var(--serif);font-size:18px;color:var(--ink-on-dark);font-style:italic}
.autor-h2{font-family:var(--display);font-size:clamp(38px,4.5vw,60px);color:var(--black);line-height:.94;margin-bottom:16px}
.autor-p{font-size:17px;color:rgba(27,44,79,.66);line-height:1.75;margin-bottom:26px}
.autor-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:2px;background:rgba(27,44,79,.05);margin-bottom:26px}
.astat{background:var(--cream2);padding:16px 14px}
.astat-num{font-family:var(--display);font-size:36px;color:var(--hot);line-height:1}
.astat-lbl{font-size:13px;color:rgba(27,44,79,.68);text-transform:uppercase;letter-spacing:.07em;margin-top:4px}
.usp-list{list-style:none;display:grid;gap:10px}
.usp-item{display:flex;align-items:flex-start;gap:12px;font-size:16px;color:rgba(27,44,79,.68);padding:12px 14px;background:rgba(27,44,79,.04);border-left:2px solid rgba(201,162,74,.3)}
.usp-item strong{color:var(--black)}

/* ── FINAL CTA ── */
.final{background:linear-gradient(180deg,var(--dark2) 0%,var(--black) 100%);text-align:center;padding:120px 28px;position:relative;overflow:hidden}
.final::before{content:'';position:absolute;top:0;left:50%;transform:translateX(-50%);width:1px;height:60px;background:linear-gradient(180deg,transparent,var(--gold))}
.final::after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 50% 0%,rgba(201,162,74,.10),transparent 50%);pointer-events:none}
.final-eye{font-size:13px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-on-dark);margin-bottom:24px;font-family:var(--body);position:relative;z-index:1}
.final-h2{font-family:var(--display);font-size:clamp(48px,8vw,96px);color:var(--ink-on-dark);line-height:1.0;letter-spacing:-.02em;max-width:820px;margin:0 auto 16px;position:relative;z-index:1}
.final-h2 em{color:var(--hot);font-style:italic}
.final-sub{font-family:var(--serif);font-style:italic;font-size:20px;color:var(--ink-on-dark-2);max-width:520px;margin:0 auto 44px;line-height:1.55;position:relative;z-index:1}
.final-btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;position:relative;z-index:1}
.final-fn{margin-top:24px;font-size:14px;color:var(--ink-on-dark-4);position:relative;z-index:1}
.btn-final{display:inline-flex;align-items:center;gap:12px;padding:18px 36px;min-height:56px;background:var(--gold);color:var(--black);font-weight:800;font-size:16px;letter-spacing:.05em;text-transform:uppercase;transition:background .18s,transform .18s,box-shadow .18s;border-radius:8px}
.btn-final:hover{background:var(--hot);transform:translateY(-2px);box-shadow:0 16px 40px -12px rgba(201,162,74,.7)}
.btn-final-ghost{display:inline-flex;align-items:center;gap:12px;padding:18px 36px;min-height:56px;background:transparent;color:var(--ink-on-dark-2);font-weight:600;font-size:16px;letter-spacing:.04em;text-transform:uppercase;border:1px solid var(--border-on-dark);transition:all .18s;border-radius:8px}
.btn-final-ghost:hover{border-color:var(--gold);color:var(--hot);background:rgba(201,162,74,.06)}

/* ── BEFORE/AFTER ── */
.ba-grid{display:grid;grid-template-columns:1fr 1fr;gap:2px;background:rgba(27,44,79,.06);margin-top:32px}
.ba-col{padding:24px 22px}
.ba-col.bef{background:rgba(201,64,64,.08)}
.ba-col.aft{background:rgba(58,140,92,.08)}
.ba-lbl{font-size:12px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;margin-bottom:14px}
.ba-col.bef .ba-lbl{color:rgba(201,64,64,.7)}
.ba-col.aft .ba-lbl{color:rgba(58,140,92,.85)}
.ba-list{list-style:none;display:grid;gap:10px}
.ba-list li{font-size:16px;color:rgba(27,44,79,.72);line-height:1.45;display:flex;gap:8px;align-items:flex-start}
.ba-col.bef .ba-list li::before{content:'✕';color:rgba(201,64,64,.7);flex-shrink:0;font-weight:900}
.ba-col.aft .ba-list li::before{content:'✓';color:rgba(58,140,92,.9);flex-shrink:0;font-weight:900}

/* ── MODUÅY 2Ã2 ── */
.mod-grid{display:grid;grid-template-columns:1fr 1fr;gap:2px;background:rgba(27,44,79,.08);margin-top:48px}
.mod-card{background:var(--cream);padding:28px 24px;border-bottom:3px solid transparent;transition:border-color .2s}
.mod-card:hover{border-color:var(--gold)}
.mod-num{font-family:var(--display);font-size:54px;color:rgba(27,44,79,.06);line-height:1}
.mod-tag{display:inline-block;background:rgba(201,162,74,.16);color:var(--gold-ink);font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;padding:3px 8px;margin-bottom:10px}
.mod-card h3{font-family:var(--serif);font-size:19px;color:var(--black);margin-bottom:8px;line-height:1.25}
.mod-card p{font-size:16px;color:var(--muted);line-height:1.65}
.mod-tools{display:flex;flex-wrap:wrap;gap:5px;margin-top:12px}
.mod-tool{padding:3px 8px;background:var(--cream2);font-size:14px;color:var(--muted);font-weight:600}

/* ── FLOW VISUAL ── */
.flow-visual{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:32px;background:var(--cream2)}
.flow-step{padding:22px 18px;border-right:1px solid rgba(27,44,79,.07);position:relative}
.flow-step:last-child{border-right:none}
.flow-step::after{content:'→';position:absolute;top:50%;right:-10px;transform:translateY(-50%);font-size:16px;color:rgba(201,162,74,.5);z-index:1}
.flow-step:last-child::after{display:none}
.flow-num{font-family:var(--display);font-size:34px;color:var(--warm);line-height:1;margin-bottom:8px}
.flow-step h4{font-size:16px;font-weight:700;color:var(--black);margin-bottom:5px}
.flow-step p{font-size:14px;color:rgba(27,44,79,.65);line-height:1.5}

/* ── KALENDARZ PAGE ── */
.cal-urgency{background:var(--black);padding:13px 28px;text-align:center;font-size:16px;font-weight:700;color:var(--gold);letter-spacing:.04em;display:flex;align-items:center;justify-content:center;gap:12px;border-top:1px solid rgba(201,162,74,.25);border-bottom:1px solid rgba(201,162,74,.25)}
.cal-hero{background:var(--cream);padding:60px 28px 48px;border-top:none}
.cal-hero-inner{max-width:var(--max);margin:0 auto}
/* Kalendarz stoi w jednej osi — nagłówek, lead i filtry ról też. */
#page-kalendarz .cal-hero-inner{text-align:center}
#page-kalendarz .cal-hero-inner .sec-lead{margin-left:auto;margin-right:auto}
#page-kalendarz .cal-hero-inner .sec-label{justify-content:center}
/* Nagłówki pozostałych sekcji kalendarza — FAQ i zapis na powiadomienia — też
   w osi. Sekcja „Zamów szkolenie zamknięte” zostaje dwukolumnowa: nagłówek stoi
   nad listą po lewej, formularz po prawej. Akordeon FAQ i pola formularzy
   czyta się i wypełnia od lewej, więc ich treść zostaje bez zmian. */
#page-kalendarz > section:not(.dopk-block):not(.dopk-online) > .wrap > .sec-label,
#page-kalendarz > section:not(.dopk-block):not(.dopk-online) > .wrap > .sec-h2,
#page-kalendarz > section:not(.dopk-block):not(.dopk-online) > .wrap > .sec-lead{text-align:center}
#page-kalendarz > section:not(.dopk-block):not(.dopk-online) > .wrap > .sec-label{justify-content:center}
#page-kalendarz > section:not(.dopk-block):not(.dopk-online) > .wrap > .sec-lead{margin-left:auto;margin-right:auto}
/* Ta sama sekcja terminów stoi na stronie głównej — jej nagłówek też w osi,
   bo cała treść pod nim jest wyśrodkowana. */
#terminy > .wrap > .sec-label,#terminy > .wrap > .sec-h2,#terminy > .wrap > .sec-lead{text-align:center}
#terminy > .wrap > .sec-label{justify-content:center}
#terminy > .wrap > .sec-lead{margin-left:auto;margin-right:auto}
.cal-filters{display:flex;gap:8px;flex-wrap:wrap;margin-top:26px}
.cal-filter{padding:12px 18px;min-height:44px;display:inline-flex;align-items:center;border:1px solid rgba(27,44,79,.18);font-size:14px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:rgba(27,44,79,.65);transition:all .15s;background:none;cursor:pointer;border-radius:6px}
.cal-filter:hover,.cal-filter.active{border-color:var(--gold);color:var(--gold);background:rgba(201,162,74,.08)}
.cal-list{max-width:var(--max);margin:2px auto 0;padding:0 28px;display:grid;gap:2px}

/* === CAL CARDS v2 — Masterclass/Lovable style === */
.cal2-card{background:#fff;border-radius:14px;overflow:hidden;cursor:pointer;border:1px solid rgba(27,44,79,.08);box-shadow:0 4px 12px -4px rgba(27,44,79,.06);transition:transform .3s cubic-bezier(.22,1,.36,1),box-shadow .3s cubic-bezier(.22,1,.36,1);color:var(--black)}
.cal2-card:hover{transform:translateY(-6px);box-shadow:0 24px 60px -20px rgba(27,44,79,.25)}
.cal2-card:focus{outline:2px solid var(--gold);outline-offset:3px}
.cal2-cover{position:relative;width:100%;aspect-ratio:16/9;background-size:cover;background-position:center;background-color:var(--dark2);overflow:hidden}
.cal2-featured .cal2-cover{aspect-ratio:21/9}
.cal2-online .cal2-cover{aspect-ratio:21/9}
.cal2-cover-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,27,48,.15) 0%,rgba(15,27,48,.05) 30%,rgba(15,27,48,.7) 100%);pointer-events:none}
.cal2-cover-content{position:absolute;inset:0;padding:18px 20px;display:flex;flex-direction:column;justify-content:space-between;z-index:1}
.cal2-tag{display:inline-flex;align-items:center;font-size:13px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;padding:5px 12px;border-radius:14px;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background:rgba(255,255,255,.92);color:var(--black);box-shadow:0 4px 12px -4px rgba(0,0,0,.2);align-self:flex-start}
.cal2-tag.ct-own{background:rgba(201,162,74,.95);color:var(--black)}
.cal2-tag.ct-doc{background:rgba(58,140,92,.95);color:#fff}
.cal2-tag.ct-rec{background:rgba(80,120,200,.95);color:#fff}
.cal2-tag-featured{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;padding:5px 12px;border-radius:14px;background:rgba(217,181,96,.95);color:var(--black);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:0 4px 12px -4px rgba(201,162,74,.5);align-self:flex-start}
.cal2-date{background:rgba(255,255,255,.95);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);padding:8px 14px;border-radius:10px;text-align:center;box-shadow:0 6px 16px -6px rgba(0,0,0,.3);min-width:74px}
.cal2-date-d{font-family:var(--body);font-size:24px;color:var(--black);line-height:1;font-weight:800;font-weight:400}
.cal2-date-m{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.12em;font-weight:700;margin-top:3px;white-space:nowrap}
.cal2-body{padding:24px 26px 14px}
.cal2-featured .cal2-body{padding:28px 32px 16px}
.cal2-title{font-family:var(--body);font-size:22px;line-height:1.2;color:var(--black);margin:0 0 10px;font-weight:400;letter-spacing:-.005em}
.cal2-featured .cal2-title,.cal2-online .cal2-title{font-size:clamp(26px,3vw,32px)}
.cal2-sub{font-size:16px;color:var(--muted);line-height:1.55;margin:0 0 16px}
.cal2-meta{display:flex;flex-wrap:wrap;gap:8px 18px;align-items:center}
.cal2-meta-item{display:inline-flex;align-items:center;gap:6px;font-size:14px;color:rgba(27,44,79,.7);line-height:1.3}
.cal2-meta-item svg{flex-shrink:0;color:var(--gold)}
.cal2-spot-dot{width:7px;height:7px;border-radius:50%;background:#3fb950;flex-shrink:0}
.cal2-spots-warn{color:var(--red);font-weight:700}
.cal2-spots-warn .cal2-spot-dot{background:var(--red);animation:dop-pulse-soft 1.5s infinite}
.cal2-spots-ok{color:#3a8c5c;font-weight:600}
.cal2-footer{display:flex;align-items:center;justify-content:space-between;padding:16px 26px 22px;border-top:1px solid rgba(27,44,79,.06);gap:14px;flex-wrap:wrap}
.cal2-featured .cal2-footer{padding:20px 32px 26px}
/* === CENA UKRYTA w hero kursów (sprzedażówka) — pokazywana niżej po pełnej wartości === */
/* Pattern: w hero decision-card cena ma font-size:38px + color:var(--hot) + font-weight:800 */
section.grain-bg .grain-inner [style*="font-size:38px"][style*="color:var(--hot)"][style*="font-style:italic"]:not(button):not(.cal2-tag-featured){
  display:none !important;
}
/* "/ osoba", "/ os. faktura VAT" pod ceną też hide */
section.grain-bg .grain-inner [style*="font-size:14px"][style*="rgba(255,255,255,.65)"][style*="margin-bottom:24px"]{
  display:none !important;
}
/* "Inwestycja" eyebrow w hero decision card — ukrywamy bo cena jest hidden, eyebrow bez kontekstu */
section.grain-bg .grain-inner [style*="text-transform:uppercase"][style*="color:rgba(217,181,96,.85)"][style*="margin-bottom:14px"]{
  display:none !important;
}
/* Eyebrow "Inwestycja" → "Wartość kursu" (CSS replace) */
section.grain-bg .grain-inner [style*="text-transform:uppercase"][style*="color:rgba(217,181,96,.85)"]::after{
  display:none;
}
section.grain-bg .grain-inner [style*="text-transform:uppercase"][style*="color:rgba(217,181,96,.85)"][style*="margin-bottom:14px"] span,
section.grain-bg .grain-inner div[style*="text-transform:uppercase"][style*="color:rgba(217,181,96,.85)"][style*="margin-bottom:14px"]:first-letter{}
/* Powyższe CSS replace nie zmienia faktycznego tekstu; tylko ukrywa cenę i pokazuje value strip */

/* === CENA UKRYTA w kalendarzu (marketing best practice — cena DOPIERO po sprzedażówce na landing page) === */
.cal2-footer{justify-content:flex-end !important}
.cal2-footer > div:first-child{display:none !important}
/* Wartość zamiast ceny: value-pills pod tytułem */
.cal2-value-pills{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 14px}
.cal2-value-pill{display:inline-flex;align-items:center;gap:5px;font-size:13px;font-weight:700;letter-spacing:.02em;color:#1B2C4F;background:rgba(201,162,74,.1);border:1px solid rgba(201,162,74,.2);padding:5px 10px;border-radius:999px}
.cal2-value-pill svg{color:var(--gold);flex-shrink:0}
.dark .cal2-value-pill{background:rgba(201,162,74,.15);color:#F5F3EE;border-color:rgba(201,162,74,.3)}
/* Stary price-amt zostawiamy w DOM (na wypadek admin/CMS), ale schowany */
.cal2-price-amt{font-family:var(--display);font-size:32px;color:var(--hot);line-height:1;font-style:italic;letter-spacing:-.01em}
.cal2-featured .cal2-price-amt,.cal2-online .cal2-price-amt{font-size:38px}
.cal2-price-sub{font-size:14px;color:var(--muted);margin-top:4px}
.cal2-cta{padding:11px 20px;background:transparent;color:var(--black);font-weight:800;font-size:14px;letter-spacing:.05em;text-transform:uppercase;border:1.5px solid rgba(27,44,79,.18);cursor:pointer;border-radius:8px;font-family:var(--body);transition:all .2s;white-space:nowrap}
.cal2-cta:hover{border-color:var(--gold);background:rgba(201,162,74,.08);color:var(--gold);transform:translateY(-1px)}
.cal2-cta-primary{background:var(--gold);color:var(--black);border-color:var(--gold);padding:13px 24px;font-size:14px}
.cal2-cta-primary:hover{background:var(--hot);border-color:var(--hot);color:var(--black);box-shadow:0 12px 28px -8px rgba(201,162,74,.5)}
@media(max-width:880px){
 .cal-list-v2{grid-template-columns:1fr!important}
 .cal2-card{border-radius:12px}
 .cal2-featured .cal2-cover,.cal2-online .cal2-cover{aspect-ratio:16/9}
 .invest-grid-resp{grid-template-columns:1fr!important;padding:24px!important;gap:24px!important}
 .invest-grid-resp > div:first-child{padding-bottom:24px;border-bottom:1px solid rgba(201,162,74,.18)}
 .pillars-resp{grid-template-columns:1fr!important}
 .blog-grid-resp{grid-template-columns:1fr!important}
 .blog-grid-2-resp{grid-template-columns:1fr!important;max-width:none!important}
 .book-banner-resp{flex-direction:column!important;text-align:left;gap:18px!important;padding:32px 24px!important}
 .dop-roles-resp{grid-template-columns:repeat(2,1fr)!important}
}
@media(max-width:480px){
 .dop-roles-resp{grid-template-columns:1fr!important}
}

@media(max-width:760px){
 .cross-grid-resp{grid-template-columns:1fr!important}
}

@media(max-width:480px){
 .cal2-body,.cal2-footer,.cal2-featured .cal2-body,.cal2-featured .cal2-footer{padding-left:18px;padding-right:18px}
 .cal2-title{font-size:19px}
 .cal2-featured .cal2-title,.cal2-online .cal2-title{font-size:22px}
 .cal2-meta{gap:6px 14px}
 .cal2-meta-item{font-size:14px}
 .cal2-cover-content{padding:14px 16px}
 .cal2-price-amt{font-size:26px}
 .cal2-featured .cal2-price-amt,.cal2-online .cal2-price-amt{font-size:30px}
}
.cal-card{background:rgba(27,44,79,.035);border:1px solid rgba(27,44,79,.07);padding:24px 28px;display:grid;grid-template-columns:1fr 90px 110px 140px;gap:20px;align-items:center;transition:background .18s,transform .25s,box-shadow .25s,border-left-color .2s;border-left:3px solid transparent}
.cal-card:hover{background:rgba(27,44,79,.06);transform:translateY(-2px);box-shadow:0 12px 32px -16px rgba(27,44,79,.18);border-left-color:rgba(201,162,74,.5)}
.cal-card.hi{background:rgba(201,162,74,.06);border-color:rgba(201,162,74,.25);border-left:3px solid var(--gold)}
.cal-card.hi:hover{background:rgba(201,162,74,.1);border-left-color:var(--hot);box-shadow:0 16px 40px -20px rgba(201,162,74,.4)}
.cal-type{display:inline-block;font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;padding:3px 8px;margin-bottom:8px}
.ct-own{background:rgba(201,162,74,.14);color:var(--gold)}
.ct-doc{background:rgba(58,140,92,.18);color:#7fd4a5}
.ct-rec{background:rgba(80,120,200,.18);color:#9ec0ff}
.cal-star-lbl{display:block;font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-ink);margin-bottom:7px}
.cal-card h3{font-size:17px;font-weight:700;color:var(--black);line-height:1.3;margin-bottom:4px}
.cal-meta{font-size:14px;color:rgba(27,44,79,.68)}
.cal-date-d{font-family:var(--display);font-size:34px;color:var(--hot);line-height:1}
.cal-date-m{font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:rgba(27,44,79,.68);margin-top:2px}
.cal-price strong{font-size:17px;font-weight:800;color:var(--black);display:block}
.cal-price span{font-size:14px;color:rgba(27,44,79,.68)}
.cal-action{display:flex;flex-direction:column;gap:7px;align-items:flex-end}
.spots-row{display:flex;align-items:center;gap:5px;font-size:14px;color:rgba(27,44,79,.68);justify-content:flex-end}
.sdot-r{width:6px;height:6px;border-radius:50%;background:var(--red);flex-shrink:0;animation:pulse 1.5s infinite}
.sdot-g{width:6px;height:6px;border-radius:50%;background:var(--green);flex-shrink:0}
.btn-cal{padding:9px 16px;background:var(--gold);color:var(--black);font-size:14px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;transition:background .15s;white-space:nowrap;cursor:pointer;border:none}
.btn-cal:hover{background:var(--hot)}
.btn-cal-g{padding:9px 16px;background:transparent;color:rgba(27,44,79,.66);font-size:14px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;border:1px solid rgba(27,44,79,.18);transition:all .15s;cursor:pointer;white-space:nowrap}
.btn-cal-g:hover{border-color:var(--gold);color:var(--gold)}

/* ── INHOUSE FORM ── */
.inhouse{background:var(--cream);padding:60px 28px}
.inhouse-inner{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start}
.form-card{background:rgba(27,44,79,.04);border:1px solid rgba(201,162,74,.2);padding:32px;position:relative}
.form-card::before{content:'';position:absolute;top:-1px;left:14px;right:14px;height:2px;background:linear-gradient(90deg,transparent,var(--hot),transparent)}
.form-field{margin-bottom:14px}
.form-label{display:block;font-size:13px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:rgba(27,44,79,.65);margin-bottom:6px}
.form-input{width:100%;padding:13px 14px;min-height:48px;background:rgba(27,44,79,.04);border:1px solid rgba(27,44,79,.18);color:var(--black);font-size:16px;font-family:var(--body);transition:border-color .15s,box-shadow .15s;outline:none;border-radius:6px}
.form-input:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(201,162,74,.18)}
.form-input::placeholder{color:rgba(27,44,79,.66)}
select.form-input{cursor:pointer}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}

/* ── FAQ ── */
.faq-wrap{max-width:780px;margin-top:56px}
.faq-item{border-bottom:1px solid rgba(27,44,79,.08)}
.faq-q{width:100%;text-align:left;padding:20px 0;min-height:60px;display:flex;justify-content:space-between;align-items:center;font-size:17px;font-weight:600;color:var(--black);cursor:pointer;background:none;border:none;font-family:var(--body);transition:color .15s}
.faq-q:hover{color:var(--gold)}
.faq-icon{color:var(--gold);font-size:22px;flex-shrink:0;transition:transform .2s;line-height:1;width:24px;text-align:center}
.faq-item.open .faq-icon{transform:rotate(45deg)}
.faq-a{font-size:16px;color:rgba(27,44,79,.66);line-height:1.7;padding-bottom:20px;display:none}
.faq-a.open{display:block}

/* ── EMAIL CAPTURE ── */
.ecap{background:rgba(201,162,74,.07);border:1px solid rgba(201,162,74,.2);padding:28px;max-width:600px;margin-top:48px}
.ecap-form{display:flex;gap:10px;margin-top:16px;flex-wrap:wrap}
.ecap-input{flex:1;min-width:200px;padding:13px 14px;min-height:48px;background:rgba(27,44,79,.04);border:1px solid rgba(27,44,79,.18);color:var(--black);font-size:16px;font-family:var(--body);outline:none;border-radius:6px;transition:border-color .15s,box-shadow .15s}
.ecap-input::placeholder{color:rgba(27,44,79,.66)}
.ecap-input:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(201,162,74,.18)}
.ecap-checks{display:flex;gap:14px;flex-wrap:wrap;margin-top:12px}
.ecap-check{display:flex;align-items:center;gap:6px;font-size:14px;color:rgba(27,44,79,.66);cursor:pointer}
.ecap-check input{accent-color:var(--gold)}

/* ── BLOG ── */
.blog-hero-sec{background:var(--cream);padding:64px 28px 48px;border-top:none}
.blog-hero-inner{max-width:var(--max);margin:0 auto}
.blog-cats{display:flex;gap:8px;flex-wrap:wrap;margin-top:22px}
.blog-cat{padding:12px 18px;min-height:44px;display:inline-flex;align-items:center;border:1px solid rgba(27,44,79,.18);font-size:14px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:rgba(27,44,79,.65);transition:all .15s;background:none;cursor:pointer;border-radius:6px}
.blog-cat:hover,.blog-cat.active{border-color:var(--gold);color:var(--gold);background:rgba(201,162,74,.08)}
.blog-featured{max-width:var(--max);margin:2px auto 0;background:var(--cream2);border:1px solid rgba(201,162,74,.18);border-left:4px solid var(--gold);padding:38px;display:grid;grid-template-columns:1fr auto;gap:32px;align-items:center}
.bf-tag{display:inline-block;background:rgba(201,162,74,.14);color:var(--gold);font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;padding:3px 8px;margin-bottom:10px}
.bf-title{font-family:var(--serif);font-size:26px;color:var(--black);line-height:1.2;margin-bottom:10px}
.bf-desc{font-size:16px;color:rgba(27,44,79,.66);line-height:1.65;max-width:540px}
.bf-meta{font-size:14px;color:rgba(27,44,79,.68);margin-top:14px}
.blog-grid-wrap{max-width:var(--max);margin:2px auto 0;padding:0 28px 72px}
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:rgba(27,44,79,.08)}
.blog-card{background:var(--cream);display:flex;flex-direction:column}
.blog-card-top{height:158px;background:var(--cream2);display:flex;align-items:flex-end;padding:16px;border-bottom:3px solid transparent;transition:border-color .2s;position:relative;overflow:hidden}
.blog-card:hover .blog-card-top{border-color:var(--gold)}
.blog-card-bg-num{font-family:var(--display);font-size:76px;color:rgba(201,162,74,.12);position:absolute;bottom:-8px;right:10px;line-height:1}
.blog-card-tag{display:inline-block;background:rgba(201,162,74,.14);color:var(--gold);font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;padding:3px 8px;position:relative;z-index:1}
.blog-card-body{padding:20px;flex:1;display:flex;flex-direction:column}
.blog-card h3{font-family:var(--serif);font-size:17px;color:var(--black);line-height:1.3;margin-bottom:8px;flex:1}
.blog-card p{font-size:16px;color:var(--muted);line-height:1.6;margin-bottom:12px}
.blog-card-meta{display:flex;justify-content:space-between;align-items:center;font-size:14px;color:rgba(27,44,79,.33);border-top:1px solid rgba(27,44,79,.07);padding-top:12px}
.blog-read{font-weight:800;color:var(--gold);letter-spacing:.04em;text-transform:uppercase;cursor:pointer}

/* ── LEAD MAGNET ── */
.lead-mag{background:var(--cream);padding:60px 28px}
.lead-mag-inner{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.lm-form{display:flex;gap:10px;margin-top:18px}
.lm-input{flex:1;padding:14px 16px;min-height:48px;background:rgba(27,44,79,.04);border:1px solid rgba(27,44,79,.18);color:var(--black);font-size:16px;font-family:var(--body);outline:none;border-radius:6px;transition:border-color .15s,box-shadow .15s}
.lm-input::placeholder{color:rgba(27,44,79,.66)}
.lm-input:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(201,162,74,.18)}
.lm-fn{font-size:14px;color:rgba(27,44,79,.68);margin-top:8px}

/* ── RADA ── */
.rada-hero{background:var(--cream);padding:72px 28px 56px;border-top:none;position:relative;overflow:hidden}
.rada-hero::after{content:'';position:absolute;top:0;right:22%;width:1px;height:100%;background:linear-gradient(180deg,transparent,rgba(201,162,74,.15) 40%,transparent)}
.rada-hero-inner{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:1fr .85fr;gap:60px;align-items:start}
.rada-mission{background:rgba(201,162,74,.08);border:1px solid rgba(201,162,74,.2);padding:24px;margin-top:24px}
.rada-mission p{font-family:var(--serif);font-style:italic;font-size:18px;color:var(--black);line-height:1.55}
.rada-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:rgba(27,44,79,.08)}
.rada-card{background:var(--cream)}
.rada-card-top{padding:24px 22px 18px;border-bottom:1px solid rgba(27,44,79,.07)}
.rada-mono{font-family:var(--display);font-size:48px;color:rgba(201,162,74,.18);line-height:1;margin-bottom:6px}
.rada-card h3{font-family:var(--serif);font-size:19px;color:var(--black);margin-bottom:4px}
.rada-role{font-size:13px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--gold)}
.rada-card-body{padding:18px 22px}
.rada-card p{font-size:16px;color:var(--muted);line-height:1.65;margin-bottom:10px}
.rada-specs{display:flex;flex-wrap:wrap;gap:5px}
.rada-spec{padding:3px 8px;background:var(--cream2);font-size:14px;color:var(--muted);font-weight:600}
.rada-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:2px;background:rgba(27,44,79,.08)}
.rada-stat{background:var(--cream2);padding:26px 22px}
.rada-stat-num{font-family:var(--display);font-size:52px;color:var(--hot);line-height:1}
.rada-stat-lbl{font-size:14px;color:rgba(27,44,79,.68);text-transform:uppercase;letter-spacing:.07em;margin-top:5px}

/* ── REFERENCJE ── */
.ref-hero{background:var(--cream);padding:64px 28px 48px;border-top:none}
.ref-hero-inner{max-width:var(--max);margin:0 auto}
.ref-stats{display:flex;gap:40px;margin-top:26px;padding-top:26px;border-top:1px solid rgba(27,44,79,.07)}
.ref-stat-n{font-family:var(--display);font-size:48px;color:var(--hot);line-height:1}
.ref-stat-l{font-size:13px;color:rgba(27,44,79,.68);text-transform:uppercase;letter-spacing:.06em;margin-top:4px}
.ref-filters{display:flex;gap:8px;flex-wrap:wrap;margin-top:22px}
.ref-filter{padding:12px 18px;min-height:44px;display:inline-flex;align-items:center;border:1px solid rgba(27,44,79,.18);font-size:14px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:rgba(27,44,79,.65);transition:all .15s;background:none;cursor:pointer;border-radius:6px}
.ref-filter:hover,.ref-filter.active{border-color:var(--gold);color:var(--gold);background:rgba(201,162,74,.08)}
.ref-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2px;background:rgba(27,44,79,.08)}
.ref-card{background:var(--cream);padding:26px 24px;border-bottom:3px solid transparent;transition:border-color .2s}
.ref-card:hover{border-color:var(--gold)}
.ref-stars{color:var(--gold);letter-spacing:2px;font-size:16px;margin-bottom:10px}
.ref-text{font-family:var(--serif);font-style:italic;font-size:17px;line-height:1.7;color:var(--dark);margin-bottom:14px}
.ref-result{display:inline-flex;align-items:center;gap:7px;font-size:14px;font-weight:700;color:var(--green);background:rgba(58,140,92,.09);padding:5px 11px;margin-bottom:14px}
.ref-result::before{content:'↑';font-size:16px}
.ref-author{border-top:1px solid rgba(27,44,79,.08);padding-top:13px}
.ref-name{font-weight:800;font-size:16px}
.ref-role-txt{font-size:14px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-top:2px}
.ref-kurs{font-size:14px;color:var(--gold);font-weight:600;margin-top:3px}
.video-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:rgba(27,44,79,.08)}
.vcard{background:var(--cream2)}
.vcard-thumb{aspect-ratio:16/9;background:var(--cream2);position:relative;display:flex;align-items:center;justify-content:center;cursor:pointer;overflow:hidden}
.vcard-thumb::before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 50%,rgba(201,162,74,.12),transparent 65%)}
.play-btn{width:56px;height:56px;border-radius:50%;background:var(--gold);display:flex;align-items:center;justify-content:center;font-size:18px;color:var(--black);position:relative;z-index:1;padding-left:4px;transition:transform .2s,background .2s}
.vcard-thumb:hover .play-btn{transform:scale(1.1);background:var(--hot)}
.vcard-body{padding:16px 18px}
.vcard-name{font-size:16px;font-weight:700;color:var(--black)}
.vcard-clinic{font-size:14px;color:rgba(27,44,79,.68);margin-top:2px}
.vcard-result{font-size:14px;color:var(--green);font-weight:600;margin-top:5px}

/* ── FOOTER ── */
footer{background:#0A0A0A;padding:64px 28px 28px;color:var(--ink-on-dark)}
.footer-inner{max-width:var(--max);margin:0 auto}
.footer-top{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;margin-bottom:40px}
.fb-name{font-family:var(--display);font-size:26px;color:var(--ink-on-dark);letter-spacing:-.01em;margin-bottom:12px;line-height:1.05}
.fb-desc{font-size:16px;color:var(--ink-on-dark-2);line-height:1.65;max-width:260px}
.fc-title{font-size:13px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-on-dark);margin-bottom:16px;font-family:var(--body)}
/* STOPKA NA TELEFONIE — grupy zwijane.
   5.09.2026: stopka miala 2215 px na ekranie 375 px (2,7 ekranu), z czego
   1447 px zjadaly trzy listy linkow. Na komputerze grupy sa otwarte na stale
   i wygladaja dokladnie jak wczesniej — znacznik rozwijania jest schowany,
   a summary nie reaguje na klik, wiec nikt tam niczego nie zwinie przez pomylke. */
.fcol{margin:0}
/* Na waskim ekranie grupy sa zwiniete do jednego wiersza, wiec odstep 40 px
   miedzy nimi zostawial pustke wieksza niz sama tresc. */
@media(max-width:899px){ .footer-top{gap:4px} .footer-top > div:first-child{margin-bottom:24px} }
.fcol > summary{cursor:pointer;list-style-position:inside;padding:6px 0;min-height:44px;display:list-item}
@media(min-width:900px){
 .fcol > summary{list-style:none;cursor:default;pointer-events:none;min-height:0;padding:0}
 .fcol > summary::-webkit-details-marker{display:none}
}
.fc-link{display:block;font-size:16px;color:var(--ink-on-dark-2);margin-bottom:10px;transition:color .15s,padding-left .15s;cursor:pointer;border:none;background:none;text-align:left;font-family:var(--body);padding:0;min-height:32px}
.fc-link:hover{color:var(--hot);padding-left:4px}
.fc-link.gold{color:var(--gold);font-weight:700}
.footer-bottom{border-top:1px solid var(--border-on-dark);padding-top:24px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;font-size:14px;color:var(--ink-on-dark-3)}
.footer-links-b{display:flex;gap:18px}
.footer-links-b a{color:var(--ink-on-dark-3);transition:color .15s;cursor:pointer;padding:8px 0}
.footer-links-b a:hover{color:var(--hot)}

/* ── ANIMATIONS ── */
@media(prefers-reduced-motion:no-preference){
 .fade-u{opacity:0;transform:translateY(20px);animation:fup .85s var(--ease-expo) forwards}
 @keyframes fup{to{opacity:1;transform:translateY(0)}}
 .d1{animation-delay:.1s}.d2{animation-delay:.22s}.d3{animation-delay:.36s}.d4{animation-delay:.52s}
}

/* ── RESPONSIVE ── */
@media(max-width:1080px){
 .hero-dark-inner,.inhouse-inner,.lead-mag-inner,.rada-hero-inner,.autor-grid,.price-inner{grid-template-columns:1fr}
 .hero-card{margin-top:0}
 .mech-grid,.qual-grid,.gets-grid,.contrast-grid,.ba-grid,.prog-grid,.mod-grid,.rada-grid,.ref-grid,.video-grid,.footer-top{grid-template-columns:1fr}
 .gets-grid{grid-template-columns:1fr 1fr}
 .fw-steps{flex-direction:column}
 .flow-visual{grid-template-columns:1fr 1fr}
 .flow-step::after{display:none}
 .cal-card{grid-template-columns:1fr 1fr}
 .testi-grid,.blog-grid{grid-template-columns:1fr}
 .autor-stats{grid-template-columns:repeat(2,1fr)}
 .rada-stats{grid-template-columns:repeat(2,1fr)}
 .selector-grid{grid-template-columns:1fr}
 .blog-featured{grid-template-columns:1fr}
}
@media(max-width:720px){
 .nav-links{display:none}
 .wrap{padding:60px 20px}
 .hero-dark-inner{padding:50px 20px 60px}
 .hero-proof{flex-direction:column;gap:16px}
 .proof-stat{border-right:none;border-bottom:1px solid rgba(27,44,79,.07);padding:0 0 16px}
 .proof-stat:last-child{border-bottom:none;padding-bottom:0}
 .final-btns{flex-direction:column;align-items:center}
 .gets-grid{grid-template-columns:1fr}
 .cal-card{grid-template-columns:1fr}
 .ref-stats{flex-wrap:wrap;gap:20px}
 .lm-form{flex-direction:column}
 .price-tags{grid-template-columns:1fr}
}

/* HOME PAGE RESPONSIVE */
@media(max-width:1080px){
 .hero-inner-resp{grid-template-columns:1fr!important}
 .mech-grid-resp,.contrast-resp,.paths-resp,.proof-resp,.testi-resp{grid-template-columns:1fr!important}
 .fw-resp{grid-template-columns:1fr!important}
 .fw-steps-resp,.choose-resp{grid-template-columns:1fr!important;flex-direction:column!important}
 .autor-resp{grid-template-columns:1fr!important}
}
.autor-resp > div{min-width:0}
@media(max-width:720px){.autor-stats-resp{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:720px){
 .hero-inner-resp{padding:50px 20px 60px!important}
}

.urgency-bar{background:var(--black);padding:13px 28px;text-align:center;font-size:16px;font-weight:700;color:var(--gold);letter-spacing:.04em;border-top:1px solid rgba(201,162,74,.25);border-bottom:1px solid rgba(201,162,74,.25)}
.dop-header{position:sticky;top:0;z-index:1000;background:rgba(27,44,79,.94);border-bottom:1px solid rgba(201,162,74,.12);backdrop-filter:blur(14px) saturate(180%);-webkit-backdrop-filter:blur(14px) saturate(180%);transition:background .3s,border-color .3s,box-shadow .3s,height .3s}
.dop-header.scrolled{background:rgba(15,27,48,.92);border-bottom-color:rgba(201,162,74,.28);box-shadow:0 8px 32px -16px rgba(0,0,0,.4)}
.dop-header-inner{max-width:1280px;margin:0 auto;padding:0 28px;height:76px;display:flex;align-items:center;gap:24px;transition:height .25s cubic-bezier(.22,1,.36,1)}
.dop-header.scrolled .dop-header-inner{height:62px}
@media(max-width:480px){.dop-header-inner{gap:12px;padding:0 16px}}
.dop-header.scrolled .dop-logo{height:48px}
.dop-logo{height:56px;width:auto;display:block;object-fit:contain;flex-shrink:0;transition:height .2s ease}
@media(max-width:760px){.dop-logo{height:44px}.dop-header.scrolled .dop-logo{height:36px}}
.dop-nav{display:flex;align-items:center;gap:2px;flex-wrap:nowrap;flex-shrink:1;min-width:0;justify-content:center;flex:1;overflow:hidden}
.dop-nav-link{font-family:'Figtree',sans-serif;font-size:14px;font-weight:600;letter-spacing:.02em;text-transform:uppercase;color:rgba(255,255,255,.78);padding:8px 7px;cursor:pointer;background:none;border:none;white-space:nowrap;transition:color .15s;border-radius:4px;position:relative}
.dop-nav-link:hover{color:var(--gold);background:rgba(201,162,74,.08)}
.dop-nav-link.special{color:var(--gold);border:1px solid rgba(201,162,74,.35);margin-left:8px;padding:9px 14px}
/* Active state z animated gold underline */
.dop-nav-link.active{color:var(--hot)}
.dop-nav-link.active::after{content:'';position:absolute;bottom:4px;left:12px;right:12px;height:1.5px;background:var(--hot);border-radius:2px;animation:navUnderline .3s cubic-bezier(.22,1,.36,1) forwards}
.dop-nav-link.special.active{background:rgba(201,162,74,.15);border-color:var(--hot)}
.dop-nav-link.special.active::after{display:none}
@keyframes navUnderline{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@media (prefers-reduced-motion:reduce){.dop-nav-link.active::after{animation:none}}
.dop-cta-wrap{display:flex;align-items:center;gap:14px;flex-shrink:0;margin-left:auto}
.dop-phone{font-family:'Figtree',sans-serif;font-size:16px;font-weight:700;color:var(--gold);text-decoration:none;letter-spacing:.01em;white-space:nowrap}
.dop-cta{font-family:'Figtree',sans-serif;padding:11px 20px;background:transparent;color:var(--gold);font-size:14px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;border:1.5px solid var(--gold);cursor:pointer;white-space:nowrap;flex-shrink:0;transition:background .15s,transform .15s;border-radius:4px;min-height:44px;display:inline-flex;align-items:center;justify-content:center}
.dop-cta:hover{background:var(--gold);color:#000;transform:translateY(-1px)}

.dop-hbg{display:none;flex-direction:column;justify-content:center;gap:5px;width:38px;height:38px;padding:6px;background:none;border:1px solid rgba(201,162,74,.3);border-radius:4px;cursor:pointer;flex-shrink:0}
@media(max-width:860px){.dop-nav{display:none !important}.dop-hbg{display:flex !important}}
/* Numer telefonu widoczny na każdej szerokości. Poniżej 560 px przycisk zwija się
   do samej ikony kalendarza, żeby zrobić mu miejsce. */
@media(max-width:860px){.dop-phone{font-size:15px;letter-spacing:0}}
@media(max-width:560px){.dop-cta-txt{display:none}.dop-cta{padding:0 11px}.dop-cta svg{margin-right:0}
 .dop-phone{font-size:14px}.dop-cta-wrap{gap:8px}}
.dop-hbg span{display:block;width:100%;height:2px;background:var(--gold)}
.dop-mob-nav{display:none;position:absolute;top:100%;left:0;right:0;background:linear-gradient(180deg,#1B2C4F,#15243F);border-bottom:1px solid rgba(201,162,74,.35);box-shadow:0 8px 20px rgba(27,44,79,.3);padding:18px;gap:12px;grid-template-columns:repeat(2,1fr);z-index:999}
.dop-mob-nav.open{display:grid;grid-template-columns:1fr;gap:8px;max-height:calc(100vh - 120px);overflow-y:auto}
.mob-group-label{font-size:13px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:rgba(217,181,96,.7);padding:12px 4px 4px;font-family:var(--body)}
.mob-group-label:not(:first-child){border-top:1px solid rgba(201,162,74,.18);margin-top:6px}
.dop-mob-tile{display:flex;align-items:flex-start;gap:12px;text-align:left;padding:14px;border:1px solid rgba(201,162,74,.22);background:rgba(255,255,255,.04);border-radius:6px;color:rgba(255,255,255,.85);cursor:pointer;transition:background .15s,border-color .15s}
.dop-mob-tile:hover{background:rgba(201,162,74,.1);border-color:rgba(201,162,74,.5)}.dop-mob-icon{font-size:24px;color:var(--gold);line-height:1;flex-shrink:0}
.dop-mob-tile b{display:block;font-size:14px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:var(--cream);margin-bottom:4px}
.dop-mob-tile small{display:block;font-size:14px;color:rgba(255,255,255,.55);line-height:1.4}
.dop-mob-cta{grid-column:1/-1;background:var(--gold);color:#000;padding:14px 18px;border-radius:4px;font-size:14px;font-weight:900;text-transform:uppercase;text-align:center;border:none;cursor:pointer}
/* ── Pasek: kalendarz kursów na lewo od menu, CTA rozmowy po prawej (29.08.2026) ── */
.dop-kal{font-family:'Figtree',sans-serif;display:inline-flex;align-items:center;gap:7px;flex-shrink:0;padding:6px 10px;background:transparent;color:rgba(255,255,255,.82);border:1px solid rgba(201,162,74,.42);border-radius:4px;font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;line-height:1.2;text-align:left;cursor:pointer;transition:border-color .15s,color .15s}
.dop-kal:hover{border-color:var(--gold);color:var(--gold)}
.dop-kal svg{flex-shrink:0;color:var(--gold)}
.dop-kal-txt{display:flex;flex-direction:column}
/* Zmierzone: logo 140 + kalendarz 108 + menu 525 + telefon z CTA 341 + odstepy
   nie miescily sie w 1224 px kontenera, wiec menu (justify-content:center, overflow:hidden)
   ucinalo skrajne pozycje — "Wlasciciele" i "Opinie" znikaly bez sladu. Stad trzy progi: */
@media(min-width:1121px){.dop-header-inner{gap:18px}}
/* 1240 — kalendarz schodzi z paska; w hamburgerze jest kafelek "Kalendarz szkolen" */
@media(max-width:1240px){.dop-kal{display:none}}
/* 1120 — menu i tak sie nie miescilo (tak bylo takze przed ta zmiana, od ~1130 px w dol),
   wiec zamiast ucinac pozycje przechodzimy na hamburger. Bylo 860. */
@media(max-width:1120px){.dop-nav{display:none !important}.dop-hbg{display:flex !important}}
/* ikona tylko tam, gdzie znika tekst — na desktopie zabierala 27 px, ktorych brakowalo menu */
.dop-cta-2l svg{display:none}
@media(max-width:560px){.dop-cta-2l svg{display:block}}
.dop-cta-2l{padding:8px 18px;gap:9px;text-transform:none;letter-spacing:0;line-height:1.15}
.dop-cta-2l .dop-cta-txt{display:flex;flex-direction:column;align-items:flex-start}
.dop-cta-l1{font-size:14px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.dop-cta-l2{font-size:11.5px;font-weight:600;letter-spacing:.03em;opacity:.66;margin-top:1px}
.dop-cta-2l:hover .dop-cta-l2{opacity:.85}
/* Ponizej 560 px zostaje sama ikona. Powtorka reguly z gory, bo tamta
   (.dop-cta-txt) ma nizsza specyficznosc niz .dop-cta-2l .dop-cta-txt. */
@media(max-width:560px){.dop-cta-2l .dop-cta-txt{display:none}.dop-cta-2l{padding:0 13px;gap:0;min-width:44px;justify-content:center}}
/* Ponizej 365 px pasek potrzebowal 353 px przy 320 dostepnych — hamburger wychodzil
   poza ekran (widoczne 11 z 38 px). Ikona CTA schodzi z paska; pelne "Umow konsultacje"
   jest pierwszym kafelkiem w hamburgerze, wiec nic nie ginie. Numer telefonu zostaje,
   bo na telefonie to jedno dotkniecie do rozmowy. */
@media(max-width:365px){
 .dop-cta-2l{display:none}
 .dop-logo{max-width:120px}
 .dop-header-inner{gap:10px;padding:0 12px}
}
/* Hamburger: rozmowa i numer telefonu na samej gorze, nad rolami. */
.dop-mob-top{display:grid;gap:10px;padding-bottom:12px;border-bottom:1px solid rgba(201,162,74,.18)}
.dop-mob-cta-top{display:flex;align-items:center;gap:12px;width:100%;text-align:left;padding:13px 14px;border:1.5px solid var(--gold);background:rgba(201,162,74,.10);border-radius:6px;cursor:pointer;transition:background .15s}
.dop-mob-cta-top:hover{background:rgba(201,162,74,.2)}
.dop-mob-cta-top .ikn{color:var(--gold);flex-shrink:0;display:flex}
.dop-mob-cta-top b{display:block;font-size:15px;font-weight:800;letter-spacing:.03em;color:var(--gold);line-height:1.25;font-family:'Figtree',sans-serif}
.dop-mob-cta-top small{display:block;font-size:12.5px;color:rgba(255,255,255,.62);line-height:1.35;margin-top:2px}
.dop-mob-tel{display:flex;align-items:center;gap:12px;min-height:60px;padding:12px 14px;border:1px solid rgba(201,162,74,.3);background:rgba(255,255,255,.03);border-radius:6px;text-decoration:none;transition:border-color .15s}
.dop-mob-tel:hover{border-color:var(--gold)}
.dop-mob-tel .ikn{color:var(--gold);flex-shrink:0;display:flex}
.dop-mob-tel .num{display:block;font-size:21px;font-weight:800;color:var(--gold);letter-spacing:.01em;line-height:1.15;font-family:'Figtree',sans-serif}
.dop-mob-tel .pod{display:block;font-size:12px;color:rgba(255,255,255,.55);line-height:1.3;margin-top:1px}
/* hamburger włącza się na 1200px — patrz wyżej */
@media(max-width:720px){.dop-mob-nav{grid-template-columns:1fr}}
@media(max-width:980px){.paths-grid-resp,.gets-grid-resp,.testi-grid-resp,.stats-grid-resp,.problemy-grid-resp{grid-template-columns:1fr 1fr!important}#hero-grid,.help-grid-resp,.author-grid-resp,.invest-grid-resp,.placeholder-grid-resp{grid-template-columns:1fr!important}#decision-card{position:relative!important;top:auto!important}.form-grid-resp{grid-template-columns:1fr!important}}
/* Telefon: kafelki kursów w jednej kolumnie. Przy dwóch kolumnach karta ma 159 px —
   nagłówek łamie się na 4 wiersze, tekst schodzi do 2-3 słów w linii, a „STACJONARNIE"
   wychodzi poza kartę. Zdjęcie 159x99 px nie niesie żadnej informacji. */
@media(max-width:600px){.paths-grid-resp.paths-grid-resp{grid-template-columns:1fr!important}}
@media(min-width:601px) and (max-width:980px){.paths-grid-resp.paths-grid-resp{grid-template-columns:1fr 1fr!important}}
/* Podwójna klasa nie jest pomyłką: niżej stoi reguła [style*="grid-template-columns:repeat(4,1fr)"],
   która każdą siatkę 4-kolumnową zmienia w dwie kolumny. Ma tę samą wagę co pojedyncza klasa
   i leży dalej w pliku, więc wygrywała. Podwojona klasa podnosi wagę i rozstrzyga to na stałe. */


/* === DARK MODE TOGGLE — sun/moon button w nav === */
.dop-theme-toggle{
  display:none!important; /* CRO 2026-06: motyw .dark wycofany */
  width:38px;
  height:38px;
  border-radius:50%;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.14);
  color:rgba(255,255,255,.78);
  cursor:pointer;
  transition:all .25s cubic-bezier(.22,1,.36,1);
  margin-right:10px;
  position:relative;
  overflow:hidden;
  flex-shrink:0;
}
.dop-theme-toggle:hover{background:rgba(201,162,74,.18);color:var(--gold);transform:rotate(15deg)}
.dop-theme-toggle .theme-icon-sun{display:none}
.dop-theme-toggle .theme-icon-moon{display:block}
.dark .dop-theme-toggle .theme-icon-sun{display:block}
.dark .dop-theme-toggle .theme-icon-moon{display:none}
@media(max-width:980px){.dop-theme-toggle{width:34px;height:34px;margin-right:6px}}

/* === DARK MODE — global overrides === */
.dark body, body.dark{
  background:#0F1B30;
  color:#F5F3EE;
}
.dark{
  --cream:#0F1B30;
  --cream2:#15243F;
  --black:#F5F3EE;
  --muted:rgba(245,243,238,.6);
}
/* Card surfaces — flip white → dark2 */
.dark .pricing2-card,
.dark .cal2-card,
.dark .paths-grid-resp > div,
.dark .problem2-card,
.dark .opinie-card,
.dark .stat-mini,
.dark .blog-card,
.dark .gets-card,
.dark .testi-card,
.dark .roi-card,
.dark .activity-feed-card{
  background:#15243F !important;
  border-color:rgba(255,255,255,.08) !important;
  color:#F5F3EE !important;
}
.dark .pricing2-card .pricing2-title,
.dark .cal2-card .cal2-title,
.dark .paths-grid-resp h3,
.dark .problem2-card h3,
.dark .pricing2-eyebrow{
  color:#F5F3EE !important;
}
.dark .pricing2-sub, .dark .cal2-sub, .dark .cal2-meta{color:rgba(245,243,238,.65) !important}
.dark .pricing2-chip{background:rgba(245,243,238,.08);color:#F5F3EE;border-color:rgba(245,243,238,.12)}
.dark .pricing2-featured .pricing2-chip{background:rgba(201,162,74,.18);color:var(--hot);border-color:rgba(201,162,74,.35)}
/* Sections that use --cream as bg */
.dark section[style*="background:var(--cream)"],
.dark section[style*="background:#fff"],
.dark section[style*="background:#FFF"]{background:#0F1B30 !important;color:#F5F3EE}
.dark section[style*="background:var(--cream2)"],
.dark section[style*="background:#F5F3EE"]{background:#15243F !important;color:#F5F3EE}
/* Breadcrumb na dark */
.dark .dop-breadcrumb{background:rgba(15,27,48,.85);border-bottom-color:rgba(245,243,238,.08)}
.dark .dop-breadcrumb a{color:rgba(245,243,238,.55)}
.dark .dop-breadcrumb [aria-current="page"]{color:#F5F3EE}
.dark .dop-breadcrumb .sep{color:rgba(245,243,238,.2)}
/* Sig badge na dark */
.dark .kurs-sig-badge{background:rgba(15,27,48,.92)}
/* AI chat na dark */
.dark .chat-window{background:#15243F !important;color:#F5F3EE}
.dark .chat-msg-bot{background:rgba(245,243,238,.06) !important;color:#F5F3EE}
/* Forms & inputs */
.dark input[type="text"],
.dark input[type="email"],
.dark input[type="tel"],
.dark textarea,
.dark select{
  background:rgba(245,243,238,.06) !important;
  color:#F5F3EE !important;
  border-color:rgba(245,243,238,.15) !important;
}
.dark input::placeholder, .dark textarea::placeholder{color:rgba(245,243,238,.4) !important}
/* Cookie banner */
.dark .cookie-banner{background:#15243F !important;color:#F5F3EE !important}
/* H2/H3 text on cream backgrounds */
.dark h1, .dark h2, .dark h3, .dark h4{color:#F5F3EE}
.dark h2[style*="color:var(--black)"], .dark h3[style*="color:var(--black)"]{color:#F5F3EE !important}
/* Smooth transition */
body, .pricing2-card, .cal2-card, .paths-grid-resp > div, .problem2-card{
  transition:background-color .3s ease, color .3s ease, border-color .3s ease;
}

/* === LEAD MAGNET section === */
@media(max-width:880px){.lm-grid-resp{grid-template-columns:1fr !important;gap:40px !important}}
.lm-cover:hover{transform:rotateY(0deg) rotateX(0deg) translateY(-6px) !important}
#lead-magnet form input:focus{outline:none;border-color:var(--gold) !important}
#lead-magnet form button[type=submit]:hover{background:var(--hot) !important;transform:translateY(-1px)}
#lead-magnet form input::placeholder{color:rgba(255,255,255,.4)}

/* === FLOATING CTA — desktop only, 15 min konsultacja === */
/* right:96px, nie 24px (29.09.2026): w tym samym miejscu stoi okrągły przycisk asystenta (60 px,
   z-index 97) i zasłaniał 60×50 px pigułki, ucinając napis „15 min". Pigułka pokazuje się tylko
   od 981 px, a asystent jest wtedy zawsze na ekranie — stąd stałe przesunięcie: 24 + 60 + 12 odstępu. */
.float-cta-15{
  position:fixed;
  bottom:24px;
  right:96px;
  z-index:85;
  display:none;
  align-items:center;
  gap:10px;
  background:linear-gradient(135deg,#C9A24A 0%,#D9B560 100%);
  color:#fff;
  padding:14px 22px 14px 18px;
  border-radius:60px;
  border:none;
  cursor:pointer;
  font-family:var(--body);
  font-size:14px;
  font-weight:700;
  letter-spacing:.02em;
  box-shadow:0 14px 36px -12px rgba(201,162,74,.5),0 4px 12px -4px rgba(0,0,0,.2);
  transition:transform .25s cubic-bezier(.22,1,.36,1), box-shadow .25s;
  text-decoration:none;
  animation: floatCtaIn .5s cubic-bezier(.22,1,.36,1);
}
@keyframes floatCtaIn{from{opacity:0;transform:translateY(20px) scale(.85)}to{opacity:1;transform:translateY(0) scale(1)}}
.float-cta-15:hover{transform:translateY(-3px) scale(1.03);box-shadow:0 20px 44px -12px rgba(201,162,74,.6),0 6px 16px -4px rgba(0,0,0,.25)}
.float-cta-15 .dot{
  display:inline-block;
  width:10px;
  height:10px;
  border-radius:50%;
  background:#fff;
  position:relative;
}
.float-cta-15 .dot::after{
  content:'';
  position:absolute;
  inset:-3px;
  border-radius:50%;
  background:rgba(255,255,255,.5);
  animation: floatCtaPulse 2s ease-out infinite;
}
@keyframes floatCtaPulse{0%{transform:scale(.5);opacity:.7}100%{transform:scale(2);opacity:0}}
.float-cta-15 .close-x{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:22px;
  height:22px;
  margin-left:6px;
  margin-right:-8px;
  border-radius:50%;
  background:rgba(255,255,255,.18);
  color:#fff;
  cursor:pointer;
  transition:background .15s;
}
.float-cta-15 .close-x:hover{background:rgba(255,255,255,.3)}
@media(min-width:981px){
  .float-cta-15.show{display:inline-flex}
}
.dark .float-cta-15{box-shadow:0 14px 36px -12px rgba(201,162,74,.55),0 4px 12px -4px rgba(0,0,0,.5)}

/* === LIVE ACTIVITY TOAST (social proof) === */
.live-toast{
  position:fixed;
  bottom:24px;
  left:24px;
  z-index:88;
  background:#fff;
  border:1px solid rgba(27,44,79,.08);
  border-radius:14px;
  padding:12px 16px;
  display:flex;
  align-items:center;
  gap:12px;
  max-width:340px;
  box-shadow:0 14px 36px -12px rgba(15,27,48,.25);
  font-family:var(--body);
  opacity:0;
  transform:translateY(20px) scale(.92);
  transition:opacity .35s cubic-bezier(.22,1,.36,1), transform .35s cubic-bezier(.22,1,.36,1);
  pointer-events:none;
}
.live-toast.show{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}
.live-toast-avatar{
  width:38px;
  height:38px;
  border-radius:50%;
  background-size:cover;
  background-position:center;
  background-color:#1B2C4F;
  flex-shrink:0;
  position:relative;
}
/* removed live pulse dot — toast nie udaje już live activity */
@keyframes livePulse{0%,100%{box-shadow:0 0 0 0 rgba(58,140,92,.5)}50%{box-shadow:0 0 0 6px rgba(58,140,92,0)}}
.live-toast-body{flex:1;font-size:14px;line-height:1.4;color:var(--black)}
.live-toast-body strong{color:var(--black);font-weight:700}
.live-toast-body .meta{font-size:13px;color:var(--muted);margin-top:2px}
.live-toast-close{
  background:none;
  border:none;
  cursor:pointer;
  color:rgba(27,44,79,.3);
  padding:2px;
  margin:-2px -2px -2px 0;
  flex-shrink:0;
  transition:color .15s;
}
.live-toast-close:hover{color:var(--black)}
.dark .live-toast{background:#15243F;color:#F5F3EE;border-color:rgba(245,243,238,.1)}
.dark .live-toast-body{color:#F5F3EE}
.dark .live-toast-body .meta{color:rgba(245,243,238,.55)}
.dark .live-toast-avatar::after{border-color:#15243F}
@media(max-width:640px){
  .live-toast{bottom:84px;left:12px;right:12px;max-width:none}
}

/* === MOBILE STICKY BOTTOM NAV — nie pokazuje się w żadnej szerokości (30.09.2026) === */
.mob-bottom-nav{
  display:none;
  position:fixed;
  bottom:0;
  left:0;
  right:0;
  z-index:90;
  background:rgba(27,44,79,.96);
  backdrop-filter:blur(20px) saturate(160%);
  -webkit-backdrop-filter:blur(20px) saturate(160%);
  border-top:1px solid rgba(201,162,74,.18);
  box-shadow:0 -8px 24px -8px rgba(0,0,0,.2);
  padding:8px 0 max(8px, env(safe-area-inset-bottom));
}
/* Do 30.09.2026 stała tu reguła „pokaż do 980 px” (razem z body{padding-bottom:72px}). Od 28.08
   do 880 px chowa pasek blok CZYTELNOŚĆ 2026 (na telefonie jedna warstwa pływająca — pasek CTA),
   więc żył już tylko w oknach 881–980 px (np. przeglądarka na pół ekranu Full HD) jako resztka:
   zasłaniał 2/3 toastu z faktami, a klik w „×” toastu trafiał w „Kursy” i przenosił do kalendarza.
   Decyzja Michała z 30.09: okna 881–980 px wyglądają jak komputer — menu w hamburgerze nagłówka,
   tak jak w 981–1120 px. Nie przywracaj reguły bez nowej decyzji (bąbel WhatsApp: jw., #wa-floating). */
.mob-bottom-nav button{
  background:none;
  border:none;
  color:rgba(255,255,255,.6);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:3px;
  padding:6px 4px;
  cursor:pointer;
  font-family:var(--body);
  font-size:13px;
  font-weight:600;
  letter-spacing:.04em;
  transition:color .2s;
  position:relative;
}
.mob-bottom-nav button:hover, .mob-bottom-nav button.active{color:var(--gold)}
.mob-bottom-nav button.active::before{
  content:'';
  position:absolute;
  top:-1px;
  left:30%;
  right:30%;
  height:2px;
  background:var(--gold);
  border-radius:2px;
}
.mob-bottom-nav svg{width:22px;height:22px;margin-bottom:1px}
.dark .mob-bottom-nav{background:rgba(10,19,34,.96)}

/* === NEWSLETTER TIMED POPUP === */
.nl-popup-backdrop{
  position:fixed;
  inset:0;
  background:rgba(15,27,48,.7);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  z-index:200;
  display:none;
  align-items:center;
  justify-content:center;
  padding:20px;
  animation:nlFade .3s ease;
}
.nl-popup-backdrop.show{display:flex}
/* Na iPhonie SE (568 px wysokosci) popup ma 673 px i przy align-items:center wychodzil
   w GORE — krzyzyk ladowal na −39 px, poza ekranem, a backdrop nie mial wlasnego
   przewijania. Nie dalo sie go zamknac inaczej niz przeladowaniem strony. */
@media(max-height:760px){
 .nl-popup-backdrop{align-items:flex-start;overflow-y:auto;padding:12px;-webkit-overflow-scrolling:touch}
 .nl-popup{margin:auto}
}
@keyframes nlFade{from{opacity:0}to{opacity:1}}
.nl-popup{
  background:#fff;
  border-radius:18px;
  max-width:480px;
  width:100%;
  overflow:hidden;
  box-shadow:0 24px 60px -16px rgba(0,0,0,.4);
  position:relative;
  animation:nlSlideIn .4s cubic-bezier(.22,1,.36,1);
}
@keyframes nlSlideIn{from{opacity:0;transform:translateY(20px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}
.nl-popup-close{
  position:absolute;
  top:14px;
  right:14px;
  width:34px;
  height:34px;
  border-radius:50%;
  background:rgba(0,0,0,.05);
  border:none;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  color:var(--muted);
  transition:background .2s, color .2s;
  z-index:2;
}
.nl-popup-close:hover{background:rgba(0,0,0,.1);color:var(--black)}
.nl-popup-hero{
  background:linear-gradient(135deg,#1B2C4F 0%,#0F1B30 100%);
  color:#fff;
  padding:32px 28px 24px;
  text-align:center;
  position:relative;
  overflow:hidden;
}
.nl-popup-hero::before{
  content:'';
  position:absolute;
  top:-40px;
  right:-40px;
  width:160px;
  height:160px;
  background:radial-gradient(circle,rgba(201,162,74,.3),transparent 70%);
  border-radius:50%;
  pointer-events:none;
}
.nl-popup-eyebrow{
  font-size:13px;
  font-weight:800;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--hot);
  margin-bottom:8px;
}
.nl-popup-title{
  font-family:var(--display);
  font-size:28px;
  line-height:1.1;
  margin-bottom:8px;
}
.nl-popup-body{padding:24px 28px 28px}
.nl-popup-sub{font-size:14px;color:var(--muted);line-height:1.55;margin-bottom:18px;text-align:center}
.nl-popup input{
  width:100%;
  padding:14px 16px;
  border:1.5px solid rgba(27,44,79,.15);
  border-radius:10px;
  font-size:16px;
  font-family:var(--body);
  margin-bottom:12px;
  transition:border-color .2s;
}
.nl-popup input:focus{outline:none;border-color:var(--gold)}
.nl-popup-btn{
  width:100%;
  padding:14px;
  background:var(--gold);
  color:#fff;
  border:none;
  border-radius:10px;
  font-weight:800;
  font-size:14px;
  letter-spacing:.06em;
  text-transform:uppercase;
  cursor:pointer;
  transition:background .2s, transform .15s;
}
.nl-popup-btn:hover{background:var(--hot);transform:translateY(-1px)}
.nl-popup-foot{
  margin-top:14px;
  text-align:center;
  font-size:13px;
  color:var(--muted);
}
.nl-popup-success{
  text-align:center;
  padding:24px 28px;
  font-size:16px;
  color:var(--black);
}
.nl-popup-success svg{color:#3a8c5c;margin-bottom:8px}
.dark .nl-popup{background:#15243F;color:#F5F3EE}
.dark .nl-popup input{background:rgba(245,243,238,.06);color:#F5F3EE;border-color:rgba(245,243,238,.15)}
.dark .nl-popup-sub{color:rgba(245,243,238,.65)}
.dark .nl-popup-close{background:rgba(245,243,238,.08);color:#F5F3EE}
.dark .nl-popup-success{color:#F5F3EE}

/* === COMPARE TABLE — 4 ścieżki side-by-side === */
.compare-table th, .compare-table td{vertical-align:top}
.compare-table tbody tr:last-child td{border-bottom:none !important}
.compare-table tbody tr:hover td{background-color:rgba(201,162,74,.03)}
.compare-table tbody tr:hover td:nth-child(4){background-color:rgba(201,162,74,.07) !important}
@media(max-width:760px){
  .compare-wrap{margin-left:-28px;margin-right:-28px;padding:0 28px}
  .compare-table{font-size:14px}
}
.dark .compare-table th{background:transparent !important;color:#F5F3EE !important}
.dark .compare-table th div[style*="color:var(--black)"]{color:#F5F3EE !important}
.dark .compare-table td{color:rgba(245,243,238,.7) !important;border-color:rgba(245,243,238,.08) !important}
.dark .compare-table td[style*="color:var(--black)"]{color:#F5F3EE !important}
.dark .compare-table td[style*="background:rgba(27,44,79,.02)"]{background:rgba(245,243,238,.03) !important}

/* === FAQ ACCORDION === */
.faq-item{
  background:#fff;
  border:1px solid rgba(27,44,79,.08);
  border-radius:12px;
  margin-bottom:10px;
  overflow:hidden;
  transition:border-color .2s, box-shadow .2s;
}
.faq-item[open]{border-color:rgba(201,162,74,.35);box-shadow:0 8px 24px -12px rgba(27,44,79,.12)}
.faq-item summary{
  list-style:none;
  cursor:pointer;
  padding:20px 56px 20px 24px;
  font-family:var(--display);
  font-size:19px;
  color:var(--black);
  font-weight:400;
  position:relative;
  transition:color .2s;
  line-height:1.3;
}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{
  content:'+';
  position:absolute;
  right:24px;
  top:50%;
  transform:translateY(-50%);
  width:28px;
  height:28px;
  border-radius:50%;
  background:rgba(201,162,74,.12);
  color:var(--gold);
  font-size:20px;
  font-weight:300;
  display:flex;
  align-items:center;
  justify-content:center;
  line-height:1;
  transition:transform .25s, background .2s;
}
.faq-item[open] summary::after{
  content:'−';
  transform:translateY(-50%) rotate(180deg);
  background:var(--gold);
  color:#fff;
}
.faq-item summary:hover{color:var(--gold)}
.faq-body{
  padding:0 24px 22px;
  font-size:16px;
  color:var(--muted);
  line-height:1.7;
  animation:faqFadeIn .3s ease-out;
}
@keyframes faqFadeIn{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}
.dark .faq-item{background:#15243F;border-color:rgba(245,243,238,.1)}
.dark .faq-item summary{color:#F5F3EE}
.dark .faq-body{color:rgba(245,243,238,.65)}

/* === KURS SIGNATURE — unique ribbon + floating badge per kurs landing === */
.kurs-sig-ribbon{
  width:100%;
  height:4px;
  position:relative;
  z-index:6;
  box-shadow:0 1px 0 rgba(0,0,0,.04);
}
.kurs-sig-badge{
  position:absolute;
  top:20px;
  right:20px;
  display:inline-flex;
  align-items:center;
  gap:6px;
  background:rgba(255,255,255,.92);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  border:1.5px solid;
  border-radius:999px;
  padding:6px 14px;
  font-size:13px;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
  font-family:var(--body,'Figtree',sans-serif);
  box-shadow:0 6px 20px -8px rgba(0,0,0,.15);
  z-index:10;
  animation: sigBadgePulse 4s ease-in-out infinite;
  pointer-events:none;
}
@keyframes sigBadgePulse {
  0%, 100% { transform: scale(1); box-shadow:0 6px 20px -8px rgba(0,0,0,.15); }
  50% { transform: scale(1.03); box-shadow:0 10px 28px -8px rgba(0,0,0,.22); }
}
.kurs-sig-badge svg{flex-shrink:0}
@media(max-width:680px){
  .kurs-sig-badge{
    top:12px;
    right:12px;
    font-size:12px;
    padding:5px 10px;
    letter-spacing:.08em;
  }
}
@media(max-width:420px){
  .kurs-sig-badge span{display:none}
  .kurs-sig-badge{padding:8px;border-radius:50%}
}
@media (prefers-reduced-motion: reduce){
  .kurs-sig-badge{animation:none}
}

/* === BREADCRUMB — subtle nav under hero === */
.dop-breadcrumb{
  background:rgba(245,243,238,.6);
  border-bottom:1px solid rgba(27,44,79,.06);
  padding:10px 28px;
  font-family:var(--body,'Figtree',sans-serif);
  position:relative;
  z-index:5;
}
.dop-breadcrumb ol{
  list-style:none;
  margin:0 auto;
  padding:0;
  max-width:var(--max,1200px);
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:0;
  font-size:14px;
  letter-spacing:.04em;
}
.dop-breadcrumb li{display:inline-flex;align-items:center}
.dop-breadcrumb a{
  color:rgba(27,44,79,.72);
  text-decoration:none;
  cursor:pointer;
  font-weight:500;
  transition:color .15s;
}
.dop-breadcrumb a:hover{color:var(--gold,#C9A24A)}
.dop-breadcrumb .sep{
  margin:0 8px;
  color:rgba(27,44,79,.25);
  font-weight:300;
}
.dop-breadcrumb [aria-current="page"]{
  color:var(--black,#1A1A1A);
  font-weight:600;
}
/* Hero pages bez breadcrumb (home) — selector :first-child catch */
#page-home > .dop-breadcrumb{display:none}
/* Granat hero pages — breadcrumb na ciemnym tle też czytelny */
.dop-breadcrumb + section[style*="background:var(--dark)"],
.dop-breadcrumb + section[style*="background:#1B2C4F"]{margin-top:0}
@media(max-width:680px){
  .dop-breadcrumb{padding:8px 16px}
  .dop-breadcrumb ol{font-size:13px}
  .dop-breadcrumb .sep{margin:0 6px}
}

/* === PHOTO COVER POLISH — pure CSS reveal + ken-burns hover === */
@keyframes coverFadeIn {
  from { opacity: 0; transform: scale(1.04); }
  to   { opacity: 1; transform: scale(1); }
}
.paths-photo-cover, .pricing2-cover, .cal2-cover{
  position:relative;
  overflow:hidden;
  animation: coverFadeIn 1.1s cubic-bezier(.22,1,.36,1) both;
  will-change: transform;
}
/* Stagger w grid */
.pricing2-grid > *:nth-child(1) .pricing2-cover{animation-delay:0ms}
.pricing2-grid > *:nth-child(2) .pricing2-cover{animation-delay:120ms}
.pricing2-grid > *:nth-child(3) .pricing2-cover{animation-delay:240ms}
.pricing2-grid > *:nth-child(4) .pricing2-cover{animation-delay:360ms}
.paths-grid-resp > *:nth-child(1) .paths-photo-cover{animation-delay:0ms}
.paths-grid-resp > *:nth-child(2) .paths-photo-cover{animation-delay:100ms}
.paths-grid-resp > *:nth-child(3) .paths-photo-cover{animation-delay:200ms}
.paths-grid-resp > *:nth-child(4) .paths-photo-cover{animation-delay:300ms}
/* Hover ken-burns */
.paths-grid-resp > div:hover .paths-photo-cover{transition:transform 8s ease-out; transform:scale(1.05)}
.pricing2-card:hover .pricing2-cover{transition:transform 8s ease-out; transform:scale(1.04)}
.cal2-card:hover .cal2-cover{transition:transform 9s ease-out; transform:scale(1.05)}
@media (prefers-reduced-motion: reduce){
  .paths-photo-cover, .pricing2-cover, .cal2-cover{animation:none; opacity:1; transform:none}
  .paths-grid-resp > div:hover .paths-photo-cover,
  .pricing2-card:hover .pricing2-cover,
  .cal2-card:hover .cal2-cover{transform:none}
}

/* === PATHS GRID v2 — visual treatment dla 4 kafelków kursów na person pages === */
.paths-grid-resp{gap:16px!important;background:transparent!important;padding:0}
.paths-grid-resp > div{background:#fff!important;border-radius:14px!important;border:1px solid rgba(27,44,79,.08)!important;box-shadow:0 4px 12px -4px rgba(27,44,79,.06)!important;transition:transform .25s cubic-bezier(.22,1,.36,1),box-shadow .25s cubic-bezier(.22,1,.36,1),border-color .2s!important;overflow:hidden;position:relative;padding:0!important}
.paths-grid-resp > div:hover{transform:translateY(-6px)!important;box-shadow:0 24px 56px -20px rgba(27,44,79,.25)!important;border-color:rgba(201,162,74,.4)!important}
/* Foto cover wstrzykiwany przez JS - .paths-photo-cover */
.paths-grid-resp > div .paths-photo-cover{width:100%;aspect-ratio:16/10;background-size:cover;background-position:center;background-color:var(--dark2);position:relative;border-radius:14px 14px 0 0;overflow:hidden;margin-bottom:24px}
.paths-grid-resp > div .paths-photo-cover::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,27,48,.1) 0%,rgba(15,27,48,.5) 100%);pointer-events:none}
.paths-grid-resp > div > *:not(.paths-photo-cover){padding-left:26px;padding-right:26px}
.paths-grid-resp > div > *:not(.paths-photo-cover):last-child{padding-bottom:24px}
.paths-grid-resp > div > div:first-of-type:not(.paths-photo-cover){margin-top:18px}
/* ⛔ NIE USUWAJ. Karta kafelka ma padding:0!important (regula wyzej), a wrapper zdjecia
   ma inline'owe margin:-36px -30px — wyliczone pod stary padding 36/30px. Przy padding:0
   zdjecie wychodzilo 35 px NAD karte i overflow:hidden karty ucinal mu gore: na kazdym
   kafelku znikalo 17% kadru, przez co ludziom ucinalo glowy. Tu przywracamy zdjeciu
   pelny kadr 16:10 w szerokosci karty. */
.paths-grid-resp > div > .kafel-foto{margin:0 0 20px!important;padding:0!important;border-radius:14px 14px 0 0;overflow:hidden}
/* Icon Lucide highlight gold */
.paths-grid-resp > div > div[style*="font-size:32px"]{display:inline-flex!important;align-items:center;justify-content:center;width:44px;height:44px;background:rgba(201,162,74,.12);border-radius:10px;color:var(--gold);font-size:22px!important;margin-bottom:14px!important;flex-shrink:0}
.paths-grid-resp > div > div[style*="font-size:32px"] svg{color:var(--gold);width:22px;height:22px}
.paths-grid-resp > div[style*="border-bottom:3px solid var(--gold)"]{border-color:rgba(201,162,74,.4)!important}
/* Featured (★) z gold border + scale subtle */
.paths-grid-resp > div[style*="position:absolute"]:has(div[style*="★"]),
.paths-grid-resp > div:has(div[style*="POLECANY"]),
.paths-grid-resp > div:has(div[style*="NAJCZĘŚCIEJ"]){border:1.5px solid var(--gold)!important;box-shadow:0 8px 24px -8px rgba(201,162,74,.3)!important}
@media(max-width:720px){.paths-grid-resp,.gets-grid-resp,.testi-grid-resp,.stats-grid-resp,.problem-grid-resp,.problemy-grid-resp,.qual-grid-resp,.vs-grid-resp,.prog-grid-resp,.cross-grid-resp{grid-template-columns:1fr!important}}
/* === BRAND LIGHT OVERRIDES === */
/* === BRAND LIGHT OVERRIDES — usunięto bare [style*=] selectory bo powodowały hang strony przy 1.6MB HTML === */
/* Light sections - tekst granat */
.prog-section h3,.prog-section h4{color:var(--black)!important}
.prog-section .prog-day-num{color:rgba(201,162,74,.35)!important}
.prog-section .prog-day-sub,.prog-section .prog-time,.prog-section .prog-content p{color:var(--muted)!important}
.price-section .price-copy h3{color:var(--black)!important}
.price-section .price-card{background:#FFFFFF!important;border-color:rgba(201,162,74,.3)!important}
.price-section .price-tag{background:#FFFFFF!important}
.price-section .price-copy p,.price-section .price-netto{color:var(--muted)!important}
.mech-cell h3{color:var(--black)!important}
.mech-cell p{color:var(--muted)!important}
.mech-cell .mech-num{color:rgba(27,44,79,.08)!important}
.autor-section .autor-h2{color:var(--black)!important}
.autor-section .autor-p,.autor-section .usp-item{color:var(--muted)!important}
.autor-section .astat{background:#FFFFFF!important;border:1px solid rgba(201,162,74,.2)!important}
.autor-section .usp-item{background:#FFFFFF!important}
.cal-hero h2{color:var(--black)!important}
.cal-list .cal-card{background:#FFFFFF!important;border-color:rgba(27,44,79,.1)!important}
.cal-list .cal-card h3{color:var(--black)!important}
.cal-list .cal-meta,.cal-list .cal-date-m,.cal-list .cal-price span{color:var(--muted)!important}
.cal-list .cal-price strong{color:var(--black)!important}
.inhouse h2,.inhouse h3{color:var(--black)!important}
.inhouse .form-card{background:#FFFFFF!important}
.inhouse .form-input{background:#FFFFFF!important;border-color:rgba(27,44,79,.15)!important;color:var(--black)!important}
.blog-hero-sec h1,.blog-hero-sec h2{color:var(--black)!important}
.blog-featured{background:#FFFFFF!important}
.blog-featured .bf-title{color:var(--black)!important}
.blog-featured .bf-desc{color:var(--muted)!important}
.lead-mag h2,.lead-mag h3{color:var(--black)!important}
.rada-hero h1,.rada-hero h2{color:var(--black)!important}
.rada-stat{background:#FFFFFF!important;border:1px solid rgba(201,162,74,.2)!important}
.rada-stat .rada-stat-lbl{color:var(--muted)!important}
.ref-hero h1,.ref-hero h2{color:var(--black)!important}
.vcard .vcard-name{color:var(--black)!important}
.vcard .vcard-clinic{color:var(--muted)!important}
.sel-card h3{color:var(--black)!important}
.sel-card p{color:var(--muted)!important}
.qual-col.no .qual-list li{color:var(--muted)!important}
.con-col.good .con-list li{color:var(--muted)!important}
.flow-visual .flow-step h4{color:var(--black)!important}
.flow-visual .flow-step p{color:var(--muted)!important}


.urgency strong,.urgency-bar strong,.cal-urgency strong{color:#D9B560}
.urgency span,.urgency-bar span,.cal-urgency span{color:var(--gold-on-dark)}

@media(max-width:760px){.book-banner-resp{grid-template-columns:1fr!important;text-align:center;gap:20px!important}.book-banner-resp > div:first-child{margin:0 auto;max-width:120px}}@media(max-width:760px){.leadmag-resp{grid-template-columns:1fr!important;gap:28px!important}}
@media(max-width:1024px){.fb-section-resp{grid-template-columns:1fr!important;gap:40px!important}.fb-section-resp .fb-page{margin:0 auto;width:100%!important;max-width:500px}}

/* A11y: focus-visible dla div role=button kafelków */
[role="button"][tabindex="0"]{outline:none}
[role="button"][tabindex="0"]:focus-visible{outline:2px solid var(--gold)!important;outline-offset:3px!important;border-radius:2px}

/* ═══════════════════════════════════════════════════════════ */
/* LEAD CAPTURE — modale, sekcje formularzy, Brevo override   */
/* ═══════════════════════════════════════════════════════════ */

/* Modal system — overlay + container */
.dop-modal-overlay{position:fixed;inset:0;background:rgba(27,44,79,.78);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:9999;display:none;align-items:flex-start;justify-content:center;overflow-y:auto;padding:40px 16px;opacity:0}
.dop-modal-overlay.open{display:flex;opacity:1;animation:dopModalFade .2s ease-out forwards}
.dop-modal-overlay.open .dop-modal-shell{opacity:1;animation:dopModalSlide .28s cubic-bezier(.22,1,.36,1) forwards}
@keyframes dopModalFade{from{opacity:0}to{opacity:1}}
@keyframes dopModalSlide{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.dop-modal-overlay.open,.dop-modal-overlay.open .dop-modal-shell{animation:none!important;opacity:1!important;transform:none!important}}
.dop-modal-shell{background:var(--cream);max-width:640px;width:100%;border-radius:14px;box-shadow:0 30px 80px rgba(0,0,0,.4);position:relative;margin:auto;overflow:hidden}
.dop-modal-header{background:var(--granat,#1B2C4F);color:#fff;padding:28px 32px 24px;position:relative}
.dop-modal-eyebrow{font-size:13px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);margin-bottom:8px;font-family:var(--body)}
.dop-modal-title{font-family:var(--display);font-size:28px;line-height:1.15;color:#fff;margin:0;font-weight:400}
.dop-modal-title em{font-style:italic;color:var(--gold)}
.dop-modal-sub{margin:10px 0 0;font-size:14px;color:rgba(255,255,255,.78);line-height:1.5}
.dop-modal-close{position:absolute;top:16px;right:16px;width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);color:#fff;font-size:22px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s}
.dop-modal-close:hover{background:rgba(255,255,255,.2)}
.dop-modal-body{padding:28px 32px 32px}
.dop-modal-seller{font-size:13px;color:var(--muted);font-style:italic;margin-top:12px;letter-spacing:.02em}
.dop-modal-success{background:rgba(58,140,92,.08);border:1px solid rgba(58,140,92,.3);padding:24px;border-radius:10px;color:var(--black);font-size:16px;line-height:1.6;display:none}
.dop-modal-success.show{display:block}
.dop-modal-success strong{color:#3a8c5c;display:block;margin-bottom:6px;font-size:18px}

@media(max-width:640px){
 .dop-modal-overlay{padding:0;align-items:stretch}
 .dop-modal-shell{border-radius:0;min-height:100vh}
 .dop-modal-header{padding:24px 20px 20px}
 .dop-modal-body{padding:20px}
 .dop-modal-title{font-size:24px}
}

/* Sekcje formularzy B2B na stronach (inquiry, audyt) */
.dop-form-section{padding:80px 24px;background:var(--cream2);border-top:1px solid rgba(27,44,79,.08)}
.dop-form-section.granat{background:var(--granat,#1B2C4F);color:#fff;border-top:none}
.dop-form-section.granat .dop-form-eyebrow{color:var(--gold)}
.dop-form-section.granat .dop-form-title{color:#fff}
.dop-form-section.granat .dop-form-lead{color:rgba(255,255,255,.8)}
.dop-form-wrap{max-width:880px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}
.dop-form-eyebrow{font-size:13px;font-weight:800;letter-spacing:.22em;text-transform:uppercase;color:var(--warm);margin-bottom:14px}
.dop-form-title{font-family:var(--display);font-size:36px;line-height:1.1;color:var(--black);margin:0 0 18px;font-weight:400}
.dop-form-title em{font-style:italic;color:var(--gold)}
.dop-form-lead{font-size:16px;line-height:1.6;color:rgba(27,44,79,.78);margin-bottom:24px}
.dop-form-bullets{list-style:none;padding:0;margin:0}
.dop-form-bullets li{font-size:14px;line-height:1.5;color:rgba(27,44,79,.7);padding:8px 0 8px 24px;position:relative}
.dop-form-bullets li::before{content:"→";position:absolute;left:0;color:var(--gold);font-weight:800}
.dop-form-section.granat .dop-form-bullets li{color:rgba(255,255,255,.75)}
.dop-form-container{background:#fff;padding:32px;border-radius:14px;box-shadow:0 8px 24px rgba(0,0,0,.06);border:1px solid rgba(27,44,79,.08)}
.dop-form-section.granat .dop-form-container{background:#fff;color:var(--black)}

@media(max-width:880px){
 .dop-form-section{padding:56px 20px}
 .dop-form-wrap{grid-template-columns:1fr;gap:32px}
 .dop-form-title{font-size:28px}
 .dop-form-container{padding:24px}
}

/* Brevo Forms — globalny override pod brand DOP                 */
/* Brevo wstrzykuje .sib-form, .sib-container, etc.              */
/* Wymuszamy nasz design system na ich strukturze.                */

.sib-form,
.dop-modal-shell .sib-form,
.dop-form-container .sib-form{
 padding:0!important;background:transparent!important;font-family:var(--body)!important;color:var(--black)!important;
}
.sib-form *,
.sib-container *,
.sib-form-block *{font-family:var(--body)!important;box-sizing:border-box}
.sib-container--large,
.sib-container--vertical,
.sib-container--horizontal{padding:0!important;background:transparent!important;max-width:100%!important}
.sib-form-block{padding:0!important;background:transparent!important;margin:0 0 14px!important}
.sib-form-block__paragraph{font-size:14px!important;line-height:1.6!important;color:rgba(27,44,79,.78)!important;margin:0 0 12px!important}

/* Input fields */
.sib-input input,
.sib-form-block input[type="text"],
.sib-form-block input[type="email"],
.sib-form-block input[type="tel"],
.sib-form-block input[type="number"],
.sib-form-block textarea,
.sib-form-block select,
.entry__field,
.input{
 width:100%!important;
 padding:14px 16px!important;
 border:1px solid rgba(27,44,79,.18)!important;
 border-radius:8px!important;
 background:#fff!important;
 font-size:16px!important;
 font-family:var(--body)!important;
 color:var(--black)!important;
 transition:border-color .15s,box-shadow .15s!important;
 min-height:48px!important;
 box-shadow:none!important;
}
.sib-input input:focus,
.sib-form-block input:focus,
.sib-form-block textarea:focus,
.entry__field:focus,
.input:focus{
 outline:none!important;
 border-color:var(--gold)!important;
 box-shadow:0 0 0 3px rgba(201,162,74,.18)!important;
}
.sib-form-block textarea{min-height:100px!important;resize:vertical!important}

/* Labels */
.sib-input label,
.sib-form-block label,
.entry__label{
 display:block!important;
 font-size:14px!important;
 font-weight:700!important;
 letter-spacing:.04em!important;
 text-transform:uppercase!important;
 color:rgba(27,44,79,.7)!important;
 margin-bottom:6px!important;
 font-family:var(--body)!important;
}

/* Submit button */
.sib-form-block__button,
.sib-form-block button[type="submit"],
.entry__button,
.btn[type="submit"]{
 width:100%!important;
 padding:16px 24px!important;
 background:var(--gold)!important;
 color:var(--black)!important;
 border:none!important;
 border-radius:8px!important;
 font-size:14px!important;
 font-weight:800!important;
 letter-spacing:.08em!important;
 text-transform:uppercase!important;
 cursor:pointer!important;
 transition:background .15s,transform .15s!important;
 font-family:var(--body)!important;
 min-height:52px!important;
 box-shadow:none!important;
 margin-top:6px!important;
}
.sib-form-block__button:hover,
.entry__button:hover{
 background:var(--hot)!important;
 transform:translateY(-1px)!important;
}

/* Checkboxes / radios */
.sib-form-block__checkbox label,
.entry__choice label{display:flex!important;align-items:flex-start!important;gap:10px!important;text-transform:none!important;letter-spacing:0!important;font-weight:400!important;font-size:14px!important;color:rgba(27,44,79,.7)!important;line-height:1.5!important}
.sib-form-block__checkbox input[type="checkbox"]{width:18px!important;height:18px!important;margin-top:2px!important;accent-color:var(--gold)!important}

/* Errors */
.sib-form-message-panel--error-message,
.entry__error{
 background:rgba(201,64,64,.08)!important;
 border:1px solid rgba(201,64,64,.3)!important;
 color:#c94040!important;
 padding:12px 14px!important;
 border-radius:8px!important;
 font-size:14px!important;
 margin-bottom:14px!important;
}
.sib-form-message-panel--success-message{
 background:rgba(58,140,92,.08)!important;
 border:1px solid rgba(58,140,92,.3)!important;
 color:#3a8c5c!important;
 padding:14px 16px!important;
 border-radius:8px!important;
 font-size:14px!important;
}

/* Ukryj 'Powered by Brevo' / 'Sendinblue' branding */
.sib-form a[href*="brevo"],
.sib-form a[href*="sendinblue"],
.sib-form-message-panel--brand,
.sib-text-form-block__poweredby,
.sib-form-block__sib-default-form-style{display:none!important}

/* W modal — formularz nie ma własnego paddingu, modal kontroluje */
.dop-modal-body .sib-form{margin:0!important}
.dop-modal-body .sib-container{padding:0!important;margin:0!important}

/* Newsletter w pre-footer — granat tło, więc nadpisanie kolorów */
#newsletter-brevo-slot .sib-input input,
#newsletter-brevo-slot input[type="email"]{
 background:rgba(255,255,255,.06)!important;
 border-color:rgba(255,255,255,.16)!important;
 color:#fff!important;
}
#newsletter-brevo-slot .sib-input input::placeholder{color:rgba(255,255,255,.4)!important}
#newsletter-brevo-slot label{color:rgba(217,181,96,.85)!important}

/* Loader (gdy Brevo wysyła) */
.dop-form-loader{display:none;padding:16px;text-align:center;color:var(--muted);font-size:14px}
.dop-form-loader.show{display:block}

/* ─── Custom DOP forms (renderowane przez JS, POST do /api/lead) ─── */

.dop-form{display:flex;flex-direction:column;gap:14px;font-family:var(--body);position:relative}
.dop-form *{box-sizing:border-box}
.dop-field-row{display:flex;flex-direction:column;gap:0}
.dop-field-row--2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.dop-field-row--2-1{display:grid;grid-template-columns:2fr 1fr;gap:12px}
.dop-field{display:flex;flex-direction:column;gap:6px}
/* Bez tego atrybut hidden nie chowa pola: .dop-field{display:flex} bije
   przegladarkowe [hidden]{display:none}. Chowamy NIP i nazwe firmy, gdy
   nabywca jest osoba prywatna. */
.dop-field[hidden]{display:none!important}
.dop-field-label{display:block;font-size:14px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:rgba(27,44,79,.7);font-family:var(--body);line-height:1.2}
.dop-field input[type="text"],
.dop-field input[type="email"],
.dop-field input[type="tel"],
.dop-field input[type="number"],
.dop-field textarea,
.dop-field select{
 width:100%;padding:14px 16px;border:1px solid rgba(27,44,79,.18);border-radius:8px;
 background:#FFFFFF;font-size:16px;font-family:var(--body);color:var(--black);
 transition:border-color .15s,box-shadow .15s;min-height:48px;outline:none;
}
.dop-field input:focus,
.dop-field textarea:focus,
.dop-field select:focus{
 border-color:var(--gold);box-shadow:0 0 0 3px rgba(201,162,74,.18);
}
.dop-field textarea{min-height:96px;resize:vertical;line-height:1.5}
.dop-field input:invalid:not(:placeholder-shown),
.dop-field select:invalid:not(:focus){
 border-color:rgba(201,64,64,.5);
}
.dop-field-helper{font-size:14px;color:rgba(27,44,79,.72);line-height:1.4;margin-top:-2px}
/* Termin edycji. Przy jednej edycji nie ma czego wybierac — pokazujemy fakt,
   nie listę rozwijaną z jedną pozycją, która tylko udaje decyzję. */
.dop-termin-jeden{display:flex;flex-direction:column;gap:2px;padding:12px 14px;
 background:rgba(201,162,74,.09);border:1px solid rgba(201,162,74,.3);border-radius:10px;
 font-size:16px;color:var(--black);line-height:1.4}
.dop-termin-jeden strong{font-weight:700}
.dop-termin-jeden span{font-size:14px;color:rgba(27,44,79,.7)}
.dop-form--dark .dop-termin-jeden{background:rgba(201,162,74,.14);border-color:rgba(201,162,74,.4);color:#fff}
.dop-form--dark .dop-termin-jeden span{color:rgba(255,255,255,.65)}

/* 18 px to ponizej progu 44 px dla palca — na telefonie w te zgode trzeba bylo
   celowac. Kwadracik ma 24 px, a caly wiersz (label) najmniej 44 px wysokosci. */
.dop-consent{display:flex;gap:10px;align-items:flex-start;font-size:14px;color:rgba(27,44,79,.7);line-height:1.5;cursor:pointer;margin-top:4px;min-height:44px;padding:5px 0}
.dop-consent input[type="checkbox"]{margin-top:1px;width:24px;height:24px;accent-color:var(--gold);flex-shrink:0;cursor:pointer}
.dop-consent a{color:var(--warm);text-decoration:underline}

.dop-form-error{display:none;background:rgba(201,64,64,.08);border:1px solid rgba(201,64,64,.3);color:#c94040;padding:12px 14px;border-radius:8px;font-size:14px;line-height:1.4}
.dop-form-error.show{display:block}

.dop-form-submit{
 width:100%;padding:16px 24px;background:var(--gold);color:var(--black);border:none;border-radius:8px;
 font-size:14px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;
 transition:background .15s,transform .15s;font-family:var(--body);min-height:52px;margin-top:6px;
}
.dop-form-submit:hover:not(:disabled){background:var(--hot);transform:translateY(-1px)}
.dop-form-submit:disabled{cursor:wait;opacity:.7}

.dop-form-helper{font-size:14px;color:rgba(27,44,79,.72);line-height:1.5;text-align:center;margin-top:2px}

.dop-form-success{display:none;padding:32px 24px;background:linear-gradient(180deg,rgba(58,140,92,.06) 0%,rgba(58,140,92,.12) 100%);border:1px solid rgba(58,140,92,.3);border-radius:10px;text-align:center;animation:successSlideUp .6s cubic-bezier(.22,1,.36,1)}
.dop-form-success.show{display:flex;flex-direction:column;align-items:center;gap:16px}
.dop-form-success-icon{color:#3a8c5c;width:56px;height:56px;display:flex;align-items:center;justify-content:center;background:rgba(58,140,92,.14);border-radius:50%;border:2px solid rgba(58,140,92,.4)}
.dop-form-success-icon svg{width:32px;height:32px;stroke-dasharray:60;stroke-dashoffset:60;animation:checkmarkDraw .8s .15s cubic-bezier(.22,1,.36,1) forwards}
.dop-form-success-text{font-size:16px;color:var(--black);line-height:1.55;max-width:360px;font-weight:500}
.dop-form-success-text::before{content:'Dziękujemy';display:block;font-family:var(--body);font-size:24px;color:#3a8c5c;font-weight:800;margin-bottom:6px;font-weight:400}
@keyframes checkmarkDraw{to{stroke-dashoffset:0}}
@keyframes successSlideUp{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@media (prefers-reduced-motion:reduce){.dop-form-success{animation:none}.dop-form-success-icon svg{animation:none;stroke-dashoffset:0}}

/* Loading spinner on submit button */
.dop-form-submit[data-loading="1"]{position:relative;color:transparent!important}
.dop-form-submit[data-loading="1"]::after{content:'';position:absolute;left:50%;top:50%;width:18px;height:18px;margin:-9px 0 0 -9px;border:2.5px solid rgba(27,44,79,.3);border-top-color:var(--black);border-radius:50%;animation:cta-spin-form .7s linear infinite}
@keyframes cta-spin-form{to{transform:rotate(360deg)}}

/* Dark variant (newsletter granat tło) */
.dop-form--dark .dop-field-label{color:rgba(217,181,96,.85)}
.dop-form--dark .dop-field input,
.dop-form--dark .dop-field textarea{
 background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.18);color:#fff;
}
.dop-form--dark .dop-field input::placeholder,
.dop-form--dark .dop-field textarea::placeholder{color:rgba(255,255,255,.4)}
.dop-form--dark .dop-field input:focus,
.dop-form--dark .dop-field textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(201,162,74,.25)}
.dop-form--dark .dop-field-helper{color:rgba(255,255,255,.55)}
.dop-form--dark .dop-consent{color:rgba(255,255,255,.75)}
.dop-form--dark .dop-consent a{color:var(--hot)}
.dop-form--dark .dop-form-helper{color:rgba(255,255,255,.55)}
.dop-form--dark .dop-form-success{background:rgba(58,140,92,.15);border-color:rgba(58,140,92,.4)}
.dop-form--dark .dop-form-success-text{color:#fff}
.dop-form--dark .dop-form-error{background:rgba(255,80,80,.12);border-color:rgba(255,80,80,.4);color:#ffb3b3}

@media(max-width:520px){
 .dop-field-row--2,.dop-field-row--2-1{grid-template-columns:1fr;gap:14px}
}

/* ═══ KALENDARZ v2 — karty z rolą. Makieta zatwierdzona 25.08.2026.
   Wszystko pod #page-kalendarz i z prefiksem .dopk-, żeby ani jedna reguła
   nie wyciekła na resztę serwisu. ═══ */
:is(#page-kalendarz,#terminy) .dopk-roles{margin-top:24px}
:is(#page-kalendarz,#terminy) .dopk-roles-in{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;padding:2px 0}
:is(#page-kalendarz,#terminy) .dopk-role-btn{flex:0 0 auto;min-height:44px;padding:0 16px;border-radius:99px;
 border:1px solid #E0DDD8;background:#fff;font-family:inherit;font-size:14px;font-weight:600;
 color:#5C6471;cursor:pointer;display:inline-flex;align-items:center;gap:8px;transition:.15s;line-height:1}
:is(#page-kalendarz,#terminy) .dopk-role-btn:hover{border-color:#C9A24A}
:is(#page-kalendarz,#terminy) .dopk-role-btn[aria-pressed="true"]{background:#1B2C4F;border-color:#1B2C4F;color:#fff}
:is(#page-kalendarz,#terminy) .dopk-role-btn i{font-style:normal;font-size:14px;opacity:.65;font-weight:700}

:is(#page-kalendarz,#terminy) .dopk-block{padding:44px 0 8px;background:transparent;border:0}
:is(#page-kalendarz,#terminy) .dopk-block[hidden]{display:none}
:is(#page-kalendarz,#terminy) .dopk-wrap{max-width:1160px;margin:0 auto;padding:0 20px}

/* Nagłówek terminu: data między dwiema złotymi liniami, adres pod spodem.
   Adres zniknął z kart — powtarzał się przy każdym kursie. */
:is(#page-kalendarz,#terminy) .dopk-block-h{display:flex;align-items:center;gap:13px;justify-content:center}
:is(#page-kalendarz,#terminy) .dopk-block-ic{flex:0 0 auto;width:19px;height:19px;color:#B8902F}
:is(#page-kalendarz,#terminy) .dopk-block-h b{font-family:var(--display);font-size:27px;font-weight:400;
 letter-spacing:-.005em;color:#1B2C4F;line-height:1.15}
:is(#page-kalendarz,#terminy) .dopk-block-ln{flex:1 1 40px;height:1px;min-width:16px;max-width:230px;
 background:linear-gradient(90deg,transparent,rgba(201,162,74,.6))}
:is(#page-kalendarz,#terminy) .dopk-block-ln:last-child{background:linear-gradient(90deg,rgba(201,162,74,.6),transparent)}
:is(#page-kalendarz,#terminy) .dopk-block-gdzie{margin:7px 0 0;font-size:13.5px;color:#5C6471;text-align:center}
:is(#page-kalendarz,#terminy) .dopk-note{margin:15px auto 22px;max-width:70ch;background:#F7F3EA;border-radius:9px;
 padding:11px 18px;font-size:14px;line-height:1.5;color:#1A1A1A;text-align:center}

:is(#page-kalendarz,#terminy) .dopk-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));
 gap:24px;align-items:start;margin:0;padding:0;list-style:none}
/* Karta ma siedem elementów w jednej osi. Rzędy wyrównuje subgrid — wcześniej
   robiły to sztywne min-height, przez co krótszy tytuł zostawiał pusty pas. */
:is(#page-kalendarz,#terminy) .dopk-c{grid-row:span 7;display:grid;grid-template-rows:subgrid;gap:0;
 text-align:center;background:#fff;color:#1A1A1A;border:1px solid #E0DDD8;border-radius:12px;overflow:hidden;
 box-shadow:0 1px 3px rgba(27,44,79,.05),0 10px 26px -18px rgba(27,44,79,.35);
 transition:transform .18s,box-shadow .18s;margin:0}
:is(#page-kalendarz,#terminy) .dopk-c[hidden]{display:none}
:is(#page-kalendarz,#terminy) .dopk-c:hover{transform:translateY(-2px);box-shadow:0 10px 28px -14px rgba(27,44,79,.38)}
@supports not (grid-template-rows:subgrid){
 :is(#page-kalendarz,#terminy) .dopk-c{display:flex;flex-direction:column}
 :is(#page-kalendarz,#terminy) .dopk-c h3{min-height:calc(1.28em * 2)}
 :is(#page-kalendarz,#terminy) .dopk-out{min-height:calc(1.5em * 3)}
 :is(#page-kalendarz,#terminy) .dopk-rola{min-height:52px}
 :is(#page-kalendarz,#terminy) .dopk-f{margin-top:auto}
}
/* 1. Dla kogo — w miejscu dawnej etykiety „Szkolenie stacjonarne”. */
:is(#page-kalendarz,#terminy) .dopk-rola{padding:15px 18px 13px;display:flex;justify-content:center}
:is(#page-kalendarz,#terminy) .dopk-rola span{display:inline-flex;align-items:center;gap:7px;padding:5px 12px 6px;
 border-radius:99px;background:rgba(201,162,74,.15);color:#1B2C4F;font-size:12.5px;font-weight:700;line-height:1.3}
:is(#page-kalendarz,#terminy) .dopk-rola svg{flex:0 0 auto;width:15px;height:15px;color:#B8902F}
/* 2. Zdjęcie — bez nakładek. */
:is(#page-kalendarz,#terminy) .dopk-img{margin:0;aspect-ratio:16/10;background:#1B2C4F center/cover no-repeat}
/* 3–4. Tytuł i zdanie o efekcie. */
:is(#page-kalendarz,#terminy) .dopk-c h3{margin:0;padding:2px 16px 0;font-size:18px;line-height:1.28;
 font-weight:700;letter-spacing:-.012em;color:#1B2C4F;text-transform:none;text-wrap:balance}
:is(#page-kalendarz,#terminy) .dopk-out{margin:0 auto;padding:8px 18px 0;font-size:14px;line-height:1.5;
 color:#5C6471;max-width:34ch;text-wrap:pretty}
/* 5. Termin — jeden blok zamiast trzech wierszy z ikonami. */
:is(#page-kalendarz,#terminy) .dopk-when{padding:14px 18px 0}
:is(#page-kalendarz,#terminy) .dopk-when b{display:block;font-size:16px;font-weight:800;color:#1A1A1A;
 letter-spacing:-.01em;font-variant-numeric:tabular-nums}
:is(#page-kalendarz,#terminy) .dopk-when span{display:block;margin-top:2px;font-size:13.5px;color:#5C6471;
 font-variant-numeric:tabular-nums}
/* 6. Bonus — bez ramki i bez wymuszonej wysokości. */
:is(#page-kalendarz,#terminy) .dopk-bonus{margin:0;padding:10px 18px 0;font-size:13.5px;line-height:1.45;
 color:#5C6471;text-wrap:balance}
:is(#page-kalendarz,#terminy) .dopk-bonus::before{content:"Bonus";margin-right:7px;font-size:11px;font-weight:800;
 letter-spacing:.1em;text-transform:uppercase;color:#1B2C4F}
:is(#page-kalendarz,#terminy) .dopk-bonus:empty{display:none}
/* 7. Jedna decyzja: zapis. Program kursu jako link tekstowy. */
:is(#page-kalendarz,#terminy) .dopk-f{padding:16px 18px 18px;display:flex;flex-direction:column;
 align-items:stretch;gap:2px}
:is(#page-kalendarz,#terminy) .dopk-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;
 min-height:48px;border-radius:9px;font-family:inherit;font-size:15px;font-weight:800;letter-spacing:.02em;
 cursor:pointer;border:none;background:#C9A24A;color:#1B2C4F;text-decoration:none;transition:background .18s}
:is(#page-kalendarz,#terminy) .dopk-btn:hover{background:#B8902F;color:#1B2C4F;text-decoration:none}
:is(#page-kalendarz,#terminy) .dopk-btn-zapis{background:var(--gold);color:#1B2C4F;border:1px solid var(--gold)}
:is(#page-kalendarz,#terminy) .dopk-btn-zapis:hover{background:#B8902F;border-color:#B8902F}
/* Edycja, na którą nie przyjmujemy już zgłoszeń. Wygląda jak przycisk, żeby karta
   nie straciła rytmu, ale nie jest klikalna i nie udaje, że coś się stanie —
   dlatego <span>, kursor domyślny i kontrast schodzący do szarości. */
:is(#page-kalendarz,#terminy) .dopk-btn-zamkniete{background:rgba(27,44,79,.06);color:#5C6471;
 border:1px solid rgba(27,44,79,.12);cursor:default;font-weight:700}
:is(#page-kalendarz,#terminy) .dopk-btn-zamkniete:hover{background:rgba(27,44,79,.06);color:#5C6471}
:is(#page-kalendarz,#terminy) .dopk-link{display:flex;align-items:center;justify-content:center;min-height:44px;
 font-size:14px;font-weight:600;color:#1B2C4F;text-decoration:none;background:none;border:0}
:is(#page-kalendarz,#terminy) .dopk-link:hover{color:#B8902F;text-decoration:underline}
:is(#page-kalendarz,#terminy) .dopk-btn:focus-visible,
:is(#page-kalendarz,#terminy) .dopk-link:focus-visible,
:is(#page-kalendarz,#terminy) .dopk-role-btn:focus-visible{outline:2px solid #B8902F;outline-offset:2px}

:is(#page-kalendarz,#terminy) .dopk-online{background:#1B2C4F;color:#fff;padding:52px 0;margin-top:52px;border:0}
:is(#page-kalendarz,#terminy) .dopk-online > .dopk-wrap{text-align:center}
:is(#page-kalendarz,#terminy) .dopk-online > .dopk-wrap > .dopk-lab{font-size:13px;font-weight:700;
 letter-spacing:.16em;text-transform:uppercase;color:#C9A24A}
:is(#page-kalendarz,#terminy) .dopk-online > .dopk-wrap > h2{font-family:var(--display);
 font-size:clamp(26px,3.6vw,34px);margin:10px 0 8px;font-weight:400;color:#fff;text-align:center}
:is(#page-kalendarz,#terminy) .dopk-online > .dopk-wrap > p{color:rgba(255,255,255,.75);font-size:16px;
 line-height:1.6;margin:0 auto 26px;max-width:60ch}
:is(#page-kalendarz,#terminy) .dopk-online .dopk-grid{margin-top:4px;text-align:initial}
:is(#page-kalendarz,#terminy) .dopk-pusto{display:none;text-align:center;color:#5C6471;font-size:16px;padding:26px 0 8px}
:is(#page-kalendarz,#terminy) .dopk-pusto.jest{display:block}
@media(max-width:640px){
 :is(#page-kalendarz,#terminy) .dopk-block{padding:32px 0 4px}
 :is(#page-kalendarz,#terminy) .dopk-grid{grid-template-columns:1fr;gap:18px}
 :is(#page-kalendarz,#terminy) .dopk-c{grid-row:auto;display:flex;flex-direction:column}
 :is(#page-kalendarz,#terminy) .dopk-img{aspect-ratio:16/9}
 :is(#page-kalendarz,#terminy) .dopk-block-ln{display:none}
 :is(#page-kalendarz,#terminy) .dopk-block-h{gap:10px}
 :is(#page-kalendarz,#terminy) .dopk-block-h b{font-size:23px}
 :is(#page-kalendarz,#terminy) .dopk-note{padding:11px 15px}
 :is(#page-kalendarz,#terminy) .dopk-roles-in{flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;
  -webkit-overflow-scrolling:touch;padding-bottom:6px}
}


/* page reset (override) */
.page.active{position:relative}

/* Wzmocnij muted text contrast — bezpieczne, jedna reguła nie atrybutowa */
:root{--muted:#4F4E4A}
.fc-link{display:block;font-size:16px;color:rgba(255,255,255,.55);margin-bottom:9px;cursor:pointer;text-decoration:none;font-family:var(--body);padding:0;transition:color .15s}
.fc-link:hover{color:var(--gold)}
.fc-link.gold{color:var(--gold);font-weight:700}

/* === STICKY CTA - widoczny po przewinięciu hero === */


/* DOP-ZGODA: zaślepki wideo — nic nie leci do Google przed kliknięciem */
.dop-yt{position:absolute;inset:0;width:100%;height:100%;border:0;cursor:pointer;
  background:#1B2C4F center/cover no-repeat;display:flex;align-items:center;
  justify-content:center;flex-direction:column;gap:10px;padding:18px;text-align:center}
.dop-yt:focus-visible{outline:3px solid #C9A24A;outline-offset:2px}
.dop-yt-play{width:62px;height:62px;border-radius:50%;background:rgba(255,255,255,.94);
  display:flex;align-items:center;justify-content:center;flex-shrink:0;
  box-shadow:0 6px 24px rgba(0,0,0,.35);transition:transform .15s}
.dop-yt:hover .dop-yt-play{transform:scale(1.08)}
.dop-yt-play::after{content:'';border-left:19px solid #1B2C4F;border-top:12px solid transparent;
  border-bottom:12px solid transparent;margin-left:5px}
.dop-yt-note{font:500 12px/1.45 -apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;
  color:rgba(255,255,255,.82);max-width:280px}
.dop-yt-panel{position:absolute;inset:0;background:rgba(27,44,79,.97);color:#fff;display:flex;
  flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:22px;
  text-align:center;z-index:2}
.dop-yt-panel p{margin:0;font:400 13.5px/1.55 -apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;
  max-width:330px;color:rgba(255,255,255,.9)}
.dop-yt-panel .dop-yt-btns{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}
.dop-yt-panel button{font:700 13px/1 -apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;
  padding:11px 16px;border-radius:5px;border:0;cursor:pointer}
.dop-yt-once{background:#C9A24A;color:#1B2C4F}
.dop-yt-always{background:rgba(255,255,255,.16);color:#fff;border:1px solid rgba(255,255,255,.35)!important}
.dop-yt-panel a{color:#C9A24A;font-size:14px}
/* [30.09.2026] Audyt doradczy ma reset "#adwrap *{margin:0;padding:0}" o specyficzności id —
   zerował odstępy kafelka i panelu zgody: przyciski miały 15 px wysokości zamiast 37 px.
   Stąd drugi selektor z prefiksem #adwrap przy każdej regule odstępów. */
#adwrap .dop-yt{padding:18px}
#adwrap .dop-yt-panel{padding:22px}
#adwrap .dop-yt-panel button{padding:11px 16px}
/* Na telefonie kafelek ma ok. 300×170 px i panel z pełnymi odstępami się nie mieścił
   (obcięty tekst i link — zmierzone przy 360 i 390 px). Ciaśniej, bez zmniejszania tekstu;
   gdyby i to nie starczyło, panel się przewija zamiast obcinać. */
.dop-yt-panel{overflow:auto;justify-content:safe center}
@media(max-width:560px){
 .dop-yt-panel,#adwrap .dop-yt-panel{padding:10px 12px;gap:6px}
 .dop-yt-panel p{line-height:1.35}
 .dop-yt-panel .dop-yt-btns{gap:6px}
 .dop-yt-panel button,#adwrap .dop-yt-panel button{padding:7px 11px}
 .dop-yt-panel a{font-size:13px}
}
/* 360 px (typowy Android): kafelek 304×171 — mieści się co do piksela, przyciski 25–27 px. */
@media(max-width:400px){
 .dop-yt-panel,#adwrap .dop-yt-panel{padding:6px 10px;gap:5px}
 .dop-yt-panel p{line-height:1.3}
 .dop-yt-panel .dop-yt-btns{gap:5px}
 .dop-yt-panel button,#adwrap .dop-yt-panel button{padding:6px 10px}
}

/* WZORZEC-KURSOW-CSS */

/* ══════════════════════════════════════════════════════════════════
   WZORZEC STRONY KURSU DOP — v1
   Wypełniony treścią: Kurs Skutecznego Zarządzania Praktyką
   Paleta i typografia zgodne z brandbookiem DOP i z żywą stroną.
   Wszystko, co zmienia się między kursami, jest oznaczone [ZMIENNE].
   ══════════════════════════════════════════════════════════════════ */

.wz{
  --navy:#1B2C4F; --navy-deep:#0F1B30; --navy-soft:#2D4070;
  --gold:#C9A24A; --gold-lt:#D9B560; --gold-ink:#806515;
  --cream:#F7F4EC; --cream2:#F1ECE0; --white:#fff;
  --ink:#1A1A1A; --muted:#5B6675;
  --serif:'Instrument Serif',Georgia,serif;   /* WYŁĄCZNIE nagłówki i liczby ≥28px */
  --quote:'Lora',Georgia,'Times New Roman',serif; /* każdy serif <28px: cytaty, lead, podpisy */
  --body:'Figtree',system-ui,-apple-system,sans-serif;
  --max:1140px;
  --r:12px;
  /* SKALA TYPOGRAFICZNA — dziewięć stopni, nic pomiędzy.
     16px to podłoga dla tekstu ciągłego, także na telefonie. */
  --t-xs:12px;    /* wyłącznie drobny druk: źródła, podpisy */
  --t-sm:14px;    /* metadane: role, warunki płatności */
  --t-base:16px;  /* tekst — minimum wszędzie */
  --t-lg:18px;    /* lead, cytaty */
  --t-xl:20px;    /* podtytuły */
  --t-2xl:28px;   /* nagłówek sekcji mobile = dolny próg Instrument Serif */
  --t-3xl:36px; --t-4xl:48px; --t-5xl:68px;
}

.wz *,.wz *::before,.wz *::after{box-sizing:border-box;margin:0;padding:0}

.wz{scroll-behavior:smooth}
@media(prefers-reduced-motion:reduce){
.wz{scroll-behavior:auto}}

.wz{font-family:var(--body);color:var(--ink);background:var(--cream);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}

.wz img{max-width:100%;height:auto;display:block}

.wz a{color:inherit}

.wz :focus-visible{outline:3px solid var(--gold);outline-offset:3px;border-radius:3px}

.wz .sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* ── siatka ── */

.wz .wrap{max-width:var(--max);margin:0 auto;padding:0 22px}

.wz .wrap-wide{max-width:1360px;margin:0 auto;padding:0 22px}   /* blok wideo wychodzi poza kolumnę tekstu */

.wz section{padding:64px 0}
@media(min-width:900px){
.wz section{padding:92px 0}
.wz .wrap,.wz .wrap-wide{padding:0 28px}}

.wz section[id]{scroll-margin-top:78px}   /* żeby skok do kotwicy nie chował nagłówka pod paskiem CTA */

.wz .dark{background:var(--navy);color:#fff}

.wz .dark-deep{background:linear-gradient(180deg,var(--navy-deep),var(--navy));color:#fff}

.wz .light{background:var(--cream)}

.wz .light2{background:var(--cream2)}

/* ── typografia ── */

.wz .eyebrow{font-size:var(--t-xs);font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-ink);margin-bottom:14px}

.wz .dark .eyebrow,.wz .dark-deep .eyebrow{color:var(--gold-lt)}

.wz h1,.wz h2,.wz h3{font-weight:400;line-height:1.06;font-family:var(--serif);color:var(--navy)}

.wz .dark h2,.wz .dark-deep h2,.wz .dark h3,.wz .dark-deep h3{color:#fff}

.wz h1{font-size:clamp(38px,7vw,68px);letter-spacing:-.015em}

.wz h2{font-size:clamp(30px,4.6vw,48px);margin-bottom:16px}

.wz h3{font-family:var(--body);font-weight:700;font-size:18px;line-height:1.3;color:var(--navy)}

.wz em.g{color:var(--gold-ink);font-style:italic}

.wz .dark em.g,.wz .dark-deep em.g{color:var(--gold-lt)}

.wz .lead{font-family:var(--quote);font-size:var(--t-lg);color:var(--muted);line-height:1.62;max-width:62ch}

.wz .dark .lead,.wz .dark-deep .lead{color:rgba(255,255,255,.82)}

.wz p{font-size:16px}
@media(min-width:900px){
.wz p{font-size:17px}}

/* ── przyciski ── */

.wz .btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:15px 28px;font-family:var(--body);font-weight:800;font-size:16px;letter-spacing:.03em;text-transform:uppercase;border:none;border-radius:9px;cursor:pointer;text-decoration:none;transition:transform .15s,background .15s,box-shadow .15s}

.wz .btn-gold{background:var(--gold);color:#231A05}

.wz .btn-gold:hover{background:var(--gold-lt);transform:translateY(-2px);box-shadow:0 12px 28px -10px rgba(201,162,74,.65)}

.wz .btn-ghost{background:transparent;border:1.5px solid rgba(255,255,255,.34);color:#fff;text-transform:none;font-weight:600;letter-spacing:0}

.wz .btn-ghost:hover{border-color:var(--gold-lt);color:var(--gold-lt)}

.wz .link-u{color:rgba(255,255,255,.78);text-decoration:underline;text-underline-offset:4px;font-size:16px;font-weight:600;display:inline-flex;align-items:center;min-height:44px}

.wz .link-u:hover{color:var(--gold-lt)}
@media(prefers-reduced-motion:reduce){
.wz .btn:hover{transform:none}}

/* ── karty ── */

.wz .card{background:var(--white);border:1px solid rgba(27,44,79,.09);border-radius:var(--r);box-shadow:0 2px 12px rgba(27,44,79,.05)}

.wz .card-dark{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);border-radius:var(--r)}

.wz .grid{display:grid;gap:16px}
@media(min-width:700px){
.wz .g2{grid-template-columns:1fr 1fr}}
@media(min-width:900px){
.wz .g3{grid-template-columns:repeat(3,1fr)}
.wz .g4{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1060px){
.wz .g4{grid-template-columns:repeat(4,1fr)}}

/* ── wejścia sekcji ── */

.wz .rv{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s ease}

.wz .rv.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){
.wz .rv{opacity:1;transform:none;transition:none}}

.wz .no-js .rv{opacity:1;transform:none}


/* ═══ PASKI TRWAŁE (chrome) ═══ */

.wz-topbar{position:fixed;top:0;left:0;right:0;z-index:80;background:rgba(15,27,48,.97);backdrop-filter:blur(10px);border-bottom:1px solid rgba(201,162,74,.28);transform:translateY(-100%);transition:transform .3s ease}

.wz-topbar.on{transform:none}

.wz-topbar .in{max-width:var(--max);margin:0 auto;padding:10px 22px;display:flex;align-items:center;gap:16px}

.wz-topbar .nm{color:#fff;font-weight:700;font-size:14px;line-height:1.25}

.wz-topbar .dt{color:rgba(255,255,255,.62);font-size:14px}

.wz-topbar .pr{margin-left:auto;color:var(--gold-lt);font-weight:800;font-size:16px;white-space:nowrap}

.wz-topbar .btn{min-height:44px;padding:11px 18px;font-size:14px}
@media(max-width:899px){
.wz-topbar{display:none}}


.wz-botbar{position:fixed;bottom:0;left:0;right:0;z-index:80;background:rgba(15,27,48,.97);backdrop-filter:blur(10px);border-top:1px solid rgba(201,162,74,.28);padding:10px 14px calc(10px + env(safe-area-inset-bottom));display:flex;align-items:center;gap:12px;transform:translateY(120%);transition:transform .3s ease}

.wz-botbar.on{transform:none}

.wz-botbar .pr{color:#fff;font-weight:800;font-size:17px;line-height:1.15}

.wz-botbar .dt{color:rgba(255,255,255,.68);font-size:14px}

.wz-botbar .btn{margin-left:auto;min-height:48px;padding:12px 20px;font-size:14px}
@media(min-width:900px){
.wz-botbar{display:none}}
@media(max-width:899px){
.wz{padding-bottom:76px}}

/* ═══ 1. HERO ═══ */

.wz .hero{background:linear-gradient(165deg,var(--navy) 0%,var(--navy-deep) 100%);color:#fff;position:relative;overflow:hidden;padding:44px 0 56px}
@media(min-width:900px){
.wz .hero{padding:78px 0 88px}}

.wz .hero::after{content:"";position:absolute;right:-140px;top:-160px;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(201,162,74,.11),transparent 68%);pointer-events:none}

.wz .hero-grid{display:grid;gap:36px;position:relative;z-index:1}
@media(min-width:960px){
.wz .hero-grid{grid-template-columns:1.08fr .92fr;gap:56px;align-items:center}}

.wz .kicker{display:flex;align-items:center;gap:12px;font-size:var(--t-xs);font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-lt);margin-bottom:24px}

.wz .kicker span.l{width:32px;height:1px;background:rgba(217,181,96,.6);flex:none}

.wz .hero h1{color:#fff;max-width:17ch;margin-bottom:22px}

.wz .hero .lead{margin-bottom:26px;max-width:52ch;color:rgba(255,255,255,.84);font-style:normal}  /* kursywa TYLKO w hero */

.wz .hero-cta{display:flex;flex-wrap:wrap;align-items:center;gap:18px}

/* 06.10.2026 (dane kampanii Doskonałej Konsultacji 1–5.10, prośba agencji przez Michała): przycisk zapisu
   wraca do hero 6 kursów kalendarza — TYLKO na komputerze. Na telefonie zapis daje dolny pasek #sticky-cta
   (pokazuje się po pierwszym przewinięciu), a pierwszy ekran ma zmieścić dowody (14 lat · 6000+ · 200+),
   więc na telefonie chowamy też okruszki nad hero i zmniejszamy górny odstęp hero. */
@media(max-width:880px){
.hero-zapis{display:none!important}
.kurs-okruszki{display:none!important}
.wz .hero{padding-top:24px}
.kz3 .hero{padding-top:32px}}

.wz .microproof{margin-top:26px;padding-top:20px;border-top:1px solid rgba(255,255,255,.13);display:flex;flex-wrap:wrap;gap:8px 26px;font-size:14px;color:rgba(255,255,255,.66)}

.wz .microproof b{color:#fff;font-weight:700}

.wz .shot{position:relative;border-radius:14px;overflow:hidden;box-shadow:0 24px 60px -20px rgba(0,0,0,.55)}

.wz .shot img{width:100%;height:100%;object-fit:cover}

.wz .chip{position:absolute;top:14px;left:14px;background:var(--gold);color:#231A05;font-size:var(--t-xs);font-weight:700;letter-spacing:.09em;text-transform:uppercase;padding:6px 11px;border-radius:4px}

/* ═══ 2. PASEK FAKTÓW ═══ */

.wz .facts{background:var(--cream2);border-top:1px solid rgba(27,44,79,.07);border-bottom:1px solid rgba(27,44,79,.07);padding:0}

.wz .facts-grid{display:grid;gap:1px;background:rgba(27,44,79,.08)}
@media(min-width:620px){
.wz .facts-grid{grid-template-columns:1fr 1fr}}
@media(min-width:1000px){
.wz .facts-grid{grid-template-columns:repeat(3,1fr)}}

.wz .fact{background:var(--cream2);padding:24px 26px}

.wz .fact dt{font-size:14px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-ink);margin-bottom:8px}

.wz .fact dd{font-size:var(--t-lg);line-height:1.4;color:var(--navy);font-weight:600}

.wz .fact dd small{display:block;font-weight:400;color:var(--muted);font-size:var(--t-base);line-height:1.5;margin-top:6px}

/* ═══ 3. PROBLEM + KOSZT ═══ */

.wz .agit{max-width:66ch;font-size:17px;line-height:1.75;color:rgba(255,255,255,.84)}

.wz .agit b{color:#fff;font-weight:600}

.wz .agit .last{color:#fff;font-weight:500;font-size:18px;line-height:1.6;margin-top:18px;display:block;font-family:var(--quote);font-style:normal}

.wz .sym{padding:24px 22px;border-top:2px solid rgba(201,162,74,.45);background:rgba(255,255,255,.04)}

.wz .sym .n{font-family:var(--serif);font-size:30px;color:var(--gold-lt);line-height:1;margin-bottom:12px;display:block}

.wz .sym h3{color:#fff;margin-bottom:8px}

.wz .sym p{font-size:var(--t-base);color:rgba(255,255,255,.74);line-height:1.6}

.wz .anchor-box{border:1px solid rgba(201,162,74,.32);border-radius:var(--r);padding:26px 24px;background:rgba(201,162,74,.07)}

.wz .big-n{font-family:var(--serif);font-size:clamp(52px,10vw,86px);color:var(--gold-lt);line-height:.95;letter-spacing:-.02em}

.wz .big-n sup{font-size:.32em;vertical-align:super;letter-spacing:.06em;font-family:var(--body);font-weight:700}

.wz .calc{list-style:none;margin-top:6px}

.wz .calc li{display:flex;justify-content:space-between;gap:16px;padding:11px 0;border-bottom:1px solid rgba(255,255,255,.11);font-size:var(--t-base);color:rgba(255,255,255,.8)}

.wz .calc li b{color:#fff;font-weight:700;white-space:nowrap}

.wz .calc li:last-child{border-bottom:none}

.wz .src{font-size:14px;color:rgba(255,255,255,.64);margin-top:14px;line-height:1.55;max-width:58ch}

/* ═══ 4. DOWÓD ═══ */

.wz .quote{padding:26px 24px;display:flex;flex-direction:column;height:100%}

.wz .quote blockquote{font-family:var(--quote);font-style:normal;font-size:17px;line-height:1.62;color:var(--navy);flex:1}

.wz .quote .stars{color:var(--gold-ink);font-size:16px;letter-spacing:2px;line-height:1;margin-bottom:14px;display:block}

.wz .quote .who{display:flex;align-items:center;gap:12px;margin-top:20px;padding-top:18px;border-top:1px solid rgba(27,44,79,.09)}

.wz .mono{width:44px;height:44px;border-radius:50%;flex:none;display:grid;place-items:center;background:rgba(201,162,74,.16);color:var(--gold-ink);font-weight:800;font-size:14px;letter-spacing:.02em}

.wz .who>span:last-child{display:flex;flex-direction:column;gap:2px}

.wz .who .nm{font-weight:700;font-size:16px;color:var(--navy);line-height:1.25}

.wz .who .rl{font-size:16px;color:var(--muted);line-height:1.5}
/* układ i proporcje z .refx-videos na /referencje, ale szerzej:
   blok wideo wychodzi poza kolumnę tekstu, żeby kafle były większe */

.wz .vids{display:grid;gap:20px}
@media(min-width:880px){
.wz .vids{grid-template-columns:1fr 1fr}}

.wz .vid{position:relative;display:block;width:100%;padding:0;border:1px solid rgba(27,44,79,.1);border-radius:14px;overflow:hidden;background:#0A1322;cursor:pointer;aspect-ratio:16/9;font:inherit;text-align:left;box-shadow:0 10px 30px -14px rgba(27,44,79,.3);transition:transform .3s cubic-bezier(.22,1,.36,1),box-shadow .3s}

.wz .vid:hover{transform:translateY(-4px);box-shadow:0 18px 42px -14px rgba(27,44,79,.42)}

.wz .vid img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.94}

.wz .vid .play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:72px;height:72px;border-radius:50%;background:rgba(255,255,255,.95);box-shadow:0 8px 26px rgba(0,0,0,.38);transition:transform .25s,background .25s}

.wz .vid .play::after{content:"";position:absolute;left:50%;top:50%;transform:translate(-40%,-50%);border-style:solid;border-width:14px 0 14px 23px;border-color:transparent transparent transparent var(--navy)}

.wz .vid:hover .play{background:var(--gold);transform:translate(-50%,-50%) scale(1.08)}

.wz .vid .vlab{position:absolute;left:0;right:0;bottom:0;padding:38px 18px 15px;background:linear-gradient(transparent,rgba(10,19,34,.92));color:#fff;font-size:var(--t-base);font-weight:600;line-height:1.45;max-width:60ch}

.wz .vid iframe{position:absolute;inset:0;width:100%;height:100%;border:0}

/* ══ KURS ZARZĄDZANIA — nowy układ (kz3), 16.09.2026: tokeny pisma na .kz3, wszystko w tej przestrzeni ══ */
.kz3{font:var(--f-body);color:var(--ink);background:var(--white)} .kz3 section{border-top:0} .kz3 *{box-sizing:border-box}

.kz3{
 --navy:#1B2C4F;--deep:#0F1B30;--cream:#F5F3EE;--cream2:#EEEBE4;--white:#FFFFFF;
 --gold:#C9A24A;--gold-lt:#D9B560;--gold-ink:#7A5E1F;
 --ink:#1A1A1A;--muted:#4F4E4A;--on-dark:rgba(255,255,255,.86);
 --serif:"Instrument Serif",Georgia,"Times New Roman",serif;--sans:Figtree,"Segoe UI",Helvetica,Arial,sans-serif;--quote:Lora,Georgia,serif;
 --f-eyebrow:700 13px/1.4 var(--sans);--f-h1:400 clamp(38px,5vw,60px)/1.1 var(--serif);--f-h2:400 clamp(30px,3.6vw,44px)/1.18 var(--serif);
 --f-h3:700 20px/1.35 var(--sans);--f-body:400 17px/1.6 var(--sans);--f-meta:400 15px/1.5 var(--sans);--f-btn:700 16px/1.2 var(--sans);--f-num:400 clamp(40px,4.6vw,56px)/1 var(--serif);
 --r:14px;--wrap:1180px;
}
.kz3 img{max-width:100%;display:block}.kz3 a{color:inherit}
.kz3 a:focus,.kz3 button:focus,.kz3 summary:focus{outline:3px solid var(--gold);outline-offset:3px;border-radius:4px}
.kz3 h1,.kz3 h2,.kz3 h3,.kz3 p,.kz3 ul{margin:0}.kz3 ul{padding:0;list-style:none}
.kz3 .wrap{max-width:var(--wrap);margin:0 auto;padding:0 32px}
.kz3 section,.kz3 header.hero{padding:88px 0}
.kz3 .eyebrow{font:var(--f-eyebrow);letter-spacing:.14em;text-transform:uppercase;color:var(--gold-ink);margin-bottom:14px}
.kz3 .dark .eyebrow,.kz3 .hero .eyebrow{color:var(--gold-lt)}
.kz3 h1{font:var(--f-h1);color:var(--white)}.kz3 h2{font:var(--f-h2);color:var(--navy);text-wrap:balance}.kz3 .dark h2{color:var(--white)}
.kz3 h3{font:var(--f-h3);color:var(--navy)}.kz3 .dark h3{color:var(--white)}
.kz3 em.g{font-style:italic;color:var(--gold-lt)}.kz3 .light em.g{color:var(--gold-ink)}
.kz3 .lead{font:var(--f-body);color:var(--muted);max-width:56ch}.kz3 .dark .lead,.kz3 .hero .lead{color:var(--on-dark)}
.kz3 .meta{font:var(--f-meta);color:var(--muted)}.kz3 .dark .meta{color:var(--on-dark)}
.kz3 .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:52px;padding:0 26px;border-radius:8px;background:var(--gold);color:var(--navy);font:var(--f-btn);text-decoration:none;letter-spacing:.02em}
.kz3 .link{display:inline-flex;align-items:center;gap:6px;min-height:44px;font:var(--f-btn);color:var(--gold-ink);text-decoration:underline;text-underline-offset:4px}.kz3 .dark .link{color:var(--gold-lt)}
.kz3 .ic{width:26px;height:26px;color:var(--gold);flex:none}
.kz3 .dark{background:var(--navy);color:var(--white)}.kz3 .light{background:var(--cream)}.kz3 .white{background:var(--white)}
.kz3 .grid{display:grid;gap:18px}


.kz3 .hero{background:linear-gradient(160deg,var(--navy),var(--deep));padding:72px 0 64px}
.kz3 .hero .wrap{display:grid;gap:40px;align-items:center}
.kz3 .hero .lead{margin-top:22px;max-width:48ch}
.kz3 .hero .cta{display:flex;flex-wrap:wrap;gap:12px 24px;align-items:center;margin-top:28px}
.kz3 .hero .stats{display:flex;flex-wrap:wrap;gap:28px;margin-top:36px;padding-top:24px;border-top:1px solid rgba(255,255,255,.14)}
.kz3 .hero .stats b{display:block;font:var(--f-h3);color:var(--white)}.kz3 .hero .stats span{font:var(--f-meta);color:var(--on-dark)}
.kz3 .hero .shot{position:relative}.kz3 .hero .shot img{border-radius:var(--r);aspect-ratio:5/4;object-fit:cover;object-position:60% 40%;width:100%}
.kz3 .hero .shot::after{content:"";position:absolute;left:0;right:0;bottom:0;height:42%;border-radius:0 0 var(--r) var(--r);background:linear-gradient(transparent,rgba(27,44,79,.92));pointer-events:none}
.kz3 .hero .chip{position:absolute;top:18px;right:18px;z-index:2;background:var(--gold);color:var(--navy);font:var(--f-eyebrow);letter-spacing:.06em;padding:10px 14px;border-radius:8px;text-transform:none;font-size:15px}
.kz3 .hero .pill{z-index:3;position:absolute;left:24px;right:24px;bottom:-26px;background:var(--cream);color:var(--navy);border-radius:12px;padding:16px 20px;display:flex;flex-wrap:wrap;gap:10px 22px;box-shadow:0 18px 40px -18px rgba(0,0,0,.5);font:var(--f-meta);font-weight:700}
.kz3 .hero .pill span{display:inline-flex;align-items:center;gap:8px}.kz3 .hero .pill .ic{width:20px;height:20px}

.kz3 .strip{background:var(--cream);padding:56px 0 40px}.kz3 .strip .grid{gap:22px}
.kz3 .strip .it{display:flex;gap:14px;align-items:flex-start}.kz3 .strip b{display:block;font:var(--f-h3);font-size:17px;color:var(--navy)}.kz3 .strip span{font:var(--f-meta);color:var(--muted)}

.kz3 .card{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:var(--r);padding:26px 24px}
.kz3 .light .card,.kz3 .white .card{background:var(--white);border:1px solid rgba(27,44,79,.1);box-shadow:0 2px 14px rgba(27,44,79,.05)}
.kz3 .card .ic{margin-bottom:16px}.kz3 .card h3{margin-bottom:8px}.kz3 .card p{font:var(--f-meta);color:var(--muted)}.kz3 .dark .card p{color:var(--on-dark)}

.kz3 .problem .head{display:grid;gap:24px;align-items:start;margin-bottom:38px}
.kz3 .problem .aside{border-left:2px solid var(--gold);padding-left:22px;font:var(--f-body);color:var(--on-dark);max-width:44ch}

.kz3 .koszt .wrap{display:grid;gap:36px;align-items:center}
.kz3 .num{font:var(--f-num);color:var(--navy)}.kz3 .koszt .num{margin-bottom:12px}
.kz3 .tile{background:var(--white);border:1px solid rgba(27,44,79,.1);border-radius:var(--r);padding:22px 20px;text-align:center}
.kz3 .tile .ic{margin:0 auto 12px}.kz3 .tile b{display:block;font:var(--f-h3);font-size:22px;color:var(--navy);white-space:nowrap}.kz3 .tile span{font:var(--f-meta);color:var(--muted)}

.kz3 .opinie .wrap{display:grid;gap:28px;align-items:start}
.kz3 .vfull{position:relative;display:block;border-radius:var(--r);overflow:hidden;background:var(--deep);aspect-ratio:16/10;border:0;padding:0;cursor:pointer;width:100%}
.kz3 .vfull img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.92}
.kz3 .vfull .play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:78px;height:78px;border-radius:50%;background:var(--gold);box-shadow:0 10px 30px rgba(0,0,0,.4)}
.kz3 .vfull .play::after{content:"";position:absolute;left:50%;top:50%;transform:translate(-38%,-50%);border-style:solid;border-width:14px 0 14px 24px;border-color:transparent transparent transparent var(--navy)}
.kz3 .vfull .lab{position:absolute;left:0;right:0;bottom:0;padding:60px 24px 20px;background:linear-gradient(transparent,rgba(15,27,48,.94));color:var(--white);text-align:left}
.kz3 .vfull .lab b{display:block;font:var(--f-h3);color:var(--white)}.kz3 .vfull .lab span{font:var(--f-meta);color:var(--on-dark)}
.kz3 .vids{display:grid;gap:16px;margin-top:16px}
.kz3 .vid{position:relative;display:block;border-radius:12px;overflow:hidden;background:var(--deep);aspect-ratio:16/9;border:0;padding:0;cursor:pointer;width:100%}
.kz3 .vid img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.9}
.kz3 .vid .play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:56px;height:56px;border-radius:50%;background:var(--gold);box-shadow:0 8px 24px rgba(0,0,0,.4)}
.kz3 .vid .play::after{content:"";position:absolute;left:50%;top:50%;transform:translate(-38%,-50%);border-style:solid;border-width:10px 0 10px 17px;border-color:transparent transparent transparent var(--navy)}
.kz3 .vfull iframe,.kz3 .vid iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.kz3 .vid .lab{position:absolute;left:0;right:0;bottom:0;padding:40px 16px 14px;background:linear-gradient(transparent,rgba(15,27,48,.94));color:var(--white);font:var(--f-meta);font-weight:700;text-align:left}
.kz3 .zobacz .lead{margin-top:16px}.kz3 .zobacz .vfull{margin-top:34px;aspect-ratio:16/9}
.kz3 .po{margin-top:44px;padding-top:36px;border-top:1px solid rgba(27,44,79,.12)}.kz3 .po ul{display:grid;gap:10px 28px;margin:16px 0 18px}.kz3 .po li{display:flex;gap:10px;align-items:flex-start;font:var(--f-body)}.kz3 .po .ic{width:22px;height:22px;margin-top:3px}
.kz3 .po .wynik{font:italic 400 20px/1.5 var(--quote);color:var(--navy);max-width:60ch}
.kz3 .mapa{margin-top:22px}.kz3 .mapa .kol{display:grid;gap:18px}.kz3 .mapa .kol>div{display:grid;grid-template-rows:subgrid;grid-row:span 4}
.kz3 .mapa .hd{background:var(--navy);color:var(--white);text-align:center;font:var(--f-eyebrow);letter-spacing:.14em;text-transform:uppercase;padding:13px 12px;border-radius:6px 6px 0 0;display:flex;align-items:center;justify-content:center}
.kz3 .mapa .box{background:var(--white);border:1px solid rgba(27,44,79,.18);border-top:0;padding:13px 14px;text-align:center;font:var(--f-meta);font-weight:700;color:var(--navy);display:flex;flex-direction:column;justify-content:center}
.kz3 .mapa .box .k{display:block;font:var(--f-meta);color:var(--muted);margin-top:4px}.kz3 .mapa .box:last-child{border-radius:0 0 6px 6px}
.kz3 .mapa .fund{margin-top:30px;text-align:center}.kz3 .mapa .fund .eyebrow{justify-content:center}.kz3 .mapa .fund .row{display:grid;gap:18px;margin-top:12px}
.kz3 .mapa .fund .row div{background:var(--navy);color:var(--white);padding:14px;border-radius:6px;font:var(--f-meta);font-weight:700;text-align:center}.kz3 .mapa .fund .row small{display:block;font:var(--f-meta);font-weight:400;color:var(--on-dark);margin-top:4px}
.kz3 .op{display:grid;grid-template-columns:76px 1fr;gap:18px;background:var(--white);border:1px solid rgba(27,44,79,.1);border-radius:var(--r);padding:22px}
.kz3 .op img{width:76px;height:76px;border-radius:12px;object-fit:cover}
.kz3 .op a,.kz3 .opinie .link{min-height:44px}.kz3 .op blockquote{margin:0 0 10px;font:italic 400 17px/1.55 var(--quote);color:var(--navy)}.kz3 .op b{display:block;font:var(--f-meta);font-weight:700;color:var(--navy)}.kz3 .op span{font:var(--f-meta);color:var(--muted)}

.kz3 .program .wrap{display:grid;gap:32px;align-items:start}
.kz3 .day{background:var(--cream);border-radius:var(--r);padding:24px 24px 20px}
.kz3 .day h3{margin-bottom:4px}.kz3 .day .meta{margin-bottom:14px}
.kz3 .day ol{margin:0;padding:0;list-style:none;display:grid;gap:10px}.kz3 .day li{display:flex;gap:12px;align-items:flex-start;font:var(--f-body)}
.kz3 .day li i{font-style:normal;flex:none;width:26px;height:26px;border-radius:50%;background:var(--navy);color:var(--white);font:var(--f-meta);font-weight:700;display:inline-flex;align-items:center;justify-content:center}
.kz3 .program .shot img{border-radius:var(--r);aspect-ratio:4/5;object-fit:cover}
.kz3 details.fold summary{list-style:none;cursor:pointer}.kz3 details.fold summary::-webkit-details-marker{display:none}
.kz3 details.fold .inner{margin-top:18px;display:grid;gap:14px}.kz3 details.fold .inner .blk h4{font:var(--f-h3);font-size:17px;color:var(--navy);margin:0 0 4px}.kz3 details.fold .inner .blk p{font:var(--f-meta);color:var(--muted);margin:0}

.kz3 .jak .wrap{display:grid;gap:36px;align-items:center}
.kz3 .steps{display:grid;gap:22px}.kz3 .step{display:flex;gap:16px}.kz3 .step i{font-style:normal;flex:none;width:36px;height:36px;border-radius:50%;background:var(--gold);color:var(--navy);font:var(--f-btn);display:inline-flex;align-items:center;justify-content:center}
.kz3 .step b{display:block;font:var(--f-h3);font-size:17px;color:var(--navy)}.kz3 .step span{font:var(--f-meta);color:var(--muted)}

.kz3 .trener .wrap{display:grid;gap:36px;align-items:center}.kz3 .trener .ph img{border-radius:var(--r);aspect-ratio:4/5;object-fit:cover}
.kz3 .trener .stats{display:grid;grid-template-columns:1fr 1fr;gap:14px}.kz3 .trener .stats .tile{text-align:left}.kz3 .trener .stats b{font:var(--f-num);font-size:34px}

.kz3 .inw .wrap{display:grid;gap:36px;align-items:center}
.kz3 .pricebox{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:var(--r);padding:30px 28px}
.kz3 .pricebox .price{font:var(--f-num);color:var(--white)}.kz3 .pricebox .price small{font:var(--f-h3);color:var(--gold-lt)}
.kz3 .pricebox .when{display:flex;flex-wrap:wrap;gap:8px 20px;margin:14px 0 18px}.kz3 .pricebox .when span{display:inline-flex;align-items:center;gap:8px;font:var(--f-meta);color:var(--on-dark)}.kz3 .pricebox .when .ic{width:18px;height:18px}
.kz3 .pricebox ul{display:grid;grid-template-columns:1fr 1fr;gap:10px 18px;margin-bottom:22px}.kz3 .pricebox li{display:flex;gap:8px;font:var(--f-meta);color:var(--on-dark)}.kz3 .pricebox li .ic{width:18px;height:18px}
.kz3 .pricebox .btn{width:100%}.kz3 .pricebox .micro{margin-top:12px;font:var(--f-meta);color:var(--on-dark);text-align:center}
/* telefon w polu ceny (kz3) — strony kursow, 30.09.2026 */
.kz3 .pricebox .tel2{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;min-height:48px;margin-top:14px;color:#fff;font-weight:600;font-size:15px;text-decoration:none;border:1.5px solid rgba(255,255,255,.28);border-radius:9px;padding:10px 16px;text-align:center;line-height:1.35}.kz3 .pricebox .tel2:hover{border-color:var(--gold-lt);color:var(--gold-lt)}

.kz3 .gwar{background:var(--cream);padding:34px 0}.kz3 .gwar .wrap{display:flex;flex-wrap:wrap;gap:18px 28px;align-items:center}
.kz3 .gwar .ic{width:44px;height:44px}.kz3 .gwar b{display:block;font:var(--f-h3);color:var(--navy)}.kz3 .gwar span{font:var(--f-meta);color:var(--muted)}.kz3 .gwar .link{margin-left:auto}

.kz3 .dk .grid{gap:32px}.kz3 .dk h3{font:var(--f-h2);font-size:28px;font-weight:400;margin-bottom:16px}
.kz3 .dk li{display:flex;gap:10px;align-items:flex-start;font:var(--f-body);padding:6px 0}.kz3 .dk .ic{width:22px;height:22px;margin-top:3px}.kz3 .dk .no .ic{color:#9A6B6B}

.kz3 .faqs .wrap{display:grid;gap:32px;align-items:start}
.kz3 details.faq{border-bottom:1px solid rgba(27,44,79,.12)}.kz3 details.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:16px;align-items:center;padding:16px 0;font:var(--f-h3);font-size:17px;color:var(--navy);min-height:44px}.kz3 details.faq summary::-webkit-details-marker{display:none}
.kz3 details.faq .pm{color:var(--gold-ink);font:var(--f-h3)}.kz3 details.faq[open] .pm{transform:rotate(45deg)}.kz3 details.faq .a{padding:0 0 18px;font:var(--f-body);color:var(--muted);max-width:52ch}

.kz3 .final{position:relative;background:var(--deep);color:var(--white);overflow:hidden}.kz3 .final img.bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.22}
.kz3 .final .wrap{position:relative;display:grid;gap:32px;align-items:center}
.kz3 .final .box{background:rgba(15,27,48,.72);border:1px solid rgba(255,255,255,.14);border-radius:var(--r);padding:26px}
.kz3 .final .box .when{display:flex;flex-wrap:wrap;gap:8px 18px;margin-bottom:18px}.kz3 .final .box .when span{display:inline-flex;align-items:center;gap:8px;font:var(--f-meta);color:var(--on-dark)}.kz3 .final .box .when .ic{width:18px;height:18px}
.kz3 .final .btn{width:100%}.kz3 .final .tel{margin-top:14px;text-align:center;font:var(--f-meta);color:var(--on-dark)}


@media(min-width:900px){
.kz3 .hero .wrap{grid-template-columns:1.05fr .95fr}.kz3 .strip .grid{grid-template-columns:repeat(4,1fr)}
.kz3 .problem .head{grid-template-columns:1.2fr .8fr}.kz3 .problem .grid{grid-template-columns:repeat(4,1fr)}
.kz3 .koszt .wrap{grid-template-columns:1fr 1.1fr}.kz3 .koszt .grid{grid-template-columns:repeat(3,1fr)}
.kz3 .efekty .grid{grid-template-columns:repeat(5,1fr)}.kz3 .vids{grid-template-columns:1fr 1fr}.kz3 .po ul{grid-template-columns:1fr 1fr}.kz3 .mapa .kol{grid-template-columns:repeat(3,1fr);gap:0 18px}.kz3 .mapa .fund .row{grid-template-columns:repeat(3,1fr)}
.kz3 .opinie .wrap{grid-template-columns:1.1fr .9fr}
.kz3 .program .wrap{grid-template-columns:1.5fr .7fr}.kz3 .program .days{grid-template-columns:1fr 1fr}
.kz3 .jak .wrap{grid-template-columns:.8fr 1.2fr}.kz3 .steps{grid-template-columns:repeat(3,1fr)}
.kz3 .trener .wrap{grid-template-columns:.7fr 1fr .8fr}
.kz3 .inw .wrap{grid-template-columns:1fr 1fr}.kz3 .dk .grid{grid-template-columns:1fr 1fr}
.kz3 .faqs .wrap{grid-template-columns:.8fr 1.2fr}.kz3 .final .wrap{grid-template-columns:1.1fr .9fr}
}
@media(max-width:899px){.kz3 section,.kz3 header.hero{padding:64px 0}.kz3 .nav ul{display:none}.kz3 .nav .tel span{display:none}.kz3 .hero .pill{position:static;margin-top:16px}.kz3 .hero .shot img{aspect-ratio:4/3}.kz3 .trener .ph img{max-width:320px}.kz3 .pricebox ul{grid-template-columns:1fr} }

/* ══ koniec kz3 ══ */
/* ══ PLAN LECZENIA — dodatki do układu kz3 (kz3-pl), 16.09.2026 ══ */
.kz3-pl .op3{background:var(--white);border:1px solid rgba(27,44,79,.1);border-radius:var(--r);padding:26px 24px;display:flex;flex-direction:column;gap:6px;box-shadow:0 2px 14px rgba(27,44,79,.05)}
.kz3-pl .op3 img{width:88px;height:88px;border-radius:50%;object-fit:cover;object-position:50% 20%;margin-bottom:8px}
.kz3-pl .op3 .gw{color:var(--gold);font:var(--f-meta);letter-spacing:.1em}.kz3-pl .op3 b{font:var(--f-h3);font-size:18px;color:var(--navy)}.kz3-pl .op3 span{font:var(--f-meta);color:var(--muted)}
.kz3-pl .op3 blockquote{margin:10px 0 0;font:italic 400 17px/1.55 var(--quote);color:var(--navy)}
.kz3-pl .opinie3 .grid{gap:22px}.kz3-pl .opinie3 h2{margin-bottom:30px}
.kz3-pl .trust{background:var(--white);padding:26px 0;border-bottom:1px solid rgba(27,44,79,.08)}
.kz3-pl .trust .wrap{display:flex;flex-wrap:wrap;align-items:center;gap:14px 34px}
.kz3-pl .trust .lab{font:var(--f-meta);color:var(--muted);max-width:14ch}
.kz3-pl .trust b{font:400 22px/1.2 var(--serif);color:var(--navy);letter-spacing:.02em;white-space:nowrap}
.kz3-pl .trust .more{font:var(--f-meta);color:var(--muted);margin-left:auto}
.kz3-pl .efekty .grid .card h3{font-size:18px}
.kz3-pl .pakiet{margin-top:44px;padding-top:36px;border-top:1px solid rgba(27,44,79,.12)}
.kz3-pl .pakiet .grid{margin-top:18px}.kz3-pl .pakiet .it{display:flex;gap:12px;align-items:flex-start}.kz3-pl .pakiet .it .ic{width:24px;height:24px;margin-top:2px}
.kz3-pl .pakiet b{display:block;font:var(--f-h3);font-size:17px;color:var(--navy)}.kz3-pl .pakiet span{font:var(--f-meta);color:var(--muted)}
.kz3-pl .day.one ol{gap:12px}.kz3-pl .day.one li{font-size:17px}
.kz3-pl .koszt .oblicz{margin-top:14px;font:var(--f-meta);color:var(--muted)}

.kz3-pl .shorts{display:grid;gap:16px;margin-top:16px}.kz3-pl .vid.short{aspect-ratio:9/16}.kz3-pl .vid.short img{object-position:center}
.kz3-pl .hero .shot img{object-position:50% 50%}
.kz3-pl .hero .shot img{object-position:100% 50%}
@media(max-width:899px){.kz3-pl .shorts{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:6px;-webkit-overflow-scrolling:touch}.kz3-pl .shorts .vid{flex:0 0 62%;scroll-snap-align:start} }
@media(min-width:900px){.kz3-pl .opinie3 .grid{grid-template-columns:repeat(3,1fr)}.kz3-pl .shorts{grid-template-columns:repeat(3,1fr);max-width:760px}.kz3-pl .efekty .grid{grid-template-columns:repeat(3,1fr)}.kz3-pl .pakiet .grid{grid-template-columns:repeat(3,1fr)}.kz3-pl .program .days{grid-template-columns:1fr} }

/* ══ koniec kz3-pl ══ */
/* ── kurs-zarzadzania, sekcje dodane 15.09.2026: efekt / mapa / po kursie / siatka 3 filmów ── */
.wz .efekt{display:grid;gap:16px;margin-top:40px}
.wz .efekt .t{border:1px solid rgba(201,162,74,.32);border-radius:var(--r);padding:24px 22px;background:rgba(201,162,74,.07)}
.wz .efekt .v{font-family:var(--serif);font-size:clamp(34px,4.6vw,50px);color:var(--gold-lt);line-height:1;letter-spacing:-.02em}
.wz .efekt .l{color:#fff;font-weight:700;margin-top:10px;font-size:16px;line-height:1.35}
.wz .efekt .s{color:rgba(255,255,255,.7);font-size:14px;margin-top:6px;line-height:1.5}
.wz .mapa{margin-top:40px}
.wz .mapa .kol{display:grid;gap:18px}
.wz .mapa .kol>div{display:grid;grid-template-rows:subgrid;grid-row:span 4}
.wz .mapa .hd{background:var(--navy);color:#fff;text-align:center;font-size:13px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;padding:13px 12px;border-radius:6px 6px 0 0;display:flex;align-items:center;justify-content:center}
.wz .mapa .box{background:var(--white);border:1px solid rgba(27,44,79,.18);border-top:0;padding:13px 14px;text-align:center;font-size:15px;font-weight:700;color:var(--navy);line-height:1.35;display:flex;flex-direction:column;justify-content:center}
.wz .mapa .box .k{display:block;font-weight:500;font-size:13.5px;color:var(--muted);margin-top:4px;line-height:1.4}
.wz .mapa .box:last-child{border-radius:0 0 6px 6px}
.wz .mapa .fund{margin-top:34px;text-align:center}
.wz .mapa .fund .row{display:grid;gap:18px;margin-top:14px}
.wz .mapa .fund .row div{background:var(--navy);color:#fff;padding:14px;border-radius:6px;font-weight:700;font-size:15px;text-align:center;line-height:1.35}
.wz .mapa .fund .row small{display:block;font-weight:500;font-size:13px;color:rgba(255,255,255,.74);margin-top:4px;line-height:1.4}
.wz .skill ul{list-style:none;margin:0;padding:0;display:grid;gap:7px}
.wz .skill li{font-size:var(--t-base);color:rgba(255,255,255,.78);line-height:1.55;padding-left:14px;position:relative}
.wz .skill li::before{content:"·";position:absolute;left:0;color:var(--gold-lt);font-weight:800}
.wz .skill .tools{margin-top:10px;font-size:13px;color:var(--gold-lt);letter-spacing:.02em}
.wz .zmiany{display:grid;gap:14px 24px;margin-top:30px;list-style:none;padding:0}
.wz .zmiany li{display:flex;gap:12px;font-size:17px;line-height:1.5;color:var(--ink);padding:16px 18px;background:var(--white);border:1px solid rgba(27,44,79,.09);border-radius:10px}
.wz .zmiany .tick{color:var(--gold-ink);font-weight:800}
.wz .tcard .mono{width:110px;height:110px;border-radius:14px;background:var(--navy);color:var(--gold-lt);display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:40px}
@media(min-width:900px){
.wz .efekt{grid-template-columns:repeat(3,1fr)}
.wz .mapa .kol{grid-template-columns:repeat(3,1fr);gap:0 18px}
.wz .mapa .fund .row{grid-template-columns:repeat(3,1fr)}
.wz .zmiany{grid-template-columns:1fr 1fr}
.wz .tcard .mono{width:150px;height:150px;font-size:54px}}
@media(prefers-reduced-motion:reduce){
.wz .vid:hover{transform:none}
.wz .vid:hover .play{transform:translate(-50%,-50%)}}

.wz .fbline{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin-top:20px;font-size:var(--t-base);line-height:1.5;color:var(--muted)}

.wz .fbline .st{color:var(--gold-ink);letter-spacing:2px;font-size:16px}

/* ═══ OPINIA ZE ZDJĘCIEM — karta pozioma, pełna szerokość ═══ */

.wz .tcards{display:grid;gap:18px}

.wz .tcard{background:var(--white);border:1px solid rgba(27,44,79,.09);border-radius:var(--r);box-shadow:0 2px 14px rgba(27,44,79,.06);padding:26px 24px;display:grid;gap:20px}
@media(min-width:760px){
.wz .tcard{grid-template-columns:150px 1fr;gap:30px;padding:30px 32px;align-items:start}}

.wz .tcard .pho{width:110px;height:110px;border-radius:14px;overflow:hidden;background:var(--navy);flex:none}
@media(min-width:760px){
.wz .tcard .pho{width:150px;height:150px}}

.wz .tcard .pho img{width:100%;height:100%;object-fit:cover;display:block}

.wz .tcard .stars{color:var(--gold-ink);font-size:16px;letter-spacing:2px;line-height:1;margin-bottom:12px;display:block}

.wz .tcard blockquote{font-family:var(--quote);font-style:normal;font-size:17px;line-height:1.62;color:var(--navy);margin-bottom:16px;max-width:62ch}
@media(min-width:900px){
.wz .tcard blockquote{font-size:var(--t-lg)}}

.wz .tcard .nm{font-weight:700;font-size:16px;color:var(--navy);line-height:1.25;display:block}

.wz .tcard .rl{font-size:16px;color:var(--muted);line-height:1.5;display:block;margin-top:3px}

/* ═══ WIDEO NA CAŁĄ SZEROKOŚĆ ═══ */

.wz .vband{width:100%;max-width:1560px;margin:0 auto;padding:0 22px}
@media(min-width:900px){
.wz .vband{padding:0 28px}}

.wz .vfull{position:relative;display:block;width:100%;padding:0;border:0;border-radius:16px;overflow:hidden;background:#0A1322;cursor:pointer;aspect-ratio:16/9;font:inherit;text-align:left;box-shadow:0 24px 60px -22px rgba(0,0,0,.6);transition:transform .3s cubic-bezier(.22,1,.36,1)}

.wz .vfull:hover{transform:translateY(-3px)}

.wz .vfull img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.92}

.wz .vfull .play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:96px;height:96px;border-radius:50%;background:rgba(255,255,255,.95);box-shadow:0 10px 34px rgba(0,0,0,.42);transition:transform .25s,background .25s}

.wz .vfull .play::after{content:"";position:absolute;left:50%;top:50%;transform:translate(-38%,-50%);border-style:solid;border-width:19px 0 19px 31px;border-color:transparent transparent transparent var(--navy)}

.wz .vfull:hover .play{background:var(--gold);transform:translate(-50%,-50%) scale(1.07)}

.wz .vfull .vlab{position:absolute;left:0;right:0;bottom:0;padding:60px 26px 20px;background:linear-gradient(transparent,rgba(10,19,34,.92));color:#fff;font-size:var(--t-base);font-weight:600;line-height:1.45;max-width:60ch}

.wz .vfull iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
@media(min-width:900px){
.wz .vfull .play{width:112px;height:112px}
.wz .vfull .vlab{padding:70px 32px 24px}}
@media(prefers-reduced-motion:reduce){
.wz .vfull:hover{transform:none}
.wz .vfull:hover .play{transform:translate(-50%,-50%)}}

/* ═══ 5. KWALIFIKACJA ═══ */

.wz .qual{padding:26px 24px}

.wz .qual h3{font-size:17px;margin-bottom:16px;display:flex;align-items:center;gap:9px}

.wz .qual ul{list-style:none;display:grid;gap:11px}

.wz .qual li{display:flex;gap:10px;font-size:var(--t-base);line-height:1.55;color:var(--ink)}

.wz .qual .mk{flex:none;font-weight:900;font-size:16px;line-height:1.5}

.wz .yes{border-top:3px solid #277044}

.wz .yes .mk{color:#277044}

.wz .no{border-top:3px solid rgba(27,44,79,.22)}

.wz .no .mk{color:var(--muted)}

.wz .no li{color:var(--muted)}


/* ═══ 6. CO OPANUJESZ ═══ */

.wz .skill{padding:24px 22px;border-left:2px solid rgba(201,162,74,.4);background:rgba(255,255,255,.04);border-radius:0 var(--r) var(--r) 0}

.wz .skill .n{font-size:var(--t-xs);font-weight:700;letter-spacing:.14em;color:var(--gold-lt);display:block;margin-bottom:10px}

.wz .skill h3{color:#fff;font-size:19px;line-height:1.32;margin-bottom:10px;font-family:var(--body);font-weight:700}

.wz .skill p{font-size:var(--t-base);color:rgba(255,255,255,.74);line-height:1.6;max-width:52ch}

.wz .skill.bonus{border-left-color:var(--gold);background:rgba(201,162,74,.11)}

.wz .skill.bonus .n{color:var(--gold)}

/* ═══ 7. PROGRAM — OŚ DWÓCH DNI (element sygnaturowy wzorca) ═══ */

.wz .days{display:grid;gap:34px}
@media(min-width:900px){
.wz .days{grid-template-columns:1fr 1fr;gap:44px}}

.wz .day{position:relative;padding-left:30px}

.wz .day::before{content:"";position:absolute;left:6px;top:12px;bottom:12px;width:2px;background:linear-gradient(180deg,var(--gold),rgba(201,162,74,.18))}

.wz .day-hd{margin-bottom:22px;position:relative}

.wz .day-hd::before{content:"";position:absolute;left:-30px;top:6px;width:14px;height:14px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 4px var(--cream)}

.wz .day-hd .lbl{font-size:var(--t-xs);font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-ink)}

.wz .day-hd h3{font-family:var(--serif);font-weight:400;font-size:29px;color:var(--navy);margin:4px 0 3px}

.wz .day-hd .hrs{font-size:14px;color:var(--muted);font-weight:600}

.wz .blk{position:relative;padding:0 0 20px}

.wz .blk::before{content:"";position:absolute;left:-27px;top:8px;width:8px;height:8px;border-radius:50%;background:var(--cream);border:2px solid var(--gold)}

.wz .blk h4{font-family:var(--body);font-weight:700;font-size:16px;color:var(--navy);line-height:1.35;margin-bottom:4px}

.wz .blk p{font-size:var(--t-base);color:var(--muted);line-height:1.55;max-width:52ch}

.wz .blk.evt::before{background:var(--gold);border-color:var(--gold)}

.wz .blk.evt h4{color:var(--gold-ink)}

.wz .note{margin-top:30px;padding:20px 22px;background:rgba(201,162,74,.09);border-left:3px solid var(--gold);border-radius:0 8px 8px 0;font-size:var(--t-base);line-height:1.65;color:var(--ink);max-width:68ch}

/* ═══ 8. PROWADZĄCY ═══ */

.wz .author{display:grid;gap:28px;align-items:center}
@media(min-width:840px){
.wz .author{grid-template-columns:.82fr 1.18fr;gap:44px}}

.wz .author .ph{border-radius:14px;overflow:hidden;background:var(--navy)}

.wz .badges{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}

.wz .badge{font-size:14px;font-weight:700;padding:7px 13px;border-radius:20px;background:rgba(27,44,79,.06);color:var(--navy);border:1px solid rgba(27,44,79,.1)}

/* ═══ 9. OFERTA ═══ */

.wz .offer{display:grid;gap:28px}
@media(min-width:900px){
.wz .offer{grid-template-columns:1.05fr .95fr;gap:48px;align-items:start}}

.wz .incl{list-style:none;display:grid;gap:13px}

.wz .incl li{display:flex;gap:12px;font-size:16px;line-height:1.5;color:rgba(255,255,255,.86)}

.wz .incl .tick{color:var(--gold-lt);font-weight:900;flex:none}

.wz .pricebox{border:1px solid rgba(201,162,74,.34);border-radius:var(--r);padding:28px 26px;background:rgba(255,255,255,.05)}

.wz .price{display:flex;align-items:baseline;gap:9px;margin-bottom:4px}

.wz .price .v{font-family:var(--serif);font-size:clamp(50px,9vw,72px);color:#fff;line-height:1}

.wz .price .c{font-size:21px;color:var(--gold-lt);font-weight:700}

.wz .price-sub{font-size:14px;color:rgba(255,255,255,.62);margin-bottom:22px}

.wz .ratio{padding:16px 18px;background:rgba(201,162,74,.12);border-radius:8px;font-size:var(--t-base);line-height:1.6;color:rgba(255,255,255,.88);margin-bottom:22px}

.wz .ratio b{color:var(--gold-lt)}

.wz .terms{list-style:none;display:grid;gap:10px;margin-top:18px;font-size:16px;line-height:1.5;color:rgba(255,255,255,.7)}

.wz .terms li{display:flex;gap:9px}

.wz .terms .tick{color:var(--gold-lt);flex:none}

/* ═══ 10. GWARANCJA ═══ */

.wz .guar{border:1px solid rgba(201,162,74,.4);border-radius:var(--r);padding:32px 26px;background:var(--white);max-width:860px;margin:0 auto}

.wz .seal{width:52px;height:52px;border-radius:50%;background:rgba(201,162,74,.15);color:var(--gold-ink);display:grid;place-items:center;font-size:24px;font-weight:900;margin-bottom:18px}

.wz .guar dl{display:grid;gap:15px;margin-top:20px}

.wz .guar dt{font-weight:800;font-size:14px;letter-spacing:.05em;text-transform:uppercase;color:var(--gold-ink);margin-bottom:4px}

.wz .guar dd{font-size:var(--t-base);line-height:1.65;color:var(--ink);max-width:66ch}

.wz .sig{margin-top:24px;padding-top:18px;border-top:1px solid rgba(27,44,79,.1);font-family:var(--quote);font-style:normal;font-size:17px;color:var(--navy)}

/* ═══ 11. FAQ ═══ */

.wz .faq{max-width:820px;margin:0 auto;display:grid;gap:10px}

.wz .faq details{background:var(--white);border:1px solid rgba(27,44,79,.09);border-left:3px solid rgba(201,162,74,.4);border-radius:0 var(--r) var(--r) 0;overflow:hidden}

.wz .faq details[open]{border-left-color:var(--gold)}

.wz .faq summary{list-style:none;cursor:pointer;padding:18px 22px;font-weight:700;font-size:var(--t-lg);color:var(--navy);display:flex;justify-content:space-between;gap:16px;align-items:flex-start;min-height:56px;line-height:1.4}

.wz .faq summary::-webkit-details-marker{display:none}

.wz .faq summary::after{content:"+";font-family:var(--serif);font-size:26px;color:var(--gold-ink);line-height:1;flex:none;transition:transform .2s}

.wz .faq details[open] summary::after{transform:rotate(45deg)}

.wz .faq .a{padding:0 22px 20px;font-size:var(--t-base);line-height:1.7;color:var(--muted);max-width:68ch}

.wz .faq .a b{color:var(--ink)}

/* ═══ 12. DOMKNIĘCIE ═══ */

.wz .close{text-align:center;max-width:720px;margin:0 auto}

.wz .close h2{color:#fff;margin-bottom:18px}

.wz .close .get{list-style:none;display:grid;gap:10px;max-width:460px;margin:26px auto 0;text-align:left}

.wz .close .get li{display:flex;gap:11px;font-size:var(--t-base);line-height:1.5;color:rgba(255,255,255,.84)}

.wz .close .get .tick{color:var(--gold-lt);font-weight:900;flex:none}

.wz .close-price{font-family:var(--serif);font-size:34px;color:#fff;margin:26px 0 6px}

.wz .close-price span{font-size:16px;color:rgba(255,255,255,.68);font-family:var(--body)}

.wz .phone{display:inline-flex;align-items:center;gap:8px;min-height:48px;color:rgba(255,255,255,.8);font-weight:600;font-size:16px;text-decoration:none;padding:10px 4px}

.wz .phone:hover{color:var(--gold-lt)}

.wz .gal{display:grid;gap:10px;grid-template-columns:1fr}
@media(min-width:640px){
.wz .gal{grid-template-columns:repeat(3,1fr)}}

.wz .gal img{border-radius:10px;width:100%;aspect-ratio:3/2;height:auto;object-fit:cover;object-position:center 28%}

/* ── katalog kursów (Akademia) ───────────────────────────────────────
   Lista tego, co jest w pakiecie, z ceną katalogową każdej pozycji.
   Numer · tytuł · cena — trzy kolumny na desktopie, dwa wiersze na telefonie. */

.wz .kat{list-style:none;margin:38px 0 0;padding:0;border-top:1px solid rgba(27,44,79,.13)}

.wz .kat li{display:grid;grid-template-columns:auto 1fr auto;align-items:baseline;gap:8px 16px;
 padding:15px 0;border-bottom:1px solid rgba(27,44,79,.13)}

.wz .kat .kn{font-family:var(--serif);font-size:17px;color:var(--gold-ink);min-width:2ch;font-variant-numeric:tabular-nums}

.wz .kat .kt{font-size:var(--t-base);line-height:1.45;color:var(--ink)}

.wz .kat .kc{font-weight:700;font-size:var(--t-base);color:var(--muted);white-space:nowrap;font-variant-numeric:tabular-nums}
@media(max-width:560px){
 
.wz .kat li{grid-template-columns:auto 1fr}
 
.wz .kat .kc{grid-column:2;font-size:var(--t-sm)}
}

.wz .kat-sum{margin-top:26px;padding:22px 24px;background:var(--white);
 border:1px solid rgba(201,162,74,.34);border-radius:var(--r);max-width:520px}

.wz .kat-sum .ks-row{display:flex;justify-content:space-between;align-items:baseline;gap:16px;
 padding:9px 0;font-size:var(--t-base);color:var(--muted)}

.wz .kat-sum .ks-row b{color:var(--ink);font-weight:700;white-space:nowrap;font-variant-numeric:tabular-nums}

.wz .kat-sum .ks-row+.ks-row{border-top:1px solid rgba(27,44,79,.10)}

.wz .kat-sum .ks-win{padding-top:14px;margin-top:5px;border-top:2px solid var(--gold)}

.wz .kat-sum .ks-win span{color:var(--ink);font-weight:600}

.wz .kat-sum .ks-win b{font-family:var(--serif);font-weight:400;font-size:30px;line-height:1;color:var(--gold-ink)}

body.wz-kurs #kurs-floating-toc{display:none!important}

/* ── NAPRAWY POZIOMEGO PRZEWIJANIA NA TELEFONIE ────────────────────────
   Kilka podstron przewijalo sie w bok na 390 px (blad istnial przed
   wpieciem wzorca). Poziome przewijanie to twardy blad dostepnosci —
   strona musi miescic sie w szerokosci ekranu. */
.trust-marquee,.trust-track{overflow:hidden;max-width:100%}
@media(max-width:600px){
 #kbnwrap .hero-grid,#prwrap .hero-grid,#dkwrap .hero-grid,#plwrap .hero-grid,
 #zrwrap .hero-grid,#dwizwrap .hero-grid,#r1wrap .hero-grid{
   grid-template-columns:1fr!important;gap:28px!important}
 #prwrap [style*="grid-template-columns:220px"],
 #dwizwrap [style*="grid-template-columns:220px"]{
   grid-template-columns:1fr!important;gap:24px!important}
 #prwrap [style*="grid-template-columns:220px"] img{max-width:220px;margin:0 auto}
 /* licznik zaufania: nowrap w waskim kontenerze wypychal strone */
 .trust-strip [style*="white-space:nowrap"]{white-space:normal!important}
 /* sekcja o autorze na home: siatka 340px + 1fr nie miescila sie na telefonie */
 .autor-resp{grid-template-columns:1fr!important;gap:28px!important}
 .autor-resp img{max-width:100%;height:auto}
 /* nagłówek 42 px nie mieścił się w kolumnie na 390 px */
 .autor-resp h2{font-size:clamp(28px,8vw,42px)!important;overflow-wrap:break-word;hyphens:auto}
 /* siatki wielokolumnowe zwijamy do jednej kolumny */
 .proof-resp,.stat-resp,.karty-resp{grid-template-columns:1fr!important;gap:2px!important}
 .proof-resp [style*="font-size:60px"],.proof-resp [style*="font-size: 60px"]{font-size:44px!important}
 /* bezpiecznik: zaden element nie moze wypchnac strony w bok.
    clip zamiast hidden — nie tworzy kontekstu przewijania, wiec nie psuje sticky */
 html,body{overflow-x:clip}
 html.mob-otwarte,html.mob-otwarte body{overflow:hidden;overscroll-behavior:none}
}
<!-- przebudowa-stron-kursow-2026-09 -->
/* ── przebudowa stron kursów 2026-09: dopiski do wzorca ────────────────── */
.wz .vcap{margin:16px auto 0;max-width:var(--max);padding:0 22px;font-size:16px;line-height:1.55;color:var(--muted)}
@media(min-width:900px){.wz .vcap{padding:0 28px}}
.wz .qual li{padding-left:18px;position:relative}
.wz .qual li::before{content:"";position:absolute;left:0;top:.62em;width:7px;height:7px;border-radius:50%;background:#277044}
.wz .no li::before{background:rgba(27,44,79,.28)}
.wz .incl .tick,.wz .close .get .tick{font-size:22px;line-height:.8;width:10px}
.wz .stan{display:flex;flex-wrap:wrap;gap:6px 18px;font-size:15px;color:rgba(255,255,255,.78);margin-bottom:18px;padding:12px 0;border-top:1px solid rgba(255,255,255,.12);border-bottom:1px solid rgba(255,255,255,.12)}
.wz .stan b{color:#fff;font-weight:700}
.wz .micro{font-size:14px;color:rgba(255,255,255,.66);line-height:1.5;margin-top:12px}
.wz .exit2{display:flex;align-items:center;justify-content:center;gap:8px;min-height:48px;margin-top:14px;color:#fff;font-weight:600;font-size:15px;text-decoration:none;border:1.5px solid rgba(255,255,255,.28);border-radius:9px;padding:10px 16px;text-align:center;line-height:1.35}
.wz .exit2:hover{border-color:var(--gold-lt);color:var(--gold-lt)}
/* ramka pakietu — strony kursow, 30.09.2026 */
.wz .pk11{display:grid;gap:2px 12px;grid-template-columns:1fr auto;align-items:baseline;margin:-8px 0 22px;padding:12px 14px;border:1px dashed rgba(201,162,74,.5);border-radius:8px;background:rgba(201,162,74,.08)}.wz .pk11 .pk-e{grid-column:1/-1;font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-lt);margin-bottom:2px}.wz .pk11 .pk-t{font-size:15px;font-weight:700;color:#fff}.wz .pk11 .pk-c{font-size:15px;color:rgba(255,255,255,.82);white-space:nowrap}.wz .pk11 .pk-c b{color:var(--gold-lt);font-size:18px}.wz .pk11 .pk-c s{color:rgba(255,255,255,.5);margin-left:4px}.wz .pk11 .pk-m{grid-column:1/-1;font-size:14px;color:rgba(255,255,255,.66)}@media(max-width:480px){.wz .pk11{grid-template-columns:1fr}}
.wz .dquote{margin-top:40px;padding:26px 28px;border-left:3px solid var(--gold);background:rgba(255,255,255,.05);border-radius:0 var(--r) var(--r) 0;display:grid;gap:18px;align-items:start}
@media(min-width:700px){.wz .dquote{grid-template-columns:96px 1fr;gap:26px}}
.wz .dquote .pho{width:80px;height:80px;border-radius:12px;overflow:hidden;background:var(--navy-deep)}
@media(min-width:700px){.wz .dquote .pho{width:96px;height:96px}}
.wz .dquote .pho img{width:100%;height:100%;object-fit:cover;display:block}
.wz .dquote blockquote{font-family:var(--quote);font-style:normal;font-size:18px;line-height:1.6;color:#fff;margin-bottom:12px;max-width:66ch}
.wz .dquote .nm{font-weight:700;font-size:16px;color:#fff;display:block}
.wz .dquote .rl{font-size:15px;color:rgba(255,255,255,.66);display:block;margin-top:3px}
.wz .guar-dark{margin-top:40px;background:rgba(255,255,255,.04);border-color:rgba(201,162,74,.4);max-width:none}
.wz .guar-dark h2{color:#fff}
.wz .guar-dark p,.wz .guar-dark dd{color:rgba(255,255,255,.8)}
.wz .guar-dark dt{color:var(--gold-lt)}
.wz .guar-dark .sig{color:#fff;border-top-color:rgba(255,255,255,.14)}
.wz .guar-dark .seal{background:rgba(201,162,74,.2);color:var(--gold-lt)}
.wz .szef{margin-top:28px;padding:22px 24px;border:1px dashed rgba(201,162,74,.55);border-radius:var(--r);display:grid;gap:16px}
@media(min-width:900px){.wz .szef{grid-template-columns:1fr auto;align-items:center;gap:28px}}
.wz .szef .szef-h{font-weight:700;color:#fff;font-size:17px;margin-bottom:6px}
.wz .szef p{color:rgba(255,255,255,.8);font-size:16px;line-height:1.55;max-width:58ch}
.wz .szef .szef-a{display:flex;flex-wrap:wrap;gap:10px}
.wz .szef .btn-ghost{min-height:46px;padding:11px 18px;font-size:15px}
.wz .dark .note{background:rgba(201,162,74,.12);color:rgba(255,255,255,.86)}
.wz .dark .note a{color:var(--gold-lt);font-weight:700}
.wz .close-stan{font-size:16px;color:rgba(255,255,255,.8);margin:0 0 10px}
.wz .close-stan b{color:#fff}
.wz .note a,.wz .tel-u{display:inline-flex;align-items:center;min-height:44px}
.wz .tel-u{color:var(--gold-ink);font-weight:700;white-space:nowrap}

/* ══ AKADEMIA — hero wariantu C (24.09.2026) ═══════════════════════════
   Zdjęcie po LEWEJ, bo na portrecie Michał patrzy w prawo — czyli w stronę
   tekstu. Kolejność w kodzie zostaje „tekst, potem zdjęcie", żeby na telefonie
   najpierw czytało się nagłówek; zamiana stron dzieje się dopiero od 960 px. */
#page-akademia .ak-hero h1{max-width:20ch;font-size:clamp(34px,4.6vw,64px);line-height:1.04;letter-spacing:-.015em}
.wz .hero em.g{color:var(--gold-lt)}          /* było --gold-ink: kontrast 2,1:1 na granacie */
#page-akademia .ak-zloty{font-family:var(--quote);font-size:clamp(19px,2.1vw,27px);line-height:1.3;
 color:#fff;margin:0 0 20px;max-width:34ch}
#page-akademia .ak-hero .lead{max-width:54ch;margin-bottom:0}
#page-akademia .ak-hero .microproof{margin-top:22px;margin-bottom:24px;padding-bottom:20px;
 border-bottom:1px solid rgba(255,255,255,.13);gap:10px 34px;font-size:15px}
#page-akademia .ak-hero .microproof b{font-family:var(--display);font-weight:400;font-size:clamp(26px,3vw,40px);
 color:var(--gold-lt);display:block;line-height:1.05}
#page-akademia .ak-cena{color:rgba(255,255,255,.80);font-size:15px;line-height:1.35}
#page-akademia .ak-cena b{display:block;color:#fff;font-family:var(--display);font-weight:400;font-size:27px;line-height:1.1}
#page-akademia .ak-portret figcaption{position:absolute;left:0;right:0;bottom:0;padding:16px 18px;
 color:#fff;font-size:14px;line-height:1.4;background:linear-gradient(0deg,rgba(15,27,48,.94),transparent)}
#page-akademia .ak-portret figcaption b{font-weight:700}
#page-akademia .ak-zaufanie{background:var(--navy-deep);border-top:1px solid rgba(255,255,255,.10);
 padding:18px 0;color:rgba(255,255,255,.80);font-size:16px}
#page-akademia .ak-zaufanie .wrap{display:flex;gap:14px 26px;align-items:center;justify-content:center;
 flex-wrap:wrap;text-align:center}
#page-akademia .ak-zaufanie b{color:#fff}
#page-akademia .ak-znak{border:1px solid rgba(255,255,255,.22);border-radius:999px;padding:6px 14px;
 font-size:12.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--gold-lt)}
@media(min-width:960px){
 #page-akademia .ak-hero .hero-grid{grid-template-columns:.9fr 1.1fr}
 #page-akademia .ak-hero .hero-grid>figure{order:-1}
}
@media(max-width:959px){
 #page-akademia .ak-portret{margin-top:26px;max-height:420px}
 #page-akademia .ak-portret img{object-position:50% 18%}
}


/* Cytat z ksiazki — sekcja "Autor systemu DOP" */
.ks-cyt{position:relative;margin:0 0 28px;max-width:580px;
 background:linear-gradient(180deg,#FFFDF8,#FBF7ED);
 border:1px solid rgba(201,162,74,.30);border-radius:14px;
 box-shadow:0 14px 34px -20px rgba(27,44,79,.22);padding:28px 30px 26px 32px;overflow:hidden}
.ks-cyt::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--gold)}
.ks-cyt q,.ks-cyt .ks-q{display:block;quotes:none;
 font-family:'Lora',Georgia,'Times New Roman',serif;font-style:italic;
 font-size:19px;line-height:1.6;color:var(--black);margin:0}
.ks-cyt .ks-kre{display:block;width:44px;height:1px;background:var(--gold);margin:20px 0 14px}
.ks-cyt .ks-lab{display:block;font-family:var(--body);font-size:13px;font-weight:800;
 letter-spacing:.11em;text-transform:uppercase;color:var(--gold-ink);margin-bottom:5px}
.ks-cyt .ks-tyt{display:block;font-family:var(--body);font-size:16px;font-weight:700;
 font-style:normal;color:var(--black);line-height:1.35}
@media(max-width:620px){
 .ks-cyt{padding:24px 22px 22px 24px;border-radius:12px}
 .ks-cyt q,.ks-cyt .ks-q{font-size:17px}
}

blockquote footer,figure footer,q footer{background:none!important;padding:0!important;color:inherit!important}
@keyframes scrollHint{0%,100%{transform:translateX(-50%) translateY(0);opacity:.5}50%{transform:translateX(-50%) translateY(6px);opacity:.85}}@media(prefers-reduced-motion:reduce){.scroll-hint{animation:none!important}}

.trust-item{font-family:var(--body);font-size:20px;color:rgba(27,44,79,.72);font-weight:800;white-space:nowrap;padding:0 28px;display:flex;align-items:center;gap:12px;border-right:1px solid rgba(27,44,79,.08);transition:color .2s}
.trust-item:hover{color:var(--gold)}
.trust-avatar{width:38px;height:38px;border-radius:50%;background-size:cover;background-position:center top;background-color:rgba(27,44,79,.08);flex-shrink:0;border:1.5px solid rgba(201,162,74,.3);box-shadow:0 4px 12px -4px rgba(27,44,79,.2)}
@keyframes trustMarquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.trust-marquee:hover .trust-track{animation-play-state:paused}
@media (prefers-reduced-motion:reduce){.trust-track{animation:none}}


@media(max-width:880px){
  .autor-grid-resp{grid-template-columns:1fr !important;gap:40px !important}
  .autor-grid-resp > div:first-child{max-width:340px;margin:0 auto}
}


  .dop-matcher .dopm-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
  .dop-matcher .dopm-card{display:flex;align-items:center;gap:12px;text-align:left;width:100%;background:rgba(255,255,255,.05);border:1.5px solid rgba(255,255,255,.16);color:#fff;border-radius:12px;padding:15px 18px;font-family:var(--body);font-weight:600;font-size:16px;line-height:1.35;cursor:pointer;transition:border-color .2s,background .2s,transform .15s}
  .dop-matcher .dopm-card:hover{border-color:rgba(201,162,74,.55);transform:translateY(-2px)}
  .dop-matcher .dopm-card.sel{border-color:var(--gold);background:rgba(201,162,74,.14)}
  .dop-matcher .dopm-check{flex:0 0 22px;width:22px;height:22px;border-radius:6px;border:2px solid rgba(255,255,255,.3);display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:900;color:transparent;transition:all .2s}
  .dop-matcher .dopm-card.sel .dopm-check{background:var(--gold);border-color:var(--gold);color:#1B2C4F}
  .dop-matcher .dopm-rec-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:24px}
  .dop-matcher .dopm-rec{display:flex;align-items:center;justify-content:space-between;gap:14px;background:#fff;border:1px solid rgba(201,162,74,.4);border-radius:12px;padding:16px 18px;cursor:pointer;text-align:left;width:100%;transition:transform .15s,box-shadow .2s}
  .dop-matcher .dopm-rec:hover{transform:translateY(-2px);box-shadow:0 14px 32px -14px rgba(0,0,0,.45)}
  .dop-matcher .dopm-rec-n{font-family:var(--body);font-weight:700;font-size:16px;line-height:1.3;color:#1B2C4F}
  .dop-matcher .dopm-rec-a{font-family:var(--body);font-weight:800;font-size:14px;letter-spacing:.04em;text-transform:uppercase;color:var(--gold-ink);white-space:nowrap}
  @media(max-width:760px){.dop-matcher .dopm-grid,.dop-matcher .dopm-rec-grid{grid-template-columns:1fr}}
 

@media(max-width:1100px){
 .pricing-grid-resp{grid-template-columns:repeat(2,1fr)!important}
}
@media(max-width:680px){
 .pricing-grid-resp{grid-template-columns:1fr!important}
 .reverse-risk-resp{flex-direction:column!important;align-items:stretch!important}
}

/* === PRICING CARDS v2 — Visual masterclass style === */
.pricing2-card{background:#fff;border-radius:14px;overflow:hidden;border:1px solid rgba(27,44,79,.08);box-shadow:0 4px 12px -4px rgba(27,44,79,.06);transition:transform .3s cubic-bezier(.22,1,.36,1),box-shadow .3s cubic-bezier(.22,1,.36,1);color:var(--black);display:flex;flex-direction:column;cursor:pointer}
.pricing2-card:hover{transform:translateY(-8px);box-shadow:0 28px 60px -20px rgba(27,44,79,.25)}
.pricing2-featured{border:1.5px solid var(--gold);box-shadow:0 8px 24px -8px rgba(201,162,74,.3);transform:scale(1.03)}
.pricing2-featured:hover{transform:scale(1.05) translateY(-8px);box-shadow:0 32px 64px -20px rgba(201,162,74,.45)}
.pricing2-spec{display:flex;flex-wrap:wrap;gap:6px;margin:-4px 0 10px}
.pricing2-chip{display:inline-flex;align-items:center;font-size:13px;font-weight:700;letter-spacing:.04em;color:#1B2C4F;background:rgba(27,44,79,.07);padding:4px 10px;border-radius:999px;border:1px solid rgba(27,44,79,.08)}
.pricing2-featured .pricing2-chip{background:rgba(201,162,74,.12);color:#7d6a30;border-color:rgba(201,162,74,.25)}
.pricing2-cover{position:relative;width:100%;aspect-ratio:16/10;background-size:cover;background-position:center;background-color:var(--dark2);overflow:hidden}
.pricing2-cover-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,27,48,.1) 0%,rgba(15,27,48,.5) 100%);pointer-events:none}
.pricing2-badge{position:absolute;top:14px;left:14px;display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;padding:5px 10px;border-radius:14px;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background:rgba(255,255,255,.92);color:var(--black);box-shadow:0 4px 12px -4px rgba(0,0,0,.2);z-index:1}
.pricing2-badge.ct-online{background:rgba(63,185,80,.95);color:#fff}
.pricing2-badge.ct-stacj{background:rgba(201,162,74,.95);color:var(--black)}
.pricing2-badge.ct-doc{background:rgba(80,120,200,.95);color:#fff}
.pricing2-badge-featured{position:absolute;top:14px;left:14px;display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;padding:5px 10px;border-radius:14px;background:rgba(217,181,96,.95);color:var(--black);box-shadow:0 6px 16px -4px rgba(201,162,74,.6);z-index:1}
.pricing2-body{padding:22px 22px 14px;flex:1;text-align:left}
.pricing2-eyebrow{font-size:13px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:rgba(201,162,74,.85);margin-bottom:8px}
.pricing2-title{font-family:var(--body);font-size:22px;line-height:1.15;color:var(--black);margin:0 0 12px;font-weight:400;letter-spacing:-.005em;min-height:50px}
.pricing2-sub{font-size:15px;color:var(--muted);line-height:1.5;margin:0;min-height:60px}
.pricing2-footer{display:flex;align-items:flex-end;justify-content:space-between;padding:14px 22px 20px;border-top:1px solid rgba(27,44,79,.06);gap:10px}
.pricing2-price{font-family:var(--body);font-size:26px;color:var(--hot);line-height:1;font-weight:800;letter-spacing:-.01em}
.pricing2-price-sub{font-size:13px;color:var(--muted);margin-top:4px}
.pricing2-cta{padding:9px 14px;background:transparent;color:var(--black);font-weight:800;font-size:14px;letter-spacing:.05em;text-transform:uppercase;border:1.5px solid rgba(27,44,79,.18);cursor:pointer;border-radius:6px;font-family:var(--body);transition:all .2s;white-space:nowrap;flex-shrink:0}
.pricing2-cta:hover{border-color:var(--gold);background:var(--gold);color:var(--black)}
.pricing2-cta-gold{background:var(--gold);color:var(--black);border-color:var(--gold)}
.pricing2-cta-gold:hover{background:var(--hot);border-color:var(--hot);box-shadow:0 8px 20px -4px rgba(201,162,74,.5)}
@media(max-width:1100px){.pricing2-grid{grid-template-columns:repeat(2,1fr)!important}}
/* Podwojona klasa jak przy .paths-grid-resp: nizej stoi regula
   [style*="grid-template-columns:repeat(4,1fr)"], ktora ma te sama wage i lezy dalej
   w pliku, wiec wygrywala — cennik zostawal 2-kolumnowy i ucinal wszystkie 4 przyciski. */
@media(max-width:560px){.pricing2-grid.pricing2-grid{grid-template-columns:1fr!important}.pricing2-title{min-height:auto}.pricing2-sub{min-height:auto}}
@media(max-width:860px){
 .dop-contrast-grid{grid-template-columns:1fr!important}
 .problem-cards-resp{grid-template-columns:1fr!important}
}


@media(max-width:860px){.sp-grid-resp{grid-template-columns:repeat(2,1fr)!important}}
@media(max-width:480px){.sp-grid-resp{grid-template-columns:1fr!important}}


@media(max-width:1000px){.face-wall{grid-template-columns:repeat(8,1fr)!important}}
@media(max-width:780px){.photo-testimonial-resp{grid-template-columns:1fr!important;gap:24px!important;text-align:center}.photo-testimonial-resp > div:first-child{max-width:240px;margin:0 auto}}
@media(max-width:680px){.face-wall{grid-template-columns:repeat(6,1fr)!important}.quote-cards-resp{grid-template-columns:1fr!important}}
@media(max-width:400px){.face-wall{grid-template-columns:repeat(4,1fr)!important}}


@media(max-width:880px){.roi-grid-resp{grid-template-columns:1fr!important;padding:24px!important}}
#roi-calc input[type=range]{height:6px;border-radius:3px;background:rgba(27,44,79,.1)}


@media(max-width:760px){
  .system-grid-resp{grid-template-columns:1fr !important;gap:40px !important}
  .system-grid-resp > div:first-child{order:2}
  .system-grid-resp > div:last-child{order:1}
}
.book-cover-3d:hover{transform:rotateY(0deg) rotateX(0deg) translateY(-8px) !important}


@media(max-width:1100px){.gallery-grid-resp{grid-template-columns:repeat(3,1fr) !important}}
@media(max-width:760px){.gallery-grid-resp{grid-template-columns:repeat(2,1fr) !important}}

@media(max-width:980px){.stories-grid-resp{grid-template-columns:1fr !important}}

/* FAQ details rotate + chip */
#faq-extra details[open] summary span:last-child{transform:rotate(45deg)}
#faq-extra summary:hover{background:rgba(201,162,74,.04)}
#faq-extra summary{transition:background .15s}
#faq-extra summary:focus-visible{outline:2px solid var(--gold);outline-offset:-2px}


   .dop-reels{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 2px 18px;-webkit-overflow-scrolling:touch}
   .dop-reels::-webkit-scrollbar{height:8px}
   .dop-reels::-webkit-scrollbar-track{background:rgba(27,44,79,.06);border-radius:4px}
   .dop-reels::-webkit-scrollbar-thumb{background:rgba(201,162,74,.45);border-radius:4px}
   .dop-reel{flex:0 0 auto;width:196px;scroll-snap-align:start;position:relative;aspect-ratio:9/16;border-radius:14px;overflow:hidden;cursor:pointer;background:#0A1322;border:1px solid rgba(27,44,79,.12);box-shadow:0 10px 30px -14px rgba(27,44,79,.3);transition:transform .25s,box-shadow .25s}
   .dop-reel:hover{transform:translateY(-4px);box-shadow:0 24px 50px -20px rgba(27,44,79,.4)}
   .dop-reel:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
   .dop-reel img{width:100%;height:100%;object-fit:cover;display:block}
   .dop-reel .rl-play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none}
   .dop-reel .rl-play>span{width:54px;height:54px;border-radius:50%;background:rgba(201,162,74,.95);display:flex;align-items:center;justify-content:center;padding-left:3px;box-shadow:0 8px 22px -4px rgba(0,0,0,.55)}
   .dop-reel .rl-badge{position:absolute;top:10px;left:10px;font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#fff;background:rgba(10,19,34,.66);padding:4px 8px;border-radius:6px}
   .dop-reel .rl-cap{position:absolute;left:0;right:0;bottom:0;padding:34px 12px 12px;font-size:14px;font-weight:700;line-height:1.28;color:#fff;background:linear-gradient(to top,rgba(10,19,34,.94),rgba(10,19,34,.55) 52%,transparent);text-shadow:0 1px 3px rgba(0,0,0,.5);pointer-events:none}
  
.klinika{display:inline-block;background:#fff;border:1px solid #E0DDD8;border-radius:999px;padding:10px 20px;font-size:14px;font-weight:600;color:var(--black);box-shadow:0 2px 12px rgba(0,0,0,.06)}

@media(max-width:880px){
  .michal-hero-grid{grid-template-columns:1fr !important;gap:40px !important}
  .michal-hero-grid > div:first-child{max-width:280px;margin:0 auto}
  .books-grid{grid-template-columns:1fr !important}
}


  .refx-sec{padding:84px 28px;border-top:1px solid rgba(27,44,79,.08)}
  .refx-wrap{max-width:var(--max);margin:0 auto}
  .refx-eyebrow{font-size:13px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-ink);margin-bottom:14px;font-family:var(--body)}
  .refx-h2{font-family:var(--display);font-size:clamp(30px,3.6vw,46px);line-height:1.06;color:var(--black);letter-spacing:-.01em;margin:0 0 10px;font-weight:400}
  .refx-lead{font-size:16px;color:var(--muted);line-height:1.6;margin:0 0 34px;max-width:660px}
  .refx-videos{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:40px}
  .refx-video{position:relative;aspect-ratio:16/9;border-radius:14px;overflow:hidden;cursor:pointer;border:1px solid rgba(27,44,79,.1);background:#0A1322;box-shadow:0 10px 30px -14px rgba(27,44,79,.3);transition:transform .3s cubic-bezier(.22,1,.36,1),box-shadow .3s}
  .refx-video:hover{transform:translateY(-4px);box-shadow:0 26px 56px -22px rgba(27,44,79,.4)}
  .refx-video:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
  .refx-video img{width:100%;height:100%;object-fit:cover;display:block;opacity:.94}
  .refx-play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none}
  .refx-play>span{width:66px;height:66px;border-radius:50%;background:rgba(201,162,74,.94);display:flex;align-items:center;justify-content:center;padding-left:4px;box-shadow:0 10px 26px -6px rgba(0,0,0,.5);transition:transform .3s}
.refx-play>span::after{content:"";width:0;height:0;border-left:20px solid #1B2C4F;border-top:12px solid transparent;border-bottom:12px solid transparent}
  .refx-video:hover .refx-play>span{transform:scale(1.08)}
  .refx-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
  .refx-card{background:var(--cream);border:1px solid rgba(27,44,79,.08);border-radius:14px;padding:28px 28px 24px;display:flex;flex-direction:column;box-shadow:0 4px 16px -8px rgba(27,44,79,.1)}
  .refx-quote{font-family:var(--serif);font-size:18px;line-height:1.5;color:var(--black);font-style:italic;margin:0 0 22px;flex:1}
  .refx-person{display:flex;align-items:center;gap:14px;padding-top:18px;border-top:1px solid rgba(27,44,79,.08)}
  .refx-avatar{width:54px;height:54px;border-radius:50%;background-size:cover;background-position:center top;flex-shrink:0;border:2px solid rgba(201,162,74,.35)}
  .refx-name{font-weight:800;font-size:16px;color:var(--black);line-height:1.2}
  .refx-role{font-size:14px;color:var(--muted);line-height:1.35;margin-top:3px}
  @media(max-width:880px){.refx-sec{padding:60px 22px}.refx-videos{grid-template-columns:1fr}.refx-grid{grid-template-columns:1fr}}
 
/* ═══ Opinie — jeden format na całej stronie (wdrożenie 25.08.2026) ═══ */
.dopo-siatka{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(320px,100%),1fr));gap:20px}
.dopo{background:#fff;border-radius:14px;padding:26px 26px 22px;display:flex;flex-direction:column;
 box-shadow:0 3px 14px -9px rgba(27,44,79,.2);margin:0}
.dopo[hidden]{display:none}
.dopo-foto,.dopo-mono{width:64px;height:64px;border-radius:10px;margin-bottom:14px;object-fit:cover;
 object-position:center top;flex-shrink:0}
.dopo-foto{background:rgba(27,44,79,.06);font-size:0;overflow:hidden}
.dopo-mono{background:rgba(201,162,74,.14);display:grid;place-items:center;font-weight:800;font-size:19px;color:#A8852B}
.dopo-st{color:#A8852B;font-size:16px;letter-spacing:.12em;line-height:1;margin:0 0 12px}
.dopo-q{font-family:'Instrument Serif',Georgia,serif;font-style:italic;font-size:16.5px;line-height:1.58;
 color:#1B2C4F;margin:0 0 18px;flex:1;max-width:none}
.dopo-n{font-weight:700;font-size:16px;color:#1B2C4F;line-height:1.25;border-top:1px solid rgba(27,44,79,.08);padding-top:15px}
.dopo-r{font-size:14px;color:#5C6471;margin-top:3px}
.dopo-filtr{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 26px}
.dopo-f{flex:0 0 auto;min-height:44px;padding:0 16px;border-radius:99px;border:1px solid #E0DDD8;background:#fff;
 font-family:inherit;font-size:14px;font-weight:600;color:#5C6471;cursor:pointer;display:inline-flex;
 align-items:center;gap:8px;transition:.15s;line-height:1}
.dopo-f:hover{border-color:#C9A24A}
.dopo-f[aria-pressed="true"]{background:#1B2C4F;border-color:#1B2C4F;color:#fff}
.dopo-f i{font-style:normal;font-size:14px;opacity:.65;font-weight:700}
@supports (grid-template-rows: subgrid){
 .dopo{display:grid;grid-row:span 4;grid-template-rows:subgrid;row-gap:0;align-content:start}
 .dopo-q{flex:none}
}
.dopo-pusto{display:none;font-family:'Instrument Serif',Georgia,serif;font-style:italic;font-size:18px;color:#5C6471;padding:22px 0}
.dopo-pusto.jest{display:block}
.dopo-filmy{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr));gap:18px}
.dopo-film{position:relative}
.dopo-film-t{position:absolute;left:14px;right:14px;bottom:12px;z-index:2;color:#fff;font-size:15px;
 font-weight:600;line-height:1.35;text-shadow:0 2px 12px rgba(15,27,48,.9)}
/* wariant duży — strona główna i podstrona kursu */
.dopod-lista{display:grid;gap:18px}
.dopod{background:#fff;border-radius:16px;padding:32px 34px;display:grid;grid-template-columns:250px 1fr;gap:32px;
 align-items:start;box-shadow:0 3px 16px -10px rgba(27,44,79,.22);margin:0}
.dopod-foto{width:250px;height:250px;border-radius:14px;object-fit:cover;object-position:center top;
 background:rgba(27,44,79,.06);display:block;font-size:0;overflow:hidden}
.dopod-mono{background:rgba(201,162,74,.14);display:grid;place-items:center;font-size:56px;font-weight:800;color:#A8852B}
.dopod-st{color:#A8852B;font-size:19px;letter-spacing:.14em;line-height:1;margin:6px 0 16px}
.dopod-q{font-family:'Instrument Serif',Georgia,serif;font-style:italic;font-size:20px;line-height:1.6;color:#1B2C4F;margin:0 0 22px;max-width:none}
.dopod-n{font-weight:700;font-size:17px;color:#1B2C4F;line-height:1.25;border-top:1px solid rgba(27,44,79,.08);padding-top:16px}
.dopod-r{font-size:16px;color:#5C6471;margin-top:5px}
.dopod-bdg{display:inline-block;font-size:14px;font-weight:700;color:#2b6b45;text-transform:uppercase;letter-spacing:.06em;
 background:rgba(58,140,92,.1);padding:5px 10px;border-radius:4px;margin-top:14px}
@media(max-width:760px){.dopod{grid-template-columns:1fr;gap:20px;padding:26px 24px}
 .dopod-foto{width:180px;height:180px}.dopod-mono{font-size:40px}.dopod-q{font-size:17px}.dopod-st{font-size:17px}}
/* wrappery z własnym resetem * {margin:0;padding:0} — przywrócenie odstępów karty */
#kzwrap .dopo,#adwrap .dopo{padding:26px 26px 22px;margin:0}
#kzwrap .dopod,#adwrap .dopod{padding:32px 34px;margin:0}
#kzwrap .dopo-st,#adwrap .dopo-st{margin:0 0 12px}
#kzwrap .dopod-st,#adwrap .dopod-st{margin:6px 0 16px}
#kzwrap .dopo-q,#adwrap .dopo-q{margin:0 0 18px}
#kzwrap .dopod-q,#adwrap .dopod-q{margin:0 0 22px}
#kzwrap .dopo-foto,#kzwrap .dopo-mono,#adwrap .dopo-foto,#adwrap .dopo-mono{margin-bottom:14px}
#kzwrap .dopo-n,#adwrap .dopo-n{padding-top:15px}
#kzwrap .dopod-n,#adwrap .dopod-n{padding-top:16px}
#kzwrap .dopo-r,#adwrap .dopo-r{margin-top:3px}
#kzwrap .dopod-r,#adwrap .dopod-r{margin-top:5px}
#kzwrap .dopod-bdg,#adwrap .dopod-bdg{padding:5px 10px;margin-top:14px}


/* ============================================================
   #apwrap — Audyt Praktyki Stomatologicznej — scoped CSS
   v60-standard: WCAG contrast tokens + kotiwca wartości
   ============================================================ */
#apwrap{--navy:#1B2C4F;--gold:#C9A24A;--hot:#D9B560;--gold-ink:#806515;--red-ink:#B83535;--green-ink:#277044;--blk:#0F1B30;--muted:rgba(27,44,79,.65);--cream:#F8F6F1;--cream2:#F3F0EA;font-family:Figtree,system-ui,sans-serif;color:#1A1A1A}
#apwrap .ap-hero{background:linear-gradient(165deg,#0d1c36 0%,#1B2C4F 60%,#0F2244 100%);color:#fff;padding:96px 28px 80px;position:relative;overflow:hidden}
#apwrap .ap-hero::before{content:'';position:absolute;top:-200px;right:-200px;width:600px;height:600px;background:radial-gradient(circle,rgba(201,162,74,.07) 0%,transparent 65%);pointer-events:none}
#apwrap .ap-hero-inner{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1fr 420px;gap:64px;align-items:center}
#apwrap .ap-eyebrow{font-size:13px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:#D9B560;margin-bottom:20px}
#apwrap .ap-h1{font-family:'Instrument Serif',Georgia,serif;font-size:clamp(36px,5vw,62px);line-height:1.04;font-weight:400;color:#fff;margin:0 0 22px;letter-spacing:-.01em}
#apwrap .ap-h1 em{color:#D9B560;font-style:italic}
#apwrap .ap-lead{font-size:18px;color:rgba(255,255,255,.78);line-height:1.65;margin:0 0 36px;max-width:58ch}
#apwrap .ap-hero-cta{display:flex;gap:12px;flex-wrap:wrap}
#apwrap .btn-primary{background:#C9A24A;color:#fff;border:none;padding:16px 32px;font-size:16px;font-weight:700;border-radius:8px;cursor:pointer;transition:background .18s;font-family:Figtree,system-ui,sans-serif;letter-spacing:.01em}
#apwrap .btn-primary:hover{background:#D9B560}
#apwrap .btn-ghost{background:transparent;color:rgba(255,255,255,.85);border:1.5px solid rgba(255,255,255,.3);padding:15px 28px;font-size:16px;font-weight:600;border-radius:8px;cursor:pointer;transition:border-color .18s;font-family:Figtree,system-ui,sans-serif}
#apwrap .btn-ghost:hover{border-color:rgba(255,255,255,.6)}
/* Price card */
#apwrap .ap-price-card{background:rgba(255,255,255,.06);border:1px solid rgba(201,162,74,.3);border-radius:16px;padding:36px 32px;backdrop-filter:blur(8px)}
#apwrap .ap-price-badge{font-size:13px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#D9B560;margin-bottom:16px}
#apwrap .ap-price-main{font-family:'Instrument Serif',Georgia,serif;font-size:clamp(30px,3.5vw,42px);color:#fff;line-height:1.1;margin-bottom:6px;font-style:italic}
#apwrap .ap-price-sub{font-size:14px;color:rgba(255,255,255,.5);margin-bottom:24px}
#apwrap .ap-price-list{list-style:none;padding:0;margin:0 0 28px;display:grid;gap:11px}
#apwrap .ap-price-list li{display:flex;gap:10px;align-items:flex-start;font-size:14px;color:rgba(255,255,255,.82);line-height:1.5}
#apwrap .ap-price-list li::before{content:'✓';color:#D9B560;font-weight:900;flex-shrink:0;margin-top:1px}
#apwrap .ap-price-note{font-size:14px;color:rgba(255,255,255,.45);line-height:1.5}
/* Stats strip */
#apwrap .ap-stats{background:var(--cream);padding:48px 28px;border-bottom:1px solid rgba(27,44,79,.07)}
#apwrap .ap-stats-inner{max-width:900px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);gap:24px;text-align:center}
#apwrap .ap-stat-n{font-family:'Instrument Serif',Georgia,serif;font-size:clamp(36px,4vw,52px);color:var(--navy);line-height:1;font-style:italic}
#apwrap .ap-stat-l{font-size:14px;color:var(--muted);margin-top:6px;line-height:1.4;font-weight:500}
/* Co dostajesz */
#apwrap .ap-gets{background:#fff;padding:88px 28px;border-bottom:1px solid rgba(27,44,79,.06)}
#apwrap .ap-gets-inner{max-width:1100px;margin:0 auto}
#apwrap .ap-section-label{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-ink);margin-bottom:18px}
#apwrap .ap-section-label::before{content:'';display:block;width:24px;height:2px;background:var(--gold)}
#apwrap .ap-h2{font-family:'Instrument Serif',Georgia,serif;font-size:clamp(30px,4vw,48px);color:var(--navy);line-height:1.08;font-weight:400;margin:0 0 14px;letter-spacing:-.01em}
#apwrap .ap-section-lead{font-size:17px;color:var(--muted);line-height:1.6;margin:0 0 48px;max-width:62ch}
#apwrap .ap-gets-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
#apwrap .ap-get-card{background:var(--cream);padding:26px 24px;border-bottom:3px solid var(--gold);border-radius:0}
#apwrap .ap-get-num{font-family:'Instrument Serif',Georgia,serif;font-size:44px;color:rgba(201,162,74,.2);line-height:1;font-style:italic;margin-bottom:12px}
#apwrap .ap-get-h3{font-family:'Instrument Serif',Georgia,serif;font-size:18px;color:#1A1A1A;line-height:1.3;margin:0 0 8px}
#apwrap .ap-get-p{font-size:14px;color:var(--muted);line-height:1.6}
/* Kwalifikacja */
#apwrap .ap-qual{background:var(--cream);padding:80px 28px;border-top:1px solid rgba(27,44,79,.07)}
#apwrap .ap-qual-inner{max-width:960px;margin:0 auto}
#apwrap .ap-qual-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:40px}
#apwrap .ap-qual-col{padding:32px 28px;border-radius:12px}
#apwrap .ap-qual-yes{background:#fff;border-top:4px solid var(--green-ink)}
#apwrap .ap-qual-no{background:#fff;border-top:4px solid rgba(27,44,79,.2)}
#apwrap .ap-qual-head{font-size:13px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;margin-bottom:22px;padding-bottom:14px;border-bottom:1px solid rgba(27,44,79,.08)}
#apwrap .ap-qual-yes .ap-qual-head{color:var(--green-ink)}
#apwrap .ap-qual-no .ap-qual-head{color:var(--muted)}
#apwrap .ap-qual-list{list-style:none;padding:0;margin:0;display:grid;gap:12px}
#apwrap .ap-qual-list li{display:flex;gap:10px;font-size:16px;line-height:1.5;color:var(--muted);align-items:flex-start}
#apwrap .ap-qual-list li span{flex-shrink:0;font-weight:900;margin-top:1px}
/* Prowadzący */
#apwrap .ap-host{background:#fff;padding:80px 28px;border-top:1px solid rgba(27,44,79,.06)}
#apwrap .ap-host-inner{max-width:940px;margin:0 auto;display:grid;grid-template-columns:220px 1fr;gap:56px;align-items:center}
#apwrap .ap-host-photo{width:220px;height:270px;object-fit:cover;border-radius:4px;filter:grayscale(15%)}
#apwrap .ap-host-name{font-family:'Instrument Serif',Georgia,serif;font-size:32px;color:var(--navy);margin:0 0 6px}
#apwrap .ap-host-role{font-size:14px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--gold-ink);margin-bottom:18px}
#apwrap .ap-host-bio{font-size:16px;color:var(--muted);line-height:1.7;margin-bottom:18px}
#apwrap .ap-host-badges{display:flex;flex-wrap:wrap;gap:8px}
#apwrap .ap-host-badge{font-size:14px;font-weight:600;color:var(--navy);background:var(--cream);padding:5px 12px;border-radius:20px}
/* Opinie */
#apwrap .ap-opinions{background:var(--cream);padding:80px 28px;border-top:1px solid rgba(27,44,79,.07)}
#apwrap .ap-opinions-inner{max-width:1060px;margin:0 auto}
/* Inwestycja */
#apwrap .ap-invest{background:linear-gradient(180deg,#0F1B30,#1B2C4F);color:#fff;padding:88px 28px;position:relative;overflow:hidden;border-top:1px solid rgba(201,162,74,.12)}
#apwrap .ap-invest::before{content:'';position:absolute;bottom:-120px;left:-120px;width:480px;height:480px;background:radial-gradient(circle,rgba(201,162,74,.06) 0%,transparent 65%);pointer-events:none}
#apwrap .ap-invest-inner{max-width:860px;margin:0 auto;position:relative;text-align:center}
#apwrap .ap-invest-eyebrow{font-size:13px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:#D9B560;margin-bottom:20px}
#apwrap .ap-invest-h2{font-family:'Instrument Serif',Georgia,serif;font-size:clamp(32px,4.5vw,52px);color:#fff;line-height:1.05;font-weight:400;margin:0 0 14px}
#apwrap .ap-invest-price{font-family:'Instrument Serif',Georgia,serif;font-size:clamp(40px,5.5vw,64px);color:#D9B560;font-style:italic;line-height:1;margin:20px 0 8px}
#apwrap .ap-invest-price-note{font-size:14px;color:rgba(255,255,255,.5);margin-bottom:32px}
#apwrap .ap-invest-includes{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;max-width:600px;margin:0 auto 32px;text-align:left}
#apwrap .ap-invest-item{display:flex;gap:10px;align-items:flex-start;font-size:14px;color:rgba(255,255,255,.85);line-height:1.5}
#apwrap .ap-invest-item::before{content:'✓';color:#D9B560;font-weight:900;flex-shrink:0;margin-top:1px}
#apwrap .ap-invest-cta{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:8px}
/* Cross-sell */
#apwrap .ap-cross{background:#fff;padding:64px 28px;border-top:1px solid rgba(27,44,79,.06)}
#apwrap .ap-cross-inner{max-width:880px;margin:0 auto}
#apwrap .ap-cross-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-top:32px}
#apwrap .ap-cross-card{display:block;padding:28px 24px;background:var(--cream);text-decoration:none;color:inherit;border-top:3px solid var(--gold);transition:transform .18s}
#apwrap .ap-cross-card:hover{transform:translateY(-3px)}
#apwrap .ap-cross-tag{font-size:13px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-ink);margin-bottom:10px}
#apwrap .ap-cross-h3{font-family:'Instrument Serif',Georgia,serif;font-size:22px;color:var(--navy);margin:0 0 10px;line-height:1.2}
#apwrap .ap-cross-p{font-size:14px;color:var(--muted);line-height:1.55;margin:0 0 16px}
#apwrap .ap-cross-footer{display:flex;justify-content:space-between;align-items:center;padding-top:14px;border-top:1px solid rgba(27,44,79,.08)}
#apwrap .ap-cross-price{font-size:14px;color:var(--muted);font-weight:600}
#apwrap .ap-cross-link{font-size:14px;font-weight:700;color:var(--gold-ink);display:flex;align-items:center;gap:5px}
/* Final CTA */
#apwrap .ap-final{background:#0F1B30;padding:96px 28px;text-align:center}
#apwrap .ap-final-inner{max-width:700px;margin:0 auto}
#apwrap .ap-final-eyebrow{font-size:13px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:rgba(217,181,96,.85);margin-bottom:20px}
#apwrap .ap-final-h2{font-family:'Instrument Serif',Georgia,serif;font-size:clamp(36px,5vw,58px);color:#fff;line-height:1.05;font-weight:400;margin:0 0 16px}
#apwrap .ap-final-h2 em{color:#D9B560;font-style:italic;display:block}
#apwrap .ap-final-p{font-family:'Instrument Serif',Georgia,serif;font-style:italic;font-size:18px;color:rgba(255,255,255,.7);margin:0 0 36px;line-height:1.6}
#apwrap .btn-final{background:var(--gold);color:#fff;border:none;padding:18px 36px;font-size:16px;font-weight:700;border-radius:8px;cursor:pointer;font-family:Figtree,system-ui,sans-serif;transition:background .18s}
#apwrap .btn-final:hover{background:#D9B560}
#apwrap .btn-final-ghost{background:transparent;color:rgba(255,255,255,.75);border:1.5px solid rgba(255,255,255,.28);padding:17px 28px;font-size:16px;font-weight:600;border-radius:8px;cursor:pointer;font-family:Figtree,system-ui,sans-serif;transition:border-color .18s}
#apwrap .btn-final-ghost:hover{border-color:rgba(255,255,255,.55)}
/* Responsive */
@media(max-width:900px){
  #apwrap .ap-hero-inner{grid-template-columns:1fr}
  #apwrap .ap-price-card{display:none}
  #apwrap .ap-stats-inner{grid-template-columns:repeat(2,1fr)}
  #apwrap .ap-gets-grid{grid-template-columns:repeat(2,1fr)}
  #apwrap .ap-qual-grid{grid-template-columns:1fr}
  #apwrap .ap-host-inner{grid-template-columns:1fr;text-align:center}
  #apwrap .ap-host-photo{width:160px;height:200px}
  #apwrap .ap-host-badges{justify-content:center}
    #apwrap .ap-invest-includes{grid-template-columns:1fr}
  #apwrap .ap-cross-grid{grid-template-columns:1fr}
}
@media(max-width:560px){
  #apwrap .ap-gets-grid{grid-template-columns:1fr}
  #apwrap .ap-stats-inner{grid-template-columns:repeat(2,1fr)}
}

#page-audyty section:first-of-type{position:relative;overflow:hidden}#page-audyty section:first-of-type::before{content:'';position:absolute;inset:0;background-image:linear-gradient(180deg,rgba(15,27,48,.94) 0%,rgba(15,27,48,.86) 60%,rgba(10,19,34,.95) 100%),url('https://images.unsplash.com/photo-1554224155-cfa08c2a758f?auto=format&fit=crop&w=1600&q=80');background-size:cover;background-position:center;z-index:0;filter:saturate(.85)}#page-audyty section:first-of-type > *{position:relative;z-index:1}

/* ==== #adwrap — Audyt Doradczy 1-on-1 — scoped CSS ==== */
#adwrap{--navy:#1B2C4F;--gold:#C9A24A;--hot:#D9B560;--gold-ink:#806515;--red-ink:#B83535;--green-ink:#277044;--blk:#0F1B30;--muted:rgba(27,44,79,.65);--cream:#F8F6F1;--cream2:#F3F0EA;font-family:Figtree,system-ui,sans-serif;color:#1A1A1A}
#adwrap *{box-sizing:border-box;margin:0;padding:0}
#adwrap .ad-hero{background:linear-gradient(160deg,#06111f 0%,#0d1e38 55%,#091526 100%);color:#fff;padding:96px 28px 88px;position:relative;overflow:hidden}
#adwrap .ad-hero::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 700px 500px at 80% 30%,rgba(201,162,74,.055) 0%,transparent 70%);pointer-events:none}
#adwrap .ad-hero-inner{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,380px);gap:64px;align-items:center}
#adwrap .ad-eyebrow{font-size:13px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:var(--hot);margin-bottom:20px;display:flex;align-items:center;gap:12px}
#adwrap .ad-eyebrow-line{display:block;width:32px;height:1px;background:rgba(217,181,96,.5)}
#adwrap .ad-h1{font-family:'Instrument Serif',Georgia,serif;font-size:clamp(36px,5vw,64px);line-height:1.05;font-weight:400;color:#fff;margin:0 0 24px;letter-spacing:-.015em}
#adwrap .ad-h1 em{color:var(--hot);font-style:italic}
#adwrap .ad-lead{font-size:clamp(15px,1.4vw,18px);color:rgba(255,255,255,.76);line-height:1.7;margin:0 0 36px;max-width:54ch}
#adwrap .ad-hero-btns{display:flex;gap:14px;flex-wrap:wrap;align-items:center}
#adwrap .btn-gold{background:var(--gold);color:var(--navy);border:none;padding:15px 30px;font-size:16px;font-weight:800;border-radius:8px;cursor:pointer;font-family:Figtree,system-ui,sans-serif;letter-spacing:.02em;transition:background .18s,transform .15s;white-space:nowrap}
#adwrap .btn-gold:hover{background:var(--hot);transform:translateY(-2px)}
#adwrap .btn-ghost-w{background:transparent;color:rgba(255,255,255,.8);border:1.5px solid rgba(255,255,255,.28);padding:14px 26px;font-size:14px;font-weight:600;border-radius:8px;cursor:pointer;font-family:Figtree,system-ui,sans-serif;transition:border-color .18s}
#adwrap .btn-ghost-w:hover{border-color:rgba(255,255,255,.55)}
#adwrap .ad-price-card{min-width:0;max-width:100%;background:rgba(255,255,255,.055);border:1px solid rgba(201,162,74,.28);border-radius:16px;padding:36px 30px;backdrop-filter:blur(8px)}
#adwrap .ad-price-badge{font-size:13px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--hot);margin-bottom:16px;display:flex;align-items:center;gap:8px}
#adwrap .ad-price-badge::after{content:'';flex:1;height:1px;background:rgba(217,181,96,.25)}
#adwrap .ad-price-main{font-family:'Instrument Serif',Georgia,serif;font-size:clamp(28px,3.2vw,38px);color:#fff;line-height:1.1;margin-bottom:6px;font-style:italic}
#adwrap .ad-price-sub{font-size:14px;color:rgba(255,255,255,.45);margin-bottom:22px;line-height:1.5}
#adwrap .ad-price-features{list-style:none;margin:0 0 26px;display:grid;gap:10px}
#adwrap .ad-price-features li{display:flex;gap:9px;align-items:flex-start;font-size:14px;color:rgba(255,255,255,.78);line-height:1.5}
#adwrap .ad-price-features .chk{color:var(--hot);font-weight:700;flex-shrink:0;margin-top:1px}
#adwrap .ad-price-cta{width:100%;background:var(--gold);color:var(--navy);border:none;padding:15px;font-size:16px;font-weight:800;border-radius:8px;cursor:pointer;font-family:Figtree,system-ui,sans-serif;letter-spacing:.02em;transition:background .18s;margin-bottom:14px}
#adwrap .ad-price-cta:hover{background:var(--hot)}
#adwrap .ad-price-note{font-size:14px;color:rgba(255,255,255,.4);text-align:center;line-height:1.5}

/* Stats */
#adwrap .ad-stats{background:var(--navy);padding:40px 28px}
#adwrap .ad-stats-inner{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);gap:0}
#adwrap .ad-stat{text-align:center;padding:0 20px;position:relative}
#adwrap .ad-stat+.ad-stat::before{content:'';position:absolute;left:0;top:50%;transform:translateY(-50%);height:40px;width:1px;background:rgba(255,255,255,.12)}
#adwrap .ad-stat-num{font-family:'Instrument Serif',Georgia,serif;font-size:clamp(28px,3.5vw,42px);color:var(--hot);font-style:italic;line-height:1}
#adwrap .ad-stat-lbl{font-size:14px;color:rgba(255,255,255,.55);margin-top:6px;letter-spacing:.02em;line-height:1.4}

/* Deliverables */
#adwrap .ad-section{padding:80px 28px;background:var(--cream)}
#adwrap .ad-section.dark{background:var(--navy);color:#fff}
#adwrap .ad-section-inner{max-width:1100px;margin:0 auto}
#adwrap .ad-section-eyebrow{font-size:13px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-ink);margin-bottom:14px}
#adwrap .dark .ad-section-eyebrow{color:var(--hot)}
#adwrap .ad-section-title{font-family:'Instrument Serif',Georgia,serif;font-size:clamp(28px,3.8vw,46px);color:var(--navy);font-weight:400;margin-bottom:14px;letter-spacing:-.01em;line-height:1.15}
#adwrap .dark .ad-section-title{color:#fff}
#adwrap .ad-section-lead{font-size:clamp(15px,1.35vw,17px);color:var(--muted);max-width:58ch;line-height:1.7;margin-bottom:52px}
#adwrap .dark .ad-section-lead{color:rgba(255,255,255,.62)}
#adwrap .ad-del-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
#adwrap .ad-del-card{background:#fff;border:1.5px solid rgba(27,44,79,.08);border-radius:12px;padding:30px 26px;transition:box-shadow .2s,border-color .2s;position:relative}
#adwrap .ad-del-card:hover{box-shadow:0 8px 28px rgba(27,44,79,.1);border-color:rgba(201,162,74,.35)}
#adwrap .ad-del-step{width:38px;height:38px;background:linear-gradient(135deg,var(--navy),#2a4578);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:800;color:var(--hot);margin-bottom:18px;font-family:Figtree,system-ui,sans-serif}
#adwrap .ad-del-title{font-size:16px;font-weight:700;color:var(--navy);margin-bottom:9px;line-height:1.35}
#adwrap .ad-del-body{font-size:15px;color:var(--muted);line-height:1.65}

/* Qual */
#adwrap .ad-qual-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}
#adwrap .ad-qual-col{background:#fff;border-radius:14px;padding:32px 28px}
#adwrap .ad-qual-col.tak{border-top:3px solid var(--green-ink)}
#adwrap .ad-qual-col.nie{border-top:3px solid var(--red-ink)}
#adwrap .ad-qual-heading{font-size:14px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;margin-bottom:20px}
#adwrap .ad-qual-col.tak .ad-qual-heading{color:var(--green-ink)}
#adwrap .ad-qual-col.nie .ad-qual-heading{color:var(--red-ink)}
#adwrap .ad-qual-list{list-style:none;display:grid;gap:12px}
#adwrap .ad-qual-item{display:flex;gap:11px;align-items:flex-start;font-size:14px;color:#333;line-height:1.55}
#adwrap .ad-qual-icon{flex-shrink:0;font-weight:800;margin-top:1px;font-size:14px}
#adwrap .ad-qual-col.tak .ad-qual-icon{color:var(--green-ink)}
#adwrap .ad-qual-col.nie .ad-qual-icon{color:var(--red-ink)}
#adwrap .ad-qual-redir{font-size:14px;color:var(--muted);margin-top:6px;padding-left:25px;font-style:italic}
#adwrap .ad-qual-link{color:var(--gold-ink);cursor:pointer;text-decoration:underline}

/* Host */
#adwrap .ad-host-grid{display:grid;grid-template-columns:1fr 480px;gap:64px;align-items:start}
#adwrap .ad-host-photo{width:160px;height:160px;border-radius:50%;object-fit:cover;object-position:center top;border:3px solid rgba(201,162,74,.4);margin-bottom:20px;display:block}
#adwrap .ad-host-name{font-family:'Instrument Serif',Georgia,serif;font-size:28px;color:#fff;font-weight:400;margin-bottom:4px}
#adwrap .ad-host-role{font-size:14px;color:var(--hot);font-weight:600;letter-spacing:.04em;margin-bottom:18px}
#adwrap .ad-host-bio{font-size:16px;color:rgba(255,255,255,.72);line-height:1.75;margin-bottom:18px}
#adwrap .ad-host-creds{display:flex;flex-wrap:wrap;gap:8px}
#adwrap .ad-host-tag{font-size:14px;font-weight:600;padding:5px 12px;border-radius:30px;background:rgba(217,181,96,.12);color:var(--hot);border:1px solid rgba(217,181,96,.22);letter-spacing:.02em}
#adwrap .ad-video-wrapper{position:relative;border-radius:12px;overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,.4);background:#000;aspect-ratio:16/9}
#adwrap .ad-video-wrapper iframe{position:absolute;inset:0;width:100%;height:100%;border:none}

/* Testimonials */

/* Invest */
#adwrap .ad-invest{padding:88px 28px;background:linear-gradient(160deg,#0d1e38 0%,#1B2C4F 60%,#0F2244 100%);position:relative;overflow:hidden}
#adwrap .ad-invest::before{content:'';position:absolute;bottom:-100px;right:-100px;width:500px;height:500px;background:radial-gradient(circle,rgba(201,162,74,.06) 0%,transparent 65%);pointer-events:none}
#adwrap .ad-invest-inner{max-width:700px;margin:0 auto;text-align:center;position:relative;z-index:1}
#adwrap .ad-invest-badge{font-size:13px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:var(--hot);margin-bottom:20px;display:inline-block}
#adwrap .ad-invest-headline{font-family:'Instrument Serif',Georgia,serif;font-size:clamp(24px,3vw,36px);color:#fff;font-weight:400;margin-bottom:12px;line-height:1.2}
#adwrap .ad-invest-price{font-family:'Instrument Serif',Georgia,serif;font-size:clamp(38px,6vw,64px);color:var(--hot);font-style:italic;line-height:1;margin-bottom:8px}
#adwrap .ad-invest-sub{font-size:14px;color:rgba(255,255,255,.5);margin-bottom:32px;line-height:1.5}
#adwrap .ad-invest-features{list-style:none;text-align:left;max-width:440px;margin:0 auto 36px;display:grid;gap:11px}
#adwrap .ad-invest-features li{display:flex;gap:10px;align-items:flex-start;font-size:14px;color:rgba(255,255,255,.78);line-height:1.55}
#adwrap .ad-invest-features .ic{color:var(--hot);font-weight:700;flex-shrink:0;margin-top:1px}
#adwrap .ad-invest-cta{background:var(--gold);color:var(--navy);border:none;padding:18px 48px;font-size:16px;font-weight:800;border-radius:8px;cursor:pointer;font-family:Figtree,system-ui,sans-serif;letter-spacing:.02em;transition:background .18s,transform .15s;display:inline-block;margin-bottom:14px}
#adwrap .ad-invest-cta:hover{background:var(--hot);transform:translateY(-2px)}
#adwrap .ad-invest-guarantee{font-size:14px;color:rgba(255,255,255,.4);line-height:1.5}

/* Cross-sell */
#adwrap .ad-cross{padding:60px 28px;background:var(--cream2);border-top:1px solid rgba(27,44,79,.07)}
#adwrap .ad-cross-inner{max-width:1100px;margin:0 auto}
#adwrap .ad-cross-label{font-size:13px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-ink);margin-bottom:14px}
#adwrap .ad-cross-title{font-family:'Instrument Serif',Georgia,serif;font-size:clamp(22px,2.8vw,32px);color:var(--navy);font-weight:400;margin-bottom:36px}
#adwrap .ad-cross-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;max-width:720px}
#adwrap .ad-cross-card{background:#fff;border:1.5px solid rgba(27,44,79,.09);border-radius:12px;padding:26px 24px;cursor:pointer;transition:border-color .18s,box-shadow .18s;text-align:left;display:block;width:100%}
#adwrap .ad-cross-card:hover{border-color:var(--gold);box-shadow:0 6px 22px rgba(27,44,79,.1)}
#adwrap .ad-cross-tag{font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-ink);margin-bottom:10px}
#adwrap .ad-cross-name{font-size:16px;font-weight:700;color:var(--navy);margin-bottom:6px;line-height:1.3}
#adwrap .ad-cross-desc{font-size:14px;color:var(--muted);line-height:1.55}
#adwrap .ad-cross-arrow{font-size:18px;color:var(--gold);margin-top:14px;display:block;transition:transform .15s}
#adwrap .ad-cross-card:hover .ad-cross-arrow{transform:translateX(4px)}

/* Final CTA */
#adwrap .ad-final{padding:72px 28px;background:#fff;text-align:center}
#adwrap .ad-final-inner{max-width:620px;margin:0 auto}
#adwrap .ad-final-title{font-family:'Instrument Serif',Georgia,serif;font-size:clamp(26px,3.5vw,40px);color:var(--navy);font-weight:400;margin-bottom:16px;line-height:1.2}
#adwrap .ad-final-sub{font-size:16px;color:var(--muted);line-height:1.7;margin-bottom:36px}
#adwrap .ad-final-cta{background:var(--gold);color:var(--navy);border:none;padding:18px 48px;font-size:16px;font-weight:800;border-radius:8px;cursor:pointer;font-family:Figtree,system-ui,sans-serif;letter-spacing:.02em;transition:background .18s,transform .15s}
#adwrap .ad-final-cta:hover{background:var(--hot);transform:translateY(-2px)}
#adwrap .ad-final-note{font-size:14px;color:rgba(27,44,79,.35);margin-top:14px}

/* Responsive */
@media(max-width:900px){
#adwrap .ad-hero-inner,#adwrap .ad-host-grid{grid-template-columns:1fr;gap:36px}
/* .ad-hero mial overflow:hidden, wiec przycisk szerszy od kolumny byl ucinany
   bez mozliwosci przewiniecia — na 320 px znikalo 137 px glownego CTA. */
#adwrap .ad-hero-btns{flex-wrap:wrap}
#adwrap .ad-hero-btns>*,#adwrap .ad-price-cta{max-width:100%;white-space:normal}
#adwrap .ad-stats-inner{grid-template-columns:repeat(2,1fr);gap:24px}
#adwrap .ad-del-grid,#adwrap .ad-qual-grid,#adwrap .ad-cross-cards{grid-template-columns:1fr}
#adwrap .ad-stat+.ad-stat::before{display:none}
}


/* Selektory MUSZĄ mieć prefiks #adwrap — reset "#adwrap *{margin:0;padding:0}" (linia ~12905)
   ma specyficzność ID i bije gołe klasy. Bez prefiksu widget traci padding i wyśrodkowanie. */
#adwrap .ad-book{background:#F8F6F1;padding:76px 24px;border-top:1px solid rgba(201,162,74,.32)}
/* skok z CTA nie moze chowac naglowka pod przyklejona belka (jak .wz section[id]) */
#adwrap #booking{scroll-margin-top:96px}
#adwrap .bk-inner{max-width:880px;margin:0 auto}
#adwrap .bk-h2{font-family:'Instrument Serif',Georgia,serif;font-size:clamp(30px,4.4vw,42px);font-weight:400;color:#1B2C4F;margin:14px 0 10px;line-height:1.12}
#adwrap .bk-lead{font-size:17px;color:rgba(27,44,79,.78);margin:0 0 26px;max-width:560px;line-height:1.55}
#adwrap .bk-karta{background:#fff;border:1px solid #E0DDD8;border-radius:14px;box-shadow:0 2px 12px rgba(0,0,0,.06);padding:26px 26px 30px;min-height:180px}
#adwrap .bk-stan{color:#5C6471;font-size:15px;padding:34px 0;text-align:center}
#adwrap .bk-stan.blad{color:#8f3f37}
#adwrap .bk-dni{display:flex;gap:8px;overflow-x:auto;padding:2px 2px 12px;-webkit-overflow-scrolling:touch}
#adwrap .bk-dzien{flex:0 0 auto;min-width:64px;min-height:64px;border:1px solid #E0DDD8;border-radius:10px;background:#fff;cursor:pointer;font-family:'Figtree',system-ui,sans-serif;padding:8px 6px;text-align:center;transition:border-color .15s}
#adwrap .bk-dzien small{display:block;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:#5C6471}
#adwrap .bk-dzien strong{display:block;font-size:19px;color:#1B2C4F;font-weight:700;margin-top:2px}
#adwrap .bk-dzien:hover:not(:disabled){border-color:#C9A24A}
#adwrap .bk-dzien:disabled{opacity:.38;cursor:default}
#adwrap .bk-dzien[aria-pressed="true"]{background:#1B2C4F;border-color:#1B2C4F}
#adwrap .bk-dzien[aria-pressed="true"] small,#adwrap .bk-dzien[aria-pressed="true"] strong{color:#fff}
#adwrap .bk-linia{height:1px;background:rgba(201,162,74,.4);margin:8px 0 14px}
#adwrap .bk-wybrany{font-family:'Lora',Georgia,serif;font-style:italic;color:#1B2C4F;font-size:17px;margin:0 0 12px}
#adwrap .bk-godziny{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
@media(max-width:560px){#adwrap .bk-godziny{grid-template-columns:repeat(3,minmax(0,1fr))}}
#adwrap .bk-slot{border:1px solid #E0DDD8;border-radius:8px;background:#fff;padding:11px 4px;font-size:15px;font-weight:600;color:#1B2C4F;cursor:pointer;min-height:44px;font-family:'Figtree',system-ui,sans-serif;transition:border-color .15s}
#adwrap .bk-slot:hover{border-color:#C9A24A}
#adwrap .bk-slot:focus-visible,#adwrap .bk-dzien:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(201,162,74,.35)}
#adwrap .bk-pusto{color:#5C6471;font-size:14px;padding:10px 0}
#adwrap .bk-pods{display:flex;flex-wrap:wrap;align-items:center;gap:10px;background:#F8F6F1;border:1px solid #E0DDD8;border-radius:10px;padding:10px 14px;margin:0 0 18px;font-size:15px;color:#1B2C4F}
#adwrap .bk-pods button{border:none;background:none;color:#7A5E1F;text-decoration:underline;cursor:pointer;font:inherit;font-size:14px;padding:0}
#adwrap .bk-pola{display:grid;gap:14px}
#adwrap .bk-r2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media(max-width:560px){#adwrap .bk-r2{grid-template-columns:1fr}}
#adwrap .bk-pole label{display:block;font-size:13px;font-weight:700;letter-spacing:.04em;color:#1B2C4F;margin:0 0 5px}
#adwrap .bk-pole input,#adwrap .bk-pole textarea{width:100%;box-sizing:border-box;padding:12px 13px;border:1px solid #E0DDD8;border-radius:9px;font:inherit;font-size:16px;background:#fff;color:#1A1A1A}
#adwrap .bk-pole input:focus,#adwrap .bk-pole textarea:focus{outline:none;border-color:#C9A24A;box-shadow:0 0 0 3px rgba(201,162,74,.22)}
#adwrap .bk-pole .bk-hint{font-size:12.5px;color:#5C6471;margin-top:4px}
#adwrap .bk-pole .bk-err{font-size:13px;color:#8f3f37;margin-top:4px;min-height:1em}
#adwrap .bk-pole input[aria-invalid="true"],#adwrap .bk-pole textarea[aria-invalid="true"]{border-color:#8f3f37;box-shadow:0 0 0 3px rgba(143,63,55,.14)}
#adwrap .bk-gotcha{position:absolute;left:-9999px;opacity:0;height:0;overflow:hidden}
#adwrap .bk-wyslij{margin-top:6px;width:100%;background:#C9A24A;color:#1B2C4F;border:none;border-radius:10px;padding:15px 20px;font-size:16px;font-weight:800;letter-spacing:.03em;cursor:pointer;font-family:'Figtree',system-ui,sans-serif;transition:background .15s,transform .15s}
#adwrap .bk-wyslij:hover{background:#B8902F;transform:translateY(-1px)}
#adwrap .bk-wyslij:disabled{opacity:.6;cursor:wait;transform:none}
#adwrap .bk-rodo{font-size:13px;color:#5C6471;margin:10px 0 0;line-height:1.5}
#adwrap .bk-rodo a{color:#7A5E1F;cursor:pointer;text-decoration:underline}
#adwrap .bk-blad-glowny{color:#8f3f37;font-size:14px;margin:0 0 12px;min-height:0}
#adwrap .bk-sukces{text-align:center;padding:16px 6px}
#adwrap .bk-check{width:56px;height:56px;border-radius:50%;background:#1B2C4F;color:#C9A24A;font-size:30px;line-height:56px;margin:0 auto 14px}
#adwrap .bk-sukces h3{font-family:'Instrument Serif',Georgia,serif;font-weight:400;font-size:30px;color:#1B2C4F;margin:0 0 10px}
#adwrap .bk-sukces p{font-size:15.5px;color:rgba(27,44,79,.82);line-height:1.6;max-width:480px;margin:0 auto 14px}
#adwrap .bk-ics{display:inline-block;border:1px solid #C9A24A;color:#7A5E1F;border-radius:9px;padding:10px 18px;font-size:14.5px;font-weight:700;text-decoration:none;background:#fff}
#adwrap .bk-ics:hover{background:#FBF6EA}
#adwrap .bk-fallback{font-size:14px;color:#5C6471;margin:16px 2px 0}
#adwrap .bk-fallback a{color:#7A5E1F}
#adwrap .bk-ponow{margin-top:10px;border:1px solid #E0DDD8;background:#fff;border-radius:8px;padding:9px 16px;font:inherit;font-size:14px;cursor:pointer;color:#1B2C4F}
@media(prefers-reduced-motion:reduce){#adwrap .bk-wyslij,#adwrap .bk-dzien,#adwrap .bk-slot{transition:none}}

#katalog .faq .a p{margin:0 0 10px}#katalog .faq .a p:last-child{margin-bottom:0}#katalog .faq details summary{font-weight:700}

@media(max-width:860px){.newsletter-grid-resp{grid-template-columns:1fr!important;gap:32px!important}}


@media(max-width:880px){.dop-photo-mosaic{grid-template-columns:repeat(6,1fr)!important}}
@media(max-width:480px){.dop-photo-mosaic{grid-template-columns:repeat(4,1fr)!important}}


/* Schowany: translateY(calc(100% + 64px)), nie 120% (29.09.2026). 120% liczy się od WYSOKOŚCI paska
   (54 px → 65 px), a pasek stoi 24 px nad krawędzią — na komputerze 13 px paska wystawało spod ekranu
   na każdej stronie, także po kliknięciu „×". 64 px = odstęp od dołu (na telefonie z wcięciem do 34 px)
   + cień sięgający ~24 px nad pasek. */
.sticky-cta{position:fixed;bottom:24px;right:24px;z-index:8999;display:flex;align-items:center;gap:0;background:#C9A24A;box-shadow:0 8px 32px rgba(27,44,79,.25),0 2px 8px rgba(27,44,79,.15);transform:translateY(calc(100% + 64px));transition:transform .35s cubic-bezier(.2,.8,.2,1);font-family:'Figtree',system-ui,-apple-system,sans-serif;border-radius:10px;overflow:hidden}
.sticky-cta.visible{transform:translateY(0)}
/* Napis jak „Akceptuję" w banerze zgody (01.10.2026, prośba Michała): zwykłe litery, ten sam granat i waga. */
.sticky-cta-btn{min-height:54px;padding:16px 24px;color:#1B2C4F;font-weight:700;font-size:15px;letter-spacing:.01em;text-transform:none;background:none;border:none;cursor:pointer;display:flex;align-items:center;gap:10px;transition:background .15s;font-family:inherit}
.sticky-cta-btn:hover{background:#D9B560}
.sticky-cta-arrow{font-size:16px;line-height:1}
.sticky-cta-wa{display:none;align-items:center;justify-content:center;min-width:52px;min-height:48px;align-self:stretch;background:#128C7E;color:#fff;text-decoration:none}
.sticky-cta-wa:hover{background:#0e6f64}
.sticky-cta-phone{align-self:stretch;padding:16px 18px;border-left:1px solid rgba(27,44,79,.18);color:#1A1A1A;font-weight:700;font-size:14px;text-decoration:none;letter-spacing:.02em;display:flex;align-items:center;gap:8px;transition:background .15s;font-family:inherit}
.sticky-cta-phone:hover{background:#D9B560}
.sticky-cta-close{align-self:stretch;min-width:44px;padding:14px 12px;border:none;border-left:1px solid rgba(27,44,79,.18);background:none;color:rgba(27,44,79,.68);font-size:18px;cursor:pointer;line-height:1;transition:color .15s}
.sticky-cta-close:hover{color:#1A1A1A}
.sticky-cta-btn:focus-visible,.sticky-cta-phone:focus-visible,.sticky-cta-close:focus-visible,.sticky-cta-wa:focus-visible{outline:3px solid #1B2C4F;outline-offset:-3px}
@media(max-width:880px){
 .sticky-cta{left:12px;right:12px;bottom:max(12px, env(safe-area-inset-bottom))}
 .sticky-cta-btn{flex:1;justify-content:center;font-size:15px;padding:16px}
 .sticky-cta-phone{display:none}
 .sticky-cta-wa{display:flex}
}
/* Strony kursów: ten przycisk zastępuje ich własne paski (górny na komputerze, dolny na telefonie). */
.wz-topbar,.wz-botbar{display:none!important}
@media(prefers-reduced-motion:reduce){.sticky-cta{transition:none}}
@media print{.sticky-cta{display:none!important}}


/* Legal pages (polityka/regulamin) — responsive TOC */
@media(max-width:960px){
 .legal-grid-resp{grid-template-columns:1fr!important;gap:24px!important}
 .legal-toc{position:static!important;top:auto!important;padding:18px 20px;background:rgba(27,44,79,.04);border-radius:8px}
 .legal-toc nav{flex-direction:row!important;flex-wrap:wrap;gap:6px}
 .legal-toc nav a{font-size:14px!important;padding:6px 12px!important;background:#fff;border:1px solid rgba(27,44,79,.08);border-left:2px solid transparent!important}
}
@media(max-width:640px){
 .hero-stats-resp{grid-template-columns:1fr 1fr!important;gap:20px!important}
}
@media(max-width:880px){
 .blog-preview-resp{grid-template-columns:1fr!important}
}
/* === XXIII wiek MOBILE — universal grid collapse === */
@media(max-width:880px){
 /* Hero grids 1fr+380px → 1fr stacked */
 .hero-inner-resp,
 .grain-inner[style*="grid-template-columns:1fr 380px"],
 #hero-grid,
 .placeholder-grid-resp{grid-template-columns:1fr!important;gap:40px!important}
 /* Cross-link grids 2-col → 1 */
 .cross-grid-resp{grid-template-columns:1fr!important}
 /* Persona grid 1+1.4 */
 .menedzer-grid-resp{grid-template-columns:1fr!important;gap:32px!important}
 /* Pomoc grids */
 .help-grid-resp{grid-template-columns:1fr!important;gap:32px!important}
 /* Newsletter strip */
 .newsletter-grid-resp{grid-template-columns:1fr!important;gap:32px!important}
}
@media(max-width:780px){
 /* Hide floating TOC */
 #kurs-floating-toc{display:none!important}
}
@media(max-width:560px){
 /* Hero stats 1.5fr+1fr+1fr+1fr → 1+1 grid 2x2 */
 .fade-u.d4{display:grid!important;grid-template-columns:1fr 1fr!important;gap:18px 0!important}
 .fade-u.d4 > div{border-right:none!important;padding:0 14px!important;border-bottom:1px solid rgba(255,255,255,.08);padding-bottom:14px!important}
 /* Hero typography */
 .hero h1{font-size:46px!important;line-height:1.04!important}
 /* Quick-decision-bar (kurs-zarzadzania) */
 .quick-decision-resp{padding:0!important}
 /* Inhouse form padding */
 .inhouse-inner{padding:24px!important}
 /* Calendar cards */
 .cal-card{grid-template-columns:1fr!important;gap:14px!important}
 .cal-date-d{font-size:36px!important}
}
@media(max-width:400px){
 /* Tighten section paddings */
 section{padding-left:18px;padding-right:18px}
 .wrap{padding:48px 18px!important}
 /* Hero portrait card spacing */
 .fade-u.d2{margin-top:0!important}
 /* Body text smaller on tiny screens */
 .sec-h2{font-size:32px!important}
}
/* === Hero foto na kursach-zamkniętych: team meeting / lekarze / recepcja === */
#page-kurs-zamkniety-wl section.grain-bg,
#page-kurs-zamkniety-lek section.grain-bg,
#page-kurs-zamkniety-rec section.grain-bg{position:relative;overflow:hidden}
#page-kurs-zamkniety-wl section.grain-bg::before,
#page-kurs-zamkniety-lek section.grain-bg::before,
#page-kurs-zamkniety-rec section.grain-bg::before{content:'';position:absolute;inset:0;background-size:cover;background-position:center;z-index:0;filter:saturate(.85);background-image:linear-gradient(180deg,rgba(15,27,48,.94) 0%,rgba(15,27,48,.86) 60%,rgba(10,19,34,.95) 100%)}
#page-kurs-zamkniety-wl section.grain-bg::before{background-image:linear-gradient(180deg,rgba(15,27,48,.94) 0%,rgba(15,27,48,.86) 60%,rgba(10,19,34,.95) 100%),url('https://images.unsplash.com/photo-1556761175-5973dc0f32e7?auto=format&fit=crop&w=1600&q=80')}
#page-kurs-zamkniety-lek section.grain-bg::before{background-image:linear-gradient(180deg,rgba(15,27,48,.94) 0%,rgba(15,27,48,.86) 60%,rgba(10,19,34,.95) 100%),url('https://images.unsplash.com/photo-1559757148-5c350d0d3c56?auto=format&fit=crop&w=1600&q=80')}
#page-kurs-zamkniety-rec section.grain-bg::before{background-image:linear-gradient(180deg,rgba(15,27,48,.94) 0%,rgba(15,27,48,.86) 60%,rgba(10,19,34,.95) 100%),url('https://images.unsplash.com/photo-1521791136064-7986c2920216?auto=format&fit=crop&w=1600&q=80')}
#page-kurs-zamkniety-wl section.grain-bg > *,
#page-kurs-zamkniety-lek section.grain-bg > *,
#page-kurs-zamkniety-rec section.grain-bg > *{position:relative;z-index:1}

/* === MOBILE FIX: cards z minmax 540px (opinie, rada, referencje) === */
@media(max-width:880px){
 /* Stack testimonial/rada cards 200px+1fr → 1 column */
 div[style*="grid-template-columns:200px 1fr"]{grid-template-columns:1fr!important}
 div[style*="grid-template-columns:200px 1fr"] > div:first-child{min-height:240px!important;background-position:center top!important;background-size:cover!important}
 /* Auto-fit minmax(540px) → flexible */
 div[style*="minmax(540px"]{grid-template-columns:1fr!important}
 div[style*="minmax(560px"]{grid-template-columns:1fr!important}
 /* Hero calendar cards 1fr+80+100+130 (na home /#terminy) → stack */
 div[style*="grid-template-columns:1fr 80px 130px"]{grid-template-columns:1fr!important;gap:14px!important;text-align:left}
 div[style*="grid-template-columns:1fr 80px 130px"] > div{align-items:flex-start!important}
 /* Proof grid 3-col home → 1 col mobile */
 .proof-resp{grid-template-columns:1fr!important}
 /* Pricing grids */
 .pricing-grid-resp{grid-template-columns:1fr!important}
 /* Cal-grid */
 .cal-list .cal-card{grid-template-columns:1fr!important;gap:14px!important;padding:18px!important}
}


/* PRINT styles — clean paper-friendly dla polityka/regulamin */
@media print {
 .dop-header,.scroll-progress,#kurs-floating-toc,#back-to-top,#dop-cookie-banner,#dop-cookie-backdrop,.sticky-cta,.legal-toc,.dop-modal-overlay,.urgency-bar,#sticky-cta,footer{display:none!important}
 body{background:#fff!important;color:#000!important;font-size:11pt;line-height:1.5}
 .page{display:block!important}
 #page-polityka,#page-regulamin{display:block!important;background:#fff!important}
 #page-polityka section,#page-regulamin section{background:#fff!important;padding:0!important;border:none!important}
 .legal-grid-resp{grid-template-columns:1fr!important;gap:0!important}
 main{max-width:100%!important}
 h1{font-size:24pt!important;margin-bottom:12pt!important;color:#1B2C4F!important}
 h2{font-size:14pt!important;margin-top:18pt!important;color:#1B2C4F!important;page-break-after:avoid}
 p,li{font-size:11pt!important;color:#000!important;line-height:1.5!important}
 a{color:#000!important;text-decoration:underline}
 a[href]::after{content:" (" attr(href) ")";font-size:9pt;color:#666}
 a[href^="#"]::after,a[href^="mailto"]::after,a[href^="tel"]::after{content:""}
 .reveal{opacity:1!important;transform:none!important}
}

/* Hero scale-down na scroll (Apple-style) — TYLKO background foto overlay się zmniejsza, content hero stoi */
.hero > [aria-hidden],header.hero > [aria-hidden],section.grain-bg.cursor-glow > [aria-hidden]{transform:scale(var(--hero-scale,1));transform-origin:center;opacity:var(--hero-opacity,1);transition:transform .15s linear,opacity .15s linear;will-change:transform}
@media (prefers-reduced-motion:reduce){.hero > [aria-hidden],header.hero > [aria-hidden],section.grain-bg.cursor-glow > [aria-hidden]{transform:none!important;opacity:1!important}}

/* Portret play-overlay hover effect */
#hero-portret-michal:hover .portret-play-overlay,#hero-portret-michal:focus .portret-play-overlay{background:radial-gradient(ellipse at center,rgba(0,0,0,.5),rgba(0,0,0,.15) 60%)}
#hero-portret-michal:hover .portret-play-btn,#hero-portret-michal:focus .portret-play-btn{transform:scale(1.08);background:var(--hot)}

/* DOP VIDEO MODAL — fullscreen lightbox dla video */
.dop-video-modal{position:fixed;inset:0;background:rgba(10,19,34,.94);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:9500;display:none;align-items:center;justify-content:center;padding:24px;opacity:0;transition:opacity .25s}
.dop-video-modal.open{display:flex;opacity:1}
.dop-video-modal-shell{position:relative;width:100%;max-width:1000px;animation:videoModalIn .35s cubic-bezier(.22,1,.36,1)}
@keyframes videoModalIn{from{transform:translateY(20px) scale(.97);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}
.dop-video-modal-frame{position:relative;width:100%;aspect-ratio:16/9;background:#000;border-radius:12px;overflow:hidden;box-shadow:0 32px 80px -24px rgba(0,0,0,.6);border:1px solid rgba(201,162,74,.25)}
.dop-video-modal-shell.vertical{max-width:400px}
.dop-video-modal-shell.vertical .dop-video-modal-frame{aspect-ratio:9/16}
.dop-video-modal-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:none}
.dop-video-modal-title{font-family:var(--serif);font-style:italic;font-size:16px;color:rgba(255,255,255,.85);text-align:center;margin-top:16px;line-height:1.5}
.dop-video-modal-close{position:absolute;top:-44px;right:0;width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.1);color:#fff;border:1px solid rgba(255,255,255,.2);cursor:pointer;font-size:20px;line-height:1;display:flex;align-items:center;justify-content:center;transition:background .15s,transform .2s}
.dop-video-modal-close:hover{background:rgba(201,162,74,.9);color:var(--black);transform:rotate(90deg)}
@media (prefers-reduced-motion:reduce){.dop-video-modal,.dop-video-modal-shell{animation:none!important;transition:none!important}}

/* Cursor-follow gold glow na hero (premium feel) */
.cursor-glow{position:relative;overflow:hidden}
.cursor-glow::after{content:'';position:absolute;width:600px;height:600px;border-radius:50%;background:radial-gradient(circle,rgba(217,181,96,.08) 0%,rgba(217,181,96,.04) 30%,transparent 70%);pointer-events:none;left:var(--cx,50%);top:var(--cy,50%);transform:translate(-50%,-50%);opacity:0;transition:opacity .3s;z-index:0;mix-blend-mode:screen}
.cursor-glow.glow-active::after{opacity:1}
@media(hover:none){.cursor-glow::after{display:none!important}}
@media (prefers-reduced-motion:reduce){.cursor-glow::after{display:none}}

/* Fix: ref-orphan sections (opinie/gallery/case-studies/final-ref) — hide when /referencje nie aktywne */
body:not(.show-ref-orphans) [data-ref-orphan]{display:none!important}

/* Scroll progress bar — sticky 2px gold */
.scroll-progress{position:fixed;top:0;left:0;right:0;height:2px;background:transparent;z-index:9998;pointer-events:none}
.scroll-progress-bar{height:100%;width:0;background:linear-gradient(90deg,var(--gold),var(--hot));transition:width 60ms linear;transform-origin:left;box-shadow:0 0 12px rgba(201,162,74,.6)}

/* Reveal on scroll — used on stats, cards, sections */
.reveal{opacity:0;transform:translateY(24px);transition:opacity 600ms cubic-bezier(.22,1,.36,1),transform 600ms cubic-bezier(.22,1,.36,1)}
.reveal.in{opacity:1;transform:translateY(0)}
.reveal[data-delay="1"]{transition-delay:80ms}
.reveal[data-delay="2"]{transition-delay:160ms}
.reveal[data-delay="3"]{transition-delay:240ms}
.reveal[data-delay="4"]{transition-delay:320ms}
.reveal[data-delay="5"]{transition-delay:400ms}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none}}

/* Count-up — applied via JS to elements with [data-count] */
.count-up{font-variant-numeric:tabular-nums}
/* A3 — hierarchia wezwań: jedna decyzja główna, reszta obrysowa */
.dop-cta-drugorzedne{background:transparent!important;background-image:none!important;
 color:var(--gold)!important;border:1px solid rgba(201,162,74,.55)!important;box-shadow:none!important}
.dop-cta-drugorzedne:hover{background:rgba(201,162,74,.10)!important}
.dop-cta-drugorzedne *{color:inherit!important}
/* A4 — zwinięte rozliczenie w formularzu zapisu */
.dop-step2{border:1px solid rgba(27,44,79,.14);border-radius:8px;margin:4px 0 12px;background:rgba(27,44,79,.02)}
.dop-step2>summary{cursor:pointer;list-style:none;padding:12px 14px;display:flex;flex-wrap:wrap;
 align-items:baseline;gap:6px 10px;min-height:44px;box-sizing:border-box}
.dop-step2>summary::-webkit-details-marker{display:none}
.dop-step2>summary::after{content:'+';margin-left:auto;font-weight:700;color:var(--gold);font-size:18px;line-height:1}
.dop-step2[open]>summary::after{content:'−'}
.dop-step2-t{font-size:14px;font-weight:700;color:var(--black)}
.dop-step2-s{font-size:14px;color:var(--muted)}
.dop-step2-body{padding:0 14px 12px}

/* ─── Lista uczestników w formularzu zapisu (2026-09) ─── */
.dop-ucz{display:flex;flex-direction:column;gap:10px;border:1px solid rgba(27,44,79,.14);
 border-radius:8px;padding:14px;background:rgba(27,44,79,.02);margin:0;min-width:0}
.dop-ucz[hidden]{display:none!important}
.dop-ucz>legend{padding:0 4px;margin-bottom:2px}
.dop-ucz-ja{display:flex;align-items:center;gap:10px;font-size:15px;color:var(--black);
 padding:10px 12px;background:#fff;border:1px solid rgba(27,44,79,.1);border-radius:6px}
.dop-ucz.bez-zglaszajacego .dop-ucz-ja{color:var(--muted);background:rgba(27,44,79,.03)}
/* Numer osoby to jedyne oznaczenie, czyj jest wiersz — zloty na bialym daje
   kontrast 2,4:1, czyli ponizej progu czytelnosci (WCAG 1.4.3). */
.dop-ucz-nr{font-weight:700;color:var(--black);min-width:22px;font-variant-numeric:tabular-nums}
.dop-ucz-lista{display:flex;flex-direction:column;gap:10px}
.dop-ucz-row{border:1px solid rgba(27,44,79,.1);border-radius:6px;padding:12px;background:#fff;
 display:flex;flex-direction:column;gap:10px}
.dop-ucz-head{display:flex;align-items:center;gap:10px}
.dop-ucz-del{background:none;border:0;color:var(--muted);font-size:14px;
 text-decoration:underline;cursor:pointer;padding:10px 6px;min-height:44px;font-family:inherit}
.dop-ucz-del:hover{color:#8f3f37}
.dop-ucz-add{background:#fff;border:1px dashed rgba(201,162,74,.6);color:var(--warm);
 font-size:15px;font-weight:700;padding:12px 14px;min-height:44px;border-radius:6px;
 cursor:pointer;font-family:inherit;width:100%}
.dop-ucz-add:hover:not(:disabled){background:rgba(201,162,74,.08)}
.dop-ucz-add:disabled{cursor:default;border-style:solid;border-color:rgba(27,44,79,.15);
 color:var(--muted);font-weight:400}
.dop-ucz-suma{font-size:15px;color:var(--black);line-height:1.5;padding:12px 14px;
 background:rgba(201,162,74,.1);border-left:3px solid var(--gold);border-radius:4px}
.dop-ucz-suma span{display:block;font-size:13px;color:var(--muted);margin-top:3px}
.dop-ucz-stopka{display:flex;justify-content:flex-end}
.dop-ucz-uwaga{font-size:14px;line-height:1.5;color:#8f3f37;background:rgba(201,64,64,.07);
 border-left:3px solid rgba(201,64,64,.45);padding:10px 12px;border-radius:4px}
.dop-ucz-uwaga a{color:#8f3f37;font-weight:700;white-space:nowrap}
.dop-ucz-uwaga[hidden]{display:none!important}
.dop-ucz-suma[hidden]{display:none!important}
.dop-ucz-koord{margin:0;min-height:44px;align-items:center}
/* PAKIET 1+1 (30.09.2026) — wybor opcji w zapisie, tylko przy kursie z pakietem w katalogu */
.dop-ucz-pakiet{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:12px 0 14px}
.dop-ucz-pakiet[hidden]{display:none!important}
.dop-pk-op{display:grid;grid-template-columns:auto 1fr;gap:3px 10px;align-items:start;padding:13px 14px;border:1.5px solid rgba(27,44,79,.2);border-radius:10px;background:#fff;cursor:pointer}
.dop-pk-op input{grid-row:1/4;width:18px;height:18px;margin:2px 0 0;accent-color:#1B2C4F}
.dop-pk-nag{font-size:14px;font-weight:700;color:#1B2C4F;line-height:1.3}
.dop-pk-cena{font-family:'Instrument Serif',Georgia,serif;font-size:26px;line-height:1.1;color:#1B2C4F}
.dop-pk-opis{font-size:14px;line-height:1.4;color:rgba(27,44,79,.72)}
.dop-pk-op:has(input:checked){border-color:#C9A24A;background:rgba(201,162,74,.09);box-shadow:inset 0 0 0 1px #C9A24A}
.dop-pk-op:has(input:focus-visible){outline:2px solid #1B2C4F;outline-offset:2px}
.dop-ucz-pk-rola{margin-left:8px;font-size:14px;font-weight:700;color:#1B2C4F}
.dop-ucz-pk-rola b{color:#7A5E1F}
.dop-ucz-pk-cena{margin-left:auto;font-weight:700;color:#1B2C4F;white-space:nowrap}
.dop-ucz-pk-uwaga{display:block;margin-top:6px;font-size:14px;color:#7A5E1F}
@media(max-width:560px){.dop-ucz-pakiet{grid-template-columns:1fr}}
/* .dop-consent ma display:flex, ktore wygrywa z domyslnym [hidden]{display:none}
   przegladarki - bez tej linijki wybor "sam nie jade" widac od pierwszej sekundy,
   zanim w ogole jest kogo zapisac. */
.dop-ucz-koord[hidden]{display:none!important}
@media(max-width:520px){.dop-ucz{padding:10px}.dop-ucz-row{padding:10px}}

/* Subtle pulse for hero scroll-hint, urgency dots */
@keyframes dop-pulse-soft{0%,100%{opacity:.95}50%{opacity:.55}}
.dop-pulse{animation:dop-pulse-soft 1.8s ease-in-out infinite}
@media (prefers-reduced-motion:reduce){.dop-pulse{animation:none}}


/* Stan spoczynku: niewidoczne i nieklikalne (visibility), bez stylów wbudowanych w elemencie.
   Do 28.08.2026 baner miał WBUDOWANE transform:translateY(100%), które wygrywało z klasą
   `visible` i nikt go nigdy nie zobaczył — dlatego tu całe położenie siedzi w arkuszu. */
#dop-cookie-backdrop{position:fixed;inset:0;z-index:10040;background:rgba(10,19,34,.72);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);opacity:0;visibility:hidden;transition:opacity .25s ease,visibility 0s linear .25s;touch-action:none}
#dop-cookie-backdrop.visible{opacity:1;visibility:visible;transition:opacity .25s ease}
#dop-cookie-banner{position:fixed;inset:0;margin:auto;z-index:10050;box-sizing:border-box;width:min(540px,calc(100% - 32px));height:-webkit-fit-content;height:fit-content;max-height:calc(100% - 32px);overflow:auto;overscroll-behavior:contain;background:#0F1B30;color:#fff;border:1px solid rgba(201,162,74,.38);border-radius:16px;box-shadow:0 30px 80px -20px rgba(0,0,0,.65);padding:28px 28px 24px;font-family:'Figtree',system-ui,-apple-system,sans-serif;text-align:left;opacity:0;visibility:hidden;transform:translateY(14px);transition:opacity .25s ease,transform .3s cubic-bezier(.22,1,.36,1),visibility 0s linear .3s}
#dop-cookie-banner.visible{opacity:1;visibility:visible;transform:none;transition:opacity .25s ease,transform .3s cubic-bezier(.22,1,.36,1)}
#dop-cookie-banner:focus,#dop-cookie-banner .dcb-t:focus{outline:none}
#dop-cookie-banner [hidden]{display:none!important}
#dop-cookie-banner .dcb-t{font-size:22px;font-weight:800;line-height:1.3;color:#fff;margin:0 0 10px}
#dop-cookie-banner .dcb-d{font-size:15px;line-height:1.6;color:rgba(255,255,255,.86);margin:0 0 22px}
#dop-cookie-banner .dcb-d a{color:#D9B560;font-weight:600;text-decoration:underline;cursor:pointer}
/* Oba ekrany: dwa przyciski równej wielkości obok siebie — obrys po lewej, złoty po prawej. */
#dop-cookie-banner .dcb-btns{display:grid;grid-template-columns:1fr 1fr;gap:12px}
#dop-cookie-banner .dcb-b{box-sizing:border-box;min-height:50px;margin:0;padding:12px 16px;border-radius:10px;border:2px solid transparent;font-family:inherit;font-size:15px;font-weight:700;line-height:1.35;letter-spacing:.01em;text-transform:none;cursor:pointer;transition:background-color .15s,border-color .15s}
#dop-cookie-banner .dcb-tak{background:#C9A24A;border-color:#C9A24A;color:#1B2C4F}
#dop-cookie-banner .dcb-tak:hover{background:#D9B560;border-color:#D9B560}
/* Obrys: tło okna, biała ramka, biały tekst — czytelne, ale bez wypełnienia (patrz ⚖️ wyżej). */
#dop-cookie-banner .dcb-ob{background:#0F1B30;border-color:rgba(255,255,255,.6);color:#fff}
#dop-cookie-banner .dcb-ob:hover{background:rgba(255,255,255,.08);border-color:#fff}
#dop-cookie-banner .dcb-b:focus-visible,#dop-cookie-banner .dcb-d a:focus-visible{outline:3px solid #D9B560;outline-offset:3px}
/* Ustawienia: trzy kategorie, przełącznik po prawej. Cały wiersz jest etykietą — klik w tekst też przełącza. */
#dop-cookie-banner .dcb-kat{display:grid;gap:10px;margin:0 0 20px}
#dop-cookie-banner .dcb-k{display:block;padding:14px 16px;border:1px solid rgba(255,255,255,.16);border-radius:12px;background:rgba(255,255,255,.04)}
#dop-cookie-banner label.dcb-k{cursor:pointer}
#dop-cookie-banner .dcb-kt{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:32px;font-size:16px;font-weight:700;color:#fff}
#dop-cookie-banner .dcb-k p,#dop-cookie-banner .dcb-kp{display:block;margin:6px 0 0;font-size:14px;line-height:1.55;color:rgba(255,255,255,.78)}
#dop-cookie-banner .dcb-zaw{font-size:13px;font-weight:600;color:#D9B560;white-space:nowrap}
#dop-cookie-banner .dcb-k input{position:absolute;opacity:0;width:1px;height:1px;margin:0}
#dop-cookie-banner .dcb-sw{position:relative;flex:none;width:48px;height:28px;border-radius:14px;background:rgba(255,255,255,.28);transition:background-color .15s}
#dop-cookie-banner .dcb-sw::after{content:"";position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;transition:transform .15s}
#dop-cookie-banner .dcb-k input:checked + .dcb-sw{background:#C9A24A}
#dop-cookie-banner .dcb-k input:checked + .dcb-sw::after{transform:translateX(20px)}
#dop-cookie-banner .dcb-k input:focus-visible + .dcb-sw{outline:3px solid #D9B560;outline-offset:3px}
/* Zapadka (18.09.2026): treść banera nie jest „odsłaniana przy przewijaniu" — widać ją zawsze. */
#dop-cookie-banner .reveal{opacity:1!important;transform:none!important}
/* Blokada przewijania pod oknem. Klasą z !important, nie stylem wbudowanym: menu na telefonie
   przywraca po zamknięciu body.style.overflow i nie może przy tym odblokować strony. */
html.dcb-lock,html.dcb-lock body{overflow:hidden!important}
html.dcb-lock body{padding-right:var(--dcb-sb,0px)}
/* Okienko newslettera (po 40 s) nie wyskakuje nad/pod oknem zgody (zob. dopCookieClose). */
html.dcb-lock .nl-popup-backdrop.show{display:none!important}
@media(max-width:480px){
 #dop-cookie-banner{padding:22px 20px 20px;border-radius:14px}
 #dop-cookie-banner .dcb-t{font-size:20px}
 #dop-cookie-banner .dcb-b{padding:12px 10px}
}
/* Pasek na dole — tylko na stronie polityki prywatności (patrz komentarz na górze bloku). */
#dop-cookie-banner.dcb-dol{inset:auto 0 0 0;margin:0;width:auto;height:auto;max-height:70vh;border-radius:0;border-width:1px 0 0;padding:18px 28px 20px;transform:translateY(100%)}
#dop-cookie-banner.dcb-dol.visible{transform:none}
#dop-cookie-banner.dcb-dol #dcb-w1{max-width:1140px;margin:0 auto;display:grid;grid-template-columns:1fr auto;column-gap:24px;align-items:center}
#dop-cookie-banner.dcb-dol #dcb-w1 .dcb-t{grid-column:1;font-size:18px;margin-bottom:4px}
#dop-cookie-banner.dcb-dol #dcb-w1 .dcb-d{grid-column:1;font-size:14px;margin:0}
#dop-cookie-banner.dcb-dol #dcb-w1 .dcb-btns{grid-column:2;grid-row:1 / span 2;grid-template-columns:auto auto auto}
#dop-cookie-banner.dcb-dol #dcb-w1 .dcb-tak{grid-column:auto;order:3}
#dop-cookie-banner.dcb-dol #dcb-w2{max-width:640px;margin:0 auto}
@media(max-width:720px){
 #dop-cookie-banner.dcb-dol{padding:16px 18px 18px}
 #dop-cookie-banner.dcb-dol #dcb-w1{grid-template-columns:1fr}
 #dop-cookie-banner.dcb-dol #dcb-w1 .dcb-btns{grid-column:1;grid-row:auto;grid-template-columns:1fr 1fr;margin-top:14px}
 #dop-cookie-banner.dcb-dol #dcb-w1 .dcb-tak{grid-column:1 / -1;order:0}
 #dop-cookie-banner.dcb-dol .dcb-b{min-height:46px;padding:10px 6px;font-size:14px}
}
@media(prefers-reduced-motion:reduce){#dop-cookie-backdrop,#dop-cookie-banner,#dop-cookie-banner .dcb-sw,#dop-cookie-banner .dcb-sw::after{transition:none!important}}
@media print{#dop-cookie-backdrop,#dop-cookie-banner{display:none!important}}


/* Stan ukryty siedzi w ARKUSZU, nie w style="" panelu (29.09.2026). Styl wpisany w element wygrywa
   z każdą klasą, więc od 10.06.2026 klasa .open nie mogła pokazać okna: przycisk zmieniał się w „X",
   a rozmowa nie pojawiała się nigdy. Ten sam błąd co w banerze zgody 28.08 — nie wpisuj panelowi
   display/opacity/transform do atrybutu style. Bez animacji wjazdu celowo: okno ma być widoczne
   w tej samej klatce co klik, niezależnie od tempa animacji w przeglądarce. */
#dop-chat-panel{display:none}
#dop-chat-panel.open{display:flex;opacity:1;transform:translateY(0) scale(1)}
/* Pasek CTA (#sticky-cta, z-index 8999) wjeżdża po 600 px przewinięcia w TEN SAM róg (24 px od dołu
   i od prawej) i przykrywał przycisk asystenta — klik trafiał w „×" paska (zmierzone 29.09.2026).
   Gdy pasek jest na ekranie, przycisk i okno asystenta stoją 72 px wyżej. !important, bo położenie
   obu siedzi w atrybucie style. Od 01.10.2026 pasek stoi też na kursach. */
@media(min-width:881px){
 body:has(#sticky-cta.visible) #dop-chat-toggle{bottom:96px!important}
 body:has(#sticky-cta.visible) #dop-chat-panel{bottom:168px!important;max-height:calc(100vh - 212px)!important}
}
.dop-chat-msg{display:flex;gap:8px;max-width:90%}
.dop-chat-msg.user{align-self:flex-end;flex-direction:row-reverse}
.dop-chat-msg-bubble{padding:10px 14px;border-radius:14px;font-size:14px;line-height:1.5}
.dop-chat-msg.bot .dop-chat-msg-bubble{background:#fff;border:1px solid rgba(27,44,79,.08);color:var(--black);border-bottom-left-radius:4px;box-shadow:0 4px 12px -4px rgba(27,44,79,.06)}
.dop-chat-msg.user .dop-chat-msg-bubble{background:var(--gold);color:var(--black);border-bottom-right-radius:4px;font-weight:500}
.dop-chat-msg-bubble a,.dop-chat-msg-bubble button{display:inline-block;margin-top:6px;padding:6px 12px;background:var(--black);color:var(--hot)!important;font-size:14px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;text-decoration:none;border-radius:4px;border:none;cursor:pointer;transition:background .15s}
.dop-chat-msg-bubble a:hover,.dop-chat-msg-bubble button:hover{background:var(--dark2)}
.dop-chat-msg-bubble strong{color:var(--gold);font-weight:700}
.dop-chat-typing{display:flex;gap:4px;padding:14px}
.dop-chat-typing span{width:7px;height:7px;border-radius:50%;background:var(--gold);animation:dop-typing 1.2s infinite}
.dop-chat-typing span:nth-child(2){animation-delay:.2s}
.dop-chat-typing span:nth-child(3){animation-delay:.4s}
@keyframes dop-typing{0%,80%,100%{opacity:.3;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}
.dop-chat-suggestion{padding:6px 11px;background:rgba(201,162,74,.1);border:1px solid rgba(201,162,74,.25);color:var(--gold);font-size:13px;font-weight:700;letter-spacing:.03em;border-radius:14px;cursor:pointer;font-family:var(--body);transition:background .15s,transform .15s}
.dop-chat-suggestion:hover{background:rgba(201,162,74,.2);transform:translateY(-1px)}
@media(max-width:480px){
 #dop-chat-toggle{bottom:88px;right:14px;width:54px;height:54px}
 #dop-chat-panel{bottom:154px;right:12px;left:12px;width:auto;max-width:none;height:calc(100vh - 180px)}
}


/* Wygląd i OBA stany przycisku siedzą w arkuszu, nie w style="" (29.09.2026). Stan ukryty był wpisany
   w atrybut style, a styl wpisany w element wygrywa z każdą klasą: skrypt dokładał .visible po 600 px
   przewinięcia, a przycisk nie pokazał się ani razu (zmierzone: klasa jest, krycie 0). Ten sam błąd co
   w banerze zgody (28.08) i w oknie asystenta (29.09) — nie wpisuj mu stanu do style="".
   Położenie (decyzja Michała 29.09): nad okrągłym przyciskiem asystenta, w osi jego środka. W rogu
   24 px od dołu i od prawej stały już asystent, pasek CTA i pigułka „15 min" — tam był zasłonięty.
   Gdy pasek CTA jest na ekranie, przycisk staje 72 px wyżej, tak samo jak asystent w jego poprawce
   z 29.09 (bottom:96px). Na telefonie ukryty: od 28.08 zostaje tam jedna warstwa pływająca — pasek.
   scrollTo bez „behavior": płynność bierze z html{scroll-behavior:smooth}, a przy ograniczeniu ruchu
   w systemie przewija od razu (reguła prefers-reduced-motion na górze pliku). */
#back-to-top{position:fixed;bottom:96px;right:30px;width:48px;height:48px;border-radius:50%;background:var(--gold);color:var(--black);border:none;cursor:pointer;z-index:95;display:flex;align-items:center;justify-content:center;box-shadow:0 12px 32px -8px rgba(201,162,74,.5);opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .2s,visibility .2s,transform .2s,background .15s,bottom .25s;font-family:var(--body)}
#back-to-top.visible{opacity:1;visibility:visible;transform:translateY(0)}
#back-to-top.visible:hover{background:var(--hot);transform:translateY(-3px)}
@media(min-width:881px){body:has(#sticky-cta.visible) #back-to-top{bottom:168px}}
@media(max-width:880px){#back-to-top{display:none}}


.floating-toc-link{color:rgba(255,255,255,.65);padding:7px 10px;border-radius:4px;border-left:2px solid transparent;text-decoration:none;transition:all .15s;line-height:1.3}
.floating-toc-link:hover{background:rgba(201,162,74,.1);color:var(--hot);border-left-color:var(--hot)}
.floating-toc-link.active{background:rgba(201,162,74,.14);color:var(--hot);border-left-color:var(--hot);font-weight:600}
@media(max-width:1280px){#kurs-floating-toc{display:none!important}}


#wa-floating{
  position:fixed;
  bottom:88px;
  left:14px;
  z-index:88;
  width:54px;
  height:54px;
  border-radius:50%;
  background:#25D366;
  color:#fff;
  display:none;
  align-items:center;
  justify-content:center;
  box-shadow:0 8px 24px -8px rgba(37,211,102,.5),0 4px 12px -4px rgba(0,0,0,.2);
  text-decoration:none;
  transition:transform .2s,box-shadow .2s;
}
#wa-floating:hover{transform:scale(1.08) rotate(-5deg);box-shadow:0 12px 32px -8px rgba(37,211,102,.6)}
#wa-floating::after{
  content:'';
  position:absolute;
  inset:-4px;
  border-radius:50%;
  background:rgba(37,211,102,.35);
  z-index:-1;
  animation:wa-pulse 2.4s ease-out infinite;
}
@keyframes wa-pulse{0%{transform:scale(.85);opacity:.6}100%{transform:scale(1.4);opacity:0}}
/* Bąbel nie pokazuje się w żadnej szerokości (30.09.2026). Reguła „pokaż do 980 px” zostawiała go
   tylko w oknach 881–980 px — do 880 px WhatsApp siedzi w pasku CTA (.sticky-cta-wa), a tam bąbel
   nachodził na toast z faktami (44×21 px). Decyzja Michała: okna 881–980 px wyglądają jak komputer. */
.dark #wa-floating{box-shadow:0 8px 24px -8px rgba(37,211,102,.6),0 4px 12px -4px rgba(0,0,0,.5)}


#pwa-install-banner{display:none!important} /* PWA banner OFF 2026-06-13 — DOP nie ma natywnej aplikacji */
#pwa-install-banner.show{bottom:88px}
@media(min-width:981px){
  #pwa-install-banner.show{bottom:24px;left:auto;right:24px;max-width:440px}
}
.dark #pwa-install-banner{background:#15243F}
.dark #pwa-install-banner #pwa-install-title{color:#F5F3EE}


/* === v25 — warstwa ruchu i sygnatury (XXV wiek) · respektuje prefers-reduced-motion === */
.v25-rule{animation:v25rule 1s var(--ease-expo) .55s both}
@keyframes v25rule{from{transform:scaleX(0);opacity:0}to{transform:scaleX(1);opacity:1}}
.v25-cta > span{display:inline-block;transition:transform .25s var(--ease-spring)}
.v25-cta:hover > span{transform:translateX(5px)}
#hero-portret-michal{transition:box-shadow .4s var(--ease-out)}
@media(prefers-reduced-motion:reduce){.v25-rule{animation:none}}

/* AUDYT czytelnosci 2026-06-15 — P1 dlugosc wiersza (legal) */
#page-regulamin p,#page-regulamin li,#page-polityka p,#page-polityka li{max-width:520px}
/* P4: minimalny rozmiar drobnego tekstu (9px->11px) — zweryfikowane: 0 overflow */
[style*="font-size:12px"]{font-size:13px !important}

/* 4. iOS PRZYBLIŻA STRONĘ przy wejściu w pole o foncie < 16px.
      Test: wszystkie pola miały 15px — po tapnięciu layout skakał. */
@media(max-width:760px){
 .dop-field input,.dop-field textarea,.dop-field select,
 .nl-popup input,#lead-magnet-form input{font-size:16px!important}
}


/* ═══ CZYTELNOŚĆ 2026-08-28 — werdykt Rady 5 (/ask5) + webmaster ═══
   Jeden pasek CTA na mobile · podłoga 16px · siatka 8pt · miara 45–75 zn. */

/* — MOBILE: z 4 warstw pływających zostaje jeden pasek CTA — */
@media(max-width:880px){
  .mob-bottom-nav{display:none !important}
  body{padding-bottom:96px !important}
  #wa-floating,#dop-chat-toggle,#dop-chat-panel,.live-toast,.float-cta-15{display:none !important}
  .sticky-cta{left:12px;right:12px;bottom:max(12px, env(safe-area-inset-bottom))}
  .sticky-cta-btn{font-size:15px !important;padding:16px 16px !important}
  .sticky-cta-wa{display:flex !important}
  /* oddech sekcji: 8pt grid, mniej pustego scrolla */
  section[style*="padding:96px"],section[style*="padding: 96px"]{padding-top:64px !important;padding-bottom:64px !important}
  section[style*="padding:90px"]{padding-top:64px !important;padding-bottom:64px !important}
  section[style*="padding:80px"],section[style*="padding:78px"]{padding-top:56px !important;padding-bottom:56px !important}
  section[style*="padding:72px"]{padding-top:56px !important;padding-bottom:56px !important}
  section[style*="padding:64px"],section[style*="padding:60px"]{padding-top:48px !important;padding-bottom:48px !important}
  /* pasek terminu nad hero: jedna linia, spokojnie */
  .urgency-bar{font-size:14px}
}
/* — gridy statystyk 4×1fr: na wąskich ekranach 2×2, kolumny bez min-content overflow — */
@media(max-width:640px){
  [style*="grid-template-columns:repeat(4,1fr)"]{grid-template-columns:repeat(2,minmax(0,1fr)) !important;row-gap:20px !important}
}
/* — DESKTOP: premium to powietrze — */
@media(min-width:900px){
  section[style*="padding:96px"]{padding-top:112px !important;padding-bottom:112px !important}
  section[style*="padding:90px"]{padding-top:104px !important;padding-bottom:104px !important}
  section[style*="padding:80px"],section[style*="padding:78px"]{padding-top:96px !important;padding-bottom:96px !important}
}
/* — WhatsApp w pasku CTA (zamiast osobnego bąbla) — kształt paska: blok PRZYCISK-ZAPISU (01.10.2026) — */
/* — strony kursów: jeden breadcrumb (szczegółowy wz zostaje, globalny znika) — */
body.wz-kurs .dop-breadcrumb,body.kz3-kurs .dop-breadcrumb,body.kz3-kurs #kurs-floating-toc{display:none !important}
/* — dotyk ≥48px i czytelny pasek CTA (przycisk zapisu: 54 px w bloku PRZYCISK-ZAPISU) — */
.sticky-cta-phone{min-height:48px}
/* — tabela porównawcza: przewijana w swoim kontenerze, pierwsza kolumna przyklejona — */
#porownaj .cmp-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:14px}
#porownaj .cmp-scroll table{min-width:860px}
#porownaj .cmp-scroll th:first-child,#porownaj .cmp-scroll td:first-child{position:sticky;left:0;background:var(--cream);z-index:2;box-shadow:6px 0 10px -6px rgba(27,44,79,.15)}
#porownaj .cmp-hint{display:none;font-size:13px;color:var(--muted);text-align:right;margin:0 4px 8px}
@media(max-width:880px){#porownaj .cmp-hint{display:block}}
/* — interlinia treści: minimum 1.55 tam, gdzie było ciaśniej — */
@media(max-width:880px){ p[style*="line-height:1.5;"]{line-height:1.55 !important} }
/* — motyw bez zmian: paleta, złoto na granacie, granat na złocie — */


/* ═══ CZYTELNOŚĆ r2 — 28.08.2026: rytm teł, lżejsza góra, kompaktowy manifest ═══ */
/* złote linie 1px na przejściach między jasnymi sekcjami (brandbook: separatory) */
#page-home > section[style*="border-top:1px solid rgba(27,44,79"]{border-top-color:rgba(201,162,74,.5) !important}
/* kompaktowy manifest: te same tezy, połowa wysokości */
#manifest [style*="padding:28px 26px"]{padding:16px 18px !important}
#manifest [style*="font-size:30px"]{font-size:18px !important;margin-bottom:4px !important;opacity:.85}
/* kicker hero: pełny na desktopie, krótki na telefonie */
.kick-mini{display:none}
@media(max-width:560px){
  .hero-kick{letter-spacing:.06em}
  .hero-kick .v25-rule{display:none !important}
  .hero-kick .kick-full{display:none}
  .hero-kick .kick-mini{display:inline}
  /* zwarte bullety wyników pod leadem */
  .hero-nums{gap:8px 16px !important;margin-bottom:22px !important;font-size:13px !important}
  .hero-nums > div > span:first-child{font-size:16px !important}
  /* pasek terminu: niższy */
  .urgency-bar{padding:9px 14px;font-size:13px;line-height:1.45}
}


/* ═══ CZYTELNOŚĆ r3 — przeplot granatu, czytelne nagłówki, premium-pass
   (wzorce Apple/Masterclass: wielkie nagłówki, rzadszy tekst, powietrze) ═══ */
#wyniki .sec-label{color:rgba(217,181,96,.92)}
#wyniki .sec-h2{color:#fff}
@media(max-width:640px){
  #wyniki [style*="font-size:60px"]{font-size:40px !important}
}
/* — kontrast skali: nagłówki sekcji wyraźnie większe niż treść — */
#page-home h2[style*="font-size:clamp(34px"]{font-size:clamp(38px,4.8vw,60px) !important;letter-spacing:-.015em}
#page-home .sec-h2{font-size:clamp(38px,4.8vw,60px) !important;letter-spacing:-.015em;line-height:1.04}
/* — leady sekcji: większe, krótsza miara, wyśrodkowane tylko w centrowanych headerach — */
#page-home div[style*="text-align:center"] > h2 + p{font-size:19px !important;line-height:1.6 !important;max-width:56ch;margin-left:auto;margin-right:auto}
/* — treść: 16 → 17 px z luźniejszą interlinią (prezbiopia 35–60) — */
#page-home p[style*="font-size:16px"], #page-home li[style*="font-size:16px"]{font-size:17px !important;line-height:1.62 !important}
/* — desktop: jeszcze więcej światła między głównymi sekcjami — */
@media(min-width:900px){
  #page-home section[style*="padding:96px"]{padding-top:124px !important;padding-bottom:124px !important}
}
