/* =========================================================================
   Autoškola Mitrović & Tea, Bijeljina
   Mobile-first stil. Prelomne tačke: 360, 600, 700, 900, 1000, 1080 px
   ========================================================================= */

/* ---------- Fontovi (self-hosted, OFL licenca). Samo debljine koje stranica koristi:
   Bricolage Grotesque 700 i 800, Instrument Sans 400, 500, 600 i 700. ---------- */
@font-face{font-family:'Bricolage Grotesque';font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/bricolage-grotesque-latin-700-normal.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}
@font-face{font-family:'Bricolage Grotesque';font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/bricolage-grotesque-latin-ext-700-normal.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:'Bricolage Grotesque';font-style:normal;font-weight:800;font-display:swap;src:url(../fonts/bricolage-grotesque-latin-800-normal.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}
@font-face{font-family:'Bricolage Grotesque';font-style:normal;font-weight:800;font-display:swap;src:url(../fonts/bricolage-grotesque-latin-ext-800-normal.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:'Instrument Sans';font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/instrument-sans-latin-400-normal.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}
@font-face{font-family:'Instrument Sans';font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/instrument-sans-latin-ext-400-normal.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:'Instrument Sans';font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/instrument-sans-latin-500-normal.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}
@font-face{font-family:'Instrument Sans';font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/instrument-sans-latin-ext-500-normal.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:'Instrument Sans';font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/instrument-sans-latin-600-normal.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}
@font-face{font-family:'Instrument Sans';font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/instrument-sans-latin-ext-600-normal.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:'Instrument Sans';font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/instrument-sans-latin-700-normal.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}
@font-face{font-family:'Instrument Sans';font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/instrument-sans-latin-ext-700-normal.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}

/* ---------- Tokeni ---------- */
:root{
  --brand:#0E3B43; --brand-2:#14505A; --deep:#0A2C32; --accent:#F4B63F;
  --ink:#132326; --mut:#4E6266; --line:#D6E0DF; --bg:#F5F7F6; --tint:#E4EEED;
  --cream:#FCF0D3; --ondark:#C9DCDB; --ok:#1E7B4F; --bad:#B83A2A;
  --ff:'Instrument Sans','Segoe UI',system-ui,-apple-system,Roboto,sans-serif;
  --fd:'Bricolage Grotesque','Segoe UI',system-ui,-apple-system,sans-serif;
  --gutter:clamp(14px,5vw,40px);
  --maxw:1100px;
  --r-xl:clamp(20px,3vw,32px);
  --r-lg:clamp(18px,2.4vw,24px);
  --topbar-h:clamp(64px,7vw,86px);
  --focus:#0E3B43;
}

/* ---------- Osnova ---------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:12px;background:var(--brand)}
body{margin:0;min-width:0;background:var(--bg);color:var(--ink);font-family:var(--ff);font-size:1rem;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}
img,svg{display:block;max-width:100%}
img{height:auto}
a{color:inherit}
h1,h2,h3,p,li,dd,dt,blockquote,figcaption,legend,label{overflow-wrap:break-word}
h1,h2,h3{text-wrap:balance}
button,input{font:inherit}
button{color:inherit}
:focus-visible{outline:3px solid var(--focus);outline-offset:2px}
.hero,.dark-block,.menu,.footer,.slider,.carslider,.cat--brand,.cell--brand,.cell--deep{--focus:#F4B63F}
.ic{width:20px;height:20px;flex-shrink:0}
[hidden]{display:none !important}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}

.skip{position:absolute;left:8px;top:-80px;z-index:300;padding:12px 18px;border-radius:8px;background:var(--accent);color:var(--ink);font-weight:700;text-decoration:none}
.skip:focus{top:8px}

.wrap{width:100%;max-width:calc(var(--maxw) + 2 * var(--gutter));margin-inline:auto;padding-inline:var(--gutter)}
.stack-lg{display:flex;flex-direction:column;gap:clamp(32px,5vw,56px)}

/* ---------- Tipografija i naslovi ---------- */
h2{margin:0;font-family:var(--fd);font-weight:800;font-size:clamp(1.75rem,1.05rem + 3vw,3.375rem);line-height:1.04;letter-spacing:-.035em;color:var(--ink)}
.h2-xl{font-size:clamp(2rem,1.2rem + 3.4vw,3.75rem)}
.head{display:flex;flex-direction:column;gap:16px;min-width:0}
.head p{margin:0;max-width:60ch;font-size:clamp(1rem,.95rem + .3vw,1.125rem);line-height:1.6;color:var(--mut)}
.head2{display:grid;gap:16px}
.head2 > p{margin:0;font-size:clamp(1rem,.95rem + .3vw,1.125rem);line-height:1.6;color:var(--mut)}
.dark-block .head p{color:var(--ondark)}
.dark-block h2{color:#fff}
.eyebrow{align-self:flex-start;display:inline-flex;align-items:center;gap:8px;padding:7px 14px;border-radius:999px;background:#fff;color:var(--brand);font-size:13px;font-weight:700;letter-spacing:.12em;line-height:1.2;text-transform:uppercase}
.eyebrow::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;flex-shrink:0}
.eyebrow--dark{background:rgba(255,255,255,.1);color:var(--accent)}

@media (min-width:900px){
  .head2{grid-template-columns:minmax(0,600px) minmax(0,1fr);gap:72px;align-items:end}
}

/* ---------- Dugmad ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:10px 20px;border:1.5px solid transparent;border-radius:8px;font-family:var(--ff);font-size:1rem;font-weight:700;line-height:1.2;text-align:center;text-decoration:none;cursor:pointer;transition:filter .15s ease,background-color .15s ease,color .15s ease,transform .15s ease}
.btn .ic{width:20px;height:20px}
.btn:active{transform:translateY(1px)}
.btn--accent{background:var(--accent);color:var(--ink)}
.btn--accent:hover{filter:brightness(1.06)}
.btn--brand{background:var(--brand);color:#fff}
.btn--brand:hover{filter:brightness(1.3)}
.btn--outline{border-color:var(--ink);color:var(--ink);background:transparent}
.btn--outline:hover{background:var(--ink);color:#fff}
.btn--ghost-light{border-color:rgba(255,255,255,.4);color:#fff;background:transparent}
.btn--ghost-light:hover{background:rgba(255,255,255,.1);border-color:#fff}
.btn--block{display:flex;width:100%}
.btn--lg{min-height:58px;font-size:1.0625rem}
.btn--sm{min-height:46px;padding:8px 18px;font-size:15px}
.btnrow{display:flex;flex-wrap:wrap;gap:12px}
.btnrow > .btn{flex:1 1 100%}
@media (min-width:480px){
  .btn{white-space:nowrap}
  .btnrow > .btn{flex:0 1 auto}
}

.textlink{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0;border:0;background:none;color:inherit;font-family:var(--ff);font-size:15px;font-weight:700;text-decoration:none;cursor:pointer}
.textlink .ic{width:18px;height:18px}
.textlink:hover{text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:2px}
.textlink--dark{color:var(--brand);justify-content:flex-start;align-self:flex-start}

.iconbtn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:44px;min-height:44px;padding:0 12px;border:1.5px solid rgba(255,255,255,.3);border-radius:8px;background:transparent;color:#fff;font-size:15px;font-weight:600;text-decoration:none;cursor:pointer}
.iconbtn:hover{border-color:#fff;background:rgba(255,255,255,.08)}

/* CTA red */
.ctarow{display:flex;flex-direction:column;gap:16px;padding:20px;background:#fff;border:1px solid var(--line);border-radius:14px}
.ctarow p{margin:0;font-family:var(--fd);font-weight:700;font-size:clamp(1.125rem,1rem + .5vw,1.3125rem);line-height:1.3;letter-spacing:-.01em}
.ctarow__btns{display:flex;flex-direction:column;gap:10px}
.ctarow--tint{background:var(--tint);border-color:transparent}
@media (min-width:600px){
  .ctarow__btns{flex-direction:row;flex-wrap:wrap}
}
@media (min-width:1000px){
  .ctarow{flex-direction:row;align-items:center;justify-content:space-between;gap:28px;padding:22px 26px}
  .ctarow p{max-width:520px}
  .ctarow__btns{flex-shrink:0;flex-wrap:nowrap}
}

/* ---------- Logo ---------- */
.logo{display:inline-flex;flex-direction:column;gap:3px;line-height:1;text-decoration:none;color:var(--brand)}
.logo__small{font-size:10px;font-weight:700;letter-spacing:.24em;color:var(--mut)}
.logo__big{display:flex;align-items:center;font-family:var(--fd);font-weight:800;font-size:26px;letter-spacing:-.01em}
.logo--dark{color:#fff}
.logo--dark .logo__small{color:var(--accent)}
.logo__amp{margin-left:.18em;white-space:nowrap}
.tl{display:inline-flex;flex-direction:column;justify-content:space-between;align-items:center;width:12px;height:24px;margin:0 2px;padding:2px 0;background:var(--deep);border:1.5px solid currentColor;border-radius:4px}
.tl i{display:block;width:5px;height:5px;border-radius:50%;background:#34474A}
.tl-r{animation:tlR 6s infinite}.tl-a{animation:tlA 6s infinite}.tl-g{animation:tlG 6s infinite}
@keyframes tlR{0%,30%{background:#E36B5A}33%,100%{background:#34474A}}
@keyframes tlA{0%,30%{background:#34474A}33%,63%{background:#F4B63F}66%,100%{background:#34474A}}
@keyframes tlG{0%,63%{background:#34474A}66%,97%{background:#3FB27F}100%{background:#34474A}}

/* ---------- Gornja traka ---------- */
/* Fiksirana traka: na vrhu stranice je providna preko hero-a. Kad se skroluje dole sakrije se (.is-hidden),
   kad se skroluje gore vrati se sa tamnom pozadinom (.is-stuck). Klase postavlja main.js. */
.topbar{position:fixed;top:0;left:0;right:0;z-index:40;color:#fff;transition:transform .3s ease,background-color .3s ease,box-shadow .3s ease}
.topbar.is-stuck{background:rgba(14,59,67,.97);box-shadow:0 10px 30px rgba(10,44,50,.22)}
@supports ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){
  .topbar.is-stuck{background:rgba(14,59,67,.9);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
}
.topbar.is-hidden{transform:translateY(-100%);box-shadow:none}
.topbar__in{display:flex;align-items:center;justify-content:space-between;gap:12px;height:var(--topbar-h);padding-top:clamp(4px,1vw,18px);transition:height .3s ease,padding-top .3s ease}
.topbar.is-stuck .topbar__in{height:clamp(64px,6vw,76px);padding-top:0}
.pillnav{display:none}
.topbar__actions{display:flex;align-items:center;gap:8px}
.topbar__phone{display:none;align-items:center;gap:8px;font-size:16px;font-weight:700;color:#fff;text-decoration:none;white-space:nowrap;min-height:44px}
.topbar__phone:hover{color:var(--accent)}
.topbar__phone .ic{width:18px;height:18px}
.topbar__cta{display:none}
/* Telefon, Instagram i Facebook kao ikonice u "pilulici" samo na desktopu (kao .pillnav); ispod 1080 px su broj u traci
   i mreže u mobilnom meniju. Natpis (broj ili naziv mreže) iskače ispod ikonice na hover i fokus. */
.topbar__social{display:none}
.topbar__ico{position:relative;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;color:#fff;text-decoration:none}
.topbar__ico .ic{width:19px;height:19px}
.topbar__ico:hover{background:rgba(255,255,255,.12);color:var(--accent)}
.topbar__ico::before,.topbar__ico::after{position:absolute;left:50%;opacity:0;pointer-events:none;transition:opacity .15s ease,transform .15s ease}
.topbar__ico::before{content:"";top:calc(100% + 8px);width:10px;height:10px;background:#fff;transform:translate(-50%,-4px) rotate(45deg)}
.topbar__ico::after{content:attr(data-tip);top:calc(100% + 12px);padding:8px 12px;border-radius:8px;background:#fff;color:var(--brand);font-size:13px;font-weight:700;line-height:1;letter-spacing:.02em;white-space:nowrap;box-shadow:0 12px 28px rgba(10,44,50,.25);transform:translate(-50%,-4px)}
.topbar__ico:hover::before,.topbar__ico:focus-visible::before{opacity:1;transform:translate(-50%,0) rotate(45deg)}
.topbar__ico:hover::after,.topbar__ico:focus-visible::after{opacity:1;transform:translate(-50%,0)}
@media (min-width:600px){
  .topbar__phone,.topbar__cta{display:inline-flex}
  .topbar__call{display:none}
  .topbar__actions{gap:16px}
}
@media (min-width:1080px){
  .pillnav,.topbar__social{display:flex;gap:2px;padding:5px;border-radius:999px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12)}
  .pillnav a{padding:10px 16px;border-radius:999px;font-size:15px;font-weight:600;color:#fff;text-decoration:none;white-space:nowrap}
  .pillnav a:hover{background:rgba(255,255,255,.12)}
  .topbar__menu,.topbar__phone{display:none}
}
@media (max-width:359px){
  .logo__big{font-size:22px}
  .tl{width:11px;height:21px}
  .tl i{width:4px;height:4px}
}
/* Na telefonu dugmad "Meni" i "Zatvori" imaju samo ikonicu (tekst ostaje za čitače ekrana). */
@media (max-width:599px){
  .topbar__menu span,.iconbtn[data-menu-close] span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .topbar__menu,.iconbtn[data-menu-close]{padding:0}
}

/* ---------- Tamni blokovi (hero, testovi, prijava): puna širina, od ivice do ivice ---------- */
.dark-block{position:relative;background:var(--brand);color:#fff;padding-block:clamp(48px,8vw,96px);overflow:hidden}

/* ---------- Hero ---------- */
.hero{position:relative;overflow:hidden;background:var(--brand);color:#fff;padding-top:var(--topbar-h)}
.hero__ring{position:absolute;border-radius:50%;border:1px solid rgba(255,255,255,.07);pointer-events:none}
.hero__ring--a{width:min(700px,130vw);aspect-ratio:1;right:-28%;top:-18%}
.hero__ring--b{width:min(460px,86vw);aspect-ratio:1;right:-12%;top:-9%}
@media (min-width:1000px){.hero__ring--a{right:-200px;top:-260px}.hero__ring--b{right:-80px;top:-140px}}
.hero__main{position:relative;z-index:1;display:grid;gap:clamp(8px,3vw,40px);padding-top:clamp(20px,4vw,52px)}
.hero__text{display:flex;flex-direction:column;gap:clamp(20px,3vw,28px);min-width:0}
.hero__badge{align-self:flex-start;display:inline-flex;align-items:center;gap:10px;padding:8px 14px 8px 12px;border-radius:999px;background:rgba(255,255,255,.1);font-size:14px;font-weight:600;line-height:1.3}
.pulse-dot{width:8px;height:8px;flex-shrink:0;border-radius:50%;background:#3FB27F;box-shadow:0 0 0 4px rgba(63,178,127,.25);animation:blink 1.6s ease-in-out infinite}
@keyframes blink{50%{opacity:.3}}
.hero__title{margin:0;font-family:var(--fd);font-weight:800;font-size:clamp(2.05rem,1.1rem + 4.6vw,4.625rem);line-height:.98;letter-spacing:-.045em;color:#fff}
.hero__title span{color:var(--accent)}
.hero__lead{margin:0;max-width:48ch;font-size:clamp(1.0625rem,1rem + .3vw,1.1875rem);line-height:1.6;color:var(--ondark)}
.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,7rem),1fr));gap:14px 20px;margin:0;padding-top:22px;border-top:1px solid rgba(255,255,255,.14)}
.facts div{min-width:0}
.facts dt{font-family:var(--fd);font-weight:700;font-size:clamp(1.125rem,1rem + .5vw,1.375rem);line-height:1.2;letter-spacing:-.01em;color:#fff}
.facts dd{margin:2px 0 0;font-size:14px;line-height:1.35;color:var(--ondark)}
@media (min-width:600px){
  .facts{display:flex;gap:0}
  .facts div{padding:0 28px}
  .facts div:first-child{padding-left:0}
  .facts div + div{border-left:1px solid rgba(255,255,255,.16)}
}

.hero__visual{position:relative;width:100%;max-width:520px;justify-self:center;container-type:inline-size;padding:clamp(18px,6cqw,30px) 0 clamp(22px,4vw,40px);margin-top:clamp(4px,2vw,16px)}
.hv-circle{position:absolute;left:6%;top:0;width:90%;aspect-ratio:1;border-radius:50%;background:var(--brand-2)}
.hv-dash{position:absolute;left:20%;top:14%;width:62%;aspect-ratio:1;border-radius:50%;border:2px dashed rgba(244,182,63,.45)}
.icard{position:relative;z-index:1;display:flex;flex-direction:column;gap:14px;gap:clamp(10px,3.2cqw,16px);padding:14px;padding:clamp(12px,3.6cqw,18px);border-radius:var(--r-lg);background:#fff;color:var(--ink);box-shadow:0 24px 60px rgba(0,0,0,.28)}
.icard__label{margin:0;display:inline-flex;align-items:center;gap:8px;font-family:var(--ff);font-size:12px;font-size:clamp(11px,2.8cqw,13px);font-weight:700;letter-spacing:.12em;line-height:1.2;text-transform:uppercase;color:var(--brand)}
.icard__label span{width:7px;height:7px;border-radius:50%;background:#2E9A6B}
.icard__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;gap:clamp(8px,2.6cqw,12px)}
.icard__p{margin:0;display:flex;flex-direction:column;gap:8px;min-width:0}
/* Portreti su izrezani na 4:5 sa istom linijom očiju, pa okvir 4:5 pokazuje cijelu sliku na svakom ekranu. */
.icard__ph{aspect-ratio:4/5;border-radius:12px;border-radius:clamp(10px,3cqw,16px);overflow:hidden;background:#161616}
.icard__ph picture{display:contents}
.icard__ph img{width:100%;height:100%;object-fit:cover;object-position:50% 0}
.icard__p figcaption{display:flex;flex-direction:column;gap:2px;min-width:0}
.icard__p strong{font-family:var(--fd);font-weight:800;font-size:16px;font-size:clamp(14px,3.9cqw,18px);line-height:1.2;letter-spacing:-.01em}
.icard__p figcaption span{font-size:13px;font-size:clamp(12px,3cqw,14px);font-weight:600;line-height:1.3;color:var(--mut)}
/* Broj ispod imena: kratka isprekidana linija (cesta), ikonica u tamnom krugu sa žutom slušalicom, broj fontom naslova. */
.icard__tel{display:flex;align-items:center;gap:8px;gap:clamp(6px,2cqw,10px);min-height:44px;margin-top:8px;padding-top:6px;background:linear-gradient(90deg,var(--line) 0 8px,transparent 8px 13px) top left/13px 2px repeat-x;font-family:var(--fd);font-weight:800;font-size:15px;font-size:clamp(13px,3.6cqw,17px);letter-spacing:-.01em;white-space:nowrap;color:var(--brand);text-decoration:none}
.icard__tel .ic{flex:none;box-sizing:content-box;width:14px;height:14px;padding:7px;border-radius:50%;background:var(--brand);color:var(--accent);transition:background-color .2s ease,color .2s ease}
.icard__tel:hover .ic{background:var(--accent);color:var(--brand)}
.icard__tel:hover{text-decoration:underline;text-underline-offset:3px}
.icard__note{margin:0;display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:12px;background:var(--tint);font-size:13px;font-size:clamp(12.5px,3cqw,14px);line-height:1.4}
.icard__note .ic{width:20px;height:20px;color:var(--brand)}
.hv-chip{position:absolute;z-index:2;right:-4px;top:2px;display:inline-flex;align-items:center;gap:.5em;padding:.73em 1.07em;border-radius:999px;background:var(--accent);color:var(--ink);font-weight:700;line-height:1;white-space:nowrap;transform:rotate(3deg);box-shadow:0 12px 30px rgba(0,0,0,.2);font-size:13px;font-size:clamp(11px,3cqw,15px);animation:float 5s ease-in-out infinite}
.hv-chip .ic{width:1.2em;height:1.2em}
@keyframes float{0%,100%{transform:rotate(3deg)}50%{transform:translateY(-8px) rotate(3deg)}}
/* Jedna pločica = jedna crtica + razmak (140px), pa nema šava ni na jednoj širini ekrana.
   Traka je duža za jednu pločicu i klizi preko transform-a, bez iscrtavanja u svakom kadru. */
.road{position:relative;height:clamp(34px,4.5vw,52px);background:var(--deep);overflow:hidden}
.road span{position:absolute;left:0;top:50%;width:calc(100% + 140px);height:6px;margin-top:-3px;background:linear-gradient(90deg,var(--accent) 0 80px,transparent 80px) 0 0/140px 100% repeat-x;will-change:transform;animation:road 1.2s linear infinite}
@keyframes road{from{transform:translate3d(0,0,0)}to{transform:translate3d(-140px,0,0)}}

@media (min-width:1000px){
  .hero__main{grid-template-columns:minmax(0,1fr) minmax(0,500px);gap:40px;align-items:end}
  .hero__text{padding-bottom:76px}
  .hero__visual{max-width:500px;justify-self:end;align-self:end;margin-top:0;padding:36px 0 40px}
  .hv-chip{right:-4.8%;top:30px}
}
@media (min-width:1000px) and (max-width:1199px){
  .hero__main{grid-template-columns:minmax(0,1fr) minmax(0,440px);gap:32px}
  .hero__title{font-size:calc(1rem + 4vw)}
  .facts div{padding:0 20px}
  .hv-chip{right:-2%}
}

/* ---------- Marquee ---------- */
.marquee{padding:clamp(16px,3vw,28px) 0;overflow:hidden;background:var(--bg)}
/* Četiri iste liste: traka se pomjera za tačno jednu listu (-25%), pa i na širokim monitorima nema praznine desno. */
.marquee__track{display:flex;width:max-content;will-change:transform;animation:mq 40s linear infinite}
.marquee__list{display:flex;margin:0;padding:0;list-style:none}
.marquee__list li{display:inline-flex;align-items:center;gap:clamp(18px,3vw,30px);padding-right:clamp(18px,3vw,30px);white-space:nowrap;font-family:var(--fd);font-weight:700;font-size:clamp(1.125rem,.9rem + 1.2vw,1.625rem);letter-spacing:-.02em;color:var(--ink)}
.marquee__list li::after{content:"";width:.7em;height:.7em;background:var(--accent);clip-path:polygon(50% 0,61% 39%,100% 50%,61% 61%,50% 100%,39% 61%,0 50%,39% 39%)}
@keyframes mq{to{transform:translate3d(-25%,0,0)}}

/* ---------- Sekcije ---------- */
.section{padding-block:clamp(56px,8vw,112px);background:var(--bg)}
.section--white{background:#fff}
.section--tint{background:var(--tint)}
.section--white .eyebrow{background:var(--bg)}

/* ---------- Bento ---------- */
.bento{display:grid;gap:16px;grid-template-columns:minmax(0,1fr)}
.cell{border-radius:var(--r-lg);padding:clamp(20px,3vw,32px);display:flex;flex-direction:column;gap:12px;min-width:0}
.cell h3{margin:0;font-family:var(--fd);font-weight:800;font-size:clamp(1.375rem,1.15rem + .9vw,1.875rem);line-height:1.08;letter-spacing:-.03em}
.cell p{margin:0;font-size:clamp(1rem,.97rem + .15vw,1.0625rem);line-height:1.55;color:var(--mut)}
.cell--brand{background:var(--brand);color:#fff;justify-content:space-between}
.cell--brand p,.cell--deep p{color:var(--ondark)}
.cell--cream{background:var(--cream)}
.cell--white{background:#fff;border:1px solid var(--line)}
.cell--tint{background:var(--tint)}
.cell--deep{background:var(--deep);color:#fff}
.cell__top{display:flex;flex-direction:column;gap:10px}
.cell__top p{max-width:46ch}
.weeks{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;margin:16px 0 0;padding:0;list-style:none}
.weeks li{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:14px;background:rgba(255,255,255,.08);min-width:0}
.weeks__n{width:26px;height:26px;flex-shrink:0;border-radius:50%;background:rgba(255,255,255,.14);display:flex;align-items:center;justify-content:center;font-family:var(--fd);font-weight:800;font-size:13px}
.weeks__t{display:flex;flex-direction:column;gap:2px;min-width:0}
.weeks__t span{font-size:13px;font-weight:600;line-height:1.2;opacity:.8}
.weeks__t strong{font-family:var(--fd);font-weight:700;font-size:17px;line-height:1.15}
.weeks .is-now{background:var(--accent);color:var(--ink)}
.weeks .is-now .weeks__n{background:var(--ink);color:var(--accent)}
@media (min-width:1000px){
  .weeks{grid-template-columns:repeat(3,minmax(0,1fr))}
  .weeks li{flex-direction:column;align-items:flex-start;gap:8px;padding:14px}
}
.rates{display:flex;flex-direction:column;gap:10px;margin-top:auto;padding-top:16px}
.rates__bars,.rates__labels{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
.rates__bars span{height:12px;border-radius:6px;background:#F2DDAE}
.rates__bars .on{background:var(--brand)}
.rates__labels{font-size:13px;font-weight:600;color:var(--mut)}
.rates__labels span{overflow:hidden;text-overflow:ellipsis}
.cell__icon + h3{margin-top:8px}
.cell__icon{width:56px;height:56px;border-radius:16px;background:#fff;display:flex;align-items:center;justify-content:center;color:var(--brand)}
.cell__icon .ic{width:28px;height:28px}
.cell__icon--accent{background:var(--accent);color:var(--ink)}
.cell__icon--tint{background:var(--tint)}
@media (min-width:640px){
  .bento{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cell--weeks{grid-column:1 / -1}
}
@media (min-width:1000px){
  .bento{grid-template-columns:repeat(12,minmax(0,1fr))}
  .cell--weeks{grid-column:span 7}
  .cell--rate{grid-column:span 5}
  .cell--third{grid-column:span 4}
}

/* ---------- Trio (obuka, instruktori) ---------- */
.trio{display:grid;gap:20px;grid-template-columns:minmax(0,1fr);align-items:stretch}
@media (min-width:700px){
  .trio{grid-template-columns:repeat(2,minmax(0,1fr))}
  .trio > :last-child{grid-column:1 / -1}
}
@media (min-width:980px){
  .trio{grid-template-columns:repeat(3,minmax(0,1fr))}
  .trio > :last-child{grid-column:auto}
}

.cat{border-radius:var(--r-lg);padding:clamp(22px,3vw,32px);display:flex;flex-direction:column;gap:20px;min-width:0;transition:transform .2s ease,box-shadow .2s ease}
@media (hover:hover){.cat:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(10,44,50,.12)}}
.cat--brand{background:var(--brand);color:#fff}
.cat--cream{background:var(--cream)}
.cat--tint{background:var(--tint)}
.cat__top{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px}
.cat__big{font-family:var(--fd);font-weight:800;font-size:clamp(4rem,3.2rem + 2.6vw,5.5rem);line-height:.85;letter-spacing:-.05em;color:var(--brand)}
.cat--brand .cat__big{color:var(--accent)}
.cat__wheel{width:clamp(60px,6vw,76px);aspect-ratio:1;border-radius:50%;background:var(--brand);display:flex;align-items:center;justify-content:center;color:var(--accent)}
.cat__wheel .ic{width:50%;height:50%}
.cat__age{padding:6px 12px;border-radius:999px;background:#fff;color:var(--brand);font-size:14px;font-weight:700;white-space:nowrap}
.cat--brand .cat__age{background:rgba(255,255,255,.12);color:#fff}
.cat__head{display:flex;flex-direction:column;gap:6px}
.cat__sub{font-size:14px;font-weight:600;color:var(--mut)}
.cat--brand .cat__sub,.cat--brand .cat__head p{color:var(--ondark)}
.cat h3{margin:0;font-family:var(--fd);font-weight:800;font-size:clamp(1.5rem,1.3rem + .6vw,1.875rem);line-height:1.05;letter-spacing:-.03em}
.cat__head p{margin:4px 0 0;font-size:16px;line-height:1.55;color:var(--mut)}
.cat__actions{display:flex;flex-direction:column;gap:4px;margin-top:auto}
.checks{display:flex;flex-direction:column;gap:10px;margin:0;padding:18px 0 0;list-style:none;border-top:1px solid rgba(14,59,67,.14)}
.checks li{display:flex;gap:10px;align-items:flex-start;font-size:16px;line-height:1.45}
.checks .ic{width:18px;height:18px;margin-top:2px;color:var(--brand)}
.cat--brand .checks{border-color:rgba(255,255,255,.16)}
.cat--brand .checks .ic{color:var(--accent)}
.checks--sm{border:0;padding-top:4px}
.checks--sm li{font-size:15px;line-height:1.5}

/* Instruktori */
.person{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;min-width:0}
.person__photo{position:relative;height:clamp(280px,78vw,420px);background:var(--tint);display:flex;align-items:center;justify-content:center;overflow:hidden}
.person__photo > span{width:clamp(110px,12vw,140px);aspect-ratio:1;border-radius:50%;background:var(--brand);color:var(--accent);display:flex;align-items:center;justify-content:center;font-family:var(--fd);font-weight:800;font-size:clamp(2.5rem,2rem + 1.6vw,3.25rem);letter-spacing:-.03em}
.person__photo img{width:100%;height:100%;object-fit:cover}
.person__photo--img{background:#161616}
.person__photo--img picture{display:contents}
.person__photo--img img{object-position:50% 6%}
.person__body{padding:clamp(20px,2.4vw,24px);display:flex;flex-direction:column;gap:6px}
.person h3{margin:0;font-family:var(--fd);font-weight:800;font-size:clamp(1.25rem,1.1rem + .5vw,1.375rem);letter-spacing:-.01em}
.person__role{font-size:15px;font-weight:600;color:var(--brand)}
.person__body p{margin:6px 0 0;font-size:16px;line-height:1.55;color:var(--mut)}
.person__tel{display:inline-flex;align-items:center;gap:8px;width:fit-content;min-height:44px;margin-top:2px;font-size:16px;font-weight:700;color:var(--brand);text-decoration:none}
.person__tel:hover{text-decoration:underline}
.person__tel .ic{width:18px;height:18px}
.person--car{background:#FDF1D8;border-color:#F2DDAE}
.person__photo--car{height:clamp(250px,68vw,310px);background:var(--brand);align-items:flex-end}
@media (min-width:700px){
  .person__photo{height:340px}
  .person__photo--car{height:310px}
}
@media (min-width:980px){
  .person__photo,.person__photo--car{height:clamp(300px,30vw,340px)}
}
.person__circle{position:absolute;left:50%;bottom:-45%;width:min(90%,380px);aspect-ratio:1;transform:translateX(-50%);border-radius:50%;background:var(--brand-2)}

/* Slajder vozila (kartica "Vozila za obuku") */
.carslider{--sp:14px}
.carslider__slides{position:absolute;inset:0 0 54px;z-index:1;touch-action:pan-y;cursor:grab;-webkit-user-select:none;user-select:none}
.carslider__slides:active{cursor:grabbing}
.carslide{position:absolute;inset:0;margin:0;opacity:0;visibility:hidden;transform:translateX(16%);transition:transform .6s cubic-bezier(.22,.8,.3,1),opacity .45s ease,visibility 0s linear .6s}
.carslide.is-before{transform:translateX(-16%)}
.carslide.is-active{opacity:1;visibility:visible;transform:none;transition:transform .6s cubic-bezier(.22,.8,.3,1),opacity .45s ease}
.carslide.no-anim{transition:none}
.carslider .carslide picture{display:contents}
.carslider .carslide img{width:100%;height:100%;object-fit:contain;object-position:50% 100%;pointer-events:none;-webkit-user-drag:none}
.carslider__ctrl{position:absolute;z-index:2;left:var(--sp);right:var(--sp);bottom:6px;display:flex;align-items:center;justify-content:space-between;gap:8px}
.carslider__dots{display:flex;align-items:center}
.carslider__btns{display:flex;gap:8px}
.carslider.is-paused .ic-pause{display:none}
.carslider.is-paused .ic-play{display:block}

/* ---------- Ostale kategorije ---------- */
.others{display:grid;gap:20px;padding:clamp(18px,3vw,32px);border-radius:var(--r-lg);background:var(--bg)}
.others__head{display:flex;flex-direction:column;gap:10px;min-width:0}
.others .eyebrow{background:#fff}
.others__head h3{margin:0;font-family:var(--fd);font-weight:800;font-size:clamp(1.5rem,1.2rem + 1vw,1.875rem);line-height:1.08;letter-spacing:-.03em}
.others__head p{margin:0;font-size:clamp(15px,.9rem + .15vw,16px);line-height:1.6;color:var(--mut)}
.others__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0;padding:0;list-style:none}
.otile,.otile-wrap{min-width:0}
.otile{display:flex;flex-direction:column;gap:6px;padding:14px;background:#fff;border:1px solid var(--line);border-radius:16px}
.otile__k{font-family:var(--fd);font-weight:800;font-size:clamp(1.625rem,1.4rem + .8vw,2rem);line-height:1;letter-spacing:-.03em;color:var(--brand)}
.otile__l{font-size:14px;font-weight:600;line-height:1.3}
.otile__m{align-self:flex-start;margin-top:auto;padding:3px 9px;border-radius:999px;background:var(--bg);font-size:12px;font-weight:700;color:var(--mut)}
.otile__m--age{background:#FDF1D8;color:#7A5208}
.otile-wrap{display:flex}
.otile--call{flex:1;justify-content:space-between;gap:10px;background:var(--accent);border-color:var(--accent);color:var(--ink);text-decoration:none}
.otile--call:hover{filter:brightness(1.06)}
.otile--call .ic{width:26px;height:26px}
.otile--call > span{display:flex;flex-direction:column;gap:2px}
.otile--call strong{font-family:var(--fd);font-weight:800;font-size:17px;line-height:1.15}
.otile--call strong + span{font-size:14px;font-weight:600}
@media (min-width:600px){
  .others__grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
  .otile{padding:16px}
  .otile__l{font-size:15px}
}
@media (min-width:1000px){
  .others{grid-template-columns:300px minmax(0,1fr);gap:40px;align-items:start}
  .others__head{padding-top:4px}
}

/* ---------- Kako ide ---------- */
.kako{display:grid;gap:clamp(32px,5vw,72px);align-items:center}
.route{position:relative;margin:0;width:100%;max-width:540px;justify-self:center;border-radius:28px;overflow:hidden;background:var(--brand)}
.route__svg{width:100%;height:auto}
.route__dash{animation:dash 1.1s linear infinite}
@keyframes dash{to{stroke-dashoffset:-32}}
.route__pulse{animation:pulse 2s ease-out infinite;transform-box:fill-box;transform-origin:center}
@keyframes pulse{0%{transform:scale(1);opacity:.6}100%{transform:scale(2.4);opacity:0}}
.route__chip{position:absolute;left:3.7%;top:3.1%;padding:8px 13px;border-radius:999px;background:var(--accent);color:var(--ink);font-size:13px;font-weight:700;line-height:1.2}
/* Telefon: mapa ide od ivice do ivice, natpis "Tvoja ruta" prelazi iznad mape, a kartice sa
   opisom su uvećane (×1,45) i premještene u slobodna mjesta između krivina puta, da se čitaju.
   SVG je produžen ispod puta (540×742 umjesto 540×640) za karticu "Prvi čas".
   CSS transform na SVG elementu zamjenjuje njegov transform atribut; px su jedinice viewBox-a. */
@media (max-width:559px){
  .route{display:flex;flex-direction:column;justify-self:stretch;width:auto;max-width:none;margin-inline:calc(-1 * var(--gutter));border-radius:0}
  .route__chip{position:static;order:-1;align-self:flex-start;margin:18px var(--gutter) 0}
  .route__svg{aspect-ratio:540/742}
  .route__lab{transform-box:view-box;transform-origin:0 0}
  .route__lab--1{transform:translate(20px,622px) scale(1.45)}
  .route__lab--2{transform:translate(115px,446px) scale(1.45)}
  .route__lab--3{transform:translate(205px,256px) scale(1.45)}
  .route__lab--4{transform:translate(165px,42px) scale(1.45)}
}
.kako__text{display:flex;flex-direction:column;gap:32px;min-width:0}
.steps{display:flex;flex-direction:column;margin:0;padding:0;list-style:none;--s:clamp(44px,4vw,52px)}
.steps li{position:relative;display:grid;grid-template-columns:var(--s) minmax(0,1fr);gap:16px;padding-bottom:clamp(20px,2.4vw,26px)}
.steps li:last-child{padding-bottom:0}
.steps li:not(:last-child)::before{content:"";position:absolute;left:calc(var(--s) / 2 - 1px);top:var(--s);bottom:0;border-left:2px dashed #9DB7B6}
.steps__n{position:relative;z-index:1;width:var(--s);height:var(--s);border-radius:50%;background:var(--brand);color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--fd);font-weight:800;font-size:clamp(17px,1rem + .3vw,20px)}
.steps__n--last{background:var(--accent);color:var(--ink)}
.steps li > div{display:flex;flex-direction:column;gap:4px;padding-top:clamp(4px,.6vw,6px)}
.steps h3{margin:0;font-family:var(--fd);font-weight:700;font-size:clamp(18px,1rem + .4vw,21px)}
.steps p{margin:0;font-size:clamp(15px,.9rem + .1vw,16px);line-height:1.5;color:var(--mut)}
.notebox{display:flex;flex-direction:column;gap:14px;padding:clamp(18px,2.4vw,22px) clamp(18px,2.4vw,24px);background:#fff;border:1px solid var(--line);border-radius:16px}
.notebox p{margin:0;font-size:16px;line-height:1.55;color:var(--mut)}
.notebox strong{color:var(--ink)}
@media (min-width:1000px){
  .kako{grid-template-columns:minmax(0,540px) minmax(0,1fr)}
}

/* ---------- Testovi ---------- */
.tests{display:flex;flex-direction:column;gap:16px;width:100%;max-width:780px;margin-inline:auto}
.tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.tab{display:flex;align-items:center;gap:12px;min-height:64px;margin:0;padding:10px 12px;border:2px solid #5E8A8E;border-radius:16px;background:transparent;color:#fff;text-align:left;cursor:pointer;min-width:0}
.tab:hover{border-color:#fff}
.tab[aria-pressed="true"]{background:var(--accent);border-color:var(--accent);color:var(--ink)}
.tab__k{min-width:40px;font-family:var(--fd);font-weight:800;font-size:26px;line-height:1;letter-spacing:-.03em}
.tab__t{display:flex;flex-direction:column;gap:2px;min-width:0}
.tab__t strong{font-size:15px;line-height:1.2}
.tab__t span{font-size:13px;line-height:1.3;color:var(--ondark)}
.tab[aria-pressed="true"] .tab__t span{color:#33474A}
@media (max-width:419px){
  .tab{flex-direction:column;align-items:flex-start;gap:6px}
  .tab__t span{display:none}
}
.tests__note{margin:4px 0 0;font-size:14px;line-height:1.55;color:var(--ondark);text-align:center}
.head--center{align-items:center;text-align:center;max-width:720px;margin-inline:auto}
.head--center .eyebrow{align-self:center}
.head--center p{margin-inline:auto}
@media (min-width:900px){
  .tabs{gap:12px}
  .tab{min-height:80px;padding:14px 18px}
  .tab__k{min-width:56px;font-size:36px}
  .tab__t strong{font-size:18px}
  .tab__t span{font-size:14px}
}


.quiz{background:#fff;color:var(--ink);border-radius:var(--r-lg);padding:clamp(18px,3vw,36px);display:flex;flex-direction:column;gap:20px;min-width:0;--focus:#0E3B43}
.quiz__nojs{margin:0;color:var(--mut)}
.quiz__top{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px}
.quiz__meta{font-size:14px;font-weight:600;color:var(--mut)}
.quiz__dots{display:flex;gap:6px}
.quiz__dots span{width:clamp(14px,2.4vw,24px);height:6px;border-radius:3px;background:var(--line)}
.quiz__dots .is-cur{background:var(--brand)}
.quiz__dots .is-ok{background:var(--ok)}
.quiz__dots .is-bad{background:var(--bad)}
.quiz__q{display:flex;gap:18px;align-items:center}
.quiz__vis{width:clamp(64px,8vw,88px);aspect-ratio:1;flex-shrink:0;border-radius:14px;background:var(--tint);display:flex;align-items:center;justify-content:center;color:var(--brand)}
.quiz__vis svg{width:72%;height:72%}
.quiz__q h3{margin:0;font-family:var(--fd);font-weight:700;font-size:clamp(1.1875rem,1rem + .8vw,1.625rem);line-height:1.25;letter-spacing:-.01em}
.quiz__q h3:focus{outline:none}
@media (max-width:419px){
  .quiz__q{flex-direction:column;align-items:flex-start;gap:12px}
  .quiz__vis{width:56px}
}
.opts{display:flex;flex-direction:column;gap:10px;margin:0;padding:0;list-style:none}
.opt{display:flex;align-items:center;gap:12px;width:100%;min-height:56px;padding:10px 14px;border:1.5px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);font-size:16px;font-weight:500;line-height:1.35;text-align:left;cursor:pointer}
.opt:hover:not([disabled]){border-color:var(--brand)}
.opt[disabled]{cursor:default}
.opt__k{width:32px;height:32px;flex-shrink:0;border-radius:8px;background:var(--tint);color:var(--ink);display:flex;align-items:center;justify-content:center;font-family:var(--fd);font-weight:800;font-size:14px}
.opt__t{flex:1;min-width:0}
.opt .ic{width:22px;height:22px}
.opt.is-ok{background:#E6F4EC;border-color:var(--ok)}
.opt.is-ok .opt__k{background:var(--ok);color:#fff}
.opt.is-ok .ic{color:var(--ok)}
.opt.is-bad{background:#FBEAE6;border-color:var(--bad)}
.opt.is-bad .opt__k{background:var(--bad);color:#fff}
.opt.is-bad .ic{color:var(--bad)}
.opt.is-dim{opacity:.5}
.feedback{display:flex;flex-direction:column;gap:6px;padding:16px 18px;border-radius:12px;background:var(--bg)}
.feedback strong{font-family:var(--fd);font-size:18px}
.feedback strong.ok{color:var(--ok)}
.feedback strong.bad{color:var(--bad)}
.feedback p{margin:0;font-size:15px;line-height:1.55;color:var(--mut)}
.quiz__foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}
.quiz__hint{margin:0;font-size:14px;color:var(--mut)}
.quiz__done{display:flex;flex-direction:column;align-items:flex-start;gap:14px}
.quiz__score{font-family:var(--fd);font-weight:800;font-size:clamp(3rem,2.4rem + 3vw,4.5rem);line-height:.95;letter-spacing:-.04em;color:var(--brand)}
.quiz__score small{font-size:.4em;letter-spacing:0;color:var(--mut)}
.quiz__done h3{margin:0;font-family:var(--fd);font-weight:800;font-size:clamp(1.375rem,1.2rem + .6vw,1.75rem)}
.quiz__done p{margin:0;color:var(--mut)}
.quiz__done .btnrow{width:100%}

/* ---------- Slajder utisaka ---------- */
.slider{position:relative;overflow:hidden;border-radius:var(--r-xl);background:var(--brand);color:#fff;min-height:36rem;--sp:clamp(18px,4vw,56px);isolation:isolate}
.slider__slides{position:absolute;inset:0}
.slide{position:absolute;inset:0;margin:0;opacity:0;visibility:hidden;transition:opacity .8s ease,visibility 0s linear .8s}
.slide.is-active{opacity:1;visibility:visible;transition:opacity .8s ease}
.slide__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:var(--pos-m,50% 50%);transform:scale(1.07);transition:transform 7s ease-out}
.slide.is-active .slide__img{transform:scale(1)}
@media (max-width:699px){.slide__img{top:auto;bottom:0;height:126%;transform-origin:50% 100%}}
.slide::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(10,44,50,.95) 0%,rgba(10,44,50,.78) 50%,rgba(10,44,50,.12) 100%)}
.slide__body{position:absolute;z-index:1;left:var(--sp);right:var(--sp);bottom:78px;display:flex;flex-direction:column;gap:14px;max-width:600px}
.slide__q{width:36px;height:36px;color:var(--accent)}
.slide blockquote{margin:0;font-family:var(--fd);font-weight:700;font-size:clamp(1.125rem,.85rem + 1.5vw,1.95rem);line-height:1.24;letter-spacing:-.02em;color:#fff;text-wrap:pretty}
.who{display:flex;align-items:center;gap:12px}
.who__av{width:44px;height:44px;flex-shrink:0;border-radius:50%;background:var(--brand-2);display:flex;align-items:center;justify-content:center;color:#9DB7B6}
.who__av .ic{width:24px;height:24px}
.who > span:last-child{display:flex;flex-direction:column;gap:2px;line-height:1.25}
.who strong{font-family:var(--fd);font-weight:700;font-size:17px;color:#fff}
.who strong + span{font-size:14px;color:var(--ondark)}
.slider__chip{position:absolute;z-index:2;left:var(--sp);top:clamp(16px,3vw,36px);display:inline-flex;align-items:center;gap:8px;padding:7px 14px;border-radius:999px;background:rgba(255,255,255,.16);font-size:12px;font-weight:700;letter-spacing:.12em;line-height:1.2;text-transform:uppercase;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.slider__chip span{width:6px;height:6px;border-radius:50%;background:var(--accent)}
.slider__ctrl{position:absolute;z-index:2;left:var(--sp);right:var(--sp);bottom:12px;display:flex;align-items:center;justify-content:space-between;gap:8px}
.slider__dots{display:flex;align-items:center}
.dot{min-width:26px;height:44px;padding:0 3px;border:0;background:none;cursor:pointer;display:flex;align-items:center;justify-content:center}
.dot span{display:block;width:8px;height:8px;border-radius:999px;background:rgba(255,255,255,.5);transition:width .3s ease,background-color .3s ease}
.dot.is-active span{width:28px;background:var(--accent)}
.slider__btns{display:flex;gap:8px}
.roundbtn{width:44px;height:44px;padding:0;border-radius:50%;border:1.5px solid rgba(255,255,255,.55);background:rgba(10,44,50,.35);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer}
.roundbtn:hover{background:rgba(255,255,255,.22)}
.roundbtn .ic{width:20px;height:20px}
.ic-play{display:none}
.slider.is-paused .ic-pause{display:none}
.slider.is-paused .ic-play{display:block}
@media (max-width:359px){
  .roundbtn{width:38px;height:38px}
  .roundbtn .ic{width:18px;height:18px}
  .slider__btns{gap:6px}
  .dot{min-width:24px;padding:0 2px}
}
@media (min-width:700px){
  .slider{aspect-ratio:11/6;min-height:30rem}
  .slide__img{object-position:var(--pos-d,50% 50%)}
  .slide__q{width:44px;height:44px}
  .who__av{width:48px;height:48px}
}
@media (min-width:1000px){
  .slide::after{background:linear-gradient(90deg,rgba(10,44,50,.9) 0%,rgba(10,44,50,.62) 42%,rgba(10,44,50,.04) 78%)}
  .slide__body{bottom:clamp(48px,5vw,64px);max-width:560px;gap:22px}
  .slide__q{width:48px;height:48px}
  .slider__ctrl{left:auto;right:48px;bottom:56px;gap:12px}
  .roundbtn{width:48px;height:48px}
}

.gstrip{display:flex;flex-direction:column;gap:18px;padding:20px;background:#fff;border:1px solid var(--line);border-radius:20px}
.gstrip__text{display:flex;align-items:center;gap:16px;min-width:0}
.gstrip__icon{width:52px;height:52px;flex-shrink:0;border-radius:14px;background:var(--tint);display:flex;align-items:center;justify-content:center;color:var(--brand)}
.gstrip__icon .ic{width:24px;height:24px}
.gstrip__text > span:last-child{display:flex;flex-direction:column;gap:2px;min-width:0}
.gstrip strong{font-family:var(--fd);font-weight:700;font-size:19px;line-height:1.25}
.gstrip strong + span{font-size:15px;line-height:1.45;color:var(--mut)}
@media (min-width:700px){
  .gstrip{flex-direction:row;align-items:center;justify-content:space-between;padding:22px 28px}
}
@media (max-width:359px){
  .gstrip__icon{display:none}
}

/* ---------- Znakovi ---------- */
.signs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.sign{display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding:clamp(12px,2vw,20px);background:#fff;border:1px solid var(--line);border-radius:14px;min-width:0}
.sign svg{width:clamp(52px,6vw,72px);height:auto;aspect-ratio:1}
.sign__num{font-size:14px;font-weight:600;color:var(--mut)}
.sign.is-open .sign__num{display:none}
.sign__ans h3{margin:0 0 6px;font-family:var(--fd);font-weight:700;font-size:clamp(15px,.85rem + .35vw,19px);line-height:1.25}
.sign__ans p{margin:0;font-size:clamp(14px,.85rem + .1vw,15px);line-height:1.5;color:var(--mut)}
.sign__btn{width:100%;margin-top:auto;min-height:44px;padding:0 10px;border:1.5px solid var(--brand);border-radius:8px;background:#fff;color:var(--brand);font-size:14px;font-weight:700;cursor:pointer}
.sign__btn:hover{background:var(--tint)}
.sign__btn[aria-expanded="true"]{background:var(--brand);color:#fff}
@media (min-width:600px){
  .sign__btn{width:auto;padding:0 14px}
}
@media (min-width:760px){
  .signs{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
}

/* ---------- Savjeti ---------- */
.tips{display:grid;grid-template-columns:minmax(0,1fr);gap:0 clamp(24px,5vw,72px);margin:0;padding:0;list-style:none}
.tips li{display:grid;grid-template-columns:auto minmax(0,1fr);gap:clamp(14px,2vw,22px);padding:clamp(20px,2.4vw,26px) 0;border-top:1px solid var(--line)}
.tips__n{font-family:var(--fd);font-weight:800;font-size:clamp(2rem,1.6rem + 1.2vw,2.5rem);line-height:1;letter-spacing:-.03em;color:var(--brand);min-width:2.2ch}
.tips h3{margin:0 0 6px;font-family:var(--fd);font-weight:700;font-size:clamp(18px,1rem + .4vw,21px);line-height:1.25}
.tips p{margin:0;font-size:clamp(15px,.9rem + .1vw,16px);line-height:1.55;color:var(--mut)}
@media (min-width:800px){.tips{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:359px){.tips li{grid-template-columns:minmax(0,1fr);gap:8px}}

/* ---------- Pitanja ---------- */
.faq{display:grid;gap:32px;grid-template-columns:minmax(0,1fr)}
.faq__side{display:flex;flex-direction:column;gap:28px}
.acc{display:flex;flex-direction:column;gap:10px;min-width:0}
.acc__item{background:#fff;border:1px solid var(--line);border-radius:14px}
.acc__item h3{margin:0}
.acc__item button{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;min-height:60px;padding:16px clamp(16px,2vw,20px);border:0;border-radius:14px;background:none;color:var(--ink);font-family:var(--fd);font-weight:700;font-size:clamp(16px,.95rem + .3vw,19px);line-height:1.3;text-align:left;cursor:pointer}
.acc__sign{position:relative;width:28px;height:28px;flex-shrink:0;border-radius:50%;background:var(--tint)}
.acc__sign::before,.acc__sign::after{content:"";position:absolute;left:50%;top:50%;width:12px;height:2px;margin:-1px 0 0 -6px;border-radius:1px;background:var(--ink)}
.acc__sign::after{transform:rotate(90deg);transition:transform .2s ease}
.acc__item.is-open .acc__sign{background:var(--accent)}
.acc__item.is-open .acc__sign::after{transform:rotate(0deg)}
.acc__panel{padding:0 clamp(16px,2vw,20px) 18px}
.acc__panel p{margin:0;font-size:16px;line-height:1.6;color:var(--mut)}
@media (min-width:900px){
  .faq{grid-template-columns:minmax(0,400px) minmax(0,1fr);gap:72px;align-items:start}
}

/* ---------- Žuta traka ---------- */
.band{background:var(--accent);color:var(--ink);padding-block:clamp(48px,7vw,80px)}
.band__in{display:flex;flex-direction:column;align-items:center;gap:clamp(14px,2vw,22px);text-align:center}
.band__light{display:inline-flex;gap:7px;padding:8px;border-radius:999px;background:var(--ink)}
.band__light i{display:block;width:clamp(20px,2.4vw,28px);height:clamp(20px,2.4vw,28px);border-radius:50%;background:#34474A}
.band h2{max-width:760px;font-size:clamp(1.625rem,1.05rem + 2.6vw,3rem);line-height:1.05;letter-spacing:-.03em}
.band p{margin:0;max-width:560px;font-size:clamp(1rem,.95rem + .25vw,1.1875rem);line-height:1.55;color:#33474A}

/* ---------- Prijava ---------- */
.signup{display:grid;gap:clamp(28px,4vw,48px) 64px;grid-template-columns:minmax(0,1fr);grid-template-areas:"head" "form" "map"}
.signup__head{grid-area:head;display:flex;flex-direction:column;gap:32px;min-width:0}
.signup__form{grid-area:form;min-width:0}
.signup__map{grid-area:map;min-width:0}
.mini-steps{display:flex;flex-direction:column;gap:14px;margin:0;padding:0;list-style:none}
.mini-steps li{display:flex;align-items:center;gap:14px;font-size:clamp(16px,.95rem + .2vw,17px);line-height:1.45;color:#fff}
.mini-steps span{width:36px;height:36px;flex-shrink:0;border-radius:50%;background:var(--accent);color:var(--ink);display:flex;align-items:center;justify-content:center;font-family:var(--fd);font-weight:800;font-size:15px}
@media (min-width:1000px){
  .signup{grid-template-columns:minmax(0,1fr) minmax(0,520px);grid-template-areas:"head form" "map form";align-items:start}
}

.form{display:flex;flex-direction:column;gap:18px;padding:clamp(20px,3vw,36px);background:#fff;color:var(--ink);border-radius:var(--r-lg);box-shadow:0 24px 60px rgba(0,0,0,.18);--focus:#0E3B43}
.form h3{margin:0;font-family:var(--fd);font-weight:800;font-size:clamp(1.375rem,1.2rem + .6vw,1.75rem);letter-spacing:-.02em}
.field{display:flex;flex-direction:column;gap:6px}
.field label,.seg legend{font-size:15px;font-weight:700;color:var(--ink)}
.field input{width:100%;height:52px;padding:0 14px;border:1.5px solid #B5C6C5;border-radius:10px;background:#fff;color:var(--ink);font-size:16px}
.field input::placeholder{color:#7F9194}
.field input:focus{outline:3px solid var(--accent);outline-offset:1px;border-color:var(--brand)}
.field input[aria-invalid="true"]{border-color:var(--bad)}
.field__err{font-size:14px;line-height:1.4;color:var(--bad)}
.field__err:empty{display:none}
.seg{margin:0;padding:0;border:0;min-width:0}
.seg legend{padding:0;margin-bottom:8px}
.seg__opts{display:flex;flex-wrap:wrap;gap:8px}
.seg label{position:relative;flex:1 1 auto;min-width:0}
.seg input{position:absolute;opacity:0;width:1px;height:1px;margin:0}
.seg span{display:flex;align-items:center;justify-content:center;min-height:48px;padding:6px 12px;border:1.5px solid var(--ink);border-radius:10px;background:#fff;font-size:15px;font-weight:700;line-height:1.2;text-align:center;cursor:pointer;transition:background-color .15s ease,color .15s ease}
.seg span:hover{background:var(--tint)}
.seg input:checked + span{background:var(--brand);border-color:var(--brand);color:#fff}
.seg input:focus-visible + span{outline:3px solid var(--accent);outline-offset:2px}
/* Dodatna poruka: checkbox otvara polje (main.js); bez JS-a polje je uvijek vidljivo */
.extra{display:flex;flex-direction:column;gap:10px}
.check{position:relative;display:flex;align-items:center;gap:12px;min-height:44px;align-self:flex-start;font-size:15px;font-weight:700;color:var(--ink);cursor:pointer}
.check input{position:absolute;opacity:0;width:1px;height:1px;margin:0}
.check__box{width:24px;height:24px;flex-shrink:0;border:1.5px solid var(--ink);border-radius:7px;background:#fff;display:flex;align-items:center;justify-content:center;color:#fff;transition:background-color .15s ease,border-color .15s ease}
.check__box .ic{width:16px;height:16px;opacity:0;transform:scale(.6);transition:opacity .15s ease,transform .15s ease}
.check:hover .check__box{background:var(--tint)}
.check input:checked + .check__box{background:var(--brand);border-color:var(--brand)}
.check input:checked + .check__box .ic{opacity:1;transform:none}
.check input:focus-visible + .check__box{outline:3px solid var(--accent);outline-offset:2px}
.field textarea{width:100%;min-height:112px;padding:12px 14px;border:1.5px solid #B5C6C5;border-radius:10px;background:#fff;color:var(--ink);font:inherit;font-size:16px;line-height:1.5;resize:vertical}
.field textarea::placeholder{color:#7F9194}
.field textarea:focus{outline:3px solid var(--accent);outline-offset:1px;border-color:var(--brand)}
.field__hint{font-size:13px;line-height:1.4;color:var(--mut)}
.extra .field:not([hidden]){animation:reveal .2s ease-out}
@keyframes reveal{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
.hp{position:absolute !important;left:-9999px;width:1px;height:1px;overflow:hidden}
.form__submit[disabled]{opacity:.7;cursor:progress}
.form__msg{margin:0;padding:12px 14px;border-radius:10px;background:#FBEAE6;color:#8E2A1E;font-size:15px;line-height:1.45}
.form__msg a{color:inherit;font-weight:700}
.form__note{margin:0;font-size:13px;line-height:1.45;color:var(--mut)}
.form--done{align-items:flex-start}
.form--done:focus{outline:none}
.form--done p{margin:0;color:var(--mut)}
.form__ok{width:56px;height:56px;border-radius:50%;background:#E6F4EC;color:var(--ok);display:flex;align-items:center;justify-content:center}
.form__ok .ic{width:28px;height:28px}

.mapcard{display:flex;flex-direction:column;background:#fff;color:var(--ink);border-radius:20px;overflow:hidden;--focus:#0E3B43}
.mapcard__map{position:relative;aspect-ratio:16/10;background:#E8E3D8}
.mapcard__map iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.mapcard__fallback{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:16px;text-align:center;color:var(--ink);font-weight:700;text-decoration:none;background:repeating-linear-gradient(0deg,transparent 0 38px,#fff 38px 46px),repeating-linear-gradient(90deg,#E8E3D8 0 90px,#fff 90px 100px)}
.mapcard__fallback .ic{width:32px;height:32px;color:#EA4335}
.mapcard__fallback span{font-size:14px;color:var(--brand);text-decoration:underline}
.mapcard__body{display:flex;flex-direction:column;gap:10px;padding:clamp(18px,2.4vw,24px)}
.mapcard__label{font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--mut)}
.mapcard__phone{font-family:var(--fd);font-weight:800;font-size:clamp(1.5rem,1.2rem + 1vw,1.875rem);letter-spacing:-.02em;color:var(--brand);text-decoration:none}
.mapcard__line{display:flex;align-items:flex-start;gap:8px;font-size:16px;line-height:1.45;color:var(--mut)}
.mapcard__line .ic{width:18px;height:18px;margin-top:2px}
.mapcard__tel{display:inline-flex;align-items:center;gap:8px;width:fit-content;min-height:44px;margin:-8px 0 -4px;font-size:16px;font-weight:700;color:var(--brand);text-decoration:none}
.mapcard__tel:hover{text-decoration:underline}
.mapcard__tel .ic{width:18px;height:18px}

/* ---------- Footer ---------- */
.footer{background:var(--deep);color:#fff;padding-top:clamp(48px,7vw,80px);overflow:hidden}
.footer__grid{display:grid;gap:32px;grid-template-columns:minmax(0,1fr)}
.footer__about{display:flex;flex-direction:column;align-items:flex-start;gap:18px}
.footer__about p{margin:0;max-width:40ch;font-size:15px;line-height:1.6;color:var(--ondark)}
.footer__h{margin:0 0 10px;font-family:var(--ff);font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}
.footer address{font-style:normal;font-size:16px;line-height:1.6;color:var(--ondark)}
.footer a:not(.btn):not(.logo){color:#fff;text-decoration:none}
.footer a:not(.btn):not(.logo):hover{color:var(--accent)}
.footer ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:0;font-size:16px}
.footer ul a,.footer__tel{display:inline-block;padding:5px 0}
.footer__tel{display:block;width:fit-content}
.footer__soc{display:flex;align-items:center;gap:8px;width:fit-content;min-height:44px;font-size:16px}
.footer__soc .ic{width:18px;height:18px}
.footer__bottom{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:clamp(36px,5vw,56px);padding-top:20px;border-top:1px solid rgba(255,255,255,.12);font-size:14px;color:var(--ondark)}
.footer__bottom a{min-height:44px;display:inline-flex;align-items:center;text-decoration:underline !important}
.footer__word{margin-top:clamp(12px,3vw,32px);margin-bottom:-.14em;font-family:var(--fd);font-weight:800;font-size:clamp(1.5rem,12.5vw,12.5rem);line-height:.9;letter-spacing:-.045em;text-align:center;white-space:nowrap;color:#11434B;user-select:none;-webkit-user-select:none}
@media (min-width:600px){
  .footer__grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .footer__about{grid-column:1 / -1}
}
@media (min-width:900px){
  .footer__grid{grid-template-columns:1.6fr 1fr 1fr 1fr}
  .footer__about{grid-column:auto}
}

/* ---------- Mobilni meni ---------- */
.menu{position:fixed;inset:0;z-index:100;display:flex;flex-direction:column;padding:calc(env(safe-area-inset-top,0px) + 10px) var(--gutter) calc(env(safe-area-inset-bottom,0px) + 20px);background:var(--brand);color:#fff;overflow-y:auto;overscroll-behavior:contain;animation:menuIn .2s ease-out}
@keyframes menuIn{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}
.menu__top{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:64px}
.menu__nav{display:flex;flex-direction:column;margin-top:12px}
.menu__nav a{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:56px;border-bottom:1px solid rgba(255,255,255,.12);font-family:var(--fd);font-weight:700;font-size:clamp(1.1875rem,1rem + 1.4vw,1.5rem);color:#fff;text-decoration:none}
.menu__nav a:hover{color:var(--accent)}
.menu__actions{display:flex;flex-direction:column;gap:12px;margin-top:auto;padding-top:28px}
.menu__social{display:flex;flex-wrap:wrap;justify-content:center;column-gap:28px}
.menu__soc{display:flex;align-items:center;gap:8px;min-height:44px;font-size:16px;font-weight:700;color:#fff;text-decoration:none}
.menu__soc:hover{color:var(--accent)}
.menu__actions p{margin:4px 0 0;text-align:center;font-size:15px;color:var(--ondark)}
html.menu-open,html.menu-open body{overflow:hidden}

@media (max-width:299px){
  .topbar__call{display:none}
  .others__grid{grid-template-columns:minmax(0,1fr)}
  .slider__dots{display:none}
  .slider__ctrl{justify-content:flex-end}
  .rates__labels{font-size:11px}
}

/* ---------- Smanjeno kretanje ---------- */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.001ms !important;animation-iteration-count:1 !important;transition-duration:.001ms !important}
  .marquee__track{animation:none;flex-wrap:wrap}
  .marquee__list[aria-hidden="true"]{display:none}
  .marquee__list{flex-wrap:wrap;justify-content:center;row-gap:8px;padding-inline:var(--gutter)}
  .tl-g{background:#3FB27F}
}

/* ---------- Štampa ---------- */
@media print{
  .topbar,.menu,.slider__ctrl,.marquee,.road,.hero__visual{display:none !important}
  .hero,.dark-block{background:#fff !important;color:#000 !important}
  .hero *,.dark-block *{color:#000 !important}
}
