/* Recovery: retain the V19 newspaper proportions and V20 reading/filter features. */
:root{--section-gap:80px}
.topbar,.masthead,.mainnav{background:#fff;color:#17191b;box-shadow:none;border-radius:0}
.topbar{border-bottom:1px solid #e5e5e5}
.topbar .date,.topbar .toplinks a,.topbar b{color:#555}
.masthead{height:86px;border:0;padding:0;margin:0;position:relative}
.masthead .logo img{width:270px;height:auto}
.brand-subline{color:#666;border-color:#ddd}
.mast-search{border-bottom:1px solid #aaa;color:#17191b}
.mast-search input,.mast-search button{color:#17191b}
.mast-search input::placeholder{color:#666}
.nav-anchor{height:60px;margin:0;padding:0}
.mainnav,.mainnav.is-scrolled{width:100%;max-width:none;margin:0;padding:0;inset:auto;top:0;border:0;border-bottom:1px solid rgba(17,17,17,.75);background:#fff;box-shadow:none;transform:none;border-radius:0;position:relative;z-index:60}
.mainnav.is-scrolled{position:fixed;top:0;left:0;right:0}
.mainnav .navrow{height:60px;min-height:60px;align-items:center;padding-block:0}
.mainnav .navscroll{min-width:0;align-items:center;gap:22px}
.mainnav .navscroll a{color:#17191b;font-size:14px;min-height:44px;padding-block:12px}
.mainnav .compact-brand{flex:0 0 auto}
.mainnav .compact-brand img{width:142px;height:auto}
.mainnav .compact-search{color:#17191b;flex:0 0 44px;min-height:44px}
.mainnav.is-scrolled .compact-brand,.mainnav.is-scrolled .compact-search{display:flex;align-items:center}
.districtbar{background:#fff;border-bottom:1px solid #e5e5e5}
.edition-label{padding-block:18px;font-size:12px}
.desk{padding-top:0;margin-top:var(--section-gap)}
.desk-heading,.section-head{border-top-width:1px}
.frontpage-grid{grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:32px}
.front-lead .media{aspect-ratio:3/2;border-radius:4px}
.front-lead>.front-lead-copy h1{font-family:var(--serif);font-weight:650;font-size:clamp(32px,3.4vw,48px);line-height:1.08;letter-spacing:-.025em}
.front-lead-copy>p{font-size:18px;line-height:1.5}
.front-side{padding-left:28px}
.front-brief,.front-brief.secondary-lead{display:grid;grid-template-columns:130px minmax(0,1fr);gap:18px;padding:20px 0}
.front-brief .brief-image{grid-column:1;grid-row:1}
.front-brief>div{grid-column:2;grid-row:1;padding:0}
.front-brief .media,.secondary-lead .media{width:130px;height:100px;aspect-ratio:auto}
.front-brief h2,.secondary-lead h2{font-size:21px;line-height:1.22}
.front-lead .media.contain img{object-fit:contain;padding:0;background:#f4f4f2}
.front-lead .badge,.desk-card .badge,.front-brief .badge{font-size:10px;padding:3px 6px;background:#fffE;color:#555;max-width:90%;line-height:1.25}
.news-mosaic .mosaic-lead h3,.people-major h3{font-family:var(--serif);font-weight:600;letter-spacing:-.015em}
.news-mosaic .mosaic-lead .media{aspect-ratio:3/2}
.fire-desk{background:#f6f6f5;color:#17191b;padding:32px 0}
.fire-desk .desk-heading{border-color:#777}
.fire-desk .desk-heading .eyebrow,.fire-desk .desk-more{color:#665b45}
.fire-major .media{aspect-ratio:3/2}
.reader-note{margin-block:64px;padding-block:24px}
footer{margin-top:64px;padding-top:32px}
/* V19's separate team/score zones, with the existing real crest and full table data. */
.sports-module{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;border:0}
.match-panel{min-width:0;padding:20px 0;border-top:1px solid #333;border-bottom:1px solid #ddd}
.match-heading{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;font-size:12px;color:#666}
.match-heading b{color:#17191b;font-size:13px;text-transform:uppercase;letter-spacing:.04em}
.match-grid{display:grid;grid-template-columns:minmax(0,1fr) 92px minmax(0,1fr);align-items:center;gap:16px;margin:24px 0;min-height:110px}
.match-team{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;text-align:center;min-width:0}
.match-team img{width:58px;height:58px;object-fit:contain;max-width:none}
.match-team b{display:block;font-size:16px;line-height:1.35;overflow-wrap:break-word}
.match-score{display:block;font-size:38px;font-weight:750;text-align:center;line-height:1;white-space:nowrap;font-variant-numeric:tabular-nums}
.match-versus{font-size:14px;text-align:center;color:#666}
.match-source{display:block;font-size:13px;color:#66552f;text-align:center;min-height:32px}
.sports-module .league-panel{grid-column:1/-1;min-width:0;padding:0;border:0}
.league-heading{display:flex;justify-content:space-between;gap:16px;align-items:baseline;margin:4px 0 12px}
.league-heading h3{font-size:20px;margin:0}
.league-heading span{font-size:12px;color:#666}
.league-scroll{overflow-x:auto;max-width:100%;border-top:1px solid #222;border-bottom:1px solid #ddd}
.league-table{width:100%;min-width:620px;border-collapse:collapse;font-size:14px;font-variant-numeric:tabular-nums}
.league-table th,.league-table td{padding:12px 14px;border-bottom:1px solid #e6e6e6;text-align:right;white-space:nowrap}
.league-table thead th{background:#f5f5f4;font-weight:650;color:#444}
.league-table th:nth-child(2){text-align:left;white-space:normal;min-width:200px}
.league-table tbody th{font-weight:500}
.league-table .home-team{background:#f4f0e4}
.league-table .home-team th,.league-table .home-team td:last-child{font-weight:750}
.league-table td:last-child{font-weight:750}
.league-panel>a{display:inline-block;padding-top:12px;font-size:14px}
@media(max-width:1100px){.frontpage-grid{grid-template-columns:1.4fr 1fr;gap:24px}.front-side{padding-left:24px}.front-brief,.front-brief.secondary-lead{grid-template-columns:104px minmax(0,1fr);gap:14px}.front-brief .media,.secondary-lead .media{width:104px;height:88px}.front-brief h2,.secondary-lead h2{font-size:18px}.match-grid{gap:10px;grid-template-columns:minmax(0,1fr) 80px minmax(0,1fr)}}
@media(max-width:767px){:root{--section-gap:54px}.masthead{position:sticky;top:0;left:0;right:0;width:100%;height:64px;z-index:65;border-bottom:1px solid rgba(17,17,17,.75);margin:0;padding:0}.masthead .logo img{width:200px}.mast-actions .menu-btn,.mast-actions .mobile-search{color:#17191b}.nav-anchor{height:46px}.mainnav,.mainnav.is-scrolled{position:relative;top:0;inset-inline:0;border-bottom:1px solid #ddd;z-index:40}.mainnav .navrow{height:46px;min-height:46px}.mainnav .compact-brand,.mainnav.is-scrolled .compact-brand,.mainnav .compact-search,.mainnav.is-scrolled .compact-search{display:none}.mainnav .navscroll a{font-size:14px;padding:10px 0}.frontpage-grid{grid-template-columns:1fr;gap:22px}.front-lead .media{aspect-ratio:16/10}.front-lead>.front-lead-copy h1{font-size:33px}.front-lead-copy>p{font-size:16px}.front-side{padding:12px 0 0;border-left:0}.front-brief,.front-brief.secondary-lead{grid-template-columns:120px minmax(0,1fr);gap:16px;padding:18px 0}.front-brief .media,.secondary-lead .media{width:120px;height:90px}.front-brief h2,.secondary-lead h2{font-size:18px}.news-mosaic>.mosaic-lead{display:block;padding-bottom:24px}.news-mosaic>.mosaic-lead .media{width:100%;height:auto;aspect-ratio:16/10}.news-mosaic>.mosaic-lead>div{padding-top:14px}.news-mosaic>.mosaic-lead h3{font-size:27px;display:block;overflow:visible}.news-mosaic>.mosaic-lead p{display:block;font-size:16px}.sports-module{grid-template-columns:1fr;gap:20px}.match-grid{grid-template-columns:minmax(0,1fr) 84px minmax(0,1fr);gap:12px;margin:20px 0;min-height:104px}.match-team b{font-size:16px}.match-team img{width:52px;height:52px}.match-score{font-size:36px}.league-table th,.league-table td{padding:11px 12px}.league-heading{flex-wrap:wrap;gap:6px}.fire-major .media{aspect-ratio:16/10}.reader-note,footer{margin-top:54px}}
@media(max-width:359px){.masthead .logo img{width:176px}.front-brief,.front-brief.secondary-lead{grid-template-columns:108px minmax(0,1fr);gap:12px}.front-brief .media{width:108px}.match-grid{grid-template-columns:minmax(0,1fr) 70px minmax(0,1fr);gap:8px}.match-score{font-size:32px}.match-team b{font-size:15px}}
@media print{.nav-anchor{display:none}.masthead{position:static}.league-scroll{overflow:visible}}

/* Restore V19 scoreboard geometry in the WordPress companion templates as well. */
.sportboard .score-result>div{display:grid;grid-template-columns:minmax(0,1fr) 84px minmax(0,1fr);gap:12px;align-items:center;margin:20px 0}.sportboard .score-result strong{font-size:36px;white-space:nowrap}.sportboard .score-result b{font-size:16px;line-height:1.35}.sportboard .next-fixture>b{display:block;line-height:1.6;margin-top:12px}
@media(prefers-reduced-motion:no-preference){.mainnav .compact-brand img{transition:width 220ms ease-out}}

/* Regional newspaper delivery: shared by preview and WordPress. */
:root{--brand-red:#c71920;--paper:#fff;--ink:#17191b;--line:#dcdedc;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--space-20:80px}
.masthead{background:#fff;color:var(--ink);border:0;box-shadow:none}.masthead .mast-inner{min-height:84px;display:grid;grid-template-columns:220px minmax(260px,540px) 1fr;gap:32px;align-items:center}.masthead .logo{width:auto;display:block}.masthead .logo img{height:40px;width:auto;max-width:100%;object-fit:contain}.masthead .mast-search{width:100%;max-width:540px;display:flex;margin:0;background:#fff;color:var(--ink);border:1px solid var(--line)}.mast-search input{text-align:left;min-width:0;height:44px;background:#fff;color:var(--ink)}.mast-actions{justify-content:flex-end;min-width:0}.header-local{display:flex;gap:4px 12px;justify-content:flex-end;flex-wrap:wrap;max-width:270px;font-size:13px;font-variant-numeric:tabular-nums;color:#444}.header-local [data-today]{flex-basis:100%;text-align:right}.mainnav,.mainnav.is-scrolled{background:#fff!important;color:var(--ink);border-bottom:1px solid rgba(15,15,15,.85);border-radius:0;box-shadow:none;left:0;right:0;top:0;margin:0;width:100%}.mainnav .navrow{gap:20px;position:relative;flex-wrap:nowrap}.mainnav .navscroll{overflow:hidden;min-width:0;flex:1;flex-wrap:nowrap;gap:20px;white-space:nowrap}.mainnav .navscroll a,.mainnav .navscroll li{flex-shrink:0;white-space:nowrap}.nav-more{position:relative;flex:none;font-size:14px;font-weight:700;align-self:stretch;display:flex;align-items:center}.nav-more summary{min-height:48px;display:flex;align-items:center;gap:8px;cursor:pointer;list-style:none}.nav-more summary:after{content:'⌄';font-size:16px}.nav-more summary::-webkit-details-marker{display:none}.more-links{position:absolute;right:0;top:100%;min-width:250px;padding:16px 20px;background:#fff;border:1px solid var(--line);border-top:1px solid var(--ink);z-index:100;box-shadow:0 8px 16px #0000000a}.more-links a{display:block;padding:10px 0;color:var(--ink);white-space:normal;font-size:14px}.nav-more:not([open]) .more-links{display:none}.districtbar{border-bottom:1px solid var(--line)}
.location-line{font-size:12px;font-weight:750;line-height:1.4;letter-spacing:.035em;color:var(--ink);margin:12px 0 4px}.location-brand{color:var(--brand-red)}.kicker{font-size:11px;letter-spacing:.055em;color:#676767;margin-bottom:8px}.story-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:16px}.read-more,.v20 a.read-more{display:inline-flex;align-items:center;justify-content:center;background:#fff;color:var(--brand-red);border:1px solid var(--brand-red);border-radius:4px;padding:9px 15px;min-height:40px;font-size:13px;font-weight:700;text-decoration:none;line-height:1.3;transition:background 180ms,color 180ms}.read-more:hover,.read-more:focus-visible{background:var(--brand-red);color:#fff}.comment-count{font-size:12px;color:#686868}.media .badge{font-size:9px;line-height:1.3;max-width:90%;padding:4px 6px}.media-ai-label{display:block;font-size:12px;font-weight:600;color:var(--ink);padding:6px 0}
.portal-top{display:grid;grid-template-columns:240px minmax(0,1fr);gap:32px;align-items:start;margin-top:24px}.portal-top.has-ads{grid-template-columns:220px minmax(0,1fr) 220px;gap:24px}.portal-news{min-width:0}.portal-news>.shell{width:100%;max-width:none;padding:0;margin:0}.portal-news .frontpage-grid{grid-template-columns:minmax(0,1.5fr) minmax(240px,1fr);gap:24px}.portal-news .front-lead h1{font-size:clamp(30px,2.9vw,44px);line-height:1.08}.portal-news .front-lead-copy>p{font-size:16px;line-height:1.55}.portal-news .front-side .secondary-lead .media{aspect-ratio:16/9}.portal-news .front-brief h2{font-size:20px;line-height:1.18}.portal-top.has-ads .frontpage-grid{grid-template-columns:1fr}.portal-top.has-ads .front-side{display:grid;grid-template-columns:1fr 1fr;gap:20px}.portal-service{border-top:1px solid var(--ink);min-width:0}.service-title{font-size:22px;margin:16px 0}.service-accordion{border-bottom:1px solid var(--line);background:#fff}.service-accordion>summary{padding:16px 0;min-height:48px;font-size:14px;font-weight:700;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:8px}.service-accordion>summary::-webkit-details-marker{display:none}.service-accordion>summary:after{content:'+'}.service-accordion[open]>summary:after{content:'−'}.service-accordion>div{padding:0 0 20px;font-size:13px;line-height:1.5}.service-accordion .agenda-row{grid-template-columns:36px minmax(0,1fr);gap:10px;padding:12px 0}.service-accordion .agenda-date{border:0;width:36px;background:none}.service-accordion .agenda-date b{font-size:25px}.service-accordion .agenda-date span{font-size:10px}.service-accordion .agenda-row h3{font-size:14px;line-height:1.35}.service-accordion .agenda-row p{font-size:11px;margin-top:6px}.service-accordion .agenda-row .eyebrow,.service-accordion .calendar-save{display:none}.service-accordion>div>a{display:inline-block;margin-top:12px;text-decoration:underline;text-underline-offset:4px}.service-accordion .weather-days{display:grid;grid-template-columns:1fr;gap:12px}.weather-days b{font-size:13px}.market-mini{padding:12px 0;border-bottom:1px solid var(--line)}.market-mini h3{font-size:15px}.market-mini img{width:80px;height:60px;object-fit:cover}.portal-ads{display:grid;gap:64px}.managed-ad{min-width:0;margin:24px 0;background:none}.managed-ad img{width:100%;height:auto;display:block;object-fit:contain}.managed-ad .ad-label{display:block;font-size:10px;letter-spacing:.08em;color:#727272;margin-bottom:8px}.ad-device-mobile{display:none}.desk{margin-top:80px;margin-bottom:0}.ai-disclosure{padding:16px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:15px;margin:24px 0}
.compact-footer{background:#fff!important;color:var(--ink);border-top:1px solid var(--ink);padding:32px 0 0;margin-top:64px}.footer-brandline{display:flex;align-items:center;gap:32px;margin-bottom:24px}.footer-brandline img{width:160px;height:auto}.footer-brandline p{font-size:14px;max-width:400px;color:#656565;margin:0}.footer-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.footer-links>div{display:flex;align-content:start;flex-wrap:wrap;gap:8px 16px}.footer-links h3{font-size:13px;flex-basis:100%;margin:0 0 4px;color:var(--ink)}.compact-footer a{color:#505050;font-size:12px;line-height:1.6}.compact-footer .foot-bottom{margin-top:24px;padding:16px 0;border-top:1px solid var(--line);font-size:11px;color:#707070}.market-page{padding-top:40px;padding-bottom:48px}.market-page h1{font-size:clamp(32px,4vw,52px);margin-bottom:24px}.market-filters{display:flex;gap:20px;align-items:end;margin:32px 0}.market-filters label{display:grid;gap:8px;font-size:13px}.market-filters input,.market-filters select{height:48px;border:1px solid var(--line);padding:10px;max-width:100%}.market-directory{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}.market-directory article,.market-directory section{border-top:1px solid var(--line);padding:24px 0}.market-directory img{width:100%;height:auto}.market-directory h2{font-size:26px}.listing-facts{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;max-width:740px;margin:32px 0}.listing-facts dt{font-size:12px;color:#666}.listing-facts dd{margin:4px 0}.comments-area{max-width:740px;margin:48px auto;padding:0 18px}.comments-area h2{font-size:28px}.comment-list{padding:0;list-style:none}.comment-body{border-bottom:1px solid var(--line);padding:24px 0}.comment-form label{display:block;margin-bottom:8px;font-size:14px}.comment-form input:not([type=checkbox]),.comment-form textarea{width:100%;padding:12px;border:1px solid var(--line);min-height:48px}.comment-form textarea{min-height:160px}.comment-form p{font-size:14px}.comment-report{font-size:12px}.screen-reader-text{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden;white-space:nowrap}
@media(min-width:768px){.mainnav.is-scrolled{position:fixed;top:0}.mainnav.is-scrolled .compact-brand{display:none}.masthead .mast-inner{padding-top:0;padding-bottom:0}}
@media(max-width:1199px){.masthead .mast-inner{grid-template-columns:170px minmax(180px,1fr) 190px;gap:24px}.portal-top{grid-template-columns:200px minmax(0,1fr);gap:24px}.portal-top.has-ads{grid-template-columns:200px minmax(0,1fr)}.portal-top.has-ads .portal-ads{grid-column:2}.portal-news .frontpage-grid{grid-template-columns:1fr}.portal-news .front-side{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.portal-news .front-brief{display:block}.portal-news .front-brief .brief-image{display:block;width:100%;margin-bottom:12px}.portal-news .front-brief .media{aspect-ratio:16/9}.portal-news .front-brief:last-child{display:none}.portal-news .front-lead h1{font-size:36px}}
@media(max-width:900px){.header-local{font-size:11px}.portal-top,.portal-top.has-ads{grid-template-columns:1fr}.portal-news{grid-row:1}.portal-service{grid-row:2}.portal-top.has-ads .portal-ads{grid-column:1}.portal-service .agenda-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 24px}.portal-news .frontpage-grid{grid-template-columns:minmax(0,1.3fr) minmax(240px,1fr)}.portal-news .front-side{display:block}.portal-news .front-lead h1{font-size:32px}}
@media(max-width:767px){.masthead{position:sticky;top:0;z-index:120;border-bottom:1px solid rgba(15,15,15,.85)}.masthead .mast-inner{display:flex;justify-content:space-between;min-height:64px;height:64px;gap:12px}.masthead .logo img{height:30px;width:auto}.masthead .mast-search,.header-local{display:none}.masthead .mast-actions{gap:12px}.mainnav .navscroll{overflow-x:auto}.mainnav .navrow{gap:12px}.nav-more{display:none}.mainnav,.mainnav.is-scrolled{position:relative!important}.portal-top{margin-top:16px;gap:32px}.portal-news .frontpage-grid{display:block}.portal-news .front-lead h1{font-size:32px;line-height:1.08}.portal-news .front-lead-copy>p{font-size:15px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.portal-news .front-lead .media{aspect-ratio:16/9}.portal-news .front-side{margin-top:24px;display:block}.portal-news .front-brief,.portal-news .front-brief:last-child{display:grid;grid-template-columns:112px minmax(0,1fr);gap:16px;padding:18px 0}.portal-news .front-brief .brief-image{margin:0;width:112px}.portal-news .front-brief .media{aspect-ratio:4/3}.portal-news .front-brief h2{font-size:18px;line-height:1.2}.portal-news .front-brief .location-line{margin-top:0;font-size:10px}.portal-news .front-brief .kicker{font-size:10px}.portal-news .front-brief .story-actions{margin-top:10px}.read-more,.v20 a.read-more{min-height:44px;padding:8px 12px}.portal-service .agenda-list{display:block}.desk{margin-top:56px}.footer-brandline{align-items:flex-start;gap:20px}.footer-brandline img{width:130px}.footer-brandline p{font-size:12px}.footer-links{gap:20px;grid-template-columns:1fr}.footer-links>div{gap:8px 14px}.footer-links h3{flex-basis:100%}.compact-footer{padding-top:24px;margin-top:48px}.market-directory,.listing-facts{grid-template-columns:1fr}.market-filters{flex-wrap:wrap}.market-filters label{min-width:0;max-width:100%}.ad-device-desktop{display:none}.ad-device-mobile{display:block}.story-actions{gap:10px}}
@media(prefers-reduced-motion:reduce){.read-more,.mainnav,.masthead{transition:none!important}.media img{transform:none!important}}

/* Ortsbilder: lokale Identität mit sauber ausgewiesenen, frei lizenzierten Fotos. */
.district-visuals{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-template-rows:repeat(2,210px);gap:12px;border:0;overflow:visible}
.district-visuals .district-channel{position:relative;display:block;grid-column:span 3;min-width:0;min-height:210px;padding:0!important;border:0!important;border-radius:5px;overflow:hidden;background:#272925;color:#fff;isolation:isolate}
.district-visuals .district-channel:first-child{grid-column:span 6;grid-row:span 2}
.district-photo{position:absolute;inset:0;margin:0;overflow:hidden}
.district-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,9,8,.02) 24%,rgba(7,9,8,.82) 100%);z-index:1}
.district-photo img{width:100%;height:100%;object-fit:cover;transition:transform 360ms cubic-bezier(.2,.7,.2,1)}
.district-photo figcaption{position:absolute;z-index:2;top:9px;right:10px;max-width:calc(100% - 20px);padding:4px 6px;background:rgba(10,12,11,.58);color:rgba(255,255,255,.88);font-size:9px;line-height:1.25;text-align:right}
.district-copy{position:absolute;z-index:3;left:20px;right:20px;bottom:18px;display:block}
.district-copy .eyebrow{display:block;margin-bottom:5px;color:rgba(255,255,255,.8);font-size:10px;letter-spacing:.09em}
.district-visuals h3{margin:0;color:#fff;font-family:var(--serif);font-size:clamp(24px,2.1vw,34px);font-weight:610;line-height:1.05;letter-spacing:-.02em;text-shadow:0 1px 12px rgba(0,0,0,.28)}
.district-visuals .district-channel:first-child h3{font-size:clamp(34px,3.3vw,48px)}
.district-visuals small{display:block;margin-top:8px;color:rgba(255,255,255,.82);font-size:12px;font-variant-numeric:tabular-nums}
.district-channel:hover,.district-channel:focus-visible{color:#fff}
.district-channel:hover .district-photo img,.district-channel:focus-visible .district-photo img{transform:scale(1.02)}
.district-channel:focus-visible{outline:3px solid var(--brand-red);outline-offset:3px}
.district-contribute{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:18px 0;border-bottom:1px solid var(--line);font-size:13px;color:#555}
.district-contribute p{margin:0}.district-contribute b{color:var(--ink)}
.district-contribute a{flex:none;color:var(--brand-red);font-weight:700;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.place-feature{max-width:1040px;margin:0 0 24px;background:#f4f4f2}
.place-feature>img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.place-feature figcaption{display:flex;justify-content:space-between;gap:20px;padding:9px 0;color:#656565;font-size:11px;line-height:1.5;border-bottom:1px solid var(--line)}
.place-feature figcaption a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:1024px) and (min-width:768px){.district-visuals{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:none}.district-visuals .district-channel,.district-visuals .district-channel:first-child{grid-column:span 1;grid-row:auto;min-height:230px}.district-visuals .district-channel:first-child{grid-column:1/-1;min-height:360px}}
@media(max-width:767px){.district-visuals{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;margin-inline:calc(var(--gutter,18px) * -1);padding-inline:var(--gutter,18px);padding-bottom:10px;scrollbar-width:thin}.district-visuals .district-channel,.district-visuals .district-channel:first-child{flex:0 0 min(82vw,330px);min-height:260px;grid-column:auto;grid-row:auto;scroll-snap-align:start}.district-visuals .district-channel:first-child{flex-basis:min(88vw,360px)}.district-visuals h3,.district-visuals .district-channel:first-child h3{font-size:30px}.district-copy{left:18px;right:18px;bottom:17px}.district-contribute{align-items:flex-start;flex-direction:column;gap:10px}.place-feature{margin-bottom:20px}.place-feature figcaption{display:block}.place-feature figcaption span{display:block}.place-feature figcaption span+span{margin-top:4px}}
@media(prefers-reduced-motion:reduce){.district-photo img{transition:none}.district-channel:hover .district-photo img,.district-channel:focus-visible .district-photo img{transform:none}}
