/* NBC22 Baltimore RSS Hub — integration layer for Harbor Signal. */
.nbc22-story--external .nbc22-story__media img,
.nbc22-story--external .nbc22-story__lead-image img{display:block;width:100%;height:100%;object-fit:cover}
.nbc22-story--external .nbc22-story__title a:after{content:" ↗";font-family:var(--nbc22-sans,"Segoe UI",Arial,sans-serif);font-size:.66em;font-weight:750}
.nbc22-rssnh-front-lead .nbc22-lead-grid>*{min-width:0}
.nbc22-rssnh-section .nbc22-card-grid>*{min-width:0}
.nbc22-rssnh-ticker{overflow-x:clip}.nbc22-rssnh-ticker .nbc22-ticker__inner,.nbc22-rssnh-ticker .nbc22-ticker__items{min-width:0}
@media(max-width:781px){.nbc22-rssnh-front-lead .nbc22-lead-grid{display:flex;flex-direction:column}.nbc22-rssnh-section .nbc22-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.nbc22-rssnh-section .nbc22-card-grid{grid-template-columns:minmax(0,1fr)}}

/* NBC22 single-story experience: a Baltimore harbor-chart treatment. */
.nbc22-single--harbor .nbc22-single__head{
	border-top:0;
	border-bottom:1px solid var(--nbc22-limestone,#e8e3d9);
	margin-bottom:clamp(1.6rem,3vw,2.8rem);
	padding:clamp(1.4rem,3vw,2.4rem) 0 clamp(1.35rem,2.5vw,2.1rem);
	position:relative;
}
.nbc22-single--harbor .nbc22-single__head:before{
	background:linear-gradient(90deg,var(--nbc22-amber,#f2b544) 0 18%,var(--nbc22-blue,#1c6e8c) 18% 68%,var(--nbc22-navy,#071a2b) 68% 100%);
	content:"";
	height:6px;
	left:0;
	position:absolute;
	top:0;
	width:min(15rem,55vw);
}
.nbc22-single--harbor .nbc22-single__head h1{
	font-size:clamp(2.45rem,5.4vw,5.15rem);
	letter-spacing:-.048em;
	line-height:.98;
	margin:.5rem 0 0;
	max-width:17ch;
}
.nbc22-story-layout{
	align-items:start;
	display:grid;
	gap:clamp(2rem,5vw,4.75rem);
	grid-template-columns:minmax(0,1fr) minmax(17rem,23rem);
}
.nbc22-story-layout>*{min-width:0}
.nbc22-story-sidebar{min-width:0}
.nbc22-story-sidebar .nbc22-single-rail{position:static}
.nbc22-single--harbor .nbc22-article-body{font-size:clamp(1.05rem,1.25vw,1.2rem);line-height:1.8}
.nbc22-single--harbor .nbc22-article-body>.wp-block-image:first-child{
	background:var(--nbc22-navy,#071a2b);
	border-bottom:5px solid var(--nbc22-blue,#1c6e8c);
	box-shadow:0 1.3rem 3rem rgba(7,26,43,.15);
	max-width:620px;
	overflow:hidden;
}
.nbc22-single--harbor .nbc22-article-body>.wp-block-image:first-child img{display:block;height:auto;width:100%}
.nbc22-single-rail{
	background:linear-gradient(180deg,#f7fbfc 0%,var(--nbc22-paper,#fffdf8) 100%);
	border-left:5px solid var(--nbc22-navy,#071a2b);
	box-shadow:0 1.1rem 2.6rem rgba(7,26,43,.13);
	color:var(--nbc22-ink,#0e2332);
	margin-top:0;
	padding:1.25rem 1.25rem .7rem;
	position:sticky;
	top:1.5rem;
}
.nbc22-single-rail:before{
	background:linear-gradient(90deg,var(--nbc22-mist,#b9dce8) 0 68%,var(--nbc22-amber,#f2b544) 68% 100%);
	content:"";
	height:5px;
	left:-5px;
	position:absolute;
	right:0;
	top:0;
}
.nbc22-single-rail .nbc22-section__heading{
	align-items:end;
	border-bottom:1px solid rgba(7,26,43,.18);
	border-top:0;
	display:flex;
	margin-bottom:.2rem;
	padding:.55rem 0 .9rem;
}
.nbc22-single-rail .nbc22-section__heading:before,.nbc22-single-rail .nbc22-section__heading:after{display:none}
.nbc22-single-rail .nbc22-section__heading h2{font-size:1.55rem;letter-spacing:-.025em;margin:0}
.nbc22-single-rail .nbc22-section__heading h2:before{
	color:var(--nbc22-blue,#1c6e8c);
	content:"HARBOR SIGNAL";
	display:block;
	font-family:var(--nbc22-sans,"Segoe UI",Arial,sans-serif);
	font-size:.65rem;
	font-weight:850;
	letter-spacing:.17em;
	margin-bottom:.35rem;
}
.nbc22-single-rail .nbc22-section__heading .nbc22-text-link{font-size:.68rem}
.nbc22-single-rail .nbc22-card-grid{counter-reset:nbc22-brief;display:block}
.nbc22-single-rail .nbc22-story{
	background:transparent;
	border:0;
	border-bottom:1px solid rgba(7,26,43,.13);
	box-shadow:none;
	counter-increment:nbc22-brief;
	display:grid;
	grid-template-columns:1.8rem minmax(0,1fr);
	padding:1rem 0;
}
.nbc22-single-rail .nbc22-story:before{
	color:var(--nbc22-blue,#1c6e8c);
	content:counter(nbc22-brief,decimal-leading-zero);
	font-size:.68rem;
	font-weight:850;
	letter-spacing:.06em;
	padding-top:.18rem;
}
.nbc22-single-rail .nbc22-story:last-child{border-bottom:0}
.nbc22-single-rail .nbc22-story__media{display:none}
.nbc22-single-rail .nbc22-story__title{font-size:1rem;line-height:1.32;margin:0}
.nbc22-single-rail .nbc22-story__excerpt{display:none}
.nbc22-single-rail .screen-reader-text,.nbc22-rssnh-ticker .screen-reader-text{inset:0 auto auto 0}
.nbc22-harbor-dispatch{
	background:linear-gradient(118deg,rgba(3,18,31,.98),rgba(13,43,66,.9)),repeating-linear-gradient(0deg,transparent 0 31px,rgba(185,220,232,.09) 32px 33px);
	border-left:6px solid var(--nbc22-amber,#f2b544);
	color:var(--nbc22-paper,#fffdf8);
	margin-top:clamp(2.5rem,5vw,4.5rem);
	padding:clamp(1.6rem,4vw,3.1rem);
	position:relative;
}
.nbc22-harbor-dispatch:after{background:var(--nbc22-mist,#b9dce8);content:"";height:3px;position:absolute;right:0;top:0;width:34%}
.nbc22-harbor-dispatch .wp-block-heading{color:#fff;font-size:clamp(1.8rem,3vw,2.8rem);margin:.35rem 0 .65rem}
.nbc22-harbor-dispatch p{color:rgba(255,255,255,.86);margin:0;max-width:52ch}
.nbc22-harbor-dispatch .nbc22-dispatch-kicker{color:var(--nbc22-mist,#b9dce8);font-size:.7rem;font-weight:850;letter-spacing:.17em;text-transform:uppercase}
.nbc22-harbor-dispatch .wp-block-button__link{background:var(--nbc22-amber,#f2b544);border:2px solid var(--nbc22-amber,#f2b544);border-radius:0;color:var(--nbc22-navy,#071a2b);font-weight:850;margin-top:1.25rem}
@media(max-width:900px){.nbc22-story-layout{grid-template-columns:minmax(0,1fr)}.nbc22-single-rail{position:static}}
@media(max-width:480px){.nbc22-single--harbor .nbc22-single__head h1{font-size:clamp(2.05rem,11vw,3.15rem)}.nbc22-single-rail{margin-inline:-.25rem;padding-inline:1rem}}

/* Live NWS Baltimore forecast used on the article rail and homepage weather desk. */
.nbc22-weekly-weather{
	background:linear-gradient(145deg,var(--nbc22-navy,#071a2b),var(--nbc22-navy-2,#0d2b42));
	border-top:5px solid var(--nbc22-mist,#b9dce8);
	color:var(--nbc22-paper,#fffdf8);
	padding:clamp(1.1rem,2.5vw,1.7rem);
	position:relative;
}
.nbc22-weekly-weather:after{background:var(--nbc22-amber,#f2b544);content:"";height:5px;position:absolute;right:0;top:-5px;width:22%}
.nbc22-weekly-weather--homepage{margin:0 0 1.6rem}
.nbc22-weekly-weather--sidebar{box-shadow:0 1.1rem 2.6rem rgba(7,26,43,.15);margin-top:1.35rem}
.nbc22-weekly-weather__head{align-items:end;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1rem}
.nbc22-weekly-weather__head h3{color:#fff;font-family:var(--nbc22-serif,Georgia,serif);font-size:clamp(1.3rem,2vw,1.8rem);line-height:1;margin:.28rem 0 0}
.nbc22-weather-kicker{color:var(--nbc22-mist,#b9dce8);font-size:.62rem;font-weight:850;letter-spacing:.16em}
.nbc22-weather-links{display:flex;flex-wrap:wrap;gap:.65rem 1rem;justify-content:flex-end}
.nbc22-weather-links a{border-bottom:2px solid var(--nbc22-amber,#f2b544);color:#fff;font-size:.67rem;font-weight:800;letter-spacing:.06em;padding-bottom:.2rem;text-decoration:none;text-transform:uppercase}
.nbc22-weekly-weather .screen-reader-text{inset:0 auto auto 0}
.nbc22-weekly-weather__grid{display:grid;gap:1px;grid-template-columns:repeat(7,minmax(0,1fr));overflow:hidden}
.nbc22-weather-day{align-content:start;background:rgba(255,255,255,.075);display:grid;gap:.38rem;min-width:0;padding:.8rem .65rem}
.nbc22-weather-day strong{color:#fff;font-size:.72rem;letter-spacing:.04em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nbc22-weather-mark{background:var(--nbc22-amber,#f2b544);border-radius:50%;display:block;height:1.15rem;margin:.2rem 0;position:relative;width:1.15rem}
.nbc22-weather-mark--cloud{background:var(--nbc22-mist,#b9dce8);border-radius:1rem;width:1.6rem}
.nbc22-weather-mark--rain{background:linear-gradient(135deg,var(--nbc22-mist,#b9dce8) 0 55%,var(--nbc22-blue,#1c6e8c) 55% 100%);border-radius:.6rem;width:1.55rem}
.nbc22-weather-mark--storm{background:var(--nbc22-amber,#f2b544);border-radius:.2rem;clip-path:polygon(45% 0,100% 0,65% 40%,95% 40%,25% 100%,42% 54%,10% 54%)}
.nbc22-weather-mark--snow{background:var(--nbc22-paper,#fffdf8);border:3px dotted var(--nbc22-mist,#b9dce8)}
.nbc22-weather-temp{color:#fff;font-family:var(--nbc22-serif,Georgia,serif);font-size:1.45rem;font-weight:700}
.nbc22-weather-condition{color:rgba(255,255,255,.82);font-size:.68rem;line-height:1.25}
.nbc22-weather-precip{color:var(--nbc22-mist,#b9dce8);font-size:.62rem;font-weight:700}
.nbc22-weather-source{color:rgba(255,255,255,.6);font-size:.6rem;letter-spacing:.04em;margin:.8rem 0 0;text-transform:uppercase}
.nbc22-weather-unavailable{color:rgba(255,255,255,.82);font-size:.82rem;line-height:1.5;margin:0}
.nbc22-weekly-weather--sidebar .nbc22-weekly-weather__head{align-items:start;display:block}
.nbc22-weekly-weather--sidebar .nbc22-weather-links{justify-content:flex-start;margin-top:.8rem}
.nbc22-weekly-weather--sidebar .nbc22-weekly-weather__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:900px){.nbc22-weekly-weather__grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:520px){.nbc22-weekly-weather__grid,.nbc22-weekly-weather--sidebar .nbc22-weekly-weather__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.nbc22-weekly-weather__head{align-items:start;display:block}.nbc22-weather-links{justify-content:flex-start;margin-top:.8rem}}
