:root {
	--mgs02-paper: #ffffff;
	--mgs02-soft: #f3f3f0;
	--mgs02-warm: #e9e7e3;
	--mgs02-ink: #080808;
	--mgs02-muted: #666661;
	--mgs02-line: #d9d9d4;
	--mgs02-blue: #1746ff;
	--mgs02-blue-dark: #0d31bd;
	--mgs02-gutter: clamp(20px, 4vw, 68px);
	--mgs02-max: 1540px;
}

body.mgs-wear-system-02 {
	background: var(--mgs02-paper);
	color: var(--mgs02-ink);
	font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
	font-size: 16px;
	line-height: 1.55;
	-webkit-font-smoothing: antialiased;
}

.mgs-wear-system-02 *,
.mgs-wear-system-02 *::before,
.mgs-wear-system-02 *::after {
	box-sizing: border-box;
}

.mgs-wear-system-02 a,
.mgs-wear-system-02 button,
.mgs-wear-system-02 input,
.mgs-wear-system-02 select,
.mgs-wear-system-02 textarea {
	font: inherit;
}

.mgs-wear-system-02 a:focus-visible,
.mgs-wear-system-02 button:focus-visible,
.mgs-wear-system-02 input:focus-visible,
.mgs-wear-system-02 select:focus-visible,
.mgs-wear-system-02 textarea:focus-visible {
	outline: 3px solid var(--mgs02-blue);
	outline-offset: 3px;
}

.mgs-wear-system-02 #qodef-back-to-top,
.mgs-wear-system-02 .qqvfw-m-close,
.mgs-wear-system-02 .qwfw-m-close {
	min-width: 44px;
	min-height: 44px;
}

.mgs-wear-system-02 #qodef-page-wrapper,
.mgs-wear-system-02 #qodef-page-outer {
	background: var(--mgs02-paper);
}

/* Header: one restrained, commerce-first Corsen shell across Wear. */
.mgs-wear-system-02 #qodef-page-header,
.mgs-wear-system-02 #qodef-page-header-inner,
.mgs-wear-system-02 #qodef-page-sticky-header,
.mgs-wear-system-02 #qodef-page-sticky-header-inner,
.mgs-wear-system-02 #qodef-page-mobile-header,
.mgs-wear-system-02 #qodef-page-mobile-header-inner {
	background: rgba(255, 255, 255, 0.97);
	color: var(--mgs02-ink);
}

.mgs-wear-system-02 #qodef-page-header,
.mgs-wear-system-02 #qodef-page-mobile-header {
	border-bottom: 1px solid var(--mgs02-ink);
}

.mgs-wear-system-02 #qodef-page-header-inner,
.mgs-wear-system-02 #qodef-page-sticky-header-inner {
	min-height: 80px;
	padding-inline: clamp(20px, 3vw, 48px);
}

.mgs-wear-system-02 #qodef-page-header .qodef-header-logo-link,
.mgs-wear-system-02 #qodef-page-sticky-header .qodef-header-logo-link {
	max-width: clamp(188px, 16vw, 252px);
}

.mgs-wear-system-02 #qodef-page-header .qodef-header-logo-link img,
.mgs-wear-system-02 #qodef-page-sticky-header .qodef-header-logo-link img,
.mgs-wear-system-02 #qodef-page-mobile-header img {
	width: 100%;
	height: auto;
	max-height: 34px;
	object-fit: contain;
	filter: none;
}

.mgs-wear-system-02 #qodef-page-header .qodef-header-navigation > ul,
.mgs-wear-system-02 #qodef-page-sticky-header .qodef-header-navigation > ul {
	gap: clamp(14px, 1.5vw, 28px);
}

.mgs-wear-system-02 #qodef-page-header .qodef-header-navigation > ul > li > a,
.mgs-wear-system-02 #qodef-page-sticky-header .qodef-header-navigation > ul > li > a {
	position: relative;
	padding: 30px 0;
	color: var(--mgs02-ink);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.13em;
	text-transform: uppercase;
}

.mgs-wear-system-02 #qodef-page-header .qodef-header-navigation > ul > li > a::after,
.mgs-wear-system-02 #qodef-page-sticky-header .qodef-header-navigation > ul > li > a::after {
	content: "";
	position: absolute;
	right: 0;
	bottom: 22px;
	left: 0;
	height: 2px;
	background: var(--mgs02-blue);
	transform: scaleX(0);
	transform-origin: right;
	transition: transform 180ms ease;
}

.mgs-wear-system-02 #qodef-page-header .qodef-header-navigation > ul > li:hover > a::after,
.mgs-wear-system-02 #qodef-page-header .qodef-header-navigation > ul > li.current-menu-item > a::after,
.mgs-wear-system-02 #qodef-page-header .qodef-header-navigation > ul > li.current-menu-ancestor > a::after,
.mgs-wear-system-02 #qodef-page-sticky-header .qodef-header-navigation > ul > li:hover > a::after {
	transform: scaleX(1);
	transform-origin: left;
}

.mgs-wear-system-02 .qodef-header-navigation .sub-menu {
	min-width: 270px;
	padding: 18px 22px;
	border: 1px solid var(--mgs02-ink);
	background: var(--mgs02-paper);
	box-shadow: 8px 8px 0 rgba(0, 0, 0, 0.12);
}

.mgs-wear-system-02 .qodef-header-navigation .sub-menu li a {
	padding: 8px 0;
	color: var(--mgs02-ink);
	font-size: 13px;
}

.mgs-wear-system-02 .qodef-header-navigation .sub-menu li a:hover,
.mgs-wear-system-02 .qodef-header-navigation .sub-menu li a:focus-visible {
	color: var(--mgs02-blue);
}

