/* ThisIsHalloween.tv V2.4 — editorial cleanup and watch-first catalog. */
:root{--orange:#d96319;--pumpkin:#d96319;--purple:#b54f18;--v22-title:'Bebas Neue','Liberation Sans Narrow','Nimbus Sans Narrow','Arial Narrow',Impact,sans-serif}
body :is(h1,h2,h3,h4,h5,h6),body :is(.v15-news-hero h1,.v20-news-toolbar strong,.v15-kicker,.v15-news-hero em,.v15-heading h2,.v20-news-guide h2,.v15-departments strong,.v15-story-meta,.editor-intro h1,.story-section h2,.episode-count,.v18-category,.result-summary),body :is(h1,h2,h3,h4,h5,h6) :is(em,strong,span){font-family:var(--v22-title)!important;font-weight:400!important;letter-spacing:.025em!important}
/* Orange and black only — strip the older page-specific purple styling. */
body :is(.v15-news-hero em,.v15-news-hero h1 em,.v20-news-toolbar strong,.v15-news-hero>a,.v15-news-hero .v15-kicker,.v20-news-guide h2,.v15-news-hero strong,.ed-kicker){color:#ca5119!important}
body :is(.v15-news-hero,.v15-news-hero p,.v20-news-guide,.v20-news-guide p){color:#30221a}
body :is(.v15-news-hero,.v20-news-guide){background:#f6e5c9!important;border-color:#c89960!important;box-shadow:none!important}
body :is(.v15-news-toolbar button,.v20-news-controls select,.v21-news-pagination button,.v15-news-hero>a,.v21-news-story .v20-source,.v20-news-empty){background-color:#f0d0a4!important;color:#2d1c14!important;border-color:#a85523!important}
body :is(.v15-news-toolbar button:hover,.v21-news-pagination button:hover){background-color:#e16e27!important;color:#fff5e9!important}
body :is(.v15-news-toolbar h2,.v20-news-guide h2){color:#a74517!important}
body :is(.v20-news-controls label,.v20-news-controls select,.v15-news-toolbar strong,.v21-news-story .v20-source){font-family:Arial,Helvetica,sans-serif!important}
body .v21-read-source,body .v18-listing-foot .v18-visit,body .v19-graphic-visit,body .v24-graphic-visit{cursor:pointer}
/* Every saved-site affordance uses a pumpkin, never the older bat or heart. */
body .v18-listing .save{font-size:0!important}
body .v18-listing .save::after{content:'🎃'!important;filter:none!important;font-size:23px!important;display:grid;place-items:center;line-height:1!important}
body .v18-listing .save[aria-pressed=true]{background:#d76625!important;border-color:#18110e!important}
body #saved-only{font-family:Arial,Helvetica,sans-serif!important}
/* External website and archive links share the actual approved Visit image. */
body a.v24-graphic-visit{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-width:0!important;width:180px!important;max-width:100%!important;min-height:65px!important;background:transparent url('official-visit-badge-v19.png') center/contain no-repeat!important;color:transparent!important;font-size:0!important;line-height:0!important;padding:0!important;border:0!important;box-shadow:none!important;text-decoration:none!important}
body a.v24-graphic-visit:hover{filter:drop-shadow(2px 3px 0 #a04c1b)!important;transform:translateY(-1px)}
body a.v24-graphic-visit:focus-visible{outline:2px solid #be531d;outline-offset:2px}
/* News becomes newspaper-like, with whitespace rather than purple form blocks. */
.v15-news-page .v15-news-grid{gap:20px!important}
.v15-news-page .v21-news-story{background:#fff9ed!important;border:1px solid #cfad87!important;box-shadow:none!important;padding:clamp(16px,2.2vw,24px)!important}
.v15-news-page .v21-news-story h3{font-size:clamp(1.5rem,2.2vw,2.2rem)!important;color:#201914!important}
.v15-news-page .v21-story-blurb{font:400 1rem/1.7 Arial,Helvetica,sans-serif!important;color:#594739!important}
/* Full-width clean readable article pages, no panels or secondary rail. */
.article-page{background:#fff7e7!important;padding:clamp(18px,4vw,50px)!important}
.article-page .story-layout{display:block!important;grid-template-columns:none!important;max-width:none!important;gap:0!important;background:transparent!important}
.article-page .story-body,.article-page .v24-story-body{width:100%!important;max-width:1080px!important;margin:0 auto!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important}
.article-page .story-sidebar,.article-page .story-cover{display:none!important}
.article-page .story-lead{font:400 clamp(1.13rem,1.7vw,1.35rem)/1.8 Arial,Helvetica,sans-serif!important;color:#35231a!important;margin:20px 0 42px!important}
.article-page .story-section{margin:0 0 40px!important;padding:0 0 24px!important;border:0!important;border-bottom:1px solid #d8b991!important;box-shadow:none!important;background:transparent!important}
.article-page .story-section h2{font-size:clamp(2rem,3.6vw,3rem)!important;line-height:1.09!important;color:#a74719!important;margin:0 0 20px!important}
.article-page .story-section h3{font:400 clamp(1.35rem,2.4vw,1.85rem)/1.2 var(--v22-title)!important;margin:34px 0 12px!important;color:#24201b!important}
.article-page :is(.story-section p,.story-body p,.story-section li){font:400 clamp(.98rem,1.3vw,1.09rem)/1.93 Arial,Helvetica,sans-serif!important;color:#42372e!important;max-width:94ch}
.article-page .story-section p{margin-bottom:20px!important}
.article-page .story-body img{max-width:100%;height:auto}
.article-page .story-resources{max-width:100%;box-shadow:none!important;background:#f0e0c7!important;border:1px solid #bc8f65!important;padding:24px!important}
.article-page .editor-intro{max-width:1080px!important;margin:0 auto 35px!important}
.article-page .editor-intro h1{font-size:clamp(2.5rem,5vw,5rem)!important;line-height:1.06!important}
/* Watch guide main structure. */
.v24-section-head{display:flex;flex-wrap:wrap;gap:12px 30px;justify-content:space-between;align-items:end;margin:28px 0 24px;padding-bottom:13px;border-bottom:3px solid #b55420}
.v24-section-head h2{font:400 clamp(2.2rem,4.4vw,3.6rem)/1 var(--v22-title)!important;margin:4px 0 0!important;color:#ad4b1c!important}
.v24-section-head p{font:400 .96rem/1.55 Arial,Helvetica,sans-serif!important;max-width:45ch!important;color:#655143!important;margin:0!important}
.v24-watch-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.v24-video-tile{border:1px solid #cc9d67;background:#fff9ef;color:#251812;min-width:0;overflow:hidden}
.v24-video-player{aspect-ratio:16/9;background:#201612;position:relative;overflow:hidden}
.v24-play{display:block;position:absolute;inset:0;width:100%;height:100%;border:0;padding:0;cursor:pointer;background:#201612;color:#fff;overflow:hidden}
.v24-play img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.88)}
.v24-play:hover img{filter:saturate(1.05) brightness(.86)}
.v24-play-marker{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:70px;height:51px;border-radius:12px;background:#dc531d;color:white;font-size:24px;box-shadow:0 3px 18px #0009;pointer-events:none}
.v24-video-player iframe{position:absolute;inset:0;border:0;width:100%;height:100%}
.v24-video-info{padding:16px 18px 20px}
.v24-video-type{color:#b14d21;font:bold .71rem/1.4 Arial,sans-serif;text-transform:uppercase;letter-spacing:.06em}
.v24-video-info h3{font:400 clamp(1.5rem,2vw,2rem)/1.1 var(--v22-title)!important;color:#211710!important;margin:8px 0!important}
.v24-video-info p{font:400 .9rem/1.65 Arial,sans-serif!important;color:#675348!important;margin:8px 0 13px!important}
.v24-watch-original{display:inline-block;color:#a74820!important;text-decoration:underline;font:700 .84rem Arial,sans-serif!important}
.v24-watch-now{margin:26px 0 50px}
.v24-availability{font:400 .78rem/1.6 Arial,sans-serif!important;color:#6b5543!important;margin-top:15px}
/* Compact episode index, not large poster cards. */
#episode-grid.episode-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:0 26px!important;margin:10px 0 32px!important}
#episode-grid .episode-card{position:relative;min-height:0!important;display:grid!important;grid-template-columns:1fr auto!important;grid-template-rows:auto auto auto!important;gap:4px 10px!important;padding:15px 6px!important;border:0!important;border-bottom:1px solid #c69f78!important;box-shadow:none!important;background:transparent!important;color:#241812!important;transition:none!important}
#episode-grid .episode-card:hover{transform:none!important;background:#f1ddbe!important}
#episode-grid .episode-card[hidden]{display:none!important}
#episode-grid .v24-episode-meta{grid-column:1/-1;font:700 .73rem/1.2 Arial,sans-serif!important;color:#ae5227!important;letter-spacing:.055em!important;margin:0!important}
#episode-grid .v24-episode-show{grid-column:1;font:400 clamp(1.35rem,2vw,1.8rem)/1.05 var(--v22-title)!important;color:#241711!important;margin:2px 0!important}
#episode-grid .v24-episode-title{grid-column:1;font:400 .9rem/1.35 Arial,sans-serif!important;color:#5d493c!important;margin:0!important}
#episode-grid .episode-card>small{grid-column:2;grid-row:2/4;align-self:center;font:700 .66rem/1.3 Arial,sans-serif!important;color:#a44319!important;text-align:right}
.v24-vault-section{margin:66px 0 28px;scroll-margin-top:30px}
.v24-vault-section .vault-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.v24-vault-section .vault-card{display:grid;grid-template-columns:100px minmax(0,1fr);min-height:0!important;border:1px solid #c6a177;box-shadow:none;background:#fff7e9!important}
.v24-vault-section .vault-card img{width:100px;height:100%;min-height:138px;object-fit:cover}
.v24-vault-section .vault-card>div{padding:14px 16px}
.v24-vault-section .vault-card h3{font:400 1.65rem var(--v22-title)!important}
.v24-vault-section .vault-card p{font:400 .88rem/1.6 Arial,sans-serif!important}
.v24-vault-section .vault-card .vault-visit{color:#a74620}
.v24-vault-redirect{padding:65px 25px;text-align:center;background:#fff5e6;color:#271913}
.v24-vault-redirect h1{font-size:3rem}
.v24-vault-redirect a{color:#a7451b}
/* Keep the article video reel low-clutter and editorial. */
.v24-article-videos{margin:45px 0;padding:14px 0 30px;border-top:1px solid #bc915c;border-bottom:1px solid #bc915c}
.v24-article-videos-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.v24-article-videos-grid .v24-video-info{padding:14px}
.v24-article-videos .v24-section-head{border:0;margin:8px 0 16px;padding:0}
.v24-article-videos .v24-section-head h2{font-size:2.2rem!important}
.v24-article-videos .v24-video-info p{font-size:.83rem!important;line-height:1.6!important}
/* Vault is now in Watch; remove separate menu in all header and footer if lingering. */
@media(max-width:1000px){.v24-watch-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.v24-watch-grid{grid-template-columns:1fr}#episode-grid.episode-grid{grid-template-columns:1fr!important}.v24-vault-section .vault-grid{grid-template-columns:1fr}.v24-article-videos-grid{grid-template-columns:1fr}.v24-section-head{align-items:start;flex-direction:column}.article-page{padding:18px!important}}
@media(max-width:380px){#episode-grid .episode-card>small{font-size:.6rem!important}.v24-vault-section .vault-card{grid-template-columns:80px minmax(0,1fr)}.v24-vault-section .vault-card img{width:80px}}

/* Graceful artwork fallback when third-party YouTube thumbnails are unavailable. */
.v24-video-player{background:#271b16 url('tile-vintage-cartoon.webp') center/cover no-repeat}
.v24-video-tile:nth-child(2n) .v24-video-player{background-image:url('popular-ghost.webp')}
.v24-video-tile:nth-child(3n) .v24-video-player{background-image:url('tile-pumpkin.webp')}
.v24-video-tile:nth-child(5n) .v24-video-player{background-image:url('feature-black-cat.webp')}
.v24-video-player img:not([src]){display:none}
/* Remaining older pink/purple metadata overridden on news and search pages. */
body .v15-news-toolbar p,body .v15-news-item small,body .v15-news-item .v15-news-date,body .v15-news-hero p{color:#754d32!important}
body .v15-news-hero h1{color:#4b2b1a!important}
body .v15-news-placeholder h2{color:#ac501b!important}
body :is(.v15-news-page .v15-kicker,.v15-news-page .ed-kicker){color:#a74919!important}
/* Show the playable shelf sooner on phones; reduce the giant intro panel. */
.editorial-page:has(.v24-watch-now)>.editor-intro{padding:20px 24px!important;margin:6px 0 12px!important;min-height:0!important}
.editorial-page:has(.v24-watch-now)>.editor-intro h1{font-size:clamp(2.3rem,4.7vw,3.6rem)!important;line-height:1.02!important;margin:8px 0!important}
.editorial-page:has(.v24-watch-now)>.editor-intro p{max-width:90ch!important;font-size:.97rem!important;line-height:1.55!important;margin:10px 0 0!important}
.editorial-page:has(.v24-watch-now) .v24-watch-now{margin:10px 0 50px!important}
@media(max-width:720px){.editorial-page:has(.v24-watch-now)>.editor-intro{padding:14px!important}.editorial-page:has(.v24-watch-now)>.editor-intro h1{font-size:2.35rem!important}.editorial-page:has(.v24-watch-now)>.editor-intro p{font-size:.92rem!important}.editorial-page:has(.v24-watch-now) .v24-section-head{margin:10px 0 15px}.editorial-page:has(.v24-watch-now) .v24-section-head h2{font-size:2.2rem!important}}
/* Reading room: typographic opening, not another enormous colored card. */
.article-page .editor-intro{background:transparent!important;border:0!important;border-bottom:2px solid #bc7440!important;padding:12px 0 26px!important;box-shadow:none!important}
.article-page .editor-intro h1{font-size:clamp(2.2rem,3.4vw,3.65rem)!important;max-width:24ch!important;line-height:1.05!important}
.article-page .editor-intro>p{font:400 1.08rem/1.75 Arial,Helvetica,sans-serif!important;max-width:74ch!important}
.article-page .editor-intro .ed-kicker{font:bold .72rem/1.4 Arial,Helvetica,sans-serif!important;letter-spacing:.1em!important}
