/*
Theme Name: Little Freedom
Theme URI: https://littlefreedom.com.au/
Author: Little Freedom
Description: A quiet, photography-led WordPress theme for adventure, film and visual storytelling.
Version: 1.1.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: little-freedom
*/

@font-face {
	font-display: swap;
	font-family: "Blantic";
	font-style: normal;
	font-weight: 400;
	src: url("assets/fonts/blantic.otf") format("opentype");
}

@font-face {
	font-display: swap;
	font-family: "August Stories";
	font-style: normal;
	font-weight: 400;
	src: url("assets/fonts/august-stories-script-400.otf") format("opentype");
}

:root {
	--color-brand: #333d29;
	--color-brand-light: #a6b697;
	--surface-dark: var(--color-brand);
	--surface-neutral: #f6f3ee;
	--surface-light: #fff;
	--surface-earth: #a68a64;
	--accent: #e6a756;
	--accent-warm: #582f0e;
	--text-primary: #222;
	--text-secondary: #666;
	--text-light: #fff;
	--text-light-muted: rgba(255, 255, 255, 0.72);
	--border-light: rgba(0, 0, 0, 0.08);
	--border-on-light: rgba(34, 34, 34, 0.22);
	--border-on-dark: rgba(255, 255, 255, 0.28);
	--border-on-dark-strong: rgba(255, 255, 255, 0.65);
	--overlay-header: rgba(51, 61, 41, 0.86);
	--overlay-header-mid: rgba(51, 61, 41, 0.48);
	--overlay-header-scrolled: rgba(51, 61, 41, 0.92);
	--overlay-header-solid: rgba(51, 61, 41, 0.96);
	--overlay-brand-clear: rgba(51, 61, 41, 0);
	--overlay-hero-soft: rgba(51, 61, 41, 0.08);
	--overlay-hero-deep: rgba(51, 61, 41, 0.78);
	--overlay-hero-side: rgba(51, 61, 41, 0.66);
	--overlay-hero-side-soft: rgba(51, 61, 41, 0.16);
	--overlay-dark-strong: rgba(0, 0, 0, 0.58);
	--overlay-light-subtle: rgba(255, 255, 255, 0.07);
	--shadow-soft: rgba(0, 0, 0, 0.22);
	--font-accent: "August Stories", cursive;
	--font-display: "Blantic", Georgia, "Times New Roman", serif;
	--font-body: Arial, Helvetica, sans-serif;
	--content-width: 90rem;
	--reading-width: 46.875rem;
	--gutter: clamp(1.25rem, 5vw, 5rem);
	--section-space: clamp(5.5rem, 13vw, 12rem);
	--header-height: 4.75rem;
	--line: var(--border-on-light);
	--ease: cubic-bezier(0.22, 1, 0.36, 1);
}

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

html {
	scroll-behavior: smooth;
	scroll-padding-top: 0;
}

body {
	background: var(--surface-neutral);
	color: var(--text-primary);
	font-family: var(--font-body);
	font-size: clamp(1rem, 0.97rem + 0.15vw, 1.125rem);
	line-height: 1.7;
	margin: 0;
	overflow-x: hidden;
}

body.admin-bar .site-header {
	top: 32px;
}

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

button,
input,
select,
textarea {
	font: inherit;
}

a {
	color: inherit;
	text-decoration-thickness: 0.08em;
	text-underline-offset: 0.22em;
}

a,
button {
	-webkit-tap-highlight-color: transparent;
}

:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 0.35rem;
}

.screen-reader-text {
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	overflow: hidden;
	position: absolute;
	white-space: nowrap;
	width: 1px;
}

.screen-reader-text:focus {
	background: var(--surface-light);
	clip: auto;
	clip-path: none;
	color: var(--text-primary);
	height: auto;
	left: 1rem;
	padding: 0.75rem 1rem;
	top: 1rem;
	width: auto;
	z-index: 1000;
}

.content-shell {
	margin-inline: auto;
	max-width: var(--content-width);
	padding-inline: var(--gutter);
	width: 100%;
}

.chapter {
	padding-block: var(--section-space);
	scroll-margin-top: 0;
}

.eyebrow {
	font-size: 0.68rem;
	font-weight: 700;
	letter-spacing: 0.2em;
	line-height: 1.4;
	margin: 0 0 clamp(0.9rem, 1.8vw, 1.25rem);
	text-transform: uppercase;
}

h1,
h2,
h3 {
	font-family: var(--font-display);
	font-weight: 400;
	letter-spacing: 0.015em;
}

h1,
h2 {
	line-height: 0.88;
}

h3 {
	line-height: 1.02;
}

h2 {
	font-size: clamp(2.5rem, 7vw, 6.75rem);
	margin: 0;
}

.lead {
	font-family: var(--font-display);
	font-size: clamp(1.45rem, 3vw, 2.25rem);
	line-height: 1.35;
}

.section-heading {
	max-width: 58rem;
}

.section-heading--split {
	display: grid;
	gap: clamp(1.5rem, 4vw, 3rem);
	margin-bottom: clamp(3rem, 7vw, 5.75rem);
}

.section-heading--split > p {
	margin: 0;
	max-width: 31rem;
}

.text-link {
	align-items: center;
	display: inline-flex;
	font-size: 0.72rem;
	font-weight: 700;
	gap: 0.8rem;
	letter-spacing: 0.14em;
	margin-top: 1rem;
	padding-block: 0.4rem;
	text-decoration: none;
	text-transform: uppercase;
}

.text-link::after {
	background: currentColor;
	content: "";
	height: 1px;
	transition: width 350ms var(--ease);
	width: 2.5rem;
}

.text-link:hover::after {
	width: 3.5rem;
}

.text-link:hover {
	color: var(--accent-warm);
}

.button-link {
	align-items: center;
	background: transparent;
	border: 2px solid currentColor;
	border-radius: 999px;
	color: var(--text-primary);
	display: inline-flex;
	font-size: 0.72rem;
	font-weight: 700;
	justify-content: center;
	letter-spacing: 0.14em;
	margin-top: 1.25rem;
	min-height: 3rem;
	padding: 0.8rem 1.5rem;
	text-decoration: none;
	text-transform: uppercase;
	transition: background-color 250ms ease, color 250ms ease;
}

.button-link:hover,
.button-link:focus-visible {
	background: var(--accent);
	color: var(--text-primary);
}

/* Header and navigation */
.site-header {
	background: transparent;
	color: var(--text-light);
	isolation: isolate;
	left: 0;
	position: fixed;
	right: 0;
	top: 0;
	transition: color 300ms ease;
	z-index: 100;
}

.site-header::before {
	background: linear-gradient(
		180deg,
		var(--overlay-header) 0%,
		var(--overlay-header-mid) 42%,
		var(--overlay-brand-clear) 100%
	);
	content: "";
	height: calc(100% + 150px);
	left: 0;
	pointer-events: none;
	position: absolute;
	right: 0;
	top: 0;
	z-index: -1;
}

.site-header.is-scrolled::before {
	background: var(--overlay-header-scrolled);
	height: var(--header-height);
}

.site-header.is-menu-open {
	background: var(--overlay-header-solid);
}

.site-header.is-menu-open::before {
	display: none;
}

.site-header__inner {
	align-items: center;
	display: flex;
	justify-content: space-between;
	margin-inline: auto;
	max-width: var(--content-width);
	min-height: var(--header-height);
	padding-inline: var(--gutter);
}

.site-header__actions {
	display: contents;
}

.site-title {
	font-family: var(--font-display);
	font-size: clamp(1.15rem, 1.8vw, 1.45rem);
	letter-spacing: 0.04em;
	text-decoration: none;
}

.site-title:hover {
	color: var(--accent);
}

.menu-toggle {
	align-items: center;
	background: transparent;
	border: 0;
	color: inherit;
	cursor: pointer;
	display: flex;
	font-size: 0.68rem;
	gap: 0.75rem;
	letter-spacing: 0.14em;
	min-height: 2.75rem;
	padding: 0;
	text-transform: uppercase;
}

.menu-toggle__icon {
	display: grid;
	gap: 0.35rem;
	width: 1.5rem;
}

.menu-toggle__icon span {
	background: currentColor;
	height: 1px;
	transition: transform 250ms ease;
	width: 100%;
}

.site-navigation {
	background: var(--surface-dark);
	left: 0;
	padding: 2rem var(--gutter) 3rem;
	position: absolute;
	right: 0;
	top: 100%;
}

.has-js .site-navigation {
	opacity: 0;
	pointer-events: none;
	transform: translateY(-0.75rem);
	transition: opacity 250ms ease, transform 250ms ease, visibility 250ms;
	visibility: hidden;
}

.has-js .is-menu-open .site-navigation {
	opacity: 1;
	pointer-events: auto;
	transform: translateY(0);
	visibility: visible;
}

.is-menu-open .menu-toggle__icon span:first-child {
	transform: translateY(0.2rem) rotate(45deg);
}

.is-menu-open .menu-toggle__icon span:last-child {
	transform: translateY(-0.2rem) rotate(-45deg);
}

.site-navigation ul,
.footer-navigation ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.site-navigation a {
	display: block;
	font-family: var(--font-display);
	font-size: clamp(1.6rem, 7.2vw, 2.65rem);
	letter-spacing: 0.055em;
	line-height: 1.2;
	padding-block: 0.35rem;
	text-decoration: none;
}

