/* One optional maze vignette. Keeps the established GWEB visual tokens. */
.door-wrap{max-width:880px;margin:0 auto;padding:50px 25px 90px}
.door-head{margin:18px 0 24px}.door-head h1{font-size:clamp(30px,5vw,58px);margin:10px 0 12px;line-height:1.12;letter-spacing:-.04em}.door-head h1 em{color:var(--mint);font-style:normal}
.door-head p{max-width:630px;color:#b4cac8;line-height:1.75}.vignette{background:linear-gradient(140deg,#132734,#0f1b2b);border:1px solid var(--line);border-radius:14px;padding:26px}
.door-diagram{background:#0b1721;border:1px solid #344d4b;border-radius:10px;padding:10px;margin-bottom:24px}.door-diagram svg{width:100%;max-height:180px;display:block}
.story-lead{font-size:17px;line-height:1.9;color:#e2ece7;max-width:65ch}.story-lead p{margin:0 0 16px}.vignette h2{font-size:18px;margin:20px 0 14px;color:#e4f1e9}
.door-choices{display:grid;gap:10px}.door-choice{background:#19303a;color:#e3ece8;border:1px solid #40635b;border-radius:9px;padding:14px 16px;text-align:left;font-size:14px;line-height:1.5;cursor:pointer}.door-choice:hover,.door-choice:focus-visible{border-color:var(--mint);background:#20423c}.door-choice[aria-pressed=true]{border-color:var(--gold);background:#253c37}
.door-reveal{margin-top:21px;border:1px solid #46665f;background:#183333;border-radius:10px;padding:17px;line-height:1.8;color:#dceee3}.door-reveal[hidden]{display:none}.door-reveal strong{color:var(--gold);display:block;margin-bottom:7px}.door-end{margin-top:12px;font-size:13px;color:#a8cfbc}.door-end[hidden]{display:none}
.door-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-top:18px}.door-return{font-weight:750;color:var(--mint);text-decoration:none;font-size:12px}.door-hint{font-size:12px;color:#93afb0}.door-note{font-size:12px;color:#91abb0;line-height:1.8;margin-top:18px}.door-choice:focus-visible,.door-return:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
@media(max-width:600px){.door-wrap{padding:24px 15px 60px}.vignette{padding:18px}.story-lead{font-size:15px}.door-footer{align-items:flex-start}}
