﻿/*
Theme Name: MENSSKULL Gutenberg Child Final 50
Description: Lightweight GeneratePress child theme for the MENSSKULL Gutenberg rebuild.
Author: MENSSKULL
Template: generatepress
Version: 1.5.3
Text Domain: mensskull-gutenberg-child-final50
*/

/* Hide LiteSpeed's gray 1px lazy-load placeholder so image areas stay on-brand black. */
img[data-lazyloaded="1"][src^="data:image/gif"],
img.lazyload[src^="data:image/gif"],
img.litespeed-loaded[src^="data:image/gif"] {
	opacity: 1 !important;
	filter: brightness(0) !important;
	background: #000 !important;
	transition: filter .18s ease, opacity .18s ease;
}

img[data-lazyloaded="1"]:not([src^="data:image/gif"]),
img.lazyloaded,
img.litespeed-loaded:not([src^="data:image/gif"]) {
	opacity: 1 !important;
	filter: none !important;
}

.ms-skull-feature,
.ms-skull-feature img,
ul.products li.product a img,
.woocommerce-product-gallery__image,
.woocommerce-product-gallery__image img,
.ms-auth-product-image,
.ms-auth-journal-image,
.ms-brand {
	background-color: #000 !important;
}

/* MENSSKULL premium cart/checkout treatment. Visual layer only. */
body.woocommerce-cart,
body.woocommerce-checkout {
	background: #141414;
	color: #d6d0c8;
}

body.woocommerce-cart .site-content,
body.woocommerce-checkout .site-content {
	width: min(1380px, calc(100% - 36px));
	margin: 0 auto;
	padding: 46px 0 74px;
}

body.woocommerce-cart .content-area,
body.woocommerce-checkout .content-area {
	width: 100% !important;
	float: none !important;
}

body.woocommerce-cart .site-main,
body.woocommerce-checkout .site-main,
body.woocommerce-cart .inside-article,
body.woocommerce-checkout .inside-article {
	background: transparent !important;
	padding: 0 !important;
}

body.woocommerce-cart .is-right-sidebar,
body.woocommerce-checkout .is-right-sidebar,
body.woocommerce-cart #right-sidebar,
body.woocommerce-checkout #right-sidebar {
	display: none !important;
}

body.woocommerce-cart .entry-header,
body.woocommerce-checkout .entry-header {
	margin: 0 0 28px;
	text-align: center;
}

body.woocommerce-cart .entry-title,
body.woocommerce-checkout .entry-title {
	margin: 0;
	color: #f6efe6;
	font-size: clamp(32px, 4vw, 58px);
	line-height: 1;
	font-weight: 500;
	letter-spacing: .08em;
	text-transform: uppercase;
}

body.woocommerce-cart .entry-content > .woocommerce,
body.woocommerce-checkout .entry-content > .woocommerce {
	position: relative;
	padding: 30px;
	border: 1px solid rgba(255,255,255,.11);
	background:
		radial-gradient(circle at 15% 0%, rgba(183,151,105,.14), transparent 34%),
		linear-gradient(145deg, rgba(255,255,255,.045), rgba(255,255,255,.015));
	box-shadow: 0 24px 80px rgba(0,0,0,.45);
}

body.woocommerce-cart .entry-content > .woocommerce:before,
body.woocommerce-checkout .entry-content > .woocommerce:before {
	display: block;
	margin: -30px -30px 30px;
	padding: 15px 18px;
	border-bottom: 1px solid rgba(255,255,255,.1);
	background: #101010;
	color: #d9c0a0;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .14em;
	text-align: center;
	text-transform: uppercase;
}

body.woocommerce-cart .entry-content > .woocommerce:before {
	content: "Secure Checkout  /  Worldwide Shipping  /  30-Day Returns";
}

body.woocommerce-checkout .entry-content > .woocommerce:before {
	content: "Encrypted Payment  /  Handmade 925 Silver  /  Order Protection";
}

