:root{--night:#10191b;--night2:#1b292b;--paper:#f2eadc;--ink:#18272b;--muted:#667372;--copper:#c47d55;--line:rgba(242,234,220,.22)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif}a{color:inherit}.wrap{width:min(1160px,calc(100% - 44px));margin-inline:auto}.skip{position:absolute;left:-9999px;top:8px;background:white;color:#111;padding:10px;z-index:10}.skip:focus{left:8px}a:focus-visible,summary:focus-visible{outline:3px solid var(--copper);outline-offset:4px}
.site-header{height:90px;display:flex;align-items:center;justify-content:space-between}.brand{text-decoration:none;display:inline-flex;flex-direction:column;gap:5px}.brand strong{font:400 1.2rem Georgia,serif;letter-spacing:.04em}.brand span{font-size:.61rem;letter-spacing:.25em;color:#9a563b}.return{font-size:.78rem;letter-spacing:.08em;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:5px}.return:hover,.footer>a:last-child:hover{color:#9a563b}
.hero{position:relative;isolation:isolate;overflow:hidden;min-height:min(760px,calc(100svh - 90px));background:radial-gradient(ellipse 34% 40% at 77% 48%,rgba(200,115,67,.25),transparent 80%),linear-gradient(118deg,#10191b 34%,#26312d 78%,#10191b);color:var(--paper);display:flex;align-items:center}.hero:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 108px,rgba(242,234,220,.025) 109px 110px);pointer-events:none}.hero-glow{position:absolute;width:clamp(320px,48vw,670px);aspect-ratio:1;border:1px solid rgba(238,194,132,.35);border-radius:50%;right:8%;top:50%;transform:translateY(-50%);box-shadow:0 0 0 35px rgba(238,194,132,.025),0 0 0 105px rgba(238,194,132,.02),0 0 100px rgba(196,125,85,.1);opacity:.7}.hero-glow:after{content:"";position:absolute;inset:18%;border:1px solid rgba(238,194,132,.16);border-radius:50%}.hero-content{position:relative;padding-block:90px}.eyebrow,.chapter,.section-no,.door-num,.door-author{font-weight:700;letter-spacing:.2em;font-size:.69rem}.eyebrow{color:#e8a777}.chapter{margin:5rem 0 1.5rem;color:#c8b8a0}.hero h1,.intro h2,.doors h2,.riddle h2,.finale h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:.93;letter-spacing:-.045em}.hero h1{font-size:clamp(5rem,11vw,10.5rem);margin:0 0 2.2rem;max-width:850px}.hero h1 em,.doors h2 em{color:#d2916b;font-weight:400}.lead{font:1.25rem/1.65 Georgia,serif;max-width:600px;margin:0 0 2.4rem;color:#e6ded0}.button{display:inline-flex;gap:3rem;align-items:center;justify-content:space-between;text-decoration:none;padding:1.05rem 1.3rem;font-size:.78rem;font-weight:700;letter-spacing:.1em;transition:transform .2s,background .2s,color .2s}.button:hover{transform:translateY(-3px)}.button.light{border:1px solid rgba(242,234,220,.7)}.button.light:hover{background:var(--paper);color:var(--night)}.hero-index{position:absolute;right:0;bottom:4rem;color:#ad9780;letter-spacing:.3em;font-size:.7rem}
.intro{display:grid;grid-template-columns:1fr 2fr;gap:4rem;padding-block:8rem}.section-no{color:#a56042;margin:0}.intro h2,.riddle h2{font-size:clamp(3rem,5.4vw,6rem);margin:0 0 2rem}.intro h2 em,.riddle h2 em,.finale h2 em{font-weight:400;color:#a56042}.intro>div p:not(.fine){font:1.2rem/1.75 Georgia,serif;max-width:750px}.intro .fine{font-size:.83rem;line-height:1.6;color:#697270;max-width:700px}
.doors{background:var(--night);color:var(--paper);padding-block:7rem 8rem}.doors h2{font-size:clamp(3.5rem,7vw,7rem);margin:1.8rem 0 4rem}.door-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.door{background:var(--night);min-height:490px;padding:2rem;display:flex;flex-direction:column;transition:background .25s}.door:hover{background:var(--night2)}.door-num{color:#c99474}.door-mark{font:5rem Georgia,serif;color:#c99474;text-align:center;margin:auto 0 .5rem}.door h3{font:400 clamp(2rem,3vw,3.2rem)/1 Georgia,serif;margin:0 0 1.3rem}.door p{font:1rem/1.7 Georgia,serif;color:#d0cbc0;margin:0 0 2rem}.door-author{font-size:.58rem;color:#c99474;margin-top:auto;line-height:1.6}
.riddle{display:grid;grid-template-columns:1.1fr .9fr;gap:5rem;align-items:center;padding-block:9rem}.riddle h2{margin:1.5rem 0 2rem}.riddle-copy>p:not(.section-no){font:1.25rem/1.7 Georgia,serif;max-width:650px}.riddle details{border-block:1px solid rgba(24,39,43,.25);margin-top:2.5rem}.riddle summary{cursor:pointer;list-style:none;padding:1.3rem 0;display:flex;justify-content:space-between;font-size:.77rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.riddle summary::-webkit-details-marker{display:none}.riddle details[open] summary span{transform:rotate(45deg)}.riddle details>p{font:1.07rem/1.65 Georgia,serif;margin:0 0 1.5rem}.quote{border:1px solid rgba(24,39,43,.25);aspect-ratio:1;display:flex;flex-direction:column;justify-content:center;align-items:center;transform:rotate(3deg);color:#a56042}.quote span{font:4rem Georgia,serif;line-height:1}.quote p{font:italic clamp(1.8rem,3vw,3rem)/1.3 Georgia,serif;text-align:center;margin:0 1rem}
.finale{background:#d8c6ad;padding-block:7rem}.finale-inner{max-width:1000px}.finale h2{font-size:clamp(3.5rem,7vw,7.5rem);margin:1.5rem 0 2rem}.finale p:not(.section-no){font:1.2rem/1.7 Georgia,serif;max-width:650px}.button.dark{background:var(--ink);color:var(--paper);margin-top:1.5rem}.button.dark:hover{background:#9a563b}.footer{min-height:170px;display:flex;align-items:center;justify-content:space-between;gap:2rem}.footer p{font:italic 1rem Georgia,serif}.footer>a:last-child{font-size:.75rem;text-decoration:none;border-bottom:1px solid;padding-bottom:5px}
@media(max-width:800px){.intro,.riddle{grid-template-columns:1fr;gap:2.5rem;padding-block:5rem}.door-grid{grid-template-columns:1fr}.door{min-height:340px}.door-mark{font-size:3rem}.quote{display:none}.doors{padding-block:5rem}.doors h2{margin-bottom:3rem}.hero{min-height:690px}.hero-glow{right:-40%;opacity:.4}.hero-index{bottom:2rem}.footer{padding-block:2rem;flex-wrap:wrap}.footer p{order:3;width:100%;margin:0}}@media(max-width:500px){.wrap{width:min(100% - 32px,1160px)}.site-header{height:74px}.brand strong{font-size:1rem}.brand span{font-size:.52rem}.return{font-size:.68rem}.hero{min-height:650px}.hero-content{padding-block:65px}.chapter{margin-top:4rem}.hero h1{font-size:clamp(4.3rem,18vw,6rem)}.lead{font-size:1.08rem}.door{padding:1.5rem}.finale{padding-block:5rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
.door-grid{grid-template-columns:repeat(2,1fr)}.door{min-height:410px}.door-cta{display:inline-block;align-self:flex-start;margin-top:1.5rem;padding-bottom:.35rem;border-bottom:1px solid #d69b74;color:#f2eadc;text-decoration:none;font-size:.78rem;letter-spacing:.04em}.door-cta:hover{color:#e3a375}.after-dark{display:grid;grid-template-columns:1fr 1fr;gap:5rem;padding-block:8rem}.after-dark h2{font:400 clamp(2.8rem,5vw,5rem)/1 Georgia,serif;letter-spacing:-.04em;margin:1.5rem 0 2rem}.after-dark h2 em{color:#a56042;font-weight:400}.after-dark>div>p:not(.section-no){font:1.05rem/1.7 Georgia,serif;max-width:530px}.venue-list{border-top:1px solid rgba(24,39,43,.2)}.venue-list p{padding:1.2rem 0;margin:0;border-bottom:1px solid rgba(24,39,43,.2)}.venue-list a{font:1.25rem Georgia,serif;text-decoration:none}.venue-list a:hover{text-decoration:underline}.venue-list span{display:block;font-size:.77rem;color:#667372;margin-top:.4rem;line-height:1.5}@media(max-width:800px){.door-grid,.after-dark{grid-template-columns:1fr}.after-dark{gap:2rem;padding-block:5rem}.door{min-height:340px}}
