/* GENERISANO: tools/theme-concat.sh iz assets/src/css/ — NE MENJATI RUČNO (plan §2.6, ARCH §17.2) */

/* ==== 00-readme.css ==== */
/* Po jedan fajl po sekciji: NN-ime.css. build.py ih spaja u sections.css posle style.css, pa ovde prepisi stilove iz style.css. */

/* ==== 01-base.css ==== */
/* ==== 01-base: tokeni, zajedničke klase, motion runtime, topbar + header + mega, pre-footer CTA, footer, sticky mobilni CTA ==== */

/* ---------- tokeni ---------- */
:root{--m-ease:cubic-bezier(.2,.7,.2,1);--m-dur:.9s;--m-stagger:70ms}

/* ---------- tipografija (primena tokena) ---------- */
h1{font-size:clamp(56px,8.5vw,128px);line-height:.92}
h2{font-size:clamp(38px,5vw,72px);line-height:.95}
h3{font-size:clamp(22px,2.2vw,28px);font-weight:500;line-height:1.1}
.s-h2 .s-h2-sub,h1 .s-h2-sub,h2 .s-h2-sub{display:block;font-weight:400;font-size:.5em;line-height:1.15;color:var(--txt-2);margin-top:.15em;text-transform:none;letter-spacing:0}
.s-muted{color:rgba(243,241,236,.62)}
.s-link{font-weight:600;color:var(--txt);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:2px;text-decoration-color:var(--fultok);transition:text-decoration-color .15s}
.s-link:hover{text-decoration-color:var(--txt)}

