/*
Theme Name: MARLIN
Description: Native WordPress theme for MARLIN logistics.
Version: 0.1.0
Requires at least: 6.4
Requires PHP: 8.1
Text Domain: marlin
*/

:root {
	--marlin-navy: #0f1a3d;
	--marlin-heading: #0f1a3d;
	--marlin-orange: #ff6b18;
	--marlin-paper: #f4f7fc;
	--marlin-surface: #fff;
	--marlin-soft: #f8faff;
	--marlin-ink: #263149;
	--marlin-muted: #68738a;
	--marlin-line: rgba(15, 26, 61, 0.12);
	--marlin-radius: 18px;
	--marlin-display: "Molde Expanded Semibold", "Molde Expanded", "TT Norms Pro Expanded", Molde, Inter, sans-serif;
	--marlin-body: Molde, Inter, "Noto Sans SC", "PingFang SC", "Microsoft YaHei", -apple-system, BlinkMacSystemFont, system-ui, "Helvetica Neue", Arial, sans-serif;
	--marlin-contact-bottom: calc(18px + env(safe-area-inset-bottom));
}

* {
	box-sizing: border-box;
}

html {
	overflow-x: clip;
	scroll-behavior: smooth;
}

body {
	margin: 0;
	overflow-x: clip;
	background: var(--marlin-surface);
	color: var(--marlin-ink);
	font-family: var(--marlin-body);
	-webkit-font-smoothing: antialiased;
}

html[data-cookie-notice-visible="true"] {
	--marlin-contact-bottom: calc(var(--marlin-cookie-notice-height, 0px) + 26px + env(safe-area-inset-bottom));
}

.marlin-contact-dock {
	position: fixed;
	z-index: 120;
	right: 12px;
	bottom: var(--marlin-contact-bottom);
	display: grid;
	gap: 9px;
}

.marlin-contact-dock a {
	position: relative;
	isolation: isolate;
	display: grid;
	width: 52px;
	min-height: 52px;
	place-items: center;
	border: 1px solid color-mix(in srgb, var(--contact-color) 34%, rgba(15, 26, 61, 0.16));
	border-radius: 16px;
	background: color-mix(in srgb, var(--marlin-surface) 92%, var(--contact-color) 8%);
	box-shadow: 0 12px 30px color-mix(in srgb, var(--contact-color) 20%, rgba(4, 13, 32, 0.12));
	transition: transform 300ms ease-in-out, border-color 300ms ease-in-out, box-shadow 300ms ease-in-out;
	backdrop-filter: blur(16px);
}

.marlin-contact-dock a::before {
	position: absolute;
	z-index: -1;
	right: 0;
	bottom: 0;
	left: 0;
	height: 0;
	border-radius: inherit;
	background: var(--contact-color);
	content: "";
	pointer-events: none;
	transition: height 300ms ease-in-out;
}

.marlin-contact-dock a:hover::before,
.marlin-contact-dock a:focus-visible::before {
	height: 100%;
}

.marlin-contact-dock a:hover {
	border-color: var(--contact-color);
	box-shadow: 0 18px 40px color-mix(in srgb, var(--contact-color) 32%, transparent);
	transform: translateY(-2px);
}

.marlin-contact-dock a:active {
	transform: scale(.95);
}

.marlin-contact-dock a:focus-visible {
	outline: 3px solid #ffad6f;
	outline-offset: 3px;
}

.marlin-contact-dock img {
	position: relative;
	z-index: 1;
	width: 28px;
	height: 28px;
	transition: transform 300ms ease-in-out;
}

.marlin-contact-dock span {
	position: absolute;
	top: 50%;
	right: calc(100% + 10px);
	width: max-content;
	height: auto;
	padding: 7px 10px;
	border-radius: 7px;
	color: #fff;
	background: var(--contact-color);
	box-shadow: 0 10px 24px rgba(15, 26, 61, 0.18);
	font-size: 11px;
	font-weight: 900;
	line-height: 1;
	opacity: 0;
	pointer-events: none;
	transform: translate(8px, -50%);
	transition: opacity 300ms ease-in-out, transform 300ms ease-in-out;
	white-space: nowrap;
}

.marlin-contact-dock a:hover img,
.marlin-contact-dock a:focus-visible img {
	transform: scale(1.1);
}

.marlin-contact-dock a:hover span,
.marlin-contact-dock a:focus-visible span {
	opacity: 1;
	transform: translate(0, -50%);
}

