@font-face{font-family:Cinzel;src:url('/assets/cinzel.ttf') format('truetype');font-weight:400 900;font-display:swap}
:root{color-scheme:dark;font-family:Georgia,'Times New Roman',serif;color:#dccaa4;background:#080706}
*{box-sizing:border-box}body{margin:0;min-height:100svh;overflow-x:hidden}a{color:inherit}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid #efcb7f;outline-offset:6px}
.backdrop{position:fixed;inset:0;background:linear-gradient(0deg,#060504c9 0%,transparent 35%,#05040324 70%,#05040370),url('/assets/cathedral.webp') center center/cover no-repeat;z-index:-2}.backdrop::after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 50% 43%,#0000 0%,#0002 45%,#0009 100%)}
.wordmark{position:absolute;left:42px;top:30px;text-decoration:none;text-transform:uppercase;font:11px Cinzel,serif;letter-spacing:2.5px;color:#b1a48b}.wordmark span{padding:0 9px;color:#675840}
.hero{min-height:100svh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:90px 24px 130px;transform:translateY(-1vh)}
.sigil{width:42px;height:42px;border:1px solid #80603580;transform:rotate(45deg);display:grid;place-items:center;margin-bottom:29px;box-shadow:0 0 40px #c16b1820,inset 0 0 20px #a6691920}.sigil::before{content:'';width:23px;height:23px;border:1px solid #b68c4b80;position:absolute}.sigil span{width:6px;height:6px;background:#e5bf76;box-shadow:0 0 22px 7px #b76d2955}
.hero__eyebrow{font:10px Cinzel,serif;letter-spacing:5px;margin:0 0 8px;color:#b8a382}
h1{font:500 clamp(95px,9vw,148px)/1.06 Cinzel,serif;letter-spacing:9px;margin:0;color:#ddc296;text-shadow:0 2px 0 #6b4a2c,0 -1px 0 #fff0cd80,0 9px 22px #000,0 0 65px #c77c2725}
.hero__title{font:400 clamp(23px,2.8vw,38px)/1.3 Cinzel,serif;letter-spacing:8px;text-transform:uppercase;margin:9px 0 0;color:#d8c9ae}
.divider{height:1px;width:210px;background:linear-gradient(90deg,transparent,#ae804b90,transparent);margin:34px 0 36px}
.download{position:relative;display:inline-flex}.download__primary{display:flex;align-items:center;justify-content:center;gap:26px;min-width:330px;padding:21px 27px;text-decoration:none;font:500 14px Cinzel,serif;letter-spacing:.7px;color:#f5ddab;background:linear-gradient(180deg,#6a4724 0%,#3c2917 10%,#271b10 49%,#20160d 50%,#3e2915 94%,#714c25 100%);border:1px solid #ba8d4d;border-top-color:#d2b075;border-bottom-color:#785629;box-shadow:inset 0 0 0 4px #09070470,inset 0 0 25px #b6731e20,0 0 38px #d0741a25,0 5px 25px #000c;transition:box-shadow .25s,border-color .25s,transform .25s;position:relative}
.download__primary::before,.download__primary::after{content:'';position:absolute;width:7px;height:7px;border:1px solid #b38a4e;transform:rotate(45deg);background:#271b10;top:calc(50% - 4px)}.download__primary::before{left:-5px}.download__primary::after{right:-5px}
.download__primary:hover{transform:translateY(-2px);border-color:#f2ca83;box-shadow:inset 0 0 0 4px #09070470,inset 0 0 32px #dc9f3628,0 0 65px #d0741a44,0 5px 25px #000c}.download__arrow{font:24px Georgia;line-height:18px;color:#d2a96e}
.download__alternative{position:absolute;left:calc(100% + 28px);top:50%;transform:translateY(-50%);white-space:nowrap;font:12px Georgia,serif;letter-spacing:.15px;text-underline-offset:5px;text-decoration-color:#86704d;color:#bda987;transition:color .2s}.download__alternative:hover{color:#f1d39a}
.hero__hint{font:12px/1.5 Georgia,serif;color:#9b8c74;margin:22px 0 0;letter-spacing:.2px}
footer{position:absolute;bottom:24px;left:42px;right:42px;display:flex;align-items:center;justify-content:space-between;gap:20px;font:10px/1.6 Cinzel,serif;letter-spacing:.5px;color:#8e8068}footer a{text-decoration:none}footer a:hover{color:#dac18b}footer b{font-weight:400;color:#bdab88}
.embers{position:fixed;inset:0;z-index:-1;pointer-events:none;overflow:hidden}.embers i{position:absolute;width:2px;height:2px;background:#e39239;border-radius:50%;box-shadow:0 0 8px 2px #b1512370;opacity:0;animation:ember 13s linear infinite}.embers i:nth-child(1){left:13%;bottom:5%;animation-delay:1s}.embers i:nth-child(2){left:22%;bottom:2%;animation-delay:7s}.embers i:nth-child(3){left:78%;bottom:4%;animation-delay:3s}.embers i:nth-child(4){left:88%;bottom:8%;animation-delay:9s}.embers i:nth-child(5){left:35%;bottom:0;animation-delay:11s}.embers i:nth-child(6){left:65%;bottom:0;animation-delay:5s}@keyframes ember{0%{transform:translate(0,0);opacity:0}15%{opacity:.7}70%{opacity:.2}100%{transform:translate(45px,-50vh);opacity:0}}
dialog{position:fixed;width:min(500px,90vw);padding:42px;background:linear-gradient(140deg,#272017,#12100c);border:1px solid #96713f;color:#dcccab;text-align:center;box-shadow:0 20px 100px #000c}dialog::backdrop{background:#000a;backdrop-filter:blur(4px)}.setup__close{position:absolute;right:12px;top:8px;background:none;border:0;color:#c8ad80;font:26px Georgia;cursor:pointer}.setup__eyebrow{font:9px Cinzel;letter-spacing:3px;color:#ae8a53}dialog h2{font:26px Cinzel;margin:18px 0}dialog p{font:15px/1.6 Georgia}.setup__bookmark{display:inline-block;margin:5px 0;padding:12px 26px;border:1px solid #b18a4e;color:#efcf90;background:#3b2a16;cursor:grab;text-decoration:none;font:14px Cinzel;letter-spacing:1px}.setup__note{color:#ae9b7d;font-size:13px!important}.setup__game{display:inline-block;margin-top:12px;font-size:13px;text-underline-offset:4px}
@media(max-width:1050px){.download__alternative{position:static;transform:none;white-space:normal;margin-top:23px}.download{flex-direction:column}.hero__hint{margin-top:17px}.hero{padding-bottom:130px}.hero__title{letter-spacing:5px}footer{left:24px;right:24px}.wordmark{left:24px}}
@media(max-width:600px){.hero{padding-top:100px;transform:none}.hero__eyebrow{font-size:9px;letter-spacing:3px}.hero__title{font-size:22px;letter-spacing:3px}.download__primary{min-width:290px;padding:20px;gap:16px;font-size:12px}.divider{margin:27px 0 30px}.sigil{margin-bottom:25px}footer{flex-wrap:wrap;justify-content:center;text-align:center;bottom:15px;gap:8px}footer>span:first-child{width:100%}.wordmark{top:23px;font-size:9px}.backdrop{background-position:center center}dialog{padding:35px 24px}}
@media(prefers-reduced-motion:reduce){.embers{display:none}*{transition:none!important;animation:none!important}}