body.woocommerce-cart table.shop_table,
body.woocommerce-checkout table.shop_table {
	overflow: hidden;
	border: 1px solid rgba(255,255,255,.12) !important;
	border-radius: 0;
	background: #0b0b0b;
	color: #d5d0c8;
}

body.woocommerce-cart table.shop_table th,
body.woocommerce-checkout table.shop_table th {
	border-color: rgba(255,255,255,.09) !important;
	background: #101010;
	color: #a8957f;
	font-size: 11px;
	letter-spacing: .12em;
	text-transform: uppercase;
}

body.woocommerce-cart table.shop_table td,
body.woocommerce-checkout table.shop_table td,
body.woocommerce-cart table.shop_table tbody th,
body.woocommerce-checkout table.shop_table tbody th {
	border-color: rgba(255,255,255,.08) !important;
	color: #d6d0c8;
}

body.woocommerce-cart table.shop_table a,
body.woocommerce-checkout table.shop_table a {
	color: #f2e6d8;
}

body.woocommerce-cart table.shop_table img {
	width: 92px;
	border: 1px solid rgba(255,255,255,.12);
	background: #000;
}

body.woocommerce-cart .product-name a {
	font-size: 15px;
	letter-spacing: .02em;
}

body.woocommerce-cart .quantity .qty,
body.woocommerce-checkout input.input-text,
body.woocommerce-checkout textarea,
body.woocommerce-checkout select,
body.woocommerce-cart input.input-text,
body.woocommerce-cart textarea,
body.woocommerce-cart select {
	min-height: 46px;
	border: 1px solid rgba(255,255,255,.16) !important;
	border-radius: 0 !important;
	background: #050505 !important;
	color: #f4eee6 !important;
	box-shadow: none !important;
}

body.woocommerce-checkout input.input-text:focus,
body.woocommerce-checkout textarea:focus,
body.woocommerce-checkout select:focus,
body.woocommerce-cart input.input-text:focus {
	border-color: #c5a36f !important;
	outline: 1px solid rgba(197,163,111,.35);
}

body.woocommerce-cart .cart-collaterals,
body.woocommerce-cart .cart_totals {
	width: 100% !important;
	float: none !important;
}

body.woocommerce-cart .cart_totals,
body.woocommerce-checkout #order_review,
body.woocommerce-checkout .woocommerce-checkout-review-order {
	margin-top: 28px;
	padding: 26px;
	border: 1px solid rgba(214,183,139,.28);
	background: linear-gradient(180deg, #111, #090909);
	box-shadow: inset 0 1px 0 rgba(255,255,255,.05);
}

body.woocommerce-cart .cart_totals h2,
body.woocommerce-checkout h3,
body.woocommerce-checkout .woocommerce-billing-fields h3,
body.woocommerce-checkout .woocommerce-additional-fields h3 {
	margin: 0 0 18px;
	color: #f5eadb;
	font-size: 18px;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
}

body.woocommerce-checkout form.checkout {
	display: grid;
	grid-template-columns: minmax(0, 60fr) minmax(360px, 40fr);
	gap: 34px;
	align-items: start;
}

body.woocommerce-checkout #wc-stripe-express-checkout-element,
body.woocommerce-checkout #wc-stripe-express-checkout-button-separator,
body.woocommerce-checkout .wc-stripe-express-checkout-element,
body.woocommerce-checkout .wc-stripe-express-checkout-button-separator {
	grid-column: 1 / -1;
	max-width: 760px;
	margin-right: auto !important;
	margin-left: auto !important;
}

body.woocommerce-checkout #customer_details {
	display: grid;
	gap: 24px;
	grid-column: 1;
	grid-row: 2 / span 3;
	min-width: 0;
}

body.woocommerce-checkout #customer_details .col-1,
body.woocommerce-checkout #customer_details .col-2 {
	width: 100%;
	float: none;
	padding: 26px;
	border: 1px solid rgba(255,255,255,.1);
	background: #0b0b0b;
}

body.woocommerce-checkout #order_review_heading,
body.woocommerce-checkout #order_review {
	grid-column: 2;
}

