/* ─────────────────────────────────────────────────────────────────────────────
   Turn On — Global Responsive Overrides
   Applies cross-cutting responsive fixes to all turn-on/* blocks
   Breakpoints: 1280 / 1100 / 900 / 700 / 480
   ───────────────────────────────────────────────────────────────────────────── */

/* ── Global safety nets ───────────────────────────────────────────────────── */
html {
	overflow-x: clip; /* clip does not create a scroll container — keeps position:sticky working */
	max-width: 100vw;
	width: 100%;
	background: #fbfaf7 !important;
}
body {
	overflow-x: clip; /* clip (not hidden) — avoids making body a scroll container, keeps position:sticky working */
	position: relative;
}

/* Force ALL top-level sections to contain horizontal overflow */
main, main > *, .wp-site-blocks, .wp-site-blocks > *,
.wp-block-group, [class*="-section"] {
	max-width: 100vw;
	overflow-x: clip; /* clip instead of hidden — preserves sticky in child elements */
}

/* Allow horizontal scrolling ONLY inside specific scroll containers */
.toc-category-grid,
.tod-filters,
.tobc2-filters,
.ttc-tabs,
.tobf-tabs,
[data-allow-scroll-x] {
	overflow-x: auto !important;
	overflow-y: visible !important;
}

/* ═════════════════════════════════════════════════════════════════════════════
   UNIFIED CONTAINER WIDTH — all blocks aligned with the header
   Model: max-width:1440px + padding:0 100px (same as .toh-container / .toca-inner)
   This gives 1240px effective content width, starting at 100px from left at ≥1440px.
   ═════════════════════════════════════════════════════════════════════════════ */

[class$="-wrap"]:not(.tobh-card):not(.to-terms-wrap):not(.toph-description-wrap),
[class*=" -wrap"]:not(.tobh-card):not(.to-terms-wrap):not(.toph-description-wrap),
.tch-wrap,
.tocu-wrap,
.tovc-wrap,
.tosu-wrap,
.tosi-wrap,
.tofp-wrap,
.tonp-wrap,
.toq-wrap,
.tobh-card,
.tobc2-wrap,
.tobf-wrap,
.tosp-wrap,
.topa-wrap,
.town-wrap,
.tom-wrap,
.toj-wrap,
.tch-wrap,
.tci-wrap,
.tobc-wrap,
.tof-wrap,
.toh-wrap,
.toc-wrap,
.tcs-wrap,
.tfb-wrap,
.tbs-wrap,
.tfc-wrap,
.ttc-wrap,
.toq-wrap {
	margin-left: auto !important;
	margin-right: auto !important;
	box-sizing: border-box !important;
}

/* ── XL screens (≥ 1800px — large monitors / 4K) ─────────────────────────── */
@media (min-width: 1800px) {

	/* Hero slider */
	.toh-hero__inner  { max-width: 1760px !important; padding-left: 120px !important; padding-right: 120px !important; }
	.toh-hero__track  { height: 620px !important; }
	.toh-hero__title  { font-size: 46px !important; }
	.toh-hero__dots   { left: 120px !important; }

	/* Product archive — 4-col grid + wider sidebar */
	.topa-grid-wrap   { grid-template-columns: 280px 1fr !important; }
	.topa-grid        { grid-template-columns: repeat(4, 1fr) !important; }

	/* Category archive — 7 cols */
	.toca-grid        { grid-template-columns: repeat(7, 1fr) !important; }

	/* Featured deals — 5 cols */
	.tod-grid:not(.topa-grid) { grid-template-columns: repeat(5, 1fr) !important; }

	/* Wishlist — 4 cols */
	.town-grid        { grid-template-columns: repeat(4, 1fr) !important; }

	/* B2B catalog — 5 cols */
	.tobc2-grid       { grid-template-columns: repeat(5, 1fr) !important; }

	/* Top charts — center inner body (section is full-bleed) */
	.toch-section     { padding-left: 120px !important; padding-right: 120px !important; max-width: 1760px !important; margin-left: auto !important; margin-right: auto !important; }
	.toch-why-card    { width: 400px !important; }

	/* Features bar — center inner bar (wrapper is full-bleed) */
	.tob-features-wrapper { padding-left: 0 !important; padding-right: 0 !important; }
	.tob-features-bar { margin-left: 120px; margin-right: 120px; padding-left: 120px; padding-right: 120px; box-sizing: border-box; }

	/* Single product */
	.tosp-main        { column-gap: 60px !important; }

	/* Flash CTA */
	.tofl-section     { max-width: 1760px !important; }

	/* Sign-in / Sign-up side panels */
	.tosi-side        { flex: 0 0 700px !important; width: 700px !important; }
	.tosu-side        { flex: 0 0 700px !important; width: 700px !important; }

	/* Page hero image panel */
	.toph-image       { flex: 0 0 680px !important; width: 680px !important; height: 680px !important; }

	/* My Account */
	.toma-wrapper     { max-width: 1760px !important; }
}

/* Consistent horizontal padding — matches header/footer breakpoints exactly */
@media (min-width: 1281px) {
	[class$="-wrap"]:not(.tobh-card):not(.toh-hero):not(.toh-hero__track):not(.toh-hero__slide):not(.topa-grid-wrap):not(.tof-logo-wrap):not(.to-terms-wrap):not(.tosu-checkbox-wrap):not(.tosi-checkbox-wrap):not(.toph-description-wrap),
	[class*=" -wrap"]:not(.tobh-card),
	.toh-container, .tof-container {
		padding-left: 100px !important;
		padding-right: 100px !important;
	}
}

