:root {
	--gh-color-ink: #202124;
	--gh-color-muted: #62666d;
	--gh-color-border: #d9dce1;
	--gh-color-surface: #fff;
	--gh-color-soft: #f6f7f8;
	--gh-color-brand: #ed8b00;
	--gh-color-brand-dark: #b86500;
	--gh-color-danger: #b42318;
	--gh-color-success: #18794e;
	--gh-radius: 8px;
	--gh-shadow: 0 2px 8px rgba(20, 24, 32, .08);
	--gh-space-1: 8px;
	--gh-space-2: 16px;
	--gh-space-3: 24px;
	--gh-space-4: 32px;
	--gh-space-5: 40px;
}

.ghpres { color: var(--gh-color-ink); font-size: 16px; line-height: 1.5625; }
.ghpres h1 { font-size: 32px; line-height: 38px; }
.ghpres h2 { font-size: 26px; line-height: 32px; }
.ghpres h3 { font-size: 20px; line-height: 26px; }
.ghpres small, .ghpres .meta, .ghpres .product-meta { font-size: 14px; line-height: 20px; }
.ghpres :where(a, button, input, select, textarea):focus-visible { outline: 3px solid #1769aa; outline-offset: 3px; }
.ghpres :where(button, .button, .btn, input[type="submit"], input[type="button"], select) { min-height: 44px; }
.ghpres input:not([type="checkbox"]):not([type="radio"]), .ghpres textarea { min-height: 44px; }
.ghpres .gh-card, .ghpres .woocommerce-MyAccount-content > section {
	background: var(--gh-color-surface); border: 1px solid var(--gh-color-border); border-radius: var(--gh-radius);
	box-shadow: var(--gh-shadow); padding: var(--gh-space-3);
}
.ghpres .gh-status, .ghpres [class*="status-"] { border-radius: 999px; font-size: 14px; line-height: 20px; }
.ghpres .gh-table-scroll { max-width: 100%; overflow-x: auto; overscroll-behavior-inline: contain; }
.ghpres-demo-control, .ghpres-demo-section { display: none !important; }
.ghpres-mobile-quick-links { display: none; }
.ghpres-responsive-menu-toggle { display: none !important; }

/* Intentional mobile header: theme owns markup; this layer owns compact presentation only. */
@media (max-width: 767px) {
	.ghpres h1 { font-size: 24px; line-height: 30px; }
	.ghpres h2 { font-size: 21px; line-height: 27px; }
	.ghpres h3 { font-size: 18px; line-height: 24px; }
	.ghpres .container, .ghpres .elementor-container, .ghpres .elementor-section .elementor-container { padding-inline: 16px; }
	.ghpres-header-row { display: grid !important; grid-template-columns: 44px minmax(110px, 1fr) 44px; align-items: center; gap: 8px; width: 100%; min-width: 0; }
	.ghpres-header .cart-toggle,
	.ghpres-header .cart-dropdown > a,
	.ghpres-header .mini-cart > a { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; }
	.ghpres-header .gh-header-project-list-link,
	.ghpres-header .gh-header-project-list-slot,
	.ghpres-header .account,
	.ghpres-header [class*="account-dropdown"] { display: none !important; }
	.ghpres-header .search-wrapper { display: block; width: 100%; max-width: none; flex: 1 0 100%; order: 20; }
	.ghpres-header .elementor-element-4e11e8b { grid-column: 2; grid-row: 1; width: 110px !important; max-width: 110px !important; min-width: 0 !important; margin: 0 !important; text-align: center; justify-self: center; }
	.ghpres-header .elementor-element-4e11e8b .elementor-widget-container,
	.ghpres-header .elementor-element-4e11e8b .logo { display: flex; justify-content: center; width: 110px !important; max-width: 110px !important; min-width: 0 !important; }
	.ghpres-header .elementor-element-4e11e8b .site-logo { display: block; width: 110px !important; max-width: 110px !important; min-width: 0; height: auto; margin-inline: auto; transform: none !important; }
	.ghpres-header .elementor-element-96eb307 { grid-column: 3; grid-row: 1; width: 44px !important; max-width: 44px; min-width: 44px; margin: 0 !important; justify-self: end; }
	.ghpres-header .elementor-element-25eef1a { grid-column: 1 / -1; grid-row: 2; width: 100% !important; max-width: 100% !important; min-width: 0 !important; margin: 8px 0 0 !important; justify-self: stretch; }
	.ghpres-header .elementor-element-25eef1a :where(.elementor-widget-container, .search-wrapper, form.input-wrapper) { width: 100% !important; max-width: 100% !important; min-width: 0 !important; flex: 1 1 100%; }
	.ghpres-mobile-quick-links { grid-column: 1 / -1; grid-row: 3; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; width: 100%; min-width: 0; }
	.ghpres-mobile-quick-links a { display: flex; align-items: center; justify-content: center; min-height: 44px; padding: 8px 12px; border: 1px solid var(--gh-color-border); border-radius: 6px; background: #fff; }
	.ghpres-header .search-wrapper form, .ghpres-header .search-wrapper .input-wrapper { width: 100%; }
	.ghpres-header .search-wrapper input[type="search"] { width: 100%; min-height: 44px; font-size: 16px; }
	.ghpres-header img.custom-logo, .ghpres-header .logo img { max-width: 118px; height: auto; }
	.mobile-menu-wrapper a, .mobile-menu-container a { min-height: 44px; display: flex; align-items: center; }

	.ghpres form :where(.form-row, .form-group, p) { max-width: 100%; }
	.ghpres form :where(input:not([type="checkbox"]):not([type="radio"]), select, textarea) { width: 100%; max-width: 100%; font-size: 16px; }
	.ghpres form label { display: block; margin-bottom: 6px; }
	.ghpres form label:has(input[type="checkbox"]), .ghpres form label:has(input[type="radio"]) { min-height: 44px; display: flex; align-items: center; gap: 10px; }

	/* Project List: preserve YITH actions, replace the wide row with a card. */
	.ghpres-project-list,
	.ghpres-project-list :where(.page-wrapper, .main, .page-content, .container, .elementor, .elementor-section, .elementor-container, .elementor-column, .elementor-widget-wrap, .elementor-widget-container, .woocommerce, .yith-wcwl-form, .wishlist_table, tbody, tr, td) { max-width: 100%; min-width: 0; box-sizing: border-box; }
	.ghpres-project-list .yith-wcwl-form { width: 100%; max-width: 100%; min-width: 0; overflow: visible; }
	.ghpres-project-list .woocommerce table.shop_table.wishlist_table { display: block; width: 100%; min-width: 0; border: 0; }
	.ghpres-project-list table.wishlist_table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
	.ghpres-project-list table.wishlist_table tbody { display: grid; grid-template-columns: minmax(0, 1fr); gap: 16px; width: 100%; min-width: 0; }
	.ghpres-project-list table.wishlist_table tr { display: grid; grid-template-columns: 96px minmax(0, 1fr); gap: 8px 16px; width: 100%; min-width: 0; padding: 16px; border: 1px solid var(--gh-color-border); border-radius: var(--gh-radius); background: #fff; box-shadow: var(--gh-shadow); }
	.ghpres-project-list .woocommerce table.shop_table.wishlist_table td { display: block; width: auto; min-width: 0; padding: 0; border: 0; text-align: left; }
	.ghpres-project-list td.product-thumbnail { grid-row: 1 / span 3; position: relative; }
	.ghpres-project-list td.product-thumbnail img { width: 96px; height: 96px; object-fit: cover; padding-top: 0 !important; border-radius: 6px; }
	.ghpres-project-list td.product-name { font-size: 18px; line-height: 24px; font-weight: 700; }
	.ghpres-project-list td.product-price, .ghpres-project-list td.product-stock-status { font-size: 15px; line-height: 22px; }
	.ghpres-project-list :where(td.product-price, .product-price, .woocommerce-Price-amount, .woocommerce-Price-currencySymbol) { min-width: 0; max-width: 100%; overflow-wrap: anywhere; word-break: normal; white-space: normal; }
	.ghpres-project-list td.product-price > *, .ghpres-project-list .product-price > * { min-width: 0; max-width: 100%; }
	.ghpres-project-list td.product-add-to-cart { grid-column: 1 / -1; }
	.ghpres-project-list .yith-product-actions { display: grid; grid-template-columns: 1fr; gap: 8px; }
	.ghpres-project-list .yith-product-actions :where(a,button), .ghpres-project-list .remove_from_wishlist { min-height: 44px; display: inline-flex; align-items: center; justify-content: center; }
	.ghpres-project-list .remove_from_wishlist { min-width: 44px; }

	/* Catalogue hierarchy and touch-safe controls without changing catalogue data. */
	.ghpres-catalogue .product { min-width: 0; }
	.ghpres-catalogue .product .product-details { display: flex; flex-direction: column; gap: 6px; }
	.ghpres-catalogue .product :where(.button, .btn-product, .add_to_cart_button, .yith-wcwl-add-to-wishlist a) { min-width: 44px; min-height: 44px; }
	.ghpres-catalogue .shop-control select, .ghpres-catalogue .woocommerce-ordering select { width: 100%; }
	.ghpres-catalogue .sidebar-toggle { min-height: 44px; padding-inline: 16px; }

	.single-product .summary { display: flex; flex-direction: column; gap: 12px; }
	.single-product .summary .product_title { order: 1; }
	.single-product .summary .price { order: 2; font-size: 24px; line-height: 30px; }
	.single-product .summary .stock { order: 3; }
	.single-product .summary .cart { order: 4; }
	.single-product .summary .product_meta { order: 5; }
	.single-product .quantity :where(input,button) { min-width: 44px; min-height: 44px; }

	.ghpres-account .woocommerce-MyAccount-navigation ul { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; padding: 0; }
	.ghpres-account .woocommerce-MyAccount-navigation li { margin: 0; list-style: none; }
	.ghpres-account .woocommerce-MyAccount-navigation a { display: flex; min-height: 52px; align-items: center; padding: 10px 12px; border: 1px solid var(--gh-color-border); border-radius: 6px; background: #fff; font-size: 15px; line-height: 20px; }
	.ghpres-account .woocommerce-MyAccount-navigation .is-active a { border-color: var(--gh-color-brand); box-shadow: inset 4px 0 var(--gh-color-brand); }

	#footer .footer-newsletter + .footer-newsletter, #footer .wpcf7 + .wpcf7 { display: none; }
}

@media (min-width: 768px) and (max-width: 1023px) {
	.ghpres h1 { font-size: 28px; line-height: 34px; }
	.ghpres h2 { font-size: 23px; line-height: 29px; }
	.ghpres h3 { font-size: 19px; line-height: 25px; }
	.ghpres-header .header-main .container { gap: 16px; }
	.ghpres-header .search-wrapper { min-width: 260px; flex: 1; }
	.ghpres-header .gh-header-project-list__label { display: none; }
	.ghpres-header :where(a,button,input,select) { min-height: 44px; }
}

/* Header template 211 hides its full navigation on tablet. Reuse Wolmart's
 * existing off-canvas menu and give the commerce controls a deliberate grid. */
@media (min-width: 768px) and (max-width: 1199px) {
	/* Elementor only hides this section through its tablet breakpoint. Keep
	 * the full desktop menu out of the entire deliberate compact range. */
	.ghpres-header.elementor-element-f06da95 ~ .elementor-element-4bd3609,
	.custom-header .elementor-element-4bd3609 {
		display: none !important;
	}
	.ghpres-header-row {
		display: grid !important;
		grid-template-columns: 44px minmax(110px, 130px) minmax(130px, 1fr) auto auto auto;
		align-items: center;
		gap: 10px;
		width: 100%;
		min-width: 0;
	}
	.ghpres-header .ghpres-responsive-menu-toggle {
		display: inline-flex !important;
		grid-column: 1;
		grid-row: 1;
		align-items: center;
		justify-content: center;
		width: 44px;
		min-width: 44px;
		height: 44px;
		margin: 0 !important;
		font-size: 27px;
	}
	.ghpres-header .elementor-element-4e11e8b {
		grid-column: 2;
		grid-row: 1;
		width: auto !important;
		min-width: 0 !important;
		margin: 0 !important;
	}
	.ghpres-header .elementor-element-98d4334 {
		grid-column: 3;
		grid-row: 1;
		width: auto !important;
		min-width: 0 !important;
		margin: 0 !important;
	}
	.ghpres-header .elementor-element-6272861 {
		grid-column: 4;
		grid-row: 1;
		width: auto !important;
		margin: 0 !important;
	}
	.ghpres-header .elementor-element-f750d96 {
		grid-column: 5;
		grid-row: 1;
		width: auto !important;
		margin: 0 !important;
	}
	.ghpres-header .elementor-element-742326b { display: none !important; }
	.ghpres-header .elementor-element-96eb307 {
		grid-column: 6;
		grid-row: 1;
		width: auto !important;
		min-width: 0 !important;
		margin: 0 !important;
	}
	.ghpres-header .elementor-element-25eef1a {
		grid-column: 1 / -1;
		grid-row: 2;
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		margin: 0 !important;
	}
	.ghpres-header .elementor-element-25eef1a :where(.elementor-widget-container, .search-wrapper, form.input-wrapper) {
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
	}
}

@media (min-width: 1024px) {
	.ghpres .container, .ghpres .elementor-container { padding-inline: 24px; }
}

/* Wave 2A: shared cart and checkout presentation; no commercial calculations. */
.ghpres :where(.gh-checkout-section-card,.ghp-who-will-pay,.ghl-checkout-site,.ghl-delivery-summary-card) {
	box-sizing: border-box;
	border: 1px solid var(--gh-color-border, #dcdcde);
	border-radius: 8px;
	background: #fff;
	padding: 16px;
}
.ghpres :where(.ghl-delivery-summary-card__facts,.ghpres-definition-rows) { display: grid; gap: 8px; }
.ghpres .ghl-delivery-summary-card__facts > div { display: flex; justify-content: space-between; gap: 16px; }
.ghpres .ghl-delivery-summary-card__amount { padding-top: 10px; border-top: 1px solid var(--gh-color-border, #dcdcde); font-size: 18px; }
.ghpres .ghl-commercial-summary-suppressed { display: none; }
.ghpres details.ghl-delivery-details { margin-top: 12px; border-top: 1px solid var(--gh-color-border, #dcdcde); padding-top: 10px; }
.ghpres details > summary { min-height: 44px; display: flex; align-items: center; cursor: pointer; font-weight: 700; }
.ghpres :where(a.remove,input.qty,.quantity button,.ghl-site-selector select,.ghl-site-selector button,.checkout-button,#place_order,.woocommerce-form__label-for-checkbox) { min-height: 44px; }
.ghpres .ghl-cart-selling-unit { display: block; margin-top: 4px; color: #343a40; font-weight: 600; }
.ghpres :where(a.remove,.checkout-button,#place_order) { display: inline-flex; align-items: center; justify-content: center; }
.ghpres a.remove { min-width: 44px; min-height: 44px; }
.ghpres :where(a,button,input,select,textarea,summary):focus-visible { outline: 3px solid #155f3d; outline-offset: 3px; }
.ghpres-checkout .ghp-who-will-pay :where(input:not([type="checkbox"]):not([type="radio"]),select,textarea) { width: 100%; max-width: 100%; box-sizing: border-box; min-height: 44px; }
.ghpres-checkout .ghp-payer-mode input[type="radio"] { flex:0 0 auto;width:18px;height:18px;min-height:0;margin:0; }
.ghpres-checkout .woocommerce-terms-and-conditions-checkbox-text { display: inline-block; padding-block: 12px; }
.ghpres-checkout #place_order { min-height: 48px; }
.ghpres-checkout #place_order.ghpres-is-submitting { opacity: .7; cursor: wait; }
.ghpres-checkout #mailpoet_woocommerce_checkout_optin_field label { display: flex; align-items: center; gap: 10px; min-height: 44px; }
.ghpres-checkout .ghpres-checkout-flow { display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,420px);gap:28px;align-items:start; }
.ghpres-checkout .ghpres-checkout-main { display:grid;gap:18px;min-width:0; }
.ghpres-checkout .ghpres-checkout-main > section { box-shadow:0 2px 10px rgba(20,20,20,.04);border-top:3px solid #d89b18; }
.ghpres-checkout .ghpres-checkout-main > section > :is(h2,h3):first-child { margin-top:0;color:#151515; }
.ghpres-checkout .ghpres-section-number { display:inline-grid;place-items:center;width:28px;height:28px;margin-right:9px;border-radius:50%;background:#171717;color:#e0a51b;font-size:14px;vertical-align:middle; }
.ghpres-checkout .ghpres-order-summary { position:sticky;top:24px;background:#fff;border:1px solid #dcdcde;border-radius:10px;padding:20px;box-shadow:0 8px 24px rgba(20,20,20,.08);min-width:0; }
.ghpres-checkout .ghpres-order-summary #order_review_heading { margin:0 0 14px;font-size:24px;color:#151515; }
.ghpres-checkout .ghpres-order-summary #order_review { width:100%;float:none; }
.ghpres-checkout .ghpres-order-summary .order-total { font-size:21px;border-top:2px solid #171717; }
.ghpres-checkout .ghpres-order-summary #place_order { width:100%;background:#151515;color:#fff;border-color:#151515;font-weight:800;letter-spacing:.04em; }
.ghpres-checkout .ghp-payer-mode { display:grid;grid-template-columns:1fr 1fr;gap:10px; }
.ghpres-checkout .ghp-payer-mode label { border:1px solid #c9c9c9;border-radius:6px;padding:12px;cursor:pointer; }
.ghpres-checkout :where(.hfat-tax-error,.ghp-payer-error,.ghpres-terms-error,.ghpres-moq-error) { background:#fff3f1;border-left:4px solid #b42318;color:#7a271a;padding:10px;margin:10px 0; }
.ghpres-checkout .hfat-selected-entity { margin-top:10px;padding:12px;background:#faf7ef;border-radius:6px; }
.ghpres-checkout .hfat-inline-form { margin-top:14px;padding:14px;border:1px solid #e2c98f;border-radius:6px; }
.ghpres-checkout .hfat-inline-form :where(input,select),.ghpres-checkout .hfat-business-fields > select { width:100%;min-height:44px; }
.ghpres-checkout form.checkout > :not(.ghpres-checkout-flow):not(.woocommerce-NoticeGroup) { max-width:100%; }
@media (max-width: 1023px) { .ghpres-checkout .ghpres-checkout-flow { grid-template-columns:1fr; } .ghpres-checkout .ghpres-order-summary { position:static; } }

@media (max-width: 767px) {
	.ghpres-checkout .ghp-payer-mode { grid-template-columns:1fr; }
	.ghpres-cart .shop_table.cart { display: block; width: 100%; }
	.ghpres-cart .shop_table.cart thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
	.ghpres-cart .shop_table.cart tbody, .ghpres-cart .shop_table.cart tr.cart_item { display: grid; width: 100%; min-width: 0; }
	.ghpres-cart .shop_table.cart tr.cart_item { grid-template-columns: 88px minmax(0,1fr); gap: 8px 14px; padding: 16px; border: 1px solid var(--gh-color-border, #dcdcde); border-radius: 8px; }
	.ghpres-cart .shop_table.cart tr.cart_item td { display: block; width: auto; min-width: 0; padding: 4px 0; border: 0; }
	.ghpres-cart .shop_table.cart .product-thumbnail { grid-row: 1 / span 3; }
	.ghpres-cart .shop_table.cart .product-thumbnail img { width: 80px; height: auto; }
	.ghpres-cart .shop_table.cart .product-remove { grid-column: 1; grid-row: 4; }
	.ghpres-cart .shop_table.cart :where(.product-price,.product-quantity,.product-subtotal) { grid-column: 2; }
	.ghpres-cart .shop_table.cart :where(.product-price,.product-quantity,.product-subtotal)::before { display: block; color: #5b6168; font-size: 14px; line-height: 20px; font-weight: 600; }
	.ghpres-cart .shop_table.cart .product-price::before { content: 'Price'; }
	.ghpres-cart .shop_table.cart .product-quantity::before { content: 'Quantity'; }
	.ghpres-cart .shop_table.cart .product-subtotal::before { content: 'Subtotal'; }
	.ghpres-cart .cart-collaterals, .ghpres-cart .cart_totals { width: 100%; max-width: 100%; }
	.ghpres-cart .cart_totals .checkout-button { width: 100%; min-height: 48px; }
	.ghpres-cart .ghl-delivery-preview { margin-block: 16px; }
	.ghpres-cart .ghl-delivery-leg__body { grid-template-columns: minmax(0,1fr); }
	.ghpres-checkout form.checkout :where(.col2-set,.col-1,.col-2,#order_review,.woocommerce-checkout-payment) { width: 100%; max-width: 100%; min-width: 0; }
	.ghpres-checkout form.checkout :where(.form-row-first,.form-row-last) { float: none; width: 100%; }
	.ghpres-checkout #order_review table { table-layout: fixed; width: 100%; }
	.ghpres-checkout #order_review th, .ghpres-checkout #order_review td { overflow-wrap: anywhere; }
	.ghpres-checkout #order_review .order-total { font-size: 20px; line-height: 28px; }
	.ghpres-checkout #place_order { width: 100%; margin-top: 16px; }
	.ghpres-checkout .woocommerce-form__label-for-checkbox { display: flex; gap: 10px; align-items: center; }
}

/* Phase 3A: one public homepage grid across Wolmart and Elementor ownership layers. */
body.home.page-id-2.ghpres {
	--gh-home-container: 1600px;
	--gh-home-gutter: clamp(16px, 2.5vw, 32px);
	--gh-home-section-space: clamp(32px, 5vw, 72px);
	--gh-home-grid-gap: clamp(16px, 2vw, 28px);
}

body.home.page-id-2.ghpres :where(#header,#main,#footer),
body.home.page-id-2.ghpres :where(#header,#main,#footer) * {
	box-sizing: border-box;
}

body.home.page-id-2.ghpres #main > .container,
body.home.page-id-2.ghpres #header .elementor-section.elementor-section-boxed > .elementor-container,
body.home.page-id-2.ghpres #footer .elementor-section.elementor-section-boxed > .elementor-container {
	width: 100%;
	max-width: var(--gh-home-container);
	margin-inline: auto;
	padding-inline: var(--gh-home-gutter);
}

body.home.page-id-2.ghpres #main .elementor-2 {
	width: 100%;
	max-width: none;
}

body.home.page-id-2.ghpres #main .elementor-2 .elementor-top-section {
	width: 100%;
	max-width: none;
	margin-inline: 0;
}

body.home.page-id-2.ghpres #main .elementor-2 .elementor-top-section > .elementor-container {
	width: 100%;
	max-width: none;
	margin-inline: 0;
	padding-inline: 0;
}

body.home.page-id-2.ghpres #main .elementor-2 :where(.elementor-column,.elementor-widget-wrap,.elementor-widget-container) {
	min-width: 0;
}

body.home.page-id-2.ghpres #main .elementor-2 :where(img,video,iframe) {
	max-width: 100%;
}

body.home.page-id-2.ghpres #main .elementor-2 :where(.row,.products) {
	max-width: 100%;
}

@media (max-width: 1023px) {
	body.home.page-id-2.ghpres {
		--gh-home-gutter: clamp(16px, 3vw, 24px);
		--gh-home-section-space: clamp(28px, 5vw, 48px);
	}
}

@media (max-width: 767px) {
	body.home.page-id-2.ghpres #main .elementor-2 .products.row:not(.slider-wrapper) {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: var(--gh-home-grid-gap);
		width: 100%;
		margin-inline: 0;
	}

	body.home.page-id-2.ghpres #main .elementor-2 .products.row:not(.slider-wrapper) > :where(li,.product,.product-category) {
		width: 100%;
		max-width: none;
		margin: 0;
	}

	body.home.page-id-2.ghpres #main .elementor-2 :where(.banner,.banner-content,.elementor-widget-container) {
		max-width: 100%;
	}

	body.home.page-id-2.ghpres #main .elementor-2 :where(a.button,.btn,button) {
		min-height: 44px;
	}
}

@media (max-width: 430px) {
	body.home.page-id-2.ghpres #main .elementor-2 .products.row:not(.slider-wrapper) {
		grid-template-columns: minmax(0, 1fr);
	}
}

/* Homepage 0.1.6: dimension and symmetry corrections only. */
body.home.page-id-2.ghpres {
	--gh-home-columns: repeat(12, minmax(0, 1fr));
	--gh-home-column-gap: 20px;
	--gh-home-row-gap: 24px;
}

body.home.page-id-2.ghpres #main .elementor-2 > .elementor-top-section {
	margin-block: 0 var(--gh-home-row-gap);
}

body.home.page-id-2.ghpres #main .elementor-2 > :where(
	.elementor-element-82294e9,
	.elementor-element-fa3baef,
	.elementor-element-a551ae9,
	.elementor-element-90dc583,
	.elementor-element-24e9265
) > .elementor-container {
	display: grid;
	grid-template-columns: var(--gh-home-columns);
	column-gap: var(--gh-home-column-gap);
	align-items: stretch;
}

body.home.page-id-2.ghpres #main .elementor-2 > :where(
	.elementor-element-82294e9,
	.elementor-element-24e9265
) > .elementor-container > .elementor-column:first-child {
	grid-column: span 9;
}

body.home.page-id-2.ghpres #main .elementor-2 > :where(
	.elementor-element-82294e9,
	.elementor-element-24e9265
) > .elementor-container > .elementor-column:last-child {
	grid-column: span 3;
}

body.home.page-id-2.ghpres #main .elementor-2 > :where(
	.elementor-element-fa3baef,
	.elementor-element-a551ae9,
	.elementor-element-90dc583
) > .elementor-container > .elementor-column {
	grid-column: span 6;
}

body.home.page-id-2.ghpres #main .elementor-2 > :where(
	.elementor-element-82294e9,
	.elementor-element-fa3baef,
	.elementor-element-a551ae9,
	.elementor-element-90dc583,
	.elementor-element-24e9265
) > .elementor-container > .elementor-column {
	width: auto !important;
	max-width: none !important;
	min-width: 0;
	height: 100%;
}

body.home.page-id-2.ghpres #main .elementor-element-82294e9 .elementor-element-73b058e > .elementor-widget-wrap,
body.home.page-id-2.ghpres #main .elementor-element-82294e9 .elementor-element-73b058e .slider-wrapper,
body.home.page-id-2.ghpres #main .elementor-element-82294e9 .elementor-element-73b058e .slider-slide,
body.home.page-id-2.ghpres #main .elementor-element-82294e9 .elementor-element-73b058e .elementor-inner-section,
body.home.page-id-2.ghpres #main .elementor-element-82294e9 .elementor-element-73b058e .banner,
body.home.page-id-2.ghpres #main .elementor-element-82294e9 .elementor-element-73b058e .banner-img,
body.home.page-id-2.ghpres #main .elementor-element-82294e9 .elementor-element-73b058e .banner-img img {
	height: 100% !important;
	min-height: 100%;
}

body.home.page-id-2.ghpres #main .elementor-element-82294e9 .elementor-element-73b058e .slider-wrapper {
	align-self: stretch;
	flex: 1 1 auto;
}

body.home.page-id-2.ghpres #main .elementor-element-82294e9 .elementor-element-73b058e .banner-img img {
	object-fit: cover;
}

body.home.page-id-2.ghpres #main .elementor-2 > :where(
	.elementor-element-00fa10d,
	.elementor-element-f4d6f19,
	.elementor-element-dd6f137,
	.elementor-element-254b12c
) {
	grid-column: 1 / -1 !important;
	width: 100%;
}

body.home.page-id-2.ghpres #main .elementor-2 > :where(
	.elementor-element-dd6f137,
	.elementor-element-254b12c
) {
	margin-inline: 0;
}

@media (max-width: 1024px) {
	body.home.page-id-2.ghpres {
		--gh-home-column-gap: 20px;
		--gh-home-row-gap: 20px;
	}

	body.home.page-id-2.ghpres #main .elementor-2 > :where(
		.elementor-element-82294e9,
		.elementor-element-fa3baef,
		.elementor-element-a551ae9,
		.elementor-element-90dc583,
		.elementor-element-24e9265
	) > .elementor-container {
		grid-template-columns: minmax(0, 1fr);
		row-gap: var(--gh-home-row-gap);
	}

	body.home.page-id-2.ghpres #main .elementor-2 > :where(
		.elementor-element-82294e9,
		.elementor-element-fa3baef,
		.elementor-element-a551ae9,
		.elementor-element-90dc583,
		.elementor-element-24e9265
	) > .elementor-container > .elementor-column {
		grid-column: 1 / -1 !important;
		width: 100% !important;
		height: auto;
	}

	body.home.page-id-2.ghpres #main .elementor-element-82294e9 .elementor-element-73b058e > .elementor-widget-wrap,
	body.home.page-id-2.ghpres #main .elementor-element-82294e9 .elementor-element-73b058e .slider-wrapper,
	body.home.page-id-2.ghpres #main .elementor-element-82294e9 .elementor-element-73b058e .slider-slide,
	body.home.page-id-2.ghpres #main .elementor-element-82294e9 .elementor-element-73b058e .elementor-inner-section,
	body.home.page-id-2.ghpres #main .elementor-element-82294e9 .elementor-element-73b058e .banner,
	body.home.page-id-2.ghpres #main .elementor-element-82294e9 .elementor-element-73b058e .banner-img,
	body.home.page-id-2.ghpres #main .elementor-element-82294e9 .elementor-element-73b058e .banner-img img {
		height: auto !important;
		min-height: 0;
	}
}

