/* Native WordPress / GreenShift information pages share one reading system.
 * Full-bleed builder templates remain independent (.oh-full-width). */
body.wp-child-theme-onehundred .oh-page--standard {
	width: var(--oh-shell);
	margin-inline: auto;
	padding-block: clamp(24px, 4vw, 48px) 48px;
}

.oh-page--standard .oh-prose--page {
	align-items: stretch;
	gap: 20px;
	padding-top: 24px;
}
.oh-page--standard .oh-prose--page > * { min-width: 0; box-sizing: border-box; }
.oh-page--standard .oh-prose--page > :not(.oh-page-section) { grid-column: 1 / -1; }
.oh-page--standard .oh-prose--page > :is(.alignwide, .oh-page__header) {
	width: 100%;
	max-width: none;
	margin-inline: 0;
}
.oh-page--standard .oh-prose--page > .oh-page__header { margin-bottom: 8px; }
.oh-page--standard .oh-page__header {
	grid-template-columns: minmax(0, 1.3fr) minmax(0, .8fr);
	gap: 12px 40px;
	padding: 0 0 24px;
	border-bottom-width: 3px;
}
.oh-page--standard .oh-page__header h1 { margin: 0; }
.oh-page--standard .oh-page__header .oh-kicker { margin: 0; font-size: .75rem; }
.oh-page--standard .oh-page__summary p { margin: 0; font-size: 1.0625rem; line-height: 1.6; }
.oh-page--standard .oh-prose--page > .oh-page-section {
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 24px;
	border: 1px solid var(--oh-line);
	background: var(--oh-surface, var(--oh-paper));
}
.oh-page--standard .oh-prose--page > .oh-page-section:last-of-type:nth-of-type(odd) { grid-column: 1 / -1; }
.oh-page--standard .oh-prose--page :is(.oh-page-section, .oh-resource-card) :is(h2, h3, h4) {
	margin: 0 0 10px;
	font-size: clamp(1.25rem, 1.65vw, 1.5rem);
	line-height: 1.25;
	letter-spacing: -.025em;
}
.oh-page--standard .oh-prose--page :is(.oh-page-section, .oh-resource-card) :is(p, li) {
	font-size: 1rem;
	line-height: 1.65;
	color: var(--oh-muted);
}
.oh-page--standard .oh-page-section > :last-child { margin-bottom: 0; }
.oh-page--standard .oh-prose--page > :is(.oh-pattern-resource-grid, .oh-pattern-link-hub, .oh-pattern-category-grid) {
	padding: 24px !important;
	border: 1px solid var(--oh-line);
	border-top: 3px solid var(--oh-blue);
	background: var(--oh-surface, var(--oh-paper));
}
.oh-page--standard .oh-prose--page > [class*="oh-pattern-"] > h2 {
	font-size: clamp(1.3rem, 2vw, 1.65rem);
	line-height: 1.25;
	margin: 0 0 20px;
}
.oh-page--standard .oh-pattern-resource-grid .wp-block-columns { gap: 24px; margin: 0; }
.oh-page--standard .oh-resource-card { display: flex; flex-direction: column; height: 100%; }
.oh-page--standard .oh-prose--page .oh-resource-card h3 { font-size: 1.2rem; }
.oh-page--standard .oh-resource-card > * { margin-inline: 0 !important; }
.oh-page--standard .oh-resource-card .wp-block-buttons { margin-top: auto; padding-top: 8px; }
.oh-page--standard .wp-block-button__link {
	padding: 10px 16px;
	font-size: .875rem;
	line-height: 1.4;
	font-weight: 700;
	text-decoration: none;
	box-shadow: none;
	overflow-wrap: anywhere;
}
.oh-page--standard .wp-block-button__link:focus-visible { outline: 3px solid var(--oh-blue); outline-offset: 3px; }
body.wp-child-theme-onehundred .wp-block-button__link { font-family: var(--oh-sans); text-decoration: none; }
body.wp-child-theme-onehundred .oh-quick-links a { color: var(--oh-blue); }

/* Policies and other long-form information use a single comfortable measure. */
body.wp-child-theme-onehundred .oh-page--reading { max-width: 800px; }
.oh-page--standard.oh-page--reading .oh-prose--page { display: block; max-width: 100%; }
.oh-page--standard.oh-page--reading .oh-prose--page > .oh-page-section {
	padding: 24px 0;
	border: 0;
	border-bottom: 1px solid var(--oh-line);
	background: transparent;
}
.oh-page--reading .oh-page-section :is(p, li) { max-width: 70ch; }
.oh-page--standard.oh-page--reading .oh-prose--page > .oh-page__header { margin-bottom: 0; }
.oh-page--standard.oh-page--trust .oh-prose--page > .oh-page__header { padding-top: 0; }

/* The expanded search filter panel must fit, not merely be clipped by the body. */
body.wp-child-theme-onehundred .oh-search-filters { box-sizing: border-box; min-width: 0; }
body.wp-child-theme-onehundred .oh-search-filter { min-width: 0; }
body.wp-child-theme-onehundred .oh-search-filters :is(select, button) { box-sizing: border-box; max-width: 100%; }

/* Date/tag archives use the same responsive list system as search and authors. */
.oh-layout > *, .oh-list .oh-card > * { min-width: 0; }
.oh-list .oh-card__media { max-width: 100%; }
@media (max-width: 1024px) {
	body.wp-child-theme-onehundred .oh-layout { grid-template-columns: minmax(0, 1fr); }
	body.wp-child-theme-onehundred .oh-list .oh-card { grid-template-columns: minmax(0, 280px) minmax(0, 1fr); }
	body.wp-child-theme-onehundred .oh-list .oh-card__media { width: 100%; }
	body.wp-child-theme-onehundred .oh-layout > .oh-sidebar { width: 100%; padding-left: 0; border-left: 0; }
}
@media (max-width: 720px) {
	body.wp-child-theme-onehundred .oh-list .oh-card { grid-template-columns: minmax(0, 1fr); }
	body.wp-child-theme-onehundred .oh-list .oh-card__media { height: auto; }
}

@media (max-width: 781px) {
	.oh-search-filters { grid-template-columns: minmax(0, 1fr); }
	.oh-page--standard .oh-prose--page { grid-template-columns: minmax(0, 1fr); gap: 16px; }
	.oh-page--standard .oh-page__header { grid-template-columns: minmax(0, 1fr); gap: 12px; }
	.oh-page--standard .oh-page__summary { border: 0; padding: 0; }
	.oh-page--standard .oh-page__summary p { max-width: 65ch; }
	.oh-page--standard .oh-prose--page > .oh-page-section { padding: 20px; }
	.oh-page--standard .oh-prose--page > :is(.oh-pattern-resource-grid, .oh-pattern-link-hub, .oh-pattern-category-grid) { padding: 20px !important; }
	.oh-page--standard .oh-pattern-resource-grid .wp-block-column + .wp-block-column { padding-top: 20px; border-top: 1px solid var(--oh-line); }
}
