/* Public landing: light botanical palette, shared SVG icons and responsive content. */
@import url("/assets/fonts.css");
:root{color-scheme:light;--bg:#f6f5f0;--paper:#fffefa;--ink:#243d32;--muted:#59665c;--green:#285340;--line:#d9dfd4;--clay:#94552e;font-family:Onest,Arial,Helvetica,sans-serif;color:var(--ink);background:var(--bg);font-synthesis:none;-webkit-font-smoothing:antialiased}

*{box-sizing:border-box}
body{margin:0}
[hidden]{display:none!important}
img{max-width:100%;height:auto}
button{font:inherit}
a{color:inherit;text-decoration:none}
h1,h2,h3,p{margin:0}
h1,h2,h3{text-wrap:balance}
p{text-wrap:pretty}
h1:focus,main:focus{outline:none}
::selection{background:#ccdfbd;color:#183e2a}
:focus-visible{outline:2px solid #285340;outline-offset:5px}
html{scroll-padding-top:28px}
em{font-family:inherit;font-style:normal;font-weight:600;color:var(--green)}
.wrap{width:min(1120px,calc(100% - 96px));margin-inline:auto}
.icon{width:22px;height:22px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:48px;padding:13px 24px;border:1px solid transparent;border-radius:100px;font-size:.875rem;font-weight:500;text-decoration:none;cursor:pointer;transition:background 180ms ease,color 180ms ease}
.primary{background:var(--green);color:#fffefa}
.glass,.quiet{background:#fffefa99;border-color:#c5d0bf;backdrop-filter:blur(8px);color:var(--ink)}
.inline-link{padding-inline:8px;border-radius:10px;display:inline-flex;align-items:center;gap:12px;min-height:44px;text-decoration:none;color:var(--green);font-size:.9rem}
.brand{display:inline-flex;align-items:center;gap:8px;text-decoration:none;font-size:30px;font-weight:600;letter-spacing:-.04em}
.brand img{display:block;width:42px;height:42px;object-fit:contain}
.brand-dot{color:var(--clay)}
.skip{position:fixed;top:-120px;left:16px;z-index:100;background:var(--green);color:var(--bg);padding:12px 18px;border-radius:8px}
.skip:focus{top:12px}

.public-header{position:absolute;top:24px;left:0;right:0;z-index:5;width:min(960px,calc(100% - 48px));max-width:calc(100% - 48px);display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:24px;padding:10px 0;border:0;background:transparent}
.public-header .brand{justify-self:start}
.public-header .account-link{justify-self:end}
.public-header nav{display:flex;gap:4px;align-items:center;padding:6px;border-radius:100px;background:#fffefad9;backdrop-filter:blur(18px);box-shadow:0 8px 28px #243d320b}
.public-header nav a{position:relative;padding:12px 18px;border-radius:100px;display:inline-flex;align-items:center;min-height:44px;text-decoration:none;font-size:.8125rem;font-weight:500;color:var(--muted);transition:background 180ms ease,color 180ms ease,transform 180ms ease}
.public-header nav a:hover,.public-header nav a:focus-visible{background:#e3ecd9;color:var(--green);transform:translateY(-1px)}
.public-header .account-link{min-height:48px;padding:10px 20px;border:0;background:var(--green);color:var(--paper);box-shadow:0 6px 18px #243d3214}
.public-header .account-link:hover{background:#1d4231}
.public-header .account-link.is-icon{width:48px;padding:12px}
.account-link.is-icon{width:44px;padding:10px}
.account-link.is-icon [data-account-label]{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}

.landing-hero{min-height:max(820px,100svh);position:relative;display:grid;grid-template-rows:auto minmax(240px,1fr) auto;padding:130px 48px 36px;gap:24px;background:var(--bg)}
.hero-heading{text-align:center;position:relative;z-index:1}
.hero-description{max-width:58ch;margin:20px auto 0;font-size:1rem;line-height:1.65;color:var(--muted)}
.hero-heading h1{font-weight:400;line-height:1.1;letter-spacing:-.025em}
.hero-heading h1 span{display:block;font-size:clamp(1.125rem,2vw,1.75rem);font-weight:400;letter-spacing:-.015em;margin-bottom:10px}
.hero-heading h1 em{display:block;font-size:clamp(5rem,9vw,8rem);line-height:1.08;color:var(--green);font-weight:400;letter-spacing:-.04em}
.hero-scene{align-self:stretch;justify-self:center;width:min(1120px,100%);min-height:280px;max-height:380px;position:relative;overflow:hidden;border-radius:16px}
.hero-garden-image{display:block;width:100%;height:100%;object-fit:cover;object-position:center 60%}
.hero-bottom{display:flex;flex-direction:column;align-items:center;gap:24px;width:100%;max-width:920px;margin:0 auto}
.hero-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:12px}
.hero-start{text-align:center;width:100%}
.hero-notes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px;width:100%;text-align:left}
.hero-notes p{display:flex;align-items:flex-start;gap:12px;font-size:.875rem;line-height:1.65;color:var(--muted)}
.hero-notes .icon{margin-top:2px;color:var(--green)}

.section{padding-block:68px}
.section h2[id]{scroll-margin-top:0}
h2{font-size:clamp(2rem,3.2vw,2.8rem);line-height:1.13;letter-spacing:-.035em;font-weight:400}
h3{font-size:1.15rem;font-weight:500;line-height:1.4;letter-spacing:-.015em}
.section-intro{display:flex;justify-content:space-between;align-items:start;gap:32px;margin-bottom:32px}
.section-intro>p{max-width:34ch;line-height:1.8;color:var(--muted);font-size:.9375rem}
.section-intro.steps-intro{display:block}
.section-intro.steps-intro>p{max-width:56ch;margin-top:20px}
.steps-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}
.step-card{padding:28px;border:1px solid var(--line);border-radius:24px;background:linear-gradient(145deg,#fffefa,#edf2e780);box-shadow:0 8px 28px #243d3205}
.step-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}
.step-icon{display:inline-flex;color:var(--green)}
.step-icon .icon{width:30px;height:30px}
.step-number{font-size:.8125rem;color:var(--muted)}
.step-card h3{margin-bottom:10px}
.step-card p{font-size:.9375rem;line-height:1.7;color:var(--muted);max-width:34ch}
.story-map{min-width:0;align-self:center;display:grid;grid-template-columns:minmax(0,1fr);gap:12px}
.story-map>div{display:flex;align-items:center;gap:18px;padding:18px;border-radius:16px;background:#fffefa99}
.story-map>div:last-child{border:0}
.story-map .icon{width:28px;height:28px;color:var(--green)}
.story-map span{min-width:0;overflow-wrap:anywhere;display:grid;gap:5px;font-size:.875rem;color:var(--muted);line-height:1.5}
.story-map strong{font-size:1rem;font-weight:500;color:var(--ink)}
.demo-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.product-demo{padding:36px;border-radius:24px;border:1px solid var(--line);background:linear-gradient(145deg,#fffefa,#f0f3e9);box-shadow:0 12px 32px #243d3208}
.product-demo p{font-size:.9375rem;color:var(--muted);line-height:1.8;margin-top:16px}
.product-demo-lead{grid-column:1/-1;display:grid;grid-template-columns:1.1fr .9fr;gap:64px;padding:40px;background:#e4ecdb}
.product-demo-lead h3{font-size:clamp(1.8rem,2.6vw,2.5rem);line-height:1.2}
.product-demo-lead .inline-link{margin-top:24px}
.story-icon{display:inline-flex;margin-bottom:24px;color:var(--green)}
.story-icon .icon{width:30px;height:30px}
.faq-section{display:grid;grid-template-columns:.8fr 1.2fr;gap:48px}
.faq-list details{margin-bottom:12px;padding-inline:20px;border:0;border-radius:18px;background:var(--paper)}
.faq-list summary{padding:24px 32px 24px 0;position:relative;cursor:pointer;font-size:1rem;line-height:1.5;list-style:none}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary::after{content:'+';position:absolute;right:0;top:20px;font-size:24px;color:var(--green)}

.faq-list p{font-size:.9375rem;color:var(--muted);line-height:1.8;padding-bottom:24px}
.closing-cta{display:flex;align-items:center;gap:32px;padding:32px 40px;background:linear-gradient(120deg,#e4ecdb,#f2ebdd);border:1px solid #d5decc;border-radius:24px}
.closing-cta img{width:130px;height:130px;object-fit:contain}
.closing-cta h2{font-size:clamp(1.8rem,3vw,2.6rem)}
.closing-cta p{margin-top:12px;color:var(--muted);line-height:1.6}
.closing-cta .button{margin-left:auto;flex-shrink:0}
.public-footer{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:48px;color:var(--muted);font-size:.8125rem}
.public-footer>a:not(.brand){display:inline-flex;align-items:center;min-height:44px}
.landing :is(p,h1,h2,h3,a,summary){overflow-wrap:anywhere}

@media(hover:hover) and (pointer:fine){.primary:hover{background:#193f2e}
.glass:hover,.quiet:hover{background:#e8eee3}
.inline-link:hover{color:var(--green);background:#e8eee3}
}

@media(max-width:1000px){.public-header{gap:24px}
.public-header nav{gap:2px}
.landing-hero{min-height:max(820px,100svh);position:relative;display:grid;grid-template-rows:auto minmax(240px,1fr) auto;padding:130px 48px 36px;gap:24px;background:var(--bg)}
.wrap{width:calc(100% - 64px)}
.closing-cta{flex-wrap:wrap}
.closing-cta .button{margin-left:0}
.public-footer{flex-wrap:wrap}
.section-intro{align-items:start}
.section-intro>p{max-width:30ch}
}

@media(max-width:700px){.hero-notes{grid-template-columns:1fr;gap:16px;max-width:38ch}
.wrap{width:calc(100% - 40px)}
.public-header{top:16px;max-width:calc(100% - 32px);width:calc(100% - 32px);grid-template-columns:minmax(0,1fr) auto;padding:8px 0;gap:12px}
.public-header nav{display:none}
.brand{font-size:28px}
.landing-hero{min-height:100svh;padding:116px 20px 30px;gap:22px;grid-template-rows:auto minmax(260px,1fr) auto}
.hero-heading h1 span{font-size:1.125rem;margin-bottom:10px}
.hero-heading h1 em{font-size:clamp(3.5rem,14vw,6rem);line-height:1.13}
.hero-scene{width:100%;min-height:260px;max-height:390px;border-radius:12px}
.hero-actions{gap:10px}
.hero-actions .button{padding:12px 18px;font-size:.8125rem}
.section{padding-block:44px}
.section-intro{display:block;margin-bottom:32px}
.section-intro>p{max-width:none;margin-top:24px}
.steps-grid{grid-template-columns:1fr;gap:24px}
.step-card p{max-width:none}
.demo-grid{grid-template-columns:minmax(0,1fr);gap:16px}
.product-demo{padding:26px}
.product-demo-lead{grid-template-columns:minmax(0,1fr);gap:24px}
.faq-section{grid-template-columns:minmax(0,1fr);gap:28px}
.closing-cta{padding:28px;gap:20px}
.closing-cta img{width:90px;height:90px}
.closing-cta .button{width:100%}
.public-footer{gap:16px 24px;padding-block:32px}
.public-footer p{flex-basis:100%}
}

@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}
@media(forced-colors:active){.button,.public-header{border:1px solid ButtonText}
:focus-visible{outline-color:Highlight}
}

/* Native disclosure interaction, with a progressive height transition. */
.faq-list details{transition:background .2s,box-shadow .2s}
.faq-list details[open]{background:#edf2e7;box-shadow:inset 0 0 0 1px #dce5d5}
.faq-list details>summary{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:64px;padding:20px 0;list-style:none;font-weight:600;cursor:pointer;color:var(--green)}
.faq-list details>summary::-webkit-details-marker{display:none}
.faq-list details>summary::after{content:'+';position:static;display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;border-radius:50%;background:#e1e9d8;font:22px/1 sans-serif;color:var(--green);transition:transform .22s,background .22s}
.faq-list details[open]>summary::after{content:'+';transform:rotate(45deg);background:#d3dfc8}
.faq-list details>summary:focus-visible{outline:2px solid var(--green);outline-offset:4px;border-radius:8px}
@supports (interpolate-size:allow-keywords){
 .faq-list details{interpolate-size:allow-keywords}
 .faq-list details::details-content{block-size:0;overflow:clip;opacity:0;transition:block-size .25s ease,opacity .2s,content-visibility .25s allow-discrete}
 .faq-list details[open]::details-content{block-size:auto;opacity:1}
}
@media(prefers-reduced-motion:reduce){.faq-list details,.faq-list details>summary::after,.faq-list details::details-content{transition:none}}

@media(prefers-reduced-motion:reduce){.public-header nav a{transition:none}.public-header nav a:hover,.public-header nav a:focus-visible{transform:none}}