@media (max-width: 767px) {
	body.home.page-id-2.ghpres {
		--gh-home-column-gap: 16px;
		--gh-home-row-gap: 16px;
	}
}

/* Homepage 0.1.7: hero/services composition and single-surface finishing banner. */
body.home.page-id-2.ghpres #main .elementor-2 > .elementor-element-82294e9 > .elementor-container {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	row-gap: var(--gh-home-column-gap);
}

body.home.page-id-2.ghpres {
	overflow-x: clip;
}

body.home.page-id-2.ghpres #main {
	overflow-x: clip;
}

body.home.page-id-2.ghpres #main .elementor-element-82294e9 > .elementor-container > :where(
	.elementor-element-73b058e,
	.elementor-element-bf95d51
) {
	grid-column: 1 / -1 !important;
	width: 100% !important;
	height: auto;
}

body.home.page-id-2.ghpres #main .elementor-element-82294e9 .elementor-element-73b058e > .elementor-widget-wrap,
body.home.page-id-2.ghpres #main .elementor-element-82294e9 .elementor-element-73b058e .slider-wrapper,
body.home.page-id-2.ghpres #main .elementor-element-82294e9 .elementor-element-73b058e .slider-slide,
body.home.page-id-2.ghpres #main .elementor-element-82294e9 .elementor-element-73b058e .elementor-inner-section,
body.home.page-id-2.ghpres #main .elementor-element-82294e9 .elementor-element-73b058e .banner,
body.home.page-id-2.ghpres #main .elementor-element-82294e9 .elementor-element-73b058e .banner-img {
	height: auto !important;
	min-height: 0;
}

