/*
Theme Name: Sapaspur Fashion
Theme URI: https://sapaspur.com/
Author:SAPASPUR LLC
Author URI: https://sapaspur.com/
Description: A standalone, mobile-first WooCommerce fashion and eyewear brand theme for Sapaspur. No parent theme or Sapaspur companion plugin required.
Version: 2.0.67
Requires at least: 6.5
Tested up to: 6.8
Requires PHP: 8.1
Text Domain: sapaspur-fashion
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
*/

:root {
  --sapa-black: #000000;
  --sapa-white: #ffffff;
  --sapa-sand: #c2a679;
  --sapa-paper: #f9f9f9;
  --sapa-text: #111111;
  --sapa-muted: #666666;
  --sapa-line: #e7e7e7;
  --sapa-max: 1440px;
  --sapa-header-height: 64px;
}

/* The theme's collection header owns the title, count, search and filters. */
main#main .sapa-v93-archive-title,
main#main .sp391-archive-heading,
main#main .spcx-archive-heading,
main#main .sapa-archive-heading,
main#main .sapa-v61-archive-heading,
main#main .sapa-v66-archive-heading,
main#main [class*="archive-header"],
main#main [class*="archive-heading"],
main#main .woocommerce-products-header { display: none !important; }
main#main .sapa-collection-heading .sapa-v93-count,
main#main .sapa-collection-heading .woocommerce-result-count,
main#main .sapa-collection-heading .sapa-v61-result-count,
main#main .sapa-collection-heading .sapa-v66-result-count { display: none !important; }

