/* Ana's bounded review pass, October 30, 2026. Exact premise copy is in index.html. */
.return-top{position:fixed;right:max(22px,env(safe-area-inset-right,0px));bottom:max(22px,env(safe-area-inset-bottom,0px));z-index:20;display:grid;place-items:center;width:48px;height:48px;border:1px solid var(--gold);border-radius:50%;background:var(--gold);color:#15110d;box-shadow:0 4px 18px #0007}
.return-top:focus-visible{outline:3px solid #fff;outline-offset:4px}
.return-top[hidden],.modal-open .return-top{display:none!important}
@media(max-width:800px){.return-top{right:calc(17px + env(safe-area-inset-right,0px));bottom:calc(76px + env(safe-area-inset-bottom,0px))}}
/* Round 3: manual source-mapped cast rails; no people auto-advance. */
.partner-grid>.app-option{grid-column:1/-1}
/* Round 4: exact selected photos and text-relative hero mark alignment. */
#franchise .show-card{padding:0;min-height:0;background:#111412;justify-content:flex-start}
#franchise .show-card::before{display:none}
#franchise .show-card>.franchise-poster{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;object-position:center;flex-shrink:0;background:#111412}
#franchise .show-card>.show-info{padding:26px;display:flex;flex-direction:column;justify-content:flex-start;flex:1}
#franchise .show-info>.btn{margin-top:auto;align-self:flex-start}
.hero-brand-group{display:flex;flex-direction:column;align-items:center;width:max-content;max-width:100%}
.hero .hero-brand-group>.eyebrow{color:var(--gold);margin:0 0 13px;width:max-content;max-width:100%;text-align:center}
#don .portrait{min-height:0;margin:0;background:none;align-self:center}
#don .portrait img{display:block;width:100%;height:auto}
@media(min-width:801px){#don .don-grid{grid-template-columns:1fr 1.08fr;gap:64px}}
#challenges .challenge-story:nth-child(2) .challenge-image{height:auto;aspect-ratio:16/9}
#challenges .challenge-story:nth-child(2) .challenge-image img{width:100%;height:auto;max-width:none;max-height:none;object-fit:contain}
#moments .trailer-poster{background:#111;min-height:0;display:block;align-self:start}
#moments .trailer-poster>img{display:block;width:100%;height:auto}
#moments .trailer-poster .play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);margin:0}
@media(max-width:800px){#don .portrait{width:calc(100% - 16px)}#moments .trailer-poster .play{width:64px;height:64px}}
#franchise .section-head{align-items:center}
#franchise .section-head>p{align-self:center}
#cast .cast-rail-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 18px}
#cast .cast-rail-hint{font-size:.8rem;margin:0;color:#625d54}
#cast .cast-arrows{display:flex;gap:10px;flex-shrink:0}
#cast .cast-arrows button{width:43px;height:43px;border:1px solid #8e7a58;background:#f6f1e7;color:#393023;font-size:1.3rem;cursor:pointer}
#cast .cast-arrows button:disabled{opacity:.35;cursor:default}
#cast [role=tabpanel],#cast .wrap{min-width:0;max-width:100%}
#cast .cast-rail{display:grid;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:clamp(280px,27vw,320px);gap:22px;width:100%;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#9c7b41 #d7cdbd;padding:4px 0 18px}
#cast .cast-rail:focus-visible{outline:3px solid #8d692c;outline-offset:5px}
#cast .cast-card{scroll-snap-align:start;min-width:0}
#cast .cast-card img{width:100%;height:280px;aspect-ratio:auto;object-fit:contain;object-position:center top;background:#ded7cb}
#cast .cast-card>div{display:flex;flex-direction:column;flex:1}
#cast .cast-card button{align-self:flex-start;margin-top:auto}
#cast .cast-rail-status{font-size:.75rem;color:#625d54;margin:5px 0 0;min-height:1.5em}
@media(max-width:800px){#cast .cast-rail{grid-auto-columns:min(84vw,292px);gap:16px}#cast .cast-card img{height:275px}#cast .cast-card>div{padding:20px}#cast .cast-card h3{font-size:1.2rem}#cast .cast-card p{font-size:.88rem}#cast .cast-rail-hint{max-width:22ch}#cast .cast-rail-toolbar{gap:10px}#cast .cast-bottom{line-height:1.7}}
.hero-copy{padding-top:155px!important}
.hero-copy>.eyebrow{color:var(--gold)}
.hero h1{color:var(--gold)}
.hero-brand img{height:auto;max-width:100%;object-fit:contain}
.hero-premise{font-size:17.333px!important}
.hosts{padding-top:25px}
.section-head{display:grid;grid-template-columns:1.1fr 1fr;gap:64px;align-items:end}
.section-head>p{max-width:none;width:auto;padding-right:30px}
.premise-grid{grid-template-columns:1.1fr 1fr;gap:64px}
.challenge-image{height:342px;display:flex;align-items:center;justify-content:center;background:#111514;overflow:hidden;border:1px solid #262c29}
.challenge-image img{display:block;width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;object-position:center}
.challenge-story:first-child .challenge-image img{width:100%;height:auto}
.challenge-story:nth-child(2) .challenge-image img{max-width:303px;max-height:342px}
.show-card.aftermath{padding:0;background:#111412;justify-content:flex-start}
.show-card.aftermath::before{display:none}
.show-card.aftermath>.franchise-poster{display:block;width:100%;height:300px;object-fit:contain;object-position:center;background:#070909}
.show-card.aftermath>.show-info{padding:26px;display:flex;flex-direction:column;justify-content:flex-end;flex:1}
.footer img{display:block;width:180px;max-width:100%;height:auto;aspect-ratio:auto;object-fit:contain}
.logo-card,.logo-card.logo-dark{width:176px;height:64px;padding:12px 16px;background:transparent;border:0;display:flex;justify-content:center;align-items:center;flex:0 0 auto}
.logo-card img{display:block;width:auto;height:auto;max-width:100%;max-height:40px;object-fit:contain;mix-blend-mode:normal;filter:brightness(0) invert(1)}
.logo-card img[data-brand="fubo"]{max-width:125px}
.logo-card img[data-brand="prime"]{max-width:150px}
.logo-card img[data-brand="salem"]{max-height:30px}
.logo-set{gap:28px;padding-right:28px}
.logo-track{animation-duration:44s}
.archive-trailers button{display:inline-block;color:var(--gold);font:inherit;font-size:.85rem;margin:18px 28px 14px 0;background:none;border:0;border-bottom:1px solid #806437;padding:4px 0;cursor:pointer}
.video-status{min-height:260px;display:grid;align-content:center;justify-items:center;text-align:center;padding:35px;background:#111513;color:#d9d2c6;height:100%}
.video-status p{margin:0;max-width:34ch;line-height:1.6;font-size:.92rem}
.video-status strong{font-size:1.05rem;color:#e8d6b6;margin-bottom:12px}
.video-box{aspect-ratio:16/9}
.video-box iframe{display:block}
.video-box [hidden]{display:none!important}
.partner h3.app-title{max-width:none}
@media(min-width:801px){.partner-grid>.partner:nth-child(3) h3,.partner-grid>.partner:nth-child(4) h3{font-size:1.2rem;white-space:nowrap}}
@media(max-height:760px){.hero-copy{padding-top:140px!important}}
@media(min-width:801px){.hero{align-items:start;min-height:750px}.hero-copy{padding:122px 0 120px}.hero-brand{width:290px;margin-bottom:29px}.hero h1{font-size:clamp(3.33rem,calc(6.1vw - 2.667px),5.333rem);margin-bottom:18px}.hero-copy>p.hero-premise{max-width:640px;width:min(640px,61vw);margin-bottom:0;font-size:17.333px;line-height:1.7}.hero .actions,.hero-meta{margin-top:24px}}
@media(min-width:801px) and (max-height:760px){.hero-copy{padding-top:112px}.hero-brand{width:280px;margin-bottom:27px}.hero h1{font-size:70.933px}.hero .actions,.hero-meta{margin-top:21px}}
@media(max-width:1000px) and (min-width:801px){.section-head,.premise-grid{gap:40px}.section-head>p{padding-right:15px}.hero-copy>p.hero-premise{width:65vw}.hero h1{font-size:4rem}}
@media(max-width:800px){.hero-copy{padding-top:105px;padding-bottom:170px}.hero-brand{width:255px;margin-bottom:30px}.hero h1{font-size:clamp(2.9rem,calc(13.1vw - 2.667px),5.13rem)}.hero-copy>p.hero-premise{font-size:17.333px;line-height:1.65;max-width:34ch;width:auto}.section-head{display:block}.section-head>p{padding-right:0;margin-top:22px}.premise-grid{grid-template-columns:1fr;gap:12px}.hosts{padding-top:25px}.challenge-image{height:300px}.challenge-story:nth-child(2) .challenge-image img{max-height:300px}.logo-card,.logo-card.logo-dark{width:145px;height:58px;padding:10px 12px}.logo-card img{max-height:36px}.logo-set{gap:18px;padding-right:18px}.history p{font-size:1rem}.show-card.aftermath>.show-info{padding:28px}.footer img{width:180px;height:auto}.video-status{min-height:220px;padding:24px}.hero{min-height:875px}}
@media(prefers-reduced-motion:reduce){.hero{height:auto;min-height:0;max-height:none}.hero-copy{padding-bottom:45px}.logo-track{animation:none;display:block;width:100%}.logo-set{flex-wrap:wrap;justify-content:center;padding:0;gap:14px}.logo-set+.logo-set{display:none}.hero-platforms{position:relative}}
/* Round 5: exact computed-size deltas; retain prior absolute letter spacing. */
body .eyebrow{font-size:calc(.73rem + 3px)!important;letter-spacing:2.2192px}
.hero .hero-brand-group>.eyebrow{max-width:100%!important;min-width:0;white-space:normal}
#hosts .host-info .eyebrow{font-size:calc(.62rem + 3px)!important;letter-spacing:1.8848px}
#franchise .show-card .eyebrow{font-size:calc(.63rem + 3px)!important;letter-spacing:1.9152px}
#watch .partner .tag{font-size:calc(.68rem + 3px);letter-spacing:1.632px}
#premise .mission-steps b{font-size:calc(.7rem + 3px);letter-spacing:1.456px}
#cast .cast-note{font-size:calc(.78rem + 3px)}
#cast .cast-bottom,#cast .cast-bottom a{font-size:calc(.8rem + 2px)}
#challenges .challenge-image{height:auto;aspect-ratio:16/9}
#challenges .challenge-story .challenge-image img{width:100%;height:100%;max-width:none;max-height:none;object-fit:cover}
#challenges .challenge-story:first-child .challenge-image img{object-position:center top}
#challenges .challenge-story:nth-child(2) .challenge-image img{object-position:center}
.premise-gallery{margin-top:36px;max-width:100%;min-width:0}
.gallery-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}
.gallery-note{font-size:.8rem;color:#625d54;margin:0}
.gallery-arrows{display:flex;gap:10px;flex-shrink:0}
.gallery-arrows button{width:44px;height:44px;font-size:1.3rem;color:#5a451d;background:transparent;border:1px solid #8e7a58;cursor:pointer}
.gallery-arrows button:disabled{opacity:.35;cursor:default}
.gallery-track{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 48px)/3.85);gap:16px;width:100%;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#9c7b41 #d7cdbd;padding:3px 0 14px}
.gallery-track:focus-visible{outline:3px solid #8d692c;outline-offset:5px}
.gallery-frame{aspect-ratio:16/9;margin:0;min-width:0;background:#202420;border:1px solid #68614f;display:grid;align-content:center;justify-items:center;gap:12px;color:#c39a53;font-size:.8rem;scroll-snap-align:start}
.gallery-status{font-size:.72rem;color:#625d54;margin:6px 0 0;min-height:1.5em}
@media(max-width:800px){.gallery-track{grid-auto-columns:calc((100% - 16px)/1.85);gap:12px}.gallery-note{max-width:22ch}}
/* Round 6: centered rail, unboxed edge-to-edge gallery and associated photo caption. */
.hero-platform-label{justify-content:center;text-align:center}
.premise-gallery{width:100%;border:0;box-shadow:none;background:transparent}
.gallery-toolbar,.gallery-status{width:var(--wrap);margin-left:auto;margin-right:auto}
.gallery-toolbar{gap:12px;margin-bottom:10px}
.gallery-arrows button{width:36px;height:36px;font-size:1.15rem}
.gallery-frame{overflow:hidden}
#don .portrait{border:0}
#don .portrait::after{display:none}
#don .portrait img{border:1px solid var(--line)}
#don .portrait figcaption{margin-top:12px;color:var(--muted);font-size:.85rem;line-height:1.5;text-align:center}

/* Webb V2 supplied copy: bounded responsive reflow, no editorial substitutions. */
.webb-body{min-width:0;max-width:100%}
.webb-body>p{margin:0 0 1em;max-width:none}
.webb-body>p:last-child{margin-bottom:0}
.webb-head{align-items:start}
.webb-head>div{min-width:0}
.webb-head>.webb-body{padding-right:0}
.webb-head h2{max-width:18ch}
.hero h1{max-width:12ch}
.hero .hero-brand-group>.eyebrow{max-width:100%!important}
.hero-copy{padding-bottom:175px!important}
.hero-copy>.hero-premise{max-width:640px!important}
.hero .actions{gap:12px}
.hero .actions .btn{white-space:normal}
#premise .premise-grid{align-items:start}
#premise .webb-body>.btn{color:#725423;padding-left:0;margin-top:20px}
#experience{padding-top:30px}
#experience .section-head{margin-bottom:0}
#experience .premise-gallery{margin-top:36px}
#don .portrait{align-self:start}
#don .don-copy h2{max-width:none}
#don .don-copy{min-width:0}
#hosts .host-label{font-size:1.2rem;line-height:1.3;overflow-wrap:break-word}
#hosts .host-info>p{margin-top:14px}
#challenges .challenge-info p{margin-bottom:1em}
#challenges .mission-story{border-top:1px solid var(--line);margin-top:32px;padding:28px 0 0}
#challenges .mission-story h3{font-size:1.7rem}
#challenges .webb-mission{max-width:76ch}
#cast .webb-body .btn{color:#725423;padding-left:0;margin-top:12px}
#cast .webb-head{margin-bottom:40px}
#franchise .section-head{align-items:start}
#franchise .show-info h3{font-size:1.45rem;line-height:1.2;overflow-wrap:break-word}
#franchise .franchise-subtitle{color:var(--gold);font-size:1.05rem;font-weight:bold;line-height:1.45;margin:0 0 18px}
#franchise .show-info>.btn{white-space:normal}
#moments .webb-trailer-head{margin-bottom:32px}
#moments .trailer-copy{align-content:center}
#moments .trailer-copy .btn{white-space:normal}
#watch .watch-intro{position:static;min-width:0}
#watch .watch-intro h2{max-width:15ch}
#watch .watch-intro .availability{margin-top:24px}
#fans h2{max-width:19ch}
#fans .stay-actions{min-width:0}
#fans .stay-actions .btn{white-space:normal;text-align:center}
@media(min-width:801px){.hero{height:auto;min-height:892px;max-height:none}.hero-copy{padding-top:155px!important}.hero h1{font-size:clamp(3.2rem,5.5vw,5rem)}}
@media(max-width:800px){.hero{height:auto;min-height:875px;max-height:none}.hero-copy{padding-top:130px!important;padding-bottom:180px!important}.hero h1{font-size:clamp(2.8rem,12.2vw,4rem);max-width:12ch}.hero-brand{width:255px}.hero .hero-brand-group{width:100%;max-width:310px}.hero .hero-brand-group>.eyebrow{width:100%;line-height:1.5}.hero .actions{display:flex;flex-wrap:wrap}.hero .actions .btn{font-size:.75rem;padding:15px 16px}.hero-meta{margin-top:22px}.webb-head{display:block}.webb-head>.webb-body{margin-top:24px}#experience{padding-top:15px}#don .portrait{width:calc(100% - 16px)}#hosts .host-label{font-size:1.12rem}#franchise .show-info h3{font-size:1.55rem}#challenges .mission-story h3{font-size:1.4rem}#fans .stay-inner{gap:26px}}
@media(prefers-reduced-motion:reduce){.hero{height:auto;min-height:0;max-height:none}.hero-copy{padding-bottom:45px!important}.hero-platforms{position:relative}}

/* Ana's five post-Webb corrections. New images are original source bytes. */
.hero-featured-platforms{display:flex;align-items:center;gap:32px;margin-top:30px;max-width:440px}
.hero-featured-platforms img{display:block;width:auto;height:auto;max-width:175px;max-height:38px;object-fit:contain}
.hero-featured-platforms img:first-child{max-width:155px;max-height:46px}
#premise .webb-body>.btn{color:#725423}
#hosts .host-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:24px}
#hosts .host-card{flex:0 1 calc((100% - 48px)/3);min-width:0;display:flex;flex-direction:column}
#hosts .host-card>img,#hosts .jeff-art{aspect-ratio:1.3;width:100%;height:auto}
#hosts .host-info{flex:1}
#hosts .jeff-art{position:relative;background:#1c1d1b;overflow:hidden}
#hosts .jeff-art>.jeff-photo{position:absolute;left:32%;top:0;width:68%;height:100%;aspect-ratio:auto;object-fit:cover;object-position:40% 25%;mask-image:linear-gradient(90deg,transparent,black 18%,black)}
#hosts .jeff-don{position:absolute;left:0;top:0;width:54%;height:100%;overflow:hidden;mask-image:linear-gradient(90deg,black 78%,transparent)}
#hosts .jeff-don>img{display:block;width:auto;height:100%;max-width:none;aspect-ratio:auto;object-fit:initial;object-position:initial;background:none}
#challenges .mission-story{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:start}
#challenges .mission-copy{min-width:0}
#challenges .mission-image{margin:0;min-width:0}
#challenges .mission-image img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;border:1px solid var(--line)}
@media(min-width:801px){.hero-copy{padding-bottom:185px!important}}
@media(min-width:801px) and (max-width:1100px){#hosts .host-card{flex-basis:calc((100% - 24px)/2)}}
@media(max-width:800px){.hero-copy{padding-bottom:185px!important}.hero-featured-platforms{gap:26px;margin-top:26px;max-width:100%}.hero-featured-platforms img{max-width:135px;max-height:30px}.hero-featured-platforms img:first-child{max-width:125px;max-height:38px}#hosts .host-grid{gap:22px}#hosts .host-card{flex-basis:100%;max-width:480px}#hosts .host-card>img,#hosts .jeff-art{aspect-ratio:1.3}#hosts .host-label{font-size:1.2rem}#challenges .mission-story{grid-template-columns:1fr;gap:24px}}
@media(prefers-reduced-motion:reduce){.hero-copy{padding-bottom:45px!important}}

/* Post-Webb 2: reviewed Krea alpha cutout, original bytes, inward bust composition. */
#hosts .jeff-art>.jeff-photo{left:-10%;top:-33%;width:auto;height:190%;max-width:none;aspect-ratio:auto;object-fit:contain;object-position:center;mask-image:none;transform:scaleX(-1);z-index:1;background:none}
#hosts .jeff-don{z-index:2;width:48%;mask-image:linear-gradient(90deg,black 72%,transparent 94%)}
#hosts .jeff-mountains{position:absolute;left:32%;top:40%;width:30%;height:18%;overflow:hidden}
#hosts .jeff-mountains>img{position:absolute;left:-273%;top:-453%;width:756%;height:auto;max-width:none;aspect-ratio:auto;object-fit:initial;background:none}
#hosts .jeff-art::after{content:"";position:absolute;inset:0;z-index:3;pointer-events:none;background:linear-gradient(0deg,#1c1d1b,transparent 19%)}
#hosts .jeff-art.jeff-unflipped>.jeff-photo{left:22%;transform:none}

/* Post-Webb 3: compact five-across hosts, readable narrow rail and modest Jeff correction. */
#hosts .host-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;flex-wrap:nowrap;justify-content:initial;align-items:stretch}
#hosts .host-card{min-width:0;max-width:none}
#hosts .host-info{padding:16px 13px}
#hosts .host-label{font-size:1rem;line-height:1.35}
#hosts .host-info>p{font-size:.875rem;line-height:1.65;margin-top:12px}
#hosts .jeff-art>.jeff-photo{height:178%;top:-29%;left:-7%;filter:sepia(.05) saturate(1.14) contrast(1.025) brightness(1.025)}
#hosts .host-grid:focus-visible{outline:2px solid var(--gold);outline-offset:5px}
@media(max-width:800px){#hosts .host-grid{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:min(76vw,300px);gap:16px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:#a98a54 #30332d;padding-bottom:16px}#hosts .host-card{scroll-snap-align:start}#hosts .host-label{font-size:1.05rem}#hosts .host-info{padding:18px 16px}#hosts .host-info>p{font-size:.88rem}#hosts .host-grid:focus-visible{outline-offset:2px}}

/* Post-Webb3 completion: existing official ASN circular mark, unlinked and unaltered. */
.hero-featured-platforms{max-width:530px;flex-wrap:wrap;column-gap:32px;row-gap:18px}
.hero-featured-platforms img{flex:0 0 auto}
.hero-featured-platforms img.asn-mark{width:68px;height:68px;max-width:68px;max-height:68px;object-fit:contain}
@media(max-width:800px){.hero-featured-platforms{max-width:100%;column-gap:16px;row-gap:16px}.hero-featured-platforms img{max-width:125px}.hero-featured-platforms img:first-child{max-width:120px}.hero-featured-platforms img.asn-mark{width:64px;height:64px;max-width:64px;max-height:64px}}

/* Ana's explicitly selected horizontal ASN mark supersedes the assumed circle. */
.hero-featured-platforms{max-width:620px}
.hero-featured-platforms img.asn-mark{width:165px;height:auto;max-width:165px;max-height:none;object-fit:contain;filter:none}
@media(max-width:800px){.hero-featured-platforms{max-width:100%}.hero-featured-platforms img.asn-mark{width:125px;height:auto;max-width:125px;max-height:none}}

/* October31: fluid wide-desktop co-host wrapper only; narrower layouts unchanged. */
@media(min-width:1200px){#hosts>.wrap{width:90%;max-width:none}#hosts .host-grid{width:100%;max-width:none}}

/* Ana's selected images: original bytes, display-only sizing; continuous photo rail. */
#premise .premise-selected-image{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;margin-top:28px}
.gallery-track{scroll-snap-type:none;scroll-behavior:auto}
#watch .watch-selected-image{display:block;width:100%;height:auto;object-fit:contain;margin-top:28px}
.gallery-frame{display:block;position:relative}
.gallery-frame>img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.gallery-frame>img.gallery-log-carry{object-position:center 55%}
.gallery-arrows button.gallery-motion{width:auto;font:inherit;font-size:.75rem;padding:0 10px;white-space:nowrap}
.gallery-motion[hidden]{display:none!important}
#cast .season-tabs{flex-wrap:wrap}
#cast .cast-coming-soon{padding:36px 0;font-size:1.3rem}
@media(max-width:800px){.gallery-note{font-size:.72rem;max-width:10ch}.gallery-arrows{gap:6px}#premise .premise-selected-image{margin-top:24px}}

/* Ana-selected cast-headline photo: natural full composition, no raster changes. */
#cast .cast-headline-image{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;margin-top:28px}
@media(max-width:800px){#cast .cast-headline-image{margin-top:24px}}

/* Ana's three named photo frames: exact existing Don/Mission gold line. */
#challenges .challenge-story:first-child .challenge-image,
#challenges .challenge-story:nth-child(2) .challenge-image,
#cast .cast-headline-image,
#premise .premise-selected-image{border:1px solid var(--line);box-sizing:border-box}

/* Watch crop: actual source top band ends at row89; retain source rows90..767. */
#watch .watch-image-frame{position:relative;aspect-ratio:16/9;width:calc(100% - 2px);margin:28px 0 0;padding:0;overflow:hidden;border:1px solid var(--line);box-sizing:content-box}
#watch .watch-image-frame>.watch-selected-image{position:absolute;width:114.1592920354%;max-width:none;height:auto;left:-7.0796460177%;top:-13.2743362832%;margin:0;border:0;object-fit:contain}
#fans .stay-inner{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:48px}
#fans .stay-inner>div{min-width:0}
#fans .stay-actions{margin-top:24px}
#fans .fans-image{margin:0;min-width:0}
#fans .fans-image>img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain}
@media(max-width:800px){#fans .stay-inner{grid-template-columns:1fr;gap:28px}}

/* Regular-text audit: +2px from current rules, never a root-font/heading scale. */
body{font-size:18px}
.hero-copy>p.hero-premise{font-size:19.333px!important}
.don-copy p:not(.eyebrow){font-size:calc(1.02rem + 2px)}
#hosts .host-info>p:not(.eyebrow){font-size:calc(.875rem + 2px)}
.mission-steps p{font-size:calc(.92rem + 2px)}
#cast .cast-card p:not(.eyebrow){font-size:calc(.82rem + 2px)}
#franchise .show-card p:not(.eyebrow):not(.franchise-subtitle){font-size:calc(.91rem + 2px)}
#franchise .franchise-subtitle{font-size:calc(1.05rem + 2px)}
#cast .cast-coming-soon{font-size:calc(1.3rem + 2px)}
#moments .trailer-copy p:not(.eyebrow){font-size:calc(.94rem + 2px)}
.profile-copy p:not(.eyebrow){font-size:calc(.94rem + 2px)}
#watch .partner p:not(.tag):not(.eyebrow){font-size:calc(.9rem + 2px)}
#watch .schedule-card p:not(.eyebrow){font-size:calc(.88rem + 2px)}
#watch .watch-intro .availability{font-size:calc(.75rem + 2px)!important}
.video-status p{font-size:calc(.92rem + 2px)}
body .btn,#moments .trailer-copy .btn{font-size:calc(.82rem + 2px)}
#watch .partner .btn{font-size:calc(.7rem + 2px)}
#watch .schedule-card .btn{font-size:calc(.68rem + 2px)}
#cast .cast-card button,.stay-links a{font-size:calc(.8rem + 2px)}
.season-tabs button{font-size:18px}
.head-inner nav{font-size:calc(.78rem + 2px)}
.hero-platform-label{font-size:calc(.74rem + 2px)}
.hero-platform-label small{font-size:calc(.64rem + 2px)}
.credentials span{font-size:calc(.64rem + 2px)}
.challenge-tags span{font-size:calc(.63rem + 2px)}
#don .portrait figcaption{font-size:calc(.85rem + 2px)}
#cast .cast-note{font-size:calc(.78rem + 5px)}
#cast .cast-bottom,#cast .cast-bottom a{font-size:calc(.8rem + 4px)}
#cast .cast-rail-hint{font-size:calc(.8rem + 2px)}
#cast .cast-rail-status{font-size:calc(.75rem + 2px)}
.gallery-note{font-size:calc(.8rem + 2px)}
.gallery-arrows button.gallery-motion{font-size:calc(.75rem + 2px)}
.archive-trailers summary{font-size:calc(.92rem + 2px)}
.archive-trailers p{font-size:calc(.8rem + 2px)}
.archive-trailers a,.archive-trailers button,.other-watch a{font-size:calc(.85rem + 2px)}
.schedule-card strong{font-size:calc(.95rem + 2px)}
.footer{font-size:calc(.78rem + 2px)}
.footer small{font-size:calc(.65rem + 2px)}
.footer-links{font-size:calc(.74rem + 2px)}
.mobile-menu{font-size:calc(.8rem + 2px)}
/* The inherited 16px franchise introduction receives only the body +2px. */
@media(min-width:801px){#franchise .section-head>.webb-body{align-self:center}}
@media(max-width:1000px){.head-inner nav{font-size:calc(.66rem + 2px)}}
@media(max-width:800px){
  #hosts .host-info>p:not(.eyebrow){font-size:max(16px,calc(.88rem + 2px))}
  #cast .cast-card p:not(.eyebrow){font-size:max(16px,calc(.88rem + 2px))}
  .hero .actions .btn{font-size:calc(.75rem + 2px)}
  .mobile-watch .btn{font-size:calc(.8rem + 2px)}
  .head-inner nav.mobile-open{font-size:calc(.9rem + 2px)}
  .hero-platform-label{font-size:calc(.6rem + 2px)}
  .gallery-note{font-size:calc(.72rem + 2px)}
  #franchise .section-head>.webb-body{align-self:auto}
}
/* Original low-resolution portraits stay complete and at/below native width. */
#don .don-visuals{min-width:0;align-self:start}
#don .don-snapshots{display:grid;grid-template-columns:minmax(0,200fr) minmax(0,167fr);gap:16px;width:100%;max-width:383px;margin:24px auto 0;align-items:start}
#don .don-snapshots>img{display:block;width:100%;height:auto;aspect-ratio:auto;object-fit:contain;border:1px solid var(--line)}
@media(max-width:800px){#don .don-visuals>.portrait{margin-inline:auto}}

/* Shortened cast heading may use its full column; retain normal H2 sizing/wrap. */
#cast .webb-head h2{max-width:none}

/* Hosts introduction aligns to Don; the separate wide card rail stays 90%. */
@media(min-width:801px){#hosts>.wrap>.section-head.webb-head{grid-template-columns:1fr 1.08fr;gap:64px}}
@media(min-width:1200px){#hosts>.wrap>.section-head.webb-head{width:min(1180px,calc(100% / .9 - 48px));max-width:none;position:relative;left:50%;transform:translateX(-50%)}}

/* Selected second watch photo: full natural frame, same outer width as flame. */
#watch .watch-second-image{width:calc(100% - 2px);aspect-ratio:16/9;margin:24px 0 0;padding:0;border:1px solid var(--line);box-sizing:content-box}
#watch .watch-second-image>img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain}

/* Featured watch labels and arrows stay together, without smaller type. */
#watch .partner.featured .btn{padding-inline:6px;white-space:nowrap}
@media(min-width:801px) and (max-width:1000px){#watch .partner.featured{grid-column:1/-1}}
