:root { color-scheme: light; }
body { overflow-x: hidden; }
.hero-grid { background-image: linear-gradient(rgba(23,33,27,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(23,33,27,.06) 1px,transparent 1px); background-size: 42px 42px; mask-image: linear-gradient(to bottom,black,transparent 90%); }
.editor-shell { transform: perspective(1200px) rotateY(-1.5deg) rotateX(1deg); }
.eyebrow { margin-bottom: 1rem; font-family: 'JetBrains Mono',monospace; font-size: .72rem; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; color: #35734c; }
.section-title { font-size: clamp(2.45rem,5vw,4.4rem); line-height: 1.02; letter-spacing: -.055em; font-weight: 600; }
.persona-card { min-height: 245px; border: 1px solid rgba(23,33,27,.1); border-radius: 1rem; background: white; padding: 1.5rem; transition: transform .2s ease,border-color .2s ease; }
.persona-card:hover { transform: translateY(-3px); border-color: rgba(23,33,27,.28); }
.persona-card span,.module b { font-family:'JetBrains Mono',monospace; font-size:.68rem; color:#43815a; }
.persona-card h3 { margin-top: 3.5rem; font-size:1.15rem; font-weight:600; }
.persona-card p { margin-top:.65rem; color:rgba(23,33,27,.62); line-height:1.6; font-size:.92rem; }
.outcome { position:relative; border-bottom:1px solid rgba(255,255,255,.12); padding:1rem 0 1rem 2rem; color:rgba(255,255,255,.72); }
.outcome::before { content:'✓'; position:absolute; left:0; color:#c9ff68; }
.chat { display:grid; gap:.7rem; }
.chat p { border-radius:.75rem; background:#f6f5ef; padding:.9rem 1rem; color:rgba(23,33,27,.67); font-size:.88rem; line-height:1.5; }
.chat b { display:block; margin-bottom:.2rem; font-family:'JetBrains Mono',monospace; font-size:.65rem; text-transform:uppercase; letter-spacing:.1em; color:#17211b; }
.chat-dark p { background:rgba(255,255,255,.07); color:rgba(255,255,255,.72); }
.chat-dark b { color:#c9ff68; }
.module { display:grid; gap:.55rem; padding:1.4rem 0; }
.module h3 { font-size:1.1rem; font-weight:600; }
.module p { color:rgba(23,33,27,.58); line-height:1.65; }
.skip-list { display:grid; gap:.7rem; font-family:'JetBrains Mono',monospace; font-size:.82rem; color:rgba(23,33,27,.42); }
.skip-list span { text-decoration:line-through; text-decoration-color:#a23d32; text-decoration-thickness:2px; }
details { padding:1.25rem 0; }
summary { cursor:pointer; list-style:none; font-weight:600; padding-right:2rem; position:relative; }
summary::after { content:'+'; position:absolute; right:.25rem; font-family:'JetBrains Mono',monospace; color:#43815a; }
details[open] summary::after { content:'−'; }
details p { max-width:44rem; padding-top:.8rem; color:rgba(23,33,27,.62); line-height:1.7; }
button:focus-visible,a:focus-visible,summary:focus-visible { outline:3px solid #5a9e6e; outline-offset:3px; }
@media (min-width:768px) { .module { grid-template-columns:50px minmax(260px,.8fr) 1fr; align-items:baseline; gap:1.5rem; } }
@media (max-width:640px) { .editor-shell { transform:none; } }
@media (prefers-reduced-motion:reduce) { * { scroll-behavior:auto!important; transition:none!important; } }