body.home.page-id-2.ghpres #main .elementor-element-82294e9 .elementor-element-73b058e .slider-wrapper,
body.home.page-id-2.ghpres #main .elementor-element-82294e9 .elementor-element-73b058e .slider-slide,
body.home.page-id-2.ghpres #main .elementor-element-82294e9 .elementor-element-73b058e .banner,
body.home.page-id-2.ghpres #main .elementor-element-82294e9 .elementor-element-73b058e .banner-img {
	aspect-ratio: 2 / 1;
}

body.home.page-id-2.ghpres #main .elementor-element-82294e9 .elementor-element-73b058e .slider-slide {
	width: 100% !important;
	flex: 0 0 100%;
}

body.home.page-id-2.ghpres #main .elementor-element-82294e9 .elementor-element-73b058e .banner-img img {
	width: 100% !important;
	height: 100% !important;
	min-height: 0;
	object-fit: cover;
}

body.home.page-id-2.ghpres #main .elementor-element-82294e9 .elementor-element-bf95d51 > .elementor-widget-wrap {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: var(--gh-home-column-gap);
	align-items: stretch;
	width: 100%;
	padding-inline: 0 !important;
}

body.home.page-id-2.ghpres #main .elementor-element-bf95d51 > .elementor-widget-wrap > .elementor-element-8358df9 {
	grid-column: 1 / -1;
	margin: 0;
}

