:root{--bg:#141219;--panel:#211b2b;--ink:#f0edf4;--muted:#bcb3c8;--gold:#b894e3}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.7 Georgia,serif}a{color:inherit;text-decoration:none}button,summary{cursor:pointer}button,a,summary{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--gold);outline-offset:5px}header{display:flex;justify-content:space-between;align-items:center;padding:24px 5%;border-bottom:1px solid #ffffff20;background:var(--bg)}.brand{font-size:22px;letter-spacing:2px;color:var(--gold)}.brand span{font:11px Arial,sans-serif;margin-left:14px;letter-spacing:3px}nav{display:flex;gap:28px;font:12px Arial,sans-serif;letter-spacing:1px}nav a:hover,.text-link:hover{color:var(--gold)}.hero{min-height:760px;position:relative;display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;padding:60px 7% 70px}.eyebrow{font:11px/1.6 Arial,sans-serif;letter-spacing:3px;color:var(--gold);margin:0 0 24px}h1{font-size:clamp(60px,6.8vw,100px);font-weight:400;line-height:1.03;margin:0 0 30px;letter-spacing:-3px}em{color:var(--gold);font-weight:400}h2{font-weight:400;font-size:clamp(36px,4vw,58px);line-height:1.12;margin:0 0 28px;letter-spacing:-1px}h3{font-size:26px;font-weight:400}.intro{font-size:20px;max-width:420px;color:var(--muted)}.actions{display:flex;gap:22px;align-items:center;margin:32px 0}.button{display:inline-flex;justify-content:space-between;gap:30px;align-items:center;background:var(--gold);color:#1b1424;border:0;padding:17px 23px;font:13px Arial,sans-serif}.button:hover{background:#d1b4f3}.text-link,.small,.download{font:12px/1.6 Arial,sans-serif}.small{color:var(--muted);margin-top:34px}.hero-art{height:620px;background:linear-gradient(0deg,#141219aa,transparent 35%),url('assets/characters.webp') center/cover;position:relative;border:1px solid #b894e360;box-shadow:24px 24px 0 #b894e308}.art-caption{position:absolute;top:20px;left:20px;right:20px;font:9px Arial,sans-serif;letter-spacing:2px;text-align:center}.vertical{position:absolute;right:22px;writing-mode:vertical-rl;font:9px Arial,sans-serif;letter-spacing:3px;color:var(--muted)}.section{padding:100px 7%;border-top:1px solid #ffffff15}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:38px}.section-heading>p{color:var(--muted)}.cast-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.character{padding:0;background:transparent;border:0;text-align:left;color:var(--ink)}.portrait{display:block;aspect-ratio:1/1.06;background-image:url('assets/characters.webp');background-size:200% 200%;border:1px solid #ffffff20;transition:filter .2s}.character:hover .portrait{filter:brightness(1.15)}.character h3{margin:14px 0 4px}.character p{font:12px Arial,sans-serif;color:var(--muted);margin:0}.portrait.bishop{background-image:url('assets/bishop.webp');background-size:cover;background-position:center}.portrait.pending{background:radial-gradient(ellipse at 50% 35%,#6c7058 0%,#25342a 35%,#131c17 75%);display:grid;place-items:center;font:12px Arial,sans-serif;letter-spacing:2px;color:var(--muted)}.threat-section{display:grid;grid-template-columns:1.1fr 1fr;background:#100d16}.threat-image{max-height:720px;overflow:hidden}.threat-image img{width:100%;height:100%;object-fit:cover}.threat-copy{padding:100px 12%;align-self:center}.threat-copy p,.world p,.books p{color:var(--muted)}details{border-top:1px solid #b894e340;margin-top:30px;padding:20px 0}summary{color:var(--gold);font:13px/1.5 Arial,sans-serif}.world-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;margin-top:48px}.world-grid span{font:12px Arial,sans-serif;color:var(--gold)}.books{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;background:var(--panel)}.books>div>p{max-width:420px}.download{display:block;margin-top:20px;color:var(--gold)}.book-cover{max-width:330px;aspect-ratio:2/3;width:100%;margin:auto;background:repeating-linear-gradient(88deg,#0d1611,#17291d 12px,#0d1611 18px);padding:20px;box-shadow:15px 18px 30px #0008;border-left:7px solid #314435}.book-border{border:1px solid var(--gold);height:100%;display:flex;align-items:center;flex-direction:column;justify-content:center;padding:20px;text-align:center}.book-border>span{font-size:35px;letter-spacing:4px;line-height:1.4}.book-symbol{font-size:100px;color:var(--gold);line-height:1.8}.book-border small{letter-spacing:5px;color:var(--gold)}.book-border p{font:8px Arial,sans-serif;letter-spacing:2px;margin-top:40px}footer{display:flex;gap:30px;justify-content:space-between;align-items:center;padding:40px 7%;font:11px Arial,sans-serif;color:var(--muted)}footer .brand{font-size:14px}dialog{background:var(--panel);color:var(--ink);border:1px solid #b894e370;padding:50px;max-width:640px;width:90%;max-height:85vh;overflow:auto}dialog::backdrop{background:#000c}.close{position:absolute;right:18px;top:12px;background:none;border:0;color:var(--ink);font-size:30px}#reader{max-width:800px}#chapter p{font-size:18px;line-height:1.85}#profile-copy{font-size:20px}@media(max-width:800px){header{flex-direction:column;gap:18px}nav{gap:18px;font-size:11px}.hero{grid-template-columns:1fr;padding:45px 6%}.hero-art{height:auto;aspect-ratio:1/1.02}.vertical{display:none}.actions{flex-wrap:wrap}.section{padding:65px 6%}.section-heading{display:block}.cast-grid{grid-template-columns:repeat(2,1fr);gap:24px 16px}.world-grid,.books,.threat-section{grid-template-columns:1fr}.world-grid{gap:16px}.threat-copy{padding:50px 6%}.threat-image{max-height:550px}.books{gap:45px}footer{flex-direction:column;align-items:start}dialog{padding:45px 24px}h1{font-size:64px}.brand span{letter-spacing:2px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.portrait{transition:none}}
.portrait.daniel{background-image:url('assets/daniel.webp');background-size:cover;background-position:center 25%}.portrait.laura{background-image:url('assets/laura.webp');background-size:cover;background-position:center 25%}
.portrait.emily{background-image:url('assets/emily.webp');background-size:cover;background-position:center 25%}
.portrait.chuck{background-image:url(assets/chuck-individual.webp);background-size:cover;background-position:center 25%}
.portrait.jake{background-image:url(assets/jake-individual.webp);background-size:cover;background-position:center 25%}
.portrait.silas{background-image:url(assets/silas-individual.webp);background-size:cover;background-position:center 25%}
.portrait.mara{background-image:url(assets/mara-individual.webp);background-size:cover;background-position:center 25%}

nav{flex-wrap:wrap;justify-content:center}.lore{background:#191420}.lore-intro,.race-description{color:var(--muted);max-width:850px}.lore-intro{font-size:20px;margin-bottom:55px}.race-block{margin:0 0 55px}.race-heading{display:flex;gap:20px;align-items:center;margin:25px 0 18px}.race-heading h3{font-size:36px;margin:0}.race-number{font:12px Arial,sans-serif;color:var(--gold);border:1px solid #b894e355;padding:12px}.race-role{font:12px Arial,sans-serif;letter-spacing:2px;color:var(--gold);margin:5px 0}.bloodline-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:35px}.bloodline-grid figure{margin:0}.bloodline-grid img,.race-portrait{width:100%;height:auto;display:block;aspect-ratio:2/3;object-fit:cover;border:1px solid #b894e350}.bloodline-grid h4{font-size:25px;font-weight:400;margin:20px 0 8px}.bloodline-grid p{color:var(--muted);margin:0}.other-races{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:45px;padding-top:45px;border-top:1px solid #ffffff20}.portrait-note{font:11px/1.6 Arial,sans-serif;color:var(--muted)}@media(max-width:800px){.bloodline-grid,.other-races{grid-template-columns:1fr}.race-portrait,.bloodline-grid img{max-height:680px;object-position:center 25%}.lore-intro{margin-bottom:35px}}

.orathi-feature{border-top:1px solid #ffffff20;padding-top:45px;margin-bottom:40px}.orathi-feature>img{display:block;width:100%;height:auto;border:1px solid #b894e350}.orathi-feature .race-description{max-width:900px}

.book-cover{background:radial-gradient(ellipse at 25% 30%,#53505c50,transparent 55%),radial-gradient(ellipse at 80% 70%,#76708030,transparent 55%),linear-gradient(145deg,#101014,#29272f 48%,#101014);box-shadow:18px 18px 0 #b894e308}.book-border{border-color:#b894e370}.book-border>span{color:#f0edf4}.book-symbol,.book-border small{color:#b894e3}

.book-cover{border-left-color:#45404e}