.mgs-wear-system-02 #qodef-page-header .qodef-widget-holder,
.mgs-wear-system-02 #qodef-page-sticky-header .qodef-widget-holder {
	gap: 4px;
}

.mgs-wear-system-02 #qodef-page-header .qodef-widget-holder a,
.mgs-wear-system-02 #qodef-page-header .qodef-widget-holder button,
.mgs-wear-system-02 #qodef-page-sticky-header .qodef-widget-holder a,
.mgs-wear-system-02 #qodef-page-sticky-header .qodef-widget-holder button,
.mgs-wear-system-02 #qodef-page-mobile-header a,
.mgs-wear-system-02 #qodef-page-mobile-header button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 44px;
	min-height: 44px;
	color: var(--mgs02-ink);
}

.mgs-wear-system-02 #qodef-page-mobile-header-inner {
	min-height: 70px;
	padding-inline: 16px;
}

.mgs-wear-system-02 #qodef-page-mobile-header .qodef-mobile-header-logo-link,
.mgs-wear-system-02 #qodef-page-mobile-header .qodef-header-logo-link {
	width: min(54vw, 220px);
}

.mgs-wear-system-02 #qodef-page-mobile-header .qodef-mobile-header-navigation {
	max-height: calc(100vh - 70px);
	padding: 8px 18px 22px;
	border-bottom: 1px solid var(--mgs02-ink);
	background: var(--mgs02-paper);
	overflow-y: auto;
}

.mgs-wear-system-02 #qodef-page-mobile-header .qodef-mobile-header-navigation li a {
	min-height: 48px;
	padding-block: 12px;
	color: var(--mgs02-ink);
	font-size: 15px;
	font-weight: 600;
}

.mgs-wear-system-02 #qodef-page-mobile-header .qodef-mobile-header-navigation .sub-menu {
	padding-left: 16px;
	border-left: 2px solid var(--mgs02-blue);
}

.mgs-wear-system-02 #qodef-page-header .mgs-menu-utility,
.mgs-wear-system-02 #qodef-page-sticky-header .mgs-menu-utility {
	display: none;
}

/* Shared editorial page title and content rhythm. */
.mgs-wear-system-02 #qodef-page-title {
	min-height: clamp(160px, 21vw, 300px);
	border-bottom: 1px solid var(--mgs02-ink);
	background: var(--mgs02-paper);
}

.mgs-wear-system-02 #qodef-page-title .qodef-m-content {
	align-items: flex-end;
	padding: 46px var(--mgs02-gutter);
}

.mgs-wear-system-02 #qodef-page-title .qodef-m-title {
	max-width: 1100px;
	margin: 0;
	color: var(--mgs02-ink);
	font-size: clamp(42px, 7vw, 112px);
	font-weight: 500;
	letter-spacing: -0.065em;
	line-height: 0.88;
}

.mgs-wear-system-02 .qodef-breadcrumbs,
.mgs-wear-system-02 .qodef-breadcrumbs a {
	color: var(--mgs02-muted);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.mgs-wear-system-02 #qodef-page-inner {
	padding-top: clamp(42px, 6vw, 90px);
	padding-bottom: clamp(72px, 9vw, 140px);
}

.mgs-wear-candidate-02-page #qodef-page-inner {
	width: 100%;
	max-width: none;
	padding: 0;
}

.mgs-c02-eyebrow {
	margin: 0;
	font-size: 10px;
	font-weight: 800;
	letter-spacing: 0.19em;
	line-height: 1.4;
	text-transform: uppercase;
}

.mgs-c02-button,
.mgs-c02-text-link,
.mgs-wear-system-02 .button,
.mgs-wear-system-02 button.button,
.mgs-wear-system-02 input.button,
.mgs-wear-system-02 .woocommerce a.button,
.mgs-wear-system-02 .woocommerce button.button {
	border-radius: 0;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.mgs-c02-button,
.mgs-wear-system-02 .button,
.mgs-wear-system-02 button.button,
.mgs-wear-system-02 input.button,
.mgs-wear-system-02 .woocommerce a.button,
.mgs-wear-system-02 .woocommerce button.button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 50px;
	padding: 0 24px;
	border: 1px solid var(--mgs02-ink);
	background: var(--mgs02-ink);
	color: var(--mgs02-paper);
	transition: background 180ms ease, border-color 180ms ease, color 180ms ease;
}

.mgs-c02-button:hover,
.mgs-c02-button:focus-visible,
.mgs-wear-system-02 .button:hover,
.mgs-wear-system-02 .button:focus-visible,
.mgs-wear-system-02 .woocommerce a.button:hover,
.mgs-wear-system-02 .woocommerce button.button:hover {
	border-color: var(--mgs02-blue);
	background: var(--mgs02-blue);
	color: #fff;
}

.mgs-c02-button-line {
	background: transparent;
	color: var(--mgs02-ink);
}

.mgs-c02-text-link {
	display: inline-flex;
	gap: 18px;
	align-items: center;
	min-height: 44px;
	padding: 10px 0 7px;
	border-bottom: 1px solid currentColor;
	color: var(--mgs02-ink);
	text-decoration: none;
}

.mgs-c02-text-link:hover,
.mgs-c02-text-link:focus-visible {
	color: var(--mgs02-blue);
}

/* Candidate 02: white-dominant editorial campaign and commerce composition. */
.mgs-c02 {
	background: var(--mgs02-paper);
	color: var(--mgs02-ink);
	overflow: clip;
}

