/*
Theme Name: Plešem zase
Theme URI: https://www.plesem-zase.si/
Author: Lively Studios (Žan Tkalec)
Author URI: https://livelystudios.si/
Description: Enostranska tema za Športno plesno društvo Plešem zase. Besedila in slike urejaš v Videz → Prilagodi, urnik, cene, dogodke, vprašanja, mnenja in otroške vadbe pa v meniju »Plešem zase«.
Version: 1.0.0
Requires at least: 5.4
Requires PHP: 7.2
License: GPL-2.0-or-later
Text Domain: plesem-zase
*/
@font-face{font-family:'Bricolage Grotesque';font-style:normal;font-weight:700 800;font-display:swap;src:url(assets/fonts/bricolage-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Bricolage Grotesque';font-style:normal;font-weight:700 800;font-display:swap;src:url(assets/fonts/bricolage-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Source Sans 3';font-style:normal;font-weight:400 700;font-display:swap;src:url(assets/fonts/source-sans-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Source Sans 3';font-style:normal;font-weight:400 700;font-display:swap;src:url(assets/fonts/source-sans-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
:root{
  --paper:#FBF3EE;        /* warm cream from the plan "Topla svetloba" */
  --card:#ffffff;
  --ink:#151213;
  --ink-2:#5f5452;
  --coral:#F5907F;        /* the hearts in her logo */
  --coral-deep:#B04A3A;   /* coral dark enough for small text on cream */
  --peach:#FFE3D8; --butter:#FFF1CC; --sage:#E4EFE3; --lilac:#ECE6F7;
  --line:rgba(21,18,19,.1);
  --display:"Bricolage Grotesque",system-ui,sans-serif;
  --body:"Source Sans 3",system-ui,sans-serif;
  --gutter:clamp(18px,4vw,56px);
  --ease:cubic-bezier(.16,1,.3,1);
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:80px;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:400 18px/1.55 var(--body);-webkit-font-smoothing:antialiased;overflow-x:hidden}
h1,h2,h3,p{margin:0}
a{color:inherit}
img{display:block;max-width:100%}
:focus-visible{outline:3px solid var(--coral-deep);outline-offset:3px;border-radius:8px}
.wrap{width:min(1240px,100% - 2*var(--gutter));margin-inline:auto}
.eyebrow{display:inline-flex;align-items:center;gap:8px;font:700 13px/1 var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--coral-deep)}
.eyebrow::before{content:"";width:18px;height:2px;border-radius:2px;background:var(--coral)}
.title{margin-top:14px;font:800 clamp(36px,5.2vw,68px)/1.02 var(--display);letter-spacing:-.035em;max-width:18ch;text-wrap:balance}
.lead{margin-top:16px;font-size:clamp(18px,1.5vw,21px);color:var(--ink-2);max-width:52ch}
.sec{padding:clamp(70px,9vw,120px) 0 0}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 26px;border-radius:999px;font:700 17px/1 var(--body);text-decoration:none;transition:transform .35s var(--ease),box-shadow .35s var(--ease),background-color .35s;cursor:pointer;border:0}
.btn:hover{transform:translateY(-2px)}
.btn-main{background:var(--ink);color:#fff}
.btn-main:hover{box-shadow:0 14px 30px -14px rgba(21,18,19,.6)}
.btn-coral{background:var(--coral);color:var(--ink)}
.btn-coral:hover{box-shadow:0 14px 30px -12px rgba(245,144,127,.9)}
.btn-soft{background:var(--card);color:var(--ink);box-shadow:0 0 0 1px var(--line)}
.heart{display:inline-block;width:1em;height:1em;background:var(--coral);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 21s-7.5-4.6-10-9.3C.3 8.4 2.2 4.5 6 4.5c2.2 0 3.6 1.3 4.5 2.6.3.5 1 .5 1.3 0 .9-1.3 2.3-2.6 4.5-2.6 3.8 0 5.7 3.9 4 7.2C19.5 16.4 12 21 12 21z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 21s-7.5-4.6-10-9.3C.3 8.4 2.2 4.5 6 4.5c2.2 0 3.6 1.3 4.5 2.6.3.5 1 .5 1.3 0 .9-1.3 2.3-2.6 4.5-2.6 3.8 0 5.7 3.9 4 7.2C19.5 16.4 12 21 12 21z'/%3E%3C/svg%3E") center/contain no-repeat}

/* nav: slides away on the way down, back on the way up */
.nav{position:fixed;inset:0 0 auto;z-index:30;display:flex;align-items:center;gap:26px;padding:12px var(--gutter);transition:background-color .4s,box-shadow .4s,transform .45s var(--ease)}
.nav.solid{background:rgba(251,243,238,.88);backdrop-filter:blur(14px);box-shadow:0 1px 0 var(--line)}
.nav.hide{transform:translateY(-110%)}
.nav .logo img{height:44px;width:auto}
.nav nav{display:flex;gap:22px;font-weight:600;font-size:16px;color:var(--ink-2)}
.nav nav a{text-decoration:none}
.nav nav a:hover{color:var(--ink)}
.nav .btn{margin-left:auto;min-height:44px;padding:0 20px;font-size:16px}
@media (max-width:980px){.nav nav{display:none}}

/* hero */
.hero{padding:120px 0 40px}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(30px,5vw,70px);align-items:center}
.places{display:flex;flex-wrap:wrap;gap:8px}
.places span{padding:8px 13px;border-radius:999px;background:var(--card);box-shadow:0 0 0 1px var(--line);font-weight:600;font-size:15px}
.hero h1{margin-top:22px;font:800 clamp(48px,7vw,104px)/.95 var(--display);letter-spacing:-.045em;text-wrap:balance}
.hero h1 em{font-style:normal;color:var(--coral-deep)}
.hero .lead{margin-top:22px}
.hero .btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.hero-pic{position:relative;justify-self:center;width:min(100%,470px)}
.hero-pic .frame{border-radius:240px 240px 32px 32px;overflow:hidden;aspect-ratio:2/3;background:var(--peach);box-shadow:0 40px 80px -40px rgba(176,74,58,.55)}
.hero-pic .frame img{width:100%;height:100%;object-fit:cover}
.next-float{position:absolute;left:-34px;bottom:34px;max-width:290px;padding:16px 18px;border-radius:20px;background:var(--card);box-shadow:0 24px 50px -24px rgba(21,18,19,.45);display:flex;gap:12px;align-items:center}
.next-float b{display:block;font:700 13px/1 var(--body);letter-spacing:.1em;text-transform:uppercase;color:var(--coral-deep)}
.next-float strong{display:block;margin-top:5px;font:800 20px/1.15 var(--display)}
.next-float span{display:block;font-size:15px;color:var(--ink-2)}
.next-float .dot{flex:none;width:12px;height:12px;border-radius:50%;background:#2fb36b;box-shadow:0 0 0 5px rgba(47,179,107,.18)}
@media (max-width:900px){.hero-grid{grid-template-columns:1fr}.hero-pic{width:min(86%,420px)}.next-float{left:-6%}}

/* schedule */
.filter{display:flex;flex-wrap:wrap;gap:8px;margin-top:30px}
.filter button{min-height:44px;padding:0 18px;border-radius:999px;border:0;background:var(--card);box-shadow:0 0 0 1px var(--line);font:600 16px/1 var(--body);color:var(--ink);cursor:pointer}
.filter button[aria-pressed="true"]{background:var(--ink);color:#fff;box-shadow:none}
.sched{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:22px}
.next{padding:28px;border-radius:28px;background:linear-gradient(140deg,var(--peach),var(--butter));display:flex;flex-direction:column;gap:6px}
.next .lbl{font:700 13px/1 var(--body);letter-spacing:.12em;text-transform:uppercase;color:var(--coral-deep)}
.next .when{margin-top:6px;font:800 clamp(30px,3.6vw,46px)/1.05 var(--display);letter-spacing:-.03em}
.next .where{font-size:19px;color:var(--ink-2)}
.next .note{margin-top:6px;font-size:16px;color:var(--ink-2)}
.next .btns{display:flex;flex-wrap:wrap;gap:10px;padding-top:18px}
.next-pic{flex:1;min-height:180px;margin-top:22px;border-radius:20px;overflow:hidden}
.next-pic img{width:100%;height:100%;object-fit:cover;object-position:50% 40%}
@media (max-width:960px){.next-pic{display:none}}
.list{border-radius:28px;background:var(--card);box-shadow:0 0 0 1px var(--line);padding:8px 22px}
.row{display:grid;grid-template-columns:118px 1fr auto;gap:12px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line)}
.row:last-child{border-bottom:0}
.row .d{font:800 18px/1.1 var(--display)}
.row .t{font-weight:600}
.row .p{color:var(--ink-2);font-size:16px}
.row .tag{padding:5px 10px;border-radius:999px;background:var(--peach);color:var(--coral-deep);font:700 13px/1 var(--body)}
.row .tag.full{background:#eee;color:#6b6362}
.row .tag.today{background:var(--ink);color:#fff}
.venues{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:18px}
.venue{padding:20px;border-radius:22px;background:var(--card);box-shadow:0 0 0 1px var(--line)}
.venue h3{font:800 22px/1.1 var(--display)}
.venue p{margin-top:6px;font-size:16px;color:var(--ink-2)}
.venue a{display:inline-flex;margin-top:12px;font-weight:700;color:var(--coral-deep);text-decoration:none}
.venue[hidden]{display:none}
.hint{margin-top:14px;font-size:16px;color:var(--ink-2)}
@media (max-width:960px){.sched{grid-template-columns:1fr}.venues{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.venues{grid-template-columns:1fr}.row{grid-template-columns:100px 1fr;align-items:start}.row .d{font-size:17px;padding-top:2px}.row .tag{grid-column:2;justify-self:start}}

/* prices */
.prices{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:34px}
.price{position:relative;padding:30px 28px;border-radius:28px;background:var(--card);box-shadow:0 0 0 1px var(--line);display:flex;flex-direction:column}
.price.best{background:var(--ink);color:#fff;box-shadow:none}
.price .badge{position:absolute;top:-13px;left:24px;padding:7px 12px;border-radius:999px;background:var(--coral);color:var(--ink);font:700 13px/1 var(--body)}
.price h3{font:700 19px/1.2 var(--body)}
.price .amount{margin-top:14px;font:800 58px/1 var(--display);letter-spacing:-.04em}
.price .amount small{font:600 18px/1 var(--body);letter-spacing:0;opacity:.7}
.price ul{margin:18px 0 0;padding:0;list-style:none;display:grid;gap:8px;font-size:16px}
.price li{display:flex;gap:10px}
.price li::before{content:"";flex:none;width:8px;height:8px;margin-top:8px;border-radius:50%;background:var(--coral)}
.price.best li{color:rgba(255,255,255,.85)}
.domzale{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;margin-top:18px;padding:22px 26px;border-radius:24px;border:2px dashed rgba(176,74,58,.35)}
.domzale p{font-size:17px}
.rules{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:18px;font-size:16px;color:var(--ink-2)}
@media (max-width:900px){.prices{grid-template-columns:1fr}.rules{grid-template-columns:1fr}}

/* split blocks */
.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,70px);align-items:center}
.split.rev .pic{order:2}
.pic{border-radius:32px;overflow:hidden;box-shadow:0 40px 80px -46px rgba(21,18,19,.5)}
.pic img{width:100%;height:100%;object-fit:cover;aspect-ratio:4/5}
.body-text{margin-top:16px;color:var(--ink-2);font-size:18px;max-width:54ch}
.body-text p+p{margin-top:12px}
.video{position:relative;margin-top:26px;border-radius:24px;overflow:hidden;aspect-ratio:16/9;background:#1b1516}
.video button{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;border:0;background:linear-gradient(0deg,rgba(21,18,19,.55),rgba(21,18,19,.1)),var(--poster) center/cover;color:#fff;font:700 17px/1.2 var(--body);cursor:pointer}
.video button i{width:68px;height:68px;border-radius:50%;background:var(--coral);display:grid;place-items:center}
.video button i::after{content:"";margin-left:5px;border-left:20px solid var(--ink);border-top:12px solid transparent;border-bottom:12px solid transparent}
.video button small{font-weight:400;font-size:14px;opacity:.85}
.video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
@media (max-width:900px){.split{grid-template-columns:1fr}.split.rev .pic{order:0}.pic img{aspect-ratio:4/4.4}}

/* kids */
.kids{padding:clamp(34px,5vw,60px);border-radius:36px;background:linear-gradient(140deg,var(--sage),var(--butter))}
.kid-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:28px}
.kid{padding:22px;border-radius:22px;background:rgba(255,255,255,.85)}
.kid h3{font:800 22px/1.1 var(--display)}
.kid p{margin-top:6px;color:var(--ink-2);font-size:16px}
.kid .when{margin-top:12px;font:700 18px/1.2 var(--body);color:var(--ink)}
.kid .cost{margin-top:4px;font:800 26px/1 var(--display)}
.kids .btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px;align-items:center}
.kids .btns small{color:var(--ink-2);font-size:15px}
@media (max-width:900px){.kid-grid{grid-template-columns:1fr}}

/* voices */
.quotes{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:30px}
.quote{padding:28px;border-radius:28px;background:var(--card);box-shadow:0 0 0 1px var(--line);display:flex;flex-direction:column}
.quote .heart{font-size:26px}
.quote p{margin-top:14px;font-size:18px}
.quote b{margin-top:auto;padding-top:16px;font-weight:700}
.quote b span{font-weight:400;color:var(--ink-2)}
.strip{display:flex;gap:14px;margin-top:30px;overflow-x:auto;padding-bottom:6px;scrollbar-width:none}
.strip::-webkit-scrollbar{display:none}
.strip img{flex:1 0 200px;min-width:0;aspect-ratio:2/3;object-fit:cover;border-radius:22px}
@media (max-width:900px){.quotes{grid-template-columns:1fr}}

/* irena */
.badges{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}
.badges span{padding:8px 13px;border-radius:999px;background:var(--peach);color:var(--coral-deep);font-weight:700;font-size:15px}
.socials{display:flex;flex-wrap:wrap;gap:16px;margin-top:22px;font-weight:700}
.socials a{color:var(--coral-deep);text-decoration:none}

/* events */
.events{display:grid;grid-template-columns:1fr 1fr 1.2fr;gap:18px;margin-top:30px}
.event{padding:26px;border-radius:26px;background:var(--card);box-shadow:0 0 0 1px var(--line)}
.event .date{font:800 34px/1 var(--display);color:var(--coral-deep)}
.event h3{margin-top:10px;font:700 19px/1.25 var(--body)}
.event p{margin-top:6px;color:var(--ink-2);font-size:16px}
.event a{display:inline-flex;margin-top:14px;font-weight:700;color:var(--ink)}
.event.biz{background:var(--ink);color:#fff;box-shadow:none}
.event.biz p{color:rgba(255,255,255,.8)}
.event.biz .btn{margin-top:16px}
@media (max-width:900px){.events{grid-template-columns:1fr}}

/* faq */
.faq-list{margin-top:26px;border-top:1px solid var(--line)}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{display:flex;justify-content:space-between;gap:20px;padding:22px 4px;cursor:pointer;list-style:none;font:800 clamp(19px,1.8vw,24px)/1.25 var(--display)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";flex:none;width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:var(--card);box-shadow:0 0 0 1px var(--line);font:600 20px/1 var(--body);transition:transform .35s var(--ease)}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details p{padding:0 54px 22px 4px;color:var(--ink-2);max-width:66ch}

/* sign up */
.signup{position:relative;overflow:hidden;border-radius:40px;background:var(--ink);color:#fff;display:grid;grid-template-columns:1.1fr .9fr}
.signup .txt{padding:clamp(34px,6vw,76px)}
.signup .eyebrow{color:var(--coral)}
.signup .title{color:#fff}
.signup .lead{color:rgba(255,255,255,.8)}
.signup .btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.signup .more{margin-top:22px;display:grid;gap:8px;font-size:17px;color:rgba(255,255,255,.85)}
.signup .more a{color:#fff;font-weight:700}
.signup .bye{margin-top:24px;font:800 22px/1.2 var(--display);color:var(--coral)}
.signup .ph img{width:100%;height:100%;object-fit:cover}
@media (max-width:900px){.signup{grid-template-columns:1fr}.signup .ph{max-height:360px}}

/* footer */
.foot{margin-top:clamp(70px,9vw,110px);padding:44px 0 110px;border-top:1px solid var(--line);font-size:15px;color:var(--ink-2)}
.foot-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:30px}
.foot img{height:56px;width:auto}
.foot h4{margin:0 0 10px;font:700 15px/1 var(--body);color:var(--ink)}
.foot a{color:var(--ink)}
.foot .fine{margin-top:30px;display:grid;gap:6px;font-size:14px}
@media (max-width:860px){.foot-grid{grid-template-columns:1fr}}

/* phone: sticky sign-up bar */
.mbar{position:fixed;left:12px;right:12px;bottom:12px;z-index:25;display:none;gap:10px;padding:8px;border-radius:999px;background:rgba(21,18,19,.92);backdrop-filter:blur(10px);transform:translateY(140%);transition:transform .45s var(--ease)}
.mbar.on{transform:none}
.mbar a{flex:1;min-height:48px;display:flex;align-items:center;justify-content:center;border-radius:999px;font-weight:700;text-decoration:none}
.mbar a:first-child{background:var(--coral);color:var(--ink)}
.mbar a:last-child{color:#fff}
@media (max-width:700px){.mbar{display:flex}}

/* hero extras */
.places .sal{background:var(--coral);box-shadow:none;color:var(--ink)}
.free{display:flex;align-items:center;gap:10px;margin-top:18px;font-size:16px;color:var(--ink-2)}
.free .heart{flex:none;font-size:20px;animation:beat 1.6s ease-in-out infinite}
.hero h1{font-size:clamp(44px,6.2vw,92px)}
.hero h1 span{display:block}

/* numbers strip */
.stats{display:grid;grid-template-columns:repeat(3,1fr) 1.3fr;gap:14px;margin-top:clamp(40px,6vw,70px)}
.stat{padding:22px 24px;border-radius:24px;background:var(--card);box-shadow:0 0 0 1px var(--line)}
.stat b{display:block;font:800 clamp(40px,4.4vw,58px)/1 var(--display);letter-spacing:-.04em;color:var(--coral-deep)}
.stat span{display:block;margin-top:6px;font-weight:600;color:var(--ink-2)}
.stat.lead-by{display:flex;align-items:center;gap:16px;background:var(--ink);color:#fff;box-shadow:none}
.stat.lead-by img{flex:none;width:76px;height:76px;border-radius:50%;object-fit:cover;object-position:50% 20%;border:3px solid var(--coral)}
.stat.lead-by small{display:block;font:700 12px/1 var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--coral)}
.stat.lead-by strong{display:block;margin-top:6px;font:800 24px/1.1 var(--display)}
.stat.lead-by em{font-style:normal;display:block;margin-top:4px;color:rgba(255,255,255,.8);font-size:16px}
@media (max-width:980px){.stats{grid-template-columns:1fr 1fr 1fr}.stat.lead-by{grid-column:1/-1}}
@media (max-width:560px){.stats{gap:10px}.stat{padding:16px 12px;border-radius:20px}.stat b{font-size:30px}.stat span{font-size:14px;line-height:1.25}}

/* "is this for me" + first class */
.cards3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:30px}
.card{position:relative;padding:30px 28px;border-radius:28px;background:var(--card);box-shadow:0 0 0 1px var(--line);transition:transform .45s var(--ease),box-shadow .45s var(--ease)}
.card:hover{transform:translateY(-6px) rotate(-.4deg);box-shadow:0 0 0 1px var(--line),0 30px 50px -30px rgba(176,74,58,.45)}
.card h3{font:800 25px/1.15 var(--display);letter-spacing:-.02em}
.card p{margin-top:12px;color:var(--ink-2)}
.card .heart{position:absolute;right:22px;top:24px;font-size:26px;opacity:.85}
.cards3 .card:nth-child(1){background:linear-gradient(160deg,#fff,var(--peach))}
.cards3 .card:nth-child(2){background:linear-gradient(160deg,#fff,var(--butter))}
.cards3 .card:nth-child(3){background:linear-gradient(160deg,#fff,var(--lilac))}
@media (max-width:900px){.cards3{grid-template-columns:1fr}}
.points{list-style:none;margin:18px 0 0;padding:0;display:grid;gap:10px}
.points li{display:flex;gap:12px;align-items:center;font-weight:600}
.points li .heart{flex:none;font-size:18px}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:30px;counter-reset:st}
.step{position:relative;padding:28px 24px;border-radius:28px;background:var(--card);box-shadow:0 0 0 1px var(--line)}
.step::before{counter-increment:st;content:counter(st);display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:var(--coral);font:800 24px/1 var(--display);transition:transform .5s var(--ease)}
.step:hover::before{transform:scale(1.12) rotate(-8deg)}
.step h3{margin-top:16px;font:800 22px/1.15 var(--display)}
.step p{margin-top:8px;color:var(--ink-2);font-size:17px}
.step:not(:last-child)::after{content:"";position:absolute;top:52px;right:-14px;width:10px;height:10px;border-top:3px solid var(--coral);border-right:3px solid var(--coral);transform:rotate(45deg);z-index:1}
@media (max-width:980px){.steps{grid-template-columns:1fr 1fr}.step::after{display:none}}
@media (max-width:560px){.steps{grid-template-columns:1fr}}

/* newest video */
.video.newest button{justify-content:flex-end;padding-bottom:18px;background:linear-gradient(0deg,rgba(21,18,19,.6),rgba(21,18,19,0) 45%),var(--poster) center/cover}
.video.newest button i{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);animation:beatc 2.4s ease-in-out infinite}
@keyframes beatc{0%,100%{transform:translate(-50%,-50%) scale(1)}15%{transform:translate(-50%,-50%) scale(1.12)}30%{transform:translate(-50%,-50%) scale(1)}45%{transform:translate(-50%,-50%) scale(1.07)}}
.video.newest button:hover i{background:#fff}
.new-tag{position:absolute;left:14px;top:14px;z-index:2;padding:7px 12px;border-radius:999px;background:var(--coral);color:var(--ink);font:700 13px/1 var(--body);pointer-events:none}
.more-vids{margin-top:12px;font-weight:700}
.more-vids a{color:var(--coral-deep);text-decoration:none}
/* blog cards */
.posts{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:30px}
.post-card{display:flex;flex-direction:column;border-radius:26px;overflow:hidden;background:var(--card);box-shadow:0 0 0 1px var(--line);text-decoration:none;transition:transform .45s var(--ease),box-shadow .45s var(--ease)}
.post-card:hover{transform:translateY(-6px);box-shadow:0 0 0 1px var(--line),0 30px 50px -30px rgba(21,18,19,.4)}
.post-card img{width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .8s var(--ease)}
.post-card:hover img{transform:scale(1.05)}
.post-card div{padding:18px 20px 22px;display:grid;gap:8px}
.post-card small{color:var(--coral-deep);font-weight:700;font-size:13px;letter-spacing:.08em;text-transform:uppercase}
.post-card h3{font:800 20px/1.2 var(--display)}
.post-card p{color:var(--ink-2);font-size:16px}
@media (max-width:1000px){.posts{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.posts{grid-template-columns:1fr}}

/* hearts: bobbing around the photo, rising in the background, bursting from buttons */
.hero-pic .heart{position:absolute;animation:bob var(--t,5s) ease-in-out infinite;animation-delay:var(--d,0s)}
.hero-pic .h1{left:-26px;top:16%;font-size:58px;--r:-14deg}
.hero-pic .h2{right:-8px;top:4%;font-size:30px;--r:12deg;opacity:.8;--t:4.2s;--d:-1s}
.hero-pic .h3{right:-30px;top:38%;font-size:44px;--r:18deg;--t:6s;--d:-2s}
.hero-pic .h4{left:8%;top:-3%;font-size:22px;--r:-6deg;opacity:.7;--t:4.6s;--d:-3s}
.hero-pic .h5{right:12%;bottom:-18px;font-size:36px;--r:-20deg;--t:5.4s;--d:-.5s}
.hero-pic .h6{left:-46px;top:52%;font-size:18px;--r:8deg;opacity:.6;--t:3.8s;--d:-2.4s}
.hero-pic .h7{right:-52px;top:66%;font-size:24px;--r:-10deg;opacity:.75;--t:4.8s;--d:-1.6s}
@keyframes bob{0%,100%{transform:translateY(0) rotate(var(--r,0deg)) scale(1)}50%{transform:translateY(-16px) rotate(calc(var(--r,0deg) + 8deg)) scale(1.08)}}
@keyframes beat{0%,100%{transform:scale(1)}15%{transform:scale(1.25)}30%{transform:scale(1)}45%{transform:scale(1.15)}}
.hero,.signup{position:relative}
.hero{overflow-x:clip}
.rise{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0}
.rise i{position:absolute;bottom:-40px;left:var(--x);font-size:var(--s);opacity:0;animation:rise var(--t) linear infinite;animation-delay:var(--d)}
@keyframes rise{0%{opacity:0;transform:translate(0,0) rotate(0)}12%{opacity:var(--o)}50%{transform:translate(var(--sway),-55vh) rotate(18deg)}90%{opacity:var(--o)}100%{opacity:0;transform:translate(0,-110vh) rotate(-10deg)}}
.hero > .wrap,.hero-grid{position:relative;z-index:1}
.signup > :not(.rise){position:relative;z-index:1}
.burst{position:fixed;z-index:60;pointer-events:none;font-size:var(--s);animation:burst .9s var(--ease) forwards}
@keyframes burst{0%{opacity:1;transform:translate(-50%,-50%) scale(.4)}100%{opacity:0;transform:translate(calc(-50% + var(--dx)),calc(-50% + var(--dy))) scale(1) rotate(var(--rot))}}
.btn-coral,.btn-main{position:relative}
.hero .btn-main{animation:nudge 4s ease-in-out 2.5s infinite}
@keyframes nudge{0%,88%,100%{transform:none}92%{transform:scale(1.05) rotate(-1.5deg)}96%{transform:scale(1.03) rotate(1.5deg)}}
.hero-pic .frame img{animation:breathe 9s ease-in-out infinite}
@keyframes breathe{0%,100%{transform:scale(1)}50%{transform:scale(1.045)}}
.reveal-kids > *{opacity:0;transform:translateY(26px) scale(.98);transition:opacity .8s var(--ease),transform .8s var(--ease)}
.reveal-kids.in > *{opacity:1;transform:none}
.reveal-kids.in > *:nth-child(2){transition-delay:.12s}.reveal-kids.in > *:nth-child(3){transition-delay:.24s}.reveal-kids.in > *:nth-child(4){transition-delay:.36s}

.reveal{opacity:0;transform:translateY(22px);transition:opacity .9s var(--ease),transform .9s var(--ease)}
.reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition:none!important}
  .reveal{opacity:1;transform:none}
  .reveal-kids > *{opacity:1;transform:none}
  .rise{display:none}
}

/* WordPress extras: plain pages and posts (old blog posts, pogoji poslovanja) */
.pz-page{padding:130px 0 0}
.pz-page article{max-width:760px}
.pz-page h1{font:800 clamp(34px,4.6vw,58px)/1.05 var(--display);letter-spacing:-.03em}
.pz-page .meta{margin-top:10px;color:var(--ink-2);font-size:15px}
.pz-page .entry{margin-top:26px;font-size:18px}
.pz-page .entry > * + *{margin-top:16px}
.pz-page .entry img{height:auto;border-radius:20px}
.pz-page .entry a{color:var(--coral-deep)}
.pz-page .entry h2,.pz-page .entry h3{font-family:var(--display);line-height:1.15;margin-top:30px}
.pz-list{display:grid;gap:18px;margin-top:30px}
.pz-list a{display:block;padding:22px 24px;border-radius:24px;background:var(--card);box-shadow:0 0 0 1px var(--line);text-decoration:none}
.pz-list h2{font:800 22px/1.2 var(--display)}
.pz-list p{margin-top:6px;color:var(--ink-2);font-size:16px}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px)}
/* customizer pencils must not push the layout */
.customize-partial-edit-shortcut button{left:-36px!important}
/* logged in: keep the menu below the black WordPress bar */
.admin-bar .nav{top:32px}
@media (max-width:782px){.admin-bar .nav{top:46px}}
/* old plugins must not paint their own page background */
body{background:var(--paper)!important;background-image:none!important}