/* ---------- zajedničke klase ---------- */
.s-photo{filter:saturate(.9) contrast(1.04)}
.s-sec{padding:clamp(72px,9vw,128px) 0;position:relative}
.s-sec-head{margin-bottom:40px}
.s-ph{position:relative;height:clamp(360px,42vw,560px);overflow:clip;background:#000}
.s-ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:var(--pos,50% 40%);opacity:1}
.s-ph::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(15,17,20,.95) 0%,rgba(15,17,20,.55) 30%,transparent 55%);pointer-events:none}
.s-ph .s-ph-in{position:absolute;left:0;right:0;bottom:0;padding-bottom:40px;z-index:1}
.s-ph h1{font-size:clamp(48px,6.5vw,104px);line-height:.92}
.s-chip{display:inline-flex;align-items:center;gap:8px;font-family:var(--fb);font-weight:500;font-size:15px;line-height:1.2;color:var(--txt);background:transparent;border:1px solid var(--line-2);border-radius:999px;padding:8px 14px;cursor:pointer;text-decoration:none;transition:border-color .15s,background .15s,color .15s}
.s-chip:hover{border-color:var(--txt)}
.s-chip.is-on{background:var(--txt);color:var(--ink);border-color:var(--txt)}
.s-tile{background:#fff;aspect-ratio:4/3;padding:12px;border-radius:4px;display:grid;place-items:center;overflow:hidden}
.s-tile img{width:100%;height:100%;object-fit:contain}

/* ---------- dugmad: bez senki, bez pomeranja, réz solid ---------- */
.btn{transition:background .15s,color .15s,border-color .15s}
.btn:hover{transform:none}
.btn-kek,.btn-piros,.btn-rez,.top .cta{box-shadow:none}
.btn-ghost{backdrop-filter:none}
.btn-rez{background:var(--rez);color:#1a1206}
.btn-rez:hover{background:#a87a38;filter:none}
.top{box-shadow:none}
.rv{opacity:1;transform:none}
.scroll-cue,.preview-tag{display:none}

/* ---------- motion runtime ----------
   .s-io  = koren momenta; 01-base.js mu daje .in (jednom, IO .25 / -10%) i .s-vis (dok je u viewportu, za will-change)
   sloj (a): @supports (animation-timeline: view()) u CSS-u sekcije
   sloj (b): @supports not (...) → .s-io.in + transition
   sloj (c): prefers-reduced-motion → završno stanje, bez animacije */
@media (prefers-reduced-motion:reduce){
  .s-io,.s-io *{animation:none!important;transition:none!important}
}

/* ---------- topbar + header (zajedno sticky) ---------- */
.s-base-hdr{position:sticky;top:0;z-index:50;transition:transform .25s var(--m-ease)}
body.scrolled:not(.menu-open) .s-base-hdr{transform:translateY(-36px)}
body.menu-open .s-base-hdr{transition:none}
.s-base-tb{background:#0a0c0e;color:var(--txt-2);font-family:var(--fb);font-weight:500;font-size:13.5px;line-height:1;height:36px}
.s-base-tb .wrap{display:flex;align-items:center;gap:20px;height:36px}
.s-base-tb a{color:inherit;text-decoration:none}
.s-base-tb a:hover{color:var(--txt)}
.s-base-tb .it{display:inline-flex;align-items:center;gap:7px;white-space:nowrap;min-width:0}
.s-base-tb .ic{width:14px;height:14px;color:var(--txt-2)}
.s-base-open i{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--txt-2);margin-right:2px}
.s-base-open.is-open i{background:#3ddc84}
.s-base-open [data-open-text]{overflow:hidden;text-overflow:ellipsis}
.s-base-lang{list-style:none;margin:0 0 0 auto;padding:0;display:flex;gap:2px;flex:0 0 auto}
.s-base-lang a{display:inline-flex;align-items:center;gap:6px;padding:5px 8px;border-radius:4px;font-weight:600;font-size:13px;color:var(--txt-2)}
.s-base-lang a[aria-current]{color:#fff;background:rgba(255,255,255,.08)}
.s-base-lang .flag{box-shadow:none}
@media(max-width:800px){.s-base-tb .hide-m{display:none}}

.top{position:relative;background:var(--kek)}
.top::before,.top::after{content:none}
.top .wrap{position:static;min-height:76px;gap:16px;transition:min-height .25s var(--m-ease)}
body.scrolled .top .wrap{min-height:62px}
.logo{display:block;width:100px;height:66px;overflow:hidden;margin:0;flex:0 0 auto;transition:width .25s var(--m-ease),height .25s var(--m-ease)}
.logo img{width:100px;height:100px;max-width:none;margin-top:-21.5px;filter:none;transition:width .25s var(--m-ease),height .25s var(--m-ease),margin-top .25s var(--m-ease)}
body.scrolled .logo{width:84px;height:55px}
body.scrolled .logo img{width:84px;height:84px;margin-top:-18px}
.logo .badge-t{display:none}

nav.main{margin-left:auto;gap:2px}
nav.main>a,nav.main .has-sub>a{font-family:var(--fd);font-weight:500;font-size:17px;letter-spacing:.04em;text-transform:uppercase;color:#fff;padding:10px 12px 7px;border-bottom:2px solid transparent;transition:border-color .15s}
nav.main>a::after,nav.main .has-sub>a::after{content:none}
nav.main>a:hover,nav.main .has-sub:hover>a,nav.main .has-sub:focus-within>a{border-bottom-color:rgba(255,255,255,.4)}
nav.main>a[aria-current],nav.main .has-sub>a[aria-current]{border-bottom-color:#fff}
nav.main .s-base-home{display:none}
nav.main .has-sub>a .ic{width:13px;height:13px}
.top .cta{margin-left:14px}
.burger{border-radius:4px}

/* ---------- mega meni (jedina dozvoljena senka) ---------- */
nav.main .has-sub{position:static}
.top .mega,.top .mega.tex{position:absolute;top:100%;left:0;width:100%;transform:none;border-radius:0;border:0;background:var(--bg2);color:var(--txt);padding:36px 0;box-shadow:var(--shadow);display:block;opacity:0;visibility:hidden;transition:opacity .15s,visibility .15s;text-align:left;isolation:isolate}
.top .mega.tex::before{content:"";position:absolute;inset:0;z-index:-1;top:0;left:0;margin:0;border:0;background:url(img/concrete.jpg) center/1400px repeat;opacity:.09;mix-blend-mode:screen;pointer-events:none}
nav.main .has-sub:hover .mega,nav.main .has-sub:focus-within .mega{opacity:1;visibility:visible;transform:none}
.top .mega .wrap{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:32px;align-items:start;min-height:0;position:relative}
.top .mega .covs{grid-column:1/9;display:flex;gap:24px;flex-wrap:wrap}
.top .mega .covs a{display:block;width:150px;position:static;border-radius:0;overflow:visible;aspect-ratio:auto;background:none;text-decoration:none;color:var(--txt)}
.top .mega .covs .s-base-cov{display:block;position:relative;left:auto;right:auto;bottom:auto;padding:0;font:inherit;aspect-ratio:3/4;border-radius:4px;overflow:hidden;background:var(--bg3)}
.top .mega .covs .s-base-cov::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,var(--bg3) 0%,rgba(28,32,37,.6) 30%,transparent 60%)}
.top .mega .covs img{width:100%;height:100%;object-fit:cover;object-position:50% 30%;filter:saturate(.8) contrast(1.05);transition:none;transform:none}
.top .mega .covs a:hover img{transform:none}
.top .mega .covs b{display:block;font-family:var(--fd);font-weight:500;font-size:18px;line-height:1.1;text-transform:uppercase;letter-spacing:0;margin-top:10px}
.top .mega .covs small{display:block;font-family:var(--fb);font-weight:500;font-size:14px;color:var(--txt-2);margin-top:3px}
.top .mega .covs a:hover b{text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:2px;text-decoration-color:var(--fultok)}
.top .mega .links{grid-column:9/13;display:flex;flex-direction:column;gap:20px;padding-top:2px}
.top .mega .links a{display:block;padding:0;border-radius:0;background:none;text-decoration:none;color:var(--txt);transition:none}
.top .mega .links a:hover{background:none}
.top .mega .links b{display:block;font-family:var(--fd);font-weight:500;font-size:26px;line-height:1.05;text-transform:uppercase;letter-spacing:0}
.top .mega .links small{display:block;font-family:var(--fb);font-weight:400;font-size:15px;color:var(--txt-2);margin-top:4px}
.top .mega .links a:hover b{text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:2px;text-decoration-color:var(--fultok)}

@media(max-width:1000px){
  nav.main>a,nav.main .has-sub>a{font-size:15px;padding:9px 8px 6px}
  .top .mega .covs{gap:16px}
}

/* ---------- mobilni meni ---------- */
@media(max-width:900px){
  nav.main{background:var(--kek-d);padding:96px var(--gut) 40px;gap:2px}
  nav.main>a,nav.main .has-sub>a{font-size:34px;line-height:1.1;padding:8px 0;letter-spacing:.02em;border-bottom:0}
  nav.main>a[aria-current],nav.main .has-sub>a[aria-current]{text-decoration:underline;text-underline-offset:8px;text-decoration-thickness:2px;text-decoration-color:#fff}
  nav.main .s-base-home{display:inline-flex}
  nav.main .has-sub{position:relative}
  .top .mega,.top .mega.tex{display:none}
  .top .cta{margin:24px 0 0}
  .m-lang{gap:10px;margin-top:28px}
  .m-lang a{font-family:var(--fb);font-weight:600;font-size:15px;letter-spacing:0;padding:9px 14px;border-radius:999px;border:1px solid rgba(255,255,255,.4)}
  .m-lang a[aria-current]{background:#fff;color:var(--kek-d);border-color:#fff}
  .m-close{border-radius:4px}
}

/* ---------- sticky mobilni CTA ---------- */
.s-base-stickycta{display:none}
@media(max-width:900px){
  .s-base-stickycta{position:fixed;left:0;right:0;bottom:0;z-index:45;display:flex;gap:10px;align-items:center;height:calc(56px + env(safe-area-inset-bottom));padding:0 12px env(safe-area-inset-bottom);background:#0a0c0e;border-top:1px solid var(--line);transform:translateY(100%);transition:transform .22s var(--m-ease)}
  .s-base-stickycta.show{transform:none}
  .s-base-stickycta .btn{flex:1 1 0;justify-content:center;height:40px;padding:0 14px;font-size:16px;white-space:nowrap}
  .s-base-stickycta .btn-ghost{background:transparent;border-color:rgba(255,255,255,.4)}
  .s-base-stickycta .btn .ic{width:16px;height:16px}
  body.menu-open .s-base-stickycta{display:none}
  body.s-base-has-cta{padding-bottom:calc(56px + env(safe-area-inset-bottom))}
}

/* ---------- pre-footer CTA (casings.jpg) ---------- */
.s-base-cta{position:relative;min-height:clamp(360px,34vw,480px);display:flex;align-items:center;overflow:clip;background:#000;padding:0}
.s-base-cta>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:70% 50%}
.s-base-cta::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(15,17,20,.92) 0%,rgba(15,17,20,.6) 45%,transparent 75%);pointer-events:none}
.s-base-cta .wrap{position:relative;z-index:2;width:100%;padding-top:48px;padding-bottom:48px}
.s-base-cta-in{max-width:560px}
.s-base-cta h2{color:var(--txt)}
.s-base-cta p{font-family:var(--fb);font-size:17px;line-height:1.55;color:var(--txt-2);margin:22px 0 26px;max-width:50ch}
.s-base-cta-acts{display:flex;flex-wrap:wrap;gap:12px}
.s-base-cta-sub{display:block;font-size:14px;margin-top:22px}
/* jedini skrol-vezani momenat u base-u: čaure tiho klize dok traka prolazi (samo transform) */
@supports (animation-timeline: view()){
  .s-base-cta>img{transform:scale(1.14);animation:s-base-plx linear both;animation-timeline:view();animation-range:entry 0% exit 100%}
  @keyframes s-base-plx{from{transform:scale(1.14) translateY(-6%)}to{transform:scale(1.14) translateY(6%)}}
}
@media(max-width:700px){
  .s-base-cta::before{background:linear-gradient(90deg,rgba(15,17,20,.94) 0%,rgba(15,17,20,.8) 60%,rgba(15,17,20,.45) 100%)}
  .s-base-cta .wrap{padding-top:56px;padding-bottom:56px}
}
@media (prefers-reduced-motion:reduce){.s-base-cta>img{animation:none;transform:none}}

/* ---------- footer ---------- */
.s-base-foot{background:var(--bg);color:var(--txt-2);border-top:1px solid var(--line);padding:72px 0 32px;overflow:visible}
.s-base-foot.tex::before{opacity:.15}
.s-base-fgrid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:32px;align-items:start;padding:0}
.s-base-f1{grid-column:1/5}
.s-base-f2{grid-column:5/9}
.s-base-f3{grid-column:9/11}
.s-base-f4{grid-column:11/13}
.s-base-foot h4{font-family:var(--fd);font-weight:500;font-size:18px;letter-spacing:.02em;text-transform:uppercase;color:var(--txt);margin:0 0 16px}
.s-base-foot .flogo{display:block;width:120px;height:80px;overflow:hidden;margin:0 0 22px}
.s-base-foot .flogo img{width:120px;height:120px;max-width:none;margin:-26px 0 0}
.s-base-foot address{font-style:normal;font-family:var(--fb);font-size:16px;line-height:1.5;color:var(--txt-2);margin:0 0 12px;max-width:30ch}
.s-base-foot .s-link{font-size:16px;color:var(--txt);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:2px;text-decoration-color:var(--fultok)}
.s-base-foot .s-link:hover{text-decoration-color:var(--txt);color:var(--txt)}
.s-base-soc{list-style:none;margin:20px 0 0;padding:0;display:flex;gap:20px}
.s-base-foot ul{list-style:none;margin:0;padding:0}
.s-base-foot li{margin:0 0 10px;font-size:15px;line-height:1.4}
.s-base-foot a{color:var(--txt);text-decoration:none}
.s-base-foot a:hover{color:var(--txt);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:2px;text-decoration-color:var(--fultok)}
.s-base-hours{width:100%;border-collapse:collapse;font-family:var(--fb);font-size:15px;font-variant-numeric:tabular-nums;line-height:1.3}
.s-base-hours td{padding:6px 0;border-bottom:1px solid var(--line);color:var(--txt-2);vertical-align:top}
.s-base-hours td:first-child{color:var(--txt);width:46%;padding-right:12px}
.s-base-hours tr:last-child td{border-bottom:0}
.s-base-closed{font-weight:600;color:var(--piros);background:#0a0c0e;padding:1px 7px;margin:-1px -7px;border-radius:3px}
.s-base-fnote{font-size:14px;margin:12px 0 0}
.s-base-fref{font-size:15px;margin:0;color:var(--txt-2)}
.s-base-fbot{display:flex;justify-content:space-between;gap:12px 24px;flex-wrap:wrap;margin-top:56px;padding-top:20px;border-top:1px solid var(--line);font-size:14px}
@media(max-width:1000px){
  .s-base-fgrid{grid-template-columns:repeat(6,minmax(0,1fr));gap:28px 20px}
  .s-base-f1{grid-column:1/4}
  .s-base-f2{grid-column:4/7}
  .s-base-f3{grid-column:1/4}
  .s-base-f4{grid-column:4/7}
}
@media(max-width:600px){
  .s-base-foot{padding:56px 0 28px}
  .s-base-fgrid{grid-template-columns:repeat(4,minmax(0,1fr));gap:28px 16px}
  .s-base-f1{grid-column:1/-1}
  .s-base-f2{grid-column:1/-1}
  .s-base-f3{grid-column:1/3}
  .s-base-f4{grid-column:3/5}
  .s-base-foot .flogo{margin-bottom:18px}
  .s-base-hours td{padding:5px 0}
  .s-base-hours td:first-child{width:40%}
  .s-base-foot li{margin-bottom:8px}
  .s-base-fbot{margin-top:40px}
}

/* ==== 10-home-hero.css ==== */
/* ==== HOME HERO (home-hero) — photo-04 full-bleed, dvoredni h1 dole, trust red.
   Jedini momenat pri učitavanju: zoom fotke + dva reda naslova izlaze iz maske + fade ostatka.
   Uz to jedan tihi skrol-vezani izlaz (CSS scroll-driven, samo transform/opacity, bez JS):
   dok hero napušta ekran fotka zaostaje i tamni, pa sledeća sekcija „klizi preko“ nje. ==== */
.s-hero{position:relative;min-height:clamp(720px,100vh,960px);min-height:clamp(720px,100svh,960px);display:grid;align-items:end;overflow:hidden;overflow:clip;background:var(--bg);isolation:isolate;padding:0}

/* fotka */
.s-hero-media{position:absolute;inset:0;z-index:0}
.s-hero-media picture{display:block;position:absolute;inset:0}
.s-hero .s-photo{filter:saturate(.9) contrast(1.04);opacity:1}
/* kadar podignut 10% (na 1000–1199px 18%, jer je hero nizak a trust red se prelama) da cev AK i lice ostanu iznad naslova */
.s-hero-img{position:absolute;left:0;top:-10%;width:100%;height:110%;max-width:none;object-fit:cover;object-position:42% 0%;transform-origin:50% 45%;animation:s-hero-zoom 1.8s cubic-bezier(.2,.7,.2,1) both}
@media(min-width:1000px){.s-hero-img{object-position:50% 0%}}
@media(min-width:1000px) and (max-width:1199px){.s-hero-img{top:-18%;height:118%}}

/* shade: dva sloja, bez teksture */
.s-hero-shade{position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(to top,rgba(15,17,20,.94) 0%,rgba(15,17,20,.55) 38%,rgba(15,17,20,0) 70%),linear-gradient(90deg,rgba(15,17,20,.55) 0%,transparent 55%)}
.s-hero-dim{position:absolute;inset:0;z-index:1;pointer-events:none;background:var(--bg);opacity:0}

/* sadržaj */
.s-hero-wrap{position:relative;z-index:2;width:100%;padding-top:clamp(96px,12vh,140px);padding-bottom:40px}
.s-hero-col{max-width:1180px}
.s-hero-h{font-family:var(--fd);font-weight:700;font-size:clamp(52px,7vw,104px);line-height:.92;text-transform:uppercase;letter-spacing:.005em;color:var(--txt);margin:0}
.s-hero-line{display:block;overflow:hidden;padding:.12em 0 .16em;margin:-.12em 0 -.16em}
.s-hero-line>span{display:block;animation:s-hero-rise .7s cubic-bezier(.2,.8,.2,1) both}
.s-hero-sub{font-weight:400;font-size:.52em;color:var(--txt)}
.s-hero-sub>span{animation-delay:120ms}
.s-hero-lead{font-family:var(--fb);font-weight:400;font-size:clamp(17px,1.4vw,20px);line-height:1.5;color:var(--txt-2);max-width:520px;margin:22px 0 28px}
.s-hero-acts{display:flex;flex-wrap:wrap;gap:12px 14px;align-items:center}
.s-hero .btn-kek{box-shadow:none}
.s-hero .btn:hover{transform:none}

/* trust red */
.s-hero-trust{list-style:none;margin:28px 0 0;padding:20px 0 0;border-top:1px solid rgba(255,255,255,.25);display:flex;flex-wrap:wrap;gap:12px 32px;font-family:var(--fb);font-weight:500;font-size:15px;line-height:1.35;color:var(--txt-2)}
.s-hero-trust li{display:flex;align-items:center;min-height:32px}
.s-hero-rating{gap:10px;flex-wrap:wrap}
.s-hero-rating b{font-family:var(--fd);font-weight:700;font-size:32px;line-height:1;color:var(--txt);font-variant-numeric:tabular-nums}
.s-hero-stars{display:inline-flex;gap:2px;color:var(--fultok)}
.s-hero-stars .ic{width:16px;height:16px}
.s-hero .s-muted{color:rgba(243,241,236,.62)}
.s-hero-rating .s-muted{font-size:14px;font-weight:400}

/* fade lead + dugmad + trust */
.s-hero-lead,.s-hero-acts,.s-hero-trust{opacity:0;animation:s-hero-fade .5s .6s cubic-bezier(.2,.7,.2,1) forwards}

@keyframes s-hero-zoom{from{transform:scale(1.06)}to{transform:scale(1)}}
@keyframes s-hero-rise{from{transform:translateY(120%)}to{transform:translateY(0)}}
@keyframes s-hero-fade{from{opacity:0}to{opacity:1}}
@keyframes s-hero-settle{from{transform:translate3d(0,0,0)}to{transform:translate3d(0,28%,0)}}
@keyframes s-hero-cover{from{opacity:0}to{opacity:.6}}

/* tihi skrol-izlaz: samo gde ima scroll-driven CSS; fallback = ništa (nema JS-a) */
@supports (animation-timeline: view()){
  .s-hero-media{animation:s-hero-settle linear both;animation-timeline:view();animation-range:exit 0% exit 100%}
  .s-hero-dim{animation:s-hero-cover linear both;animation-timeline:view();animation-range:exit 0% exit 100%}
}

/* mobilni */
@media(max-width:600px){
  .s-hero-wrap{padding-top:120px}
  .s-hero-h{font-size:clamp(46px,9.5vw,104px)}
  .s-hero-lead{margin:18px 0 24px}
  .s-hero-acts{flex-direction:column;align-items:stretch;gap:12px}
  .s-hero-acts .btn{width:100%;justify-content:center}
  .s-hero-trust{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:24px}
  .s-hero-trust li{align-items:flex-start;min-height:0}
  .s-hero-shade{background:linear-gradient(to top,rgba(15,17,20,.95) 0%,rgba(15,17,20,.66) 42%,rgba(15,17,20,.2) 70%,rgba(15,17,20,0) 86%)}
}

/* bez animacija: sve odmah vidljivo, završno stanje */
@media(prefers-reduced-motion:reduce){
  .s-hero-img,.s-hero-line>span,.s-hero-lead,.s-hero-acts,.s-hero-trust,.s-hero-media,.s-hero-dim{animation:none;transform:none;opacity:1}
  .s-hero-dim{opacity:0}
}

/* ==== 11-home-intro.css ==== */
/* ==== 11-home-intro: tekst + papirna meta (potpisni skrol momenat) ====
   Sve scoped na .s-intro. Geometrija mete (kvadrat): centar (50%,52%), papir r≈48% (slika skalirana 1.084),
   crni bull r≈19.5%. Blokovi sede na dijagonalama papira; gornji: rupa+broj gore / labela dole,
   donji: ogledalo (labela ka centru, rupa+broj ka rubu) — tako nijedan glif ne ulazi u bull ni na šperploču. */
.s-intro{background:var(--bg);padding:clamp(72px,9vw,128px) 0;position:relative}
.s-intro .wrap{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:48px;align-items:center}
.s-intro-txt{grid-column:1/6;min-width:0}
.s-intro-target{grid-column:6/13;margin:0;min-width:0;width:100%;max-width:760px;justify-self:end}

/* naslov u dva reda + tekst (isti stil kao base .s-h2, scoped da radi i bez 01-base.css) */
.s-intro .s-h2{font-family:var(--fd);font-weight:700;font-size:clamp(38px,5vw,72px);line-height:.95;text-transform:uppercase;letter-spacing:.005em;margin:0 0 28px;color:var(--txt)}
.s-intro .s-h2-sub{display:block;font-weight:400;font-size:.5em;line-height:1.15;color:var(--txt-2);text-transform:none;letter-spacing:0;margin-top:.15em}
.s-intro-txt p{font-family:var(--fb);font-size:17px;line-height:1.55;color:var(--txt-2);margin:0 0 1em;max-width:54ch}
.s-intro .s-link{display:inline-block;margin-top:6px;font-family:var(--fb);font-weight:600;font-size:17px;line-height:1.4;color:var(--txt);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:2px;text-decoration-color:var(--fultok);transition:text-decoration-color .2s}
.s-intro .s-link:hover{text-decoration-color:var(--txt)}
.s-intro .s-muted{color:rgba(243,241,236,.62)}

/* meta */
.s-intro-sq{position:relative;aspect-ratio:1;overflow:hidden;border-radius:4px;background:#6b5a3e}
.s-intro-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 52%;transform-origin:50% 52%;transform:scale(1.084)}
.s-intro-target figcaption{margin-top:14px;font-family:var(--fb);font-size:14px;line-height:1.4;text-align:center}

/* blokovi pogodaka: rupa + broj u redu, labela ispod (gornji) / iznad (donji) */
.s-intro-hit{position:absolute;display:grid;grid-template-columns:auto auto;justify-content:start;align-items:center;column-gap:8px;row-gap:2px;pointer-events:none}
.s-intro-hit .s-intro-hole{grid-row:2;grid-column:1;width:44px;height:44px;display:block}
.s-intro-hit b{grid-row:2;grid-column:2;font-family:var(--fd);font-weight:700;font-size:clamp(44px,4.5vw,64px);line-height:1;color:var(--ink);font-variant-numeric:tabular-nums;letter-spacing:0;white-space:nowrap}
.s-intro-hit small{grid-column:1/-1;font-family:var(--fb);font-weight:500;font-size:16px;line-height:1.3;color:#3b3f46;white-space:nowrap}
.s-intro-hit-1 small,.s-intro-hit-2 small{grid-row:3}
.s-intro-hit-3 small,.s-intro-hit-4 small{grid-row:1}
.s-intro-hit-2,.s-intro-hit-4{justify-content:end;text-align:right}
.s-intro-hit-2 b,.s-intro-hit-4 b{grid-column:1}
.s-intro-hit-2 .s-intro-hole,.s-intro-hit-4 .s-intro-hole{grid-column:2}
.s-intro-hit-1{left:12%;top:23%}
.s-intro-hit-2{right:12%;top:23%}
.s-intro-hit-3{left:12%;bottom:19%}
.s-intro-hit-4{right:12%;bottom:19%}

/* mobilni 2×2 grid brojki (samo ≤600) */
.s-intro-hits-m{display:none}

/* ---- motion: potpisni skrol momenat ---- */
.s-intro-target{view-timeline-name:--s-target;view-timeline-axis:block}
@keyframes s-hit{to{transform:scale(1)}}
@keyframes s-num{to{opacity:1}}
@supports (animation-timeline: view()){
  .s-intro-hole{transform:scale(0);transform-origin:center;animation:s-hit linear both;animation-timing-function:cubic-bezier(.3,1.6,.5,1);animation-timeline:--s-target}
  .s-intro-hit b,.s-intro-hit small{opacity:0;animation:s-num linear both;animation-timeline:--s-target}
  .s-intro-hit-1 .s-intro-hole,.s-intro-hit-1 b,.s-intro-hit-1 small{animation-range:entry 34% entry 40%}
  .s-intro-hit-2 .s-intro-hole,.s-intro-hit-2 b,.s-intro-hit-2 small{animation-range:entry 50% entry 56%}
  .s-intro-hit-3 .s-intro-hole,.s-intro-hit-3 b,.s-intro-hit-3 small{animation-range:entry 70% entry 76%}
  .s-intro-hit-4 .s-intro-hole,.s-intro-hit-4 b,.s-intro-hit-4 small{animation-range:entry 84% entry 90%}
}
/* fallback (Firefox/Safari bez scroll-driven): 11-home-intro.js daje .s-go SVAKOM bloku u trenutku kad kreće njegov brojač
   (pragovi 34/50/70/84 % vidljivosti mete = isti kao animation-range gore); .s-js postavlja JS — bez JS-a sve je odmah vidljivo */
@supports not (animation-timeline: view()){
  .s-intro.s-js .s-intro-hole{transform:scale(0);transform-origin:center;transition:transform .18s cubic-bezier(.3,1.6,.5,1)}
  .s-intro.s-js .s-intro-hit b,.s-intro.s-js .s-intro-hit small{opacity:0;transition:opacity .3s ease}
  .s-intro.s-js .s-intro-hit.s-go .s-intro-hole{transform:scale(1)}
  .s-intro.s-js .s-intro-hit.s-go b,.s-intro.s-js .s-intro-hit.s-go small{opacity:1}
}
/* mobilni grid: brojka se pokaže tek kad krene brojanje (nikad vidljiva nula), ćelija po ćelija */
.s-intro.s-js .s-intro-hits-m b{opacity:0;transition:opacity .3s ease}
.s-intro.s-js .s-intro-hits-m .s-go b{opacity:1}
.s-intro.s-vis .s-intro-hole{will-change:transform}
@media (prefers-reduced-motion: reduce){
  .s-intro-hole{animation:none!important;transition:none!important;transform:none!important;will-change:auto}
  .s-intro-hit b,.s-intro-hit small,.s-intro-hits-m b{animation:none!important;transition:none!important;opacity:1!important}
}

/* ---- tablet ≤1000: jedna kolona, tekst pa meta ---- */
@media (max-width:1000px){
  .s-intro .wrap{grid-template-columns:repeat(6,minmax(0,1fr));gap:40px 20px}
  .s-intro-txt,.s-intro-target{grid-column:1/-1;justify-self:start}
  .s-intro-txt p{max-width:60ch}
}
/* ---- mobil ≤600: meta 100%, samo rupe u meti, brojke ispod u 2×2 ---- */
@media (max-width:600px){
  .s-intro .wrap{grid-template-columns:repeat(4,minmax(0,1fr));gap:28px 16px}
  .s-intro-target{max-width:none}
  .s-intro-hit b,.s-intro-hit small{display:none}
  .s-intro-hit .s-intro-hole{width:28px;height:28px}
  .s-intro-hit-1{left:19%;top:27%}
  .s-intro-hit-2{right:19%;top:27%}
  .s-intro-hit-3{left:19%;bottom:23%}
  .s-intro-hit-4{right:19%;bottom:23%}
  .s-intro-hits-m{display:grid;grid-column:1/-1;grid-template-columns:1fr 1fr;gap:20px 16px;margin-top:-4px}
  .s-intro-hits-m b{display:block;font-family:var(--fd);font-weight:700;font-size:40px;line-height:1;color:var(--txt);font-variant-numeric:tabular-nums;white-space:nowrap}
  .s-intro-hits-m small{display:block;margin-top:6px;font-family:var(--fb);font-weight:500;font-size:15px;line-height:1.3;color:var(--txt-2)}
}

/* ==== 12-home-reviews.css ==== */
/* 12 home-reviews: tipografske kolone razdvojene 1px linijom, bez kartica/senki/avatara, nula animacije */
.s-rev{background:var(--bg);padding:clamp(72px,9vw,128px) 0}
.s-rev .s-sec-head{display:flex;align-items:flex-end;justify-content:space-between;gap:32px 48px;flex-wrap:wrap;margin-bottom:40px}
.s-rev h2{font-family:var(--fd);font-weight:700;font-size:clamp(38px,5vw,72px);line-height:.95;text-transform:uppercase;letter-spacing:.005em;margin:0}
.s-rev .s-rev-lead p{margin:16px 0 0;font:400 17px/1.55 var(--fb);color:var(--txt-2);max-width:52ch}
.s-rev .s-muted{color:rgba(243,241,236,.62)}
/* agregat: 5.0 kao grafika */
.s-rev-agg{display:flex;align-items:center;gap:16px 28px;flex-wrap:wrap}
.s-rev-score{display:flex;align-items:center;gap:16px}
.s-rev-score b{font-family:var(--fd);font-weight:700;font-size:64px;line-height:1;font-variant-numeric:tabular-nums;letter-spacing:0;color:var(--txt)}
.s-rev-score>div{display:flex;flex-direction:column;gap:6px}
.s-rev-stars{display:inline-flex;gap:2px;color:var(--fultok);line-height:1}
.s-rev-score .s-rev-stars .ic{width:18px;height:18px}
.s-rev-src{font:500 14px/1.3 var(--fb)}
.s-rev .btn:hover{transform:none}
.s-rev .btn-ghost{box-shadow:none}
/* napomena o placeholderu: vidljiva dok nema feeda */
.s-rev-note{font:400 14px/1.5 var(--fb);color:var(--txt);border-left:3px solid var(--fultok);padding:10px 14px;margin:0 0 32px;max-width:78ch}
/* tri kolone */
.s-rev-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px 0}
.s-rev-item{border-left:1px solid var(--line);padding:0 28px;display:flex;flex-direction:column;align-items:flex-start;gap:14px;min-width:0}
.s-rev-item:first-child{border-left:0;padding-left:0}
.s-rev-top{display:flex;align-items:center;gap:12px}
.s-rev-top .s-rev-stars .ic{width:14px;height:14px}
.s-rev-lang{font:600 11px/1 var(--fb);letter-spacing:0;color:var(--txt-2);border:1px solid var(--line-2);border-radius:3px;padding:2px 5px 1px}
.s-rev-text{margin:0;font:400 17px/1.55 var(--fb);color:var(--txt);align-self:stretch}
.s-rev.s-js .s-rev-item:not(.is-open) .s-rev-text{display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden}
.s-rev .s-link,.s-rev-more{font:600 15px/1.3 var(--fb);color:var(--txt);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:2px;text-decoration-color:var(--fultok);background:none;border:0;padding:0;cursor:pointer}
.s-rev-more{display:none;margin-top:-4px}
.s-rev.s-js .s-rev-item.has-more .s-rev-more{display:inline-block}
.s-rev-more:hover{color:var(--fultok)}
.s-rev-foot{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:auto;padding-top:4px}
.s-rev-foot b{font:600 16px/1.3 var(--fb);color:var(--txt)}
.s-rev-srcic{display:inline-flex;color:var(--txt-2)}
.s-rev-srcic .ic{width:16px;height:16px}
.s-rev-foot .s-muted{font:400 14px/1.3 var(--fb)}
@media(max-width:1000px){
  .s-rev-grid{gap:28px 0}
  .s-rev-item{padding:0 20px}
}
@media(max-width:700px){
  .s-rev-grid{grid-template-columns:1fr;gap:0}
  .s-rev-item{border-left:0;padding:24px 0 0;border-top:1px solid var(--line);margin-top:24px}
  .s-rev-item:first-child{border-top:0;padding-top:0;margin-top:0}
}
@media(max-width:600px){
  .s-rev-score b{font-size:56px}
  .s-rev .s-sec-head{gap:28px}
}
/* review-one (podstrane): jedan citat u 2 kolone; renderuje se tek kad t.reviews_live postane True */
.s-rev1{background:var(--bg);padding:clamp(72px,9vw,128px) 0}
.s-rev1-grid{display:grid;grid-template-columns:1fr 2fr;gap:32px;align-items:start}
.s-rev1-head{display:flex;flex-direction:column;gap:10px;align-items:flex-start}
.s-rev1-head b{font-family:var(--fd);font-weight:700;font-size:64px;line-height:1;font-variant-numeric:tabular-nums}
.s-rev1-head .s-rev-stars .ic{width:18px;height:18px}
.s-rev1-quote{margin:0;border-left:1px solid var(--line);padding:0 0 0 28px}
.s-rev1-quote p{margin:0 0 16px;font:400 20px/1.5 var(--fb);color:var(--txt)}
.s-rev1-quote footer{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.s-rev1-quote footer b{font:600 16px/1.3 var(--fb)}
.s-rev1 .s-muted{color:rgba(243,241,236,.62);font:400 14px/1.3 var(--fb)}
@media(max-width:700px){.s-rev1-grid{grid-template-columns:1fr;gap:20px}.s-rev1-quote{border-left:0;padding:0}}

/* ==== 13-home-steps.css ==== */
/* Home — 3 lépés: cik-cak tipografija + isprekidana putanja (SVG mask + @property --hit).
   Putanja je skrol-vezana (animation-timeline: view()), fallback = IO klasa .in + transition na --hit,
   reduced-motion = završno stanje. Čvorovi (.badge) su na UNUTRAŠNJOJ strani koraka (ka kanalu
   između kolona 6–7), pa kubična kriva iz app.js drawPath nikad ne seče tekst. */
@property --hit{syntax:'<number>';inherits:true;initial-value:0}

.s-steps-sec{padding:clamp(72px,9vw,128px) 0;background:var(--bg2)}
.s-steps-sec .s-sec-head{display:block;margin-bottom:40px}
.s-steps-sec .s-sec-head h2{font-size:clamp(38px,5vw,72px);line-height:.95;font-weight:700;margin:0}
.s-steps-sec .s-sec-head p{max-width:600px;margin:20px 0 0;color:var(--txt-2);font-size:17px;line-height:1.55}
.s-steps-sec .s-muted{color:rgba(243,241,236,.62)}
.s-steps-sec .btn-kek{box-shadow:none}
.s-steps-sec .btn:hover{transform:none}

/* mreža: 12 kolona; korak 1 = 1–5 (red 1), korak 2 = 8–12 (red 2), korak 3 = 1–5 (red 3); kolone 6–7 = kanal putanje */
.s-steps{--hit:0;position:relative;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:32px;row-gap:clamp(48px,7vw,96px);margin-top:0}
.s-steps .path{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:0;overflow:visible;display:block}
/* app.js upisuje d u prvi <path> (u <defs>); oba <use> ga prate. Stil ide preko <use> (inherit), ne preko path-a. */
.s-steps .path path{fill:none;stroke:inherit;stroke-width:inherit;stroke-dasharray:inherit;stroke-dashoffset:inherit;opacity:1}
.s-steps .s-steps-line{stroke:var(--fultok)}
.s-steps .s-steps-reveal{stroke-dashoffset:calc(1 - var(--hit) / 3)}

.s-steps-item{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) 120px;column-gap:24px;align-items:start;grid-column:1/6;min-width:0}
.s-steps-item[data-n="1"]{grid-row:1}
.s-steps-item[data-n="2"]{grid-row:2;grid-column:8/13;grid-template-columns:120px minmax(0,1fr)}
.s-steps-item[data-n="3"]{grid-row:3}
.s-steps-item .s-steps-node{grid-column:2;grid-row:1}
.s-steps-item .s-steps-txt{grid-column:1;grid-row:1;text-align:right;justify-self:end}
.s-steps-item[data-n="2"] .s-steps-node{grid-column:1}
.s-steps-item[data-n="2"] .s-steps-txt{grid-column:2;text-align:left;justify-self:start}

/* čvor: veliki broj (siva kopija + žuta kopija preko nje), 16px krug .badge na ivici ka kanalu, labela ispod broja */
.s-steps-node{display:grid;grid-template-columns:minmax(0,1fr) 16px;column-gap:16px;row-gap:2px;align-items:center;justify-items:end}
.s-steps-node b{grid-column:1;grid-row:1;position:relative;font-family:var(--fd);font-weight:700;font-size:96px;line-height:1;color:var(--txt-3);font-variant-numeric:tabular-nums;letter-spacing:0}
.s-steps-node b::after{content:attr(data-n);position:absolute;inset:0;color:var(--fultok);opacity:var(--on,0)}
.s-steps-node .badge{grid-column:2;grid-row:1;display:block;width:16px;height:16px;border-radius:50%;border:2px solid var(--line-2);background:transparent;position:relative;box-shadow:none;margin-top:-4px}
.s-steps-node .badge::after{content:"";position:absolute;inset:-2px;border-radius:50%;background:var(--fultok);opacity:var(--on,0)}
.s-steps-node .s-steps-lbl{grid-column:1;grid-row:2;font-family:var(--fb);font-weight:500;font-size:14px;line-height:1.3;letter-spacing:0;text-transform:none;white-space:nowrap}
.s-steps-item[data-n="2"] .s-steps-node{grid-template-columns:16px minmax(0,1fr);justify-items:start}
.s-steps-item[data-n="2"] .s-steps-node b,.s-steps-item[data-n="2"] .s-steps-node .s-steps-lbl{grid-column:2}
.s-steps-item[data-n="2"] .s-steps-node .badge{grid-column:1}

.s-steps-txt{min-width:0}
.s-steps-txt h3{font-family:var(--fd);font-weight:500;font-size:clamp(22px,2.2vw,28px);line-height:1.1;text-transform:uppercase;margin:0 0 12px}
.s-steps-txt p{margin:0 0 20px;color:var(--txt-2);font-size:17px;line-height:1.55;max-width:44ch}
.s-steps-item .s-steps-txt p{margin-left:auto}
.s-steps-item[data-n="2"] .s-steps-txt p{margin-left:0}

/* pogodak čvora: 1 odmah (0–8% progresa), 2 na 50%, 3 na kraju */
.s-steps-item[data-n="1"] .s-steps-node{--on:clamp(0,var(--hit) * 4,1)}
.s-steps-item[data-n="2"] .s-steps-node{--on:clamp(0,(var(--hit) - 1.5) * 4,1)}
.s-steps-item[data-n="3"] .s-steps-node{--on:clamp(0,(var(--hit) - 2.75) * 4,1)}

/* (a) skrol-vezano: progres = skrol; maska otkriva isprekidanu liniju, nema „mravinjaka“ */
@supports (animation-timeline: view()){
  .s-steps{animation:s-hitcount linear both;animation-timeline:view();animation-range:entry 25% exit 20%}
  @keyframes s-hitcount{to{--hit:3}}
}
/* (b) fallback: IO daje .in korenu sekcije → --hit ide 0→3 kao tranzicija (registrovano svojstvo) */
@supports not (animation-timeline: view()){
  .s-steps{transition:--hit 1.8s linear}
  .s-steps-sec.in .s-steps{--hit:3}
}

@media (max-width:1000px){
  .s-steps{grid-template-columns:repeat(6,minmax(0,1fr));column-gap:20px}
  .s-steps-item{grid-column:1/4;grid-template-columns:minmax(0,1fr) 88px;column-gap:16px}
  .s-steps-item[data-n="2"]{grid-column:4/7;grid-template-columns:88px minmax(0,1fr)}
  .s-steps-node b{font-size:80px}
}
/* mobil: jedna kolona, čvor levo, statična isprekidana linija na x=8, čvorovi odmah žuti, bez SVG-a */
@media (max-width:699px){
  .s-steps{grid-template-columns:minmax(0,1fr);row-gap:40px;animation:none;transition:none;--hit:3}
  .s-steps .path{display:none}
  .s-steps-item,.s-steps-item[data-n="1"],.s-steps-item[data-n="2"],.s-steps-item[data-n="3"]{grid-column:auto;grid-row:auto;grid-template-columns:56px minmax(0,1fr);column-gap:16px}
  .s-steps-item .s-steps-node{grid-column:1;grid-template-columns:16px minmax(0,1fr);column-gap:8px;row-gap:0;justify-items:start;align-self:start}
  .s-steps-item .s-steps-node b{grid-column:2;font-size:56px}
  .s-steps-item .s-steps-node .badge{grid-column:1;margin-top:-2px}
  .s-steps-item .s-steps-node .s-steps-lbl{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .s-steps-item .s-steps-txt{grid-column:2;text-align:left;justify-self:start}
  .s-steps-item .s-steps-txt p{margin-left:0}
  .s-steps-item::before{content:"";position:absolute;left:7px;top:28px;bottom:-68px;border-left:2px dashed var(--line-2);z-index:0}
  .s-steps-item:last-child::before{display:none}
}
/* (c) reduced motion: sve iscrtano, sva tri čvora žuta, bez tranzicija */
@media (prefers-reduced-motion:reduce){
  .s-steps{animation:none;transition:none;--hit:3}
}

/* ==== 14-home-packages.css ==== */
/* home-packages v3 — slider paketa (druga sekcija home). Sekcija je scoped na .s-pk; kartica .s-pkc je DELJENA (makro pk_card_v3)
   pa su njeni stilovi globalni (csomagok/package je koriste u mreži). Motion je scoped na .s-pk i ne curi u mrežu. */
.s-pk{background:var(--bg2);padding:clamp(72px,9vw,128px) 0;overflow-x:hidden;overflow-x:clip}
/* sečenje trake ide na IVICU EKRANA, prva kartica ostaje na unutrašnjoj ivici .wrap-a:
   --s-pk-off = razmak od ivice ekrana do sadržaja .wrap-a; 100cqw (širina sekcije) umesto 100vw da scrollbar ne kvari račun */
.s-pk-view{--s-pk-off:var(--gut)}
@supports (width:1cqw){
  .s-pk{container-type:inline-size}
  .s-pk-view{--s-pk-off:max(var(--gut),calc((100cqw - var(--maxw))/2 + var(--gut)))}
}
.s-pk .s-sec-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;margin-bottom:40px}
.s-pk .s-h2{font:700 clamp(38px,5vw,72px)/.95 var(--fd);text-transform:uppercase;letter-spacing:.005em;margin:0}
.s-pk .s-h2-sub{display:block;font-weight:400;font-size:.5em;line-height:1.1;color:var(--txt-2);text-transform:none;letter-spacing:0;margin-top:.14em}
.s-pk-intro{font:400 clamp(22px,2vw,28px)/1.3 var(--fd);color:var(--txt-2);max-width:560px;margin:20px 0 0}
.s-pk-tools{display:flex;gap:12px;align-items:center;padding-bottom:6px}
.s-pk .s-link,.s-pkc .s-link{font:600 15px/1.3 var(--fb);color:var(--txt);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:2px;text-decoration-color:var(--fultok);transition:text-decoration-color .15s}
.s-pk .s-link:hover,.s-pkc .s-link:hover{text-decoration-color:var(--txt)}
.s-pk .s-muted,.s-pkc .s-muted{color:rgba(243,241,236,.62)}
.s-pk .btn,.s-pkc .btn{box-shadow:none}
.s-pk .btn:hover,.s-pkc .btn:hover{transform:none}

/* strelice: u toku, u redu sec-head-a */
.s-pk-arrows{display:flex;gap:8px;margin-left:8px}
.s-pk .arrows button{width:44px;height:44px;border-radius:50%;border:1px solid var(--line-2);background:transparent;color:var(--txt);cursor:pointer;display:grid;place-items:center;padding:0;transition:border-color .15s,background .15s}
.s-pk .arrows button:hover{border-color:var(--txt);background:rgba(255,255,255,.06)}
.s-pk .arrows .ic{width:20px;height:20px}
.s-pk .arrows .rot-l{transform:rotate(90deg)}
.s-pk .arrows .rot-r{transform:rotate(-90deg)}

/* traka: native scroll-snap, full-bleed do ivice EKRANA (ne .wrap-a), snap poravnat sa sadržajem .wrap-a */
.s-pk-slider .s-pk-track{display:flex;gap:20px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-padding:0 var(--s-pk-off);padding:8px var(--s-pk-off);margin:0 calc(-1*var(--s-pk-off));scrollbar-width:none;scroll-behavior:smooth;-webkit-overflow-scrolling:touch}
.s-pk-slider .s-pk-track::-webkit-scrollbar{display:none}
.s-pk-track>.s-pkc{flex:0 0 clamp(240px,22vw,300px);scroll-snap-align:start}

/* kartica (deljena) — bez okvira, senke i radiusa na kontejneru */
.s-pkc{display:flex;flex-direction:column;background:transparent;border:0;border-radius:0;box-shadow:none;color:var(--txt);min-width:0}
.s-pkc-cov{position:relative;display:block;aspect-ratio:3/4;max-width:400px;border-radius:4px;overflow:hidden;background:var(--bg3);text-decoration:none;color:#fff}
.s-pkc-img{width:100%;height:100%;object-fit:cover;object-position:50% 30%;filter:saturate(.8) contrast(1.05);display:block}
.s-pkc-cov::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,var(--bg3) 0%,var(--bg3) 9%,rgba(28,32,37,.72) 30%,transparent 60%);pointer-events:none}
.s-pkc-cov h3{position:absolute;left:0;right:0;bottom:0;z-index:1;margin:0;padding:16px;font:500 26px/1.05 var(--fd);text-transform:uppercase;letter-spacing:.01em;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.6)}
.s-pkc:hover .s-pkc-cov h3,.s-pkc-cov:focus-visible h3{text-decoration:underline;text-decoration-thickness:2px;text-decoration-color:var(--fultok);text-underline-offset:4px}
.s-pkc-body{padding:14px 0 0;display:flex;flex-direction:column;gap:6px;flex:1}
.s-pkc-body p{margin:0}
.s-pkc-meta{font:400 15px/1.4 var(--fb)}
.s-pkc-body .s-pkc-price{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-top:2px;font:400 14px/1.2 var(--fb);color:var(--txt-2)}
.s-pkc-price b{font:700 30px/1 var(--fd);font-variant-numeric:tabular-nums;letter-spacing:.005em;color:var(--txt);white-space:nowrap}
.s-pkc-per,.s-pkc-pre{font:400 14px/1 var(--fb);color:var(--txt-2)}
.s-pkc-eur{font:400 15px/1 var(--fb);color:var(--txt-2);white-space:nowrap}
.s-pkc-dep{font:400 14px/1.4 var(--fb)}
.s-pkc-body .s-pkc-act{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:auto;padding-top:8px}
.s-pkc .btn-sm{font-size:15px;padding:10px 18px}

/* Custom = plava „+“ pločica, isti 3:4 blok, bez klipart covera */
.s-pkc.is-custom .s-pkc-cov{background:var(--kek)}
.s-pkc.is-custom .s-pkc-cov::after{display:none}
.s-pkc-plus{position:absolute;inset:0;display:grid;place-items:center;padding-bottom:44px;font:700 120px/1 var(--fd);color:#fff}
.s-pkc.is-custom .s-pkc-cov h3{text-shadow:none}
.s-pkc.is-custom .s-pkc-meta{color:var(--txt-2)}

/* ispod slidera */
.s-pk-note{margin:24px 0 0;font:400 15px/1.5 var(--fb);color:var(--txt-2);max-width:72ch}
.s-pk-more{display:none}

@media (max-width:700px){
  .s-pk-tools{display:none}
  .s-pk-intro{margin-top:16px}
  .s-pk-track>.s-pkc{flex-basis:min(76vw,400px)}
  .s-pk-more{display:flex;width:100%;justify-content:center;margin-top:24px}
  .s-pk-note{margin-top:20px}
}

/* ===== MOTION (jedini momenat sekcije): kartice ulaze s desna, stagger po koloni, jednom =====
   (a) scroll-driven: vezano za ulazak .s-pk-view u viewport; (b) fallback: .s-io dobija .in (IO) + transition; (c) reduced-motion: krajnje stanje. */
@keyframes s-pk-in{from{opacity:0;transform:translateX(min(56px,8vw))}to{opacity:1;transform:none}}
@supports (animation-timeline: view()){
  .s-pk-view{view-timeline-name:--s-pk;view-timeline-axis:block}
  .s-pk-track>.s-pkc{animation:s-pk-in linear both;animation-timeline:--s-pk;animation-range:entry 6% entry 50%}
  .s-pk-track>.s-pkc:nth-child(2){animation-range:entry 11% entry 55%}
  .s-pk-track>.s-pkc:nth-child(3){animation-range:entry 16% entry 60%}
  .s-pk-track>.s-pkc:nth-child(4){animation-range:entry 21% entry 65%}
  .s-pk-track>.s-pkc:nth-child(5){animation-range:entry 26% entry 70%}
  .s-pk-track>.s-pkc:nth-child(n+6){animation-range:entry 31% entry 75%}
}
@supports not (animation-timeline: view()){
  .s-pk.s-io .s-pkc{opacity:0;transform:translateX(min(56px,8vw));transition:opacity var(--m-dur,.9s) var(--m-ease,cubic-bezier(.2,.7,.2,1)),transform var(--m-dur,.9s) var(--m-ease,cubic-bezier(.2,.7,.2,1))}
  .s-pk.s-io .s-pkc:nth-child(2){transition-delay:var(--m-stagger,70ms)}
  .s-pk.s-io .s-pkc:nth-child(3){transition-delay:calc(2*var(--m-stagger,70ms))}
  .s-pk.s-io .s-pkc:nth-child(4){transition-delay:calc(3*var(--m-stagger,70ms))}
  .s-pk.s-io .s-pkc:nth-child(5){transition-delay:calc(4*var(--m-stagger,70ms))}
  .s-pk.s-io .s-pkc:nth-child(n+6){transition-delay:calc(5*var(--m-stagger,70ms))}
  .s-pk.s-io.in .s-pkc{opacity:1;transform:none}
}
@media (prefers-reduced-motion:reduce){
  .s-pk .s-pkc{animation:none!important;transition:none!important;opacity:1!important;transform:none!important}
  .s-pk-slider .s-pk-track{scroll-behavior:auto}
}

/* ==== 15-home-gift.css ==== */
/* 15 — Home: vaučer (.s-gift) + deljeni partial gift-card (.s-gift-card, koristi i ajandekutalvany).
   Nema animacije: mesing i kartica miruju. Tranzicije samo hover/focus ≤.2s. Jedino mesto sa mesingom na home. */

/* ---- sekcija ---- */
.s-gift{background:var(--bg2);padding:clamp(72px,9vw,128px) 0}
.s-gift-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:48px;align-items:center}
.s-gift-txt{grid-column:1/6;min-width:0}
.s-gift .s-gift-card{grid-column:6/-1}

/* dvoredni naslov (scoped, radi i bez 01-base.css); drugi red Oswald 400 .62em u SOLID mesingu */
.s-gift .s-h2{font-family:var(--fd);font-weight:700;font-size:clamp(38px,5vw,72px);line-height:.95;letter-spacing:.005em;text-transform:uppercase;color:var(--txt);margin:0 0 24px}
.s-gift .s-h2-sub.s-gift-sub{display:block;font-family:var(--fd);font-weight:400;font-size:.62em;line-height:1.05;letter-spacing:0;text-transform:none;color:var(--rez);margin-top:.14em}

.s-gift-p{font-family:var(--fb);font-size:17px;line-height:1.55;color:var(--txt-2);margin:0 0 24px;max-width:46ch}
.s-gift-list{list-style:none;margin:0 0 32px;padding:0;display:grid;gap:12px}
.s-gift-list li{display:flex;align-items:flex-start;gap:12px;font-family:var(--fb);font-size:16px;line-height:1.5;color:var(--txt)}
.s-gift-list .ic{width:18px;height:18px;flex:0 0 18px;margin-top:3px;padding:0;background:none;border-radius:0;color:var(--rez)}

/* dugme: solid mesing, bez senke, bez strelice, hover = tamniji mesing (5,2:1 na #1a1206) */
.s-gift .btn-rez{background:var(--rez);color:#1a1206;box-shadow:none;filter:none;transition:background .2s}
.s-gift .btn-rez:hover{background:#ad7f3b;filter:none}
.s-gift .btn:hover{transform:none}
.s-gift .s-muted{color:rgba(243,241,236,.62)}
.s-gift-valid{font-family:var(--fb);font-size:14px;line-height:1.5;margin:16px 0 0}

/* ---- kartica: fotografija + overlay koji leži u perspektivi kartice ----
   Uglovi zlatnog ruba izmereni na hf/card.jpg (4:3 kadar, cover): TL 23,9/26,0  TR 77,1/35,7  BR 70,7/78,9  BL 12,1/64,5 %.
   Transformacija je rešena numerički da 4 ugla face-a legnu 2 % unutar ruba. perspective u cqw (figure je container)
   → isti oblik na svakoj širini; px vrednost ispod je fallback za browsere bez container jedinica (tačna na 773 px). */
.s-gift-card{position:relative;margin:0;width:100%;aspect-ratio:4/3;overflow:hidden;border-radius:4px;background:#1a1c1f;container-type:inline-size}
.s-gift-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 50%;display:block}
.s-gift-face{position:absolute;left:24.37%;top:26.47%;width:50.35%;height:43.14%;box-sizing:border-box;padding:4.5% 5%;
  display:flex;flex-direction:column;justify-content:space-between;transform-origin:0 0;
  transform:perspective(1323px) rotateX(36.38deg) rotateY(-7.44deg) rotateZ(14.78deg) skewX(-4.14deg);
  transform:perspective(171.1cqw) rotateX(36.38deg) rotateY(-7.44deg) rotateZ(14.78deg) skewX(-4.14deg);
  color:#d9b46a;font-family:var(--fb);text-align:left}
.s-gift-face-top{display:grid;gap:.3em}
.s-gift-t{display:block;font-family:var(--fd);font-weight:500;line-height:1;letter-spacing:.06em;color:#d9b46a;font-size:clamp(18px,2.2vw,32px);font-size:clamp(18px,4.2cqw,32px)}
.s-gift-s{display:block;line-height:1.3;color:rgba(217,180,106,.8);font-size:14px;font-size:clamp(12px,1.8cqw,14px)}
.s-gift-val{align-self:flex-end;font-family:var(--fd);font-weight:700;font-variant-numeric:tabular-nums;line-height:1;white-space:nowrap;color:#d9b46a;font-size:clamp(22px,2.6vw,36px);font-size:clamp(22px,4.6cqw,36px)}
.s-gift-face-bot{display:grid;gap:2px;max-width:60%;line-height:1.35;color:#d9b46a;font-size:13px;font-size:clamp(12px,1.7cqw,13px)}
.s-gift-name:empty{display:none}

/* ---- responsivno ---- */
@media(max-width:1000px){
  .s-gift-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:20px}
  .s-gift-txt{grid-column:1/4}
  .s-gift .s-gift-card{grid-column:4/-1}
}
@media(max-width:900px){
  .s-gift-grid{grid-template-columns:minmax(0,1fr);gap:32px}
  .s-gift-txt,.s-gift .s-gift-card{grid-column:auto}
  .s-gift .s-gift-card{order:-1}
}
@media(max-width:600px){
  .s-gift-grid{gap:28px}
  .s-gift-list{margin-bottom:28px}
}

/* ==== 16-home-strip.css ==== */
/* ===== HOME STRIP: 8 kadrova jednog popodneva =====
   bg --bg, bez teksture. Naslov u .wrap, traka full-bleed kao direktno dete sekcije
   (100% širine body-ja = bez scrollbara, pa je 100cqw tačna širina viewporta).
   Desktop ≥901 + @supports view(): tiha skrol-vezana vožnja ulevo (CSS, bez JS).
   Fallback / reduced-motion / ≤900: nativni horizontalni skrol sa snap-om. */

.s-strip{position:relative;background:var(--bg);padding:clamp(72px,9vw,128px) 0}
.s-strip .s-sec-head{margin-bottom:40px}
.s-strip-head{display:block;max-width:none}
.s-strip-head h2{font-size:clamp(38px,5vw,72px);line-height:.95;text-wrap:balance}
.s-strip-head p{font-family:var(--fb);font-weight:400;font-size:17px;line-height:1.55;color:var(--txt-2);max-width:56ch;margin:20px 0 0}

/* traka */
.s-strip-wrap{--h:clamp(280px,32vw,460px);position:relative;width:100%;overflow:clip;container-type:inline-size}
.s-strip-track{display:flex;gap:8px;height:var(--h);width:max-content;margin:0;padding:0;transform:translateX(0)}
.s-strip-f{flex:0 0 calc(var(--h) * var(--k,1.4));height:100%;margin:0;padding:0;overflow:hidden}
.s-strip-f picture{display:block;width:100%;height:100%}
.s-strip-f img{display:block;width:100%;height:100%;max-width:none;object-fit:cover;object-position:var(--pos,50% 50%)}
.s-strip .s-photo{filter:saturate(.9) contrast(1.04);opacity:1}

/* skriven scrollbar kad je traka nativni skroler (mobilni, fallback, reduced-motion) */
.s-strip-wrap::-webkit-scrollbar{display:none}

/* ≤900: traka 240px, prst/trackpad, bez animacije */
@media (max-width:900px){
  .s-strip-wrap{--h:240px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;-ms-overflow-style:none;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}
  .s-strip-f{scroll-snap-align:start}
  .s-strip-track{animation:none}
}

/* ≥901: skrol-vezano samo gde postoji view-timeline; inače nativni skrol */
@media (min-width:901px){
  @supports (animation-timeline: view()){
    /* timeline na samoj traci: kreće kad traka uđe odozdo (prvi kadar uz levu ivicu), završava kad izađe gore (poslednji uz desnu).
       overflow:clip (ne hidden) da wrap ne bude scroll container koji bi view() pogrešno uzeo za skroler. */
    .s-strip-wrap{view-timeline-name:--s-strip;view-timeline-axis:block}
    .s-strip-track{animation:s-strip linear both;animation-timeline:--s-strip;animation-range:entry 0% exit 100%}
    .s-strip.s-vis .s-strip-track{will-change:transform}
  }
  @supports not (animation-timeline: view()){
    .s-strip-wrap{overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;-ms-overflow-style:none;overscroll-behavior-x:contain}
    .s-strip-f{scroll-snap-align:start}
  }
}
@keyframes s-strip{
  from{transform:translateX(0)}
  to{transform:translateX(calc(100cqw - 100%))}
}

/* reduced motion: nema vožnje, traka je običan horizontalni skroler */
@media (prefers-reduced-motion:reduce){
  .s-strip-track{animation:none;transform:none;will-change:auto}
  .s-strip-wrap{overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;-ms-overflow-style:none;overscroll-behavior-x:contain}
  .s-strip-f{scroll-snap-align:start}
}

/* ==== 17-home-faq.css ==== */
/* ==== 17 HOME FAQ: ravna crvena traka sa betonom ====
   Traka je --piros-d (#b8231f), ne --piros: belo na #e5322d meri 4,35:1 (< 4,5), na #b8231f 5,6:1 (sa betonom ≈5,1).
   Odgovori su u punoj --txt (bez alpha): sa .95 su na svetlijim mrljama betona padali na 4,2:1, puna boja drži ≥4,5:1 i na p99. */
.s-faq{position:relative;isolation:isolate;background:var(--piros-d);color:var(--txt);padding:clamp(72px,9vw,128px) 0}
.s-faq.tex-strong::before{content:"";position:absolute;inset:0;z-index:-1;background:url(img/concrete.jpg) center/1400px repeat;opacity:.12;mix-blend-mode:screen;pointer-events:none}
.s-faq.tex-strong::after{content:"";position:absolute;inset:0;z-index:-1;background:url(img/noise.png) repeat;opacity:.06;pointer-events:none}
.s-faq .wrap{position:relative}

/* zaglavlje: h2 levo, link na sva pitanja desno */
.s-faq .s-sec-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px 32px;flex-wrap:wrap;margin-bottom:40px}
.s-faq .s-sec-head h2{font:700 clamp(38px,5vw,72px)/.95 var(--fd);text-transform:uppercase;letter-spacing:.005em;color:var(--txt);margin:0}
.s-faq .s-link{font:600 15px/1.3 var(--fb);color:var(--txt);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:2px;text-decoration-color:var(--txt);padding-bottom:.4em;transition:text-decoration-color .2s}
.s-faq .s-link:hover{text-decoration-color:var(--fultok)}

/* mreža: 2 kolone, 1 ispod 760 */
.s-faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px 48px;align-items:start}
.s-faq-group+.s-faq-group{margin-top:32px}
.s-faq-group h3{font:500 20px/1.2 var(--fd);text-transform:uppercase;letter-spacing:.02em;color:var(--txt);margin:0}

/* pitanje: bez okvira, samo linija ispod (crta se pri skrolu) */
.s-faq-q{position:relative;margin:0}
.s-faq-q::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:rgba(255,255,255,.35);transform-origin:0 50%}
.s-faq-q summary{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;cursor:pointer;list-style:none;padding:18px 0;font:500 20px/1.25 var(--fd);text-transform:none;letter-spacing:0;color:var(--txt)}
.s-faq-q summary::-webkit-details-marker{display:none}
.s-faq-q summary::marker{content:""}
.s-faq-q summary:hover span{text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}
.s-faq-q .s-faq-ic{width:18px;height:18px;flex:0 0 18px;margin-top:4px;stroke-width:2;transition:transform .2s var(--m-ease,cubic-bezier(.2,.7,.2,1))}
.s-faq-q[open] .s-faq-ic{transform:rotate(45deg)}
.s-faq-q p{margin:0;padding:0 0 20px;max-width:60ch;font:500 16px/1.55 var(--fb);color:var(--txt)}

/* ispod mreže */
.s-faq-p{margin:40px 0 0;font:400 15px/1.5 var(--fb);color:var(--txt)}
.s-faq-p a{font-weight:600;color:var(--txt);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:2px;text-decoration-color:var(--txt);transition:text-decoration-color .2s}
.s-faq-p a:hover{text-decoration-color:var(--fultok)}

@media(max-width:760px){
  .s-faq{padding:56px 0}
  .s-faq .s-sec-head{align-items:flex-start;flex-direction:column;gap:12px;margin-bottom:28px}
  .s-faq-grid{grid-template-columns:1fr;gap:24px}
  .s-faq-group+.s-faq-group{margin-top:24px}
  .s-faq-q summary{padding:14px 0}
  .s-faq-p{margin-top:28px}
}

/* MOTION (jedini, tihi, skrol-vezan): linije ispod pitanja se iscrtavaju s leva dok red ulazi u kadar.
   (a) CSS scroll-driven; (b) IO fallback kroz .s-faq-js + .in (17-home-faq.js); (c) reduced-motion = pune linije, bez animacije. */
@keyframes s-faq-rule{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@supports (animation-timeline: view()){
  .s-faq-q::after{animation:s-faq-rule linear both;animation-timeline:view();animation-range:cover 0% cover 16%}
}
@supports not (animation-timeline: view()){
  .s-faq.s-faq-js .s-faq-q::after{transform:scaleX(0);transition:transform var(--m-dur,.9s) var(--m-ease,cubic-bezier(.2,.7,.2,1));transition-delay:calc(var(--i,0)*var(--m-stagger,70ms))}
  .s-faq.s-faq-js.in .s-faq-q::after{transform:scaleX(1)}
}
@media(prefers-reduced-motion:reduce){
  .s-faq.s-faq-js .s-faq-q::after,.s-faq .s-faq-q::after{animation:none;transition:none;transform:none}
  .s-faq-q .s-faq-ic{transition:none}
}

/* ==== 20-rolunk.css ==== */
/* ===== RÓLUNK (rolunk) — v3: page-header photo-15, priča sa „2006“ outline + plavi fill na skrol, „Hogyan zajlik“ 3 faze, tim 4:5 =====
   Sve je scoped na .s-rolunk. Deljeni stilovi (.s-ph, .s-sec, .s-sec-head, .s-h2, .s-muted, .s-photo) su ovde
   ponovljeni scoped, da strana radi i pre nego što 01-base.css stigne; kad stigne, pravila su identična.
   Motion runtime je iz 01-base.js: .s-about je .s-io koren → dobija .in (once) i .s-vis (dok je u viewportu). Nema svog JS-a. */
.s-rolunk{--m-ease:cubic-bezier(.2,.7,.2,1)}
.s-rolunk .s-sec{padding:clamp(72px,9vw,128px) 0}
.s-rolunk .s-sec-head{margin-bottom:40px}
.s-rolunk .s-sec-head p{margin:12px 0 0;font-size:17px;line-height:1.55;color:var(--txt-2);max-width:56ch}
.s-rolunk h2{font-size:clamp(38px,5vw,72px);line-height:.95;font-weight:700}
.s-rolunk h3{font-size:24px;line-height:1.1;font-weight:500}
.s-rolunk .s-h2-sub{display:block;font-weight:400;font-size:.5em;line-height:1.1;color:var(--txt-2);text-transform:none;letter-spacing:0;margin-top:.14em}
.s-rolunk .s-muted{color:rgba(243,241,236,.62)}
.s-rolunk .s-photo{filter:saturate(.9) contrast(1.04)}

/* page header: full-bleed fotka, opacity 1, donji gradijent, h1 dole levo */
.s-rolunk .s-ph{position:relative;height:clamp(420px,52vw,720px);display:flex;align-items:flex-end;overflow:hidden;background:var(--bg)}
.s-rolunk .s-ph>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:var(--pos,50% 50%);opacity:1}
.s-rolunk .s-ph::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(15,17,20,.95) 0%,rgba(15,17,20,.55) 30%,transparent 55%);pointer-events:none}
.s-rolunk .s-ph .wrap{position:relative;z-index:1;width:100%;padding-bottom:40px}
.s-rolunk .s-ph h1{font-size:clamp(48px,6.5vw,104px);line-height:.92;max-width:22ch}

/* priča + 2006 */
.s-rolunk .s-about{background:var(--bg)}
.s-rolunk .s-about-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:32px;align-items:start}
.s-rolunk .s-about-txt{grid-column:1/7}
.s-rolunk .s-about-txt p{font-size:17px;line-height:1.55;color:var(--txt-2);max-width:62ch;margin:0 0 1em}
.s-rolunk .s-about-txt p:last-child{margin-bottom:0}
.s-rolunk .s-about-txt .s-about-lead{font-family:var(--fd);font-weight:400;font-size:clamp(22px,2vw,28px);line-height:1.3;color:var(--txt);margin-bottom:28px}
.s-rolunk .s-about-yr{grid-column:7/-1;text-align:right;container-type:inline-size}
.s-rolunk .s-about-year{position:relative;display:block;font-family:var(--fd);font-weight:700;font-variant-numeric:tabular-nums;font-size:min(clamp(160px,22vw,320px),46cqw);line-height:.85;letter-spacing:-.03em;text-transform:none}
.s-rolunk .s-about-outline{display:block;color:transparent;-webkit-text-stroke:2px var(--txt-2)}
.s-rolunk .s-about-fill{position:absolute;inset:0;display:block;color:var(--kek);-webkit-text-stroke:2px var(--kek);clip-path:inset(calc(100% + .2em) 0 -.2em 0);pointer-events:none}
.s-rolunk .s-about.s-vis .s-about-fill{will-change:clip-path}
.s-rolunk .s-about-since{display:block;font-size:16px;line-height:1.4;margin-top:8px;text-transform:lowercase}

/* jedan tihi skrol-vezani momenat: plava se nalije odozdo dok „2006“ ulazi u viewport */
@keyframes s-year{to{clip-path:inset(-.2em 0 -.2em 0)}}
@supports (animation-timeline: view()){
  .s-rolunk .s-about-fill{animation:s-year linear both;animation-timeline:view();animation-range:entry 0% cover 45%}
}
@supports not (animation-timeline: view()){
  .s-rolunk .s-about-fill{transition:clip-path 1.2s var(--m-ease)}
  .s-rolunk .s-about.in .s-about-fill{clip-path:inset(-.2em 0 -.2em 0)}
}
@media (prefers-reduced-motion:reduce){
  .s-rolunk .s-about-fill{animation:none;transition:none;clip-path:inset(-.2em 0 -.2em 0)}
}

/* hogyan zajlik: 3 numerisane faze */
.s-rolunk .s-about-how{background:var(--bg2)}
.s-rolunk .s-about-how-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
.s-rolunk .s-about-step{display:flex;flex-direction:column;margin:0;padding:0}
.s-rolunk .s-about-step>b{display:block;font-family:var(--fd);font-weight:700;font-variant-numeric:tabular-nums;font-size:48px;line-height:1;color:var(--fultok);margin-bottom:16px}
.s-rolunk .s-about-step>img{width:100%;aspect-ratio:4/3;height:auto;object-fit:cover;object-position:var(--pos,50% 50%);border-radius:4px}
.s-rolunk .s-about-step h3{margin:20px 0 8px}
.s-rolunk .s-about-step p{margin:0;font-size:16px;line-height:1.55;color:var(--txt-2)}

/* tim: 4:5 portreti bez brush-a */
.s-rolunk .s-team{background:var(--bg)}
.s-rolunk .s-team-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
.s-rolunk .s-team-m{margin:0}
.s-rolunk .s-team-m img{width:100%;aspect-ratio:4/5;height:auto;object-fit:cover;object-position:50% 20%;border-radius:4px}
.s-rolunk .s-team-m figcaption{margin-top:14px}
.s-rolunk .s-team-m b{display:block;font-family:var(--fd);font-weight:500;font-size:24px;line-height:1.1;text-transform:uppercase;letter-spacing:.01em}
.s-rolunk .s-team-m span{display:block;font-size:15px;line-height:1.4;margin-top:4px}

/* tablet: 6 kolona, gap 20 */
@media (max-width:1000px){
  .s-rolunk .s-about-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:20px}
  .s-rolunk .s-about-txt{grid-column:1/-1}
  .s-rolunk .s-about-yr{grid-column:1/-1;order:-1;text-align:left;margin-bottom:24px}
  .s-rolunk .s-about-year{font-size:clamp(160px,22vw,320px)}
  .s-rolunk .s-about-how-list,.s-rolunk .s-team-grid{gap:20px}
}
/* mobil: faze kao numerisana lista sa sličicom levo; tim 2 kolone */
@media (max-width:700px){
  .s-rolunk h2{line-height:1.2;text-wrap:balance} /* verzal + mađarski akcenti (Ö/É/Ő/Ű) u drugom redu: akcenti su ~.25em iznad verzala, pri .95–1.15 dodiruju prvi red; 1.2 = ~4px vazduha */
  .s-rolunk .s-ph{height:clamp(300px,64vw,720px)}
  .s-rolunk .s-about-how-list{grid-template-columns:1fr;gap:28px}
  .s-rolunk .s-about-step{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);grid-template-rows:auto 1fr;gap:0 16px;align-items:start}
  .s-rolunk .s-about-step>b{grid-column:2;grid-row:1;font-size:32px;margin-bottom:6px}
  .s-rolunk .s-about-step>img{grid-column:1;grid-row:1/3;aspect-ratio:auto;height:100%;min-height:150px}
  .s-rolunk .s-about-step-txt{grid-column:2;grid-row:2}
  .s-rolunk .s-about-step h3{margin:0 0 6px;font-size:22px}
  .s-rolunk .s-about-step p{font-size:15px}
  .s-rolunk .s-team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .s-rolunk .s-team-m b{font-size:20px}
}
@media (max-width:600px){
  .s-rolunk .s-about-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
  .s-rolunk .s-about-how-list,.s-rolunk .s-team-grid{gap:16px}
  .s-rolunk .s-about-how-list{gap:24px}
}

/* na ovoj strani recenzije dolaze posle tima (--bg), pa idu na --bg2 da se pozadine smenjuju */
.s-rolunk .s-rev{background:var(--bg2)}

/* ==== 21-csomagok.css ==== */
/* csomagok v3 — strana svih paketa. Sve scoped na .s-csomagok. Kartica .s-pkc dolazi iz 14-home-packages.css (deljeni makro).
   Deljeni stilovi (.s-ph, .s-sec, .s-h2, .s-h2-sub, .s-muted, .s-photo, motion tokeni) su ovde scoped dok ih 01-base.css ne preuzme. */
.s-csomagok{--m-ease:cubic-bezier(.2,.7,.2,1);--m-dur:.9s;--m-stagger:70ms}
.s-csomagok .s-sec{padding:clamp(72px,9vw,128px) 0}
.s-csomagok .s-h2{font:700 clamp(38px,5vw,72px)/.95 var(--fd);text-transform:uppercase;letter-spacing:.005em;color:var(--txt);margin:0}
.s-csomagok .s-h2-sub{display:block;font-weight:400;font-size:.5em;line-height:1.1;color:var(--txt-2);text-transform:none;letter-spacing:0;margin-top:.14em}
.s-csomagok .s-muted{color:rgba(243,241,236,.62)}
.s-csomagok .s-photo{filter:saturate(.9) contrast(1.04);opacity:1}
.s-csomagok .btn{box-shadow:none}
.s-csomagok .btn:hover{transform:none}
.s-csomagok .btn .ic{width:18px;height:18px}

/* ===== page-header: full-bleed fotka, h1 dole levo ===== */
.s-csomagok .s-ph{position:relative;height:clamp(360px,42vw,560px);display:flex;align-items:flex-end;overflow:hidden;background:var(--bg)}
.s-csomagok .s-ph>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:var(--pos,50% 50%)}
.s-csomagok .s-ph::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(15,17,20,.95) 0%,rgba(15,17,20,.55) 30%,transparent 55%);pointer-events:none}
.s-csomagok .s-ph .wrap{position:relative;z-index:1;width:100%;padding-bottom:40px}
.s-csomagok .s-ph h1{font-size:clamp(48px,6.5vw,104px);line-height:.92;max-width:none}

