@font-face{font-family:QGaramond;src:url('../fonts/EBGaramond-Regular-Latin.woff2') format('woff2');font-weight:400;font-display:swap}
:root{--bg:#0f0d0a;--brass:#B08D57;--brass2:#C9A877;--cream:#efe4cb;--soft:#a59a86}
*{box-sizing:border-box}
html,body{margin:0;height:100%;background:radial-gradient(ellipse at 50% 45%,#1b1711 0%,var(--bg) 70%);color:var(--cream);font-family:QGaramond,Georgia,serif;overflow:hidden}
#map{position:fixed;inset:0;width:100vw;height:100vh;display:block;touch-action:none;cursor:grab}
#map.dragging{cursor:grabbing}
.top{position:fixed;top:0;left:0;right:0;z-index:2;text-align:center;padding:22px 16px 26px;pointer-events:none;background:linear-gradient(#0f0d0a 0%,rgba(15,13,10,.85) 65%,rgba(15,13,10,0))}
.top a,.top *{pointer-events:auto}
.home{position:absolute;left:22px;top:24px;color:var(--brass2);text-decoration:none;font-size:17px;letter-spacing:.06em}
.home:hover{color:var(--cream)}
h1{margin:0;font-weight:400;font-style:normal;color:var(--brass2);font-size:clamp(30px,4.2vw,48px);letter-spacing:.08em}
.intro{margin:6px auto 0;max-width:34em;color:var(--soft);font-size:clamp(15px,1.5vw,18px)}
.hint{position:fixed;bottom:14px;left:0;right:0;text-align:center;color:#7d715e;font-size:14px;letter-spacing:.05em;margin:0;z-index:2;pointer-events:none}
.panel{position:fixed;z-index:3;top:0;right:0;bottom:0;width:min(400px,92vw);overflow:auto;background:rgba(20,17,13,.94);border-left:1px solid rgba(176,141,87,.35);padding:30px 28px 40px;backdrop-filter:blur(6px);box-shadow:-20px 0 60px rgba(0,0,0,.45)}
.panel[hidden]{display:none}
.close{position:absolute;top:12px;right:14px;background:none;border:0;color:var(--brass2);font-size:30px;cursor:pointer;font-family:inherit}
.kicker{margin:0 0 6px;color:var(--brass);font-size:13px;letter-spacing:.18em;text-transform:uppercase}
.panel h2{margin:0 0 10px;font-weight:400;font-size:32px;color:var(--cream)}
.desc{font-size:18px;line-height:1.45;color:#d9cdb3;margin:0 0 22px}
.panel h3{font-weight:400;font-size:13px;letter-spacing:.18em;text-transform:uppercase;color:var(--brass);margin:20px 0 8px}
.panel ul{list-style:none;margin:0;padding:0}
.panel li{margin:0 0 9px;font-size:17px;line-height:1.3}
.panel li a{color:var(--cream);text-decoration:none;border-bottom:1px solid rgba(176,141,87,.4)}
.panel li a:hover{color:var(--brass2)}
.panel li .t{display:block;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:#8d8170;margin-bottom:1px}
.deeper{margin-top:26px;padding:18px;border:1px solid rgba(176,141,87,.35)}
.deeper li{color:#d9cdb3;font-size:16px}
.cta{display:inline-block;margin-top:8px;padding:9px 18px;border:1px solid var(--brass);color:var(--brass2);text-decoration:none;letter-spacing:.08em}
.cta:hover{background:var(--brass);color:var(--bg)}
.rel button{background:none;border:1px solid rgba(176,141,87,.35);color:#d9cdb3;font-family:inherit;font-size:15px;padding:4px 10px;margin:0 6px 6px 0;cursor:pointer}
.textlist{position:absolute;left:-9999px}
.textlist:focus-within{left:16px;top:120px;z-index:4;background:var(--bg);padding:12px}
.textlist button{background:none;border:0;color:var(--cream);font-family:inherit}
@media (max-width:640px){.home{position:static;display:block;margin-bottom:6px;font-size:15px}.top{padding-top:14px}.panel{top:auto;width:100vw;max-height:62vh;border-left:0;border-top:1px solid rgba(176,141,87,.35);padding:22px 20px 30px}.panel h2{font-size:27px}.hint{font-size:12px}}
.panel .none{color:#8d8170;font-size:16px;margin:0 0 10px}
.rel button.hubbtn{border-color:rgba(201,168,119,.75);color:var(--brass2)}

/* space-a2: near-black ground (approved Oct 21) */
html,body{background:radial-gradient(ellipse at 50% 45%,#07080d 0%,#050609 45%,#030305 78%,#020203 100%)!important;background-color:#020203!important;background-attachment:fixed}.top{background:linear-gradient(#040406 0%,#040406d9 65%,#04040600)!important}.panel{background:#060709f2!important;border-left-color:rgba(176,141,87,.3)!important}h1,.home{color:#C9A877!important}
