/**
 * GPE base layout + theme reset (FOZA landing patterns adapted)
 */

html:has(body.dp-landing) {
	scroll-behavior: smooth;
}

body.dp-landing {
	-webkit-text-size-adjust: 100%;
	background: var(--dp-color-white);
	text-size-adjust: 100%;
}

body.dp-landing #wrapper,
body.dp-landing #container,
body.dp-landing #inner_container,
body.dp-landing .entry-content-inner.grid-content {
	background: transparent;
	max-width: none;
	padding-inline: 0;
}

body.dp-landing .page-title-container {
	display: none;
}

body.dp-landing .site-content,
body.dp-landing .entry-content {
	max-width: none;
	padding: 0;
}

body.dp-landing ::selection {
	background: var(--dp-color-gold-bright);
	color: var(--dp-color-navy-deep);
}

body.dp-landing :focus-visible {
	outline: 3px solid var(--dp-color-gold-bright);
	outline-offset: 3px;
}

body.dp-nav-open {
	overflow: hidden;
}

/* dptheme .entry-content resets — header lives inside post content */
.entry-content .dp-site-header ul,
.entry-content .dp-site-header ol {
	list-style: none;
	margin: 0;
	padding: 0;
}

.entry-content .dp-site-header li {
	margin-bottom: 0;
}

.entry-content .dp-site-header a {
	text-decoration: none;
}

.entry-content .dp-hero ul,
.entry-content .dp-hero ol {
	list-style: none;
	margin: 0;
	padding: 0;
}

.entry-content .dp-hero li {
	margin-bottom: 0;
}

.entry-content .dp-hero a:not(.wp-block-button__link) {
	text-decoration: none;
}

body.admin-bar .dp-site-header {
	top: 32px;
}

@media (max-width: 782px) {
	body.admin-bar .dp-site-header {
		top: 46px;
	}
}

.dp-container {
	box-sizing: border-box;
	margin-inline: auto;
	max-width: none;
	padding-inline: var(--dp-page-padding-x);
	width: 100%;
}

@media (max-width: 900px) {
	.dp-container {
		padding-inline: 1em;
	}
}

.dp-landing-root {
	min-height: 50vh;
}

#content.dp-landing-root {
	margin: 0;
	padding: 0;
}

.dp-sr-only {
	border: 0;
	clip: rect(0, 0, 0, 0);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	white-space: nowrap;
	width: 1px;
}

.dp-skip-link {
	background: var(--dp-color-gold-bright);
	color: var(--dp-color-navy-deep);
	font-family: var(--dp-font-ui);
	font-weight: 700;
	left: 1rem;
	padding: 0.75rem 1rem;
	position: absolute;
	top: -100px;
	z-index: 100000;
}

.dp-skip-link:focus {
	top: 1rem;
}

/* Shared typography utilities (FOZA .eyebrow pattern) */
.dp-landing .dp-eyebrow,
.dp-landing .eyebrow {
	color: var(--dp-color-gold-primary);
	font-family: var(--dp-font-ui);
	font-size: var(--dp-text-label-sm);
	font-weight: 700;
	letter-spacing: 0.2em;
	margin: 0 0 var(--dp-gap-content-sm);
	text-transform: uppercase;
}

.dp-landing .dp-meta-banner {
	color: var(--dp-color-white);
	font-family: var(--dp-font-ui);
	font-size: clamp(0.75rem, 1.4vw, 1.25rem);
	font-weight: 700;
	letter-spacing: 0.18em;
	line-height: 1.35;
	margin: 0;
	text-transform: uppercase;
}

.dp-landing .dp-text-gold {
	color: var(--dp-color-gold-bright);
}

.dp-landing .dp-text-navy {
	color: var(--dp-color-navy-deep);
}

.dp-landing .dp-lead {
	color: var(--dp-color-body);
	font-size: var(--dp-text-lead);
	font-weight: 400;
	line-height: var(--dp-line-height-lead);
	max-width: var(--dp-measure-prose);
	text-wrap: pretty;
}

.dp-landing .wp-block-heading {
	margin-top: 0;
}

.dp-landing .wp-block-paragraph {
	margin-block: 0;
	overflow-wrap: break-word;
	text-wrap: pretty;
}

.dp-landing .wp-block-paragraph + .wp-block-paragraph {
	margin-block-start: var(--dp-paragraph-gap);
}

.dp-landing .wp-block-paragraph a {
	color: var(--dp-color-navy-deep);
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 0.15em;
}

.dp-landing .wp-block-paragraph a:hover,
.dp-landing .wp-block-paragraph a:focus-visible {
	color: var(--dp-color-gold-primary);
}

@media (prefers-reduced-motion: reduce) {
	html:has(body.dp-landing) {
		scroll-behavior: auto;
	}
}
