:root{
  --bg:#0b0909;--bg2:#120c0b;--panel:#181110;--panel2:#211614;--ink:#f7f0e6;--muted:#bdb0a6;
  --red:#a60000;--red2:#d11a10;--gold:#d7ad64;--line:rgba(255,255,255,.12);--max:1240px;
  --serif:Georgia,"Times New Roman",serif;--sans:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg)}body{margin:0;background:radial-gradient(circle at 80% 0%,#27100d 0,transparent 34rem),var(--bg);color:var(--ink);font-family:var(--sans);line-height:1.6}img{display:block;max-width:100%}a{color:inherit}.skip-link{position:fixed;left:1rem;top:-4rem;z-index:9999;background:#fff;color:#000;padding:.7rem 1rem;border-radius:.4rem}.skip-link:focus{top:1rem}
.site-header{position:fixed;z-index:1000;inset:0 0 auto;display:flex;align-items:center;justify-content:space-between;padding:.65rem clamp(1rem,3vw,3rem);background:linear-gradient(to bottom,rgba(5,3,3,.92),rgba(5,3,3,.58),transparent);transition:.25s}.site-header.scrolled{background:rgba(9,6,6,.92);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.brand{width:min(270px,44vw)}.brand img{height:64px;width:auto;object-fit:contain;object-position:left center}.site-nav{display:flex;gap:1.35rem;align-items:center}.site-nav a{text-decoration:none;color:#eee4da;font-size:.86rem;text-transform:uppercase;letter-spacing:.13em}.site-nav a:hover{color:#fff}.menu-toggle{display:none;background:transparent;border:0;width:46px;height:46px;padding:10px}.menu-toggle span{display:block;height:2px;background:#fff;margin:6px 0}
.hero{min-height:100svh;position:relative;display:grid;align-items:end;overflow:hidden}.hero-media{position:absolute;inset:0;background-image:url('../images/hero-coming-soon.webp');background-size:cover;background-position:center}.hero-media:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,4,4,.94) 0%,rgba(7,4,4,.67) 43%,rgba(7,4,4,.08) 73%),linear-gradient(0deg,#0b0909 0%,transparent 40%)}.hero-shade{position:absolute;inset:0;background:radial-gradient(circle at 76% 48%,transparent 0 18%,rgba(0,0,0,.2) 58%)}.hero-content{position:relative;z-index:2;width:min(760px,92vw);margin:0 max(4vw,calc((100vw - var(--max))/2));padding:10rem 0 10vh}.hero-logo{width:min(650px,86vw);margin:-1.4rem 0 -1rem;filter:drop-shadow(0 12px 25px rgba(0,0,0,.55))}.hero h1{font-family:var(--serif);font-size:clamp(2rem,4.4vw,4.7rem);line-height:1.02;letter-spacing:-.025em;max-width:14ch;margin:0 0 1rem}.hero p{font-size:clamp(1rem,1.45vw,1.2rem);max-width:60ch;color:#e7ded7}.eyebrow,.section-kicker,.overline{text-transform:uppercase;letter-spacing:.18em;font-size:.72rem;font-weight:800;color:var(--gold)}.hero-actions,.card-actions{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.5rem}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:.75rem 1.15rem;border:1px solid transparent;text-decoration:none;text-transform:uppercase;letter-spacing:.1em;font-size:.76rem;font-weight:800;border-radius:4px;cursor:pointer}.btn-primary{background:linear-gradient(135deg,var(--red2),#850000);box-shadow:0 10px 30px rgba(166,0,0,.25)}.btn-primary:hover{filter:brightness(1.15)}.btn-ghost{border-color:rgba(255,255,255,.38);background:rgba(10,8,8,.32);color:#fff}.btn-ghost:hover{background:rgba(255,255,255,.1)}.scroll-cue{position:absolute;right:3vw;bottom:2rem;z-index:2;font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:#c8beb5}.scroll-cue span{margin-left:.4rem;color:var(--gold)}
.section-pad{padding:clamp(5rem,9vw,9rem) max(4vw,calc((100vw - var(--max))/2))}.intro{background:linear-gradient(180deg,#0b0909,#120b0a)}.intro-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:clamp(2rem,6vw,6rem);align-items:start}.intro h2,.section-heading h2,.world h2,.game-copy h2,.about h2{font-family:var(--serif);font-weight:500;letter-spacing:-.02em}.intro h2{font-size:clamp(2.4rem,5vw,5.2rem);line-height:1.03;margin:.4rem 0}.intro-copy{font-size:1.08rem;color:#d8cdc4}.intro-copy p:first-child{font-size:1.28rem;color:#f4ece5}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:3rem;margin-bottom:2.7rem}.section-heading h2{font-size:clamp(2.6rem,5vw,5rem);margin:.25rem 0 0}.section-heading>p{max-width:44ch;color:var(--muted);margin:0 0 .6rem}
.chronicles{background:#100b0a}.feature-card{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);min-height:520px;border:1px solid var(--line);background:linear-gradient(145deg,#1b1210,#120d0c);margin-bottom:2rem;overflow:hidden}.feature-card.reverse{grid-template-columns:minmax(320px,.72fr) minmax(0,1.28fr)}.feature-card.reverse .feature-image{order:2}.feature-image{min-height:480px;background:#080606}.feature-image img{width:100%;height:100%;object-fit:cover}.feature-image.portrait img{object-position:center 28%}.feature-copy{padding:clamp(2rem,5vw,4.7rem);display:flex;flex-direction:column;justify-content:center}.feature-copy h3{font-family:var(--serif);font-size:clamp(2.1rem,4vw,4rem);line-height:1.02;margin:.4rem 0 1rem}.feature-copy p{color:#d7ccc4}.status{display:inline-flex;width:max-content;padding:.28rem .55rem;border-radius:999px;font-size:.67rem;letter-spacing:.1em;text-transform:uppercase;font-weight:800;margin-bottom:1.5rem}.status-live{background:#17341c;color:#b8f2bf;border:1px solid #2d6937}.status-production{background:#3b230f;color:#ffd59c;border:1px solid #81501d}.text-button,.text-link{font:inherit;background:none;border:0;color:#f4ddc2;cursor:pointer;text-decoration:none;font-weight:700;padding:.4rem 0}.text-link span{color:var(--gold)}.story-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2rem}.poster-card{position:relative;min-height:540px;overflow:hidden;background:#111;border:1px solid var(--line)}.poster-card img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.poster-card:hover img{transform:scale(1.035)}.poster-overlay{position:absolute;inset:auto 0 0;padding:5rem 1.4rem 1.4rem;background:linear-gradient(transparent,rgba(5,4,4,.96))}.poster-overlay span{font-size:.68rem;color:var(--gold);text-transform:uppercase;letter-spacing:.15em}.poster-overlay h3{font-family:var(--serif);font-size:2rem;margin:.2rem 0}.poster-overlay p{color:#d5c9c0;margin:0}
.characters{background:radial-gradient(circle at 5% 20%,#28100e,transparent 28rem),#0d0909}.character-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:1rem}.character-card{grid-column:span 4;position:relative;min-height:520px;overflow:hidden;border:1px solid var(--line);background:#121010}.character-card:first-child{grid-column:span 7}.character-card:nth-child(2){grid-column:span 5}.character-card.celestial{grid-column:span 8}.character-card img{width:100%;height:100%;object-fit:cover;transition:transform .7s ease}.character-card:first-child img{object-position:center top}.character-card:nth-child(2) img{object-position:center 23%}.character-card.celestial img{object-position:center 25%}.character-card:hover img{transform:scale(1.03)}.character-card:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 38%,rgba(5,4,4,.94))}.character-info{position:absolute;z-index:2;inset:auto 1.4rem 1.4rem}.character-info span{color:var(--gold);font-size:.68rem;text-transform:uppercase;letter-spacing:.15em}.character-info h3{font-family:var(--serif);font-size:2.2rem;margin:.2rem 0}.character-info p{color:#d7cdc5;max-width:46ch;margin:0}
.world{position:relative;min-height:74vh;display:flex;align-items:end;overflow:hidden}.world-bg{position:absolute;inset:0;background:url('../images/beikthano-royal-court.webp') center/cover}.world-bg:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,5,5,.9) 0,rgba(8,5,5,.52) 50%,rgba(8,5,5,.04) 80%),linear-gradient(0deg,#0b0909,transparent 55%)}.world-content{position:relative;z-index:2;max-width:650px}.world h2{font-size:clamp(3rem,7vw,7rem);line-height:.9;margin:.5rem 0 1.5rem}.world p{font-size:1.15rem;color:#eee4da;text-shadow:0 2px 15px #000}.lore{background:#0b0909}.timeline{position:relative;max-width:980px;margin:3rem auto 0}.timeline:before{content:"";position:absolute;left:35px;top:20px;bottom:20px;width:1px;background:linear-gradient(var(--gold),rgba(215,173,100,.1))}.timeline-item{display:grid;grid-template-columns:70px 1fr;gap:2rem;padding:0 0 3rem}.timeline-mark{width:70px;height:70px;border-radius:50%;display:grid;place-items:center;background:#15100f;border:1px solid rgba(215,173,100,.5);color:var(--gold);font-family:var(--serif);font-size:1.1rem;position:relative;z-index:1}.timeline-item h3{font-family:var(--serif);font-size:2rem;margin:.4rem 0 .35rem}.timeline-item p{color:var(--muted);margin:0;max-width:70ch}
.game-section{background:linear-gradient(180deg,#0e0908,#170b0a)}.game-panel{display:grid;grid-template-columns:minmax(280px,.75fr) minmax(0,1.25fr);align-items:center;border:1px solid rgba(215,173,100,.25);background:radial-gradient(circle at 20% 40%,rgba(165,0,0,.23),transparent 28rem),#0d0b0b;overflow:hidden}.game-art{padding:clamp(1rem,3vw,3rem);display:grid;place-items:center}.game-art img{width:min(500px,90%);border-radius:50%;box-shadow:0 0 90px rgba(201,25,13,.18)}.game-copy{padding:clamp(2rem,5vw,5rem)}.game-copy h2{font-size:clamp(2.6rem,5vw,5rem);margin:.3rem 0 1rem}.game-copy p{font-size:1.08rem;color:#d9cec6}.game-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin:1.2rem 0}.game-tags span{padding:.45rem .65rem;border:1px solid var(--line);background:#171211;font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:#d8cfc8}
.gallery{background:#0a0808}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:260px;gap:.75rem}.gallery-tile{position:relative;padding:0;border:0;background:#151010;overflow:hidden;cursor:zoom-in}.gallery-tile.wide{grid-column:span 2}.gallery-tile img{width:100%;height:100%;object-fit:cover;transition:transform .5s,filter .5s}.gallery-tile:hover img{transform:scale(1.035);filter:brightness(.78)}.gallery-tile span{position:absolute;left:1rem;bottom:.8rem;opacity:0;transform:translateY(8px);transition:.3s;font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;font-weight:800;text-shadow:0 2px 10px #000}.gallery-tile:hover span{opacity:1;transform:none}.about{background:linear-gradient(145deg,#1a0b09,#0b0909)}.about-card{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);gap:clamp(2rem,6vw,6rem);align-items:center}.about-card>img{background:#970000;padding:1rem}.about h2{font-size:clamp(2.4rem,5vw,4.7rem);line-height:1.02;margin:.45rem 0 1rem}.about p{color:#d3c7be;max-width:60ch;font-size:1.05rem}.site-footer{padding:2rem max(4vw,calc((100vw - var(--max))/2));border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:2rem;color:#bfb4ac;background:#070606}.site-footer div{display:flex;flex-direction:column}.site-footer strong{color:#fff}.site-footer a{text-decoration:none}
.lightbox{padding:0;border:1px solid rgba(255,255,255,.2);background:#070606;color:#fff;max-width:min(94vw,1500px);max-height:94vh;box-shadow:0 20px 80px rgba(0,0,0,.7)}.lightbox::backdrop{background:rgba(0,0,0,.86);backdrop-filter:blur(4px)}.lightbox img{max-width:92vw;max-height:84vh;object-fit:contain;margin:auto}.lightbox p{margin:.7rem 1rem 1rem;color:#cfc4bc}.lightbox-close{position:absolute;right:.65rem;top:.55rem;z-index:2;width:42px;height:42px;border-radius:50%;border:1px solid rgba(255,255,255,.35);background:rgba(0,0,0,.65);color:#fff;font-size:1.6rem;cursor:pointer}.reveal{opacity:0;transform:translateY(24px);transition:opacity .75s ease,transform .75s ease}.reveal.visible{opacity:1;transform:none}
@media (max-width:900px){.site-header{background:rgba(9,6,6,.86);backdrop-filter:blur(12px)}.brand img{height:52px}.menu-toggle{display:block}.site-nav{display:none;position:absolute;top:72px;right:1rem;left:1rem;flex-direction:column;align-items:stretch;background:#0c0909;border:1px solid var(--line);padding:1rem}.site-nav.open{display:flex}.site-nav a{padding:.65rem}.hero-content{padding-top:8rem}.hero-media{background-position:65% center}.hero-media:after{background:linear-gradient(0deg,#0b0909 0%,rgba(7,4,4,.55) 52%,rgba(7,4,4,.35))}.scroll-cue{display:none}.intro-grid,.feature-card,.feature-card.reverse,.game-panel,.about-card{grid-template-columns:1fr}.feature-card.reverse .feature-image{order:0}.feature-image{min-height:360px}.story-grid{grid-template-columns:1fr}.poster-card{min-height:760px}.character-card,.character-card:first-child,.character-card:nth-child(2),.character-card.celestial{grid-column:span 6}.gallery-grid{grid-template-columns:repeat(2,1fr)}.gallery-tile.wide{grid-column:span 2}.section-heading{align-items:start;flex-direction:column;gap:.75rem}}
@media (max-width:580px){.hero h1{font-size:2.6rem}.hero-content{padding-bottom:13vh}.section-pad{padding-top:4.5rem;padding-bottom:4.5rem}.feature-copy{padding:1.5rem}.feature-image{min-height:280px}.poster-card{min-height:620px}.character-card,.character-card:first-child,.character-card:nth-child(2),.character-card.celestial{grid-column:1/-1;min-height:490px}.timeline:before{left:24px}.timeline-item{grid-template-columns:48px 1fr;gap:1rem}.timeline-mark{width:48px;height:48px;font-size:.8rem}.gallery-grid{grid-auto-rows:210px}.gallery-tile,.gallery-tile.wide{grid-column:span 2}.site-footer{flex-direction:column}.hero-actions .btn{width:100%}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.poster-card img,.character-card img,.gallery-tile img{transition:none}}

/* v2: story, embedded media, and locally-hosted game presentation */
.story-strip{margin-top:1rem;border:1px solid var(--line);background:linear-gradient(120deg,#1b1110,#0d0a0a);padding:clamp(1.4rem,3vw,2.4rem);display:grid;grid-template-columns:minmax(260px,.7fr) minmax(0,1.3fr);gap:2rem;align-items:center}.story-strip .status{margin-bottom:.8rem}.story-strip h3{font-family:var(--serif);font-size:clamp(2rem,3.5vw,3.4rem);line-height:1;margin:.2rem 0}.story-strip>p{color:#d6cac1;margin:0;max-width:64ch}.media-section{background:radial-gradient(circle at 85% 15%,rgba(166,0,0,.18),transparent 28rem),#0d0909}.media-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.media-card{border:1px solid var(--line);background:#120d0c;overflow:hidden}.video-frame{position:relative;aspect-ratio:16/9;background:#000}.video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.media-copy{padding:1.25rem 1.35rem 1.5rem}.media-copy>span{font-size:.68rem;letter-spacing:.15em;text-transform:uppercase;color:var(--gold);font-weight:800}.media-copy h3{font-family:var(--serif);font-size:clamp(1.55rem,2.5vw,2.35rem);line-height:1.08;margin:.35rem 0 .55rem}.media-copy h3 em{display:block;font-family:var(--sans);font-size:.72em;font-style:normal;margin-top:.3rem;color:#e8d8ca}.media-copy p{color:var(--muted);margin:0}.game-small{font-size:.9rem!important;color:var(--muted)!important}.game-tags span:last-child{border-color:rgba(215,173,100,.32)}
@media(max-width:900px){.story-strip,.media-grid{grid-template-columns:1fr}}
