/*
 * MooGold typography
 * Manrope is self-hosted to keep the storefront consistent across devices
 * without adding a third-party font request during page rendering.
 */
@font-face {
	font-family: "Manrope";
	font-style: normal;
	font-weight: 200 800;
	font-display: swap;
	src: url("../fonts/manrope-latin-ext-variable.woff2") format("woff2");
	unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* ============================================================
   REFUND POLICY — READABLE, PAGE-SCOPED LAYOUT
   ============================================================ */
.mg-page-refund .entry-header{display:none}
.mg-page-refund .entry-content{max-width:1060px;margin:0 auto;padding:0 0 72px}
.mg-page-refund .mg-policy{display:grid;gap:22px}
.mg-page-refund .mg-policy>*{margin:0!important}

.mg-page-refund .mg-policy__hero{position:relative;isolation:isolate;overflow:hidden;padding:clamp(38px,6vw,72px);border:1px solid #f0c760;border-radius:28px;background:linear-gradient(120deg,#fff7df 0%,#fffdfa 60%,#ffe29a 100%);box-shadow:0 22px 54px rgba(41,35,24,.09)}
.mg-page-refund .mg-policy__hero:before,.mg-page-refund .mg-policy__hero:after{position:absolute;z-index:-1;content:"";border:30px solid rgba(242,168,0,.13);border-radius:50%}
.mg-page-refund .mg-policy__hero:before{width:240px;height:240px;right:-72px;top:-128px}
.mg-page-refund .mg-policy__hero:after{width:110px;height:110px;right:160px;bottom:-96px}
.mg-page-refund .mg-policy__eyebrow{margin:0 0 10px!important;color:#9b6500;font-size:12px;font-weight:800;letter-spacing:.15em}
.mg-page-refund .mg-policy__hero h1{max-width:760px;margin:0!important;color:#151821;font-size:clamp(40px,6vw,68px);font-weight:800;letter-spacing:-.045em;line-height:1}
.mg-page-refund .mg-policy__hero>p:last-child{max-width:670px;margin:18px 0 0!important;color:#555c68;font-size:17px;line-height:1.65}

.mg-page-refund .mg-policy__summary{display:grid;grid-template-columns:52px minmax(0,1fr);align-items:center;gap:16px;padding:22px 24px;border:1px solid #efc65e;border-radius:19px;background:#fff9e8;color:#373c47}
.mg-page-refund .mg-policy__summary-icon{display:grid;width:46px;height:46px;place-items:center;border-radius:14px;background:#ffb000;color:#151821;font-size:22px;font-weight:900}
.mg-page-refund .mg-policy__summary strong{display:block;margin-bottom:3px;color:#151821;font-size:17px}
.mg-page-refund .mg-policy__summary span:not(.mg-policy__summary-icon){display:block;color:#656c79;font-size:14px;line-height:1.5}

.mg-page-refund .mg-policy__section{padding:clamp(26px,4vw,42px);border:1px solid #e4e6eb;border-radius:22px;background:#fff;box-shadow:0 12px 34px rgba(28,31,40,.045)}
.mg-page-refund .mg-policy__section--final{border-color:#ead8ae;background:#fffdf8}
.mg-page-refund .mg-policy__section-heading{display:grid;grid-template-columns:54px minmax(0,1fr);align-items:center;gap:16px;margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid #e8e9ed}
.mg-page-refund .mg-policy__section-heading>span{display:grid;width:50px;height:50px;place-items:center;border-radius:15px;background:#191d27;color:#ffbf24;font-size:14px;font-weight:800;letter-spacing:.06em}
.mg-page-refund .mg-policy__section-heading p{margin:0 0 3px!important;color:#a56b00;font-size:11px;font-weight:800;letter-spacing:.13em}
.mg-page-refund .mg-policy__section-heading h2{margin:0!important;color:#171a22;font-size:clamp(23px,3vw,31px);font-weight:800;letter-spacing:-.025em;line-height:1.2}

.mg-page-refund .mg-policy__section ul,.mg-page-refund .mg-policy__section ol{display:grid;gap:13px;margin:0!important;padding:0!important;list-style:none!important;counter-reset:policy-item}
.mg-page-refund .mg-policy__section li{position:relative;margin:0!important;padding:15px 18px 15px 50px;border:1px solid #ececf0;border-radius:15px;background:#f8f9fb;color:#565e6c;font-size:15px;line-height:1.62;counter-increment:policy-item}
.mg-page-refund .mg-policy__section li:before{position:absolute;left:16px;top:16px;display:grid;width:23px;height:23px;place-items:center;border-radius:50%;background:#fff0c4;color:#8b5a00;content:"✓";font-size:12px;font-weight:900}
.mg-page-refund .mg-policy__section ol li:before{background:#191d27;color:#ffbf24;content:counter(policy-item);font-size:11px}
.mg-page-refund .mg-policy__section a{color:#9a6500;font-weight:750;text-decoration:underline;text-decoration-color:rgba(154,101,0,.35);text-underline-offset:3px}

.mg-page-refund .mg-policy__support{position:relative;display:flex;align-items:center;justify-content:space-between;gap:28px;overflow:hidden;padding:34px 38px;border:1px solid rgba(255,191,35,.45);border-radius:23px;background:#191d27;color:#fff;box-shadow:0 20px 44px rgba(17,20,28,.14)}
.mg-page-refund .mg-policy__support:after{position:absolute;width:180px;height:180px;right:-76px;bottom:-116px;border:28px solid rgba(242,168,0,.13);border-radius:50%;content:""}
.mg-page-refund .mg-policy__support>div{position:relative;z-index:1}
.mg-page-refund .mg-policy__support p{margin:0 0 5px!important;color:#ffc13a;font-size:11px;font-weight:800;letter-spacing:.13em}
.mg-page-refund .mg-policy__support h2{margin:0 0 8px!important;color:#fff;font-size:clamp(24px,3vw,34px);font-weight:800;letter-spacing:-.025em}
.mg-page-refund .mg-policy__support div>span{color:#c9ced8;font-size:14px;line-height:1.55}
.mg-page-refund .mg-policy__support>a{position:relative;z-index:1;display:inline-flex;flex:0 0 auto;align-items:center;gap:12px;min-height:52px;padding:0 22px;border-radius:15px;background:#ffb000;color:#151821;font-size:15px;font-weight:800;text-decoration:none;box-shadow:0 10px 24px rgba(0,0,0,.14)}
.mg-page-refund .mg-policy__support>a:hover{background:#ffc13a;color:#151821;transform:translateY(-1px)}

@media (max-width:760px){
  .mg-page-refund .entry-content{padding-bottom:42px}
  .mg-page-refund .mg-policy{gap:16px}
  .mg-page-refund .mg-policy__hero{padding:34px 24px;border-radius:22px}
  .mg-page-refund .mg-policy__hero h1{font-size:42px}
  .mg-page-refund .mg-policy__hero>p:last-child{font-size:15px;line-height:1.6}
  .mg-page-refund .mg-policy__summary{grid-template-columns:44px minmax(0,1fr);gap:13px;padding:18px;border-radius:17px}
  .mg-page-refund .mg-policy__summary-icon{width:40px;height:40px;border-radius:12px}
  .mg-page-refund .mg-policy__summary strong{font-size:15px;line-height:1.35}
  .mg-page-refund .mg-policy__summary span:not(.mg-policy__summary-icon){font-size:13px}
  .mg-page-refund .mg-policy__section{padding:22px 18px;border-radius:19px}
  .mg-page-refund .mg-policy__section-heading{grid-template-columns:46px minmax(0,1fr);gap:13px;margin-bottom:18px;padding-bottom:17px}
  .mg-page-refund .mg-policy__section-heading>span{width:44px;height:44px;border-radius:13px}
  .mg-page-refund .mg-policy__section-heading h2{font-size:22px}
  .mg-page-refund .mg-policy__section li{padding:14px 14px 14px 44px;border-radius:13px;font-size:14px;line-height:1.58}
  .mg-page-refund .mg-policy__section li:before{left:13px;top:14px}
  .mg-page-refund .mg-policy__support{display:grid;gap:22px;padding:28px 22px;border-radius:20px}
  .mg-page-refund .mg-policy__support h2{font-size:26px}
  .mg-page-refund .mg-policy__support>a{justify-content:center;width:100%;min-height:50px}
}

@font-face {
	font-family: "Manrope";
	font-style: normal;
	font-weight: 200 800;
	font-display: swap;
	src: url("../fonts/manrope-latin-variable.woff2") format("woff2");
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root {
	--mg-gold: #f2a800;
	--mg-gold-deep: #d99000;
	--mg-ink: #14171f;
	--mg-muted: #687080;
	--mg-line: #e8eaf0;
	--mg-soft: #f6f7f9;
	--mg-white: #ffffff;
	--mg-navy: #071321;
	--mg-radius-sm: 12px;
	--mg-radius: 18px;
	--mg-radius-lg: 26px;
	--mg-shadow: 0 14px 42px rgba(22, 29, 42, .09);
	--mg-font: "Manrope", ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

html,
body {
	font-family: var(--mg-font);
	font-optical-sizing: auto;
}

button,
input,
select,
textarea {
	font-family: var(--mg-font) !important;
	font-optical-sizing: auto;
}

/* Account UX consistency audit (2026-08-07)
   Dark is reserved for premium/protected value, gold for actions and current
   state, and neutral surfaces for routine account information. */

/* The desktop table header is a utility label: dark with white text provides
   strong contrast while the gold View button remains the primary action. */
body.logged-in.woocommerce-account .mg-account-content .license_key_template_table tr:first-child th {
	color: #fff !important;
	background: #171a22 !important;
	border-color: #171a22 !important;
	font-weight: 750 !important;
}

/* The wallet plugin does not expose an active class on its sub-navigation.
   Use each native page signature to identify the current destination. */
body.woocommerce-account .mg-account-content:has(.woo-wallet-transactions-items):not(:has(.search-container))
	.woo-wallet-sidebar a[href$="/wallet/"],
body.woocommerce-account .mg-account-content:has(.woo-wallet-balance-to-add)
	.woo-wallet-sidebar a[href*="/wallet/add/"],
body.woocommerce-account .mg-account-content:has(.search-container)
	.woo-wallet-sidebar a[href*="/wallet/wallet-transactions/"],
body.woocommerce-account .mg-account-content:has(input[name="woo_wallet_redeem_code"])
	.woo-wallet-sidebar a[href*="/wallet/redeem/"] {
	color: #171a22 !important;
	background: #fff7df !important;
	box-shadow: inset 0 0 0 1px #e8bd51, 0 4px 12px rgba(145, 94, 0, .08) !important;
}

/* Orders are utility actions, so use a readable medium-bold label and ensure
   compact links still have a reliable pointer/touch target. */
body.woocommerce-account .mg-account-content .mg-order-search button,
body.woocommerce-account .mg-account-content .woocommerce-EditAccountForm .button {
	font-weight: 750 !important;
}

body.woocommerce-account .mg-account-content .shop_table a:not(.button) {
	display: inline-flex;
	align-items: center;
	min-height: 32px;
	padding: 5px 3px;
}

body.woocommerce-account .mg-account-content .shop_table .button {
	min-height: 40px;
	font-weight: 750;
}

/* Verification method labels become the complete click target. */
body.woocommerce-account .mg-account-content .mg-method-option {
	display: inline-flex !important;
	align-items: center !important;
	gap: 10px !important;
	min-height: 44px !important;
	padding: 9px 12px !important;
	cursor: pointer !important;
}

body.woocommerce-account .mg-account-content .mg-method-option input.sendVia {
	flex: 0 0 20px !important;
	width: 20px !important;
	height: 20px !important;
	margin: 0 !important;
	accent-color: #f2a800 !important;
}

body.woocommerce-account .mg-account-content .mg-method-option:has(input:checked) {
	color: #171a22 !important;
	background: #fff7df !important;
	border-color: #e8bd51 !important;
}

@media (max-width: 700px) {
	body.woocommerce-account .mg-account-content .shop_table a:not(.button) {
		min-height: 36px;
		padding: 7px 4px;
	}
}

/* License Key — native MooGold Serial plugin, styled entirely by the child theme. */
body.logged-in.woocommerce-account .mg-account-content:has(.license_key_template_table),
body.logged-in.woocommerce-account .mg-account-content:has(.key-container) {
	position: relative;
	overflow: hidden;
	padding: clamp(24px, 4vw, 48px) !important;
	background:
		radial-gradient(circle at 100% 0, rgba(255, 181, 0, .11) 0 110px, transparent 111px),
		linear-gradient(180deg, #fff 0%, #fffdf8 100%) !important;
	border: 1px solid #e7e2d8 !important;
	border-radius: 26px !important;
	box-shadow: 0 20px 48px rgba(24, 27, 35, .09) !important;
}

body.logged-in.woocommerce-account .mg-account-content form:has(.license_key_template_table) {
	display: block;
	margin: 0;
}

body.logged-in.woocommerce-account .mg-account-content form:has(.license_key_template_table)::before {
	content: "Your license keys";
	display: block;
	margin: 0 0 6px;
	color: #171a22;
	font-size: clamp(28px, 3vw, 42px);
	font-weight: 900;
	letter-spacing: -.035em;
	line-height: 1.08;
}

body.logged-in.woocommerce-account .mg-account-content form:has(.license_key_template_table)::after {
	content: "Choose View to securely reveal the key for an order.";
	display: block;
	margin-top: 14px;
	color: #697181;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.5;
}

body.logged-in.woocommerce-account .license_key_template_table {
	width: 100% !important;
	margin: 24px 0 0 !important;
	border: 0 !important;
	border-collapse: separate !important;
	border-spacing: 0 10px !important;
	background: transparent !important;
	box-shadow: none !important;
}

body.logged-in.woocommerce-account .license_key_template_table tbody,
body.logged-in.woocommerce-account .license_key_template_table tr,
body.logged-in.woocommerce-account .license_key_template_table th,
body.logged-in.woocommerce-account .license_key_template_table td {
	border: 0 !important;
}

body.logged-in.woocommerce-account .license_key_template_table tr:first-child th {
	padding: 13px 20px !important;
	color: #fff !important;
	background: #171a22 !important;
	font-size: 12px !important;
	font-weight: 850 !important;
	letter-spacing: .1em !important;
	line-height: 1.3 !important;
	text-transform: uppercase !important;
}

body.logged-in.woocommerce-account .license_key_template_table tr:first-child th:first-child {
	border-radius: 14px 0 0 14px !important;
}

body.logged-in.woocommerce-account .license_key_template_table tr:first-child th:last-child {
	border-radius: 0 14px 14px 0 !important;
	text-align: right !important;
}

body.logged-in.woocommerce-account .license_key_template_table tr:not(:first-child) td {
	padding: 17px 20px !important;
	color: #252a35 !important;
	background: #fffaf0 !important;
	border-top: 1px solid #eed99e !important;
	border-bottom: 1px solid #eed99e !important;
	font-size: 15px !important;
	font-weight: 750 !important;
	line-height: 1.35 !important;
	vertical-align: middle !important;
}

body.logged-in.woocommerce-account .license_key_template_table tr:not(:first-child) td:first-child {
	border-left: 1px solid #eed99e !important;
	border-radius: 16px 0 0 16px !important;
}

body.logged-in.woocommerce-account .license_key_template_table tr:not(:first-child) td:first-child::before {
	content: "Order #";
	margin-right: 2px;
	color: #8c6511;
	font-size: 12px;
	font-weight: 850;
	letter-spacing: .05em;
	text-transform: uppercase;
}

body.logged-in.woocommerce-account .license_key_template_table tr:not(:first-child) td:last-child {
	border-right: 1px solid #eed99e !important;
	border-radius: 0 16px 16px 0 !important;
	text-align: right !important;
}

body.logged-in.woocommerce-account .license_key_template_table button,
body.logged-in.woocommerce-account .key-container #view-key {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-width: 132px;
	min-height: 46px;
	margin: 0 !important;
	padding: 11px 19px !important;
	color: #171a22 !important;
	background: #ffb000 !important;
	border: 1px solid #f0a300 !important;
	border-radius: 13px !important;
	box-shadow: 0 9px 20px rgba(221, 145, 0, .2) !important;
	font-size: 14px !important;
	font-family: var(--mg-font) !important;
	font-weight: 700 !important;
	line-height: 1 !important;
	text-transform: none !important;
	transition: transform .18s ease, background-color .18s ease, box-shadow .18s ease !important;
}

body.logged-in.woocommerce-account .license_key_template_table button:hover,
body.logged-in.woocommerce-account .license_key_template_table button:focus-visible,
body.logged-in.woocommerce-account .key-container #view-key:hover,
body.logged-in.woocommerce-account .key-container #view-key:focus-visible {
	color: #fff !important;
	background: #171a22 !important;
	border-color: #171a22 !important;
	box-shadow: 0 11px 24px rgba(23, 26, 34, .2) !important;
	transform: translateY(-1px) !important;
}

body.logged-in.woocommerce-account .key-container {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	width: min(100%, 780px) !important;
	min-height: 0 !important;
	margin: 0 auto !important;
	padding: clamp(22px, 4vw, 38px) !important;
	background:
		radial-gradient(circle at calc(100% - 42px) 42px, rgba(255, 176, 0, .17) 0 52px, transparent 53px),
		linear-gradient(145deg, #fff7df 0%, #fffdf8 54%, #fff 100%) !important;
	border: 1px solid #edcf7b !important;
	border-radius: 24px !important;
	box-shadow: 0 18px 42px rgba(72, 49, 8, .1) !important;
	box-sizing: border-box !important;
}

body.logged-in.woocommerce-account .key-container::before {
	content: "";
	position: absolute;
	z-index: -1;
	top: -105px;
	right: -80px;
	width: 250px;
	height: 250px;
	border: 34px solid rgba(255, 176, 0, .08);
	border-radius: 50%;
	pointer-events: none;
}

body.logged-in.woocommerce-account .key-container .mookey {
	display: flex !important;
	align-items: center;
	gap: 10px;
	min-height: 0 !important;
	margin: 0 0 28px !important;
	padding: 0 !important;
	color: #171a22 !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	font-size: clamp(28px, 4vw, 42px) !important;
	font-family: var(--mg-font) !important;
	font-weight: 800 !important;
	letter-spacing: -.025em !important;
	line-height: 1.05 !important;
	text-align: left !important;
}

body.logged-in.woocommerce-account .key-container .mookey::before {
	content: "\f084";
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 48px;
	width: 48px;
	height: 48px;
	color: #171a22;
	background: #ffb000;
	border-radius: 14px;
	box-shadow: 0 8px 18px rgba(221, 145, 0, .2);
	font-family: "Font Awesome 5 Free", "Font Awesome 6 Free";
	font-size: 19px;
	font-weight: 900;
	line-height: 1;
}

body.logged-in.woocommerce-account .key-container .mookey i {
	display: none !important;
}

body.logged-in.woocommerce-account .key-container .product-code {
	margin: 0 0 10px !important;
	padding: 0 !important;
	color: #8c6511 !important;
	background: transparent !important;
	font-size: 12px !important;
	font-family: var(--mg-font) !important;
	font-weight: 700 !important;
	letter-spacing: .12em !important;
	line-height: 1.3 !important;
	text-align: left !important;
	text-transform: uppercase !important;
}

body.logged-in.woocommerce-account .key-container .serial-key-wrapper {
	position: relative;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

body.logged-in.woocommerce-account .key-container #view-key {
	width: 100% !important;
	min-height: 54px !important;
	font-size: 15px !important;
}

body.logged-in.woocommerce-account .key-container .serial-key {
	width: 100% !important;
	margin: 0 !important;
	padding: clamp(18px, 3vw, 26px) !important;
	color: #fff !important;
	background: linear-gradient(135deg, #171a22 0%, #262b36 100%) !important;
	border: 1px solid #313745 !important;
	border-radius: 17px !important;
	box-shadow: 0 14px 30px rgba(23, 26, 34, .16) !important;
	box-sizing: border-box !important;
	text-align: left !important;
}

body.logged-in.woocommerce-account .key-container .serial-key p {
	margin: 0 !important;
	padding: 0 !important;
	color: #fff !important;
	background: transparent !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	font-family: var(--mg-font) !important;
	font-size: clamp(14px, 2vw, 18px) !important;
	font-weight: 600 !important;
	letter-spacing: .005em !important;
	line-height: 1.55 !important;
	overflow-wrap: anywhere !important;
	user-select: all;
}

body.logged-in.woocommerce-account .key-container .copyright-text {
	position: static !important;
	display: block !important;
	margin: 20px 0 0 !important;
	padding: 0 !important;
	color: #8b909a !important;
	background: transparent !important;
	font-size: 11px !important;
	font-family: var(--mg-font) !important;
	font-weight: 600 !important;
	letter-spacing: .08em !important;
	line-height: 1.3 !important;
	text-align: right !important;
	text-transform: uppercase !important;
}

@media (max-width: 767px) {
	body.logged-in.woocommerce-account .mg-account-content:has(.license_key_template_table),
	body.logged-in.woocommerce-account .mg-account-content:has(.key-container) {
		padding: 18px !important;
		border-radius: 20px !important;
	}

	body.logged-in.woocommerce-account .license_key_template_table {
		display: block !important;
		margin-top: 18px !important;
		border-spacing: 0 !important;
	}

	body.logged-in.woocommerce-account .license_key_template_table tbody {
		display: grid !important;
		gap: 12px !important;
	}

	body.logged-in.woocommerce-account .license_key_template_table tr:first-child {
		display: none !important;
	}

	body.logged-in.woocommerce-account .license_key_template_table tr:not(:first-child) {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) auto !important;
		align-items: center !important;
		gap: 12px !important;
		padding: 14px !important;
		background: #fffaf0 !important;
		border: 1px solid #eed99e !important;
		border-radius: 16px !important;
	}

	body.logged-in.woocommerce-account .license_key_template_table tr:not(:first-child) td {
		display: block !important;
		padding: 0 !important;
		background: transparent !important;
		border: 0 !important;
		border-radius: 0 !important;
		text-align: left !important;
	}

	body.logged-in.woocommerce-account .license_key_template_table tr:not(:first-child) td:last-child {
		text-align: right !important;
	}

	body.logged-in.woocommerce-account .license_key_template_table button {
		min-width: 112px !important;
		min-height: 42px !important;
		padding: 10px 15px !important;
	}

	body.logged-in.woocommerce-account .key-container {
		padding: 20px !important;
		border-radius: 18px !important;
	}

	body.logged-in.woocommerce-account .key-container .mookey {
		margin-bottom: 22px !important;
		font-size: 29px !important;
	}

	body.logged-in.woocommerce-account .key-container .mookey::before {
		flex-basis: 42px;
		width: 42px;
		height: 42px;
		border-radius: 12px;
	}

	body.logged-in.woocommerce-account .key-container .serial-key {
		padding: 17px !important;
		border-radius: 14px !important;
	}
}

/* Native MooGold Wallet plugin — presentation only; plugin owns behaviour. */
body.woocommerce-account .mg-account-content .woo-wallet-sidebar-heading {
	display: none !important;
}

body.woocommerce-account .mg-account-content .woo-wallet-transaction-type-credit {
	color: #14804a !important;
	font-weight: 850 !important;
}

body.woocommerce-account .mg-account-content .woo-wallet-transaction-type-debit {
	color: #b42318 !important;
	font-weight: 850 !important;
}

body.woocommerce-account .mg-account-content .error_msg_wallet,
body.woocommerce-account .mg-account-content .success_msg_wallet {
	margin: 16px 0 0 !important;
	padding: 12px 14px !important;
	border-radius: 10px !important;
}

body.woocommerce-account .mg-account-content .error_msg_wallet {
	color: #9f1c13 !important;
	background: #fff1f0 !important;
	border: 1px solid #ffc9c5 !important;
}

body.woocommerce-account .mg-account-content .success_msg_wallet {
	color: #12633a !important;
	background: #ecfdf3 !important;
	border: 1px solid #abefc6 !important;
}

body.woocommerce-account .mg-account-content .pagination {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 6px !important;
	margin-top: 20px !important;
}

body.woocommerce-account .mg-account-content .pagination a {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-width: 38px !important;
	height: 38px !important;
	padding: 0 10px !important;
	color: #343946 !important;
	background: #fff !important;
	border: 1px solid #dfe2e7 !important;
	border-radius: 9px !important;
	text-decoration: none !important;
}

body.woocommerce-account .mg-account-content .pagination a:hover,
body.woocommerce-account .mg-account-content .pagination a.active {
	color: #171a22 !important;
	background: #fff2c7 !important;
	border-color: #f2a800 !important;
}

body.woocommerce-account .mg-account-content .woo-wallet-my-wallet-container {
	display: block !important;
	width: 100% !important;
	overflow: visible !important;
	background: transparent !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	font-family: var(--mg-font) !important;
}

body.woocommerce-account .mg-account-content .woo-wallet-sidebar {
	float: none !important;
	width: 100% !important;
	min-height: 0 !important;
	margin: 0 0 22px !important;
	padding: 0 !important;
	background: transparent !important;
	border: 0 !important;
}

body.woocommerce-account .mg-account-content .woo-wallet-sidebar ul {
	display: flex !important;
	align-items: center !important;
	justify-content: flex-start !important;
	flex-wrap: wrap !important;
	gap: 6px !important;
	width: fit-content !important;
	max-width: 100% !important;
	margin: 0 !important;
	padding: 6px !important;
	background: #f3f4f6 !important;
	border: 1px solid #e2e5e9 !important;
	border-radius: 14px !important;
	list-style: none !important;
}

body.woocommerce-account .mg-account-content .woo-wallet-sidebar ul li.card,
body.woocommerce-account .mg-account-content .woo-wallet-sidebar ul li.card:hover {
	flex: 0 0 auto !important;
	margin: 0 !important;
	max-width: none !important;
	background: transparent !important;
	border: 0 !important;
	border-radius: 10px !important;
	box-shadow: none !important;
	transform: none !important;
}

body.woocommerce-account .mg-account-content .woo-wallet-sidebar ul li.card a {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 0 !important;
	width: auto !important;
	min-height: 42px !important;
	padding: 9px 15px !important;
	color: #505764 !important;
	background: transparent !important;
	border: 0 !important;
	border-radius: 9px !important;
	box-shadow: none !important;
	font-size: 14px !important;
	font-weight: 800 !important;
	line-height: 1.2 !important;
	text-decoration: none !important;
	white-space: nowrap !important;
	transition: color .18s ease, background .18s ease, box-shadow .18s ease !important;
}

body.woocommerce-account .mg-account-content .woo-wallet-sidebar ul li.card a:hover,
body.woocommerce-account .mg-account-content .woo-wallet-sidebar ul li.card a:focus-visible {
	color: #171a22 !important;
	background: #fff !important;
	box-shadow: 0 4px 12px rgba(23, 26, 34, .08) !important;
	outline: 0 !important;
}

body.woocommerce-account .mg-account-content .woo-wallet-sidebar ul li.card p {
	margin: 0 !important;
	font: inherit !important;
}

body.woocommerce-account .mg-account-content .woo-wallet-sidebar .dashicons {
	display: none !important;
}

body.woocommerce-account .mg-account-content .woo-wallet-content {
	float: none !important;
	width: 100% !important;
	min-height: 0 !important;
	padding: 0 !important;
	background: transparent !important;
}

body.woocommerce-account .mg-account-content .woo-wallet-content-heading {
	position: relative !important;
	isolation: isolate !important;
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 24px !important;
	min-height: 112px !important;
	margin: 0 0 18px !important;
	padding: 24px 28px !important;
	overflow: hidden !important;
	background: linear-gradient(135deg, #171a22 0%, #252b36 100%) !important;
	border: 1px solid #2e3440 !important;
	border-radius: 18px !important;
	box-shadow: 0 14px 30px rgba(23, 26, 34, .15) !important;
}

body.woocommerce-account .mg-account-content .woo-wallet-content-heading::before,
body.woocommerce-account .mg-account-content .woo-wallet-content-heading::after {
	position: absolute !important;
	z-index: -1 !important;
	content: "" !important;
	pointer-events: none !important;
	border: 20px solid rgba(242, 168, 0, .13) !important;
	border-radius: 50% !important;
}

body.woocommerce-account .mg-account-content .woo-wallet-content-heading::before {
	top: -78px !important;
	right: 11% !important;
	width: 148px !important;
	height: 148px !important;
}

body.woocommerce-account .mg-account-content .woo-wallet-content-heading::after {
	right: -38px !important;
	bottom: -78px !important;
	width: 128px !important;
	height: 128px !important;
}

body.woocommerce-account .mg-account-content .woo-wallet-content-h3 {
	float: none !important;
	margin: 0 !important;
	color: #ffcf57 !important;
	font-size: 12px !important;
	font-weight: 850 !important;
	letter-spacing: .16em !important;
	line-height: 1.2 !important;
	text-transform: uppercase !important;
}

body.woocommerce-account .mg-account-content .woo-wallet-content .woo-wallet-price {
	float: none !important;
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
}

body.woocommerce-account .mg-account-content .woo-wallet-price,
body.woocommerce-account .mg-account-content .woo-wallet-price .woocommerce-Price-amount,
body.woocommerce-account .mg-account-content .woo-wallet-price bdi,
body.woocommerce-account .mg-account-content .woo-wallet-price .woocommerce-Price-currencySymbol {
	color: #fff !important;
	font-size: clamp(28px, 3vw, 38px) !important;
	font-weight: 900 !important;
	letter-spacing: -.025em !important;
	line-height: 1 !important;
}

body.woocommerce-account .mg-account-content .woo-wallet-content > hr,
body.woocommerce-account .mg-account-content .woo-wallet-content > div[style*="clear"] {
	display: none !important;
}

body.woocommerce-account .mg-account-content .woo-wallet-transactions-items {
	margin: 0 !important;
	padding: 4px 22px !important;
	color: #596170 !important;
	background: #f8f9fb !important;
	border: 1px solid #e5e8ed !important;
	border-radius: 16px !important;
	list-style: none !important;
}

body.woocommerce-account .mg-account-content .woo-wallet-transactions-items:not(:has(> li)) {
	display: grid !important;
	place-items: center !important;
	min-height: 128px !important;
	padding: 24px !important;
	color: #6b7280 !important;
	background: #f8f9fb !important;
	border-style: dashed !important;
	font-size: 15px !important;
	font-weight: 650 !important;
	text-align: center !important;
}

body.woocommerce-account .mg-account-content .woo-wallet-transactions-items > li {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 18px !important;
	margin: 0 !important;
	padding: 17px 2px !important;
	border-bottom: 1px solid #e3e6eb !important;
	overflow: visible !important;
}

body.woocommerce-account .mg-account-content .woo-wallet-transactions-items > li:last-child {
	border-bottom: 0 !important;
}

body.woocommerce-account .mg-account-content .woo-wallet-transactions-items p {
	margin: 0 !important;
	color: #252a34 !important;
	font-size: 14px !important;
	font-weight: 800 !important;
}

body.woocommerce-account .mg-account-content .woo-wallet-transactions-items small {
	display: block !important;
	margin-top: 4px !important;
	color: #747c89 !important;
	font-size: 12px !important;
}

body.woocommerce-account .mg-account-content .woo-wallet-content form {
	display: grid !important;
	gap: 16px !important;
	margin: 0 !important;
	padding: 22px !important;
	background: #f8f9fb !important;
	border: 1px solid #e3e6eb !important;
	border-radius: 16px !important;
	box-shadow: none !important;
}

body.woocommerce-account .mg-account-content .woo-wallet-add-amount {
	display: grid !important;
	gap: 8px !important;
	margin: 0 !important;
}

body.woocommerce-account .mg-account-content .woo-wallet-add-amount label {
	color: #343946 !important;
	font-size: 13px !important;
	font-weight: 800 !important;
}

body.woocommerce-account .mg-account-content .woo-wallet-content input[type="text"],
body.woocommerce-account .mg-account-content .woo-wallet-content input[type="number"],
body.woocommerce-account .mg-account-content .woo-wallet-content input[type="date"],
body.woocommerce-account .mg-account-content .woo-wallet-content select {
	width: 100% !important;
	min-height: 50px !important;
	margin: 0 !important;
	padding: 10px 14px !important;
	color: #171a22 !important;
	background: #fff !important;
	border: 1px solid #d6dbe2 !important;
	border-radius: 11px !important;
	box-shadow: none !important;
}

body.woocommerce-account .mg-account-content .woo-wallet-content input:focus,
body.woocommerce-account .mg-account-content .woo-wallet-content select:focus {
	background: #fff !important;
	border-color: #f2a800 !important;
	box-shadow: 0 0 0 4px rgba(242, 168, 0, .13) !important;
	outline: 0 !important;
}

body.woocommerce-account .mg-account-content .woo-add-to-wallet,
body.woocommerce-account .mg-account-content #search-btn,
body.woocommerce-account .mg-account-content #btn-toggle {
	float: none !important;
	width: auto !important;
	min-height: 46px !important;
	margin: 0 !important;
	padding: 10px 20px !important;
	color: #171a22 !important;
	background: #faae00 !important;
	border: 1px solid #faae00 !important;
	border-radius: 11px !important;
	box-shadow: none !important;
	font-size: 14px !important;
	font-weight: 850 !important;
	cursor: pointer !important;
}

body.woocommerce-account .mg-account-content .woo-add-to-wallet:hover,
body.woocommerce-account .mg-account-content #search-btn:hover,
body.woocommerce-account .mg-account-content #btn-toggle:hover {
	color: #fff !important;
	background: #171a22 !important;
	border-color: #171a22 !important;
}

body.woocommerce-account .mg-account-content .search-container {
	margin: 14px 0 18px !important;
	padding: 0 !important;
	background: transparent !important;
	border: 0 !important;
	border-radius: 0 !important;
}

@media (max-width: 700px) {
	body.woocommerce-account .mg-account-content .woo-wallet-sidebar {
		margin-bottom: 16px !important;
		overflow: hidden !important;
	}

	body.woocommerce-account .mg-account-content .woo-wallet-sidebar ul {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 6px !important;
		width: 100% !important;
		overflow: visible !important;
	}

	body.woocommerce-account .mg-account-content .woo-wallet-sidebar ul::-webkit-scrollbar {
		display: none !important;
	}

	body.woocommerce-account .mg-account-content .woo-wallet-sidebar ul li.card a {
		width: 100% !important;
		min-height: 40px !important;
		padding: 8px 12px !important;
		font-size: 13px !important;
		text-align: center !important;
		white-space: normal !important;
	}

	body.woocommerce-account .mg-account-content .woo-wallet-content-heading {
		min-height: 98px !important;
		padding: 20px !important;
		border-radius: 15px !important;
	}

	body.woocommerce-account .mg-account-content .woo-wallet-price,
	body.woocommerce-account .mg-account-content .woo-wallet-price .woocommerce-Price-amount,
	body.woocommerce-account .mg-account-content .woo-wallet-price bdi,
	body.woocommerce-account .mg-account-content .woo-wallet-price .woocommerce-Price-currencySymbol {
		font-size: clamp(24px, 8vw, 31px) !important;
	}

	body.woocommerce-account .mg-account-content .woo-wallet-transactions-items {
		padding-inline: 16px !important;
	}

	body.woocommerce-account .mg-account-content .woo-wallet-content form {
		padding: 16px !important;
	}

	body.woocommerce-account .mg-account-content .woo-wallet-transactions-items > li {
		align-items: flex-start !important;
		gap: 12px !important;
	}

	body.woocommerce-account .mg-account-content .woo-wallet-transactions-items > li > div:first-child {
		max-width: 68% !important;
	}

	body.woocommerce-account .mg-account-content .entry-search-row {
		align-items: stretch !important;
		flex-direction: column !important;
	}

	body.woocommerce-account .mg-account-content .woo-add-to-wallet,
	body.woocommerce-account .mg-account-content #search-btn {
		width: 100% !important;
	}
}

/* Join the wallet balance and its active panel into one continuous surface. */
body.woocommerce-account .mg-account-content .woo-wallet-content > .woo-wallet-content-heading {
	margin-bottom: 0 !important;
	border-radius: 18px 18px 0 0 !important;
	box-shadow: none !important;
}

body.woocommerce-account .mg-account-content .woo-wallet-content > form,
body.woocommerce-account .mg-account-content .woo-wallet-content > .woo-wallet-transactions-items {
	border-top: 0 !important;
	border-radius: 0 0 18px 18px !important;
	box-shadow: 0 14px 30px rgba(23, 26, 34, .09) !important;
}

@media (max-width: 700px) {
	body.woocommerce-account .mg-account-content .woo-wallet-content > .woo-wallet-content-heading {
		border-radius: 15px 15px 0 0 !important;
	}

	body.woocommerce-account .mg-account-content .woo-wallet-content > form,
	body.woocommerce-account .mg-account-content .woo-wallet-content > .woo-wallet-transactions-items {
		border-radius: 0 0 15px 15px !important;
	}
}

/* Native membership plugin presentation — styling only. */
body.logged-in.woocommerce-account .mg-account-content:has(> h3 + p > strong:first-child) {
	position: relative !important;
	padding: 34px !important;
	overflow: hidden !important;
	background: #fff !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 22px !important;
	box-shadow: 0 18px 44px rgba(23, 26, 34, .08) !important;
}

body.logged-in.woocommerce-account .mg-account-content:has(> h3 + p > strong:first-child) > h3 {
	margin: 0 0 22px !important;
	color: #171a22 !important;
	font-size: clamp(32px, 4vw, 46px) !important;
	font-weight: 900 !important;
	letter-spacing: -.035em !important;
	line-height: 1.05 !important;
}

body.logged-in.woocommerce-account .mg-account-content:has(> h3 + p > strong:first-child) > h3::before {
	display: block !important;
	margin-bottom: 8px !important;
	content: "MEMBERSHIP OVERVIEW" !important;
	color: #9a6800 !important;
	font-size: 11px !important;
	font-weight: 850 !important;
	letter-spacing: .16em !important;
	line-height: 1.2 !important;
}

body.logged-in.woocommerce-account .mg-account-content:has(> h3 + p > strong:first-child) > p:first-of-type {
	position: relative !important;
	display: flex !important;
	align-items: center !important;
	gap: 12px !important;
	min-height: 112px !important;
	margin: 0 !important;
	padding: 24px 26px !important;
	overflow: hidden !important;
	color: #fff !important;
	background:
		radial-gradient(circle at 86% -30%, transparent 0 73px, rgba(242, 168, 0, .13) 74px 93px, transparent 94px),
		radial-gradient(circle at 100% 120%, transparent 0 63px, rgba(242, 168, 0, .13) 64px 83px, transparent 84px),
		linear-gradient(135deg, #171a22 0%, #272d39 100%) !important;
	border: 1px solid #2e3440 !important;
	border-radius: 18px !important;
	box-shadow: 0 14px 30px rgba(23, 26, 34, .15) !important;
	font-size: clamp(25px, 3vw, 34px) !important;
	font-weight: 900 !important;
	letter-spacing: -.02em !important;
	line-height: 1.1 !important;
}

body.logged-in.woocommerce-account .mg-account-content:has(> h3 + p > strong:first-child) > p:first-of-type strong {
	color: #ffcf57 !important;
	font-size: 11px !important;
	font-weight: 850 !important;
	letter-spacing: .14em !important;
	line-height: 1.2 !important;
	text-transform: uppercase !important;
}

body.logged-in.woocommerce-account .mg-account-content:has(> h3 + p > strong:first-child) > p:first-of-type::after {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 34px !important;
	margin-left: auto !important;
	padding: 7px 13px !important;
	content: "ACTIVE" !important;
	color: #17231b !important;
	background: #d9fbe8 !important;
	border: 1px solid rgba(255, 255, 255, .38) !important;
	border-radius: 999px !important;
	font-size: 10px !important;
	font-weight: 900 !important;
	letter-spacing: .12em !important;
	line-height: 1 !important;
}

body.logged-in.woocommerce-account .mg-account-content:has(> h3 + p > strong:first-child) > p:nth-of-type(2) {
	position: relative !important;
	display: grid !important;
	place-items: center !important;
	gap: 7px !important;
	min-height: 158px !important;
	margin: 18px 0 0 !important;
	padding: 66px 24px 28px !important;
	color: #343a46 !important;
	background: #f8f9fb !important;
	border: 1px dashed #d9dde4 !important;
	border-radius: 16px !important;
	font-size: 16px !important;
	font-weight: 800 !important;
	line-height: 1.35 !important;
	text-align: center !important;
}

body.logged-in.woocommerce-account .mg-account-content:has(> h3 + p > strong:first-child) > p:nth-of-type(2)::before {
	position: absolute !important;
	top: 21px !important;
	left: 22px !important;
	content: "PAYMENT HISTORY" !important;
	color: #9a6800 !important;
	font-size: 11px !important;
	font-weight: 850 !important;
	letter-spacing: .15em !important;
	line-height: 1.2 !important;
}

body.logged-in.woocommerce-account .mg-account-content:has(> h3 + p > strong:first-child) > p:nth-of-type(2)::after {
	display: block !important;
	content: "Your membership payment records will appear here." !important;
	color: #747c89 !important;
	font-size: 13px !important;
	font-weight: 550 !important;
	line-height: 1.45 !important;
}

body.logged-in.woocommerce-account .mg-account-content:has(> h3 + p > strong:first-child) > table {
	width: 100% !important;
	margin: 18px 0 0 !important;
	overflow: hidden !important;
	background: #fff !important;
	border: 1px solid #e1e4e9 !important;
	border-collapse: separate !important;
	border-spacing: 0 !important;
	border-radius: 14px !important;
	box-shadow: none !important;
}

body.logged-in.woocommerce-account .mg-account-content:has(> h3 + p > strong:first-child) > table th {
	padding: 14px 16px !important;
	color: #fff !important;
	background: #1c2029 !important;
	border: 0 !important;
	font-size: 11px !important;
	font-weight: 850 !important;
	letter-spacing: .09em !important;
	text-transform: uppercase !important;
}

body.logged-in.woocommerce-account .mg-account-content:has(> h3 + p > strong:first-child) > table td {
	padding: 15px 16px !important;
	color: #3e4552 !important;
	background: #fff !important;
	border-color: #e8eaee !important;
}

@media (max-width: 700px) {
	body.logged-in.woocommerce-account .mg-account-content:has(> h3 + p > strong:first-child) {
		padding: 20px !important;
		border-radius: 18px !important;
	}

	body.logged-in.woocommerce-account .mg-account-content:has(> h3 + p > strong:first-child) > h3 {
		margin-bottom: 17px !important;
		font-size: 32px !important;
	}

	body.logged-in.woocommerce-account .mg-account-content:has(> h3 + p > strong:first-child) > p:first-of-type {
		align-items: flex-start !important;
		flex-wrap: wrap !important;
		min-height: 118px !important;
		padding: 20px !important;
		font-size: 27px !important;
	}

	body.logged-in.woocommerce-account .mg-account-content:has(> h3 + p > strong:first-child) > p:first-of-type strong {
		flex: 1 0 100% !important;
	}

	body.logged-in.woocommerce-account .mg-account-content:has(> h3 + p > strong:first-child) > p:first-of-type::after {
		margin-left: auto !important;
	}

	body.logged-in.woocommerce-account .mg-account-content:has(> h3 + p > strong:first-child) > p:nth-of-type(2) {
		min-height: 150px !important;
		padding: 62px 18px 24px !important;
	}
}

/* Modern My Account portal */
body.woocommerce-account {
	background: #f2f3f5;
}

body.woocommerce-account .storefront-breadcrumb,
body.woocommerce-account .site-main > .entry-header,
body.woocommerce-account article > .entry-header {
	display: none;
}

body.woocommerce-account .site-main,
body.woocommerce-account .site-main > article,
body.woocommerce-account .site-main .entry-content,
body.woocommerce-account .site-main .woocommerce {
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 0;
}

.mg-account-page {
	width: min(1320px, calc(100% - 48px));
	margin: 40px auto 88px;
	color: var(--mg-ink);
}

.mg-account-page *,
.mg-account-page *::before,
.mg-account-page *::after {
	box-sizing: border-box;
}

.mg-account-page a {
	text-decoration: none;
}

.mg-account-hero {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	min-height: 232px;
	margin-bottom: 28px;
	padding: 46px 54px;
	overflow: hidden;
	background: linear-gradient(120deg, #ffd86f 0%, #ffc334 48%, #f8a900 100%);
	border: 1px solid rgba(210, 139, 0, .32);
	border-radius: 30px;
	box-shadow: 0 24px 55px rgba(171, 113, 0, .16);
}

.mg-account-hero::before,
.mg-account-hero::after {
	position: absolute;
	content: "";
	pointer-events: none;
	border: 42px solid rgba(255, 255, 255, .18);
	border-radius: 50%;
}

.mg-account-hero::before {
	width: 340px;
	height: 340px;
	right: 70px;
	bottom: -225px;
}

.mg-account-hero::after {
	width: 190px;
	height: 190px;
	right: -55px;
	top: -75px;
}

.mg-account-hero__copy {
	position: relative;
	z-index: 2;
	max-width: 720px;
}

.mg-account-eyebrow,
.mg-account-section-label {
	margin: 0 0 8px;
	color: #825700;
	font-size: 12px;
	font-weight: 850;
	letter-spacing: .14em;
	line-height: 1.3;
	text-transform: uppercase;
}

.mg-account-hero h1 {
	margin: 0;
	color: #121620;
	font-size: clamp(42px, 5vw, 68px);
	font-weight: 900;
	letter-spacing: -.055em;
	line-height: .98;
}

.mg-account-hero__copy > p:last-child {
	max-width: 650px;
	margin: 16px 0 0;
	color: #4c3d1f;
	font-size: 17px;
	line-height: 1.55;
}

.mg-account-hero__mark {
	position: relative;
	z-index: 2;
	display: grid;
	flex: 0 0 108px;
	width: 108px;
	height: 108px;
	margin-right: 62px;
	place-items: center;
	background: rgba(255, 255, 255, .34);
	border: 2px solid rgba(255, 255, 255, .68);
	border-radius: 50%;
	box-shadow: 0 14px 35px rgba(120, 75, 0, .14);
}

.mg-account-hero__mark span {
	position: absolute;
	inset: 11px;
	border: 2px solid rgba(20, 23, 31, .14);
	border-radius: inherit;
}

.mg-account-hero__mark svg {
	width: 46px;
	height: 46px;
	fill: #151922;
}

.mg-account-layout {
	display: grid;
	grid-template-columns: 300px minmax(0, 1fr);
	gap: 26px;
	align-items: start;
}

.mg-account-page .woocommerce-MyAccount-navigation,
.mg-account-page .woocommerce-MyAccount-content {
	float: none;
	width: auto;
}

.mg-account-sidebar {
	position: static;
	top: auto;
	align-self: start;
	margin: 0 !important;
	overflow: hidden;
	background: #fff;
	border: 1px solid #e4e6eb;
	border-radius: 24px;
	box-shadow: 0 16px 45px rgba(25, 30, 42, .08);
}

.mg-account-profile {
	display: flex;
	align-items: center;
	gap: 13px;
	padding: 22px;
	background: linear-gradient(145deg, #fff9ea, #fff 72%);
	border-bottom: 0;
}

.mg-account-profile img {
	flex: 0 0 52px;
	width: 52px;
	height: 52px;
	border: 3px solid #fff;
	border-radius: 50%;
	box-shadow: 0 5px 18px rgba(117, 78, 0, .15);
}

.mg-account-profile > div {
	min-width: 0;
}

.mg-account-profile strong,
.mg-account-profile span {
	display: block;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.mg-account-profile strong {
	margin-bottom: 3px;
	font-size: 15px;
	font-weight: 800;
}

.mg-account-profile span {
	color: var(--mg-muted);
	font-size: 12px;
}

.mg-account-menu {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) !important;
	margin: 0;
	padding: 12px;
	list-style: none;
}

.mg-account-menu li {
	display: block !important;
	float: none !important;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

.mg-account-menu li + li {
	margin-top: 4px !important;
}

.mg-account-menu a {
	display: grid;
	grid-template-columns: 38px minmax(0, 1fr) 18px;
	gap: 10px;
	align-items: center;
	width: 100% !important;
	min-height: 52px;
	padding: 7px 11px;
	color: #3d4451;
	font-size: 14px;
	font-weight: 750;
	border-radius: 14px;
	box-sizing: border-box;
	transition: background .18s ease, color .18s ease, transform .18s ease;
}

.mg-account-menu a::before,
.mg-account-menu a::after {
	display: none !important;
	content: none !important;
}

.mg-account-menu a:hover {
	color: #14171f;
	background: #f7f7f8;
	transform: translateX(2px);
}

.mg-account-menu .is-active a {
	color: #171717;
	background: #fff1c5;
	box-shadow: inset 0 0 0 1px #f3cc64;
}

.mg-account-menu__icon {
	display: grid;
	width: 38px;
	height: 38px;
	place-items: center;
	background: #f3f4f6;
	border-radius: 11px;
}

.mg-account-menu .is-active .mg-account-menu__icon {
	background: #f5aa00;
}

.mg-account-menu__icon svg {
	width: 19px;
	height: 19px;
	fill: currentColor;
}

.mg-account-menu__arrow {
	justify-self: center;
	color: #969ca7;
	font-size: 23px;
	font-weight: 500;
	line-height: 1;
}

.mg-account-menu .is-logout {
	margin-top: 14px !important;
	padding-top: 12px;
	border-top: 1px solid #eceef1;
}

.mg-account-menu .is-logout a:hover {
	color: #b42318;
	background: #fff2f0;
}

.mg-account-help {
	display: grid;
	grid-template-columns: 42px minmax(0, 1fr);
	gap: 13px;
	align-items: center;
	margin: 18px 12px 16px;
	padding: 15px 16px;
	background: #171a22;
	color: #fff;
	border-radius: 16px;
	box-shadow: 0 10px 24px rgba(23, 26, 34, .14);
}

.mg-account-help__icon {
	display: grid;
	width: 42px;
	height: 42px;
	place-items: center;
	color: #171a22;
	background: #f9af00;
	border-radius: 50%;
}

.mg-account-help > div {
	min-width: 0;
	text-align: left;
}

.mg-account-help__icon svg {
	width: 19px;
	height: 19px;
	fill: currentColor;
}

.mg-account-help strong,
.mg-account-help a {
	display: block;
}

.mg-account-help strong {
	font-size: 13px;
}

.mg-account-help a {
	margin-top: 2px;
	color: #ffd36b;
	font-size: 12px;
	font-weight: 700;
}

.mg-account-content {
	min-width: 0;
	padding: 34px;
	background: #fff;
	border: 1px solid #e4e6eb;
	border-radius: 26px;
	box-shadow: 0 16px 45px rgba(25, 30, 42, .08);
}

.mg-account-content-heading {
	margin-bottom: 26px;
}

.mg-account-content-heading h2 {
	margin: 0;
	color: var(--mg-ink);
	font-size: clamp(26px, 3vw, 36px);
	font-weight: 900;
	letter-spacing: -.035em;
	line-height: 1.1;
}

.mg-account-content-heading > p:last-child {
	margin: 9px 0 0;
	color: var(--mg-muted);
	font-size: 14px;
	line-height: 1.55;
}

.mg-account-dashboard {
	width: 100%;
	max-width: 980px;
	margin: 0 auto;
}

.mg-account-quick-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
}

.mg-account-quick-card {
	display: grid;
	grid-template-columns: 48px minmax(0, 1fr) 24px;
	gap: 13px;
	align-items: center;
	min-height: 96px;
	padding: 16px 18px;
	color: var(--mg-ink);
	background: #fafafa;
	border: 1px solid #e5e7eb;
	border-radius: 19px;
	transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}

.mg-account-quick-card:hover {
	color: var(--mg-ink);
	border-color: #efc65d;
	box-shadow: 0 12px 28px rgba(44, 34, 10, .09);
	transform: translateY(-2px);
}

.mg-account-quick-card__icon {
	display: grid;
	width: 48px;
	height: 48px;
	place-items: center;
	color: #7e5600;
	background: #fff0c6;
	border-radius: 15px;
}

.mg-account-quick-card__icon svg {
	width: 23px;
	height: 23px;
	fill: currentColor;
}

.mg-account-quick-card__copy strong,
.mg-account-quick-card__copy small {
	display: block;
}

.mg-account-quick-card__copy strong {
	margin-bottom: 5px;
	font-size: 16px;
	font-weight: 850;
}

.mg-account-quick-card__copy small {
	color: var(--mg-muted);
	font-size: 12px;
	line-height: 1.45;
}

.mg-account-quick-card__arrow {
	display: grid;
	width: 24px;
	height: 24px;
	place-items: center;
	color: #6f7682;
	font-size: 25px;
	line-height: 1;
}

.mg-account-shop-banner {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	margin-top: 22px;
	padding: 28px;
	overflow: hidden;
	background: linear-gradient(120deg, #fff5d9, #ffd66c);
	border: 1px solid #f1ca63;
	border-radius: 21px;
}

.mg-account-shop-banner::after {
	position: absolute;
	width: 190px;
	height: 190px;
	right: -68px;
	top: -92px;
	content: "";
	border: 34px solid rgba(255, 255, 255, .28);
	border-radius: 50%;
}

.mg-account-shop-banner > * {
	position: relative;
	z-index: 1;
}

.mg-account-shop-banner h3 {
	margin: 0;
	font-size: 23px;
	font-weight: 900;
	letter-spacing: -.025em;
}

.mg-account-shop-banner p:not(.mg-account-section-label) {
	margin: 8px 0 0;
	color: #655227;
	font-size: 13px;
}

.mg-account-shop-banner__actions {
	display: flex;
	flex: 0 0 auto;
	gap: 9px;
}

.mg-account-shop-banner__actions .button:first-child {
	color: #fff !important;
	background: #151922 !important;
	border-color: #151922 !important;
}

.mg-account-shop-banner__actions .button:first-child:hover {
	color: #fff !important;
	background: #2a303c !important;
	border-color: #2a303c !important;
}

.mg-account-shop-banner__actions .button--ghost,
.mg-account-shop-banner__actions .button--ghost:hover {
	color: #151922 !important;
}

.mg-account-page .button,
.mg-account-content button.button,
.mg-account-content input.button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 46px;
	padding: 11px 19px;
	color: #11151e;
	font-size: 13px;
	font-weight: 850;
	line-height: 1.2;
	background: #f9ae00;
	border: 1px solid #e9a100;
	border-radius: 13px;
	box-shadow: none;
	transition: transform .18s ease, background .18s ease, box-shadow .18s ease;
}

.mg-account-page .button:hover,
.mg-account-content button.button:hover,
.mg-account-content input.button:hover {
	color: #11151e;
	background: #ffc126;
	box-shadow: 0 8px 20px rgba(204, 139, 0, .2);
	transform: translateY(-1px);
}

.mg-account-page .button--ghost {
	background: #fff;
	border-color: rgba(26, 28, 33, .12);
}

/* Account forms */
.mg-account-content form.edit-account {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 18px;
}

.mg-account-content form.edit-account > p,
.mg-account-content form.edit-account fieldset {
	margin: 0;
}

.mg-account-content form.edit-account .form-row,
.mg-account-content form.edit-account .form-row-first,
.mg-account-content form.edit-account .form-row-last {
	float: none;
	width: auto;
}

.mg-account-content form.edit-account .form-row-wide,
.mg-account-content form.edit-account fieldset,
.mg-account-content form.edit-account > p:last-child {
	grid-column: 1 / -1;
}

.mg-account-content form.edit-account fieldset {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 18px;
	margin-top: 10px;
	padding: 24px;
	background: #f8f8fa;
	border: 1px solid #e2e5ea;
	border-radius: 18px;
}

.mg-account-content form.edit-account fieldset legend {
	padding: 0 8px;
	font-size: 16px;
	font-weight: 850;
}

body.woocommerce-account .mg-account-content .woocommerce-EditAccountForm fieldset {
	margin-top: 18px !important;
	padding: 24px !important;
	background: #f8f9fb !important;
	border: 1px solid #e1e5eb !important;
	border-radius: 18px !important;
	box-shadow: none !important;
}

body.woocommerce-account .mg-account-content .woocommerce-EditAccountForm fieldset legend {
	float: left;
	width: 100%;
	margin: 0 0 20px !important;
	padding: 0 0 14px !important;
	color: #171a22 !important;
	background: transparent !important;
	border: 0 !important;
	border-bottom: 1px solid #e1e5eb !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	font-size: 18px;
	font-weight: 900;
	line-height: 1.35;
}

body.woocommerce-account .mg-account-content .woocommerce-EditAccountForm fieldset legend::after {
	display: inline-flex;
	align-items: center;
	margin-left: 9px;
	padding: 4px 8px;
	color: #765300;
	background: #fff2c8;
	border: 1px solid #efd486;
	border-radius: 999px;
	font-size: 10px;
	font-weight: 850;
	letter-spacing: .04em;
	line-height: 1.2;
	text-transform: uppercase;
	vertical-align: 2px;
}

body.woocommerce-account .mg-account-content .woocommerce-EditAccountForm fieldset > .form-row:first-of-type {
	clear: both;
}

.mg-account-content form.edit-account fieldset .form-row-wide,
.mg-account-content form.edit-account fieldset .clear {
	grid-column: 1 / -1;
}

.mg-account-content label {
	display: block;
	margin-bottom: 7px;
	color: #252a34;
	font-size: 12px;
	font-weight: 800;
}

.mg-account-content input.input-text,
.mg-account-content input[type="text"],
.mg-account-content input[type="email"],
.mg-account-content input[type="password"],
.mg-account-content input[type="search"],
.mg-account-content input[type="number"],
.mg-account-content select,
.mg-account-content textarea {
	width: 100%;
	min-height: 48px;
	padding: 11px 14px;
	color: #171a22;
	font: inherit;
	background: #fff;
	border: 1px solid #d9dde4;
	border-radius: 12px;
	box-shadow: none;
}

.mg-account-content input:focus,
.mg-account-content select:focus,
.mg-account-content textarea:focus {
	border-color: #e9a500;
	box-shadow: 0 0 0 3px rgba(242, 168, 0, .16);
	outline: none;
}

.mg-account-content em {
	display: block;
	margin-top: 5px;
	color: var(--mg-muted);
	font-size: 11px;
}

/* Orders */
.mg-orders-heading {
	margin-bottom: 20px;
}

.mg-order-search {
	display: grid !important;
	grid-template-columns: 24px minmax(0, 1fr) auto auto;
	gap: 10px;
	align-items: center;
	margin-bottom: 24px;
	padding: 8px;
	background: #f6f7f9;
	border: 1px solid #e2e5ea;
	border-radius: 16px;
}

.mg-order-search__icon {
	display: grid;
	margin-left: 7px;
	place-items: center;
	color: #687080;
}

.mg-order-search__icon svg {
	width: 20px;
	height: 20px;
	fill: currentColor;
}

.mg-account-content .mg-order-search input[type="search"] {
	min-height: 44px;
	padding-inline: 4px;
	background: transparent;
	border: 0;
}

.mg-account-content .mg-order-search input[type="search"]:focus {
	box-shadow: none;
}

.mg-order-search__clear {
	padding: 8px;
	color: #676e7c;
	font-size: 12px;
	font-weight: 750;
}

.mg-account-content .mg-order-search button {
	min-height: 44px;
}

.mg-account-content .shop_table {
	width: 100%;
	margin: 0;
	border-collapse: separate;
	border-spacing: 0;
	border: 1px solid #e2e5ea;
	border-radius: 17px;
	overflow: hidden;
}

.mg-account-content .shop_table th,
.mg-account-content .shop_table td {
	padding: 15px 14px;
	font-size: 13px;
	text-align: left;
	background: #fff;
	border-right: 0;
	border-bottom: 1px solid #eceef1;
}

.mg-account-content .shop_table thead th {
	color: #697181;
	font-size: 11px;
	font-weight: 850;
	letter-spacing: .08em;
	text-transform: uppercase;
	background: #f7f8fa;
}

.mg-account-content .shop_table tbody tr:last-child > * {
	border-bottom: 0;
}

.mg-account-content .shop_table a:not(.button) {
	color: #9a6800;
	font-weight: 800;
}

.mg-account-content .shop_table .button {
	min-height: 35px;
	padding: 8px 12px;
	font-size: 11px;
	border-radius: 10px;
}

.mg-account-empty-state {
	display: grid;
	justify-items: center;
	padding: 38px 20px;
	text-align: center;
	background: #fafafa;
	border: 1px dashed #d8dce3;
	border-radius: 17px;
}

.mg-account-empty-state > span {
	display: grid;
	width: 54px;
	height: 54px;
	margin-bottom: 13px;
	place-items: center;
	color: #8b6000;
	background: #fff0c8;
	border-radius: 50%;
}

.mg-account-empty-state svg {
	width: 25px;
	height: 25px;
	fill: currentColor;
}

.mg-account-empty-state h3 {
	margin: 0;
	font-size: 17px;
	font-weight: 850;
}

.mg-account-empty-state p {
	margin: 6px 0 0;
	color: var(--mg-muted);
	font-size: 13px;
}

.mg-account-page .mg-account-empty-state .button,
.mg-account-page .mg-account-empty-state .button:visited {
	min-width: 164px;
	margin-top: 16px;
	color: #11151e !important;
	-webkit-text-fill-color: #11151e;
	background: #f9ae00 !important;
	border-color: #e9a100 !important;
	box-shadow: 0 9px 20px rgba(204, 139, 0, .18);
}

.mg-account-page .mg-account-empty-state .button:hover,
.mg-account-page .mg-account-empty-state .button:focus,
.mg-account-page .mg-account-empty-state .button:active {
	color: #fff !important;
	-webkit-text-fill-color: #fff;
	background: #151922 !important;
	border-color: #151922 !important;
	box-shadow: 0 10px 22px rgba(21, 25, 34, .2);
}

.mg-account-page .mg-account-empty-state .button:focus-visible {
	outline: 3px solid rgba(242, 168, 0, .35);
	outline-offset: 3px;
}

.mg-account-content .woocommerce-pagination {
	display: flex;
	justify-content: flex-end;
	gap: 10px;
	margin-top: 18px;
}

.mg-account-content .woocommerce-message,
.mg-account-content .woocommerce-info,
.mg-account-content .woocommerce-error {
	margin: 0 0 20px;
	padding: 16px 18px 16px 48px;
	background: #fff8e7;
	border: 1px solid #f0d281;
	border-left: 4px solid #f2a800;
	border-radius: 14px;
}

/* Logged-out account page */
body.woocommerce-account:not(.logged-in) .site-main .woocommerce {
	width: min(980px, calc(100% - 48px));
	margin: 54px auto 90px;
}

body.woocommerce-account:not(.logged-in) .u-columns {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 24px;
}

body.woocommerce-account:not(.logged-in) .u-column1,
body.woocommerce-account:not(.logged-in) .u-column2 {
	float: none;
	width: auto;
	padding: 30px;
	background: #fff;
	border: 1px solid #e2e5e9;
	border-radius: 24px;
	box-shadow: var(--mg-shadow);
}

body.woocommerce-account:not(.logged-in) .u-columns h2 {
	margin: 0 0 20px;
	font-size: 31px;
	font-weight: 900;
	letter-spacing: -.04em;
}

body.woocommerce-account:not(.logged-in) form.login,
body.woocommerce-account:not(.logged-in) form.register {
	margin: 0;
	padding: 0;
	border: 0;
}

@media (max-width: 1080px) {
	.mg-account-page {
		width: min(100% - 32px, 1120px);
	}

	.mg-account-layout {
		grid-template-columns: 260px minmax(0, 1fr);
		gap: 18px;
	}

	.mg-account-content {
		padding: 26px;
	}

	.mg-account-quick-grid {
		grid-template-columns: 1fr;
	}

	.mg-account-shop-banner {
		align-items: flex-start;
		flex-direction: column;
	}
}

@media (max-width: 760px) {
	body.woocommerce-account .mg-site-content {
		overflow: visible;
	}

	.mg-account-page {
		width: min(100% - 24px, 680px);
		margin: 20px auto 64px;
	}

	.mg-account-hero {
		min-height: 190px;
		margin-bottom: 16px;
		padding: 30px 24px;
		border-radius: 23px;
	}

	.mg-account-hero h1 {
		font-size: clamp(37px, 11vw, 52px);
	}

	.mg-account-hero__copy > p:last-child {
		max-width: calc(100% - 50px);
		font-size: 14px;
	}

	.mg-account-hero__mark {
		position: absolute;
		right: 2px;
		bottom: 18px;
		width: 72px;
		height: 72px;
		margin: 0;
		opacity: .55;
	}

	.mg-account-hero__mark svg {
		width: 31px;
		height: 31px;
	}

	.mg-account-layout {
		display: block;
	}

	.mg-account-sidebar {
		position: static !important;
		top: auto !important;
		margin-bottom: 16px;
		border-radius: 21px;
	}

	.mg-account-profile {
		padding: 16px;
	}

	body.woocommerce-account .mg-account-sidebar .mg-account-menu {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 10px !important;
		align-items: stretch !important;
		padding: 10px !important;
	}

	body.woocommerce-account .mg-account-sidebar .mg-account-menu li {
		display: block !important;
		float: none !important;
		width: 100% !important;
		max-width: none !important;
		min-width: 0 !important;
		margin: 0 !important;
		padding: 0 !important;
	}

	.mg-account-menu li + li,
	.mg-account-menu .is-logout {
		margin: 0;
	}

	body.woocommerce-account .mg-account-sidebar .mg-account-menu .is-logout {
		grid-column: 1 / -1 !important;
		width: 100% !important;
		max-width: 100% !important;
		padding-top: 0 !important;
		border-top: 0 !important;
	}

	body.woocommerce-account .mg-account-sidebar .mg-account-menu a {
		display: grid !important;
		grid-template-columns: 40px minmax(0, 1fr) !important;
		gap: 10px !important;
		align-items: center !important;
		width: 100% !important;
		height: 100% !important;
		min-height: 68px !important;
		padding: 10px 12px !important;
		background: #fff;
		border: 1px solid #e8e9ed;
		border-radius: 16px;
		font-size: 13px;
		line-height: 1.25;
		box-sizing: border-box;
		transform: none;
	}

	.mg-account-menu__icon {
		width: 40px;
		height: 40px;
	}

	body.woocommerce-account .mg-account-sidebar .mg-account-menu__arrow,
	body.woocommerce-account .mg-account-sidebar .mg-account-menu a::after {
		display: none !important;
		content: none !important;
	}

	body.woocommerce-account .mg-account-sidebar .mg-account-menu .is-logout a {
		grid-template-columns: 40px minmax(0, 1fr) !important;
		min-height: 58px !important;
	}

	body.woocommerce-account .mg-account-sidebar .mg-account-menu .is-active a {
		background: #fff6dc !important;
		border-color: #efbd3f !important;
		box-shadow: 0 8px 22px rgba(195, 132, 0, .1) !important;
	}

	.mg-account-help {
		margin: 14px 10px 12px;
	}

	.mg-account-content {
		padding: 22px 16px;
		border-radius: 21px;
	}

	.mg-account-content-heading {
		margin-bottom: 20px;
	}

	.mg-account-content-heading h2 {
		font-size: clamp(25px, 8vw, 32px);
	}

	.mg-account-quick-card {
		min-height: 90px;
		padding: 14px;
	}

	.mg-account-quick-grid,
	.mg-account-content form.edit-account,
	.mg-account-content form.edit-account fieldset {
		grid-template-columns: 1fr;
	}

	.mg-account-content form.edit-account .form-row-wide,
	.mg-account-content form.edit-account fieldset,
	.mg-account-content form.edit-account > p:last-child,
	.mg-account-content form.edit-account fieldset .form-row-wide,
	.mg-account-content form.edit-account fieldset .clear {
		grid-column: auto;
	}

	.mg-account-shop-banner {
		padding: 23px 20px;
	}

	.mg-account-shop-banner__actions {
		width: 100%;
		flex-direction: column;
	}

	.mg-account-shop-banner__actions .button {
		width: 100%;
	}

	.mg-order-search {
		grid-template-columns: 24px minmax(0, 1fr);
	}

	.mg-order-search__clear {
		display: none;
	}

	.mg-account-content .mg-order-search button {
		grid-column: 1 / -1;
		margin: 0 !important;
		width: 100%;
	}

	.mg-account-content .woocommerce-orders-table {
		display: block;
		border: 0;
		overflow: visible;
	}

	.mg-account-content .woocommerce-orders-table thead {
		display: none;
	}

	.mg-account-content .woocommerce-orders-table tbody,
	.mg-account-content .woocommerce-orders-table tr,
	.mg-account-content .woocommerce-orders-table th,
	.mg-account-content .woocommerce-orders-table td {
		display: block;
	}

	.mg-account-content .woocommerce-orders-table tr {
		padding: 8px 15px;
		background: #fff;
		border: 1px solid #e2e5e9;
		border-radius: 16px;
	}

	.mg-account-content .woocommerce-orders-table tr + tr {
		margin-top: 12px;
	}

	.mg-account-content .woocommerce-orders-table th,
	.mg-account-content .woocommerce-orders-table td {
		position: relative;
		min-height: 42px;
		padding: 11px 0 11px 45%;
		text-align: right;
		border-bottom: 1px solid #eceef1;
	}

	.mg-account-content .woocommerce-orders-table th::before,
	.mg-account-content .woocommerce-orders-table td::before {
		position: absolute;
		left: 0;
		max-width: 42%;
		content: attr(data-title);
		color: #6d7481;
		font-size: 11px;
		font-weight: 800;
		text-align: left;
		text-transform: uppercase;
	}

	.mg-account-content .woocommerce-orders-table tr > *:last-child {
		border-bottom: 0;
	}

	body.woocommerce-account:not(.logged-in) .site-main .woocommerce {
		width: min(100% - 24px, 620px);
		margin-top: 24px;
	}

	body.woocommerce-account:not(.logged-in) .u-columns {
		grid-template-columns: 1fr;
	}

	body.woocommerce-account:not(.logged-in) .u-column1,
	body.woocommerce-account:not(.logged-in) .u-column2 {
		padding: 22px 18px;
	}
}

body.mg-modern-home {
	margin: 0;
	background: #fff;
	color: var(--mg-ink);
	font-family: var(--mg-font);
	-webkit-font-smoothing: antialiased;
}

.mg-modern-home *,
.mg-modern-home *::before,
.mg-modern-home *::after {
	box-sizing: border-box;
}

.mg-modern-home a {
	color: inherit;
	text-decoration: none;
}

.mg-modern-home button,
.mg-modern-home input {
	font: inherit;
}

.mg-modern-home img {
	max-width: 100%;
}

.mg-modern-home :focus-visible {
	outline: 3px solid rgba(242, 168, 0, .38);
	outline-offset: 3px;
}

.mg-modern-home .screen-reader-text,
.mg-modern-home .skip-link {
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	width: 1px;
	overflow: hidden;
	position: absolute !important;
	word-wrap: normal !important;
}

.mg-modern-home .skip-link:focus {
	clip: auto !important;
	clip-path: none;
	height: auto;
	width: auto;
	top: 12px;
	left: 12px;
	padding: 12px 18px;
	background: #fff;
	color: #111;
	z-index: 99999;
}

.mg-container,
.mg-home {
	width: min(1440px, calc(100% - 48px));
	margin-inline: auto;
}

.mg-modern-home .mg-site-content,
.mg-modern-home .mg-content-shell {
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 0;
}

.mg-header-stack {
	position: sticky;
	top: 0;
	z-index: 999;
	background: rgba(255, 255, 255, .96);
	box-shadow: 0 1px 0 rgba(18, 22, 32, .08);
	backdrop-filter: blur(18px);
}

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

.mg-trust-bar {
	min-height: 34px;
	border-bottom: 1px solid rgba(20, 23, 31, .06);
	background: #fbfbfc;
}

.mg-trust-bar__inner {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 44px;
	min-height: 34px;
	font-size: 12px;
	font-weight: 650;
	color: #3f4653;
}

.mg-trust-bar__inner > span {
	display: inline-flex;
	align-items: center;
}

.mg-trust-bar__inner span span {
	margin-right: 7px;
	color: var(--mg-gold);
}

.mg-trust-bar__inner > span > svg {
	flex: 0 0 auto;
	width: 15px;
	height: 15px;
	margin-right: 7px;
	fill: none;
	stroke: var(--mg-gold);
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.mg-modern-header {
	background: rgba(255, 255, 255, .97);
}

.mg-header-main {
	display: grid;
	grid-template-columns: 156px minmax(0, 1fr) auto;
	align-items: center;
	gap: 34px;
	min-height: 70px;
}

.mg-logo {
	display: inline-flex;
	align-items: center;
	width: 142px;
}

.mg-logo img {
	display: block;
	width: 100%;
	height: auto;
}

.mg-desktop-nav {
	display: flex;
	align-items: center;
	gap: clamp(18px, 2.1vw, 34px);
	min-width: 0;
}

.mg-desktop-nav > a {
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: 7px;
	min-height: 44px;
	font-size: 14px;
	font-weight: 700;
	white-space: nowrap;
}

.mg-desktop-nav > a::after {
	content: "";
	position: absolute;
	left: 0;
	right: 100%;
	bottom: 6px;
	height: 2px;
	background: var(--mg-gold);
	transition: right .2s ease;
}

.mg-desktop-nav > a:hover::after {
	right: 0;
}

.mg-header-actions {
	display: flex;
	align-items: center;
	gap: 8px;
}

.mg-currency-switcher {
	position: relative;
	z-index: 80;
	display: flex;
	align-items: center;
	min-height: 42px;
	padding: 0 28px 0 10px;
	background: #fff9ea;
	border: 1px solid #eadba9;
	border-radius: 12px;
	transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.mg-currency-switcher:hover,
.mg-currency-switcher:focus-within {
	border-color: #e5ad22;
	box-shadow: 0 7px 18px rgba(89, 61, 4, .1);
	transform: translateY(-1px);
}

.mg-currency-switcher::after {
	position: absolute;
	right: 10px;
	top: 50%;
	width: 6px;
	height: 6px;
	content: "";
	pointer-events: none;
	border-right: 1.5px solid #6d5a2f;
	border-bottom: 1.5px solid #6d5a2f;
	transform: translateY(-65%) rotate(45deg);
}

.mg-currency-switcher.is-static {
	padding-right: 10px;
}

.mg-currency-switcher.is-static::after {
	display: none;
}

.mg-currency-switcher__icon {
	display: grid;
	flex: 0 0 22px;
	width: 22px;
	height: 22px;
	margin-right: 6px;
	place-items: center;
	color: #a46e00;
}

.mg-header-actions .mg-currency-switcher__icon svg,
.mg-mobile-currency__label svg {
	width: 18px;
	height: 18px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.7;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.mg-currency-switcher .widget,
.mg-currency-switcher .currency_selector,
.mg-currency-switcher .currency_switch_form {
	width: auto;
	margin: 0;
	padding: 0;
	background: transparent;
	border: 0;
}

.mg-currency-switcher .aelia_cs_currencies {
	width: auto;
	min-width: 45px;
	height: 40px;
	margin: 0;
	padding: 0 !important;
	color: #20242c;
	font-family: var(--mg-font);
	font-size: 12px;
	font-weight: 850;
	line-height: 40px;
	background: transparent !important;
	border: 0 !important;
	border-radius: 0;
	box-shadow: none !important;
	cursor: pointer;
	appearance: none;
	-webkit-appearance: none;
}

.mg-currency-switcher .aelia_cs_currencies:focus {
	outline: 0;
}

.mg-currency-switcher.is-enhanced {
	padding-right: 8px;
}

.mg-currency-switcher.is-enhanced::after {
	display: none;
}

.mg-currency-native {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	margin: -1px !important;
	padding: 0 !important;
	overflow: hidden !important;
	clip: rect(0 0 0 0) !important;
	clip-path: inset(50%) !important;
	white-space: nowrap !important;
	border: 0 !important;
}

.mg-currency-custom {
	position: relative;
	display: flex;
	align-items: center;
}

.mg-currency-custom__trigger {
	position: relative;
	display: inline-flex;
	align-items: center;
	min-width: 68px;
	height: 40px;
	margin: 0;
	padding: 0 24px 0 4px;
	color: #20242c;
	font-family: var(--mg-font);
	font-size: 12px;
	font-weight: 850;
	line-height: 1;
	background: transparent;
	border: 0;
	border-radius: 9px;
	box-shadow: none;
	cursor: pointer;
}

.mg-currency-custom__trigger::after {
	position: absolute;
	right: 6px;
	top: 50%;
	width: 7px;
	height: 7px;
	content: "";
	border-right: 1.5px solid #765d26;
	border-bottom: 1.5px solid #765d26;
	transform: translateY(-70%) rotate(45deg);
	transition: transform .16s ease;
}

.mg-currency-custom.is-open .mg-currency-custom__trigger::after {
	transform: translateY(-25%) rotate(225deg);
}

.mg-currency-custom__trigger:hover,
.mg-currency-custom__trigger:focus-visible {
	color: #151922;
	background: rgba(245, 170, 0, .1);
	outline: 0;
}

.mg-currency-custom__trigger:focus-visible {
	box-shadow: 0 0 0 3px rgba(245, 170, 0, .2);
}

.mg-currency-custom__menu {
	position: absolute;
	z-index: 10000;
	top: calc(100% + 9px);
	right: -8px;
	width: 126px;
	padding: 6px;
	background: #fff;
	border: 1px solid #eadcae;
	border-radius: 14px;
	box-shadow: 0 18px 42px rgba(22, 27, 37, .18);
}

.mg-currency-custom__menu[hidden] {
	display: none !important;
}

.mg-currency-custom__option {
	position: relative;
	display: flex;
	align-items: center;
	width: 100%;
	min-height: 38px;
	margin: 0;
	padding: 8px 28px 8px 11px;
	color: #303642;
	font-family: var(--mg-font);
	font-size: 12px;
	font-weight: 750;
	line-height: 1.2;
	text-align: left;
	background: transparent;
	border: 0;
	border-radius: 9px;
	box-shadow: none;
	cursor: pointer;
}

.mg-currency-custom__option:hover,
.mg-currency-custom__option:focus-visible {
	color: #171a22;
	background: #fff6dc;
	outline: 0;
}

.mg-currency-custom__option[aria-selected="true"] {
	color: #171a22;
	background: #ffedb7;
}

.mg-currency-custom__option[aria-selected="true"]::after {
	position: absolute;
	right: 11px;
	top: 50%;
	content: "✓";
	color: #9a6700;
	font-size: 13px;
	font-weight: 900;
	transform: translateY(-50%);
}

.mg-currency-switcher .widget_errors {
	display: none;
}

.mg-mobile-currency {
	display: none;
}

.mg-header-actions > a {
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	min-height: 44px;
	padding: 8px 10px;
	border-radius: 12px;
	font-size: 13px;
	font-weight: 750;
}

.mg-header-actions > a:hover {
	background: var(--mg-soft);
}

.mg-header-actions svg {
	width: 23px;
	height: 23px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.mg-header-actions strong {
	position: absolute;
	top: 2px;
	left: 24px;
	display: grid;
	place-items: center;
	min-width: 18px;
	height: 18px;
	padding: 0 4px;
	border: 2px solid #fff;
	border-radius: 999px;
	background: var(--mg-gold);
	font-size: 10px;
	line-height: 1;
}

.mg-search-row {
	padding-bottom: 14px;
}

.mg-product-search {
	position: relative;
	display: flex;
	align-items: center;
	min-height: 48px;
	max-width: 900px;
	margin-inline: auto;
	border: 1px solid transparent;
	border-radius: 15px;
	background:
		linear-gradient(#f7f8fa, #f7f8fa) padding-box,
		linear-gradient(100deg, #dfe2e8, #dfe2e8) border-box;
	background-position: 0 0, 0 0;
	background-size: 100% 100%, 100% 100%;
	box-shadow: 0 8px 24px rgba(19, 26, 39, .04);
	transition: box-shadow .25s ease, transform .25s ease;
}

.mg-product-search:focus-within {
	background:
		linear-gradient(#fff, #fff) padding-box,
		linear-gradient(100deg, var(--mg-gold), #ffd75e, #7554d6, #1da2d6, var(--mg-gold)) border-box;
	background-position: 0 0, 0 0;
	background-size: 100% 100%, 300% 100%;
	box-shadow: 0 0 0 4px rgba(242, 168, 0, .1), 0 12px 32px rgba(79, 60, 139, .13);
	animation: mg-search-energy 3s linear infinite;
	transform: translateY(-1px);
}

@keyframes mg-search-energy {
	to { background-position: 0 0, 300% 0; }
}

.mg-product-search svg {
	flex: 0 0 auto;
	width: 21px;
	height: 21px;
	margin-left: 17px;
	fill: none;
	stroke: #697080;
	stroke-width: 1.8;
	stroke-linecap: round;
	transition: stroke .2s ease, transform .25s ease, filter .25s ease;
}

.mg-product-search:focus-within svg {
	stroke: #6949cc;
	filter: drop-shadow(0 0 5px rgba(105, 73, 204, .28));
	transform: rotate(-8deg) scale(1.08);
}

.mg-product-search input[type="search"] {
	flex: 1;
	min-width: 0;
	height: 46px;
	padding: 0 14px;
	border: 0;
	background: transparent;
	box-shadow: none;
	color: var(--mg-ink);
	font-size: 14px;
}

.mg-product-search input[type="search"]::placeholder {
	color: #788090;
	opacity: 1;
}

.mg-product-search input[type="search"]:focus {
	outline: 0;
	background: transparent;
}

.mg-search-key {
	display: grid;
	flex: 0 0 auto;
	place-items: center;
	width: 28px;
	height: 26px;
	margin-right: 4px;
	border: 1px solid #dfe2e8;
	border-bottom-width: 2px;
	border-radius: 7px;
	background: #fff;
	box-shadow: 0 2px 5px rgba(19, 26, 39, .06);
	color: #737b89;
	font-family: var(--mg-font);
	font-size: 12px;
	font-weight: 850;
	line-height: 1;
	transition: border-color .2s ease, color .2s ease, transform .2s ease;
}

.mg-product-search:focus-within .mg-search-key {
	border-color: rgba(116, 84, 214, .38);
	color: #6949cc;
	transform: translateY(-1px);
}

.mg-product-search button {
	align-self: stretch;
	min-width: 94px;
	margin: 4px;
	border: 0;
	border-radius: 11px;
	background: linear-gradient(135deg, #11151f, #252c3b);
	box-shadow: 0 7px 16px rgba(17, 21, 31, .16);
	color: #fff;
	font-size: 13px;
	font-weight: 800;
	cursor: pointer;
	transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}

.mg-product-search button,
.mg-product-search button:hover,
.mg-product-search button:focus,
.mg-product-search button:active {
	color: #fff !important;
	-webkit-text-fill-color: #fff;
	text-shadow: none;
}

.mg-product-search button:hover,
.mg-product-search button:focus {
	background: linear-gradient(135deg, #2b2342, #171c29);
	box-shadow: 0 9px 20px rgba(31, 26, 49, .22);
	transform: translateY(-1px);
}

.mg-product-search button:focus-visible {
	outline: 2px solid rgba(255, 255, 255, .9);
	outline-offset: -5px;
}

.mg-product-search button:active {
	transform: translateY(0) scale(.98);
}

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

.mg-home {
	display: flex;
	flex-direction: column;
	gap: 64px;
	padding: 28px 0 72px;
}

.mg-hero {
	position: relative;
	height: clamp(360px, 27.5vw, 410px);
	min-height: 360px;
	overflow: hidden;
	border-radius: var(--mg-radius-lg);
	background: var(--mg-navy);
	box-shadow: 0 24px 60px rgba(8, 19, 33, .18);
	color: #fff;
}

.mg-hero__media,
.mg-hero__slide,
.mg-hero__slide picture,
.mg-hero__slide img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
}

.mg-hero__slide picture {
	display: block;
}

.mg-hero__slide {
	opacity: 0;
	visibility: hidden;
	transition: opacity .55s ease, visibility .55s ease;
}

.mg-hero__slide.is-active {
	opacity: 1;
	visibility: visible;
}

.mg-hero__slide img {
	display: block;
	object-fit: cover;
	object-position: center;
	transform: scale(1.015);
}

.mg-hero__veil,
.mg-hero__content {
	transition: opacity .28s ease, visibility .28s ease;
}

.mg-hero.is-artwork-active .mg-hero__veil,
.mg-hero.is-artwork-active .mg-hero__content {
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
}

.mg-hero.is-artwork-active .mg-hero__slide.is-active img {
	transform: none;
}

.mg-hero__veil {
	position: absolute;
	inset: 0;
	background:
		linear-gradient(90deg, rgba(4, 13, 24, .98) 0%, rgba(4, 13, 24, .92) 30%, rgba(4, 13, 24, .42) 58%, rgba(4, 13, 24, .08) 100%),
		linear-gradient(0deg, rgba(4, 13, 24, .28), transparent 45%);
	pointer-events: none;
}

.mg-hero__content {
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
	width: min(620px, 52%);
	height: 100%;
	min-height: 320px;
	padding: 28px clamp(32px, 4.4vw, 64px) 42px;
}

.mg-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 10px;
	color: var(--mg-gold-deep);
	font-size: 11px;
	font-weight: 850;
	letter-spacing: .11em;
	text-transform: uppercase;
}

.mg-hero .mg-eyebrow {
	color: #ffd36e;
}

.mg-hero h1 {
	max-width: 620px;
	margin: 0;
	color: #fff;
	font-size: clamp(44px, 4.3vw, 64px);
	font-weight: 900;
	letter-spacing: -.055em;
	line-height: .95;
}

.mg-hero h1 em {
	color: var(--mg-gold);
	font-style: normal;
}

.mg-hero__content > p {
	max-width: 460px;
	margin: 14px 0 10px;
	color: rgba(255, 255, 255, .86);
	font-size: 15px;
	line-height: 1.45;
}

.mg-delivery-note {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-size: 13px;
	font-weight: 750;
}

.mg-delivery-note b {
	display: grid;
	place-items: center;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	background: var(--mg-gold);
	color: #111;
	font-size: 12px;
}

.mg-hero__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 18px;
}

.mg-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 18px;
	min-height: 48px;
	padding: 0 22px;
	border: 1px solid transparent;
	border-radius: 12px;
	font-size: 14px;
	font-weight: 850;
	transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}

.mg-button:hover {
	transform: translateY(-2px);
}

.mg-button--gold {
	background: var(--mg-gold);
	box-shadow: 0 12px 28px rgba(242, 168, 0, .25);
	color: #111;
}

.mg-button--gold:hover {
	background: #ffb817;
}

.mg-button--ghost {
	border-color: rgba(255, 255, 255, .45);
	background: rgba(7, 19, 33, .36);
	color: #fff;
	backdrop-filter: blur(10px);
}

.mg-button--ghost:hover {
	background: rgba(255, 255, 255, .14);
}

.mg-button--dark {
	background: var(--mg-ink);
	color: #fff;
}

.mg-modern-home .mg-promo-banner .mg-button--dark,
.mg-modern-home .mg-promo-banner .mg-button--dark:hover,
.mg-modern-home .mg-promo-banner .mg-button--dark:focus {
	color: #fff;
}

.mg-hero__dots {
	position: absolute;
	z-index: 3;
	left: clamp(32px, 4.4vw, 64px);
	bottom: 18px;
	display: flex;
	gap: 8px;
}

.mg-hero__dots button {
	width: 9px;
	height: 9px;
	padding: 0;
	border: 0;
	border-radius: 999px;
	background: rgba(255, 255, 255, .5);
	cursor: pointer;
	transition: width .2s ease, background .2s ease;
}

.mg-hero__dots button.is-active {
	width: 26px;
	background: var(--mg-gold);
}

.mg-quick-section,
.mg-products-section,
.mg-browse,
.mg-how {
	min-width: 0;
}

.mg-section-heading {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 20px;
	margin-bottom: 21px;
}

.mg-section-heading .mg-eyebrow {
	margin-bottom: 6px;
}

.mg-section-heading h2 {
	margin: 0;
	color: var(--mg-ink);
	font-size: clamp(27px, 2.5vw, 38px);
	font-weight: 880;
	letter-spacing: -.035em;
	line-height: 1.08;
}

.mg-section-heading > a {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	min-height: 44px;
	font-size: 13px;
	font-weight: 800;
	white-space: nowrap;
}

.mg-section-heading > a span {
	font-size: 22px;
	line-height: 1;
}

.mg-section-heading > a:hover {
	color: var(--mg-gold-deep);
}

.mg-section-heading--compact h2 {
	font-size: 28px;
}

.mg-section-heading--center {
	justify-content: center;
	text-align: center;
}

.mg-quick-rail {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 14px;
}

.mg-quick-card {
	display: grid;
	grid-template-columns: 58px minmax(0, 1fr) auto;
	align-items: center;
	gap: 14px;
	min-height: 118px;
	padding: 20px;
	border: 1px solid rgba(242, 168, 0, .16);
	border-radius: var(--mg-radius);
	background: linear-gradient(135deg, #fffaf0, #fff1c9);
	box-shadow: 0 8px 24px rgba(24, 31, 45, .05);
	text-align: left;
	transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}

.mg-quick-card:nth-child(2) {
	border-color: rgba(112, 77, 206, .15);
	background: linear-gradient(135deg, #fbf8ff, #ebe3ff);
}

.mg-quick-card:nth-child(3) {
	border-color: rgba(16, 145, 200, .15);
	background: linear-gradient(135deg, #f7fcff, #daf3ff);
}

.mg-quick-card:nth-child(4) {
	border-color: rgba(236, 91, 75, .14);
	background: linear-gradient(135deg, #fff9f4, #ffe5d6);
}

.mg-quick-card:hover {
	transform: translateY(-4px);
	border-color: rgba(242, 168, 0, .55);
	box-shadow: var(--mg-shadow);
}

.mg-quick-card__icon {
	display: grid;
	place-items: center;
	width: 58px;
	height: 58px;
	border: 1px solid rgba(255, 255, 255, .82);
	border-radius: 17px;
	background: rgba(255, 255, 255, .72);
	box-shadow: 0 8px 20px rgba(35, 31, 54, .07);
	font-size: 26px;
}

.mg-quick-card__copy,
.mg-quick-card__copy strong,
.mg-quick-card__copy small {
	display: block;
	min-width: 0;
}

.mg-quick-card__copy strong {
	font-size: 14px;
	font-weight: 880;
	line-height: 1.25;
}

.mg-quick-card__copy small {
	margin-top: 6px;
	color: var(--mg-muted);
	font-size: 10px;
	line-height: 1.45;
}

.mg-quick-card > i {
	display: grid;
	place-items: center;
	width: 28px;
	height: 28px;
	border-radius: 50%;
	background: rgba(255, 255, 255, .68);
	color: #7a7182;
	font-size: 0;
	font-style: normal;
}

.mg-quick-card > i svg {
	display: block;
	width: 16px;
	height: 16px;
	fill: none;
	stroke: currentColor;
	stroke-width: 2;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.mg-product-rail {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 18px;
	min-width: 0;
}

.mg-product-card {
	--mg-card-accent-rgb: 242, 168, 0;
	position: relative;
	display: flex;
	flex-direction: column;
	min-width: 0;
	overflow: hidden;
	border: 1px solid #e6e1d8;
	border-radius: var(--mg-radius);
	background: #fffcf5;
	box-shadow: 0 12px 30px rgba(24, 31, 45, .09);
	transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease;
}

.mg-product-card--game {
	--mg-card-accent-rgb: 92, 105, 224;
}

.mg-product-card--gift-card {
	--mg-card-accent-rgb: 234, 160, 0;
}

.mg-product-card:nth-child(n+6) {
	display: none;
}

.mg-product-card:hover {
	transform: translateY(-5px);
	border-color: rgba(242, 168, 0, .62);
	box-shadow: 0 20px 42px rgba(24, 31, 45, .12), 0 8px 24px rgba(242, 168, 0, .14);
}

.mg-product-card__media {
	position: relative;
	display: block;
	aspect-ratio: 1 / 1;
	overflow: hidden;
	border-bottom: 1px solid #ded8cc;
	background: #fff;
}

.mg-product-card__media img {
	display: block;
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
	border-radius: 0;
	object-fit: cover;
	transition: transform .35s ease;
}

.mg-product-card:hover .mg-product-card__media img {
	transform: scale(1.035);
}

.mg-product-badge {
	position: absolute;
	z-index: 2;
	top: 11px;
	left: 11px;
	padding: 5px 9px;
	border-radius: 999px;
	background: var(--mg-gold);
	box-shadow: 0 4px 12px rgba(0, 0, 0, .14);
	color: #161616;
	font-size: 10px;
	font-weight: 900;
	text-transform: uppercase;
}

.mg-product-card__body {
	display: flex;
	flex: 1;
	flex-direction: column;
	padding: 15px;
	background: linear-gradient(180deg, #fffdf8 0%, #fff9ed 100%);
}

.mg-product-card__title {
	display: -webkit-box;
	min-height: 42px;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	font-size: 14px;
	font-weight: 850;
	line-height: 1.45;
}

.mg-product-card__title:hover {
	color: var(--mg-gold-deep);
}

.mg-product-card__category {
	align-self: flex-start;
	max-width: 100%;
	margin-top: 8px;
	overflow: hidden;
	padding: 4px 8px;
	border-radius: 999px;
	background: var(--mg-soft);
	color: var(--mg-muted);
	font-size: 10px;
	font-weight: 700;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.mg-product-card__rating {
	display: flex;
	align-items: center;
	gap: 7px;
	margin-top: 13px;
}

.mg-product-card__rating > span {
	color: var(--mg-gold);
	font-size: 11px;
	letter-spacing: 1px;
}

.mg-product-card__rating small {
	color: var(--mg-muted);
	font-size: 10px;
	font-weight: 700;
}

.mg-product-card__purchase {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: end;
	gap: 10px;
	margin-top: auto;
	padding-top: 15px;
}

.mg-product-card__price {
	min-width: 0;
	font-size: 15px;
	font-weight: 850;
}

.mg-product-card__price small {
	display: block;
	margin-bottom: 2px;
	color: var(--mg-muted);
	font-size: 9px;
	font-weight: 650;
	text-transform: uppercase;
}

.mg-product-card__price .price,
.mg-product-card__price .amount {
	font-size: inherit;
}

.mg-product-card__price del {
	display: block;
	color: #9ba1ad;
	font-size: 10px;
}

.mg-product-card__price ins {
	background: transparent;
	text-decoration: none;
}

.mg-card-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 76px;
	min-height: 39px;
	padding: 8px 13px;
	border-radius: 10px;
	background: var(--mg-gold);
	color: #161616;
	font-size: 11px;
	font-weight: 900;
}

.mg-card-button:hover {
	background: #ffb817;
}

.mg-product-empty {
	grid-column: 1 / -1;
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
	align-items: center;
	gap: 18px;
	min-height: 150px;
	padding: 28px;
	border: 1px dashed #d9dde5;
	border-radius: var(--mg-radius);
	background: linear-gradient(135deg, #fafbfc, #f4f6f9);
}

.mg-product-empty__icon {
	display: grid;
	place-items: center;
	width: 62px;
	height: 62px;
	border-radius: 18px;
	background: var(--mg-gold);
	font-size: 28px;
}

.mg-product-empty strong,
.mg-product-empty span {
	display: block;
}

.mg-product-empty strong {
	font-size: 17px;
}

.mg-product-empty span {
	margin-top: 5px;
	color: var(--mg-muted);
	font-size: 13px;
}

.mg-product-empty > a {
	min-height: 42px;
	padding: 11px 16px;
	border-radius: 10px;
	background: var(--mg-ink);
	color: #fff;
	font-size: 12px;
	font-weight: 850;
}

.mg-promo-banner {
	position: relative;
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
	align-items: center;
	gap: 28px;
	min-height: 174px;
	overflow: hidden;
	padding: 30px clamp(26px, 4vw, 58px);
	border-radius: var(--mg-radius-lg);
	background:
		radial-gradient(circle at 15% 0, rgba(255,255,255,.36), transparent 30%),
		linear-gradient(120deg, #ffd058 0%, #f2a800 48%, #ffc83d 100%);
	box-shadow: 0 18px 42px rgba(242, 168, 0, .18);
}

.mg-promo-banner::after {
	content: "";
	position: absolute;
	right: -70px;
	top: -110px;
	width: 330px;
	height: 330px;
	border: 58px solid rgba(255, 255, 255, .22);
	border-radius: 50%;
}

.mg-promo-banner__art {
	position: relative;
	z-index: 1;
	display: grid;
	place-items: center;
	width: 102px;
	height: 102px;
}

.mg-promo-banner__art span {
	position: relative;
	z-index: 2;
	display: grid;
	place-items: center;
	width: 78px;
	height: 78px;
	border: 6px solid #ffe59a;
	border-radius: 50%;
	background: #bf7600;
	box-shadow: 0 12px 20px rgba(121, 75, 0, .2);
	color: #fff2be;
	font-size: 38px;
	font-weight: 950;
}

.mg-promo-banner__art span svg {
	display: block;
	width: 39px;
	height: 39px;
	fill: #fff2be;
	filter: drop-shadow(0 3px 0 rgba(88, 50, 0, .16));
}

.mg-promo-banner__art i,
.mg-promo-banner__art b {
	position: absolute;
	width: 26px;
	height: 26px;
	border-radius: 7px;
	background: #41a5ff;
	transform: rotate(45deg);
}

.mg-promo-banner__art i { left: 0; bottom: 7px; }
.mg-promo-banner__art b { right: 0; top: 5px; background: #fff3b5; }

.mg-promo-banner > div:not(.mg-promo-banner__art) {
	position: relative;
	z-index: 2;
}

.mg-promo-banner .mg-eyebrow {
	margin-bottom: 5px;
	color: #724800;
}

.mg-promo-banner h2 {
	margin: 0;
	font-size: clamp(27px, 3vw, 42px);
	font-weight: 900;
	letter-spacing: -.04em;
}

.mg-promo-banner p {
	margin: 7px 0 0;
	color: #634400;
	font-size: 14px;
}

.mg-promo-banner .mg-button {
	position: relative;
	z-index: 2;
	white-space: nowrap;
}

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

.mg-trust-grid article {
	display: flex;
	align-items: center;
	gap: 15px;
	min-height: 112px;
	padding: 20px;
	border: 1px solid var(--mg-line);
	border-radius: var(--mg-radius);
	background: #fff;
}

.mg-trust-grid article > span {
	display: grid;
	flex: 0 0 auto;
	place-items: center;
	width: 48px;
	height: 48px;
	border-radius: 15px;
	background: #fff5d7;
	color: #9c6700;
	font-size: 23px;
	font-weight: 900;
}

.mg-trust-grid article > span svg {
	display: block;
	width: 24px;
	height: 24px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.mg-trust-grid h3,
.mg-trust-grid p {
	margin: 0;
}

.mg-trust-grid h3 {
	font-size: 14px;
	font-weight: 850;
}

.mg-trust-grid p {
	margin-top: 5px;
	color: var(--mg-muted);
	font-size: 11px;
	line-height: 1.45;
}

.mg-how {
	position: relative;
	overflow: hidden;
	padding: 38px;
	border: 1px solid rgba(242, 168, 0, .14);
	border-radius: var(--mg-radius-lg);
	background:
		radial-gradient(circle at 8% 10%, rgba(255, 184, 35, .22), transparent 30%),
		radial-gradient(circle at 91% 8%, rgba(113, 78, 224, .16), transparent 30%),
		linear-gradient(135deg, #fff9e9 0%, #f8f3ff 52%, #eef8ff 100%);
	box-shadow: 0 18px 50px rgba(38, 31, 69, .07);
}

.mg-how .mg-section-heading,
.mg-how__steps {
	position: relative;
	z-index: 1;
}

.mg-how__steps {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 28px;
	max-width: 1100px;
	margin: 32px auto 0;
}

.mg-how__steps article {
	position: relative;
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	gap: 14px;
	align-items: center;
	min-width: 0;
	padding: 18px;
	border: 1px solid rgba(255, 255, 255, .8);
	border-radius: 18px;
	background: rgba(255, 255, 255, .76);
	box-shadow: 0 10px 28px rgba(43, 38, 72, .07);
}

.mg-how__steps article:nth-child(1) {
	background: linear-gradient(135deg, rgba(255, 250, 230, .94), rgba(255, 239, 190, .8));
}

.mg-how__steps article:nth-child(2) {
	background: linear-gradient(135deg, rgba(250, 247, 255, .94), rgba(231, 222, 255, .8));
}

.mg-how__steps article:nth-child(3) {
	background: linear-gradient(135deg, rgba(247, 252, 255, .94), rgba(214, 241, 255, .82));
}

.mg-how__steps article:not(:last-child)::after {
	content: "";
	position: absolute;
	top: 50%;
	left: calc(100% + 6px);
	width: 16px;
	border-top: 2px dotted rgba(91, 73, 146, .34);
}

.mg-how__steps article > b {
	position: absolute;
	top: -8px;
	left: -8px;
	z-index: 2;
	display: grid;
	place-items: center;
	width: 23px;
	height: 23px;
	border-radius: 50%;
	background: var(--mg-gold);
	color: var(--mg-ink);
	font-size: 11px;
	box-shadow: 0 5px 12px rgba(242, 168, 0, .28);
}

.mg-how__steps article:nth-child(2) > b {
	background: #7454d6;
	color: #fff;
	box-shadow: 0 5px 12px rgba(116, 84, 214, .28);
}

.mg-how__steps article:nth-child(3) > b {
	background: #1593cf;
	color: #fff;
	box-shadow: 0 5px 12px rgba(21, 147, 207, .25);
}

.mg-how__steps article > span {
	display: grid;
	place-items: center;
	width: 62px;
	height: 62px;
	border: 1px solid rgba(255, 255, 255, .9);
	border-radius: 50%;
	background: linear-gradient(135deg, #fff8dc, #ffe49c);
	color: #b87300;
	font-size: 25px;
	box-shadow: 0 8px 22px rgba(95, 67, 40, .1);
}

.mg-how__steps article:nth-child(2) > span {
	background: linear-gradient(135deg, #f3edff, #d9ccff);
	color: #5c3ec3;
}

.mg-how__steps article:nth-child(3) > span {
	background: linear-gradient(135deg, #eaf8ff, #c7ebff);
	color: #117aa9;
}

.mg-how__steps h3,
.mg-how__steps p {
	margin: 0;
}

.mg-how__steps h3 {
	font-size: 14px;
	font-weight: 850;
}

.mg-how__steps p {
	margin-top: 6px;
	color: var(--mg-muted);
	font-size: 11px;
	line-height: 1.5;
}

.mg-browse {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	padding: clamp(28px, 3vw, 42px);
	border: 1px solid rgba(226, 147, 0, .2);
	border-radius: 30px;
	background:
		linear-gradient(115deg, #ffdc78 0%, #ffb300 48%, #ffc83f 100%);
	box-shadow: 0 24px 58px rgba(211, 139, 0, .2);
}

.mg-browse::before,
.mg-browse::after {
	content: "";
	position: absolute;
	z-index: -1;
	border-radius: 50%;
	pointer-events: none;
}

.mg-browse::before {
	top: -185px;
	right: -35px;
	width: 380px;
	height: 380px;
	border: 70px solid rgba(255, 255, 255, .12);
	box-shadow: 0 0 0 55px rgba(255, 255, 255, .07);
}

.mg-browse::after {
	bottom: -165px;
	left: 26%;
	width: 330px;
	height: 330px;
	border: 62px solid rgba(255, 244, 194, .22);
	box-shadow: 0 0 0 42px rgba(255, 255, 255, .07);
}

.mg-browse .mg-section-heading {
	position: relative;
	z-index: 1;
	align-items: center;
	margin-bottom: 28px;
}

.mg-browse .mg-section-heading h2 {
	color: #17191f;
}

.mg-browse .mg-eyebrow {
	color: #76500b;
}

.mg-browse__description {
	max-width: 650px;
	margin: 10px 0 0;
	color: rgba(40, 31, 14, .72);
	font-size: 12px;
	line-height: 1.55;
}

.mg-category-grid {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 14px;
}

.mg-category-grid > a {
	--mg-category-accent: 242, 168, 0;
	position: relative;
	display: grid;
	grid-template-columns: 62px minmax(0, 1fr) 32px;
	align-items: center;
	gap: 14px;
	min-height: 112px;
	overflow: hidden;
	padding: 17px;
	border: 1px solid rgba(255, 255, 255, .76);
	border-radius: 19px;
	background:
		radial-gradient(circle at 100% 0%, rgba(var(--mg-category-accent), .12), transparent 45%),
		linear-gradient(145deg, rgba(255, 255, 255, .98), rgba(255, 250, 232, .92));
	box-shadow: inset 0 -3px 0 rgba(var(--mg-category-accent), .58), 0 12px 28px rgba(125, 78, 0, .12);
	color: #17191f;
	transition: transform .22s ease, border-color .22s ease, background .22s ease, box-shadow .22s ease;
}

.mg-category-grid > a:nth-child(1) { --mg-category-accent: 55, 103, 255; }
.mg-category-grid > a:nth-child(2) { --mg-category-accent: 38, 166, 91; }
.mg-category-grid > a:nth-child(3) { --mg-category-accent: 232, 36, 45; }
.mg-category-grid > a:nth-child(4) { --mg-category-accent: 66, 133, 244; }
.mg-category-grid > a:nth-child(5) { --mg-category-accent: 174, 182, 196; }
.mg-category-grid > a:nth-child(6) { --mg-category-accent: 224, 52, 63; }
.mg-category-grid > a:nth-child(7) { --mg-category-accent: 211, 45, 54; }
.mg-category-grid > a:nth-child(8) { --mg-category-accent: 255, 184, 27; }

.mg-category-grid > a:hover {
	transform: translateY(-5px);
	border-color: rgba(255, 255, 255, .95);
	background:
		radial-gradient(circle at 100% 0%, rgba(var(--mg-category-accent), .2), transparent 50%),
		linear-gradient(145deg, #fff, #fff8dc);
	box-shadow: inset 0 -3px 0 rgba(var(--mg-category-accent), .9), 0 18px 36px rgba(125, 78, 0, .2);
}

.mg-category-grid > a:focus-visible {
	outline: 3px solid rgba(23, 25, 31, .58);
	outline-offset: 3px;
}

.mg-category-grid img {
	box-sizing: border-box;
	width: 62px;
	height: 54px;
	padding: 11px;
	border: 1px solid rgba(var(--mg-category-accent), .15);
	border-radius: 15px;
	background: #fff;
	box-shadow: 0 9px 22px rgba(77, 54, 13, .1);
	object-fit: contain;
}

.mg-category-grid span,
.mg-category-grid strong,
.mg-category-grid small {
	display: block;
	min-width: 0;
}

.mg-category-grid strong {
	overflow: hidden;
	color: #17191f;
	font-size: 15px;
	font-weight: 850;
	letter-spacing: -.015em;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.mg-category-grid small {
	margin-top: 5px;
	color: #736950;
	font-size: 10px;
}

.mg-category-grid i {
	display: grid;
	place-items: center;
	width: 32px;
	height: 32px;
	border: 1px solid rgba(23, 25, 31, .08);
	border-radius: 50%;
	background: #17191f;
	box-shadow: 0 7px 16px rgba(23, 25, 31, .14);
	color: #fff;
	font-size: 20px;
	font-style: normal;
	transition: transform .22s ease, background .22s ease;
}

.mg-category-grid i svg {
	display: block;
	width: 17px;
	height: 17px;
	fill: none;
	stroke: currentColor;
	stroke-width: 2;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.mg-category-grid > a:hover i {
	transform: translateX(3px);
	background: rgb(var(--mg-category-accent));
}

/* Modern Game product archive. */
.tax-product_cat .storefront-breadcrumb {
	margin: 0;
	padding: 14px 0;
	border-bottom: 1px solid var(--mg-line);
	background: #fff;
}

.tax-product_cat .storefront-breadcrumb .col-full {
	width: min(1180px, calc(100% - 48px));
	max-width: none;
	margin: 0 auto;
	padding: 0;
}

.tax-product_cat .woocommerce-breadcrumb {
	margin: 0;
	color: var(--mg-muted);
	font-size: 11px;
}

.tax-product_cat .content-area,
.tax-product_cat .site-main {
	float: none;
	width: 100%;
	max-width: none;
	margin: 0;
}

.mg-modern-footer {
	border-top: 1px solid var(--mg-line);
	background: #fafbfc;
	color: var(--mg-ink);
}

.mg-modern-footer .mg-container {
	padding-top: 54px;
	padding-bottom: 26px;
}

.mg-footer-grid {
	display: grid;
	grid-template-columns: 1.35fr repeat(3, 1fr) 1.15fr;
	gap: 40px;
}

.mg-footer-brand img {
	display: block;
	width: 138px;
	height: auto;
}

.mg-footer-brand p {
	max-width: 270px;
	margin: 17px 0 0;
	color: var(--mg-muted);
	font-size: 12px;
	line-height: 1.65;
}

.mg-social-links {
	display: flex;
	gap: 8px;
	margin-top: 18px;
}

.mg-social-links a {
	display: grid;
	place-items: center;
	width: 34px;
	height: 34px;
	border: 1px solid var(--mg-line);
	border-radius: 50%;
	background: #fff;
	font-size: 14px;
	font-weight: 900;
}

.mg-social-links a:hover {
	border-color: var(--mg-gold);
	background: var(--mg-gold);
}

.mg-social-links svg {
	display: block;
	width: 17px;
	height: 17px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.mg-social-links .mg-social-icon__dot,
.mg-social-links .mg-social-icon--telegram {
	fill: currentColor;
	stroke: none;
}

.mg-footer-column {
	border: 0;
}

.mg-footer-column summary,
.mg-footer-payments > strong {
	display: block;
	margin: 0 0 17px;
	list-style: none;
	font-size: 13px;
	font-weight: 900;
}

.mg-footer-column summary::-webkit-details-marker {
	display: none;
}

.mg-footer-column > a {
	display: block;
	width: fit-content;
	margin-top: 10px;
	color: #5d6573;
	font-size: 11px;
	font-weight: 600;
}

.mg-footer-column > a:hover {
	color: var(--mg-gold-deep);
}

.mg-footer-payments > div {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.mg-footer-payments img {
	width: 56px;
	height: 34px;
	padding: 6px;
	border: 1px solid var(--mg-line);
	border-radius: 8px;
	background: #fff;
	object-fit: contain;
}

.mg-footer-bottom {
	display: flex;
	justify-content: space-between;
	gap: 20px;
	margin-top: 42px;
	padding-top: 20px;
	border-top: 1px solid var(--mg-line);
	color: #7a818e;
	font-size: 10px;
}

.mg-mobile-bottom-nav {
	display: none;
}

@media (max-width: 1180px) {
	.mg-header-main {
		grid-template-columns: 144px minmax(0, 1fr) auto;
		gap: 22px;
	}

	.mg-desktop-nav {
		gap: 16px;
	}

	.mg-desktop-nav > a {
		font-size: 13px;
	}

	.mg-header-actions > a span:not(.screen-reader-text) {
		display: none;
	}

	.mg-product-rail {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}

	.mg-product-card:nth-child(5) {
		display: none;
	}

	.mg-category-grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}

	.mg-footer-grid {
		grid-template-columns: 1.2fr repeat(3, 1fr);
	}

	.mg-footer-payments {
		grid-column: 1 / -1;
	}
}

@media (max-width: 960px) {
	.mg-currency-switcher--desktop {
		display: none;
	}

	.mg-menu-toggle {
		display: inline-flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		gap: 4px;
		width: 44px;
		height: 44px;
		padding: 0;
		border: 0;
		border-radius: 11px;
		background: transparent;
		cursor: pointer;
	}

	.mg-menu-toggle:hover {
		background: var(--mg-soft);
	}

	.mg-menu-toggle > span:not(.screen-reader-text) {
		width: 21px;
		height: 2px;
		border-radius: 2px;
		background: var(--mg-ink);
		transition: transform .2s, opacity .2s;
	}

	.mg-menu-toggle[aria-expanded="true"] > span:nth-of-type(2) { transform: translateY(6px) rotate(45deg); }
	.mg-menu-toggle[aria-expanded="true"] > span:nth-of-type(3) { opacity: 0; }
	.mg-menu-toggle[aria-expanded="true"] > span:nth-of-type(4) { transform: translateY(-6px) rotate(-45deg); }

	.mg-header-main {
		grid-template-columns: 44px minmax(0, 1fr) auto;
		gap: 14px;
	}

	.mg-logo {
		width: 130px;
	}

	.mg-desktop-nav {
		display: none;
	}

	.mg-mobile-menu {
		display: block;
		position: absolute;
		left: 0;
		right: 0;
		top: 100%;
		border-top: 1px solid var(--mg-line);
		background: #fff;
		box-shadow: 0 24px 40px rgba(17, 23, 34, .14);
	}

	.mg-mobile-menu[hidden] {
		display: none;
	}

	.mg-mobile-menu .mg-container {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 8px;
		padding-top: 16px;
		padding-bottom: 18px;
	}

	.mg-mobile-currency {
		display: flex;
		grid-column: 1 / -1;
		align-items: center;
		justify-content: space-between;
		min-height: 54px;
		padding: 6px 8px 6px 14px;
		background: linear-gradient(110deg, #fff4ce, #fffaf0);
		border: 1px solid #efd37e;
		border-radius: 12px;
	}

	.mg-mobile-currency__label {
		display: inline-flex;
		align-items: center;
		gap: 8px;
		color: #493a1c;
		font-size: 13px;
		font-weight: 800;
	}

	.mg-mobile-currency__label svg {
		color: #a56f00;
	}

	.mg-currency-switcher--mobile {
		min-height: 40px;
		background: #fff;
		border-color: #eadba9;
	}

	.mg-mobile-menu a {
		display: flex;
		align-items: center;
		min-height: 44px;
		padding: 10px 13px;
		border-radius: 10px;
		background: var(--mg-soft);
		font-size: 13px;
		font-weight: 750;
	}

	.mg-hero__content {
		width: 66%;
	}

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

	.mg-product-rail {
		display: flex;
		overflow-x: auto;
		padding: 2px 2px 18px;
		scroll-padding-inline: 2px;
		scroll-snap-type: x mandatory;
		scrollbar-width: thin;
	}

	.mg-product-card,
	.mg-product-card:nth-child(n) {
		display: flex;
		flex: 0 0 min(31vw, 285px);
		scroll-snap-align: start;
	}

	.mg-product-empty {
		flex: 0 0 100%;
	}

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

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

}

@media (max-width: 767px) {
	body.admin-bar .mg-header-stack {
		top: 46px;
	}

	.mg-container,
	.mg-home {
		width: min(100% - 28px, 620px);
	}

	.mg-trust-bar {
		min-height: 30px;
		overflow: hidden;
	}

	.mg-trust-bar__inner {
		justify-content: flex-start;
		gap: 18px;
		min-height: 30px;
		overflow-x: auto;
		font-size: 10px;
		scrollbar-width: none;
		white-space: nowrap;
	}

	.mg-trust-bar__inner::-webkit-scrollbar { display: none; }

	.mg-header-main {
		min-height: 62px;
	}

	.mg-logo {
		width: 117px;
	}

	.mg-header-actions {
		gap: 2px;
	}

	.mg-header-actions > a {
		width: 42px;
		min-height: 42px;
		justify-content: center;
		padding: 6px;
	}

	.mg-header-actions svg {
		width: 22px;
		height: 22px;
	}

	.mg-header-actions strong {
		left: 22px;
	}

	.mg-search-row {
		padding-bottom: 11px;
	}

	.mg-product-search {
		min-height: 46px;
		border-radius: 14px;
	}

	.mg-product-search input[type="search"] {
		height: 44px;
		padding-inline: 11px;
		font-size: 13px;
	}

	.mg-product-search svg {
		margin-left: 14px;
	}

	.mg-product-search button {
		display: none;
	}

	.mg-search-key {
		display: none;
	}

	.mg-mobile-menu .mg-container {
		grid-template-columns: 1fr;
	}

	.mg-home {
		gap: 44px;
		padding: 14px 0 96px;
	}

	.mg-hero {
		height: 290px;
		min-height: 290px;
		border-radius: 20px;
	}

	.mg-hero__slide img {
		object-position: center;
	}

	.mg-hero__veil {
		background:
			linear-gradient(90deg, rgba(4, 13, 24, .98) 0%, rgba(4, 13, 24, .90) 42%, rgba(4, 13, 24, .34) 58%, rgba(4, 13, 24, .08) 70%, transparent 82%),
			linear-gradient(0deg, rgba(4, 13, 24, .16), transparent 45%);
	}

	.mg-hero__content {
		justify-content: center;
		width: 68%;
		height: 100%;
		min-height: 0;
		padding: 22px 18px 36px;
	}

	.mg-hero h1 {
		font-size: clamp(34px, 10.5vw, 43px);
	}

	.mg-hero__content > p {
		max-width: 225px;
		margin: 10px 0 0;
		font-size: 12.5px;
		line-height: 1.4;
	}

	.mg-hero .mg-delivery-note,
	.mg-hero__actions .mg-button--ghost {
		display: none;
	}

	.mg-hero__actions {
		width: auto;
		margin-top: 14px;
	}

	.mg-hero__actions .mg-button {
		width: auto;
		min-height: 42px;
		padding-inline: 16px;
	}

	.mg-hero__actions .mg-button--ghost {
		display: none;
	}

	.mg-hero__dots {
		left: 18px;
		bottom: 12px;
	}

	.mg-section-heading {
		align-items: center;
		margin-bottom: 16px;
	}

	.mg-section-heading .mg-eyebrow {
		display: none;
	}

	.mg-section-heading h2,
	.mg-section-heading--compact h2 {
		font-size: 24px;
	}

	.mg-section-heading > a {
		min-height: 42px;
		font-size: 12px;
	}

	.mg-quick-rail {
		display: flex;
		overflow-x: auto;
		margin-right: -14px;
		padding: 2px 14px 12px 2px;
		scroll-padding-inline: 2px;
		scroll-snap-type: x mandatory;
		scrollbar-width: none;
	}

	.mg-quick-rail::-webkit-scrollbar,
	.mg-product-rail::-webkit-scrollbar { display: none; }

	.mg-quick-card {
		flex: 0 0 min(82vw, 310px);
		grid-template-columns: 52px minmax(0, 1fr) auto;
		gap: 12px;
		min-height: 106px;
		padding: 15px;
		scroll-snap-align: start;
	}

	.mg-quick-card__icon {
		width: 52px;
		height: 52px;
		border-radius: 15px;
		font-size: 23px;
	}

	.mg-quick-card__copy strong {
		font-size: 13px;
	}

	.mg-quick-card__copy small {
		font-size: 10px;
	}

	.mg-product-rail {
		margin-right: -14px;
		padding-right: 14px;
		scrollbar-width: none;
	}

	.mg-product-card,
	.mg-product-card:nth-child(n) {
		flex-basis: min(72vw, 270px);
		border-radius: 16px;
	}

	.mg-product-card__body {
		padding: 13px;
	}

	.mg-product-card__title {
		min-height: 39px;
		font-size: 13px;
	}

	.mg-product-card__purchase {
		grid-template-columns: 1fr;
	}

	.mg-card-button {
		width: 100%;
		min-height: 42px;
	}

	.mg-product-empty {
		grid-template-columns: auto 1fr;
		gap: 13px;
		min-height: 170px;
		padding: 20px;
	}

	.mg-product-empty__icon {
		width: 48px;
		height: 48px;
	}

	.mg-product-empty > a {
		grid-column: 1 / -1;
		text-align: center;
	}

	.mg-promo-banner {
		grid-template-columns: 1fr auto;
		gap: 12px;
		min-height: 160px;
		padding: 23px;
		border-radius: 20px;
	}

	.mg-promo-banner__art {
		display: none;
	}

	.mg-promo-banner h2 {
		font-size: 27px;
	}

	.mg-promo-banner p {
		font-size: 11px;
	}

	.mg-promo-banner .mg-button {
		min-height: 44px;
		padding: 0 15px;
		font-size: 12px;
	}

	.mg-trust-grid {
		gap: 10px;
	}

	.mg-trust-grid article {
		align-items: flex-start;
		gap: 10px;
		min-height: 132px;
		padding: 15px;
	}

	.mg-trust-grid article > span {
		width: 38px;
		height: 38px;
		border-radius: 12px;
		font-size: 18px;
	}

	.mg-trust-grid h3 {
		font-size: 12px;
	}

	.mg-trust-grid p {
		font-size: 10px;
	}

	.mg-how {
		padding: 26px 20px;
		border-radius: 20px;
	}

	.mg-how__steps {
		grid-template-columns: 1fr;
		gap: 22px;
		margin-top: 26px;
	}

	.mg-how__steps article:not(:last-child)::after {
		top: calc(100% + 5px);
		left: 48px;
		width: 0;
		height: 12px;
		border-top: 0;
		border-left: 2px dotted rgba(91, 73, 146, .34);
	}

	.mg-how__steps article > span {
		width: 56px;
		height: 56px;
	}

	.mg-browse {
		padding: 24px 14px;
		border-radius: 22px;
	}

	.mg-browse .mg-section-heading {
		align-items: flex-start;
		margin-bottom: 20px;
	}

	.mg-browse .mg-section-heading h2 {
		font-size: 26px;
	}

	.mg-browse__description {
		margin-top: 8px;
		font-size: 10px;
	}

	.mg-category-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 10px;
	}

	.mg-category-grid > a {
		grid-template-columns: 46px minmax(0, 1fr);
		gap: 10px;
		min-height: 92px;
		padding: 12px;
		border-radius: 15px;
	}

	.mg-category-grid img {
		width: 46px;
		height: 43px;
		padding: 8px;
		border-radius: 12px;
	}

	.mg-category-grid strong {
		font-size: 12px;
	}

	.mg-category-grid small {
		display: block;
		font-size: 9px;
	}

	.mg-category-grid i {
		position: absolute;
		top: 9px;
		right: 9px;
		display: grid;
		width: 23px;
		height: 23px;
		font-size: 15px;
	}

	.mg-category-grid i svg {
		width: 13px;
		height: 13px;
	}

	.mg-modern-footer .mg-container {
		padding-top: 36px;
		padding-bottom: 90px;
	}

	.mg-footer-grid {
		grid-template-columns: 1fr;
		gap: 10px;
	}

	.mg-footer-brand {
		margin-bottom: 18px;
	}

	.mg-footer-column {
		border-top: 1px solid var(--mg-line);
	}

	.mg-footer-column summary {
		position: relative;
		min-height: 48px;
		margin: 0;
		padding: 16px 30px 14px 0;
		cursor: pointer;
	}

	.mg-footer-column summary::after {
		content: "+";
		position: absolute;
		right: 4px;
		top: 13px;
		font-size: 20px;
		font-weight: 500;
	}

	.mg-footer-column[open] summary::after {
		content: "−";
	}

	.mg-footer-column > a {
		margin: 0 0 12px;
	}

	.mg-footer-payments {
		padding-top: 18px;
		border-top: 1px solid var(--mg-line);
	}

	.mg-footer-bottom {
		flex-direction: column;
		margin-top: 28px;
	}

	.mg-mobile-bottom-nav {
		position: fixed;
		z-index: 1000;
		left: 0;
		right: 0;
		bottom: 0;
		display: grid;
		grid-template-columns: repeat(5, minmax(0, 1fr));
		gap: 2px;
		min-height: 66px;
		padding: 6px max(6px, env(safe-area-inset-right)) max(6px, env(safe-area-inset-bottom)) max(6px, env(safe-area-inset-left));
		border-top: 1px solid var(--mg-line);
		background: rgba(255, 255, 255, .97);
		box-shadow: 0 -8px 24px rgba(19, 26, 39, .09);
		backdrop-filter: blur(16px);
	}

	.mg-mobile-bottom-nav a {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		gap: 3px;
		min-width: 0;
		min-height: 52px;
		padding: 4px 2px;
		border-radius: 11px;
		color: #5d6573;
		font-weight: 700;
		text-decoration: none;
	}

	.mg-mobile-bottom-nav a span {
		max-width: 100%;
		overflow: hidden;
		font-size: 10px !important;
		line-height: 1.15;
		text-overflow: ellipsis;
		white-space: nowrap;
	}

	.mg-mobile-bottom-nav a.is-active {
		color: var(--mg-gold-deep);
		background: #fff7dd;
	}

	/* Keep Zendesk's launcher clear of the persistent navigation. */
	iframe#launcher {
		right: 0 !important;
		bottom: calc(82px + env(safe-area-inset-bottom)) !important;
		margin-right: 12px !important;
		margin-bottom: 0 !important;
	}
}

@media (max-width: 430px) {
	.mg-hero__content {
		width: 70%;
	}

	.mg-promo-banner {
		grid-template-columns: 1fr;
	}

	.mg-promo-banner .mg-button {
		width: fit-content;
	}

}

/* ============================================================
   MODERN SINGLE PRODUCT
   ============================================================ */

body.single-product {
	background:
		radial-gradient(circle at 8% 18%, rgba(242, 168, 0, .08), transparent 24rem),
		linear-gradient(180deg, #f7f8fa 0%, #f2f3f6 100%);
}

body.single-product .mg-content-shell {
	width: min(1280px, calc(100% - 48px));
	margin-inline: auto;
	padding: 28px 0 76px;
}

body.single-product #primary,
body.single-product #main {
	float: none;
	width: 100%;
	margin: 0;
}

body.single-product .woocommerce-breadcrumb {
	width: 100%;
	max-width: none;
	margin: 0 0 22px;
	padding: 0;
	color: #7a8291;
	font-size: 13px;
}

body.single-product .woocommerce-breadcrumb a {
	display: inline-flex;
	align-items: center;
	min-height: 38px;
	margin-right: 5px;
	padding: 0 14px;
	border: 1px solid #e7e9ee;
	border-radius: 999px;
	background: rgba(255, 255, 255, .86);
	color: var(--mg-ink);
	font-weight: 800;
	box-shadow: 0 5px 18px rgba(24, 29, 39, .04);
}

.mg-single-product {
	position: relative;
	width: 100%;
}

.mg-single-product__hero {
	display: grid;
	grid-template-columns: minmax(0, .92fr) minmax(420px, 1.08fr);
	align-items: start;
	gap: 30px;
}

.mg-single-product__visual,
.mg-single-product__summary,
.mg-single-product__steps,
.mg-single-product__details .woocommerce-tabs {
	border: 1px solid rgba(20, 23, 31, .08);
	border-radius: 26px;
	background: #fff;
	box-shadow: 0 18px 50px rgba(24, 31, 43, .08);
}

.mg-single-product__visual {
	position: sticky;
	top: 182px;
	overflow: hidden;
	padding: 18px;
	background:
		radial-gradient(circle at 12% 10%, rgba(242, 168, 0, .22), transparent 17rem),
		linear-gradient(145deg, #fff4d2 0%, #fffdf8 54%, #fff8e8 100%);
}

.mg-single-product__visual::before {
	position: absolute;
	right: -78px;
	bottom: -92px;
	width: 260px;
	height: 260px;
	border: 44px solid rgba(242, 168, 0, .08);
	border-radius: 50%;
	content: "";
	pointer-events: none;
}

.mg-single-product__visual-topline {
	position: relative;
	z-index: 2;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 14px;
	color: #6c7280;
	font-size: 12px;
	font-weight: 900;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.mg-single-product__visual-topline span:last-child {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	color: #9a6800;
	letter-spacing: normal;
	text-transform: none;
}

.mg-single-product__visual-topline svg,
.mg-single-product__visual-note svg,
.mg-single-product__reassurance svg {
	width: 18px;
	height: 18px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.9;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.mg-single-product__gallery {
	position: relative;
	z-index: 1;
	overflow: hidden;
	border: 1px solid rgba(20, 23, 31, .08);
	border-radius: 20px;
	background: #fff;
}

.mg-single-product__gallery .onsale {
	position: absolute;
	z-index: 4;
	top: 14px;
	left: 14px;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	min-height: 34px;
	margin: 0;
	padding: 0 13px;
	border: 0;
	border-radius: 999px;
	background: var(--mg-gold);
	color: #12151d;
	font-size: 12px;
	font-weight: 950;
	line-height: 1;
	text-transform: uppercase;
	box-shadow: 0 8px 20px rgba(242, 168, 0, .28);
}

.mg-single-product__gallery .woocommerce-product-gallery {
	float: none !important;
	width: 100% !important;
	margin: 0 !important;
}

.mg-single-product__gallery .woocommerce-product-gallery__wrapper {
	margin: 0;
}

.mg-single-product__gallery .woocommerce-product-gallery__image,
.mg-single-product__gallery .woocommerce-product-gallery__image a {
	display: block;
	width: 100%;
}

.mg-single-product__gallery .woocommerce-product-gallery img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 1 / 1;
	margin: 0;
	border: 0;
	border-radius: 0;
	background: #fff;
	object-fit: contain;
	cursor: default;
}

.mg-single-product__gallery .woocommerce-product-gallery img.zoomImg {
	display: none !important;
}

.mg-single-product__visual-note {
	position: relative;
	z-index: 1;
	display: flex;
	align-items: center;
	gap: 12px;
	margin-top: 14px;
	padding: 13px 14px;
	border: 1px solid rgba(242, 168, 0, .18);
	border-radius: 16px;
	background: rgba(255, 255, 255, .72);
	color: #8e6100;
}

.mg-single-product__visual-note svg {
	flex: 0 0 auto;
	width: 23px;
	height: 23px;
}

.mg-single-product__visual-note div {
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.mg-single-product__visual-note strong {
	color: var(--mg-ink);
	font-size: 13px;
}

.mg-single-product__visual-note span {
	color: var(--mg-muted);
	font-size: 12px;
}

.woocommerce div.product .mg-single-product__summary {
	float: none !important;
	display: flex;
	flex-direction: column;
	width: 100% !important;
	max-width: none !important;
	min-width: 0;
	margin: 0;
	padding: 34px;
	overflow: visible;
	border-radius: 26px;
	border: 1px solid #ead79f;
	background:
		radial-gradient(circle at 100% 0%, rgba(255, 188, 32, .16), transparent 36%),
		linear-gradient(180deg, #fffefa 0%, #fffaf0 100%);
}

.mg-single-product__summary > * {
	order: 4;
}

/* Some WooCommerce/plugin combinations inject the native sale flash into the
   summary hook instead of the gallery hook. The modern product page already
   communicates the live option price, so suppress this misplaced duplicate
   rather than allowing legacy .onsale styles to create a full-width banner. */
.woocommerce div.product .mg-single-product__summary > .onsale {
	display: none !important;
}

.mg-single-product__summary .mg-single-product__eyebrow {
	order: 1;
	display: inline-flex;
	align-self: flex-start;
	min-height: 30px;
	padding: 0 12px;
	border: 1px solid #f2cf73;
	border-radius: 999px;
	background: #fff3c9;
	color: #8a5a00;
	font-size: 11px;
	font-weight: 950;
	letter-spacing: .1em;
	line-height: 28px;
	text-transform: uppercase;
}

.woocommerce div.product .mg-single-product__summary .product_title {
	order: 2;
	margin: 15px 0 12px;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--mg-ink);
	font-size: clamp(34px, 4vw, 52px);
	font-weight: 950;
	letter-spacing: -.045em;
	line-height: 1.02;
	text-align: left;
}

.woocommerce div.product .mg-single-product__summary > .price {
	display: none !important;
}

.mg-single-product__price {
	order: 3 !important;
	display: grid;
	grid-template-columns: auto 1fr;
	align-items: end;
	gap: 2px 12px;
	margin: 2px 0 18px;
	padding: 15px 17px;
	border: 1px solid #171923;
	border-radius: 17px;
	background:
		radial-gradient(circle at 100% 0%, rgba(255, 190, 35, .2), transparent 42%),
		linear-gradient(135deg, #151922 0%, #242a35 100%);
	box-shadow: 0 14px 32px rgba(21, 25, 34, .16);
}

.mg-single-product__price > span {
	grid-column: 1;
	color: #ffd15b;
	font-size: 11px;
	font-weight: 900;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.mg-single-product__price strong {
	grid-column: 1;
	color: #fff;
	font-size: 29px;
	font-weight: 950;
	letter-spacing: -.035em;
	line-height: 1;
}

.mg-single-product__price small {
	grid-column: 2;
	grid-row: 1 / span 2;
	align-self: center;
	justify-self: end;
	color: #e3e6ec;
	font-size: 12px;
	font-weight: 700;
}

.woocommerce div.product .mg-single-product__summary .woocommerce-product-details__short-description {
	order: 4;
	margin: 0 0 20px;
	color: #5f6877;
}

.woocommerce div.product .mg-single-product__summary .woocommerce-product-details__short-description p {
	display: block;
	margin: 0 0 9px;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	color: inherit;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.6;
}

.woocommerce div.product .mg-single-product__summary .woocommerce-product-details__short-description p:first-child {
	display: inline-flex;
	align-items: center;
	width: fit-content;
	padding: 7px 11px;
	border: 1px solid #f0d17c;
	border-radius: 999px;
	background: #fff5d6;
	color: #8a5a00;
	font-size: 12px;
	font-weight: 850;
}

.woocommerce div.product .mg-single-product__summary form.cart {
	order: 5;
	width: 100%;
	margin: 0;
	padding: 20px;
	border: 1px solid #ead69b;
	border-radius: 19px;
	background: linear-gradient(145deg, #fffaf0, #fff4d7);
}

.mg-single-product form.cart table.variations {
	display: block;
	width: 100%;
	margin: 0 0 14px;
	border: 0;
}

.mg-single-product form.cart table.variations tbody,
.mg-single-product form.cart table.variations tr,
.mg-single-product form.cart table.variations td {
	display: block;
	width: 100%;
	padding: 0;
	border: 0;
	background: transparent;
}

.mg-single-product form.cart table.variations .label {
	display: none !important;
}

.mg-single-product form.cart table.variations .value::before {
	display: block;
	margin: 0 0 8px;
	color: #3c321d;
	content: "Choose an option";
	font-size: 13px;
	font-weight: 900;
}

.mg-single-product form.cart table.variations select {
	width: 100%;
	min-height: 52px;
	margin: 0;
	padding: 0 46px 0 15px;
	border: 1px solid #e5cf91;
	border-radius: 13px;
	background-color: #fff;
	color: var(--mg-ink);
	font-size: 14px;
	font-weight: 750;
	box-shadow: 0 5px 16px rgba(22, 28, 39, .04);
}

.mg-single-product form.cart table.variations select:focus {
	border-color: #e5a500;
	box-shadow: 0 0 0 4px rgba(242, 168, 0, .14);
	outline: none;
}

.woocommerce .mg-single-product a.reset_variations {
	float: none;
	align-items: center;
	width: fit-content;
	min-height: 30px;
	margin: 9px 0 0;
	padding: 0 10px;
	border-color: #e7d6a6;
	background: #fff;
	color: #695c40;
	font-size: 11px;
	font-weight: 800;
}

.mg-single-product .single_variation_wrap {
	width: 100%;
}

.woocommerce div.product .mg-single-product .woocommerce-variation-price {
	display: block !important;
	width: 100%;
	margin: 0 0 12px;
	padding: 0;
	border-radius: 13px;
	background: transparent;
	font-size: 1em;
}

.woocommerce div.product .mg-single-product .woocommerce-variation-price .price {
	display: flex !important;
	align-items: center;
	justify-content: flex-start;
	width: 100%;
	margin: 0;
	padding: 12px 14px;
	border: 1px solid #ead8a8;
	border-left: 4px solid #f2a800;
	border-radius: 13px;
	background: #fff;
	color: var(--mg-ink);
	font-size: 22px;
	font-weight: 950;
}

.mg-single-product .woocommerce-variation-add-to-cart,
.woocommerce div.product.mg-single-product form.cart:not(.variations_form) {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	align-items: stretch;
	gap: 10px;
	width: 100%;
}

.mg-single-product .woocommerce-variation-add-to-cart::before,
.mg-single-product .woocommerce-variation-add-to-cart::after {
	display: none !important;
	content: none !important;
}

.woocommerce div.product.mg-single-product form.cart .quantity {
	grid-column: 1 / -1 !important;
	grid-row: 1 !important;
	float: none;
	display: grid !important;
	grid-template-columns: minmax(58px, 1fr) 44px 48px 44px;
	align-items: center;
	width: 196px;
	height: 54px;
	margin: 0;
	padding-left: 12px;
	border: 1px solid #dcdfe6;
	border-radius: 13px;
	background: #fff;
	overflow: hidden;
	box-shadow: none;
}

.woocommerce div.product.mg-single-product form.cart .quantity .qty {
	width: 48px;
	height: 52px;
	margin: 0;
	padding: 0;
	border: 0 !important;
	border-left: 1px solid #eceef2 !important;
	border-radius: 0;
	background: transparent;
	color: var(--mg-ink);
	font-weight: 850;
	text-align: center;
	appearance: textfield;
	box-shadow: none;
}

.woocommerce div.product.mg-single-product form.cart .quantity .qty::-webkit-outer-spin-button,
.woocommerce div.product.mg-single-product form.cart .quantity .qty::-webkit-inner-spin-button {
	margin: 0;
	appearance: none;
}

.mg-product-quantity__label {
	color: #687386;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .02em;
	line-height: 1;
}

.woocommerce div.product.mg-single-product form.cart .mg-product-quantity__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 52px;
	margin: 0;
	padding: 0;
	border: 0;
	border-left: 1px solid #eceef2;
	border-radius: 0;
	background: #fffaf0;
	color: #322a19;
	font-family: inherit;
	font-size: 20px;
	font-weight: 750;
	line-height: 1;
	cursor: pointer;
	transition: background-color .16s ease, color .16s ease;
}

.woocommerce div.product.mg-single-product form.cart .mg-product-quantity__button:hover:not(:disabled) {
	background: #ffedb5;
	color: #17130a;
}

.woocommerce div.product.mg-single-product form.cart .mg-product-quantity__button:focus-visible {
	position: relative;
	z-index: 1;
	outline: 3px solid rgba(229, 165, 0, .32);
	outline-offset: -3px;
}

.woocommerce div.product.mg-single-product form.cart .mg-product-quantity__button:disabled {
	opacity: .38;
	cursor: not-allowed;
}

.mg-purchase-hint {
	margin: 0 0 10px;
	padding: 9px 12px;
	border: 1px solid #efd48d;
	border-radius: 10px;
	background: #fff8e6;
	color: #70500d;
	font-size: 12px;
	font-weight: 700;
	line-height: 1.4;
}

.mg-purchase-hint[hidden] {
	display: none !important;
}

.woocommerce div.product.mg-single-product form.cart .single_add_to_cart_button.button.alt,
.woocommerce div.product.mg-single-product form.cart .buy_now_button.button.alt {
	float: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 54px;
	margin: 0 !important;
	padding: 0 18px;
	border: 1px solid transparent !important;
	border-radius: 13px;
	font-size: 14px;
	font-weight: 950;
	line-height: 1;
	transition: transform .16s ease, box-shadow .16s ease, background .16s ease;
}

.woocommerce div.product.mg-single-product form.cart .single_add_to_cart_button.button.alt {
	grid-column: 1 !important;
	grid-row: 2 !important;
	background: #fff7df !important;
	border-color: #e8c86f !important;
	color: #3f3216 !important;
	box-shadow: none;
}

.woocommerce div.product.mg-single-product form.cart .buy_now_button.button.alt {
	grid-column: 2 !important;
	grid-row: 2 !important;
	background: var(--mg-gold) !important;
	color: #11151d !important;
	box-shadow: 0 10px 24px rgba(242, 168, 0, .25);
}

.woocommerce div.product.mg-single-product form.cart .single_add_to_cart_button.button.alt:hover,
.woocommerce div.product.mg-single-product form.cart .buy_now_button.button.alt:hover {
	transform: translateY(-2px);
}

.woocommerce div.product.mg-single-product form.cart .single_add_to_cart_button.button.alt:hover {
	background: #ffedb5 !important;
	border-color: #d99a00 !important;
	color: #211a0b !important;
	box-shadow: none;
}

.woocommerce div.product.mg-single-product form.cart .buy_now_button.button.alt:hover {
	background: #ffc129 !important;
	color: #11151d !important;
	box-shadow: 0 14px 30px rgba(242, 168, 0, .3);
}

.woocommerce div.product.mg-single-product form.cart button.disabled,
.woocommerce div.product.mg-single-product form.cart button:disabled {
	cursor: not-allowed;
	opacity: .48;
	filter: grayscale(.25);
	transform: none;
	box-shadow: none;
}

.mg-single-product__reassurance {
	order: 6 !important;
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 9px;
	margin-top: 16px;
}

.mg-single-product__reassurance span {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	min-height: 43px;
	padding: 7px 8px;
	border: 1px solid #ead9aa;
	border-radius: 12px;
	background: #fff;
	color: #655c49;
	font-size: 11px;
	text-align: center;
}

.mg-single-product__reassurance svg {
	flex: 0 0 auto;
	width: 17px;
	height: 17px;
	color: #b47700;
}

.mg-single-product__reassurance b {
	color: #39362f;
	font-weight: 850;
}

.mg-single-product__summary .edit-link {
	display: none;
}

.mg-single-product__steps {
	display: grid;
	grid-template-columns: .65fr 1.35fr;
	gap: 28px;
	margin-top: 28px;
	padding: 27px 30px;
	background:
		linear-gradient(115deg, rgba(255, 238, 180, .9), rgba(255, 255, 255, .97) 52%, rgba(255, 246, 216, .92));
}

@media (min-width: 821px) {
	.mg-single-product__steps {
		border-color: #e8c969;
		background: linear-gradient(115deg, #ffedb5 0%, #fff6d5 52%, #ffeaa8 100%);
		box-shadow: 0 18px 50px rgba(116, 83, 10, .1);
	}
}

.mg-single-product__steps-heading > span {
	display: block;
	margin-bottom: 5px;
	color: #a06b00;
	font-size: 11px;
	font-weight: 950;
	letter-spacing: .1em;
	text-transform: uppercase;
}

.mg-single-product__steps-heading h2 {
	margin: 0;
	color: var(--mg-ink);
	font-size: 27px;
	font-weight: 950;
	letter-spacing: -.035em;
	line-height: 1.05;
}

.mg-single-product__steps ol {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.mg-single-product__steps li {
	display: grid;
	grid-template-columns: 34px 1fr;
	align-items: center;
	gap: 10px;
	min-width: 0;
	padding: 13px;
	border: 1px solid rgba(255, 255, 255, .85);
	border-radius: 15px;
	background: rgba(255, 255, 255, .68);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .7);
}

.mg-single-product__steps li > b {
	display: grid;
	width: 34px;
	height: 34px;
	place-items: center;
	border-radius: 11px;
	background: var(--mg-ink);
	color: #fff;
	font-size: 13px;
}

.mg-single-product__steps li div {
	display: flex;
	flex-direction: column;
	gap: 3px;
	min-width: 0;
}

.mg-single-product__steps li strong {
	color: var(--mg-ink);
	font-size: 12px;
	font-weight: 900;
	line-height: 1.25;
}

.mg-single-product__steps li span {
	color: #697281;
	font-size: 11px;
	line-height: 1.35;
}

.mg-single-product__details {
	margin-top: 28px;
}

.woocommerce div.product .mg-single-product__details .woocommerce-tabs {
	float: none;
	width: 100%;
	margin: 0;
	padding: 32px;
}

.woocommerce div.product .mg-single-product__details .woocommerce-tabs .wc-tabs {
	display: none !important;
}

.woocommerce div.product .mg-single-product__details .woocommerce-Tabs-panel {
	width: min(920px, 100%) !important;
	margin: 0 auto;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	color: #525b69;
	font-size: 15px;
	line-height: 1.75;
}

.woocommerce div.product .mg-single-product__details .woocommerce-Tabs-panel::before {
	display: block;
	margin-bottom: 6px;
	color: #a06b00;
	content: "Product information";
	font-size: 11px;
	font-weight: 950;
	letter-spacing: .1em;
	text-transform: uppercase;
}

.woocommerce div.product .mg-single-product__details .woocommerce-Tabs-panel h2:first-of-type {
	margin: 0 0 18px;
	color: var(--mg-ink);
	font-size: 30px;
	font-weight: 950;
	letter-spacing: -.035em;
}

.woocommerce div.product .mg-single-product__details .woocommerce-Tabs-panel h2 {
	margin-top: 28px;
	color: var(--mg-ink);
	font-size: 24px;
	font-weight: 900;
}

.woocommerce div.product .mg-single-product__details .woocommerce-Tabs-panel h3 {
	color: var(--mg-ink);
	font-size: 19px;
	font-weight: 900;
}

.woocommerce div.product .mg-single-product__details .woocommerce-Tabs-panel ol,
.woocommerce div.product .mg-single-product__details .woocommerce-Tabs-panel ul {
	margin: 15px 0 20px;
	padding-left: 22px;
}

.woocommerce div.product .mg-single-product__details .woocommerce-Tabs-panel li {
	margin: 7px 0;
}

.woocommerce div.product .mg-single-product__details .woocommerce-Tabs-panel img {
	max-width: 100%;
	height: auto;
	border: 1px solid #e7e9ee;
	border-radius: 17px;
}

.mg-single-product__details .related {
	display: none !important;
}

@media (max-width: 1024px) {
	.mg-single-product__hero {
		grid-template-columns: minmax(0, .9fr) minmax(390px, 1.1fr);
		gap: 20px;
	}

	.woocommerce div.product .mg-single-product__summary {
		padding: 26px;
	}

	.mg-single-product__steps {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 820px) {
	body.single-product .mg-content-shell {
		width: min(100% - 28px, 680px);
		padding-top: 18px;
	}

	.mg-single-product__hero {
		grid-template-columns: 1fr;
	}

	.mg-single-product__visual {
		position: relative;
		top: auto;
	}

	.mg-single-product__gallery .woocommerce-product-gallery img {
		max-height: 620px;
	}

	.mg-single-product__reassurance {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.woocommerce div.product .mg-single-product__details .woocommerce-tabs {
		padding: 24px;
	}
}

@media (max-width: 600px) {
	body.single-product .mg-content-shell {
		width: 100%;
		padding: 12px 14px 96px;
	}

	body.single-product .woocommerce-breadcrumb {
		overflow-x: auto;
		margin-bottom: 14px;
		white-space: nowrap;
		scrollbar-width: none;
	}

	.mg-single-product__visual,
	.mg-single-product__summary,
	.mg-single-product__steps,
	.mg-single-product__details .woocommerce-tabs {
		border-radius: 20px;
	}

	.mg-single-product__visual {
		padding: 12px;
	}

	.mg-single-product__visual-topline {
		padding: 0 3px;
		font-size: 10px;
	}

	.mg-single-product__gallery {
		border-radius: 16px;
	}

	.mg-single-product__visual-note {
		margin-top: 10px;
	}

	.woocommerce div.product .mg-single-product__summary {
		padding: 22px 18px;
	}

	.woocommerce div.product .mg-single-product__summary .product_title {
		font-size: 34px;
	}

	.mg-single-product__price {
		grid-template-columns: 1fr;
	}

	.mg-single-product__price small {
		grid-column: 1;
		grid-row: auto;
		justify-self: start;
		margin-top: 5px;
	}

	.woocommerce div.product .mg-single-product__summary form.cart {
		padding: 15px;
	}

	.mg-single-product .woocommerce-variation-add-to-cart,
	.woocommerce div.product.mg-single-product form.cart:not(.variations_form) {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 10px !important;
	}

	.woocommerce div.product.mg-single-product form.cart .quantity {
		grid-column: 1 / -1 !important;
		grid-row: 1 !important;
		grid-template-columns: minmax(0, 1fr) 44px 48px 44px;
		width: 100% !important;
	}

	.woocommerce div.product.mg-single-product form.cart .buy_now_button.button.alt {
		display: inline-flex !important;
		grid-column: 2 !important;
		grid-row: 2 !important;
		min-height: 54px !important;
	}

	.woocommerce div.product.mg-single-product form.cart .single_add_to_cart_button.button.alt {
		display: inline-flex !important;
		grid-column: 1 !important;
		grid-row: 2 !important;
		min-height: 54px !important;
		white-space: nowrap;
	}

	.mg-single-product__reassurance {
		grid-template-columns: 1fr;
	}

	.mg-single-product__reassurance span {
		justify-content: flex-start;
		min-height: 40px;
		padding-inline: 12px;
	}

	.mg-single-product__steps {
		margin-top: 18px;
		padding: 22px 17px;
	}

	.mg-single-product__steps ol {
		grid-template-columns: 1fr;
	}

	.mg-single-product__details {
		margin-top: 18px;
	}

	.woocommerce div.product .mg-single-product__details .woocommerce-tabs {
		padding: 22px 18px;
	}

	.woocommerce div.product .mg-single-product__details .woocommerce-Tabs-panel {
		margin: 0;
		font-size: 14px;
	}

	.woocommerce div.product .mg-single-product__details .woocommerce-Tabs-panel h2:first-of-type {
		font-size: 25px;
	}
}


/* Scalable catalogue, search, checkout and support refinements. */
.storefront-handheld-footer-bar {
	display: none !important;
}

.mg-product-search {
	position: relative;
	z-index: 40;
}

.mg-search-suggestions {
	position: absolute;
	top: calc(100% + 10px);
	left: 0;
	right: 0;
	overflow: hidden;
	border: 1px solid #e7dfd1;
	border-radius: 18px;
	background: #fff;
	box-shadow: 0 24px 65px rgba(18, 24, 34, .2);
}

.mg-search-suggestions[hidden] {
	display: none;
}

.mg-search-suggestions a {
	display: grid;
	grid-template-columns: 54px minmax(0, 1fr) auto;
	align-items: center;
	gap: 12px;
	min-height: 70px;
	padding: 8px 14px;
	border-bottom: 1px solid #edf0f4;
	transition: background .15s ease;
}

.mg-search-suggestions a:hover,
.mg-search-suggestions a:focus {
	background: #fff7df;
}

.mg-search-suggestions img {
	width: 54px;
	height: 54px;
	border-radius: 10px;
	background: #f5f6f8;
	object-fit: cover;
}

.mg-search-suggestions span,
.mg-search-suggestions strong,
.mg-search-suggestions small {
	display: block;
	min-width: 0;
}

.mg-search-suggestions strong {
	overflow: hidden;
	font-size: 13px;
	font-weight: 850;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.mg-search-suggestions small {
	margin-top: 3px;
	color: var(--mg-muted);
	font-size: 10px;
}

.mg-search-suggestions b {
	font-size: 12px;
	font-weight: 850;
	white-space: nowrap;
}

.mg-search-suggestions__empty {
	padding: 22px;
	color: var(--mg-muted);
	font-size: 13px;
	text-align: center;
}

.mg-search-suggestions .mg-search-suggestions__all {
	width: 100%;
	min-height: 44px;
	border: 0;
	border-radius: 0;
	background: #151821;
	color: #fff;
	font-size: 12px;
	font-weight: 850;
}

.mg-catalogue,
.mg-support-page {
	width: min(1440px, calc(100% - 48px));
	margin: 0 auto;
	padding: 28px 0 64px;
}

.mg-catalogue-hero {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1fr) 180px;
	align-items: center;
	min-height: 250px;
	overflow: hidden;
	padding: 44px 54px;
	border: 1px solid rgba(255, 255, 255, .65);
	border-radius: 28px;
	background: linear-gradient(118deg, #ffda6b, #ffb100 62%, #f6a000);
	box-shadow: 0 22px 60px rgba(226, 150, 0, .18);
}

.mg-catalogue--game .mg-catalogue-hero {
	background: linear-gradient(118deg, #ffdc72, #ffb300 58%, #ff9d1b);
}

.mg-catalogue--card .mg-catalogue-hero {
	background: linear-gradient(118deg, #fff0b7, #ffc53d 58%, #f2a800);
}

.mg-catalogue-hero::before,
.mg-catalogue-hero::after {
	position: absolute;
	content: "";
	border: 44px solid rgba(255, 255, 255, .14);
	border-radius: 50%;
}

.mg-catalogue-hero::before {
	width: 360px;
	height: 360px;
	top: -210px;
	right: -70px;
}

.mg-catalogue-hero::after {
	width: 240px;
	height: 240px;
	bottom: -190px;
	left: 48%;
}

.mg-catalogue-hero > div {
	position: relative;
	z-index: 1;
}

.mg-catalogue-hero h1,
.mg-catalogue-hero p {
	margin: 0;
}

.mg-catalogue-hero h1 {
	max-width: 780px;
	font-size: clamp(38px, 5vw, 68px);
	font-weight: 950;
	letter-spacing: -.045em;
	line-height: .98;
}

.mg-catalogue-hero p {
	max-width: 700px;
	margin-top: 14px;
	color: #564312;
	font-size: 16px;
}

.mg-catalogue-benefits {
	display: flex;
	flex-wrap: wrap;
	gap: 10px 20px;
	margin-top: 22px;
}

.mg-catalogue-benefits span {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	font-size: 12px;
	font-weight: 850;
}

.mg-catalogue-benefits svg,
.mg-catalogue-assurance svg {
	width: 18px;
	height: 18px;
	fill: none;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.8;
}

.mg-catalogue-hero__mark {
	display: grid;
	width: 142px;
	height: 142px;
	place-items: center;
	border: 1px solid rgba(255, 255, 255, .7);
	border-radius: 34px;
	background: rgba(255, 255, 255, .36);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .7);
	transform: rotate(5deg);
}

.mg-catalogue-hero__mark svg {
	width: 78px;
	height: 78px;
	fill: none;
	stroke: #171923;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 2.8;
}

.mg-catalogue-toolbar {
	display: flex;
	align-items: end;
	gap: 10px;
	margin: 20px 0 30px;
	padding: 14px;
	border: 1px solid #e2e5ea;
	border-radius: 18px;
	background: #fff;
	box-shadow: 0 12px 35px rgba(18, 24, 34, .07);
}

.mg-catalogue-toolbar label {
	display: grid;
	gap: 5px;
	min-width: 170px;
	margin: 0;
}

.mg-catalogue-toolbar label > span {
	padding-left: 3px;
	color: var(--mg-muted);
	font-size: 9px;
	font-weight: 800;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.mg-catalogue-toolbar select {
	min-height: 46px;
	margin: 0;
	padding: 0 38px 0 13px;
	border: 1px solid #dfe3e9;
	border-radius: 12px;
	background-color: #f9fafb;
	font-size: 12px;
	font-weight: 750;
}

.mg-catalogue-toolbar > button,
.mg-catalogue-clear {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 46px;
	padding: 0 22px;
	border: 0;
	border-radius: 12px;
	font-size: 12px;
	font-weight: 900;
}

.mg-catalogue-toolbar > button {
	background: #171923;
	color: #fff;
}

.mg-catalogue-clear {
	border: 1px solid #dfe3e9;
	background: #fff;
}

.mg-catalogue-heading {
	display: flex;
	align-items: end;
	justify-content: space-between;
	gap: 20px;
	margin-bottom: 18px;
}

/* When a category has no filter toolbar, preserve a clear section break
   between the gold hero and the product-list heading. */
.mg-catalogue-hero + .mg-catalogue-heading {
	margin-top: 38px;
}

.mg-catalogue-heading h2,
.mg-catalogue-heading p {
	margin: 0;
}

.mg-catalogue-heading h2 {
	font-size: clamp(27px, 3vw, 42px);
	font-weight: 950;
	letter-spacing: -.035em;
}

.mg-catalogue-heading p {
	margin-top: 3px;
	color: var(--mg-muted);
	font-size: 12px;
}

.mg-catalogue-heading > span {
	padding: 9px 13px;
	border-radius: 999px;
	background: #fff1bf;
	font-size: 11px;
	font-weight: 850;
}

.mg-modern-home ul.products.mg-catalogue-grid {
	display: grid !important;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 18px;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none;
}

.mg-modern-home ul.products.mg-catalogue-grid::before,
.mg-modern-home ul.products.mg-catalogue-grid::after {
	display: none !important;
}

.mg-modern-home ul.products.mg-catalogue-grid li.product.mg-catalogue-card {
	display: flex !important;
	float: none !important;
	flex-direction: column;
	width: auto !important;
	min-width: 0;
	margin: 0 !important;
	overflow: hidden;
	border: 1px solid #e3ded4;
	border-radius: 18px;
	background: #fffdf8;
	box-shadow: 0 12px 30px rgba(24, 31, 45, .08);
	text-align: left !important;
	transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}

.mg-modern-home ul.products.mg-catalogue-grid li.product.mg-catalogue-card:hover {
	transform: translateY(-4px);
	border-color: rgba(242, 168, 0, .55);
	box-shadow: 0 20px 42px rgba(24, 31, 45, .12);
}

.mg-catalogue-card__media {
	position: relative;
	display: block;
	aspect-ratio: 1 / 1;
	overflow: hidden;
	border-bottom: 1px solid #e2ddd3;
	background: #f7f7f8;
}

.mg-modern-home ul.products .mg-catalogue-card__media img {
	display: block;
	width: 100% !important;
	height: 100% !important;
	margin: 0 !important;
	object-fit: cover;
	transition: transform .3s ease;
}

.mg-catalogue-card:hover .mg-catalogue-card__media img {
	transform: scale(1.035);
}

.mg-catalogue-card__badge {
	position: absolute;
	z-index: 2;
	top: 11px;
	left: 11px;
	padding: 6px 10px;
	border-radius: 999px;
	background: var(--mg-gold);
	box-shadow: 0 4px 12px rgba(0, 0, 0, .15);
	font-size: 9px;
	font-weight: 950;
	text-transform: uppercase;
}

.mg-catalogue-card__body {
	display: flex;
	flex: 1;
	flex-direction: column;
	padding: 16px;
	background: linear-gradient(180deg, #fffefa, #fff9eb);
}

.mg-catalogue-card__type {
	align-self: flex-start;
	padding: 5px 8px;
	border-radius: 999px;
	background: #f1f2f5;
	color: #667084;
	font-size: 9px;
	font-weight: 800;
}

.mg-catalogue-card--game .mg-catalogue-card__type {
	background: #eef0ff;
	color: #515fc9;
}

.mg-catalogue-card--card .mg-catalogue-card__type {
	background: #fff0c3;
	color: #866000;
}

.mg-modern-home ul.products.mg-catalogue-grid li.product h2.woocommerce-loop-product__title {
	min-height: 46px;
	margin: 11px 0 0 !important;
	padding: 0 !important;
	font-size: 15px !important;
	font-weight: 900;
	line-height: 1.45;
}

.mg-catalogue-card__rating {
	display: flex;
	align-items: center;
	gap: 7px;
	margin-top: 10px;
}

.mg-catalogue-card__rating .star-rating {
	margin: 0 !important;
}

.mg-catalogue-card__rating small {
	color: var(--mg-muted);
	font-size: 9px;
}

.mg-catalogue-card__purchase {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: end;
	gap: 10px;
	margin-top: auto;
	padding-top: 18px;
}

.mg-catalogue-card__purchase > div > small,
.mg-catalogue-card__purchase > div > strong {
	display: block;
}

.mg-catalogue-card__purchase > div > small {
	margin-bottom: 2px;
	color: var(--mg-muted);
	font-size: 8px;
	font-weight: 750;
	text-transform: uppercase;
}

.mg-catalogue-card__purchase > div > strong {
	font-size: 16px;
	font-weight: 950;
	white-space: nowrap;
}

.mg-catalogue-card__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 40px;
	padding: 8px 12px;
	border-radius: 10px;
	background: var(--mg-gold);
	color: #161616 !important;
	font-size: 10px;
	font-weight: 900;
	white-space: nowrap;
}

.mg-single-product__details ul.products li.product.mg-catalogue-card {
	display: flex;
	flex-direction: column;
	overflow: hidden;
	border: 1px solid #e3ded4;
	border-radius: 18px;
	background: #fffdf8;
	box-shadow: 0 12px 30px rgba(24, 31, 45, .08);
	text-align: left;
}

.mg-single-product__details ul.products li.product.mg-catalogue-card h2.woocommerce-loop-product__title {
	min-height: 46px;
	margin: 11px 0 0;
	padding: 0;
	font-size: 15px;
	font-weight: 900;
	line-height: 1.45;
}

.mg-catalogue-pagination {
	margin: 34px 0 0;
}

.mg-catalogue-pagination .woocommerce-pagination {
	float: none !important;
	text-align: center;
}

.mg-catalogue-pagination ul.page-numbers {
	display: inline-flex;
	gap: 7px;
	padding: 6px !important;
	border: 1px solid #e1e4e9 !important;
	border-radius: 15px;
	background: #fff;
}

.mg-catalogue-pagination .page-numbers li,
.mg-catalogue-pagination .page-numbers a,
.mg-catalogue-pagination .page-numbers span {
	border: 0 !important;
}

.mg-catalogue-pagination .page-numbers a,
.mg-catalogue-pagination .page-numbers span {
	display: grid;
	min-width: 36px;
	height: 36px;
	place-items: center;
	border-radius: 10px;
	font-size: 11px;
	font-weight: 850;
}

.mg-catalogue-pagination .page-numbers .current {
	background: var(--mg-gold);
	color: #171923;
}

.mg-catalogue-empty {
	padding: 60px 24px;
	border: 1px dashed #d7dbe2;
	border-radius: 22px;
	background: #fff;
	text-align: center;
}

.mg-catalogue-empty h2,
.mg-catalogue-empty p {
	margin: 0;
}

.mg-catalogue-empty p {
	margin-top: 8px;
	color: var(--mg-muted);
}

.mg-catalogue-empty a {
	display: inline-flex;
	margin-top: 18px;
	padding: 11px 18px;
	border-radius: 11px;
	background: var(--mg-gold);
	font-weight: 850;
}

.mg-catalogue-assurance {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1px;
	margin-top: 34px;
	overflow: hidden;
	border-radius: 18px;
	background: #2a2e38;
	box-shadow: 0 18px 44px rgba(20, 23, 31, .14);
}

.mg-catalogue-assurance span {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	min-height: 74px;
	background: #171923;
	color: #fff;
	font-size: 11px;
	font-weight: 800;
}

.mg-catalogue-assurance svg {
	color: var(--mg-gold);
}

.mg-product-compatibility {
	display: grid;
	grid-template-columns: 34px minmax(0, 1fr);
	align-items: start;
	gap: 10px;
	margin-bottom: 14px;
	padding: 12px;
	border: 1px solid #efdca1;
	border-radius: 12px;
	background: #fff9e8;
}

.mg-product-compatibility svg {
	width: 28px;
	height: 28px;
	padding: 5px;
	border-radius: 8px;
	background: #ffe9a5;
	fill: none;
	stroke: #8e6500;
	stroke-linecap: round;
	stroke-width: 1.8;
}

.mg-product-compatibility strong,
.mg-product-compatibility span {
	display: block;
}

.mg-product-compatibility strong {
	font-size: 12px;
}

.mg-product-compatibility span {
	margin-top: 3px;
	color: #76684a;
	font-size: 11px;
	line-height: 1.45;
}

/* Woo Custom Product Addons Pro: account and product-specific details. */
.mg-single-product form.cart > .wcpa_form_outer,
.mg-single-product .woocommerce-variation-add-to-cart .wcpa_form_outer {
	grid-column: 1 / -1 !important;
	grid-row: auto !important;
	position: relative;
	width: 100%;
	margin: 22px 0 4px !important;
	padding: 28px 20px 18px;
	border: 1px solid #e7d7ad;
	border-radius: 16px;
	background: #fffdf8;
	box-shadow: none;
	overflow: visible !important;
}

/*
 * Keep the purchase journey in decision order:
 * package choice -> product-specific details -> quantity -> purchase action.
 * WCPA prints its fields after WooCommerce's buttons in the DOM, so explicit
 * grid rows preserve the clearer visual flow without altering plugin markup.
 */
.mg-single-product .woocommerce-variation-add-to-cart:has(.wcpa_form_outer) .wcpa_form_outer,
.mg-single-product form.cart:not(.variations_form):has(> .wcpa_form_outer) > .wcpa_form_outer {
	grid-row: 1 !important;
}

.woocommerce div.product.mg-single-product .woocommerce-variation-add-to-cart:has(.wcpa_form_outer) .quantity,
.woocommerce div.product.mg-single-product form.cart:not(.variations_form):has(> .wcpa_form_outer) .quantity {
	grid-row: 2 !important;
}

.woocommerce div.product.mg-single-product .woocommerce-variation-add-to-cart:has(.wcpa_form_outer) .single_add_to_cart_button.button.alt,
.woocommerce div.product.mg-single-product .woocommerce-variation-add-to-cart:has(.wcpa_form_outer) .buy_now_button.button.alt,
.woocommerce div.product.mg-single-product form.cart:not(.variations_form):has(> .wcpa_form_outer) .single_add_to_cart_button.button.alt,
.woocommerce div.product.mg-single-product form.cart:not(.variations_form):has(> .wcpa_form_outer) .buy_now_button.button.alt {
	grid-row: 3 !important;
}

.mg-single-product--game .wcpa_form_outer::before {
	content: "Game account details";
	display: inline-flex;
	position: absolute;
	top: -17px;
	left: 18px;
	z-index: 2;
	align-items: center;
	min-height: 32px;
	margin: 0;
	padding: 5px 12px;
	border: 1px solid #e8bd4d;
	border-radius: 999px;
	background: #fff0bd;
	color: #704b00;
	font-size: 13px;
	font-weight: 800;
	line-height: 1.25;
}

.mg-single-product--game .wcpa_form_outer .wcpa_section::before {
	content: "Enter the account details that should receive this top-up.";
	display: block;
	margin: 0 0 14px;
	color: #687386;
	font-size: 13px;
	line-height: 1.5;
}

.mg-single-product .wcpa_form_outer .wcpa_wrap,
.mg-single-product .wcpa_form_outer .wcpa_section,
.mg-single-product .wcpa_form_outer .wcpa_section_body {
	width: 100%;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	overflow: visible !important;
}

.mg-single-product--game .wcpa_form_outer .wcpa_section_body {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
}

.mg-single-product--game .wcpa_form_outer .wcpa_section_body > .wcpa_row {
	min-width: 0;
	margin: 0 !important;
}

.mg-single-product .wcpa_form_outer .wcpa_field_wrap[class*="wcpa-col-"] {
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}

.mg-single-product .wcpa_form_outer .wcpa_field_label {
	display: block;
	margin: 0 0 6px;
	color: #171a22 !important;
	font-size: 13px !important;
	font-weight: 800 !important;
	line-height: 1.35;
}

.mg-single-product .wcpa_form_outer .wcpa_required_ast {
	margin-left: 3px;
	color: #b42318;
}

.mg-single-product .wcpa_form_outer .wcpa_field_wrap:not(:has(.wcpa_required_ast)) .wcpa_field_label::after {
	content: " Optional";
	margin-left: 5px;
	color: #687386;
	font-size: 11px;
	font-weight: 600;
}

.mg-single-product .wcpa_form_outer .wcpa_field_desc,
.mg-single-product .wcpa_form_outer .wcpa_option_desc {
	margin: 0 0 9px !important;
	color: #687386 !important;
	font-size: 12px !important;
	font-weight: 500 !important;
	line-height: 1.45;
}

.mg-single-product .wcpa_form_outer .wcpa_field_wrap input[type="text"],
.mg-single-product .wcpa_form_outer .wcpa_field_wrap input[type="url"],
.mg-single-product .wcpa_form_outer .wcpa_field_wrap input[type="date"],
.mg-single-product .wcpa_form_outer .wcpa_field_wrap input[type="time"],
.mg-single-product .wcpa_form_outer .wcpa_field_wrap input[type="number"],
.mg-single-product .wcpa_form_outer .wcpa_field_wrap input[type="email"],
.mg-single-product .wcpa_form_outer .wcpa_field_wrap input[type="tel"],
.mg-single-product .wcpa_form_outer .wcpa_field_wrap input[type="password"],
.mg-single-product .wcpa_form_outer .wcpa_field_wrap select,
.mg-single-product .wcpa_form_outer .wcpa_field_wrap textarea,
.mg-single-product .wcpa_form_outer .wcpa_field_wrap .wcpa__control {
	width: 100% !important;
	min-height: 48px !important;
	margin: 0 !important;
	padding: 11px 13px !important;
	border: 1px solid #d7dce5 !important;
	border-radius: 11px !important;
	background: #fff !important;
	box-shadow: none !important;
	color: #171a22 !important;
	font-family: inherit !important;
	font-size: 16px !important;
	line-height: 1.35 !important;
	transition: border-color .18s ease, box-shadow .18s ease, background-color .18s ease;
}

.mg-single-product .wcpa_form_outer .wcpa_field_wrap textarea {
	min-height: 112px !important;
	resize: vertical;
}

.mg-single-product .wcpa_form_outer .wcpa_field_wrap input:hover,
.mg-single-product .wcpa_form_outer .wcpa_field_wrap select:hover,
.mg-single-product .wcpa_form_outer .wcpa_field_wrap textarea:hover,
.mg-single-product .wcpa_form_outer .wcpa_field_wrap .wcpa__control:hover {
	border-color: #b8bec9 !important;
	background: #fff !important;
}

.mg-single-product .wcpa_form_outer .wcpa_field_wrap input:focus,
.mg-single-product .wcpa_form_outer .wcpa_field_wrap select:focus,
.mg-single-product .wcpa_form_outer .wcpa_field_wrap textarea:focus,
.mg-single-product .wcpa_form_outer .wcpa_field_wrap .wcpa__control--is-focused {
	border-color: #e5a500 !important;
	background: #fff !important;
	box-shadow: 0 0 0 4px rgba(229, 165, 0, .15) !important;
	outline: none !important;
}

.mg-single-product .wcpa_form_outer .wcpa_field_error,
.mg-single-product .wcpa_form_outer .wcpa_error {
	margin-top: 7px !important;
	color: #b42318 !important;
	font-size: 12px !important;
	font-weight: 650 !important;
	line-height: 1.4;
}

.mg-single-product .wcpa_form_outer .wcpa_field_wrap.wcpa_error input,
.mg-single-product .wcpa_form_outer .wcpa_field_wrap.wcpa_error select,
.mg-single-product .wcpa_form_outer .wcpa_field_wrap.wcpa_error textarea,
.mg-single-product .wcpa_form_outer .wcpa_field_wrap:has(.wcpa_field_error) input,
.mg-single-product .wcpa_form_outer .wcpa_field_wrap:has(.wcpa_field_error) select,
.mg-single-product .wcpa_form_outer .wcpa_field_wrap:has(.wcpa_field_error) textarea {
	border-color: #d92d20 !important;
	box-shadow: 0 0 0 3px rgba(217, 45, 32, .11) !important;
}

.mg-native-variation-select {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	overflow: hidden !important;
	clip: rect(0 0 0 0) !important;
	clip-path: inset(50%) !important;
	white-space: nowrap !important;
}

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

.mg-variation-choices button {
	min-height: 45px;
	padding: 8px 10px;
	border: 1px solid #e4d2a4;
	border-radius: 10px;
	background: #fff;
	color: #302b20;
	font-size: 11px;
	font-weight: 780;
	line-height: 1.3;
	transition: border-color .18s ease, background .18s ease, color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.mg-variation-choices button:hover:not(:disabled) {
	transform: translateY(-1px);
	border-color: #e0a000;
	background: #fff3ca;
}

.mg-variation-choices button.is-selected,
.mg-variation-choices button.is-selected:hover:not(:disabled) {
	border-color: #d69400 !important;
	background: linear-gradient(135deg, #ffc029, #f2a800) !important;
	box-shadow: 0 8px 18px rgba(214, 148, 0, .22), inset 0 -3px 0 #c98300;
	color: #17130a !important;
}

.mg-variation-choices button.is-selected:hover:not(:disabled) {
	transform: translateY(-1px);
}

.mg-variation-choices button:disabled {
	opacity: .38;
	cursor: not-allowed;
}

.mg-variation-choices button[hidden],
.woocommerce div.product.mg-single-product form.cart .quantity:has(input[type="hidden"]) {
	display: none !important;
}

.mg-support-hero {
	position: relative;
	overflow: hidden;
	padding: 58px;
	border-radius: 28px;
	background: linear-gradient(120deg, #ffd766, #ffb000);
	box-shadow: 0 22px 60px rgba(226, 150, 0, .18);
}

.mg-support-hero::after {
	position: absolute;
	width: 380px;
	height: 380px;
	top: -250px;
	right: -80px;
	border: 56px solid rgba(255, 255, 255, .16);
	border-radius: 50%;
	content: "";
}

.mg-support-hero h1,
.mg-support-hero p {
	position: relative;
	z-index: 1;
	max-width: 720px;
	margin: 0;
}

.mg-support-hero h1 {
	font-size: clamp(40px, 6vw, 72px);
	font-weight: 950;
	letter-spacing: -.05em;
	line-height: 1;
}

.mg-support-hero p {
	margin-top: 14px;
	color: #57420c;
	font-size: 16px;
}

.mg-support-hero .mg-button {
	position: relative;
	z-index: 1;
	margin-top: 24px;
	border: 0;
}

.mg-support-options {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 18px;
	margin-top: 24px;
}

.mg-support-options article {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	min-height: 250px;
	padding: 28px;
	border: 1px solid #e1e4e9;
	border-radius: 20px;
	background: #fff;
	box-shadow: 0 12px 35px rgba(18, 24, 34, .07);
}

.mg-support-options article > span {
	display: grid;
	width: 54px;
	height: 54px;
	place-items: center;
	border-radius: 16px;
	background: #fff1c7;
	color: #a97100;
}

.mg-support-options svg {
	width: 27px;
	height: 27px;
	fill: none;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.7;
}

.mg-support-options h2 {
	margin: 20px 0 0;
	font-size: 20px;
	font-weight: 900;
}

.mg-support-options p {
	margin: 8px 0 18px;
	color: var(--mg-muted);
	font-size: 13px;
}

.mg-support-options a,
.mg-support-options button {
	margin-top: auto;
	padding: 10px 14px;
	border: 0;
	border-radius: 10px;
	background: #171923;
	color: #fff;
	font-size: 11px;
	font-weight: 850;
}

.mg-support-checklist {
	display: grid;
	grid-template-columns: .72fr 1.28fr;
	gap: 42px;
	margin-top: 24px;
	padding: 38px;
	border-radius: 22px;
	background: #171923;
	color: #fff;
}

.mg-support-checklist h2 {
	margin: 7px 0 0;
	color: #fff;
	font-size: 34px;
	font-weight: 950;
	letter-spacing: -.035em;
}

.mg-support-checklist .mg-eyebrow {
	color: #f6b100;
}

.mg-support-checklist ul {
	display: grid;
	gap: 10px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.mg-support-checklist li {
	display: grid;
	grid-template-columns: 34px minmax(0, 1fr);
	gap: 12px;
	align-items: start;
}

.mg-support-checklist li > b {
	display: grid;
	width: 30px;
	height: 30px;
	place-items: center;
	border-radius: 50%;
	background: var(--mg-gold);
	color: #171923;
	font-size: 11px;
}

.mg-support-checklist strong,
.mg-support-checklist li span {
	display: block;
}

.mg-support-checklist strong {
	color: #fff;
	font-size: 13px;
}

.mg-support-checklist li span {
	color: #aeb5c3;
	font-size: 11px;
	line-height: 1.5;
}

.mg-mobile-bottom-nav svg {
	width: 21px;
	height: 21px;
	fill: none;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.8;
}

@media (max-width: 1280px) {
	.mg-modern-home ul.products.mg-catalogue-grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

@media (max-width: 1100px) {
	.mg-modern-home ul.products.mg-catalogue-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.mg-catalogue-hero {
		grid-template-columns: minmax(0, 1fr) 130px;
	}

	.mg-catalogue-hero__mark {
		width: 112px;
		height: 112px;
	}
}

@media (max-width: 760px) {
	.mg-catalogue,
	.mg-support-page {
		width: calc(100% - 28px);
		padding: 14px 0 92px;
	}

	.mg-catalogue-hero {
		grid-template-columns: 1fr;
		min-height: 0;
		padding: 28px 24px;
		border-radius: 22px;
	}

	.mg-catalogue-hero h1 {
		font-size: 39px;
	}

	.mg-catalogue-hero p {
		font-size: 13px;
	}

	.mg-catalogue-benefits {
		gap: 8px 14px;
	}

	.mg-catalogue-benefits span {
		font-size: 10px;
	}

	.mg-catalogue-hero__mark {
		display: none;
	}

	.mg-catalogue-toolbar {
		align-items: stretch;
		flex-wrap: wrap;
		margin-bottom: 24px;
		padding: 11px;
	}

	.mg-catalogue-toolbar label {
		flex: 1 1 140px;
		min-width: 0;
	}

	.mg-catalogue-toolbar > button,
	.mg-catalogue-clear {
		flex: 1 1 auto;
	}

	.mg-catalogue-heading {
		align-items: center;
	}

	.mg-catalogue-hero + .mg-catalogue-heading {
		margin-top: 28px;
	}

	.mg-catalogue-heading h2 {
		font-size: 28px;
	}

	.mg-catalogue-heading p {
		display: none;
	}

	.mg-modern-home ul.products.mg-catalogue-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 12px;
	}

	.mg-modern-home ul.products.mg-catalogue-grid li.product.mg-catalogue-card {
		border-radius: 15px;
	}

	.mg-catalogue-card__body {
		padding: 12px;
	}

	.mg-modern-home ul.products.mg-catalogue-grid li.product h2.woocommerce-loop-product__title {
		min-height: 42px;
		font-size: 12px !important;
	}

	.mg-catalogue-card__purchase {
		grid-template-columns: 1fr;
		gap: 9px;
		padding-top: 13px;
	}

	.mg-catalogue-card__purchase > div > strong {
		font-size: 14px;
	}

	.mg-catalogue-card__button {
		width: 100%;
		min-height: 38px;
	}

	.mg-catalogue-assurance {
		grid-template-columns: 1fr;
	}

	.mg-catalogue-assurance span {
		justify-content: flex-start;
		min-height: 50px;
		padding: 0 18px;
	}

	.mg-search-suggestions {
		position: absolute;
		top: calc(100% + 6px);
		left: 0;
		right: 0;
	}

	.mg-search-suggestions a {
		grid-template-columns: 45px minmax(0, 1fr) auto;
		min-height: 60px;
	}

	.mg-search-suggestions img {
		width: 44px;
		height: 44px;
	}

	.mg-single-product form.cart > .wcpa_form_outer,
	.mg-single-product .woocommerce-variation-add-to-cart .wcpa_form_outer {
		margin-top: 20px !important;
		padding: 27px 15px 15px;
		border-radius: 14px;
	}

	.mg-single-product--game .wcpa_form_outer::before {
		top: -16px;
		left: 14px;
	}

	.mg-single-product--game .wcpa_form_outer .wcpa_section::before {
		font-size: 12px;
	}

	.mg-single-product--game .wcpa_form_outer .wcpa_section_body {
		grid-template-columns: minmax(0, 1fr);
		gap: 14px;
	}

	.mg-variation-choices {
		grid-template-columns: 1fr;
	}

	.mg-single-product__gallery .woocommerce-product-gallery img {
		height: auto !important;
		max-height: none !important;
		aspect-ratio: 1 / 1;
		object-fit: contain !important;
	}

	.mg-single-product__visual-note {
		padding-block: 10px;
	}

	.mg-support-hero {
		padding: 34px 24px;
		border-radius: 22px;
	}

	.mg-support-hero h1 {
		font-size: 42px;
	}

	.mg-support-options {
		grid-template-columns: 1fr;
		gap: 12px;
	}

	.mg-support-options article {
		min-height: 220px;
		padding: 23px;
	}

	.mg-support-checklist {
		grid-template-columns: 1fr;
		gap: 24px;
		padding: 28px 22px;
	}

	.mg-mobile-bottom-nav a {
		gap: 3px;
	}
}

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

/* --------------------------------------------------------------------------
   Cart
   -------------------------------------------------------------------------- */

body.woocommerce-cart {
	background: #f4f5f7;
}

body.woocommerce-cart #content > .col-full {
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 0;
}

body.woocommerce-cart #primary,
body.woocommerce-cart .content-area,
body.woocommerce-cart .site-main,
body.woocommerce-cart article,
body.woocommerce-cart .entry-content {
	float: none;
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 0;
}

body.woocommerce-cart .woocommerce-breadcrumb,
body.woocommerce-cart .entry-header,
body.woocommerce-cart .cart-empty.woocommerce-info,
body.woocommerce-cart .return-to-shop {
	display: none;
}

body.woocommerce-cart .woocommerce-notices-wrapper {
	width: min(1280px, calc(100% - 40px));
	margin: 22px auto 0;
}

body.woocommerce-cart .woocommerce-message,
body.woocommerce-cart .woocommerce-error,
body.woocommerce-cart .woocommerce-info {
	margin: 0 0 16px;
	border: 1px solid #e5e7eb;
	border-radius: 14px;
	box-shadow: 0 8px 24px rgba(17, 24, 39, .07);
}

.mg-cart-page {
	width: min(1180px, calc(100% - 40px));
	margin: 24px auto 72px;
	color: #121722;
}

.mg-cart-hero {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 36px;
	min-height: 168px;
	margin-bottom: 18px;
	padding: 32px 42px;
	overflow: hidden;
	border: 1px solid rgba(245, 166, 0, .5);
	border-radius: 24px;
	background: linear-gradient(120deg, #ffd56f 0%, #ffbd24 55%, #f5a600 100%);
	box-shadow: 0 22px 55px rgba(188, 126, 0, .18);
}

.mg-cart-hero::before,
.mg-cart-hero::after {
	position: absolute;
	border: 48px solid rgba(255, 255, 255, .18);
	border-radius: 50%;
	content: "";
	pointer-events: none;
}

.mg-cart-hero::before {
	top: -170px;
	right: 24px;
	width: 310px;
	height: 310px;
}

.mg-cart-hero::after {
	right: 205px;
	bottom: -315px;
	width: 390px;
	height: 390px;
}

.mg-cart-hero__copy {
	position: relative;
	z-index: 1;
	max-width: 600px;
}

.mg-cart-eyebrow {
	display: block;
	margin-bottom: 8px;
	color: #8b5a00;
	font-size: 12px;
	font-weight: 900;
	letter-spacing: .14em;
	line-height: 1.2;
	text-transform: uppercase;
}

.mg-cart-hero h1 {
	margin: 0;
	color: #10141e;
	font-size: clamp(40px, 4.2vw, 54px);
	font-weight: 900 !important;
	letter-spacing: -.045em;
	line-height: .98;
}

.mg-cart-hero p {
	max-width: 540px;
	margin: 10px 0 0;
	color: #5c410e;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.55;
}

.mg-cart-steps {
	position: relative;
	z-index: 1;
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0;
	padding: 10px;
	list-style: none;
	border: 1px solid rgba(255, 255, 255, .6);
	border-radius: 999px;
	background: rgba(255, 255, 255, .48);
	backdrop-filter: blur(10px);
}

.mg-cart-steps li {
	display: flex;
	align-items: center;
	gap: 7px;
	margin: 0;
	padding: 0 10px 0 0;
	color: #6c5324;
	font-size: 12px;
	font-weight: 800;
	white-space: nowrap;
}

.mg-cart-steps li + li::before {
	width: 18px;
	height: 1px;
	margin-right: 2px;
	background: rgba(18, 23, 34, .22);
	content: "";
}

.mg-cart-steps span {
	display: grid;
	width: 30px;
	height: 30px;
	place-items: center;
	border: 1px solid rgba(18, 23, 34, .14);
	border-radius: 50%;
	background: rgba(255, 255, 255, .74);
}

.mg-cart-steps .is-current {
	color: #10141e;
}

.mg-cart-steps .is-current span {
	border-color: #10141e;
	background: #10141e;
	color: #fff;
}

.mg-cart-layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 350px;
	align-items: start;
	gap: 18px;
}

.mg-cart-items-panel,
.mg-cart-summary .cart_totals {
	border: 1px solid #e2e5eb;
	border-radius: 24px;
	background: #fff;
	box-shadow: 0 16px 45px rgba(17, 24, 39, .07);
}

.mg-cart-items-panel {
	padding: 24px;
}

.mg-cart-panel-heading {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	margin-bottom: 16px;
}

.mg-cart-panel-heading h2,
.mg-cart-summary__heading h2 {
	margin: 0;
	color: #121722;
	font-size: 26px;
	font-weight: 900;
	letter-spacing: -.025em;
	line-height: 1.15;
}

.mg-cart-count {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 36px;
	padding: 8px 14px;
	border: 1px solid #ffe3a1;
	border-radius: 999px;
	background: #fff7df;
	color: #805400;
	font-size: 13px;
	font-weight: 800;
	white-space: nowrap;
}

.mg-cart-items {
	display: grid;
	gap: 12px;
}

.mg-cart-item {
	position: relative;
	display: grid;
	grid-template-columns: 104px minmax(0, 1fr) 132px;
	align-items: center;
	gap: 18px;
	min-height: 138px;
	padding: 16px !important;
	border: 1px solid #e4e6eb;
	border-radius: 20px;
	background: linear-gradient(135deg, #fffdfa 0%, #ffffff 68%);
	transition: border-color .2s ease, box-shadow .2s ease;
}

.mg-cart-item:hover {
	border-color: #edc76d;
	box-shadow: 0 12px 28px rgba(17, 24, 39, .07);
}

.mg-cart-item__media {
	display: grid;
	width: 104px;
	height: 104px;
	overflow: hidden;
	place-items: center;
	border: 1px solid #e5e7eb;
	border-radius: 16px;
	background: #f5f6f8;
}

.mg-cart-item__media a {
	display: grid;
	width: 100%;
	height: 100%;
	place-items: center;
}

.mg-cart-item__media img {
	width: 100% !important;
	height: 100% !important;
	margin: 0 !important;
	object-fit: contain;
	transition: none !important;
	transform: none !important;
}

.mg-cart-item__details {
	min-width: 0;
	padding-right: 4px;
}

.mg-cart-item__details h3 {
	margin: 0;
	font-size: 18px;
	font-weight: 900;
	letter-spacing: -.015em;
	line-height: 1.35;
}

.mg-cart-item__details h3 a {
	color: #151a25;
}

.mg-cart-item__details h3 a:hover {
	color: #9a6500;
}

.mg-cart-item__details dl.variation {
	display: grid;
	grid-template-columns: max-content minmax(0, 1fr);
	gap: 4px 8px;
	margin: 9px 0 0;
	padding: 9px 11px;
	border-radius: 12px;
	background: #f6f7f9;
	color: #596273;
	font-size: 12px;
	line-height: 1.4;
}

.mg-cart-item__details dl.variation dt,
.mg-cart-item__details dl.variation dd,
.mg-cart-item__details dl.variation p {
	float: none;
	margin: 0;
	padding: 0;
}

.mg-cart-item__details dl.variation dt {
	color: #343b49;
	font-weight: 800;
}

.mg-cart-item__controls {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	justify-content: center;
	gap: 10px;
	min-width: 132px;
	padding-top: 22px;
}

.mg-cart-quantity,
.mg-cart-item__price {
	display: grid;
	justify-items: end;
	gap: 5px;
}

.mg-cart-quantity > span,
.mg-cart-item__price > span {
	color: #737c8e;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .05em;
	text-transform: uppercase;
}

.mg-cart-quantity--fixed strong,
.mg-cart-item__price strong {
	color: #111722;
	font-size: 19px;
	font-weight: 900;
}

.mg-cart-item__price {
	order: -1;
}

.mg-cart-quantity--fixed {
	display: inline-grid;
	grid-template-columns: auto auto;
	align-items: center;
	gap: 6px;
	padding: 5px 9px;
	border: 1px solid #e2e5eb;
	border-radius: 999px;
	background: #f7f8fa;
}

.mg-cart-quantity--fixed > span {
	font-size: 9px;
}

.mg-cart-quantity--fixed strong {
	font-size: 12px;
}

.mg-cart-item__price small {
	color: #747d8e;
	font-size: 11px;
}

.mg-cart-quantity__stepper {
	display: grid;
	grid-template-columns: 34px 44px 34px;
	align-items: center;
	overflow: hidden;
	border: 1px solid #d9dde5;
	border-radius: 11px;
	background: #fff;
}

.mg-cart-quantity__stepper .quantity {
	display: block !important;
	margin: 0 !important;
}

.mg-cart-quantity__stepper input.qty {
	width: 44px !important;
	height: 34px;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	font-weight: 900;
	text-align: center;
	-moz-appearance: textfield;
}

.mg-cart-quantity__stepper input.qty::-webkit-outer-spin-button,
.mg-cart-quantity__stepper input.qty::-webkit-inner-spin-button {
	margin: 0;
	-webkit-appearance: none;
}

.mg-qty-button {
	display: grid;
	width: 34px;
	height: 34px;
	padding: 0;
	place-items: center;
	border: 0;
	background: #f3f4f6;
	color: #171b25;
	font-size: 18px;
	font-weight: 800;
	cursor: pointer;
}

.mg-qty-button:hover {
	background: #ffefbd;
}

.mg-cart-remove.remove {
	position: absolute;
	top: 15px;
	right: 17px;
	display: inline-flex !important;
	align-items: center;
	gap: 5px;
	width: auto !important;
	height: 28px !important;
	padding: 4px 7px !important;
	border: 0 !important;
	border-radius: 8px !important;
	background: transparent !important;
	color: #7b8494 !important;
	font-size: 11px !important;
	font-weight: 700 !important;
	line-height: 1 !important;
}

.mg-cart-remove.remove::before {
	display: none !important;
}

.mg-cart-remove svg {
	width: 15px;
	height: 15px;
	fill: none;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.8;
}

.mg-cart-remove:hover {
	background: #fff0ed !important;
	color: #c43a28 !important;
}

.mg-cart-actions {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 14px;
	margin-top: 16px;
	padding-top: 16px;
	border-top: 1px solid #eceef2;
}

.mg-cart-coupon {
	max-width: 430px;
}

.mg-cart-coupon summary {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	color: #596273;
	font-size: 13px;
	font-weight: 800;
	cursor: pointer;
}

.mg-cart-coupon summary::marker {
	color: #f5a600;
}

.mg-cart-coupon[open] summary {
	margin-bottom: 12px;
	color: #121722;
}

.mg-cart-coupon__fields {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 8px;
}

.mg-cart-coupon__fields input {
	min-width: 220px;
	height: 44px;
	margin: 0;
	padding: 0 14px;
	border: 1px solid #d9dde5;
	border-radius: 11px;
	background: #fff;
}

.mg-cart-coupon__fields .button,
.mg-cart-update.button {
	min-height: 44px;
	margin: 0;
	padding: 0 17px;
	border: 1px solid #d9dde5;
	border-radius: 11px;
	background: #f6f7f9;
	color: #161b26;
	font-size: 12px;
	font-weight: 900;
}

.mg-cart-coupon__fields .button:hover,
.mg-cart-update.button:hover:not(:disabled) {
	border-color: #f5a600;
	background: #fff6dc;
	color: #111722;
}

.mg-cart-update.button:disabled {
	display: none;
}

.mg-cart-continue {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin: 0 0 0 auto;
	color: #555e6f;
	font-size: 13px;
	font-weight: 800;
}

.mg-cart-continue:hover {
	color: #9a6500;
}

.mg-cart-summary {
	position: sticky;
	top: 24px;
}

.mg-cart-summary .cart-collaterals,
body.woocommerce-cart .mg-cart-summary .cart-collaterals .cart_totals {
	float: none !important;
	width: 100% !important;
	margin: 0;
}

body.woocommerce-cart .mg-cart-summary .cart-collaterals .cart_totals {
	padding: 24px !important;
}

.mg-cart-summary__heading {
	margin-bottom: 12px;
}

.mg-cart-summary .shop_table {
	width: 100%;
	margin: 0;
	border: 0;
	border-collapse: collapse;
	background: transparent;
}

.mg-cart-summary .shop_table tr,
.mg-cart-summary .shop_table th,
.mg-cart-summary .shop_table td {
	border: 0;
	background: transparent;
}

.mg-cart-summary .shop_table th,
.mg-cart-summary .shop_table td {
	padding: 11px 0;
	color: #5c6576;
	font-size: 14px;
}

.mg-cart-summary .shop_table th {
	font-weight: 700;
	text-align: left;
}

.mg-cart-summary .shop_table td {
	font-weight: 800;
	text-align: right;
}

.mg-cart-summary .shop_table .order-total th,
.mg-cart-summary .shop_table .order-total td {
	padding-top: 18px;
	border-top: 1px solid #e3e6eb;
	color: #111722;
	font-size: 16px;
}

.mg-cart-summary .shop_table .order-total strong,
.mg-cart-summary .shop_table .order-total .amount {
	font-size: 25px;
	font-weight: 900;
}

.mg-cart-delivery-note {
	display: grid;
	grid-template-columns: 38px minmax(0, 1fr);
	gap: 11px;
	margin-top: 10px;
	padding: 11px;
	border: 1px solid #ffe0a0;
	border-radius: 14px;
	background: #fff8e6;
}

.mg-cart-delivery-note svg {
	width: 38px;
	height: 38px;
	padding: 9px;
	border-radius: 11px;
	background: #ffb000;
	fill: #161b26;
}

.mg-cart-delivery-note div {
	display: grid;
	gap: 2px;
}

.mg-cart-delivery-note strong {
	color: #1c2029;
	font-size: 13px;
}

.mg-cart-delivery-note span {
	color: #6f5b31;
	font-size: 11px;
	line-height: 1.45;
}

.mg-cart-summary .wc-proceed-to-checkout {
	padding: 0;
}

body.woocommerce-cart .mg-cart-summary .checkout-button.button {
	display: flex !important;
	align-items: center;
	justify-content: center;
	width: 100% !important;
	min-height: 56px;
	margin: 14px 0 0;
	padding: 13px 18px !important;
	border: 1px solid #efa100;
	border-radius: 14px !important;
	background: linear-gradient(135deg, #ffbd1d, #f5a600);
	box-shadow: 0 12px 24px rgba(245, 166, 0, .24);
	color: #111722;
	font-size: 15px !important;
	font-weight: 900 !important;
	letter-spacing: -.01em;
	text-align: center;
}

body.woocommerce-cart .mg-cart-summary .checkout-button.button:hover,
body.woocommerce-cart .mg-cart-summary .checkout-button.button:focus {
	border-color: #111722;
	background: #111722;
	box-shadow: 0 14px 28px rgba(17, 23, 34, .18);
	color: #fff;
	transform: translateY(-1px);
}

.mg-cart-trust {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 8px;
	margin: 13px 0 0;
	padding: 0;
	list-style: none;
}

.mg-cart-trust li {
	display: flex;
	align-items: center;
	gap: 7px;
	margin: 0;
	color: #626b7b;
	font-size: 11px;
	font-weight: 800;
	line-height: 1.3;
}

.mg-cart-trust svg {
	width: 18px;
	height: 18px;
	fill: none;
	stroke: #af7400;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.8;
}

.mg-empty-cart {
	width: min(760px, calc(100% - 40px));
	margin: 70px auto 100px;
	padding: 58px 48px;
	border: 1px solid #e2e5eb;
	border-radius: 28px;
	background:
		radial-gradient(circle at 100% 0, rgba(255, 196, 48, .22), transparent 35%),
		#fff;
	box-shadow: 0 20px 55px rgba(17, 24, 39, .08);
	text-align: center;
}

.mg-empty-cart__icon {
	display: grid;
	width: 84px;
	height: 84px;
	margin: 0 auto 22px;
	place-items: center;
	border-radius: 24px;
	background: #fff1c6;
}

.mg-empty-cart__icon svg {
	width: 43px;
	height: 43px;
	fill: none;
	stroke: #9b6700;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.8;
}

.mg-empty-cart h1 {
	margin: 0;
	color: #111722;
	font-size: clamp(36px, 5vw, 52px);
	font-weight: 900;
	letter-spacing: -.04em;
}

.mg-empty-cart > p {
	max-width: 540px;
	margin: 14px auto 0;
	color: #667085;
	font-size: 15px;
	line-height: 1.65;
}

.mg-empty-cart__button.button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	min-height: 52px;
	margin: 24px auto 0;
	padding: 12px 22px;
	border-radius: 13px;
	background: #f5a600;
	color: #111722;
	font-weight: 900;
}

.mg-empty-cart__button.button:hover {
	background: #111722;
	color: #fff;
}

.mg-empty-cart__benefits {
	display: flex;
	justify-content: center;
	gap: 22px;
	margin-top: 30px;
	padding-top: 22px;
	border-top: 1px solid #eceef2;
	color: #626b7b;
	font-size: 12px;
	font-weight: 800;
}

.mg-empty-cart__benefits span::before {
	margin-right: 7px;
	color: #f5a600;
	content: "\2022";
}

@media (max-width: 980px) {
	.mg-cart-hero {
		align-items: flex-start;
		flex-direction: column;
		gap: 28px;
	}

	.mg-cart-layout {
		grid-template-columns: 1fr;
	}

	.mg-cart-summary {
		position: static;
	}
}

@media (max-width: 700px) {
	body.woocommerce-cart .woocommerce-notices-wrapper,
	.mg-cart-page {
		width: min(100% - 24px, 1280px);
	}

	.mg-cart-page {
		margin-top: 16px;
		margin-bottom: 52px;
	}

	.mg-cart-hero {
		min-height: 0;
		padding: 30px 24px;
		border-radius: 22px;
	}

	.mg-cart-hero::before {
		top: -120px;
		right: -62px;
		width: 220px;
		height: 220px;
		border-width: 34px;
	}

	.mg-cart-hero::after {
		right: 72px;
		bottom: -235px;
		width: 290px;
		height: 290px;
		border-width: 38px;
	}

	.mg-cart-hero h1 {
		font-size: 43px;
	}

	.mg-cart-hero p {
		font-size: 14px;
	}

	.mg-cart-steps {
		width: 100%;
		justify-content: space-between;
		gap: 4px;
		padding: 8px;
	}

	.mg-cart-steps li {
		gap: 5px;
		padding: 0;
		font-size: 10px;
	}

	.mg-cart-steps li + li::before {
		width: 7px;
		margin-right: 0;
	}

	.mg-cart-steps span {
		width: 26px;
		height: 26px;
	}

	.mg-cart-items-panel,
	body.woocommerce-cart .mg-cart-summary .cart-collaterals .cart_totals {
		padding: 20px !important;
		border-radius: 20px;
	}

	.mg-cart-panel-heading h2,
	.mg-cart-summary__heading h2 {
		font-size: 22px;
	}

	.mg-cart-count {
		min-height: 32px;
		padding: 6px 10px;
		font-size: 11px;
	}

	.mg-cart-item {
		grid-template-columns: 92px minmax(0, 1fr);
		align-items: start;
		gap: 14px;
		min-height: 0;
		padding: 14px !important;
		border-radius: 17px;
	}

	.mg-cart-item__media {
		width: 92px;
		height: 92px;
		border-radius: 13px;
	}

	.mg-cart-item__details {
		padding: 3px 28px 0 0;
	}

	.mg-cart-item__details h3 {
		font-size: 15px;
	}

	.mg-cart-item__details dl.variation {
		grid-template-columns: 1fr;
		gap: 1px;
		margin-top: 9px;
		padding: 9px 10px;
		font-size: 11px;
	}

	.mg-cart-item__details dl.variation dd + dt {
		margin-top: 4px;
	}

	.mg-cart-item__controls {
		display: grid;
		grid-column: 1 / -1;
		grid-template-columns: 1fr 1fr;
		align-items: end;
		justify-items: start;
		width: 100%;
		min-width: 0;
		padding: 2px 2px 0;
	}

	.mg-cart-quantity,
	.mg-cart-item__price {
		justify-items: start;
	}

	.mg-cart-item__price {
		order: 0;
		justify-self: end;
		justify-items: end;
	}

	.mg-cart-remove.remove {
		top: 12px;
		right: 12px;
		width: 30px !important;
		height: 30px !important;
		justify-content: center;
		padding: 0 !important;
		background: #f4f5f7 !important;
	}

	.mg-cart-remove span {
		display: none;
	}

	.mg-cart-actions {
		align-items: stretch;
		flex-direction: column;
	}

	.mg-cart-continue {
		margin-left: 0;
	}

	.mg-cart-coupon,
	.mg-cart-coupon__fields {
		width: 100%;
	}

	.mg-cart-coupon__fields {
		grid-template-columns: minmax(0, 1fr) auto;
	}

	.mg-cart-coupon__fields input {
		min-width: 0;
		width: 100%;
	}

	.mg-cart-update.button {
		width: 100%;
	}

	.mg-cart-trust {
		grid-template-columns: 1fr;
	}

	.mg-empty-cart {
		width: min(100% - 24px, 760px);
		margin: 32px auto 60px;
		padding: 42px 22px;
		border-radius: 22px;
	}

	.mg-empty-cart__benefits {
		align-items: center;
		flex-direction: column;
		gap: 9px;
	}
}

/* Keep single-product purchase surfaces on the MooGold gold palette even when
   legacy Storefront rules load after the component stylesheet. */
body.single-product.woocommerce div.product .mg-single-product__summary {
	border-color: #ead79f !important;
	background:
		radial-gradient(circle at 100% 0%, rgba(255, 188, 32, .16), transparent 36%),
		linear-gradient(180deg, #fffefa 0%, #fffaf0 100%) !important;
	box-shadow: 0 18px 50px rgba(126, 87, 0, .09) !important;
}

/* Focused checkout: keep the final purchase step calm, compact and consistent
   with the modern cart instead of inheriting Storefront's wide legacy layout. */
body.woocommerce-checkout:not(.woocommerce-order-received) {
	background: #f3f3f2;
}

body.woocommerce-checkout:not(.woocommerce-order-received) .storefront-breadcrumb,
body.woocommerce-checkout:not(.woocommerce-order-received) #primary > .site-main > article > .entry-header,
body.woocommerce-checkout:not(.woocommerce-order-received) #primary > .site-main > article > .edit-link {
	display: none;
}

body.woocommerce-checkout:not(.woocommerce-order-received) .site-content > .col-full {
	max-width: none;
	padding-right: 0;
	padding-left: 0;
}

body.woocommerce-checkout:not(.woocommerce-order-received) #primary,
body.woocommerce-checkout:not(.woocommerce-order-received) .site-main,
body.woocommerce-checkout:not(.woocommerce-order-received) .site-main > article,
body.woocommerce-checkout:not(.woocommerce-order-received) .entry-content {
	float: none;
	width: 100%;
	margin: 0;
	padding: 0;
}

.mg-checkout-page {
	width: min(calc(100% - 40px), 1280px);
	margin: 44px auto 76px;
}

.mg-checkout-hero {
	margin-bottom: 18px;
}

.mg-checkout-hero h1 {
	font-size: clamp(37px, 4.4vw, 58px);
}

.mg-checkout-page .woocommerce-error,
.mg-checkout-page .woocommerce-info,
.mg-checkout-page .woocommerce-message {
	border: 1px solid #e7dfd0;
	border-radius: 16px;
	background: #fffefa;
	box-shadow: 0 10px 28px rgba(25, 28, 36, .06);
}

.mg-checkout-page .woocommerce-form-coupon-toggle {
	margin: 0 0 20px;
}

.mg-checkout-page .woocommerce-form-coupon-toggle .woocommerce-info {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	min-height: 58px;
	margin: 0;
	padding: 10px 12px 10px 20px;
	color: #4d5360;
	font-weight: 700;
}

.mg-checkout-page .woocommerce-form-coupon-toggle .woocommerce-info::before {
	display: none;
}

.mg-checkout-page .woocommerce-form-coupon-toggle .showcoupon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 38px;
	padding: 8px 14px;
	border: 1px solid #f0ca62;
	border-radius: 11px;
	background: #fff3ce;
	color: #8b5a00;
	font-size: 12px;
	font-weight: 900;
	text-decoration: none;
}

.mg-checkout-page .woocommerce-form-coupon-toggle .showcoupon:hover,
.mg-checkout-page .woocommerce-form-coupon-toggle .showcoupon:focus {
	border-color: #f2ad00;
	background: #ffe6a1;
	color: #151821;
}

.mg-checkout-page form.checkout_coupon {
	max-width: 620px;
	margin: -8px 0 22px;
	padding: 16px;
	border: 1px solid #e7dfd0;
	border-radius: 16px;
	background: #fffefa;
	box-shadow: 0 10px 28px rgba(25, 28, 36, .06);
}

.mg-checkout-coupon-fields {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 10px;
}

.mg-checkout-page .mg-checkout-coupon-fields > p {
	float: none;
	width: auto;
	margin: 0;
}

.mg-checkout-page form.checkout_coupon input.input-text {
	width: 100%;
	height: 46px;
	padding: 0 14px;
	border: 1px solid #d8dce4;
	border-radius: 11px;
	background: #fff;
	box-shadow: none;
}

.mg-checkout-page form.checkout_coupon button.button {
	height: 46px;
	padding: 0 18px;
	border: 0;
	border-radius: 11px;
	background: #f8aa00;
	color: #11151e;
	font-weight: 900;
}

.mg-checkout-form {
	margin: 0;
}

.mg-checkout-layout {
	display: grid;
	grid-template-columns: minmax(0, .92fr) minmax(460px, 1.08fr);
	align-items: start;
	gap: 24px;
}

.mg-checkout-panel {
	min-width: 0;
	padding: 30px;
	border: 1px solid #e4e1da;
	border-radius: 24px;
	background: #fff;
	box-shadow: 0 18px 48px rgba(27, 30, 38, .08);
}

.mg-checkout-order {
	position: sticky;
	top: 22px;
}

.mg-checkout-section-heading {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	margin-bottom: 8px;
}

.mg-checkout-section-heading h2 {
	margin: 4px 0 0;
	color: #151821;
	font-size: clamp(25px, 2.3vw, 34px);
	font-weight: 900;
	letter-spacing: -.035em;
	line-height: 1.05;
}

body.woocommerce-checkout:not(.woocommerce-order-received) .mg-checkout-order h2#order_review_heading {
	float: none !important;
	position: static !important;
	width: auto !important;
	margin: 4px 0 0 !important;
	padding: 0 !important;
}

body.woocommerce-checkout:not(.woocommerce-order-received) .mg-checkout-order h2#order_review_heading::before,
body.woocommerce-checkout:not(.woocommerce-order-received) .mg-checkout-order h2#order_review_heading::after {
	display: none !important;
}

.mg-checkout-secure-note,
.mg-checkout-edit-cart {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	flex: 0 0 auto;
	min-height: 34px;
	padding: 7px 10px;
	border: 1px solid #eadba8;
	border-radius: 999px;
	background: #fff8df;
	color: #7f5700;
	font-size: 11px;
	font-weight: 900;
	text-decoration: none;
}

.mg-checkout-secure-note svg,
.mg-checkout-assurance svg {
	width: 16px;
	height: 16px;
	fill: none;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.8;
}

.mg-checkout-edit-cart:hover,
.mg-checkout-edit-cart:focus {
	border-color: #f0b31d;
	background: #ffedb5;
	color: #151821;
}

.mg-checkout-helper {
	margin: 0 0 22px;
	color: #6d7483;
	font-size: 13px;
	line-height: 1.5;
}

body.woocommerce-checkout .mg-checkout-form #customer_details,
body.woocommerce-checkout .mg-checkout-form #customer_details .col-1,
body.woocommerce-checkout .mg-checkout-form #customer_details .col-2,
body.woocommerce-checkout .mg-checkout-order #order_review {
	float: none;
	width: 100%;
	margin: 0;
	padding: 0 !important;
}

.mg-checkout-form #customer_details .col-2:empty {
	display: none;
}

.mg-checkout-details .woocommerce-billing-fields > h3,
.mg-checkout-details .woocommerce-shipping-fields > h3 {
	display: none;
}

.mg-checkout-details .woocommerce-billing-fields__field-wrapper,
.mg-checkout-details .woocommerce-shipping-fields__field-wrapper {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px;
}

.mg-checkout-details .form-row {
	float: none;
	width: 100%;
	margin: 0;
	padding: 0;
}

body.woocommerce-checkout:not(.woocommerce-order-received) .mg-checkout-details p.form-row,
body.woocommerce-checkout:not(.woocommerce-order-received) .mg-checkout-details p.form-row-first,
body.woocommerce-checkout:not(.woocommerce-order-received) .mg-checkout-details p.form-row-last {
	float: none !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}

.mg-checkout-details .form-row-wide,
.mg-checkout-details .create-account {
	grid-column: 1 / -1;
}

.mg-checkout-details .form-row label {
	display: block;
	margin-bottom: 7px;
	color: #353a46;
	font-size: 12px;
	font-weight: 800;
}

.mg-checkout-details .required {
	color: #c17900;
}

.mg-checkout-details .input-text,
.mg-checkout-details select,
.mg-checkout-details .select2-selection {
	min-height: 50px;
	width: 100%;
	padding: 0 14px;
	border: 1px solid #d8dce4;
	border-radius: 12px;
	background: #fbfbfc;
	box-shadow: none;
	color: #151821;
	font-size: 14px;
}

.mg-checkout-details .input-text:focus,
.mg-checkout-details select:focus,
.mg-checkout-details .select2-selection:focus {
	border-color: #efa900;
	background: #fff;
	box-shadow: 0 0 0 4px rgba(248, 170, 0, .12);
	outline: 0;
}

.mg-checkout-details .woocommerce-invalid .input-text {
	border-color: #c94949;
	box-shadow: 0 0 0 3px rgba(201, 73, 73, .1);
}

.mg-checkout-order .woocommerce-checkout-review-order-table {
	width: 100%;
	margin: 22px 0 18px;
	border: 1px solid #e6e2da;
	border-collapse: separate;
	border-spacing: 0;
	border-radius: 16px;
	background: #fffefa;
	overflow: hidden;
}

.mg-checkout-order .shop_table thead {
	display: none;
}

.mg-checkout-order .shop_table th,
.mg-checkout-order .shop_table td {
	padding: 14px 16px;
	border: 0;
	border-bottom: 1px solid #ece8e0;
	background: transparent;
	color: #303541;
	vertical-align: top;
}

.mg-checkout-order .shop_table td.product-name {
	font-weight: 800;
	line-height: 1.45;
}

.mg-checkout-order .shop_table td.product-total,
.mg-checkout-order .shop_table tfoot td {
	text-align: right;
	white-space: nowrap;
}

.mg-checkout-order .shop_table dl.variation {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	gap: 3px 8px;
	margin: 9px 0 0;
	padding: 9px 10px;
	border-radius: 10px;
	background: #f3f4f6;
	color: #626a79;
	font-size: 11px;
	font-weight: 500;
}

.mg-checkout-order .shop_table dl.variation dt,
.mg-checkout-order .shop_table dl.variation dd,
.mg-checkout-order .shop_table dl.variation p {
	float: none;
	margin: 0;
	padding: 0;
}

.mg-checkout-order .shop_table tfoot tr:last-child th,
.mg-checkout-order .shop_table tfoot tr:last-child td {
	border-bottom: 0;
}

.mg-checkout-order .shop_table .order-total th,
.mg-checkout-order .shop_table .order-total td {
	padding-top: 18px;
	padding-bottom: 18px;
	color: #151821;
	font-size: 17px;
	font-weight: 900;
}

.mg-checkout-order .shop_table .order-total .amount {
	font-size: 22px;
}

body.woocommerce-checkout .mg-checkout-order #payment {
	margin: 0;
	border: 0;
	border-radius: 16px;
	background: #fff;
}

.mg-checkout-order #payment ul.payment_methods {
	margin: 0;
	padding: 0;
	border: 0;
}

.mg-checkout-order #payment ul.payment_methods li {
	margin: 0 0 12px;
	padding: 15px;
	border: 1px solid #ead79f;
	border-radius: 14px;
	background: #fffaf0;
	color: #262b36;
}

.mg-checkout-order #payment ul.payment_methods li > label {
	font-weight: 800;
}

.mg-checkout-order #payment div.payment_box {
	margin: 12px 0 0;
	padding: 12px;
	border-radius: 10px;
	background: #f5f4f1;
	color: #565d6b;
	font-size: 12px;
}

.mg-checkout-order #payment div.payment_box::before {
	border-bottom-color: #f5f4f1;
}

.mg-checkout-order #payment .place-order {
	margin: 0;
	padding: 16px 0 0;
}

.mg-checkout-order #payment .woocommerce-privacy-policy-text {
	margin-bottom: 12px;
	padding: 12px 14px;
	border-radius: 12px;
	background: #f6f7f8;
	color: #666e7c;
	font-size: 11px;
	line-height: 1.55;
}

.mg-checkout-order #payment .woocommerce-terms-and-conditions-wrapper {
	margin-bottom: 12px;
}

.mg-checkout-order #payment .validate-required {
	margin: 0;
	padding: 13px 14px;
	border: 1px solid #e1e3e8;
	border-radius: 12px;
	background: #fafafa;
	font-size: 12px;
	line-height: 1.45;
}

.mg-checkout-order #payment .validate-required label {
	display: flex;
	align-items: flex-start;
	gap: 9px;
}

.mg-checkout-order #payment .validate-required input[type="checkbox"] {
	flex: 0 0 auto;
	width: 17px;
	height: 17px;
	margin: 1px 0 0;
	accent-color: #f8aa00;
}

body.woocommerce-checkout .mg-checkout-order #payment #place_order {
	float: none;
	width: 100%;
	min-height: 54px;
	margin: 14px 0 0;
	padding: 12px 20px;
	border: 0;
	border-radius: 14px;
	background: linear-gradient(135deg, #ffbd20 0%, #f2a000 100%);
	box-shadow: 0 12px 24px rgba(214, 145, 0, .2);
	color: #11151e;
	font-size: 15px;
	font-weight: 900;
	letter-spacing: 0;
	text-transform: none;
}

body.woocommerce-checkout .mg-checkout-order #payment #place_order:hover,
body.woocommerce-checkout .mg-checkout-order #payment #place_order:focus {
	background: linear-gradient(135deg, #ffc83e 0%, #eca000 100%);
	box-shadow: 0 15px 28px rgba(214, 145, 0, .27);
	transform: translateY(-1px);
}

.mg-checkout-assurance {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
	margin-top: 18px;
	padding: 15px 20px;
	border: 1px solid #e5e2db;
	border-radius: 18px;
	background: #171a22;
	box-shadow: 0 14px 34px rgba(20, 22, 29, .12);
	color: #fff;
}

.mg-checkout-assurance span {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	font-size: 12px;
	font-weight: 800;
}

.mg-checkout-assurance svg {
	color: #ffb400;
}

@media (max-width: 980px) {
	.mg-checkout-layout {
		grid-template-columns: 1fr;
	}

	/* The summary becomes a full-width single column at this breakpoint.
	   Give the order table its own consistent surface and keep content away
	   from the table edge at tablet and narrow-desktop widths. */
	body.woocommerce-checkout .mg-checkout-order .woocommerce-checkout-review-order-table,
	body.woocommerce-checkout .mg-checkout-order .shop_table tbody tr,
	body.woocommerce-checkout .mg-checkout-order .shop_table tbody td,
	body.woocommerce-checkout .mg-checkout-order .shop_table tfoot th,
	body.woocommerce-checkout .mg-checkout-order .shop_table tfoot td {
		background: #fff !important;
	}

	body.woocommerce-checkout .mg-checkout-order .woocommerce-checkout-review-order-table {
		border: 1px solid #e7e9ed;
		border-radius: 16px;
		box-shadow: 0 8px 24px rgba(24, 29, 39, .035);
	}

	body.woocommerce-checkout .mg-checkout-order .shop_table tbody td.product-name {
		padding-left: 16px !important;
		padding-right: 14px !important;
	}

	body.woocommerce-checkout .mg-checkout-order .shop_table tbody td.product-total {
		padding-right: 16px !important;
	}

	body.woocommerce-checkout .mg-checkout-order .shop_table tfoot th {
		padding-left: 16px !important;
	}

	body.woocommerce-checkout .mg-checkout-order .shop_table tfoot td {
		padding-right: 16px !important;
	}
}

@media (max-width: 700px) {
	.mg-checkout-page {
		width: min(calc(100% - 24px), 1280px);
		margin: 24px auto 54px;
	}

	.mg-checkout-hero h1 {
		font-size: 33px;
	}

	.mg-checkout-page .woocommerce-form-coupon-toggle .woocommerce-info {
		align-items: flex-start;
		flex-direction: column;
		gap: 9px;
		padding: 14px;
	}

	.mg-checkout-page .woocommerce-form-coupon-toggle .showcoupon {
		width: 100%;
	}

	.mg-checkout-page form.checkout_coupon {
		max-width: none;
	}

	.mg-checkout-coupon-fields {
		grid-template-columns: 1fr;
	}

	.mg-checkout-page form.checkout_coupon button.button {
		width: 100%;
	}

	.mg-checkout-panel {
		padding: 20px 16px;
		border-radius: 20px;
	}

	.mg-checkout-section-heading {
		align-items: flex-start;
	}

	.mg-checkout-section-heading h2 {
		font-size: 25px;
	}

	.mg-checkout-secure-note,
	.mg-checkout-edit-cart {
		min-height: 31px;
		padding: 6px 9px;
	}

	.mg-checkout-details .woocommerce-billing-fields__field-wrapper,
	.mg-checkout-details .woocommerce-shipping-fields__field-wrapper {
		grid-template-columns: 1fr;
	}

	.mg-checkout-details .form-row-wide,
	.mg-checkout-details .create-account {
		grid-column: auto;
	}

	.mg-checkout-order .shop_table th,
	.mg-checkout-order .shop_table td {
		padding: 12px 10px;
	}

	.mg-checkout-order .shop_table td.product-total,
	.mg-checkout-order .shop_table tfoot td {
		white-space: normal;
	}

	.mg-checkout-assurance {
		grid-template-columns: 1fr;
		gap: 10px;
		padding: 14px 16px;
	}

	.mg-checkout-assurance span {
		justify-content: flex-start;
	}
}

/* Checkout flow v2: game-store focused, balanced and reviewable. */
.mg-checkout-page {
	width: min(calc(100% - 40px), 1320px);
	margin: 32px auto 72px;
}

.mg-checkout-hero {
	min-height: 174px;
	margin-bottom: 14px;
	padding: 30px 40px;
}

.mg-checkout-hero h1 {
	font-size: clamp(38px, 4vw, 52px);
}

.mg-checkout-hero .mg-cart-hero__copy > p:last-child {
	margin-top: 10px;
}

.mg-checkout-page .woocommerce-form-coupon-toggle {
	display: flex;
	justify-content: flex-end;
	margin: 0 0 14px;
}

.mg-checkout-promo-toggle {
	display: grid;
	grid-template-columns: 38px minmax(0, 1fr) auto;
	align-items: center;
	gap: 11px;
	width: min(100%, 410px);
	padding: 9px 10px 9px 12px;
	border: 1px solid #ecd99f;
	border-radius: 16px;
	background: linear-gradient(135deg, #fffdf8 0%, #fff6df 100%);
	box-shadow: 0 10px 26px rgba(114, 78, 0, .07);
}

.mg-checkout-promo-toggle__icon {
	display: grid;
	width: 38px;
	height: 38px;
	place-items: center;
	color: #151922;
	background: linear-gradient(145deg, #ffc83d, #f2a400);
	border-radius: 12px;
	box-shadow: 0 7px 16px rgba(215, 145, 0, .18);
}

.mg-checkout-promo-toggle__icon svg {
	width: 19px;
	height: 19px;
	fill: none;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.8;
}

.mg-checkout-promo-toggle__copy strong,
.mg-checkout-promo-toggle__copy small {
	display: block;
}

.mg-checkout-promo-toggle__copy strong {
	color: #171b24;
	font-size: 12px;
	font-weight: 900;
}

.mg-checkout-promo-toggle__copy small {
	margin-top: 1px;
	color: #747c8a;
	font-size: 10px;
}

.mg-checkout-page .woocommerce-form-coupon-toggle .showcoupon {
	min-height: 36px;
	padding: 0 13px;
	border: 1px solid #171b24 !important;
	border-radius: 11px;
	background: #171b24 !important;
	color: #fff !important;
	font-size: 11px;
	font-weight: 900;
	white-space: nowrap;
}

.mg-checkout-page .woocommerce-form-coupon-toggle .showcoupon:hover,
.mg-checkout-page .woocommerce-form-coupon-toggle .showcoupon:focus {
	border-color: #2b3240 !important;
	background: #2b3240 !important;
	color: #fff !important;
	box-shadow: 0 8px 18px rgba(23, 27, 36, .16);
}

.mg-checkout-page form.checkout_coupon {
	max-width: 410px;
	margin: 0 0 16px auto;
	padding: 12px;
	border-radius: 16px;
}

.mg-checkout-layout {
	display: grid;
	grid-template-columns: minmax(0, 1.08fr) minmax(400px, .92fr);
	grid-template-areas:
		"details summary"
		"payment summary";
	align-items: start;
	gap: 20px 22px;
}

.mg-checkout-details {
	grid-area: details;
}

.mg-checkout-payment-panel {
	grid-area: payment;
}

.mg-checkout-order {
	position: sticky;
	top: 148px;
	grid-area: summary;
	align-self: start;
}

.mg-checkout-panel {
	padding: 26px;
	border: 1px solid #e2e4e9;
	border-radius: 24px;
	background: rgba(255, 255, 255, .96);
	box-shadow: 0 16px 42px rgba(27, 31, 42, .075);
}

.mg-checkout-section-heading {
	margin-bottom: 10px;
}

.mg-checkout-section-heading__main {
	display: flex;
	align-items: center;
	gap: 13px;
	min-width: 0;
}

.mg-checkout-section-heading__main > div {
	min-width: 0;
}

.mg-checkout-step-mark,
.mg-checkout-summary-mark {
	display: grid;
	flex: 0 0 46px;
	width: 46px;
	height: 46px;
	place-items: center;
	border-radius: 15px;
}

.mg-checkout-step-mark {
	color: #151922;
	background: linear-gradient(145deg, #ffc533, #f5a600);
	box-shadow: 0 8px 20px rgba(215, 146, 0, .2);
	font-size: 17px;
	font-weight: 950;
}

.mg-checkout-summary-mark {
	color: #8a5d00;
	background: #fff0c4;
}

.mg-checkout-summary-mark svg {
	width: 23px;
	height: 23px;
	fill: none;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.8;
}

.mg-checkout-section-heading h2 {
	margin-top: 2px;
	font-size: clamp(25px, 2.2vw, 31px);
}

.mg-checkout-helper {
	margin: 0 0 20px 59px;
}

.mg-checkout-details .woocommerce-billing-fields__field-wrapper,
.mg-checkout-details .woocommerce-shipping-fields__field-wrapper {
	gap: 15px;
	padding: 18px;
	border: 1px solid #e9eaee;
	border-radius: 18px;
	background: #fbfbfc;
}

.mg-checkout-details .input-text,
.mg-checkout-details select,
.mg-checkout-details .select2-selection {
	min-height: 52px;
	background: #fff;
	border-color: #dfe2e8;
	border-radius: 13px;
}

.mg-checkout-edit-cart {
	background: #fff9e9;
}

.mg-checkout-order .woocommerce-checkout-review-order-table {
	margin: 18px 0 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	table-layout: fixed;
}

.mg-checkout-order .shop_table tbody tr {
	border-bottom: 1px solid #eceef2;
}

.mg-checkout-order .shop_table tbody td {
	padding: 16px 0;
	background: transparent;
	vertical-align: middle;
}

.mg-checkout-order .shop_table tbody td.product-name {
	width: auto;
	padding-right: 12px;
}

.mg-checkout-order .shop_table tbody td.product-total {
	width: 92px;
	color: #151922;
	font-size: 13px;
	font-weight: 900;
	text-align: right;
}

.mg-checkout-product {
	display: grid;
	grid-template-columns: 68px minmax(0, 1fr);
	align-items: center;
	gap: 13px;
}

.mg-checkout-product__media,
.mg-checkout-product__media a {
	display: block;
}

.mg-checkout-product__media img {
	display: block;
	width: 68px;
	height: 68px;
	margin: 0;
	border: 1px solid #e2e4e9;
	border-radius: 14px;
	background: #f5f6f8;
	object-fit: cover;
}

.mg-checkout-product__copy {
	min-width: 0;
}

.mg-checkout-product__title-row {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 8px;
}

.mg-checkout-product__title {
	color: #151922;
	font-size: 13px;
	font-weight: 900;
	line-height: 1.35;
}

.mg-checkout-product__quantity {
	flex: 0 0 auto;
	padding: 4px 7px;
	border-radius: 999px;
	background: #fff0c4;
	color: #805700;
	font-size: 9px;
	font-weight: 900;
}

.mg-checkout-product__copy dl.variation {
	margin-top: 8px;
	padding: 8px 10px;
	border-radius: 10px;
	background: #f5f6f8;
	font-size: 10px;
}

.mg-checkout-order .shop_table tfoot th,
.mg-checkout-order .shop_table tfoot td {
	padding: 12px 0;
	background: transparent;
	border-bottom: 1px solid #eceef2;
	font-size: 12px;
}

.mg-checkout-order .shop_table tfoot td {
	text-align: right;
}

.mg-checkout-order .shop_table .order-total th,
.mg-checkout-order .shop_table .order-total td {
	padding: 16px 0 10px;
	border-bottom: 0;
	font-size: 17px;
}

.mg-checkout-order .shop_table .order-total .amount {
	font-size: 24px;
}

/* Keep mixed-script currencies such as AED together in their natural
   symbol-first order. WooCommerce wraps prices in a BDI element, whose
   automatic direction otherwise places the Arabic symbol at the clipped
   edge of the amount on narrow screens. */
body.woocommerce-checkout .mg-checkout-order .woocommerce-checkout-review-order-table .woocommerce-Price-amount,
body.woocommerce-checkout .mg-checkout-order .woocommerce-checkout-review-order-table .woocommerce-Price-amount bdi {
	display: inline-flex !important;
	align-items: baseline;
	direction: ltr;
	unicode-bidi: isolate;
	white-space: nowrap;
}

body.woocommerce-checkout .mg-checkout-order .woocommerce-checkout-review-order-table .woocommerce-Price-currencySymbol {
	direction: rtl;
	unicode-bidi: isolate;
	margin-right: 3px;
}

.mg-checkout-payment-target:empty {
	display: none;
}

body.woocommerce-checkout .mg-checkout-payment-panel #payment {
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
}

.mg-checkout-payment-panel #payment ul.payment_methods {
	margin: 0;
	padding: 0;
	border: 0;
}

body.woocommerce-checkout .mg-checkout-payment-panel #payment ul.payment_methods li {
	position: relative;
	margin: 0 0 12px;
	padding: 16px;
	border: 1px solid #dfe2e8 !important;
	border-radius: 16px;
	background: #fff;
	transition: border-color .18s ease, background .18s ease, box-shadow .18s ease;
}

body.woocommerce-checkout .mg-checkout-payment-panel #payment ul.payment_methods li:has(input:checked) {
	border-color: #efa900 !important;
	background: #fffbef;
	box-shadow: 0 0 0 2px rgba(242, 168, 0, .1);
}

.mg-checkout-payment-panel #payment ul.payment_methods li > input[type="radio"] {
	accent-color: #f2a800;
}

.mg-checkout-payment-panel #payment ul.payment_methods li > label {
	color: #171b24;
	font-size: 14px;
	font-weight: 900;
}

body.woocommerce-checkout .mg-checkout-payment-panel #payment div.payment_box {
	margin: 13px 0 0;
	padding: 13px 14px;
	border: 0 !important;
	border-radius: 11px;
	background: #f6f7f9;
	color: #646d7c;
	font-size: 11px;
	line-height: 1.55;
}

.mg-checkout-payment-panel #payment div.payment_box::before {
	display: none;
}

.mg-checkout-payment-panel #payment .place-order {
	margin: 0;
	padding: 8px 0 0;
}

.mg-checkout-payment-panel #payment .woocommerce-privacy-policy-text {
	margin: 0 0 10px;
	padding: 11px 13px;
	border-radius: 11px;
	background: #f6f7f9;
	color: #6c7482;
	font-size: 10px;
	line-height: 1.5;
}

.mg-checkout-payment-panel #payment .woocommerce-terms-and-conditions-wrapper {
	margin-bottom: 12px;
}

body.woocommerce-checkout .mg-checkout-payment-panel #payment .woocommerce-terms-and-conditions {
	max-height: 210px;
	margin: 0 0 12px;
	padding: 16px 18px;
	border: 1px solid #dfe3e9;
	border-radius: 14px;
	background: linear-gradient(180deg, #fbfcfd 0%, #f6f7f9 100%);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .9);
	color: #525b6a;
	font-size: 13px;
	line-height: 1.65;
	scrollbar-color: #c7a037 #edf0f3;
	scrollbar-width: thin;
}

body.woocommerce-checkout .mg-checkout-payment-panel #payment .woocommerce-terms-and-conditions::-webkit-scrollbar {
	width: 8px;
}

body.woocommerce-checkout .mg-checkout-payment-panel #payment .woocommerce-terms-and-conditions::-webkit-scrollbar-track {
	border-radius: 999px;
	background: #edf0f3;
}

body.woocommerce-checkout .mg-checkout-payment-panel #payment .woocommerce-terms-and-conditions::-webkit-scrollbar-thumb {
	border: 2px solid #edf0f3;
	border-radius: 999px;
	background: #c7a037;
}

body.woocommerce-checkout .mg-checkout-payment-panel #payment .woocommerce-terms-and-conditions h1,
body.woocommerce-checkout .mg-checkout-payment-panel #payment .woocommerce-terms-and-conditions h2,
body.woocommerce-checkout .mg-checkout-payment-panel #payment .woocommerce-terms-and-conditions h3,
body.woocommerce-checkout .mg-checkout-payment-panel #payment .woocommerce-terms-and-conditions h4 {
	margin: 16px 0 8px;
	color: #171b24;
	font-size: 16px;
	font-weight: 900;
	letter-spacing: -.01em;
	line-height: 1.35;
}

body.woocommerce-checkout .mg-checkout-payment-panel #payment .woocommerce-terms-and-conditions h1:first-child,
body.woocommerce-checkout .mg-checkout-payment-panel #payment .woocommerce-terms-and-conditions h2:first-child,
body.woocommerce-checkout .mg-checkout-payment-panel #payment .woocommerce-terms-and-conditions h3:first-child,
body.woocommerce-checkout .mg-checkout-payment-panel #payment .woocommerce-terms-and-conditions h4:first-child {
	margin-top: 0;
}

body.woocommerce-checkout .mg-checkout-payment-panel #payment .woocommerce-terms-and-conditions p,
body.woocommerce-checkout .mg-checkout-payment-panel #payment .woocommerce-terms-and-conditions li {
	color: #525b6a;
	font-size: 13px !important;
	line-height: 1.65 !important;
}

body.woocommerce-checkout .mg-checkout-payment-panel #payment .woocommerce-terms-and-conditions p {
	margin: 0 0 10px;
}

body.woocommerce-checkout .mg-checkout-payment-panel #payment .woocommerce-terms-and-conditions ul,
body.woocommerce-checkout .mg-checkout-payment-panel #payment .woocommerce-terms-and-conditions ol {
	margin: 0 0 12px;
	padding-left: 20px;
}

body.woocommerce-checkout .mg-checkout-payment-panel #payment .woocommerce-terms-and-conditions a {
	color: #895b00;
	font-weight: 800;
	text-decoration: underline;
	text-underline-offset: 2px;
}

.mg-checkout-payment-panel #payment .validate-required {
	margin: 0;
	padding: 14px 15px;
	border: 1px solid #eadba8;
	border-radius: 14px;
	background: #fffaf0;
	font-size: 11px;
	line-height: 1.45;
}

.mg-checkout-payment-panel #payment .validate-required label {
	display: flex;
	align-items: flex-start;
	gap: 9px;
}

.mg-checkout-payment-panel #payment .validate-required input[type="checkbox"] {
	flex: 0 0 auto;
	width: 18px;
	height: 18px;
	margin-top: 1px;
	accent-color: #f2a800;
}

.mg-checkout-payment-panel #payment .validate-required .woocommerce-terms-and-conditions-checkbox-text {
	color: #303744;
	font-size: 12px;
	line-height: 1.55;
}

.mg-checkout-payment-panel #payment .validate-required .required {
	margin-left: 2px;
	border: 0;
	color: #b94035;
	text-decoration: none;
}

body.woocommerce-checkout .mg-checkout-payment-panel #payment #place_order {
	float: none;
	width: 100%;
	min-height: 56px;
	margin-top: 14px;
	border: 0;
	border-radius: 14px;
	background: linear-gradient(135deg, #ffc236 0%, #f4a600 100%);
	box-shadow: 0 12px 25px rgba(210, 142, 0, .2);
	color: #11151e;
	font-size: 14px;
	font-weight: 950;
}

body.woocommerce-checkout .mg-checkout-payment-panel #payment #place_order:hover,
body.woocommerce-checkout .mg-checkout-payment-panel #payment #place_order:focus {
	background: linear-gradient(135deg, #ffd060 0%, #f7ae00 100%);
	box-shadow: 0 15px 28px rgba(210, 142, 0, .25);
	transform: translateY(-1px);
}

.mg-checkout-assurance--summary {
	grid-template-columns: 1fr;
	gap: 0;
	margin-top: 14px;
	padding: 7px 13px;
	border-color: #e7e9ed;
	border-radius: 14px;
	background: #f7f8fa;
	box-shadow: none;
	color: #333a47;
}

.mg-checkout-assurance--summary span {
	justify-content: flex-start;
	min-height: 32px;
	font-size: 10px;
}

.mg-checkout-assurance--summary span + span {
	border-top: 1px solid #e7e9ed;
}

@media (max-width: 980px) {
	.mg-checkout-layout {
		grid-template-columns: 1fr;
		grid-template-areas:
			"details"
			"summary"
			"payment";
	}

	.mg-checkout-order {
		position: static;
	}
}

@media (max-width: 700px) {
	.mg-checkout-page {
		width: min(calc(100% - 24px), 1320px);
		margin-top: 18px;
	}

	.mg-checkout-hero {
		min-height: 0;
		padding: 24px 20px;
	}

	.mg-checkout-page .woocommerce-form-coupon-toggle {
		justify-content: stretch;
	}

	.mg-checkout-promo-toggle {
		width: 100%;
	}

	.mg-checkout-promo-toggle__copy small {
		display: none;
	}

	.mg-checkout-page .woocommerce-form-coupon-toggle .showcoupon {
		width: auto;
	}

	.mg-checkout-panel {
		padding: 18px 15px;
		border-radius: 20px;
	}

	.mg-checkout-section-heading {
		gap: 10px;
	}

	.mg-checkout-step-mark,
	.mg-checkout-summary-mark {
		flex-basis: 42px;
		width: 42px;
		height: 42px;
		border-radius: 13px;
	}

	.mg-checkout-section-heading h2 {
		font-size: 23px;
	}

	.mg-checkout-helper {
		margin: 0 0 16px;
	}

	.mg-checkout-details .woocommerce-billing-fields__field-wrapper,
	.mg-checkout-details .woocommerce-shipping-fields__field-wrapper {
		padding: 14px;
	}

	.mg-checkout-product {
		grid-template-columns: 52px minmax(0, 1fr);
		align-items: start;
		gap: 10px;
	}

	.mg-checkout-product__media img {
		width: 52px;
		height: 52px;
		border-radius: 12px;
	}

	.mg-checkout-product__copy {
		display: block;
		min-width: 0;
	}

	.mg-checkout-product__title-row {
		min-width: 0;
	}

	.mg-checkout-product__title {
		min-width: 0;
		overflow-wrap: anywhere;
	}

	body.woocommerce-checkout .mg-checkout-order .mg-checkout-product__copy dl.variation {
		box-sizing: border-box;
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0;
		grid-template-columns: minmax(0, 1fr) auto !important;
	}

	body.woocommerce-checkout .mg-checkout-order .shop_table tbody tr,
	body.woocommerce-checkout .mg-checkout-order .shop_table tbody td {
		background: #fff !important;
	}

	body.woocommerce-checkout .mg-checkout-order .shop_table tbody td.product-name {
		padding-left: 10px !important;
		padding-right: 8px !important;
	}

	body.woocommerce-checkout .mg-checkout-order .shop_table tbody td.product-total {
		box-sizing: border-box;
		width: 82px !important;
		padding-right: 10px !important;
		font-size: 12px;
		text-align: right;
		white-space: nowrap;
	}

	body.woocommerce-checkout .mg-checkout-order .shop_table tfoot td {
		box-sizing: border-box;
		padding-right: 4px !important;
		white-space: nowrap;
	}
}

@media (max-width: 360px) {
	.mg-checkout-product {
		grid-template-columns: 46px minmax(0, 1fr);
	}

	.mg-checkout-product__media img {
		width: 46px;
		height: 46px;
	}

	.mg-checkout-product__title-row {
		align-items: flex-start;
		flex-direction: column;
		gap: 5px;
	}

	body.woocommerce-checkout .mg-checkout-order .mg-checkout-product__copy dl.variation {
		grid-template-columns: minmax(0, 1fr) !important;
		gap: 2px;
	}

	body.woocommerce-checkout .mg-checkout-order .mg-checkout-product__copy dl.variation dd + dt {
		margin-top: 4px;
	}
}

@media (max-width: 700px) {
	body.woocommerce-checkout .mg-checkout-payment-panel #payment .woocommerce-terms-and-conditions {
		max-height: 175px;
		padding: 13px 14px;
		font-size: 12px;
	}

	body.woocommerce-checkout .mg-checkout-payment-panel #payment .woocommerce-terms-and-conditions h1,
	body.woocommerce-checkout .mg-checkout-payment-panel #payment .woocommerce-terms-and-conditions h2,
	body.woocommerce-checkout .mg-checkout-payment-panel #payment .woocommerce-terms-and-conditions h3,
	body.woocommerce-checkout .mg-checkout-payment-panel #payment .woocommerce-terms-and-conditions h4 {
		font-size: 14px;
	}

	body.woocommerce-checkout .mg-checkout-payment-panel #payment .woocommerce-terms-and-conditions p,
body.woocommerce-checkout .mg-checkout-payment-panel #payment .woocommerce-terms-and-conditions li {
		font-size: 12px !important;
	}
}

@media (min-width: 701px) and (max-width: 980px) {
	body.woocommerce-checkout .mg-checkout-order .mg-checkout-assurance--summary {
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
		gap: 0 !important;
		padding: 9px 10px !important;
	}

	body.woocommerce-checkout .mg-checkout-order .mg-checkout-assurance--summary span {
		justify-content: center;
		min-width: 0;
		min-height: 42px;
		padding: 0 12px;
		text-align: center;
	}

body.woocommerce-checkout .mg-checkout-order .mg-checkout-assurance--summary span + span {
		border-top: 0 !important;
		border-left: 1px solid #e7e9ed;
	}
}

/* Modern logged-out account access */
body.woocommerce-account:not(.logged-in) {
	background: #f3f4f6;
}

body.woocommerce-account:not(.logged-in) .site-main .woocommerce {
	width: min(1180px, calc(100% - 48px));
	margin: 46px auto 88px;
}

body.woocommerce-account:not(.logged-in) .woocommerce > .woocommerce-error,
body.woocommerce-account:not(.logged-in) .woocommerce > .woocommerce-message,
body.woocommerce-account:not(.logged-in) .woocommerce > .woocommerce-info,
body.woocommerce-account:not(.logged-in) .woocommerce-notices-wrapper {
	box-sizing: border-box;
	width: 100%;
	margin: 0 0 18px;
}

body.woocommerce-account:not(.logged-in) .woocommerce-error,
body.woocommerce-account:not(.logged-in) .woocommerce-message,
body.woocommerce-account:not(.logged-in) .woocommerce-info {
	padding: 15px 18px 15px 52px;
	color: #7d2530;
	background: #fff5f5;
	border: 1px solid #f1cbd0;
	border-radius: 14px;
	box-shadow: 0 8px 24px rgba(22, 29, 42, .05);
}

.mg-auth-page {
	display: grid;
	grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr);
	gap: 26px;
	color: var(--mg-ink);
}

.mg-auth-page *,
.mg-auth-page *::before,
.mg-auth-page *::after {
	box-sizing: border-box;
}

.mg-auth-intro,
.mg-auth-card {
	min-width: 0;
	border-radius: 28px;
	box-shadow: 0 22px 58px rgba(21, 27, 39, .10);
}

.mg-auth-intro {
	position: relative;
	min-height: 620px;
	padding: 52px 46px;
	overflow: hidden;
	background: linear-gradient(135deg, #ffdc78 0%, #ffc235 54%, #f5a800 100%);
	border: 1px solid rgba(208, 138, 0, .35);
}

.mg-auth-intro::before,
.mg-auth-intro::after {
	position: absolute;
	content: "";
	pointer-events: none;
	border: 40px solid rgba(255, 255, 255, .2);
	border-radius: 50%;
}

.mg-auth-intro::before {
	width: 330px;
	height: 330px;
	right: -120px;
	top: -100px;
}

.mg-auth-intro::after {
	width: 260px;
	height: 260px;
	left: -120px;
	bottom: -140px;
}

.mg-auth-intro__icon {
	position: relative;
	z-index: 1;
	display: grid;
	width: 74px;
	height: 74px;
	margin-bottom: 54px;
	place-items: center;
	color: #fff;
	background: #151922;
	border: 8px solid rgba(255, 255, 255, .42);
	border-radius: 24px;
	transform: rotate(-4deg);
}

.mg-auth-intro__icon svg {
	width: 38px;
	height: 38px;
	fill: none;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.8;
}

.mg-auth-eyebrow {
	position: relative;
	z-index: 1;
	margin: 0 0 10px;
	color: #7b5200;
	font-size: 12px;
	font-weight: 900;
	letter-spacing: .14em;
	line-height: 1.3;
	text-transform: uppercase;
}

body.woocommerce-account:not(.logged-in) .mg-auth-intro h1 {
	position: relative;
	z-index: 1;
	max-width: 440px;
	margin: 0;
	color: #14171f !important;
	font-size: clamp(48px, 5.1vw, 72px);
	font-weight: 950 !important;
	letter-spacing: -.06em;
	line-height: .96;
}

.mg-auth-intro__copy {
	position: relative;
	z-index: 1;
	max-width: 440px;
	margin: 20px 0 38px;
	color: #493f2d;
	font-size: 17px;
	line-height: 1.6;
}

.mg-auth-benefits {
	position: relative;
	z-index: 1;
	display: grid;
	gap: 12px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.mg-auth-benefits li {
	display: flex;
	align-items: center;
	gap: 13px;
	padding: 13px 15px;
	background: rgba(255, 255, 255, .54);
	border: 1px solid rgba(255, 255, 255, .62);
	border-radius: 15px;
	backdrop-filter: blur(5px);
}

.mg-auth-benefits li > span {
	display: grid;
	flex: 0 0 40px;
	width: 40px;
	height: 40px;
	place-items: center;
	color: #8b5e00;
	background: #fff4ce;
	border-radius: 12px;
}

.mg-auth-benefits svg {
	width: 21px;
	height: 21px;
	fill: none;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.8;
}

.mg-auth-benefits strong,
.mg-auth-benefits small {
	display: block;
}

.mg-auth-benefits strong {
	font-size: 14px;
	font-weight: 850;
}

.mg-auth-benefits small {
	margin-top: 2px;
	color: #615844;
	font-size: 12px;
}

.mg-auth-card {
	align-self: center;
	padding: 34px;
	background: #fff;
	border: 1px solid #e2e5e9;
}

.mg-auth-tabs {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 6px;
	margin-bottom: 32px;
	padding: 6px;
	background: #f2f3f5;
	border: 1px solid #e6e8ec;
	border-radius: 16px;
}

.mg-auth-tabs .mg-auth-tab {
	min-height: 48px;
	padding: 10px 16px;
	color: #626a78;
	background: transparent;
	border: 0;
	border-radius: 11px;
	box-shadow: none;
	font-size: 14px;
	font-weight: 850;
	line-height: 1.2;
}

.mg-auth-tabs .mg-auth-tab:hover {
	color: #151922;
	background: #fff7df;
}

.mg-auth-tabs .mg-auth-tab[aria-selected="true"],
.mg-auth-tabs .mg-auth-tab.is-active {
	color: #fff;
	background: #151922;
	box-shadow: 0 8px 20px rgba(21, 25, 34, .15);
}

.mg-auth-tabs .mg-auth-tab:focus-visible {
	outline: 3px solid rgba(242, 168, 0, .34);
	outline-offset: 2px;
}

.mg-auth-page.is-enhanced .mg-auth-panel[hidden] {
	display: none !important;
}

.mg-auth-panel__header {
	margin-bottom: 27px;
}

.mg-auth-panel__header h2 {
	margin: 0;
	color: #151922;
	font-size: clamp(30px, 3vw, 42px);
	font-weight: 950;
	letter-spacing: -.045em;
	line-height: 1.05;
}

.mg-auth-panel__header > p:last-child {
	margin: 10px 0 0;
	color: #687080;
	font-size: 14px;
	line-height: 1.55;
}

body.woocommerce-account:not(.logged-in) .mg-auth-form.login,
body.woocommerce-account:not(.logged-in) .mg-auth-form.register {
	margin: 0;
	padding: 0;
	border: 0;
}

.mg-auth-form .form-row {
	margin: 0 0 18px;
	padding: 0;
}

.mg-auth-form label {
	display: block;
	margin: 0 0 8px;
	color: #272c35;
	font-size: 13px;
	font-weight: 800;
}

.mg-auth-form input[type="text"],
.mg-auth-form input[type="email"],
.mg-auth-form input[type="password"] {
	width: 100%;
	height: 54px;
	padding: 0 15px;
	color: #171b24;
	background: #fbfbfc;
	border: 1px solid #d9dde4;
	border-radius: 13px;
	box-shadow: none;
	font-family: var(--mg-font);
	font-size: 15px;
}

.mg-auth-form input[type="text"]:hover,
.mg-auth-form input[type="email"]:hover,
.mg-auth-form input[type="password"]:hover {
	background: #fff;
	border-color: #c4c9d1;
}

.mg-auth-form input[type="text"]:focus,
.mg-auth-form input[type="email"]:focus,
.mg-auth-form input[type="password"]:focus {
	background: #fff;
	border-color: #f2a800;
	box-shadow: 0 0 0 4px rgba(242, 168, 0, .14);
	outline: 0;
}

.mg-auth-form__options {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	margin: 2px 0 22px;
}

.mg-auth-form__options .woocommerce-form-login__rememberme {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin: 0;
	font-weight: 650;
}

.mg-auth-form__options input[type="checkbox"] {
	width: 18px;
	height: 18px;
	margin: 0;
	accent-color: #f2a800;
}

.mg-auth-form__options a {
	color: #7f5700;
	font-size: 13px;
	font-weight: 800;
	text-decoration: none;
}

.mg-auth-form__options a:hover {
	color: #151922;
	text-decoration: underline;
}

body.woocommerce-account:not(.logged-in) .mg-auth-submit {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 54px;
	padding: 13px 18px;
	color: #11151d;
	background: #f7aa00;
	border: 1px solid #e69d00;
	border-radius: 13px;
	box-shadow: 0 12px 26px rgba(242, 168, 0, .23);
	font-size: 15px;
	font-weight: 900;
}

body.woocommerce-account:not(.logged-in) .mg-auth-submit:hover {
	color: #fff;
	background: #151922;
	border-color: #151922;
	box-shadow: 0 13px 28px rgba(21, 25, 34, .2);
	transform: translateY(-1px);
}

.mg-auth-form__hint {
	margin: 0 0 19px;
	padding: 13px 14px;
	color: #5a4b2c;
	background: #fff8e5;
	border: 1px solid #f1d99c;
	border-radius: 12px;
	font-size: 13px;
	line-height: 1.5;
}

.mg-auth-card__support {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	margin: 24px 0 0;
	padding-top: 21px;
	color: #687080;
	border-top: 1px solid #eceef1;
	font-size: 12px;
	font-weight: 700;
}

.mg-auth-card__support svg {
	width: 18px;
	height: 18px;
	fill: none;
	stroke: #aa7300;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.8;
}

@media (max-width: 820px) {
	body.woocommerce-account:not(.logged-in) .site-main .woocommerce {
		width: min(100% - 28px, 640px);
		margin: 24px auto 72px;
	}

	.mg-auth-page {
		grid-template-columns: 1fr;
		gap: 16px;
	}

	.mg-auth-intro {
		min-height: 0;
		padding: 28px;
	}

	.mg-auth-intro__icon {
		width: 56px;
		height: 56px;
		margin-bottom: 24px;
		border-width: 6px;
		border-radius: 18px;
	}

	.mg-auth-intro__icon svg {
		width: 29px;
		height: 29px;
	}

	.mg-auth-intro h1 {
		font-size: clamp(38px, 11vw, 52px);
	}

	.mg-auth-intro__copy {
		margin: 13px 0 24px;
		font-size: 14px;
	}

	.mg-auth-benefits {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 8px;
	}

	.mg-auth-benefits li {
		align-items: flex-start;
		padding: 11px;
	}

	.mg-auth-benefits li > span {
		flex-basis: 34px;
		width: 34px;
		height: 34px;
	}

	.mg-auth-benefits small {
		display: none;
	}

	.mg-auth-card {
		padding: 25px;
	}
}

@media (max-width: 520px) {
	body.woocommerce-account:not(.logged-in) .site-main .woocommerce {
		width: min(100% - 20px, 480px);
		margin-top: 16px;
	}

	.mg-auth-intro,
	.mg-auth-card {
		border-radius: 22px;
	}

	.mg-auth-intro {
		padding: 24px 20px;
	}

	.mg-auth-intro__icon {
		display: none;
	}

	.mg-auth-benefits {
		grid-template-columns: 1fr;
	}

	.mg-auth-benefits li {
		align-items: center;
	}

	.mg-auth-benefits li:nth-child(n + 3) {
		display: none;
	}

	.mg-auth-benefits small {
		display: block;
	}

	.mg-auth-card {
		padding: 20px 16px;
	}

	.mg-auth-tabs {
		margin-bottom: 25px;
	}

	.mg-auth-panel__header h2 {
		font-size: 30px;
	}

	.mg-auth-form__options {
		align-items: flex-start;
		flex-direction: column;
		gap: 10px;
	}
}

/* Keep the checkout assurances in one compact row at every breakpoint. */
body.woocommerce-checkout .mg-checkout-order .mg-checkout-assurance--summary {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: 0 !important;
	padding: 8px 6px !important;
}

body.woocommerce-checkout .mg-checkout-order .mg-checkout-assurance--summary span {
	justify-content: center !important;
	min-width: 0;
	min-height: 38px;
	padding: 0 5px;
	font-size: 9px;
	line-height: 1.2;
	text-align: center;
	white-space: nowrap;
}

body.woocommerce-checkout .mg-checkout-order .mg-checkout-assurance--summary span + span {
	border-top: 0 !important;
	border-left: 1px solid #e0e3e8 !important;
}

body.woocommerce-checkout .mg-checkout-order .mg-checkout-assurance--summary svg {
	flex: 0 0 15px;
	width: 15px;
	height: 15px;
}

/* Checkout order items: separated cards instead of table stripes */
body.woocommerce-checkout .mg-checkout-order .woocommerce-checkout-review-order-table {
	display: block !important;
	box-sizing: border-box;
	width: 100% !important;
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
}

body.woocommerce-checkout .mg-checkout-order .shop_table tbody {
	display: grid;
	box-sizing: border-box;
	gap: 12px;
	width: 100% !important;
	padding: 0;
}

body.woocommerce-checkout .mg-checkout-order .shop_table tbody tr.cart_item {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 96px;
	align-items: center;
	box-sizing: border-box;
	width: 100%;
	margin: 0;
	overflow: hidden;
	background: #fff !important;
	border: 1px solid #e1e5eb !important;
	border-radius: 16px;
	box-shadow: 0 6px 18px rgba(22, 28, 39, .055);
}

body.woocommerce-checkout .mg-checkout-order .shop_table tbody tr.cart_item:nth-child(even),
body.woocommerce-checkout .mg-checkout-order .shop_table tbody tr.cart_item:nth-child(odd),
body.woocommerce-checkout .mg-checkout-order .shop_table tbody tr.cart_item td {
	background: #fff !important;
}

body.woocommerce-checkout .mg-checkout-order .shop_table tbody tr.cart_item td {
	display: block;
	box-sizing: border-box;
	min-width: 0;
	border: 0 !important;
}

body.woocommerce-checkout .mg-checkout-order .shop_table tbody tr.cart_item td.product-name {
	width: auto !important;
	padding: 14px !important;
}

body.woocommerce-checkout .mg-checkout-order .shop_table tbody tr.cart_item td.product-total {
	width: auto !important;
	padding: 14px 14px 14px 10px !important;
	color: #151922;
	background: #fff !important;
	font-size: 13px;
	font-weight: 900;
	text-align: right;
	white-space: nowrap;
}

body.woocommerce-checkout .mg-checkout-order .shop_table tbody + tfoot::before {
	display: block;
	height: 12px;
	content: "";
}

body.woocommerce-checkout .mg-checkout-order .shop_table tfoot {
	display: table;
	box-sizing: border-box;
	width: 100% !important;
	margin-top: 12px;
	table-layout: fixed;
}

@media (max-width: 520px) {
	body.woocommerce-checkout .mg-checkout-order .shop_table tbody tr.cart_item {
		grid-template-columns: minmax(0, 1fr) 76px;
		border-radius: 14px;
	}

	body.woocommerce-checkout .mg-checkout-order .shop_table tbody tr.cart_item td.product-name {
		padding: 12px !important;
	}

	body.woocommerce-checkout .mg-checkout-order .shop_table tbody tr.cart_item td.product-total {
		padding: 12px 10px 12px 4px !important;
		font-size: 12px;
	}

	body.woocommerce-checkout .mg-checkout-order .mg-checkout-product {
		grid-template-columns: 52px minmax(0, 1fr);
		gap: 10px;
	}

	body.woocommerce-checkout .mg-checkout-order .mg-checkout-product__media img {
		width: 52px;
		height: 52px;
		border-radius: 11px;
	}
}

/* Checkout summary: one clean list, without overlapping rounded row frames. */
body.woocommerce-checkout .mg-checkout-order .shop_table tbody {
	gap: 0;
	overflow: hidden;
	background: #fff;
	border: 1px solid #e1e5eb;
	border-radius: 16px;
}

body.woocommerce-checkout .mg-checkout-order .shop_table tbody tr.cart_item {
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
}

body.woocommerce-checkout .mg-checkout-order .shop_table tbody tr.cart_item + tr.cart_item {
	border-top: 1px solid #e5e8ed !important;
}

body.woocommerce-checkout .mg-checkout-order .shop_table tbody + tfoot::before {
	display: none;
	content: none;
}

body.woocommerce-checkout .mg-checkout-order .shop_table tfoot {
	display: grid !important;
	gap: 0;
	width: 100% !important;
	margin-top: 14px;
	overflow: hidden;
	background: #fffaf0;
	border: 1px solid #eedaa6;
	border-radius: 14px;
	table-layout: auto;
}

body.woocommerce-checkout .mg-checkout-order .shop_table tfoot tr {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
	width: 100%;
	min-height: 46px;
	background: transparent !important;
}

body.woocommerce-checkout .mg-checkout-order .shop_table tfoot tr + tr {
	border-top: 1px solid #eedaa6;
}

body.woocommerce-checkout .mg-checkout-order .shop_table tfoot th,
body.woocommerce-checkout .mg-checkout-order .shop_table tfoot td,
body.woocommerce-checkout .mg-checkout-order #order_review .shop_table .order-total th,
body.woocommerce-checkout .mg-checkout-order #order_review .shop_table .order-total td {
	display: block !important;
	width: auto !important;
	padding: 10px 14px !important;
	border: 0 !important;
	background: transparent !important;
	line-height: 1.25;
}

body.woocommerce-checkout .mg-checkout-order .shop_table tfoot td {
	justify-self: end;
	text-align: right;
	white-space: nowrap;
}

body.woocommerce-checkout .mg-checkout-order .shop_table .cart-subtotal th,
body.woocommerce-checkout .mg-checkout-order .shop_table .cart-subtotal td {
	color: #626a78;
	font-size: 13px;
	font-weight: 750;
}

body.woocommerce-checkout .mg-checkout-order #order_review .shop_table .order-total th {
	font-size: 16px;
	font-weight: 900;
}

body.woocommerce-checkout .mg-checkout-order #order_review .shop_table .order-total td {
	font-size: 22px;
	font-weight: 900;
}

/* Keep RTL currency symbols, such as AED, beside the amount in visual order. */
body.woocommerce-checkout .mg-checkout-order .woocommerce-Price-amount > bdi {
	display: inline-flex !important;
	align-items: baseline;
	gap: .22em;
	direction: ltr !important;
	unicode-bidi: isolate !important;
	white-space: nowrap;
}

body.woocommerce-checkout .mg-checkout-order .woocommerce-Price-currencySymbol {
	display: inline-block !important;
	direction: ltr !important;
	unicode-bidi: bidi-override !important;
}

@media (max-width: 520px) {
	body.woocommerce-checkout .mg-checkout-order .shop_table tbody {
		gap: 0 !important;
		border-radius: 14px;
	}

	body.woocommerce-checkout .mg-checkout-order .shop_table tbody tr.cart_item {
		grid-template-columns: minmax(0, 1fr) 68px !important;
		border: 0 !important;
		border-radius: 0 !important;
		box-shadow: none !important;
	}

	body.woocommerce-checkout .mg-checkout-order .shop_table tbody tr.cart_item + tr.cart_item {
		border-top: 1px solid #e5e8ed !important;
	}

	body.woocommerce-checkout .mg-checkout-order .shop_table tbody tr.cart_item td.product-total {
		display: flex !important;
		align-items: center;
		justify-content: flex-end;
		box-sizing: border-box !important;
		width: 68px !important;
		min-width: 0 !important;
		max-width: 68px;
		padding: 12px 8px 12px 0 !important;
		overflow: visible;
		font-size: 12px !important;
	}

	body.woocommerce-checkout .mg-checkout-order .shop_table tbody tr.cart_item td.product-total .woocommerce-Price-amount > bdi {
		gap: .14em;
	}

	body.woocommerce-checkout .mg-checkout-order .shop_table tfoot {
		margin-top: 12px;
		border-radius: 12px;
	}
}

/* Keep every dashboard shortcut card edge visible on the white account panel. */
body.woocommerce-account .mg-account-quick-card {
	border-color: #dce1e7;
	box-shadow: inset 0 -1px 0 rgba(79, 88, 103, .14);
}

body.woocommerce-account .mg-account-quick-card:hover {
	border-color: #e5bb4e;
	box-shadow: inset 0 -1px 0 rgba(145, 94, 0, .18), 0 12px 28px rgba(44, 34, 10, .09);
}

/* Join checkout products and totals into one continuous summary surface. */
body.woocommerce-checkout .mg-checkout-order .shop_table tbody {
	border-bottom: 0;
	border-radius: 16px 16px 0 0;
}

body.woocommerce-checkout .mg-checkout-order .shop_table tfoot {
	margin-top: 0;
	border-color: #e1e5eb;
	border-top-color: #e7c76f;
	border-radius: 0 0 14px 14px;
}

@media (max-width: 520px) {
	body.woocommerce-checkout .mg-checkout-order .shop_table tbody {
		border-radius: 14px 14px 0 0;
	}

	body.woocommerce-checkout .mg-checkout-order .shop_table tfoot {
		margin-top: 0;
		border-radius: 0 0 12px 12px;
	}
}

/* Modern checkout totals: quiet subtotal with a strong final-total bar. */
body.woocommerce-checkout .mg-checkout-order .shop_table tfoot {
	background: #fff;
	border-color: #e1e5eb;
	box-shadow: 0 8px 22px rgba(25, 30, 42, .07);
}

body.woocommerce-checkout .mg-checkout-order .shop_table tfoot tr.cart-subtotal {
	min-height: 44px;
	background: #f6f7f9 !important;
}

body.woocommerce-checkout .mg-checkout-order .shop_table tfoot tr.order-total {
	min-height: 58px;
	background: transparent !important;
	border-top: 0;
}

body.woocommerce-checkout .mg-checkout-order .shop_table tfoot tr + tr {
	border-top: 0;
}

body.woocommerce-checkout .mg-checkout-order .shop_table .cart-subtotal th,
body.woocommerce-checkout .mg-checkout-order .shop_table .cart-subtotal td {
	padding: 11px 16px !important;
	color: #606978 !important;
}

body.woocommerce-checkout .mg-checkout-order #order_review .shop_table .order-total th,
body.woocommerce-checkout .mg-checkout-order #order_review .shop_table .order-total td {
	display: flex !important;
	align-items: center;
	min-height: 58px;
	padding: 14px 16px !important;
	color: #fff !important;
	background: #171a22 !important;
}

body.woocommerce-checkout .mg-checkout-order #order_review .shop_table .order-total th {
	border-radius: 0;
}

body.woocommerce-checkout .mg-checkout-order #order_review .shop_table .order-total td {
	justify-content: flex-end;
	background: #202531 !important;
	border-radius: 0;
}

body.woocommerce-checkout .mg-checkout-order .shop_table .order-total .woocommerce-Price-amount,
body.woocommerce-checkout .mg-checkout-order .shop_table .order-total .woocommerce-Price-amount bdi,
body.woocommerce-checkout .mg-checkout-order .shop_table .order-total .woocommerce-Price-currencySymbol {
	color: #fff !important;
}

/* The order panel is already the card. Remove the second rounded frame around
   the product list so its corner arcs do not appear as detached borders. */
body.woocommerce-checkout .mg-checkout-order .woocommerce-checkout-review-order-table,
body.woocommerce-checkout .mg-checkout-order .shop_table tbody {
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
}

body.woocommerce-checkout .mg-checkout-order .shop_table tbody {
	overflow: visible;
	background: transparent;
}

body.woocommerce-checkout .mg-checkout-order .shop_table tfoot {
	border-right: 0 !important;
	border-bottom: 0 !important;
	border-left: 0 !important;
}

/* Phone verification: keep the Select2 country field on the same 48px
   baseline as the native phone input. WooCommerce's Select2 stylesheet adds
   a negative bottom margin and the verification plugin adds vertical padding,
   which together push the selected country text below the visible control. */
body.woocommerce-account .mg-otp-card .select2-container {
	display: block !important;
	width: 100% !important;
	height: 48px !important;
	vertical-align: top !important;
}

body.woocommerce-account .mg-otp-card .select2-container .selection {
	display: block !important;
	width: 100% !important;
	height: 48px !important;
}

body.woocommerce-account .mg-otp-card .select2-container .select2-selection--single {
	display: flex !important;
	align-items: center !important;
	width: 100% !important;
	height: 48px !important;
	min-height: 48px !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.woocommerce-account .mg-otp-card .select2-container .select2-selection__rendered {
	display: block !important;
	width: 100% !important;
	height: auto !important;
	padding: 0 44px 0 14px !important;
	line-height: 1.25 !important;
}

body.woocommerce-account .mg-otp-card .select2-container .select2-selection__arrow {
	top: 0 !important;
	right: 8px !important;
	display: grid !important;
	width: 24px !important;
	height: 48px !important;
	place-items: center !important;
}

body.woocommerce-account .mg-otp-card .select2-container .select2-selection__arrow b {
	position: static !important;
	margin: 0 !important;
	transform: none !important;
}

/* Compact desktop account navigation. Keep every destination visible while
   avoiding a full-height card for each endpoint. */
@media (min-width: 761px) {
	body.logged-in.woocommerce-account .mg-account-sidebar .mg-account-menu {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 8px !important;
		align-items: stretch !important;
		padding: 12px !important;
	}

	body.logged-in.woocommerce-account .mg-account-sidebar .mg-account-menu li,
	body.logged-in.woocommerce-account .mg-account-sidebar .mg-account-menu li + li {
		display: block !important;
		float: none !important;
		width: 100% !important;
		max-width: none !important;
		min-width: 0 !important;
		margin: 0 !important;
		padding: 0 !important;
		border: 0 !important;
	}

	body.logged-in.woocommerce-account .mg-account-sidebar .mg-account-menu a {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) !important;
		grid-template-rows: 36px auto !important;
		gap: 7px !important;
		align-content: center !important;
		align-items: center !important;
		justify-items: start !important;
		width: 100% !important;
		height: 100% !important;
		min-height: 84px !important;
		padding: 11px 12px !important;
		color: #3d4451 !important;
		background: #fff !important;
		border: 1px solid #e7e9ed !important;
		border-radius: 15px !important;
		box-shadow: none !important;
		font-size: 12.5px !important;
		font-weight: 760 !important;
		line-height: 1.2 !important;
		box-sizing: border-box !important;
		transform: none !important;
	}

	body.logged-in.woocommerce-account .mg-account-sidebar .mg-account-menu a:hover {
		color: #171a22 !important;
		background: #fffaf0 !important;
		border-color: #e9c76f !important;
		box-shadow: 0 7px 18px rgba(144, 94, 0, .08) !important;
	}

	body.logged-in.woocommerce-account .mg-account-sidebar .mg-account-menu__icon {
		width: 36px !important;
		height: 36px !important;
		border-radius: 10px !important;
	}

	body.logged-in.woocommerce-account .mg-account-sidebar .mg-account-menu__arrow,
	body.logged-in.woocommerce-account .mg-account-sidebar .mg-account-menu a::after {
		display: none !important;
		content: none !important;
	}

	body.logged-in.woocommerce-account .mg-account-sidebar .mg-account-menu .is-active a {
		color: #171717 !important;
		background: #fff6dc !important;
		border-color: #efbd3f !important;
		box-shadow: 0 8px 20px rgba(195, 132, 0, .1) !important;
	}

	body.logged-in.woocommerce-account .mg-account-sidebar .mg-account-menu .is-logout {
		grid-column: 1 / -1 !important;
		margin-top: 2px !important;
	}

	body.logged-in.woocommerce-account .mg-account-sidebar .mg-account-menu .is-logout a {
		grid-template-columns: 34px minmax(0, 1fr) !important;
		grid-template-rows: auto !important;
		gap: 10px !important;
		min-height: 48px !important;
		padding: 7px 11px !important;
		background: #f7f7f8 !important;
	}

	body.logged-in.woocommerce-account .mg-account-sidebar .mg-account-menu .is-logout .mg-account-menu__icon {
		width: 34px !important;
		height: 34px !important;
	}

	body.logged-in.woocommerce-account .mg-account-sidebar .mg-account-help {
		grid-template-columns: 38px minmax(0, 1fr);
		gap: 11px;
		margin: 4px 12px 14px;
		padding: 11px 13px;
		border-radius: 14px;
	}

	body.logged-in.woocommerce-account .mg-account-sidebar .mg-account-help__icon {
		width: 38px;
		height: 38px;
	}
}

/* Final typography pass: account utility screens use a calmer weight than
   storefront merchandising headings. */
body.logged-in.woocommerce-account .mg-account-content form:has(.license_key_template_table)::before,
body.logged-in.woocommerce-account .mg-account-content:has(> h3 + p > strong:first-child) > h3 {
	font-size: clamp(30px, 3vw, 40px) !important;
	font-weight: 800 !important;
	letter-spacing: -.028em !important;
}

body.logged-in.woocommerce-account .mg-account-content:has(> h3 + p > strong:first-child) > p:first-of-type {
	font-weight: 800 !important;
}

body.logged-in.woocommerce-account .mg-account-content:has(> h3 + p > strong:first-child) > p:first-of-type::after,
body.logged-in.woocommerce-account .mg-account-content:has(> h3 + p > strong:first-child) > p:nth-of-type(2),
body.logged-in.woocommerce-account .license_key_template_table tr:not(:first-child) td {
	font-weight: 700 !important;
}

@media (max-width: 700px) {
	body.logged-in.woocommerce-account .mg-account-content form:has(.license_key_template_table)::before,
	body.logged-in.woocommerce-account .mg-account-content:has(> h3 + p > strong:first-child) > h3 {
		font-size: 29px !important;
	}

	body.logged-in.woocommerce-account .mg-account-content:has(> h3 + p > strong:first-child) > p:first-of-type {
		font-size: 25px !important;
	}
}

/* License Key simplification: one account surface, no nested presentation
   frames. The key itself remains dark because it is the protected value. */
body.logged-in.woocommerce-account .mg-account-content:has(.license_key_template_table),
body.logged-in.woocommerce-account .mg-account-content:has(.key-container) {
	padding: clamp(26px, 3vw, 38px) !important;
	overflow: hidden !important;
	background: #fff !important;
	border: 1px solid #e2e5ea !important;
	border-radius: 20px !important;
	box-shadow: 0 16px 38px rgba(23, 26, 34, .075) !important;
}

body.logged-in.woocommerce-account .mg-account-content form:has(.license_key_template_table) {
	display: flex !important;
	flex-direction: column !important;
	gap: 0 !important;
}

body.logged-in.woocommerce-account .mg-account-content form:has(.license_key_template_table)::before {
	order: 1 !important;
	margin: 0 0 6px !important;
	font-size: clamp(28px, 3vw, 38px) !important;
	font-weight: 800 !important;
}

body.logged-in.woocommerce-account .mg-account-content form:has(.license_key_template_table)::after {
	order: 2 !important;
	margin: 0 0 22px !important;
	color: #687080 !important;
	font-size: 14px !important;
	font-weight: 500 !important;
}

body.logged-in.woocommerce-account .mg-account-content .license_key_template_table {
	order: 3 !important;
	margin: 0 !important;
	border-spacing: 0 !important;
}

body.logged-in.woocommerce-account .mg-account-content .license_key_template_table tr:first-child th {
	padding: 11px 14px !important;
	color: #6c7482 !important;
	background: #f6f7f9 !important;
	border-top: 1px solid #e5e8ed !important;
	border-bottom: 1px solid #e5e8ed !important;
	font-size: 11px !important;
	font-weight: 750 !important;
	letter-spacing: .09em !important;
}

body.logged-in.woocommerce-account .mg-account-content .license_key_template_table tr:first-child th:first-child {
	border-left: 1px solid #e5e8ed !important;
	border-radius: 12px 0 0 12px !important;
}

body.logged-in.woocommerce-account .mg-account-content .license_key_template_table tr:first-child th:last-child {
	border-right: 1px solid #e5e8ed !important;
	border-radius: 0 12px 12px 0 !important;
}

body.logged-in.woocommerce-account .mg-account-content .license_key_template_table tr:not(:first-child) td {
	padding: 18px 14px !important;
	color: #252a35 !important;
	background: #fff !important;
	border: 0 !important;
	border-bottom: 1px solid #e8eaee !important;
	border-radius: 0 !important;
	font-size: 14px !important;
	font-weight: 650 !important;
}

body.logged-in.woocommerce-account .mg-account-content .license_key_template_table tr:not(:first-child) td:first-child::before {
	color: #8b6207 !important;
	font-size: 11px !important;
	font-weight: 750 !important;
}

body.logged-in.woocommerce-account .mg-account-content .license_key_template_table button {
	min-width: 108px !important;
	min-height: 42px !important;
	padding: 10px 16px !important;
	border-radius: 11px !important;
	box-shadow: none !important;
	font-size: 13px !important;
}

body.logged-in.woocommerce-account .mg-account-content .key-container {
	width: 100% !important;
	max-width: none !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: visible !important;
	background: transparent !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
}

body.logged-in.woocommerce-account .mg-account-content .key-container::before {
	display: none !important;
	content: none !important;
}

body.logged-in.woocommerce-account .mg-account-content .key-container .mookey {
	justify-content: flex-start !important;
	margin: 0 0 28px !important;
	font-size: clamp(27px, 3vw, 36px) !important;
	font-weight: 800 !important;
	text-align: left !important;
}

body.logged-in.woocommerce-account .mg-account-content .key-container .mookey::before {
	flex-basis: 44px !important;
	width: 44px !important;
	height: 44px !important;
	border-radius: 12px !important;
	box-shadow: none !important;
}

body.logged-in.woocommerce-account .mg-account-content .key-container .product-code {
	margin-bottom: 9px !important;
	font-size: 11px !important;
	font-weight: 750 !important;
}

body.logged-in.woocommerce-account .mg-account-content .key-container .serial-key {
	padding: clamp(18px, 3vw, 24px) !important;
	border-radius: 14px !important;
	box-shadow: none !important;
}

body.logged-in.woocommerce-account .mg-account-content .key-container .serial-key p {
	font-size: clamp(14px, 1.7vw, 17px) !important;
	font-weight: 550 !important;
	line-height: 1.55 !important;
}

body.logged-in.woocommerce-account .mg-account-content .key-container .copyright-text {
	margin-top: 14px !important;
	font-weight: 550 !important;
}

@media (max-width: 700px) {
	body.logged-in.woocommerce-account .mg-account-content:has(.license_key_template_table),
	body.logged-in.woocommerce-account .mg-account-content:has(.key-container) {
		padding: 20px !important;
		border-radius: 17px !important;
	}

	body.logged-in.woocommerce-account .mg-account-content form:has(.license_key_template_table)::before {
		font-size: 28px !important;
	}

	body.logged-in.woocommerce-account .mg-account-content form:has(.license_key_template_table)::after {
		margin-bottom: 16px !important;
	}

	body.logged-in.woocommerce-account .mg-account-content .license_key_template_table tr:not(:first-child) {
		padding: 10px 0 !important;
		background: transparent !important;
		border: 0 !important;
		border-bottom: 1px solid #e8eaee !important;
		border-radius: 0 !important;
	}

	body.logged-in.woocommerce-account .mg-account-content .license_key_template_table tr:not(:first-child) td {
		border: 0 !important;
	}

	body.logged-in.woocommerce-account .mg-account-content .key-container .mookey {
		margin-bottom: 22px !important;
		font-size: 28px !important;
	}

	body.logged-in.woocommerce-account .mg-account-content .key-container .serial-key {
		padding: 17px !important;
	}
}

/* Membership: keep the sparse status-and-history view compact and balanced.
   Constrain the account surface itself (not only its children) so there is no
   oversized empty right side on wide desktops. */
body.logged-in.woocommerce-account .mg-account-content:has(> h3 + p > strong:first-child) {
	justify-self: center !important;
	width: 100% !important;
	max-width: 1100px !important;
	margin-inline: auto !important;
	box-sizing: border-box !important;
}

body.logged-in.woocommerce-account .mg-account-content:has(> h3 + p > strong:first-child) > h3,
body.logged-in.woocommerce-account .mg-account-content:has(> h3 + p > strong:first-child) > p,
body.logged-in.woocommerce-account .mg-account-content:has(> h3 + p > strong:first-child) > table {
	width: 100% !important;
	max-width: none !important;
	box-sizing: border-box !important;
}

@media (max-width: 760px) {
	body.logged-in.woocommerce-account .mg-account-content:has(> h3 + p > strong:first-child) {
		justify-self: stretch !important;
		max-width: none !important;
		margin-inline: 0 !important;
	}
}

/* Product-name index results: compact rows with no image or price payload. */
.mg-search-suggestions a.mg-search-suggestions__name-only {
    display: flex;
    align-items: center;
    min-height: 58px;
    padding-inline: 18px;
}

.mg-search-suggestions a.mg-search-suggestions__name-only strong {
    width: 100%;
}

.mg-search-suggestions a.mg-search-suggestions__name-only b {
	color: #6b7280;
	font-size: 11px;
}
/* ============================================================
   ABOUT PAGE — MODERN, PAGE-SCOPED LAYOUT
   ============================================================ */
.mg-page-about .entry-header{display:none}
.mg-page-about .entry-content{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;max-width:1240px;margin:0 auto;padding:0 0 64px}
.mg-page-about .entry-content>*{min-width:0;margin:0!important}
.mg-page-about .about-us,.mg-page-about .why-us,.mg-page-about .about-us-contact-us{grid-column:1/-1!important}

.mg-page-about .about-us{position:relative;isolation:isolate;display:grid!important;grid-template-columns:92px minmax(0,1fr)!important;grid-template-areas:"icon title" "icon text"!important;align-items:center!important;gap:8px 28px!important;overflow:hidden;padding:clamp(32px,5vw,64px)!important;border:1px solid #f0c760!important;border-radius:28px!important;background:linear-gradient(120deg,#fff7df 0%,#fffdfa 58%,#ffe39a 100%)!important;box-shadow:0 22px 54px rgba(41,35,24,.09)!important}
.mg-page-about .about-us:before,.mg-page-about .about-us:after{position:absolute;z-index:-1;content:"";border:28px solid rgba(242,168,0,.13);border-radius:50%}
.mg-page-about .about-us:before{width:230px;height:230px;right:-78px;top:-108px}
.mg-page-about .about-us:after{width:120px;height:120px;right:130px;bottom:-96px}
.mg-page-about .about-us>img{grid-area:icon!important;width:82px!important;min-height:0!important;margin:0!important}
.mg-page-about .about-us>h3{grid-area:title!important;margin:0!important;color:#151821!important;font-size:clamp(32px,4vw,52px)!important;font-weight:800!important;letter-spacing:-.035em;line-height:1.05}
.mg-page-about .about-us>div{grid-area:text!important;max-width:940px;color:#515865!important;font-size:16px;line-height:1.72}

.mg-page-about h1.why-us{position:relative;padding:34px 0 0!important;border:0!important;color:#151821!important;font-size:clamp(30px,3.4vw,44px)!important;font-weight:800!important;letter-spacing:-.035em!important;line-height:1.1;text-transform:none!important}
.mg-page-about h1.why-us:before{display:block;margin-bottom:8px;color:#b77800;content:"WHY MOOGOLD";font-size:12px;font-weight:800;letter-spacing:.14em}

.mg-page-about .fast-delivery-about-us,.mg-page-about .customer-support-about-us,.mg-page-about .reliable-about-us,.mg-page-about .secure-about-us{display:grid!important;grid-template-columns:72px minmax(0,1fr)!important;grid-template-areas:"icon title" "icon text"!important;align-items:start!important;gap:7px 20px!important;padding:30px!important;border:1px solid #e8e3d8!important;border-radius:22px!important;background:#fffdf8!important;box-shadow:0 12px 34px rgba(28,31,40,.055)!important;text-align:left!important;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}
.mg-page-about .fast-delivery-about-us:hover,.mg-page-about .customer-support-about-us:hover,.mg-page-about .reliable-about-us:hover,.mg-page-about .secure-about-us:hover{transform:translateY(-3px);border-color:#efb51c!important;box-shadow:0 18px 42px rgba(156,105,0,.11)!important}
.mg-page-about .fast-delivery-about-us>img,.mg-page-about .customer-support-about-us>img,.mg-page-about .reliable-about-us>img,.mg-page-about .secure-about-us>img{grid-area:icon!important;box-sizing:border-box;width:64px!important;height:64px!important;min-height:0!important;margin:0!important;padding:13px;border-radius:18px;background:#fff0c4;object-fit:contain}
.mg-page-about .customer-support-about-us>img{background:#eee8ff}
.mg-page-about .reliable-about-us>img{background:#e8f8ef}
.mg-page-about .secure-about-us>img{background:#e8f5fb}
.mg-page-about .fast-delivery-about-us>h3,.mg-page-about .customer-support-about-us>h3,.mg-page-about .reliable-about-us>h3,.mg-page-about .secure-about-us>h3{grid-area:title!important;margin:3px 0 0!important;color:#171a22!important;font-size:20px!important;font-weight:800!important;line-height:1.25}
.mg-page-about .fast-delivery-about-us>div,.mg-page-about .customer-support-about-us>div,.mg-page-about .reliable-about-us>div,.mg-page-about .secure-about-us>div{grid-area:text!important;width:auto!important;color:#646b78!important;font-size:15px;line-height:1.65}

.mg-page-about .about-us-contact-us{position:relative;isolation:isolate;display:grid!important;grid-template-columns:82px minmax(0,1fr)!important;grid-template-areas:"icon content"!important;align-items:start!important;gap:24px!important;overflow:hidden;padding:clamp(34px,5vw,58px)!important;border:1px solid rgba(255,191,35,.45)!important;border-radius:26px!important;background:#191d27!important;box-shadow:0 22px 52px rgba(17,20,28,.16)!important;color:#fff!important}
.mg-page-about .about-us-contact-us:after{position:absolute;z-index:-1;width:260px;height:260px;right:-86px;bottom:-145px;border:34px solid rgba(242,168,0,.13);border-radius:50%;content:""}
.mg-page-about .about-us-contact-us>img{grid-area:icon!important;box-sizing:border-box;width:72px!important;min-height:0!important;margin:0!important;padding:14px;border-radius:20px;background:#ffb000}
.mg-page-about .about-us-contact-us>.contact-content{grid-area:content!important;width:auto!important;color:#d8dce5!important}
.mg-page-about .about-us-contact-us h3{margin:0 0 16px!important;color:#fff!important;font-size:clamp(26px,3vw,38px)!important;font-weight:800!important;letter-spacing:-.025em}
.mg-page-about .about-us-contact-us .contact-details{color:#d8dce5!important;font-size:15px;line-height:1.75}
.mg-page-about .about-us-contact-us a{color:#ffc545!important;font-weight:700;text-decoration:none}
.mg-page-about .about-us-contact-us a:hover{color:#fff!important;text-decoration:underline}

@media (max-width:760px){
  .mg-page-about .entry-content{grid-template-columns:1fr;gap:16px;padding:0 16px 40px}
  .mg-page-about .about-us,.mg-page-about .why-us,.mg-page-about .about-us-contact-us{grid-column:auto!important}
  .mg-page-about .about-us{grid-template-columns:60px minmax(0,1fr)!important;grid-template-areas:"icon title" "text text"!important;align-items:center!important;gap:10px 16px!important;padding:26px 22px!important;border-radius:22px!important;text-align:left!important}
  .mg-page-about .about-us>img{width:56px!important}
  .mg-page-about .about-us>h3{font-size:30px!important;text-align:left!important}
  .mg-page-about .about-us>div{grid-area:text!important;grid-column:auto;padding-top:8px;font-size:15px;line-height:1.65;text-align:left!important}
  .mg-page-about h1.why-us{padding-top:24px!important;font-size:32px!important}
  .mg-page-about .fast-delivery-about-us,.mg-page-about .customer-support-about-us,.mg-page-about .reliable-about-us,.mg-page-about .secure-about-us{grid-template-columns:58px minmax(0,1fr)!important;grid-template-areas:"icon title" "text text"!important;align-items:center!important;gap:6px 16px!important;padding:22px!important;border-radius:19px!important;text-align:left!important}
  .mg-page-about .fast-delivery-about-us>img,.mg-page-about .customer-support-about-us>img,.mg-page-about .reliable-about-us>img,.mg-page-about .secure-about-us>img{width:54px!important;height:54px!important;padding:11px;border-radius:15px}
  .mg-page-about .fast-delivery-about-us>h3,.mg-page-about .customer-support-about-us>h3,.mg-page-about .reliable-about-us>h3,.mg-page-about .secure-about-us>h3{font-size:18px!important}
  .mg-page-about .fast-delivery-about-us>div,.mg-page-about .customer-support-about-us>div,.mg-page-about .reliable-about-us>div,.mg-page-about .secure-about-us>div{grid-area:text!important;grid-column:auto;padding-top:8px;font-size:14px;line-height:1.6;text-align:left!important}
  .mg-page-about .about-us-contact-us{grid-template-columns:58px minmax(0,1fr)!important;grid-template-areas:"icon title" "details details"!important;align-items:center!important;gap:10px 16px!important;padding:26px 22px!important;border-radius:22px!important;text-align:left!important}
  .mg-page-about .about-us-contact-us>img{width:54px!important;padding:11px;border-radius:15px}
  .mg-page-about .about-us-contact-us>.contact-content{display:contents!important}
  .mg-page-about .about-us-contact-us h3{grid-area:title!important;margin:0!important;font-size:26px!important;text-align:left!important}
  .mg-page-about .about-us-contact-us .contact-details{grid-area:details!important;margin-top:12px;font-size:14px;line-height:1.75;text-align:left!important;overflow-wrap:anywhere}
  .mg-page-about .about-us-contact-us a{display:inline!important;margin:0!important;padding:0!important;border-radius:0!important;background:transparent!important;overflow-wrap:anywhere}
}

/* ============================================================
   TERMS & CONDITIONS — LONG-FORM LEGAL READING LAYOUT
   ============================================================ */
.mg-page-terms .entry-header{display:none}
.mg-page-terms .entry-content{counter-reset:terms-section;box-sizing:border-box;max-width:1060px;margin:0 auto 72px!important;padding:0 clamp(28px,5vw,64px) clamp(44px,6vw,72px)!important;overflow:hidden;border:1px solid #e1e3e8;border-radius:28px;background:#fff;box-shadow:0 22px 56px rgba(24,28,38,.08);color:#535b68;font-size:16px;line-height:1.78}
.mg-page-terms .entry-content>*{max-width:78ch}

.mg-page-terms .entry-content>h2:first-child{position:relative;isolation:isolate;box-sizing:border-box;max-width:none;margin:0 calc(clamp(28px,5vw,64px)*-1) 42px!important;padding:clamp(44px,7vw,76px) clamp(28px,5vw,64px)!important;overflow:hidden;border:0!important;background:linear-gradient(120deg,#fff7df 0%,#fffdfa 60%,#ffe29a 100%);color:#151821!important;font-size:clamp(42px,6vw,68px)!important;font-weight:800!important;letter-spacing:-.045em!important;line-height:1!important}
.mg-page-terms .entry-content>h2:first-child:before,.mg-page-terms .entry-content>h2:first-child:after{position:absolute;z-index:-1;content:"";border:30px solid rgba(242,168,0,.13);border-radius:50%}
.mg-page-terms .entry-content>h2:first-child:before{width:240px;height:240px;right:-76px;top:-132px}
.mg-page-terms .entry-content>h2:first-child:after{width:110px;height:110px;right:170px;bottom:-98px}

.mg-page-terms .entry-content>h2:first-child+p{margin-top:0!important;color:#151821;font-size:22px;font-weight:800;letter-spacing:-.015em}
.mg-page-terms .entry-content>h2:first-child+p:before{display:block;margin-bottom:8px;color:#9b6500;content:"PLEASE READ CAREFULLY";font-size:11px;font-weight:800;letter-spacing:.14em}
.mg-page-terms .entry-content>h2:first-child+p+p{font-size:17px;color:#424956}
.mg-page-terms .entry-content>p{margin:0 0 18px!important}

.mg-page-terms .entry-content>h2:not(:first-child){position:relative;counter-increment:terms-section;display:grid;grid-template-columns:50px minmax(0,1fr);align-items:center;gap:15px;max-width:none;margin:52px 0 20px!important;padding:24px 0 18px!important;border:0!important;border-top:1px solid #e7e8ec!important;color:#171a22!important;font-size:clamp(24px,3vw,31px)!important;font-weight:800!important;letter-spacing:-.025em!important;line-height:1.22!important}
.mg-page-terms .entry-content>h2:not(:first-child):before{display:grid;width:46px;height:46px;place-items:center;border-radius:14px;background:#191d27;color:#ffbf24;content:counter(terms-section,decimal-leading-zero);font-size:12px;font-weight:800;letter-spacing:.06em}

.mg-page-terms .entry-content>ul,.mg-page-terms .entry-content>ol{display:grid;gap:11px;box-sizing:border-box;max-width:none;margin:18px 0 26px!important;padding:20px!important;border:1px solid #e8e9ed;border-radius:18px;background:#f8f9fb;list-style:none!important}
.mg-page-terms .entry-content>ul>li,.mg-page-terms .entry-content>ol>li{position:relative;margin:0!important;padding:2px 0 2px 31px;color:#535b68;font-size:15px;line-height:1.62}
.mg-page-terms .entry-content>ul>li:before,.mg-page-terms .entry-content>ol>li:before{position:absolute;left:0;top:6px;display:grid;width:20px;height:20px;place-items:center;border-radius:50%;background:#fff0c4;color:#8b5a00;content:"✓";font-size:10px;font-weight:900}
.mg-page-terms .entry-content>p+ul,.mg-page-terms .entry-content>p+ol{margin-top:12px!important}

.mg-page-terms .entry-content a{color:#956100;font-weight:750;text-decoration:underline;text-decoration-color:rgba(149,97,0,.34);text-underline-offset:3px}
.mg-page-terms .entry-content a:hover{color:#151821;text-decoration-color:#f2a800}
.mg-page-terms .entry-content strong{color:#242833}
.mg-page-terms .edit-link{display:none}

@media (max-width:760px){
  .mg-page-terms .entry-content{margin-bottom:42px!important;padding:0 20px 42px!important;border-radius:22px;font-size:15px;line-height:1.7}
  .mg-page-terms .entry-content>h2:first-child{margin:0 -20px 30px!important;padding:40px 22px!important;font-size:42px!important;line-height:1.04!important}
  .mg-page-terms .entry-content>h2:first-child+p{font-size:19px}
  .mg-page-terms .entry-content>h2:first-child+p+p{font-size:15px}
  .mg-page-terms .entry-content>h2:not(:first-child){grid-template-columns:44px minmax(0,1fr);gap:12px;margin-top:38px!important;padding:20px 0 15px!important;font-size:23px!important}
  .mg-page-terms .entry-content>h2:not(:first-child):before{width:41px;height:41px;border-radius:12px;font-size:11px}
  .mg-page-terms .entry-content>ul,.mg-page-terms .entry-content>ol{gap:10px;margin:14px 0 22px!important;padding:16px;border-radius:15px}
  .mg-page-terms .entry-content>ul>li,.mg-page-terms .entry-content>ol>li{padding-left:28px;font-size:14px;line-height:1.6}
  .mg-page-terms .entry-content>ul>li:before,.mg-page-terms .entry-content>ol>li:before{width:19px;height:19px}
}

/* ============================================================
   PRIVACY POLICY — CLEAR, TRUSTED LEGAL READING LAYOUT
   ============================================================ */
.mg-page-privacy .entry-header{display:none}
.mg-page-privacy .entry-content{counter-reset:privacy-section;box-sizing:border-box;max-width:1060px;margin:0 auto 72px!important;padding:0 clamp(28px,5vw,64px) clamp(44px,6vw,72px)!important;overflow:hidden;border:1px solid #e1e3e8;border-radius:28px;background:#fff;box-shadow:0 22px 56px rgba(24,28,38,.08);color:#535b68;font-size:16px;line-height:1.78}
.mg-page-privacy .entry-content>*{max-width:78ch}

.mg-page-privacy .entry-content>h2:first-child{position:relative;isolation:isolate;box-sizing:border-box;max-width:none;margin:0 calc(clamp(28px,5vw,64px)*-1) 42px!important;padding:clamp(44px,7vw,76px) clamp(28px,5vw,64px)!important;overflow:hidden;border:0!important;background:linear-gradient(120deg,#fff7df 0%,#fffdfa 60%,#ffe29a 100%);color:#151821!important;font-size:clamp(42px,6vw,68px)!important;font-weight:800!important;letter-spacing:-.045em!important;line-height:1!important}
.mg-page-privacy .entry-content>h2:first-child:before,.mg-page-privacy .entry-content>h2:first-child:after{position:absolute;z-index:-1;content:"";border:30px solid rgba(242,168,0,.13);border-radius:50%}
.mg-page-privacy .entry-content>h2:first-child:before{width:240px;height:240px;right:-76px;top:-132px}
.mg-page-privacy .entry-content>h2:first-child:after{width:110px;height:110px;right:170px;bottom:-98px}

.mg-page-privacy .entry-content>h2:first-child+p{margin-top:0!important;color:#151821;font-size:22px;font-weight:800;letter-spacing:-.015em}
.mg-page-privacy .entry-content>h2:first-child+p:before{display:block;margin-bottom:8px;color:#9b6500;content:"YOUR DATA, EXPLAINED";font-size:11px;font-weight:800;letter-spacing:.14em}
.mg-page-privacy .entry-content>h2:first-child+p+p{padding:18px 20px;border:1px solid #f0d58e;border-radius:16px;background:#fff9e9;color:#424956;font-size:15px;line-height:1.65}
.mg-page-privacy .entry-content>p{margin:0 0 18px!important}

.mg-page-privacy .entry-content>h2:not(:first-child){position:relative;counter-increment:privacy-section;display:grid;grid-template-columns:50px minmax(0,1fr);align-items:center;gap:15px;max-width:none;margin:52px 0 20px!important;padding:24px 0 18px!important;border:0!important;border-top:1px solid #e7e8ec!important;color:#171a22!important;font-size:clamp(24px,3vw,31px)!important;font-weight:800!important;letter-spacing:-.025em!important;line-height:1.22!important}
.mg-page-privacy .entry-content>h2:not(:first-child):before{display:grid;width:46px;height:46px;place-items:center;border-radius:14px;background:#191d27;color:#ffbf24;content:counter(privacy-section,decimal-leading-zero);font-size:12px;font-weight:800;letter-spacing:.06em}

.mg-page-privacy .entry-content>ul,.mg-page-privacy .entry-content>ol{display:grid;gap:11px;box-sizing:border-box;max-width:none;margin:18px 0 26px!important;padding:20px!important;border:1px solid #e8e9ed;border-radius:18px;background:#f8f9fb;list-style:none!important}
.mg-page-privacy .entry-content>ul>li,.mg-page-privacy .entry-content>ol>li{position:relative;margin:0!important;padding:2px 0 2px 31px;color:#535b68;font-size:15px;line-height:1.62}
.mg-page-privacy .entry-content>ul>li:before,.mg-page-privacy .entry-content>ol>li:before{position:absolute;left:0;top:7px;width:9px;height:9px;border:4px solid #ffe19a;border-radius:50%;background:#a66d00;content:""}
.mg-page-privacy .entry-content>p+ul,.mg-page-privacy .entry-content>p+ol{margin-top:12px!important}

.mg-page-privacy .entry-content a{color:#956100;font-weight:750;text-decoration:underline;text-decoration-color:rgba(149,97,0,.34);text-underline-offset:3px;overflow-wrap:anywhere}
.mg-page-privacy .entry-content a:hover{color:#151821;text-decoration-color:#f2a800}
.mg-page-privacy .entry-content strong{color:#242833}
.mg-page-privacy .edit-link{display:none}

@media (max-width:760px){
  .mg-page-privacy .entry-content{margin-bottom:42px!important;padding:0 20px 42px!important;border-radius:22px;font-size:15px;line-height:1.7}
  .mg-page-privacy .entry-content>h2:first-child{margin:0 -20px 30px!important;padding:40px 22px!important;font-size:42px!important;line-height:1.04!important}
  .mg-page-privacy .entry-content>h2:first-child+p{font-size:19px}
  .mg-page-privacy .entry-content>h2:first-child+p+p{padding:16px;font-size:14px}
  .mg-page-privacy .entry-content>h2:not(:first-child){grid-template-columns:44px minmax(0,1fr);gap:12px;margin-top:38px!important;padding:20px 0 15px!important;font-size:23px!important}
  .mg-page-privacy .entry-content>h2:not(:first-child):before{width:41px;height:41px;border-radius:12px;font-size:11px}
  .mg-page-privacy .entry-content>ul,.mg-page-privacy .entry-content>ol{gap:10px;margin:14px 0 22px!important;padding:16px;border-radius:15px}
  .mg-page-privacy .entry-content>ul>li,.mg-page-privacy .entry-content>ol>li{padding-left:27px;font-size:14px;line-height:1.6}
}

/* Refund Policy fallback for the canonical MooGold page markup. */
.mg-page-refund .entry-content{box-sizing:border-box;max-width:1060px;margin:0 auto 72px!important;padding:0 clamp(28px,5vw,64px) clamp(44px,6vw,72px)!important;overflow:hidden;border:1px solid #e1e3e8;border-radius:28px;background:#fff;box-shadow:0 22px 56px rgba(24,28,38,.08);color:#535b68;font-size:16px;line-height:1.78}
.mg-page-refund .entry-content>*{max-width:78ch}
.mg-page-refund .entry-content>h2:first-child{position:relative;isolation:isolate;box-sizing:border-box;max-width:none;margin:0 calc(clamp(28px,5vw,64px)*-1) 34px!important;padding:clamp(44px,7vw,76px) clamp(28px,5vw,64px)!important;overflow:hidden;border:0!important;border-radius:0;background:linear-gradient(120deg,#fff7df 0%,#fffdfa 60%,#ffe29a 100%);box-shadow:none;color:#151821!important;font-size:clamp(42px,6vw,68px)!important;font-weight:800!important;letter-spacing:-.045em!important;line-height:1!important}
.mg-page-refund .entry-content>h2:first-child:before,.mg-page-refund .entry-content>h2:first-child:after{position:absolute;z-index:-1;content:"";border:30px solid rgba(242,168,0,.13);border-radius:50%}
.mg-page-refund .entry-content>h2:first-child:before{width:240px;height:240px;right:-72px;top:-128px}
.mg-page-refund .entry-content>h2:first-child:after{width:110px;height:110px;right:160px;bottom:-96px}
.mg-page-refund .entry-content>h2:first-child+ul{gap:0;padding:10px 30px!important;border-color:#e3e5ea;background:#fff;box-shadow:0 16px 42px rgba(28,31,40,.06)}
.mg-page-refund .entry-content>h2:first-child+ul:before{display:block;padding:12px 0 15px;border-bottom:1px solid #e8e9ed;color:#9a6500;content:"Important refund conditions";font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.mg-page-refund .entry-content>p{margin:38px 0 14px!important;color:#171a22;font-size:clamp(22px,2.6vw,28px);font-weight:800;letter-spacing:-.02em;line-height:1.25}
.mg-page-refund .entry-content>ul,.mg-page-refund .entry-content>ol{display:grid;gap:12px;box-sizing:border-box;max-width:none;margin:0 0 22px!important;padding:clamp(20px,3vw,30px)!important;border:1px solid #e4e6eb;border-radius:22px;background:#fff;box-shadow:0 12px 34px rgba(28,31,40,.045);list-style:none!important;counter-reset:refund-item}
.mg-page-refund .entry-content>li{list-style:none!important}
.mg-page-refund .entry-content>ul>li,.mg-page-refund .entry-content>ol>li{position:relative;margin:0!important;padding:15px 18px 15px 50px;border:1px solid #ececf0;border-radius:15px;background:#f8f9fb;color:#565e6c;font-size:15px;line-height:1.62;counter-increment:refund-item}
.mg-page-refund .entry-content>ul>li:before,.mg-page-refund .entry-content>ol>li:before{position:absolute;left:16px;top:16px;display:grid;width:23px;height:23px;place-items:center;border-radius:50%;background:#fff0c4;color:#8b5a00;content:"✓";font-size:12px;font-weight:900}
.mg-page-refund .entry-content>ol>li:before{background:#191d27;color:#ffbf24;content:counter(refund-item);font-size:11px}
.mg-page-refund .entry-content>h2:first-child+ul>li{padding:19px 0 19px 42px;border:0;border-bottom:1px solid #e8e9ed;border-radius:0;background:transparent;color:#454c59;font-size:15px;line-height:1.6}
.mg-page-refund .entry-content>h2:first-child+ul>li:last-child{border-bottom:0}
.mg-page-refund .entry-content>h2:first-child+ul>li:before{left:0;top:20px;width:24px;height:24px;background:#fff0c4;color:#8b5a00;content:"!";font-size:13px}
.mg-page-refund .entry-content>ul a,.mg-page-refund .entry-content>ol a{color:#956100;font-weight:750;text-decoration:underline;text-decoration-color:rgba(149,97,0,.34);text-underline-offset:3px}

/* Shared MooGold accent for legal-document heroes. */
.mg-page-terms .entry-content>h2:first-child,.mg-page-privacy .entry-content>h2:first-child,.mg-page-refund .entry-content>h2:first-child{background:linear-gradient(120deg,#ffd86f 0%,#ffc334 48%,#f8a900 100%)}
.mg-page-terms .entry-content>h2:first-child:before,.mg-page-terms .entry-content>h2:first-child:after,.mg-page-privacy .entry-content>h2:first-child:before,.mg-page-privacy .entry-content>h2:first-child:after,.mg-page-refund .entry-content>h2:first-child:before,.mg-page-refund .entry-content>h2:first-child:after{border-color:rgba(255,255,255,.2)}

@media (max-width:760px){
  .mg-page-refund .entry-content{margin-bottom:42px!important;padding:0 20px 42px!important;border-radius:22px;font-size:15px;line-height:1.7}
  .mg-page-refund .entry-content>h2:first-child{margin:0 -20px 28px!important;padding:40px 22px!important;border-radius:0;font-size:42px!important;line-height:1.04!important}
  .mg-page-refund .entry-content>p{margin-top:30px!important;font-size:22px}
  .mg-page-refund .entry-content>ul,.mg-page-refund .entry-content>ol{gap:10px;padding:17px!important;border-radius:18px}
  .mg-page-refund .entry-content>ul>li,.mg-page-refund .entry-content>ol>li{padding:14px 14px 14px 44px;border-radius:13px;font-size:14px;line-height:1.58}
  .mg-page-refund .entry-content>ul>li:before,.mg-page-refund .entry-content>ol>li:before{left:13px;top:14px}
  .mg-page-refund .entry-content>h2:first-child+ul{gap:0;padding:8px 18px!important}
  .mg-page-refund .entry-content>h2:first-child+ul:before{padding:11px 0 13px;font-size:11px}
  .mg-page-refund .entry-content>h2:first-child+ul>li{padding:16px 0 16px 38px;border-radius:0;font-size:14px}
  .mg-page-refund .entry-content>h2:first-child+ul>li:before{left:0;top:17px}
}

/* Keep long-form legal cards clear of mobile viewport edges. */
@media (max-width:760px){
  .mg-page-terms .entry-content,.mg-page-privacy .entry-content,.mg-page-refund .entry-content{margin:0 16px 42px!important}
}
