:root{color-scheme:dark;--gold:#f0d194;--ink:#0b1421;--mist:#b7d8cc}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 50% 20%,#204546,transparent 60%),var(--ink);color:#fff4dc;font:1rem/1.6 system-ui,sans-serif;min-height:100dvh}body:before{content:"";position:fixed;inset:0;z-index:-1;background-image:radial-gradient(circle,#ffe0a3 1px,transparent 1.6px),radial-gradient(circle,#9bf9d3 1px,transparent 1.7px);background-size:93px 101px,151px 173px;background-position:19px 31px,58px 71px;opacity:.36}a{color:var(--gold)}header{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px clamp(15px,5vw,65px);border-bottom:1px solid #f0d19433;background:#0b1421b0}header a{text-decoration:none;font-family:Georgia,serif}button,.button,nav a{font:inherit;cursor:pointer;border:1px solid #e7c88b77;background:#172e35;color:var(--gold);border-radius:9px;padding:9px 14px;text-decoration:none}button:hover,.button:hover,nav a:hover{background:#294b4a}main{width:min(980px,92%);margin:auto;text-align:center;padding:clamp(35px,7vw,86px) 0}h1,h2,h3{font-family:Georgia,serif;font-weight:400;line-height:1.04;margin:.2em 0;color:var(--gold)}h1{font-size:clamp(3rem,10vw,7rem)}h2{font-size:clamp(2.6rem,7vw,5.5rem)}h3{font-size:clamp(2rem,6vw,4rem)}p{color:var(--mist);max-width:45ch;margin:1rem auto 1.6rem}.eyebrow{color:var(--gold);letter-spacing:.22em;font-size:.76rem}.button{display:inline-block;background:#f0d194;color:#222c29;padding:12px 24px}.button:hover{background:#ffe6af}.book{width:132px;aspect-ratio:.84;margin:0 auto 30px;display:grid;place-content:center;border:5px double #efc381;border-radius:6px 13px 13px 6px;box-shadow:9px 8px #3c3025,0 0 60px #d6a75844;background:linear-gradient(115deg,#22252f,#553940);color:var(--gold);line-height:1}.book strong{font:3.4rem Georgia}.map{position:relative;max-width:760px;margin:20px auto;background:#111f2bd9;border:1px solid #d9ba8055;border-radius:32px;padding:18px}.map svg{display:block;width:100%;max-height:310px}nav,#acts{display:flex;justify-content:center;flex-wrap:wrap;gap:10px}.visited:after{content:" ✓"}.back{display:inline-block;margin-bottom:24px}#photos{display:grid;grid-template-columns:repeat(auto-fill,minmax(125px,1fr));gap:12px}#photos button{padding:4px;background:#e0b96c44}#photos img{display:block;width:100%;aspect-ratio:1;object-fit:cover;border-radius:5px}#stars{display:grid;grid-template-columns:repeat(auto-fit,minmax(49px,1fr));gap:8px;max-width:660px;margin:auto}#stars button{padding:8px 0}#stage{display:grid;place-items:center;min-height:180px;margin:20px auto;max-width:700px;background:repeating-linear-gradient(90deg,#361529,#551b39 12%,#301322 24%);border:5px double #b99658;border-radius:15px;color:var(--gold);font-size:3rem}video{width:100%;max-height:62vh;background:#000}dialog{border:1px solid #d9ba80;background:#101d29;border-radius:12px;width:min(95vw,950px);text-align:center}dialog::backdrop{background:#070b12e8}dialog img{display:block;max-width:100%;height:min(68dvh,740px);margin:auto;object-fit:contain}dialog div{display:flex;justify-content:center;align-items:center;gap:18px}#close{display:block;margin-left:auto}canvas{position:fixed;inset:0;width:100%;height:100%;pointer-events:none}@media(prefers-reduced-motion:no-preference){.book{animation:glow 4s infinite alternate}@keyframes glow{to{box-shadow:9px 8px #3c3025,0 0 90px #d6a75880}}}
