/* One shared red for the politician's identity; service logos retain their own colors. */
:root{
 --red:#e70012;
 --red-dark:#c90010;
 --brand-red-gradient:linear-gradient(110deg,#ed0012 0%,#e70012 52%,#dc0019 100%);
 --brand-red-hover:linear-gradient(110deg,#d50010 0%,#c90010 52%,#bd0016 100%);
 --instagram-soft-gradient:linear-gradient(115deg,#fff0d9 0%,#f9dce6 48%,#ece0f7 100%);
}
/* Shared surfaces, without changing their dimensions, spacing or typography. */
.original-promise,.journey-tile-red,.footer-bottom-band,.floating-consult,
.header-contact,.resource-button-primary,.channel-more,.form-primary,
.contact-next,.required-label,.points-chevron,.profile-policy-link>span,
.channel-play,.voice-play svg{
 background:var(--brand-red-gradient);
}
.local-priority:before{background:var(--brand-red-gradient)}
.local-priority:hover:before{background:var(--brand-red-hover)}
.header-contact:hover,.resource-button-primary:hover,.channel-more:hover,
.form-primary:hover,.floating-consult:hover{background:var(--brand-red-hover)}
/* Keep the channel's existing colored header depth and transparent card area. */
.channel-section{background:var(--brand-red-gradient) no-repeat 0 0 / 100% 265px}
.instagram-panel-footer a{
 background:var(--instagram-soft-gradient);
 color:#563b58;
 border:1px solid #eadce6;
}
.instagram-panel-footer a:hover{background:linear-gradient(115deg,#ffe8c6 0%,#f4cddd 48%,#e3d3f2 100%)}
/* Brand lettering is solid for crisp rendering at small sizes. */
.brand-name{color:var(--red)}
.floating-pointer path{stroke:var(--red)}
.journey-news-list time,.instagram-post-caption time{color:var(--red)}
@media(max-width:760px){.channel-section{background-size:100% 218px}}
/* The compact header uses a red mail icon rather than a filled button. */
@media(max-width:600px){.header-contact,.header-contact:hover{background:transparent}}
@media(forced-colors:active){
 .instagram-panel-footer a{background:ButtonFace;color:ButtonText;border-color:ButtonText}
}
