/* =========================================================================
   Bolkica — design system
   Mirna, prozračna galerija ručnog rada: bijela pozadina, topla tinta,
   zlatno-bež naglasak, tanke crte, ravni rubovi, velike fotografije.
   Imena varijabli ostala su iz osnove (purple = naglasak, plum = tamna,
   teal = svijetli naglasak na tamnom), vrijednosti su Bolkičine.
   ========================================================================= */

:root{
  /* PlanPlus widget trgovine (widget.js čita ove varijable) */
  --planplus-brand:#212121;--planplus-ink:#212121;--planplus-line:#ece6dd;--planplus-radius:2px;
  /* brand */
  --plum:      #2a2521;   /* topla crna — tamne sekcije, podnožje */
  --purple:    #a8875a;   /* zlatna bež — naglasak brenda */
  --purple-2:  #8c6d40;
  --purple-lt: #c9ab7e;
  --indigo:    #3a332d;
  --indigo-2:  #4a423a;
  --teal:      #e8d4ae;   /* svijetla zlatna — naglasak na tamnom */
  --teal-dk:   #a8875a;
  --green:     #6f7a5e;   /* maslinasta */
  --terra:     #c0765a;   /* terakota */

  /* neutrals */
  --cream:     #ffffff;
  --cream-2:   #f7f4ef;   /* pijesak — druga pozadina */
  --white:     #ffffff;
  --ink:       #212121;
  --ink-2:     #555250;
  --ink-3:     #8a8580;
  --line:      rgba(33,33,33,.10);
  --line-2:    rgba(255,255,255,.18);

  /* type */
  --font: "Jost", "Helvetica Neue", Helvetica, Arial, sans-serif;
  --serif: "Cormorant Garamond", "Times New Roman", serif;

  /* geometry — gotovo ravni rubovi */
  --r-sm: 2px;
  --r:    2px;
  --r-lg: 3px;
  --r-xl: 4px;
  --pad:  clamp(20px, 4vw, 64px);
  --maxw: 1320px;

  /* motion */
  --ease: cubic-bezier(.22,.61,.36,1);
  --ease-out: cubic-bezier(.16,1,.3,1);

  --shadow-sm: 0 1px 2px rgba(33,33,33,.04);
  --shadow:    0 18px 40px -28px rgba(33,33,33,.28);
  --shadow-lg: 0 30px 60px -40px rgba(33,33,33,.35);
}

/* ---------- reset ---------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{
  margin:0;
  font-family:var(--font);
  font-size:16px;
  font-weight:400;
  line-height:1.75;
  letter-spacing:.02em;
  color:var(--ink);
  background:var(--cream);
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
img,svg,video{display:block;max-width:100%}
[hidden]{display:none !important}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
input{font:inherit}
ul{margin:0;padding:0;list-style:none}
h1,h2,h3,h4,p{margin:0}
::selection{background:var(--purple);color:#fff}

h1,h2,h3,h4,.display{
  font-weight:400;
  line-height:1.2;
  letter-spacing:.06em;
  text-wrap:balance;
}
h1{font-size:clamp(2rem, 4.2vw, 3.3rem);letter-spacing:.08em}
h2{font-size:clamp(1.45rem, 2.6vw, 2.15rem)}
h3{font-size:clamp(1.02rem, 1.3vw, 1.18rem);letter-spacing:.06em;line-height:1.35}
h1 em,h2 em,h3 em,.display em{font-family:var(--serif);font-style:italic;font-weight:400;letter-spacing:0;text-transform:none}

/* ---------- utilities ---------- */
.wrap{width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:var(--pad)}
.section{padding-block:clamp(64px, 8vw, 132px)}
.section--tight{padding-block:clamp(48px, 5vw, 80px)}
.muted{color:var(--ink-2)}
.lead{font-size:clamp(1.02rem,1.25vw,1.18rem);line-height:1.65;color:var(--ink-2)}

.eyebrow{
  display:inline-flex;align-items:center;gap:.6em;
  font-size:.72rem;font-weight:500;letter-spacing:.22em;text-transform:uppercase;
  color:var(--purple);
}
.eyebrow::before{
  content:"";width:26px;height:2px;border-radius:2px;background:currentColor;opacity:.55;
}
.on-dark .eyebrow{color:var(--teal)}

.sec-head{
  display:flex;align-items:flex-end;justify-content:space-between;gap:32px;
  margin-bottom:clamp(28px,3.4vw,52px);flex-wrap:wrap;
}
.sec-head__t{max-width:min(960px,100%)}
.sec-head h2{text-wrap:balance}
.sec-head h2{margin-top:14px}
.sec-head p{margin-top:16px;max-width:52ch}