.mgs-c02-hero {
	position: relative;
	display: grid;
	grid-template-columns: minmax(350px, 0.78fr) minmax(0, 1.22fr);
	min-height: calc(100svh - 80px);
	border-bottom: 1px solid var(--mgs02-ink);
	background: var(--mgs02-paper);
}

.mgs-c02-hero-copy {
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: clamp(58px, 7vw, 116px) var(--mgs02-gutter);
}

.mgs-c02-hero-copy::before {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	width: 1px;
	background: var(--mgs02-ink);
}

.mgs-c02-hero h1 {
	margin: clamp(28px, 5vh, 62px) 0 28px;
	font-size: clamp(74px, 9.3vw, 170px);
	font-weight: 600;
	letter-spacing: -0.085em;
	line-height: 0.68;
	text-transform: uppercase;
}

.mgs-c02-hero h1 span {
	display: block;
	margin-left: 0.12em;
	font-size: 0.25em;
	font-weight: 600;
	letter-spacing: 0.08em;
	line-height: 1;
}

.mgs-c02-hero-deck {
	max-width: 520px;
	margin: 0 0 32px;
	font-size: clamp(16px, 1.25vw, 21px);
	line-height: 1.45;
}

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

.mgs-c02-hero-fact {
	display: grid;
	grid-template-columns: auto 1fr auto;
	gap: 12px;
	align-items: baseline;
	margin-top: clamp(50px, 8vh, 96px);
	padding-top: 16px;
	border-top: 1px solid var(--mgs02-line);
	font-size: 12px;
}

