@font-face{font-family:"EB Garamond";src:url("/assets/fonts/EBGaramond-normal-400.ttf") format("truetype");font-weight:400;font-display:swap}
@font-face{font-family:"EB Garamond";src:url("/assets/fonts/EBGaramond-normal-500.ttf") format("truetype");font-weight:500;font-display:swap}
@font-face{font-family:"EB Garamond";src:url("/assets/fonts/EBGaramond-normal-600.ttf") format("truetype");font-weight:600;font-display:swap}
@font-face{font-family:"EB Garamond";src:url("/assets/fonts/EBGaramond-italic-400.ttf") format("truetype");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:Inter;src:url("/assets/fonts/Inter-normal-400.woff2") format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:Inter;src:url("/assets/fonts/Inter-normal-500.woff2") format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:Inter;src:url("/assets/fonts/Inter-normal-600.woff2") format("woff2");font-weight:600;font-display:swap}
:root{--gold:#c9a227;--ink:#101714;--paper:#f4efe3;--scrim-core:.62}
[data-theme="dark"]{--bg:#101714;--bg2:#16201b;--text:#ece5d3;--text-soft:#b9b2a0;--card:#182420;--line:#33443a;--scrim-a:rgba(16,23,20,.80);--scrim-b:rgba(16,23,20,.70);--scrim-c:rgba(16,23,20,.78);--veil:rgba(16,23,20,.62)}
[data-theme="light"]{--bg:#f4efe3;--bg2:#ece5d3;--text:#1d2620;--text-soft:#5c564a;--card:#faf7ee;--line:#cfc5ab;--scrim-a:rgba(244,239,227,.90);--scrim-b:rgba(244,239,227,.85);--scrim-c:rgba(244,239,227,.89);--veil:rgba(244,239,227,.50)}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,system-ui,sans-serif;line-height:1.6;font-size:17px}
h1,h2,h3,.serif{font-family:"EB Garamond",Georgia,serif;font-weight:500;line-height:1.12}
h1{font-size:clamp(2.4rem,6vw,4.2rem);margin:.2em 0 .3em}h1 em,h2 em{color:var(--gold);font-style:italic}
h2{font-size:clamp(1.8rem,3.6vw,2.6rem);margin:.2em 0 .4em}
a{color:var(--gold)}a:hover{text-decoration-thickness:2px}
.wrap{max-width:1120px;margin:0 auto;padding:0 22px}.narrow{max-width:760px}
.eyebrow{letter-spacing:.22em;text-transform:uppercase;font-size:.72rem;font-weight:600;color:var(--gold)}
header.site{position:sticky;top:0;z-index:20;background:var(--bg);border-bottom:1px solid var(--line)}
.hd{display:flex;align-items:center;gap:18px;padding:12px 22px;max-width:1120px;margin:0 auto}
.brand{font-family:"EB Garamond",serif;font-size:1.5rem;letter-spacing:.28em;color:var(--text);text-decoration:none;font-weight:600}
nav.main{display:flex;gap:20px;margin-left:auto;flex-wrap:wrap}nav.main a{color:var(--text);text-decoration:none;font-size:.95rem}nav.main a:hover{color:var(--gold)}
button.toggle{margin-left:8px;background:none;border:1px solid var(--line);color:var(--text);border-radius:999px;padding:6px 14px;cursor:pointer;font:inherit;font-size:.85rem}
.sceneband{position:relative;overflow:hidden}
.sceneband::before{content:"";position:absolute;inset:0;background-image:var(--art);background-size:cover;background-position:center 62%}
.sceneband::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,var(--scrim-a),var(--scrim-b) 50%,var(--scrim-c)),radial-gradient(ellipse 175% 125% at 50% 45%,var(--veil),transparent 85%)}
.sceneband>.wrap{position:relative;z-index:1}
.hero{padding:110px 0 90px}.lede{font-size:1.25rem;color:var(--text);max-width:38em}.lede-sub{color:var(--text-soft);max-width:42em}
.btn{display:inline-block;background:var(--gold);color:#141a16;padding:12px 24px;border-radius:6px;text-decoration:none;font-weight:600}
.btn.ghost{background:transparent;color:var(--text);border:1px solid var(--line)}
.cta-row{display:flex;gap:14px;flex-wrap:wrap;margin-top:26px}
.block{padding:70px 0}.section-head{margin-bottom:34px}.section-head p{color:var(--text-soft);max-width:44em}
.doors{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:18px}
.door{display:block;background:var(--card);border:1px solid var(--line);border-top:4px solid var(--accent,var(--gold));border-radius:10px;padding:22px;text-decoration:none;color:var(--text)}
.door:hover{border-color:var(--accent,var(--gold))}
.door .mark{height:38px;display:flex;align-items:center}.door .mark img{height:36px;width:auto}
.door .wordonly{font-family:"EB Garamond",serif;font-size:1.05rem;letter-spacing:.14em;color:var(--text-soft)}
.door h3{font-size:1.45rem;margin:.35em 0 .1em}.door .tag{font-family:"EB Garamond",serif;font-style:italic;color:var(--gold);display:block}
.door .one{color:var(--text-soft);font-size:.94rem;display:block;margin-top:.5em}
.door .guide{font-size:.82rem;color:var(--text-soft);display:block;margin-top:.7em}.door .url{font-size:.8rem;color:var(--text-soft);display:block;margin-top:.3em}
table.roster{width:100%;border-collapse:collapse}table.roster th,table.roster td{border-bottom:1px solid var(--line);padding:14px 10px;text-align:left;vertical-align:top}
table.roster th{font-size:.75rem;letter-spacing:.18em;text-transform:uppercase;color:var(--text-soft)}
.guide-label{font-size:.85rem;color:var(--text-soft);font-style:italic}
.prose p{max-width:44em}.promise{background:var(--card);border:1px solid var(--gold);border-radius:10px;padding:28px}
.tenets{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:18px;list-style:none;padding:0}
.tenets li{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:20px}.tenets .num{font-family:"EB Garamond",serif;color:var(--gold);font-size:1.3rem}
blockquote{font-family:"EB Garamond",serif;font-size:clamp(1.6rem,3.4vw,2.3rem);margin:0}blockquote em{color:var(--gold)}
footer.site{border-top:1px solid var(--line);padding:44px 0 54px;background:var(--bg2)}
.strip{display:flex;gap:16px;flex-wrap:wrap;list-style:none;padding:0;margin:0 0 22px}.strip a{color:var(--text);text-decoration:none;font-size:.85rem;letter-spacing:.08em}.strip a:hover{color:var(--gold)}
.fine{font-size:.82rem;color:var(--text-soft)}
.catline{display:flex;align-items:center;gap:10px;color:var(--text-soft);font-size:.85rem}
.catline svg{flex:none}
.promisemark{vertical-align:-6px;margin-left:5px}
@media(max-width:700px){.hero{padding:64px 0 54px}nav.main{gap:12px}}
.doors .book{cursor:default}
.book .dl{display:flex;gap:16px;flex-wrap:wrap;margin-top:.8em}
.book .dl a{font-size:.88rem;font-weight:600}
