:root{--bg-canvas:#eef7f2;--bg-surface:#ffffff;--bg-surface-hover:#e2efe5;--text-primary:#1f2937;--text-muted:#4c6255;--accent-primary:#14532d;--accent-secondary:#84601c;--border-subtle:#bed1c3;--ease-kinetic:cubic-bezier(.16,1,.3,1);--shadow-elevation:0 12px 32px -4px rgba(20,53,30,.15);--glow-accent:0 0 24px -4px rgba(20,83,45,.12);--glass-backdrop:blur(16px) saturate(180%)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg-canvas);color:var(--text-primary);font:17px/1.75 "Trebuchet MS","Segoe UI",sans-serif;overflow-wrap:anywhere;hyphens:auto}a{color:var(--accent-primary);text-underline-offset:4px}a:hover{text-decoration-thickness:2px}button,input,textarea,select{font:inherit}button,a,input,textarea,summary{touch-action:manipulation}:focus-visible{outline:3px solid var(--accent-secondary);outline-offset:5px}img{display:block;width:100%;height:100%;object-fit:cover}figure{margin:0}h1,h2,h3,p{margin-top:0}h1,h2,h3{color:var(--accent-primary);line-height:1.17;letter-spacing:-.035em}h1{font-size:clamp(2.3rem,4.7vw,4.8rem);max-width:20ch;margin-bottom:20px}h2{font-size:clamp(1.65rem,2.8vw,2.5rem);margin-bottom:22px}h3{font-size:1.2rem;letter-spacing:-.015em}p{margin-bottom:1.2em}small,.small{font-size:.85rem}.frame{max-width:1360px;margin:30px auto;border:1px solid var(--accent-primary);padding:0 42px;background:rgba(255,255,255,.25)}.site-header{position:relative;display:flex;align-items:center;gap:28px;justify-content:space-between;min-height:100px;border-bottom:1px solid var(--accent-primary)}.brand{display:flex;align-items:center;gap:9px;text-decoration:none;font-size:1.05rem;font-weight:700;letter-spacing:-.04em;flex-shrink:0}.brand-mark{display:grid;place-items:center;width:30px;height:30px;border:1px solid var(--accent-primary);border-radius:50%;font-size:1.2rem}.site-nav{display:flex;gap:19px;align-items:center}.site-nav a{font-size:.85rem;font-weight:700;text-decoration:none;white-space:nowrap}.site-nav a:hover,.site-nav a[aria-current=page]{text-decoration:underline}.menu-toggle{display:none}.skip-link{position:absolute;left:12px;top:-100px;background:white;padding:10px;z-index:20}.skip-link:focus{top:10px}main{max-width:1200px;margin:0 auto}.hero{position:relative;padding:42px 0 32px;isolation:isolate;border-bottom:1px solid var(--accent-primary)}.hero:after{content:"";position:absolute;inset:12% 0 12% 58%;background:linear-gradient(120deg,transparent,#d9eadc,#f0ebd8,transparent);background-size:200% 200%;animation:gradientShift 12s ease infinite;z-index:-1;opacity:.7}.eyebrow{text-transform:uppercase;letter-spacing:.15em;font-size:.72rem;font-weight:700;color:var(--text-muted);margin-bottom:14px}.hero .intro{max-width:68ch;margin:0;font-size:1.08rem}.hero-home h1{max-width:23ch;font-size:clamp(2.2rem,4.2vw,4.1rem)}.bento{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-template-areas:"intro intro intro intro intro intro intro intro photo photo photo photo" "edibles edibles edibles edibles edibles edibles layouts layouts layouts layouts layouts layouts" "vertical vertical vertical vertical fruit fruit fruit fruit companion companion companion companion" "faq faq faq faq faq faq faq faq faq faq faq faq";gap:0;margin:28px 0 45px;border-left:1px solid var(--border-subtle);border-top:1px solid var(--border-subtle)}.region{padding:28px;border-right:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle);background:var(--bg-surface);min-width:0}.region-intro{grid-area:intro}.region-photo{grid-area:photo;padding:0;position:relative}.region-edibles{grid-area:edibles}.region-layouts{grid-area:layouts}.region-vertical{grid-area:vertical}.region-fruit{grid-area:fruit}.region-companion{grid-area:companion}.region-faq{grid-area:faq;background:#e4efe5}.region-photo img{aspect-ratio:1/1;min-height:100%}.photo-caption{position:absolute;bottom:0;left:0;right:0;background:rgba(17,40,23,.88);color:#fff;padding:14px 20px;font-size:.8rem}.plant-list{list-style:none;padding:0;margin:0 0 22px}.plant-list li{display:grid;grid-template-columns:32px minmax(0,1fr);gap:12px;padding:16px 0;border-bottom:1px solid var(--border-subtle)}.plant-list li:first-child{padding-top:0}.plant-list p{margin:5px 0 0;font-size:.94rem}.badge{display:grid;place-items:center;border:1px solid var(--border-subtle);border-radius:50%;height:30px;width:30px;font-size:.78rem;color:var(--accent-primary);font-weight:700}.button,button{display:inline-block;border:1px solid var(--accent-primary);background:var(--accent-primary);color:white;padding:11px 19px;text-decoration:none;font-weight:700;cursor:pointer;box-shadow:4px 4px 0 #082e17;transition:transform .25s var(--ease-kinetic),box-shadow .25s var(--ease-kinetic),background .25s}.button:hover,button:hover{transform:translate(2px,2px);box-shadow:2px 2px 0 #082e17;background:#1d6239}.button.secondary,button.secondary{background:white;color:var(--accent-primary)}.text-link{font-weight:700}.square-photo{aspect-ratio:1/1;overflow:hidden;margin:22px 0}.wide-photo{aspect-ratio:16/9;overflow:hidden}.thumb{width:82px;aspect-ratio:1/1;flex-shrink:0}.horizontal-feature{display:flex;gap:20px;align-items:center;border-top:1px solid var(--border-subtle);padding-top:20px}.horizontal-feature p{margin:0}.article-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:0;border-top:1px solid var(--border-subtle);border-left:1px solid var(--border-subtle);margin:30px 0 45px}.article-main{grid-column:span 8}.article-side{grid-column:span 4;background:#e4efe5}.article-wide{grid-column:span 12}.article-half{grid-column:span 6}.prose{max-width:70ch;margin-left:auto;margin-right:auto}.prose p:last-child{margin-bottom:0}.evidence{border-left:3px solid var(--accent-secondary);padding:14px 18px;background:#f6f2e5;margin:24px 0}.evidence p{margin:0}.meta{font-size:.84rem;color:var(--text-muted)}.reading-layout{max-width:850px;margin:35px auto 50px}.reading-layout section{padding:25px 0;border-bottom:1px solid var(--border-subtle)}.reading-layout h2{font-size:1.7rem}.auto-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr));gap:24px}.plan{display:grid;grid-template-columns:1fr .6fr 1fr;gap:8px;padding:15px;background:#f5f1e3;border:1px solid var(--border-subtle);font-size:.82rem;text-align:center;margin:18px 0}.plan-bed{padding:17px 8px;background:#d8ead9;border:2px solid #527e53;color:#173e23}.plan-path{display:grid;place-items:center;background:#e9ddbe;border:1px dashed #7b663e;color:#493b20}.plan-support{grid-column:1/-1;padding:8px;border:3px double #527e53;background:#e3ecd9;color:#173e23}.plan-caption{font-size:.8rem;color:var(--text-muted)}details{border-bottom:1px solid var(--border-subtle);padding:19px 0}summary{font-weight:700;color:var(--accent-primary);cursor:pointer;padding-right:16px}details p{margin:14px 0 0;max-width:70ch}details[open]{padding-bottom:24px}.source-list{padding-left:20px;font-size:.92rem}.source-list li{padding-bottom:8px}.site-footer{border-top:1px solid var(--accent-primary);padding:28px 0 30px;display:flex;gap:25px;justify-content:space-between;align-items:flex-start;font-size:.83rem}.site-footer p{margin:0 0 7px}.footer-links{display:flex;gap:10px 18px;flex-wrap:wrap;max-width:420px}.footer-brand{font-weight:700}.field{margin-bottom:20px}label{display:block;font-weight:700;margin-bottom:6px}input,textarea,select{width:100%;padding:12px;border:1px solid #789782;background:#fff;color:var(--text-primary);border-radius:0}textarea{resize:vertical;min-height:155px}.actions{display:flex;flex-wrap:wrap;gap:16px;margin:20px 0}.status{min-height:1.7em;font-size:.9rem}.message-output{white-space:pre-wrap;background:#f6f7f1;padding:18px;border:1px solid var(--border-subtle);font:inherit;max-height:400px;overflow:auto}.reveal{opacity:1}.js .reveal{opacity:0;transform:translateY(18px);transition:opacity .7s var(--ease-kinetic),transform .7s var(--ease-kinetic)}.js .reveal-visible{opacity:1;transform:translateY(0)}@keyframes gradientShift{0%,100%{background-position:0 50%}50%{background-position:100% 50%}}
@media(min-width:1025px){.region-intro{padding:32px}.article-side .square-photo{margin-top:0}}
@media(min-width:769px) and (max-width:1024px){.frame{margin:20px;padding:0 25px}.site-header{flex-wrap:wrap;gap:12px;padding:22px 0}.site-nav{width:100%;justify-content:space-between;gap:12px}.region{padding:22px}.region-vertical,.region-fruit,.region-companion{grid-column:span 12;grid-area:auto}.bento{grid-template-areas:"intro intro intro intro intro intro intro intro photo photo photo photo" "edibles edibles edibles edibles edibles edibles layouts layouts layouts layouts layouts layouts" "vertical vertical vertical vertical vertical vertical vertical vertical vertical vertical vertical vertical" "fruit fruit fruit fruit fruit fruit fruit fruit fruit fruit fruit fruit" "companion companion companion companion companion companion companion companion companion companion companion companion" "faq faq faq faq faq faq faq faq faq faq faq faq"}}
@media(max-width:768px){.frame{margin:14px;padding:0 20px}.site-header{min-height:80px}.menu-toggle{display:block;padding:2px 12px;font-size:1.7rem;line-height:1.4;box-shadow:none}.site-nav{display:none;position:absolute;top:100%;left:0;right:0;z-index:10;flex-direction:column;align-items:stretch;background:#fff;border:1px solid var(--accent-primary);padding:14px;box-shadow:var(--shadow-elevation)}.site-nav.is-open{display:flex}.site-nav a{padding:9px}.hero{padding:30px 0}.bento{grid-template-columns:1fr;grid-template-areas:"intro" "photo" "edibles" "layouts" "vertical" "fruit" "companion" "faq"}.region-photo img{max-height:360px;aspect-ratio:4/3}.article-grid{grid-template-columns:1fr}.article-main,.article-side,.article-wide,.article-half{grid-column:1}.region{padding:24px}.site-footer{flex-direction:column}.hero:after{inset:20% 0 10% 40%}}
@media(max-width:480px){body{font-size:16px}.frame{margin:8px;padding:0 14px}.brand{font-size:.95rem;gap:7px}.brand-mark{width:26px;height:26px}.region{padding:20px}.hero-home h1{font-size:2.2rem}.plan{padding:8px;gap:5px}.plan-bed{padding:14px 4px}.horizontal-feature{align-items:flex-start}.actions{flex-direction:column;align-items:stretch}.actions button{text-align:center}.site-footer{padding-bottom:24px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js .reveal{opacity:1;transform:none}}
@media print{.site-header,.site-footer,.menu-toggle,.actions{display:none}.frame{border:0;margin:0;padding:0}.js .reveal{opacity:1;transform:none}a{color:#14532d}.region{break-inside:avoid}.hero:after{display:none}}