@media (min-width: 1101px) and (max-width: 1280px) {
	[class$="-wrap"]:not(.tobh-card):not(.toh-hero):not(.toh-hero__track):not(.toh-hero__slide):not(.topa-grid-wrap):not(.tof-logo-wrap):not(.to-terms-wrap):not(.tosu-checkbox-wrap):not(.tosi-checkbox-wrap):not(.toph-description-wrap),
	.toh-container, .tof-container {
		padding-left: 60px !important;
		padding-right: 60px !important;
	}
}

@media (max-width: 1100px) {
	[class$="-wrap"]:not(.tobh-card):not(.toh-hero):not(.toh-hero__track):not(.toh-hero__slide):not(.topa-grid-wrap):not(.tof-logo-wrap):not(.to-terms-wrap):not(.tosu-checkbox-wrap):not(.tosi-checkbox-wrap):not(.toph-description-wrap),
	.toh-container, .tof-container {
		padding-left: 32px !important;
		padding-right: 32px !important;
	}
}

@media (max-width: 740px) {
	[class$="-wrap"]:not(.tobh-card):not(.toh-hero):not(.toh-hero__track):not(.toh-hero__slide):not(.topa-grid-wrap):not(.tof-logo-wrap):not(.to-terms-wrap):not(.tosu-checkbox-wrap):not(.tosi-checkbox-wrap):not(.toph-description-wrap),
	.toh-container, .tof-container {
		padding-left: 20px !important;
		padding-right: 20px !important;
	}
}

/* Sections should be full-width but have their inner wraps centered */
[class$="-section"], [class*=" -section"] {
	width: 100% !important;
	max-width: 100% !important;
	box-sizing: border-box;
}

/* Breadcrumb — always match page background */
.tobc-section, [class*="tobc-"][class*="-section"] {
	background: #fbfaf7 !important;
}

/* About Us blocks — always match page background */
.toph-section, .toj-section, .tom-section {
	background: #fbfaf7 !important;
}

/* ── Wishlist heart icon — filled state (global) ───────────────────────────── */
[data-turn-on-wishlist-toggle] {
	cursor: pointer;
	transition: background 0.18s ease, transform 0.15s ease;
}
[data-turn-on-wishlist-toggle]:hover { transform: scale(1.08); }
[data-turn-on-wishlist-toggle].is-loading { opacity: 0.6; pointer-events: none; }

.tod-wishlist.is-in-wishlist {
	background: rgba(60, 179, 113, 0.17) !important;
}
.tod-wishlist.is-in-wishlist svg path {
	fill: #3cb371 !important;
	stroke: #3cb371 !important;
}

/* Remove default underline from all turn-on/* button-style links */
a[class*="-pill"],
a[class*="-btn"],
a[class*="-button"],
a[class*="-submit"],
a[class*="-cta"],
a.town-empty-btn,
a.tocu-map-button,
a.tcmp-button,
.tof-link {
	text-decoration: none !important;
}
a[class*="-pill"]:hover,
a[class*="-btn"]:hover,
a[class*="-button"]:hover,
a[class*="-submit"]:hover,
a[class*="-cta"]:hover {
	text-decoration: none !important;
}

/* Wishlist badge hidden state (shares .toh-icon-btn__badge with cart) */
.toh-icon-btn__badge[hidden] { display: none !important; }

/* Badge responsive scaling */
@media (max-width: 900px) {
	.toh-icon-btn__badge {
		font-size: 9px;
		height: 16px !important;
		left: 16px;
		min-height: 0 !important;
		min-width: 16px;
		top: 4px;
	}
}
@media (max-width: 480px) {
	.toh-icon-btn__badge {
		font-size: 8px;
		height: 14px !important;
		left: 14px;
		min-height: 0 !important;
		min-width: 14px;
		top: 2px;
	}
}


/* Wide blocks must never overflow viewport */
.wp-site-blocks > *, .alignfull, .alignwide {
	max-width: 100vw;
}

/* All images responsive by default */
img { max-width: 100%; height: auto; }

/* Containers shouldn't have horizontal scroll */
[class*="-wrap"], [class*="-section"], [class*="-container"] {
	max-width: 100vw;
	box-sizing: border-box;
}

/* ═════════════════════════════════════════════════════════════════════════════
   TABLET — catch-all for [class*="-wrap"] at medium viewports
   ═════════════════════════════════════════════════════════════════════════════ */
@media (min-width: 1101px) and (max-width: 1280px) {
	[class*="-wrap"] {
		padding-left: 60px !important;
		padding-right: 60px !important;
	}
}

@media (max-width: 1100px) {
	[class*="-wrap"] {
		padding-left: 32px !important;
		padding-right: 32px !important;
	}
}

@media (max-width: 740px) {
	[class*="-wrap"] {
		padding-left: 20px !important;
		padding-right: 20px !important;
	}
}

/* ═════════════════════════════════════════════════════════════════════════════
   SMALL TABLET — ≤900px (1-col stack for most 2-col layouts)
   ═════════════════════════════════════════════════════════════════════════════ */