body.home.page-id-2.ghpres #main .elementor-element-bf95d51 > .elementor-widget-wrap > :where(
	.elementor-element-88e8de2,
	.elementor-element-dfd72bb,
	.elementor-element-cad15a5
) {
	display: flex;
	width: 100%;
	height: 100%;
	margin: 0;
	padding-inline: 24px !important;
}

body.home.page-id-2.ghpres #main .elementor-element-bf95d51 > .elementor-widget-wrap > :where(
	.elementor-element-88e8de2,
	.elementor-element-dfd72bb,
	.elementor-element-cad15a5
) > .elementor-container {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 96px;
	width: 100%;
	height: 100%;
	align-items: center;
}

body.home.page-id-2.ghpres #main .elementor-element-bf95d51 > .elementor-widget-wrap > :where(
	.elementor-element-88e8de2,
	.elementor-element-dfd72bb,
	.elementor-element-cad15a5
) > .elementor-container > .elementor-column {
	width: auto !important;
	max-width: none !important;
	min-width: 0;
	order: initial !important;
}

body.home.page-id-2.ghpres #main .elementor-element-bf95d51 > .elementor-widget-wrap > :where(
	.elementor-element-88e8de2,
	.elementor-element-dfd72bb,
	.elementor-element-cad15a5
) > .elementor-container > .elementor-column:first-child {
	grid-column: 1;
}

