/* Branded Blocksy header and mobile off-canvas additions. */
.ct-header { --theme-text-color: var(--ds-white); --theme-link-initial-color: var(--ds-white); --theme-link-hover-color: rgba(255, 255, 255, .76); background: var(--ds-black); color: var(--ds-white); }
.ct-header [data-row], .ct-header [data-device] { background: var(--ds-black); border-color: rgba(255, 255, 255, .13); }
.ds-site-header { background: var(--ds-black); border-bottom: 1px solid rgba(255, 255, 255, .13); }
.ds-site-header > .ct-container { max-width: none; padding-inline: 40px; width: 100%; }
.ds-site-header__top { align-items: center; display: grid; gap: 24px; grid-template-columns: minmax(0, 1fr) minmax(300px, 434px) minmax(0, 1fr); min-height: 128px; }
.ds-site-header__newsletter { justify-self: start; width: 100%; }.ds-site-header__logo { justify-self: center; text-align: center; }.ds-site-header__logo .site-branding { margin: 0; }.ds-site-header__logo .site-logo-container { display: block; }.ds-site-header__logo img { display: block; height: auto; max-width: 434px; width: min(100%, 434px); }.ds-site-header__actions { justify-self: end; }
.ds-header-newsletter > p { color: var(--ds-white); font-family: var(--ds-font-headings); font-size: 12px; font-weight: 700; letter-spacing: .08em; line-height: 1.2; margin: 0 0 7px; text-transform: uppercase; }.ds-header-newsletter .fluentform, .ds-header-newsletter .ff-el-group, .ds-header-newsletter .ff-t-container { margin: 0; }.ds-header-newsletter .ff-t-container { align-items: stretch; display: flex; gap: 9px; }.ds-header-newsletter .ff-t-cell { flex: 1 1 auto; width: auto !important; }.ds-header-newsletter .ff-t-cell:last-child { flex: 0 0 auto; }.ds-header-newsletter .ff-el-group { height: 100%; }
.ds-header-newsletter input[type="email"] { background: var(--ds-white); border: 1px solid rgba(255, 255, 255, .24); border-radius: 8px; box-shadow: none; color: var(--ds-black); font-size: 14px; height: 42px; padding: 0 16px; width: 100%; }.ds-header-newsletter input[type="email"]::placeholder { color: #6d6d6d; }.ds-header-newsletter .ff-btn-submit { background: var(--ds-red) !important; border: 1px solid var(--ds-red) !important; border-radius: 8px !important; box-shadow: none !important; color: var(--ds-white) !important; cursor: pointer; font-family: 'Poppins', sans-serif; font-size: 12px; font-weight: 700; height: 42px; letter-spacing: .035em; min-width: 0 !important; padding: 0 22px; text-transform: uppercase; width: auto !important; }.ds-header-newsletter .ff-btn-submit:hover, .ds-header-newsletter .ff-btn-submit:focus { background: var(--ds-red-dark) !important; border-color: var(--ds-red-dark) !important; }
.ds-header-newsletter .ff-message-success { cursor: pointer; }
.ds-header-actions { align-items: center; display: flex; gap: 16px; }.ds-header-donate { background: var(--ds-red); border: 1px solid var(--ds-red); border-radius: 999px; color: var(--ds-white) !important; display: inline-flex; font-family: 'Poppins', sans-serif; font-size: 13px; font-weight: 700; justify-content: center; letter-spacing: .12em; line-height: 1; min-width: 142px; padding: 15px 24px; text-decoration: none; text-transform: uppercase; }.ds-header-donate:hover, .ds-header-donate:focus { background: var(--ds-red-dark); border-color: var(--ds-red-dark); color: var(--ds-white) !important; }.ds-header-bell { align-items: center; appearance: none; background: transparent; border: 0; color: var(--ds-white); display: inline-flex; height: 42px; justify-content: center; padding: 0; width: 34px; }.ds-header-bell:disabled { cursor: default; opacity: .95; }
.ds-site-header__navigation { border-top: 1px solid rgba(255, 255, 255, .13); }.ds-site-header__navigation-inner { align-items: center; display: flex; justify-content: center; min-height: 59px; padding-bottom: 5px; position: relative; }.ds-site-header__navigation .ct-header-search { color: var(--ds-white); left: 0; position: absolute; }.ds-site-header__navigation .ct-header-search:hover { color: var(--ds-red); }.ds-site-header__navigation .menu-container { flex: 0 1 auto; max-width: calc(100% - 56px); }.ds-site-header__navigation .menu > li > a { color: var(--ds-white); font-family: var(--ds-font-headings); font-size: 14px; font-weight: 700; letter-spacing: .1em; padding-inline: 0; text-transform: uppercase; }.ds-site-header__navigation .menu > li + li { margin-left: clamp(20px, 2vw, 38px); }.ds-site-header__navigation .menu > li > a:hover, .ds-site-header__navigation .menu > .current-menu-item > a { color: var(--ds-red); }
.ct-panel.ct-header { --theme-text-color: var(--ds-white); background: rgba(17, 17, 17, .55); }.ct-panel.ct-header .ct-panel-inner { background: var(--ds-black); }.ct-panel.ct-header .ct-panel-content-inner { background: var(--ds-black); }.ds-mobile-panel-search { border-bottom: 1px solid rgba(255, 255, 255, .13); margin-bottom: 18px; padding: 2px 0 18px; }.ds-mobile-panel-search .ct-header-search { color: var(--ds-white); }.ct-panel.ct-header .ds-mobile-panel-logout { align-items: center; border: 1px solid rgba(255, 255, 255, .6); border-radius: 6px; color: var(--ds-white); display: flex; font-family: var(--ds-font-headings); font-size: 14px; font-weight: 700; justify-content: center; letter-spacing: .04em; margin-top: 18px; min-height: 44px; text-transform: uppercase; width: 100%; }.ct-panel.ct-header .ds-mobile-panel-logout:hover, .ct-panel.ct-header .ds-mobile-panel-logout:focus-visible { background: var(--ds-red); border-color: var(--ds-red); color: var(--ds-white); }.ds-mobile-panel-search .ct-label { display: inline !important; font-family: var(--ds-font-headings); font-size: 14px; font-weight: 700; letter-spacing: .08em; margin-right: 8px; text-transform: uppercase; }.ds-mobile-panel-utility { border-top: 1px solid rgba(255, 255, 255, .13); margin-top: 26px; padding-top: 25px; }.ds-mobile-newsletter-mount .ds-header-newsletter > p { font-size: 11px; }.ds-mobile-panel-utility .ds-header-actions { justify-content: space-between; margin-top: 20px; }.ds-mobile-panel-utility .ds-header-donate { flex: 1 1 auto; }
.ds-mobile-site-header { background: var(--ds-black); border-bottom: 1px solid rgba(255, 255, 255, .13); }.ds-mobile-site-header .ct-container { max-width: none; padding-inline: 20px; width: 100%; }.ds-mobile-site-header__inner { align-items: center; display: flex; height: 72px; justify-content: space-between; position: relative; }.ds-mobile-site-header__controls { align-items: center; display: flex; gap: 22px; z-index: 1; }.ds-mobile-site-header__controls .ct-header-trigger, .ds-mobile-site-header__controls .ct-header-search { color: var(--ds-white); }.ds-mobile-site-header__controls .ct-header-trigger .ct-icon { height: 18px; width: 24px; }.ds-mobile-site-header__controls .ct-header-search .ct-icon { height: 22px; width: 22px; }.ds-mobile-site-header__signup { background: var(--ds-red); border: 1px solid var(--ds-red); border-radius: 8px; color: var(--ds-white) !important; font-family: 'Poppins', sans-serif; font-size: 12px; font-weight: 700; letter-spacing: .055em; line-height: 1; padding: 14px 16px; text-decoration: none; text-transform: uppercase; z-index: 1; }.ds-mobile-site-header__signup:hover, .ds-mobile-site-header__signup:focus { background: var(--ds-red-dark); border-color: var(--ds-red-dark); }.ds-responsive-site-logo { left: 50%; line-height: 0; position: absolute; top: 50%; transform: translate(-50%, -50%); }.ds-responsive-site-logo--full { display: none; }.ds-responsive-site-logo--full .site-branding { margin: 0; }.ds-responsive-site-logo--full .site-logo-container { display: block; }.ds-responsive-site-logo--full img { display: block; height: auto; max-width: 300px; width: min(39vw, 300px); }.ds-mobile-site-logo { display: block; }.ds-mobile-site-logo__image { display: block; height: auto; max-width: min(42vw, 228px); width: min(42vw, 228px); }.ds-tablet-site-header { display: none; }
@media (min-width: 768px) and (max-width: 1024px) { .ct-header [data-device="desktop"] .ds-site-header { display: none; }.ct-header [data-device="desktop"] .ds-tablet-site-header { display: block; }.ds-mobile-site-header .ct-container { padding-inline: 28px; }.ds-responsive-site-logo--slim { display: none; }.ds-responsive-site-logo--full { display: block; }.ds-responsive-site-logo--full img { max-width: 300px; width: min(36vw, 300px); }.ds-header-newsletter .ff-t-container { align-items: stretch; }.ds-header-newsletter input[type="email"] { min-width: 0; } }
@media (max-width: 767px) { .ds-header-newsletter .ff-t-container { align-items: stretch; }.ds-header-newsletter input[type="email"] { min-width: 0; } }

/* Archive dropdown: the parent is a trigger; both destinations live in its panel. */
@media (min-width: 1025px) {
	.ds-site-header__navigation .menu > .menu-item-has-children > a { align-items: center; display: inline-flex; gap: 8px; }
	.ds-site-header__navigation .menu > .menu-item-has-children > a::after { border: solid currentColor; border-width: 0 2px 2px 0; content: ''; display: inline-block; height: 6px; transform: rotate(45deg) translateY(-2px); width: 6px; }
	.ds-site-header__navigation .menu > .menu-item-has-children:hover > a, .ds-site-header__navigation .menu > .menu-item-has-children:focus-within > a { color: var(--ds-red); }
	.ds-site-header__navigation .menu > .menu-item-has-children > .sub-menu { background: var(--ds-white); border: 0; box-shadow: 0 8px 14px rgba(0, 0, 0, .14); min-width: 220px; padding: 8px 0; }
	.ds-site-header__navigation .menu > .menu-item-has-children > .sub-menu > li { border-bottom: 1px solid #edf0f3; margin: 0; }
	.ds-site-header__navigation .menu > .menu-item-has-children > .sub-menu > li:last-child { border-bottom: 0; }
	.ds-site-header__navigation .menu > .menu-item-has-children > .sub-menu > li > a { color: #273142; display: block; font-family: var(--ds-font-headings); font-size: 13px; font-weight: 700; letter-spacing: .1em; padding: 18px 24px; text-transform: uppercase; }
	.ds-site-header__navigation .menu > .menu-item-has-children > .sub-menu > li > a:hover, .ds-site-header__navigation .menu > .menu-item-has-children > .sub-menu > li > a:focus { background: #f8f9fa; color: var(--ds-red); }
}

/* Single far-right account action; the matching menu entry remains text-only in off-canvas. */
.ds-header-account-action { align-items: center; color: var(--ds-white) !important; display: inline-flex; height: 38px; justify-content: center; position: absolute; right: 0; text-decoration: none; width: 38px; }
.ds-header-account-action svg { fill: none; height: 20px; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.7; width: 20px; }
.ds-header-account-action:hover, .ds-header-account-action:focus { color: var(--ds-red) !important; }
.ds-header-account-action--login { font-family: var(--ds-font-headings); font-size: 14px; font-weight: 700; height: auto; letter-spacing: .1em; text-transform: uppercase; width: auto; }
@media (min-width: 1025px) {
	.ds-site-header__navigation .menu-container { max-width: calc(100% - 112px); }
	.ds-site-header__navigation .ds-member-menu-item { display: none; }
}

/* Logged-in profile control belongs beside notifications, not in the primary menu. */
.ds-header-profile-action { align-items: center; color: var(--ds-white) !important; display: inline-flex; height: 42px; justify-content: center; text-decoration: none; width: 34px; }
.ds-header-profile-action__icon { fill: currentColor; height: 21px; width: 21px; }
.ds-header-profile-action:hover, .ds-header-profile-action:focus { color: var(--ds-red) !important; }

.ds-header-mobile-login { color: var(--ds-white) !important; font-family: var(--ds-font-headings); font-size: 13px; font-weight: 700; letter-spacing: .08em; padding: 11px 4px; text-decoration: none; text-transform: uppercase; }.ds-header-mobile-login:hover, .ds-header-mobile-login:focus { color: var(--ds-red) !important; }

/* Live-search dropdown: result text was inheriting the site's red link color on the dark modal background. */
#search-modal .ct-search-results,
#search-modal .ct-search-results a,
#search-modal .ct-search-item,
#search-modal .ct-search-item * { color: var(--ds-white); }
#search-modal .ct-search-results a:hover,
#search-modal .ct-search-item:hover { color: var(--ds-red); }

.ds-mobile-site-header__search-source { display: none; }

.ds-mobile-site-header__controls .ct-header-trigger .ct-icon { height: 13px; width: 17px; }

@media (max-width: 1024px) {
	.ct-panel.ct-header .ct-panel-actions { background: #101010; }
	.ct-panel.ct-header .ct-toggle-close { position: relative; top: 45px; }
}

@media (max-width: 767px) {
	.ds-mobile-site-header--phone .ds-responsive-site-logo { left: 33px; transform: translateY(-50%); }
	.ds-mobile-site-logo__image { max-width: min(60vw, 260px, calc(100vw - 150px)); width: min(60vw, 260px, calc(100vw - 150px)); }
	.ds-mobile-site-header--phone .ds-mobile-site-header__signup { border-radius: 5.6px; display: inline-flex !important; font-size: 8.4px; letter-spacing: .0385em; opacity: 1 !important; padding: 9.8px 11.2px; position: absolute; right: 0; top: 50%; transform: translateY(-50%); visibility: visible !important; z-index: 3; }
}

@media (min-width: 768px) and (max-width: 1024px) {
	.ds-tablet-site-header .ds-responsive-site-logo--full img { max-width: 360px; width: min(43.2vw, 360px); }
}

.ds-mobile-panel-search .ds-header-mobile-login { display: inline-flex; font-size: 14px; margin-top: 16px; }
.ct-panel.ct-header .ds-mobile-panel-account { border: 1px solid rgba(255, 255, 255, .6); border-radius: 6px; display: flex; justify-content: center; margin-top: 18px; min-height: 44px; padding: 0 16px; width: 100%; }

/* Phone-only sticky header. */

@media (max-width: 767px) {
	#header.ct-header { position: -webkit-sticky; position: sticky; top: 0; z-index: 1000; }
	body.admin-bar #header.ct-header { top: 46px; }
}
