:root {
	--oo-shop-accent: var(--oo-color-accent, #d4ff00);
	--oo-shop-accent-soft: #efffc2;
	--oo-shop-accent-text: #789600;
	--oo-shop-ink: var(--oo-color-ink, #0a0d0c);
	--oo-shop-text: #31383c;
	--oo-shop-muted: #697277;
	--oo-shop-surface: var(--oo-color-surface, #f5f6f6);
	--oo-shop-line: #d9dfe2;
	--oo-shop-border: var(--oo-shop-line);
	--oo-shop-white: #fff;
	--oo-shop-max: 1740px;
	--oo-shop-gutter: clamp(20px, 5vw, 98px);
	--oo-shop-section-space: clamp(76px, 8vw, 128px);
}

html { scroll-behavior: smooth; }

body.oo-webshop {
	margin: 0;
	background: var(--oo-shop-surface) !important;
	color: var(--oo-shop-ink) !important;
}

body.oo-webshop .wp-site-blocks {
	overflow: clip;
	background: var(--oo-shop-surface) !important;
}

/* The shop keeps its own focused, dark navigation without changing shared pages. */
body.oo-webshop .wp-site-blocks > .wp-block-template-part:first-child,
body.oo-webshop .wp-site-blocks > .wp-block-template-part:has(.oo-sport-header-row),
body.oo-webshop .wp-site-blocks > .wp-block-group:has(.oo-sport-header-row) {
	position: relative !important;
	inset: auto !important;
	z-index: 100 !important;
	width: 100% !important;
	background: var(--oo-shop-ink) !important;
	box-shadow: none !important;
}

body.oo-webshop .oo-sport-header,
body.oo-webshop header.oo-sport-header {
	position: relative !important;
	background: var(--oo-shop-ink) !important;
	background-color: var(--oo-shop-ink) !important;
	border-top: 3px solid var(--oo-shop-accent) !important;
	box-shadow: 0 1px 0 rgba(255, 255, 255, .09) !important;
}

body.oo-webshop .oo-webshop-payment-notice {
	box-sizing: border-box;
	position: relative;
	z-index: 99;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: clamp(14px, 2vw, 28px);
	width: 100%;
	min-height: 46px;
	padding: 9px var(--oo-shop-gutter);
	border-bottom: 1px solid #c9d2c8;
	background: #f1f5ee;
	color: var(--oo-shop-ink);
	font-size: 13px;
	font-weight: 650;
	line-height: 1.35;
	text-align: center;
}

body.oo-webshop .oo-webshop-payment-notice strong {
	font-weight: 900;
}

body.oo-webshop .oo-webshop-payment-notice > a {
	display: inline-flex;
	flex: 0 0 auto;
	align-items: center;
	gap: 7px;
	padding: 7px 13px;
	border: 1px solid var(--oo-shop-ink);
	border-radius: 999px;
	background: var(--oo-shop-accent);
	color: var(--oo-shop-ink) !important;
	font-size: 11px;
	font-weight: 900;
	letter-spacing: .06em;
	text-decoration: none !important;
	text-transform: uppercase;
}

body.oo-webshop .oo-webshop-payment-notice > a:hover,
body.oo-webshop .oo-webshop-payment-notice > a:focus-visible {
	background: #c8ee00;
	outline: 2px solid var(--oo-shop-ink);
	outline-offset: 2px;
}

@media (max-width: 620px) {
	body.oo-webshop .oo-webshop-payment-notice {
		justify-content: space-between;
		gap: 10px;
		padding: 8px 14px;
		font-size: 11px;
		text-align: left;
	}

	body.oo-webshop .oo-webshop-payment-notice > a {
		padding: 7px 10px;
		font-size: 10px;
	}
}

body.oo-webshop .oo-sport-header .wp-block-group,
body.oo-webshop .oo-sport-header [class*="wp-block-group"] {
	background: transparent !important;
}

body.oo-webshop .oo-sport-header-row {
	box-sizing: border-box !important;
	width: min(100%, 1840px) !important;
	min-height: 78px !important;
	margin-inline: auto !important;
	padding: 10px clamp(32px, 4vw, 68px) !important;
	align-items: center !important;
}

body.oo-webshop .oo-sport-header .oo-sport-header-logo-wrap,
body.oo-webshop .oo-sport-header .oo-sport-header-logo,
body.oo-webshop .oo-sport-header .wp-block-site-logo {
	display: flex !important;
	align-items: center !important;
	visibility: visible !important;
	opacity: 1 !important;
}

body.oo-webshop .oo-sport-header .oo-sport-header-logo-wrap {
	flex: 0 0 auto !important;
	width: 176px !important;
	max-width: 176px !important;
	padding: 0 !important;
}

body.oo-webshop .oo-sport-header img.custom-logo {
	display: block !important;
	width: 176px !important;
	max-width: 176px !important;
	height: auto !important;
	max-height: 44px !important;
	filter: none !important;
}

body.oo-webshop .oo-sport-header-nav a,
body.oo-webshop .oo-sport-header-nav .wp-block-navigation-item__label,
body.oo-webshop .oo-sport-header button,
body.oo-webshop .oo-sport-header svg {
	color: #fff !important;
	fill: currentColor;
}

body.oo-webshop .oo-sport-header .oo-sport-header-cart-link,
body.oo-webshop .oo-sport-header .oo-sport-header-cart-link svg {
	color: #fff !important;
}

body.oo-webshop .oo-sport-header .oo-sport-header-cart-badge {
	background: #d4ff00 !important;
	color: var(--oo-shop-ink) !important;
	-webkit-text-fill-color: var(--oo-shop-ink) !important;
	opacity: 1 !important;
}

body.oo-webshop .oo-sport-header .oo-sport-btn-pakkumist .wp-block-button__link {
	background: var(--oo-shop-accent) !important;
	color: var(--oo-shop-ink) !important;
	border: 1px solid var(--oo-shop-ink) !important;
}

/* The shop has its own focused navigation. Shared site navigation stays intact elsewhere. */
body.oo-webshop .oo-sport-nav-and-cta {
	flex: 1 1 auto !important;
	width: auto !important;
	display: flex !important;
	align-items: center !important;
	justify-content: flex-start !important;
	gap: 12px !important;
}

body.oo-webshop .oo-sport-nav-and-cta > :not(.oo-webshop-primary-nav):not(.oo-search-trigger):not(.oo-sport-language-switcher):not(.oo-sport-header-cart-link):not(.oo-webshop-mobile-cart-link) {
	display: none !important;
}

body.oo-webshop .oo-sport-nav-and-cta > .oo-sport-language-switcher {
	flex: 0 0 auto !important;
	display: flex !important;
	width: auto !important;
	margin: 0 0 0 4px !important;
}

body.oo-webshop .oo-sport-language-switcher__summary {
	min-width: 42px;
	min-height: 42px;
	justify-content: center;
	font-size: 11px;
}

body.oo-webshop .oo-sport-header-row > .oo-search-trigger,
body.oo-webshop .oo-sport-header-row > .oo-sport-mobile-menu-toggle {
	display: none !important;
}

body.oo-webshop .oo-sport-nav-and-cta > .oo-sport-header-cart-link {
	box-sizing: border-box !important;
	flex: 0 0 auto !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 9px !important;
	width: auto !important;
	min-width: 0 !important;
	height: 44px !important;
	margin: 0 0 0 18px !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
}

body.oo-webshop .oo-sport-nav-and-cta > .oo-sport-header-cart-link .oo-sport-header-cart-icon,
body.oo-webshop .oo-sport-nav-and-cta > .oo-sport-header-cart-link .oo-sport-header-cart-icon svg {
	flex: 0 0 18px !important;
	width: 18px !important;
	height: 18px !important;
}

body.oo-webshop .oo-sport-nav-and-cta > .oo-sport-header-cart-link .oo-sport-header-cart-badge {
	flex: 0 0 auto !important;
	min-width: 24px !important;
	height: 24px !important;
	padding: 0 7px !important;
	line-height: 1 !important;
}

.oo-webshop-mobile-cart-link {
	display: none !important;
}

.oo-webshop-menu-trigger:focus-visible,
body.oo-webshop .oo-sport-nav-and-cta > .oo-sport-header-cart-link:focus-visible,
.oo-webshop-mobile-cart-link:focus-visible {
	outline: 3px solid var(--oo-shop-accent) !important;
	outline-offset: 4px !important;
}

.oo-webshop-primary-nav {
	display: flex;
	align-items: center;
	gap: clamp(20px, 2.1vw, 38px);
	margin-left: clamp(42px, 7vw, 132px);
}

.oo-webshop-primary-nav > a {
	position: relative;
	padding: 12px 0;
	color: #f4f5f2 !important;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .085em;
	text-decoration: none;
	transition: color .2s ease;
}

.oo-webshop-primary-nav > .oo-webshop-hub-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-right: clamp(2px, .8vw, 12px);
	padding-right: clamp(18px, 2vw, 30px);
	border-right: 1px solid rgba(255,255,255,.22);
	color: rgba(255,255,255,.66) !important;
	font-size: 10px;
	letter-spacing: .11em;
}

.oo-webshop-primary-nav > .oo-webshop-hub-link::after { display: none; }
.oo-webshop-primary-nav > .oo-webshop-hub-link span { color: var(--oo-shop-accent); font-size: 15px; font-weight: 500; transition: transform .2s ease; }
.oo-webshop-primary-nav > .oo-webshop-hub-link b { font: inherit; }
.oo-webshop-primary-nav > .oo-webshop-hub-link:hover,
.oo-webshop-primary-nav > .oo-webshop-hub-link:focus-visible { color: #fff !important; }
.oo-webshop-primary-nav > .oo-webshop-hub-link:hover span,
.oo-webshop-primary-nav > .oo-webshop-hub-link:focus-visible span { transform: translateX(-3px); }

.oo-webshop-primary-nav > a::after {
	position: absolute;
	right: 0;
	bottom: 5px;
	left: 0;
	height: 2px;
	background: var(--oo-shop-accent);
	content: "";
	transform: scaleX(0);
	transition: transform .2s ease;
}

.oo-webshop-primary-nav > a:hover,
.oo-webshop-primary-nav > a:focus-visible,
.oo-webshop-primary-nav > a.is-active { color: var(--oo-shop-accent) !important; }
.oo-webshop-primary-nav > a:hover::after,
.oo-webshop-primary-nav > a:focus-visible::after,
.oo-webshop-primary-nav > a.is-active::after { transform: scaleX(1); }

.oo-webshop-menu-trigger {
	display: inline-flex !important;
	align-items: center;
	gap: 12px;
	min-height: 44px;
	padding: 0;
	border: 0;
	background: transparent !important;
	box-shadow: none !important;
	font: inherit;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .085em;
	color: #f4f5f2 !important;
	cursor: pointer;
}

body.oo-webshop .oo-sport-nav-and-cta > .oo-search-trigger {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 9px !important;
	min-width: 92px !important;
	height: 44px !important;
	margin: 0 0 0 auto !important;
	padding: 0 17px !important;
	border: 1px solid var(--oo-shop-accent) !important;
	border-radius: 10px !important;
	background: var(--oo-shop-accent) !important;
	color: var(--oo-shop-ink) !important;
	box-shadow: none !important;
	font-size: 11px !important;
	font-weight: 900 !important;
	letter-spacing: .08em !important;
	text-transform: uppercase !important;
}

body.oo-webshop .oo-sport-nav-and-cta > .oo-search-trigger svg {
	width: 18px !important;
	height: 18px !important;
	color: var(--oo-shop-ink) !important;
	fill: none !important;
	stroke: currentColor !important;
}

body.oo-webshop .oo-sport-nav-and-cta > .oo-search-trigger:hover,
body.oo-webshop .oo-sport-nav-and-cta > .oo-search-trigger:focus-visible {
	background: #fff !important;
	border-color: #fff !important;
}

.oo-webshop-menu-trigger i {
	position: relative;
	display: block;
	width: 20px;
	height: 20px;
	border: 1px solid rgba(255, 255, 255, .42);
	border-radius: 50%;
	background: transparent;
	transition: border-color .2s ease, transform .2s ease;
}

.oo-webshop-menu-trigger i::before,
.oo-webshop-menu-trigger i::after {
	position: absolute;
	top: 50%;
	left: 50%;
	background: #fff;
	content: "";
	transform-origin: center;
	transform: translate(-50%, -50%);
}

.oo-webshop-menu-trigger i::before { width: 8px; height: 1px; }
.oo-webshop-menu-trigger i::after { width: 1px; height: 8px; }
.oo-webshop-menu-trigger[aria-expanded="true"] i { border-color: #fff; transform: rotate(45deg); }

body.oo-webshop-drawer-open { overflow: hidden; }

.oo-webshop-drawer-backdrop {
	position: fixed;
	z-index: 9998;
	inset: 0;
	margin: 0 !important;
	background: rgba(5, 8, 8, .58);
	backdrop-filter: blur(3px);
}

.oo-webshop-drawer-backdrop[hidden] { display: none !important; }

.oo-webshop-drawer {
	position: fixed;
	z-index: 9999;
	top: 0;
	right: 0;
	left: auto;
	display: grid;
	grid-template-rows: auto minmax(0, 1fr) auto;
	width: min(640px, 100vw);
	height: 100dvh;
	margin: 0 !important;
	overflow: hidden;
	background: #fff;
	color: var(--oo-shop-ink);
	box-shadow: -24px 0 60px rgba(5, 8, 8, .18);
	transform: translateX(102%);
	transition: transform .38s cubic-bezier(.2, .7, .2, 1);
}

.oo-webshop-drawer,
.oo-webshop-drawer * { box-sizing: border-box; }

.oo-webshop-drawer.is-open { transform: translateX(0); }

.oo-webshop-drawer-head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 24px;
	padding: 22px 32px 15px;
	border-top: 5px solid var(--oo-shop-accent);
}

.oo-webshop-drawer-head p,
.oo-webshop-drawer-foot > span {
	margin: 0 0 7px;
	font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
	font-size: 10px;
	font-weight: 800;
	letter-spacing: .17em;
	text-transform: uppercase;
}

body.oo-webshop .oo-webshop-drawer-head h2 {
	margin: 0;
	color: var(--oo-shop-ink) !important;
	font-size: clamp(40px, 3.4vw, 52px);
	font-weight: 900;
	line-height: .9;
	letter-spacing: -.05em;
}

.oo-webshop-drawer-heading > span {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-top: 12px;
	color: #667077;
	font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
	font-size: 9px;
	font-weight: 800;
	letter-spacing: .16em;
	text-transform: uppercase;
}

.oo-webshop-drawer-heading > span i { display: block; width: 32px; height: 3px; background: var(--oo-shop-accent); }

.oo-webshop-drawer-close {
	position: relative;
	flex: 0 0 48px;
	width: 48px;
	height: 48px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: #fff;
	box-shadow: 0 8px 24px rgba(10, 13, 12, .14);
	cursor: pointer;
}

.oo-webshop-drawer-close span::before,
.oo-webshop-drawer-close span::after {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 18px;
	height: 2px;
	background: var(--oo-shop-ink);
	content: "";
	transform: translate(-50%, -50%) rotate(45deg);
}

.oo-webshop-drawer-close span::after { transform: translate(-50%, -50%) rotate(-45deg); }
.oo-webshop-drawer-body { min-height: 0; padding: 6px 32px 18px; overflow-y: auto; scrollbar-width: thin; scrollbar-color: #aeb5b8 transparent; }

.oo-webshop-drawer-all {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
	min-height: 76px;
	margin-bottom: 8px;
	padding: 14px 0 14px 18px;
	border-top: 1px solid var(--oo-shop-line);
	border-bottom: 1px solid var(--oo-shop-line);
	background: transparent;
	color: var(--oo-shop-ink) !important;
	text-decoration: none;
}

.oo-webshop-drawer-all::before { position: absolute; top: 14px; bottom: 14px; left: 0; width: 3px; background: var(--oo-shop-accent); content: ""; }
.oo-webshop-drawer-all-copy { display: flex; flex-direction: column; justify-content: center; gap: 4px; padding: 0; }
.oo-webshop-drawer-all small { font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; font-size: 9px; font-weight: 800; letter-spacing: .15em; }
.oo-webshop-drawer-all strong { font-size: 21px; font-weight: 900; line-height: 1; text-transform: uppercase; }
.oo-webshop-drawer-all em { font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; font-size: 8px; font-style: normal; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }
.oo-webshop-drawer-all b { padding: 0 4px 0 20px; color: var(--oo-shop-ink); font-size: 22px; font-weight: 500; transition: transform .2s ease; }
.oo-webshop-drawer-all:hover b { transform: translateX(4px); }

.oo-webshop-drawer-groups {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	column-gap: 24px;
	row-gap: 0;
}

.oo-webshop-drawer-groups a {
	position: relative;
	display: grid;
	grid-template-columns: 58px minmax(0, 1fr) 18px;
	grid-template-rows: 1fr 1fr;
	column-gap: 12px;
	min-height: 92px;
	padding: 8px 0;
	border: 0;
	border-bottom: 1px solid var(--oo-shop-line);
	background: transparent;
	color: var(--oo-shop-ink) !important;
	text-decoration: none;
	transition: opacity .16s ease;
}

.oo-webshop-drawer-groups a:hover,
.oo-webshop-drawer-groups a:focus-visible,
.oo-webshop-drawer-groups a.is-active { opacity: .82; outline: none; }
.oo-webshop-drawer-groups a:focus-visible { outline: 3px solid var(--oo-shop-accent); outline-offset: 3px; }
.oo-webshop-drawer-media { grid-column: 1; grid-row: 1 / 3; display: flex; align-items: center; justify-content: center; width: 58px; height: 76px; overflow: hidden; background: transparent; }
.oo-webshop-drawer-media img { display: block; width: 100%; height: 100%; object-fit: contain; object-position: center; }
.oo-webshop-drawer-media i { display: grid; place-items: center; width: 100%; height: 100%; color: rgba(10,13,12,.12); font-size: 74px; font-style: normal; font-weight: 900; }
.oo-webshop-drawer-groups small { grid-column: 2; grid-row: 1; align-self: end; margin-bottom: 3px; color: #737b80; font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; font-size: 8px; font-weight: 800; }
.oo-webshop-drawer-groups strong { grid-column: 2; grid-row: 2; align-self: start; padding: 0; color: var(--oo-shop-ink); font-size: 12px; font-weight: 900; line-height: 1.05; text-transform: uppercase; }
.oo-webshop-drawer-groups b { grid-column: 3; grid-row: 1 / 3; align-self: center; color: var(--oo-shop-ink); font-size: 17px; font-weight: 500; transition: transform .2s ease; }
.oo-webshop-drawer-groups a:hover b { transform: translateX(5px); }

.oo-webshop-drawer-foot {
	padding: 14px 32px max(16px, env(safe-area-inset-bottom));
	border-top: 1px solid var(--oo-shop-line);
	background: #fff;
}

.oo-webshop-drawer-foot > span { display: block; color: #656d71; }
.oo-webshop-drawer-foot > div { display: flex; gap: 24px; }
.oo-webshop-drawer-foot > div + span { margin-top: 13px; }
.oo-webshop-drawer-foot .oo-webshop-drawer-audiences { gap: 18px; }
.oo-webshop-drawer-foot a { color: var(--oo-shop-ink) !important; font-size: 13px; font-weight: 900; text-decoration: none; }
.oo-webshop-drawer-foot > .oo-webshop-drawer-hub-link {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-top: 14px;
	padding-top: 14px;
	border-top: 1px solid var(--oo-shop-line);
	font-size: 10px;
	letter-spacing: .09em;
}
.oo-webshop-drawer-hub-link span { color: var(--oo-shop-accent-text); font-size: 16px; font-weight: 500; }
.oo-webshop-drawer-hub-link b { font: inherit; }

.oo-webshop-main,
.oo-webshop-main * { box-sizing: border-box; }

.oo-webshop-main {
	margin-block-start: 0 !important;
	font-family: "Exo 2", sans-serif;
	background: var(--oo-shop-surface);
	color: var(--oo-shop-ink);
}

body.oo-webshop .wp-site-blocks > .oo-webshop-main {
	margin-top: 0 !important;
}

.oo-webshop-shell {
	width: min(calc(100% - (var(--oo-shop-gutter) * 2)), var(--oo-shop-max));
	margin-inline: auto;
}

.oo-webshop-eyebrow,
.oo-webshop-section-label {
	margin: 0 0 18px;
	color: var(--oo-shop-ink);
	font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
	font-size: 11px;
	font-weight: 800;
	line-height: 1.2;
	letter-spacing: .18em;
	text-transform: uppercase;
}

.oo-webshop-eyebrow {
	display: flex;
	align-items: center;
	gap: 16px;
}

.oo-webshop-eyebrow > span {
	width: 38px;
	height: 3px;
	background: var(--oo-shop-accent);
}

.oo-webshop-hero {
	position: relative;
	isolation: isolate;
	height: clamp(660px, calc(100svh - 74px), 820px);
	min-height: 660px;
	overflow: clip;
	background-color: #f4f6f6;
	background-image: url("images/hero-alpine-background-v2.webp");
	background-position: left center;
	background-repeat: no-repeat;
	background-size: cover;
}

.oo-webshop-hero::before,
.oo-webshop-hero::after {
	position: absolute;
	z-index: 0;
	inset: 0;
	content: "";
	pointer-events: none;
}

.oo-webshop-hero::before {
	-webkit-backdrop-filter: blur(1.5px) brightness(.92) saturate(.82);
	backdrop-filter: blur(1.5px) brightness(.92) saturate(.82);
	background:
		linear-gradient(90deg, rgba(222, 227, 224, .92) 0%, rgba(222, 227, 224, .86) 26%, rgba(222, 227, 224, .5) 40%, rgba(16, 22, 19, .1) 58%, rgba(16, 22, 19, 0) 72%);
}

.oo-webshop-hero::after {
	top: auto;
	height: 34%;
	background: linear-gradient(0deg, rgba(244, 246, 246, .2), rgba(244, 246, 246, 0));
}

.oo-webshop-hero-grid {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: minmax(390px, .62fr) minmax(0, 1.38fr);
	align-items: stretch;
	height: 100%;
	min-height: 0;
}

.oo-webshop-hero-copy {
	position: relative;
	z-index: 5;
	display: flex;
	flex-direction: column;
	justify-content: center;
	max-width: 590px;
	padding: clamp(76px, 9vh, 110px) 44px clamp(82px, 9vh, 112px) 0;
	color: var(--oo-shop-ink);
}

.oo-webshop-hero-copy::before,
.oo-webshop-hero-copy::after { display: none; }

.oo-webshop-hero .oo-webshop-eyebrow {
	margin-bottom: 26px;
	color: #30383b;
	font-family: "Exo 2", sans-serif;
	font-size: 11px;
	font-weight: 750;
	letter-spacing: .2em;
}

.oo-webshop-hero h1 {
	max-width: 10ch;
	margin: 0;
	color: var(--oo-shop-ink);
	font-size: clamp(54px, 4vw, 76px);
	font-weight: 900;
	line-height: .88;
	letter-spacing: -.052em;
	text-transform: uppercase;
}

.oo-webshop-hero h1 em {
	display: block;
	margin-top: .13em;
	color: var(--oo-shop-accent-text);
	font-size: .91em;
	font-style: normal;
	font-weight: 900;
	line-height: .94;
	letter-spacing: -.045em;
}

.oo-webshop-hero h1 em::after { display: none; }

.oo-webshop-hero h1.oo-webshop-hero-title-long {
	max-width: 15ch;
	font-size: clamp(38px, 3.05vw, 58px);
	line-height: .91;
}

.oo-webshop-hero-title-long > span { display: block; }
.oo-webshop-hero h1.oo-webshop-hero-title-long em.oo-webshop-hero-title-accent {
	margin: .08em 0 .04em;
	color: var(--oo-shop-accent);
	font-size: 1em;
	line-height: .94;
}

.oo-webshop-hero-copy > p:not(.oo-webshop-eyebrow, .oo-webshop-hero-progress) {
	max-width: 35ch;
	margin: 28px 0 0;
	color: #4d5559;
	font-family: "Exo 2", sans-serif;
	font-size: clamp(15px, 1vw, 17px);
	font-weight: 520;
	line-height: 1.62;
}

.oo-webshop-hero-actions {
	display: flex;
	align-items: center;
	margin-top: 34px;
}

.oo-webshop-button {
	display: inline-flex;
	align-items: center;
	justify-content: space-between;
	gap: 28px;
	min-width: 218px;
	min-height: 56px;
	padding: 0 24px;
	border: 1px solid var(--oo-shop-ink);
	border-radius: 10px;
	font-size: 13px;
	font-weight: 900;
	letter-spacing: .02em;
	text-decoration: none;
	transition: background-color .2s ease, color .2s ease, transform .2s ease;
}

.oo-webshop-button:hover,
.oo-webshop-button:focus-visible { transform: translateY(-2px); }
.oo-webshop-button-primary { background: var(--oo-shop-accent); color: var(--oo-shop-ink); }
.oo-webshop-button-primary:hover,
.oo-webshop-button-primary:focus-visible { background: var(--oo-shop-ink); color: #fff; }
.oo-webshop-button-secondary { background: #fff; color: var(--oo-shop-ink); }
.oo-webshop-button-secondary:hover,
.oo-webshop-button-secondary:focus-visible { background: var(--oo-shop-surface); color: var(--oo-shop-ink); }

.oo-webshop-hero .oo-webshop-button {
	min-width: 202px;
	min-height: 54px;
	padding: 0 24px;
	border-color: var(--oo-shop-accent);
	border-radius: 7px;
	background: var(--oo-shop-accent);
	color: var(--oo-shop-ink);
	font-size: 11px;
	letter-spacing: .105em;
}

.oo-webshop-hero .oo-webshop-button:hover,
.oo-webshop-hero .oo-webshop-button:focus-visible {
	border-color: var(--oo-shop-ink);
	background: var(--oo-shop-ink);
	color: #fff;
}

.oo-webshop-hero .oo-webshop-button span[aria-hidden="true"] {
	font-size: 18px;
	font-weight: 500;
	line-height: 1;
	transition: transform .24s cubic-bezier(.16, 1, .3, 1);
}

.oo-webshop-hero .oo-webshop-button:hover span[aria-hidden="true"],
.oo-webshop-hero .oo-webshop-button:focus-visible span[aria-hidden="true"] { transform: translateX(4px); }

.oo-webshop-hero-progress {
	position: absolute;
	right: 44px;
	bottom: 48px;
	left: 0;
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0;
	color: #697277;
	font-family: "Exo 2", sans-serif;
	font-size: 10px;
	font-weight: 800;
	letter-spacing: .12em;
}

.oo-webshop-hero-progress i {
	width: clamp(58px, 6vw, 94px);
	height: 2px;
	background: linear-gradient(90deg, var(--oo-shop-accent) 0 76%, rgba(10, 13, 12, .2) 76%);
}

.oo-webshop-hero-progress b,
.oo-webshop-hero-progress span { font: inherit; }

.oo-webshop-hero-visual {
	--oo-hero-slope: clamp(56px, 4.5vw, 78px);
	position: relative;
	z-index: 3;
	display: flex;
	height: 100%;
	min-height: 0;
	margin-right: calc((100vw - min(100vw - clamp(40px, 10vw, 196px), 1740px)) / -2);
	margin-left: -52px;
	padding: 0;
	overflow: visible;
	background: transparent;
}

.oo-webshop-hero-track {
	position: relative;
	z-index: 2;
	display: flex;
	flex: 1 1 auto;
	align-items: stretch;
	min-width: 0;
	height: 100%;
	overflow: visible;
	scrollbar-width: none;
}

.oo-webshop-hero-track::-webkit-scrollbar { display: none; }

.oo-webshop-hero-product {
	position: relative;
	display: block;
	flex: 1 1 25%;
	width: auto;
	min-width: 0;
	height: 100%;
	overflow: hidden;
	background: #aeb6b9;
	clip-path: polygon(var(--oo-hero-slope) 0, 100% 0, calc(100% - var(--oo-hero-slope)) 100%, 0 100%);
	text-decoration: none;
	transform: translate3d(0, 0, 0) scale(1);
	transform-origin: 50% 100%;
	backface-visibility: hidden;
	transition: transform .42s cubic-bezier(.16, 1, .3, 1), filter .32s ease;
}

.oo-webshop-hero-product + .oo-webshop-hero-product {
	margin-left: calc(var(--oo-hero-slope) * -1 - 1px);
}

.oo-webshop-hero-product:first-child {
	clip-path: polygon(0 0, 100% 0, calc(100% - var(--oo-hero-slope)) 100%, 0 100%);
}

.oo-webshop-hero-product:last-child {
	clip-path: polygon(var(--oo-hero-slope) 0, 100% 0, 100% 100%, 0 100%);
}

.oo-webshop-hero-product::after {
	position: absolute;
	z-index: 1;
	inset: 0;
	background:
		linear-gradient(180deg, rgba(5, 8, 8, .02) 22%, rgba(5, 8, 8, .12) 50%, rgba(5, 8, 8, .9) 100%),
		linear-gradient(90deg, rgba(5, 8, 8, .12), rgba(5, 8, 8, 0) 58%);
	content: "";
	opacity: .9;
	pointer-events: none;
	transition: opacity .34s ease;
}

.oo-webshop-hero-product-depth {
	position: absolute;
	z-index: 4;
	inset: 0;
	background: radial-gradient(
		circle at 50% 34%,
		rgba(226, 233, 230, .25) 0,
		rgba(19, 26, 23, .5) 46%,
		rgba(3, 7, 6, .7) 100%
	);
	opacity: 0;
	pointer-events: none;
	transition: opacity .2s ease;
}

.oo-webshop-hero-product img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
	filter: saturate(.84) brightness(.9) contrast(1.04);
	transform: scale(1.025);
	transition: filter .46s cubic-bezier(.16, 1, .3, 1), transform .58s cubic-bezier(.16, 1, .3, 1);
	user-select: none;
	-webkit-user-drag: none;
}

.oo-webshop-hero-product-1 img { object-position: 53% center; }
.oo-webshop-hero-product-2 img { object-position: 48% center; }
.oo-webshop-hero-product-3 img { object-position: 50% center; }
.oo-webshop-hero-product-4 img { object-position: 60% center; }

.oo-webshop-hero-product-copy {
	position: absolute;
	z-index: 5;
	inset: 0;
	color: #fff;
	pointer-events: none;
}

.oo-webshop-hero-product-line,
.oo-webshop-hero-product-copy strong,
.oo-webshop-hero-product-copy > span {
	position: absolute;
	right: 20px;
	left: calc(var(--oo-hero-slope) + 22px);
}

.oo-webshop-hero-product-line {
	bottom: 130px;
	display: block;
	width: 44px;
	height: 3px;
	background: var(--oo-shop-accent);
	transform-origin: left;
	transition: width .38s cubic-bezier(.16, 1, .3, 1), transform .38s cubic-bezier(.16, 1, .3, 1);
}

.oo-webshop-hero-product-copy strong {
	bottom: 88px;
	display: block;
	color: #fff;
	font-size: clamp(22px, 1.7vw, 30px);
	font-weight: 900;
	line-height: 1;
	letter-spacing: -.025em;
	text-shadow: 0 9px 24px rgba(0, 0, 0, .36);
	text-transform: uppercase;
	transition: color .28s ease, transform .38s cubic-bezier(.16, 1, .3, 1);
}

.oo-webshop-hero-product-copy > span {
	bottom: 56px;
	display: inline-flex;
	align-items: center;
	gap: 13px;
	width: max-content;
	max-width: calc(100% - var(--oo-hero-slope) - 42px);
	color: rgba(255, 255, 255, .92);
	font-size: 9px;
	font-weight: 850;
	letter-spacing: .15em;
	white-space: nowrap;
	text-transform: uppercase;
	transition: color .28s ease, transform .38s cubic-bezier(.16, 1, .3, 1);
}

.oo-webshop-hero-product-copy > span b {
	font-size: 17px;
	font-weight: 500;
	line-height: 1;
	transition: transform .32s cubic-bezier(.16, 1, .3, 1);
}

.oo-webshop-hero-product:first-child .oo-webshop-hero-product-line,
.oo-webshop-hero-product:first-child .oo-webshop-hero-product-copy strong,
.oo-webshop-hero-product:first-child .oo-webshop-hero-product-copy > span { left: 42px; }

.oo-webshop-hero-product:last-child .oo-webshop-hero-product-line,
.oo-webshop-hero-product:last-child .oo-webshop-hero-product-copy strong,
.oo-webshop-hero-product:last-child .oo-webshop-hero-product-copy > span { right: 28px; }

.oo-webshop-hero-product.is-active { z-index: 3; }
.oo-webshop-hero-product:hover,
.oo-webshop-hero-product:focus-visible { z-index: 6; outline: none; }

@media (hover: hover) and (pointer: fine) and (min-width: 1025px) {
	.oo-webshop-hero-track { background: #060a09; }
	.oo-webshop-hero-product-depth { opacity: 1; }

	.oo-webshop-hero-product:hover,
	.oo-webshop-hero-product:focus-visible {
		filter: drop-shadow(0 14px 18px rgba(3, 7, 6, .46));
		transform: translate3d(0, -7px, 0) scale(1.022);
	}

	.oo-webshop-hero-product:hover .oo-webshop-hero-product-depth,
	.oo-webshop-hero-product:focus-visible .oo-webshop-hero-product-depth { opacity: 0; }
}

.oo-webshop-hero-product:hover img,
.oo-webshop-hero-product:focus-visible img {
	filter: saturate(1) brightness(1) contrast(1.04);
	transform: scale(1.07);
}

.oo-webshop-hero-product:hover::after,
.oo-webshop-hero-product:focus-visible::after { opacity: .72; }

.oo-webshop-hero-product:hover .oo-webshop-hero-product-line,
.oo-webshop-hero-product:focus-visible .oo-webshop-hero-product-line {
	width: 62px;
	transform: translateX(3px);
}

.oo-webshop-hero-product:hover .oo-webshop-hero-product-copy strong,
.oo-webshop-hero-product:focus-visible .oo-webshop-hero-product-copy strong {
	color: var(--oo-shop-accent);
	transform: translateX(4px);
}

.oo-webshop-hero-product:hover .oo-webshop-hero-product-copy > span,
.oo-webshop-hero-product:focus-visible .oo-webshop-hero-product-copy > span { transform: translateX(4px); }

.oo-webshop-hero-product:hover .oo-webshop-hero-product-copy > span b,
.oo-webshop-hero-product:focus-visible .oo-webshop-hero-product-copy > span b { transform: translateX(4px); }

.oo-webshop-hero-product:focus-visible { box-shadow: inset 0 0 0 3px var(--oo-shop-accent); }

.oo-webshop-hero-toolbar {
	position: absolute;
	z-index: 7;
	right: 18px;
	bottom: 10px;
}

.oo-webshop-hero-controls { display: none; gap: 8px; }

.oo-webshop-hero-controls button {
	display: grid;
	place-items: center;
	width: 44px;
	height: 44px;
	padding: 0;
	border: 1px solid #aeb7bb;
	border-radius: 50%;
	background: rgba(255, 255, 255, .9);
	color: var(--oo-shop-ink);
	box-shadow: 0 8px 24px rgba(5, 8, 8, .12);
	cursor: pointer;
	transition: background-color .2s ease, color .2s ease, border-color .2s ease, transform .2s ease;
}

.oo-webshop-hero-controls button:hover,
.oo-webshop-hero-controls button:focus-visible {
	border-color: var(--oo-shop-ink);
	background: var(--oo-shop-ink);
	color: #fff;
	outline: none;
	transform: translateY(-1px);
}

.oo-webshop-hero-controls svg {
	width: 18px;
	height: 18px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;
}


.oo-webshop-proof { padding: 0; background: var(--oo-shop-ink); color: #fff; }
.oo-webshop-proof-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0; }
.oo-webshop-proof article { display: flex; align-items: center; justify-content: center; gap: 18px; min-width: 0; min-height: 112px; padding: 30px clamp(22px, 3vw, 48px); border-left: 1px solid rgba(255,255,255,.14); text-align: left; }
.oo-webshop-proof article:first-child { border-left: 0; }
.oo-webshop-proof-icon { flex: 0 0 42px; display: grid; place-items: center; width: 42px; height: 42px; color: var(--oo-shop-accent); }
.oo-webshop-proof-icon svg { width: 27px; height: 27px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linejoin: round; }
.oo-webshop-proof-copy { display: flex; flex: 0 1 340px; flex-direction: column; justify-content: center; gap: 3px; min-width: 0; color: #fff; }
.oo-webshop-proof-copy strong { color: #fff; font-size: 17px; font-weight: 850; line-height: 1.25; }
.oo-webshop-proof-copy > span { color: #fff; font-size: 12px; font-weight: 600; line-height: 1.5; }

.oo-webshop-brands { padding: var(--oo-shop-section-space) 0; background: #fff; }
.oo-webshop-brands > .oo-webshop-shell > h2,
.oo-webshop-section-heading h2,
.oo-webshop-products-head h2,
.oo-webshop-products-head h1,
.oo-webshop-service h2 {
	margin: 0;
	font-size: clamp(42px, 4.4vw, 78px);
	font-weight: 900;
	line-height: .94;
	letter-spacing: -.045em;
	text-transform: uppercase;
}

.oo-webshop-brand-layout {
	display: grid;
	grid-template-columns: minmax(0, 1.5fr) minmax(340px, 1fr);
	height: 620px;
	gap: 22px;
	margin-top: 48px;
}
.oo-webshop-brand-side { display: grid; height: 620px; grid-template-rows: minmax(0, 1fr) minmax(0, .72fr); gap: 22px; }
.oo-webshop-brand-feature { position: relative; display: block; min-height: 300px; overflow: hidden; background: #dfe3e4; color: #fff; text-decoration: none; }
.oo-webshop-brand-feature-craft { height: 620px; min-height: 620px; }
.oo-webshop-brand-feature img { width: 100%; height: 100%; object-fit: contain; transition: transform .4s ease; }
.oo-webshop-brand-feature:hover img { transform: scale(1.035); }
.oo-webshop-brand-feature:focus-visible,
.oo-webshop-all-card:focus-visible {
	outline: 3px solid var(--oo-shop-accent);
	outline-offset: 4px;
}
.oo-webshop-brand-overlay { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(5,8,8,.05), rgba(5,8,8,.76)); }
.oo-webshop-brand-copy { position: absolute; z-index: 2; right: 34px; bottom: 32px; left: 34px; display: flex; flex-direction: column; }
.oo-webshop-brand-copy small { font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; font-size: 10px; font-weight: 800; letter-spacing: .15em; }
.oo-webshop-brand-copy strong { margin: 5px 0 10px; font-size: clamp(42px, 5vw, 84px); font-weight: 900; line-height: .9; letter-spacing: -.05em; }
.oo-webshop-brand-feature-musai .oo-webshop-brand-copy strong { font-size: clamp(36px, 3.4vw, 58px); }
.oo-webshop-brand-copy > span { font-size: 12px; font-weight: 800; letter-spacing: .06em; }

.oo-webshop-all-card {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
	min-height: 210px;
	padding: 32px;
	overflow: hidden;
	background: var(--oo-shop-accent);
	color: var(--oo-shop-ink);
	text-decoration: none;
}
.oo-webshop-all-card > span { font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; font-size: 10px; font-weight: 800; letter-spacing: .15em; }
.oo-webshop-all-card > strong { max-width: 320px; margin-top: 10px; font-size: clamp(30px, 3vw, 48px); font-weight: 900; line-height: .95; letter-spacing: -.04em; }
.oo-webshop-all-card > b { position: absolute; right: 32px; bottom: 28px; font-size: 30px; transition: transform .25s ease; }
.oo-webshop-all-card > i { position: absolute; right: -14px; top: -25px; color: rgba(10,13,12,.07); font-size: 150px; font-style: normal; font-weight: 900; letter-spacing: -.12em; }
.oo-webshop-all-card:hover > b { transform: translateX(7px); }

.oo-webshop-categories { padding: var(--oo-shop-section-space) 0; scroll-margin-top: 84px; background: #fff; }
.oo-webshop-section-heading { display: flex; align-items: end; justify-content: space-between; gap: 30px; margin-bottom: 42px; }
.oo-webshop-categories-heading > div { min-width: 0; }
.oo-webshop-categories-heading h2 { max-width: 1120px; font-size: clamp(38px, 3.8vw, 68px); text-wrap: balance; }
.oo-webshop-categories-intro { max-width: 900px; margin: 20px 0 0; color: #555e62; font-size: clamp(15px, 1.25vw, 19px); font-weight: 520; line-height: 1.55; }
.oo-webshop-section-heading > a,
.oo-webshop-section-heading > button { padding: 0 0 8px; border: 0; border-bottom: 2px solid var(--oo-shop-ink); border-radius: 0; background: transparent; color: var(--oo-shop-ink); font-family: inherit; font-size: 12px; font-weight: 900; line-height: 1.2; text-decoration: none; cursor: pointer; }
.oo-webshop-section-heading > button span { display: inline-block; margin-left: 6px; transition: transform .2s ease; }
.oo-webshop-section-heading > button:hover span,
.oo-webshop-section-heading > button:focus-visible span { transform: translateX(4px); }
.oo-webshop-section-heading > button:focus-visible { outline: 3px solid var(--oo-shop-accent); outline-offset: 5px; }
.oo-webshop-category-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: clamp(8px, 1vw, 16px); }
.oo-webshop-category-grid a { position: relative; display: block; min-width: 0; aspect-ratio: 4 / 5; padding: 0; overflow: hidden; border: 0; border-radius: 0; background: #1b1e1e; color: #fff !important; text-decoration: none; isolation: isolate; }
.oo-webshop-category-grid a:hover,
.oo-webshop-category-grid a:focus-within { color: var(--oo-shop-accent) !important; }
.oo-webshop-category-grid a:focus-visible { outline: 3px solid var(--oo-shop-accent); outline-offset: 4px; }
.oo-webshop-category-media { position: absolute; z-index: -2; inset: 0; display: block; width: 100%; height: 100%; overflow: hidden; background: #1b1e1e; }
.oo-webshop-category-media img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; transform: scale(1.01); transition: transform .38s cubic-bezier(.22,.61,.36,1), filter .28s ease; }
.oo-webshop-category-grid a:hover .oo-webshop-category-media img,
.oo-webshop-category-grid a:focus-visible .oo-webshop-category-media img { filter: saturate(1.08) contrast(1.03); transform: scale(1.045); }
.oo-webshop-category-media i { display: grid; place-items: center; width: 100%; height: 100%; color: rgba(10,13,12,.1); font-size: 110px; font-style: normal; font-weight: 900; }
.oo-webshop-category-shade { position: absolute; z-index: -1; inset: 0; display: block; background: linear-gradient(180deg, rgba(5,8,8,.02) 34%, rgba(5,8,8,.2) 58%, rgba(5,8,8,.9) 100%); transition: background .25s ease; }
.oo-webshop-category-index { position: absolute; z-index: 2; top: 20px; left: 20px; display: flex; align-items: center; gap: 10px; padding: 0; background: transparent; color: #fff; font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; font-size: 10px; font-weight: 800; letter-spacing: .14em; }
.oo-webshop-category-index::after { width: 26px; height: 2px; background: var(--oo-shop-accent); content: ""; }
.oo-webshop-category-grid strong { position: absolute; z-index: 2; right: 58px; bottom: 24px; left: 20px; display: block; min-height: 0; padding: 0; border: 0; color: inherit; font-size: clamp(17px, 1.35vw, 23px); font-weight: 900; line-height: 1.02; text-wrap: balance; text-transform: uppercase; transition: color .18s ease; }
.oo-webshop-category-arrow { position: absolute; z-index: 2; right: 20px; bottom: 21px; color: inherit; font-size: 26px; line-height: 1; transition: transform .22s ease; }
.oo-webshop-category-grid a:hover .oo-webshop-category-arrow,
.oo-webshop-category-grid a:focus-visible .oo-webshop-category-arrow { transform: translateX(5px); }

.oo-webshop-sports { padding: clamp(86px, 7vw, 118px) 0; background: radial-gradient(circle at 82% 12%, #111a18 0, #090d0c 38%, #070a09 100%); color: #fff; }
.oo-webshop-sports .oo-webshop-section-label { color: var(--oo-shop-accent); }
body.oo-webshop .oo-webshop-main .oo-webshop-sports h2 { max-width: 760px; color: #fff !important; font-size: clamp(46px, 4.2vw, 68px); }
.oo-webshop-sports-heading { display: grid; grid-template-columns: minmax(0, 1fr) minmax(220px, 270px) 264px; align-items: end; gap: clamp(28px, 3vw, 48px); margin-bottom: clamp(36px, 4vw, 56px); }
.oo-webshop-sports-description { max-width: 36ch; margin: 0 0 7px; padding-left: clamp(24px, 3vw, 44px); border-left: 1px solid rgba(255,255,255,.42); color: #aeb7b9; font-size: clamp(14px, 1vw, 17px); line-height: 1.55; }
body.oo-webshop .oo-webshop-main .oo-webshop-sports .oo-webshop-sports-cta { display: inline-flex; align-items: center; justify-content: space-between; gap: 28px; min-width: 260px; min-height: 54px; margin-bottom: 4px; padding: 0 22px; border: 1px solid var(--oo-shop-accent); border-radius: 5px; color: var(--oo-shop-accent) !important; font-size: 11px; font-weight: 900; letter-spacing: .06em; text-decoration: none; transition: background-color .2s ease, color .2s ease, transform .2s ease; }
body.oo-webshop .oo-webshop-main .oo-webshop-sports-cta:hover,
body.oo-webshop .oo-webshop-main .oo-webshop-sports-cta:focus-visible { background: var(--oo-shop-accent); color: var(--oo-shop-ink) !important; transform: translateY(-2px); }
.oo-webshop-sports-cta span { font-size: 19px; transition: transform .2s ease; }
.oo-webshop-sports-cta:hover span,
.oo-webshop-sports-cta:focus-visible span { transform: translateX(4px); }
.oo-webshop-sport-grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: clamp(10px, 1vw, 16px); }
.oo-webshop-sport-grid > a { position: relative; grid-column: span 3; display: block; min-width: 0; min-height: clamp(230px, 17vw, 310px); overflow: hidden; border-radius: 3px; background: #202524; color: #fff !important; text-decoration: none; isolation: isolate; }
.oo-webshop-sport-grid > a:nth-child(1) { grid-column: span 7; min-height: clamp(330px, 27vw, 430px); }
.oo-webshop-sport-grid > a:nth-child(2) { grid-column: span 5; min-height: clamp(330px, 27vw, 430px); }
.oo-webshop-sport-media { position: absolute; z-index: -2; inset: 0; display: block; overflow: hidden; }
.oo-webshop-sport-media img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; filter: saturate(.92) contrast(1.04); transform: scale(1.01); transition: transform .45s cubic-bezier(.22,.61,.36,1), filter .3s ease; }
.oo-webshop-sport-grid > a:nth-child(1) .oo-webshop-sport-media img { object-position: 52% 52%; }
.oo-webshop-sport-grid > a:nth-child(2) .oo-webshop-sport-media img { object-position: 62% 48%; }
.oo-webshop-sport-grid > a:nth-child(3) .oo-webshop-sport-media img { object-position: 40% 45%; }
.oo-webshop-sport-grid > a:nth-child(4) .oo-webshop-sport-media img { object-position: 46% 50%; }
.oo-webshop-sport-grid > a:nth-child(5) .oo-webshop-sport-media img { object-position: 42% 48%; }
.oo-webshop-sport-grid > a:nth-child(6) .oo-webshop-sport-media img { object-position: 58% 50%; }
.oo-webshop-sport-media i { display: grid; place-items: center; width: 100%; height: 100%; color: rgba(255,255,255,.08); font-size: 90px; font-style: normal; font-weight: 900; }
.oo-webshop-sport-shade { position: absolute; z-index: -1; inset: 0; background: linear-gradient(180deg, rgba(5,8,8,.08) 12%, rgba(5,8,8,.06) 36%, rgba(5,8,8,.86) 100%); transition: background .28s ease; }
.oo-webshop-sport-kicker { position: absolute; top: 20px; left: 20px; display: flex; align-items: center; gap: 10px; color: rgba(255,255,255,.82); font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; font-size: 8px; font-weight: 800; letter-spacing: .14em; }
.oo-webshop-sport-kicker small { font: inherit; }
.oo-webshop-sport-kicker::after { width: 24px; height: 2px; background: var(--oo-shop-accent); content: ""; }
.oo-webshop-sport-copy { position: absolute; right: 64px; bottom: 24px; left: 20px; display: grid; gap: 8px; }
.oo-webshop-sport-copy strong { color: inherit; font-size: clamp(17px, 1.4vw, 24px); font-weight: 900; line-height: 1.02; text-transform: uppercase; transition: color .18s ease; }
.oo-webshop-sport-copy > span { color: rgba(255,255,255,.72); font-size: 11px; font-weight: 650; line-height: 1.3; }
.oo-webshop-sport-grid > a.is-featured .oo-webshop-sport-copy { right: 80px; bottom: 30px; left: 26px; }
.oo-webshop-sport-grid > a.is-featured .oo-webshop-sport-copy strong { font-size: clamp(26px, 2.25vw, 40px); }
.oo-webshop-sport-grid > a.is-featured .oo-webshop-sport-kicker { top: 24px; left: 26px; }
.oo-webshop-sport-arrow { position: absolute; right: 20px; bottom: 21px; display: grid; place-items: center; width: 34px; height: 34px; border: 1px solid rgba(255,255,255,.55); border-radius: 50%; color: inherit; font-size: 21px; line-height: 1; transition: border-color .2s ease, background-color .2s ease, color .2s ease, transform .2s ease; }
.oo-webshop-sport-grid > a.is-featured .oo-webshop-sport-arrow { right: 26px; bottom: 29px; }
.oo-webshop-sport-grid > a:hover,
.oo-webshop-sport-grid > a:focus-visible { color: var(--oo-shop-accent) !important; }
.oo-webshop-sport-grid > a:hover .oo-webshop-sport-media img,
.oo-webshop-sport-grid > a:focus-visible .oo-webshop-sport-media img { filter: saturate(1.03) contrast(1.04); transform: scale(1.035); }
.oo-webshop-sport-grid > a:hover .oo-webshop-sport-shade,
.oo-webshop-sport-grid > a:focus-visible .oo-webshop-sport-shade { background: linear-gradient(180deg, rgba(5,8,8,.02) 10%, rgba(5,8,8,.04) 34%, rgba(5,8,8,.9) 100%); }
.oo-webshop-sport-grid > a:hover .oo-webshop-sport-arrow,
.oo-webshop-sport-grid > a:focus-visible .oo-webshop-sport-arrow { border-color: var(--oo-shop-accent); background: var(--oo-shop-accent); color: var(--oo-shop-ink); transform: translateX(4px); }
.oo-webshop-sport-grid > a:focus-visible { outline: 3px solid var(--oo-shop-accent); outline-offset: 4px; }

.oo-webshop-products { padding: clamp(78px, 8vw, 128px) 0; background: var(--oo-shop-surface); }
.oo-webshop-products-head { display: flex; align-items: end; justify-content: space-between; gap: 40px; margin-bottom: 42px; }
.oo-webshop-filter { display: flex; align-items: center; gap: 8px; }
.oo-webshop-filter a,
.oo-webshop-filter a:visited {
	min-width: 88px;
	padding: 12px 18px;
	border: 1px solid #bfc7cb;
	border-radius: 8px;
	background: var(--oo-shop-white);
	color: var(--oo-shop-ink);
	font-size: 11px;
	font-weight: 900;
	letter-spacing: .06em;
	text-align: center;
	text-decoration: none;
	transition: border-color .18s ease, background-color .18s ease, color .18s ease, transform .18s ease;
}
.oo-webshop-filter a:hover,
.oo-webshop-filter a:focus-visible {
	border-color: var(--oo-shop-accent);
	background: var(--oo-shop-accent-soft);
	color: var(--oo-shop-ink);
}
.oo-webshop-filter a.is-active,
.oo-webshop-filter a.is-active:visited,
.oo-webshop-filter a.is-active:hover,
.oo-webshop-filter a.is-active:focus-visible {
	border-color: var(--oo-shop-accent);
	background: var(--oo-shop-accent);
	color: var(--oo-shop-ink);
}
.oo-webshop-filter a:focus-visible {
	outline: 3px solid rgba(212, 255, 0, .4);
	outline-offset: 3px;
}

.oo-webshop-product-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; }
.oo-webshop-product-placeholder { display: grid; place-items: center; width: 100%; height: 100%; color: rgba(10,13,12,.1); font-size: 78px; font-weight: 900; }
body.oo-webshop .oo-webshop-product-card { flex-direction: column !important; }
body.oo-webshop .oo-webshop-product-card .oo-product-card__link { flex: 1 1 auto !important; height: auto !important; min-height: 0 !important; }
body.oo-webshop .oo-webshop-product-card .oo-product-card__body { padding-bottom: .45rem !important; }
body.oo-webshop .oo-webshop-product-card .oo-product-card__colors { width: auto !important; margin-inline: var(--oo-product-card-pad-x) !important; padding-inline: 2px !important; }
body.oo-webshop .oo-webshop-product-card .oo-product-card__swatch { cursor: pointer !important; }
body.oo-webshop .oo-webshop-product-card .oo-webshop-card-cta-link {
	display: block !important;
	width: auto !important;
	margin: 0 !important;
	padding: .25rem var(--oo-product-card-pad-x) var(--oo-product-card-pad-bottom) !important;
	color: var(--oo-product-card-muted) !important;
	box-sizing: border-box !important;
	text-decoration: none !important;
}
body.oo-webshop .oo-webshop-product-card .oo-webshop-card-cta-link:focus-visible {
	outline: 3px solid var(--oo-shop-accent) !important;
	outline-offset: -3px !important;
}
body.oo-webshop .oo-product-card .oo-product-card__media .oo-product-card__image { object-fit: contain !important; object-position: center center !important; }
body.oo-webshop .oo-webshop-product-card.is-brand-musai .oo-product-card__media .oo-product-card__image {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
	object-position: center top !important;
}
body.oo-webshop .oo-webshop-product-card.has-model-media .oo-product-card__media { background: #e8eaeb !important; }
body.oo-webshop .oo-webshop-product-card.has-model-media .oo-product-card__media .oo-product-card__image {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
	object-position: center top !important;
}
.oo-webshop-reset { display: table; margin: 40px auto 0; padding-bottom: 6px; border-bottom: 2px solid var(--oo-shop-ink); color: var(--oo-shop-ink); font-size: 12px; font-weight: 900; text-decoration: none; }
.oo-webshop-empty { padding: 58px; border: 1px solid var(--oo-shop-line); background: #fff; text-align: center; }
.oo-webshop-empty strong { font-size: 26px; }
.oo-webshop-empty p { margin: 10px 0 0; color: var(--oo-shop-muted); }

.oo-webshop-products-more {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 18px;
	width: fit-content;
	min-height: 52px;
	margin: 44px auto 0;
	padding: 0 22px;
	border: 1px solid var(--oo-shop-ink);
	border-radius: var(--oo-cta-radius, 9px);
	background: var(--oo-cta-neon, var(--oo-shop-accent));
	color: var(--oo-shop-ink) !important;
	font-size: 12px;
	font-weight: 900;
	letter-spacing: .06em;
	text-decoration: none;
	transition: background-color .18s ease, color .18s ease;
}

.oo-webshop-products-more:hover,
.oo-webshop-products-more:focus-visible {
	border-color: var(--oo-shop-ink);
	background: var(--oo-cta-neon-hover, #c8ee00);
	color: var(--oo-shop-ink) !important;
	box-shadow: 0 10px 26px rgba(17, 22, 17, .14);
	outline: 0;
	transform: translateY(-1px);
}

/* Focused catalogue header: context and filters without a duplicate hero. */
.oo-webshop-catalog-meta {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	margin-bottom: 18px;
	padding-bottom: 16px;
	border-bottom: 1px solid var(--oo-shop-line);
}
.oo-webshop-breadcrumb {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px;
	margin: 0;
	color: #5f686b;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .07em;
	text-transform: uppercase;
}

.oo-webshop-breadcrumb a,
.oo-webshop-breadcrumb a:visited { color: var(--oo-shop-ink) !important; text-decoration: none; }
.oo-webshop-breadcrumb a:hover,
.oo-webshop-breadcrumb a:focus-visible { color: #526300 !important; }
.oo-webshop-catalog-count {
	flex: 0 0 auto;
	color: var(--oo-shop-ink);
	font-size: 11px;
	font-weight: 900;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.oo-webshop-catalog-products { padding-top: clamp(24px, 3vw, 42px); }
.oo-webshop-catalog-products .oo-webshop-products-head h1 { font-size: clamp(38px, 4.2vw, 68px); }

.oo-webshop-catalog-toolbar {
	display: flex;
	align-items: stretch;
	justify-content: space-between;
	gap: 28px;
	margin-bottom: 24px;
	padding-bottom: 22px;
	border-bottom: 1px solid #bcc4c7;
}

.oo-webshop-audience-filter { display: flex; align-items: center; gap: clamp(20px, 2.6vw, 42px); min-width: 0; }
.oo-webshop-audience-filter a { position: relative; padding: 13px 0; color: #596267 !important; font-size: 12px; font-weight: 900; letter-spacing: .06em; text-decoration: none; text-transform: uppercase; }
.oo-webshop-audience-filter a > span { margin-left: 5px; color: #8a9397; font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; font-size: 9px; font-weight: 800; letter-spacing: .04em; }
.oo-webshop-audience-filter a.is-active > span { color: var(--oo-shop-ink); }
.oo-webshop-audience-filter a::after { position: absolute; right: 0; bottom: 3px; left: 0; height: 3px; background: var(--oo-shop-accent); content: ""; opacity: 0; transform: scaleX(.35); transition: opacity .18s ease, transform .18s ease; }
.oo-webshop-audience-filter a:hover,
.oo-webshop-audience-filter a:focus-visible,
.oo-webshop-audience-filter a.is-active { color: var(--oo-shop-ink) !important; }
.oo-webshop-audience-filter a.is-active::after { opacity: 1; transform: scaleX(1); }

.oo-webshop-category-filter { display: grid; grid-template-columns: auto minmax(150px, auto) 24px; align-items: center; gap: 14px; min-height: 48px; padding: 0; border: 0; background: transparent; color: var(--oo-shop-ink); font-family: inherit; text-align: left; cursor: pointer; }
.oo-webshop-category-filter > span { color: #697277; font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; font-size: 9px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.oo-webshop-category-filter strong { font-size: 13px; font-weight: 900; text-transform: uppercase; }
.oo-webshop-category-filter i { font-size: 21px; font-style: normal; font-weight: 500; transition: transform .2s ease; }
.oo-webshop-category-filter:hover i,
.oo-webshop-category-filter:focus-visible i { transform: translateX(5px); }
.oo-webshop-category-filter:focus-visible { outline: 3px solid var(--oo-shop-accent); outline-offset: 5px; }

.oo-webshop-sport-filter { display: flex; align-items: center; gap: 8px; margin: 4px 0 clamp(34px, 4vw, 52px); overflow-x: auto; padding: 0 0 10px; scrollbar-width: thin; scrollbar-color: #bac1c4 transparent; }
.oo-webshop-sport-filter-label { flex: 0 0 auto; margin-right: 10px; color: #899195; font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; font-size: 9px; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
.oo-webshop-sport-filter a { flex: 0 0 auto; padding: 8px 11px; border: 1px solid transparent; border-radius: 999px; color: #5f686c !important; font-size: 10px; font-weight: 850; letter-spacing: .04em; text-decoration: none; }
.oo-webshop-sport-filter a:hover,
.oo-webshop-sport-filter a:focus-visible { border-color: #aeb7ba; color: var(--oo-shop-ink) !important; }
.oo-webshop-sport-filter a.is-active { border-color: var(--oo-shop-ink); background: var(--oo-shop-ink); color: #fff !important; }
.oo-webshop-sport-filter .oo-webshop-sport-filter-reset { padding-inline: 0; border: 0; border-bottom: 1px solid #aeb7ba; border-radius: 0; color: #70787c !important; font-size: 9px; }
.oo-webshop-sport-filter .oo-webshop-sport-filter-reset:hover,
.oo-webshop-sport-filter .oo-webshop-sport-filter-reset:focus-visible { border-color: var(--oo-shop-ink); color: var(--oo-shop-ink) !important; }

.oo-webshop-pagination {
	display: grid;
	grid-template-columns: minmax(120px, 1fr) auto minmax(120px, 1fr);
	align-items: center;
	gap: 24px;
	margin-top: 54px;
	padding-top: 30px;
	border-top: 1px solid #bac1c4;
	font-size: 11px;
	font-weight: 900;
	letter-spacing: .07em;
	text-transform: uppercase;
}

.oo-webshop-pagination-edge { display: flex; min-width: 0; }
.oo-webshop-pagination-edge--previous { grid-column: 1; justify-content: flex-start; }
.oo-webshop-pagination-edge--next { grid-column: 3; justify-content: flex-end; }
.oo-webshop-pagination-pages { grid-column: 2; display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; }
.oo-webshop-pagination-page,
.oo-webshop-pagination-page:visited { display: grid; place-items: center; width: 42px; height: 42px; border: 1px solid #c5ccce; border-radius: 50%; background: transparent; color: var(--oo-shop-ink) !important; font-size: 12px; line-height: 1; text-decoration: none; transition: border-color .18s ease, background-color .18s ease, color .18s ease, transform .18s ease; }
.oo-webshop-pagination-page:hover,
.oo-webshop-pagination-page:focus-visible { border-color: var(--oo-shop-ink); background: #fff; color: var(--oo-shop-ink) !important; outline: 0; transform: translateY(-2px); }
.oo-webshop-pagination-page.is-current { border-color: var(--oo-shop-accent); background: var(--oo-shop-accent); color: var(--oo-shop-ink) !important; }
.oo-webshop-pagination-ellipsis { display: grid; place-items: center; width: 24px; height: 42px; color: #717a7e; font-size: 16px; letter-spacing: 0; }
.oo-webshop-pagination-direction,
.oo-webshop-pagination-direction:visited { display: inline-flex; align-items: center; gap: 10px; min-height: 42px; color: var(--oo-shop-ink) !important; text-decoration: none; }
.oo-webshop-pagination-direction span[aria-hidden="true"] { font-size: 18px; font-weight: 500; transition: transform .18s ease; }
.oo-webshop-pagination-direction:hover,
.oo-webshop-pagination-direction:focus-visible { color: #526300 !important; }
.oo-webshop-pagination-edge--previous .oo-webshop-pagination-direction:hover span[aria-hidden="true"],
.oo-webshop-pagination-edge--previous .oo-webshop-pagination-direction:focus-visible span[aria-hidden="true"] { transform: translateX(-4px); }
.oo-webshop-pagination-edge--next .oo-webshop-pagination-direction:hover span[aria-hidden="true"],
.oo-webshop-pagination-edge--next .oo-webshop-pagination-direction:focus-visible span[aria-hidden="true"] { transform: translateX(4px); }

.oo-webshop-service { padding: clamp(80px, 8vw, 132px) 0; background: var(--oo-shop-surface); }
.oo-webshop-service-grid { display: grid; grid-template-columns: minmax(330px, .88fr) minmax(0, 1.12fr); gap: clamp(60px, 10vw, 160px); }
.oo-webshop-service-intro > p:not(.oo-webshop-section-label) { max-width: 560px; margin: 24px 0 0; color: #50585c; font-size: 15px; font-weight: 620; line-height: 1.6; }
.oo-webshop-service-intro .oo-webshop-button { width: fit-content; margin-top: 30px; }
.oo-webshop-service-items { border-top: 1px solid #aeb6ba; }
.oo-webshop-service-items > div { display: grid; grid-template-columns: 44px minmax(140px, .48fr) 1fr; gap: 24px; align-items: baseline; padding: 28px 0; border-bottom: 1px solid #aeb6ba; }
.oo-webshop-service-items span { font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; font-size: 10px; font-weight: 800; }
.oo-webshop-service-items strong { font-size: 18px; font-weight: 850; }
.oo-webshop-service-items p { margin: 0; color: #50585c; font-size: 14px; line-height: 1.55; }

/* Keep the shop palette authoritative when shared hub styles are present. */
body.oo-webshop .oo-webshop-main h1,
body.oo-webshop .oo-webshop-main h2,
body.oo-webshop .oo-webshop-main h3 { color: var(--oo-shop-ink) !important; }
body.oo-webshop .oo-webshop-main .oo-webshop-hero h1 { color: var(--oo-shop-ink) !important; }
body.oo-webshop .oo-webshop-main .oo-webshop-hero-copy h1 em { color: var(--oo-shop-accent-text) !important; font-style: normal !important; }
body.oo-webshop .oo-webshop-main .oo-webshop-hero-copy h1.oo-webshop-hero-title-long em.oo-webshop-hero-title-accent { color: var(--oo-shop-accent) !important; }
body.oo-webshop .oo-webshop-main .oo-webshop-hero .oo-webshop-button-primary:hover,
body.oo-webshop .oo-webshop-main .oo-webshop-hero .oo-webshop-button-primary:focus-visible {
	border-color: var(--oo-shop-ink);
	background: var(--oo-shop-ink);
	color: #fff !important;
}
body.oo-webshop .oo-webshop-main .oo-webshop-button,
body.oo-webshop .oo-webshop-main .oo-webshop-section-heading > a,
body.oo-webshop .oo-webshop-main .oo-webshop-section-heading > button,
body.oo-webshop .oo-webshop-main .oo-webshop-filter a,
body.oo-webshop .oo-webshop-main .oo-webshop-product-link,
body.oo-webshop .oo-webshop-main .oo-webshop-products-more,
body.oo-webshop .oo-webshop-main .oo-webshop-reset,
body.oo-webshop .oo-webshop-main .oo-webshop-all-card { color: var(--oo-shop-ink) !important; }
body.oo-webshop .oo-webshop-main .oo-webshop-brand-feature { color: #fff !important; }
body.oo-webshop .oo-webshop-main .oo-webshop-filter a.is-active { color: var(--oo-shop-ink) !important; }

body.oo-webshop .oo-webshop-main .oo-webshop-service-cta,
body.oo-webshop .oo-webshop-main .oo-webshop-products-more {
	border-color: var(--oo-shop-ink) !important;
	background: var(--oo-cta-neon, var(--oo-shop-accent)) !important;
	color: var(--oo-shop-ink) !important;
}

body.oo-webshop .oo-webshop-main .oo-webshop-service-cta:hover,
body.oo-webshop .oo-webshop-main .oo-webshop-service-cta:focus-visible,
body.oo-webshop .oo-webshop-main .oo-webshop-products-more:hover,
body.oo-webshop .oo-webshop-main .oo-webshop-products-more:focus-visible {
	border-color: var(--oo-shop-ink) !important;
	background: var(--oo-cta-neon-hover, #c8ee00) !important;
	color: var(--oo-shop-ink) !important;
}

@media (max-width: 1180px) {
	body.oo-webshop .oo-sport-header-row { padding-inline: 28px !important; }
	.oo-webshop-primary-nav { gap: 20px; margin-left: 38px; }
	.oo-webshop-shell { width: min(100% - 56px, 1200px); }
	.oo-webshop-sports-heading { grid-template-columns: minmax(0, 1fr) 320px; gap: 24px 44px; }
	.oo-webshop-sports-heading > div { grid-row: 1 / 3; }
	.oo-webshop-sports-description { grid-column: 2; padding-left: 28px; }
	body.oo-webshop .oo-webshop-main .oo-webshop-sports-cta { grid-column: 2; width: 100%; }
	.oo-webshop-hero-grid { grid-template-columns: minmax(330px, .66fr) minmax(0, 1.34fr); }
	.oo-webshop-hero-copy { padding-right: 32px; }
	.oo-webshop-hero-visual { margin-right: -28px; margin-left: -38px; }
	.oo-webshop-hero h1 { font-size: clamp(48px, 5.1vw, 64px); }
	.oo-webshop-hero-product-copy strong { font-size: 20px; }
	.oo-webshop-hero-product-copy > span { gap: 8px; font-size: 8px; }
	.oo-webshop-hero-product:last-child .oo-webshop-hero-product-copy > span { right: 18px; }
	.oo-webshop-hero-product-copy > span b { font-size: 16px; }
	.oo-webshop-product-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 1024px) {
	body.oo-webshop .oo-sport-nav-and-cta > .oo-sport-header-cart-link { display: none !important; }
	body.oo-webshop .oo-sport-nav-and-cta > .oo-webshop-mobile-cart-link {
		position: relative;
		box-sizing: border-box;
		flex: 0 0 42px;
		display: inline-flex !important;
		align-items: center;
		justify-content: center;
		width: 42px;
		min-width: 42px;
		height: 42px;
		margin-left: 0;
		padding: 0;
		border: 1px solid rgba(255, 255, 255, .32);
		border-radius: 9px;
		background: transparent;
		color: #fff !important;
		text-decoration: none;
	}
	body.oo-webshop .oo-webshop-mobile-cart-link > span,
	body.oo-webshop .oo-webshop-mobile-cart-link svg {
		display: block;
		width: 18px;
		height: 18px;
		fill: currentColor;
	}
	body.oo-webshop .oo-webshop-mobile-cart-link b {
		position: absolute;
		top: -5px;
		right: -5px;
		display: grid;
		place-items: center;
		min-width: 18px;
		height: 18px;
		padding: 0 4px;
		border-radius: 999px;
		background: var(--oo-shop-accent);
		color: var(--oo-shop-ink);
		font-size: 9px;
		font-weight: 900;
		line-height: 1;
	}
	.oo-webshop-hero,
	.oo-webshop-hero-grid,
	.oo-webshop-hero-visual { min-height: 0; }
	.oo-webshop-hero { height: auto; background-position: left top; }
	.oo-webshop-hero::before {
		background: linear-gradient(90deg, rgba(222, 227, 224, .95) 0%, rgba(222, 227, 224, .88) 54%, rgba(222, 227, 224, .4) 100%);
	}
	.oo-webshop-hero-grid { grid-template-columns: 1fr; height: auto; }
	.oo-webshop-hero-copy { min-height: 500px; max-width: 680px; padding: 62px 0 86px; }
	.oo-webshop-hero h1 { max-width: 12ch; }
	.oo-webshop-hero-progress { right: auto; bottom: 34px; width: 190px; }
	.oo-webshop-hero-visual {
		--oo-hero-slope: 42px;
		height: 560px;
		margin: 0 -28px;
		padding: 12px 0 72px;
	}
	.oo-webshop-hero-track {
		overflow-x: auto;
		padding-inline: 15vw;
		scroll-padding-inline: 15vw;
		scroll-snap-type: x mandatory;
	}
	.oo-webshop-hero-product,
	.oo-webshop-hero-product.is-active {
		flex: 0 0 70vw;
		scroll-snap-align: center;
		transform: none;
	}
	.oo-webshop-hero-product img { filter: saturate(.72) brightness(.78) contrast(1.05); transform: scale(1.025); }
	.oo-webshop-hero-product.is-active img { filter: saturate(1) brightness(1) contrast(1.04); transform: scale(1.06); }
	.oo-webshop-hero-product.is-active::after { opacity: .7; }
	.oo-webshop-hero-product.is-active .oo-webshop-hero-product-line { width: 62px; }
	.oo-webshop-hero-product.is-active .oo-webshop-hero-product-copy strong { color: var(--oo-shop-accent); }
	.oo-webshop-hero-controls { display: flex; }
}

@media (max-width: 900px) {
	.oo-webshop-sport-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.oo-webshop-sport-grid > a,
	.oo-webshop-sport-grid > a:nth-child(1),
	.oo-webshop-sport-grid > a:nth-child(2) { grid-column: span 1; min-height: 360px; }
	.oo-webshop-brand-layout { grid-template-columns: 1fr; height: auto; }
	.oo-webshop-brand-feature-craft { height: 520px; min-height: 520px; }
	.oo-webshop-brand-side { grid-template-columns: 1fr 1fr; grid-template-rows: 300px; height: 300px; }
	.oo-webshop-brand-feature-musai,
	.oo-webshop-all-card { height: 300px; }
	.oo-webshop-category-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.oo-webshop-service-grid { grid-template-columns: 1fr; }
}

@media (max-width: 781px) {
	body.oo-webshop .oo-sport-header-row {
		display: flex !important;
		align-items: center !important;
		justify-content: flex-start !important;
		min-height: 64px !important;
		padding: 8px 16px !important;
		column-gap: 8px !important;
	}
	body.oo-webshop .oo-sport-header .oo-sport-header-logo-wrap { width: 140px !important; max-width: 140px !important; }
	body.oo-webshop .oo-sport-header img.custom-logo { width: 140px !important; max-width: 140px !important; }
	body.oo-webshop .oo-sport-nav-and-cta {
		flex: 0 0 auto !important;
		order: 3;
		justify-content: flex-end !important;
		width: auto !important;
		margin: 0 !important;
		gap: 8px !important;
	}
	body.oo-webshop .oo-sport-header-row > .oo-search-trigger {
		position: static !important;
		inset: auto !important;
		align-self: center !important;
		box-sizing: border-box !important;
		flex: 0 0 40px !important;
		display: inline-flex !important;
		align-items: center !important;
		justify-content: center !important;
		width: 40px !important;
		min-width: 40px !important;
		height: 40px !important;
		min-height: 40px !important;
		max-height: 40px !important;
		order: 2;
		margin: 0 0 0 auto !important;
		padding: 0 !important;
		border: 0 !important;
		border-radius: 0 !important;
		background: transparent !important;
		box-shadow: none !important;
		color: #fff !important;
		line-height: 1 !important;
		transform: none !important;
	}
	body.oo-webshop .oo-sport-header-row > .oo-search-trigger span { display: none !important; }
	body.oo-webshop .oo-sport-header-row > .oo-search-trigger svg { width: 20px !important; height: 20px !important; color: #fff !important; fill: none !important; stroke: currentColor !important; }
	body.oo-webshop .oo-sport-nav-and-cta > .oo-search-trigger { min-width: 42px !important; width: 42px !important; height: 42px !important; margin-left: 0 !important; padding: 0 !important; }
	body.oo-webshop .oo-sport-nav-and-cta > .oo-search-trigger span { display: none !important; }
	.oo-webshop-menu-trigger { box-sizing: border-box; justify-content: center; width: 40px; min-width: 40px; min-height: 40px; padding: 0; border: 0; border-radius: 0; background: transparent !important; box-shadow: none !important; }
	.oo-webshop-menu-trigger span { display: none; }
	.oo-webshop-menu-trigger i {
		width: 20px;
		height: 14px;
		border: 0;
		border-radius: 0;
		background: linear-gradient(#fff, #fff) center / 100% 2px no-repeat;
		transform: none;
		transition: background-size .2s ease;
	}
	.oo-webshop-menu-trigger i::before,
	.oo-webshop-menu-trigger i::after {
		left: 0;
		width: 20px;
		height: 2px;
		background: #fff;
		transform: none;
		transition: top .2s ease, bottom .2s ease, transform .2s ease;
	}
	.oo-webshop-menu-trigger i::before { top: 0; }
	.oo-webshop-menu-trigger i::after { top: auto; bottom: 0; }
	.oo-webshop-menu-trigger[aria-expanded="true"] i { background-size: 0 2px; transform: none; }
	.oo-webshop-menu-trigger[aria-expanded="true"] i::before { top: 6px; transform: rotate(45deg); }
	.oo-webshop-menu-trigger[aria-expanded="true"] i::after { bottom: 6px; transform: rotate(-45deg); }
	.oo-webshop-primary-nav { order: 2; gap: 0; margin: 0; }
	.oo-webshop-primary-nav > a { display: none; }
	.oo-webshop-primary-nav > .oo-webshop-hub-link { display: none; }
	body.oo-webshop .oo-sport-nav-and-cta > .oo-webshop-mobile-cart-link {
		order: 1;
		flex-basis: 40px;
		width: 40px;
		min-width: 40px;
		height: 40px;
		border: 0;
		border-radius: 0;
		background: transparent;
		box-shadow: none;
	}
	body.oo-webshop .oo-webshop-mobile-cart-link > span,
	body.oo-webshop .oo-webshop-mobile-cart-link svg { width: 20px; height: 20px; }
	body.oo-webshop .oo-webshop-mobile-cart-link b { top: 1px; right: -1px; min-width: 16px; height: 16px; padding: 0 3px; font-size: 8px; }
	body.oo-webshop .oo-sport-nav-and-cta > .oo-search-trigger { order: 3; }
	body.oo-webshop .oo-sport-nav-and-cta > .oo-sport-language-switcher { order: 4; width: 34px !important; margin: 0 !important; }
	body.oo-webshop .oo-sport-language-switcher__summary { min-width: 34px; min-height: 40px; font-size: 9px; }
	body.oo-webshop .oo-sport-language-switcher__caret { display: none; }
	body.oo-webshop .oo-sport-language-switcher__menu { right: 0; min-width: 74px; }
	.oo-webshop-drawer-head { padding: 18px 18px 16px; }
	body.oo-webshop .oo-webshop-drawer-head h2 { font-size: 44px; }
	.oo-webshop-drawer-close { width: 44px; height: 44px; flex-basis: 44px; }
	.oo-webshop-drawer-body { padding: 6px 18px 16px; }
	.oo-webshop-drawer-all { min-height: 72px; padding: 12px 0 12px 16px; }
	.oo-webshop-drawer-all-copy { padding: 0; }
	.oo-webshop-drawer-all strong { font-size: 20px; }
	.oo-webshop-drawer-groups a { min-height: 86px; }
	.oo-webshop-drawer-media { width: 54px; height: 70px; min-height: 0; }
	.oo-webshop-drawer-groups strong { padding: 0; font-size: 12px; }
	.oo-webshop-drawer-foot { padding: 14px 18px max(16px, env(safe-area-inset-bottom)); }
	.oo-webshop-shell { width: min(100% - 34px, 680px); }
	.oo-webshop-catalog-meta { align-items: flex-start; flex-direction: column; gap: 8px; margin-bottom: 12px; padding-bottom: 14px; }
	.oo-webshop-catalog-products { padding-top: 22px; }
	.oo-webshop-catalog-products .oo-webshop-products-head h1 { max-width: 100%; font-size: clamp(26px, 8vw, 42px); overflow-wrap: normal; word-break: normal; hyphens: auto; text-wrap: balance; }
	.oo-webshop-catalog-toolbar { align-items: stretch; flex-direction: column; gap: 14px; }
	.oo-webshop-audience-filter { width: 100%; overflow-x: auto; padding-bottom: 2px; scrollbar-width: none; }
	.oo-webshop-audience-filter::-webkit-scrollbar { display: none; }
	.oo-webshop-audience-filter a { flex: 0 0 auto; }
	.oo-webshop-category-filter { grid-template-columns: auto minmax(0, 1fr) 24px; width: 100%; padding-top: 8px; border-top: 1px solid #d1d6d8; }
	.oo-webshop-sport-filter { width: calc(100% + 17px); margin-right: -17px; padding-right: 17px; scrollbar-width: none; }
	.oo-webshop-sport-filter::-webkit-scrollbar { display: none; }
	.oo-webshop-pagination { grid-template-columns: 42px minmax(0, 1fr) 42px; gap: 10px; padding-top: 22px; font-size: 9px; }
	.oo-webshop-pagination-pages { gap: 6px; }
	.oo-webshop-pagination-page,
	.oo-webshop-pagination-page:visited { width: 38px; height: 38px; font-size: 11px; }
	.oo-webshop-pagination-ellipsis { width: 14px; height: 38px; }
	.oo-webshop-pagination-direction { justify-content: center; width: 42px; }
	.oo-webshop-pagination-direction-label { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
	.oo-webshop-hero-copy { min-height: 0; padding: 48px 0 54px; }
	.oo-webshop-hero h1 { max-width: 11ch; font-size: clamp(36px, 10vw, 48px); line-height: .92; }
	.oo-webshop-hero-copy > p:not(.oo-webshop-eyebrow, .oo-webshop-hero-progress) { font-size: 15px; }
	.oo-webshop-hero-actions { align-items: stretch; }
	.oo-webshop-hero-progress { display: none; }
	.oo-webshop-hero-visual { --oo-hero-slope: 0px; display: block; height: auto; margin: 0; padding: 0 0 48px; }
	.oo-webshop-hero-track { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; height: auto; padding: 0; overflow: visible; scroll-padding-inline: 0; scroll-snap-type: none; }
	.oo-webshop-hero-product,
	.oo-webshop-hero-product.is-active { width: 100%; min-width: 0; height: auto; aspect-ratio: 4 / 5; margin: 0; clip-path: none; scroll-snap-align: none; }
	.oo-webshop-hero-product + .oo-webshop-hero-product { margin-left: 0; }
	.oo-webshop-hero-product img,
	.oo-webshop-hero-product.is-active img { filter: saturate(.92) brightness(.9) contrast(1.04); transform: scale(1.02); }
	.oo-webshop-hero-product::after,
	.oo-webshop-hero-product.is-active::after { opacity: .88; }
	.oo-webshop-hero-product-line,
	.oo-webshop-hero-product:first-child .oo-webshop-hero-product-line { right: 16px; bottom: 76px; left: 16px; width: 28px; height: 2px; }
	.oo-webshop-hero-product-copy strong,
	.oo-webshop-hero-product:first-child .oo-webshop-hero-product-copy strong { right: 14px; bottom: 46px; left: 16px; font-size: clamp(15px, 4.4vw, 18px); }
	.oo-webshop-hero-product-copy > span,
	.oo-webshop-hero-product:first-child .oo-webshop-hero-product-copy > span { right: 14px; bottom: 20px; left: 16px; max-width: calc(100% - 30px); gap: 7px; font-size: 7px; letter-spacing: .1em; }
	.oo-webshop-hero-product:last-child .oo-webshop-hero-product-line,
	.oo-webshop-hero-product:last-child .oo-webshop-hero-product-copy strong,
	.oo-webshop-hero-product:last-child .oo-webshop-hero-product-copy > span { right: 14px; left: 16px; }
	.oo-webshop-hero-toolbar { display: none; }
	.oo-webshop-proof-grid { grid-template-columns: 1fr; gap: 0; }
	.oo-webshop-proof article,
	.oo-webshop-proof article:first-child,
	.oo-webshop-proof article:last-child { justify-content: center; gap: 16px; min-height: 0; padding: 24px 16px; border-left: 0; border-top: 1px solid rgba(255,255,255,.14); }
	.oo-webshop-proof article:first-child { border-top: 0; }
	.oo-webshop-proof-icon { flex-basis: 44px; width: 44px; height: 44px; margin: 0; }
	.oo-webshop-proof-copy { flex-basis: 300px; }
	.oo-webshop-brand-side { grid-template-columns: 1fr; grid-template-rows: 300px 220px; height: 542px; }
	.oo-webshop-brand-feature-craft { height: 460px; min-height: 460px; }
	.oo-webshop-brand-feature-musai { height: 300px; }
	.oo-webshop-all-card { height: 220px; min-height: 220px; }
	.oo-webshop-products-head,
	.oo-webshop-section-heading { align-items: flex-start; flex-direction: column; }
	.oo-webshop-sports-heading { display: flex; gap: 24px; }
	body.oo-webshop .oo-webshop-main .oo-webshop-sports h2 { font-size: clamp(38px, 10.8vw, 52px); }
	.oo-webshop-sports-description { max-width: 42ch; padding-left: 0; border-left: 0; font-size: 15px; }
	body.oo-webshop .oo-webshop-main .oo-webshop-sports-cta { width: min(100%, 360px); }
	.oo-webshop-filter { width: 100%; }
	.oo-webshop-filter a { flex: 1; min-width: 0; padding-inline: 8px; }
	.oo-webshop-product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
	.oo-webshop-category-grid {
		grid-template-columns: none;
		grid-auto-flow: column;
		grid-auto-columns: min(78vw, 320px);
		width: calc(100% + 17px);
		margin-right: -17px;
		padding-right: 17px;
		overflow-x: auto;
		overscroll-behavior-inline: contain;
		scroll-snap-type: x mandatory;
		scrollbar-width: none;
	}
	.oo-webshop-category-grid::-webkit-scrollbar { display: none; }
	.oo-webshop-category-grid a { scroll-snap-align: start; }
	.oo-webshop-sport-grid {
		grid-template-columns: none;
		grid-auto-flow: column;
		grid-auto-columns: min(82vw, 360px);
		width: calc(100% + 17px);
		margin-right: -17px;
		padding-right: 17px;
		overflow-x: auto;
		overscroll-behavior-inline: contain;
		scroll-snap-type: x mandatory;
		scrollbar-width: none;
	}
	.oo-webshop-sport-grid::-webkit-scrollbar { display: none; }
	.oo-webshop-sport-grid > a { scroll-snap-align: start; }
	.oo-webshop-sport-grid > a,
	.oo-webshop-sport-grid > a:nth-child(1),
	.oo-webshop-sport-grid > a:nth-child(2) { grid-column: auto; min-height: 390px; }
	.oo-webshop-service-items > div { grid-template-columns: 34px 1fr; gap: 10px 16px; }
	.oo-webshop-service-items p { grid-column: 2; }
	.oo-webshop-service-intro .oo-webshop-button { width: 100%; }
}

@media (max-width: 520px) {
	.oo-webshop-drawer-foot .oo-webshop-drawer-audiences { gap: 14px; }
	.oo-webshop-drawer-foot a { font-size: 11px; }
	.oo-webshop-drawer-groups { grid-template-columns: 1fr; gap: 0; }
	.oo-webshop-drawer-groups a { grid-template-columns: 48px minmax(0, 1fr) 18px; min-height: 74px; padding: 5px 0; }
	.oo-webshop-drawer-media { width: 48px; height: 64px; min-height: 0; }
	.oo-webshop-drawer-all { grid-template-columns: minmax(0, 1fr) auto; min-height: 68px; padding: 10px 0 10px 15px; }
	.oo-webshop-drawer-all-copy { gap: 4px; padding: 0; }
	.oo-webshop-drawer-all strong { font-size: 19px; }
	.oo-webshop-drawer-all em { font-size: 7px; }
	.oo-webshop-drawer-all b { padding-left: 16px; font-size: 20px; }
	.oo-webshop-drawer-heading > span { margin-top: 9px; font-size: 7px; letter-spacing: .11em; }
	.oo-webshop-drawer-heading > span i { width: 22px; }
	body.oo-webshop .oo-webshop-drawer-head h2 { font-size: 40px; }
	.oo-webshop-hero-copy { padding-top: 42px; padding-bottom: 46px; }
	.oo-webshop-category-grid { gap: 10px; }
	.oo-webshop-category-grid strong { right: 48px; bottom: 18px; left: 16px; min-height: 0; padding: 0; font-size: 16px; }
	.oo-webshop-category-index { top: 16px; left: 16px; padding: 0; font-size: 8px; }
	.oo-webshop-category-index::after { width: 22px; }
	.oo-webshop-category-arrow { right: 16px; bottom: 16px; font-size: 22px; }
	.oo-webshop-sport-kicker,
	.oo-webshop-sport-grid > a.is-featured .oo-webshop-sport-kicker { top: 16px; left: 16px; }
	.oo-webshop-sport-copy,
	.oo-webshop-sport-grid > a.is-featured .oo-webshop-sport-copy { right: 60px; bottom: 18px; left: 16px; }
	.oo-webshop-sport-copy strong,
	.oo-webshop-sport-grid > a.is-featured .oo-webshop-sport-copy strong { font-size: 20px; }
	.oo-webshop-sport-arrow,
	.oo-webshop-sport-grid > a.is-featured .oo-webshop-sport-arrow { right: 16px; bottom: 17px; width: 32px; height: 32px; font-size: 20px; }
}

@media (max-width: 380px) {
	body.oo-webshop .oo-sport-header .oo-sport-header-logo-wrap { width: 116px !important; max-width: 116px !important; }
	body.oo-webshop .oo-sport-header img.custom-logo { width: 116px !important; max-width: 116px !important; }
	.oo-webshop-menu-trigger span { display: none; }
	.oo-webshop-product-grid { grid-template-columns: 1fr; gap: 14px; }
	.oo-webshop-hero-actions { flex-direction: column; }
	.oo-webshop-hero .oo-webshop-button { width: 100%; }
}

body.oo-webshop .oo-product-price--shop .oo-product-price__unit {
	display: block;
	color: #5f696f;
	font-size: 0.66rem;
	font-weight: 700;
	line-height: 1.25;
}

body.oo-webshop-product .oo-product-price--single .oo-product-price__unit {
	font-size: 0.78rem;
	color: #778086;
}

/* E-pood kasutab sama footerikomponenti ja samu värvitokeneid nagu ülejäänud sait. */
.oo-webshop-footer {
	position: relative;
	margin: 0 !important;
	padding: 0 !important;
	background: var(--oo-color-surface-dark, #080d0b) !important;
	color: var(--oo-color-on-dark, #f5f7f6);
	font-family: "Exo 2", sans-serif !important;
}

.oo-webshop-footer > .oo-sport-footer {
	box-sizing: border-box;
	width: 100%;
	margin: 0 auto !important;
	padding: .4rem 20px !important;
}

.oo-webshop-footer .oo-webshop-footer-contacts {
	width: min(100%, 28rem);
}

.oo-webshop-footer .oo-sport-mobile-menu-footer-link,
.oo-webshop-footer .oo-sport-mobile-menu-footer-link:visited {
	color: var(--oo-color-link-on-dark, #f5f7f6) !important;
	font-family: "Exo 2", sans-serif !important;
}

.oo-webshop-footer .oo-sport-mobile-menu-footer-link:hover,
.oo-webshop-footer .oo-sport-mobile-menu-footer-link:focus-visible {
	color: var(--oo-color-link-on-dark-hover, #d4ff00) !important;
}

.oo-webshop-footer .oo-sport-mobile-menu-footer-static {
	color: var(--oo-color-on-dark-muted, #aab2ae) !important;
}

.oo-webshop-footer .oo-sport-mobile-menu-footer-contact-list {
	padding-bottom: 10px;
}

/*
 * Desktopis kasutab jagatud footerikomponent nelja veergu. Hoia selle
 * konteiner sama lai nagu ülejäänud saidi footer; mobiili 28rem piirang
 * muudaks iga desktopiveeru nii kitsaks, et tekst murduks täht-tähelt.
 */
@media (min-width: 782px) {
	.oo-webshop-footer > .oo-sport-footer {
		padding: 2.25rem 0 !important;
	}

	.oo-webshop-footer .oo-webshop-footer-contacts {
		width: min(1500px, calc(100% - 72px));
		max-width: none;
	}
}

/* E-poe ostuinfo lehed. */
.oo-webshop-legal-main {
	background: var(--oo-shop-surface);
	color: var(--oo-shop-ink);
}

.oo-webshop-legal-hero {
	padding: clamp(56px, 7vw, 112px) 0 clamp(48px, 6vw, 88px);
	background: #fff;
	border-bottom: 1px solid var(--oo-shop-line);
}

.oo-webshop-legal-hero .oo-webshop-breadcrumb {
	margin-bottom: clamp(38px, 5vw, 70px);
}

body.oo-webshop .oo-webshop-legal-hero h1 {
	max-width: 12ch;
	margin: 12px 0 24px;
	color: var(--oo-shop-ink) !important;
	font-size: clamp(42px, 7vw, 92px);
	font-weight: 900;
	letter-spacing: -.045em;
	line-height: .92;
	text-transform: uppercase;
}

.oo-webshop-legal-lead {
	max-width: 720px;
	margin: 0;
	color: var(--oo-shop-text) !important;
	font-size: clamp(17px, 2vw, 23px);
	line-height: 1.55;
}

.oo-webshop-legal-updated {
	margin: 28px 0 0;
	color: var(--oo-shop-muted) !important;
	font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.oo-webshop-legal-layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(250px, 320px);
	gap: clamp(46px, 7vw, 110px);
	padding-top: clamp(54px, 7vw, 96px);
	padding-bottom: clamp(70px, 9vw, 130px);
}

.oo-webshop-legal-content {
	display: grid;
	gap: 20px;
}

.oo-webshop-legal-content > section {
	padding: clamp(26px, 4vw, 44px);
	background: #fff;
	border: 1px solid var(--oo-shop-line);
}

body.oo-webshop .oo-webshop-legal-content h2 {
	margin: 0 0 20px;
	color: var(--oo-shop-ink) !important;
	font-size: clamp(23px, 3vw, 34px);
	font-weight: 850;
	line-height: 1.08;
}

.oo-webshop-legal-content p,
.oo-webshop-legal-content li {
	color: var(--oo-shop-text) !important;
	font-size: 16px;
	line-height: 1.75;
}

.oo-webshop-legal-content p {
	margin: 0 0 16px;
}

.oo-webshop-legal-content p:last-child {
	margin-bottom: 0;
}

.oo-webshop-legal-content ul {
	margin: 0;
	padding-left: 22px;
}

.oo-webshop-legal-content a,
.oo-webshop-legal-content a:visited {
	color: var(--oo-shop-ink) !important;
	font-weight: 800;
	text-decoration-color: var(--oo-shop-accent);
	text-decoration-thickness: 2px;
	text-underline-offset: 4px;
}

.oo-webshop-legal-aside {
	position: sticky;
	top: 24px;
	align-self: start;
	padding: 28px;
	background: var(--oo-shop-ink);
	color: #fff;
}

.oo-webshop-legal-aside > p {
	margin: 0 0 10px;
	color: var(--oo-shop-accent) !important;
	font-size: 11px;
	font-weight: 850;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.oo-webshop-legal-aside > a,
.oo-webshop-legal-aside nav a,
.oo-webshop-legal-sources a {
	display: block;
	color: #fff !important;
	font-size: 14px;
	font-weight: 750;
	line-height: 1.4;
	text-decoration: none;
}

.oo-webshop-legal-aside > a + a {
	margin-top: 5px;
}

.oo-webshop-legal-aside nav,
.oo-webshop-legal-sources {
	margin-top: 26px;
	padding-top: 20px;
	border-top: 1px solid rgba(255,255,255,.16);
}

.oo-webshop-legal-aside nav a {
	padding: 8px 0;
	color: #abb3af !important;
}

.oo-webshop-legal-aside nav a.is-current,
.oo-webshop-legal-aside nav a:hover,
.oo-webshop-legal-sources a:hover {
	color: var(--oo-shop-accent) !important;
}

.oo-webshop-legal-sources strong {
	display: block;
	margin-bottom: 10px;
	color: #fff;
	font-size: 11px;
	letter-spacing: .11em;
	text-transform: uppercase;
}

.oo-webshop-legal-sources a {
	padding: 6px 0;
	font-size: 12px;
}

.oo-webshop-withdrawal-form {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 20px;
	margin-top: 28px;
}

.oo-webshop-withdrawal-form label {
	display: grid;
	gap: 8px;
}

.oo-webshop-withdrawal-form label:nth-of-type(n+4),
.oo-webshop-withdrawal-confirm,
.oo-webshop-withdrawal-form > button,
.oo-webshop-form-notice {
	grid-column: 1 / -1;
}

.oo-webshop-withdrawal-form label > span {
	color: var(--oo-shop-ink);
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .04em;
}

.oo-webshop-withdrawal-form input[type="text"],
.oo-webshop-withdrawal-form input[type="email"],
.oo-webshop-withdrawal-form textarea {
	box-sizing: border-box;
	width: 100%;
	min-height: 50px;
	padding: 13px 14px;
	border: 1px solid #bcc4c7;
	border-radius: 0;
	background: #fff;
	color: var(--oo-shop-ink);
	font: inherit;
}

.oo-webshop-withdrawal-form input:focus,
.oo-webshop-withdrawal-form textarea:focus {
	border-color: var(--oo-shop-ink);
	outline: 3px solid var(--oo-shop-accent);
	outline-offset: 2px;
}

.oo-webshop-withdrawal-confirm {
	display: flex !important;
	grid-template-columns: none !important;
	align-items: flex-start;
	gap: 11px !important;
}

.oo-webshop-withdrawal-confirm input {
	flex: 0 0 auto;
	width: 20px;
	height: 20px;
	margin: 1px 0 0;
	accent-color: var(--oo-shop-accent);
}

.oo-webshop-withdrawal-form > button {
	justify-self: start;
	min-width: min(100%, 320px);
	border: 0;
	cursor: pointer;
}

.oo-webshop-honeypot {
	position: absolute !important;
	left: -9999px !important;
	width: 1px !important;
	height: 1px !important;
	overflow: hidden !important;
}

.oo-webshop-form-notice {
	margin: 0 0 24px;
	padding: 16px 18px;
	border-left: 5px solid var(--oo-shop-accent);
	background: #f1f6dd;
	color: var(--oo-shop-ink);
	font-weight: 750;
}

.oo-webshop-form-notice.is-error {
	border-left-color: #b52d2d;
	background: #fff0f0;
}

@media (max-width: 820px) {
	.oo-webshop-legal-layout {
		grid-template-columns: 1fr;
	}

	.oo-webshop-legal-aside {
		position: static;
		order: -1;
	}
}

@media (max-width: 560px) {
	.oo-webshop-legal-hero {
		padding: 42px 0 48px;
	}

	body.oo-webshop .oo-webshop-legal-hero h1 {
		max-width: 100%;
		min-height: 1.96em;
		font-size: clamp(28px, 8vw, 40px);
		letter-spacing: -.035em;
		line-height: .98;
		overflow-wrap: anywhere;
		word-break: normal;
	}

	.oo-webshop-legal-lead {
		min-height: 7.75em;
		font-size: 16px;
		line-height: 1.55;
	}

	.oo-webshop-legal-layout {
		gap: 24px;
		padding-top: 28px;
		padding-bottom: 64px;
	}

	.oo-webshop-legal-content > section,
	.oo-webshop-legal-aside {
		padding: 24px 20px;
	}

	.oo-webshop-legal-content p,
	.oo-webshop-legal-content li {
		font-size: 15px;
		overflow-wrap: anywhere;
		word-break: normal;
	}

	body.oo-webshop .oo-webshop-legal-content h2,
	.oo-webshop-legal-aside a,
	.oo-webshop-legal-aside strong {
		overflow-wrap: anywhere;
		word-break: normal;
	}

	.oo-webshop-withdrawal-form {
		grid-template-columns: 1fr;
	}

	.oo-webshop-withdrawal-form > * {
		grid-column: 1 !important;
	}
}

@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
	.oo-webshop-main *,
	.oo-webshop-drawer { scroll-behavior: auto !important; transition-duration: .01ms !important; }
	.oo-webshop-hero-product:hover,
	.oo-webshop-hero-product:focus-visible { transform: none !important; }
	.oo-webshop-hero-product:hover img,
	.oo-webshop-hero-product:focus-visible img { transform: scale(1.025) !important; }
	.oo-webshop-hero-product:hover .oo-webshop-hero-product-copy strong,
	.oo-webshop-hero-product:focus-visible .oo-webshop-hero-product-copy strong { transform: none !important; }
}

/* WooCommerce purchase pages belong to the e-shop only. */
body.oo-webshop.woocommerce-cart main,
body.oo-webshop.woocommerce-checkout main,
body.oo-webshop.woocommerce-order-received main {
	box-sizing: border-box;
	width: min(100% - 40px, 1480px);
	margin-inline: auto;
	padding-block: clamp(48px, 6vw, 92px) 96px;
}

body.oo-webshop.woocommerce-cart main > .wp-block-group,
body.oo-webshop.woocommerce-checkout main > .wp-block-group,
body.oo-webshop.woocommerce-order-received main > .wp-block-group,
body.oo-webshop.woocommerce-cart .wp-block-post-content,
body.oo-webshop.woocommerce-checkout .wp-block-post-content,
body.oo-webshop.woocommerce-order-received .wp-block-post-content {
	max-width: none !important;
	width: 100%;
}

body.oo-webshop .woocommerce h1,
body.oo-webshop .woocommerce h2,
body.oo-webshop .woocommerce h3,
body.oo-webshop .wc-block-cart__submit-button,
body.oo-webshop .wc-block-components-checkout-place-order-button,
body.oo-webshop .checkout-button,
body.oo-webshop .button {
	font-family: "Exo 2", sans-serif;
}

body.oo-webshop .woocommerce table.shop_table,
body.oo-webshop .wc-block-cart-items,
body.oo-webshop .wc-block-components-sidebar,
body.oo-webshop .woocommerce .cart-collaterals .cart_totals,
body.oo-webshop .woocommerce-checkout-review-order {
	border: 1px solid var(--oo-shop-border) !important;
	border-radius: 0 !important;
	background: #fff;
	box-shadow: none;
}

body.oo-webshop .woocommerce table.shop_table {
	border-collapse: collapse;
}

body.oo-webshop .woocommerce table.shop_table th,
body.oo-webshop .woocommerce table.shop_table td {
	padding: 18px 16px;
	border-color: var(--oo-shop-border);
}

body.oo-webshop .woocommerce table.shop_table th,
body.oo-webshop .wc-block-components-order-summary-item__description {
	color: var(--oo-shop-ink);
	font-weight: 850;
}

body.oo-webshop .woocommerce-cart-form img,
body.oo-webshop .wc-block-cart-item__image img {
	width: 104px;
	max-width: 104px;
	aspect-ratio: 4 / 5;
	object-fit: contain;
	background: #f4f5f2;
}

body.oo-webshop .woocommerce .product-name a,
body.oo-webshop .wc-block-components-product-name {
	color: var(--oo-shop-ink);
	font-weight: 850;
	text-decoration: none;
}

body.oo-webshop .woocommerce .variation,
body.oo-webshop .wc-block-components-product-details {
	margin-top: 8px;
	color: var(--oo-shop-muted);
	font-size: 13px;
}

body.oo-webshop .woocommerce .quantity .qty,
body.oo-webshop .wc-block-components-quantity-selector,
body.oo-webshop .woocommerce form .form-row input.input-text,
body.oo-webshop .woocommerce form .form-row textarea,
body.oo-webshop .woocommerce form .form-row select,
body.oo-webshop .wc-block-components-text-input input,
body.oo-webshop .wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input {
	box-sizing: border-box;
	min-height: 50px;
	border: 1px solid #aeb7ba !important;
	border-radius: 0 !important;
	background: #fff !important;
	color: var(--oo-shop-ink) !important;
}

body.oo-webshop .woocommerce form .form-row input:focus,
body.oo-webshop .woocommerce form .form-row textarea:focus,
body.oo-webshop .wc-block-components-text-input input:focus {
	border-color: var(--oo-shop-ink) !important;
	outline: 3px solid var(--oo-shop-accent) !important;
	outline-offset: 2px;
}

body.oo-webshop .woocommerce a.button,
body.oo-webshop .woocommerce button.button,
body.oo-webshop .woocommerce input.button,
body.oo-webshop .wc-block-cart__submit-button,
body.oo-webshop .wc-block-components-checkout-place-order-button,
body.oo-webshop .checkout-button {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	min-height: 54px;
	padding: 14px 24px !important;
	border: 1px solid var(--oo-shop-ink) !important;
	border-radius: 0 !important;
	background: var(--oo-shop-accent) !important;
	color: var(--oo-shop-ink) !important;
	font-weight: 900 !important;
	letter-spacing: .045em;
	text-decoration: none !important;
	text-transform: uppercase;
}

body.oo-webshop .woocommerce a.button:hover,
body.oo-webshop .woocommerce button.button:hover,
body.oo-webshop .woocommerce input.button:hover,
body.oo-webshop .wc-block-cart__submit-button:hover,
body.oo-webshop .wc-block-components-checkout-place-order-button:hover,
body.oo-webshop .checkout-button:hover {
	background: var(--oo-shop-ink) !important;
	color: #fff !important;
}

body.oo-webshop .woocommerce .remove {
	display: inline-grid;
	place-items: center;
	width: 36px;
	height: 36px;
	border: 1px solid var(--oo-shop-border);
	border-radius: 50%;
	color: var(--oo-shop-ink) !important;
	font-size: 24px;
	text-decoration: none;
}

body.oo-webshop .woocommerce .remove:hover {
	border-color: var(--oo-shop-ink);
	background: var(--oo-shop-ink);
	color: #fff !important;
}

body.oo-webshop .woocommerce-info,
body.oo-webshop .woocommerce-message,
body.oo-webshop .woocommerce-error {
	border-top: 0;
	border-left: 5px solid var(--oo-shop-accent);
	background: #fff;
	color: var(--oo-shop-ink);
}

body.oo-webshop .woocommerce-error {
	border-left-color: #b52d2d;
}

body.oo-webshop .woocommerce-checkout .col2-set {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 28px;
}

body.oo-webshop .woocommerce-checkout .col-1,
body.oo-webshop .woocommerce-checkout .col-2 {
	float: none;
	width: auto;
}

body.oo-webshop #order_review_heading {
	margin-top: 52px;
}

@media (max-width: 780px) {
	body.oo-webshop.woocommerce-cart main,
	body.oo-webshop.woocommerce-checkout main,
	body.oo-webshop.woocommerce-order-received main {
		width: min(100% - 24px, 1480px);
		padding-block: 32px 64px;
	}

	body.oo-webshop .woocommerce-checkout .col2-set {
		grid-template-columns: 1fr;
	}

	body.oo-webshop .woocommerce table.shop_table_responsive tr td {
		padding: 14px 12px;
	}

	body.oo-webshop .woocommerce-cart-form img,
	body.oo-webshop .wc-block-cart-item__image img {
		width: 82px;
		max-width: 82px;
	}
}

/* E-shop cart: one deliberate OO Sport system, isolated from the teamwear quote cart. */
body.oo-webshop.woocommerce-cart main {
	width: min(100% - 40px, 1600px);
	padding-block: clamp(38px, 5vw, 76px) clamp(72px, 8vw, 120px);
}

body.oo-webshop.woocommerce-cart main > .wp-block-post-title {
	display: none !important;
}

body.oo-webshop.woocommerce-cart .wp-block-post-content {
	margin-block-start: 0 !important;
}

body.oo-webshop.woocommerce-cart .woocommerce {
	color: var(--oo-shop-text);
	font-family: "Exo 2", sans-serif;
}

body.oo-webshop.woocommerce-cart .woocommerce:has(.woocommerce-cart-form) {
	display: grid;
	grid-template-columns: minmax(0, 1.78fr) minmax(340px, .72fr);
	align-items: start;
	gap: 32px clamp(28px, 3.5vw, 56px);
}

body.oo-webshop.woocommerce-cart .woocommerce:has(.cart-empty) {
	display: grid;
	grid-template-columns: minmax(0, 980px);
	gap: 0;
}

body.oo-webshop.woocommerce-cart .woocommerce > .woocommerce-notices-wrapper,
body.oo-webshop.woocommerce-cart .oo-webshop-cart-hero {
	grid-column: 1 / -1;
}

.oo-webshop-cart-hero {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1.45fr) minmax(280px, .55fr);
	column-gap: clamp(28px, 5vw, 76px);
	align-items: end;
	margin-bottom: 12px;
	padding: 0 0 clamp(30px, 4vw, 48px) 26px;
	border-bottom: 1px solid var(--oo-shop-line);
}

.oo-webshop-cart-hero::before {
	content: "";
	position: absolute;
	top: 44px;
	bottom: clamp(30px, 4vw, 48px);
	left: 0;
	width: 6px;
	background: var(--oo-shop-accent);
}

.oo-webshop-cart-breadcrumb {
	grid-column: 1 / -1;
	display: flex;
	align-items: center;
	gap: 10px;
	margin-bottom: clamp(26px, 3vw, 42px);
	color: #70797d;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .04em;
}

.oo-webshop-cart-breadcrumb a {
	color: var(--oo-shop-ink);
	text-decoration: none;
}

.oo-webshop-cart-breadcrumb a:hover {
	text-decoration: underline;
	text-underline-offset: 4px;
}

.oo-webshop-cart-eyebrow {
	grid-column: 1 / -1;
	margin: 0 0 10px;
	color: var(--oo-shop-ink);
	font-size: 11px;
	font-weight: 900;
	letter-spacing: .17em;
}

.oo-webshop-cart-heading {
	display: contents;
}

.oo-webshop-cart-heading h1 {
	margin: 0;
	color: var(--oo-shop-ink);
	font-family: "Exo 2", sans-serif;
	font-size: clamp(50px, 6.2vw, 92px);
	font-weight: 950;
	letter-spacing: -.055em;
	line-height: .9;
}

.oo-webshop-cart-heading p {
	max-width: 440px;
	margin: 0 0 2px;
	color: var(--oo-shop-muted);
	font-size: clamp(14px, 1.15vw, 17px);
	font-weight: 560;
	line-height: 1.55;
}

body.oo-webshop.woocommerce-cart .woocommerce-cart-form {
	grid-column: 1;
	min-width: 0;
	margin: 0 !important;
}

body.oo-webshop.woocommerce-cart .woocommerce table.shop_table.cart {
	width: 100%;
	margin: 0 !important;
	border: 1px solid var(--oo-shop-line) !important;
	border-collapse: separate !important;
	border-spacing: 0;
	border-radius: 12px !important;
	background: #fff;
	overflow: hidden;
}

body.oo-webshop.woocommerce-cart table.cart thead th {
	padding: 17px 14px;
	border: 0 !important;
	border-bottom: 1px solid var(--oo-shop-line) !important;
	background: #eef1ef;
	color: var(--oo-shop-ink);
	font-size: 11px;
	font-weight: 900;
	letter-spacing: .11em;
	line-height: 1.2;
	text-transform: uppercase;
}

body.oo-webshop.woocommerce-cart table.cart thead th.product-remove {
	width: 48px;
}

body.oo-webshop.woocommerce-cart table.cart thead th.product-thumbnail {
	width: 116px;
}

body.oo-webshop.woocommerce-cart table.cart thead th.product-price,
body.oo-webshop.woocommerce-cart table.cart thead th.product-subtotal {
	width: 122px;
}

body.oo-webshop.woocommerce-cart table.cart thead th.product-quantity {
	width: 142px;
}

body.oo-webshop.woocommerce-cart table.cart tr.cart_item td {
	padding: 22px 14px;
	border: 0 !important;
	border-bottom: 1px solid var(--oo-shop-line) !important;
	background: #fff;
	vertical-align: middle;
}

body.oo-webshop.woocommerce-cart table.cart tr.cart_item:last-of-type td {
	border-bottom: 0 !important;
}

body.oo-webshop.woocommerce-cart table.cart td.product-thumbnail img {
	display: block;
	width: 92px;
	max-width: 92px;
	height: 112px;
	margin: 0;
	border-radius: 7px;
	background: #f1f3f1;
	object-fit: contain;
}

body.oo-webshop.woocommerce-cart table.cart td.product-name {
	min-width: 210px;
}

body.oo-webshop.woocommerce-cart table.cart td.product-name > a {
	display: inline-block;
	max-width: 360px;
	color: var(--oo-shop-ink);
	font-size: clamp(16px, 1.3vw, 20px);
	font-weight: 900;
	letter-spacing: -.025em;
	line-height: 1.18;
	text-decoration: none;
}

body.oo-webshop.woocommerce-cart table.cart td.product-name > a:hover {
	text-decoration: underline;
	text-decoration-color: var(--oo-shop-accent-text);
	text-underline-offset: 4px;
}

body.oo-webshop.woocommerce-cart table.cart .variation {
	display: grid;
	grid-template-columns: max-content minmax(0, 1fr);
	gap: 3px 7px;
	margin: 11px 0 0;
	color: var(--oo-shop-muted);
	font-size: 12px;
	line-height: 1.35;
}

body.oo-webshop.woocommerce-cart table.cart .variation dt,
body.oo-webshop.woocommerce-cart table.cart .variation dd,
body.oo-webshop.woocommerce-cart table.cart .variation p {
	margin: 0;
	padding: 0;
	font-style: normal;
}

body.oo-webshop.woocommerce-cart table.cart .variation dt {
	color: #7b8488;
	font-weight: 700;
}

body.oo-webshop.woocommerce-cart table.cart .variation dd {
	color: var(--oo-shop-text);
	font-weight: 800;
}

body.oo-webshop.woocommerce-cart table.cart td.product-price,
body.oo-webshop.woocommerce-cart table.cart td.product-subtotal {
	color: var(--oo-shop-ink);
	font-size: 15px;
	font-weight: 850;
	white-space: nowrap;
}

body.oo-webshop.woocommerce-cart table.cart td.product-subtotal {
	font-size: 17px;
	font-weight: 950;
}

body.oo-webshop.woocommerce-cart table.cart td.product-remove {
	padding-inline: 12px 4px;
	text-align: center;
}

body.oo-webshop.woocommerce-cart table.cart td.product-remove .remove {
	display: inline-grid;
	place-items: center;
	width: 36px;
	height: 36px;
	border: 1px solid transparent;
	border-radius: 7px;
	background: transparent;
	color: #737c80 !important;
	font-family: Arial, sans-serif;
	font-size: 22px;
	font-weight: 400;
	line-height: 1;
	transition: background-color .16s ease, border-color .16s ease, color .16s ease;
}

body.oo-webshop.woocommerce-cart table.cart td.product-remove .remove:hover,
body.oo-webshop.woocommerce-cart table.cart td.product-remove .remove:focus-visible {
	border-color: var(--oo-shop-ink);
	background: var(--oo-shop-ink);
	color: #fff !important;
}

body.oo-webshop.woocommerce-cart table.cart .quantity {
	display: inline-flex !important;
	align-items: stretch;
	width: max-content;
	border: 1px solid #b9c0c2;
	border-radius: 8px;
	background: #fff;
	overflow: hidden;
}

body.oo-webshop.woocommerce-cart table.cart .quantity .qty {
	order: 2;
	width: 50px;
	min-width: 50px;
	min-height: 44px;
	padding: 0 4px;
	border: 0 !important;
	border-inline: 1px solid var(--oo-shop-line) !important;
	border-radius: 0 !important;
	background: #fff !important;
	box-shadow: none !important;
	color: var(--oo-shop-ink) !important;
	font-family: "Exo 2", sans-serif;
	font-size: 14px;
	font-weight: 900;
	text-align: center;
	-moz-appearance: textfield;
}

body.oo-webshop.woocommerce-cart table.cart .quantity .qty::-webkit-inner-spin-button,
body.oo-webshop.woocommerce-cart table.cart .quantity .qty::-webkit-outer-spin-button {
	margin: 0;
	-webkit-appearance: none;
}

.oo-webshop-qty-step {
	display: inline-grid;
	place-items: center;
	width: 38px;
	min-width: 38px;
	min-height: 44px;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: #fff;
	color: var(--oo-shop-ink);
	font: 800 18px/1 "Exo 2", sans-serif;
	cursor: pointer;
	transition: background-color .16s ease;
}

.oo-webshop-qty-step--minus { order: 1; }
.oo-webshop-qty-step--plus { order: 3; }

.oo-webshop-qty-step:hover,
.oo-webshop-qty-step:focus-visible {
	background: var(--oo-shop-accent);
}

body.oo-webshop.woocommerce-cart table.cart td.actions {
	padding: 16px 18px;
	border: 0 !important;
	border-top: 1px solid var(--oo-shop-line) !important;
	background: #f8f9f7;
}

body.oo-webshop.woocommerce-cart table.cart td.actions .coupon {
	display: none !important;
}

body.oo-webshop.woocommerce-cart table.cart td.actions button[name="update_cart"] {
	min-height: 46px;
	padding: 11px 19px !important;
	border: 1px solid var(--oo-shop-ink) !important;
	border-radius: 8px !important;
	background: #fff !important;
	color: var(--oo-shop-ink) !important;
	font-size: 11px;
	letter-spacing: .075em;
}

body.oo-webshop.woocommerce-cart table.cart td.actions button[name="update_cart"]:not(:disabled):hover,
body.oo-webshop.woocommerce-cart table.cart td.actions button[name="update_cart"]:not(:disabled):focus-visible {
	background: var(--oo-shop-ink) !important;
	color: #fff !important;
}

body.oo-webshop.woocommerce-cart table.cart td.actions button[name="update_cart"]:disabled {
	border-color: #cdd2d3 !important;
	background: #f2f4f2 !important;
	color: #8c9497 !important;
	opacity: 1;
}

body.oo-webshop.woocommerce-cart .cart-collaterals {
	grid-column: 2;
	float: none !important;
	width: 100% !important;
	margin: 0 !important;
}

body.oo-webshop.woocommerce-cart .cart-collaterals .cart_totals {
	position: sticky;
	top: 24px;
	float: none !important;
	box-sizing: border-box;
	width: 100% !important;
	padding: clamp(24px, 2.4vw, 34px);
	border: 1px solid var(--oo-shop-line) !important;
	border-radius: 12px !important;
	background: #fff;
	box-shadow: 0 18px 50px rgba(10, 13, 12, .07);
}

body.oo-webshop.woocommerce-cart .cart_totals > h2 {
	margin: 0 0 24px;
	padding-bottom: 22px;
	border-bottom: 1px solid var(--oo-shop-line);
	color: var(--oo-shop-ink);
	font-size: clamp(25px, 2.25vw, 34px);
	font-weight: 950;
	letter-spacing: -.035em;
	line-height: 1.05;
}

body.oo-webshop.woocommerce-cart .cart_totals table.shop_table {
	margin: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent;
}

body.oo-webshop.woocommerce-cart .cart_totals table.shop_table th,
body.oo-webshop.woocommerce-cart .cart_totals table.shop_table td {
	padding: 12px 0;
	border: 0 !important;
	background: transparent;
	color: var(--oo-shop-text);
	font-size: 14px;
	font-weight: 700;
}

body.oo-webshop.woocommerce-cart .cart_totals table.shop_table th {
	width: 48%;
	text-align: left;
}

body.oo-webshop.woocommerce-cart .cart_totals table.shop_table td {
	text-align: right;
}

body.oo-webshop.woocommerce-cart .cart_totals tr.order-total th,
body.oo-webshop.woocommerce-cart .cart_totals tr.order-total td {
	padding-top: 20px;
	border-top: 1px solid var(--oo-shop-line) !important;
	color: var(--oo-shop-ink);
	font-size: 18px;
	font-weight: 950;
}

body.oo-webshop.woocommerce-cart .cart_totals .includes_tax {
	display: block;
	margin-top: 5px;
	color: var(--oo-shop-muted);
	font-size: 11px;
	font-weight: 650;
	line-height: 1.35;
}

body.oo-webshop.woocommerce-cart .wc-proceed-to-checkout {
	padding: 22px 0 0 !important;
}

body.oo-webshop.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
	display: flex !important;
	gap: 14px;
	width: 100%;
	min-height: 58px;
	margin: 0 !important;
	padding: 15px 22px !important;
	border: 1px solid var(--oo-shop-ink) !important;
	border-radius: 8px !important;
	background: var(--oo-shop-accent) !important;
	color: var(--oo-shop-ink) !important;
	font-size: 12px;
	font-weight: 950 !important;
	letter-spacing: .075em;
	text-align: center;
	text-transform: uppercase;
	transition: background-color .16s ease, color .16s ease;
}

body.oo-webshop.woocommerce-cart .wc-proceed-to-checkout a.checkout-button::after {
	content: "→";
	font-size: 18px;
	line-height: 1;
}

body.oo-webshop.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover,
body.oo-webshop.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:focus-visible {
	background: var(--oo-shop-ink) !important;
	color: #fff !important;
}

.oo-webshop-cart-reassurance {
	display: grid;
	gap: 0;
	margin: 24px 0 0;
	padding: 0;
	border-top: 1px solid var(--oo-shop-line);
	list-style: none;
}

.oo-webshop-cart-reassurance li {
	display: grid;
	grid-template-columns: 36px minmax(0, 1fr);
	gap: 12px;
	align-items: center;
	padding: 17px 0;
	border-bottom: 1px solid #e8ebea;
}

.oo-webshop-cart-reassurance li:last-child {
	padding-bottom: 0;
	border-bottom: 0;
}

.oo-webshop-cart-reassurance li > span:first-child {
	display: grid;
	place-items: center;
	width: 34px;
	height: 34px;
	border: 1px solid var(--oo-shop-ink);
	border-radius: 50%;
	color: var(--oo-shop-ink);
	font-size: 15px;
	font-weight: 900;
}

.oo-webshop-cart-reassurance li > span:last-child {
	display: grid;
	gap: 2px;
}

.oo-webshop-cart-reassurance strong {
	color: var(--oo-shop-ink);
	font-size: 12px;
	font-weight: 900;
	line-height: 1.3;
}

.oo-webshop-cart-reassurance small {
	color: var(--oo-shop-muted);
	font-size: 11px;
	font-weight: 600;
	line-height: 1.35;
}

body.oo-webshop.woocommerce-cart .woocommerce-message,
body.oo-webshop.woocommerce-cart .woocommerce-info,
body.oo-webshop.woocommerce-cart .woocommerce-error {
	grid-column: 1 / -1;
	box-sizing: border-box;
	margin: 0 0 4px;
	padding: 18px 20px 18px 24px;
	border: 1px solid var(--oo-shop-line);
	border-left: 5px solid var(--oo-shop-accent);
	border-radius: 8px;
	background: #fff;
	box-shadow: none;
	color: var(--oo-shop-ink);
	font-size: 14px;
	font-weight: 750;
}

body.oo-webshop.woocommerce-cart .woocommerce-message::before,
body.oo-webshop.woocommerce-cart .woocommerce-info::before,
body.oo-webshop.woocommerce-cart .woocommerce-error::before {
	display: none;
}

body.oo-webshop.woocommerce-cart .woocommerce:has(.cart-empty) .oo-webshop-cart-hero {
	order: -3;
}

body.oo-webshop.woocommerce-cart .woocommerce:has(.cart-empty) > .woocommerce-notices-wrapper {
	order: -4;
}

body.oo-webshop.woocommerce-cart .cart-empty {
	order: -2;
	margin: 22px 0 0 !important;
	padding: clamp(28px, 4vw, 46px) !important;
	border: 1px solid var(--oo-shop-line) !important;
	border-left: 6px solid var(--oo-shop-accent) !important;
	border-radius: 12px !important;
	background: #fff;
	color: var(--oo-shop-ink);
	font-size: clamp(20px, 2vw, 28px);
	font-weight: 900;
}

body.oo-webshop.woocommerce-cart .return-to-shop {
	order: -1;
	margin: 18px 0 0;
}

body.oo-webshop.woocommerce-cart .return-to-shop .button {
	min-height: 52px;
	border-radius: 8px !important;
}

@media (max-width: 1120px) {
	body.oo-webshop.woocommerce-cart .woocommerce:has(.woocommerce-cart-form) {
		grid-template-columns: 1fr;
	}

	body.oo-webshop.woocommerce-cart .woocommerce-cart-form,
	body.oo-webshop.woocommerce-cart .cart-collaterals {
		grid-column: 1;
	}

	body.oo-webshop.woocommerce-cart .cart-collaterals .cart_totals {
		position: static;
	}
}

@media (max-width: 760px) {
	body.oo-webshop.woocommerce-cart main {
		width: min(100% - 24px, 1600px);
		padding-block: 28px 70px;
	}

	body.oo-webshop.woocommerce-cart .woocommerce:has(.woocommerce-cart-form) {
		gap: 22px;
	}

	.oo-webshop-cart-hero {
		grid-template-columns: 1fr;
		margin-bottom: 2px;
		padding: 0 0 28px 18px;
	}

	.oo-webshop-cart-hero::before {
		top: 36px;
		bottom: 28px;
		width: 4px;
	}

	.oo-webshop-cart-breadcrumb {
		margin-bottom: 24px;
		font-size: 11px;
	}

	.oo-webshop-cart-heading h1 {
		font-size: clamp(45px, 14vw, 68px);
	}

	.oo-webshop-cart-heading p {
		margin-top: 16px;
		font-size: 14px;
	}

	body.oo-webshop.woocommerce-cart table.shop_table.cart,
	body.oo-webshop.woocommerce-cart table.shop_table.cart tbody {
		display: block;
		border: 0 !important;
		border-radius: 0 !important;
		background: transparent;
		overflow: visible;
	}

	body.oo-webshop.woocommerce-cart table.cart thead {
		display: none;
	}

	body.oo-webshop.woocommerce-cart table.cart tr.cart_item {
		position: relative;
		display: grid;
		grid-template-columns: 82px minmax(0, 1fr);
		column-gap: 16px;
		margin-bottom: 12px;
		padding: 16px;
		border: 1px solid var(--oo-shop-line);
		border-radius: 10px;
		background: #fff;
	}

	body.oo-webshop.woocommerce-cart table.cart tr.cart_item td {
		display: block !important;
		padding: 0 !important;
		border: 0 !important;
		background: transparent;
		text-align: left !important;
	}

	body.oo-webshop.woocommerce-cart table.cart tr.cart_item td::before {
		float: none;
		color: #7b8488;
		font-size: 10px;
		font-weight: 900;
		letter-spacing: .08em;
		text-transform: uppercase;
	}

	body.oo-webshop.woocommerce-cart table.cart td.product-remove {
		position: absolute;
		top: 10px;
		right: 10px;
		z-index: 2;
	}

	body.oo-webshop.woocommerce-cart table.cart td.product-remove::before,
	body.oo-webshop.woocommerce-cart table.cart td.product-thumbnail::before {
		display: none;
	}

	body.oo-webshop.woocommerce-cart table.cart td.product-thumbnail {
		grid-column: 1;
		grid-row: 1 / span 4;
	}

	body.oo-webshop.woocommerce-cart table.cart td.product-thumbnail img {
		width: 82px;
		max-width: 82px;
		height: 104px;
	}

	body.oo-webshop.woocommerce-cart table.cart td.product-name,
	body.oo-webshop.woocommerce-cart table.cart td.product-price,
	body.oo-webshop.woocommerce-cart table.cart td.product-quantity,
	body.oo-webshop.woocommerce-cart table.cart td.product-subtotal {
		grid-column: 2;
		min-width: 0;
		padding-right: 34px !important;
	}

	body.oo-webshop.woocommerce-cart table.cart td.product-name {
		margin-bottom: 14px;
	}

	body.oo-webshop.woocommerce-cart table.cart td.product-name > a {
		font-size: 16px;
	}

	body.oo-webshop.woocommerce-cart table.cart .variation {
		font-size: 11px;
	}

	body.oo-webshop.woocommerce-cart table.cart td.product-price,
	body.oo-webshop.woocommerce-cart table.cart td.product-subtotal {
		display: flex !important;
		align-items: baseline;
		justify-content: space-between;
		gap: 12px;
		padding-block: 8px !important;
		border-top: 1px solid #edf0ee !important;
		font-size: 14px;
	}

	body.oo-webshop.woocommerce-cart table.cart td.product-quantity {
		display: flex !important;
		align-items: center;
		justify-content: space-between;
		gap: 12px;
		padding-block: 9px !important;
		border-top: 1px solid #edf0ee !important;
	}

	body.oo-webshop.woocommerce-cart table.cart td.product-subtotal {
		padding-bottom: 0 !important;
		font-size: 16px;
	}

	body.oo-webshop.woocommerce-cart table.cart tr:last-child,
	body.oo-webshop.woocommerce-cart table.cart tr:last-child td.actions {
		display: block;
		width: auto;
		padding: 0 !important;
		border: 0 !important;
		background: transparent;
	}

	body.oo-webshop.woocommerce-cart table.cart td.actions button[name="update_cart"] {
		width: 100%;
	}

	body.oo-webshop.woocommerce-cart .cart-collaterals .cart_totals {
		padding: 24px 20px;
		border-radius: 10px !important;
	}

	body.oo-webshop.woocommerce-cart .cart_totals > h2 {
		font-size: 27px;
	}
}

/* Storefront mobile contrast and cart layout repair — 2026-10-22. */
body.oo-webshop.single-oo_toode .oo-sport-single-v2-color-selected {
	color: #626d72 !important;
	-webkit-text-fill-color: #626d72 !important;
	opacity: 1 !important;
	text-shadow: none !important;
}

body.oo-webshop.single-oo_toode .oo-sport-single-v2-color-selected strong {
	color: #3f5000 !important;
	-webkit-text-fill-color: #3f5000 !important;
	opacity: 1 !important;
	text-shadow: none !important;
}

body.oo-webshop.woocommerce-cart .oo-webshop-cart-eyebrow,
body.oo-webshop.woocommerce-cart .oo-webshop-cart-heading h1,
body.oo-webshop.woocommerce-cart .cart_totals > h2 {
	background: none !important;
	color: var(--oo-shop-ink) !important;
	-webkit-background-clip: border-box !important;
	background-clip: border-box !important;
	-webkit-text-fill-color: var(--oo-shop-ink) !important;
	opacity: 1 !important;
	text-shadow: none !important;
}

body.oo-webshop.woocommerce-cart .oo-webshop-cart-heading p {
	color: var(--oo-shop-muted) !important;
	-webkit-text-fill-color: var(--oo-shop-muted) !important;
	opacity: 1 !important;
	text-shadow: none !important;
}

body.oo-webshop.woocommerce-cart table.cart .variation dt {
	color: #667075 !important;
	-webkit-text-fill-color: #667075 !important;
	opacity: 1 !important;
}

body.oo-webshop.woocommerce-cart table.cart .variation dd,
body.oo-webshop.woocommerce-cart table.cart .variation dd p {
	color: var(--oo-shop-ink) !important;
	-webkit-text-fill-color: var(--oo-shop-ink) !important;
	opacity: 1 !important;
	text-shadow: none !important;
}

body.oo-webshop.woocommerce-cart table.cart td.product-price,
body.oo-webshop.woocommerce-cart table.cart td.product-subtotal,
body.oo-webshop.woocommerce-cart table.cart td.product-price .amount,
body.oo-webshop.woocommerce-cart table.cart td.product-subtotal .amount,
body.oo-webshop.woocommerce-cart .cart_totals th,
body.oo-webshop.woocommerce-cart .cart_totals td,
body.oo-webshop.woocommerce-cart .cart_totals .amount {
	color: var(--oo-shop-ink) !important;
	-webkit-text-fill-color: var(--oo-shop-ink) !important;
	opacity: 1 !important;
}

body.oo-webshop.woocommerce-cart .cart_totals .includes_tax,
body.oo-webshop.woocommerce-cart .cart_totals .includes_tax .amount {
	color: var(--oo-shop-muted) !important;
	-webkit-text-fill-color: var(--oo-shop-muted) !important;
}

@media (max-width: 781px) {
	body.oo-webshop .oo-sport-nav-and-cta > .oo-sport-language-switcher {
		order: 3;
		width: auto !important;
		min-width: 0 !important;
	}

	body.oo-webshop .oo-sport-nav-and-cta > .oo-search-trigger {
		order: 4;
	}

	body.oo-webshop .oo-sport-language-switcher__options {
		min-width: 58px !important;
		min-height: 40px !important;
	}
}

@media (max-width: 760px) {
	body.oo-webshop.woocommerce-cart .oo-webshop-cart-hero {
		padding-bottom: 24px;
	}

	body.oo-webshop.woocommerce-cart .oo-webshop-cart-breadcrumb {
		margin-bottom: 20px;
	}

	body.oo-webshop.woocommerce-cart .oo-webshop-cart-heading h1 {
		font-size: clamp(40px, 12vw, 58px);
		line-height: .94;
	}

	body.oo-webshop.woocommerce-cart .oo-webshop-cart-heading p {
		margin-top: 12px;
	}

	body.oo-webshop.woocommerce-cart table.cart tr.cart_item {
		grid-template-columns: 88px minmax(0, 1fr);
		grid-auto-flow: row;
		column-gap: 14px;
		row-gap: 0;
		overflow: hidden;
	}

	body.oo-webshop.woocommerce-cart table.cart td.product-thumbnail {
		grid-column: 1;
		grid-row: 1;
	}

	body.oo-webshop.woocommerce-cart table.cart td.product-thumbnail img {
		width: 88px;
		max-width: 88px;
		height: 112px;
	}

	body.oo-webshop.woocommerce-cart table.cart td.product-name {
		grid-column: 2;
		grid-row: 1;
		align-self: start;
		padding-right: 30px !important;
	}

	body.oo-webshop.woocommerce-cart table.cart td.product-name > a {
		max-width: 100%;
		overflow-wrap: anywhere;
	}

	body.oo-webshop.woocommerce-cart table.cart .variation {
		grid-template-columns: minmax(76px, max-content) minmax(0, 1fr);
		width: 100%;
	}

	body.oo-webshop.woocommerce-cart table.cart .variation dd,
	body.oo-webshop.woocommerce-cart table.cart .variation dd p {
		min-width: 0;
		overflow-wrap: anywhere;
	}

	body.oo-webshop.woocommerce-cart table.cart td.product-price,
	body.oo-webshop.woocommerce-cart table.cart td.product-quantity,
	body.oo-webshop.woocommerce-cart table.cart td.product-subtotal {
		grid-column: 1 / -1;
		width: 100%;
		padding-right: 0 !important;
		box-sizing: border-box;
	}

	body.oo-webshop.woocommerce-cart table.cart td.product-price {
		margin-top: 16px;
	}

	body.oo-webshop.woocommerce-cart table.cart td.product-price,
	body.oo-webshop.woocommerce-cart table.cart td.product-quantity,
	body.oo-webshop.woocommerce-cart table.cart td.product-subtotal {
		min-height: 56px;
	}

	body.oo-webshop.woocommerce-cart table.cart td.product-subtotal {
		white-space: normal;
	}

	body.oo-webshop.woocommerce-cart table.cart td.product-subtotal .amount {
		white-space: nowrap;
	}

	body.oo-webshop.woocommerce-cart table.cart td.actions button[name="update_cart"],
	body.oo-webshop.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
		box-sizing: border-box;
		max-width: 100%;
	}

	body.oo-webshop.woocommerce-cart .cart-collaterals .cart_totals {
		overflow: hidden;
	}
}

@media (max-width: 420px) {
	body.oo-webshop .oo-sport-header-row {
		padding-inline: 10px !important;
		column-gap: 5px !important;
	}

	body.oo-webshop .oo-sport-header .oo-sport-header-logo-wrap,
	body.oo-webshop .oo-sport-header img.custom-logo {
		width: 120px !important;
		max-width: 120px !important;
	}

	body.oo-webshop .oo-sport-nav-and-cta {
		gap: 5px !important;
	}

	body.oo-webshop .oo-sport-nav-and-cta > .oo-webshop-mobile-cart-link,
	body.oo-webshop .oo-webshop-menu-trigger,
	body.oo-webshop .oo-sport-nav-and-cta > .oo-search-trigger {
		flex-basis: 38px !important;
		width: 38px !important;
		min-width: 38px !important;
		height: 38px !important;
		min-height: 38px !important;
	}

	body.oo-webshop .oo-sport-language-switcher__options {
		min-width: 52px !important;
		min-height: 38px !important;
		font-size: 10px !important;
	}

	body.oo-webshop.woocommerce-cart main {
		width: min(100% - 20px, 1600px);
	}

	body.oo-webshop.woocommerce-cart table.cart tr.cart_item {
		grid-template-columns: 78px minmax(0, 1fr);
		padding: 14px;
	}

	body.oo-webshop.woocommerce-cart table.cart td.product-thumbnail img {
		width: 78px;
		max-width: 78px;
		height: 102px;
	}

	body.oo-webshop.woocommerce-cart .cart-collaterals .cart_totals {
		padding: 22px 18px;
	}
}

/* Checkout: use the same readable, deliberate storefront system as the cart. */
body.oo-webshop.woocommerce-checkout .woocommerce-form-coupon-toggle,
body.oo-webshop.woocommerce-checkout form.checkout_coupon {
	display: none !important;
}

/* Mobile cart width and density correction — 2026-10-22.
 * The block theme adds 30px inline padding to main on small screens. Together
 * with the cart gutter that left only ~280px of a 360px viewport for products. */
@media (max-width: 760px) {
	body.oo-webshop.woocommerce-cart main {
		box-sizing: border-box;
		width: calc(100% - 16px) !important;
		max-width: none !important;
		margin-inline: 8px !important;
		padding: 18px 0 64px !important;
	}

	body.oo-webshop.woocommerce-cart .wp-block-post-content,
	body.oo-webshop.woocommerce-cart .woocommerce,
	body.oo-webshop.woocommerce-cart .woocommerce-cart-form,
	body.oo-webshop.woocommerce-cart table.shop_table.cart,
	body.oo-webshop.woocommerce-cart .cart-collaterals {
		box-sizing: border-box;
		width: 100% !important;
		max-width: none !important;
		margin-inline: 0 !important;
	}

	body.oo-webshop.woocommerce-cart .oo-webshop-cart-hero {
		box-sizing: border-box;
		width: 100%;
		margin: 0 0 14px !important;
		padding: 0 0 20px 14px !important;
	}

	body.oo-webshop.woocommerce-cart .oo-webshop-cart-hero::before {
		top: 30px;
		bottom: 20px;
	}

	body.oo-webshop.woocommerce-cart .oo-webshop-cart-breadcrumb {
		margin-bottom: 14px;
	}

	body.oo-webshop.woocommerce-cart .oo-webshop-cart-eyebrow {
		margin-bottom: 6px;
	}

	body.oo-webshop.woocommerce-cart .oo-webshop-cart-heading h1 {
		font-size: clamp(36px, 11vw, 48px);
	}

	body.oo-webshop.woocommerce-cart .oo-webshop-cart-heading p {
		max-width: none;
		margin-top: 10px;
		font-size: 14px;
		line-height: 1.5;
	}

	body.oo-webshop.woocommerce-cart .woocommerce:has(.woocommerce-cart-form) {
		gap: 16px;
	}
}

@media (max-width: 420px) {
	body.oo-webshop.woocommerce-cart table.cart tr.cart_item {
		grid-template-columns: 84px minmax(0, 1fr);
		padding: 12px;
	}

	body.oo-webshop.woocommerce-cart table.cart td.product-thumbnail img {
		width: 84px;
		max-width: 84px;
		height: 108px;
	}
}

body.oo-webshop.woocommerce-checkout main {
	width: min(100% - 40px, 1320px);
	padding-block: clamp(38px, 5vw, 72px) clamp(72px, 8vw, 112px);
}

body.oo-webshop.woocommerce-checkout main > .wp-block-post-title {
	max-width: 1240px;
	margin: 0 auto clamp(24px, 3vw, 38px) !important;
	background: none !important;
	color: var(--oo-shop-ink) !important;
	-webkit-background-clip: border-box !important;
	background-clip: border-box !important;
	-webkit-text-fill-color: var(--oo-shop-ink) !important;
	font-family: "Exo 2", sans-serif;
	font-size: clamp(34px, 4vw, 58px);
	font-weight: 950;
	letter-spacing: -.045em;
	line-height: .96;
	opacity: 1 !important;
	text-shadow: none !important;
}

body.oo-webshop.woocommerce-checkout .wp-block-post-content,
body.oo-webshop.woocommerce-checkout .woocommerce,
body.oo-webshop.woocommerce-checkout form.checkout {
	width: 100%;
	min-width: 0;
}

body.oo-webshop.woocommerce-checkout form.checkout {
	display: grid;
	grid-template-columns: minmax(0, 1.12fr) minmax(360px, .88fr);
	column-gap: clamp(28px, 4vw, 54px);
	row-gap: 18px;
	align-items: start;
}

body.oo-webshop.woocommerce-checkout #customer_details {
	grid-column: 1;
	grid-row: 1 / span 2;
	min-width: 0;
}

body.oo-webshop.woocommerce-checkout .woocommerce-checkout .col2-set {
	display: grid;
	grid-template-columns: 1fr;
	gap: 22px;
}

body.oo-webshop.woocommerce-checkout .woocommerce-checkout .col-1,
body.oo-webshop.woocommerce-checkout .woocommerce-checkout .col-2,
body.oo-webshop.woocommerce-checkout .woocommerce-billing-fields,
body.oo-webshop.woocommerce-checkout .woocommerce-additional-fields {
	box-sizing: border-box;
	min-width: 0;
}

body.oo-webshop.woocommerce-checkout .woocommerce-billing-fields,
body.oo-webshop.woocommerce-checkout .woocommerce-additional-fields,
body.oo-webshop.woocommerce-checkout #order_review {
	padding: clamp(22px, 3vw, 34px);
	border: 1px solid var(--oo-shop-line);
	border-radius: 12px;
	background: #fff;
	box-shadow: 0 18px 50px rgba(10, 13, 12, .06);
}

body.oo-webshop.woocommerce-checkout #order_review_heading {
	grid-column: 2;
	grid-row: 1;
	margin: 0 !important;
	padding: 0 2px;
}

body.oo-webshop.woocommerce-checkout #order_review {
	grid-column: 2;
	grid-row: 2;
	min-width: 0;
}

body.oo-webshop.woocommerce-checkout .woocommerce h1,
body.oo-webshop.woocommerce-checkout .woocommerce h2,
body.oo-webshop.woocommerce-checkout .woocommerce h3,
body.oo-webshop.woocommerce-checkout #order_review_heading,
body.oo-webshop.woocommerce-checkout .woocommerce-billing-fields > h3,
body.oo-webshop.woocommerce-checkout .woocommerce-additional-fields > h3 {
	background: none !important;
	color: var(--oo-shop-ink) !important;
	-webkit-background-clip: border-box !important;
	background-clip: border-box !important;
	-webkit-text-fill-color: var(--oo-shop-ink) !important;
	opacity: 1 !important;
	text-shadow: none !important;
}

body.oo-webshop.woocommerce-checkout .woocommerce-billing-fields > h3,
body.oo-webshop.woocommerce-checkout .woocommerce-additional-fields > h3,
body.oo-webshop.woocommerce-checkout #order_review_heading {
	font-family: "Exo 2", sans-serif;
	font-size: clamp(24px, 2.4vw, 32px);
	font-weight: 950;
	letter-spacing: -.025em;
	line-height: 1.08;
}

body.oo-webshop.woocommerce-checkout .woocommerce form .form-row,
body.oo-webshop.woocommerce-checkout .woocommerce form .form-row label,
body.oo-webshop.woocommerce-checkout .woocommerce form .form-row .required,
body.oo-webshop.woocommerce-checkout .woocommerce form .form-row .optional,
body.oo-webshop.woocommerce-checkout .select2-container,
body.oo-webshop.woocommerce-checkout .select2-selection,
body.oo-webshop.woocommerce-checkout .select2-selection__rendered,
body.oo-webshop.woocommerce-checkout .select2-selection__arrow {
	opacity: 1 !important;
}

body.oo-webshop.woocommerce-checkout .woocommerce form .form-row label,
body.oo-webshop.woocommerce-checkout .woocommerce form .form-row .optional,
body.oo-webshop.woocommerce-checkout .select2-selection__rendered {
	color: var(--oo-shop-text) !important;
	-webkit-text-fill-color: var(--oo-shop-text) !important;
	text-shadow: none !important;
}

body.oo-webshop.woocommerce-checkout .woocommerce form .form-row label {
	display: block;
	margin-bottom: 7px;
	font-size: 13px;
	font-weight: 800;
}

body.oo-webshop.woocommerce-checkout .woocommerce form .form-row .required {
	color: #9f2222 !important;
	-webkit-text-fill-color: #9f2222 !important;
}

body.oo-webshop.woocommerce-checkout .woocommerce form .form-row input.input-text,
body.oo-webshop.woocommerce-checkout .woocommerce form .form-row textarea,
body.oo-webshop.woocommerce-checkout .select2-container .select2-selection--single {
	box-sizing: border-box;
	width: 100%;
	min-height: 52px;
	border: 1px solid #aeb7ba !important;
	border-radius: 7px !important;
	background: #fff !important;
	color: var(--oo-shop-ink) !important;
	-webkit-text-fill-color: var(--oo-shop-ink) !important;
	opacity: 1 !important;
	box-shadow: none !important;
}

body.oo-webshop.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__rendered {
	padding: 11px 42px 11px 14px;
	line-height: 28px;
}

body.oo-webshop.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__arrow {
	top: 6px;
	right: 10px;
}

body.oo-webshop.woocommerce-checkout .woocommerce form .form-row input.input-text::placeholder,
body.oo-webshop.woocommerce-checkout .woocommerce form .form-row textarea::placeholder {
	color: #747d81 !important;
	-webkit-text-fill-color: #747d81 !important;
	opacity: 1 !important;
}

body.oo-webshop.woocommerce-checkout table.woocommerce-checkout-review-order-table {
	width: 100%;
	min-width: 0;
	margin: 0 !important;
	border: 0 !important;
	table-layout: fixed;
}

body.oo-webshop.woocommerce-checkout table.woocommerce-checkout-review-order-table th,
body.oo-webshop.woocommerce-checkout table.woocommerce-checkout-review-order-table td,
body.oo-webshop.woocommerce-checkout table.woocommerce-checkout-review-order-table .product-name,
body.oo-webshop.woocommerce-checkout table.woocommerce-checkout-review-order-table .product-total,
body.oo-webshop.woocommerce-checkout table.woocommerce-checkout-review-order-table .amount,
body.oo-webshop.woocommerce-checkout table.woocommerce-checkout-review-order-table .variation dt,
body.oo-webshop.woocommerce-checkout table.woocommerce-checkout-review-order-table .variation dd,
body.oo-webshop.woocommerce-checkout table.woocommerce-checkout-review-order-table .variation p {
	color: var(--oo-shop-ink) !important;
	-webkit-text-fill-color: var(--oo-shop-ink) !important;
	opacity: 1 !important;
	text-shadow: none !important;
}

body.oo-webshop.woocommerce-checkout table.woocommerce-checkout-review-order-table th,
body.oo-webshop.woocommerce-checkout table.woocommerce-checkout-review-order-table td {
	box-sizing: border-box;
	padding: 15px 12px;
	border-color: var(--oo-shop-line) !important;
	vertical-align: top;
}

body.oo-webshop.woocommerce-checkout table.woocommerce-checkout-review-order-table .product-name {
	width: 64%;
	font-weight: 750;
	overflow-wrap: anywhere;
}

body.oo-webshop.woocommerce-checkout table.woocommerce-checkout-review-order-table .product-total {
	width: 36%;
	font-weight: 900;
	text-align: right;
}

body.oo-webshop.woocommerce-checkout table.woocommerce-checkout-review-order-table .variation {
	display: grid;
	grid-template-columns: max-content minmax(0, 1fr);
	gap: 3px 8px;
	margin-top: 10px;
	font-size: 12px;
	line-height: 1.4;
}

body.oo-webshop.woocommerce-checkout table.woocommerce-checkout-review-order-table .variation dt {
	color: #697277 !important;
	-webkit-text-fill-color: #697277 !important;
	font-weight: 700;
}

body.oo-webshop.woocommerce-checkout table.woocommerce-checkout-review-order-table tr.order-total th,
body.oo-webshop.woocommerce-checkout table.woocommerce-checkout-review-order-table tr.order-total td {
	font-size: 18px;
	font-weight: 950;
}

body.oo-webshop.woocommerce-checkout table.woocommerce-checkout-review-order-table .includes_tax,
body.oo-webshop.woocommerce-checkout table.woocommerce-checkout-review-order-table .includes_tax .amount {
	color: var(--oo-shop-muted) !important;
	-webkit-text-fill-color: var(--oo-shop-muted) !important;
	font-size: 11px;
}

body.oo-webshop.woocommerce-checkout #payment {
	margin-top: 20px;
	border-radius: 8px !important;
	background: #f1f4f1 !important;
	color: var(--oo-shop-text) !important;
}

body.oo-webshop.woocommerce-checkout #payment,
body.oo-webshop.woocommerce-checkout #payment p,
body.oo-webshop.woocommerce-checkout #payment li,
body.oo-webshop.woocommerce-checkout #payment label,
body.oo-webshop.woocommerce-checkout #payment .woocommerce-privacy-policy-text {
	color: var(--oo-shop-text) !important;
	-webkit-text-fill-color: var(--oo-shop-text) !important;
	opacity: 1 !important;
	text-shadow: none !important;
}

body.oo-webshop.woocommerce-checkout #payment .woocommerce-info {
	margin: 0;
	border: 1px solid #b9c5c8;
	border-left: 5px solid var(--oo-shop-accent);
	border-radius: 7px;
	background: #fff;
	color: var(--oo-shop-text) !important;
	-webkit-text-fill-color: var(--oo-shop-text) !important;
}

body.oo-webshop.woocommerce-checkout .oo-webshop-checkout-legal label {
	display: grid !important;
	grid-template-columns: 20px minmax(0, 1fr);
	gap: 10px;
	align-items: start;
}

body.oo-webshop.woocommerce-checkout .oo-webshop-checkout-legal input {
	width: 18px;
	height: 18px;
	margin: 2px 0 0 !important;
}

body.oo-webshop.woocommerce-checkout #place_order {
	box-sizing: border-box;
	width: 100%;
	max-width: 100%;
	min-height: 58px;
	margin-top: 14px;
	border-radius: 8px !important;
	color: var(--oo-shop-ink) !important;
	-webkit-text-fill-color: var(--oo-shop-ink) !important;
}

@media (max-width: 900px) {
	body.oo-webshop.woocommerce-checkout form.checkout {
		grid-template-columns: 1fr;
		row-gap: 22px;
	}

	body.oo-webshop.woocommerce-checkout #customer_details,
	body.oo-webshop.woocommerce-checkout #order_review_heading,
	body.oo-webshop.woocommerce-checkout #order_review {
		grid-column: 1;
		grid-row: auto;
	}

	body.oo-webshop.woocommerce-checkout #order_review_heading {
		margin-top: 8px !important;
	}
}

@media (max-width: 780px) {
	body.oo-webshop.woocommerce-checkout main {
		width: min(100% - 20px, 1320px);
		padding-block: 24px 72px;
	}

	body.oo-webshop.woocommerce-checkout main > .wp-block-post-title {
		margin-bottom: 22px !important;
		font-size: clamp(31px, 10vw, 44px);
	}

	body.oo-webshop.woocommerce-checkout .woocommerce form .form-row-first,
	body.oo-webshop.woocommerce-checkout .woocommerce form .form-row-last {
		float: none !important;
		width: 100% !important;
	}

	body.oo-webshop.woocommerce-checkout .woocommerce form .form-row {
		box-sizing: border-box;
		width: 100%;
		margin-bottom: 15px;
	}

	body.oo-webshop.woocommerce-checkout .woocommerce-billing-fields,
	body.oo-webshop.woocommerce-checkout .woocommerce-additional-fields,
	body.oo-webshop.woocommerce-checkout #order_review {
		padding: 18px;
		border-radius: 10px;
	}

	body.oo-webshop.woocommerce-checkout table.woocommerce-checkout-review-order-table th,
	body.oo-webshop.woocommerce-checkout table.woocommerce-checkout-review-order-table td {
		padding: 13px 8px;
		font-size: 13px;
	}

	body.oo-webshop.woocommerce-checkout table.woocommerce-checkout-review-order-table .product-name {
		width: 62%;
	}

	body.oo-webshop.woocommerce-checkout table.woocommerce-checkout-review-order-table .product-total {
		width: 38%;
	}

	body.oo-webshop.woocommerce-checkout #payment .form-row {
		padding: 16px !important;
	}
}
