/* ==== #29 ktv-contact-css ==== */
/* z-index 55: iznad sticky headera (50) da se panel ne zavuče pod njega, ispod mobilnog drawera (60) */
.ktv-cw{ position:fixed; right:20px; bottom:20px; z-index:55; font-family:var(--ktv-font-body); transition:bottom .28s cubic-bezier(.2,.8,.2,1) }
/* Kad se pojavi donja fiksna traka (PDP add-to-cart .ktv-sticky.is-on ILI compare .ktv-cmpbar), FAB se digne da se ne preklapaju. :has() je 2023+ (univerzalno danas). */
body:has(.ktv-sticky.is-on) .ktv-cw,
body:has(.ktv-cmpbar:not([hidden])) .ktv-cw{ bottom:96px }
.ktv-cw__fab{
  position:relative; width:60px; height:60px; border-radius:50%; border:0; cursor:pointer;
  display:grid; place-items:center; color:var(--ktv-brand-ink,#1a1206);
  background:var(--ktv-brand-primary,#D98A1E);
  box-shadow:0 10px 26px rgba(217,138,30,.42), 0 2px 6px rgba(0,0,0,.18);
  transition:transform .18s, box-shadow .18s;
}
.ktv-cw__fab:hover{ transform:translateY(-2px) scale(1.04); box-shadow:0 14px 32px rgba(217,138,30,.5) }
.ktv-cw__fab svg{ width:27px; height:27px; position:absolute; transition:opacity .2s, transform .2s }
.ktv-cw__fab-close{ opacity:0; transform:rotate(-45deg) scale(.6) }
.ktv-cw.is-open .ktv-cw__fab-open{ opacity:0; transform:rotate(45deg) scale(.6) }
.ktv-cw.is-open .ktv-cw__fab-close{ opacity:1; transform:none }
.ktv-cw.is-open .ktv-cw__ping{ display:none }
.ktv-cw__ping{
  position:absolute; inset:0; border-radius:50%; border:2px solid var(--ktv-brand-primary,#D98A1E);
  animation:ktv-cw-ping 2.4s cubic-bezier(0,0,.2,1) infinite;
}
@keyframes ktv-cw-ping{ 0%{opacity:.7;transform:scale(1)} 70%,100%{opacity:0;transform:scale(1.6)} }

.ktv-cw__panel{
  position:absolute; right:0; bottom:74px; width:340px; max-width:calc(100vw - 32px);
  background:var(--ktv-bg-elevated,#fff); border:1px solid var(--ktv-border-default,#e7e0d4);
  border-radius:18px; box-shadow:var(--ktv-shadow-xl,0 24px 60px rgba(22,36,61,.22));
  max-height:calc(100dvh - 100px); overflow:hidden auto; transform-origin:bottom right;
  animation:ktv-cw-in .22s cubic-bezier(.2,.8,.2,1); overscroll-behavior:contain;
}
@keyframes ktv-cw-in{ from{opacity:0; transform:translateY(10px) scale(.96)} to{opacity:1; transform:none} }

.ktv-cw__head{
  display:flex; align-items:flex-start; justify-content:space-between; gap:10px;
  padding:16px 16px 13px; color:var(--ktv-text-inverse,#fff);
  background:radial-gradient(120% 140% at 15% 0%, #22375c, var(--ktv-navy,#16243D));
}
.ktv-cw__head strong{ font-family:var(--ktv-font-display); font-size:16px; display:block }
.ktv-cw__status{ font-size:11.5px; display:inline-flex; align-items:center; gap:6px; margin-top:3px; opacity:.9 }
.ktv-cw__status::before{ content:""; width:7px; height:7px; border-radius:50% }
.ktv-cw__status.is-on::before{ background:#37D67A; box-shadow:0 0 0 3px rgba(55,214,122,.25) }
.ktv-cw__status.is-off::before{ background:#F2B01E }
.ktv-cw__x{ flex:none; width:30px; height:30px; display:grid; place-items:center; border:0; border-radius:8px;
  background:rgba(255,255,255,.12); color:#fff; cursor:pointer; transition:.15s }
.ktv-cw__x:hover{ background:rgba(255,255,255,.22) } .ktv-cw__x svg{ width:16px; height:16px }

.ktv-cw__chans{ padding:12px; display:flex; flex-direction:column; gap:7px }
.ktv-cw__chan{
  display:flex; align-items:center; gap:12px; padding:10px 11px; border-radius:12px;
  text-decoration:none; color:var(--ktv-text-primary,#1e2733);
  border:1px solid var(--ktv-border-subtle,#efe9df); background:var(--ktv-bg-canvas,#FBF8F2);
  transition:.15s;
}
.ktv-cw__chan:hover{ border-color:var(--ktv-brand-primary,#D98A1E); transform:translateX(2px);
  box-shadow:0 4px 14px rgba(22,36,61,.08) }
.ktv-cw__ico{ flex:none; width:38px; height:38px; border-radius:10px; display:grid; place-items:center; color:#fff }
.ktv-cw__ico svg{ width:22px; height:22px }
.ktv-cw__chan--wa .ktv-cw__ico{ background:#25D366 }
.ktv-cw__chan--vi .ktv-cw__ico{ background:#7360F2 }
.ktv-cw__ico--n{ background:var(--ktv-navy,#16243D) }
.ktv-cw__lbl{ display:flex; flex-direction:column; line-height:1.25; min-width:0 }
.ktv-cw__lbl b{ font-size:14px; font-weight:600 }
.ktv-cw__lbl em{ font-style:normal; font-size:11.5px; color:var(--ktv-text-tertiary,#8a8577); white-space:nowrap; overflow:hidden; text-overflow:ellipsis }

.ktv-cw__or{ text-align:center; position:relative; margin:4px 16px 10px }
.ktv-cw__or::before{ content:""; position:absolute; top:50%; left:0; right:0; height:1px; background:var(--ktv-border-subtle,#efe9df) }
.ktv-cw__or span{ position:relative; background:var(--ktv-bg-elevated,#fff); padding:0 10px;
  font-size:11px; letter-spacing:.06em; text-transform:uppercase; color:var(--ktv-text-tertiary,#8a8577) }

.ktv-cw__form{ padding:0 12px 14px; display:flex; flex-direction:column; gap:8px }
.ktv-cw__hp{ position:absolute!important; left:-9999px!important; width:1px; height:1px; opacity:0 }
.ktv-cw__row{ display:flex; gap:8px }
.ktv-cw__form input, .ktv-cw__form textarea{
  width:100%; border:1px solid var(--ktv-border-default,#e7e0d4); border-radius:10px;
  padding:10px 12px; font:inherit; font-size:13.5px; color:var(--ktv-text-primary,#1e2733);
  background:var(--ktv-bg-canvas,#FBF8F2); outline:none; transition:border-color .15s, box-shadow .15s;
}
.ktv-cw__form input:focus, .ktv-cw__form textarea:focus{
  border-color:var(--ktv-brand-primary,#D98A1E); box-shadow:0 0 0 3px rgba(217,138,30,.16) }
.ktv-cw__form textarea{ resize:vertical; min-height:64px }
.ktv-cw__send{
  border:0; border-radius:11px; padding:12px; cursor:pointer; font:inherit; font-weight:600; font-size:14px;
  color:var(--ktv-brand-ink,#1a1206); background:var(--ktv-brand-primary,#D98A1E); transition:.15s;
}
.ktv-cw__send:hover{ filter:brightness(1.04) } .ktv-cw__send:disabled{ opacity:.6; cursor:progress }
.ktv-cw__msg{ margin:2px 0 0; font-size:12.5px; padding:8px 10px; border-radius:9px }
.ktv-cw__msg.is-ok{ background:rgba(55,214,122,.14); color:#127a3e }
.ktv-cw__msg.is-err{ background:rgba(226,86,86,.12); color:#b62d2d }

@media(max-width:520px){
  .ktv-cw{ right:14px; bottom:14px }
  .ktv-cw__fab{ width:54px; height:54px } .ktv-cw__fab svg{ width:24px; height:24px }
  .ktv-cw__panel{ width:calc(100vw - 28px) }
}
@media(prefers-reduced-motion:reduce){
  .ktv-cw__ping{ animation:none; display:none }
  .ktv-cw__panel{ animation:none } .ktv-cw__fab{ transition:none }
}

/* ==== #31 ktv-bg-fx ==== */
body{
  background-color:#FBF8F2 !important;
  background-image:
    radial-gradient(120% 90% at 78% 20%, transparent 42%, rgba(237,231,219,.58) 100%),
    radial-gradient(980px 600px at 80% -12%, rgba(217,138,30,.13), transparent 58%),
    linear-gradient(rgba(22,36,61,.032) 1px, transparent 1px),
    linear-gradient(90deg, rgba(22,36,61,.032) 1px, transparent 1px) !important;
  background-size: auto, auto, 42px 42px, 42px 42px !important;
  background-attachment: fixed, fixed, fixed, fixed !important;
  background-repeat: no-repeat, no-repeat, repeat, repeat !important;
}
/* da efekt s body-ja probije kroz glavni block-tema wrapper (na standardnim WP stranicama) */
.wp-site-blocks{ background:transparent !important }
/* Mobilni: background-attachment:fixed janks scroll (iOS Safari re-rasterizuje cijeli viewport svaki frame,
   a dvije 42px repeating-grid ploče to pogoršavaju). Na uskim ekranima → scroll. */
@media (max-width:768px){
  body{ background-attachment: scroll, scroll, scroll, scroll !important; }
}

/* ==== #13 ktv-skeleton ==== */
/* hidden atribut MORA pobijediti display iz klase.
   Bez ovoga .ktv-drop__panel{display:flex} nadjaca [hidden]{display:none} (ista tezina,
   moje dolazi kasnije) -> svi dropdowni i drawer ostaju stalno otvoreni. */
[hidden]{ display:none !important; }

html{ scroll-behavior:smooth; }

/* Linkovi: amber kao SITAN tekst pada WCAG AA (2.6:1) — koristimo text-safe varijantu */
a{ color:var(--ktv-brand-text); }
a:hover{ color:var(--ktv-brand-primary-hover); }

/* Fokus mora biti vidljiv — tastatura je dio pristupačnosti, ne dodatak */
:focus-visible{
  outline:2px solid var(--ktv-brand-primary);
  outline-offset:2px;
  border-radius:4px;
}

::selection{ background:var(--ktv-brand-soft); color:var(--ktv-text-primary); }

img,svg,video{ max-width:100%; height:auto; }

@media (prefers-reduced-motion:reduce){
  html{ scroll-behavior:auto; }
}

/* ==== #14 ktv-header-css ==== */
/* Tema TT5 renderuje svoj header kroz template part — gasimo ga, ne dupliramo */
.wp-site-blocks > header.wp-block-template-part{ display:none !important; }

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

.ktv-topbar{
  background:var(--ktv-navy-deep); color:#E7EDF5;
  font-size:12.5px; padding:8px 0; position:relative; z-index:40; overflow:hidden;
}
/* Pokretni ticker: dvije identične grupe, translateX(-50%) = jedna grupa → beskonačna petlja */
.ktv-tk{ overflow:hidden; -webkit-mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent); mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent) }
.ktv-tk__track{ display:flex; width:max-content; animation:ktv-tk-scroll 34s linear infinite }
.ktv-tk:hover .ktv-tk__track{ animation-play-state:paused }
.ktv-tk__set{ display:flex; align-items:center; flex:none }
.ktv-tk__i{ display:inline-flex; align-items:center; white-space:nowrap; padding:0 24px; position:relative }
.ktv-tk__i::after{ content:""; position:absolute; right:0; top:50%; transform:translateY(-50%); width:4px; height:4px; border-radius:50%; background:currentColor; opacity:.3 }
.ktv-topbar b{ color:var(--ktv-brand-secondary); font-weight:600 }
.ktv-tk__l{ display:inline-flex; align-items:center; gap:7px; color:#E7EDF5; text-decoration:none; transition:color .15s }
.ktv-tk__l:hover{ color:var(--ktv-brand-secondary) }
.ktv-tk__l svg{ width:14px; height:14px; opacity:.85 }
.ktv-tk__l em{ font-style:normal; opacity:.62; font-size:11px }
@keyframes ktv-tk-scroll{ from{transform:translateX(0)} to{transform:translateX(-50%)} }
@media(prefers-reduced-motion:reduce){
  .ktv-tk{ -webkit-mask-image:none; mask-image:none }
  .ktv-tk__track{ animation:none; width:100%; flex-wrap:wrap; justify-content:center }
  .ktv-tk__set:last-child{ display:none }
}

.ktv-nav{
  position:sticky; top:0; z-index:50;
  backdrop-filter:blur(14px);
  background:color-mix(in srgb, var(--ktv-bg-canvas) 86%, transparent);
  border-bottom:1px solid var(--ktv-border-default);
}
body.admin-bar .ktv-nav{ top:32px }
@media(max-width:782px){ body.admin-bar .ktv-nav{ top:46px } }

.ktv-nav__in{ max-width:var(--ktv-maxw); margin:0 auto; padding:13px 24px; display:flex; align-items:center; gap:20px }

/* Wordmark je ZIVI TEKST, ne slika:
   - ostar na svakom ekranu, nula HTTP zahtjeva
   - citac ekrana cita "KupiTelevizor"
   - na tamnoj (navy) povrsini "Kupi" se prebaci na bijelo jednom linijom;
     crni PNG bi tamo nestao */
.ktv-brand{ display:inline-flex; align-items:center; flex:none; text-decoration:none }
.ktv-brand__wm{
  font-family:var(--ktv-font-display); font-weight:800;
  font-size:clamp(24px,2.4vw,29px); letter-spacing:-.035em; line-height:1; white-space:nowrap;
  font-optical-sizing:auto;
}
.ktv-brand__k{ color:var(--ktv-text-primary) }
.ktv-brand__t{ color:var(--ktv-brand-primary) }

/* Varijanta za tamne povrsine (navy traka, drawer na navy, buduci hero) */
.ktv-on-dark .ktv-brand__k{ color:var(--ktv-text-inverse) }

.ktv-links{ display:flex; gap:4px; align-items:center }
.ktv-links__a{
  display:inline-flex; align-items:center; gap:5px;
  font-family:var(--ktv-font-body); font-size:14.5px; font-weight:500; line-height:1;
  color:var(--ktv-text-primary); background:none; border:0; cursor:pointer;
  padding:9px 10px; border-radius:9px; text-decoration:none; transition:.16s;
}
.ktv-links__a:hover{ color:var(--ktv-brand-primary-hover); background:var(--ktv-bg-tinted) }
/* AA: amber #D98A1E kao tekst pada (2.61) → text-safe zlatna #8A5400 (5.92). Amber ostaje samo na CTA pozadini. */
.ktv-links__a--akc{ color:var(--ktv-brand-text); font-weight:700 }
.ktv-links__a--akc:hover{ color:var(--ktv-brand-text); background:var(--ktv-brand-soft,rgba(217,138,30,.12)) }
.ktv-drawer__top--akc{ color:var(--ktv-brand-text) }
.ktv-drawer__top--akc span{ font-family:var(--ktv-font-mono); font-size:12px; opacity:.7 }
.ktv-caret{ width:11px; height:11px; opacity:.55; transition:transform .18s }
.ktv-drop__btn[aria-expanded="true"] .ktv-caret{ transform:rotate(180deg) }

.ktv-drop{ position:relative }
.ktv-drop__panel{
  position:absolute; top:calc(100% + 8px); left:0; min-width:230px;
  background:var(--ktv-bg-elevated); border:1px solid var(--ktv-border-default);
  border-radius:var(--ktv-radius-sm); box-shadow:var(--ktv-shadow-lg);
  padding:8px; display:flex; flex-direction:column; gap:2px;
}
/* Nevidljivi "most" preko 8px procjepa dugme→panel: bez njega miš na putu do panela izađe iz .ktv-drop pa se meni zatvori. Postoji samo dok je panel otvoren (kad je [hidden], ::before se ne renderuje). */
.ktv-drop__panel::before{ content:""; position:absolute; top:-11px; left:0; right:0; height:11px }
.ktv-drop__panel--grid{ display:grid; grid-template-columns:1fr 1fr; min-width:300px }
.ktv-drop__panel a{
  font-size:14px; color:var(--ktv-text-primary); text-decoration:none;
  padding:9px 11px; border-radius:8px; transition:.14s;
}
.ktv-drop__panel a:hover{ background:var(--ktv-bg-tinted); color:var(--ktv-brand-primary-hover) }
.ktv-drop__all{ font-weight:600; border-bottom:1px solid var(--ktv-border-subtle); border-radius:8px 8px 0 0 !important; margin-bottom:4px }

.ktv-search{
  flex:1; min-width:0; display:flex; align-items:center; gap:9px;
  background:var(--ktv-bg-elevated); border:1px solid var(--ktv-border-default);
  border-radius:12px; padding:0 13px; transition:border-color .16s, box-shadow .16s;
}
.ktv-search:focus-within{ border-color:var(--ktv-brand-primary); box-shadow:0 0 0 3px rgba(217,138,30,.18) }
.ktv-search__ico{ width:17px; height:17px; flex:none; color:var(--ktv-text-tertiary) }
.ktv-search input{
  flex:1; min-width:0; border:0; background:none; outline:none;
  font-family:var(--ktv-font-body); font-size:13.5px; color:var(--ktv-text-primary); padding:11px 0;
}
.ktv-search input::placeholder{ color:var(--ktv-text-tertiary) }

.ktv-act{ display:flex; gap:8px; flex:none }
.ktv-ico{
  position:relative; width:40px; height:40px; display:grid; place-items:center;
  border:1px solid var(--ktv-border-default); border-radius:12px;
  background:var(--ktv-bg-elevated); color:var(--ktv-text-primary);
  cursor:pointer; transition:.16s; text-decoration:none;
}
.ktv-ico:hover{ border-color:var(--ktv-brand-primary); color:var(--ktv-brand-primary) }
.ktv-ico svg{ width:19px; height:19px }
.ktv-cart__count{
  position:absolute; top:-6px; right:-6px; min-width:19px; height:19px; padding:0 4px;
  display:grid; place-items:center; border-radius:999px;
  background:var(--ktv-brand-primary); color:var(--ktv-brand-ink);
  font-family:var(--ktv-font-mono); font-size:10px; font-weight:700;
  border:2px solid var(--ktv-bg-canvas);
}
.ktv-burger{ display:none }
.ktv-search-btn{ display:none }
.ktv-search-btn .ktv-i-close{ display:none }

/* ---------- Drawer ---------- */
.ktv-scrim{ position:fixed; inset:0; background:var(--ktv-bg-overlay); -webkit-backdrop-filter:blur(2px); backdrop-filter:blur(2px);
  z-index:59; opacity:0; visibility:hidden; transition:opacity .3s ease, visibility 0s .3s; }
.ktv-scrim.is-open{ opacity:1; visibility:visible; transition:opacity .3s ease; }
.ktv-drawer{
  position:fixed; top:0; right:0; bottom:0; width:min(390px,90vw); z-index:60; box-sizing:border-box;
  background:var(--ktv-bg-canvas); border-left:1px solid var(--ktv-border-default);
  box-shadow:var(--ktv-shadow-xl); padding:0 20px 26px; overflow-y:auto; overscroll-behavior:contain;
  display:flex; flex-direction:column; gap:4px;
  transform:translateX(100%); visibility:hidden;
  transition:transform .36s cubic-bezier(.16,.84,.44,1), visibility 0s .36s;
}
.ktv-drawer.is-open{ transform:none; visibility:visible; transition:transform .36s cubic-bezier(.16,.84,.44,1); }
/* Sticky glava — X uvijek dostupan, granica preko cijele širine drawera */
.ktv-drawer__head{ position:sticky; top:0; z-index:3; display:flex; align-items:center; justify-content:space-between;
  margin:0 -20px 10px; padding:16px 20px 13px; background:var(--ktv-bg-canvas); border-bottom:1px solid var(--ktv-border-default) }
.ktv-drawer__head .ktv-brand__wm{ font-size:22px }
.ktv-drawer__x{ flex:none }
.ktv-drawer__x svg{ transition:transform .22s ease }
.ktv-drawer__x:hover{ background:var(--ktv-brand-soft); border-color:var(--ktv-brand-primary); color:var(--ktv-brand-primary-hover) }
.ktv-drawer__x:hover svg{ transform:rotate(90deg) }
.ktv-drawer__nav{ display:flex; flex-direction:column }
.ktv-drawer__top{
  position:relative; display:flex; align-items:center; gap:8px;
  font-family:var(--ktv-font-display); font-weight:700; font-size:16.5px;
  color:var(--ktv-text-primary); text-decoration:none; padding:13px 2px;
  border-bottom:1px solid var(--ktv-border-subtle); transition:color .16s, padding-left .16s;
}
.ktv-drawer__top::after{ content:""; width:7px; height:7px; margin-left:auto; flex:none;
  border-right:2px solid var(--ktv-text-tertiary); border-bottom:2px solid var(--ktv-text-tertiary);
  transform:rotate(-45deg); transition:border-color .16s, transform .16s }
.ktv-drawer__top:hover{ color:var(--ktv-brand-primary-hover); padding-left:7px }
.ktv-drawer__top:hover::after{ border-color:var(--ktv-brand-primary); transform:rotate(-45deg) translate(2px,-2px) }
.ktv-drawer__sub{
  font-size:14.5px; color:var(--ktv-text-secondary); text-decoration:none;
  padding:10px 4px 10px 18px; border-bottom:1px solid var(--ktv-border-subtle); transition:color .16s, padding-left .16s;
}
.ktv-drawer__sub:hover{ color:var(--ktv-brand-primary-hover); padding-left:22px }
.ktv-drawer__lbl{
  font-family:var(--ktv-font-mono); font-size:11px; letter-spacing:.2em; text-transform:uppercase;
  color:var(--ktv-navy); margin:20px 0 9px;
}
.ktv-drawer__brands{ display:grid; grid-template-columns:1fr 1fr; gap:7px }
.ktv-drawer__brands a{
  font-family:var(--ktv-font-mono); font-size:12px; color:var(--ktv-navy); text-decoration:none;
  background:var(--ktv-navy-soft); border:1px solid var(--ktv-navy-line);
  padding:10px; border-radius:9px; text-align:center; transition:border-color .16s, color .16s, transform .12s;
}
.ktv-drawer__brands a:hover{ border-color:var(--ktv-brand-primary); color:var(--ktv-brand-primary-hover); transform:translateY(-1px) }

@media(max-width:1180px){ .ktv-links{ gap:0 } .ktv-links__a{ padding:9px 7px; font-size:14px } }
@media(max-width:1000px){
  .ktv-links{ display:none }
  .ktv-search{ display:none }
  .ktv-burger{ display:grid }
  .ktv-search-btn{ display:grid }
  .ktv-nav__in{ gap:12px }
  .ktv-act{ margin-left:auto }   /* search bar skriven → gurni akcije uz desnu ivicu */
  /* Search preuzima nav-traku: logo/korpa/meni se sklone, dugme postane × */
  .ktv-nav--search .ktv-brand{ display:none }
  .ktv-nav--search .ktv-search{ display:flex }
  .ktv-nav--search .ktv-act > a{ display:none }
  .ktv-nav--search .ktv-burger{ display:none }
  .ktv-nav--search .ktv-search-btn .ktv-i-search{ display:none }
  .ktv-nav--search .ktv-search-btn .ktv-i-close{ display:block }
}
@media(prefers-reduced-motion:reduce){ *{ transition:none !important } }

/* ==== #15 ktv-footer-css ==== */
.wp-site-blocks > footer.wp-block-template-part{ display:none !important; }

.ktv-foot{ background:radial-gradient(900px 520px at 18% 0%, #22375c 0%, #16243D 46%, #0f1a2e 100%); color:#c9d4e2; margin-top:48px }
.ktv-foot__in{
  max-width:var(--ktv-maxw); margin:0 auto; padding:56px 24px 40px;
  display:grid; grid-template-columns:1.5fr 1fr 1fr 1fr; gap:32px;
}
@media(min-width:901px){ .ktv-foot__col:not(.ktv-foot__about){ padding-top:18px } }
.ktv-foot__about p{ font-size:13px; color:rgba(255,255,255,.66); margin:14px 0; max-width:34ch; line-height:1.6 }
.ktv-foot__col h5{
  font-family:var(--ktv-font-display); font-size:13px; font-weight:700;
  text-transform:uppercase; letter-spacing:.05em; color:#fff; margin:0 0 14px;
}
.ktv-foot__col a{
  display:block; font-size:13.5px; color:rgba(255,255,255,.68);
  padding:5px 0; text-decoration:none; transition:color .16s;
}
.ktv-foot__col a:hover{ color:var(--ktv-brand-secondary,#EAA842) }
/* Popularne kategorije — interni linkovi na arhive (SEO §8.5), site-wide */
.ktv-foot__pop{ max-width:var(--ktv-maxw); margin:0 auto; padding:20px 24px 4px;
  display:flex; flex-wrap:wrap; gap:12px 30px; border-top:1px solid rgba(255,255,255,.09) }
.ktv-foot__popgroup{ display:flex; flex-wrap:wrap; align-items:baseline; gap:7px 12px }
.ktv-foot__poplbl{ font-family:var(--ktv-font-mono); font-size:10px; letter-spacing:.16em; text-transform:uppercase; color:#7f8ea3 }
.ktv-foot__pop a{ font-size:13px; color:#c9d4e2; text-decoration:none; transition:color .15s }
.ktv-foot__pop a:hover{ color:var(--ktv-brand-secondary,#EAA842) }
.ktv-foot__about .ktv-brand{ text-decoration:none }
.ktv-foot .ktv-brand__k{ color:#fff }
.ktv-foot__legal{ margin:16px 0; font-family:var(--ktv-font-mono); font-size:12px; line-height:1.75; color:rgba(255,255,255,.58) }
.ktv-foot__legal b{ display:block; font-family:var(--ktv-font-display); font-size:14px; font-weight:700; color:#fff; margin-bottom:4px; letter-spacing:-.01em }
.ktv-foot__legal span{ display:block }
.ktv-foot__contact{ list-style:none; margin:16px 0; padding:0; display:flex; flex-direction:column; gap:9px }
.ktv-foot__contact li{ display:flex; align-items:flex-start; gap:9px; font-size:13px; color:rgba(255,255,255,.72); line-height:1.45 }
.ktv-foot__contact svg{ width:15px; height:15px; flex:none; margin-top:2px; color:var(--ktv-brand-secondary,#EAA842) }
.ktv-foot__contact a{ color:rgba(255,255,255,.88); text-decoration:none }
.ktv-foot__contact a:hover{ color:var(--ktv-brand-secondary,#EAA842) }
.ktv-foot__contact em{ font-style:normal; color:rgba(255,255,255,.45); font-size:11.5px }

.ktv-pay{ display:flex; gap:7px; flex-wrap:wrap }
.ktv-pay span{
  font-family:var(--ktv-font-mono); font-size:10px; font-weight:600; letter-spacing:.02em;
  color:rgba(255,255,255,.82); background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.16); padding:6px 9px; border-radius:7px; -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px);
}

/* Navy traka zatvara stranicu i vraća se na navy iz gornje trake — stranica dobija ramu */
.ktv-foot__bar{ background:rgba(0,0,0,.22); border-top:1px solid rgba(255,255,255,.10) }
.ktv-foot__bar-in{
  max-width:var(--ktv-maxw); margin:0 auto; padding:18px 24px;
  display:flex; justify-content:space-between; align-items:center; gap:16px; flex-wrap:wrap;
  font-size:12px; color:#93A3B8;
}
.ktv-foot__mono{ font-family:var(--ktv-font-mono); letter-spacing:.08em; color:#7E90A8 }

@media(max-width:900px){ .ktv-foot__in{ grid-template-columns:1fr 1fr } }
@media(max-width:560px){
  .ktv-foot__in{ grid-template-columns:1fr; padding:40px 20px 30px }
  .ktv-foot__bar-in{ justify-content:center; text-align:center }
}

/* ==== #17 ktv-search-css ==== */
.ktv-search{ position:relative }

.ktv-sbox{
  position:absolute; top:calc(100% + 8px); left:0; right:0; z-index:70;
  background:var(--ktv-bg-elevated); border:1px solid var(--ktv-border-default);
  border-radius:var(--ktv-radius-sm); box-shadow:var(--ktv-shadow-lg);
  overflow:hidden; max-height:70vh; overflow-y:auto;
}
.ktv-search--drawer .ktv-sbox{ position:static; margin-top:8px; box-shadow:none; max-height:none }

.ktv-sbox__grp{ padding:6px }
.ktv-sbox__lbl{
  font-family:var(--ktv-font-mono); font-size:10px; letter-spacing:.2em; text-transform:uppercase;
  color:var(--ktv-navy); padding:8px 10px 6px; display:block;
}
.ktv-sbox__opt{
  display:flex; align-items:center; gap:11px; padding:9px 10px; border-radius:9px;
  color:var(--ktv-text-primary); text-decoration:none; cursor:pointer;
}
.ktv-sbox__opt:hover,.ktv-sbox__opt[aria-selected="true"]{ background:var(--ktv-bg-tinted) }
.ktv-sbox__opt img{ width:38px; height:38px; object-fit:contain; flex:none; border-radius:6px; background:var(--ktv-bg-tinted) }
.ktv-sbox__t{ flex:1; min-width:0; font-size:14px; line-height:1.25; overflow:hidden; text-overflow:ellipsis; white-space:nowrap }
.ktv-sbox__c{ font-family:var(--ktv-font-mono); font-weight:700; font-size:12.5px; color:var(--ktv-text-primary); flex:none }
.ktv-sbox__tag{
  font-family:var(--ktv-font-mono); font-size:10px; color:var(--ktv-navy);
  background:var(--ktv-navy-soft); border:1px solid var(--ktv-navy-line);
  padding:3px 7px; border-radius:6px; flex:none;
}
.ktv-sbox__sep{ height:1px; background:var(--ktv-border-subtle); margin:2px 8px }
.ktv-sbox__prazno{ padding:20px 14px; text-align:center; color:var(--ktv-text-secondary); font-size:13.5px }
.ktv-sbox__prazno b{ color:var(--ktv-text-primary) }
.ktv-sbox__sve{
  display:block; padding:12px; text-align:center; font-size:13px; font-weight:600;
  color:var(--ktv-brand-text); text-decoration:none; border-top:1px solid var(--ktv-border-subtle);
  background:var(--ktv-bg-canvas);
}
.ktv-sbox__sve:hover{ background:var(--ktv-bg-tinted) }
.ktv-sbox__load{ padding:16px; text-align:center; color:var(--ktv-text-tertiary); font-size:13px }

/* ==== #19 ktv-card-css ==== */
/* ==== Emisivni ekran (signature) — GLOBALNO (kartice, product galerija, compare). ==== */
.ktv-screen{ position:relative }
.ktv-screen__spill{ position:absolute; inset:6% 4% -18% 4%; z-index:0; border-radius:40px;
  background:var(--wall); background-size:180% 180%; filter:blur(34px) saturate(1.25); opacity:.46 }
/* F6 perf-budžet: kartice NE koriste blur (živi spill blur ostaje samo na hero/PDP). Meki sjaj = radial mask (GPU-jeftino). */
.ktv-card .ktv-screen__spill{ filter:none; opacity:.34;
  -webkit-mask-image:radial-gradient(72% 62% at 50% 42%,#000 26%,transparent 76%);
          mask-image:radial-gradient(72% 62% at 50% 42%,#000 26%,transparent 76%) }
.ktv-screen__body{ position:relative; z-index:2; aspect-ratio:16/9; border:5px solid var(--ktv-panel-bezel);
  border-radius:11px; overflow:hidden; background:var(--wall); background-size:200% 200%;
  box-shadow:0 22px 44px -18px rgba(var(--ktv-shadow-rgb),.4), inset 0 1px 0 rgba(255,255,255,.14), inset 0 0 0 1px rgba(0,0,0,.4) }
.ktv-screen__body::after{ content:""; position:absolute; inset:0; background:
  radial-gradient(120% 120% at 50% 40%,transparent 55%,rgba(0,0,0,.28) 100%),
  linear-gradient(115deg,rgba(255,255,255,.28),transparent 24%,transparent 80%,rgba(255,255,255,.08)) }
.ktv-screen__sheen{ position:absolute; inset:0; z-index:3; background:linear-gradient(115deg,transparent 34%,rgba(255,255,255,.20) 48%,transparent 60%);
  transform:translateX(-60%); animation:ktvSheen 7s ease-in-out infinite }
@keyframes ktvSheen{ 0%,76%{ transform:translateX(-62%) } 90%,100%{ transform:translateX(122%) } }
@media(prefers-reduced-motion:reduce){ .ktv-screen__sheen{ animation:none } }

/* ==== GRID — 3 kolone svugdje ==== */
.ktv-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:20px }
.ktv-grid--3{ grid-template-columns:repeat(3,1fr) }
@media(max-width:980px){ .ktv-grid,.ktv-grid--3{ grid-template-columns:repeat(2,1fr); gap:16px } }
@media(max-width:600px){ .ktv-grid,.ktv-grid--3{ grid-template-columns:1fr } }

/* ==== KARTICA (spec-forward B) ==== */
.ktv-card{ container-type:inline-size; display:flex; flex-direction:column; background:var(--ktv-bg-elevated);
  border:1px solid var(--ktv-border-default); border-radius:var(--ktv-radius); overflow:hidden; position:relative;
  box-shadow:0 6px 22px rgba(var(--ktv-shadow-rgb),.07); transition:transform .25s,box-shadow .25s,border-color .25s }
.ktv-card:hover{ transform:translateY(-5px); border-color:var(--ktv-border-strong); box-shadow:0 22px 48px -14px rgba(var(--ktv-shadow-rgb),.22) }

/* TOP: media (lijevo) + dijagonala (desno); ne-TV (bez dijagonale) → slika puna širina */
.ktv-card--b .ktv-card__top{ position:relative; display:grid; grid-template-columns:1.25fr 1fr; gap:10px; align-items:center; padding:20px 20px 8px }
.ktv-card--b .ktv-card__top--full{ grid-template-columns:1fr }
.ktv-card--b .ktv-card__top--full .ktv-card__img{ aspect-ratio:16/11 }
.ktv-card--b .ktv-card__media{ position:relative; display:block; padding:0; overflow:hidden }
.ktv-card--b .ktv-card__media .ktv-screen{ width:100% }
.ktv-card--b .ktv-card__img{ display:block; width:100%; aspect-ratio:16/10; object-fit:contain }
/* DIJAGONALA — heroj */
.ktv-card__size{ text-align:right }
.ktv-card__size b{ display:block; font-family:var(--ktv-font-display); font-weight:800; letter-spacing:-.045em; line-height:.88;
  font-size:clamp(40px,20cqi,58px); color:var(--ktv-navy-deep) }
.ktv-card__size b i{ font-style:normal; font-size:.5em; letter-spacing:0; color:var(--ktv-text-tertiary) }
.ktv-card__sizelbl{ font-family:var(--ktv-font-mono); font-size:10px; letter-spacing:.12em; text-transform:uppercase; color:var(--ktv-text-tertiary) }
.ktv-card__dist{ display:inline-flex; align-items:center; gap:4px; margin-top:5px; font-family:var(--ktv-font-mono); font-size:9.5px; color:var(--ktv-navy) }
.ktv-card__dist svg{ opacity:.7 }

/* badge (panel) gore-lijevo; Akcija/% ispod njega (desno-gore je zauzeto dijagonalom) */
/* Philips produžena garancija 2+3 — sticker dole-lijevo (gore-lijevo je panel badge + akcija tag) */
.ktv-card__gar23{ position:absolute; left:14px; bottom:8px; z-index:6; width:38px; height:38px; display:block; pointer-events:none;
  filter:drop-shadow(0 2px 6px rgba(var(--ktv-shadow-rgb),.28)) }
@media(max-width:560px){ .ktv-card__gar23{ width:32px; height:32px; left:10px; bottom:6px } }
.ktv-card__badge{ position:absolute; top:14px; left:14px; z-index:6; font-family:var(--ktv-font-mono);
  font-size:9.5px; font-weight:700; letter-spacing:.05em; color:var(--ktv-navy);
  background:var(--ktv-bg-elevated); border:1px solid var(--ktv-navy-line); padding:4px 8px; border-radius:6px;
  box-shadow:0 3px 10px rgba(var(--ktv-shadow-rgb),.14) }
.ktv-card__tag{ position:absolute; top:14px; left:14px; right:auto; z-index:6; font-family:var(--ktv-font-mono);
  font-size:10px; font-weight:700; background:var(--ktv-brand-primary); color:var(--ktv-brand-ink); padding:4px 8px; border-radius:6px }
.ktv-card--b:has(.ktv-card__badge) .ktv-card__tag{ top:46px } /* desno-gore zauzeto dijagonalom → Akcija gore-lijevo, ispod panel badgea */

/* BODY */
.ktv-card__body{ padding:6px 20px 18px; display:flex; flex-direction:column; flex:1 }
.ktv-card__brand{ font-family:var(--ktv-font-mono); font-size:10.5px; color:var(--ktv-navy); letter-spacing:.05em; text-transform:uppercase }
.ktv-card__title{ font-family:var(--ktv-font-display); font-size:16px; font-weight:700; letter-spacing:-.02em;
  margin:2px 0 12px; line-height:1.22; color:var(--ktv-text-primary); text-decoration:none }
.ktv-card__title:hover{ color:var(--ktv-brand-primary-hover) }
.ktv-card__rating{ font-size:11.5px; color:var(--ktv-text-secondary); margin:-4px 0 12px }

/* IKONA-MREŽA 2×2 */
.ktv-card__specs2{ display:grid; grid-template-columns:1fr 1fr; gap:8px; margin:0 0 15px }
.ktv-cspec{ display:flex; align-items:center; gap:9px; background:var(--ktv-bg-warm); border:1px solid var(--ktv-border-default);
  border-radius:11px; padding:9px 11px; transition:border-color .15s }
.ktv-card:hover .ktv-cspec{ border-color:var(--ktv-border-strong) }
.ktv-cspec svg{ color:var(--ktv-navy); flex:none }
.ktv-cspec__t{ min-width:0; display:flex; flex-direction:column }
.ktv-cspec .k{ font-family:var(--ktv-font-mono); font-size:8.5px; letter-spacing:.07em; text-transform:uppercase; color:var(--ktv-text-tertiary); line-height:1.2 }
.ktv-cspec .v{ font-family:var(--ktv-font-mono); font-size:12.5px; font-weight:700; color:var(--ktv-navy-deep); white-space:nowrap; line-height:1.25; overflow:hidden; text-overflow:ellipsis }
/* Ne-TV „pitch" (kratki opis, umjesto 2×2 mreže) */
.ktv-card__pitch{ font-size:13px; color:var(--ktv-text-secondary); line-height:1.55; margin:0 0 15px;
  display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden }

/* PODNOŽJE: cijena lijevo + stanje desno */
.ktv-card--b .ktv-card__foot{ display:flex; align-items:center; justify-content:space-between; gap:10px; margin:auto 0 13px; padding-top:13px; border-top:1px solid var(--ktv-border-subtle) }
.ktv-card--b .ktv-card__price{ display:block; font-family:var(--ktv-font-mono); font-weight:700; font-size:22px; color:var(--ktv-text-primary); letter-spacing:-.01em }
.ktv-card--b .ktv-card__price del{ font-size:12px; color:var(--ktv-text-tertiary); margin-right:6px; font-weight:400 }
.ktv-card__price del::before{ content:"PMC"; display:inline-block; margin-right:4px; font-size:9px; letter-spacing:.08em; opacity:.8 }
.ktv-card--b .ktv-card__price ins{ text-decoration:none }
.ktv-card__stock{ display:inline-flex; align-items:center; gap:7px; font-size:12px; font-weight:600; white-space:nowrap }
.ktv-card__stock i{ width:8px; height:8px; border-radius:50%; background:currentColor }
.ktv-card__stock.is-in{ color:var(--ktv-success) }
.ktv-card__stock.is-in i{ box-shadow:0 0 0 3px rgba(63,125,58,.16) }
.ktv-card__stock.is-out{ color:var(--ktv-text-tertiary) }
.ktv-card__stock.is-out i{ box-shadow:0 0 0 3px rgba(138,121,101,.14) }

/* CTA: Dodaj u korpu (main) + Uporedi (ghost) */
.ktv-card__cta2{ display:grid; grid-template-columns:1.5fr 1fr; gap:8px }
.ktv-card__cta2 .ktv-btn{ display:flex; align-items:center; justify-content:center; gap:8px; width:100%; box-sizing:border-box;
  font-family:var(--ktv-font-display); font-weight:700; font-size:13.5px; line-height:1; padding:12px 14px; border-radius:12px;
  border:1px solid transparent; text-decoration:none; cursor:pointer; transition:filter .14s, box-shadow .16s, transform .08s, background .16s, border-color .16s }
.ktv-card__cta2 .ktv-btn--main{ background:var(--ktv-brand-primary,#D98A1E); color:#fff; box-shadow:0 6px 16px rgba(217,138,30,.26) }
.ktv-card__cta2 .ktv-btn--main:hover{ filter:brightness(1.05); box-shadow:0 10px 24px rgba(217,138,30,.4); transform:translateY(-1px) }
.ktv-card__cta2 .ktv-btn--main:active{ transform:translateY(0); box-shadow:0 4px 12px rgba(217,138,30,.3) }
.ktv-card__cta2 .ktv-btn--ghost{ background:var(--ktv-bg-elevated); color:var(--ktv-text-primary); border-color:var(--ktv-border-strong) }
.ktv-card__cta2 .ktv-btn--ghost:hover{ background:var(--ktv-bg-tinted); border-color:var(--ktv-navy) }
.ktv-card__cta2 .ktv-cmp-toggle svg{ opacity:.85; flex:none }
.ktv-card__cta2 .ktv-cmp-toggle[aria-pressed="true"]{ background-color:var(--ktv-navy-soft); border-color:var(--ktv-navy); color:var(--ktv-navy-deep) }
.ktv-card__cta2 .ktv-cmp-toggle[aria-pressed="true"] svg{ opacity:1 }
/* WC ubaci <a class="added_to_cart"> nakon add — sakrij */
.ktv-card__cta2 .added, .ktv-card__cta2 .added_to_cart{ display:none }
.ktv-card__cta2 .ktv-btn.loading{ opacity:.7; pointer-events:none }

/* ==== #18 ktv-home-css ==== */
.ktv-wrap{ max-width:var(--ktv-maxw); margin:0 auto; padding:0 24px }
.ktv-sec{ padding-top:74px; padding-bottom:74px }
.ktv-sec--tight{ padding-top:44px; padding-bottom:44px }
.ktv-sec--warm{ background:var(--ktv-bg-warm) }

.ktv-eyebrow{ display:inline-flex; align-items:center; gap:8px; font-family:var(--ktv-font-mono);
  font-size:11.5px; letter-spacing:.14em; text-transform:uppercase; color:var(--ktv-navy) }
.ktv-eyebrow i{ width:6px; height:6px; border-radius:50%; background:var(--ktv-brand-primary); box-shadow:0 0 8px var(--ktv-brand-primary) }
.ktv-h2{ font-family:var(--ktv-font-display); font-weight:800; font-size:clamp(28px,3.6vw,40px);
  letter-spacing:-.035em; line-height:1.04; margin:12px 0 0; color:var(--ktv-text-primary) }
.ktv-head{ margin-bottom:34px; display:flex; align-items:flex-end; justify-content:space-between; gap:20px; flex-wrap:wrap }
.ktv-morelink{ font-weight:600; color:var(--ktv-brand-text); font-size:14.5px; white-space:nowrap; text-decoration:none }
.ktv-morelink:hover{ color:var(--ktv-brand-primary-hover) }
.ktv-head--center{ text-align:center; justify-content:center }
.ktv-head--center .ktv-eyebrow{ justify-content:center }

.ktv-btn{ display:inline-flex; align-items:center; gap:8px; font-family:var(--ktv-font-body);
  font-weight:600; font-size:15px; padding:13px 22px; border-radius:13px; text-decoration:none;
  border:1px solid transparent; cursor:pointer; transition:.2s; line-height:1 }
.ktv-btn--main{ background:var(--ktv-brand-primary); color:var(--ktv-brand-ink); box-shadow:0 10px 26px -9px rgba(var(--ktv-shadow-rgb),.55) }
.ktv-btn--main:hover{ background:var(--ktv-brand-primary-hover); transform:translateY(-2px) }
.ktv-btn--ghost{ background:var(--ktv-bg-elevated); border-color:var(--ktv-border-strong); color:var(--ktv-text-primary) }
.ktv-btn--ghost:hover{ border-color:var(--ktv-brand-primary); color:var(--ktv-brand-primary) }

/* ---- Emisivni ekran (signature) ---- */
.ktv-screen{ position:relative }
.ktv-screen__spill{ position:absolute; inset:6% 4% -18% 4%; z-index:0; border-radius:40px;
  background:var(--wall); background-size:180% 180%; filter:blur(34px) saturate(1.25); opacity:.46 }
.ktv-screen__body{ position:relative; z-index:2; aspect-ratio:16/9; border:5px solid var(--ktv-panel-bezel);
  border-radius:11px; overflow:hidden; background:var(--wall); background-size:200% 200%;
  box-shadow:0 22px 44px -18px rgba(var(--ktv-shadow-rgb),.4), inset 0 1px 0 rgba(255,255,255,.14), inset 0 0 0 1px rgba(0,0,0,.4) }
.ktv-screen__body::after{ content:""; position:absolute; inset:0; background:
  radial-gradient(120% 120% at 50% 40%,transparent 55%,rgba(0,0,0,.28) 100%),
  linear-gradient(115deg,rgba(255,255,255,.28),transparent 24%,transparent 80%,rgba(255,255,255,.08)) }
.ktv-screen__sheen{ position:absolute; inset:0; z-index:3; background:linear-gradient(115deg,transparent 34%,rgba(255,255,255,.20) 48%,transparent 60%);
  transform:translateX(-60%); animation:ktvSheen 7s ease-in-out infinite }
@keyframes ktvSheen{ 0%,76%{ transform:translateX(-62%) } 90%,100%{ transform:translateX(122%) } }
.ktv-tvset{ display:flex; flex-direction:column; align-items:center }
.ktv-tvset .ktv-screen{ width:100% }
.ktv-tvset__stand{ width:30%; height:9px; background:#131C2C; border-radius:0 0 5px 5px }
.ktv-tvset__base{ width:44%; height:8px; background:var(--ktv-panel-bezel); border-radius:8px; margin-top:2px }
.ktv-tvset__shadow{ width:58%; height:16px; background:radial-gradient(rgba(var(--ktv-shadow-rgb),.22),transparent 72%); filter:blur(5px); margin-top:8px }

/* ---- Hero ---- */
.ktv-hero{ padding:64px 24px 40px; display:grid; grid-template-columns:1.05fr .95fr; gap:48px; align-items:center }
.ktv-hero__h1{ font-family:var(--ktv-font-display); font-weight:800; font-size:clamp(40px,6.2vw,68px);
  line-height:.96; letter-spacing:-.045em; margin:20px 0; color:var(--ktv-text-primary) }
.ktv-hero__h1 em{ font-style:normal; background:linear-gradient(96deg,var(--ktv-brand-primary),var(--ktv-brand-secondary));
  -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent }
.ktv-hero__lede{ color:var(--ktv-text-secondary); font-size:17.5px; line-height:1.6; max-width:46ch; margin:0 0 28px }
.ktv-hero__cta{ display:flex; flex-wrap:wrap; gap:12px; margin-bottom:28px }
.ktv-trust{ display:flex; flex-wrap:wrap; gap:10px 22px; font-size:13.5px; color:var(--ktv-text-secondary) }
.ktv-trust b{ display:inline-flex; align-items:center; gap:7px; font-weight:500 }
.ktv-trust b::before{ content:""; width:16px; height:16px; border-radius:50%; flex:none; background:var(--ktv-brand-primary);
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M9 16.2 4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4z'/%3E%3C/svg%3E") center/12px no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M9 16.2 4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4z'/%3E%3C/svg%3E") center/12px no-repeat }
.ktv-hero{ overflow-x:clip }  /* leteci chipovi ne smiju napraviti scroll stranice (ne dira sticky header — on je izvan) */
.ktv-hero__stage{ position:relative; display:grid; place-items:center; min-height:360px }
.ktv-hero__stage .ktv-tvset{ width:min(460px,92%) }
.ktv-chip{ position:absolute; z-index:5; font-family:var(--ktv-font-mono); font-size:11.5px; font-weight:500;
  background:var(--ktv-bg-elevated); border:1px solid var(--ktv-border-default); padding:9px 13px; border-radius:11px;
  box-shadow:0 12px 28px -10px rgba(var(--ktv-shadow-rgb),.35) }
.ktv-chip b{ color:var(--ktv-navy) }
.ktv-chip--1{ top:2%; left:-3%; animation:ktvFloat 5s ease-in-out infinite }
.ktv-chip--2{ bottom:24%; right:-6%; animation:ktvFloat 5.6s ease-in-out .6s infinite }
.ktv-chip--3{ bottom:2%; left:8%; animation:ktvFloat 6.2s ease-in-out .3s infinite }
@keyframes ktvFloat{ 0%,100%{ transform:translateY(0) } 50%{ transform:translateY(-9px) } }

/* ---- HERO (statična verzija, bez efekata) — .ktvh ---- */
.ktvh{ position:relative; overflow:hidden; padding:58px 30px 46px;
  background:linear-gradient(180deg, #1a2c4c 0%, var(--ktv-navy-deep) 60%, #101d33 100%) }
.ktvh::before{ content:""; position:absolute; inset:0; pointer-events:none; opacity:.5;
  background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
  background-size:46px 46px;
  -webkit-mask-image:radial-gradient(120% 100% at 50% 40%,#000 32%,transparent 80%);
          mask-image:radial-gradient(120% 100% at 50% 40%,#000 32%,transparent 80%) }
.ktvh__in{ position:relative; z-index:2; display:grid; grid-template-columns:1fr 1.08fr; gap:52px; align-items:center; max-width:var(--ktv-maxw,1200px); margin:0 auto }
.ktvh__eyebrow{ display:inline-flex; align-items:center; gap:10px; font-family:var(--ktv-font-mono); font-size:12px; letter-spacing:.2em; text-transform:uppercase; color:var(--ktv-brand-secondary) }
.ktvh__eyebrow i{ width:7px; height:7px; border-radius:50%; background:var(--ktv-brand-primary) }
.ktvh__h1{ font-family:var(--ktv-font-display); font-weight:800; letter-spacing:-.035em; line-height:1.02; font-size:clamp(40px,5.2vw,70px); margin:20px 0 0; color:#fff }
.ktvh__h1 .am{ color:var(--ktv-brand-secondary) }
.ktvh__sub{ font-size:clamp(15px,1.4vw,18px); line-height:1.62; color:rgba(234,240,248,.66); margin:22px 0 0; max-width:46ch }
.ktvh__cta{ display:flex; flex-wrap:wrap; gap:14px; margin:32px 0 0 }
.ktvh__trust{ display:flex; flex-wrap:wrap; gap:18px 26px; margin:30px 0 0 }
.ktvh__trust .t{ display:inline-flex; align-items:center; gap:9px; font-size:13.5px; color:rgba(234,240,248,.66) }
.ktvh__trust .t svg{ color:var(--ktv-brand-secondary); flex:none }
.ktvh .ktv-btn{ display:inline-flex; align-items:center; gap:9px; font-family:var(--ktv-font-display); font-weight:700; font-size:15px; padding:15px 26px; border-radius:13px; border:1px solid transparent; text-decoration:none; transition:transform .12s, box-shadow .16s, background .16s, border-color .16s, filter .14s }
.ktvh .ktv-btn--main{ background:var(--ktv-brand-primary); color:var(--ktv-brand-ink); box-shadow:0 10px 24px rgba(217,138,30,.26) }
.ktvh .ktv-btn--main:hover{ transform:translateY(-2px); filter:brightness(1.05); box-shadow:0 14px 32px rgba(217,138,30,.38) }
.ktvh .ktv-btn--ghost{ background:rgba(255,255,255,.05); color:#fff; border-color:rgba(255,255,255,.16) }
.ktvh .ktv-btn--ghost:hover{ transform:translateY(-2px); background:rgba(255,255,255,.09); border-color:rgba(255,255,255,.28) }
/* DESNO: emisivna galerija — VRAĆENO NA STARO */
.ktv-ghero__stage{ position:relative }
.ktv-gviewport{ position:relative; width:100%; aspect-ratio:16/9 }
.ktv-gslide{ position:absolute; inset:0; opacity:0; transition:opacity .8s ease }
.ktv-gslide.on{ opacity:1 }
.ktv-gslide--screen{ border:7px solid var(--ktv-panel-bezel,#0E1626); border-radius:16px; overflow:hidden; background:var(--wall); background-size:cover;
  box-shadow:0 46px 84px -30px rgba(0,0,0,.72), inset 0 0 0 1px rgba(0,0,0,.6) }
.ktv-gslide--screen::after{ content:""; position:absolute; inset:0; z-index:3;
  background:radial-gradient(120% 120% at 50% 32%,transparent 50%,rgba(0,0,0,.36) 100%),linear-gradient(115deg,rgba(255,255,255,.26),transparent 22%,transparent 82%,rgba(255,255,255,.06)) }
.ktv-gslide--photo{ display:grid; place-items:center; padding:0 }
.ktv-gslide--photo::before{ content:""; position:absolute; width:82%; height:82%; border-radius:50%; background:radial-gradient(circle,rgba(255,255,255,.12),transparent 68%); z-index:0 }
.ktv-gslide--photo img{ position:relative; z-index:1; max-width:100%; max-height:100%; object-fit:contain; filter:drop-shadow(0 26px 46px rgba(0,0,0,.55)) }
.ktv-gscreen__grid{ position:absolute; inset:0; z-index:2; mix-blend-mode:overlay;
  background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px); background-size:40px 40px }
.ktv-gscreen__sheen{ position:absolute; inset:0; z-index:4; background:linear-gradient(115deg,transparent 38%,rgba(255,255,255,.16) 48%,transparent 58%); transform:translateX(-64%); animation:ktvSheen 7s ease-in-out infinite }
.ktv-gcaption{ position:relative; z-index:3; min-height:150px; margin-top:16px; width:92%; margin-left:auto; margin-right:auto }
.ktv-gcard{ position:absolute; inset:0; display:flex; flex-direction:column; justify-content:center; gap:9px; text-decoration:none;
  background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.14); border-radius:16px; padding:15px 20px;
  opacity:0; transform:translateY(8px); transition:opacity .5s ease,transform .5s ease; pointer-events:none; -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px) }
.ktv-gcard.on{ opacity:1; transform:none; pointer-events:auto }
.ktv-gcard:hover{ border-color:rgba(255,255,255,.3) }
.ktv-gcard__top{ display:flex; align-items:center; gap:10px; flex-wrap:wrap }
.ktv-gcard__brand{ font-family:var(--ktv-font-mono); font-size:11px; letter-spacing:.06em; text-transform:uppercase; color:var(--ktv-brand-secondary,#EAA842) }
.ktv-gcard__chips{ display:flex; gap:6px; flex-wrap:wrap }
.ktv-gcard__chips span{ font-family:var(--ktv-font-mono); font-size:10px; color:rgba(255,255,255,.82); background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.14); padding:3px 8px; border-radius:999px }
.ktv-gcard__name{ font-family:var(--ktv-font-display); font-size:18px; font-weight:700; letter-spacing:-.02em; color:#fff; line-height:1.18; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden }
.ktv-gcard__foot{ display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:2px }
.ktv-gcard__price{ font-family:var(--ktv-font-mono); font-weight:700; font-size:20px; color:#fff }
.ktv-gcard__price .woocommerce-Price-amount{ color:#fff }
.ktv-gcard__price del{ color:rgba(255,255,255,.5); font-size:13px; font-weight:400; margin-right:5px } .ktv-gcard__price ins{ text-decoration:none; color:#fff }
.ktv-gcard__go{ font-family:var(--ktv-font-display); font-weight:700; font-size:13.5px; color:var(--ktv-brand-secondary,#EAA842); flex:none }
.ktv-gdots{ display:flex; gap:2px; justify-content:center; margin-top:16px; position:relative; z-index:5 }
.ktv-gdot{ width:26px; height:26px; border:0; background:transparent; cursor:pointer; padding:0; position:relative; transition:.2s }
.ktv-gdot::before{ content:""; position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:9px; height:9px; border-radius:50%; background:rgba(255,255,255,.28); transition:.2s }
.ktv-gdot.on::before{ background:var(--ktv-brand-primary); transform:translate(-50%,-50%) scale(1.25); box-shadow:0 0 10px rgba(217,138,30,.6) }
@media(max-width:1000px){
  .ktvh__in{ grid-template-columns:1fr; gap:36px } .ktv-ghero__stage{ order:2 } .ktvh{ padding:44px 20px 40px }
}


/* ---- Header NAVY samo na naslovnoj (stapa se s gallery herojem). Ostale stranice: nedirnute (ovaj CSS se učitava samo na is_front_page). ---- */
body.ktv-home .ktv-nav{ background:color-mix(in srgb, #16243D 90%, transparent); border-bottom-color:rgba(255,255,255,.12) }
body.ktv-home .ktv-nav .ktv-brand__k{ color:#fff }
body.ktv-home .ktv-links__a{ color:rgba(255,255,255,.86) }
body.ktv-home .ktv-links__a:hover{ color:#fff; background:rgba(255,255,255,.10) }
body.ktv-home .ktv-caret{ color:#fff }
body.ktv-home .ktv-nav .ktv-search{ background:rgba(255,255,255,.08); border-color:rgba(255,255,255,.16) }
body.ktv-home .ktv-nav .ktv-search:focus-within{ border-color:var(--ktv-brand-secondary,#EAA842) }
body.ktv-home .ktv-nav .ktv-search__ico{ color:rgba(255,255,255,.6) }
body.ktv-home .ktv-search input{ color:#fff }
body.ktv-home .ktv-search input::placeholder{ color:rgba(255,255,255,.55) }
body.ktv-home .ktv-ico{ background:rgba(255,255,255,.08); border-color:rgba(255,255,255,.16); color:#fff }
body.ktv-home .ktv-ico:hover{ background:rgba(255,255,255,.16) }

/* ---- USP ---- */
.ktv-usp{ display:grid; grid-template-columns:repeat(4,1fr); gap:1px; margin:34px 0; position:relative;
  background:var(--ktv-border-default); border:1px solid var(--ktv-border-default); border-radius:18px; overflow:hidden;
  box-shadow:0 14px 36px -14px rgba(var(--ktv-shadow-rgb),.16) }
.ktv-usp::after{ content:""; position:absolute; inset:0; pointer-events:none; z-index:3; border-radius:18px; box-shadow:inset 0 1px 0 rgba(255,255,255,.9) }
.ktv-usp__i{ display:flex; gap:13px; align-items:center; background:#fff; padding:22px 22px; transition:background .2s, box-shadow .2s }
.ktv-usp__i:hover{ background:linear-gradient(180deg,#fff,#FCF6EB); box-shadow:inset 0 0 0 1px rgba(217,138,30,.2) }
.ktv-usp__i i{ width:46px; height:46px; flex:none; border-radius:13px; display:grid; place-items:center;
  background:linear-gradient(160deg,#22375c,var(--ktv-navy,#1E3A5F)); color:#fff;
  box-shadow:0 8px 18px -7px rgba(22,36,61,.6), inset 0 1px 0 rgba(255,255,255,.18);
  transition:transform .22s, background .22s, box-shadow .22s }
.ktv-usp__i:hover i{ transform:scale(1.08) rotate(-3deg); background:linear-gradient(160deg,var(--ktv-brand-primary),#EAA842); box-shadow:0 11px 24px -6px rgba(217,138,30,.6) }
.ktv-usp__i svg{ width:21px; height:21px }
.ktv-usp__i h4{ font-family:var(--ktv-font-display); font-size:15px; font-weight:700; letter-spacing:-.01em; color:var(--ktv-text-primary) }
.ktv-usp__i p{ font-size:12.5px; color:var(--ktv-text-secondary); margin-top:2px }

/* ---- Slider (projektori i platna) ---- */
.ktv-slider{ position:relative }
.ktv-slider__track{ display:flex; gap:18px; overflow-x:auto; scroll-snap-type:x mandatory; scroll-behavior:smooth; padding:6px 2px 12px; scrollbar-width:thin; scrollbar-color:var(--ktv-border-strong) transparent }
.ktv-slider__track::-webkit-scrollbar{ height:8px }
.ktv-slider__track::-webkit-scrollbar-thumb{ background:var(--ktv-border-strong); border-radius:8px }
.ktv-slider__track::-webkit-scrollbar-track{ background:transparent }
.ktv-slider__item{ flex:0 0 clamp(240px,25vw,286px); scroll-snap-align:start; display:flex }
.ktv-slider__item .ktv-card{ width:100% }
.ktv-slider__nav{ position:absolute; top:33%; transform:translateY(-50%); z-index:6; width:44px; height:44px; border-radius:50%;
  border:1px solid var(--ktv-border-default); background:var(--ktv-bg-elevated); color:var(--ktv-text-primary);
  cursor:pointer; box-shadow:0 10px 26px -8px rgba(var(--ktv-shadow-rgb),.34); display:grid; place-items:center; transition:background .16s,color .16s,border-color .16s,transform .16s }
.ktv-slider__nav:hover{ background:var(--ktv-brand-primary); color:#fff; border-color:var(--ktv-brand-primary); transform:translateY(-50%) scale(1.06) }
.ktv-slider__nav--prev{ left:-14px } .ktv-slider__nav--next{ right:-14px }
@media(max-width:640px){ .ktv-slider__nav{ display:none } .ktv-slider__item{ flex-basis:76vw } }

/* ---- Tiles ---- */
.ktv-tiles{ display:grid; grid-template-columns:repeat(3,1fr); gap:18px }
.ktv-tile{ display:block; text-decoration:none; background:var(--ktv-bg-elevated); border:1px solid var(--ktv-border-default);
  border-radius:var(--ktv-radius); padding:20px; overflow:hidden; box-shadow:0 6px 22px rgba(var(--ktv-shadow-rgb),.06);
  transition:transform .25s,box-shadow .25s,border-color .25s }
.ktv-tile:hover{ transform:translateY(-4px); border-color:var(--ktv-border-strong); box-shadow:0 20px 44px -14px rgba(var(--ktv-shadow-rgb),.2) }
.ktv-tile .ktv-screen{ width:100%; margin-bottom:16px }
.ktv-tile__media{ width:100%; aspect-ratio:16/10; margin-bottom:14px; display:grid; place-items:center; overflow:hidden }
.ktv-tile__img{ max-width:100%; max-height:100%; object-fit:contain; filter:drop-shadow(0 16px 26px rgba(22,36,61,.18)) }
.ktv-tile__k{ font-family:var(--ktv-font-mono); font-size:11px; color:var(--ktv-navy); letter-spacing:.06em }
.ktv-tile h3{ font-family:var(--ktv-font-display); font-size:20px; font-weight:800; letter-spacing:-.02em; margin:4px 0; color:var(--ktv-text-primary) }
.ktv-tile p{ font-size:13px; color:var(--ktv-text-secondary); line-height:1.55 }
.ktv-tile__go{ display:inline-block; margin-top:12px; font-size:13px; font-weight:600; color:var(--ktv-brand-text) }

/* ---- Alati (kalkulator hero + vodiči + uporedi) ---- */
.ktv-tools{ display:grid; grid-template-columns:1.5fr 1fr; grid-auto-rows:1fr; gap:16px }
.ktv-tool{ display:flex; gap:15px; text-decoration:none; background:var(--ktv-bg-elevated); border:1px solid var(--ktv-border-default);
  border-radius:var(--ktv-radius); padding:22px; box-shadow:0 6px 22px rgba(var(--ktv-shadow-rgb),.06);
  transition:transform .22s,box-shadow .22s,border-color .22s }
.ktv-tool:hover{ transform:translateY(-4px); border-color:var(--ktv-border-strong); box-shadow:0 20px 44px -14px rgba(var(--ktv-shadow-rgb),.2) }
.ktv-tool__ic{ width:46px; height:46px; flex:none; border-radius:13px; display:grid; place-items:center; background:var(--ktv-navy-soft); color:var(--ktv-navy) }
.ktv-tool__ic svg{ width:23px; height:23px }
.ktv-tool__k{ font-family:var(--ktv-font-mono); font-size:10.5px; text-transform:uppercase; letter-spacing:.06em; color:var(--ktv-navy) }
.ktv-tool h3{ font-family:var(--ktv-font-display); font-size:18px; font-weight:800; letter-spacing:-.02em; margin:3px 0 6px; color:var(--ktv-text-primary) }
.ktv-tool p{ font-size:12.5px; color:var(--ktv-text-secondary); line-height:1.5 }
.ktv-tool__go{ display:inline-block; margin-top:9px; font-size:12.5px; font-weight:600; color:var(--ktv-brand-text) }
.ktv-tool--hero{ grid-row:span 2; flex-direction:column; justify-content:space-between; position:relative; overflow:hidden;
  background:linear-gradient(150deg,#16243D 0%,#1E3A5F 60%,#274a78 100%); border:0; color:#fff }
.ktv-tool--hero::before{ content:""; position:absolute; right:-50px; top:-50px; width:210px; height:210px; border-radius:50%;
  background:radial-gradient(circle,rgba(217,138,30,.28),transparent 68%); pointer-events:none }
.ktv-tool--hero:hover{ transform:translateY(-4px); box-shadow:0 26px 54px -16px rgba(22,36,61,.5) }
.ktv-tool__stage{ position:relative; display:grid; place-items:center; padding:16px 0 8px; min-height:150px }
.ktv-tool__tv{ position:relative; width:min(210px,70%); aspect-ratio:16/9; border-radius:8px; border:5px solid #0a0f18;
  background:var(--wall); background-size:200% 200%; display:grid; place-items:center; box-shadow:0 20px 40px -12px rgba(0,0,0,.6) }
.ktv-tool__glow{ position:absolute; inset:0; border-radius:4px; background:radial-gradient(120% 90% at 50% 22%,rgba(255,255,255,.34),transparent 60%) }
.ktv-tool__tv b{ position:relative; font-family:var(--ktv-font-mono); font-size:15px; color:#fff; text-shadow:0 1px 8px rgba(0,0,0,.5) }
.ktv-tool__body{ position:relative }
.ktv-tool__body .ktv-tool__k{ color:var(--ktv-brand-primary) }
.ktv-tool--hero h3{ color:#fff; font-size:23px; margin-top:4px }
.ktv-tool--hero p{ color:rgba(255,255,255,.75); font-size:13.5px }
.ktv-tool__cta{ display:inline-flex; align-items:center; gap:8px; margin-top:16px; align-self:flex-start;
  background:var(--ktv-brand-primary); color:#fff; font-family:var(--ktv-font-display); font-weight:700; font-size:14px;
  padding:11px 18px; border-radius:11px; box-shadow:0 10px 24px rgba(217,138,30,.34); transition:filter .14s }
.ktv-tool--hero:hover .ktv-tool__cta{ filter:brightness(1.06) }
@media(max-width:1000px){ .ktv-tools{ grid-template-columns:1fr } .ktv-tool--hero{ grid-row:auto } }

/* ---- Sizes (rastuće dijagonale, klik → shop filter f_dijagonala) ---- */
.ktv-sizes{ display:flex; gap:12px; flex-wrap:wrap; align-items:stretch; margin-top:14px }
.ktv-size{ position:relative; flex:1 1 0; min-width:118px; display:flex; flex-direction:column;
  text-decoration:none; color:inherit; background:var(--ktv-bg-elevated);
  border:1px solid var(--ktv-border-default); border-radius:var(--ktv-radius-sm);
  padding:16px 12px 15px; box-shadow:0 4px 16px rgba(var(--ktv-shadow-rgb),.05);
  transition:transform .2s cubic-bezier(.2,.7,.2,1),border-color .2s,box-shadow .2s }
.ktv-size:hover{ transform:translateY(-5px); border-color:var(--ktv-brand-primary);
  box-shadow:0 16px 34px -14px rgba(var(--ktv-shadow-rgb),.4) }
.ktv-size__stage{ display:flex; align-items:flex-end; justify-content:center; height:84px; margin-bottom:12px }
.ktv-tv{ display:block; width:var(--w); position:relative }
.ktv-tv::after{ content:""; position:absolute; left:50%; bottom:-4px; transform:translateX(-50%);
  width:88%; height:9px; border-radius:50%; background:rgba(36,26,18,.16); filter:blur(4px); z-index:0 }
.ktv-tv__screen{ display:block; position:relative; z-index:1; width:100%; aspect-ratio:16/9; border-radius:5px;
  background:linear-gradient(160deg,#182338,var(--ktv-panel-bezel)); padding:3px;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.04),0 3px 8px rgba(10,16,28,.28) }
.ktv-tv__panel{ display:block; width:100%; height:100%; border-radius:3px; overflow:hidden; position:relative;
  background:radial-gradient(120% 90% at 30% 15%,rgba(234,168,66,.55),transparent 55%),radial-gradient(140% 120% at 85% 90%,rgba(42,78,126,.85),transparent 60%),linear-gradient(180deg,#20406b,#12233c) }
.ktv-tv__panel::before{ content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(255,255,255,.10),transparent 40%) }
.ktv-tv__stand{ display:block; position:relative; z-index:1; margin:2px auto 0; width:14%; height:4px; background:#26344d; border-radius:0 0 2px 2px }
.ktv-tv__stand::after{ content:""; position:absolute; left:50%; top:3px; transform:translateX(-50%); width:340%; max-width:46px; height:3px; background:#2b3a54; border-radius:3px }
.ktv-size:hover .ktv-tv__panel{ background:radial-gradient(120% 90% at 30% 15%,rgba(234,168,66,.8),transparent 55%),radial-gradient(140% 120% at 85% 90%,rgba(42,78,126,.95),transparent 60%),linear-gradient(180deg,#284f83,#12233c) }
.ktv-size:hover .ktv-tv__screen{ box-shadow:inset 0 0 0 1px rgba(255,255,255,.06),0 6px 18px rgba(217,138,30,.28) }
.ktv-size__d{ display:block; font-family:var(--ktv-font-display); font-weight:800; letter-spacing:-.04em; font-size:30px; line-height:1; color:var(--ktv-text-primary) }
.ktv-size__d sup{ font-size:.5em; font-weight:700; color:var(--ktv-brand-text); vertical-align:super; margin-left:1px; letter-spacing:0 }
.ktv-size__room{ display:block; font-size:11.5px; color:var(--ktv-text-secondary); margin-top:5px; line-height:1.25; min-height:28px }
.ktv-size__count{ display:inline-flex; align-items:baseline; gap:4px; margin-top:9px; font-family:var(--ktv-font-mono); font-size:10.5px; color:var(--ktv-text-tertiary); letter-spacing:.02em }
.ktv-size__count b{ color:var(--ktv-navy); font-size:12.5px; font-weight:600 }
.ktv-size__go{ display:block; margin-top:10px; font-family:var(--ktv-font-mono); font-size:11px; color:var(--ktv-brand-text); font-weight:600; opacity:0; transform:translateX(-4px); transition:.2s }
.ktv-size:hover .ktv-size__go{ opacity:1; transform:none }
.ktv-size--pop{ border-color:var(--ktv-brand-primary); box-shadow:0 10px 30px -12px rgba(217,138,30,.45) }
.ktv-size--pop::before{ content:"★ Najprodavanije"; position:absolute; top:-10px; left:50%; transform:translateX(-50%);
  white-space:nowrap; font-family:var(--ktv-font-mono); font-size:9.5px; font-weight:700; letter-spacing:.08em; text-transform:uppercase;
  color:var(--ktv-brand-ink); background:linear-gradient(180deg,var(--ktv-brand-secondary),var(--ktv-brand-primary));
  padding:4px 10px; border-radius:20px; box-shadow:0 4px 10px -2px rgba(217,138,30,.5) }
@media(max-width:980px){ .ktv-size{ min-width:calc(25% - 9px) } }
@media(max-width:600px){ .ktv-size{ min-width:calc(33.333% - 8px) } .ktv-size__stage{ height:74px } }
@media(max-width:420px){ .ktv-size{ min-width:calc(50% - 6px) } }

/* ---- Brands ---- */
.ktv-brands{ display:flex; flex-wrap:wrap; gap:12px; justify-content:center }
.ktv-brandchip{ font-family:var(--ktv-font-display); font-weight:700; font-size:17px; letter-spacing:-.01em;
  color:var(--ktv-text-secondary); text-decoration:none; background:var(--ktv-bg-elevated);
  border:1px solid var(--ktv-border-default); padding:12px 24px; border-radius:12px; transition:.2s }
.ktv-brandchip:hover{ color:var(--ktv-text-primary); border-color:var(--ktv-brand-primary); box-shadow:0 8px 22px -10px rgba(var(--ktv-shadow-rgb),.25) }
/* Brend logo čipovi: puna boja (Eldin 07-14), uniformna visina, blagi zoom na hover (premium brand-zid) */
.ktv-brandchip--logo{ display:grid; place-items:center; min-width:154px; height:76px; padding:14px 26px }
.ktv-brandchip__logo{ max-height:32px; max-width:132px; width:auto; object-fit:contain; transition:transform .2s }
.ktv-brandchip--logo:hover .ktv-brandchip__logo{ transform:scale(1.06) }
.ktv-brandchip--fuego .ktv-brandchip__logo{ max-height:50px; max-width:152px }
@media(max-width:560px){ .ktv-brandchip--logo{ min-width:calc(50% - 8px); height:66px } }

@media(max-width:1000px){
  .ktv-hero{ grid-template-columns:1fr; gap:32px; padding:44px 24px 26px }
  .ktv-hero__stage{ order:2; min-height:300px; max-width:480px; width:100%; margin-inline:auto }
  .ktv-usp{ grid-template-columns:repeat(2,1fr) }
  .ktv-tiles{ grid-template-columns:1fr }
}
@media(max-width:560px){
  .ktv-sec{ padding-top:52px; padding-bottom:52px }
  .ktv-wrap{ padding-left:16px; padding-right:16px }
  .ktv-usp{ grid-template-columns:repeat(2,1fr) }
}
@media(prefers-reduced-motion:reduce){ .ktv-screen__sheen,.ktv-chip{ animation:none } }

/* ==== #20 ktv-shop-css ==== */
.ktv-shopmain{ padding:26px 24px 70px }
.ktv-crumbs{ font-family:var(--ktv-font-mono); font-size:11.5px; color:var(--ktv-text-tertiary); margin-bottom:18px; letter-spacing:.02em }
.ktv-crumbs a{ color:var(--ktv-navy); text-decoration:none } .ktv-crumbs a:hover{ color:var(--ktv-brand-primary-hover) }
.ktv-crumbs span[aria-hidden]{ margin:0 6px; opacity:.5 }
.ktv-shophead{ margin-bottom:26px }
.ktv-shophead__h1{ font-family:var(--ktv-font-display); font-weight:800; font-size:clamp(28px,4vw,42px); letter-spacing:-.035em; margin:0; color:var(--ktv-text-primary) }
.ktv-shophead__lede{ color:var(--ktv-text-secondary); font-size:15px; line-height:1.6; max-width:70ch; margin:10px 0 0 }

.ktv-shop{ display:grid; grid-template-columns:256px 1fr; gap:30px; align-items:start }
.ktv-filters{ position:sticky; top:88px; background:var(--ktv-bg-elevated); border:1px solid var(--ktv-border-default);
  border-radius:var(--ktv-radius); padding:20px; box-shadow:0 4px 20px rgba(var(--ktv-shadow-rgb),.05) }
.ktv-filters__top{ display:flex; align-items:center; gap:10px; margin-bottom:6px }
.ktv-filters__top h2{ font-family:var(--ktv-font-display); font-size:16px; font-weight:700; margin:0; flex:1 }
.ktv-filters__reset{ font-family:var(--ktv-font-mono); font-size:11px; color:var(--ktv-text-secondary); text-decoration:none }
.ktv-filters__reset:hover{ color:var(--ktv-brand-primary-hover) }
.ktv-filters__close{ display:none; background:none; border:0; font-size:18px; cursor:pointer; color:var(--ktv-text-secondary) }
.ktv-filters__empty{ font-size:13px; color:var(--ktv-text-secondary); line-height:1.5 }
.ktv-fg{ padding:15px 0; border-top:1px solid var(--ktv-border-subtle) }
.ktv-fg:first-of-type{ border-top:none }
.ktv-fg__lbl{ display:block; font-size:12px; font-weight:700; letter-spacing:.04em; text-transform:uppercase; color:var(--ktv-text-secondary); margin-bottom:11px }
.ktv-opts{ display:flex; flex-wrap:wrap; gap:6px }
.ktv-opts--col{ flex-direction:column }
.ktv-opt{ display:inline-flex; align-items:center; gap:6px; font-family:var(--ktv-font-mono); font-size:11px; color:var(--ktv-navy);
  background:var(--ktv-bg-tinted); border:1px solid var(--ktv-border-default); padding:6px 10px; border-radius:8px; text-decoration:none; transition:.15s }
.ktv-opt:hover{ border-color:var(--ktv-brand-primary); color:var(--ktv-brand-primary-hover) }
.ktv-opt.is-active{ background:var(--ktv-brand-primary); color:var(--ktv-brand-ink); border-color:var(--ktv-brand-primary); font-weight:700 }
.ktv-opt__n{ opacity:.55; font-size:10px }
.ktv-opt.is-active .ktv-opt__n{ opacity:.8 }

.ktv-resbar{ display:flex; align-items:center; justify-content:space-between; gap:14px; margin-bottom:16px; flex-wrap:wrap }
.ktv-rescount{ font-family:var(--ktv-font-display); font-size:16px; font-weight:600; color:var(--ktv-text-primary) }
.ktv-rescount b{ color:var(--ktv-navy); font-family:var(--ktv-font-mono); font-size:20px }
.ktv-sortwrap{ display:flex; align-items:center; gap:10px }
.ktv-sort{ font-family:var(--ktv-font-body); font-size:13px; background:var(--ktv-bg-elevated); color:var(--ktv-text-primary);
  border:1px solid var(--ktv-border-default); border-radius:10px; padding:9px 11px; cursor:pointer }
.ktv-filters-toggle{ display:none }

.ktv-chips{ display:flex; flex-wrap:wrap; gap:7px; margin-bottom:18px }
.ktv-chip-x{ font-family:var(--ktv-font-mono); font-size:11px; color:var(--ktv-brand-text); background:var(--ktv-brand-soft);
  border:1px solid var(--ktv-brand-secondary); padding:5px 9px; border-radius:7px; text-decoration:none; display:inline-flex; gap:6px; align-items:center }
.ktv-chip-x b{ font-weight:700 }
.ktv-chips__reset{ font-family:var(--ktv-font-mono); font-size:11px; color:var(--ktv-text-secondary); text-decoration:none; align-self:center }

.ktv-pag{ display:flex; gap:6px; margin-top:34px; justify-content:center; flex-wrap:wrap }
.ktv-pag a,.ktv-pag span span{ display:grid; place-items:center; min-width:38px; height:38px; padding:0 8px; border-radius:10px;
  border:1px solid var(--ktv-border-default); background:var(--ktv-bg-elevated); color:var(--ktv-text-primary); text-decoration:none; font-family:var(--ktv-font-mono); font-size:13px }
.ktv-pag a:hover{ border-color:var(--ktv-brand-primary); color:var(--ktv-brand-primary) }
.ktv-pag .current{ background:var(--ktv-brand-primary); color:var(--ktv-brand-ink); border-color:var(--ktv-brand-primary); font-weight:700 }

.ktv-empty{ text-align:center; padding:70px 20px }
.ktv-empty__t{ font-family:var(--ktv-font-display); font-size:22px; font-weight:700; color:var(--ktv-text-primary); margin:0 0 10px }
.ktv-empty__s{ color:var(--ktv-text-secondary) } .ktv-empty a{ color:var(--ktv-brand-text) }

/* Povezani vodiči (interni linkovi #39) */
.ktv-guides{ margin-top:50px; padding-top:34px; border-top:1px solid var(--ktv-border-subtle) }
.ktv-guides__h{ font-family:var(--ktv-font-display); font-size:clamp(20px,2.4vw,26px); font-weight:800; letter-spacing:-.02em; margin:0 0 18px; color:var(--ktv-text-primary) }
.ktv-guides__grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:16px }
.ktv-guide{ display:flex; flex-direction:column; gap:9px; padding:18px 20px; border-radius:14px; text-decoration:none; background:var(--ktv-bg-elevated); border:1px solid var(--ktv-border-default); transition:transform .16s, border-color .16s, box-shadow .16s }
.ktv-guide:hover{ border-color:var(--ktv-brand-primary); transform:translateY(-2px); box-shadow:0 8px 24px rgba(var(--ktv-shadow-rgb),.08) }
.ktv-guide__k{ font-family:var(--ktv-font-mono); font-size:10.5px; letter-spacing:.14em; text-transform:uppercase; color:var(--ktv-navy) }
.ktv-guide__t{ font-family:var(--ktv-font-display); font-size:17px; font-weight:700; color:var(--ktv-text-primary); line-height:1.25 }
.ktv-guide__go{ font-size:13px; color:var(--ktv-brand-text); font-weight:600; margin-top:auto }
@media(max-width:760px){ .ktv-guides__grid{ grid-template-columns:1fr } }

@media(max-width:900px){
  .ktv-shop{ grid-template-columns:1fr }
  .ktv-filters-toggle{ display:inline-flex }
  .ktv-filters{ position:fixed; top:0; left:0; bottom:0; width:min(340px,86vw); z-index:60; border-radius:0;
    transform:translateX(-100%); transition:transform .25s; overflow-y:auto; max-height:100vh }
  .ktv-filters.is-open{ transform:none }
  .ktv-filters__close{ display:block }
}

/* ==== #21 ktv-pdp-css ==== */
.ktv-pdpmain{ padding:22px 24px 70px }
/* --- Opcija A: cijeli vrh (breadcrumbs + galerija + kupovina) u JEDNOJ bijeloj kartici --- */
.ktv-hero-pkg{ background:linear-gradient(180deg,#fff,#FEFCF8); border:1px solid var(--ktv-border-default); border-radius:22px; box-shadow:0 30px 60px -34px rgba(var(--ktv-shadow-rgb),.5); overflow:clip; margin-bottom:32px }
.ktv-hero-pkg .ktv-crumbs{ margin:0; width:auto; max-width:none; border:0; border-bottom:1px solid var(--ktv-border-default); border-radius:0; background:transparent; box-shadow:none; padding:13px 26px }
.ktv-hero-pkg .ktv-pdp{ grid-template-columns:1.06fr .94fr; gap:0; margin:0 }
.ktv-hero-pkg .ktv-pdp__gallery{ position:static; top:auto; padding:26px 22px; align-self:stretch }
/* Ljepljiva galerija: slika prati skrol dok se desna kolona ne završi (nema praznog bijelog prostora) */
.ktv-hero-pkg .ktv-gal3{ position:sticky; top:88px }
.admin-bar .ktv-hero-pkg .ktv-gal3{ top:120px }
.ktv-hero-pkg .ktv-pdp__info{ padding:28px 30px; border-left:1px solid var(--ktv-border-default) }
.ktv-hero-pkg .ktv-gal3__main{ border:0; box-shadow:none; background:transparent; padding:14px 6px; min-height:320px }
@media(max-width:1000px){
  .ktv-hero-pkg .ktv-pdp{ grid-template-columns:1fr }
  .ktv-hero-pkg .ktv-pdp__info{ border-left:0; border-top:1px solid var(--ktv-border-default) }
  .ktv-hero-pkg .ktv-pdp__gallery{ padding:22px 18px; align-self:auto }
  .ktv-hero-pkg .ktv-gal3, .admin-bar .ktv-hero-pkg .ktv-gal3{ position:static; top:auto }
}
.ktv-crumbs{ display:flex; flex-wrap:wrap; align-items:center; gap:9px; font-size:12px; font-family:var(--ktv-font-mono); margin:0 0 20px; padding:9px 16px; background:var(--ktv-bg-elevated); border:1px solid var(--ktv-border-default); border-radius:12px; width:fit-content; max-width:100%; box-shadow:0 2px 10px rgba(var(--ktv-shadow-rgb),.05) }
.ktv-crumbs a{ color:var(--ktv-text-secondary); text-decoration:none; transition:color .12s }
.ktv-crumbs a:hover{ color:var(--ktv-brand-text) }
.ktv-crumbs span[aria-hidden]{ color:var(--ktv-border-strong,var(--ktv-text-tertiary)); opacity:.55 }
.ktv-crumbs__cur{ color:var(--ktv-text-primary); font-weight:600; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; max-width:340px }
.ktv-pdp{ display:grid; grid-template-columns:1.05fr 1fr; gap:44px; align-items:start; margin-top:8px }
.ktv-pdp__gallery{ position:sticky; top:88px }
/* --- SS2 ADAPTIVNA POZORNICA --- */
/* --- GALERIJA: uokvirena kartica + vertikalne sličice --- */
.ktv-gal3{ display:grid; grid-template-columns:66px 1fr; gap:14px; align-items:start }
.ktv-gal3--norail{ grid-template-columns:1fr }
.ktv-gal3__rail{ display:flex; flex-direction:column; gap:10px }
.ktv-gal3__col{ min-width:0 }
.ktv-gal3__main{ position:relative; display:flex; background:#fff; border:1px solid var(--ktv-border-default); border-radius:16px; padding:34px 28px 26px; box-shadow:0 16px 34px -20px rgba(var(--ktv-shadow-rgb),.35); overflow:hidden; min-height:340px }
.ktv-gal3__view{ flex:1; display:grid; place-items:center; position:relative }
.ktv-gal3 .ktv-stage__img{ display:none; max-width:100%; max-height:460px; height:auto; object-fit:contain }
.ktv-gal3 .ktv-stage__img.is-on{ display:block }
.ktv-gal3__badge{ position:absolute; top:14px; left:14px; z-index:4; font-family:var(--ktv-font-mono); font-size:10px; font-weight:700; letter-spacing:.06em; color:var(--ktv-navy); background:var(--ktv-navy-soft); border:1px solid var(--ktv-navy-line); border-radius:7px; padding:5px 10px }
.ktv-gal3__zoom{ position:absolute; top:14px; right:14px; z-index:4; display:inline-flex; align-items:center; gap:6px; font-family:var(--ktv-font-mono); font-size:10.5px; color:var(--ktv-text-tertiary); background:var(--ktv-bg-tinted); border:1px solid var(--ktv-border-default); border-radius:999px; padding:6px 12px }
.ktv-gal3__cap{ text-align:center; font-family:var(--ktv-font-mono); font-size:10px; color:var(--ktv-text-tertiary); margin-top:12px; letter-spacing:.04em }
/* --- Zoom (lightbox) --- */
.ktv-gal3__main{ cursor:zoom-in }
.ktv-lb{ position:fixed; inset:0; z-index:99999; background:rgba(10,13,20,.93); display:flex; align-items:center; justify-content:center }
.ktv-lb[hidden]{ display:none }
.ktv-lb__img{ max-width:92vw; max-height:88vh; object-fit:contain; cursor:zoom-in; transition:transform .18s ease; user-select:none; -webkit-user-drag:none; border-radius:6px }
.ktv-lb__img.is-zoom{ transform:scale(2.3); cursor:zoom-out; transition:none }
.ktv-lb__x{ position:absolute; top:16px; right:20px; width:46px; height:46px; border-radius:50%; border:0; background:rgba(255,255,255,.12); color:#fff; font-size:18px; cursor:pointer; display:grid; place-items:center }
.ktv-lb__x:hover{ background:rgba(255,255,255,.24) }
.ktv-lb__nav{ position:absolute; top:50%; transform:translateY(-50%); width:54px; height:54px; border-radius:50%; border:0; background:rgba(255,255,255,.1); color:#fff; font-size:32px; line-height:1; cursor:pointer; display:grid; place-items:center }
.ktv-lb__nav:hover{ background:rgba(255,255,255,.22) }
.ktv-lb__prev{ left:18px } .ktv-lb__next{ right:18px }
.ktv-lb__count{ position:absolute; bottom:18px; left:50%; transform:translateX(-50%); font-family:var(--ktv-font-mono); font-size:12px; color:rgba(255,255,255,.78); background:rgba(0,0,0,.32); padding:6px 14px; border-radius:999px }
@media(max-width:600px){ .ktv-lb__nav{ width:44px; height:44px; font-size:26px } .ktv-lb__img.is-zoom{ transform:scale(2) } }
.ktv-gal3 .ktv-sth{ width:100%; height:46px; border-radius:8px; overflow:hidden; cursor:pointer; padding:4px; background:#fff; border:1.5px solid var(--ktv-border-default); transition:border-color .15s, transform .15s }
.ktv-gal3 .ktv-sth:hover{ transform:translateY(-2px); border-color:var(--ktv-navy) }
.ktv-gal3 .ktv-sth.on{ border-color:var(--ktv-brand-primary) }
.ktv-gal3 .ktv-sth img{ width:100%; height:100%; object-fit:contain; display:block }
@media(max-width:600px){
  .ktv-gal3{ grid-template-columns:1fr }
  .ktv-gal3__rail{ order:2; flex-direction:row; flex-wrap:wrap; gap:8px; justify-content:center }
  .ktv-gal3 .ktv-sth{ width:58px; height:42px }
  .ktv-gal3__col{ order:1 }
  .ktv-gal3__main{ padding:24px 18px 18px; min-height:250px }
  .ktv-gal3 .ktv-stage__img{ max-height:300px }
}
.ktv-bar{ display:inline-flex; align-items:center; gap:10px }
.ktv-bar__t{ width:52px; height:4px; border-radius:99px; background:var(--ktv-border-default); overflow:hidden }
.ktv-bar__f{ height:100%; border-radius:99px; background:var(--ktv-brand-primary) }
.ktv-hero{ background:var(--ktv-bg-elevated); border:1px solid var(--ktv-border-default); border-radius:var(--ktv-radius);
  padding:26px 26px 24px; box-shadow:0 12px 38px rgba(var(--ktv-shadow-rgb),.09) }
.ktv-hero__brand{ font-family:var(--ktv-font-mono); font-size:12px; letter-spacing:.16em; text-transform:uppercase; color:var(--ktv-navy); text-align:center; margin:2px 0 16px; opacity:.72 }
.ktv-hero__screen{ position:relative; aspect-ratio:16/10; border-radius:16px; background:var(--wall,linear-gradient(120deg,#16243D,#1E3A5F 55%,#D98A1E));
  overflow:hidden; display:grid; place-items:center; box-shadow: inset 0 0 0 7px rgba(8,12,20,.32), inset 0 0 70px rgba(0,0,0,.4), 0 18px 46px rgba(8,12,20,.24) }
/* hero glow/grid uklonjeni - nula svjetlosnih efekata (SS7) */
.ktv-hero__model{ position:relative; font-family:var(--ktv-font-mono); font-size:12.5px; letter-spacing:.08em; color:rgba(255,255,255,.94);
  text-shadow:0 1px 10px rgba(0,0,0,.45); padding:7px 14px; border:1px solid rgba(255,255,255,.30); border-radius:999px; background:rgba(0,0,0,.14) }
.ktv-hero__stats{ display:grid; grid-template-columns:repeat(auto-fit,minmax(0,1fr)); gap:9px; margin-top:18px }
.ktv-hero__stat{ text-align:center; padding:11px 6px; background:var(--ktv-bg-tinted); border:1px solid var(--ktv-border-default); border-radius:13px }
.ktv-hero__stat b{ display:block; font-family:var(--ktv-font-display); font-size:19px; font-weight:800; letter-spacing:-.02em; line-height:1.05; color:var(--ktv-text-primary) }
.ktv-hero__stat span{ font-family:var(--ktv-font-mono); font-size:9.5px; text-transform:uppercase; letter-spacing:.05em; color:var(--ktv-text-tertiary) }
.ktv-pdp__photonote{ text-align:center; font-family:var(--ktv-font-mono); font-size:10.5px; letter-spacing:.04em; color:var(--ktv-text-tertiary); margin:13px 0 0 }

.ktv-pdp__brand{ font-family:var(--ktv-font-mono); font-size:12px; color:var(--ktv-navy); letter-spacing:.06em; text-transform:uppercase }
.ktv-pdp__h1{ font-family:var(--ktv-font-display); font-size:clamp(24px,3vw,33px); font-weight:800; letter-spacing:-.03em; line-height:1.1; margin:6px 0 10px; color:var(--ktv-text-primary) }
.ktv-pdp__meta{ font-size:13px; color:var(--ktv-text-secondary); margin-bottom:16px }
.ktv-stars{ color:var(--ktv-star) }
.ktv-buy__line{ font-family:var(--ktv-font-mono); font-size:12px; color:var(--ktv-navy); margin:14px 0 0; padding-bottom:18px; border-bottom:1px solid var(--ktv-border-default) }
.ktv-buy__line b{ color:var(--ktv-brand-text); font-weight:600 }

.ktv-pdp__pricebox{ position:relative; overflow:hidden; background:linear-gradient(135deg,#16243D 0%,#1E3A5F 58%,#274a78 100%); border:0; border-radius:var(--ktv-radius); padding:20px 24px; margin-bottom:16px; box-shadow:0 14px 34px rgba(22,36,61,.28) }
/* amber glow uklonjen — cijena-pill samo navy (Eldin 2026-07-14) */
.ktv-pdp__pricelbl{ position:relative; font-family:var(--ktv-font-mono); font-size:10px; letter-spacing:.12em; text-transform:uppercase; color:rgba(255,255,255,.6); margin-bottom:6px }
.ktv-pdp__pricerow{ position:relative; display:flex; align-items:baseline; gap:13px; flex-wrap:wrap }
.ktv-pdp__now{ font-family:var(--ktv-font-mono); font-weight:700; font-size:37px; letter-spacing:-.02em; color:#fff }
.ktv-pdp__now--ask{ font-size:27px; letter-spacing:0 }
.ktv-pdp__now .woocommerce-Price-amount{ color:#fff }
.ktv-pdp__old{ font-family:var(--ktv-font-mono); font-size:17px; color:rgba(255,255,255,.5); text-decoration:line-through }
.ktv-pdp__old .woocommerce-Price-amount{ color:rgba(255,255,255,.5) }
.ktv-pdp__save{ font-family:var(--ktv-font-mono); font-size:12.5px; font-weight:700; color:#16243D; background:var(--ktv-brand-primary,#D98A1E); padding:5px 11px; border-radius:8px; box-shadow:0 5px 14px rgba(217,138,30,.4) }
.ktv-pdp__save .woocommerce-Price-amount{ color:#16243D }
.ktv-cta2{ display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-bottom:20px }
.ktv-cta2 .ktv-btn{ font-size:14px; padding:13px 12px; white-space:normal }
.ktv-pdpmain .ktv-eyebrow{ color:var(--ktv-navy) }
.ktv-pdp__h1{ color:var(--ktv-navy-deep,#12203a) }

.ktv-pdp__stock{ display:inline-flex; align-items:center; gap:8px; font-size:13.5px; font-weight:600; margin:2px 0 18px }
.ktv-pdp__stock.is-in{ color:var(--ktv-success) } .ktv-pdp__stock.is-out{ color:var(--ktv-error) }
.ktv-pdp__stock i{ width:9px; height:9px; border-radius:50%; background:currentColor; box-shadow:0 0 0 3px rgba(63,125,58,.16) }

.ktv-pdp__cta{ display:flex; gap:10px; margin-bottom:20px }
.ktv-pdp__cta .ktv-btn--main{ flex:1.4; justify-content:center } .ktv-pdp__cta .ktv-btn--ghost{ flex:1; justify-content:center }

.ktv-pdp__trust{ display:grid; grid-template-columns:repeat(3,1fr); gap:10px }
.ktv-tbadge{ background:var(--ktv-bg-elevated); border:1px solid var(--ktv-border-default); border-radius:11px; padding:11px 12px; text-align:center }
.ktv-tbadge b{ display:block; font-family:var(--ktv-font-mono); font-size:14px; color:var(--ktv-text-primary) }
.ktv-tbadge span{ font-size:11px; color:var(--ktv-text-secondary) }

.ktv-pdp__guide{ margin-top:50px }
.ktv-guidelinks{ display:grid; gap:12px; grid-template-columns:1fr 1fr }
.ktv-guidelink{ display:flex; align-items:center; justify-content:space-between; gap:14px; padding:17px 20px; background:var(--ktv-bg-elevated); border:1px solid var(--ktv-border-default); border-radius:14px; text-decoration:none; transition:border-color .15s ease, transform .15s ease }
.ktv-guidelink:hover{ border-color:var(--ktv-brand-primary); transform:translateY(-1px) }
.ktv-guidelink span{ font-family:var(--ktv-font-display); font-weight:700; font-size:15px; color:var(--ktv-navy-deep); line-height:1.3 }
.ktv-guidelink i{ font-style:normal; font-size:20px; color:var(--ktv-brand-primary); flex:none; line-height:1 }
@media (max-width:640px){ .ktv-guidelinks{ grid-template-columns:1fr } }
.ktv-pdp__rev{ margin-top:50px }
.ktv-rev__avg{ display:flex; align-items:center; gap:12px; margin-bottom:22px }
.ktv-rev__avg b{ font-family:var(--ktv-font-display); font-size:34px; color:var(--ktv-navy-deep); line-height:1 }
.ktv-rev__avg .ktv-stars{ font-size:20px; letter-spacing:3px }
.ktv-rev__avg small{ color:var(--ktv-text-secondary); font-size:14px }
.ktv-rev__list{ display:flex; flex-direction:column; gap:12px; margin-bottom:30px }
.ktv-rev__i{ background:var(--ktv-bg-elevated); border:1px solid var(--ktv-border-default); border-radius:12px; padding:15px 18px }
.ktv-rev__head{ display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin-bottom:7px }
.ktv-rev__head .ktv-stars{ font-size:14px; letter-spacing:2px }
.ktv-rev__head b{ font-family:var(--ktv-font-display); color:var(--ktv-navy-deep); font-size:14px }
.ktv-rev__ver{ display:inline-flex; align-items:center; gap:3px; background:var(--ktv-bg-tinted); color:var(--ktv-success); font-size:11px; font-weight:700; padding:2px 9px; border-radius:20px }
.ktv-rev__head time{ margin-left:auto; color:var(--ktv-text-tertiary); font-size:12px; font-family:var(--ktv-font-mono) }
.ktv-rev__txt{ color:var(--ktv-text-secondary); font-size:14px; line-height:1.6 }
.ktv-rev__txt p{ margin:0 0 6px }
.ktv-rev__empty{ color:var(--ktv-text-secondary); font-size:14px; background:var(--ktv-bg-tinted); border:1px dashed var(--ktv-border-default); border-radius:12px; padding:16px 18px; margin:0 0 24px }
.ktv-rev__form{ background:var(--ktv-bg-elevated); border:1px solid var(--ktv-border-default); border-radius:14px; padding:22px 22px 20px }
.ktv-rev__form h3{ font-family:var(--ktv-font-display); color:var(--ktv-navy-deep); font-size:17px; margin:0 0 15px }
.ktv-cform{ display:flex; flex-direction:column; gap:13px }
.ktv-rate{ display:flex; align-items:center; gap:12px; flex-wrap:wrap }
.ktv-rate__lbl{ font-family:var(--ktv-font-display); font-weight:700; color:var(--ktv-navy-deep); font-size:14px }
.ktv-rate__stars{ display:inline-flex; flex-direction:row-reverse }
.ktv-rate__stars input{ position:absolute; opacity:0; width:1px; height:1px }
.ktv-rate__stars label{ color:var(--ktv-border-default); cursor:pointer; font-size:28px; padding:0 2px; line-height:1; transition:color .12s }
.ktv-rate__stars label:hover, .ktv-rate__stars label:hover ~ label, .ktv-rate__stars input:checked ~ label{ color:var(--ktv-star) }
.ktv-rate__stars input:focus-visible + label{ outline:2px solid var(--ktv-brand-primary); outline-offset:2px }
.ktv-cform textarea, .ktv-cform input[type=text], .ktv-cform input[type=email]{ width:100%; border:1px solid var(--ktv-border-default); border-radius:10px; padding:11px 13px; font:inherit; color:var(--ktv-text-primary); background:#fff; box-sizing:border-box }
.ktv-cform textarea:focus, .ktv-cform input:focus{ outline:none; border-color:var(--ktv-brand-primary) }
.ktv-cform__row{ display:flex; gap:12px }
.ktv-cform__row input{ flex:1; min-width:0 }
.ktv-rev__form button{ align-self:flex-start }
.ktv-rev__note{ font-size:12px; color:var(--ktv-text-tertiary); margin:2px 0 0 }
@media (max-width:560px){ .ktv-cform__row{ flex-direction:column } }
.ktv-pdp__faq{ margin-top:50px }
.ktv-faq{ display:flex; flex-direction:column; gap:10px; margin-top:16px }
.ktv-faq__i{ background:var(--ktv-bg-elevated); border:1px solid var(--ktv-border-default); border-radius:12px; overflow:hidden }
.ktv-faq__i summary{ cursor:pointer; list-style:none; padding:15px 18px; font-family:var(--ktv-font-display); font-weight:700; font-size:15px; color:var(--ktv-navy-deep); display:flex; justify-content:space-between; align-items:center; gap:12px }
.ktv-faq__i summary::-webkit-details-marker{ display:none }
.ktv-faq__i summary::after{ content:"+"; font-family:var(--ktv-font-mono); font-size:20px; color:var(--ktv-brand-primary); font-weight:400; line-height:1 }
.ktv-faq__i[open] summary::after{ content:"–" }
.ktv-faq__i[open] summary{ border-bottom:1px solid var(--ktv-border-subtle) }
.ktv-faq__i > div{ padding:14px 18px 16px; font-size:14px; color:var(--ktv-text-secondary); line-height:1.6 }
.ktv-pdp__zasto{ margin-top:50px }
.ktv-zasto{ display:grid; gap:14px; grid-template-columns:repeat(3,1fr); margin-top:16px }
.ktv-zasto[data-n="1"]{ grid-template-columns:1fr }
.ktv-zasto[data-n="2"]{ grid-template-columns:repeat(2,1fr) }
@media(max-width:860px){ .ktv-zasto,.ktv-zasto[data-n="2"]{ grid-template-columns:1fr } }
.ktv-zasto__i{ background:var(--ktv-bg-elevated); border:1px solid var(--ktv-border-default); border-left:3px solid var(--ktv-brand-primary);
  border-radius:12px; padding:16px 18px }
.ktv-zasto__i b{ display:block; font-family:var(--ktv-font-display); font-size:16px; color:var(--ktv-text-primary); margin-bottom:4px }
.ktv-zasto__i span{ font-size:13.5px; color:var(--ktv-text-secondary); line-height:1.55 }

.ktv-pdp__specs{ margin-top:50px }
.ktv-specgrid{ display:grid; grid-template-columns:1fr 1fr; gap:14px }
.ktv-speccard{ background:var(--ktv-bg-elevated); border:1px solid var(--ktv-border-default); border-radius:var(--ktv-radius); overflow:hidden }
.ktv-speccard h4{ font-family:var(--ktv-font-display); font-size:13.5px; font-weight:700; color:#fff;
  padding:12px 16px; background:var(--ktv-navy-deep); border-bottom:0; margin:0; display:flex; align-items:center; gap:9px }
.ktv-specrow{ display:flex; justify-content:space-between; gap:14px; padding:11px 18px; border-top:1px solid var(--ktv-border-subtle); font-size:13px }
.ktv-specrow:first-of-type{ border-top:none }
.ktv-specrow b{ color:var(--ktv-text-secondary); font-weight:500 }
.ktv-specrow span{ text-align:right; font-weight:600; font-family:var(--ktv-font-mono); font-size:12px; color:var(--ktv-navy) }
.ktv-vdot{ display:inline-grid; place-items:center; width:15px; height:15px; border-radius:50%; background:var(--ktv-navy); color:#fff; font-size:9px; vertical-align:middle }

.ktv-pdp__related{ margin-top:56px }
/* distance blok spojen u SS4 traku podataka */
/* Rata linija (paritet s karticom, gejtano ktv_rate_on) */
.ktv-pdp__rateline{ font-size:13px; color:var(--ktv-text-secondary); margin:-6px 0 14px }
.ktv-pdp__rateline b{ color:var(--ktv-brand-text); font-family:var(--ktv-font-mono) }
/* Inline compare dugme u related headeru */
.ktv-pdp__related .ktv-head{ display:flex; align-items:center; justify-content:space-between; gap:16px; flex-wrap:wrap }
.ktv-cmp-similar{ display:inline-flex; align-items:center; gap:8px; font-family:var(--ktv-font-display); font-weight:700; font-size:13.5px;
  color:var(--ktv-navy); background:var(--ktv-bg-elevated); border:1px solid var(--ktv-border-default); border-radius:11px; padding:10px 15px; cursor:pointer;
  transition:border-color .14s, color .14s, transform .06s }
.ktv-cmp-similar:hover{ border-color:var(--ktv-brand-primary); color:var(--ktv-brand-text) }
.ktv-cmp-similar:active{ transform:translateY(1px) }

/* ===== RENOVACIJA (kupilenovo-nivo) ===== */
/* PRAVA DUGMAD (custom render ne učitava globalni .ktv-btn) */
.ktv-pdpmain .ktv-btn{ display:inline-flex; align-items:center; justify-content:center; gap:9px; font-family:var(--ktv-font-display); font-weight:700; font-size:15px; line-height:1; padding:15px 24px; border-radius:13px; border:1px solid transparent; cursor:pointer; text-decoration:none; transition:filter .12s, box-shadow .16s, background .16s, transform .06s; white-space:nowrap }
.ktv-pdpmain .ktv-btn--main{ background:var(--ktv-brand-primary,#D98A1E); color:#fff; box-shadow:0 8px 22px rgba(217,138,30,.30) }
.ktv-pdpmain .ktv-btn--main:hover{ filter:brightness(1.06); box-shadow:0 10px 28px rgba(217,138,30,.40) }
.ktv-pdpmain .ktv-btn--main:active{ transform:translateY(1px) }
.ktv-pdpmain .ktv-btn--ghost{ background:var(--ktv-bg-elevated); color:var(--ktv-text-primary); border-color:var(--ktv-border-default) }
.ktv-pdpmain .ktv-btn--ghost:hover{ background:var(--ktv-bg-tinted); border-color:var(--ktv-navy) }
/* PREMIUM SPEC TABELA (naš HTML iz opisa proizvoda) */
.ktv-specbox{ margin-top:8px }
.ktv-specbox .ktv-spec{ width:100%; border-collapse:separate; border-spacing:0; border:1px solid var(--ktv-border-default); border-radius:var(--ktv-radius); overflow:hidden; background:var(--ktv-bg-elevated) }
.ktv-specbox .ktv-spec td{ padding:12px 20px; font-size:13.5px; border-top:1px solid var(--ktv-border-subtle); vertical-align:top }
.ktv-specbox .ktv-spec td:first-child{ color:var(--ktv-text-secondary); font-weight:500; width:44% }
.ktv-specbox .ktv-spec td:last-child{ text-align:right; font-family:var(--ktv-font-mono); font-size:12.5px; font-weight:600; color:var(--ktv-navy) }
.ktv-specbox .ktv-spec tr.ktv-spec__h th{ background:var(--ktv-navy-soft); color:var(--ktv-navy-deep); font-family:var(--ktv-font-display); font-size:14px; font-weight:700; text-align:left; padding:13px 20px; border-top:1px solid var(--ktv-navy-line); letter-spacing:-.01em }
.ktv-specbox .ktv-spec tr.ktv-spec__h:first-child th{ border-top:0 }
.ktv-specbox p{ font-size:14px; color:var(--ktv-text-secondary); line-height:1.6 }
.ktv-rates{ margin-top:15px; border-top:1px dashed var(--ktv-border-default); padding-top:13px }
.ktv-rates__lbl{ font-family:var(--ktv-font-mono); font-size:10.5px; letter-spacing:.04em; text-transform:uppercase; color:var(--ktv-text-tertiary); margin-bottom:9px }
.ktv-rates__grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:8px }
.ktv-rate{ background:var(--ktv-bg-elevated); border:1px solid var(--ktv-border-default); border-radius:12px; padding:10px 6px; text-align:center }
.ktv-rate span{ display:block; font-family:var(--ktv-font-mono); font-size:9.5px; text-transform:uppercase; letter-spacing:.05em; color:var(--ktv-text-tertiary); margin-bottom:3px }
.ktv-rate b{ font-family:var(--ktv-font-mono); font-size:15px; color:var(--ktv-brand-text); font-weight:700; white-space:nowrap }
.ktv-rate b i{ font-style:normal; font-size:9.5px; color:var(--ktv-text-tertiary); font-weight:500 }
.ktv-pdp__cta{ display:flex; gap:10px; align-items:stretch; margin-bottom:9px }
.ktv-qty{ display:inline-flex; align-items:stretch; border:1px solid var(--ktv-border-default); border-radius:13px; overflow:hidden; background:var(--ktv-bg-elevated) }
.ktv-qty__b{ width:44px; border:0; background:transparent; font-size:20px; color:var(--ktv-text-secondary); cursor:pointer }
.ktv-qty__b:hover{ background:var(--ktv-bg-tinted); color:var(--ktv-text-primary) }
.ktv-qty__i{ width:42px; text-align:center; border:0; background:transparent; font-family:var(--ktv-font-mono); font-size:16px; font-weight:700; color:var(--ktv-text-primary) }
.ktv-pdp__cta .ktv-btn--main{ flex:1; justify-content:center; gap:9px; font-size:16px; min-height:54px }
.ktv-buynow{ width:100%; justify-content:center; margin:0 0 20px }
.ktv-pdp__trust{ display:grid; grid-template-columns:1fr 1fr; gap:14px 18px; margin:22px 0 0; padding-top:20px; border-top:1px solid var(--ktv-border-default) }
.ktv-tcard{ display:flex; align-items:flex-start; gap:11px; background:none; border:0; padding:0; border-radius:0; box-shadow:none }
.ktv-tcard .ktv-tcard__ic{ display:grid; place-items:center; width:32px; height:32px; flex:none; border-radius:9px; background:var(--ktv-navy-soft); color:var(--ktv-navy) }
.ktv-tcard b{ display:block; font-family:var(--ktv-font-display); font-size:13px; font-weight:700; color:var(--ktv-navy-deep); line-height:1.25 }
.ktv-tcard span{ font-size:11.5px; color:var(--ktv-text-tertiary) }
/* Philips produžena garancija 2+3 */
.ktv-gar23{ display:flex; align-items:flex-start; gap:12px; margin:18px 0 0; padding:12px 14px; border-radius:12px; background:var(--ktv-navy-soft); border:1px solid var(--ktv-navy-line) }
.ktv-gar23 img{ flex:none; width:54px; height:54px; display:block; margin-top:1px }
.ktv-gar23 > div > b{ display:block; font-family:var(--ktv-font-display); font-size:13.5px; font-weight:700; color:var(--ktv-navy-deep); line-height:1.25; margin-bottom:3px }
.ktv-gar23 span{ display:block; font-size:12px; line-height:1.5; color:var(--ktv-text-secondary) }
.ktv-gar23 span b{ color:var(--ktv-navy-deep); font-weight:700 }
.ktv-gar23 a{ color:var(--ktv-brand-text); font-weight:600; text-decoration:underline }
.ktv-gar23 a:hover{ color:var(--ktv-brand-primary-hover) }
.ktv-gar23__note{ display:block; margin-top:5px; font-size:11px; font-style:normal; color:var(--ktv-text-tertiary) }
.ktv-b2b{ display:flex; align-items:center; gap:11px; margin:20px 0 0; padding:12px 15px; border-radius:11px; background:var(--ktv-bg-warm); border:0; border-left:3px solid var(--ktv-brand-primary); box-shadow:none; font-size:12.5px; color:var(--ktv-text-secondary) }
.ktv-b2b .ktv-b2b__ic{ display:grid; place-items:center; width:34px; height:34px; flex:none; border-radius:9px; background:var(--ktv-navy-soft); color:var(--ktv-navy) }
.ktv-b2b b{ display:block; font-family:var(--ktv-font-display); color:var(--ktv-navy-deep); font-size:13px }
.ktv-b2b span{ font-size:12px; color:var(--ktv-text-secondary) }
.ktv-b2b a{ color:var(--ktv-brand-text); font-weight:600 }
.ktv-share{ display:flex; align-items:center; gap:8px; font-size:12px; color:var(--ktv-text-tertiary) }
.ktv-share > a{ display:grid; place-items:center; width:34px; height:34px; border-radius:10px; border:1px solid var(--ktv-border-default); background:var(--ktv-bg-elevated); color:var(--ktv-text-secondary); font-family:var(--ktv-font-mono); font-size:12px; text-decoration:none }
.ktv-share > a:hover{ background:var(--ktv-navy); color:#fff; border-color:var(--ktv-navy) }
.ktv-share .ktv-cmp-toggle{ margin-left:auto }
.ktv-databar{ margin:34px 0 0; background:linear-gradient(120deg,var(--ktv-navy-deep),#101d33); padding:26px 30px; border-radius:18px }
.ktv-databar__row{ display:grid; grid-template-columns:repeat(6,1fr) }
.ktv-db{ padding:0 18px; border-left:1px solid rgba(255,255,255,.1) }
.ktv-db:first-child{ border-left:0; padding-left:0 }
.ktv-db__k{ font-family:var(--ktv-font-mono); font-size:9px; letter-spacing:.13em; text-transform:uppercase; color:rgba(234,240,248,.42) }
.ktv-db__v{ font-family:var(--ktv-font-display); font-weight:800; font-size:27px; letter-spacing:-.03em; color:#fff; line-height:1.05; margin-top:7px }
.ktv-db__v i{ font-style:normal; font-size:.55em; opacity:.55 }
.ktv-db__v.sm{ font-size:17px; letter-spacing:-.01em; padding-top:6px }
.ktv-databar__dist{ display:flex; align-items:center; gap:16px; margin-top:24px; padding-top:20px; border-top:1px solid rgba(255,255,255,.1) }
.ktv-dist__i{ display:grid; place-items:center; width:40px; height:40px; border-radius:11px; background:rgba(217,138,30,.16); border:1px solid rgba(217,138,30,.34); color:var(--ktv-brand-secondary); flex:none }
.ktv-dist__t{ flex:1; min-width:0 }
.ktv-dist__t .k{ font-family:var(--ktv-font-mono); font-size:9.5px; letter-spacing:.13em; text-transform:uppercase; color:rgba(234,240,248,.42) }
.ktv-dist__t .v{ font-family:var(--ktv-font-display); font-weight:800; font-size:21px; color:var(--ktv-brand-secondary); letter-spacing:-.02em; margin-top:3px }
.ktv-dist__t .s{ font-family:var(--ktv-font-mono); font-size:10.5px; color:rgba(234,240,248,.48); margin-top:3px }
.ktv-dist__go{ margin-left:auto; display:inline-flex; align-items:center; gap:8px; font-family:var(--ktv-font-display); font-weight:700; font-size:13px; color:#fff; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.18); border-radius:11px; padding:11px 16px; text-decoration:none; transition:background .15s; flex:none }
.ktv-dist__go:hover{ background:rgba(255,255,255,.14) }
@media(max-width:980px){ .ktv-databar__row{ grid-template-columns:repeat(3,1fr); gap:20px 0 } .ktv-db:nth-child(4){ border-left:0; padding-left:0 } }
@media(max-width:640px){
  .ktv-databar{ padding:22px 20px }
  .ktv-databar__row{ grid-template-columns:repeat(2,1fr) }
  .ktv-db:nth-child(3), .ktv-db:nth-child(5){ border-left:0; padding-left:0 }
  .ktv-databar__dist{ flex-direction:column; align-items:flex-start }
  .ktv-dist__go{ margin-left:0 }
}
.ktv-sticky{ position:fixed; left:0; right:0; bottom:0; z-index:60; transform:translateY(115%); transition:transform .28s cubic-bezier(.2,.8,.2,1);
  background:var(--ktv-bg-elevated); border-top:1px solid var(--ktv-border-default); box-shadow:0 -8px 30px rgba(var(--ktv-shadow-rgb),.12) }
.ktv-sticky.is-on{ transform:translateY(0) }
.ktv-sticky__in{ display:flex; align-items:center; justify-content:space-between; gap:16px; padding:11px 24px }
.ktv-sticky__prod{ display:flex; align-items:center; gap:12px; min-width:0 }
.ktv-sticky__thumb{ width:46px; height:30px; border-radius:6px; flex:none; box-shadow:inset 0 0 0 3px rgba(0,0,0,.28) }
.ktv-sticky__name{ font-weight:700; font-size:14px; color:var(--ktv-text-primary); white-space:nowrap; overflow:hidden; text-overflow:ellipsis }
.ktv-sticky__right{ display:flex; align-items:center; gap:16px; flex:none }
.ktv-sticky__price{ font-family:var(--ktv-font-mono); font-weight:700; font-size:20px; color:var(--ktv-text-primary) }
.ktv-sticky__price .woocommerce-Price-amount{ color:var(--ktv-text-primary) }
/* HOVER POLISH — hero stat (fallback bez slika) */
.ktv-hero__stat{ transition:transform .16s, box-shadow .16s, border-color .16s, background .16s }
.ktv-hero__stat:hover{ transform:translateY(-2px); border-color:var(--ktv-navy-line); background:var(--ktv-bg-elevated); box-shadow:0 8px 18px rgba(var(--ktv-shadow-rgb),.09) }
@media(max-width:1000px){
  .ktv-pdp{ grid-template-columns:1fr; gap:26px } .ktv-pdp__gallery{ position:relative; top:0 }
  .ktv-specgrid{ grid-template-columns:1fr }
}
@media(max-width:560px){
  .ktv-pdp__trust{ grid-template-columns:1fr }
  .ktv-sticky__name{ max-width:120px } .ktv-sticky__in{ padding:10px 16px }
}

/* ==== #24 ktv-cart-css ==== */
/* ===== Širina sadržaja: pobijedi uski content-size teme ===== */
.woocommerce-cart .wp-block-post-content,
.woocommerce-checkout .wp-block-post-content,
.woocommerce-cart .entry-content,
.woocommerce-checkout .entry-content{
  max-width:var(--ktv-maxw) !important; margin-inline:auto !important;
}
.woocommerce-cart .wc-block-cart,
.woocommerce-checkout .wc-block-checkout{
  max-width:var(--ktv-maxw) !important; margin-inline:auto !important;
}
.woocommerce-cart .wp-block-post-title,
.woocommerce-checkout .wp-block-post-title{
  max-width:var(--ktv-maxw); margin-inline:auto;
  font-family:var(--ktv-font-display); font-weight:700; letter-spacing:-.02em;
  margin-bottom:18px;
}

/* ===== FORSIRANO 2 kolone na desktopu (bez praznine) ===== */
@media (min-width:920px){
  .woocommerce-cart .wc-block-cart,
  .woocommerce-checkout .wc-block-checkout{
    display:flex !important; flex-direction:row !important; flex-wrap:nowrap !important;
    align-items:flex-start; gap:36px;
  }
  .wc-block-cart__main,
  .wc-block-checkout__main{ flex:1 1 auto !important; width:auto !important; min-width:0 !important; }
  .wc-block-cart__sidebar{ flex:0 0 360px !important; max-width:360px !important; }
  .wc-block-checkout__sidebar{ flex:0 0 400px !important; max-width:400px !important; }
}

/* ===== Sidebar = panel (totali / sažetak narudžbe) ===== */
.wc-block-cart__sidebar,
.wc-block-checkout__sidebar{
  background:var(--ktv-navy-tint) !important;
  border:1px solid var(--ktv-navy-line);
  border-radius:var(--ktv-radius);
  padding:22px !important;
  box-shadow:var(--ktv-shadow-md);
  position:sticky; top:92px;
}
.wc-block-cart__totals-title,
.wc-block-checkout__sidebar .wc-block-components-title{
  font-family:var(--ktv-font-mono) !important;
  font-size:11px !important; letter-spacing:.18em; text-transform:uppercase;
  color:var(--ktv-navy) !important; margin-bottom:4px;
}
.wc-block-components-totals-item__value{ font-family:var(--ktv-font-mono); font-weight:600; }
.wc-block-components-totals-item{ padding:7px 0; }
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value{
  color:var(--ktv-navy-deep); font-size:1.3em; font-weight:800;
}

/* ===== Primarni CTA = amber (bio dark #241A12, uglat) ===== */
.wc-block-cart__submit-button,
.wc-block-components-checkout-place-order-button,
.woocommerce-cart .wc-block-cart__submit-container .wc-block-components-button,
.woocommerce-checkout .wc-block-checkout__actions .wc-block-components-button{
  background:var(--ktv-brand-primary) !important;
  color:var(--ktv-brand-ink) !important;
  border-radius:var(--ktv-radius-sm) !important;
  font-family:var(--ktv-font-display) !important;
  font-weight:700 !important;
  box-shadow:var(--ktv-shadow-sm);
  transition:background .15s ease, transform .05s ease;
}
.wc-block-cart__submit-button:hover,
.wc-block-components-checkout-place-order-button:hover{ background:var(--ktv-brand-primary-hover) !important; }
.wc-block-cart__submit-button:active,
.wc-block-components-checkout-place-order-button:active{ transform:translateY(1px); }

/* ===== Stavke korpe ===== */
.wc-block-cart-items__row{
  border-bottom:1px solid var(--ktv-border-default) !important;
  padding:18px 4px !important;
}
.wc-block-cart-item__image img{
  border-radius:var(--ktv-radius-sm);
  background:var(--ktv-bg-tinted);
  padding:6px;
}
.wc-block-cart-item__product .wc-block-components-product-name{
  font-family:var(--ktv-font-display) !important;
  font-weight:600; color:var(--ktv-text-primary) !important;
}
.wc-block-cart-item__prices .wc-block-components-product-price__value,
.wc-block-cart-item__total .wc-block-components-product-price__value{ font-family:var(--ktv-font-mono); }
.wc-block-components-quantity-selector{
  border-radius:var(--ktv-radius-xs) !important;
  border-color:var(--ktv-border-strong) !important;
}

/* ===== Checkout: koraci kao kartice ===== */
.wc-block-components-checkout-step{
  border:1px solid var(--ktv-border-default) !important;
  background:var(--ktv-bg-elevated) !important;
  border-radius:var(--ktv-radius) !important;
  padding:20px 22px !important;
  margin-bottom:14px !important;
}
.wc-block-components-checkout-step__title{
  font-family:var(--ktv-font-display) !important;
  font-weight:700 !important; color:var(--ktv-text-primary) !important;
}
.wc-block-components-text-input input,
.wc-block-components-text-input .components-text-control__input,
.wc-block-components-address-form input,
.wc-block-components-address-form select{
  border-radius:var(--ktv-radius-xs) !important;
  border:1px solid var(--ktv-border-strong) !important;
  background:var(--ktv-bg-elevated) !important;
}
.wc-block-components-text-input input:focus,
.wc-block-components-address-form input:focus{
  border-color:var(--ktv-brand-primary) !important;
  box-shadow:0 0 0 3px rgba(217,138,30,.18) !important;
  outline:none !important;
}
.wc-block-components-text-input.is-active label{ color:var(--ktv-brand-text) !important; }
.wc-block-components-notice-banner{ border-radius:var(--ktv-radius-sm) !important; }

/* ===== Prazna korpa ===== */
.wp-block-woocommerce-empty-cart-block .wc-block-components-button{
  background:var(--ktv-brand-primary) !important;
  color:var(--ktv-brand-ink) !important;
  border-radius:var(--ktv-radius-sm) !important;
  font-family:var(--ktv-font-display) !important; font-weight:700 !important;
}

/* ===== Mobilno: slaganje ===== */
@media (max-width:919px){
  .woocommerce-cart .wc-block-cart,
  .woocommerce-checkout .wc-block-checkout{ display:block; }
  .wc-block-cart__sidebar,
  .wc-block-checkout__sidebar{ position:static; margin-top:22px; }
}


/* ===== #24b ktv-empty-cart-css — prazna korpa (pun render) ===== */
.ktv-ec{ padding:clamp(24px,3.4vw,40px) 0 clamp(56px,7vw,88px) }
.ktv-ec__wrap{ max-width:var(--ktv-maxw); margin:0 auto; padding:0 24px }

/* WooCommerce poruke (npr. „Proizvod uklonjen. Poništi?") */
.ktv-ec__notices{ max-width:var(--ktv-maxw); margin:0 auto 20px; padding:0 24px }
.ktv-ec__notices ul{ margin:0; padding:0; list-style:none }
.ktv-ec__notices .woocommerce-message,
.ktv-ec__notices .woocommerce-info,
.ktv-ec__notices .woocommerce-error{
  margin:0 0 10px; padding:13px 17px; list-style:none;
  border:1px solid var(--ktv-navy-line); border-left:3px solid var(--ktv-brand-primary);
  border-radius:var(--ktv-radius-sm); background:var(--ktv-navy-tint);
  color:var(--ktv-text-primary); font-size:14.5px; line-height:1.5;
}
.ktv-ec__notices a{ color:var(--ktv-brand-text); font-weight:600; text-underline-offset:3px }
.ktv-ec__notices a:hover{ color:var(--ktv-brand-primary-hover) }

/* ---------- Panel: ekran u pripravnosti ---------- */
.ktv-ec__panel{
  position:relative; overflow:hidden; isolation:isolate;
  display:grid; grid-template-columns:minmax(0,400px) minmax(0,1fr);
  align-items:center; gap:clamp(22px,4vw,56px);
  padding:clamp(26px,3.4vw,46px);
  border-radius:calc(var(--ktv-radius) + 6px);
  background:
    radial-gradient(115% 130% at 82% 6%, rgba(217,138,30,.22), transparent 56%),
    linear-gradient(152deg,#16243D 0%,#1E3A5F 60%,#16243D 100%);
  box-shadow:0 28px 64px -34px rgba(22,36,61,.8);
}
.ktv-ec__panel::after{   /* tanka svjetlosna ivica gore */
  content:""; position:absolute; inset:0; z-index:2; pointer-events:none;
  border-radius:inherit; box-shadow:inset 0 1px 0 rgba(255,255,255,.14);
}

/* pozornica + ekran */
.ktv-ec__stage{ display:flex; flex-direction:column; align-items:center; justify-content:center }
.ktv-ec__screen{
  position:relative; width:100%; aspect-ratio:16/9;
  border-radius:12px; border:1px solid rgba(255,255,255,.1);
  background:linear-gradient(168deg,#101B2E,#16243D 58%,#0E1626);
  box-shadow:0 22px 44px -22px rgba(0,0,0,.85), inset 0 0 60px rgba(0,0,0,.45);
  display:flex; flex-direction:column; align-items:center; justify-content:center; gap:14px;
}
.ktv-ec__screen::before{  /* jedva vidljive linije — tekstura ekrana, ne ukras */
  content:""; position:absolute; inset:0; border-radius:inherit; pointer-events:none; opacity:.5;
  background:repeating-linear-gradient(180deg, rgba(255,255,255,.028) 0 1px, transparent 1px 3px);
}
.ktv-ec__dot{
  width:9px; height:9px; border-radius:50%; flex:none;
  background:var(--ktv-brand-primary); box-shadow:0 0 14px 2px rgba(217,138,30,.75);
}
.ktv-ec__sig{
  font-family:var(--ktv-font-mono); font-size:11px; font-weight:600;
  letter-spacing:.24em; color:#EAA842; text-transform:uppercase;
}
.ktv-ec__stand{
  width:34%; height:9px; margin-top:10px; border-radius:0 0 8px 8px;
  background:linear-gradient(180deg,rgba(255,255,255,.16),rgba(255,255,255,.04));
}
@media (prefers-reduced-motion:no-preference){
  .ktv-ec__dot{ animation:ktvStandby 2.6s ease-in-out infinite }
  @keyframes ktvStandby{ 0%,100%{ opacity:1; transform:scale(1) } 50%{ opacity:.45; transform:scale(.9) } }
}

/* poruka */
.ktv-ec__msg{ color:#FBF8F2; min-width:0 }
.ktv-ec__eyebrow{
  display:inline-flex; align-items:center; gap:8px; margin-bottom:14px;
  font-family:var(--ktv-font-mono); font-size:11px; font-weight:600;
  letter-spacing:.22em; text-transform:uppercase; color:#EAA842;
}
.ktv-ec__eyebrow i{ width:6px; height:6px; border-radius:50%; background:var(--ktv-brand-primary); box-shadow:0 0 8px var(--ktv-brand-primary) }
.ktv-ec__h1{
  margin:0 0 14px; color:#FBF8F2;
  font-family:var(--ktv-font-display); font-weight:800;
  font-size:clamp(28px,4.2vw,46px); line-height:1.03; letter-spacing:-.035em;
  text-wrap:balance;
}
.ktv-ec__lede{
  margin:0 0 26px; max-width:52ch;
  color:rgba(251,248,242,.76); font-size:clamp(14.5px,1.5vw,16.5px); line-height:1.62;
  text-wrap:pretty;
}
.ktv-ec__cta{ display:flex; flex-wrap:wrap; gap:12px }
.ktv-ec__btn{
  display:inline-flex; align-items:center; justify-content:center;
  padding:14px 26px; border-radius:12px; border:1px solid transparent;
  font-family:var(--ktv-font-body); font-weight:600; font-size:15px;
  text-decoration:none; white-space:nowrap;
  transition:background .16s, border-color .16s, color .16s, transform .16s;
}
.ktv-ec__btn--main{
  background:var(--ktv-brand-primary); color:var(--ktv-brand-ink);
  box-shadow:0 14px 30px -12px rgba(217,138,30,.7);
}
.ktv-ec__btn--main:hover{ background:var(--ktv-brand-primary-hover); transform:translateY(-2px) }
.ktv-ec__btn--ghost{ background:transparent; border-color:rgba(251,248,242,.28); color:#FBF8F2 }
.ktv-ec__btn--ghost:hover{ border-color:var(--ktv-brand-primary); color:#EAA842 }
.ktv-ec__btn:focus-visible{ outline:2px solid var(--ktv-brand-primary); outline-offset:3px }

/* ---------- Kreni odavde ---------- */
.ktv-ec__lbl{
  margin:38px 0 13px; font-family:var(--ktv-font-mono); font-size:11px;
  letter-spacing:.22em; text-transform:uppercase; color:var(--ktv-navy);
}
.ktv-ec__cips{ display:flex; flex-wrap:wrap; gap:9px }
.ktv-ec__cips a{
  padding:10px 16px; border-radius:11px; font-size:14px; text-decoration:none;
  color:var(--ktv-text-primary); background:var(--ktv-bg-elevated);
  border:1px solid var(--ktv-border-default); transition:.16s;
}
.ktv-ec__cips a:hover{
  border-color:var(--ktv-brand-primary); color:var(--ktv-brand-primary-hover);
  box-shadow:0 8px 22px -12px rgba(var(--ktv-shadow-rgb),.4);
}

/* ---------- Prijedlozi ---------- */
.ktv-ec__sec{ margin-top:46px }

/* ---------- Mobilno ---------- */
@media (max-width:860px){
  .ktv-ec__panel{ grid-template-columns:1fr; text-align:center }
  .ktv-ec__stage{ max-width:340px; margin:0 auto }
  .ktv-ec__lede{ margin-inline:auto }
  .ktv-ec__cta{ justify-content:center }
}
@media (max-width:480px){
  .ktv-ec__btn{ flex:1 1 100%; }
}


/* ===== BLOK A: bogat opis brenda/kategorije + FAQ (ispod grida) ===== */
.ktv-cat-intro{ margin-top:30px; padding-top:30px; border-top:1px solid var(--ktv-border-default); }
.ktv-cat-intro h2{ font-family:var(--ktv-font-display); font-weight:800; font-size:clamp(21px,2.5vw,29px); letter-spacing:-.025em; color:var(--ktv-text-primary); margin:30px 0 14px; }
.ktv-cat-intro h2:first-child{ margin-top:0; }
.ktv-cat-intro h3{ font-family:var(--ktv-font-display); font-weight:700; font-size:clamp(16px,1.8vw,20px); color:var(--ktv-navy-deep); margin:22px 0 8px; }
.ktv-cat-intro p{ color:var(--ktv-text-secondary); font-size:15.5px; line-height:1.72; margin:0 0 13px; max-width:72ch; }
.ktv-cat-intro p:first-of-type{ font-size:16.5px; color:var(--ktv-text-primary); }
.ktv-cat-intro strong{ color:var(--ktv-text-primary); font-weight:700; }
.ktv-cat-intro a{ color:var(--ktv-brand-text); font-weight:600; text-underline-offset:2px; }
.ktv-cat-intro a:hover{ color:var(--ktv-brand-primary-hover); }

/* Tabela serija = premium navy kartica */
.kg-tablewrap{ border:1px solid var(--ktv-navy-line); border-radius:var(--ktv-radius); overflow:hidden; box-shadow:var(--ktv-shadow-md); margin:12px 0 24px; }
.kg-tablewrap__scroll{ overflow-x:auto; }
.ktv-cat-intro table{ width:100%; border-collapse:collapse; font-size:14.5px; margin:0; }
.ktv-cat-intro thead th{ background:linear-gradient(180deg,var(--ktv-navy),var(--ktv-navy-deep)); color:#fff; font-family:var(--ktv-font-mono); font-size:10.5px; letter-spacing:.09em; text-transform:uppercase; text-align:left; padding:13px 15px; white-space:nowrap; }
.ktv-cat-intro tbody td{ padding:13px 15px; border-bottom:1px solid var(--ktv-border-default); color:var(--ktv-text-secondary); vertical-align:top; line-height:1.5; }
.ktv-cat-intro tbody tr:last-child td{ border-bottom:0; }
.ktv-cat-intro tbody tr:nth-child(even) td{ background:var(--ktv-navy-tint); }
.ktv-cat-intro tbody tr:hover td{ background:var(--ktv-bg-warm); }
.ktv-cat-intro tbody td:first-child{ font-family:var(--ktv-font-display); font-weight:700; color:var(--ktv-text-primary); white-space:nowrap; }
.ktv-cat-intro tbody td:first-child a{ color:var(--ktv-brand-primary-hover); }
.ktv-cat-intro tbody td:nth-child(4), .ktv-cat-intro tbody td.kg-num{ font-family:var(--ktv-font-mono); font-weight:600; color:var(--ktv-navy-deep); white-space:nowrap; }

/* Scenariji "koji za tebe" = kartice */
.kg-picks{ display:grid; grid-template-columns:repeat(2,1fr); gap:12px; margin:14px 0 20px; }
.kg-pick{ display:flex; flex-direction:column; gap:5px; padding:16px 18px; border:1px solid var(--ktv-border-default); border-radius:var(--ktv-radius-sm); background:var(--ktv-bg-elevated); text-decoration:none; transition:transform .15s ease, box-shadow .15s ease, border-color .15s ease; }
.kg-pick:hover{ transform:translateY(-2px); box-shadow:var(--ktv-shadow-md); border-color:var(--ktv-brand-primary); }
.kg-pick b{ font-family:var(--ktv-font-display); font-weight:700; font-size:15.5px; color:var(--ktv-text-primary); }
.kg-pick span{ font-size:14px; color:var(--ktv-text-secondary); line-height:1.5; }
.kg-pick em{ margin-top:auto; padding-top:6px; font-style:normal; font-weight:600; font-size:13.5px; color:var(--ktv-brand-text); }
.kg-pick:hover em{ color:var(--ktv-brand-primary-hover); }

/* FAQ */
.ktv-cat-faq{ margin-top:30px; }
.ktv-cat-faq__h{ font-family:var(--ktv-font-display); font-weight:800; font-size:clamp(21px,2.5vw,29px); color:var(--ktv-text-primary); margin:0 0 15px; }
.ktv-faq__item{ border:1px solid var(--ktv-border-default); border-radius:var(--ktv-radius-sm); background:var(--ktv-bg-elevated); margin-bottom:10px; transition:border-color .15s, box-shadow .15s; }
.ktv-faq__item[open]{ border-color:var(--ktv-navy-line); box-shadow:var(--ktv-shadow-md); }
.ktv-faq__q{ cursor:pointer; list-style:none; padding:16px 18px; font-family:var(--ktv-font-display); font-weight:600; font-size:15.5px; color:var(--ktv-text-primary); display:flex; justify-content:space-between; align-items:center; gap:14px; }
.ktv-faq__q::-webkit-details-marker{ display:none; }
.ktv-faq__q::after{ content:"+"; font-family:var(--ktv-font-mono); font-size:22px; line-height:1; color:var(--ktv-brand-primary); flex:none; transition:transform .2s ease; }
.ktv-faq__item[open] .ktv-faq__q::after{ transform:rotate(45deg); }
.ktv-faq__a{ padding:0 18px 17px; color:var(--ktv-text-secondary); font-size:14.7px; line-height:1.68; }
.ktv-faq__a p{ margin:0; max-width:70ch; }
@media(max-width:720px){ .kg-picks{ grid-template-columns:1fr; } }
@media(max-width:640px){ .ktv-cat-intro table{ font-size:13.5px; } }

/* ==== #16 ktv-404-css ==== */
.ktv-404{
  max-width:var(--ktv-maxw); margin:0 auto;
  padding:clamp(60px,10vh,120px) 24px clamp(60px,9vh,110px);
  text-align:center; display:flex; flex-direction:column; align-items:center;
}
.ktv-404__kod{
  font-family:var(--ktv-font-mono); font-weight:700;
  font-size:clamp(64px,13vw,132px); line-height:1;
  color:var(--ktv-navy-soft); letter-spacing:.02em; margin:0 0 -14px;
  user-select:none;
}
.ktv-404__h1{
  font-family:var(--ktv-font-display); font-weight:800;
  font-size:clamp(30px,5vw,52px); letter-spacing:-.035em; line-height:1.02;
  color:var(--ktv-text-primary); margin:0 0 14px; text-wrap:balance;
}
.ktv-404__lede{
  color:var(--ktv-text-secondary); font-size:clamp(15px,1.6vw,17px);
  max-width:52ch; line-height:1.6; margin:0 0 32px; text-wrap:pretty;
}
.ktv-404__search{
  display:flex; gap:10px; width:min(520px,100%); margin-bottom:40px;
}
.ktv-404__search input{
  flex:1; min-width:0; padding:14px 18px; border-radius:12px;
  border:1px solid var(--ktv-border-strong); background:var(--ktv-bg-elevated);
  font-family:var(--ktv-font-body); font-size:15px; color:var(--ktv-text-primary); outline:none;
  transition:border-color .16s, box-shadow .16s;
}
.ktv-404__search input:focus{ border-color:var(--ktv-brand-primary); box-shadow:0 0 0 3px rgba(217,138,30,.2) }
.ktv-404__search button{
  flex:none; padding:14px 24px; border:0; border-radius:12px; cursor:pointer;
  background:var(--ktv-brand-primary); color:var(--ktv-brand-ink);
  font-family:var(--ktv-font-body); font-weight:600; font-size:15px;
  box-shadow:0 10px 26px -9px rgba(var(--ktv-shadow-rgb),.55); transition:.16s;
}
.ktv-404__search button:hover{ background:var(--ktv-brand-primary-hover); transform:translateY(-1px) }

.ktv-404__lbl{
  font-family:var(--ktv-font-mono); font-size:11px; letter-spacing:.22em;
  text-transform:uppercase; color:var(--ktv-navy); margin:0 0 14px;
}
.ktv-404__cips{ display:flex; flex-wrap:wrap; gap:9px; justify-content:center }
.ktv-404__cips a{
  font-size:14px; color:var(--ktv-text-primary); text-decoration:none;
  background:var(--ktv-bg-elevated); border:1px solid var(--ktv-border-default);
  padding:10px 16px; border-radius:11px; transition:.16s;
}
.ktv-404__cips a:hover{
  border-color:var(--ktv-brand-primary); color:var(--ktv-brand-primary-hover);
  box-shadow:0 8px 22px -12px rgba(var(--ktv-shadow-rgb),.4);
}
@media(max-width:520px){ .ktv-404__search{ flex-direction:column } }

/* ==== #26 ktv-guide-css ==== */
.ktv-guide{ max-width:var(--ktv-maxw); margin-inline:auto; padding:0 24px 70px; }
.kg-crumbs{ font-family:var(--ktv-font-mono); font-size:12px; color:var(--ktv-text-tertiary); padding:22px 0 0; }
.kg-crumbs a{ color:var(--ktv-text-secondary); } .kg-crumbs a:hover{ color:var(--ktv-brand-text); }

/* Hero */
.kg-hero,.kg-head{ max-width:760px; margin:0 auto; padding:26px 0 8px; text-align:center; }
.kg-hero .ktv-eyebrow,.kg-head .ktv-eyebrow{ justify-content:center; }
.kg-hero h1,.kg-head h1{ font-family:var(--ktv-font-display); font-weight:800; letter-spacing:-.025em;
  font-size:clamp(30px,4.4vw,46px); line-height:1.05; margin:14px 0 0; }
.kg-lead{ color:var(--ktv-text-secondary); font-size:18px; line-height:1.6; margin:18px auto 0; max-width:60ch; }

/* Članak */
.kg-article{ max-width:760px; margin:0 auto; }
.kg-body{ font-size:17.5px; line-height:1.75; color:var(--ktv-text-primary); }
.kg-body h2{ font-family:var(--ktv-font-display); font-weight:700; letter-spacing:-.02em;
  font-size:clamp(22px,2.6vw,28px); line-height:1.15; margin:46px 0 14px; padding-top:22px;
  border-top:1px solid var(--ktv-border-default); }
.kg-body p{ margin:16px 0; } .kg-body b{ font-weight:700; }
.kg-body a{ color:var(--ktv-brand-text); text-decoration:underline; text-underline-offset:2px; text-decoration-thickness:1px; }
.kg-body a:hover{ color:var(--ktv-brand-primary-hover); }
.kg-body ul{ margin:16px 0; padding-left:0; list-style:none; }
.kg-body ul li{ position:relative; padding:8px 0 8px 30px; border-bottom:1px solid var(--ktv-border-subtle); }
.kg-body ul li:before{ content:''; position:absolute; left:6px; top:16px; width:8px; height:8px;
  border-radius:2px; background:var(--ktv-brand-primary); }

/* TOC */
.kg-toc{ background:var(--ktv-bg-tinted); border:1px solid var(--ktv-border-default);
  border-radius:var(--ktv-radius); padding:16px 18px; margin:26px 0; font-size:14px; }
.kg-toc b{ font-family:var(--ktv-font-mono); font-size:11px; letter-spacing:.16em; text-transform:uppercase;
  color:var(--ktv-navy); display:block; margin-bottom:8px; }
.kg-toc a{ display:inline-block; margin:4px 14px 4px 0; color:var(--ktv-text-secondary);
  text-decoration:none; border-bottom:1px dashed var(--ktv-border-strong); }
.kg-toc a:hover{ color:var(--ktv-brand-text); border-color:var(--ktv-brand-primary); }

/* Tabela */
.kg-table{ width:100%; border-collapse:collapse; margin:22px 0; font-size:15.5px;
  border:1px solid var(--ktv-border-default); border-radius:var(--ktv-radius-sm); overflow:hidden; }
.kg-table th{ background:var(--ktv-navy); color:#EAF0F8; font-family:var(--ktv-font-display); font-weight:600;
  text-align:left; padding:12px 16px; }
.kg-table td{ padding:11px 16px; border-top:1px solid var(--ktv-border-default); font-family:var(--ktv-font-mono); }
.kg-table tbody tr:nth-child(even){ background:var(--ktv-bg-warm); }

/* Savjet callout */
.kg-tip{ background:var(--ktv-navy-tint); border:1px solid var(--ktv-navy-line);
  border-left:4px solid var(--ktv-brand-primary); border-radius:var(--ktv-radius-sm);
  padding:16px 18px; margin:24px 0; font-size:15.5px; color:var(--ktv-text-primary); }
.kg-tip b{ color:var(--ktv-navy); }

/* CTA */
.kg-cta{ margin:44px 0 0; padding:30px; border-radius:var(--ktv-radius);
  background:linear-gradient(150deg,var(--ktv-navy-deep),var(--ktv-navy)); color:#EAF0F8; text-align:center; }
.kg-cta h3{ font-family:var(--ktv-font-display); font-weight:800; font-size:24px; margin:0 0 8px; color:#fff; }
.kg-cta p{ color:#C7D2E2; font-size:15px; max-width:56ch; margin:0 auto 18px; }
.kg-btn{ display:inline-block; background:var(--ktv-brand-primary); color:var(--ktv-brand-ink);
  font-family:var(--ktv-font-display); font-weight:700; padding:14px 28px; border-radius:var(--ktv-radius-sm);
  text-decoration:none; transition:background .15s; }
.kg-btn:hover{ background:var(--ktv-brand-primary-hover); }

/* Hub lista */
.kg-list{ display:grid; grid-template-columns:repeat(auto-fill,minmax(300px,1fr)); gap:20px; margin:34px 0 0; }
.kg-item{ display:flex; flex-direction:column; gap:8px; background:var(--ktv-bg-elevated);
  border:1px solid var(--ktv-border-default); border-radius:var(--ktv-radius); padding:22px; text-decoration:none;
  color:var(--ktv-text-primary); transition:transform .16s, box-shadow .16s, border-color .16s; }
.kg-item:hover{ transform:translateY(-4px); box-shadow:var(--ktv-shadow-lg); border-color:var(--ktv-border-strong); }
.kg-item__tag{ font-family:var(--ktv-font-mono); font-size:11px; letter-spacing:.1em; text-transform:uppercase; color:var(--ktv-navy); }
.kg-item h3{ font-family:var(--ktv-font-display); font-weight:700; font-size:19px; line-height:1.2; margin:0; }
.kg-item p{ color:var(--ktv-text-secondary); font-size:14px; line-height:1.5; margin:0; flex:1; }
.kg-item__go{ font-family:var(--ktv-font-mono); font-size:12.5px; font-weight:600; color:var(--ktv-brand-text); }

.kg-faq{ margin:20px 0; }
.kg-faq dt{ font-family:var(--ktv-font-display); font-weight:700; font-size:17px; color:var(--ktv-text-primary); padding:16px 0 6px; border-top:1px solid var(--ktv-border-default); }
.kg-faq dt:first-of-type{ border-top:0; padding-top:0; }
.kg-faq dd{ margin:0 0 6px; color:var(--ktv-text-secondary); }
.kg-body h2[id]{ scroll-margin-top:96px; } /* sidro ne smije završiti ispod sticky headera */
@media (prefers-reduced-motion:no-preference){ html{ scroll-behavior:smooth } } /* samo guide render (style je u ovom dokumentu) */
@media (max-width:600px){ .kg-body{ font-size:17px; } }

/* ==== #27 ktvsc-css ==== */
/* Stranica kalkulatora: sakrij dupli naslov teme + zbij razmak iznad (tema iscrtava veliki .wp-block-post-title) */
.wp-block-post-title{ display:none !important }
.wp-site-blocks > main:first-of-type, .wp-site-blocks .is-layout-constrained:first-child{ padding-top:0 !important; margin-top:0 !important }
.ktvsc{ --sc-tv:173px; background:var(--ktv-bg-elevated,#fff); border:1px solid var(--ktv-border-default,#e7e0d4); border-radius:var(--ktv-radius,20px); padding:30px 30px 26px; box-shadow:0 14px 40px rgba(var(--ktv-shadow-rgb,20,20,20),.08); max-width:940px; margin:6px auto 26px; color:var(--ktv-text-primary,#1c1c1c) }
.ktvsc *{ box-sizing:border-box }
.ktvsc__eyebrow{ display:inline-flex; align-items:center; gap:8px; font-family:var(--ktv-font-mono,ui-monospace,monospace); font-size:11px; letter-spacing:.14em; text-transform:uppercase; color:var(--ktv-navy,#16243D) }
.ktvsc__eyebrow i{ width:16px; height:2px; background:var(--ktv-brand-primary,#D98A1E) }
.ktvsc__title{ font-family:var(--ktv-font-display,inherit); font-size:clamp(21px,2.6vw,28px); font-weight:800; letter-spacing:-.02em; line-height:1.15; margin:10px 0 8px; color:var(--ktv-navy-deep,#12203a) }
.ktvsc__sub{ font-size:14px; color:var(--ktv-text-secondary,#5a5a5a); line-height:1.6; margin:0; max-width:640px }
.ktvsc__modes{ display:inline-flex; gap:4px; padding:4px; margin:20px 0 22px; background:var(--ktv-bg-tinted,#f4efe6); border:1px solid var(--ktv-border-default,#e7e0d4); border-radius:12px }
.ktvsc__mode{ border:0; background:transparent; cursor:pointer; font-family:var(--ktv-font-display,inherit); font-weight:700; font-size:13.5px; color:var(--ktv-text-secondary,#5a5a5a); padding:9px 16px; border-radius:9px; transition:background .15s,color .15s }
.ktvsc__mode.is-on{ background:var(--ktv-navy,#16243D); color:#fff; box-shadow:0 4px 12px rgba(22,36,61,.2) }
.ktvsc__grid{ display:grid; grid-template-columns:1fr 1fr; gap:28px; align-items:center }

.ktvsc__stage{ display:flex; flex-direction:column; align-items:center; gap:14px }
.ktvsc__room{ position:relative; width:100%; min-height:230px; display:flex; flex-direction:column; align-items:center; justify-content:flex-end;
  padding:26px 20px 0; border-radius:16px; overflow:hidden;
  background:linear-gradient(180deg,#0f1826 0%,#16243D 60%,#1c2c48 100%) }
.ktvsc__wallgrid{ position:absolute; inset:0 0 34px 0; background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px); background-size:34px 34px }
.ktvsc__tv{ position:relative; width:var(--sc-tv); aspect-ratio:16/9; border-radius:8px; border:5px solid #0a0f18;
  background:var(--wall,linear-gradient(120deg,#1a2942,#2b4a7a 55%,#D98A1E)); background-size:200% 200%;
  box-shadow:0 18px 34px -12px rgba(0,0,0,.6), inset 0 0 0 1px rgba(255,255,255,.08); display:grid; place-items:center;
  transition:width .32s cubic-bezier(.2,.8,.2,1) }
.ktvsc__tvglow{ position:absolute; inset:0; border-radius:4px; background:radial-gradient(120% 90% at 50% 22%,rgba(255,255,255,.34),transparent 60%) }
.ktvsc__tvlabel{ position:relative; font-family:var(--ktv-font-mono,monospace); font-size:14px; font-weight:700; color:#fff; text-shadow:0 1px 8px rgba(0,0,0,.55) }
.ktvsc__stand{ width:16%; height:8px; background:#0a0f18; border-radius:0 0 4px 4px }
.ktvsc__floor{ width:100%; height:34px; margin-top:6px; background:linear-gradient(180deg,rgba(255,255,255,.08),transparent); border-top:1px solid rgba(255,255,255,.12) }
.ktvsc__distcap{ font-family:var(--ktv-font-mono,monospace); font-size:12.5px; color:var(--ktv-text-secondary,#5a5a5a) }
.ktvsc__distcap b{ color:var(--ktv-navy,#16243D) }

.ktvsc__ctl{ margin-bottom:18px }
.ktvsc__ctlrow{ display:flex; align-items:baseline; justify-content:space-between; margin-bottom:12px }
.ktvsc__lbl{ font-size:13px; font-weight:600; color:var(--ktv-text-secondary,#5a5a5a) }
.ktvsc__val{ font-size:13px; color:var(--ktv-text-tertiary,#8a8a8a) }
.ktvsc__val b{ font-family:var(--ktv-font-mono,monospace); font-size:26px; font-weight:700; color:var(--ktv-navy-deep,#12203a) }
.ktvsc__range{ -webkit-appearance:none; appearance:none; width:100%; height:8px; border-radius:999px; margin:2px 0;
  background:linear-gradient(90deg,var(--ktv-brand-primary,#D98A1E) 0 var(--p,26%),var(--ktv-border-default,#e7e0d4) var(--p,26%) 100%); outline:none; cursor:pointer }
.ktvsc__range::-webkit-slider-thumb{ -webkit-appearance:none; width:24px; height:24px; border-radius:50%; background:#fff; border:3px solid var(--ktv-brand-primary,#D98A1E); box-shadow:0 3px 10px rgba(0,0,0,.2); cursor:pointer }
.ktvsc__range::-moz-range-thumb{ width:22px; height:22px; border:3px solid var(--ktv-brand-primary,#D98A1E); border-radius:50%; background:#fff; cursor:pointer }
.ktvsc__scale{ display:flex; justify-content:space-between; font-family:var(--ktv-font-mono,monospace); font-size:10px; color:var(--ktv-text-tertiary,#8a8a8a); margin-top:7px }

.ktvsc__res{ display:grid; grid-template-columns:1fr 1fr; gap:10px; margin:6px 0 16px }
.ktvsc__rc{ text-align:left; cursor:pointer; background:var(--ktv-bg-tinted,#f4efe6); border:1.5px solid var(--ktv-border-default,#e7e0d4); border-radius:14px; padding:13px 14px; transition:border-color .16s,box-shadow .16s,transform .1s; font-family:inherit }
.ktvsc__rc:hover{ transform:translateY(-2px) }
.ktvsc__rc.is-sel{ border-color:var(--ktv-brand-primary,#D98A1E); box-shadow:0 8px 20px rgba(217,138,30,.16); background:var(--ktv-bg-elevated,#fff) }
.ktvsc__rk{ display:block; font-family:var(--ktv-font-mono,monospace); font-size:10px; text-transform:uppercase; letter-spacing:.05em; color:var(--ktv-text-tertiary,#8a8a8a); margin-bottom:3px }
.ktvsc__rc b{ display:block; font-family:var(--ktv-font-display,inherit); font-size:29px; font-weight:800; letter-spacing:-.02em; line-height:1; color:var(--ktv-navy-deep,#12203a) }
.ktvsc__rc i{ display:block; font-style:normal; font-size:10.5px; color:var(--ktv-text-secondary,#5a5a5a); margin-top:5px; line-height:1.35 }
.ktvsc__reco{ font-size:14px; line-height:1.55; color:var(--ktv-text-primary,#1c1c1c); margin:0 0 14px; padding:12px 15px; background:var(--ktv-bg-warm,#faf6ee); border:1px solid var(--ktv-border-default,#e7e0d4); border-left:3px solid var(--ktv-brand-primary,#D98A1E); border-radius:11px }
.ktvsc__reco b{ color:var(--ktv-navy-deep,#12203a) }
.ktvsc__cta{ display:inline-flex; align-items:center; justify-content:center; gap:9px; width:100%; box-sizing:border-box; text-decoration:none;
  font-family:var(--ktv-font-display,inherit); font-weight:700; font-size:15px; padding:14px 20px; border-radius:13px;
  background:var(--ktv-brand-primary,#D98A1E); color:#fff; box-shadow:0 8px 22px rgba(217,138,30,.3); transition:filter .14s,box-shadow .16s,transform .08s }
.ktvsc__cta:hover{ filter:brightness(1.05); box-shadow:0 11px 28px rgba(217,138,30,.4); transform:translateY(-1px); color:#fff }
.ktvsc__note{ font-size:11.5px; color:var(--ktv-text-tertiary,#8a8a8a); line-height:1.5; margin:12px 0 0 }

@media(max-width:720px){ .ktvsc{ padding:22px 18px } .ktvsc__grid{ grid-template-columns:1fr; gap:20px } .ktvsc__stage{ order:-1 } }

/* ==== #28 ktvinfo-css ==== */
/* Stranica: sakrij dupli naslov teme + zbij razmak iznad */
.wp-block-post-title{ display:none !important }
.ktvinfo{ max-width:960px; margin:6px auto 30px; color:var(--ktv-text-primary,#1c1c1c) }
.ktvinfo *{ box-sizing:border-box }
.ktvinfo__hero{ text-align:center; max-width:640px; margin:0 auto 30px }
.ktvinfo__eyebrow{ display:inline-flex; align-items:center; gap:8px; font-family:var(--ktv-font-mono,ui-monospace,monospace); font-size:11px; letter-spacing:.14em; text-transform:uppercase; color:var(--ktv-navy,#16243D) }
.ktvinfo__eyebrow i{ width:16px; height:2px; background:var(--ktv-brand-primary,#D98A1E) }
.ktvinfo__title{ font-family:var(--ktv-font-display,inherit); font-size:clamp(24px,3.4vw,34px); font-weight:800; letter-spacing:-.025em; line-height:1.12; margin:10px 0 10px; color:var(--ktv-navy-deep,#12203a) }
.ktvinfo__sub{ font-size:15px; color:var(--ktv-text-secondary,#5a5a5a); line-height:1.6; margin:0 }
.ktvinfo__grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:16px }
.ktvinfo__card{ background:var(--ktv-bg-elevated,#fff); border:1px solid var(--ktv-border-default,#e7e0d4); border-radius:var(--ktv-radius,18px); padding:22px 22px 20px; box-shadow:0 6px 22px rgba(var(--ktv-shadow-rgb,20,20,20),.06); transition:transform .16s, box-shadow .16s, border-color .16s }
.ktvinfo__card:hover{ transform:translateY(-3px); border-color:var(--ktv-border-strong,#d8cfbe); box-shadow:0 16px 34px -12px rgba(var(--ktv-shadow-rgb,20,20,20),.16) }
.ktvinfo__ic{ display:grid; place-items:center; width:46px; height:46px; border-radius:13px; background:var(--ktv-navy-soft,#eef1f6); color:var(--ktv-navy,#16243D); margin-bottom:14px }
.ktvinfo__card h3{ font-family:var(--ktv-font-display,inherit); font-size:16.5px; font-weight:700; letter-spacing:-.01em; color:var(--ktv-navy-deep,#12203a); margin:0 0 8px; display:flex; align-items:center; gap:8px; flex-wrap:wrap }
.ktvinfo__soon{ font-family:var(--ktv-font-mono,monospace); font-size:9.5px; text-transform:uppercase; letter-spacing:.05em; color:var(--ktv-brand-ink,#3a2606); background:var(--ktv-brand-primary,#D98A1E); padding:3px 8px; border-radius:999px }
.ktvinfo__card p{ font-size:13.5px; color:var(--ktv-text-secondary,#5a5a5a); line-height:1.6; margin:0 }
.ktvinfo__card b{ color:var(--ktv-navy-deep,#12203a); font-weight:700 }
.ktvinfo__contact{ display:flex; align-items:center; justify-content:space-between; gap:20px; flex-wrap:wrap;
  margin-top:20px; padding:22px 26px; border-radius:var(--ktv-radius,18px);
  background:linear-gradient(135deg,#16243D 0%,#1E3A5F 60%,#274a78 100%); box-shadow:0 14px 34px rgba(22,36,61,.26); position:relative; overflow:hidden }
.ktvinfo__contact::before{ content:""; position:absolute; right:-40px; top:-40px; width:180px; height:180px; border-radius:50%; background:radial-gradient(circle,rgba(217,138,30,.30),transparent 68%); pointer-events:none }
.ktvinfo__ctxt{ position:relative }
.ktvinfo__ctxt b{ display:block; font-family:var(--ktv-font-display,inherit); font-size:18px; color:#fff; margin-bottom:4px }
.ktvinfo__ctxt span{ font-size:13px; color:rgba(255,255,255,.72); line-height:1.5 }
.ktvinfo__cbtns{ position:relative; display:flex; gap:9px; flex-wrap:wrap }
.ktvinfo__btn{ display:inline-flex; align-items:center; gap:7px; text-decoration:none; font-family:var(--ktv-font-display,inherit); font-weight:700; font-size:13.5px; padding:11px 15px; border-radius:11px; transition:filter .14s, transform .08s, background .14s }
.ktvinfo__btn:hover{ transform:translateY(-1px) }
.ktvinfo__btn--v{ background:#7360f2; color:#fff } .ktvinfo__btn--v:hover{ filter:brightness(1.08); color:#fff }
.ktvinfo__btn--w{ background:#25d366; color:#0a2e17 } .ktvinfo__btn--w:hover{ filter:brightness(1.05); color:#0a2e17 }
.ktvinfo__btn--m{ background:rgba(255,255,255,.12); color:#fff; border:1px solid rgba(255,255,255,.25) } .ktvinfo__btn--m:hover{ background:rgba(255,255,255,.2); color:#fff }
@media(max-width:820px){ .ktvinfo__grid{ grid-template-columns:1fr 1fr } }
@media(max-width:560px){ .ktvinfo__grid{ grid-template-columns:1fr } .ktvinfo__contact{ flex-direction:column; align-items:flex-start } }

/* ==== #30 ktv-akcije-css ==== */
.ktv-akc{ max-width:var(--ktv-maxw,1200px); margin:0 auto; padding:24px 24px 70px }
.ktv-crumbs{ font-family:var(--ktv-font-mono); font-size:11.5px; color:var(--ktv-text-tertiary); margin-bottom:16px }
.ktv-crumbs a{ color:var(--ktv-navy); text-decoration:none } .ktv-crumbs a:hover{ color:var(--ktv-brand-primary-hover) }
.ktv-crumbs span[aria-hidden]{ margin:0 6px; opacity:.5 }

.ktv-akc-hero{
  position:relative; overflow:hidden; border-radius:20px; margin-bottom:22px; color:var(--ktv-text-inverse,#fff);
  padding:30px 30px 28px; background:radial-gradient(130% 150% at 12% 0%, #22375c, var(--ktv-navy,#16243D) 55%, #0f1a2e);
  border:1px solid rgba(255,255,255,.06);
}
.ktv-akc-hero__in{ position:relative; z-index:2; max-width:70% }
.ktv-akc-hero__eyebrow{ font-family:var(--ktv-font-mono); font-size:11px; letter-spacing:.22em; text-transform:uppercase;
  color:var(--ktv-brand-secondary,#EAA842) }
.ktv-akc-hero__h1{ font-family:var(--ktv-font-display); font-weight:800; letter-spacing:-.035em; margin:8px 0 8px;
  font-size:clamp(28px,4.4vw,44px); line-height:1 }
.ktv-akc-hero__lede{ font-size:15.5px; line-height:1.55; color:#D6DEEC; margin:0 }
.ktv-akc-hero__lede b{ color:#fff; font-weight:700 }
.ktv-akc-hero__pct{ color:var(--ktv-brand-secondary,#EAA842)!important; font-family:var(--ktv-font-mono) }
.ktv-akc-hero__badge{
  position:absolute; right:-14px; bottom:-40px; z-index:1; font-family:var(--ktv-font-display); font-weight:800;
  font-size:220px; line-height:1; color:var(--ktv-brand-primary,#D98A1E); opacity:.14; pointer-events:none;
}

.ktv-akc-chips{ display:flex; flex-wrap:wrap; gap:8px; margin-bottom:22px }
.ktv-akc-chip{ display:inline-flex; align-items:center; gap:7px; text-decoration:none; font-size:13.5px; font-weight:500;
  color:var(--ktv-text-primary,#1e2733); background:var(--ktv-bg-elevated,#fff);
  border:1px solid var(--ktv-border-default,#e7e0d4); padding:8px 13px; border-radius:999px; transition:.15s }
.ktv-akc-chip span{ font-family:var(--ktv-font-mono); font-size:11px; color:var(--ktv-text-tertiary,#8a8577) }
.ktv-akc-chip:hover{ border-color:var(--ktv-brand-primary,#D98A1E); color:var(--ktv-brand-primary-hover) }
.ktv-akc-chip.is-active{ background:var(--ktv-navy,#16243D); border-color:var(--ktv-navy,#16243D); color:#fff }
.ktv-akc-chip.is-active span{ color:rgba(255,255,255,.7) }

.ktv-pag{ display:flex; gap:6px; margin-top:34px; justify-content:center; flex-wrap:wrap; align-items:center }
.ktv-pag a,.ktv-pag .current{ display:grid; place-items:center; min-width:38px; height:38px; padding:0 8px; border-radius:10px;
  border:1px solid var(--ktv-border-default,#e7e0d4); background:var(--ktv-bg-elevated,#fff); color:var(--ktv-text-primary,#1e2733);
  text-decoration:none; font-family:var(--ktv-font-mono); font-size:13px }
.ktv-pag a:hover{ border-color:var(--ktv-brand-primary,#D98A1E); color:var(--ktv-brand-primary) }
.ktv-pag .current{ background:var(--ktv-brand-primary,#D98A1E); color:var(--ktv-brand-ink,#1a1206); border-color:var(--ktv-brand-primary,#D98A1E); font-weight:700 }
.ktv-pag__gap{ color:var(--ktv-text-tertiary,#8a8577); padding:0 2px }

.ktv-akc-empty{ text-align:center; padding:70px 20px; color:var(--ktv-text-secondary) }
.ktv-akc-empty p{ font-family:var(--ktv-font-display); font-size:20px; margin:0 0 16px; color:var(--ktv-text-primary) }

@media(max-width:640px){
  .ktv-akc-hero__in{ max-width:100% } .ktv-akc-hero{ padding:24px 20px }
  .ktv-akc-hero__badge{ font-size:150px; bottom:-26px; right:-8px }
}

/* ==== #22 ktv-cmp-css ==== */
.ktv-cmp-toggle{ display:inline-flex; align-items:center; gap:6px; font-family:var(--ktv-font-mono); font-size:11px;
  color:var(--ktv-navy); background:none; border:0; cursor:pointer; padding:6px 0; margin-top:2px }
.ktv-cmp-toggle:hover{ color:var(--ktv-brand-primary-hover) }
.ktv-cmp-toggle[aria-pressed="true"]{ color:var(--ktv-brand-primary-hover); font-weight:700 }
.ktv-cmp-toggle .box{ width:15px; height:15px; border:1.5px solid var(--ktv-navy-line); border-radius:4px; display:inline-grid; place-items:center; font-size:10px; color:transparent }
.ktv-cmp-toggle[aria-pressed="true"] .box{ background:var(--ktv-brand-primary); border-color:var(--ktv-brand-primary); color:var(--ktv-brand-ink) }

.ktv-cmpbar{ position:fixed; left:0; right:0; bottom:0; z-index:58; background:var(--ktv-navy-deep); color:#E7EDF5;
  box-shadow:0 -8px 30px rgba(0,0,0,.25) }
.ktv-cmpbar__in{ max-width:var(--ktv-maxw); margin:0 auto; padding:12px 24px; display:flex; align-items:center; gap:16px; flex-wrap:wrap }
.ktv-cmpbar__lbl{ font-family:var(--ktv-font-mono); font-size:12.5px; letter-spacing:.05em }
.ktv-cmpbar__n{ color:var(--ktv-brand-secondary); font-weight:700 }
.ktv-cmpbar__thumbs{ display:flex; gap:8px; flex:1; min-width:0 }
.ktv-cmpbar__thumb{ position:relative; width:54px; height:32px; border-radius:5px; border:1px solid rgba(255,255,255,.2);
  background-size:cover; background-position:center }
.ktv-cmpbar__thumb button{ position:absolute; top:-7px; right:-7px; width:17px; height:17px; border-radius:50%; border:0;
  background:#fff; color:var(--ktv-navy-deep); font-size:10px; cursor:pointer; line-height:1 }
.ktv-cmpbar__clear{ background:none; border:0; color:#A6B4C7; font-size:12.5px; cursor:pointer; font-family:var(--ktv-font-mono) }
.ktv-cmpbar__clear:hover{ color:#fff }

.ktv-cmpover{ position:fixed; inset:0; z-index:80; background:var(--ktv-bg-canvas); display:flex; flex-direction:column }
.ktv-cmpover__head{ display:flex; align-items:center; justify-content:space-between; gap:16px; padding:18px 24px;
  border-bottom:1px solid var(--ktv-border-default); max-width:var(--ktv-maxw); margin:0 auto; width:100%; box-sizing:border-box }
.ktv-cmpover__head h2{ font-family:var(--ktv-font-display); font-size:clamp(18px,2.4vw,26px); font-weight:800; letter-spacing:-.03em; margin:0; color:var(--ktv-text-primary) }
.ktv-cmpover__body{ flex:1; overflow:auto; padding:20px 24px; max-width:var(--ktv-maxw); margin:0 auto; width:100%; box-sizing:border-box }
.ktv-cmpleg{ font-family:var(--ktv-font-mono); font-size:11.5px; color:var(--ktv-navy); padding:12px 24px; border-top:1px solid var(--ktv-border-default);
  max-width:var(--ktv-maxw); margin:0 auto; width:100%; box-sizing:border-box; display:flex; align-items:center; gap:9px }

/* Tabela: fiksne uže kolone, centrirana; prva kolona sticky, modeli scrollaju na mobilnom */
.ktv-cmptable{ width:max-content; margin:0 auto; border:1px solid var(--ktv-border-default); border-radius:14px;
  background:var(--ktv-bg-elevated); box-shadow:var(--ktv-shadow-md) }
.ktv-cmprow{ display:grid; grid-template-columns:var(--cols) }
.ktv-cmprow:not(.ktv-cmphead):nth-of-type(even){ background:var(--ktv-bg-warm) }
.ktv-cmpcell{ padding:14px 16px; font-family:var(--ktv-font-mono); font-size:13px; font-weight:600; color:var(--ktv-navy);
  display:flex; align-items:center; gap:6px; border-left:1px solid var(--ktv-border-subtle); border-top:1px solid var(--ktv-border-subtle) }
.ktv-cmprow:first-of-type .ktv-cmpcell{ border-top:0 }
.ktv-cmpcell--lbl{ position:sticky; left:0; z-index:3; border-left:0; border-right:1px solid var(--ktv-border-default);
  background:var(--ktv-bg-tinted); color:var(--ktv-text-secondary); font-family:var(--ktv-font-body); font-weight:500; font-size:12.5px }
.ktv-cmpcell--win{ background:var(--ktv-brand-soft); color:var(--ktv-brand-text); font-weight:800 }
.ktv-cmpcell--win::after{ content:"★"; margin-left:auto; font-size:10px; color:var(--ktv-brand-primary) }

.ktv-cmphead{ background:var(--ktv-navy-soft) }
.ktv-cmphead .ktv-cmpcell{ display:block; padding:16px 16px 18px; border-top:0; border-left:1px solid var(--ktv-navy-line); text-align:left }
.ktv-cmphead .ktv-cmpcell--lbl{ background:var(--ktv-navy-soft); border-right:1px solid var(--ktv-navy-line); z-index:5 }
.ktv-cmp-mini{ width:100%; aspect-ratio:16/9; border-radius:8px; border:3px solid var(--ktv-panel-bezel);
  background-size:cover; background-position:center; margin-bottom:11px; box-shadow:0 10px 22px -12px rgba(var(--ktv-shadow-rgb),.55) }
.ktv-cmp-mini.has-img{ background-size:contain; background-repeat:no-repeat; background-color:#fff; border:1px solid var(--ktv-border-default); box-shadow:0 8px 18px -12px rgba(var(--ktv-shadow-rgb),.4) }
.ktv-cmp-brand{ font-family:var(--ktv-font-mono); font-size:10px; color:var(--ktv-navy); text-transform:uppercase; letter-spacing:.06em }
.ktv-cmp-modelname{ display:block; font-family:var(--ktv-font-display); font-weight:700; font-size:13.5px; line-height:1.22;
  color:var(--ktv-text-primary); text-decoration:none; margin:3px 0 9px; min-height:2.4em }
.ktv-cmp-modelname:hover{ color:var(--ktv-brand-primary-hover) }
.ktv-cmp-hprice{ font-family:var(--ktv-font-mono); font-weight:700; font-size:17px; color:var(--ktv-text-primary) }
.ktv-cmp-hprice.is-sale{ color:var(--ktv-brand-text) }
.ktv-cmp-hrm{ display:inline-block; margin-top:8px; font-family:var(--ktv-font-mono); font-size:10.5px; color:var(--ktv-text-tertiary);
  background:none; border:0; cursor:pointer }
.ktv-cmp-hrm:hover{ color:var(--ktv-error) }
.ktv-vdot{ display:inline-grid; place-items:center; width:15px; height:15px; border-radius:50%; background:var(--ktv-navy); color:#fff; font-size:9px; flex:none }
.ktv-cmpover__empty{ text-align:center; color:var(--ktv-text-secondary); padding:60px 20px }