/**
 * Daily Opportunity Hub public styles.
 * Component selectors are scoped beneath .doh; document-shell resets use the
 * plugin-specific body.doh-page-shell class.
 */

body.doh-page-shell {
	display: block;
	margin: 0;
	padding: 0;
	width: 100%;
}

.doh {
	--doh-green: #006838;
	--doh-green-dark: #004d2a;
	--doh-green-soft: #eaf6ef;
	--doh-ink: #101b16;
	--doh-muted: #526159;
	--doh-border: #d7e1db;
	--doh-surface: #fff;
	--doh-canvas: #f7faf8;
	--doh-warning: #9b3500;
	--doh-warning-soft: #fff2e8;
	--doh-radius: 16px;
	--doh-shadow: 0 14px 40px rgba(16, 27, 22, 0.08);
	background: var(--doh-surface);
	color: var(--doh-ink);
	max-width: 100%;
	overflow-x: hidden;
	overflow-x: clip;
}

.doh *,
.doh *::before,
.doh *::after {
	box-sizing: border-box;
}

.doh img,
.doh svg {
	display: block;
	max-width: 100%;
}

.doh a {
	color: var(--doh-green-dark);
	text-decoration-thickness: 1px;
	text-underline-offset: 0.18em;
}

.doh :where(h1, h2, h3, h4, h5, h6) {
	color: var(--doh-ink);
}

.doh :where(a, button, input, select, summary):focus-visible {
	outline: 3px solid #f2b705;
	outline-offset: 3px;
}

.doh .doh-sr-only {
	border: 0 !important;
	clip: rect(1px, 1px, 1px, 1px) !important;
	clip-path: inset(50%) !important;
	height: 1px !important;
	margin: -1px !important;
	overflow: hidden !important;
	padding: 0 !important;
	position: absolute !important;
	width: 1px !important;
	word-wrap: normal !important;
}

.doh .doh-skip-link {
	background: var(--doh-ink);
	color: #fff;
	left: 12px;
	padding: 10px 16px;
	position: fixed;
	top: -100px;
	z-index: 100000;
}

.doh .doh-skip-link:focus {
	top: 12px;
}

.doh .doh-container {
	margin-inline: auto;
	max-width: 1320px;
	min-width: 0;
	padding-inline: 28px;
	width: 100%;
}

.doh .doh-main {
	background: var(--doh-surface);
	min-width: 0;
}

.doh .doh-site-header {
	background: rgba(255, 255, 255, 0.98);
	border-bottom: 1px solid var(--doh-border);
	position: sticky;
	top: 0;
	z-index: 1000;
}

body.doh-page-shell.admin-bar .doh .doh-site-header {
	top: 32px;
}

.doh .doh-site-header__inner {
	align-items: center;
	display: flex;
	gap: 28px;
	height: 82px;
	justify-content: space-between;
}

.doh .doh-brand {
	display: inline-flex;
	flex: 0 0 auto;
	text-decoration: none;
}

.doh .doh-brand__horizontal {
	height: auto;
	max-height: 58px;
	object-fit: contain;
	object-position: left center;
	width: 194px;
}

.doh .doh-brand__globe {
	display: none;
	height: 48px;
	object-fit: contain;
	width: 48px;
}

.doh .doh-primary-nav {
	align-items: center;
	display: flex;
	gap: clamp(14px, 2vw, 28px);
	min-width: 0;
}

.doh .doh-primary-nav a {
	color: var(--doh-ink);
	position: relative;
	text-decoration: none;
	text-transform: uppercase;
	white-space: nowrap;
}

.doh .doh-primary-nav a::after {
	background: var(--doh-green);
	bottom: -8px;
	content: "";
	height: 2px;
	left: 0;
	position: absolute;
	transform: scaleX(0);
	transform-origin: left;
	transition: transform 160ms ease;
	width: 100%;
}

.doh .doh-primary-nav a:hover::after,
.doh .doh-primary-nav a[aria-current="page"]::after {
	transform: scaleX(1);
}

.doh .doh-header-actions {
	align-items: center;
	display: flex;
	flex: 0 0 auto;
	gap: 5px;
}

.doh .doh-icon-link,
.doh .doh-menu-toggle {
	align-items: center;
	background: transparent;
	border: 0;
	border-radius: 50%;
	color: var(--doh-ink);
	cursor: pointer;
	display: inline-flex;
	height: 44px;
	justify-content: center;
	padding: 10px;
	width: 44px;
}

.doh .doh-icon-link:hover,
.doh .doh-menu-toggle:hover {
	background: var(--doh-green-soft);
	color: var(--doh-green-dark);
}

.doh .doh-icon-link svg {
	height: 22px;
	width: 22px;
}

.doh .doh-menu-toggle {
	display: none;
}

.doh .doh-menu-toggle__bars {
	display: grid;
	gap: 4px;
	width: 21px;
}

.doh .doh-menu-toggle__bars span {
	background: currentColor;
	border-radius: 2px;
	height: 2px;
	width: 100%;
}

.doh .doh-mobile-nav {
	background: #fff;
	border-top: 1px solid var(--doh-border);
	box-shadow: var(--doh-shadow);
}

.doh .doh-mobile-nav[hidden] {
	display: none;
}

.doh .doh-mobile-nav__inner {
	display: grid;
	padding-block: 12px 22px;
}

.doh .doh-mobile-nav a {
	border-bottom: 1px solid var(--doh-border);
	color: var(--doh-ink);
	padding: 12px 4px;
	text-decoration: none;
}

.doh .doh-eyebrow {
	color: var(--doh-green-dark);
	font-size: 0.76rem;
	font-weight: 800;
	letter-spacing: 0.13em;
	margin: 0 0 8px;
	text-transform: uppercase;
}