.site-navigation a.is-current {
	color: var(--accent);
	opacity: 1;
}

.site-navigation a:hover {
	color: var(--accent);
	opacity: 1;
}

.site-navigation__notice {
	color: currentColor;
	font-size: 0.72rem;
	letter-spacing: 0.09em;
	line-height: 1.5;
	margin: 0;
	max-width: 20rem;
	opacity: 0.72;
	text-transform: uppercase;
}

.little-freedom-block-note {
	border: 1px solid color-mix(in srgb, currentColor 22%, transparent);
	color: currentColor;
	font-size: 0.78rem;
	letter-spacing: 0.12em;
	margin: 2rem auto;
	max-width: var(--content-width);
	opacity: 0.72;
	padding: 1rem;
	text-transform: uppercase;
}

.social-links {
	align-items: center;
	display: flex;
	gap: 0.9rem;
	list-style: none;
	margin: 0;
	padding: 0;
}

.social-links a {
	align-items: center;
	color: inherit;
	display: inline-flex;
	height: 2.5rem;
	justify-content: center;
	opacity: 0.74;
	text-decoration: none;
	transition: color 250ms ease, opacity 250ms ease, transform 250ms ease;
	width: 2.5rem;
}

.social-links a:hover,
.social-links a:focus-visible {
	color: var(--accent);
	opacity: 1;
	transform: translateY(-1px);
}

.social-links svg {
	display: block;
	height: 1.35rem;
	width: 1.35rem;
}

.social-links svg * {
	fill: none;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.8;
}

.social-links svg path {
	fill: currentColor;
	stroke: none;
}

.social-links--header {
	display: none;
}

@media (max-width: 63.99rem) {
	.site-header__actions {
		align-items: center;
		display: flex;
		gap: clamp(0.35rem, 2vw, 0.65rem);
	}

	.social-links--header {
		display: flex;
		gap: 0.1rem;
		order: -1;
	}

	.social-links--header a {
		height: 2rem;
		opacity: 0.82;
		width: 2rem;
	}

	.social-links--header svg {
		height: 1.05rem;
		width: 1.05rem;
	}
}

@media (max-width: 26rem) {
	.site-header__actions {
		gap: 0.3rem;
	}

	.site-title {
		font-size: 1rem;
	}

	.menu-toggle {
		font-size: 0.62rem;
		gap: 0.5rem;
		letter-spacing: 0.16em;
	}

	.social-links--header a {
		height: 1.7rem;
		width: 1.7rem;
	}

	.social-links--header svg {
		height: 0.95rem;
		width: 0.95rem;
	}
}

/* Hero */
.hero {
	align-items: end;
	background: var(--surface-dark);
	color: var(--text-light);
	display: flex;
	min-height: 100vh;
	min-height: 100svh;
	overflow: hidden;
	position: relative;
}

.hero::after {
	background-image: repeating-radial-gradient(
		circle at 0 0,
		var(--overlay-light-subtle) 0 1px,
		transparent 1px 4px
	);
	background-size: 4px 4px;
	content: "";
	inset: 0;
	mix-blend-mode: soft-light;
	opacity: 0.15;
	pointer-events: none;
	position: absolute;
	z-index: 0;
}

.hero__media,
.hero__media::after {
	inset: 0;
	position: absolute;
}

.hero__media::after {
	background:
		linear-gradient(180deg, var(--overlay-hero-soft) 20%, var(--overlay-hero-deep) 100%),
		linear-gradient(90deg, var(--overlay-hero-side) 0%, var(--overlay-hero-side-soft) 68%, transparent 100%);
	content: "";
}

.hero__media picture {
	display: block;
	height: 100%;
	width: 100%;
}

.hero__image,
.hero__media video {
	filter: contrast(1.1) saturate(1.04);
	height: 100%;
	object-fit: cover;
	object-position: 57% center;
	width: 100%;
}

.hero__content {
	padding-bottom: clamp(2rem, 6vh, 4.5rem);
	padding-top: calc(var(--header-height) + 5rem);
	position: relative;
	z-index: 1;
}

.hero__title-group {
	position: relative;
}

.hero__handwritten {
	color: var(--color-brand-light);
	font-family: var(--font-accent);
	font-size: clamp(3.2rem, 12vw, 5.25rem);
	font-weight: 400;
	line-height: 1;
	left: calc(-1 * clamp(0.5rem, 1.5vw, 1rem));
	margin: 0;
	opacity: 0.94;
	position: absolute;
	top: calc(-0.2em - 0.5rem);
	white-space: nowrap;
	z-index: 2;
}

.hero h1 {
	font-size: clamp(1.75rem, 8.5vw, 7.5rem);
	line-height: 0.88;
	margin: 0;
	max-width: min(100%, 92vw);
	overflow-wrap: normal;
	text-wrap: balance;
	word-break: normal;
}

.hero h1 span {
	display: block;
	max-width: 100%;
	white-space: normal;
}

.hero__lede {
	border-left: 1px solid var(--border-on-dark-strong);
	font-size: clamp(0.95rem, 1.5vw, 1.2rem);
	line-height: 1.55;
	margin: clamp(2.15rem, 4.5vh, 3.75rem) 0 0;
	max-width: none;
	padding-left: 1.1rem;
}

.scroll-cue {
	align-items: center;
	display: inline-flex;
	gap: 0.8rem;
	margin-top: clamp(2.75rem, 6vh, 4.5rem);
	text-decoration: none;
}

.scroll-cue__mouse {
	border: 1px solid currentColor;
	border-radius: 1rem;
	display: block;
	height: 2.1rem;
	opacity: 0.72;
	position: relative;
	transition: opacity 250ms ease;
	width: 1.25rem;
}

.scroll-cue__wheel {
	animation: mouse-wheel 2.6s var(--ease) infinite;
	background: currentColor;
	border-radius: 1rem;
	height: 0.35rem;
	left: 50%;
	opacity: 0;
	position: absolute;
	top: 0.45rem;
	transform: translateX(-50%);
	width: 2px;
}

.scroll-cue:hover .scroll-cue__mouse {
	opacity: 1;
}

.scroll-cue__label {
	font-size: 0.6rem;
	letter-spacing: 0.16em;
	opacity: 0.72;
	text-transform: uppercase;
}

@keyframes mouse-wheel {
	0%,
	15% {
		opacity: 0;
		transform: translate(-50%, 0);
	}

	28% {
		opacity: 0.8;
	}

	58% {
		opacity: 0;
		transform: translate(-50%, 0.6rem);
	}

	100% {
		opacity: 0;
		transform: translate(-50%, 0.6rem);
	}
}

/* Philosophy */
.philosophy {
	background: var(--surface-neutral);
}

.philosophy__grid {
	display: grid;
	gap: clamp(3rem, 8vw, 8rem);
}

.philosophy .section-heading h2 {
	max-width: 9ch;
}

.philosophy .lead {
	font-family: var(--font-body);
	font-size: clamp(1.35rem, 1.14rem + 0.75vw, 1.72rem);
	font-style: italic;
	font-weight: 500;
	letter-spacing: -0.015em;
	line-height: 1.68;
	margin-bottom: clamp(2rem, 4vw, 3rem);
	max-width: 34rem;
	position: relative;
	z-index: 0;
}

.philosophy .lead::before {
	color: var(--color-brand);
	content: "“";
	font-family: Georgia, "Times New Roman", serif;
	font-size: clamp(7rem, 15vw, 13rem);
	font-style: normal;
	font-weight: 400;
	left: -0.18em;
	line-height: 1;
	opacity: 0.06;
	pointer-events: none;
	position: absolute;
	top: -0.42em;
	user-select: none;
	z-index: -1;
}

.editorial-copy {
	max-width: var(--reading-width);
}

.editorial-copy p {
	margin: 0 0 1.5rem;
}

.editorial-copy > :last-child {
	margin-bottom: 0;
}

/* Adventure */
.adventure {
	background: var(--surface-earth);
}

.adventure .section-heading--split {
	display: block;
}

.adventure .section-heading--split > p {
	justify-self: start;
	margin-top: clamp(1.25rem, 2.5vw, 2rem);
	max-width: none;
	text-align: left;
	white-space: nowrap;
}

.adventure-feature {
	display: grid;
	gap: clamp(2rem, 6vw, 5rem);
}

.adventure-feature__media {
	aspect-ratio: 16 / 10;
}

.media-frame {
	display: block;
	overflow: hidden;
}

.media-frame img,
.adventure-feature__media img {
	height: 100%;
	object-fit: cover;
	transition: transform 900ms var(--ease);
	width: 100%;
}

.media-frame:hover img {
	transform: scale(1.015);
}

.media-placeholder {
	align-items: center;
	background:
		linear-gradient(145deg, var(--overlay-light-subtle), transparent 55%),
		var(--color-brand-light);
	color: var(--text-primary);
	display: flex;
	justify-content: center;
	min-height: 16rem;
}

.media-placeholder span {
	font-size: 0.65rem;
	letter-spacing: 0.17em;
	text-transform: uppercase;
}

.adventure-feature__body {
	max-width: 40rem;
}

.adventure-feature h3 {
	font-size: clamp(2.2rem, 6vw, 4.75rem);
	margin: 0 0 1.5rem;
}

.adventure-feature__excerpt > :first-child {
	margin-top: 0;
}

.story-carousel {
	margin-top: clamp(3rem, 7vw, 6rem);
	position: relative;
}