body.woocommerce-checkout #order_review_heading {
	grid-row: 2;
	align-self: end;
	margin: 0 0 -1px;
	padding: 22px 26px 16px;
	border: 1px solid rgba(255,255,255,.1);
	border-bottom: 0;
	background: #050505;
	color: #f6eadc;
	line-height: 1;
}

body.woocommerce-checkout #order_review {
	grid-row: 2;
	align-self: start;
	position: sticky;
	top: 96px;
	margin-top: 62px;
	border-top: 0;
}

body.woocommerce-checkout #order_review:after {
	content: "Free worldwide shipping\A Production time 2-5 days\A Ships from Hong Kong\A Delivery within 3-7 days\A 30-day easy returns\A 24/7 customer service";
	display: none;
	white-space: pre-line;
	margin-top: 22px;
	padding: 20px;
	border: 1px solid rgba(255,255,255,.1);
	background:
		linear-gradient(135deg, rgba(196,161,109,.14), transparent 46%),
		#0b0b0b;
	color: #cfc5b9;
	font-size: 13px;
	line-height: 1.9;
	letter-spacing: .03em;
}

body.woocommerce-checkout #order_review:before {
	content: "MENSSKULL Purchase Protection";
	display: block;
	margin: -26px -26px 22px;
	padding: 15px 20px;
	border-bottom: 1px solid rgba(214,183,139,.22);
	background: #050505;
	color: #d8b77f;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .14em;
	text-transform: uppercase;
}

body.woocommerce-checkout .form-row label {
	color: #b9ada0;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
}

body.woocommerce-checkout .required {
	color: #d5ad72;
}

body.woocommerce-checkout select,
body.woocommerce-checkout .select2-container--default .select2-selection--single {
	min-height: 46px;
	border: 1px solid rgba(214,183,139,.38) !important;
	background: #d8cec0 !important;
	color: #17120d !important;
}

body.woocommerce-checkout select:focus,
body.woocommerce-checkout .select2-container--default.select2-container--open .select2-selection--single {
	border-color: #d8b77f !important;
	outline: 1px solid rgba(216,183,127,.36);
}

body.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__rendered {
	color: #17120d !important;
	line-height: 44px;
}

body.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__arrow {
	height: 44px;
}

body.woocommerce-checkout .select2-dropdown {
	border: 1px solid rgba(214,183,139,.42) !important;
	background: #d8cec0 !important;
	color: #17120d !important;
}

body.woocommerce-checkout .select2-container--default .select2-results__option--highlighted[aria-selected],
body.woocommerce-checkout .select2-container--default .select2-results__option--highlighted[data-selected] {
	background: #b6935f !important;
	color: #070707 !important;
}

body.woocommerce-checkout .select2-container--default .select2-results__option[aria-selected=true],
body.woocommerce-checkout .select2-container--default .select2-results__option[data-selected=true] {
	background: #c5b79f !important;
	color: #090909 !important;
}

body.woocommerce-checkout .woocommerce-form-login-toggle,
body.woocommerce-checkout .woocommerce-form-coupon-toggle {
	display: inline-block;
	width: calc(50% - 8px);
	margin: 0 8px 18px 0;
	vertical-align: top;
}

body.woocommerce-checkout .woocommerce-form-coupon-toggle {
	margin-right: 0;
}

body.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info,
body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info {
	min-height: 58px;
	margin: 0 !important;
	padding: 18px 20px 18px 48px !important;
	border: 1px solid rgba(214,183,139,.24) !important;
	border-top: 1px solid rgba(214,183,139,.44) !important;
	background:
		linear-gradient(135deg, rgba(214,183,139,.12), rgba(214,183,139,0) 42%),
		#080808 !important;
	color: #d8d0c5 !important;
	font-size: 13px;
	line-height: 1.45;
	box-shadow: inset 0 1px 0 rgba(255,255,255,.035);
}

body.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info:before,
body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info:before {
	top: 18px !important;
	left: 20px !important;
	color: #d4ad72 !important;
}