/* ===== sticky filter red ===== */
.s-csomagok .s-pkf{position:sticky;top:var(--s-hdr,76px);z-index:5;background:var(--bg);border-bottom:1px solid var(--line);padding:12px 0}
.s-csomagok .s-pkf .wrap{position:relative}
.s-csomagok .s-pkf-row{display:flex;gap:8px;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-webkit-overflow-scrolling:touch;margin:0 calc(-1*var(--gut));padding:2px var(--gut);scroll-padding:0 var(--gut)}
.s-csomagok .s-pkf-row::-webkit-scrollbar{display:none}
.s-csomagok .s-chip{flex:0 0 auto;font:500 15px/1 var(--fb);letter-spacing:0;color:var(--txt);background:transparent;border:1px solid var(--line-2);border-radius:999px;padding:11px 16px;cursor:pointer;white-space:nowrap;transition:background .15s,color .15s,border-color .15s}
.s-csomagok .s-chip:hover{border-color:var(--txt)}
.s-csomagok .s-chip[aria-pressed="true"]{background:var(--txt);color:var(--ink);border-color:var(--txt)}
.s-csomagok .s-chip:focus-visible{outline:3px solid var(--fultok);outline-offset:2px}
.s-csomagok .s-pkf-live{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}

/* ===== mreža ===== */
.s-csomagok .s-pkgrid{background:var(--bg);padding-top:clamp(40px,5vw,64px)}
.s-csomagok .s-pkg{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:36px 28px}
.s-csomagok .s-pkg>.s-pkc{width:100%;max-width:400px}
.s-csomagok .s-pkg>.s-pkc[hidden]{display:none}
.s-csomagok .s-pkg-note{margin:40px 0 0;font:400 15px/1.5 var(--fb);color:var(--txt-2);max-width:72ch}
@media (max-width:1199px){.s-csomagok .s-pkg{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:899px){.s-csomagok .s-pkg{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 20px}}
@media (max-width:519px){.s-csomagok .s-pkg{grid-template-columns:minmax(0,1fr);gap:36px}}

/* ===== plava Custom traka: „+“ + tekst levo, JEDNO oružje desno u multiply (bela pozadina nestaje na plavoj) ===== */
.s-csomagok .s-custom{background:var(--kek);color:#fff;padding:clamp(56px,7vw,96px) 0;overflow:hidden}
.s-csomagok .s-custom .wrap{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:32px;align-items:center}
.s-csomagok .s-custom-txt{grid-column:1/8}
.s-csomagok .s-custom-plus{display:block;font:700 160px/.8 var(--fd);color:#fff;margin:0 0 8px -4px}
.s-csomagok .s-custom h2{font:700 clamp(38px,5vw,72px)/.95 var(--fd);text-transform:uppercase;letter-spacing:.005em;color:#fff;margin:0 0 20px}
.s-csomagok .s-custom p{font:400 17px/1.55 var(--fb);color:#fff;max-width:56ch;margin:0 0 28px}
.s-csomagok .s-custom-acts{display:flex;flex-wrap:wrap;gap:12px}
.s-csomagok .s-custom .btn-ghost{background:transparent;border-color:rgba(255,255,255,.6);color:#fff;backdrop-filter:none}
.s-csomagok .s-custom .btn-ghost:hover{background:transparent;border-color:#fff}
.s-csomagok .s-custom .btn-white:hover{background:var(--paper)}
.s-csomagok .s-custom-gun{grid-column:8/13;display:flex;justify-content:flex-end}
.s-csomagok .s-custom-gun-img{display:block;width:100%;max-width:100%;height:auto;mix-blend-mode:multiply;filter:grayscale(1) contrast(1.05);border-radius:0}
@media (max-width:1000px){
  .s-csomagok .s-custom .wrap{gap:20px}
  .s-csomagok .s-custom-txt{grid-column:1/8}
  .s-csomagok .s-custom-gun{grid-column:8/13}
}
@media (max-width:760px){
  .s-csomagok .s-custom .wrap{display:block}
  .s-csomagok .s-custom-gun{display:none}
  .s-csomagok .s-custom-plus{font-size:120px}
}

/* ===== žuta CTA traka: --ink tekst, tamno dugme, bez oružja ===== */
.s-csomagok .s-pkcta{background:var(--fultok);color:var(--ink);padding:64px 0}
.s-csomagok .s-pkcta .wrap{display:flex;justify-content:space-between;align-items:center;gap:24px 40px;flex-wrap:wrap}
.s-csomagok .s-pkcta .s-h2{color:var(--ink)}
.s-csomagok .s-pkcta .s-h2-sub{color:var(--ink)}
.s-csomagok .s-pkcta-btn{background:var(--ink);color:#fff;flex:0 0 auto}
.s-csomagok .s-pkcta-btn:hover{background:#2b3038}
.s-csomagok .s-pkcta-btn:focus-visible{outline-color:var(--ink)}

/* ===== MOTION (jedini momenat strane): AK klizi s desna dok plava traka ulazi u viewport =====
   (a) scroll-driven view() na traci; (b) fallback: .s-custom.s-io dobija .in (IO .25 / -10%, jednom) + transition;
   (c) reduced-motion: krajnje stanje. will-change samo dok je traka u viewportu (.s-vis). Animira se samo transform/opacity. */
@keyframes s-custom-gun-in{from{opacity:0;transform:translateX(min(200px,16vw))}to{opacity:1;transform:none}}
@supports (animation-timeline: view()){
  .s-csomagok .s-custom{view-timeline-name:--s-custom;view-timeline-axis:block}
  .s-csomagok .s-custom-gun-img{animation:s-custom-gun-in var(--m-ease,cubic-bezier(.2,.7,.2,1)) both;animation-timeline:--s-custom;animation-range:entry 0% entry 100%}
}
@supports not (animation-timeline: view()){
  .s-csomagok .s-custom.s-io .s-custom-gun-img{opacity:0;transform:translateX(min(200px,16vw));transition:opacity var(--m-dur,.9s) var(--m-ease,cubic-bezier(.2,.7,.2,1)),transform var(--m-dur,.9s) var(--m-ease,cubic-bezier(.2,.7,.2,1))}
  .s-csomagok .s-custom.s-io.in .s-custom-gun-img{opacity:1;transform:none}
}
.s-csomagok .s-custom.s-vis .s-custom-gun-img{will-change:transform,opacity}
@media (prefers-reduced-motion:reduce){
  .s-csomagok .s-custom-gun-img{animation:none!important;transition:none!important;opacity:1!important;transform:none!important;will-change:auto!important}
}

/* ==== 22-package.css ==== */
/* ===== PACKAGE (detalj paketa, šablon ×13) — v3 =====
   hero split: sticky cover ≤400px + tipografske činjenice | oružje na belim pločicama | slider ostalih | mobilni sticky bar
   Sve je scoped na .s-pd*, deljene klase (.s-sec, .s-h2-sub, .s-muted, .s-link, .s-tile) su ponovljene scoped
   da strana radi i bez 01-base.css; kad stigne, pravila su identična.
   MOTION (odobreno): jedini momenat na strani = pločice oružja se slažu na klupu dok se skroluje. Ostalo nula. */

.s-pd,.s-pd-guns,.s-pd-more{--m-ease:cubic-bezier(.2,.7,.2,1);--m-dur:.9s;--m-stagger:70ms}
.s-pd.s-sec,.s-pd-guns.s-sec,.s-pd-more.s-sec{padding:clamp(72px,9vw,128px) 0;position:relative}
.s-pd .s-muted,.s-pd-guns .s-muted,.s-pd-more .s-muted{color:rgba(243,241,236,.62)}
.s-pd .s-link,.s-pd-more .s-link{font:600 15px/1.3 var(--fb);color:var(--txt);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:2px;text-decoration-color:var(--fultok);transition:text-decoration-color .15s}
.s-pd .s-link:hover,.s-pd-more .s-link:hover{text-decoration-color:var(--txt)}
.s-pd .btn,.s-pd-bar .btn,.s-pd-more .btn{box-shadow:none}
.s-pd .btn:hover,.s-pd-bar .btn:hover,.s-pd-more .btn:hover{transform:none}

/* ---------- 1) HERO SPLIT ---------- */
.s-pd{background:var(--bg)}
.s-pd-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:48px;align-items:start}
.s-pd-cov{grid-column:1/6;margin:0;position:relative;width:100%;max-width:400px;aspect-ratio:3/4;border-radius:4px;overflow:hidden;background:var(--bg3)}
.s-pd-cov img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 30%;filter:saturate(.8) contrast(1.05)}
.s-pd-cov::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,var(--bg3) 0%,rgba(28,32,37,.6) 30%,transparent 60%);pointer-events:none}
.s-pd-cov .s-pd-plus{position:absolute;inset:0;display:grid;place-items:center;font:700 160px/1 var(--fd);color:#fff;background:var(--kek)}
.s-pd-cov:has(.s-pd-plus)::after{display:none}
.s-pd-body{grid-column:6/-1;min-width:0}

.s-pd h1{font:700 clamp(48px,6vw,96px)/.92 var(--fd);text-transform:uppercase;letter-spacing:.005em;margin:0;text-wrap:balance}
.s-pd h1 .s-h2-sub{display:block;font-weight:400;font-size:.5em;line-height:1.15;color:var(--txt-2);margin-top:.15em;text-transform:none;letter-spacing:0;text-wrap:balance}

.s-pd-price{display:flex;align-items:baseline;flex-wrap:wrap;gap:0 14px;margin:32px 0 0;font-family:var(--fb);color:var(--txt-2)}
.s-pd-price b{font:700 56px/1 var(--fd);font-variant-numeric:tabular-nums;letter-spacing:.005em;color:var(--txt);white-space:nowrap}
.s-pd-price .s-pd-pre{font:400 .5em/1 var(--fb);color:var(--txt-2);letter-spacing:0}
.s-pd-price .s-pd-per{font:400 16px/1.2 var(--fb)}
.s-pd-price .s-pd-eur{font:400 18px/1.2 var(--fb);margin-left:6px}

.s-pd-facts{list-style:none;margin:32px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.s-pd-facts li{border-left:1px solid var(--line);padding:2px 20px 4px;min-width:0}
.s-pd-facts b{display:block;font:700 40px/1 var(--fd);font-variant-numeric:tabular-nums;letter-spacing:.005em;color:var(--txt);white-space:nowrap}
.s-pd-facts span{display:block;margin-top:8px;font:400 14px/1.35 var(--fb)}

.s-pd-desc{margin:32px 0 0;font:400 17px/1.55 var(--fb);color:var(--txt-2);max-width:62ch}
.s-pd-inc-h{margin:32px 0 16px;font:500 clamp(22px,2.2vw,28px)/1.1 var(--fd);text-transform:uppercase;letter-spacing:.005em}
.s-pd-inc{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;max-width:62ch}
.s-pd-inc li{display:flex;align-items:flex-start;gap:12px;font:400 17px/1.45 var(--fb);color:var(--txt)}
.s-pd-inc .ic{flex:0 0 20px;width:20px;height:20px;margin-top:3px;color:var(--fultok)}
.s-pd-vat{margin:24px 0 0;font:400 14px/1.4 var(--fb)}
.s-pd-acts{display:flex;align-items:center;flex-wrap:wrap;gap:16px 28px;margin-top:28px}
.s-pd-acts .btn .ic{width:18px;height:18px}

@media (min-width:1001px){
  .s-pd-cov{position:sticky;top:96px}
}
@media (max-width:1000px){
  .s-pd-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:40px 20px}
  .s-pd-cov{grid-column:1/-1;max-width:320px}
  .s-pd-body{grid-column:1/-1}
  .s-pd h1{font-size:clamp(48px,7.5vw,80px)}
}
@media (max-width:600px){
  .s-pd-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:32px 16px}
  .s-pd-cov{max-width:280px}
  .s-pd h1{font-size:clamp(44px,11vw,56px)}
  .s-pd-price{margin-top:24px}
  .s-pd-price b{font-size:44px}
  .s-pd-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 16px;margin-top:28px}
  .s-pd-facts li{padding:0 14px 2px}
  .s-pd-facts b{font-size:32px}
  .s-pd-desc,.s-pd-inc-h{margin-top:28px}
  .s-pd-acts{margin-top:24px}
  .s-pd-acts .btn{width:100%;justify-content:center}
}

/* ---------- 2) ORUŽJE NA BELIM PLOČICAMA ---------- */
.s-pd-guns{background:var(--bg2)}
.s-pd-guns .s-sec-head{margin-bottom:40px}
.s-pd-guns h2{font:700 clamp(38px,5vw,72px)/.95 var(--fd);text-transform:uppercase;letter-spacing:.005em;margin:0}
.s-pd-guns-head p{margin:12px 0 0;font:400 15px/1.4 var(--fb)}
.s-pd-gun-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:32px 20px}
.s-pd-gun{min-width:0}
.s-pd-guns .s-tile{background:#fff;aspect-ratio:4/3;padding:12px;border-radius:4px;display:grid;place-items:center;overflow:hidden}
.s-pd-guns .s-tile img{display:block;width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}
.s-pd-gun-n{margin:12px 0 0;font:500 18px/1.15 var(--fd);text-transform:uppercase;letter-spacing:.005em;color:var(--txt)}
.s-pd-gun-m{margin:4px 0 0;font:400 14px/1.4 var(--fb);font-variant-numeric:tabular-nums}
@media (max-width:1199px){.s-pd-gun-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (max-width:799px){.s-pd-gun-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 16px}}
@media (max-width:479px){.s-pd-gun-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* MOTION — pločice se slažu na klupu, jednom, dok ulaze u viewport (samo opacity + transform)
   (a) scroll-driven: svaka pločica prati SOPSTVENI ulazak (view()), kolona daje stagger
   (b) fallback: 22-package.js daje .in po pločici (IO .2, jednom); --d = kolona → transition-delay
   (c) reduced-motion: krajnje stanje */
@keyframes s-pd-tile{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}
@supports (animation-timeline: view()){
  .s-pd-gun{animation:s-pd-tile linear both;animation-timeline:view();animation-range:entry 0% entry 55%}
  .s-pd-gun:nth-child(6n+2){animation-range:entry 6% entry 61%}
  .s-pd-gun:nth-child(6n+3){animation-range:entry 12% entry 67%}
  .s-pd-gun:nth-child(6n+4){animation-range:entry 18% entry 73%}
  .s-pd-gun:nth-child(6n+5){animation-range:entry 24% entry 79%}
  .s-pd-gun:nth-child(6n+6){animation-range:entry 30% entry 85%}
}
@supports not (animation-timeline: view()){
  .s-pd-guns.s-io .s-pd-gun{opacity:0;transform:translateY(28px);transition:opacity var(--m-dur) var(--m-ease),transform var(--m-dur) var(--m-ease);transition-delay:calc(var(--d,0)*var(--m-stagger))}
  .s-pd-guns.s-io .s-pd-gun.in{opacity:1;transform:none}
}
@media (prefers-reduced-motion:reduce){
  .s-pd-gun{animation:none!important;transition:none!important;opacity:1!important;transform:none!important}
}

/* ---------- 3) TOVÁBBI CSOMAGOK (slider, isti obrazac kao home, scoped) ---------- */
.s-pd-more{background:var(--bg)}
.s-pd-more.is-alt{background:var(--bg2)}
.s-pd-more .s-sec-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;margin-bottom:40px}
.s-pd-more h2{font:700 clamp(38px,5vw,72px)/.95 var(--fd);text-transform:uppercase;letter-spacing:.005em;margin:0}
.s-pd-tools{display:flex;gap:12px;align-items:center;padding-bottom:6px}
.s-pd-arrows{display:flex;gap:8px;margin-left:8px}
.s-pd-more .arrows button{width:44px;height:44px;border-radius:50%;border:1px solid var(--line-2);background:transparent;color:var(--txt);cursor:pointer;display:grid;place-items:center;padding:0;transition:border-color .15s,background .15s}
.s-pd-more .arrows button:hover{border-color:var(--txt);background:rgba(255,255,255,.06)}
.s-pd-more .arrows .ic{width:20px;height:20px}
.s-pd-more .arrows .rot-l{transform:rotate(90deg)}
.s-pd-more .arrows .rot-r{transform:rotate(-90deg)}
.s-pd-slider .s-pd-track{display:flex;gap:20px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-padding:0 var(--gut);padding:8px var(--gut) 8px;margin:0 calc(-1*var(--gut));scrollbar-width:none;scroll-behavior:smooth;-webkit-overflow-scrolling:touch}
.s-pd-slider .s-pd-track::-webkit-scrollbar{display:none}
.s-pd-track>.s-pkc{flex:0 0 clamp(240px,22vw,300px);scroll-snap-align:start;opacity:1;transform:none;animation:none}
@media (max-width:700px){
  .s-pd-arrows{display:none}
  .s-pd-tools{padding-bottom:0}
  .s-pd-track>.s-pkc{flex-basis:min(76vw,400px)}
}
@media (prefers-reduced-motion:reduce){.s-pd-slider .s-pd-track{scroll-behavior:auto}}

/* ---------- 5) MOBILNI STICKY BAR (≤800) ---------- */
.s-pd-bar{display:none}
body[data-page^="pk-"] .s-base-stickycta{display:none}
body[data-page^="pk-"].s-base-has-cta{padding-bottom:0}
@media (max-width:800px){
  .s-pd-bar{position:fixed;left:0;right:0;bottom:0;z-index:45;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px var(--gut) calc(10px + env(safe-area-inset-bottom));background:var(--bg3);border-top:1px solid var(--line);box-shadow:none;transform:translateY(100%);transition:transform .2s var(--m-ease);will-change:transform}
  .s-pd-bar.show{transform:none}
  .s-pd-bar-price{font:500 22px/1 var(--fd);font-variant-numeric:tabular-nums;letter-spacing:.005em;color:var(--txt);white-space:nowrap;min-width:0;overflow:hidden;text-overflow:ellipsis}
  .s-pd-bar-price .s-pd-per{font:400 14px/1 var(--fb);color:var(--txt-2)}
  .s-pd-bar-price .s-pd-pre{font:400 14px/1 var(--fb);color:var(--txt-2)}
  .s-pd-bar .btn{flex:0 0 auto;font-size:16px;padding:11px 20px}
  body.menu-open .s-pd-bar{display:none}
  body[data-page^="pk-"].s-base-has-cta{padding-bottom:calc(62px + env(safe-area-inset-bottom))}
}
@media (prefers-reduced-motion:reduce){.s-pd-bar{transition:none}}

/* ==== 23-fegyvertar.css ==== */
/* ===== FEGYVERTÁR (fegyvertar) — v3: flatlay header, sticky pretraga + 9 čipova, otvorene sekcije na belim pločicama, cena kategorije jednom =====
   Prefiks .s-arm-. Deljeni stilovi iz 01-base (.s-ph, .s-h2-sub, .s-chip, .s-tile, .s-muted) su ovde ponovljeni scoped na koren strane,
   da strana radi i bez njih; kad 01-base stigne, pravila su identična.
   app.js hook-ovi koji ostaju: #arm-q (.arm-search), #arm-cnt, .arm-sec, .inv li[data-n], .tabs a[href^="#"].
   Motion: jedan tihi skrol-vezani momenat (flatlay klizi dok header izlazi, samo transform); ostalo nula animacije. */

/* ---------- page header: flatlay ---------- */
.s-arm-ph{position:relative;height:clamp(360px,42vw,560px);overflow:clip;background:#000}
.s-arm-ph>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:var(--pos,50% 50%);opacity:1;filter:saturate(.9) contrast(1.04)}
.s-arm-ph::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(15,17,20,.9) 0%,rgba(15,17,20,.5) 28%,transparent 55%);pointer-events:none}
.s-arm-ph::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(to top,rgba(15,17,20,.95) 0%,rgba(15,17,20,.55) 30%,transparent 55%);pointer-events:none}
.s-arm-ph .s-ph-in{position:absolute;left:0;right:0;bottom:0;z-index:2;padding-bottom:40px}
.s-arm-ph h1{font-size:clamp(48px,6.5vw,104px);line-height:.92;max-width:22ch}
.s-arm-ph h1 .s-h2-sub{display:block;font-weight:400;font-size:.5em;line-height:1.15;color:var(--txt-2);margin-top:.15em;text-transform:none;letter-spacing:0}
.s-arm-lead{font-family:var(--fb);font-weight:400;font-size:17px;line-height:1.55;color:var(--txt-2);max-width:56ch;margin:20px 0 0}
/* tihi skrol-vezani momenat: slika klizi sporije od strane dok header izlazi (samo transform) */
@supports (animation-timeline: view()){
  .s-arm-ph>img{transform:scale(1.12) translateY(0);animation:s-arm-plx linear both;animation-timeline:view();animation-range:exit 0% exit 100%}
  .s-arm-ph.s-vis>img{will-change:transform}
  @keyframes s-arm-plx{from{transform:scale(1.12) translateY(0)}to{transform:scale(1.12) translateY(10%)}}
}
@media (prefers-reduced-motion:reduce){.s-arm-ph>img{animation:none;transform:none;will-change:auto}}

/* ---------- sticky traka: pretraga + broj + čipovi ---------- */
.s-arm-bar{position:sticky;top:62px;z-index:5;background:var(--bg);border-bottom:1px solid var(--line);padding:12px 0}
.s-arm-bar .wrap{display:flex;align-items:center;gap:16px}
.s-arm-search{position:relative;display:block;flex:0 0 auto;width:300px;min-width:260px}
.s-arm-search .ic{position:absolute;left:12px;top:50%;width:18px;height:18px;transform:translateY(-50%);color:var(--txt-2);pointer-events:none}
.s-arm-search input{width:100%;height:44px;margin:0;padding:0 14px 0 40px;font:500 15px/1.2 var(--fb);color:var(--txt);background:var(--bg3);border:1px solid var(--line-2);border-radius:4px;-webkit-appearance:none;appearance:none;transition:border-color .15s}
.s-arm-search input::placeholder{color:rgba(243,241,236,.62);opacity:1}
.s-arm-search input:hover{border-color:var(--txt)}
.s-arm-search input:focus{border-color:var(--fultok)}
.s-arm-search input::-webkit-search-decoration{-webkit-appearance:none}
.s-arm-res{flex:0 0 auto;font-family:var(--fb);font-weight:400;font-size:14px;line-height:1.2;white-space:nowrap;font-variant-numeric:tabular-nums;color:rgba(243,241,236,.62)}
.s-arm-res b{font-weight:600;color:var(--txt)}
.s-arm-bar .tabs{position:relative;flex:1 1 auto;min-width:0;display:flex;flex-wrap:nowrap;gap:8px;margin:-6px -6px -6px auto;padding:6px;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch}
.s-arm-bar .tabs::-webkit-scrollbar{display:none}
.s-arm-bar .tabs a{flex:0 0 auto;display:inline-flex;align-items:center;gap:6px;font-family:var(--fb);font-weight:500;font-size:15px;line-height:1.2;letter-spacing:0;text-transform:none;white-space:nowrap;color:var(--txt);background:transparent;border:1px solid var(--line-2);border-radius:999px;padding:8px 14px;text-decoration:none;cursor:pointer;transition:border-color .15s,background .15s,color .15s}
.s-arm-bar .tabs a:hover{background:transparent;border-color:var(--txt);color:var(--txt)}
.s-arm-bar .tabs a.is-on{background:var(--txt);color:var(--ink);border-color:var(--txt)}
.s-arm-bar .tabs a .s-arm-chip-n{color:rgba(243,241,236,.62);font-variant-numeric:tabular-nums}
.s-arm-bar .tabs a.is-on .s-arm-chip-n{color:var(--ink-2)}
.s-arm-bar .tabs a.is-off{border-color:var(--line);color:rgba(243,241,236,.62);cursor:default}
.s-arm-bar .tabs a.is-off:hover{border-color:var(--line)}
/* ivice skrolabilnog reda: samo kad JS zna da ima još čipova van vidokruga */
.s-arm-bar .tabs.is-js:not(.at-end){-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 56px),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 56px),transparent)}
.s-arm-bar .tabs.is-js:not(.at-start):not(.at-end){-webkit-mask-image:linear-gradient(90deg,transparent,#000 56px,#000 calc(100% - 56px),transparent);mask-image:linear-gradient(90deg,transparent,#000 56px,#000 calc(100% - 56px),transparent)}
.s-arm-bar .tabs.is-js:not(.at-start).at-end{-webkit-mask-image:linear-gradient(90deg,transparent,#000 56px);mask-image:linear-gradient(90deg,transparent,#000 56px)}

/* ---------- sekcije: sve otvorene, bele pločice ---------- */
.s-arm-body{background:var(--bg);padding:clamp(24px,3vw,40px) 0 0}
.s-arm-none{font-family:var(--fb);font-size:17px;line-height:1.55;color:var(--txt-2);margin:0;padding:clamp(32px,5vw,64px) 0}
.s-arm-none[hidden]{display:none}
.s-arm-body .arm-sec{border-top:1px solid var(--line);margin:0;padding:0 0 clamp(40px,5vw,64px);content-visibility:auto;contain-intrinsic-size:1px 1200px;contain-intrinsic-size:auto 1px auto 1200px}
/* procena visine dok sekcija nije renderovana: --n = broj stavki (inline), red pločica ≈ 232px (2 kol.) / 307px (3–4 kol.); ako round() nije podržan ostaje 1200px */
.s-arm-body .arm-sec{contain-intrinsic-size:auto 1px auto calc(128px + round(up, var(--n,24) / 2) * 232px)}
@media(min-width:800px){.s-arm-body .arm-sec{contain-intrinsic-size:auto 1px auto calc(156px + round(up, var(--n,24) / 3) * 307px)}}
@media(min-width:1200px){.s-arm-body .arm-sec{contain-intrinsic-size:auto 1px auto calc(156px + round(up, var(--n,24) / 4) * 307px)}}
/* html{scroll-padding-top:90px} iz style.css + ovih 50 = 140 ispod vrha (header 62 + traka 68) */
.s-arm-body .arm-sec{scroll-margin-top:50px}
.s-arm-body .arm-sec:first-of-type{border-top:0}
.s-arm-body .arm-sec summary{list-style:none;cursor:pointer;display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 20px;position:relative;padding:clamp(28px,3.5vw,48px) 44px clamp(20px,2.5vw,28px) 0}
.s-arm-body .arm-sec summary::-webkit-details-marker{display:none}
.s-arm-body .arm-sec summary::after{content:"";position:absolute;right:8px;top:50%;width:11px;height:11px;border-right:2px solid var(--txt-2);border-bottom:2px solid var(--txt-2);transform:translateY(-70%) rotate(45deg);transition:transform .2s}
.s-arm-body .arm-sec[open] summary::after{transform:translateY(-30%) rotate(225deg)}
.s-arm-body .arm-sec summary:hover::after{border-color:var(--txt)}
.s-arm-body .arm-sec summary h2{font-family:var(--fd);font-weight:700;font-size:clamp(28px,3vw,40px);line-height:1;text-transform:uppercase;letter-spacing:.005em;margin:0;color:var(--txt)}
.s-arm-n{font-family:var(--fb);font-weight:500;font-size:15px;line-height:1.2;color:rgba(243,241,236,.62);font-variant-numeric:tabular-nums}
.s-arm-price-all{margin-left:auto;font-family:var(--fb);font-weight:500;font-size:15px;line-height:1.2;color:var(--txt-2);font-variant-numeric:tabular-nums;white-space:nowrap}
.s-arm-body .inv{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 20px}
@media(min-width:800px){.s-arm-body .inv{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:1200px){.s-arm-body .inv{grid-template-columns:repeat(4,minmax(0,1fr))}}
.s-arm-body .inv li{display:block;grid-template-columns:none;gap:0;background:none;border:0;border-radius:0;padding:0;transition:none;min-width:0}
.s-arm-body .inv li:hover{transform:none;border-color:transparent}
.s-arm-body .inv li.hide{display:none}
.s-arm-body .s-tile{display:grid;place-items:center;background:#fff;aspect-ratio:4/3;padding:12px;border-radius:4px;overflow:hidden}
.s-arm-body .s-tile img{width:100%;height:100%;max-height:100%;object-fit:contain;mix-blend-mode:normal}
.s-arm-name{display:block;font-family:var(--fd);font-weight:500;font-size:18px;line-height:1.15;text-transform:uppercase;letter-spacing:.005em;color:var(--txt);margin-top:12px;overflow-wrap:anywhere}
.s-arm-meta{display:block;font-family:var(--fb);font-weight:400;font-size:14px;line-height:1.35;color:rgba(243,241,236,.62);margin-top:4px;font-variant-numeric:tabular-nums}
.s-arm-price{display:block;font-family:var(--fd);font-weight:500;font-size:16px;line-height:1.2;color:var(--txt);margin-top:6px;font-variant-numeric:tabular-nums}

/* ---------- dno: kako dodaješ oružje ---------- */
.s-arm-foot{background:var(--bg2)}
.s-arm-foot .wrap{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:32px;align-items:center}
.s-arm-foot p{grid-column:1/8;font-family:var(--fb);font-size:17px;line-height:1.55;color:var(--txt-2);max-width:62ch;margin:0}
.s-arm-foot-act{grid-column:9/-1;justify-self:end}
.s-arm-foot .btn{white-space:nowrap}

/* ---------- tablet ---------- */
@media(max-width:1000px){
  .s-arm-foot .wrap{grid-template-columns:repeat(6,minmax(0,1fr));gap:24px 20px}
  .s-arm-foot p{grid-column:1/-1}
  .s-arm-foot-act{grid-column:1/-1;justify-self:start}
}

/* ---------- mobil ---------- */
@media(max-width:800px){
  /* h1 + podnaslov + lead su ~250px: viši kadar da slika ostane, jači donji gradijent da naslov ne padne na svetlu metu */
  .s-arm-ph{height:clamp(440px,92vw,560px)}
  .s-arm-ph::before{background:linear-gradient(90deg,rgba(15,17,20,.85) 0%,rgba(15,17,20,.35) 45%,transparent 75%)}
  .s-arm-ph::after{background:linear-gradient(to top,rgba(15,17,20,.96) 0%,rgba(15,17,20,.8) 30%,rgba(15,17,20,.35) 55%,transparent 78%)}
  .s-arm-ph .s-ph-in{padding-bottom:32px}
  .s-arm-lead{margin-top:16px}
  .s-arm-bar{padding:10px 0}
  .s-arm-bar .wrap{flex-wrap:wrap;gap:10px 12px}
  .s-arm-search{flex:1 1 auto;width:auto;min-width:0}
  .s-arm-search input{height:40px;font-size:16px}
  .s-arm-bar .tabs{flex:0 0 calc(100% + 2*var(--gut));margin:-6px calc(-1*var(--gut));padding:6px var(--gut)}
  .s-arm-bar .tabs a{font-size:14px;padding:7px 12px}
  .s-arm-bar .tabs.is-js:not(.at-end){-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 40px),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 40px),transparent)}
  .s-arm-bar .tabs.is-js:not(.at-start):not(.at-end){-webkit-mask-image:linear-gradient(90deg,transparent,#000 40px,#000 calc(100% - 40px),transparent);mask-image:linear-gradient(90deg,transparent,#000 40px,#000 calc(100% - 40px),transparent)}
  .s-arm-bar .tabs.is-js:not(.at-start).at-end{-webkit-mask-image:linear-gradient(90deg,transparent,#000 40px);mask-image:linear-gradient(90deg,transparent,#000 40px)}
  /* traka je dvoredna (~112px): 90 + 90 = 180 ispod vrha */
  .s-arm-body .arm-sec{scroll-margin-top:90px}
  .s-arm-body .arm-sec summary{padding-right:36px}
  .s-arm-body .arm-sec summary::after{right:4px}
  .s-arm-price-all{margin-left:0;flex:0 0 100%;white-space:normal}
}
@media(max-width:600px){
  .s-arm-body .inv{gap:22px 16px}
  .s-arm-body .s-tile{padding:10px}
  .s-arm-name{font-size:16px;margin-top:10px}
  .s-arm-meta{font-size:13.5px}
  .s-arm-price{font-size:15px}
}

/* ==== 24-ajandekutalvany.css ==== */
/* ==== 24 — AJÁNDÉKUTALVÁNY (ajandekutalvany) — v3: hero split + gift-card partial, „Hogyan működik“ na papiru,
   3 tiera na čaurama, mock forma sa živim preview-om, print šablon A5 landscape.
   Sve scoped na .s-gv, .s-gv-how, .s-gv-pick, .s-gv-form. Kartica (.s-gift-card) dolazi iz 15-home-gift.css.
   MOTION: jedan tihi skrol-vezani momenat — réz brojke 1/2/3 na papiru se utiskuju odozdo (clip-path).
   Sve ostalo miruje; tranzicije samo hover/focus ≤.2s. ==== */

/* ---------- 1) hero split ---------- */
.s-gv{background:var(--bg)}
.s-gv-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:48px;align-items:center}
.s-gv-txt{grid-column:1/6;min-width:0}
.s-gv .s-gift-card{grid-column:6/-1}
.s-gv-h1{font-size:clamp(48px,6.5vw,96px);line-height:.92;margin:0 0 24px;overflow-wrap:anywhere}
.s-gv-h1 .s-h2-sub{color:var(--rez);line-height:1.1}
.s-gv-p{font-family:var(--fb);font-size:17px;line-height:1.55;color:var(--txt-2);margin:0 0 28px;max-width:46ch}
.s-gv-btn{margin:0}
.s-gv-note{font-family:var(--fb);font-size:14px;line-height:1.5;margin:16px 0 0;max-width:40ch}

/* ---------- 2) hogyan működik (papir) ---------- */
.s-gv-how{background:var(--paper);color:var(--ink)}
.s-gv-how h2{color:var(--ink)}
.s-gv-how-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
.s-gv-step{border-left:1px solid rgba(21,24,28,.15);padding-left:24px;min-width:0}
.s-gv-step h3{font-family:var(--fd);font-weight:500;font-size:26px;line-height:1.1;text-transform:uppercase;color:var(--ink);margin:0 0 12px}
.s-gv-step p{font-family:var(--fb);font-size:16px;line-height:1.55;color:#4b5058;margin:0;max-width:34ch}
.s-gv-n{position:relative;display:block;font-family:var(--fd);font-weight:700;font-variant-numeric:tabular-nums;font-size:96px;line-height:.9;letter-spacing:-.02em;color:var(--rez);margin:0 0 20px;width:max-content}
.s-gv-n-o{display:block;color:transparent;-webkit-text-stroke:1.5px rgba(201,151,79,.55)}
.s-gv-n-f{position:absolute;inset:0;display:block;color:var(--rez);pointer-events:none}
.s-gv-how.s-vis .s-gv-n-f{will-change:clip-path}
@keyframes s-gv-stamp{from{clip-path:inset(100% 0 0 0)}to{clip-path:inset(0 0 0 0)}}
/* (a) scroll-driven: svaka brojka vezana za sopstveni ulazak; desktop stagger kroz pomerene range-ove */
@supports (animation-timeline: view()){
  .s-gv-n-f{animation:s-gv-stamp linear both;animation-timeline:view();animation-range:cover 6% cover 34%}
  .s-gv-step:nth-child(2) .s-gv-n-f{animation-range:cover 13% cover 41%}
  .s-gv-step:nth-child(3) .s-gv-n-f{animation-range:cover 20% cover 48%}
}
/* (b) fallback: .s-io.in + transition sa staggerom */
@supports not (animation-timeline: view()){
  .s-gv-how.s-io .s-gv-n-f{clip-path:inset(100% 0 0 0);transition:clip-path var(--m-dur,.9s) var(--m-ease,cubic-bezier(.2,.7,.2,1))}
  .s-gv-how.s-io .s-gv-step:nth-child(2) .s-gv-n-f{transition-delay:calc(2*var(--m-stagger,70ms))}
  .s-gv-how.s-io .s-gv-step:nth-child(3) .s-gv-n-f{transition-delay:calc(4*var(--m-stagger,70ms))}
  .s-gv-how.s-io.in .s-gv-n-f{clip-path:inset(0 0 0 0)}
}
/* (c) reduced-motion: završno stanje, pune brojke */
@media (prefers-reduced-motion:reduce){
  .s-gv-how .s-gv-n-f{animation:none;transition:none;clip-path:none}
}

/* ---------- 3) tieri na čaurama ---------- */
.s-gv-pick{background:linear-gradient(90deg,var(--bg2) 45%,rgba(28,32,37,.3) 100%),url(img/hf/casings.jpg) right center/cover no-repeat var(--bg2)}
.s-gv-pick .s-sec-head p{font-family:var(--fb);font-size:17px;line-height:1.55;color:var(--txt-2);margin:12px 0 0;max-width:56ch}
.s-gv-tiers{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:stretch}
.s-gv-tier{position:relative;display:flex;flex-direction:column;min-width:0;border:1px solid var(--line);border-radius:4px;padding:28px;background:rgba(15,17,20,.75)}
.s-gv-tier.is-pop{border-color:var(--rez)}
.s-gv-pop{position:absolute;top:-11px;left:24px;font-family:var(--fb);font-weight:600;font-size:13px;line-height:1.2;color:#1a1206;background:var(--rez);padding:3px 10px;border-radius:3px;white-space:nowrap}
.s-gv-huf{display:block;font-family:var(--fd);font-weight:700;font-variant-numeric:tabular-nums;font-size:clamp(40px,4.6vw,64px);line-height:1;letter-spacing:-.01em;color:var(--txt);white-space:nowrap}
.s-gv-eur{display:block;font-family:var(--fb);font-size:16px;line-height:1.4;color:var(--txt-2);margin-top:6px}
.s-gv-pkg{display:block;font-family:var(--fb);font-weight:500;font-size:16px;line-height:1.4;color:var(--txt);margin-top:18px}
.s-gv-fname{display:block;font-family:var(--fb);font-size:14px;line-height:1.4;margin-top:2px}
.s-gv-incl{list-style:none;margin:20px 0 28px;padding:20px 0 0;border-top:1px solid var(--line);display:grid;gap:10px;flex:1 1 auto;align-content:start}
.s-gv-incl li{display:flex;align-items:flex-start;gap:10px;font-family:var(--fb);font-size:15px;line-height:1.45;color:var(--txt)}
.s-gv-incl .ic{width:16px;height:16px;flex:0 0 16px;margin-top:3px;color:var(--rez)}
.s-gv-tier .btn{align-self:flex-start;margin:0}

/* ---------- 4) vásárlás: forma + živi preview ---------- */
.s-gv-form{background:var(--bg)}
.s-gv-form-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:48px;align-items:start}
.s-gv-fcol{grid-column:1/7;min-width:0}
.s-gv-prev{grid-column:7/-1;min-width:0;position:sticky;top:84px}
.s-gv-form .s-sec-head p{font-family:var(--fb);font-size:17px;line-height:1.55;color:var(--txt-2);margin:12px 0 0;max-width:52ch}
.s-gv-f{display:grid;gap:24px}
.s-gv-fs{border:0;margin:0;padding:0;min-width:0}
.s-gv-fs legend{font-family:var(--fb);font-weight:500;font-size:15px;line-height:1.3;color:var(--txt);padding:0;margin:0 0 12px}
.s-gv-radios{display:flex;flex-wrap:wrap;gap:10px 24px}
.s-gv-radios-col{flex-direction:column;gap:10px}
.s-gv-radio{display:inline-flex;align-items:center;gap:10px;font-family:var(--fb);font-weight:500;font-size:15px;line-height:1.3;color:var(--txt);cursor:pointer}
.s-gv-radio input{width:18px;height:18px;margin:0;accent-color:var(--rez);cursor:pointer;flex:0 0 18px}
.s-gv-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.s-gv-field{display:grid;gap:8px;min-width:0}
.s-gv-field[hidden]{display:none}
.s-gv-field label{font-family:var(--fb);font-weight:500;font-size:15px;line-height:1.3;color:var(--txt)}
.s-gv-field input,.s-gv-field textarea{width:100%;font-family:var(--fb);font-size:16px;line-height:1.4;color:var(--txt);background:var(--bg3);border:1px solid var(--line-2);border-radius:4px;padding:0 14px;height:48px;margin:0;transition:border-color .15s}
.s-gv-field textarea{height:auto;min-height:96px;padding:12px 14px;resize:vertical}
.s-gv-field input:hover,.s-gv-field textarea:hover{border-color:rgba(255,255,255,.34)}
.s-gv-field input:focus-visible,.s-gv-field textarea:focus-visible{border-color:var(--fultok);outline:3px solid var(--fultok);outline-offset:2px}
.s-gv-msg-foot{display:flex;justify-content:space-between;gap:16px;font-family:var(--fb);font-size:13px;line-height:1.4}
.s-gv-msg-foot output{font-variant-numeric:tabular-nums;white-space:nowrap}
.s-gv-submit{display:flex;flex-wrap:wrap;align-items:center;gap:14px 20px;margin-top:8px}
.s-gv-submit .btn{margin:0}
.s-gv-cards{font-family:var(--fb);font-size:13px;line-height:1.45;max-width:36ch}
.s-gv-status{font-family:var(--fb);font-size:15px;line-height:1.5;color:var(--txt);border-left:3px solid var(--fultok);padding:8px 0 8px 16px;margin:0}
.s-gv-status[hidden]{display:none}
.s-gv-prev-foot{margin-top:20px;display:grid;gap:10px}
/* datum važenja (JS, +6 meseci) je duži od „6 hónapig érvényes“ → šire polje i jedan red, samo na ovoj strani */
#gv-hero .s-gift-face-bot,#gv-preview .s-gift-face-bot{max-width:74%}
#gv-preview .s-gift-vld{white-space:nowrap}
.s-gv-print{appearance:none;background:none;border:0;padding:0;margin:0;font-family:var(--fb);font-size:16px;line-height:1.4;cursor:pointer;justify-self:start}
.s-gv-valid{font-family:var(--fb);font-size:15px;line-height:1.5;color:var(--txt-2);margin:6px 0 0}
.s-gv-upgrade{font-family:var(--fb);font-size:14px;line-height:1.5;margin:0}

/* ---------- responsivno ---------- */
@media(max-width:1000px){
  .s-gv-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:20px}
  .s-gv-txt{grid-column:1/4}
  .s-gv .s-gift-card{grid-column:4/-1}
  .s-gv-how-grid{gap:20px}
  .s-gv-step{padding-left:18px}
  .s-gv-step h3{font-size:22px}
  .s-gv-n{font-size:80px}
  .s-gv-tiers{gap:20px}
  .s-gv-tier{padding:20px}
  .s-gv-tier .btn{font-size:16px;padding:11px 20px}
  /* forma: h2 → preview kartica → polja (kolona forme se raspada u grid kroz display:contents) */
  .s-gv-form-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:32px 20px}
  .s-gv-fcol{display:contents}
  .s-gv-fcol .s-sec-head{grid-column:1/-1;order:1;margin-bottom:0}
  .s-gv-prev{grid-column:1/-1;position:static;order:2}
  .s-gv-f{grid-column:1/-1;order:3}
}
@media(max-width:900px){
  /* hero: h1 → kartica → tekst → dugme (tekst-blok se raspada u grid kroz display:contents) */
  .s-gv-grid{grid-template-columns:minmax(0,1fr);gap:28px}
  .s-gv-txt{display:contents}
  .s-gv-h1{order:1;margin:0}
  .s-gv .s-gift-card{grid-column:auto;order:2}
  .s-gv-p{order:3;margin:0}
  .s-gv-btn{order:4;justify-self:start}
  .s-gv-note{order:5;margin:-12px 0 0}
}
@media(max-width:700px){
  .s-gv-how-grid{grid-template-columns:minmax(0,1fr);gap:32px}
  .s-gv-step{padding-left:20px}
  .s-gv-tiers{grid-template-columns:minmax(0,1fr)}
  .s-gv-tier{padding:24px}
  .s-gv-tier .btn{align-self:stretch;justify-content:center}
}
@media(max-width:600px){
  .s-gv-grid{gap:24px}
  .s-gv-n{font-size:72px;margin-bottom:14px}
  .s-gv-huf{font-size:48px}
  .s-gv-row{grid-template-columns:minmax(0,1fr);gap:20px}
  .s-gv-f{gap:20px}
  .s-gv-radios{gap:10px 18px}
  .s-gv-submit .btn{width:100%;justify-content:center}
  .s-gv-form-grid{gap:28px 16px}
}

/* ---------- 5) print: samo preview kartica, A5 landscape ---------- */
@media print{
  @page{size:A5 landscape;margin:8mm}
  html{scroll-padding-top:0}
  body{background:#fff!important;padding:0!important;margin:0!important;color:#000}
  body>*:not(#main){display:none!important}
  #main>*:not(.s-gv-form){display:none!important}
  .s-gv-form{padding:0!important;background:none!important;isolation:auto}
  .s-gv-form::before,.s-gv-form::after{display:none!important}
  .s-gv-form .wrap{display:block;max-width:none;padding:0;margin:0}
  .s-gv-form .wrap>*:not(.s-gv-prev){display:none!important}
  .s-gv-prev{position:static;margin:0;padding:0}
  .s-gv-prev>*:not(#gv-preview){display:none!important}
  #gv-preview{width:173mm;height:130mm;aspect-ratio:auto;margin:0 auto;border-radius:0;overflow:hidden;break-inside:avoid;page-break-inside:avoid;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  #gv-preview img{filter:none}
}

/* ==== 25-foglalas.css ==== */
/* ==== 25-foglalas v3 — radna strana rezervacije. Scoped na .s-bk. Nula animacije; tranzicije samo hover/focus/izbor ≤.25s.
   Prepisuje bazne .cal / .pp / .btn stilove iz style.css unutar .s-bk (bez radiusa na kontejnerima, bez glow senki). ==== */

/* ---------- glava: h1 + red + tri činjenice ---------- */
.s-bk{background:var(--bg);color:var(--txt)}
.s-bk [hidden]{display:none!important}
.s-bk-head.s-sec{padding:clamp(56px,7vw,96px) 0 0}
.s-bk-head-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:32px;align-items:end}
.s-bk-head-txt{grid-column:1/9}
.s-bk-head h1{font:700 clamp(48px,6.5vw,104px)/.92 var(--fd);text-transform:uppercase;letter-spacing:.005em;margin:0}
.s-bk-head h1 .s-h2-sub{display:block;font-weight:400;font-size:.5em;line-height:1.15;color:var(--txt-2);margin-top:.15em;text-transform:none;letter-spacing:0}
.s-bk-lead{font:400 17px/1.55 var(--fb);margin:24px 0 0;max-width:56ch}
.s-bk-facts{grid-column:9/13;list-style:none;margin:0;padding:0 0 6px;display:flex;flex-direction:column;gap:12px}
.s-bk-facts li{display:flex;gap:10px;align-items:flex-start;font:400 15px/1.45 var(--fb);color:var(--txt-2)}
.s-bk-facts .ic{width:18px;height:18px;color:var(--fultok);flex:0 0 auto;margin-top:2px}

/* ---------- mreža: koraci 1–8, sažetak 9–12 ---------- */
.s-bk-body{padding:40px 0 clamp(72px,9vw,128px)}
.s-bk-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:32px;align-items:start}
.s-bk-steps{grid-column:1/9;min-width:0}
.s-bk-step-wrap+.s-bk-step-wrap{margin-top:48px}
.s-bk-lbl{font:500 15px/1.3 var(--fb);color:var(--txt-2)}
.s-bk-vh{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);border:0;white-space:nowrap}

/* ---------- step traka (crvena, statičan broj) ---------- */
.s-bk-step{display:grid;grid-template-columns:72px 1fr;align-items:center;gap:0 8px;background:var(--piros);color:#fff;padding:16px 20px}
.s-bk-step b{font:700 48px/1 var(--fd);font-variant-numeric:tabular-nums;color:#fff}
.s-bk-step h2{font:500 26px/1.1 var(--fd);text-transform:uppercase;letter-spacing:.005em;color:#fff;margin:0}
.s-bk-step p{font:400 15px/1.45 var(--fb);color:rgba(255,255,255,.85);margin:4px 0 0;max-width:60ch}

/* ---------- paneli ---------- */
.s-bk-panel{background:var(--bg3);padding:24px;margin-top:2px}
.s-bk-time{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px 32px;align-items:start}

/* ---------- kalendar (app.js render-uje .dn / button.d.free / .sel) ---------- */
.s-bk .cal .head{display:flex;justify-content:space-between;align-items:center;margin:0 0 12px;font:500 20px/1 var(--fd);letter-spacing:0;text-transform:none}
.s-bk .cal .head b{font-weight:500;font-variant-numeric:tabular-nums}
.s-bk .cal .head button{width:36px;height:36px;border:1px solid var(--line-2);border-radius:50%;background:transparent;color:var(--txt);font-size:20px;line-height:1;cursor:pointer;display:grid;place-items:center;padding:0 0 2px;transition:border-color .12s,background .12s}
.s-bk .cal .head button:hover{background:transparent;border-color:var(--txt)}
.s-bk .cal .grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}
.s-bk .cal .dn{font:500 13px/1 var(--fb);letter-spacing:0;color:rgba(243,241,236,.62);text-align:center;padding:6px 0 8px}
.s-bk .cal button.d{aspect-ratio:auto;height:44px;border:1px solid transparent;border-radius:4px;background:transparent;font:600 15px/1 var(--fb);font-variant-numeric:tabular-nums;color:var(--txt-3);cursor:default;padding:0;transition:background .12s,border-color .12s,color .12s}
.s-bk .cal button.d:disabled{opacity:1;color:var(--txt-3);font-weight:400;cursor:default}
.s-bk .cal button.d.is-closed{background:var(--bg2)}
.s-bk .cal button.d.free{border-color:#3ddc84;color:var(--txt);background:transparent;cursor:pointer}
.s-bk .cal button.d.free:hover{background:rgba(61,220,132,.12)}
.s-bk .cal button.d.sel,.s-bk .cal button.d[aria-pressed=true]{background:var(--kek);border-color:var(--kek);color:#fff;box-shadow:none}
.s-bk-leg{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:14px;font:400 13px/1.3 var(--fb);color:var(--txt-2)}
.s-bk-leg span{display:inline-flex;align-items:center;gap:7px}
.s-bk-leg i{display:inline-block;width:12px;height:12px;border-radius:2px;border:1px solid transparent}
.s-bk-leg i.f{border-color:#3ddc84}
.s-bk-leg i.s{background:var(--kek)}
.s-bk-leg i.n{background:var(--bg2);border-color:var(--line)}

/* ---------- termini + poeni-metar + kod ---------- */
.s-bk-slots{min-width:0}
.s-bk-daysel{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin:0 0 14px}
.s-bk-daysel output{font:600 17px/1.3 var(--fb);font-variant-numeric:tabular-nums;color:var(--txt)}
.s-bk-times{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.s-bk-times label{position:relative;display:flex;justify-content:space-between;align-items:baseline;gap:10px;min-height:48px;border:1px solid var(--line-2);border-radius:4px;padding:12px 14px;font:500 18px/1 var(--fd);color:var(--txt);cursor:pointer;transition:background .12s,border-color .12s}
.s-bk-times label:hover{border-color:var(--txt)}
.s-bk-times label:has(input:checked){background:var(--kek);border-color:var(--kek)}
.s-bk-times label:focus-within{outline:3px solid var(--fultok);outline-offset:2px}
.s-bk-times label input{position:absolute;opacity:0;width:1px;height:1px;margin:0;pointer-events:none}
.s-bk-times label small{font:400 13px/1 var(--fb);color:var(--txt-2);white-space:nowrap}
.s-bk-times label small::before{content:"("}
.s-bk-times label small::after{content:")"}
.s-bk-times label:has(input:checked) small{color:rgba(255,255,255,.85)}
.s-bk-pts{display:grid;grid-template-columns:repeat(20,minmax(0,1fr));gap:2px;margin-top:20px}
.s-bk-pts i{display:block;height:6px;background:var(--line);position:relative;overflow:hidden}
.s-bk-pts i.taken{background:rgba(243,241,236,.28)}
.s-bk-pts i.on{background:var(--kek)}
.s-bk-pts i.half::after{content:"";position:absolute;inset:0 50% 0 0;background:var(--kek)}
.s-bk-ptsline{display:flex;flex-wrap:wrap;gap:4px 14px;align-items:baseline;margin:10px 0 0;font:400 14px/1.45 var(--fb);color:var(--txt-2)}
.s-bk-tip{display:inline-block;position:relative}
.s-bk-tip summary{display:inline;list-style:none;cursor:pointer;font:600 14px/1.45 var(--fb);color:var(--txt)}
.s-bk-tip summary::-webkit-details-marker{display:none}
.s-bk-tip-box{position:absolute;left:0;top:calc(100% + 8px);z-index:6;width:min(320px,78vw);background:var(--bg2);border:1px solid var(--line-2);padding:12px 14px;font:400 14px/1.5 var(--fb);color:var(--txt-2)}
.s-bk-tomorrow{font:400 14px/1.45 var(--fb);margin:10px 0 0}
.s-bk-code{margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}
.s-bk-code label{display:block;font:500 15px/1.3 var(--fb);color:var(--txt-2);margin-bottom:8px}
.s-bk-code-row{display:flex;gap:10px;flex-wrap:wrap}
.s-bk-code-row input{flex:1 1 160px;min-width:0;max-width:260px;padding:10px 12px;font:500 15px/1.2 var(--fb);letter-spacing:.04em;text-transform:uppercase;border:1px solid var(--line-2);border-radius:4px;background:rgba(0,0,0,.25);color:var(--txt)}
.s-bk-code-row input::placeholder{color:var(--txt-3);text-transform:none;letter-spacing:0}
.s-bk-code-msg{font:400 13px/1.45 var(--fb);margin:8px 0 0}

/* ---------- redovi paketa (label.pp – hook-ovi app.js) ---------- */
.s-bk-list{margin-top:2px;border-top:1px solid var(--line)}
.s-bk-row{border-bottom:1px solid var(--line)}
.s-bk .pp{display:grid;grid-template-columns:56px minmax(0,1fr) auto;gap:16px;align-items:center;background:transparent;border:0;border-left:3px solid transparent;border-radius:0;padding:16px 0 16px 16px;margin:0;cursor:pointer;transition:border-color .12s,background .12s}
.s-bk .pp:hover{background:rgba(255,255,255,.03)}
.s-bk .pp:has(input:checked){border-left-color:var(--kek);box-shadow:none}
.s-bk .pp:focus-within{outline:3px solid var(--fultok);outline-offset:-3px}
.s-bk .pp:has(.s-bk-qty button:focus-visible){outline:0}
.s-bk-pp-cov{display:block;width:56px;height:75px;border-radius:3px;overflow:hidden;background:var(--bg3);position:relative}
.s-bk-pp-cov img{width:56px;height:75px;max-width:none;object-fit:cover;object-position:50% 30%;filter:saturate(.8) contrast(1.05);border-radius:0;aspect-ratio:auto}
.s-bk-pp-cov::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,var(--bg3) 0%,rgba(28,32,37,.6) 30%,transparent 60%);pointer-events:none}
.s-bk-row.is-custom .s-bk-pp-cov{background:var(--kek)}
.s-bk-row.is-custom .s-bk-pp-cov::after{display:none}
.s-bk-pp-plus{position:absolute;inset:0;display:grid;place-items:center;font:700 40px/1 var(--fd);color:#fff}
.s-bk-pp-txt{display:flex;flex-direction:column;gap:3px;min-width:0}
.s-bk-pp-top{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 20px}
.s-bk-pp-name{font:500 20px/1.1 var(--fd);text-transform:uppercase;letter-spacing:.005em;color:var(--txt)}
.s-bk-pp-price{font:500 20px/1.1 var(--fd);font-variant-numeric:tabular-nums;color:var(--txt);white-space:nowrap}
.s-bk-pp-price small{font:400 14px/1 var(--fb);color:var(--txt-2);text-transform:none}
.s-bk-pp-meta,.s-bk-pp-pay{font:400 14px/1.4 var(--fb)}
.s-bk-pp-pay{color:var(--txt-2)}
.s-bk-pp-pts{font:400 12px/1.4 var(--fb);color:rgba(243,241,236,.62)}
.s-bk-qty{display:inline-flex;align-items:center;gap:6px;justify-self:end;padding-right:4px}
.s-bk-qty button{width:36px;height:36px;border:1px solid var(--line-2);border-radius:4px;background:transparent;color:var(--txt);font:500 20px/1 var(--fd);cursor:pointer;padding:0;transition:border-color .12s,background .12s}
.s-bk-qty button:hover{border-color:var(--txt)}
.s-bk-qty output{display:inline-block;width:36px;text-align:center;font:700 20px/36px var(--fd);font-variant-numeric:tabular-nums;color:var(--txt)}
.s-bk-extras{padding:0 0 0 91px}
.s-bk-extras:empty{display:none}
.s-bk-extras>.s-link,.s-bk-person>.s-link,.s-bk-copy{display:inline-block;background:none;border:0;padding:0;margin:0 0 16px;font:600 15px/1.3 var(--fb);color:var(--txt);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:2px;text-decoration-color:var(--fultok);cursor:pointer;transition:text-decoration-color .15s}
.s-bk-extras>.s-link:hover,.s-bk-person>.s-link:hover,.s-bk-copy:hover{text-decoration-color:var(--txt)}
.s-bk-chosen{list-style:none;margin:0 0 10px;padding:0}
.s-bk-chosen:empty{display:none}
.s-bk-chosen li{display:grid;grid-template-columns:minmax(0,1fr) auto 36px;gap:12px;align-items:center;padding:8px 0;border-top:1px solid var(--line);font:400 15px/1.35 var(--fb);color:var(--txt)}
.s-bk-chosen li:first-child{border-top:0}
.s-bk-chosen li small{display:block;font-size:13px}
.s-bk-chosen li .pr{font:500 15px/1 var(--fb);font-variant-numeric:tabular-nums;white-space:nowrap}
.s-bk-chosen li button,.s-bk-arm li button{width:36px;height:36px;border:1px solid var(--line-2);border-radius:4px;background:transparent;color:var(--txt);font:500 20px/1 var(--fd);cursor:pointer;padding:0;transition:border-color .12s}
.s-bk-chosen li button:hover,.s-bk-arm li button:hover{border-color:var(--txt)}
.s-bk-person{padding:14px 0 4px;border-top:1px solid var(--line)}
.s-bk-person:first-child{border-top:0;padding-top:0}
.s-bk-person-h{display:flex;align-items:baseline;gap:14px;margin:0 0 10px}
.s-bk-person-h b{font:500 16px/1.2 var(--fd);text-transform:uppercase;letter-spacing:.005em;color:var(--txt)}
.s-bk-person-h .cnt{font:500 14px/1.2 var(--fb);color:var(--txt-2);font-variant-numeric:tabular-nums}
.s-bk-person-h .cnt.ok{color:var(--txt)}
.s-bk-persons:empty+.s-bk-copy{display:none}

/* ---------- inline oružarnica (jedan deljeni panel) ---------- */
.s-bk-arm{background:var(--bg2);border:1px solid var(--line);padding:0 16px 8px;margin:0 0 20px;max-height:440px;overflow:auto}
.s-bk-arm-top{position:sticky;top:0;z-index:2;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px;padding:14px 0 12px;background:var(--bg2);border-bottom:1px solid var(--line)}
.s-bk-arm-q{display:flex;align-items:center;gap:10px;flex:1 1 220px;max-width:360px;border:1px solid var(--line-2);border-radius:4px;padding:0 12px;background:rgba(0,0,0,.25)}
.s-bk-arm-q .ic{width:16px;height:16px;color:var(--txt-2);flex:0 0 auto}
.s-bk-arm-q input{flex:1;min-width:0;border:0;background:transparent;color:var(--txt);font:400 15px/1.2 var(--fb);padding:10px 0;outline:0}
.s-bk-arm-q:focus-within{outline:3px solid var(--fultok);outline-offset:2px}
.s-bk-arm-top .s-link{background:none;border:0;padding:0;font:600 14px/1.3 var(--fb);color:var(--txt);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:2px;text-decoration-color:var(--fultok);cursor:pointer}
.s-bk-arm-sec summary{display:flex;justify-content:space-between;align-items:baseline;gap:12px;list-style:none;cursor:pointer;padding:12px 0 8px;font:500 17px/1.2 var(--fd);text-transform:uppercase;letter-spacing:.005em;color:var(--txt)}
.s-bk-arm-sec summary::-webkit-details-marker{display:none}
.s-bk-arm-sec summary:hover span:first-child{text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:2px;text-decoration-color:var(--fultok)}
.s-bk-arm-n{font:400 14px/1 var(--fb);text-transform:none}
.s-bk-arm ul{list-style:none;margin:0 0 8px;padding:0}
.s-bk-arm li{display:grid;grid-template-columns:minmax(0,1fr) auto 36px;gap:12px;align-items:center;padding:8px 0;border-top:1px solid var(--line);font:400 15px/1.35 var(--fb);color:var(--txt)}
.s-bk-arm li.hide{display:none}
.s-bk-arm-nm small{display:block;font-size:13px}
.s-bk-arm-pr{font:500 15px/1 var(--fb);font-variant-numeric:tabular-nums;white-space:nowrap}

/* ---------- upozorenje (žuto, --ink) ---------- */
.s-bk-warn{background:var(--fultok);color:var(--ink);font:500 15px/1.45 var(--fb);padding:12px 16px;margin-top:16px}

/* ---------- 3. korak: polja ---------- */
.s-bk-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px 24px}
.s-bk-full{grid-column:1/-1}
.s-bk-f{display:flex;flex-direction:column;gap:6px;min-width:0}
.s-bk-f label{font:500 15px/1.3 var(--fb);color:var(--txt-2);letter-spacing:0;text-transform:none}
.s-bk-f input,.s-bk-f select,.s-bk-f textarea{width:100%;padding:12px 14px;font:400 16px/1.3 var(--fb);border:1px solid var(--line-2);border-radius:4px;background:rgba(0,0,0,.25);color:var(--txt);transition:border-color .12s}
.s-bk-f input:hover,.s-bk-f select:hover,.s-bk-f textarea:hover{border-color:var(--txt-2)}
.s-bk-f select option{color:#000}
.s-bk-f textarea{min-height:110px;resize:vertical}
.s-bk-hint{font:400 13px/1.45 var(--fb);color:rgba(243,241,236,.62)}
.s-bk-bill{margin-top:4px}
.s-bk-chk{display:flex;gap:10px;align-items:flex-start;font:400 15px/1.5 var(--fb);color:var(--txt-2);cursor:pointer}
.s-bk-chk input{width:18px;height:18px;margin:3px 0 0;accent-color:var(--kek);flex:0 0 auto}
.s-bk-pay{border:0;margin:28px 0 0;padding:22px 0 0;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:10px}
.s-bk-pay legend{font:500 15px/1.3 var(--fb);color:var(--txt-2);padding:0;margin-bottom:12px}
.s-bk-voucher{margin:2px 0 0 28px}
.s-bk-voucher b{font-weight:600;color:var(--txt);letter-spacing:.04em}
.s-bk-terms{margin-top:22px;padding-top:22px;border-top:1px solid var(--line)}
.s-bk-terms .s-link{font-weight:600}

/* ---------- sažetak na papiru (jedina dozvoljena senka) ---------- */
.s-bk-sum{grid-column:9/13;position:sticky;top:96px;background:var(--paper);color:var(--ink);border-radius:4px;padding:24px;box-shadow:var(--shadow);min-width:0}
.s-bk-sum-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:6px}
.s-bk-sum h3{font:500 22px/1.1 var(--fd);text-transform:uppercase;letter-spacing:.005em;color:var(--ink);margin:0}
.s-bk-sum-x{display:none;width:36px;height:36px;border:1px solid rgba(21,24,28,.3);border-radius:50%;background:transparent;color:var(--ink);cursor:pointer;padding:0;place-items:center}
.s-bk-sum-x .ic{width:16px;height:16px}
.s-bk-sum-rows{margin:0}
.s-bk-sum-row{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:10px 0;border-bottom:1px solid rgba(21,24,28,.12);font:400 15px/1.4 var(--fb);color:var(--ink)}
.s-bk-sum-row dt{color:#4b5058;flex:0 1 auto}
.s-bk-sum-row dd{margin:0;font-weight:600;text-align:right;font-variant-numeric:tabular-nums;min-width:0}
.s-bk-sum-pkrow{display:block}
.s-bk-sum-pkrow dd{text-align:left;font-weight:400}
.s-bk-sum-pk{list-style:none;margin:0;padding:0}
.s-bk-sum-pk li{display:flex;justify-content:space-between;gap:12px;padding:3px 0;font:400 15px/1.4 var(--fb)}
.s-bk-sum-pk li span:last-child{font-weight:600;white-space:nowrap;font-variant-numeric:tabular-nums}
.s-bk-sum-pk li.empty span{color:#4b5058;font-weight:400}
.s-bk-sum-pk li.sub{font-size:14px;color:#4b5058;padding-left:14px}
.s-bk-cur{display:inline-flex;gap:6px;position:relative}
.s-bk-sum .s-chip{font:500 14px/1.2 var(--fb);color:var(--ink);border-color:rgba(21,24,28,.3);background:transparent;padding:6px 12px}
.s-bk-sum .s-chip:hover{border-color:var(--ink)}
.s-bk-sum .s-chip.is-on{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.s-bk-sum-big{align-items:baseline}
.s-bk-sum-big dd{font:700 28px/1 var(--fd);font-variant-numeric:tabular-nums;letter-spacing:.005em}
.s-bk-sum-tot{border-bottom:0}
.s-bk-sum-tot dd{font:500 20px/1 var(--fd)}
.s-bk-sum .btn.s-bk-submit{width:100%;justify-content:center;margin-top:16px;box-shadow:none}
.s-bk-sum .btn.s-bk-submit:hover{transform:none}
.s-bk-msg{display:flex;margin-top:14px;padding:12px 14px;background:#fff;border-left:3px solid var(--fultok);font:500 14px/1.45 var(--fb);color:var(--ink)}
.s-bk-sum-note{font:400 13px/1.5 var(--fb);color:#4b5058;margin:14px 0 0}
.s-bk-next h4{font:500 15px/1.3 var(--fb);text-transform:none;letter-spacing:0;color:var(--ink);margin:20px 0 8px}
.s-bk-next ol{margin:0;padding:0 0 0 20px;font:400 13px/1.5 var(--fb);color:#4b5058}
.s-bk-next li{margin:0 0 4px}
.s-bk-next li::marker{font-weight:600;color:var(--ink)}

/* ---------- mobilna traka + sheet ---------- */
.s-bk-bar{display:none}

/* ---------- responsive ---------- */
@media (max-width:1000px){
  .s-bk-head-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:24px 20px;align-items:start}
  .s-bk-head-txt{grid-column:1/-1}
  .s-bk-facts{grid-column:1/-1;padding:4px 0 0;gap:8px}
  .s-bk-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:20px}
  .s-bk-steps{grid-column:1/-1}
  .s-bk-sum{grid-column:1/-1}
  .s-bk-body{padding-top:32px}
  .s-bk-step-wrap+.s-bk-step-wrap{margin-top:36px}
  /* sažetak = sheet iznad fiksne trake */
  .s-bk-sum{position:fixed;left:0;right:0;bottom:calc(60px + env(safe-area-inset-bottom));top:auto;z-index:46;max-height:calc(100vh - 60px - env(safe-area-inset-bottom) - 128px);overflow:auto;border-radius:4px 4px 0 0;transform:translateY(110%);visibility:hidden;transition:transform .25s var(--m-ease),visibility 0s linear .25s}
  .s-bk-sum.is-open{transform:none;visibility:visible;transition:transform .25s var(--m-ease),visibility 0s}
  .s-bk-sum-x{display:grid}
  .s-bk-bar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:47;height:calc(60px + env(safe-area-inset-bottom));padding:0 16px env(safe-area-inset-bottom);align-items:center;justify-content:space-between;gap:12px;background:var(--paper);color:var(--ink);border-top:1px solid rgba(21,24,28,.12)}
  .s-bk-bar span{display:block;font:500 13px/1 var(--fb);color:#4b5058;margin-bottom:4px}
  .s-bk-bar b{display:block;font:700 22px/1 var(--fd);font-variant-numeric:tabular-nums;letter-spacing:.005em}
  .s-bk-bar .btn{box-shadow:none;white-space:nowrap}
  body[data-page=foglalas]{padding-bottom:calc(60px + env(safe-area-inset-bottom))}
  body[data-page=foglalas].menu-open .s-bk-bar{display:none}
}
@media (max-width:700px){
  .s-bk-time{grid-template-columns:1fr}
  .s-bk-panel{padding:20px 16px}
  .s-bk-arm{padding:0 12px 8px}
}
@media (max-width:600px){
  .s-bk-head-grid,.s-bk-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
  .s-bk-head.s-sec{padding-top:48px}
  .s-bk-lead{margin-top:18px}
  .s-bk-fields{grid-template-columns:1fr}
  .s-bk-step{grid-template-columns:56px 1fr;padding:14px 16px}
  .s-bk-step b{font-size:40px}
  .s-bk-step h2{font-size:22px}
  .s-bk-times{grid-template-columns:1fr 1fr}
  .s-bk-extras{padding-left:15px}
}
@media (max-width:600px){
  /* red paketa u 2 reda: cover + tekst, ispod qty */
  .s-bk .pp{grid-template-columns:56px minmax(0,1fr);gap:12px 14px;padding-left:12px}
  .s-bk-qty{grid-column:1/-1;justify-self:start;padding:0}
  .s-bk-pp-top{gap:2px 12px}
  .s-bk-pp-name,.s-bk-pp-price{font-size:18px}
}
@media (max-width:480px){
  .s-bk .cal button.d{height:40px}
  .s-bk-times label{font-size:16px;padding:11px 12px}
  .s-bk-chosen li,.s-bk-arm li{grid-template-columns:minmax(0,1fr) auto 36px;gap:8px}
}

/* ==== 26-kapcsolat.css ==== */
/* ===== KAPCSOLAT (kapcsolat) — v3: page-header photo-13, e-mail kao glavna činjenica + tamna mapa,
   „Így találsz meg“ 3 stanice sa rutom, taxi/BKK tipografski blokovi, nyitvatartás tabela sa walk-in kolonom.
   Sve je scoped na .s-kapcsolat. Deljeni stilovi (.s-ph, .s-sec, .s-sec-head, .s-h2-sub, .s-muted, .s-link, .s-photo)
   su ponovljeni scoped da strana radi i pre 01-base.css; kad stigne, pravila su identična.
   MOTION (jedini momenat strane, na zahtev korisnika): ruta „Így találsz meg“ — isprekidana linija se iscrtava od
   sorompóa do pincea dok se skroluje, stanice (tačka + broj) se pale žuto kad ih ruta dostigne.
   (a) scroll-driven: animation-timeline: view() na --ctr; (b) fallback: .s-ct-find.in → tranzicija --ctr;
   (c) reduced-motion: --ctr:1 (iscrtano). Animira se samo clip-path i opacity. */
@property --ctr{syntax:'<number>';inherits:true;initial-value:0}

.s-kapcsolat{--m-ease:cubic-bezier(.2,.7,.2,1);--m-dur:.9s}
.s-kapcsolat .s-sec{padding:clamp(72px,9vw,128px) 0;position:relative}
.s-kapcsolat .s-sec-head{margin-bottom:40px}
.s-kapcsolat h2{font-size:clamp(38px,5vw,72px);line-height:.95;font-weight:700;margin:0}
.s-kapcsolat h3{font-size:22px;line-height:1.1;font-weight:500;margin:0}
.s-kapcsolat .s-h2-sub{display:block;font-weight:400;font-size:.5em;line-height:1.15;color:var(--txt-2);text-transform:none;letter-spacing:0;margin-top:.15em}
.s-kapcsolat .s-muted{color:rgba(243,241,236,.62)}
.s-kapcsolat .s-photo{filter:saturate(.9) contrast(1.04);opacity:1}
.s-kapcsolat .s-link{font-family:var(--fb);font-weight:600;color:var(--txt);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:2px;text-decoration-color:var(--fultok);transition:text-decoration-color .15s}
.s-kapcsolat .s-link:hover{text-decoration-color:var(--txt)}
.s-kapcsolat .s-ct-lbl{display:block;font-family:var(--fb);font-weight:500;font-size:15px;line-height:1.3;letter-spacing:0;text-transform:none;margin:0 0 10px}
.s-kapcsolat p{font-family:var(--fb);font-size:17px;line-height:1.55;color:var(--txt-2);margin:0 0 1em}
.s-kapcsolat .btn-kek{box-shadow:none}
.s-kapcsolat .btn:hover{transform:none}

/* ---------- page header: full-bleed fotka, opacity 1, donji gradijent, h1 dole levo ---------- */
.s-kapcsolat .s-ph{position:relative;height:clamp(360px,42vw,560px);display:flex;align-items:flex-end;overflow:hidden;background:var(--bg)}
.s-kapcsolat .s-ph>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:var(--pos,50% 40%);opacity:1}
.s-kapcsolat .s-ph::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(15,17,20,.95) 0%,rgba(15,17,20,.55) 30%,transparent 55%);pointer-events:none}
.s-kapcsolat .s-ph .wrap{position:relative;z-index:1;width:100%;padding-bottom:40px}
.s-kapcsolat .s-ph h1{font-size:clamp(48px,6.5vw,104px);line-height:.92;max-width:22ch}

/* ---------- e-mail + cím + mapa ---------- */
.s-kapcsolat .s-ct{background:var(--bg)}
.s-kapcsolat .s-ct-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:48px;row-gap:40px;align-items:start}
.s-kapcsolat .s-ct-txt{grid-column:1/7;min-width:0}
.s-kapcsolat .s-ct-loc{grid-column:7/13;min-width:0}
.s-kapcsolat .s-ct-mail{display:inline-block;font-family:var(--fd);font-weight:500;font-size:clamp(24px,3vw,40px);line-height:1.15;color:#fff;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:6px;text-decoration-color:var(--fultok);overflow-wrap:anywhere;margin:0 0 24px;transition:text-decoration-color .15s}
.s-kapcsolat .s-ct-mail:hover{text-decoration-color:#fff}
.s-kapcsolat .s-ct-txt p{max-width:52ch;margin-bottom:20px}
.s-kapcsolat .s-ct-addr{display:block;font-style:normal;font-family:var(--fd);font-weight:400;font-size:24px;line-height:1.2;color:var(--txt);margin:0 0 20px}
.s-kapcsolat .s-ct-loc .btn{margin-bottom:28px}
.s-kapcsolat .s-ct-map{position:relative;aspect-ratio:4/3;border-radius:4px;overflow:hidden;background:var(--bg3);isolation:isolate}
.s-kapcsolat .s-ct-map-if{position:absolute;inset:0;filter:invert(.9) hue-rotate(180deg) saturate(.5)}
.s-kapcsolat .s-ct-map iframe{width:100%;height:100%;border:0;display:block}
.s-kapcsolat .s-ct-map-fb{position:absolute;inset:0;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;text-align:center;padding:24px;background:var(--bg3);color:var(--txt);font-family:var(--fb);font-size:15px;line-height:1.4}
.s-kapcsolat .s-ct-map-fb .ic{width:28px;height:28px;color:var(--piros)}
.s-kapcsolat .s-ct-map.loaded .s-ct-map-fb{display:none}

/* ---------- így találsz meg: 3 stanice + ruta ---------- */
.s-kapcsolat .s-ct-find{background:var(--bg2)}
.s-kapcsolat .s-ct-route{--ctr:0;--gap:32px;list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:var(--gap);row-gap:40px}
.s-kapcsolat .s-ct-stop{position:relative;margin:0;padding:28px 0 0;min-width:0}
/* segment rute od ove stanice do sledeće (preko gap-a); clip-path ga otkriva sleva */
.s-kapcsolat .s-ct-stop::before{content:"";position:absolute;left:0;top:0;width:calc(100% + var(--gap));height:0;border-top:2px dashed var(--fultok);clip-path:inset(0 calc(100% - var(--seg,0) * 100%) 0 0)}
.s-kapcsolat .s-ct-stop:last-child::before{display:none}
.s-kapcsolat .s-ct-dot{position:absolute;left:0;top:-5px;width:12px;height:12px;border-radius:50%;border:2px solid var(--line-2);background:var(--bg2);z-index:1}
.s-kapcsolat .s-ct-dot::after{content:"";position:absolute;inset:-2px;border-radius:50%;background:var(--fultok);opacity:var(--on,0)}
.s-kapcsolat .s-ct-stop>b{position:relative;display:block;font-family:var(--fd);font-weight:700;font-variant-numeric:tabular-nums;font-size:64px;line-height:1;color:var(--txt-2);letter-spacing:0;margin:0 0 16px}
.s-kapcsolat .s-ct-stop>b::after{content:attr(data-n);position:absolute;inset:0;color:var(--fultok);opacity:var(--on,0)}
.s-kapcsolat .s-ct-stop h3{margin:0 0 10px}
.s-kapcsolat .s-ct-stop p{font-size:16px;margin:0;max-width:40ch}
/* stanica 1 odmah, 2 na pola, 3 na kraju rute */
.s-kapcsolat .s-ct-stop:nth-child(1){--seg:clamp(0,var(--ctr) * 2,1);--on:clamp(0,var(--ctr) * 8,1)}
.s-kapcsolat .s-ct-stop:nth-child(2){--seg:clamp(0,(var(--ctr) - .5) * 2,1);--on:clamp(0,(var(--ctr) - .48) * 8,1)}
.s-kapcsolat .s-ct-stop:nth-child(3){--on:clamp(0,(var(--ctr) - .94) * 14,1)}
.s-kapcsolat .s-ct-find.s-vis .s-ct-stop::before{will-change:clip-path}
@supports (animation-timeline: view()){
  .s-kapcsolat .s-ct-route{animation:s-ct-route linear both;animation-timeline:view();animation-range:entry 30% cover 55%}
  @keyframes s-ct-route{to{--ctr:1}}
  @media (max-width:700px){.s-kapcsolat .s-ct-route{animation-range:entry 20% cover 60%}}
}
@supports not (animation-timeline: view()){
  .s-kapcsolat .s-ct-route{transition:--ctr 1.6s linear}
  .s-kapcsolat .s-ct-find.in .s-ct-route{--ctr:1}
}
@media (prefers-reduced-motion:reduce){
  .s-kapcsolat .s-ct-route{animation:none;transition:none;--ctr:1}
}

/* ---------- taxi + BKK ---------- */
.s-kapcsolat .s-ct-go{background:var(--bg)}
.s-kapcsolat .s-ct-go-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px;align-items:start}
.s-kapcsolat .s-ct-taxi{border-left:4px solid var(--fultok);padding-left:24px;min-width:0}
.s-kapcsolat .s-ct-bkk{border-left:1px solid var(--line);padding-left:24px;min-width:0}
.s-kapcsolat .s-ct-go h3{margin:0 0 16px}
.s-kapcsolat .s-ct-code{display:block;font-family:var(--fd);font-weight:700;font-variant-numeric:tabular-nums;font-size:64px;line-height:1;color:var(--fultok);letter-spacing:0;margin:0}
.s-kapcsolat .s-ct-code-l{display:block;font-family:var(--fb);font-size:14px;line-height:1.3;margin:6px 0 20px}
.s-kapcsolat .s-ct-tel{display:inline-block;font-family:var(--fb);font-weight:500;font-size:20px;line-height:1.2;font-variant-numeric:tabular-nums;color:var(--txt);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:2px;text-decoration-color:var(--fultok);margin:0 0 8px;transition:text-decoration-color .15s}
.s-kapcsolat .s-ct-tel:hover{text-decoration-color:var(--txt)}
.s-kapcsolat .s-ct-go p{font-size:16px;max-width:48ch;margin:0 0 12px}
.s-kapcsolat .s-ct-go .s-ct-small{font-size:14px;margin:0 0 16px}
.s-kapcsolat .s-ct-go p:last-child{margin-bottom:0}
.s-kapcsolat .s-ct-bkk .s-link{font-size:16px}

/* ---------- nyitvatartás: h2 levo, tabela + napomene desno ---------- */
.s-kapcsolat .s-ct-hours{background:var(--bg2)}
.s-kapcsolat .s-ct-hours-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:32px;row-gap:32px;align-items:start}
.s-kapcsolat .s-ct-hours-h{grid-column:1/6}
.s-kapcsolat .s-ct-hours-b{grid-column:6/13;min-width:0}
.s-kapcsolat .s-ct-tbl{width:100%;border-collapse:collapse;font-family:var(--fb);font-size:16px;line-height:1.35;font-variant-numeric:tabular-nums;margin:0 0 28px;text-align:left}
.s-kapcsolat .s-ct-tbl thead th{font-weight:500;font-size:15px;color:rgba(243,241,236,.62);padding:0 16px 12px 0;border-bottom:1px solid var(--line-2);letter-spacing:0;text-transform:none;vertical-align:bottom}
.s-kapcsolat .s-ct-tbl td,.s-kapcsolat .s-ct-tbl tbody th{padding:12px 16px 12px 0;border-bottom:1px solid var(--line);color:var(--txt-2);vertical-align:top;white-space:nowrap;font-weight:400}
.s-kapcsolat .s-ct-tbl tbody th{color:var(--txt);font-weight:500;width:28%}
.s-kapcsolat .s-ct-tbl th:last-child,.s-kapcsolat .s-ct-tbl td:last-child{padding-right:0}
.s-kapcsolat .s-ct-closed{font-weight:600;color:var(--piros);background:#0a0c0e;padding:2px 8px;margin:-2px -8px;border-radius:3px}
.s-kapcsolat .s-ct-notes p{font-size:15px;margin:0 0 12px;max-width:66ch}
.s-kapcsolat .s-ct-notes p b{color:var(--txt);font-weight:600}
.s-kapcsolat .s-ct-notes p:last-child{margin-bottom:0}
.s-kapcsolat .s-ct-holi{font-size:14px}

/* ---------- tablet ---------- */
@media (max-width:1000px){
  .s-kapcsolat .s-ct-grid{grid-template-columns:repeat(6,minmax(0,1fr));column-gap:20px}
  .s-kapcsolat .s-ct-txt{grid-column:1/4}
  .s-kapcsolat .s-ct-loc{grid-column:4/7}
  .s-kapcsolat .s-ct-route{--gap:20px}
  .s-kapcsolat .s-ct-hours-grid{grid-template-columns:minmax(0,1fr)}
  .s-kapcsolat .s-ct-hours-h,.s-kapcsolat .s-ct-hours-b{grid-column:auto}
  .s-kapcsolat .s-ct-hours-h h2{margin-bottom:8px}
}
@media (max-width:800px){
  .s-kapcsolat .s-ct-go-grid{grid-template-columns:minmax(0,1fr);gap:40px}
}
/* ---------- mobil: e-mail blok u jednoj koloni, ruta vertikalna uz levu ivicu ----------
   header 420px: fotka se na uskom ekranu skalira po visini, pa natpis sa majice (INSTRUCTOR) ostaje IZNAD h1, u zoni gradijenta, a ne iza njega */
@media (max-width:700px){
  .s-kapcsolat .s-ph{height:clamp(420px,42vw,560px)}
  .s-kapcsolat .s-ct-grid{grid-template-columns:minmax(0,1fr);row-gap:48px}
  .s-kapcsolat .s-ct-txt,.s-kapcsolat .s-ct-loc{grid-column:auto}
  .s-kapcsolat .s-ct-route{--gap:32px;grid-template-columns:minmax(0,1fr);row-gap:var(--gap)}
  .s-kapcsolat .s-ct-stop{padding:0 0 0 32px}
  .s-kapcsolat .s-ct-stop::before{left:5px;top:26px;width:0;height:calc(100% + var(--gap));border-top:0;border-left:2px dashed var(--fultok);clip-path:inset(0 0 calc(100% - var(--seg,0) * 100%) 0)}
  .s-kapcsolat .s-ct-dot{left:0;top:20px}
  .s-kapcsolat .s-ct-stop>b{font-size:56px;margin-bottom:12px}
}
@media (max-width:600px){
  .s-kapcsolat .s-ct-grid{column-gap:16px}
  .s-kapcsolat .s-ct-code{font-size:56px}
  .s-kapcsolat .s-ct-tbl{font-size:14px}
  .s-kapcsolat .s-ct-tbl thead th{font-size:13px;padding:0 10px 10px 0}
  .s-kapcsolat .s-ct-tbl td,.s-kapcsolat .s-ct-tbl tbody th{padding:10px 10px 10px 0}
  .s-kapcsolat .s-ct-tbl tbody th{width:30%}
  .s-kapcsolat .s-ct-closed{padding:1px 6px;margin:-1px -6px}
}

/* ==== 27-feltetelek.css ==== */
/* ==== 27 FELTÉTELEK: dokument-strana bez fotke ====
   Sve scoped na .s-ft. Jedna sekcija (--bg + .tex), 12-kolonska mreža u .wrap:
   head (1/-1) → „Röviden“ (1/-1) → sticky sadržaj (1/4) + dokument (4/11, max 720px).
   <1000: jedna kolona, sadržaj postaje čip red ISPOD h1 (grid order), „Röviden“ ispod njega.
   MOTION: jedini, tihi, skrol-vezani momenat = crvena traka NEM. bloka se spušta + „NEM.“ se pojavljuje
   (view() → .s-io.in fallback → reduced-motion = završno stanje). Scroll-spy samo menja klasu, bez tranzicije. */
.s-ft{background:var(--bg);color:var(--txt)}
.s-ft-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:0 32px;align-items:start}

/* ---------- h1 + jedan red + datum ---------- */
.s-ft-head{grid-column:1/-1;order:1}
.s-ft h1{font-size:clamp(48px,6.5vw,104px);line-height:.92;margin:0;max-width:16ch}
.s-ft-upd{font:400 14px/1.4 var(--fb);margin:20px 0 0}

/* ---------- „Röviden“: 6 tipografskih činjenica, bez kutija ---------- */
.s-ft-short-wrap{grid-column:1/-1;order:2;margin-top:56px}
.s-ft-lbl{display:block;font:500 15px/1.3 var(--fb);color:var(--txt-2);margin:0 0 20px}
.s-ft-short{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.s-ft-short li{margin:0;padding:2px 0 2px 16px;border-left:1px solid var(--line);min-width:0}
.s-ft-short b{display:block;font:700 36px/1 var(--fd);letter-spacing:.005em;color:var(--txt);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.s-ft-short span{display:block;font:400 14px/1.4 var(--fb);color:rgba(243,241,236,.62);margin-top:8px;max-width:30ch}
.s-ft-short li.piros b{color:var(--piros)}

/* ---------- sadržaj (TOC): ≥1000 sticky lista, aktivna stavka = žuta leva linija ---------- */
.s-ft-toc{grid-column:1/4;order:3;position:sticky;top:96px;align-self:start;margin-top:clamp(56px,7vw,96px)}
.s-ft-toc b{display:block;font:600 15px/1.3 var(--fb);color:var(--txt);margin:0 0 12px}
.s-ft-toc ul{list-style:none;margin:0;padding:0}
.s-ft-toc li{margin:0}
.s-ft-toc a.s-chip{display:block;font:400 15px/1.35 var(--fb);color:var(--txt-2);background:transparent;border:0;border-left:2px solid transparent;border-radius:0;padding:7px 0 7px 14px;margin:0;text-decoration:none;transition:none;white-space:normal}
.s-ft-toc a.s-chip:hover{color:var(--txt);border-left-color:transparent;background:transparent}
.s-ft-toc a.s-chip.is-on{color:var(--txt);border-left-color:var(--fultok);background:transparent;font-weight:500}

/* ---------- dokument: 720px mere ---------- */
.s-ft-doc{grid-column:4/11;order:4;max-width:720px;margin-top:clamp(56px,7vw,96px)}
/* html{scroll-padding-top:90px} iz style.css + 30px = naslov staje 120px ispod vrha, ispod headera i pre i posle skupljanja (112/62px) */
.s-ft-doc h2{font:700 clamp(26px,2.6vw,36px)/1.05 var(--fd);text-transform:uppercase;letter-spacing:.005em;color:var(--txt);margin:56px 0 16px;scroll-margin-top:30px}
.s-ft-doc>h2:first-child{margin-top:0}
.s-ft-doc p{font:400 17px/1.6 var(--fb);color:var(--txt-2);margin:0 0 1em}
.s-ft-doc ul,.s-ft-doc ol{margin:0 0 1em;padding-left:22px;font:400 17px/1.6 var(--fb);color:var(--txt-2)}
.s-ft-doc ul{list-style:disc}
.s-ft-doc li{margin:0 0 6px}

/* tabela avansa (posle „Előleg és fizetés“) */
.s-ft-tbl{width:100%;border-collapse:collapse;margin:24px 0 32px;font:400 16px/1.45 var(--fb);color:var(--txt-2)}
.s-ft-tbl caption{caption-side:top;text-align:left;font:600 15px/1.3 var(--fb);color:var(--txt);padding:0 0 12px}
.s-ft-tbl td{padding:12px 0;border-bottom:1px solid var(--line);vertical-align:top}
.s-ft-tbl tr:first-child td{border-top:1px solid var(--line)}
.s-ft-tbl td:last-child{text-align:right;white-space:nowrap;padding-left:24px;font:500 20px/1.2 var(--fd);color:var(--txt);font-variant-numeric:tabular-nums}
.s-ft-tbl .s-ft-tbl-pay td{text-align:left;white-space:normal;padding-left:0;font:400 16px/1.45 var(--fb);color:var(--txt-2)}
.s-ft-tbl .s-ft-tbl-pay b{font-weight:600;color:var(--txt)}

/* crveni NEM. blok (posle „Életkori korlátozás“) — traka je ::before da bi se mogla animirati */
.s-ft-preg{position:relative;background:var(--bg3);padding:20px 24px 20px 30px;margin:8px 0 32px;border-left:0}
.s-ft-preg::before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:var(--piros);transform-origin:50% 0}
.s-ft-preg b{display:block;font:700 40px/1 var(--fd);letter-spacing:.005em;color:var(--piros);margin:0 0 10px}
.s-ft-preg p{font:500 17px/1.5 var(--fb);color:var(--txt);margin:0;max-width:60ch}

/* ---------- FAQ #gyik: 4 grupe, details bez okvira ---------- */
/* padding eksplicitno sa svih strana: style.css daje generičkom <section> svoj padding, ugnježdena sekcija ga ne sme naslediti */
.s-ft-faq{margin:72px 0 0;padding:56px 0 0;border-top:1px solid var(--line)}
.s-ft-doc .s-ft-faq h2{margin:0 0 40px;scroll-margin-top:30px}
.s-ft-group+.s-ft-group{margin-top:40px}
.s-ft-group h3{font:500 22px/1.15 var(--fd);text-transform:none;letter-spacing:0;color:var(--txt);margin:0 0 4px}
.s-ft-q{margin:0;border-bottom:1px solid var(--line)}
.s-ft-q summary{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;cursor:pointer;list-style:none;padding:16px 0;font:500 19px/1.3 var(--fd);text-transform:none;letter-spacing:0;color:var(--txt)}
.s-ft-q summary::-webkit-details-marker{display:none}
.s-ft-q summary::marker{content:""}
.s-ft-q summary:hover span{text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}
.s-ft-q .s-ft-ic{width:18px;height:18px;flex:0 0 18px;margin-top:5px;stroke-width:2;transition:transform .2s var(--m-ease,cubic-bezier(.2,.7,.2,1))}
.s-ft-q[open] .s-ft-ic{transform:rotate(45deg)}
.s-ft-doc .s-ft-q p{margin:0;padding:0 0 20px;font:400 16px/1.55 var(--fb);color:var(--txt-2);max-width:62ch}
.s-ft-doc .s-ft-faqp{margin:40px 0 0;font:400 15px/1.5 var(--fb);color:var(--txt-2)}

/* ---------- MOTION (jedini momenat strane) ---------- */
@keyframes s-ft-bar{from{transform:scaleY(0)}to{transform:scaleY(1)}}
@keyframes s-ft-fade{from{opacity:0}to{opacity:1}}
@supports (animation-timeline: view()){
  .s-ft-preg{view-timeline-name:--s-ft-preg;view-timeline-axis:block}
  .s-ft-preg::before{animation:s-ft-bar linear both;animation-timeline:--s-ft-preg;animation-range:entry 0% cover 30%}
  .s-ft-preg b{animation:s-ft-fade linear both;animation-timeline:--s-ft-preg;animation-range:entry 60% cover 32%}
}
@supports not (animation-timeline: view()){
  .s-ft.s-ft-js .s-ft-preg::before{transform:scaleY(0);transition:transform var(--m-dur,.9s) var(--m-ease,cubic-bezier(.2,.7,.2,1))}
  .s-ft.s-ft-js .s-ft-preg b{opacity:0;transition:opacity .6s var(--m-ease,cubic-bezier(.2,.7,.2,1)) .3s}
  .s-ft.s-ft-js .s-ft-preg.in::before{transform:none}
  .s-ft.s-ft-js .s-ft-preg.in b{opacity:1}
}
.s-ft-preg.s-vis::before{will-change:transform}
@media (prefers-reduced-motion:reduce){
  .s-ft-preg::before,.s-ft.s-ft-js .s-ft-preg::before{animation:none;transition:none;transform:none;will-change:auto}
  .s-ft-preg b,.s-ft.s-ft-js .s-ft-preg b{animation:none;transition:none;opacity:1}
  .s-ft-q .s-ft-ic{transition:none}
}

/* ---------- <1000: jedna kolona, čip red ispod h1 ---------- */
@media (max-width:999px){
  .s-ft-grid{gap:0 20px}
  .s-ft-head,.s-ft-toc,.s-ft-short-wrap,.s-ft-doc{grid-column:1/-1}
  .s-ft-toc{order:2;position:static;margin-top:28px}
  .s-ft-toc b{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}
  .s-ft-toc ul{display:flex;gap:8px;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-webkit-overflow-scrolling:touch;margin:0 calc(-1*var(--gut));padding:6px var(--gut);scroll-padding:0 var(--gut)}
  .s-ft-toc ul::-webkit-scrollbar{display:none}
  .s-ft-toc li{flex:0 0 auto}
  .s-ft-toc a.s-chip{display:inline-flex;font:500 15px/1.2 var(--fb);color:var(--txt);border:1px solid var(--line-2);border-radius:999px;padding:9px 14px;white-space:nowrap}
  .s-ft-toc a.s-chip:hover{border-color:var(--txt);color:var(--txt)}
  .s-ft-toc a.s-chip.is-on{background:var(--txt);color:var(--ink);border-color:var(--txt);font-weight:500}
  .s-ft-short-wrap{order:3;margin-top:40px}
  .s-ft-doc{order:4;margin-top:56px}
}
@media (max-width:700px){
  .s-ft-short{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px}
}
@media (max-width:600px){
  .s-ft-grid{gap:0 16px}
  .s-ft-short b{font-size:30px}
  .s-ft-doc h2{margin-top:48px}
  .s-ft-preg{padding:18px 18px 18px 24px}
  .s-ft-preg b{font-size:36px}
  .s-ft-tbl td:last-child{font-size:18px;padding-left:16px}
  .s-ft-faq{margin-top:56px;padding-top:48px}
  .s-ft-q summary{font-size:18px;gap:14px}
}

@media print{
  .s-ft-toc{display:none}
  .s-ft-doc{max-width:none}
  .s-ft-preg::before,.s-ft-preg b{animation:none;transition:none;transform:none;opacity:1}
}

/* ==== 30-rhythm.css ==== */
/* 30-rhythm: ritam pozadina po sekcijama (tamni beton / ravna tamna / svetli papir / topla tamna / plavi blok / foto),
   + dekorativni motivi strelišta (target prstenovi, hazard pruga). Učitava se posle svih sekcijskih fajlova. */

/* --- svetle („papir“) sekcije: prepis tokena na korenu --- */
.s-steps-sec,.s-rev,.s-pd-guns,.s-arm-bar,.s-arm-body,.s-rolunk .s-about-how,.s-kapcsolat .s-ct-find,.s-ft-doc{
  --bg:var(--paper);--bg2:#e4e1d9;--bg3:#fff;--panel:#fff;
  --txt:var(--ink);--txt-2:#4b5058;--txt-3:#6b7079;
  --line:rgba(21,24,28,.12);--line-2:rgba(21,24,28,.24);
  background:var(--paper);color:var(--ink)}
.s-steps-sec.tex::before,.s-steps-sec.tex::after,.s-rev.tex::before,.s-rev.tex::after,.s-pd-guns.tex::before,.s-pd-guns.tex::after,.s-arm-body.tex::before,.s-arm-body.tex::after{display:none}
.s-steps-sec .s-muted,.s-rev .s-muted,.s-pd-guns .s-muted,.s-arm-body .s-muted,.s-arm-bar .s-muted,.s-rolunk .s-about-how .s-muted,.s-kapcsolat .s-ct-find .s-muted,.s-ft-doc .s-muted{color:#5a6069}
.s-rev .s-rev-note{color:var(--ink);border-left-color:var(--kek)}
.s-rev .s-rev-more:hover,.s-rev .s-link:hover{color:var(--kek)}
.s-rev-lang{border-color:var(--line-2)}
/* koraci na papiru: putanja i aktivni broj plavi umesto žuti */
.s-steps-sec .s-steps-line{stroke:var(--kek)}
.s-steps-sec .s-steps-node b::after{color:var(--kek)}
.s-steps-sec .s-steps-node .badge{border-color:var(--line-2)}
/* oružarnica na papiru */
.s-arm-bar{border-bottom-color:var(--line-2)}
.s-arm-search input{background:#fff;color:var(--ink);border-color:var(--line-2)}
.s-arm-search input::placeholder{color:#7a7f87}
.s-arm-search input:focus{border-color:var(--kek)}
.s-arm-bar .tabs a{color:var(--ink);border-color:var(--line-2)}
.s-arm-bar .tabs a:hover{background:var(--kek);border-color:var(--kek);color:#fff}
.s-arm-body .s-tile,.s-pd-guns .s-tile{box-shadow:0 1px 0 rgba(0,0,0,.06),0 10px 24px rgba(0,0,0,.08)}
.s-arm-body .inv li{background:transparent;border:0;padding:0}
.s-arm-body .arm-sec{border-top-color:var(--line-2)}
/* uslovi: telo dokumenta na papiru, ostatak strane tamno */
.s-ft-doc{padding:clamp(40px,5vw,72px) 0}

/* --- tople / brend varijante tamnih sekcija --- */
.s-gift{background:radial-gradient(110% 90% at 82% 42%,#242013 0%,#161410 55%,#0f1114 100%)}
.s-gift.tex::before{opacity:.06}
.s-faq{background:linear-gradient(160deg,#0d3f84 0%,#072a5a 60%,#051f44 100%)}
.s-faq.tex-strong::before{opacity:.12;mix-blend-mode:overlay}
.s-faq-q::after{background:rgba(255,255,255,.28)}
.s-pk{background:var(--bg)}
.s-intro{background:var(--bg2)}
.s-strip{background:#0a0c0e}

/* --- target prstenovi kao pozadinska grafika (jednom na svetloj, jednom na tamnoj) --- */
.s-rev{position:relative;overflow:hidden}
.s-rev::after{content:"";position:absolute;right:-18vw;top:50%;width:min(78vw,900px);aspect-ratio:1;transform:translateY(-50%);border-radius:50%;
  background:repeating-radial-gradient(circle,transparent 0 62px,rgba(21,24,28,.07) 62px 64px);pointer-events:none;z-index:0}
.s-rev>.wrap{position:relative;z-index:1}
.s-strip{position:relative;overflow:hidden}
.s-strip::before{content:"";position:absolute;left:-22vw;top:-30%;width:min(70vw,820px);aspect-ratio:1;border-radius:50%;
  background:repeating-radial-gradient(circle,transparent 0 62px,rgba(255,255,255,.045) 62px 64px);pointer-events:none;z-index:0}
.s-strip>.wrap{position:relative;z-index:1}

/* --- hazard pruga (žuto/crno) kao motiv strelišta: ivica marquee trake i footer CTA --- */
.s-hazard{height:8px;background:repeating-linear-gradient(135deg,var(--fultok) 0 16px,#111 16px 32px)}
.s-base-cta{position:relative}
.s-base-cta::before{content:"";position:absolute;left:0;right:0;top:0;height:8px;background:repeating-linear-gradient(135deg,var(--fultok) 0 16px,#111 16px 32px);z-index:2}

/* --- popravke posle pregleda --- */
.s-ft-doc{padding:clamp(28px,4vw,56px)!important;border-radius:6px}
.s-kapcsolat .s-ct-find .s-ct-line,.s-kapcsolat .s-ct-find [class*="line"]{color:var(--kek);border-color:var(--kek)}
.s-kapcsolat .s-ct-find .s-ct-dot{border-color:var(--kek);background:var(--paper)}
.s-kapcsolat .s-ct-find b,.s-kapcsolat .s-ct-find .s-ct-n{color:var(--kek)}
.s-kapcsolat .s-ct-find [style*="fultok"],.s-kapcsolat .s-ct-find .s-ct-dash{border-color:var(--kek)}
/* hero staje u prvi ekran ispod topbara+headera (112 px) */
.s-hero{min-height:clamp(620px,calc(100svh - 112px),900px)}
/* topbar status na malim ekranima: prelama se umesto elipse */
@media (max-width:600px){.topbar .wrap{min-height:auto;padding-top:6px;padding-bottom:6px}.s-base-open [data-open-text]{white-space:normal;overflow:visible;text-overflow:clip;line-height:1.3}}
/* vaučer kartica: tekst ostaje u zlatnom rubu na 360–430 px */
@media (max-width:430px){.s-gift-face{padding:3% 4%}.s-gift-t{font-size:14px!important}.s-gift-s{font-size:10px!important}.s-gift-val{font-size:17px!important}.s-gift-face-bot{font-size:9.5px!important;max-width:64%}}
/* csomagok: samo jedna CTA traka (bazna, sa čaurama) */
.s-pkcta{display:none}
/* rolunk naslov: akcenti se ne sudaraju u dva reda */
.s-rolunk h2{line-height:1.03}
/* package: bez gradijenta preko postera; činjenice smeju da se prelome */
.s-pd-cov::after{display:none}
.s-pd-facts li b{white-space:normal}
/* strip: putovanje počinje kasnije, pa se prvi i poslednji kadrovi vide */
@media (min-width:901px){@supports (animation-timeline: view()){.s-strip-track{animation-range:entry 70% exit 30%}}}
.s-kapcsolat .s-ct-find .s-ct-stop::before{border-top-color:var(--kek)}
.s-kapcsolat .s-ct-find .s-ct-dot::after,.s-kapcsolat .s-ct-find .s-ct-stop>b::after{color:var(--kek);background:var(--kek)}
.s-kapcsolat .s-ct-find .s-ct-stop>b::after{background:transparent}
/* footer: ravna crna podloga bez teksture, tanka linija na vrhu */
.s-base-foot,.s-base-foot.tex{background:#0a0c0e;border-top:1px solid rgba(255,255,255,.08)}
.s-base-foot.tex::before,.s-base-foot.tex::after{display:none}
/* bez dekorativnih vertikalnih linija (AI potpis) */
.s-kapcsolat .s-ct-taxi,.s-kapcsolat .s-ct-bkk,.s-rev-note,.s-gv-status,.s-bk-msg,.s-ft-short li,.s-gv-step,.s-pd-facts li,.s-rev-item,.s-rev1-quote{border-left:0}
.s-kapcsolat .s-ct-taxi,.s-kapcsolat .s-ct-bkk,.s-gv-step{padding-left:0}
.s-rev-note,.s-gv-status,.s-bk-msg{padding-left:0;background:transparent}
.s-bk-msg{padding:12px 0 0}
.s-ft-short li{padding-left:0}
.s-pd-facts li{padding-left:0;padding-right:20px}
.s-rev-item{padding-left:0}
.s-rev1-quote{padding-left:0}
/* oružarnica: aktivni čip plav sa belim tekstom */
.s-arm-bar .tabs a.is-on{background:var(--kek);border-color:var(--kek);color:#fff}
.s-arm-bar .tabs a .s-arm-chip-n{color:#7a7f87}
.s-arm-bar .tabs a.is-on .s-arm-chip-n{color:rgba(255,255,255,.8)}

/* ==== 31-lightbox.css ==== */
/* 31-lightbox: uvećan prikaz oružja i fotografija */
.s-lb-btn{cursor:zoom-in;position:relative;border:0;font:inherit;color:inherit;text-align:left;display:block;width:100%}
.s-lb-btn::after{content:"";position:absolute;right:10px;bottom:10px;width:30px;height:30px;border-radius:50%;background:var(--kek) url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2.2' stroke-linecap='round'><circle cx='11' cy='11' r='6'/><path d='M11 8v6M8 11h6M20 20l-4-4'/></svg>") center/16px no-repeat;opacity:0;transform:scale(.8);transition:opacity .15s,transform .15s}
.s-lb-btn:hover::after,.s-lb-btn:focus-visible::after{opacity:1;transform:scale(1)}
.s-lb-btn:focus-visible{outline:3px solid var(--fultok);outline-offset:2px}
.s-lb{position:fixed;inset:0;z-index:200;display:none;align-items:center;justify-content:center;padding:24px}
.s-lb.open{display:flex}
.s-lb-bd{position:absolute;inset:0;background:rgba(6,8,10,.86);backdrop-filter:blur(8px)}
.s-lb-fig{position:relative;margin:0;width:min(1100px,100%);max-height:100%;display:grid;grid-template-rows:minmax(0,1fr) auto;background:var(--bg3);border-radius:8px;overflow:hidden;box-shadow:0 40px 90px rgba(0,0,0,.7);animation:s-lb-in .22s cubic-bezier(.2,.7,.2,1)}
@keyframes s-lb-in{from{opacity:0;transform:translateY(14px) scale(.98)}}
.s-lb-img{background:#fff;display:grid;place-items:center;min-height:min(60vh,560px);max-height:72vh;padding:clamp(16px,4vw,48px)}
.s-lb-img img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}
.s-lb.is-photo .s-lb-img{background:#000;padding:0}
.s-lb.is-photo .s-lb-fig{background:#0a0c0e}
.s-lb figcaption{display:grid;grid-template-columns:1fr auto;gap:4px 24px;align-items:end;padding:16px 22px 18px;border-top:1px solid var(--line)}
.s-lb figcaption b{font:700 clamp(20px,2.2vw,28px)/1.05 var(--fd);text-transform:uppercase;color:var(--txt)}
.s-lb figcaption span{font:400 15px/1.4 var(--fb);color:var(--txt-2)}
.s-lb figcaption em{grid-column:2;grid-row:1/3;font:700 clamp(20px,2vw,26px)/1 var(--fd);font-style:normal;color:var(--fultok);white-space:nowrap}
.s-lb figcaption em:empty{display:none}
.s-lb figcaption small{grid-column:1/-1;font:500 12px/1 var(--fb);letter-spacing:.06em;color:var(--txt-3);margin-top:6px}
.s-lb-x,.s-lb-p,.s-lb-n{position:absolute;z-index:2;width:46px;height:46px;border-radius:50%;border:0;background:rgba(10,12,14,.8);color:#fff;font:400 30px/1 var(--fb);cursor:pointer;display:grid;place-items:center;transition:background .15s}
.s-lb-x:hover,.s-lb-p:hover,.s-lb-n:hover{background:var(--kek)}
.s-lb-x{top:12px;right:12px}
.s-lb-p{left:12px;top:50%;transform:translateY(-50%)}
.s-lb-n{right:12px;top:50%;transform:translateY(-50%)}
.s-lb.single .s-lb-p,.s-lb.single .s-lb-n{display:none}
body.s-lb-open{overflow:hidden}
@media (max-width:600px){.s-lb{padding:0}.s-lb-fig{border-radius:0;width:100%;height:100%;max-height:none}.s-lb-img{max-height:none}.s-lb figcaption{grid-template-columns:1fr;padding:14px 16px 18px}.s-lb figcaption em{grid-column:1;grid-row:auto}.s-lb-p,.s-lb-n{top:auto;bottom:100px;transform:none}}
.s-strip-lb{height:100%;padding:0}
.s-strip-lb img{height:100%}
.s-lb-btn.s-tile{padding:12px}

/* ==== 32-marquee.css ==== */
/* 32-marquee: traka sa činjenicama ispod hero-a, blago nagnuta, žuto na crnom, hazard ivice */
.s-mq-wrap{position:relative;overflow:hidden;background:var(--bg);padding:0;margin-top:-1px}
.s-mq{background:#0a0c0e;color:var(--fultok);position:relative;z-index:2}
.s-mq-track{display:flex;align-items:center;gap:0;width:max-content;padding:14px 0;animation:s-mq 42s linear infinite;will-change:transform}
.s-mq:hover .s-mq-track{animation-play-state:paused}
.s-mq-it{font-family:var(--fd);font-weight:500;font-size:clamp(17px,1.5vw,22px);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;padding:0 18px}
.s-mq-sep{display:inline-flex;color:rgba(245,197,24,.55)}
.s-mq-sep .ic{width:16px;height:16px}
@keyframes s-mq{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.s-mq-track{animation:none;width:auto;flex-wrap:wrap;justify-content:center;gap:6px 0}}
@media (max-width:600px){.s-mq-track{padding:11px 0}}

/* ==== 33-extras.css ==== */
/* 33-extras: hover oružje na karticama, kviz, uporedna tabela, sledeći termin, Instagram traka, nišan kursor */
.s-pkc-cov{position:relative;overflow:hidden}
.s-pkc-guns{position:absolute;left:0;right:0;top:0;z-index:3;display:grid;grid-template-columns:repeat(4,1fr);gap:6px;padding:10px 10px 12px;background:rgba(10,12,14,.94);transform:translateY(-102%);transition:transform .32s cubic-bezier(.2,.7,.2,1);pointer-events:none}
.s-pkc-guns img{width:100%;aspect-ratio:4/3;object-fit:contain;background:#fff;border-radius:3px;padding:4px}
.s-pkc-guns span{grid-column:1/-1;font:500 13px/1.2 var(--fd);letter-spacing:.06em;text-transform:uppercase;color:var(--fultok)}
.s-pkc:hover .s-pkc-guns,.s-pkc:focus-within .s-pkc-guns{transform:none}
@media (hover:none){.s-pkc-guns{display:none}}
.s-lb-img{cursor:crosshair}

/* kviz */
.s-quiz{background:var(--bg2);position:relative;overflow:hidden}
.s-quiz::after{content:"";position:absolute;right:-14vw;bottom:-30%;width:min(60vw,760px);aspect-ratio:1;border-radius:50%;background:repeating-radial-gradient(circle,transparent 0 62px,rgba(255,255,255,.04) 62px 64px);pointer-events:none}
.s-quiz-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(32px,5vw,72px);align-items:start}
@media (max-width:900px){.s-quiz-grid{grid-template-columns:1fr}}
.s-quiz-q{border:0;margin:0;padding:26px 0 0}
.s-quiz-q legend{font:500 22px/1.15 var(--fd);text-transform:uppercase;letter-spacing:.02em;color:var(--txt);display:flex;gap:12px;align-items:baseline;padding:0;margin-bottom:12px}
.s-quiz-q legend span{font:700 14px/1 var(--fd);color:var(--bg);background:var(--fultok);border-radius:50%;width:24px;height:24px;display:inline-grid;place-items:center;flex:0 0 auto;transform:translateY(-3px)}
.s-quiz-opts{display:flex;flex-wrap:wrap;gap:8px}
.s-quiz-opts label{position:relative;cursor:pointer}
.s-quiz-opts input{position:absolute;opacity:0;width:1px;height:1px}
.s-quiz-opts span{display:inline-block;padding:11px 16px;border:1px solid var(--line-2);border-radius:999px;font:500 15px/1 var(--fb);color:var(--txt);transition:background .15s,border-color .15s,color .15s}
.s-quiz-opts label:hover span{border-color:var(--txt)}
.s-quiz-opts input:checked+span{background:var(--kek);border-color:var(--kek);color:#fff}
.s-quiz-opts input:focus-visible+span{outline:3px solid var(--fultok);outline-offset:2px}
.s-quiz-reset{margin-top:22px;background:none;border:0;padding:0;cursor:pointer;font:600 15px/1.3 var(--fb);color:var(--txt);text-decoration:underline;text-underline-offset:3px}
.s-quiz-res{position:sticky;top:110px}
.s-quiz-empty{border:1px dashed var(--line-2);border-radius:8px;padding:40px 28px;text-align:center;color:var(--txt-2);font:400 16px/1.5 var(--fb)}
.s-quiz-empty .ic{width:44px;height:44px;color:var(--fultok);margin-bottom:12px}
.s-quiz-card{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);background:var(--bg3);border-radius:8px;overflow:hidden;box-shadow:var(--shadow);animation:s-lb-in .3s cubic-bezier(.2,.7,.2,1)}
.s-quiz-cov{display:block;aspect-ratio:3/4;background:#000}
.s-quiz-cov img{width:100%;height:100%;object-fit:cover}
.s-quiz-body{padding:22px 22px 20px;display:flex;flex-direction:column;gap:6px}
.s-quiz-lbl{font:500 12px/1 var(--fd);letter-spacing:.14em;text-transform:uppercase;color:var(--fultok)}
.s-quiz-name{font:700 clamp(26px,2.6vw,34px)/1 var(--fd);text-transform:uppercase;margin:4px 0 0}
.s-quiz-meta{margin:0;font:400 14px/1.4 var(--fb)}
.s-quiz-price{margin:6px 0 0;font:400 14px/1.2 var(--fb)}
.s-quiz-price b{font:700 26px/1 var(--fd);color:var(--txt);margin-right:6px}
.s-quiz-acts{display:flex;gap:14px;align-items:center;margin:10px 0 0;flex-wrap:wrap}
.s-quiz-altp{margin:12px 0 0;font:400 13.5px/1.4 var(--fb)}
.s-quiz-altp a{color:var(--txt);text-decoration:underline;text-underline-offset:3px}
.s-quiz-many{margin:8px 0 0;font:400 13px/1.45 var(--fb)}
@media (max-width:560px){.s-quiz-card{grid-template-columns:1fr}.s-quiz-cov{aspect-ratio:16/10}.s-quiz-res{position:static}}

/* uporedna tabela (papir) */
.s-cmp{--txt:var(--ink);--txt-2:#4b5058;--txt-3:#6b7079;--line:rgba(21,24,28,.12);--line-2:rgba(21,24,28,.24);background:var(--paper);color:var(--ink)}
.s-cmp .s-muted{color:#5a6069}
.s-cmp-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--line-2);border-radius:8px;background:#fff}
.s-cmp-t{width:100%;min-width:760px;border-collapse:collapse;font:400 15px/1.3 var(--fb)}
.s-cmp-t th,.s-cmp-t td{padding:12px 14px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}
.s-cmp-t thead th{font:500 12.5px/1 var(--fd);letter-spacing:.1em;text-transform:uppercase;color:var(--txt-3);background:#f6f4ef;position:sticky;top:0}
.s-cmp-t .num{text-align:right;font-variant-numeric:tabular-nums}
.s-cmp-t tbody th{font:500 16px/1.1 var(--fd);text-transform:uppercase;letter-spacing:.02em;position:sticky;left:0;background:#fff;box-shadow:1px 0 0 var(--line)}
.s-cmp-t tbody th a{display:flex;align-items:center;gap:12px;color:var(--ink);text-decoration:none}
.s-cmp-t tbody th a:hover{color:var(--kek)}
.s-cmp-t tbody th img{width:34px;height:42px;object-fit:cover;border-radius:3px;flex:0 0 auto}
.s-cmp-t tbody tr:hover td,.s-cmp-t tbody tr:hover th{background:#f6f4ef}
.s-cmp-t td b{font:700 17px/1 var(--fd);display:block}
.s-cmp-t td small{display:block;font-size:12px;color:var(--txt-3);margin-top:2px}
.s-cmp-note{margin:14px 0 0;font:400 14px/1.5 var(--fb)}

/* hero: sledeći termin */
.s-hero-next{color:var(--txt)}
.s-hero-next b{font:700 18px/1 var(--fd);color:var(--fultok);margin-left:6px;letter-spacing:.02em}

/* Instagram traka */
.s-ig{background:var(--bg);padding:clamp(56px,7vw,96px) 0 0;overflow:hidden}
.s-ig-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:28px}
.s-ig-head .s-h2{font-size:clamp(30px,3.6vw,48px)}
.s-ig-head .s-h2-sub a{color:var(--txt-2);text-decoration:none}
.s-ig-head .s-h2-sub a:hover{color:var(--fultok)}
.s-ig-note{font:400 13px/1.4 var(--fb)}
.s-ig-row{display:grid;grid-template-columns:repeat(6,1fr);gap:4px}
.s-ig-row a{display:block;aspect-ratio:1;overflow:hidden;background:#000}
.s-ig-row img{width:100%;height:100%;object-fit:cover;transition:transform .4s,opacity .2s}
.s-ig-row a:hover img{transform:scale(1.05);opacity:.85}
@media (max-width:760px){.s-ig-row{grid-template-columns:repeat(3,1fr)}}
.s-quiz-form .s-h2{margin-bottom:8px}
.s-quiz-q{margin-top:30px;padding:0}
.s-quiz-q legend{margin-bottom:14px}
.s-quiz-card[hidden],.s-quiz-empty[hidden],.s-quiz-reset[hidden],.s-quiz-many[hidden]{display:none}

/* ==== 34-palette.css ==== */
/* 34-palette: bogatija paleta — tamne sekcije u plavo-noćnom tonu sa glow gradijentima, tople sekcije smeđe-zlatne, papir topla krem, dugmad sa dubinom */
:root{--bg:#0b1119;--bg2:#101a26;--bg3:#172332;--panel:#1b2836;--paper:#f0ebe0;--line:rgba(255,255,255,.1);--line-2:rgba(255,255,255,.2)}
body{background:var(--bg)}
.topbar{background:#060a10}
.s-mq{background:#060a10}
/* glow varijante: plavi sjaj iz ugla */
.s-pk,.s-csomagok .s-pkgrid,.s-pd,.s-kapcsolat .s-ct,.s-rolunk .s-about,.s-arm-foot,.s-gv-hero,.s-bk{background:radial-gradient(70% 60% at 12% 0%,rgba(0,113,220,.30) 0%,rgba(0,113,220,0) 60%),radial-gradient(45% 40% at 100% 100%,rgba(0,113,220,.14) 0%,rgba(0,113,220,0) 60%),var(--bg)}
.s-quiz{background:linear-gradient(180deg,#101a26 0%,#0c1420 100%)}
.s-quiz::after{background:repeating-radial-gradient(circle,transparent 0 62px,rgba(90,160,255,.07) 62px 64px)}
/* tople sekcije */
.s-intro{background:radial-gradient(62% 72% at 74% 50%,#2a2318 0%,#191712 42%,#0e1219 100%)}
.s-gift{background:radial-gradient(110% 90% at 82% 42%,#2c2414 0%,#191610 52%,#0e1219 100%)}
/* svetle sekcije: topla krem sa blagim padom */
.s-steps-sec,.s-rev,.s-pd-guns,.s-arm-body,.s-rolunk .s-about-how,.s-kapcsolat .s-ct-find,.s-cmp,.on-paper{background:linear-gradient(180deg,#f3eee3 0%,#e9e3d5 100%)}
.s-arm-bar{background:#f3eee3}
.s-ft-doc{background:#f3eee3}
.s-rev::after{background:repeating-radial-gradient(circle,transparent 0 62px,rgba(0,90,180,.09) 62px 64px)}
/* brend plava sekcija i FAQ: dublji gradijent */
.s-csomagok .s-custom{background:linear-gradient(135deg,#1287f6 0%,#0064c8 55%,#004a98 100%)}
.s-faq{background:linear-gradient(160deg,#0f4d9e 0%,#083472 55%,#062250 100%)}
/* foto traka i footer: najdublje */
.s-strip{background:#060a10}
.s-strip::before{background:repeating-radial-gradient(circle,transparent 0 62px,rgba(90,160,255,.06) 62px 64px)}
.s-ig{background:#0b1119}
.s-base-foot,.s-base-foot.tex{background:#05080d;border-top-color:rgba(255,255,255,.07)}
/* dugmad sa dubinom */
.btn-kek{background:linear-gradient(180deg,#1f8bf0 0%,#0068cc 100%);box-shadow:0 8px 22px rgba(0,113,220,.35),inset 0 1px 0 rgba(255,255,255,.25)}
.btn-kek:hover{background:linear-gradient(180deg,#3a9cf5 0%,#0a74dc 100%)}
.btn-piros{background:linear-gradient(180deg,#f2483f 0%,#cd2822 100%);box-shadow:0 8px 22px rgba(229,50,45,.35),inset 0 1px 0 rgba(255,255,255,.22)}
.btn-piros:hover{background:linear-gradient(180deg,#ff5a52 0%,#dc302a 100%)}
.btn-rez{background:linear-gradient(180deg,#e9c27a 0%,#b7823a 100%);box-shadow:0 8px 22px rgba(201,151,79,.3),inset 0 1px 0 rgba(255,255,255,.35)}
/* header: blagi vertikalni pad brend plave */
.top{background:linear-gradient(180deg,#0f7ae6 0%,#0066c8 100%)}
/* tekstura betona blaža na plavoj podlozi */
.tex::before{opacity:.07}
.tex-strong::before{opacity:.11}

/* ==== 35-extras2.css ==== */
/* 35-extras2: social, tok sesije, mini-korpa, plutajuća rezervacija, tim, promo */
.s-soc-top{display:flex;align-items:center;gap:4px;margin-left:auto;padding-right:14px;margin-right:12px;border-right:1px solid rgba(255,255,255,.14)}
.s-soc-top a{display:grid;place-items:center;width:32px;height:32px;color:rgba(255,255,255,.75);border-radius:6px;transition:color .15s,background .15s}
.s-soc-top a:hover{color:#fff;background:rgba(255,255,255,.1)}
.s-soc-top .ic{width:17px;height:17px}
.s-base-lang{margin-left:0}
@media (max-width:600px){.s-soc-top{padding-right:8px;margin-right:6px;gap:0}.s-soc-top a{width:28px;height:28px}.s-soc-top .ic{width:15px;height:15px}}
.s-base-soc{display:flex;flex-wrap:wrap;gap:8px 14px;margin:18px 0 0;padding:0;list-style:none}
.s-base-soc a{display:inline-flex;align-items:center;gap:8px;font:500 14px/1 var(--fb);color:var(--txt);text-decoration:none;padding:9px 12px;border:1px solid var(--line-2);border-radius:999px}
.s-base-soc a:hover{border-color:var(--fultok);color:var(--fultok);text-decoration:none}
.s-base-soc .ic{width:16px;height:16px}
/* tok sesije */
.s-tl{background:var(--bg2)}
.s-tl-list{list-style:none;margin:0;padding:0;display:grid;gap:26px}
.s-tl-list li{display:grid;grid-template-columns:56px minmax(0,1fr);gap:20px;align-items:start}
.s-tl-n{font:700 44px/1 var(--fd);color:var(--fultok)}
.s-tl-list h3{font:700 clamp(22px,2.2vw,28px)/1.05 var(--fd);text-transform:uppercase;margin:6px 0 8px}
.s-tl-list p{margin:0;font:400 16px/1.55 var(--fb);color:var(--txt-2);max-width:60ch}
.s-tl-guns{display:flex;gap:10px;overflow-x:auto;padding:16px 0 8px;scroll-snap-type:x proximity;scrollbar-width:thin}
.s-tl-guns span{position:relative;flex:0 0 150px;scroll-snap-align:start}
.s-tl-guns img{width:100%;aspect-ratio:4/3;object-fit:contain;background:#fff;border-radius:4px;padding:8px}
.s-tl-guns b{position:absolute;left:8px;top:8px;font:700 13px/1 var(--fd);background:var(--fultok);color:#111;border-radius:999px;padding:4px 7px}
.s-tl-guns small{display:block;margin-top:6px;font:500 12px/1.2 var(--fd);text-transform:uppercase;color:var(--txt-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
/* mini-korpa (oružarnica) */
.s-cart-add{margin-top:8px;font:500 13px/1 var(--fb);padding:8px 12px;border-radius:999px;border:1px solid var(--line-2);background:#fff;color:var(--ink);cursor:pointer;transition:background .15s,color .15s,border-color .15s}
.s-cart-add .b{display:none}
.s-cart-add[aria-pressed="true"]{background:var(--kek);border-color:var(--kek);color:#fff}
.s-cart-add[aria-pressed="true"] .a{display:none}.s-cart-add[aria-pressed="true"] .b{display:inline-flex;align-items:center;gap:6px}
.s-cart-add .ic{width:13px;height:13px}
.s-cart{position:fixed;left:0;right:0;bottom:0;z-index:48;background:#0b1119;color:var(--txt);border-top:2px solid var(--fultok);box-shadow:0 -14px 40px rgba(0,0,0,.5);animation:s-lb-in .25s}
.s-cart[hidden]{display:none}
.s-cart-in{display:flex;align-items:center;gap:18px;padding:12px 0;flex-wrap:wrap}
.s-cart-imgs{display:flex;gap:4px}
.s-cart-imgs img{width:44px;height:32px;object-fit:contain;background:#fff;border-radius:3px;padding:2px}
.s-cart-txt{display:flex;flex-direction:column;line-height:1.2}
.s-cart-txt b{font:700 16px/1 var(--fd);text-transform:uppercase}
.s-cart-cnt{font:500 14px/1.3 var(--fb);color:var(--txt)}
.s-cart-st{font:400 12.5px/1.3 var(--fb);color:var(--txt-3)}
.s-cart-sum{margin-left:auto;display:flex;flex-direction:column;align-items:flex-end;line-height:1.2}
.s-cart-base{font:400 12px/1.3 var(--fb);color:var(--txt-3)}
.s-cart-tot{font:700 22px/1 var(--fd);color:var(--fultok)}
.s-cart-pts{font:400 12px/1.3 var(--fb);color:var(--txt-3)}
.s-cart-book[aria-disabled="true"]{opacity:.45;pointer-events:none}
.s-cart-clear{background:transparent;border:1px solid var(--line-2);color:var(--txt);width:36px;height:36px;border-radius:50%;cursor:pointer;display:grid;place-items:center}
.s-cart-clear .ic{width:16px;height:16px}
body.s-cart-open .s-base-stickycta{display:none}
@media (max-width:700px){.s-cart-imgs{display:none}.s-cart-sum{margin-left:0}.s-cart-in{gap:10px}}
/* plutajuća rezervacija (desktop) */
.s-float{position:fixed;right:22px;bottom:22px;z-index:47;display:none;align-items:center;gap:12px;padding:10px 18px 10px 14px;border-radius:999px;background:linear-gradient(180deg,#f2483f,#cd2822);color:#fff;text-decoration:none;box-shadow:0 14px 34px rgba(229,50,45,.45);animation:s-lb-in .3s}
.s-float .ic{width:22px;height:22px}
.s-float span{display:flex;flex-direction:column;line-height:1.1}
.s-float b{font:700 16px/1 var(--fd);letter-spacing:.06em;text-transform:uppercase}
.s-float small{font:400 12px/1.2 var(--fb);opacity:.9}
.s-float:hover{filter:brightness(1.08)}
@media (min-width:901px){.s-float.show{display:flex}}
/* tim: omiljeno oružje */
.s-team-fav{display:block;margin-top:6px;font:400 13px/1.35 var(--fb);font-style:normal;color:var(--fultok)}
/* promo baner (klijent pali iz WP-a; ovde demo) */
.s-promo{background:var(--fultok);color:#111}
.s-promo[hidden]{display:none}
.s-promo .wrap{display:flex;align-items:center;gap:14px;min-height:40px;font:500 14px/1.3 var(--fb)}
.s-promo .wrap>span{display:inline-flex;align-items:center;gap:8px}
.s-promo .ic{width:16px;height:16px}
.s-promo-btn{font:700 13px/1 var(--fd);letter-spacing:.06em;text-transform:uppercase;color:#111;text-decoration:underline;text-underline-offset:3px}
.s-promo-x{margin-left:auto;background:transparent;border:0;cursor:pointer;color:#111;display:grid;place-items:center;width:28px;height:28px}
.s-promo-x .ic{width:16px;height:16px}
/* mobilni: „Menü“ pored hamburgera */
.burger{width:auto!important;min-width:48px;padding:0 14px 0 12px;gap:9px}
.burger-l{display:inline-block;font:700 14px/1 var(--fd);letter-spacing:.12em;text-transform:uppercase;color:#fff}
@media (min-width:901px){.burger{display:none!important}}

/* ==== 36-pages2.css ==== */
/* 36-pages2: grupe, hvala, 404, landing, print vaučer, animacija pogotka, prelazi, trust linija, lista prikaz, globalna korpa, zvuk */
.s-trust-line{margin:10px 0 0;font:400 13.5px/1.4 var(--fb);color:var(--txt-3)}
.s-hero-trustline{margin:14px 0 0;color:rgba(255,255,255,.75)}
.s-pd .s-trust-line{display:block;width:100%;margin-top:6px}
.s-bk .s-trust-line{margin-top:10px;text-align:center}
/* grupe */
.s-grp-ph .s-ph-in{padding-bottom:40px}
.s-grp{background:var(--bg)}
.s-grp-grid{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,6fr);gap:clamp(32px,5vw,72px);align-items:start}
@media (max-width:900px){.s-grp-grid{grid-template-columns:1fr}}
.s-lead{font:400 clamp(17px,1.4vw,20px)/1.55 var(--fb);color:var(--txt-2);max-width:58ch;margin:0}
.s-grp-facts{list-style:none;margin:30px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
@media (max-width:600px){.s-grp-facts{grid-template-columns:1fr 1fr}}
.s-grp-facts b{display:block;font:700 clamp(38px,4vw,56px)/1 var(--fd);color:var(--fultok)}
.s-grp-facts span{display:block;margin-top:4px;font:400 14px/1.3 var(--fb);color:var(--txt-2)}
.s-grp-who{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.s-grp-who li{background:var(--bg3);border-radius:8px;padding:22px 24px}
.s-grp-who h3{font:700 22px/1.05 var(--fd);text-transform:uppercase;margin:0 0 6px}
.s-grp-who p{margin:0;font:400 15px/1.5 var(--fb);color:var(--txt-2)}
.s-grp-flow{background:var(--bg2)}
.s-grp-pk{background:linear-gradient(180deg,#f3eee3 0%,#e9e3d5 100%);--txt:var(--ink);--txt-2:#4b5058;--txt-3:#6b7079;color:var(--ink)}
.s-grp-pk .s-muted{color:#5a6069}
.s-grp-pkg{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
@media (max-width:1000px){.s-grp-pkg{grid-template-columns:repeat(2,1fr)}}
.s-grp-form{background:var(--bg)}
.s-grp-form-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,5vw,72px);align-items:start}
@media (max-width:900px){.s-grp-form-grid{grid-template-columns:1fr}}
.s-grp-photo{margin-top:26px;border-radius:8px;overflow:hidden}
.s-grp-photo img{aspect-ratio:16/10;object-fit:cover}
.s-grp-f{margin:0}
.s-grp-f .btn{margin-top:18px}
.s-grp-ok{margin:14px 0 0;font:500 15px/1.4 var(--fb);color:var(--fultok)}
/* hvala + 404 */
.s-ty,.s-404{background:var(--bg);min-height:70vh;display:flex;align-items:center}
.s-ty-grid,.s-404-grid{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:clamp(32px,5vw,72px);align-items:center}
@media (max-width:860px){.s-ty-grid,.s-404-grid{grid-template-columns:1fr}}
.s-ty-target,.s-404-target{position:relative;aspect-ratio:1;border-radius:8px;overflow:hidden;background:#6b5a3e;max-width:420px}
.s-ty-target img,.s-404-target img{width:100%;height:100%;object-fit:cover;object-position:50% 46%}
.s-ty-hole,.s-404-hole{position:absolute;left:50%;top:50%;width:34px;height:34px;margin:-17px 0 0 -17px;border-radius:50%;background:#2a2118;box-shadow:inset 0 0 0 3px #d9cdb5,0 0 0 6px rgba(0,0,0,.25);animation:s-hole-in .4s .5s cubic-bezier(.2,.9,.3,1.4) both}
.s-404-hole{left:24%;top:30%}
.s-404-target b{position:absolute;right:18px;bottom:10px;font:700 96px/1 var(--fd);color:rgba(20,16,10,.85)}
@keyframes s-hole-in{from{transform:scale(0);opacity:0}}
.s-ty-h3{font:700 22px/1.1 var(--fd);text-transform:uppercase;margin:30px 0 14px}
.s-ty-list li{gap:14px}.s-ty-list .s-tl-n{font-size:30px}.s-ty-list h3{font-size:20px;margin:4px 0 2px}.s-ty-list p{font-size:15px}
.s-ty-acts{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-top:28px}
.s-404-links{list-style:none;margin:22px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.s-404-links a{display:inline-block;padding:10px 16px;border:1px solid var(--line-2);border-radius:999px;color:var(--txt);text-decoration:none;font:500 15px/1 var(--fb)}
.s-404-links a:hover{background:var(--kek);border-color:var(--kek);color:#fff}
/* landing */
.s-lp-body{background:var(--bg)}
.s-lp-top{background:linear-gradient(180deg,#0f7ae6,#0066c8)}
.s-lp-top .wrap{display:flex;align-items:center;justify-content:space-between;min-height:70px}
.s-lp-hero{min-height:min(80svh,760px)}
.s-lp-pk{background:linear-gradient(180deg,#f3eee3,#e9e3d5);--txt:var(--ink);--txt-2:#4b5058;color:var(--ink)}
.s-lp-pk .s-muted{color:#5a6069}
.s-lp-pkg{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
@media (max-width:800px){.s-lp-pkg{grid-template-columns:1fr}}
.s-lp-card{display:grid;grid-template-columns:120px 1fr;gap:16px;background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 10px 30px rgba(0,0,0,.08)}
.s-lp-card img{width:100%;height:100%;object-fit:cover}
.s-lp-card>div{padding:16px 16px 16px 0}
.s-lp-card h3{font:700 24px/1 var(--fd);text-transform:uppercase;margin:0 0 4px}
.s-lp-card p{margin:0 0 4px;font:400 14px/1.4 var(--fb)}
.s-lp-price b{font:700 22px/1 var(--fd)}
.s-lp-card .btn{margin-top:10px}
.s-lp-why{background:var(--bg2)}
.s-lp-whyl{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:22px 40px}
@media (max-width:700px){.s-lp-whyl{grid-template-columns:1fr}}
.s-lp-whyl li{display:flex;gap:14px;align-items:flex-start}
.s-lp-whyl .ic{width:26px;height:26px;color:var(--fultok);flex:0 0 auto;margin-top:2px}
.s-lp-whyl h3{font:700 22px/1.05 var(--fd);text-transform:uppercase;margin:0 0 4px}
.s-lp-whyl p{margin:0;font:400 15px/1.5 var(--fb);color:var(--txt-2)}
.s-lp-rev{background:var(--bg)}
.s-lp-revs{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
@media (max-width:800px){.s-lp-revs{grid-template-columns:1fr}}
.s-lp-revs blockquote{margin:0;background:var(--bg3);border-radius:8px;padding:22px}
.s-lp-revs p{margin:8px 0 12px;font:400 15px/1.5 var(--fb)}
.s-lp-revs footer{font:500 13px/1 var(--fb);color:var(--txt-3)}
.s-lp-cta{background:linear-gradient(135deg,#1287f6,#004a98);padding:clamp(48px,6vw,80px) 0;text-align:center}
.s-lp-cta .btn{margin:22px 0 12px}
.s-lp-cta .s-muted{color:rgba(255,255,255,.8);margin:0}
.s-lp-foot{background:#05080d;padding:22px 0;font:400 13px/1.5 var(--fb);color:var(--txt-3)}
.s-lp-foot .wrap{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}
.s-lp-foot a{color:var(--txt-2)}
/* prekidač rács/lista + lista prikaz oružarnice */
.s-arm-view{display:flex;border:1px solid var(--line-2);border-radius:999px;overflow:hidden;flex:0 0 auto}
.s-arm-view button{background:#fff;border:0;padding:0 14px;height:44px;font:500 14px/1 var(--fb);color:var(--ink);cursor:pointer}
.s-arm-view button.is-on{background:var(--kek);color:#fff}
.s-arm-body.is-list .s-arm-grid{display:block}
.s-arm-body.is-list .s-arm-grid li{display:grid;grid-template-columns:96px minmax(0,1fr) auto auto;gap:14px;align-items:center;padding:8px 0;border-bottom:1px solid var(--line)}
.s-arm-body.is-list .s-tile{aspect-ratio:3/2;padding:6px;box-shadow:none;border:1px solid var(--line)}
.s-arm-body.is-list .s-arm-name{font-size:16px}
.s-arm-body.is-list .s-cart-add{margin:0}
@media (max-width:600px){.s-arm-body.is-list .s-arm-grid li{grid-template-columns:72px 1fr;grid-template-areas:"im nm" "im meta" "im btn"}.s-arm-body.is-list .s-tile{grid-area:im}.s-arm-body.is-list .s-arm-name{grid-area:nm}.s-arm-body.is-list .s-arm-meta{grid-area:meta}.s-arm-body.is-list .s-cart-add{grid-area:btn;justify-self:start}.s-arm-body.is-list .s-arm-price{display:none}}
/* globalna korpa (sve strane osim oružarnice) */
.s-gcart{position:fixed;left:22px;bottom:22px;z-index:47;display:none;align-items:center;gap:12px;padding:10px 16px 10px 12px;border-radius:999px;background:#0b1119;color:#fff;text-decoration:none;border:1px solid var(--fultok);box-shadow:0 14px 34px rgba(0,0,0,.5);animation:s-lb-in .3s}
.s-gcart.show{display:flex}
.s-gcart .ic{width:22px;height:22px;color:var(--fultok)}
.s-gcart span{display:flex;flex-direction:column;line-height:1.1}
.s-gcart b{font:700 14px/1 var(--fd);letter-spacing:.06em;text-transform:uppercase}
.s-gcart small{font:400 12px/1.2 var(--fb);color:var(--txt-2)}
body.s-cart-open .s-gcart{display:none}
@media (max-width:900px){.s-gcart{bottom:78px;left:12px}}
/* zvuk (opciono, isključeno dok korisnik ne uključi) */
.s-snd{position:fixed;right:22px;bottom:86px;z-index:46;width:40px;height:40px;border-radius:50%;border:1px solid var(--line-2);background:rgba(11,17,25,.85);color:var(--txt-3);cursor:pointer;display:grid;place-items:center;backdrop-filter:blur(6px)}
.s-snd .ic{width:18px;height:18px}
.s-snd[aria-pressed="true"]{color:var(--fultok);border-color:var(--fultok)}
@media (max-width:900px){.s-snd{display:none}}
/* animacija pogotka na submit rezervacije */
.s-hit{position:fixed;inset:0;z-index:210;display:flex;align-items:center;justify-content:center;padding:20px}
.s-hit[hidden]{display:none}
.s-hit-bd{position:absolute;inset:0;background:rgba(6,8,10,.86);backdrop-filter:blur(8px)}
.s-hit-box{position:relative;text-align:center;animation:s-lb-in .25s}
.s-hit-t{position:relative;width:min(360px,70vw);aspect-ratio:1;margin:0 auto 22px;border-radius:50%;overflow:hidden;box-shadow:0 30px 70px rgba(0,0,0,.7);animation:s-hit-shake .35s .55s}
.s-hit-t img{width:100%;height:100%;object-fit:cover;object-position:50% 46%;transform:scale(1.9);transform-origin:50% 46%}
.s-hit-hole{position:absolute;left:50%;top:50%;width:40px;height:40px;margin:-20px 0 0 -20px;border-radius:50%;background:#2a2118;box-shadow:inset 0 0 0 4px #d9cdb5,0 0 0 8px rgba(0,0,0,.3);animation:s-hole-in .3s .5s cubic-bezier(.2,.9,.3,1.5) both}
.s-hit-ring{position:absolute;left:50%;top:50%;width:40px;height:40px;margin:-20px 0 0 -20px;border-radius:50%;border:3px solid var(--fultok);animation:s-ring 1s .55s ease-out both}
@keyframes s-ring{from{transform:scale(1);opacity:1}to{transform:scale(6);opacity:0}}
@keyframes s-hit-shake{0%,100%{transform:translate(0,0)}25%{transform:translate(-5px,3px)}50%{transform:translate(5px,-3px)}75%{transform:translate(-3px,-2px)}}
.s-hit-msg{font:700 clamp(22px,2.6vw,30px)/1.1 var(--fd);text-transform:uppercase;color:#fff;margin:0 0 16px;animation:s-lb-in .3s .9s both}
.s-hit-box .btn{animation:s-lb-in .3s 1.1s both}
@media (prefers-reduced-motion:reduce){.s-hit-t,.s-hit-hole,.s-hit-ring,.s-hit-msg,.s-hit-box .btn,.s-ty-hole,.s-404-hole{animation:none}}
/* prelazi strana (View Transitions) */
@view-transition{navigation:auto}
::view-transition-old(root){animation:s-vt-out .22s ease both}
::view-transition-new(root){animation:s-vt-in .28s ease both}
@keyframes s-vt-out{to{opacity:0}}
@keyframes s-vt-in{from{opacity:0}}
@media (prefers-reduced-motion:reduce){::view-transition-old(root),::view-transition-new(root){animation:none}}
/* print vaučer */
.s-gp{display:none}
@media print{
  body>*,#main>*{display:none!important}
  body>#main,#main>.s-gp,.s-gp{display:block!important}
  #main{padding:0!important;margin:0!important}
  .s-gp{position:static;width:100%}
  body{background:#fff!important;margin:0!important;padding:0!important}
  @page{size:A4 landscape;margin:12mm}
  .s-gp-card{position:relative;width:100%;height:100%;min-height:170mm;box-sizing:border-box;padding:16mm 18mm;background:#141210!important;color:#fff!important;border:1.2mm solid #c9974f;border-radius:6mm;-webkit-print-color-adjust:exact;print-color-adjust:exact;font-family:"Barlow",Arial,sans-serif;overflow:hidden}
  .s-gp-card::before{content:"";position:absolute;inset:5mm;border:.4mm solid rgba(201,151,79,.55);border-radius:4mm}
  .s-gp-top{display:flex;align-items:center;gap:8mm}
  .s-gp-brand{font-family:"Oswald",Arial Narrow,sans-serif;letter-spacing:.24em;font-size:12pt;color:#c9974f}
  .s-gp-mid{margin-top:16mm}
  .s-gp-t{display:block;font-family:"Oswald",Arial Narrow,sans-serif;font-weight:700;font-size:40pt;line-height:1;text-transform:uppercase;color:#e8c27a}
  .s-gp-s{display:block;margin-top:3mm;font-size:12pt;color:rgba(255,255,255,.7);letter-spacing:.06em}
  .s-gp-val{display:block;margin-top:10mm;font-family:"Oswald",Arial Narrow,sans-serif;font-weight:700;font-size:56pt;line-height:1;color:#fff}
  .s-gp-bot{display:grid;grid-template-columns:repeat(4,1fr);gap:8mm;margin-top:14mm;padding-top:6mm;border-top:.3mm solid rgba(201,151,79,.5)}
  .s-gp-bot small{display:block;font-size:8pt;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.55)}
  .s-gp-bot b{display:block;margin-top:1.5mm;font-family:"Oswald",Arial Narrow,sans-serif;font-size:14pt;font-weight:500;color:#fff;min-height:6mm}
  .s-gp-msg{margin:8mm 0 0;font-size:11pt;line-height:1.4;color:rgba(255,255,255,.85);font-style:italic;min-height:8mm}
  .s-gp-msg:empty{display:none}
  .s-gp-foot{position:absolute;left:18mm;right:18mm;bottom:10mm;display:flex;justify-content:space-between;gap:6mm;font-size:8pt;color:rgba(255,255,255,.55)}
  .s-gp-cross{position:absolute;right:18mm;top:16mm;width:22mm;height:22mm;color:rgba(201,151,79,.8)}
  .s-gp-cross .ic{width:100%;height:100%}
}
.s-gcart small{white-space:nowrap}
.s-gcart span{min-width:max-content}
.s-base-made a{color:var(--txt-2);text-decoration:underline;text-underline-offset:3px}
.s-base-made a:hover{color:var(--fultok)}

/* ==== 37-figma1.css ==== */
/* 37-figma1: klijentove izmene sa Figme (22.09.) */
/* hero: jedna rotirajuća poruka + veći badge „Következő szabad időpont“ */
.s-hero-trust{gap:12px 28px}
.s-hero-rot{min-width:26ch}
.s-hero-rot span{display:inline-block;animation:s-rot-in .5s ease both}
@keyframes s-rot-in{from{opacity:0;transform:translateY(6px)}}
.s-hero-next{background:var(--piros);color:#fff;padding:10px 16px;border-radius:999px;font:500 15px/1.1 var(--fb);box-shadow:0 8px 22px rgba(229,50,45,.35)}
.s-hero-next b{font:700 20px/1 var(--fd);color:#fff;letter-spacing:.02em;margin-left:8px}
/* line gap na naslovima: veći razmak između redova + između naslova i podnaslova */
.s-h2,.s-hero-h,h1.s-h2,h2.s-h2{line-height:1.02}
.s-h2-sub,.s-hero-sub{margin-top:.22em!important;line-height:1.15}
.s-intro h2,.s-intro .s-h2{line-height:1.05}
/* intro: brojevi na meti veći i tamniji, label veći i tamniji; dugme za tim */
.s-intro-hit b{font-size:clamp(52px,5.4vw,80px)!important;color:#141210!important;text-shadow:0 1px 0 rgba(255,255,255,.35)}
.s-intro-hit small{font-size:18px!important;font-weight:600!important;color:#1f1c17!important}
.s-intro-target figcaption{font-size:16px;color:var(--txt)}
.s-intro-act{margin:22px 0 0}
/* paketi: jedan po jedan (JS), pop na centralnoj kartici, bez strelica u headu */
.s-pk-arrows{display:none!important}
.s-pk-track>.s-pkc{transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s}
.s-pk-track>.s-pkc.is-center{transform:scale(1.06);z-index:2;box-shadow:0 24px 50px rgba(0,0,0,.5)}
.s-pk-track>.s-pkc.is-center .s-pkc-cov img{filter:brightness(1.06)}
.s-pk-more{background:var(--kek)!important;border-color:var(--kek)!important;color:#fff!important}
/* recenzije: bez „Összes vélemény“ ghost dugmeta (uklonjeno u šablonu) */
/* custom paket: line-art pozadina umesto AK slike */
.s-csomagok .s-custom{background:#0a6fd6 url(img/hf/blueprint-guns.jpg) center/cover no-repeat;position:relative}
.s-csomagok .s-custom::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,111,214,.92) 0%,rgba(10,111,214,.55) 45%,rgba(10,111,214,.25) 100%)}
.s-csomagok .s-custom>.wrap{position:relative;z-index:1}
.s-csomagok .s-custom-txt{grid-column:1/9}
/* csomagok hero: blueprint slika umesto fotke */
.s-csomagok .s-ph img.s-photo{object-position:70% 50%}
.s-csomagok .s-ph.is-blueprint{background:#0a2a5c}
.s-csomagok .s-ph.is-blueprint::after{background:linear-gradient(90deg,rgba(6,24,52,.9) 0%,rgba(6,24,52,.35) 50%,rgba(6,24,52,.1) 100%)}
/* kontakt: tabela sa vidljivim okvirima i naslovom iznad, kao Figma referenca */
.s-kapcsolat .s-ct-hours-grid{grid-template-columns:minmax(0,1fr);row-gap:22px}
.s-kapcsolat .s-ct-hours-h,.s-kapcsolat .s-ct-hours-b{grid-column:auto}
.s-kapcsolat .s-ct-hours-h h2{text-align:center}
.s-kapcsolat .s-ct-hours-b{max-width:760px;margin:0 auto;width:100%}
.s-kapcsolat .s-ct-tbl{border:1px solid var(--line-2);border-radius:8px;overflow:hidden;background:rgba(255,255,255,.03)}
.s-kapcsolat .s-ct-tbl thead th{background:rgba(255,255,255,.06);padding:12px 14px;border-bottom:1px solid var(--line-2);text-align:center}
.s-kapcsolat .s-ct-tbl thead th:first-child{text-align:left}
.s-kapcsolat .s-ct-tbl td,.s-kapcsolat .s-ct-tbl tbody th{padding:12px 14px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);text-align:center}
.s-kapcsolat .s-ct-tbl tbody th{text-align:left;width:32%}
.s-kapcsolat .s-ct-tbl td:last-child,.s-kapcsolat .s-ct-tbl th:last-child{border-right:0}
.s-kapcsolat .s-ct-hours-b>p,.s-kapcsolat .s-ct-hours-b>.s-muted{text-align:center}
.s-kapcsolat .s-ct-closed{display:inline-block;background:#3a1518;color:#ff6b66;padding:2px 10px;border-radius:3px;margin:0;font-weight:600}
/* instagram: reels traka (video placeholderi koji se smenjuju) */
.s-ig-row{grid-template-columns:repeat(6,1fr)}
.s-ig-row a{position:relative}
.s-ig-row a::after{content:"";position:absolute;right:10px;top:10px;width:22px;height:22px;background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'><path d='M8 5v14l11-7z'/></svg>") center/contain no-repeat;opacity:.9;filter:drop-shadow(0 2px 4px rgba(0,0,0,.6))}
.s-ig-row a.is-playing{outline:2px solid var(--fultok);outline-offset:-2px}
.s-ig-row a.is-playing img{transform:scale(1.06)}
.s-ig-reels-note{font:400 13px/1.4 var(--fb);color:var(--txt-3);margin:12px 0 0}

/* ==== 38-runda2.css ==== */
/* 38 — runda 2 (25.09.): broj osoba kucanjem, komadi oružja, vaučeri po ceni paketa */

/* broj osoba: polje umesto <output>, i dalje sa − / + */
.s-bk-qn{width:52px;height:36px;border:1px solid var(--line-2);border-radius:4px;background:transparent;color:var(--txt);text-align:center;font:700 19px/1 var(--fd);font-variant-numeric:tabular-nums;padding:0 2px;-moz-appearance:textfield;appearance:textfield}
.s-bk-qn::-webkit-outer-spin-button,.s-bk-qn::-webkit-inner-spin-button,.s-bk-gq::-webkit-outer-spin-button,.s-bk-gq::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.s-bk-qn:focus-visible,.s-bk-gq:focus-visible{outline:2px solid var(--kek,#0071dc);outline-offset:1px}

/* izabrano oružje: kolona za broj komada */
.s-bk-chosen li{grid-template-columns:minmax(0,1fr) 56px auto 36px}
.s-bk-gq{width:56px;height:36px;border:1px solid var(--line-2);border-radius:4px;background:transparent;color:var(--txt);text-align:center;font:600 16px/1 var(--fb);font-variant-numeric:tabular-nums;padding:0 4px;-moz-appearance:textfield;appearance:textfield}
.s-bk-gq-hint{margin:4px 0 8px;font:400 13px/1.4 var(--fb)}
.s-bk-extras:not(:has(.s-bk-chosen li)) .s-bk-gq-hint{display:none}
@media(max-width:600px){
  .s-bk-chosen li{grid-template-columns:minmax(0,1fr) 48px auto 36px;gap:8px}
  .s-bk-gq{width:48px}
}

/* vaučer red u sažetku */
.s-bk-sum-pk li.vc span:last-child{color:var(--zel,#2e7d32);font-weight:600}

/* vaučeri: 7 vrednosti, 4 + 3 */
.s-gv-tiers{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
@media(max-width:1100px){.s-gv-tiers{grid-template-columns:repeat(2,minmax(0,1fr))}}
.s-gv-tier{padding:24px 22px}
.s-gv-tier .s-gv-huf{font-size:clamp(34px,3.2vw,46px)}
.s-gv-pkl{display:block;margin-top:18px;font:500 12px/1.3 var(--fb);letter-spacing:.08em;text-transform:uppercase}
.s-gv-pks{list-style:none;margin:6px 0 20px;padding:0;display:flex;flex-wrap:wrap;gap:6px;flex:1;align-content:flex-start}
.s-gv-pks li{font:500 14px/1.2 var(--fb);color:var(--txt);border:1px solid var(--line-2);border-radius:3px;padding:5px 8px}
.s-gv-tier .btn{margin-top:auto;align-self:flex-start}
.s-gv-radios{flex-wrap:wrap}
@media(max-width:700px){.s-gv-tiers{grid-template-columns:minmax(0,1fr)}}

/* trust linija u sažetku (papir) */
.s-bk-sum .s-trust-line{color:var(--ink-2);font-size:14px;text-align:center;margin:10px 0 0}

/* ==== 89-celeritas-wp.css ==== */
/* ==== 89-celeritas-wp (WP-02) — izmene PREVIEW pravila iz sections.css (ARCH §17.3; plan §3.8 #24, EP-28).
   Spaja se POSLE 00…38 (kopije preview-a, bajt-identične) i PRE slotova 90–94. Ovde idu SAMO pregazna pravila za
   postojeće preview selektore; bazni stilovi NOVIH klasa su u assets/style.css (blok celeritas-wp).
   Stavke: 1 (kalendar: zeleni dostupan dan, izabran --kek, nedostupan samo siv tekst, ispunjena legenda),
   2 (#bk-pts: broj segmenata = kapacitet termina, polovine), 11 (.is-na, disabled dani i strelice),
   + appearance.animations=false (html.cel-no-anim) = isto završno stanje kao prefers-reduced-motion u preview-u. ==== */

/* ---------- 1) kalendar ---------- */
.s-bk .cal button.d.free{background:#15803d;border-color:#15803d;color:#fff;cursor:pointer}
.s-bk .cal button.d.free:hover{background:#116a32;border-color:#116a32;color:#fff}
.s-bk .cal button.d.free:focus-visible{outline:3px solid var(--fultok);outline-offset:2px}
.s-bk .cal button.d.sel,.s-bk .cal button.d.free.sel,.s-bk .cal button.d[aria-pressed=true]{background:var(--kek);border-color:var(--kek);color:#fff;box-shadow:none}
.s-bk .cal button.d.is-closed,.s-bk .cal button.d:disabled{background:transparent;border-color:transparent;color:var(--txt-3)}
.s-bk-leg i.f{background:#15803d;border-color:#15803d}
.s-bk-leg i.n{background:transparent;border-color:var(--line-2)}

/* ---------- 2) merač poena: onoliko segmenata koliki je kapacitet (cap_x10 / 10) ---------- */
.s-bk-pts{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr)}
.s-bk-pts i.taken.half::after{background:rgba(243,241,236,.28)}
.s-bk-pts i.on.half{background:var(--line)}

/* ---------- 11) nedostupni paketi, dani i strelice ---------- */
.s-bk-row.is-na .pp,.s-bk .pp.is-na{cursor:not-allowed;background:transparent;border-left-color:transparent}
.s-bk-row.is-na .pp:hover,.s-bk .pp.is-na:hover{background:transparent}
.s-bk-row.is-na .s-bk-pp-name,.s-bk-row.is-na .s-bk-pp-price,.s-bk .pp.is-na .s-bk-pp-name,.s-bk .pp.is-na .s-bk-pp-price{color:var(--txt-3)}
.s-bk-row.is-na .s-bk-pp-cov img,.s-bk .pp.is-na .s-bk-pp-cov img{filter:grayscale(1) brightness(.6)}
.s-bk-row.is-na .s-bk-qty button,.s-bk .pp.is-na .s-bk-qty button{opacity:.35;pointer-events:none}
.s-bk-row.is-na .s-bk-pp-pay,.s-bk .pp.is-na .s-bk-pp-pay{color:var(--fultok)}
.s-bk .cal button.d[data-status]:disabled{cursor:default}
.s-bk .cal .head button:disabled{opacity:.35;cursor:default}
.s-bk .cal .head button:disabled:hover{border-color:var(--line-2);background:transparent}

/* ---------- appearance.animations = false → <html class="cel-no-anim"> (R-207) ----------
   Ogledalo svih preview blokova @media (prefers-reduced-motion:reduce); app.js uz klasu javlja reduced-motion i JS modulima. */
html.cel-no-anim *{transition:none!important;animation:none!important}
html.cel-no-anim{scroll-behavior:auto}
html.cel-no-anim .rv{opacity:1!important;transform:none!important}
html.cel-no-anim .s-io,html.cel-no-anim .s-io *{animation:none!important;transition:none!important}
html.cel-no-anim .s-base-cta>img{animation:none;transform:none}
html.cel-no-anim .s-hero-img,html.cel-no-anim .s-hero-line>span,html.cel-no-anim .s-hero-lead,html.cel-no-anim .s-hero-acts,html.cel-no-anim .s-hero-trust,html.cel-no-anim .s-hero-media,html.cel-no-anim .s-hero-dim{animation:none;transform:none;opacity:1}
html.cel-no-anim .s-hero-dim{opacity:0}
html.cel-no-anim .s-intro-hole{animation:none!important;transition:none!important;transform:none!important;will-change:auto}
html.cel-no-anim .s-intro-hit b,html.cel-no-anim .s-intro-hit small,html.cel-no-anim .s-intro-hits-m b{animation:none!important;transition:none!important;opacity:1!important}
html.cel-no-anim .s-steps{animation:none;transition:none;--hit:3}
html.cel-no-anim .s-pk .s-pkc{animation:none!important;transition:none!important;opacity:1!important;transform:none!important}
html.cel-no-anim .s-pk-slider .s-pk-track{scroll-behavior:auto}
html.cel-no-anim .s-strip-track{animation:none;transform:none;will-change:auto}
html.cel-no-anim .s-strip-wrap{overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;-ms-overflow-style:none;overscroll-behavior-x:contain}
html.cel-no-anim .s-strip-f{scroll-snap-align:start}
html.cel-no-anim .s-faq.s-faq-js .s-faq-q::after,html.cel-no-anim .s-faq .s-faq-q::after{animation:none;transition:none;transform:none}
html.cel-no-anim .s-faq-q .s-faq-ic{transition:none}
html.cel-no-anim .s-rolunk .s-about-fill{animation:none;transition:none;clip-path:inset(-.2em 0 -.2em 0)}
html.cel-no-anim .s-csomagok .s-custom-gun-img{animation:none!important;transition:none!important;opacity:1!important;transform:none!important;will-change:auto!important}
html.cel-no-anim .s-pd-gun{animation:none!important;transition:none!important;opacity:1!important;transform:none!important}
html.cel-no-anim .s-pd-slider .s-pd-track{scroll-behavior:auto}
html.cel-no-anim .s-pd-bar{transition:none}
html.cel-no-anim .s-arm-ph>img{animation:none;transform:none;will-change:auto}
html.cel-no-anim .s-gv-how .s-gv-n-f{animation:none;transition:none;clip-path:none}
html.cel-no-anim .s-kapcsolat .s-ct-route{animation:none;transition:none;--ctr:1}
html.cel-no-anim .s-ft-preg::before,html.cel-no-anim .s-ft.s-ft-js .s-ft-preg::before{animation:none;transition:none;transform:none;will-change:auto}
html.cel-no-anim .s-ft-preg b,html.cel-no-anim .s-ft.s-ft-js .s-ft-preg b{animation:none;transition:none;opacity:1}
html.cel-no-anim .s-ft-q .s-ft-ic{transition:none}
html.cel-no-anim .s-mq-track{animation:none;width:auto;flex-wrap:wrap;justify-content:center;gap:6px 0}
html.cel-no-anim .s-hit-t,html.cel-no-anim .s-hit-hole,html.cel-no-anim .s-hit-ring,html.cel-no-anim .s-hit-msg,html.cel-no-anim .s-hit-box .btn,html.cel-no-anim .s-ty-hole,html.cel-no-anim .s-404-hole{animation:none}
html.cel-no-anim::view-transition-old(root),html.cel-no-anim::view-transition-new(root){animation:none}

/* ---------- faza I (SEO/Lighthouse popravke, 27.09.2026) ---------- */
/* a) Naslovi kolona futera su <h3> (bili <h4> posle <h2> — Lighthouse heading-order, WCAG 1.3.1); isti izgled kao preview .s-base-foot h4. */
.s-base-foot h3{font-family:var(--fd);font-weight:500;font-size:18px;letter-spacing:.02em;text-transform:uppercase;color:var(--txt);margin:0 0 16px}
/* b) Bedž „Következő szabad időpont“: belo na --piros #e5322d = 4,35:1 (< 4,5:1, R-206) → #d92c27 = 4,84:1 (predlog WP-13). */
.s-hero-next{background:#d92c27}
/* c) Csomagok „Egyedi csomag“ pozadina: WebP (49 KB umesto JPG 141 KB); JPG iz preview pravila se tada ne preuzima. */
.s-csomagok .s-custom{background-image:url(img/hf/blueprint-guns.webp)}

/* ==== 90-home.css ==== */
/* 90-home (WP-13): dopune početne strane — SAMO nove stvari; preview pravila (10…17, 32, 37, 38) se ne menjaju (plan §3.8 #3, EP-25).
   1) hero video (C39): preko slike, nevidljiv dok ne krene da svira (LCP ostaje slika); reduced-motion ili
      appearance.animations=false → video se ne pušta; vidi se poster samo kad ga JS postavi (zadat poster, ≥ 901 px),
      inače ostaje providan i vidi se hero <picture> (na telefonu mobilna slika, bez dodatnog preuzimanja).
   2) brzina marquee trake iz appearance.marquee.speed_s (--cel-wp13-mq-s; bez nje 42 s kao preview).
   3) napomena o recenzijama (seo.reviews.disclosure_text) u omotaču review-one (.s-rev1), preko cele širine mreže.
   4) hero trust red na telefonu (≤ 600 px) bez ocene (appearance.hero.show_rating=false): mreža 1fr 1fr preview-a očekuje ocenu u
      1. ćeliji; bez nje bi bedž sledećeg termina (R-220) otišao u 1. red / 2. kolonu pored .s-hero-rot{min-width:26ch}, kolona
      bi narasla preko ekrana, a .s-hero{overflow:clip} ga seče. Bedž ide tamo gde ga preview ima: 2. red, 1. kolona. */

/* 1) hero video */
.cel-wp13-hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:42% 0%;opacity:0;transition:opacity .8s ease;pointer-events:none;z-index:0}
.cel-wp13-hero-video.is-on{opacity:1}
@media(min-width:1000px){.cel-wp13-hero-video{object-position:50% 0%}}
@media(prefers-reduced-motion:reduce){.cel-wp13-hero-video{transition:none}.cel-wp13-hero-video[poster]{opacity:1}}
html.cel-no-anim .cel-wp13-hero-video{transition:none}
html.cel-no-anim .cel-wp13-hero-video[poster]{opacity:1}

/* 2) marquee: trajanje petlje */
.s-mq-track{animation-duration:var(--cel-wp13-mq-s,42s)}

/* 3) review-one: napomena o poreklu recenzija (R-317) */
.s-rev1 .s-rev-note{grid-column:1/-1;margin:0}

/* 4) hero trust red na telefonu bez ocene: bedž sledećeg termina u 1. kolonu (sledeći red) */
@media(max-width:600px){.s-hero-trust>.s-hero-rot:first-child+.s-hero-next{grid-column:1}}

/* ==== 91-catalog.css ==== */
/* ===== 91-catalog (WP-14): dopune preview stilova za Csomagok, stranu paketa i Fegyvertár (plan §3.8 #3, EP-25) =====
   Spaja se POSLE preview CSS-a (00…38) i 89-celeritas-wp.css. Samo NOVI elementi (privremene klase .cel-wp14-*, plan §2.2) i
   mesto stepera u redovima liste koji ga imaju; preview pravila za postojeće elemente i redove bez novih elemenata se ne menjaju
   (proveru radi tests/theme/wp14/listgeo.py, 1440 i 390 px). Vizuelni jezik = preview tokeni.
   Bez animacija (nema reduced-motion / html.cel-no-anim ekvivalenta koji bi trebalo dodati). */

/* ---------- oružarnica: količina po oružju (35-extras2.js ga pravi tek kad je oružje u korpi; R-234). Spoljna visina 33px = pritisnuto
   .s-cart-add („✓ Benne van“, preview), pa steper ne povećava red liste ---------- */
.cel-wp14-qty{display:inline-flex;align-items:center;vertical-align:middle;margin:8px 0 0 8px;border:1px solid var(--line-2);border-radius:999px;background:#fff;color:var(--ink);overflow:hidden;font:500 13px/1 var(--fb)}
.cel-wp14-qty button{width:30px;height:31px;display:grid;place-items:center;border:0;background:transparent;color:var(--ink);font:600 16px/1 var(--fb);cursor:pointer;transition:background .15s,color .15s}
.cel-wp14-qty button:hover{background:var(--kek);color:#fff}
.cel-wp14-qty button:focus-visible{outline:2px solid var(--kek);outline-offset:-2px}
.cel-wp14-qty button:disabled{opacity:.35;cursor:default;background:transparent;color:var(--ink)}
.cel-wp14-qty output{min-width:22px;text-align:center;font-variant-numeric:tabular-nums}

/* ---------- oružarnica: „u kojim paketima“ (R-090) — span je UNUTAR ćelije naziva (.s-arm-name), drugi red te ćelije.
   Prikaz „Lista“ zato zadržava preview mrežu reda iz 36-pages2.css (96px | naziv | kaliber | [cena] | dugme; align-items:center;
   na ≤ 600 px „im nm / im meta / im btn“, gap 14px) bez novih kolona i redova (recenzija 27.09, R-200). U mreži („Rács“) se ne
   prikazuje (zamrznut izgled pločice; isti podatak je u lightbox-u) ---------- */
.cel-wp14-arm-pk{display:none}
.s-arm-body.is-list .s-arm-name .cel-wp14-arm-pk{display:block;margin-top:4px;font:400 13.5px/1.4 var(--fb);letter-spacing:normal;text-transform:none;overflow-wrap:break-word;color:#5a6069}
.cel-wp14-arm-pk a{color:var(--ink);text-decoration:underline;text-underline-offset:2px;text-decoration-thickness:1px;text-decoration-color:var(--line-2)}
.cel-wp14-arm-pk a:hover{text-decoration-color:var(--kek);color:var(--kek)}

/* prikaz liste + steper količine (35-extras2.js ga pravi SAMO za oružje u korpi): samo takvi redovi dobijaju kolonu posle dugmeta;
   red sa cenom po oružju zadržava preview prelom (dugme u drugom redu ispod pločice) i steper staje odmah pored dugmeta */
.s-arm-body.is-list .s-arm-grid li>.cel-wp14-qty{margin:0;justify-self:start}
@media (min-width:601px){
  .s-arm-body.is-list .s-arm-grid li:has(>.cel-wp14-qty):not(:has(>.s-arm-price)){grid-template-columns:96px minmax(0,1fr) auto auto auto}
}
@media (max-width:600px){
  .s-arm-body.is-list .s-arm-grid li:has(>.cel-wp14-qty){grid-template-columns:72px auto minmax(0,1fr);grid-template-areas:"im nm nm" "im meta meta" "im btn qt"}
  .s-arm-body.is-list .s-arm-grid li>.cel-wp14-qty{grid-area:qt}
}

/* ---------- lightbox oružarnice: „u kojim paketima“ sa linkovima (36-pages2.js) ---------- */
.s-lb figcaption .cel-wp14-lb-pk{grid-column:1/-1;margin:6px 0 0;font:400 14px/1.45 var(--fb);color:var(--txt-2)}
.s-lb figcaption .cel-wp14-lb-pk[hidden]{display:none}
.s-lb figcaption .cel-wp14-lb-pk a{color:var(--txt);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:2px;text-decoration-color:var(--fultok)}
.s-lb figcaption .cel-wp14-lb-pk a:hover{text-decoration-color:var(--txt)}

/* ---------- oružarnica: dodatni filteri (R-235, NICE; red ispod pretrage, samo kad su uključeni) ---------- */
.s-arm-bar .cel-wp14-armf{flex-wrap:wrap;gap:10px 18px;margin-top:10px}
.cel-wp14-armf label{display:inline-flex;align-items:center;gap:8px;font:500 14px/1.2 var(--fb);color:var(--ink)}
.cel-wp14-armf select{height:40px;padding:0 32px 0 12px;font:500 14px/1.2 var(--fb);color:var(--ink);background:#fff;border:1px solid var(--line-2);border-radius:4px;max-width:260px;cursor:pointer}
.cel-wp14-armf select:focus{border-color:var(--kek);outline:none}
.cel-wp14-armf-chk input{width:18px;height:18px;margin:0;accent-color:var(--kek)}
@media (max-width:800px){.cel-wp14-armf label{flex:1 1 100%;justify-content:space-between}.cel-wp14-armf select{flex:1 1 auto;max-width:none}.cel-wp14-armf-chk{justify-content:flex-start!important}}

/* ---------- faza 2 (R-271): naziv oružja u oružarnici / kategoriji i kategorija na strani oružja su linkovi SAMO kad je ruta
   uključena (seo.phase2.*); izgled teksta ostaje isti, podvlačenje tek na hover/fokus ---------- */
.s-arm-name>a,.s-pd-facts b a{color:inherit;text-decoration:none}
.s-arm-name>a:hover,.s-arm-name>a:focus-visible,.s-pd-facts b a:hover,.s-pd-facts b a:focus-visible{text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:2px;text-decoration-color:var(--kek)}

/* ---------- faza 2: strana oružja (R-271) — pločica na belom umesto 3:4 cover-a paketa ---------- */
.s-pd-cov.cel-wp14-wcov{aspect-ratio:4/3;background:#fff}
.s-pd-cov.cel-wp14-wcov::after{display:none}
.s-pd-cov.cel-wp14-wcov .s-tile{width:100%;height:100%;display:grid;place-items:center;background:#fff;padding:16px}
.s-pd-cov.cel-wp14-wcov img{width:100%;height:100%;object-fit:contain;filter:none}
/* „u kojim paketima“ (R-090) je na strani oružja vidljiv pasus opisa (tamna .s-pd: linkovi kao .s-link / lightbox) */
.s-pd-desc>.cel-wp14-arm-pk{display:inline}
.s-pd-desc>.cel-wp14-arm-pk a{color:var(--txt);text-underline-offset:3px;text-decoration-thickness:2px;text-decoration-color:var(--fultok)}
.s-pd-desc>.cel-wp14-arm-pk a:hover{color:var(--txt);text-decoration-color:var(--txt)}
/* dugme korpe oružarnice + steper (35-extras2.js ubacuje steper odmah posle dugmeta, u isti omotač) */
.cel-wp14-wcart{display:inline-flex;align-items:center;flex-wrap:wrap;gap:8px}
.cel-wp14-wcart .s-cart-add,.cel-wp14-wcart .cel-wp14-qty{margin:0}

/* ---------- pristupačnost (ARCH §17.8: kontrast ≥ 4,5:1; R-206): broj u čipu sekcije oružarnice #7a7f87 na #f3eee3 = 3,48:1 →
   ista siva koju preview koristi za .s-muted u ovim sekcijama (#5a6069 = 5,48:1). Isključen čip (.is-off) ostaje bledi. ---------- */
.s-arm-bar .tabs a:not(.is-on):not(.is-off) .s-arm-chip-n{color:#5a6069}

/* ==== 92-booking.css ==== */
/* ==== 92-booking (WP-15) — dopune za foglalas / koszonjuk / foglalasom (plan §3.1, §7 EP-25; ARCH §17.3 t.3–6, 9, 12).
   Spaja se POSLE 00…38 i 89 (WP-02). Samo dopune NOVIH elemenata i privremenih klasa .cel-wp15-* (plan §2.2); bazne stilove
   novih ARCH klasa (.s-bk-pname, .s-bk-copy-from, .s-bk-lm, .s-bk-consents, .s-cap-modal, .s-bk-hold, .s-status…) daje WP-02
   u assets/style.css (blok celeritas-wp), a izmene preview pravila (zeleni dan, #bk-pts, .is-na) su u 89-celeritas-wp.css. ==== */

/* [hidden] mora da pobedi display:inline-flex dugmadi (.btn) i ostale display vrednosti u novim blokovima */
.s-ty [hidden],.s-status [hidden],.s-cap-modal [hidden],.s-bk-sum [hidden]{display:none!important}

/* ---------- korak 1: kod, termini ---------- */
.s-bk-code-msg.cel-wp15-bad{color:#ff8a86}
/* „Kód törlése“ (wp15_code_clear): vidljiv samo dok je kod (LM/vaučer) aktivan */
.cel-wp15-code-x{display:inline-block;margin-top:8px;background:none;border:0;padding:0;font:600 14px/1.3 var(--fb);cursor:pointer}
.cel-wp15-code-x[hidden]{display:none!important}
.s-bk-times label[aria-disabled=true]{color:var(--txt-3);border-color:var(--line);cursor:default}
.s-bk-times label[aria-disabled=true]:hover{border-color:var(--line)}
.s-bk-times label[data-status=full]{cursor:pointer}
.s-bk-times label[data-status=full] small{color:var(--txt-3)}
.s-bk-times[aria-busy=true],.s-bk .cal[aria-busy=true] .grid{opacity:.55;transition:opacity .12s}
.s-bk-times>p{grid-column:1/-1;margin:0}
/* „N egység szabad“ (bk_slot_units) je duži od preview „N szabad“: kolone bez min-content širine (C30, 360 px) */
.s-bk-times{grid-template-columns:repeat(2,minmax(0,1fr))}

/* ---------- korak 2: oznaka vaučera na paketu, CUSTOM greške, izbor pokrivenog paketa ---------- */
.cel-wp15-vc{display:inline-block;align-self:center;padding:3px 8px;border-radius:3px;background:#15803d;color:#fff;font:600 12px/1.2 var(--fb);letter-spacing:.02em;text-transform:none;white-space:nowrap}
.cel-wp15-vc.is-up{background:var(--fultok);color:var(--ink)}
.s-bk-person [data-err-for]{margin:-6px 0 10px}
.s-bk-person-h .s-bk-copy-from{margin-left:auto}
.cel-wp15-vcitem{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px}
.cel-wp15-vcitem select{flex:0 1 auto;min-width:0;max-width:100%;padding:8px 10px;font:500 14px/1.3 var(--fb);border:1px solid var(--line-2);border-radius:4px;background:rgba(0,0,0,.25);color:var(--txt)}
.cel-wp15-vcitem select option{color:#000}

/* ---------- korak 3: imena učesnika (opciono), pristanci, članstvo ---------- */
.cel-wp15-names{border:0;margin:0;padding:0;min-width:0}
.cel-wp15-names legend{font:500 15px/1.3 var(--fb);color:var(--txt-2);padding:0;margin-bottom:12px}
.s-bk-consents [data-consent-text] a{color:var(--txt)}
/* privacy_notice (Adatkezelési tájékoztató): informativni red bez checkboxa, poravnat sa tekstom pristanaka (18 px + 10 px) */
.cel-wp15-privacy{padding-left:28px;font:400 14px/1.5 var(--fb);color:var(--txt-2)}
.cel-wp15-privacy a{color:var(--txt)}
.cel-wp15-member{font:400 13px/1.5 var(--fb);color:rgba(243,241,236,.62)}
.cel-wp15-member p{margin:0 0 .5em}
.cel-wp15-member p:last-child{margin-bottom:0}

/* ---------- sažetak: „Módosítás“, napomena o plaćanju na licu mesta, onemogućeno slanje ---------- */
.s-bk-sum-head a.s-bk-modify{margin-left:auto}
.cel-wp15-paynote{margin-top:6px}
.s-bk-sum .btn.s-bk-submit:disabled,.s-bk-sum .btn.s-bk-submit[aria-disabled=true]{opacity:.55;cursor:not-allowed}
.s-bk-sum .btn.s-bk-submit[aria-busy=true]{opacity:.8;cursor:progress}

/* ---------- modal „više osoba“ ---------- */
.s-cap-modal{position:fixed}
.cel-wp15-x{position:absolute;top:14px;right:14px;width:36px;height:36px;display:grid;place-items:center;padding:0;border:1px solid rgba(21,24,28,.3);border-radius:50%;background:transparent;color:var(--ink);cursor:pointer}
.cel-wp15-x:hover{border-color:var(--ink)}
.cel-wp15-x .ic{width:16px;height:16px}
.cel-wp15-cap-why{border-left:3px solid var(--fultok);padding:4px 0 4px 12px;font-weight:500}
.s-cap-modal .btn .ic{width:18px;height:18px}
.cel-wp15-capform{margin-top:12px}
.cel-wp15-capform .btn{margin-top:16px}
.cel-wp15-cap-ok{margin-top:16px!important;padding:12px 14px;background:#fff;border-left:3px solid #15803d;color:var(--ink)!important;font-weight:500}

/* ---------- statusni blok (köszönjük / foglalásom) ---------- */
.s-ty .s-status{margin:22px 0 8px}
.s-status>b{grid-column:2}
.s-status>[data-st-body]{grid-column:2;min-width:0;display:flex;flex-direction:column;gap:8px}
.cel-wp15-ic{grid-row:1/span 2;grid-column:1;width:24px;height:24px;margin-top:2px}
.cel-wp15-ic .ic{display:none;width:24px;height:24px}
.s-status--ok .cel-wp15-i-ok,.s-status--wait .cel-wp15-i-wait,.s-status--fail .cel-wp15-i-fail{display:block}
.s-status--ok .cel-wp15-ic{color:#3ddc84}
.s-status--wait .cel-wp15-ic{color:var(--fultok)}
.s-status--fail .cel-wp15-ic{color:var(--piros)}
.s-status .s-bk-hold{color:var(--txt);margin:2px 0 0}
.cel-wp15-ref{font:500 14px/1.4 var(--fb);color:var(--txt-2);font-variant-numeric:tabular-nums}
.cel-wp15-test{padding:6px 10px;background:var(--fultok);color:var(--ink)!important;font:600 13px/1.3 var(--fb)!important;letter-spacing:.04em;text-transform:uppercase}
.cel-wp15-dl{margin:6px 0 0;border-top:1px solid var(--line)}
.cel-wp15-dl>div{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:8px 0;border-bottom:1px solid var(--line);font:400 15px/1.4 var(--fb)}
.cel-wp15-dl dt{color:var(--txt-2);flex:0 1 auto}
.cel-wp15-dl dd{margin:0;color:var(--txt);font-weight:600;text-align:right;font-variant-numeric:tabular-nums;min-width:0;overflow-wrap:anywhere}
.cel-wp15-dl .cel-wp15-dl-items{display:block}
.cel-wp15-dl .cel-wp15-dl-items dd{text-align:left;font-weight:400;margin-top:4px}
.cel-wp15-dl ul{list-style:none;margin:0;padding:0}
.cel-wp15-dl li{padding:2px 0}
.cel-wp15-dl li>span:first-child{font-weight:600}
.cel-wp15-dl li small{display:block;font-size:13px;color:var(--txt-2)}
.cel-wp15-dl .cel-wp15-dl-tot{border-bottom:0}
.cel-wp15-dl .cel-wp15-dl-tot dd{font:500 20px/1 var(--fd)}
.cel-wp15-acts{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin-top:4px}
.cel-wp15-acts:not(:has(>:not([hidden]))){display:none}
.cel-wp15-acts .btn{margin:0}
.cel-wp15-cancel{background:none;border:0;padding:0;font:600 14px/1.3 var(--fb);color:var(--txt-2);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:2px;text-decoration-color:var(--piros);cursor:pointer}
.cel-wp15-cancel:hover{color:var(--txt)}
.s-status [data-err-for]:not(:empty){margin-top:4px}
/* G9: potvrda odustajanja u bloku (umesto window.confirm — jezik strane, vizuelni jezik sajta; wp15_cancel_yes / wp15_cancel_no) */
.cel-wp15-confirm{display:flex;flex-wrap:wrap;align-items:center;gap:10px 12px;margin-top:4px;padding:12px 14px;border-left:3px solid var(--piros);background:rgba(0,0,0,.2)}
.cel-wp15-confirm p{flex:1 1 100%;margin:0;color:var(--txt)}
.cel-wp15-confirm .btn{margin:0}
.s-status [data-st-retry]:disabled{opacity:.55;cursor:not-allowed}

/* ---------- mobil (C30: 360 px bez horizontalnog skrola) ---------- */
@media (max-width:480px){
  .s-bk-times label{flex-wrap:wrap;gap:2px 8px}
  .s-bk-times label small{white-space:normal}
}
@media (max-width:600px){
  .s-bk-person-h .s-bk-copy-from{margin-left:0;max-width:100%}
  .s-bk-pname{max-width:100%}
  .cel-wp15-vc{margin-top:2px}
  .cel-wp15-dl>div{flex-wrap:wrap;gap:2px 12px}
  .s-cap-modal{padding:24px 18px 20px}
  .s-cap-modal h2{font-size:22px}
}
.s-status .s-bk-hold b{display:inline;font:700 18px/1 var(--fd);text-transform:none;color:var(--txt)}

/* ==== 93-voucher.css ==== */
/* ==== 93-voucher (WP-16) — additions for ajandekutalvany (purchase) and utalvany (print by token); slot EP-25, after
   the preview CSS and 89-celeritas-wp. Only new elements and page-scoped rules — the preview copies stay byte-identical.
   Visual language = preview tokens (--fd/--fb, --rez, --line, --piros). ==== */

/* ---------- purchase form: consent, gateway, status (ARCH §17.3 t.6/t.10/t.12 on the voucher form) ---------- */
.s-gv-f .s-bk-consents{margin-top:0;padding-top:20px}
.s-gv-f .s-bk-consents .s-bk-chk{font-size:15px;line-height:1.5}
.s-gv-f .s-bk-consents a{color:var(--txt);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:2px;text-decoration-color:var(--rez)}
.s-gv-f .s-bk-consents a:hover{text-decoration-color:var(--txt)}
.s-gv-f .s-bk-gw{margin:0;padding-top:20px}
.s-gv-f .s-bk-gw label:has(input:checked){border-color:var(--rez);background:rgba(201,151,79,.12)}
.s-gv-f .s-bk-gw input{accent-color:var(--rez)}
.s-gv-f button[type=submit][disabled]{opacity:.6;cursor:default}
.s-gv-f button[type=submit][aria-busy=true]{cursor:progress}
.s-gv-status.is-error{color:#ff8a86}
.s-gv-status .btn{margin:12px 0 0}
#gv-to-email-wrap label[for=gv-send-at]{margin-top:12px}

/* ---------- utalvany: screen ---------- */
.cel-wp16-acts{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 24px}
.cel-wp16-acts .btn{margin:0}
.cel-wp16-acts .btn .ic{width:18px;height:18px}
.cel-wp16-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:0;background:var(--line);border:1px solid var(--line)}
.cel-wp16-facts>div{background:var(--bg);padding:14px 16px;min-width:0}
.cel-wp16-facts dt{font:500 13px/1.3 var(--fb);color:rgba(243,241,236,.62);margin:0 0 6px}
.cel-wp16-facts dd{font:500 18px/1.35 var(--fb);color:var(--txt);margin:0;overflow-wrap:anywhere}
.cel-wp16-facts dd.cel-wp16-code{font:700 20px/1.2 var(--fd);letter-spacing:.06em;color:var(--rez)}
#cel-wp16-card .s-gift-face-bot{max-width:74%}
#cel-wp16-card .s-gift-vld,#cel-wp16-card .s-gift-code{white-space:nowrap}
.cel-wp16-info .s-gv-step h3{font-size:22px}
.cel-wp16-info .s-gv-step p+p{margin-top:12px}
.cel-wp16-info .s-gv-step .btn{margin:6px 0 0}
.cel-wp16-info .s-link{color:var(--ink)}
.cel-wp16-sheet{display:none}
/* h1 „Az ajándékutalványod“ / „Your gift voucher“: the preview size (.s-gv-h1, made for the short „AJÁNDÉKOZZ“) breaks the long
   Hungarian word inside the 5/12 text column; sized to the column so the word stays whole (≤ 900 px the column is full width) */
@media(min-width:901px){
  .cel-wp16-vp .s-gv-h1{font-size:clamp(32px,3.5vw,60px);hyphens:manual}
  .cel-wp16-vp .s-gv-h1 .s-h2-sub{font-size:max(.5em,24px)}
}
@media(max-width:900px){
  /* the hero text block falls apart into the grid (display:contents in 24-ajandekutalvany): h1 → card → text → actions → facts */
  .cel-wp16-vp .cel-wp16-acts{order:4;margin:0}
  .cel-wp16-vp .s-gv-note{order:5}
  .cel-wp16-vp .cel-wp16-facts{order:6}
}
@media(max-width:600px){
  .cel-wp16-vp .s-gv-h1{font-size:clamp(30px,9.4vw,48px)}
  .cel-wp16-facts{grid-template-columns:minmax(0,1fr)}
  .cel-wp16-acts .btn{flex:1 1 100%;justify-content:center}
}

/* ---------- utalvany: print — A4 portrait sheet, two A5 landscape copies (gift-print) with a cut line ---------- */
@page cel-wp16-a4{size:A4 portrait;margin:0}
@media print{
  body[data-page="utalvany"] #main>*{display:none!important}
  body[data-page="utalvany"] #main>.cel-wp16-sheet{display:block!important;page:cel-wp16-a4;width:210mm;margin:0;padding:0}
  body[data-page="utalvany"] .cel-wp16-sheet .s-gp{display:block!important;position:relative;width:210mm;height:148mm;margin:0;padding:6mm 7mm;box-sizing:border-box;break-inside:avoid;page-break-inside:avoid}
  body[data-page="utalvany"] .cel-wp16-sheet .s-gp-card{min-height:0;height:100%;padding:10mm 13mm}
  body[data-page="utalvany"] .cel-wp16-sheet .s-gp-card::before{inset:3.5mm}
  body[data-page="utalvany"] .cel-wp16-sheet .s-gp-top img{width:16mm;height:auto}
  body[data-page="utalvany"] .cel-wp16-sheet .s-gp-brand{font-size:10pt}
  body[data-page="utalvany"] .cel-wp16-sheet .s-gp-mid{margin-top:8mm}
  body[data-page="utalvany"] .cel-wp16-sheet .s-gp-t{font-size:28pt}
  body[data-page="utalvany"] .cel-wp16-sheet .s-gp-s{font-size:10pt}
  body[data-page="utalvany"] .cel-wp16-sheet .s-gp-val{margin-top:6mm;font-size:38pt}
  body[data-page="utalvany"] .cel-wp16-sheet .s-gp-bot{margin-top:7mm;padding-top:4mm;gap:5mm}
  body[data-page="utalvany"] .cel-wp16-sheet .s-gp-bot small{font-size:6.5pt}
  body[data-page="utalvany"] .cel-wp16-sheet .s-gp-bot b{font-size:11.5pt;overflow-wrap:anywhere}
  body[data-page="utalvany"] .cel-wp16-sheet .s-gp-msg{margin-top:4mm;font-size:9.5pt;min-height:0}
  body[data-page="utalvany"] .cel-wp16-sheet .s-gp-foot{left:13mm;right:13mm;bottom:8mm;font-size:6.5pt}
  body[data-page="utalvany"] .cel-wp16-sheet .s-gp-cross{right:13mm;top:10mm;width:16mm;height:16mm}
  body[data-page="utalvany"] .cel-wp16-cut{display:block!important;position:relative;height:0;margin:0;border-top:.3mm dashed #999}
  body[data-page="utalvany"] .cel-wp16-cut span{position:absolute;left:50%;top:0;transform:translate(-50%,-50%);background:#fff;padding:0 3mm;font:400 7pt/1 "Barlow",Arial,sans-serif;color:#666;white-space:nowrap}
}
@media screen{.cel-wp16-cut{display:none}}

/* ==== 94-pages.css ==== */
/* ==== 94 PAGES (WP-17): dopune za rolunk, kapcsolat, grupe, gyik, uslovi i pravne strane, elállás, landing, blog, 404, forme ====
   Slot 94 se spaja POSLE preview CSS-a (00…38) i 89-celeritas-wp.css (plan §7 EP-25). Preview pravila se ovde NE menjaju — samo
   nove klase (prefiks .cel-wp17-*, plan §2.2) i elementi koje preview nema (fasada mape, stanja formi, sadržaj pravnih strana).
   Vizuelni jezik = preview tokeni (--fd/--fb, --line, --kek, --piros, --fultok, --paper/--ink). */

/* ---------- kapcsolat: fasada mape (R-297) — dok iframe nije učitan, sloj sa pinom/adresom + dugme „Térkép betöltése“ ---------- */
.s-kapcsolat .s-ct-map-if[data-cel-embed]:not([data-cel-embed-state="loaded"]){filter:none;z-index:2}
.s-kapcsolat .s-ct-map-if .cel-embed__ph{position:absolute;inset:auto 0 0 0;display:flex;flex-direction:column;align-items:center;gap:8px;padding:0 18px 20px;background:transparent;text-align:center}
.s-kapcsolat .s-ct-map-if .cel-embed__note{font:400 12.5px/1.4 var(--fb);color:rgba(243,241,236,.72);max-width:34em}
.s-kapcsolat .s-ct-map-if[data-cel-embed-state="static"] .cel-embed__ph,.s-kapcsolat .s-ct-map-if[data-cel-embed-state="off"]{display:none}
.s-kapcsolat .s-ct-map:not(.loaded) .s-ct-map-fb{padding-bottom:96px}
.s-kapcsolat .s-ct-hours-h[id],.s-kapcsolat .s-ct-map[id]{scroll-margin-top:110px}
/* „Frissítve“ (R-280, .s-updated iz style.css) ispod linka na FAQ; preview pravilo .s-ct-txt p daje margin-bottom 20px */
.s-kapcsolat .s-ct-txt .s-updated{margin:18px 0 0}

/* ---------- forme (grupe, kontakt, elállás): stanja ---------- */
.s-grp-f[aria-busy="true"] .btn{opacity:.6;cursor:progress}
.s-grp-f [data-err-for="_form"]{margin-top:12px}
.s-grp-ok[tabindex]:focus{outline:2px solid var(--fultok);outline-offset:4px}
.cel-wp17-note{margin:14px 0 0;font:400 13.5px/1.45 var(--fb)}
.cel-wp17-contact{background:var(--bg2)}

/* ---------- gyik: sva pitanja u 2 kolone (kolona grupe) na papiru ---------- */
.cel-wp17-gyik .s-ft-doc{grid-column:1/-1;max-width:none}
.cel-wp17-faq-cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 clamp(32px,5vw,80px);align-items:start}
.cel-wp17-faq-col>.s-ft-group+.s-ft-group{margin-top:40px}
.cel-wp17-gyik .s-ft-doc>.s-ft-faqp{margin-top:48px}
@media (max-width:899px){.cel-wp17-faq-cols{grid-template-columns:1fr}.cel-wp17-faq-col+.cel-wp17-faq-col{margin-top:40px}}

/* ---------- TL;DR u zaglavlju dokument-strane (gyik, generička, blog) ---------- */
.cel-wp17-tldr p,.cel-wp17-tldr div{max-width:880px;font:400 clamp(18px,1.6vw,21px)/1.55 var(--fb);color:var(--txt);margin:0;border-left:4px solid var(--fultok);padding:4px 0 4px clamp(16px,2.4vw,28px)}
.cel-wp17-tldr p+p{margin-top:.6em}

/* ---------- uslovi / pravne strane / elállás / generička: sadržaj na papiru ---------- */
.s-ft-grid>.cel-wp17-doc-solo{grid-column:1/-1;max-width:880px}
.cel-wp17-draft{margin:10px 0 0;font:400 14px/1.45 var(--fb)}
.cel-wp17-pdf{margin:14px 0 0;font:500 15px/1.4 var(--fb)}
.s-ft-doc>h3{font:500 22px/1.2 var(--fd);text-transform:none;letter-spacing:0;color:var(--txt);margin:32px 0 10px}
.s-ft-doc>p a:not(.s-link):not(.btn),.s-ft-doc li a:not(.s-link):not(.btn),.s-ft-doc td a{color:var(--kek);text-decoration:underline;text-underline-offset:3px}
.s-ft-doc ol{list-style:decimal}
.s-ft-doc .s-lead{font:500 19px/1.55 var(--fb);color:var(--txt);margin:0 0 1.2em}
.cel-legal-block{margin:24px 0 32px}
.cel-scroll-x{overflow-x:auto;-webkit-overflow-scrolling:touch}
.cel-imprint,.cel-cookie-table{width:100%;border-collapse:collapse;font:400 15px/1.5 var(--fb);color:var(--txt-2)}
.cel-imprint th,.cel-imprint td,.cel-cookie-table th,.cel-cookie-table td{padding:10px 12px 10px 0;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.cel-imprint tr:first-child th,.cel-imprint tr:first-child td{border-top:1px solid var(--line)}
.cel-imprint th{width:34%;font-weight:600;color:var(--txt)}
.cel-cookie-table thead th{font:600 13px/1.3 var(--fb);letter-spacing:.04em;text-transform:uppercase;color:var(--txt)}
.cel-cookie-table{min-width:640px}
.cel-cookie-table code{font:500 13px/1.3 ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--ink)}
.s-ft-doc table:not([class]){width:100%;border-collapse:collapse;margin:16px 0 28px;font:400 14.5px/1.45 var(--fb);color:var(--txt-2)}
.s-ft-doc table:not([class]) th,.s-ft-doc table:not([class]) td{padding:10px 12px 10px 0;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.s-ft-doc table:not([class]) thead th{font:600 13px/1.3 var(--fb);letter-spacing:.04em;text-transform:uppercase;color:var(--txt);border-bottom-color:var(--line-2)}
@media (max-width:700px){.s-ft-doc table:not([class]),.cel-imprint{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}.cel-imprint th{width:auto;min-width:120px}}
.cel-withdrawal-model{background:#fff;border:1px dashed var(--line-2);border-radius:6px;padding:clamp(18px,3vw,28px)}
.s-ft-doc .cel-withdrawal-model h2{margin-top:0;font-size:clamp(22px,2.2vw,28px)}
.s-ft-doc .cel-withdrawal-model p{font-size:16px}
.cel-notice{padding:14px 18px;background:var(--bg3);border-left:4px solid var(--kek);font:500 16px/1.5 var(--fb);color:var(--txt)}
.cel-notice--alcohol{border-left-color:var(--piros)}

/* ---------- elállás: forma u 2 koraka (papir) ---------- */
.cel-wp17-wd{margin:56px 0 40px;padding:0}
.s-ft-doc .cel-wp17-wd>h2{margin-top:0}
.cel-wp17-wd-f{margin-top:18px;background:#fff;border-color:var(--line-2)}
.cel-wp17-wd-f .f label{color:#5a6069}
.cel-wp17-wd-f .f input,.cel-wp17-wd-f .f select,.cel-wp17-wd-f .f textarea{background:#fff;color:var(--ink);border-color:rgba(21,24,28,.28)}
.cel-wp17-wd-f .chk{margin-top:18px;color:var(--ink);font:500 16px/1.5 var(--fb)}
.cel-wp17-wd-f .chk input{width:20px;height:20px;flex:0 0 auto}
.cel-wp17-wd-f [data-err-for]{color:var(--piros-d,#b3261e)}
.cel-wp17-wd-f h3{font:500 24px/1.15 var(--fd);text-transform:uppercase;letter-spacing:.005em;color:var(--ink);margin:0 0 16px}
.cel-wp17-wd-f h3:focus{outline:0}
.cel-wp17-wd-review{margin:0 0 18px;display:grid;gap:10px}
.cel-wp17-wd-review>div{display:grid;grid-template-columns:minmax(120px,34%) 1fr;gap:12px;padding-bottom:10px;border-bottom:1px solid var(--line)}
.cel-wp17-wd-review dt{font:500 13px/1.4 var(--fb);color:#5a6069}
.cel-wp17-wd-review dd{margin:0;font:500 16px/1.4 var(--fb);color:var(--ink);overflow-wrap:anywhere}
.cel-wp17-wd-stmt{margin:0 0 18px;padding:14px 18px;background:var(--paper);border-left:4px solid var(--piros)}
.s-ft-doc .cel-wp17-wd-stmt p{margin:0;font:500 16px/1.5 var(--fb);color:var(--ink)}
.cel-wp17-wd-acts{display:flex;flex-wrap:wrap;gap:12px;margin:8px 0 0}
.cel-wp17-wd-acts .btn{margin:0}
.cel-wp17-btn-ghost{background:transparent;color:var(--ink);border-color:rgba(21,24,28,.35)}
.cel-wp17-btn-ghost:hover{border-color:var(--ink);background:rgba(21,24,28,.05)}
.s-ft-doc [data-wd-done]{font:500 17px/1.55 var(--fb);color:var(--ink)}
@media (max-width:560px){.cel-wp17-wd-review>div{grid-template-columns:1fr;gap:2px}}

/* ---------- grupe: preporučeni paketi ispod 380 px — preview grid 2×1fr traži ~374 px i na 360 izlazi 14 px van ekrana (C30, ARCH
   §23.4 t.13). Na 390 px (i šire) ostaju 2 kolone kao u preview-u. ---------- */
@media (max-width:379px){.s-grp-pkg{grid-template-columns:minmax(0,1fr)}}

/* ---------- grupe: dodatni tekst strane (_cel_content) ---------- */
.cel-wp17-grp-txt{background:var(--bg)}
.cel-wp17-grp-txt .s-ft-doc{margin:0;max-width:880px}

/* ---------- 404: predlozi i popularni paketi ---------- */
.cel-wp17-404-h{font:500 18px/1.2 var(--fd);letter-spacing:.06em;text-transform:uppercase;color:var(--txt-2);margin:32px 0 0}
.cel-wp17-404-pk small{font:400 13px/1 var(--fb);opacity:.72;margin-left:4px}

/* ---------- blog lista i post ---------- */
.cel-wp17-blog .s-ft-head{margin-bottom:8px}
.cel-wp17-blog .cel-wp17-tldr{margin-top:40px}
.cel-wp17-posts{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));gap:24px;margin-top:clamp(40px,5vw,64px)}
.cel-wp17-post{display:flex;flex-direction:column;background:var(--bg3);border:1px solid var(--line);border-radius:8px;overflow:hidden;min-width:0}
.cel-wp17-post-cov{display:block;aspect-ratio:16/10;overflow:hidden;background:var(--bg2)}
.cel-wp17-post-cov img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s var(--m-ease,cubic-bezier(.2,.7,.2,1))}
.cel-wp17-post:hover .cel-wp17-post-cov img{transform:scale(1.03)}
.cel-wp17-post-body{display:flex;flex-direction:column;gap:10px;padding:20px 22px 24px;flex:1 1 auto}
.cel-wp17-post-body h2{font:700 24px/1.05 var(--fd);text-transform:uppercase;letter-spacing:.005em;margin:0}
.cel-wp17-post-body h2 a{color:var(--txt);text-decoration:none}
.cel-wp17-post-body h2 a:hover{text-decoration:underline;text-underline-offset:4px;text-decoration-color:var(--fultok)}
.cel-wp17-post-body p{margin:0;font:400 15px/1.55 var(--fb);color:var(--txt-2)}
.cel-wp17-post-body .s-link{margin-top:auto;align-self:flex-start}
.cel-wp17-post-meta{font:500 13px/1.3 var(--fb)!important;color:rgba(243,241,236,.62)!important;letter-spacing:.02em}
.cel-wp17-pager{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin-top:40px;font:500 15px/1 var(--fb)}
.cel-wp17-pager ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.cel-wp17-pager a,.cel-wp17-pager span{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:0 14px;border:1px solid var(--line-2);border-radius:999px;color:var(--txt);text-decoration:none}
.cel-wp17-pager a:hover{background:var(--kek);border-color:var(--kek);color:#fff}
.cel-wp17-pager [aria-current]{background:var(--txt);color:var(--ink);border-color:var(--txt)}
.cel-wp17-blog-empty{margin-top:40px}
.cel-wp17-post-fig{margin:0 0 28px}
.cel-wp17-post-img{width:100%;height:auto;display:block;border-radius:6px}
.cel-wp17-post-tldr{padding:0;margin:0 0 28px;background:transparent}
.cel-wp17-post-tldr>div{border-left:4px solid var(--kek);padding:4px 0 4px 20px}
.cel-wp17-post-tldr b{display:block;font:500 13px/1.2 var(--fd);letter-spacing:.08em;text-transform:uppercase;color:var(--kek);margin:0 0 8px}
.s-ft-doc .cel-wp17-post-tldr p{font:500 18px/1.55 var(--fb);color:var(--ink);margin:0}
.cel-wp17-single .s-ft-doc img{max-width:100%;height:auto}
.cel-wp17-single .s-ft-doc figure{margin:24px 0}
.cel-wp17-single .s-ft-doc figcaption{font:400 13px/1.4 var(--fb);color:#5a6069;margin-top:8px}
.cel-wp17-single .s-ft-doc blockquote{margin:24px 0;padding:4px 0 4px 20px;border-left:4px solid var(--fultok)}
.cel-wp17-author{display:flex;gap:18px;align-items:flex-start;margin:48px 0 0;padding:22px 0 0;border-top:1px solid var(--line)}
.cel-wp17-author img{width:88px;height:88px;border-radius:50%;object-fit:cover;flex:0 0 auto}
.cel-wp17-author b{display:block;font:500 20px/1.2 var(--fd);text-transform:uppercase;color:var(--ink)}
.cel-wp17-author .s-muted{display:block;font:400 14px/1.4 var(--fb);margin:2px 0 8px}
.s-ft-doc .cel-wp17-author p{font-size:15px;margin:0}
.cel-wp17-back{margin:40px 0 0}

/* ---------- landing: pravni linkovi futera, napomena o recenzijama ---------- */
.cel-wp17-lp-legal a{white-space:nowrap}
.s-lp-rev .s-rev-note{margin:18px 0 0;font:400 13px/1.45 var(--fb);color:var(--txt-3);max-width:70ch}

/* ---------- pristupačnost: tekst samo za čitače ekrana ---------- */
.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0}

@media print{
  .cel-wp17-wd,.cel-wp17-pager,.cel-wp17-back{display:none}
  .cel-withdrawal-model{border-style:solid}
}