body.home.page-id-2.ghpres #main .elementor-element-bf95d51 > .elementor-widget-wrap > :where(
	.elementor-element-88e8de2,
	.elementor-element-dfd72bb,
	.elementor-element-cad15a5
) > .elementor-container > .elementor-column:last-child {
	grid-column: 2;
	width: 96px !important;
	max-width: 96px !important;
	overflow: hidden;
}

body.home.page-id-2.ghpres #main .elementor-element-bf95d51 > .elementor-widget-wrap > :where(
	.elementor-element-88e8de2,
	.elementor-element-dfd72bb,
	.elementor-element-cad15a5
) > .elementor-container > .elementor-column:last-child img {
	display: block;
	width: 100% !important;
	height: auto !important;
	max-width: 96px !important;
}

body.home.page-id-2.ghpres #main .elementor-element-bf95d51 > .elementor-widget-wrap > :where(
	.elementor-element-23afd10,
	.elementor-element-a465b92
) {
	display: none;
}

body.home.page-id-2.ghpres #main .elementor-element-f4d6f19::before,
body.home.page-id-2.ghpres #main .elementor-element-f4d6f19::after,
body.home.page-id-2.ghpres #main .elementor-element-f4d6f19 > .elementor-background-overlay {
	background: none !important;
	background-image: none !important;
}