body.woocommerce-checkout .woocommerce-form-login-toggle a,
body.woocommerce-checkout .woocommerce-form-coupon-toggle a {
	color: #f2d09a !important;
	font-weight: 800;
	text-decoration: none;
}

body.woocommerce-checkout form.checkout {
	margin-top: 10px;
}

body.woocommerce-checkout #wc-stripe-express-checkout-element {
	width: min(520px, 100%);
	margin-top: 4px !important;
	margin-bottom: 22px !important;
	padding: 12px;
	border: 1px solid rgba(255,255,255,.1);
	background: rgba(0,0,0,.28);
}

body.woocommerce-checkout #wc-stripe-express-checkout-button-separator {
	max-width: 520px;
	margin-top: 4px !important;
	margin-bottom: 20px !important;
	color: #8d8277;
	font-size: 11px;
	letter-spacing: .12em;
	text-transform: uppercase;
}

body.woocommerce-checkout .checkout_coupon.woocommerce-form-coupon,
body.woocommerce-checkout form.login {
	margin: -8px 0 24px !important;
	padding: 22px 24px !important;
	border: 1px solid rgba(255,255,255,.12) !important;
	background: #0b0b0b !important;
}

body.woocommerce-checkout .ms-checkout-trust-intro {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 28px;
	align-items: center;
	margin: 0 0 24px;
	padding: 28px 30px;
	border: 1px solid rgba(214,183,139,.28);
	background:
		radial-gradient(circle at 8% 0%, rgba(214,183,139,.18), transparent 36%),
		linear-gradient(135deg, #0b0b0b, #171411);
	box-shadow: inset 0 1px 0 rgba(255,255,255,.045), 0 18px 50px rgba(0,0,0,.32);
}

body.woocommerce-checkout .ms-checkout-kicker {
	margin: 0 0 8px;
	color: #d8b77f;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .18em;
	text-transform: uppercase;
}

body.woocommerce-checkout .ms-checkout-trust-intro h2 {
	margin: 0 0 10px;
	color: #f7ead9;
	font-size: clamp(24px, 2.3vw, 36px);
	line-height: 1.08;
	letter-spacing: .02em;
}

body.woocommerce-checkout .ms-checkout-trust-intro p {
	max-width: 760px;
	margin: 0;
	color: #c8beb2;
	font-size: 15px;
	line-height: 1.7;
}

body.woocommerce-checkout .ms-checkout-trust-intro ul {
	display: grid;
	gap: 10px;
	min-width: 260px;
	margin: 0;
	padding: 0;
	list-style: none;
}

body.woocommerce-checkout .ms-checkout-trust-intro li {
	padding: 12px 14px;
	border: 1px solid rgba(255,255,255,.1);
	background: rgba(0,0,0,.36);
	color: #e4d6c5;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .12em;
	text-transform: uppercase;
}

body.woocommerce-checkout .ms-checkout-trust-intro li:before {
	content: "-";
	margin-right: 10px;
	color: #d8b77f;
}

body.woocommerce-checkout .ms-checkout-confidence {
	margin-top: 24px;
	padding: 24px;
	border: 1px solid rgba(214,183,139,.22);
	background:
		linear-gradient(180deg, rgba(255,255,255,.035), rgba(255,255,255,.012)),
		#090909;
}

body.woocommerce-checkout .ms-checkout-confidence h3 {
	margin: 0 0 18px;
	color: #f6eadc;
	font-size: 20px;
	letter-spacing: .1em;
	text-transform: uppercase;
}

body.woocommerce-checkout .ms-confidence-guarantee {
	display: grid;
	grid-template-columns: 74px minmax(0, 1fr);
	gap: 18px;
	align-items: center;
	padding: 18px;
	border: 1px solid rgba(255,255,255,.12);
	background: #111;
}

body.woocommerce-checkout .ms-confidence-seal {
	display: grid;
	place-items: center;
	width: 72px;
	height: 72px;
	background: transparent;
}

body.woocommerce-checkout .ms-confidence-seal img {
	display: block;
	width: 72px;
	height: 72px;
	object-fit: contain;
}

body.woocommerce-checkout .ms-confidence-guarantee strong,
body.woocommerce-checkout .ms-confidence-review strong {
	color: #f4eadf;
	font-size: 15px;
}

body.woocommerce-checkout .ms-confidence-guarantee p,
body.woocommerce-checkout .ms-confidence-review p {
	margin: 7px 0 0;
	color: #bdb1a5;
	line-height: 1.6;
}

body.woocommerce-checkout .ms-confidence-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 10px;
	margin: 16px 0;
}