.mgs-c02-hero-fact span {
	color: var(--mgs02-blue);
	font-weight: 800;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.mgs-c02-hero-fact strong {
	font-weight: 500;
}

.mgs-c02-hero-fact em {
	font-style: normal;
	font-weight: 700;
}

.mgs-c02-hero-media {
	position: relative;
	display: block;
	min-height: calc(100svh - 80px);
	background: #c8c4c0;
	overflow: hidden;
}

.mgs-c02-hero-media picture,
.mgs-c02-hero-media img {
	display: block;
	width: 100%;
	height: 100%;
}

.mgs-c02-hero-image {
	object-fit: cover;
	object-position: center 28%;
	transform: scale(1.035);
	transition: transform 1.2s cubic-bezier(.2,.7,.2,1), filter 300ms ease;
}

.mgs-c02-ready .mgs-c02-hero-image {
	transform: scale(1);
}

.mgs-c02-hero-media:hover .mgs-c02-hero-image {
	transform: scale(1.02);
	filter: contrast(1.03);
}

.mgs-c02-hero-caption {
	position: absolute;
	right: 20px;
	bottom: 18px;
	padding: 8px 10px;
	background: rgba(255, 255, 255, 0.92);
	color: var(--mgs02-ink);
	font-size: 9px;
	font-weight: 800;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.mgs-c02-blue-rule {
	position: absolute;
	z-index: 3;
	right: 0;
	bottom: 0;
	left: 0;
	height: 7px;
	background: var(--mgs02-blue);
}

.mgs-c02-section-head {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	padding: 0 0 18px;
	border-bottom: 1px solid var(--mgs02-ink);
}

.mgs-c02-section-head > p:last-child {
	margin: 0;
	color: var(--mgs02-muted);
	font-size: 12px;
}

.mgs-c02-product {
	display: grid;
	grid-template-columns: minmax(0, 1.25fr) minmax(320px, .75fr);
	grid-template-rows: auto 1fr;
	column-gap: clamp(34px, 6vw, 100px);
	padding: clamp(80px, 10vw, 160px) var(--mgs02-gutter);
	background: var(--mgs02-paper);
}

.mgs-c02-product > .mgs-c02-section-head {
	grid-column: 1 / -1;
	margin-bottom: clamp(44px, 6vw, 84px);
}

.mgs-c02-product-gallery {
	display: grid;
	grid-template-columns: 1.15fr .85fr;
	gap: 2px;
	align-items: end;
	background: var(--mgs02-line);
}

.mgs-c02-product-gallery a {
	display: block;
	background: var(--mgs02-soft);
	overflow: hidden;
}

.mgs-c02-product-gallery picture,
.mgs-c02-product-gallery img {
	display: block;
	width: 100%;
	height: auto;
}

.mgs-c02-product-image {
	transition: transform 400ms cubic-bezier(.2,.7,.2,1);
}

.mgs-c02-product-gallery a:hover .mgs-c02-product-image {
	transform: scale(1.025);
}

.mgs-c02-product-info {
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	padding: 0 0 3vw;
}

.mgs-c02-product-info h2 {
	margin: 26px 0 28px;
	font-size: clamp(48px, 6.4vw, 112px);
	font-weight: 500;
	letter-spacing: -0.073em;
	line-height: 0.88;
}

.mgs-c02-price {
	font-size: 22px;
	font-weight: 700;
}

.mgs-c02-product-note {
	margin: 14px 0 42px;
	color: var(--mgs02-muted);
	font-size: 12px;
}

/* Phase 3C.8: authenticated, local-only five-product catalogue preview. */
.mgs-c38-catalogue {
	padding: clamp(76px, 10vw, 150px) var(--mgs02-gutter);
	border-top: 1px solid var(--mgs02-ink);
	background: #f8f8f5;
}

.mgs-c38-catalogue-head {
	align-items: flex-end;
	margin-bottom: clamp(44px, 7vw, 96px);
}

.mgs-c38-catalogue-head h2 {
	max-width: 980px;
	margin: 26px 0 0;
	font-size: clamp(58px, 8vw, 132px);
	font-weight: 500;
	letter-spacing: -.075em;
	line-height: .84;
}

.mgs-c38-catalogue-grid {
	display: grid;
	grid-template-columns: repeat(12, minmax(0, 1fr));
	gap: clamp(42px, 6vw, 92px) clamp(16px, 2.4vw, 38px);
}

.mgs-c38-card {
	grid-column: span 4;
	margin: 0;
}

.mgs-c38-card:nth-child(1),
.mgs-c38-card:nth-child(2) {
	grid-column: span 6;
}

.mgs-c38-card-link {
	display: block;
	color: var(--mgs02-ink);
	text-decoration: none;
}

.mgs-c38-card-media {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	aspect-ratio: 1 / 1;
	background: #efefeb;
	overflow: hidden;
}

.mgs-c38-card-image {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
	transition: transform 360ms cubic-bezier(.2,.7,.2,1);
}

.mgs-c38-card-link:hover .mgs-c38-card-image,
.mgs-c38-card-link:focus-visible .mgs-c38-card-image {
	transform: scale(1.025);
}

.mgs-c38-card-index {
	position: absolute;
	top: 14px;
	left: 14px;
	min-width: 38px;
	padding: 7px 8px;
	background: #fff;
	font-size: 10px;
	font-weight: 800;
	letter-spacing: .1em;
	text-align: center;
}

.mgs-c38-card-copy {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 10px 18px;
	padding-top: 16px;
	border-top: 1px solid var(--mgs02-ink);
}

.mgs-c38-card-copy small {
	grid-column: 1 / -1;
	color: var(--mgs02-muted);
	font-size: 9px;
	font-weight: 800;
	letter-spacing: .11em;
	text-transform: uppercase;
}

.mgs-c38-card-copy strong {
	font-size: clamp(22px, 2.2vw, 34px);
	font-weight: 500;
	letter-spacing: -.045em;
	line-height: 1;
}

.mgs-c38-card-price {
	align-self: end;
	font-size: 14px;
	font-weight: 800;
	white-space: nowrap;
}

.mgs-c02-collections {
	padding: clamp(76px, 10vw, 150px) var(--mgs02-gutter);
	border-top: 1px solid var(--mgs02-ink);
	background: var(--mgs02-paper);
}

.mgs-c02-section-head-large {
	align-items: end;
	margin-bottom: clamp(42px, 6vw, 80px);
}

.mgs-c02-section-head-large h2 {
	margin: 0;
	font-size: clamp(70px, 11vw, 190px);
	font-weight: 500;
	letter-spacing: -0.08em;
	line-height: .72;
}

.mgs-c02-collection-grid {
	display: grid;
	grid-template-columns: repeat(12, 1fr);
	gap: 18px;
}

.mgs-c02-collection-card {
	grid-column: span 4;
	color: var(--mgs02-ink);
	text-decoration: none;
}

.mgs-c02-collection-card:nth-child(2) {
	margin-top: 8vw;
}

.mgs-c02-collection-card:nth-child(3) {
	margin-top: 2vw;
}

.mgs-c02-collection-media {
	display: block;
	background: var(--mgs02-soft);
	overflow: hidden;
}

.mgs-c02-collection-media picture,
.mgs-c02-collection-media img {
	display: block;
	width: 100%;
	height: auto;
}

.mgs-c02-collection-image {
	transition: transform 500ms cubic-bezier(.2,.7,.2,1), filter 300ms ease;
}

.mgs-c02-collection-card:hover .mgs-c02-collection-image {
	transform: scale(1.025);
	filter: contrast(1.04);
}

.mgs-c02-collection-meta {
	display: grid;
	grid-template-columns: 1fr auto;
	gap: 8px;
	padding: 15px 0 0;
	border-top: 1px solid var(--mgs02-ink);
}

.mgs-c02-collection-meta small {
	grid-column: 1 / -1;
	color: var(--mgs02-muted);
	font-size: 9px;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

.mgs-c02-collection-meta strong {
	font-size: clamp(20px, 2.2vw, 34px);
	font-weight: 500;
	letter-spacing: -0.04em;
}

.mgs-c02-collection-meta i {
	font-style: normal;
}

.mgs-c02-statement {
	position: relative;
	padding: clamp(82px, 11vw, 170px) var(--mgs02-gutter);
	background: var(--mgs02-blue);
	color: #fff;
	overflow: hidden;
}

.mgs-c02-statement::after {
	content: "⧜";
	position: absolute;
	right: -.04em;
	bottom: -.32em;
	color: rgba(255, 255, 255, 0.13);
	font-size: min(58vw, 720px);
	font-weight: 700;
	line-height: 1;
}

.mgs-c02-statement h2 {
	position: relative;
	z-index: 1;
	max-width: 1320px;
	margin: clamp(30px, 5vw, 68px) 0 0;
	font-size: clamp(48px, 7.5vw, 128px);
	font-weight: 500;
	letter-spacing: -0.065em;
	line-height: .93;
	color: #fff !important;
}

.mgs-c02-shop-entry {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	min-height: 55vh;
	padding: clamp(76px, 10vw, 150px) var(--mgs02-gutter);
	background: var(--mgs02-ink);
	color: #fff;
}

.mgs-c02-shop-entry h2 {
	margin: 24px 0 0;
	font-size: clamp(72px, 12vw, 200px);
	font-weight: 500;
	letter-spacing: -0.085em;
	line-height: .75;
	color: #fff !important;
}

.mgs-c02-round-link {
	display: inline-flex;
	flex: 0 0 auto;
	flex-direction: column;
	justify-content: space-between;
	width: clamp(150px, 15vw, 230px);
	aspect-ratio: 1;
	padding: 24px;
	border: 1px solid #fff;
	border-radius: 50%;
	color: #fff;
	font-size: 12px;
	font-weight: 700;
	text-decoration: none;
	transition: background 180ms ease, border-color 180ms ease, transform 180ms ease;
}

.mgs-c02-round-link i {
	align-self: flex-end;
	font-size: 22px;
	font-style: normal;
}

.mgs-c02-round-link:hover,
.mgs-c02-round-link:focus-visible {
	border-color: var(--mgs02-blue);
	background: var(--mgs02-blue);
	color: #fff;
	transform: translateY(-4px);
}

/* Store catalogue and taxonomy archives: commerce remains predominantly white. */
.mgs-wear-system-02.woocommerce-shop #qodef-page-inner,
.mgs-wear-system-02.tax-product_cat #qodef-page-inner,
.mgs-wear-system-02.post-type-archive-product #qodef-page-inner {
	width: min(calc(100% - (2 * var(--mgs02-gutter))), var(--mgs02-max));
}

.mgs-wear-system-02 .woocommerce .woocommerce-result-count,
.mgs-wear-system-02 .woocommerce .woocommerce-ordering,
.mgs-wear-system-02 .qodef-woo-results {
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .09em;
	text-transform: uppercase;
}

.mgs-wear-system-02 .woocommerce ul.products {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: clamp(28px, 4vw, 64px) clamp(14px, 2.4vw, 38px);
	margin-top: clamp(40px, 6vw, 80px);
}

.mgs-wear-system-02 .woocommerce ul.products::before,
.mgs-wear-system-02 .woocommerce ul.products::after {
	display: none;
}

.mgs-wear-system-02 .woocommerce ul.products li.product {
	float: none;
	width: auto;
	margin: 0;
	color: var(--mgs02-ink);
}

.mgs-wear-system-02 .woocommerce ul.products li.product .qodef-e-media,
.mgs-wear-system-02 .woocommerce ul.products li.product > a:first-child {
	display: block;
	background: var(--mgs02-soft);
	overflow: hidden;
}

.mgs-wear-system-02 .woocommerce ul.products li.product img {
	width: 100%;
	height: auto;
	margin: 0;
	transition: transform 360ms cubic-bezier(.2,.7,.2,1);
}

.mgs-wear-system-02 .woocommerce ul.products li.product:hover img {
	transform: scale(1.025);
}

.mgs-wear-system-02 .woocommerce ul.products li.product .woocommerce-loop-product__title,
.mgs-wear-system-02 .woocommerce ul.products li.product .qodef-e-title {
	margin: 18px 0 4px;
	font-size: clamp(20px, 2vw, 30px);
	font-weight: 500;
	letter-spacing: -0.035em;
	line-height: 1.05;
}

.mgs-wear-system-02 .woocommerce ul.products li.product .price {
	color: var(--mgs02-ink);
	font-size: 14px;
	font-weight: 700;
}

.mgs-c02-empty-state {
	max-width: 960px;
	margin: 30px 0;
	padding: clamp(54px, 8vw, 110px);
	border: 1px solid var(--mgs02-ink);
	background: var(--mgs02-soft);
}

.mgs-c02-empty-state h2 {
	margin: 26px 0;
	font-size: clamp(38px, 5vw, 78px);
	font-weight: 500;
	letter-spacing: -.055em;
	line-height: .95;
}

.mgs-c02-empty-state p:not(.mgs-c02-eyebrow) {
	max-width: 620px;
	margin-bottom: 36px;
}

/* Product: the object stays central, not secondary to decoration. */
.mgs-wear-system-02.single-product {
	overflow-x: clip;
}

.mgs-wear-system-02.single-product #qodef-page-inner {
	width: min(calc(100% - (2 * var(--mgs02-gutter))), var(--mgs02-max));
	padding-top: clamp(42px, 6vw, 90px);
}

.mgs-wear-system-02.single-product div.product {
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(340px, .85fr);
	gap: clamp(38px, 6vw, 100px);
}

.mgs-wear-system-02.single-product .woocommerce-product-gallery {
	width: 100%;
	margin: 0;
	background: var(--mgs02-soft);
}

.mgs-wear-system-02.single-product div.product .summary {
	position: sticky;
	top: 108px;
	align-self: start;
	width: 100%;
	margin: 0;
	padding-top: 18px;
}

.mgs-wear-system-02.single-product .product_title {
	margin: 0 0 22px;
	font-size: clamp(52px, 6.2vw, 104px);
	font-weight: 500;
	letter-spacing: -.07em;
	line-height: .88;
}

.mgs-wear-system-02.single-product .summary .price {
	margin: 0 0 34px;
	color: var(--mgs02-ink);
	font-size: 22px;
	font-weight: 700;
}

.mgs-wear-system-02.single-product table.variations {
	width: 100%;
	margin: 0 0 28px;
	border-top: 1px solid var(--mgs02-ink);
}

.mgs-wear-system-02.single-product table.variations th,
.mgs-wear-system-02.single-product table.variations td {
	padding: 16px 0;
	border-bottom: 1px solid var(--mgs02-line);
	text-align: left;
	vertical-align: middle;
}

.mgs-wear-system-02.single-product table.variations select {
	min-height: 48px;
	border: 1px solid var(--mgs02-ink);
	background: #fff;
}

.mgs-wear-system-02.single-product .woocommerce-tabs,
.mgs-wear-system-02.single-product .related {
	grid-column: 1 / -1;
	margin-top: clamp(70px, 9vw, 130px);
}

/* Cart, Account and content pages. */
.mgs-wear-system-02.woocommerce-cart #qodef-page-inner,
.mgs-wear-system-02.woocommerce-account #qodef-page-inner,
.mgs-wear-system-02.woocommerce-checkout #qodef-page-inner {
	width: min(calc(100% - (2 * var(--mgs02-gutter))), 1240px);
}

