:root {
	--color-bg: #f6f2eb;
	--color-surface: #fafaf9;
	--color-surface-muted: #eee4d2;
	--color-ink: #2f3136;
	--color-ink-soft: #66656a;
	--color-line: #d8c7a2;
	--color-accent: #d99a1e;
	--color-accent-hover: #a84f0b;
	--color-accent-soft: #f7e7b7;
	--color-accent-ink: #2f3136;
	--color-highlight: #ffce33;
	--color-earth: #ba6207;
	--color-earth-light: #d8c7a2;
	--color-earth-deep: #a84f0b;
	--color-navy: #2f3136;
	--color-navy-soft: #374151;
	--color-on-dark: #fafaf9;
	--container: 1240px;
	--reading: 780px;
	--page-pad: clamp(18px, 4vw, 38px);
	--section-y: clamp(48px, 5.5vw, 76px);
	--radius-card: 14px;
	--ease-out: cubic-bezier(0.22, 1, 0.36, 1);
	--ease-spring: cubic-bezier(0.34, 1.56, 0.64, 1);
	--shadow-card: 0 18px 48px rgba(47, 49, 54, 0.09);
	--shadow-hover: 0 28px 70px rgba(47, 49, 54, 0.17);
}

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

html {
	scroll-behavior: smooth;
	scroll-padding-top: 90px;
}

body {
	margin: 0;
	padding-top: 76px;
	color: var(--color-ink);
	background: var(--color-bg);
	font-family: Inter, "Segoe UI", Arial, Helvetica, sans-serif;
	font-size: 16px;
	line-height: 1.65;
	-webkit-font-smoothing: antialiased;
}

body.menu-open {
	overflow: hidden;
}

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

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

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

a {
	color: var(--color-accent-hover);
	text-underline-offset: 4px;
	transition: color 180ms ease;
}

a:hover,
a:focus-visible {
	color: var(--color-accent);
}

:focus-visible {
	outline: 3px solid rgba(217, 154, 30, 0.48);
	outline-offset: 4px;
}

h1,
h2,
h3 {
	margin-top: 0;
	color: var(--color-ink);
	font-weight: 760;
	line-height: 1.06;
}

h1 {
	max-width: 980px;
	margin-bottom: 26px;
	font-size: clamp(44px, 6.4vw, 88px);
	letter-spacing: -0.055em;
}

h2 {
	margin-bottom: 20px;
	font-size: clamp(34px, 4.5vw, 58px);
	letter-spacing: -0.042em;
}

h3 {
	margin-bottom: 14px;
	font-size: clamp(22px, 2.2vw, 30px);
	letter-spacing: -0.025em;
}

p {
	margin-top: 0;
	margin-bottom: 18px;
}

ul,
ol {
	margin-top: 0;
}

.lv-main {
	position: relative;
	overflow: clip;
}

/* Header */

.site-header {
	position: fixed;
	top: 0;
	right: 0;
	left: 0;
	z-index: 900;
	display: flex;
	align-items: center;
	min-height: 76px;
	padding-inline: max(var(--page-pad), calc((100% - var(--container)) / 2));
	color: #ffffff;
	background:
		linear-gradient(100deg, rgba(7, 12, 16, 0.98), rgba(17, 16, 15, 0.96));
	border: 1px solid transparent;
	border-bottom-color: rgba(255, 255, 255, 0.09);
	backdrop-filter: blur(18px) saturate(1.2);
	transition:
		top 320ms var(--ease-out),
		right 320ms var(--ease-out),
		left 320ms var(--ease-out),
		min-height 260ms ease,
		padding 260ms ease,
		background 320ms ease,
		border-color 320ms ease,
		border-radius 320ms var(--ease-out),
		box-shadow 320ms ease;
}

.site-header.is-scrolled {
	top: 10px;
	right: clamp(8px, 1.2vw, 18px);
	left: clamp(8px, 1.2vw, 18px);
	min-height: 64px;
	background:
		linear-gradient(110deg, rgba(15, 20, 24, 0.78), rgba(27, 24, 21, 0.66));
	border-color: rgba(255, 255, 255, 0.15);
	border-radius: 18px;
	box-shadow:
		0 20px 55px rgba(5, 9, 12, 0.24),
		inset 0 1px 0 rgba(255, 255, 255, 0.1);
	backdrop-filter: blur(24px) saturate(1.45);
}

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

.admin-bar .site-header.is-scrolled {
	top: 42px;
}

.site-brand {
	display: inline-flex;
	align-items: center;
	flex: 0 0 auto;
	gap: 11px;
	color: #ffffff;
	font-size: 18px;
	font-weight: 760;
	letter-spacing: -0.02em;
	text-decoration: none;
}

.site-brand:hover,
.site-brand:focus-visible {
	color: var(--color-highlight);
}

.site-brand img {
	width: auto;
	height: 39px;
	filter: drop-shadow(0 7px 16px rgba(255, 132, 0, 0.14));
	transition: height 260ms ease, transform 260ms var(--ease-out);
}

.site-header.is-scrolled .site-brand img {
	height: 34px;
	transform: translateY(-1px);
}

