/* TOP CAT / THE STORY ARCHIVE
   Mid-century Saturday-morning cartoon / ink-and-paper redesign.
   All pictorial artwork comes from assets supplied in the original ZIP.
   This sheet overrides site.css without replacing editorial content or functionality.
*/
:root {
  --ink: #173b46;
  --muted: #526470;
  --night: #113541;
  --night2: #0d2b36;
  --violet: #642d70;
  --violet2: #884586;
  --yellow: #f7ce49;
  --mint: #a8d7d0;
  --cream: #fbf4e5;
  --white: #fffdf4;
  --stroke: #224452;
  --shadow: 7px 8px 0 rgba(19,54,66,.15);
  --radius: 17px;
  --focus: #d35f37;
  --tomato: #d75741;
  --sky: #66baca;
  --paper: #fffdf4;
  --max: 1220px;
}
html { scroll-padding-top: 96px; }
body {
  background: var(--cream);
  color: var(--ink);
  font-family: "Trebuchet MS", Arial, sans-serif;
  font-size: 16px;
  line-height: 1.72;
  background-image: radial-gradient(rgba(41,85,87,.065) .75px,transparent .75px);
  background-size: 16px 16px;
}
a { color: #843b54; text-decoration-color: #c98765; }
a:hover { color: #bc533c; }
a:focus-visible, button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible { outline-color:#e96b39; }
h1,h2,h3,h4,.logo-name {
  font-family: "Arial Black", "Trebuchet MS", Arial, sans-serif;
  font-weight: 900;
  letter-spacing: -.045em;
}
h1,h2,h3,h4 {color:#153b46;}
h1 {font-size:clamp(2.8rem,6.1vw,5.9rem); line-height:1.025;}
h2 {font-size:clamp(1.85rem,3.15vw,2.9rem); line-height:1.12;}
h3 {font-size:1.18rem;line-height:1.2;}
p {line-height:1.72;}
::selection {background:#ffd65c;color:#173744;}
.eyebrow,.section-kicker,.mini-kicker,.timeline-year,.film-block .meta {
  font-family:"Trebuchet MS",Arial,sans-serif;
  font-weight:900;
  letter-spacing:.12em;
  color:#a44c35;
}
.section-kicker {font-size:.76rem;margin-bottom:13px;display:flex;align-items:center;gap:11px;}
.section-kicker::before {content:"";display:inline-block;flex:none;width:24px;height:5px;background:#df6546;border-radius:1px;transform:skewX(-18deg);}
.section-head {margin-bottom:32px;gap:24px;}
.section-head p{color:#5a6971;}
.section{padding:78px 0;}
.section-head h2{margin-bottom:10px;}
.prose-lead{color:#345760;font-size:1.18rem;font-weight:500;}
.text-link{color:#9d4937;font-family:"Trebuchet MS",Arial,sans-serif;font-weight:900;letter-spacing:.01em;}
.text-link:hover{color:#69386e;}
.text-link::after{content:"";display:inline-block;width:7px;height:7px;transform:rotate(45deg);border-top:3px solid currentColor;border-right:3px solid currentColor;transition:transform .18s;}
.text-link:hover::after{transform:translate(3px,-2px) rotate(45deg);}
.pill {border:2px solid #173c47;background:#ffdb7d;color:#233c46;border-radius:6px;box-shadow:2px 3px 0 #1b3e4a1c;text-transform:uppercase;font-size:.7rem;letter-spacing:.06em;padding:5px 10px;}
.pill.dark {background:#f9d16a;color:#173744;border-color:#e6b84d;}
.pill.warning {background:#ffebc0;border-color:#ba8f50;color:#6d4734;}
.button {background:#f7ce49;border:2px solid #153844;color:#173844;border-radius:10px;padding:14px 23px;box-shadow:5px 5px 0 #0b2933;font-family:"Trebuchet MS",Arial,sans-serif;font-size:.95rem;line-height:1.3;letter-spacing:.01em;text-align:center;justify-content:center;}
.button:hover{background:#ffe17d;color:#11343d;box-shadow:7px 7px 0 #0b2933;transform:translate(-2px,-2px);}
.button.outline {background:transparent;border:2px solid currentColor;box-shadow:4px 4px 0 #163b451f;color:#173b46;}
.button.outline:hover{background:#fff4c6;}
.button.small{padding:9px 14px;}
.skip-link{background:#ffdb77;z-index:10000;}

/* Banner: strong stripes, simplified original-era club-sign branding */
.site-header {background:#123946;color:#fff;backdrop-filter:none;box-shadow:0 4px 0 #e4ac3c;border:0;border-bottom:4px solid #f4c65a;}
.header-inner{height:83px;gap:23px;}
.brand{gap:12px;align-items:center;min-width:0;color:#fff8e5;}
.brand:hover{color:#fff8e5;}
.brand-emblem {width:51px;height:51px;transform:rotate(-6deg);background:#fff0bd;flex-shrink:0;border:3px solid #ffda65;border-radius:9px;box-shadow:3px 3px 0 #092b36;overflow:hidden;display:block;}
.brand-emblem img.brand-photo {width:100%;height:100%;object-fit:cover;object-position:center 40%;transform:scale(1.15);}
.logo-name {display:block;color:#ffcf4f;font-size:1.65rem;letter-spacing:-.07em;line-height:1.04;text-shadow:2px 2px 0 #082936;white-space:nowrap;}
.brand-small{color:#d5e2d4;letter-spacing:.13em;font-weight:900;font-size:.54rem;margin-top:5px;white-space:nowrap;}
.nav-links{gap:4px;}
.nav-links>a,.dropdown>button{color:#f9f3df;font-family:"Trebuchet MS",Arial,sans-serif;font-weight:900;font-size:.86rem;padding:10px 12px;border-radius:5px;}
.nav-links>a:hover,.dropdown>button:hover,.nav-links .active,.dropdown>button.active {background:#f7cd48;color:#123642;}
.dropdown>button::after{content:"";width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);margin:-4px 0 0 2px;}
.dropdown-panel{background:#fff6df;border:2px solid #163a43;border-radius:10px;padding:8px;box-shadow:6px 7px 0 #102e3c2e;min-width:245px;}
.dropdown-panel a{border-radius:5px;color:#1b444c;font-weight:800;}
.dropdown-panel a:hover{background:#ffe1a0;color:#713f39;}
.menu-toggle{border:2px solid #f5ca62;color:#f5ca62;background:transparent;width:47px;height:44px;padding:11px;line-height:1;border-radius:7px;}
.menu-bars {display:grid;gap:4px;}
.menu-bars i{display:block;width:100%;height:3px;border-radius:2px;background:currentColor;}

/* Home marquee: vintage alley poster in deep teal / goldenrod */
.hero.main-hero{min-height:610px;background:
  radial-gradient(circle at 93% 12%,rgba(242,203,77,.18) 0 1px,transparent 2px) 0 0/18px 18px,
  linear-gradient(121deg,#10313d 0%,#154654 65%,#126073 100%);
  border-bottom:9px solid #e3a949;
}
.hero::before {opacity:1;background:linear-gradient(135deg,transparent 0 50%,rgba(255,255,255,.025) 50% 100%);background-size:40px 40px;}
.hero-inner{min-height:610px;grid-template-columns:1.08fr .92fr;gap:45px;padding:72px 0 68px;}
.hero .eyebrow{color:#ffcb58;font-size:.79rem;letter-spacing:.13em;display:inline-block;border-left:5px solid #d6593b;padding-left:13px;margin-bottom:12px;}
.hero h1{font-size:clamp(3.3rem,6.5vw,6.55rem);max-width:780px;color:#fff6da;line-height:.98;text-shadow:3px 4px 0 #092936;letter-spacing:-.06em;margin:12px 0 27px;}
.hero h1 em {display:inline-block;color:#ffce49;text-decoration:underline;text-decoration-color:#d96444;text-decoration-thickness:7px;text-underline-offset:10px;}
.hero .lede{font-size:1.13rem;color:#e3ede6;max-width:540px;line-height:1.8;}
.hero-actions{margin-top:35px;gap:16px;}
.hero-actions .button.outline{background:transparent;border-color:#e2ebd9;color:#f7f1d9;box-shadow:none;}
.hero-actions .button.outline:hover{background:#f5d76d;color:#163a46;}
.hero-art{height:470px;isolation:isolate;}
.hero-art::before{inset:6% 3% 2% 7%;background:#f6cf5f;border:7px solid #102d37;border-radius:50% 50% 47% 43%;transform:rotate(-6deg);box-shadow:10px 13px 0 #0b2e39,0 0 0 6px rgba(248,215,138,.18);}
.hero-art::after{content:"";pointer-events:none;position:absolute;z-index:1;left:6%;top:7%;width:65px;height:65px;border:5px solid #f8d865;border-radius:50%;box-shadow:0 0 0 7px #153d47;opacity:.82;}
.hero-city{inset:4% 0 auto auto;height:94%;width:98%;opacity:.37;object-fit:cover;object-position:center;background:#13738c;border-radius:46% 49% 43% 40%;mask-image:none;mix-blend-mode:multiply;}
.hero-cat{width:min(82%,390px);height:400px;max-height:400px;object-fit:cover;object-position:center 40%;border:11px solid #fff7d8;border-radius:15px;filter:drop-shadow(4px 4px 0 #0b2d38);box-shadow:12px 15px 0 #0d2935;transform:rotate(5deg);z-index:2;}
.vertical-stamp{background:#d9583c;color:white;border:3px solid #fff3c5;transform:rotate(9deg);right:-5px;top:4px;z-index:3;letter-spacing:.08em;border-radius:5px;padding:12px 14px;font-size:.73rem;text-align:center;line-height:1.4;box-shadow:3px 4px 0 #193942;}
.stats-strip{background:#fae7b7;border-bottom:3px solid #17404a;}
.stats-inner{gap:0;padding:28px 0;}
.stat{padding:2px 23px;border-right:2px solid #cfb886;}
.stat:first-child{padding-left:0;}
.stat:last-child{border-right:0;}
.stat strong{font-family:"Arial Black","Trebuchet MS",sans-serif;color:#17414c;font-size:clamp(1.25rem,2vw,1.7rem);letter-spacing:-.035em;}
.stat span{color:#5c5b51;font-weight:700;font-size:.82rem;}

/* Section illustrations and graphic panels */
#explore{background:#fff5de;}
#story {background:#e3f0e7;border-block:3px solid #254952;}
#cast{background:#fbf4e5;}
#route {background:#e0edf0;border-block:3px solid #214c55;}
#video {background:#fff7e7;}
.feature-grid{gap:24px;}
.feature-card,.card{background:#fffef7;border:2px solid #24434b;border-radius:13px;box-shadow:5px 6px 0 rgba(18,53,65,.18);transition:transform .17s,box-shadow .17s;}
.feature-card:hover,.card:hover{transform:translate(-2px,-4px);box-shadow:8px 10px 0 rgba(18,53,65,.21);}
.feature-card .card-img{height:225px;background:#60bbca;position:relative;overflow:hidden;border-bottom:3px solid #24434b;}
.feature-card .card-img::after{content:"";pointer-events:none;position:absolute;inset:0;border:9px solid rgba(255,255,255,.1);}
.feature-card .card-img img{width:100%;height:100%;object-fit:cover;transition:transform .32s;}
.feature-card:hover .card-img img{transform:scale(1.06);}
.feature-card .card-img.illustrated {display:block;}
.feature-card .card-img.illustrated img{width:100%;height:100%;object-fit:cover;}
.feature-card:nth-child(2) .card-img {background:#e8a84b;}
.feature-card:nth-child(3) .card-img {background:#a0caba;}
.card-content {padding:24px 24px 25px;}
.card-content .mini-kicker{font-weight:900;color:#a85837;}
.card-content h3{font-size:1.25rem;margin:9px 0 11px;line-height:1.15;}
.card-content h3 a:hover{color:#b45239;}
.card-content p{color:#576971;font-size:.94rem;min-height:54px;}
.card-content .text-link{margin-top:4px;}
.media-frame{background:#f5d276;border:4px solid #1a4048;border-radius:14px;box-shadow:8px 10px 0 #1c4a4c27;}
.media-frame.wide img{aspect-ratio:16/10;}
.image-caption,figure figcaption{font-size:.81rem;color:#53646b;font-weight:500;}
.character-grid{gap:20px;}
.character-card{padding:23px;border:2px solid #214651;border-radius:13px;background:#fffdf3;box-shadow:4px 5px 0 #21465120;}
.character-card:nth-child(2n){background:#f1fbf7;}
.character-card:nth-child(3n){background:#fff3d6;}
.character-card h3{font-size:1.19rem;margin:7px 0;}
.character-card p{color:#53656a;}
.character-avatar,.character-card:hover .character-avatar {width:90px;height:90px;border-radius:12px;display:block;border:4px solid #24414b;overflow:hidden;background:#f3d16e;transform:rotate(-4deg);box-shadow:3px 4px 0 #27465130;}
.character-card:hover .character-avatar {transform:rotate(0);}
.character-avatar .character-photo{width:100%;height:100%;object-fit:cover;object-position:center;}
.avatar-purple{background:#ead2d5;}.avatar-cyan{background:#c7f0f1;}.avatar-rose{background:#f6d9e0;}.avatar-orange{background:#ffe39b;}.avatar-green{background:#d8eacb;}.avatar-gray{background:#eee3ce;}.avatar-ink{background:#d7e6df;}
.callout{position:relative;isolation:isolate;background:#184651;border:3px solid #153a45;border-radius:13px;box-shadow:8px 9px 0 #13394426;padding:40px 45px;overflow:hidden;}
.callout::before{content:"";position:absolute;inset:0;background:radial-gradient(#f7ca5a 1px,transparent 1px);background-size:19px 19px;opacity:.13;pointer-events:none;z-index:-1;}
.callout h2{color:#ffdb78;font-size:clamp(1.8rem,3vw,2.6rem);}
.callout p{color:#e2eee7;}
.callout .section-kicker{color:#ffcb67!important;}

/* Every interior page gets a restrained classic portrait, not a vector graphic */
.page-hero{background:linear-gradient(110deg,#133b46 0%,#1e5966 70%,#275e65 100%);padding:67px 0 78px;border-bottom:8px solid #e3af49;isolation:isolate;}
.page-hero::before{content:"";position:absolute;inset:0;z-index:-2;background:radial-gradient(#fff4a5 1.2px,transparent 1.2px);background-size:22px 22px;opacity:.08;}
.page-hero::after{content:"";position:absolute;right:4%;top:20%;width:260px;height:265px;opacity:.86;border:8px solid #ffdb6c;background:#63b4c5 url('../images/topcat-classic-panel.webp') center 42%/cover no-repeat;box-shadow:12px 14px 0 #0f3443;transform:rotate(7deg);border-radius:12px;z-index:-1;}
.page-hero h1 {color:#fff4d9;max-width:min(850px,calc(100% - 310px));font-size:clamp(2.65rem,5.2vw,4.75rem);margin:15px 0 19px;text-shadow:2px 3px 0 #0d313d;}
.page-hero .eyebrow {color:#ffda79;font-size:.79rem;border-left:4px solid #d95d3c;padding-left:12px;}
.page-hero p{color:#e4ece6;max-width:min(740px,calc(100% - 285px));font-size:1.09rem;line-height:1.65;}
.page-hero .page-labels{max-width:min(800px,calc(100% - 280px));margin-top:20px;}
.crumbs{font-weight:800;color:#d1e7de;gap:9px;margin-bottom:26px;}
.crumbs a{color:#f7d983;}.crumbs a:hover{color:#fff;}
.crumbs .sep{color:#e4bd5f;}
.adult-ribbon{background:#602f45;color:#ffe8d4;border-top:0;border-bottom:3px solid #ad6855;}
.adult-ribbon strong{color:#ffdc80;}

/* Document layout / indices */
.article-wrap{grid-template-columns:minmax(0,1fr) 281px;gap:55px;padding-top:62px;padding-bottom:80px;}
.article-main p{color:#37515a;}
.article-main>section,.article-main>.block{margin-bottom:58px;}
.article-main h2{font-size:clamp(1.7rem,2.8vw,2.5rem);padding-bottom:15px;border-bottom:3px solid #e1ad4b;margin-bottom:24px;position:relative;}
.article-main h2::after{content:"";position:absolute;left:0;bottom:-3px;width:80px;height:3px;background:#d65c45;}
.article-main h3{color:#214753;}
.article-main strong {color:#173d47;}
.toc {top:111px;background:#fff3d3;border:2px solid #2a4b50;border-radius:11px;padding:24px;box-shadow:6px 7px 0 #21444d22;}
.toc h2{font-family:"Arial Black","Trebuchet MS",sans-serif;font-size:1rem;color:#21434b;letter-spacing:-.025em;}
.toc a{color:#41616b;font-weight:700;}
.toc a:hover{color:#b44d35;text-decoration:underline;}
.toc hr{border-color:#d8bb88!important;}
.quickfacts{border:2px solid #294954;background:#fffdf2;border-radius:10px;gap:0;padding:10px;box-shadow:4px 5px 0 #173d4615;}
.fact {border-bottom:1px dashed #d1b98c;}
.fact:nth-last-child(-n + 2){border:0;}
.fact span{color:#926049;}
.fact strong {color:#214752;}
.note,.source-box {background:#e8f2e8;border-left:6px solid #368a91;border-radius:0 11px 11px 0;color:#2d545c;}
.source-box{background:#fff0ca;border-color:#d99f3b;}
.table-wrap{border:2px solid #234651;border-radius:11px;box-shadow:3px 4px 0 #23465116;background:#fffefa;}
th,td{border-color:#dfddce;padding:14px 17px;}
th{background:#f6d883;color:#234651;letter-spacing:.03em;font-weight:900;}
tbody tr:nth-child(even){background:#f7f8f0;}
tbody tr:hover{background:#f8e9ca;}
.toolbar{border:2px solid #234651;background:#fff2d3;border-radius:10px;box-shadow:4px 5px 0 #23465115;}
.field input,.field select{border:2px solid #96aeb0;background:#fffef8;color:#1e414b;border-radius:6px;min-height:45px;}
.field label{color:#244a52;font-weight:900;}
.episode{background:#fffefa;border:2px solid #d5dcd4;border-radius:9px;box-shadow:2px 3px 0 #20495113;}
.episode:hover {border-color:#bba068;background:#fff8e7;}
.episode .ep-number{color:#a3503d;background:#fff1c9;border:2px solid #e5bf73;text-align:center;border-radius:5px;padding:6px 0;}
.episode h3 a:hover{color:#ae4b32;}
.episode time{color:#5f6c68;}
.timeline{border-left:4px solid #cd9c4b;}
.timeline-entry{background:#fffef5;border:2px solid #27454c;border-radius:11px;box-shadow:4px 4px 0 #1a47501c;}
.timeline-entry::before{background:#da6746;border-color:#fff0bd;box-shadow:0 0 0 2px #274b53;left:-52px;}
.timeline-year{color:#a65135;font-size:.85rem;}
.tabs{gap:9px;}
.tabs button{border:2px solid #284c56;background:#fff9e9;border-radius:7px;color:#294c56;font-weight:900;}
.tabs button[aria-selected=true]{background:#f4ca58;color:#17404b;border-color:#17404b;box-shadow:3px 4px 0 #1b424b;}
.platform-panel,.article-tile,.poster-card,.film-block{background:#fffdf4;border:2px solid #2c4952;border-radius:11px;box-shadow:3px 4px 0 #27455118;}
.poster-card img,.film-block img{border-radius:6px;background:#f2deaf;}
.article-tiles{gap:20px;}
.article-tile{padding:23px;}
.notice,.callout-inline,.adult-disclaimer {background:#fff0ce;color:#664d37;border:2px solid #d8ad61;border-radius:9px;}
.faq details{background:#fffcf4;border:2px solid #ded7bc;border-radius:8px;}
.faq details[open]{border-color:#bf9969;background:#fff4d6;}
.faq summary{color:#214955;font-weight:900;}
.slot-diagram{background:#184655;border:3px solid #23414d;border-radius:13px;box-shadow:7px 8px 0 #17475425;}
.slot-diagram .mini-kicker{color:#ffdd84!important;font-size:.79rem;}
.slot-diagram .reel-row{gap:10px;}
.slot-symbol {border:3px solid #e9bd59;background:#fff4c9;border-radius:7px;height:75px;padding:3px;box-shadow:none;overflow:hidden;}
.slot-symbol-photo {width:100%;height:100%;object-fit:cover;border-radius:3px;}
.slot-diagram .diagram-caption{color:#dfebe7;}
.related {background:#e2eeea;padding:73px 0;border-top:3px solid #244b52;}
.related .section-kicker{color:#a6523c;}
.gallery-trigger{border:3px solid #204451;}
.image-lightbox{background:#133e4b;border:3px solid #f2c968;border-radius:12px;}
.lightbox-close{background:#f5ce67;border:2px solid #0a2d36;}

/* Closing credits */
.site-footer{background:#103540;color:#c7d8d4;padding:65px 0 24px;border-top:8px solid #e3b24e;}
.footer-grid{gap:38px;}
.site-footer h3{color:#f3d27c;font-size:1.04rem;margin:0 0 20px;}
.site-footer a{color:#d6e2d9;line-height:1.4;margin:11px 0;font-weight:650;}
.site-footer a:hover{color:#ffda69;}
.site-footer p{color:#c2d2cd;}
.site-footer .brand{display:flex;margin-bottom:23px;}
.site-footer .brand .logo-name{color:#ffd05f;}
.footer-bottom{border-top:1px solid #4a7074;color:#a6c3bc;padding-top:22px;}
.small-legal{color:#65726f;}

@media(max-width:1100px){
  .header-inner{gap:12px;}
  .nav-links>a,.dropdown>button{padding:9px 8px;font-size:.78rem;}
  .brand-emblem{width:45px;height:45px;}
  .logo-name{font-size:1.42rem;}
  .brand-small{font-size:.5rem;}
}
@media(max-width:900px){
  .hero-inner{gap:20px;}
  .hero h1{font-size:clamp(3.4rem,7vw,5.4rem);}
  .page-hero::after{right:1%;width:200px;height:215px;opacity:.48;}
  .page-hero h1{max-width:calc(100% - 130px);}
  .page-hero p{max-width:calc(100% - 140px);}
  .page-hero .page-labels{max-width:calc(100% - 120px);}
}
@media(max-width:800px){
  .header-inner{height:67px;}
  .site-header{border-bottom-width:3px;}
  .nav-links{top:67px;background:#143a48;border-top:2px solid #c69b48;padding:15px 17px 20px;box-shadow:0 8px 0 rgba(0,0,0,.12);}
  .nav-links>a,.dropdown>button{font-size:1rem;padding:14px 13px;}
  .dropdown-panel,.nav-links .dropdown-panel{background:#255162;border:0;box-shadow:none;margin:3px 0 8px;}
  .dropdown-panel a,.nav-links .dropdown-panel a{color:#f8edcf;}
  .dropdown-panel a:hover{background:#e0ba69;color:#183c45;}
  .hero-inner{grid-template-columns:1fr;padding:62px 0 60px;}
  .hero.main-hero{min-height:0;}
  .hero .lede{max-width:650px;}
  .hero-art{height:395px;max-width:490px;width:100%;margin:auto;}
  .hero-cat{width:min(75%,330px);height:335px;max-height:335px;}
  .hero-art::before{inset:5% 6% 2%;}
  .stats-inner{grid-template-columns:repeat(2,1fr);gap:18px 0;}
  .stat:nth-child(2){border:0;}
  .stat:nth-child(3){padding-left:0;}
  .section{padding:62px 0;}
  .feature-grid,.related .feature-grid{grid-template-columns:repeat(2,1fr);}
  .article-wrap{grid-template-columns:1fr;gap:30px;}
  .toc{position:static;}
  .page-hero{padding:52px 0 57px;}
  .page-hero::after{right:4%;top:27%;}
  .poster-row{grid-template-columns:repeat(3,1fr);}
  .footer-grid{grid-template-columns:repeat(2,1fr);}
}
@media(max-width:540px){
  body{font-size:15px;}
  .container{width:calc(100% - 34px);}
  .header-inner{gap:12px;}
  .brand{gap:8px;}
  .brand-emblem{width:39px;height:41px;border-width:2px;}
  .logo-name{font-size:1.28rem;}
  .brand-small{font-size:.41rem;letter-spacing:.11em;}
  .hero h1{font-size:clamp(3.0rem,12vw,4.35rem);}
  .hero-inner{padding:50px 0 40px;}
  .hero-art{height:325px;margin-top:13px;}
  .hero-cat{height:277px;max-height:277px;width:70%;border-width:8px;}
  .vertical-stamp{font-size:.6rem;right:0;top:0;}
  .hero .lede{font-size:1.05rem;}
  .stats-inner{gap:20px 0;padding:21px 0;}
  .stat{padding:4px 10px;border-right:0;}
  .stat:first-child,.stat:nth-child(3){padding-left:0;}
  .stat strong{font-size:1.2rem;}
  .stat span{font-size:.74rem;}
  .section{padding:52px 0;}
  .feature-grid,.related .feature-grid,.character-grid,.article-tiles{grid-template-columns:1fr;}
  .feature-card .card-img{height:225px;}
  .card-content p{min-height:0;}
  .character-card{grid-template-columns:75px 1fr;gap:0 14px;padding:18px;}
  .character-avatar,.character-card:hover .character-avatar{width:69px;height:69px;grid-row:span 3;margin:0;}
  .character-card .mini-kicker{align-self:end;}
  .page-hero{padding:32px 0 46px;}
  .page-hero h1{max-width:100%;font-size:clamp(2.4rem,9vw,3.2rem);position:relative;z-index:1;text-shadow:2px 2px #123542;}
  .page-hero p,.page-hero .page-labels{max-width:100%;position:relative;z-index:1;}
  .page-hero p{font-size:1.04rem;}
  .page-hero::after{width:112px;height:120px;right:-35px;top:48px;opacity:.17;transform:rotate(13deg);}
  .crumbs{gap:6px;margin-bottom:20px;font-size:.77rem;}
  .article-wrap{padding-top:42px;padding-bottom:56px;}
  .article-main h2{font-size:1.75rem;}
  .quickfacts{grid-template-columns:repeat(2,1fr);}
  .film-block{grid-template-columns:94px 1fr;}
  .poster-row{grid-template-columns:repeat(2,1fr);}
  .callout{padding:27px 24px;}
  .callout .button{margin-top:18px;}
  .slot-diagram{padding:12px;}
  .slot-diagram .reel-row{gap:4px;}
  .slot-symbol{height:48px;border-width:2px;padding:1px;}
  .related{padding:50px 0;}
  .footer-grid{grid-template-columns:repeat(2,1fr);gap:25px;}
  .footer-grid>div:first-child{grid-column:1/-1;}
  .site-footer{padding-top:45px;}
}
@media(prefers-reduced-motion:reduce){.feature-card .card-img img{transition:none;}}

/* Small portrait replaces the former pictogram on the image-preview close button. */
.lightbox-close{display:flex;align-items:center;gap:8px;cursor:pointer;}
.lightbox-close .close-photo{width:24px;height:24px;object-fit:cover;border:2px solid #21434b;border-radius:5px;}
