/* Locally hosted fonts: SIL Open Font License 1.1. */
@font-face {
  font-family: 'Barlow';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(assets/fonts/barlow-700.ttf) format('truetype');
}
@font-face {
  font-family: 'Barlow';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(assets/fonts/barlow-800.ttf) format('truetype');
}
@font-face {
  font-family: 'Barlow';
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url(assets/fonts/barlow-900.ttf) format('truetype');
}
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/fonts/barlow-condensed-500.ttf) format('truetype');
}
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/fonts/barlow-condensed-600.ttf) format('truetype');
}
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(assets/fonts/barlow-condensed-700.ttf) format('truetype');
}
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(assets/fonts/barlow-condensed-800.ttf) format('truetype');
}
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url(assets/fonts/barlow-condensed-900.ttf) format('truetype');
}
@font-face {
  font-family: 'Barlow Semi Condensed';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(assets/fonts/barlow-semi-condensed-700.ttf) format('truetype');
}
@font-face {
  font-family: 'Barlow Semi Condensed';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(assets/fonts/barlow-semi-condensed-800.ttf) format('truetype');
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/fonts/dm-sans-400.ttf) format('truetype');
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/fonts/dm-sans-500.ttf) format('truetype');
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/fonts/dm-sans-600.ttf) format('truetype');
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(assets/fonts/dm-sans-700.ttf) format('truetype');
}
:root{--bg:#080910;--panel:#11141e;--text:#f7f1e8;--muted:#b5adb1;--gold:#ffc15f;--violet:#a665f4;--line:#36313a;font-family:'DM Sans',Arial,sans-serif;color:var(--text);background:var(--bg);font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;background:var(--bg);overflow-x:hidden}a{color:inherit;text-decoration:none}button{font:inherit}img{max-width:100%;display:block}.skip{position:absolute;z-index:1000;top:-100px;left:1rem;background:#fff;color:#000;padding:.7rem}.skip:focus{top:1rem}:focus-visible{outline:2px solid #fff;outline-offset:4px}.site-header{position:relative;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:15px clamp(22px,5vw,88px);min-height:80px;background:#090a10;border-bottom:1px solid #282530}.brand{display:flex;align-items:center;gap:10px;font-family:'Barlow Condensed',Impact,sans-serif;font-size:24px;font-weight:900;white-space:nowrap;letter-spacing:-.03em}.brand img{width:43px;height:43px;object-fit:contain}.brand-script{font-family:Georgia,serif;font-size:.76em;font-weight:400;font-style:italic;color:var(--gold);letter-spacing:-.06em}.site-header nav{display:flex;align-items:center;gap:clamp(14px,2.7vw,44px);font-size:12px;text-transform:uppercase;letter-spacing:.13em;font-weight:700}.site-header nav a{opacity:.72;transition:opacity .2s,color .2s}.site-header nav a:hover{opacity:1;color:var(--gold)}.language{border:1px solid #47404c;border-radius:100px;display:flex;padding:3px;flex-shrink:0}.language button{color:#aaa1af;background:transparent;border:0;border-radius:100px;padding:7px 10px;font-size:11px;font-weight:800;letter-spacing:.06em;cursor:pointer}.language button[aria-pressed="true"]{background:var(--gold);color:#16100c}.hero{position:relative;min-height:690px;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);align-items:center;gap:2vw;padding:60px clamp(22px,7.5vw,140px) 85px;isolation:isolate;background:radial-gradient(ellipse at 76% 49%,#372044 0,transparent 45%),radial-gradient(ellipse at 22% 88%,#5c2814 0,transparent 38%),#080910;overflow:hidden}.hero:before{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,#080910e8 7%,#08091081 46%,#08091065),url('assets/cover-wrap-de.jpg') center 43%/cover;opacity:.22}.hero:after{content:"";position:absolute;bottom:0;left:0;right:0;height:170px;background:linear-gradient(transparent,var(--bg))}.hero-copy{position:relative;z-index:2;max-width:695px}.eyebrow,.kicker,.section-mark{font-size:11px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--gold)}.eyebrow{display:flex;align-items:center;gap:12px}.spark{width:7px;height:7px;background:var(--gold);transform:rotate(45deg);box-shadow:0 0 16px var(--gold)}.hero-wordmark{width:min(570px,100%);margin:23px 0 20px;mix-blend-mode:screen}.hero h1,.section h2,.detail h1{font-family:'Barlow Condensed',Impact,'Arial Narrow',sans-serif;font-size:clamp(52px,6.25vw,106px);line-height:.87;letter-spacing:-.035em;text-transform:uppercase;margin:0;font-weight:900}.hero h1 em,.section h2 em{font-style:normal;color:var(--gold)}.hero p{font-size:clamp(16px,1.25vw,19px);line-height:1.75;color:#ddd2ce;max-width:570px;margin:28px 0 30px}.hero-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:49px;padding:13px 23px;border:1px solid #68563d;border-radius:2px;font-size:12px;line-height:1.2;letter-spacing:.1em;font-weight:800;text-transform:uppercase;transition:transform .2s,background .2s,color .2s;cursor:pointer}.button:hover:not(:disabled){transform:translateY(-3px)}.button.primary{background:linear-gradient(135deg,#ffe096,#e5a342 60%,#bb722b);border-color:#ffcc71;color:#1d1209;box-shadow:0 14px 42px #aa601e40}.text-button{border-color:transparent;color:#f5e5d0;padding-inline:8px}.text-button:hover{color:var(--gold)}.hero-stat{display:flex;align-items:center;gap:13px;margin-top:50px;color:#a99da5;font-size:11px;letter-spacing:.12em;text-transform:uppercase}.hero-stat span:first-child{font:800 22px 'Barlow Condensed',sans-serif;color:var(--gold)}.hero-art{position:relative;z-index:1;display:grid;place-items:center;min-width:0}.cover-halo{position:absolute;width:96%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,#af60276b,#4a2a882c 44%,transparent 68%);filter:blur(20px)}.hero-cover{position:relative;width:min(405px,78%);max-height:590px;object-fit:contain;box-shadow:18px 24px 65px #000d,0 0 0 1px #f4af6340;transform:perspective(1100px) rotateY(-8deg) rotateZ(2deg);transition:transform .4s}.hero-cover:hover{transform:perspective(1100px) rotateY(-2deg) rotateZ(0)}.cover-tag{position:absolute;right:-2%;bottom:9%;padding:12px 16px;background:#e7a637;color:#241209;transform:rotate(-6deg);font:900 16px 'Barlow Condensed',sans-serif;letter-spacing:.1em;box-shadow:8px 8px 0 #080910}.marquee{border-block:1px solid #68503a;background:#17121b;color:#ebc184;overflow:hidden;white-space:nowrap;font:800 21px 'Barlow Condensed',sans-serif;letter-spacing:.18em;padding:13px 0}.marquee span{display:block;text-align:center}.marquee b{padding:0 28px;color:#a567de}.section{padding:clamp(75px,9vw,140px) clamp(22px,7.5vw,140px)}.section-mark{color:#ab96a1;display:flex;align-items:center;gap:13px;margin-bottom:30px}.section-mark:before{content:"";width:25px;height:1px;background:var(--gold)}.section h2{font-size:clamp(52px,5.7vw,90px);line-height:.9}.section p{color:#bcb4b9;line-height:1.8}.intro{border-bottom:1px solid #342b34;background:linear-gradient(110deg,#10111a,#111019 60%,#231423)}.intro-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:8vw;align-items:end}.intro .kicker{margin-bottom:21px}.intro-grid p{font-size:17px;margin:0 0 26px}.pill-row{display:flex;flex-wrap:wrap;gap:8px}.pill-row span{border:1px solid #57404b;padding:10px 12px;color:#dbcbca;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.07em}.roster{background:#090a11}.section-head{display:flex;justify-content:space-between;align-items:end;gap:36px;margin-bottom:42px}.section-head p{max-width:310px;margin-bottom:0}.cards{display:grid;gap:14px}.hero-cards{grid-template-columns:repeat(3,minmax(0,1fr))}.villain-cards{grid-template-columns:repeat(4,minmax(0,1fr))}.character-card{background:#18151c;border:1px solid #4a3430;min-width:0;overflow:hidden;position:relative;transition:transform .25s,border-color .25s,box-shadow .25s}.character-card:hover{transform:translateY(-7px);border-color:var(--accent);box-shadow:0 18px 44px #0008}.character-image{height:clamp(260px,31vw,430px);position:relative;overflow:hidden;background:radial-gradient(ellipse at 50% 40%,color-mix(in srgb,var(--accent),transparent 60%),#171016 70%)}.character-image img{height:100%;width:100%;object-fit:cover;object-position:top center;filter:saturate(1.08);transition:transform .5s}.character-card:hover .character-image img{transform:scale(1.055)}.character-image:after{content:"";position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#18151c)}.character-info{position:relative;padding:0 23px 25px;margin-top:-44px}.character-info>span{color:var(--accent);font-size:10px;letter-spacing:.17em;font-weight:800}.character-info h3{font:900 clamp(32px,3vw,53px)/.95 'Barlow Condensed',Impact,sans-serif;text-transform:uppercase;letter-spacing:-.03em;margin:9px 0}.character-info p{font-size:13px;line-height:1.55;min-height:42px;margin:0 0 23px;color:#d0c5c6}.card-bottom{border-top:1px solid #6d536033;padding-top:15px;display:flex;align-items:center;justify-content:space-between;gap:12px}.card-bottom b{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:#f7e1c4}.card-bottom i{font-style:normal;font-size:19px;color:var(--accent)}.mode{display:grid;grid-template-columns:1fr 1fr;gap:6vw;align-items:center;background:radial-gradient(ellipse at 10% 60%,#593019,#1a121c 55%,#0d0d15)}.mode-art{height:500px;overflow:hidden;position:relative;border:1px solid #ad773a78;box-shadow:20px 24px 0 #090a10}.mode-art img{width:100%;height:100%;object-fit:cover;object-position:center 68%;filter:saturate(1.1)}.mode-art:after{content:"";position:absolute;inset:0;background:linear-gradient(45deg,#0d0d15a8,transparent 55%)}.mode-stripes{position:absolute;z-index:1;top:0;right:0;bottom:0;width:20px;background:repeating-linear-gradient(0deg,var(--gold) 0 13px,#17111a 13px 26px)}.mode-copy p{font-size:17px;max-width:530px;margin:25px 0 35px}.mode-formula{display:flex;align-items:center;gap:9px;flex-wrap:wrap;font:800 15px 'Barlow Condensed',sans-serif;letter-spacing:.1em}.mode-formula span,.mode-formula strong{padding:11px 12px;border:1px solid #715b45;color:#f9d6a7}.mode-formula strong{background:var(--gold);color:#26160b}.mode-formula i{color:#e4a94f;font-style:normal}.villains{background:radial-gradient(ellipse at 75% 5%,#311b3f,#0b0a12 55%)}.villains h2 em{color:#b975ed}.villain-cards .character-image{height:270px}.villain-cards .character-info{padding-inline:17px}.villain-cards .character-info h3{font-size:35px}.villain-cards .character-info p{min-height:60px}.books{background:linear-gradient(140deg,#1d1421,#0c0d13 60%);border-top:1px solid #5a3e57}.books-intro{max-width:650px;margin-bottom:45px}.books-intro p{font-size:17px;max-width:500px}.book-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.book{display:grid;grid-template-columns:44% 56%;background:#19151e;border:1px solid #6b514e;min-height:350px;overflow:hidden}.book-image{background:radial-gradient(circle,#583c58,#080811 70%);padding:22px;display:grid;place-items:center}.book-image img{max-height:330px;width:auto;object-fit:contain;box-shadow:10px 14px 30px #000b}.book-info{padding:32px 23px 25px;align-self:center}.book-language{color:var(--gold);font-size:10px;font-weight:800;letter-spacing:.17em}.book h3{font:900 clamp(29px,3vw,45px)/.95 'Barlow Condensed',sans-serif;text-transform:uppercase;margin:14px 0}.book p{font-size:13px}.book .buy{margin:20px 0 10px;background:#e9ad55;color:#1b0f09;border-color:#e9ad55}.book .buy:disabled{opacity:.55;cursor:not-allowed}.book small{display:block;color:#9e9299}.end-card{display:flex;align-items:center;gap:40px;justify-content:space-between;background:#12131a;border-block:1px solid #5b453f}.end-card img{width:105px;height:105px;object-fit:contain}.end-card h2{font-size:54px;margin:10px 0}.end-card .button{margin-left:auto}footer{display:flex;gap:20px;align-items:center;justify-content:space-between;padding:32px clamp(22px,7.5vw,140px);color:#a89da5;font-size:12px}footer a{color:var(--gold)}.footer-brand{font:900 25px 'Barlow Condensed',sans-serif;color:#fff}.footer-brand span{font:italic 20px Georgia,serif;color:var(--gold)}
.detail{min-height:75vh;padding:30px clamp(22px,7.5vw,140px) 100px;background:radial-gradient(ellipse at 75% 10%,#362039,#0a0a11 60%)}.back-link{display:inline-flex;align-items:center;gap:9px;color:#d1c6cb;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;padding:10px 0;margin-bottom:35px}.back-link:hover{color:var(--gold)}.detail-hero{display:grid;grid-template-columns:.9fr 1.1fr;align-items:stretch;min-height:590px;background:#17131c;border:1px solid color-mix(in srgb,var(--accent),transparent 50%)}.detail-image{position:relative;min-height:590px;overflow:hidden;background:radial-gradient(ellipse at 50% 40%,color-mix(in srgb,var(--accent),transparent 55%),#130e16 75%)}.detail-image img{width:100%;height:100%;object-fit:cover;object-position:top center}.detail-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 70%,#17131c)}.detail-copy{padding:clamp(30px,5vw,80px);display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.detail-copy .kicker{color:var(--accent)}.detail h1{font-size:clamp(65px,7vw,125px);margin:12px 0 20px}.detail-copy p{line-height:1.8;color:#c9bec2;max-width:620px}.detail-copy .detail-lead{font-size:21px;color:#f0d7be;line-height:1.35;margin-bottom:2px}.facts{width:100%;margin:25px 0 29px;border-top:1px solid #5d4a51}.facts div{display:grid;grid-template-columns:140px 1fr;gap:15px;padding:13px 0;border-bottom:1px solid #5d4a51}.facts span{font-size:10px;color:#b7a5a9;letter-spacing:.13em;font-weight:800}.facts strong{font-size:13px}.detail-next{margin-top:65px;display:grid;grid-template-columns:1fr 2fr;gap:30px;border-top:1px solid #4c3943;padding-top:25px}.detail-next>span{text-transform:uppercase;font:800 14px 'Barlow Condensed',sans-serif;color:var(--gold);letter-spacing:.1em}.detail-next>div{display:flex;flex-wrap:wrap;gap:10px}.detail-next a{border:1px solid #604a52;padding:10px 13px;font-size:12px}.detail-next a:hover{border-color:var(--gold);color:var(--gold)}
@media(max-width:1050px){.site-header nav{gap:14px}.villain-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.villain-cards .character-image{height:360px}.villain-cards .character-info p{min-height:35px}.book{display:block}.book-image img{max-height:270px}.book-info{padding:25px}.hero{padding-inline:5vw}.section{padding-inline:5vw}}
@media(max-width:720px){.site-header{flex-wrap:wrap;gap:8px;padding:10px 18px}.site-header nav{order:3;width:100%;overflow:auto;white-space:nowrap;gap:20px;padding:8px 0 5px;font-size:10px}.brand{font-size:21px}.brand img{width:36px;height:36px}.hero{grid-template-columns:1fr;min-height:unset;padding:55px 22px 75px}.hero-copy{max-width:none}.hero-wordmark{margin:17px 0}.hero h1{font-size:clamp(52px,12vw,78px)}.hero p{margin:18px 0 24px}.hero-art{margin:40px 0 0}.hero-cover{width:min(320px,80%)}.cover-tag{right:6%;bottom:7%;font-size:13px}.hero-stat{margin-top:25px}.marquee{font-size:16px}.section{padding:72px 22px}.section h2{font-size:clamp(51px,10vw,75px)}.intro-grid,.mode,.detail-hero{grid-template-columns:1fr}.intro-grid{gap:25px}.section-head{display:block}.section-head p{max-width:550px;margin:20px 0 0}.hero-cards,.villain-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.character-image,.villain-cards .character-image{height:310px}.character-info{padding:0 14px 18px}.character-info h3,.villain-cards .character-info h3{font-size:33px}.character-info p,.villain-cards .character-info p{font-size:12px;min-height:55px}.card-bottom b{font-size:9px}.mode-art{height:380px}.book-grid{gap:15px}.end-card{flex-wrap:wrap;gap:12px}.end-card img{width:75px;height:75px}.end-card h2{font-size:43px}.end-card .button{margin-left:0;width:100%}.detail{padding:25px 22px 70px}.detail-image{height:440px;min-height:0}.detail-copy{padding:35px 25px}.detail-next{grid-template-columns:1fr}footer{padding:26px 22px;flex-wrap:wrap}}
@media(max-width:480px){.hero-cards,.villain-cards,.book-grid{grid-template-columns:1fr}.character-image,.villain-cards .character-image{height:400px}.character-info h3,.villain-cards .character-info h3{font-size:43px}.character-info p,.villain-cards .character-info p{min-height:0}.book{display:grid;grid-template-columns:42% 58%;min-height:260px}.book-image{padding:10px}.book-image img{max-height:260px}.book-info{padding:15px}.book h3{font-size:28px}.book .buy{padding:10px 9px;font-size:10px;min-height:38px}.facts div{grid-template-columns:105px 1fr}.detail-image{height:360px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}body:not(.motion-enabled) *,body:not(.motion-enabled) *:before,body:not(.motion-enabled) *:after{transition:none!important;animation:none!important}}

/* Final cover branding and a clearer metallic display system. */
.brand{gap:9px;letter-spacing:normal}
.hero-glow{position:absolute;inset:0;pointer-events:none}
.hero:before{opacity:.08}
.brand .brand-avatar{width:46px;height:46px;border-radius:50%;object-fit:cover;border:1px solid #b48248;box-shadow:0 0 0 2px #11131c,0 0 16px #e4a54a55}
.brand .brand-wordmark{width:178px;height:auto;max-height:48px;object-fit:contain}
.hero-wordmark{width:min(650px,100%);height:auto;mix-blend-mode:normal;filter:drop-shadow(0 10px 25px #000a);margin:16px 0 24px}
.end-card>img{border-radius:50%;border:1px solid #b48248;box-shadow:0 0 24px #d6964955}

.hero h1,.section h2,.detail h1{
  font-family:'Barlow','Arial Black',sans-serif;
  font-weight:800;
  line-height:1.04;
  letter-spacing:.005em;
  text-wrap:balance;
  color:#f5cf88;
  background:linear-gradient(180deg,#fffdf3 0%,#cfd7da 16%,#6c747c 28%,#f8f8ed 42%,#e2b362 50%,#fff2be 62%,#b47a32 77%,#392b25 100%);
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;
  filter:drop-shadow(0 2px 0 #080a0f) drop-shadow(0 5px 1px #3a2515) drop-shadow(0 10px 14px #000b);
}
.hero h1{font-size:clamp(44px,4.65vw,76px);max-width:720px}
.section h2{font-size:clamp(43px,4.7vw,73px)}
.detail h1{font-size:clamp(57px,6vw,98px);overflow-wrap:anywhere}
.hero h1 em,.section h2 em,.villains h2 em{
  color:#ffd47a;
  background:linear-gradient(180deg,#fff4c8 4%,#e8b960 25%,#89531e 43%,#ffd88a 58%,#b8772d 79%,#44250f 100%);
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;
}
.site-header nav{gap:8px;letter-spacing:.055em;font-family:'Barlow',Arial,sans-serif;font-size:13px}
.site-header nav a{
  opacity:1;display:inline-flex;align-items:center;min-height:38px;padding:7px 12px;
  border:1px solid #624d34;border-radius:3px;
  background:linear-gradient(170deg,#2b2830,#11131b 45%,#17131a);
  box-shadow:inset 0 1px #cfad7855,inset 0 -2px #0009,0 3px 8px #0007;
  color:#e8d8bd;text-shadow:0 1px 1px #000;
  transition:transform .2s,border-color .2s,box-shadow .2s;
}
.site-header nav a:hover,.site-header nav a:focus-visible{
  color:#fff5d5;border-color:#dfab59;transform:translateY(-2px);
  box-shadow:inset 0 1px #ffe7b077,0 4px 13px #b27a343d;
}
.character-info h3,.villain-cards .character-info h3,.book h3,.end-card h2{
  font-family:'Barlow Semi Condensed','Arial Narrow',sans-serif;
  font-weight:800;letter-spacing:.015em;line-height:1.03;
}
.character-info h3{font-size:clamp(31px,2.8vw,46px)}
.villain-cards .character-info h3{font-size:clamp(28px,2.3vw,36px);overflow-wrap:anywhere}
.book h3{line-height:1.08;letter-spacing:.01em}
.section p,.detail-copy p{color:#d8ced1;line-height:1.75}
.character-info p,.villain-cards .character-info p{color:#e0d5d6}
.character-info p,.villain-cards .character-info p{font-size:14px;line-height:1.65}
.kicker,.section-mark,.character-info>span{letter-spacing:.11em}
@media(max-width:1100px){.brand .brand-wordmark{width:155px}.site-header{gap:12px}.site-header nav a{padding:7px 9px;font-size:12px}}
@media(max-width:720px){
  .brand .brand-avatar{width:40px;height:40px}
  .brand .brand-wordmark{width:150px;max-height:40px}
  .site-header nav{gap:8px;padding:9px 0;scrollbar-width:none}
  .site-header nav::-webkit-scrollbar{display:none}
  .site-header nav a{font-size:12px;flex:none;padding:7px 11px}
  .hero h1{font-size:clamp(43px,8.2vw,67px)}
  .section h2{font-size:clamp(41px,8vw,62px)}
  .hero-wordmark{margin:10px 0 21px}
}
@media(max-width:480px){
  .site-header{gap:6px}
  .brand .brand-wordmark{width:135px}
  .hero h1{font-size:clamp(40px,10.4vw,51px)}
  .section h2{font-size:clamp(39px,10.2vw,51px)}
  .character-info h3,.villain-cards .character-info h3{font-size:40px}
  .book h3{font-size:28px}
}


/* Footer branding, transparency and legal pages. */
[hidden]{display:none!important}
.site-footer{display:grid;grid-template-columns:auto 1fr;gap:16px 30px;align-items:center;border-top:1px solid var(--line)}
.site-footer .footer-brand{display:block;width:clamp(180px,20vw,245px);max-width:100%;font:inherit}
.site-footer .footer-brand img{width:100%;height:auto;object-fit:contain}
.site-footer>p{margin:0;text-align:right;line-height:1.6}
.footer-links{display:flex;flex-wrap:wrap;gap:8px 22px;align-items:center}
.footer-links a{padding:7px 0;text-decoration:underline;text-underline-offset:4px}

.legal-page{max-width:1040px;margin:auto;padding:50px clamp(22px,6vw,80px) 90px;min-height:65vh;line-height:1.8}
.legal-page .back-link{display:inline-block;margin-bottom:36px;color:var(--gold)}
.legal-page h1{font:900 clamp(42px,6vw,70px)/1.05 'Barlow Condensed',Impact,sans-serif;text-transform:uppercase;margin:0 0 36px;overflow-wrap:anywhere}
.legal-page h2{font:700 clamp(23px,3vw,31px)/1.2 'Barlow Condensed',sans-serif;color:var(--gold);margin:36px 0 15px}
.legal-page p,.legal-page address{font-size:16px;color:#ded6da;margin:0 0 20px;font-style:normal;overflow-wrap:anywhere}
.legal-page .legal-kicker{font-size:12px;color:var(--muted);margin-bottom:14px;letter-spacing:.04em}
.legal-page .legal-lead{font-size:20px;color:#fff}
.legal-page a:not(.back-link){color:#ffd18a;text-decoration:underline;text-underline-offset:3px}
.legal-reset{background:#28202d;border:1px solid #9f7c4e;border-radius:4px;color:#ffe0ae;padding:7px 10px;cursor:pointer}
.preference-status{display:block;color:#e4d9e0;margin-top:8px}
@media(max-width:720px){.site-footer{grid-template-columns:1fr;gap:18px}.site-footer>p{text-align:left}.footer-links{gap:8px 20px}.legal-page{padding-top:30px}.legal-page .back-link{margin-bottom:24px}}

/* Minimal contact form. */
.contact-form{display:grid;gap:10px;max-width:650px;margin:28px 0}
.contact-form label{font-size:15px;color:var(--text);margin-top:12px}
.contact-form input,.contact-form textarea{font:inherit;font-size:16px;width:100%;border:1px solid #786773;border-radius:4px;background:#15121b;color:#fff;padding:12px}
.contact-form textarea{resize:vertical;min-height:180px}
.contact-form .contact-privacy{font-size:13px;line-height:1.65;margin:12px 0}
.contact-form button{justify-self:start}
.contact-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.legal-page .contact-email{font-size:14px;margin-top:30px}