.story-carousel__track {
	display: grid;
	gap: clamp(1.5rem, 3vw, 3rem);
	grid-auto-columns: minmax(18rem, 84vw);
	grid-auto-flow: column;
	overflow-x: auto;
	overscroll-behavior-x: contain;
	padding-bottom: 0.25rem;
	scroll-padding-inline: 0;
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
}

.story-carousel__track::-webkit-scrollbar {
	display: none;
}

.story-card {
	aspect-ratio: 4 / 5;
	margin: 0;
	min-height: 26rem;
	scroll-snap-align: start;
}

.story-card__link {
	background: var(--color-brand-light);
	color: var(--text-light);
	display: block;
	height: 100%;
	overflow: hidden;
	position: relative;
	text-decoration: none;
	width: 100%;
}

.story-card__link::after {
	background:
		linear-gradient(180deg, rgba(13, 17, 11, 0.54), transparent 34%),
		linear-gradient(0deg, rgba(13, 17, 11, 0.82), rgba(13, 17, 11, 0.38) 44%, transparent 68%);
	content: "";
	inset: 0;
	pointer-events: none;
	position: absolute;
}

.story-card img {
	display: block;
	height: 100%;
	object-fit: cover;
	transition: filter 900ms var(--ease), transform 900ms var(--ease);
	width: 100%;
}

.story-card__placeholder {
	background:
		linear-gradient(145deg, var(--overlay-light-subtle), transparent 55%),
		var(--color-brand-light);
	height: 100%;
	width: 100%;
}

.story-carousel__empty {
	margin: 0;
}

.story-card__link:hover img,
.story-card__link:focus-visible img {
	filter: saturate(1.04);
	transform: scale(1.025);
}

.story-card__content {
	display: flex;
	flex-direction: column;
	inset: 0;
	justify-content: flex-end;
	padding: clamp(1.3rem, 3vw, 2rem) clamp(1.3rem, 3vw, 2rem) clamp(0.9rem, 2vw, 1.25rem);
	position: absolute;
	z-index: 1;
}

.story-card__meta {
	font-size: 0.64rem;
	font-weight: 700;
	letter-spacing: 0.16em;
	left: clamp(1.3rem, 3vw, 2rem);
	position: absolute;
	top: clamp(1.3rem, 3vw, 2rem);
	text-transform: uppercase;
}

.story-card__title {
	font-family: var(--font-body);
	font-size: clamp(1.55rem, 1.1rem + 1.7vw, 2.65rem);
	font-weight: 800;
	letter-spacing: -0.04em;
	line-height: 0.96;
	margin-top: 0;
	max-width: 12ch;
}

.story-card__action {
	align-self: start;
	border: 2px solid currentColor;
	border-radius: 999px;
	display: inline-flex;
	font-size: 0.78rem;
	font-weight: 800;
	letter-spacing: 0.02em;
	line-height: 1;
	margin-top: clamp(1.4rem, 3.5vw, 2.8rem);
	padding: 0.85rem 1.45rem;
	transition: background-color 250ms ease, color 250ms ease;
}

.story-card__link:hover .story-card__action,
.story-card__link:focus-visible .story-card__action {
	background: var(--accent);
	color: var(--text-primary);
}

.story-carousel__control {
	align-items: center;
	background: var(--surface-light);
	border: 0;
	border-radius: 50%;
	box-shadow: 0 0.9rem 2.5rem var(--shadow-soft);
	color: var(--text-primary);
	cursor: pointer;
	display: inline-flex;
	font: inherit;
	font-size: 1.6rem;
	font-weight: 800;
	height: 4rem;
	justify-content: center;
	position: absolute;
	right: max(1rem, calc(var(--gutter) * -0.15));
	top: 50%;
	transform: translateY(-50%);
	transition: transform 250ms ease, opacity 250ms ease;
	width: 4rem;
	z-index: 2;
}

.story-carousel__control--previous {
	left: max(1rem, calc(var(--gutter) * -0.15));
	right: auto;
}

.story-carousel__control:hover,
.story-carousel__control:focus-visible {
	background: var(--accent);
	color: var(--text-primary);
	opacity: 0.9;
	transform: translateY(-50%) translateX(0.2rem);
}

.story-carousel__control--previous:hover,
.story-carousel__control--previous:focus-visible {
	transform: translateY(-50%) translateX(-0.2rem);
}

/* Instagram feed */
.instagram-feed {
	overflow: hidden;
}

.instagram-feed--background-brand,
.instagram-feed--background-earthy-brown {
	color: var(--text-light);
}

.instagram-feed--background-brand {
	background: var(--color-brand);
}

.instagram-feed--background-secondary-green {
	background: var(--color-brand-light);
	color: var(--text-primary);
}

.instagram-feed--background-earthy-brown {
	background: var(--accent-warm);
}

.instagram-feed--background-light-brown {
	background: var(--surface-earth);
	color: var(--text-primary);
}

.instagram-feed--background-highlight-gold {
	background: var(--accent);
	color: var(--text-primary);
}

.instagram-feed--background-neutral-light {
	background: var(--surface-neutral);
	color: var(--text-primary);
}

.instagram-card {
	margin: 0;
	min-height: 0;
	scroll-snap-align: start;
}

.instagram-card--square {
	aspect-ratio: 1;
}

.instagram-card--portrait {
	aspect-ratio: 4 / 5;
}

.instagram-card__link {
	background: var(--color-brand-light);
	color: var(--text-light);
	display: block;
	height: 100%;
	overflow: hidden;
	position: relative;
	text-decoration: none;
	width: 100%;
}

.instagram-card__link::after {
	background:
		linear-gradient(180deg, rgba(13, 17, 11, 0.48), transparent 34%),
		linear-gradient(0deg, rgba(13, 17, 11, 0.86), rgba(13, 17, 11, 0.24) 58%, transparent 78%);
	content: "";
	inset: 0;
	pointer-events: none;
	position: absolute;
}

.instagram-card__media,
.instagram-card__media img {
	display: block;
	height: 100%;
	width: 100%;
}

.instagram-card__media img {
	object-fit: cover;
	transition: filter 900ms var(--ease), transform 900ms var(--ease);
}

.instagram-card__link:hover .instagram-card__media img,
.instagram-card__link:focus-visible .instagram-card__media img {
	filter: brightness(1.04) saturate(1.04);
	transform: scale(1.025);
}

.instagram-card__content {
	display: flex;
	flex-direction: column;
	inset: 0;
	justify-content: space-between;
	padding: clamp(1.3rem, 3vw, 2rem);
	pointer-events: none;
	position: absolute;
	z-index: 1;
}

.instagram-card__date {
	font-size: 0.64rem;
	font-weight: 700;
	letter-spacing: 0.16em;
	padding-right: 3rem;
	text-transform: uppercase;
}

.instagram-card__icon {
	height: 1.35rem;
	position: absolute;
	right: clamp(1.3rem, 3vw, 2rem);
	top: clamp(1.3rem, 3vw, 2rem);
	width: 1.35rem;
}

.instagram-card__icon svg {
	fill: none;
	height: 100%;
	stroke: currentColor;
	stroke-width: 1.65;
	width: 100%;
}

.instagram-card__footer {
	display: flex;
	flex-direction: column;
}

.instagram-card__caption {
	display: -webkit-box;
	font-size: clamp(1rem, 0.9rem + 0.35vw, 1.25rem);
	font-weight: 600;
	line-height: 1.35;
	max-width: 34ch;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 5;
}

.instagram-card__action {
	align-self: start;
	border: 2px solid currentColor;
	border-radius: 999px;
	font-size: 0.78rem;
	font-weight: 800;
	line-height: 1;
	margin-top: clamp(1.25rem, 3vw, 2.25rem);
	padding: 0.85rem 1.45rem;
	transition: background-color 250ms ease, color 250ms ease;
}

.instagram-card__link:hover .instagram-card__action,
.instagram-card__link:focus-visible .instagram-card__action {
	background: var(--accent);
	color: var(--text-primary);
}

/* Photography */
.photography {
	background: var(--surface-dark);
	color: var(--text-light);
	overflow: hidden;
}

.photography__heading {
	margin-bottom: clamp(4rem, 8vw, 7rem);
	padding-top: clamp(1rem, 4vw, 3rem);
}

.photography__heading p:last-child {
	max-width: none;
}

.photo-carousel {
	margin-inline: auto;
	max-width: 100%;
	position: relative;
}

.photo-carousel__track {
	display: grid;
	gap: clamp(1rem, 2vw, 1.5rem);
	grid-auto-columns: minmax(17rem, 82vw);
	grid-auto-flow: column;
	overflow-x: auto;
	overscroll-behavior-x: contain;
	padding: 0 var(--gutter) 0.25rem;
	scroll-padding-inline: var(--gutter);
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
}

.photo-carousel__track::-webkit-scrollbar {
	display: none;
}

.photo-card {
	aspect-ratio: 4 / 5;
	background: var(--color-brand-light);
	color: var(--text-light);
	margin: 0;
	overflow: hidden;
	position: relative;
	scroll-snap-align: start;
}

.photo-card__link {
	color: inherit;
	display: block;
	height: 100%;
	position: relative;
	text-decoration: none;
	width: 100%;
}

.photo-card::after {
	background:
		linear-gradient(180deg, rgba(13, 17, 11, 0.56), transparent 36%),
		linear-gradient(0deg, rgba(13, 17, 11, 0.84), rgba(13, 17, 11, 0.38) 46%, transparent 70%);
	content: "";
	inset: 0;
	pointer-events: none;
	position: absolute;
}