body.woocommerce-checkout .ms-confidence-grid span {
	padding: 13px 12px;
	border: 1px solid rgba(255,255,255,.1);
	background: rgba(255,255,255,.035);
	color: #d6c7b4;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .12em;
	text-align: center;
	text-transform: uppercase;
}

body.woocommerce-checkout .ms-confidence-review {
	display: grid;
	grid-template-columns: 86px minmax(0, 1fr);
	gap: 20px;
	align-items: center;
	padding: 18px 22px;
	border: 1px solid rgba(115, 198, 186, .42);
	border-radius: 16px;
	background:
		linear-gradient(135deg, rgba(216,183,127,.11), rgba(115,198,186,.055)),
		#10100f;
	box-shadow: inset 0 1px 0 rgba(255,255,255,.045);
}

body.woocommerce-checkout .ms-review-star {
	display: grid;
	place-items: center;
	width: 70px;
	height: 70px;
	background: #f5c84f;
	clip-path: polygon(50% 0%, 61% 34%, 98% 35%, 68% 56%, 79% 91%, 50% 70%, 21% 91%, 32% 56%, 2% 35%, 39% 34%);
	color: #b9693a;
	font-size: 0;
}

body.woocommerce-checkout .ms-review-star span {
	display: block;
	position: relative;
	width: 28px;
	height: 20px;
	margin-top: 8px;
}

body.woocommerce-checkout .ms-review-star span:before,
body.woocommerce-checkout .ms-review-star span:after {
	content: "";
	position: absolute;
	top: 0;
	width: 5px;
	height: 5px;
	border-radius: 50%;
	background: #d9783d;
}

body.woocommerce-checkout .ms-review-star span:before {
	left: 3px;
}

body.woocommerce-checkout .ms-review-star span:after {
	right: 3px;
}

body.woocommerce-checkout .ms-review-star:after {
	content: "";
	width: 16px;
	height: 8px;
	margin-top: -16px;
	border-bottom: 4px solid #d9783d;
	border-radius: 0 0 18px 18px;
}

body.woocommerce-checkout .ms-confidence-review b {
	color: #fff2df;
}

body.woocommerce-checkout .ms-confidence-review em {
	margin-right: 18px;
	color: #d6c9bb;
	font-style: normal;
}

body.woocommerce-checkout .ms-review-stars {
	display: inline-block;
	margin-left: 12px;
	color: #ff9a2f;
	font-size: 18px;
	letter-spacing: .08em;
}

body.woocommerce-checkout .ms-review-count {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 124px;
	margin-left: 16px;
	padding: 7px 18px;
	border: 1px solid rgba(255,255,255,.12);
	border-radius: 999px;
	background: rgba(255,255,255,.08);
	color: #eadfce;
	font-size: 15px;
}

body.woocommerce-checkout .ms-checkout-confidence blockquote {
	margin: 16px 0 0;
	padding: 18px 20px;
	border-left: 2px solid #d8b77f;
	background: #0f0f0f;
	color: #cfc5ba;
	font-size: 14px;
	font-style: italic;
	line-height: 1.8;
}

body.woocommerce-checkout .ms-checkout-confidence cite {
	display: block;
	margin-top: 12px;
	color: #d8b77f;
	font-size: 11px;
	font-style: normal;
	font-weight: 800;
	letter-spacing: .14em;
	text-transform: uppercase;
}

body.woocommerce-checkout .ms-checkout-testimonials {
	margin-top: 22px;
}

