/* Shared landing-page design: Exploration + Life on the Road.
   No overlay text on photographs. One definition per selector outside breakpoints. */
:root {
	--bg: #071b18;
	--panel: #102c25;
	--accent: #a2c960;
	--text: #f6f8f5;
	--muted: #c0cec6;
	--border: rgba(162, 201, 96, .22)
}

*,
*::before,
*::after {
	box-sizing: border-box
}

html {
	scroll-behavior: smooth
}

body {
	margin: 0;
	background: var(--bg);
	color: var(--text);
	font: 16px/1.6 Arial, Helvetica, sans-serif
}

a {
	color: inherit
}

img {
	max-width: 100%;
	display: block
}

.section-shell {
	width: min(1160px, calc(100% - 48px));
	margin-inline: auto
}

.skip-link {
	position: absolute;
	left: 10px;
	top: -100px;
	background: #fff;
	color: #071b18;
	padding: 10px;
	z-index: 10
}

.skip-link:focus {
	top: 10px
}

.section-header {
	background: #061a16;
	border-bottom: 1px solid var(--border)
}

.section-header__inner {
	min-height: 78px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 20px
}

.section-brand {
	text-decoration: none;
	font-weight: 900;
	letter-spacing: .09em;
	font-size: clamp(.95rem, 1.8vw, 1.25rem)
}

.section-brand span {
	color: var(--accent)
}

.section-header__links {
	display: flex;
	gap: 24px;
	flex-wrap: wrap
}

.section-header__links a {
	text-decoration: none;
	color: #d7e5dc;
	font-size: .92rem
}

.section-header__links a:hover,
.section-text-link:hover {
	color: var(--accent)
}

.section-hero {
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(340px, .85fr);
	min-height: 620px;
	background: #0b241e
}

.section-hero__photo {
	min-height: 620px;
	overflow: hidden
}

.section-hero__photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 48% center
}

.section-page--exploration .section-hero__photo img {
	object-position: 38% center
}

.section-hero__story {
	align-self: center;
	padding: clamp(36px, 5vw, 85px) clamp(28px, 5vw, 90px);
	max-width: 690px
}

.section-kicker {
	color: var(--accent);
	font-weight: 800;
	letter-spacing: .22em;
	font-size: .75rem;
	margin: 0 0 16px
}

.section-hero h1 {
	font-size: clamp(3rem, 5.4vw, 5.7rem);
	line-height: 1.04;
	letter-spacing: -.045em;
	margin: 0 0 20px
}

.section-hero__statement {
	color: var(--accent);
	font-weight: 900;
	font-size: clamp(1.12rem, 2vw, 1.65rem);
	line-height: 1.27;
	letter-spacing: .025em;
	margin: 0 0 20px
}

.section-hero__description {
	font-size: clamp(1rem, 1.2vw, 1.15rem);
	color: #dbe6de;
	margin: 0 0 28px;
	max-width: 48ch
}

.section-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 18px;
	min-height: 50px;
	padding: 12px 22px;
	background: var(--accent);
	border: 1px solid var(--accent);
	border-radius: 8px;
	color: #0b2017;
	text-decoration: none;
	font-weight: 800;
	line-height: 1.2
}

.section-button:hover {
	background: #b9dc80
}

a:focus-visible {
	outline: 3px solid #fff;
	outline-offset: 4px
}

.section-block {
	padding-top: 90px;
	padding-bottom: 90px
}

.section-heading {
	max-width: 800px;
	margin-bottom: 36px
}

.section-heading h2,
.section-two-column h2,
.section-next h2 {
	font-size: clamp(2rem, 3.7vw, 3.6rem);
	line-height: 1.14;
	letter-spacing: -.03em;
	margin: 0 0 18px
}

.section-heading>p:last-child,
.section-two-column>div>p:last-child,
.section-next>p:not(.section-kicker) {
	color: var(--muted);
	font-size: 1.08rem;
	max-width: 68ch
}

.section-card-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 16px
}

