/* ============================================================
   Onyoda — About page sections
   Reconciled to the finalized Shopify onyoda-about-* sections.
   Uses theme.json design tokens throughout.
   ============================================================ */

/* ---------- 1. Hero (cream→beige gradient) ---------- */
.ony-about-hero {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	min-height: 60vh;
	padding: 80px 24px;
	background: linear-gradient(180deg, #f5f0ea 0%, #f0e7db 100%);
}
.ony-about-hero__eyebrow {
	margin: 0;
	font-family: var(--wp--preset--font-family--body);
	font-size: 12px;
	font-weight: 500;
	letter-spacing: 0.22em;
	text-transform: uppercase;
	color: var(--wp--preset--color--gold);
}
.ony-about-hero__heading {
	margin: 24px 0 0;
	font-family: var(--wp--preset--font-family--heading);
	font-weight: 400;
	font-size: 86px;
	line-height: 1;
	letter-spacing: -0.01em;
	color: var(--wp--preset--color--sienna);
}

/* ---------- 2. Founder letter (cream) ---------- */
.ony-about-letter {
	display: flex;
	justify-content: center;
	padding: 130px 24px 120px;
}
.ony-about-letter__inner {
	width: 100%;
	max-width: 620px;
}
.ony-about-letter__inner > * {
	margin-block: 0;
}
.ony-about-letter__body p {
	margin: 0;
	font-family: var(--wp--preset--font-family--heading);
	font-weight: 400;
	font-size: 23px;
	line-height: 1.72;
	letter-spacing: 0.003em;
	color: var(--wp--preset--color--sienna);
}
.ony-about-letter__body p + p {
	margin-top: 32px;
}
.ony-about-letter__signature {
	margin-top: 46px;
	font-family: var(--wp--preset--font-family--heading);
	font-style: italic;
	font-weight: 500;
	font-size: 26px;
	color: var(--wp--preset--color--gold);
}

/* ---------- 3. Portrait (cream, beige figure) ---------- */
.ony-about-portrait {
	padding: 10px 24px 30px;
}
.ony-about-portrait__figure {
	margin: 0 auto;
	max-width: 1080px;
}
.ony-about-portrait__media {
	position: relative;
	height: 680px;
	background: var(--wp--preset--color--beige-tile);
	overflow: hidden;
}
.ony-about-portrait__media img,
.ony-about-portrait__placeholder {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}
.ony-about-portrait__placeholder {
	display: flex;
	align-items: center;
	justify-content: center;
	background: repeating-linear-gradient(45deg, #e8ded2 0, #e8ded2 16px, #ddd0bf 16px, #ddd0bf 32px);
}
.ony-about-portrait__placeholder span {
	font-family: var(--wp--preset--font-family--mono);
	font-size: 12px;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: rgba(126, 73, 3, 0.32);
}

/* ---------- 4. Three values (cream) ---------- */
.ony-about-values {
	padding: 140px 56px;
}
.ony-about-values__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 56px;
	max-width: 1100px;
	margin: 0 auto;
}
.ony-about-values__cell {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}
.ony-about-values__heading {
	margin: 0;
	font-family: var(--wp--preset--font-family--heading);
	font-weight: 400;
	font-size: 40px;
	line-height: 1.1;
	color: var(--wp--preset--color--sienna);
}
.ony-about-values__rule {
	display: block;
	width: 34px;
	height: 1px;
	background: var(--wp--preset--color--gold);
	margin: 20px 0;
}
.ony-about-values__body {
	margin: 0;
	max-width: 260px;
	font-family: var(--wp--preset--font-family--body);
	font-weight: 300;
	font-size: 15px;
	line-height: 1.7;
	color: var(--wp--preset--color--espresso);
}

/* ---------- 5. Closing band (espresso) ---------- */
.ony-about-closing {
	text-align: center;
	padding: 130px 24px;
}
.ony-about-closing__eyebrow {
	margin: 0;
	font-family: var(--wp--preset--font-family--body);
	font-size: 12px;
	font-weight: 500;
	letter-spacing: 0.22em;
	text-transform: uppercase;
	color: var(--wp--preset--color--gold);
}
.ony-about-closing__heading {
	margin: 22px 0 0;
	font-family: var(--wp--preset--font-family--heading);
	font-weight: 300;
	font-size: 62px;
	line-height: 1.05;
	color: var(--wp--preset--color--cream);
}
.ony-about-closing__buttons {
	margin-top: 42px;
}
.ony-about-closing__cta .wp-block-button__link {
	display: inline-block;
	padding: 18px 40px;
	background: var(--wp--preset--color--gold);
	color: var(--wp--preset--color--espresso);
	border: 1px solid var(--wp--preset--color--gold);
	border-radius: 0;
	font-family: var(--wp--preset--font-family--body);
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 0.1em;
	text-transform: none;
	text-decoration: none;
	/* letter-spacing is transitioned alongside colour — the reveal on hover. */
	transition: background 0.4s ease, color 0.4s ease, letter-spacing 0.4s ease;
}
.ony-about-closing__cta .wp-block-button__link:hover {
	background: var(--wp--preset--color--cream);
	color: var(--wp--preset--color--sienna);
	letter-spacing: 0.14em;
}

/* Closing CTA (espresso) flows straight into the espresso footer — remove the
   24px root block-gap WordPress puts before the footer template part. Scoped to
   the About page (this stylesheet only loads there); the footer wrapper carries
   the margin, not .onyoda-footer itself. */
footer.wp-block-template-part {
	margin-block-start: 0;
}

/* ---------- Responsive (Shopify breakpoints) ---------- */
@media (max-width: 880px) {
	.ony-about-hero__heading {
		font-size: 62px;
	}
	.ony-about-letter {
		padding: 90px 24px;
	}
	.ony-about-letter__body p {
		font-size: 18px;
	}
	.ony-about-portrait__media {
		height: 520px;
	}
	.ony-about-values {
		padding: 90px 24px;
	}
	.ony-about-values__grid {
		grid-template-columns: 1fr;
		gap: 54px;
		text-align: center;
	}
	.ony-about-values__cell {
		align-items: center;
	}
	.ony-about-values__body {
		max-width: 100%;
	}
	.ony-about-closing {
		padding: 90px 24px;
	}
}
@media (max-width: 560px) {
	.ony-about-hero__heading {
		font-size: 48px;
	}
	.ony-about-closing__heading {
		font-size: 38px;
	}
}