body.woocommerce-checkout .ms-checkout-testimonials h4 {
	margin: 0 0 14px;
	color: #f6eadc;
	font-size: 18px;
	letter-spacing: .04em;
}

body.woocommerce-checkout .ms-checkout-testimonials article {
	margin: 0 0 14px;
	padding: 20px 22px;
	border: 1px solid rgba(255,255,255,.12);
	border-radius: 10px;
	background:
		linear-gradient(135deg, rgba(216,183,127,.08), rgba(255,255,255,.018)),
		#10100f;
	box-shadow: inset 0 1px 0 rgba(255,255,255,.035);
}

body.woocommerce-checkout .ms-checkout-testimonials article:last-child {
	margin-bottom: 0;
}

body.woocommerce-checkout .ms-checkout-testimonials article p {
	margin: 0 0 18px;
	color: #d8d0c5;
	font-size: 15px;
	font-style: italic;
	line-height: 1.75;
	letter-spacing: .02em;
}

body.woocommerce-checkout .ms-checkout-testimonials article div {
	display: grid;
	grid-template-columns: 42px auto;
	column-gap: 12px;
	align-items: center;
}

body.woocommerce-checkout .ms-checkout-testimonials article span {
	display: grid;
	grid-row: span 2;
	place-items: center;
	width: 42px;
	height: 42px;
	border-radius: 50%;
	background: linear-gradient(135deg, #d8b77f, #8d6840);
	color: #090909;
	font-size: 12px;
	font-weight: 900;
	letter-spacing: .08em;
}

body.woocommerce-checkout .ms-checkout-testimonials article strong {
	color: #fff3e2;
	font-size: 13px;
}

body.woocommerce-checkout .ms-checkout-testimonials article em {
	color: #aeb8bd;
	font-size: 11px;
	font-style: normal;
	font-weight: 800;
	letter-spacing: .18em;
	text-transform: uppercase;
}

body.woocommerce-checkout .woocommerce-checkout-payment {
	border: 1px solid rgba(255,255,255,.12) !important;
	background: #080808 !important;
}

body.woocommerce-checkout #payment ul.payment_methods {
	border-bottom-color: rgba(255,255,255,.12) !important;
}

body.woocommerce-checkout #payment ul.payment_methods li {
	padding: 14px 0;
	color: #d6d0c8;
}

body.woocommerce-checkout #payment div.payment_box {
	background: #141414 !important;
	color: #cfc7bd !important;
	border: 1px solid rgba(255,255,255,.12);
}

body.woocommerce-checkout #payment div.payment_box:before {
	border-bottom-color: #141414 !important;
}

body.woocommerce-cart .button,
body.woocommerce-cart button.button,
body.woocommerce-cart a.button,
body.woocommerce-checkout .button,
body.woocommerce-checkout button.button,
body.woocommerce-checkout a.button,
body.woocommerce-checkout #place_order {
	min-height: 48px;
	border: 1px solid #c4a16d !important;
	border-radius: 0 !important;
	background: linear-gradient(135deg, #caa46b, #8b6b43) !important;
	color: #080808 !important;
	font-size: 12px !important;
	font-weight: 800 !important;
	letter-spacing: .12em;
	text-transform: uppercase;
	box-shadow: none !important;
}

body.woocommerce-cart .button:hover,
body.woocommerce-checkout .button:hover,
body.woocommerce-checkout #place_order:hover {
	filter: brightness(1.08);
	transform: translateY(-1px);
}

body.woocommerce-cart .coupon {
	display: flex;
	gap: 10px;
}

body.woocommerce-cart .coupon .input-text {
	width: 220px !important;
}

body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
	width: 100%;
	padding: 16px 22px !important;
	font-size: 13px !important;
}

body.woocommerce-cart .ppc-button-wrapper,
body.woocommerce-checkout .ppc-button-wrapper {
	margin-top: 12px;
}