@media (max-width: 900px) {

	/* Main 2-col layouts → 1 col */
	.tocu-main,
	.topa-grid-wrap,
	form.checkout,
	.to-wc-cart-layout,
	.tosp-main,
	.tobh-main,
	.tobf-grid,
	.tobc2-head,
	.toph-inner,
	.tom-grid,
	.tobh-card .tobh-main,
	.tch-wrap,
	.tch-hero {
		grid-template-columns: 1fr !important;
		gap: 24px !important;
	}

	/* Order summary cards stop being sticky */
	.to-wc-summary, #order_review {
		position: static !important;
	}

	/* 2-col auth flows stack */
	.tosi-wrap, .tosu-wrap, .tofp-wrap, .tovc-wrap, .tonp-wrap {
		flex-direction: column !important;
		align-items: stretch !important;
	}
	.tosi-side, .tosu-side, .tofp-side, .tovc-side, .tonp-side {
		width: 100% !important;
		max-width: 100% !important;
		flex-basis: auto !important;
	}

	/* Product card grids reduce columns */
	.tod-grid, .topa-grid, .town-grid, .ttc-tabs-grid {
		grid-template-columns: repeat(2, 1fr) !important;
		gap: 14px !important;
	}

	/* Catalog 4-card row → 2-col */
	.tobc2-grid {
		grid-template-columns: repeat(2, 1fr) !important;
		gap: 14px !important;
	}

	/* Hide right marketing panels on auth pages */
	.tosi-marketing, .tosu-marketing, .tofp-marketing,
	.tovc-marketing, .tonp-marketing {
		display: none !important;
	}

	/* Header right-side hides nav, shows burger */
	.toh-top-nav, .toh-sub-nav { display: none !important; }
	.toh-burger { display: inline-flex !important; }
}

/* ═════════════════════════════════════════════════════════════════════════════
   MOBILE — ≤700px (1-col everywhere, smaller fonts, full-width buttons)
   ═════════════════════════════════════════════════════════════════════════════ */
@media (max-width: 700px) {

	/* Heading scale */
	h1 { font-size: 28px !important; line-height: 1.15 !important; }
	h2 { font-size: 22px !important; line-height: 1.2  !important; }
	h3 { font-size: 18px !important; line-height: 1.25 !important; }

	/* Wraps padding */
	[class*="-wrap"] {
		padding-left: 20px !important;
		padding-right: 20px !important;
	}

	/* All grids → 1 col except OTP, product archive grid, and category-archive grid */
	[class*="-grid"]:not(.tovc-otp-grid):not(.tosu-otp-grid):not(.tod-card-img):not(.toca-grid),
	[class*="-cards"] {
		grid-template-columns: 1fr !important;
		gap: 12px !important;
	}

	/* Forms — prevent iOS zoom on focus */
	form input, form textarea, form select {
		font-size: 16px !important;
	}

	/* All submit buttons full width */
	.tosi-submit, .tosu-submit, .tofp-submit, .tovc-submit, .tonp-submit,
	.tocu-submit, .tobf-submit, .tobh-cta-1, .tobh-cta-2,
	button.tosp-add-to-cart, a.tosp-buy-now {
		width: 100% !important;
	}

	/* Card padding shrinks */

	/* Header burger always visible */
	.toh-burger { display: inline-flex !important; }
	.toh-nav, .toh-top-nav, .toh-sub-nav { display: none !important; }
	.toh-logo-wrap:has(img) .toh-wordmark { display: none !important; }

	/* Footer — 4 cols → 1 col */
	.tof-columns, .tof-main {
		grid-template-columns: 1fr !important;
		gap: 24px !important;
	}
	.tof-payments { flex-wrap: wrap; justify-content: center; }

	/* Brands strip — smaller logos */
	.tbs-logos img, .tbs-logo { max-height: 28px !important; }

	/* Hero blocks scale */
	.toh-hero-title { font-size: 28px !important; line-height: 1.15 !important; }
	.tobh-title-line { font-size: 28px !important; line-height: 1.1 !important; }
	.tobh-title-line:nth-child(2) { font-size: 30px !important; line-height: 34px !important; }

	/* B2B Hero card padding */
	.tobh-card { padding: 24px 20px !important; margin: 0 8px !important; border-radius: 12px !important; }
	.tobh-quote { padding: 22px !important; }
	.tobh-quote-title { font-size: 22px !important; }
	.tobh-quote-total strong { font-size: 22px !important; }

	/* B2B Catalog */
	.tobc2-title { font-size: 24px !important; line-height: 28px !important; }
	.tobc2-grid { grid-template-columns: 1fr !important; gap: 12px !important; }

	/* B2B Forms */
	.tobf-card { padding: 24px !important; border-radius: 20px !important; }
	.tobf-title { font-size: 22px !important; }

	/* Contact Us mega block */
	.tocu-info-cards { grid-template-columns: 1fr !important; gap: 12px !important; }
	.tocu-main { grid-template-columns: 1fr !important; gap: 16px !important; }
	.tocu-form-row { grid-template-columns: 1fr !important; }
	.tocu-toggle { flex-wrap: wrap; }

	/* Single Product */
	.tosp-main { grid-template-columns: 1fr !important; gap: 20px !important; }
	.tosp-title { font-size: 22px !important; }
	.tosp-price-current { font-size: 26px !important; }
	.tosp-price-current .amount { font-size: 26px !important; }
	.tosp-thumbs { overflow-x: auto; -webkit-overflow-scrolling: touch; }
	.tosp-thumb { width: 64px !important; height: 64px !important; flex-shrink: 0; }
	.tosp-variant-pills { flex-wrap: wrap; }
	.tosp-buy-row { flex-wrap: wrap; }
	.tosp-buy-row .tosp-qty { width: 100%; justify-content: center; }
	.tosp-buy-secondary { flex-wrap: wrap; gap: 8px !important; }
	.tosp-tabs-nav { gap: 12px !important; overflow-x: auto; -webkit-overflow-scrolling: touch; }
	.tosp-tab { white-space: nowrap; padding: 10px 0 !important; font-size: 13px !important; }
	.tosp-trust { grid-template-columns: 1fr 1fr !important; gap: 12px !important; padding: 14px !important; }
	.tosp-stock-row { grid-template-columns: 1fr !important; gap: 8px !important; }

	/* Trust items text smaller on mobile */
	.tosp-trust-item strong { font-size: 12px !important; line-height: 16px !important; }
	.tosp-trust-item small  { font-size: 10px !important; line-height: 14px !important; }
	.tosp-trust-icon svg    { width: 18px !important; height: 18px !important; }

	/* Product Archive */
	.topa-head { flex-direction: column; align-items: stretch !important; gap: 12px !important; }
	.topa-title { font-size: 24px !important; }
	.topa-search { flex: 1 1 auto !important; }
	.topa-grid-wrap { grid-template-columns: 1fr !important; }
	.topa-grid { grid-template-columns: 1fr !important; }
	.topa-mobile-filters-toggle { display: inline-flex !important; }
	.topa-sidebar {
		display: none;
		position: fixed; top: 0; left: 0; right: 0; bottom: 0;
		z-index: 1000; padding: 24px; overflow-y: auto;
		background: #ffffff;
	}
	.topa-sidebar[data-open] { display: flex !important; }

	/* Wishlist page */
	.town-head { flex-direction: column !important; align-items: stretch !important; gap: 12px !important; }
	.town-head-right { flex-wrap: wrap; gap: 8px !important; }
	.town-banner { flex-direction: column !important; align-items: stretch !important; padding: 16px !important; }
	.town-banner-right { flex-direction: column; gap: 8px !important; }
	.town-add-all, .town-clear-all { width: 100% !important; }
	.town-grid { grid-template-columns: 1fr !important; }

	/* Sign in/up — OTP boxes shrink */
	.tovc-otp-box, .tosu-otp-box { width: 40px !important; height: 48px !important; font-size: 20px !important; }

	/* Cart on WC */
	.to-wc-cart-layout { grid-template-columns: 1fr !important; }
	.to-wc-cart-head { flex-direction: column; align-items: stretch; gap: 8px; }
	.to-wc-cart-head-right { flex-wrap: wrap; }
	.to-wc-cart-footer { flex-direction: column; align-items: flex-start; padding: 14px 16px !important; }

	/* Checkout on WC */
	.to-wc-checkout-top { grid-template-columns: 1fr !important; gap: 12px !important; }
	.to-wc-secure-pill { justify-self: start !important; }
	.to-wc-step-label { display: none !important; }
	.to-wc-step-line { width: 16px !important; }

	/* Hide eyebrow dot if too tight */
	.tch-eyebrow-dot, .tocu-eyebrow-dot, .tobh-eyebrow::before {
		display: none !important;
	}
}