body.home.page-id-2.ghpres #main .elementor-element-f4d6f19 > .elementor-container.banner > .banner-img {
	visibility: hidden;
}

body.home.page-id-2.ghpres #main .elementor-element-f4d6f19 > .elementor-container.banner {
	position: relative;
	isolation: isolate;
	overflow: hidden;
}

@media (max-width: 1024px) {
	body.home.page-id-2.ghpres #main .elementor-element-82294e9 .elementor-element-bf95d51 > .elementor-widget-wrap {
		grid-template-columns: minmax(0, 1fr);
	}

	body.home.page-id-2.ghpres #main .elementor-element-bf95d51 > .elementor-widget-wrap > .elementor-element-8358df9 {
		grid-column: 1;
	}
}

@media (max-width: 767px) {
	body.home.page-id-2.ghpres #main .elementor-element-bf95d51 > .elementor-widget-wrap > :where(
		.elementor-element-88e8de2,
		.elementor-element-dfd72bb,
		.elementor-element-cad15a5
	) > .elementor-container {
		grid-template-columns: minmax(0, 1fr) 80px;
	}

	body.home.page-id-2.ghpres #main .elementor-element-bf95d51 > .elementor-widget-wrap > :where(
		.elementor-element-88e8de2,
		.elementor-element-dfd72bb,
		.elementor-element-cad15a5
	) > .elementor-container > .elementor-column:last-child,
	body.home.page-id-2.ghpres #main .elementor-element-bf95d51 > .elementor-widget-wrap > :where(
		.elementor-element-88e8de2,
		.elementor-element-dfd72bb,
		.elementor-element-cad15a5
	) > .elementor-container > .elementor-column:last-child img {
		width: 80px !important;
		max-width: 80px !important;
	}
}