.photo-card img {
	display: block;
	height: 100%;
	object-fit: cover;
	transition: transform 900ms var(--ease), filter 900ms var(--ease);
	width: 100%;
}

.photo-card:hover img {
	filter: saturate(1.04);
	transform: scale(1.025);
}

.photo-card__link:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 0.25rem;
}

.photo-card__content {
	display: flex;
	flex-direction: column;
	inset: 0;
	justify-content: flex-end;
	padding: clamp(1.25rem, 3vw, 2rem) clamp(1.25rem, 3vw, 2rem) clamp(0.9rem, 2vw, 1.25rem);
	position: absolute;
	z-index: 1;
}

.photo-card__content span:first-child {
	font-family: var(--font-body);
	font-size: clamp(1.4rem, 1.1rem + 1.15vw, 2.4rem);
	font-weight: 800;
	letter-spacing: -0.04em;
	line-height: 0.95;
	max-width: 10ch;
}

.photo-card__action {
	align-self: start;
	border: 2px solid currentColor;
	border-radius: 999px;
	color: inherit;
	display: inline-flex;
	font-size: 0.78rem;
	font-weight: 800;
	letter-spacing: 0.02em;
	line-height: 1;
	margin-top: clamp(1.4rem, 3.5vw, 2.8rem);
	padding: 0.85rem 1.45rem;
	text-decoration: none;
	transition: background-color 250ms ease, color 250ms ease, opacity 250ms ease;
}

.photo-card__action:hover,
.photo-card__action:focus-visible {
	background: var(--accent);
	color: var(--text-primary);
}

.photo-carousel__control {
	align-items: center;
	background: var(--surface-light);
	border: 0;
	border-radius: 50%;
	box-shadow: 0 0.9rem 2.5rem var(--shadow-soft);
	color: var(--text-primary);
	cursor: pointer;
	display: inline-flex;
	font: inherit;
	font-size: 1.6rem;
	font-weight: 800;
	height: 4rem;
	justify-content: center;
	position: absolute;
	right: max(1rem, calc(var(--gutter) * 0.55));
	top: 50%;
	transform: translateY(-50%);
	transition: transform 250ms ease, opacity 250ms ease;
	width: 4rem;
	z-index: 2;
}

.photo-carousel__control--previous {
	left: max(1rem, calc(var(--gutter) * 0.55));
	right: auto;
}

.photo-carousel__control:hover,
.photo-carousel__control:focus-visible {
	background: var(--accent);
	color: var(--text-primary);
	opacity: 0.9;
	transform: translateY(-50%) translateX(0.2rem);
}

.photo-carousel__control--previous:hover,
.photo-carousel__control--previous:focus-visible {
	transform: translateY(-50%) translateX(-0.2rem);
}

/* Film */
.film {
	background: var(--surface-neutral);
	color: var(--text-primary);
}

.film.chapter {
	padding-block: 0;
}

.film__banner {
	margin: 0;
	overflow: hidden;
	position: relative;
	width: 100%;
}

.film__banner picture,
.film__banner img {
	display: block;
	width: 100%;
}

.film__banner img {
	height: auto;
}

.film__action {
	inset: 0;
	pointer-events: none;
	position: absolute;
	z-index: 2;
}

.film__watch {
	background: transparent;
	color: var(--surface-light);
	left: max(var(--gutter), 11vw);
	margin-top: 0;
	pointer-events: auto;
	position: absolute;
	top: 30%;
	transform: translate(18px, 20px);
}

.film__watch:hover,
.film__watch:focus-visible {
	background: var(--accent);
	color: var(--text-primary);
}

@media (max-width: 64rem), (orientation: portrait) {
	.film__picture img {
		aspect-ratio: var(--lf-mobile-aspect-ratio);
		height: auto;
		object-fit: contain;
		width: 100%;
	}
}

/* Collaboration and contact */
.collaboration {
	background: var(--surface-neutral);
}

.collaboration__inner {
	display: grid;
	gap: clamp(3rem, 7vw, 6rem);
}

.collaboration h2 {
	max-width: 12ch;
}

.collaboration__copy {
	max-width: 38rem;
}

.collaboration__copy > :first-child {
	margin-top: 0;
}

.trusted-by {
	border-top: 1px solid var(--border-on-light);
	display: grid;
	gap: clamp(1.25rem, 3vw, 2rem);
	padding-top: clamp(1.25rem, 3vw, 2rem);
}

.trusted-by__label {
	font-size: 0.68rem;
	font-weight: 700;
	letter-spacing: 0.2em;
	margin: 0;
	text-transform: uppercase;
}

.trusted-by__brands {
	display: grid;
	gap: clamp(1.75rem, 4vw, 3.5rem);
	grid-template-columns: repeat(2, minmax(0, 1fr));
	list-style: none;
	margin: 0;
	padding: 0;
}

.trusted-by__brand {
	align-items: center;
	display: flex;
	justify-content: center;
	min-height: 4rem;
}

.trusted-by__brand a {
	align-items: center;
	display: flex;
	height: 100%;
	justify-content: center;
	min-height: 4rem;
	text-decoration: none;
	transition: opacity 250ms ease, transform 250ms ease;
	width: 100%;
}

.trusted-by__brand a:hover,
.trusted-by__brand a:focus-visible {
	opacity: 0.88;
	transform: translateY(-1px);
}

.trusted-by__brand img {
	filter: grayscale(1) saturate(0.15);
	max-height: 3rem;
	max-width: 10rem;
	object-fit: contain;
	opacity: 0.58;
	transition: filter 250ms ease, opacity 250ms ease;
	width: auto;
}

.trusted-by__brand a:hover img,
.trusted-by__brand a:focus-visible img {
	filter: none;
	opacity: 1;
}

.trusted-by__brand--suzuki img {
	max-height: 4rem;
}

.trusted-by__brand--hankook img {
	max-height: 3.3rem;
	max-width: 12.5rem;
}

.trusted-by__brand--solquest img {
	min-width: 9rem;
	max-width: 11.5rem;
}

.trusted-by__brand--good-gears img {
	max-height: 3.65rem;
}

.contact {
	background: var(--color-brand-light);
	padding-block: clamp(5rem, 11vw, 9rem);
}

.contact__inner {
	max-width: var(--content-width);
}

.contact h2 {
	font-size: clamp(3.25rem, 8vw, 6.75rem);
	max-width: 12ch;
}

.contact p:not(.eyebrow) {
	max-width: 40rem;
}

.contact__intro {
	font-size: clamp(1.05rem, 1.2vw, 1.2rem);
	line-height: 1.6;
	margin: clamp(1.5rem, 3vw, 2rem) 0 0;
}

.contact-form {
	display: grid;
	gap: clamp(1.75rem, 4vw, 3rem) clamp(2rem, 5vw, 4rem);
	margin-top: clamp(3rem, 7vw, 5rem);
	max-width: 78rem;
}

.contact-form__field {
	display: grid;
	gap: 0.65rem;
}

.contact-form__field label {
	font-size: 0.68rem;
	font-weight: 700;
	letter-spacing: 0.16em;
	text-transform: uppercase;
}

.contact-form__field input,
.contact-form__field select,
.contact-form__field textarea {
	background: transparent;
	border: 0;
	border-bottom: 1px solid var(--border-on-light);
	border-radius: 0;
	color: var(--text-primary);
	font-family: var(--font-body);
	font-size: 1rem;
	line-height: 1.5;
	padding: 0.85rem 0;
	width: 100%;
}

.contact-form__field input,
.contact-form__field select {
	min-height: 3.4rem;
}

.contact-form__field select {
	cursor: pointer;
}

.contact-form__field textarea {
	min-height: 9.5rem;
	resize: vertical;
}

.contact-form__field input:focus,
.contact-form__field select:focus,
.contact-form__field textarea:focus {
	border-bottom-color: var(--text-primary);
	outline-offset: 0.3rem;
}

.contact-form__actions {
	display: flex;
}

.contact-form__submit {
	border: 2px solid currentColor;
	cursor: pointer;
	margin-top: 0;
	min-width: 11rem;
}

.contact-form__notice {
	border-left: 2px solid currentColor;
	margin: 2rem 0 0;
	padding: 0.65rem 0 0.65rem 1rem;
}

.contact-form__notice--error {
	color: var(--accent-warm);
}

.contact-form__website {
	height: 1px;
	left: -10000px;
	overflow: hidden;
	position: absolute;
	width: 1px;
}

/* Footer */
.site-footer {
	background: var(--surface-dark);
	color: var(--text-light);
}

.site-footer__inner {
	display: grid;
	gap: 2.5rem;
	margin-inline: auto;
	max-width: var(--content-width);
	padding: clamp(3rem, 7vw, 5rem) var(--gutter);
}

.site-footer p {
	font-size: 0.68rem;
	letter-spacing: 0.12em;
	margin: 0.4rem 0;
	text-transform: uppercase;
}

.site-footer__email {
	display: inline-flex;
	font-size: 0.68rem;
	letter-spacing: 0.12em;
	margin-top: 0.85rem;
	text-decoration: none;
	text-transform: uppercase;
}

.site-footer__email:hover,
.site-footer__email:focus-visible {
	color: var(--accent);
}

.site-footer__title {
	font-family: var(--font-display);
	font-size: 1.3rem !important;
	letter-spacing: 0.04em !important;
	text-transform: none !important;
}

