/* ThisIsHalloween.TV V1.8 — illustrated retro masthead, three-column directory and breathing room for stories. */
.site-head .masthead{min-height:169px!important;gap:12px!important;padding:12px 15px!important;align-items:center;max-width:1198px!important}
.masthead .brand.v18-brand{display:flex!important;align-items:center!important;flex:1 1 730px!important;max-width:calc(100% - 296px)!important;min-width:0!important;height:auto!important;width:auto!important;overflow:visible!important;text-decoration:none;gap:4px!important}
.v18-brand .v18-tv-wrap{display:block;position:relative;flex:0 0 clamp(100px,12vw,170px);max-width:26%;align-self:center}
.v18-brand .v18-tv-wrap img{width:100%!important;height:auto!important;object-fit:contain!important;display:block!important}
.v18-brand .v18-tv-wrap .v18-tv-still{display:none!important}
.v18-brand .v18-brand-wordmark{flex:1 1 auto;min-width:0;width:100%!important;height:auto!important;object-fit:contain!important;display:block!important}
.masthead .brand-tagline{position:static!important;display:none!important;transform:none!important}
.masthead .head-search{flex:0 1 292px!important;width:292px!important;max-width:31%!important;margin:0 4px 0 0!important;height:52px!important;border:4px solid #1a1310!important;border-radius:100px!important;box-shadow:3px 4px 0 #d89d69!important;background:#fffaf2!important;overflow:hidden!important}
.masthead .head-search input{border:0!important;min-width:0;border-radius:40px 0 0 40px!important;background:transparent!important;padding-left:17px!important;font-size:.84rem!important}
.masthead .head-search button{border-radius:0 40px 40px 0!important;background:#e9691a!important;min-width:56px!important;border-left:3px solid #19130e!important}
.masthead .head-search:focus-within{box-shadow:0 0 0 4px #e4a65a!important}
.v18-directory-note{font-size:.76rem;color:#67513c;margin:5px 0 18px;max-width:790px;line-height:1.4}
/* 3 columns: compact cards with clear thumbnails and readable link-first text. */
main .cards:has(.v18-listing){display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:17px!important;background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;margin:16px 0 22px!important;align-items:stretch!important}
main .cards .v18-listing{min-width:0!important;display:flex!important;flex-direction:column!important;background:#fff9ec!important;border:2px solid #c8a37b!important;border-radius:2px!important;box-shadow:3px 4px #e6c8a1!important;padding:8px!important;margin:0!important;min-height:0!important;align-items:stretch!important;gap:0!important;overflow:hidden!important}
main .cards .v18-listing:nth-child(even){background:#f8ebd5!important}
.v18-site-thumb{display:block;position:relative;overflow:hidden;width:100%;aspect-ratio:1.55;background:repeating-linear-gradient(-22deg,#281a12 0 10px,#3c2c20 10px 19px);border:1px solid #16100b;text-decoration:none}
.v18-site-thumb img{position:absolute;inset:0;width:100%!important;height:100%!important;object-fit:cover;object-position:top center;filter:saturate(.8);transition:transform .25s;z-index:1}
.v18-site-thumb:hover img{transform:scale(1.04)}
.v18-thumb-fallback{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:12px;color:#f6d7a7;text-transform:uppercase;letter-spacing:.08em;font-size:.77rem;font-weight:800;text-align:center;overflow-wrap:anywhere}
.v18-thumb-glyph{font-size:2.2rem;color:#ef832d}
.v18-listing-copy{display:flex;flex-direction:column;flex:1;min-height:0;padding:12px 7px 5px!important}
.v18-category,.v18-sister{font-size:.61rem!important;font-weight:900;color:#a64916;text-transform:uppercase;letter-spacing:.08em;line-height:1.3}
.v18-listing h3{font-size:1.18rem!important;line-height:1.21!important;margin:7px 0 7px!important;font-weight:700!important;letter-spacing:-.022em!important}
.v18-listing h3 a{color:#201710!important;text-decoration:none}
.v18-listing h3 a:hover{color:#bf4f13;text-decoration:underline}
.v18-listing-copy>p{font-size:.79rem!important;line-height:1.48!important;color:#68513b!important;margin:0 0 13px!important;flex:1}
.v18-listing-foot{display:flex;align-items:center;gap:7px;min-width:0;padding:9px 0 0;border-top:1px dashed #d7b88e}
.v18-domain{font-size:.65rem!important;color:#79563a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;flex:1}
.v18-listing .save{width:29px!important;height:29px!important;padding:0!important;font-size:1.15rem!important;line-height:1!important;flex:0 0 29px;background:#fff3dc!important;border:1px solid #c9a37d!important;color:#a84916!important;cursor:pointer}
.v18-listing .save[aria-pressed=true]{background:#f8c990!important}
.v18-visit{display:inline-block;background:#1e1711;color:#fff4df!important;padding:8px 8px;font-size:.65rem!important;line-height:1;font-weight:900!important;text-decoration:none;white-space:nowrap}
.v18-visit:hover{background:#d86621!important}
/* Generous story spacing and carefully licensed historical illustrations */
.article-page .story-body{max-width:none!important;line-height:1.9!important}
.article-page .story-body p{font-size:clamp(.99rem,1.2vw,1.1rem)!important;line-height:1.9!important;margin:0 0 24px!important;color:#483a2c!important}
.article-page .story-body .story-lead{font-size:clamp(1.08rem,1.6vw,1.22rem)!important;line-height:1.87!important;margin:0 0 36px!important}
.article-page .story-section{padding:0 0 12px!important;margin:0 0 40px!important}
.article-page .story-section h2{margin:0 0 20px!important;line-height:1.24!important}
.article-page .story-section ul,.article-page .story-section ol{margin:0 0 24px;padding-left:28px}
.article-page .story-section li{line-height:1.8;margin-bottom:11px}
.article-page .editor-intro{padding-bottom:43px!important}
.article-page .editor-intro p{line-height:1.7!important;max-width:800px!important}
.v18-archival-art{margin:25px auto 53px!important;width:min(94%,725px);background:#fff4de;padding:15px 16px 13px!important;border:1px solid #c7a278;box-shadow:7px 9px 0 #ddbc91;transform:rotate(-.65deg);overflow:hidden}
.v18-archival-art:nth-of-type(2n){transform:rotate(.65deg)}
.v18-archival-photo{min-height:180px;background:repeating-linear-gradient(26deg,#e6c79e 0 22px,#eedabc 22px 44px);display:grid;place-items:center;overflow:hidden}
.v18-archival-photo img{display:block;max-width:100%;height:auto;max-height:390px;object-fit:contain;margin:auto}
.v18-archival-art figcaption{margin-top:10px;display:flex;flex-direction:column;gap:3px;color:#362417;font-weight:700;line-height:1.4;font-size:.87rem}
.v18-archival-art figcaption small{font-weight:400!important;font-size:.72rem;color:#795e45}
.v18-archival-art figcaption a{color:#9a4717;text-decoration:underline}
.v18-archival-art.v18-archive-unavailable{display:none}
/* Keep site typography vintage headline + plain, readable body. */
@media(min-width:980px){.article-page .story-layout{gap:55px!important}.article-page .story-body{max-width:750px!important}}
@media(max-width:1040px){.site-head .masthead{flex-wrap:wrap!important;justify-content:center!important}.masthead .brand.v18-brand{max-width:100%!important;flex-basis:100%!important;justify-content:center!important}.masthead .head-search{max-width:440px!important;width:min(440px,96%)!important;flex-basis:auto!important}.v18-brand .v18-tv-wrap{flex-basis:130px}}
@media(max-width:960px){main .cards:has(.v18-listing){grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:600px){.site-head .masthead{min-height:unset!important;padding:10px 10px 12px!important;gap:10px!important}.masthead .brand.v18-brand{gap:0!important}.v18-brand .v18-tv-wrap{flex-basis:90px;max-width:25%}.masthead .head-search{max-width:100%!important;width:100%!important;height:45px!important}.v18-listing h3{font-size:1.08rem!important}.article-page .story-body p{font-size:1rem!important}.v18-archival-art{width:100%;transform:none!important}}
@media(max-width:560px){main .cards:has(.v18-listing){grid-template-columns:minmax(0,1fr)!important;gap:14px!important}.v18-site-thumb{aspect-ratio:1.9}.v18-listing-copy>p{font-size:.86rem!important}.v18-listing-copy{padding:12px 9px 8px!important}}
@media(prefers-reduced-motion:reduce){.v18-brand .v18-tv-wrap .v18-tv-motion{display:none!important}.v18-brand .v18-tv-wrap .v18-tv-still{display:block!important}.v18-site-thumb img{transition:none!important}}
