/* Sukha premium commerce shell. All transactional markup remains native WooCommerce. */
@font-face { font-family:"Barlow Condensed"; src:url("../fonts/barlow-condensed-600.woff2") format("woff2"); font-style:normal; font-weight:600; font-display:swap; }
@font-face { font-family:"Barlow Condensed"; src:url("../fonts/barlow-condensed-700.woff2") format("woff2"); font-style:normal; font-weight:700; font-display:swap; }
@font-face { font-family:"Barlow Condensed"; src:url("../fonts/barlow-condensed-800.woff2") format("woff2"); font-style:normal; font-weight:800; font-display:swap; }
@font-face { font-family:"Montserrat"; src:url("../fonts/montserrat-variable.woff2") format("woff2"); font-style:normal; font-weight:400 800; font-display:swap; }
body.sukha-premium-routed #wa, body.sukha-premium-routed #loftloader-wrapper { display: none !important; }
html { scroll-behavior: smooth; }
body.spc-active {
  --font-sukha-display: Arial, sans-serif;
  --font-sukha-sans: "Montserrat", sans-serif;
  --spc-ink: #080909;
  --spc-paper: #f3f3ef;
  --spc-line: #dcddd7;
  --spc-muted: #71726e;
  --spc-green: #173e32;
  --spc-white: #fff;
  margin: 0 !important;
  overflow-x: hidden;
  background: var(--spc-paper);
  color: var(--spc-ink);
  font-family: var(--font-sukha-sans);
  text-rendering: optimizeLegibility;
}

