/* ===================================================================
   Nasmeh srca — skupni slog (večstranska struktura)
   Načela: tipografija + gib, brez okvirjev, mono verzalke, en zlat poudarek
   =================================================================== */
:root{
  --bg:#fdfbf4;
  --bg-soft:#f7f0e0;
  --ink:#2b2416;
  --ink-soft:#6f6046;
  --gold:#b07d1a;
  --gold-bright:#cb9c3d;
  --line:rgba(43,36,22,.14);
  --font-h:"Cormorant Garamond",Georgia,serif;
  --font-b:"Inter",system-ui,-apple-system,sans-serif;
  --font-m:"Space Mono","SF Mono",Menlo,monospace;
  --font-brand:"Pacifico",cursive;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
[id]{scroll-margin-top:130px} /* fiksna glava + pasica ne prekrijeta cilja sidra */
body{font-family:var(--font-b);color:var(--ink);background:var(--bg);line-height:1.75;font-size:16.5px;overflow-x:hidden;-webkit-font-smoothing:antialiased}
::selection{background:rgba(203,156,61,.3)}
h1,h2,h3,h4{font-family:var(--font-h);font-weight:600;line-height:1.14;color:var(--ink)}
img{max-width:100%}
a{color:var(--gold)}
.container{width:min(1120px,92%);margin:0 auto}
.narrow{width:min(780px,92%);margin:0 auto}
.section-pad{padding:6.5rem 0}
section{position:relative}

/* ---------- tipografske oznake ---------- */
.kicker{display:block;font-family:var(--font-m);text-transform:uppercase;letter-spacing:.28em;font-size:.7rem;font-weight:400;color:var(--gold);margin-bottom:1.2rem}
.section-title{font-size:clamp(2.1rem,4.6vw,3.2rem);margin-bottom:1.5rem;letter-spacing:-.01em}
.rule{border:0;border-top:1px solid var(--line);margin:0}

/* ---------- obvestilo: stran v izdelavi (zacasno) ---------- */
.wip-banner{position:fixed;top:0;left:0;right:0;z-index:120;height:38px;display:flex;align-items:center;justify-content:center;background:linear-gradient(90deg,#e9b53e,#f0c869);color:#3a2f14;font-weight:600;font-size:.88rem;letter-spacing:.02em;padding:0 1rem;text-align:center;box-shadow:0 1px 6px rgba(0,0,0,.15)}

/* ---------- nav ---------- */
.nav{position:fixed;top:38px;left:0;right:0;z-index:100;padding:1.1rem 0;transition:background .4s,box-shadow .4s,padding .4s}
.nav.scrolled{background:rgba(253,251,244,.92);backdrop-filter:blur(14px);box-shadow:0 1px 0 var(--line);padding:.65rem 0}
.nav-inner{display:flex;align-items:center;justify-content:space-between;gap:1rem}
.brand{display:flex;align-items:center;gap:.6rem;text-decoration:none;color:var(--ink);transition:opacity .5s,transform .5s}
.brand.brand-hidden{opacity:0;transform:translateY(-8px);pointer-events:none}
.brand img{width:38px;height:38px;border-radius:50%}
.brand .brand-name{font-family:var(--font-brand);font-size:1.25rem;line-height:1;transform:translateY(-2px)}
.nav-links{display:flex;gap:1.9rem;list-style:none;align-items:center}
.nav-links a{text-decoration:none;font-family:var(--font-m);text-transform:uppercase;letter-spacing:.14em;font-size:.82rem;color:var(--ink-soft);transition:color .3s;position:relative;padding:.2rem 0}
.nav-links a::after{content:"";position:absolute;left:0;bottom:-3px;height:1.5px;width:0;background:var(--gold);transition:width .35s}
.nav-links a:hover{color:var(--ink)}
.nav-links a:hover::after,.nav-links a.active::after{width:100%}
.nav-links a.active{color:var(--ink)}
.nav-cta{border:1.5px solid var(--gold);border-radius:99px;padding:.5rem 1.2rem!important;color:var(--gold)!important;transition:background .3s,color .3s!important}
.nav-cta:hover{background:var(--gold);color:#fff!important}
.nav-cta::after{display:none!important}
.burger{display:none;background:none;border:0;cursor:pointer;width:42px;height:42px;position:relative;z-index:102}
.burger span{display:block;width:24px;height:2px;background:var(--ink);margin:5px auto;border-radius:2px;transition:.35s}
.nav.open .burger span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav.open .burger span:nth-child(2){opacity:0}
.nav.open .burger span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
@media(max-width:1000px){
  .burger{display:block}
  .nav-links{position:fixed;top:0;left:0;right:0;height:100vh;height:100dvh;background:var(--bg);flex-direction:column;justify-content:center;gap:1.5rem;transform:translateY(-100%);visibility:hidden;transition:transform .45s cubic-bezier(.7,0,.2,1),visibility 0s .45s;z-index:101;overscroll-behavior:contain}
  .nav.open .nav-links{transform:translateY(0);visibility:visible;transition:transform .45s cubic-bezier(.7,0,.2,1),visibility 0s}
  .nav-links a{font-size:1rem;padding:.55rem .9rem}
  .nav-links .nav-cta{padding:.65rem 1.5rem!important;margin-top:.4rem}
  body.menu-open{overflow:hidden}
}

/* ---------- gumbi ---------- */
.btn{display:inline-flex;align-items:center;gap:.6rem;padding:.95rem 2.1rem;border-radius:99px;text-decoration:none;font-weight:600;font-size:.95rem;letter-spacing:.02em;transition:transform .3s,box-shadow .3s,background .3s,color .3s}
.btn .arr{transition:transform .3s}
.btn:hover .arr{transform:translateX(5px)}
.btn:hover{transform:translateY(-2px)}
.btn-gold{background:var(--gold-bright);color:#2b2005;box-shadow:0 14px 34px -14px rgba(176,125,26,.55)}
.btn-gold:hover{background:#d8a944}
.btn-ghost{border:1.5px solid var(--gold);color:var(--ink)}
.btn-ghost:hover{background:rgba(203,156,61,.12)}

/* ---------- naslovnica: fotografija čez cel zaslon ---------- */
.hero{position:relative;min-height:100svh;display:flex;align-items:center;overflow:hidden}
.hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 40%;animation:kenburns 11s ease-out forwards}
@keyframes kenburns{from{transform:scale(1.1)}to{transform:scale(1)}}
.hero-veil{position:absolute;inset:0;background:
  linear-gradient(180deg,rgba(255,252,240,.15) 0%,rgba(255,252,240,0) 30%),
  radial-gradient(ellipse 75% 85% at 42% 46%,rgba(255,252,242,.82) 0%,rgba(255,252,242,.45) 45%,rgba(255,252,242,0) 75%);
  opacity:0;animation:veil 1.8s 1.5s ease forwards}
@keyframes veil{to{opacity:1}}
.hero-inner{position:relative;z-index:2;width:min(1120px,92%);margin:0 auto;display:grid;grid-template-columns:1fr 1.35fr;gap:3rem;align-items:center;padding:8rem 0 5rem}
.hero-logo{text-align:center}
.hero-logo img{width:clamp(110px,14vw,150px);height:auto;border-radius:50%;filter:drop-shadow(0 14px 34px rgba(120,85,20,.35))}
.hero-brand{font-family:var(--font-brand);font-size:clamp(2.5rem,5.5vw,3.6rem);color:#2b2005;line-height:1.35;margin-top:.6rem}
.hero-brand-sub{font-family:var(--font-m);text-transform:uppercase;letter-spacing:.34em;font-size:.72rem;color:var(--gold);margin-top:.2rem}
.hero-text{text-align:center}
.hero-text h1{font-size:clamp(2.7rem,6.2vw,4.6rem);font-weight:600;color:#241c0c;letter-spacing:-.01em}
.hero-text h1 em{font-style:italic;color:var(--gold)}
.hero-text .hero-sub{font-family:var(--font-h);font-style:italic;font-size:clamp(1.35rem,2.6vw,1.9rem);color:#8a6410;margin-top:.7rem}
.hero-divider{display:flex;align-items:center;justify-content:center;gap:1rem;margin:1.5rem 0;color:var(--gold)}
.hero-divider::before,.hero-divider::after{content:"";height:1px;flex:0 0 90px;background:linear-gradient(90deg,transparent,var(--gold));opacity:.6}
.hero-divider::after{background:linear-gradient(90deg,var(--gold),transparent)}
.hero-text .lead{color:#4d4128;font-size:clamp(1rem,2vw,1.18rem);max-width:540px;font-weight:500;margin:0 auto}
.hero-text .lead+.lead{margin-top:.7rem}
.hero-actions{display:flex;gap:1rem;flex-wrap:wrap;margin-top:2.2rem;justify-content:center}
.hero .btn-ghost{color:#fff;border-color:rgba(255,255,255,.85);text-shadow:0 1px 10px rgba(60,45,10,.45);background:rgba(255,255,255,.08);backdrop-filter:blur(3px)}
.hero .btn-ghost:hover{background:rgba(255,255,255,.22);border-color:#fff}
/* zaporedje pojavljanja: najprej fotografija, nato logotip, nato besedila */
.a-logo,.a-1,.a-2,.a-3,.a-4,.a-5,.a-6{opacity:0;animation:rise 1.3s ease-out forwards}
.a-logo{animation-delay:2.2s}
.a-1{animation-delay:3.4s}
.a-2{animation-delay:4.3s}
.a-3{animation-delay:5s}
/* besedilo se po ločnici postopno upočasnjuje in umiri pri »… zdravju, odnosih.« */
.a-4{animation-delay:5.9s}
.a-5{animation-delay:7.4s;animation-duration:1.7s}
/* gumba in »odkrijte več« sta funkcijski del: po premoru, s kratkim prehodom */
.a-6{animation-delay:9.5s;animation-duration:.7s}
@keyframes rise{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}
.scroll-hint{width:fit-content;margin:2.8rem auto 0;color:#fff;font-family:var(--font-m);font-size:.82rem;font-weight:700;letter-spacing:.3em;text-transform:uppercase;text-decoration:none;text-shadow:0 1px 12px rgba(60,45,10,.55);display:flex;flex-direction:column;align-items:center;gap:.5rem;opacity:0;animation:rise .7s 10s ease-out forwards}
.scroll-hint::after{content:"";width:2px;height:44px;background:linear-gradient(180deg,#fff,transparent);animation:drip 2.2s ease-in-out infinite}
@keyframes drip{0%{transform:scaleY(0);transform-origin:top}45%{transform:scaleY(1);transform-origin:top}55%{transform:scaleY(1);transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}
@media(max-width:900px){
  .hero-inner{grid-template-columns:1fr;text-align:center;gap:2rem;padding:8.5rem 0 5.5rem}
  .hero-veil{background:radial-gradient(ellipse 130% 90% at 50% 45%,rgba(255,252,242,.88) 0%,rgba(255,252,242,.55) 55%,rgba(255,252,242,.1) 85%)}
  .hero-text .lead{margin:0 auto}
  .hero-actions{justify-content:center}
  .hero-divider::before,.hero-divider::after{flex:1}
  .scroll-hint{display:none}
}

/* ---------- podstrani: glava strani ---------- */
.page-head{padding:11rem 0 4rem}
.page-head h1{font-size:clamp(2.5rem,5.5vw,4rem);letter-spacing:-.01em;max-width:900px}
.page-head .lead{color:var(--ink-soft);max-width:640px;margin-top:1.2rem;font-size:1.05rem}

/* ---------- citat ---------- */
.quote-band{padding:5rem 0;text-align:center}
.quote-band blockquote{font-family:var(--font-h);font-size:clamp(1.5rem,3.4vw,2.3rem);font-style:italic;font-weight:500;max-width:840px;margin:0 auto}
.quote-band cite{display:block;margin-top:1.2rem;font-family:var(--font-m);font-style:normal;font-size:.68rem;letter-spacing:.3em;text-transform:uppercase;color:var(--gold)}

/* ---------- kazalo zavihkov na naslovnici ---------- */
.index-list{list-style:none;border-top:1px solid var(--line)}
.index-list li{border-bottom:1px solid var(--line)}
.index-list a{display:grid;grid-template-columns:auto 1fr auto;gap:2rem;align-items:baseline;padding:2.1rem .4rem;text-decoration:none;color:var(--ink);transition:padding .35s,background .35s}
.index-list a:hover{padding-left:1.4rem;background:rgba(203,156,61,.06)}
.index-list .num{font-family:var(--font-m);font-size:.72rem;color:var(--gold);letter-spacing:.1em}
.index-list .t{font-family:var(--font-h);font-size:clamp(1.5rem,3vw,2.1rem);font-weight:600;line-height:1.25}
.index-list .d{display:block;font-size:.9rem;color:var(--ink-soft);font-family:var(--font-b);margin-top:.25rem}
.index-list .go{font-size:1.4rem;color:var(--gold);transition:transform .35s;align-self:center}
.index-list a:hover .go{transform:translateX(8px)}
@media(max-width:640px){.index-list a{grid-template-columns:auto 1fr;gap:1rem}.index-list .go{display:none}}

/* ---------- dejstva (mono vrstice) ---------- */
.facts{display:grid;grid-template-columns:repeat(3,1fr);gap:2.5rem;margin-top:3rem}
@media(max-width:800px){.facts{grid-template-columns:1fr;gap:1.6rem}}
.fact{border-top:2px solid var(--gold);padding-top:1.1rem}
.fact b{display:block;font-family:var(--font-h);font-size:1.35rem;font-weight:600;margin-bottom:.3rem}
.fact span{font-size:.9rem;color:var(--ink-soft)}

/* ---------- prosa ---------- */
.prose p{margin-bottom:1.25rem;color:var(--ink-soft)}
.prose p strong{color:var(--ink)}
.prose .signature{font-family:var(--font-h);font-style:italic;font-size:1.15rem;color:var(--ink)}
.big-quote{margin:2.4rem 0;padding:1.6rem 0 1.6rem 2rem;border-left:2px solid var(--gold);font-family:var(--font-h);font-size:1.4rem;font-style:italic;line-height:1.45;color:var(--ink)}
.big-quote .src{font-size:.72rem;font-family:var(--font-m);font-style:normal;letter-spacing:.2em;text-transform:uppercase;color:var(--gold)}

/* ---------- koraki terapije ---------- */
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:2.6rem;margin-top:3.5rem;counter-reset:step}
@media(max-width:1000px){.steps{grid-template-columns:repeat(2,1fr)}}
@media(max-width:580px){.steps{grid-template-columns:1fr}}
.step{border-top:1px solid var(--line);padding-top:1.4rem;position:relative}
.step::before{counter-increment:step;content:counter(step,decimal-leading-zero);font-family:var(--font-m);font-size:.72rem;letter-spacing:.14em;color:var(--gold)}
.step h3{font-size:1.45rem;margin:.5rem 0 .55rem}
.step p{font-size:.9rem;color:var(--ink-soft)}

/* ---------- seznam s kljukicami ---------- */
.check-list{list-style:none;display:grid;gap:0;margin-top:1.5rem;border-top:1px solid var(--line)}
.check-list li{display:flex;gap:1rem;align-items:flex-start;padding:1.15rem .2rem;border-bottom:1px solid var(--line);font-size:.97rem;color:var(--ink-soft);transition:padding .3s}
.check-list li:hover{padding-left:.9rem}
.check-list li::before{content:"—";color:var(--gold);font-weight:700;flex:0 0 auto}

/* ---------- oznake tem ---------- */
.chip-row{display:flex;flex-wrap:wrap;gap:.9rem 1.6rem;margin:1.4rem 0}
.chip{font-family:var(--font-m);font-size:.7rem;text-transform:uppercase;letter-spacing:.16em;color:var(--gold);border-bottom:1px solid rgba(176,125,26,.4);padding-bottom:.25rem}

/* ---------- harmonika (FAQ) ---------- */
details.acc{border-bottom:1px solid var(--line)}
details.acc:first-of-type{border-top:1px solid var(--line)}
details.acc summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:1.4rem;padding:1.4rem .2rem;font-weight:600;font-size:1.02rem;color:var(--ink);transition:color .3s}
details.acc summary:hover{color:var(--gold)}
details.acc summary::-webkit-details-marker{display:none}
details.acc summary .plus{flex:0 0 24px;width:24px;height:24px;position:relative;transition:transform .35s}
details.acc summary .plus::before,details.acc summary .plus::after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--gold);border-radius:2px}
details.acc summary .plus::before{width:15px;height:1.5px}
details.acc summary .plus::after{width:1.5px;height:15px;transition:transform .35s}
details.acc[open] summary .plus{transform:rotate(45deg)}
.acc-body{padding:0 .2rem 1.6rem;color:var(--ink-soft);font-size:.95rem;max-width:720px}
.acc-body p{margin-bottom:.85rem}
.acc-body ul{margin:0 0 .85rem 1.2rem}
.acc-body li{margin-bottom:.4rem}

/* ---------- cenik ---------- */
.price-list{border-top:1px solid var(--line)}
.price-row{display:grid;grid-template-columns:1fr auto;gap:.4rem 2.5rem;align-items:baseline;padding:2rem .3rem;border-bottom:1px solid var(--line);transition:padding .3s,background .3s}
.price-row:hover{padding-left:1.2rem;background:rgba(203,156,61,.05)}
.price-row h3{font-size:1.6rem}
.price-row .p-dur{font-family:var(--font-m);font-size:.68rem;text-transform:uppercase;letter-spacing:.2em;color:var(--gold)}
.price-row .p-desc{grid-column:1;font-size:.92rem;color:var(--ink-soft);max-width:560px}
.price-row .p-amount{grid-column:2;grid-row:1/span 3;font-family:var(--font-h);font-size:2.7rem;font-weight:600;color:var(--ink);white-space:nowrap}
.price-row .p-amount sup{font-size:1.3rem;color:var(--gold)}
@media(max-width:560px){.price-row{grid-template-columns:1fr}.price-row .p-amount{grid-column:1;grid-row:auto}}
.price-note{margin-top:3rem;border-left:2px solid var(--gold);padding:1.2rem 0 1.2rem 2rem;font-size:.95rem;color:var(--ink-soft);max-width:760px}
.price-note strong{color:var(--ink)}

/* ---------- zgodbe / pričevanja ---------- */
.story-section{padding:4.5rem 0}
.story-cat{display:flex;align-items:baseline;gap:1.6rem;margin-bottom:2.2rem}
.story-cat h2{font-size:clamp(2rem,4.5vw,3rem);letter-spacing:.02em}
.story-cat .cnt{font-family:var(--font-m);font-size:.72rem;letter-spacing:.2em;color:var(--gold)}
.t-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:3rem 2.6rem}
@media(max-width:1000px){.t-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.t-grid{grid-template-columns:1fr}}
details.t-card{height:fit-content}
details.t-card summary{cursor:pointer;list-style:none;display:flex;flex-direction:column;align-items:flex-start;gap:.9rem}
details.t-card summary::-webkit-details-marker{display:none}
.t-avatar{width:112px;height:112px;border-radius:50%;overflow:hidden;flex:0 0 auto;transition:transform .4s,box-shadow .4s}
.t-avatar img{width:100%;height:100%;object-fit:cover;display:block}
details.t-card summary:hover .t-avatar{transform:scale(1.05);box-shadow:0 16px 36px -16px rgba(120,85,20,.5)}
details.t-card[open] .t-avatar{box-shadow:0 0 0 2px var(--gold)}
.t-name{font-family:var(--font-h);font-weight:600;font-size:1.35rem;line-height:1.2}
.t-topic{font-family:var(--font-m);font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin-top:.25rem;display:block}
.t-open{font-family:var(--font-m);font-size:.64rem;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-soft);border-bottom:1px solid var(--line);padding-bottom:.2rem;transition:color .3s,border-color .3s}
details.t-card summary:hover .t-open{color:var(--gold);border-color:var(--gold)}
details.t-card[open] .t-open{display:none}
.t-body{padding-top:1rem;color:var(--ink-soft);font-size:.93rem;border-left:2px solid var(--gold);padding-left:1.3rem;margin-top:.4rem}
.t-body p{margin-bottom:.8rem}

/* ---------- o meni ---------- */
.about-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:4.5rem;align-items:start}
@media(max-width:900px){.about-grid{grid-template-columns:1fr}}
.portrait{position:sticky;top:130px;text-align:center}
@media(max-width:900px){.portrait{position:static}}
.portrait img{width:min(380px,100%);height:auto;border-radius:50%;filter:sepia(.25) saturate(1.05) brightness(1.05)}
.portrait h3{font-size:1.8rem;margin-top:.8rem}
.portrait .role{font-family:var(--font-m);color:var(--gold);font-size:.66rem;letter-spacing:.22em;text-transform:uppercase;margin:.4rem 0 1rem}
.portrait p{font-size:.9rem;color:var(--ink-soft)}

/* ---------- ledena gora ---------- */
.iceberg-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:4rem;align-items:center}
@media(max-width:900px){.iceberg-grid{grid-template-columns:1fr}}
.ice-label{font-family:var(--font-m);font-size:10px;letter-spacing:2.5px;font-weight:400}

/* ---------- pravila (reinkarnacija) ---------- */
.rules{display:grid;grid-template-columns:repeat(3,1fr);gap:2.4rem;margin:2.4rem 0}
@media(max-width:760px){.rules{grid-template-columns:1fr}}
.rule-item{border-top:2px solid var(--gold);padding-top:1rem;font-size:.92rem;color:var(--ink-soft)}
.rule-item b{display:block;font-family:var(--font-h);font-size:2rem;color:var(--ink);margin-bottom:.3rem}

/* ---------- kontakt ---------- */
.contact-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0 4rem;margin-top:2rem;border-top:1px solid var(--line)}
@media(max-width:820px){.contact-grid{grid-template-columns:1fr}}
.c-card{display:flex;flex-direction:column;gap:.15rem;padding:1.8rem .2rem;border-bottom:1px solid var(--line);text-decoration:none;color:var(--ink);transition:padding .3s,background .3s}
.c-card:hover{padding-left:1rem;background:rgba(203,156,61,.05)}
.c-card strong{font-family:var(--font-m);font-size:.64rem;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);font-weight:400}
.c-card span{font-family:var(--font-h);font-size:1.45rem;font-weight:600}
.c-card small{color:var(--ink-soft);font-size:.85rem}

/* ---------- CTA pas ---------- */
.cta-band{padding:6rem 0;text-align:center;background:var(--bg-soft)}
.cta-band h2{font-size:clamp(2rem,4.5vw,3rem);margin-bottom:1rem}
.cta-band p{color:var(--ink-soft);max-width:560px;margin:0 auto 2.2rem}
.cta-band .btn{margin:.4rem .35rem}

/* ---------- noga ---------- */
footer{border-top:1px solid var(--line);padding:3rem 0;font-size:.83rem;text-align:center;color:var(--ink-soft)}
footer .f-brand{font-family:var(--font-brand);font-size:1.35rem;color:var(--ink);margin-bottom:.6rem}
footer a{color:var(--ink-soft)}
footer .f-nav{display:flex;justify-content:center;flex-wrap:wrap;gap:1.4rem;margin:1rem 0;list-style:none}
footer .f-nav a{font-family:var(--font-m);font-size:.64rem;letter-spacing:.18em;text-transform:uppercase;text-decoration:none}
footer .f-nav a:hover{color:var(--gold)}
footer .disclaimer{max-width:680px;margin:1.2rem auto 0;font-size:.76rem;color:rgba(111,96,70,.7)}

/* ---------- razkrivanje ob drsenju ---------- */
.reveal{opacity:0;transform:translateY(30px);transition:opacity .9s ease,transform .9s cubic-bezier(.2,.7,.3,1)}
.reveal.visible{opacity:1;transform:none}
.reveal-d1{transition-delay:.12s}.reveal-d2{transition-delay:.24s}.reveal-d3{transition-delay:.36s}

/* ---------- mobilna optimizacija ---------- */
@media(max-width:700px){
  body{font-size:16px}
  .section-pad{padding:3.8rem 0}
  .page-head{padding:8.8rem 0 2.2rem}
  .page-head .lead{margin-top:.9rem;font-size:1rem}
  .section-title{margin-bottom:1.1rem}
  .quote-band{padding:3.2rem 0}
  .cta-band{padding:4rem 0}
  .cta-band p{margin-bottom:1.8rem}
  .hero-inner{padding:7.5rem 0 4rem;gap:1.7rem}
  .scroll-hint{margin-top:2.2rem}
  .big-quote{font-size:1.22rem;padding:.9rem 0 .9rem 1.3rem;margin:1.8rem 0}
  .prose p{margin-bottom:1.05rem}
  .kicker{margin-bottom:.9rem}
  .index-list a{padding:1.4rem .2rem;gap:1rem}
  .index-list .d{font-size:.85rem}
  .facts{margin-top:2.2rem}
  .steps{gap:1.7rem;margin-top:2.2rem}
  .iceberg-grid{gap:2.5rem}
  .about-grid{gap:2.5rem}
  .portrait img{width:min(320px,92%)}
  .price-row{padding:1.5rem .2rem}
  .price-row .p-amount{font-size:2.3rem}
  .price-note{margin-top:2rem;padding:.9rem 0 .9rem 1.3rem}
  .story-section{padding:2.8rem 0}
  .story-cat{margin-bottom:1.6rem}
  .c-card{padding:1.3rem .2rem}
  .c-card span{font-size:1.25rem;overflow-wrap:anywhere}
  footer{padding:2.2rem 0}
}

/* ---------- majhni telefoni: gumbi čez celo širino, kompaktna glava ---------- */
@media(max-width:480px){
  .hero-actions{flex-direction:column;align-items:center;gap:.85rem}
  .hero-actions .btn{width:100%;max-width:330px;justify-content:center}
  .cta-band .btn{display:flex;width:min(100%,330px);margin:.45rem auto;justify-content:center}
  .hero-logo img{width:96px}
  .hero-brand{font-size:2.2rem}
  .hero-text h1{font-size:clamp(2.2rem,10vw,2.7rem)}
  .step h3{font-size:1.3rem}
  .price-row h3{font-size:1.4rem}
}
@media(max-width:380px){
  .wip-banner{font-size:.78rem}
  body{font-size:15.5px}
}
/* zgodbe: na telefonu kompaktne vrstice namesto navpičnih kartic */
@media(max-width:620px){
  .t-grid{gap:1.9rem}
  details.t-card summary{flex-direction:row;align-items:center;gap:1.1rem}
  .t-avatar{width:76px;height:76px}
  .t-name{font-size:1.15rem}
  .t-topic{font-size:.6rem}
  .t-open{margin-left:auto;flex:0 0 auto;font-size:0;border:0;padding:0}
  .t-open::after{content:"+";font-size:1.6rem;color:var(--gold);line-height:1}
  .t-body{font-size:.92rem;padding-left:1.1rem}
}

@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-delay:0s!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  html{scroll-behavior:auto}
  .reveal,.a-logo,.a-1,.a-2,.a-3,.a-4,.a-5,.a-6,.scroll-hint{opacity:1;transform:none}
}
