/* Seeds to Tree v4 - original, self-contained preview styling */
:root{color-scheme:dark;--bg:#101d1b;--panel:#1b302b;--panel2:#243c32;--text:#f5f4e9;--muted:#c7d3c7;--gold:#f2c66d;--leaf:#a5d88d;--border:#476053;--max:1050px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at 85% 0,#1d382c 0,transparent 35%),var(--bg);color:var(--text);font:17px/1.7 system-ui,-apple-system,Segoe UI,sans-serif}a{color:#d5ecab;text-underline-offset:.22em}a:hover{color:#fff}button{font:inherit}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:4px}.wrap{width:min(var(--max),calc(100% - 2.5rem));margin-inline:auto}.skip-link{position:absolute;top:-100px;left:1rem;z-index:100;background:#fff;color:#000;padding:.7rem}.skip-link:focus{top:1rem}.site-header{position:relative;z-index:20;background:#101e1bea;border-bottom:1px solid #ffffff1a}.header-inner{max-width:1280px;margin:auto;display:flex;align-items:center;gap:1rem;padding:.8rem 1.2rem}.brand{white-space:nowrap;font-weight:750;letter-spacing:.04em;text-decoration:none;color:#fff}.brand-mark{color:var(--gold)}nav{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:.2rem;margin-left:auto}nav a{padding:.35rem .55rem;color:var(--muted);font-size:.81rem;text-decoration:none;border-radius:6px}nav a[aria-current=page],nav a:hover{background:#2c463a;color:#fff}.menu-toggle{display:none;margin-left:auto;background:transparent;border:1px solid var(--border);border-radius:6px;color:#fff;padding:.35rem .75rem}.page-intro{padding-top:4.3rem;padding-bottom:1.3rem}.eyebrow{text-transform:uppercase;letter-spacing:.2em;font-size:.76rem;color:var(--gold);font-weight:750}h1,h2,h3{font-family:Georgia,serif;line-height:1.2}h1{font-size:clamp(2.5rem,5.4vw,4.5rem);margin:.2rem 0 .8rem}h2{font-size:clamp(1.55rem,3vw,2.2rem);margin:2rem 0 .5rem}h3{font-size:1.4rem}.prose{padding-bottom:5rem;max-width:1000px}.prose>p{max-width:840px}.lead{font-size:clamp(1.15rem,2.2vw,1.5rem);color:#e6efdf;line-height:1.55}.button{display:inline-block;text-align:center;text-decoration:none;border-radius:100px;padding:.7rem 1.3rem;font-weight:750;cursor:pointer;border:2px solid transparent}.button-primary{background:var(--gold);color:#1a231a}.button-primary:hover{background:#ffe3a4;color:#162218}.button-ghost{background:transparent;color:#f7ebc9;border-color:var(--gold)}.button-ghost:hover{background:#3e4330;color:#fff}.button:disabled{opacity:.6;cursor:default}.warning,.callout{padding:1.1rem 1.3rem;border-radius:12px;margin:2rem 0;max-width:900px}.warning{border-left:5px solid var(--gold);background:#453e2b}.callout{border-left:5px solid var(--leaf);background:#223a31}.micro{font-size:.82rem;color:var(--muted)}.center{text-align:center}.site-footer{border-top:1px solid #ffffff25;background:#0b1512}.footer-row{display:flex;justify-content:space-between;flex-wrap:wrap;gap:.5rem;padding:1.3rem 0;color:var(--muted);font-size:.85rem}.footer-row p{margin:.3rem 0}.entry-stage{min-height:calc(100svh - 68px);position:relative;isolation:isolate;overflow:hidden;display:flex;align-items:center;justify-content:center;text-align:center;padding:6rem 1.2rem 4rem;background:radial-gradient(ellipse at 50% 50%,#2c244b 0%,#121a2b 43%,#070e1c 100%)}.stars{position:absolute;inset:0;z-index:-3;background-image:radial-gradient(#ffffffb3 1px,transparent 1.5px),radial-gradient(#fff7b3a8 1px,transparent 1.5px);background-size:83px 79px,151px 123px;background-position:0 0,31px 29px;opacity:.45}.rainbow-bridge{position:absolute;z-index:-2;left:50%;bottom:-12%;transform:translateX(-50%) rotate(-11deg);width:min(1100px,120vw);height:58%;border-radius:50% 50% 0 0;opacity:.75;filter:drop-shadow(0 0 25px #b58cff88)}.rainbow-bridge span{position:absolute;inset:0;border-top:8px solid transparent;border-radius:50% 50% 0 0}.rainbow-bridge span:nth-child(1){border-color:#ed6978;top:0}.rainbow-bridge span:nth-child(2){border-color:#e7a86d;top:11px}.rainbow-bridge span:nth-child(3){border-color:#f7e18b;top:22px}.rainbow-bridge span:nth-child(4){border-color:#8bdbb1;top:33px}.rainbow-bridge span:nth-child(5){border-color:#8cc7ef;top:44px}.rainbow-bridge span:nth-child(6){border-color:#b7a4f7;top:55px}.crystal-drop{position:absolute;z-index:-1;width:120px;height:175px;top:12%;left:calc(50% - 60px);clip-path:polygon(50% 0,88% 36%,100% 65%,50% 100%,0 65%,12% 36%);background:linear-gradient(125deg,#fff8bb 0%,#f3b36b 25%,#f25f48 45%,#8d4bc6 74%,#fff5c0 100%);filter:drop-shadow(0 0 25px #ffb96e);box-shadow:inset 15px 8px 35px #fff7;opacity:.95}.crystal-drop span{position:absolute;inset:14%;clip-path:polygon(50% 0,95% 55%,50% 100%,5% 55%);background:radial-gradient(circle,#fff2bd 0%,#ff9a42 40%,transparent 75%)}.entry-copy{position:relative;margin-top:7rem;padding:1rem;max-width:800px;text-shadow:0 2px 15px #000}.entry-copy h1{font-size:clamp(2.5rem,6vw,5.6rem)}.entry-copy>p:not(.eyebrow){max-width:580px;margin:1rem auto 2rem}.entry-copy .micro{margin-top:2rem}.card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1.6rem 0}.card{background:linear-gradient(145deg,var(--panel),#162922);border:1px solid var(--border);border-radius:16px;padding:1.3rem}.card h2,.card h3{margin:.25rem 0 .7rem}.card p{margin:.6rem 0}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:2rem 0}.gallery-placeholder{aspect-ratio:3/4;min-height:210px;background:linear-gradient(135deg,#31483d,#182e2b 55%,#34392b);border:1px dashed #b5c9a4;border-radius:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:1rem;gap:1rem}.gallery-placeholder span{font:italic 3rem Georgia,serif;color:var(--gold)}.gallery-placeholder small{color:var(--muted)}.door-scene{display:flex;justify-content:center;padding:2rem 1rem 1rem;background:radial-gradient(ellipse,#33412b,transparent 68%)}.door-frame{height:340px;width:min(430px,90vw);display:flex;position:relative;border:12px solid #4e3426;border-radius:130px 130px 8px 8px;overflow:hidden;box-shadow:0 0 0 6px #856445,0 25px 50px #0009}.door{width:50%;height:100%;position:relative;background:repeating-linear-gradient(90deg,#65452e 0,#65452e 14px,#714c30 17px,#583925 23px);border:4px solid #2f1b14}.door-left{border-right:2px solid #24180e}.door-right{border-left:2px solid #24180e}.door:before{content:"";position:absolute;inset:12% 12%;border:6px ridge #92673f;border-radius:50% 50% 8px 8px}.door-handle{position:absolute;top:56%;width:11px;height:11px;border-radius:50%;background:#e4c58c;z-index:2}.door-left .door-handle{right:10px}.door-right .door-handle{left:10px}.door-seam{position:absolute;top:10%;bottom:0;left:calc(50% - 1px);width:2px;background:#f7e9a0;box-shadow:0 0 10px #ffe5a8;opacity:.16;transition:opacity .2s}.door-frame:hover .door-seam,.door-frame:focus-within .door-seam{opacity:.8}.door-action{text-align:center}.status-text{color:#f6dba1;text-align:center;min-height:2em}.unmarked-globe{margin:2rem auto 0;width:110px;height:110px;border-radius:50%;background:radial-gradient(circle at 32% 26%,#e4edcc,#8bbaab 40%,#315e63 80%,#173637);box-shadow:inset -15px -15px 22px #112e30,0 0 0 9px #e7c17b20,0 12px 30px #0008}.seed-simulator{max-width:650px;margin:2rem auto;border:1px solid var(--border);border-radius:18px;overflow:hidden;background:#142d2c;text-align:center}.seed-sky{height:170px;position:relative;background:linear-gradient(#182e3a,#3c625b)}.seed-soil{height:90px;position:relative;background:linear-gradient(#4c372b,#30251d)}.demo-seed{position:absolute;top:0;left:calc(50% - 12px);width:24px;height:30px;border-radius:55% 45% 50% 50%;background:#d6aa6e;transition:transform .7s}.demo-sprout{position:absolute;left:calc(50% - 2px);bottom:-30px;width:4px;height:100px;transform:scaleY(0);transform-origin:bottom;transition:transform 1s}.stem{position:absolute;bottom:0;left:0;height:100%;width:5px;border-radius:4px;background:#9ad27c}.leaf{position:absolute;width:48px;height:25px;background:#a4e88d;border-radius:0 80% 0 80%;bottom:65px}.leaf-left{right:3px;transform:rotate(-30deg)}.leaf-right{left:6px;transform:scaleX(-1) rotate(-30deg)}.seed-simulator.planted .demo-seed{transform:translateY(40px)}.seed-simulator.planted .demo-sprout{transform:scaleY(1)}.demo-controls{display:flex;gap:.7rem;justify-content:center;flex-wrap:wrap;padding:0 1rem 1.5rem}.commitments{padding-left:1.5rem}.commitments li{margin-bottom:.7rem}.faq-list details{padding:1rem 0;border-bottom:1px solid var(--border)}.faq-list summary{font-weight:700;cursor:pointer}.contact-card{border:1px solid var(--border);border-radius:15px;background:var(--panel);padding:2rem;max-width:700px}.contact-link{font-size:clamp(.95rem,2.5vw,1.5rem);overflow-wrap:anywhere}
@media(max-width:1080px){html.js .menu-toggle{display:block}nav{display:grid;position:absolute;left:0;right:0;top:100%;background:#132720;border-bottom:1px solid var(--border);padding:1rem;grid-template-columns:repeat(3,minmax(0,1fr));gap:.2rem;max-height:calc(100dvh - 68px);overflow-y:auto;overscroll-behavior:contain}html.js nav{display:none}html.js nav.open{display:grid}nav a{padding:.65rem}}@media(max-width:640px){body{font-size:16px}.wrap{width:min(var(--max),calc(100% - 2rem))}.page-intro{padding-top:2.4rem}.card-grid,.gallery-grid{grid-template-columns:1fr}nav,nav.open{grid-template-columns:repeat(2,minmax(0,1fr))}.entry-copy{margin-top:9rem}.crystal-drop{top:9%;width:92px;height:130px;left:calc(50% - 46px)}.rainbow-bridge{width:145vw;bottom:-4%}.door-frame{height:280px}.footer-row{display:block}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* Canonical entry artwork: recovered original, not regenerated. */
.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.original-art-entry{min-height:calc(100svh - 68px);padding:0;background:#131d28;display:block;position:relative}
.entry-art{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center center}
.entry-continue{position:absolute;bottom:clamp(2rem,8vh,6rem);left:50%;transform:translateX(-50%);background:#132922e8;color:#fff;text-decoration:none;padding:.7rem 2rem;border:1px solid #e4c78a;border-radius:100px;box-shadow:0 8px 30px #0008;font-weight:750;letter-spacing:.07em}
.entry-continue:hover{background:#304d3b;color:#fff}
.unmarked-globe{touch-action:none;cursor:grab;position:relative;overflow:hidden}
.unmarked-globe:active{cursor:grabbing}
.globe-meridian{position:absolute;inset:5px;border-radius:50%;background:repeating-linear-gradient(90deg,transparent 0 18px,#ffffff25 19px 20px,transparent 21px 35px);transform:rotate(var(--globe-turn,0deg));transition:transform .1s linear;pointer-events:none}
@media(prefers-reduced-motion:reduce){.globe-meridian{transition:none}}

.door-frame:focus-visible{outline:3px solid var(--gold);outline-offset:8px}
.entry-continue{max-width:calc(100% - 2rem);white-space:nowrap}

/* Visible keyboard focus for the interactive globe. */
.unmarked-globe:focus-visible{outline:3px solid var(--gold);outline-offset:12px}

/* v4.5: if JavaScript is unavailable, navigation participates in document flow
   rather than covering the page, and inactive demonstration controls disappear. */
@media(max-width:1080px){
 html:not(.js) .header-inner{flex-wrap:wrap}
 html:not(.js) nav{position:static;width:100%;margin-left:0;max-height:none;overflow:visible;overscroll-behavior:auto}
}
html:not(.js) .js-required{display:none!important}

/* v4.10: one accessible, full-artwork Continue link; any tap on the artwork advances. */
.entry-art-link{position:absolute;inset:0;display:block;color:inherit;text-decoration:none}
.entry-art-link:focus-visible{outline:3px solid var(--gold);outline-offset:-8px}
.entry-art-link:focus-visible .entry-continue{background:#304d3b;box-shadow:0 0 0 4px var(--gold),0 8px 30px #0008}
.entry-art-link:hover .entry-continue{background:#304d3b;color:#fff}
.entry-art-link .entry-continue{z-index:1;pointer-events:none}

/* v4.11: fallback for browsers predating svh/dvh (notably older WebKit).
   Unsupported CSS declarations are ignored, leaving the preceding vh value.
   Without this, the absolutely positioned entry artwork has a zero-height parent. */
.entry-stage,.original-art-entry{
 min-height:calc(100vh - 68px);
 min-height:calc(100svh - 68px);
}
@media(max-width:1080px){
 nav{
  max-height:calc(100vh - 68px);
  max-height:calc(100dvh - 68px);
 }
}

/* Review candidate F: accessible, non-transactional seed amount demonstration. */
.amount-preview{border:2px solid var(--gold);background:var(--panel);padding:clamp(1rem,3vw,1.6rem);border-radius:18px;margin:1.5rem 0 2rem}
.amount-preview h2{margin:0 0 .6rem}.amount-preview p{margin:.6rem 0 1rem}
.amount-choices{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.75rem;border:0;padding:0;margin:0}
.amount-choices legend{font-weight:700;margin-bottom:.6rem}
.amount-choice{display:flex;align-items:flex-start;flex-direction:column;gap:.1rem;border:1px solid var(--border);border-radius:12px;background:#14271f;padding:.75rem;cursor:pointer;min-height:110px}
.amount-choice input{accent-color:var(--gold);width:20px;height:20px;margin:0 0 .2rem}
.amount-choice:focus-within{outline:3px solid var(--gold);outline-offset:2px}
.amount-choice:has(input:checked){background:#3b3b27;border-color:var(--gold)}
.amount-featured{border:2px solid var(--gold);background:#3b3b27}
.amount-value{font-size:clamp(1.7rem,3.5vw,2.3rem);font-weight:800;line-height:1.25;color:var(--gold)}
.amount-note{font-size:.82rem;color:var(--text)}
@media(max-width:420px){.amount-choices{grid-template-columns:repeat(2,minmax(0,1fr))}.amount-choice{min-height:108px}}