.mgs-wear-system-02 .woocommerce table.shop_table {
	border: 0;
	border-top: 1px solid var(--mgs02-ink);
	border-radius: 0;
}

.mgs-wear-system-02 .woocommerce table.shop_table th,
.mgs-wear-system-02 .woocommerce table.shop_table td {
	padding: 18px 12px;
	border-color: var(--mgs02-line);
}

.mgs-wear-system-02 .woocommerce form .form-row input.input-text,
.mgs-wear-system-02 .woocommerce form .form-row textarea,
.mgs-wear-system-02 .woocommerce form.login,
.mgs-wear-system-02 .woocommerce form.register {
	border-radius: 0;
}

.mgs-wear-system-02 .woocommerce form.login,
.mgs-wear-system-02 .woocommerce form.register {
	padding: clamp(24px, 4vw, 50px);
	border: 1px solid var(--mgs02-ink);
}

.mgs-wear-system-02 .woocommerce form .form-row input.input-text,
.mgs-wear-system-02 .woocommerce form .form-row textarea {
	min-height: 50px;
	border: 0;
	border-bottom: 1px solid var(--mgs02-ink);
	background: transparent;
}

.mgs-c02-info {
	display: grid;
	grid-template-columns: minmax(0, 1.2fr) minmax(320px, .8fr);
	gap: clamp(48px, 10vw, 180px);
	width: min(calc(100% - (2 * var(--mgs02-gutter))), var(--mgs02-max));
	min-height: 62vh;
	margin-inline: auto;
	padding: clamp(70px, 9vw, 150px) 0;
}

