/* Adapt the approved prototype to server-rendered responsive images. */
.hero{background:#080808;isolation:isolate;overflow:hidden}.hero>.post-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#000e,#0009 45%,#0001);z-index:-1}.hero h1{font-size:clamp(42px,4.8vw,76px);line-height:1}.image-card,.feature-main{isolation:isolate}.image-card>.post-photo,.feature-main>.post-photo{position:absolute;width:100%;height:100%;object-fit:cover;inset:0;z-index:-2}.image-card:after,.feature-main:after{z-index:-1}.video-card:after{content:none}.video-thumb>.post-photo{width:100%;height:100%;object-fit:cover}.right-card .card-content{position:static;padding:10px;min-width:0}.right-card>.post-photo{width:45%;height:120px;flex-shrink:0;object-fit:cover}.right-card h3{font-size:16px;line-height:1.2}.right-card time{font-size:9px}.feature-main{height:100%;min-height:240px}.feature-main .card-content{position:absolute;bottom:12px;left:12px;right:12px}.feature-main h3{position:static;font-size:24px;line-height:1.05}.feature-main .tag,.feature-main time{display:none}.feature-list .post-photo{object-fit:cover}.editorial-row>.feature-section:last-child{grid-column:auto}.editorial-row>.feature-section:last-child .feature-layout{max-width:none}.event-thumb{background:linear-gradient(135deg,#f28a2e,#f3e7d2)}.event-thumb img{width:100%;height:100%;object-fit:cover}.events-grid>p{grid-column:1/-1}.network-art .brand-placeholder{display:block;color:#f28a2e}.social-links svg{fill:none;stroke:currentColor;stroke-width:1.8}.preview-report{margin-block:28px;color:#bbb;font:12px/1.6 Inter,sans-serif}.preview-report summary{cursor:pointer}.empty{color:#aaa;font-size:13px}.preview-search{background:#111;color:white;border:1px solid #f28a2e;width:min(600px,90vw);padding:30px}.preview-search::backdrop{background:#000d}.preview-search form{display:flex;flex-wrap:wrap;gap:16px}.preview-search label{width:100%;font-size:24px}.preview-search input{min-width:0;flex:1;padding:12px}.preview-search button{padding:12px;background:#f28a2e;border:0}.main-nav ul{list-style:none}:focus-visible{outline:2px solid #f28a2e;outline-offset:4px}
.preview-search .search-close{position:static;font-size:13px;color:#111;cursor:pointer}
@media(max-width:900px){.header-inner{gap:20px}.main-nav{gap:14px}.editorial-row{grid-template-columns:1fr}.feature-layout{grid-template-columns:1.5fr 1fr}}
@media(max-width:720px){.main-nav{position:absolute}.hero{min-height:450px}.hero-copy{padding:35px 16px 60px}.hero:after{background:linear-gradient(0deg,#000f,#0009 65%,#0002)}.feature-layout{grid-template-columns:1fr}.feature-main{min-height:230px}.header-actions .icon-btn{display:block}.header-actions{margin-left:auto}.header-inner .menu-toggle{order:3}.header-inner .header-actions{order:2}}

/* Real-content guardrails; retain the approved colors, order and graphics. */
.hero{height:560px;min-height:520px;max-height:600px;padding:0}
.hero-copy{width:min(680px,62%);max-width:680px;padding:36px 40px 58px}
.hero h1{font-size:clamp(36px,3.3vw,54px);line-height:1.04;max-width:22ch;overflow-wrap:anywhere;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden}
.hero p{max-width:43ch;font-size:13px;line-height:1.45;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.hero .eyebrow{background:#f28a2e;color:#090909}
.story-grid .image-card{height:210px}
.story-grid .card-content h3{font-size:clamp(20px,1.6vw,25px);line-height:1.08;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden}
.trending-track a{max-width:46ch;overflow:hidden;text-overflow:ellipsis;flex-shrink:0}
.right-card{display:flex;flex-direction:column;min-width:0}
.right-card>.post-photo{width:100%;height:160px;min-height:0;object-fit:cover}
.right-card .card-content{padding:12px 14px 14px}
.right-card h3{font-size:17px;line-height:1.3;margin:7px 0 9px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}
.right-card time{font-size:10px}
.editorial-row:empty{display:none}
.editorial-row>.feature-section:only-child{grid-column:1/-1}
.feature-layout{align-items:start}
.feature-main{height:330px;min-height:0}
.feature-main h3{font-size:clamp(23px,2vw,30px);line-height:1.08;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:5;overflow:hidden}
.feature-list a{min-height:74px;font-size:13px;line-height:1.35}
.feature-list a span{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden}
.feature-list .post-photo{width:82px;height:62px;flex-basis:82px}
.fact-check .feature-main{background:#181b20;display:flex;flex-direction:column;height:auto;min-height:300px}
.fact-check .feature-main>.post-photo{position:static;width:100%;height:164px;object-fit:contain;padding:18px;background:#e5e0d5;z-index:auto}
.fact-check .feature-main:after{display:none}
.fact-check .feature-main .card-content{position:static;padding:16px}
.fact-check .feature-main h3{font-size:26px}
.fact-check .feature-list .post-photo{object-fit:contain;background:#e5e0d5;padding:5px}
.post-photo.image-contained{object-fit:contain;background:#161a1e}
.fact-check .post-photo.image-contained{background:#e5e0d5}
.video-thumb>.post-photo.image-contained{object-fit:contain}
.connected,.share-story{min-height:0;padding:16px 22px}
.connected h2,.share-story h2{font-size:29px}
.connected p,.share-story p{margin-bottom:10px}
.share-story .eyebrow{padding:3px 7px;margin-bottom:5px;font-size:9px}
.social-links b{width:32px;height:32px}
.events-band{background:#cb9a59}
.events-band .event-card{background:#f2d7ae;border-color:#b27d3b}
.events-grid:empty{display:none}
.audio-card .network-art img{max-width:calc(100% - 64px);height:72px;object-fit:contain}
.preview-report table{width:100%;border-collapse:collapse;text-align:left}
.preview-report th,.preview-report td{padding:8px;border-bottom:1px solid #30363c;vertical-align:top}
.preview-report pre{font-size:11px}
@media(max-width:1050px){.right-now-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-copy{width:70%}.feature-layout{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr)}}
@media(max-width:900px){.editorial-row{display:grid;grid-template-columns:1fr}.feature-main{height:300px}}
@media(max-width:720px){.hero{height:520px;min-height:0;max-height:560px;align-items:flex-end}.hero-copy{width:100%;max-width:100%;padding:28px 18px 58px}.hero h1{font-size:clamp(32px,7vw,44px);max-width:24ch}.hero-meta{left:18px;font-size:10px}.story-grid .image-card{height:215px}.story-grid .card-content h3{font-size:21px}.right-card>.post-photo{height:140px}.right-card h3{font-size:16px}.feature-layout{grid-template-columns:1fr}.feature-main{height:260px}.feature-list{grid-template-columns:1fr}.feature-list .post-photo{width:92px;height:64px;flex-basis:92px}.connected,.share-story{padding:18px}.preview-report{overflow-x:auto}}
@media(max-width:430px){.right-now-grid{grid-template-columns:1fr}.right-card>.post-photo{height:190px}.hero h1{font-size:34px}.story-grid .image-card{height:225px}.story-grid .card-content h3{font-size:20px}}

/* Keep source artwork and missing-photo graphics separate from headlines. */
.feature-main:has(>.image-contained),.feature-main:has(>.fallback-photo){display:flex;flex-direction:column;height:auto;min-height:300px;background:#15191d}
.feature-main>.image-contained,.feature-main>.fallback-photo{position:static;width:100%;height:170px;object-fit:contain;padding:16px;z-index:auto}
.feature-main:has(>.image-contained):after,.feature-main:has(>.fallback-photo):after{display:none}
.feature-main:has(>.image-contained) .card-content,.feature-main:has(>.fallback-photo) .card-content{position:static;padding:16px}
.image-card:after{inset:0;background:linear-gradient(transparent 10%,rgba(0,0,0,.65) 50%,rgba(0,0,0,.96))}

/* Restore the existing event card grid with real thumbnails and long titles. */
.events-band .event-card{grid-template-columns:42px minmax(0,1fr) 22px;grid-template-rows:58px auto;min-width:0}
.events-band .event-thumb{grid-column:2/4;grid-row:1;min-width:0}
.events-band .event-card>div:not(.event-thumb){grid-column:2;grid-row:2;min-width:0}
.events-band .event-card>span{grid-column:3;grid-row:2}
.events-band .event-card time{grid-column:1;grid-row:1/3;line-height:1.15}

/* Hybrid desktop width: bounded editorial content, full-width supporting bands. */
:root{--max:1600px}
.trending-band{width:100%;background:#0c1115;border-bottom:1px solid var(--line)}
.trending-band .trending{border-bottom:0}
@media(min-width:1100px){.container{width:min(var(--max),calc(100% - 80px))}}

/* Keep all five upcoming events available on tablets as well as phones. */
@media (min-width:721px) and (max-width:1050px){.events-band .events-grid{display:flex;overflow-x:auto;padding-bottom:8px;scroll-snap-type:x proximity}.events-band .event-card{display:grid;flex:0 0 calc((100% - 20px)/3);scroll-snap-align:start}}

@media(max-width:720px){.video-row{margin-right:0}}

/* WordPress integration and resilient content sizing; redesign routes only. */
body.wnymedia-redesign{margin:0;background:var(--bg);color:var(--text);font-family:Inter,Arial,sans-serif}
.wnymedia-redesign .editorial-row:empty,.wnymedia-redesign .story-grid:empty{display:none}
.wnymedia-redesign .brand-placeholder[hidden]{display:none}
.wnymedia-redesign .network-art .brand-placeholder:not([hidden]){display:block}
.wnymedia-redesign h1,.wnymedia-redesign h2,.wnymedia-redesign h3,.wnymedia-redesign .feature-list span{overflow-wrap:anywhere}
.wnymedia-redesign.admin-bar .site-header{top:32px}
@media(max-width:782px){.wnymedia-redesign.admin-bar .site-header{top:46px}}
@media(max-width:600px){.wnymedia-redesign.admin-bar .site-header{top:0}}

/* Explicit text colors prevent the active Newspaper theme's heading defaults
   from leaking into the standalone homepage, without altering interior pages. */
body.wnymedia-redesign .hero h1,
body.wnymedia-redesign .card-content h3,
body.wnymedia-redesign .video-card h3,
body.wnymedia-redesign .share-story h2,
body.wnymedia-redesign .section-heading h2{color:var(--text)}
body.wnymedia-redesign .connected h2{color:#0b0d0e}
body.wnymedia-redesign .fact-check .section-heading h2{color:#e8c35a}
body.wnymedia-redesign .events-band .section-heading h2,
body.wnymedia-redesign .events-band .event-card h3{color:#111}

/* Podcasts is an informational card until its destination is ready. */
.network-card.podcasts-coming-soon{position:relative;overflow:hidden;cursor:default}
.network-card.podcasts-coming-soon:hover{border-color:var(--line);transform:none}
.podcasts-coming-soon .network-art,.podcasts-coming-soon>p{opacity:.35}
.podcasts-coming-soon .coming-soon-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:linear-gradient(120deg,#080c1040,#080c1080)}
.podcasts-coming-soon .coming-soon-overlay span{color:#101010;background:linear-gradient(120deg,#f28a2e,#ffb24f);border:1px solid #ffc778;border-radius:4px;padding:9px 16px;font:800 14px/1.1 Inter,Arial,sans-serif;letter-spacing:.1em;box-shadow:0 3px 18px #0008;transform:rotate(-5deg)}

/* Accessible inline video pop-out; embeds load only after a visitor clicks. */
.homepage-video-open{overflow:hidden}
.homepage-video-player{width:min(1000px,calc(100vw - 32px));max-width:none;max-height:calc(100dvh - 32px);padding:18px;margin:auto;background:#0c1115;color:#f5f7f8;border:1px solid #f28a2e;border-radius:10px;overflow:auto;box-shadow:0 20px 90px #000a}
.homepage-video-player::backdrop{background:#000d}
.video-dialog-header{display:flex;align-items:flex-start;gap:16px;justify-content:space-between;margin-bottom:14px}
body.wnymedia-redesign #homepage-video-title{color:#f5f7f8;font:700 20px/1.3 Inter,Arial,sans-serif;margin:0;overflow-wrap:anywhere}
.video-dialog-close{flex:0 0 40px;width:40px;height:40px;border:1px solid #53606b;border-radius:50%;background:#151c22;color:#fff;cursor:pointer;font-size:20px}
.video-player-stage{aspect-ratio:16/9;background:#000}
.video-player-stage iframe,.video-player-stage video{display:block;width:100%;height:100%;border:0;margin:0}
.video-player-stage[hidden],.video-player-fallback[hidden]{display:none}
.homepage-video-player .video-original-link{display:inline-block;color:#f28a2e;font:700 12px/1.4 Inter,Arial,sans-serif;margin-top:14px}
@media(max-width:600px){.homepage-video-player{padding:12px;width:calc(100vw - 16px)}body.wnymedia-redesign #homepage-video-title{font-size:16px}}