@media (max-width: 767px) {
	.marlin-contact-dock {
		right: 8px;
		gap: 7px;
	}

	.marlin-contact-dock a {
		width: 44px;
		min-height: 44px;
		border-radius: 13px;
	}

	.marlin-contact-dock img {
		width: 24px;
		height: 24px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.marlin-contact-dock,
	.marlin-contact-dock a {
		transition: none;
	}
}

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

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

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

a {
	color: inherit;
	text-decoration: none;
}

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

.screen-reader-text {
	position: absolute !important;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.marlin-skip-link {
	position: fixed;
	z-index: 1000;
	top: 8px;
	left: 8px;
	padding: 10px 14px;
	color: #fff;
	background: var(--marlin-navy);
	transform: translateY(-150%);
}

.marlin-skip-link:focus {
	transform: translateY(0);
}

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

.marlin-header {
	position: fixed;
	z-index: 100;
	top: 0;
	right: 0;
	left: 0;
	padding: 14px 20px 0;
	pointer-events: none;
}

.marlin-header__shell {
	display: flex;
	width: min(1260px, 100%);
	align-items: stretch;
	gap: 12px;
	margin-inline: auto;
	pointer-events: none;
}

.marlin-header__inner,
.marlin-logo {
	border: 1px solid rgba(255, 255, 255, 0.74);
	border-radius: 18px;
	background: rgba(255, 255, 255, 0.94);
	box-shadow: 0 18px 70px rgba(15, 26, 61, 0.12);
	backdrop-filter: blur(18px);
	pointer-events: auto;
	transition: height 300ms ease, box-shadow 300ms ease, background 300ms ease;
}

.marlin-header__inner {
	display: flex;
	min-width: 0;
	flex: 1;
	height: 62px;
	align-items: center;
	gap: 22px;
	padding: 0 12px 0 20px;
}

.marlin-header[data-scrolled="true"] :is(.marlin-header__inner, .marlin-logo) {
	height: 56px;
	background: rgba(255, 255, 255, 0.98);
	box-shadow: 0 12px 36px rgba(15, 26, 61, 0.16);
}

.marlin-logo {
	display: flex;
	width: 132px;
	height: 62px;
	align-items: center;
	justify-content: center;
	padding: 0 17px;
}

.marlin-logo img {
	width: 100%;
	height: auto;
}

.marlin-nav {
	min-width: 0;
	flex: 1;
}

.marlin-nav__list,
.marlin-nav .menu {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 4px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.marlin-nav a {
	position: relative;
	display: block;
	padding: 12px 14px;
	border-radius: 12px;
	color: var(--marlin-heading);
	font-size: 0.84rem;
	font-weight: 760;
	transition: color 200ms ease, background 200ms ease;
}

.marlin-nav a::after {
	position: absolute;
	right: 14px;
	bottom: 7px;
	left: 14px;
	height: 1px;
	content: "";
	background: var(--marlin-orange);
	transform: scaleX(0);
	transform-origin: left;
	transition: transform 220ms ease;
}

.marlin-nav a:hover,
.marlin-nav a:focus-visible {
	color: #c74f07;
	background: #f7f8fb;
}

.marlin-nav a:hover::after,
.marlin-nav a:focus-visible::after {
	transform: scaleX(1);
}

.marlin-languages {
	display: flex;
	gap: 3px;
	padding: 3px;
	border: 1px solid var(--marlin-line);
	border-radius: 999px;
}

.marlin-languages :is(a, span) {
	display: grid;
	min-width: 31px;
	height: 28px;
	place-items: center;
	border-radius: 999px;
	font-size: 0.66rem;
	font-weight: 900;
}

.marlin-languages :is(a, span)[aria-current="page"] {
	color: #fff;
	background: var(--marlin-navy);
}

.marlin-header__cta,
.marlin-button {
	display: inline-flex;
	min-height: 48px;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 0 18px;
	border: 1px solid transparent;
	border-radius: 12px;
	font-size: 0.85rem;
	font-weight: 850;
	line-height: 1.2;
	cursor: pointer;
	transition: transform 220ms cubic-bezier(0.16, 1, 0.3, 1), background 220ms ease, box-shadow 220ms ease;
}

.marlin-button > svg {
	width: 18px;
	height: 18px;
	flex: 0 0 18px;
}

.marlin-header__cta,
.marlin-button--orange {
	color: #fff;
	background: var(--marlin-orange);
	box-shadow: 0 14px 32px rgba(255, 107, 24, 0.24);
}

.marlin-header__cta:hover,
.marlin-button:hover {
	transform: translateY(-2px);
}

.marlin-header__cta:hover,
.marlin-button--orange:hover {
	background: #ed5d0e;
	box-shadow: 0 18px 38px rgba(255, 107, 24, 0.32);
}

.marlin-button:focus-visible,
.marlin-header a:focus-visible,
.marlin-header button:focus-visible,
.marlin-calculator :is(input, select, button):focus-visible,
.marlin-lead-form :is(input, select, textarea, button):focus-visible {
	outline: 2px solid #ffad6f;
	outline-offset: 3px;
}

.marlin-menu-toggle,
.marlin-mobile-menu {
	display: none;
}

.marlin-home {
	min-width: 0;
	overflow: clip;
}

.marlin-hero {
	position: relative;
	height: 100svh;
	min-height: 720px;
	overflow: hidden;
	color: #fff;
	background: #061127;
}

.marlin-hero__media,
.marlin-hero__slide,
.marlin-hero__scrim {
	position: absolute;
	inset: 0;
}

.marlin-hero__slide {
	margin: 0;
	opacity: 0;
	transform: scale(1.045);
	transition: opacity 900ms ease, transform 7s linear;
}

.marlin-hero__slide[data-active="true"] {
	opacity: 1;
	transform: scale(1);
}

.marlin-hero__slide img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.marlin-hero__slide:nth-child(1) img,
.marlin-hero__slide:nth-child(3) img {
	object-position: 58% center;
}

.marlin-hero__scrim {
	background: linear-gradient(90deg, rgba(2, 10, 27, 0.94), rgba(3, 13, 33, 0.72) 36%, rgba(3, 13, 33, 0.08) 74%), linear-gradient(0deg, rgba(2, 9, 24, 0.7), transparent 48%);
	transition: background 500ms ease;
}

.marlin-hero[data-tone="light"] .marlin-hero__scrim {
	background: linear-gradient(90deg, rgba(247, 248, 251, 0.97), rgba(247, 248, 251, 0.8) 38%, rgba(247, 248, 251, 0.04) 74%), linear-gradient(0deg, rgba(2, 9, 24, 0.32), transparent 48%);
}

.marlin-hero__frame {
	position: relative;
	display: flex;
	height: 100%;
	align-items: center;
	padding-top: 78px;
}

.marlin-hero__copy {
	position: absolute;
	width: min(610px, 88%);
	opacity: 0;
	pointer-events: none;
	transform: translateY(22px);
}

.marlin-hero__copy[data-active="true"] {
	opacity: 1;
	pointer-events: auto;
	transform: translateY(0);
	transition: opacity 500ms ease, transform 650ms cubic-bezier(0.16, 1, 0.3, 1);
}

.marlin-eyebrow {
	margin: 0 0 11px;
	color: #d95b0b;
	font-size: 0.7rem;
	font-weight: 900;
	letter-spacing: 0.11em;
	text-transform: uppercase;
}

.marlin-hero .marlin-eyebrow {
	color: #ffb071;
}

.marlin-hero[data-tone="light"] :is(.marlin-hero__title, .marlin-hero__text) {
	color: var(--marlin-navy);
}

.marlin-hero[data-tone="light"] .marlin-eyebrow {
	color: #c74f07;
}

.marlin-hero__title {
	max-width: 12ch;
	margin: 0;
	font-family: var(--marlin-display);
	font-size: clamp(3rem, 5.3vw, 5.25rem);
	font-weight: 900;
	letter-spacing: -0.038em;
	line-height: 0.98;
	text-wrap: balance;
}

.marlin-hero__text {
	max-width: 38rem;
	margin: 20px 0 0;
	color: rgba(255, 255, 255, 0.82);
	font-size: clamp(1rem, 1.35vw, 1.16rem);
	font-weight: 650;
	line-height: 1.55;
}

.marlin-hero__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 26px;
}

.marlin-button--glass {
	color: #fff;
	border-color: rgba(255, 255, 255, 0.38);
	background: rgba(4, 15, 38, 0.3);
	box-shadow: none;
	backdrop-filter: blur(8px);
}

.marlin-hero[data-tone="light"] .marlin-button--glass {
	color: var(--marlin-navy);
	border-color: rgba(15, 26, 61, 0.22);
	background: rgba(255, 255, 255, 0.68);
}

.marlin-hero__controls {
	position: absolute;
	bottom: 48px;
	left: 0;
	display: flex;
	gap: 8px;
}

.marlin-hero__controls button {
	position: relative;
	width: 48px;
	height: 48px;
	padding: 0;
	border: 0;
	color: rgba(255, 255, 255, 0.6);
	font-weight: 900;
	background: transparent;
	cursor: pointer;
}

.marlin-hero[data-tone="light"] .marlin-hero__controls button {
	color: rgba(15, 26, 61, 0.48);
}

.marlin-hero__controls button[data-active="true"] {
	color: var(--marlin-orange);
}

.marlin-hero__controls i {
	position: absolute;
	right: 7px;
	bottom: 3px;
	left: 7px;
	height: 2px;
	overflow: hidden;
	background: currentColor;
	opacity: 0.3;
}

.marlin-hero__controls i::after {
	position: absolute;
	inset: 0;
	content: "";
	background: var(--marlin-orange);
	transform: scaleX(0);
	transform-origin: left;
}

.marlin-hero__controls button[data-active="true"] i::after {
	animation: marlin-slide-progress 6.5s linear forwards;
}

@keyframes marlin-slide-progress { to { transform: scaleX(1); } }

.marlin-section {
	position: relative;
	padding-block: clamp(68px, 8vw, 108px);
}

[data-marlin-reveal] {
	opacity: 1;
	transform: none;
	transition: opacity 720ms ease, transform 850ms cubic-bezier(0.16, 1, 0.3, 1);
}

.marlin-motion-ready [data-marlin-reveal] {
	opacity: 0;
	transform: translateY(32px);
}

.marlin-motion-ready [data-marlin-reveal][data-visible="true"] {
	opacity: 1;
	transform: translateY(0);
}

.marlin-estimate {
	background: radial-gradient(circle at 8% 12%, rgba(255, 107, 24, 0.1), transparent 24%), var(--marlin-paper);
}

.marlin-estimate__grid {
	display: grid;
	grid-template-columns: minmax(0, 1.65fr) minmax(320px, 0.75fr);
	gap: 18px;
	align-items: stretch;
}

.marlin-calculator,
.marlin-estimate__lead,
.marlin-lead-form {
	position: relative;
}

.marlin-calculator {
	overflow: hidden;
	padding: clamp(24px, 3vw, 38px);
	border: 1px solid rgba(255, 255, 255, 0.72);
	border-radius: 22px;
	background: rgba(255, 255, 255, 0.92);
	box-shadow: 0 26px 80px rgba(15, 26, 61, 0.1);
}

.marlin-calculator::before,
.marlin-network::before {
	position: absolute;
	top: var(--pointer-y, 50%);
	left: var(--pointer-x, 50%);
	width: 340px;
	height: 340px;
	border-radius: 50%;
	content: "";
	background: radial-gradient(circle, rgba(255, 107, 24, 0.12), transparent 68%);
	pointer-events: none;
	transform: translate(-50%, -50%);
}

.marlin-calculator__heading h2,
.marlin-estimate__lead h2,
.marlin-section-heading h2,
.marlin-network__copy h2,
.marlin-consultation h2 {
	margin: 0;
	color: var(--marlin-heading);
	font-family: var(--marlin-display);
	font-size: clamp(2rem, 3.7vw, 3.6rem);
	font-weight: 900;
	letter-spacing: -0.036em;
	line-height: 1;
	text-wrap: balance;
}

.marlin-calculator__grid,
.marlin-lead-form__grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 12px;
	margin-top: 28px;
}

.marlin-calculator label,
.marlin-lead-form label {
	display: grid;
	gap: 7px;
	color: #4e5a73;
	font-size: 0.74rem;
	font-weight: 800;
}

.marlin-calculator :is(input, select),
.marlin-lead-form :is(input, select, textarea) {
	width: 100%;
	min-height: 48px;
	padding: 0 13px;
	border: 1px solid rgba(15, 26, 61, 0.14);
	border-radius: 11px;
	outline: none;
	color: var(--marlin-heading);
	background: var(--marlin-surface);
	transition: border 180ms ease, box-shadow 180ms ease;
}

.marlin-lead-form select {
	padding-right: 34px;
	appearance: none;
	background-image: linear-gradient(45deg, transparent 50%, currentColor 50%), linear-gradient(135deg, currentColor 50%, transparent 50%);
	background-position: calc(100% - 17px) 21px, calc(100% - 12px) 21px;
	background-repeat: no-repeat;
	background-size: 5px 5px, 5px 5px;
}

.marlin-calculator :is(input, select):focus,
.marlin-lead-form :is(input, select, textarea):focus {
	border-color: var(--marlin-orange);
	box-shadow: 0 0 0 3px rgba(255, 107, 24, 0.12);
}

.marlin-calculator__options {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 16px 0 0;
	padding: 0;
	border: 0;
}

.marlin-calculator__options label {
	display: flex;
	align-items: center;
	gap: 9px;
	padding: 10px 12px;
	border: 1px solid rgba(15, 26, 61, 0.1);
	border-radius: 999px;
	background: #f7f9fd;
	cursor: pointer;
}

.marlin-calculator__options input,
.marlin-consent input {
	width: 17px;
	min-height: 17px;
	padding: 0;
	accent-color: var(--marlin-orange);
}

.marlin-calculator__footer {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	align-items: center;
	gap: 18px;
	margin-top: 22px;
}

.marlin-button:disabled {
	cursor: not-allowed;
	opacity: 0.5;
	transform: none;
}

.marlin-calculator__result {
	display: grid;
	min-height: 64px;
	align-content: center;
	padding-left: 18px;
	border-left: 1px solid var(--marlin-line);
	color: var(--marlin-muted);
	font-size: 0.84rem;
	line-height: 1.45;
}

.marlin-calculator__result strong {
	color: var(--marlin-heading);
	font-family: var(--marlin-display);
	font-size: clamp(1.7rem, 2.5vw, 2.5rem);
	line-height: 1;
}

.marlin-calculator__result small,
.marlin-calculator__result span {
	display: block;
}

.marlin-calculator__result[data-state="error"],
.marlin-lead-result[data-state="error"] {
	color: #b42318;
}

.marlin-estimate__lead {
	padding: clamp(24px, 3vw, 34px);
	border-radius: 22px;
	color: #fff;
	background: var(--marlin-navy);
	box-shadow: 0 26px 80px rgba(15, 26, 61, 0.18);
}

.marlin-estimate__lead .marlin-eyebrow {
	color: #ffad73;
}

.marlin-estimate__lead h2 {
	color: #fff;
	font-size: clamp(1.7rem, 2.5vw, 2.5rem);
}

.marlin-estimate__lead .marlin-lead-form__grid {
	grid-template-columns: 1fr;
	margin-top: 20px;
}

.marlin-lead-form textarea {
	min-height: 88px;
	padding-block: 12px;
	resize: vertical;
}

.marlin-lead-form__comment {
	margin-top: 12px;
}

.marlin-consent {
	display: flex !important;
	grid-template-columns: auto 1fr;
	align-items: flex-start;
	gap: 10px !important;
	margin-top: 14px;
	line-height: 1.4;
}

.marlin-consent a {
	color: var(--marlin-orange);
	font-weight: 900;
	text-underline-offset: 2px;
}

.marlin-lead-form__footer {
	display: flex;
	align-items: center;
	gap: 14px;
	margin-top: 18px;
}

.marlin-lead-result {
	display: grid;
	gap: 3px;
	font-size: 0.8rem;
}

.marlin-lead-result strong {
	color: #2dbf84;
}

.marlin-lead-error {
	margin: 0;
	padding: 11px 13px;
	border: 1px solid rgba(187, 45, 67, .18);
	border-radius: 9px;
	color: #a61f37;
	background: rgba(187, 45, 67, .07);
	font-size: .78rem;
	font-weight: 750;
	line-height: 1.45;
}

.marlin-lead-form :is(input, select, textarea)[aria-invalid="true"] {
	border-color: #bb2d43;
	box-shadow: 0 0 0 3px rgba(187, 45, 67, .09);
}

.marlin-delivery {
	background: var(--marlin-surface);
}

.marlin-section-heading {
	max-width: 820px;
}

.marlin-delivery__stage {
	display: grid;
	height: min(62svh, 590px);
	min-height: 440px;
	grid-template-columns: minmax(0, 1.38fr) minmax(310px, 0.72fr);
	gap: 10px;
	margin-top: 36px;
	transition: grid-template-columns 620ms cubic-bezier(0.16, 1, 0.3, 1);
}

.marlin-delivery__stage[data-active="official"] {
	grid-template-columns: minmax(310px, 0.72fr) minmax(0, 1.38fr);
}

.marlin-delivery__panel {
	position: relative;
	overflow: hidden;
	padding: 0;
	border: 0;
	border-radius: 14px;
	color: #fff;
	background: #07142d;
	cursor: pointer;
	text-align: left;
}

.marlin-delivery__panel > img,
.marlin-delivery__scrim {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
}

.marlin-delivery__panel > img {
	object-fit: cover;
	transition: transform 900ms cubic-bezier(0.16, 1, 0.3, 1), filter 500ms ease;
}

.marlin-delivery__panel[data-active="false"] > img {
	filter: saturate(0.78) brightness(0.75);
	transform: scale(1.04);
}

.marlin-delivery__scrim {
	background: linear-gradient(90deg, rgba(3, 12, 29, 0.9), rgba(3, 12, 29, 0.34) 70%, transparent), linear-gradient(0deg, rgba(3, 12, 29, 0.82), transparent 65%);
}

.marlin-delivery__copy {
	position: absolute;
	z-index: 2;
	bottom: 74px;
	left: clamp(24px, 4vw, 50px);
	display: grid;
	width: min(calc(100% - 48px), 550px);
	gap: 10px;
	transition: bottom 520ms cubic-bezier(0.16, 1, 0.3, 1);
}

.marlin-delivery__copy small {
	color: #ffb77e;
	font-weight: 900;
}

.marlin-delivery__copy strong {
	font-family: var(--marlin-display);
	font-size: clamp(2rem, 3vw, 3.25rem);
	letter-spacing: -0.034em;
	line-height: 1;
}

.marlin-delivery__copy em {
	max-width: 52ch;
	color: rgba(255, 255, 255, 0.78);
	font-size: 0.92rem;
	font-style: normal;
	font-weight: 650;
	line-height: 1.5;
	transition: opacity 350ms ease, transform 450ms ease;
}

.marlin-delivery__panel[data-active="false"] .marlin-delivery__copy {
	bottom: 34px;
}

.marlin-delivery__panel[data-active="false"] .marlin-delivery__copy em,
.marlin-delivery__panel[data-active="false"] .marlin-delivery__route {
	opacity: 0;
	transform: translateY(14px);
}

.marlin-delivery__route {
	position: absolute;
	z-index: 2;
	right: 50px;
	bottom: 28px;
	left: 50px;
	display: flex;
	justify-content: space-between;
	transition: opacity 350ms ease, transform 450ms ease;
}

.marlin-delivery__route::before {
	position: absolute;
	top: 8px;
	right: 8px;
	left: 8px;
	height: 1px;
	content: "";
	background: linear-gradient(90deg, var(--marlin-orange), #fff);
	animation: marlin-route 1.3s cubic-bezier(0.16, 1, 0.3, 1) forwards;
	transform: scaleX(0);
	transform-origin: left;
}

.marlin-delivery__route i {
	position: relative;
	z-index: 1;
	width: 17px;
	height: 17px;
	border: 4px solid rgba(255, 255, 255, 0.72);
	border-radius: 50%;
	background: var(--marlin-orange);
}

@keyframes marlin-route { to { transform: scaleX(1); } }

.marlin-network {
	overflow: hidden;
	color: #fff;
	background: #08142e;
}

.marlin-network::before {
	background: radial-gradient(circle, rgba(255, 107, 24, 0.16), transparent 66%);
}

.marlin-network__grid {
	display: grid;
	grid-template-columns: 0.9fr 1.1fr;
	align-items: center;
	gap: clamp(30px, 6vw, 80px);
}

.marlin-network__copy {
	position: relative;
	z-index: 2;
}

.marlin-network__copy .marlin-eyebrow {
	color: #ffae72;
}

.marlin-network__copy h2 {
	color: #fff;
}

.marlin-network__copy > p:last-of-type {
	max-width: 52ch;
	color: rgba(255, 255, 255, 0.7);
	font-weight: 620;
	line-height: 1.65;
}

.marlin-metrics {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1px;
	margin-top: 32px;
	background: rgba(255, 255, 255, 0.12);
}

.marlin-metrics span {
	display: grid;
	gap: 5px;
	padding: 17px 12px;
	background: #08142e;
}

.marlin-metrics strong {
	font-family: var(--marlin-display);
	font-size: clamp(1.3rem, 2vw, 2rem);
}

.marlin-metrics small {
	color: rgba(255, 255, 255, 0.55);
}

.marlin-orbit {
	position: relative;
	width: min(590px, 100%);
	aspect-ratio: 1;
	justify-self: end;
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 50%;
	background: radial-gradient(circle at 50% 50%, rgba(40, 72, 129, 0.48), transparent 58%);
	box-shadow: inset 0 0 90px rgba(37, 84, 162, 0.15), 0 0 100px rgba(0, 0, 0, 0.22);
}

.marlin-orbit__map {
	position: absolute;
	inset: 15%;
	border-radius: 50%;
	background: url("assets/images/logistics-routes-eurasia-map.png") center/cover no-repeat;
	filter: saturate(0.65) contrast(1.15);
	opacity: 0.34;
	mask-image: radial-gradient(circle, #000 42%, transparent 72%);
}

.marlin-orbit__ring {
	position: absolute;
	border: 1px solid rgba(255, 255, 255, 0.16);
	border-radius: 50%;
}

.marlin-orbit__ring--one { inset: 20%; animation: marlin-spin 18s linear infinite; }
.marlin-orbit__ring--two { inset: 8%; border-style: dashed; animation: marlin-spin 28s linear infinite reverse; }

.marlin-orbit__hub {
	position: absolute;
	display: grid;
	width: 52px;
	height: 52px;
	place-items: center;
	border: 6px solid #08142e;
	border-radius: 50%;
	color: #fff;
	background: var(--marlin-orange);
	box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.26), 0 14px 34px rgba(255, 107, 24, 0.3);
}

.marlin-orbit__hub--china { top: 28%; right: 14%; }
.marlin-orbit__hub--russia { bottom: 29%; left: 15%; }

.marlin-orbit__cargo {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 13px;
	height: 13px;
	border-radius: 50%;
	background: var(--marlin-surface);
	box-shadow: 0 0 0 6px rgba(255, 255, 255, 0.12), 0 0 28px #fff;
	animation: marlin-cargo-orbit 8s ease-in-out infinite;
}

@keyframes marlin-spin { to { transform: rotate(360deg); } }
@keyframes marlin-cargo-orbit {
	0%, 100% { transform: translate(-178px, 72px); }
	50% { transform: translate(164px, -84px); }
}

.marlin-consultation {
	background: radial-gradient(circle at 88% 16%, rgba(255, 107, 24, 0.12), transparent 26%), #f4f7fc;
}

.marlin-consultation__grid {
	display: grid;
	grid-template-columns: 0.75fr 1.25fr;
	gap: clamp(34px, 7vw, 92px);
	align-items: start;
}

.marlin-consultation .marlin-lead-form {
	padding: clamp(24px, 3vw, 36px);
	border: 1px solid rgba(255, 255, 255, 0.8);
	border-radius: 22px;
	background: var(--marlin-surface);
	box-shadow: 0 24px 70px rgba(15, 26, 61, 0.08);
}

.marlin-consultation .marlin-lead-form__grid {
	grid-template-columns: repeat(2, 1fr);
	margin-top: 0;
}

.marlin-editor-content {
	background: var(--marlin-surface);
}

.marlin-thank-you {
	display: grid;
	min-height: 82svh;
	place-items: center;
	padding: 150px 0 90px;
	color: #fff;
	background: radial-gradient(circle at 78% 22%, rgba(255, 107, 24, .2), transparent 28%), #07142f;
}

.marlin-thank-you__inner {
	display: grid;
	max-width: 860px;
	justify-items: start;
}

.marlin-thank-you__mark {
	display: grid;
	width: 74px;
	height: 74px;
	place-items: center;
	margin: 30px 0;
	border: 1px solid rgba(255, 255, 255, .24);
	border-radius: 50%;
	color: var(--marlin-orange);
	font-size: 2rem;
}

.marlin-thank-you h1 {
	max-width: 760px;
	margin: 0;
	font-family: var(--marlin-display);
	font-size: clamp(2.8rem, 7vw, 6.6rem);
	letter-spacing: -.055em;
	line-height: .94;
}

.marlin-thank-you__inner > p:not(.marlin-eyebrow) {
	max-width: 650px;
	margin: 28px 0 34px;
	color: rgba(255, 255, 255, .7);
	font-size: 1.05rem;
	line-height: 1.7;
}

.marlin-footer {
	padding: 54px 0 36px;
	color: rgba(255, 255, 255, 0.72);
	background: #061127;
}

.marlin-footer__grid {
	display: grid;
	grid-template-columns: 1.2fr 0.8fr 1fr;
	gap: 50px;
	align-items: start;
}

.marlin-footer img {
	width: 150px;
}

.marlin-footer p {
	max-width: 36ch;
	line-height: 1.6;
}

.marlin-footer nav,
.marlin-footer__meta {
	display: grid;
	gap: 12px;
}

.marlin-footer a:hover {
	color: #fff;
}

@media (max-width: 1020px) {
	.marlin-nav,
	.marlin-header__cta {
		display: none;
	}

	.marlin-header__inner {
		justify-content: flex-end;
	}

	.marlin-menu-toggle {
		display: grid;
		width: 44px;
		height: 44px;
		place-content: center;
		gap: 5px;
		border: 0;
		border-radius: 12px;
		background: #f4f6fa;
	}

	.marlin-menu-toggle span {
		display: block;
		width: 20px;
		height: 2px;
		background: var(--marlin-navy);
		transition: transform 220ms ease, opacity 220ms ease;
	}

	.marlin-menu-toggle[aria-expanded="true"] span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
	.marlin-menu-toggle[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
	.marlin-menu-toggle[aria-expanded="true"] span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

	.marlin-mobile-menu {
		position: fixed;
		z-index: -1;
		top: 8px;
		right: 8px;
		left: 8px;
		display: grid;
		gap: 8px;
		padding: 86px 22px 28px;
		border-radius: 22px;
		color: #fff;
		background: rgba(6, 17, 39, 0.98);
		box-shadow: 0 28px 80px rgba(4, 12, 30, 0.35);
		pointer-events: auto;
	}

	.marlin-mobile-menu[hidden] { display: none; }
	.marlin-mobile-menu > a { padding: 12px 2px; border-bottom: 1px solid rgba(255,255,255,.1); font-family: var(--marlin-display); font-size: 1.5rem; }
	.marlin-mobile-menu .marlin-languages { width: fit-content; margin-top: 14px; border-color: rgba(255,255,255,.18); }
	.marlin-mobile-menu .marlin-languages :is(a, span)[aria-current="page"] { color: var(--marlin-heading); background: var(--marlin-surface); }

	.marlin-estimate__grid,
	.marlin-network__grid,
	.marlin-consultation__grid {
		grid-template-columns: 1fr;
	}

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

	.marlin-estimate__lead .marlin-lead-form__grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.marlin-orbit {
		justify-self: center;
	}
}

@media (max-width: 720px) {
	body.admin-bar .marlin-header { top: 46px; }
	.marlin-shell { width: min(100% - 32px, 1180px); }
	.marlin-header { padding: 8px; }
	.marlin-header__shell { gap: 8px; }
	.marlin-header__inner { height: 56px; gap: 8px; padding-inline: 8px; border-radius: 15px; }
	.marlin-logo { width: 118px; height: 56px; padding-inline: 14px; border-radius: 15px; }
	.marlin-header__inner > .marlin-languages { display: none; }
	.marlin-hero { min-height: 720px; }
	.marlin-hero__slide img { object-position: 63% center !important; }
	.marlin-hero__scrim,
	.marlin-hero[data-tone="light"] .marlin-hero__scrim { background: linear-gradient(0deg, rgba(3,13,32,.94), rgba(3,13,32,.14) 82%), linear-gradient(90deg, rgba(3,13,32,.7), transparent); }
	.marlin-hero__frame { align-items: flex-end; padding-bottom: 134px; }
	.marlin-hero__copy { width: 100%; }
	.marlin-hero__title { max-width: 100%; color: #fff !important; font-size: clamp(2.35rem, 11vw, 3.45rem); }
	.marlin-hero__text { color: rgba(255,255,255,.8) !important; }
	.marlin-hero .marlin-eyebrow { color: #ffb071 !important; }
	.marlin-hero__controls { bottom: 62px; }
	.marlin-section { padding-block: 58px; }
	.marlin-estimate__grid { width: 100%; gap: 0; }
	.marlin-calculator,
	.marlin-estimate__lead { border-radius: 0; }
	.marlin-calculator__grid,
	.marlin-estimate__lead .marlin-lead-form__grid,
	.marlin-consultation .marlin-lead-form__grid { grid-template-columns: 1fr; }
	.marlin-calculator__footer { grid-template-columns: 1fr; }
	.marlin-calculator__result { padding: 14px 0 0; border-top: 1px solid var(--marlin-line); border-left: 0; }
	.marlin-delivery__stage,
	.marlin-delivery__stage[data-active="official"] { height: auto; min-height: 0; grid-template-columns: 1fr; }
	.marlin-delivery__panel { min-height: 380px; }
	.marlin-delivery__panel[data-active="false"] .marlin-delivery__copy em { opacity: 1; transform: none; }
	.marlin-delivery__panel[data-active="false"] .marlin-delivery__copy { bottom: 68px; }
	.marlin-delivery__panel[data-active="false"] .marlin-delivery__route { opacity: 1; transform: none; }
	.marlin-network__grid { width: min(100% - 32px, 1180px); }
	.marlin-metrics { grid-template-columns: 1fr; }
	.marlin-orbit { width: 116%; margin-right: -8%; }
	.marlin-orbit__hub { width: 44px; height: 44px; }
	@keyframes marlin-cargo-orbit { 0%,100% { transform: translate(-112px,48px); } 50% { transform: translate(104px,-52px); } }
	.marlin-consultation__grid { width: min(100% - 32px, 1180px); }
	.marlin-consultation .marlin-lead-form { padding: 22px; }
	.marlin-footer__grid { grid-template-columns: 1fr; gap: 28px; }
}

@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
	*, *::before, *::after { animation-duration: 0.001ms !important; animation-iteration-count: 1 !important; scroll-behavior: auto !important; transition-duration: 0.001ms !important; }
	[data-marlin-reveal] { opacity: 1; transform: none; }
}

/* Homepage parity layer */

.marlin-home-section {
	position: relative;
	padding-block: clamp(58px, 7svh, 84px);
}

.marlin-home :where(section, article, div, nav, form, fieldset) {
	min-width: 0;
}

.marlin-home :where(h2, h3) {
	text-wrap: balance;
}

.marlin-hero {
	min-height: 100svh;
}

.marlin-hero__frame {
	padding-top: clamp(114px, 14svh, 148px);
	padding-bottom: clamp(244px, 28svh, 278px);
}

.marlin-hero__copy {
	width: min(610px, 100%);
}

.marlin-hero__actions svg,
.marlin-industries__mode-strip > a svg,
.marlin-industries__explore svg,
.marlin-consultation__copy a svg,
.marlin-location-card a svg {
	width: 17px;
	height: 17px;
	flex: 0 0 auto;
}

.marlin-hero__controls {
	bottom: clamp(300px, 33svh, 330px);
}

.marlin-estimate-overlay {
	position: absolute;
	z-index: 10;
	right: 0;
	bottom: 16px;
	left: 0;
	scroll-margin-top: 104px;
}

.marlin-calculator {
	position: relative;
	display: grid;
	min-height: 208px;
	gap: 7px;
	overflow: hidden;
	padding: 15px 18px 16px;
	border: 1px solid rgba(255, 255, 255, 0.76);
	border-radius: 18px;
	color: var(--marlin-heading);
	background: linear-gradient(115deg, rgba(255, 255, 255, 0.99), rgba(246, 249, 255, 0.97));
	box-shadow: 0 18px 55px rgba(2, 10, 27, 0.22), 0 2px 10px rgba(2, 10, 27, 0.08);
	backdrop-filter: blur(24px);
}

.marlin-calculator::before {
	position: absolute;
	top: 0;
	right: 18px;
	left: 18px;
	height: 2px;
	border-radius: 0 0 999px 999px;
	content: "";
	background: linear-gradient(90deg, transparent, #ff6b18 28%, #ff9b59 58%, transparent);
}

.marlin-calculator__heading {
	display: flex;
	align-items: baseline;
	gap: 12px;
}

.marlin-calculator__heading p {
	margin: 0;
	color: #d85d0c;
	font-size: 0.66rem;
	font-weight: 900;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

.marlin-calculator__heading h2 {
	margin: 0;
	color: var(--marlin-heading);
	font-family: var(--marlin-display);
	font-size: 1.32rem;
	font-weight: 900;
	letter-spacing: -0.025em;
	line-height: 1.05;
}

.marlin-calculator__form-grid {
	display: grid;
}

.marlin-calculator__group {
	display: grid;
	align-items: end;
	gap: 10px;
	padding: 6px 0;
}

.marlin-calculator__route-group {
	grid-template-columns: 100px repeat(3, minmax(0, 1fr));
	padding-top: 4px;
	padding-bottom: 8px;
	border-bottom: 1px solid rgba(15, 26, 61, 0.11);
}

.marlin-calculator__parameters-group {
	grid-template-columns: 100px minmax(90px, 0.55fr) minmax(90px, 0.55fr) minmax(310px, 2fr) minmax(150px, 0.9fr);
	padding-top: 8px;
	padding-bottom: 0;
}

.marlin-calculator__group-label {
	position: relative;
	align-self: center;
	margin: 0;
	padding-left: 13px;
	color: #d85d0c;
	font-size: 0.64rem;
	font-weight: 950;
	letter-spacing: 0.09em;
	line-height: 1.25;
	text-transform: uppercase;
}

.marlin-calculator__group-label::before {
	position: absolute;
	top: 50%;
	left: 0;
	width: 3px;
	height: 26px;
	border-radius: 999px;
	content: "";
	background: var(--marlin-orange);
	transform: translateY(-50%);
}

.marlin-calculator label,
.marlin-calculator__modes {
	min-width: 0;
	color: #29344f;
	font-size: 0.67rem;
	font-weight: 800;
}

.marlin-calculator :is(select, input:not([type="hidden"]):not([type="checkbox"])) {
	width: 100%;
	height: 38px;
	min-height: 38px;
	margin-top: 4px;
	padding: 0 10px;
	border: 1px solid rgba(15, 26, 61, 0.13);
	border-radius: 9px;
	color: var(--marlin-heading);
	background: rgba(255, 255, 255, 0.74);
	font-size: 0.74rem;
	font-weight: 700;
	outline: none;
}

.marlin-calculator__modes {
	padding: 0;
	border: 0;
}

.marlin-calculator__modes > div {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 5px;
	margin-top: 4px;
}

.marlin-calculator__modes button {
	display: inline-flex;
	min-height: 38px;
	align-items: center;
	justify-content: center;
	gap: 5px;
	padding: 0 6px;
	border: 1px solid #d7dce6;
	border-radius: 9px;
	color: #46516c;
	background: var(--marlin-surface);
	font-size: 0.68rem;
	font-weight: 850;
	cursor: pointer;
	transition: color 160ms ease, border-color 160ms ease, background-color 160ms ease, transform 160ms ease;
}

.marlin-calculator__modes button svg {
	width: 15px;
	height: 15px;
	color: #ef690f;
}

.marlin-calculator__modes button[data-active="true"] {
	color: #fff;
	border-color: var(--marlin-heading);
	background: var(--marlin-navy);
}

.marlin-calculator__modes button[data-active="true"] svg {
	color: #fff;
}

.marlin-calculator__modes button:hover {
	border-color: var(--marlin-orange);
	transform: translateY(-1px);
}

.marlin-calculator__submit {
	width: 100%;
	min-height: 38px;
	border-radius: 9px;
	white-space: nowrap;
}

.marlin-calculator__result {
	display: none;
}

.marlin-calculator__result:not([data-state="waiting"]) {
	display: grid;
	grid-template-columns: auto auto minmax(0, 1fr);
	align-items: baseline;
	gap: 12px;
	padding-top: 8px;
	border-top: 1px solid rgba(15, 26, 61, 0.1);
	font-size: 0.72rem;
}

.marlin-calculator__result strong {
	color: var(--marlin-orange);
	font-family: var(--marlin-display);
	font-size: 1.15rem;
}

@media (min-width: 900px) {
	.marlin-hero {
		display: grid;
		height: auto;
		min-height: 100svh;
		grid-template-rows: minmax(min-content, 1fr) auto;
	}

	.marlin-hero__frame {
		display: grid;
		grid-row: 1;
		height: auto;
		min-height: 0;
		align-content: end;
		gap: 14px;
		padding-top: 96px;
		padding-bottom: 16px;
	}

	.marlin-hero__copy {
		position: relative;
		grid-row: 2;
	}

	.marlin-hero__controls {
		position: relative;
		bottom: auto;
		left: auto;
		grid-row: 1;
	}

	.marlin-estimate-overlay {
		position: relative;
		grid-row: 2;
		inset: auto;
		padding-bottom: 16px;
	}
}

/* Delivery formats */

.marlin-delivery {
	display: flex;
	min-height: 100svh;
	align-items: center;
	background: radial-gradient(circle at 88% 14%, rgba(255, 107, 24, 0.08), transparent 28%), var(--marlin-paper);
}

.marlin-delivery__heading {
	display: flex;
	align-items: end;
	justify-content: space-between;
	gap: 32px;
}

.marlin-delivery__heading h2,
.marlin-industries__heading h2,
.marlin-testimonials h2,
.marlin-warehouse__copy h2 {
	margin: 0;
	color: var(--marlin-heading);
	font-family: var(--marlin-display);
	font-size: clamp(2.1rem, 3.8vw, 3.7rem);
	font-weight: 900;
	letter-spacing: -0.038em;
	line-height: 0.98;
}

.marlin-delivery__heading h2 {
	max-width: 820px;
}

.marlin-delivery__heading > p {
	flex: 0 0 auto;
	margin: 0 0 7px;
	color: #d95b0b;
	font-size: 0.75rem;
	font-weight: 900;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.marlin-delivery__stage {
	height: min(58svh, 570px);
	min-height: 440px;
	margin-top: clamp(24px, 4svh, 38px);
}

.marlin-delivery__panel {
	border-radius: 12px;
}

.marlin-delivery__copy {
	bottom: 82px;
}

.marlin-delivery__copy small {
	font-size: 0.7rem;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

.marlin-delivery__copy em {
	font-size: 0.88rem;
}

.marlin-delivery__tags {
	display: flex;
	flex-wrap: wrap;
	gap: 0;
	margin-top: 8px;
	transition: opacity 360ms ease, transform 500ms cubic-bezier(0.16, 1, 0.3, 1);
}

.marlin-delivery__tags i {
	padding: 0 12px;
	border-left: 1px solid rgba(255, 255, 255, 0.28);
	color: rgba(255, 255, 255, 0.86);
	font-size: 0.7rem;
	font-style: normal;
	font-weight: 800;
}

.marlin-delivery__tags i:first-child {
	padding-left: 0;
	border-left: 0;
}

.marlin-delivery__panel[data-active="false"] .marlin-delivery__tags {
	pointer-events: none;
	opacity: 0;
	transform: translateY(14px);
}

.marlin-delivery__arrow {
	position: absolute;
	z-index: 3;
	top: 24px;
	right: 24px;
	display: grid;
	width: 46px;
	height: 46px;
	place-items: center;
	border-radius: 50%;
	color: var(--marlin-heading);
	background: var(--marlin-surface);
	transition: color 200ms ease, background-color 200ms ease, transform 200ms ease;
}

.marlin-delivery__arrow svg {
	width: 19px;
	height: 19px;
}

.marlin-delivery__panel:hover .marlin-delivery__arrow,
.marlin-delivery__panel:focus-visible .marlin-delivery__arrow {
	color: #fff;
	background: var(--marlin-orange);
	transform: translate(2px, -2px);
}

.marlin-delivery__route {
	align-items: center;
}

.marlin-delivery__route::before {
	top: auto;
	right: 19px;
	left: 19px;
}

.marlin-delivery__route i {
	display: grid;
	width: 38px;
	height: 38px;
	place-items: center;
	border: 1px solid rgba(255, 255, 255, 0.36);
	background: rgba(4, 15, 37, 0.78);
}

.marlin-delivery__route svg {
	width: 16px;
	height: 16px;
}

/* Industry board */

.marlin-industries {
	display: flex;
	min-height: 100svh;
	align-items: center;
	background: var(--marlin-surface);
}

.marlin-industries__heading {
	max-width: 720px;
}

.marlin-industries__heading p {
	max-width: 60ch;
	margin: 14px 0 0;
	color: #56617a;
	font-size: 0.9rem;
	font-weight: 650;
	line-height: 1.55;
}

.marlin-industries__stage {
	position: relative;
	height: min(61svh, 590px);
	min-height: 470px;
	margin-top: clamp(22px, 3.5svh, 34px);
	overflow: hidden;
	border-radius: 16px;
	background: #07142d;
	isolation: isolate;
}

.marlin-industries__modes {
	position: absolute;
	z-index: 5;
	top: 16px;
	right: 20px;
	display: flex;
	width: min(calc(100% - 40px), 450px);
	padding: 4px;
	border: 1px solid rgba(255, 255, 255, 0.2);
	border-radius: 999px;
	background: rgba(3, 15, 37, 0.7);
	box-shadow: 0 12px 34px rgba(2, 11, 29, 0.18);
	backdrop-filter: blur(16px);
}

.marlin-industries__modes button {
	display: inline-flex;
	min-width: 0;
	min-height: 42px;
	flex: 1;
	align-items: center;
	justify-content: center;
	gap: 7px;
	padding: 0 13px;
	border: 0;
	border-radius: 999px;
	color: rgba(255, 255, 255, 0.66);
	background: transparent;
	font-size: 0.78rem;
	font-weight: 850;
	cursor: pointer;
	transition: color 220ms ease, background-color 260ms ease, transform 260ms ease;
}

.marlin-industries__modes button svg {
	width: 17px;
	height: 17px;
	color: #ff9b59;
}

.marlin-industries__modes button[data-active="true"] {
	color: #fff;
	background: var(--marlin-orange);
	box-shadow: 0 8px 22px rgba(255, 107, 24, 0.3);
}

.marlin-industries__modes button[data-active="true"] svg {
	color: #fff;
}

.marlin-industries__backdrops,
.marlin-industries__scrim {
	position: absolute;
	inset: 0;
}

.marlin-industries__backdrops img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	opacity: 0;
	transform: scale(1.035);
	transition: opacity 520ms ease, transform 1.1s cubic-bezier(0.16, 1, 0.3, 1);
}

.marlin-industries__backdrops img[data-active="true"] {
	opacity: 1;
	transform: scale(1);
}

.marlin-industries__scrim {
	z-index: 1;
	background: linear-gradient(90deg, rgba(2, 11, 29, 0.78), rgba(2, 11, 29, 0.32)), linear-gradient(0deg, rgba(2, 11, 29, 0.68), rgba(2, 11, 29, 0.12));
}

.marlin-industries__mode-strip {
	position: absolute;
	z-index: 3;
	top: 74px;
	right: 0;
	left: 0;
	display: grid;
	min-height: 112px;
	grid-template-columns: auto minmax(210px, 0.8fr) minmax(310px, 1.25fr) auto;
	align-items: center;
	gap: 16px;
	padding: 16px 24px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.18);
	color: #fff;
	background: rgba(3, 15, 37, 0.72);
	backdrop-filter: blur(14px);
}

.marlin-industries__mode-icon {
	display: grid;
	width: 44px;
	height: 44px;
	place-items: center;
	border: 1px solid rgba(255, 255, 255, 0.32);
	border-radius: 50%;
	color: #ff9b59;
	background: rgba(5, 19, 46, 0.62);
}

.marlin-industries__mode-icon svg {
	width: 21px;
	height: 21px;
}

.marlin-industries__mode-strip :is(p, strong) {
	margin: 0;
}

.marlin-industries__mode-strip p {
	color: #ffad75;
	font-size: 0.64rem;
	font-weight: 900;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

.marlin-industries__mode-strip strong {
	display: block;
	margin-top: 5px;
	font-family: var(--marlin-display);
	font-size: 1rem;
	font-weight: 900;
	line-height: 1.2;
}

.marlin-industries__mode-strip ul {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 8px 18px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.marlin-industries__mode-strip li {
	position: relative;
	padding-left: 15px;
	color: rgba(255, 255, 255, 0.74);
	font-size: 0.69rem;
	font-weight: 700;
	line-height: 1.4;
}

.marlin-industries__mode-strip li::before {
	position: absolute;
	top: 0.52em;
	left: 0;
	width: 5px;
	height: 5px;
	border-radius: 50%;
	background: var(--marlin-orange);
	content: "";
}

.marlin-industries__mode-strip > a {
	display: inline-flex;
	min-height: 42px;
	align-items: center;
	gap: 8px;
	padding: 0 15px;
	border: 1px solid rgba(255, 255, 255, 0.28);
	border-radius: 8px;
	font-size: 0.72rem;
	font-weight: 900;
}

.marlin-industries__matrix {
	position: absolute;
	z-index: 2;
	top: 186px;
	right: 0;
	bottom: 0;
	left: 0;
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	grid-template-rows: repeat(2, minmax(0, 1fr));
}

.marlin-industries__matrix > a {
	position: relative;
	display: flex;
	min-height: 0;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-end;
	gap: 10px;
	overflow: hidden;
	padding: 24px;
	border-right: 1px solid rgba(255, 255, 255, 0.2);
	border-bottom: 1px solid rgba(255, 255, 255, 0.2);
	color: #fff;
	background: rgba(3, 14, 34, 0.08);
	outline: none;
	transition: background-color 280ms ease, padding 280ms cubic-bezier(0.16, 1, 0.3, 1);
}

.marlin-industries__matrix > a:nth-child(3n) { border-right: 0; }
.marlin-industries__matrix > a:nth-last-child(-n + 3) { border-bottom: 0; }

.marlin-industries__matrix > a[data-active="true"],
.marlin-industries__matrix > a:hover,
.marlin-industries__matrix > a:focus-visible {
	padding-bottom: 30px;
	background: rgba(227, 83, 5, 0.78);
}

.marlin-industries__matrix > a > svg {
	width: 25px;
	height: 25px;
	color: #ff9b59;
	transition: color 220ms ease, transform 280ms ease;
}

.marlin-industries__matrix > a[data-active="true"] > svg,
.marlin-industries__matrix > a:hover > svg,
.marlin-industries__matrix > a:focus-visible > svg {
	color: #fff;
	transform: translateY(-2px);
}

.marlin-industries__matrix strong {
	font-family: var(--marlin-display);
	font-size: clamp(1.05rem, 1.5vw, 1.4rem);
	font-weight: 900;
}

.marlin-industries__index {
	position: absolute;
	top: 18px;
	right: 20px;
	color: rgba(255, 255, 255, 0.52);
	font-size: 0.65rem;
	font-weight: 900;
}

.marlin-industries__explore {
	display: inline-flex;
	max-height: 0;
	align-items: center;
	gap: 7px;
	overflow: hidden;
	color: rgba(255, 255, 255, 0.86);
	font-size: 0.68rem;
	font-weight: 850;
	opacity: 0;
	transform: translateY(8px);
	transition: max-height 280ms ease, opacity 220ms ease, transform 280ms ease;
}

.marlin-industries__matrix > a[data-active="true"] .marlin-industries__explore,
.marlin-industries__matrix > a:hover .marlin-industries__explore,
.marlin-industries__matrix > a:focus-visible .marlin-industries__explore {
	max-height: 28px;
	opacity: 1;
	transform: none;
}

/* Network */

.marlin-network {
	display: flex;
	min-height: 100svh;
	align-items: center;
	overflow: hidden;
	color: var(--marlin-heading);
	background-color: #fff;
	background-image: radial-gradient(circle at 77% 48%, rgba(61, 111, 212, 0.1), transparent 30%), radial-gradient(circle at 91% 14%, rgba(255, 107, 24, 0.07), transparent 24%);
}

.marlin-network::before {
	display: none;
}

.marlin-network__grid {
	grid-template-columns: minmax(320px, 0.72fr) minmax(0, 1.32fr);
	gap: clamp(34px, 6vw, 84px);
}

.marlin-network__lead {
	margin: 0 0 16px;
	color: #ff8b42;
	font-size: 0.7rem;
	font-weight: 900;
	letter-spacing: 0.12em;
}

.marlin-network__copy h2 {
	max-width: 12ch;
	color: var(--marlin-heading);
	font-size: clamp(2.7rem, 4.2vw, 4rem);
	line-height: 0.98;
}

.marlin-network__description {
	max-width: 54ch;
	margin: 20px 0 0;
	color: #59647b;
	font-size: 0.9rem;
	font-weight: 650;
	line-height: 1.6;
}

.marlin-metrics {
	display: grid;
	grid-template-columns: 1fr;
	margin-top: 34px;
	background: transparent;
}

.marlin-metrics article {
	display: grid;
	min-height: 62px;
	grid-template-columns: 178px minmax(0, 1fr);
	align-items: center;
	gap: 18px;
	padding: 10px 0;
	border-bottom: 1px solid rgba(15, 26, 61, 0.12);
}

.marlin-metrics article:first-child {
	border-top: 1px solid rgba(15, 26, 61, 0.12);
}

.marlin-metrics strong {
	color: #ff7a28;
	font-size: clamp(1.55rem, 2.35vw, 2.15rem);
	white-space: nowrap;
}

.marlin-metrics p {
	margin: 0;
	color: #667088;
	font-size: 0.68rem;
	font-weight: 700;
	line-height: 1.4;
}

.marlin-network__visual {
	position: relative;
	min-height: min(78svh, 710px);
}

.marlin-network-globe {
	position: absolute;
	top: 50%;
	left: 50%;
	width: min(112%, 720px);
	aspect-ratio: 1;
	border: 1px solid rgba(15, 26, 61, 0.12);
	border-radius: 50%;
	background: radial-gradient(circle at 38% 30%, #fffdf8 0 16%, #f5f3ed 54%, #dfe5eb 100%);
	box-shadow: 0 32px 100px rgba(31, 68, 135, 0.14), inset 0 0 70px rgba(255, 255, 255, 0.72);
	transform: translate(-50%, -50%);
}

.marlin-network-globe[data-wireframe-globe] {
	display: grid;
	place-items: center;
	border: 0;
	background: transparent;
	box-shadow: none;
}

.marlin-network-globe__orbit-shell {
	position: absolute;
	inset: 3%;
	border: 1px solid rgba(15, 26, 61, 0.1);
	border-radius: 50%;
	box-shadow: 0 32px 100px rgba(31, 68, 135, 0.14), inset 0 0 70px rgba(255, 255, 255, 0.72);
}

.marlin-network-globe__orbit-shell::before,
.marlin-network-globe__orbit-shell::after {
	position: absolute;
	inset: 10%;
	border: 1px solid rgba(15, 26, 61, 0.1);
	border-radius: 50%;
	content: "";
	transform: rotate(28deg) scaleY(0.38);
}

.marlin-network-globe__orbit-shell::after {
	transform: rotate(-36deg) scaleY(0.54);
}

.marlin-network-globe[data-wireframe-globe] > div {
	position: absolute;
	inset: 3%;
	display: grid;
	place-items: center;
}

.marlin-network-globe__canvas {
	display: block;
	width: 94%;
	height: 94%;
	border-radius: 50%;
	cursor: grab;
	touch-action: none;
}

.marlin-network-globe__canvas:active {
	cursor: grabbing;
}

.marlin-network-globe__status {
	position: relative;
	z-index: 2;
	width: 10px;
	height: 10px;
	overflow: hidden;
	border-radius: 50%;
	color: transparent;
	background: var(--marlin-orange);
	box-shadow: 0 0 24px rgba(255, 122, 26, 0.9);
	animation: marlin-globe-status 1.2s ease-in-out infinite;
}

.marlin-network-globe__fallback {
	position: absolute;
	inset: 8%;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 16px;
	border: 1px solid rgba(15, 26, 61, 0.2);
	border-radius: 50%;
	background: radial-gradient(circle at 50% 42%, rgba(15, 26, 61, 0.08), transparent 54%);
}

.marlin-network-globe__fallback[hidden] {
	display: none;
}

.marlin-network-globe__fallback i:first-child,
.marlin-network-globe__fallback i:last-child {
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: var(--marlin-orange);
	box-shadow: 0 0 16px rgba(255, 107, 24, 0.7);
}

.marlin-network-globe__fallback i:nth-child(2) {
	width: 92px;
	height: 1px;
	background: linear-gradient(90deg, var(--marlin-orange), rgba(255, 107, 24, 0.18), var(--marlin-orange));
}

@keyframes marlin-globe-status {
	50% { opacity: 0.45; transform: scale(0.72); }
}

.marlin-network-globe__surface {
	position: absolute;
	inset: 8%;
	border-radius: 50%;
	background: url("assets/images/logistics-routes-eurasia-map.png") 53% center / 205% auto no-repeat;
	filter: contrast(1.05) saturate(0.85);
	opacity: 0.74;
	mask-image: radial-gradient(circle, #000 62%, transparent 72%);
	animation: marlin-globe-drift 18s ease-in-out infinite alternate;
}

.marlin-network-globe__orbit {
	position: absolute;
	border: 1px solid rgba(15, 26, 61, 0.15);
	border-radius: 50%;
}

.marlin-network-globe__orbit--one { inset: 18%; transform: rotate(28deg) scaleY(0.38); }
.marlin-network-globe__orbit--two { inset: 10%; border-style: dashed; transform: rotate(-36deg) scaleY(0.54); animation: marlin-globe-orbit 20s linear infinite; }

.marlin-network-globe__hub {
	position: absolute;
	display: grid;
	width: 48px;
	height: 48px;
	place-items: center;
	border: 6px solid #f5f3ed;
	border-radius: 50%;
	color: #fff;
	background: var(--marlin-orange);
	box-shadow: 0 0 0 1px rgba(15, 26, 61, 0.12), 0 14px 34px rgba(255, 107, 24, 0.3);
	font-size: 0.72rem;
	font-style: normal;
}

.marlin-network-globe__hub--china { top: 31%; right: 17%; }
.marlin-network-globe__hub--russia { bottom: 32%; left: 18%; background: var(--marlin-navy); }

.marlin-network-globe__cargo {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 11px;
	height: 11px;
	border-radius: 50%;
	background: var(--marlin-orange);
	box-shadow: 0 0 0 6px rgba(255, 107, 24, 0.12), 0 0 28px rgba(255, 107, 24, 0.8);
	animation: marlin-light-cargo 8s ease-in-out infinite;
}

.marlin-network__hubs {
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	display: flex;
	width: min(100%, 640px);
	flex-wrap: wrap;
	justify-content: center;
	margin-inline: auto;
}

.marlin-network__hubs span {
	position: relative;
	display: flex;
	min-height: 30px;
	align-items: center;
	padding: 6px 13px 6px 24px;
	color: #46516c;
	font-size: 0.61rem;
	font-weight: 800;
}

.marlin-network__hubs span::before {
	position: absolute;
	left: 11px;
	width: 5px;
	height: 5px;
	border-radius: 50%;
	content: "";
	background: var(--marlin-orange);
	box-shadow: 0 0 0 4px rgba(255, 107, 24, 0.12);
}

@keyframes marlin-globe-drift { to { background-position: 47% center; } }
@keyframes marlin-globe-orbit { to { transform: rotate(324deg) scaleY(0.54); } }
@keyframes marlin-light-cargo { 0%, 100% { transform: translate(-178px, 72px); } 50% { transform: translate(164px, -84px); } }

/* Testimonials */

.marlin-testimonials {
	overflow: hidden;
	background: #eef2f8;
}

.marlin-testimonials__eyebrow {
	margin: 0 0 10px;
	color: #d95b0b;
	font-size: 0.7rem;
	font-weight: 900;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

.marlin-testimonials__viewport {
	position: relative;
	height: min(55svh, 500px);
	min-height: 400px;
	margin-top: clamp(24px, 4svh, 38px);
	overflow: hidden;
}

.marlin-testimonials__viewport::before,
.marlin-testimonials__viewport::after {
	position: absolute;
	z-index: 3;
	right: 0;
	left: 0;
	height: 76px;
	pointer-events: none;
	content: "";
}

.marlin-testimonials__viewport::before { top: 0; background: linear-gradient(#eef2f8, transparent); }
.marlin-testimonials__viewport::after { bottom: 0; background: linear-gradient(transparent, #eef2f8); }

.marlin-testimonials__columns {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
}

.marlin-testimonials__column {
	height: min(55svh, 500px);
	min-height: 400px;
	overflow: hidden;
}

.marlin-testimonials__track {
	display: flex;
	flex-direction: column;
	gap: 12px;
	animation: marlin-testimonials-up var(--testimonial-duration) linear infinite;
}

.marlin-testimonial {
	display: flex;
	min-height: 236px;
	flex-direction: column;
	justify-content: space-between;
	padding: 22px;
	border-radius: 12px;
	background: var(--marlin-surface);
	box-shadow: 0 4px 8px rgba(15, 26, 61, 0.06);
}

.marlin-testimonial > p {
	margin: 0;
	font-size: 0.81rem;
	font-weight: 650;
	line-height: 1.58;
}

.marlin-testimonial footer {
	display: flex;
	align-items: center;
	gap: 11px;
	margin-top: 22px;
}

.marlin-testimonial footer img,
.marlin-testimonial__avatar {
	display: grid;
	width: 44px;
	height: 44px;
	flex: 0 0 auto;
	place-items: center;
	border-radius: 50%;
	object-fit: cover;
}

.marlin-testimonial__avatar {
	color: #fff;
	background: var(--marlin-navy);
	font-size: 0.72rem;
	font-weight: 900;
}

.marlin-testimonial footer > span:last-child {
	display: grid;
	min-width: 0;
}

.marlin-testimonial footer strong,
.marlin-testimonial footer small {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.marlin-testimonial footer strong { color: var(--marlin-heading); font-size: 0.76rem; font-weight: 900; }
.marlin-testimonial footer small { margin-top: 2px; color: #68728a; font-size: 0.65rem; font-weight: 650; }
.marlin-testimonials__mobile-track { display: none; }

@keyframes marlin-testimonials-up { to { transform: translateY(-50%); } }
@keyframes marlin-testimonials-left { to { transform: translateX(-50%); } }

/* South Gate */

.marlin-warehouse {
	display: flex;
	min-height: clamp(460px, 52svh, 560px);
	align-items: center;
	background: radial-gradient(circle at 78% 38%, rgba(17, 172, 103, 0.08), transparent 26%), #fff;
}

.marlin-warehouse__grid {
	display: grid;
	grid-template-columns: minmax(300px, 0.72fr) minmax(0, 1fr);
	align-items: center;
	gap: clamp(36px, 7vw, 90px);
}

.marlin-warehouse__copy > p {
	margin: 0 0 12px;
	color: #d95b0b;
	font-size: 0.7rem;
	font-weight: 900;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

.marlin-warehouse__copy h2 {
	max-width: 11ch;
}

.marlin-warehouse__copy > span {
	display: block;
	max-width: 55ch;
	margin-top: 18px;
	color: #56617a;
	font-size: 0.92rem;
	font-weight: 650;
	line-height: 1.65;
}

.marlin-location-card {
	position: relative;
	min-height: 184px;
	border: 1px solid rgba(15, 26, 61, 0.08);
	border-radius: 28px;
	background: linear-gradient(135deg, rgba(255, 122, 26, 0.12), transparent 42%, rgba(16, 185, 129, 0.12)), #fff;
	box-shadow: 0 28px 90px rgba(15, 26, 61, 0.12);
	transform: perspective(1000px) rotateX(var(--location-rotate-x, 0deg)) rotateY(var(--location-rotate-y, 0deg));
	transform-style: preserve-3d;
	transition: min-height 500ms cubic-bezier(0.16, 1, 0.3, 1), transform 420ms cubic-bezier(0.16, 1, 0.3, 1);
}

.marlin-location-card::after { position: absolute; bottom: -20px; left: 50%; color: rgba(15,26,61,.42); content: "нажмите, чтобы раскрыть"; font-size: .62rem; font-weight: 800; letter-spacing: .12em; opacity: 0; pointer-events: none; text-transform: uppercase; transform: translate(-50%, 4px); transition: opacity .28s ease, transform .28s ease; white-space: nowrap; }
.marlin-location-card:hover::after { opacity: 1; transform: translate(-50%, 0); }
.marlin-location-card[data-expanded="true"]::after { opacity: 0; }

.marlin-location-card[data-expanded="true"] {
	min-height: 292px;
}

.marlin-location-card > button {
	position: absolute;
	z-index: 2;
	inset: 0;
	width: 100%;
	border: 0;
	background: transparent;
	cursor: pointer;
}

.marlin-location-card > button:focus-visible { outline: 3px solid var(--marlin-orange); outline-offset: 5px; border-radius: 28px; }

.marlin-location-card__map {
	position: absolute;
	inset: 0;
	overflow: hidden;
	border-radius: inherit;
	background: #f8faff;
	opacity: 0;
	transition: opacity 420ms ease;
}

.marlin-location-card[data-expanded="true"] .marlin-location-card__map {
	opacity: 1;
}

.marlin-location-card__map > svg { position: absolute; inset: 0; width: 100%; height: 100%; color: var(--marlin-navy); }
.marlin-location-card__map path,
.marlin-location-card__map line { fill: none; stroke: currentColor; stroke-linecap: round; stroke-dasharray: 620; stroke-dashoffset: 620; transition: stroke-dashoffset .65s cubic-bezier(.16,1,.3,1); }
.marlin-location-card__map path { stroke-width: 3; opacity: .15; }
.marlin-location-card__map line { stroke-width: 1.2; opacity: .1; transition-duration: .45s; transition-delay: .4s; }
.marlin-location-card[data-expanded="true"] .marlin-location-card__map :is(path, line) { stroke-dashoffset: 0; }
.marlin-location-card__map [data-location-block] { position: absolute; border: 1px solid rgba(15,26,61,.1); border-radius: 3px; background: rgba(15,26,61,.12); opacity: 0; transform: scale(.85); transition: opacity .38s ease, transform .38s ease; }
.marlin-location-card__map [data-location-block]:nth-of-type(1) { top: 38%; left: 12%; width: 16%; height: 22%; }
.marlin-location-card__map [data-location-block]:nth-of-type(2) { top: 14%; left: 38%; width: 13%; height: 16%; transition-delay: .5s; }
.marlin-location-card__map [data-location-block]:nth-of-type(3) { top: 20%; right: 10%; width: 12%; height: 25%; transition-delay: .58s; }
.marlin-location-card__map [data-location-block]:nth-of-type(4) { right: 18%; bottom: 12%; width: 20%; height: 18%; transition-delay: .66s; }
.marlin-location-card[data-expanded="true"] [data-location-block] { opacity: 1; transform: scale(1); }
.marlin-location-card__marker { position: absolute; top: 50%; left: 50%; display: grid; width: 56px; height: 56px; place-items: center; border-radius: 50%; color: var(--marlin-navy); background: #34d399; box-shadow: 0 0 36px rgba(52,211,153,.5); opacity: 0; transform: translate(-50%, calc(-50% - 18px)) scale(0); transition: opacity .35s .24s ease, transform .55s .24s cubic-bezier(.16,1,.3,1); }
.marlin-location-card__marker > svg { width: 28px; height: 28px; }
.marlin-location-card__marker > i { position: absolute; inset: 0; border: 1px solid rgba(110,231,183,.8); border-radius: inherit; animation: marlin-location-ping 1.35s ease-out infinite; }
.marlin-location-card__marker > b { position: absolute; top: 68px; left: 50%; padding: 4px 12px; border-radius: 999px; color: #fff; background: var(--marlin-navy); font-size: .7rem; transform: translateX(-50%); }
.marlin-location-card[data-expanded="true"] .marlin-location-card__marker { opacity: 1; transform: translate(-50%, -50%) scale(1); }
.marlin-location-card__fade { position: absolute; right: 0; bottom: 0; left: 0; height: 160px; background: linear-gradient(transparent, rgba(255,255,255,.64), #fff); }
@keyframes marlin-location-ping { 75%, 100% { opacity: 0; transform: scale(1.7); } }

.marlin-location-card__content {
	position: relative;
	z-index: 1;
	display: grid;
	min-height: 184px;
	grid-template-columns: auto 1fr;
	align-content: space-between;
	gap: 24px;
	padding: 20px;
	pointer-events: none;
}

.marlin-location-card__icon {
	display: grid;
	width: 42px;
	height: 42px;
	place-items: center;
	border-radius: 14px;
	color: var(--marlin-heading);
	background: #34d399;
	box-shadow: 0 16px 38px rgba(16, 185, 129, 0.28);
	transition: filter .3s ease;
}

.marlin-location-card:hover .marlin-location-card__icon { filter: drop-shadow(0 0 12px rgba(52,211,153,.55)); }

.marlin-location-card__icon svg { width: 20px; height: 20px; }

.marlin-location-card__content > small {
	justify-self: end;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	height: 30px;
	padding: 0 12px;
	border-radius: 999px;
	background: rgba(15, 26, 61, 0.05);
	font-size: 0.62rem;
	font-weight: 900;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	transition: transform .3s ease;
}

.marlin-location-card:hover .marlin-location-card__content > small { transform: scale(1.04); }

.marlin-location-card__content > small i { width: 6px; height: 6px; border-radius: 50%; background: #34d399; }
.marlin-location-card__content > div { grid-column: 1 / -1; }
.marlin-location-card h3 { margin: 0; color: var(--marlin-heading); font-family: var(--marlin-display); font-size: 1.45rem; font-weight: 900; transition: transform .35s cubic-bezier(.16,1,.3,1); }
.marlin-location-card:hover h3 { transform: translateX(4px); }
.marlin-location-card p { max-height: 0; margin: 0; overflow: hidden; color: rgba(15, 26, 61, 0.58); font-size: 0.78rem; font-weight: 650; opacity: 0; transform: translateY(-8px); transition: max-height .35s ease, margin .35s ease, opacity .35s ease, transform .35s ease; }
.marlin-location-card[data-expanded="true"] p { max-height: 24px; margin-top: 8px; opacity: 1; transform: none; }
.marlin-location-card__underline { display: block; width: 100%; height: 1px; margin-top: 12px; background: linear-gradient(90deg,#10b981,rgba(52,211,153,.5),transparent); transform: scaleX(.32); transform-origin: left; transition: transform .36s ease-out; }
.marlin-location-card:hover .marlin-location-card__underline,
.marlin-location-card[data-expanded="true"] .marlin-location-card__underline { transform: scaleX(1); }
.marlin-location-card a { position: relative; z-index: 3; display: inline-flex; min-height: 40px; align-items: center; gap: 8px; margin-top: 14px; padding: 0 14px; border: 1px solid rgba(15, 26, 61, 0.1); border-radius: 10px; background: var(--marlin-surface); color: var(--marlin-heading); font-size: 0.75rem; font-weight: 900; pointer-events: auto; }

/* Consultation */

.marlin-consultation {
	position: relative;
	display: flex;
	min-height: 100svh;
	align-items: center;
	overflow: hidden;
	background: radial-gradient(circle at 10% 82%, rgba(255, 107, 24, 0.09), transparent 28%), var(--marlin-paper);
}

.marlin-consultation::before {
	position: absolute;
	inset: 0;
	content: "";
	opacity: 0.56;
	background-image: linear-gradient(30deg, transparent 49.4%, rgba(15, 26, 61, 0.08) 50%, transparent 50.6%), linear-gradient(150deg, transparent 49.4%, rgba(15, 26, 61, 0.08) 50%, transparent 50.6%);
	background-position: 0 0, 60px 0;
	background-size: 120px 104px;
	pointer-events: none;
}

.marlin-consultation__grid {
	position: relative;
	z-index: 1;
	grid-template-columns: minmax(280px, 0.76fr) minmax(0, 1.24fr);
	align-items: center;
}

.marlin-consultation__copy h2 {
	max-width: 10ch;
	margin: 0;
	color: var(--marlin-heading);
	font-family: var(--marlin-display);
	font-size: clamp(2.5rem, 4.8vw, 4.6rem);
	font-weight: 900;
	letter-spacing: -0.038em;
	line-height: 0.98;
}

.marlin-consultation__copy > p:not(.marlin-eyebrow) {
	max-width: 500px;
	margin: 20px 0 0;
	color: #56617a;
	font-size: 0.92rem;
	font-weight: 650;
	line-height: 1.65;
}

.marlin-consultation__copy ul {
	display: grid;
	gap: 10px;
	margin: 28px 0 0;
	padding: 0;
	list-style: none;
}

.marlin-consultation__copy li {
	display: flex;
	min-height: 42px;
	align-items: center;
	gap: 10px;
	color: #34405a;
	font-size: 0.78rem;
	font-weight: 750;
}

.marlin-consultation__copy li > svg { width: 18px; color: var(--marlin-orange); }
.marlin-consultation__copy li a { display: inline-flex; align-items: center; gap: 8px; color: var(--marlin-heading); }

.marlin-consultation .marlin-lead-form {
	display: grid;
	gap: 16px;
	padding: clamp(22px, 3vw, 32px);
	border: 0;
	border-radius: 14px;
	background: var(--marlin-surface);
	box-shadow: 0 8px 28px rgba(15, 26, 61, 0.11);
}

.marlin-consultation .marlin-lead-form__grid {
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
	margin-top: 0;
}

.marlin-consultation .marlin-lead-form__comment { margin-top: 0; }
.marlin-consultation .marlin-lead-form textarea { min-height: 130px; }
.marlin-consultation .marlin-lead-form__footer { justify-content: flex-end; margin-top: 0; }

.marlin-footer {
	padding: 86px 0 44px;
}

.marlin-footer__grid {
	grid-template-columns: 1.35fr 0.68fr 0.9fr 1.08fr;
	gap: clamp(28px, 5vw, 70px);
	min-height: 390px;
}

.marlin-footer__brand .marlin-footer__title {
	max-width: 10ch;
	margin: 30px 0 0;
	color: #fff;
	font-family: var(--marlin-display);
	font-size: clamp(1.65rem, 2.6vw, 2.5rem);
	line-height: 1;
}

.marlin-footer__brand p {
	font-size: 0.88rem;
	line-height: 1.75;
}

.marlin-footer nav h2,
.marlin-footer__meta h2 {
	margin: 0 0 4px;
	color: #fff;
	font-size: 0.76rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.marlin-footer :is(nav, .marlin-footer__meta) {
	font-size: 0.82rem;
	line-height: 1.55;
}

.marlin-footer__bottom {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	margin-top: 54px;
	padding-top: 26px;
	border-top: 1px solid rgba(255, 255, 255, 0.1);
	font-size: 0.72rem;
}

.marlin-footer__bottom nav {
	display: flex;
	flex-wrap: wrap;
	gap: 18px;
}

.marlin-footer__bottom button {
	padding: 0;
	border: 0;
	color: inherit;
	background: transparent;
	font: inherit;
	cursor: pointer;
}

.marlin-cookie-notice {
	position: fixed;
	right: 16px;
	bottom: 16px;
	left: 16px;
	z-index: 130;
	display: grid;
	width: min(100% - 32px, 768px);
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 18px;
	align-items: center;
	margin-inline: auto;
	padding: 16px;
	border: 1px solid rgba(15, 26, 61, 0.12);
	border-radius: 8px;
	color: var(--marlin-heading);
	background: var(--marlin-surface);
	box-shadow: 0 24px 80px rgba(15, 26, 61, 0.2);
}

.marlin-cookie-notice[hidden] { display: none; }
.marlin-cookie-notice h2 { margin: 0; font-size: 0.78rem; font-weight: 900; letter-spacing: 0.12em; text-transform: uppercase; }
.marlin-cookie-notice p { margin: 5px 0 0; color: #45516a; font-size: 0.78rem; font-weight: 650; line-height: 1.55; }
.marlin-cookie-notice a { color: #b45309; font-weight: 900; text-underline-offset: 3px; }
.marlin-cookie-notice > button {
	min-height: 44px;
	padding: 0 18px;
	border: 0;
	border-radius: 8px;
	color: #fff;
	background: var(--marlin-navy);
	font-size: 0.8rem;
	font-weight: 900;
	cursor: pointer;
}

@media (max-width: 1099px) {
	.marlin-calculator__route-group { grid-template-columns: 90px repeat(3, minmax(0, 1fr)); }
	.marlin-calculator__parameters-group { grid-template-columns: 90px repeat(2, minmax(84px, 0.65fr)) minmax(250px, 2fr) minmax(128px, 0.9fr); }
}

@media (min-width: 900px) and (max-height: 780px) {
	.marlin-hero__frame {
		align-items: flex-end;
		padding-top: 96px;
		padding-bottom: 16px;
	}

	.marlin-hero__copy {
		width: min(100%, 720px);
	}

	.marlin-hero__title {
		max-width: 16ch;
		font-size: clamp(2.5rem, 4vw, 3.35rem);
		line-height: .98;
	}

	.marlin-hero__text {
		margin-top: 12px;
		font-size: .95rem;
		line-height: 1.4;
	}

	.marlin-hero__actions {
		margin-top: 16px;
	}
}

@media (max-width: 899px) {
	.marlin-hero { height: auto; min-height: auto; overflow: clip; }
	.marlin-hero__media, .marlin-hero__scrim { bottom: auto; height: 760px; }
	.marlin-hero__frame { min-height: 760px; padding-bottom: 180px; }
	.marlin-hero__controls { top: 608px; bottom: auto; }
	.marlin-estimate-overlay { position: relative; bottom: auto; margin-top: -112px; padding-bottom: 20px; }
	.marlin-home-section, .marlin-delivery, .marlin-industries, .marlin-network, .marlin-consultation { min-height: auto; }
	.marlin-delivery__heading { align-items: start; flex-direction: column; }
	.marlin-delivery__stage, .marlin-delivery__stage[data-active] { height: auto; min-height: 0; grid-template-columns: 1fr; }
	.marlin-delivery__panel { min-height: 460px; }
	.marlin-delivery__panel[data-active="false"] .marlin-delivery__copy :is(em, .marlin-delivery__tags), .marlin-delivery__panel[data-active="false"] .marlin-delivery__route { pointer-events: auto; opacity: 1; transform: none; }
	.marlin-delivery__panel[data-active="false"] .marlin-delivery__copy { bottom: 82px; }
	.marlin-industries__stage { height: 650px; min-height: 650px; }
	.marlin-industries__mode-strip { top: 78px; min-height: 152px; grid-template-columns: auto minmax(0, 1fr) auto; }
	.marlin-industries__mode-strip ul { grid-column: 2 / 4; }
	.marlin-industries__matrix { top: 230px; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-rows: repeat(3, minmax(0, 1fr)); }
	.marlin-industries__matrix > a:nth-child(3n) { border-right: 1px solid rgba(255, 255, 255, 0.2); }
	.marlin-industries__matrix > a:nth-child(2n) { border-right: 0; }
	.marlin-industries__matrix > a:nth-last-child(-n + 3) { border-bottom: 1px solid rgba(255, 255, 255, 0.2); }
	.marlin-industries__matrix > a:nth-last-child(-n + 2) { border-bottom: 0; }
	.marlin-network__grid, .marlin-warehouse__grid, .marlin-consultation__grid { grid-template-columns: 1fr; }
	.marlin-network__visual { min-height: 600px; }
	.marlin-warehouse__copy h2, .marlin-consultation__copy h2 { max-width: 14ch; }
	.marlin-footer__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 767px) {
	.marlin-cookie-notice { grid-template-columns: 1fr; }
	.marlin-cookie-notice > button { width: 100%; }
	.marlin-home-section { padding-block: 70px; }
	.marlin-hero__media, .marlin-hero__scrim, .marlin-hero__frame { height: 720px; min-height: 720px; }
	.marlin-hero__frame { padding-bottom: 148px; }
	.marlin-hero__controls { top: 560px; bottom: auto; }
	.marlin-estimate-overlay .marlin-shell { width: min(calc(100% - 24px), 1180px); }
	.marlin-calculator { min-height: 0; padding: 14px; border-radius: 16px; }
	.marlin-calculator__heading { display: grid; gap: 4px; }
	.marlin-calculator__route-group, .marlin-calculator__parameters-group { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.marlin-calculator__group-label, .marlin-calculator__modes, .marlin-calculator__submit, .marlin-calculator__route-group label:last-child { grid-column: 1 / -1; }
	.marlin-calculator__modes > div { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.marlin-calculator__result:not([data-state="waiting"]) { grid-template-columns: 1fr; }
	.marlin-delivery__heading h2, .marlin-industries__heading h2, .marlin-testimonials h2, .marlin-warehouse__copy h2 { font-size: clamp(2.15rem, 10vw, 3.2rem); }
	.marlin-delivery__heading > p { order: -1; }
	.marlin-delivery__panel { min-height: 520px; }
	.marlin-delivery__copy { bottom: 92px; left: 22px; width: calc(100% - 44px); }
	.marlin-delivery__tags i { width: 100%; padding: 4px 0; border-left: 0; }
	.marlin-delivery__route { right: 22px; left: 22px; }
	.marlin-industries__modes { right: 18px; left: 18px; width: auto; overflow-x: auto; }
	.marlin-industries__modes button { flex: 1 0 82px; }
	.marlin-industries__stage { height: 720px; min-height: 720px; }
	.marlin-industries__mode-strip { top: 78px; min-height: 184px; grid-template-columns: auto minmax(0, 1fr); padding: 16px 18px; }
	.marlin-industries__mode-strip ul { grid-column: 1 / -1; }
	.marlin-industries__mode-strip > a { position: absolute; top: 16px; right: 18px; }
	.marlin-industries__matrix { top: 262px; }
	.marlin-industries__matrix > a { padding: 18px; }
	.marlin-network__copy h2 { font-size: clamp(2.7rem, 12vw, 4rem); }
	.marlin-network__visual { min-height: 470px; }
	.marlin-network-globe { width: 118%; }
	.marlin-testimonials__viewport { height: 430px; min-height: 0; overflow: hidden; }
	.marlin-testimonials__columns { display: block; }
	.marlin-testimonials__column { height: 430px; min-height: 0; }
	.marlin-testimonials__column:nth-child(n + 2) { display: none; }
	.marlin-testimonials__mobile-track { display: none; }
	.marlin-consultation .marlin-lead-form__grid { grid-template-columns: 1fr; }
	.marlin-consultation .marlin-lead-form__footer { align-items: stretch; flex-direction: column; }
	.marlin-consultation .marlin-button { width: 100%; }
	.marlin-footer { padding-top: 82px; padding-bottom: 48px; }
	.marlin-footer__grid { grid-template-columns: 1fr; gap: 46px; min-height: 0; }
	.marlin-footer img { width: 170px; }
	.marlin-footer__brand .marlin-footer__title { max-width: 12ch; margin-top: 34px; font-size: 2rem; }
	.marlin-footer__brand p { max-width: 34ch; font-size: .92rem; }
	.marlin-footer :is(nav, .marlin-footer__meta) { gap: 14px; font-size: .86rem; }
	.marlin-footer__bottom { margin-top: 60px; font-size: .76rem; line-height: 1.65; }
	.marlin-footer__bottom { align-items: flex-start; flex-direction: column; }
}

@media (max-width: 479px) {
	.marlin-industries__mode-strip > a { display: none; }
	.marlin-industries__mode-strip { min-height: 180px; }
	.marlin-industries__matrix { top: 258px; }
	.marlin-network__visual { min-height: 410px; }
}

@media (min-width: 768px) and (max-width: 1023px) {
	.marlin-footer__grid { grid-template-columns: 1fr; gap: 48px; min-height: 0; }
	.marlin-testimonials__columns { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.marlin-testimonials__column:nth-child(3) { display: none; }
}

@media (prefers-reduced-motion: reduce) {
	.marlin-network-globe__surface,
	.marlin-network-globe__orbit,
	.marlin-network-globe__cargo,
	.marlin-testimonials__track,
	.marlin-testimonials__mobile-track {
		animation: none;
	}

	.marlin-testimonials__viewport {
		overflow: auto;
	}

	.marlin-testimonials [aria-hidden="true"] {
		display: none;
	}
}

/* Header and navigation parity with the ordinary MARLIN site. */
.marlin-header {
	padding: 12px 20px 0;
}

.marlin-header__shell {
	width: min(1180px, calc(100% - 24px));
	gap: 12px;
}

.marlin-header__inner,
.marlin-logo,
.marlin-menu-toggle,
.marlin-theme-toggle--mobile {
	height: 58px;
	border: 1px solid rgba(255, 255, 255, .7);
	border-radius: 18px;
	background: rgba(255, 255, 255, .96);
	box-shadow: 0 18px 70px rgba(15, 26, 61, .12);
	backdrop-filter: blur(20px);
}

.marlin-header__inner {
	gap: 8px;
	justify-content: space-between;
	padding: 0 8px;
}

.marlin-logo {
	width: 126px;
	padding: 0 16px;
}

.marlin-logo__dark {
	display: none;
}

.marlin-nav {
	flex: 0 1 auto;
}

.marlin-nav__list {
	justify-content: flex-start;
}

.marlin-nav-item {
	position: relative;
}

.marlin-nav-item > a,
.marlin-nav__trigger {
	position: relative;
	display: inline-flex;
	height: 44px;
	align-items: center;
	gap: 7px;
	padding: 0 12px;
	border: 0;
	border-radius: 14px;
	color: var(--marlin-heading);
	background: transparent;
	font: inherit;
	font-size: .84rem;
	font-weight: 760;
	cursor: pointer;
	transition: color 180ms ease, background 180ms ease;
}

.marlin-nav-item > a::after,
.marlin-nav__trigger::after {
	position: absolute;
	right: 12px;
	bottom: 6px;
	left: 12px;
	height: 1px;
	content: "";
	background: var(--marlin-orange);
	transform: scaleX(0);
	transform-origin: left;
	transition: transform 180ms ease;
}

.marlin-nav-item > a:hover,
.marlin-nav-item > a:focus-visible,
.marlin-nav__trigger:hover,
.marlin-nav__trigger:focus-visible,
.marlin-nav__trigger[aria-expanded="true"] {
	color: var(--marlin-heading);
	background: #f2f5fb;
}

.marlin-nav-item > a:hover::after,
.marlin-nav-item > a:focus-visible::after,
.marlin-nav__trigger[aria-expanded="true"]::after {
	transform: scaleX(1);
}

.marlin-nav__trigger[data-active="true"] {
	color: #fff;
	background: var(--marlin-navy);
}

.marlin-nav__trigger[data-active="true"]:is(:hover,:focus-visible),
.marlin-nav__trigger[data-active="true"][aria-expanded="true"] {
	color: #fff;
	background: var(--marlin-navy);
}

.marlin-nav__trigger[data-active="true"]::after { transform: scaleX(0); }

.marlin-chevron {
	display: inline-block;
	width: 8px;
	height: 8px;
	border-right: 1.5px solid currentColor;
	border-bottom: 1.5px solid currentColor;
	transform: translateY(-2px) rotate(45deg);
	transition: transform 180ms ease;
}

[aria-expanded="true"] > .marlin-chevron {
	transform: translateY(2px) rotate(225deg);
}

.marlin-mega-wrap {
	position: absolute;
	top: 100%;
	left: 0;
	width: min(560px, calc(100vw - 32px));
	padding-top: 14px;
	opacity: 0;
	pointer-events: none;
	transform: translateY(-5px);
	transition: opacity 170ms ease, transform 170ms ease;
}

.marlin-mega-wrap--about {
	width: 300px;
}

.marlin-mega-wrap[aria-hidden="false"] {
	opacity: 1;
	pointer-events: auto;
	transform: translateY(0);
}

.marlin-mega-panel {
	padding: 16px;
	border: 1px solid rgba(15, 26, 61, .12);
	border-radius: 20px;
	background: rgba(255, 255, 255, .98);
	box-shadow: 0 26px 80px rgba(15, 26, 61, .18);
	backdrop-filter: blur(22px);
}

.marlin-mega-panel--services {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 8px;
}

.marlin-mega-panel a {
	display: flex;
	min-height: 48px;
	align-items: center;
	gap: 10px;
	padding: 10px 13px;
	border-radius: 13px;
	color: var(--marlin-heading);
	font-size: .83rem;
	font-weight: 760;
	line-height: 1.35;
	transition: color 180ms ease, background 180ms ease, transform 180ms ease;
}

.marlin-mega-panel a:hover,
.marlin-mega-panel a:focus-visible {
	color: #c74f07;
	background: #f2f5fb;
	transform: translateX(2px);
}

.marlin-mega-panel a svg {
	width: 18px;
	height: 18px;
	flex: 0 0 auto;
	color: var(--marlin-orange);
}

.marlin-mega-panel--about {
	display: grid;
	gap: 5px;
}

.marlin-header__tools {
	display: flex;
	min-width: 0;
	align-items: center;
	gap: 8px;
}

.marlin-header-socials {
	display: flex;
	align-items: center;
	gap: 7px;
}

.marlin-header-socials a {
	position: relative;
	display: grid;
	width: 44px;
	height: 44px;
	place-items: center;
	overflow: visible;
	border: 1px solid rgba(15, 26, 61, .1);
	border-radius: 50%;
	color: var(--marlin-heading);
	background: var(--marlin-surface);
	transition: transform 300ms ease, border-color 300ms ease, box-shadow 300ms ease;
}

.marlin-header-socials a:hover {
	transform: translateY(-2px);
	box-shadow: 0 10px 24px rgba(15,26,61,.16);
}

.marlin-header-socials a > span {
	position: absolute;
	inset: auto 0 0;
	height: 0;
	overflow: hidden;
	border-radius: inherit;
	background: var(--social);
	transition: height 300ms ease;
}

.marlin-header-socials a:hover > span,
.marlin-header-socials a:focus-visible > span { height: 100%; }

.marlin-header-socials img {
	position: relative;
	z-index: 1;
	width: 29px;
	height: 29px;
	object-fit: contain;
	transition: transform 300ms ease;
}

.marlin-header-socials a:hover img,
.marlin-header-socials a:focus-visible img { transform: scale(1.1); }

.marlin-header-socials a > b {
	position: absolute;
	top: calc(100% + 10px);
	left: 50%;
	z-index: 5;
	padding: 6px 9px;
	border-radius: 7px;
	color: #fff;
	background: var(--social);
	font-size: .66rem;
	font-weight: 900;
	line-height: 1;
	opacity: 0;
	pointer-events: none;
	transform: translate(-50%, -4px);
	transition: opacity 300ms ease, transform 300ms ease;
}

.marlin-header-socials a:hover > b,
.marlin-header-socials a:focus-visible > b { opacity: 1; transform: translate(-50%, 0); }

.marlin-header-socials--mobile a > b { display: none; }

.marlin-theme-toggle {
	position: relative;
	width: 49px;
	height: 28px;
	flex: 0 0 auto;
	padding: 3px;
	border: 1px solid rgba(15, 26, 61, .12);
	border-radius: 999px;
	background: linear-gradient(90deg, #ffd04d, #d9efff);
	cursor: pointer;
}

.marlin-theme-toggle span {
	display: block;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	background: #ffd84e;
	box-shadow: 0 2px 8px rgba(15, 26, 61, .2);
	transition: transform 220ms cubic-bezier(.16, 1, .3, 1), background 180ms ease;
}

.marlin-theme-toggle[aria-pressed="true"] span {
	background: #f2f5ff;
	transform: translateX(21px);
}

.marlin-header__cta {
	min-height: 44px;
	border-radius: 13px;
	white-space: nowrap;
}

.marlin-header__cta svg {
	width: 16px;
	height: 16px;
}

.marlin-header__mobile-tools,
.marlin-mobile-menu {
	display: none;
}

.marlin-header-socials--compact { display: none; }

.marlin-mobile-menu[hidden],
.marlin-mobile-submenu[hidden],
.marlin-mobile-about[hidden],
.marlin-mobile-service-group__links[hidden] {
	display: none !important;
}

html[data-theme="dark"] {
	color-scheme: dark;
	--marlin-navy: #0b1222;
	--marlin-heading: #eaf0ff;
	--marlin-ink: #f5f7ff;
	--marlin-muted: #a9b4cb;
	--marlin-line: rgba(234, 240, 255, .14);
	--marlin-paper: #111a2b;
	--marlin-surface: #101827;
	--marlin-soft: #111a2b;
}

html[data-theme="dark"] body {
	color: #eaf0ff;
	background: #080d18;
}

html[data-theme="dark"] .marlin-logo__light {
	display: none;
}

html[data-theme="dark"] .marlin-logo__dark {
	display: block;
}

html[data-theme="dark"] :is(.marlin-header__inner, .marlin-logo, .marlin-menu-toggle, .marlin-theme-toggle--mobile) {
	border-color: rgba(234, 240, 255, .14);
	background: rgba(8, 13, 24, .86);
	box-shadow: 0 18px 70px rgba(0, 0, 0, .36);
}

html[data-theme="dark"] :is(.marlin-nav-item > a, .marlin-nav__trigger) {
	color: #eaf0ff;
}

html[data-theme="dark"] :is(.marlin-nav-item > a, .marlin-nav__trigger):hover,
html[data-theme="dark"] .marlin-nav__trigger[aria-expanded="true"] {
	background: rgba(234, 240, 255, .08);
}

html[data-theme="dark"] .marlin-mega-panel {
	border-color: rgba(234, 240, 255, .14);
	background: rgba(8, 13, 24, .98);
	box-shadow: 0 26px 90px rgba(0, 0, 0, .46);
}

html[data-theme="dark"] .marlin-mega-panel a {
	color: #eaf0ff;
}

html[data-theme="dark"] .marlin-mega-panel a:hover {
	background: rgba(234, 240, 255, .08);
}

html[data-theme="dark"] .marlin-calculator {
	border-color: rgba(234, 240, 255, .16);
	color: var(--marlin-heading);
	background: linear-gradient(115deg, rgba(16, 24, 39, .99), rgba(8, 13, 24, .97));
	box-shadow: 0 18px 55px rgba(0, 0, 0, .38), 0 2px 10px rgba(0, 0, 0, .2);
}

html[data-theme="dark"] :is(.marlin-calculator label, .marlin-calculator__modes) {
	color: #d7deeb;
}

html[data-theme="dark"] .marlin-calculator :is(select, input:not([type="hidden"]):not([type="checkbox"])),
html[data-theme="dark"] .marlin-calculator__modes button {
	border-color: rgba(234, 240, 255, .2);
	color: #eaf0ff;
	background: rgba(8, 13, 24, .86);
}

html[data-theme="dark"] .marlin-calculator__modes button[data-active="true"] {
	border-color: rgba(255, 122, 26, .48);
	color: #fff;
	background: #0b1222;
}

html[data-theme="dark"] :is(.marlin-calculator__route-group, .marlin-calculator__result:not([data-state="waiting"])) {
	border-color: rgba(234, 240, 255, .14);
}

@media (max-width: 1120px) {
	.marlin-header-socials:not(.marlin-header-socials--mobile) {
		display: none;
	}
}

@media (max-width: 1020px) {
	.marlin-header {
		padding: 12px 12px 0;
	}

	.marlin-header__shell {
		width: 100%;
	}

	.marlin-header__inner {
		display: none;
	}

	.marlin-header__mobile-tools {
		display: flex;
		flex: 1;
		align-items: center;
		justify-content: flex-end;
		gap: 8px;
		pointer-events: auto;
	}

	.marlin-header__mobile-tools .marlin-header-socials--compact {
		display: flex;
		gap: 6px;
	}

	.marlin-header-socials--compact a {
		width: 44px;
		height: 44px;
	}

	.marlin-header-socials--compact a > b { display: none; }

	.marlin-header__mobile-cta {
		display: inline-flex;
		min-height: 52px;
		align-items: center;
		padding: 0 17px;
		border-radius: 16px;
		color: #fff;
		background: var(--marlin-orange);
		font-size: .82rem;
		font-weight: 850;
		box-shadow: 0 14px 34px rgba(255, 107, 24, .28);
	}

	.marlin-theme-toggle--mobile {
		display: block;
		width: 52px;
		height: 52px;
		padding: 15px 4px;
	}

	.marlin-theme-toggle--mobile span {
		width: 20px;
		height: 20px;
	}

	.marlin-menu-toggle {
		display: grid;
		width: 58px;
		place-content: center;
		gap: 5px;
		padding: 0;
	}

	.marlin-mobile-menu {
		position: fixed;
		z-index: -1;
		inset: 0;
		display: flex;
		height: 100dvh;
		flex-direction: column;
		padding: max(80px, calc(64px + env(safe-area-inset-top))) max(20px, env(safe-area-inset-right)) max(20px, env(safe-area-inset-bottom)) max(20px, env(safe-area-inset-left));
		color: #fff;
		background: radial-gradient(circle at 18% 8%, rgba(255, 122, 26, .14), transparent 28%), linear-gradient(145deg, #080d18 0%, #0d1424 56%, #101827 100%);
		overscroll-behavior: contain;
		pointer-events: auto;
	}

	.marlin-mobile-menu__scroll {
		min-height: 0;
		flex: 1;
		overflow-y: auto;
		padding-right: 4px;
	}

	.marlin-mobile-menu__section,
	.marlin-mobile-menu__direct {
		display: block;
		padding: 13px 0;
		border-bottom: 1px solid rgba(255, 255, 255, .1);
	}

	.marlin-mobile-menu__section > button,
	.marlin-mobile-menu__direct {
		display: flex;
		width: 100%;
		align-items: center;
		justify-content: space-between;
		gap: 12px;
		padding: 0;
		border: 0;
		color: #fff;
		background: none;
		font: inherit;
		font-size: clamp(1.3rem, 4vw, 1.6rem);
		font-weight: 850;
		text-align: left;
	}

	.marlin-mobile-submenu {
		display: grid;
		gap: 8px;
		padding-top: 12px;
	}

	.marlin-mobile-submenu__all,
	.marlin-mobile-service-group {
		border: 1px solid rgba(255, 255, 255, .11);
		border-radius: 16px;
		background: rgba(255, 255, 255, .04);
	}

	.marlin-mobile-submenu__all {
		padding: 12px;
		font-size: .88rem;
		font-weight: 850;
	}

	.marlin-mobile-service-group > button {
		display: flex;
		width: 100%;
		align-items: center;
		justify-content: space-between;
		gap: 12px;
		padding: 12px;
		border: 0;
		color: #fff;
		background: none;
		text-align: left;
	}

	.marlin-mobile-service-group button span:first-child {
		display: grid;
		gap: 3px;
	}

	.marlin-mobile-service-group button strong {
		font-size: .88rem;
	}

	.marlin-mobile-service-group button small {
		color: rgba(255, 255, 255, .5);
		font-size: .72rem;
		line-height: 1.35;
	}

	.marlin-mobile-service-group__links {
		display: grid;
		gap: 7px;
		padding: 0 8px 8px;
	}

	.marlin-mobile-service-group__links a {
		display: grid;
		min-height: 68px;
		grid-template-columns: 34px minmax(0, 1fr);
		align-items: center;
		gap: 10px;
		padding: 10px;
		border: 1px solid rgba(255, 255, 255, .1);
		border-radius: 14px;
		background: rgba(4, 10, 28, .35);
		font-size: .82rem;
		font-weight: 800;
	}

	.marlin-mobile-service-group__links svg {
		width: 18px;
		height: 18px;
		color: #ffad6f;
	}

	.marlin-mobile-about {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 8px;
		padding-top: 12px;
	}

	.marlin-mobile-about a {
		padding: 9px 11px;
		border: 1px solid rgba(255, 255, 255, .12);
		border-radius: 12px;
		color: rgba(255, 255, 255, .72);
		font-size: .82rem;
		font-weight: 760;
	}

	.marlin-header-socials--mobile {
		margin-top: 17px;
		justify-content: center;
	}

	.marlin-header-socials--mobile a {
		width: 45px;
		height: 45px;
		border-color: rgba(255, 255, 255, .12);
		color: #fff;
		background: rgba(255, 255, 255, .06);
	}

	.marlin-mobile-menu__footer {
		display: grid;
		gap: 10px;
		padding-top: 13px;
		border-top: 1px solid rgba(255, 255, 255, .1);
	}

	.marlin-mobile-menu__footer > div {
		display: flex;
		align-items: center;
		justify-content: space-between;
	}

	.marlin-mobile-menu__footer > a:not(.marlin-mobile-menu__cta) {
		display: flex;
		align-items: center;
		gap: 8px;
		font-size: .82rem;
		font-weight: 760;
	}

	.marlin-mobile-menu__footer svg {
		width: 16px;
		height: 16px;
	}

	.marlin-mobile-menu__cta {
		display: inline-flex;
		min-height: 48px;
		align-items: center;
		justify-content: center;
		border-radius: 13px;
		color: #fff;
		background: var(--marlin-orange);
		font-size: .84rem;
		font-weight: 900;
	}

html.marlin-menu-open {
		overflow: hidden;
	}
}

@media (max-width: 767px) {
	.marlin-calculator :is(select, input:not([type="hidden"]):not([type="checkbox"])),
	.marlin-calculator__modes button,
	.marlin-calculator__submit {
		height: auto;
		min-height: 44px;
	}
}

@media (max-width: 640px) {
	.marlin-header {
		padding: 8px;
	}

	.marlin-logo {
		width: 118px;
		height: 56px;
		border-radius: 15px;
		padding-inline: 14px;
	}

	.marlin-header__mobile-cta {
		display: none;
	}

	.marlin-header__mobile-tools .marlin-header-socials--compact { display: none; }

	.marlin-theme-toggle--mobile {
		display: none;
	}

	.marlin-menu-toggle {
		width: 56px;
		height: 56px;
		border-radius: 15px;
	}
}

/* Ordinary-site dark theme parity. Keep every override under data-theme so light mode is unchanged. */
html[data-theme="dark"] {
	--marlin-dark-canvas: #080d18;
	--marlin-dark-brand: #0b1222;
	--marlin-dark-surface: #101827;
	--marlin-dark-soft: #111a2b;
	--marlin-dark-text: #eaf0ff;
	--marlin-dark-body: #d7deeb;
	--marlin-dark-muted: #a8b3c7;
	--marlin-dark-accent: #ff7a1a;
	--marlin-dark-accent-soft: #ff9a4a;
	--marlin-dark-accent-pale: #ffb36f;
	--marlin-dark-line: rgba(234, 240, 255, .14);
	--marlin-navy: var(--marlin-dark-brand);
	--marlin-heading: var(--marlin-dark-text);
	--marlin-ink: var(--marlin-dark-body);
	--marlin-muted: var(--marlin-dark-muted);
	--marlin-line: var(--marlin-dark-line);
	--marlin-paper: var(--marlin-dark-soft);
	--marlin-surface: var(--marlin-dark-surface);
	--marlin-soft: var(--marlin-dark-soft);
}

html[data-theme="dark"] body {
	color: var(--marlin-dark-body);
	background: var(--marlin-dark-canvas);
}

html[data-theme="dark"] ::selection {
	color: #fff;
	background: rgba(255, 122, 26, .34);
}

html[data-theme="dark"] :is(.marlin-header__inner, .marlin-logo, .marlin-menu-toggle, .marlin-theme-toggle--mobile),
html[data-theme="dark"] .marlin-header[data-scrolled="true"] :is(.marlin-header__inner, .marlin-logo) {
	border-color: var(--marlin-dark-line);
	background: rgba(8, 13, 24, .88);
	box-shadow: 0 18px 70px rgba(0, 0, 0, .36), inset 0 1px rgba(255, 255, 255, .04);
}

html[data-theme="dark"] :is(.marlin-nav-item > a, .marlin-nav__trigger, .marlin-languages, .marlin-header-socials a) {
	color: var(--marlin-dark-text);
	border-color: var(--marlin-dark-line);
}

html[data-theme="dark"] :is(.marlin-nav-item > a, .marlin-nav__trigger):is(:hover, :focus-visible),
html[data-theme="dark"] .marlin-nav__trigger[aria-expanded="true"] {
	color: var(--marlin-dark-text);
	background: rgba(234, 240, 255, .08);
}

html[data-theme="dark"] .marlin-languages :is(a, span)[aria-current="page"] {
	color: #fff;
	background: rgba(255, 122, 26, .18);
}

html[data-theme="dark"] .marlin-mega-panel {
	border-color: var(--marlin-dark-line);
	color: var(--marlin-dark-body);
	background: rgba(8, 13, 24, .98);
	box-shadow: 0 26px 90px rgba(0, 0, 0, .46);
}

html[data-theme="dark"] .marlin-mega-panel a {
	color: var(--marlin-dark-text);
}

html[data-theme="dark"] .marlin-mega-panel a:is(:hover, :focus-visible) {
	background: rgba(234, 240, 255, .08);
}

html[data-theme="dark"] .marlin-mobile-menu {
	color: var(--marlin-dark-body);
	background:
		radial-gradient(circle at 18% 8%, rgba(255, 122, 26, .14), transparent 28%),
		linear-gradient(145deg, var(--marlin-dark-canvas), #0d1424 56%, var(--marlin-dark-surface));
}

html[data-theme="dark"] .marlin-mobile-menu :is(a, button) {
	border-color: var(--marlin-dark-line);
}

html[data-theme="dark"] :is(.marlin-estimate, .marlin-delivery, .marlin-consultation) {
	background: radial-gradient(circle at 10% 14%, rgba(255, 122, 26, .09), transparent 28%), var(--marlin-dark-soft);
}

html[data-theme="dark"] :is(.marlin-industries, .marlin-warehouse) {
	background: var(--marlin-dark-surface);
}

html[data-theme="dark"] .marlin-network {
	color: var(--marlin-dark-text);
	background-color: var(--marlin-dark-canvas);
	background-image: radial-gradient(circle at 77% 48%, rgba(79, 140, 255, .1), transparent 30%), radial-gradient(circle at 91% 14%, rgba(255, 122, 26, .09), transparent 24%);
}

html[data-theme="dark"] :is(.marlin-industries__heading p, .marlin-network__description, .marlin-metrics p, .marlin-network__hubs span, .marlin-warehouse__copy > span, .marlin-consultation__copy > p:not(.marlin-eyebrow), .marlin-consultation__copy li) {
	color: var(--marlin-dark-muted);
}

html[data-theme="dark"] .marlin-metrics article {
	border-color: var(--marlin-dark-line);
}

html[data-theme="dark"] .marlin-network-globe:not([data-wireframe-globe]) {
	border-color: var(--marlin-dark-line);
	background: radial-gradient(circle at 38% 30%, #1a2639 0 16%, var(--marlin-dark-surface) 54%, var(--marlin-dark-canvas) 100%);
	box-shadow: 0 32px 100px rgba(0, 0, 0, .28), inset 0 0 70px rgba(234, 240, 255, .06);
}

html[data-theme="dark"] :is(.marlin-network-globe__orbit-shell, .marlin-network-globe__orbit-shell::before, .marlin-network-globe__orbit-shell::after, .marlin-network-globe__fallback, .marlin-network-globe__orbit) {
	border-color: rgba(234, 240, 255, .15);
}

html[data-theme="dark"] .marlin-network-globe__orbit-shell {
	box-shadow: 0 32px 100px rgba(0, 0, 0, .28), inset 0 0 70px rgba(234, 240, 255, .05);
}

html[data-theme="dark"] .marlin-testimonials {
	background: var(--marlin-dark-soft);
}

html[data-theme="dark"] .marlin-testimonials__viewport::before {
	background: linear-gradient(var(--marlin-dark-soft), transparent);
}

html[data-theme="dark"] .marlin-testimonials__viewport::after {
	background: linear-gradient(transparent, var(--marlin-dark-soft));
}

html[data-theme="dark"] .marlin-testimonial {
	border: 1px solid var(--marlin-dark-line);
	color: var(--marlin-dark-body);
	background: var(--marlin-dark-surface);
	box-shadow: 0 18px 48px rgba(0, 0, 0, .2);
}

html[data-theme="dark"] .marlin-testimonial footer small {
	color: var(--marlin-dark-muted);
}

html[data-theme="dark"] .marlin-location-card {
	border-color: var(--marlin-dark-line);
	background: linear-gradient(135deg, rgba(255, 122, 26, .12), transparent 42%, rgba(16, 185, 129, .1)), var(--marlin-dark-surface);
	box-shadow: 0 28px 90px rgba(0, 0, 0, .28);
}

html[data-theme="dark"] .marlin-location-card::after,
html[data-theme="dark"] .marlin-location-card p {
	color: var(--marlin-dark-muted);
}

html[data-theme="dark"] .marlin-location-card__map {
	background: var(--marlin-dark-soft);
}

html[data-theme="dark"] .marlin-location-card__map [data-location-block] {
	border-color: rgba(234, 240, 255, .12);
	background: rgba(234, 240, 255, .09);
}

html[data-theme="dark"] .marlin-location-card__fade {
	background: linear-gradient(transparent, rgba(16, 24, 39, .68), var(--marlin-dark-surface));
}

html[data-theme="dark"] :is(.marlin-location-card__content > small, .marlin-location-card a) {
	border-color: var(--marlin-dark-line);
	color: var(--marlin-dark-text);
	background: rgba(234, 240, 255, .07);
}

html[data-theme="dark"] .marlin-consultation::before {
	background-image: linear-gradient(30deg, transparent 49.4%, rgba(234, 240, 255, .055) 50%, transparent 50.6%), linear-gradient(150deg, transparent 49.4%, rgba(234, 240, 255, .055) 50%, transparent 50.6%);
}

html[data-theme="dark"] :is(.marlin-calculator, .marlin-lead-form, .marlin-consultation .marlin-lead-form) {
	border-color: var(--marlin-dark-line);
	color: var(--marlin-dark-text);
	background: linear-gradient(135deg, rgba(17, 26, 43, .99), rgba(16, 24, 39, .97));
	box-shadow: 0 24px 70px rgba(0, 0, 0, .3);
}

html[data-theme="dark"] :is(.marlin-calculator label, .marlin-calculator__modes, .marlin-lead-form label) {
	color: var(--marlin-dark-body);
}

html[data-theme="dark"] :is(.marlin-calculator input:not([type="hidden"]):not([type="checkbox"]), .marlin-calculator select, .marlin-lead-form input, .marlin-lead-form select, .marlin-lead-form textarea) {
	border-color: rgba(234, 240, 255, .2);
	color: var(--marlin-dark-text);
	background: rgba(8, 13, 24, .86);
	box-shadow: none;
}

html[data-theme="dark"] :is(.marlin-calculator input, .marlin-lead-form input, .marlin-lead-form textarea)::placeholder {
	color: rgba(168, 179, 199, .72);
}

html[data-theme="dark"] :is(.marlin-calculator select, .marlin-lead-form select) option {
	color: var(--marlin-dark-text);
	background: var(--marlin-dark-brand);
}

html[data-theme="dark"] :is(.marlin-calculator input, .marlin-lead-form input, .marlin-lead-form textarea):-webkit-autofill {
	-webkit-text-fill-color: var(--marlin-dark-text);
	box-shadow: 0 0 0 1000px var(--marlin-dark-canvas) inset;
}

html[data-theme="dark"] :is(.marlin-calculator__route-group, .marlin-calculator__result:not([data-state="waiting"])) {
	border-color: var(--marlin-dark-line);
}

html[data-theme="dark"] .marlin-calculator__modes button {
	border-color: rgba(234, 240, 255, .18);
	color: var(--marlin-dark-body);
	background: rgba(234, 240, 255, .06);
}

html[data-theme="dark"] .marlin-calculator__modes button[data-active="true"] {
	border-color: rgba(255, 122, 26, .48);
	color: #fff;
	background: var(--marlin-dark-brand);
}

html[data-theme="dark"] :is(.marlin-calculator__result[data-state="error"], .marlin-lead-result[data-state="error"], .marlin-lead-error) {
	border-color: rgba(255, 154, 154, .28);
	color: #ff9a9a;
	background: rgba(220, 38, 38, .14);
}

html[data-theme="dark"] .marlin-cookie-notice {
	border-color: var(--marlin-dark-line);
	color: var(--marlin-dark-text);
	background: rgba(16, 24, 39, .98);
	box-shadow: 0 24px 80px rgba(0, 0, 0, .42);
}

html[data-theme="dark"] .marlin-cookie-notice p {
	color: var(--marlin-dark-muted);
}

html[data-theme="dark"] .marlin-cookie-notice a {
	color: var(--marlin-dark-accent-pale);
}

html[data-theme="dark"] .marlin-cookie-notice > button {
	background: var(--marlin-dark-brand);
}
