@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600;700&family=DM+Sans:wght@400;500;600;700&display=swap');
:root{--bg:#0b0e10;--panel:#14191b;--panel2:#1c2222;--gold:#c9a76b;--gold-light:#e3c796;--cream:#f1e9d9;--muted:#bbb8af;--line:rgba(232,214,173,.18);--serif:'Cormorant Garamond',Georgia,serif;--sans:'DM Sans',Arial,sans-serif;--wrap:1220px}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--cream);font:16px/1.68 var(--sans);-webkit-font-smoothing:antialiased}body.menu-open,body.modal-open{overflow:hidden}img,video{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{font:inherit}button,a{ -webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid var(--gold-light);outline-offset:5px}::selection{background:var(--gold);color:#111}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:1.02}h1{font-size:clamp(4.6rem,10vw,10.5rem);letter-spacing:-.055em}h2{font-size:clamp(3.3rem,6.2vw,6.6rem);letter-spacing:-.045em}h3{font-size:clamp(1.8rem,3vw,3rem)}p{color:#c5c2b9}section{position:relative}.container{max-width:var(--wrap);padding:0 40px;margin:auto}.eyebrow{color:var(--gold-light);font:700 .7rem/1.4 var(--sans);letter-spacing:.3em;text-transform:uppercase;display:inline-flex;align-items:center;gap:15px}.eyebrow:before{content:'';display:block;width:29px;height:1px;background:var(--gold)}.eyebrow.no-line:before{display:none}.lead{font-family:var(--serif);font-size:clamp(1.35rem,2.35vw,2rem);line-height:1.34;color:var(--cream)}.intro-copy{max-width:660px}.section-spacing{padding:130px 0}.section-heading{margin-bottom:45px}.section-heading .eyebrow{margin-bottom:22px}.section-heading h2{max-width:890px;margin:0}.quiet{color:#b4b3ab}.gold{color:var(--gold)}.rule{display:block;height:1px;background:var(--line)}.smallcaps{text-transform:uppercase;letter-spacing:.15em;font-size:.75rem;color:var(--gold)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:15px;border:1px solid var(--gold);min-height:53px;padding:12px 25px;text-transform:uppercase;letter-spacing:.17em;font-size:.7rem;font-weight:700;transition:background .22s,color .22s,border-color .22s,transform .22s;cursor:pointer;background:transparent;color:var(--cream)}.btn:hover{background:var(--gold);color:#111;transform:translateY(-2px)}.btn-primary{background:var(--gold);color:#141414}.btn-primary:hover{background:var(--gold-light)}.btn-light{border-color:#ffffff87}.text-link{text-transform:uppercase;font-size:.72rem;font-weight:700;letter-spacing:.17em;color:var(--gold-light);display:inline-block;padding-bottom:8px;border-bottom:1px solid var(--gold)}.text-link:hover{color:#fff}.btn-row{display:flex;flex-wrap:wrap;gap:15px;margin-top:30px}
.site-header{position:fixed;top:0;left:0;right:0;z-index:50;background:linear-gradient(to bottom,rgba(5,7,9,.84),rgba(5,7,9,0));transition:background .3s,border-color .3s;border-bottom:1px solid transparent}.site-header.scrolled,.site-header.solid{background:rgba(9,13,14,.96);border-bottom-color:var(--line);backdrop-filter:blur(14px)}.header-inner{height:98px;max-width:1540px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:32px;padding:0 48px}.wordmark{font:600 2.2rem/.82 var(--serif);letter-spacing:-.035em;text-transform:uppercase;white-space:nowrap}.wordmark span{display:block;margin-top:9px;font:600 .62rem/1 var(--sans);letter-spacing:.39em;color:var(--gold)}.nav{display:flex;align-items:center;gap:27px}.nav a{font-size:.66rem;letter-spacing:.13em;font-weight:700;text-transform:uppercase;color:#dfdcd5;transition:color .2s}.nav a:hover,.nav a[aria-current=page]{color:var(--gold-light)}.nav a.nav-buy{border:1px solid rgba(201,167,107,.65);padding:12px 18px;color:var(--gold-light)}.nav a.nav-buy:hover{background:var(--gold);color:#111}.menu-toggle{display:none;background:none;border:0;padding:10px;color:#fff;cursor:pointer}.menu-toggle span{display:block;width:25px;height:2px;background:currentColor;margin:6px 0;transition:transform .25s,opacity .25s}
.hero{height:min(900px,100svh);min-height:650px;display:grid;place-items:center;overflow:hidden;isolation:isolate}.hero .hero-visual,.page-banner .hero-visual{position:absolute;inset:0;z-index:-2}.hero-visual video,.hero-visual img{height:100%;width:100%;object-fit:cover}.hero-visual img{object-position:center}.hero .hero-visual:after,.page-banner .hero-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,9,10,.76) 0%,rgba(5,9,10,.53) 47%,rgba(5,9,10,.28) 100%),linear-gradient(0deg,#0b0e10 0%,transparent 28%,rgba(0,0,0,.18) 100%)}.hero-content{width:100%;padding-top:110px}.hero-content .eyebrow{margin-bottom:28px}.hero-content h1{max-width:930px;margin-bottom:17px}.hero-content .subtitle{font:500 clamp(1.4rem,2.4vw,2.25rem)/1.25 var(--serif);color:#e7ddc9;max-width:600px;margin-bottom:20px}.hero-content .hero-desc{max-width:500px;font-size:.92rem;color:#d0cfc8}.hero-bottom{position:absolute;bottom:35px;left:0;width:100%;display:flex;align-items:center;justify-content:space-between;pointer-events:none;padding:0 max(calc((100vw - var(--wrap))/2 + 40px),40px)}.hero-bottom span{font-size:.66rem;letter-spacing:.23em;text-transform:uppercase;color:#ddd2bc}.vertical-line{height:65px;width:1px;background:linear-gradient(var(--gold),transparent);display:block;margin:0 auto 12px}.scroll-prompt{text-align:center}.scroll-prompt:before{content:'';display:block;height:55px;width:1px;background:linear-gradient(var(--gold),transparent);margin:0 auto 12px}
.page-banner{position:relative;height:510px;min-height:490px;display:flex;align-items:end;isolation:isolate;overflow:hidden}.page-banner .hero-visual:after{background:linear-gradient(0deg,#0b0e10,rgba(3,5,6,.45) 68%,rgba(3,5,6,.5)),linear-gradient(90deg,rgba(5,9,10,.4),transparent)}.page-banner .container{width:100%;padding-bottom:75px;padding-top:145px}.page-banner h1{font-size:clamp(4.5rem,8vw,7.3rem);margin:8px 0 5px}.page-banner .page-sub{font:500 1.45rem/1.25 var(--serif);color:#e6dac7}.band{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#101416}.band-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;padding:23px 40px}.band-inner span{font-size:.72rem;letter-spacing:.17em;color:#ddd3bf;text-transform:uppercase}.ornate{color:var(--gold);font:1.5rem var(--serif)}
.split{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.split.reverse>.copy{order:-1}.feature-image{position:relative;min-height:580px;overflow:hidden;background:var(--panel)}.feature-image img,.feature-image video{height:100%;width:100%;object-fit:cover;position:absolute;inset:0}.feature-image:after{content:'';position:absolute;inset:0;border:1px solid #f8d9a53a;pointer-events:none}.feature-image .image-note{position:absolute;bottom:26px;left:28px;background:#0e1110e8;border:1px solid var(--line);padding:9px 15px;color:var(--gold-light);font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;z-index:2}.copy .eyebrow{margin-bottom:23px}.copy h2{margin-bottom:30px}.copy p{max-width:590px}.copy .lead{max-width:530px}.stats{display:flex;gap:32px;border-top:1px solid var(--line);padding-top:26px;margin-top:35px;flex-wrap:wrap}.stat strong{display:block;font:500 2.5rem/1 var(--serif);color:var(--gold-light)}.stat span{font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:#bdb4a4}
.chapter-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.chapter-card{min-height:390px;display:flex;flex-direction:column;justify-content:end;position:relative;overflow:hidden;padding:31px;background:#151a1b;border:1px solid var(--line);isolation:isolate}.chapter-card>img{z-index:-2;position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s}.chapter-card:hover>img{transform:scale(1.06)}.chapter-card:after{position:absolute;z-index:-1;content:'';inset:0;background:linear-gradient(0deg,#050809 0%,rgba(4,7,8,.2) 85%)}.chapter-card h3{font-size:2.7rem;margin:9px 0}.chapter-card p{color:#d1cabc;font-size:.86rem;max-width:290px;margin-bottom:0}.number{font-family:var(--serif);font-size:1.5rem;color:var(--gold)}
.dark-panel{background:radial-gradient(ellipse at 50% 0%,#26302b 0%,#14191b 43%,#0c1012 100%)}.quote-panel{padding:100px 0;text-align:center}.quote-panel h2{max-width:920px;margin:0 auto 28px;font-size:clamp(2.7rem,5vw,5.3rem)}.quote-panel .lead{max-width:800px;margin:0 auto 24px}.quote-panel .quote-mark{font:7rem/1 var(--serif);color:var(--gold);height:70px}.quote-panel .quiet{font-size:.73rem;letter-spacing:.14em;text-transform:uppercase}.quote-slider{position:relative;max-width:910px;margin:auto;min-height:220px}.quote-slider blockquote{display:none;margin:0}.quote-slider blockquote.active{display:block;animation:fade .3s}.quote-slider blockquote p{font:500 clamp(2rem,4vw,3.7rem)/1.12 var(--serif);color:var(--cream)}.quote-slider blockquote cite{font:700 .72rem/1.5 var(--sans);color:var(--gold);text-transform:uppercase;letter-spacing:.17em}.slider-controls{display:flex;align-items:center;justify-content:center;gap:25px;margin-top:20px}.slider-controls button{width:39px;height:39px;border:1px solid var(--line);background:transparent;color:var(--cream);border-radius:50%;cursor:pointer}.slider-controls button:hover{border-color:var(--gold)}.slider-number{font-size:.7rem;color:var(--gold);letter-spacing:.15em}@keyframes fade{from{opacity:.15}to{opacity:1}}
.media-feature{background:#0e1112}.media-grid{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:15px}.media-card{padding:0;border:1px solid var(--line);background:var(--panel);text-align:left;color:var(--cream);cursor:pointer;transition:border-color .2s,transform .2s}.media-card:hover{border-color:var(--gold);transform:translateY(-3px)}.media-img{height:245px;overflow:hidden;position:relative}.media-img img{height:100%;width:100%;object-fit:cover;transition:transform .35s}.media-card:hover img{transform:scale(1.05)}.play-circle{display:grid;place-items:center;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:66px;height:66px;border:1px solid #ffffffae;border-radius:50%;background:#07070783;font-size:1.2rem;color:#fff}.media-card-body{padding:22px}.media-card h3{font-size:1.8rem;margin:5px 0}.media-card p{font-size:.77rem;margin:0;color:#bbb6ac}.media-card .smallcaps{font-size:.64rem}.media-card[disabled]{opacity:.5}
.book-display{position:relative;display:grid;place-items:center;min-height:490px}.book-cover{width:min(305px,78%);aspect-ratio:2/3;position:relative;background:radial-gradient(ellipse at 55% 35%,#3d3c30,#121917 76%);border:1px solid #c5a86e81;box-shadow:20px 22px 0 -8px #111,21px 22px 0 -7px #7b6c55,30px 40px 45px #000a,inset 0 0 0 12px #181f1c,inset 0 0 0 13px #886c42;display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:65px 22px 34px;text-align:center;transform:rotate(-5deg)}.book-cover:before,.book-cover:after{position:absolute;content:'✦';color:#c6a46d;font:2.2rem var(--serif);top:28px}.book-cover:after{top:auto;bottom:70px;font-size:1.7rem}.book-cover .book-title{font:500 3.7rem/.87 var(--serif);text-transform:uppercase;color:#e5d0a1;letter-spacing:-.06em;position:relative}.book-cover .book-title small{display:block;margin-bottom:18px;font:600 .61rem/1.5 var(--sans);letter-spacing:.3em;color:var(--gold)}.book-cover .book-author{font:600 .66rem/1.5 var(--sans);text-transform:uppercase;letter-spacing:.19em;color:#eddbb7}.book-cover .book-decoration{height:75px;width:1px;background:linear-gradient(var(--gold),transparent)}.book-caption{font-size:.75rem;text-align:center;color:#9f9b91;margin-top:38px}
.timeline{border-left:1px solid #c0a16f72;margin-left:12px}.timeline-step{padding:0 0 48px 35px;position:relative}.timeline-step:last-child{padding-bottom:0}.timeline-step:before{content:'';width:11px;height:11px;position:absolute;left:-6px;top:8px;border-radius:100%;background:var(--gold);box-shadow:0 0 0 6px #c9a76b22}.timeline-step .smallcaps{margin:0}.timeline-step h3{margin:9px 0;font-size:2rem}.timeline-step p{font-size:.9rem;max-width:520px}.timeline-step:last-child p{margin:0}
.character-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.character-card{border:1px solid var(--line);background:linear-gradient(145deg,#1b2324,#101516);padding:40px;min-height:300px;position:relative;overflow:hidden}.character-card:before{content:'✦';position:absolute;font:10rem var(--serif);color:#c9a76b0a;right:10px;top:-20px}.character-card h3{margin:15px 0 5px;font-size:3rem}.character-card .role{color:var(--gold-light);font-size:.69rem;letter-spacing:.18em;text-transform:uppercase;font-weight:700}.character-card p{font-size:.89rem;max-width:500px;margin:15px 0 0}.character-card.featured{grid-column:span 2;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:25px;min-height:330px}.character-card.featured .quote{font:italic 2rem/1.2 var(--serif);color:#e2c9a1;border-left:1px solid var(--gold);padding-left:25px}
.traits{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.trait{padding:33px 22px 37px;border-right:1px solid var(--line)}.trait:last-child{border-right:0}.trait strong{display:block;font:500 2rem var(--serif);color:var(--gold-light)}.trait span{font-size:.75rem;color:#b7b2a9}
.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:19px}.review-card{padding:38px 30px;border:1px solid var(--line);background:#151a1b;display:flex;flex-direction:column;min-height:310px}.review-card .stars{color:var(--gold-light);letter-spacing:.22em;font-size:.78rem}.review-card h3{font-size:1.9rem;margin:22px 0 10px}.review-card p{font:1.5rem/1.3 var(--serif);color:var(--cream);flex:1}.review-card footer{font-size:.69rem;text-transform:uppercase;letter-spacing:.15em;color:var(--gold)}
.purchase-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.purchase-card{border:1px solid var(--line);background:var(--panel);padding:35px;display:flex;flex-direction:column;min-height:310px}.purchase-card .format{color:var(--gold);font-size:.7rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.purchase-card h3{margin:19px 0 12px;font-size:2.5rem}.purchase-card p{font-size:.86rem;flex:1}.purchase-card .btn{margin-top:24px;align-self:flex-start}.fine-print{font-size:.78rem;color:#a7a49c}
.author-image{max-width:470px;min-height:550px;position:relative}.author-image img{object-fit:cover;object-position:top center;width:100%;height:100%;filter:saturate(.68) contrast(1.08)}.author-image:after{content:'';position:absolute;inset:0;box-shadow:inset 0 0 80px #0b0e105a;pointer-events:none}.author-note{padding:45px;border-left:1px solid var(--gold);background:#151a1b;margin-top:40px}.author-note .lead{margin-bottom:0}.historical-note{border:1px solid var(--line);padding:27px 34px;background:#151a1b}.historical-note strong{color:var(--gold-light)}
.cta-band{position:relative;overflow:hidden;isolation:isolate;padding:130px 0;text-align:center;background:#182020}.cta-band:before{content:'';position:absolute;inset:0;z-index:-2;background:url('royal-table.jpg') center / cover}.cta-band:after{content:'';position:absolute;inset:0;z-index:-1;background:#070b0ce3}.cta-band h2{margin:16px auto 25px;max-width:850px}.cta-band .lead{max-width:640px;margin:0 auto 27px}.cta-band .btn-row{justify-content:center}
.footer{border-top:1px solid var(--line);background:#090c0d;padding:65px 0 20px}.footer-top{display:grid;grid-template-columns:1.35fr 1fr 1fr;gap:60px;padding-bottom:56px}.footer h3{font-family:var(--sans);font-size:.69rem;text-transform:uppercase;letter-spacing:.19em;color:var(--gold);font-weight:700}.footer .wordmark{font-size:2.4rem;display:inline-block}.footer p{max-width:360px;font-size:.85rem;margin-top:23px}.footer-links{display:grid;gap:8px}.footer-links a{font-size:.84rem;color:#b7b2a9}.footer-links a:hover{color:var(--gold)}.footer-bottom{border-top:1px solid var(--line);padding-top:19px;display:flex;justify-content:space-between;gap:25px;font-size:.72rem;color:#99958e;flex-wrap:wrap}.footer-bottom a{color:#b6ad9a}
.modal[hidden]{display:none}.modal{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:20px;background:#030405f0}.modal-panel{width:min(1040px,100%);background:#111717;border:1px solid var(--line);position:relative}.modal-head{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:18px 26px}.modal-head h2{font-size:2rem;margin:0}.modal-close{border:1px solid var(--line);background:none;color:white;font-size:1.6rem;cursor:pointer;width:42px;height:42px}.modal video{width:100%;max-height:70vh;aspect-ratio:16/9;background:#000}.modal-desc{padding:8px 24px 22px;margin:0;font-size:.78rem}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .6s,transform .6s}.reveal.visible{opacity:1;transform:none}
@media(max-width:1100px){.nav{gap:16px}.header-inner{padding:0 29px;gap:16px}.nav a{font-size:.62rem}.wordmark{font-size:1.85rem}.chapter-card{min-height:340px}}
@media(max-width:900px){.container{padding:0 25px}.site-header{background:#090c0df2}.header-inner{height:78px;padding:0 25px}.menu-toggle{display:block;z-index:55}.menu-toggle[aria-expanded=true] span:nth-child(1){transform:translateY(8px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:nth-child(2){opacity:0}.menu-toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}.nav{position:fixed;inset:77px 0 auto 0;background:#0b0f10;display:none;flex-direction:column;align-items:stretch;padding:20px 30px 35px;border-bottom:1px solid var(--line);gap:0;max-height:calc(100svh - 78px);overflow-y:auto}.nav.open{display:flex}.nav a{padding:13px 0;font-size:.85rem}.nav a.nav-buy{margin-top:15px;text-align:center}.hero{min-height:650px;height:93svh}.hero-bottom{padding:0 25px}.hero-bottom .micro{display:none}.section-spacing{padding:90px 0}.split{grid-template-columns:1fr;gap:46px}.split.reverse>.copy{order:initial}.feature-image{min-height:420px}.character-grid,.review-grid,.purchase-grid{grid-template-columns:1fr 1fr}.chapter-cards,.media-grid{grid-template-columns:1fr 1fr}.chapter-card:nth-child(3),.media-card:nth-child(3){grid-column:span 2}.character-card.featured{grid-column:span 2}.footer-top{gap:30px}.traits{grid-template-columns:1fr 1fr}.trait:nth-child(2){border-right:0}.trait:nth-child(-n+2){border-bottom:1px solid var(--line)}}
@media(max-width:600px){.container{padding:0 22px}h1{font-size:clamp(4rem,17vw,6.5rem)}h2{font-size:clamp(3.1rem,13vw,4.7rem)}.page-banner h1{font-size:clamp(3.65rem,15vw,5.3rem)}.page-banner{height:420px;min-height:420px}.page-banner .container{padding-bottom:45px}.hero{min-height:680px;height:93svh}.hero .hero-visual:after{background:linear-gradient(0deg,#0b0e10 0%,rgba(4,8,10,.35) 65%),linear-gradient(90deg,rgba(3,6,7,.77),rgba(3,6,7,.2))}.hero-content{padding-top:65px}.hero-content .subtitle{font-size:1.45rem}.hero-content .hero-desc{font-size:.83rem}.btn-row{gap:10px}.btn{font-size:.64rem;min-height:49px;padding:10px 17px}.section-spacing{padding:73px 0}.feature-image{min-height:360px}.chapter-cards,.media-grid,.character-grid,.review-grid,.purchase-grid{grid-template-columns:1fr}.chapter-card:nth-child(3),.media-card:nth-child(3),.character-card.featured{grid-column:auto}.chapter-card{min-height:360px}.character-card{padding:30px;min-height:auto}.character-card.featured{display:block}.character-card.featured .quote{margin-top:30px}.review-card{min-height:260px}.purchase-card{min-height:280px}.media-img{height:220px}.book-display{min-height:430px}.author-image{min-height:420px}.author-note{padding:28px}.band-inner{padding:18px 22px;justify-content:center;text-align:center;gap:10px}.band-inner span{font-size:.6rem}.band-inner span:nth-of-type(n+3){display:none}.footer-top{grid-template-columns:1fr 1fr;gap:40px}.footer-top>div:first-child{grid-column:span 2}.footer-bottom{display:block}.footer-bottom span{display:block;margin-bottom:8px}.hero-bottom{bottom:20px}.stats{gap:25px}.stat strong{font-size:2rem}.quote-panel{padding:75px 0}.modal-head h2{font-size:1.5rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.001ms!important;transition-duration:.001ms!important}.reveal{opacity:1;transform:none}}

/* Character gallery — portrait-forward edition */
.character-banner .hero-visual img{object-position:50% 41%}
.characters-jump{position:relative;z-index:1;background:#101619;border-block:1px solid var(--line)}
.characters-jump-inner{display:flex;align-items:center;justify-content:center;gap:clamp(18px,5vw,65px);padding-top:22px;padding-bottom:22px}
.characters-jump-inner a{color:var(--cream);font-size:.72rem;letter-spacing:.14em;font-weight:700;text-transform:uppercase;transition:color .2s}
.characters-jump-inner a:hover{color:var(--gold-light)}
.characters-jump-inner a span{font-size:1.15rem;color:var(--gold);margin-left:8px}
.cast-section{background:var(--bg)}
.cast-court{background:#101518}
.cast-heading{display:grid;grid-template-columns:1.1fr .85fr;align-items:end;gap:45px;margin-bottom:45px}
.cast-heading .eyebrow{margin-bottom:20px}
.cast-heading h2{margin:0}
.cast-heading .intro-copy{font-size:.96rem;line-height:1.85;color:#c6c1b7;margin:0 0 6px}
.cast-gallery{display:grid;gap:20px}
.cast-gallery-three{grid-template-columns:repeat(3,minmax(0,1fr))}
.cast-gallery-four{grid-template-columns:repeat(4,minmax(0,1fr))}
.cast-profile{display:flex;flex-direction:column;background:#171c1e;border:1px solid var(--line);transition:transform .25s,border-color .25s,box-shadow .25s;overflow:hidden}
.cast-profile:hover{transform:translateY(-6px);border-color:#c9a76b88;box-shadow:0 15px 40px #0008}
.cast-portrait{position:relative;aspect-ratio:4 / 5;overflow:hidden;background:#202322}
.cast-portrait:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(to bottom,transparent 62%,rgba(12,16,17,.3));border-bottom:1px solid #d5bd8b40}
.cast-portrait img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 23%;transition:transform .6s}
.cast-profile:hover .cast-portrait img{transform:scale(1.045)}
.cast-index{position:absolute;bottom:15px;left:18px;z-index:1;font:400 2.25rem/1 var(--serif);color:#f2ddb9;text-shadow:0 2px 8px #000}
.cast-copy{padding:27px 27px 30px;display:flex;flex:1;flex-direction:column}
.cast-rank{font:700 .65rem/1.4 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--gold-light)}
.cast-copy h3{font-size:clamp(2.15rem,3vw,3.15rem);letter-spacing:-.018em;margin:10px 0 5px}
.cast-gallery-four .cast-copy h3{font-size:clamp(1.95rem,2.55vw,2.75rem)}
.cast-epithet{font:italic 1.35rem/1.1 var(--serif);color:#e7c99b}
.cast-copy p{font-size:.865rem;line-height:1.76;color:#cbc6bc;margin:21px 0 0}
.cast-meta{font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;color:#a9a093;margin-top:auto;padding-top:22px}
.cast-interlude{padding:82px 0;text-align:center;background:linear-gradient(90deg,#101617,#202a26,#101617);border-block:1px solid var(--line)}
.cast-interlude p{max-width:900px;margin:18px auto;font:italic clamp(2.3rem,4vw,4rem)/1.1 var(--serif);color:var(--cream)}
.cast-interlude .quiet{font-size:.65rem;letter-spacing:.1em;text-transform:uppercase}
.cast-disclaimer{max-width:930px;margin:28px 0 0;font-size:.75rem;color:#a8a398;line-height:1.7}
.connection-list{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.connection-list>div{border-top:1px solid var(--gold);padding:25px 12px 20px 0;display:grid;grid-template-columns:52px 1fr;gap:10px}
.connection-number{font:2.6rem/1 var(--serif);color:var(--gold)}
.connection-list h3{font-size:2rem;margin:0 0 10px}
.connection-list p{font-size:.86rem;margin:0}
#brothers,#court,#connections{scroll-margin-top:95px}
@media(max-width:1050px){.cast-gallery-four{grid-template-columns:repeat(2,minmax(0,1fr))}.cast-gallery-three{grid-template-columns:repeat(3,minmax(0,1fr))}.cast-copy{padding:22px 21px 26px}}
@media(max-width:800px){.cast-heading{grid-template-columns:1fr;gap:20px}.cast-gallery-three{grid-template-columns:repeat(2,minmax(0,1fr))}.connection-list{grid-template-columns:1fr}.cast-profile:hover{transform:none}}
@media(max-width:600px){.characters-jump-inner{gap:15px;justify-content:space-between}.characters-jump-inner .ornate{display:none}.characters-jump-inner a{font-size:.58rem;letter-spacing:.07em}.characters-jump-inner a span{display:none}.cast-gallery-three,.cast-gallery-four{grid-template-columns:1fr}.cast-gallery{gap:24px}.cast-portrait{aspect-ratio:4 / 4.2}.cast-copy h3,.cast-gallery-four .cast-copy h3{font-size:3.1rem}.cast-interlude{padding:60px 0}.cast-copy{padding:25px 25px 29px}.cast-heading{margin-bottom:30px}}