.mgs-c02-info h1 {
	margin: 30px 0 0;
	font-size: clamp(72px, 11vw, 184px);
	font-weight: 500;
	letter-spacing: -.085em;
	line-height: .72;
}

.mgs-c02-info-body {
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	padding-bottom: 20px;
}

.mgs-c02-info-lead {
	margin: 0 0 28px;
	font-size: clamp(24px, 3vw, 44px);
	letter-spacing: -.035em;
	line-height: 1.1;
}

.mgs-c02-status-note {
	margin: 0 0 42px;
	padding: 18px 0;
	border-top: 1px solid var(--mgs02-line);
	border-bottom: 1px solid var(--mgs02-line);
	color: var(--mgs02-muted);
}

.mgs-c02-info nav {
	display: flex;
	flex-wrap: wrap;
	gap: 22px;
	align-items: center;
}

/* Footer: black structural anchor, fully local links. */
.mgs-wear-system-02 #qodef-page-footer {
	border-top: 1px solid var(--mgs02-ink);
	background: var(--mgs02-ink);
	color: #fff;
}

.mgs-wear-system-02 #qodef-page-footer .qodef-footer-top-area,
.mgs-wear-system-02 #qodef-page-footer .qodef-footer-bottom-area,
.mgs-wear-system-02 #qodef-page-footer .qodef-grid-inner {
	background: var(--mgs02-ink);
}

.mgs-wear-system-02 #qodef-page-footer-top-area,
.mgs-wear-system-02 #qodef-page-footer-bottom-area,
.mgs-wear-system-02 #qodef-page-footer-top-area-inner,
.mgs-wear-system-02 #qodef-page-footer-bottom-area-inner {
	background: var(--mgs02-ink) !important;
}

.mgs-wear-system-02 #qodef-page-footer-top-area-inner > .qodef-grid,
.mgs-wear-system-02 #qodef-page-footer-bottom-area-inner > .qodef-grid {
	width: 100%;
	max-width: none;
	padding-inline: var(--mgs02-gutter);
	background: var(--mgs02-ink);
}

.mgs-wear-system-02 #qodef-page-footer .widget,
.mgs-wear-system-02 #qodef-page-footer .wp-block-group {
	margin: 0;
}

.mgs-wear-system-02 #qodef-page-footer .mgs-wear-footer-02 {
	display: grid;
	grid-template-columns: minmax(240px, 1.4fr) 1fr 1fr;
	gap: clamp(30px, 6vw, 100px);
	padding: clamp(42px, 6vw, 82px) 0;
}

.mgs-wear-system-02 #qodef-page-footer .mgs-wear-footer-02 h2 {
	margin: 0;
	color: #fff !important;
	font-size: clamp(38px, 5vw, 76px);
	font-weight: 500;
	letter-spacing: -.065em;
	line-height: .9;
}

.mgs-wear-system-02 #qodef-page-footer .mgs-wear-footer-02 p {
	margin: 18px 0 0;
	color: rgba(255, 255, 255, .68);
	font-size: 12px;
}

.mgs-wear-system-02 #qodef-page-footer .mgs-wear-footer-02 h3 {
	margin: 0 0 18px;
	color: rgba(255, 255, 255, .58) !important;
	font-size: 10px;
	font-weight: 800;
	letter-spacing: .16em;
	text-transform: uppercase;
}

.mgs-wear-system-02 #qodef-page-footer .mgs-wear-footer-02 ul {
	display: grid;
	gap: 9px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.mgs-wear-system-02 #qodef-page-footer .mgs-wear-footer-02 a,
.mgs-wear-system-02 #qodef-page-footer .mgs-wear-footer-copyright {
	color: #fff;
	font-size: 13px;
	text-decoration: none;
}

