.fgn-page-hero {
	padding-block: clamp(3rem, 5vw, 5rem);
}

.fgn-page-hero + .fgn-section {
	padding-block: clamp(3rem, 5vw, 5rem);
}

.fgn-hero__media {
	background-image: url(../../hero-guided-fishing.png);
	background-image: image-set(url(../../hero-guided-fishing.webp) type("image/webp"), url(../../hero-guided-fishing.png) type("image/png"));
	background-position: center 48%;
}

.fgn-about {
	display: grid;
	gap: clamp(3rem, 6vw, 6rem);
}

.fgn-about-intro h2 {
	max-width: 22ch;
}

.fgn-about-intro > p:not(.fgn-kicker) {
	font-size: 1.08rem;
}

.fgn-values-grid,
.fgn-calendar-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1rem;
}

.fgn-values-grid article,
.fgn-calendar-grid article {
	padding: 1.5rem;
	border: 1px solid var(--fgn-border);
	border-radius: var(--fgn-radius);
	background: #fff;
}

.fgn-values-grid article > span,
.fgn-calendar-grid article > span {
	display: inline-grid;
	place-items: center;
	width: 2.7rem;
	height: 2.7rem;
	border-radius: 50%;
	background: var(--fgn-sand);
	font-size: .8rem;
	font-weight: 900;
}

.fgn-about-split {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1rem;
}

.fgn-about-split > div {
	padding: clamp(1.5rem, 4vw, 3rem);
	border-radius: var(--fgn-radius);
	background: var(--fgn-mist);
}

.fgn-about-cta {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 2rem;
	padding: clamp(2rem, 5vw, 4rem);
	border-radius: var(--fgn-radius);
	background: var(--fgn-ink);
	color: #fff;
}

.fgn-about-cta h2 {
	margin: 0;
}

.fgn-calendar {
	margin-bottom: clamp(4rem, 8vw, 7rem);
}

.fgn-calendar-grid {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.fgn-calendar-note {
	margin-top: 1.5rem;
	padding: 1rem 1.25rem;
	border-left: 4px solid var(--fgn-sand);
	background: #fff9e9;
}

.fgn-journal-heading {
	margin-bottom: 2rem;
}

.fgn-journal-empty {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 2rem;
	padding: clamp(1.5rem, 4vw, 2.5rem);
	border: 1px solid var(--fgn-border);
	border-radius: var(--fgn-radius);
	background: var(--fgn-surface);
}

.fgn-journal-empty p {
	max-width: 52rem;
	margin: 0;
}

.fgn-trip-gallery {
	padding-block: clamp(1.5rem, 3vw, 2.5rem);
	background: #fff;
}

.fgn-trip-gallery__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1rem;
}

.fgn-trip-gallery figure {
	margin: 0;
	overflow: hidden;
	border-radius: var(--fgn-radius);
	background: var(--fgn-mist);
}

.fgn-trip-gallery img {
	display: block;
	width: 100%;
	height: clamp(240px, 34vw, 520px);
	object-fit: cover;
}

@media (max-width: 1500px) {
	.fgn-menu-toggle {
		display: block;
	}

	.fgn-primary-nav {
		position: absolute;
		top: calc(100% + 1px);
		left: 0;
		right: 0;
		display: none;
		align-items: stretch;
		flex-direction: column;
		padding: 1.25rem;
		background: #fff;
		border-bottom: 1px solid var(--fgn-border);
		box-shadow: var(--fgn-shadow);
	}

	.fgn-primary-nav.is-open {
		display: flex;
	}

	.fgn-menu {
		align-items: stretch;
		flex-direction: column;
	}

	.fgn-menu a,
	.fgn-nav-link {
		display: block;
		padding: .55rem;
	}

	.fgn-primary-nav > .fgn-button {
		width: 100%;
	}

	.fgn-language {
		align-self: flex-start;
	}
}

@media (max-width: 640px) {
	.fgn-values-grid,
	.fgn-calendar-grid,
	.fgn-about-split,
	.fgn-trip-gallery__grid {
		grid-template-columns: 1fr;
	}

	.fgn-about-cta {
		align-items: stretch;
		flex-direction: column;
	}

	.fgn-page-hero,
	.fgn-page-hero + .fgn-section {
		padding-block: 2.75rem;
	}

	.fgn-journal-empty {
		align-items: flex-start;
		flex-direction: column;
	}
}
