/* ============================================================================
   POSTANI TRENER · V3
   Dizajn i kod: The Website Labs
   ----------------------------------------------------------------------------
   Sustav: tamna editorijalna ploha, plava kao KONTROLIRAN akcent (ne kao boja
   svakog elementa). Svijetle sekcije i bijeli oblačići razbijaju tamu:
   brojke, kalkulator, za koga, uključeno i investicija.
   Tipografija: Archivo Variable (display) + Inter Variable (tekst)
   + Source Serif 4 italic (uredničke naglaske, čitljiviji od Instrument Serifa).
   ========================================================================== */

/* ---------- 1. FONTOVI (self-hosted, latin + latin-ext) ----------
   Datoteke su podskupljene skriptom tools/subset-fonts.py: 336 kB -> 174 kB.
   Zadrzan je ASCII + Latin-1 + cijeli Latin Extended-A (dakle sav hrvatski
   c c z s d, plus ceski, poljski, slovenski — klijent jos salje imena), a
   varijabilnim je fontovima suzen raspon osi na ono sto CSS koristi.
   Rasponi u @font-face MORAJU odgovarati skripti. */
@font-face{
  font-family:'Archivo Variable';font-style:normal;font-weight:350 850;font-stretch:100% 115%;font-display:swap;
  src:url('../fonts/archivo-latin-ext-wdth-normal.woff2') format('woff2-variations');
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face{
  font-family:'Archivo Variable';font-style:normal;font-weight:350 850;font-stretch:100% 115%;font-display:swap;
  src:url('../fonts/archivo-latin-wdth-normal.woff2') format('woff2-variations');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face{
  font-family:'Inter Variable';font-style:normal;font-weight:350 700;font-display:swap;
  src:url('../fonts/inter-latin-ext-wght-normal.woff2') format('woff2-variations');
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face{
  font-family:'Inter Variable';font-style:normal;font-weight:350 700;font-display:swap;
  src:url('../fonts/inter-latin-wght-normal.woff2') format('woff2-variations');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face{
  font-family:'Source Serif 4';font-style:italic;font-weight:400;font-display:swap;
  src:url('../fonts/source-serif-4-latin-ext-italic.woff2') format('woff2');
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face{
  font-family:'Source Serif 4';font-style:italic;font-weight:400;font-display:swap;
  src:url('../fonts/source-serif-4-latin-italic.woff2') format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
/* Fallback s izmjerenim size-adjustom: zamjena fonta ne mijenja prijelom ni
   visinu bloka, pa nema CLS-a ni resetiranja LCP-a. */
@font-face{font-family:'Archivo Fallback';src:local('Arial'),local('Helvetica Neue'),local('Helvetica'),local('Liberation Sans');size-adjust:104.54%;line-gap-override:0%}
@font-face{font-family:'Inter Fallback';src:local('Arial'),local('Helvetica Neue'),local('Helvetica'),local('Liberation Sans');size-adjust:106.23%;line-gap-override:0%}

/* ---------- 2. TOKENI ---------- */
:root{
  /* Plohe */
  --ink:#05070d;
  --ink-1:#080b14;
  --ink-2:#0c111c;
  --ink-3:#121826;
  --cream:#f2f5fa;
  --cream-80:rgba(242,245,250,.8);
  --cream-64:rgba(242,245,250,.64);
  /* .50, ne .46: na --ink je .46 mjerilo 4.36:1 i padalo je AA za sitan tekst.
     .50 daje 4.95:1 na --ink, 4.97:1 na --ink-2 i 4.89:1 na --ink-3. */
  --cream-50:rgba(242,245,250,.5);
  --line:rgba(242,245,250,.12);
  --line-2:rgba(242,245,250,.2);

  /* Akcent. --accent je za VELIKI tekst i plohe bez sitnog teksta.
     --accent-deep nosi sitan cream tekst (7.31:1).
     --accent-lift je sitan plavi tekst na tamnom (5.59:1). */
  --accent:#2b6cff;
  --accent-deep:#1747b8;
  --accent-lift:#4a80ff;
  --accent-dim:rgba(43,108,255,.14);

  /* Svijetla ploha — investicija i bijeli oblačići. */
  --light:#eef1f7;
  --light-2:#e2e7f0;
  --on-light:#080b14;
  --on-light-64:rgba(8,11,20,.64);
  --on-light-line:rgba(8,11,20,.14);

  /* Tipografija */
  --font-display:'Archivo Variable','Archivo','Archivo Fallback',Helvetica,Arial,sans-serif;
  --font-body:'Inter Variable','Inter','Inter Fallback',system-ui,sans-serif;
  --font-serif:'Source Serif 4','Iowan Old Style','Palatino Linotype','Book Antiqua',Palatino,Georgia,serif;

  --fs-d1:clamp(1.95rem,4.3vw,3.9rem);
  --fs-d2:clamp(1.65rem,3.2vw,2.85rem);
  --fs-d3:clamp(1.35rem,2.2vw,2.05rem);
  --fs-d4:clamp(1.08rem,1.35vw,1.32rem);
  --fs-lead:clamp(1rem,1.18vw,1.22rem);
  --fs-body:clamp(0.95rem,1vw,1.045rem);
  --fs-small:clamp(0.82rem,0.86vw,0.88rem);
  --fs-eyebrow:0.688rem;

  /* Ritam */
  --pad:clamp(20px,5vw,72px);
  --maxw:1240px;
  --maxw-mid:940px;
  --maxw-text:64ch;
  --sec:clamp(76px,8.4vw,132px);
  --sec-tight:clamp(52px,5.6vw,92px);
  --gap:clamp(20px,2.4vw,36px);

  --nav-h:72px;
  --r:14px;
  --r-lg:22px;
  --ease:cubic-bezier(.22,.61,.24,1);
  --ease-out:cubic-bezier(.16,1,.3,1);
}
@media (min-width:900px){:root{--nav-h:84px}}

/* ---------- 3. RESET / BAZA ---------- */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{
  -webkit-text-size-adjust:100%;
  scroll-behavior:smooth;
  /* Rezerviran kanal: kad izbornik ugasi scroll, layout se ne pomiče. */
  scrollbar-gutter:stable;
  scroll-padding-top:calc(var(--nav-h) + 16px);
}
html,body{overflow-x:clip}
@supports not (overflow:clip){html,body{overflow-x:hidden}}
body{
  background:var(--ink);
  color:var(--cream);
  font-family:var(--font-body);
  font-weight:380;
  font-size:var(--fs-body);
  line-height:1.62;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  font-synthesis-weight:none;
  /* KLIJENTOV NALAZ: "EDUKACI-JU". Nikada automatsko rastavljanje riječi.
     Hrvatski se ovdje lomi samo na razmacima i tvrdim prijelomima. */
  hyphens:manual;
  -webkit-hyphens:manual;
}
img,svg,video,iframe{display:block;max-width:100%}
img{height:auto}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
ul,ol{list-style:none}
strong,b{font-weight:640}
em{font-style:normal}
::selection{background:var(--accent-deep);color:#fff}
:focus-visible{outline:2px solid var(--accent-lift);outline-offset:3px;border-radius:2px}
.light :focus-visible{outline-color:var(--accent-deep)}

/* Sitna, statična zrnatost — bez keyframeova, bez posla po frameu. */
body::after{
  content:"";position:fixed;inset:0;z-index:900;pointer-events:none;opacity:.04;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='260' height='260'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}
@media (max-width:860px){body::after{display:none}}

/* ---------- 4. TIPOGRAFSKE KLASE ---------- */
.d1,.d2,.d3{
  font-family:var(--font-display);
  font-weight:800;
  line-height:.98;
  letter-spacing:-.022em;
  text-wrap:balance;
  hyphens:manual;
  -webkit-hyphens:manual;
  overflow-wrap:normal;
  word-break:normal;
}
.d1{font-size:var(--fs-d1);font-stretch:106%;line-height:.96}
.d2{font-size:var(--fs-d2);font-stretch:104%}
.d3{font-size:var(--fs-d3);font-stretch:102%;line-height:1.06;letter-spacing:-.015em}
.d4{
  font-family:var(--font-display);font-weight:700;font-size:var(--fs-d4);
  line-height:1.18;letter-spacing:-.008em;text-wrap:balance;hyphens:manual;
}
.d1 em,.d2 em,.d3 em{color:var(--accent);font-style:normal}
.light .d1 em,.light .d2 em,.light .d3 em{color:var(--accent-deep)}
.caps{text-transform:uppercase;letter-spacing:-.005em}
.serif{font-family:var(--font-serif);font-style:italic;font-weight:400;letter-spacing:0;font-stretch:normal;text-transform:none}

.eyebrow{
  display:flex;align-items:center;gap:12px;
  font-family:var(--font-body);font-size:var(--fs-eyebrow);font-weight:600;
  letter-spacing:.2em;text-transform:uppercase;color:var(--cream-64);
}
.eyebrow::before{content:"";width:26px;height:1px;background:var(--accent);flex:none}
.light .eyebrow{color:var(--on-light-64)}
.light .eyebrow::before{background:var(--accent-deep)}

.lead{
  font-size:var(--fs-lead);line-height:1.58;color:var(--cream-80);
  max-width:var(--maxw-text);text-wrap:pretty;
}
.light .lead{color:var(--on-light-64)}
.body-text{color:var(--cream-64);max-width:var(--maxw-text);text-wrap:pretty}
.body-text + .body-text{margin-top:1em}
.small{font-size:var(--fs-small);line-height:1.55;color:var(--cream-50)}
.light .small{color:var(--on-light-64)}
.num{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}

/* ---------- 5. LAYOUT ---------- */
.wrap{width:100%;max-width:calc(var(--maxw) + var(--pad) * 2);margin-inline:auto;padding-inline:var(--pad)}
.wrap--mid{max-width:calc(var(--maxw-mid) + var(--pad) * 2)}
.section{padding-block:var(--sec);position:relative}
.section--tight{padding-block:var(--sec-tight)}
.section--top0{padding-top:0}
.rule{height:1px;background:var(--line);border:0}
.stack>*+*{margin-top:var(--gap)}

/* Naslovni blok sekcije */
.head{display:flex;flex-direction:column;gap:18px;max-width:900px}
.head--wide{max-width:none}
.head .lead{margin-top:2px}

/* Dvostupčani uredničke sekcije */
.split{display:grid;gap:clamp(28px,4vw,64px);align-items:start}
@media (min-width:900px){
  .split--5-7{grid-template-columns:5fr 7fr}
  .split--6-6{grid-template-columns:1fr 1fr}
  .split--7-5{grid-template-columns:7fr 5fr}
  .split--sticky>:first-child{position:sticky;top:calc(var(--nav-h) + 32px)}
}

/* ---------- 6. GUMBI ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  min-height:52px;padding:0 26px;border-radius:999px;
  font-family:var(--font-body);font-size:.8rem;font-weight:650;
  letter-spacing:.11em;text-transform:uppercase;text-align:center;
  transition:background-color .28s var(--ease),color .28s var(--ease),border-color .28s var(--ease),transform .28s var(--ease);
  will-change:transform;
}
.btn svg{flex:none;transition:transform .32s var(--ease-out)}
.btn:hover svg{transform:translateX(4px)}
.btn--primary{background:var(--accent-deep);color:#fff}
.btn--primary:hover{background:var(--accent);transform:translateY(-2px)}
.btn--ghost{border:1px solid var(--line-2);color:var(--cream)}
.btn--ghost:hover{border-color:var(--cream-50);background:rgba(242,245,250,.05);transform:translateY(-2px)}
.btn--lg{min-height:60px;padding:0 34px;font-size:.85rem}
.light .btn--primary{background:var(--accent-deep);color:#fff}
.light .btn--primary:hover{background:var(--accent)}
.light .btn--ghost{border-color:var(--on-light-line);color:var(--on-light)}
.light .btn--ghost:hover{border-color:rgba(8,11,20,.4);background:rgba(8,11,20,.05)}
.btn-row{display:flex;flex-wrap:wrap;gap:14px;align-items:center}
/* Na uskom ekranu gumbi se slazu jedan ispod drugog i imaju istu sirinu —
   dva razlicito siroka gumba jedan ispod drugog izgledaju kao greska. */
@media (max-width:559px){.btn-row{flex-direction:column;align-items:stretch}.btn-row .btn{width:100%}}
.cta-note{font-size:var(--fs-small);color:var(--cream-50)}
.light .cta-note{color:var(--on-light-64)}

/* Tekstualni link sa strelicom */
.tlink{
  display:inline-flex;align-items:center;gap:9px;
  font-size:.8rem;font-weight:650;letter-spacing:.1em;text-transform:uppercase;
  color:var(--cream);padding-bottom:5px;
  border-bottom:1px solid var(--line-2);transition:border-color .28s var(--ease),color .28s var(--ease);
}
.tlink:hover{border-color:var(--accent);color:var(--accent-lift)}
.tlink svg{transition:transform .32s var(--ease-out)}
.tlink:hover svg{transform:translateX(4px)}

/* ---------- 7. SKIP LINK + HEADER ---------- */
.skip{
  position:fixed;top:8px;left:8px;z-index:1200;
  padding:12px 18px;border-radius:8px;background:var(--accent-deep);color:#fff;
  font-size:.8rem;font-weight:650;transform:translateY(-160%);
  transition:transform .2s var(--ease);
}
.skip:focus-visible{transform:none}

.hdr{
  position:fixed;top:0;left:0;right:0;z-index:1000;height:var(--nav-h);
  display:flex;align-items:center;
  transition:background-color .35s var(--ease),border-color .35s var(--ease),backdrop-filter .35s var(--ease);
  border-bottom:1px solid transparent;
}
.hdr.is-stuck{
  background:rgba(5,7,13,.82);
  -webkit-backdrop-filter:saturate(150%) blur(14px);
  backdrop-filter:saturate(150%) blur(14px);
  border-bottom-color:var(--line);
}
.hdr__in{display:flex;align-items:center;gap:20px;width:100%;max-width:calc(var(--maxw) + var(--pad) * 2);margin-inline:auto;padding-inline:var(--pad)}
.brand{display:inline-flex;align-items:center;flex:none;min-width:0}
.logo-lockup{display:block;height:auto}
.brand .logo-lockup{width:min(248px,62vw)}
@media (min-width:960px){.brand .logo-lockup{width:min(300px,26vw)}}
.nav{display:none}
@media (min-width:1120px){
  .nav{display:flex;align-items:center;gap:clamp(18px,2.2vw,34px);margin-inline:auto;flex:none}
  .nav a{
    font-size:.76rem;font-weight:600;letter-spacing:.13em;text-transform:uppercase;
    color:var(--cream-64);position:relative;padding-block:8px;transition:color .25s var(--ease);
  }
  .nav a::after{
    content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--accent);
    transform:scaleX(0);transform-origin:left;transition:transform .32s var(--ease-out);
  }
  .nav a:hover{color:var(--cream)}
  .nav a:hover::after{transform:scaleX(1)}
  .nav a[aria-current="page"]{color:var(--cream)}
  .nav a[aria-current="page"]::after{transform:scaleX(1)}
}
.hdr__end{display:flex;align-items:center;gap:12px;margin-left:auto;flex:none}
@media (min-width:1120px){.hdr__end{margin-left:0}}

.langsw{display:inline-flex;border:1px solid var(--line-2);border-radius:999px;overflow:hidden;flex:none}
.langsw a,.langsw span{
  padding:7px 13px;font-size:.68rem;font-weight:700;letter-spacing:.1em;
  transition:background-color .25s var(--ease),color .25s var(--ease);
}
.langsw .is-on{background:var(--accent-deep);color:#fff}
.langsw a:not(.is-on){color:var(--cream-64)}
.langsw a:not(.is-on):hover{background:rgba(242,245,250,.08);color:var(--cream)}
.hdr .btn{min-height:44px;padding:0 20px;font-size:.72rem;display:none}
@media (min-width:1100px){.hdr .btn{display:inline-flex}}

.burger{
  width:44px;height:44px;display:grid;place-items:center;border:1px solid var(--line-2);border-radius:999px;flex:none;
}
@media (min-width:1120px){.burger{display:none}}
.burger i{display:block;width:17px;height:1.5px;background:var(--cream);position:relative;transition:background-color .2s}
.burger i::before,.burger i::after{content:"";position:absolute;left:0;width:17px;height:1.5px;background:var(--cream);transition:transform .3s var(--ease)}
.burger i::before{top:-5.5px}
.burger i::after{top:5.5px}
body.menu-open .burger i{background:transparent}
body.menu-open .burger i::before{transform:translateY(5.5px) rotate(45deg)}
body.menu-open .burger i::after{transform:translateY(-5.5px) rotate(-45deg)}

/* Mobilni izbornik */
.mnav{
  position:fixed;inset:0;z-index:990;background:var(--ink-1);
  padding:calc(var(--nav-h) + 24px) var(--pad) 40px;
  display:flex;flex-direction:column;gap:6px;
  opacity:0;visibility:hidden;transform:translateY(-8px);
  /* visibility se pri ZATVARANJU mijenja tek na kraju (delay .32s), a pri
     OTVARANJU odmah. Inace je panel jos hidden kad mu pokusamo dati fokus. */
  transition:opacity .32s var(--ease),transform .32s var(--ease),visibility 0s linear .32s;
  overflow-y:auto;overscroll-behavior:contain;
}
body.menu-open .mnav{opacity:1;visibility:visible;transform:none;transition:opacity .32s var(--ease),transform .32s var(--ease),visibility 0s}
.mnav a.mnav__item{
  font-family:var(--font-display);font-weight:750;font-size:clamp(1.6rem,7vw,2.3rem);
  text-transform:uppercase;letter-spacing:-.015em;padding-block:14px;
  border-bottom:1px solid var(--line);color:var(--cream);
}
.mnav__foot{margin-top:auto;padding-top:28px;display:flex;flex-direction:column;gap:14px}
@media (min-width:1120px){.mnav{display:none}}

/* ---------- 8. HERO ---------- */
.hero{
  position:relative;padding-top:calc(var(--nav-h) + clamp(18px,2.2vw,32px));
  padding-bottom:clamp(36px,4.5vw,64px);overflow:hidden;
}
.hero::before{
  content:"";position:absolute;inset:0;z-index:-2;
  background:
    radial-gradient(90ch 60ch at 12% -10%,rgba(43,108,255,.15),transparent 62%),
    radial-gradient(70ch 50ch at 92% 8%,rgba(43,108,255,.08),transparent 60%);
}
.hero::after{
  content:"";position:absolute;inset:0;z-index:-1;opacity:.5;
  background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);
  background-size:clamp(60px,7vw,104px) clamp(60px,7vw,104px);
  -webkit-mask-image:linear-gradient(180deg,#000 0%,transparent 78%);
  mask-image:linear-gradient(180deg,#000 0%,transparent 78%);
}
.hero__grid{display:grid;gap:clamp(30px,4vw,58px)}
@media (min-width:1024px){.hero__grid{grid-template-columns:minmax(0,1fr) 300px;align-items:center}}
.hero h1{margin-top:0;max-width:22ch;text-transform:none;letter-spacing:-.028em;font-size:clamp(1.7rem,3.15vw,2.85rem)}
@media (min-width:1024px){.hero h1{max-width:20ch}}
/* Klijentov drugi dio pitanja nosi naglasak bez dodatnog plavog bloka teksta. */
.hero h1 em{
  display:block;margin-top:.24em;
  font-family:var(--font-serif);font-style:italic;font-weight:400;
  font-size:.82em;line-height:1.06;letter-spacing:-.01em;
  font-stretch:normal;text-transform:none;color:var(--accent-lift);
}
.hero__video{
  margin-top:clamp(18px,2.2vw,28px);
  width:min(62ch,100%);
  margin-left:0;
  margin-right:auto;
  font-size:var(--fs-lead);
}
@media (min-width:1024px){
  .hero .wrap{position:relative}
  .hero__grid{display:block}
  .hero__aside{
    position:absolute;top:50%;right:var(--pad);width:300px;
    transform:translateY(-50%);
  }
}
.hero__video .vid__frame{margin-top:0}
.hero .lead{margin-top:clamp(22px,3vw,36px);max-width:62ch}
.hero__cta{margin-top:clamp(26px,3vw,38px)}
.hero__ticks{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:26px}
.hero__ticks li{display:flex;align-items:center;gap:9px;font-size:var(--fs-small);color:var(--cream-64)}
.hero__ticks svg{flex:none;color:var(--accent-lift)}
.hero__aside{
  border-left:1px solid var(--line);padding-left:clamp(18px,2vw,28px);
  display:flex;flex-direction:column;gap:20px;
}
@media (max-width:1023px){
  .hero__aside,.hero--in .hero__aside{
    position:static;top:auto;right:auto;width:auto;transform:none;animation:none;
    border-left:0;border-top:1px solid var(--line);padding-left:0;padding-top:22px;margin-top:28px;
  }
}
.hero__kicker{font-family:var(--font-serif);font-style:italic;font-size:clamp(1.05rem,1.5vw,1.35rem);line-height:1.42;color:var(--cream-80);text-wrap:pretty}
.hero__scroll{display:none}
@media (min-width:1024px){
  .hero__scroll{display:flex;align-items:center;gap:12px;font-size:var(--fs-eyebrow);letter-spacing:.2em;text-transform:uppercase;color:var(--cream-50);margin-top:8px}
  .hero__scroll i{display:block;width:40px;height:1px;background:var(--line-2);position:relative;overflow:hidden}
  .hero__scroll i::after{content:"";position:absolute;inset:0;background:var(--accent);transform-origin:left;animation:scrollhint 2.4s var(--ease) infinite}
}
@keyframes scrollhint{0%{transform:scaleX(0)}45%{transform:scaleX(1)}100%{transform:scaleX(1);opacity:0}}

/* ---------- 9. VIDEO ---------- */
.vid{position:relative}
.vid__frame{
  position:relative;margin-top:clamp(26px,3vw,44px);
  border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;
  background:linear-gradient(160deg,var(--ink-3),var(--ink-1));
  aspect-ratio:16/9;
}
.vid__frame iframe,.vid__frame video{position:absolute;inset:0;width:100%;height:100%;border:0;background:#000;object-fit:contain}
.vid__poster{position:absolute;inset:0;z-index:1;width:100%;height:100%;object-fit:cover;opacity:.55}
.vid__frame.is-playing .vid__poster,.vid__frame.is-playing .vid__play,
html.no-js .vid__poster,html.no-js .vid__play{display:none}
.vid__play{
  position:absolute;inset:0;z-index:2;width:100%;height:100%;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;
}
.vid__play i{
  width:clamp(64px,7vw,88px);height:clamp(64px,7vw,88px);border-radius:999px;
  background:var(--accent-deep);display:grid;place-items:center;
  transition:transform .34s var(--ease-out),background-color .3s var(--ease);
  box-shadow:0 12px 44px rgba(23,71,184,.42);
}
.vid__play:hover i{transform:scale(1.07);background:var(--accent)}
.vid__play svg{color:#fff;margin-left:4px}
.vid__play span{font-size:.76rem;font-weight:650;letter-spacing:.14em;text-transform:uppercase;color:var(--cream-80)}
@media (max-width:1023px){
  .vid__play{gap:10px}
  .vid__play i{width:48px;height:48px}
  .vid__play svg{width:16px;height:16px;margin-left:2px}
  .vid__play span{font-size:.64rem;letter-spacing:.12em}
}
/* Rezervirano stanje — dizajnirano, ne slomljeno. */
.vid__reserved{
  position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:14px;text-align:center;padding:clamp(24px,4vw,48px);
}
.vid__frame--reserved{aspect-ratio:16/9;max-height:clamp(300px,38vw,460px);margin-inline:auto}
@media (max-width:600px){.vid__frame--reserved{aspect-ratio:4/3}}
.vid__frame--reserved::before{
  content:"";position:absolute;inset:0;
  background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);
  background-size:clamp(44px,5vw,68px) clamp(44px,5vw,68px);opacity:.34;
}
.vid__reserved .glyph{
  /* flex:none — inace se u stupcastom flexu visina stisne i krug postane elipsa. */
  flex:none;width:clamp(56px,6vw,76px);height:clamp(56px,6vw,76px);border-radius:999px;
  border:1px solid rgba(43,108,255,.42);display:grid;place-items:center;color:var(--accent-lift);
  background:var(--accent-dim);margin-bottom:4px;
}
.vid__reserved .tag{
  display:inline-flex;align-items:center;gap:9px;padding:7px 15px;border-radius:999px;
  border:1px solid var(--line-2);font-size:var(--fs-eyebrow);letter-spacing:.16em;text-transform:uppercase;color:var(--cream-64);
}
.vid__reserved .tag::before{content:"";width:6px;height:6px;border-radius:999px;background:var(--accent);flex:none}
.vid__reserved p{max-width:48ch;color:var(--cream-50);font-size:var(--fs-small)}
.vid__reserved .d4{color:var(--cream-80)}
.vid__meta{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:16px;font-size:var(--fs-small);color:var(--cream-50)}

/* Pojmovi ispod videa — ista beskonačna traka kao recenzije. */
.cover-sec{padding-top:clamp(28px,3.6vw,56px);padding-bottom:clamp(28px,3vw,48px)}
.cover-sec + .section{padding-top:clamp(40px,4.5vw,72px)}
.cover__label{
  margin-top:0;text-align:center;
  font-family:var(--font-serif);font-style:italic;font-weight:400;
  font-size:clamp(1.15rem,1.7vw,1.45rem);letter-spacing:0;text-transform:none;
  color:var(--cream-64);
}
.vid .cover-strip{margin-top:24px}
.cover-strip.strip:not(.is-looping){padding-bottom:72px}
.cover-strip.strip::before,.cover-strip.strip::after{bottom:72px}
.cover-strip .strip__track{align-items:stretch;gap:14px;padding-block:4px 8px}
.cover__card{
  flex:none;scroll-snap-align:start;
  display:flex;flex-direction:column;gap:6px;
  width:min(280px,78vw);
  padding:22px 22px 20px;border-radius:18px;
  background:#081a4a;color:#fff;opacity:.7;
  box-shadow:0 14px 32px rgba(8,24,72,.35);
  transition:background-color .28s var(--ease),transform .28s var(--ease-out);
}
.cover__card:hover{background:#0e2f78;transform:translateY(-3px)}
.cover__card-t{
  font-family:var(--font-display);font-weight:750;
  font-size:clamp(1.45rem,2vw,1.85rem);line-height:1.05;letter-spacing:-.02em;
  text-wrap:balance;
}
.cover__card-d{
  font-size:var(--fs-small);line-height:1.45;color:rgba(255,255,255,.88);
  text-wrap:pretty;
}
.cover__note{
  position:relative;z-index:1;
  margin-top:18px;text-align:center;font-size:var(--fs-small);color:var(--cream-50);
}
.cover__note a{
  display:inline-flex;align-items:center;gap:6px;
  color:var(--accent-lift);font-weight:640;
}
.cover__note a:hover{color:var(--cream)}
.cover__note a svg{transition:transform .32s var(--ease-out)}
.cover__note a:hover svg{transform:translateX(3px)}

/* ---------- 10. BROJKE ---------- */
.stats{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
@media (min-width:840px){.stats{grid-template-columns:repeat(4,1fr);gap:14px}}
.stats li{
  background:#fff;color:var(--on-light);border-radius:16px;
  padding:clamp(22px,2.6vw,34px) clamp(16px,2vw,24px);
  box-shadow:0 14px 36px rgba(0,0,0,.18);
}
.stats .v{
  font-family:var(--font-display);font-weight:800;font-stretch:104%;
  font-size:clamp(2.2rem,4.4vw,3.6rem);line-height:1;letter-spacing:-.03em;
  display:flex;align-items:baseline;gap:1px;
}
.stats .v em{color:var(--accent-deep);font-style:normal}
.stats .l{margin-top:10px;font-size:var(--fs-small);color:var(--on-light-64);text-wrap:pretty}

/* ---------- 11. ISHOD (uredničke stavke, bez kartica) ---------- */
.outs{margin-top:clamp(34px,4vw,60px);border-top:1px solid var(--line)}
.outs li{
  display:grid;gap:6px clamp(20px,3vw,48px);
  padding-block:clamp(22px,2.6vw,34px);border-bottom:1px solid var(--line);
}
@media (min-width:820px){.outs li{grid-template-columns:52px minmax(0,26ch) minmax(0,1fr);align-items:baseline}}
.outs .i{
  font-family:var(--font-display);font-weight:750;font-size:.82rem;letter-spacing:.1em;
  color:var(--accent-lift);
}
.outs .t{font-family:var(--font-display);font-weight:750;font-size:clamp(1.05rem,1.5vw,1.4rem);line-height:1.18;letter-spacing:-.012em;text-wrap:balance}
.outs .d{color:var(--cream-64);text-wrap:pretty;max-width:68ch}
@media (min-width:820px){.outs li:hover .t{color:var(--accent-lift);transition:color .3s var(--ease)}}

/* ---------- 12. MEDIJSKI SLOT (portret / editorijalna slika) ---------- */
.mslot{
  position:relative;border-radius:var(--r-lg);overflow:hidden;
  border:1px solid var(--line);background:linear-gradient(155deg,var(--ink-3),var(--ink-1));
}
.mslot img{width:100%;height:100%;object-fit:cover}
.mslot--portrait{aspect-ratio:4/5}
.mslot--wide{aspect-ratio:16/10}
.mslot__mono{
  position:absolute;inset:0;display:grid;place-items:center;
  font-family:var(--font-display);font-weight:800;font-stretch:104%;
  font-size:clamp(3.4rem,9vw,6.4rem);letter-spacing:-.03em;
  color:rgba(43,108,255,.34);
}
.mslot__ph{
  position:absolute;inset:0;
  background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);
  background-size:44px 44px;opacity:.5;
}

/* ---------- 13. MENTOR ---------- */
.mentor__role{
  display:inline-flex;align-items:center;gap:9px;margin-top:14px;
  font-size:var(--fs-small);color:var(--accent-lift);font-weight:600;letter-spacing:.06em;
}
.mentor__quote{
  font-family:var(--font-serif);font-style:italic;
  font-size:clamp(1.2rem,2vw,1.75rem);line-height:1.36;color:var(--cream);
  border-left:2px solid var(--accent);padding-left:clamp(16px,2vw,26px);
  text-wrap:pretty;
}
.mentor__facts{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px}
.chip{
  display:inline-flex;align-items:center;padding:7px 14px;border-radius:999px;
  border:1px solid var(--line-2);font-size:var(--fs-small);color:var(--cream-64);
}
.chip--accent{border-color:rgba(43,108,255,.44);color:var(--accent-lift);background:var(--accent-dim)}

/* ---------- 14. REZERVIRANA STANJA (recenzije, priče) ---------- */
.reserved{
  position:relative;border:1px solid var(--line);border-radius:var(--r-lg);
  padding:clamp(26px,3.4vw,44px) clamp(26px,3.4vw,44px) clamp(26px,3.4vw,44px) clamp(28px,3.6vw,48px);
  background:linear-gradient(140deg,var(--ink-2),var(--ink-1));
  display:flex;flex-direction:column;gap:13px;overflow:hidden;
}
.reserved::before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--accent)}
.reserved::after{
  content:"";position:absolute;inset:0;z-index:-1;opacity:.5;
  background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);
  background-size:40px 40px;
}
.reserved .d4{color:var(--cream-80)}
.reserved p{color:var(--cream-50);max-width:62ch;text-wrap:pretty}

/* ---------- 15. ZA KOGA JEST / NIJE ---------- */
.fit{display:grid;gap:14px;margin-top:clamp(30px,4vw,54px)}
@media (min-width:880px){.fit{grid-template-columns:1fr 1fr;gap:16px}}
.fit__col{
  background:#fff;color:var(--on-light);border-radius:var(--r-lg);
  padding:clamp(22px,2.8vw,36px);
  box-shadow:0 14px 36px rgba(0,0,0,.16);
}
.fit__t{display:flex;align-items:center;gap:11px;font-family:var(--font-display);font-weight:750;font-size:clamp(1.02rem,1.3vw,1.22rem);letter-spacing:-.01em}
.fit__t i{width:26px;height:26px;border-radius:7px;display:grid;place-items:center;flex:none}
.fit__col--yes .fit__t i{background:rgba(21,122,58,.12);color:#157a3a}
.fit__col--no .fit__t i{background:rgba(185,28,28,.12);color:#b91c1c}
.fit__list{margin-top:20px;display:flex;flex-direction:column}
.fit__list li{display:grid;grid-template-columns:20px 1fr;gap:12px;padding-block:12px;border-bottom:1px solid var(--on-light-line);color:var(--on-light-64);text-wrap:pretty}
.fit__list li:last-child{border-bottom:0;padding-bottom:0}
.fit__col--yes .fit__list li{color:var(--on-light)}
.fit__list svg{margin-top:5px;flex:none}
.fit__col--yes .fit__list svg{color:#157a3a}
.fit__col--no .fit__list svg{color:#b91c1c}
.fit__close{margin-top:clamp(24px,2.6vw,36px);max-width:74ch}

/* ---------- 16. UKLJUČENO (ledger) ---------- */
.ledger{display:grid;gap:12px;margin-top:clamp(30px,4vw,54px)}
@media (min-width:700px){.ledger{grid-template-columns:repeat(2,1fr);gap:14px}}
@media (min-width:1040px){.ledger{grid-template-columns:repeat(3,1fr)}}
.ledger li{
  background:#fff;color:var(--on-light);border-radius:16px;
  padding:clamp(22px,2.6vw,32px);display:flex;flex-direction:column;gap:9px;
  box-shadow:0 14px 36px rgba(0,0,0,.16);
}
.ledger .t{font-family:var(--font-display);font-weight:750;font-size:1.02rem;letter-spacing:-.01em;text-wrap:balance}
.ledger .d{font-size:var(--fs-small);color:var(--on-light-64);text-wrap:pretty}
.ledger .k{width:26px;height:26px;border-radius:8px;display:grid;place-items:center;background:rgba(23,71,184,.1);color:var(--accent-deep);flex:none}

/* ---------- 17. KURIKULUM (numerirani redovi) ---------- */
.areas{margin-top:clamp(30px,4vw,54px);border-top:1px solid var(--line)}
.area{border-bottom:1px solid var(--line)}
.area__btn{
  width:100%;display:grid;grid-template-columns:auto 1fr auto;align-items:center;
  gap:clamp(14px,2vw,28px);padding-block:clamp(20px,2.4vw,30px);text-align:left;
}
.area__n{font-family:var(--font-display);font-weight:750;font-size:.8rem;letter-spacing:.12em;color:var(--accent-lift);min-width:24px}
.area__t{font-family:var(--font-display);font-weight:750;font-size:clamp(1.12rem,2.1vw,1.72rem);line-height:1.14;letter-spacing:-.018em;text-wrap:balance;transition:color .28s var(--ease)}
.area__btn:hover .area__t{color:var(--accent-lift)}
.area__ico{width:30px;height:30px;border:1px solid var(--line-2);border-radius:999px;display:grid;place-items:center;flex:none;transition:border-color .28s var(--ease),background-color .28s var(--ease)}
.area__btn:hover .area__ico{border-color:var(--accent);background:var(--accent-dim)}
.area__ico i{position:relative;display:block;width:11px;height:1.5px;background:var(--cream)}
.area__ico i::after{content:"";position:absolute;inset:0;background:var(--cream);transform:rotate(90deg);transition:transform .34s var(--ease-out)}
.area__btn[aria-expanded="true"] .area__ico i::after,
.topic__btn[aria-expanded="true"] .area__ico i::after{transform:rotate(0)}
.area__panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows .42s var(--ease-out)}
.area__panel[data-open="true"]{grid-template-rows:1fr}
.area__panel>div{overflow:hidden;min-height:0}
.area__body{padding-bottom:clamp(24px,3vw,38px);display:grid;gap:clamp(16px,2vw,28px)}
@media (min-width:880px){.area__body{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);padding-left:calc(24px + clamp(14px,2vw,28px))}}
.area__goal{display:flex;flex-direction:column;gap:7px}
.area__goal .k{font-size:var(--fs-eyebrow);letter-spacing:.18em;text-transform:uppercase;color:var(--cream-50)}
.area__goal .v{color:var(--cream-80);text-wrap:pretty}
.topics{display:flex;flex-wrap:wrap;gap:8px}
.topics li{padding:6px 13px;border-radius:999px;border:1px solid var(--line);font-size:var(--fs-small);color:var(--cream-64)}
.lessons{display:flex;flex-direction:column;gap:0;margin-top:4px}
.lessons li{
  display:grid;grid-template-columns:auto minmax(0,1fr) auto;column-gap:12px;align-items:start;
  padding-block:10px;border-bottom:1px solid var(--line);font-size:var(--fs-small);color:var(--cream-80);
}
.lessons li::before{
  content:"";width:5px;height:5px;margin-top:.48em;border-radius:999px;background:var(--accent-lift);
}
.lessons .m{color:var(--cream-50);font-variant-numeric:tabular-nums}

/* Detaljan kurikulum: puna širina, teme lijevo, cilj i lekcije desno. */
.areas--detail{margin-top:0}
.areas--detail .area__btn{grid-template-columns:auto minmax(0,1fr) auto auto}
.area__count{font-size:var(--fs-eyebrow);letter-spacing:.16em;text-transform:uppercase;color:var(--cream-50);white-space:nowrap}
@media (max-width:700px){
  .areas--detail .area__btn{grid-template-columns:auto minmax(0,1fr) auto}
  .areas--detail .area__count{grid-column:2;grid-row:2}
  .areas--detail .area__ico{grid-column:3;grid-row:1 / span 2}
}
.areas--detail .area__body{align-items:start}
@media (min-width:880px){
  .areas--detail .area__body{grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);padding-left:0}
  .areas--detail .area__body--solo{grid-template-columns:minmax(0,640px)}
}
.topic-rows{display:flex;flex-direction:column;gap:8px}
.topic{border:1px solid var(--line);border-radius:12px;background:var(--ink-1);transition:border-color .28s var(--ease)}
.topic:hover{border-color:var(--line-2)}
.topic h3{margin:0}
.topic__btn{
  width:100%;display:grid;grid-template-columns:2.4rem minmax(0,1fr) auto;gap:10px;align-items:center;
  padding:13px 14px 13px 16px;text-align:left;font-size:var(--fs-small);color:var(--cream-80);
}
.topic__btn:hover .topic__t{color:var(--accent-lift)}
.topic__t{text-wrap:pretty}
.topic-rows .n{font-family:var(--font-display);font-weight:750;font-size:.78rem;letter-spacing:.08em;color:var(--accent-lift)}
.topic .area__ico{width:26px;height:26px}
.topic__panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows .42s var(--ease-out)}
.topic__panel[data-open="true"]{grid-template-rows:1fr}
.topic__panel>div{overflow:hidden;min-height:0}
.topic__body{padding:0 16px 14px calc(16px + 2.4rem + 10px)}
.topic__body .lessons{margin-top:0}
.topic__lead{margin:0 0 4px;font-size:var(--fs-small);color:var(--cream-64);text-wrap:pretty}
.topic__outcome{
  margin:16px 0 2px;padding:13px 16px 14px 14px;
  border-left:2px solid var(--accent-lift);border-radius:0 12px 12px 0;background:var(--accent-dim);
  font-family:var(--font-serif);font-style:italic;font-weight:400;
  font-size:clamp(1rem,1.05vw,1.08rem);line-height:1.45;letter-spacing:0;
  color:var(--cream);text-wrap:pretty;
}
.topic__note{margin:10px 0 0;font-size:var(--fs-small);color:var(--cream-50);text-wrap:pretty}
@media (max-width:700px){.topic__body{padding-left:16px}}
.area__aside{display:flex;flex-direction:column;gap:12px}
.area__card{
  display:flex;flex-direction:column;gap:8px;
  padding:18px 20px;border:1px solid var(--line);border-radius:14px;background:var(--ink-1);
}
.area__card .k{font-size:var(--fs-eyebrow);letter-spacing:.18em;text-transform:uppercase;color:var(--cream-50);font-weight:600}
.area__card .v{color:var(--cream-80);text-wrap:pretty}
.area__card .body-text{color:var(--cream-64);text-wrap:pretty}
.area__card--goal{background:#fff;border-color:transparent}
.area__card--goal .k{color:var(--accent-deep);font-weight:700}
.area__card--goal .v{color:var(--on-light);font-weight:700}
.area__card--goal .body-text{color:var(--on-light-64)}
.area__pending{font-size:var(--fs-small);color:var(--cream-50);text-wrap:pretty}
.area__card .lessons{margin-top:0}

/* ---------- 18. PREDAVAČI ---------- */
.claim{
  font-family:var(--font-display);font-weight:800;font-stretch:104%;
  font-size:clamp(1.7rem,3.6vw,3.15rem);line-height:1.02;letter-spacing:-.024em;
  text-wrap:balance;max-width:20ch;
}
.claim + .claim-sub{margin-top:16px;font-family:var(--font-serif);font-style:italic;font-size:clamp(1.1rem,1.7vw,1.5rem);color:var(--accent-lift);text-wrap:pretty}
.disciplines{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.disciplines li{padding:7px 14px;border-radius:999px;border:1px solid var(--line);font-size:var(--fs-small);color:var(--cream-64);transition:border-color .28s var(--ease),color .28s var(--ease)}
.disciplines li:hover{border-color:var(--line-2);color:var(--cream-80)}

/* Linije crta SVAKA celija (border-right/bottom), a ne 1px gap preko obojene
   podloge. Kad zadnji red nije pun, prazno mjesto ostaje tamno umjesto da
   podloga probije kao svijetli pravokutnik. */
.roster{
  display:grid;
  margin-top:clamp(30px,4vw,54px);
  border-top:1px solid var(--line);border-left:1px solid var(--line);
  border-radius:var(--r);overflow:hidden;background:var(--ink);
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.roster>*{border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
@media (min-width:720px){.roster{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (min-width:1040px){.roster{grid-template-columns:repeat(4,minmax(0,1fr))}}
.tcard{
  background:var(--ink-1);display:flex;flex-direction:column;
  transition:background-color .34s var(--ease);position:relative;isolation:isolate;
}
.tcard:hover{background:var(--ink-2)}
.tcard__media{position:relative;aspect-ratio:4/5;overflow:hidden;background:linear-gradient(160deg,var(--ink-3),var(--ink-1))}
.tcard__media img{width:100%;height:100%;object-fit:cover;object-position:50% 22%;transition:transform .6s var(--ease-out)}
.tcard__when{
  position:absolute;left:10px;bottom:10px;z-index:2;max-width:calc(100% - 20px);margin:0;
  padding:6px 9px;border-radius:8px;pointer-events:none;
  background:rgba(7,9,14,.82);border:1px solid rgba(74,128,255,.55);
  font-size:.66rem;font-weight:650;line-height:1.3;letter-spacing:.01em;color:var(--cream);
}
.tcard:hover .tcard__media img{transform:scale(1.035)}
.tcard__mono{
  position:absolute;inset:0;display:grid;place-items:center;
  font-family:var(--font-display);font-weight:800;font-stretch:100%;
  font-size:clamp(2.1rem,4.4vw,3.1rem);letter-spacing:-.03em;color:rgba(43,108,255,.3);
  transition:color .4s var(--ease),transform .5s var(--ease-out);
}
.tcard:hover .tcard__mono{color:rgba(74,128,255,.46);transform:scale(1.04)}
.tcard__body{padding:clamp(15px,1.6vw,20px);display:flex;flex-direction:column;gap:5px;flex:1}
.tcard__name{font-family:var(--font-display);font-weight:750;font-size:clamp(.92rem,1.1vw,1.04rem);line-height:1.16;letter-spacing:-.012em;text-wrap:balance}
.tcard__title{font-size:var(--fs-small);color:var(--accent-lift)}
.tcard__line{font-size:var(--fs-small);color:var(--cream-50);text-wrap:pretty}
.tcard__go{
  margin-top:auto;padding-top:12px;display:inline-flex;align-items:center;gap:8px;white-space:nowrap;
  font-size:.66rem;font-weight:650;letter-spacing:.14em;text-transform:uppercase;color:var(--cream-50);
  transition:color .28s var(--ease);
}
.tcard:hover .tcard__go{color:var(--accent-lift)}
.tcard__go svg{transition:transform .32s var(--ease-out)}
.tcard:hover .tcard__go svg{transform:translateX(3px)}
/* Cijela kartica je jedan link — sidro prekriva plohu, tekst ostaje odabiriv */
.tcard__link{position:absolute;inset:0;z-index:1}
.tcard__link:focus-visible{outline-offset:-3px}
.roster__more{
  background:var(--ink-1);display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:12px;
  padding:clamp(20px,2.4vw,30px);transition:background-color .34s var(--ease);
}
.roster__more:hover{background:var(--ink-2)}
.roster-note{margin-top:20px;font-size:var(--fs-small);color:var(--cream-50);max-width:64ch}
.roster__cta{margin-top:clamp(22px,3vw,36px);display:flex;justify-content:center}

.tcard--type{padding:clamp(18px,2vw,24px);gap:11px;min-height:clamp(146px,14vw,172px)}
.tcard--type .tcard__badge{
  width:44px;height:44px;border-radius:11px;flex:none;display:grid;place-items:center;
  background:var(--accent-dim);border:1px solid rgba(43,108,255,.3);
  font-family:var(--font-display);font-weight:800;font-size:.94rem;letter-spacing:.01em;color:var(--accent-lift);
  transition:background-color .34s var(--ease),border-color .34s var(--ease);
}
.tcard--type:hover .tcard__badge{background:rgba(43,108,255,.22);border-color:rgba(74,128,255,.55)}
.tcard--type .tcard__name{font-size:clamp(.95rem,1.15vw,1.08rem)}
.tcard--type .tcard__go{padding-top:14px}
/* Na dva stupca uskog ekrana jedna kartica s recenicom razvuce cijeli red.
   Recenica ostaje na profilu; ovdje su ime i titula dovoljni. */
@media (max-width:639px){.tcard--type .tcard__line{display:none}}
.tcard--static{cursor:default}
.tcard--static:hover{background:var(--ink-1)}
.tcard--placeholder{cursor:default}
.tcard--placeholder:hover{background:var(--ink-1)}
.tcard--placeholder .tcard__media{background:var(--ink-1)}
.tcard--static:hover .tcard__badge{background:var(--accent-dim);border-color:rgba(43,108,255,.3)}
.roster__more--type{min-height:clamp(146px,14vw,172px)}

/* Mentor: tipografska ploha dok fotografija ne stigne */
.mslot--type{aspect-ratio:4/5;display:flex;flex-direction:column;justify-content:space-between;padding:clamp(22px,2.6vw,34px)}
.mslot--type .k{font-size:var(--fs-eyebrow);letter-spacing:.2em;text-transform:uppercase;color:var(--cream-50)}
.mslot--type .big{
  font-family:var(--font-display);font-weight:800;font-stretch:108%;
  font-size:clamp(3.6rem,9vw,6.6rem);line-height:.82;letter-spacing:-.04em;
  color:transparent;-webkit-text-stroke:1px rgba(74,128,255,.5);
}
.mslot--type .rows{display:flex;flex-direction:column;gap:0}
.mslot--type .rows div{display:flex;align-items:baseline;gap:10px;padding-block:9px;border-top:1px solid var(--line)}
.mslot--type .rows b{font-family:var(--font-display);font-weight:800;font-size:1.15rem;color:var(--accent-lift);letter-spacing:-.02em}
.mslot--type .rows span{font-size:var(--fs-small);color:var(--cream-50)}

/* Puni profili na stranici predavača */
.profile{padding-block:clamp(40px,5vw,74px);border-top:1px solid var(--line);scroll-margin-top:calc(var(--nav-h) + 24px)}
.profile__grid{display:grid;gap:clamp(24px,3.4vw,52px)}
@media (min-width:880px){.profile__grid{grid-template-columns:minmax(0,340px) minmax(0,1fr);align-items:start}}
.profile__when{
  display:inline-block;max-width:42ch;margin:0 0 12px;padding:6px 11px;border-radius:8px;
  background:var(--accent-dim);border:1px solid rgba(74,128,255,.45);
  font-size:.78rem;font-weight:650;line-height:1.35;color:var(--accent-lift);
}
.profile__name{margin-top:4px}
.profile__title{margin-top:10px;color:var(--accent-lift);font-size:var(--fs-lead)}
.profile__stats{display:flex;flex-wrap:wrap;gap:18px 32px;margin-top:18px}
.profile__stat{display:flex;flex-direction:column;gap:4px}
.profile__stat span{font-size:var(--fs-eyebrow);letter-spacing:.18em;text-transform:uppercase;color:var(--cream-50);font-weight:600}
.profile__stat b{font-family:var(--font-display);font-weight:750;font-size:1.2rem;letter-spacing:-.02em}
.profile__meta{margin-top:22px;display:grid;gap:18px}
.profile__meta h3{font-size:var(--fs-eyebrow);letter-spacing:.18em;text-transform:uppercase;color:var(--cream-50);font-weight:600;font-family:var(--font-body)}
.profile__meta ul{display:flex;flex-wrap:wrap;gap:8px;margin-top:9px}
.profile__pending{margin-top:20px;font-size:var(--fs-small);color:var(--cream-50);border-left:1px solid var(--line-2);padding-left:16px;max-width:56ch}
.disclose{margin-top:22px}
.disclose__btn{display:inline-flex;align-items:center;gap:10px;font-size:.76rem;font-weight:650;letter-spacing:.12em;text-transform:uppercase;color:var(--cream);border-bottom:1px solid var(--line-2);padding-bottom:6px;transition:border-color .28s var(--ease),color .28s var(--ease)}
.disclose__btn:hover{border-color:var(--accent);color:var(--accent-lift)}
.disclose__btn svg{transition:transform .34s var(--ease-out)}
.disclose__btn[aria-expanded="true"] svg{transform:rotate(180deg)}
.disclose__panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows .42s var(--ease-out)}
.disclose__panel[data-open="true"]{grid-template-rows:1fr}
.disclose__panel>div{overflow:hidden;min-height:0}
.disclose__panel .inner{padding-top:20px;display:grid;gap:14px}

/* ---------- 19. RAZLIKA (sa sustavom / bez) ---------- */
.gap2{display:grid;margin-top:clamp(30px,4vw,54px);border-top:1px solid var(--line)}
@media (min-width:880px){.gap2{grid-template-columns:1fr 1fr}}
.gap2__col{padding:clamp(26px,3vw,40px) 0}
@media (min-width:880px){
  .gap2__col:first-child{padding-right:clamp(30px,4vw,62px)}
  .gap2__col:last-child{padding-left:clamp(30px,4vw,62px);border-left:1px solid var(--line)}
}
@media (max-width:879px){.gap2__col:last-child{border-top:1px solid var(--line)}}
.gap2__t{font-family:var(--font-display);font-weight:750;font-size:clamp(1.05rem,1.5vw,1.32rem);letter-spacing:-.012em}
.gap2__col--with .gap2__t{color:var(--cream)}
.gap2__col--without .gap2__t{color:var(--cream-50)}
.gap2__list{margin-top:18px;display:flex;flex-direction:column}
.gap2__list li{padding-block:12px;border-bottom:1px solid var(--line);text-wrap:pretty;font-size:var(--fs-body)}
.gap2__col--with li{color:var(--cream-80)}
.gap2__col--with li::before{content:"";display:inline-block;width:5px;height:5px;border-radius:999px;background:var(--accent);margin-right:12px;vertical-align:middle}
.gap2__col--without li{color:var(--cream-50)}
.gap2__col--without li::before{content:"";display:inline-block;width:5px;height:1px;background:var(--cream-50);margin-right:12px;vertical-align:middle}
.gap2__close{margin-top:clamp(28px,3.4vw,46px);font-family:var(--font-serif);font-style:italic;font-size:clamp(1.15rem,1.9vw,1.6rem);line-height:1.4;color:var(--cream-80);max-width:52ch;text-wrap:pretty}

/* ---------- 20. PRIGOVORI (statični uredničke redovi) ---------- */
.objs{margin-top:clamp(30px,4vw,54px);border-top:1px solid var(--line)}
.objs li{display:grid;gap:8px clamp(24px,4vw,64px);padding-block:clamp(22px,2.6vw,34px);border-bottom:1px solid var(--line)}
.objs .q{position:relative;padding-left:20px}
.objs .q::before{content:"";position:absolute;left:0;top:.42em;width:9px;height:1.5px;background:var(--accent)}
@media (min-width:880px){.objs li{grid-template-columns:minmax(0,26ch) minmax(0,1fr);align-items:start}}
.objs .q{font-family:var(--font-display);font-weight:750;font-size:clamp(1.02rem,1.5vw,1.32rem);line-height:1.2;letter-spacing:-.014em;text-wrap:balance}
.objs .a{color:var(--cream-64);text-wrap:pretty;max-width:62ch}

/* ---------- 21. INVESTICIJA — svijetla konverzijska sekcija ---------- */
.light{background:var(--light);color:var(--on-light)}
.light .body-text{color:var(--on-light-64)}
.light .rule{background:var(--on-light-line)}
.invest__grid{display:grid;gap:clamp(30px,4vw,64px);align-items:start}
@media (min-width:940px){.invest__grid{grid-template-columns:minmax(0,1fr) minmax(0,420px)}}
.invest__card{
  background:#fff;border:1px solid var(--on-light-line);border-radius:var(--r-lg);
  padding:clamp(26px,3vw,40px);box-shadow:0 22px 60px rgba(8,11,20,.10);
}
.invest__row{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding-block:12px}
.invest__row + .invest__row{border-top:1px solid var(--on-light-line)}
.invest__k{font-size:var(--fs-small);color:var(--on-light-64)}
.invest__was{
  display:inline-flex;align-items:center;gap:.28em;
  font-family:var(--font-display);font-weight:750;
  font-size:clamp(1.7rem,2.8vw,2.15rem);letter-spacing:-.02em;line-height:1;
  color:var(--on-light);
}
.invest__was svg{width:.78em;height:.78em;color:#b91c1c;flex:none}
.invest__now{
  font-family:var(--font-display);font-weight:800;font-stretch:104%;
  font-size:clamp(2.6rem,5.4vw,4rem);line-height:1;letter-spacing:-.035em;color:var(--on-light);
}
.invest__deadline{margin-top:16px;font-size:var(--fs-small);color:var(--on-light-64);text-wrap:pretty}
.invest__incl{margin-top:22px;display:flex;flex-direction:column;gap:0}
.invest__incl li{display:grid;grid-template-columns:18px 1fr;gap:11px;padding-block:10px;border-top:1px solid var(--on-light-line);font-size:var(--fs-small);color:var(--on-light)}
.invest__incl svg{margin-top:4px;color:var(--accent-deep);flex:none}
.invest__cta{margin-top:24px;display:flex;flex-direction:column;gap:12px}
.invest__cta .btn{width:100%}

/* ---------- 22. FAQ ---------- */
.faq{margin-top:clamp(30px,4vw,54px);border-top:1px solid var(--line);max-width:920px;margin-inline:auto}
#faq .head{margin-inline:auto;text-align:center}
.faq__item{border-bottom:1px solid var(--line)}
.faq__btn{width:100%;display:grid;grid-template-columns:1fr auto;align-items:center;gap:20px;padding-block:clamp(17px,2vw,23px);text-align:left}
.faq__q{font-family:var(--font-display);font-weight:700;font-size:clamp(.98rem,1.3vw,1.14rem);line-height:1.24;letter-spacing:-.01em;text-wrap:balance;transition:color .28s var(--ease)}
.faq__btn:hover .faq__q{color:var(--accent-lift)}
.faq__ico{width:26px;height:26px;display:grid;place-items:center;flex:none}
.faq__ico i{position:relative;display:block;width:11px;height:1.5px;background:var(--cream-50)}
.faq__ico i::after{content:"";position:absolute;inset:0;background:var(--cream-50);transform:rotate(90deg);transition:transform .34s var(--ease-out)}
.faq__btn[aria-expanded="true"] .faq__ico i,.faq__btn[aria-expanded="true"] .faq__ico i::after{background:var(--accent)}
.faq__btn[aria-expanded="true"] .faq__ico i::after{transform:rotate(0)}
.faq__panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows .4s var(--ease-out)}
.faq__panel[data-open="true"]{grid-template-rows:1fr}
.faq__panel>div{overflow:hidden;min-height:0}
.faq__a{padding-bottom:clamp(18px,2.2vw,26px);color:var(--cream-64);max-width:74ch;text-wrap:pretty}

/* ---------- 23. FINALE ---------- */
.finale{position:relative;overflow:hidden}
.finale::before{
  content:"";position:absolute;inset:0;z-index:-1;
  background:radial-gradient(80ch 46ch at 50% 110%,rgba(43,108,255,.18),transparent 68%);
}
.finale__h{max-width:16ch}
.finale__body{margin-top:24px;display:grid;gap:14px;max-width:62ch}
.finale__close{margin-top:26px;font-family:var(--font-serif);font-style:italic;font-size:clamp(1.3rem,2.4vw,2rem);color:var(--cream)}
.logo-lockup-wrap{margin-top:clamp(36px,4.4vw,64px)}
.logo-lockup-wrap .logo-lockup{width:min(980px,100%)}

/* ---------- 24. FOOTER ---------- */
.ftr{border-top:1px solid var(--line);padding-block:clamp(44px,5vw,72px) 32px;background:var(--ink-1)}
.ftr__grid{display:grid;gap:clamp(28px,4vw,56px)}
@media (min-width:980px){.ftr__grid{grid-template-columns:minmax(0,1.35fr) repeat(3,minmax(0,1fr))}}
.ftr__line{margin-top:14px;color:var(--cream-50);font-size:var(--fs-small);max-width:44ch;text-wrap:pretty}
.ftr__who{margin-top:4px;color:var(--cream-50);font-size:var(--fs-small);max-width:28ch;text-wrap:pretty}
.ftr h2{font-size:var(--fs-eyebrow);letter-spacing:.18em;text-transform:uppercase;color:var(--cream-50);font-weight:600;font-family:var(--font-body)}
.ftr__links{margin-top:10px;display:flex;flex-direction:column;gap:2px}
/* Dodir mora imati barem 44px visine — tekst je 13px, pa razmak nosi ostatak. */
.ftr__links a{display:inline-flex;align-items:center;min-height:40px;padding-block:2px;font-size:var(--fs-small);color:var(--cream-64);transition:color .25s var(--ease);width:fit-content}
.ftr__links a:hover{color:var(--accent-lift)}
.ftr__bot{margin-top:clamp(34px,4vw,58px);padding-top:22px;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:12px 24px;align-items:center;justify-content:space-between}
.ftr__bot p{font-size:var(--fs-small);color:var(--cream-50)}
.ftr__bot a{display:inline-flex;align-items:center;min-height:40px;font-size:var(--fs-small);color:var(--cream-50)}
.ftr__bot a:hover{color:var(--cream-80)}

/* ---------- 25. STRANIČNI HERO (podstranice) ---------- */
.phero{padding-top:calc(var(--nav-h) + clamp(44px,7vw,88px));padding-bottom:clamp(34px,4.5vw,64px);position:relative;overflow:hidden}
.phero::before{
  content:"";position:absolute;inset:0;z-index:-1;
  background:radial-gradient(80ch 52ch at 8% -18%,rgba(43,108,255,.13),transparent 62%);
}
.phero h1{margin-top:18px;max-width:18ch;letter-spacing:-.028em}
.phero h1 em{
  display:block;margin-top:.2em;
  font-family:var(--font-serif);font-style:italic;font-weight:400;
  font-size:.84em;line-height:1.04;letter-spacing:-.01em;
  font-stretch:normal;color:var(--accent-lift);
}
.light .phero h1 em{color:var(--accent-deep)}
.phero .lead{margin-top:20px}
.help-card{
  max-width:40rem;border:1px solid var(--line);border-radius:var(--r-lg);
  padding:clamp(26px,3.4vw,44px);
  background:linear-gradient(140deg,var(--ink-2),var(--ink-1));
  display:flex;flex-direction:column;align-items:flex-start;gap:10px;
}
.help-card .phone{
  font-family:var(--font-display);font-weight:650;font-stretch:112%;
  font-size:clamp(1.6rem,3vw,2.4rem);letter-spacing:-.02em;line-height:1.15;color:var(--cream);
}
.help-card .phone:hover{color:var(--accent-lift)}
.help-card .who{color:var(--cream-64)}
.help-card .btn{margin-top:14px}

/* ---------- 25b. LLM-INFO ---------- */
.llm h2{margin-top:clamp(40px,5vw,68px)}
.llm h2 + .body-text,.llm h2 + .sheet-wrap,.llm h2 + .llm-list{margin-top:16px}
.llm .body-text + .body-text{margin-top:1em}
.llm .body-text + .llm-list,.llm .llm-list + .body-text{margin-top:14px}
.llm-list{max-width:74ch;display:flex;flex-direction:column;gap:8px;list-style:disc;padding-left:1.15em}
.llm-list li{color:var(--cream-64);text-wrap:pretty}
.llm-list strong{color:var(--cream);font-weight:600}
.llm-list a{color:var(--cream)}
.llm-list a:hover{color:var(--accent-lift)}
.sheet-wrap{max-width:100%;overflow-x:auto}
.sheet{width:100%;min-width:640px;border-collapse:collapse}
.sheet th,.sheet td{text-align:left;vertical-align:top;padding:12px 18px 12px 0;border-bottom:1px solid var(--line);color:var(--cream-64);font-size:var(--fs-small);text-wrap:pretty}
.sheet th:nth-child(1),.sheet td:nth-child(1){width:22%}
.sheet th:nth-child(2),.sheet td:nth-child(2){width:28%}
.sheet th{color:var(--cream-80);font-weight:600;font-size:var(--fs-eyebrow);letter-spacing:.12em;text-transform:uppercase}
.crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:9px;font-size:var(--fs-small);color:var(--cream-50);margin-bottom:22px}
.crumbs a:hover{color:var(--cream-80)}
.crumbs svg{opacity:.5}

/* Recenzije — horizontalna traka (nativni scroll, snap, strelice) */
.reviews .head{margin-bottom:clamp(18px,2.4vw,28px)}
.strip{position:relative;padding-bottom:0}
.strip:not(.is-looping){padding-bottom:56px}
.strip::before,.strip::after{
  content:"";position:absolute;top:0;bottom:56px;width:clamp(16px, var(--pad), 56px);z-index:1;
  pointer-events:none;
}
.strip.is-looping::before,.strip.is-looping::after{bottom:0}
.strip::before{left:0;background:linear-gradient(90deg,var(--ink),transparent)}
.strip::after{right:0;background:linear-gradient(90deg,transparent,var(--ink))}
.strip__scroller{
  overflow-x:auto;overflow-y:hidden;
  scroll-snap-type:x mandatory;
  scroll-padding-inline:var(--pad);
  overscroll-behavior-x:contain;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:none;
  /* pan-y pušta vertikalni potez na stranicu; pan-x i dalje vuče traku. */
  touch-action:pan-x pan-y;
}
.strip__scroller::-webkit-scrollbar{display:none}
.strip--infinite .strip__scroller,
.strip__scroller.is-looping{scroll-snap-type:none}
.strip.is-looping .strip__nav{opacity:0;visibility:hidden;pointer-events:none}
.strip:not(.is-looping) .strip__nav:not(:disabled){opacity:1;visibility:visible}
.strip__track{
  display:flex;gap:16px;width:max-content;
  padding-inline:var(--pad);
  padding-block:4px 8px;
}
.strip__track--quotes{align-items:flex-start}
.strip__nav{
  position:absolute;top:auto;bottom:4px;left:50%;
  z-index:3;width:44px;height:44px;border-radius:999px;
  display:grid;place-items:center;color:var(--cream);
  background:rgba(5,7,13,.72);border:1px solid var(--line-2);
  backdrop-filter:blur(8px);
  transition:opacity .2s var(--ease), background .2s var(--ease), visibility .2s;
}
.strip__nav:hover{background:rgba(5,7,13,.9)}
.strip__nav:focus-visible{outline:2px solid var(--accent-lift);outline-offset:3px}
.strip__nav--prev{transform:translateX(calc(-100% - 8px))}
.strip__nav--next{right:auto;transform:translateX(8px)}
.strip__nav:disabled{opacity:0;visibility:hidden;pointer-events:none}
@media (min-width:820px){
  .strip__nav{width:48px;height:48px}
}
.vcard{width:min(240px,70vw);flex:none;scroll-snap-align:start}
.vcard__btn{
  display:block;width:100%;padding:0;margin:0;border:0;background:none;
  color:inherit;text-align:left;cursor:pointer;border-radius:14px;
}
.vcard__btn:focus-visible{outline:2px solid var(--accent-lift);outline-offset:4px}
.vcard__frame{
  display:block;position:relative;isolation:isolate;aspect-ratio:9/16;border-radius:14px;overflow:hidden;
  border:1px solid var(--line);
  background:linear-gradient(165deg,var(--ink-3),var(--ink-1));
}
.vcard__poster{width:100%;height:100%;object-fit:cover;display:block;pointer-events:none}
.vcard__play{
  position:absolute;top:50%;left:50%;z-index:1;
  transform:translate(-50%,-50%);
  width:56px;height:56px;border-radius:999px;display:grid;place-items:center;
  background:rgba(5,7,13,.62);border:1px solid var(--line-2);color:var(--cream);
  pointer-events:none;
  transition:transform .25s var(--ease-out), background .25s var(--ease);
}
.vcard__btn:hover .vcard__play{transform:translate(-50%,-50%) scale(1.06);background:rgba(5,7,13,.78)}
.vcard__name,.vcard__meta{display:block;pointer-events:none}
.vcard__name{margin-top:12px;font-family:var(--font-display);font-weight:750;font-size:.95rem}
.vcard__meta{margin-top:4px;font-size:var(--fs-small);color:var(--cream-50)}
.qcard{
  width:min(400px,82vw);flex:none;align-self:flex-start;height:auto;margin:0;padding:16px 18px 18px;
  border:0;border-radius:18px;background:#fff;color:#111;
  scroll-snap-align:start;
  box-shadow:0 12px 32px rgba(0,0,0,.22);
}
.qcard--mid{width:min(520px,88vw)}
.qcard--long{width:min(640px,92vw)}
.qcard--xl{width:min(780px,92vw)}
.qcard__who{display:flex;align-items:center;gap:12px;margin-bottom:14px}
.qcard__avatar{
  flex:none;width:56px;height:56px;border-radius:50%;
  display:grid;padding:0;background:#e4e7ee;color:inherit;text-decoration:none;
}
.qcard__avatar--story{
  padding:3px;
  background:conic-gradient(from 200deg,#f7d441,#f56040 28%,#c13584 52%,#833ab4 74%,#f7d441);
}
.qcard__avatar img{
  width:100%;height:100%;border-radius:50%;object-fit:cover;display:block;background:#e4e7ee;
}
.qcard__avatar--story img{border:3px solid #fff}
.qcard__id{display:flex;flex-direction:column;gap:1px;min-width:0}
.qcard cite{
  font-style:normal;font-family:var(--font-display);font-weight:750;
  font-size:.95rem;line-height:1.2;color:#111;letter-spacing:-.01em;
}
a.qcard__name{color:inherit;text-decoration:none}
a.qcard__name:hover cite{text-decoration:underline}
.qcard__avatar:focus-visible,a.qcard__ig:focus-visible,a.qcard__name:focus-visible{outline:2px solid #111;outline-offset:3px}
.qcard__ig{
  font-size:.8rem;line-height:1.3;color:#262626;text-decoration:none;font-weight:550;
}
a.qcard__ig:hover{text-decoration:underline}
.qcard__quote{
  margin:0;
  font-family:var(--font-serif);font-style:italic;font-size:1.02rem;line-height:1.45;
  color:#111;text-wrap:pretty;
}
.qcard.is-clamp:not(.is-open) .qcard__quote{
  display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:8;line-clamp:8;
  overflow:hidden;
}
.qcard__more{
  display:block;margin:12px 0 0;padding:0;border:0;background:none;
  color:var(--accent-deep);font-family:var(--font-body);font-style:normal;
  font-weight:650;font-size:.84rem;line-height:1.3;letter-spacing:-.01em;
  cursor:pointer;text-decoration:underline;text-underline-offset:.18em;
}
.qcard__more[hidden]{display:none}
.qcard__more:hover{color:#111}
.qcard__more:focus-visible{outline:2px solid #111;outline-offset:3px}

/* Kalkulator zarade — ispod pisanih recenzija */
.earn{
  margin-top:clamp(28px,3.6vw,48px);
  border:0;
  border-radius:var(--r-lg);
  background:#fff;
  color:var(--on-light);
  padding:clamp(22px,3.2vw,40px);
  box-shadow:0 18px 48px rgba(0,0,0,.2);
}
.earn__row{
  display:grid;gap:12px 32px;
  padding-block:clamp(16px,2.1vw,24px);
}
.earn__row:first-child{padding-top:0}
.earn__row + .earn__row{border-top:1px solid var(--on-light-line)}
@media (min-width:760px){
  .earn__row{grid-template-columns:minmax(0,1fr) auto;align-items:end}
}
.earn__label{
  display:block;
  font-family:var(--font-display);font-weight:750;
  font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;
}
.earn__hint{margin-top:6px;max-width:48ch;font-size:var(--fs-small);color:var(--on-light-64);text-wrap:pretty}
.earn__step{display:flex;align-items:center;gap:8px;margin-top:14px;width:fit-content}
.earn__stepbtn{
  width:44px;height:44px;border-radius:12px;
  border:1px solid var(--on-light-line);color:var(--on-light);
  background:var(--light);
  font-size:1.35rem;line-height:1;
  transition:background .2s var(--ease), border-color .2s var(--ease), transform .15s var(--ease);
}
.earn__stepbtn:hover{background:var(--light-2);border-color:rgba(8,11,20,.28)}
.earn__stepbtn:active{transform:translateY(1px)}
.earn__input{
  width:6.4rem;height:52px;border-radius:12px;
  border:1px solid var(--on-light-line);background:var(--light);color:var(--on-light);
  font-family:var(--font-display);font-weight:750;font-size:1.45rem;
  text-align:center;font-variant-numeric:tabular-nums;
  -moz-appearance:textfield;appearance:textfield;
}
.earn__input::-webkit-outer-spin-button,
.earn__input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.earn__input:focus-visible{border-color:var(--accent-deep);outline-color:var(--accent-deep)}
.earn__out-k{display:block;font-size:var(--fs-small);color:var(--on-light-64)}
.earn__out-v{
  display:block;margin-top:4px;
  font-family:var(--font-display);font-weight:800;font-stretch:104%;
  font-size:clamp(1.65rem,2.5vw,2.3rem);letter-spacing:-.03em;line-height:1;
}
.earn__per{display:block;margin-top:4px;font-size:var(--fs-small);color:var(--on-light-64)}
@media (min-width:760px){
  .earn__out{text-align:right;min-width:12ch}
}
.earn__total{
  margin-top:clamp(18px,2.2vw,26px);
  padding-top:clamp(16px,2vw,22px);
  border-top:1px solid var(--on-light-line);
  display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:6px 24px;
}
.earn__total-k{
  font-family:var(--font-display);font-weight:750;
  letter-spacing:.08em;text-transform:uppercase;font-size:.82rem;
}
.earn__total .earn__per{display:inline;margin:0 0 0 8px;letter-spacing:0;text-transform:none;font-family:var(--font-body);font-weight:450}
.earn__total-v{
  font-family:var(--font-display);font-weight:800;font-stretch:104%;
  font-size:clamp(2.15rem,4.2vw,3.15rem);letter-spacing:-.035em;line-height:.95;
  color:var(--accent-deep);
}
.earn__total-v.is-pop{animation:earnPop .45s var(--ease-out)}
@keyframes earnPop{from{transform:translateY(10px)}to{transform:none}}

.review-dlg{padding:0;border:0;background:transparent;max-width:none;width:auto}
.review-dlg[open]{
  position:fixed;inset:0;width:100%;height:100%;max-width:none;margin:0;
  display:grid;place-items:center;
}
.review-dlg::backdrop{background:rgba(5,7,13,.84)}
.review-dlg__box{position:relative;width:min(420px,92vw);overflow:hidden;border-radius:16px;background:#000}
.review-dlg__video{
  display:block;width:100%;max-height:86vh;background:#000;
  aspect-ratio:9/16;object-fit:contain;
}
.review-dlg__x{
  position:absolute;top:10px;right:10px;z-index:3;
  width:44px;height:44px;border-radius:999px;display:grid;place-items:center;
  color:var(--cream);background:rgba(5,7,13,.7);border:1px solid var(--line-2);
}
.review-dlg__x:hover{background:rgba(5,7,13,.9)}
.review-dlg__ui{
  position:absolute;left:0;right:0;bottom:0;z-index:2;
  display:flex;align-items:center;gap:8px;
  padding:28px 12px 12px;
  background:linear-gradient(180deg,transparent,rgba(5,7,13,.88));
  opacity:0;transform:translateY(6px);
  pointer-events:none;
  transition:opacity .2s var(--ease), transform .2s var(--ease);
}
.review-dlg__box:hover .review-dlg__ui,
.review-dlg__box.is-ui .review-dlg__ui,
.review-dlg__ui:focus-within{
  opacity:1;transform:none;pointer-events:auto;
}
@media (hover:none){
  .review-dlg__ui{opacity:1;transform:none;pointer-events:auto}
}
.review-dlg__toggle,.review-dlg__iconbtn{
  flex:none;width:40px;height:40px;border-radius:10px;
  display:grid;place-items:center;color:var(--cream);background:transparent;
}
.review-dlg__toggle:hover,.review-dlg__iconbtn:hover{background:rgba(242,245,250,.08)}
.review-dlg__seek{
  flex:1;min-width:0;height:6px;margin:0;accent-color:var(--accent-lift);cursor:pointer;
}
.review-dlg__time{
  flex:none;font-size:var(--fs-small);color:var(--cream-80);font-variant-numeric:tabular-nums;
  min-width:7.5ch;
}
.review-dlg__box.is-paused .review-dlg__ico--pause,
.review-dlg__box:not(.is-paused) .review-dlg__ico--play,
.review-dlg__box.is-muted .review-dlg__ico--vol,
.review-dlg__box:not(.is-muted) .review-dlg__ico--muted{display:none}

/* ---------- 26. MOTION ---------- */
/* Otkrivanje sekcija. Bez JS-a je sve odmah vidljivo — dekoracija nikad ne
   smije sakriti sadržaj. */
/* SAMO transform, bez opacity. Dva razloga:
   1) tekst koji tone iz poluprozirnog stanja Lighthouse zna uhvatiti usred
      prijelaza i prijaviti pad kontrasta koji stvarno nikad ne postoji;
   2) transform ide preko kompozitora, pa nema posla po frameu ni rizika da
      LCP element bude "neobojan" kad ga preglednik mjeri. */
.reveal{transform:translateY(18px);transition:transform .7s var(--ease-out)}
html.no-js .reveal,.reveal.is-in{transform:none}
/* Oblačići ispod videa ulaze jedan za drugim. Kašnjenje je na animaciji,
   ne na transition-delay, da hover ne čeka isti razmak. */
/* Hero ulaz. Naslov se NE gasi u opacity — LCP element mora biti obojan
   odmah, pa se pomiče samo transformom. Ostali elementi smiju blago izroniti. */
/* Isti razlog kao kod .reveal: nigdje na stranici ne animiramo prozirnost
   teksta, pa nijedan alat ne moze uhvatiti tekst u poluprozirnom stanju. */
@keyframes heroRise{from{transform:translateY(18px)}to{transform:none}}
@keyframes heroIn{from{transform:translateY(16px)}to{transform:none}}
@keyframes heroAsideIn{from{transform:translateY(calc(-50% + 16px))}to{transform:translateY(-50%)}}
.hero--in h1{animation:heroRise .78s var(--ease-out) both}
.hero--in .eyebrow{animation:heroIn .6s var(--ease-out) both}
.hero--in .hero__video{animation:heroIn .68s var(--ease-out) .08s both}
.hero--in .lead{animation:heroIn .68s var(--ease-out) .14s both}
.hero--in .hero__cta{animation:heroIn .68s var(--ease-out) .18s both}
.hero--in .cta-note{animation:heroIn .68s var(--ease-out) .24s both}
.hero--in .hero__ticks{animation:heroIn .68s var(--ease-out) .3s both}
.hero--in .hero__aside{animation:heroAsideIn .78s var(--ease-out) .34s both}
@media (max-width:1023px){
  .hero--in .hero__aside{animation:none;transform:none}
}

/* ---------- 27. REDUCED MOTION ---------- */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{
    animation-duration:.001ms!important;animation-iteration-count:1!important;
    transition-duration:.001ms!important;scroll-behavior:auto!important;
  }
  .reveal{transform:none!important;transition:none!important}
  .hero__scroll i::after{animation:none;transform:scaleX(1)}
  .hero--in h1,.hero--in .eyebrow,.hero--in .hero__video,.hero--in .lead,.hero--in .hero__cta,
  .hero--in .cta-note,.hero--in .hero__ticks,.hero--in .hero__aside{animation:none!important}
}

/* ---------- 28. UTIL ---------- */
.vh{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}
.nowrap{white-space:nowrap}
body.menu-open{overflow:hidden}
