:root{--black:#050505;--panel:#0d0d0d;--gold:#c79a45;--gold-light:#edcb7b;--burgundy:#4b0d16;--cream:#f2eadc;--muted:#c9c0b3;--line:rgba(199,154,69,.55)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--black);color:var(--cream);font-family:Georgia,"Times New Roman",serif;line-height:1.65}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}.container{width:min(1180px,92%);margin:auto}
.site-header{position:sticky;top:0;z-index:100;background:rgba(2,2,2,.96);border-bottom:1px solid var(--line)}.nav-wrap{height:72px;display:flex;align-items:center;justify-content:space-between;gap:26px}.brand img{width:auto;height:54px;object-fit:contain}.main-nav{display:flex;align-items:center;gap:34px}.main-nav a{text-transform:uppercase;letter-spacing:.08em;font-size:.9rem;padding:25px 0 19px;border-bottom:2px solid transparent}.main-nav a:hover,.main-nav a[aria-current="page"]{color:var(--gold-light);border-color:var(--gold)}.nav-toggle{display:none;border:1px solid var(--line);background:#090909;color:var(--cream);padding:8px 12px}
.desktop-concept{position:relative;max-width:1536px;margin:0 auto;background:#000}.desktop-concept>img{width:100%;height:auto}.hotspot{position:absolute;display:block}.hotspot:focus{outline:2px solid var(--gold-light);outline-offset:2px}.hotspot.read{left:3.5%;top:46.3%;width:15.2%;height:5.9%}.hotspot.signing{left:19.9%;top:46.3%;width:12.2%;height:5.9%}.hotspot.event{left:7.5%;top:84.4%;width:10.2%;height:5.1%}.hotspot.explore{left:77.8%;top:84.4%;width:16.5%;height:5.1%}.mobile-home{display:none}.site-footer{border-top:1px solid var(--line);padding:24px 0;text-align:center;color:var(--muted);background:#020202}
.page-hero{padding:110px 0 70px;text-align:center;background:linear-gradient(rgba(0,0,0,.58),rgba(0,0,0,.92)),url("images/ravenloft-approved-homepage.png") center 18%/cover no-repeat;border-bottom:1px solid var(--line)}.page-hero h1{margin:.1em 0;color:var(--gold-light);font-size:clamp(2.8rem,7vw,5.5rem);line-height:1}.eyebrow{text-transform:uppercase;letter-spacing:.2em;color:var(--gold-light)}.page-content{padding:70px 0 100px}.prose{width:min(820px,92%);margin:auto;padding:38px;border:1px solid var(--line);background:linear-gradient(145deg,rgba(64,10,18,.55),rgba(8,8,8,.98));box-shadow:0 20px 55px rgba(0,0,0,.48)}.prose h2,.prose h3{color:var(--gold-light)}.button{display:inline-block;border:1px solid var(--gold);background:linear-gradient(#711b28,#420b13);color:var(--gold-light);padding:13px 22px;text-transform:uppercase;letter-spacing:.07em}.button.secondary{background:#080808}.email-link{color:var(--gold-light);text-decoration:underline}.about-grid{display:grid;grid-template-columns:340px 1fr;gap:36px;align-items:start}.about-photo{width:100%;border:1px solid var(--line);padding:10px;background:#080808}
@media(max-width:900px){.brand img{height:46px}.nav-toggle{display:block}.main-nav{display:none;position:absolute;top:72px;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;padding:10px 4%;background:#050505;border-bottom:1px solid var(--line)}.main-nav.open{display:flex}.main-nav a{padding:12px 0}.desktop-concept{display:none}.mobile-home{display:block}.mobile-hero{padding:72px 7% 62px;background:linear-gradient(rgba(0,0,0,.58),rgba(0,0,0,.92)),url("images/ravenloft-approved-homepage.png") 43% 16%/cover no-repeat;min-height:690px;display:flex;flex-direction:column;justify-content:flex-end}.mobile-hero h1{font-size:clamp(4rem,18vw,6.2rem);line-height:.9;margin:.08em 0;color:var(--gold-light)}.mobile-hero p{font-size:1.12rem;max-width:620px}.mobile-hero blockquote{margin:20px 0 0;padding-left:18px;border-left:2px solid var(--gold);color:var(--gold-light);font-size:1.15rem}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.mobile-cards{padding:24px;display:grid;gap:18px}.card{padding:26px;border:1px solid var(--line);background:linear-gradient(145deg,rgba(57,9,16,.62),rgba(8,8,8,.98));text-align:center}.card h2,.card h3,.stars{color:var(--gold-light)}.stars{font-size:1.7rem;letter-spacing:.15em}.about-grid{grid-template-columns:1fr}.about-photo{max-width:420px;margin:auto}}
@media(max-width:520px){.nav-wrap{height:66px}.brand img{height:40px}.main-nav{top:66px}.mobile-hero{padding:55px 6% 48px;min-height:610px}.page-hero{padding:86px 0 55px}.prose{padding:26px}.button{width:100%;text-align:center}}

/* Library and World expansion */
.hero-tagline{max-width:780px;margin:24px auto 0;color:var(--cream);font-size:clamp(1.1rem,2vw,1.35rem);font-style:italic}
.section-pad{padding:82px 0}.center{text-align:center}.section-title{text-align:center;color:var(--gold-light);font-size:clamp(2.1rem,5vw,3.7rem);line-height:1.1;margin:.15em auto 1em}.library-hero,.world-hero{padding:105px 0 78px}.book-feature-grid{display:grid;grid-template-columns:minmax(320px,1.05fr) minmax(320px,.95fr);gap:48px;align-items:center}.book-display{border:1px solid var(--line);background:#020202;overflow:hidden;box-shadow:0 22px 65px rgba(0,0,0,.55)}.book-display img{width:100%;min-height:480px;object-fit:cover;object-position:68% 27%;transform:scale(1.04)}.story-panel{padding:42px;border:1px solid var(--line);background:linear-gradient(145deg,rgba(70,11,20,.68),rgba(8,8,8,.98));box-shadow:0 22px 60px rgba(0,0,0,.5)}.story-panel h2{color:var(--gold-light);font-size:clamp(2.1rem,4vw,3.5rem);line-height:1.1;margin:.15em 0 .65em}.story-line{margin-top:28px;padding-left:18px;border-left:2px solid var(--gold);color:var(--gold-light);font-style:italic;font-size:1.15rem}.retailer-section{background:radial-gradient(circle at 50% 0,rgba(90,14,26,.38),transparent 55%),#070707;border-top:1px solid rgba(199,154,69,.25);border-bottom:1px solid rgba(199,154,69,.25)}.retailer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;max-width:900px;margin:auto}.retailer-card{padding:38px;text-align:center;border:1px solid var(--line);background:linear-gradient(145deg,rgba(49,8,15,.78),rgba(7,7,7,.98));box-shadow:0 18px 50px rgba(0,0,0,.45)}.retailer-card h3{margin:0;color:var(--gold-light);font-size:2rem}.format-list{list-style:none;padding:0;margin:22px 0 28px;color:var(--muted)}.format-list li{padding:7px 0;border-bottom:1px solid rgba(199,154,69,.18)}.discover-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:18px}.lore-card,.world-card{border:1px solid var(--line);background:linear-gradient(160deg,rgba(62,10,18,.62),rgba(7,7,7,.98));padding:28px;text-align:center;box-shadow:0 14px 40px rgba(0,0,0,.38)}.lore-card h3,.world-card h2{color:var(--gold-light);margin:.4em 0}.lore-icon{display:block;font-size:2rem;filter:grayscale(.15)}.next-book,.world-ending{background:linear-gradient(rgba(0,0,0,.6),rgba(0,0,0,.9)),url("images/ravenloft-approved-homepage.png") center 24%/cover no-repeat;text-align:center;border-top:1px solid var(--line)}.next-book-inner,.world-ending .container{max-width:800px}.next-book h2,.world-ending h2{color:var(--gold-light);font-size:clamp(2.2rem,5vw,4rem);line-height:1.12}.coming-soon{text-transform:uppercase;letter-spacing:.22em;color:var(--gold-light);font-weight:bold}.world-intro{max-width:800px;text-align:center;font-size:1.25rem;color:var(--muted);margin-bottom:45px}.world-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.world-card{text-align:left}.world-card .lore-icon{text-align:left}.manor-break{min-height:520px;background:linear-gradient(rgba(0,0,0,.12),rgba(0,0,0,.82)),url("images/ravenloft-approved-homepage.png") center 24%/cover no-repeat;display:grid;place-items:end center;border-block:1px solid var(--line)}.manor-break-overlay{width:100%;padding:75px 5% 50px;text-align:center;background:linear-gradient(transparent,rgba(0,0,0,.82))}.manor-break-overlay p{color:var(--gold-light);font-size:clamp(2rem,5vw,4.3rem);font-style:italic;margin:0}.timeline{max-width:850px;margin:40px auto 0;position:relative}.timeline:before{content:"";position:absolute;left:18px;top:8px;bottom:8px;width:1px;background:var(--gold)}.timeline-item{position:relative;margin:0 0 34px;padding:4px 0 4px 60px}.timeline-item:before{content:"";position:absolute;left:11px;top:12px;width:14px;height:14px;border-radius:50%;background:var(--gold-light);box-shadow:0 0 16px rgba(237,203,123,.65)}.timeline-item h3{color:var(--gold-light);margin:0 0 5px}.timeline-item p{margin:0;color:var(--muted)}
@media(max-width:1050px){.discover-grid{grid-template-columns:repeat(3,1fr)}.main-nav{gap:20px}.main-nav a{font-size:.78rem}}
@media(max-width:900px){.book-feature-grid,.retailer-grid,.world-grid{grid-template-columns:1fr}.book-display img{min-height:420px;object-position:67% 25%}.discover-grid{grid-template-columns:repeat(2,1fr)}.section-pad{padding:62px 0}}
@media(max-width:560px){.discover-grid{grid-template-columns:1fr}.story-panel,.retailer-card{padding:26px}.book-display img{min-height:350px}.manor-break{min-height:390px}.library-hero,.world-hero{padding:80px 0 58px}}

/* Real HTML homepage */
.real-home { background:#050505; }
.real-home .site-header { position:sticky; top:0; z-index:50; background:rgba(3,3,3,.96); backdrop-filter:blur(8px); }
.real-home .brand img { width:150px; height:48px; object-fit:contain; }
.hero-live { position:relative; overflow:hidden; border-bottom:1px solid rgba(200,153,62,.55); background:radial-gradient(circle at 52% 32%,#1d2830 0,#0b0d10 34%,#030303 72%); }
.hero-live-inner { max-width:1500px; min-height:670px; margin:auto; padding:54px 28px 42px; display:grid; grid-template-columns:1.05fr 1.15fr .8fr; gap:28px; align-items:center; position:relative; z-index:2; }
.hero-copy { position:relative; z-index:3; }
.hero-copy .eyebrow { letter-spacing:.19em; text-transform:uppercase; font-size:1.05rem; }
.hero-copy h1 { margin:.15em 0 .18em; font-size:clamp(4.3rem,8vw,8.8rem); line-height:.8; text-transform:uppercase; color:#e3b960; text-shadow:0 2px 18px #000; }
.hero-summary { max-width:540px; font-size:1.28rem; line-height:1.65; }
.hero-summary strong { color:#e0ad50; }
.hero-copy blockquote { margin:24px 0 0; padding-left:18px; border-left:2px solid #b88935; font-size:1.2rem; font-style:italic; color:#e6dfd2; }
.hero-art { min-height:560px; position:relative; }
.manor-art { width:100%; height:560px; object-fit:cover; object-position:center; border:1px solid rgba(185,137,51,.4); filter:brightness(.78) contrast(1.12); }
.author-art { position:absolute; right:-3%; bottom:0; width:52%; height:78%; object-fit:cover; object-position:center top; border-radius:48% 48% 4% 4%; box-shadow:-30px 8px 46px #000; -webkit-mask-image:linear-gradient(to bottom,#000 75%,transparent 100%); mask-image:linear-gradient(to bottom,#000 75%,transparent 100%); }
.formats-card { border:1px solid rgba(190,143,54,.65); padding:18px; background:rgba(5,5,5,.82); box-shadow:0 18px 55px rgba(0,0,0,.6); }
.formats-card>img { width:100%; max-height:250px; object-fit:cover; object-position:top; }
.formats-card h2 { color:#d6a94f; text-align:center; font-size:1.18rem; text-transform:uppercase; letter-spacing:.08em; }
.retailer-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.retailer-grid>div { border-top:1px solid rgba(185,137,51,.5); padding-top:10px; }
.retailer-grid h3 { color:#e5bd6a; margin:.2rem 0; }
.retailer-grid p { line-height:1.65; margin:.3rem 0; }
.text-link { color:#e1b55e; display:inline-block; margin-top:10px; }
.home-panels { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; padding-top:28px; padding-bottom:42px; }
.feature-card { min-height:310px; padding:34px; border:1px solid rgba(185,137,51,.6); background:linear-gradient(145deg,rgba(28,15,15,.86),rgba(4,6,7,.95)); display:flex; flex-direction:column; align-items:flex-start; }
.feature-card h2 { color:#dbad55; font-size:1.7rem; }
.feature-card p { line-height:1.65; }
.feature-card .button { margin-top:auto; }
.fog { position:absolute; width:75%; height:220px; border-radius:50%; filter:blur(45px); opacity:.14; background:#c9d4d9; animation:drift 22s linear infinite; }
.fog-one { left:-20%; bottom:4%; }.fog-two { right:-25%; bottom:18%; animation-duration:30s; animation-direction:reverse; }
@keyframes drift { from{transform:translateX(-8%)} to{transform:translateX(35%)} }
.reveal { animation:riseIn .9s ease both; }
@keyframes riseIn { from{opacity:0;transform:translateY(18px)} to{opacity:1;transform:none} }
@media (max-width:1050px){.hero-live-inner{grid-template-columns:1fr 1fr}.formats-card{grid-column:1/-1}.formats-card>img{max-height:210px;object-fit:contain}.home-panels{grid-template-columns:1fr 1fr}}
@media (max-width:760px){.hero-live-inner{grid-template-columns:1fr;padding:38px 20px}.hero-copy h1{font-size:4.5rem}.hero-art{min-height:420px}.manor-art{height:420px}.formats-card{grid-column:auto}.home-panels{grid-template-columns:1fr}.retailer-grid{grid-template-columns:1fr}.real-home .brand img{width:125px}.hero-copy blockquote{font-size:1rem}}