/* v1.8.36: Single collection header and complete department-first SHOP navigation. */
.sapa-brand-home .sapa-departments,
.sapa-brand-home .sapa-desktop-category-nav { display: none; }
.sapa-brand-home .sapa-header-wrap { border-bottom: 1px solid #ddd; }
.sapa-brand-home .sapa-wordmark strong { font-family: Georgia, 'Times New Roman', serif; font-size: .92em; font-weight: 500; letter-spacing: .14em; }
.sapa-brand-home--viloque { --sapa-brand-accent: #b9975b; --sapa-brand-ink: #15110b; }
.sapa-brand-home--orenka { --sapa-brand-accent: #9d9a91; --sapa-brand-ink: #0b0d0f; }
.sapa-brand-landing { max-width: 1600px; margin: 0 auto; background: #fff; color: #111; }
.sapa-brand-landing__nav { display: flex; min-height: 50px; align-items: center; justify-content: center; gap: clamp(18px,3vw,44px); overflow-x: auto; scrollbar-width: none; white-space: nowrap; }
.sapa-brand-landing__nav::-webkit-scrollbar,
.sapa-brand-orbits::-webkit-scrollbar { display: none; }
.sapa-brand-landing__nav a { color: #111; font-size: 12px; font-weight: 750; letter-spacing: .06em; text-decoration: none; text-transform: uppercase; }
.sapa-brand-landing__nav a.is-active { color: var(--sapa-brand-accent); }
.sapa-brand-hero { position: relative; display: grid; min-height: 520px; grid-template-columns: 30% 70%; overflow: hidden; background: var(--sapa-brand-ink); color: #fff; }
.sapa-brand-hero__copy { position: relative; z-index: 2; display: flex; justify-content: center; flex-direction: column; padding: clamp(28px,4vw,64px); background: linear-gradient(90deg,rgba(8,7,5,.98),rgba(8,7,5,.86) 72%,rgba(8,7,5,.1)); }
.sapa-brand-emblem { width: auto; max-width: 120px; max-height: 62px; margin: 0 0 10px; object-fit: contain; object-position: left center; }
.sapa-brand-hero__copy h1 { margin: 0; font-family: Georgia, 'Times New Roman', serif; font-size: clamp(38px,4.5vw,72px); font-weight: 400; letter-spacing: .09em; }
.sapa-brand-hero__copy small { color: var(--sapa-brand-accent); font-size: 10px; letter-spacing: .28em; }
.sapa-brand-hero__copy h2 { max-width: 430px; margin: 35px 0 25px; font-size: clamp(28px,3vw,48px); font-weight: 400; letter-spacing: .04em; line-height: .98; }
.sapa-brand-hero__copy a,
.sapa-brand-editorial a { width: fit-content; padding: 12px 20px; border: 1px solid var(--sapa-brand-accent); color: #fff; font-size: 11px; font-weight: 800; letter-spacing: .09em; text-decoration: none; text-transform: uppercase; }
.sapa-brand-hero__images { display: grid; grid-template-columns: repeat(4,1fr); }
.sapa-brand-hero__image { min-width: 0; background-color: #211d18; background-position: center top; background-size: cover; }
.sapa-brand-orbits { display: none; }
.sapa-brand-category-mosaic { display: grid; grid-template-columns: repeat(6,1fr); gap: 4px; padding: 8px 16px 4px; }
.sapa-brand-category-mosaic a { position: relative; min-height: 240px; background: #c8c2b7 center top / cover no-repeat; color: #fff; text-decoration: none; }
.sapa-brand-category-mosaic a::after { position: absolute; inset: 45% 0 0; content: ''; background: linear-gradient(transparent,rgba(0,0,0,.72)); }
.sapa-brand-category-mosaic strong,
.sapa-brand-category-mosaic span { position: absolute; z-index: 1; bottom: 18px; font-size: 16px; letter-spacing: .06em; }
.sapa-brand-category-mosaic strong { left: 14px; }
.sapa-brand-category-mosaic span { right: 14px; }
.sapa-brand-editorials { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; padding: 4px 16px 8px; }
.sapa-brand-editorial { position: relative; min-height: 330px; background: #29231d center / cover no-repeat; color: #fff; }
.sapa-brand-editorial::after { position: absolute; inset: 0; content: ''; background: linear-gradient(90deg,rgba(0,0,0,.75),rgba(0,0,0,.08)); }
.sapa-brand-editorial > div { position: absolute; z-index: 1; top: 50%; left: clamp(20px,4vw,52px); max-width: 360px; transform: translateY(-50%); }
.sapa-brand-editorial h2 { margin: 0 0 12px; font-family: Georgia, 'Times New Roman', serif; font-size: clamp(28px,3vw,46px); font-weight: 400; line-height: .95; }
.sapa-brand-editorial p { margin: 0 0 20px; font-size: 13px; letter-spacing: .08em; }
.sapa-brand-new-in { padding-top: 10px; padding-bottom: 30px; }
.sapa-brand-new-in .sapa-section-heading { display: flex; align-items: center; justify-content: space-between; }
.sapa-brand-new-in .sapa-section-heading a { color: #111; font-size: 11px; text-decoration: underline; text-transform: uppercase; }
.sapa-brand-product-rail { display: grid !important; grid-template-columns: repeat(6,minmax(0,1fr)) !important; gap: 8px !important; }

@media (max-width: 767px) {
  .sapa-brand-home .sapa-header { min-height: 62px; }
  .sapa-brand-home .sapa-category-search { display: none; }
  .sapa-brand-landing__nav { min-height: 42px; justify-content: flex-start; padding-inline: 12px; gap: 22px; }
  .sapa-brand-landing__nav a { font-size: 10px; }
  .sapa-brand-hero { min-height: 480px; display: block; }
  .sapa-brand-hero__images { position: absolute; inset: 0; display: block; }
  .sapa-brand-hero__image { position: absolute; inset: 0; }
  .sapa-brand-hero__image:not(:first-child) { display: none; }
  .sapa-brand-hero__images::after { position: absolute; inset: 0; content: ''; background: linear-gradient(90deg,rgba(0,0,0,.85),rgba(0,0,0,.06) 80%); }
  .sapa-brand-hero__copy { height: 480px; width: 72%; padding: 28px 20px; background: transparent; }
  .sapa-brand-emblem { max-width: 90px; max-height: 48px; }
  .sapa-brand-hero__copy h1 { font-size: 38px; }
  .sapa-brand-hero__copy h2 { margin: 28px 0 20px; font-size: 31px; }
  .sapa-brand-orbits { display: flex; gap: 12px; overflow-x: auto; padding: 12px; scrollbar-width: none; }
  .sapa-brand-orbits a { flex: 0 0 68px; color: #111; text-align: center; text-decoration: none; }
  .sapa-brand-orbits span { display: block; width: 64px; height: 64px; border-radius: 50%; background: #ded8cf center top / cover no-repeat; }
  .sapa-brand-orbits b { display: block; margin-top: 6px; overflow: hidden; font-size: 9px; font-weight: 650; text-overflow: ellipsis; white-space: nowrap; }
  .sapa-brand-category-mosaic { display: none; }
  .sapa-brand-editorials { display: block; padding: 0; }
  .sapa-brand-editorial { min-height: 270px; margin-bottom: 5px; }
  .sapa-brand-editorial > div { left: 20px; max-width: 62%; }
  .sapa-brand-editorial h2 { font-size: 30px; }
  .sapa-brand-new-in { padding: 8px 10px 95px; overflow: hidden; }
  .sapa-brand-new-in .sapa-brand-product-rail { display: grid !important; grid-template-columns: none !important; grid-auto-columns: 31% !important; grid-auto-flow: column; gap: 8px !important; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
  .sapa-brand-product-rail > li.product { scroll-snap-align: start; }
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--sapa-text);
  background: var(--sapa-white);
  font-family: Inter, "Helvetica Neue", Helvetica, Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
.sapa-route-loader {
  position: fixed; z-index: 100000; inset: 0; display: none !important; place-items: center;
  background: rgba(255,255,255,.96); opacity: 0; visibility: hidden; pointer-events: none;
  transition: opacity .16s ease, visibility .16s ease;
}
.sapa-route-loader::after {
  width: 34px; height: 34px; border: 3px solid #dedede; border-top-color: #000; border-radius: 50%;
  content: ""; animation: sapa-route-spin .7s linear infinite;
}
.sapa-route-loading .sapa-route-loader { opacity: 1; visibility: visible; pointer-events: auto; }
@keyframes sapa-route-spin { to { transform: rotate(360deg); } }
img { display: block; max-width: 100%; height: auto; }
a { color: inherit; }
.screen-reader-text {
  position: absolute !important;
  width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0;
}
.screen-reader-text:focus {
  z-index: 100000; top: 8px; left: 8px; width: auto; height: auto;
  padding: 12px 16px; clip: auto; background: #fff; color: #000;
}

:where(button, .button, .btn, input, select, textarea, .elementor-button, .wc-block-components-button) {
  border-radius: 0 !important;
}
:where(button, .button, .btn, input[type="submit"], .elementor-button, .wc-block-components-button) {
  min-height: 46px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}
:where(a, button, input, select, textarea):focus-visible {
  outline: 2px solid var(--sapa-sand);
  outline-offset: 3px;
}

.site-shell { width: min(100%, var(--sapa-max)); margin-inline: auto; }
.site-main { min-height: 60vh; }
.content-shell { width: min(calc(100% - 32px), 1100px); margin: 48px auto; }
.content-shell--wide { width: min(calc(100% - 24px), var(--sapa-max)); }

/* Announcement ticker */
.sapa-ticker {
  position: relative;
  z-index: 70;
  display: flex;
  min-height: 34px;
  align-items: center;
  overflow: hidden;
  background: var(--sapa-black);
  color: var(--sapa-white);
  white-space: nowrap;
}
.sapa-ticker__track {
  display: flex;
  width: max-content;
  min-width: max-content;
  animation: sapa-marquee 26s linear infinite;
  will-change: transform;
}
.sapa-ticker__item {
  padding-inline: 36px;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .16em;
  line-height: 34px;
  text-transform: uppercase;
}
.sapa-ticker:hover .sapa-ticker__track { animation-play-state: paused; }
@keyframes sapa-marquee { to { transform: translateX(-50%); } }

/* Header */
.sapa-header-wrap {
  position: sticky;
  top: 0;
  z-index: 60;
  background: rgba(255,255,255,.98);
  border-bottom: 1px solid var(--sapa-line);
}
.sapa-header {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  min-height: 78px;
  padding: 0 22px;
}
.sapa-header__left { justify-self: start; }
.sapa-header__left,
.menu-toggle,
.elementor-menu-toggle,
.mobile-menu-toggle,
.wd-header-mobile-nav,
.woodmart-burger-icon { display: none !important; }
.sapa-header__right { justify-self: end; display: flex; align-items: center; gap: 13px; }
.sapa-icon-button {
  display: inline-grid;
  width: 38px; height: 38px;
  min-height: 38px;
  place-items: center;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--sapa-black);
  text-decoration: none;
}
.sapa-icon-button svg { width: 23px; height: 23px; fill: none; stroke: currentColor; stroke-width: 1.8; }
.sapa-wordmark,
.custom-logo-link {
  display: inline-block;
  color: var(--sapa-black);
  font-size: clamp(17px, 2.2vw, 27px);
  font-weight: 900;
  letter-spacing: .08em;
  line-height: 1;
  text-decoration: none;
  white-space: nowrap;
}
.sapa-wordmark { transform-origin: left center; transition: opacity .18s ease, transform .18s ease; }
.sapa-wordmark strong,
.sapa-wordmark span,
.sapa-wordmark em { display: inline; font-size: 1em; line-height: 1; }
.sapa-wordmark strong { font-weight: 950; }
.sapa-wordmark span { font-weight: 950; font-style: normal; }
.sapa-wordmark em { font-weight: 500; font-style: italic; letter-spacing: .015em; }
.sapa-wordmark.is-departing { opacity: 0; transform: translateX(-12px); }
.sapa-wordmark.is-arriving { opacity: 0; transform: translateX(12px); }
.custom-logo { width: auto; max-height: 38px; }
.sapa-cart-link { position: relative; }
.sapa-cart-count {
  position: absolute; top: 0; right: -1px;
  display: grid; width: 16px; height: 16px; place-items: center;
  background: var(--sapa-sand); color: var(--sapa-black);
  font-size: 9px; font-weight: 900;
}
.sapa-for-you {
  display: inline-flex;
  min-height: 38px;
  align-items: center;
  padding: 0 15px;
  border: 1px solid #d8d8d8;
  border-radius: 999px;
  box-shadow: 0 2px 0 rgba(0,0,0,.12);
  font-size: 12px;
  font-weight: 800;
  text-decoration: none;
  white-space: nowrap;
}

/* Always-visible department rail */
.sapa-departments {
  overflow-x: auto;
  border-top: 1px solid var(--sapa-line);
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
}
.sapa-departments::-webkit-scrollbar { display: none; }
.sapa-departments ul {
  display: flex;
  width: max-content;
  min-width: 100%;
  justify-content: center;
  gap: clamp(20px, 4vw, 58px);
  margin: 0;
  padding: 0 18px;
  list-style: none;
}
.sapa-departments a {
  position: relative;
  display: block;
  padding: 15px 0 13px;
  font-size: 14px;
  font-weight: 800;
  letter-spacing: .11em;
  text-transform: uppercase;
  text-decoration: none;
  white-space: nowrap;
}
.sapa-departments a::after {
  position: absolute; right: 0; bottom: 7px; left: 0;
  height: 2px; content: "";
  background: var(--sapa-black);
  transform: scaleX(0);
  transition: transform .2s ease;
}
.sapa-departments a:hover::after,
.sapa-departments .current-menu-item a::after { transform: scaleX(1); }
.sapa-departments .menu-item-sale a { color: #b00020; }
.sapa-desktop-category-nav {
  display: none;
  overflow-x: auto;
  border-top: 1px solid var(--sapa-line);
  border-bottom: 1px solid var(--sapa-line);
  background: #fff;
  scrollbar-width: none;
}
.sapa-desktop-category-nav::-webkit-scrollbar { display: none; }
.sapa-desktop-category-nav ul {
  display: flex;
  width: max-content;
  min-width: 100%;
  align-items: center;
  justify-content: center;
  gap: clamp(18px, 2.1vw, 34px);
  margin: 0;
  padding: 0 22px;
  list-style: none;
}
.sapa-desktop-category-nav a {
  display: block;
  padding: 11px 0 10px;
  color: #111;
  font-size: 11px;
  font-weight: 650;
  letter-spacing: .02em;
  text-decoration: none;
  white-space: nowrap;
}
.sapa-desktop-category-nav a:hover,
.sapa-desktop-category-nav a:focus-visible { text-decoration: underline; text-underline-offset: 4px; }
.sapa-desktop-category-nav .sapa-mega-item { position: static; }
.sapa-mega-panel { position: absolute; z-index: 80; right: 0; left: 0; visibility: hidden; padding: 24px 0 30px; border-top: 1px solid #e7e7e7; background: #fff; opacity: 0; transform: translateY(-6px); pointer-events: none; box-shadow: 0 18px 30px rgba(0,0,0,.09); transition: opacity .16s ease, transform .16s ease, visibility .16s; }
.sapa-mega-item:hover .sapa-mega-panel,
.sapa-mega-item:focus-within .sapa-mega-panel,
.sapa-mega-item.is-open .sapa-mega-panel { visibility: visible; opacity: 1; transform: translateY(0); pointer-events: auto; }
.sapa-mega-panel h2 { margin: 0 0 16px; font-size: 22px; letter-spacing: .08em; }
.sapa-mega-groups { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 22px 28px; }
.sapa-mega-groups section > h3 { margin: 0 0 8px; color: #777; font-size: 10px; letter-spacing: .12em; }
.sapa-mega-links { display: grid; grid-template-columns: 1fr; gap: 0; }
.sapa-mega-links a { display: flex; min-height: 43px; align-items: center; justify-content: space-between; border-bottom: 1px solid #eee; font-size: 12px; font-weight: 750; }
.sapa-mega-links a span { font-size: 20px; font-weight: 400; }
.sapa-category-search { padding: 12px 16px 14px; }
.sapa-category-search form {
  display: flex;
  max-width: 860px;
  height: 50px;
  align-items: center;
  margin-inline: auto;
  padding-left: 15px;
  border: 2px solid #e3e3e3;
  border-radius: 999px !important;
  background: #fff;
}
.sapa-category-search input[type="search"] {
  width: 100%;
  height: 46px;
  padding: 0 8px;
  border: 0;
  outline: 0;
  background: transparent;
  font-size: 15px;
}
.sapa-category-search button,
.sapa-category-search .sapa-camera {
  display: grid;
  width: 45px;
  min-width: 45px;
  height: 46px;
  min-height: 46px;
  place-items: center;
  padding: 0;
  border: 0;
  background: transparent;
  color: #000;
}
.sapa-category-search svg { width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 1.8; }
.sapa-category-search .sapa-camera { width: 38px; min-width: 38px; color: #777; cursor: help; }

/* Full-width shipping promise below the search row. */
.sapa-shipping-promo {
  display: flex; min-height: 86px; align-items: center; justify-content: space-between; gap: 24px;
  padding: 14px max(24px, calc((100% - var(--sapa-max)) / 2 + 24px));
  background: #710000; color: #fff; text-decoration: none; text-transform: uppercase;
}
.sapa-shipping-promo > span { display: grid; gap: 2px; }
.sapa-shipping-promo strong { font-size: clamp(18px, 2vw, 28px); letter-spacing: .025em; line-height: 1; }
.sapa-shipping-promo small { font-size: 12px; font-weight: 700; letter-spacing: .08em; }
.sapa-shipping-promo b { display: flex; align-items: center; gap: 12px; font-size: 14px; letter-spacing: .05em; white-space: nowrap; }
.sapa-shipping-promo b span { font-size: 28px; font-weight: 400; line-height: .6; }

/* Hero */
.sapa-hero { display: grid; grid-template-columns: 1fr; background: #e8e3dc; }
.sapa-hero__panel {
  position: relative;
  min-height: min(78vh, 760px);
  overflow: hidden;
  background: #d8d2ca center/cover no-repeat;
}
.sapa-hero__panel:nth-child(2) { background-color: #b8a58b; }
.sapa-hero__panel::after {
  position: absolute; inset: auto 0 0; height: 45%; content: "";
  background: linear-gradient(transparent, rgba(0,0,0,.58));
}
.sapa-hero__placeholder {
  position: absolute; inset: 0; display: grid; place-items: center;
  color: rgba(255,255,255,.45); font-size: clamp(44px, 8vw, 96px);
  font-weight: 900; letter-spacing: .08em; text-align: center;
}
.sapa-hero__content {
  position: absolute; z-index: 2; right: 22px; bottom: 24px; left: 22px;
  display: flex; align-items: end; justify-content: space-between; gap: 16px;
}
.sapa-hero__title { margin: 0; color: #fff; font-size: clamp(28px, 4vw, 58px); letter-spacing: .06em; text-transform: uppercase; }
.sapa-cta {
  display: inline-flex; min-height: 48px; align-items: center; justify-content: center;
  padding: 0 22px; border: 1px solid var(--sapa-black);
  background: var(--sapa-black); color: var(--sapa-white);
  font-size: 12px; font-weight: 800; letter-spacing: .1em;
  text-decoration: none; text-transform: uppercase;
  transition: background .2s ease, color .2s ease, border-color .2s ease;
}
.sapa-cta:hover { border-color: var(--sapa-sand); background: var(--sapa-sand); color: var(--sapa-black); }

/* Departments */
.sapa-section { padding: clamp(44px, 7vw, 92px) 12px; }
.sapa-section--flush { padding-inline: 0; }
.sapa-section__head { display: flex; align-items: end; justify-content: space-between; gap: 18px; margin: 0 auto 24px; padding-inline: 4px; }
.sapa-section__title { margin: 0; font-size: clamp(23px, 3vw, 38px); letter-spacing: .08em; text-transform: uppercase; }
.sapa-section__link { font-size: 11px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.sapa-category-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 2px; }
.sapa-category-card {
  position: relative; min-height: clamp(260px, 48vw, 620px); overflow: hidden;
  background: #d8d4cf center/cover no-repeat; color: #fff; text-decoration: none;
}
.sapa-category-card:nth-child(2n) { background-color: #b8aa98; }
.sapa-category-card::after {
  position: absolute; inset: 0; content: ""; background: linear-gradient(transparent 50%, rgba(0,0,0,.62));
}
.sapa-category-card__label {
  position: absolute; z-index: 2; right: 14px; bottom: 16px; left: 14px;
  display: flex; min-height: 48px; align-items: center; justify-content: center;
  background: var(--sapa-black); color: var(--sapa-white);
  font-size: 12px; font-weight: 900; letter-spacing: .11em; text-transform: uppercase;
  transition: background .2s ease, color .2s ease;
}
.sapa-category-card:hover .sapa-category-card__label { background: var(--sapa-sand); color: #000; }

/* WooCommerce product rail/cards */
.sapa-products { background: var(--sapa-paper); }
.sapa-products .products,
.woocommerce .products {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px 8px;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none;
}
.sapa-products .products::before,
.sapa-products .products::after,
.woocommerce .products::before,
.woocommerce .products::after {
  display: none !important;
  content: none !important;
}
.sapa-products .product,
.woocommerce ul.products li.product {
  position: relative;
  float: none !important;
  width: auto !important;
  margin: 0 !important;
  border-radius: 0 !important;
  background: var(--sapa-white);
}
.woocommerce-loop-product__link { display: block; text-decoration: none; }
.sapa-product-media { position: relative; overflow: hidden; aspect-ratio: 3/4; background: #f1f1f1; }
.sapa-card-slider {
  display: flex;
  width: 100%;
  height: 100%;
  overflow-x: auto;
  scroll-behavior: smooth;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
}
.sapa-card-slider::-webkit-scrollbar { display: none; }
.sapa-card-slide { flex: 0 0 100%; width: 100%; height: 100%; scroll-snap-align: start; scroll-snap-stop: always; }
.sapa-card-slide img { width: 100%; height: 100%; object-fit: cover; }
.sapa-card-dots {
  position: absolute; z-index: 4; right: 8px; bottom: 8px; left: 8px;
  display: flex; justify-content: center; gap: 5px; pointer-events: none;
}
.sapa-card-dots i { display: block; width: 6px; height: 6px; border: 1px solid #000; border-radius: 50%; background: rgba(255,255,255,.85); }
.sapa-card-dots i.is-active { background: #000; }
.sapa-product-media > img,
.woocommerce ul.products li.product .woocommerce-loop-product__link > img {
  width: 100%; height: 100%; margin: 0 !important; object-fit: cover;
  transition: opacity .4s ease, transform .6s ease;
}
.sapa-product-secondary {
  position: absolute; inset: 0; z-index: 2; opacity: 0; pointer-events: none;
}
.sapa-product-secondary img { width: 100%; height: 100%; object-fit: cover; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { margin: 0; padding: 12px 12px 4px !important; color: #111; font-size: 13px !important; font-weight: 600; }
.woocommerce ul.products li.product .price { display: block; margin: 0; padding: 0 12px 13px; color: var(--sapa-sand) !important; font-size: 14px !important; font-weight: 800 !important; }
.woocommerce ul.products li.product .button {
  display: flex; width: 100%; min-height: 46px; align-items: center; justify-content: center;
  margin: 0 !important; padding: 0 12px !important; border: 0;
  background: #000; color: #fff; font-size: 11px; text-decoration: none;
  transition: background .2s ease, color .2s ease, transform .25s ease;
}
.woocommerce ul.products li.product .button:hover { background: var(--sapa-sand); color: #000; }
.woocommerce span.onsale {
  top: 8px !important; right: auto !important; left: 8px !important;
  min-width: 0; min-height: 0; padding: 7px 9px; border-radius: 0;
  background: var(--sapa-sand); color: #000; line-height: 1; font-size: 10px; font-weight: 900;
}
@media (hover:hover) and (pointer:fine) {
  .sapa-product-media:hover .sapa-product-secondary { opacity: 1; }
  .sapa-product-media:hover .sapa-card-slide img { transform: scale(1.018); }
  .woocommerce ul.products li.product .button { transform: translateY(4px); }
  .woocommerce ul.products li.product:hover .button { transform: translateY(0); }
}

/* Footer */
.sapa-footer { padding: 54px 20px 26px; background: #000; color: #fff; }
.sapa-footer__grid { display: grid; grid-template-columns: 1fr; gap: 38px; }
.sapa-footer h2,
.sapa-footer h3 { margin: 0 0 15px; font-size: 13px; letter-spacing: .12em; text-transform: uppercase; }
.sapa-footer p { max-width: 48ch; margin: 0 0 16px; color: #cfcfcf; font-size: 13px; line-height: 1.7; }
.sapa-footer ul { margin: 0; padding: 0; list-style: none; }
.sapa-footer li + li { margin-top: 10px; }
.sapa-footer a { color: #fff; font-size: 13px; text-decoration: none; }
.sapa-footer a:hover { color: var(--sapa-sand); }
.sapa-newsletter { display: flex; max-width: 420px; }
.sapa-newsletter input { width: 100%; min-width: 0; height: 48px; padding: 0 13px; border: 1px solid #fff; background: transparent; color: #fff; }
.sapa-newsletter button { width: 108px; min-height: 48px; border: 1px solid #fff; background: #fff; color: #000; }
.sapa-footer__bottom { margin-top: 44px; padding-top: 22px; border-top: 1px solid #303030; color: #aaa; font-size: 11px; }

/* Master department architecture: Women, Plus Size, Men, Kids, Sport and Luxe. */
.sapa-department { width: 100%; overflow: clip; touch-action: pan-y; transition: opacity .12s ease, transform .12s ease; }
.sapa-department.is-swiping-next { opacity: .72; transform: translateX(-3%); }
.sapa-department.is-swiping-previous { opacity: .72; transform: translateX(3%); }
.sapa-clickable-surface { cursor: pointer; }
.sapa-clickable-surface:focus-visible { outline: 3px solid var(--sapa-sand); outline-offset: -3px; }
.sapa-dept-hero,
.sapa-editorial-card {
  position: relative;
  min-height: min(78vh, 880px);
  background: #b7ada1 center/cover no-repeat;
  color: #fff;
}
.sapa-dept-hero::after,
.sapa-editorial-card::after {
  position: absolute; inset: 0; content: "";
  background: linear-gradient(transparent 42%, rgba(0,0,0,.65));
}
.sapa-dept-hero__copy,
.sapa-editorial-card > div {
  position: absolute; z-index: 2; right: 20px; bottom: 30px; left: 20px;
  text-align: center; text-transform: uppercase;
}
.sapa-dept-hero__copy h1,
.sapa-editorial-card h2 { margin: 0 0 8px; font-size: clamp(32px, 6vw, 72px); letter-spacing: .035em; }
.sapa-dept-hero__copy p,
.sapa-editorial-card p { margin: 0 auto 22px; max-width: 44ch; color: #fff; font-size: 13px; font-weight: 700; letter-spacing: .13em; }
.sapa-dept-hero__copy a,
.sapa-editorial-card a { color: #fff; font-size: 12px; font-weight: 900; letter-spacing: .09em; text-underline-offset: 5px; }
.sapa-dept-hero__copy .sapa-eyebrow { margin-bottom: 10px; font-size: 11px; letter-spacing: .24em; }
.sapa-dept-hero__copy .sapa-architecture-cta {
  display: inline-flex; min-width: 150px; min-height: 48px; align-items: center; justify-content: center;
  padding: 0 22px; background: #000; text-decoration: none;
}
.sapa-department--editorial .sapa-dept-hero__copy,
.sapa-department--editorial .sapa-editorial-card > div {
  top: 0; bottom: 0; display: flex; align-items: center; justify-content: center; flex-direction: column;
}
.sapa-department--editorial .sapa-dept-hero__copy .sapa-architecture-cta,
.sapa-department--editorial .sapa-editorial-card > div > a {
  position: absolute; bottom: 24px; min-width: 0; min-height: 0; padding: 0; background: transparent;
  text-decoration: underline; text-transform: uppercase;
}
.sapa-department--editorial .sapa-brand-section,
.sapa-department--editorial .sapa-category-section { padding-top: 34px; padding-bottom: 34px; }
.sapa-dept-section { padding: clamp(38px, 6vw, 76px) 16px; }
.sapa-department .sapa-trend-report,
.sapa-department .sapa-brand-section,
.sapa-department .sapa-category-section,
.sapa-department .sapa-latest,
.sapa-department .sapa-recent,
.sapa-department .sapa-sport-products,
.sapa-department .sapa-sport-trending { width: 100%; max-width: none; }
.sapa-department .sapa-trend-report,
.sapa-department .sapa-brand-section,
.sapa-department .sapa-category-section,
.sapa-department .sapa-latest,
.sapa-department .sapa-recent { padding-right: 0; padding-left: 0; }
.sapa-department .sapa-trend-report > h2,
.sapa-department .sapa-brand-section > h2,
.sapa-department .sapa-category-section > h2,
.sapa-department .sapa-latest > h2,
.sapa-department .sapa-recent > h2,
.sapa-department .sapa-filter-tabs,
.sapa-department .sapa-recent-empty { padding-right: 16px; padding-left: 16px; }
.sapa-dept-section > h2 { margin: 0 0 24px; font-size: clamp(27px, 4vw, 48px); letter-spacing: -.02em; text-transform: uppercase; }
.sapa-dept-section > h2 + .sapa-section-intro { margin: -14px 0 24px; color: var(--sapa-muted); font-size: 14px; }
.sapa-trend-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 0; }
.sapa-trend-card {
  position: relative; min-height: clamp(260px, 63vw, 580px); background: #f0f0f0 center/cover no-repeat; color: #000; text-decoration: none;
}
.sapa-trend-card span {
  position: absolute; top: 100%; right: 0; left: 0; padding-top: 9px;
  overflow: hidden; font-size: 14px; font-weight: 700; text-align: center; text-overflow: ellipsis; white-space: nowrap;
}
.sapa-trend-grid { margin-bottom: 30px; }
.sapa-editorial-card { width: min(calc(100% - 24px), 1400px); min-height: min(84vh, 980px); margin: 8px auto 0; }
.sapa-editorial-card--alternate { margin-top: 18px; }
.sapa-architecture-card { margin-top: 14px; }
.sapa-brand-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0; }
.sapa-brand-card {
  position: relative; min-height: clamp(180px, 42vw, 440px); background: #e9e7e4 center/cover no-repeat; color: #fff; text-decoration: none;
}
.sapa-brand-card::after { position: absolute; inset: 55% 0 0; content: ""; background: linear-gradient(transparent, rgba(0,0,0,.45)); }
.sapa-brand-card span { position: absolute; z-index: 2; right: 8px; bottom: 10px; left: 8px; font-size: clamp(10px, 2vw, 17px); font-weight: 900; text-align: center; }
.sapa-category-mosaic { display: grid; grid-template-columns: repeat(4, 1fr); grid-auto-rows: minmax(145px, 25vw); gap: 0; }
.sapa-mosaic-card { position: relative; overflow: hidden; background: #e2e2e2 center/cover no-repeat; color: #fff; text-decoration: none; }
.sapa-mosaic-card::after { position: absolute; inset: 50% 0 0; content: ""; background: linear-gradient(transparent, rgba(0,0,0,.55)); }
.sapa-mosaic-card span { position: absolute; z-index: 2; right: 10px; bottom: 12px; left: 10px; font-size: clamp(12px, 2.3vw, 22px); font-weight: 800; text-shadow: 0 1px 2px rgba(0,0,0,.45); }
.sapa-mosaic-card--1 { grid-column: span 2; grid-row: span 2; }
.sapa-mosaic-card--2,
.sapa-mosaic-card--3 { grid-column: span 2; }
.sapa-sale-strip {
  display: flex; min-height: 220px; flex-direction: column; align-items: center; justify-content: center; gap: 20px;
  padding: 30px; background: #3e110d; color: #fff; text-align: center; text-decoration: none; text-transform: uppercase;
}
.sapa-sale-strip strong { font-size: clamp(36px, 7vw, 78px); letter-spacing: .03em; }
.sapa-sale-strip span { font-size: 13px; font-weight: 900; letter-spacing: .12em; text-decoration: underline; text-underline-offset: 6px; }
.sapa-latest { max-width: var(--sapa-max); }
.sapa-luxe-swipe {
  display: grid; grid-auto-columns: minmax(190px, 24%); grid-auto-flow: column; gap: 10px; overflow-x: auto;
  padding-bottom: 12px; scroll-snap-type: x mandatory; scrollbar-width: none; -webkit-overflow-scrolling: touch;
}
.sapa-luxe-swipe::-webkit-scrollbar { display: none; }
.sapa-luxe-swipe a {
  position: relative; min-height: clamp(280px, 40vw, 520px); background: #dedbd7 center/cover no-repeat;
  color: #fff; text-decoration: none; scroll-snap-align: start;
}
.sapa-luxe-swipe a::after { position: absolute; inset: 55% 0 0; content: ""; background: linear-gradient(transparent, rgba(0,0,0,.66)); }
.sapa-luxe-swipe span { position: absolute; z-index: 2; right: 12px; bottom: 16px; left: 12px; font-size: 15px; font-weight: 900; text-align: center; text-transform: uppercase; }
.sapa-catalog-tools { display: grid; grid-template-columns: 1fr 180px 140px; gap: 8px; margin: 0 0 14px; }
.sapa-catalog-tools label { position: relative; display: block; }
.sapa-catalog-tools label > span { position: absolute; z-index: 2; top: 7px; left: 13px; font-size: 9px; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.sapa-catalog-tools input,
.sapa-catalog-tools select { width: 100%; height: 58px; padding: 20px 13px 5px; border: 1px solid #000; background: #fff; color: #000; }
.sapa-catalog-tools button { min-height: 58px; border: 1px solid #000; background: #000; color: #fff; }
.sapa-filter-tabs { display: flex; gap: 10px; overflow-x: auto; margin: 0 0 24px; padding-bottom: 4px; scrollbar-width: none; }
.sapa-filter-tabs::-webkit-scrollbar { display: none; }
.sapa-filter-tabs button,
.sapa-filter-tabs a {
  display: inline-flex; min-width: max-content; min-height: 50px; align-items: center; justify-content: center; padding: 0 25px; border: 2px solid #e4e4e4; border-radius: 999px !important;
  background: #fff; color: #000; font-size: 13px; letter-spacing: 0; text-transform: none;
  text-decoration: none;
}
.sapa-recent > h2 a { color: inherit; text-decoration: none; }
.sapa-filter-tabs button.is-active,
.sapa-filter-tabs a.is-active { border-color: #000; background: #000; color: #fff; }
.sapa-filter-tabs[hidden] { display: none; }
.sapa-product-results.is-loading { min-height: 320px; opacity: .45; pointer-events: none; }
.sapa-load-more {
  display: flex; width: min(100%, 720px); min-height: 56px; align-items: center; justify-content: center;
  margin: 28px auto 0; border: 1px solid #000; background: #000; color: #fff;
  font-size: 12px; font-weight: 900; letter-spacing: .12em; text-decoration: none; text-transform: uppercase;
}
.sapa-empty-products { grid-column: 1 / -1; padding: 36px 0; text-align: center; }
.sapa-recent { padding-bottom: 80px; }
.woocommerce .sapa-recent-rail { display: grid !important; grid-template-columns: none !important; grid-auto-columns: calc((100% - 20px) / 3); grid-auto-flow: column; gap: 10px; overflow-x: auto; padding-bottom: 12px !important; scroll-snap-type: x mandatory; scrollbar-width: none; }
.woocommerce .sapa-recent-rail::-webkit-scrollbar { display: none; }
.sapa-recent-rail > .product { scroll-snap-align: start; list-style: none; }
.sapa-recent-empty { padding: 30px; background: var(--sapa-paper); text-align: center; }

/* Sport and Kids campaign departments */
.sapa-section-heading { display: flex; align-items: end; justify-content: space-between; gap: 20px; margin-bottom: 24px; }
.sapa-section-heading h2 { margin: 0; font-size: clamp(27px, 4vw, 48px); line-height: 1; text-transform: uppercase; }
.sapa-section-heading a { flex: 0 0 auto; font-size: 12px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.sapa-sport-products { background: #000; color: #fff; }
.sapa-family-products { background: #fff; color: #111; }
.sapa-family-products.sapa-sport-products { background: #000; color: #fff; }
.sapa-sport-product-rail { overflow: hidden; }
.sapa-sport-product-rail .products {
  display: flex !important; gap: 10px; overflow-x: auto; padding-bottom: 12px !important;
  scroll-snap-type: x mandatory; scrollbar-width: none; -webkit-overflow-scrolling: touch;
}
.sapa-sport-product-rail .products::-webkit-scrollbar { display: none; }
.sapa-sport-product-rail .products > .product { flex: 0 0 min(31%, 340px); scroll-snap-align: start; }
.sapa-new-arrivals-strip { background: #fff; color: #111; }
.sapa-new-arrivals-strip .sapa-section-heading h2 { max-width: 18ch; }
.sapa-new-arrivals-strip .sapa-sport-product-rail .products > .product { flex-basis: calc((100% - 20px) / 3); }
.sapa-sport-campaign { width: 100%; min-height: min(90vh, 980px); margin: 0; }
.sapa-sport-trending { background: #000; color: #fff; }
.sapa-sport-trend-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; }
.sapa-sport-trend-grid a {
  position: relative; min-height: clamp(360px, 55vw, 760px); background: #202020 center/cover no-repeat;
  color: #fff; text-decoration: none;
}
.sapa-sport-trend-grid a::after { position: absolute; inset: 56% 0 0; content: ""; background: linear-gradient(transparent, rgba(0,0,0,.72)); }
.sapa-sport-trend-grid span { position: absolute; z-index: 2; right: 18px; bottom: 20px; left: 18px; font-size: clamp(18px, 3vw, 38px); font-weight: 900; text-align: center; text-transform: uppercase; }
.sapa-department--kids .sapa-dept-hero,
.sapa-kids-campaign { min-height: min(88vh, 980px); }
.sapa-kids-campaign { width: 100%; margin: 0; background-color: #f3ede4; }
.sapa-kids-campaign > div { bottom: 34px; }
.sapa-kids-campaign > div > a { display: inline-flex; min-height: 46px; align-items: center; padding: 0 28px; border: 1px solid currentColor; text-decoration: none; }

body.sapa-sport-landing,
body.sapa-sport-landing .site-main,
body.sapa-sport-landing .sapa-department { background: #000; color: #fff; }
body.sapa-sport-landing .sapa-header-wrap,
body.sapa-sport-landing .sapa-header,
body.sapa-sport-landing .sapa-departments,
body.sapa-sport-landing .sapa-category-search { border-color: #333; background: #000; color: #fff; }
body.sapa-sport-landing .sapa-wordmark,
body.sapa-sport-landing .sapa-icon-button,
body.sapa-sport-landing .sapa-departments a { color: #fff; }
body.sapa-sport-landing .custom-logo { filter: grayscale(1) brightness(0) invert(1); }
body.sapa-sport-landing .sapa-for-you { border-color: #555; background: #fff; color: #000; }
body.sapa-sport-landing .sapa-category-search form { border-color: #444; background: #111; }
body.sapa-sport-landing .sapa-category-search input[type="search"] { color: #fff; }
body.sapa-sport-landing .sapa-category-search input[type="search"]::placeholder { color: #aaa; }
body.sapa-sport-landing .sapa-category-search svg { stroke: #fff; }
body.sapa-sport-landing .sapa-shipping-promo { border-color: #333; }
body.sapa-sport-landing .sapa-footer { border-top: 1px solid #333; }
body.sapa-sport-landing .sapa-header { background: #fff; color: #000; }
body.sapa-sport-landing .sapa-header .sapa-wordmark,
body.sapa-sport-landing .sapa-header .sapa-icon-button { color: #000; }

/* Compact collection directory */
.sapa-collection-header { position: sticky; top: 0; z-index: 55; width: 100%; padding: 0; border-bottom: 1px solid var(--sapa-line); background: rgba(255,255,255,.98); }
.sapa-collection-header.site-shell { max-width: none; }
.sapa-brand-category-strip { display: flex; width: 100%; gap: 10px; overflow-x: auto; padding: 10px 18px 12px; border-top: 1px solid var(--sapa-line); background: #fff; scrollbar-width: none; }
.sapa-brand-category-strip::-webkit-scrollbar { display: none; }
.sapa-brand-category-strip a { flex: 0 0 auto; min-width: 112px; padding: 12px 14px; border: 1px solid #dcdcdc; border-radius: 2px; background: #fff; color: #111; font-size: 12px; font-weight: 800; letter-spacing: .02em; text-align: center; text-transform: uppercase; }
.sapa-brand-category-strip a.is-active { border-color: #000; background: #000; color: #fff; }
.sapa-collection-heading { display: grid; grid-template-columns: 48px minmax(0, 1fr) auto auto; min-height: 92px; align-items: center; gap: 12px; padding: 12px 18px 8px; }
.sapa-collection-back { display: grid; width: 42px; height: 52px; place-items: center; color: #000; text-decoration: none; }
.sapa-collection-back svg { width: 32px; height: 42px; fill: none; stroke: currentColor; stroke-width: 1.7; }
.sapa-collection-heading h1 { min-width: 0; margin: 0; overflow: hidden; font-size: clamp(26px, 4.2vw, 48px); font-weight: 900; letter-spacing: -.035em; line-height: .94; text-overflow: ellipsis; text-transform: uppercase; }
.sapa-collection-heading > p { margin: 0; white-space: nowrap; color: #111; font-size: clamp(14px, 2vw, 21px); font-weight: 500; }
.sapa-collection-actions { display: flex; gap: 6px; }
.sapa-collection-actions button,
.sapa-collection-actions a { position: relative; display: grid; width: 48px; height: 48px; min-height: 48px; place-items: center; padding: 0; border: 0; background: transparent; color: #000; text-decoration: none; }
.sapa-collection-actions svg { width: 34px; height: 34px; fill: none; stroke: currentColor; stroke-width: 1.55; }
.sapa-collection-actions a span { position: absolute; top: 0; right: -1px; display: grid; min-width: 18px; height: 18px; place-items: center; border-radius: 50%; background: #000; color: #fff; font-size: 9px; }
.sapa-collection-tools { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; min-height: 60px; align-items: center; border-top: 1px solid var(--sapa-line); }
.sapa-collection-tools label { position: relative; display: flex; min-width: 0; height: 60px; align-items: center; }
.sapa-collection-search { padding-left: 18px; }
.sapa-collection-search svg { flex: 0 0 27px; width: 27px; height: 27px; fill: none; stroke: #000; stroke-width: 1.7; }
.sapa-collection-tools input,
.sapa-collection-tools select { min-width: 0; height: 58px; border: 0; background: transparent; color: #000; }
.sapa-collection-tools input { width: 100%; padding: 0 12px; font-size: clamp(15px, 2.2vw, 22px); text-overflow: ellipsis; }
.sapa-collection-tools input::placeholder { color: #888; opacity: 1; }
.sapa-collection-select { border-left: 1px solid var(--sapa-line); }
.sapa-collection-select select { width: auto; max-width: 130px; padding: 0 34px 0 18px; font-size: clamp(15px, 2.2vw, 22px); appearance: auto; }
.sapa-collection-select > span:not([aria-hidden]) { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.sapa-collection-filter { padding-left: 12px; }
.sapa-collection-filter > span { position: relative; display: block; flex: 0 0 27px; width: 27px; height: 26px; }
.sapa-collection-filter > span::before,
.sapa-collection-filter > span::after { content: ""; position: absolute; left: 1px; width: 25px; height: 1.5px; background: #000; }
.sapa-collection-filter > span::before { top: 8px; }
.sapa-collection-filter > span::after { bottom: 7px; }
.sapa-collection-filter > span i { position: absolute; z-index: 1; width: 3px; height: 8px; background: #fff; border-left: 1.5px solid #000; }
.sapa-collection-filter > span i:first-child { top: 4px; left: 9px; }
.sapa-collection-filter > span i:last-child { right: 7px; bottom: 3px; }
.sapa-collection-tools > button { display: none; }
.sapa-desktop-catalog-bar { display: none; }
.sapa-collection-layout { width: 100%; }
.sapa-catalog-sidebar { display: none; }
.sapa-collection-products .woocommerce-products-header,
.sapa-collection-products .woocommerce-products-header__title,
.sapa-collection-products .page-title,
.sapa-collection-products .woocommerce-result-count,
.sapa-collection-products .woocommerce-ordering { display: none; }
.sapa-shop-menu [data-sapa-shop-close],
.sapa-shop-menu .sapa-shop-close,
.sapa-shop-menu .sapa-shop-menu__close,
.mobile-nav .close-side-widget,
.mobile-nav .wd-close-side { display: none !important; }
.sapa-product-directory .site-main { margin-top: 0; }
.sapa-collection-products { min-width: 0; }
.sapa-collection-products .products { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: 0; }
.sapa-collection-products li.product { container-type: inline-size; }
.sapa-collection-products .woocommerce-loop-product__title {
  overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
.sapa-collection-products li.product .price { color: #a51f2b !important; }
.sapa-collection-products li.product .button {
  position: absolute; z-index: 6; top: calc(133.333cqw - 51px); right: 8px;
  width: 43px; min-height: 43px; padding: 0 !important; border: 1px solid #eee; border-radius: 50% !important;
  overflow: hidden; background: #fff; color: transparent; font-size: 0; box-shadow: 0 1px 7px rgba(0,0,0,.08); transform: none;
}
.sapa-collection-products li.product .button::before { content: ""; width: 23px; height: 23px; background: center/contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 8h14l-1 13H6L5 8Z'/%3E%3Cpath d='M9 9V6a3 3 0 0 1 6 0v3M12 12v6M9 15h6'/%3E%3C/svg%3E"); }
.sapa-collection-products li.product .button:hover { border-color: #000; background: #fff; color: transparent; transform: none; }
.sapa-product-directory .woocommerce-pagination { display: none; }
.sapa-product-directory .woocommerce-info,
.sapa-product-directory .woocommerce-no-products-found { margin: 0; border: 0; background: #f7f7f7; color: #333; }
.sapa-product-directory .woocommerce-info { padding: 28px 18px 28px 52px; font-size: 15px; }
.sapa-archive-load-more {
  display: flex; width: min(calc(100% - 32px), 720px); min-height: 58px; align-items: center; justify-content: center;
  margin: 34px auto 64px; padding: 0 24px; border: 1px solid #000; background: #000; color: #fff;
  font-size: 12px; font-weight: 900; letter-spacing: .14em; text-transform: uppercase;
}
.sapa-archive-load-more:hover { border-color: var(--sapa-sand); background: var(--sapa-sand); color: #000; }
.sapa-archive-load-more.is-loading { opacity: .55; cursor: wait; }

.sapa-utility-page { width: min(100%, var(--sapa-max)); margin: 0 auto; }
.sapa-utility-page > article > h1.sapa-utility-title { margin: 0; padding: 34px 16px; border-bottom: 1px solid var(--sapa-line); font-size: clamp(36px, 5vw, 58px); text-align: center; }
.sapa-utility-title--caps { font-weight: 900; text-transform: uppercase; }
.sapa-wishlist-intro { padding: 34px 16px 18px; }
.sapa-wishlist-intro h2 { margin: 0 0 12px; font-size: clamp(24px, 4vw, 38px); }
.sapa-wishlist-intro p { max-width: 620px; margin: 0; font-size: 18px; line-height: 1.5; }
.sapa-utility-rail { padding-top: 52px; }
.sapa-utility-rail > h2 { font-size: clamp(30px, 4vw, 48px); text-transform: none; }
.sapa-utility-rail > h2 a { color: inherit; text-decoration: none; }

body.woocommerce-cart .sapa-header,
body.woocommerce-cart .sapa-departments,
body.woocommerce-cart .sapa-category-search { display: none; }
body.sapa-wishlist-page .sapa-header-wrap,
body.sapa-account-page .sapa-header-wrap { display: none; }
body.woocommerce-cart .woocommerce-cart-form,
body.woocommerce-cart .cart_totals { padding-inline: 16px; }
body.woocommerce-cart .wc-empty-cart-message { margin: 0 16px; padding: 34px; background: var(--sapa-paper); font-size: 24px; font-weight: 800; }
body.woocommerce-cart .wc-empty-cart-message h2 { margin: 0; font-size: clamp(24px, 4vw, 36px); }
body.woocommerce-cart .return-to-shop { margin: 0 16px 24px; padding: 0 34px 34px; background: var(--sapa-paper); }
body.woocommerce-cart .return-to-shop .button { display: flex; width: 100%; min-height: 58px; align-items: center; justify-content: center; border-radius: 999px !important; background: #000; color: #fff; }

body.sapa-wishlist-page table.wishlist_table thead { display: none; }
body.sapa-wishlist-page table.wishlist_table tbody { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; padding: 0 16px; }
body.sapa-wishlist-page table.wishlist_table tr { position: relative; display: grid; padding: 0 0 14px; border: 1px solid #e5e5e5; background: #fff; }
body.sapa-wishlist-page table.wishlist_table td { display: block; width: 100% !important; padding: 7px 12px; border: 0; text-align: left; }
body.sapa-wishlist-page table.wishlist_table td.product-thumbnail { padding: 0; }
body.sapa-wishlist-page table.wishlist_table td.product-thumbnail a,
body.sapa-wishlist-page table.wishlist_table td.product-thumbnail img { width: 100% !important; max-width: none; aspect-ratio: 3/4; object-fit: cover; }
body.sapa-wishlist-page table.wishlist_table td.product-remove { position: absolute; z-index: 2; top: 8px; right: 8px; width: 34px !important; height: 34px; padding: 0; background: #fff; }
body.sapa-wishlist-page table.wishlist_table td.product-add-to-cart a { display: flex !important; width: 100%; justify-content: center; background: #000; color: #fff; }

.sapa-account-overview { padding: 40px 16px 0; }
.sapa-account-welcome { display: flex; align-items: start; justify-content: space-between; gap: 20px; margin-bottom: 42px; }
.sapa-account-welcome h1 { margin: 0 0 5px; font-size: clamp(34px, 5vw, 56px); text-transform: uppercase; }
.sapa-account-welcome p { margin: 0; color: #777; font-size: 18px; }
.sapa-account-bag { display: grid; width: 62px; height: 62px; place-items: center; border-radius: 50%; box-shadow: 0 12px 30px rgba(0,0,0,.08); font-size: 28px; text-decoration: none; }
.sapa-account-section-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 34px 0 14px; }
.sapa-account-section-head h2 { margin: 0; font-size: 18px; letter-spacing: .02em; text-transform: uppercase; }
.sapa-account-section-head a { text-decoration: none; }
.sapa-order-card { display: grid; gap: 9px; padding: 24px; border: 1px solid #e2e2e2; border-radius: 18px; color: #111; text-decoration: none; box-shadow: 0 8px 24px rgba(0,0,0,.035); }
.sapa-order-card > span { width: max-content; padding: 6px 11px; border-radius: 999px; background: #e9f5e7; color: #17681f; font-size: 11px; font-weight: 900; text-transform: uppercase; }
.sapa-order-card strong { font-size: 22px; }
.sapa-order-card small { color: #777; font-size: 14px; }
.sapa-order-card b { width: max-content; margin-top: 5px; padding: 10px 18px; border: 1px solid #ddd; border-radius: 999px; }
.sapa-account-empty { padding: 24px; border-radius: 18px; background: var(--sapa-paper); color: #777; }
.sapa-wishlist-cards { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.sapa-wishlist-cards > a { display: flex; min-height: 240px; flex-direction: column; justify-content: end; gap: 7px; padding: 18px; border: 1px solid #e2e2e2; border-radius: 16px; color: #111; text-decoration: none; }
.sapa-wishlist-cards > a:first-child span { min-height: 135px; border-radius: 8px; background: linear-gradient(90deg,#eee 0 76%,transparent 76% 80%,#eee 80%); }
.sapa-wishlist-cards > a:nth-child(2) { align-items: center; justify-content: center; }
.sapa-wishlist-cards b { font-size: 58px; font-weight: 300; }
.sapa-wishlist-cards strong { font-size: 20px; }
.sapa-wishlist-cards small { color: #888; }
.sapa-wishlist-page-cards { margin: 0 16px 12px; }
.sapa-wishlist-page-cards > a:first-child { position: relative; }
.sapa-wishlist-page-cards > a:first-child i { position: absolute; right: 14px; bottom: 19px; font-size: 28px; font-style: normal; line-height: 1; }
.sapa-account-links { margin-top: 42px; }
.sapa-account-links h2 { margin: 0 0 14px; font-size: 18px; text-transform: uppercase; }
.sapa-account-links > div { overflow: hidden; border: 1px solid #e2e2e2; border-radius: 18px; }
.sapa-account-links a { display: flex; min-height: 66px; align-items: center; justify-content: space-between; padding: 0 20px; border-bottom: 1px solid #e8e8e8; color: #111; font-size: 18px; text-decoration: none; }
.sapa-account-links a:last-child { border-bottom: 0; }
.sapa-account-links a b { color: #bbb; font-size: 28px; font-weight: 400; }
body.sapa-account-dashboard .sapa-utility-page article > .woocommerce { display: none; }
body.sapa-account-dashboard .sapa-utility-page article > div > .woocommerce { display: none; }
.sapa-account-end { padding: 18px 16px 40px; }
.sapa-account-end a { display: inline-flex; min-height: 44px; align-items: center; padding: 0 18px; border: 1px solid #ddd; border-radius: 999px; text-decoration: none; }
.sapa-account-end p { margin: 28px 0 0; color: #888; font-size: 12px; }

/* Me dashboard: compact, editable sections backed by customer orders and products. */
.sapa-account-overview { padding-top: 22px; }
.sapa-account-welcome { align-items: center; margin-bottom: 18px; }
.sapa-account-welcome h1 { font-size: clamp(26px,4vw,38px); text-transform: none; }
.sapa-account-welcome p { font-size: 13px; overflow-wrap: anywhere; }
.sapa-account-bag { width: 44px; height: 44px; flex: 0 0 44px; font-size: 22px; }
.sapa-account-section-head { margin: 24px 0 10px; }
.sapa-account-section-head h2,.sapa-account-links h2 { font-size: 15px; }
.sapa-account-section-head a { font-size: 13px; }
.sapa-account-empty { padding: 16px; border-radius: 9px; }
.sapa-order-card { padding: 16px; border-radius: 10px; }
.sapa-order-card strong { font-size: 17px; }
.sapa-wishlist-cards > a { min-height: 140px; border-radius: 10px; padding: 12px; }
.sapa-account-overview .sapa-wishlist-cards > a:first-child span { min-height: 55px; }
.sapa-account-overview .sapa-wishlist-cards strong { font-size: 15px; }
.sapa-account-overview .sapa-wishlist-cards b { font-size: 38px; }
.sapa-account-overview .sapa-utility-rail { padding: 18px 0 0; }
.sapa-account-overview .sapa-utility-rail h2 { margin: 0 0 12px; font-size: 20px; }
.sapa-account-links { margin-top: 27px; }
.sapa-account-links > div { border-radius: 10px; }
.sapa-account-links a { min-height: 51px; padding: 0 15px; font-size: 14px; }
.sapa-account-links a b { font-size: 22px; }
.sapa-account-preferences { max-width: 650px; margin: 0 auto; padding: 25px 16px 50px; }
.sapa-account-return { color: #111; text-decoration: none; }
.sapa-account-preferences h1 { margin: 20px 0; font-size: 28px; }
.sapa-preference-toggle { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 18px 0; border-top: 1px solid #ddd; border-bottom: 1px solid #ddd; }
.sapa-preference-toggle span { display: grid; gap: 6px; }
.sapa-preference-toggle small { color: #666; }
.sapa-preference-toggle input { width: 22px; height: 22px; flex: 0 0 22px; }
.sapa-account-preferences button { margin-top: 20px; padding: 12px 25px; border: 0; border-radius: 30px; background: #111; color: #fff; }
.sapa-pdp-discovery > .sapa-pdp-reviews { padding: 24px max(16px,calc((100vw - var(--sapa-max))/2)); border-bottom: 6px solid #f4f4f4; }
@media (max-width:767px) { .sapa-pdp-discovery > .sapa-pdp-reviews { padding: 19px 15px 22px; } }

/* Mobile bottom dock */
.sapa-mobile-dock { display: none; }
.sapa-shop-menu { display: none; }

/* Menu drawer and search */
.sapa-drawer,
.sapa-search-panel { position: fixed; z-index: 100; inset: 0; visibility: hidden; opacity: 0; transition: opacity .2s ease, visibility .2s ease; }
.sapa-drawer.is-open,
.sapa-search-panel.is-open { visibility: visible; opacity: 1; }
.sapa-overlay { position: absolute; inset: 0; background: rgba(0,0,0,.64); }
.sapa-drawer__panel { position: relative; width: min(88vw, 390px); height: 100%; padding: 28px; background: #fff; transform: translateX(-100%); transition: transform .25s ease; }
.sapa-drawer.is-open .sapa-drawer__panel { transform: translateX(0); }
.sapa-drawer__close { position: absolute; top: 12px; right: 12px; border: 0; background: transparent; font-size: 26px; }
.sapa-drawer ul { margin: 42px 0 0; padding: 0; list-style: none; }
.sapa-drawer li { border-bottom: 1px solid var(--sapa-line); }
.sapa-drawer a { display: block; padding: 15px 0; font-size: 14px; font-weight: 800; letter-spacing: .08em; text-decoration: none; text-transform: uppercase; }
.sapa-search-panel { display: grid; place-items: start center; padding-top: 120px; }
.sapa-search-panel__box { position: relative; z-index: 2; width: min(calc(100% - 28px), 760px); padding: 26px; background: #fff; }
.sapa-search-panel form { display: flex; }
.sapa-search-panel input[type="search"] { width: 100%; height: 52px; padding: 0 14px; border: 1px solid #000; }
.sapa-search-panel button { border: 1px solid #000; background: #000; color: #fff; }

/* Single product conversion rules */
.single-product div.product { display: grid; gap: 28px; }
.single-product .sapa-collection-header,
.single-product .sapa-collection-layout,
.single-product .sapa-catalog-sidebar,
.single-product .sapa-desktop-catalog-bar { display: none !important; }
.single-product .woocommerce-product-gallery__wrapper { display: block; }
.single-product .woocommerce-product-gallery img { width: 100%; }
.single-product .summary { padding: 0 16px 30px; }
.single-product .summary .price { color: var(--sapa-sand); font-weight: 900; }
.single-product .single_add_to_cart_button { width: 100%; border: 0; background: #000 !important; color: #fff !important; }
.single-product table.variations select { width: 100%; min-height: 48px; }
.sapa-pdp-mobile-nav, .sapa-purchase-dock { display: none; }
.single-product .woocommerce-product-gallery { position: relative; }
.sapa-gallery-actions { position: absolute; z-index: 12; right: 14px; bottom: 16px; display: grid; gap: 10px; }
.sapa-gallery-actions > button,
.sapa-gallery-heart > a,
.sapa-gallery-heart .yith-wcwl-add-button > a,
.sapa-gallery-heart .yith-wcwl-wishlistaddedbrowse > a,
.sapa-gallery-heart .yith-wcwl-wishlistexistsbrowse > a { display: grid; width: 48px; height: 48px; place-items: center; overflow: hidden; border: 1px solid #ddd; border-radius: 50%; background: #fff; color: #000; font-size: 27px; line-height: 1; text-decoration: none; box-shadow: 0 4px 18px rgba(0,0,0,.08); }
.sapa-gallery-heart .yith-wcwl-add-to-wishlist { margin: 0; }
.sapa-gallery-heart img, .sapa-gallery-heart span { display: none !important; }
.sapa-gallery-actions button svg { width: 24px; fill: none; stroke: currentColor; stroke-width: 1.8; }
.sapa-gallery-actions button.is-copied::after { content: "✓"; position: absolute; display: grid; width: 48px; height: 48px; place-items: center; border-radius: 50%; background: #000; color: #fff; }
.sapa-pdp-service, .sapa-pdp-discovery { grid-column: 1 / -1; }
.sapa-pdp-service { padding: 34px max(16px,calc((100vw - var(--sapa-max))/2)); border-top: 8px solid #f4f4f4; border-bottom: 8px solid #f4f4f4; }
.sapa-pdp-service h2 { margin: 0 0 22px; font-size: clamp(22px,3vw,34px); }
.sapa-delivery-row { display: flex; gap: 14px; align-items: flex-start; margin-bottom: 22px; }
.sapa-delivery-row > b { font-size: 24px; }
.sapa-delivery-row span { display: grid; gap: 4px; }
.sapa-delivery-row small { color: #666; line-height: 1.45; }
.sapa-returns-link { display: inline-block; margin-bottom: 24px; color: #111; font-weight: 800; text-underline-offset: 5px; }
.sapa-product-details { border: 1px solid #ddd; }
.sapa-product-details summary { display: flex; min-height: 68px; align-items: center; justify-content: space-between; padding: 0 20px; cursor: pointer; font-size: 18px; font-weight: 800; list-style: none; }
.sapa-product-details summary::-webkit-details-marker { display: none; }
.sapa-product-details summary span { font-size: 28px; transition: transform .2s; }
.sapa-product-details[open] summary span { transform: rotate(90deg); }
.sapa-product-details > div { padding: 0 20px 20px; }
.sapa-pdp-discovery { display: grid; gap: 0; }
.sapa-pdp-reviews { grid-column: 1/-1; padding: 34px max(16px,calc((100vw - var(--sapa-max))/2)); border-bottom: 8px solid #f4f4f4; }
.sapa-pdp-discovery > section { padding: 34px max(16px,calc((100vw - var(--sapa-max))/2)); border-bottom: 8px solid #f4f4f4; }
.sapa-pdp-discovery h2 { margin: 0 0 22px; font-size: clamp(23px,3vw,36px); letter-spacing: -.02em; }
.sapa-pdp-discovery .products { margin: 0; }
.sapa-style-rail { grid-template-columns: repeat(3,minmax(0,1fr)) !important; }
.sapa-similar-thumbs { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 8px; }
.sapa-similar-thumbs img { width: 100%; aspect-ratio: 3/4; object-fit: cover; }
.sapa-similar > div:last-child { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-top: 18px; }
.sapa-similar h2 { margin: 0; }
.sapa-similar .button { min-width: 150px; background: #000; color: #fff; text-align: center; }
.sapa-recommend-grid { grid-template-columns: repeat(4,minmax(0,1fr)) !important; }
.sapa-pdp-back { display: block; width: min(calc(100% - 32px), var(--sapa-max)); margin: 18px auto; font-size: 12px; font-weight: 800; letter-spacing: .06em; text-decoration: none; text-transform: uppercase; }
.sapa-pdp-brand { margin: 0 0 7px; color: var(--sapa-muted); font-size: 11px; font-weight: 900; letter-spacing: .15em; text-transform: uppercase; }
.sapa-size-guide-button { min-height: 34px; margin: 0 0 14px; padding: 0; border: 0; border-bottom: 1px solid #000; background: transparent; font-size: 11px; }
.sapa-variation-buttons { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 8px; }
.sapa-variation-button { min-width: 48px; min-height: 44px; padding: 0 12px; border: 1px solid #bdbdbd; background: #fff; color: #000; font-size: 11px; }
.sapa-variation-button.is-active { border-color: #000; background: #000; color: #fff; }
.sapa-variation-button:disabled { opacity: .35; cursor: not-allowed; }
.sapa-color-dot { display: inline-block; width: 15px; height: 15px; margin-right: 7px; border: 1px solid #aaa; border-radius: 50%; vertical-align: -3px; }
.sapa-enhanced-select { position: absolute !important; width: 1px !important; height: 1px !important; margin: -1px !important; overflow: hidden !important; clip: rect(0,0,0,0) !important; }
.sapa-size-modal { position: fixed; z-index: 10000; inset: 0; display: grid; visibility: hidden; place-items: end center; opacity: 0; transition: opacity .2s, visibility .2s; }
.sapa-size-modal.is-open { visibility: visible; opacity: 1; }
.sapa-size-modal__overlay { position: absolute; inset: 0; background: rgba(0,0,0,.66); }
.sapa-size-modal__panel { position: relative; z-index: 2; width: min(100%, 880px); max-height: 88vh; overflow: auto; padding: 28px 20px 34px; background: #fff; }
.sapa-size-modal__panel h2 { margin: 0 42px 8px 0; font-size: 24px; text-transform: uppercase; }
.sapa-size-modal__panel h3 { margin: 28px 0 10px; font-size: 14px; text-transform: uppercase; }
.sapa-size-modal__panel > p { color: var(--sapa-muted); font-size: 12px; }
.sapa-size-modal__close { position: absolute; top: 8px; right: 12px; min-height: 40px; border: 0; background: transparent; font-size: 28px; }
.sapa-size-table-wrap { overflow-x: auto; }
.sapa-size-modal table { width: 100%; min-width: 590px; border-collapse: collapse; font-size: 12px; }
.sapa-size-modal th, .sapa-size-modal td { padding: 11px 9px; border: 1px solid #ddd; text-align: left; }
.sapa-size-modal th { background: #000; color: #fff; text-transform: uppercase; }

/* One-page checkout: 60/40 desktop, clean stack on mobile. */
.woocommerce-checkout .site-main,
.woocommerce-checkout .content-shell { width: min(calc(100% - 24px), 1200px); max-width: 1200px; margin-inline: auto; }
.woocommerce-checkout form.checkout { padding: 20px 0; }
.woocommerce-checkout input[type="text"],
.woocommerce-checkout input[type="email"],
.woocommerce-checkout input[type="tel"],
.woocommerce-checkout input[type="password"],
.woocommerce-checkout select,
.woocommerce-checkout textarea { min-height: 48px; padding: 12px !important; border: 1px solid #000 !important; border-radius: 0 !important; background: #fff; font-size: 14px; }
.woocommerce-checkout #place_order { width: 100%; min-height: 58px; padding: 16px !important; border: 0; background: #000 !important; color: #fff !important; font-size: 14px !important; }
.woocommerce-checkout #place_order:hover { background: var(--sapa-sand) !important; color: #000 !important; }

@media (min-width: 768px) {
  .sapa-hero { grid-template-columns: repeat(2, 1fr); }
  .sapa-category-grid { grid-template-columns: repeat(3, 1fr); }
  .sapa-products .products,
  .woocommerce .products { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 30px 14px; }
  .sapa-footer__grid { grid-template-columns: 1.4fr .8fr 1.2fr; }
  .single-product div.product { width: min(100%, var(--sapa-max)); grid-template-columns: minmax(0, 64%) minmax(340px, 36%); align-items: start; gap: 0; margin-inline: auto; padding: 20px 24px 0; }
  .single-product .woocommerce-product-gallery { position: relative; min-width: 0; padding-left: 94px; }
  .single-product .woocommerce-product-gallery .flex-control-thumbs { position: absolute; top: 0; left: 0; display: grid; width: 76px; gap: 9px; margin: 0 !important; padding: 0; list-style: none; }
  .single-product .woocommerce-product-gallery .flex-control-thumbs li { float: none !important; width: 76px !important; margin: 0 !important; border: 1px solid transparent; cursor: pointer; }
  .single-product .woocommerce-product-gallery .flex-control-thumbs li:has(img.flex-active) { border-color: #000; }
  .single-product .woocommerce-product-gallery .flex-control-thumbs img { width: 100%; aspect-ratio: 3/4; object-fit: cover; }
  .single-product .woocommerce-product-gallery .flex-viewport,
  .single-product .woocommerce-product-gallery__image { background: #f4f4f4; }
  .single-product .woocommerce-product-gallery__image img { width: 100%; aspect-ratio: 3/4; object-fit: contain; }
  .single-product div.product > .summary { position: sticky; top: 132px; float: none !important; width: auto !important; min-width: 0; padding: 8px 28px 36px; }
  .single-product .summary .product_title { margin-top: 0; font-size: clamp(18px,1.45vw,24px); line-height: 1.2; word-break: normal; overflow-wrap: normal; }
  .single-product .summary .price { margin: 12px 0 18px; color: #a51f2b; font-size: clamp(20px,1.8vw,28px); }
  .single-product .single_add_to_cart_button { min-height: 54px; border-radius: 999px !important; }
  .sapa-size-modal { place-items: center; }
  .sapa-dept-hero { min-height: min(80vh, 900px); }
  .sapa-trend-grid { grid-template-columns: repeat(4, 1fr); }
  .sapa-brand-grid { grid-template-columns: repeat(6, 1fr); }
  .sapa-category-mosaic { grid-auto-rows: minmax(210px, 20vw); }
	.sapa-product-results .products { grid-template-columns: repeat(4, minmax(0, 1fr)) !important; }
	.sapa-product-directory .sapa-header-wrap { display: block; }
	.sapa-product-directory .sapa-collection-header { position: relative; top: auto; z-index: 25; }
	.sapa-product-directory .sapa-collection-heading { width: calc(100% - 220px); margin-left: 220px; min-height: 88px; }
	.sapa-product-directory .sapa-collection-tools { display: none; }
	.sapa-desktop-catalog-bar { display: flex; min-height: 54px; align-items: center; justify-content: space-between; gap: 18px; margin-left: 220px; padding: 0 22px; border-top: 1px solid var(--sapa-line); }
	.sapa-desktop-catalog-bar > p { margin: 0; color: #555; font-size: 12px; }
	.sapa-desktop-catalog-actions { display: flex; align-items: center; gap: 9px; font-size: 11px; text-transform: uppercase; }
	.sapa-desktop-catalog-actions > span { margin-left: 10px; color: #777; }
	.sapa-desktop-catalog-actions a { padding: 6px 3px; text-decoration: none; }
	.sapa-desktop-catalog-actions a.is-active { border-bottom: 2px solid #000; font-weight: 800; }
	.sapa-grid-choice { display: grid; width: 27px; min-height: 27px !important; place-items: center; padding: 0; border: 1px solid #ddd; background: #fff; color: #777; font-size: 10px; }
	.sapa-grid-choice.is-active { border-color: #000; background: #000; color: #fff; }
	.sapa-collection-layout { display: grid; grid-template-columns: 220px minmax(0,1fr); align-items: start; }
	.sapa-catalog-sidebar { position: sticky; top: 0; display: block; min-height: 100vh; padding: 22px 22px 50px; border-right: 1px solid #e7e7e7; background: #fff; }
	.sapa-catalog-sidebar h2 { margin: 0 0 16px; font-size: 12px; letter-spacing: .08em; }
	.sapa-sidebar-search { display: flex; height: 38px; align-items: center; margin-bottom: 12px; border-bottom: 1px solid #ddd; }
	.sapa-sidebar-search span { font-size: 19px; }
	.sapa-sidebar-search input { min-width: 0; width: 100%; height: 36px; padding: 0 7px; border: 0; font-size: 11px; }
	.sapa-catalog-sidebar details { border-bottom: 1px solid #e7e7e7; }
	.sapa-catalog-sidebar summary { display: flex; min-height: 42px; align-items: center; justify-content: space-between; cursor: pointer; font-size: 12px; list-style: none; }
	.sapa-catalog-sidebar summary::-webkit-details-marker { display: none; }
	.sapa-size-links { display: grid; grid-template-columns: repeat(3,1fr); gap: 4px; padding-bottom: 13px; }
	.sapa-size-links a { display: grid; min-height: 30px; place-items: center; border: 1px solid transparent; font-size: 10px; text-decoration: none; }
	.sapa-size-links a:hover, .sapa-size-links a.is-active { border-color: #000; }
	.sapa-size-links a:last-child { grid-column: 1/-1; justify-content: start; text-decoration: underline; }
	.sapa-color-links { display: grid; grid-template-columns: repeat(2,1fr); gap: 8px 6px; padding-bottom: 15px; }
	.sapa-color-links a { display: flex; align-items: center; gap: 7px; font-size: 10px; text-decoration: none; }
	.sapa-color-links i { width: 13px; height: 13px; border: 1px solid #ccc; border-radius: 50%; }
	.sapa-sidebar-note { padding: 0 0 13px; color: #777; font-size: 10px; line-height: 1.45; }
	.sapa-collection-products .products { grid-template-columns: repeat(4, minmax(0, 1fr)) !important; gap: 0; }
	.sapa-collection-layout[data-columns="3"] .sapa-collection-products .products { grid-template-columns: repeat(3,minmax(0,1fr)) !important; }
	.sapa-collection-layout[data-columns="4"] .sapa-collection-products .products { grid-template-columns: repeat(4,minmax(0,1fr)) !important; }
	.sapa-collection-layout[data-columns="5"] .sapa-collection-products .products { grid-template-columns: repeat(5,minmax(0,1fr)) !important; }
	.sapa-collection-products li.product { border-right: 1px solid #f0f0f0; border-bottom: 1px solid #f0f0f0; }
	.sapa-account-overview { width: min(100%, 940px); margin-inline: auto; }
	body.sapa-wishlist-page .sapa-wishlist-intro,
	body.sapa-wishlist-page .woocommerce { width: min(100%, 1100px); margin-inline: auto; }
}

@media (min-width: 992px) {
	.sapa-desktop-category-nav { display: block; overflow: visible; }
	.sapa-desktop-category-nav ul { gap: clamp(9px,1.1vw,18px); }
	.sapa-desktop-category-nav .sapa-mega-trigger { font-size: clamp(8px,.72vw,10px); }
	.sapa-header__left { display: none !important; }
	.sapa-category-search { display: none; }
  .woocommerce-checkout #customer_details { float: left; width: 58%; margin-right: 2%; }
  .woocommerce-checkout #order_review_heading,
  .woocommerce-checkout #order_review { float: right; clear: right; width: 40%; padding: 25px; border: 1px solid #eee; background: #f9f9f9; }
}

@media (max-width: 767px) {
  :root { --sapa-header-height: 58px; }
	.sapa-header { grid-template-columns: minmax(0, 1fr) auto; min-height: 78px; padding-inline: 16px; }
	.sapa-header__left { display: none; }
	.sapa-product-directory .sapa-header-wrap { display: none; }
	.sapa-header__brand { grid-column: 1; justify-self: start; }
	.sapa-header__right { grid-column: 2; }
	.sapa-wordmark, .custom-logo-link { font-size: 23px; letter-spacing: .035em; }
	.sapa-header__right .sapa-account-link { display: none; }
	.sapa-header__right > .sapa-icon-button { display: none; }
	.sapa-for-you { min-height: 34px; padding-inline: 13px; border-color: #000; border-radius: 999px; background: #000; color: #fff; font-size: 12px; letter-spacing: .03em; box-shadow: none; }
	.sapa-departments ul { justify-content: flex-start; }
	.sapa-departments a { padding: 16px 0 13px; font-size: 14px; }
  .sapa-hero__panel { min-height: 68vh; }
  .sapa-hero__content { display: block; }
  .sapa-hero__title { margin-bottom: 13px; }
  .sapa-category-card { min-height: 310px; }
  .single-product { padding-bottom: 84px; }
	.single-product .sapa-header-wrap { display: none; }
	.single-product .sapa-pdp-back { display: none; }
	.sapa-pdp-mobile-nav { position: sticky; z-index: 85; top: 0; display: grid; grid-template-columns: 42px 1fr 46px; min-height: 66px; align-items: center; gap: 7px; padding: 8px 12px; border-bottom: 1px solid #e8e8e8; background: rgba(255,255,255,.98); }
	.sapa-pdp-mobile-nav > a { display: grid; place-items: center; color: #000; text-decoration: none; }
	.sapa-pdp-nav-back { font-size: 44px; font-weight: 300; line-height: 1; }
	.sapa-pdp-nav-bag { position: relative; font-size: 30px; }
	.sapa-pdp-nav-bag small { position: absolute; top: 1px; right: 1px; display: grid; width: 16px; height: 16px; place-items: center; background: #000; color: #fff; font-size: 9px; }
	.sapa-pdp-mobile-nav form { display: flex; height: 46px; overflow: hidden; border: 2px solid #e0e0e0; border-radius: 999px !important; }
	.sapa-pdp-mobile-nav input[type="search"] { min-width: 0; flex: 1; border: 0 !important; padding: 0 12px; font-size: 15px; }
	.sapa-pdp-mobile-nav button { width: 45px; border: 0; background: transparent; font-size: 24px; }
	.single-product div.product { gap: 0; }
	.single-product .summary { padding: 18px 16px 26px; }
	.single-product .summary .product_title { font-size: 21px; font-weight: 500; }
	.single-product .summary .price { margin: 8px 0 16px; color: #a82028; font-size: 24px; }
	.single-product .summary .price del { color: #222; font-size: .72em; }
	.single-product .summary .price::after { content: "Comp. Value"; display: inline-block; margin-left: 7px; color: #888; font-size: 12px; font-weight: 400; }
	.single-product table.variations th, .single-product table.variations td { display: block; width: 100%; padding: 5px 0; text-align: left; }
	.single-product table.variations th label { font-size: 17px; }
	.sapa-size-guide-button { margin-bottom: 12px; font-size: 14px; }
  .single-product .sapa-mobile-dock { display: none; }
  .single-product .single_add_to_cart_button {
    position: static !important; width: 100% !important; height: 58px !important; margin: 0 !important;
    border-radius: 999px !important; letter-spacing: .03em !important; text-transform: none !important;
  }
	.sapa-purchase-dock { position: fixed; z-index: 9999; right: 0; bottom: 0; left: 0; display: grid; grid-template-columns: 1fr 62px; gap: 9px; align-items: center; min-height: 76px; padding: 9px 14px max(9px,env(safe-area-inset-bottom)); border-top: 1px solid #ddd; background: #fff; box-shadow: 0 -8px 24px rgba(0,0,0,.1); }
	.sapa-purchase-dock.has-express { grid-template-columns: .9fr 1.1fr 62px; }
	.sapa-express-slot { min-width: 0; }
	.sapa-express-slot > * { width: 100% !important; min-height: 56px !important; border-radius: 999px !important; }
	.sapa-cart-slot { min-width: 0; }
	.sapa-dock-wishlist { display: grid; min-height: 58px; place-items: center; border: 1px solid #ddd; border-radius: 50% !important; font-size: 34px; }
	.sapa-dock-wishlist a { color: #000; text-decoration: none; }
	.sapa-pdp-service { padding: 28px 16px; }
	.sapa-pdp-service h2 { font-size: 24px; }
	.sapa-pdp-discovery > section { padding: 30px 16px; }
	.sapa-style-rail { display: grid !important; grid-auto-flow: column; grid-auto-columns: calc((100% - 12px)/1.5); grid-template-columns: none !important; gap: 12px; overflow-x: auto; scroll-snap-type: x mandatory; }
	.sapa-style-rail > li { scroll-snap-align: start; }
	.sapa-similar > div:last-child { align-items: flex-end; }
	.sapa-similar h2 { font-size: 20px; }
	.sapa-similar .button { min-width: 135px; border-radius: 999px !important; }
	.sapa-recommend-grid { grid-template-columns: repeat(2,minmax(0,1fr)) !important; gap: 18px 2px !important; }
  .single-product .woocommerce-product-gallery .flex-control-thumbs { display: flex; justify-content: center; gap: 7px; margin-top: 12px !important; }
  .single-product .woocommerce-product-gallery .flex-control-thumbs li { width: 7px !important; height: 7px; overflow: hidden; border: 1px solid #000; border-radius: 50%; background: #fff; }
  .single-product .woocommerce-product-gallery .flex-control-thumbs li:has(img.flex-active) { background: #000; }
  .single-product .woocommerce-product-gallery .flex-control-thumbs img { width: 100%; height: 100%; opacity: 0 !important; }
  body { padding-bottom: 70px; }
	.sapa-category-search { padding: 14px 14px 18px; }
	.sapa-category-search form { height: 56px; padding-left: 2px; border-color: #dedede; border-radius: 999px !important; }
	.sapa-category-search input[type="search"] { height: 52px; font-size: 16px; }
	.sapa-category-search button, .sapa-category-search .sapa-camera { height: 52px; min-height: 52px; }
	.sapa-shipping-promo { min-height: 82px; padding: 14px 18px; }
	.sapa-shipping-promo strong { font-size: 18px; }
	.sapa-shipping-promo small { font-size: 10px; }
	.sapa-shipping-promo b { font-size: 13px; }
  .sapa-dept-hero { min-height: 72vh; }
  .sapa-dept-hero__copy h1, .sapa-editorial-card h2 { font-size: 34px; }
  .sapa-editorial-card { width: 100%; min-height: 72vh; }
	.sapa-architecture-card { margin-top: 2px; }
	.sapa-latest { padding-inline: 0; }
	.sapa-latest > h2 { padding-inline: 16px; }
	.sapa-filter-tabs { padding-inline: 16px; }
	.sapa-product-results .products { grid-template-columns: repeat(3,minmax(0,1fr)) !important; gap: 0 !important; }
	.sapa-product-results .woocommerce-loop-product__title { padding: 8px 5px 3px !important; font-size: 12px !important; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
	.sapa-product-results .price { padding: 0 5px 9px !important; font-size: 14px !important; }
	.sapa-sport-products { padding-inline: 16px; }
	.sapa-section-heading { align-items: start; }
	.sapa-section-heading h2 { max-width: 10ch; font-size: 29px; }
	.sapa-sport-product-rail .products > .product { flex-basis: 68%; }
	.sapa-new-arrivals-strip { padding-inline: 0; }
	.sapa-new-arrivals-strip .sapa-section-heading { padding-inline: 16px; }
	.sapa-new-arrivals-strip .sapa-section-heading h2 { max-width: 18ch; font-size: 24px; }
	.sapa-new-arrivals-strip .sapa-sport-product-rail .products > .product { flex-basis: calc((100% - 10px) / 3); }
	.sapa-sport-trend-grid { gap: 5px; }
	.sapa-sport-trend-grid a { min-height: 64vw; }
	.sapa-sport-trend-grid span { right: 8px; bottom: 12px; left: 8px; font-size: 16px; }
	.sapa-department--kids .sapa-dept-hero,
	.sapa-kids-campaign { min-height: 74vh; }
	.sapa-kids-campaign > div { right: 16px; bottom: 22px; left: 16px; }
	.sapa-kids-campaign > div > a { min-height: 44px; padding-inline: 22px; }
	.sapa-collection-heading { grid-template-columns: 36px minmax(0, 1fr) auto auto; min-height: 76px; gap: 6px; padding: 8px 9px 5px; }
	.sapa-collection-back { width: 34px; height: 44px; }
	.sapa-collection-back svg { width: 26px; height: 34px; }
	.sapa-collection-heading h1 { display: -webkit-box; max-height: 44px; overflow: hidden; font-size: 23px; line-height: .96; white-space: normal; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
	.sapa-collection-heading > p { font-size: 13px; }
	.sapa-collection-actions button,
	.sapa-collection-actions a { width: 38px; height: 44px; min-height: 44px; }
	.sapa-collection-actions svg { width: 29px; height: 29px; }
	.sapa-collection-tools { grid-template-columns: minmax(0, 1fr) 78px 106px; min-height: 54px; }
	.sapa-collection-tools label { height: 54px; }
	.sapa-collection-search { padding-left: 12px; }
	.sapa-collection-search svg { flex-basis: 23px; width: 23px; height: 23px; }
	.sapa-collection-tools input,
	.sapa-collection-tools select { height: 52px; }
	.sapa-collection-tools input { padding-inline: 8px; font-size: 15px; }
	.sapa-collection-select select { max-width: 100%; padding: 0 22px 0 10px; font-size: 15px; }
	.sapa-collection-filter { padding-left: 8px; }
	.sapa-collection-filter > span { flex-basis: 22px; width: 22px; transform: scale(.85); }
	.sapa-collection-products { width: 100%; }
	.sapa-collection-layout { display: block; }
	.sapa-catalog-sidebar, .sapa-desktop-catalog-bar { display: none; }
	.sapa-collection-products .products { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: 0; }
	.sapa-collection-products li.product { border-right: 1px solid #f1f1f1; border-bottom: 1px solid #f1f1f1; }
	.sapa-collection-products .woocommerce-loop-product__title { padding: 9px 5px 3px !important; font-size: 13px !important; line-height: 1.2; }
	.sapa-collection-products .price { padding: 0 5px 10px !important; font-size: 15px !important; line-height: 1.2; }
	.sapa-collection-products li.product .button { top: calc(133.333cqw - 45px); right: 5px; width: 40px; min-height: 40px; }
	.sapa-collection-products .sapa-card-dots { right: 4px; bottom: 4px; left: 4px; gap: 3px; }
	.sapa-collection-products .sapa-card-dots i { width: 4px; height: 4px; }
	.single-product .woocommerce-product-gallery .flex-viewport .woocommerce-product-gallery__wrapper { display: flex !important; gap: 2px; overflow-x: auto; transform: none !important; scroll-snap-type: x mandatory; }
	.single-product .woocommerce-product-gallery .flex-viewport .woocommerce-product-gallery__image { flex: 0 0 77%; width: 77% !important; scroll-snap-align: start; }
	.single-product .woocommerce-product-gallery__image img { aspect-ratio: 3/4; object-fit: cover; }
	.sapa-gallery-actions { right: calc(23% + 10px); bottom: 18px; }
	.sapa-pdp-reviews { padding: 30px 16px; }
	.sapa-archive-load-more { margin-bottom: 28px; }
	.sapa-utility-page { width: 100%; }
	.sapa-utility-page > article > h1.sapa-utility-title { padding-block: 28px; font-size: 34px; }
	.sapa-wishlist-intro p { font-size: 16px; }
	body.sapa-wishlist-page table.wishlist_table tbody { gap: 5px; padding-inline: 8px; }
	body.sapa-wishlist-page table.wishlist_table td { padding-inline: 8px; }
	.sapa-account-overview { padding-top: 34px; }
	.sapa-account-welcome h1 { font-size: 34px; }
	.sapa-account-welcome p { font-size: 16px; }
	.sapa-account-bag { width: 54px; height: 54px; }
	.sapa-wishlist-cards > a { min-height: 220px; padding: 14px; }
	.sapa-account-links a { min-height: 64px; font-size: 17px; }
	.sapa-luxe-swipe { grid-auto-columns: 74%; }
  .sapa-brand-grid { gap: 6px; }
  .sapa-category-mosaic { grid-auto-rows: 150px; gap: 0; }
  .sapa-mosaic-card--4,
  .sapa-mosaic-card--5,
  .sapa-mosaic-card--6,
  .sapa-mosaic-card--7 { grid-column: span 1; }
  .sapa-sale-strip { min-height: 170px; }
  .woocommerce .sapa-recent-rail { grid-auto-columns: calc((100% - 10px) / 1.5); }
  .sapa-mobile-dock {
    position: fixed; z-index: 90; right: 0; bottom: 0; left: 0;
    display: grid; grid-template-columns: repeat(5, 1fr); min-height: 70px;
    border-top: 1px solid #ddd; background: rgba(255,255,255,.98); backdrop-filter: blur(10px);
  }
	body.sapa-sport-landing .sapa-mobile-dock { border-color: #333; background: rgba(0,0,0,.98); }
	body.sapa-sport-landing .sapa-mobile-dock a { color: #999; }
	body.sapa-sport-landing .sapa-mobile-dock a.is-active { color: #fff; }
  .sapa-mobile-dock a { display: flex; align-items: center; justify-content: center; flex-direction: column; gap: 3px; color: #777; font-size: 10px; text-decoration: none; }
  .sapa-mobile-dock a.is-active { color: #000; font-weight: 800; }
  .sapa-mobile-dock svg { width: 25px; height: 25px; fill: none; stroke: currentColor; stroke-width: 1.7; }
  .sapa-mobile-dock a:first-child svg { fill: currentColor; stroke: currentColor; }
	.sapa-shop-menu {
		position: fixed; z-index: 85; top: var(--sapa-shop-top, 0); right: 0; bottom: 70px; left: 0;
		display: block; visibility: hidden; overflow: hidden; background: #fff; opacity: 0;
		transform: translateY(14px); transition: opacity .18s ease, transform .18s ease, visibility .18s ease;
	}
	.sapa-shop-menu.is-open { visibility: visible; opacity: 1; transform: translateY(0); }
	.sapa-shop-panel { height: 100%; overflow-y: auto; overscroll-behavior: contain; background: #fff; -webkit-overflow-scrolling: touch; }
	.sapa-shop-panel[hidden] { display: none; }
	.sapa-shop-panel[data-sapa-shop-panel="main"] { overflow: hidden; touch-action: pan-y; }
	.sapa-shop-department-track { display: flex; width: 100%; height: 100%; transition: transform .26s cubic-bezier(.22,.61,.36,1); will-change: transform; }
	.sapa-shop-department-track.is-jumping { transition: none; }
	.sapa-shop-department-slide { width: 100%; height: 100%; flex: 0 0 100%; overflow-y: auto; overscroll-behavior: contain; padding-bottom: 18px; background: #fff; -webkit-overflow-scrolling: touch; }
	.sapa-shop-department-slide[aria-hidden="true"] { visibility: hidden; }
	.sapa-shop-row {
		display: flex; width: 100%; min-height: 48px; align-items: center; justify-content: space-between;
		margin: 0; padding: 0 14px; border: 0; border-bottom: 1px solid #e8e8e8; background: #fff; color: #111;
		font-size: 12px; font-weight: 700; letter-spacing: .02em; text-align: left; text-decoration: none; text-transform: uppercase;
	}
	.sapa-shop-panel[data-sapa-shop-panel="main"] > .sapa-shop-row:first-child { border-top: 1px solid #e8e8e8; }
	body.woocommerce-cart .woocommerce .sapa-recent-rail { grid-auto-columns: calc((100% - 20px) / 2.25); }
	body.sapa-wishlist-page .woocommerce .sapa-recent-rail { grid-auto-columns: calc((100% - 10px) / 1.5); }
	.sapa-shop-row b { font-size: 22px; font-weight: 400; }
	.sapa-shop-panel h3 { margin: 22px 14px 8px; font-size: 12px; letter-spacing: .08em; text-transform: uppercase; }
	.sapa-shop-panel[data-sapa-shop-panel="main"] > h2 { margin: 0; padding: 18px 14px 14px; border-bottom: 1px solid #d8d8d8; font-size: 18px; font-weight: 900; letter-spacing: .08em; }
	.sapa-shop-panel[data-sapa-shop-panel="main"] > h3 { margin-top: 14px; color: #777; font-size: 10px; }
	.sapa-shop-row span { font-weight: 500; }
	.sapa-shop-row span strong, .sapa-shop-back span strong { font-weight: 900; }
	.sapa-shop-row span em, .sapa-shop-back span em { font-weight: 500; font-style: italic; letter-spacing: .015em; }
	.sapa-shop-back {
		display: grid; width: 100%; min-height: 58px; grid-template-columns: 32px 1fr 32px; align-items: center; gap: 8px; padding: 0;
		border: 0; background: #fff; color: #000; font-size: 24px; text-align: left;
	}
	.sapa-shop-back b { grid-column: 1; font-size: 30px; font-weight: 400; line-height: 1; }
	.sapa-shop-back span { grid-column: 2; font-size: 14px; font-weight: 900; letter-spacing: .04em; text-align: center; text-transform: none; }
	.sapa-shop-drilldown-header { position: sticky; z-index: 4; top: 0; display: block; padding: 0 10px; border-bottom: 1px solid #d9d9d9; background: #fff; }
	.sapa-shop-panel-bag { position: absolute; top: 8px; right: 10px; display: grid; width: 42px; height: 42px; place-items: center; color: #111; }
	.sapa-shop-panel-bag svg { width: 25px; height: 25px; fill: none; stroke: currentColor; stroke-width: 1.7; }
	body.sapa-shop-open .sapa-mobile-dock a:first-child { color: #777; font-weight: 400; }
	body.sapa-shop-open .sapa-mobile-dock [data-sapa-open-shop] { color: #000; font-weight: 800; }
	body.sapa-shop-sport-mode .sapa-header-wrap,
	body.sapa-shop-sport-mode .sapa-departments,
	body.sapa-shop-sport-mode .sapa-category-search,
	body.sapa-shop-sport-mode .sapa-shop-menu,
	body.sapa-shop-sport-mode .sapa-shop-panel,
	body.sapa-shop-sport-mode .sapa-shop-department-slide { border-color: #3b3b3b; background: #111; color: #fff; }
	body.sapa-shop-sport-mode .sapa-wordmark,
	body.sapa-shop-sport-mode .sapa-for-you,
	body.sapa-shop-sport-mode .sapa-departments a { color: #fff; }
	body.sapa-shop-sport-mode .sapa-category-search form { border-color: #555; background: #111; }
	body.sapa-shop-sport-mode .sapa-category-search input { color: #fff; }
	body.sapa-shop-sport-mode .sapa-category-search svg { stroke: #fff; }
	body.sapa-shop-sport-mode .sapa-shop-row,
	body.sapa-shop-sport-mode .sapa-shop-back,
	body.sapa-shop-sport-mode .sapa-shop-drilldown-header { border-color: #414141; background: #111; color: #fff; }
	body.sapa-shop-sport-mode .sapa-shop-panel-bag { color: #fff; }
	body.sapa-shop-sport-mode .sapa-mobile-dock { border-color: #333; background: rgba(17,17,17,.98); }
	body.sapa-shop-sport-mode .sapa-mobile-dock a { color: #999; }
	body.sapa-shop-sport-mode .sapa-mobile-dock [data-sapa-open-shop] { color: #fff; }
}

@media (max-width: 767px) {
	.sapa-brand-category-strip { gap: 8px; padding: 8px 10px 10px; }
	.sapa-brand-category-strip a { min-width: 96px; padding: 10px 12px; font-size: 11px; }
}

/* v1.8.30: brand-first SHOP drill-down with linked branded collection strips. */
.sapa-shop-panel[data-sapa-shop-panel="main"] > h3 { letter-spacing: .11em; }
.sapa-shop-panel[data-sapa-shop-panel="main"] > h3 + .sapa-shop-row { border-top: 1px solid #d8d8d8; }
.sapa-shop-panel:not([data-sapa-shop-panel="main"]) > h3 { margin-top: 24px; }
.sapa-shop-panel:not([data-sapa-shop-panel="main"]) > h3:first-of-type { margin-top: 16px; }
@media (min-width: 992px) {
  .sapa-desktop-category-nav { overflow-x: auto; overflow-y: visible; }
}

/* v1.8.28: animated joined department wordmarks and intentional discovery rails. */
.woocommerce .sapa-recent-rail {
  display: grid !important;
  grid-template-columns: none !important;
  grid-auto-flow: column !important;
  overflow-x: auto !important;
  overscroll-behavior-inline: contain;
  touch-action: pan-x pan-y;
  -webkit-overflow-scrolling: touch;
  cursor: grab;
  user-select: none;
}
.woocommerce .sapa-recent-rail.is-dragging { cursor: grabbing; scroll-snap-type: none; }
.woocommerce .sapa-recent-rail .sapa-card-slider { touch-action: auto; }
.woocommerce .sapa-recent-rail > li.product { scroll-snap-align: start; }
@media (prefers-reduced-motion: reduce) {
  .sapa-wordmark { transition: none; }
}

/* v1.8.39: native Recently Viewed swipe on every department and after Me settings. */
.woocommerce .sapa-recent-rail {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  scroll-snap-type: x proximity;
  scroll-padding-inline: 0;
  overscroll-behavior-x: contain;
  touch-action: pan-x pan-y;
  -webkit-overflow-scrolling: touch;
}
.woocommerce .sapa-recent-rail > li.product {
  width: auto !important;
  min-width: 0 !important;
  margin-right: 0 !important;
  float: none !important;
  scroll-snap-align: start;
}
.woocommerce .sapa-recent-rail .sapa-card-slider {
  overflow-x: hidden !important;
  scroll-snap-type: none !important;
  touch-action: auto !important;
}
.sapa-account-recently-viewed { margin-top: 34px; }
.sapa-account-recently-viewed .sapa-utility-rail {
  width: 100%;
  max-width: none;
  padding: 0;
}
.sapa-account-recently-viewed .sapa-utility-rail h2 {
  margin: 0 0 12px;
  font-size: 18px;
  letter-spacing: .02em;
  text-transform: uppercase;
}
@media (max-width: 767px) {
  body.sapa-account-dashboard .woocommerce .sapa-recent-rail {
    grid-auto-columns: calc((100% - 16px) / 2.25) !important;
    gap: 8px !important;
  }
}

@media (max-width: 991px) {
  .woocommerce-checkout #customer_details,
  .woocommerce-checkout #order_review { float: none !important; width: 100% !important; margin-right: 0 !important; }
  .woocommerce-checkout #order_review { padding: 10px 0; border: 0; background: #fff; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

/* 1.7.6: compact, uninterrupted department architecture. */
.sapa-route-loader { display: none !important; }
.sapa-department,
.sapa-department.is-swiping-next,
.sapa-department.is-swiping-previous { opacity: 1; transform: none; transition: none; }
.sapa-product-results.is-loading { min-height: 0; opacity: 1; }
.sapa-archive-load-more.is-loading { opacity: 1; cursor: default; }
.sapa-dept-section {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	border-top: 1px solid var(--sapa-line);
}
.sapa-department--editorial .sapa-brand-section,
.sapa-department--editorial .sapa-category-section { padding-top: 0 !important; padding-bottom: 0 !important; }
.sapa-dept-section > h2 {
	display: flex;
	min-height: 48px;
	align-items: center;
	margin: 0 !important;
	padding: 0 14px !important;
	border-bottom: 1px solid var(--sapa-line);
	font-size: clamp(18px, 2.2vw, 28px);
	line-height: 1;
}
.sapa-dept-section > h2 + .sapa-section-intro { margin: 0; padding: 7px 14px; border-bottom: 1px solid var(--sapa-line); }
.sapa-trend-grid { margin-bottom: 0; }
.sapa-trend-card::after {
	position: absolute;
	z-index: 1;
	right: 0;
	bottom: 0;
	left: 0;
	height: 34%;
	content: "";
	background: linear-gradient(transparent, rgba(0,0,0,.58));
}
.sapa-trend-card span {
	z-index: 2;
	top: auto;
	bottom: 0;
	padding: 9px 8px;
	color: #fff;
	font-size: 12px;
	text-shadow: 0 1px 2px rgba(0,0,0,.5);
}
.sapa-trend-card:not([style]) { min-height: 78px; }
.sapa-editorial-card,
.sapa-editorial-card--alternate,
.sapa-architecture-card { width: 100%; margin: 1px 0 0; border-radius: 0; }
.sapa-editorial-card:not([style]) { min-height: 180px; }
.sapa-editorial-card:not([style]) h2 { font-size: clamp(20px, 4vw, 34px); }
.sapa-brand-grid,
.sapa-category-mosaic { gap: 1px; background: var(--sapa-line); }
.sapa-brand-card:not([style]) { min-height: 110px; }
.sapa-brand-card span,
.sapa-mosaic-card span { text-transform: uppercase; }
.sapa-sale-strip { border-top: 1px solid var(--sapa-line); }
.sapa-filter-tabs { margin: 0 !important; padding-top: 7px; padding-bottom: 7px; border-bottom: 1px solid var(--sapa-line); }
.sapa-filter-tabs button,
.sapa-filter-tabs a { min-height: 40px; padding-inline: 18px; }
.sapa-product-results { border-top: 1px solid var(--sapa-line); }
.sapa-load-more { width: 100%; margin-top: 1px; }
.sapa-recent { padding-bottom: 0 !important; }
.sapa-recent-empty { margin: 0; padding: 12px 16px; }

@media (max-width: 767px) {
	.sapa-header { min-height: 58px; padding-inline: 12px; }
	.sapa-departments a { padding: 10px 0 9px; font-size: 13px; }
	.sapa-departments a::after { bottom: 4px; }
	.sapa-category-search { padding: 6px 12px 7px; }
	.sapa-category-search form { height: 46px; }
	.sapa-category-search input[type="search"] { height: 42px; font-size: 15px; }
	.sapa-category-search button,
	.sapa-category-search .sapa-camera { height: 42px; min-height: 42px; }
	.sapa-shipping-promo { min-height: 64px; padding: 9px 14px; }
	.sapa-shipping-promo strong { font-size: 16px; }
	.sapa-shipping-promo b { font-size: 12px; }
	.sapa-brand-grid { gap: 1px; }
	.sapa-dept-section { padding-top: 0 !important; padding-bottom: 0 !important; }
	.sapa-department--editorial .sapa-brand-section,
	.sapa-department--editorial .sapa-category-section { padding-top: 0 !important; padding-bottom: 0 !important; }
	.sapa-dept-section > h2 { min-height: 46px; padding-inline: 12px !important; font-size: 20px !important; }
	.sapa-filter-tabs { padding-inline: 12px !important; }
	.sapa-sale-strip { min-height: 140px; }
	.sapa-editorial-card:not([style]) { min-height: 150px !important; }
}


/* ===== Sapaspur v1.8.0 approved product discovery rules ===== */

/* SHOP THE LATEST homepage: desktop = 3 x 10 (30 visible). */
@media (min-width: 768px) {
  .sapa-latest .sapa-product-results .products {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 0 !important;
  }
}

/* SHOP THE LATEST homepage: mobile = 2 x 10 (20 visible), then LOAD MORE opens full page. */
@media (max-width: 767px) {
  .sapa-latest .sapa-product-results .products {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 0 !important;
  }
  .sapa-latest .sapa-product-results .products > li.product:nth-child(n+21) {
    display: none !important;
  }
  .sapa-latest .sapa-load-more {
    display: flex;
    width: min(calc(100% - 32px), 440px);
    min-height: 48px;
    align-items: center;
    justify-content: center;
    margin: 16px auto 2px;
    border: 1px solid #111;
    background: #fff;
    color: #111;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .08em;
    text-decoration: none;
    text-transform: uppercase;
  }
}

/* Full listing pages: 3 columns on mobile. Desktop remains selectable 3 / 4 / 5. */
@media (max-width: 767px) {
  .sapa-collection-products .products {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

/* Infinite loading is intentionally invisible: no spinner, overlay, or load-more button. */
.sapa-infinite-sentinel {
  width: 100%;
  height: 1px;
  margin: 0;
  overflow: hidden;
  pointer-events: none;
}

/* Recently Viewed mobile rail = 1.5 visible cards and swipe. */
@media (max-width: 767px) {
  .woocommerce .sapa-recent-rail {
    grid-auto-columns: calc((100% - 10px) / 1.5) !important;
    gap: 10px !important;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
  }
}

/* Product detail mobile gallery = about 1.4 images visible and swipeable. */
@media (max-width: 767px) {
  .single-product .woocommerce-product-gallery .flex-viewport {
    overflow: visible !important;
  }
  .single-product .woocommerce-product-gallery .flex-viewport .woocommerce-product-gallery__wrapper {
    display: flex !important;
    gap: 2px !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    transform: none !important;
    scrollbar-width: none;
  }
  .single-product .woocommerce-product-gallery .flex-viewport .woocommerce-product-gallery__wrapper::-webkit-scrollbar {
    display: none;
  }
  .single-product .woocommerce-product-gallery .flex-viewport .woocommerce-product-gallery__image {
    flex: 0 0 calc((100% - 2px) / 1.4) !important;
    width: calc((100% - 2px) / 1.4) !important;
    scroll-snap-align: start;
  }
  .sapa-gallery-actions {
    right: calc(28.6% + 10px) !important;
  }
}

/* FOR YOU appears immediately before NEW IN in the desktop shop navigation only.
   The existing mobile placement is unchanged. */
@media (min-width: 768px) {
  .sapa-desktop-for-you > a {
    font-weight: 850 !important;
  }
}

/* v1.8.2: all campaign surfaces stay full landing size, even before artwork is assigned. */
.sapa-dept-hero,
.sapa-editorial-card,
.sapa-editorial-card:not([style]),
.sapa-sport-campaign,
.sapa-kids-campaign {
  width: 100%;
  min-height: min(88vh, 980px);
  margin: 1px 0 0;
  border-radius: 0;
}
.sapa-department--editorial .sapa-editorial-card:not([style]) h2 {
  font-size: clamp(32px, 6vw, 72px);
}
.sapa-trend-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1px;
  background: var(--sapa-line);
}
.sapa-trend-card,
.sapa-trend-card:not([style]) {
  min-height: 0;
  aspect-ratio: 4 / 5;
}
.sapa-real-discount {
  display: inline-block;
  margin: 0 0 14px;
  padding: 5px 9px;
  border-radius: 3px;
  background: #fceaea;
  color: #a51f2b;
  font-size: 12px;
  font-weight: 800;
}
.sapa-real-low-stock { margin: 8px 0; color: #a51f2b; font-size: 13px; font-weight: 800; }
.sapa-buybox-delivery {
  margin: 16px 0;
  padding: 15px;
  border-block: 1px solid #e6e6e6;
  background: #fafafa;
}
.sapa-buybox-delivery h2 { margin: 0 0 10px; font-size: 12px; letter-spacing: .08em; text-transform: uppercase; }
.sapa-buybox-delivery strong { font-size: 14px; }
.sapa-buybox-delivery p { margin: 5px 0 9px; color: #555; font-size: 13px; line-height: 1.45; }
.sapa-buybox-delivery a { font-size: 12px; font-weight: 800; text-underline-offset: 3px; }
.single-product .summary .stock { color: #265f40; font-weight: 800; }
.single-product .summary .stock.out-of-stock { color: #a51f2b; }

@media (min-width: 768px) {
  .sapa-trend-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .single-product div.product {
    grid-template-columns: minmax(0, 55%) minmax(360px, 45%);
    gap: 0;
    max-width: 1440px;
    padding-top: 12px;
  }
  .single-product .woocommerce-product-gallery { padding-left: 0; }
  .single-product .woocommerce-product-gallery .flex-control-thumbs {
    position: relative;
    top: auto;
    left: auto;
    display: grid;
    width: 100%;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 5px;
    margin-top: 5px !important;
  }
  .single-product .woocommerce-product-gallery .flex-control-thumbs li { width: 100% !important; }
  .single-product .woocommerce-product-gallery .flex-control-thumbs img,
  .single-product .woocommerce-product-gallery__image img { aspect-ratio: 9 / 16; object-fit: contain; }
  .single-product .woocommerce-product-gallery__image img { max-height: 80vh; }
  .single-product div.product > .summary {
    top: 16px;
    padding: 20px clamp(20px, 4vw, 56px) 38px;
    background: #fff;
  }
  .single-product .summary .product_title { font-size: clamp(24px, 2.4vw, 36px); font-weight: 900; line-height: 1.12; }
  .single-product .single_add_to_cart_button { border-radius: 4px !important; }
}
@media (max-width: 767px) {
  .sapa-dept-hero,
  .sapa-editorial-card,
  .sapa-editorial-card:not([style]),
  .sapa-sport-campaign,
  .sapa-kids-campaign,
  .sapa-department--editorial .sapa-editorial-card { min-height: 78svh !important; }
  .sapa-trend-card,
  .sapa-trend-card:not([style]) { min-height: 0 !important; }
  .single-product .summary .product_title { font-weight: 750; }
  .single-product .summary .price::after { content: none; }
}

/* v1.8.3: the single-product gallery owns its layout and never depends on FlexSlider transforms. */
.single-product .sapa-native-gallery { position: relative; width: 100%; min-width: 0; overflow: hidden; background: #f7f7f7; }
.single-product .sapa-native-gallery__track { display: flex; width: 100%; overflow-x: auto; overscroll-behavior-x: contain; scroll-snap-type: x mandatory; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
.single-product .sapa-native-gallery__track::-webkit-scrollbar { display: none; }
.single-product .sapa-native-gallery__slide { flex: 0 0 100%; min-width: 0; margin: 0; scroll-snap-align: start; background: #f7f7f7; }
.single-product .sapa-native-gallery__open { display: block; width: 100%; padding: 0; border: 0; background: transparent; cursor: zoom-in; }
.single-product .sapa-native-gallery__slide img { display: block; width: 100%; height: auto; aspect-ratio: 3 / 4; object-fit: contain; background: #f7f7f7; }
.single-product .sapa-native-gallery__missing { display: grid; width: 100%; aspect-ratio: 3 / 4; place-items: center; padding: 24px; background: #eaeaea; color: #444; text-align: center; font-size: 15px; }
.single-product .sapa-native-gallery__dots { position: absolute; z-index: 8; right: 32%; bottom: 18px; left: 32%; display: flex; justify-content: center; gap: 7px; pointer-events: none; }
.single-product .sapa-native-gallery__dots button { width: 7px; height: 7px; padding: 0; border: 1px solid #111; border-radius: 50%; background: #fff; pointer-events: auto; }
.single-product .sapa-native-gallery__dots button[aria-current="true"] { background: #111; }
.single-product .sapa-native-gallery__thumbs { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 3px; padding-top: 4px; background: #fff; }
.single-product .sapa-native-gallery__thumbs button { min-width: 0; padding: 0; border: 1px solid #ddd; background: #fff; cursor: pointer; }
.single-product .sapa-native-gallery__thumbs button[aria-current="true"] { border-color: #111; }
.single-product .sapa-native-gallery__thumbs img { display: block; width: 100%; aspect-ratio: 3 / 4; object-fit: cover; }
.single-product .sapa-native-gallery .sapa-gallery-actions { right: auto !important; bottom: 15px; left: 12px; display: flex; gap: 7px; }
.single-product .sapa-gallery-colors { position: absolute; z-index: 9; bottom: 77px; left: 12px; display: flex; flex-direction: column; align-items: center; gap: 5px; padding: 5px; border-radius: 24px; background: #fff; box-shadow: 0 2px 12px #0002; }
.single-product .sapa-gallery-colors[hidden] { display: none; }
.single-product .sapa-gallery-colors > button { width: 30px; height: 30px; border: 1px solid #aaa; border-radius: 50%; background: #fff; font-size: 20px; line-height: 1; }
.single-product .sapa-gallery-colors [data-sapa-colors-options] { display: none; flex-direction: column; gap: 6px; max-height: 190px; overflow-y: auto; }
.single-product .sapa-gallery-colors.is-expanded [data-sapa-colors-options] { display: flex; }
.single-product .sapa-gallery-colors__option { width: 26px; height: 26px; border: 1px solid #aaa; border-radius: 50%; box-shadow: inset 0 0 0 2px #fff; }
.single-product .sapa-gallery-colors__option[aria-pressed="true"] { outline: 2px solid #111; outline-offset: 2px; }
.single-product .summary .price { color: #111 !important; }
.single-product .summary .price del { color: #777; }
.single-product .sapa-real-discount { display: block; width: max-content; color: #a51f2b; }
.single-product .sapa-pdp-discovery > section { padding-block: 20px; }
.single-product .sapa-pdp-discovery > section h2 { margin-bottom: 15px; }
.single-product .sapa-recommend-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)) !important; gap: 2px !important; }
.single-product .sapa-similar-thumbs { gap: 2px; }
.single-product .sapa-recommend-more { display: grid; width: 100%; min-height: 52px; margin: 16px auto 0; place-items: center; border: 0; border-radius: 26px; background: #111; color: #fff; font-weight: 800; text-decoration: none; cursor: pointer; }
.single-product .sapa-product-details[open] { position: fixed; z-index: 9999; inset: 0; display: flex; flex-direction: column; overflow: auto; background: #fff; }
.single-product .sapa-product-details[open] summary { position: sticky; top: 0; z-index: 1; background: #fff; }
.single-product .sapa-product-details[open] > div { max-width: 850px; margin: 0 auto; padding: 20px; }
@media (min-width: 768px) {
  .single-product .sapa-native-gallery__slide img { max-height: 80vh; aspect-ratio: 9 / 16; }
  .single-product .sapa-native-gallery__missing { max-height: 80vh; }
  .single-product .sapa-native-gallery__dots { right: 35%; left: 35%; }
}
@media (max-width: 767px) {
  .single-product .sapa-native-gallery__thumbs { display: none; }
  .single-product .sapa-native-gallery__slide { flex-basis: 67%; }
  .single-product .sapa-native-gallery__slide:only-child { flex-basis: 100%; }
  .single-product .sapa-native-gallery__dots { right: 33%; left: 33%; }
  .single-product .sapa-recommend-grid { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
  .single-product .sapa-more-products:not(.is-expanded) .sapa-recommend-grid > li.product:nth-child(n+21) { display: none; }
  .single-product .sapa-pdp-discovery > section { padding-inline: 10px; }
}

/* v1.8.4: full-height image with a narrow preview of the next photo. */
.single-product .sapa-payment-methods { margin: 10px 0 14px; color: #222; font-size: 13px; }
.single-product .sapa-payment-methods span { font-weight: 800; }
@media (max-width: 767px) {
  .single-product .sapa-native-gallery__slide { flex: 0 0 84% !important; }
  .single-product .sapa-native-gallery__slide:only-child { flex-basis: 100% !important; }
  .single-product .sapa-native-gallery__slide img { width: 100%; height: auto; aspect-ratio: 2 / 3; object-fit: cover; object-position: center top; }
  .single-product .sapa-native-gallery__missing { aspect-ratio: 2 / 3; }
  .single-product .sapa-native-gallery__dots { right: 24%; left: 24%; }
  .woocommerce .sapa-recent-rail { grid-auto-columns: 76% !important; gap: 3px !important; }
  .woocommerce .sapa-recent-rail .sapa-product-media { aspect-ratio: 2 / 3; }
  .woocommerce .sapa-recent-rail .sapa-card-slide img { object-position: center top; }
}

/* Full-screen product image viewer, with the customer's actual photo thumbnails. */
.sapa-image-viewer[hidden] { display: none !important; }
.sapa-image-viewer { position: fixed; z-index: 10050; inset: 0; display: flex; flex-direction: column; background: #fff; }
.sapa-image-viewer__close,
.sapa-image-viewer__zoom { position: absolute; z-index: 2; display: grid; width: 46px; height: 46px; place-items: center; border: 0; border-radius: 50%; background: #fff; color: #111; font-size: 30px; font-weight: 300; line-height: 1; cursor: pointer; }
.sapa-image-viewer__close { top: max(12px, env(safe-area-inset-top)); left: 12px; }

/* v1.8.5: compact product copy, one color selector and balanced native purchase controls. */
.single-product .sapa-native-gallery__slide--fallback img { display: block; width: 100%; aspect-ratio: 2 / 3; object-fit: contain; background: #f7f7f7; }
.single-product .sapa-variation-colors { display: flex; gap: 12px; margin: 12px 0 20px; }
.single-product .sapa-variation-colors .sapa-variation-color { display: grid; width: 34px; height: 34px; min-width: 34px; min-height: 34px; place-items: center; padding: 0; border: 0; border-radius: 50%; background: transparent; }
.single-product .sapa-variation-colors .sapa-color-dot { display: block; width: 29px; height: 29px; margin: 0; border: 1px solid #ccc; border-radius: 50%; box-shadow: none; }
.single-product .sapa-variation-colors .sapa-variation-color.is-active { outline: 2px solid #111; outline-offset: 1px; background: #fff; }
.single-product .sapa-variation-colors .sapa-variation-color:disabled { opacity: .3; }
.single-product .summary .product_title { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2; line-clamp: 2; font-size: clamp(18px, 1.7vw, 24px); font-weight: 550; line-height: 1.25; }
.single-product .sapa-pdp-nav-bag svg { width: 27px; height: 30px; fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linejoin: round; }
.single-product .sapa-pdp-nav-bag small { top: -3px; right: -4px; border-radius: 50%; background: #b6272c; }
.single-product .sapa-variation-enhanced .variable-items-wrapper,
.single-product .sapa-variation-enhanced .woo-selected-variation-item-name,
.single-product #payment-method-message { display: none !important; }
@media (max-width: 767px) {
  .single-product .summary .product_title { font-size: 18px; line-height: 1.32; font-weight: 500; }
  .single-product .sapa-purchase-dock { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) 55px; gap: 7px; padding: 8px 12px max(8px,env(safe-area-inset-bottom)); min-height: 72px; box-shadow: none; }
  .single-product .sapa-purchase-dock:not(.has-express) { grid-template-columns: minmax(0, 1fr) 55px; }
  .single-product .sapa-express-slot[hidden] { display: none !important; }
  .single-product .sapa-express-slot > * { display: grid; place-items: center; width: 100% !important; height: 52px !important; min-height: 52px !important; margin: 0 !important; border: 1px solid #111 !important; border-radius: 999px !important; background: #fff !important; box-shadow: none !important; }
  .single-product .sapa-cart-slot .single_add_to_cart_button { height: 52px !important; min-height: 52px !important; border-radius: 999px !important; background: #000 !important; color: #fff !important; font-size: 16px !important; font-weight: 700 !important; }
  .single-product .sapa-dock-wishlist { width: 52px; height: 52px; min-height: 52px; border: 1px solid #ddd; border-radius: 50%; background: #fff; font-size: 26px; }
  .single-product .sapa-native-gallery__slide--fallback img { aspect-ratio: 2 / 3; }
}
.sapa-image-viewer__stage { position: relative; flex: 1 1 auto; min-height: 0; overflow: hidden; background: #f9f9f9; }
.sapa-image-viewer__stage > img { display: block; width: 100%; height: 100%; object-fit: contain; object-position: center; }
.sapa-image-viewer__zoom { right: 16px; bottom: 16px; font-size: 25px; }
.sapa-image-viewer.is-zoomed .sapa-image-viewer__stage > img { object-fit: cover; transform: scale(1.5); cursor: zoom-out; }
.sapa-image-viewer__thumbs { display: flex; flex: 0 0 150px; gap: 8px; min-height: 0; overflow-x: auto; padding: 8px 12px max(8px, env(safe-area-inset-bottom)); background: #fff; scrollbar-width: none; }
.sapa-image-viewer__thumbs::-webkit-scrollbar { display: none; }
.sapa-image-viewer__thumbs button { flex: 0 0 125px; min-width: 0; height: 100%; padding: 0; border: 1px solid #e5e5e5; background: #fff; cursor: pointer; }
.sapa-image-viewer__thumbs button[aria-current="true"] { border-color: #111; }
.sapa-image-viewer__thumbs img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center top; }

/* v1.8.11: editorial product cards and compact collection controls. */
.sapa-desktop-sort select { max-width: 155px; min-height: 34px; padding: 0 19px 0 7px; border: 1px solid #dadada; background: #fff; font-size: 11px; }
.sapa-grid-choice { width: auto; min-width: 32px; padding: 0 4px; letter-spacing: -2px; }
.sapa-sidebar-categories { display: grid; gap: 8px; max-height: 300px; overflow-y: auto; padding: 0 0 14px; }
.sapa-sidebar-categories a { font-size: 11px; text-decoration: none; }
.sapa-sidebar-categories a:hover { text-decoration: underline; }
.woocommerce ul.products li.product { container-type: inline-size; }
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product .button:hover { position: absolute; z-index: 6; top: calc(133.333cqw - 48px); right: 8px; display: grid; width: 40px; height: 40px; min-height: 40px; place-items: center; overflow: hidden; padding: 0 !important; border: 1px solid #e7e7e7; border-radius: 50% !important; background: #fff; color: transparent; font-size: 0; box-shadow: 0 1px 6px #0001; transform: none; }
.woocommerce ul.products li.product .button::before { content: ""; width: 23px; height: 23px; background: center/contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 8h14l-1 13H6L5 8Z'/%3E%3Cpath d='M9 9V6a3 3 0 0 1 6 0v3M12 12v6M9 15h6'/%3E%3C/svg%3E"); }
.woocommerce ul.products li.product .sapa-card-heart { position: absolute; z-index: 7; top: calc(133.333cqw + 8px); right: 8px; display: grid; width: 29px; height: 29px; place-items: center; color: #000; text-decoration: none; }
.woocommerce ul.products li.product .sapa-card-heart svg { width: 24px; height: 24px; fill: #fff; stroke: currentColor; stroke-width: 1.65; stroke-linecap: round; stroke-linejoin: round; }
.woocommerce ul.products li.product .sapa-plus { display: none !important; }
.woocommerce ul.products li.product .yith-wcwl-add-to-wishlist:not(.sapa-card-heart) { display: none !important; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { padding-right: 42px !important; }
.woocommerce ul.products li.product .price { color: #111 !important; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-weight: 500; }
@media (max-width: 767px) {
  .sapa-collection-products .products { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .sapa-collection-products li.product .button { top: calc(133.333cqw - 45px); }
  .single-product .sapa-purchase-dock { grid-template-columns: minmax(0,1fr) minmax(0,1fr) 52px; }
  .single-product .sapa-purchase-dock.has-express { grid-template-columns: minmax(0,1fr) minmax(0,1fr) 52px; }
  .single-product .sapa-purchase-dock.is-outside-buybox { display: grid !important; }
  .single-product .sapa-express-slot .wcpay-express-checkout-wrapper { width: 100%; margin: 0 !important; padding: 0 !important; border: 0 !important; }
  .single-product .sapa-express-slot .woopay-express-button { display: grid; width: 100%; height: 52px !important; place-items: center; border: 1px solid #111 !important; border-radius: 999px !important; background: #fff !important; }
  .single-product .sapa-express-slot .woopay-express-button svg { filter: invert(1); }
}

/* v1.8.7: stable mobile gallery, restrained purchase dock and swipeable discovery. */
/* v1.8.16: keep the real wallet, cart and wishlist controls in one mobile row. */
.single-product .sapa-size-guide-button { display: block; width: max-content; margin: 5px 0 8px; font-size: 13px; }
@media (max-width: 767px) {
  .single-product .sapa-purchase-dock,
  .single-product .sapa-purchase-dock.has-express { box-sizing: border-box; display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr) 46px; gap: 8px; align-items: center; width: 100%; min-height: 66px; padding: 8px 12px max(10px,env(safe-area-inset-bottom)); overflow: visible; background: #fff; }
  .single-product .sapa-purchase-dock:not(.has-express) { grid-template-columns: minmax(0,1fr) 46px; }
  .single-product .sapa-express-slot,
  .single-product .sapa-cart-slot { box-sizing: border-box; min-width: 0; height: 46px; overflow: hidden; }
  .single-product .sapa-express-slot > *,
  .single-product .sapa-express-slot .wcpay-express-checkout-wrapper { box-sizing: border-box; display: block; width: 100% !important; height: 46px !important; min-height: 46px !important; max-height: 46px !important; margin: 0 !important; padding: 0 !important; overflow: hidden !important; border: 0 !important; border-radius: 999px !important; background: #fff !important; }
  .single-product .sapa-express-slot .wcpay-express-checkout-wrapper.sapa-has-wallet-element > #wcpay-woopay-button { display: none !important; }
  .single-product .sapa-express-slot #wcpay-express-checkout-element,
  .single-product .sapa-express-slot .StripeElement { box-sizing: border-box; width: 100% !important; height: 46px !important; min-height: 46px !important; max-height: 46px !important; border: 1px solid #111 !important; border-radius: 999px !important; overflow: hidden !important; }
  .single-product .sapa-express-slot .StripeElement iframe { display: block; width: 100% !important; max-height: 46px !important; }
  .single-product .sapa-express-slot .woopay-express-button { box-sizing: border-box; width: 100% !important; height: 46px !important; min-height: 46px !important; border: 1px solid #111 !important; border-radius: 999px !important; background: #fff !important; }
  .single-product .sapa-cart-slot .single_add_to_cart_button { box-sizing: border-box; display: block; width: 100% !important; height: 46px !important; min-height: 46px !important; margin: 0 !important; padding: 0 6px !important; border: 0 !important; border-radius: 999px !important; background: #000 !important; color: #fff !important; font-size: clamp(12px,3.5vw,16px) !important; white-space: nowrap; }
  .single-product .sapa-dock-wishlist { box-sizing: border-box; display: grid; width: 46px; height: 46px; min-height: 46px; margin: 0; padding: 0; overflow: hidden; place-items: center; border: 1px solid #ddd; border-radius: 50%; background: #fff; font-size: 22px; }
  .single-product .sapa-dock-wishlist > *,
  .single-product .sapa-dock-wishlist a,
  .single-product .sapa-dock-wishlist button { box-sizing: border-box; display: grid; width: 44px; height: 44px; min-width: 0; min-height: 0; margin: 0; padding: 0; place-items: center; border: 0; background: transparent; font-size: 22px; }
  .single-product .sapa-dock-wishlist svg { width: 23px !important; height: 23px !important; }
}
.single-product .sapa-section-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.single-product .sapa-product-columns { display: flex; gap: 4px; margin-bottom: 15px; }
.single-product .sapa-product-columns button { min-width: 36px; min-height: 34px; border: 1px solid #ddd; background: #fff; font-size: 12px; cursor: pointer; }
.single-product .sapa-product-columns button[aria-pressed="true"] { border-color: #111; background: #111; color: #fff; }
.single-product .sapa-style-rail { display: grid !important; grid-auto-flow: column; grid-auto-columns: calc((100% - (var(--sapa-pdp-columns, 4) - 1) * 8px) / var(--sapa-pdp-columns, 4)); grid-template-columns: none !important; gap: 8px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
.single-product .sapa-style-rail > li { scroll-snap-align: start; }
.single-product .sapa-similar-thumbs { display: grid; grid-auto-flow: column; grid-auto-columns: calc((100% - (var(--sapa-pdp-columns, 4) - 1) * 4px) / var(--sapa-pdp-columns, 4)); grid-template-columns: none; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
.single-product .sapa-similar-thumbs a { min-width: 0; scroll-snap-align: start; }
.single-product .sapa-recommend-grid { grid-template-columns: repeat(var(--sapa-pdp-columns, 4), minmax(0,1fr)) !important; }
.single-product .sapa-more-products:not(.is-expanded) .sapa-recommend-grid > li.product:nth-child(n+21) { display: none; }
.single-product .sapa-similar > div:last-child { flex-wrap: wrap; }
.single-product .sapa-similar .sapa-product-columns { margin: 0 0 0 auto; }
@media (max-width: 767px) {
  .single-product .sapa-pdp-mobile-nav { position: relative; top: auto; }
  .single-product .sapa-native-gallery__track { min-height: 0; background: #fff; }
  .single-product .sapa-native-gallery__slide img { min-height: 0; background: #fff; }
  .single-product .sapa-product-columns { display: none; }
  .single-product .sapa-style-rail { grid-auto-columns: calc((100% - 8px) / 2.1) !important; }
  .single-product .sapa-style-rail > li:nth-child(n+4) { display: none; }
  .single-product .sapa-similar-thumbs { grid-auto-columns: calc((100% - 9px) / 4.15); gap: 3px; }
  .single-product .sapa-recommend-grid { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
  .single-product .sapa-pdp-discovery > section { padding: 20px 10px; }
  .single-product .sapa-pdp-discovery h2 { font-size: 19px; }
}
@media (min-width: 768px) {
  .sapa-image-viewer__stage { width: min(100%, 960px); margin: auto; }
  .sapa-image-viewer__thumbs { justify-content: center; }
}

/* v1.8.17: product detail composition from the approved mobile reference. */
.single-product .sapa-pdp-service { background: #fff; }
.single-product .sapa-pdp-service h2 { font-size: clamp(19px, 2vw, 23px); font-weight: 700; }
.single-product .sapa-delivery-row svg,
.single-product .sapa-returns-row svg,
.single-product .sapa-product-details summary svg { flex: 0 0 23px; width: 23px; height: 23px; fill: none; stroke: #111; stroke-width: 1.65; stroke-linecap: round; stroke-linejoin: round; }
.single-product .sapa-delivery-row { gap: 12px; margin: 0 0 18px; }
.single-product .sapa-delivery-row span { gap: 7px; }
.single-product .sapa-delivery-row small { font-size: 13px; }
.single-product .sapa-delivery-row a { width: max-content; color: #111; font-size: 13px; text-underline-offset: 4px; }
.single-product .sapa-returns-row { display: flex; align-items: center; gap: 12px; margin-bottom: 18px; }
.single-product .sapa-returns-row .sapa-returns-link { margin: 0; font-size: 14px; }
.single-product .sapa-product-details { border-radius: 10px; overflow: hidden; }
.single-product .sapa-product-details summary { justify-content: flex-start; gap: 13px; }
.single-product .sapa-product-details summary span { margin-left: auto; }
.single-product .sapa-size-row th.label { display: flex !important; align-items: baseline; gap: 7px; }
.single-product .sapa-size-row .sapa-size-guide-button { display: inline-block; width: auto; min-height: 0; margin: 0; border: 0; font-size: 13px; text-decoration: underline; text-underline-offset: 5px; }
.single-product .sapa-size-row .sapa-size-guide-button::before { content: '|'; display: inline-block; margin-right: 7px; color: #888; text-decoration: none; }
.single-product .sapa-pdp-discovery > section { border-bottom-width: 6px; }
@media (max-width: 767px) {
  .single-product .summary { padding: 12px 15px 20px; }
  .single-product .summary .product_title { margin: 0 0 8px; font-size: 16px; font-weight: 450; line-height: 1.35; -webkit-line-clamp: 2; }
  .single-product .summary .price { margin: 4px 0 11px; font-size: 22px; }
  .single-product .sapa-native-gallery { background: #fff; }
  .single-product .sapa-native-gallery__slide { flex: 0 0 84% !important; background: #fff; }
  .single-product .sapa-native-gallery__slide:only-child { flex-basis: 100% !important; }
  .single-product .sapa-native-gallery__slide img { aspect-ratio: 2 / 3; object-fit: cover; object-position: center top; }
  .single-product .sapa-native-gallery .sapa-gallery-actions { right: 11px !important; bottom: 14px; left: auto; }
  .single-product .sapa-gallery-heart { display: none; }
  .single-product .sapa-gallery-actions [data-sapa-share-product] { width: 42px; height: 42px; border: 0; border-radius: 50%; background: #fff; box-shadow: none; }
  .single-product .sapa-pdp-service { padding: 18px 16px 20px; border-top-width: 6px; border-bottom-width: 6px; }
  .single-product .sapa-pdp-service h2 { margin: 0 0 18px; font-size: 18px; }
  .single-product .sapa-product-details summary { min-height: 58px; padding: 0 14px; font-size: 16px; }
  .single-product .sapa-pdp-discovery > section { padding: 17px 15px 20px; }
  .single-product .sapa-pdp-discovery h2 { margin-bottom: 15px; font-size: 18px; }
  .single-product .sapa-similar > div:last-child { flex-wrap: nowrap; gap: 8px; }
  .single-product .sapa-similar h2 { flex: 1 1 auto; font-size: clamp(13px,3.75vw,18px); white-space: nowrap; }
  .single-product .sapa-similar .button { flex: 0 0 auto; min-width: 0; padding: 11px 14px; font-size: 13px; white-space: nowrap; }
  .single-product .sapa-size-row th.label { padding-bottom: 0; }
  .single-product .sapa-size-row .sapa-size-guide-button { font-size: 13px; }
  .single-product { padding-bottom: calc(76px + env(safe-area-inset-bottom)); }
}

/* v1.8.18: one wishlist action in the purchase dock, with a reliable outline icon. */
.single-product .summary > .yith-add-to-wishlist-button-block,
.single-product .summary > .yith-wcwl-add-to-wishlist { display: none !important; }
.single-product .summary form.cart .quantity { display: none !important; }
@media (max-width: 767px) {
  .single-product .sapa-style-section .sapa-section-heading { display: block; }
  .single-product .sapa-style-section .sapa-section-heading h2 { display: block; max-width: none; width: 100%; white-space: nowrap; font-size: clamp(17px, 4.3vw, 20px); line-height: 1.15; }
  .single-product .sapa-dock-wishlist { position: relative; flex: none; overflow: visible; background: #fff !important; }
  .single-product .sapa-dock-wishlist::after { content: ''; position: absolute; inset: 10px; z-index: 4; pointer-events: none; background: center / contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.65' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20.8 8.1c0-2.35-1.88-4.25-4.2-4.25-1.91 0-3.35 1.02-4.6 2.73-1.25-1.71-2.69-2.73-4.6-2.73-2.32 0-4.2 1.9-4.2 4.25 0 6.35 8.8 12.05 8.8 12.05s8.8-5.7 8.8-12.05Z'/%3E%3C/svg%3E"); }
  .single-product .sapa-dock-wishlist .yith-wcwl-add-to-wishlist-button__label,
  .single-product .sapa-dock-wishlist .yith-wcwl-icon-svg__wrapper { visibility: hidden !important; }
  .single-product .sapa-dock-wishlist .yith-wcwl-add-to-wishlist-button { position: relative; z-index: 3; background: transparent !important; opacity: 1; cursor: pointer; }
}

/* v1.8.19: keep mobile shipping immediately after the product choices. */
@media (max-width: 767px) {
  .single-product div.product { display: block; }
  .single-product div.product > .summary { float: none !important; width: 100% !important; min-height: 0; margin: 0 !important; padding-bottom: 8px; }
  .single-product .summary form.cart { min-height: 0; margin-bottom: 0 !important; }
  .single-product .summary form.cart .variations { margin-bottom: 0 !important; }
  .single-product .summary .sapa-variation-colors { margin-bottom: 8px; }
  .single-product .sapa-pdp-service { margin-top: 0; }
}

/* v1.8.20: compact choices, rectangular sizes and no cleared-float spacer. */
@media (max-width: 767px) {
  .single-product .summary .product_title { font-size: 15px; line-height: 1.32; -webkit-line-clamp: 2; }
  .single-product .summary .sapa-size-row .sapa-variation-button { min-width: 57px; min-height: 47px; padding: 0 13px; border-radius: 4px; font-size: 14px; font-weight: 600; }
  .single-product .summary form.cart::after { content: none !important; display: none !important; }
  .single-product .summary form.cart .reset_variations { display: none !important; }
  .single-product .summary .sapa-variation-colors { margin: 7px 0 4px; }
}

/* v1.8.23: similar styles have their own useful controls and photo-led layout. */
.sapa-similar-directory .sapa-collection-header { position: relative; top: auto; }
.sapa-similar-parent { position: relative; width: min(100%, 540px); margin: 0 auto; background: #f7f7f7; }
.sapa-similar-parent img { display: block; width: 100%; max-height: 72svh; aspect-ratio: 2 / 3; object-fit: cover; object-position: center top; }
.sapa-similar-parent > span { position: absolute; right: 12px; bottom: 12px; left: 12px; overflow: hidden; padding: 9px 11px; background: #fffE; font-size: 13px; text-overflow: ellipsis; white-space: nowrap; }
.sapa-similar-close { position: absolute; z-index: 2; top: 12px; left: 12px; display: grid; width: 38px; height: 38px; place-items: center; border-radius: 50%; background: #fff; color: #111; font-size: 28px; line-height: 1; text-decoration: none; }
.sapa-similar-directory .sapa-collection-tools { display: block; }
.sapa-similar-directory .sapa-collection-tools > .sapa-collection-search { display: none; }
.sapa-similar-directory .sapa-collection-tools > button[type="submit"] { position: absolute; width: 1px; height: 1px; overflow: hidden; padding: 0; clip-path: inset(50%); }
.sapa-similar-controls { display: flex; min-height: 54px; align-items: center; justify-content: center; gap: 8px; padding: 7px 12px; border-top: 1px solid #e9e9e9; white-space: nowrap; }
.sapa-similar-controls label { display: flex; min-width: 0; height: auto; align-items: center; gap: 3px; }
.sapa-similar-controls label span { font-size: 13px; }
.sapa-similar-controls select { width: 20px; min-width: 20px; height: 34px; padding: 0; color: #111; font-size: 13px; cursor: pointer; }
.sapa-similar-controls select:focus, .sapa-similar-controls select:has(option:checked:not(:first-child)) { width: auto; max-width: 150px; }
.sapa-similar-filter { flex: none; border: 0; background: #fff; color: #111; font-size: 13px; cursor: pointer; }
.sapa-similar-views { display: flex; gap: 4px; align-items: center; padding-left: 8px; border-left: 1px solid #ddd; }
.sapa-similar-views button { min-width: 25px; padding: 5px 2px; border: 0; background: transparent; color: #999; font-size: 14px; font-weight: 800; letter-spacing: -2px; cursor: pointer; }
.sapa-similar-views button.is-active { color: #111; }
.sapa-similar-directory .sapa-collection-layout[data-columns="2"] .sapa-collection-products .products { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
.sapa-similar-directory .sapa-collection-layout[data-columns="3"] .sapa-collection-products .products { grid-template-columns: repeat(3,minmax(0,1fr)) !important; }
.sapa-similar-directory .sapa-collection-layout[data-columns="4"] .sapa-collection-products .products { grid-template-columns: repeat(4,minmax(0,1fr)) !important; }
.single-product div.product > .summary { position: static !important; align-self: start; }
@media (min-width: 768px) {
  .sapa-similar-directory .sapa-collection-heading, .sapa-similar-directory .sapa-desktop-catalog-bar { margin-left: 220px; }
  .sapa-similar-directory .sapa-collection-tools { margin-left: 220px; }
  .sapa-similar-directory .sapa-collection-tools > .sapa-similar-controls { justify-content: flex-end; }
  .sapa-similar-directory .sapa-collection-tools .sapa-similar-views { display: none; }
  .sapa-similar-directory .sapa-collection-layout[data-columns="2"] .sapa-collection-products .products { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
}
@media (max-width: 767px) {
  .sapa-similar-directory .sapa-collection-heading { min-height: 54px; }
  .sapa-similar-directory .sapa-collection-heading h1 { font-size: 16px; }
  .sapa-similar-directory .sapa-catalog-sidebar { display: none; padding: 14px 16px; border-bottom: 1px solid #ddd; }
  .sapa-similar-directory .sapa-catalog-sidebar.is-open { display: block; }
  .sapa-similar-directory .sapa-collection-layout { display: block; }
  .sapa-similar-controls { justify-content: space-between; gap: 3px; padding-inline: 7px; }
  .sapa-similar-controls label span { font-size: 12px; }
  .sapa-similar-filter { padding: 4px 0; font-size: 12px; }
  .sapa-similar-views { gap: 2px; padding-left: 4px; }
  .sapa-similar-views button { min-width: 21px; font-size: 12px; }
  .sapa-similar-directory .sapa-collection-layout[data-columns="2"] .sapa-collection-products .products { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
  .sapa-similar-directory .sapa-collection-layout[data-columns="3"] .sapa-collection-products .products { grid-template-columns: repeat(3,minmax(0,1fr)) !important; }
  .sapa-similar-directory .sapa-collection-layout[data-columns="4"] .sapa-collection-products .products { grid-template-columns: repeat(4,minmax(0,1fr)) !important; }
  .single-product .sapa-native-gallery__track { align-items: stretch; }
  .single-product .sapa-native-gallery__slide { align-self: stretch; overflow: hidden; }
  .single-product .sapa-native-gallery__open { position: relative; width: 100%; height: 100%; aspect-ratio: 2 / 3; overflow: hidden; }
  .single-product .sapa-native-gallery__slide img { position: absolute; inset: 0; width: 100%; height: 100%; aspect-ratio: auto; object-fit: cover; object-position: center top; }
  .single-product .sapa-native-gallery__dots { right: 30%; bottom: 15px; left: 30%; padding: 5px; border-radius: 20px; background: #fff9; }
  .single-product .sapa-purchase-dock.is-past-service { display: none !important; }
  .single-product:has(.sapa-purchase-dock.is-past-service) { padding-bottom: 0; }
}

/* v1.8.27: product-led discovery, full card media, one bag action and consistent grids. */
.woocommerce ul.products li.product .sapa-product-media { position: relative; aspect-ratio: 3 / 4; overflow: hidden; background: #f3f3f3; }
.woocommerce ul.products li.product .sapa-product-media > img,
.woocommerce ul.products li.product .sapa-product-media .sapa-card-image { position: absolute; inset: 0; display: block; width: 100% !important; height: 100% !important; margin: 0 !important; object-fit: cover !important; object-position: center top; }
.woocommerce ul.products li.product .sapa-card-dots,
.woocommerce ul.products li.product .sapa-card-heart,
.woocommerce ul.products li.product .yith-wcwl-add-to-wishlist { display: none !important; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { padding-right: 7px !important; }
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product .button:hover { top: calc(133.333cqw - 58px); right: 8px; width: 50px; height: 50px; min-height: 50px; }
.woocommerce ul.products li.product .button::before { width: 29px; height: 29px; }
.sapa-brand-card span strong { font-weight: 900; }
.sapa-brand-card span em { font-weight: 400; font-style: italic; letter-spacing: .035em; }

/* v1.8.41: readable two-line product names across every catalog surface. */
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.sapa-collection-products .woocommerce-loop-product__title,
.sapa-product-results .woocommerce-loop-product__title {
	display: -webkit-box;
	min-height: calc(2em * 1.2);
	overflow: hidden;
	line-height: 1.2;
	text-overflow: ellipsis;
	white-space: normal;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}
@media (min-width: 768px) {
  .sapa-collection-layout[data-columns="3"] .sapa-collection-products .products { grid-template-columns: repeat(3,minmax(0,1fr)) !important; }
  .sapa-collection-layout[data-columns="4"] .sapa-collection-products .products { grid-template-columns: repeat(4,minmax(0,1fr)) !important; }
  .sapa-collection-layout[data-columns="5"] .sapa-collection-products .products { grid-template-columns: repeat(5,minmax(0,1fr)) !important; }
	.sapa-similar-directory .sapa-collection-layout[data-columns="3"] .sapa-collection-products .products { grid-template-columns: repeat(3,minmax(0,1fr)) !important; }
	.sapa-similar-directory .sapa-collection-layout[data-columns="4"] .sapa-collection-products .products { grid-template-columns: repeat(4,minmax(0,1fr)) !important; }
	.sapa-similar-directory .sapa-collection-layout[data-columns="5"] .sapa-collection-products .products { grid-template-columns: repeat(5,minmax(0,1fr)) !important; }
}
@media (max-width: 767px) {
  .sapa-latest .sapa-product-results .products,
  .sapa-collection-layout[data-columns="3"] .sapa-collection-products .products { grid-template-columns: repeat(3,minmax(0,1fr)) !important; }
  .sapa-collection-layout[data-columns="4"] .sapa-collection-products .products { grid-template-columns: repeat(4,minmax(0,1fr)) !important; }
  .sapa-collection-layout[data-columns="5"] .sapa-collection-products .products { grid-template-columns: repeat(3,minmax(0,1fr)) !important; }
	.sapa-similar-directory .sapa-collection-layout[data-columns="3"] .sapa-collection-products .products { grid-template-columns: repeat(3,minmax(0,1fr)) !important; }
	.sapa-similar-directory .sapa-collection-layout[data-columns="4"] .sapa-collection-products .products { grid-template-columns: repeat(4,minmax(0,1fr)) !important; }
  [data-sapa-grid-columns="5"] { display: none !important; }
  .sapa-latest .sapa-product-results .products > li.product:nth-child(n+21) { display: list-item !important; }
  .woocommerce .sapa-recent-rail { grid-auto-columns: calc((100% - 10px) / 1.4) !important; gap: 10px !important; }
  .woocommerce ul.products li.product .button,
  .woocommerce ul.products li.product .button:hover { top: calc(133.333cqw - 52px); right: 5px; width: 46px; height: 46px; min-height: 46px; }
  .woocommerce ul.products li.product .button::before { width: 27px; height: 27px; }
}

/* v1.8.42: only product rails move horizontally; the surrounding page stays fixed. */
html,
body {
	max-width: 100%;
	overflow-x: hidden;
}
@supports (overflow: clip) {
	html,
	body { overflow-x: clip; }
}
.sapa-department,
.sapa-account-overview,
.sapa-account-recently-viewed,
.sapa-account-recently-viewed .sapa-utility-rail,
.sapa-utility-rail {
	width: 100%;
	max-width: 100%;
	min-width: 0;
	box-sizing: border-box;
}
.sapa-account-recently-viewed,
.sapa-account-recently-viewed .sapa-utility-rail {
	overflow-x: hidden;
	contain: inline-size;
}
.woocommerce .sapa-recent-rail {
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
	margin-right: 0 !important;
	margin-left: 0 !important;
	box-sizing: border-box;
	overflow-x: auto !important;
	overflow-y: hidden !important;
	overscroll-behavior-x: contain;
	-webkit-overflow-scrolling: touch;
}
.woocommerce .sapa-recent-rail > li.product {
	min-width: 0 !important;
	max-width: none !important;
}

/* v1.8.44: remove legacy SHOP chrome and never render partial legacy homepage media. */
[data-sapa-shop-menu] [data-sapa-shop-close],
[data-sapa-shop-menu] .sapa-shop-close,
[data-sapa-shop-menu] .sapa-shop-menu__close,
[data-sapa-shop-menu] [class*="close"],
[data-sapa-shop-menu] button[aria-label*="Close"],
.mobile-nav .close-side-widget,
.mobile-nav .wd-close-side,
.mobile-nav [class*="close"] { display: none !important; }
/* Category headings must remain visible above the mosaic. */
.sapa-commerce-categories > h2 { display: none !important; }

/* Shop navigation is provided by the department rail and bottom Shop tab. */
.sapa-v93-menu .sapa-v93-close, .sapa-v93-menu .menu-toggle, .sapa-v93-menu .mobile-menu-toggle, .sapa-v93-menu .elementor-menu-toggle, .sapa-v93-menu .woodmart-burger-icon, .sapa-v93-menu .wd-header-mobile-nav { display: none !important; }

/* v2.0.1: department gestures and self-contained discovery rails. */
.sapa-department { touch-action: auto; }
.sapa-dept-hero { width: 100%; background-size: cover; background-position: center; }
.sapa-dept-hero { min-height: 78svh; }
.sapa-department .sapa-sport-product-rail { width: 100%; min-width: 0; overflow: hidden; }
.sapa-department .sapa-sport-product-rail > ul.products {
  display: flex !important;
  flex-flow: row nowrap !important;
  grid-template-columns: none !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 0 12px !important;
  gap: 6px !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  scroll-snap-type: x mandatory;
  overscroll-behavior-x: contain;
  touch-action: pan-x;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}
.sapa-department .sapa-sport-product-rail > ul.products::-webkit-scrollbar { display: none; }
.sapa-department .sapa-sport-product-rail > ul.products > li.product {
  display: block !important;
  flex: 0 0 calc((100% - 12px) / 3) !important;
  width: calc((100% - 12px) / 3) !important;
  max-width: none !important;
  min-width: 0 !important;
  float: none !important;
  margin: 0 !important;
  scroll-snap-align: start;
}
.sapa-department .sapa-recent > ul.products.sapa-recent-rail {
  display: grid !important;
  grid-auto-flow: column !important;
  grid-template-columns: none !important;
  grid-auto-columns: minmax(0, calc((100% - 20px) / 3));
  gap: 10px;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  touch-action: pan-x;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
}
@media (max-width: 767px) {
  .sapa-department .sapa-recent > ul.products.sapa-recent-rail {
    grid-auto-columns: 72% !important;
    gap: 8px !important;
  }
  .sapa-department .sapa-sport-product-rail > ul.products > li.product {
    flex-basis: calc((100% - 12px) / 3) !important;
  }
}

/* v2.0.2: drag horizontal discoveries; keep vertical page scrolling native. */
[data-sapa-department] { touch-action: pan-y; }
.woocommerce ul.products.sapa-recent-rail,
.sapa-department .sapa-sport-product-rail > ul.products,
.woocommerce ul.products.sapa-style-rail {
  touch-action: pan-y !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  scroll-behavior: auto;
  overscroll-behavior-x: contain;
  -webkit-overflow-scrolling: touch;
  cursor: grab;
}
.woocommerce ul.products.sapa-recent-rail::before,
.woocommerce ul.products.sapa-recent-rail::after,
.sapa-sport-product-rail > ul.products::before,
.sapa-sport-product-rail > ul.products::after,
.woocommerce ul.products.sapa-style-rail::before,
.woocommerce ul.products.sapa-style-rail::after { display: none !important; content: none !important; }
.sapa-recent-rail .sapa-card-slider,
.sapa-sport-product-rail .sapa-card-slider,
.sapa-style-rail .sapa-card-slider {
  overflow-x: hidden !important;
  touch-action: pan-y !important;
  scroll-snap-type: none !important;
}
.sapa-recent-rail img,
.sapa-sport-product-rail img,
.sapa-style-rail img { -webkit-user-drag: none; user-select: none; }
.woocommerce ul.products.sapa-recent-rail.is-dragging,
.sapa-department .sapa-sport-product-rail > ul.products.is-dragging,
.woocommerce ul.products.sapa-style-rail.is-dragging { scroll-snap-type: none !important; cursor: grabbing; user-select: none; }
.sapa-rail-controls { display: flex; justify-content: flex-end; gap: 8px; padding: 6px 12px; background: inherit; }
.sapa-slide-arrow { display: grid; width: 34px; height: 34px; min-height: 34px; padding: 0; place-items: center; border: 1px solid #111; border-radius: 50%; background: #fff; color: #111; font: 26px/1 Arial,sans-serif; cursor: pointer; }
.sapa-slide-arrow:disabled { opacity: .3; cursor: default; }
.sapa-slide-arrow:focus-visible { outline: 2px solid #c2a679; outline-offset: 3px; }
.sapa-department-controls { position: absolute; z-index: 5; top: 12px; right: 12px; left: 12px; display: flex; justify-content: space-between; pointer-events: none; }
.sapa-department-controls .sapa-slide-arrow { pointer-events: auto; }
.sapa-department .sapa-sport-product-rail > ul.products > li.product {
  flex: 0 0 calc((100% - 18px) / 4) !important;
  width: calc((100% - 18px) / 4) !important;
}
.woocommerce .sapa-recent-rail { grid-auto-columns: calc((100% - 20px) / 3) !important; }
@media (max-width: 767px) {
  .woocommerce .sapa-recent-rail,
  .sapa-department .sapa-recent > ul.products.sapa-recent-rail { grid-auto-columns: calc((100% - 8px) / 1.5) !important; gap: 8px !important; }
  .sapa-department .sapa-sport-product-rail > ul.products > li.product {
    flex: 0 0 calc((100% - 12px) / 3) !important;
    width: calc((100% - 12px) / 3) !important;
  }
}
.sapa-policy-links { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px 20px; padding: 18px 14px; border-top: 1px solid #ddd; background: #fff; color: #111; font-size: 12px; }
.sapa-policy-links a { color: #111; text-decoration: underline; text-underline-offset: 3px; }

/* v2.0.2 final PDP controls: dots, image-linked color circles and balanced wallet actions. */
.single-product .sapa-native-gallery__dots {
	align-items: center;
	gap: 8px;
	padding: 6px 9px;
	border-radius: 999px;
	background: rgba(255,255,255,.76);
}
.single-product .sapa-native-gallery__dots button,
.single-product .sapa-native-gallery__dots button:hover,
.single-product .sapa-native-gallery__dots button:focus {
	box-sizing: border-box !important;
	display: block !important;
	flex: 0 0 8px !important;
	width: 8px !important;
	min-width: 8px !important;
	max-width: 8px !important;
	height: 8px !important;
	min-height: 8px !important;
	max-height: 8px !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 1px solid #111 !important;
	border-radius: 50% !important;
	background: #fff !important;
	box-shadow: none !important;
	appearance: none;
}
.single-product .sapa-native-gallery__dots button[aria-current="true"] { background: #111 !important; }
.single-product .sapa-size-guide-button,
.single-product .sapa-size-guide-button:visited,
.single-product .sapa-size-guide-button:hover,
.single-product .sapa-size-guide-button:focus {
	color: #111 !important;
	border-bottom-color: #6f4e37 !important;
	font-weight: 750;
	text-decoration: none;
}
.single-product .sapa-size-guide-button:focus-visible { outline: 2px solid #6f4e37; outline-offset: 4px; }
.sapa-size-modal__panel h2,
.sapa-size-modal__panel h3 { color: #111; }
.sapa-size-modal__panel th { background: #6f4e37; }
.single-product .sapa-variation-colors { align-items: center; flex-wrap: wrap; }
.single-product .sapa-variation-colors .sapa-variation-color,
.single-product .sapa-variation-colors .sapa-variation-color:hover,
.single-product .sapa-variation-colors .sapa-variation-color:focus {
	box-sizing: border-box;
	display: grid;
	width: 38px;
	min-width: 38px;
	height: 38px;
	min-height: 38px;
	padding: 3px;
	place-items: center;
	border: 0;
	border-radius: 50%;
	background: transparent;
	color: transparent;
	font-size: 0;
}
.single-product .sapa-variation-colors .sapa-color-dot {
	width: 30px;
	height: 30px;
	border: 1px solid #a9a9a9;
	border-radius: 50%;
	box-shadow: inset 0 0 0 1px rgba(255,255,255,.35);
}
.single-product .sapa-variation-colors .sapa-variation-color.is-active {
	outline: 2px solid #111;
	outline-offset: 1px;
	background: #fff;
}
.single-product .sapa-selected-color { color: #111; font-weight: 700; }

@media (max-width: 767px) {
	.single-product .sapa-purchase-dock,
	.single-product .sapa-purchase-dock.has-express {
		grid-template-columns: minmax(0,1fr) minmax(0,1fr) 52px !important;
		gap: 8px;
	}
	.single-product .sapa-purchase-dock:not(.has-express) { grid-template-columns: minmax(0,1fr) 52px !important; }
	.single-product .sapa-express-slot,
	.single-product .sapa-cart-slot,
	.single-product .sapa-express-slot > *,
	.single-product .sapa-express-slot .wcpay-express-checkout-wrapper,
	.single-product .sapa-express-slot #wcpay-express-checkout-element,
	.single-product .sapa-express-slot .StripeElement,
	.single-product .sapa-express-slot .woopay-express-button,
	.single-product .sapa-cart-slot .single_add_to_cart_button {
		box-sizing: border-box !important;
		height: 52px !important;
		min-height: 52px !important;
		max-height: 52px !important;
		border-radius: 999px !important;
	}
	.single-product .sapa-express-slot,
	.single-product .sapa-express-slot > *,
	.single-product .sapa-express-slot .wcpay-express-checkout-wrapper,
	.single-product .sapa-express-slot #wcpay-express-checkout-element,
	.single-product .sapa-express-slot .StripeElement,
	.single-product .sapa-express-slot .woopay-express-button {
		border-color: #111 !important;
		background: #fff !important;
		color: #111 !important;
	}
	.single-product .sapa-express-slot .woopay-express-button svg { filter: none !important; }
	.single-product .sapa-express-slot .StripeElement iframe,
	.single-product .sapa-express-slot #wcpay-express-checkout-element iframe {
		display: block;
		width: 100% !important;
		height: 52px !important;
		max-height: 52px !important;
		filter: invert(1) hue-rotate(180deg);
	}
	.single-product .sapa-dock-wishlist { width: 52px; height: 52px; min-height: 52px; }
}

/* v2.0.7 combined founder, reviews and gesture-only navigation. */
.sapa-slide-arrow,.sapa-rail-controls,.sapa-department-controls { display:none !important; }
.single-product .sapa-title-rating { display:flex; align-items:flex-start; gap:12px; margin-bottom:12px; }
.single-product .sapa-title-rating .product_title { flex:1; min-width:0; margin:0; }
.single-product .sapa-rating-link { flex:none; padding-top:3px; color:#111; font-size:13px; font-weight:700; white-space:nowrap; text-decoration:none; }
.single-product .summary > .woocommerce-product-rating,.single-product .sapa-pdp-reviews { display:none !important; }
.sapa-review-page { padding:28px 18px 50px; }
.sapa-review-back { color:#111; text-underline-offset:4px; }
.sapa-review-page h1 { margin-top:24px; }
.sapa-review-page #reviews { display:block !important; }
.sapa-about { margin:0 auto; max-width:1400px; color:#111; }
.sapa-about-hero { padding:65px 30px; background:#111; color:#fff; }
.sapa-about-hero h2 { margin:15px 0; color:#fff; font-size:clamp(36px,6vw,78px); line-height:1.05; }
.sapa-about-hero a { display:inline-block; margin:12px 12px 0 0; padding:14px 20px; border:1px solid #c2a679; color:#fff; text-decoration:none; }
.sapa-about-story,.sapa-about-standard { padding:45px 30px; }
.sapa-about-story p { max-width:850px; line-height:1.75; }
.sapa-about-standard { background:#f5f2ed; }
.sapa-about-standard > div { display:grid; grid-template-columns:repeat(3,1fr); gap:30px; }
.sapa-about-standard p { line-height:1.7; }
.sapa-about-founder { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:40px; padding:45px 30px; }
.sapa-about-founder img { width:100%; height:auto; object-fit:cover; }
.sapa-about-founder blockquote { margin:0; padding:0; border:0; line-height:1.7; }
.sapa-about-eyebrow { letter-spacing:.12em; font-size:12px; font-weight:800; }
@media(max-width:767px) { .sapa-about-standard > div,.sapa-about-founder { grid-template-columns:1fr; } .sapa-about-founder,.sapa-about-story,.sapa-about-standard { padding:30px 18px; } .sapa-about-hero { padding:45px 18px; } }

/* v2.0.7: stable Shop chrome and the reference Me login layout. */
body.sapa-account-page .sapa-utility-page { padding: 0; color: #111; }
body.sapa-account-page .sapa-utility-page article > div > .woocommerce { padding: 0; }
body.sapa-account-page .sapa-utility-title { font-weight: 800; }
body.sapa-account-page .woocommerce .u-columns { display: grid; grid-template-columns: 1fr; gap: 32px; }
body.sapa-account-page .woocommerce .u-column1,
body.sapa-account-page .woocommerce .u-column2 { float: none; width: 100%; }
body.sapa-account-page .woocommerce h2 { margin: 22px 0 32px; color: #111; font-size: 24px; font-weight: 800; }
body.sapa-account-page .woocommerce form.login,
body.sapa-account-page .woocommerce form.register { margin: 0 0 14px; padding: 28px 23px 32px; border: 1px solid #d4d4d4; border-radius: 4px; background: #fff; }
body.sapa-account-page .woocommerce form .form-row { margin: 0 0 18px; padding: 0; }
body.sapa-account-page .woocommerce form .form-row label { color: #111; font-size: 16px; line-height: 1.5; }
body.sapa-account-page .woocommerce form .required { color: #a82028; }
body.sapa-account-page .woocommerce form .input-text { width: 100%; min-height: 32px; padding: 4px 9px; border: 1px solid #5c5151; border-radius: 0; background: #fff; color: #111; font-size: 16px; }
body.sapa-account-page .woocommerce .show-password-input { color: #111; }
body.sapa-account-page .woocommerce form.login .form-row:not(.form-row-wide) { display: flex; align-items: center; gap: 18px; flex-wrap: wrap; }
body.sapa-account-page .woocommerce .woocommerce-form-login__submit { order: 0; float: none; margin: 0; min-height: 46px; padding: 12px 16px; border: 0; border-radius: 0; background: #e9e7ec; color: #555; font-size: 16px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
body.sapa-account-page .woocommerce .woocommerce-form-login__rememberme { order: 1; display: inline-flex !important; align-items: center; gap: 6px; }
body.sapa-account-page .woocommerce input[type="checkbox"] { width: 16px; height: 16px; margin: 0; accent-color: #111; }
body.sapa-account-page .woocommerce .lost_password { margin: 22px 0 0; }
body.sapa-account-page .woocommerce .lost_password a { color: #111; font-size: 16px; text-decoration: underline; }
@media (min-width: 768px) {
  body.sapa-account-page:not(.sapa-account-dashboard) .sapa-utility-page { max-width: 960px; padding-inline: 24px; }
  body.sapa-account-page .woocommerce .u-columns { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 767px) {
  body.sapa-shop-open .sapa-header-wrap { display: block !important; position: fixed !important; inset: 0 0 auto; z-index: 86; width: 100%; background: #fff; transform: none !important; }
  body.sapa-shop-open .sapa-header { display: grid !important; }
  body.sapa-shop-open .sapa-departments,
  body.sapa-shop-open .sapa-category-search { display: block !important; }
  body.sapa-shop-open .sapa-shipping-promo { display: flex !important; }
  body.sapa-shop-open .sapa-desktop-category-nav { display: none !important; }
  body.sapa-shop-open .sapa-shop-menu { transform: none !important; transition: opacity .18s ease, visibility .18s ease; overscroll-behavior: none; }
  body.sapa-shop-open .sapa-shop-panel,
  body.sapa-shop-open .sapa-shop-department-slide { min-height: 0; touch-action: pan-y; }
  body.sapa-shop-open .sapa-shop-panel { overscroll-behavior-y: contain; }
  body.sapa-shop-open .sapa-mobile-dock { padding-bottom: env(safe-area-inset-bottom,0px); }
  body.sapa-shop-open .sapa-purchase-dock,
  body.sapa-shop-open .sapa-pdp-mobile-nav { visibility: hidden; }
}

/* Every collection keeps its parent department and category on two lines. */
.sapa-collection-heading h1:has(.sapa-title-department) { display: block; max-height: none; line-height: 1.12; }
.sapa-title-department,.sapa-title-category { display: block; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.sapa-title-department { text-transform: uppercase; }
.sapa-title-category { text-transform: none; }
.sapa-shop-back:has(.sapa-title-department) { min-height: 68px; }
.sapa-shop-back span.sapa-title-department,.sapa-shop-back span.sapa-title-category { font-size: 14px; }
@media (max-width: 767px) {
 .sapa-collection-heading h1:has(.sapa-title-department) { font-size: 19px; }
 .sapa-collection-heading h1 .sapa-title-category { font-size: 18px; }
}

/* v2.0.7: compact category/department titles and the editorial pages. */
.sapa-collection-heading h1:has(.sapa-title-context) { display: -webkit-box; max-height: none; line-height: 1.05; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; text-transform: uppercase; }
.sapa-shop-back span:has(.sapa-title-context) { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; line-height: 1.2; text-transform: uppercase; }
body.page .content-shell:has(.sapa-editorial) { width: 100%; max-width: none; padding: 0; }
.sapa-editorial { color: #111; background: #fff; }
.sapa-editorial-hero { padding: clamp(48px,8vw,110px) max(24px,calc((100vw - 1200px)/2)); background: #111; color: #fff; }
.sapa-editorial-eyebrow { display: block; margin-bottom: 16px; font-size: 11px; font-weight: 800; letter-spacing: .18em; text-transform: uppercase; }
.sapa-editorial-hero h1 { margin: 0 0 24px; font-size: clamp(42px,7vw,96px); line-height: 1; letter-spacing: -.045em; }
.sapa-editorial-hero p { max-width: 710px; font-size: clamp(17px,2vw,22px); line-height: 1.5; }
.sapa-editorial-hero strong { display: block; margin-top: 26px; color: #c2a679; font-size: 13px; letter-spacing: .08em; }
.sapa-edit-tabs { display: flex; gap: 26px; overflow-x: auto; padding: 21px max(24px,calc((100vw - 1200px)/2)); border-bottom: 1px solid #ddd; white-space: nowrap; scrollbar-width: none; }
.sapa-edit-tabs a { color: #666; text-decoration: none; font-size: 13px; }
.sapa-edit-tabs .is-active { color: #111; font-weight: 800; border-bottom: 2px solid #111; }
.sapa-editorial-intro { max-width: 1200px; margin: 0 auto; padding: 50px 24px 20px; }
.sapa-editorial-intro h2 { max-width: 800px; margin: 0 0 18px; font-size: clamp(28px,4vw,46px); line-height: 1.12; }
.sapa-editorial-intro p { max-width: 760px; font-size: 17px; line-height: 1.6; }
.sapa-editorial-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px; max-width: 1200px; margin: 0 auto; padding: 24px; }
.sapa-editorial-grid article { min-width: 0; padding: 26px; border: 1px solid #ddd; }
.sapa-editorial-grid h2 { margin: 0 0 18px; font-size: 26px; line-height: 1.14; }
.sapa-editorial-grid p,.sapa-editorial-grid li { font-size: 15px; line-height: 1.6; }
.sapa-editorial-grid ul { padding-left: 18px; }
.sapa-editorial-grid li { margin-bottom: 12px; }
.sapa-edit-stories article { padding: 0 0 24px; }
.sapa-edit-stories a { display: block; color: #111; text-decoration: none; }
.sapa-edit-stories img { width: 100%; aspect-ratio: 4/5; object-fit: cover; margin-bottom: 22px; }
.sapa-edit-stories h2,.sapa-edit-stories p,.sapa-edit-stories .sapa-editorial-eyebrow,.sapa-edit-read { margin-inline: 22px; }
.sapa-edit-read { font-size: 12px; font-weight: 800; text-decoration: underline; }
.sapa-edit-pagination { padding: 20px; text-align: center; }
.sapa-edit-pagination .page-numbers { padding: 8px; color: #111; }
.sapa-edit-newsletter { max-width: 1152px; margin: 40px auto 50px; padding: 38px; background: #eee7dd; }
.sapa-edit-newsletter h2 { margin: 0 0 12px; font-size: clamp(28px,4vw,44px); }
.sapa-edit-newsletter form { max-width: 580px; margin-top: 26px; }
.sapa-edit-newsletter form > label { display: block; font-size: 14px; margin-bottom: 8px; }
.sapa-edit-newsletter input[type="email"] { width: 100%; height: 52px; border: 1px solid #111; padding: 12px; background: #fff; font-size: 16px; }
.sapa-edit-newsletter .sapa-edit-consent { display: flex; gap: 9px; align-items: center; margin-top: 15px; }
.sapa-edit-consent input { accent-color: #111; }
.sapa-edit-privacy { font-size: 12px; color: #111; }
.sapa-edit-newsletter button,.sapa-editorial-button { display: inline-block; margin-top: 22px; padding: 16px 24px; border: 1px solid #111; background: #111; color: #fff; text-decoration: none; font-weight: 800; font-size: 12px; text-transform: uppercase; }
.sapa-signup-trap { position: absolute; left: -9999px; }
.sapa-coming-soon { display: inline-block; padding: 9px 14px; border: 1px solid #c2a679; color: #c2a679; font-size: 12px !important; letter-spacing: .12em; }
.sapa-insiders-status { max-width: 1152px; margin: 30px auto 60px; padding: 38px; background: #eee7dd; }
.sapa-insiders-status h2 { font-size: 32px; margin-top: 0; }
.sapa-insiders-status p { max-width: 680px; line-height: 1.6; }
@media (max-width: 767px) {
 .sapa-collection-heading h1:has(.sapa-title-context) { font-size: 21px; }
 .sapa-editorial-grid { grid-template-columns: 1fr; padding: 18px; gap: 16px; }
 .sapa-edit-newsletter,.sapa-insiders-status { margin-inline: 18px; padding: 25px; }
 .sapa-editorial-hero { padding: 48px 24px; }
}

/* Keep animated department content inside the viewport. */
.site-main:has([data-sapa-department]) { overflow-x: clip; }

/* v2.0.8: immersive photography, compact catalog cards and unclipped wallets. */
.sapa-image-viewer:not([hidden]) { position: fixed; inset: 0; width: 100%; height: 100vh; height: 100dvh; z-index: 2147483000; padding: 0; }
.sapa-image-viewer__thumbs { display: none !important; }
.sapa-image-viewer__stage { flex: 1 1 100%; width: 100%; height: 100%; min-height: 0; margin: 0; touch-action: pan-y pinch-zoom; }
.sapa-image-viewer__stage img { width: 100%; height: 100%; object-fit: contain; }
body.sapa-image-viewer-open .sapa-purchase-dock,
body.sapa-image-viewer-open .sapa-mobile-dock,
body.sapa-image-viewer-open .sapa-pdp-mobile-nav { visibility: hidden !important; pointer-events: none !important; }
.woocommerce ul.products li.product .sapa-product-media { aspect-ratio: 2 / 3 !important; }
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product .star-rating { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip-path: inset(50%); white-space: nowrap; }
.woocommerce ul.products li.product .onsale { display: none !important; }
.woocommerce ul.products li.product .price { min-height: 0; margin: 0 !important; padding: 7px 8px 12px !important; }
.woocommerce ul.products li.product .button { top: calc(150cqw - 54px) !important; bottom: auto !important; right: 8px !important; width: 46px !important; height: 46px !important; min-height: 46px !important; }
.single-product .sapa-variation-colors { gap: 12px; flex-wrap: wrap; }
.single-product .sapa-variation-colors .sapa-variation-color,
.single-product .sapa-color-expand { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 42px; width: 42px !important; height: 42px !important; min-width: 42px !important; min-height: 42px !important; padding: 3px !important; border-radius: 50% !important; border: 1px solid #ddd; background: #fff; }
.single-product .sapa-variation-colors .sapa-variation-color { overflow: hidden; color: transparent !important; font-size: 0 !important; line-height: 0 !important; text-indent: -999px; }
.single-product .sapa-variation-colors .sapa-variation-color::before,
.single-product .sapa-variation-colors .sapa-variation-color::after { content: none !important; }
.single-product .sapa-variation-colors .sapa-color-dot { display: block; flex: 0 0 34px; width: 34px !important; height: 34px !important; border-radius: 50% !important; }
.single-product .sapa-variation-colors.is-collapsed .sapa-variation-color:nth-child(n+5) { display: none !important; }
.single-product .sapa-color-expand { color: #111; font-size: 26px; line-height: 1; }
/* A second floating cart must not cover the product purchase actions. */
.single-product .xoo-wsc-basket,
.single-product .woofc-count,
.single-product #woofc-count,
.single-product .xt_woofc-trigger,
.single-product .vi-wcaio-sidebar-cart-icon,
.single-product #fkcart-floating-toggler,
.single-product .fkcart-floating-toggler { display: none !important; }
@media (max-width: 767px) {
  .single-product .sapa-express-slot,
  .single-product .sapa-express-slot > *,
  .single-product .sapa-express-slot .wcpay-express-checkout-wrapper,
  .single-product .sapa-express-slot #wcpay-express-checkout-element,
  .single-product .sapa-express-slot .StripeElement,
  .single-product .sapa-express-slot .StripeElement > div { max-height: none !important; overflow: visible !important; padding: 0 !important; margin: 0 !important; }
  .single-product .sapa-express-slot iframe { display: block; width: 100% !important; max-height: none !important; }
  .single-product .sapa-express-slot .apple-pay-button,
  .single-product .sapa-express-slot [class*="apple-pay-button"] { height: 52px !important; min-height: 52px !important; width: 100% !important; -apple-pay-button-style: white-outline; -apple-pay-button-border-radius: 999px; }
  .single-product .sapa-cart-slot .single_add_to_cart_button { width: 100% !important; height: 52px !important; padding: 0 8px !important; font-size: 16px; line-height: 1.2 !important; }
}

/* v2.0.9: force imported color/shade attributes into swatches and keep every expanded photograph visible. */
.sapa-image-viewer__stage { display: grid; place-items: center; padding: max(8px, env(safe-area-inset-top)) max(6px, env(safe-area-inset-right)) max(8px, env(safe-area-inset-bottom)) max(6px, env(safe-area-inset-left)); box-sizing: border-box; background: #fff; }
.sapa-image-viewer__stage > img { display: block; width: 100%; height: 100%; max-width: 100%; max-height: 100%; object-fit: contain !important; object-position: center !important; }

.sapa-department--kids .sapa-department-catalog ul.products{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}.sapa-budget-strip .sapa-section-heading h2{font-size:clamp(18px,4vw,26px);max-width:75%}.sapa-budget-strip .sapa-sport-product-rail{overflow-x:auto;scroll-snap-type:x mandatory;touch-action:pan-x pan-y}.sapa-budget-strip ul.products{display:flex!important;flex-wrap:nowrap!important}.sapa-budget-strip ul.products li.product{flex:0 0 calc((100% - 12px)/3)!important;scroll-snap-align:start}
/* One rotating budget promo, 2.5 mobile cards with native touch scrolling. */
[data-sapa-budget-rotator] [hidden]{display:none!important}
.sapa-budget-strip .sapa-section-heading{background:#000;color:#fff;padding:20px 16px;margin:0 0 16px!important;align-items:center}
.sapa-budget-strip .sapa-section-heading h2,.sapa-budget-strip .sapa-section-heading a{color:#fff!important}
.sapa-budget-strip .sapa-section-heading h2{white-space:nowrap}
.sapa-budget-strip .sapa-sport-product-rail ul.products li.product{flex:0 0 calc((100% - 24px)/2.5)!important;width:calc((100% - 24px)/2.5)!important;min-width:0!important;margin:0!important}
.sapa-budget-strip .sapa-sport-product-rail ul.products{gap:12px!important}

/* Sapaspur 2.0.21: permanent heading for the category mosaic */
.sapa-category-section__title { margin: 0 0 20px; font-size: clamp(24px, 6vw, 38px); font-weight: 800; line-height: 1.12; letter-spacing: -.025em; color: #111; text-align: left; }

/* 2.0.22: explicit category heading; override older injected theme rules. */
.sapa-department .sapa-category-section > .sapa-category-section__title,
.sapa-department .sapa-category-section > .sapa-category-heading { display:block !important; visibility:visible !important; opacity:1 !important; position:relative !important; margin:0 !important; padding:18px 16px 16px !important; background:#fff !important; color:#111 !important; font-size:clamp(25px,5.6vw,38px) !important; line-height:1.15 !important; font-weight:800 !important; letter-spacing:-.025em !important; text-align:left !important; }
/* No extra theme policy bar; the Me screen owns policy/help links. */
.sapa-footer-policy-links,.sapa-policy-links,.sapaspur-policy-links { display:none!important; }

/* Sapaspur 2.0.24: source-level mobile homepage corrections. */
@media(max-width:950px){
 .sapa-department-catalog .sapa-section-heading{display:flex!important;align-items:center!important;flex-wrap:nowrap!important;gap:8px!important;padding-inline:12px!important;}
 .sapa-department-catalog .sapa-section-heading h2{font-size:clamp(18px,5.2vw,26px)!important;line-height:1.1!important;max-width:none!important;min-width:0!important;flex:1!important;white-space:nowrap!important;letter-spacing:-.025em!important;}
 .sapa-department-catalog .sapa-section-heading>a{font-size:10px!important;white-space:nowrap!important;}
 .sapa-sale-strip{min-height:88px!important;max-height:116px!important;gap:8px!important;padding:17px 10px!important;}
 .sapa-sale-strip strong{display:block!important;font-size:clamp(19px,5vw,27px)!important;line-height:1.15!important;letter-spacing:-.015em!important;white-space:nowrap!important;}
 .sapa-sale-strip span{font-size:11px!important;line-height:1.2!important;}
 .sapa-department-catalog .sapa-filter-tabs{display:flex!important;gap:17px!important;overflow-x:auto!important;overscroll-behavior-inline:contain!important;scrollbar-width:none!important;touch-action:pan-x!important;padding:6px 12px 10px!important;}
 .sapa-department-catalog .sapa-filter-tabs>a{min-height:39px!important;padding:4px 0!important;border:0!important;border-radius:0!important;background:transparent!important;color:#666!important;letter-spacing:.08em!important;font-size:12px!important;font-weight:800!important;}
 .sapa-department-catalog .sapa-filter-tabs>a.is-active{color:#000!important;border-bottom:2px solid #000!important;}
 /* The original four-tab plugin's stylesheet and its output are disabled at source below. */
 .sapa-bottom-nav{display:none!important;}
}

/* 2.0.25: prevent the primary mobile catalog heading wrapping at any viewport. */
@media(max-width:950px){
 .sapa-department-catalog .sapa-section-heading{display:flex!important;flex-wrap:nowrap!important;align-items:center!important;gap:8px!important;min-width:0!important;padding-inline:12px!important}
 .sapa-department-catalog .sapa-section-heading h2{display:block!important;flex:1 1 auto!important;width:auto!important;min-width:0!important;max-width:none!important;white-space:nowrap!important;overflow:visible!important;font-size:clamp(16px,4.35vw,22px)!important;letter-spacing:-.045em!important;line-height:1.1!important}
 .sapa-department-catalog .sapa-section-heading>a{flex:0 0 auto!important;font-size:10px!important;white-space:nowrap!important}
}

/* 2.0.28: five-tab navigation occupies the full viewport width. */
@media(max-width:767px){html body .sapa-mobile-dock{width:100vw!important;max-width:none!important;left:0!important;right:0!important;grid-template-columns:repeat(5,minmax(0,1fr))!important}html body .sapa-mobile-dock>a{min-width:0!important;width:100%!important}}

/* 2.0.29: allow Shop the Latest heading to occupy a full, single mobile line. */
@media (max-width:767px) {
  .sapa-latest .sapa-section-heading {display:flex; flex-wrap:nowrap; align-items:center; gap:8px; width:100%;}
  .sapa-latest .sapa-section-heading h2, .sapa-latest > h2 {max-width:none !important; width:auto !important; white-space:nowrap !important; word-break:normal !important; font-size:clamp(19px,5.1vw,28px) !important; line-height:1.2 !important; flex-shrink:0;}
  .sapa-latest .sapa-section-heading a {white-space:nowrap; font-size:12px;}
}

/* 2.0.30 — compact mobile collection and genuine product-detail UX */
@media (max-width:767px) {
  body:not(.single-product) .sapa-collection-heading {display:grid!important;grid-template-columns:34px minmax(0,1fr) auto auto!important;gap:6px!important;padding:9px 10px!important;min-height:64px!important}
  body:not(.single-product) .sapa-collection-heading h1 {font-size:clamp(15px,4.4vw,19px)!important;line-height:1.15!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;letter-spacing:-.035em!important}
  body:not(.single-product) .sapa-collection-heading>p {font-size:11px!important;white-space:nowrap!important}
  body:not(.single-product) .sapa-collection-actions button,body:not(.single-product) .sapa-collection-actions a {height:34px!important;width:34px!important;min-height:34px!important}
  body:not(.single-product) .sapa-collection-back {width:30px!important;height:36px!important}
  body:not(.single-product) .sapa-collection-back svg {width:23px!important;height:30px!important}
  body:not(.single-product) .sapa-collection-tools {grid-template-columns:minmax(0,1fr) auto auto!important;min-height:55px!important}
  body:not(.single-product) .sapa-collection-search {min-width:0!important;flex:1!important}
  body:not(.single-product) .sapa-collection-tools input {font-size:14px!important;height:52px!important}
  body:not(.single-product) .sapa-collection-tools select {height:52px!important;max-width:82px!important;padding-left:7px!important;padding-right:5px!important;font-size:12px!important}
  body:not(.single-product) .sapa-collection-products ul.products {display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:2px!important}
  body:not(.single-product) .sapa-collection-products ul.products li.product {width:auto!important;min-width:0!important;margin:0!important}
  .single-product .sapa-purchase-dock,.single-product .sapa-purchase-dock.is-past-service {display:grid!important;position:fixed!important;bottom:0!important;z-index:9999!important}
  .single-product .sapa-purchase-dock:not(.has-express) {grid-template-columns:minmax(0,1fr) 48px!important}
  .single-product .sapa-purchase-dock.has-express {grid-template-columns:minmax(0,1fr) minmax(0,1fr) 48px!important}
  .single-product .sapa-purchase-dock .sapa-dock-wishlist {min-height:45px!important;max-width:48px!important;font-size:25px!important}
  .single-product .sapa-purchase-dock .single_add_to_cart_button {height:48px!important;min-height:48px!important;font-size:12px!important}
  .single-product .sapa-pdp-mobile-nav {display:flex!important;align-items:center!important}
  .single-product .sapa-product-details {margin-bottom:12px}
  .single-product .sapa-pdp-discovery .sapa-style-rail {overflow-x:auto!important;overscroll-behavior-x:contain!important;touch-action:pan-x!important}
  body.single-product {padding-bottom:calc(76px + env(safe-area-inset-bottom))!important}
}

/* SAPASPUR dedicated screens */

.smx-page{background:#fff;color:#111;min-height:70vh;padding:20px 16px 105px;font-family:system-ui,-apple-system,sans-serif}.smx-page *{box-sizing:border-box}.smx-page h1,.smx-page h2{font-family:Montserrat,system-ui,sans-serif;line-height:1.1}.smx-page h1{font-size:27px;margin:14px 0 24px}.smx-page h2{font-size:20px;margin:28px 0 16px}.smx-brand{display:flex;align-items:center;justify-content:space-between;padding:12px 0;font-weight:900;font-size:24px}.smx-depts,.smx-rail{display:flex;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;gap:13px;-webkit-overflow-scrolling:touch;scrollbar-width:none}.smx-depts::-webkit-scrollbar,.smx-rail::-webkit-scrollbar{display:none}.smx-dept{border:0;border-bottom:3px solid transparent;background:transparent;white-space:nowrap;padding:12px 2px;font-weight:800}.smx-dept[aria-selected=true]{border-color:currentColor}.smx-search{display:flex;gap:8px;margin:14px 0;border:2px solid #ddd;border-radius:50px;padding:10px 14px}.smx-search input{border:0;outline:0;width:100%;min-width:0}.smx-promo{background:#111;color:#fff;border-radius:4px;padding:14px 10px;text-align:center;margin:12px 0}.smx-promo button{background:#8b1e2d;color:white;border:0;padding:6px 12px;border-radius:30px}.smx-category{display:flex;align-items:center;justify-content:space-between;text-decoration:none;color:inherit;width:100%;padding:16px 2px;border:0;border-bottom:1px solid #ddd;background:none;text-align:left;font-weight:800;font-size:16px}.smx-category[data-tone=sale]{color:#8b1e2d}.smx-category[data-tone=holiday]{color:#ac5000}.smx-category[data-tone=tee]{color:#0954ce}.smx-subpanel[hidden],.smx-deptpanel[hidden]{display:none!important}.smx-back{border:0;background:none;font-size:17px;font-weight:700;padding:14px 0}.smx-page.is-sport{background:#101010;color:white}.smx-muted{color:#808080}.smx-empty{background:#f0f0f0;padding:20px}.smx-button{background:#111;color:white;text-decoration:none;display:block;text-align:center;border-radius:40px;padding:14px;font-weight:700}.smx-products{display:flex;gap:12px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;padding-bottom:8px}.smx-products>*{flex:0 0 62%;scroll-snap-align:start;min-width:0}.smx-products img{width:100%;aspect-ratio:3/4;object-fit:cover}.smx-card a{color:inherit;text-decoration:none}.smx-cardtitle{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:14px}.smx-price{color:#a82230;font-weight:700}.smx-lists{display:grid;grid-template-columns:1fr 1fr;gap:12px}.smx-listcard{min-height:190px;border:1px solid #ddd;border-radius:15px;padding:16px;background:#fff;text-align:left;font-weight:650}.smx-group{border:1px solid #ddd;border-radius:15px;overflow:hidden;margin:12px 0 26px}.smx-setting{display:flex;justify-content:space-between;gap:15px;padding:16px;border-bottom:1px solid #ddd;color:inherit;text-decoration:none}.smx-setting:last-child{border-bottom:0}.smx-order{padding:18px;border:1px solid #ddd;border-radius:16px;margin:10px 0}.smx-bottom{position:fixed;bottom:0;left:0;right:0;z-index:9999;background:#fff;border-top:1px solid #ddd;display:flex;justify-content:space-around;align-items:center;padding:8px 0 max(10px,env(safe-area-inset-bottom))}.smx-bottom a{width:20%;display:flex;flex-direction:column;align-items:center;gap:3px;font-size:11px;text-decoration:none;color:#888}.smx-bottom a[aria-current=page]{color:#111;font-weight:700}.smx-bottom svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.8}.smx-fav{border:1px solid #ddd;background:#fff;border-radius:50%;font-size:22px}.smx-screen .sapa-bottom-nav,.smx-screen .sapa-mobile-bottom-nav{display:none!important}@media(min-width:900px){.smx-page{max-width:680px;margin:auto}.smx-bottom{max-width:680px;margin:auto}}
/* Hide only the old theme bars on dedicated shopping screens. */
body.smx-route .sapa-bottom-nav,body.smx-route .sapa-mobile-bottom-nav,body.smx-route .sapa-department-bottom-tabs{display:none!important}

/* v2.0.33: one dock on all public pages, including Shop/Bag/Wishlist/Me. */
body .smx-bottom { display:none !important; }
body .smx-screen .sapa-mobile-dock {display:grid !important;}
@media(max-width:767px) {
  html body .sapa-mobile-dock {display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;position:fixed!important;bottom:0!important;left:0!important;right:0!important;width:100%!important;z-index:100000!important;}
  html body.smx-route .sapa-mobile-dock {display:grid!important;}
}

/* v2.0.34: one public 5-tab dock and a real full-height Shop screen. */
@media(max-width:767px){
 body .smx-page {min-height:calc(100dvh - 160px);padding-bottom:calc(110px + env(safe-area-inset-bottom,0px));}
 body .smx-bag-title {text-align:center;font-size:24px;margin:10px 0 24px;}
 body .smx-empty {background:#f0f0f0;padding:25px 20px;margin:14px 0 24px;}
 body .smx-empty h2 {font-size:22px;margin:0 0 18px;}
 body .smx-bag-discover a {color:#111;}
 body .smx-depts {position:sticky;top:0;z-index:10;background:#fff;touch-action:pan-x;}
 body .smx-menu-list {min-height:55dvh;}
 body .smx-products {touch-action:pan-x;}
}

/* V2.0.35: One shared header; product rails remain independently scrollable. */
body.page-template-page-shop-menu .smx-page{padding-top:4px}
.smx-rail-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}
.smx-rail-heading h2{margin-bottom:15px}.smx-rail-heading a{color:#111;font-weight:650;text-decoration:underline;font-size:13px}
.smx-products{scroll-behavior:smooth;overscroll-behavior-x:contain;touch-action:pan-x;}
.smx-products .smx-card{flex:0 0 65%;max-width:65%}
@media(min-width:620px){.smx-products .smx-card{flex-basis:31%;max-width:31%}}

/* V2.0.36: deliberate carousel densities. 2.3 visible cards on Bag/Me, 2 on Wishlist. */
@media (max-width:619px){
 body .smx-screen .smx-products .smx-card{flex:0 0 calc((100% - 24px)/2.3);max-width:calc((100% - 24px)/2.3);}
 body .smx-screen:has(.smx-lists) .smx-products .smx-card{flex:0 0 calc((100% - 12px)/2);max-width:calc((100% - 12px)/2);}
 body.page-template-page-me .smx-products .smx-card,body:has(.smx-page .smx-order) .smx-products .smx-card{flex:0 0 calc((100% - 24px)/2.3);max-width:calc((100% - 24px)/2.3);}
 body.page-template-page-wishlist .smx-products .smx-card{flex:0 0 calc((100% - 12px)/2);max-width:calc((100% - 12px)/2);}
}

@media(max-width:619px){
 body.smx-route-me .smx-screen .smx-products .smx-card{flex-basis:calc((100% - 24px)/2.3);max-width:calc((100% - 24px)/2.3)}
 body.smx-route-wishlist .smx-screen .smx-products .smx-card{flex-basis:calc((100% - 12px)/2);max-width:calc((100% - 12px)/2)}
}

/* V2.0.37: subcategory-first collection navigation */
.smx-subheading{font-size:15px!important;letter-spacing:.05em;margin:20px 0 4px!important}
.sapa-subcategory-rail{padding:10px 16px 16px;max-width:1200px;margin:0 auto}
.sapa-subcategory-rail h2{font-size:17px;font-weight:800;margin:4px 0 12px;white-space:nowrap}
.sapa-subcategory-scroll{display:flex;overflow-x:auto;gap:10px;scroll-snap-type:x proximity;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none}
.sapa-subcategory-scroll a{display:inline-flex;align-items:center;gap:12px;flex:0 0 auto;scroll-snap-align:start;color:#111;text-decoration:none;border:1px solid #ddd;border-radius:28px;padding:12px 16px;font-size:14px;font-weight:650}
.sapa-subcategory-scroll a span{font-size:19px}

/* V2.0.38 — shared, readable collection header for campaigns, promotions and categories.
   Intentionally does not change Shop by Brand or Shop by Category landing layouts. */
@media (max-width:767px) {
  body:not(.single-product) .sapa-collection-heading {
    display: grid !important;
    grid-template-columns: 30px minmax(0, 1fr) auto auto !important;
    align-items: center !important;
    column-gap: 8px !important;
    min-height: 70px !important;
    padding: 10px 12px !important;
  }
  body:not(.single-product) .sapa-collection-heading h1 {
    display: block !important;
    font-size: clamp(16px, 4.35vw, 21px) !important;
    line-height: 1.05 !important;
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    overflow-wrap: break-word !important;
    letter-spacing: -.025em !important;
  }
  body:not(.single-product) .sapa-collection-heading h1 .sapa-title-context {
    display: block !important;
    white-space: normal !important;
    overflow: visible !important;
    max-height: none !important;
    -webkit-line-clamp: unset !important;
  }
  body:not(.single-product) .sapa-collection-heading > p {
    font-size: 12px !important;
    white-space: nowrap !important;
  }
  body:not(.single-product) .sapa-collection-search input::placeholder {
    color: #777;
    opacity: 1;
  }
}

/* 2.0.40: Approved mobile merchandising and variation controls. */
@media (max-width: 767px) {
 .sapa-latest .sapa-product-results ul.products { display: grid !important; grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
 .sapa-latest .sapa-product-results ul.products > li.product:nth-child(n+17) { display: none !important; }
 .sapa-department .sapa-recent > ul.products.sapa-recent-rail { grid-auto-columns: calc((100% - 10px) / 1.4) !important; gap: 10px !important; }
 .single-product .variations_form .sapa-variation-colors { display:flex !important; flex-flow:row nowrap !important; overflow-x:auto !important; scroll-snap-type:x proximity; gap:10px !important; padding:5px 3px 10px; -webkit-overflow-scrolling:touch; }
 .single-product .variations_form .sapa-variation-colors > button { flex:0 0 auto !important; scroll-snap-align:start; }
 .single-product .variations_form .sapa-variation-colors.is-collapsed .sapa-variation-color:nth-child(n+5) { display:grid !important; }
 .single-product .variations_form .sapa-variation-colors .sapa-color-expand { display:none !important; }
}

/* 2.0.41: one consistent named-card Recently Viewed rail across departments. */
.sapa-department .sapa-named-recent-track{display:flex;flex-wrap:nowrap;gap:12px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;padding:4px 0 12px;scrollbar-width:none}
.sapa-department .sapa-named-recent-track::-webkit-scrollbar{display:none}
.sapa-department .sapa-named-recent-card{box-sizing:border-box;flex:0 0 calc((100% - 12px)/2.15);min-width:0;scroll-snap-align:start;border:1px solid #e8e8e8;border-radius:10px;overflow:hidden;background:#fff}
.sapa-department .sapa-named-recent-link{display:block;color:#151515;text-decoration:none}
.sapa-department .sapa-named-recent-link img{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:cover}
.sapa-department .sapa-named-recent-title{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.7em;margin:9px 10px 2px;font-weight:650;font-size:14px;line-height:1.35}
.sapa-department .sapa-named-recent-price{padding:3px 10px 12px;font-weight:700;font-size:15px}
.sapa-department .sapa-named-recent-price del{font-size:.8em;color:#888;font-weight:400}
@media(min-width:768px){.sapa-department .sapa-named-recent-card{flex-basis:calc((100% - 48px)/5)}}

/* 2.0.42: unified product controls; no payment or checkout behavior changed. */
@media (max-width:767px) {
  .single-product form.variations_form .sapa-variation-buttons:not(.sapa-variation-colors) { display:flex!important;flex-wrap:wrap!important;gap:10px!important; }
  .single-product form.variations_form .sapa-variation-buttons:not(.sapa-variation-colors) > button { width:auto!important;min-width:54px!important;min-height:48px!important;padding:8px 13px!important;white-space:nowrap!important;flex:0 0 auto!important; }
  .single-product form.variations_form .sapa-variation-colors { display:flex!important;flex-wrap:nowrap!important;align-items:center!important;gap:12px!important;overflow-x:auto!important;overflow-y:hidden!important;width:100%!important;max-width:100%!important;scrollbar-width:none!important; }
  .single-product form.variations_form .sapa-variation-colors > button.sapa-variation-color { flex:0 0 44px!important;width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important; }
  .single-product .variations_form .woocommerce-variation-price, .single-product .variations_form .woocommerce-variation-price .price {display:none!important;}
  .single-product .sapa-purchase-dock {position:fixed!important;bottom:var(--sapa-bottom-nav-height, 76px)!important;left:0!important;right:0!important;z-index:1500!important;box-shadow:0 -2px 10px rgba(0,0,0,.06)!important;}
  .single-product .sapa-purchase-dock.has-express {grid-template-columns:minmax(0,1fr) minmax(0,1fr) 48px!important;}
  .single-product .sapa-purchase-dock:not(.has-express) {grid-template-columns:minmax(0,1fr) 48px!important;}
  .single-product .sapa-purchase-dock .sapa-cart-slot,.single-product .sapa-purchase-dock .sapa-express-slot {height:auto!important;min-height:48px!important;overflow:visible!important;}
  .single-product .sapa-purchase-dock .single_add_to_cart_button {height:52px!important;min-height:52px!important;font-size:14px!important;}
  .single-product .sapa-purchase-dock .sapa-dock-wishlist {width:48px!important;height:48px!important;max-width:48px!important;border-radius:50%!important;}
  .single-product .sapa-title-rating {flex-wrap:wrap;}
  .single-product .sapa-title-rating .sapa-review-summary-link {display:inline-flex;align-items:center;color:#111;text-decoration:underline;font-size:12px;white-space:nowrap;}
}

/* 2.0.44 — consistent compact merchandise cards and product purchase controls. */
@media (max-width:767px) {
  .sapa-department .sapa-named-recent-track { gap:1px!important; padding:0 0 2px!important; background:#e6e6e6; }
  .sapa-department .sapa-named-recent-card { flex:0 0 calc((100% - 1px)/2)!important; border:0!important; border-radius:0!important; }
  .sapa-department .sapa-named-recent-link img { aspect-ratio:3/4!important; object-fit:cover!important; }
  .sapa-department .sapa-named-recent-title { min-height:2.7em!important; }
  .woocommerce ul.products { gap:1px!important; column-gap:1px!important; row-gap:1px!important; }
  .woocommerce ul.products li.product { min-width:0; }
  .single-product .variations_form .sapa-variation-colors { display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;gap:8px!important;overflow-x:auto!important; }
  .single-product .variations_form .sapa-variation-colors .sapa-variation-color { flex:0 0 44px!important;width:44px!important;height:44px!important;margin:0!important; }
  .single-product .sapa-purchase-dock { display:grid!important; align-items:center!important; column-gap:8px!important; padding:8px 10px!important;box-sizing:border-box!important; }
  .single-product .sapa-purchase-dock.has-express { grid-template-columns:minmax(0,1fr) minmax(0,1fr) 48px!important; }
  .single-product .sapa-purchase-dock:not(.has-express) { grid-template-columns:minmax(0,1fr) 48px!important; }
  .single-product .sapa-purchase-dock .sapa-express-slot,.single-product .sapa-purchase-dock .sapa-cart-slot { min-width:0!important;width:100%!important;max-width:100%!important;margin:0!important; }
  .single-product .sapa-purchase-dock .single_add_to_cart_button { width:100%!important;max-width:100%!important;margin:0!important;white-space:nowrap!important;font-size:13px!important;background:#000!important;color:#fff!important; }
  .single-product .sapa-purchase-dock .sapa-dock-wishlist { width:48px!important; }
}

/* V2.0.45 – approved product detail layout. Scoped to WooCommerce single products. */
@media (min-width: 768px) {
 body.single-product .woocommerce div.product { display:grid!important; grid-template-columns:minmax(0,58%) minmax(0,42%)!important; column-gap:0!important; align-items:start!important; }
 body.single-product .woocommerce div.product > .sapa-native-gallery { grid-column:1!important; grid-row:1!important; display:grid!important; grid-template-columns:78px minmax(0,1fr); gap:10px; overflow:visible!important; background:#fff!important; }
 body.single-product .sapa-native-gallery__track { grid-column:2!important;grid-row:1!important; min-width:0; }
 body.single-product .sapa-native-gallery__thumbs { grid-column:1!important;grid-row:1!important; display:flex!important;flex-direction:column!important;gap:8px!important;padding:0!important;align-self:start; }
 body.single-product .sapa-native-gallery__thumbs button { width:100%!important;flex:none; }
 body.single-product .sapa-native-gallery__dots { display:none!important; }
 body.single-product .sapa-native-gallery .sapa-gallery-actions { left:auto!important;right:12px!important;bottom:12px!important; }
 body.single-product .woocommerce div.product > .summary { grid-column:2!important;grid-row:1 / span 2!important;position:static!important;width:auto!important;min-width:0;padding:4px 24px 28px!important; }
 body.single-product .summary .sapa-similar, body.single-product .summary .sapa-style-section { padding:22px 0!important;border-top:1px solid #ddd;border-bottom:0!important;max-width:100%;overflow:hidden; }
 body.single-product .summary .sapa-similar h2, body.single-product .summary .sapa-style-section h2 { font-size:17px!important; margin:0 0 12px!important; }
 body.single-product .summary .sapa-similar-thumbs { display:flex!important;gap:5px!important;overflow-x:auto!important; }
 body.single-product .summary .sapa-similar-thumbs a { flex:0 0 23%;min-width:0; }
 body.single-product .summary .sapa-similar-thumbs img { width:100%;aspect-ratio:3/4;object-fit:cover; }
 body.single-product .summary ul.products.sapa-style-rail { display:flex!important;gap:6px!important;overflow-x:auto!important;max-width:100%!important; }
 body.single-product .summary ul.products.sapa-style-rail > li.product { flex:0 0 45%!important;width:45%!important;min-width:0!important; }
 body.single-product .sapa-more-products.sapa-below-gallery { grid-column:1!important;grid-row:2!important;min-width:0;padding:22px 0!important;border:0!important; }
 body.single-product .sapa-more-products.sapa-below-gallery h2 { font-size:19px!important;margin-bottom:12px!important; }
 body.single-product .sapa-more-products.sapa-below-gallery ul.products {display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:0!important;}
 body.single-product .sapa-more-products.sapa-below-gallery li.product {width:100%!important;min-width:0!important;margin:0!important;}
 body.single-product .sapa-pdp-discovery:empty { display:none!important; }
}
@media (max-width:767px) {
 body.single-product .sapa-purchase-dock.has-express { display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 44px!important;gap:6px!important;padding:6px 8px!important; }
 body.single-product .sapa-purchase-dock .sapa-express-slot,body.single-product .sapa-purchase-dock .sapa-cart-slot {min-width:0!important;max-width:100%!important;overflow:visible!important;}
 body.single-product .sapa-purchase-dock.has-express .single_add_to_cart_button {padding:0 6px!important;white-space:nowrap!important;font-size:12px!important;min-height:46px!important;height:46px!important;border-radius:24px!important;}
 body.single-product .sapa-purchase-dock .sapa-dock-wishlist {width:44px!important;height:46px!important;max-width:44px!important;min-width:0!important;}
 body.single-product .sapa-purchase-dock [data-sapa-express-slot] {background:#fff!important;color:#111!important;border-radius:24px!important;}
 body.single-product .sapa-purchase-dock:not(.has-express) {grid-template-columns:minmax(0,1fr) 44px!important;}
}

/* V2.0.46 — one recently viewed strip, department context inherited from PHP. */
@media (min-width:768px) {
  .sapa-department .sapa-recent { display:none!important; }
  body.single-product .woocommerce div.product > .sapa-native-gallery {grid-template-columns:68px minmax(0,1fr)!important;gap:8px!important;}
  body.single-product .woocommerce div.product > .summary {padding:4px 16px 20px!important;}
  body.single-product .summary .sapa-similar,
  body.single-product .summary .sapa-style-section {padding:12px 0!important;}
  body.single-product .sapa-more-products.sapa-below-gallery {padding:8px 0!important;}
  body.single-product .sapa-more-products.sapa-below-gallery ul.products{gap:1px!important;}
}
@media (max-width:767px) {
  .sapa-department .sapa-recent .sapa-named-recent-track {display:flex!important;flex-wrap:nowrap!important;overflow-x:auto!important;overflow-y:hidden!important;scroll-snap-type:x mandatory!important;gap:6px!important;touch-action:pan-x!important;-webkit-overflow-scrolling:touch!important;padding:0 0 8px!important;}
  .sapa-department .sapa-recent .sapa-named-recent-card {display:block!important;flex:0 0 calc((100% - 12px)/2.3)!important;width:calc((100% - 12px)/2.3)!important;max-width:none!important;min-width:0!important;scroll-snap-align:start!important;}
  .sapa-department .sapa-recent .sapa-named-recent-link img {width:100%!important;aspect-ratio:3/4!important;object-fit:cover!important;}
  body.single-product .sapa-more-products .sapa-section-heading h2 {white-space:nowrap!important;font-size:clamp(13px,3.7vw,18px)!important;letter-spacing:-.03em!important;}
  body.single-product .sapa-purchase-dock {box-sizing:border-box!important;width:100%!important;gap:6px!important;}
  body.single-product .sapa-purchase-dock.has-express {grid-template-columns:minmax(0,1fr) minmax(0,1fr) 44px!important;}
  body.single-product .sapa-purchase-dock.has-express .sapa-cart-slot,body.single-product .sapa-purchase-dock.has-express .sapa-express-slot{flex:initial!important;width:auto!important;min-width:0!important;}
  body.single-product .sapa-purchase-dock .sapa-cart-slot button.single_add_to_cart_button {font-size:12px!important;min-width:0!important;width:100%!important;padding:0 5px!important;}
  body.single-product .sapa-purchase-dock .sapa-express-slot > *{max-width:100%!important;margin:0!important;}
}
/* Keep real WooCommerce product names/prices visible throughout all product lists. */
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product .price,
.sapa-pdp-discovery ul.products li.product .woocommerce-loop-product__title,
.sapa-pdp-discovery ul.products li.product .price {display:block!important;visibility:visible!important;opacity:1!important;}

/* SAPASPUR 2.0.47: final department/mobile rails and active navigation. */
.sapa-departments .current-menu-item a::after {background:#3b3b3b!important;opacity:1!important;transform:scaleX(1)!important;height:3px!important;}
.sapa-department-catalog .sapa-filter-tabs>a.is-active {background:#383838!important;color:#fff!important;border:1px solid #383838!important;border-radius:999px!important;text-decoration:none!important;box-shadow:none!important;}
.sapa-department-catalog .sapa-filter-tabs>a:not(.is-active){background:#fff!important;color:#222!important;}
@media(min-width:768px){.sapa-department .sapa-named-recent{display:none!important;}}
@media(max-width:767px){
 .sapa-department .sapa-named-recent{display:block!important;overflow:hidden!important;max-width:100vw!important;}
 .sapa-department .sapa-named-recent .sapa-named-recent-track{display:flex!important;flex-flow:row nowrap!important;grid-template-columns:none!important;overflow-x:auto!important;overflow-y:hidden!important;overscroll-behavior-inline:contain!important;scroll-snap-type:x mandatory!important;scrollbar-width:none!important;touch-action:pan-x!important;gap:6px!important;width:100%!important;max-width:100%!important;min-width:0!important;}
 .sapa-department .sapa-named-recent .sapa-named-recent-track::-webkit-scrollbar{display:none!important;}
 .sapa-department .sapa-named-recent .sapa-named-recent-card{box-sizing:border-box!important;flex:0 0 calc((100% - 12px)/2.3)!important;min-width:0!important;max-width:calc((100% - 12px)/2.3)!important;width:calc((100% - 12px)/2.3)!important;scroll-snap-align:start!important;}
 .sapa-department .sapa-named-recent .sapa-named-recent-title{display:-webkit-box!important;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.25;min-height:2.5em;}
 body.single-product .sapa-purchase-dock.has-express{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 42px!important;gap:5px!important;box-sizing:border-box!important;padding-inline:6px!important;}
 body.single-product .sapa-purchase-dock.has-express [data-sapa-express-slot],body.single-product .sapa-purchase-dock.has-express [data-sapa-cart-slot]{width:100%!important;max-width:100%!important;min-width:0!important;}
 body.single-product .sapa-purchase-dock.has-express .single_add_to_cart_button{width:100%!important;min-width:0!important;font-size:12px!important;padding-inline:3px!important;background:#000!important;color:#fff!important;}
 body.single-product .sapa-purchase-dock.has-express .sapa-dock-wishlist{width:42px!important;min-width:42px!important;max-width:42px!important;}
}

/* SAPASPUR 2.0.50 — compact bag-plus quick add (no text overlay). */
.woocommerce ul.products li.product { position:relative !important; }
.woocommerce ul.products li.product a.button,
.woocommerce ul.products li.product a.button:hover,
.sapa-collection-products ul.products li.product a.button {
  position:absolute !important; z-index:12 !important;
  top:calc(150cqw - 54px) !important; bottom:auto !important;
  right:10px !important; left:auto !important;
  width:44px !important; height:44px !important; min-height:44px !important;
  box-sizing:border-box !important; border-radius:50% !important;
  border:0 !important; padding:0 !important; margin:0 !important;
  display:flex !important; align-items:center !important; justify-content:center !important;
  background:#fff !important; color:transparent !important;
  font-size:0 !important; line-height:0 !important; letter-spacing:0 !important;
  text-indent:-9999px !important; white-space:nowrap !important; overflow:hidden !important;
  box-shadow:0 2px 9px #0002 !important;
  opacity:1 !important; visibility:visible !important; transform:none !important;
  transition:box-shadow .18s ease !important;
}
.woocommerce ul.products li.product a.button::before,
.sapa-collection-products ul.products li.product a.button::before {
  content:"" !important; display:block !important;
  position:absolute !important; width:25px !important; height:25px !important;
  left:50% !important; top:50% !important; transform:translate(-50%,-50%) !important;
  background:center/contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23111' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 8h14l1 13H4L5 8Z'/%3E%3Cpath d='M9 9V6a3 3 0 0 1 6 0v3'/%3E%3Cpath d='M12 13v6M9 16h6'/%3E%3C/svg%3E") !important;
}
.woocommerce ul.products li.product a.button::after {display:none !important;}
.woocommerce ul.products li.product .sapa-v2049-heart {
  top:8px !important; right:8px !important; width:34px !important; height:34px !important;
  border-radius:50%; background:#fff; box-shadow:0 1px 5px #0002;
}
.woocommerce ul.products li.product .sapa-v2049-heart svg {fill:none !important;}
@media (prefers-reduced-motion:reduce) {
  .woocommerce ul.products li.product a.button {transition:none !important;}
}

/* v2.0.51: Department context and unique collection title. */
.sapa-collection-title-stack{min-width:0;display:flex;flex-direction:column;gap:2px;flex:1}
.sapa-collection-title-stack h1{margin:0;line-height:1.12;overflow-wrap:anywhere}
.sapa-collection-department{font-size:10px;font-weight:700;letter-spacing:.11em;line-height:1.2;color:#666;text-transform:uppercase}

/* v2.0.54: Collection titles wrap cleanly, never beyond two lines. */
.sapa-collection-title-stack h1{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;overflow-wrap:normal;word-break:normal;max-width:100%;}

/* v2.0.56: shared account bag icon and authentic favorites list */
.sapa-account-bag-icon{width:20px;height:20px;vertical-align:middle;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linejoin:round;stroke-linecap:round}
.smx-route-wishlist #sapa-wishlist-products{min-height:160px}

/* v2.0.57: one Favorites screen, no legacy list-builder or extra empty-state panel. */
body.sapa-wishlist-page .sapa-wishlist-page-cards,
body.smx-route-wishlist .sapa-wishlist-page-cards,
body.smx-route-wishlist .sapa-wishlist-cards,
body.smx-route-wishlist .smx-lists {display:none!important}
body.smx-route-wishlist .smx-page {background:#fff;color:#111}
body.smx-route-wishlist .smx-recent {margin-top:24px}
body.smx-route-bag .smx-recent {margin-top:22px}
body.smx-route-bag .smx-recent + .smx-for-you {margin-top:24px}

/* 2.0.58: Bag, Wishlist and Favorites reference layouts */
body.smx-route-bag .smx-page{padding-top:0}
.sapa-bag-promo{background:#050505;color:#fff;text-align:center;padding:19px 10px 17px;margin:0 -16px 20px;display:flex;flex-direction:column;gap:7px}
.sapa-bag-promo strong{font-size:clamp(14px,4vw,20px);letter-spacing:.01em}
.sapa-bag-promo a{color:#fff;text-decoration:underline;font-weight:650}
body.smx-route-bag .smx-bag-title{text-align:center;font-size:26px;margin:15px 0 22px}
body.smx-route-bag .smx-empty{padding:17px 20px;background:#f0f0f0;margin:0 0 24px}
body.smx-route-bag .smx-empty .smx-button{font-size:19px}
body.smx-route-bag .smx-recent{border-top:1px solid #e5e5e5;margin:24px -16px 0;padding:8px 16px 0}
body.smx-route-bag .smx-for-you{margin-top:24px}
body.smx-route-wishlist .smx-page{padding-top:4px}
.sapa-wishlist-title{text-align:center;font-size:28px!important;font-weight:900;margin:18px 0 24px!important}
.sapa-wishlist-intro{margin:0 0 15px}
.sapa-wishlist-intro h2{font-size:20px;margin:10px 0}
.sapa-wishlist-intro p{font-size:15px;line-height:1.55;margin:0 0 12px}
.sapa-list-tiles{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.sapa-list-tile{position:relative;border:1px solid #e3e3e3;border-radius:11px;min-height:235px;box-shadow:0 1px 4px #00000012;background:#fff;overflow:hidden;color:#111;text-decoration:none}
.sapa-list-main{display:flex;flex-direction:column;padding:10px 9px 14px;color:#111;text-decoration:none;height:100%}
.sapa-list-main strong,.sapa-new-list strong{font-size:18px;font-weight:750}
.sapa-list-main small{font-size:13px;color:#888}
.sapa-list-skeleton{height:154px;display:grid;grid-template-columns:3fr 1fr;grid-template-rows:repeat(3,1fr);gap:6px;margin-bottom:8px}
.sapa-list-skeleton i{background:#efefef;border-radius:5px}
.sapa-list-skeleton i:first-child{grid-row:span 3}
.sapa-list-menu{position:absolute;right:4px;bottom:24px;z-index:2}
.sapa-list-menu summary{list-style:none;font-size:25px;cursor:pointer;padding:0 6px}
.sapa-list-menu summary::-webkit-details-marker{display:none}
.sapa-list-menu a{position:absolute;bottom:35px;right:0;min-width:145px;background:#fff;box-shadow:0 2px 12px #0003;padding:12px;color:#111;text-decoration:none;font-size:13px}
.sapa-new-list{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:17px}
.sapa-new-list b{border:1px solid #e9e9e9;border-radius:50%;width:58px;height:58px;display:grid;place-items:center;font-size:38px;font-weight:300}
body.smx-route-wishlist .smx-recent{margin-top:28px}
.sapa-favorites-header{display:flex;align-items:center;gap:12px;margin:6px 0 25px}
.sapa-favorites-header h1{font-size:25px!important;font-weight:900;margin:0!important;flex:1}
.sapa-favorites-header>a{color:#111;text-decoration:none;border-radius:50%;background:#fafafa;padding:9px;font-size:22px}
.sapa-favorites-header>span{font-size:24px}
.sapa-favorites-empty{text-align:center;padding:20px 0}
.sapa-empty-illustration{height:170px;display:flex;align-items:center;justify-content:center;gap:8px;margin:10px 0 18px}
.sapa-empty-illustration span{display:block;background:#eee;border:1px solid #ddd;border-radius:5px;width:65px;height:95px}
.sapa-empty-illustration span:nth-child(2){height:125px;color:#a52a2a;font-size:65px;display:grid;place-items:center}
.sapa-favorites-empty h2{font-size:23px;margin:8px 0}
.sapa-favorites-empty p{line-height:1.6}
.sapa-favorites-empty .smx-button{margin:25px 0}
.sapa-popular{text-align:center;margin:25px 0}
.sapa-popular h2{font-size:19px;font-weight:450}
.sapa-popular>div{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}
.sapa-popular a{border:1px solid #ddd;border-radius:30px;padding:6px 12px;text-decoration:none;color:#111;font-size:14px}

/* 2.0.59: compact Me page, based on the account reference screen. */
body.smx-route-me .smx-page{padding-top:18px!important}
body.smx-route-me .sapa-me-account{font-family:system-ui,-apple-system,sans-serif;color:#111}
body.smx-route-me .sapa-me-top{position:relative;margin:0 0 28px;padding:4px 62px 0 0}
body.smx-route-me .sapa-me-top h1{font-family:inherit;font-size:clamp(22px,5.5vw,28px);font-weight:750;line-height:1.2;letter-spacing:0;margin:0 0 3px;overflow-wrap:anywhere}
body.smx-route-me .sapa-me-email{font-size:15px;line-height:1.4;color:#858585;margin:0;overflow-wrap:anywhere}
body.smx-route-me .sapa-me-bag{position:absolute;right:0;top:0;width:46px;height:46px;border-radius:50%;background:#fff;box-shadow:0 2px 12px #0000000d;display:flex;align-items:center;justify-content:center;color:#111;text-decoration:none}
body.smx-route-me .sapa-me-bag svg{width:24px;height:24px}
body.smx-route-me .sapa-me-section{margin:0 0 23px;padding:0}
body.smx-route-me .sapa-me-section h2{font-family:inherit;font-size:16px;line-height:1.3;font-weight:750;letter-spacing:0;margin:0 0 12px}
body.smx-route-me .sapa-me-heading{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin:0 0 12px}
body.smx-route-me .sapa-me-heading h2{margin:0}
body.smx-route-me .sapa-me-heading a{font-size:14px;line-height:1.3;font-weight:450;text-decoration:none;color:#111;white-space:nowrap}
body.smx-route-me .sapa-me-subtle{color:#898989;font-size:15px;line-height:1.4;margin:0}
body.smx-route-me .sapa-me-gifts h2{margin-bottom:9px}
body.smx-route-me .sapa-me-gifts{margin-bottom:24px}
body.smx-route-me .sapa-me-order{padding:14px;border:1px solid #e8e8e8;border-radius:14px;margin:10px 0}
body.smx-route-me .sapa-me-order p{margin:8px 0;color:#888}
body.smx-route-me .sapa-me-order a{color:#111}
body.smx-route-me .sapa-me-wishlists .sapa-list-tiles{gap:10px}
body.smx-route-me .sapa-me-wishlists .sapa-list-tile{min-height:215px}
body.smx-route-me .sapa-me-wishlists .sapa-list-skeleton{height:133px}
body.smx-route-me .sapa-me-wishlists .sapa-list-main strong,body.smx-route-me .sapa-me-wishlists .sapa-new-list strong{font-size:16px}
body.smx-route-me .sapa-me-links{margin-top:24px}
body.smx-route-me .sapa-me-links .smx-group{margin:10px 0 0}
body.smx-route-me .sapa-me-links .smx-setting{font-size:15px;padding:14px}
body.smx-route-me .sapa-me-signout{margin:20px 0}

/* v2.0.60: deterministic Bag/Wishlist/Me screen layout */
body.smx-route-bag .sapa-bag-promo{margin-bottom:14px;padding:14px 8px;gap:5px}
body.smx-route-bag .sapa-bag-promo strong{font-size:clamp(10px,3.05vw,17px);white-space:nowrap;letter-spacing:-.02em}
body.smx-route-bag .sapa-bag-promo a{font-size:14px}
body.smx-route-bag .smx-bag-title{margin:12px 0 16px}
body.smx-route-bag .smx-recent{margin-top:18px}
body.smx-route-bag .smx-for-you{margin-top:18px}
body.smx-route-me .sapa-me-top{margin-bottom:22px}
body.smx-route-me .sapa-me-section{margin-bottom:20px!important}
body.smx-route-me .sapa-me-section h2{margin-bottom:8px}
body.smx-route-me .sapa-me-gifts{margin-bottom:18px!important}
body.smx-route-me .sapa-me-gifts h2{margin-bottom:4px!important}
body.smx-route-me .sapa-me-wishlists{margin-top:0!important}
body.smx-route-me .sapa-me-order{display:grid;grid-template-columns:96px minmax(0,1fr);gap:12px;align-items:start;margin:8px 0;padding:12px;border:1px solid #eee;border-radius:14px}
body.smx-route-me .sapa-me-order-images{display:grid;grid-template-columns:1fr 1fr;gap:3px;width:96px}
body.smx-route-me .sapa-me-order-thumb{aspect-ratio:1;background:#f2f2f2;overflow:hidden;border-radius:3px}
body.smx-route-me .sapa-me-order-thumb img{width:100%;height:100%;object-fit:cover}
body.smx-route-me .sapa-me-order-info{min-width:0}
body.smx-route-me .sapa-me-order-info p{font-size:13px;margin:8px 0}
body.smx-route-me .sapa-me-order-status{display:inline-block;font-size:12px;color:#2e6532;background:#edf5eb;padding:4px 8px;border-radius:20px}
body.smx-route-me .sapa-me-order-info a{font-size:13px}
body.smx-route-me .sapa-me-wishlists .sapa-list-tile{min-height:215px}
body.smx-route-me .sapa-me-links{margin-top:0}
body.smx-route-me .sapa-me-links .smx-group{margin-top:6px}

/* 2.0.65: Wishlist uses the same approved white cards as the Me screen. */
body.smx-route-wishlist,body.smx-route-wishlist .smx-screen,body.smx-route-wishlist .smx-page{background:#fff!important;color:#111!important}
body.smx-route-wishlist .sapa-wishlist-nav{display:flex!important;align-items:center!important;justify-content:space-between!important;background:#fff!important;color:#111!important;border:0!important;padding:10px 0 18px!important}
body.smx-route-wishlist .sapa-wishlist-title{color:#111!important;font-size:28px!important;margin:0!important}
body.smx-route-wishlist .sapa-wishlist-back,body.smx-route-wishlist .sapa-wishlist-bag{color:#111!important;border-color:#ddd!important;background:#fff!important}
body.smx-route-wishlist .sapa-wishlist-bag svg{stroke:#111!important;fill:none!important}
body.smx-route-wishlist .sapa-list-tiles,body.smx-route-me .sapa-list-tiles{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:12px!important}
body.smx-route-wishlist .sapa-list-tile,body.smx-route-me .sapa-list-tile{background:#fff!important;color:#111!important;border:1px solid #e1e1e1!important;border-radius:14px!important;box-shadow:0 1px 5px #00000010!important;min-width:0!important}
body.smx-route-wishlist .sapa-list-main,body.smx-route-wishlist .sapa-list-main strong,body.smx-route-wishlist .sapa-new-list,body.smx-route-wishlist .sapa-new-list strong{color:#111!important}
body.smx-route-wishlist .smx-recent,body.smx-route-wishlist .smx-rail-heading,body.smx-route-wishlist .smx-rail-heading h2{background:#fff!important;color:#111!important}
body.smx-route-wishlist .sapa-list-skeleton i{background:#efefef!important}
body.smx-route-bag #smx-main > .smx-card,body.smx-route-bag #smx-main > .smx-products{display:none!important}
@media(max-width:380px){body.smx-route-wishlist .sapa-list-tiles,body.smx-route-me .sapa-list-tiles{gap:9px!important}body.smx-route-wishlist .sapa-list-main strong,body.smx-route-me .sapa-list-main strong{font-size:16px!important}}

/* v2.0.66: exactly one color picker per attribute; native WooCommerce select remains functional. */
.single-product .sapa-single-color-picker .variable-items-wrapper,
.single-product .sapa-single-color-picker .woo-variation-swatches,
.single-product .sapa-single-color-picker .cfvsw-swatches-container,
.single-product .sapa-single-color-picker .wvs-archive-variation-wrapper,
.single-product .sapa-single-color-picker .tawcvs-swatches { display:none !important; }
.single-product .sapa-single-color-picker .sapa-variation-colors { display:flex !important; }
/* Do not impose a white button on payment gateways: they render their own wallet UI. */
.single-product #wc-stripe-payment-request-wrapper,
.single-product #wcpay-payment-request-wrapper,
.single-product .wcpay-express-checkout-wrapper { visibility:visible; }