.doh .doh-hero {
	background: linear-gradient(120deg, #e3f3e9 0%, #f7fbf8 58%, #fff 100%);
	border-bottom: 1px solid var(--doh-border);
	overflow: hidden;
}

.doh .doh-hero__inner {
	align-items: center;
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(240px, 390px);
	min-height: 410px;
	position: relative;
}

.doh .doh-hero__copy {
	max-width: 760px;
	padding-block: 64px 86px;
	position: relative;
	z-index: 1;
}

.doh .doh-hero h1,
.doh .doh-page-hero h1,
.doh .doh-article h1 {
	color: var(--doh-ink);
	margin: 0;
	overflow-wrap: anywhere;
}

.doh .doh-hero__copy > p:last-child {
	color: var(--doh-muted);
	margin: 24px 0 0;
	max-width: 650px;
}

.doh .doh-hero__globe {
	height: auto;
	top: 40px;
	width: 100%;
}

.doh .doh-hub-search {
	margin-top: -42px;
	position: relative;
	z-index: 5;
}

.doh .doh-filters {
	background: #fff;
	border: 1px solid var(--doh-border);
	border-radius: var(--doh-radius);
	box-shadow: var(--doh-shadow);
	margin: 30px 0;
	padding: 18px;
}

.doh .doh-hub-search .doh-filters {
	margin-top: 0;
}

.doh .doh-filters__search {
	align-items: center;
	display: grid;
	gap: 10px;
	grid-template-columns: 24px minmax(0, 1fr) auto;
}

.doh .doh-filters__search > svg {
	color: var(--doh-green);
	height: 22px;
	margin-left: 4px;
	width: 22px;
}

.doh .doh-filters input,
.doh .doh-filters select {
	background: #fff;
	border: 1px solid #aebcb4;
	border-radius: 9px;
	color: var(--doh-ink);
	min-height: 46px;
	min-width: 0;
	padding: 9px 12px;
	width: 100%;
}

.doh .doh-filters input[type="search"] {
	border: 0;
	outline: 0;
	padding-inline: 4px;
}

.doh .doh-filters input[type="search"]:focus-visible {
	box-shadow: inset 0 -3px 0 #f2b705;
}

.doh .doh-button {
	align-items: center;
	background: var(--doh-green);
	border: 2px solid var(--doh-green);
	border-radius: 9px;
	color: #fff;
	cursor: pointer;
	display: inline-flex;
	gap: 8px;
	justify-content: center;
	min-height: 46px;
	padding: 11px 19px;
	text-decoration: none;
}

.doh .doh-button:hover {
	background: var(--doh-green-dark);
	border-color: var(--doh-green-dark);
	color: #fff;
}

.doh .doh-button--secondary {
	background: #fff;
	color: var(--doh-green-dark);
}

.doh .doh-filters__details {
	border-top: 1px solid var(--doh-border);
	margin-top: 14px;
	padding-top: 12px;
}

.doh .doh-filters__details summary {
	align-items: center;
	cursor: pointer;
	display: inline-flex;
	font-size: 0.9rem;
	font-weight: 750;
	gap: 7px;
	padding: 5px 0;
}

.doh .doh-filter-count {
	align-items: center;
	background: var(--doh-green);
	border-radius: 50%;
	color: #fff;
	display: inline-flex;
	font-size: 0.72rem;
	height: 22px;
	justify-content: center;
	width: 22px;
}

.doh .doh-filters__grid {
	display: grid;
	gap: 14px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	padding-top: 16px;
}

.doh .doh-filters__grid label {
	display: grid;
	font-size: 0.82rem;
	font-weight: 720;
	gap: 6px;
	min-width: 0;
}

.doh .doh-filter-locked__value {
	align-items: center;
	background: var(--doh-canvas);
	border: 1px solid var(--doh-border);
	border-radius: 9px;
	color: var(--doh-ink);
	display: flex;
	min-height: 46px;
	padding: 9px 12px;
}

.doh .doh-filters__actions {
	align-items: center;
	display: flex;
	gap: 18px;
	justify-content: flex-end;
	padding-top: 16px;
}

.doh .doh-text-link {
	font-size: 0.9rem;
	font-weight: 700;
}

.doh .doh-section-heading {
	align-items: end;
	display: flex;
	gap: 20px;
	justify-content: space-between;
	margin-bottom: 22px;
}

.doh .doh-section-heading h2,
.doh .doh-type-grid h2,
.doh .doh-related h2 {
	color: var(--doh-ink);
	margin: 0;
}

.doh .doh-type-grid,
.doh .doh-featured,
.doh .doh-closing,
.doh .doh-latest {
	padding-block: 44px;
}

.doh .doh-type-grid__items {
	display: grid;
	gap: 16px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.doh .doh-type-tile {
	background: var(--doh-canvas);
	border: 1px solid var(--doh-border);
	border-radius: 14px;
	color: var(--doh-ink);
	display: grid;
	gap: 9px;
	min-width: 0;
	padding: 22px;
	text-decoration: none;
	transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.doh .doh-type-tile:hover {
	border-color: var(--doh-green);
	box-shadow: var(--doh-shadow);
	transform: translateY(-2px);
}

.doh .doh-type-tile__icon {
	align-items: center;
	background: var(--doh-green);
	border-radius: 11px;
	color: #fff;
	display: inline-flex;
	font-size: 1.25rem;
	font-weight: 850;
	height: 44px;
	justify-content: center;
	width: 44px;
}

.doh .doh-type-tile > span:last-child {
	color: var(--doh-green-dark);
	font-size: 0.88rem;
	font-weight: 720;
}

.doh .doh-featured {
	background: transparent;
}

.doh .doh-featured-grid,
.doh .doh-compact-grid,
.doh .doh-related__grid {
	display: grid;
	gap: 20px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.doh .doh-closing {
	background: var(--doh-green-soft);
	border-radius: 24px;
	margin-block: 26px;
	padding-inline: 30px;
}

.doh .doh-hub-layout {
	display: grid;
	gap: 24px;
	grid-template-columns: minmax(170px, 210px) minmax(0, 1fr) minmax(230px, 275px);
}

.doh .doh-hub-feed,
.doh .doh-hub-rail,
.doh .doh-discover {
	min-width: 0;
}

.doh .doh-discover {
	display: grid;
	align-content: start;
	gap: 18px;
}

.doh .doh-discover__panel,
.doh .doh-sidebar-note {
	background: var(--doh-canvas);
	border: 1px solid var(--doh-border);
	border-radius: var(--doh-radius);
	padding: 22px;
}

.doh .doh-discover h2,
.doh .doh-sidebar-note h2 {
	margin: 0 0 14px;
}

.doh .doh-discover ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.doh .doh-discover li + li {
	border-top: 1px solid var(--doh-border);
}

.doh .doh-discover li a {
	display: flex;
	justify-content: space-between;
	padding: 10px 0;
	text-decoration: none;
}

.doh .doh-remote-link {
	background: var(--doh-green);
	border-radius: var(--doh-radius);
	color: #fff;
	display: grid;
	gap: 5px;
	padding: 22px;
	text-decoration: none;
}

.doh .doh-remote-link span {
	font-size: 0.84rem;
}

.doh .doh-results__summary {
	align-items: center;
	display: flex;
	justify-content: space-between;
	margin-bottom: 12px;
}

.doh .doh-results__summary p {
	color: var(--doh-muted);
	font-size: 0.86rem;
	font-weight: 680;
	margin: 0;
}

.doh .doh-results-grid {
	display: grid;
	gap: 18px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.doh .doh-hub-feed .doh-results-grid {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.doh .doh-card {
	background: #fff;
	border: 1px solid var(--doh-border);
	border-radius: var(--doh-radius);
	display: grid;
	grid-template-columns: minmax(135px, 31%) minmax(0, 1fr);
	min-width: 0;
	overflow: hidden;
	position: relative;
	transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.doh .doh-card:not(:has(.doh-card__media)) {
	grid-template-columns: minmax(0, 1fr);
}

.doh .doh-card:hover {
	border-color: #9ab9a7;
	box-shadow: 0 10px 28px rgba(16, 27, 22, 0.09);
	transform: translateY(-1px);
}

.doh .doh-card.is-expired {
	background: #f7f7f7;
	opacity: 0.82;
}

.doh .doh-card__media {
	background: var(--doh-green-soft);
	display: block;
	min-height: 100%;
	overflow: hidden;
}

.doh .doh-card__image {
	height: 100%;
	object-fit: cover;
	transition: transform 220ms ease;
	width: 100%;
}

.doh .doh-card:hover .doh-card__image {
	transform: scale(1.025);
}

.doh .doh-card__body {
	min-width: 0;
	padding: 19px;
}

.doh .doh-card__topline {
	align-items: center;
	display: flex;
	gap: 10px;
	justify-content: space-between;
	margin-bottom: 10px;
}

.doh .doh-badge {
	background: var(--doh-green-soft);
	border-radius: 999px;
	color: var(--doh-green-dark);
	display: inline-flex;
	font-size: 0.69rem;
	font-weight: 820;
	letter-spacing: 0.08em;
	line-height: 1;
	padding: 7px 10px;
	text-decoration: none;
	text-transform: uppercase;
}

.doh .doh-bookmark {
	align-items: center;
	background: #fff;
	border: 1px solid var(--doh-border);
	border-radius: 50%;
	color: var(--doh-green-dark);
	cursor: pointer;
	display: inline-flex;
	flex: 0 0 auto;
	height: 38px;
	justify-content: center;
	padding: 8px;
	width: 38px;
}

.doh .doh-bookmark:hover,
.doh .doh-bookmark.is-saved {
	background: var(--doh-green);
	border-color: var(--doh-green);
	color: #fff;
}

.doh .doh-bookmark[aria-busy="true"] {
	cursor: wait;
	opacity: 0.6;
}

.doh .doh-bookmark__icon {
	height: 19px;
	width: 19px;
}

.doh .doh-bookmark:not(.is-saved) .doh-bookmark__icon path {
	fill: transparent;
}

.doh .doh-card__title {
	margin: 0 0 6px;
	overflow-wrap: anywhere;
}

.doh .doh-card__title a {
	color: var(--doh-ink);
	text-decoration: none;
}

.doh .doh-card__title a:hover {
	color: var(--doh-green-dark);
	text-decoration: underline;
}

.doh .doh-card__org {
	color: var(--doh-muted);
	margin: 0 0 10px;
}

.doh .doh-card__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 7px 13px;
}

.doh .doh-card__meta > span,
.doh .doh-deadline {
	align-items: center;
	color: var(--doh-muted);
	display: inline-flex;
	font-size: 0.76rem;
	font-weight: 650;
	gap: 5px;
}

.doh .doh-card__meta svg {
	height: 15px;
	width: 15px;
}

.doh .doh-deadline--closing-soon,
.doh .doh-deadline--expired,
.doh .doh-deadline--closed {
	color: var(--doh-warning);
}

.doh .doh-card__summary {
	color: var(--doh-muted);
	margin: 11px 0;
}

.doh .doh-card__link {
	font-size: 0.82rem;
	font-weight: 780;
}

.doh .doh-featured-grid .doh-card,
.doh .doh-compact-grid .doh-card,
.doh .doh-related__grid .doh-card {
	grid-template-columns: minmax(125px, 29%) minmax(0, 1fr);
}

.doh .doh-featured-grid .doh-card__summary,
.doh .doh-compact-grid .doh-card__summary,
.doh .doh-related__grid .doh-card__summary {
	display: none;
}

.doh .doh-page-hero {
	background: var(--doh-green-soft);
	border-bottom: 1px solid var(--doh-border);
	padding-block: 52px;
}

.doh .doh-page-hero--compact {
	padding-block: 44px;
}

.doh .doh-page-hero p:last-child {
	color: var(--doh-muted);
	margin: 16px 0 0;
	max-width: 710px;
}

.doh .doh-breadcrumbs {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	font-size: 0.78rem;
	gap: 7px;
	margin-bottom: 22px;
}

.doh .doh-pagination {
	align-items: center;
	display: flex;
	flex-direction: column;
	gap: 20px;
	margin-block: 32px 50px;
}

.doh .doh-pagination ul {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	justify-content: center;
	list-style: none;
	margin: 0;
	padding: 0;
}

.doh .doh-pagination .page-numbers {
	align-items: center;
	border: 1px solid var(--doh-border);
	border-radius: 8px;
	color: var(--doh-ink);
	display: inline-flex;
	font-size: 0.86rem;
	font-weight: 680;
	height: 40px;
	justify-content: center;
	min-width: 40px;
	padding: 7px 10px;
	text-decoration: none;
}

.doh .doh-pagination .page-numbers.current {
	background: var(--doh-green);
	border-color: var(--doh-green);
	color: #fff;
}

.doh .doh-empty {
	align-items: center;
	background: var(--doh-canvas);
	border: 1px dashed #9ab9a7;
	border-radius: var(--doh-radius);
	display: flex;
	flex-direction: column;
	margin-block: 26px 50px;
	padding: 42px 24px;
	text-align: center;
}

.doh .doh-empty img {
	height: 86px;
	opacity: 0.75;
	width: 86px;
}

.doh .doh-empty h2 {
	margin: 14px 0 3px;
}

.doh .doh-empty p {
	color: var(--doh-muted);
	margin: 0 0 20px;
}

.doh .doh-ad {
	align-items: center;
	background: #f2f4f3;
	border: 1px solid #e2e6e3;
	color: #68736d;
	display: flex;
	justify-content: center;
	margin: 24px auto;
	max-width: 100%;
	overflow: hidden;
	position: relative;
	text-align: center;
	width: 100%;
}

.doh .doh-ad__label {
	font-size: 0.64rem;
	letter-spacing: 0.13em;
	text-transform: uppercase;
}

.doh .doh-ad__content,
.doh .doh-ad__content > * {
	max-width: 100%;
}

.doh .doh-ad--header-leaderboard,
.doh .doh-ad--footer-leaderboard,
.doh .doh-ad--archive-top {
	min-height: 90px;
	width: min(970px, calc(100% - 40px));
}

.doh .doh-ad--home-left-rail,
.doh .doh-ad--single-sidebar {
	min-height: 600px;
}

.doh .doh-ad--home-in-feed,
.doh .doh-ad--archive-in-feed,
.doh .doh-ad--single-inline-1,
.doh .doh-ad--single-inline-2 {
	grid-column: 1 / -1;
	min-height: 250px;
}

.doh .doh-single {
	padding-block: 30px 60px;
}

.doh .doh-single-layout {
	display: grid;
	gap: 42px;
	grid-template-columns: minmax(0, 850px) minmax(230px, 300px);
	justify-content: center;
}

.doh .doh-article,
.doh .doh-single-sidebar {
	min-width: 0;
}

.doh .doh-article__header {
	margin-bottom: 26px;
}

.doh .doh-article__badges {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-bottom: 16px;
}

.doh .doh-article__lead {
	color: var(--doh-muted);
	margin: 20px 0;
}

.doh .doh-article__byline {
	align-items: center;
	color: var(--doh-muted);
	display: flex;
	flex-wrap: wrap;
	font-size: 0.8rem;
	gap: 8px;
}

.doh .doh-article__byline .doh-bookmark {
	margin-left: auto;
}

.doh .doh-share {
	align-items: center;
	background: transparent;
	border: 1px solid var(--doh-border);
	border-radius: 999px;
	color: var(--doh-green-dark);
	cursor: pointer;
	display: inline-flex;
	gap: 6px;
	min-height: 38px;
	padding: 7px 11px;
}

.doh .doh-share svg {
	height: 17px;
	width: 17px;
}

.doh .doh-article__media {
	margin: 0 0 28px;
}

.doh .doh-article__media img {
	border-radius: var(--doh-radius);
	height: auto;
	width: 100%;
}

.doh .doh-article__media figcaption {
	color: var(--doh-muted);
	font-size: 0.74rem;
	margin-top: 7px;
}

.doh .doh-facts {
	background: var(--doh-green-soft);
	border-left: 5px solid var(--doh-green);
	border-radius: 0 var(--doh-radius) var(--doh-radius) 0;
	margin: 28px 0;
	padding: 24px;
}

.doh .doh-facts h2,
.doh .doh-toc h2,
.doh .doh-apply-panel h2 {
	margin: 0 0 16px;
}

.doh .doh-facts dl {
	display: grid;
	gap: 0;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin: 0 0 22px;
}

.doh .doh-facts dl > div {
	border-bottom: 1px solid #c6dccf;
	min-width: 0;
	padding: 10px 14px 10px 0;
}

.doh .doh-facts dt {
	color: var(--doh-muted);
	font-size: 0.72rem;
	font-weight: 760;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.doh .doh-facts dd {
	margin: 2px 0 0;
	overflow-wrap: anywhere;
}

.doh .doh-button--apply {
	min-height: 52px;
	padding-inline: 22px;
}

.doh .doh-toc {
	border: 1px solid var(--doh-border);
	border-radius: var(--doh-radius);
	margin: 28px 0;
	padding: 22px 24px;
}

.doh .doh-toc ol {
	display: grid;
	gap: 7px;
	margin: 0;
	padding-left: 22px;
}

.doh .doh-toc__level-3 {
	margin-left: 18px;
}

.doh .doh-toc a {
	font-size: 0.9rem;
	font-weight: 650;
}

.doh .doh-article__content {
	color: #24332b;
}

.doh .doh-article__content > * {
	max-width: 100%;
}

.doh .doh-article__content h2,
.doh .doh-article__content h3 {
	color: var(--doh-ink);
	scroll-margin-top: 105px;
}

.doh .doh-article__content h2 {
	margin: 2em 0 0.65em;
}

.doh .doh-article__content h3 {
	margin: 1.7em 0 0.55em;
}

.doh .doh-article__content a {
	overflow-wrap: anywhere;
}

.doh .doh-article__content blockquote {
	border-left: 4px solid var(--doh-green);
	color: var(--doh-muted);
	font-style: italic;
	margin-inline: 0;
	padding-left: 22px;
}

.doh .doh-article__content table {
	border-collapse: collapse;
	display: block;
	max-width: 100%;
	overflow-x: auto;
}

.doh .doh-article__content th,
.doh .doh-article__content td {
	border: 1px solid var(--doh-border);
	padding: 10px;
}

.doh .doh-apply-panel {
	background: var(--doh-ink);
	border-radius: var(--doh-radius);
	color: #fff;
	margin: 34px 0;
	padding: 28px;
}

.doh .doh-apply-panel h2 {
	color: #fff;
}

.doh .doh-apply-panel p {
	color: #d9e3dd;
}

.doh .doh-apply-panel .doh-source {
	font-size: 0.8rem;
	margin: 16px 0 0;
}

.doh .doh-apply-panel a {
	color: #fff;
}

.doh .doh-topic-list {
	display: flex;
	flex-wrap: wrap;
	gap: 7px;
	margin: 24px 0;
}

.doh .doh-topic-list span {
	background: var(--doh-canvas);
	border: 1px solid var(--doh-border);
	border-radius: 999px;
	font-size: 0.75rem;
	font-weight: 680;
	padding: 6px 10px;
}

.doh .doh-single-sidebar {
	align-content: start;
	display: grid;
	gap: 20px;
}

.doh .doh-single-sidebar .doh-ad {
	margin-top: 0;
}

.doh .doh-sidebar-note img {
	height: 55px;
	margin-bottom: 14px;
	width: 55px;
}

.doh .doh-sidebar-note p {
	color: var(--doh-muted);
	margin: 0;
}

.doh .doh-notice {
	border-radius: 10px;
	margin: 0 0 24px;
	padding: 13px 16px;
}

.doh .doh-notice--expired {
	background: var(--doh-warning-soft);
	border: 1px solid #eabf9f;
	color: #632300;
}

.doh .doh-related {
	border-top: 1px solid var(--doh-border);
	margin-top: 50px;
	padding-top: 38px;
}

.doh .doh-related__grid {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.doh .doh-related__grid .doh-card {
	grid-template-columns: minmax(0, 1fr);
}

.doh .doh-related__grid .doh-card__media {
	aspect-ratio: 16 / 8;
}

.doh .doh-saved-results {
	min-height: 260px;
	padding-block: 36px 60px;
}

.doh .doh-saved-loading {
	align-items: center;
	color: var(--doh-muted);
	display: flex;
	gap: 10px;
	justify-content: center;
	min-height: 180px;
}

.doh .doh-spinner {
	animation: doh-spin 800ms linear infinite;
	border: 3px solid var(--doh-border);
	border-radius: 50%;
	border-top-color: var(--doh-green);
	height: 26px;
	width: 26px;
}

.doh .doh-footer {
	background: var(--doh-ink);
	color: #dfe8e3;
	margin-top: 34px;
}

.doh .doh-footer__inner {
	align-items: center;
	display: grid;
	gap: 28px;
	grid-template-columns: 260px minmax(0, 1fr) auto;
	min-height: 180px;
	padding-block: 30px;
}

.doh .doh-footer__brand {
	background: #fff;
	border-radius: 10px;
	display: inline-flex;
	padding: 10px;
}

.doh .doh-footer__brand img {
	height: auto;
	width: 220px;
}

.doh .doh-footer p {
	margin: 0;
}

.doh .doh-footer nav {
	display: flex;
	gap: 18px;
}

.doh .doh-footer a {
	color: #fff;
}

@keyframes doh-spin {
	to { transform: rotate(360deg); }
}

@media (max-width: 1023px) {
	.doh .doh-primary-nav {
		display: none;
	}

	.doh .doh-menu-toggle {
		display: inline-flex;
	}

	.doh .doh-filters__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.doh .doh-hub-layout {
		grid-template-columns: minmax(0, 1fr) minmax(220px, 260px);
	}

	.doh .doh-hub-rail--left {
		display: none;
	}

	.doh .doh-single-layout {
		grid-template-columns: minmax(0, 1fr);
	}

	.doh .doh-single-sidebar {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.doh .doh-single-sidebar .doh-ad {
		min-height: 250px;
	}

	.doh .doh-related__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (min-width: 601px) and (max-width: 782px) {
	body.doh-page-shell.admin-bar .doh .doh-site-header {
		top: 46px;
	}
}

@media (max-width: 767px) {
	.doh .doh-container {
		padding-inline: 18px;
	}

	.doh .doh-site-header__inner {
		height: 68px;
	}

	.doh .doh-brand__horizontal {
		display: none;
	}

	.doh .doh-brand__globe {
		display: block;
	}

	.doh .doh-header-save {
		display: none;
	}

	.doh .doh-hero__inner {
		grid-template-columns: minmax(0, 1fr);
		min-height: 400px;
	}

	.doh .doh-hero__copy {
		padding-block: 52px 120px;
	}

	.doh .doh-hero__globe {
		bottom: -110px;
		height: 230px;
		top: auto;
		position: absolute;
		right: -65px;
		width: 230px;
	}

	.doh .doh-hub-search {
		margin-top: -34px;
	}

	.doh .doh-filters {
		padding: 13px;
	}

	.doh .doh-filters__search {
		grid-template-columns: 21px minmax(0, 1fr);
	}

	.doh .doh-filters__search .doh-button {
		grid-column: 1 / -1;
	}

	.doh .doh-filters__grid,
	.doh .doh-type-grid__items,
	.doh .doh-featured-grid,
	.doh .doh-compact-grid,
	.doh .doh-results-grid,
	.doh .doh-related__grid,
	.doh .doh-single-sidebar,
	.doh .doh-footer__inner {
		grid-template-columns: minmax(0, 1fr);
	}

	.doh .doh-type-grid__items {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.doh .doh-type-tile {
		padding: 16px;
	}

	.doh .doh-type-tile__icon {
		height: 38px;
		width: 38px;
	}

	.doh .doh-type-grid,
	.doh .doh-featured,
	.doh .doh-closing,
	.doh .doh-latest {
		padding-block: 32px;
	}

	.doh .doh-closing {
		border-radius: 0;
		margin-inline: -18px;
		padding-inline: 18px;
	}

	.doh .doh-hub-layout {
		grid-template-columns: minmax(0, 1fr);
	}

	.doh .doh-discover {
		margin-top: 16px;
	}

	.doh .doh-card,
	.doh .doh-featured-grid .doh-card,
	.doh .doh-compact-grid .doh-card,
	.doh .doh-related__grid .doh-card {
		grid-template-columns: minmax(0, 1fr);
	}

	.doh .doh-card__media {
		aspect-ratio: 16 / 8;
		min-height: 0;
	}

	.doh .doh-card__body {
		padding: 17px;
	}

	.doh .doh-card__summary,
	.doh .doh-featured-grid .doh-card__summary,
	.doh .doh-compact-grid .doh-card__summary,
	.doh .doh-related__grid .doh-card__summary {
		display: block;
	}

	.doh .doh-page-hero {
		padding-block: 36px;
	}

	.doh .doh-section-heading {
		align-items: flex-start;
		flex-direction: column;
		gap: 8px;
	}

	.doh .doh-ad--header-leaderboard,
	.doh .doh-ad--footer-leaderboard,
	.doh .doh-ad--archive-top {
		min-height: 100px;
		width: min(320px, calc(100% - 24px));
	}

	.doh .doh-ad--home-in-feed,
	.doh .doh-ad--archive-in-feed,
	.doh .doh-ad--single-inline-1,
	.doh .doh-ad--single-inline-2,
	.doh .doh-single-sidebar .doh-ad {
		min-height: 250px;
		width: min(300px, 100%);
	}

	.doh .doh-single {
		padding-block: 22px 44px;
	}

	.doh .doh-article__byline .doh-bookmark {
		margin-left: 0;
	}

	.doh .doh-facts {
		padding: 19px;
	}

	.doh .doh-facts dl {
		grid-template-columns: minmax(0, 1fr);
	}

	.doh .doh-button--apply {
		width: 100%;
	}

	.doh .doh-footer__inner {
		justify-items: start;
		padding-block: 34px;
	}
}

@media (max-width: 600px) {
	body.doh-page-shell.admin-bar .doh .doh-site-header {
		top: 0;
	}
}

@media (max-width: 380px) {
	.doh .doh-type-grid__items {
		grid-template-columns: minmax(0, 1fr);
	}

	.doh .doh-filters__actions {
		align-items: stretch;
		flex-direction: column;
	}

	.doh .doh-filters__actions .doh-text-link {
		text-align: center;
	}
}

@media (prefers-reduced-motion: reduce) {
	.doh *,
	.doh *::before,
	.doh *::after {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		scroll-behavior: auto !important;
		transition-duration: 0.01ms !important;
	}
}

/* v1.1 compact presentation. Typography intentionally inherits the theme. */
.doh {
	--doh-radius: 12px;
	--doh-shadow: 0 7px 20px rgba(16, 27, 22, 0.07);
}

.doh .doh-container {
	padding-inline: 24px;
}

.doh .doh-site-header {
	background: var(--doh-surface);
}

.doh .doh-site-header__inner {
	gap: 16px;
	height: 64px;
}

.doh .doh-brand__horizontal {
	max-height: 44px;
	width: 150px;
}

.doh .doh-primary-nav {
	gap: clamp(11px, 1.4vw, 20px);
}

.doh .doh-header-actions {
	gap: 2px;
}

.doh .doh-icon-link,
.doh .doh-menu-toggle {
	min-height: 44px;
	min-width: 44px;
}

.doh .doh-header-save {
	border-radius: 999px;
	gap: 5px;
	padding-inline: 10px;
	width: auto;
}

.doh .doh-header-action-label {
	font-size: 0.78rem;
	font-weight: 750;
}

.doh .doh-social-links {
	align-items: center;
	display: flex;
	gap: 0;
}

.doh .doh-social-link {
	align-items: center;
	border-radius: 50%;
	color: var(--doh-muted);
	display: inline-flex;
	font-size: 0.68rem;
	font-weight: 800;
	height: 44px;
	justify-content: center;
	text-decoration: none;
	width: 44px;
}

.doh .doh-social-link:hover {
	background: var(--doh-green-soft);
	color: var(--doh-green-dark);
}

.doh .doh-social-link svg {
	height: 18px;
	width: 18px;
}

.doh .doh-theme-toggle__sun {
	display: none;
}

html[data-doh-theme="dark"] .doh .doh-theme-toggle__moon {
	display: none;
}

html[data-doh-theme="dark"] .doh .doh-theme-toggle__sun {
	display: block;
}

.doh .doh-mobile-nav {
	background: var(--doh-surface);
}

.doh .doh-mobile-nav__inner {
	padding-block: 6px 12px;
}

.doh .doh-mobile-nav a {
	min-height: 44px;
	padding-block: 10px;
}

.doh .doh-mobile-socials {
	display: flex;
	flex-wrap: wrap;
	gap: 4px 12px;
	padding-block: 6px;
}

.doh .doh-mobile-socials a {
	border: 0;
	font-size: 0.82rem;
	min-height: 44px;
}

.doh .doh-hero__inner {
	grid-template-columns: minmax(0, 1fr) minmax(180px, 260px);
	min-height: 255px;
}

.doh .doh-hero__copy {
	padding-block: 30px 42px;
}

.doh .doh-hero__copy > p:last-child {
	margin-top: 12px;
}

.doh .doh-hero__globe {
	max-height: 220px;
	top: 16px;
}

.doh .doh-hub-search {
	margin-top: -22px;
}

.doh .doh-filters {
	background: var(--doh-surface);
	margin-block: 16px;
	padding: 10px;
}

.doh .doh-hub-search .doh-filters {
	margin-bottom: 8px;
}

.doh .doh-hub-intro {
	padding-top: 14px;
}

.doh .doh-hub-intro h1 {
	color: var(--doh-ink);
	margin: 0;
	overflow-wrap: anywhere;
}

.doh .doh-hub-intro .doh-filters {
	margin-block: 7px;
}

.doh .doh-hub-intro + .doh-latest {
	padding-block: 5px 18px;
}

.doh .doh-filters input,
.doh .doh-filters select {
	background: var(--doh-surface);
	color: var(--doh-ink);
	min-height: 44px;
	padding-block: 7px;
}

.doh .doh-button {
	min-height: 44px;
	padding-block: 9px;
}

.doh .doh-filters__details {
	margin-top: 8px;
	padding-top: 8px;
}

.doh .doh-filters__toggle {
	align-items: center;
	background: transparent;
	border: 0;
	border-radius: 7px;
	color: var(--doh-ink);
	cursor: pointer;
	display: none;
	gap: 7px;
	justify-content: flex-start;
	min-height: 44px;
	padding: 7px 4px;
}

.doh.doh-js .doh-filters__toggle {
	display: inline-flex;
}

.doh .doh-filters__toggle svg {
	height: 18px;
	margin-left: 2px;
	transition: transform 160ms ease;
	width: 18px;
}

.doh .doh-filters__toggle[aria-expanded="true"] svg {
	transform: rotate(180deg);
}

.doh .doh-filters__panel[hidden] {
	display: none;
}

.doh .doh-filters__grid {
	gap: 10px;
	padding-top: 10px;
}

.doh .doh-filter-locked__value {
	min-height: 44px;
	padding-block: 7px;
}

.doh .doh-filters__actions {
	gap: 12px;
	padding-top: 10px;
}

.doh .doh-section-heading {
	gap: 12px;
	margin-bottom: 12px;
}

.doh .doh-type-grid,
.doh .doh-featured,
.doh .doh-closing,
.doh .doh-latest {
	padding-block: 22px;
}

.doh .doh-type-grid__items,
.doh .doh-featured-grid,
.doh .doh-compact-grid,
.doh .doh-related__grid,
.doh .doh-results-grid {
	gap: 12px;
}

.doh .doh-type-tile {
	gap: 6px;
	padding: 14px;
}

.doh .doh-closing {
	border-radius: 16px;
	margin-block: 12px;
	padding-inline: 16px;
}

.doh .doh-hub-layout {
	gap: 16px;
}

.doh .doh-hub-layout--no-rail {
	grid-template-columns: minmax(0, 1fr) minmax(230px, 275px);
}

.doh .doh-discover {
	gap: 10px;
}

.doh .doh-discover__panel,
.doh .doh-sidebar-note,
.doh .doh-remote-link {
	padding: 14px;
}

.doh .doh-results-heading {
	padding-top: 20px;
}

.doh .doh-results-heading h1 {
	color: var(--doh-ink);
	margin: 0;
	overflow-wrap: anywhere;
}

.doh .doh-results__summary {
	margin-bottom: 8px;
}

.doh .doh-results-grid {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.doh .doh-hub-feed .doh-results-grid {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.doh .doh-featured-grid,
.doh .doh-compact-grid {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.doh .doh-related__grid {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.doh .doh-card,
.doh .doh-featured-grid .doh-card,
.doh .doh-compact-grid .doh-card,
.doh .doh-related__grid .doh-card,
.doh .doh-card:not(:has(.doh-card__media)) {
	background: var(--doh-surface);
	display: flex;
	flex-direction: column;
	grid-template-columns: none;
}

.doh .doh-card__media,
.doh .doh-related__grid .doh-card__media {
	aspect-ratio: 1 / 1;
	background: var(--doh-green-soft);
	min-height: 0;
	width: 100%;
}

.doh .doh-card__image {
	aspect-ratio: 1 / 1;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.doh .doh-card__image--placeholder {
	object-fit: contain;
	padding: 16%;
}

.doh .doh-card__body {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	padding: 13px;
}

.doh .doh-card__title {
	margin: 0 0 6px;
}

.doh .doh-card__time {
	color: var(--doh-muted);
	font-size: 0.76rem;
	margin-bottom: 9px;
}

.doh .doh-card__topics {
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
	list-style: none;
	margin: auto 0 0;
	padding: 0;
}

.doh .doh-card__topics a,
.doh .doh-card__topics span {
	background: var(--doh-green-soft);
	border-radius: 999px;
	color: var(--doh-green-dark);
	display: inline-flex;
	font-size: 0.68rem;
	font-weight: 700;
	line-height: 1.2;
	padding: 5px 8px;
	text-decoration: none;
}

.doh .doh-pagination {
	gap: 12px;
	margin-block: 18px 28px;
}

.doh .doh-pagination .page-numbers {
	height: 44px;
	min-width: 44px;
}

.doh .doh-empty {
	margin-block: 16px 28px;
	padding: 22px 16px;
}

.doh .doh-empty img {
	height: 60px;
	width: 60px;
}

.doh .doh-empty h2 {
	margin-top: 7px;
}

.doh .doh-ad {
	margin-block: 12px;
}

.doh .doh-page-hero {
	padding-block: 24px;
}

.doh .doh-page-hero--compact {
	padding-block: 20px;
}

.doh .doh-single {
	padding-block: 18px 32px;
}

.doh .doh-single > .doh-breadcrumbs {
	margin-bottom: 12px;
}

.doh .doh-single-layout {
	gap: 24px;
}

.doh .doh-article__header {
	margin-bottom: 14px;
}

.doh .doh-article__badges {
	gap: 8px;
	margin-bottom: 9px;
}

.doh .doh-article__lead {
	margin-block: 10px;
}

.doh .doh-share,
.doh .doh-bookmark {
	min-height: 44px;
}

.doh .doh-bookmark {
	background: var(--doh-surface);
}

.doh .doh-facts {
	margin-block: 14px;
	padding: 14px;
}

.doh .doh-facts h2,
.doh .doh-toc h2,
.doh .doh-apply-panel h2 {
	margin-bottom: 8px;
}

.doh .doh-facts dl {
	margin-bottom: 12px;
}

.doh .doh-facts dl > div {
	padding-block: 7px;
}

.doh .doh-button--apply {
	min-height: 44px;
}

.doh .doh-toc {
	margin-block: 14px;
	padding: 13px 15px;
}

.doh .doh-article__content {
	color: var(--doh-ink);
}

.doh .doh-article__content h2 {
	margin-top: 1.25em;
}

.doh .doh-article__content h3 {
	margin-top: 1.1em;
}

.doh .doh-apply-panel {
	margin-block: 17px;
	padding: 16px;
}

.doh .doh-topic-list {
	margin-block: 12px;
}

.doh .doh-single-sidebar {
	gap: 10px;
}

.doh .doh-sidebar-note img {
	margin-bottom: 7px;
}

.doh .doh-notice {
	margin-bottom: 12px;
}

.doh .doh-related {
	margin-top: 25px;
	padding-top: 19px;
}

.doh .doh-saved-results {
	min-height: 130px;
	padding-block: 18px 30px;
}

.doh .doh-saved-loading {
	min-height: 90px;
}

.doh .doh-footer {
	margin-top: 18px;
}

.doh .doh-footer__inner {
	gap: 16px;
	grid-template-columns: 210px minmax(0, 1fr) auto;
	min-height: 104px;
	padding-block: 16px;
}

.doh .doh-footer__brand img {
	width: 180px;
}

/* Light is the default; dark mode applies only after an explicit saved choice. */
html[data-doh-theme="dark"] .doh {
	--doh-green-dark: #6ee0a6;
	--doh-green-soft: #173426;
	--doh-ink: #f1f7f3;
	--doh-muted: #b4c4ba;
	--doh-border: #3b4b42;
	--doh-surface: #101713;
	--doh-canvas: #17201b;
	--doh-warning: #ffb180;
	--doh-warning-soft: #382116;
	--doh-shadow: 0 7px 22px rgba(0, 0, 0, 0.32);
	color-scheme: dark;
}

html[data-doh-theme="light"] .doh {
	color-scheme: light;
}

html[data-doh-theme="dark"] .doh .doh-hero {
	background: linear-gradient(120deg, #132b20 0%, #101713 62%, #0b100d 100%);
}

html[data-doh-theme="dark"] .doh .doh-button:hover {
	background: #005b33;
	border-color: #005b33;
}

html[data-doh-theme="dark"] .doh .doh-button--secondary {
	background: var(--doh-surface);
	color: var(--doh-green-dark);
}

html[data-doh-theme="dark"] .doh .doh-filters input,
html[data-doh-theme="dark"] .doh .doh-filters select {
	border-color: #607067;
}

html[data-doh-theme="dark"] .doh .doh-facts dl > div {
	border-color: var(--doh-border);
}

html[data-doh-theme="dark"] .doh .doh-apply-panel,
html[data-doh-theme="dark"] .doh .doh-footer {
	background: #070c09;
}

html[data-doh-theme="dark"] .doh .doh-ad {
	background: #161d19;
	border-color: #313c36;
	color: #a9b6af;
}

html[data-doh-theme="dark"] .doh :where(.doh-brand, .doh-footer__brand) img {
	filter: brightness(1.85) saturate(0.9);
}

@media (max-width: 1120px) {
	.doh .doh-social-links {
		display: none;
	}
}

@media (max-width: 1023px) {
	.doh .doh-results-grid,
	.doh .doh-featured-grid,
	.doh .doh-compact-grid,
	.doh .doh-related__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.doh .doh-hub-feed .doh-results-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 767px) {
	.doh .doh-container {
		padding-inline: 14px;
	}

	.doh .doh-site-header__inner {
		height: 60px;
	}

	.doh .doh-brand__globe {
		height: 40px;
		width: 40px;
	}

	.doh .doh-header-save {
		display: inline-flex;
		height: 44px;
		padding: 10px;
		width: 44px;
	}

	.doh .doh-header-action-label {
		display: none;
	}

	.doh .doh-hero__inner {
		min-height: 250px;
	}

	.doh .doh-hero__copy {
		padding-block: 26px 70px;
	}

	.doh .doh-hero__globe {
		bottom: -70px;
		height: 155px;
		right: -30px;
		width: 155px;
	}

	.doh .doh-hub-search {
		margin-top: -18px;
	}

	.doh .doh-hub-intro {
		padding-top: 10px;
	}

	.doh .doh-filters {
		padding: 9px;
	}

	.doh .doh-type-grid,
	.doh .doh-featured,
	.doh .doh-closing,
	.doh .doh-latest {
		padding-block: 18px;
	}

	.doh .doh-closing {
		margin-inline: -14px;
		padding-inline: 14px;
	}

	.doh .doh-results-grid,
	.doh .doh-featured-grid,
	.doh .doh-compact-grid,
	.doh .doh-related__grid {
		grid-template-columns: minmax(0, 1fr);
	}

	.doh .doh-hub-feed .doh-results-grid {
		grid-template-columns: minmax(0, 1fr);
	}

	.doh .doh-card,
	.doh .doh-featured-grid .doh-card,
	.doh .doh-compact-grid .doh-card,
	.doh .doh-related__grid .doh-card {
		display: flex;
	}

	.doh .doh-card__media,
	.doh .doh-related__grid .doh-card__media {
		aspect-ratio: 1 / 1;
	}

	.doh .doh-card__body {
		padding: 12px;
	}

	.doh .doh-single {
		padding-block: 14px 24px;
	}

	.doh .doh-footer__inner {
		gap: 12px;
		padding-block: 18px;
	}
}

@media (max-width: 380px) {
	.doh .doh-site-header__inner {
		gap: 4px;
	}

	.doh .doh-header-actions {
		gap: 0;
	}
}

/* Keep both ad-rail states full-width on narrow screens. */
@media (max-width: 767px) {
	.doh .doh-hub-layout,
	.doh .doh-hub-layout--no-rail {
		grid-template-columns: minmax(0, 1fr);
	}

	.doh .doh-hub-feed,
	.doh .doh-discover {
		grid-column: 1;
		min-width: 0;
		width: 100%;
	}
}

/* v1.2 list results, off-canvas filters, and full-width reading view. */
html.doh-filter-drawer-open,
body.doh-filter-drawer-open {
	overflow: hidden;
}

/* The 44px hit area remains, while the visible theme icon stays unboxed. */
.doh .doh-theme-toggle,
.doh .doh-theme-toggle:hover,
.doh .doh-theme-toggle:active {
	background: transparent !important;
	border: 0 !important;
	border-radius: 0;
	box-shadow: none !important;
	height: 44px;
	width: 44px;
}

.doh .doh-filters__search {
	grid-template-columns: 24px minmax(0, 1fr) auto auto;
}

.doh .doh-filter-button {
	display: none;
	padding-inline: 13px;
	white-space: nowrap;
}

.doh.doh-js .doh-filter-button {
	display: inline-flex;
}

.doh .doh-filter-button__icon {
	height: 18px;
	width: 18px;
}

.doh .doh-filter-sidebar__header {
	align-items: center;
	display: flex;
	gap: 16px;
	justify-content: space-between;
}

.doh .doh-filter-sidebar__header h2 {
	margin: 0;
}

.doh .doh-filter-sidebar__backdrop,
.doh .doh-filter-sidebar__close {
	display: none;
}

.doh:not(.doh-js) .doh-filter-sidebar {
	border-top: 1px solid var(--doh-border);
	margin-top: 10px;
	padding-top: 10px;
}

.doh.doh-js .doh-filter-sidebar[hidden] {
	display: none;
}

.doh.doh-js .doh-filter-sidebar {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(320px, 420px);
	inset: 0;
	isolation: isolate;
	margin: 0;
	position: fixed;
	z-index: 100000;
}

.doh.doh-js .doh-filter-sidebar__backdrop {
	background: rgba(5, 12, 8, 0.58);
	cursor: pointer;
	display: block;
	grid-column: 1 / -1;
	grid-row: 1;
	inset: 0;
	position: absolute;
	z-index: -1;
}

.doh.doh-js .doh-filter-sidebar__surface {
	background: var(--doh-surface);
	box-shadow: -18px 0 48px rgba(5, 12, 8, 0.22);
	display: flex;
	flex-direction: column;
	grid-column: 2;
	grid-row: 1;
	height: 100vh;
	height: 100dvh;
	overflow-y: auto;
	overscroll-behavior: contain;
	padding: max(20px, env(safe-area-inset-top)) max(20px, env(safe-area-inset-right)) max(20px, env(safe-area-inset-bottom)) 20px;
	position: relative;
	z-index: 1;
}

.doh.doh-js .doh-filter-sidebar__close {
	align-items: center;
	background: transparent;
	border: 0;
	border-radius: 50%;
	color: var(--doh-ink);
	cursor: pointer;
	display: inline-flex;
	flex: 0 0 44px;
	height: 44px;
	justify-content: center;
	padding: 10px;
	width: 44px;
}

.doh.doh-js .doh-filter-sidebar__close:hover {
	background: var(--doh-green-soft);
	color: var(--doh-green-dark);
}

.doh.doh-js .doh-filter-sidebar__close svg {
	height: 22px;
	width: 22px;
}

.doh.doh-js .doh-filter-sidebar .doh-filters__grid {
	grid-template-columns: minmax(0, 1fr);
	padding-top: 18px;
}

.doh.doh-js .doh-filter-sidebar .doh-filters__actions {
	border-top: 1px solid var(--doh-border);
	justify-content: flex-start;
	margin-top: 20px;
	padding-top: 18px;
}

/* Preserve legacy DOM/data contracts, but never render results in columns. */
.doh .doh-results-list,
.doh .doh-results-grid,
.doh .doh-hub-feed .doh-results-grid,
.doh .doh-featured-grid,
.doh .doh-compact-grid,
.doh .doh-related__grid {
	display: grid;
	gap: 12px;
	grid-template-columns: minmax(0, 1fr) !important;
}

.doh .doh-results-list > .doh-card,
.doh .doh-results-grid > .doh-card,
.doh .doh-compact-grid > .doh-card,
.doh .doh-related__grid > .doh-card {
	display: grid;
	flex-direction: initial;
	grid-template-columns: clamp(104px, 15vw, 156px) minmax(0, 1fr) !important;
}

.doh .doh-card:not(:has(.doh-card__media)) {
	grid-template-columns: minmax(0, 1fr) !important;
}

.doh .doh-results-list .doh-card__media,
.doh .doh-results-grid .doh-card__media,
.doh .doh-compact-grid .doh-card__media,
.doh .doh-related__grid .doh-card__media {
	align-self: start;
	aspect-ratio: 1 / 1;
	height: auto;
	min-height: 0;
	width: 100%;
}

.doh .doh-results-list .doh-card__image,
.doh .doh-results-grid .doh-card__image,
.doh .doh-compact-grid .doh-card__image,
.doh .doh-related__grid .doh-card__image {
	aspect-ratio: 1 / 1;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.doh .doh-results-list .doh-card__body,
.doh .doh-results-grid .doh-card__body,
.doh .doh-compact-grid .doh-card__body,
.doh .doh-related__grid .doh-card__body {
	padding: 14px 16px;
}

.doh .doh-single-layout--reading {
	display: block;
	margin-inline: auto;
	max-width: 1040px;
	width: 100%;
}

.doh .doh-single--reading > .doh-breadcrumbs,
.doh .doh-single--reading > .doh-notice,
.doh .doh-single--reading > .doh-article--reading {
	margin-inline: auto;
	max-width: 1040px;
	width: 100%;
}

.doh .doh-article--reading {
	max-width: none;
	min-width: 0;
	width: 100%;
}

.doh .doh-article--reading .doh-article__content,
.doh .doh-article--reading .doh-toc,
.doh .doh-article--reading .doh-topic-list,
.doh .doh-article--reading .doh-article__actions,
.doh .doh-article--reading > .doh-ad {
	margin-inline: auto;
	max-width: 880px;
	width: 100%;
}

.doh .doh-article__actions {
	align-items: center;
	border-top: 1px solid var(--doh-border);
	display: flex;
	flex-wrap: wrap;
	gap: 14px 20px;
	justify-content: space-between;
	margin-top: 28px;
	padding-top: 22px;
}

.doh .doh-source-link {
	font-weight: 700;
}

.doh .doh-single__legacy-ad-slot,
.doh .doh-related {
	margin-inline: auto;
	max-width: 1040px;
	width: 100%;
}

.doh .doh-single__legacy-ad-slot .doh-ad--single-sidebar {
	min-height: 250px;
	width: 100%;
}

@media (min-width: 601px) and (max-width: 767px) {
	/* Override the legacy full-row mobile buttons at tablet widths. */
	.doh .doh-filters__search > .doh-button {
		grid-column: auto;
	}
}

@media (max-width: 600px) {
	.doh .doh-filters__search {
		grid-template-columns: minmax(0, 1fr) auto auto;
	}

	.doh .doh-filters__search > svg {
		display: none;
	}

	.doh .doh-filters__search > input[type="search"] {
		grid-column: 1 / -1;
		grid-row: 1;
	}

	/* Reset the older mobile full-row rule: Search and Filter stay adjacent. */
	.doh .doh-filters__search > .doh-button {
		grid-column: auto;
		grid-row: 2;
		padding-inline: 11px;
	}

	.doh .doh-filters__search > .doh-button[type="submit"] {
		grid-column: 2;
	}

	.doh .doh-filters__search > .doh-filter-button {
		grid-column: 3;
	}

	.doh.doh-js .doh-filter-sidebar {
		grid-template-columns: minmax(0, 1fr);
	}

	.doh.doh-js .doh-filter-sidebar__surface {
		grid-column: 1;
		max-width: none;
		width: 100%;
	}

	.doh .doh-results-list > .doh-card,
	.doh .doh-results-grid > .doh-card,
	.doh .doh-compact-grid > .doh-card,
	.doh .doh-related__grid > .doh-card {
		grid-template-columns: 92px minmax(0, 1fr) !important;
	}

	.doh .doh-results-list .doh-card__body,
	.doh .doh-results-grid .doh-card__body,
	.doh .doh-compact-grid .doh-card__body,
	.doh .doh-related__grid .doh-card__body {
		padding: 11px 12px;
	}

	.doh .doh-article__actions {
		align-items: stretch;
		flex-direction: column;
	}

	.doh .doh-article__actions .doh-button,
	.doh .doh-source-link {
		justify-content: center;
		min-height: 44px;
		text-align: center;
	}
}

@media (max-width: 360px) {
	.doh .doh-filter-button__icon {
		display: none;
	}

	.doh .doh-results-list > .doh-card,
	.doh .doh-results-grid > .doh-card,
	.doh .doh-compact-grid > .doh-card,
	.doh .doh-related__grid > .doh-card {
		grid-template-columns: 84px minmax(0, 1fr) !important;
	}
}

/* v1.3: inline header search, relevant filters, and unified reading width. */
.doh .doh-header-center {
	flex: 1 1 auto;
	min-width: 0;
}

.doh .doh-primary-nav {
	justify-content: center;
	width: 100%;
}

.doh .doh-header-search[hidden],
.doh .doh-primary-nav[hidden],
.doh .doh-filter-control[hidden],
.doh .doh-filter-count[hidden] {
	display: none !important;
}

.doh .doh-header-search {
	align-items: center;
	display: grid;
	gap: 8px;
	grid-template-columns: minmax(0, 1fr) auto 44px;
	margin-inline: auto;
	max-width: 720px;
	width: 100%;
}

.doh .doh-header-search input[type="search"] {
	background: var(--doh-surface);
	border: 1px solid var(--doh-border);
	border-radius: 10px;
	color: var(--doh-ink);
	height: 44px;
	min-width: 0;
	padding: 9px 12px;
	width: 100%;
}

.doh .doh-header-search__submit {
	align-items: center;
	background: var(--doh-green);
	border: 1px solid var(--doh-green);
	border-radius: 10px;
	color: #fff;
	cursor: pointer;
	display: inline-flex;
	font: inherit;
	font-weight: 700;
	height: 44px;
	justify-content: center;
	padding-inline: 16px;
}

.doh .doh-header-search__submit:hover {
	background: var(--doh-green-dark);
	border-color: var(--doh-green-dark);
}

.doh .doh-header-search__close {
	align-items: center;
	background: transparent;
	border: 0;
	border-radius: 50%;
	box-shadow: none;
	color: var(--doh-ink);
	cursor: pointer;
	display: inline-flex;
	height: 44px;
	justify-content: center;
	padding: 10px;
	width: 44px;
}

.doh .doh-header-search__close:hover {
	background: var(--doh-green-soft);
	color: var(--doh-green-dark);
}

.doh .doh-header-search__close svg {
	height: 22px;
	width: 22px;
}

.doh .doh-header-save {
	height: 44px;
	min-height: 44px;
	min-width: 44px;
	padding: 10px;
	width: 44px;
}

.doh .doh-menu-toggle,
.doh .doh-menu-toggle:hover,
.doh .doh-menu-toggle:active,
.doh .doh-menu-toggle[aria-expanded="true"] {
	box-shadow: none !important;
	min-height: 44px;
	min-width: 44px;
}

.doh .doh-hub-layout--list-only,
.doh .doh-hub-layout--list-only.doh-hub-layout--no-rail {
	grid-template-columns: minmax(0, 1fr);
}

.doh .doh-hub-layout--list-only.doh-hub-layout--with-ad-rail {
	grid-template-columns: minmax(170px, 210px) minmax(0, 1fr);
}

.doh .doh-single__reading-container {
	display: block;
	margin-inline: auto;
	max-width: 1040px;
	min-width: 0;
	width: 100%;
}

.doh .doh-single__reading-container > .doh-breadcrumbs {
	margin-bottom: 12px;
}

.doh .doh-single__reading-container > .doh-notice,
.doh .doh-single__reading-container > .doh-single-layout,
.doh .doh-single__reading-container > .doh-related,
.doh .doh-single__reading-container > .doh-single__legacy-ad-slot {
	max-width: 100%;
	width: 100%;
}

@media (max-width: 1023px) {
	.doh .doh-header-center {
		display: none;
	}

	.doh .doh-site-header.doh-header-search-open .doh-site-header__inner {
		align-items: center;
		flex-wrap: wrap;
		height: auto;
		min-height: 64px;
		padding-block: 8px;
	}

	.doh .doh-site-header.doh-header-search-open .doh-header-center {
		display: block;
		flex: 0 0 100%;
		order: 3;
	}

	.doh .doh-header-search {
		max-width: none;
	}

	.doh .doh-hub-layout--list-only.doh-hub-layout--with-ad-rail {
		grid-template-columns: minmax(0, 1fr);
	}
}

@media (max-width: 767px) {
	.doh .doh-site-header.doh-header-search-open .doh-site-header__inner {
		min-height: 60px;
	}
}

@media (max-width: 767px) {
	.doh .doh-filters__search {
		grid-template-columns: minmax(0, 1fr);
	}

	.doh .doh-filters__search > svg {
		display: none;
	}

	.doh .doh-filters__search > input[type="search"],
	.doh .doh-filters__search > .doh-button[type="submit"],
	.doh .doh-filters__search > .doh-filter-button {
		grid-column: 1;
		grid-row: auto;
		min-height: 44px;
		width: 100%;
	}
}

/* Include fractional CSS-pixel viewports that render as 767px at non-integer DPRs. */
@media (max-width: 767.98px) {
	.doh .doh-filters__search {
		grid-template-columns: minmax(0, 1fr);
	}

	.doh .doh-filters__search > svg {
		display: none;
	}

	.doh .doh-filters__search > input[type="search"],
	.doh .doh-filters__search > .doh-button[type="submit"],
	.doh .doh-filters__search > .doh-filter-button {
		grid-column: 1;
		grid-row: auto;
		min-height: 44px;
		width: 100%;
	}
}