.mgs-wear-system-02 #qodef-page-footer .mgs-wear-footer-02 a:hover,
.mgs-wear-system-02 #qodef-page-footer .mgs-wear-footer-02 a:focus-visible {
	color: #8da5ff;
}

.mgs-wear-system-02 .mgs-c02-account-link {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	margin-right: 18px;
	color: inherit;
	font-size: 10px;
	font-weight: 600;
	letter-spacing: .12em;
	text-transform: uppercase;
}

body.mgs-wear-system-02 {
	overflow-x: clip;
}

/* Keep cross-page Collections navigation clear of the site header. */
.mgs-wear-system-02 #mgs-c02-collections-title {
	scroll-margin-top: 120px;
}

/* Remove empty third-party catalogue controls that duplicate direct paths. */
.mgs-wear-system-02 .qqvfw-shortcode,
.mgs-wear-system-02 .qwfw-add-to-wishlist-wrapper {
	display: none !important;
}

/* Preserve an unmistakable keyboard focus indicator on commerce controls. */
.mgs-wear-system-02.single-product .select2-selection:focus,
.mgs-wear-system-02.single-product input:focus-visible,
.mgs-wear-system-02.single-product select:focus-visible,
.mgs-wear-system-02.single-product button:focus-visible {
	outline: 3px solid var(--mgs02-blue) !important;
	outline-offset: 3px;
}

.mgs-wear-system-02 #qodef-page-footer .qodef-footer-bottom-area {
	border-top: 1px solid rgba(255, 255, 255, .25);
}

.mgs-wear-system-02 #qodef-page-footer .qodef-footer-bottom-area .qodef-grid-inner {
	padding-block: 18px;
}

.mgs-wear-system-02 #qodef-page-footer .qodef-footer-top-area-inner,
.mgs-wear-system-02 #qodef-page-footer .qodef-footer-bottom-area-inner {
	padding-inline: var(--mgs02-gutter);
}

@media (max-width: 1180px) {
	.mgs-wear-system-02 #qodef-page-header .qodef-header-navigation > ul {
		gap: 14px;
	}

	.mgs-wear-system-02 #qodef-page-header .qodef-header-navigation > ul > li > a {
		font-size: 10px;
	}

	.mgs-c02-hero h1 {
		font-size: clamp(68px, 9.2vw, 120px);
	}

	.mgs-c02-product {
		grid-template-columns: 1fr 1fr;
	}
}

@media (max-width: 1024px) {
	.mgs-c38-card,
	.mgs-c38-card:nth-child(1),
	.mgs-c38-card:nth-child(2) {
		grid-column: span 6;
	}

	.mgs-c02-hero {
		grid-template-columns: .9fr 1.1fr;
		min-height: 760px;
	}

	.mgs-c02-hero-media {
		min-height: 760px;
	}

	.mgs-c02-hero-fact {
		grid-template-columns: 1fr;
	}

	.mgs-c02-product {
		grid-template-columns: 1fr;
	}

	.mgs-c02-product-info {
		padding: 48px 0 0;
	}

	.mgs-c02-product-gallery {
		grid-row: 2;
	}

	.mgs-c02-info {
		grid-template-columns: 1fr;
		min-height: 0;
	}

	.mgs-c02-info-body {
		max-width: 760px;
	}

	.mgs-wear-system-02.single-product div.product {
		grid-template-columns: 1fr;
	}

	.mgs-wear-system-02.single-product div.product .summary {
		position: static;
	}
}