.site-header .site-brand > span {
	color: #ffffff;
	background: linear-gradient(105deg, #ffffff 0%, #ffffff 58%, #ffd15a 100%);
	background-clip: text;
	font-size: clamp(20px, 1.65vw, 24px);
	font-weight: 860;
	letter-spacing: 0.055em;
	line-height: 1;
	text-shadow: 0 8px 24px rgba(255, 179, 34, 0.14);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}

.site-header .site-brand:hover > span,
.site-header .site-brand:focus-visible > span {
	background: linear-gradient(105deg, #ffffff 0%, #ffd15a 64%, #ffb322 100%);
	background-clip: text;
	-webkit-background-clip: text;
}

.site-header-actions {
	display: flex;
	align-items: center;
	gap: clamp(10px, 1.5vw, 22px);
	margin-left: auto;
}

.site-header-actions a {
	color: rgba(255, 255, 255, 0.76);
	font-size: 13px;
	font-weight: 700;
	text-decoration: none;
	white-space: nowrap;
}

.site-header-link {
	position: relative;
}

.site-header-link::after {
	position: absolute;
	right: 0;
	bottom: -7px;
	left: 0;
	height: 2px;
	background: var(--color-accent);
	content: "";
	transform: scaleX(0);
	transform-origin: right;
	transition: transform 260ms var(--ease-out);
}

.site-header-link:hover::after,
.site-header-link:focus-visible::after {
	transform: scaleX(1);
	transform-origin: left;
}

.site-header-link:hover,
.site-header-link:focus-visible {
	color: #ffffff;
}

.site-header-contact {
	padding: 9px 15px;
	color: #ffffff !important;
	background: rgba(255, 255, 255, 0.045);
	border: 1px solid rgba(255, 255, 255, 0.2);
	border-radius: 999px;
	transition: color 200ms ease, background 200ms ease, border-color 200ms ease, transform 200ms ease;
}

.site-header-contact:hover,
.site-header-contact:focus-visible {
	color: var(--color-accent-ink) !important;
	background: var(--color-highlight);
	border-color: var(--color-highlight);
	transform: translateY(-2px);
}

.site-header-actions .site-header-phone {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	color: #ffffff;
	line-height: 1.08;
}

.site-header-phone-icon {
	display: grid;
	flex: 0 0 auto;
	place-items: center;
	width: 34px;
	height: 34px;
	color: var(--color-highlight);
	background: rgba(255, 179, 34, 0.1);
	border: 1px solid rgba(255, 179, 34, 0.2);
	border-radius: 50%;
	transition: color 180ms ease, background 180ms ease, transform 220ms var(--ease-out);
}

.site-header-phone-icon svg {
	width: 15px;
	height: 15px;
	fill: currentColor;
}

.site-header-phone small,
.site-header-phone strong {
	display: block;
}

.site-header-phone small {
	margin-bottom: 4px;
	color: rgba(255, 255, 255, 0.5);
	font-size: 9px;
	font-weight: 760;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.site-header-phone strong {
	color: #ffffff;
	font-size: 14px;
	font-weight: 760;
	letter-spacing: 0.005em;
}

.site-header-phone:hover .site-header-phone-icon,
.site-header-phone:focus-visible .site-header-phone-icon {
	color: var(--color-accent-ink);
	background: var(--color-highlight);
	transform: rotate(-8deg) scale(1.05);
}

.site-header-phone:hover strong,
.site-header-phone:focus-visible strong {
	color: var(--color-highlight);
}

.menu-toggle {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	min-height: 44px;
	padding: 9px 17px;
	color: #111820;
	background: #ffb322;
	border: 0;
	border-radius: 999px;
	font-weight: 760;
	cursor: pointer;
	box-shadow: 0 12px 30px rgba(255, 179, 34, 0.16);
	transition: background 200ms ease, box-shadow 200ms ease, transform 200ms ease;
}

.menu-toggle:hover,
.menu-toggle:focus-visible {
	color: #111820;
	background: #ffc24d;
	box-shadow: 0 16px 36px rgba(255, 179, 34, 0.26);
	transform: translateY(-2px);
}

.menu-toggle:active {
	transform: translateY(0) scale(0.98);
}

.menu-toggle-icon {
	display: grid;
	gap: 5px;
	width: 19px;
}

.menu-toggle-icon i {
	display: block;
	width: 100%;
	height: 2px;
	background: currentColor;
	border-radius: 2px;
	transition: transform 240ms ease;
}

.menu-toggle-icon i:last-child {
	width: 68%;
	margin-left: auto;
}

.menu-toggle:hover .menu-toggle-icon i:first-child {
	transform: translateX(3px);
}

.menu-toggle:hover .menu-toggle-icon i:last-child {
	transform: translateX(-3px);
}

/* Drawer catalog */

.site-drawer-backdrop {
	position: fixed;
	inset: 0;
	z-index: 1000;
	background: rgba(10, 19, 31, 0.62);
	opacity: 0;
	backdrop-filter: blur(5px);
	transition: opacity 300ms ease;
}

.site-drawer-backdrop[hidden] {
	display: none;
}

.site-drawer-backdrop.is-visible {
	opacity: 1;
}

.site-drawer {
	position: fixed;
	top: 0;
	right: 0;
	z-index: 1001;
	display: flex;
	flex-direction: column;
	width: min(650px, 100%);
	height: 100vh;
	height: 100dvh;
	background: var(--color-surface);
	box-shadow: none;
	transform: translate3d(105%, 0, 0);
	transition: transform 420ms var(--ease-out);
}

.site-drawer.is-open {
	box-shadow: -30px 0 100px rgba(8, 18, 31, 0.28);
	transform: translate3d(0, 0, 0);
}

.admin-bar .site-drawer {
	top: 32px;
	height: calc(100dvh - 32px);
}

.site-drawer-header {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 24px;
	padding: 30px 34px 26px;
	background: var(--color-accent-ink);
}

.site-drawer-header p,
.catalog-section-heading p {
	margin-bottom: 7px;
	color: var(--color-accent-hover);
	font-size: 11px;
	font-weight: 800;
	letter-spacing: 0.15em;
	text-transform: uppercase;
}

.site-drawer-header p {
	color: var(--color-on-dark);
}

.site-drawer-header h2 {
	max-width: 430px;
	margin: 0;
	color: var(--color-on-dark);
	font-size: clamp(28px, 4vw, 39px);
}

/* Language switcher at the bottom of the catalog */

.site-drawer-language {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	padding: 16px 34px;
	background: #f0ede7;
	border-top: 1px solid rgba(47, 49, 54, 0.08);
}

.site-drawer-language > p {
	margin: 0;
	color: var(--color-ink-soft);
	font-size: 10px;
	font-weight: 750;
	letter-spacing: 0.1em;
	line-height: 1.2;
	text-transform: uppercase;
}

.site-drawer-language .lv-header__lang,
.site-drawer-language .lv-lang {
	position: static;
	display: flex;
	flex: 0 0 auto;
	align-items: center;
	width: auto;
	height: auto;
	margin: 0;
}

.site-drawer-language .lv-lang__trigger {
	display: none !important;
}

.site-drawer-language .lv-lang__menu,
.site-drawer-language .lv-lang__menu[hidden] {
	position: static !important;
	inset: auto !important;
	display: flex !important;
	flex-flow: row nowrap !important;
	align-items: center;
	gap: 1px;
	width: auto !important;
	min-width: 0 !important;
	height: 32px !important;
	margin: 0 !important;
	padding: 2px !important;
	background: rgba(47, 49, 54, 0.06);
	border: 1px solid rgba(47, 49, 54, 0.12);
	border-radius: 999px;
	box-shadow: none;
	opacity: 1 !important;
	visibility: visible !important;
	transform: none !important;
	pointer-events: auto !important;
	-webkit-text-size-adjust: 100%;
	text-size-adjust: 100%;
}

.site-drawer-language .lv-lang__link {
	position: static !important;
	display: flex !important;
	flex: 0 0 auto !important;
	align-items: center !important;
	justify-content: center !important;
	width: auto !important;
	min-width: 34px !important;
	max-width: none !important;
	height: 26px !important;
	min-height: 26px !important;
	padding: 0 8px !important;
	color: var(--color-ink-soft);
	background: transparent;
	border: 0;
	border-radius: 999px;
	box-shadow: none;
	font-size: 10px !important;
	font-weight: 850;
	letter-spacing: 0.08em;
	line-height: 1 !important;
	text-decoration: none;
	opacity: 1;
	transform: none !important;
	transition: color 180ms ease, background 180ms ease;
}

.site-drawer-language .lv-lang__link::before,
.site-drawer-language .lv-lang__link::after {
	display: none !important;
}

.site-drawer-language .lv-lang__link:hover,
.site-drawer-language .lv-lang__link:focus-visible {
	color: var(--color-ink);
	background: rgba(47, 49, 54, 0.08);
	outline: none;
}

.site-drawer-language .lv-lang__link:focus-visible {
	box-shadow: 0 0 0 2px #f0ede7, 0 0 0 4px rgba(47, 49, 54, 0.4);
}

.site-drawer-language .lv-lang__link.lv-is-active {
	color: #ffffff;
	background: rgba(47, 49, 54, 0.78);
	box-shadow: none;
}

.site-drawer-language .lv-lang__link.lv-is-active:hover,
.site-drawer-language .lv-lang__link.lv-is-active:focus-visible {
	color: #ffffff;
	background: var(--color-ink);
}

.site-drawer-language .lv-lang__name {
	display: none !important;
}

.site-drawer-language .lv-lang__code {
	position: static !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: auto !important;
	height: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	font-size: inherit !important;
	line-height: 1 !important;
	transform: none !important;
}

.site-drawer-body {
	flex: 1;
	min-height: 0;
	overflow-y: auto;
	overscroll-behavior: contain;
	scrollbar-color: rgba(217, 154, 30, 0.5) transparent;
	scrollbar-width: thin;
}

.menu-close {
	position: relative;
	flex: 0 0 auto;
	width: 46px;
	height: 46px;
	padding: 0;
	background: rgba(255, 255, 255, 0.1);
	border: 1px solid rgba(255, 255, 255, 0.18);
	border-radius: 50%;
	cursor: pointer;
	transition: background 200ms ease, transform 260ms var(--ease-spring);
}

.menu-close:hover,
.menu-close:focus-visible {
	background: var(--color-accent);
	transform: rotate(8deg) scale(1.05);
}

.menu-close:hover::before,
.menu-close:hover::after,
.menu-close:focus-visible::before,
.menu-close:focus-visible::after {
	background: var(--color-accent-ink);
}

.menu-close::before,
.menu-close::after {
	position: absolute;
	top: 21px;
	left: 12px;
	width: 21px;
	height: 2px;
	background: #ffffff;
	content: "";
}

.menu-close::before {
	transform: rotate(45deg);
}

.menu-close::after {
	transform: rotate(-45deg);
}

.catalog-navigation {
	overflow: visible;
}

.catalog-section {
	padding: 27px 34px;
	border-bottom: 1px solid var(--color-line);
}

.catalog-section-heading {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 18px;
	margin-bottom: 17px;
}

.catalog-section-heading p,
.catalog-section-heading h3 {
	margin-bottom: 0;
}

.catalog-section-heading h3 {
	font-size: 26px;
}

.catalog-section details {
	border-top: 1px solid var(--color-line);
}

.catalog-section details:last-child {
	border-bottom: 1px solid var(--color-line);
}

.catalog-section summary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	padding-block: 15px;
	font-size: 18px;
	font-weight: 740;
	cursor: pointer;
	list-style: none;
}

.catalog-section summary::-webkit-details-marker {
	display: none;
}

.catalog-section summary span {
	position: relative;
	display: grid;
	flex: 0 0 auto;
	place-items: center;
	width: 30px;
	height: 30px;
	color: var(--color-accent-hover);
	background: var(--color-accent-soft);
	border-radius: 50%;
	font-size: 0;
	line-height: 1;
	transition: transform 260ms var(--ease-spring), background 200ms ease;
}

.catalog-section summary span::before,
.catalog-section summary span::after {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 12px;
	height: 2px;
	background: currentColor;
	border-radius: 999px;
	content: "";
	transform: translate(-50%, -50%);
}

.catalog-section summary span::after {
	transform: translate(-50%, -50%) rotate(90deg);
}

.catalog-section details[open] summary span {
	color: var(--color-accent-ink);
	background: var(--color-accent);
	transform: rotate(45deg);
}

.catalog-links,
.catalog-list {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 9px;
}

.catalog-links {
	padding-bottom: 16px;
}

.catalog-links a,
.catalog-list a {
	color: var(--color-ink);
	background: var(--color-bg);
	border: 1px solid transparent;
	border-radius: 8px;
	font-weight: 650;
	text-decoration: none;
	transition: color 180ms ease, background 180ms ease, border-color 180ms ease, transform 180ms ease;
}

.catalog-links a {
	padding: 10px 12px;
}

.catalog-list a {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 12px;
	padding: 14px;
}

.catalog-links a:hover,
.catalog-links a:focus-visible,
.catalog-list a:hover,
.catalog-list a:focus-visible {
	color: var(--color-accent-hover);
	background: #ffffff;
	border-color: var(--color-accent);
	transform: translateY(-2px);
}

.catalog-list small {
	color: var(--color-ink-soft);
	font-size: 11px;
	font-weight: 500;
}

.site-drawer-footer {
	position: relative;
	padding: 30px 34px 28px;
	color: #ffffff;
	background:
		radial-gradient(circle at 90% 10%, rgba(255, 179, 34, 0.2), transparent 18rem),
		linear-gradient(145deg, #26292e, #17191d);
	overflow: hidden;
}

.site-drawer-footer::before {
	position: absolute;
	top: 0;
	right: 34px;
	left: 34px;
	height: 3px;
	background: var(--color-highlight);
	border-radius: 0 0 999px 999px;
	content: "";
}

.drawer-contact-heading {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	margin-bottom: 18px;
}

.drawer-contact-heading p,
.drawer-contact-heading h3 {
	margin: 0;
}

.drawer-contact-heading p {
	color: rgba(255, 255, 255, 0.57);
	font-size: 13px;
}

.drawer-contact-heading h3 {
	color: #ffffff;
	font-size: 25px;
}

.drawer-phone-list,
.footer-phone-list {
	display: grid;
	gap: 8px;
}

.drawer-phone-list {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.drawer-phone-list > a,
.footer-phone-list > a {
	display: flex;
	align-items: center;
	gap: 11px;
	min-width: 0;
	color: #ffffff;
	text-decoration: none;
}

.drawer-phone-list > a {
	padding: 12px;
	background: rgba(255, 255, 255, 0.065);
	border: 1px solid rgba(255, 255, 255, 0.11);
	border-radius: 11px;
	transition: background 180ms ease, border-color 180ms ease, transform 180ms ease;
}

.drawer-phone-list > a:hover,
.drawer-phone-list > a:focus-visible {
	color: #ffffff;
	background: rgba(255, 179, 34, 0.12);
	border-color: rgba(255, 179, 34, 0.48);
	transform: translateY(-2px);
}

.drawer-phone-list svg,
.footer-phone-list svg {
	flex: 0 0 auto;
	width: 18px;
	height: 18px;
	fill: var(--color-highlight);
}

.drawer-phone-list small,
.drawer-phone-list strong,
.footer-phone-list small,
.footer-phone-list strong {
	display: block;
}

.drawer-phone-list small,
.footer-phone-list small {
	margin-bottom: 3px;
	color: rgba(255, 255, 255, 0.5);
	font-size: 9px;
	font-weight: 760;
	letter-spacing: 0.09em;
	line-height: 1;
	text-transform: uppercase;
}

.drawer-phone-list strong,
.footer-phone-list strong {
	color: #ffffff;
	font-size: 14px;
	line-height: 1.2;
	white-space: nowrap;
}

.contact-channel-label {
	margin: 20px 0 9px;
	color: rgba(255, 255, 255, 0.6);
	font-size: 11px;
	font-weight: 760;
	letter-spacing: 0.09em;
	line-height: 1.3;
	text-transform: uppercase;
}

.contact-messengers {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 8px;
}

.contact-messenger {
	display: flex;
	align-items: center;
	gap: 11px;
	min-width: 0;
	padding: 11px 12px;
	color: #ffffff;
	border: 1px solid rgba(255, 255, 255, 0.11);
	border-radius: 11px;
	text-decoration: none;
	transition: filter 180ms ease, transform 180ms ease;
}

.contact-messenger-viber {
	background: linear-gradient(135deg, #7360f2, #5b47d6);
}

.contact-messenger-telegram {
	background: linear-gradient(135deg, #2aabee, #1688c7);
}

.contact-messenger:hover,
.contact-messenger:focus-visible {
	color: #ffffff;
	filter: brightness(1.1) saturate(1.05);
	transform: translateY(-2px);
}

.contact-messenger svg {
	flex: 0 0 auto;
	width: 24px;
	height: 24px;
	fill: currentColor;
}

.contact-messenger strong,
.contact-messenger small {
	display: block;
}

.contact-messenger strong {
	color: #ffffff;
	font-size: 13px;
	line-height: 1.1;
}

.contact-messenger small {
	margin-top: 3px;
	color: rgba(255, 255, 255, 0.72);
	font-size: 10px;
	line-height: 1.1;
}

.contact-socials {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	margin-top: 20px;
	padding-top: 17px;
	border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.contact-socials > p {
	flex: 0 0 auto;
	margin: 0;
	color: rgba(255, 255, 255, 0.56);
	font-size: 11px;
	font-weight: 760;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.contact-socials > div {
	display: flex;
	flex-wrap: wrap;
	gap: 7px;
}

.contact-social {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	min-height: 34px;
	padding: 7px 9px;
	color: rgba(255, 255, 255, 0.82);
	background: rgba(255, 255, 255, 0.06);
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: 999px;
	font-size: 10px;
	font-weight: 700;
	line-height: 1;
	text-decoration: none;
	transition: color 180ms ease, background 180ms ease, border-color 180ms ease, transform 180ms ease;
}

a.contact-social:hover,
a.contact-social:focus-visible {
	color: #ffffff;
	background: rgba(255, 255, 255, 0.13);
	border-color: rgba(255, 255, 255, 0.28);
	transform: translateY(-2px);
}

.contact-social svg {
	width: 15px;
	height: 15px;
	fill: currentColor;
}

.contact-social-instagram svg {
	fill: none;
	stroke: currentColor;
	stroke-width: 1.8;
}

.drawer-service-links {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	margin-top: 20px;
}

.drawer-service-links > a {
	color: rgba(255, 255, 255, 0.65);
	font-size: 12px;
	font-weight: 650;
	text-decoration: none;
}

.drawer-service-links > a:first-child {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	padding: 9px 13px;
	color: var(--color-accent-ink);
	background: var(--color-highlight);
	border-radius: 8px;
	font-weight: 760;
}

.drawer-service-links > a:first-child span {
	transition: transform 180ms var(--ease-out);
}

.drawer-service-links > a:first-child:hover span,
.drawer-service-links > a:first-child:focus-visible span {
	transform: translateX(3px);
}

/* Footer */

.site-footer {
	width: 100%;
	margin-top: clamp(80px, 11vw, 150px);
	padding-inline: max(var(--page-pad), calc((100% - var(--container)) / 2));
	color: var(--color-on-dark);
	background:
		radial-gradient(circle at 90% 10%, rgba(255, 206, 51, 0.18), transparent 30rem),
		var(--color-navy);
}

.site-footer-main {
	display: grid;
	grid-template-columns: 1.1fr 0.58fr 0.65fr 1.38fr;
	gap: clamp(28px, 4vw, 58px);
	padding-block: clamp(68px, 8vw, 108px);
}

.site-footer .site-brand {
	color: #ffffff;
}

.site-footer-brand > p {
	max-width: 320px;
	margin-top: 23px;
	color: rgba(253, 251, 246, 0.63);
	font-size: 15px;
}

.site-footer-links {
	display: flex;
	align-items: flex-start;
	flex-direction: column;
	gap: 10px;
}

.site-footer-links p,
.site-footer-action > p {
	margin-bottom: 8px;
	color: var(--color-accent);
	font-size: 11px;
	font-weight: 800;
	letter-spacing: 0.14em;
	text-transform: uppercase;
}

.site-footer-links a {
	position: relative;
	color: rgba(253, 251, 246, 0.75);
	font-weight: 620;
	text-decoration: none;
}

.site-footer-links a:hover,
.site-footer-links a:focus-visible {
	color: #ffffff;
}

.site-footer-action h2 {
	max-width: 380px;
	margin-bottom: 22px;
	color: #ffffff;
	font-size: clamp(27px, 3vw, 39px);
}

.site-footer-action > a {
	display: inline-flex;
	align-items: center;
	gap: 18px;
	padding: 13px 17px;
	color: var(--color-accent-ink);
	background: var(--color-accent);
	border-radius: 8px;
	font-weight: 760;
	text-decoration: none;
	transition: background 200ms ease, transform 200ms ease;
}

.site-footer-action > a span {
	font-size: 20px;
	transition: transform 220ms var(--ease-out);
}

.site-footer-action > a:hover,
.site-footer-action > a:focus-visible {
	color: #ffffff;
	background: var(--color-accent-hover);
	transform: translateY(-2px);
}

.site-footer-action > a:hover span {
	transform: translate(3px, -3px);
}

.site-footer-contact {
	min-width: 0;
}

.site-footer-contact h2 {
	font-size: clamp(25px, 2.3vw, 33px);
}

.footer-phone-list {
	margin-bottom: 2px;
}

.footer-phone-list > a {
	width: fit-content;
	padding-block: 4px;
}

.footer-phone-list > a:hover strong,
.footer-phone-list > a:focus-visible strong {
	color: var(--color-highlight);
}

.footer-phone-list svg {
	width: 20px;
	height: 20px;
}

.footer-phone-list strong {
	font-size: 16px;
}

.site-footer-action > .contact-channel-label {
	margin: 20px 0 9px;
	color: rgba(255, 255, 255, 0.56);
	font-size: 10px;
	font-weight: 760;
	letter-spacing: 0.09em;
	line-height: 1.3;
	text-transform: uppercase;
}

.site-footer-contact .contact-socials {
	align-items: flex-start;
	flex-direction: column;
	gap: 10px;
}

.site-footer-contact .contact-socials > div {
	gap: 6px;
}

.site-footer-contact .footer-request-link {
	margin-top: 22px;
}

.site-footer-bottom {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	min-height: 78px;
	border-top: 1px solid rgba(255, 255, 255, 0.12);
}

.site-footer-bottom p {
	margin: 0;
	color: rgba(253, 251, 246, 0.5);
	font-size: 13px;
}

.site-footer-bottom nav {
	display: flex;
	gap: 22px;
}

.site-footer-bottom a {
	color: rgba(253, 251, 246, 0.62);
	font-size: 13px;
}

/* Contact hub */

.contact-hub {
	position: relative;
	isolation: isolate;
	display: grid;
	grid-template-columns: minmax(240px, 0.62fr) minmax(0, 1.38fr);
	align-items: center;
	gap: clamp(32px, 5vw, 74px);
	width: min(100% - (var(--page-pad) * 2), var(--container));
	margin: 0 auto clamp(28px, 4vw, 56px);
	padding: clamp(30px, 4vw, 54px);
	color: #ffffff;
	background:
		radial-gradient(circle at 92% 0%, rgba(255, 179, 34, 0.2), transparent 24rem),
		linear-gradient(135deg, #26292e, #15171a);
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: clamp(16px, 2vw, 26px);
	box-shadow: 0 30px 80px rgba(47, 49, 54, 0.16);
	overflow: hidden;
}

.contact-hub::before {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: 4px;
	background: var(--color-highlight);
	content: "";
}

.contact-hub-copy {
	max-width: 390px;
}

.contact-hub-copy .section-kicker {
	color: var(--color-highlight);
}

.contact-hub-copy h2 {
	margin-bottom: 16px;
	color: #ffffff;
	font-size: clamp(34px, 4vw, 52px);
	text-wrap: balance;
}

.contact-hub-copy > p:last-child {
	margin: 0;
	color: rgba(255, 255, 255, 0.62);
	font-size: 15px;
	line-height: 1.65;
}

.contact-hub-channels {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
}

.contact-hub-card {
	min-width: 0;
	padding: 20px;
	background: rgba(255, 255, 255, 0.055);
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: 14px;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.035);
}

.contact-hub-card > p {
	margin-bottom: 14px;
	color: rgba(255, 255, 255, 0.55);
	font-size: 10px;
	font-weight: 780;
	letter-spacing: 0.1em;
	line-height: 1.25;
	text-transform: uppercase;
}

.contact-hub-card .footer-phone-list {
	gap: 7px;
}

.contact-hub-card .footer-phone-list > a {
	width: 100%;
	padding: 5px 0;
}

.contact-hub-socials {
	grid-column: 1 / -1;
}

.contact-hub-socials > div {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

/* Conversion modal */

body.lead-modal-open {
	overflow: hidden;
}

.lead-modal {
	width: min(760px, calc(100% - 32px));
	max-width: none;
	max-height: calc(100dvh - 32px);
	margin: auto;
	padding: 0;
	color: #ffffff;
	background: transparent;
	border: 0;
	overflow: visible;
}

.lead-modal::backdrop {
	background: rgba(7, 10, 13, 0.72);
	opacity: 0;
	backdrop-filter: blur(8px) saturate(0.8);
	transition: opacity 240ms ease;
}

.lead-modal.is-visible::backdrop {
	opacity: 1;
}

.lead-modal-panel {
	position: relative;
	max-height: calc(100dvh - 32px);
	padding: clamp(34px, 5vw, 52px);
	background:
		radial-gradient(circle at 92% 4%, rgba(255, 179, 34, 0.2), transparent 21rem),
		linear-gradient(145deg, #262a2e 0%, #171a1e 72%, #211b16 100%);
	border: 1px solid rgba(255, 255, 255, 0.13);
	border-radius: 24px;
	box-shadow:
		0 38px 110px rgba(0, 0, 0, 0.48),
		inset 0 1px 0 rgba(255, 255, 255, 0.08);
	opacity: 0;
	overflow: auto;
	transform: translateY(22px) scale(0.97);
	transition: opacity 240ms ease, transform 320ms var(--ease-out);
}

.lead-modal-panel::before {
	position: absolute;
	top: 0;
	right: clamp(34px, 5vw, 52px);
	left: clamp(34px, 5vw, 52px);
	height: 3px;
	background: linear-gradient(90deg, #ffb322, #ffce33, transparent);
	border-radius: 0 0 999px 999px;
	content: "";
}

.lead-modal.is-visible .lead-modal-panel {
	opacity: 1;
	transform: translateY(0) scale(1);
}

.lead-modal-close {
	position: absolute;
	top: 18px;
	right: 18px;
	z-index: 2;
	width: 44px;
	height: 44px;
	padding: 0;
	color: #ffffff;
	background: rgba(255, 255, 255, 0.07);
	border: 1px solid rgba(255, 255, 255, 0.14);
	border-radius: 50%;
	cursor: pointer;
	transition: color 180ms ease, background 180ms ease, border-color 180ms ease, transform 220ms var(--ease-spring);
}

.lead-modal-close span::before,
.lead-modal-close span::after {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 18px;
	height: 2px;
	background: currentColor;
	border-radius: 999px;
	content: "";
}

.lead-modal-close span::before {
	transform: translate(-50%, -50%) rotate(45deg);
}

.lead-modal-close span::after {
	transform: translate(-50%, -50%) rotate(-45deg);
}

.lead-modal-close:hover,
.lead-modal-close:focus-visible {
	color: #16191d;
	background: var(--color-highlight);
	border-color: var(--color-highlight);
	transform: rotate(7deg) scale(1.05);
}

.lead-modal-mark {
	display: grid;
	place-items: center;
	width: 54px;
	height: 54px;
	margin-bottom: 24px;
	color: #171a1e;
	background: var(--color-highlight);
	border-radius: 50%;
	box-shadow:
		0 0 0 8px rgba(255, 179, 34, 0.08),
		0 16px 34px rgba(255, 179, 34, 0.16);
}

.lead-modal-mark svg {
	width: 27px;
	height: 27px;
	fill: none;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.7;
}

.lead-modal-copy {
	max-width: 610px;
	padding-right: 42px;
}

.lead-modal-kicker {
	margin-bottom: 10px;
	color: var(--color-highlight);
	font-size: 10px;
	font-weight: 820;
	letter-spacing: 0.15em;
	line-height: 1.3;
	text-transform: uppercase;
}

.lead-modal-copy h2 {
	margin-bottom: 15px;
	color: #ffffff;
	font-size: clamp(35px, 5vw, 49px);
	line-height: 0.98;
	text-wrap: balance;
}

.lead-modal-copy > p:last-child {
	max-width: 580px;
	margin-bottom: 0;
	color: rgba(255, 255, 255, 0.62);
	font-size: 15px;
	line-height: 1.6;
}

.lead-modal-form {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
	margin-top: 24px;
}

.lead-modal-form label {
	display: grid;
	gap: 7px;
	min-width: 0;
}

.lead-modal-form label > span {
	padding-left: 3px;
	color: rgba(255, 255, 255, 0.64);
	font-size: 10px;
	font-weight: 760;
	letter-spacing: 0.09em;
	line-height: 1.25;
	text-transform: uppercase;
}

.lead-modal-form input {
	width: 100%;
	min-width: 0;
	min-height: 54px;
	padding: 12px 15px;
	color: #ffffff;
	background: rgba(5, 8, 11, 0.42);
	border: 1px solid rgba(255, 255, 255, 0.15);
	border-radius: 11px;
	outline: none;
	transition: background 180ms ease, border-color 180ms ease, box-shadow 180ms ease;
}

.lead-modal-form input::placeholder {
	color: rgba(255, 255, 255, 0.37);
}

.lead-modal-form input:focus {
	background: rgba(5, 8, 11, 0.62);
	border-color: #ffb322;
	box-shadow: 0 0 0 3px rgba(255, 179, 34, 0.14);
}

.lead-modal-form > button {
	display: inline-flex;
	grid-column: 1 / -1;
	align-items: center;
	justify-content: center;
	gap: 13px;
	min-height: 54px;
	margin-top: 4px;
	padding: 12px 20px;
	color: #12171c;
	background: #ffb322;
	border: 1px solid #ffb322;
	border-radius: 11px;
	font-weight: 790;
	cursor: pointer;
	box-shadow: 0 16px 38px rgba(255, 179, 34, 0.18);
	transition: background 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

.lead-modal-form > button svg {
	width: 20px;
	height: 20px;
	fill: none;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.8;
	transition: transform 180ms var(--ease-out);
}

.lead-modal-form > button:hover,
.lead-modal-form > button:focus-visible {
	background: #ffc24d;
	box-shadow: 0 20px 44px rgba(255, 179, 34, 0.25);
	transform: translateY(-2px);
}

.lead-modal-form > button:hover svg,
.lead-modal-form > button:focus-visible svg {
	transform: translateX(4px);
}

.lead-modal-note {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	margin-top: 19px;
	color: rgba(255, 255, 255, 0.53);
	font-size: 11px;
}

.lead-modal-note > span {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	white-space: nowrap;
}

.lead-modal-note i {
	width: 7px;
	height: 7px;
	background: #72c68b;
	border-radius: 50%;
	box-shadow: 0 0 0 4px rgba(114, 198, 139, 0.09);
}

.lead-modal-note a {
	color: rgba(255, 255, 255, 0.57);
	text-decoration: none;
}

.lead-modal-note strong {
	color: #ffffff;
	font-weight: 740;
}

.lead-modal-note a:hover,
.lead-modal-note a:focus-visible {
	color: var(--color-highlight);
}

/* Page shell and hero */

.breadcrumbs {
	position: absolute;
	top: 18px;
	left: max(var(--page-pad), calc((100% - var(--container)) / 2));
	z-index: 6;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 8px;
	width: fit-content;
	max-width: calc(100% - (var(--page-pad) * 2));
	margin: 0;
	padding: 9px 14px;
	color: rgba(255, 255, 255, 0.66);
	background: rgba(7, 12, 16, 0.46);
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 999px;
	font-size: 12px;
	font-weight: 650;
	line-height: 1.35;
	box-shadow: 0 12px 34px rgba(0, 0, 0, 0.14);
	backdrop-filter: blur(12px);
}

.breadcrumbs a {
	color: #ffffff;
	font-weight: 750;
	text-decoration: none;
}

.breadcrumbs a:hover,
.breadcrumbs a:focus-visible {
	color: var(--color-highlight);
}

.breadcrumbs span[aria-hidden="true"] {
	display: inline-flex;
	align-items: center;
	margin: 0;
	color: var(--color-highlight);
	font-size: 0;
}

.breadcrumbs span[aria-hidden="true"]::before {
	width: 4px;
	height: 4px;
	background: currentColor;
	border-radius: 50%;
	content: "";
}

.breadcrumbs [aria-current="page"] {
	overflow: hidden;
	max-width: min(34vw, 320px);
	text-overflow: ellipsis;
	white-space: nowrap;
}

.lv-main section {
	scroll-margin-top: 100px;
}

.hero {
	position: relative;
	isolation: isolate;
	display: flex;
	align-items: flex-start;
	justify-content: center;
	flex-direction: column;
	width: 100%;
	min-height: clamp(560px, 72vh, 760px);
	margin-bottom: clamp(40px, 5vw, 72px);
	padding-block: clamp(86px, 11vw, 150px);
	padding-inline: max(var(--page-pad), calc((100% - var(--container)) / 2));
	color: var(--color-on-dark);
	background:
		radial-gradient(circle at 83% 17%, rgba(255, 206, 51, 0.26), transparent 22rem),
		linear-gradient(125deg, var(--color-navy) 0%, var(--color-earth) 100%);
	overflow: hidden;
}

.hero::before {
	position: absolute;
	inset: 0;
	z-index: -2;
	background:
		linear-gradient(115deg, rgba(255, 255, 255, 0.035) 0 1px, transparent 1px 100%),
		linear-gradient(25deg, transparent 0 72%, rgba(255, 255, 255, 0.04) 72% 73%, transparent 73%);
	background-size: 54px 54px, 100% 100%;
	content: "";
}

.hero::after {
	position: absolute;
	right: max(var(--page-pad), calc((100% - var(--container)) / 2));
	bottom: clamp(45px, 7vw, 88px);
	z-index: -1;
	width: clamp(90px, 11vw, 150px);
	height: 2px;
	background: var(--color-accent);
	content: "";
}

.hero.hero-visual::before {
	inset: 0;
	z-index: -1;
	background: linear-gradient(90deg, rgba(47, 49, 54, 0.95) 0%, rgba(55, 65, 81, 0.82) 46%, rgba(186, 98, 7, 0.32) 100%);
}

.hero.hero-visual::after {
	display: block;
}

.hero h1 {
	max-width: 900px;
	margin-bottom: 26px;
	color: #ffffff;
}

.hero > h1 + p,
.hero > p:first-child {
	max-width: 680px;
	margin-bottom: 32px;
	color: rgba(253, 251, 246, 0.74);
	font-size: clamp(18px, 1.8vw, 22px);
	line-height: 1.65;
}

.hero > p:last-child,
.hero-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin: 0;
}

.hero > p:last-child a,
.hero-actions a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 52px;
	padding: 13px 22px;
	color: var(--color-accent-ink);
	background: var(--color-accent);
	border-radius: 8px;
	font-weight: 760;
	text-decoration: none;
	box-shadow: 0 16px 35px rgba(217, 154, 30, 0.28);
	transition: background 200ms ease, box-shadow 200ms ease, transform 200ms ease;
}

.hero > p:last-child a:hover,
.hero > p:last-child a:focus-visible,
.hero-actions a:hover,
.hero-actions a:focus-visible {
	color: #ffffff;
	background: var(--color-accent-hover);
	box-shadow: 0 22px 44px rgba(168, 79, 11, 0.3);
	transform: translateY(-3px);
}

.hero-actions a.is-secondary {
	color: #ffffff;
	background: rgba(255, 255, 255, 0.08);
	border: 1px solid rgba(255, 255, 255, 0.46);
	box-shadow: none;
}

.hero-actions a.is-secondary:hover,
.hero-actions a.is-secondary:focus-visible {
	color: var(--color-highlight);
	background: #ffffff;
	border-color: #ffffff;
	box-shadow: 0 18px 38px rgba(7, 16, 27, 0.2);
}

.hero-media {
	position: absolute;
	inset: -18px;
	z-index: -2;
	display: block;
	margin: 0;
	overflow: hidden;
	transform: translate3d(0, var(--hero-shift, 0), 0) scale(1.035);
}

.hero-media img {
	display: block;
	width: 100%;
	max-width: none;
	height: 100%;
	object-fit: cover;
	object-position: center;
	filter: blur(5px) saturate(0.86);
}

/* Premium split hero
 *
 * Content stays in the page template. JavaScript only turns the data attributes
 * into the kicker, trust row and continuously moving ticker.
 */

.hero-premium {
	--hero-content-width: min(48%, 650px);
	display: block;
	min-height: clamp(620px, 70vh, 760px);
	margin-bottom: 0;
	padding-top: clamp(66px, 5vw, 88px);
	padding-bottom: 82px;
	background:
		radial-gradient(circle at 82% 46%, rgba(182, 99, 24, 0.2), transparent 34%),
		linear-gradient(105deg, #090d11 0%, #0d1217 59%, #1d1714 100%);
}

.hero-premium.hero-visual::before {
	inset: 0;
	z-index: 2;
	background:
		linear-gradient(90deg, rgba(8, 12, 16, 0.99) 0%, rgba(8, 12, 16, 0.94) 36%, rgba(8, 12, 16, 0.54) 54%, rgba(8, 12, 16, 0.08) 77%, rgba(8, 12, 16, 0.02) 100%),
		radial-gradient(circle at 19% 22%, rgba(255, 255, 255, 0.035), transparent 28%);
	pointer-events: none;
}

.hero-premium.hero-visual::after {
	display: none;
}

.hero-premium > h1,
.hero-premium > h1 + p,
.hero-premium > .hero-kicker,
.hero-premium > .hero-actions,
.hero-premium > .hero-trust {
	position: relative;
	z-index: 3;
	width: var(--hero-content-width);
}

.hero-premium h1 {
	max-width: 650px;
	margin-bottom: 22px;
	font-size: clamp(52px, 5.35vw, 82px);
	line-height: 0.98;
	letter-spacing: -0.062em;
	text-wrap: balance;
}

.hero-premium > h1 + p {
	max-width: 620px;
	margin-bottom: 24px;
	color: rgba(255, 255, 255, 0.68);
	font-size: clamp(16px, 1.25vw, 19px);
	line-height: 1.7;
}

.hero-premium > .hero-kicker {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 20px;
	color: var(--color-highlight);
	font-size: 10px;
	font-weight: 800;
	letter-spacing: 0.14em;
	line-height: 1.4;
	text-transform: uppercase;
}

.hero-premium > .hero-kicker::before {
	flex: 0 0 30px;
	width: 30px;
	height: 1px;
	background: currentColor;
	content: "";
}

.hero-premium > .hero-actions {
	margin-bottom: 28px;
}

.hero-premium > .hero-actions a {
	min-height: 50px;
	padding: 13px 22px;
	background: #ffb322;
	border-radius: 999px;
	box-shadow: 0 18px 45px rgba(255, 179, 34, 0.18);
}

.hero-premium > .hero-actions a:hover,
.hero-premium > .hero-actions a:focus-visible {
	background: #e89400;
	box-shadow: 0 22px 50px rgba(255, 179, 34, 0.25);
}

.hero-premium > .hero-actions a.is-secondary {
	border-color: rgba(255, 255, 255, 0.22);
	background: rgba(255, 255, 255, 0.045);
	backdrop-filter: blur(8px);
}

.hero-premium > .hero-trust {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	max-width: 650px;
	padding-top: 15px;
	border-top: 1px solid rgba(255, 255, 255, 0.18);
}

.hero-premium > .hero-trust > span {
	display: grid;
	gap: 4px;
	min-width: 0;
	padding-right: 14px;
}

.hero-premium > .hero-trust > span + span {
	padding-left: 14px;
	border-left: 1px solid rgba(255, 255, 255, 0.08);
}

.hero-premium > .hero-trust small {
	color: var(--color-highlight);
	font-size: 9px;
	font-weight: 850;
	letter-spacing: 0.12em;
	line-height: 1;
}

.hero-premium > .hero-trust strong {
	color: rgba(255, 255, 255, 0.76);
	font-size: clamp(10px, 0.8vw, 12px);
	font-weight: 650;
	line-height: 1.35;
}

.hero-premium .hero-media {
	inset: -7% -5% 54px 46%;
	z-index: 1;
	overflow: visible;
	transform: translate3d(0, var(--hero-shift, 0), 0) scale(1);
	pointer-events: none;
}

.hero-premium .hero-media img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: right center;
	filter:
		drop-shadow(0 34px 42px rgba(0, 0, 0, 0.3))
		drop-shadow(0 8px 12px rgba(0, 0, 0, 0.24))
		saturate(1.04)
		contrast(1.02);
	transform: scale(1.09);
	transform-origin: right center;
}

.hero-premium .hero-ticker {
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 5;
	display: flex;
	align-items: center;
	height: 54px;
	overflow: hidden;
	color: #111820;
	background: #ffb322;
	border-top: 1px solid rgba(255, 255, 255, 0.2);
}

.hero-premium .hero-ticker-track {
	display: flex;
	flex: 0 0 auto;
	align-items: center;
	width: max-content;
	min-width: max-content;
	animation: hero-ticker 26s linear infinite;
	will-change: transform;
}

.hero-premium .hero-ticker-group {
	display: flex;
	flex: 0 0 auto;
	align-items: center;
	width: max-content;
}

.hero-premium .hero-ticker:hover .hero-ticker-track {
	animation-play-state: paused;
}

.hero-premium .hero-ticker span {
	display: inline-flex;
	align-items: center;
	gap: clamp(18px, 2.4vw, 38px);
	padding-left: clamp(18px, 2.4vw, 38px);
	font-size: 10px;
	font-weight: 850;
	letter-spacing: 0.17em;
	line-height: 1;
	text-transform: uppercase;
	white-space: nowrap;
}

.hero-premium .hero-ticker span::after {
	width: 5px;
	height: 5px;
	background: currentColor;
	border-radius: 50%;
	content: "";
}

@keyframes hero-ticker {
	to {
		transform: translate3d(-50%, 0, 0);
	}
}

/* Shared section rhythm */

.products,
.regions,
.calculator,
.benefits,
.order-process,
.additional-services,
.faq,
.contacts {
	width: min(100% - (var(--page-pad) * 2), var(--container));
	margin-inline: auto;
	padding-block: var(--section-y);
}

.products > h2,
.regions > h2,
.calculator > h2,
.benefits > h2,
.order-process > h2,
.additional-services > h2,
.faq > h2,
.contacts > h2 {
	max-width: 980px;
}

.products > p,
.regions > p,
.calculator > p,
.additional-services > p,
.contacts > p {
	max-width: var(--reading);
	color: var(--color-ink-soft);
	font-size: clamp(17px, 1.7vw, 20px);
}

.additional-services > p:first-child {
	margin-bottom: 13px;
	color: var(--color-accent-hover);
	font-size: 11px;
	font-weight: 800;
	letter-spacing: 0.15em;
	text-transform: uppercase;
}

.company-intro.additional-services {
	position: relative;
	isolation: isolate;
	display: flex;
	justify-content: center;
	flex-direction: column;
	width: 100%;
	min-height: clamp(560px, 72vh, 760px);
	margin-block: clamp(50px, 7vw, 96px);
	padding-block: clamp(100px, 14vw, 180px);
	padding-inline: max(var(--page-pad), calc((100% - var(--container)) / 2));
	color: #ffffff;
	background: transparent;
	border: 0;
	overflow: hidden;
}

.company-intro::before {
	position: absolute;
	inset: 0;
	z-index: -1;
	background: linear-gradient(90deg, rgba(47, 49, 54, 0.9) 0%, rgba(55, 65, 81, 0.74) 58%, rgba(186, 98, 7, 0.4) 100%);
	content: "";
}

.company-intro-media {
	position: absolute;
	inset: 0;
	z-index: -2;
	margin: 0;
	background: var(--color-navy);
	overflow: hidden;
	clip-path: inset(0);
}

.company-intro-media img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	max-width: none;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.company-intro.is-media-fixed .company-intro-media img {
	position: fixed;
	width: 100vw;
	height: 100vh;
	height: 100svh;
	backface-visibility: hidden;
}

.company-intro > h2 {
	max-width: 940px;
	margin-bottom: 30px;
	color: #ffffff;
	text-shadow: 0 3px 24px rgba(7, 16, 27, 0.34);
}

.company-intro.additional-services > p {
	max-width: 820px;
	color: rgba(255, 255, 255, 0.8);
	font-size: clamp(17px, 1.6vw, 20px);
}

.company-intro.additional-services > p:first-child {
	margin-bottom: 15px;
	color: var(--color-highlight);
}

.company-intro-warehouses.additional-services {
	min-height: clamp(680px, 78vh, 860px);
	margin-block: 0;
	padding-block: clamp(86px, 9vw, 130px);
}

.company-intro-warehouses::before {
	background: linear-gradient(90deg, rgba(13, 18, 23, 0.96) 0%, rgba(20, 27, 34, 0.88) 54%, rgba(30, 32, 30, 0.74) 100%);
}

.company-intro-content {
	display: grid;
	grid-template-columns: minmax(0, 0.92fr) minmax(390px, 0.72fr);
	align-items: center;
	gap: clamp(50px, 7vw, 112px);
	width: 100%;
}

.company-intro-copy {
	max-width: 760px;
}

.company-intro-copy > .section-kicker {
	margin-bottom: 16px;
	color: var(--color-highlight);
}

.company-intro-copy > h2 {
	margin-bottom: 26px;
	color: #ffffff;
	font-size: clamp(44px, 5vw, 70px);
	line-height: 0.98;
	text-shadow: 0 3px 24px rgba(7, 16, 27, 0.34);
	text-wrap: balance;
}

.company-intro-copy > p:not(.section-kicker, .company-intro-actions) {
	max-width: 690px;
	margin: 0;
	color: rgba(255, 255, 255, 0.78);
	font-size: clamp(16px, 1.45vw, 19px);
	line-height: 1.65;
}

.warehouse-address-compact {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	margin-top: 20px;
	padding: 10px 16px 10px 11px;
	color: #ffffff;
	background: rgba(255, 255, 255, 0.075);
	border: 1px solid rgba(255, 255, 255, 0.17);
	border-radius: 14px 5px 14px 5px;
	font-style: normal;
	box-shadow: 0 12px 30px rgba(0, 0, 0, 0.16);
	backdrop-filter: blur(10px);
}

.warehouse-address-icon {
	display: grid;
	flex: 0 0 34px;
	place-items: center;
	width: 34px;
	height: 34px;
	color: #172027;
	background: var(--color-highlight);
	border-radius: 10px 3px 10px 3px;
	box-shadow: 0 8px 20px rgba(217, 154, 30, 0.25);
}

.warehouse-address-icon svg {
	width: 18px;
	height: 18px;
	fill: none;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.8;
}

.warehouse-address-compact small,
.warehouse-address-compact strong {
	display: block;
}

.warehouse-address-compact small {
	margin-bottom: 2px;
	color: var(--color-highlight);
	font-size: 9px;
	font-weight: 850;
	letter-spacing: 0.1em;
	line-height: 1.2;
	text-transform: uppercase;
}

.warehouse-address-compact strong {
	font-size: 13px;
	font-weight: 760;
	line-height: 1.3;
}

.delivery-options {
	display: grid;
	gap: 9px;
	max-width: 720px;
	margin-top: 27px;
}

.delivery-options article {
	position: relative;
	padding: 14px 18px 14px 42px;
	background: rgba(255, 255, 255, 0.055);
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: 12px 4px 12px 4px;
	backdrop-filter: blur(8px);
}

.delivery-options article::before {
	position: absolute;
	top: 20px;
	left: 18px;
	width: 9px;
	height: 9px;
	background: var(--color-accent);
	border: 3px solid rgba(255, 255, 255, 0.16);
	border-radius: 50%;
	box-shadow: 0 0 0 4px rgba(217, 154, 30, 0.08);
	content: "";
}

.delivery-options strong {
	display: block;
	margin-bottom: 4px;
	color: #ffffff;
	font-size: 14px;
	line-height: 1.2;
}

.delivery-options p {
	margin: 0;
	color: rgba(255, 255, 255, 0.63);
	font-size: 12px;
	line-height: 1.5;
}

.company-intro-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 11px;
	margin: 32px 0 0;
}

.company-intro-actions a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 50px;
	padding: 13px 22px;
	color: var(--color-accent-ink);
	background: var(--color-accent);
	border: 1px solid var(--color-accent);
	border-radius: 12px;
	font-size: 13px;
	font-weight: 850;
	letter-spacing: 0.02em;
	text-decoration: none;
	box-shadow: 0 14px 30px rgba(0, 0, 0, 0.2);
	transition: color 180ms ease, background 180ms ease, border-color 180ms ease, transform 180ms ease;
}

.company-intro-actions a.is-secondary {
	color: #ffffff;
	background: rgba(255, 255, 255, 0.07);
	border-color: rgba(255, 255, 255, 0.3);
	backdrop-filter: blur(10px);
}

.company-intro-actions a:hover,
.company-intro-actions a:focus-visible {
	color: var(--color-ink);
	background: #ffffff;
	border-color: #ffffff;
	transform: translateY(-2px);
}

.warehouse-panel {
	padding: clamp(26px, 3vw, 40px);
	background: rgba(9, 14, 18, 0.72);
	border: 1px solid rgba(255, 255, 255, 0.16);
	border-radius: 30px 8px 30px 8px;
	box-shadow:
		0 30px 80px rgba(0, 0, 0, 0.34),
		inset 0 1px 0 rgba(255, 255, 255, 0.08);
	backdrop-filter: blur(17px) saturate(1.08);
}

.warehouse-panel-label {
	margin: 0 0 20px;
	color: var(--color-highlight);
	font-size: 10px;
	font-weight: 850;
	letter-spacing: 0.15em;
	line-height: 1;
	text-transform: uppercase;
}

.delivery-rates-panel {
	min-width: 0;
}

.company-intro-content.delivery-directions-layout {
	row-gap: clamp(26px, 3vw, 42px);
}

.regional-delivery-heading {
	grid-column: 1 / -1;
	width: min(100%, 1100px);
	margin-inline: auto;
	text-align: center;
}

.regional-delivery-heading > .section-kicker {
	margin-bottom: 12px;
	color: var(--color-highlight);
}

.regional-delivery-heading > h2 {
	margin: 0;
	color: #ffffff;
	font-size: clamp(36px, 4.2vw, 58px);
	line-height: 1.02;
	text-shadow: 0 3px 24px rgba(7, 16, 27, 0.34);
	text-wrap: balance;
}

@media (min-width: 1061px) {
	.delivery-directions-layout {
		grid-template-columns: minmax(0, 0.78fr) minmax(540px, 0.92fr);
		column-gap: clamp(36px, 5vw, 76px);
	}
}

.delivery-rates-heading {
	margin-bottom: 18px;
}

.delivery-rates-heading h3 {
	margin: 0;
	color: #ffffff;
	font-size: clamp(22px, 2vw, 30px);
	line-height: 1.08;
	text-wrap: balance;
}

.delivery-rates-scroll {
	max-height: 390px;
	overflow-x: hidden;
	overflow-y: auto;
	overscroll-behavior: contain;
	background: rgba(255, 255, 255, 0.035);
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 16px 5px 16px 5px;
	scrollbar-color: rgba(217, 154, 30, 0.72) rgba(255, 255, 255, 0.05);
	scrollbar-width: thin;
}

.delivery-rates-scroll::-webkit-scrollbar {
	width: 8px;
	height: 8px;
}

.delivery-rates-scroll::-webkit-scrollbar-track {
	background: rgba(255, 255, 255, 0.05);
}

.delivery-rates-scroll::-webkit-scrollbar-thumb {
	background: rgba(217, 154, 30, 0.72);
	border: 2px solid transparent;
	border-radius: 999px;
	background-clip: padding-box;
}

.delivery-rates-table {
	width: 100%;
	border-spacing: 0;
	border-collapse: separate;
	table-layout: fixed;
	color: rgba(255, 255, 255, 0.82);
	font-size: 13px;
	font-variant-numeric: tabular-nums;
}

.delivery-rates-table th,
.delivery-rates-table td {
	padding: 14px 12px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.09);
	line-height: 1.3;
	text-align: left;
}

.delivery-rates-table thead th {
	position: sticky;
	top: 0;
	z-index: 1;
	color: var(--color-highlight);
	background: rgba(18, 25, 31, 0.96);
	font-size: 9px;
	font-weight: 850;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	overflow-wrap: anywhere;
	backdrop-filter: blur(14px);
}

.delivery-rates-table thead th:first-child {
	width: 39%;
}

.delivery-rates-table thead th:nth-child(2) {
	width: 33%;
}

.delivery-rates-table thead th:last-child {
	width: 28%;
}

.delivery-rates-table tbody th {
	color: #ffffff;
	font-weight: 760;
	overflow-wrap: anywhere;
}

.delivery-rates-table tbody td:nth-child(2) {
	color: rgba(255, 255, 255, 0.62);
	white-space: nowrap;
}

.delivery-status {
	color: #bdf4c9;
	font-size: 11px;
	font-weight: 800;
	white-space: nowrap;
}

.delivery-status-mark {
	display: inline-grid;
	place-items: center;
	width: 22px;
	height: 22px;
	margin-right: 7px;
	color: #d9ffe2;
	background: linear-gradient(145deg, rgba(54, 190, 91, 0.38), rgba(31, 138, 65, 0.2));
	border: 1px solid rgba(113, 231, 143, 0.48);
	border-radius: 50%;
	font-size: 13px;
	font-weight: 900;
	line-height: 1;
	box-shadow:
		0 0 0 4px rgba(54, 190, 91, 0.07),
		inset 0 1px 0 rgba(255, 255, 255, 0.18);
}

.delivery-rates-table tbody tr:last-child > * {
	border-bottom: 0;
}

.delivery-rates-table tbody tr:nth-child(even) > * {
	background: rgba(255, 255, 255, 0.025);
}

.delivery-rates-table tbody tr:hover > * {
	background: rgba(54, 190, 91, 0.09);
}

.warehouse-panel .warehouse-map-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	grid-template-rows: repeat(2, minmax(172px, 1fr));
	gap: 10px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.warehouse-map-card {
	position: relative;
	isolation: isolate;
	display: grid;
	place-items: center;
	min-width: 0;
	min-height: 172px;
	padding: 18px;
	background:
		radial-gradient(circle at 50% 46%, rgba(29, 134, 214, 0.12), transparent 67%),
		rgba(255, 255, 255, 0.035);
	border: 1px solid rgba(255, 255, 255, 0.11);
	border-radius: 17px 5px 17px 5px;
	overflow: hidden;
	transition: border-color 240ms ease, background 240ms ease, transform 300ms var(--ease-out);
}

.warehouse-map-card-odesa {
	grid-row: 1 / 3;
}

.warehouse-map-card img {
	position: absolute;
	inset: 8px;
	z-index: 0;
	width: calc(100% - 16px);
	height: calc(100% - 16px);
	object-fit: contain;
	opacity: 0.78;
	filter: drop-shadow(0 13px 15px rgba(0, 0, 0, 0.3));
	transition: opacity 240ms ease, transform 420ms var(--ease-out), filter 240ms ease;
}

.warehouse-map-card > div {
	position: relative;
	z-index: 1;
	max-width: 165px;
	padding: 0;
	text-align: center;
	text-shadow:
		0 2px 3px rgba(0, 0, 0, 0.98),
		0 0 14px rgba(0, 0, 0, 0.92),
		0 0 28px rgba(0, 0, 0, 0.84);
}

.warehouse-map-card-odesa > div {
	max-width: 120px;
}

.warehouse-map-card strong {
	display: block;
	margin-bottom: 5px;
	color: #ffffff;
	font-size: 16px;
	line-height: 1.15;
	text-wrap: balance;
}

.warehouse-map-card address {
	color: rgba(255, 255, 255, 0.88);
	font-size: 11px;
	font-weight: 650;
	font-style: normal;
	line-height: 1.35;
}

.warehouse-map-card:hover {
	background:
		radial-gradient(circle at 50% 46%, rgba(29, 134, 214, 0.2), transparent 68%),
		rgba(255, 255, 255, 0.06);
	border-color: rgba(255, 217, 56, 0.42);
	transform: translateY(-3px);
}

.warehouse-map-card:hover img {
	opacity: 0.96;
	filter: drop-shadow(0 15px 18px rgba(0, 0, 0, 0.4));
	transform: scale(1.025);
}

.warehouse-note {
	margin: 16px 0 0;
	color: rgba(255, 255, 255, 0.6);
	font-size: 12px;
	line-height: 1.55;
	text-align: center;
}

/* Product and information cards */

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

.products > h2,
.products > p {
	grid-column: 1 / -1;
}

.products > h2 {
	order: 1;
}

.products > p {
	order: 2;
}

.products > .section-visual {
	order: 3;
}

.products > article {
	order: 4;
}

.products article {
	position: relative;
	display: flex;
	flex-direction: column;
	min-height: 248px;
	padding: 26px;
	background: var(--color-surface);
	border: 1px solid var(--color-line);
	border-radius: var(--radius-card);
	box-shadow: var(--shadow-card);
	overflow: hidden;
	transition: border-color 240ms ease, box-shadow 320ms ease, transform 320ms var(--ease-out);
}

.products article::before {
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	height: 3px;
	background: var(--color-accent);
	content: "";
	transform: scaleX(0);
	transform-origin: left;
	transition: transform 340ms var(--ease-out);
}

.products article::after {
	position: absolute;
	top: 20px;
	right: 20px;
	width: 9px;
	height: 9px;
	background: var(--color-accent);
	border-radius: 50%;
	content: "";
}

.products article:hover {
	border-color: rgba(217, 154, 30, 0.6);
	box-shadow: var(--shadow-hover);
	transform: translateY(-8px);
}

.products article:hover::before {
	transform: scaleX(1);
}

.products article h3 {
	padding-right: 22px;
}

.products article p {
	color: var(--color-ink-soft);
}

.products article p:last-child {
	margin-top: auto;
	margin-bottom: 0;
}

.products article a {
	color: var(--color-ink);
	font-weight: 760;
	text-decoration-color: var(--color-accent);
	text-decoration-thickness: 2px;
}

.products .product-card-action {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	min-height: 44px;
	margin-top: auto;
	padding: 11px 18px;
	color: var(--color-accent-ink);
	background: var(--color-accent);
	border: 1px solid var(--color-accent);
	border-radius: 8px;
	text-decoration: none;
	transition: color 180ms ease, background 180ms ease, border-color 180ms ease, transform 180ms ease;
}

.products .product-card-action:hover,
.products .product-card-action:focus-visible {
	color: #ffffff;
	background: var(--color-accent-hover);
	border-color: var(--color-accent-hover);
	transform: translateY(-2px);
}

/* Homepage purchase journey */

.section-kicker {
	margin-bottom: 12px;
	color: var(--color-accent-hover);
	font-size: 11px;
	font-weight: 820;
	letter-spacing: 0.15em;
	text-transform: uppercase;
}

.quick-order.contacts {
	position: relative;
	isolation: isolate;
	display: grid;
	grid-template-columns: minmax(300px, 0.72fr) minmax(600px, 1.28fr);
	align-items: center;
	gap: clamp(34px, 5vw, 72px);
	width: 100%;
	margin-top: clamp(24px, 3vw, 40px);
	margin-bottom: 0;
	padding-block: clamp(34px, 4vw, 52px);
	padding-inline: max(var(--page-pad), calc((100% - var(--container)) / 2));
	color: #ffffff;
	background:
		radial-gradient(circle at 78% 18%, rgba(255, 179, 34, 0.2), transparent 25rem),
		linear-gradient(105deg, #090d11 0%, #10161b 58%, #251b13 100%);
	border: 0;
	border-radius: 0;
	overflow: hidden;
}

.quick-order.contacts::before {
	position: absolute;
	inset: 0;
	z-index: -1;
	background:
		linear-gradient(115deg, transparent 0 68%, rgba(255, 255, 255, 0.035) 68% 68.15%, transparent 68.15%),
		radial-gradient(circle at 12% 120%, rgba(255, 179, 34, 0.12), transparent 19rem);
	content: "";
}

.quick-order.contacts::after {
	position: absolute;
	top: 0;
	bottom: 0;
	left: max(8px, calc(((100% - var(--container)) / 2) - 18px));
	z-index: -1;
	width: 3px;
	background: #ffb322;
	content: "";
}

.quick-order h2 {
	max-width: 520px;
	margin-bottom: 12px;
	color: #ffffff;
	font-size: clamp(32px, 3.5vw, 50px);
	line-height: 1;
	letter-spacing: -0.05em;
}

.quick-order .section-kicker {
	margin-bottom: 10px;
	color: var(--color-highlight);
}

.quick-order-copy > p:last-child {
	max-width: 520px;
	margin-bottom: 0;
	color: rgba(255, 255, 255, 0.64);
	font-size: clamp(15px, 1.25vw, 17px);
	line-height: 1.55;
}

.quick-order-form {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr)) auto;
	align-items: end;
	gap: 10px;
	margin: 0;
	padding: 14px;
	background: rgba(255, 255, 255, 0.055);
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 18px;
	box-shadow:
		0 24px 60px rgba(0, 0, 0, 0.18),
		inset 0 1px 0 rgba(255, 255, 255, 0.05);
	backdrop-filter: blur(14px);
}

.quick-order-form label {
	display: grid;
	gap: 6px;
	min-width: 0;
}

.quick-order-form label > span {
	padding-left: 3px;
	color: rgba(255, 255, 255, 0.7);
	font-size: 10px;
	font-weight: 780;
	letter-spacing: 0.1em;
	line-height: 1.2;
	text-transform: uppercase;
}

.quick-order-form input,
.quick-order-form button {
	min-height: 52px;
	border-radius: 11px;
	font: inherit;
}

.quick-order-form input {
	width: 100%;
	min-width: 0;
	padding: 12px 14px;
	color: #ffffff;
	background: rgba(4, 8, 11, 0.42);
	border: 1px solid rgba(255, 255, 255, 0.15);
	outline: none;
	transition: background 180ms ease, border-color 180ms ease, box-shadow 180ms ease;
}

.quick-order-form input::placeholder {
	color: rgba(255, 255, 255, 0.4);
}

.quick-order-form input:focus {
	background: rgba(4, 8, 11, 0.62);
	border-color: #ffb322;
	box-shadow: 0 0 0 3px rgba(255, 179, 34, 0.14);
}

.quick-order-form button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 13px;
	padding: 12px 18px;
	color: #111820;
	background: #ffb322;
	border: 1px solid #ffb322;
	font-weight: 780;
	white-space: nowrap;
	cursor: pointer;
	box-shadow: 0 14px 32px rgba(255, 179, 34, 0.16);
	transition: background 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

.quick-order-form button span {
	font-size: 21px;
	font-weight: 500;
	line-height: 0;
	transition: transform 180ms var(--ease-out);
}

.quick-order-form button:hover,
.quick-order-form button:focus-visible {
	background: #ffc24d;
	box-shadow: 0 18px 38px rgba(255, 179, 34, 0.24);
	transform: translateY(-2px);
}

.quick-order-form button:hover span,
.quick-order-form button:focus-visible span {
	transform: translateX(3px);
}

/* Request journey */

.request-journey {
	position: relative;
	isolation: isolate;
	width: 100%;
	margin-block: 0;
	padding: clamp(54px, 5vw, 76px) 0 clamp(78px, 7vw, 104px);
	background: #faf5ec;
	overflow: hidden;
}

.request-journey-inner {
	position: relative;
	z-index: 2;
	width: min(100% - (var(--page-pad) * 2), var(--container));
	margin-inline: auto;
}

.request-journey-header {
	max-width: 1080px;
	margin-inline: auto;
	text-align: center;
}

.request-journey-mark {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 13px;
	width: 112px;
	margin: 0 auto 18px;
	color: var(--color-accent);
}

.request-journey-mark::before,
.request-journey-mark::after {
	flex: 1 1 auto;
	height: 1px;
	background: currentColor;
	content: "";
}

.request-journey-mark svg {
	flex: 0 0 25px;
	width: 25px;
	height: 25px;
	fill: none;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.6;
}

.request-journey-header h2 {
	margin-bottom: 17px;
	font-size: clamp(38px, 3.6vw, 52px);
	line-height: 1;
	text-wrap: balance;
}

.request-journey-emphasis {
	display: inline-block;
	padding-inline: 0.04em;
	color: var(--color-accent-hover);
	background: linear-gradient(180deg, transparent 72%, rgba(217, 154, 30, 0.3) 72%);
	white-space: nowrap;
}

.request-journey-header > p {
	max-width: 690px;
	margin: 0 auto;
	color: var(--color-ink-soft);
	font-size: clamp(16px, 1.45vw, 19px);
	line-height: 1.65;
	text-wrap: balance;
}

.request-journey-steps {
	position: relative;
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: clamp(46px, 7vw, 104px);
	margin: clamp(40px, 4.5vw, 58px) 0 0;
	padding: 0;
	list-style: none;
}

.request-journey-steps::before {
	position: absolute;
	top: 45px;
	right: 16.666%;
	left: 16.666%;
	z-index: 0;
	height: 1px;
	background: repeating-linear-gradient(90deg, rgba(217, 154, 30, 0.46) 0 4px, transparent 4px 8px);
	content: "";
	mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
	transform-origin: left center;
}

.request-journey-step {
	position: relative;
	z-index: 1;
	min-width: 0;
	text-align: center;
}

.request-journey-step:not(:last-child)::after {
	position: absolute;
	top: 41px;
	right: clamp(-52px, -3.5vw, -24px);
	z-index: 3;
	width: 8px;
	height: 8px;
	background: #faf5ec;
	border-top: 1.5px solid var(--color-accent);
	border-right: 1.5px solid var(--color-accent);
	content: "";
	transform: rotate(45deg);
	box-shadow: 0 0 0 5px #faf5ec;
}

.request-step-visual {
	position: relative;
	z-index: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	width: min(100%, 220px);
	height: 90px;
	margin: 0 auto 17px;
}

.request-step-number {
	position: relative;
	z-index: 1;
	margin-right: -8px;
	padding-inline: 5px;
	color: rgba(217, 154, 30, 0.32);
	background: #faf5ec;
	font-family: Georgia, "Times New Roman", serif;
	font-size: clamp(58px, 5vw, 74px);
	font-weight: 400;
	letter-spacing: -0.07em;
	line-height: 1;
}

.request-step-icon {
	position: relative;
	z-index: 2;
	display: grid;
	flex: 0 0 auto;
	place-items: center;
	width: 68px;
	height: 68px;
	color: var(--color-ink);
	background: rgba(255, 250, 241, 0.96);
	border: 1px solid rgba(217, 154, 30, 0.42);
	border-radius: 50%;
	box-shadow:
		0 0 0 7px rgba(217, 154, 30, 0.055),
		0 14px 34px rgba(111, 75, 22, 0.08);
}

.request-step-icon svg {
	width: 30px;
	height: 30px;
	fill: none;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.65;
}

.request-journey-step h3 {
	max-width: 290px;
	margin: 0 auto 10px;
	font-size: clamp(20px, 1.8vw, 25px);
	line-height: 1.12;
	text-wrap: balance;
}

.request-journey-step > p {
	max-width: 320px;
	margin: 0 auto;
	color: var(--color-ink-soft);
	font-size: 14px;
	line-height: 1.6;
}

.request-journey-waves {
	position: absolute;
	right: 0;
	bottom: -2px;
	left: 0;
	z-index: 1;
	width: 100%;
	height: clamp(52px, 5vw, 72px);
	color: rgba(217, 154, 30, 0.2);
	pointer-events: none;
}

.request-journey-waves path {
	fill: none;
	stroke: currentColor;
	stroke-width: 1;
	vector-effect: non-scaling-stroke;
}

/* Reusable animated proof collage */

.proof-collage {
	position: relative;
	isolation: isolate;
	width: 100%;
	margin-block: clamp(42px, 6vw, 88px);
	padding: clamp(4px, 0.6vw, 9px);
	background:
		radial-gradient(circle at 14% 18%, rgba(255, 179, 34, 0.12), transparent 27rem),
		radial-gradient(circle at 88% 84%, rgba(186, 98, 7, 0.12), transparent 25rem),
		#0e1215;
	overflow: hidden;
}

.proof-collage::before {
	position: absolute;
	inset: 0;
	z-index: -1;
	background:
		linear-gradient(rgba(255, 255, 255, 0.025) 1px, transparent 1px),
		linear-gradient(90deg, rgba(255, 255, 255, 0.025) 1px, transparent 1px);
	background-size: 72px 72px;
	content: "";
	mask-image: linear-gradient(90deg, transparent, #000 22%, #000 78%, transparent);
}

.request-journey + .proof-collage {
	margin-top: 0;
}

.proof-collage-grid {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: repeat(12, minmax(0, 1fr));
	grid-template-rows: repeat(8, minmax(0, 1fr));
	gap: clamp(3px, 0.45vw, 7px);
	width: 100%;
	max-width: 1800px;
	height: clamp(620px, 56vw, 780px);
	margin-inline: auto;
}

.proof-collage-frame {
	position: relative;
	z-index: 1;
	min-width: 0;
	min-height: 0;
	margin: 0;
	background: #252a2f;
	border: 1px solid rgba(255, 255, 255, 0.09);
	border-radius: clamp(3px, 0.35vw, 6px);
	box-shadow: 0 10px 28px rgba(0, 0, 0, 0.18);
	overflow: hidden;
}

.proof-collage-frame::after {
	position: absolute;
	inset: 0;
	z-index: 2;
	background:
		linear-gradient(180deg, rgba(5, 8, 10, 0.02), rgba(5, 8, 10, 0.18)),
		linear-gradient(110deg, rgba(255, 255, 255, 0.08), transparent 32%);
	content: "";
	pointer-events: none;
}

.proof-collage-frame-a {
	grid-column: 1 / 5;
	grid-row: 1 / 6;
}

.proof-collage-frame-b {
	grid-column: 5 / 9;
	grid-row: 1 / 4;
}

.proof-collage-frame-c {
	grid-column: 9 / 13;
	grid-row: 1 / 6;
}

.proof-collage-frame-d {
	grid-column: 1 / 4;
	grid-row: 6 / 9;
}

.proof-collage-frame-e {
	grid-column: 4 / 9;
	grid-row: 5 / 9;
}

.proof-collage-frame-f {
	grid-column: 9 / 13;
	grid-row: 6 / 9;
}

.proof-collage-slide {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	opacity: 0;
	filter: saturate(1.02) contrast(1.03);
	transition: opacity 1200ms cubic-bezier(0.4, 0, 0.2, 1);
	will-change: opacity;
}

.proof-collage-slide.is-active {
	z-index: 1;
	opacity: 1;
}

.proof-collage-card {
	position: relative;
	z-index: 4;
	grid-column: 5 / 9;
	grid-row: 3 / 7;
	align-self: center;
	justify-self: center;
	width: min(100%, 500px);
	padding: clamp(27px, 2.5vw, 38px);
	color: var(--color-ink);
	background:
		linear-gradient(145deg, rgba(255, 255, 255, 0.97), rgba(247, 231, 183, 0.94)),
		var(--color-surface);
	border: 1px solid rgba(255, 255, 255, 0.72);
	border-radius: clamp(12px, 1.2vw, 18px);
	box-shadow:
		0 30px 72px rgba(0, 0, 0, 0.38),
		inset 0 1px 0 rgba(255, 255, 255, 0.9);
	backdrop-filter: blur(18px) saturate(1.08);
}

.proof-collage-card::before {
	position: absolute;
	top: 0;
	left: clamp(27px, 2.5vw, 38px);
	width: 48px;
	height: 3px;
	background: var(--color-accent);
	border-radius: 0 0 999px 999px;
	content: "";
}

.proof-collage-card .section-kicker {
	margin-bottom: 13px;
	color: var(--color-accent-hover);
}

.proof-collage-card h2 {
	max-width: 420px;
	margin-bottom: clamp(20px, 1.8vw, 26px);
	font-size: clamp(32px, 2.8vw, 44px);
	line-height: 0.98;
	text-wrap: balance;
}

.proof-collage-card ul {
	display: grid;
	grid-template-columns: 1fr;
	gap: 13px;
	margin: 0;
	padding: 0;
	color: var(--color-ink-soft);
	font-size: clamp(13px, 1vw, 14px);
	line-height: 1.45;
	list-style: none;
}

.proof-collage-card li {
	position: relative;
	padding-left: 22px;
}

.proof-collage-card li::before {
	position: absolute;
	top: 0.12em;
	left: 0;
	display: grid;
	place-items: center;
	width: 15px;
	height: 15px;
	color: var(--color-accent-ink);
	background: var(--color-accent);
	border-radius: 50%;
	font-size: 9px;
	font-weight: 900;
	line-height: 1;
	content: "✓";
}

/* Reusable light feature panel */

.proof-collage + .feature-panel {
	margin-top: clamp(-88px, -6vw, -42px);
}

.feature-panel {
	position: relative;
	isolation: isolate;
	width: 100%;
	padding: clamp(72px, 7vw, 108px) 0;
	background: #f5f0e7;
	border-block: 1px solid rgba(122, 104, 72, 0.14);
	overflow: hidden;
}

.feature-panel::before {
	position: absolute;
	top: -20rem;
	right: -16rem;
	z-index: -1;
	width: 38rem;
	height: 38rem;
	background: radial-gradient(circle, rgba(217, 154, 30, 0.12), transparent 68%);
	border-radius: 50%;
	content: "";
	pointer-events: none;
}

.feature-panel-inner {
	width: min(100% - (var(--page-pad) * 2), var(--container));
	margin-inline: auto;
}

.feature-panel-head {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(300px, 0.46fr);
	align-items: center;
	gap: clamp(38px, 6vw, 92px);
}

.feature-panel-copy {
	max-width: 850px;
}

.feature-panel-copy > .section-kicker {
	margin-bottom: 13px;
	color: var(--color-accent-hover);
}

.feature-panel-copy > h2 {
	margin-bottom: 22px;
	font-size: clamp(42px, 4.8vw, 68px);
	line-height: 0.98;
	text-wrap: balance;
}

.feature-panel-lead {
	max-width: 760px;
	margin: 0;
	color: var(--color-ink-soft);
	font-size: clamp(16px, 1.45vw, 19px);
	line-height: 1.65;
}

.program-badge {
	position: relative;
	display: flex;
	justify-content: center;
	flex-direction: column;
	min-height: 220px;
	margin: 0;
	padding: 36px 30px 28px;
	background: rgba(255, 255, 255, 0.78);
	border: 1px solid rgba(33, 141, 198, 0.2);
	border-radius: 28px 8px 28px 8px;
	box-shadow:
		0 22px 54px rgba(47, 49, 54, 0.08),
		0 0 0 0 rgba(33, 141, 198, 0);
	overflow: hidden;
	animation: program-attention 5.2s ease-in-out infinite;
}

.program-badge::after {
	position: absolute;
	inset: -80% auto -80% -35%;
	width: 30%;
	background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.76), transparent);
	content: "";
	transform: rotate(16deg) translateX(-320%);
	animation: program-shine 5.2s ease-in-out infinite;
	pointer-events: none;
}

.program-badge-label {
	align-self: flex-start;
	margin-bottom: 13px;
	padding: 7px 11px;
	color: #075378;
	background: rgba(26, 169, 225, 0.1);
	border: 1px solid rgba(26, 169, 225, 0.18);
	border-radius: 999px;
	font-size: 10px;
	font-weight: 850;
	letter-spacing: 0.13em;
	line-height: 1;
	text-transform: uppercase;
}

.program-badge img {
	position: relative;
	z-index: 1;
	width: min(100%, 330px);
	height: auto;
	margin: 0 auto 17px;
}

.program-badge figcaption {
	position: relative;
	z-index: 1;
	max-width: 370px;
	margin-inline: auto;
	color: var(--color-ink-soft);
	font-size: 12px;
	line-height: 1.5;
	text-align: center;
}

@keyframes program-attention {
	0%,
	64%,
	100% {
		border-color: rgba(33, 141, 198, 0.2);
		box-shadow: 0 22px 54px rgba(47, 49, 54, 0.08), 0 0 0 0 rgba(33, 141, 198, 0);
	}
	76% {
		border-color: rgba(33, 141, 198, 0.42);
		box-shadow: 0 22px 54px rgba(47, 49, 54, 0.08), 0 0 0 8px rgba(33, 141, 198, 0.07);
	}
}

@keyframes program-shine {
	0%,
	58% {
		transform: rotate(16deg) translateX(-320%);
	}
	78%,
	100% {
		transform: rotate(16deg) translateX(650%);
	}
}

.feature-card-grid {
	position: relative;
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: clamp(14px, 1.5vw, 22px);
	margin-top: clamp(48px, 5vw, 72px);
	counter-reset: feature-card;
}

.feature-card-grid::before {
	position: absolute;
	top: 42px;
	right: 42px;
	left: 42px;
	z-index: 0;
	height: 1px;
	background: linear-gradient(90deg, rgba(217, 154, 30, 0.2), var(--color-accent), rgba(217, 154, 30, 0.2));
	content: "";
}

.feature-card {
	position: relative;
	z-index: 1;
	min-height: 270px;
	padding: 108px clamp(24px, 2.2vw, 34px) 30px;
	background:
		linear-gradient(145deg, rgba(255, 255, 255, 0.9), transparent 43%),
		#ebe5da;
	border: 1px solid rgba(122, 104, 72, 0.22);
	border-radius: 68px 22px 22px 22px;
	box-shadow: 0 18px 42px rgba(47, 49, 54, 0.06);
	counter-increment: feature-card;
	transition: border-color 240ms ease, box-shadow 300ms ease, translate 300ms var(--ease-out);
}

.feature-card::before {
	position: absolute;
	top: 24px;
	left: 24px;
	display: grid;
	place-items: center;
	width: 52px;
	height: 52px;
	color: #111820;
	background: #ffc54e;
	border: 8px solid #ffffff;
	border-radius: 50%;
	box-shadow: 0 12px 24px rgba(217, 154, 30, 0.14);
	content: counter(feature-card, decimal-leading-zero);
	font-size: 10px;
	font-weight: 850;
	line-height: 1;
}

.feature-card:hover {
	border-color: rgba(217, 154, 30, 0.52);
	box-shadow: 0 28px 58px rgba(47, 49, 54, 0.12);
	translate: 0 -7px;
}

.feature-card h3 {
	margin-bottom: 14px;
	font-size: clamp(21px, 1.8vw, 27px);
	line-height: 1.08;
	text-wrap: balance;
}

.feature-card p {
	margin: 0;
	color: var(--color-ink-soft);
	font-size: 15px;
	line-height: 1.65;
}

.fuel-product-grid {
	align-items: stretch;
}

.product-region-card {
	min-height: 100%;
	background: linear-gradient(155deg, #ffffff 0%, var(--color-surface) 60%, rgba(247, 231, 183, 0.28) 100%);
	border-color: rgba(216, 199, 162, 0.82);
}

.product-region-card::before {
	z-index: 4;
}

.products .product-region-card::after {
	display: none;
}

.product-region-card .card-media {
	position: relative;
	isolation: isolate;
	margin: -26px -26px 22px;
	border-radius: calc(var(--radius-card) - 1px) calc(var(--radius-card) - 1px) 0 0;
}

.product-region-card .card-media::after {
	position: absolute;
	inset: 35% 0 0;
	z-index: 0;
	background: linear-gradient(180deg, transparent, rgba(18, 20, 23, 0.56));
	content: "";
	pointer-events: none;
}

.products .product-region-card h3 {
	margin-bottom: 17px;
	padding-right: 0;
}

.product-region-card.is-open {
	border-color: var(--color-accent);
	box-shadow: var(--shadow-hover);
}

.product-region-card.is-region-selectable {
	cursor: pointer;
}

.product-region-card.is-region-selectable a,
.product-region-card.is-region-selectable button {
	cursor: pointer;
}

.product-region-card.is-open::before {
	transform: scaleX(1);
}

.product-type-list {
	display: grid;
	gap: 7px;
	margin: 0 0 18px;
	padding: 0;
	color: var(--color-ink-soft);
	font-size: 14px;
	list-style: none;
}

.product-type-list li {
	display: flex;
	align-items: center;
	gap: 9px;
}

.product-type-list li::before {
	flex: 0 0 auto;
	width: 6px;
	height: 6px;
	background: var(--color-accent);
	border-radius: 50%;
	content: "";
}

.products article .product-start-price {
	position: absolute;
	right: 14px;
	bottom: 14px;
	left: 14px;
	z-index: 1;
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 5px;
	width: max-content;
	max-width: calc(100% - 28px);
	margin: 0;
	padding: 9px 12px;
	color: #ffffff;
	background: rgba(47, 49, 54, 0.86);
	border: 1px solid rgba(255, 255, 255, 0.2);
	border-radius: 9px;
	box-shadow: 0 10px 28px rgba(8, 18, 31, 0.2);
	line-height: 1.15;
	backdrop-filter: blur(9px) saturate(1.15);
}

.product-start-price span {
	color: rgba(255, 255, 255, 0.7);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.05em;
	text-transform: uppercase;
}

.product-start-price strong {
	font-size: clamp(22px, 2vw, 27px);
	font-weight: 820;
	letter-spacing: -0.035em;
}

.product-start-price small {
	color: rgba(255, 255, 255, 0.74);
	font-size: 12px;
	font-weight: 650;
}

.products article .product-details-link {
	display: inline-flex;
	align-items: center;
	align-self: flex-start;
	gap: 7px;
	margin: auto 0 17px;
	color: var(--color-ink-soft);
	font-size: 12px;
	font-weight: 680;
	text-decoration: none;
}

.product-details-link span {
	color: var(--color-accent-hover);
	transition: transform 180ms ease;
}

.products article .product-details-link:hover,
.products article .product-details-link:focus-visible {
	color: var(--color-ink);
	text-decoration: underline;
	text-decoration-color: var(--color-accent);
	text-underline-offset: 4px;
}

.product-details-link:hover span,
.product-details-link:focus-visible span {
	transform: translateX(3px);
}

.product-region-toggle {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	width: 100%;
	margin-top: auto;
	padding: 11px 11px 11px 15px;
	color: var(--color-accent-ink);
	background: var(--color-accent);
	border: 1px solid var(--color-accent);
	border-radius: 9px;
	font-weight: 780;
	text-align: left;
	cursor: pointer;
	transition: color 180ms ease, background 180ms ease, border-color 180ms ease, transform 180ms ease;
}

.product-region-toggle:hover,
.product-region-toggle:focus-visible {
	color: #ffffff;
	background: var(--color-accent-hover);
	border-color: var(--color-accent-hover);
	transform: translateY(-2px);
}

.product-region-toggle span {
	position: relative;
	display: grid;
	flex: 0 0 auto;
	place-items: center;
	width: 30px;
	height: 30px;
	color: var(--color-accent-ink);
	background: rgba(255, 255, 255, 0.48);
	border-radius: 50%;
	font-size: 0;
	line-height: 1;
	transform: rotate(0deg);
	transform-origin: 50% 50%;
	transition: color 200ms ease, background 200ms ease, transform 240ms var(--ease-out);
}

.product-region-toggle span::before,
.product-region-toggle span::after {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 12px;
	height: 2px;
	background: currentColor;
	border-radius: 999px;
	content: "";
	transform: translate(-50%, -50%);
}

.product-region-toggle span::after {
	transform: translate(-50%, -50%) rotate(90deg);
}

.product-region-card.is-open .product-region-toggle span {
	color: var(--color-accent-ink);
	background: var(--color-accent);
	transform: rotate(45deg);
}

.product-region-card.is-open .product-region-toggle {
	color: #ffffff;
	background: var(--color-navy);
	border-color: var(--color-navy);
}

.product-region-options {
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	z-index: 3;
	display: grid;
	grid-template-columns: 1fr;
	align-content: center;
	gap: 8px;
	margin: 0;
	padding: 26px;
	aspect-ratio: 4 / 3;
	background: rgba(47, 49, 54, 0.95);
	border: 1px solid rgba(255, 255, 255, 0.16);
	border-radius: calc(var(--radius-card) - 1px) calc(var(--radius-card) - 1px) 0 0;
	box-shadow: 0 20px 44px rgba(8, 18, 31, 0.24);
	opacity: 0;
	visibility: hidden;
	backdrop-filter: blur(10px) saturate(1.15);
	transform: translate3d(0, -110%, 0);
	pointer-events: none;
	transition: opacity 240ms ease, visibility 240ms ease, transform 320ms var(--ease-out);
}

.product-region-options[hidden] {
	display: none;
}

.product-region-card.is-open .product-region-options {
	opacity: 1;
	visibility: visible;
	transform: translate3d(0, 0, 0);
	pointer-events: auto;
}

.products article .product-region-options a {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 42px;
	padding: 9px 10px;
	color: #ffffff;
	background: rgba(255, 255, 255, 0.09);
	border: 1px solid rgba(255, 255, 255, 0.2);
	border-radius: 8px;
	font-size: 13px;
	text-align: center;
	text-decoration: none;
	transition: color 180ms ease, background 180ms ease, border-color 180ms ease, transform 180ms ease;
}

.products article .product-region-options a:hover,
.products article .product-region-options a:focus-visible {
	color: #ffffff;
	background: rgba(255, 255, 255, 0.17);
	border-color: var(--color-accent);
	transform: translateY(-2px);
}

.card-media {
	margin: -10px -10px 23px;
	aspect-ratio: 4 / 3;
	background: var(--color-surface-muted);
	border-radius: 9px;
	overflow: hidden;
}

.section-visual {
	grid-column: 1 / -1;
	width: 100%;
	margin: 12px 0 18px;
	aspect-ratio: 5 / 2;
	background: var(--color-surface-muted);
	border-radius: 12px;
	overflow: hidden;
	box-shadow: var(--shadow-card);
}

.card-media img,
.section-visual img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: filter 350ms ease, transform 900ms var(--ease-out);
}

.products article:hover .card-media img,
.section-visual:hover img {
	filter: saturate(1.1) contrast(1.02);
	transform: scale(1.045);
}

/* Region navigation */

.regions {
	border-top: 1px solid var(--color-line);
	border-bottom: 1px solid var(--color-line);
}

.regions h3 {
	margin-top: 34px;
}

.regions nav {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 17px;
}

.regions nav a {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	padding: 9px 16px;
	color: var(--color-ink);
	background: var(--color-surface);
	border: 1px solid var(--color-line);
	border-radius: 8px;
	font-weight: 720;
	text-decoration: none;
	transition: color 180ms ease, background 180ms ease, border-color 180ms ease, transform 180ms ease;
}

.regions nav a:hover,
.regions nav a:focus-visible {
	color: #ffffff;
	background: var(--color-navy);
	border-color: var(--color-navy);
	transform: translateY(-3px);
}

/* Full-width dark bands */

.calculator,
.benefits,
.cta.contacts {
	width: 100%;
	max-width: none;
	padding-inline: max(var(--page-pad), calc((100% - var(--container)) / 2));
}

.calculator,
.benefits {
	color: var(--color-on-dark);
	background:
		radial-gradient(circle at 90% 10%, rgba(255, 206, 51, 0.22), transparent 28rem),
		linear-gradient(135deg, var(--color-navy-soft), var(--color-earth-deep));
}

.calculator h2,
.benefits h2 {
	color: #ffffff;
}

.calculator > p,
.benefits > p {
	color: rgba(253, 251, 246, 0.66);
}

/* Forms */

.calculator form {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 20px;
	max-width: 980px;
	margin-top: 38px;
}

.calculator label {
	display: grid;
	gap: 8px;
	color: rgba(253, 251, 246, 0.84);
	font-weight: 680;
}

.calculator input,
.calculator select,
.calculator textarea,
.calculator button {
	width: 100%;
	min-height: 56px;
	padding: 13px 15px;
	color: var(--color-ink);
	background: rgba(255, 255, 255, 0.97);
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: 8px;
}

.calculator input:focus,
.calculator select:focus,
.calculator textarea:focus {
	border-color: var(--color-accent);
	box-shadow: 0 0 0 4px rgba(217, 154, 30, 0.22);
	outline: none;
}

.calculator textarea {
	min-height: 136px;
	resize: vertical;
}

.calculator .form-consent {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	font-weight: 450;
}

.calculator .form-consent input[type="checkbox"] {
	flex: 0 0 auto;
	width: 19px;
	min-height: 19px;
	margin: 3px 0 0;
	padding: 0;
	accent-color: var(--color-accent);
}

.calculator button {
	align-self: end;
	color: var(--color-accent-ink);
	background: var(--color-accent);
	border-color: var(--color-accent);
	font-weight: 760;
	cursor: pointer;
	transition: background 200ms ease, box-shadow 200ms ease, transform 200ms ease;
}

.calculator button:hover,
.calculator button:focus-visible {
	color: #ffffff;
	background: var(--color-accent-hover);
	box-shadow: 0 16px 36px rgba(168, 79, 11, 0.27);
	transform: translateY(-3px);
}

/* Benefit, process and link grids */

.benefits ul,
.order-process ol,
.additional-services ul {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px;
	padding: 0;
	list-style: none;
}

.benefits {
	position: relative;
	overflow: hidden;
}

.benefits > h2 {
	max-width: 820px;
	margin-right: auto;
	margin-bottom: clamp(44px, 6vw, 72px);
	margin-left: auto;
	text-align: center;
}

.benefits > h2::after {
	display: block;
	width: 72px;
	height: 3px;
	margin: 24px auto 0;
	background: var(--color-accent);
	border-radius: 999px;
	content: "";
}

.benefits ul {
	max-width: 1120px;
	margin: 0 auto;
	gap: 20px;
	counter-reset: benefit;
}

.benefits li,
.order-process li,
.additional-services li {
	position: relative;
	padding: 25px;
	border-radius: 10px;
	transition: border-color 220ms ease, background 220ms ease, transform 280ms var(--ease-out);
}

.benefits li {
	min-height: 160px;
	padding: 32px 72px 32px 32px;
	color: rgba(253, 251, 246, 0.7);
	background: linear-gradient(125deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.035));
	border: 1px solid rgba(255, 255, 255, 0.12);
	counter-increment: benefit;
	transition: border-color 220ms ease, background 220ms ease, box-shadow 280ms ease, translate 280ms var(--ease-out);
}

.benefits li::before {
	position: absolute;
	top: 28px;
	right: 28px;
	color: var(--color-accent);
	font-size: 13px;
	font-weight: 820;
	letter-spacing: 0.08em;
	content: counter(benefit, decimal-leading-zero);
}

.benefits li strong {
	display: block;
	margin-bottom: 10px;
	color: #ffffff;
	font-size: clamp(18px, 1.5vw, 21px);
	line-height: 1.25;
}

.benefits li:hover {
	background: rgba(255, 255, 255, 0.09);
	border-color: rgba(255, 206, 51, 0.72);
	box-shadow: 0 18px 40px rgba(5, 14, 25, 0.22);
	transform: none;
	translate: 0 -5px;
}

.order-process ol {
	counter-reset: step;
}

.order-process li {
	min-height: 190px;
	background: var(--color-surface);
	border: 1px solid var(--color-line);
	counter-increment: step;
}

.order-process li::before {
	display: grid;
	place-items: center;
	width: 48px;
	height: 48px;
	margin-bottom: 22px;
	color: var(--color-accent-ink);
	background: var(--color-accent);
	border-radius: 50%;
	font-size: 14px;
	font-weight: 800;
	content: counter(step, decimal-leading-zero);
	transition: transform 260ms var(--ease-spring);
}

.order-process li:hover {
	border-color: var(--color-accent);
	transform: translateY(-5px);
}

.order-process li:hover::before {
	transform: rotate(-7deg) scale(1.08);
}

.additional-services {
	border-top: 1px solid var(--color-line);
}

.additional-services li {
	background: transparent;
	border: 1px solid var(--color-line);
}

.additional-services li:hover {
	background: var(--color-surface);
	border-color: var(--color-accent);
	transform: translateX(5px);
}

.additional-services li a {
	color: var(--color-ink);
	font-weight: 740;
	text-decoration-color: var(--color-accent);
}

.visual-editorial {
	display: flow-root;
}

/* Related navigation */

.related-links.additional-services ul {
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 18px;
	margin: 34px 0 0;
}

.related-links.additional-services li {
	min-width: 0;
	min-height: 150px;
	padding: 0;
	background: var(--color-surface);
	border: 1px solid var(--color-line);
	border-radius: var(--radius-card);
	overflow: hidden;
	box-shadow: var(--shadow-card);
	translate: 0 0;
	transition: border-color 240ms ease, box-shadow 320ms ease, translate 320ms var(--ease-out);
}

.related-links.additional-services li::before {
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	height: 3px;
	background: var(--color-accent);
	content: "";
	transform: scaleX(0);
	transform-origin: left;
	transition: transform 340ms var(--ease-out);
}

.related-links.additional-services li::after {
	position: absolute;
	top: 20px;
	right: 20px;
	width: 9px;
	height: 9px;
	background: var(--color-accent);
	border-radius: 50%;
	content: "";
}

.related-links.additional-services li:hover,
.related-links.additional-services li:focus-within {
	border-color: rgba(217, 154, 30, 0.6);
	box-shadow: var(--shadow-hover);
	transform: none;
	translate: 0 -6px;
}

.related-links.additional-services li:hover::before,
.related-links.additional-services li:focus-within::before {
	transform: scaleX(1);
}

.related-links.additional-services li a {
	display: flex;
	align-items: flex-end;
	width: 100%;
	height: 100%;
	min-height: 150px;
	padding: 48px 44px 24px 24px;
	color: var(--color-ink);
	font-size: clamp(17px, 1.35vw, 20px);
	font-weight: 760;
	line-height: 1.2;
	text-decoration-color: var(--color-accent);
	text-decoration-thickness: 2px;
}

.related-links.additional-services li a::after {
	position: absolute;
	right: 24px;
	bottom: 24px;
	color: var(--color-accent-hover);
	width: 16px;
	height: 16px;
	background: currentColor;
	clip-path: polygon(0 43%, 60% 43%, 60% 12%, 100% 50%, 60% 88%, 60% 57%, 0 57%);
	content: "";
	transition: transform 240ms var(--ease-out);
}

.related-links.additional-services li:hover a::after,
.related-links.additional-services li:focus-within a::after {
	transform: translateX(4px);
}

/* Homepage related links orbit */

.related-links-orbit.additional-services {
	display: grid;
	grid-template-columns: minmax(250px, 0.72fr) minmax(560px, 1.28fr);
	align-items: center;
	gap: clamp(36px, 6vw, 90px);
	min-height: 560px;
	overflow: hidden;
}

.related-links-intro {
	align-self: center;
}

.related-links-intro > p:first-child {
	margin-bottom: 14px;
	color: var(--color-accent-hover);
	font-size: 11px;
	font-weight: 800;
	letter-spacing: 0.15em;
	text-transform: uppercase;
}

.related-links-intro h2 {
	margin-bottom: 22px;
}

.related-links-intro > p:last-child {
	max-width: 390px;
	margin-bottom: 0;
	color: var(--color-ink-soft);
	font-size: 18px;
}

.related-links-orbit.additional-services ul {
	position: relative;
	display: block;
	width: 100%;
	max-width: 700px;
	height: 400px;
	margin: 0 auto;
	padding: 0;
}

.related-links-orbit.additional-services ul::before {
	position: absolute;
	bottom: 20px;
	left: 50%;
	width: 76%;
	aspect-ratio: 2 / 1;
	border: 1px solid rgba(186, 98, 7, 0.42);
	border-bottom: 0;
	border-radius: 999px 999px 0 0;
	content: "";
	transform: translateX(-50%);
	pointer-events: none;
}

.related-links-orbit.additional-services li {
	position: absolute;
	width: clamp(128px, 13vw, 170px);
	min-height: 0;
	padding: 0;
	background:
		linear-gradient(110deg, rgba(216, 199, 162, 0.34), transparent 44%),
		var(--color-surface);
	border: 1px solid rgba(186, 98, 7, 0.3);
	border-radius: 999px;
	box-shadow:
		0 12px 30px rgba(47, 49, 54, 0.1),
		inset 0 1px 0 rgba(255, 255, 255, 0.8);
	translate: -50% -50%;
	overflow: hidden;
	scale: 1;
	transition:
		background-color 260ms ease,
		border-color 260ms ease,
		box-shadow 320ms ease,
		scale 320ms var(--ease-out),
		translate 320ms var(--ease-out);
}

.related-links-orbit.additional-services li:nth-child(1) { top: 82%; left: 14%; }
.related-links-orbit.additional-services li:nth-child(2) { top: 54%; left: 19%; }
.related-links-orbit.additional-services li:nth-child(3) { top: 29%; left: 32%; }
.related-links-orbit.additional-services li:nth-child(4) { top: 18%; left: 50%; }
.related-links-orbit.additional-services li:nth-child(5) { top: 29%; left: 68%; }
.related-links-orbit.additional-services li:nth-child(6) { top: 54%; left: 81%; }
.related-links-orbit.additional-services li:nth-child(7) { top: 82%; left: 86%; }

.related-links-orbit.additional-services li::before {
	top: 50%;
	right: auto;
	left: 17px;
	display: block;
	width: 7px;
	height: 7px;
	background: var(--color-accent);
	border-radius: 50%;
	box-shadow: 0 0 0 5px rgba(217, 154, 30, 0.16);
	transform: translateY(-50%);
	transition: background-color 260ms ease, box-shadow 260ms ease;
}

.related-links-orbit.additional-services li::after {
	display: none;
}

.related-links-orbit.additional-services li:hover,
.related-links-orbit.additional-services li:focus-within {
	background: var(--color-navy);
	border-color: var(--color-navy);
	box-shadow: 0 20px 42px rgba(47, 49, 54, 0.24);
	transform: none;
	translate: -50% -50%;
	scale: 1.045;
}

.related-links-orbit.additional-services li:hover::before,
.related-links-orbit.additional-services li:focus-within::before {
	background: #ffffff;
	box-shadow: 0 0 0 5px rgba(255, 255, 255, 0.12);
}

.related-links-orbit.additional-services li a {
	align-items: center;
	min-height: 62px;
	padding: 13px 48px 13px 34px;
	font-size: 15px;
	font-weight: 780;
	line-height: 1.15;
	text-decoration: none;
}

.related-links-orbit.additional-services li a::after {
	top: 50%;
	right: 12px;
	bottom: auto;
	display: grid;
	width: 30px;
	height: 30px;
	place-items: center;
	background: rgba(255, 206, 51, 0.2);
	border: 1px solid rgba(217, 154, 30, 0.32);
	border-radius: 50%;
	font-size: 14px;
	transform: translateY(-50%);
	transition: background-color 240ms ease, border-color 240ms ease, color 240ms ease, transform 240ms var(--ease-out);
}

.related-links-orbit.additional-services li:hover a,
.related-links-orbit.additional-services li:focus-within a {
	color: #ffffff;
}

.related-links-orbit.additional-services li:hover a::after,
.related-links-orbit.additional-services li:focus-within a::after {
	background: var(--color-accent);
	border-color: var(--color-accent);
	color: var(--color-accent-ink);
	transform: translate(3px, -50%);
}

/* Customer feedback board */

.customer-feedback {
	position: relative;
	isolation: isolate;
	width: 100%;
	padding-block: clamp(64px, 8vw, 108px);
	color: #ffffff;
	background: #10161a;
	border-block: 1px solid rgba(255, 255, 255, 0.08);
	overflow: hidden;
}

.customer-feedback::before {
	position: absolute;
	inset: -20px;
	z-index: -2;
	background: url("../images/pages/feedback/feedback-background.webp") center 52% / cover no-repeat;
	content: "";
	filter: blur(4px) saturate(0.68) contrast(0.94);
	opacity: 0.64;
	pointer-events: none;
	transform: scale(1.035);
}

.customer-feedback::after {
	position: absolute;
	inset: 0;
	z-index: -1;
	background:
		radial-gradient(circle at 12% 18%, rgba(255, 179, 34, 0.17), transparent 31rem),
		radial-gradient(circle at 88% 82%, rgba(186, 98, 7, 0.16), transparent 29rem),
		linear-gradient(105deg, rgba(8, 14, 18, 0.9) 0%, rgba(10, 16, 20, 0.7) 36%, rgba(12, 17, 20, 0.48) 63%, rgba(15, 13, 11, 0.77) 100%),
		linear-gradient(180deg, rgba(8, 13, 16, 0.52), rgba(8, 13, 16, 0.16) 48%, rgba(8, 13, 16, 0.66));
	box-shadow: inset 0 0 110px rgba(0, 0, 0, 0.34);
	content: "";
	outline: 1px solid rgba(255, 255, 255, 0.09);
	outline-offset: -12px;
	pointer-events: none;
}

.customer-feedback-inner {
	position: relative;
	z-index: 1;
	width: min(100% - (var(--page-pad) * 2), var(--container));
	margin-inline: auto;
}

.customer-feedback-header {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(280px, 0.55fr);
	align-items: end;
	gap: 16px clamp(34px, 6vw, 90px);
	margin-bottom: clamp(36px, 5vw, 62px);
}

.customer-feedback-header .section-kicker {
	grid-column: 1 / -1;
	margin-bottom: -2px;
	color: var(--color-highlight);
}

.customer-feedback-header h2 {
	margin: 0;
	color: #ffffff;
	font-size: clamp(38px, 4.7vw, 62px);
	text-wrap: balance;
}

.customer-feedback-header #customer-feedback-title {
	grid-column: 1 / -1;
	justify-self: center;
	width: 100%;
	text-align: center;
	text-wrap: nowrap;
	white-space: nowrap;
}

.customer-feedback-header > p:not(.section-kicker, .customer-feedback-swipe) {
	max-width: 500px;
	margin: 0 0 5px;
	color: rgba(255, 255, 255, 0.76);
	font-size: clamp(15px, 1.35vw, 18px);
	line-height: 1.6;
}

.customer-feedback-swipe {
	display: none;
}

.customer-feedback-rail {
	display: flex;
	align-items: center;
	gap: clamp(14px, 1.8vw, 26px);
	padding: 24px 13px 34px;
}

.customer-feedback-card {
	--card-lift: 0px;
	--card-tilt: 0deg;
	position: relative;
	z-index: 1;
	flex: 1 1 0;
	min-width: 0;
	margin: 0;
	padding: clamp(8px, 0.9vw, 12px) clamp(8px, 0.9vw, 12px) clamp(19px, 2vw, 28px);
	background: #fffdf7;
	border: 1px solid rgba(113, 87, 53, 0.18);
	box-shadow:
		0 17px 24px rgba(45, 25, 12, 0.26),
		0 4px 7px rgba(45, 25, 12, 0.16);
	transform: translateY(var(--card-lift)) rotate(var(--card-tilt));
	transform-origin: 50% 12px;
	transition: box-shadow 260ms ease, transform 320ms var(--ease-spring);
}

.customer-feedback-card:nth-child(1) {
	--card-lift: 8px;
	--card-tilt: -4deg;
}

.customer-feedback-card:nth-child(2) {
	--card-lift: -7px;
	--card-tilt: 2.5deg;
}

.customer-feedback-card:nth-child(3) {
	--card-lift: 5px;
	--card-tilt: -1.5deg;
}

.customer-feedback-card:nth-child(4) {
	--card-lift: -10px;
	--card-tilt: 4deg;
}

.customer-feedback-card:nth-child(5) {
	--card-lift: 7px;
	--card-tilt: -3deg;
}

.customer-feedback-pin {
	position: absolute;
	top: -12px;
	left: 50%;
	z-index: 3;
	width: 23px;
	height: 23px;
	background:
		radial-gradient(circle at 35% 28%, #fff5a8 0 8%, transparent 9%),
		radial-gradient(circle at 44% 36%, #ffd848 0 24%, #d98e14 60%, #9c4e08 100%);
	border: 1px solid rgba(91, 45, 7, 0.48);
	border-radius: 50%;
	box-shadow:
		0 7px 7px rgba(50, 27, 10, 0.34),
		inset -2px -3px 4px rgba(100, 43, 3, 0.26);
	transform: translateX(-50%);
}

.customer-feedback-pin::after {
	position: absolute;
	top: 19px;
	left: 50%;
	width: 2px;
	height: 8px;
	background: rgba(72, 50, 31, 0.54);
	content: "";
	transform: translateX(-50%);
}

.customer-feedback-photo {
	display: grid;
	width: 100%;
	aspect-ratio: 1 / 1.06;
	place-items: center;
	background: #262a2e;
	overflow: hidden;
}

.customer-feedback-card:nth-child(3) .customer-feedback-photo {
	background: #294471;
}

.customer-feedback-card:nth-child(4) .customer-feedback-photo {
	background: #f2f0ed;
}

.customer-feedback-photo img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.customer-feedback-card figcaption {
	margin-top: clamp(13px, 1.35vw, 19px);
	color: #4a4037;
	font-family: Georgia, "Times New Roman", serif;
	font-size: clamp(12px, 1vw, 15px);
	font-style: italic;
	line-height: 1.2;
	text-align: center;
}

@media (hover: hover) {
	.customer-feedback-card:hover {
		z-index: 4;
		box-shadow:
			0 28px 42px rgba(45, 25, 12, 0.34),
			0 8px 12px rgba(45, 25, 12, 0.18);
		transform: translateY(-10px) rotate(0deg) scale(1.045);
	}
}

@media (max-width: 1060px) {
	.customer-feedback-header {
		grid-template-columns: minmax(0, 1fr) minmax(260px, 0.7fr);
	}

	.customer-feedback-rail {
		overflow-x: auto;
		overflow-y: hidden;
		padding-bottom: 42px;
		scroll-padding-inline: 13px;
		scroll-snap-type: x mandatory;
		scrollbar-color: rgba(255, 224, 166, 0.7) rgba(61, 34, 17, 0.25);
		scrollbar-width: thin;
		overscroll-behavior-inline: contain;
		-webkit-overflow-scrolling: touch;
	}

	.customer-feedback-rail::-webkit-scrollbar {
		height: 5px;
	}

	.customer-feedback-rail::-webkit-scrollbar-track {
		background: rgba(61, 34, 17, 0.25);
		border-radius: 999px;
	}

	.customer-feedback-rail::-webkit-scrollbar-thumb {
		background: rgba(255, 224, 166, 0.7);
		border-radius: 999px;
	}

	.customer-feedback-card {
		flex: 0 0 clamp(220px, 27vw, 260px);
		scroll-snap-align: center;
	}
}

@media (max-width: 640px) {
	.customer-feedback {
		padding-block: 52px 42px;
	}

	.customer-feedback::after {
		outline-offset: -8px;
	}

	.customer-feedback-header {
		grid-template-columns: 1fr;
		gap: 10px;
		margin-bottom: 18px;
	}

	.customer-feedback-header .section-kicker {
		grid-column: auto;
		margin-bottom: 1px;
	}

	.customer-feedback-header h2 {
		font-size: clamp(34px, 10.5vw, 44px);
	}

	.customer-feedback-header #customer-feedback-title {
		text-wrap: balance;
		white-space: normal;
	}

	.customer-feedback-header > p:not(.section-kicker, .customer-feedback-swipe) {
		margin-top: 4px;
		font-size: 15px;
	}

	.customer-feedback-swipe {
		display: inline-flex;
		align-items: center;
		gap: 8px;
		width: max-content;
		margin: 7px 0 0;
		color: rgba(255, 239, 209, 0.86);
		font-size: 12px;
		font-weight: 760;
		letter-spacing: 0.06em;
		text-transform: uppercase;
	}

	.customer-feedback-swipe span {
		font-size: 18px;
		line-height: 1;
	}

	.customer-feedback-rail {
		width: calc(100% + (var(--page-pad) * 2));
		margin-inline: calc(var(--page-pad) * -1);
		padding: 25px var(--page-pad) 32px;
		scroll-padding-inline: var(--page-pad);
	}

	.customer-feedback-card {
		flex-basis: min(74vw, 270px);
		padding: 10px 10px 22px;
	}

	.customer-feedback-card figcaption {
		margin-top: 15px;
		font-size: 14px;
	}
}

/* Long-form content */

.seo-content.contacts,
.content-block.contacts {
	border-top: 1px solid var(--color-line);
}

.seo-content.contacts > p,
.seo-content.contacts > h3,
.content-block.contacts > p,
.content-block.contacts > h3 {
	max-width: 900px;
}

.seo-content.contacts > p,
.content-block.contacts > p {
	color: var(--color-ink-soft);
}

.seo-content.contacts h3,
.content-block.contacts h3 {
	margin-top: 38px;
}

.contacts address {
	font-style: normal;
}

.contacts address p {
	margin-bottom: 8px;
}

.privacy-policy {
	border-top: 1px solid var(--color-line);
}

.privacy-policy > header,
.privacy-policy > section {
	max-width: 900px;
}

.privacy-policy-header {
	margin-bottom: clamp(36px, 5vw, 60px);
}

.privacy-policy h1 {
	font-size: clamp(40px, 5vw, 68px);
}

.privacy-policy h2 {
	margin-top: clamp(34px, 4vw, 48px);
	font-size: clamp(23px, 2.4vw, 31px);
	letter-spacing: -0.025em;
}

.privacy-policy p,
.privacy-policy li {
	color: var(--color-ink-soft);
}

.privacy-policy ul,
.privacy-policy ol {
	max-width: 850px;
	margin-bottom: 24px;
	padding-left: 24px;
}

.privacy-policy li + li {
	margin-top: 8px;
}

/* FAQ */

.faq > h2 {
	margin-bottom: clamp(26px, 3vw, 38px);
	text-wrap: balance;
}

.faq details {
	max-width: 1080px;
	margin-bottom: 12px;
	background:
		linear-gradient(135deg, rgba(255, 255, 255, 0.88), transparent 58%),
		var(--color-surface);
	border: 1px solid rgba(122, 104, 72, 0.2);
	border-radius: 16px 5px 16px 5px;
	box-shadow: 0 8px 24px rgba(47, 49, 54, 0.045);
	overflow: hidden;
	transition: border-color 220ms ease, box-shadow 260ms ease, transform 260ms var(--ease-out);
}

.faq details:hover {
	border-color: rgba(217, 154, 30, 0.48);
	box-shadow: 0 14px 32px rgba(47, 49, 54, 0.08);
	transform: translateY(-2px);
}

.faq details[open] {
	border-color: var(--color-accent);
	box-shadow: 0 18px 42px rgba(47, 49, 54, 0.1);
}

.faq details[open] summary {
	border-bottom: 1px solid rgba(122, 104, 72, 0.13);
}

.faq summary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: clamp(16px, 2vw, 28px);
	min-height: 76px;
	padding: clamp(18px, 2vw, 23px) clamp(18px, 2.4vw, 27px);
	font-size: clamp(16px, 1.5vw, 19px);
	font-weight: 760;
	line-height: 1.35;
	cursor: pointer;
	list-style: none;
	transition: color 180ms ease, background-color 180ms ease;
}

.faq summary::-webkit-details-marker {
	display: none;
}

.faq summary:hover,
.faq summary:focus-visible {
	color: var(--color-accent-hover);
	background-color: rgba(217, 154, 30, 0.055);
}

.faq summary:focus-visible {
	outline: 3px solid rgba(217, 154, 30, 0.26);
	outline-offset: -3px;
}

.faq summary::after {
	display: block;
	flex: 0 0 auto;
	width: 36px;
	height: 36px;
	color: var(--color-accent-hover);
	background-color: var(--color-accent-soft);
	background-image:
		linear-gradient(currentColor, currentColor),
		linear-gradient(currentColor, currentColor);
	background-position: center;
	background-repeat: no-repeat;
	background-size: 14px 2px, 2px 14px;
	border: 1px solid rgba(217, 154, 30, 0.2);
	border-radius: 50%;
	box-shadow: 0 8px 18px rgba(217, 154, 30, 0.1);
	content: "";
	transition: color 200ms ease, background-color 200ms ease, border-color 200ms ease, transform 260ms var(--ease-spring);
}

.faq details[open] summary::after {
	color: var(--color-accent-ink);
	background-color: var(--color-accent);
	border-color: var(--color-accent);
	transform: rotate(45deg);
}

.faq details p {
	max-width: 930px;
	margin: 0;
	padding: 20px clamp(18px, 2.4vw, 27px) clamp(22px, 2.6vw, 30px);
	color: var(--color-ink-soft);
	font-size: 15px;
	line-height: 1.72;
}

/* CTA band */

.cta.contacts {
	position: relative;
	isolation: isolate;
	color: var(--color-accent-ink);
	background: var(--color-accent);
	overflow: hidden;
}

.cta.contacts::before {
	position: absolute;
	top: -200px;
	right: 4%;
	z-index: -1;
	width: 480px;
	height: 480px;
	background: var(--color-highlight);
	border-radius: 50%;
	content: "";
	opacity: 0.42;
}

.cta.contacts h2 {
	color: var(--color-accent-ink);
}

.cta.contacts > p {
	color: rgba(47, 49, 54, 0.78);
}

.cta > p:last-child a {
	display: inline-flex;
	align-items: center;
	min-height: 52px;
	padding: 13px 20px;
	color: var(--color-ink);
	background: #ffffff;
	border-radius: 8px;
	font-weight: 760;
	text-decoration: none;
	transition: color 200ms ease, background 200ms ease, transform 200ms ease;
}

.cta > p:last-child a:hover,
.cta > p:last-child a:focus-visible {
	color: #ffffff;
	background: var(--color-navy);
	transform: translateY(-3px);
}

.cta-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.cta-actions a:last-child {
	color: var(--color-accent-ink);
	background: transparent;
	border: 1px solid rgba(47, 49, 54, 0.48);
}

.cta-actions a:last-child:hover,
.cta-actions a:last-child:focus-visible {
	color: var(--color-navy);
	background: #ffffff;
	border-color: #ffffff;
}

.cta.contacts {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(280px, 340px);
	align-items: center;
	gap: clamp(42px, 7vw, 110px);
	min-height: 360px;
	padding-block: clamp(72px, 8vw, 112px);
	background:
		linear-gradient(105deg, rgba(11, 15, 19, 0.98) 0%, rgba(27, 29, 30, 0.98) 58%, rgba(77, 49, 18, 0.98) 100%);
	border-top: 1px solid rgba(255, 206, 51, 0.38);
	border-bottom: 1px solid rgba(255, 255, 255, 0.08);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.04),
		0 34px 90px rgba(26, 20, 12, 0.18);
}

.cta.contacts::before {
	top: 50%;
	right: auto;
	left: 54%;
	width: min(46vw, 680px);
	height: min(46vw, 680px);
	background: radial-gradient(circle, rgba(255, 179, 34, 0.2), rgba(255, 179, 34, 0.04) 42%, transparent 69%);
	opacity: 1;
	transform: translateY(-50%);
}

.cta.contacts::after {
	position: absolute;
	top: 50%;
	right: clamp(-170px, -8vw, -90px);
	z-index: -1;
	width: clamp(300px, 34vw, 520px);
	aspect-ratio: 1;
	border: 1px solid rgba(255, 206, 51, 0.16);
	border-radius: 50%;
	box-shadow:
		0 0 0 58px rgba(255, 206, 51, 0.035),
		0 0 0 116px rgba(255, 255, 255, 0.018);
	content: "";
	transform: translateY(-50%);
}

.cta.contacts h2 {
	position: relative;
	max-width: 820px;
	margin: 0;
	color: #ffffff;
	font-size: clamp(40px, 5.2vw, 70px);
	letter-spacing: -0.05em;
	line-height: 0.98;
	text-wrap: balance;
}

.cta.contacts h2::before {
	display: block;
	width: 64px;
	height: 4px;
	margin-bottom: 24px;
	background: linear-gradient(90deg, #ffb322, #ffce33);
	border-radius: 999px;
	box-shadow: 0 0 24px rgba(255, 179, 34, 0.38);
	content: "";
}

.cta.contacts > .cta-actions {
	position: relative;
	display: flex;
	align-items: stretch;
	flex-direction: column;
	width: 100%;
	max-width: 340px;
	margin: 0;
}

.cta.contacts .cta-actions a {
	justify-content: space-between;
	min-height: 62px;
	padding: 15px 19px;
	border-radius: 12px;
	font-size: 14px;
	box-shadow: none;
}

.cta.contacts .cta-actions a:first-child {
	color: #15191d;
	background: #ffb322;
	border: 1px solid #ffb322;
	box-shadow: 0 18px 42px rgba(255, 179, 34, 0.2);
}

.cta.contacts .cta-actions a:first-child::after {
	display: block;
	flex: 0 0 16px;
	width: 16px;
	height: 16px;
	background: currentColor;
	clip-path: polygon(0 43%, 60% 43%, 60% 12%, 100% 50%, 60% 88%, 60% 57%, 0 57%);
	content: "";
	transition: transform 200ms var(--ease-out);
}

.cta.contacts .cta-actions a:first-child:hover,
.cta.contacts .cta-actions a:first-child:focus-visible {
	color: #111418;
	background: #ffca55;
	border-color: #ffca55;
	box-shadow: 0 22px 52px rgba(255, 179, 34, 0.27);
	transform: translateY(-3px);
}

.cta.contacts .cta-actions a:first-child:hover::after,
.cta.contacts .cta-actions a:first-child:focus-visible::after {
	transform: translateX(5px);
}

.cta.contacts .cta-actions a:last-child {
	justify-content: center;
	min-height: 48px;
	color: rgba(255, 255, 255, 0.68);
	background: rgba(255, 255, 255, 0.035);
	border-color: rgba(255, 255, 255, 0.14);
	font-size: 12px;
}

.cta.contacts .cta-actions a:last-child:hover,
.cta.contacts .cta-actions a:last-child:focus-visible {
	color: #ffffff;
	background: rgba(255, 255, 255, 0.1);
	border-color: rgba(255, 255, 255, 0.32);
	transform: translateY(-2px);
}

@media (max-width: 820px) {
	.cta.contacts {
		grid-template-columns: 1fr;
		gap: 38px;
		min-height: 0;
	}

	.cta.contacts h2 {
		max-width: 720px;
	}

	.cta.contacts > .cta-actions {
		max-width: 420px;
	}
}

@media (max-width: 640px) {
	.cta.contacts {
		gap: 30px;
		padding-block: 58px;
	}

	.cta.contacts h2 {
		font-size: clamp(36px, 11vw, 48px);
		line-height: 1;
	}

	.cta.contacts h2::before {
		width: 52px;
		margin-bottom: 18px;
	}

	.cta.contacts .cta-actions a:first-child {
		min-height: 60px;
	}
}

/* Motion system — hidden only when JavaScript is active */

.has-reveal-motion .reveal-section {
	opacity: 0;
	filter: blur(5px);
	will-change: opacity, filter, transform;
	transition:
		opacity 760ms var(--ease-out),
		filter 760ms var(--ease-out),
		transform 940ms var(--ease-out);
}

.has-reveal-motion .reveal-from-left {
	transform: translate3d(-110px, 0, 0) rotateY(2deg);
}

.has-reveal-motion .reveal-from-right {
	transform: translate3d(110px, 0, 0) rotateY(-2deg);
}

.has-reveal-motion .reveal-fade {
	transform: translate3d(0, 52px, 0) scale(0.985);
}

.has-reveal-motion .reveal-section.is-visible {
	opacity: 1;
	filter: blur(0);
	transform: translate3d(0, 0, 0) rotateY(0) scale(1);
}

.has-reveal-motion .company-intro.reveal-section,
.has-reveal-motion .company-intro.reveal-section.is-visible {
	filter: none;
	transform: none;
	will-change: opacity;
	transition: opacity 760ms var(--ease-out);
}

.has-reveal-motion .reveal-item {
	opacity: 0;
	transform: translate3d(0, 34px, 0) scale(0.97);
	transition:
		opacity 580ms ease var(--reveal-delay, 0ms),
		transform 760ms var(--ease-out) var(--reveal-delay, 0ms),
		border-color 240ms ease,
		box-shadow 320ms ease,
		translate 320ms var(--ease-out);
}

.has-reveal-motion .reveal-section.is-visible .reveal-item {
	opacity: 1;
	transform: translate3d(0, 0, 0) scale(1);
}

.has-reveal-motion .request-journey .request-journey-steps::before {
	transform: scaleX(0);
	transition: transform 900ms var(--ease-out) 180ms;
}

.has-reveal-motion .request-journey.is-visible .request-journey-steps::before {
	transform: scaleX(1);
}

.has-reveal-motion .benefits.reveal-benefits,
.has-reveal-motion .benefits.reveal-benefits.is-visible {
	opacity: 1;
	filter: none;
	transform: none;
	transition: none;
}

.has-reveal-motion .benefits.reveal-benefits > h2 {
	opacity: 0;
	transform: translate3d(0, 34px, 0) scale(0.96);
	transition: opacity 680ms ease, transform 820ms var(--ease-out);
}

.has-reveal-motion .benefits.reveal-benefits.is-visible > h2 {
	opacity: 1;
	transform: translate3d(0, 0, 0) scale(1);
}

.has-reveal-motion .benefits.reveal-benefits li.reveal-item {
	filter: blur(3px);
	transform: translate3d(-130px, 0, 0);
	transition:
		opacity 620ms ease var(--reveal-delay, 0ms),
		filter 620ms ease var(--reveal-delay, 0ms),
		transform 820ms var(--ease-out) var(--reveal-delay, 0ms),
		border-color 220ms ease,
		background 220ms ease,
		box-shadow 280ms ease,
		translate 280ms var(--ease-out);
}

.has-reveal-motion .benefits.reveal-benefits.is-visible li.reveal-item {
	filter: blur(0);
	transform: translate3d(0, 0, 0);
}

.has-reveal-motion .hero h1,
.has-reveal-motion .hero > h1 + p,
.has-reveal-motion .hero > p:last-child {
	opacity: 0;
	animation: hero-enter 900ms var(--ease-out) forwards;
}

.has-reveal-motion .hero-premium > .hero-kicker,
.has-reveal-motion .hero-premium > .hero-actions,
.has-reveal-motion .hero-premium > .hero-trust {
	opacity: 0;
	animation: hero-enter 900ms var(--ease-out) forwards;
}

.has-reveal-motion .hero-premium > .hero-kicker {
	animation-delay: 40ms;
}

.has-reveal-motion .hero > h1 + p {
	animation-delay: 120ms;
}

.has-reveal-motion .hero > p:last-child {
	animation-delay: 240ms;
}

.has-reveal-motion .hero-premium > .hero-actions {
	animation-delay: 240ms;
}

.has-reveal-motion .hero-premium > .hero-trust {
	animation-delay: 340ms;
}

.has-reveal-motion .hero.hero-visual .hero-media {
	animation: hero-background 1800ms var(--ease-out) both;
}

.has-reveal-motion .site-header {
	animation: header-enter 700ms var(--ease-out) both;
}

.site-drawer.is-open .catalog-section {
	animation: drawer-section-enter 520ms var(--ease-out) both;
}

.site-drawer.is-open .catalog-section:nth-child(2) {
	animation-delay: 70ms;
}

.site-drawer.is-open .catalog-section:nth-child(3) {
	animation-delay: 140ms;
}

@keyframes hero-enter {
	from {
		opacity: 0;
		transform: translate3d(0, 38px, 0);
	}
	to {
		opacity: 1;
		transform: translate3d(0, 0, 0);
	}
}

@keyframes hero-background {
	from {
		opacity: 0;
		transform: translate3d(0, var(--hero-shift, 0), 0) scale(1.11);
	}
	to {
		opacity: 1;
		transform: translate3d(0, var(--hero-shift, 0), 0) scale(1.035);
	}
}

@keyframes header-enter {
	from {
		opacity: 0;
		transform: translate3d(0, -24px, 0);
	}
	to {
		opacity: 1;
		transform: translate3d(0, 0, 0);
	}
}

@keyframes drawer-section-enter {
	from {
		opacity: 0;
		transform: translate3d(38px, 0, 0);
	}
	to {
		opacity: 1;
		transform: translate3d(0, 0, 0);
	}
}

/* Responsive */

@media (max-width: 1060px) {
	.quick-order.contacts {
		grid-template-columns: 1fr;
	}

	.hero-premium {
		--hero-content-width: min(52%, 590px);
	}

	.hero-premium .hero-media {
		inset-inline-start: 45%;
	}

	.related-links-orbit.additional-services {
		grid-template-columns: 1fr;
		gap: 30px;
	}

	.related-links-intro {
		max-width: 680px;
		text-align: center;
		justify-self: center;
	}

	.related-links-intro > p:last-child {
		margin-inline: auto;
	}

	.related-links.additional-services ul {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.site-header-link:first-of-type {
		display: none;
	}

	.site-footer-main {
		grid-template-columns: 1.2fr 0.8fr 1fr;
	}

	.site-footer-action {
		grid-column: 1 / -1;
		padding-top: 30px;
		border-top: 1px solid rgba(255, 255, 255, 0.12);
	}
}

@media (max-width: 900px) {
	.contact-hub {
		grid-template-columns: 1fr;
	}

	.contact-hub-copy {
		max-width: 680px;
	}

	.hero-premium {
		--hero-content-width: 100%;
		min-height: 720px;
		padding-top: clamp(88px, 13vw, 118px);
		padding-bottom: 112px;
		background:
			radial-gradient(circle at 75% 30%, rgba(182, 99, 24, 0.24), transparent 38%),
			linear-gradient(155deg, #090d11 0%, #10151a 66%, #1d1714 100%);
	}

	.hero-premium.hero-visual::before {
		background:
			linear-gradient(180deg, rgba(8, 12, 16, 0.62) 0%, rgba(8, 12, 16, 0.76) 54%, rgba(8, 12, 16, 0.96) 100%),
			linear-gradient(90deg, rgba(8, 12, 16, 0.7), rgba(8, 12, 16, 0.28));
	}

	.hero-premium h1,
	.hero-premium > h1 + p,
	.hero-premium > .hero-trust {
		max-width: 700px;
	}

	.hero-premium .hero-media {
		inset: 0;
		height: auto;
	}

	.hero-premium .hero-media img {
		object-position: center;
		transform: scale(1.2);
		transform-origin: center;
	}

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

	.quick-order-form button {
		grid-column: 1 / -1;
	}

	.request-journey-steps {
		grid-template-columns: 1fr;
		gap: 20px;
		max-width: 720px;
		margin: 42px auto 0;
	}

	.request-journey-steps::before {
		top: 42px;
		right: auto;
		bottom: 42px;
		left: 84px;
		width: 1px;
		height: auto;
		background: repeating-linear-gradient(180deg, rgba(217, 154, 30, 0.46) 0 4px, transparent 4px 8px);
		mask-image: linear-gradient(180deg, transparent, #000 8%, #000 92%, transparent);
		transform-origin: center top;
	}

	.request-journey-step:not(:last-child)::after {
		top: calc(100% + 7px);
		right: auto;
		left: 84px;
		width: 6px;
		height: 6px;
		background: var(--color-accent);
		border: 0;
		border-radius: 50%;
		box-shadow: 0 0 0 5px #faf5ec;
		transform: translateX(-50%);
	}

	.has-reveal-motion .request-journey .request-journey-steps::before {
		transform: scaleY(0);
	}

	.has-reveal-motion .request-journey.is-visible .request-journey-steps::before {
		transform: scaleY(1);
	}

	.request-journey-step {
		display: grid;
		grid-template-columns: 136px minmax(0, 1fr);
		grid-template-rows: auto auto;
		align-items: start;
		column-gap: 22px;
		min-height: 102px;
		text-align: left;
	}

	.request-step-visual {
		grid-column: 1;
		grid-row: 1 / 3;
		width: 128px;
		height: 82px;
		margin: 0;
	}

	.request-step-number {
		font-size: 56px;
	}

	.request-step-icon {
		width: 60px;
		height: 60px;
	}

	.request-step-icon svg {
		width: 27px;
		height: 27px;
	}

	.request-journey-step h3 {
		grid-column: 2;
		max-width: none;
		margin: 3px 0 8px;
	}

	.request-journey-step > p {
		grid-column: 2;
		max-width: 490px;
		margin: 0;
	}

	.proof-collage {
		padding: 5px;
	}

	.proof-collage-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		grid-template-rows: 220px auto 300px 210px 230px;
		height: auto;
	}

	.proof-collage-frame-a {
		grid-column: 1;
		grid-row: 1;
	}

	.proof-collage-frame-b {
		grid-column: 2;
		grid-row: 1;
	}

	.proof-collage-frame-c {
		grid-column: 1 / -1;
		grid-row: 3;
	}

	.proof-collage-frame-d {
		grid-column: 1;
		grid-row: 4;
	}

	.proof-collage-frame-e {
		grid-column: 2;
		grid-row: 4;
	}

	.proof-collage-frame-f {
		grid-column: 1 / -1;
		grid-row: 5;
	}

	.proof-collage-card {
		grid-column: 1 / -1;
		grid-row: 2;
		width: min(100%, 560px);
	}

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

	.feature-panel-head,
	.company-intro-content {
		grid-template-columns: 1fr;
	}

	.feature-panel-head {
		gap: 34px;
	}

	.program-badge {
		width: min(100%, 580px);
	}

	.feature-card-grid {
		grid-template-columns: 1fr;
		gap: 14px;
		max-width: 760px;
		margin-top: 42px;
	}

	.feature-card-grid::before {
		top: 38px;
		right: auto;
		bottom: 38px;
		left: 50px;
		width: 1px;
		height: auto;
		background: linear-gradient(180deg, rgba(217, 154, 30, 0.22), var(--color-accent), rgba(217, 154, 30, 0.22));
	}

	.feature-card {
		min-height: 168px;
		padding: 30px 28px 28px 104px;
		border-radius: 22px 62px 22px 22px;
	}

	.feature-card::before {
		top: 50%;
		left: 24px;
		transform: translateY(-50%);
	}

	.company-intro-content {
		gap: 42px;
	}

	.company-intro-copy {
		max-width: 780px;
	}

	.warehouse-panel {
		width: min(100%, 720px);
	}

	.site-header-link {
		display: none;
	}
}

@media (max-width: 820px) {
	.site-header-actions .site-header-phone {
		display: none;
	}
}

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

	.admin-bar .site-header.is-scrolled {
		top: 54px;
	}

	.admin-bar .site-drawer {
		top: 46px;
		height: calc(100dvh - 46px);
	}

	.site-footer-main {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.site-footer-brand,
	.site-footer-action {
		grid-column: 1 / -1;
	}
}

@media (max-width: 640px) {
	:root {
		--section-y: 44px;
	}

	.lead-modal {
		width: calc(100% - 20px);
		max-height: calc(100dvh - 20px);
	}

	.lead-modal-panel {
		max-height: calc(100dvh - 20px);
		padding: 28px 18px 22px;
		border-radius: 18px;
	}

	.lead-modal-panel::before {
		right: 18px;
		left: 18px;
	}

	.lead-modal-close {
		top: 12px;
		right: 12px;
		width: 40px;
		height: 40px;
	}

	.lead-modal-mark {
		width: 46px;
		height: 46px;
		margin-bottom: 18px;
	}

	.lead-modal-mark svg {
		width: 23px;
		height: 23px;
	}

	.lead-modal-copy {
		padding-right: 34px;
	}

	.lead-modal-copy h2 {
		margin-bottom: 12px;
		font-size: clamp(29px, 9vw, 38px);
		line-height: 1;
	}

	.lead-modal-copy > p:last-child {
		font-size: 14px;
		line-height: 1.55;
	}

	.lead-modal-form {
		grid-template-columns: 1fr;
		margin-top: 20px;
	}

	.lead-modal-form > button {
		grid-column: auto;
	}

	.lead-modal-note {
		align-items: flex-start;
		flex-direction: column;
		gap: 10px;
	}

	.lead-modal-note > span {
		white-space: normal;
	}

	html {
		scroll-padding-top: calc(80px + env(safe-area-inset-top));
	}

	body {
		padding-top: calc(72px + env(safe-area-inset-top));
	}

	h1 {
		font-size: clamp(42px, 13vw, 62px);
	}

	h2 {
		font-size: clamp(32px, 10vw, 44px);
	}

	.contact-hub {
		gap: 26px;
		padding: 28px 20px;
		border-radius: 16px;
	}

	.contact-hub-channels {
		grid-template-columns: 1fr;
	}

	.contact-hub-socials {
		grid-column: auto;
	}

	.quick-order.contacts {
		margin-top: 22px;
		margin-bottom: 0;
		padding: 32px 18px;
		gap: 24px;
	}

	.quick-order.contacts::after {
		left: 8px;
	}

	.quick-order h2 {
		max-width: 360px;
		font-size: clamp(32px, 10vw, 42px);
	}

	.quick-order-form {
		grid-template-columns: 1fr;
		padding: 11px;
		border-radius: 15px;
	}

	.quick-order-form button {
		grid-column: auto;
		width: 100%;
	}

	.request-journey {
		margin-block: 0;
		padding: 46px 0 70px;
	}

	.request-journey-mark {
		margin-bottom: 13px;
	}

	.request-journey-header h2 {
		margin-bottom: 14px;
		font-size: clamp(34px, 10vw, 42px);
	}

	.request-journey-header > p {
		font-size: 15px;
		line-height: 1.6;
	}

	.request-journey-steps {
		gap: 16px;
		margin-top: 34px;
	}

	.request-journey-steps::before {
		top: 38px;
		bottom: 38px;
		left: 68px;
	}

	.request-journey-step:not(:last-child)::after {
		top: calc(100% + 5px);
		left: 68px;
		width: 5px;
		height: 5px;
	}

	.request-journey-step {
		grid-template-columns: 96px minmax(0, 1fr);
		column-gap: 12px;
		min-height: 102px;
	}

	.request-step-visual {
		width: 92px;
		height: 76px;
	}

	.request-step-number {
		margin-right: -6px;
		padding-inline: 3px;
		font-size: 43px;
	}

	.request-step-icon {
		width: 52px;
		height: 52px;
	}

	.request-step-icon svg {
		width: 24px;
		height: 24px;
	}

	.request-journey-step h3 {
		margin-top: 2px;
		margin-bottom: 6px;
		font-size: 19px;
	}

	.request-journey-step > p {
		font-size: 13px;
		line-height: 1.55;
	}

	.request-journey-waves {
		height: 48px;
	}

	.proof-collage {
		margin-block: 32px;
		padding: 4px;
	}

	.proof-collage-grid {
		grid-template-rows: 160px auto 220px 160px 180px;
		gap: 4px;
	}

	.proof-collage-frame {
		border-radius: 3px;
	}

	.proof-collage-card {
		width: 100%;
		padding: 28px 20px;
		border-radius: 16px;
	}

	.proof-collage-card::before {
		left: 20px;
	}

	.proof-collage-card h2 {
		margin-bottom: 22px;
		font-size: clamp(32px, 10vw, 42px);
	}

	.proof-collage-card ul {
		grid-template-columns: 1fr;
		gap: 11px;
		font-size: 14px;
	}

	.feature-panel {
		padding-block: 58px;
	}

	.feature-panel-copy > h2 {
		margin-bottom: 18px;
		font-size: clamp(36px, 11vw, 46px);
	}

	.feature-panel-lead {
		font-size: 15px;
		line-height: 1.58;
	}

	.program-badge {
		min-height: 190px;
		padding: 28px 20px 23px;
		border-radius: 22px 7px 22px 7px;
	}

	.program-badge img {
		width: min(100%, 290px);
		margin-bottom: 14px;
	}

	.feature-card-grid {
		margin-top: 32px;
	}

	.feature-card-grid::before {
		left: 39px;
	}

	.feature-card {
		min-height: 0;
		padding: 26px 20px 26px 82px;
		border-radius: 18px 48px 18px 18px;
	}

	.feature-card::before {
		left: 16px;
		width: 46px;
		height: 46px;
		border-width: 7px;
	}

	.feature-card h3 {
		margin-bottom: 10px;
		font-size: 20px;
	}

	.feature-card p {
		font-size: 13px;
		line-height: 1.58;
	}

	.cta-actions,
	.cta-actions a {
		width: 100%;
	}

	.cta-actions a {
		justify-content: center;
	}

	.related-links.additional-services ul {
		grid-template-columns: 1fr;
		margin-top: 28px;
	}

	.related-links.additional-services li,
	.related-links.additional-services li a {
		min-height: 120px;
	}

	.related-links-orbit.additional-services {
		display: block;
		min-height: 0;
	}

	.related-links-orbit .related-links-intro {
		margin-bottom: 32px;
	}

	.related-links-orbit.additional-services ul {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 10px;
		height: auto;
		margin: 0;
	}

	.related-links-orbit.additional-services ul::before {
		display: none;
	}

	.related-links-orbit.additional-services li,
	.related-links-orbit.additional-services li:nth-child(n) {
		position: relative;
		top: auto;
		left: auto;
		width: auto;
		min-height: 0;
		translate: 0 0;
	}

	.related-links-orbit.additional-services li:hover,
	.related-links-orbit.additional-services li:focus-within {
		translate: 0 -3px;
		scale: 1.01;
	}

	.related-links-orbit.additional-services li a {
		min-height: 58px;
	}

	.site-header {
		min-height: calc(72px + env(safe-area-inset-top));
		padding-top: env(safe-area-inset-top);
		padding-right: max(18px, env(safe-area-inset-right));
		padding-left: max(18px, env(safe-area-inset-left));
	}

	.site-header.is-scrolled {
		right: max(8px, env(safe-area-inset-right));
		left: max(8px, env(safe-area-inset-left));
		min-height: calc(64px + env(safe-area-inset-top));
		padding-right: max(12px, env(safe-area-inset-right));
		padding-left: max(12px, env(safe-area-inset-left));
		border-radius: 16px;
	}

	.site-brand img {
		height: 36px;
	}

	.site-header.is-scrolled .site-brand img {
		height: 32px;
	}

	.site-header .site-brand span {
		display: inline;
		font-size: 17px;
		letter-spacing: 0.035em;
	}

	.site-header-contact {
		display: none;
	}

	.site-header-actions {
		gap: 10px;
	}

	.menu-toggle {
		min-height: 42px;
		padding: 8px 14px 8px 16px;
		font-size: 14px;
	}

	.site-drawer-header {
		position: relative;
		display: block;
		padding: 23px 20px 20px;
	}

	.site-drawer-header > div:first-child {
		padding-right: 58px;
	}

	.site-drawer-header .menu-close {
		position: absolute;
		top: 23px;
		right: 20px;
	}

	.catalog-section {
		padding: 24px 20px;
	}

	.site-drawer-language {
		padding: 14px 20px;
	}

	.site-drawer-footer {
		padding: 20px;
	}

	.site-drawer-footer::before {
		right: 20px;
		left: 20px;
	}

	.drawer-phone-list {
		grid-template-columns: 1fr;
	}

	.contact-socials {
		align-items: flex-start;
		flex-direction: column;
		gap: 11px;
	}

	.hero {
		min-height: 570px;
		padding-block: 88px;
	}

	.hero-premium {
		min-height: 690px;
		padding-top: 84px;
		padding-bottom: 104px;
	}

	.breadcrumbs {
		top: 12px;
		left: max(14px, env(safe-area-inset-left));
		max-width: calc(100% - max(28px, env(safe-area-inset-left) + env(safe-area-inset-right)));
		padding: 8px 11px;
		gap: 7px;
		font-size: 11px;
	}

	.breadcrumbs [aria-current="page"] {
		max-width: 46vw;
	}

	.hero::after {
		display: none;
	}

	.hero.hero-visual::before {
		background: linear-gradient(180deg, rgba(47, 49, 54, 0.84) 0%, rgba(55, 65, 81, 0.64) 100%);
	}

	.hero-premium.hero-visual::before {
		background:
			linear-gradient(180deg, rgba(8, 12, 16, 0.56) 0%, rgba(8, 12, 16, 0.68) 58%, rgba(8, 12, 16, 0.9) 100%),
			linear-gradient(90deg, rgba(8, 12, 16, 0.62), rgba(8, 12, 16, 0.24));
	}

	.hero-premium .hero-media {
		inset: 0;
		height: auto;
	}

	.hero-media img {
		object-position: 64% center;
	}

	.hero-premium .hero-media img {
		object-position: 58% center;
		transform: scale(1.34);
	}

	.hero-premium h1 {
		margin-bottom: 18px;
		font-size: clamp(42px, 12vw, 62px);
	}

	.hero-premium > h1 + p {
		margin-bottom: 22px;
		font-size: 16px;
		line-height: 1.6;
	}

	.hero-premium > .hero-kicker {
		margin-bottom: 16px;
		font-size: 9px;
	}

	.hero-premium > .hero-actions {
		margin-bottom: 24px;
	}

	.hero-premium > .hero-trust {
		gap: 10px;
		padding-top: 13px;
	}

	.hero-premium > .hero-trust > span {
		padding-right: 8px;
	}

	.hero-premium > .hero-trust > span + span {
		padding-left: 8px;
	}

	.hero-premium > .hero-trust strong {
		font-size: 9px;
	}

	.hero-premium .hero-ticker {
		height: 48px;
	}

	.company-intro.additional-services {
		min-height: 520px;
		margin-block: 36px;
		padding-block: 90px;
	}

	.company-intro-warehouses.additional-services {
		min-height: 0;
		margin-block: 0;
		padding-block: 64px;
	}

	.company-intro-media img {
		object-position: 62% center;
	}

	.company-intro-copy > h2 {
		margin-bottom: 20px;
		font-size: clamp(37px, 11.5vw, 48px);
	}

	.company-intro-copy > p:not(.section-kicker, .company-intro-actions) {
		font-size: 15px;
		line-height: 1.58;
	}

	.delivery-options {
		margin-top: 22px;
	}

	.delivery-options article {
		padding: 14px 14px 14px 40px;
	}

	.delivery-options article::before {
		left: 16px;
	}

	.company-intro-actions,
	.company-intro-actions a {
		width: 100%;
	}

	.company-intro-actions a {
		min-height: 48px;
	}

	.warehouse-panel {
		padding: 24px 18px;
		border-radius: 22px 7px 22px 7px;
	}

	.delivery-rates-heading {
		margin-bottom: 14px;
	}

	.delivery-rates-scroll {
		max-height: 344px;
		overscroll-behavior-y: auto;
	}

	.delivery-rates-table {
		font-size: 10px;
	}

	.delivery-rates-table th,
	.delivery-rates-table td {
		padding: 12px 6px;
	}

	.delivery-rates-table thead th {
		font-size: 8px;
		letter-spacing: 0.06em;
	}

	.delivery-rates-table thead th:first-child {
		width: 37%;
	}

	.delivery-rates-table thead th:nth-child(2) {
		width: 35%;
	}

	.delivery-rates-table thead th:last-child {
		width: 28%;
	}

	.delivery-status {
		font-size: 9px;
	}

	.delivery-status-mark {
		width: 18px;
		height: 18px;
		margin-right: 4px;
		font-size: 11px;
	}

	.warehouse-panel .warehouse-map-grid {
		grid-template-columns: 1fr;
		grid-template-rows: none;
		gap: 11px;
	}

	.warehouse-map-card,
	.warehouse-map-card-odesa {
		grid-row: auto;
		min-height: 190px;
	}

	.warehouse-map-card-odesa {
		min-height: 220px;
	}

	.warehouse-map-card > div {
		max-width: 170px;
	}

	.warehouse-map-card-odesa > div {
		max-width: 120px;
	}

	.warehouse-note {
		font-size: 11px;
	}

	.benefits > h2 {
		margin-bottom: 38px;
	}

	.benefits li {
		min-height: 0;
		padding: 26px 56px 26px 24px;
	}

	.benefits li::before {
		top: 24px;
		right: 22px;
	}

	.has-reveal-motion .benefits.reveal-benefits li.reveal-item {
		transform: translate3d(-46px, 0, 0);
	}

	.products,
	.calculator form,
	.benefits ul,
	.order-process ol,
	.additional-services ul {
		grid-template-columns: 1fr;
	}

	.products,
	.regions,
	.calculator,
	.benefits,
	.order-process,
	.additional-services,
	.faq,
	.contacts {
		padding-block: 44px;
	}

	.section-visual {
		aspect-ratio: 16 / 9;
	}

	.site-footer-main {
		grid-template-columns: 1fr;
		gap: 34px;
	}

	.site-footer-brand,
	.site-footer-action {
		grid-column: auto;
	}

	.site-footer-action {
		padding-top: 32px;
	}

	.site-footer-bottom {
		align-items: flex-start;
		flex-direction: column;
		justify-content: center;
		padding-block: 22px;
	}

	.has-reveal-motion .reveal-from-left {
		transform: translate3d(-46px, 0, 0);
	}

	.has-reveal-motion .reveal-from-right {
		transform: translate3d(46px, 0, 0);
	}
}

@media (max-width: 420px) {
	.catalog-links,
	.catalog-list {
		grid-template-columns: 1fr;
	}

	.contact-messengers {
		grid-template-columns: 1fr;
	}

	.drawer-service-links {
		align-items: flex-start;
		flex-direction: column;
	}
}

/* Category and regional product page templates */

.regional-product-catalog,
.category-product-catalog {
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 250px), 1fr));
	gap: 20px;
}

:is(.regional-product-catalog, .category-product-catalog) > .section-kicker {
	grid-column: 1 / -1;
	order: 0;
	margin: 0 0 -8px;
}

:is(.regional-product-catalog, .category-product-catalog) > h2 {
	order: 1;
}

:is(.regional-product-catalog, .category-product-catalog) > article {
	order: 2;
}

.product-pair-catalog {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.fuel-product-catalog--briquettes {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

:is(.fuel-product-catalog--pellets, .fuel-product-catalog--coal) {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

:is(.regional-product-catalog, .category-product-catalog) .product-detail-list {
	display: grid;
	gap: 7px;
	margin: 4px 0 22px;
	padding: 0;
	color: var(--color-ink-soft);
	font-size: 12px;
	line-height: 1.45;
	list-style: none;
}

:is(.regional-product-catalog, .category-product-catalog) .product-detail-list li {
	position: relative;
	padding-left: 15px;
}

:is(.regional-product-catalog, .category-product-catalog) .product-detail-list li::before {
	position: absolute;
	top: 0.58em;
	left: 0;
	width: 6px;
	height: 6px;
	background: var(--color-accent);
	border-radius: 50%;
	content: "";
}

.category-product-catalog .product-region-card > p {
	font-size: 14px;
	line-height: 1.58;
}

.category-product-catalog .product-card-action {
	margin-top: auto;
}

.firewood-product-catalog {
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 14px;
}

.firewood-product-catalog .firewood-offer-card {
	min-width: 0;
	padding: 16px;
	border-radius: 20px 7px 20px 7px;
}

.firewood-offer-card .card-media {
	margin: -16px -16px 14px;
	aspect-ratio: 4 / 3;
	background: #e8deca;
	border-radius: 19px 6px 0 0;
}

.firewood-offer-card .card-media img {
	object-fit: contain;
	transform: scale(0.95);
	transform-origin: center;
}

.products .firewood-offer-card:hover .card-media img {
	transform: scale(0.98);
}

.firewood-stock {
	position: absolute;
	top: 10px;
	left: 10px;
	z-index: 2;
	display: inline-flex;
	align-items: center;
	gap: 6px;
	min-height: 25px;
	padding: 6px 9px;
	color: #ffffff;
	background: rgba(18, 44, 33, 0.82);
	border: 1px solid rgba(255, 255, 255, 0.3);
	border-radius: 10px 4px 10px 4px;
	box-shadow: 0 8px 20px rgba(8, 18, 13, 0.2);
	font-size: 8px;
	font-style: normal;
	font-weight: 850;
	letter-spacing: 0.08em;
	line-height: 1;
	text-transform: uppercase;
	backdrop-filter: blur(9px);
}

.firewood-stock i {
	flex: 0 0 auto;
	width: 6px;
	height: 6px;
	background: #6fd09a;
	border-radius: 50%;
	box-shadow: 0 0 0 3px rgba(111, 208, 154, 0.16);
}

.firewood-stock.is-unavailable {
	color: rgba(255, 255, 255, 0.78);
	background: rgba(53, 55, 58, 0.82);
}

.firewood-stock.is-unavailable i {
	background: #aeb1b0;
	box-shadow: 0 0 0 3px rgba(174, 177, 176, 0.14);
}

.products .firewood-offer-card h3 {
	min-height: 2.12em;
	margin-bottom: 7px;
	font-size: clamp(21px, 1.7vw, 27px);
	line-height: 1.06;
}

.products .firewood-offer-card .firewood-formats {
	position: absolute;
	bottom: 9px;
	left: 50%;
	z-index: 2;
	width: max-content;
	max-width: calc(100% - 18px);
	margin: 0;
	padding: 7px 11px;
	color: #172018;
	background: #ffc02f;
	border: 1px solid rgba(255, 255, 255, 0.56);
	border-radius: 9px 3px 9px 3px;
	box-shadow: 0 9px 24px rgba(67, 42, 4, 0.28);
	font-size: 8.5px;
	font-weight: 850;
	letter-spacing: 0.025em;
	line-height: 1;
	text-transform: uppercase;
	transform: translateX(-50%);
	white-space: nowrap;
}

.firewood-formats i {
	margin-inline: 3px;
	color: rgba(23, 32, 24, 0.48);
	font-style: normal;
}

.products .firewood-offer-card .firewood-card-summary {
	min-height: 42px;
	margin: 0 0 12px;
	font-size: 12px;
	line-height: 1.42;
}

.firewood-start-price {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	align-items: baseline;
	column-gap: 7px;
	margin: auto 0 12px;
	padding: 13px 14px;
	color: #ffffff;
	background:
		radial-gradient(circle at 100% 0, rgba(255, 179, 34, 0.2), transparent 55%),
		linear-gradient(145deg, #15241e, #243b32);
	border: 1px solid rgba(217, 154, 30, 0.46);
	border-radius: 14px 5px 14px 5px;
	box-shadow: 0 13px 26px rgba(20, 37, 30, 0.16);
}

.firewood-start-price > span {
	color: rgba(255, 255, 255, 0.62);
	font-size: 9px;
	font-weight: 850;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

.firewood-start-price > strong {
	color: #ffc052;
	font-size: clamp(26px, 2.15vw, 32px);
	font-weight: 850;
	letter-spacing: -0.045em;
	line-height: 1;
	white-space: nowrap;
}

.firewood-start-price > small {
	grid-column: 1 / -1;
	margin-top: 6px;
	color: rgba(255, 255, 255, 0.68);
	font-size: 9px;
	font-weight: 680;
	letter-spacing: 0.04em;
	line-height: 1.2;
	text-transform: uppercase;
}

.products .firewood-offer-card .product-card-action {
	gap: 10px;
	width: 100%;
	min-height: 44px;
	margin-top: 0;
	color: #111820;
	background: linear-gradient(135deg, #ffc13d, #f3a20d);
	border-color: #f3a20d;
	border-radius: 10px;
	font-size: 12px;
	font-weight: 850;
	letter-spacing: 0.02em;
	box-shadow:
		0 14px 28px rgba(217, 154, 30, 0.25),
		inset 0 1px 0 rgba(255, 255, 255, 0.46);
}

.products .firewood-offer-card .product-card-action > span {
	margin-left: auto;
	font-size: 20px;
	font-weight: 500;
	line-height: 1;
	transition: transform 180ms var(--ease-out);
}

.products .firewood-offer-card .product-card-action:hover,
.products .firewood-offer-card .product-card-action:focus-visible {
	color: #111820;
	background: linear-gradient(135deg, #ffd05e, #ffb322);
	border-color: #ffb322;
	box-shadow:
		0 18px 34px rgba(217, 154, 30, 0.34),
		inset 0 1px 0 rgba(255, 255, 255, 0.58);
	transform: translateY(-3px);
}

.products .firewood-offer-card .product-card-action:hover > span,
.products .firewood-offer-card .product-card-action:focus-visible > span {
	transform: translateX(4px);
}

.category-region-hub .company-intro-content {
	grid-template-columns: minmax(0, 0.78fr) minmax(440px, 0.92fr);
	gap: clamp(42px, 6vw, 90px);
}

.category-region-hub .warehouse-panel {
	padding: clamp(22px, 2.6vw, 34px);
}

.category-region-hub .warehouse-map-card {
	color: #ffffff;
	text-decoration: none;
}

.category-region-hub .warehouse-map-card > div,
.category-region-hub .warehouse-map-card-odesa > div {
	max-width: 190px;
}

.category-region-hub .warehouse-map-card small,
.category-region-hub .warehouse-map-card em {
	font-style: normal;
}

.category-region-hub .warehouse-map-card small {
	display: block;
}

.category-region-hub .warehouse-map-card small {
	margin-bottom: 5px;
	color: var(--color-highlight);
	font-size: 9px;
	font-weight: 850;
	letter-spacing: 0.11em;
	line-height: 1.1;
	text-transform: uppercase;
}

.category-region-hub .warehouse-map-card em {
	display: flex;
	align-items: center;
	gap: 6px;
	margin-top: 8px;
	color: rgba(255, 255, 255, 0.8);
	font-size: 10px;
	font-weight: 720;
	line-height: 1.2;
}

.category-region-hub .warehouse-map-card em::after {
	flex: 0 0 12px;
	width: 12px;
	height: 12px;
	background: currentColor;
	clip-path: polygon(0 43%, 60% 43%, 60% 12%, 100% 50%, 60% 88%, 60% 57%, 0 57%);
	content: "";
	transition: transform 180ms var(--ease-out);
}

.category-region-hub .warehouse-map-card:hover em::after,
.category-region-hub .warehouse-map-card:focus-visible em::after {
	transform: translateX(3px);
}

.category-region-hub .warehouse-map-card:focus-visible {
	background:
		radial-gradient(circle at 50% 46%, rgba(29, 134, 214, 0.2), transparent 68%),
		rgba(255, 255, 255, 0.06);
	border-color: rgba(255, 217, 56, 0.72);
	outline: 3px solid rgba(255, 217, 56, 0.18);
	outline-offset: 2px;
	transform: translateY(-3px);
}

.category-region-hub .warehouse-note {
	max-width: 430px;
	margin-inline: auto;
}

.category-quick-order {
	margin-top: 0;
}

.proof-collage-regional {
	margin-block: 0;
	padding:
		clamp(42px, 3.8vw, 66px)
		max(var(--page-pad), calc((100vw - 1660px) / 2))
		clamp(46px, 4.2vw, 72px);
	background: transparent;
}

.proof-collage-regional::before {
	inset: clamp(8px, 0.7vw, 13px) -6%;
	background:
		radial-gradient(circle at 13% 24%, rgba(217, 154, 30, 0.2), transparent 29rem),
		radial-gradient(circle at 88% 76%, rgba(151, 79, 16, 0.2), transparent 31rem),
		linear-gradient(122deg, #25241f 0%, #151a19 47%, #241d16 100%);
	background-size: auto;
	border: 1px solid rgba(217, 154, 30, 0.16);
	border-radius: 50% / clamp(25px, 2.1vw, 40px);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.07),
		inset 0 -22px 55px rgba(0, 0, 0, 0.18);
	mask-image: none;
}

.proof-collage-regional .proof-collage-grid {
	grid-template-rows: repeat(8, minmax(0, 1fr));
	gap: clamp(5px, 0.45vw, 8px);
	max-width: 1640px;
	height: clamp(480px, 39vw, 620px);
	padding: clamp(6px, 0.55vw, 10px);
	background: rgba(255, 255, 255, 0.045);
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: clamp(10px, 0.9vw, 15px);
	box-shadow:
		0 28px 70px rgba(0, 0, 0, 0.24),
		inset 0 1px 0 rgba(255, 255, 255, 0.05);
}

.proof-collage-regional .proof-collage-frame {
	border-color: rgba(255, 255, 255, 0.12);
	box-shadow: none;
}

.proof-collage-regional .proof-collage-frame-a {
	grid-column: 1 / 5;
	grid-row: 1 / 9;
}

.proof-collage-regional .proof-collage-frame-b {
	grid-column: 5 / 9;
	grid-row: 1 / 5;
}

.proof-collage-regional .proof-collage-frame-c {
	grid-column: 9 / 13;
	grid-row: 1 / 9;
}

.proof-collage-regional .proof-collage-frame-d {
	grid-column: 5 / 9;
	grid-row: 5 / 9;
}

.proof-collage-regional .proof-collage-card {
	grid-column: 5 / 9;
	grid-row: 2 / 8;
	width: min(92%, 430px);
	padding: clamp(23px, 2vw, 31px);
}

.proof-collage-regional .proof-collage-card h2 {
	margin-bottom: 18px;
	font-size: clamp(31px, 2.5vw, 39px);
}

.proof-collage-regional .proof-collage-card ul {
	gap: 10px;
	font-size: 13px;
}

.proof-collage-regional + .feature-panel {
	margin-top: 0;
}

.related-links-visual.additional-services ul {
	gap: 16px;
}

.related-links-visual.additional-services li {
	min-height: 270px;
	background:
		radial-gradient(circle at 88% 12%, rgba(255, 179, 34, 0.2), transparent 42%),
		linear-gradient(145deg, #28343c 0%, #172027 48%, #0b1116 100%);
	border-color: rgba(63, 72, 79, 0.3);
	box-shadow:
		0 20px 48px rgba(16, 23, 29, 0.14),
		inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

.related-links-visual.additional-services li:hover,
.related-links-visual.additional-services li:focus-within {
	background:
		radial-gradient(circle at 84% 10%, rgba(255, 179, 34, 0.28), transparent 44%),
		linear-gradient(145deg, #303d46 0%, #1a252c 48%, #0c1318 100%);
	border-color: rgba(217, 154, 30, 0.64);
	box-shadow:
		0 28px 62px rgba(16, 23, 29, 0.22),
		inset 0 1px 0 rgba(255, 255, 255, 0.09);
}

.related-links-visual.additional-services li::after {
	display: none;
}

.related-links-visual.additional-services li a {
	position: relative;
	isolation: isolate;
	display: block;
	min-height: 270px;
	padding: 0;
	color: #ffffff;
	overflow: hidden;
}

.related-links-visual.additional-services li a::after {
	right: 20px;
	bottom: 20px;
	z-index: 3;
	display: block;
	width: 38px;
	height: 38px;
	background: var(--color-accent);
	border: 1px solid rgba(255, 255, 255, 0.28);
	border-radius: 50%;
	box-shadow: 0 10px 24px rgba(8, 12, 16, 0.26);
	clip-path: none;
	content: "";
}

.related-links-visual.additional-services li a::before {
	position: absolute;
	right: 32px;
	bottom: 32px;
	z-index: 4;
	width: 14px;
	height: 14px;
	background: var(--color-accent-ink);
	clip-path: polygon(0 43%, 60% 43%, 60% 12%, 100% 50%, 60% 88%, 60% 57%, 0 57%);
	content: "";
	pointer-events: none;
	transition: transform 240ms var(--ease-out);
}

.related-links-visual.additional-services li:hover a::before,
.related-links-visual.additional-services li:focus-within a::before {
	transform: translateX(4px);
}

.related-links-visual figure {
	position: absolute;
	inset: 0;
	z-index: -2;
	margin: 0;
	overflow: hidden;
}

.related-links-visual figure::after {
	position: absolute;
	inset: 0;
	background:
		linear-gradient(180deg, rgba(7, 11, 14, 0.03) 12%, rgba(9, 14, 18, 0.14) 42%, rgba(8, 12, 16, 0.92) 100%),
		radial-gradient(circle at 82% 14%, rgba(255, 179, 34, 0.2), transparent 43%),
		linear-gradient(112deg, rgba(25, 38, 47, 0.2), transparent 55%);
	content: "";
}

.related-links-visual figure img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	filter: saturate(0.94) contrast(1.04) brightness(0.98);
	transition: filter 300ms ease, transform 700ms var(--ease-out);
}

.related-links-visual li:hover figure img,
.related-links-visual li:focus-within figure img {
	filter: saturate(1.08) contrast(1.04);
	transform: scale(1.055);
}

.related-links-visual a > span {
	position: absolute;
	right: 64px;
	bottom: 20px;
	left: 20px;
	z-index: 2;
	display: grid;
	gap: 4px;
}

.related-links-visual a small {
	color: var(--color-highlight);
	font-size: 9px;
	font-weight: 850;
	letter-spacing: 0.13em;
	line-height: 1;
	text-transform: uppercase;
}

.related-links-visual a strong {
	color: #ffffff;
	font-size: clamp(19px, 1.6vw, 24px);
	line-height: 1.08;
	text-shadow: 0 3px 18px rgba(0, 0, 0, 0.48);
}

.product-information {
	position: relative;
	isolation: isolate;
	width: 100%;
	padding: clamp(72px, 7vw, 108px) 0;
	background:
		radial-gradient(circle at 8% 12%, rgba(217, 154, 30, 0.1), transparent 26rem),
		#f4efe7;
	border-block: 1px solid rgba(122, 104, 72, 0.16);
	overflow: hidden;
}

.product-information-inner {
	display: grid;
	grid-template-columns: minmax(320px, 0.72fr) minmax(0, 1.28fr);
	align-items: start;
	gap: clamp(42px, 6vw, 88px);
	width: min(100% - (var(--page-pad) * 2), var(--container));
	margin-inline: auto;
}

.product-information-media {
	position: relative;
	margin: 0;
	aspect-ratio: 4 / 5;
	background: var(--color-surface-muted);
	border: 1px solid rgba(122, 104, 72, 0.2);
	border-radius: 42px 10px 42px 10px;
	box-shadow: 0 30px 70px rgba(47, 49, 54, 0.16);
	overflow: hidden;
}

.product-information-media::after {
	position: absolute;
	inset: 16px;
	border: 1px solid rgba(255, 255, 255, 0.58);
	border-radius: 31px 5px 31px 5px;
	content: "";
	pointer-events: none;
}

.product-information-media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: filter 320ms ease, transform 850ms var(--ease-out);
}

.product-information-media:hover img {
	filter: saturate(1.08) contrast(1.02);
	transform: scale(1.035);
}

.product-information-copy > .section-kicker {
	margin-bottom: 13px;
}

.product-information-copy > h2 {
	max-width: 850px;
	margin-bottom: 20px;
	font-size: clamp(40px, 4.4vw, 64px);
	line-height: 0.98;
	text-wrap: balance;
}

.product-information-lead {
	max-width: 780px;
	margin-bottom: 34px;
	color: var(--color-ink-soft);
	font-size: clamp(16px, 1.4vw, 19px);
	line-height: 1.68;
}

.product-information-points {
	display: grid;
	gap: 0;
}

.product-information-points article {
	display: grid;
	grid-template-columns: minmax(180px, 0.42fr) minmax(0, 1fr);
	gap: 24px;
	padding: 22px 0;
	border-top: 1px solid rgba(122, 104, 72, 0.22);
}

.product-information-points article:last-child {
	border-bottom: 1px solid rgba(122, 104, 72, 0.22);
}

.product-information-points h3 {
	margin: 0;
	font-size: clamp(19px, 1.6vw, 23px);
	line-height: 1.14;
}

.product-information-points p {
	margin: 0;
	color: var(--color-ink-soft);
	font-size: 14px;
	line-height: 1.65;
}

.product-information-note {
	position: relative;
	margin: 28px 0 0;
	padding: 18px 20px 18px 48px;
	color: var(--color-ink);
	background: rgba(255, 255, 255, 0.58);
	border: 1px solid rgba(217, 154, 30, 0.28);
	border-radius: 13px;
	font-size: 13px;
	line-height: 1.55;
}

.product-information-note::before {
	position: absolute;
	top: 24px;
	left: 21px;
	width: 9px;
	height: 9px;
	background: var(--color-accent);
	border-radius: 50%;
	box-shadow: 0 0 0 5px rgba(217, 154, 30, 0.12);
	content: "";
}

.product-comparison {
	scroll-margin-top: 90px;
	padding-block: clamp(64px, 6vw, 90px);
}

.product-information-inner.product-comparison-layout {
	grid-template-columns: minmax(0, 1fr);
	gap: clamp(34px, 4vw, 50px);
}

.product-comparison-layout .product-information-copy {
	width: min(100%, 1040px);
	max-width: none;
	margin-inline: auto;
	text-align: center;
}

.product-comparison-layout .product-information-copy > .section-kicker {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 15px;
}

.product-comparison-layout .product-information-copy > .section-kicker::before,
.product-comparison-layout .product-information-copy > .section-kicker::after {
	width: 30px;
	height: 1px;
	background: rgba(168, 79, 11, 0.42);
	content: "";
	flex: 0 0 auto;
}

.product-comparison-layout .product-information-copy > h2 {
	max-width: 1040px;
	margin: 0 auto 20px;
	font-size: clamp(38px, 4.3vw, 62px);
	line-height: 1.02;
}

.product-comparison-layout .product-information-lead {
	max-width: 900px;
	margin: 0 auto;
	font-size: clamp(16px, 1.35vw, 19px);
}

.product-comparison-layout .product-information-note {
	width: min(100%, 900px);
	margin: 25px auto 0;
	text-align: left;
}

.product-comparison-table-wrap {
	grid-column: 1 / -1;
	min-width: 0;
	background: rgba(255, 255, 255, 0.72);
	border: 1px solid rgba(122, 104, 72, 0.22);
	border-radius: 24px 7px 24px 7px;
	box-shadow: 0 24px 60px rgba(47, 49, 54, 0.1);
	overflow-x: auto;
	overscroll-behavior-inline: contain;
}

.product-comparison-table {
	width: 100%;
	min-width: 1080px;
	border-spacing: 0;
	border-collapse: separate;
	table-layout: fixed;
	color: var(--color-ink);
	font-size: 13px;
	line-height: 1.5;
}

.product-comparison-table caption {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	border: 0;
	overflow: hidden;
	clip-path: inset(50%);
	white-space: nowrap;
}

.product-comparison-table th,
.product-comparison-table td {
	padding: 17px 15px;
	border-right: 1px solid rgba(122, 104, 72, 0.14);
	border-bottom: 1px solid rgba(122, 104, 72, 0.17);
	text-align: left;
	vertical-align: top;
	overflow-wrap: anywhere;
}

.product-comparison-table tr > :last-child {
	border-right: 0;
}

.product-comparison-table tbody tr:last-child > * {
	border-bottom: 0;
}

.product-comparison-table thead th {
	color: var(--color-highlight);
	background: var(--color-navy);
	font-size: 9px;
	font-weight: 850;
	letter-spacing: 0.08em;
	line-height: 1.35;
	text-transform: uppercase;
}

.product-comparison-table thead th:first-child {
	width: 8%;
}

.product-comparison-table thead th:nth-child(2) {
	width: 13%;
}

.product-comparison-table thead th:nth-child(3) {
	width: 15%;
}

.product-comparison-table thead th:nth-child(4) {
	width: 11%;
}

.product-comparison-table thead th:nth-child(5) {
	width: 22%;
}

.product-comparison-table thead th:last-child {
	width: 31%;
}

.briquette-comparison-table {
	font-size: 12px;
}

.briquette-comparison-table thead th:first-child {
	width: 15%;
}

.briquette-comparison-table thead th:nth-child(2) {
	width: 17%;
}

.briquette-comparison-table thead th:nth-child(3),
.briquette-comparison-table thead th:nth-child(4) {
	width: 18%;
}

.briquette-comparison-table thead th:nth-child(5) {
	width: 12%;
}

.briquette-comparison-table thead th:last-child {
	width: 20%;
}

.pellet-comparison-table {
	font-size: 12.5px;
}

.pellet-comparison-table thead th:first-child {
	width: 15%;
}

.pellet-comparison-table thead th:nth-child(2) {
	width: 21%;
}

.pellet-comparison-table thead th:nth-child(3) {
	width: 20%;
}

.pellet-comparison-table thead th:nth-child(4) {
	width: 23%;
}

.pellet-comparison-table thead th:last-child {
	width: 21%;
}

.coal-comparison-table {
	font-size: 12.5px;
}

.coal-comparison-table thead th:first-child {
	width: 18%;
}

.coal-comparison-table thead th:nth-child(2) {
	width: 12%;
}

.coal-comparison-table thead th:nth-child(3) {
	width: 24%;
}

.coal-comparison-table thead th:nth-child(4),
.coal-comparison-table thead th:last-child {
	width: 23%;
}

.product-comparison-table tbody th {
	color: var(--color-earth);
	background: rgba(217, 154, 30, 0.08);
	font-size: 15px;
	font-weight: 850;
}

.product-comparison-table tbody tr:nth-child(even) td {
	background: rgba(238, 228, 210, 0.34);
}

.product-comparison-table tbody tr {
	transition: background 180ms ease;
}

.product-comparison-table tbody tr:hover td {
	background: rgba(217, 154, 30, 0.1);
}

.product-comparison-table td::before {
	display: none;
}

@media (max-width: 1180px) {
	.product-comparison-table-wrap {
		background: transparent;
		border: 0;
		border-radius: 0;
		box-shadow: none;
		overflow: visible;
	}

	.product-comparison-table,
	.product-comparison-table tbody {
		display: block;
		min-width: 0;
	}

	.product-comparison-table thead {
		position: absolute;
		width: 1px;
		height: 1px;
		padding: 0;
		margin: -1px;
		border: 0;
		overflow: hidden;
		clip-path: inset(50%);
		white-space: nowrap;
	}

	.product-comparison-table tbody {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 18px;
	}

	.product-comparison-table tbody tr {
		display: block;
		background: rgba(255, 255, 255, 0.72);
		border: 1px solid rgba(122, 104, 72, 0.2);
		border-radius: 18px 5px 18px 5px;
		box-shadow: 0 16px 38px rgba(47, 49, 54, 0.08);
		overflow: hidden;
	}

	.product-comparison-table tbody th,
	.product-comparison-table tbody td {
		width: auto;
		border-right: 0;
		border-bottom: 1px solid rgba(122, 104, 72, 0.15);
	}

	.product-comparison-table tbody th {
		display: block;
		padding: 15px 17px;
		color: #ffffff;
		background: var(--color-navy);
		font-size: 20px;
	}

	.product-comparison-table tbody td,
	.product-comparison-table tbody tr:nth-child(even) td,
	.product-comparison-table tbody tr:hover td {
		display: grid;
		grid-template-columns: minmax(145px, 0.72fr) minmax(0, 1fr);
		gap: 14px;
		padding: 12px 16px;
		background: transparent;
	}

	.product-comparison-table tbody td:last-child {
		border-bottom: 0;
	}

	.product-comparison-table td::before {
		display: block;
		color: var(--color-earth);
		font-size: 9px;
		font-weight: 850;
		letter-spacing: 0.07em;
		line-height: 1.35;
		text-transform: uppercase;
		content: attr(data-label);
	}
}

@media (max-width: 760px) {
	.product-comparison-table tbody {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 480px) {
	.product-comparison-layout .product-information-copy > h2 {
		font-size: clamp(32px, 9.5vw, 40px);
	}

	.product-comparison-layout .product-information-copy > .section-kicker {
		gap: 8px;
	}

	.product-comparison-layout .product-information-copy > .section-kicker::before,
	.product-comparison-layout .product-information-copy > .section-kicker::after {
		width: 20px;
	}

	.product-comparison-table tbody td,
	.product-comparison-table tbody tr:nth-child(even) td,
	.product-comparison-table tbody tr:hover td {
		grid-template-columns: minmax(105px, 0.64fr) minmax(0, 1fr);
		gap: 10px;
		padding-inline: 13px;
		font-size: 12px;
	}
}

@media (max-width: 1060px) {
	.category-region-hub .company-intro-content {
		grid-template-columns: 1fr;
	}

	.category-region-hub .company-intro-copy {
		max-width: 760px;
	}

	.proof-collage-regional .proof-collage-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		grid-template-rows: 190px auto 240px;
		height: auto;
	}

	.proof-collage-regional {
		padding:
			clamp(34px, 5vw, 48px)
			var(--page-pad)
			clamp(38px, 5.5vw, 54px);
	}

	.proof-collage-regional::before {
		inset: 7px -12%;
		border-radius: 50% / 28px;
	}

	.proof-collage-regional .proof-collage-frame-a {
		grid-column: 1;
		grid-row: 1;
	}

	.proof-collage-regional .proof-collage-frame-b {
		grid-column: 2;
		grid-row: 1;
	}

	.proof-collage-regional .proof-collage-frame-c {
		grid-column: 1;
		grid-row: 3;
	}

	.proof-collage-regional .proof-collage-frame-d {
		grid-column: 2;
		grid-row: 3;
	}

	.proof-collage-regional .proof-collage-card {
		grid-column: 1 / -1;
		grid-row: 2;
		width: min(100%, 640px);
	}

	.related-links-visual.additional-services ul {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.product-information-inner {
		grid-template-columns: minmax(280px, 0.65fr) minmax(0, 1.35fr);
		gap: 38px;
	}
}

@media (max-width: 900px) {
	.firewood-product-catalog {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.fuel-product-catalog {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 760px) {
	.product-pair-catalog {
		grid-template-columns: 1fr;
	}

	.product-information-inner {
		grid-template-columns: 1fr;
	}

	.product-information-media {
		aspect-ratio: 16 / 8;
		border-radius: 28px 8px 28px 8px;
	}

	.product-information-copy > h2 {
		font-size: clamp(36px, 10vw, 48px);
	}
}

@media (max-width: 640px) {
	.fuel-product-catalog {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 9px;
	}

	.fuel-product-catalog .product-region-card {
		min-width: 0;
		padding: 10px;
		border-radius: 15px 5px 15px 5px;
	}

	.fuel-product-catalog .product-region-card .card-media {
		margin: -10px -10px 11px;
		aspect-ratio: 4 / 3;
		border-radius: 14px 4px 0 0;
	}

	.products.fuel-product-catalog .product-region-card h3 {
		min-height: 2.15em;
		margin-bottom: 6px;
		font-size: clamp(16px, 4.7vw, 20px);
		line-height: 1.08;
	}

	.products.fuel-product-catalog .product-region-card > p {
		margin-bottom: 8px;
		font-size: 10px;
		line-height: 1.4;
	}

	.fuel-product-catalog .product-detail-list {
		gap: 4px;
		margin: 2px 0 9px;
		font-size: 8.5px;
		line-height: 1.3;
	}

	.fuel-product-catalog .product-detail-list li {
		padding-left: 10px;
	}

	.fuel-product-catalog .product-detail-list li::before {
		width: 4px;
		height: 4px;
	}

	.products.fuel-product-catalog article .product-start-price {
		right: 6px;
		bottom: 6px;
		left: 6px;
		gap: 3px;
		max-width: calc(100% - 12px);
		padding: 5px 6px;
		border-radius: 7px;
	}

	.fuel-product-catalog .product-start-price span,
	.fuel-product-catalog .product-start-price small {
		font-size: 7px;
	}

	.fuel-product-catalog .product-start-price strong {
		font-size: clamp(15px, 4.5vw, 20px);
	}

	.products.fuel-product-catalog .product-card-action {
		min-height: 40px;
		padding: 8px 6px;
		gap: 4px;
		font-size: 9px;
		line-height: 1.15;
		text-align: center;
	}

	.firewood-product-catalog {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 9px;
	}

	.firewood-product-catalog .firewood-offer-card {
		padding: 10px;
		border-radius: 15px 5px 15px 5px;
	}

	.firewood-offer-card .card-media {
		margin: -10px -10px 11px;
		aspect-ratio: 4 / 3;
		border-radius: 14px 4px 0 0;
	}

	.firewood-stock {
		top: 7px;
		left: 7px;
		gap: 4px;
		min-height: 20px;
		padding: 5px 6px;
		font-size: 7px;
		letter-spacing: 0.045em;
	}

	.firewood-stock i {
		width: 5px;
		height: 5px;
	}

	.products .firewood-offer-card h3 {
		min-height: 2.08em;
		margin-bottom: 6px;
		font-size: clamp(18px, 5.2vw, 22px);
	}

	.products .firewood-offer-card .firewood-formats {
		bottom: 6px;
		max-width: calc(100% - 12px);
		margin: 0;
		padding: 5px 6px;
		font-size: clamp(6.5px, 1.85vw, 8px);
		letter-spacing: 0;
	}

	.firewood-formats i {
		margin-inline: 1px;
	}

	.products .firewood-offer-card .firewood-card-summary {
		min-height: 44px;
		margin-bottom: 9px;
		font-size: 10.5px;
		line-height: 1.4;
	}

	.firewood-start-price {
		column-gap: 5px;
		margin-bottom: 9px;
		padding: 10px;
		border-radius: 11px 4px 11px 4px;
	}

	.firewood-start-price > span {
		font-size: 7px;
	}

	.firewood-start-price > strong {
		font-size: clamp(21px, 6.2vw, 26px);
	}

	.firewood-start-price > small {
		margin-top: 5px;
		font-size: 7.5px;
		letter-spacing: 0.015em;
	}

	.products .firewood-offer-card .product-card-action {
		min-height: 40px;
		padding: 9px 10px;
		font-size: 11px;
	}

	.products .firewood-offer-card .product-card-action > span {
		font-size: 16px;
	}

	.proof-collage-regional {
		margin-block: 0;
		padding: 24px 4px 28px;
	}

	.proof-collage-regional::before {
		inset: 4px -24%;
		border-radius: 50% / 18px;
	}

	.proof-collage-regional .proof-collage-grid {
		grid-template-rows: 130px auto 160px;
		gap: 4px;
		padding: 4px;
		border-radius: 8px;
		box-shadow: 0 18px 42px rgba(0, 0, 0, 0.2);
	}

	.proof-collage-regional .proof-collage-card {
		padding: 26px 20px;
	}

	.proof-collage-regional .proof-collage-card h2 {
		margin-bottom: 18px;
	}

	.related-links-visual.additional-services ul {
		grid-template-columns: 1fr;
	}

	.related-links-visual.additional-services li,
	.related-links-visual.additional-services li a {
		min-height: 220px;
	}

	.product-information {
		padding-block: 58px;
	}

	.product-information-media {
		aspect-ratio: 4 / 3;
	}

	.product-information-points article {
		grid-template-columns: 1fr;
		gap: 9px;
		padding: 19px 0;
	}

	.product-information-note {
		padding: 17px 17px 17px 43px;
	}
}

/* Auxiliary regional products and equipment */

.auxiliary-hero.hero-premium .hero-media {
	inset: -3% -3% 54px 47%;
}

.auxiliary-hero.hero-premium .hero-media img {
	object-position: right center;
	transform: scale(1.02);
}

.auxiliary-service-hero.hero-premium .hero-media {
	inset: 2% -4% 54px 43%;
}

.auxiliary-service-hero.hero-premium .hero-media img {
	transform: scale(1);
}

.auxiliary-offer-grid {
	gap: 20px;
}

.auxiliary-offer-grid > .section-kicker {
	order: 0;
	margin: 0 0 -8px;
	color: var(--color-accent-hover);
	font-size: 11px;
	font-weight: 820;
	letter-spacing: 0.15em;
	line-height: 1.4;
	text-transform: uppercase;
}

.auxiliary-offer-grid > h2 {
	order: 1;
	max-width: 930px;
	margin-bottom: 0;
}

.auxiliary-offer-grid > .auxiliary-section-lead {
	order: 2;
	max-width: 830px;
	margin: -4px 0 22px;
	color: var(--color-ink-soft);
	font-size: clamp(15px, 1.35vw, 18px);
	line-height: 1.65;
}

.auxiliary-offer-grid > article {
	order: 3;
	min-height: 284px;
	padding: 28px;
	background:
		radial-gradient(circle at 100% 0, rgba(217, 154, 30, 0.1), transparent 11rem),
		var(--color-surface);
	border-radius: 24px 7px 24px 7px;
}

.auxiliary-offer-grid > article::after {
	display: none;
}

.auxiliary-card-index {
	display: block;
	margin-bottom: 44px;
	color: rgba(168, 79, 11, 0.28);
	font-family: Georgia, "Times New Roman", serif;
	font-size: clamp(42px, 3.7vw, 58px);
	font-weight: 500;
	letter-spacing: -0.06em;
	line-height: 0.8;
}

.auxiliary-offer-grid article h3 {
	margin-bottom: 12px;
	padding-right: 0;
	font-size: clamp(20px, 1.6vw, 24px);
	line-height: 1.08;
}

.auxiliary-offer-grid article p {
	font-size: 13px;
	line-height: 1.62;
}

.auxiliary-quick-order {
	margin-top: 0;
}

.auxiliary-logistics.company-intro-warehouses.additional-services {
	min-height: clamp(660px, 74vh, 820px);
}

.auxiliary-logistics .company-intro-content {
	grid-template-columns: minmax(0, 0.9fr) minmax(360px, 0.62fr);
	gap: clamp(44px, 6vw, 92px);
}

.auxiliary-logistics .company-intro-copy > h2 {
	font-size: clamp(42px, 4.7vw, 66px);
}

.auxiliary-logistics-panel {
	padding: clamp(26px, 3vw, 40px);
	background:
		linear-gradient(145deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.018)),
		rgba(7, 12, 16, 0.72);
	border: 1px solid rgba(255, 255, 255, 0.15);
	border-radius: 28px 7px 28px 7px;
	box-shadow:
		0 30px 80px rgba(0, 0, 0, 0.34),
		inset 0 1px 0 rgba(255, 255, 255, 0.07);
	backdrop-filter: blur(16px) saturate(1.06);
}

.auxiliary-logistics-panel > .warehouse-panel-label {
	margin-bottom: 14px;
}

.auxiliary-logistics-panel > h3 {
	max-width: 430px;
	margin-bottom: 23px;
	color: #ffffff;
	font-size: clamp(24px, 2.2vw, 32px);
	line-height: 1.08;
	text-wrap: balance;
}

.auxiliary-logistics-panel ol {
	display: grid;
	gap: 0;
	margin: 0;
	padding: 0;
	list-style: none;
}

.auxiliary-logistics-panel li {
	display: grid;
	grid-template-columns: 42px minmax(0, 1fr);
	gap: 14px;
	padding: 14px 0;
	background: transparent;
	border: 0;
	border-top: 1px solid rgba(255, 255, 255, 0.11);
	border-radius: 0;
	transition: none;
}

.auxiliary-logistics-panel li:hover {
	background: transparent;
	border-color: rgba(255, 255, 255, 0.11);
	transform: none;
}

.auxiliary-logistics-panel li:last-child {
	padding-bottom: 0;
}

.auxiliary-logistics-panel li > span {
	color: var(--color-highlight);
	font-family: Georgia, "Times New Roman", serif;
	font-size: 22px;
	line-height: 1;
}

.auxiliary-logistics-panel strong {
	display: block;
	margin-bottom: 4px;
	color: #ffffff;
	font-size: 13px;
	line-height: 1.2;
}

.auxiliary-logistics-panel li p {
	margin: 0;
	color: rgba(255, 255, 255, 0.6);
	font-size: 11px;
	line-height: 1.5;
}

.auxiliary-information .product-information-inner {
	align-items: center;
}

.auxiliary-information .product-information-media {
	aspect-ratio: 1 / 1.08;
	background:
		radial-gradient(circle at 50% 55%, rgba(255, 179, 34, 0.2), transparent 40%),
		linear-gradient(145deg, #1a2229, #0b1116);
}

.auxiliary-information .product-information-media::after {
	border-color: rgba(255, 255, 255, 0.13);
}

.auxiliary-information .product-information-media img {
	padding: clamp(18px, 2vw, 32px);
	object-fit: contain;
	filter:
		drop-shadow(0 25px 25px rgba(0, 0, 0, 0.34))
		saturate(0.98)
		contrast(1.02);
}

.auxiliary-information .product-information-media:hover img {
	filter:
		drop-shadow(0 25px 25px rgba(0, 0, 0, 0.34))
		saturate(1.03)
		contrast(1.02);
	transform: none;
}

.auxiliary-related-links.related-links-visual figure {
	background:
		radial-gradient(circle at 50% 43%, rgba(255, 179, 34, 0.18), transparent 38%),
		linear-gradient(145deg, #202a32, #0a1015);
}

.auxiliary-related-links.related-links-visual figure img {
	padding: 20px 14px 42px;
	object-fit: contain;
	filter:
		drop-shadow(0 20px 20px rgba(0, 0, 0, 0.34))
		saturate(0.96)
		contrast(1.02);
}

.auxiliary-related-links.related-links-visual li:hover figure img,
.auxiliary-related-links.related-links-visual li:focus-within figure img {
	filter:
		drop-shadow(0 20px 20px rgba(0, 0, 0, 0.34))
		saturate(1.04)
		contrast(1.02);
	transform: translateY(-4px) scale(1.025);
}

@media (max-width: 1060px) {
	.auxiliary-logistics .company-intro-content {
		grid-template-columns: 1fr;
	}

	.auxiliary-logistics .company-intro-copy {
		max-width: 780px;
	}

	.auxiliary-logistics-panel {
		width: min(100%, 720px);
	}
}

@media (max-width: 640px) {
	.auxiliary-offer-grid {
		grid-template-columns: 1fr;
	}

	.auxiliary-hero.hero-premium .hero-media,
	.auxiliary-service-hero.hero-premium .hero-media {
		inset: 4px -20% auto -16%;
		height: 47%;
	}

	.auxiliary-hero.hero-premium .hero-media img,
	.auxiliary-service-hero.hero-premium .hero-media img {
		object-position: center top;
		transform: scale(1.03);
	}

	.auxiliary-service-hero.hero-premium h1 {
		font-size: clamp(39px, 11vw, 52px);
		letter-spacing: -0.055em;
	}

	.auxiliary-offer-grid > .auxiliary-section-lead {
		margin-bottom: 12px;
	}

	.auxiliary-offer-grid > article {
		min-height: 228px;
		padding: 24px 22px;
	}

	.auxiliary-card-index {
		margin-bottom: 32px;
	}

	.auxiliary-logistics-panel {
		padding: 24px 20px;
		border-radius: 22px 7px 22px 7px;
	}

	.auxiliary-information .product-information-media {
		aspect-ratio: 4 / 3;
	}
}

/* Compact scrollable buyer guide */

.guide-story {
	position: relative;
	isolation: isolate;
	width: 100%;
	margin-block: clamp(54px, 7vw, 96px);
	padding: clamp(18px, 2.2vw, 32px) max(var(--page-pad), calc((100% - var(--container)) / 2));
	background:
		linear-gradient(rgba(73, 61, 43, 0.045) 1px, transparent 1px),
		linear-gradient(90deg, rgba(73, 61, 43, 0.045) 1px, transparent 1px),
		radial-gradient(circle at 12% 15%, rgba(217, 154, 30, 0.16), transparent 24rem),
		#e9e4dc;
	background-size: 48px 48px, 48px 48px, auto, auto;
	overflow: hidden;
}

.guide-story::before,
.guide-story::after {
	position: absolute;
	z-index: -1;
	width: clamp(220px, 28vw, 430px);
	height: clamp(220px, 28vw, 430px);
	border: 1px solid rgba(186, 98, 7, 0.13);
	border-radius: 50%;
	content: "";
	pointer-events: none;
}

.guide-story::before {
	top: -21%;
	left: -9%;
	box-shadow: 0 0 0 44px rgba(186, 98, 7, 0.035), 0 0 0 92px rgba(186, 98, 7, 0.025);
}

.guide-story::after {
	right: -12%;
	bottom: -31%;
	box-shadow: 0 0 0 52px rgba(186, 98, 7, 0.035);
}

.guide-story__layout {
	display: grid;
	grid-template-columns: minmax(330px, 0.72fr) minmax(0, 1.28fr);
	gap: clamp(14px, 1.7vw, 24px);
	width: min(100%, var(--container));
	height: clamp(650px, 78vh, 790px);
	margin-inline: auto;
}

.guide-story__aside,
.guide-story__content {
	min-width: 0;
	min-height: 0;
	border: 1px solid rgba(255, 255, 255, 0.58);
	box-shadow:
		0 28px 70px rgba(46, 39, 30, 0.14),
		inset 0 1px 0 rgba(255, 255, 255, 0.18);
}

.guide-story__aside {
	position: relative;
	color: rgba(255, 255, 255, 0.76);
	background:
		radial-gradient(circle at 97% 3%, rgba(217, 154, 30, 0.17), transparent 17rem),
		linear-gradient(145deg, rgba(18, 29, 25, 0.98), rgba(28, 49, 40, 0.97));
	border-color: rgba(255, 255, 255, 0.11);
	border-radius: 34px 10px 34px 10px;
	overflow: hidden;
}

.guide-story__aside::after {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	width: 3px;
	background: linear-gradient(transparent 7%, var(--color-accent) 7% 13%, transparent 13% 91%, var(--color-accent) 91% 98%, transparent 98%);
	content: "";
	pointer-events: none;
}

.guide-story__aside-inner {
	position: relative;
	z-index: 1;
	display: flex;
	flex-direction: column;
	height: 100%;
	padding: clamp(34px, 3.2vw, 48px);
}

.guide-story__orbit {
	position: absolute;
	top: clamp(-92px, -7vw, -62px);
	right: clamp(-96px, -7vw, -64px);
	z-index: -1;
	width: clamp(210px, 20vw, 290px);
	margin: 0;
	opacity: 0.42;
	filter: saturate(0.86) sepia(0.08) drop-shadow(0 18px 35px rgba(0, 0, 0, 0.28));
	pointer-events: none;
}

.guide-story__orbit::before,
.guide-story__orbit::after {
	position: absolute;
	inset: -18px;
	border: 1px solid rgba(217, 154, 30, 0.35);
	border-radius: 50%;
	content: "";
}

.guide-story__orbit::after {
	inset: -42px;
	border-color: rgba(217, 154, 30, 0.16);
}

.guide-story__orbit img {
	width: 100%;
	animation: guide-story-orbit 34s linear infinite;
}

.guide-story__aside .section-kicker {
	position: relative;
	margin-bottom: 18px;
	color: #f3aa4b;
}

.guide-story__aside h2 {
	position: relative;
	max-width: 440px;
	margin-bottom: 20px;
	color: #ffffff;
	font-size: clamp(37px, 3.35vw, 53px);
	line-height: 1.01;
	letter-spacing: -0.052em;
	text-wrap: balance;
}

.guide-story__intro {
	position: relative;
	max-width: 390px;
	margin-bottom: clamp(22px, 3vh, 34px);
	color: rgba(255, 255, 255, 0.64);
	font-size: 14px;
	line-height: 1.65;
}

.guide-story__nav {
	position: relative;
	display: grid;
	margin-bottom: auto;
	border-top: 1px solid rgba(255, 255, 255, 0.14);
}

.guide-story__nav-link {
	position: relative;
	display: flex;
	align-items: center;
	gap: 13px;
	min-height: 42px;
	padding: 9px 32px 9px 8px;
	color: rgba(255, 255, 255, 0.72);
	border-bottom: 1px solid rgba(255, 255, 255, 0.12);
	font-size: 12px;
	font-weight: 700;
	line-height: 1.3;
	text-decoration: none;
	transition: color 180ms ease, background 180ms ease, padding 220ms var(--ease-out);
}

.guide-story__nav-link::after {
	position: absolute;
	right: 9px;
	width: 7px;
	height: 7px;
	border: 1px solid rgba(255, 255, 255, 0.34);
	border-radius: 50%;
	content: "";
	transition: background 180ms ease, border-color 180ms ease, box-shadow 180ms ease;
}

.guide-story__nav-link span {
	flex: 0 0 auto;
	color: #f3aa4b;
	font-size: 9px;
	font-weight: 850;
}

.guide-story__nav-link:hover,
.guide-story__nav-link:focus-visible,
.guide-story__nav-link.is-active {
	padding-left: 14px;
	color: #ffffff;
	background: rgba(255, 255, 255, 0.075);
}

.guide-story__nav-link.is-active::after {
	background: #f3aa4b;
	border-color: #f3aa4b;
	box-shadow: 0 0 0 5px rgba(243, 170, 75, 0.12);
}

.guide-story__progress {
	position: relative;
	display: grid;
	grid-template-columns: 1fr auto;
	align-items: center;
	gap: 16px;
	margin-top: clamp(20px, 2.5vh, 28px);
}

.guide-story__progress-track {
	height: 3px;
	background: rgba(255, 255, 255, 0.13);
	overflow: hidden;
}

.guide-story__progress-bar {
	display: block;
	width: 20%;
	height: 100%;
	background: linear-gradient(90deg, var(--color-accent), #ffbd6d);
	transition: width 320ms var(--ease-out);
}

.guide-story__progress-label {
	display: flex;
	align-items: baseline;
	gap: 5px;
	margin: 0;
	color: #f3aa4b;
	font-family: Georgia, "Times New Roman", serif;
	font-size: 23px;
	font-weight: 700;
	line-height: 1;
}

.guide-story__progress-label small {
	color: rgba(255, 255, 255, 0.4);
	font-family: Inter, "Segoe UI", Arial, sans-serif;
	font-size: 7px;
	font-weight: 800;
	letter-spacing: 0.13em;
	text-transform: uppercase;
}

.guide-story__content {
	position: relative;
	padding: 0 clamp(14px, 2vw, 26px) clamp(22px, 3vw, 36px);
	background:
		linear-gradient(135deg, rgba(255, 255, 255, 0.76), rgba(255, 255, 255, 0.43)),
		rgba(246, 242, 235, 0.5);
	border-color: rgba(255, 255, 255, 0.82);
	border-radius: 10px 30px 10px 30px;
	backdrop-filter: blur(24px) saturate(1.2);
	overflow-x: hidden;
	overflow-y: auto;
	overscroll-behavior: contain;
	scroll-behavior: smooth;
	scrollbar-color: var(--color-accent) rgba(81, 69, 52, 0.08);
	scrollbar-width: thin;
}

.guide-story__content::-webkit-scrollbar {
	width: 8px;
}

.guide-story__content::-webkit-scrollbar-track {
	margin-block: 12px;
	background: rgba(81, 69, 52, 0.08);
	border-radius: 99px;
}

.guide-story__content::-webkit-scrollbar-thumb {
	background: linear-gradient(var(--color-accent), var(--color-earth));
	border: 2px solid rgba(255, 255, 255, 0.66);
	border-radius: 99px;
}

.guide-story__panel-head {
	position: sticky;
	top: 0;
	z-index: 5;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	min-height: 58px;
	margin-inline: calc(clamp(14px, 2vw, 26px) * -1);
	margin-bottom: clamp(22px, 3vw, 36px);
	padding: 12px clamp(18px, 2.4vw, 32px);
	color: #6c6a65;
	background: rgba(248, 245, 239, 0.84);
	border-bottom: 1px solid rgba(120, 101, 73, 0.14);
	box-shadow: 0 12px 26px rgba(58, 49, 38, 0.06);
	backdrop-filter: blur(20px) saturate(1.2);
	font-size: 10px;
	font-weight: 830;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.guide-story__panel-head span,
.guide-story__panel-head small {
	display: flex;
	align-items: center;
	gap: 9px;
}

.guide-story__panel-head i {
	width: 9px;
	height: 9px;
	background: #65a878;
	border: 3px solid rgba(101, 168, 120, 0.18);
	border-radius: 50%;
	box-shadow: 0 0 0 4px rgba(101, 168, 120, 0.08);
}

.guide-story__panel-head small {
	color: var(--color-earth);
	font-size: 8px;
}

.guide-story__panel-head b {
	font-size: 14px;
}

.guide-story__lead,
.guide-story__article {
	width: min(100%, 830px);
	margin-inline: auto;
}

.guide-story__lead {
	position: relative;
	margin-bottom: 22px;
	padding: clamp(24px, 3.4vw, 42px);
	color: #53524f;
	background: rgba(255, 255, 255, 0.48);
	border: 1px solid rgba(120, 101, 73, 0.15);
	border-left: 4px solid var(--color-accent);
	border-radius: 20px 8px 20px 8px;
	font-family: Georgia, "Times New Roman", serif;
	font-size: clamp(17px, 1.5vw, 21px);
	line-height: 1.72;
}

.guide-story__article {
	position: relative;
	margin-bottom: 24px;
	padding: clamp(27px, 3.8vw, 48px);
	background:
		linear-gradient(145deg, rgba(255, 255, 255, 0.9), rgba(255, 253, 249, 0.7)),
		rgba(255, 255, 255, 0.62);
	border: 1px solid rgba(216, 138, 54, 0.26);
	border-radius: 26px 9px 26px 9px;
	box-shadow:
		0 20px 46px rgba(57, 47, 34, 0.07),
		inset 0 1px 0 rgba(255, 255, 255, 0.94);
	scroll-margin-top: 82px;
	transition: border-color 240ms ease, box-shadow 240ms ease;
}

.guide-story__article::before {
	position: absolute;
	top: -1px;
	left: clamp(27px, 3.8vw, 48px);
	width: 110px;
	height: 3px;
	background: linear-gradient(90deg, var(--color-accent), #ffc374);
	border-radius: 0 0 99px 99px;
	content: "";
}

.guide-story__article.is-active {
	border-color: rgba(216, 138, 54, 0.48);
	box-shadow:
		0 22px 52px rgba(57, 47, 34, 0.1),
		0 0 0 1px rgba(255, 255, 255, 0.55) inset;
}

.guide-story__article-head {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	align-items: start;
	gap: clamp(18px, 2vw, 26px);
	margin-bottom: 24px;
}

.guide-story__number {
	display: grid;
	place-items: center;
	width: 46px;
	height: 46px;
	color: #ffffff;
	background: linear-gradient(145deg, #e08328, #bd5511);
	border-radius: 12px 3px 12px 3px;
	box-shadow: 6px 6px 0 rgba(186, 98, 7, 0.1);
	font-family: Georgia, "Times New Roman", serif;
	font-size: 12px;
	font-weight: 800;
}

.guide-story__eyebrow {
	display: block;
	margin: 3px 0 8px;
	color: var(--color-earth);
	font-size: 8px;
	font-weight: 850;
	letter-spacing: 0.15em;
	line-height: 1.2;
	text-transform: uppercase;
}

.guide-story__article h3 {
	margin: 0;
	font-size: clamp(28px, 3vw, 43px);
	line-height: 1.06;
	letter-spacing: -0.045em;
	text-wrap: balance;
}

.guide-story__body {
	color: #5c5b58;
	font-size: clamp(15px, 1.22vw, 17px);
	line-height: 1.85;
}

.guide-story__body p:last-child {
	margin-bottom: 0;
}

.guide-story__body a {
	font-weight: 720;
}

.guide-story__tip,
.guide-story__fact {
	display: flex;
	align-items: center;
	gap: 16px;
	margin-top: 26px;
	padding: 17px 19px;
	background: rgba(255, 255, 255, 0.7);
	border: 1px solid rgba(120, 101, 73, 0.15);
	border-radius: 14px;
}

.guide-story__tip p {
	margin: 0;
	color: #62615d;
	font-size: 13px;
	line-height: 1.55;
}

.guide-story__tip-icon {
	display: grid;
	place-items: center;
	flex: 0 0 32px;
	width: 32px;
	height: 32px;
	color: var(--color-earth);
	background: var(--color-accent-soft);
	border-radius: 50%;
	font-family: Georgia, "Times New Roman", serif;
	font-weight: 900;
}

.guide-story__fact {
	align-items: flex-start;
	flex-direction: column;
	gap: 4px;
	background: linear-gradient(135deg, rgba(247, 231, 183, 0.58), rgba(255, 255, 255, 0.78));
}

.guide-story__fact strong {
	color: var(--color-earth);
	font-family: Georgia, "Times New Roman", serif;
	font-size: 30px;
	line-height: 1;
}

.guide-story__fact span {
	color: var(--color-ink-soft);
	font-size: 12px;
}

.guide-story__checklist {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
	margin: 27px 0 0;
	padding: 0;
	list-style: none;
}

.guide-story__checklist li {
	display: flex;
	align-items: center;
	gap: 9px;
	padding: 12px 14px;
	color: #55534f;
	background: rgba(247, 231, 183, 0.42);
	border: 1px solid rgba(217, 154, 30, 0.18);
	border-radius: 10px;
	font-size: 12px;
	font-weight: 680;
}

.guide-story__checklist span {
	display: grid;
	place-items: center;
	flex: 0 0 20px;
	width: 20px;
	height: 20px;
	color: #ffffff;
	background: var(--color-earth);
	border-radius: 50%;
	font-size: 10px;
}

.guide-story__finish {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 22px;
	margin-top: 28px;
	padding: clamp(18px, 2.3vw, 26px);
	color: #ffffff;
	background: linear-gradient(125deg, #18251f, #284538);
	border-radius: 16px 5px 16px 5px;
}

.guide-story__finish small,
.guide-story__finish strong {
	display: block;
}

.guide-story__finish small {
	margin-bottom: 5px;
	color: rgba(255, 255, 255, 0.58);
	font-size: 8px;
	font-weight: 800;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.guide-story__finish strong {
	font-size: clamp(14px, 1.3vw, 17px);
}

@keyframes guide-story-orbit {
	to {
		transform: rotate(1turn);
	}
}

@media (max-width: 980px) {
	.guide-story__layout {
		grid-template-columns: minmax(280px, 0.68fr) minmax(0, 1.32fr);
	}

	.guide-story__aside-inner {
		padding: 32px 27px;
	}

	.guide-story__aside h2 {
		font-size: clamp(33px, 4vw, 41px);
	}

	.guide-story__nav-link {
		font-size: 11px;
	}

	.guide-story__article-head {
		grid-template-columns: 38px minmax(0, 1fr);
	}

	.guide-story__number {
		width: 38px;
		height: 38px;
	}

	.guide-story__article h3 {
		font-size: clamp(25px, 3.4vw, 35px);
	}
}

@media (max-width: 760px) {
	.guide-story {
		margin-block: 42px;
		padding-block: 12px;
	}

	.guide-story__layout {
		grid-template-columns: 1fr;
		gap: 0;
		height: auto;
		background: #192a23;
		border: 1px solid rgba(255, 255, 255, 0.58);
		border-radius: 26px 8px 26px 8px;
		box-shadow: 0 24px 56px rgba(46, 39, 30, 0.16);
		overflow: hidden;
	}

	.guide-story__aside {
		background:
			radial-gradient(circle at 100% 0, rgba(217, 154, 30, 0.15), transparent 14rem),
			linear-gradient(145deg, rgba(18, 29, 25, 0.98), rgba(28, 49, 40, 0.97));
		border: 0;
		border-radius: 0;
		box-shadow: none;
	}

	.guide-story__aside-inner {
		height: auto;
		padding: 24px 20px 18px;
	}

	.guide-story__aside .section-kicker {
		margin-bottom: 10px;
		font-size: 9px;
	}

	.guide-story__aside h2 {
		max-width: 82%;
		margin-bottom: 11px;
		padding-right: 0;
		font-size: clamp(29px, 8.3vw, 38px);
		line-height: 1.02;
	}

	.guide-story--regional .guide-story__aside h2 {
		max-width: 94%;
		font-size: clamp(28px, 7.6vw, 35px);
	}

	.guide-story__intro {
		max-width: min(82%, 420px);
		margin-bottom: 16px;
		font-size: 12px;
		line-height: 1.5;
	}

	.guide-story__orbit {
		top: -55px;
		right: -58px;
		width: 176px;
		opacity: 0.38;
	}

	.guide-story__nav {
		display: grid;
		grid-template-columns: repeat(5, minmax(0, 1fr));
		gap: 8px;
		margin: 0;
		margin-bottom: 0;
		padding: 0;
		border-top: 0;
		overflow: visible;
	}

	.guide-story__nav-link {
		justify-content: center;
		min-height: 34px;
		padding: 0;
		background: rgba(255, 255, 255, 0.055);
		border: 1px solid rgba(255, 255, 255, 0.12);
		border-radius: 9px 3px 9px 3px;
		font-size: 0;
	}

	.guide-story__nav-link::after {
		display: none;
	}

	.guide-story__nav-link span {
		font-size: 10px;
	}

	.guide-story__nav-link:hover,
	.guide-story__nav-link:focus-visible,
	.guide-story__nav-link.is-active {
		padding: 0;
		color: #18231f;
		background: #f3aa4b;
		border-color: #f3aa4b;
		box-shadow: 0 7px 18px rgba(217, 154, 30, 0.17);
	}

	.guide-story__nav-link.is-active span {
		color: #18231f;
	}

	.guide-story__progress {
		margin-top: 14px;
	}

	.guide-story__content {
		height: clamp(420px, 58svh, 520px);
		padding-right: 10px;
		padding-bottom: 14px;
		padding-left: 10px;
		background:
			linear-gradient(145deg, rgba(255, 255, 255, 0.82), rgba(246, 242, 235, 0.66)),
			rgba(246, 242, 235, 0.74);
		border: 0;
		border-top: 1px solid rgba(255, 255, 255, 0.2);
		border-radius: 0;
		box-shadow: none;
		scroll-padding-top: 66px;
		scroll-snap-type: y proximity;
		touch-action: pan-y;
		overscroll-behavior-y: auto;
	}

	.guide-story__lead {
		display: none;
	}

	.guide-story__panel-head {
		min-height: 50px;
		margin-right: -10px;
		margin-bottom: 14px;
		margin-left: -10px;
		padding-inline: 16px;
	}

	.guide-story__article {
		margin-bottom: 14px;
		border-radius: 18px 6px 18px 6px;
		scroll-margin-top: 66px;
		scroll-snap-align: start;
		scroll-snap-stop: normal;
	}

	.guide-story__body {
		font-size: 14px;
		line-height: 1.72;
	}
}

@media (max-width: 520px) {
	.guide-story__panel-head {
		min-height: 52px;
	}

	.guide-story__panel-head > span {
		font-size: 8px;
	}

	.guide-story__panel-head small {
		font-size: 7px;
	}

	.guide-story__article {
		padding: 21px 18px;
	}

	.guide-story__article::before {
		left: 19px;
		width: 76px;
	}

	.guide-story__article-head {
		grid-template-columns: 35px minmax(0, 1fr);
		gap: 13px;
	}

	.guide-story__number {
		width: 35px;
		height: 35px;
	}

	.guide-story__article h3 {
		font-size: clamp(23px, 7.2vw, 31px);
	}

	.guide-story--regional .guide-story__article h3 {
		font-size: clamp(22px, 6.5vw, 28px);
	}

	.guide-story__checklist {
		grid-template-columns: 1fr;
	}

	.guide-story__finish {
		align-items: stretch;
		flex-direction: column;
	}

}

/* Shared symmetric arrow for CTA controls */

:is(
	.quick-order-form button,
	.product-card-action,
	.product-details-link,
	.drawer-service-links > a:first-child
) > span[aria-hidden="true"] {
	display: block;
	flex: 0 0 16px;
	width: 16px;
	height: 16px;
	background: currentColor;
	clip-path: polygon(0 43%, 60% 43%, 60% 12%, 100% 50%, 60% 88%, 60% 57%, 0 57%);
	font-size: 0;
	line-height: 0;
	transition: transform 180ms var(--ease-out);
}

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

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

	.company-intro-media img {
		position: absolute;
		width: 100%;
		height: 100%;
	}

	.has-reveal-motion .reveal-section,
	.has-reveal-motion .reveal-item,
	.has-reveal-motion .hero h1,
	.has-reveal-motion .hero > h1 + p,
	.has-reveal-motion .hero > p:last-child,
	.has-reveal-motion .hero-premium > .hero-kicker,
	.has-reveal-motion .hero-premium > .hero-actions,
	.has-reveal-motion .hero-premium > .hero-trust {
		opacity: 1;
		filter: none;
		transform: none;
	}

	.hero-premium .hero-ticker-track {
		animation: none;
	}
}