.site-footer__logo-link {
	display: inline-flex;
	margin-bottom: 0.65rem;
}

.site-footer__logo {
	display: block;
	filter: brightness(0) invert(1);
	height: auto;
	max-height: 4.75rem;
	width: clamp(8.5rem, 16vw, 13rem);
}

.footer-navigation ul {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem 1.5rem;
}

.footer-navigation a {
	font-size: 0.68rem;
	letter-spacing: 0.1em;
	text-decoration: none;
	text-transform: uppercase;
}

.footer-navigation a:hover {
	color: var(--accent);
}

.site-footer__social {
	color: var(--text-light);
	gap: 1.15rem;
}

.site-footer__social a {
	height: 3rem;
	width: 3rem;
}

.site-footer__social svg {
	height: 1.65rem;
	width: 1.65rem;
}

.site-footer__copyright {
	color: var(--text-light-muted);
}

/* Compact Instagram links page */
.links-page {
	background: var(--links-section-bg, var(--surface-dark));
	color: var(--links-section-text, var(--text-light));
	isolation: isolate;
	min-height: 100svh;
	overflow: hidden;
	padding: clamp(1.5rem, 5vw, 3rem) var(--gutter) clamp(1.75rem, 6vw, 4rem);
	position: relative;
}

.links-page::before {
	background: var(--links-section-bg, var(--surface-dark));
	content: "";
	inset: 0;
	opacity: var(--links-page-overlay, 0.7);
	position: absolute;
	z-index: -1;
}

.links-page__background {
	height: 100%;
	inset: 0;
	object-fit: cover;
	position: absolute;
	width: 100%;
	z-index: -2;
}

.links-page__inner {
	display: grid;
	gap: clamp(1rem, 4vw, 1.6rem);
	margin-inline: auto;
	max-width: 34rem;
	position: relative;
	z-index: 1;
}

.links-page__header,
.links-page__footer {
	text-align: center;
}

.links-page__header {
	display: grid;
	gap: 0.7rem;
	justify-items: center;
	padding-block: clamp(0.25rem, 2vw, 1rem) 0.25rem;
}

.links-page__logo,
.links-page__profile {
	display: block;
	height: clamp(7.5rem, 33vw, 12rem);
	object-fit: contain;
	width: clamp(7.5rem, 33vw, 12rem);
}

.links-page__profile {
	border-radius: 50%;
	object-fit: cover;
}

.links-page__logo {
	filter: brightness(0) invert(1);
}

.links-page__wordmark {
	color: currentColor;
	font-family: var(--font-display);
	font-size: clamp(1.6rem, 9vw, 2.5rem);
	letter-spacing: 0.045em;
	text-decoration: none;
	text-transform: uppercase;
}

.links-page__label,
.links-page__footer {
	color: var(--links-section-muted, var(--text-light-muted));
	font-size: 0.68rem;
	font-weight: 800;
	letter-spacing: 0.18em;
	text-transform: uppercase;
}

.links-page__intro {
	font-size: clamp(0.95rem, 3vw, 1.12rem);
	line-height: 1.58;
	margin: 0 auto;
	max-width: 28rem;
}

.links-page__social {
	justify-content: center;
	margin-top: 0.25rem;
}

.links-page__social svg {
	height: 1.35rem;
	width: 1.35rem;
}

.links-page__sections {
	display: grid;
	gap: clamp(0.9rem, 3vw, 1.2rem);
}

.links-section {
	background: var(--links-section-bg, var(--surface-dark));
	background: color-mix(in srgb, var(--links-section-bg, var(--surface-dark)) var(--links-section-bg-alpha, 100%), transparent);
	border-radius: clamp(1.05rem, 3vw, 1.45rem);
	color: var(--links-section-text, var(--text-light));
	isolation: isolate;
	overflow: hidden;
	padding: clamp(1.15rem, 4.8vw, 1.8rem);
	position: relative;
}

.links-section--spacing-compact {
	padding-block: clamp(0.95rem, 4vw, 1.3rem);
}

.links-section--spacing-roomy {
	padding-block: clamp(1.5rem, 6vw, 2.5rem);
}

.links-section--has-media::after {
	background: var(--links-section-bg, var(--surface-dark));
	content: "";
	inset: 0;
	opacity: var(--links-section-overlay, 0.72);
	position: absolute;
	z-index: -1;
}

.links-section__media {
	inset: 0;
	margin: 0;
	position: absolute;
	z-index: -2;
}

.links-section__media img {
	display: block;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.links-section__content {
	display: grid;
	gap: 0.7rem;
	position: relative;
	z-index: 1;
}

.links-section__label {
	color: var(--links-section-muted, currentColor);
	font-size: 0.64rem;
	font-weight: 800;
	letter-spacing: 0.18em;
	margin: 0;
	text-transform: uppercase;
}

.links-section__heading {
	color: currentColor;
	font-size: clamp(1.72rem, 9.6vw, 3.4rem);
	line-height: 0.88;
	margin: 0;
	max-width: 8.5ch;
	text-transform: uppercase;
}

.links-section__intro {
	color: var(--links-section-muted, currentColor);
	font-size: clamp(0.95rem, 3.4vw, 1.08rem);
	line-height: 1.52;
	margin: 0;
	max-width: 25rem;
}

.links-section__items {
	display: grid;
	gap: 0.62rem;
	list-style: none;
	margin: 0.25rem 0 0;
	padding: 0;
}

.links-page__item a {
	align-items: center;
	background: color-mix(in srgb, currentColor 8%, transparent);
	border: 1px solid color-mix(in srgb, currentColor 22%, transparent);
	border-radius: 0.9rem;
	color: currentColor;
	display: grid;
	gap: 0.75rem;
	grid-template-columns: auto minmax(0, 1fr) auto;
	min-height: 4.15rem;
	padding: 0.7rem 0.82rem;
	text-decoration: none;
	transition: background-color 220ms var(--ease), border-color 220ms var(--ease), color 220ms var(--ease), transform 220ms var(--ease);
}

.links-page__item a:hover,
.links-page__item a:focus-visible {
	background: var(--accent);
	border-color: var(--accent);
	color: var(--text-dark);
	transform: translateY(-1px);
}

.links-page__item-thumb {
	border-radius: 0.68rem;
	display: block;
	flex: 0 0 auto;
	height: 3.15rem;
	overflow: hidden;
	width: 3.15rem;
}

.links-page__item-image {
	display: block;
	height: 100%;
	object-fit: cover;
	transition: transform 280ms var(--ease);
	width: 100%;
}

.links-page__item a:hover .links-page__item-image,
.links-page__item a:focus-visible .links-page__item-image {
	transform: scale(1.035);
}

.links-page__item-copy {
	display: grid;
	gap: 0.18rem;
	min-width: 0;
	text-align: left;
}

.links-page__item-copy strong {
	color: currentColor;
	display: block;
	font-size: 0.82rem;
	font-weight: 800;
	letter-spacing: 0.11em;
	line-height: 1.2;
	overflow-wrap: anywhere;
	text-transform: uppercase;
}

.links-page__item-copy small {
	color: var(--links-section-muted, currentColor);
	display: block;
	font-size: 0.82rem;
	line-height: 1.35;
	overflow-wrap: anywhere;
}

.links-page__item a:hover .links-page__item-copy small,
.links-page__item a:focus-visible .links-page__item-copy small {
	color: rgba(34, 34, 34, 0.74);
}

.links-page__item-arrow {
	font-size: 1rem;
	line-height: 1;
	transition: transform 220ms var(--ease);
}

.links-page__item a:hover .links-page__item-arrow,
.links-page__item a:focus-visible .links-page__item-arrow {
	transform: translateX(0.18rem);
}

.links-page__item--emphasis a {
	border-width: 2px;
	min-height: 4.75rem;
}

.links-page__footer {
	display: grid;
	gap: 0.65rem;
	justify-items: center;
	padding-top: 0.15rem;
}

.links-page__back {
	color: currentColor;
	font-size: 0.7rem;
	font-weight: 800;
	letter-spacing: 0.16em;
	text-decoration: none;
	text-transform: uppercase;
}

.links-page__back:hover,
.links-page__back:focus-visible {
	color: var(--accent);
}

.links-page__footer p {
	margin: 0;
}

@media (min-width: 48rem) {
	.links-page {
		padding-block: clamp(2rem, 5vw, 4rem);
	}

	.links-page__logo,
	.links-page__profile {
		height: clamp(10rem, 15vw, 13.75rem);
		width: clamp(10rem, 15vw, 13.75rem);
	}
}

/* Standard WordPress content */
.entry,
.not-found {
	padding-block: var(--section-space);
}

.entry-header,
.entry-content {
	margin-inline: auto;
	max-width: var(--reading-width);
}

.entry-title {
	font-size: clamp(2.75rem, 8vw, 6rem);
	margin: 0 0 2rem;
}

.entry-meta {
	color: var(--text-secondary);
	font-size: 0.7rem;
	letter-spacing: 0.14em;
	text-transform: uppercase;
}

.entry-content > * {
	max-width: 100%;
}

/* Internal editorial templates */
.article-page,
.standard-page,
.archive-page,
.search-page,
.error-page {
	background: var(--surface-neutral);
	color: var(--text-primary);
}

.article-hero,
.standard-page__header,
.archive-hero,
.error-page__inner {
	padding-top: var(--section-space);
}

.article-hero {
	padding-bottom: clamp(4.5rem, 9vw, 8rem);
}

.article-hero__kicker {
	align-items: baseline;
	display: flex;
	flex-wrap: wrap;
	gap: 0.85rem 1.5rem;
	margin-bottom: clamp(1.5rem, 3vw, 2.25rem);
}

.article-hero__back {
	margin-top: 0;
}

.article-hero__title,
.standard-page__title,
.archive-hero__title,
.error-page h1 {
	font-size: clamp(3.25rem, 10vw, 9rem);
	line-height: 0.88;
	margin: 0;
	max-width: 11ch;
}

.article-hero__intro,
.archive-hero__intro,
.standard-page__content > p:first-child,
.error-page__inner > p {
	font-size: clamp(1.1rem, 1.35vw, 1.35rem);
	line-height: 1.62;
	max-width: var(--reading-width);
}

.article-hero__intro {
	font-weight: 700;
	margin: clamp(1.5rem, 3vw, 2.5rem) 0 0;
}

.article-hero__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem clamp(1.25rem, 3vw, 2.5rem);
	list-style: none;
	margin: clamp(1.25rem, 3vw, 2rem) 0 0;
	padding: 0;
}

