/**
 * Hawksbury Section Wrapper — shared foundation.
 * Loaded on the front end and in the editor. Block-specific skins stay in blocks.css.
 */

.hk-section {
	position: relative;
}

.hk-section__inner {
	width: 100%;
	margin-inline: auto;
	padding-inline: var(--hk-gutter, 1.25rem);
	box-sizing: border-box;
}

.hk-section--reading .hk-section__inner {
	max-width: calc(var(--hk-width-reading) + (var(--hk-gutter, 1.25rem) * 2));
}

.hk-section--content .hk-section__inner {
	max-width: var(--hk-width-content);
}

.hk-section--wide .hk-section__inner {
	max-width: var(--hk-width-wide);
}

.hk-section--full .hk-section__inner {
	max-width: none;
}

.hk-space--none {
	padding-block: var(--hk-section-none);
}

.hk-space--compact {
	padding-block: var(--hk-section-compact);
}

.hk-space--standard {
	padding-block: var(--hk-section-standard);
}

.hk-space--generous {
	padding-block: var(--hk-section-generous);
}

.hk-space--dramatic {
	padding-block: var(--hk-section-dramatic);
}

.hk-theme--default {
	background: transparent;
}

.hk-theme--paper {
	background: var(--hk-colour-paper);
}

.hk-theme--cream {
	background: var(--hk-colour-cream);
}

.hk-theme--white {
	background: var(--hk-colour-white);
}

.hk-theme--forest {
	background: linear-gradient(162deg, var(--color-green) 0%, var(--color-green-dark) 60%, #1c382c 100%);
	color: #fff;
}

/* Stored Band value “tan” — exact previous swatch, not the cream token. */
.hk-theme--tan {
	background: #ece5d8;
}

.hk-theme--forest .lead,
.hk-theme--forest .hk-band__lead {
	color: rgba(255, 255, 255, 0.72);
}

.hk-theme--forest .eyebrow {
	color: rgba(203, 185, 154, 0.85);
}

.hk-section--breakout {
	width: 100vw;
	max-width: 100vw;
	margin-left: calc(50% - 50vw);
}

.site-main--editorial .hk-section--breakout {
	width: 100%;
	max-width: none;
	margin-left: 0;
}

.hk-gap--tight {
	gap: var(--hk-gap-tight);
}

.hk-gap--standard {
	gap: var(--hk-gap-standard);
}

.hk-gap--relaxed {
	gap: var(--hk-gap-relaxed);
}

/* Band heading/lead — compatibility skin for acf/hk-band. */
.hk-band__heading {
	margin: 0.5rem 0 0;
	font-size: clamp(1.75rem, 3vw, 2.5rem);
	line-height: 1.15;
	color: inherit;
}

.hk-band__lead {
	margin: 1rem 0 0;
	max-width: 42rem;
	color: var(--color-text-muted);
}

.hk-theme--forest .hk-band__heading {
	color: #fff;
}

.editorial-page__header {
	padding-block: 3rem 1.5rem;
}

.editorial-page__header .section-title {
	margin: 0;
}

.hk-rule--top {
	border-top: 1px solid var(--color-border);
}

.hk-rule--bottom {
	border-bottom: 1px solid var(--color-border);
}

.hk-rule--both {
	border-block: 1px solid var(--color-border);
}

.editorial-page__content {
	padding-bottom: 3rem;
}

.page-template-default .entry-content.lead > * {
	max-width: none;
}