body.woocommerce-cart .woocommerce-message,
body.woocommerce-cart .woocommerce-info,
body.woocommerce-cart .woocommerce-error,
body.woocommerce-checkout .woocommerce-message,
body.woocommerce-checkout .woocommerce-info,
body.woocommerce-checkout .woocommerce-error {
	border-top-color: #c4a16d !important;
	background: #0b0b0b !important;
	color: #d6d0c8 !important;
}

@media (max-width: 980px) {
	body.woocommerce-cart .site-content,
	body.woocommerce-checkout .site-content {
		width: min(100% - 22px, 720px);
		padding-top: 28px;
	}

	body.woocommerce-cart .entry-content > .woocommerce,
	body.woocommerce-checkout .entry-content > .woocommerce {
		padding: 18px;
	}

	body.woocommerce-checkout form.checkout {
		display: block;
	}

	body.woocommerce-checkout #order_review {
		position: static;
		margin-top: 22px;
	}

	body.woocommerce-cart .entry-content > .woocommerce:before,
	body.woocommerce-checkout .entry-content > .woocommerce:before {
		margin: -18px -18px 22px;
	}

	body.woocommerce-checkout .woocommerce-form-login-toggle,
	body.woocommerce-checkout .woocommerce-form-coupon-toggle {
		display: block;
		width: 100%;
		margin: 0 0 12px;
	}

	body.woocommerce-checkout #wc-stripe-express-checkout-element,
	body.woocommerce-checkout #wc-stripe-express-checkout-button-separator {
		width: 100%;
		max-width: none;
	}
}

@media (max-width: 640px) {
	body.woocommerce-cart .entry-title,
	body.woocommerce-checkout .entry-title {
		font-size: 30px;
	}

	body.woocommerce-checkout .ms-confidence-review {
		grid-template-columns: 1fr;
		justify-items: center;
		text-align: center;
	}

	body.woocommerce-checkout .ms-confidence-review em,
	body.woocommerce-checkout .ms-review-stars,
	body.woocommerce-checkout .ms-review-count {
		display: table;
		margin: 8px auto 0;
	}

	body.woocommerce-cart table.shop_table img {
		width: 72px;
	}

	body.woocommerce-cart .coupon {
		display: grid;
	}

	body.woocommerce-cart .coupon .input-text,
body.woocommerce-cart .coupon .button {
		width: 100% !important;
	}
}

/* Laptop product layout fix: notebooks should keep the desktop product view. */
@media (min-width: 769px) {
	body.single-product .site-content,
	body.single-product .grid-container.site-content {
		display: block !important;
		width: min(1400px, calc(100% - 48px)) !important;
		max-width: 1400px !important;
		margin-right: auto !important;
		margin-left: auto !important;
		padding-right: 0 !important;
		padding-left: 0 !important;
	}

	body.single-product #primary,
	body.single-product .content-area,
	body.single-product .site-main,
	body.single-product .inside-article,
	body.single-product .woocommerce,
	body.single-product .woocommerce div.product {
		float: none !important;
		width: 100% !important;
		max-width: 1400px !important;
		margin-right: auto !important;
		margin-left: auto !important;
	}

	body.single-product .woocommerce div.product {
		display: grid !important;
		grid-template-columns: minmax(0, 3fr) minmax(360px, 2fr) !important;
		align-items: start !important;
		column-gap: 0 !important;
		background: #141414 !important;
	}

	body.single-product .woocommerce div.product .woocommerce-product-gallery {
		float: none !important;
		grid-column: 1 !important;
		width: 100% !important;
		max-width: none !important;
		margin: 0 !important;
		background: #000 !important;
	}

	body.single-product .woocommerce div.product .summary {
		float: none !important;
		grid-column: 2 !important;
		width: 100% !important;
		max-width: none !important;
		margin: 0 !important;
		padding: 30px !important;
		background: #141414 !important;
	}

	body.single-product .woocommerce div.product .woocommerce-tabs,
	body.single-product .woocommerce div.product .related,
	body.single-product .woocommerce div.product .upsells {
		grid-column: 1 / -1 !important;
	}
}