@media (max-width: 768px) {
	/* Keep long custom variation labels inside the mobile product column. */
	.mgs-wear-system-02.single-product table.variations,
	.mgs-wear-system-02.single-product table.variations tbody,
	.mgs-wear-system-02.single-product table.variations tr,
	.mgs-wear-system-02.single-product table.variations th,
	.mgs-wear-system-02.single-product table.variations td {
		display: block !important;
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		box-sizing: border-box;
	}

	.mgs-wear-system-02.single-product table.variations select,
	.mgs-wear-system-02.single-product table.variations .select2-container {
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
	}

	.mgs-wear-system-02.single-product .woocommerce-Tabs-panel {
		max-width: calc(100vw - 55px);
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}

	.mgs-wear-system-02.single-product .woocommerce-product-gallery .zoomImg {
		display: none !important;
	}

	.mgs-wear-system-02.single-product #size-guide {
		display: block;
		width: calc(100vw - 55px) !important;
		max-width: calc(100vw - 55px);
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}

	.mgs-wear-system-02 #qodef-page-title .qodef-m-content {
		padding-inline: 20px;
	}

	.mgs-wear-system-02 #qodef-page-title .qodef-m-title {
		font-size: clamp(42px, 14vw, 72px);
	}

	.mgs-c02-hero {
		display: flex;
		flex-direction: column;
		min-height: auto;
	}

	.mgs-c02-hero-copy {
		padding: 54px 20px 48px;
	}

	.mgs-c02-hero-copy::before {
		display: none;
	}

	.mgs-c02-hero h1 {
		font-size: clamp(76px, 27vw, 116px);
	}

	.mgs-c02-hero-deck {
		font-size: 16px;
	}

	.mgs-c02-actions {
		display: grid;
		grid-template-columns: 1fr 1fr;
	}

	.mgs-c02-button {
		padding-inline: 12px;
	}

	.mgs-c02-hero-fact {
		margin-top: 44px;
	}

	.mgs-c02-hero-media {
		min-height: min(128vw, 640px);
		border-top: 1px solid var(--mgs02-ink);
	}

	.mgs-c02-hero-image {
		object-position: center top;
	}

	.mgs-c02-product,
	.mgs-c38-catalogue,
	.mgs-c02-collections,
	.mgs-c02-statement,
	.mgs-c02-shop-entry {
		padding-right: 20px;
		padding-left: 20px;
	}

	.mgs-c02-section-head {
		align-items: flex-start;
	}

	.mgs-c02-section-head > p:last-child {
		display: none;
	}

	.mgs-c02-product-gallery {
		grid-template-columns: 1fr 1fr;
	}

	.mgs-c02-product-info h2 {
		font-size: clamp(50px, 17vw, 76px);
	}

	.mgs-c38-catalogue-head {
		display: block;
	}

	.mgs-c38-catalogue-head > p {
		margin-top: 18px;
	}

	.mgs-c02-section-head-large {
		display: block;
	}

	.mgs-c02-section-head-large h2 {
		margin-top: 26px;
		font-size: clamp(72px, 23vw, 104px);
	}

	.mgs-c02-collection-grid {
		display: grid;
		grid-template-columns: 1fr;
		gap: 38px;
	}

	.mgs-c02-collection-card,
	.mgs-c02-collection-card:nth-child(2),
	.mgs-c02-collection-card:nth-child(3) {
		grid-column: auto;
		margin-top: 0;
	}

	.mgs-c02-statement h2 {
		font-size: clamp(46px, 14vw, 70px);
	}

	.mgs-c02-shop-entry {
		display: block;
		min-height: 0;
	}

	.mgs-c02-shop-entry h2 {
		font-size: clamp(70px, 24vw, 108px);
	}

	.mgs-c02-round-link {
		width: 150px;
		margin-top: 56px;
	}

	.mgs-wear-system-02 .woocommerce ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 36px 12px;
	}

	.mgs-wear-system-02 .woocommerce ul.products li.product .woocommerce-loop-product__title,
	.mgs-wear-system-02 .woocommerce ul.products li.product .qodef-e-title {
		font-size: 18px;
	}

	.mgs-c02-info h1 {
		font-size: clamp(72px, 24vw, 110px);
	}

	.mgs-wear-system-02 #qodef-page-footer .mgs-wear-footer-02 {
		grid-template-columns: 1fr 1fr;
	}

	.mgs-wear-system-02 #qodef-page-footer .mgs-wear-footer-02 > :first-child {
		grid-column: 1 / -1;
	}
}

@media (max-width: 460px) {
	.mgs-c02-section-head-large h2 {
		font-size: clamp(56px, 18vw, 68px);
		letter-spacing: -.07em;
		line-height: .82;
		overflow-wrap: normal;
		white-space: nowrap;
		word-break: normal;
	}

	.mgs-c02-actions {
		grid-template-columns: 1fr;
	}

	.mgs-c02-product-gallery {
		grid-template-columns: 1fr;
	}

	.mgs-c38-catalogue-grid {
		grid-template-columns: 1fr;
		gap: 42px;
	}

	.mgs-c38-card,
	.mgs-c38-card:nth-child(1),
	.mgs-c38-card:nth-child(2) {
		grid-column: auto;
	}

	.mgs-wear-system-02 .woocommerce ul.products {
		grid-template-columns: 1fr;
	}

	/* Corsen positions catalogue prices over the title line. Stack them on
	 * narrow screens so long product names and variable price ranges remain
	 * readable without collision. */
	.mgs-wear-system-02 .qodef-woo-product-list .qodef-woo-product-content .qodef-woo-product-title {
		max-width: 100%;
	}

	.mgs-wear-system-02 .qodef-woo-product-list .qodef-woo-product-content .price {
		position: static !important;
		display: block !important;
		float: none;
		margin-top: 0.4rem;
		text-align: left;
	}

	.mgs-wear-system-02 #qodef-page-footer .mgs-wear-footer-02 {
		grid-template-columns: 1fr;
	}

	.mgs-wear-system-02 #qodef-page-footer .mgs-wear-footer-02 > :first-child {
		grid-column: auto;
	}

	.mgs-wear-system-02 #qodef-page-footer .mgs-wear-footer-02 ul {
		gap: 0;
	}

	.mgs-wear-system-02 #qodef-page-footer .mgs-wear-footer-02 a {
		display: inline-flex;
		align-items: center;
		min-height: 44px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.mgs-wear-system-02 *,
	.mgs-wear-system-02 *::before,
	.mgs-wear-system-02 *::after {
		scroll-behavior: auto !important;
		transition-duration: .01ms !important;
		animation-duration: .01ms !important;
		animation-iteration-count: 1 !important;
	}

	.mgs-c02-hero-image {
		transform: none !important;
	}
}


/* Candidate 02: keep the divided desktop header within the viewport at compact desktop widths. */
@media (min-width: 1025px) and (max-width: 1279px) {
	.mgs-wear-system-02 #qodef-page-header .qodef-header-navigation > ul {
		gap: 14px;
	}
}

@media (max-width: 768px) {
	.mgs-wear-system-02.woocommerce-checkout #customer_details {
		width: 100% !important;
		margin-right: 0 !important;
		margin-left: 0 !important;
	}

	.mgs-wear-system-02.woocommerce-checkout #coming-soon-footer-banner {
		width: 100vw !important;
		max-width: 100vw !important;
	}

	/* Keep the Serenity Armor size chart readable instead of clipping its last column. */
	.mgs-wear-system-02.single-product .woocommerce-Tabs-panel {
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}

	.mgs-wear-system-02.single-product .woocommerce-Tabs-panel table {
		min-width: 620px;
	}
}
