/* =====================================================================
   Parking Nina – glavni stilovi
   Fontovi: Figtree (tekst), Archivo (naslovi, varijabilni wdth/wght) – lokalno, WOFF2
   ===================================================================== */

/* ---------- Fontovi ---------- */
@font-face{font-family:"Figtree";font-style:normal;font-weight:300 900;font-display:swap;src:url(../fonts/figtree-latin-ext-wght-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:"Figtree";font-style:normal;font-weight:300 900;font-display:swap;src:url(../fonts/figtree-latin-wght-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:"Archivo";font-style:normal;font-weight:100 900;font-stretch:62% 125%;font-display:swap;src:url(../fonts/archivo-latin-ext-wdth-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:"Archivo";font-style:normal;font-weight:100 900;font-stretch:62% 125%;font-display:swap;src:url(../fonts/archivo-latin-wdth-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:"Archivo";font-style:italic;font-weight:100 900;font-stretch:62% 125%;font-display:swap;src:url(../fonts/archivo-latin-ext-wdth-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:"Archivo";font-style:italic;font-weight:100 900;font-stretch:62% 125%;font-display:swap;src:url(../fonts/archivo-latin-wdth-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}

/* ---------- Tokeni ---------- */
:root{
  --navy:#0E1B2C;
  --yellow:#F5C400;
  --bg:#F2F0EA;
  --bg-alt:#E8E4DA;
  --bg-warm:#ECE8DF;
  --white:#FFFFFF;
  --text:#0E1B2C;
  --text-2:#4A5568;
  --on-dark:#F2F0EA;
  --on-dark-2:#C9CFD8;
  --muted:#A7B0BE;
  --line-dark:#2A3B55;
  --line:#CFC9BC;
  --hl:#FFF6CC;
  --card-line:#E4DFD2;
  --navy-2:#14253B;

  --font-body:"Figtree",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --font-head:"Archivo","Figtree",system-ui,sans-serif;

  --container:1240px;
  --gutter:16px;
  --radius:20px;
  --radius-sm:12px;
  --shadow:0 1px 2px rgba(14,27,44,.05);
}
@media (min-width:700px){:root{--gutter:32px}}

/* ---------- Reset / baza ---------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:96px}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:16px;line-height:1.55;font-weight:400;overflow-x:hidden;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
img,video,svg{max-width:100%;height:auto;display:block}
img{background:transparent}
h1,h2,h3,h4,p,ul,ol,dl,dd,figure,blockquote{margin:0;padding:0}
ul,ol{list-style:none}
a{color:inherit}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer}
[hidden]{display:none!important}
.sr-only{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.skip-link{position:absolute;left:12px;top:-60px;z-index:200;background:var(--yellow);color:var(--navy);padding:10px 16px;border-radius:10px;font-weight:700;text-decoration:none}
.skip-link:focus{top:12px}
:focus-visible{outline:3px solid var(--yellow);outline-offset:3px;border-radius:6px}
.sec--light :focus-visible,.sec--beige :focus-visible,.fcard :focus-visible,.cta :focus-visible{outline-color:var(--navy)}
.container{width:min(100% - 2*var(--gutter),var(--container));margin-inline:auto}
.container--narrow{width:min(100% - 2*var(--gutter),860px)}
.icon{flex:none}
.c-yellow{color:var(--yellow)}
.br{display:inline}
@media (max-width:640px){.br--m{display:none}}

/* ---------- Tipografija ---------- */
.display{font-family:var(--font-head);font-weight:800;font-stretch:125%;line-height:1.02;letter-spacing:-.015em;color:var(--navy);text-wrap:balance;font-size:clamp(2.5rem,1.2rem + 4.4vw,5.25rem)}
.display--light,.hero .display,.sec--dark .display{color:var(--on-dark)}
.display--h2{font-size:clamp(2rem,1.2rem + 2.6vw,3.5rem);line-height:1.05;letter-spacing:-.01em}
.display--md{font-weight:800;font-stretch:125%;font-size:clamp(2rem,1.2rem + 2.4vw,3.25rem);line-height:1.08;letter-spacing:-.01em}
.display--sm{font-weight:800;font-stretch:125%;font-size:clamp(1.9rem,1.2rem + 1.9vw,2.6rem);line-height:1.1;letter-spacing:-.01em}
.display--page{font-size:clamp(2.4rem,1.2rem + 3.6vw,4.5rem);color:var(--on-dark);line-height:1.04;max-width:12.5em}
.display--form{font-size:1.75rem;font-stretch:112%;font-weight:750;line-height:1.1}
.display--cta{font-size:clamp(1.6rem,1.1rem + 1.6vw,2.25rem);font-stretch:112%;font-weight:750;line-height:1.1}
.display--apt{font-size:clamp(1.4rem,1rem + 1.2vw,2.125rem);font-stretch:125%;font-weight:800;line-height:1.08;color:var(--on-dark);margin-bottom:12px}
.eyebrow{display:flex;align-items:center;gap:12px;font-size:.8125rem;line-height:1.3;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--text-2);margin-bottom:16px}
.eyebrow::before{content:"";width:26px;height:2px;background:currentColor;flex:none}
.eyebrow--yellow{color:var(--yellow)}
.eyebrow--dark{color:var(--navy)}
.eyebrow--plain::before{display:none}
.eyebrow--plain{margin-bottom:8px;font-size:.75rem;letter-spacing:.12em}
.lead{font-size:1.1875rem;line-height:1.6;color:var(--on-dark-2);max-width:34em}
.lead--page{max-width:36em;margin-top:20px}
.intro{color:var(--text-2);max-width:40em;margin-top:16px;font-size:1.0625rem}
.intro--light{color:var(--on-dark-2)}
.sign{font-family:var(--font-head);font-style:italic;font-weight:700;font-stretch:100%;font-size:1.0625rem;color:var(--on-dark)}
.sign--dark{color:var(--navy)}
.link-u{font-weight:700;font-size:1.0625rem;text-decoration:underline;text-underline-offset:3px}

/* ---------- Gumbi ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:0 24px;border:1px solid transparent;border-radius:12px;font-weight:700;font-size:.9375rem;line-height:1;text-decoration:none;transition:background .15s,transform .15s,border-color .15s;cursor:pointer;white-space:nowrap}
.btn--sm{min-height:44px;padding:0 20px;font-size:.875rem}
.btn--xs{min-height:40px;padding:0 16px;font-size:.8125rem;border-radius:10px}
.btn--lg{min-height:56px;padding:0 28px;font-size:1rem}
.btn--block{width:100%;min-height:56px}
.btn--yellow{background:var(--yellow);color:var(--navy)}
.btn--yellow:hover{background:#ffd21f}
.btn--dark{background:var(--navy);color:var(--on-dark)}
.btn--dark:hover{background:#17273d}
.btn--ghost{background:transparent;color:var(--on-dark);border-color:var(--line-dark)}
.btn--ghost:hover{border-color:var(--on-dark-2)}
.btn--outline-dark{background:transparent;color:var(--navy);border-color:var(--navy)}
.btn--outline-dark:hover{background:rgba(14,27,44,.06)}
.btn:active{transform:translateY(1px)}
@media (max-width:640px){.btn--lg{min-height:56px}.hero__cta .btn{width:auto}}

/* ---------- Dekorativna traka ---------- */
.stripe{height:16px;background:repeating-linear-gradient(90deg,var(--yellow) 0 64px,transparent 64px 112px)}

/* ---------- Header ---------- */
.site-header{position:sticky;top:0;z-index:100;background:var(--navy);color:var(--on-dark);border-bottom:1px solid var(--line-dark)}
.admin-bar .site-header{top:32px}
@media (max-width:782px){.admin-bar .site-header{top:46px}}
.site-header__in{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;min-height:88px}
.logo{display:inline-flex;align-items:center;gap:14px;text-decoration:none;color:var(--on-dark);justify-self:start;min-width:0}
.logo__img{width:56px;height:56px;border-radius:50%;object-fit:cover;flex:none}
.logo__name{font-family:var(--font-head);font-weight:700;font-stretch:118%;font-size:1.25rem;letter-spacing:-.005em;white-space:nowrap}
.nav__list{display:flex;gap:36px;align-items:center}
.nav__list a,.mobile-nav__list a{position:relative;display:inline-block;padding:8px 0;color:var(--on-dark);text-decoration:none;font-size:.9375rem;font-weight:500}
.nav__list a:hover{color:#fff}
.nav__list .current-menu-item>a,.nav__list .current_page_item>a{font-weight:600}
.nav__list .current-menu-item>a::after,.nav__list .current_page_item>a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--yellow)}
.site-header__actions{display:flex;align-items:center;gap:16px;justify-self:end}
.lang{display:inline-flex;padding:3px;border:1px solid var(--line-dark);border-radius:999px;background:transparent}
.lang__b{display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:30px;padding:0 10px;border-radius:999px;font-size:.75rem;font-weight:700;color:var(--on-dark);text-decoration:none;letter-spacing:.04em}
.lang__b.is-on{background:var(--bg);color:var(--navy)}
.burger{display:none;width:44px;height:44px;border:1px solid var(--line-dark);border-radius:10px;background:transparent;align-items:center;justify-content:center;padding:0}
.burger__bars{display:grid;gap:5px;width:18px}
.burger__bars i{display:block;height:2px;background:var(--on-dark);border-radius:2px;transition:transform .2s,opacity .2s}
.burger[aria-expanded="true"] .burger__bars i:nth-child(1){transform:translateY(7px) rotate(45deg)}
.burger[aria-expanded="true"] .burger__bars i:nth-child(2){opacity:0}
.burger[aria-expanded="true"] .burger__bars i:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.mobile-nav{border-top:1px solid var(--line-dark);background:var(--navy);padding:8px 0 20px}
.mobile-nav__list{display:grid}
.mobile-nav__list a{display:block;padding:14px 0;font-size:1.0625rem;border-bottom:1px solid var(--line-dark)}
.mobile-nav__list .current-menu-item>a{color:var(--yellow)}
.lang--mobile{margin-top:16px}
@media (min-width:961px){.mobile-nav{display:none!important}}
@media (max-width:960px){
  .site-header__in{grid-template-columns:1fr auto;min-height:68px;gap:12px}
  .nav,.lang--header{display:none}
  .burger{display:inline-flex}
  .logo__img{width:48px;height:48px}
  .logo__name{font-size:1.0625rem}
  .site-header__actions{gap:12px}
}
@media (max-width:360px){.logo__name{font-size:.9375rem}.logo{gap:10px}.site-header__actions .btn{padding:0 14px}}

/* ---------- Sekcije ---------- */
.sec{padding:96px 0}
.sec--light{background:var(--bg)}
.sec--beige{background:var(--bg-alt)}
.sec--dark{background:var(--navy);color:var(--on-dark)}
.sec--tight-top{padding-top:0}
.sec__after{margin-top:72px}
.sec__sub{margin-top:96px}
@media (max-width:900px){#usluge{padding-top:56px}.sec{padding:64px 0}.sec__after{margin-top:48px}.sec__sub{margin-top:64px}}
.sec-head{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:end;margin-bottom:56px}
#usluge{padding-top:160px}
.sec-head__text{color:var(--text-2);font-size:1.0625rem;line-height:1.6;max-width:34em;padding-bottom:10px}
.sec-head--ask .sec-head__text{padding-bottom:0}
@media (max-width:900px){.sec-head{grid-template-columns:1fr;gap:20px;margin-bottom:32px}.sec-head__text{font-size:1.0625rem;padding-top:0}}

/* ---------- Hero ---------- */
.hero{background:var(--navy);color:var(--on-dark);position:relative}
.hero__grid{display:grid;grid-template-columns:minmax(0,1fr) 470px;gap:40px;align-items:start;padding-top:72px;padding-bottom:104px}
.hero__copy{padding-top:8px}
.hero__copy .display{margin:8px 0 32px;max-width:6.5em}
.hero__copy .lead{max-width:540px}
.hero__cta{display:flex;flex-wrap:wrap;gap:16px;margin:40px 0 32px}
.hero__notes{display:flex;flex-wrap:wrap;gap:12px 32px;font-size:1.0625rem;color:var(--on-dark-2)}
.hero__notes li{display:flex;align-items:center;gap:10px}
.hero__media{position:relative;width:470px;max-width:100%;margin-top:36px}
.phone{position:relative;width:350px;aspect-ratio:5/8;border-radius:34px;padding:7px;background:#0A1424;border:1px solid var(--line-dark);box-shadow:0 36px 70px rgba(0,0,0,.45),0 0 0 1px rgba(255,255,255,.03)}
.phone__video{width:100%;height:100%;object-fit:cover;border-radius:27px;background:#000}
.pill{position:absolute;left:20px;top:20px;display:inline-flex;align-items:center;gap:8px;padding:7px 14px;border-radius:999px;background:rgba(14,27,44,.78);backdrop-filter:blur(4px);color:var(--on-dark);font-size:.8125rem;font-weight:600}
.dot{width:8px;height:8px;border-radius:50%;background:var(--yellow)}
.phone__sound{position:absolute;right:20px;bottom:20px}
.km-card{position:absolute;right:0;top:44px;display:flex;align-items:center;gap:12px;padding:12px 18px;border-radius:16px;background:var(--navy-2);border:1px solid var(--line-dark);box-shadow:0 18px 40px rgba(0,0,0,.35)}
.km-card strong{display:block;font-family:var(--font-head);font-weight:800;font-stretch:118%;font-size:1.375rem;line-height:1.1;color:#fff}
.km-card span{display:block;font-size:.8125rem;color:var(--muted)}
@media (max-width:960px){
  .hero__grid{grid-template-columns:1fr;gap:36px;padding-top:36px;padding-bottom:56px}
  .hero__copy .display{margin-bottom:24px}
  .hero__cta{flex-direction:column;align-items:flex-start;gap:12px;margin:32px 0 28px}
  .hero__notes{flex-direction:column;gap:14px}
  .hero__media{width:100%}
  .phone{width:100%;max-width:372px;aspect-ratio:5/8}
  .km-card{right:0;top:48px}
}
.hero--page{padding-bottom:0}
.hero--page .container{padding-top:28px;padding-bottom:72px}
.crumbs{display:flex;gap:10px;align-items:center;font-size:.8125rem;color:var(--on-dark-2);margin-bottom:28px}
.crumbs a{color:var(--on-dark)}
.hero--page .eyebrow{margin-bottom:20px}
.stats{display:flex;flex-wrap:wrap;gap:16px;margin-top:40px}
.stats li{min-width:210px;padding:16px 20px;border:1px solid var(--line-dark);border-radius:14px;background:rgba(255,255,255,.02)}
.stats strong{display:block;font-family:var(--font-head);font-weight:800;font-stretch:118%;font-size:1.75rem;line-height:1.15;color:var(--yellow)}
.stats span{display:block;font-size:.8125rem;color:var(--on-dark-2)}
@media (max-width:700px){.hero--page .container{padding-bottom:48px}.stats{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:28px}.stats li{min-width:0;padding:14px 16px}}

/* ---------- Kartice ---------- */
.cards{display:grid;gap:16px}
.cards--4{grid-template-columns:repeat(4,1fr)}
.cards--3{grid-template-columns:repeat(3,1fr)}
.card{background:var(--white);border:1px solid var(--card-line);border-radius:var(--radius);box-shadow:var(--shadow)}
.card--feature{padding:32px 28px 36px}
.icon-box{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:14px;background:var(--navy);color:var(--yellow);flex:none}
.icon-box--sm{width:36px;height:36px;border-radius:10px}
.icon-box--lg{width:68px;height:68px;border-radius:18px}
.icon-box--yellow{background:var(--yellow);color:var(--navy)}
.card--feature .icon-box{margin-bottom:24px}
.card h3,.card--feature h3{font-family:var(--font-head);font-weight:750;font-stretch:120%;font-size:1.3125rem;line-height:1.2;margin-bottom:12px}
.card p{font-size:1.0625rem;color:var(--text-2);line-height:1.45}
.photos2{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:0 0 20px}
.photos2 img{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:var(--radius)}
.photos2 figcaption{font-size:.875rem;color:var(--text-2);margin-top:8px}
.cards--amen{margin-top:0}
.card--amen{padding:24px 26px 26px}
.card--amen .icon-box{width:44px;height:44px;border-radius:12px;margin-bottom:16px}
.card--amen h3{margin:0 0 6px;font-size:1.0625rem;font-stretch:118%}
.card--amen p{font-size:.9375rem;line-height:1.4}
@media (max-width:900px){
  .cards--4{grid-template-columns:1fr}
  .cards--3{grid-template-columns:1fr 1fr}
  .cards--rev,.cards--ex{grid-template-columns:1fr}
  .photos2{grid-template-columns:1fr;gap:20px}
  .card--feature{padding:28px}
  .card--amen{padding:20px 18px 22px}
  .card--amen p{font-size:1rem}
}
@media (max-width:420px){.cards--amen,.cards--inc{gap:12px}}

/* ---------- Nina ---------- */
.nina{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.nina__photo{position:relative}
.nina__photo img{width:100%;aspect-ratio:8/7;object-fit:cover;object-position:50% 20%;border-radius:24px}
.badge-yellow{position:absolute;right:-12px;bottom:-24px;width:min(300px,78%);background:var(--yellow);color:var(--navy);padding:16px 22px;border-radius:18px;box-shadow:0 16px 32px rgba(0,0,0,.28)}
.badge-yellow strong{display:block;font-family:var(--font-head);font-weight:800;font-stretch:118%;font-size:2.25rem;line-height:1.1}
.badge-yellow span{display:block;font-size:.9375rem;font-weight:700;line-height:1.35;margin-top:2px}
.nina__copy p{color:var(--on-dark-2);font-size:1.125rem;line-height:1.65;margin-top:20px;max-width:36em}
.nina__copy .display{margin-top:4px;margin-bottom:8px}
.nina__cta{display:flex;align-items:center;gap:20px;margin-top:28px;flex-wrap:wrap}
@media (max-width:900px){
  .nina{grid-template-columns:1fr;gap:48px}
  .nina__copy p{font-size:1.0625rem}
  .badge-yellow{right:-8px;bottom:-32px;width:min(300px,88%)}
  .nina__cta{flex-direction:column;align-items:flex-start;gap:20px}
}

/* ---------- Kako funkcionira ---------- */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin-top:36px}
.step{border-top:2px solid var(--navy);padding-top:14px}
.step__n{display:block;font-family:var(--font-head);font-weight:800;font-stretch:125%;font-size:2.75rem;line-height:1.1;margin-bottom:8px}
.step h3{font-family:var(--font-head);font-weight:700;font-stretch:112%;font-size:1.125rem;margin-bottom:10px}
.step p{font-size:1.125rem;color:var(--text-2);max-width:24em}
@media (max-width:900px){.steps{grid-template-columns:1fr;gap:36px;margin-top:28px}.step__n{font-size:3.25rem}.step p{font-size:1.0625rem}}

/* ---------- Cijene (podjela) ---------- */
.price-split{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:start}
.price-split__text{color:var(--text-2);margin:20px 0 28px;font-size:1.125rem;max-width:34em}
@media (max-width:900px){.price-split{grid-template-columns:1fr;gap:32px}.price-split__text{font-size:1.0625rem}}
.calc{background:var(--navy);color:var(--on-dark);border-radius:var(--radius);padding:28px}
.calc__title{font-family:var(--font-head);font-weight:700;font-stretch:112%;font-size:1.375rem;margin-bottom:20px;color:#fff}
.calc__row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:18px;border-bottom:1px solid var(--line-dark)}
.calc--cjenik .calc__row{border:0;padding-bottom:12px}
.calc__label{font-size:.75rem;letter-spacing:.12em;color:var(--on-dark-2);font-weight:600}
.stepper{display:flex;align-items:center;gap:18px}
.stepper__b{width:48px;height:48px;border-radius:10px;border:1px solid var(--line-dark);background:transparent;color:#fff;font-size:1.25rem;font-weight:700;line-height:1;display:inline-flex;align-items:center;justify-content:center}
.stepper__b--plus{background:var(--yellow);border-color:var(--yellow);color:var(--navy)}
.stepper__b:hover{border-color:var(--on-dark-2)}
.stepper__b--plus:hover{background:#ffd21f}
.stepper__v{min-width:2.2ch;text-align:center;font-family:var(--font-head);font-weight:800;font-stretch:118%;font-size:1.5rem;color:#fff}
.calc__total{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-top:18px}
.calc--cjenik .calc__total{border-top:1px solid var(--line-dark);padding-top:16px;margin-top:16px}
.calc__total-l{font-size:.9375rem;color:var(--muted)}
.calc__price{font-family:var(--font-head);font-weight:800;font-stretch:125%;font-size:clamp(2.6rem,2rem + 2vw,4rem);line-height:1.05;color:var(--yellow);margin-top:4px;white-space:nowrap}
.calc__early{color:var(--yellow);font-size:.9375rem;font-weight:700;margin:8px 0 10px}
.calc__check{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:12px 16px;border:1px solid var(--line-dark);border-radius:12px;margin-bottom:8px;cursor:pointer;font-size:1.0625rem;position:relative}
.calc__check input{position:absolute;opacity:0;inset:0;cursor:pointer}
.calc__box{width:18px;height:18px;border:1.5px solid var(--muted);border-radius:5px;display:inline-block;flex:none;position:relative}
.calc__check input:checked+.calc__box,.sur-row.is-on .calc__box{background:var(--yellow);border-color:var(--yellow)}
.calc__check input:checked+.calc__box::after,.sur-row.is-on .calc__box::after{content:"";position:absolute;left:5px;top:1px;width:5px;height:10px;border:solid var(--navy);border-width:0 2px 2px 0;transform:rotate(45deg)}
.calc__check input:focus-visible+.calc__box{outline:3px solid var(--yellow);outline-offset:2px}
.calc__check strong,.sur-row__p{color:var(--yellow);font-weight:700}
.calc__lines{margin:14px 0 0;border-top:1px solid var(--line-dark);padding-top:12px;display:grid;gap:6px;font-size:.9375rem;color:var(--on-dark-2)}
.calc__lines div{display:flex;justify-content:space-between}
.calc__lines dd{color:#fff;font-weight:600}
.calc__note{margin-top:14px;font-size:.875rem;color:var(--muted)}
.calc__request{margin-top:14px;padding:12px 14px;border-radius:12px;background:rgba(245,196,0,.1);color:var(--yellow);font-size:1.0625rem}
.calc__request a{color:#fff;font-weight:700}
.note-card{display:flex;gap:14px;align-items:flex-start;margin-top:16px;padding:18px 20px;background:var(--white);border:1px solid var(--card-line);border-radius:16px}
.note-card h3{font-family:var(--font-head);font-weight:700;font-stretch:112%;font-size:1.0625rem;margin-bottom:4px}
.note-card p{font-size:.9375rem;color:var(--text-2)}

.price-table{background:var(--white);border:1px solid var(--card-line);border-radius:var(--radius);overflow:hidden}
.price-table__head{display:flex;justify-content:space-between;padding:14px 24px;background:#F7F5EF;font-size:.6875rem;letter-spacing:.12em;font-weight:600;color:var(--text-2);border-bottom:1px solid var(--card-line)}
.price-table table{width:100%;border-collapse:collapse}
.price-table tr{border-bottom:1px solid #ECE8DF}
.price-table th,.price-table td{padding:0 24px;height:54px;font-size:1.125rem;text-align:left;font-weight:500}
.price-table td{text-align:right;font-family:var(--font-head);font-weight:800;font-stretch:112%;font-size:1rem}
.price-table tr.is-on{background:var(--hl)}
.price-table tr.is-muted th{color:var(--text-2)}
.price-table tr.is-muted td{font-weight:700}
.price-table td.is-small{font-family:var(--font-body);font-weight:700;font-size:.9375rem}
.price-table__night{background:#F7F5EF;padding:18px 24px 22px;font-size:.9375rem}
.price-table__night-t{font-size:.8125rem;letter-spacing:.12em;font-weight:700;color:var(--text-2);margin-bottom:8px}
.price-table__night p{display:flex;justify-content:space-between;padding:3px 0}
.checks{padding:20px 24px 24px;display:grid;gap:10px;font-size:.9375rem;color:var(--text-2)}
.checks li{display:flex;gap:12px;align-items:flex-start;line-height:1.4}
.checks .icon{margin-top:2px;color:var(--navy)}
.checks__note{color:var(--text)}
.checks--terms{padding:0;gap:12px;font-size:1.0625rem}
@media (max-width:900px){.price-table th,.price-table td{height:55px;font-size:1rem}.checks{font-size:.9375rem}}

/* ---------- Apartman ---------- */
.apt{display:grid;grid-template-columns:auto 1fr auto;gap:28px;align-items:center;background:var(--navy);color:var(--on-dark);border-radius:var(--radius);padding:32px 36px}
.apt__copy p{font-size:.9375rem;color:var(--on-dark-2);max-width:42em}
.apt__copy{max-width:700px}
.apt__copy h3{font-family:var(--font-head);font-weight:800;font-stretch:118%;color:var(--on-dark);font-size:1.75rem;line-height:1.1;margin:0 0 8px}
.apt__copy .eyebrow{margin-bottom:6px;font-size:.6875rem}
.apt__act{display:grid;gap:14px;justify-items:center}
.apt__link{font-size:.875rem;font-weight:600;color:#fff}
.apt--small{padding:24px 28px;gap:20px}
.apt--small h3{font-size:1.25rem}
.apt--small .apt__copy .eyebrow{margin-bottom:2px}
@media (max-width:900px){
  .apt{grid-template-columns:1fr;padding:28px;gap:20px;justify-items:start}
  .apt__copy p{font-size:1rem}
  .apt__act{justify-items:start}
  .apt--small .btn{justify-self:start}
}

/* ---------- Recenzije ---------- */
.rev-head{display:flex;align-items:flex-end;gap:24px;flex-wrap:wrap;margin-bottom:36px}
.rev-head__score{display:flex;align-items:center;gap:16px}
.rev-head__n{font-family:var(--font-head);font-weight:500;font-stretch:100%;font-size:2.5rem;line-height:1}
.rev-head small{display:block;font-size:.875rem;color:var(--text-2);margin-top:2px}
.stars{display:inline-flex;gap:3px;color:var(--yellow)}
.stars__s.is-off{color:#D9D4C8}
.card--rev{padding:24px;border-style:dashed;border-color:#D7D2C6;display:flex;flex-direction:column;gap:14px}
.card--rev blockquote p{font-size:.875rem;color:var(--text);text-align:justify;line-height:1.8}
.rev__by{font-size:.875rem!important}
.rev__by strong{color:var(--text)}
.rev__by span{color:var(--text-2)}
@media (max-width:900px){.card--rev blockquote p{font-size:.9375rem}.rev-head{flex-direction:column;align-items:flex-start;gap:16px}.rev-head__n{font-size:2.75rem}}

/* ---------- FAQ ---------- */
.faq-split{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:start}
.faq-split__l p{color:var(--text-2);margin-top:12px;font-size:1.125rem}
.faq-split__l a{font-weight:700}
.faq{display:grid;gap:8px}
.faq__item summary{list-style:none;display:flex;gap:12px;align-items:center;cursor:pointer;font-family:var(--font-head);font-weight:700;font-stretch:122%;font-size:1rem;line-height:1.3;padding:20px 22px}
.faq__item summary::-webkit-details-marker{display:none}
.faq__tri{width:0;height:0;border:5px solid transparent;border-left:8px solid var(--navy);border-right:0;flex:none;transition:transform .2s}
.faq__item[open] .faq__tri{transform:rotate(90deg)}
.faq__a{padding:0 20px 20px 40px;font-size:1.125rem;color:var(--text-2);max-width:48em}
.faq--cards .faq__item{background:var(--white);border-radius:12px;box-shadow:var(--shadow)}
.faq--lines{gap:0;border-top:1px solid var(--line)}
.faq--lines .faq__item{border-bottom:1px solid var(--line)}
.faq--lines summary{padding:18px 4px;font-size:1.0625rem}
.faq--lines .faq__a{padding-left:28px}
@media (max-width:900px){.faq-split{grid-template-columns:1fr;gap:28px}.faq-split__l p{font-size:1.0625rem}.faq__item summary{font-size:1.0625rem}}

/* ---------- Rezervacija ---------- */
.sec--booking{padding:112px 0}
.booking{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start;padding-inline:24px}
.booking__l .display{margin:8px 0 28px}
.booking__text{color:var(--on-dark-2);font-size:1.125rem;line-height:1.65;max-width:30em;margin-bottom:20px}
.booking__text a{color:#fff;font-weight:700;text-decoration:underline}
.booking__secure{display:flex;align-items:center;gap:10px;font-size:.9375rem;color:var(--on-dark-2);margin:28px 0}
.summary{border:1px solid var(--yellow);border-radius:20px;padding:24px;background:var(--navy-2)}
.summary h3{font-family:var(--font-head);font-weight:700;font-stretch:112%;font-size:1.125rem;color:#fff}
.summary__addr{font-size:.875rem;color:var(--muted);margin:4px 0 16px}
.summary__label{color:var(--yellow);font-size:.875rem;font-weight:700;margin-bottom:6px}
.field-group{margin-bottom:12px}
.dt{display:grid;grid-template-columns:1.35fr 1fr;gap:8px}
.input{display:block;width:100%;min-height:52px;padding:12px 16px;border:1px solid #D9D4C8;border-radius:12px;background:#FBFAF6;color:var(--navy);font-size:1.125rem;line-height:1.3;appearance:none;-webkit-appearance:none}
.input::placeholder{color:#8A93A2}
.input:focus-visible{outline:3px solid var(--yellow);outline-offset:1px;border-color:var(--navy)}
select.input{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%230E1B2C' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;padding-right:40px}
textarea.input{min-height:104px;resize:vertical}
.input--dt{min-height:44px;padding:8px 12px;border-radius:10px;background:var(--bg);font-size:1.0625rem}
.input[aria-invalid="true"]{border-color:#C0392B;background:#FFF6F5}
.summary__sur{margin:14px 0 14px;padding-top:14px;border-top:1px solid var(--line-dark)}
.sur-row{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:6px 0;font-size:.9375rem;color:#fff}
.sur-row small{display:block;color:var(--muted);font-size:.8125rem}
.sur-row strong{font-weight:600}
.sur-row__p{color:var(--muted)!important}
.sur-row.is-on .sur-row__p{color:var(--yellow)!important}
.summary__hint{font-size:.8125rem;color:var(--on-dark-2);margin-top:8px;line-height:1.5}
.summary__total{margin-top:16px;background:#0E1B2C;border-radius:12px;padding:16px 18px}
.summary__line{display:flex;justify-content:space-between;font-size:.9375rem;color:var(--on-dark-2);padding:2px 0}
.summary__line--total{margin-top:8px;padding-top:10px;border-top:1px solid var(--line-dark);color:#fff;font-size:1.0625rem}
.summary__line--total strong:last-child{color:var(--yellow);font-family:var(--font-head);font-weight:800;font-stretch:118%;font-size:1.125rem}
.summary__line--surcharge span:last-child{color:var(--yellow)}
.form-panel{background:var(--bg);color:var(--text);border-radius:28px;padding:16px;display:grid;gap:14px}
.fcard{background:var(--white);border:1px solid var(--card-line);border-radius:18px;padding:22px 22px 24px;min-width:0;margin:0}
.fcard__t{color:var(--navy);display:flex;align-items:center;gap:12px;font-family:var(--font-head);font-weight:700;font-stretch:112%;font-size:1.0625rem;padding:0;margin-bottom:16px;float:left;width:100%}
.fcard__t+*{clear:both}
.fcard__lead{font-size:.875rem;color:var(--text-2);margin:-6px 0 16px;line-height:1.5}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px 14px}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:12px 14px}
.field-wrap{margin-bottom:14px;min-width:0}
.field-wrap--half{max-width:50%}
.field-wrap label:not(.check):not(.radio-card){display:block;font-size:.875rem;font-weight:700;margin-bottom:6px;color:var(--navy)}
.field-hint{font-size:.8125rem;color:var(--text-2);margin-top:6px}
.field-hint--top{margin:-4px 0 8px;font-size:.875rem}
.field-err{font-size:.875rem;color:#B3261E;font-weight:600;margin-top:6px}
.phone-row{display:grid;grid-template-columns:132px 1fr;gap:8px}
.phone-row select{padding-left:14px;padding-right:32px}
.radios{margin-bottom:14px}
.radio-card,.check{position:relative;display:flex;gap:12px;align-items:flex-start;cursor:pointer;font-size:.9375rem;line-height:1.4}
.radio-card{align-items:center;min-height:48px;padding:12px 14px;border:1px solid #D9D4C8;border-radius:12px;font-weight:600;background:#FBFAF6}
.radio-card input,.check input{position:absolute;opacity:0;width:20px;height:20px;margin:0;z-index:1;cursor:pointer;left:0;top:1px}
.radio-card__dot,.check__box{width:18px;height:18px;border:1.5px solid #77808E;flex:none;position:relative;background:#fff}
.radio-card__dot,.check__box--radio{border-radius:50%}
.check__box{border-radius:4px;margin-top:1px}
.check input:checked+.check__box:not(.check__box--radio){background:var(--navy);border-color:var(--navy)}
.check input:checked+.check__box:not(.check__box--radio)::after{content:"";position:absolute;left:5px;top:1px;width:5px;height:10px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}
.check input:checked+.check__box--radio,.radio-card input:checked+.radio-card__dot{border-color:var(--navy);box-shadow:inset 0 0 0 4px #fff;background:var(--navy)}
.radio-card:has(input:checked){border-color:var(--navy);background:#fff}
.check input:focus-visible+.check__box,.radio-card input:focus-visible+.radio-card__dot{outline:3px solid var(--navy);outline-offset:2px}
.check small{display:block;color:var(--text-2);font-size:.8125rem;margin-top:3px}
.check strong{font-weight:700}
.check{margin:12px 0 0}
.check--terms{font-size:.875rem;margin:6px 0 0}
.check--terms a{font-weight:700}
.form-note{font-size:.8125rem;color:var(--text-2);text-align:center;margin-top:4px;line-height:1.5;padding:0 8px}
.form-alert{padding:14px 16px;border-radius:12px;font-size:1.0625rem;font-weight:600;line-height:1.45}
.form-alert--ok{background:#E6F4EA;color:#0F5132;border:1px solid #A8D5B5}
.form-alert--err{background:#FDECEA;color:#8A1C13;border:1px solid #F1B5AF}
@media (max-width:960px){
  .sec--booking{padding:64px 0}
  .booking{grid-template-columns:1fr;gap:36px;padding-inline:0}
  .booking__text{font-size:1.0625rem}
  .form-panel{padding:12px;border-radius:24px}
  .fcard{padding:22px 18px}
  .grid2,.grid3{grid-template-columns:1fr}
  .field-wrap--half{max-width:none}
  .input{font-size:1rem}
}
@media (max-width:440px){.dt{grid-template-columns:1.25fr 1fr}.phone-row{grid-template-columns:104px 1fr}}

/* ---------- Uvjeti ---------- */
.sec-head--eyebrow .eyebrow{margin-bottom:14px}
.terms{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:stretch}
.terms__r{display:grid;gap:16px}
.card--terms{padding:28px 28px 32px}
.card--terms h3{font-size:1.25rem;font-stretch:112%;margin-bottom:14px}
.card--terms p{font-size:.9375rem}
.bullets{margin:14px 0 18px;display:grid;gap:12px;font-size:.9375rem}
.bullets li{position:relative;padding-left:22px;line-height:1.45}
.bullets li::before{content:"";position:absolute;left:4px;top:.55em;width:6px;height:6px;border-radius:50%;background:var(--navy)}
.small{font-size:.875rem!important}
.card--dark{background:var(--navy);color:var(--on-dark);border-color:var(--navy);padding:28px;border-radius:var(--radius)}
.card--dark h3{font-family:var(--font-head);font-weight:700;font-stretch:112%;font-size:1.25rem;margin-bottom:12px}
.card--dark p{color:var(--on-dark-2);font-size:.9375rem}
.card--dark .strong{color:#fff;font-weight:600;margin:14px 0}
.card--dark .link-u{color:#fff;font-size:.875rem}
@media (max-width:900px){.terms{grid-template-columns:1fr}.card--terms p,.bullets{font-size:1rem}.checks--terms{font-size:1rem}.card--dark p{font-size:1rem}.card--terms{padding:24px}}

/* ---------- Kako doći ---------- */
.way{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start}
.way__lead{color:var(--text-2);font-size:1.125rem;margin:16px 0 28px;max-width:30em}
.way__steps{display:grid;gap:18px;margin-bottom:24px}
.way__steps li{display:grid;grid-template-columns:40px 1fr;gap:14px;align-items:start}
.num{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:var(--navy);color:var(--yellow);font-weight:800;font-size:1.0625rem}
.way__steps h3{font-family:var(--font-head);font-weight:700;font-stretch:112%;font-size:1.125rem;line-height:1.3}
.way__steps p{font-size:.9375rem;color:var(--text-2)}
.warn{display:flex;gap:12px;align-items:flex-start;padding:16px 18px;border:1px solid var(--yellow);background:var(--hl);border-radius:14px;margin-bottom:24px}
.warn .icon{margin-top:2px;flex:none}
.warn p{font-size:.875rem;font-weight:700;line-height:1.5}
.way__media{display:flex;justify-content:center}
.vframe{width:min(340px,100%);aspect-ratio:464/832;border-radius:20px;overflow:hidden;box-shadow:0 30px 60px rgba(14,27,44,.28);background:#000}
.vframe img,.vframe video{width:100%;height:100%;object-fit:cover}
@media (max-width:900px){.way{grid-template-columns:1fr;gap:40px}.way__lead{font-size:1.0625rem}.way__steps h3{font-size:1.125rem}.way__steps p{font-size:1rem}.warn p{font-size:.9375rem}.vframe{width:min(340px,100%)}}

/* ---------- Kontakt blok ---------- */
.sec--ask{padding-top:40px}
.sec-head--ask{align-items:center}
.cards--contact{margin-bottom:24px}
.card--contact{padding:24px 24px 26px}
.card--contact .big{font-family:var(--font-head);font-weight:700;font-stretch:112%;font-size:1.375rem;line-height:1.2;color:var(--navy);margin-bottom:8px}
.card--contact .big--sm{font-size:1.0625rem;overflow-wrap:anywhere}
.card--contact .big a{text-decoration:none}
.card--contact .muted,.muted{font-size:.9375rem;color:var(--text-2)}
.small-dark{font-size:.9375rem!important;color:var(--navy)!important;margin-bottom:10px}
.card--yellow{background:var(--yellow);border-color:var(--yellow)}
.card--yellow .eyebrow{color:var(--navy)}
.map{position:relative;border-radius:24px;overflow:hidden;background:#dfeee4}
.map__a{display:block}
.map img{width:100%;height:auto;aspect-ratio:1240/430;object-fit:cover}
.map iframe{display:block;width:100%;height:430px;border:0}
.map__btn{position:absolute;left:16px;bottom:16px}
.map-wrap{margin-top:48px}
.map-cap{font-size:.875rem;color:var(--text-2);margin-top:10px}
@media (max-width:900px){.sec--ask{padding-top:32px}.map img{aspect-ratio:1/.84}.map iframe{height:320px}}

/* ---------- Cjenik ---------- */
.price-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start;margin-top:36px}
.sec--light>.container>.eyebrow:first-child{margin-bottom:12px}
@media (max-width:900px){.price-grid{grid-template-columns:1fr;gap:24px}}
.cards--inc{margin-top:32px}
.cards--inc .card--amen{padding:22px 24px}
.rules{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:start}
.rules__list{border-top:1px solid var(--line)}
.rules__list li{display:grid;grid-template-columns:48px 1fr;gap:12px;padding:20px 0;border-bottom:1px solid var(--line)}
.rules__n{font-family:var(--font-head);font-weight:800;font-stretch:125%;font-size:1.25rem}
.rules__list h3{font-family:var(--font-head);font-weight:700;font-stretch:112%;font-size:1.125rem;margin-bottom:6px}
.rules__list p{font-size:.9375rem;color:var(--text-2);max-width:34em}
@media (max-width:900px){.rules{grid-template-columns:1fr}.rules__list h3{font-size:1.0625rem}.rules__list p{font-size:1rem}}
.cards--ex{margin-top:32px}
.card--ex{padding:24px}
.card--ex h3{font-size:1.125rem;margin-bottom:2px}
.ex__meta{font-size:.875rem!important;margin-bottom:16px}
.ex__lines{border-top:1px solid var(--card-line);padding-top:12px;display:grid;gap:6px;min-height:84px}
.ex__lines div{display:flex;justify-content:space-between;font-size:.9375rem;color:var(--text-2)}
.ex__lines dd{color:var(--text);font-weight:700}
.ex__total{display:flex;justify-content:space-between;align-items:baseline;border-top:2px solid var(--navy);margin-top:10px;padding-top:12px}
.ex__total span{font-weight:700;color:var(--text)!important;font-size:1.0625rem}
.ex__total strong{font-family:var(--font-head);font-weight:800;font-stretch:118%;font-size:1.75rem}
.sec--cta{padding:48px 0 96px}
.cta{display:flex;align-items:center;justify-content:space-between;gap:32px;background:var(--yellow);border-radius:24px;padding:40px 48px}
.cta p{font-size:.9375rem;font-weight:500;margin-top:6px}
.cta__btns{display:flex;gap:12px;flex-wrap:wrap}
@media (max-width:900px){.cta{flex-direction:column;align-items:stretch;padding:28px;gap:24px}.cta p{font-size:1.0625rem}.cta__btns{flex-direction:column}.cta__btns .btn{width:100%}.sec--cta{padding:24px 0 56px}}

/* ---------- Galerija ---------- */
.gal-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap;margin-bottom:32px}
.pills{display:flex;gap:10px}
.pill-btn{display:inline-flex;align-items:center;min-height:40px;padding:0 20px;border:1px solid var(--navy);border-radius:999px;font-size:.8125rem;font-weight:700;text-decoration:none;color:var(--navy)}
.pill-btn.is-on{background:var(--navy);color:var(--on-dark)}
.gal{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:260px;gap:16px;grid-auto-flow:dense}
.gal__item{position:relative;border-radius:20px;overflow:hidden;background:var(--bg-warm)}
.gal__item--wide{grid-column:span 2}
.gal__item--tall{grid-row:span 2}
.gal__a{display:block;width:100%;height:100%;position:relative;cursor:zoom-in}
.gal__a img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.gal__a:hover img{transform:scale(1.03)}
.gal__cap{position:absolute;left:12px;bottom:12px;max-width:calc(100% - 24px);padding:6px 14px;border-radius:999px;background:rgba(14,27,44,.82);color:var(--on-dark);font-size:.75rem;font-weight:600;line-height:1.3}
.gal__item--ph,.vid--ph{border:1.5px dashed #C9C3B5;background:transparent;display:flex;align-items:center;justify-content:center;text-align:center;color:var(--text-2);font-size:.9375rem;padding:12px}
.gal__item--ph span{display:grid;justify-items:center;gap:8px}
.vid--ph{border-color:var(--line-dark);color:var(--on-dark-2);min-height:220px;border-radius:20px}
.vid--ph span{display:grid;justify-items:center;gap:10px}
@media (max-width:900px){.gal{grid-template-columns:1fr 1fr;grid-auto-rows:170px;gap:10px}.gal__item{border-radius:16px}.gal__item--wide{grid-column:span 2}.gal__cap{left:8px;bottom:8px;max-width:calc(100% - 16px);font-size:.6875rem;padding:6px 12px;border-radius:14px}}
.sec--videos{padding-bottom:112px}
.vids{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:40px}
.vid{background:var(--navy-2);border:1px solid var(--line-dark);border-radius:20px;padding:10px 10px 22px}
.vid__frame{border-radius:12px;overflow:hidden;aspect-ratio:464/832;background:#000}
.vid__frame img,.vid__frame video{width:100%;height:100%;object-fit:cover}
.vid h3{font-family:var(--font-head);font-weight:700;font-stretch:112%;color:#fff;font-size:1.0625rem;margin:18px 12px 6px}
.vid p{font-size:.9375rem;color:var(--on-dark-2);margin:0 12px}
@media (max-width:900px){.vids{grid-template-columns:1fr}.sec--videos{padding-bottom:64px}.vid h3{font-size:1.25rem}.vid p{font-size:1rem}}

/* Lightbox */
.lb{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:rgba(7,13,22,.92);padding:24px}
.lb__fig{max-width:min(1200px,100%);max-height:100%;display:grid;gap:12px;justify-items:center}
.lb__img{max-width:100%;max-height:calc(100vh - 140px);width:auto;height:auto;border-radius:12px;object-fit:contain}
.lb__cap{color:var(--on-dark);font-size:1.125rem;text-align:center}
.lb__b{position:absolute;display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;border:1px solid var(--line-dark);background:rgba(14,27,44,.85);color:#fff}
.lb__b:hover{background:var(--yellow);color:var(--navy)}
.lb__close{top:16px;right:16px}
.lb__prev{left:16px;top:50%;transform:translateY(-50%)}
.lb__next{right:16px;top:50%;transform:translateY(-50%)}
.lb :focus-visible{outline-color:var(--yellow)}

/* ---------- Kontakt stranica ---------- */
.sec--contact{padding-top:72px}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px 40px;align-items:start}
.contact-grid__l{display:grid;gap:12px}
.ccard{display:flex;gap:16px;align-items:center;background:var(--white);border:1px solid var(--card-line);border-radius:16px;padding:18px 22px}
.ccard .big{font-family:var(--font-head);font-weight:700;font-stretch:112%;font-size:1.25rem;line-height:1.2;color:var(--navy);margin:2px 0 4px}
.ccard .big a{text-decoration:none}
.ccard .eyebrow{margin:0}
.ccard--yellow{background:var(--yellow);border-color:var(--yellow);padding:22px 24px}
.ccard--yellow h3{font-family:var(--font-head);font-weight:700;font-stretch:112%;font-size:1.0625rem;margin-bottom:4px}
.ccard--yellow p{font-size:.9375rem;color:var(--navy)}
.ccard--yellow .sign{margin-top:10px}
.fcard--inq{padding:32px;border-radius:24px}
.fcard--inq .fcard__lead{margin:6px 0 20px}
.fcard--inq .fcard__lead a{font-weight:700}
@media (max-width:900px){.contact-grid{grid-template-columns:1fr}.sec--contact{padding-top:40px}.ccard--yellow p{font-size:1rem}.fcard--inq{padding:24px}}

/* ---------- Prose (standardne stranice) ---------- */
.card-box{background:var(--white);border:1px solid var(--card-line);border-radius:var(--radius);padding:40px}
.prose h2{font-family:var(--font-head);font-weight:750;font-stretch:112%;font-size:1.5rem;margin:32px 0 12px}
.prose h2:first-child{margin-top:0}
.prose p,.prose li{color:var(--text-2);margin-bottom:12px}
.prose ul{list-style:disc;padding-left:22px}
.prose a{font-weight:700}
@media (max-width:700px){.card-box{padding:24px}}

/* ---------- Footer ---------- */
.site-footer{background:var(--navy);color:var(--on-dark-2);margin-top:0}
.site-footer__in{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;padding-top:32px;padding-bottom:40px}
.site-footer__brand{display:flex;align-items:center;gap:14px;font-size:.9375rem;font-weight:700;color:#fff}
.site-footer__brand .logo__img{width:48px;height:48px}
.footer__links{display:flex;gap:24px;flex-wrap:wrap;justify-content:center;font-size:.875rem}
.footer__links a{color:var(--on-dark-2);text-underline-offset:3px}
.site-footer__copy{justify-self:end;font-size:.875rem;color:var(--muted)}
@media (max-width:900px){
  .site-footer__in{grid-template-columns:1fr;gap:20px;padding-top:28px;padding-bottom:36px}
  .site-footer__nav .footer__links{justify-content:flex-start;gap:12px 22px;font-size:.9375rem}
  .site-footer__copy{justify-self:start;font-size:.875rem}
  .site-footer__brand{font-size:.9375rem}
}

/* ---------- Elementor kompatibilnost ---------- */
.elementor-widget-container>section.sec,.elementor-widget-container>section.hero{width:100%}
.elementor-page .site-main{display:block}

/* ---------- Mobilne korekcije (kalibrirano prema referencama 390 px) ---------- */
@media (max-width:900px){
  #usluge{padding-top:56px}
  .display,.display--md,.display--sm,.display--h2,.display--page{font-stretch:112%}
  .display{font-size:2.5rem;line-height:1.05}
  .hero__copy .display{max-width:none}
  .display--h2{font-size:2.1rem;line-height:1.08}
  .display--md,.display--sm{font-size:1.85rem;line-height:1.1}
  .display--page{font-size:2.5rem}
  .btn--lg{min-height:48px;padding:0 22px;font-size:1rem}
  .site-header__in{min-height:64px}
  .card h3,.card--feature h3{font-stretch:112%;font-size:1.25rem}
  .step__n{font-stretch:112%}
}
@media (max-width:900px){
  .calc--home .calc__row{flex-direction:column;align-items:flex-start;gap:16px}
  .calc--home .calc__total{flex-direction:column;align-items:flex-start;gap:16px}
  .calc__price{font-size:4rem}
  .calc{padding:24px}
}
.display--sub{font-weight:800;font-stretch:125%;font-size:clamp(1.9rem,1.1rem + 1.7vw,2.8rem);line-height:1.1;letter-spacing:-.01em}
@media (max-width:900px){.display--sub{font-stretch:112%;font-size:1.85rem}}
.hero--page .container{padding-top:40px;padding-bottom:80px}
@media (max-width:700px){.hero--page .container{padding-top:24px;padding-bottom:48px}}
.sec--contact{padding-top:88px}
@media (max-width:900px){.sec--contact{padding-top:40px}}
.hero--page .container{padding-bottom:88px}
@media (max-width:700px){.hero--page .container{padding-bottom:48px}}
@media (max-width:900px){
  .price-grid,.price-split,.faq-split,.rules,.contact-grid,.nina,.booking,.way,.terms,.sec-head,.hero__grid,.vids{grid-template-columns:minmax(0,1fr)}
  .price-table th,.price-table td{padding:0 16px}
  .price-table__head{padding:14px 16px}
}
@media (max-width:900px){.cards--3{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:700px){.cards--inc{grid-template-columns:minmax(0,1fr)}}
.calc__total{flex-wrap:wrap}
@media (max-width:900px){.display,.display--page{font-stretch:100%}.display--page{max-width:none}}
@media (max-width:900px){
  .display,.display--page{font-stretch:125%;font-size:2.55rem}
  .display--h2{font-stretch:125%;font-size:2rem}
  .display--cta,.display--form,.display--apt{font-stretch:118%}
  .display--cta{font-size:1.75rem}.display--apt{font-size:1.5rem}.display--form{font-size:1.625rem}
}
@media (max-width:900px){
  .display--page{font-size:2.3rem}
  .display--md,.display--sub,.display--sm{font-stretch:118%;font-size:1.6rem}
  .calc--cjenik .calc__total{flex-direction:column;align-items:stretch}
  .calc--cjenik .calc__total .btn{width:100%;min-height:52px}
}