@media (min-width: 769px) and (max-width: 1100px) {
	body.single-product .site-content,
	body.single-product .grid-container.site-content {
		width: min(1200px, calc(100% - 32px)) !important;
	}

	body.single-product .woocommerce div.product {
		grid-template-columns: minmax(0, 56%) minmax(340px, 44%) !important;
	}

	body.single-product .woocommerce div.product .summary {
		padding: 24px !important;
	}

	body.single-product .woocommerce div.product .product_title {
		font-size: 28px !important;
		line-height: 1.15 !important;
	}
}

@media (max-width: 768px) {
	body.single-product .woocommerce div.product {
		display: block !important;
	}

	body.single-product .woocommerce div.product .woocommerce-product-gallery,
	body.single-product .woocommerce div.product .summary {
		width: 100% !important;
		max-width: none !important;
	}
}

/* Final notebook override: actual product wrapper is not always nested under .woocommerce. */
@media (min-width: 769px) {
	body.single-product div.product.product-type-simple,
	body.single-product div.product.product-type-variable,
	body.single-product div.product.product-type-grouped,
	body.single-product div.product.product-type-external {
		display: grid !important;
		grid-template-columns: minmax(0, 3fr) minmax(360px, 2fr) !important;
		align-items: start !important;
		width: min(1400px, calc(100% - 48px)) !important;
		max-width: 1400px !important;
		margin-right: auto !important;
		margin-left: auto !important;
		background: #141414 !important;
	}

	body.single-product div.product.product-type-simple > .woocommerce-product-gallery,
	body.single-product div.product.product-type-variable > .woocommerce-product-gallery,
	body.single-product div.product.product-type-grouped > .woocommerce-product-gallery,
	body.single-product div.product.product-type-external > .woocommerce-product-gallery {
		grid-column: 1 !important;
		width: 100% !important;
		max-width: none !important;
		margin: 0 !important;
	}

	body.single-product div.product.product-type-simple > .summary,
	body.single-product div.product.product-type-variable > .summary,
	body.single-product div.product.product-type-grouped > .summary,
	body.single-product div.product.product-type-external > .summary {
		grid-column: 2 !important;
		width: 100% !important;
		max-width: none !important;
		margin: 0 !important;
		padding: 30px !important;
	}

	body.single-product div.product.product-type-simple > .woocommerce-tabs,
	body.single-product div.product.product-type-variable > .woocommerce-tabs,
	body.single-product div.product.product-type-grouped > .woocommerce-tabs,
	body.single-product div.product.product-type-external > .woocommerce-tabs,
	body.single-product div.product.product-type-simple > .related,
	body.single-product div.product.product-type-variable > .related,
	body.single-product div.product.product-type-grouped > .related,
	body.single-product div.product.product-type-external > .related,
	body.single-product div.product.product-type-simple > .upsells,
	body.single-product div.product.product-type-variable > .upsells,
	body.single-product div.product.product-type-grouped > .upsells,
	body.single-product div.product.product-type-external > .upsells {
		grid-column: 1 / -1 !important;
	}
}

@media (min-width: 769px) and (max-width: 1100px) {
	body.single-product div.product.product-type-simple,
	body.single-product div.product.product-type-variable,
	body.single-product div.product.product-type-grouped,
	body.single-product div.product.product-type-external {
		grid-template-columns: minmax(0, 56%) minmax(340px, 44%) !important;
		width: min(1200px, calc(100% - 32px)) !important;
	}

	body.single-product div.product.product-type-simple > .summary,
	body.single-product div.product.product-type-variable > .summary,
	body.single-product div.product.product-type-grouped > .summary,
	body.single-product div.product.product-type-external > .summary {
		padding: 24px !important;
	}
}

@media (max-width: 768px) {
	body.single-product div.product.product-type-simple,
	body.single-product div.product.product-type-variable,
	body.single-product div.product.product-type-grouped,
	body.single-product div.product.product-type-external {
		display: block !important;
		width: 100% !important;
		max-width: none !important;
	}
}