.section-card {
	padding: 28px 24px 30px;
	background: linear-gradient(145deg, #14352a, #0c241e);
	border: 1px solid var(--border);
	border-radius: 15px
}

.section-card__number {
	font-size: 2.4rem;
	font-weight: 900;
	color: rgba(162, 201, 96, .35);
	line-height: 1
}

.section-card__label {
	font-size: .7rem;
	letter-spacing: .18em;
	font-weight: 800;
	color: var(--accent);
	margin: 22px 0 8px
}

.section-card h3 {
	font-size: 1.25rem;
	line-height: 1.2;
	margin: 0 0 12px
}

.section-card>p:last-child {
	font-size: .96rem;
	color: var(--muted);
	margin: 0
}

.section-band {
	background: #0c241e
}

.section-two-column {
	display: grid;
	grid-template-columns: 1fr minmax(300px, .75fr);
	gap: clamp(30px, 7vw, 110px);
	align-items: center
}

.section-callout {
	padding: 30px;
	border: 1px solid rgba(162, 201, 96, .5);
	border-radius: 14px;
	background: #122f25
}

.section-callout__eyebrow {
	font-size: .7rem;
	letter-spacing: .15em;
	font-weight: 800;
	color: var(--accent)
}

.section-callout p {
	margin: 12px 0
}

.section-callout strong {
	color: #d5edae
}

.section-callout__note {
	font-size: .88rem;
	color: var(--muted);
	border-top: 1px solid var(--border);
	padding-top: 15px
}

.section-next {
	max-width: 1160px
}

.section-next>p:not(.section-kicker) {
	max-width: 740px
}

.section-actions {
	display: flex;
	gap: 24px;
	align-items: center;
	flex-wrap: wrap;
	margin-top: 28px
}

.section-text-link {
	font-weight: 800;
	text-decoration: underline;
	text-decoration-color: var(--accent);
	text-underline-offset: 5px
}

.section-site-map {
	padding: 52px 0 72px;
	background: #102c25
}

.section-site-map .section-kicker {
	text-align: center;
	margin-bottom: 24px
}

.section-footer {
	border-top: 1px solid var(--border);
	padding: 24px 0
}

.section-footer__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	color: var(--muted);
	font-size: .86rem
}

.section-footer a {
	text-decoration: none
}

@media(max-width:1050px) {
	.section-hero {
		grid-template-columns: minmax(0, 1fr) minmax(310px, .9fr);
		min-height: 540px
	}

	.section-hero__photo {
		min-height: 540px
	}

	.section-hero__story {
		padding: 36px
	}

	.section-card-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr))
	}
}

@media(max-width:740px) {
	.section-shell {
		width: calc(100% - 36px)
	}

	.section-header__inner {
		min-height: 72px
	}

	.section-header__links {
		gap: 15px
	}

	.section-hero {
		display: flex;
		flex-direction: column;
		min-height: 0
	}

	.section-hero__photo {
		min-height: 0;
		height: clamp(260px, 52vw, 450px)
	}

	.section-hero__photo img {
		object-position: 45% 38%
	}

	.section-page--exploration .section-hero__photo img {
		object-position: 30% 45%
	}

	.section-hero__story {
		max-width: none;
		width: 100%;
		padding: 30px 24px 38px
	}

	.section-hero h1 {
		font-size: clamp(2.7rem, 8vw, 4rem)
	}

	.section-hero__description {
		margin-bottom: 22px
	}

	.section-block {
		padding-top: 60px;
		padding-bottom: 60px
	}

	.section-two-column {
		grid-template-columns: 1fr;
		gap: 25px
	}
}

@media(max-width:500px) {
	.section-header__inner {
		align-items: flex-start;
		flex-direction: column;
		gap: 5px;
		padding-block: 15px
	}

	.section-header__links {
		gap: 18px
	}

	.section-hero__photo {
		height: clamp(220px, 65vw, 330px)
	}

	.section-hero__story {
		padding: 26px 18px 34px
	}

	.section-hero h1 {
		font-size: 2.65rem
	}

	.section-hero__statement {
		font-size: 1.15rem
	}

	.section-card-grid {
		grid-template-columns: 1fr
	}

	.section-card {
		padding: 23px
	}

	.section-footer__inner {
		flex-direction: column;
		align-items: flex-start
	}
}

@media(prefers-reduced-motion:reduce) {
	html {
		scroll-behavior: auto
	}
}

/* Cards with a destination are fully clickable, including keyboard focus. */
.section-card--link {
	display: block;
	color: inherit;
	text-decoration: none;
	transition: border-color .2s ease, transform .2s ease
}

.section-card--link:hover {
	border-color: var(--accent);
	transform: translateY(-2px)
}

.section-card--link:focus-visible {
	outline: 3px solid var(--accent);
	outline-offset: 4px
}

@media(prefers-reduced-motion:reduce) {
	.section-card--link {
		transition: none
	}
}

/* Clickable cards: remove inherited link underlines */
.section-card--link,
.section-card--link *,
.section-card--link:hover,
.section-card--link:hover * {
	text-decoration: none;
}