/* ═════════════════════════════════════════════════════════════════════════════
   TINY PHONES — ≤480px
   ═════════════════════════════════════════════════════════════════════════════ */
@media (max-width: 480px) {

	[class*="-wrap"] {
		padding-left: 16px !important;
		padding-right: 16px !important;
	}

	h1 { font-size: 22px !important; }
	h2 { font-size: 18px !important; }
	h3 { font-size: 16px !important; }

	/* Tiny phone — even more aggressive shrinks */
	[class*="-card"]:not(.tod-card):not(.tosp-trust-item):not(.toc-category-card) {
		border-radius: 14px !important;
	}

	/* OTP boxes shrink further */
	.tovc-otp-box, .tosu-otp-box {
		width: 34px !important; height: 42px !important; font-size: 16px !important;
	}

	/* Toggle pills wrap */
	.tocu-toggle, .tosp-variant-pills {
		flex-wrap: wrap !important;
	}

	/* Title size further reduction */
	.tobh-title-line { font-size: 24px !important; line-height: 28px !important; }
	.tobh-title-line:nth-child(2) { font-size: 26px !important; line-height: 30px !important; }
	.tobh-card { padding: 20px 16px !important; border-radius: 10px !important; }
	.tobh-quote { padding: 18px !important; }

	/* Single product gallery */
	.tosp-main-image { padding: 16px !important; min-height: 280px !important; }
	.tosp-thumb { width: 56px !important; height: 56px !important; }

	/* Featured deals / product archive — keep 1-col */
	.tod-grid, .topa-grid {
		grid-template-columns: 1fr !important;
	}

	/* Hide arrow icons in CTAs to save space */
	.tobh-cta-1::after, .tobh-cta-2::after {
		display: none;
	}

	/* Footer payment icons smaller */
	.tof-payment-icon { width: 30px !important; }

	/* Brands strip — horizontal scroll on tiny screens */
	.tbs-logos {
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		justify-content: flex-start !important;
	}
}

/* ═════════════════════════════════════════════════════════════════════════════
   TOUCH-FRIENDLY TAP TARGETS (≤700px)
   ═════════════════════════════════════════════════════════════════════════════ */
@media (max-width: 700px) {
	button:not(.tosp-qty-btn):not(.to-wc-qty-btn):not(.toco-remove),
	a.button, [class*="-btn"]:not(.tosp-qty-btn), .tof-link {
		min-height: 44px;
	}

	/* Specifically for filter chips and small toggles, keep them small */
	.toc-tag, .tos-chip, .tod-tag { min-height: 0 !important; }
}

/* ═════════════════════════════════════════════════════════════════════════════
   SPECIFIC BLOCK FIXES (across all screens)
   ═════════════════════════════════════════════════════════════════════════════ */

/* Top charts tabs wrap on small screens */
@media (max-width: 900px) {
	.ttc-tabs { flex-wrap: wrap; gap: 8px; }
	.ttc-tab { font-size: 12px; padding: 6px 12px; }
}

/* Our Journey timeline vertical on mobile */
@media (max-width: 700px) {
	.toj-timeline { flex-direction: column !important; gap: 20px; }
	.toj-step { width: 100% !important; }
}