.article-hero__meta li {
	display: grid;
	gap: 0.25rem;
}

.article-hero__meta span {
	color: var(--text-secondary);
	font-size: 0.62rem;
	font-weight: 700;
	letter-spacing: 0.16em;
	text-transform: uppercase;
}

.article-hero__meta strong {
	font-size: clamp(0.9rem, 1vw, 1rem);
	font-weight: 700;
	line-height: 1.4;
}

.article-featured-image,
.standard-page__featured {
	margin: 0;
	overflow: hidden;
	width: 100%;
}

.article-featured-image img {
	display: block;
	height: clamp(22rem, 64vh, 43rem);
	max-height: 70vh;
	object-fit: cover;
	width: 100%;
}

.standard-page__featured img {
	height: auto;
	width: 100%;
}

.article-featured-image__caption {
	color: var(--text-secondary);
	font-size: 0.78rem;
	line-height: 1.5;
	margin-top: 0.85rem;
	max-width: min(var(--content-width), 100%);
}

.article-content,
.standard-page__content {
	margin-inline: auto;
	max-width: calc(var(--reading-width) + (var(--gutter) * 2));
	padding-block: clamp(4rem, 9vw, 7rem);
}

.article-content > *,
.standard-page__content > * {
	margin-left: auto;
	margin-right: auto;
	max-width: var(--reading-width);
}

.article-content > * {
	max-width: min(var(--reading-width), 42rem);
}

.article-content > h2,
.standard-page__content > h2 {
	font-size: clamp(2.25rem, 5vw, 4.75rem);
	margin-top: clamp(3rem, 7vw, 5rem);
}

.article-content > figure,
.standard-page__content > figure,
.article-content > .wp-block-image,
.standard-page__content > .wp-block-image {
	max-width: min(100%, 64rem);
}

.article-content figcaption,
.standard-page__content figcaption {
	color: var(--text-secondary);
	font-size: 0.78rem;
	line-height: 1.5;
	margin-top: 0.75rem;
}

.post-story-nav,
.collection-nav {
	border-top: 1px solid var(--border-light);
	display: grid;
	gap: 1.5rem;
	padding-bottom: clamp(5rem, 9vw, 8rem);
	padding-top: clamp(2rem, 5vw, 3.5rem);
}

.post-story-nav__item,
.collection-nav__item {
	min-height: 1px;
}

.post-story-nav__label,
.collection-nav__label {
	color: var(--text-secondary);
	display: block;
	font-size: 0.68rem;
	font-weight: 700;
	letter-spacing: 0.16em;
	margin-bottom: 0.6rem;
	text-transform: uppercase;
}

.post-story-nav a,
.collection-nav__item a {
	font-family: var(--font-display);
	font-size: clamp(1.5rem, 3vw, 2.75rem);
	letter-spacing: 0.015em;
	line-height: 0.95;
	text-decoration: none;
}

.post-story-nav a:hover,
.collection-nav__item a:hover {
	color: var(--accent);
}

.article-closing-line {
	padding-bottom: clamp(4rem, 8vw, 7rem);
}

.article-closing-line p {
	font-size: clamp(1.25rem, 1.8vw, 1.75rem);
	font-weight: 700;
	line-height: 1.45;
	margin: 0 auto;
	max-width: min(var(--reading-width), 42rem);
}

.related-stories {
	border-top: 1px solid var(--border-light);
	padding-bottom: var(--section-space);
	padding-top: clamp(5.5rem, 11vw, 9rem);
}

.related-stories__header {
	margin-bottom: clamp(2rem, 5vw, 4rem);
}

.related-stories h2 {
	font-size: clamp(2.75rem, 7vw, 6rem);
}

.archive-hero {
	padding-bottom: clamp(3rem, 7vw, 6rem);
}

.archive-hero__title {
	max-width: 13ch;
}

.archive-hero__intro {
	margin-top: clamp(1.5rem, 3vw, 2.5rem);
}

.archive-hero__intro p {
	margin: 0;
}

.archive-results {
	padding-bottom: var(--section-space);
}

.editorial-card-grid {
	display: grid;
	gap: clamp(1.4rem, 3vw, 2.5rem);
}

.editorial-card {
	min-width: 0;
}

.editorial-card__link {
	background: var(--surface-dark);
	color: var(--text-light);
	display: grid;
	min-height: clamp(28rem, 42vw, 40rem);
	overflow: hidden;
	position: relative;
	text-decoration: none;
}

.editorial-card__media,
.editorial-card__media img {
	height: 100%;
	inset: 0;
	position: absolute;
	width: 100%;
}

.editorial-card__media {
	margin: 0;
}

.editorial-card__media img {
	object-fit: cover;
	transform: scale(1);
	transition: opacity 500ms var(--ease), transform 900ms var(--ease);
}

.editorial-card__link::after {
	background: linear-gradient(180deg, rgba(0, 0, 0, 0.18), rgba(0, 0, 0, 0.6));
	content: "";
	inset: 0;
	position: absolute;
	transition: opacity 500ms var(--ease);
}

.editorial-card__content {
	align-content: end;
	display: grid;
	min-height: 100%;
	padding: clamp(1.5rem, 4vw, 3rem);
	position: relative;
	z-index: 1;
}

.editorial-card__eyebrow {
	align-self: start;
	font-size: 0.68rem;
	font-weight: 700;
	letter-spacing: 0.16em;
	margin: 0 0 auto;
	text-transform: uppercase;
}

.editorial-card__title {
	font-family: var(--font-body);
	font-size: clamp(2rem, 4vw, 3.75rem);
	font-weight: 700;
	letter-spacing: -0.04em;
	line-height: 0.94;
	margin: auto 0 1rem;
	max-width: 10ch;
}

.editorial-card__excerpt {
	color: var(--text-light-muted);
	line-height: 1.55;
	margin: 0 0 1.5rem;
	max-width: 32rem;
}

.editorial-card__cta {
	border: 2px solid var(--border-on-dark-strong);
	border-radius: 999px;
	display: inline-flex;
	font-size: 0.78rem;
	font-weight: 700;
	justify-self: start;
	letter-spacing: 0.04em;
	line-height: 1;
	padding: 0.9rem 1.45rem;
}

.editorial-card__link:hover .editorial-card__media img {
	opacity: 0.86;
	transform: scale(1.035);
}

.editorial-card__link:hover .editorial-card__cta,
.editorial-card__link:focus-visible .editorial-card__cta {
	background: var(--accent);
	border-color: var(--accent);
	color: var(--text-primary);
}

.navigation.pagination {
	margin-top: clamp(2.5rem, 6vw, 4.5rem);
}

.nav-links {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
}

.page-numbers {
	align-items: center;
	border: 1px solid var(--border-on-light);
	display: inline-flex;
	font-size: 0.75rem;
	font-weight: 700;
	height: 2.5rem;
	justify-content: center;
	letter-spacing: 0.08em;
	min-width: 2.5rem;
	padding-inline: 0.9rem;
	text-decoration: none;
	text-transform: uppercase;
}

.page-numbers.current,
.page-numbers:hover,
.page-numbers:focus-visible {
	background: var(--accent);
	color: var(--text-primary);
}

.search-form {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
	margin-top: clamp(2rem, 4vw, 3rem);
	max-width: var(--reading-width);
}

.search-form label {
	flex: 1 1 18rem;
}

.search-field {
	background: transparent;
	border: 0;
	border-bottom: 1px solid var(--border-on-light);
	border-radius: 0;
	color: var(--text-primary);
	padding: 0.9rem 0;
	width: 100%;
}

.search-submit {
	background: transparent;
	border: 2px solid currentColor;
	border-radius: 999px;
	color: var(--text-primary);
	cursor: pointer;
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.14em;
	padding: 0.9rem 1.4rem;
	text-transform: uppercase;
}

.search-submit:hover,
.search-submit:focus-visible {
	background: var(--accent);
	border-color: var(--accent);
	color: var(--text-primary);
}

.error-page {
	min-height: 100vh;
}

.error-page__inner {
	padding-bottom: var(--section-space);
}

.error-page__inner > p {
	margin: clamp(1.5rem, 3vw, 2.5rem) 0 0;
}

.error-page__links {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 1rem 1.5rem;
	margin-top: clamp(2rem, 5vw, 3.5rem);
}

