/* ---- Design system globals. Tokens live in tokens.css. ---- */
*{box-sizing:border-box;margin:0}html{scroll-behavior:smooth;scroll-padding-top:var(--nav-h);-webkit-text-size-adjust:100%}
body{font:var(--fw-regular) var(--fs-body)/var(--lh-body) var(--font-sans);color:var(--c-forest);background:var(--c-beige);-webkit-font-smoothing:antialiased}
h1,h2,h3{font-weight:var(--fw-medium);color:var(--c-forest);text-wrap:balance}
h1{font-size:var(--fs-s1);line-height:var(--lh-s1)}h2{font-size:var(--fs-s2);line-height:var(--lh-s2)}h3{font-size:var(--fs-s4);line-height:var(--lh-s4)}
b,strong{font-weight:var(--fw-semi)}
a{color:inherit;transition:opacity var(--dur) var(--ease)}a:not(.btn,.card,.link-card,.offer,.tile,.fchip,.nav__link,.nav__cta):hover{opacity:var(--fade-link)}
:focus-visible{outline:2px solid var(--c-focus);outline-offset:3px}
.wrap{padding-inline:var(--page-inline)}.sec{padding-block:var(--section-default)}
.eyebrow{display:inline-block;font-size:var(--fs-s3);line-height:var(--lh-s3);font-weight:var(--fw-semi);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--c-forest);margin-bottom:var(--sp-3)}
.lead{font-size:15px;color:var(--c-gray-600);max-width:var(--measure);margin-top:var(--sp-3)}
header{position:sticky;top:env(safe-area-inset-top,0px);z-index:20;transition:background-color var(--dur) var(--ease)}
header[data-scrolled="true"]{background:var(--c-nav-glass);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
.nav{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:var(--sp-4);min-height:var(--nav-h);padding:var(--sp-2) var(--page-inline)}
.nav__logo{font:var(--fw-medium) 20px/1 var(--font-sans);letter-spacing:.18em;text-decoration:none;color:var(--c-forest)}
.nav__menu{justify-self:center;display:flex;align-items:center;gap:var(--sp-2);list-style:none;margin:0;padding:0}
.nav__link{display:block;padding:6px var(--sp-4);border-radius:var(--r-sm);font:var(--fw-regular) 15px/20px var(--font-sans);color:var(--c-gray-600);text-decoration:none;transition:background-color var(--dur) var(--ease),color var(--dur) var(--ease)}
.nav__link:hover,.nav__link[aria-current="page"]{color:var(--c-forest);background:var(--c-hover-tint)}
header[data-scrolled="true"] .nav__link:hover,header[data-scrolled="true"] .nav__link[aria-current="page"]{background:rgba(6,31,0,.06)}
.nav__cta{display:inline-flex;align-items:center;gap:var(--sp-2);height:40px;padding:0 var(--sp-5);font:var(--fw-medium) 14px/1 var(--font-sans);white-space:nowrap;text-decoration:none;color:var(--c-forest);border:1px solid var(--c-nav-line);border-radius:var(--r-pill);transition:background-color var(--dur) var(--ease),color var(--dur) var(--ease)}
.nav__cta:hover{color:var(--c-beige);background:var(--c-forest)}
.nav__cta .arw{transition:transform var(--dur) var(--ease)}.nav__cta:hover .arw{transform:rotate(-45deg)}
.nav__toggle{display:none;width:36px;height:36px;place-items:center;border:1px solid transparent;border-radius:var(--r-full);background:transparent;color:inherit;cursor:pointer}
@media(max-width:1199px){.nav{display:flex;flex-wrap:wrap;justify-content:space-between}.nav__toggle{display:inline-grid}.nav__menu{display:none;order:3;width:100%;flex-direction:column;align-items:stretch;padding-top:var(--sp-3)}.nav[data-open="true"]{background:var(--c-beige)}.nav[data-open="true"] .nav__menu{display:flex}.nav__cta{margin-left:auto}}
@media(max-width:809px){.nav{gap:var(--sp-1)}.nav__logo{font-size:15px}.nav__cta{padding:0 var(--sp-3)}.nav__cta .arw{display:none}}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:42px;padding:10px 20px;font:var(--fw-medium) 14px/1 var(--font-sans);color:var(--c-beige);background:var(--c-forest);border:1px solid var(--c-forest);border-radius:var(--r-btn);white-space:nowrap;text-decoration:none;cursor:pointer;transition:background-color var(--dur) var(--ease),color var(--dur) var(--ease),border-color var(--dur) var(--ease)}
.btn:hover{color:var(--c-forest);background:var(--c-lime);border-color:var(--c-lime)}
.btn.ghost{background:transparent;border-color:rgba(255,255,255,.5)}.btn.ghost:hover{color:var(--c-forest);background:var(--c-lime);border-color:var(--c-lime)}
footer{padding:var(--section-compact) var(--page-inline)}
.footer__cols{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--sp-8) var(--gutter)}
.footer__head{font:var(--fw-medium) var(--fs-s4)/var(--lh-s4) var(--font-sans);margin-bottom:var(--sp-2)}
.footer__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--sp-2)}
.footer__list,.footer__link{font-size:var(--fs-s4);line-height:var(--lh-s4);color:var(--c-gray-600);text-decoration:none}
.footer__bottom{text-align:center;margin-top:var(--sp-10);font-size:var(--fs-body)}
@media(max-width:1023px){.footer__cols{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:809px){.footer__cols{grid-template-columns:minmax(0,1fr)}}
.pagehead{padding-block:var(--section-compact) 0}.pagehead .eyebrow{margin-bottom:var(--sp-3)}
.grid{display:grid;gap:var(--gutter)}.g3{grid-template-columns:repeat(3,minmax(0,1fr))}
.card{background:var(--c-white);border:1px solid var(--c-beige-50);border-radius:var(--r-sm);padding:var(--sp-6);transition:border-color var(--dur) var(--ease)}.card p{margin-top:var(--sp-1);color:var(--c-gray-600)}
.crop{display:flex;justify-content:space-between;gap:var(--sp-2);font-weight:var(--fw-medium)}
.chg{font-weight:var(--fw-medium);font-size:var(--fs-small);white-space:nowrap}.up{color:var(--t-olive)}.dn{color:var(--t-alert-deep)}
.spark{width:100%;height:38px}.spark polyline{fill:none;stroke:var(--c-forest);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.band{background:var(--c-moss) var(--dot-pattern);color:#fff}.band h2{color:#fff}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--gutter)}@media(max-width:1023px){.stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
.stats b{display:block;font:var(--fw-medium) var(--fs-display)/var(--lh-display) var(--font-sans);color:var(--c-forest);margin-bottom:var(--sp-2)}.stats span{color:var(--c-gray-600)}.band .stats span{color:var(--c-on-dark-soft)}
.tabs{display:flex;gap:var(--sp-2);flex-wrap:wrap;margin:0 0 var(--sp-6)}.tab{height:42px;padding:0 var(--sp-5);font:var(--fw-medium) 14px/1 var(--font-sans);color:var(--c-forest);background:transparent;border:1px solid var(--c-beige-75);border-radius:var(--r-btn);cursor:pointer;transition:background-color var(--dur) var(--ease),color var(--dur) var(--ease),border-color var(--dur) var(--ease)}.tab:hover{color:var(--c-forest);background:var(--c-lime);border-color:var(--c-lime)}
select,.search{height:50px;padding:0 var(--sp-4);font:var(--fw-regular) 14px/22px var(--font-sans);color:var(--c-forest);background:var(--c-field);border:var(--hairline-warm);border-radius:var(--r-lg);transition:border-color var(--dur) var(--ease)}select{cursor:pointer}select:hover,select:focus,.search:hover,.search:focus{border-color:var(--c-focus);outline:none}.search::placeholder{color:rgba(6,31,0,.6)}
.field-label{font:var(--fw-medium) 13px/1.3 var(--font-sans)}
.tab.on,.tab.on:hover{background:var(--c-forest);border-color:var(--c-forest);color:var(--c-beige)}
.tbl{width:100%;border-collapse:collapse;font-size:var(--fs-body)}
.tbl th,.tbl td{padding:12px 16px 12px 0;text-align:left;vertical-align:middle;border-bottom:1px solid var(--c-line-warm)}.tbl th{font-weight:var(--fw-medium);border-bottom:var(--hairline)}
.tbl td.p{font:var(--fw-medium) var(--fs-s2)/1.2 var(--font-sans);font-variant-numeric:tabular-nums;white-space:nowrap}.best,.pp,.free{display:inline-block;background:var(--t-zest);color:var(--c-forest);padding:3px 8px;border-radius:var(--r-xs);font-size:var(--fs-small);font-weight:var(--fw-medium)}
.scroll{overflow-x:auto}.row{display:grid;grid-template-columns:110px 1fr;gap:var(--sp-3);align-items:center;padding:var(--sp-3) 0;border-bottom:1px solid var(--c-beige-50)}
.months{display:grid;grid-template-columns:repeat(12,1fr);gap:3px}.months i{height:30px;border-radius:var(--r-xs);background:var(--c-beige-50);font:var(--fw-medium) var(--fs-small)/30px var(--font-sans);text-align:center;color:var(--c-gray-600);font-style:normal}
.months i.m{background:var(--c-forest);color:var(--c-beige)}.months i.n{background:var(--t-zest);color:var(--c-forest)}
.key{display:flex;gap:var(--sp-4);font-size:var(--fs-small);color:var(--c-gray-600);margin:0 0 var(--sp-4)}.key i{display:inline-block;width:12px;height:12px;border-radius:var(--r-xs);margin-right:6px}.key .m{background:var(--c-forest)}.key .n{background:var(--t-zest)}.key .r{background:var(--t-down)}.key .k{background:var(--t-olive)}
.tag{display:inline-block;background:var(--c-beige-50);color:var(--c-forest);border-radius:var(--r-xs);padding:3px 8px;font-size:var(--fs-small);margin:2px 2px 2px 0}
.alert{background:var(--t-alert-tint);border:1px solid var(--t-down);border-radius:var(--r-sm);padding:var(--sp-4) var(--sp-5);margin-top:var(--gutter)}
details{background:var(--c-white);border:1px solid var(--c-beige-50);border-radius:var(--r-sm);padding:var(--sp-4) var(--sp-5);margin-bottom:var(--sp-3)}summary{cursor:pointer;font-weight:var(--fw-medium)}details p{margin-top:var(--sp-2);color:var(--c-gray-600)}
.rv{opacity:0;transform:translateY(24px);transition:opacity .4s var(--ease),transform .4s var(--ease)}.rv.in{opacity:1;transform:none}
@media(max-width:809px){.row{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.rv{opacity:1;transform:none}}
/* ---- Photos (self-hosted; a flat Beige 50 shows if a photo is missing) ---- */
:root{--p-hero:url(../images/hero.jpg);--p-plant:url(../images/plant.jpg);--p-store:url(../images/store.jpg);--p-sell:url(../images/sell.jpg);--p-about:url(../images/about.jpg)}
[data-page=plant] .pagehead{--ph:var(--p-plant)}[data-page=store] .pagehead{--ph:var(--p-store)}[data-page=sell] .pagehead{--ph:var(--p-sell)}[data-page=about] .pagehead{--ph:var(--p-about)}
[data-page=plant] .pagehead::after,[data-page=store] .pagehead::after,[data-page=sell] .pagehead::after,[data-page=about] .pagehead::after{content:"";display:block;min-height:280px;margin:var(--gutter) var(--page-inline) 0;background:var(--ph) center/cover,var(--c-beige-50)}
@media(max-width:809px){[data-page=plant] .pagehead::after,[data-page=store] .pagehead::after,[data-page=sell] .pagehead::after,[data-page=about] .pagehead::after{min-height:180px}}
/* ---- v3 ---- */
.btn.sm{height:36px;padding:8px 16px;margin-top:6px}.tbl small{color:var(--c-gray-600)}
.ticker{display:flex;align-items:center;min-height:37px;background:var(--c-moss) var(--dot-pattern);color:var(--c-on-dark-muted);overflow:hidden;white-space:nowrap;font-size:var(--fs-body)}
.ticker__label{position:relative;z-index:1;flex:none;align-self:stretch;display:flex;align-items:center;padding:0 var(--sp-5) 0 var(--page-inline);font-weight:var(--fw-medium);color:var(--c-white);background:var(--c-moss)}
.ticker__track{display:inline-block;animation:tk 50s linear infinite}.ticker:hover .ticker__track{animation-play-state:paused}.ticker__track span{margin:0 var(--sp-6)}.ticker b{color:var(--c-lime);font-weight:var(--fw-medium)}.ticker .up{color:var(--t-up)}.ticker .dn{color:var(--t-down)}
@keyframes tk{to{transform:translateX(-50%)}}
.how3{counter-reset:s}.how3 .card::before{counter-increment:s;content:counter(s);display:block;font:var(--fw-medium) var(--fs-s1)/1 var(--font-sans);margin-bottom:var(--sp-3)}
.av{width:56px;height:56px;border-radius:var(--r-full);margin-bottom:var(--sp-3);display:grid;place-items:center;font:var(--fw-medium) 16px var(--font-sans);color:var(--c-beige);background:var(--c-forest)}
.tl{border-left:1px solid var(--c-beige-75);padding-left:var(--sp-5);margin-top:var(--sp-6)}.tl div{margin-bottom:var(--sp-5);position:relative}.tl div::before{content:"";position:absolute;left:calc(var(--sp-5) * -1 - 5px);top:6px;width:9px;height:9px;border-radius:var(--r-full);background:var(--c-forest)}
ol.late{padding-left:20px;margin-top:8px}ol.late li{margin:4px 0}.cta2{text-align:center;background:var(--c-moss) var(--dot-pattern);color:#fff;border-radius:var(--r-0);padding:var(--sp-8) var(--sp-9)}.cta2 h2{color:#fff;margin-bottom:var(--sp-3)}.cta2 p{color:var(--c-on-dark-soft);margin-bottom:var(--sp-5)}
.g4{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:1023px){.g3,.g4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:809px){.g3,.g4{grid-template-columns:minmax(0,1fr)}}
/* ---- crop photos ---- */
.cimg{display:grid;place-items:center;background:var(--c-beige-50) center/cover no-repeat;font-size:2rem;transition:opacity var(--dur) var(--ease)}.cimg.ph>span{opacity:0}
.cimg.av{width:42px;height:42px;margin:0;border-radius:var(--r-full);font-size:1.2rem;flex:none}.cn{display:flex;align-items:center;gap:var(--sp-3)}td.cn{display:table-cell}td.cn .av{display:inline-grid;vertical-align:middle;margin-right:var(--sp-3)}
summary.cn{display:flex}
.strip{overflow:hidden;white-space:nowrap;padding:8px 0}.strip>div{display:inline-flex;gap:16px;animation:tk 70s linear infinite}.strip:hover>div{animation-play-state:paused}
.crp{padding:0;overflow:hidden;display:flex;flex-direction:column}.crp .lg{height:200px}.crp:hover .lg{opacity:var(--fade-image)}.crp .cimg{overflow:hidden}.crp .cb{padding:var(--sp-5) var(--sp-6) var(--sp-6);flex:1}.crp h3{margin:var(--sp-2) 0 2px}.crp p{margin-top:var(--sp-1)}.tw{color:var(--t-olive)}
.pp{float:right}
.search{display:block;width:100%;max-width:var(--measure-sm);margin-top:var(--sp-4)}
/* ---- storage guide ---- */
#fac{scroll-margin-top:90px}.small,small{font-size:var(--fs-small);line-height:var(--lh-small);color:var(--c-gray-600)}.small{margin-top:var(--sp-3)}
.lrow{display:grid;grid-template-columns:150px 1fr;gap:var(--sp-3);align-items:center;width:100%;background:none;border:0;border-bottom:1px solid var(--c-beige-50);padding:var(--sp-3) var(--sp-1);cursor:pointer;text-align:left;font:inherit;color:inherit;transition:background-color var(--dur) var(--ease)}.lrow:hover{background:var(--c-beige-50)}
.bars{display:flex;flex-direction:column;gap:5px}.bar{display:block;height:20px;border-radius:var(--r-xs);position:relative;min-width:60px;animation:grow 1s ease-out}.bar.r{background:var(--t-down);height:14px}.bar.k{background:var(--t-olive)}
.bar em{position:absolute;left:100%;margin-left:var(--sp-2);font:var(--fw-medium) var(--fs-small)/20px var(--font-sans);color:var(--c-forest);font-style:normal;white-space:nowrap}.bar.r em{line-height:14px}
@keyframes grow{from{width:0}}
.chips{display:flex;gap:var(--sp-2);overflow-x:auto;padding:4px 2px 14px}.chip{display:flex;align-items:center;gap:var(--sp-2);flex:none;padding:4px var(--sp-4) 4px 4px;color:var(--c-forest);background:transparent;border:1px solid var(--c-beige-75);border-radius:var(--r-btn);font:var(--fw-medium) 14px/1 var(--font-sans);cursor:pointer;transition:background-color var(--dur) var(--ease),color var(--dur) var(--ease)}.chip:hover{background:var(--c-lime);border-color:var(--c-lime)}.chip .av{width:32px;height:32px}.chip.on,.chip.on:hover{background:var(--c-forest);border-color:var(--c-forest);color:var(--c-beige)}
.tipd{display:grid;grid-template-columns:5fr 7fr;gap:var(--gutter);padding:0;overflow:hidden}.tl1{display:flex;flex-direction:column;background:var(--c-beige-50)}.cimg.av.tipimg{width:100%;height:230px;border-radius:0;font-size:4rem}
.cond{padding:var(--sp-5) var(--sp-6) var(--sp-6)}.stat{margin-top:var(--sp-3)}.stat small{display:block;color:var(--c-gray-600);font-size:var(--fs-small)}.stat b{font-size:var(--fs-s4);font-weight:var(--fw-medium)}.stat:first-of-type b{font:var(--fw-medium) var(--fs-s2)/1.2 var(--font-sans)}
.tl2{padding:var(--sp-6) var(--sp-6) var(--sp-6) 0}.tl2 h4{margin:var(--sp-4) 0 var(--sp-2);font:var(--fw-medium) var(--fs-s4)/var(--lh-s4) var(--font-sans)}.tl2 h4:first-child{margin-top:0}
.stp{list-style:none;counter-reset:n;padding:0}.stp li{counter-increment:n;position:relative;padding:3px 0 var(--sp-3) 36px;min-height:32px}.stp li::before{content:counter(n);position:absolute;left:0;top:0;width:24px;height:24px;border-radius:var(--r-full);background:var(--c-forest);color:var(--c-beige);font-size:12px;font-weight:var(--fw-medium);text-align:center;line-height:24px}
.warn{background:var(--t-alert-tint);border:1px solid var(--t-down);border-radius:var(--r-sm);padding:var(--sp-3) var(--sp-4);margin-top:var(--sp-3)}.warn.sign{background:var(--c-beige-50);border-color:var(--c-beige-75)}
.fchip{display:inline-block;background:var(--c-beige-50);color:var(--c-forest);border-radius:var(--r-xs);padding:6px var(--sp-3);margin:0 var(--sp-1) var(--sp-1) 0;font-size:var(--fs-small);text-decoration:none;transition:background-color var(--dur) var(--ease)}.fchip:hover{background:var(--c-lime)}
@media(max-width:809px){.lrow{grid-template-columns:1fr;gap:6px}.bar{min-width:50px}.tipd{grid-template-columns:1fr;gap:0}.tl2{padding:20px}}
/* ---- demo notices and load errors ---- */
.tel{font-weight:600;margin-top:6px}
.grid>.alert{grid-column:1/-1;margin-top:0}.strip .alert{white-space:normal;margin-inline:var(--page-inline)}
.card:empty{display:none}
/* ---- Home ---- */
.headline-pair strong{font-weight:var(--fw-semi)}
.module__head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--sp-4);margin-bottom:var(--sp-6);flex-wrap:wrap}
.lead--head{margin:calc(var(--sp-2) * -1) 0 var(--sp-6)}
.link{font:var(--fw-regular) 15px/1.4 var(--font-sans);color:inherit;text-decoration:underline;text-underline-offset:3px}
.big{font:var(--fw-medium) var(--fs-s2)/1.2 var(--font-sans);font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--c-forest)}.big small{font:var(--fw-regular) var(--fs-small) var(--font-sans);color:var(--c-gray-600)}
.link-card{display:flex;flex-direction:column;gap:var(--sp-3);text-decoration:none;color:inherit}
.well{position:relative;overflow:hidden;background:var(--c-forest);aspect-ratio:10/6}
.well__img{position:absolute;inset:0;transition:transform .5s var(--ease)}
a:hover>.well>.well__img,a:focus-visible>.well>.well__img{transform:scale(1.07)}
.well__num{position:absolute;left:var(--sp-3);top:var(--sp-3);width:36px;height:36px;display:grid;place-items:center;font:var(--fw-medium) var(--fs-s4)/1 var(--font-sans);color:var(--c-forest);background:var(--c-lime);border-radius:var(--r-btn);transition:transform var(--dur) var(--ease)}
a:hover>.well>.well__num,a:focus-visible>.well>.well__num{transform:scale(1.15) rotate(-4deg)}
.step-cta{display:inline-flex;align-items:center;gap:var(--sp-2);font:var(--fw-medium) 14px/1.4 var(--font-sans);background:linear-gradient(currentColor,currentColor) 0 100%/0 1px no-repeat;align-self:flex-start;transition:background-size .3s var(--ease)}
.step-cta .arw{transition:transform var(--dur) var(--ease)}.link-card:hover .step-cta,.link-card:focus-visible .step-cta{background-size:100% 1px}.link-card:hover .step-cta .arw,.link-card:focus-visible .step-cta .arw{transform:translateX(4px)}
.link-card.rv.in:nth-child(2){transition-delay:.1s}.link-card.rv.in:nth-child(3){transition-delay:.2s}
.card__body{display:flex;flex-direction:column;gap:3px}
.card__title{font:var(--fw-medium) var(--fs-s4)/var(--lh-s4) var(--font-sans)}
.card__meta{font-size:var(--fs-body);color:var(--c-gray-600)}
.band h3{color:#fff}.band .card__meta{color:var(--c-on-dark-soft)}
.s1 .well__img{background:var(--p-plant) center/cover,var(--c-line-dark)}
.s2 .well__img{background:var(--p-store) center/cover,var(--c-line-dark)}
.s3 .well__img{background:var(--p-sell) center/cover,var(--c-line-dark)}
.tile{display:flex;flex-direction:column;gap:var(--sp-3);width:150px;text-decoration:none}
.tile .cimg{aspect-ratio:5/6;transition:opacity var(--dur) var(--ease)}.tile:hover .cimg{opacity:var(--fade-image)}
.tile b{font:var(--fw-medium) var(--fs-body)/1.4 var(--font-sans)}
.gallery{display:grid;grid-template-columns:repeat(var(--columns),minmax(0,1fr));gap:var(--gutter)}
.gallery div{min-height:220px;border-radius:var(--r-sm);background:var(--g) center/cover,var(--c-beige-50);grid-column:span 3}.gallery div:first-child{grid-column:span 6}
@media(max-width:809px){.gallery div,.gallery div:first-child{grid-column:span 12}}
.testimonial{display:flex;flex-direction:column;gap:var(--sp-5);margin:0}
.testimonial__logo{font:var(--fw-semi) 22px/1 var(--font-sans);opacity:.5}
.testimonial blockquote{margin:0;font-size:var(--fs-quote);line-height:var(--lh-quote)}
.testimonial figcaption{display:flex;flex-direction:column;gap:2px;margin-top:auto}
.testimonial__name{font:var(--fw-medium) var(--fs-s4)/var(--lh-s4) var(--font-sans)}
.testimonial__role{color:var(--c-gray-600)}
.band .stats b{color:var(--c-white)}.stats b span{color:inherit!important}
a.card:hover{border-color:var(--c-forest)}
/* ---- Spacing helpers ---- */
.sec--flush{padding-top:0}
.sub-head{margin:var(--section-compact) 0 var(--sp-6)}
.lead--flush{margin:0 0 var(--sp-3)}
label+.scroll{margin-top:var(--sp-5)}
.tl+.stats{margin-block:var(--section-compact)}
.card h3{margin-bottom:var(--sp-1)}
/* ---- Home hero and showreel ---- */
.reel{grid-column:span 12;margin-top:var(--sp-8);position:relative;overflow:hidden;border-radius:var(--r-md);min-height:clamp(500px,78vh,780px);touch-action:pan-y;display:grid;color:var(--t-olive);background:linear-gradient(120deg,var(--t-sky),var(--c-beige-25),var(--t-mint),var(--t-zest));background-size:300% 300%;animation:drift 14s ease-in-out infinite alternate}
.reel.is-paused,.reel.is-paused *{animation-play-state:paused}
@keyframes drift{from{background-position:0% 50%}to{background-position:100% 50%}}
.reel__scene{position:absolute;inset:0;opacity:0;background:var(--scene) center/cover no-repeat;transform:scale(1.08);transition:opacity .8s var(--ease)}
.reel__scene.is-on{opacity:1;animation:reelzoom 6s ease-out both}
@keyframes reelzoom{from{transform:scale(1)}to{transform:scale(1.08)}}
.reel__scene--plant{--scene:var(--p-plant)}.reel__scene--store{--scene:var(--p-store)}.reel__scene--sell{--scene:var(--p-sell)}
.reel.has-photo{color:var(--c-beige)}.reel.has-photo::after{content:"";position:absolute;inset:0;background:rgba(6,31,0,.5)}
.reel__copy{position:relative;z-index:1;align-self:center;justify-self:center;display:flex;flex-direction:column;align-items:center;gap:var(--sp-2);margin:0;padding:var(--sp-8) var(--sp-4) var(--sp-11);text-align:center;font:var(--fw-medium) min(var(--fs-hero),8.2vw)/var(--lh-hero) var(--font-sans);letter-spacing:var(--ls-hero);color:var(--c-forest)}.reel.has-photo .reel__copy{color:var(--c-beige)}
.reel__line{display:block;padding:.12em .3em .16em;cursor:pointer;background:rgba(255,255,255,.45);border-radius:var(--r-btn);transition:background-color .4s var(--ease),color .4s var(--ease),transform .4s var(--ease)}.reel.has-photo .reel__line{background:rgba(6,31,0,.45)}.reel__line:hover{transform:translateY(-2px)}.reel__line.is-on,.reel.has-photo .reel__line.is-on{color:var(--c-forest);background:var(--c-lime)}
.reel__bar{position:absolute;z-index:1;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:space-between;gap:var(--sp-4);padding:var(--sp-5)}
.reel__tabs{display:flex;gap:var(--sp-5);flex:1;max-width:420px}
.reel__tab{flex:1;display:flex;flex-direction:column;gap:var(--sp-2);padding:0;text-align:left;font:var(--fw-medium) 14px/1 var(--font-sans);color:inherit;background:none;border:0;cursor:pointer}
.reel__tab span{display:block;height:2px;overflow:hidden;transition:height var(--dur) var(--ease);background:rgba(77,107,24,.25)}.reel.has-photo .reel__tab span{background:rgba(255,255,255,.3)}
.reel__tab:hover span,.reel__tab:focus-visible span{height:4px}.reel__tabs:hover .reel__tab i{animation-play-state:paused}
.reel__tab i{display:block;height:100%;width:0;background:currentColor}
.reel__tab.is-on i{width:100%;transform-origin:left;animation:reel 5s linear both}
@keyframes reel{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.reel__pause{flex:none;width:36px;height:36px;display:inline-grid;place-items:center;color:var(--c-forest);background:var(--c-white);border:1px solid rgba(6,31,0,.15);border-radius:var(--r-full);cursor:pointer;transition:opacity var(--dur) var(--ease)}.reel__pause:hover{opacity:var(--fade-link)}
@media(max-width:809px){.reel{min-height:460px}}
@media(prefers-reduced-motion:reduce){.reel__line{transform:none}.reel__scene{transform:none}.reel__pause{display:none}.reel__tab.is-on i{transform:none}}
/* ---- Home hero header ---- */
.hero{display:grid;gap:var(--sp-8) var(--gutter);grid-template-columns:repeat(var(--columns),minmax(0,1fr));padding:var(--section-compact) var(--page-inline) var(--section-default)}
.hero__text{grid-column:span 12;display:flex;flex-direction:column;gap:var(--sp-6)}
.hero__label{display:flex;align-items:center;gap:var(--sp-3);font:400 16px/1.3 var(--font-sans)}.hero__label::before{content:"";width:8px;height:8px;flex:none;background:var(--c-lime)}
.hero__title{font-family:var(--font-sans);font-weight:var(--fw-medium);font-size:var(--fs-hero);line-height:var(--lh-hero);letter-spacing:var(--ls-hero);text-wrap:wrap}
.hero__sub{margin:0;max-width:700px;font:400 var(--fs-lead)/var(--lh-lead) var(--font-sans);color:rgba(6,31,0,.78)}
.hero__wave{display:inline-flex;align-items:center;gap:3px;height:.27em;margin:0;vertical-align:middle;-webkit-mask-image:linear-gradient(90deg,transparent,#000 16%,#000 84%,transparent);mask-image:linear-gradient(90deg,transparent,#000 16%,#000 84%,transparent)}
.hero__wave i{display:block;width:2px;height:100%;border-radius:var(--r-xs);background:var(--c-lime);transform:scaleY(.35);animation:wave 1.6s ease-in-out infinite alternate}
.hero__wave i:nth-child(3n){animation-delay:-.4s}.hero__wave i:nth-child(3n+1){animation-delay:-.9s}.hero__wave i:nth-child(4n){animation-delay:-1.3s}.hero__wave i:nth-child(5n){animation-delay:-.2s}.hero__wave i:nth-child(7n){animation-delay:-1.1s}
@keyframes wave{to{transform:scaleY(1)}}
.hero__actions{grid-column:span 12;display:flex;gap:var(--sp-6);align-items:center;flex-wrap:wrap}
.hero__actions .btn{height:40px;padding:0 var(--sp-6);font:var(--fw-semi) 16px/1 var(--font-sans);letter-spacing:-.02em;color:var(--c-lime)}.hero__actions .btn:hover{color:var(--c-forest)}
.hero__link{display:inline-flex;align-items:center;gap:var(--sp-2);font:var(--fw-semi) 16px/1 var(--font-sans);letter-spacing:-.02em;text-decoration:none}
.hero__link .arw{transition:transform var(--dur) var(--ease)}.hero__link:hover .arw{transform:translateX(3px)}
@media(max-width:809px){.hero__wave{display:none}}
/* ---- Price and service cards ---- */
.price-card,.offer{display:flex;flex-direction:column;padding:var(--sp-6);text-decoration:none;color:inherit;background:var(--c-white);border:1px solid var(--c-beige-50);border-radius:var(--r-md);box-shadow:var(--e-card)}
.offer{transition:border-color var(--dur) var(--ease)}a.offer:hover{border-color:var(--c-forest)}
.price-card .chg,.offer .free{align-self:flex-start;display:inline-block;padding:3px 10px;font-size:var(--fs-small);line-height:1.4;font-weight:var(--fw-semi);background:var(--t-zest);border-radius:var(--r-pill)}
.offer .free{color:var(--c-forest)}
.offer svg{width:32px;height:32px;margin-bottom:var(--sp-3)}
.offer .free{margin-bottom:var(--sp-2)}
.offer .card__meta{margin:var(--sp-1) 0 var(--sp-4)}
.how{margin-top:auto;padding:var(--sp-3);font-size:var(--fs-small);line-height:var(--lh-small);background:var(--c-beige-50);border-radius:var(--r-inset)}
#prices{gap:var(--sp-4);grid-template-columns:repeat(5,minmax(0,1fr))}
.price-card{padding:var(--sp-4)}
.price-card .cimg.banner{display:grid;width:100%;height:auto;aspect-ratio:3/2;margin:0 0 var(--sp-3);border:0;border-radius:var(--r-inset);box-shadow:none}
.price-card .card__title{margin:var(--sp-2) 0 var(--sp-1)}
.price-card .big{margin-bottom:var(--sp-3)}
.price-card .how{padding:var(--sp-2) var(--sp-3)}.price-card .spark{display:block;height:28px}
@media(max-width:1199px){#prices{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:809px){#prices{grid-template-columns:repeat(2,minmax(0,1fr))}.price-card{padding:var(--sp-3)}.price-card .big{font-size:var(--fs-s4)}}
/* ---- Charts ---- */
.mini{height:44px;min-width:110px}td .mini{width:150px}
.chart-box{height:380px}.chart-box--heat{height:520px}.chart-card{margin-top:var(--gutter);overflow-x:auto}.chart-box--heat{min-width:640px}.price-card .mini{height:64px;min-width:0}
.chart-box--life{height:560px}
.chart-title{margin-bottom:var(--sp-4)}
.g2{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:809px){.g2{grid-template-columns:minmax(0,1fr)}.chart-box{height:340px}.chart-box--heat{height:520px}.chart-box--life{height:600px}}
