:root{--bg:radial-gradient(900px 500px at 85% -10%,#5a3c14 0,transparent 60%),linear-gradient(180deg,#1f2318,#15170f 60%);--text:#f3ecdc;--muted:#bdb39b;--accent:#e9a23b;--onaccent:#1b1306;--card:#24281c;--line:rgba(233,214,170,.15);--r:18px;--btnr:99px;--font:"Gill Sans","Gill Sans MT","Trebuchet MS",system-ui,sans-serif;--display:"Rockwell","Roboto Slab","Georgia",serif;--scene:radial-gradient(circle at 78% 18%,rgba(255,190,90,.75),transparent 28%),linear-gradient(180deg,#3b4a2a 0,#22301a 70%,#4a3b26 70%,#3a2d1c)}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font-family:var(--font);color:var(--text);background:var(--bg);line-height:1.55}
a{color:var(--accent)}.wrap{max-width:1120px;margin:0 auto;padding:0 24px}
nav{display:flex;justify-content:space-between;align-items:center;padding:20px 0}
.brand{font-family:var(--display);font-weight:700;letter-spacing:.04em;font-size:1.15rem;color:var(--text);text-decoration:none}.brand span{color:var(--accent)}
.btn{display:inline-block;padding:12px 22px;border-radius:var(--btnr);background:var(--accent);color:var(--onaccent);font-weight:700;text-decoration:none}
.btn.ghost{background:transparent;color:var(--text);border:1px solid var(--line)}
.hero{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center;padding:56px 0 72px}
.eyebrow{color:var(--accent);text-transform:uppercase;letter-spacing:.16em;font-size:.75rem;font-weight:600}
h1{font-family:var(--display);font-size:clamp(2.2rem,5vw,3.5rem);line-height:1.05;margin:.3em 0}h1 em{font-style:normal;color:var(--accent)}
h2{font-family:var(--display);font-size:clamp(1.6rem,3vw,2.3rem);margin:0 0 .4em}
.lead{font-size:1.15rem;color:var(--muted);max-width:34em}.small{color:var(--muted);font-size:.92rem}
.ctas{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
section{padding:64px 0;border-top:1px solid var(--line)}
.open q{display:block;font-family:var(--display);font-size:clamp(1.4rem,3vw,2rem);quotes:none;margin-bottom:12px}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;margin-top:24px}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:20px}.card h3{margin:0 0 6px;font-size:1.02rem}.card p{margin:0;color:var(--muted);font-size:.93rem}
.kit{display:grid;grid-template-columns:1fr 1fr;gap:40px}.kit li{margin:6px 0}
.concept{position:relative;border-radius:var(--r);min-height:360px;border:1px solid var(--line);overflow:hidden;background:var(--scene)}
.tag{position:absolute;top:14px;left:14px;background:rgba(0,0,0,.55);color:#fff;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;padding:5px 10px;border-radius:6px;z-index:2}
.demo{display:grid;grid-template-columns:1fr 420px;gap:40px;align-items:start}
.demo iframe{width:420px;height:900px;border:0}
.beta{text-align:center;background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:48px 24px}
footer{padding:40px 24px 60px;color:var(--muted);font-size:.85rem}footer img{height:40px;width:auto;margin-bottom:10px}
@media(max-width:860px){.hero,.kit,.demo{grid-template-columns:1fr}.demo iframe{width:100%}}
.glass{position:absolute;inset:14% 10% 22% 10%;border:2px solid rgba(255,255,255,.35);border-radius:6px;background:linear-gradient(120deg,rgba(255,255,255,.08),transparent 40%)}.leaf{position:absolute;bottom:22%;width:70px;height:120px;background:#4f7a35;border-radius:0 100% 0 100%}.l1{left:18%;transform:rotate(-12deg)}.l2{left:30%;height:90px;background:#6a9a44;transform:rotate(18deg)}
.concept-img{background:#0000;min-height:0}.concept-img .hero-concept{display:block;width:100%;height:auto}

/* Demo: stage left | app right inside the iframe — give it the full row. */
.demo{grid-template-columns:1fr!important}.demo iframe{width:100%!important;height:1060px}
@media(max-width:640px){.demo iframe{height:1700px}}

/* Breathing room (James 2026-10-26): page no longer glued to the top; demo iframe auto-sizes to content. */
header.wrap{padding-top:28px}
section{scroll-margin-top:24px}
.demo iframe{height:900px;display:block}
@media(max-width:640px){.demo iframe{height:1500px}}