/* Features bar 2x2 grid (Figma mobile shows 4 trust pills in 2 rows) */
@media (max-width: 700px) {
	.tfb-items {
		display: grid !important;
		grid-template-columns: 1fr 1fr !important;
		gap: 8px !important;
	}
	.tfb-item {
		background: #ffffff !important;
		border: 1px solid #e8e4da !important;
		border-radius: 12px !important;
		padding: 10px 12px !important;
		display: flex !important;
		align-items: center !important;
		gap: 8px !important;
		justify-content: flex-start !important;
	}
	.tfb-item-icon {
		width: 28px !important;
		height: 28px !important;
		flex-shrink: 0 !important;
	}
	.tfb-item-icon svg {
		width: 18px !important;
		height: 18px !important;
	}
	.tfb-item-text strong { font-size: 11px !important; line-height: 14px !important; }
	.tfb-item-text small  { font-size: 9px !important; line-height: 12px !important; }
}

/* FAQ smaller padding */
@media (max-width: 700px) {
	.toq-question { font-size: 14px !important; padding: 14px 16px !important; }
	.toq-answer   { padding: 0 16px 14px !important; font-size: 13px !important; }
}

/* Flash CTA stack vertically */
@media (max-width: 700px) {
	.tfc-inner { flex-direction: column !important; text-align: center; gap: 16px !important; }
	.tfc-button { width: 100% !important; }
}

/* Category section grid */
@media (max-width: 700px) {
	.tcs-grid { grid-template-columns: 1fr !important; gap: 12px !important; }
}