/* Photography collection pages */
.photography-collection {
	background: var(--surface-neutral);
	color: var(--text-primary);
	padding-block: var(--section-space);
}

.photography-collection__header {
	margin-bottom: clamp(3rem, 8vw, 7rem);
}

.photography-collection__title {
	font-size: clamp(3.5rem, 10vw, 9rem);
	line-height: 0.88;
	margin: 0;
	max-width: 11ch;
}

.photography-collection__intro {
	font-size: clamp(1.1rem, 1.3vw, 1.35rem);
	line-height: 1.6;
	margin: clamp(1.75rem, 3vw, 2.5rem) 0 0;
	max-width: var(--reading-width);
}

.photography-collection__back {
	margin-top: clamp(1.5rem, 3vw, 2rem);
}

.photography-collection__hero {
	background: var(--surface-dark);
	height: clamp(28rem, 62vh, 44rem);
	margin: 0 0 clamp(3rem, 8vw, 7rem);
	overflow: hidden;
	width: 100%;
}

.photography-collection__hero img {
	display: block;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.photography-collection__gallery {
	display: grid;
	gap: clamp(0.75rem, 1.4vw, 1.25rem);
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.photography-collection__frame {
	aspect-ratio: 1;
	margin: 0;
	overflow: hidden;
}

.photography-collection__thumb {
	appearance: none;
	background: var(--color-brand-light);
	border: 0;
	color: var(--surface-light);
	cursor: pointer;
	display: block;
	height: 100%;
	margin: 0;
	overflow: hidden;
	padding: 0;
	position: relative;
	text-align: left;
	width: 100%;
}

.photography-collection__thumb::after {
	background: linear-gradient(180deg, transparent 28%, rgba(0, 0, 0, 0.58));
	content: "";
	inset: 0;
	opacity: 0;
	pointer-events: none;
	position: absolute;
	transition: opacity 220ms var(--ease);
}

.photography-collection__thumb img {
	display: block;
	height: 100%;
	object-fit: cover;
	transition: filter 260ms var(--ease), transform 260ms var(--ease);
	width: 100%;
}

.photography-collection__thumb-label {
	background: transparent;
	border: 2px solid currentColor;
	border-radius: 999px;
	bottom: 1rem;
	color: var(--surface-light);
	display: inline-flex;
	font-size: 0.78rem;
	font-weight: 800;
	letter-spacing: 0.02em;
	line-height: 1;
	opacity: 0;
	padding: 0.85rem 1.45rem;
	position: absolute;
	left: 1rem;
	text-transform: uppercase;
	transform: translateY(0.35rem);
	transition: background-color 250ms ease, color 250ms ease, opacity 220ms var(--ease), transform 220ms var(--ease);
	z-index: 2;
}

.photography-collection__thumb:hover::after,
.photography-collection__thumb:focus-visible::after {
	opacity: 1;
}

.photography-collection__thumb:hover img,
.photography-collection__thumb:focus-visible img {
	filter: brightness(1.06);
	transform: scale(1.03);
}

.photography-collection__thumb:hover .photography-collection__thumb-label,
.photography-collection__thumb:focus-visible .photography-collection__thumb-label {
	background: var(--accent);
	color: var(--text-primary);
	opacity: 1;
	transform: translateY(0);
}

.photography-collection__thumb:focus-visible {
	outline: 2px solid var(--accent);
	outline-offset: 0.35rem;
}

body.is-collection-viewer-open {
	overflow: hidden;
}

.collection-viewer {
	background: rgba(5, 8, 5, 0.96);
	border: 0;
	color: var(--surface-neutral);
	height: 100%;
	inset: 0;
	margin: 0;
	max-height: none;
	max-width: none;
	opacity: 0;
	overflow: hidden;
	padding: clamp(1rem, 3vw, 2rem);
	transition: opacity 220ms var(--ease), transform 220ms var(--ease);
	transform: scale(0.985);
	width: 100%;
}

.collection-viewer[open] {
	align-items: center;
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
	opacity: 1;
	transform: scale(1);
}

.collection-viewer.is-closing {
	opacity: 0;
	transform: scale(0.985);
}

.collection-viewer::backdrop {
	background: rgba(5, 8, 5, 0.96);
}

.collection-viewer__chrome {
	align-items: center;
	display: flex;
	inset: clamp(1rem, 3vw, 2rem) clamp(1rem, 3vw, 2rem) auto;
	justify-content: space-between;
	position: fixed;
	z-index: 3;
}

.collection-viewer__counter,
.collection-viewer__caption {
	color: rgba(248, 245, 239, 0.72);
	font-size: 0.72rem;
	font-weight: 800;
	letter-spacing: 0.14em;
	margin: 0;
	text-transform: uppercase;
}

.collection-viewer__close,
.collection-viewer__control {
	align-items: center;
	appearance: none;
	background: rgba(248, 245, 239, 0.16);
	border: 1px solid rgba(248, 245, 239, 0.42);
	border-radius: 999px;
	color: var(--surface-neutral);
	cursor: pointer;
	display: inline-flex;
	justify-content: center;
	transition: background 180ms var(--ease), border-color 180ms var(--ease), color 180ms var(--ease);
}

.collection-viewer__close {
	background: rgba(248, 245, 239, 0.92);
	border-color: rgba(248, 245, 239, 0.92);
	color: var(--surface-dark);
	font-size: 1.45rem;
	height: 3.25rem;
	width: 3.25rem;
}

.collection-viewer__control {
	background: rgba(248, 245, 239, 0.92);
	border-color: rgba(248, 245, 239, 0.92);
	color: var(--surface-dark);
	font-size: 1.45rem;
	height: 3.75rem;
	position: fixed;
	top: 50%;
	transform: translateY(-50%);
	width: 3.75rem;
	z-index: 4;
}

.collection-viewer__control--previous {
	left: clamp(1rem, 3vw, 2rem);
}

.collection-viewer__control--next {
	right: clamp(1rem, 3vw, 2rem);
}

.collection-viewer__close:hover,
.collection-viewer__close:focus-visible,
.collection-viewer__control:hover,
.collection-viewer__control:focus-visible {
	background: var(--accent);
	border-color: var(--accent);
	color: var(--surface-dark);
	opacity: 1;
}

.collection-viewer__figure {
	align-self: center;
	display: grid;
	gap: clamp(1rem, 2vw, 1.5rem);
	grid-column: 1 / -1;
	justify-self: center;
	margin: 0;
	max-height: calc(100vh - 8rem);
	max-width: min(92rem, 82vw);
	place-items: center;
}

.collection-viewer__image {
	display: block;
	max-height: calc(100vh - 11rem);
	max-width: 100%;
	opacity: 1;
	object-fit: contain;
	transition: opacity 180ms var(--ease), transform 180ms var(--ease);
}

.collection-viewer.is-changing .collection-viewer__image {
	opacity: 0;
	transform: scale(0.995);
}

.collection-viewer__caption {
	display: grid;
	gap: 0.45rem;
	justify-self: center;
	line-height: 1.5;
	max-width: min(44rem, 86vw);
	text-align: center;
	text-transform: none;
}

.collection-viewer:not(.has-caption) .collection-viewer__caption {
	display: none;
}

.collection-viewer__meta {
	color: rgba(248, 245, 239, 0.48);
	display: block;
	font-size: 0.68rem;
	letter-spacing: 0.16em;
	text-transform: uppercase;
}

.collection-nav {
	margin-top: clamp(4rem, 8vw, 7rem);
}

.collection-nav__back {
	align-self: start;
	justify-self: center;
	margin-top: 0;
}

@media (min-width: 48rem) {
	.post-story-nav,
	.collection-nav {
		align-items: start;
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.post-story-nav__item--previous {
		grid-column: 1;
	}

	.post-story-nav__item--next,
	.collection-nav__item--next {
		grid-column: 3;
		text-align: right;
	}

	.editorial-card-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.editorial-card-grid--compact {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.editorial-card-grid--compact .editorial-card__link {
		min-height: clamp(23rem, 30vw, 31rem);
	}

	.photography-collection__gallery {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 47.99rem) {
	.article-hero__title,
	.standard-page__title,
	.archive-hero__title,
	.error-page h1 {
		font-size: clamp(3rem, 16vw, 5.5rem);
	}

	.article-hero__kicker {
		display: block;
	}

	.article-hero__meta {
		gap: 0.85rem 1.25rem;
	}

	.article-featured-image img {
		height: clamp(18rem, 52vh, 30rem);
		max-height: 62vh;
	}

	.post-story-nav,
	.collection-nav {
		gap: 2rem;
	}

	.collection-nav__back {
		justify-self: start;
	}

	.editorial-card__link {
		min-height: 28rem;
	}

	.photography-collection {
		padding-block: clamp(4.5rem, 18vw, 6.5rem);
	}

	.photography-collection__hero {
		height: clamp(22rem, 55vh, 34rem);
	}

	.photography-collection__title {
		font-size: clamp(3rem, 16vw, 5.25rem);
	}

	.collection-viewer[open] {
		grid-template-columns: 1fr;
	}

	.collection-viewer__figure {
		grid-column: 1;
		max-width: 100%;
	}

	.collection-viewer__control {
		bottom: clamp(1rem, 5vw, 1.5rem);
		position: fixed;
		top: auto;
		transform: none;
	}

	.collection-viewer__control--previous {
		left: clamp(1rem, 5vw, 1.5rem);
	}

	.collection-viewer__control--next {
		right: clamp(1rem, 5vw, 1.5rem);
	}
}

@media (prefers-reduced-motion: reduce) {
	.photography-collection__thumb::after,
	.photography-collection__thumb img,
	.photography-collection__thumb-label,
	.collection-viewer,
	.collection-viewer__image {
		transition: none;
	}

	.photography-collection__thumb:hover img,
	.photography-collection__thumb:focus-visible img {
		transform: none;
	}
}

.can-reveal [data-reveal] {
	opacity: 0;
	transform: translateY(1.5rem);
	transition: opacity 800ms var(--ease), transform 800ms var(--ease);
}

.can-reveal [data-reveal="left"] {
	transform: translateX(-1.5rem);
}

.can-reveal [data-reveal="right"] {
	transform: translateX(1.5rem);
}

.can-reveal [data-reveal="scale"] {
	transform: scale(0.98);
}

.can-reveal [data-reveal].is-visible {
	opacity: 1;
	transform: translateY(0);
}

.can-reveal [data-reveal="stagger"] {
	opacity: 1;
	transform: none;
}

.can-reveal [data-reveal="stagger"] > * {
	opacity: 0;
	transform: translateY(1rem);
	transition: opacity 700ms var(--ease), transform 700ms var(--ease);
}

.can-reveal [data-reveal="stagger"].is-visible > * {
	opacity: 1;
	transform: translateY(0);
}

.can-reveal [data-reveal="stagger"].is-visible > *:nth-child(2) {
	transition-delay: 90ms;
}

.can-reveal [data-reveal="stagger"].is-visible > *:nth-child(3) {
	transition-delay: 180ms;
}

.can-reveal [data-reveal="stagger"].is-visible > *:nth-child(4) {
	transition-delay: 270ms;
}

.can-reveal [data-reveal="stagger"].is-visible > *:nth-child(5) {
	transition-delay: 360ms;
}

@media (prefers-reduced-motion: reduce) {
	.can-reveal [data-reveal],
	.can-reveal [data-reveal="stagger"] > * {
		opacity: 1;
		transform: none;
		transition: none;
	}
}

/* Photographic chapter breaks */
.image-break {
	background: var(--surface-dark);
	height: clamp(24rem, 48vw, 48rem);
	margin: 0;
	overflow: hidden;
	width: 100%;
}

.image-break picture {
	display: block;
	height: 100%;
	width: 100%;
}

.image-break img {
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.parallax-enabled [data-parallax] {
	transform: translate3d(0, var(--parallax-y, 0), 0) scale(1.15);
	transform-origin: center;
	will-change: transform;
}

.image-break--forest img {
	object-position: center 58%;
}

.image-break--road img {
	object-position: center 56%;
}

.image-break--sunset img {
	object-position: center 54%;
}

@media (min-width: 48rem) {
	.hero__handwritten {
		font-size: clamp(4.5rem, 11.6vw, 12rem);
		left: calc(-1 * clamp(1.5rem, 2vw, 2.5rem));
		top: calc(-0.42em - 25px);
	}

	.hero__lede {
		white-space: nowrap;
	}

	.section-heading--split,
	.philosophy__grid {
		grid-template-columns: minmax(0, 1fr) minmax(20rem, 0.8fr);
	}

	.section-heading--split > p {
		align-self: end;
		justify-self: end;
	}

	.adventure-feature {
		grid-template-columns: minmax(0, 1.6fr) minmax(18rem, 0.65fr);
	}

	.adventure-feature__body {
		align-self: end;
		padding-bottom: 1rem;
	}

	.story-carousel__track {
		grid-auto-columns: minmax(24rem, calc((100% - clamp(1.5rem, 3vw, 3rem)) / 2));
	}

	.adventure .section-heading--split > p {
		justify-self: start;
		text-align: left;
	}

	.story-card {
		aspect-ratio: 16 / 10;
		min-height: clamp(24rem, 34vw, 34rem);
	}

	.story-carousel__control {
		display: inline-flex;
	}

	.photo-carousel__track {
		grid-auto-columns: minmax(26rem, 31vw);
		padding-right: max(var(--gutter), 5rem);
	}

	.photo-carousel__control {
		display: inline-flex;
	}

	.collaboration__inner {
		column-gap: clamp(3rem, 8vw, 8rem);
		grid-template-columns: minmax(0, 1fr) minmax(20rem, 0.8fr);
	}

	.trusted-by {
		align-items: center;
		grid-column: 1 / -1;
		grid-template-columns: auto minmax(0, 1fr);
	}

	.trusted-by__brands {
		align-items: center;
		gap: clamp(2rem, 4vw, 4rem);
		grid-template-columns: repeat(4, minmax(0, 1fr));
		justify-items: center;
	}

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

	.contact-form__field--wide {
		grid-column: 1 / -1;
	}

	.contact-form__actions {
		margin-top: 0.25rem;
	}

	.collaboration__copy {
		margin-left: auto;
		width: auto;
	}

	.site-footer__inner {
		align-items: end;
		grid-template-columns: 1fr auto auto;
	}

	.site-footer__social {
		justify-self: end;
	}

	.site-footer__copyright {
		grid-column: 1 / -1;
	}
}

@media (min-width: 64rem) {
	.menu-toggle {
		display: none;
	}

	.site-navigation,
	.has-js .site-navigation {
		background: transparent;
		opacity: 1;
		padding: 0;
		pointer-events: auto;
		position: static;
		transform: none;
		visibility: visible;
	}

	.site-navigation ul {
		align-items: center;
		display: flex;
		gap: clamp(0.9rem, 1.7vw, 1.8rem);
	}

	.site-header__actions {
		align-items: center;
		display: flex;
		gap: clamp(0.85rem, 1.6vw, 1.35rem);
	}

	.social-links--header {
		display: flex;
	}

	.photography__heading p:last-child {
		white-space: nowrap;
	}

	.site-navigation a {
		font-family: var(--font-body);
		font-size: 0.72rem;
		font-weight: 400;
		letter-spacing: 0.14em;
		opacity: 0.88;
		padding-block: 1rem;
		position: relative;
		text-transform: uppercase;
	}

	.site-navigation a::after {
		background: currentColor;
		bottom: 0.7rem;
		content: "";
		height: 1px;
		left: 0;
		position: absolute;
		transform: scaleX(0);
		transform-origin: left;
		transition: transform 250ms ease;
		width: 100%;
	}

	.site-navigation a:hover::after,
	.site-navigation a.is-current::after {
		transform: scaleX(1);
	}
}

@media (max-width: 47.99rem) {
	:root {
		--section-space: clamp(4.5rem, 18vw, 6.5rem);
	}

	h2 {
		font-size: clamp(2.75rem, 14vw, 4.75rem);
	}

	.hero h1 span,
	.hero__lede,
	.adventure .section-heading--split > p,
	.photography__heading p:last-child {
		white-space: normal;
	}

	.hero__handwritten {
		font-size: clamp(3.35rem, 13.5vw, 5.5rem);
		left: calc(-1 * clamp(0.35rem, 1.4vw, 0.85rem));
		top: calc(-0.58em - 0.35rem);
		white-space: nowrap;
	}

	.section-heading--split,
	.photography__heading {
		margin-bottom: clamp(2.5rem, 11vw, 4rem);
	}

	.philosophy__grid,
	.collaboration__inner {
		gap: clamp(2.25rem, 10vw, 4rem);
	}

	.story-carousel,
	.contact-form {
		margin-top: clamp(2.5rem, 10vw, 4rem);
	}

	.story-carousel__control,
	.photo-carousel__control {
		font-size: 1.25rem;
		height: 3.25rem;
		right: clamp(0.75rem, 4vw, 1.25rem);
		width: 3.25rem;
	}

	.story-carousel__control--previous,
	.photo-carousel__control--previous {
		left: clamp(0.75rem, 4vw, 1.25rem);
	}

	.film__watch {
		bottom: clamp(2rem, 8vw, 4rem);
		left: 50%;
		top: auto;
		transform: translate(-50%, 15px);
	}

	.trusted-by {
		gap: 1.5rem;
	}

	.trusted-by__brands {
		gap: 1.25rem 1.75rem;
	}

	.trusted-by__brand,
	.trusted-by__brand a {
		min-height: 3.5rem;
	}

	.trusted-by__brand img {
		max-height: 2.75rem;
		max-width: 8.5rem;
	}

	.trusted-by__brand--suzuki img,
	.trusted-by__brand--good-gears img {
		max-height: 3.35rem;
	}

	.trusted-by__brand--hankook img,
	.trusted-by__brand--solquest img {
		max-width: 9.5rem;
	}

	.contact h2 {
		font-size: clamp(3rem, 15vw, 5rem);
		max-width: 10ch;
	}

	.contact__intro {
		margin-top: 1.25rem;
	}

	.contact-form {
		gap: 1.75rem;
	}

	.contact-form__field textarea {
		min-height: 8rem;
	}
}

@media (max-width: 782px) {
	body.admin-bar .site-header {
		top: 46px;
	}
}

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

	.parallax-enabled [data-parallax] {
		transform: none;
		will-change: auto;
	}

	*,
	*::before,
	*::after {
		scroll-behavior: auto !important;
		transition-duration: 0.01ms !important;
	}

	.scroll-cue__wheel {
		animation: none;
		opacity: 0.7;
	}
}
