/* Driver features share one clear reading system, with five editorial treatments. */
.feature-breadcrumb{display:flex;flex-wrap:wrap;gap:10px;color:var(--muted);font-size:20px;margin:10px 0 30px}.feature-breadcrumb a:hover{color:var(--blue)}
.driver-byline{font:21px/1.5 Arial,sans-serif;margin-top:22px}.driver-byline strong{color:var(--blue)}
.feature-deck{font:22px/1.65 Arial,sans-serif;max-width:900px;margin:32px 0;color:#dce4eb}.driver-feature .story-layout{grid-template-columns:minmax(0,1.8fr) minmax(250px,1fr);gap:72px;align-items:start}
.long-story{min-width:0;max-width:760px}.story-chapter{margin:0 0 42px;position:relative;scroll-margin-top:110px}.story-chapter h2{font-size:36px;line-height:1.13;margin-bottom:22px;max-width:670px}.story-chapter p{font:18px/1.8 Arial,sans-serif;color:#dce2e7;margin-top:18px;max-width:70ch}.chapter-no{font:800 italic 19px var(--heading);color:var(--blue);display:block;margin-bottom:10px}
.driver-feature .pit-quote,.host-story .pit-quote{display:block;margin:10px 0 44px}.driver-feature .pit-quote blockquote,.host-story .pit-quote blockquote{font-size:30px;line-height:1.3}.driver-file{border-left:1px solid var(--line);padding-left:30px}.driver-file>h2{font-size:27px;color:var(--muted)}.driver-file>h3{font:800 italic 30px/1.2 var(--heading);margin:16px 0}.driver-file dl{margin:0}.driver-file dl>div{border-bottom:1px solid var(--line);padding:15px 0}.driver-file dt{color:var(--blue);font-size:18px}.driver-file dd{margin:7px 0 0;font:16px/1.6 Arial,sans-serif}.driver-file .race-history{border:0;padding:30px 0}.driver-file .race-history h2,.life-notes h2{font-size:28px}.life-notes ol{list-style:none;padding:0;margin:20px 0 30px;border-left:2px solid var(--blue)}.life-notes li{padding:0 0 24px 20px;position:relative}.life-notes li:before{content:'';position:absolute;width:8px;height:8px;background:var(--blue);left:-5px;top:7px}.life-notes strong{font-size:21px}.life-notes p{font:15px/1.7 Arial,sans-serif;color:var(--muted);margin-top:8px}
.mic-interview{border-block:2px solid var(--blue);display:grid;grid-template-columns:190px minmax(0,1fr);gap:35px;padding:30px;margin:32px 0 50px;background:#111b22;align-items:center}.mic-portrait{align-self:end}.mic-portrait img{display:block;width:100%;height:auto;max-height:280px;object-fit:contain}.mic-interview h2{font-size:36px;margin:10px 0 20px}.mic-interview p:not(.page-label){font:18px/1.7 Arial,sans-serif;margin:12px 0}.mic-interview p strong{color:var(--blue);margin-right:8px}.mic-interview a:not(.mic-portrait){display:inline-flex;align-items:center;gap:10px;font-size:19px;text-decoration:underline;text-underline-offset:4px;margin-top:10px}
.connection-card{padding:16px;background:var(--surface);min-width:0}.connection-card .lineup-car{display:block}.connection-card .lineup-car img{width:100%;height:145px}.connection-card .lineup-car svg{display:none}.connection-card>p{font:16px/1.65 Arial,sans-serif;color:#c7d0d9;margin-top:10px}.connection-card>p.connection-kind{font:20px var(--body);color:var(--blue);margin-top:18px}.connections .related-grid{grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr))}
.profile--roadbook .story-chapter{border-left:2px solid #304b5c;padding-left:24px}.profile--roadbook .chapter-no{letter-spacing:4px}.profile--voices .pit-quote{border-left-color:var(--blue)}.profile--voices .chapter-no{color:#ffbd69}.profile--workbench .story-chapter h2{border-bottom:1px solid var(--line);padding-bottom:15px}.profile--dispatch .story-chapter h2{font-style:normal}.profile--portrait .chapter-no{color:var(--red)}
.town-nav{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0 36px}.town-nav a{padding:10px 15px;background:var(--surface);border:1px solid var(--line);font-size:20px}.town-nav a:hover{border-color:var(--blue)}.host-banner{display:flex;gap:25px;align-items:center;background:#14232e;border-block:2px solid var(--blue);padding:20px 32px;margin:38px 0}.host-banner img{object-fit:contain;flex-shrink:0}.host-banner h2{font-size:37px}.host-banner p{font:17px/1.6 Arial,sans-serif;margin-top:10px}.host-banner svg{flex-shrink:0;margin-left:auto}.town-section{padding:42px 0;border-top:1px solid var(--line);scroll-margin-top:100px}.town-section>div>p:not(.page-label){max-width:750px;font:18px/1.7 Arial,sans-serif;margin:16px 0 30px}.town-roster{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px 28px}.town-roster .lineup-car{display:block;border-bottom:1px solid var(--line);padding-bottom:20px}.town-roster .lineup-car img{width:100%;height:150px}.town-roster .lineup-car svg{display:none}.town-roster small{font:15px/1.5 Arial,sans-serif}.host-intro{display:grid;grid-template-columns:1.5fr 1fr;gap:40px;align-items:center}.host-intro>img{width:100%;max-height:550px;object-fit:contain}.host-story{margin:45px auto 0}.home-world{margin-block:50px}.home-world .host-banner{color:var(--text)}.video-pending{padding:35px;background:var(--surface)}
@media(max-width:1000px){.driver-feature .story-layout{gap:35px;grid-template-columns:minmax(0,1.5fr) minmax(230px,1fr)}.town-roster{grid-template-columns:repeat(2,minmax(0,1fr))}.driver-file{padding-left:22px}}
@media(max-width:800px){.driver-feature .story-layout{grid-template-columns:1fr}.long-story{max-width:none}.driver-file{border-left:0;border-top:1px solid var(--line);padding:28px 0}.driver-file .race-history ul{display:block}.driver-file dl{display:grid;grid-template-columns:1fr 1fr;gap:0 25px}.life-notes ol{max-width:650px}.host-intro{grid-template-columns:1fr}.host-intro>img{max-height:380px}.mic-interview{grid-template-columns:120px minmax(0,1fr);gap:22px;padding:24px}.host-banner{padding:20px;gap:18px}}
@media(max-width:520px){.feature-deck{font-size:18px;line-height:1.7}.driver-byline{font-size:18px}.story-chapter p{font-size:17px}.story-chapter h2{font-size:31px}.driver-feature .pit-quote blockquote{font-size:27px}.driver-file dl{display:block}.mic-interview{grid-template-columns:1fr;padding:22px}.mic-portrait{width:110px;justify-self:center}.mic-interview h2{font-size:31px}.mic-interview p:not(.page-label){font-size:16px}.host-banner{flex-wrap:wrap}.host-banner img{width:75px;height:100px}.host-banner>div{flex:1;min-width:180px}.host-banner h2{font-size:30px}.host-banner svg{display:none}.town-roster{gap:18px}.town-roster .lineup-car img{height:105px}.town-roster .lineup-car strong{font-size:23px}.town-roster small{font-size:14px}.profile--roadbook .story-chapter{padding-left:16px}}