/* buttons */
.btn{
  --bg:var(--purple); --fg:#fff;
  display:inline-flex;align-items:center;justify-content:center;gap:.6em;
  padding:15px 28px;border-radius:999px;
  background:var(--bg);color:var(--fg);
  font-weight:500;font-size:.95rem;letter-spacing:.02em;
  border:1px solid transparent;
  transition:transform .35s var(--ease-out), box-shadow .35s var(--ease-out), background .25s, color .25s, border-color .25s;
  will-change:transform;
}
.btn:hover{transform:translateY(-3px);box-shadow:0 16px 30px -14px rgba(168,135,90,.75)}
.btn:active{transform:translateY(-1px)}
.btn svg{width:17px;height:17px;flex:none;transition:transform .35s var(--ease-out)}
.btn:hover svg{transform:translateX(4px)}
.btn--ghost{--bg:transparent;--fg:var(--ink);border-color:var(--line)}
.btn--ghost:hover{--bg:var(--ink);--fg:#fff;box-shadow:none}
.btn--light{--bg:#fff;--fg:var(--plum)}
.btn--light:hover{box-shadow:0 16px 30px -16px rgba(0,0,0,.6)}
.btn--outline-lt{--bg:transparent;--fg:#fff;border-color:rgba(255,255,255,.32)}
.btn--outline-lt:hover{--bg:#fff;--fg:var(--plum);box-shadow:none}
.btn--teal{--bg:var(--teal);--fg:var(--plum)}
.btn--sm{padding:11px 20px;font-size:.86rem}

/* pill / chip */
.chip{
  display:inline-flex;align-items:center;gap:.5em;
  padding:7px 14px;border-radius:999px;
  font-size:.72rem;font-weight:500;letter-spacing:.11em;text-transform:uppercase;
  background:rgba(168,135,90,.09);color:var(--purple);
}
.chip--teal{background:rgba(232,212,174,.2);color:var(--teal-dk)}
.chip--glass{background:rgba(255,255,255,.16);color:#fff;backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.22)}

/* meta line */
.meta{
  display:flex;align-items:center;gap:10px;flex-wrap:wrap;
  font-size:.78rem;font-weight:500;letter-spacing:.04em;color:var(--ink-3);
}
.meta .dot{width:3px;height:3px;border-radius:50%;background:currentColor;opacity:.6}

/* link with arrow */
.arrow-link{
  display:inline-flex;align-items:center;gap:.55em;
  font-weight:500;font-size:.92rem;color:var(--purple);
  border-bottom:1.5px solid rgba(168,135,90,.28);padding-bottom:3px;
  transition:gap .3s var(--ease-out),border-color .3s;
}
.arrow-link:hover{gap:.95em;border-color:var(--purple)}
.on-dark .arrow-link{color:var(--teal);border-color:rgba(232,212,174,.35)}

/* ---------- reveal on scroll ---------- */
.reveal{opacity:0;transform:translateY(28px);transition:opacity .9s var(--ease-out), transform .9s var(--ease-out)}
.reveal.is-in{opacity:1;transform:none}
.reveal[data-d="1"]{transition-delay:.08s}
.reveal[data-d="2"]{transition-delay:.16s}
.reveal[data-d="3"]{transition-delay:.24s}
.reveal[data-d="4"]{transition-delay:.32s}
.reveal[data-d="5"]{transition-delay:.4s}

/* =========================================================================
   TOPBAR
   ========================================================================= */
.topbar{
  background:var(--plum);color:rgba(255,255,255,.82);
  font-size:.78rem;font-weight:500;letter-spacing:.02em;
}
.topbar__in{display:flex;align-items:center;justify-content:space-between;gap:20px;height:40px}
.topbar__msg{display:flex;align-items:center;gap:9px}
.topbar__msg svg{width:15px;height:15px;color:var(--teal)}
.topbar__right{display:flex;align-items:center;gap:22px}
.topbar a:hover{color:#fff}
.topbar__soc{display:flex;gap:14px}
.topbar__soc svg{width:15px;height:15px}
@media (max-width:760px){ .topbar__right{display:none} .topbar__in{justify-content:center} }

/* =========================================================================
   HEADER
   ========================================================================= */
.header{
  position:sticky;top:0;z-index:80;
  background:#ffffff;
  border-bottom:1px solid transparent;
  transition:background .4s var(--ease), border-color .4s, box-shadow .4s;
}
.header.is-stuck{border-color:rgba(42,37,33,.12);box-shadow:0 10px 30px -24px rgba(42,37,33,.6)}
.header__in{display:flex;align-items:center;justify-content:space-between;gap:24px;height:78px;transition:height .4s var(--ease)}
.header.is-stuck .header__in{height:66px}

.logo{display:flex;align-items:center;gap:11px;font-weight:500;font-size:1.32rem;letter-spacing:.02em}
.logo__mark{width:38px;height:38px;flex:none;border-radius:12px;display:grid;place-items:center;
  background:linear-gradient(140deg,var(--purple),var(--plum) 70%);box-shadow:0 8px 20px -12px rgba(168,135,90,.9)}
.logo__mark svg{width:21px;height:21px;color:var(--teal)}
.logo small{display:block;font-size:.56rem;font-weight:500;letter-spacing:.28em;color:var(--ink-3);text-transform:uppercase;margin-top:-4px}
@media (max-width:480px){.logo small{letter-spacing:.16em;white-space:nowrap}}

.nav{display:flex;align-items:center;gap:4px}
.nav a{
  position:relative;padding:10px 15px;border-radius:999px;
  font-size:.93rem;font-weight:500;letter-spacing:.02em;color:#fff;
  transition:color .25s,background .25s;
}
.nav a:hover{color:#fff;background:rgba(255,255,255,.16)}
.nav a.is-active{color:#fff}
.nav a.is-active::after{
  content:"";position:absolute;left:15px;right:15px;bottom:4px;height:2px;border-radius:2px;background:#fff;
}

.header__act{display:flex;align-items:center;gap:10px}
.icon-btn{
  position:relative;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;
  border:1px solid var(--line);color:var(--ink);transition:background .25s,color .25s,border-color .25s;
}
.icon-btn:hover{background:var(--ink);color:#fff;border-color:var(--ink)}
.icon-btn svg{width:19px;height:19px}
.icon-btn--cart{background:none;cursor:pointer;font:inherit}
.cart-badge{
  position:absolute;top:-5px;right:-5px;min-width:19px;height:19px;padding:0 5px;border-radius:999px;
  background:var(--purple);color:#fff;font-size:11px;font-weight:500;display:grid;place-items:center;
  line-height:1;border:2px solid #fff;
}
.cart-badge[hidden]{display:none}
.icon-btn__badge{
  position:absolute;top:-3px;right:-3px;min-width:19px;height:19px;padding:0 5px;border-radius:999px;
  background:var(--teal);color:var(--plum);font-size:.66rem;font-weight:500;display:grid;place-items:center;
  border:2px solid var(--cream);
}
.burger{display:none}
@media (max-width:1080px){
  .nav{display:none}
  .burger{display:grid}
  .header__act .btn{display:none}
}

/* mobile menu */
.mmenu{
  position:fixed;inset:0;z-index:90;background:var(--plum);color:#fff;
  padding:26px var(--pad) 40px;display:flex;flex-direction:column;
  opacity:0;visibility:hidden;transform:translateY(-14px);
  transition:opacity .4s var(--ease),transform .5s var(--ease-out),visibility .4s;
}
.mmenu.is-open{opacity:1;visibility:visible;transform:none}
.mmenu__top{display:flex;align-items:center;justify-content:space-between;margin-bottom:36px}
.mmenu__top .logo{color:#fff}
.mmenu__top .logo small{color:rgba(255,255,255,.5)}
.mmenu__top .icon-btn{border-color:var(--line-2);color:#fff}
.mmenu__top .icon-btn:hover{background:#fff;color:var(--plum)}
.mmenu nav{display:flex;flex-direction:column;gap:2px}
.mmenu nav a{
  font-size:clamp(1.9rem,8vw,2.6rem);font-weight:500;letter-spacing:.02em;
  padding:10px 0;border-bottom:1px solid rgba(255,255,255,.1);
  display:flex;align-items:center;justify-content:space-between;
}
.mmenu nav a span{font-size:.7rem;font-weight:500;letter-spacing:.2em;color:var(--teal);opacity:.8}
.mmenu__foot{margin-top:auto;padding-top:32px;display:flex;flex-direction:column;gap:18px}

/* =========================================================================
   HERO CAROUSEL
   ========================================================================= */
.hero{
  position:relative;
  height:clamp(560px, 88vh, 940px);
  min-height:560px;
  color:#fff;
  overflow:hidden;
  background:var(--plum);
  border-bottom-left-radius:var(--r-xl);
  border-bottom-right-radius:var(--r-xl);
}
.hero__slides{position:absolute;inset:0}
.hero__slide{
  position:absolute;inset:0;
  opacity:0;visibility:hidden;
  transition:opacity 1s var(--ease), visibility 1s;
}
.hero__slide.is-active{opacity:1;visibility:visible}
.hero__media{position:absolute;inset:0;overflow:hidden}
.hero__media img{
  width:100%;height:100%;object-fit:cover;
  transform:scale(1.12);
  transition:transform 7s linear;
}
.hero__slide.is-active .hero__media img{transform:scale(1)}
.hero__media::after{
  content:"";position:absolute;inset:0;
  background:
    linear-gradient(to right, rgba(42,37,33,.92) 0%, rgba(42,37,33,.7) 38%, rgba(42,37,33,.15) 72%, rgba(42,37,33,.45) 100%),
    linear-gradient(to top, rgba(42,37,33,.85) 0%, rgba(42,37,33,0) 55%);
}
.hero__slide--bez-gradijenta .hero__media::after{display:none}

.hero__in{
  position:relative;z-index:2;height:100%;
  display:flex;flex-direction:column;justify-content:flex-end;
  padding-bottom:calc(96px + clamp(34px,5vh,68px));
}
.hero__content{max-width:760px}
.hero__slide-body{
  position:absolute;bottom:0;left:0;width:min(760px,100%);
  opacity:0;transform:translateY(26px);pointer-events:none;
  transition:opacity .8s var(--ease-out) .15s, transform .9s var(--ease-out) .15s;
}
.hero__slide-body.is-active{opacity:1;transform:none;pointer-events:auto;position:relative}
.hero__meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:20px}
.hero__meta .m{font-size:.78rem;font-weight:500;letter-spacing:.05em;color:rgba(255,255,255,.7)}
.hero h1{margin-bottom:20px;text-shadow:0 6px 34px rgba(0,0,0,.28)}
.hero p{font-size:clamp(1rem,1.3vw,1.16rem);line-height:1.6;color:rgba(255,255,255,.8);max-width:56ch;margin-bottom:32px}
.hero__cta{display:flex;gap:12px;flex-wrap:wrap}

/* hero controls */
.hero__bar{
  position:absolute;left:0;right:0;bottom:0;z-index:3;
  border-top:1px solid rgba(255,255,255,.14);
  background:linear-gradient(to top, rgba(42,37,33,.5), transparent);
  backdrop-filter:blur(6px);
}
.hero__bar-in{display:flex;align-items:center;justify-content:space-between;gap:24px;height:96px}
.hero__nav{display:flex;align-items:center;gap:20px}
.hero__count{font-size:.82rem;font-weight:500;letter-spacing:.1em;color:rgba(255,255,255,.65)}
.hero__count b{color:#fff;font-size:1.05rem}
.hero__arrows{display:flex;gap:8px}
.hero__arrows button{
  width:46px;height:46px;border-radius:50%;display:grid;place-items:center;
  border:1px solid rgba(255,255,255,.28);color:#fff;
  transition:background .25s,color .25s,transform .25s var(--ease-out);
}
.hero__arrows button:hover{background:#fff;color:var(--plum);transform:scale(1.06)}
.hero__arrows svg{width:18px;height:18px}

.hero__thumbs{display:flex;gap:10px}
.hero__thumb{
  position:relative;width:118px;height:56px;border-radius:12px;overflow:hidden;
  opacity:.5;transition:opacity .35s,transform .35s var(--ease-out);
  border:1px solid rgba(255,255,255,.2);
}
.hero__thumb img{width:100%;height:100%;object-fit:cover}
.hero__thumb:hover{opacity:.85;transform:translateY(-3px)}
.hero__thumb.is-active{opacity:1}
.hero__thumb .prog{position:absolute;left:0;bottom:0;height:3px;width:0;background:var(--teal)}
.hero__thumb.is-active .prog{animation:heroProg var(--hero-dur,7s) linear forwards}
@keyframes heroProg{from{width:0}to{width:100%}}
.hero.is-paused .hero__thumb.is-active .prog{animation-play-state:paused}

.hero__dots{display:none;gap:8px}
.hero__dots button{width:8px;height:8px;border-radius:999px;background:rgba(255,255,255,.35);transition:width .35s var(--ease-out),background .3s}
.hero__dots button.is-active{width:30px;background:var(--teal)}

@media (max-width:900px){
  .hero{border-radius:0 0 26px 26px}
  .hero__in{padding-bottom:calc(72px + 30px)}
  .hero__bar-in{height:72px}
  .hero__thumbs{display:none}
  .hero__dots{display:flex}
}
@media (max-width:560px){
  .hero__arrows{display:none}
  .hero__bar-in{justify-content:center}
}

/* =========================================================================
   MARQUEE
   ========================================================================= */
.marquee{
  background:var(--purple);color:#fff;overflow:hidden;
  padding-block:16px;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);
  mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);
}
.marquee__track{display:flex;width:max-content;animation:marquee 32s linear infinite}
.marquee:hover .marquee__track{animation-play-state:paused}
.marquee__group{display:flex;align-items:center;gap:44px;padding-right:44px}
.marquee span{
  display:inline-flex;align-items:center;gap:14px;white-space:nowrap;
  font-size:clamp(.85rem,1.5vw,1.05rem);font-weight:500;letter-spacing:.12em;text-transform:uppercase;
}
.marquee span::after{content:"";width:7px;height:7px;border-radius:50%;background:var(--teal);flex:none}
@keyframes marquee{to{transform:translateX(-50%)}}

/* =========================================================================
   RAIL (uske kartice u nizu)
   ========================================================================= */
.rail-wrap{position:relative}
.rail{
  display:grid;grid-auto-flow:column;
  grid-auto-columns:clamp(220px, 21vw, 272px);
  gap:20px;
  overflow-x:auto;overflow-y:clip;
  scroll-snap-type:x mandatory;
  scroll-padding-left:var(--pad);
  padding:6px var(--pad) 30px;
  margin-inline:calc(var(--pad) * -1);
  scrollbar-width:none;
}
.rail::-webkit-scrollbar{display:none}
.rail > *{scroll-snap-align:start}

.rail-nav{display:flex;gap:8px}
.rail-nav[hidden]{display:none}
.rail-nav button{
  width:44px;height:44px;border-radius:50%;display:grid;place-items:center;
  border:1px solid var(--line);color:var(--ink);
  transition:background .25s,color .25s,border-color .25s,transform .25s var(--ease-out),opacity .25s;
}
.rail-nav button:hover{background:var(--ink);color:#fff;border-color:var(--ink);transform:scale(1.05)}
.rail-nav button[disabled]{opacity:.3;pointer-events:none}
.rail-nav svg{width:17px;height:17px}
.on-dark .rail-nav button{border-color:var(--line-2);color:#fff}
.on-dark .rail-nav button:hover{background:#fff;color:var(--plum)}

/* narrow post card */
.ncard{display:block;position:relative;isolation:isolate}
.ncard__media{
  position:relative;aspect-ratio:3/4.1;border-radius:var(--r);overflow:hidden;
  background:var(--indigo);box-shadow:var(--shadow-sm);
}
.ncard__media img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease-out)}
.ncard:hover .ncard__media img{transform:scale(1.07)}
.ncard__media::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(to top, rgba(42,37,33,.78) 0%, rgba(42,37,33,.08) 52%);
  opacity:.9;
}
.ncard__num{
  position:absolute;top:14px;left:14px;z-index:2;
  font-size:.72rem;font-weight:500;letter-spacing:.12em;color:rgba(255,255,255,.85);
}
.ncard__chip{position:absolute;top:12px;right:12px;z-index:2}
.ncard__body{position:absolute;left:16px;right:16px;bottom:16px;z-index:2;color:#fff}
.ncard__body h3{font-size:1.02rem;line-height:1.22;margin-bottom:8px}
.ncard__body .meta{color:rgba(255,255,255,.65);font-size:.72rem}
.ncard__read{
  display:inline-flex;align-items:center;gap:6px;margin-top:10px;
  font-size:.76rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--teal);
  opacity:0;transform:translateY(6px);transition:opacity .4s var(--ease-out),transform .4s var(--ease-out);
}
.ncard:hover .ncard__read{opacity:1;transform:none}
.ncard__read svg{width:13px;height:13px}

/* =========================================================================
   USP
   ========================================================================= */
/* broj stupaca dolazi iz sekcije kao --stupaca (ne kao inline grid-template-columns), da ga mobilna pravila niže mogu promijeniti */
.usp{display:grid;grid-template-columns:repeat(var(--stupaca,4),minmax(0,1fr));gap:1px;background:var(--line);border-radius:var(--r-lg);overflow:hidden;border:1px solid var(--line)}
.usp__i{background:var(--cream);padding:34px 28px;transition:background .35s}
.usp__i:hover{background:var(--white)}
.usp__ico{
  width:48px;height:48px;border-radius:14px;display:grid;place-items:center;margin-bottom:18px;
  background:rgba(168,135,90,.09);color:var(--purple);
}
.usp__ico svg{width:23px;height:23px}
.usp__i:nth-child(2) .usp__ico{background:rgba(232,212,174,.2);color:var(--teal-dk)}
.usp__i:nth-child(3) .usp__ico{background:rgba(111,122,94,.13);color:var(--green)}
.usp__i:nth-child(4) .usp__ico{background:rgba(58,51,45,.1);color:var(--indigo)}
.usp__i h3{font-size:1.02rem;margin-bottom:8px}
.usp__i p{font-size:.88rem;line-height:1.55;color:var(--ink-2)}
@media (max-width:900px){.usp{grid-template-columns:repeat(2,1fr)}}
@media (max-width:520px){.usp{grid-template-columns:1fr}}

/* =========================================================================
   ZAŠTO AÇAÍ  (split + stats)
   ========================================================================= */
.why{background:var(--white)}
.why__grid{display:grid;grid-template-columns:.95fr 1.1fr;gap:clamp(32px,5vw,80px);align-items:start}
.why__left{position:sticky;top:110px}
.why__media{
  position:relative;border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow);
}
.why__media img{width:100%;aspect-ratio:16/10;object-fit:cover}
.why__badge{
  position:absolute;right:18px;bottom:18px;
  background:rgba(255,255,255,.92);backdrop-filter:blur(10px);
  border-radius:var(--r);padding:16px 20px;box-shadow:var(--shadow-sm);
}
.why__badge b{display:block;font-size:1.6rem;font-weight:500;letter-spacing:.02em;color:var(--purple);line-height:1}
.why__badge span{font-size:.74rem;font-weight:500;color:var(--ink-2)}

.bcards{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:34px}
.bcard{
  border:1px solid var(--line);border-radius:var(--r);padding:26px 24px;background:var(--cream);
  transition:transform .45s var(--ease-out),box-shadow .45s var(--ease-out),border-color .3s;
}
.bcard:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:transparent}
.bcard__n{font-size:.72rem;font-weight:500;letter-spacing:.16em;color:var(--purple-lt);margin-bottom:14px}
.bcard h3{font-size:1.08rem;margin-bottom:9px}
.bcard p{font-size:.9rem;line-height:1.6;color:var(--ink-2)}

.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:36px;padding-top:30px;border-top:1px solid var(--line)}
.stat b{display:block;font-size:clamp(1.9rem,3.4vw,2.7rem);font-weight:500;letter-spacing:.02em;line-height:1;
  background:linear-gradient(120deg,var(--purple),var(--teal-dk));-webkit-background-clip:text;background-clip:text;color:transparent}
.stat span{display:block;margin-top:8px;font-size:.8rem;font-weight:500;color:var(--ink-3);letter-spacing:.02em}
@media (max-width:960px){
  .why__grid{grid-template-columns:1fr}
  .why__left{position:static}
}
@media (max-width:560px){.bcards{grid-template-columns:1fr}}

/* =========================================================================
   SHOP TEASER (dark)
   ========================================================================= */
.shop{
  background:
    radial-gradient(900px 600px at 12% 0%, rgba(168,135,90,.55), transparent 65%),
    radial-gradient(700px 520px at 92% 100%, rgba(232,212,174,.24), transparent 60%),
    var(--indigo);
  color:#fff;position:relative;overflow:hidden;
}
.shop .lead{color:rgba(255,255,255,.72)}
.shop .sec-head h2{color:#fff}
/* kartice proizvoda crta widget s webshopa (.pps-card) — raspored izloga je uz .widget-shop--izlog */

/* =========================================================================
   BLOG GRID
   ========================================================================= */
.filters{display:flex;gap:8px;flex-wrap:wrap}
.filters button{
  padding:9px 18px;border-radius:999px;border:1px solid var(--line);
  font-size:.85rem;font-weight:500;color:var(--ink-2);
  transition:background .25s,color .25s,border-color .25s;
}
.filters button:hover{border-color:var(--purple);color:var(--purple)}
.filters button.is-active{background:var(--purple);border-color:var(--purple);color:#fff}

.bloggrid{display:grid;grid-template-columns:1.25fr 1fr;gap:26px;margin-top:8px}
.bloggrid__side{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-content:start}
@media (max-width:1000px){
  .bloggrid{grid-template-columns:1fr}
}
@media (max-width:620px){.bloggrid__side{grid-template-columns:1fr}}

.pcard-lg{
  position:relative;border-radius:var(--r-lg);overflow:hidden;display:block;min-height:440px;
  background:var(--plum);color:#fff;box-shadow:var(--shadow);
}
.pcard-lg img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .9s var(--ease-out)}
.pcard-lg:hover img{transform:scale(1.05)}
.pcard-lg::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(42,37,33,.9) 8%,rgba(42,37,33,.15) 62%)}
.pcard-lg__body{position:relative;z-index:2;height:100%;display:flex;flex-direction:column;justify-content:flex-end;padding:clamp(24px,3vw,38px)}
.pcard-lg h3{font-size:clamp(1.4rem,2.4vw,2rem);margin:16px 0 12px;letter-spacing:.02em}
.pcard-lg p{font-size:.95rem;color:rgba(255,255,255,.75);max-width:46ch;margin-bottom:18px}
.pcard-lg .meta{color:rgba(255,255,255,.6)}

/* small blog card */
.scard{display:block}
.scard__media{position:relative;border-radius:var(--r);overflow:hidden;aspect-ratio:4/3;background:var(--indigo)}
.scard__media img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease-out)}
.scard:hover .scard__media img{transform:scale(1.06)}
.scard__chip{position:absolute;top:12px;left:12px;background:rgba(255,255,255,.9);color:var(--purple);backdrop-filter:blur(6px)}
.scard h3{margin:16px 0 8px;font-size:1.08rem;transition:color .25s}
.scard:hover h3{color:var(--purple)}
.scard p{font-size:.9rem;line-height:1.6;color:var(--ink-2);margin-bottom:12px}

/* =========================================================================
   RECIPES (dark rail)
   ========================================================================= */
.recipes{background:var(--plum);color:#fff}
.recipes .lead{color:rgba(255,255,255,.7)}
.recipes h2{color:#fff}
.rcard__media{aspect-ratio:3/3.9}
.rcard .ncard__body h3{font-size:1.06rem}
.rtime{
  position:absolute;bottom:14px;right:14px;z-index:2;
  font-size:.7rem;font-weight:500;letter-spacing:.08em;color:#fff;
  background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.22);
  padding:5px 10px;border-radius:999px;backdrop-filter:blur(6px);
}

/* =========================================================================
   NEWSLETTER
   ========================================================================= */
.news{padding-block:clamp(48px,6vw,80px)}
.news__box{
  position:relative;overflow:hidden;border-radius:var(--r-xl);
  padding:clamp(34px,5vw,66px);
  background:linear-gradient(125deg,var(--purple) 0%, #6e5638 45%, var(--indigo) 100%);
  color:#fff;
  display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(26px,4vw,60px);align-items:center;
  box-shadow:var(--shadow-lg);
}
.news__box::before{
  content:"";position:absolute;width:520px;height:520px;border-radius:50%;
  background:radial-gradient(circle,rgba(232,212,174,.5),transparent 62%);
  right:-140px;top:-180px;pointer-events:none;
}
.news__box::after{
  content:"";position:absolute;width:360px;height:360px;border-radius:50%;
  background:radial-gradient(circle,rgba(201,171,126,.55),transparent 65%);
  left:-120px;bottom:-160px;pointer-events:none;
}
.news__t{position:relative;z-index:2}
.news__t h2{font-size:clamp(1.75rem,3.2vw,2.7rem);margin:14px 0 14px}
.news__t p{color:rgba(255,255,255,.76);max-width:44ch}
.news__form{position:relative;z-index:2}
.field{display:flex;gap:10px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.24);
  border-radius:999px;padding:7px 7px 7px 22px;backdrop-filter:blur(8px);transition:border-color .3s,background .3s}
.field:focus-within{border-color:var(--teal);background:rgba(255,255,255,.18)}
.field input{flex:1;min-width:0;border:0;background:none;color:#fff;outline:none;font-size:.95rem}
.field input::placeholder{color:rgba(255,255,255,.55)}
.news__form small{display:block;margin-top:14px;font-size:.78rem;color:rgba(255,255,255,.55)}
.news__form small.news__greska{color:#ffb4b4;font-weight:500}
.news__form .field.is-greska{border-color:#ffb4b4}
.news__form .kc-rc{font-size:.72rem;line-height:1.5;margin-top:10px;color:rgba(255,255,255,.45)}
.news__form .kc-rc a{color:rgba(255,255,255,.7);text-decoration:underline}
.news__ok{display:flex;align-items:center;gap:14px;font-weight:500;font-size:1.05rem}
.news__ok svg{width:34px;height:34px;flex:none;color:var(--teal)}
/* pozadinska slika umjesto gradijenta */
.news__box--slika{background:var(--indigo)}
.news__box--slika::before,.news__box--slika::after{display:none}
.news__media{position:absolute;inset:0;z-index:0;pointer-events:none}
.news__media img{width:100%;height:100%;object-fit:cover;display:block}
.news__veo{position:absolute;inset:0}
.news__veo--lagano{background:linear-gradient(90deg,rgba(42,37,33,.45),rgba(42,37,33,.12))}
.news__veo--srednje{background:linear-gradient(90deg,rgba(42,37,33,.68),rgba(42,37,33,.3))}
.news__veo--jako{background:linear-gradient(90deg,rgba(42,37,33,.84),rgba(42,37,33,.55))}
@media (max-width:860px){.news__box{grid-template-columns:minmax(0,1fr)}}
/* polje e-maila ima vlastitu širinu (size=20) pa bi bez min-width:0 raširilo stupac izvan okvira */
.news__box>*{min-width:0}
@media (max-width:480px){.news__box{padding:30px 22px}.field{padding-left:18px}.field .btn{padding-inline:18px}}

/* =========================================================================
   INSTAGRAM
   ========================================================================= */
.iggrid{display:grid;grid-template-columns:repeat(var(--stupaca,6),minmax(0,1fr));gap:12px}
.iggrid a,.iggrid>span{position:relative;display:block;border-radius:var(--r-sm);overflow:hidden;aspect-ratio:1;background:var(--indigo)}
.iggrid--portret a,.iggrid--portret>span{aspect-ratio:3/4}
.iggrid img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease-out)}
.iggrid a:hover img{transform:scale(1.09)}
.iggrid a::after{
  content:"";position:absolute;inset:0;background:rgba(168,135,90,.55);
  opacity:0;transition:opacity .35s;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='1.8' stroke-linecap='round'%3E%3Crect x='2' y='2' width='20' height='20' rx='5'/%3E%3Ccircle cx='12' cy='12' r='4'/%3E%3Ccircle cx='17.5' cy='6.5' r='1'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:center;background-size:26px;
}
.iggrid a:hover::after{opacity:1}
@media (max-width:860px){.iggrid{grid-template-columns:repeat(min(var(--stupaca,6),3),minmax(0,1fr));gap:10px}}

/* =========================================================================
   FOOTER
   ========================================================================= */
.footer{background:var(--plum);color:rgba(255,255,255,.66);padding-top:clamp(56px,7vw,96px)}
.footer__grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.2fr;gap:clamp(28px,4vw,60px);padding-bottom:56px}
.footer .logo{color:#fff;margin-bottom:20px}
.footer .logo small{color:rgba(255,255,255,.45)}
.footer p{font-size:.9rem;line-height:1.65;max-width:34ch}
.footer h4{color:#fff;font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;margin-bottom:20px;font-weight:500}
.footer li+li{margin-top:11px}
.footer li a{font-size:.92rem;transition:color .25s,padding-left .25s}
.footer li a:hover{color:#fff;padding-left:5px}
.footer__soc{display:flex;gap:10px;margin-top:24px}
.footer__soc a{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--line-2);color:#fff;transition:background .25s,color .25s}
.footer__soc a:hover{background:var(--teal);color:var(--plum);border-color:var(--teal)}
.footer__soc svg{width:17px;height:17px}
.footer__contact li{display:flex;gap:11px;align-items:flex-start;font-size:.92rem}
.footer__contact svg{width:17px;height:17px;color:var(--teal);flex:none;margin-top:4px}
.footer__bot{
  border-top:1px solid rgba(255,255,255,.1);padding-block:26px;
  display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;
  font-size:.82rem;
}
.footer__bot nav{display:flex;gap:22px}
@media (max-width:960px){.footer__grid{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.footer__grid{grid-template-columns:1fr}}

/* to top */
.totop{
  position:fixed;right:22px;bottom:22px;z-index:70;
  width:48px;height:48px;border-radius:50%;display:grid;place-items:center;
  background:var(--purple);color:#fff;box-shadow:var(--shadow);
  opacity:0;visibility:hidden;transform:translateY(14px);
  transition:opacity .35s,transform .45s var(--ease-out),visibility .35s,background .25s;
}
.totop.is-in{opacity:1;visibility:visible;transform:none}
.totop:hover{background:var(--plum)}
.totop svg{width:19px;height:19px}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
  .reveal{opacity:1;transform:none}
}

/* =========================================================================
   CMS pomoćne klase — pozadine sekcija (biraju se u adminu)
   ========================================================================= */
.poz-bijela{background:var(--white)}
.poz-sljiva{background:var(--plum)}
.poz-indigo{
  background:
    radial-gradient(900px 600px at 12% 0%, rgba(168,135,90,.55), transparent 65%),
    radial-gradient(700px 520px at 92% 100%, rgba(232,212,174,.24), transparent 60%),
    var(--indigo);
}
.poz-gradijent{background:linear-gradient(125deg,var(--purple) 0%, #6e5638 45%, var(--indigo) 100%)}

.on-dark{color:#fff}
.on-dark h1,.on-dark h2,.on-dark h3,.on-dark h4{color:#fff}
.on-dark .lead,.on-dark p{color:rgba(255,255,255,.72)}
.on-dark .meta{color:rgba(255,255,255,.6)}
.on-dark .filters button{border-color:var(--line-2);color:rgba(255,255,255,.75)}
.on-dark .filters button.is-active{background:#fff;border-color:#fff;color:var(--plum)}
.on-dark .btn--ghost{--fg:#fff;border-color:var(--line-2)}
.on-dark .btn--ghost:hover{--bg:#fff;--fg:var(--plum)}
.on-dark .usp{border-color:var(--line-2);background:var(--line-2)}
.on-dark .usp__i{background:transparent}

/* rezerva kad slika nije postavljena */
.media-fallback{
  background:linear-gradient(135deg,var(--plum),var(--purple) 55%,var(--teal));
  width:100%;height:100%;
}

/* oznaka skrivene sekcije — vidljiva samo u CMS uređivanju */
.cms-skriveno{
  margin:10px auto;max-width:var(--maxw);
  padding:14px 20px;border:1px dashed var(--purple-lt);border-radius:var(--r);
  background:rgba(168,135,90,.06);color:var(--purple);
  font-size:.85rem;font-weight:500;
}

/* članak (blog detalj) */
.clanak{max-width:760px;margin-inline:auto}
.clanak__hero{position:relative;border-radius:var(--r-lg);overflow:hidden;margin-bottom:36px;aspect-ratio:16/9;background:var(--plum)}
.clanak__hero img{width:100%;height:100%;object-fit:cover}
.clanak__tijelo{font-size:1.07rem;line-height:1.75;color:var(--ink-2)}
.clanak__tijelo h2{font-size:clamp(1.5rem,2.6vw,2rem);margin:44px 0 16px;color:var(--ink)}
.clanak__tijelo h3{margin:32px 0 12px;color:var(--ink)}
.clanak__tijelo p{margin-bottom:20px}
.clanak__tijelo ul,.clanak__tijelo ol{margin:0 0 22px 22px;list-style:revert}
.clanak__tijelo li{margin-bottom:8px}
.clanak__tijelo img{border-radius:var(--r);margin:28px 0}
.clanak__tijelo blockquote{
  margin:32px 0;padding:20px 26px;border-left:3px solid var(--purple);
  background:rgba(168,135,90,.05);border-radius:0 var(--r) var(--r) 0;
  font-size:1.1rem;font-style:italic;color:var(--ink);
}
.clanak__tijelo a{color:var(--purple);text-decoration:underline;text-underline-offset:3px}
.clanak__tijelo hr{border:0;border-top:1px solid var(--line);margin:40px 0}
.clanak__tijelo ol li::marker{font-weight:500;color:var(--purple)}

/* mreža članaka na /blog/ */
.arhiva{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
@media (max-width:980px){.arhiva{grid-template-columns:repeat(2,1fr)}}
@media (max-width:620px){.arhiva{grid-template-columns:1fr}}
.paginacija{display:flex;gap:8px;justify-content:center;margin-top:52px}
.paginacija a,.paginacija span{
  min-width:42px;height:42px;padding:0 14px;border-radius:999px;
  display:inline-flex;align-items:center;justify-content:center;
  border:1px solid var(--line);font-size:.9rem;font-weight:500;
}
.paginacija .is-active{background:var(--purple);border-color:var(--purple);color:#fff}

/* zaglavlje unutarnjih stranica */
.pagehead{padding:clamp(40px,6vw,80px) 0 clamp(28px,4vw,44px)}
.pagehead h1{font-size:clamp(2.1rem,4.6vw,3.4rem);margin:16px 0 14px}
.krumb{font-size:.82rem;font-weight:500;color:var(--ink-3);display:flex;gap:8px;align-items:center}
.krumb a:hover{color:var(--purple)}

/* mreža umjesto trake */
.rail--mreza{
  display:grid;grid-auto-flow:row;
  grid-template-columns:repeat(auto-fill,minmax(220px,1fr));
  overflow:visible;margin-inline:0;padding-inline:0;
}

/* varijante visine heroa (biraju se u adminu) */
.hero--puna{height:100vh;min-height:600px}
.hero--standard{height:clamp(560px,88vh,940px)}
.hero--kompaktna{height:clamp(440px,62vh,660px)}

/* split sekcija — slika lijevo */
.why__grid--obrnuto > .why__left{order:2}
.why__grid--obrnuto > *:not(.why__left){order:1}

/* tamna varijanta trake s porukama */
.marquee--tamna{background:var(--plum)}

/* =========================================================================
   Ugrađeni webshop (iframe)
   ========================================================================= */
.embed{position:relative;border-radius:var(--r-lg);overflow:hidden;background:var(--white);
  border:1px solid var(--line);min-height:400px}
.embed iframe{display:block;width:100%;border:0;transition:height .35s var(--ease-out)}
.embed.is-failed iframe{display:none}

.embed__skeleton{
  position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;
  align-items:center;justify-content:center;gap:16px;
  background:var(--cream);color:var(--ink-3);font-size:.9rem;font-weight:500;
}
.embed__spinner{
  width:34px;height:34px;border-radius:50%;
  border:3px solid rgba(168,135,90,.18);border-top-color:var(--purple);
  animation:embedSpin .9s linear infinite;
}
@keyframes embedSpin{to{transform:rotate(360deg)}}

.embed__fallback{padding:clamp(34px,6vw,72px);text-align:center}
.embed__fallback p{margin-bottom:10px}
.embed__fallback .btn{margin-top:22px}
.embed__fallback code{
  font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85em;
  background:rgba(168,135,90,.08);padding:2px 7px;border-radius:6px;color:var(--purple);
}

/* =========================================================================
   RTE — sadržaj iz uređivača teksta (odgovori na pitanja, tekstualne stranice)
   ========================================================================= */
.rte > * + *{margin-top:1em}
.rte h2{font-size:clamp(1.5rem,2.4vw,2rem);margin-top:1.6em}
.rte h3{font-size:clamp(1.15rem,1.7vw,1.4rem);margin-top:1.4em}
.rte p, .rte li{color:var(--ink-2);line-height:1.75}
.rte a{color:var(--purple);text-decoration:underline;text-underline-offset:3px}
.rte a:hover{color:var(--purple-2)}
.rte ul, .rte ol{padding-left:1.3em}
.rte li + li{margin-top:.4em}
.rte ul li{list-style:disc}
.rte ol li{list-style:decimal}
.rte img{border-radius:var(--r);max-width:100%;height:auto}
.rte blockquote{border-left:3px solid var(--teal);padding-left:20px;color:var(--ink-2);font-style:italic}
.rte table{width:100%;border-collapse:collapse}
.rte th, .rte td{border:1px solid var(--line);padding:10px 12px;text-align:left}

/* =========================================================================
   Kontakt — kartice s podacima
   ========================================================================= */
.kont{display:grid;gap:20px}
.kont__i{
  background:var(--white);border:1px solid var(--line);border-radius:var(--r-lg);
  padding:clamp(22px,2.4vw,30px);box-shadow:var(--shadow-sm);
  transition:transform .4s var(--ease-out), box-shadow .4s var(--ease-out);
}
.kont__i:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.kont__ico{
  width:46px;height:46px;border-radius:14px;display:grid;place-items:center;
  background:rgba(232,212,174,.18);color:var(--teal-dk);margin-bottom:16px;
}
.kont__ico svg{width:22px;height:22px}
.kont__i h3{font-size:1rem;letter-spacing:.01em;margin-bottom:8px}
.kont__v{color:var(--ink-2);line-height:1.6;font-size:.95rem;display:block}
a.kont__v:hover{color:var(--purple)}
.on-dark .kont__i{background:rgba(255,255,255,.06);border-color:var(--line-2)}
.on-dark .kont__v{color:rgba(255,255,255,.76)}
@media (max-width:900px){.kont{grid-template-columns:repeat(2,1fr) !important}}
@media (max-width:560px){.kont{grid-template-columns:1fr !important}}

/* =========================================================================
   Lokacije za preuzimanje — kartice s adresom i gumbom za upute
   ========================================================================= */
.lok{display:grid;gap:16px;grid-template-columns:repeat(2,1fr)}
.lok--1{grid-template-columns:1fr}
.lok--3{grid-template-columns:repeat(3,1fr)}
.lok__i{
  position:relative;overflow:hidden;display:flex;flex-direction:column;
  background:var(--white);border:1px solid var(--line);border-radius:var(--r-lg);
  padding:clamp(22px,2.4vw,30px);box-shadow:var(--shadow-sm);
  transition:transform .4s var(--ease-out), box-shadow .4s var(--ease-out);
}
/* uzorak točkica u desnom dijelu (kao isječak karte) + blagi teal sjaj — kartica nije ravna bijela ploha */
.lok__i::before{
  content:"";position:absolute;inset:0 0 0 35%;pointer-events:none;
  background-image:radial-gradient(rgba(168,135,90,.32) 1.3px, transparent 1.6px);background-size:16px 16px;
  -webkit-mask-image:linear-gradient(to left, #000 10%, transparent 90%);mask-image:linear-gradient(to left, #000 10%, transparent 90%);
  transition:transform .6s var(--ease-out);
}
.lok__i::after{
  content:"";position:absolute;right:-90px;bottom:-110px;width:320px;height:320px;border-radius:50%;pointer-events:none;
  background:radial-gradient(closest-side, rgba(232,212,174,.22), transparent);
}
.lok__i:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.lok__i:hover::before{transform:translateX(-8px)}
.lok__i > *{position:relative}
.lok__top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:18px}
.lok__ico{
  width:52px;height:52px;border-radius:16px;display:grid;place-items:center;flex:none;
  background:linear-gradient(135deg, var(--teal), var(--teal-dk));color:#fff;
  box-shadow:0 12px 22px -12px rgba(168,135,90,.9);
}
.lok__ico svg{width:24px;height:24px}
.lok__oznaka{
  font-size:.72rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;
  padding:6px 12px;border-radius:999px;background:rgba(168,135,90,.08);color:var(--purple);
}
.lok__i h3{font-size:1.25rem;margin-bottom:6px}
.lok__adr{font-style:normal;color:var(--ink-2);line-height:1.6;font-size:1rem}
.lok__redovi{list-style:none;margin:16px 0 0;padding:16px 0 0;border-top:1px dashed var(--line);
  display:grid;gap:10px;color:var(--ink-2);font-size:.95rem;line-height:1.55}
.lok__redovi li{display:flex;gap:10px;align-items:flex-start}
.lok__redovi svg{width:18px;height:18px;flex:none;margin-top:2px;color:var(--teal-dk)}
.lok__redovi a{color:inherit}
.lok__redovi a:hover{color:var(--purple)}
.lok__nap{margin-top:12px;font-size:.88rem;color:var(--ink-3)}
.lok__tijelo{flex:1}
.lok__upute{align-self:flex-start;margin-top:22px}
.on-dark .lok__i{background:rgba(255,255,255,.06);border-color:var(--line-2)}
.on-dark .lok__adr, .on-dark .lok__redovi{color:rgba(255,255,255,.76)}
.on-dark .lok__redovi{border-color:var(--line-2)}
.on-dark .lok__nap{color:rgba(255,255,255,.6)}
.on-dark .lok__i::before{background-image:radial-gradient(rgba(255,255,255,.18) 1.3px, transparent 1.6px)}
.on-dark .lok__oznaka{background:rgba(255,255,255,.12);color:#fff}
@media (max-width:900px){.lok--3{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.lok, .lok--3{grid-template-columns:1fr}}
.sasstupcem__bocno .lok{grid-template-columns:1fr}

/* =========================================================================
   Kontakt forma
   ========================================================================= */
.forma{
  background:var(--white);border:1px solid var(--line);border-radius:var(--r-xl);
  padding:clamp(24px,3vw,44px);box-shadow:var(--shadow);max-width:860px;margin-inline:auto;
}
.forma__t{margin-bottom:22px}
.forma__t h2{margin-top:12px}
.forma__t p{margin-top:12px}
.forma__red{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.forma__f > * + *{margin-top:18px}

.polje{display:block}
.polje > span{
  display:block;font-size:.82rem;font-weight:500;letter-spacing:.02em;
  color:var(--ink);margin-bottom:8px;
}
.polje > span b{color:var(--purple-2)}
.polje input, .polje textarea{
  width:100%;font:inherit;font-size:.96rem;color:var(--ink);
  background:var(--cream);border:1px solid var(--line);border-radius:var(--r-sm);
  padding:13px 16px;outline:none;transition:border-color .2s, background .2s, box-shadow .2s;
}
.polje textarea{resize:vertical;min-height:140px;line-height:1.6}
.polje input:focus, .polje textarea:focus{
  border-color:var(--teal);background:var(--white);box-shadow:0 0 0 4px rgba(232,212,174,.16);
}
.polje.is-greska input, .polje.is-greska textarea{border-color:#c0392b;background:#fdf3f2}
.polje em{display:block;margin-top:6px;font-size:.82rem;font-style:normal;color:#c0392b;font-weight:500}
.polje small{display:block;margin-top:6px;font-size:.8rem;color:var(--ink-3);line-height:1.5}
/* padajući izbor — isti okvir kao input, vlastita strelica */
.polje select{
  width:100%;font:inherit;font-size:.96rem;color:var(--ink);
  background:var(--cream) url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path d='M1 1l5 5 5-5' fill='none' stroke='%236a5d7b' stroke-width='2'/></svg>") no-repeat right 16px center;
  border:1px solid var(--line);border-radius:var(--r-sm);
  padding:13px 44px 13px 16px;outline:none;appearance:none;-webkit-appearance:none;cursor:pointer;
  transition:border-color .2s, background-color .2s, box-shadow .2s;
}
.polje select:focus{border-color:var(--teal);background-color:var(--white);box-shadow:0 0 0 4px rgba(232,212,174,.16)}
.polje.is-greska select{border-color:#c0392b;background-color:#fdf3f2}
/* kvačica i kružići — nativni kontrolni elementi u boji dizajna */
.polje input[type=checkbox], .polje input[type=radio]{
  width:20px;height:20px;padding:0;margin:0;flex:none;accent-color:var(--teal-dk);
  border-radius:0;background:none;box-shadow:none;cursor:pointer;
}
.polje--kvacica{display:grid;grid-template-columns:auto 1fr;column-gap:12px;align-items:start}
.polje--kvacica input{margin-top:1px}
.polje--kvacica > span{margin-bottom:0;font-weight:500;font-size:.92rem;letter-spacing:0;line-height:1.5}
.polje--kvacica small, .polje--kvacica em{grid-column:2}
.polje--radio{border:0;padding:0;margin:0;min-width:0}
.polje--radio legend{
  display:block;font-size:.82rem;font-weight:500;letter-spacing:.02em;color:var(--ink);margin-bottom:8px;padding:0;
}
.polje--radio legend b{color:var(--purple-2)}
.polje__opcije{display:flex;flex-wrap:wrap;gap:10px 22px}
.polje__opcije label{display:inline-flex;align-items:center;gap:8px;font-size:.94rem;color:var(--ink);cursor:pointer}
.polje.is-greska .polje__opcije label{color:#a5342a}

.forma__mamac{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.kc-rc{font-size:.8rem;color:var(--ink-3);line-height:1.5;margin-top:10px}
.kc-rc a{color:var(--purple);text-decoration:underline}
.forma__dno{display:flex;flex-wrap:wrap;align-items:center;gap:18px;margin-top:26px}
.forma__dno small{flex:1;min-width:220px;font-size:.8rem;color:var(--ink-3);line-height:1.5}
.forma__dno small a{color:var(--purple);text-decoration:underline}

.forma__ok{
  display:flex;gap:16px;align-items:center;
  background:rgba(232,212,174,.14);border:1px solid rgba(232,212,174,.4);
  border-radius:var(--r);padding:24px 26px;
}
.forma__ok svg{width:28px;height:28px;color:var(--teal-dk);flex:none}
.forma__ok p{color:var(--ink);font-weight:500;line-height:1.6}
.forma__greska{
  background:#fdf3f2;border:1px solid rgba(192,57,43,.35);border-radius:var(--r-sm);
  padding:14px 18px;margin-bottom:18px;
}
.forma__greska p{color:#a5342a;font-weight:500;font-size:.9rem}
@media (max-width:640px){.forma__red{grid-template-columns:1fr}}

/* =========================================================================
   Karta
   ========================================================================= */
.karta{
  position:relative;border-radius:var(--r-lg);overflow:hidden;
  border:1px solid var(--line);background:var(--cream-2);
}
.karta--niska{height:320px}
.karta--srednja{height:460px}
.karta--visoka{height:620px}
.karta iframe{display:block;width:100%;height:100%;border:0}

.karta__privola{
  position:absolute;inset:0;display:flex;flex-direction:column;
  align-items:center;justify-content:center;gap:12px;text-align:center;
  padding:clamp(24px,4vw,48px);
  background:
    radial-gradient(circle at 30% 20%, rgba(232,212,174,.16), transparent 60%),
    radial-gradient(circle at 75% 80%, rgba(168,135,90,.12), transparent 60%),
    var(--cream-2);
}
.karta__ico{
  width:54px;height:54px;border-radius:50%;display:grid;place-items:center;
  background:var(--white);color:var(--purple);box-shadow:var(--shadow-sm);
}
.karta__ico svg{width:24px;height:24px}
.karta__adresa{font-weight:500;color:var(--ink);font-size:1.05rem}
.karta__nap{max-width:46ch;font-size:.86rem;color:var(--ink-3);line-height:1.55}
.karta__privola .btn{margin-top:6px}
.karta__alt{font-size:.82rem;color:var(--ink-3);text-decoration:underline;text-underline-offset:3px}
.karta__alt:hover{color:var(--purple)}
@media (max-width:640px){
  .karta--visoka{height:420px}
  .karta--srednja{height:360px}
}

/* =========================================================================
   FAQ — pitanja i odgovori
   ========================================================================= */
.faq{display:grid;gap:12px}
.faq--2{grid-template-columns:1fr 1fr;align-items:start}
.faq__i{
  background:var(--white);border:1px solid var(--line);border-radius:var(--r);
  overflow:hidden;transition:border-color .3s var(--ease), box-shadow .3s var(--ease);
}
.faq__i[open]{border-color:rgba(232,212,174,.55);box-shadow:var(--shadow-sm)}
.faq__q{
  display:flex;align-items:center;gap:14px;cursor:pointer;list-style:none;
  padding:clamp(16px,2vw,22px) clamp(18px,2.4vw,26px);
  font-weight:500;font-size:clamp(.98rem,1.2vw,1.08rem);color:var(--ink);
}
.faq__q::-webkit-details-marker{display:none}
.faq__q:hover{color:var(--purple)}
.faq__n{
  flex:none;font-size:.78rem;font-weight:500;color:var(--teal-dk);
  background:rgba(232,212,174,.16);border-radius:8px;padding:4px 8px;
}
.faq__qt{flex:1}
.faq__znak{
  flex:none;position:relative;width:22px;height:22px;border-radius:50%;
  background:rgba(168,135,90,.08);transition:background .3s var(--ease), transform .35s var(--ease);
}
.faq__znak::before, .faq__znak::after{
  content:"";position:absolute;left:50%;top:50%;background:var(--purple);
  transform:translate(-50%,-50%);transition:opacity .3s var(--ease), transform .35s var(--ease);
}
.faq__znak::before{width:10px;height:2px}
.faq__znak::after{width:2px;height:10px}
.faq__i[open] .faq__znak{background:var(--teal);transform:rotate(180deg)}
.faq__i[open] .faq__znak::before{background:var(--plum)}
.faq__i[open] .faq__znak::after{opacity:0}

.faq__a{padding:0 clamp(18px,2.4vw,26px) clamp(18px,2.4vw,26px)}
.faq__aw--slika{display:grid;grid-template-columns:1fr 240px;gap:24px;align-items:start}
.faq__aw--slika.faq__aw--lijevo{grid-template-columns:240px 1fr}
.faq__aw--lijevo .faq__tekst{order:2}
.faq__aw--lijevo .faq__slika{order:1}
.faq__slika img{width:100%;border-radius:var(--r-sm);display:block}

/* glatko otvaranje kad JS preuzme kontrolu */
.faq[data-faq-js] .faq__a{overflow:hidden}
.faq[data-faq-js] .faq__i:not(.is-anim) .faq__a{height:auto}

.on-dark .faq__i{background:rgba(255,255,255,.06);border-color:var(--line-2)}
.on-dark .faq__q{color:#fff}
.on-dark .faq__tekst p, .on-dark .faq__tekst li{color:rgba(255,255,255,.76)}
@media (max-width:900px){
  .faq--2{grid-template-columns:1fr}
  .faq__aw--slika, .faq__aw--slika.faq__aw--lijevo{grid-template-columns:1fr}
  .faq__aw--lijevo .faq__tekst, .faq__aw--lijevo .faq__slika{order:0}
}

/* =========================================================================
   Stupci — univerzalni raspored
   ========================================================================= */
.stupci{
  display:grid;
  grid-template-columns:var(--stupci-grid,1fr 1fr);
  gap:var(--stupci-razmak,32px);
  align-items:var(--stupci-poravnanje,start);
}
.stupac > * + *{margin-top:18px}
.stupac--sredina{text-align:center}
.stupac--desno{text-align:right}
.stupac--kartica{
  background:var(--white);border:1px solid var(--line);border-radius:var(--r-lg);
  padding:clamp(22px,2.6vw,34px);box-shadow:var(--shadow-sm);height:100%;
}
.on-dark .stupac--kartica{background:rgba(255,255,255,.06);border-color:var(--line-2)}
/* U stupcu sekcije ne dodaju vlastiti okomiti razmak ni širinu. */
.stupac .section{padding-block:0}
.stupac .wrap{padding-inline:0;max-width:none}
@media (max-width:900px){.stupci{grid-template-columns:1fr !important}}

/* =========================================================================
   Predlošci stranica — uski tekst, stranica sa stupcem, slijetanje
   ========================================================================= */
.uska{max-width:760px;margin-inline:auto;padding-bottom:clamp(56px,7vw,96px)}
.pagehead--uska .wrap > *{max-width:760px;margin-inline:auto}

.sasstupcem{
  display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:clamp(28px,4vw,56px);
  align-items:start;padding-bottom:clamp(56px,7vw,96px);
}
.sasstupcem--lijevo{grid-template-columns:320px minmax(0,1fr)}
.sasstupcem--lijevo .sasstupcem__glavno{order:2}
.sasstupcem--lijevo .sasstupcem__bocno{order:1}
.sasstupcem__bocno{position:sticky;top:100px}
.sasstupcem__bocno > * + *{margin-top:20px}
.sasstupcem__bocno .section{padding-block:0}
.sasstupcem__bocno .wrap{padding-inline:0;max-width:none}
.sasstupcem__bocno .forma{padding:24px;border-radius:var(--r-lg);box-shadow:var(--shadow-sm)}
.sasstupcem__bocno .kont{grid-template-columns:1fr !important}
@media (max-width:900px){
  .sasstupcem, .sasstupcem--lijevo{grid-template-columns:1fr}
  .sasstupcem--lijevo .sasstupcem__glavno, .sasstupcem--lijevo .sasstupcem__bocno{order:0}
  .sasstupcem__bocno{position:static}
}

.je-slijetanje .topbar{display:none}
.header--slijetanje{position:relative}
.footer--slijetanje{padding-top:0}
.je-slijetanje main{padding-top:0}
.faq[data-faq-js] .faq__i.is-anim .faq__a{transition:height .32s var(--ease-out)}

/* =========================================================================
   Kontakt — zbijeniji okomiti ritam
   Sekcije kontakta (podaci → forma → karta) obično stoje jedna na drugoj,
   pa se njihovi okomiti razmaci zbrajaju i procjep postane prevelik.
   Susjedna kontakt sekcija zato ne dodaje razmak odozgo.
   ========================================================================= */
.sek-kontakt + .sek-kontakt{padding-top:0}
.sek-kontakt .sec-head{margin-bottom:clamp(20px,2.2vw,32px)}
.sek-kontakt .kont{gap:16px}

/* =========================================================================
   Prva sekcija na stranici bez naslovnog bloka
   Na predlošcima gdje odmah slijede pluginovi (npr. „Prazna stranica”)
   puni okomiti razmak stvarao je veliku rupu ispod izbornika. Zaglavlje je
   ljepljivo i samo po sebi odvaja sadržaj, pa je dovoljan mali odmak.
   Hero i naslovni blok (.pagehead) nisu dirnuti — oni su prvi svoje vrste.
   ========================================================================= */
main > .section:first-of-type{padding-top:clamp(16px,2vw,28px)}

/* =========================================================================
   Baner — slika preko cijele širine s tekstom
   ========================================================================= */
.baner{position:relative;display:flex;align-items:center;overflow:hidden;isolation:isolate}
.baner--niska{min-height:clamp(240px,32vw,340px)}
.baner--srednja{min-height:clamp(320px,44vw,480px)}
.baner--visoka{min-height:clamp(420px,60vw,660px)}
.baner--puna{min-height:100svh}

.baner__media{position:absolute;inset:0;z-index:-1}
.baner__media img{width:100%;height:100%;object-fit:cover;display:block}
.baner__gradijent{
  width:100%;height:100%;
  background:linear-gradient(130deg,var(--plum),var(--purple) 45%,var(--purple-lt));
}
.baner__veo{position:absolute;inset:0}
.baner__veo--lagano{background:linear-gradient(90deg,rgba(42,37,33,.45),rgba(42,37,33,.12))}
.baner__veo--srednje{background:linear-gradient(90deg,rgba(42,37,33,.68),rgba(42,37,33,.3))}
.baner__veo--jako{background:linear-gradient(90deg,rgba(42,37,33,.84),rgba(42,37,33,.55))}

.baner__in{position:relative;padding-block:clamp(48px,7vw,104px);width:100%}
.baner__t{max-width:min(620px,100%)}
.baner__t h2{
  font-size:clamp(1.9rem,4vw,3.2rem);line-height:1.08;margin-top:14px;color:#fff;
}
.baner__t p{margin-top:16px;color:rgba(255,255,255,.82);font-size:clamp(1rem,1.2vw,1.14rem);line-height:1.65}
.baner__t .btn{margin-top:28px}
.baner .eyebrow{color:var(--teal)}

/* položaj teksta */
.baner--sredina{justify-content:center;text-align:center}
.baner--sredina .baner__t{margin-inline:auto}
.baner--sredina .baner__veo--lagano{background:rgba(42,37,33,.34)}
.baner--sredina .baner__veo--srednje{background:rgba(42,37,33,.52)}
.baner--sredina .baner__veo--jako{background:rgba(42,37,33,.7)}
.baner--sredina .eyebrow::before{display:none}

.baner--desno{justify-content:flex-end;text-align:right}
.baner--desno .baner__t{margin-left:auto}
.baner--desno .baner__veo--lagano{background:linear-gradient(270deg,rgba(42,37,33,.45),rgba(42,37,33,.12))}
.baner--desno .baner__veo--srednje{background:linear-gradient(270deg,rgba(42,37,33,.68),rgba(42,37,33,.3))}
.baner--desno .baner__veo--jako{background:linear-gradient(270deg,rgba(42,37,33,.84),rgba(42,37,33,.55))}
.baner--desno .eyebrow::before{display:none}

@media (max-width:640px){
  .baner--puna{min-height:auto}
  .baner--desno, .baner--desno .baner__t{text-align:left;margin-left:0}
  .baner__veo, .baner--desno .baner__veo{background:rgba(42,37,33,.6)}
}

/* tamni tekst — za svijetlu pozadinu (npr. bijela sa zelenim lišćem) */
.baner--tamni .baner__t h2{color:var(--ink)}
.baner--tamni .baner__t p{color:var(--ink-2)}
.baner--tamni .eyebrow{color:var(--purple)}

/* mreža: istaknuta slika + boksovi (podplugin „Boks u baneru”) */
.baner--mreza .baner__t{margin-bottom:clamp(28px,4vw,48px)}
.baner__grid{display:grid;gap:clamp(24px,4vw,56px);align-items:center;text-align:left;--sl:1fr;--bx:2fr}
.baner__grid--pola{--sl:1fr;--bx:1fr}
.baner__grid--dvije_trecine{--sl:2fr;--bx:1fr}
.baner__grid--lijevo{grid-template-columns:var(--sl) var(--bx)}
.baner__grid--desno{grid-template-columns:var(--bx) var(--sl)}
.baner__grid--desno .baner__slika{order:2}
.baner__grid--sredina{grid-template-columns:var(--bx) var(--sl) var(--bx)}
.baner__grid--sredina .baner__slika{order:2}
.baner__grid--sredina .baner__boksovi--desno{order:3}
.baner__grid--gore{grid-template-columns:1fr;justify-items:center}
.baner__grid--gore .baner__slika{max-width:min(520px,100%)}
.baner__grid--gore .baner__slika img{max-height:min(50vh,460px)}
.baner__grid--gore .baner__boksovi{width:100%}
.baner__grid--bez-slike{grid-template-columns:1fr}
.baner__slika img{display:block;width:100%;height:auto;max-height:min(70vh,640px);object-fit:contain;
  filter:drop-shadow(0 30px 40px rgba(42,37,33,.35))}

.baner__boksovi{display:grid;grid-template-columns:repeat(var(--st,3),1fr);gap:16px;align-content:center}
.bbox{
  display:flex;flex-direction:column;gap:14px;padding:26px 24px;border-radius:var(--r);min-height:150px;
  background:var(--indigo);color:#fff;text-decoration:none;position:relative;box-shadow:var(--shadow-sm);
  transition:transform .45s var(--ease-out),box-shadow .45s var(--ease-out);
}
.bbox__n{font-size:.78rem;font-weight:500;letter-spacing:.06em;color:var(--purple-lt)}
.bbox__t{font-size:clamp(1rem,1.3vw,1.18rem);font-weight:500;line-height:1.35;letter-spacing:.02em}
.bbox__arr{
  margin-top:auto;align-self:flex-end;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;
  background:rgba(255,255,255,.1);transition:background .3s,transform .35s var(--ease-out);
}
.bbox__arr svg{width:15px;height:15px}
.bbox--link:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
.bbox--link:hover .bbox__arr{background:var(--purple-lt);color:#fff;transform:translateX(3px)}
.bbox--sljiva{background:var(--plum)}
.bbox--ljubicasta{background:var(--purple)}
.bbox--ljubicasta .bbox__n{color:var(--teal)}
.bbox--bijela{background:#fff;color:var(--ink);border:1px solid var(--line)}
.bbox--bijela .bbox__n{color:var(--purple)}
.bbox--bijela .bbox__arr{background:rgba(168,135,90,.1);color:var(--purple)}
.bbox--staklo{background:rgba(255,255,255,.12);border:1px solid var(--line-2);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.bbox--staklo .bbox__n{color:var(--teal)}
.baner--tamni .bbox--staklo{background:rgba(255,255,255,.6);border-color:var(--line);color:var(--ink)}
.baner--tamni .bbox--staklo .bbox__n{color:var(--purple)}
.baner--tamni .bbox--staklo .bbox__arr{background:rgba(168,135,90,.1);color:var(--purple)}

@media (max-width:960px){
  .baner__grid--lijevo,.baner__grid--desno,.baner__grid--sredina{grid-template-columns:1fr;justify-items:center}
  .baner__grid .baner__slika{order:0;max-width:min(440px,100%)}
  .baner__grid .baner__slika img{max-height:min(50vh,440px)}
  .baner__boksovi{width:100%}
}
@media (max-width:700px){.baner__boksovi:not(.baner__boksovi--1){grid-template-columns:repeat(2,1fr)}}
@media (max-width:440px){.baner__boksovi{grid-template-columns:1fr}}

/* =========================================================================
   Razdjelnik — vodoravna crta između sekcija (core/plugins/razdjelnik.html)
   ========================================================================= */
.razdjelnik{--rz-razmak:32px;--rz-sirina:100%;padding-block:var(--rz-razmak)}
.razdjelnik--razmak-bez{--rz-razmak:0}
.razdjelnik--razmak-mali{--rz-razmak:14px}
.razdjelnik--razmak-veliki{--rz-razmak:clamp(48px,7vw,88px)}
.razdjelnik--tri_cetvrtine{--rz-sirina:75%}
.razdjelnik--pola{--rz-sirina:50%}
.razdjelnik--kratka{--rz-sirina:120px}
.razdjelnik--uska{--rz-sirina:56px}
.razdjelnik__in{display:flex;align-items:center;gap:14px;width:var(--rz-sirina);max-width:100%}
.razdjelnik--sredina .razdjelnik__in{margin-inline:auto}
.razdjelnik--desno .razdjelnik__in{margin-left:auto}
.razdjelnik__crta{flex:1;display:block;min-width:0}
.razdjelnik__ukras{flex:none;display:grid;place-items:center;width:24px;height:24px;line-height:0}
.razdjelnik__ukras svg{width:22px;height:22px}
.razdjelnik__ukras--tocka{width:10px;height:10px;border-radius:50%;background:currentColor}

/* =========================================================================
   Objekti — okrugle slike s nazivom i lokacijom
   Koristi isti mehanizam klizanja (.rail) kao traka objava.
   ========================================================================= */
.rail--okrugli{grid-auto-columns:var(--okrug-w,180px)}
.rail--okrugli.rail--mreza{grid-template-columns:repeat(auto-fill,minmax(var(--okrug-w,180px),1fr));justify-items:center}
.okrug--mala{--okrug-w:130px}
.okrug--srednja{--okrug-w:180px}
.okrug--velika{--okrug-w:230px}

.okrug{display:flex;flex-direction:column;align-items:center;text-align:center;gap:4px}
.okrug__media{
  display:block;width:100%;aspect-ratio:1;border-radius:50%;overflow:hidden;
  background:var(--cream-2);box-shadow:var(--shadow-sm);
  outline:2px solid transparent;outline-offset:4px;
  transition:transform .45s var(--ease-out), outline-color .3s var(--ease), box-shadow .45s var(--ease-out);
}
.okrug__media img{width:100%;height:100%;object-fit:cover;display:block}
a.okrug:hover .okrug__media{transform:translateY(-4px) scale(1.03);outline-color:var(--teal);box-shadow:var(--shadow)}
a.okrug:focus-visible .okrug__media{outline-color:var(--purple)}

.okrug__naziv{
  margin-top:14px;font-weight:500;font-size:.98rem;line-height:1.35;color:var(--ink);
  transition:color .25s var(--ease);
}
a.okrug:hover .okrug__naziv{color:var(--purple)}
.okrug__grad{
  display:inline-flex;align-items:center;gap:5px;
  font-size:.82rem;font-weight:500;color:var(--ink-3);
}
.okrug__grad svg{width:13px;height:13px;flex:none}

.on-dark .okrug__naziv{color:#fff}
.on-dark .okrug__grad{color:rgba(255,255,255,.6)}
.on-dark a.okrug:hover .okrug__naziv{color:var(--teal)}

/* =========================================================================
   Certifikati — karusel logotipa i oznaka
   Isti mehanizam klizanja (.rail) kao objekti i traka objava.
   ========================================================================= */
.rail--certifikati{grid-auto-columns:var(--cert-w,190px);align-items:start}
.rail--certifikati.rail--mreza{grid-template-columns:repeat(auto-fill,minmax(var(--cert-w,190px),1fr))}
.cert--mala{--cert-w:140px}
.cert--srednja{--cert-w:190px}
.cert--velika{--cert-w:250px}

.cert{display:flex;flex-direction:column;align-items:center;text-align:center;gap:4px}
.cert__media{
  display:grid;align-items:center;justify-items:center;width:100%;overflow:hidden;
  transition:transform .45s var(--ease-out), box-shadow .45s var(--ease-out),
             border-color .3s var(--ease);
}
.cert__media img{display:block;place-self:center}

/* logotip — cijela slika, bez rezanja, na bijeloj kartici
   Slika popunjava okvir, a `object-fit:contain` je uklapa bez rezanja i sama
   centrira po obje osi. Ranije je oslanjanje na max-height:100% znalo ostaviti
   logotip odmaknut od sredine jer se postotna visina u gridu ne razriješi
   pouzdano. */
.cert--logo .cert__media{
  aspect-ratio:4/3;background:var(--white);border:1px solid var(--line);
  border-radius:var(--r);padding:clamp(12px,1.6vw,20px);box-shadow:var(--shadow-sm);
}
.cert--logo .cert__media img{
  width:100%;height:100%;min-height:0;object-fit:contain;object-position:center;
}

/* okruglo i zaobljeni kvadrat — slika se reže na oblik */
.cert--okruglo .cert__media, .cert--kvadrat .cert__media{
  aspect-ratio:1;background:var(--cream-2);box-shadow:var(--shadow-sm);
}
.cert--okruglo .cert__media{border-radius:50%}
.cert--kvadrat .cert__media{border-radius:var(--r-lg)}
.cert--okruglo .cert__media img, .cert--kvadrat .cert__media img{
  width:100%;height:100%;object-fit:cover;
}

a.cert:hover .cert__media{transform:translateY(-4px);box-shadow:var(--shadow);border-color:rgba(232,212,174,.6)}
a.cert:focus-visible .cert__media{border-color:var(--purple)}

.cert__naziv{margin-top:14px;font-weight:500;font-size:.94rem;line-height:1.35;color:var(--ink)}
a.cert:hover .cert__naziv{color:var(--purple)}
.cert__nap{font-size:.8rem;font-weight:500;color:var(--ink-3)}

/* siva varijanta — boja se vraća na prijelaz mišem */
.cert--sivo .cert__media img{filter:grayscale(1);opacity:.72;transition:filter .35s var(--ease), opacity .35s var(--ease)}
.cert--sivo .cert:hover .cert__media img{filter:none;opacity:1}

.on-dark .cert__naziv{color:#fff}
.on-dark .cert__nap{color:rgba(255,255,255,.6)}
.on-dark .cert--okruglo .cert__media, .on-dark .cert--kvadrat .cert__media{background:rgba(255,255,255,.08)}
.on-dark a.cert:hover .cert__naziv{color:var(--teal)}
.logo__img{width:auto;flex:none;display:block;object-fit:contain}

/* ---- webshop widget (PlanPlus) — samo raspored; boje kroz --planplus-* varijable ---- */
.widget-shop{min-height:320px}
.widget-shop .pps-grid{gap:22px}
.widget-shop .pps-card__name{font-weight:500}
/* izlog (naslovnica): točan broj stupaca iz sekcije, bez alatne trake; na tamnoj .shop pozadini kartice ostaju svijetle */
.widget-shop--izlog{min-height:0}
/* stranice koje crta widget: proizvod, naplata, narudžba, račun (shop/views.py) */
.widget-page{padding-bottom:clamp(56px,7vw,96px);min-height:40vh}
.widget-page--uska .widget-page__box{max-width:640px;margin-inline:auto}
.widget-page .pps-h2,.widget-page .pps-info h2{font-size:clamp(1.6rem,3vw,2.2rem);letter-spacing:.02em;line-height:1.1}
.pagehead--proizvod{padding-bottom:0}
.proizvod-noscript{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:start}
.proizvod-noscript img{width:100%;border-radius:var(--r-md);background:#f6f6f6}
.proizvod-noscript__cijena{font-weight:500;font-size:1.3rem}
@media (max-width:720px){.proizvod-noscript{grid-template-columns:1fr}}
.icon-btn--user.is-signed-in{border-color:var(--purple);color:var(--purple)}
.mmenu__foot .btn--ghost-light{--bg:transparent;--fg:#fff;border-color:rgba(255,255,255,.35)}
.mmenu__foot .btn--ghost-light svg{width:18px;height:18px}
.widget-shop--izlog .pps-grid{grid-template-columns:repeat(var(--stupaca,3),1fr)}
.widget-shop--izlog .pps-card{border-color:rgba(255,255,255,.14);box-shadow:0 18px 50px rgba(0,0,0,.28)}
@media (max-width:900px){.widget-shop--izlog .pps-grid{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.widget-shop--izlog .pps-grid{grid-template-columns:1fr}}

/* =========================================================================
   Uvod s kolažem slika (.uvk) — naslov lijevo, tri slike u kolažu desno
   ========================================================================= */
.uvk{position:relative;overflow:hidden;isolation:isolate}
.uvk__sjaj{position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:
    radial-gradient(42% 55% at 88% 30%, rgba(232,212,174,.22), transparent 70%),
    radial-gradient(50% 60% at 70% 95%, rgba(140,109,64,.20), transparent 70%)}
.uvk__grid{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);gap:clamp(36px,5vw,80px);align-items:center}
.uvk__h{margin-top:20px;font-size:clamp(2.6rem,5.8vw,5rem)}
.uvk__lead{margin-top:24px;max-width:50ch}
.uvk__gumbi{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}
.uvk__kolaz{position:relative;aspect-ratio:1/0.92;min-height:340px}
.uvk__s{position:absolute;margin:0;border-radius:var(--r-lg);overflow:hidden;
  border:6px solid #fff;box-shadow:var(--shadow-lg);background:var(--cream-2)}
.uvk__s img{width:100%;height:100%;object-fit:cover}
.uvk__s--1{left:0;top:16%;width:66%;aspect-ratio:4/3;transform:rotate(-3deg);z-index:1;animation:uvk-lebdi 9s var(--ease) infinite}
.uvk__s--2{right:0;top:0;width:40%;aspect-ratio:3/4;transform:rotate(4deg);z-index:2;animation:uvk-lebdi 11s var(--ease) -3s infinite}
.uvk__s--3{left:22%;bottom:0;width:31%;aspect-ratio:1;transform:rotate(-7deg);z-index:3;border-radius:50%;animation:uvk-lebdi 10s var(--ease) -6s infinite}
@keyframes uvk-lebdi{0%,100%{translate:0 0}50%{translate:0 -10px}}
.uvk__oznaka{position:absolute;right:2%;bottom:9%;z-index:4;display:flex;align-items:center;gap:12px;
  background:#fff;color:var(--ink);border-radius:20px;padding:14px 18px;box-shadow:var(--shadow);max-width:250px}
.uvk__oznaka b{font-size:2rem;font-weight:500;letter-spacing:.02em;line-height:1;
  background:linear-gradient(120deg,var(--purple),var(--purple-lt));-webkit-background-clip:text;background-clip:text;color:transparent}
.uvk__oznaka span{font-size:.82rem;font-weight:500;line-height:1.3;color:var(--ink-2)}
.uvk__kap{position:absolute;border-radius:50%;z-index:0;pointer-events:none}
.uvk__kap--1{width:120px;height:120px;right:30%;top:-4%;background:radial-gradient(circle at 30% 30%, var(--purple-lt), var(--purple));opacity:.85}
.uvk__kap--2{width:56px;height:56px;left:6%;bottom:12%;background:radial-gradient(circle at 30% 30%, #e8d4ae, var(--teal-dk))}
.on-dark .uvk__s{border-color:rgba(255,255,255,.92)}
.on-dark .uvk__gumb2{--fg:#fff;border-color:var(--line-2)}
@media (max-width:900px){
  .uvk__grid{grid-template-columns:1fr}
  .uvk__kolaz{max-width:520px;width:100%;margin-inline:auto;min-height:0}
}
@media (prefers-reduced-motion:reduce){.uvk__s{animation:none}}

/* =========================================================================
   Kartice sa slikama (.ksl) — fotografija preko cijele kartice, tekst na dnu
   ========================================================================= */
.ksl{display:grid;gap:clamp(14px,1.6vw,22px);grid-template-columns:repeat(3,minmax(0,1fr))}
.ksl--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.ksl--4{grid-template-columns:repeat(4,minmax(0,1fr))}
.ksl__i{position:relative;isolation:isolate;display:flex;flex-direction:column;justify-content:flex-end;
  aspect-ratio:4/5;border-radius:var(--r-lg);overflow:hidden;color:#fff;background:var(--plum);
  box-shadow:var(--shadow-sm);transition:transform .5s var(--ease-out), box-shadow .5s var(--ease-out)}
.ksl--kvadrat .ksl__i{aspect-ratio:1}
.ksl--polozeno .ksl__i{aspect-ratio:4/3}
.ksl__i:hover{transform:translateY(-6px);box-shadow:var(--shadow)}
.ksl__media{position:absolute;inset:0;z-index:-1}
.ksl__media img{width:100%;height:100%;object-fit:cover;transition:transform 1.1s var(--ease-out)}
.ksl__i:hover .ksl__media img{transform:scale(1.07)}
.ksl__media::after{content:"";position:absolute;inset:0;
  background:linear-gradient(to top, rgba(42,37,33,.92) 0%, rgba(42,37,33,.55) 38%, rgba(42,37,33,0) 68%)}
.ksl__t{padding:clamp(20px,2vw,28px)}
.ksl__meta{display:flex;gap:8px;align-items:center;margin-bottom:14px}
.ksl__br{font-size:.74rem;font-weight:500;letter-spacing:.12em;padding:6px 11px;border-radius:999px;
  background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.28);
  -webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.ksl__oznaka{font-size:.7rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;
  padding:6px 11px;border-radius:999px;background:var(--teal);color:var(--plum)}
.ksl__i h3{color:#fff;font-size:clamp(1.3rem,1.9vw,1.7rem);text-transform:none}
.ksl__i p{margin-top:8px;color:rgba(255,255,255,.82);font-size:.95rem;line-height:1.55;max-width:34ch}
/* kartica bez slike — istaknuta, s plusom */
.ksl__i--istaknuta{background:linear-gradient(145deg,var(--purple) 0%, #6e5638 50%, var(--indigo) 100%)}
.ksl__i--istaknuta::before{content:"";position:absolute;inset:12px;border-radius:calc(var(--r-lg) - 8px);
  border:1.5px dashed rgba(255,255,255,.3);pointer-events:none}
.ksl__i--istaknuta::after{content:"";position:absolute;width:70%;aspect-ratio:1;right:-20%;top:-18%;border-radius:50%;
  background:radial-gradient(closest-side, rgba(232,212,174,.35), transparent);z-index:-1}
.ksl__plus{position:absolute;left:50%;top:40%;translate:-50% -50%;width:84px;height:84px;border-radius:50%;
  display:grid;place-items:center;background:var(--teal);color:var(--plum);
  box-shadow:0 0 0 12px rgba(232,212,174,.16), 0 0 0 26px rgba(232,212,174,.07);
  transition:transform .6s var(--ease-out)}
.ksl__plus svg{width:34px;height:34px}
.ksl__i--istaknuta:hover .ksl__plus{transform:rotate(90deg) scale(1.06)}
.ksl__dno{display:flex;justify-content:center;margin-top:clamp(28px,3vw,44px)}
@media (max-width:1000px){.ksl, .ksl--4{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* mobitel: vodoravna traka s klizanjem umjesto dugog stupca */
@media (max-width:640px){
  .ksl, .ksl--2, .ksl--4{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:78%;
    overflow-x:auto;scroll-snap-type:x mandatory;margin-inline:calc(var(--pad) * -1);padding:4px var(--pad) 18px;
    scrollbar-width:none}
  .ksl::-webkit-scrollbar{display:none}
  .ksl__i{scroll-snap-align:center}
  .ksl__i.reveal{transition-delay:0s}
}

/* =========================================================================
   Proizvod s formatima (.pfm)
   ========================================================================= */
.pfm{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:clamp(28px,4.5vw,72px);align-items:stretch;
  background:var(--white);border:1px solid var(--line);border-radius:var(--r-xl);padding:clamp(18px,2.2vw,28px);box-shadow:var(--shadow)}
.pfm--desno .pfm__media{order:2}
.pfm--bez-slike{grid-template-columns:1fr}
.pfm__media{position:relative;border-radius:calc(var(--r-xl) - 12px);overflow:hidden;min-height:420px;background:var(--cream-2)}
.pfm__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease-out)}
.pfm__t{align-self:center}
.pfm:hover .pfm__media img{transform:scale(1.04)}
.pfm__oznaka{position:absolute;left:18px;top:18px;font-size:.72rem;font-weight:500;letter-spacing:.18em;text-transform:uppercase;
  padding:8px 14px;border-radius:999px;background:var(--purple);color:#fff;box-shadow:0 10px 24px -12px rgba(168,135,90,.9)}
.pfm__t{padding:clamp(6px,2vw,24px) clamp(6px,2vw,28px) clamp(6px,2vw,24px) 0}
.pfm--desno .pfm__t, .pfm--bez-slike .pfm__t{padding-left:clamp(6px,2vw,28px)}
.pfm__naziv{font-size:clamp(1.6rem,2.6vw,2.3rem)}
.pfm__opis{margin-top:12px;color:var(--ink-2);font-size:1.05rem;line-height:1.6}
.pfm__blok{margin-top:28px}
.pfm__h{font-size:.74rem;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--purple);margin-bottom:14px}
.pfm__formati{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}
.pfm__formati li{display:flex;gap:12px;align-items:center;padding:14px 16px;border-radius:16px;
  background:var(--cream);border:1px solid var(--line);transition:border-color .3s, transform .4s var(--ease-out)}
.pfm__formati li:hover{border-color:var(--teal);transform:translateY(-2px)}
.pfm__formati svg{width:34px;height:34px;flex:none;padding:8px;border-radius:10px;background:rgba(232,212,174,.18);color:var(--teal-dk)}
.pfm__formati b{display:block;font-size:1.02rem;letter-spacing:.02em}
.pfm__formati small{display:block;font-size:.8rem;color:var(--ink-3);line-height:1.35;margin-top:2px}
.pfm__var{display:flex;flex-wrap:wrap;gap:8px}
.pfm__var li{display:inline-flex;align-items:center;gap:8px;padding:9px 15px;border-radius:999px;
  background:rgba(168,135,90,.07);color:var(--purple);font-weight:500;font-size:.9rem}
.pfm__var li::before{content:"";width:8px;height:8px;border-radius:50%;background:linear-gradient(135deg,var(--purple-lt),var(--purple))}
.pfm__gumb{margin-top:32px}
.on-dark .pfm{background:rgba(255,255,255,.05);border-color:var(--line-2)}
.on-dark .pfm__formati li{background:rgba(255,255,255,.06);border-color:var(--line-2)}
.on-dark .pfm__var li{background:rgba(255,255,255,.1);color:#fff}
@media (max-width:860px){
  .pfm{grid-template-columns:1fr}
  .pfm--desno .pfm__media{order:0}
  .pfm__media{min-height:0;aspect-ratio:4/3}
  .pfm__t{padding:6px 8px 12px}
}

/* =========================================================================
   Numerirani razlozi (.rzl) — naslov lijevo (ljepljiv), popis 01–0n desno
   ========================================================================= */
.rzl{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(36px,6vw,96px);align-items:start}
.rzl__ljepilo{position:sticky;top:120px}
.rzl__ljepilo h2{margin-top:14px}
.rzl__ljepilo .lead{margin-top:18px;max-width:46ch}
.rzl__slika{margin-top:30px;border-radius:var(--r-lg);overflow:hidden;aspect-ratio:4/3;box-shadow:var(--shadow)}
.rzl__slika img{width:100%;height:100%;object-fit:cover}
.rzl__gumb{margin-top:30px}
.rzl__lista{list-style:none;margin:0;padding:0;counter-reset:none}
.rzl__i{display:grid;grid-template-columns:auto minmax(0,1fr);gap:clamp(18px,2.4vw,34px);align-items:start;
  padding:clamp(22px,2.4vw,32px) 0;border-top:1px solid var(--line)}
.rzl__i:last-child{border-bottom:1px solid var(--line)}
.rzl__br{font-size:clamp(2.6rem,4.4vw,3.8rem);font-weight:500;letter-spacing:.02em;line-height:.9;min-width:2.1ch;
  color:transparent;-webkit-text-stroke:1.5px var(--purple);transition:color .45s var(--ease-out)}
.rzl__i h3{transition:transform .45s var(--ease-out)}
.rzl__i p{margin-top:8px;color:var(--ink-2);line-height:1.6;font-size:1rem;max-width:52ch}
.rzl__i:hover .rzl__br{color:var(--purple)}
.rzl__i:hover h3{transform:translateX(6px)}
.on-dark .rzl__i{border-color:var(--line-2)}
.on-dark .rzl__br{-webkit-text-stroke-color:var(--teal)}
.on-dark .rzl__i:hover .rzl__br{color:var(--teal)}
@media (max-width:900px){
  .rzl{grid-template-columns:1fr}
  .rzl__ljepilo{position:static}
}

/* =========================================================================
   Završni poziv (.zpv) — gradijentni blok, karta Hrvatske od točkica
   ========================================================================= */
.zpv{position:relative;isolation:isolate;overflow:hidden;border-radius:var(--r-xl);
  padding:clamp(40px,6vw,96px) clamp(26px,5vw,80px);color:#fff;min-height:clamp(320px,34vw,460px);
  display:flex;align-items:center;
  background:linear-gradient(125deg,var(--purple) 0%, #6e5638 48%, var(--indigo) 100%);box-shadow:var(--shadow-lg)}
.zpv__t{position:relative;z-index:2;max-width:min(600px,58%)}
.zpv--bez .zpv__t, .zpv--krugovi .zpv__t{max-width:720px}
.zpv h2{color:#fff;margin-top:14px}
.zpv .eyebrow{color:var(--teal)}
.zpv .lead{margin-top:18px;color:rgba(255,255,255,.8)}
.zpv__gumbi{display:flex;flex-wrap:wrap;gap:14px;margin-top:32px}
.zpv__karta{position:absolute;z-index:1;right:3%;top:50%;translate:0 -50%;width:min(540px,44%)}
.hrkarta{width:100%;height:auto;overflow:visible}
.hrkarta__mreza{fill:none;stroke:rgba(255,255,255,.26);stroke-width:4.4;stroke-linecap:round}
.hrkarta__tocka{fill:var(--teal);stroke:#fff;stroke-width:2}
.hrkarta__val{fill:none;stroke:var(--teal);stroke-width:2;transform-box:fill-box;transform-origin:center;
  animation:karta-val 3s var(--ease-out) var(--k,0s) infinite}
@keyframes karta-val{0%{transform:scale(.7);opacity:.9}80%,100%{transform:scale(3.2);opacity:0}}
.zpv__krug{position:absolute;border-radius:50%;z-index:0;pointer-events:none;filter:blur(2px)}
.zpv__krug--1{width:420px;height:420px;right:-120px;top:-160px;background:radial-gradient(closest-side, rgba(232,212,174,.45), transparent)}
.zpv__krug--2{width:300px;height:300px;right:18%;bottom:-170px;background:radial-gradient(closest-side, rgba(201,171,126,.55), transparent)}
@media (max-width:860px){
  .zpv{flex-direction:column;align-items:flex-start}
  .zpv__t{max-width:100%}
  .zpv__karta{position:relative;translate:none;right:auto;top:auto;width:100%;max-width:420px;margin:30px auto -10px;opacity:.95}
}
@media (prefers-reduced-motion:reduce){.hrkarta__val{animation:none;opacity:0}}

/* Objekti — gumb ispod karusela */
.okrug__dno{display:flex;justify-content:center;margin-top:clamp(24px,3vw,40px)}

/* =========================================================================
   Kontakt forma — raspored „naslov lijevo, obrazac desno” i napomena
   ========================================================================= */
.forma__napomena{margin-top:18px;font-size:.95rem;font-weight:500;color:var(--purple)}
.forma--uz-tekst{max-width:none;display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);padding:0;overflow:hidden}
.forma--uz-tekst .forma__t{position:relative;isolation:isolate;overflow:hidden;margin:0;
  padding:clamp(30px,4vw,64px);display:flex;flex-direction:column;justify-content:center;
  background:linear-gradient(155deg,var(--purple) 0%, #6e5638 55%, var(--indigo) 100%);color:#fff}
.forma--uz-tekst .forma__t::after{content:"";position:absolute;z-index:-1;width:360px;height:360px;right:-140px;bottom:-140px;border-radius:50%;
  background:radial-gradient(closest-side, rgba(232,212,174,.4), transparent)}
.forma--uz-tekst .forma__t::before{content:"";position:absolute;z-index:-1;inset:0;opacity:.5;
  background-image:radial-gradient(rgba(255,255,255,.22) 1.2px, transparent 1.5px);background-size:18px 18px;
  -webkit-mask-image:linear-gradient(to top, #000, transparent 70%);mask-image:linear-gradient(to top, #000, transparent 70%)}
.forma--uz-tekst .forma__t h2{color:#fff}
.forma--uz-tekst .forma__t .eyebrow{color:var(--teal)}
.forma--uz-tekst .forma__t p{color:rgba(255,255,255,.8)}
.forma--uz-tekst .forma__tijelo{padding:clamp(24px,3.4vw,52px)}
@media (max-width:900px){.forma--uz-tekst{grid-template-columns:1fr}}

/* Uvod i završni poziv — opis u više odlomaka */
.uvk__lead p + p, .zpv__opis p + p{margin-top:.75em}

/* =========================================================================
   Vremenska crta (.vcr) — godine na vodoravnoj crti, kartice ispod
   ========================================================================= */
.vcr{list-style:none;margin:0;padding:0;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);
  gap:clamp(18px,3vw,44px);position:relative}
.vcr::before{content:"";position:absolute;left:0;right:0;top:calc(clamp(3.2rem,6vw,5.4rem) + 22px);height:2px;
  background:linear-gradient(90deg,var(--purple),var(--teal) 70%,transparent);opacity:.55}
.vcr__god{font-size:clamp(3.2rem,6vw,5.4rem);font-weight:500;letter-spacing:.02em;line-height:1;
  background:linear-gradient(120deg,var(--purple) 10%,var(--purple-lt) 60%,var(--teal));
  -webkit-background-clip:text;background-clip:text;color:transparent}
.vcr__god[style]{background:none;-webkit-background-clip:border-box;background-clip:border-box}
.vcr__tocka{display:block;position:relative;width:18px;height:18px;margin:13px 0 26px;border-radius:50%;
  background:var(--white);border:4px solid var(--purple);box-shadow:0 0 0 8px rgba(168,135,90,.12)}
.vcr__kartica{background:var(--white);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;
  box-shadow:var(--shadow-sm);transition:transform .5s var(--ease-out), box-shadow .5s var(--ease-out)}
.vcr__i{display:flex;flex-direction:column}
.vcr__i .vcr__kartica{flex:1}
.vcr__kartica:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
.vcr__media{aspect-ratio:16/10;overflow:hidden}
.vcr__media img{width:100%;height:100%;object-fit:cover;transition:transform 1.1s var(--ease-out)}
.vcr__kartica:hover .vcr__media img{transform:scale(1.05)}
.vcr__t{padding:clamp(20px,2.2vw,30px)}
.vcr__tekst{margin-top:10px;color:var(--ink-2);line-height:1.65}
.vcr__tekst p + p{margin-top:.7em}
.vcr__tekst strong, .vcr__tekst b{color:var(--purple)}
.vcr__kraj{margin:clamp(40px,5vw,72px) auto 0;max-width:760px;text-align:center;
  font-size:clamp(1.3rem,2.2vw,1.9rem);font-weight:500;letter-spacing:.02em;line-height:1.3;color:var(--ink-2)}
.vcr__kraj p:last-child{color:var(--purple)}
.on-dark .vcr__kartica{background:rgba(255,255,255,.06);border-color:var(--line-2)}
.on-dark .vcr__tocka{background:var(--plum);border-color:var(--teal)}
.on-dark .vcr__kraj{color:rgba(255,255,255,.75)}
.on-dark .vcr__kraj p:last-child{color:var(--teal)}
@media (max-width:760px){
  .vcr{grid-auto-flow:row;padding-left:34px}
  .vcr::before{left:8px;right:auto;top:8px;bottom:0;width:2px;height:auto;
    background:linear-gradient(180deg,var(--purple),var(--teal) 80%,transparent)}
  .vcr__tocka{position:absolute;left:-34px;top:calc(clamp(3.2rem,6vw,5.4rem) / 2 - 9px);margin:0}
  .vcr__i{position:relative}
  .vcr__god{margin-bottom:16px}
}

/* =========================================================================
   Velika izjava (.viz) — manifest u krupnim redovima
   ========================================================================= */
.viz{position:relative;overflow:hidden;isolation:isolate}
.viz__sjaj{position:absolute;border-radius:50%;z-index:-1;pointer-events:none}
.viz__sjaj--1{width:640px;height:640px;left:-220px;top:-260px;background:radial-gradient(closest-side, rgba(140,109,64,.45), transparent)}
.viz__sjaj--2{width:520px;height:520px;right:-180px;bottom:-240px;background:radial-gradient(closest-side, rgba(232,212,174,.28), transparent)}
.viz__grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(36px,6vw,110px);align-items:start}
.viz__glava h2{margin-top:16px}
.viz__glava .lead{margin-top:18px}
.viz__uvod{margin-top:22px;font-size:clamp(1.05rem,1.4vw,1.25rem);line-height:1.6;color:var(--ink-2);max-width:36ch}
.viz__redovi{display:grid;gap:4px}
.viz__redovi li{font-size:clamp(1.9rem,4.2vw,3.6rem);font-weight:500;letter-spacing:.02em;line-height:1.08;
  color:transparent;-webkit-text-stroke:1.5px var(--purple);transition:color .5s var(--ease-out)}
.viz__redovi li:hover{color:var(--purple)}
.viz__redovi li:last-child{color:var(--purple);-webkit-text-stroke:0}
.viz__redovi li[style]{-webkit-text-stroke:0}
.viz__tekst{margin-top:clamp(26px,3vw,40px);font-size:1.08rem;line-height:1.7;color:var(--ink-2);max-width:56ch}
.viz__zakljucak{margin-top:22px;display:inline-flex;align-items:center;gap:12px;padding:14px 22px;border-radius:999px;
  font-weight:500;font-size:clamp(1rem,1.3vw,1.15rem);background:rgba(168,135,90,.08);color:var(--purple)}
.on-dark .viz__uvod, .on-dark .viz__tekst{color:rgba(255,255,255,.75)}
.on-dark .viz__redovi li{-webkit-text-stroke-color:rgba(255,255,255,.7)}
.on-dark .viz__redovi li:hover{color:#fff}
.on-dark .viz__redovi li:last-child{-webkit-text-stroke:0;color:transparent;
  background:linear-gradient(100deg,var(--teal),#f1e6d0 60%,var(--purple-lt));-webkit-background-clip:text;background-clip:text}
.on-dark .viz__zakljucak{background:rgba(255,255,255,.1);color:#fff}
@media (max-width:900px){.viz__grid{grid-template-columns:1fr}}

/* =========================================================================
   Put od–do (.put) — tekst + kartica s animiranim lukom
   ========================================================================= */
.put{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(36px,5vw,90px);align-items:center}
.put--lijevo .put__kartica{order:-1}
.put__t h2{margin-top:14px}
.put__t .lead{margin-top:16px}
.put__tekst{margin-top:20px;color:var(--ink-2);font-size:1.05rem;line-height:1.7}
.put__tekst p + p{margin-top:.8em}
.put__tekst strong, .put__tekst b{color:var(--ink)}
.put__gumb{margin-top:30px}
.put__kartica{position:relative;aspect-ratio:400/260;border-radius:var(--r-xl);overflow:hidden;isolation:isolate;
  background:
    radial-gradient(60% 80% at 15% 90%, rgba(232,212,174,.25), transparent 70%),
    radial-gradient(60% 80% at 90% 20%, rgba(201,171,126,.35), transparent 70%),
    linear-gradient(140deg,#2a2521 0%, var(--plum) 45%, var(--indigo) 100%);
  box-shadow:var(--shadow-lg)}
.put__kartica::before{content:"";position:absolute;inset:0;z-index:-1;opacity:.55;
  background-image:radial-gradient(rgba(255,255,255,.18) 1.1px, transparent 1.4px);background-size:16px 16px}
.put__luk{position:absolute;inset:0;width:100%;height:100%}
.put__trag{fill:none;stroke:rgba(255,255,255,.14);stroke-width:2}
.put__crta{fill:none;stroke-width:3;stroke-linecap:round;stroke-dasharray:2 10;animation:put-teci 1.6s linear infinite}
@keyframes put-teci{to{stroke-dashoffset:-24}}
.put__avion{fill:#fff;filter:drop-shadow(0 0 6px rgba(255,255,255,.9))}
.put__km{position:absolute;left:50%;top:9%;translate:-50% 0;padding:7px 14px;border-radius:999px;
  font-size:.82rem;font-weight:500;letter-spacing:.04em;color:var(--plum);background:var(--teal);
  box-shadow:0 10px 24px -10px rgba(232,212,174,.8);white-space:nowrap}
.put__mjesto{position:absolute;display:flex;flex-direction:column;align-items:center;gap:4px;color:#fff;text-align:center;translate:-50% -22px}
.put__mjesto--od{left:14.5%;top:67.7%}
.put__mjesto--do{left:85.5%;top:35.4%}
.put__pin{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:#fff;
  box-shadow:0 0 0 7px rgba(255,255,255,.14), 0 12px 24px -10px rgba(0,0,0,.6);margin-bottom:6px}
.put__pin .zastava{width:26px;height:auto;border-radius:3px}
.put__pin:empty::after{content:"";width:12px;height:12px;border-radius:50%;background:var(--purple)}
.put__mjesto b{font-size:1rem;letter-spacing:.02em}
.put__mjesto small{font-size:.76rem;color:rgba(255,255,255,.7)}
.on-dark .put__tekst{color:rgba(255,255,255,.75)}
.on-dark .put__tekst strong{color:#fff}
@media (max-width:900px){
  .put{grid-template-columns:1fr}
  .put--lijevo .put__kartica{order:0}
}
@media (max-width:480px){.put__mjesto b{font-size:.88rem}.put__pin{width:36px;height:36px}}
@media (prefers-reduced-motion:reduce){.put__crta{animation:none}}

/* Split sekcija — razmak između odlomaka glavnog teksta */
.why__left .lead p + p{margin-top:.8em}

/* =============================================================================
   Dijeljenje blog objave (.dijeli)
   ============================================================================= */
.dijeli{display:flex;flex-wrap:wrap;align-items:center;gap:14px 20px;margin-top:44px;padding:22px 24px;
  border:1px solid var(--line);border-radius:var(--r);background:#fff}
.dijeli__t{font-weight:500;color:var(--ink);letter-spacing:.02em}
.dijeli__gumbi{display:flex;flex-wrap:wrap;gap:10px;margin-left:auto}
.dijeli__g{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:44px;height:44px;padding:0;
  border-radius:999px;border:1px solid var(--line);background:#fff;color:var(--ink);cursor:pointer;
  transition:transform .2s,background .2s,color .2s,border-color .2s}
.dijeli__g svg{width:19px;height:19px}
.dijeli__g:hover,.dijeli__g:focus-visible{transform:translateY(-2px);color:#fff;border-color:transparent}
.dijeli__g--fb:hover,.dijeli__g--fb:focus-visible{background:#1877f2}
.dijeli__g--wa:hover,.dijeli__g--wa:focus-visible{background:#25d366}
.dijeli__g--in:hover,.dijeli__g--in:focus-visible{background:#0a66c2}
.dijeli__g--x:hover,.dijeli__g--x:focus-visible{background:#000}
.dijeli__g--mail:hover,.dijeli__g--mail:focus-visible,.dijeli__g--link:hover,.dijeli__g--link:focus-visible{background:var(--purple)}
.dijeli__g--sustav{padding:0 18px 0 14px;font:inherit;font-weight:500;font-size:.92rem;background:var(--purple);color:#fff;border-color:transparent}
.dijeli__g--sustav:hover{background:var(--purple-2)}
.dijeli__ok{display:none}
.dijeli__g.is-ok{background:var(--teal-dk);color:#fff;border-color:transparent}
.dijeli__g.is-ok .dijeli__ik{display:none}
.dijeli__g.is-ok .dijeli__ok{display:block}
.dijeli__poruka{flex-basis:100%;font-size:.88rem;color:var(--teal-dk);min-height:0}
.dijeli__poruka:empty{display:none}
@media (max-width:600px){
  .dijeli{padding:18px}
  .dijeli__gumbi{margin-left:0}
}

/* =============================================================================
   Ocjena objave (.ocj) i komentari (.kom)
   ============================================================================= */
.meta__ocjena{display:inline-flex;align-items:center;gap:5px;color:inherit}
.meta__ocjena svg{width:15px;height:15px;color:#f2b33d}
.meta__ocjena--kom svg{color:currentColor}
a.meta__ocjena:hover{color:var(--purple)}

.ocj{display:flex;flex-wrap:wrap;align-items:center;gap:16px 28px;margin-top:48px;padding:26px 28px;
  border-radius:var(--r);background:linear-gradient(120deg,var(--plum),var(--purple) 130%);color:#fff;position:relative;overflow:hidden}
.ocj::after{content:"";position:absolute;right:-60px;top:-80px;width:220px;height:220px;border-radius:50%;
  background:radial-gradient(circle,rgba(232,212,174,.35),transparent 70%);pointer-events:none}
.ocj__t{display:flex;flex-direction:column;gap:4px;position:relative;z-index:1}
.ocj__naslov{font-weight:500;font-size:1.15rem;letter-spacing:.02em}
.ocj__sazetak{font-size:.9rem;color:rgba(255,255,255,.75)}
.ocj__sazetak b{color:#fff;font-size:1.05rem}
.ocj__zvjezdice{display:flex;flex-direction:row-reverse;gap:4px;margin-left:auto;position:relative;z-index:1}
.ocj__z{width:42px;height:42px;padding:6px;border:0;background:none;color:rgba(255,255,255,.28);cursor:pointer;
  transition:transform .2s var(--ease-out),color .15s}
.ocj__z svg{width:100%;height:100%;display:block}
.ocj__z.is-on{color:#f2b33d}
.ocj__zvjezdice:hover .ocj__z{color:rgba(255,255,255,.28)}
.ocj__zvjezdice .ocj__z:hover,.ocj__zvjezdice .ocj__z:hover ~ .ocj__z,
.ocj__zvjezdice .ocj__z:focus-visible,.ocj__zvjezdice .ocj__z:focus-visible ~ .ocj__z{color:#ffd166}
.ocj__z:hover{transform:scale(1.15)}
.ocj__z:focus-visible{outline:2px solid var(--teal);outline-offset:2px;border-radius:8px}
.ocj.is-salje .ocj__zvjezdice{opacity:.6;pointer-events:none}
.ocj.is-ocijenjeno .ocj__z.is-on{animation:ocjPop .45s var(--ease-out)}
@keyframes ocjPop{40%{transform:scale(1.3)}}
.ocj__moja{flex-basis:100%;font-size:.86rem;color:var(--teal);position:relative;z-index:1}
.ocj__moja:empty{display:none}
@media (max-width:600px){
  .ocj{padding:22px 20px}
  .ocj__zvjezdice{margin-left:0}
  .ocj__z{width:46px;height:46px}
}

.kom{margin-top:64px;padding-top:44px;border-top:1px solid var(--line)}
.kom__naslov{display:flex;align-items:center;gap:12px;font-size:clamp(1.5rem,2.4vw,1.9rem)}
.kom__naslov svg{width:28px;height:28px;color:var(--purple)}
.kom__naslov span{display:inline-grid;place-items:center;min-width:32px;height:32px;padding:0 10px;border-radius:999px;
  background:rgba(168,135,90,.1);color:var(--purple);font-size:.95rem}
.kom__prazno{margin-top:14px;color:var(--ink-3)}
.kom__lista{list-style:none;margin:28px 0 0;padding:0;display:grid;gap:18px}
.kom__i{display:grid;grid-template-columns:46px 1fr;gap:16px;padding:22px;border:1px solid var(--line);border-radius:var(--r);background:#fff}
.kom__av{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;font-weight:500;font-size:1.1rem;color:#fff;
  background:linear-gradient(135deg,var(--purple),var(--purple-lt))}
.kom__av--brend{background:linear-gradient(135deg,var(--teal-dk),var(--teal));width:38px;height:38px}
.kom__av--brend svg{width:20px;height:20px;color:#fff}
.kom__tijelo{min-width:0}
.kom__meta{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;font-size:.88rem;color:var(--ink-3)}
.kom__meta b{color:var(--ink);font-size:1rem}
.kom__oznaka{font-size:.7rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--teal-dk);
  background:rgba(232,212,174,.18);padding:3px 9px;border-radius:999px}
.kom__tekst{margin-top:8px;color:var(--ink-2);line-height:1.7;overflow-wrap:anywhere}
.kom__tekst p + p{margin-top:.7em}
.kom__odg{display:grid;grid-template-columns:38px 1fr;gap:14px;margin-top:18px;padding:16px 18px;border-radius:var(--r-sm);
  background:var(--cream);border-left:3px solid var(--teal)}
.kom__forma{margin-top:36px;padding:clamp(22px,4vw,36px);border-radius:var(--r);background:#fff;border:1px solid var(--line);box-shadow:0 18px 40px -30px rgba(42,37,33,.35);display:grid;gap:18px}
.kom__forma h3{font-size:1.35rem}
.kom__upute{margin-top:-10px;font-size:.9rem;color:var(--ink-3)}
.kom__forma .polje input,.kom__forma .polje textarea{background:var(--cream)}
.kom__red{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.kom__forma .btn{justify-self:start}
.kom__greska{padding:12px 16px;border-radius:var(--r-sm);background:#fdf3f2;color:#a5342a;font-weight:500;font-size:.92rem}
.kom__hvala{display:flex;gap:14px;align-items:flex-start;margin-top:32px;padding:22px 24px;border-radius:var(--r);
  background:rgba(232,212,174,.16);color:var(--ink)}
.kom__hvala svg{width:26px;height:26px;flex:none;color:var(--teal-dk)}
@media (max-width:600px){
  .kom__red{grid-template-columns:1fr}
  .kom__i{grid-template-columns:38px 1fr;padding:18px;gap:12px}
  .kom__i > .kom__av{width:38px;height:38px;font-size:.95rem}
  .kom__odg{grid-template-columns:1fr;padding:14px}
  .kom__odg > .kom__av{display:none}
}

/* =============================================================================
   Obavijesti me kad dođete u moj grad (.ogr) — karta s gradovima + obrazac
   ============================================================================= */
.ogr{position:relative;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(28px,4vw,64px);align-items:center;
  padding:clamp(28px,4.5vw,64px);border-radius:var(--r-lg);overflow:hidden;color:#fff;isolation:isolate;
  background:radial-gradient(120% 90% at 0% 0%,#3a2f26 0%,transparent 60%),linear-gradient(135deg,var(--plum) 0%,#3a2f26 55%,var(--indigo) 100%);
  box-shadow:var(--shadow-lg)}
.ogr::before{content:"";position:absolute;inset:auto auto -140px -120px;width:420px;height:420px;border-radius:50%;z-index:-1;
  background:radial-gradient(closest-side,rgba(232,212,174,.22),transparent)}
.ogr--bez-karte{grid-template-columns:minmax(0,720px)}
.ogr__karta{position:relative}
.ogr .hrkarta__mreza{stroke:rgba(255,255,255,.18)}
.hrkarta--izbor .hrkarta__ime{font:600 15px/1 var(--font);fill:rgba(255,255,255,.72);paint-order:stroke;stroke:rgba(42,37,33,.55);stroke-width:4px;
  pointer-events:none;transition:fill .2s}
.hrkarta--izbor .hrkarta__ime--dostava{font-weight:500;font-size:16px;fill:#fff}
.hrkarta__izbor{cursor:pointer;outline:none}
.hrkarta__izbor .hrkarta__meta{fill:transparent}
.hrkarta__izbor .hrkarta__tocka{fill:rgba(255,255,255,.2);stroke:rgba(255,255,255,.85);stroke-width:2;
  transform-box:fill-box;transform-origin:center;transition:fill .2s,transform .25s var(--ease-out),stroke .2s}
.hrkarta__izbor:hover .hrkarta__tocka,.hrkarta__izbor:focus-visible .hrkarta__tocka{fill:var(--purple-lt);transform:scale(1.35)}
.hrkarta__izbor:hover .hrkarta__ime,.hrkarta__izbor:focus-visible .hrkarta__ime{fill:#fff}
.hrkarta__izbor.is-odabran .hrkarta__tocka{fill:#f2b33d;stroke:#fff;transform:scale(1.5)}
.hrkarta__izbor.is-odabran .hrkarta__ime{fill:#ffd166;font-weight:500}
.hrkarta__dostava .hrkarta__tocka{fill:#5fd39a;stroke:#fff;stroke-width:2.5}
.hrkarta__dostava .hrkarta__val{stroke:#5fd39a}
.ogr__legenda{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:6px;font-size:.82rem;color:rgba(255,255,255,.65)}
.ogr__legenda span{display:inline-flex;align-items:center;gap:8px}
.ogr__l{width:11px;height:11px;border-radius:50%;border:2px solid rgba(255,255,255,.85);background:rgba(255,255,255,.2)}
.ogr__l--dostava{background:#5fd39a;border-color:#fff}
.ogr__t h2{color:#fff;margin-top:14px}
.ogr .eyebrow{color:var(--teal)}
.ogr__opis{margin-top:16px;color:rgba(255,255,255,.78)}
.ogr__opis p + p{margin-top:.7em}
.ogr__forma{margin-top:28px;display:grid;gap:16px}
.ogr__polja{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.ogr__polje--email{grid-column:1 / -1}
.ogr__polje > span{display:block;font-size:.78rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:rgba(255,255,255,.7);margin-bottom:7px}
.ogr__polje input,.ogr__polje select{width:100%;font:inherit;font-size:.98rem;color:#fff;background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.2);border-radius:var(--r-sm);padding:13px 16px;outline:none;transition:border-color .2s,background .2s,box-shadow .2s}
.ogr__polje select{appearance:none;-webkit-appearance:none;padding-right:42px;cursor:pointer;
  background:rgba(255,255,255,.08) url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path d='M1 1l5 5 5-5' fill='none' stroke='%23ffffff' stroke-width='2'/></svg>") no-repeat right 16px center}
.ogr__polje select option{color:var(--ink);background:#fff}
.ogr__polje input::placeholder{color:rgba(255,255,255,.45)}
.ogr__polje input:focus,.ogr__polje select:focus{border-color:var(--teal);background-color:rgba(255,255,255,.13);box-shadow:0 0 0 4px rgba(232,212,174,.2)}
.ogr__polje.is-greska input,.ogr__polje.is-greska select{border-color:#ff8a80}
.ogr em,.ogr__greska-privola{display:block;margin-top:6px;font-size:.82rem;font-style:normal;font-weight:500;color:#ffb4ab}
.ogr__drugo[hidden]{display:none}
.ogr__privola{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:start;font-size:.9rem;line-height:1.5;color:rgba(255,255,255,.8);cursor:pointer}
.ogr__privola input{width:20px;height:20px;margin:1px 0 0;accent-color:var(--teal)}
.ogr__privola a{color:var(--teal);text-decoration:underline}
.ogr__privola.is-greska span{color:#ffb4ab}
.ogr__forma .btn{justify-self:start;margin-top:4px}
.ogr__greska{padding:12px 16px;border-radius:var(--r-sm);background:rgba(255,138,128,.16);color:#ffd0cb;font-weight:500;font-size:.92rem}
.ogr .kc-rc{color:rgba(255,255,255,.5)}
.ogr .kc-rc a{color:rgba(255,255,255,.75)}
.ogr__hvala{display:flex;gap:16px;align-items:center;margin-top:28px;padding:22px 24px;border-radius:var(--r);
  background:rgba(232,212,174,.16);border:1px solid rgba(232,212,174,.35);font-size:1.05rem;font-weight:500}
.ogr__hvala svg{width:30px;height:30px;flex:none;padding:5px;border-radius:50%;background:var(--teal);color:var(--plum)}
@media (max-width:900px){
  .ogr{grid-template-columns:1fr}
  .ogr__karta{order:2;max-width:460px;width:100%;margin-inline:auto}
}
@media (max-width:520px){
  .ogr__polja{grid-template-columns:1fr}
  .ogr__forma .btn{justify-self:stretch}
  .hrkarta--izbor .hrkarta__ime{font-size:19px}
  .hrkarta--izbor .hrkarta__ime--dostava{font-size:19px}
}
.ogr__polja:has(.ogr__drugo[hidden]) > .ogr__polje:first-child,.ogr__polja > .ogr__polje:only-of-type{grid-column:1 / -1}
.ogr .hrkarta__mreza{stroke:rgba(255,255,255,.22)}

.ocj__z.is-prosjek{color:rgba(242,179,61,.55)}
@media (max-width:600px){
  .dijeli__gumbi{gap:8px}
  .dijeli__g{min-width:40px;height:40px}
  .dijeli__g--sustav{flex-basis:100%;height:44px}
}

/* =========================================================================
   BOLKICA — završni sloj
   Galerijski izgled po uzoru na ručno rađene japanske brendove: bijelo,
   tanke crte, mala velika slova s razmakom, centrirani naslovi sekcija,
   ravni gumbi. Stoji na kraju datoteke da nadjača osnovna pravila.
   ========================================================================= */
::selection{background:var(--teal);color:var(--ink)}

/* tipografija */
.eyebrow{font-size:.7rem;font-weight:500;letter-spacing:.28em;color:var(--purple)}
.eyebrow::before{width:22px;height:1px}
.lead{color:var(--ink-2);font-weight:300;letter-spacing:.03em}
.muted{color:var(--ink-2)}
p{font-weight:400}
.serif{font-family:var(--serif);font-style:italic;letter-spacing:0}

/* naslov sekcije: centriran kad pored njega nema gumba ili navigacije */
.sec-head h2{margin-top:10px;text-transform:uppercase;font-size:clamp(1.15rem,1.9vw,1.6rem);letter-spacing:.16em}
.sec-head h2 em{text-transform:none;font-size:1.25em}
.sec-head:not(:has(> :nth-child(2))){justify-content:center;text-align:center}
.sec-head:not(:has(> :nth-child(2))) .sec-head__t{margin-inline:auto}
.sec-head:not(:has(> :nth-child(2))) p{margin-inline:auto}
.sec-head:not(:has(> :nth-child(2))) .eyebrow::before{display:none}

/* gumbi — ravni, mala velika slova */
.btn{
  --bg:var(--ink);--fg:#fff;
  border-radius:0;padding:15px 34px;font-weight:400;font-size:.78rem;letter-spacing:.2em;text-transform:uppercase;
  border:1px solid var(--bg);
}
.btn:hover{transform:none;box-shadow:none;--bg:#3b3b3b}
.btn svg{width:15px;height:15px}
.btn--ghost{--bg:transparent;--fg:var(--ink);border-color:var(--ink)}
.btn--ghost:hover{--bg:var(--ink);--fg:#fff}
.btn--light{--bg:#fff;--fg:var(--ink);border-color:#fff}
.btn--light:hover{--bg:transparent;--fg:#fff;box-shadow:none}
.btn--outline-lt{--bg:transparent;--fg:#fff;border-color:rgba(255,255,255,.7)}
.btn--outline-lt:hover{--bg:#fff;--fg:var(--ink)}
.btn--teal{--bg:var(--purple);--fg:#fff;border-color:var(--purple)}
.btn--teal:hover{--bg:var(--purple-2)}
.btn--zlatni{--bg:var(--purple);--fg:#fff;border-color:var(--purple)}
.btn--zlatni:hover{--bg:var(--purple-2)}
.btn--sm{padding:11px 22px;font-size:.72rem}
.arrow-link{font-weight:400;font-size:.76rem;letter-spacing:.2em;text-transform:uppercase;color:var(--ink);border-bottom:1px solid var(--ink)}
.arrow-link:hover{border-color:var(--purple);color:var(--purple)}
.on-dark .arrow-link{color:#fff;border-color:rgba(255,255,255,.6)}
.chip{border-radius:0;font-weight:400;letter-spacing:.18em;background:var(--cream-2);color:var(--ink)}
.chip--glass{background:rgba(255,255,255,.85);color:var(--ink);border:0}
.meta{font-weight:400;letter-spacing:.08em}

/* gornja traka */
.topbar{background:var(--cream-2);color:var(--ink);font-size:.72rem;font-weight:400;letter-spacing:.14em;border-bottom:1px solid var(--line)}
.topbar__in{height:38px;display:grid;grid-template-columns:1fr auto 1fr}
.topbar__msg{justify-content:center;text-align:center}
.topbar__right{justify-content:flex-end}
.topbar a:hover{color:var(--purple)}
.topbar__soc{color:var(--ink)}
@media (max-width:760px){.topbar__in{grid-template-columns:1fr}.topbar__soc--lijevo{display:none}.topbar__msg{font-size:.66rem;letter-spacing:.08em}}

/* zaglavlje: logo u sredini, izbornik ispod */
.header{background:#fff;border-bottom:1px solid var(--line)}
.header.is-stuck{box-shadow:none;border-color:var(--line)}
.header__in{display:grid;grid-template-columns:1fr auto 1fr;height:92px}
.header.is-stuck .header__in{height:64px}
.header__lijevo{display:flex;align-items:center;gap:14px}
.header__cta{font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;border-bottom:1px solid currentColor;padding-bottom:2px}
.header__cta:hover{color:var(--purple)}
.header__act{justify-content:flex-end;gap:4px}
.logo{flex-direction:column;gap:2px;text-align:center;font-weight:400;font-size:1.55rem;letter-spacing:.32em;text-transform:uppercase;line-height:1}
.logo > span:last-child{display:flex;flex-direction:column;align-items:center;padding-left:.32em}
.logo small{font-family:var(--serif);font-style:italic;text-transform:none;letter-spacing:.04em;font-size:.95rem;font-weight:400;color:var(--ink-2);margin-top:6px}
.logo__mark{width:auto;height:auto;background:none;box-shadow:none;border-radius:0}
.logo__mark svg{width:26px;height:26px;color:var(--purple)}
.header.is-stuck .logo__mark{display:none}
.header.is-stuck .logo small{display:none}
.header.is-stuck .logo{font-size:1.25rem}
.icon-btn{border:0;border-radius:0;width:40px;height:40px}
.icon-btn:hover{background:none;color:var(--purple)}
.cart-badge{background:var(--ink);border-color:#fff;font-weight:500}

.nav{display:block;border-top:1px solid var(--line)}
.nav__in{display:flex;justify-content:center;align-items:center;gap:6px;flex-wrap:wrap}
.nav a{border-radius:0;color:var(--ink);font-weight:400;font-size:.78rem;letter-spacing:.2em;text-transform:uppercase;padding:15px 16px}
.nav a:hover{background:none;color:var(--purple)}
.nav a.is-active{color:var(--purple)}
.nav a.is-active::after{left:16px;right:16px;bottom:9px;height:1px;background:currentColor}
.nav__grupa{position:relative}
.nav__vrh{display:inline-flex;align-items:center;gap:5px}
.nav__vrh svg{width:12px;height:12px;transition:transform .3s var(--ease)}
.nav__grupa:hover .nav__vrh svg,.nav__grupa:focus-within .nav__vrh svg{transform:rotate(180deg)}
.nav__pod{
  position:absolute;left:50%;top:100%;transform:translate(-50%,8px);z-index:5;min-width:230px;
  opacity:0;visibility:hidden;transition:opacity .25s var(--ease),transform .3s var(--ease-out),visibility .25s;
}
.nav__grupa:hover .nav__pod,.nav__grupa:focus-within .nav__pod{opacity:1;visibility:visible;transform:translate(-50%,0)}
.nav__pod-in{background:#fff;border:1px solid var(--line);padding:10px 0;display:flex;flex-direction:column;box-shadow:var(--shadow)}
.nav__pod a{padding:10px 22px;font-size:.74rem;letter-spacing:.14em;white-space:nowrap}
.nav__pod a::after{display:none}
.header.is-stuck .nav a{padding-block:11px}
@media (max-width:1080px){
  .nav{display:none}
  .header__in{height:72px}
  .header__cta{display:none}
  .logo{font-size:1.2rem}
  .logo__mark{display:none}
  .logo small{font-size:.8rem;margin-top:3px}
}

/* mobilni izbornik — svijetli */
.mmenu{background:#fff;color:var(--ink)}
.mmenu__top .logo{color:var(--ink)}
.mmenu__top .icon-btn{color:var(--ink)}
.mmenu__top .icon-btn:hover{background:none;color:var(--purple)}
.mmenu nav{overflow:auto}
.mmenu nav a{font-size:1rem;font-weight:400;letter-spacing:.2em;text-transform:uppercase;padding:16px 0;border-bottom:1px solid var(--line)}
.mmenu__pod{display:flex;flex-direction:column;padding:4px 0 10px 16px;border-bottom:1px solid var(--line)}
.mmenu .mmenu__pod a{font-size:.8rem;letter-spacing:.14em;padding:9px 0;border:0;color:var(--ink-2)}
.mmenu__foot .topbar__soc{color:var(--ink)}

/* hero — bez zaobljenja, mekši veo, središnji tekst */
.hero{border-radius:0;background:var(--cream-2)}
.hero__media::after{background:linear-gradient(to top, rgba(33,30,27,.55) 0%, rgba(33,30,27,.12) 45%, rgba(33,30,27,0) 70%)}
.hero__in{padding-bottom:calc(84px + clamp(30px,5vh,60px))}
.hero h1{font-size:clamp(1.7rem,3.6vw,2.9rem);letter-spacing:.12em;text-transform:uppercase;text-shadow:0 2px 18px rgba(0,0,0,.18)}
.hero h1 em{text-transform:none;letter-spacing:0;font-size:1.15em}
.hero p{font-weight:300;letter-spacing:.04em;color:rgba(255,255,255,.9)}
.hero__meta .m{letter-spacing:.16em;text-transform:uppercase;font-size:.7rem}
.hero__bar{background:none;backdrop-filter:none;border-top:0}
.hero__bar-in{height:84px}
.hero__arrows button{border-radius:0;border-color:rgba(255,255,255,.6)}
.hero__arrows button:hover{background:#fff;color:var(--ink);transform:none}
.hero__thumb{border-radius:0}
.hero__thumb .prog{background:#fff;height:2px}
.hero__dots button{border-radius:0;height:2px;width:18px}
.hero__dots button.is-active{background:#fff;width:36px}
@media (max-width:900px){.hero{border-radius:0}}

/* traka s porukama — tanka, svijetla */
.marquee{background:var(--cream-2);color:var(--ink);padding-block:13px;border-block:1px solid var(--line)}
.marquee span{font-weight:400;letter-spacing:.24em;font-size:.76rem}
.marquee span::after{width:4px;height:4px;background:var(--purple)}
.marquee--tamna{background:var(--ink);color:#fff;border-color:var(--ink)}
.marquee--tamna span::after{background:var(--teal)}

/* kartice i mreže */
.ncard__media,.scard__media,.pcard-lg,.iggrid a,.iggrid>span,.why__media,.clanak__hero{border-radius:0;box-shadow:none}
.ncard__media::after{background:linear-gradient(to top, rgba(33,30,27,.6) 0%, rgba(33,30,27,0) 50%)}
.ncard__body h3,.scard h3{font-weight:400;letter-spacing:.06em}
.scard__chip{background:#fff;color:var(--ink)}
.scard:hover h3{color:var(--purple)}
.pcard-lg::after{background:linear-gradient(to top,rgba(33,30,27,.75) 8%,rgba(33,30,27,0) 62%)}
.iggrid a::after{background-color:rgba(33,30,27,.35)}
.usp{border-radius:0}
.usp__ico{border-radius:50%;background:var(--cream-2) !important;color:var(--purple) !important}
.usp__i h3{font-weight:400;letter-spacing:.12em;text-transform:uppercase;font-size:.86rem}
.bcard{border-radius:0}
.bcard:hover{transform:none;box-shadow:none;border-color:var(--purple)}
.stat b{background:none;color:var(--ink);-webkit-text-fill-color:currentColor;font-weight:300;font-family:var(--serif);font-style:italic;letter-spacing:0;font-size:clamp(2.2rem,4vw,3.2rem)}
.stat span{letter-spacing:.14em;text-transform:uppercase;font-size:.7rem}
.why__badge{border-radius:0}
.filters button{border-radius:0;font-weight:400;letter-spacing:.14em;text-transform:uppercase;font-size:.72rem}
.filters button.is-active{background:var(--ink);border-color:var(--ink)}
.filters button:hover{border-color:var(--ink);color:var(--ink)}
.paginacija a,.paginacija span{border-radius:0;font-weight:400}
.paginacija .is-active{background:var(--ink);border-color:var(--ink)}
.rail-nav button{border-radius:0}
.rail-nav button:hover{transform:none}
.kont__i,.lok__i,.faq__i,.forma,.stupac--kartica,.karta{border-radius:0;box-shadow:none}
.kont__i:hover,.lok__i:hover{transform:none;box-shadow:none;border-color:var(--purple)}
.kont__ico,.lok__ico{border-radius:50%;background:var(--cream-2);color:var(--purple);box-shadow:none}
.faq__q{font-weight:400;letter-spacing:.04em}
.faq__n{border-radius:0}
.polje input,.polje textarea,.polje select{border-radius:0;background-color:#fff;border-color:rgba(33,33,33,.18)}
.polje input:focus,.polje textarea:focus,.polje select:focus{border-color:var(--ink);box-shadow:none}
.polje > span,.polje--radio legend{font-weight:400;letter-spacing:.14em;text-transform:uppercase;font-size:.7rem}
.forma__ok,.forma__greska{border-radius:0}

/* newsletter — svijetla kutija */
.news__box{border-radius:0;box-shadow:none;background:var(--cream-2);color:var(--ink)}
.news__box::before,.news__box::after{display:none}
.news__t h2{color:var(--ink);text-transform:uppercase;letter-spacing:.14em;font-size:clamp(1.2rem,2vw,1.6rem)}
.news__t p{color:var(--ink-2)}
.news__box .eyebrow{color:var(--purple)}
.field{border-radius:0;background:#fff;border-color:rgba(33,33,33,.2);backdrop-filter:none}
.field:focus-within{border-color:var(--ink);background:#fff}
.field input{color:var(--ink)}
.field input::placeholder{color:var(--ink-3)}
.news__form small{color:var(--ink-3)}
.news__form .kc-rc{color:var(--ink-3)}
.news__form .kc-rc a{color:var(--ink-2)}
.news__ok svg{color:var(--purple)}
.news__box--slika{color:#fff}
.news__box--slika .news__t h2{color:#fff}
.news__box--slika .news__t p{color:rgba(255,255,255,.85)}

/* podnožje — svijetlo, s tankom crtom */
.footer{background:var(--cream-2);color:var(--ink-2);border-top:1px solid var(--line)}
.footer .logo{color:var(--ink);align-items:flex-start;text-align:left}
.footer .logo > span:last-child{align-items:flex-start;padding-left:0}
.footer .logo small{color:var(--ink-2)}
.footer h4{color:var(--ink);font-weight:400;letter-spacing:.24em;font-size:.72rem}
.footer li a:hover{color:var(--purple);padding-left:0}
.footer__soc a{border-radius:0;border-color:rgba(33,33,33,.2);color:var(--ink)}
.footer__soc a:hover{background:var(--ink);color:#fff;border-color:var(--ink)}
.footer__contact svg{color:var(--purple)}
.footer__bot{border-color:var(--line);font-size:.74rem;letter-spacing:.08em}
.footer__bot a:hover{color:var(--purple)}

.totop{border-radius:0;background:var(--ink);box-shadow:none}
.totop:hover{background:var(--purple)}

/* pozadine sekcija */
.poz-bijela{background:var(--cream-2)}
.poz-zlatna{background:#f3e9d6}
.poz-sljiva{background:var(--plum)}
.poz-indigo{background:var(--indigo)}
.poz-gradijent{background:linear-gradient(125deg,#8c6d40 0%,#a8875a 50%,#c9ab7e 100%)}
.media-fallback{background:linear-gradient(135deg,#efe7da,#e2d3bb 60%,#cdb38a)}
.cms-skriveno{border-radius:0}

/* stranice */
.pagehead{text-align:center}
.pagehead h1{text-transform:uppercase;letter-spacing:.16em;font-size:clamp(1.5rem,3vw,2.3rem)}
.pagehead .krumb{justify-content:center}
.pagehead .lead{margin-inline:auto}
.clanak__tijelo{font-weight:400}
.clanak__tijelo h2{font-weight:400;letter-spacing:.06em}
.clanak__tijelo blockquote{border-radius:0;font-family:var(--serif);font-size:1.35rem;background:var(--cream-2);border-left-color:var(--purple)}
.rte blockquote{border-left-color:var(--purple)}
.embed{border-radius:0}

/* izlog webshopa na svijetloj pozadini (osnova je imala tamnu) */
.shop{background:#fff;color:var(--ink)}
.shop .sec-head h2{color:var(--ink)}
.shop .lead{color:var(--ink-2)}
.shop.poz-bijela{background:var(--cream-2)}
.news__box:not(.news__box--slika) .eyebrow{color:var(--purple)}
.why h2{font-size:clamp(1.5rem,2.6vw,2.2rem);letter-spacing:.06em}

/* uvod s kolažem — mirniji: ravne slike, tanki okvir, manji naslov */
.uvk__sjaj{display:none}
.uvk__h{font-size:clamp(1.9rem,3.6vw,3rem);letter-spacing:.06em;line-height:1.2}
.uvk__s{border-radius:0;border-width:0;box-shadow:none;animation:none !important;transform:none !important}
.uvk__s--3{border-radius:50%;border:6px solid #fff}
.uvk__kap{display:none}
.uvk__oznaka{border-radius:0;box-shadow:none;border:1px solid var(--line)}
.uvk__oznaka b{background:none;-webkit-text-fill-color:currentColor;color:var(--ink);font-family:var(--serif);font-style:italic;font-weight:400;letter-spacing:0;white-space:nowrap}

/* vremenska crta — oznake mogu biti i riječi, ne samo godine */
.vcr::before{top:calc(2.4rem + 22px);background:var(--line);opacity:1;height:1px}
.vcr__god{font-family:var(--serif);font-style:italic;font-weight:400;letter-spacing:0;font-size:clamp(1.8rem,2.6vw,2.4rem);
  line-height:2.4rem;height:2.4rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;background:none;-webkit-text-fill-color:currentColor;color:var(--purple)}
.vcr__tocka{width:13px;height:13px;border-width:1px;box-shadow:none;background:var(--purple)}
.vcr__kartica{border-radius:0;box-shadow:none}
.vcr__kartica:hover{transform:none;box-shadow:none;border-color:var(--purple)}
.vcr__kraj{font-family:var(--serif);font-style:italic;font-weight:400;letter-spacing:0}
@media (max-width:760px){.vcr::before{background:var(--line)}.vcr__tocka{top:calc(1.2rem - 6px)}}

/* završni poziv — ravni blok u toplim tonovima */
.zpv{border-radius:0;box-shadow:none;background:linear-gradient(120deg,#8c6d40 0%,#a8875a 55%,#c9ab7e 100%)}
.zpv h2{text-transform:uppercase;letter-spacing:.14em;font-size:clamp(1.3rem,2.4vw,2rem)}
.zpv .eyebrow{color:#fff;opacity:.85}
.zpv .btn--teal,.zpv .btn:not(.btn--outline-lt):not(.btn--ghost){--bg:#fff;--fg:var(--ink);border-color:#fff}
.zpv__krug--1{background:radial-gradient(closest-side, rgba(255,255,255,.18), transparent)}
.zpv__krug--2{background:radial-gradient(closest-side, rgba(255,255,255,.14), transparent)}
.polje--kvacica > span{text-transform:none;letter-spacing:.02em;font-size:.9rem}