/* Homepage 0.1.8: full-width Weekly Deals; retain but suppress the lower Bulk Orders rail. */
body.home.page-id-2.ghpres #main .elementor-2 > .elementor-element-24e9265 > .elementor-container {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	column-gap: 0;
	align-items: stretch;
}

body.home.page-id-2.ghpres #main .elementor-element-24e9265 > .elementor-container > .elementor-element-7762529 {
	display: block;
	grid-column: 1 / -1 !important;
	width: 100% !important;
	max-width: none !important;
	min-width: 0;
	height: auto;
}

body.home.page-id-2.ghpres #main .elementor-element-24e9265 > .elementor-container > .elementor-element-5660a5a {
	display: none !important;
}

body.home.page-id-2.ghpres #main .elementor-element-24e9265 .elementor-element-3c8ffac .slider-slide {
	width: 100% !important;
}

/* Keep native order-history actions reachable within mobile account pages. */
@media (max-width: 767px) {
  body.woocommerce-account .woocommerce-MyAccount-content { min-width: 0; }
  body.woocommerce-account table.woocommerce-orders-table {
    display: block;
    width: 100%;
    max-width: 100%;
    overflow-x: auto;
  }
}

/* UAT requester action labels wrap without changing form behavior. */
@media (max-width: 767px) {
 body.ghpres.woocommerce-account .woocommerce-MyAccount-content button[name="ghp_requester_decision"] {
  box-sizing: border-box; max-width: 100%; min-height: 44px; white-space: normal; overflow-wrap: anywhere; line-height: 1.4;
 }
}