body.spc-active *, body.spc-active *::before, body.spc-active *::after { box-sizing: border-box; }
body.spc-active img { max-width: 100%; height: auto; }
body.spc-active a { color: inherit; }
body.spc-active :where(a, button, input, select, textarea):focus-visible { outline: 2px solid #548979; outline-offset: 3px; }
.spc-root { width: 100%; overflow: clip; background: var(--spc-paper); }
body.sukha-premium-routed #loftloader-wrapper { display:none !important; }
body.spc-active .spc-header.site-header { width:auto !important; max-width:none !important; margin:0 !important; padding:0 !important; }
.spc-root :where(h1,h2,h3,h4,p,ul,ol) { margin-top: 0; }
.spc-root :where(button,input,select,textarea) { font: inherit; }
.spc-root a { text-decoration: none; }
.spc-skip-link { position: fixed; z-index: 10020; top: 8px; left: 8px; padding: 11px 16px; background: #fff; color: #000; transform: translateY(-180%); }
.spc-skip-link:focus { transform: none; }
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(1px,1px,1px,1px); clip-path: inset(50%); white-space: nowrap; }

/* Global header */
.spc-header {
  position: fixed; z-index: 10000; inset: 0 0 auto; width:auto; max-width:none; min-height: 86px; margin:0; padding:0;
  border-bottom: 1px solid transparent; color: #fff;
  transition: min-height .22s ease, background-color .22s ease, backdrop-filter .22s ease, border-color .22s ease;
}
.admin-bar .spc-header { top: 32px; }
.spc-has-solid-header .spc-header,
.spc-header.is-scrolled,
.spc-header.is-menu-open { min-height: 72px; background: rgba(5,6,6,.9); border-bottom-color: rgba(255,255,255,.12); backdrop-filter: blur(15px); }
.spc-header__inner { width: min(1440px, calc(100% - 48px)); min-height: inherit; margin: 0 auto; display: grid; grid-template-columns: 160px 1fr 160px; align-items: center; }
.spc-logo { width: 94px; display: inline-flex; align-items: center; }
.spc-logo img { width: 94px; height: 55px; display: block; object-fit: contain; filter: brightness(0) invert(1); }
.spc-nav { justify-self: center; }
.spc-nav ul { display: flex; align-items: center; gap: clamp(16px,1.8vw,30px); margin: 0 !important; padding: 0 !important; list-style: none !important; }
.spc-nav li { margin: 0 !important; padding: 0 !important; }
.spc-nav a { position: relative; display: block; padding: 29px 0 25px; color: #fff; font-size: 10px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; white-space: nowrap; }
.spc-nav a::after { content: ""; position: absolute; right: 0; bottom: 20px; left: 0; height: 1px; background: currentColor; transform: scaleX(0); transition: transform .18s ease; }
.spc-nav a:hover::after, .spc-nav a:focus-visible::after { transform: scaleX(1); }
.spc-header__actions { justify-self: end; display: flex; align-items: center; }
.spc-icon { position: relative; width: 42px; height: 42px; display: grid; place-items: center; padding: 0; border: 0; background: transparent; color: #fff; cursor: pointer; }
.spc-icon svg { width: 23px; height: 23px; fill: none; stroke: currentColor; stroke-width: 1.55; }
.spc-cart-count { position: absolute; top: 1px; right: -1px; min-width: 18px; height: 18px; display: grid; place-items: center; padding: 0 4px; border-radius: 20px; background: #fff; color: #000; font-size: 9px; font-weight: 850; }
.spc-menu-toggle { display: none; }
.spc-search { padding: 18px max(24px,calc((100vw - 1320px)/2)); border-top: 1px solid rgba(255,255,255,.1); background: rgba(5,6,6,.97); }
.spc-search[hidden] { display: none; }
.spc-search form { display: flex; gap: 10px; }
.spc-search input { flex: 1; min-width: 0; height: 49px; padding: 0 17px; border: 1px solid rgba(255,255,255,.28); border-radius: 4px; background: rgba(255,255,255,.08); color: #fff; }
.spc-search input::placeholder { color: rgba(255,255,255,.6); }
.spc-search button { min-width: 122px; border: 0; border-radius: 4px; background: #fff; color: #000; font-size: 10px; font-weight: 850; letter-spacing: .1em; cursor: pointer; }

/* Global footer */
.spc-footer { background: #080909; color: #fff; }
.spc-footer__main { width: min(1380px,calc(100% - 64px)); margin: 0 auto; display: grid; grid-template-columns: 1.35fr repeat(4,1fr); gap: 46px; padding: 80px 0 60px; }
.spc-footer__brand img { width: 118px; height: 56px; object-fit: contain; filter: brightness(0) invert(1); }
.spc-footer__brand > p { margin: 12px 0 24px; color: rgba(255,255,255,.58); font-size: 12px; }
.spc-social { display: flex; gap: 18px; }
.spc-social a { color: #fff; font-size: 9px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.spc-footer h2 { margin: 8px 0 21px; color: #fff; font-size: 10px; font-weight: 850; letter-spacing: .14em; }
.spc-footer__main > div:not(.spc-footer__brand) > a { display: block; margin: 0 0 12px; color: rgba(255,255,255,.6); font-size: 11px; line-height: 1.45; }
.spc-footer a:hover { color: #fff !important; }
.spc-footer__bottom { width: min(1380px,calc(100% - 64px)); min-height: 96px; margin: 0 auto; display: flex; align-items: center; justify-content: space-between; gap: 30px; border-top: 1px solid rgba(255,255,255,.12); }
.spc-footer__bottom > p { margin: 0; color: rgba(255,255,255,.42); font-size: 9px; letter-spacing: .03em; }
.spc-payments { display: flex; align-items: center; gap: 8px; }
.spc-payments > img, .spc-payments > span { width: 54px; height: 31px; display: grid; place-items: center; overflow: hidden; border-radius: 3px; background: #fff; }
.spc-payments > span.spc-redcompra { width: 112px; }
.spc-payments img { max-width: 47px; max-height: 24px; object-fit: contain; }
.spc-payments > span.spc-redcompra img { width: 131px; max-width: none; height: 22px; max-height: 22px; object-fit: contain; clip-path: inset(0 7.8%); }
.spc-whatsapp { position: fixed; z-index: 9998; left: 22px; bottom: 22px; width: 55px; height: 55px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.55); border-radius: 50%; background: rgba(20,100,72,.94); box-shadow: 0 12px 32px rgba(0,0,0,.24); color: #fff; backdrop-filter: blur(10px); transition: transform .18s ease, background .18s ease; }
.spc-whatsapp:hover { transform: translateY(-3px); background: #146c4b; }
.spc-whatsapp svg { width: 29px; height: 29px; fill: none; stroke: currentColor; stroke-width: 1.5; }

/* Main shell and archive campaign */
.spc-content { min-height: 70vh; }
.spc-woo-shell { width: min(1540px,100%); margin: 0 auto; padding: 0 clamp(18px,3.2vw,56px) clamp(70px,7vw,110px); }
.spc-woo-shell::after { display: table; clear: both; content: ""; }
.spc-has-solid-header .spc-woo-shell { padding-top: clamp(120px,11vw,172px); }
.spc-archive-hero { --spc-hero: none; position: relative; left: 50%; width: 100vw; min-height: 560px; margin-left: -50vw; margin-bottom: 0; isolation: isolate; overflow: hidden; background: #090a0a var(--spc-hero) 62% center / cover no-repeat; color: #fff; }
.spc-archive-hero.is-category { height: clamp(620px,56.25vw,980px); }
.spc-archive-hero:not(.has-image) { min-height: 520px; background: radial-gradient(circle at 74% 35%,#35594c 0,#173e32 30%,#090a0a 75%); }
.spc-archive-hero__shade { position: absolute; z-index: -1; inset: 0; background: linear-gradient(90deg,rgba(0,0,0,.94),rgba(0,0,0,.68) 39%,rgba(0,0,0,.12) 72%),linear-gradient(180deg,rgba(0,0,0,.36),transparent 45%,rgba(0,0,0,.22)); }
.spc-archive-hero__copy { position:relative; z-index:2; width:min(1320px,calc(100% - 64px)); margin:0 auto; padding-top:172px; }
.spc-eyebrow { margin: 0 0 12px; font-size: 10px; font-weight: 850; letter-spacing: .16em; text-transform: uppercase; }
.spc-archive-hero .spc-eyebrow { margin-bottom:9px; color:#fff; font-size:14px; font-weight:600; letter-spacing:.14em; line-height:1.5; }
.spc-archive-hero h1, .spc-page-heading h1 { max-width: 860px; margin: 0; font-family: var(--font-sukha-display); font-size: clamp(62px,7vw,104px); font-weight: 700; letter-spacing: .005em; line-height: .84; text-transform: uppercase; }
.spc-archive-hero h1 { margin-bottom:22px; }
.spc-archive-hero .short-rule { display:block; width:58px; height:2px; margin:0 0 16px; background:#fff; }
.spc-archive-hero__copy > div { max-width: 610px; margin:0; color: rgba(255,255,255,.82); font-size: 14px; line-height: 1.65; }
.spc-archive-hero__copy > div > :last-child { margin-bottom: 0; }

/* Filters */
.spc-filters { margin: 0 0 34px; border-block: 1px solid var(--spc-line); background: rgba(255,255,255,.45); }
.spc-filters__toggle { display: none; }
.spc-filters__form { display: grid; grid-template-columns: repeat(4,minmax(125px,1fr)) minmax(230px,1.45fr) auto auto; align-items: end; gap: 13px; padding: 22px 0; }
.spc-filters label { display: block; margin: 0 0 7px; color: var(--spc-muted); font-size: 9px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.spc-filters select, .spc-filters input { width: 100%; min-height: 46px; padding: 0 12px; border: 1px solid #cfd0ca; border-radius: 3px; background: #fff; color: var(--spc-ink); font-size: 11px; }
.spc-price-filter > span { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 7px; }
.spc-price-filter i { color: var(--spc-muted); font-style: normal; }
.spc-filter-submit, .spc-filter-clear { min-height: 46px; display: inline-flex; align-items: center; justify-content: center; padding: 0 18px; border: 1px solid var(--spc-ink); border-radius: 4px; font-size: 9px; font-weight: 850; letter-spacing: .11em; text-transform: uppercase; }
.spc-filter-submit { background: var(--spc-ink); color: #fff; cursor: pointer; }
.spc-filter-clear { background: transparent; color: var(--spc-ink); }

/* Native archive controls and product cards */
.spc-woo-shell .woocommerce-result-count { margin: 14px 0 25px; color: var(--spc-muted); font-size: 10px; }
.spc-woo-shell .woocommerce-ordering { margin: 0 0 25px; }
.spc-woo-shell .woocommerce-ordering select { min-height: 43px; padding: 0 34px 0 12px; border: 1px solid var(--spc-line); border-radius: 3px; background: #fff; color: var(--spc-ink); font-size: 10px; }
.spc-woo-shell ul.products { clear: both; display: grid !important; grid-template-columns: repeat(4,minmax(0,1fr)); gap: clamp(34px,4vw,68px) clamp(12px,2vw,28px); margin: 0 !important; padding: 0 !important; }
.spc-woo-shell ul.products::before, .spc-woo-shell ul.products::after { display: none !important; }
.spc-woo-shell ul.products li.product { width: auto !important; min-width: 0; float: none !important; margin: 0 !important; padding: 0 !important; }
.spc-woo-shell ul.products li.product a { color: var(--spc-ink); }
.spc-woo-shell ul.products li.product a img { width: 100%; aspect-ratio: 4/5; margin: 0 0 16px !important; display: block; object-fit: cover; object-position: center; background: #e9e9e4; transition: transform .35s ease,filter .35s ease; }
.spc-woo-shell ul.products li.product:hover a img { transform: translateY(-3px); filter: contrast(1.02); }
.spc-woo-shell ul.products li.product .woocommerce-loop-product__title { min-height: 2.7em; margin: 0 !important; padding: 0 !important; font-size: 11px !important; font-weight: 750 !important; letter-spacing: .025em; line-height: 1.35; text-transform: uppercase; }
.spc-woo-shell ul.products li.product .price { margin: 8px 0 0 !important; color: var(--spc-ink) !important; font-size: 11px !important; font-weight: 650 !important; }
.spc-woo-shell ul.products li.product .price del { color: var(--spc-muted); opacity: .65; }
.spc-woo-shell ul.products li.product .button { width: 100%; min-height: 44px; margin: 14px 0 0 !important; display: inline-flex; align-items: center; justify-content: center; padding: 0 14px !important; border-radius: 4px !important; background: var(--spc-ink) !important; color: #fff !important; font-size: 9px !important; font-weight: 850 !important; letter-spacing: .11em; text-transform: uppercase; }
.spc-woo-shell ul.products li.product .button:hover { background: var(--spc-green) !important; }
.spc-woo-shell ul.products li.product .onsale { top: 12px !important; right: 12px !important; left: auto !important; min-width: auto !important; min-height: auto !important; margin: 0 !important; padding: 7px 10px !important; border-radius: 2px !important; background: var(--spc-green) !important; color: #fff; font-size: 8px !important; font-weight: 850; line-height: 1 !important; letter-spacing: .1em; }
.spc-woo-shell nav.woocommerce-pagination { margin-top: 60px; }
.spc-woo-shell nav.woocommerce-pagination ul { border: 0 !important; }
.spc-woo-shell nav.woocommerce-pagination ul li { border: 0 !important; }
.spc-woo-shell nav.woocommerce-pagination ul li span, .spc-woo-shell nav.woocommerce-pagination ul li a { min-width: 42px; height: 42px; display: grid; place-items: center; margin: 2px; background: #fff; color: var(--spc-ink); font-size: 10px; }
.spc-woo-shell nav.woocommerce-pagination ul li span.current { background: var(--spc-ink); color: #fff; }

/* Product detail — Woo's gallery and variation form remain intact */
.single-product .spc-woo-shell { padding-top: clamp(120px,11vw,165px); }
.single-product .spc-woo-shell div.product { position:relative; display: grid; grid-template-columns: minmax(0,1.08fr) minmax(390px,.74fr); align-items: start; gap: clamp(46px,6vw,96px); }
.single-product .spc-woo-shell div.product::before, .single-product .spc-woo-shell div.product::after { display: none !important; }
.single-product .woocommerce-product-gallery { width: 100% !important; float: none !important; margin: 0 !important; position: sticky !important; top: 96px; }
.single-product .woocommerce-product-gallery__wrapper { margin: 0 !important; background: #e9e9e5; }
.single-product .woocommerce-product-gallery__image { float: left !important; }
.single-product .woocommerce-product-gallery__image a { display: block; }
.single-product .woocommerce-product-gallery__image img { width: 100% !important; max-height: 760px; display: block; object-fit: contain; object-position: center; background: #e9e9e5; }
.single-product .woocommerce-product-gallery .flex-viewport { background: #e9e9e5; }
.single-product .woocommerce-product-gallery .flex-control-thumbs { display: grid; grid-auto-flow: column; grid-auto-columns: 82px; justify-content: start; gap: 9px; margin: 12px 0 0 !important; padding: 0 0 8px !important; overflow-x: auto; overflow-y: hidden; scrollbar-width: thin; list-style: none; }
.single-product .woocommerce-product-gallery .flex-control-thumbs li { width: 82px !important; float: none !important; margin: 0 !important; }
.single-product .woocommerce-product-gallery .flex-control-thumbs img { width: 82px !important; height: 100px; display: block; border: 1px solid transparent; object-fit: cover; opacity: .62; cursor: pointer; }
.single-product .woocommerce-product-gallery .flex-control-thumbs img.flex-active { border-color: var(--spc-ink); opacity: 1; }
.single-product .woocommerce-product-gallery__trigger { top: 16px !important; right: 16px !important; border: 1px solid rgba(0,0,0,.12); background: rgba(255,255,255,.9) !important; }
.single-product .summary { width: 100% !important; min-width: 0; float: none !important; margin: 0 !important; padding-top: 10px; }
.spc-product-breadcrumbs,.spc-archive-breadcrumbs { display:flex; align-items:center; flex-wrap:wrap; gap:8px; margin:0 0 24px !important; color:var(--spc-muted) !important; font-size:9px !important; font-weight:650; letter-spacing:.04em; line-height:1.5; text-transform:uppercase; }
.spc-product-breadcrumbs a,.spc-archive-breadcrumbs a { color:inherit !important; text-decoration:none; }
.spc-product-breadcrumbs a:hover,.spc-archive-breadcrumbs a:hover { color:var(--spc-ink) !important; }
.spc-product-breadcrumbs > span,.spc-archive-breadcrumbs > span { opacity:.55; }
.spc-product-tax-note { margin:-19px 0 27px; color:var(--spc-muted); font-size:10px; line-height:1.5; }
.spc-product-eyebrow { margin: 0 0 11px; color: var(--spc-muted); font-size: 9px; font-weight: 850; letter-spacing: .15em; }
.single-product .summary .product_title { max-width: 680px; margin: 0 0 18px; overflow-wrap: anywhere; font-family: var(--font-sukha-display); font-size: clamp(32px,3.4vw,54px); font-weight: 700; letter-spacing: .005em; line-height: .98; text-wrap: balance; text-transform: uppercase; }
.single-product .summary > .price { margin: 0 0 27px; color: var(--spc-ink) !important; font-size: 21px !important; font-weight: 650; }
.single-product .summary .woocommerce-product-details__short-description { margin-bottom: 27px; color: var(--spc-muted); font-size: 13px; line-height: 1.75; }
.single-product form.cart { margin: 0 0 20px !important; padding-top: 22px; border-top: 1px solid var(--spc-line); }
.single-product form.cart table.variations { margin: 0 0 18px !important; }
.single-product form.cart table.variations tr { display: grid; grid-template-columns: 92px minmax(0,1fr); align-items: center; margin-bottom: 13px; }
.single-product form.cart table.variations th, .single-product form.cart table.variations td { padding: 0 !important; line-height: 1.25; }
.single-product form.cart table.variations label { color: var(--spc-ink); font-size: 9px; font-weight: 850; letter-spacing: .12em; text-transform: uppercase; }
.single-product form.cart table.variations select { width: 100%; min-height: 49px; margin: 0 !important; padding: 0 40px 0 13px; border: 1px solid #c7c8c2; border-radius: 3px; background: #fff; color: var(--spc-ink); font-size: 11px; }
.single-product form.cart table.variations select.spc-native-size-select { position:absolute!important; width:1px!important; height:1px!important; min-height:0!important; overflow:hidden!important; clip:rect(0 0 0 0)!important; clip-path:inset(50%)!important; white-space:nowrap!important; }
.spc-size-chips { display:flex; flex-wrap:wrap; gap:8px; margin-top:3px; }
.spc-size-chips button { min-width:52px; height:47px; padding:0 14px; border:1px solid #bfc0bb; border-radius:4px; background:#fff; color:var(--spc-ink); font-size:11px; font-weight:800; cursor:pointer; }
.spc-size-chips button:hover,.spc-size-chips button.is-active { border-color:var(--spc-ink); background:var(--spc-ink); color:#fff; }
.spc-size-chips button:disabled { opacity:.34; cursor:not-allowed; text-decoration:line-through; }
.spc-color-selector { margin:24px 0 4px; padding-top:20px; border-top:1px solid var(--spc-line); }
.spc-color-selector > p { display:flex; justify-content:space-between; gap:20px; margin:0 0 12px; font-size:10px; letter-spacing:.08em; text-transform:uppercase; }
.spc-color-selector > p span { color:var(--spc-muted); }
.spc-color-selector > div { display:flex; flex-wrap:wrap; gap:10px; }
.spc-color-selector a { min-width:72px; display:flex; flex-direction:column; align-items:center; gap:7px; padding:8px; border:1px solid transparent; border-radius:4px; color:var(--spc-muted); font-size:9px; text-align:center; }
.spc-color-selector a:hover,.spc-color-selector a.is-current { border-color:var(--spc-ink); color:var(--spc-ink); }
.spc-color-selector i { width:34px; height:34px; border:1px solid rgba(0,0,0,.18); border-radius:50%; background:var(--spc-swatch); box-shadow:inset 0 0 0 3px #fff; }
.single-product form.cart .reset_variations { display: inline-block; margin-top: 7px; color: var(--spc-muted); font-size: 9px; text-decoration: underline; }
.single-product .woocommerce-variation-description { color: var(--spc-muted); font-size: 12px; }
.single-product .woocommerce-variation-price { margin: 12px 0; }
.single-product .summary .quantity { margin-right: 8px !important; }
.single-product .summary .quantity .qty { min-height: 53px; border: 1px solid #c7c8c2; border-radius: 3px; background: #fff; }
.single-product .summary .single_add_to_cart_button { min-height: 53px; padding: 0 30px !important; border-radius: 5px !important; background: var(--spc-ink) !important; color: #fff !important; font-size: 10px !important; font-weight: 850 !important; letter-spacing: .12em; text-transform: uppercase; }
.single-product .summary .single_add_to_cart_button:hover { background: var(--spc-green) !important; }
.single-product .summary .single_add_to_cart_button.disabled { opacity: .42; cursor: not-allowed; }
.single-product .product_meta { margin-top: 25px; padding-top: 20px; border-top: 1px solid var(--spc-line); color: var(--spc-muted); font-size: 9px; line-height: 1.9; letter-spacing: .04em; text-transform: uppercase; }
.single-product .product_meta a { color: var(--spc-ink); }
.single-product .woocommerce-tabs, .single-product .related.products, .single-product .upsells.products { grid-column: 1/-1; width: 100%; margin-top: clamp(54px,7vw,96px); }
.single-product .woocommerce-tabs ul.tabs { padding: 0 !important; border-bottom: 1px solid var(--spc-line); }
.single-product .woocommerce-tabs ul.tabs::before { display: none !important; }
.single-product .woocommerce-tabs ul.tabs li { margin: 0 25px 0 0 !important; padding: 0 0 12px !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; }
.single-product .woocommerce-tabs ul.tabs li::before, .single-product .woocommerce-tabs ul.tabs li::after { display: none !important; }
.single-product .woocommerce-tabs ul.tabs a { padding: 0 !important; font-size: 9px; letter-spacing: .11em; text-transform: uppercase; }
.single-product .woocommerce-tabs .panel { max-width: 920px; color: var(--spc-muted); font-size: 13px; line-height: 1.8; }
.single-product .related.products > h2, .single-product .upsells.products > h2 { margin: 0 0 28px; font-family: var(--font-sukha-display); font-size: clamp(28px,3vw,44px); font-weight: 700; letter-spacing: .005em; text-transform: uppercase; }
.single-product .related.products ul.products, .single-product .upsells.products ul.products { grid-template-columns: repeat(4,minmax(0,1fr)); }

/* Trust panels */
.spc-assurances { display: grid; grid-template-columns: repeat(3,1fr); gap: 1px; margin: 25px 0 0; border: 1px solid var(--spc-line); background: var(--spc-line); }
.spc-assurances > div { min-width: 0; display: flex; align-items: center; gap: 10px; padding: 15px 11px; background: #fff; }
.spc-assurances > div > span { width: 25px; height: 25px; flex: 0 0 25px; display: grid; place-items: center; border: 1px solid var(--spc-green); border-radius: 50%; color: var(--spc-green); font-size: 10px; font-weight: 850; }
.spc-assurances p { margin: 0; }
.spc-assurances strong, .spc-assurances small { display: block; }
.spc-assurances strong { font-size: 8px; letter-spacing: .07em; }
.spc-assurances small { margin-top: 3px; color: var(--spc-muted); font-size: 8px; line-height: 1.35; }

/* Cart, checkout and account use native pages/forms inside the full shell */
.spc-native-page { width: min(1320px,calc(100% - 40px)); min-height: 68vh; margin: 0 auto; padding: clamp(120px,11vw,170px) 0 clamp(76px,8vw,120px); }
.spc-page-heading { position: relative; left: 50%; width: 100vw; min-height: 300px; margin: calc(clamp(120px,11vw,170px) * -1) 0 48px -50vw; padding: clamp(125px,13vw,180px) max(22px,calc((100vw - 1320px)/2)) 45px; background: linear-gradient(120deg,#080909 18%,#173e32 145%); color: #fff; }
.spc-page-heading h1 { max-width: 1050px; font-size: clamp(44px,5.5vw,82px); line-height: .92; }
.spc-page-heading > p:last-child { max-width: 520px; margin: 14px 0 0; color: rgba(255,255,255,.68); font-size: 13px; line-height: 1.55; }
.spc-native-page .woocommerce { width: 100%; }
.spc-native-page .woocommerce::after { display: table; clear: both; content: ""; }

.woocommerce-cart table.shop_table, .woocommerce-checkout table.shop_table { border: 1px solid var(--spc-line); border-radius: 0; background: #fff; }
.woocommerce-cart table.shop_table th, .woocommerce-cart table.shop_table td, .woocommerce-checkout table.shop_table th, .woocommerce-checkout table.shop_table td { padding: 16px; border-color: var(--spc-line); }
.woocommerce-cart table.shop_table th, .woocommerce-checkout table.shop_table th { font-size: 9px; letter-spacing: .12em; text-transform: uppercase; }
.woocommerce-cart table.shop_table .product-thumbnail img { width: 96px; height: 118px; display: block; object-fit: cover; }
.woocommerce-cart table.shop_table .product-name a { font-size: 12px; font-weight: 800; }
.woocommerce-cart table.shop_table .variation { color: var(--spc-muted); font-size: 10px; }
.woocommerce-cart table.shop_table .quantity .qty { min-height: 43px; border: 1px solid var(--spc-line); }
.woocommerce-cart :where(.coupon .input-text,input), .woocommerce-checkout input.input-text, .woocommerce-checkout textarea, .woocommerce-checkout select { min-height: 49px; padding: 0 13px; border: 1px solid #c7c8c2; border-radius: 3px; background: #fff; }
.woocommerce-checkout textarea { min-height: 110px; padding-top: 12px; }
.woocommerce-cart :where(button.button,a.button), .woocommerce-checkout :where(button.button,a.button) { min-height: 49px; display: inline-flex; align-items: center; justify-content: center; padding: 0 22px; border-radius: 5px; background: var(--spc-ink); color: #fff; font-size: 9px; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }
.woocommerce-cart :where(button.button,a.button):hover, .woocommerce-checkout :where(button.button,a.button):hover { background: var(--spc-green); color: #fff; }
.woocommerce-cart .cart-collaterals .cart_totals { width: min(100%,480px); padding: 27px; border: 1px solid var(--spc-line); background: #fff; }
.woocommerce-cart .cart-collaterals .cart_totals h2, .woocommerce-checkout #order_review_heading, .woocommerce-checkout .woocommerce-billing-fields > h3, .woocommerce-checkout .woocommerce-additional-fields > h3 { margin: 0 0 20px; font-family: var(--font-sukha-display); font-size: 26px; font-weight: 700; letter-spacing: .005em; text-transform: uppercase; }
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button { width: 100%; margin: 0; background: var(--spc-green); }
.woocommerce-cart .spc-assurances--cart { grid-template-columns: 1fr; }

.woocommerce-checkout form.checkout { display: grid; grid-template-columns: minmax(0,1.35fr) minmax(370px,.72fr); align-items: start; gap: 0 clamp(34px,5vw,72px); }
.woocommerce-checkout form.checkout > #customer_details { grid-column: 1; grid-row: 1/span 3; }
.woocommerce-checkout form.checkout > #order_review_heading { grid-column: 2; grid-row: 1; }
.woocommerce-checkout form.checkout > #order_review { grid-column: 2; grid-row: 2; }
.woocommerce-checkout .col2-set .col-1, .woocommerce-checkout .col2-set .col-2 { width: 100%; float: none; }
.woocommerce-checkout .col2-set .col-2 { margin-top: 30px; }
.woocommerce-checkout .form-row label { color: var(--spc-muted); font-size: 10px; font-weight: 700; letter-spacing: .05em; }
.woocommerce-checkout #payment { border-radius: 0; background: #eaf0ec; }
.woocommerce-checkout #payment ul.payment_methods { border-color: #d2dad5; }
.woocommerce-checkout #payment div.payment_box { background: #fff; color: var(--spc-muted); font-size: 12px; }
.woocommerce-checkout #payment div.payment_box::before { border-bottom-color: #fff; }
.woocommerce-checkout #place_order { width: 100%; min-height: 56px; background: var(--spc-green); }
.spc-secure-payment { margin: 0 0 16px; padding: 13px; border: 1px solid #c6d4cd; color: var(--spc-green); font-size: 10px; line-height: 1.5; }
.spc-secure-payment span { font-weight: 850; }

/* WooCommerce Cart and Checkout blocks, when pages use blocks rather than shortcodes. */
.spc-native-page :where(.wc-block-cart,.wc-block-checkout) { width: 100%; margin: 0; }
.spc-native-page :where(.wc-block-components-sidebar,.wc-block-cart__main,.wc-block-checkout__main) { border-color: var(--spc-line); }
.spc-native-page .wc-block-components-button { min-height: 53px; border-radius: 5px; background: var(--spc-green); color: #fff; font-size: 10px; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }
.spc-native-page .wc-block-components-product-image img { aspect-ratio: 4/5; object-fit: cover; }

/* Account */
.woocommerce-account .woocommerce { display: grid; grid-template-columns: 250px minmax(0,1fr); gap: clamp(28px,5vw,72px); align-items: start; }
.woocommerce-account .woocommerce::before, .woocommerce-account .woocommerce::after { display: none; }
.woocommerce-account .woocommerce-MyAccount-navigation { width: 100%; float: none; padding: 8px 0; border: 1px solid var(--spc-line); background: #fff; }
.woocommerce-account .woocommerce-MyAccount-navigation ul { margin: 0; padding: 0; list-style: none; }
.woocommerce-account .woocommerce-MyAccount-navigation li { margin: 0; }
.woocommerce-account .woocommerce-MyAccount-navigation a { display: block; padding: 14px 18px; border-left: 3px solid transparent; color: var(--spc-muted); font-size: 10px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.woocommerce-account .woocommerce-MyAccount-navigation .is-active a { border-left-color: var(--spc-green); background: #f3f5f2; color: var(--spc-ink); }
.woocommerce-account .woocommerce-MyAccount-content { width: 100%; float: none; min-width: 0; padding: clamp(24px,4vw,48px); border: 1px solid var(--spc-line); background: #fff; }
.woocommerce-account .woocommerce form.login, .woocommerce-account .woocommerce form.register, .woocommerce-account .woocommerce form.woocommerce-form { margin: 0; padding: clamp(24px,4vw,46px); border: 1px solid var(--spc-line); border-radius: 0; background: #fff; }
.woocommerce-account .woocommerce h2 { font-family: var(--font-sukha-display); font-size: 30px; font-weight: 700; letter-spacing: .005em; text-transform: uppercase; }
.woocommerce-account .woocommerce input.input-text { min-height: 49px; padding: 0 13px; border: 1px solid #c7c8c2; border-radius: 3px; background: #fff; }
.woocommerce-account .woocommerce button.button { min-height: 49px; padding: 0 23px; border-radius: 5px; background: var(--spc-ink); color: #fff; font-size: 9px; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }

/* Notices and native empty states */
.spc-root :where(.woocommerce-message,.woocommerce-info,.woocommerce-error) { border-top-color: var(--spc-green); background: #fff; color: var(--spc-ink); }
.spc-root .woocommerce-message::before, .spc-root .woocommerce-info::before { color: var(--spc-green); }
.spc-root .woocommerce-error::before { color: #9d342e; }
.spc-root .cart-empty.woocommerce-info { margin-top: 0; }
.spc-root .return-to-shop .button { min-height: 50px; display: inline-flex; align-items: center; padding: 0 24px; border-radius: 5px; background: var(--spc-ink); color: #fff; font-size: 9px; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }

@media (max-width: 1180px) {
  .spc-nav ul { gap: 14px; }
  .spc-nav a { font-size: 9px; }
  .spc-filters__form { grid-template-columns: repeat(3,minmax(145px,1fr)); }
  .spc-filter-submit, .spc-filter-clear { width: 100%; }
  .spc-woo-shell ul.products { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .single-product .spc-woo-shell div.product { grid-template-columns: minmax(0,1fr) minmax(355px,.8fr); gap: 42px; }
  .spc-footer__main { grid-template-columns: 1.3fr repeat(2,1fr); }
}

@media (max-width: 900px) {
  .admin-bar .spc-header { top: 46px; }
  .spc-header__inner { grid-template-columns: 56px 1fr 132px; width: min(100% - 28px,1440px); }
  .spc-logo { justify-self: center; }
  .spc-menu-toggle { display: grid; justify-self: start; }
  .spc-menu-toggle > span:not(.screen-reader-text) { width: 21px; height: 1px; display: block; margin: 2.5px 0; background: currentColor; }
  .spc-nav { position: fixed; inset: 72px 0 auto; max-height: calc(100vh - 72px); display: none; overflow-y: auto; background: rgba(5,6,6,.97); }
  .admin-bar .spc-nav { top: 118px; }
  .spc-nav.is-open { display: block; }
  .spc-nav ul { display: block; width: calc(100% - 44px); margin: 0 auto !important; padding: 13px 0 28px !important; }
  .spc-nav a { padding: 15px 0; border-bottom: 1px solid rgba(255,255,255,.1); font-size: 11px; }
  .spc-nav a::after { display: none; }
  .spc-filters__toggle { width: 100%; min-height: 56px; display: flex; align-items: center; justify-content: space-between; padding: 0; border: 0; background: transparent; color: var(--spc-ink); font-size: 10px; font-weight: 850; letter-spacing: .12em; cursor: pointer; }
  .spc-filters__form { display: none; grid-template-columns: repeat(2,minmax(0,1fr)); padding-top: 0; }
  .spc-filters__form.is-open { display: grid; }
  .single-product .spc-woo-shell div.product { display: block; }
  .single-product .woocommerce-product-gallery { position: relative !important; top: auto; margin-bottom: 36px !important; }
  .single-product .woocommerce-tabs, .single-product .related.products, .single-product .upsells.products { margin-top: 58px; }
  .woocommerce-checkout form.checkout { display: block; }
  .woocommerce-checkout form.checkout > #order_review_heading { margin-top: 44px; }
  .spc-footer__main { grid-template-columns: repeat(2,1fr); }
  .spc-footer__brand { grid-column: 1/-1; }
}

@media (max-width: 660px) {
  .spc-header { min-height: 72px; }
  .spc-header__actions .spc-icon:first-child { display: none; }
  .spc-header__inner { grid-template-columns: 50px 1fr 94px; }
  .spc-logo, .spc-logo img { width: 82px; }
  .spc-search { padding: 13px 14px; }
  .spc-search button { min-width: 86px; }
  .spc-woo-shell { padding-inline: 14px; }
  .spc-filters__form { grid-template-columns: 1fr; }
  .spc-woo-shell ul.products { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 30px 10px; }
  .spc-woo-shell ul.products li.product .woocommerce-loop-product__title { font-size: 9px !important; }
  .spc-woo-shell ul.products li.product .button { min-height: 42px; padding-inline: 7px !important; letter-spacing: .06em; }
  .single-product .spc-woo-shell { padding-top: 106px; }
  .single-product .summary .product_title { font-size: 30px; }
  .single-product .woocommerce-product-gallery .flex-control-thumbs { grid-auto-columns: 70px; }
  .single-product .woocommerce-product-gallery .flex-control-thumbs li, .single-product .woocommerce-product-gallery .flex-control-thumbs img { width: 70px !important; }
  .single-product .woocommerce-product-gallery .flex-control-thumbs img { height: 86px; }
  .single-product form.cart table.variations tr { grid-template-columns: 74px minmax(0,1fr); }
  .single-product .summary .quantity { width: 25%; }
  .single-product .summary .quantity .qty { width: 100%; }
  .single-product .summary .single_add_to_cart_button { width: calc(75% - 8px); padding-inline: 10px !important; }
  .spc-assurances { grid-template-columns: 1fr; }
  .single-product .related.products ul.products, .single-product .upsells.products ul.products { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .spc-native-page { width: calc(100% - 28px); }
  .spc-page-heading { min-height: 270px; padding-inline: 20px; }
  .spc-page-heading h1 { font-size: clamp(39px,12vw,58px); }
  .woocommerce-cart table.shop_table_responsive tr td.product-thumbnail { display: block; }
  .woocommerce-cart table.shop_table_responsive tr td.product-thumbnail::before { display: none; }
  .woocommerce-cart table.shop_table .product-thumbnail img { width: 88px; height: 108px; }
  .woocommerce-cart table.shop_table td.actions .coupon { display: grid; grid-template-columns: 1fr; gap: 8px; }
  .woocommerce-cart table.shop_table td.actions .coupon :where(.input-text,.button) { width: 100%; }
  .woocommerce-account .woocommerce { display: block; }
  .woocommerce-account .woocommerce-MyAccount-navigation { margin-bottom: 20px; }
  .spc-footer__main { width: calc(100% - 40px); grid-template-columns: 1fr 1fr; gap: 36px 22px; padding: 58px 0 44px; }
  .spc-footer__brand { grid-column: 1/-1; }
  .spc-footer__bottom { width: calc(100% - 40px); display: block; padding: 28px 0; }
  .spc-footer__bottom > p { margin-bottom: 20px; }
  .spc-payments { flex-wrap: wrap; }
  .spc-whatsapp { left: 14px; bottom: 14px; width: 49px; height: 49px; }
}

@media (max-width: 720px) {
  .spc-archive-hero { min-height:660px; background-position:58% center; }
  .spc-archive-hero.is-category { height:auto; }
  .spc-archive-hero__shade { background:linear-gradient(180deg,rgba(0,0,0,.24),rgba(0,0,0,.18) 35%,rgba(0,0,0,.94) 77%); }
  .spc-archive-hero__copy { width:calc(100% - 38px); min-height:660px; display:flex; flex-direction:column; justify-content:flex-end; padding:120px 0 48px; }
  .spc-archive-hero h1 { font-size:clamp(50px,15vw,66px); }
  .spc-archive-hero__copy > div { font-size:12px; }
}

@media (max-width: 390px) {
  .spc-footer__main { grid-template-columns: 1fr; }
  .spc-footer__brand { grid-column: auto; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .spc-header, .spc-woo-shell ul.products li.product a img, .spc-whatsapp { transition: none; }
}

/* Neve/WooCommerce compatibility.
 * Neve's Woo templates omit Woo's generic main wrapper and add
 * .nv-single-product-top. Keep the premium shell authoritative without
 * changing WooCommerce forms, sessions, variations or checkout callbacks. */
body.spc-active:is(.sukha-premium-surface-shop,.sukha-premium-surface-categories) .spc-content:not(:has(> .spc-woo-shell)) {
  width: min(1540px,100%);
  margin: 0 auto;
  padding: 0 clamp(18px,3.2vw,56px) clamp(70px,7vw,110px);
}

body.spc-active:is(.sukha-premium-surface-shop,.sukha-premium-surface-categories) .spc-content:not(:has(> .spc-woo-shell))::after { display: table; clear: both; content: ""; }

body.spc-active:is(.sukha-premium-surface-shop,.sukha-premium-surface-categories) .spc-content .woocommerce-result-count { margin: 14px 0 25px; color: var(--spc-muted); font-size: 10px; }
body.spc-active:is(.sukha-premium-surface-shop,.sukha-premium-surface-categories) .spc-content .woocommerce-ordering { margin: 0 0 25px; }
body.spc-active:is(.sukha-premium-surface-shop,.sukha-premium-surface-categories) .spc-content .woocommerce-ordering select { min-height: 43px; padding: 0 34px 0 12px; border: 1px solid var(--spc-line); border-radius: 3px; background: #fff; color: var(--spc-ink); font-size: 10px; }
body.spc-active:is(.sukha-premium-surface-shop,.sukha-premium-surface-categories) .spc-content ul.products,
body.single-product.spc-active .spc-content :is(.related,.upsells) ul.products { clear: both; display: grid !important; grid-template-columns: repeat(4,minmax(0,1fr)); gap: clamp(34px,4vw,68px) clamp(12px,2vw,28px); margin: 0 !important; padding: 0 !important; }
body.spc-active:is(.sukha-premium-surface-shop,.sukha-premium-surface-categories) .spc-content ul.products::before,
body.spc-active:is(.sukha-premium-surface-shop,.sukha-premium-surface-categories) .spc-content ul.products::after,
body.single-product.spc-active .spc-content :is(.related,.upsells) ul.products::before,
body.single-product.spc-active .spc-content :is(.related,.upsells) ul.products::after { display: none !important; }
body.spc-active:is(.sukha-premium-surface-shop,.sukha-premium-surface-categories) .spc-content ul.products li.product,
body.single-product.spc-active .spc-content :is(.related,.upsells) ul.products li.product { width: auto !important; min-width: 0; float: none !important; margin: 0 !important; padding: 0 !important; }
body.spc-active:is(.sukha-premium-surface-shop,.sukha-premium-surface-categories) .spc-content ul.products li.product a,
body.single-product.spc-active .spc-content :is(.related,.upsells) ul.products li.product a { color: var(--spc-ink); }
body.spc-active:is(.sukha-premium-surface-shop,.sukha-premium-surface-categories) .spc-content ul.products li.product a img,
body.single-product.spc-active .spc-content :is(.related,.upsells) ul.products li.product a img { width: 100%; aspect-ratio: 4/5; margin: 0 0 16px !important; display: block; object-fit: cover; object-position: center; background: #e9e9e4; transition: transform .35s ease,filter .35s ease; }
body.spc-active:is(.sukha-premium-surface-shop,.sukha-premium-surface-categories) .spc-content ul.products li.product:hover a img,
body.single-product.spc-active .spc-content :is(.related,.upsells) ul.products li.product:hover a img { transform: translateY(-3px); filter: contrast(1.02); }
body.spc-active:is(.sukha-premium-surface-shop,.sukha-premium-surface-categories) .spc-content ul.products li.product .woocommerce-loop-product__title,
body.single-product.spc-active .spc-content :is(.related,.upsells) ul.products li.product .woocommerce-loop-product__title { min-height: 2.7em; margin: 0 !important; padding: 0 !important; font-size: 11px !important; font-weight: 750 !important; letter-spacing: .025em; line-height: 1.35; text-transform: uppercase; }
body.spc-active:is(.sukha-premium-surface-shop,.sukha-premium-surface-categories) .spc-content ul.products li.product .price,
body.single-product.spc-active .spc-content :is(.related,.upsells) ul.products li.product .price { margin: 8px 0 0 !important; color: var(--spc-ink) !important; font-size: 11px !important; font-weight: 650 !important; }
body.spc-active:is(.sukha-premium-surface-shop,.sukha-premium-surface-categories) .spc-content ul.products li.product .price del,
body.single-product.spc-active .spc-content :is(.related,.upsells) ul.products li.product .price del { color: var(--spc-muted); opacity: .65; }
body.spc-active:is(.sukha-premium-surface-shop,.sukha-premium-surface-categories) .spc-content ul.products li.product .button,
body.single-product.spc-active .spc-content :is(.related,.upsells) ul.products li.product .button { width: 100%; min-height: 44px; margin: 14px 0 0 !important; display: inline-flex; align-items: center; justify-content: center; padding: 0 14px !important; border-radius: 4px !important; background: var(--spc-ink) !important; color: #fff !important; font-size: 9px !important; font-weight: 850 !important; letter-spacing: .11em; text-transform: uppercase; }
body.spc-active:is(.sukha-premium-surface-shop,.sukha-premium-surface-categories) .spc-content ul.products li.product .button:hover,
body.single-product.spc-active .spc-content :is(.related,.upsells) ul.products li.product .button:hover { background: var(--spc-green) !important; }
body.spc-active:is(.sukha-premium-surface-shop,.sukha-premium-surface-categories) .spc-content ul.products li.product .onsale,
body.single-product.spc-active .spc-content :is(.related,.upsells) ul.products li.product .onsale { top: 12px !important; right: 12px !important; left: auto !important; min-width: auto !important; min-height: auto !important; margin: 0 !important; padding: 7px 10px !important; border-radius: 2px !important; background: var(--spc-green) !important; color: #fff; font-size: 8px !important; font-weight: 850; line-height: 1 !important; letter-spacing: .1em; }
body.spc-active:is(.sukha-premium-surface-shop,.sukha-premium-surface-categories) .spc-content nav.woocommerce-pagination { margin-top: 60px; }
body.spc-active:is(.sukha-premium-surface-shop,.sukha-premium-surface-categories) .spc-content nav.woocommerce-pagination ul { border: 0 !important; }
body.spc-active:is(.sukha-premium-surface-shop,.sukha-premium-surface-categories) .spc-content nav.woocommerce-pagination ul li { border: 0 !important; }
body.spc-active:is(.sukha-premium-surface-shop,.sukha-premium-surface-categories) .spc-content nav.woocommerce-pagination ul li span,
body.spc-active:is(.sukha-premium-surface-shop,.sukha-premium-surface-categories) .spc-content nav.woocommerce-pagination ul li a { min-width: 42px; height: 42px; display: grid; place-items: center; margin: 2px; background: #fff; color: var(--spc-ink); font-size: 10px; }
body.spc-active:is(.sukha-premium-surface-shop,.sukha-premium-surface-categories) .spc-content nav.woocommerce-pagination ul li span.current { background: var(--spc-ink); color: #fff; }

body.single-product.spc-active .spc-content:not(:has(> .spc-woo-shell)) { padding-top: clamp(120px,11vw,165px); }
body.single-product.spc-active :is(.spc-content,.spc-woo-shell) > div.product {
  width: min(1480px,calc(100% - 48px));
  margin: 0 auto !important;
  padding: 0 clamp(0px,2vw,28px) clamp(76px,8vw,120px);
}
body.single-product.spc-active :is(.spc-content,.spc-woo-shell) > div.product > .nv-single-product-top {
  display: grid;
  grid-column: 1 / -1;
  grid-template-columns: minmax(0,1.08fr) minmax(390px,.74fr);
  align-items: start;
  gap: clamp(46px,6vw,96px);
}
body.single-product.spc-active :is(.spc-content,.spc-woo-shell) > div.product > .nv-single-product-top::before,
body.single-product.spc-active :is(.spc-content,.spc-woo-shell) > div.product > .nv-single-product-top::after { display: none !important; }
body.single-product.spc-active :is(.spc-content,.spc-woo-shell) > div.product > .onsale { z-index: 12; top: 10px !important; right: auto !important; left: clamp(0px,2vw,28px) !important; min-width: auto !important; min-height: auto !important; margin: 0 !important; padding: 7px 10px !important; border-radius: 2px !important; background: var(--spc-green) !important; color: #fff; font-size: 8px !important; font-weight: 850; line-height: 1 !important; letter-spacing: .1em; }
body.single-product.spc-active .summary .product_title { font-size: clamp(28px,2.55vw,42px); line-height: 1.02; }

@media (max-width: 1180px) {
  body.spc-active:is(.sukha-premium-surface-shop,.sukha-premium-surface-categories) .spc-content ul.products { grid-template-columns: repeat(3,minmax(0,1fr)); }
  body.single-product.spc-active :is(.spc-content,.spc-woo-shell) > div.product > .nv-single-product-top { grid-template-columns: minmax(0,1fr) minmax(355px,.8fr); gap: 42px; }
}

@media (max-width: 900px) {
  body.single-product.spc-active :is(.spc-content,.spc-woo-shell) > div.product > .nv-single-product-top { display: block; }
}

@media (max-width: 660px) {
  body.spc-active:is(.sukha-premium-surface-shop,.sukha-premium-surface-categories) .spc-content:not(:has(> .spc-woo-shell)) { padding-inline: 14px; }
  body.spc-active:is(.sukha-premium-surface-shop,.sukha-premium-surface-categories) .spc-content ul.products,
  body.single-product.spc-active .spc-content :is(.related,.upsells) ul.products { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 30px 10px; }
  body.spc-active:is(.sukha-premium-surface-shop,.sukha-premium-surface-categories) .spc-content ul.products li.product .woocommerce-loop-product__title,
  body.single-product.spc-active .spc-content :is(.related,.upsells) ul.products li.product .woocommerce-loop-product__title { font-size: 9px !important; }
  body.spc-active:is(.sukha-premium-surface-shop,.sukha-premium-surface-categories) .spc-content ul.products li.product .button,
  body.single-product.spc-active .spc-content :is(.related,.upsells) ul.products li.product .button { min-height: 42px; padding-inline: 7px !important; letter-spacing: .06em; }
  body.single-product.spc-active .spc-content:not(:has(> .spc-woo-shell)) { padding-top: 106px; }
  body.single-product.spc-active :is(.spc-content,.spc-woo-shell) > div.product { width: calc(100% - 28px); }
  body.single-product.spc-active .summary .product_title { font-size: 30px; }
  body.single-product.spc-active .woocommerce-tabs ul.tabs { display: flex; flex-wrap: nowrap; gap: 22px; overflow-x: auto; overflow-y: hidden; scrollbar-width: thin; }
  body.single-product.spc-active .woocommerce-tabs ul.tabs li { flex: 0 0 auto; margin-right: 0 !important; white-space: nowrap; }
}

@media (prefers-reduced-motion: reduce) {
  body.spc-active:is(.sukha-premium-surface-shop,.sukha-premium-surface-categories) .spc-content ul.products li.product a img,
  body.single-product.spc-active .spc-content :is(.related,.upsells) ul.products li.product a img { transition: none; }
}

/* Reference InteriorShell parity: typography, 30 px announcement and shared chrome. */
body.spc-active :where(button,input,select,textarea) { font-family:var(--font-sukha-sans); }
body.spc-active :where(.spc-archive-hero h1,.spc-page-heading h1,.product_title,.related.products > h2,.upsells.products > h2,.cart_totals h2,#order_review_heading,.woocommerce-billing-fields > h3,.woocommerce-additional-fields > h3,.woocommerce-account .woocommerce h2) { font-family:var(--font-sukha-display); }

body.spc-active:not(.sukha-premium-full-shell) .spc-header {
  top:30px;
  min-height:78px;
  height:78px;
  overflow:visible;
}
.spc-announcement { position:absolute; z-index:10001; inset:0 0 auto; height:30px; display:flex; align-items:center; justify-content:center; gap:9px; background:#000; color:#fff; font-size:11px; font-weight:700; letter-spacing:.11em; line-height:1; }
.spc-announcement svg { width:15px; height:15px; flex:0 0 auto; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.admin-bar .spc-announcement { top:32px; }
body.spc-active:not(.sukha-premium-full-shell) .spc-header.is-scrolled,
body.spc-active:not(.sukha-premium-full-shell) .spc-header.is-menu-open { top:0; min-height:78px; height:78px; background:rgba(5,6,6,.86); border-bottom-color:rgba(255,255,255,.1); backdrop-filter:blur(13px); }
body.spc-active:not(.sukha-premium-full-shell) .spc-header.is-menu-open:not(.is-scrolled) { top:30px; }
body.spc-active:not(.sukha-premium-full-shell).spc-has-overlay-header .spc-header:not(.is-scrolled):not(.is-menu-open) { background:transparent; border-bottom-color:transparent; backdrop-filter:none; }
.admin-bar.spc-active:not(.sukha-premium-full-shell) .spc-header { top:62px; }
.admin-bar.spc-active:not(.sukha-premium-full-shell) .spc-header.is-scrolled,
.admin-bar.spc-active:not(.sukha-premium-full-shell) .spc-header.is-menu-open { top:32px; }
.admin-bar.spc-active:not(.sukha-premium-full-shell) .spc-header.is-menu-open:not(.is-scrolled) { top:62px; }

.spc-header__inner { width:100%; min-height:78px; height:78px; padding:0 clamp(24px,4vw,72px); grid-template-columns:130px 1fr 130px; }
.spc-logo { width:74px; height:62px; }
.spc-logo img { width:74px; height:74px; object-fit:contain; }
.spc-nav ul { gap:clamp(16px,1.9vw,30px); }
.spc-nav a { padding:30px 0 25px; font-size:11px; font-weight:650; letter-spacing:.045em; }
.spc-nav a::after { bottom:21px; transition:transform .2s ease; }
.spc-header__actions { gap:3px; }
.spc-icon { width:42px; height:42px; }
.spc-icon svg { width:21px; height:21px; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.spc-cart-count { top:1px; right:0; min-width:18px; height:18px; font-weight:700; }

.spc-footer { padding:44px clamp(32px,6vw,100px) 14px; }
.spc-footer__main { width:min(1320px,100%); grid-template-columns:1.45fr .78fr .82fr 1.25fr; gap:0; margin:0 auto 28px; padding:0; }
.spc-footer__brand { display:grid; grid-template-columns:82px minmax(0,1fr); align-items:start; gap:18px; padding-right:clamp(28px,4vw,58px); }
.spc-footer__brand img { width:82px; height:82px; margin:0; }
.spc-footer__brand .footer-brand-copy > p { max-width:300px; margin:0; color:#c2c2bf; font-size:11px; line-height:1.6; }
.spc-social { gap:14px; margin-top:13px; }
.spc-social a { width:18px; height:18px; display:grid; place-items:center; margin:0; color:#d9d9d6; }
.spc-social svg { width:13px; height:13px; fill:none; stroke:currentColor; stroke-width:1.8; }
.spc-social a:last-child svg { fill:currentColor; stroke:none; }
.spc-footer__main > div:not(.spc-footer__brand) { display:flex; flex-direction:column; align-items:flex-start; padding-left:clamp(20px,2.6vw,42px); border-left:1px solid #292a2a; }
.spc-footer h2 { margin:0 0 19px; font-size:11px; font-weight:700; letter-spacing:.1em; }
.spc-footer__main > div:not(.spc-footer__brand) > a { margin:0 0 10px; color:#c5c5c2; font-size:10.5px; line-height:1.45; }
.spc-footer__bottom { width:min(1320px,100%); min-height:0; display:flex; justify-content:center; padding-top:11px; border-top:1px solid #282828; color:#7e7e7b; font-size:8px; text-align:center; }
.spc-payment-column { display:flex; flex-direction:column; align-items:flex-start; }
.spc-payments { display:grid; grid-template-columns:repeat(3,max-content); align-items:center; gap:10px 13px; margin:0; }
.spc-payments > .payment-logo { min-width:0; width:auto; height:31px; display:grid; place-items:center; overflow:visible; border-radius:0; background:transparent; }
.spc-payments .payment-logo img { width:auto; max-width:88px; height:auto; max-height:31px; object-fit:contain; }
.spc-payments .payment-webpay img { width:82px; }
.spc-payments .payment-visa img { width:56px; }
.spc-payments .payment-mastercard img { width:52px; }
.spc-payments .payment-amex img { width:34px; }
.spc-payments > .payment-redcompra { width:124px; overflow:hidden; }
.spc-payments .payment-redcompra img { width:108px; max-width:none; height:24px; max-height:24px; object-fit:cover; object-position:center; clip-path:none; }

@media (max-width:1180px) {
  .spc-header__inner { grid-template-columns:110px 1fr 150px; padding-inline:28px; }
  .spc-nav ul { gap:15px; }
  .spc-nav a { font-size:9px; }
}

@media (max-width:900px) {
  .spc-header__inner { width:100%; grid-template-columns:1fr repeat(4,42px); padding-inline:20px; }
  .spc-logo { grid-column:1; grid-row:1; justify-self:start; }
  .spc-menu-toggle { grid-column:5; grid-row:1; justify-self:stretch; display:grid; }
  .spc-header__actions { display:contents; }
  .spc-header__actions > :nth-child(1) { grid-column:2; grid-row:1; }
  .spc-header__actions > :nth-child(2) { grid-column:3; grid-row:1; }
  .spc-header__actions > :nth-child(3) { grid-column:4; grid-row:1; }
  .spc-nav { top:108px; }
  .spc-header.is-scrolled .spc-nav { top:78px; }
  .admin-bar .spc-nav { top:140px; }
  .admin-bar .spc-header.is-scrolled .spc-nav { top:110px; }
  .spc-footer__main { grid-template-columns:repeat(2,1fr); row-gap:35px; }
  .spc-footer__brand { grid-column:1/-1; padding-bottom:30px; }
}

@media (max-width:720px) {
  body.spc-active:not(.sukha-premium-full-shell) .spc-header { top:28px; min-height:66px; height:66px; }
  .spc-announcement { height:28px; gap:6px; font-size:8px; }
  .spc-announcement svg { width:12px; height:12px; }
  .admin-bar .spc-announcement { top:46px; }
  body.spc-active:not(.sukha-premium-full-shell) .spc-header.is-scrolled,
  body.spc-active:not(.sukha-premium-full-shell) .spc-header.is-menu-open { top:0; min-height:66px; height:66px; }
  body.spc-active:not(.sukha-premium-full-shell) .spc-header.is-menu-open:not(.is-scrolled) { top:28px; }
  .admin-bar.spc-active:not(.sukha-premium-full-shell) .spc-header { top:74px; }
  .admin-bar.spc-active:not(.sukha-premium-full-shell) .spc-header.is-scrolled,
  .admin-bar.spc-active:not(.sukha-premium-full-shell) .spc-header.is-menu-open { top:46px; }
  .admin-bar.spc-active:not(.sukha-premium-full-shell) .spc-header.is-menu-open:not(.is-scrolled) { top:74px; }
  .spc-header__inner { height:66px; min-height:66px; grid-template-columns:1fr repeat(3,40px); padding-inline:16px; }
  .spc-logo,.spc-logo img { width:58px; height:58px; }
  .spc-header__actions > :nth-child(1) { display:none; }
  .spc-header__actions > :nth-child(2) { grid-column:2; display:grid; }
  .spc-header__actions > :nth-child(3) { grid-column:3; }
  .spc-menu-toggle { grid-column:4; }
  .spc-icon { width:40px; height:40px; }
  .spc-nav { top:94px; max-height:calc(100vh - 94px); }
  .spc-header.is-scrolled .spc-nav { top:66px; max-height:calc(100vh - 66px); }
  .admin-bar .spc-nav { top:140px; }
  .admin-bar .spc-header.is-scrolled .spc-nav { top:112px; }
  .spc-footer { padding:42px 20px 18px; }
  .spc-footer__main { grid-template-columns:1fr; gap:30px; }
  .spc-footer__brand { grid-column:auto; padding:0; }
  .spc-footer__main > div:not(.spc-footer__brand) { padding-left:0; border-left:0; }
  .spc-footer__bottom { flex-direction:column; gap:8px; }
}

@media (max-width:420px) {
  .spc-footer__main > div:not(.spc-footer__brand) { grid-column:auto; padding:25px 0 0; border-top:1px solid #292a2a; border-left:0; }
}

/* Approved catalog composition. Native WooCommerce loops stay inside results. */
.spc-store-section { width:min(1360px,calc(100% - 64px)); margin:0 auto; padding:64px 0 88px; }
.spc-store-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:24px; margin-bottom:28px; }
.spc-store-heading p { margin:0 0 5px; color:var(--spc-muted); font-size:10px; font-weight:800; letter-spacing:.12em; }
.spc-store-heading h2 { margin:0; font-family:var(--font-sukha-display); font-size:clamp(40px,4vw,62px); font-weight:700; line-height:.9; text-transform:uppercase; }
.spc-store-heading > span { color:var(--spc-muted); font-size:11px; }
.spc-category-rail { display:grid; grid-template-columns:repeat(5,1fr); gap:12px; margin-bottom:42px; }
.spc-category-rail a { position:relative; min-height:155px; overflow:hidden; background:#111; color:#fff; }
.spc-category-rail img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; filter:brightness(.66); transition:transform .24s ease,filter .24s ease; }
.spc-category-rail a:hover img { filter:brightness(.8); transform:scale(1.04); }
.spc-category-rail span { position:absolute; z-index:2; bottom:13px; left:15px; color:#fff !important; font-family:var(--font-sukha-display); font-size:23px; font-weight:700; line-height:.9; text-transform:uppercase; }
.spc-catalog-layout { display:grid; grid-template-columns:250px minmax(0,1fr); gap:30px; padding-top:34px; border-top:1px solid var(--spc-line); }
.spc-catalog-results { min-width:0; }
.spc-catalog-layout > .spc-filters { align-self:start; margin:0; border:0; background:transparent; }
.spc-catalog-layout .spc-filters__toggle { display:none; }
.spc-catalog-layout .catalog-filters { position:sticky; top:92px; max-height:calc(100vh - 110px); display:block; padding:0; overflow:auto; border-bottom:1px solid #cfcfca; background:var(--spc-paper); }
.catalog-filters-heading { min-height:48px; display:flex; align-items:center; justify-content:space-between; border-top:2px solid var(--spc-ink); font-size:9px; letter-spacing:.08em; }
.catalog-filters-heading > button { width:36px; height:36px; display:none; place-items:center; padding:0; border:0; background:transparent; color:var(--spc-ink); font-size:24px; line-height:1; cursor:pointer; }
.spc-filter-backdrop { display:none; }
.catalog-filter-group,.spc-price-filter { padding:0 0 16px; border-top:1px solid #d7d7d2; }
.catalog-filter-group > label,.spc-price-filter > label { min-height:43px; display:flex; align-items:center; margin:0; color:var(--spc-ink); font-size:9px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.catalog-filter-group select,.spc-price-filter input { width:100%; min-height:42px; border:1px solid #cfcfca; border-radius:0; background:#fff; color:var(--spc-ink); font-size:10px; }
.spc-price-filter > span { gap:6px; }
.spc-catalog-layout .spc-filter-submit,.spc-catalog-layout .spc-filter-clear { width:100%; min-height:46px; margin-top:10px; border-radius:0; }
.spc-catalog-results > .woocommerce-notices-wrapper:empty { display:none; }

@media (max-width:900px) {
  .spc-catalog-layout { grid-template-columns:1fr; }
  .spc-catalog-layout > .spc-filters { min-height:46px; }
  .spc-catalog-layout .spc-filters__toggle { min-height:46px; display:flex; align-items:center; justify-content:space-between; padding:0; border:0; background:transparent; color:var(--spc-ink); font-size:9px; font-weight:800; letter-spacing:.08em; }
  .spc-filters__toggle > span:last-child { width:20px; height:20px; display:grid; place-items:center; border-radius:50%; background:var(--spc-ink); color:#fff; }
  .spc-catalog-layout .catalog-filters { position:fixed; z-index:122; top:0; left:0; width:min(370px,92vw); height:100dvh; max-height:none; display:block; padding:20px 24px 28px; overflow:auto; background:#f7f7f3; transform:translateX(-104%); transition:transform .23s ease; }
  .spc-catalog-layout .catalog-filters.is-open { transform:translateX(0); }
  .catalog-filters-heading > button { display:grid; }
  .spc-filter-backdrop { position:fixed; z-index:121; inset:0; display:block; border:0; pointer-events:none; opacity:0; background:rgba(0,0,0,.52); transition:opacity .22s ease; }
  .spc-filters:has(.catalog-filters.is-open) .spc-filter-backdrop { pointer-events:auto; opacity:1; }
}

@media (max-width:720px) {
  .spc-store-section { width:100%; padding:44px 16px 58px; }
  .spc-store-heading { align-items:flex-start; }
  .spc-store-heading h2 { font-size:40px; }
  .spc-category-rail { display:flex; gap:10px; margin-right:-16px; padding-right:16px; overflow-x:auto; scrollbar-width:none; }
  .spc-category-rail::-webkit-scrollbar { display:none; }
  .spc-category-rail a { flex:0 0 195px; min-height:130px; }
  .spc-catalog-layout { padding-top:22px; }
}

/* Approved product composition. WooCommerce retains the real gallery,
 * variation form, stock validation, cart action and related products. */
body.single-product.spc-active .spc-woo-shell { width:100%; max-width:none; margin:0; padding:0 0 120px; }
.product-top-banner { position:relative; left:50%; width:100vw; height:116px; margin-left:-50vw; overflow:hidden; background:linear-gradient(90deg,rgba(0,0,0,.88),rgba(0,0,0,.48),rgba(0,0,0,.78)),var(--spc-product-banner) center 44% / cover no-repeat; }
body.single-product.spc-active .spc-woo-shell > div.product.product-premium { width:min(1500px,100%); display:grid; grid-template-columns:minmax(0,1.35fr) minmax(420px,.95fr); align-items:start; gap:0; margin:0 auto !important; padding:0; background:#fff; }
.product-premium-gallery { position:relative; min-width:0; padding:18px; background:#f1f1ee; }
.product-premium-gallery > .onsale { z-index:8; top:30px !important; right:30px !important; left:auto !important; }
body.single-product.spc-active .product-premium-gallery .woocommerce-product-gallery { position:relative !important; top:auto; width:100% !important; float:none !important; margin:0 !important; }
.product-premium-gallery .woocommerce-product-gallery__wrapper { margin:0 !important; background:#e8e8e4; }
.product-premium-gallery .flex-viewport { width:100%; height:auto !important; aspect-ratio:1; overflow:hidden; background:#e8e8e4; }
.product-premium-gallery .flex-viewport .woocommerce-product-gallery__wrapper { height:100% !important; }
.product-premium-gallery .woocommerce-product-gallery__image { height:100%; float:left !important; }
.product-premium-gallery .woocommerce-product-gallery__image a { width:100%; height:100%; display:block; }
.product-premium-gallery .woocommerce-product-gallery__image img { width:100% !important; height:100% !important; max-height:none; display:block; object-fit:contain; object-position:center; background:#e8e8e4; }
.product-premium-gallery .woocommerce-product-gallery .flex-control-thumbs { display:flex !important; grid-auto-flow:unset; grid-auto-columns:unset; justify-content:flex-start; gap:9px; margin:0 !important; padding:10px 0 0 !important; overflow-x:auto; overflow-y:hidden; list-style:none; scrollbar-width:thin; }
.product-premium-gallery .woocommerce-product-gallery .flex-control-thumbs li { width:92px !important; height:92px; flex:0 0 92px; float:none !important; margin:0 !important; }
.product-premium-gallery .woocommerce-product-gallery .flex-control-thumbs img { width:92px !important; height:92px !important; display:block; border:1px solid transparent; object-fit:cover; opacity:.68; }
.product-premium-gallery .woocommerce-product-gallery .flex-control-thumbs img.flex-active { border-color:#111; box-shadow:inset 0 0 0 1px #111; opacity:1; }

body.single-product.spc-active .product-buy-panel.summary { width:100% !important; min-width:0; float:none !important; margin:0 !important; padding:0; border-left:1px solid #deded9; background:#fff; }
.product-panel-sticky { position:sticky; top:86px; max-width:560px; padding:44px clamp(24px,3vw,46px) 60px; }
.product-panel-sticky .spc-product-breadcrumbs { margin:0 0 25px !important; }
.product-panel-sticky .spc-product-eyebrow { margin:0 0 8px; color:#70706b; font-size:9px; font-weight:800; letter-spacing:.1em; }
.product-title-row { display:grid; grid-template-columns:minmax(0,1fr) 42px; align-items:start; gap:14px; }
body.single-product.spc-active .product-title-row .product_title { max-width:none; margin:0 0 14px; font-size:clamp(26px,2.2vw,36px); font-weight:700; line-height:1.02; overflow-wrap:anywhere; text-wrap:balance; text-transform:uppercase; }
.product-title-mark { width:42px; height:42px; display:grid; place-items:center; border:1px solid #cfcfca; border-radius:50%; background:#fff; color:#111; font-family:Arial,sans-serif; font-size:24px; line-height:1; }
.product-panel-sticky .woocommerce-product-rating { margin:0 0 10px; }
body.single-product.spc-active .product-panel-sticky > .price { display:flex; align-items:baseline; gap:12px; margin:0 0 4px; color:#111 !important; font-size:21px !important; font-weight:650 !important; }
.product-panel-sticky > .price del { color:#999994; font-size:12px; opacity:1; }
.product-panel-sticky .spc-product-tax-note { margin:0 0 29px; color:#81817c; font-size:8px; line-height:1.5; }

.product-panel-sticky .spc-color-selector { margin:0; padding:22px 0; border-top:1px solid #deded9; }
.product-panel-sticky .spc-color-selector > p { margin:0 0 13px; font-size:9px; letter-spacing:normal; text-transform:none; }
.product-panel-sticky .spc-color-selector > p strong { font-weight:700; }
.product-panel-sticky .spc-color-selector > p span { color:#6f6f6a; text-decoration:underline; }
.product-panel-sticky .spc-color-selector > div { display:flex; flex-wrap:nowrap; gap:9px; padding:2px; overflow-x:auto; scrollbar-width:thin; }
.product-panel-sticky .spc-color-selector a { position:relative; min-width:66px; width:66px; height:76px; flex:0 0 66px; display:block; overflow:hidden; padding:0; border:1px solid #d0d0cb; border-radius:0; background:#efefec; }
.product-panel-sticky .spc-color-selector a:hover,.product-panel-sticky .spc-color-selector a.is-current { border-color:#111; outline:2px solid #111; outline-offset:1px; }
.product-panel-sticky .spc-color-selector img { width:100%; height:100%; display:block; object-fit:cover; }
.product-panel-sticky .spc-color-selector i { position:absolute; right:4px; bottom:4px; width:12px; height:12px; border:2px solid #fff; border-radius:50%; background:var(--spc-swatch); box-shadow:0 0 0 1px rgba(0,0,0,.18); }

body.single-product.spc-active .product-panel-sticky form.cart { margin:0 !important; padding:0; border:0; }
body.single-product.spc-active .product-panel-sticky form.cart table.variations { width:100%; margin:0 !important; border:0; }
body.single-product.spc-active .product-panel-sticky form.cart table.variations > tbody { width:100%; display:block; }
body.single-product.spc-active .product-panel-sticky form.cart table.variations tr { display:block; margin:0; padding:22px 0; border-top:1px solid #deded9; }
body.single-product.spc-active .product-panel-sticky form.cart table.variations tr { width:100% !important; }
body.single-product.spc-active .product-panel-sticky form.cart table.variations th,body.single-product.spc-active .product-panel-sticky form.cart table.variations td { width:100%; display:block; padding:0 !important; }
body.single-product.spc-active .product-panel-sticky form.cart table.variations th { height:14px; margin-bottom:13px; line-height:14px; }
body.single-product.spc-active .product-panel-sticky form.cart table.variations label { font-size:9px; font-weight:700; letter-spacing:normal; line-height:14px; text-transform:none; }
.product-panel-sticky .spc-size-chips { display:grid; grid-template-columns:repeat(auto-fit,minmax(52px,1fr)); gap:7px; margin:0; }
.product-panel-sticky .spc-size-chips button { min-width:0; min-height:44px; height:44px; padding:0 10px; border:1px solid #c9c9c4; border-radius:0; background:#fff; font-size:10px; font-weight:700; }
.product-panel-sticky form.cart .reset_variations { display:none !important; }
.product-panel-sticky .single_variation_wrap { margin-top:0; }
.product-panel-sticky .woocommerce-variation-add-to-cart { display:flex; width:100%; }
body.single-product.spc-active .product-panel-sticky .quantity { display:none !important; }
body.single-product.spc-active .product-panel-sticky .single_add_to_cart_button { width:100%; min-height:56px; margin:0; padding:0 22px !important; border-radius:0 !important; background:#080909 !important; color:#fff !important; font-size:10px !important; font-weight:800 !important; letter-spacing:.06em; }

.product-panel-sticky .spc-assurances { grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; margin:0; padding:22px 0; border:0; background:transparent; }
.product-panel-sticky .spc-assurances > div { align-items:flex-start; gap:7px; padding:0; background:#fff; }
.product-panel-sticky .spc-assurances > div > span { width:17px; height:17px; flex:0 0 17px; border:0; border-radius:0; font-size:9px; }
.product-panel-sticky .spc-assurances strong,.product-panel-sticky .spc-assurances small { font-size:7px; line-height:1.35; }
.product-panel-sticky .spc-assurances small { margin-top:2px; }
.product-accordions { border-bottom:1px solid #d8d8d3; }
.product-accordions details { border-top:1px solid #d8d8d3; }
.product-accordions summary { min-height:51px; display:flex; align-items:center; justify-content:space-between; cursor:pointer; list-style:none; font-size:9px; font-weight:800; letter-spacing:.04em; text-transform:uppercase; }
.product-accordions summary::-webkit-details-marker { display:none; }
.product-accordions details[open] summary span { transform:rotate(45deg); }
.product-accordions details > :not(summary) { margin:0; padding:0 0 18px; color:#575752; font-size:9px; line-height:1.65; }
.product-accordions a { color:#111; text-decoration:underline; }
body.single-product.spc-active .product-premium > :is(.related.products,.upsells.products) { grid-column:1/-1; width:min(1180px,calc(100% - 64px)); margin:56px auto 0; padding:0 0 76px; }

@media (max-width:1180px) {
  body.single-product.spc-active .spc-woo-shell > div.product.product-premium { grid-template-columns:minmax(0,1.45fr) minmax(380px,.9fr); }
  .product-panel-sticky { padding-inline:28px; }
}

@media (max-width:900px) {
  body.single-product.spc-active .spc-woo-shell > div.product.product-premium { grid-template-columns:1fr; }
  body.single-product.spc-active .product-buy-panel.summary { border-top:1px solid #deded9; border-left:0; }
  .product-panel-sticky { position:static; max-width:720px; margin:0 auto; padding:42px 30px 54px; }
}

@media (max-width:640px) {
  .product-top-banner { height:96px; }
  .product-premium-gallery { padding:8px 0 12px; }
  .product-premium-gallery > .onsale { top:18px !important; right:10px !important; }
  .product-premium-gallery .woocommerce-product-gallery .flex-control-thumbs { gap:9px; padding:8px 14px 0 !important; scrollbar-width:none; }
  .product-premium-gallery .woocommerce-product-gallery .flex-control-thumbs li { width:76px !important; height:76px; flex-basis:76px; }
  .product-premium-gallery .woocommerce-product-gallery .flex-control-thumbs img { width:76px !important; height:76px !important; }
  .product-panel-sticky { padding:34px 18px 46px; }
  .product-title-row { grid-template-columns:minmax(0,1fr) 40px; }
  .product-title-mark { width:40px; height:40px; }
  body.single-product.spc-active .product-title-row .product_title { font-size:26px; line-height:1; }
  .product-panel-sticky .spc-assurances { grid-template-columns:1fr; gap:11px; }
  .product-panel-sticky .spc-assurances strong,.product-panel-sticky .spc-assurances small { font-size:8px; }
  body.single-product.spc-active .product-premium > :is(.related.products,.upsells.products) { width:calc(100% - 32px); margin-top:42px; padding-bottom:56px; }
}

/* ==========================================================================\
   APPROVED DESIGN PARITY OVERRIDES\
   Shared contract for the approved Sukha storefront markup. Keep this block\
   last so legacy theme/plugin rules cannot alter the validated presentation.\
   ========================================================================== */

/* One WhatsApp treatment on every commerce view. */
body.spc-active .whatsapp-bubble,
body.spc-active .spc-whatsapp.whatsapp-bubble {
    position: fixed !important;
    z-index: 9998 !important;
    left: 22px !important;
    right: auto !important;
    bottom: 22px !important;
    width: auto !important;
    min-width: 60px;
    height: auto !important;
    min-height: 60px;
    margin: 0 !important;
    padding: 6px 16px 6px 6px !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: flex-start;
    gap: 11px;
    border: 1px solid rgba(255, 255, 255, .12) !important;
    border-radius: 999px !important;
    background: rgba(7, 12, 10, .92) !important;
    color: #fff !important;
    box-shadow: 0 12px 34px rgba(0, 0, 0, .22) !important;
    text-decoration: none !important;
    transform: none !important;
}

body.spc-active .whatsapp-bubble :is(.whatsapp-bubble-icon, .spc-whatsapp-icon) {
    flex: 0 0 48px;
    width: 48px;
    height: 48px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #1e9d59;
    color: #fff;
}

body.spc-active .whatsapp-bubble :is(.whatsapp-bubble-icon, .spc-whatsapp-icon) svg {
    width: 24px !important;
    height: 24px !important;
    display: block;
}

body.spc-active .whatsapp-bubble :is(.whatsapp-bubble-copy, .spc-whatsapp-copy) {
    display: grid;
    gap: 1px;
    color: #fff;
    line-height: 1.12;
    text-align: left;
    white-space: nowrap;
}

body.spc-active .whatsapp-bubble :is(.whatsapp-bubble-copy, .spc-whatsapp-copy) small {
    color: rgba(255, 255, 255, .68);
    font-size: 8px;
    font-weight: 700;
    letter-spacing: .04em;
    text-transform: uppercase;
}

body.spc-active .whatsapp-bubble :is(.whatsapp-bubble-copy, .spc-whatsapp-copy) strong {
    color: #fff;
    font-size: 12px;
    font-weight: 700;
}

/* Mobile navigation brand and a non-distorted logo. */
.spc-mobile-nav-brand {
    display: none;
    width: 100%;
    margin: 0 0 28px;
}

.spc-mobile-nav-brand img {
    display: block;
    width: auto !important;
    max-width: 94px !important;
    height: auto !important;
    max-height: 94px !important;
    object-fit: contain;
    object-position: left center;
}

/* Search modal markup shared by the header on all templates. */
.spc-search-overlay {
    position: fixed;
    z-index: 10020;
    inset: 0;
    display: grid;
    place-items: start center;
    padding: clamp(90px, 12vh, 150px) 22px 40px;
    background: rgba(5, 7, 6, .88);
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
    transition: opacity .2s ease, visibility .2s ease;
}

.spc-search-overlay[hidden] {
    display: none !important;
}

.spc-search-overlay:is(.is-open, [aria-hidden="false"]) {
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
}

.spc-search-overlay > :is(.spc-search-dialog, .spc-search-inner) {
    width: min(980px, 100%);
    padding: clamp(24px, 4vw, 44px);
    border: 1px solid rgba(255, 255, 255, .16);
    border-radius: 4px;
    background: #0a0b0b;
    color: #fff;
    box-shadow: 0 28px 80px rgba(0, 0, 0, .34);
}

.spc-search-overlay form {
    width: 100%;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 12px;
}

.spc-search-overlay :is(input[type="search"], input[type="text"]) {
    width: 100%;
    min-width: 0;
    min-height: 58px;
    padding: 0 18px;
    border: 1px solid rgba(255, 255, 255, .3);
    border-radius: 3px;
    background: #151817;
    color: #fff;
    font-size: 16px;
}

.spc-search-overlay button[type="submit"] {
    min-width: 138px;
    min-height: 58px;
    padding: 0 24px;
    border: 1px solid #fff;
    border-radius: 3px;
    background: #fff;
    color: #090a0a;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

/* Approved catalogue: 250 px filters plus three square product cards. */
body.spc-active .spc-catalog-layout {
    grid-template-columns: 250px minmax(0, 1fr) !important;
    gap: clamp(34px, 4vw, 62px) !important;
    align-items: start;
}

body.spc-active .spc-catalog-results :is(.spc-loop-grid, ul.products) {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 42px 28px !important;
    margin: 0 !important;
}

body.spc-active .spc-catalog-results :is(.spc-loop-card, ul.products li.product) {
    width: auto !important;
    min-width: 0;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

body.spc-active .spc-catalog-results :is(.spc-loop-media, ul.products li.product > a:first-child) {
    position: relative;
    display: block;
}

body.spc-active .spc-catalog-results :is(.spc-loop-media img, ul.products li.product img) {
    width: 100% !important;
    aspect-ratio: 1 / 1;
    height: auto !important;
    margin: 0 0 17px !important;
    display: block;
    object-fit: cover;
    object-position: center;
    background: #f3f3f0;
}

body.spc-active .spc-catalog-results :is(.spc-loop-badge, ul.products li.product .onsale) {
    position: absolute !important;
    z-index: 2;
    top: 14px !important;
    left: 14px !important;
    right: auto !important;
    min-width: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 6px 9px !important;
    border: 0 !important;
    border-radius: 2px !important;
    background: #090a0a !important;
    color: #fff !important;
    font-size: 8px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    letter-spacing: .08em;
    text-transform: uppercase;
}

body.spc-active .spc-catalog-results :is(.spc-loop-copy, .woocommerce-loop-product__link) {
    color: #0a0b0b;
    text-decoration: none;
}

body.spc-active .spc-catalog-results :is(.spc-loop-category, .spc-loop-meta) {
    display: block;
    margin: 0 0 7px;
    color: #6d706d;
    font-size: 9px;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: .08em;
    text-transform: uppercase;
}

body.spc-active .spc-catalog-results :is(.spc-loop-title, .woocommerce-loop-product__title) {
    margin: 0 0 9px !important;
    padding: 0 !important;
    color: #0a0b0b !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    line-height: 1.35 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
}

body.spc-active .spc-catalog-results :is(.spc-loop-price, .price) {
    display: flex !important;
    align-items: baseline;
    gap: 6px;
    margin: 0 !important;
    color: #0a0b0b !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    line-height: 1.2;
}

body.spc-active .spc-catalog-results :is(.spc-loop-price, .price) del {
    color: #9a9b98 !important;
    font-size: 11px;
    opacity: 1 !important;
}

body.spc-active .spc-catalog-results :is(.spc-loop-price, .price) ins {
    color: #0a0b0b !important;
    text-decoration: none !important;
}

body.spc-active .spc-catalog-results :is(.spc-loop-swatches, .spc-loop-sizes) {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 7px;
    margin-top: 10px;
}

body.spc-active .spc-catalog-results :is(.spc-loop-cta, ul.products li.product > .button, ul.products li.product > a.button) {
    display: none !important;
}

/* Details/checkbox filter markup replaces the imported select controls. */
body.spc-active .catalog-filters details.catalog-filter-group {
    margin: 0;
    padding: 0;
    border: 0;
    border-top: 1px solid #d8d8d3;
}

body.spc-active .catalog-filters details.catalog-filter-group:last-child {
    border-bottom: 1px solid #d8d8d3;
}

body.spc-active .catalog-filters details.catalog-filter-group > summary {
    min-height: 54px;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    color: #0a0b0b;
    cursor: pointer;
    list-style: none;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

body.spc-active .catalog-filters details.catalog-filter-group > summary::-webkit-details-marker {
    display: none;
}

body.spc-active .catalog-filters details.catalog-filter-group > summary::after {
    content: "+";
    font-size: 17px;
    font-weight: 500;
    line-height: 1;
}

body.spc-active .catalog-filters details.catalog-filter-group[open] > summary::after {
    content: "−";
}

body.spc-active .catalog-filters details.catalog-filter-group > :not(summary) {
    margin: 0 0 18px;
}

body.spc-active .catalog-filters details.catalog-filter-group label {
    width: 100%;
    min-height: 34px;
    margin: 0;
    display: grid;
    grid-template-columns: 18px minmax(0, 1fr) auto;
    align-items: center;
    gap: 9px;
    color: #363936;
    cursor: pointer;
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 0;
    text-transform: none;
}

body.spc-active .catalog-filters details.catalog-filter-group input[type="checkbox"] {
    width: 16px;
    height: 16px;
    margin: 0;
    accent-color: #0a0b0b;
}

/* Product gallery and compact related cards. */
body.single-product.spc-active :is(
    .product-premium-gallery > .onsale,
    .woocommerce-product-gallery__trigger,
    .product-premium-gallery .woocommerce-product-gallery__trigger,
    .related ul.products li.product .onsale,
    .up-sells ul.products li.product .onsale
) {
    display: none !important;
}

body.single-product.spc-active .product-premium-gallery {
    position: relative;
}

body.single-product.spc-active .spc-gallery-controls {
    position: absolute;
    z-index: 5;
    top: 50%;
    left: 12px;
    right: 12px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    transform: translateY(-50%);
    pointer-events: none;
}

body.single-product.spc-active .spc-gallery-controls button {
    width: 42px;
    height: 42px;
    padding: 0;
    display: inline-grid;
    place-items: center;
    border: 1px solid rgba(0, 0, 0, .16);
    border-radius: 50%;
    background: rgba(255, 255, 255, .94);
    color: #0a0b0b;
    box-shadow: 0 8px 24px rgba(0, 0, 0, .11);
    cursor: pointer;
    pointer-events: auto;
}

body.single-product.spc-active .spc-gallery-controls :is(.spc-gallery-counter, output) {
    position: absolute;
    left: 50%;
    bottom: -42px;
    padding: 5px 8px;
    border-radius: 999px;
    background: rgba(10, 11, 11, .78);
    color: #fff;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: .06em;
    transform: translateX(-50%);
}

body.single-product.spc-active .woocommerce-product-gallery .flex-control-thumbs {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(72px, 92px));
    gap: 10px !important;
    margin-top: 12px !important;
}

body.single-product.spc-active .woocommerce-product-gallery .flex-control-thumbs li {
    width: 92px !important;
    margin: 0 !important;
    float: none !important;
}

body.single-product.spc-active .woocommerce-product-gallery .flex-control-thumbs img {
    width: 92px !important;
    height: 92px !important;
    object-fit: cover;
}

body.single-product.spc-active :is(.related, .up-sells) ul.products {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 22px !important;
}

body.single-product.spc-active :is(.related, .up-sells) ul.products li.product {
    width: auto !important;
    margin: 0 !important;
    float: none !important;
}

body.single-product.spc-active :is(.related, .up-sells) ul.products li.product img {
    width: 100% !important;
    aspect-ratio: 1 / 1;
    height: auto !important;
    object-fit: cover;
}

body.single-product.spc-active :is(.related, .up-sells) ul.products li.product > .button {
    display: none !important;
}

/* Preserve the selected variation visually after WooCommerce refreshes it. */
body.single-product.spc-active .product-panel-sticky .spc-size-chips button:is(
    .is-active,
    .is-selected,
    [aria-pressed="true"]
) {
    border-color: #0a0b0b !important;
    background: #0a0b0b !important;
    color: #fff !important;
    opacity: 1 !important;
    visibility: visible !important;
}

/* Approved black checkout actions. */
body.woocommerce-cart.spc-active .wc-proceed-to-checkout a.checkout-button,
body.woocommerce-checkout.spc-active #place_order {
    width: 100% !important;
    min-height: 56px !important;
    margin: 0 !important;
    padding: 0 24px !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    border: 1px solid #0a0b0b !important;
    border-radius: 4px !important;
    background: #0a0b0b !important;
    color: #fff !important;
    box-shadow: none !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    letter-spacing: .09em !important;
    text-align: center;
    text-transform: uppercase;
}

body.woocommerce-cart.spc-active .wc-proceed-to-checkout a.checkout-button:hover,
body.woocommerce-checkout.spc-active #place_order:hover {
    border-color: #252727 !important;
    background: #252727 !important;
    color: #fff !important;
}

body.woocommerce-checkout.spc-active #payment .payment_methods label img,
body.woocommerce-checkout.spc-active #payment .payment_method_webpay_plus label img,
body.woocommerce-checkout.spc-active #payment .payment_method_webpay_oneclick label img {
    width: auto !important;
    height: auto !important;
    max-width: 48px !important;
    max-height: 30px !important;
    margin: 0 0 0 10px !important;
    display: inline-block !important;
    object-fit: contain !important;
    vertical-align: middle !important;
}

@media (max-width: 1024px) {
    body.spc-active .spc-catalog-results :is(.spc-loop-grid, ul.products) {
        gap: 34px 20px !important;
    }
}

@media (max-width: 900px) {
    body.spc-active .spc-nav {
        position: fixed !important;
        z-index: 10010 !important;
        inset: 0 auto 0 0 !important;
        width: min(440px, 92vw) !important;
        max-width: none !important;
        height: 100dvh !important;
        max-height: none !important;
        margin: 0 !important;
        padding: 32px clamp(24px, 6vw, 38px) 42px !important;
        display: block !important;
        justify-self: stretch !important;
        overflow-x: hidden !important;
        overflow-y: auto !important;
        border: 0 !important;
        background: #070908 !important;
        box-shadow: 22px 0 60px rgba(0, 0, 0, .32) !important;
        visibility: hidden;
        opacity: 0;
        pointer-events: none;
        transform: translateX(-104%);
        transition: transform .24s ease, opacity .2s ease, visibility .2s ease;
    }

    body.spc-active .spc-nav.is-open {
        visibility: visible;
        opacity: 1;
        pointer-events: auto;
        transform: translateX(0);
    }

    body.spc-active .spc-nav .spc-mobile-nav-brand {
        display: block;
    }

    body.spc-active .spc-nav ul {
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        display: grid !important;
        gap: 0 !important;
    }

    body.spc-active .spc-nav li {
        width: 100%;
        border-bottom: 1px solid rgba(255, 255, 255, .1);
    }

    body.spc-active .spc-nav a {
        width: 100% !important;
        min-height: 56px;
        padding: 0 !important;
        display: flex !important;
        align-items: center;
        color: #fff !important;
        font-size: 12px !important;
        text-align: left;
    }

    body.spc-active .spc-catalog-layout {
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 28px !important;
    }

    body.single-product.spc-active :is(.related, .up-sells) ul.products {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 720px) {
    body.spc-active .whatsapp-bubble,
    body.spc-active .spc-whatsapp.whatsapp-bubble {
        left: 18px !important;
        bottom: 18px !important;
        min-width: 52px;
        min-height: 52px;
        padding: 4px !important;
    }

    body.spc-active .whatsapp-bubble :is(.whatsapp-bubble-icon, .spc-whatsapp-icon) {
        flex-basis: 44px;
        width: 44px;
        height: 44px;
    }

    body.spc-active .whatsapp-bubble :is(.whatsapp-bubble-copy, .spc-whatsapp-copy) {
        display: none;
    }

    .spc-search-overlay {
        padding: 74px 14px 24px;
    }

    .spc-search-overlay form {
        grid-template-columns: minmax(0, 1fr);
    }

    .spc-search-overlay button[type="submit"] {
        width: 100%;
    }

    body.spc-active .spc-catalog-results :is(.spc-loop-grid, ul.products) {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 30px 14px !important;
    }

    body.spc-active .spc-catalog-results :is(.spc-loop-media img, ul.products li.product img) {
        margin-bottom: 12px !important;
    }

    body.spc-active .spc-catalog-results :is(.spc-loop-title, .woocommerce-loop-product__title) {
        font-size: 11px !important;
    }

    body.single-product.spc-active .woocommerce-product-gallery .flex-control-thumbs {
        grid-template-columns: repeat(auto-fit, minmax(64px, 76px));
        gap: 8px !important;
    }

    body.single-product.spc-active .woocommerce-product-gallery .flex-control-thumbs li,
    body.single-product.spc-active .woocommerce-product-gallery .flex-control-thumbs img {
        width: 76px !important;
        height: 76px !important;
    }

    body.woocommerce-cart.spc-active .wc-proceed-to-checkout a.checkout-button,
    body.woocommerce-checkout.spc-active #place_order {
        min-height: 56px !important;
        font-size: 10px !important;
    }
}

/* 2.2.1 final integration rules for the approved PHP/JS components. */
html.spc-no-scroll { overflow: hidden !important; }

body.spc-active .spc-menu-backdrop {
  position: fixed;
  z-index: 10009;
  inset: 0;
  display: block;
  border: 0;
  background: rgba(0,0,0,.56);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity .2s ease, visibility .2s ease;
}
body.spc-active.spc-menu-open .spc-menu-backdrop { opacity: 1; visibility: visible; pointer-events: auto; }
.spc-mobile-nav-brand { align-items: center; justify-content: space-between; }
.spc-mobile-nav-brand button { width: 44px; height: 44px; padding: 0; border: 0; background: transparent; color: #fff; font-size: 34px; font-weight: 300; line-height: 1; }
.spc-mobile-contact { margin-top: 24px; color: rgba(255,255,255,.66) !important; font-size: 9px !important; font-weight: 700; letter-spacing: .08em; }

body.spc-active .spc-search-overlay {
  z-index: 10020;
  place-items: center;
  padding: 32px;
  background: rgba(7,8,8,.97);
  color: #fff;
}
body.spc-active .spc-search-overlay > .spc-search-dialog {
  width: min(780px,100%);
  padding: 0;
  display: block;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
body.spc-active .spc-search-overlay form { display: block; }
body.spc-active .spc-search-overlay .spc-eyebrow { margin: 0 0 12px; color: #fff; }
body.spc-active .spc-search-overlay h2 { margin: 0 0 28px; color: #fff; font-family: var(--font-sukha-display); font-size: clamp(50px,7vw,86px); font-weight: 700; line-height: .88; text-transform: uppercase; }
body.spc-active .spc-search-overlay input[type="search"] { width: 100%; min-height: 62px; padding: 0 3px; border: 0; border-bottom: 1px solid #6d6d69; border-radius: 0; background: transparent; color: #fff; font-size: 20px; outline: 0; }
body.spc-active .spc-search-close { position: absolute; z-index: 2; top: 30px; right: 38px; width: 52px; height: 52px; padding: 0; display: grid; place-items: center; border: 0; background: transparent; color: #fff; }
body.spc-active .spc-search-close svg { width: 28px; height: 28px; fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linecap: round; }
body.spc-active .spc-search-results { max-height: 44vh; margin-top: 20px; overflow-y: auto; }
body.spc-active .spc-search-results > a { display: grid; grid-template-columns: 58px minmax(0,1fr) auto; align-items: center; gap: 16px; padding: 10px 0; border-bottom: 1px solid #292929; color: #fff; text-decoration: none; }
body.spc-active .spc-search-results img { width: 58px; height: 58px; display: block; object-fit: cover; }
body.spc-active .spc-search-results span { display: flex; flex-direction: column; gap: 4px; }
body.spc-active .spc-search-results strong { color: #fff; font-size: 11px; }
body.spc-active .spc-search-results small { color: #aaa; font-size: 10px; }
body.spc-active .spc-search-results svg { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 1.7; }
body.spc-active .spc-search-results > p { color: #bbb; font-size: 12px; }

body.spc-active .spc-filters { margin: 0; border: 0; background: transparent; }
body.spc-active .catalog-filters { position: sticky; top: 92px; width: 100%; max-height: calc(100vh - 110px); padding: 0 !important; display: block !important; overflow: auto; background: var(--spc-paper); }
body.spc-active .catalog-filters-heading { min-height: 58px; padding: 0; display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid #d8d8d3; }
body.spc-active .catalog-filters-heading > div { display: flex; align-items: center; gap: 9px; }
body.spc-active .catalog-filters-heading svg { width: 17px; height: 17px; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; }
body.spc-active .catalog-filters-heading strong { font-size: 10px; letter-spacing: .08em; }
body.spc-active .catalog-filters-heading > button { display: none; border: 0; background: transparent; font-size: 28px; font-weight: 300; }
body.spc-active .catalog-clear { min-height: 38px; display: flex; align-items: center; color: #555; font-size: 9px; font-weight: 700; letter-spacing: .06em; text-decoration: underline; }
body.spc-active .catalog-filter-group > summary svg { width: 15px; height: 15px; fill: none; stroke: currentColor; stroke-width: 1.7; transition: transform .18s ease; }
body.spc-active .catalog-filter-group[open] > summary svg { transform: rotate(180deg); }
body.spc-active .catalog-filters details.catalog-filter-group > summary::after { display: none; }
body.spc-active .catalog-filters details.catalog-filter-group label:has(> i) { grid-template-columns: 18px 14px minmax(0,1fr) auto; }
body.spc-active .catalog-filters details.catalog-filter-group label > i { width: 13px; height: 13px; border: 1px solid rgba(0,0,0,.14); border-radius: 50%; background: var(--spc-swatch); }
body.spc-active .catalog-price-inputs { display: grid !important; grid-template-columns: minmax(0,1fr) auto minmax(0,1fr); align-items: end; gap: 8px; }
body.spc-active .catalog-price-inputs > label { min-height: 0 !important; display: block !important; }
body.spc-active .catalog-price-inputs > label > span { display: block; margin-bottom: 5px; color: #777; font-size: 8px; }
body.spc-active .catalog-price-inputs input { width: 100%; min-height: 42px; padding: 0 9px; border: 1px solid #ccc; background: #fff; font-size: 10px; }
body.spc-active .catalog-price-inputs > i { padding-bottom: 13px; color: #888; font-style: normal; }
body.spc-active .catalog-apply { display: none; width: 100%; min-height: 50px; margin-top: 18px; border: 0; background: #090a0a; color: #fff; font-size: 10px; font-weight: 800; letter-spacing: .08em; }
body.spc-active .spc-filter-backdrop { display: none; }
body.spc-active .spc-catalog-results .spc-loop-meta { margin-top: 10px; display: flex; align-items: center; justify-content: space-between; gap: 8px; }
body.spc-active .spc-catalog-results .spc-loop-meta > span { color: #666; font-size: 8px; letter-spacing: .04em; white-space: nowrap; }
body.spc-active .spc-loop-swatches i { width: 11px; height: 11px; display: block; border: 1px solid rgba(0,0,0,.15); border-radius: 50%; background: var(--spc-swatch); }

body.single-product.spc-active .woocommerce-variation-description { display: none !important; }
body.single-product.spc-active :is(.related,.up-sells) ul.products li.product { position: relative; }
body.single-product.spc-active :is(.related,.up-sells) .spc-loop-badge { position: absolute; z-index: 2; top: 11px; left: 11px; padding: 6px 8px; background: #090a0a; color: #fff; font-size: 7px; font-weight: 800; letter-spacing: .08em; }
body.single-product.spc-active :is(.related,.up-sells) .spc-loop-category { display: block; margin: 10px 0 6px; color: #74746f; font-size: 8px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
body.single-product.spc-active :is(.related,.up-sells) .woocommerce-loop-product__title { min-height: 34px; margin: 0 0 7px !important; padding: 0 !important; color: #111; font-size: 10px !important; line-height: 1.35; }
body.single-product.spc-active :is(.related,.up-sells) .price { margin: 0 0 8px !important; color: #111 !important; font-size: 11px !important; }
body.single-product.spc-active :is(.related,.up-sells) .spc-loop-meta { display: flex; align-items: center; justify-content: space-between; gap: 7px; }
body.single-product.spc-active .spc-related-product-link { margin-top: 10px; display: flex; align-items: center; justify-content: space-between; color: #111; font-size: 8px; font-weight: 800; letter-spacing: .06em; }

body.woocommerce-cart.spc-active .wc-proceed-to-checkout a.checkout-button::after,
body.woocommerce-checkout.spc-active #place_order::after { content: "→"; margin-left: 14px; font-size: 16px; font-weight: 400; }

@media (max-width: 900px) {
  body.spc-active .spc-nav .spc-mobile-nav-brand { display: flex; }
  body.spc-active .catalog-filters { position: fixed; z-index: 10012; top: 0; left: 0; width: min(370px,92vw); height: 100dvh; max-height: none; padding: 20px 24px 28px !important; transform: translateX(-104%); transition: transform .23s ease; }
  body.spc-active .catalog-filters.is-open { transform: translateX(0); }
  body.spc-active .catalog-filters-heading > button { display: grid; place-items: center; }
  body.spc-active .catalog-apply { display: flex; align-items: center; justify-content: center; }
  body.spc-active .spc-filter-backdrop.catalog-filter-backdrop { position: fixed; z-index: 10011; inset: 0; display: block; border: 0; background: rgba(0,0,0,.52); opacity: 0; visibility: hidden; pointer-events: none; transition: opacity .2s ease; }
  body.spc-active .spc-filter-backdrop.catalog-filter-backdrop.is-open { opacity: 1; visibility: visible; pointer-events: auto; }
}

@media (max-width: 720px) {
  body.spc-active .spc-search-overlay { align-items: start; padding: 110px 18px 30px; }
  body.spc-active .spc-search-close { top: 40px; right: 17px; }
  body.spc-active .spc-search-overlay h2 { font-size: 52px; }
  body.spc-active .spc-catalog-results .spc-loop-meta { align-items: flex-start; flex-direction: column; }
}

/* 2.3.0: mobile account access and unified Sukha signature footer. */
.spc-mobile-account-item { display: none; }
.spc-footer__main { grid-template-columns: 1.45fr .78fr .82fr 1.25fr; }
.spc-footer__main > .footer-accordion {
  min-width: 0;
  padding-left: clamp(20px, 2.6vw, 42px);
  border-left: 1px solid #292a2a;
}
.spc-footer .footer-accordion > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 0 0 19px;
  list-style: none;
  color: #fff;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .1em;
  cursor: default;
}
.spc-footer .footer-accordion > summary::-webkit-details-marker { display: none; }
.spc-footer .footer-accordion-icon { display: none; }
.spc-footer .footer-accordion-content { display: flex; flex-direction: column; align-items: flex-start; }
.spc-footer .footer-accordion-content > a { margin: 0 0 10px; color: #c5c5c2; font-size: 10.5px; line-height: 1.45; }

@media (min-width: 721px) {
  .spc-footer .footer-accordion:not([open]) > .footer-accordion-content { display: flex !important; }
}

@media (max-width: 900px) {
  .spc-mobile-account-item { display: list-item; }
  .spc-footer__main { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .spc-footer__brand { grid-column: 1 / -1; }
}

@media (max-width: 720px) {
  .spc-header__inner { grid-template-columns: 1fr repeat(4, 40px); }
  body.spc-active .spc-header__actions > .account-link:first-child { grid-column: 2; display: grid !important; }
  .spc-header__actions > :nth-child(2) { grid-column: 3; }
  .spc-header__actions > :nth-child(3) { grid-column: 4; }
  .spc-menu-toggle { grid-column: 5; }

  .spc-footer {
    margin: 0;
    padding: 16px 14px 11px;
    border-top: 0;
    background: #080909;
  }
  .spc-footer__main {
    width: 100%;
    grid-template-columns: 102px minmax(0, 1fr);
    gap: 0 14px;
    margin: 0;
    padding: 0;
  }
  .spc-footer__brand {
    grid-column: 1;
    grid-row: 1 / span 3;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 7px;
    padding: 0 13px 0 0;
    border-right: 1px solid #292a2a;
  }
  .spc-footer__brand img { width: 58px; height: auto; }
  .spc-footer__brand .footer-brand-copy { text-align: center; }
  .spc-footer__brand .footer-brand-copy > p { margin: 0; font-size: 7.5px; line-height: 1.45; }
  .spc-footer .spc-social { justify-content: center; margin-top: 7px; }
  .spc-footer__main > .footer-accordion {
    grid-column: 2;
    padding: 0;
    border: 0;
    border-bottom: 1px solid #292a2a;
  }
  .spc-footer .footer-accordion > summary {
    min-height: 40px;
    margin: 0;
    display: flex;
    font-size: 8.5px;
    font-weight: 800;
    letter-spacing: .05em;
    cursor: pointer;
  }
  .spc-footer .footer-accordion-icon { display: inline-block; font-size: 20px; font-weight: 300; line-height: 1; }
  .spc-footer .footer-accordion-content { padding: 0 0 10px; }
  .spc-footer .footer-accordion-content > a { margin-bottom: 6px; font-size: 7.5px; }
  .spc-footer .footer-payment-accordion { border-bottom: 0; }
  .spc-footer .spc-payments {
    width: 100%;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 4px;
  }
  .spc-footer .spc-payments > .payment-logo { width: auto; height: 22px; overflow: hidden; }
  .spc-footer .spc-payments .payment-logo img { max-width: 100%; max-height: 19px; }
  .spc-footer .spc-payments .payment-webpay img { width: 45px; }
  .spc-footer .spc-payments .payment-visa img { width: 28px; }
  .spc-footer .spc-payments .payment-mastercard img { width: 27px; }
  .spc-footer .spc-payments .payment-amex img { width: 21px; }
  .spc-footer .spc-payments > .payment-redcompra { width: auto; }
  .spc-footer .spc-payments .payment-redcompra img { width: 43px; height: auto; object-fit: contain; }
  .spc-footer__bottom {
    width: calc(100% - 116px);
    min-height: 0;
    margin: 7px 0 0 116px;
    padding-top: 7px;
    justify-content: flex-start;
    border-top: 0;
    font-size: 6.8px;
    text-align: left;
  }
}
