/* Home hero — desktop composition (≥761px). Light sage & cream palette. */
.efm-only{display:none!important}
.forest-hero{
 --h-ink:#2f3b34;--h-ink-2:#5b665f;--h-ink-3:#848d86;--h-sage:#8fae8b;--h-sage-2:#84a47f;--h-deep:#56744f;--h-sprout:#d8e8b0;--h-on:#1e2922;
 --h-cream:#f7f6f0;--h-mist:#eef1e8;--h-line:#e1e5da;--h-ease:cubic-bezier(.22,.65,.3,1);
 position:relative;isolation:isolate;overflow:hidden;border-bottom:1px solid var(--h-line);
 background:radial-gradient(70% 90% at 85% 10%,#eaf2dc 0%,#eaf2dc00 60%),radial-gradient(50% 70% at 70% 100%,#efe9f5 0%,#efe9f500 70%),var(--h-cream)}
.forest-hero .hero-bottom{display:none}
.forest-hero .forest-hero-grid{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:clamp(32px,5vw,88px);min-height:min(740px,calc(100svh - 84px));padding-block:64px 56px;align-items:center}
.forest-hero .forest-hero-copy{padding-block:0;max-width:none}
.forest-hero .forest-hero-copy .eyebrow{display:inline-flex;align-items:center;gap:10px;margin-bottom:32px;padding:8px 14px 8px 11px;border-radius:999px;background:#fffefa;box-shadow:0 0 0 1px var(--h-line),0 1px 2px #2f3b340a;font-size:9.5px;letter-spacing:2px;color:var(--h-ink-2)}
.forest-hero .status-dot{background:var(--h-sage);box-shadow:0 0 0 4px #8fae8b2e;animation:hero-pulse 2.8s ease-in-out infinite}
@keyframes hero-pulse{50%{box-shadow:0 0 0 7px #8fae8b00}}

/* Headline */
.forest-hero h1{font-size:clamp(58px,6vw,86px);line-height:.98;letter-spacing:-.05em;color:var(--h-ink)}
.forest-hero h1 .hero-line:first-child{white-space:nowrap}
.forest-hero h1 em{display:inline-block;margin-top:.04em;letter-spacing:-.035em;color:var(--h-deep)}
.forest-hero .hero-mark{position:relative;display:inline-block;z-index:0}
.forest-hero .hero-mark:after{content:"";position:absolute;left:-2%;right:-3%;bottom:.1em;height:.3em;z-index:-1;border-radius:.2em;background:var(--h-sprout);transform-origin:0 50%;transform:scaleX(0);animation:hero-mark .9s .8s var(--h-ease) forwards}
@keyframes hero-mark{to{transform:scaleX(1)}}
.forest-hero .forest-intro{max-width:470px;margin-top:28px;font-size:17px;line-height:1.75;color:var(--h-ink-2)}

/* Actions */
.forest-hero .hero-actions{display:flex;align-items:center;gap:28px;margin-top:36px}
.forest-hero .hero-actions .button{min-height:58px;padding:16px 26px 16px 30px;border:0;font-size:14px;font-weight:500;background:var(--h-sage);color:var(--h-on);box-shadow:0 1px 0 #ffffff66 inset,0 14px 28px -14px #5f7f5a8c}
.forest-hero .hero-actions .button:hover{background:var(--h-sage-2);color:var(--h-on);transform:translateY(-2px);box-shadow:0 1px 0 #ffffff66 inset,0 20px 34px -16px #5f7f5a99}
.forest-hero .hero-actions .button svg{transition:transform .25s var(--h-ease)}
.forest-hero .hero-actions .button:hover svg{transform:translateX(4px)}
.hero-secondary-link{display:inline-flex;align-items:center;gap:10px;font-size:14px;font-weight:500;color:var(--h-ink);text-decoration:underline;text-decoration-color:#2f3b3440;text-underline-offset:6px;transition:text-decoration-color .2s,color .2s}
.hero-secondary-link svg{width:16px;height:16px;transition:transform .25s var(--h-ease)}
.hero-secondary-link:hover{text-decoration-color:currentColor;color:var(--h-deep)}
.hero-secondary-link:hover svg{transform:translateX(3px)}

/* Proof row */
.hero-proof{display:flex;margin:48px 0 0;padding:0;border-top:1px solid var(--h-line)}
.hero-proof>div{flex:1;padding:18px 18px 0 0}
.hero-proof>div+div{padding-left:22px;border-left:1px solid var(--h-line)}
.hero-proof dt{font-size:10px;letter-spacing:1.6px;text-transform:uppercase;color:var(--h-ink-3);white-space:nowrap}
.hero-proof dd{margin:6px 0 0;font:400 32px/1 Georgia,'Times New Roman',serif;letter-spacing:-.03em;color:var(--h-ink)}
.hero-proof dd small{font:500 12px/1 'Helvetica Neue',Helvetica,Arial,sans-serif;letter-spacing:0;color:var(--h-ink-3);margin-left:2px}
.hero-proof .woocommerce-Price-amount{font:inherit}
.forest-hero .hero-note{margin-top:26px;gap:12px}
.forest-hero .hero-note p{color:var(--h-ink-2)}
.forest-hero .hero-note strong{color:var(--h-ink)}
.forest-hero .hero-note .km-spark{width:28px;height:28px;color:var(--h-sage)}

/* Product preview */
.forest-hero .forest-art{position:relative;display:block;min-height:0;align-self:center}
.hero-orb{position:absolute;z-index:-1;border-radius:50%;pointer-events:none}
.hero-orb.orb-one{width:62%;aspect-ratio:1;right:-10%;top:-14%;background:radial-gradient(circle at 35% 35%,#e3eed2,#d6e5c3 55%,#d6e5c300 72%)}
.hero-orb.orb-two{width:44%;aspect-ratio:1;left:-8%;bottom:-16%;background:radial-gradient(circle at 60% 40%,#efe8f6,#e6dcf0 50%,#e6dcf000 72%)}
.hero-app{position:relative;display:grid;gap:14px;padding:14px;border-radius:26px;background:#fffefacc;-webkit-backdrop-filter:blur(18px) saturate(1.3);backdrop-filter:blur(18px) saturate(1.3);
 box-shadow:0 0 0 1px #2f3b3412,0 1px 0 #fff inset,0 50px 90px -50px #3c5a3a59,0 18px 36px -24px #2f3b3433;animation:hero-app-in 1s .15s var(--h-ease) both}
@keyframes hero-app-in{from{opacity:0;transform:translateY(24px) scale(.985)}}
.hero-app-bar{display:flex;align-items:center;gap:10px;padding:2px 4px 0;font-size:11.5px;color:var(--h-ink-3)}
.hero-app-dots{display:flex;gap:6px}.hero-app-dots i{width:9px;height:9px;border-radius:50%;background:#e0e4da}
.hero-app-dots i:first-child{background:#e9d9d0}.hero-app-dots i:nth-child(2){background:#ece5c8}.hero-app-dots i:last-child{background:#d5e3cd}
.hero-app-title{font-weight:600;color:var(--h-ink-2);margin-left:6px}
.hero-app-tag{margin-left:auto;padding:4px 10px;border-radius:999px;background:var(--h-mist);font-size:10.5px}
.hero-app-tabs{position:relative;display:grid;grid-template-columns:repeat(3,1fr);padding:4px;border-radius:16px;background:var(--h-mist)}
.hero-app-tabs button{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;gap:8px;min-height:42px;border:0;border-radius:12px;background:transparent;font:500 13.5px/1 'Helvetica Neue',Helvetica,Arial,sans-serif;color:var(--h-ink-2);cursor:pointer;transition:color .25s}
.hero-app-tabs button .product-symbol{width:20px;height:20px}
.hero-app-tabs button[aria-selected=true]{color:var(--h-ink)}
.hero-app-tabs button:focus-visible{outline:2px solid var(--h-sage);outline-offset:-2px}
.hero-app-tab-ink{position:absolute;z-index:0;top:4px;bottom:4px;left:4px;width:calc((100% - 8px)/3);border-radius:12px;background:#fffefa;box-shadow:0 1px 2px #2f3b3414,0 4px 12px -6px #2f3b3426;transition:transform .45s var(--h-ease)}
.hero-app-panel{display:grid;grid-template-columns:200px minmax(0,1fr);grid-template-areas:"rail stage" "output output" "product product";gap:12px}
.hero-app-panel[hidden]{display:none}
.hero-app-panel.is-entering{animation:hero-panel-in .45s var(--h-ease) both}
@keyframes hero-panel-in{from{opacity:0;transform:translateY(8px)}}
.hero-app-rail{grid-area:rail;list-style:none;display:grid;align-content:start;gap:2px;margin:0;padding:6px;border-radius:18px;background:var(--h-mist)}
.hero-app-rail li{display:flex;align-items:center;gap:10px;min-height:44px;padding:6px 8px;border-radius:12px;font-size:12.5px;line-height:1.3;color:var(--h-ink-3);transition:background-color .3s,color .3s}
.hero-step-mark{position:relative;display:grid;place-items:center;flex:none;width:26px;height:26px;border-radius:50%;background:#fffefa;box-shadow:inset 0 0 0 1px var(--h-line);font:600 9.5px/1 'Helvetica Neue',Helvetica,Arial,sans-serif;color:var(--h-ink-3);transition:background-color .3s,box-shadow .3s}
.hero-step-mark svg{position:absolute;opacity:0;transform:scale(.6);transition:opacity .25s,transform .3s var(--h-ease)}
.hero-app-rail li.is-done{color:var(--h-ink-2)}
.hero-app-rail li.is-done .hero-step-mark{background:var(--h-sprout);box-shadow:none;color:transparent}
.hero-app-rail li.is-done .hero-step-mark svg{opacity:1;transform:none;color:var(--h-on)}
.hero-app-rail li.is-active{background:#fffefa;color:var(--h-ink);box-shadow:0 1px 2px #2f3b3412}
.hero-app-rail li.is-active .hero-step-mark{background:var(--h-sage);box-shadow:0 0 0 4px #8fae8b33;color:var(--h-on)}
.hero-app-stage{grid-area:stage;position:relative;display:grid;grid-template-rows:1fr auto auto;padding:20px 20px 18px;border-radius:18px;background:linear-gradient(160deg,#fffefa,#f6f8f1);box-shadow:inset 0 0 0 1px var(--h-line);min-height:236px}
.hero-app-detail{grid-area:1/1;display:grid;align-content:start;gap:8px;opacity:0;transform:translateY(8px);transition:opacity .4s var(--h-ease),transform .4s var(--h-ease)}
.hero-app-detail.is-active{opacity:1;transform:none}
.hero-app-kicker,.hero-app-label{font:600 9.5px/1.4 'Helvetica Neue',Helvetica,Arial,sans-serif;letter-spacing:1.6px;text-transform:uppercase;color:var(--h-deep)}
.hero-app-detail strong{font:400 24px/1.2 Georgia,'Times New Roman',serif;letter-spacing:-.02em;color:var(--h-ink)}
.hero-app-detail p{font-size:13.5px;line-height:1.6;color:var(--h-ink-2);max-width:40ch}
.hero-app-progress{height:4px;margin:16px 0 14px;border-radius:999px;background:#2f3b3412;overflow:hidden}
.hero-app-progress span{display:block;height:100%;width:25%;border-radius:inherit;background:linear-gradient(90deg,var(--h-sprout),var(--h-sage));transition:width .6s var(--h-ease)}
.hero-app-inputs{display:grid;gap:8px}
.hero-app-inputs>div{display:flex;flex-wrap:wrap;gap:6px}
.hero-app-inputs>div>span{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;background:#fffefa;box-shadow:inset 0 0 0 1px var(--h-line);font-size:11.5px;color:var(--h-ink-2)}
.hero-app-inputs svg{color:var(--h-deep)}
.hero-app-output{grid-area:output;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:14px 16px;border-radius:18px;background:var(--h-mist)}
.hero-app-output ul{list-style:none;display:flex;flex-wrap:wrap;gap:6px 14px;margin:0;padding:0}
.hero-app-output li{display:flex;align-items:center;gap:7px;font-size:12.5px;color:var(--h-ink)}
.hero-app-output li>span{display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:var(--h-sprout);color:var(--h-on)}
.hero-app-review{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;background:#fffefa;font-size:11px;font-weight:600;color:var(--h-deep);white-space:nowrap}
.hero-app-product{grid-area:product;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 18px;border-radius:18px;background:var(--h-sprout);color:var(--h-on);transition:background-color .25s,transform .25s var(--h-ease)}
.hero-app-product:hover{background:#cfe2a1;transform:translateY(-1px)}
.hero-app-product>span:first-child{display:grid;gap:3px;font-size:14px;font-weight:500}
.hero-app-product small{font-size:9.5px;letter-spacing:1.4px;text-transform:uppercase;font-weight:600;opacity:.65}
.hero-app-price{display:flex;align-items:center;gap:10px;font:400 22px/1 Georgia,'Times New Roman',serif;white-space:nowrap}
.hero-app-price svg{width:18px;height:18px;transition:transform .25s var(--h-ease)}
.hero-app-product:hover .hero-app-price svg{transform:translateX(3px)}
.hero-app-product:focus-visible{outline:2px solid var(--h-deep);outline-offset:3px}

/* Entrance */
.forest-hero .forest-hero-copy>*,.forest-hero .hero-line{animation:hero-rise .9s var(--h-ease) both}
.forest-hero .forest-hero-copy>.eyebrow{animation-delay:.05s}
.forest-hero h1{animation:none!important}
.forest-hero .hero-line{display:inline-block}
.forest-hero h1 .hero-line:first-child{animation-delay:.12s}
.forest-hero h1 em.hero-line{animation-delay:.22s}
.forest-hero .forest-intro{animation-delay:.32s}
.forest-hero .hero-actions{animation-delay:.4s}
.forest-hero .hero-proof{animation-delay:.48s}
.forest-hero .hero-note{animation-delay:.56s}
@keyframes hero-rise{from{opacity:0;transform:translateY(16px)}}

@media(max-width:1180px){
 .hero-app-panel{grid-template-columns:170px minmax(0,1fr)}
 .hero-app-detail strong{font-size:21px}
 .hero-app-output{grid-template-columns:1fr}
 .hero-app-review{justify-self:start}
 .hero-proof dt{font-size:9px;letter-spacing:1px}
 .hero-proof dd{font-size:28px}
}
@media(max-width:900px){
 .forest-hero .forest-hero-grid{grid-template-columns:1fr;min-height:0;padding-block:44px 48px;gap:40px}
 .forest-hero .forest-art{max-width:640px;width:100%;margin-inline:auto}
}
@media(prefers-reduced-motion:reduce){
 .forest-hero *,.forest-hero *:before,.forest-hero *:after{animation:none!important;transition:none!important}
 .forest-hero .hero-mark:after{transform:none}
}
