/*
Theme Name: WFR Racing
Description: Custom Will Franklin Racing design with original brand assets and editable WordPress page blocks.
Version: 0.2.0
Requires at least: 6.6
Requires PHP: 8.0
Text Domain: wfr-racing
*/
@font-face{font-family:'WFR Gotham';src:url('assets/fonts/Gotham-Light.otf') format('opentype');font-weight:300;font-style:normal;font-display:swap}
@font-face{font-family:'WFR Gotham';src:url('assets/fonts/Gotham-Book.otf') format('opentype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'WFR Gotham';src:url('assets/fonts/Gotham-Medium.otf') format('opentype');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:'WFR Microgramma';src:url('assets/fonts/Microgramma%20D%20Extended%20Medium.otf') format('opentype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'WFR Logotype';src:url('assets/fonts/LOGOTYPE-Medium.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}

:root{--ink:#262626;--navy:#011047;--accent:#4c94df;--paper:#ffffff;--silver:#aaaaaa;--muted:#c9c9c9;--line:#526083;--light-line:#d4d4d4;--graphite:#262626;--display:'WFR Microgramma','Helvetica Neue',Arial,sans-serif;--body:'WFR Gotham','Helvetica Neue',Arial,sans-serif;--wordmark:'WFR Logotype','WFR Microgramma',sans-serif;--mono:var(--body);--gutter:clamp(24px,4vw,76px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:20px}body{margin:0;background:var(--ink);color:var(--paper);}a{color:inherit;text-decoration:none}button{}img{display:block;width:100%;height:auto}figure,p,h1,h2,h3{margin:0}h1,h2,h3{}a:focus-visible,summary:focus-visible{outline:3px solid var(--silver);outline-offset:6px}.light a:focus-visible{outline-color:var(--ink)}::selection{color:var(--ink);background:var(--silver)}.skip{position:absolute;left:16px;top:-100px;z-index:20;background:var(--silver);color:var(--ink);padding:12px 20px}.skip:focus{top:12px}.preview{background:#000000;color:#aaaaaa;padding:7px var(--gutter);display:flex;justify-content:space-between;gap:16px}.masthead{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:24px var(--gutter);border-bottom:1px solid var(--line)}.logo{background:var(--paper);display:block;width:198px;padding:12px 14px;flex:none}.logo img{aspect-ratio:793/208;object-fit:contain}.nav{display:flex;gap:32px;align-items:center;}.nav a{padding:12px 0;border-bottom:1px solid transparent}.nav a:hover{border-color:var(--silver)}.nav .contact-nav{color:var(--silver)}.mobile-nav{display:none}.tag{display:flex;align-items:center;gap:12px}.tag::before{content:'';width:18px;height:3px;background:var(--silver);display:block;flex:none}.light .tag::before{background:var(--ink)}
.hero{position:relative;isolation:isolate;overflow:hidden;min-height:740px;display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--line)}.hero-photo{grid-column:2;grid-row:1;align-self:stretch;position:relative;margin-left:-3vw}.hero-photo img{height:100%;max-height:820px;min-height:740px;object-fit:cover;object-position:52% center}.hero-photo::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(38,38,38,.7),transparent 27%);pointer-events:none}.hero-copy{position:relative;z-index:1;padding:50px 0 46px var(--gutter);grid-column:1;grid-row:1;align-self:stretch;display:flex;flex-direction:column;align-items:flex-start}.hero-copy .tag{color:var(--muted)}.hero h1{margin:45px -120px 32px 0;position:relative;z-index:2}.hero h1 span{display:block}.hero h1 .surname{color:var(--silver)}.hero-intro{max-width:270px;margin-bottom:26px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:42px;background:var(--silver);color:var(--ink);min-height:52px;padding:15px 20px;border:1px solid var(--silver);transition:background .15s}.button:hover{background:var(--paper);border-color:var(--paper)}.button .arrow{}.hero-credit{color:var(--muted);margin-top:auto;padding-top:40px;display:flex;gap:13px}.hero-credit span{color:var(--silver)}.hero-photo figcaption{position:absolute;z-index:1;bottom:26px;right:var(--gutter);background:var(--ink);color:var(--paper);padding:10px 13px;}.hero-edge{height:13px;background:repeating-linear-gradient(120deg,var(--silver) 0 18px,var(--ink) 18px 27px);width:190px;position:absolute;bottom:0;left:var(--gutter);z-index:2}
.section{padding:76px var(--gutter)}.light{color:var(--graphite);background:var(--paper)}.section-bar{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--light-line);padding-bottom:18px;margin-bottom:40px;gap:20px}.section-index{}.lead-grid{display:grid;grid-template-columns:.85fr 1.3fr;gap:6vw;align-items:start}.lead-copy{padding-top:5px}.meta{}.lead-copy h2{margin:20px 0 25px;max-width:500px}.lead-copy p:not(.meta){max-width:390px;}.text-link{display:inline-flex;gap:20px;justify-content:space-between;border-bottom:1px solid currentColor;padding:14px 0 8px;margin-top:14px}.text-link:hover{color:#011047}.dark .text-link:hover{color:var(--silver)}.lead-photo{position:relative}.lead-photo img{aspect-ratio:4/3;object-fit:contain}.lead-photo figcaption{border-bottom:1px solid var(--light-line);padding:12px 0;display:flex;justify-content:space-between;gap:16px}.photo-corner{position:absolute;left:-12px;top:-12px;width:40px;height:40px;border-left:4px solid var(--ink);border-top:4px solid var(--ink)}
.films{padding-top:72px;padding-bottom:72px}.dark .section-bar{border-color:var(--line)}.films-heading{display:grid;grid-template-columns:1fr 290px;align-items:end;gap:30px;margin-bottom:38px}.films-heading h2{max-width:850px}.films-heading p{color:var(--muted);padding-bottom:4px}.film-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:36px}.film:nth-child(2){padding-top:70px}.film-image{position:relative;overflow:hidden;background:#25272a}.film-image img{aspect-ratio:16/9;object-fit:cover;transition:transform .25s}.film:hover .film-image img{transform:scale(1.025)}.play{position:absolute;left:20px;bottom:20px;width:56px;height:56px;display:grid;place-items:center;background:var(--silver);color:var(--ink);clip-path:polygon(0 0,100% 0,100% 78%,78% 100%,0 100%)}.play svg{width:22px;height:22px;fill:currentColor}.film-info{border-bottom:1px solid var(--line);padding:20px 0 16px;display:flex;justify-content:space-between;gap:20px}.film-info .meta{color:var(--muted);margin-bottom:9px}.film h3{}.film-arrow{color:var(--silver);}.watch-on{display:block;margin-top:11px;color:var(--muted)}
.personal-head{display:grid;grid-template-columns:1.4fr 1fr;gap:7vw;align-items:end;margin-bottom:42px}.personal-head h2{}.personal-head p{max-width:400px;padding-bottom:3px}.stories-grid{display:grid;grid-template-columns:.9fr 1fr 1fr;gap:35px}.helmet{border-top:5px solid var(--ink);padding-top:25px;padding-right:22px}.helmet h3{margin:20px 0}.helmet p:not(.meta){max-width:280px}.helmet .helmet-mark{margin-top:48px;color:transparent;-webkit-text-stroke:1px #aaaaaa;user-select:none}.story-photo{background:#eeeeee}.story-photo img{width:100%;height:auto;object-fit:contain}.story .meta{margin:18px 0 13px}.story h3{margin-bottom:14px}.story p:not(.meta){}.story .text-link{margin-top:10px}.story:nth-child(3){padding-top:60px}.season{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:32px;padding:30px var(--gutter);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.season-year{color:var(--silver)}.season h2{margin-bottom:4px}.season p{color:var(--muted)}
.partner{padding-top:66px;padding-bottom:70px;display:grid;grid-template-columns:1.35fr 1fr;gap:7vw;align-items:end}.partner h2{margin-top:25px}.partner-copy p{max-width:450px;margin-bottom:25px;color:var(--muted)}.partner-copy .email-label{color:var(--muted);margin-top:12px;display:block}.footer{padding:28px var(--gutter) 30px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:30px;align-items:start}.footer-brand{max-width:230px}.footer-links{display:flex;gap:25px;flex-wrap:wrap;align-items:center;}.footer-links a{padding:8px 0;border-bottom:1px solid var(--line)}.footer-links a:hover{border-color:var(--silver);color:var(--silver)}.preview-foot{padding:0 var(--gutter) 23px;color:var(--muted)}
@media(min-width:1700px){.hero{min-height:830px}.hero-photo img{min-height:830px}.hero h1{}.hero-copy{padding-top:64px}.hero-intro{}}
@media(max-width:1100px){.nav{gap:22px}.hero{min-height:650px}.hero-photo img{min-height:650px}.hero-copy{padding-top:35px}.hero h1{margin-top:40px;}.hero-intro{max-width:230px}.hero-credit{}.lead-grid{gap:4vw;grid-template-columns:1fr 1.1fr}.stories-grid{gap:24px}.helmet{padding-right:0}.helmet h3{}.story h3{}.films-heading{grid-template-columns:1fr 230px}.film h3{}}
@media(max-width:760px){.preview{}.preview span:last-child{display:none}.masthead{padding-top:18px;padding-bottom:18px}.logo{width:170px;padding:9px 11px}.nav{display:none}.mobile-nav{display:block;position:relative}.mobile-nav summary{cursor:pointer;list-style:none;padding:10px 0 10px 16px;}.mobile-nav summary::-webkit-details-marker{display:none}.mobile-nav summary span{color:var(--silver);padding-left:10px}.mobile-links{position:absolute;z-index:10;right:0;top:50px;background:var(--ink);border:1px solid var(--line);width:220px;padding:12px 20px;box-shadow:0 15px 24px #0004}.mobile-links a{display:block;padding:12px 0;border-bottom:1px solid var(--line);}.mobile-links a:last-child{border:0;color:var(--silver)}.hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding:30px var(--gutter) 35px;grid-column:1;grid-row:1}.hero-copy .tag{}.hero h1{margin:30px 0 24px;}.hero-intro{max-width:310px}.hero-credit{display:none}.hero-photo{grid-column:1;grid-row:2;margin:0}.hero-photo img{min-height:0;max-height:none;height:auto;aspect-ratio:5/4;object-position:50% 35%}.hero-photo::after{display:none}.hero-photo figcaption{bottom:20px;right:20px;}.hero-edge{left:var(--gutter);width:130px;height:10px}.section{padding:48px var(--gutter)}.section-bar{margin-bottom:28px;padding-bottom:16px}.tag{}.section-index{}.lead-grid{grid-template-columns:1fr;gap:34px}.lead-copy h2{margin:17px 0 21px;max-width:530px}.lead-copy p:not(.meta){max-width:470px}.lead-photo figcaption{display:block}.lead-photo figcaption span{display:block}.photo-corner{width:30px;height:30px;left:-8px;top:-8px;border-width:3px}.films-heading{grid-template-columns:1fr;gap:20px;margin-bottom:30px}.films-heading h2{}.films-heading p{max-width:350px}.film-grid{grid-template-columns:1fr;gap:34px}.film:nth-child(2){padding:0}.film-info{padding-top:16px}.film h3{}.play{width:50px;height:50px;left:16px;bottom:16px}.personal-head{grid-template-columns:1fr;gap:24px;margin-bottom:34px}.personal-head h2{}.personal-head p{max-width:470px}.stories-grid{grid-template-columns:1fr;gap:38px}.helmet{padding:22px 0 29px;border-bottom:1px solid var(--light-line)}.helmet h3{max-width:450px;}.helmet h3 br{display:none}.helmet h3 br::after{content:' '}.helmet p:not(.meta){max-width:470px}.helmet .helmet-mark{display:none}.story-photo img{max-height:580px;object-position:left}.story .meta{}.story h3{max-width:470px}.story p:not(.meta){max-width:470px}.story:nth-child(3){padding:0}.season{gap:24px;padding-top:28px;padding-bottom:28px;align-items:start}.season-year{}.season p{max-width:460px}.partner{grid-template-columns:1fr;gap:28px}.partner h2{margin-top:25px}.partner-copy p{margin-bottom:24px}.footer{flex-direction:column;gap:25px}.footer-brand{max-width:none;}.footer-links{gap:14px 24px}.preview-foot{}}
@media(max-width:360px){.logo{width:145px}.hero h1{}.hero-copy .tag{}.button{gap:20px;max-width:100%}.section-index{display:none}.season{grid-template-columns:1fr;gap:14px}.film h3{}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}


body{}h1,h2,h3{}
.light h2,.light h3{color:var(--ink)}.hero h1{margin:60px -120px 38px 0;}
.hero h1 .surname{color:var(--paper)}.hero-copy .tag{}.hero-intro{max-width:320px;}
.hero-edge{height:3px;width:190px;background:var(--silver)}.button{background:var(--paper);border-color:var(--paper);}.button:hover{background:var(--silver);border-color:var(--silver)}
.nav{}.nav .contact-nav{color:var(--paper)}.tag,.meta,.section-index{}.lead-copy h2{}
.films-heading h2{}.personal-head h2{}.partner h2{}
.film h3{}.helmet h3{}.story h3{}.helmet .helmet-mark{}
.season-year{}.footer-brand{}.text-link{}.hero-credit{}
@media(max-width:1100px){.hero h1{}.film h3{}.story h3{}.helmet h3{}}
@media(max-width:760px){.hero h1{margin:30px 0}.hero-intro{}.lead-copy h2,.films-heading h2,.personal-head h2{}.partner h2{}.helmet h3,.story h3{}.film h3{}.season-year{}.footer-brand{}.hero-edge{height:3px}.tag{}}
@media(max-width:360px){.hero h1{}.button{}.story h3,.helmet h3{}}


.logo{background:transparent;width:205px;padding:0}.logo img{width:170px;aspect-ratio:85.5457/22.440603}.logo span{display:block;margin-top:10px;white-space:nowrap}
.tag::before,.hero-edge{background:var(--accent)}.hero h1{}.hero-copy .tag{color:var(--silver)}.hero-credit span,.film-arrow{color:var(--accent)}.play{background:var(--accent)}.nav a:hover{border-color:var(--accent)}.button{border-bottom:3px solid var(--accent)}
a:focus-visible,summary:focus-visible{outline-color:var(--accent)}.raven-mark{display:block;width:100%;max-width:245px;height:auto;margin:38px 0 0;object-fit:contain}.helmet{border-top:3px solid var(--accent)}.light .tag::before{background:var(--accent)}
@media(max-width:760px){.logo{width:180px}.logo img{width:144px}.logo span{margin-top:8px}.raven-mark{max-width:170px;margin-top:26px}.hero h1{}}
@media(max-width:360px){.logo{width:158px}.logo img{width:130px}.logo span{}}


.logo{display:flex;align-items:center;gap:20px;width:auto}.logo .header-raven{width:80px;height:66px;aspect-ratio:auto;object-fit:contain;padding:0;background:transparent;flex:none}.wordmark{flex:none}.logo .wordmark img{width:170px;aspect-ratio:85.5457/22.440603}
@media(max-width:960px){.nav{display:none}.mobile-nav{display:block;position:relative}.mobile-nav summary{cursor:pointer;list-style:none;padding:10px 0 10px 12px;}.mobile-nav summary::-webkit-details-marker{display:none}.mobile-nav summary span{color:var(--silver);padding-left:10px}.mobile-links{position:absolute;z-index:10;right:0;top:50px;background:var(--ink);border:1px solid var(--line);width:220px;padding:12px 20px;box-shadow:0 15px 24px #0004}.mobile-links a{display:block;padding:12px 0;border-bottom:1px solid var(--line);}.mobile-links a:last-child{border:0;color:var(--silver)}}
@media(max-width:760px){.masthead{gap:16px}.logo{gap:14px}.logo .header-raven{width:64px;height:54px;padding:0}.logo .wordmark img{width:144px}.mobile-nav{flex:none}}
@media(max-width:360px){.masthead{gap:8px}.logo{gap:10px}.logo .header-raven{width:54px;height:46px}.logo .wordmark img{width:124px}.mobile-nav summary{padding-left:4px}.mobile-nav summary span{padding-left:6px}}


h1,h2,h3{}.hero h1{margin-right:0}
.lead-copy h2{}.films-heading h2{}.personal-head h2{}.partner h2{}
.film h3{}.helmet h3{}.story h3{}.footer-brand{}.logo span{}.nav{}
@media(max-width:1100px){.nav{gap:20px}.hero h1{}.story h3,.helmet h3{}.film h3{}}
@media(max-width:760px){.hero h1{}.lead-copy h2,.films-heading h2,.personal-head h2{}.partner h2{}.story h3,.helmet h3{}.film h3{}.season-year{}.tag,.section-index{}.logo span{}}
@media(max-width:360px){.hero h1{}.partner h2{}.section-index{display:none}.logo span{}}


.partner-page [aria-current="page"]{border-bottom-color:var(--accent);text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:7px}
.partner-intro{padding-top:64px;padding-bottom:64px}
.partner-intro>.tag{color:var(--silver);margin-bottom:32px}
.partner-intro h1{max-width:20ch}
.accent-dot{color:var(--accent)}
.partner-intro .partner-thanks{margin-top:32px;margin-bottom:12px}
.partner-intro>p:not(.tag):not(.partner-thanks){max-width:62ch;color:var(--muted)}
.partner-intro .button{margin-top:28px}
.partner-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px 32px}
.partner-link{display:block}
.partner-image{aspect-ratio:4/3;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid var(--light-line);padding:24px}
.partner-image img{width:100%;height:100%;object-fit:contain}
.partner-caption{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-top:20px}
.partner-caption h2{overflow-wrap:break-word}
.partner-caption>span{color:var(--navy);flex:none}
.partner-visit{display:inline-block;color:var(--ink);border-bottom:1px solid var(--ink);padding-bottom:4px;margin-top:12px}
.partner-link:hover .partner-visit{border-color:var(--accent)}
.partner-page .footer-links{justify-content:flex-end;max-width:650px}
@media(max-width:1000px){.partner-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.partner-page .footer{align-items:flex-start}}
@media(max-width:760px){.partner-intro{padding-top:42px;padding-bottom:48px}.partner-intro>.tag{margin-bottom:28px}.partner-intro h1{}.partner-intro .partner-thanks{margin-top:28px}.partner-intro>p:not(.tag):not(.partner-thanks){}.partner-grid{grid-template-columns:1fr;gap:36px}.partner-image{max-height:330px}.partner-page .footer-links{justify-content:flex-start}.partner-caption h2{}}

/* WordPress block integration: retain the approved spacing and image geometry. */
.wfr-content > *{margin-block-start:0;margin-block-end:0}
.wfr-content .wp-block-image{margin-left:0;margin-right:0}
.wfr-content .hero-photo{margin-left:-3vw}
.wfr-content .hero-photo img{height:100%}
.wfr-content .lead-photo{margin:0}
.wfr-content .lead-photo::before{content:'';position:absolute;left:-12px;top:-12px;width:40px;height:40px;border-left:4px solid var(--ink);border-top:4px solid var(--ink)}
.wfr-content .story-photo figure{margin:0}
.wfr-content .raven-mark img{height:auto;object-fit:contain}
.wfr-content .raven-mark{max-width:245px}
.entry-content{max-width:900px;margin:auto;padding:64px var(--gutter)}
.entry-content p{margin:20px 0}.entry-content a{text-decoration:underline}
body.admin-bar .skip:focus{top:44px}
@media(max-width:760px){.wfr-content .hero-photo{margin-left:0}.wfr-content .hero-photo img{height:auto}.wfr-content .raven-mark{max-width:170px}}

/* WFR typography system — one size, weight and rhythm for each content role.
   All regular text uses Gotham Book 400; actions use genuine Gotham Medium 500.
   Display fonts have one supplied weight, 400. Do not synthesize light/bold cuts.
   Logo artwork and Will's name are the only brand lettering exceptions. */
:root {
  --type-brand: clamp(2.625rem, 5.5vw, 5rem);
  --type-page: 3rem;
  --type-section: 2.5rem;
  --type-card: 1.375rem;
  --type-intro: 1.25rem;
  --type-body: 1rem;
  --type-action: .875rem;
  --type-label: .75rem;
  --weight-book: 400;
  --weight-medium: 500;
  --leading-heading: 1.25;
  --leading-body: 1.65;
  --leading-label: 1.5;
  --tracking-heading: .015em;
  --tracking-label: .075em;
}

body, .editor-styles-wrapper {
  font-family: var(--body);
  font-size: var(--type-body);
  font-weight: var(--weight-book);
  line-height: var(--leading-body);
  font-synthesis: none;
}
h1, h2, h3, h4 {
  font-family: var(--display);
  font-weight: var(--weight-book);
  line-height: var(--leading-heading);
  letter-spacing: var(--tracking-heading);
  text-transform: uppercase;
  overflow-wrap: break-word;
}
h1 { font-size: var(--type-page); }
h2 { font-size: var(--type-section); }
h3, h4 { font-size: var(--type-card); }

/* Brand display: preserve the approved reduced name and original font. */
.hero h1 {
  font-family: var(--wordmark);
  font-size: var(--type-brand);
  font-weight: var(--weight-book);
  line-height: 1.15;
  letter-spacing: .025em;
}
.partner-intro h1 { font-size: var(--type-page); }
.lead-copy h2, .films-heading h2, .personal-head h2, .partner h2 {
  font-size: var(--type-section);
}
.film h3, .helmet h3, .story h3, .partner-caption h2, .season h2 {
  font-family: var(--display);
  font-size: var(--type-card);
  font-weight: var(--weight-book);
  line-height: var(--leading-heading);
  letter-spacing: var(--tracking-heading);
}

/* Reading roles: no component-specific 14/15/17/19px body variants. */
.lead-copy p:not(.meta), .films-heading p, .personal-head p,
.helmet p:not(.meta), .story p:not(.meta), .season p, .partner-copy p,
.partner-intro > p:not(.tag):not(.partner-thanks), .entry-content p {
  font-family: var(--body);
  font-size: var(--type-body);
  font-weight: var(--weight-book);
  line-height: var(--leading-body);
  letter-spacing: normal;
  text-transform: none;
}
.hero-intro, .partner-intro .partner-thanks {
  font-family: var(--body);
  font-size: var(--type-intro);
  font-weight: var(--weight-book);
  line-height: 1.5;
  letter-spacing: normal;
}
.hero-intro { max-width: 25rem; }

/* Controls share weight and sizing; decoration establishes priority. */
.nav, .mobile-nav summary, .mobile-links a, .button, .text-link,
.footer-links, .partner-visit, .watch-on {
  font-family: var(--body);
  font-size: var(--type-action);
  font-weight: var(--weight-medium);
  line-height: var(--leading-label);
  letter-spacing: .025em;
}
.nav, .mobile-nav summary, .button { text-transform: uppercase; }
.mobile-links a, .text-link, .footer-links, .partner-visit, .watch-on { text-transform: none; }
.button { gap: 1.5rem; max-width: 100%; }
.nav { gap: 1.5rem; }

/* Labels, dates, captions and supporting contact information. */
.tag, .hero-copy .tag, .meta, .film-info .meta, .story .meta,
.section-index, .hero-credit, .hero-photo figcaption, .lead-photo figcaption,
.partner-copy .email-label, .preview, .preview-foot {
  font-family: var(--body);
  font-size: var(--type-label);
  font-weight: var(--weight-book);
  line-height: var(--leading-label);
  letter-spacing: normal;
}
.tag, .hero-copy .tag, .meta, .film-info .meta, .story .meta, .section-index {
  text-transform: uppercase;
  letter-spacing: var(--tracking-label);
}
.hero-photo figcaption { text-transform: uppercase; }
.section-bar { align-items: baseline; }
.section-index { text-align: right; }
.season-year {
  font-family: var(--display);
  font-size: var(--type-section);
  font-weight: var(--weight-book);
  line-height: var(--leading-heading);
  letter-spacing: var(--tracking-heading);
}
.season h2 { margin-bottom: .75rem; }
.footer-brand {
  font-family: var(--wordmark);
  font-size: var(--type-card);
  font-weight: var(--weight-book);
  line-height: var(--leading-heading);
  letter-spacing: .025em;
}
.button .arrow, .film-arrow, .partner-caption > span { font-size: var(--type-card); line-height: 1; }

/* Descriptor is part of the proportional logo lockup, not a content role. */
.logo span { font: 400 .625rem/1.5 var(--body); text-transform: uppercase; letter-spacing: .06em; }

@media (max-width:1100px) {
  .nav { display:none; }
  .mobile-nav { display:block; position:relative; flex:none; }
  .mobile-nav summary { cursor:pointer; list-style:none; padding:10px 0 10px 12px; }
  .mobile-nav summary::-webkit-details-marker { display:none; }
  .mobile-nav summary span { color:var(--silver); padding-left:10px; }
  .mobile-links { position:absolute; z-index:10; right:0; top:50px; background:var(--ink); border:1px solid var(--line); width:240px; padding:12px 20px; box-shadow:0 15px 24px #0004; }
  .mobile-links a { display:block; padding:12px 0; border-bottom:1px solid var(--line); }
  .mobile-links a:last-child { border:0; }
}
@media (max-width:760px) {
  :root {
    --type-brand: clamp(2.25rem, 10.5vw, 4.625rem);
    --type-page: 2rem;
    --type-section: 1.75rem;
  }
  .hero-intro br { display:none; }
  .hero-intro { max-width:25rem; }
  .section-bar { gap:1rem; }
  .section-index { max-width:12em; }
  .logo span { font-size:.5rem; }
}
@media (max-width:360px) {
  .masthead { padding-left:1rem; padding-right:1rem; }
  .section-bar { flex-wrap:wrap; }
  .section-index { display:block; text-align:left; max-width:none; }
  .season { grid-template-columns:1fr; }
  .logo span { font-size:.5rem; }
}
