/* The first two chapters share one living garden. App and Help styles stay separate. */
.landing-forest>.header{position:absolute;inset:0 0 auto;z-index:20;color:#f6f1df;border-color:#d8e8c421}
.landing-forest>.header .brand-icon{background:#bbce9e}
.landing-forest>.header .nav-try{background:#d4dfbc;color:#18382c}
.landing-forest>.header .nav-try:hover{background:#e4e9ce}
.landing-forest>.header .menu-toggle{background:#1b382e;color:#f6f1df;border-color:#a7bd99}
.forest-story{display:grid;grid-template-rows:auto auto;position:relative;isolation:isolate;overflow:clip;background:#122b23;color:#f4f0dd;--forest-progress:0;--forest-x:0px;--forest-y:0px;--forest-scale:1;--sprout:1;--leafy:0;--bloom:0;--focus-reveal:1}
.forest-story::after{content:"";position:absolute;z-index:5;left:0;right:0;bottom:-1px;height:100px;background:linear-gradient(transparent,#e9efe1);pointer-events:none}
.forest-atmosphere{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0;background:radial-gradient(ellipse at 64% 24%,#60744138,transparent 43%),radial-gradient(ellipse at 4% 42%,#69856516,transparent 38%),linear-gradient(155deg,#0d241f,#1a372b 58%,#18362c)}
.forest-atmosphere::before{content:"";position:absolute;inset:-10%;background:radial-gradient(ellipse at 67% 30%,#c0b67b12,transparent 40%);animation:forest-air 28s ease-in-out infinite alternate}
.forest-pollen{position:absolute;left:var(--x);top:var(--y);width:var(--size);height:var(--size);border-radius:50%;background:#dfdcb1;opacity:.3;box-shadow:0 0 8px #d5dba433;animation:forest-drift var(--duration) ease-in-out var(--delay) infinite alternate}
.forest-pollen:nth-child(4n){border-radius:90% 0 90% 0;transform:rotate(35deg);background:#9dbb85;box-shadow:none}
.forest-pollen:nth-child(7n){width:2px;height:17px;opacity:.15;background:linear-gradient(transparent,#f1deb1);transform:rotate(32deg)}
.forest-visual{grid-column:1;grid-row:1 / 3;align-self:start;position:sticky;top:0;height:100svh;min-height:620px;pointer-events:none;z-index:1;overflow:hidden}
.forest-glow{position:absolute;left:68%;top:55%;width:min(58vw,760px);aspect-ratio:1;transform:translate(-50%,-50%) translate(var(--forest-x),var(--forest-y));border-radius:50%;background:radial-gradient(ellipse,#bdca6940 0,#8199571c 28%,transparent 66%);animation:forest-light 16s ease-in-out infinite alternate}
.forest-orbit{position:absolute;inset:22%;border:1px solid #d9e9a01a;border-radius:50%;transform:rotate(-25deg) scaleY(.85)}
.forest-orbit::after{content:"";position:absolute;top:13%;right:12%;width:5px;height:5px;border-radius:50%;background:#e0d9a2;box-shadow:0 0 13px 5px #c3c58626}
.forest-leaves{position:absolute;inset:auto 0 0;width:100%;height:55%;fill:#638267;stroke:none;opacity:.15}
.forest-ground{position:absolute;left:68%;top:83%;width:min(31vw,400px);height:18px;border-radius:50%;background:#d7d2a01c;filter:blur(9px);transform:translateX(-50%) translate(var(--forest-x),var(--forest-y)) scale(var(--forest-scale))}
.forest-plant{position:absolute;left:68%;top:19%;height:min(66svh,590px);aspect-ratio:220/340;transform:translateX(-50%) translate(var(--forest-x),var(--forest-y)) scale(var(--forest-scale));transform-origin:50% 94%;filter:drop-shadow(0 16px 24px #061c2440)}
.forest-plant-art{width:100%;height:100%;display:block;fill:none;stroke:none;stroke-width:0;overflow:visible}
.forest-plant-art .potbody{fill:#be805f}
.forest-plant-art .eyes-closed,.forest-plant-art .eyes-sleep{display:none}
.forest-plant-art .eyes{animation:forest-blink 8s ease-in-out infinite;transform-origin:180px 329px}
.forest-gaze{transform:translate(var(--look-x,0px),var(--look-y,0px));transition:transform .35s ease}
.forest-growth[data-growth-art=sprout]{opacity:var(--sprout)}
.forest-growth[data-growth-art=leafy]{opacity:var(--leafy)}
.forest-growth[data-growth-art=bloom]{opacity:var(--bloom)}
.forest-leaf-sway{animation:forest-sway 8s ease-in-out infinite;transform-origin:180px 279px}
.forest-pot{transform-origin:180px 389px}
.forest-story[data-greeting=true] .forest-pot{animation:forest-hello 1.2s ease-in-out}
.forest-opening.hero{grid-column:1;grid-row:1;height:100svh;min-height:620px;padding:0;text-align:left;position:relative;z-index:2}
.forest-copy{position:absolute;left:max(6.25vw,calc((100vw - 1120px)/2));top:27%;width:43%;max-width:570px}
.forest-opening .eyebrow{color:#bbceaa;letter-spacing:2px;font-size:10px;margin-bottom:24px}
.forest-opening h1{font-size:clamp(52px,5.5vw,80px);line-height:1.05;letter-spacing:-2.6px;margin:0 0 24px}
.forest-opening h1 em{color:#d2dcac}
.forest-opening .intro{color:#c4d0bd;font-size:16px;line-height:1.7;margin:0 0 29px;max-width:330px}
.forest-opening .primary{background:#d9e3bf;color:#19372a}
.forest-opening .primary:hover{background:#e9edd2}
.forest-opening .access-note{color:#b5c5ad;justify-content:flex-start;font-size:11px}
.forest-greeting{position:absolute;left:68%;top:83%;width:300px;transform:translateX(-50%);text-align:center}
.forest-greet{display:inline-flex;align-items:center;gap:7px;justify-content:center;min-height:44px;border:1px solid #b0c59299;border-radius:24px;padding:7px 15px;background:#18372dcc;color:#ecedd5;font-size:11px}
.forest-greet:hover{background:#284a37}
.forest-greet svg{width:15px;height:15px}
.forest-greeting #mascotMessage{margin-top:7px;font:italic 13px/1.6 var(--serif);color:#c5cfb6;min-height:42px}
.forest-bottom{position:absolute;inset:auto max(6.25vw,calc((100vw - 1120px)/2)) 24px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.forest-scroll{display:inline-flex;align-items:center;gap:15px;min-height:44px;font-size:11px;letter-spacing:.6px;color:#cbd4bc}
.forest-scroll svg{width:17px;height:22px}
.forest-scroll span{display:block;width:1px;height:30px;background:linear-gradient(#bdcda6,transparent)}
.forest-motion{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;border:1px solid #a8bc8f99;border-radius:23px;padding:8px 14px;color:#dce3cb;background:#18372d;font-size:11px;white-space:nowrap}
.forest-motion::before{content:"";width:5px;height:5px;border-radius:50%;background:#c4d999;box-shadow:0 0 7px #cfdfad44}
.forest-motion[aria-pressed=false]::before{background:#a6b1a0;box-shadow:none}
.forest-motion:disabled{cursor:default;opacity:1}
.forest-focus{grid-column:1;grid-row:2;position:relative;z-index:2;height:105svh;min-height:700px;scroll-margin-top:0}
.forest-focus-copy{position:absolute;top:24%;left:53%;width:40%;max-width:480px;opacity:calc(.25 + var(--focus-reveal)*.75);transform:translateY(calc((1 - var(--focus-reveal))*24px))}
.forest-focus .eyebrow{color:#bbcba9;font-size:10px;letter-spacing:2px;margin-bottom:20px}
.forest-focus h2{font-size:clamp(42px,4.3vw,62px);line-height:1.12;letter-spacing:-1.6px}
.forest-focus h2 em{color:#d2dcac}
.forest-focus-copy>p:not(.eyebrow){font-size:15px;line-height:1.8;color:#c3cfb8;max-width:350px;margin-top:20px}
.forest-timer{padding:24px 0 20px;margin-top:25px;border-block:1px solid #d4dfbc40;max-width:330px}
.forest-timer>span{display:flex;align-items:center;gap:8px;font-size:10px;letter-spacing:1.4px;color:#b6caa5}
.forest-timer svg{height:16px;width:16px}
.forest-timer strong{display:block;font:64px/1.1 var(--serif);font-variant-numeric:lining-nums tabular-nums;letter-spacing:-2px;margin-top:10px}
.forest-timer small{display:block;color:#bccbb1;font-size:11px;margin-top:9px}
.forest-focus-link{display:inline-flex;align-items:center;gap:13px;min-height:44px;color:#e2e9ce;font-size:12px;margin-top:15px}
.forest-focus-link svg{width:16px;height:16px}
.forest-focus-copy .forest-preview-note{font-size:10px!important;margin-top:10px!important;color:#aebfa5!important}
.landing-forest .company-section{border-radius:0}
.landing-forest .forest-story :focus-visible,.landing-forest>.header :focus-visible{outline-color:#e0d7a0;outline-offset:5px}
.forest-story[data-ambient=paused] *,.forest-story[data-ambient=paused] *::before,.forest-story[data-ambient=paused] *::after{animation-play-state:paused!important}
.forest-story[data-motion=off] *,.forest-story[data-motion=off] *::before,.forest-story[data-motion=off] *::after{animation:none!important;transition:none!important}
.forest-story[data-motion=off] .forest-gaze{transform:none}
.forest-story[data-static=true] .forest-visual{position:absolute;inset:0 0 auto;margin:0}
.forest-story[data-static=true] .forest-focus{height:auto;min-height:620px;display:flex;align-items:center;justify-content:center;padding:80px 24px 150px}
.forest-story[data-static=true] .forest-focus-copy{position:static;width:min(100%,700px);max-width:700px;text-align:center;opacity:1;transform:none}
.forest-story[data-static=true] .forest-focus-copy>p,.forest-story[data-static=true] .forest-timer{margin-inline:auto}
@keyframes forest-drift{to{translate:18px -45px;opacity:.65;rotate:15deg}}
@keyframes forest-air{to{transform:translate(-2%,2%) scale(1.04);opacity:.6}}
@keyframes forest-light{to{opacity:.65}}
@keyframes forest-sway{0%,100%{transform:rotate(-1deg)}50%{transform:rotate(1.5deg)}}
@keyframes forest-blink{0%,46%,50%,100%{transform:scaleY(1)}48%{transform:scaleY(.12)}}
@keyframes forest-hello{0%,100%{transform:none}35%{transform:rotate(-3deg) translateY(-3px)}65%{transform:rotate(2deg)}}
@media(max-width:1000px){.forest-copy{left:5%;width:47%}.forest-opening h1{font-size:57px}.forest-plant,.forest-glow,.forest-ground,.forest-greeting{left:73%}.forest-plant{height:min(58svh,420px);top:27%}.forest-focus-copy{left:51%;width:44%}.forest-focus h2{font-size:44px}.forest-bottom{left:5%;right:5%}}
@media(min-width:701px) and (max-height:800px){.forest-focus-copy{top:17%}.forest-focus h2{font-size:43px}.forest-timer{padding:17px 0;margin-top:18px}.forest-timer strong{font-size:54px}}
@media(max-width:700px){
 .landing-forest>.header{width:calc(100% - 36px);min-height:72px}
 .landing-forest>.header nav{background:#18372d;border-color:#a4b68b66;color:#f1f0da}
 .forest-opening.hero{min-height:780px;height:100svh}
 .forest-visual{min-height:780px}
 .forest-copy{top:14%;left:6%;width:88%;max-width:none;text-align:center}
 .forest-opening .eyebrow{font-size:9px;margin-bottom:16px}
 .forest-opening h1{font-size:48px;letter-spacing:-1.7px;line-height:1.08;margin-bottom:15px}
 .forest-opening .intro{font-size:14px;line-height:1.6;margin:0 auto 20px;max-width:300px}
 .forest-opening .access-note{justify-content:center;font-size:10px;margin-top:9px}
 .forest-opening .hero-cta{min-height:48px;font-size:13px}
 .forest-plant{left:50%;top:37%;height:43svh;min-height:335px;max-height:400px}
 .forest-glow{left:50%;top:67%;width:115vw;max-width:600px}
 .forest-ground{left:50%;top:81%;width:235px}
 .forest-greeting{left:50%;top:80%;width:285px}
 .forest-greeting #mascotMessage{font-size:12px;min-height:36px}
 .forest-bottom{left:6%;right:6%;bottom:15px;gap:10px}
 .forest-scroll{font-size:10px;gap:9px}.forest-motion{font-size:10px;padding:7px 12px}
 .forest-focus{min-height:850px;height:108svh}
 .forest-focus-copy{top:45%;left:8%;width:84%;max-width:none;text-align:center}
 .forest-focus .eyebrow{margin-bottom:14px;font-size:9px}
 .forest-focus h2{font-size:39px;letter-spacing:-1.1px}
 .forest-focus-copy>p:not(.eyebrow){font-size:13px;line-height:1.7;margin:15px auto 0;max-width:290px}
 .forest-timer{padding:16px 0;margin:20px auto 0;max-width:280px}
 .forest-timer>span{justify-content:center;font-size:9px}
 .forest-timer strong{font-size:54px;margin-top:7px}
 .forest-timer small{font-size:10px}
 .forest-focus-link{font-size:11px;margin-top:10px}
 .forest-focus-copy .forest-preview-note{font-size:9px!important;margin-top:3px!important}
 .forest-story::after{height:35px}
 .forest-story[data-static=true] .forest-opening,.forest-story[data-static=true] .forest-visual{height:860px;min-height:860px}
 .forest-story[data-static=true] .forest-plant{top:39%;height:365px;min-height:0}
 .forest-story[data-static=true] .forest-greeting{top:83%}
}
@media(max-width:360px){.forest-opening h1{font-size:42px}.forest-copy{top:15%}.forest-focus h2{font-size:35px}.forest-opening .eyebrow{letter-spacing:1.4px}.forest-opening .intro{font-size:13px}}
@media(max-height:600px){
 .forest-opening.hero{height:800px;min-height:800px}
 .forest-visual{height:800px;min-height:800px}
 .forest-copy{top:110px;left:7%;width:86%;text-align:center;max-width:none}
 .forest-opening h1{font-size:45px}.forest-opening .intro{margin:0 auto 20px}
 .forest-opening .access-note{justify-content:center}
 .forest-plant{left:50%;top:365px;height:315px;min-height:0}
 .forest-glow{left:50%;top:540px;width:500px}
 .forest-ground{left:50%;top:660px;width:200px}
 .forest-greeting{left:50%;top:665px}
 .forest-bottom{bottom:10px}
}
@media(prefers-reduced-motion:reduce){.forest-story *{animation:none!important;transition:none!important}}