/* ── Shop By Category mobile (Figma 1:1448) — 2-col grid, big icons ─────── */
@media (max-width: 900px) {
	.toc-category-section,
	.toc-section,
	[class*="category-section"] {
		overflow: hidden !important;
		max-width: 100vw !important;
		width: 100% !important;
	}

	/* Section header */
	.toc-section-header {
		padding: 0 16px !important;
		margin-bottom: 16px !important;
		display: flex !important;
		flex-direction: column !important;
		align-items: flex-start !important;
		gap: 6px !important;
	}
	.toc-section-meta { display: flex; flex-direction: column; gap: 4px; }
	.toc-section-label { font-size: 11px !important; font-weight: 700 !important; color: #3cb371 !important; text-transform: uppercase !important; letter-spacing: 0.05em !important; }
	.toc-section-title { font-size: 22px !important; line-height: 28px !important; font-weight: 800 !important; margin: 0 !important; }
	.toc-section-subtitle { font-size: 13px !important; line-height: 19px !important; color: #6b6b6b !important; margin: 0 !important; max-width: 100% !important; }
	.toc-view-all { font-size: 12px !important; color: #3cb371 !important; font-weight: 600 !important; margin-top: 6px !important; }

	/* Cards grid — 2 columns side by side (NO horizontal scroll) */
	.toc-category-grid {
		display: grid !important;
		grid-template-columns: 1fr 1fr !important;
		gap: 12px !important;
		overflow: visible !important;
		padding: 0 16px !important;
		margin: 0 !important;
		max-width: 100% !important;
	}

	/* Card layout — compact + big icon centered top */
	.toc-category-card {
		flex: unset !important;
		width: 100% !important;
		min-width: 0 !important;
		max-width: 100% !important;
		padding: 18px 16px 16px !important;
		border-radius: 16px !important;
		background: #ffffff !important;
		border: 1px solid #e8e4da !important;
		display: flex !important;
		flex-direction: column !important;
		align-items: flex-start !important;
		gap: 12px !important;
		min-height: 130px !important;
		box-sizing: border-box;
		text-decoration: none !important;
		transition: transform 0.15s ease, box-shadow 0.15s ease;
	}
	.toc-category-card:hover {
		transform: translateY(-2px);
		box-shadow: 0 6px 18px -6px rgba(20, 18, 12, 0.1);
	}

	/* Icon tile — bigger, top-left */
	.toc-card-icon {
		width: 44px !important;
		height: 44px !important;
		padding: 0 !important;
		margin: 0 !important;
		border-radius: 12px !important;
		background: #f4f2ec !important;
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
	}
	.toc-card-icon svg {
		width: 24px !important;
		height: 24px !important;
		display: block !important;
	}

	.toc-card-name {
		font-size: 15px !important;
		font-weight: 700 !important;
		line-height: 18px !important;
		color: #1a1a1a !important;
		margin: 0 !important;
	}
	.toc-card-count {
		font-size: 11px !important;
		font-weight: 400 !important;
		color: #6b6b6b !important;
		margin: 0 !important;
		margin-top: auto !important;
	}
}

/* Tiny phones — keep 2 cols but tighter spacing */
@media (max-width: 480px) {
	.toc-category-grid {
		gap: 10px !important;
		padding: 0 12px !important;
	}
	.toc-category-card {
		padding: 14px 12px 12px !important;
		min-height: 118px !important;
		gap: 10px !important;
	}
	.toc-card-icon { width: 40px !important; height: 40px !important; }
	.toc-card-icon svg { width: 22px !important; height: 22px !important; }
	.toc-card-name { font-size: 14px !important; line-height: 17px !important; }
}

@media (max-width: 480px) {
	.toc-category-card {
		flex: 0 0 130px !important;
		min-width: 130px !important;
	}
}

/* Breadcrumb wraps */
@media (max-width: 700px) {
	.tobc-list { flex-wrap: wrap; font-size: 12px !important; }
}

/* Featured deals card image aspect */
@media (max-width: 700px) {
	.tod-card-img { height: 180px !important; }
	.tod-card-img img { padding: 12px !important; }
	.tod-card-body { padding: 16px 12px 12px !important; gap: 6px !important; }
	.tod-product-name { font-size: 14px !important; }
	.tod-price-current { font-size: 20px !important; }
}

/* Old Contact blocks (5 separate) — Form scale */
@media (max-width: 700px) {
	.tcf-card { padding: 20px !important; }
	.tchr-row { padding: 8px 0 !important; }
	.tcmp-image { aspect-ratio: 16 / 9 !important; }
}

/* ═════════════════════════════════════════════════════════════════════════════
   MOBILE — Figma 1:8439/8014/8838/7550/4371/4177/3929/1448/3768 alignment
   ═════════════════════════════════════════════════════════════════════════════ */

/* ── Cart mobile — compact card layout (Figma 1:8439) ────────────────────── */
@media (max-width: 700px) {
	.woocommerce-cart-form table.shop_table thead { display: none !important; }
	.woocommerce-cart-form table.shop_table tr.cart_item {
		display: grid !important;
		grid-template-columns: 72px 1fr !important;
		gap: 6px 12px !important;
		padding: 14px 12px !important;
		border-bottom: 1px solid #f4f2ec !important;
	}
	.woocommerce-cart-form table.shop_table tr.cart_item td {
		padding: 0 !important; border: none !important; display: block !important;
	}
	.woocommerce-cart-form td.product-thumbnail { grid-row: span 4; }
	.woocommerce-cart-form td.product-thumbnail img { width: 72px !important; height: 72px !important; border-radius: 12px !important; }
	.woocommerce-cart-form td.product-name { font-size: 13px !important; font-weight: 600 !important; }
	.woocommerce-cart-form td.product-price { text-align: left !important; font-size: 13px !important; font-weight: 700 !important; }
	.woocommerce-cart-form td.product-quantity { text-align: left !important; }
	.woocommerce-cart-form td.product-subtotal { display: none !important; }
	.woocommerce-cart-form td.product-remove { text-align: right !important; }
}

/* ── Single Product mobile (Figma 1:7550) — trust 2x2, buttons stack ────── */
@media (max-width: 700px) {
	.tosp-buy-secondary > * { flex: 1 1 100% !important; }
	.tosp-save-link, .tosp-compare-link { padding: 8px !important; }
}

/* ── Product Archive mobile (Figma 1:4177) — filters button styled ──────── */
@media (max-width: 700px) {
	.topa-mobile-filters-toggle {
		display: inline-flex !important;
		background: #162937 !important; color: #ffffff !important;
		height: 40px !important; padding: 0 18px !important;
		border-radius: 999px !important; font-size: 13px !important; font-weight: 700 !important;
	}
	.topa-count { font-size: 13px !important; color: #6b6b6b !important; }
}

/* ── B2B Hero mobile (Figma 1:3929) — quote card below text ──────────────── */
@media (max-width: 900px) {
	.tobh-main { display: flex !important; flex-direction: column !important; gap: 24px !important; }
	.tobh-quote { width: 100% !important; }
}

/* ── Our Journey timeline mobile (Figma 1:3768) — vertical ──────────────── */
@media (max-width: 700px) {
	.toj-timeline { padding: 0 !important; }
	.toj-year { font-size: 18px !important; }
	.toj-step-title { font-size: 14px !important; }
	.toj-step-desc { font-size: 12px !important; line-height: 18px !important; }
}

/* ── Our Mission mobile (Figma 1:3768) — stacked vertical cards ─────────── */
@media (max-width: 700px) {
	.tom-card { padding: 16px !important; }
	.tom-card-title { font-size: 14px !important; }
	.tom-card-desc  { font-size: 12px !important; }
}

/* ── Home Hero mobile (Figma 1:1448) ─────────────────────────────────────── */
@media (max-width: 700px) {
	.toh-hero, .toh-hero-bg { padding: 0 !important; }
	.toh-hero-content { padding: 28px 16px !important; }
	.toh-hero-title { font-size: 24px !important; line-height: 30px !important; }
	.toh-hero-subtitle { font-size: 13px !important; line-height: 20px !important; }
}

/* Header mobile rules now live in blocks/turn-on-header/style.scss */

/* Hero mobile heights removed — hero block now handles its own responsive layout */

@media (max-width: 700px) {
	.tfb-section, .toh-features-bar {
		position: static !important;
		margin-top: 16px !important;
	}
}

/* Hero slider dots + arrows hidden on mobile (≤900px) */
@media (max-width: 900px) {
	.toh-hero__dots,
	.toh-hero__arrow,
	.toh-hero__arrow--prev,
	.toh-hero__arrow--next {
		display: none !important;
	}
}

/* ── Footer mobile — single column, payment row centered ─────────────────── */
@media (max-width: 700px) {
	.tof-section { padding: 32px 0 !important; }
	.tof-columns { gap: 20px !important; }
	.tof-col h4 { font-size: 12px !important; margin-bottom: 10px !important; text-transform: uppercase; letter-spacing: 0.05em; }
	.tof-col ul li { font-size: 14px !important; padding: 6px 0 !important; }
	.tof-bottom { flex-direction: column !important; gap: 12px !important; text-align: center !important; }
	.tof-payments { flex-wrap: wrap; justify-content: center; gap: 8px !important; }
}

/* ── Wishlist mobile (Figma 1:8838) — buttons full width ─────────────────── */
@media (max-width: 700px) {
	.town-add-all, .town-clear-all { width: 100% !important; min-height: 44px !important; }
	.town-banner-left { gap: 10px !important; }
	.town-banner-text strong { font-size: 13px !important; }
	.town-banner-text p { font-size: 11px !important; }
}

/* ── Contact Us mega block mobile (Figma 1:4371) ────────────────────────── */
@media (max-width: 700px) {
	.tocu-hero h1 { font-size: 28px !important; }
	.tocu-info-card { padding: 16px !important; gap: 12px !important; }
	.tocu-info-icon { width: 38px !important; height: 38px !important; }
	.tocu-info-icon svg { width: 18px !important; height: 18px !important; }
	.tocu-form-card { padding: 20px !important; }
	.tocu-hours { padding: 16px !important; }
	.tocu-map-image { aspect-ratio: 16 / 9 !important; }
}

/* ── Checkout mobile (Figma 1:8014) — section cards stack tightly ───────── */
@media (max-width: 700px) {
	.woocommerce-billing-fields,
	.woocommerce-shipping-fields,
	.woocommerce-additional-fields,
	.woocommerce-checkout-payment {
		padding: 18px !important;
		border-radius: 16px !important;
	}
	#order_review {
		padding: 18px !important;
		border-radius: 16px !important;
	}
	.to-wc-progress { gap: 2px !important; }
	.to-wc-step-circle { width: 22px !important; height: 22px !important; font-size: 11px !important; }
}

/* ═════════════════════════════════════════════════════════════════════════════
   HOME PAGE — Figma 1:1448 mobile alignment
   ═════════════════════════════════════════════════════════════════════════════ */

/* ── Featured Deals mobile (tabs + 1 big card) ──────────────────────────── */
@media (max-width: 700px) {
	.tod-section { padding: 32px 0 !important; }
	.tod-header-row {
		flex-direction: column !important;
		align-items: flex-start !important;
		gap: 12px !important;
		padding: 0 16px !important;
	}
	.tod-title { font-size: 22px !important; line-height: 28px !important; }
	.tod-subtitle { font-size: 13px !important; line-height: 20px !important; }
	.tod-eyebrow { font-size: 10px !important; }

	/* Tabs row scroll horizontally */
	.tod-filters {
		overflow-x: auto !important;
		flex-wrap: nowrap !important;
		padding: 0 16px 8px !important;
		margin: 0 -16px !important;
		-webkit-overflow-scrolling: touch !important;
		gap: 8px !important;
	}
	.tod-filter-btn {
		flex-shrink: 0 !important;
		font-size: 12px !important;
		padding: 6px 14px !important;
		height: auto !important;
	}

	/* Grid 1 col on small mobile */
	.tod-grid {
		grid-template-columns: 1fr !important;
		gap: 14px !important;
		padding: 0 16px !important;
	}
}

/* ── Top Charts mobile (dark navy showcase + ranked list) ───────────────── */
@media (max-width: 700px) {
	.ttc-section { padding: 32px 0 !important; }
	.ttc-wrap, .ttc-container {
		padding: 0 16px !important;
		flex-direction: column !important;
	}

	/* Showcase card (left big card) */
	.ttc-showcase, .ttc-feature, .ttc-hero-product {
		padding: 20px !important;
		border-radius: 16px !important;
		text-align: left !important;
	}
	.ttc-showcase-title, .ttc-feature-title {
		font-size: 20px !important;
		line-height: 26px !important;
	}
	.ttc-showcase-price, .ttc-feature-price {
		font-size: 24px !important;
	}
	.ttc-showcase-specs, .ttc-feature-specs {
		grid-template-columns: 1fr 1fr !important;
		gap: 6px !important;
	}
	.ttc-showcase-spec, .ttc-feature-spec {
		padding: 6px 10px !important;
		font-size: 11px !important;
	}

	/* Best sellers card (right ranked list) */
	.ttc-bestsellers, .ttc-ranked {
		padding: 20px !important;
		border-radius: 16px !important;
		margin-top: 16px !important;
	}
	.ttc-bestsellers-title { font-size: 16px !important; line-height: 22px !important; }
	.ttc-rank-item {
		padding: 10px 0 !important;
		gap: 10px !important;
	}
	.ttc-rank-circle {
		width: 28px !important;
		height: 28px !important;
		font-size: 13px !important;
	}
	.ttc-rank-name { font-size: 12px !important; line-height: 16px !important; }
	.ttc-rank-brand { font-size: 10px !important; }
	.ttc-rank-price { font-size: 13px !important; }

	/* Tabs row at top */
	.ttc-tabs {
		flex-wrap: nowrap !important;
		overflow-x: auto !important;
		gap: 6px !important;
		padding-bottom: 8px !important;
		-webkit-overflow-scrolling: touch !important;
	}
	.ttc-tab {
		flex-shrink: 0 !important;
		font-size: 11px !important;
		padding: 6px 12px !important;
	}
}

/* ── Flash CTA "Upgrade your workspace setup" mobile ────────────────────── */
@media (max-width: 700px) {
	.tfc-section { padding: 24px 16px !important; }
	.tfc-card, .tfc-inner {
		padding: 24px !important;
		border-radius: 16px !important;
		text-align: center !important;
	}
	.tfc-title { font-size: 18px !important; line-height: 24px !important; }
	.tfc-subtitle { font-size: 13px !important; line-height: 20px !important; }
	.tfc-button { width: auto !important; margin: 0 auto !important; }
}

/* ── Brands Strip / Trusted Manufacturers mobile (tabs + logo grid) ────── */
@media (max-width: 700px) {
	.tbs-section { padding: 32px 0 !important; }
	.tbs-wrap, .tbs-container { padding: 0 16px !important; }
	.tbs-title { font-size: 20px !important; line-height: 26px !important; text-align: left !important; }

	/* Tabs */
	.tbs-tabs {
		display: flex !important;
		gap: 8px !important;
		justify-content: flex-start !important;
		margin: 12px 0 16px !important;
	}
	.tbs-tab {
		flex: 0 0 auto !important;
		padding: 6px 16px !important;
		border-radius: 999px !important;
		font-size: 12px !important;
		background: #ffffff !important;
		border: 1px solid #e8e4da !important;
	}
	.tbs-tab--active {
		background: #0b2545 !important;
		color: #ffffff !important;
	}

	/* Logo grid */
	.tbs-logos {
		display: grid !important;
		grid-template-columns: repeat(3, 1fr) !important;
		gap: 12px !important;
		justify-content: center !important;
	}
	.tbs-logos img, .tbs-logo {
		max-height: 22px !important;
		margin: 0 auto !important;
	}
}

/* ── FAQ mobile (clean accordion list) ─────────────────────────────────── */
@media (max-width: 700px) {
	.toq-section { padding: 24px 0 !important; }
	.toq-wrap, .toq-container { padding: 0 16px !important; }
	.toq-title {
		font-size: 18px !important;
		line-height: 24px !important;
		text-align: center !important;
		margin-bottom: 16px !important;
	}
	.toq-item {
		border-bottom: 1px solid #e8e4da !important;
		background: transparent !important;
		border-radius: 0 !important;
		margin: 0 !important;
	}
	.toq-question {
		padding: 14px 0 !important;
		font-size: 14px !important;
		font-weight: 600 !important;
		background: transparent !important;
	}
	.toq-answer {
		padding: 0 0 14px !important;
		font-size: 13px !important;
		line-height: 20px !important;
		color: #6b6b6b !important;
	}
}

/* ── Footer mobile accordion (Figma shows Shop+, Service+, Help+, Company+) ── */
@media (max-width: 700px) {
	.tof-section { padding: 32px 0 24px !important; }

	/* Top brand row */
	.tof-brand-row {
		display: flex !important;
		flex-direction: column !important;
		gap: 14px !important;
		padding: 0 16px 24px !important;
	}
	.tof-brand-desc { font-size: 13px !important; line-height: 19px !important; max-width: 100% !important; }
	.tof-social {
		display: flex !important;
		gap: 12px !important;
		margin-top: 4px !important;
	}

	/* Link group sections — each shows as accordion with title + plus */
	.tof-columns, .tof-links {
		display: flex !important;
		flex-direction: column !important;
		gap: 0 !important;
		padding: 0 !important;
		border: none !important;
	}
	.tof-column, .tof-col {
		border-top: 1px solid #e8e4da !important;
		padding: 0 16px !important;
		background: transparent !important;
		display: block !important;
	}
	.tof-columns > .tof-column:first-child,
	.tof-columns > .tof-col:first-child { border-top: none !important; }

	/* Title button (already a button in markup with .tof-col-title + .tof-col-toggle inside) */
	.tof-col-title {
		background: none !important;
		border: none !important;
		display: flex !important;
		width: 100% !important;
		align-items: center !important;
		justify-content: space-between !important;
		padding: 16px 0 !important;
		font-family: 'Noto Sans', sans-serif !important;
		font-size: 12px !important;
		font-weight: 700 !important;
		color: #1a1a1a !important;
		margin: 0 !important;
		text-transform: uppercase !important;
		letter-spacing: 0.06em !important;
		cursor: pointer !important;
		text-align: left !important;
	}
	.tof-col-toggle {
		font-size: 22px !important;
		font-weight: 300 !important;
		color: #6b6b6b !important;
		flex-shrink: 0 !important;
	}

	.tof-col-list {
		display: none !important;
		padding: 0 0 16px !important;
		margin: 0 !important;
		list-style: none !important;
	}
	.tof-column.is-open .tof-col-list,
	.tof-col.is-open .tof-col-list {
		display: block !important;
	}
	.tof-col-list li {
		padding: 6px 0 !important;
		font-size: 14px !important;
		color: #3a3a3a !important;
	}
	.tof-col-list a {
		color: #3a3a3a !important;
		text-decoration: none !important;
	}

	/* Bottom strip */
	.tof-bottom, .tof-copyright {
		flex-direction: column !important;
		gap: 12px !important;
		text-align: center !important;
		padding: 24px 16px 0 !important;
		border-top: 1px solid #e8e4da !important;
		margin-top: 16px !important;
		font-size: 11px !important;
	}
	.tof-payments {
		display: flex !important;
		flex-wrap: wrap !important;
		justify-content: center !important;
		gap: 8px !important;
	}
}

/* ── Footer accordion JS-less toggle (CSS-only via <details>) ─────────── */
@media (max-width: 700px) {
	details.tof-col {
		border-top: 1px solid #e8e4da !important;
		padding: 0 16px !important;
	}
	details.tof-col > summary {
		list-style: none !important;
		padding: 16px 0 !important;
		cursor: pointer !important;
		display: flex !important;
		align-items: center !important;
		justify-content: space-between !important;
		font-size: 12px !important;
		font-weight: 700 !important;
		text-transform: uppercase !important;
	}
	details.tof-col > summary::-webkit-details-marker { display: none !important; }
	details.tof-col > summary::after {
		content: '+';
		font-size: 22px;
		color: #6b6b6b;
	}
	details.tof-col[open] > summary::after { content: '−'; }
}

/* Auth checkbox labels must not inherit the global wrapper centering. */
.tosi-remember-row [class$="-wrap"][class*="checkbox-wrap"].tosi-checkbox-wrap,
.tosu-checks [class$="-wrap"][class*="checkbox-wrap"].tosu-checkbox-wrap {
	margin-left: 0 !important;
}
