/**
 * Original Loto Samoa heritage palette and hero treatment.
 *
 * Recreates the visual language of the original application while retaining
 * native, server-rendered WordPress templates.
 */

:root {
	--ocean-950: #243f12;
	--ocean-900: #2d5016;
	--ocean-800: #3a6420;
	--teal-700: #426f29;
	--teal-500: #5d8740;
	--coral-600: #8b391d;
	--coral-500: #a84b2a;
	--gold-500: #b78932;
	--sand-200: #ded0aa;
	--sand-100: #eee1c1;
	--cream: #f5ecd7;
	--paper: #fbf7ec;
	--ink: #23241f;
	--muted: #625f52;
	--line: rgba(45, 80, 22, 0.20);
	--shadow: 0 24px 60px rgba(35, 36, 31, 0.14);
	--shadow-soft: 0 12px 32px rgba(45, 80, 22, 0.10);
}

body {
	background-color: var(--paper);
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='80'%3E%3Cg fill='none' stroke='%238B3A1E' stroke-width='0.6'%3E%3Cpath d='M40 8 L72 40 L40 72 L8 40 Z' opacity='0.035'/%3E%3Cpath d='M40 18 L62 40 L40 62 L18 40 Z' opacity='0.025'/%3E%3C/g%3E%3C/svg%3E");
}

.site-header {
	border-bottom-color: rgba(45, 80, 22, 0.18);
	background: rgba(245, 236, 215, 0.94);
}

.primary-menu a,
.brand-lockup__text {
	color: var(--ocean-900);
}

.primary-menu a:hover,
.primary-menu a:focus,
.text-link,
.entry-content a {
	color: var(--coral-600);
}

.section--sand,
.page-content,
.search-page,
.error-page {
	background-color: var(--cream);
}

.page-banner,
.single-header,
.callout-panel,
.site-footer {
	background-color: var(--ocean-900);
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='80'%3E%3Cg fill='none' stroke='%23F5ECD7' stroke-width='0.6'%3E%3Cpath d='M40 8 L72 40 L40 72 L8 40 Z' opacity='0.08'/%3E%3Cpath d='M40 18 L62 40 L40 62 L18 40 Z' opacity='0.06'/%3E%3Ccircle cx='40' cy='40' r='1.5' fill='%23F5ECD7' opacity='0.06'/%3E%3C/g%3E%3C/svg%3E");
}

.button--primary,
.search-submit {
	background: var(--coral-600);
	color: var(--cream);
}

.button--primary:hover,
.search-submit:hover {
	background: #a84b2a;
	color: #fff;
}

.post-card__meta,
.eyebrow,
.pathway-card__number,
.site-footer__eyebrow {
	color: var(--coral-600);
}

.pathway-card__veil {
	background: linear-gradient(0deg, rgba(36, 63, 18, 0.92), rgba(45, 80, 22, 0.08) 72%);
}

.home-hero {
	isolation: isolate;
	min-height: min(800px, calc(100vh - 5rem));
	align-items: center;
	padding-bottom: 34px;
	background: var(--ocean-900);
}

.home-hero__media {
	z-index: 0;
}

.home-hero__media img {
	object-position: center;
}

.home-hero__overlay {
	z-index: 1;
	background:
		linear-gradient(180deg, rgba(45, 80, 22, 0.52) 0%, rgba(45, 80, 22, 0.68) 58%, rgba(36, 63, 18, 0.82) 100%),
		linear-gradient(90deg, rgba(45, 80, 22, 0.52), rgba(76, 111, 44, 0.38), rgba(36, 63, 18, 0.58));
	backdrop-filter: saturate(1.04);
}

.home-hero__content {
	display: flex;
	width: min(calc(100% - 2.5rem), 980px);
	min-height: 600px;
	padding-block: clamp(5rem, 10vw, 8rem);
	align-items: center;
	justify-content: center;
	flex-direction: column;
	text-align: center;
	text-shadow: 0 3px 20px rgba(25, 45, 13, 0.45);
}

.home-hero__kicker {
	margin: 0 0 0.75rem;
	color: var(--cream);
	font-family: "Piazzolla", Georgia, serif;
	font-size: clamp(1.15rem, 2.2vw, 1.65rem);
	font-style: italic;
	font-weight: 600;
	letter-spacing: 0.08em;
}

.home-hero__content h1 {
	max-width: none;
	margin: 0;
	color: #fff;
	font-size: clamp(4rem, 11vw, 8.5rem);
	font-weight: 900;
	letter-spacing: -0.045em;
	line-height: 0.92;
}

.home-hero__tagline {
	max-width: 760px !important;
	margin: 1.5rem auto 0 !important;
	color: rgba(255, 255, 255, 0.94) !important;
	font-size: clamp(1.05rem, 2vw, 1.35rem) !important;
	line-height: 1.6;
}

.home-hero__tagline strong {
	display: block;
	margin-bottom: 0.15rem;
	color: var(--cream);
	font-family: "Piazzolla", Georgia, serif;
	font-size: clamp(1.5rem, 3vw, 2.25rem);
	font-weight: 700;
}

.home-hero .button-row {
	justify-content: center;
	margin-top: 2rem;
}

.home-hero .button--primary {
	background: var(--cream);
	color: var(--ocean-900);
	box-shadow: 0 12px 30px rgba(25, 45, 13, 0.32);
}

.home-hero .button--primary:hover {
	background: #fff;
	color: var(--coral-600);
	transform: translateY(-2px);
}

/* Green siapo band with the original nested-diamond visual language. */
.home-hero::after {
	position: absolute;
	z-index: 3;
	right: 0;
	bottom: 0;
	left: 0;
	height: 34px;
	content: "";
	background-color: #2d5016;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='34'%3E%3Cg fill='none' stroke='%23F5ECD7' stroke-width='1'%3E%3Cpath d='M20 3 L37 17 L20 31 L3 17 Z' opacity='.75'/%3E%3Cpath d='M20 9 L30 17 L20 25 L10 17 Z' opacity='.55'/%3E%3Cpath d='M60 3 L77 17 L60 31 L43 17 Z' opacity='.75'/%3E%3Cpath d='M60 9 L70 17 L60 25 L50 17 Z' opacity='.55'/%3E%3C/g%3E%3C/svg%3E");
	background-position: center;
	background-repeat: repeat-x;
	border-top: 3px solid #8b391d;
	border-bottom: 3px solid #243f12;
	box-shadow: 0 -2px 12px rgba(35, 36, 31, 0.22);
}

@media (max-width: 680px) {
	.home-hero {
		min-height: 680px;
	}

	.home-hero__content {
		min-height: 540px;
		padding-block: 4.5rem;
	}

	.home-hero__content h1 {
		font-size: clamp(3.5rem, 20vw, 5.5rem);
	}

	.home-hero__kicker {
		letter-spacing: 0.04em;
	}

	.home-hero::after {
		height: 28px;
		background-size: auto 28px;
	}
}
