/* XSample styles — live 2026-07-31e */
/* Bottega-like grotesque: Helvetica Neue system stack */

/* Xsample site typography */
:root {
  --font-serif: "Helvetica Neue", Helvetica, Arial, sans-serif;
  --font-sans: "Helvetica Neue", Helvetica, Arial, sans-serif;
  --color-ink: #000000;
  --ls-body: -0.20px;
  --ls-heading: -0.40px;
  --ls-heading-lg: -0.70px;
  --ls-nav: 0.5px;
  --lh: 1.35;
  --lh-tight: 1.35;
  --link-line-duration: 0.45s;
  --link-line-ease: cubic-bezier(0.25, 1, 0.5, 1);
}

html {
  overflow-x: clip;
  overflow-y: scroll;
  overscroll-behavior: none;
  overscroll-behavior-y: none;
  overscroll-behavior-x: none;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
  height: 100%;
}

html,
body,
#root {
  font-family: var(--font-sans);
  color: var(--color-ink);
  font-size: 13px;
  line-height: var(--lh);
  letter-spacing: var(--ls-body);
  -webkit-font-smoothing: auto;
  -moz-osx-font-smoothing: auto;
}

body {
  overflow-x: clip;
  overflow-y: visible;
  overscroll-behavior: none;
  overscroll-behavior-y: none;
  overscroll-behavior-x: none;
  -webkit-overflow-scrolling: touch;
  width: 100%;
  max-width: 100%;
  min-height: 100%;
  height: auto;
  position: relative;
}

/* Allow intentional scroll locks (cookies, search, newsletter, modals) */
body.overflow-hidden:not(.site-search-open):not(.site-modal-open):not(.cookie-pending):not(.cookie-settings-open):not(.newsletter-open) {
  overflow: visible !important;
}
html.cookie-pending,
html.cookie-settings-open,
html.cookie-pending body,
html.cookie-settings-open body,
body.cookie-pending,
body.cookie-settings-open {
  overflow: hidden !important;
}

/* Allow intentional horizontal carousels without page shake */
.no-scrollbar,
.overflow-x-auto {
  overscroll-behavior-x: contain;
  touch-action: pan-x pan-y;
}

@media (min-width: 768px) {
  html,
  body,
  #root {
    font-size: 14px;
  }
}

p,
li,
label,
td,
th,
.site-body,
.page-404__text,
.site-search__empty,
.site-search__help,
.site-search__list-link,
.site-search__result-title,
.site-search__most-label {
  font-size: inherit;
  letter-spacing: var(--ls-body);
  line-height: var(--lh);
  color: var(--color-ink);
}
.site-search__input {
  font-size: 14px;
  letter-spacing: -0.20px;
  line-height: 1.35;
  text-transform: uppercase;
  color: var(--color-ink);
}

/* Inputs: compact form size sitewide (12 / 13) — not body 14. Search excluded. */
input:not(.site-search__input),
select,
textarea {
  /* font-size overridden by ce */
  letter-spacing: var(--ls-body);
  line-height: var(--lh);
  font-family: var(--font-sans);
}

/* Lock page when search open */
body.site-search-open {
  overflow: hidden !important;
  overscroll-behavior: none;
  touch-action: none;
}

p {
  letter-spacing: var(--ls-body);
  line-height: var(--lh);
  color: var(--color-ink);
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: var(--font-sans);
  font-weight: 500;
  color: var(--color-ink);
  line-height: var(--lh);
  letter-spacing: -0.20px;
}

/* Header nav — sentence case, no all-caps */
.site-header,
header.site-header {
  font-family: var(--font-sans);
}

.site-nav__link {
  font-family: var(--font-sans) !important;
  font-size: 14px !important;
  font-weight: 500;
  letter-spacing: -0.20px !important;
  text-transform: none;
  color: #000 !important;
  line-height: 1.35;
}

.site-promo {
  position: relative;
  background: #000;
  color: #fff;
  text-align: center;
  font-size: 9px;
  font-weight: 500;
  letter-spacing: var(--ls-body);
  line-height: 1.35;
  padding: 0.65rem 2.75rem;
  font-family: var(--font-sans);
}

.site-promo__label {
  display: inline;
  white-space: nowrap;
  line-height: 1.35;
  letter-spacing: var(--ls-body);
  font-family: var(--font-sans);
}

.site-promo__close {
  position: absolute;
  right: max(2px, calc(0.4rem - 10px));
  top: 50%;
  transform: translateY(-50%);
  width: 28px;
  height: 28px;
  padding: 0;
  margin: 0;
  border: 0;
  background: transparent;
  color: #fff;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 6px;
  outline: none;
  transition: opacity 0.15s ease, background-color 0.15s ease;
}

.site-promo__close:hover,
.site-promo__close:focus-visible {
  opacity: 1;
  background: transparent;
}

.site-promo__close-icon {
  position: relative;
  width: 17px;
  height: 17px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transform-origin: 50% 50%;
}

.site-promo__close-icon svg {
  width: 17px;
  height: 17px;
  display: block;
  stroke: currentColor;
  stroke-width: 2;
  fill: none;
}

@media (min-width: 768px) {
  .site-promo__close {
    right: max(2px, calc(0.55rem - 10px));
  }
}

.header-utils {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 1.375rem;
  flex-shrink: 0;
}

@media (min-width: 768px) {
  .header-utils {
    width: 220px;
    gap: 1.625rem;
  }
}

.header-util {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.25rem;
  height: 1.25rem;
  padding: 0;
  margin: 0;
  border: 0;
  background: transparent;
  flex-shrink: 0;
  color: #000;
  cursor: pointer;
  transition: opacity 0.2s ease;
}

.header-util:hover:not(.header-util--menu),
.header-util:focus-visible:not(.header-util--menu) {
  opacity: 1;
}
.header-util--menu:hover {
  opacity: 1;
}

.header-util__icon {
  width: 1.25rem;
  height: 1.25rem;
  display: block;
  stroke: currentColor;
  fill: none;
  stroke-width: 1.8px;
  pointer-events: none;
}

/* Phone: desktop only */
.header-util--phone {
  display: none;
}

@media (min-width: 1024px) {
  .header-util--phone {
    display: inline-flex;
  }
}

/* Menu hamburger: mobile / tablet only — NEVER on desktop */
.header-util--menu {
  position: relative;
  display: inline-flex;
  margin-left: 0.15rem;
}

@media (min-width: 1024px) {
  .header-util--menu {
    display: none !important;
  }
}

.header-util--menu .header-util__icon {
  position: absolute;
  inset: 0;
  width: 1.25rem;
  height: 1.25rem;
  transition: opacity 0.2s ease;
  transform: none;
}

.header-util--menu .header-util__icon--open {
  transform: none;
  opacity: 1;
}

.header-util--menu .header-util__icon--close {
  transform: none;
  opacity: 0;
}

.header-util--menu.is-open .header-util__icon--open {
  transform: none;
  opacity: 0;
}

.header-util--menu.is-open .header-util__icon--close {
  transform: none;
  opacity: 1;
}

.site-logo {
  height: 22px;
  width: auto;
  object-fit: contain;
  display: block;
}

@media (min-width: 768px) {
  .site-logo {
    height: 26px;
  }
}


/* —— Cookie banner —— */
.cookie-banner {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 50;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 0.75rem;
  background: #fff;
  color: #000;
  border-top: 1px solid #000;
  box-shadow: none;
  padding: 0.75rem 1rem 0.875rem;
  transition: transform 0.5s ease;
}

@media (min-width: 768px) {
  .cookie-banner {
    flex-direction: row;
    align-items: flex-end;
    gap: 2.5rem;
    padding: 1.5rem 2rem 1.75rem;
  }
}

.cookie-banner__copy {
  color: #000;
  font-size: 10px !important;
  font-weight: 400;
  line-height: 1.35;
  letter-spacing: -0.20px;
}

@media (min-width: 768px) {
  .cookie-banner__copy {
    width: 66.666%;
    font-size: 11px !important;
    line-height: 1.35;
  }
}

.cookie-banner__more {
  display: none;
}

@media (min-width: 768px) {
  .cookie-banner__more {
    display: inline;
  }
}

.cookie-banner__copy a,
.cookie-banner__copy .link-line {
  color: #000 !important;
  text-decoration: none !important;
  opacity: 1 !important;
}

.cookie-banner__actions {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: 0.625rem;
}

@media (min-width: 768px) {
  .cookie-banner__actions {
    width: 33.333%;
    gap: 0.875rem;
    padding-bottom: 0.125rem;
  }
}

.cookie-banner__links {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  color: #000;
  font-size: 10px;
  font-weight: 500;
  letter-spacing: -0.20px;
  line-height: 1.35;
  text-transform: none;
}

@media (min-width: 768px) {
  .cookie-banner__links {
    justify-content: flex-end;
    gap: 1.75rem;
    font-size: 11px;
  }
}

.cookie-banner__link {
  position: relative;
  display: inline-block;
  color: #000 !important;
  border: 0 !important;
  background: none;
  padding: 0;
  border-bottom: 0 !important;
  line-height: 1.35;
  letter-spacing: -0.20px;
  cursor: pointer;
  text-decoration: none !important;
  opacity: 1 !important;
}

.cookie-banner__link::after {
  content: "" !important;
  display: block !important;
  position: absolute;
  left: 0;
  bottom: -1px;
  width: 100%;
  height: 1px;
  background-color: currentColor;
  transform: scaleX(0);
  transform-origin: 100%;
  transition: transform var(--link-line-duration, 0.55s) cubic-bezier(0.25, 1, 0.5, 1);
  pointer-events: none;
}

.cookie-banner__link:hover,
.cookie-banner__link:focus-visible {
  opacity: 1 !important;
  color: #000 !important;
}

.cookie-banner__link:hover::after,
.cookie-banner__link:focus-visible::after {
  transform: scaleX(1);
  transform-origin: 0%;
}

.cookie-banner__accept {
  width: 100%;
  background: #000;
  color: #fff;
  border: 0;
  padding: 0.65rem 0.875rem;
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.15em;
  line-height: 1.35;
  text-transform: uppercase;
  cursor: pointer;
  transition: opacity 0.2s ease;
}

@media (min-width: 768px) {
  .cookie-banner__accept {
    padding: 0.875rem 1rem;
  }
}

.cookie-banner__accept:hover {
  background: #000;
  opacity: 0.88;
}

.cookie-overlay {
  background: rgba(0, 0, 0, 0.08);
}

/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */@layer properties {
  @supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))) {
    *,:before,:after,::backdrop {
      --tw-translate-x:0;
      --tw-translate-y:0;
      --tw-translate-z:0;
      --tw-scale-x:1;
      --tw-scale-y:1;
      --tw-scale-z:1;
      --tw-rotate-x:initial;
      --tw-rotate-y:initial;
      --tw-rotate-z:initial;
      --tw-skew-x:initial;
      --tw-skew-y:initial;
      --tw-scroll-snap-strictness:proximity;
      --tw-border-style:solid;
      --tw-gradient-position:initial;
      --tw-gradient-from:#0000;
      --tw-gradient-via:#0000;
      --tw-gradient-to:#0000;
      --tw-gradient-stops:initial;
      --tw-gradient-via-stops:initial;
      --tw-gradient-from-position:0%;
      --tw-gradient-via-position:50%;
      --tw-gradient-to-position:100%;
      --tw-leading:initial;
      --tw-font-weight:initial;
      --tw-tracking:initial;
      --tw-shadow:0 0 #0000;
      --tw-shadow-color:initial;
      --tw-shadow-alpha:100%;
      --tw-inset-shadow:0 0 #0000;
      --tw-inset-shadow-color:initial;
      --tw-inset-shadow-alpha:100%;
      --tw-ring-color:initial;
      --tw-ring-shadow:0 0 #0000;
      --tw-inset-ring-color:initial;
      --tw-inset-ring-shadow:0 0 #0000;
      --tw-ring-inset:initial;
      --tw-ring-offset-width:0px;
      --tw-ring-offset-color:#fff;
      --tw-ring-offset-shadow:0 0 #0000;
      --tw-blur:initial;
      --tw-brightness:initial;
      --tw-contrast:initial;
      --tw-grayscale:initial;
      --tw-hue-rotate:initial;
      --tw-invert:initial;
      --tw-opacity:initial;
      --tw-saturate:initial;
      --tw-sepia:initial;
      --tw-drop-shadow:initial;
      --tw-drop-shadow-color:initial;
      --tw-drop-shadow-alpha:100%;
      --tw-drop-shadow-size:initial;
      --tw-backdrop-blur:initial;
      --tw-backdrop-brightness:initial;
      --tw-backdrop-contrast:initial;
      --tw-backdrop-grayscale:initial;
      --tw-backdrop-hue-rotate:initial;
      --tw-backdrop-invert:initial;
      --tw-backdrop-opacity:initial;
      --tw-backdrop-saturate:initial;
      --tw-backdrop-sepia:initial;
      --tw-duration:initial;
      --tw-ease:initial;
      --tw-content:"";
    }
  }
}
@layer theme {
  :root,:host {
    --font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    --font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    --color-green-50:oklch(98.2% .018 155.826);
    --color-indigo-50:oklch(96.2% .018 272.314);
    --color-slate-50:oklch(98.4% .003 247.858);
    --color-slate-100:oklch(96.8% .007 247.896);
    --color-gray-50:oklch(98.5% .002 247.839);
    --color-gray-100:oklch(96.7% .003 264.542);
    --color-gray-200:oklch(92.8% .006 264.531);
    --color-gray-300:oklch(87.2% .01 258.338);
    --color-gray-400:oklch(70.7% .022 261.325);
    --color-gray-500:oklch(55.1% .027 264.364);
    --color-gray-600:oklch(44.6% .03 256.802);
    --color-gray-700:oklch(37.3% .034 259.733);
    --color-gray-800:oklch(27.8% .033 256.848);
    --color-gray-900:oklch(21% .034 264.665);
    --color-neutral-100:oklch(97% 0 none);
    --color-neutral-200:oklch(92.2% 0 none);
    --color-neutral-700:oklch(37.1% 0 none);
    --color-neutral-800:oklch(26.9% 0 none);
    --color-black:#000;
    --color-white:#fff;
    --spacing:.35rem;
    --container-xs:20rem;
    --container-sm:24rem;
    --container-md:28rem;
    --container-xl:36rem;
    --container-2xl:42rem;
    --container-3xl:48rem;
    --container-4xl:56rem;
    --container-5xl:64rem;
    --text-xs:.75rem;
    --text-xs--line-height: 1.35;
    --text-sm:.875rem;
    --text-sm--line-height: 1.35;
    --text-base:1rem;
    --text-base--line-height: 1.35;
    --text-xl:1.25rem;
    --text-xl--line-height: 1.35;
    --text-2xl:1.5rem;
    --text-2xl--line-height: 1.35;
    --text-3xl:1.875rem;
    --text-3xl--line-height: 1.35;
    --font-weight-light:300;
    --font-weight-normal:400;
    --font-weight-medium:500;
    --font-weight-semibold:500;
    --font-weight-bold:500;
    --font-weight-extrabold:500;
    --font-weight-black:500;
    --tracking-tight:-.025em;
    --tracking-wide:.025em;
    --tracking-wider:.05em;
    --tracking-widest:.1em;
    --leading-tight:1.35;
    --leading-relaxed:1.35;
    --radius-sm:.25rem;
    --radius-xl:.75rem;
    --drop-shadow-sm:0 1px 2px #00000026;
    --drop-shadow-md:0 3px 3px #0000001f;
    --ease-in:cubic-bezier(.4, 0, 1, 1);
    --ease-out:cubic-bezier(0, 0, .2, 1);
    --ease-in-out:cubic-bezier(.4, 0, .2, 1);
    --default-transition-duration:.15s;
    --default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);
    --default-font-family:var(--font-sans);
    --default-mono-font-family:var(--font-mono);
  }
}
@layer base {
  *,:after,:before,::backdrop {
    box-sizing:border-box;
    border:0 solid;
    margin:0;
    padding:0;
  }
  ::file-selector-button {
    box-sizing:border-box;
    border:0 solid;
    margin:0;
    padding:0;
  }
  html,:host {
    -webkit-text-size-adjust:100%;
    -moz-tab-size:4;
    tab-size:4;
    line-height: 1.35;
    font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");
    font-feature-settings:var(--default-font-feature-settings,normal);
    font-variation-settings:var(--default-font-variation-settings,normal);
    -webkit-tap-highlight-color:transparent;
  }
  hr {
    height:0;
    color:inherit;
    border-top-width:1px;
  }
  abbr:where([title]) {
    -webkit-text-decoration:underline dotted;
    text-decoration:underline dotted;
  }
  h1,h2,h3,h4,h5,h6 {
    font-size:inherit;
    font-weight:inherit;
  }
  a {
    color:inherit;
    -webkit-text-decoration:inherit;
    text-decoration:inherit;
  }
  b,strong {
    font-weight: 500er;
  }
  code,kbd,samp,pre {
    font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);
    font-feature-settings:var(--default-mono-font-feature-settings,normal);
    font-variation-settings:var(--default-mono-font-variation-settings,normal);
    font-size:1em;
  }
  small {
    font-size:80%;
  }
  sub,sup {
    vertical-align:baseline;
    font-size:75%;
    line-height: 1.35;
    position:relative;
  }
  sub {
    bottom:-.25em;
  }
  sup {
    top:-.5em;
  }
  table {
    text-indent:0;
    border-color:inherit;
    border-collapse:collapse;
  }
  :-moz-focusring:where(:not(iframe)) {
    outline:auto;
  }
  progress {
    vertical-align:baseline;
  }
  summary {
    display:list-item;
  }
  ol,ul,menu {
    list-style:none;
  }
  img,svg,video,canvas,audio,iframe,embed,object {
    display:block;
  }
  img,video {
    max-width:100%;
    height:auto;
  }
  button,input,select,optgroup,textarea {
    font:inherit;
    font-feature-settings:inherit;
    font-variation-settings:inherit;
    letter-spacing:inherit;
    color:inherit;
    opacity:1;
    background-color:#0000;
    border-radius:0;
  }
  ::file-selector-button {
    font:inherit;
    font-feature-settings:inherit;
    font-variation-settings:inherit;
    letter-spacing:inherit;
    color:inherit;
    opacity:1;
    background-color:#0000;
    border-radius:0;
  }
  :where(select:is([multiple],[size])) optgroup {
    font-weight: 500er;
  }
  :where(select:is([multiple],[size])) optgroup option {
    padding-inline-start:20px;
  }
  ::file-selector-button {
    margin-inline-end:4px;
  }
  ::placeholder {
    opacity:1;
  }
  @supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px) {
    ::placeholder {
      color:currentColor;
    }
    @supports (color:color-mix(in lab,red,red)) {
      ::placeholder {
        color:color-mix(in oklab,currentcolor 50%,transparent);
      }
    }
  }
  textarea {
    resize:vertical;
  }
  ::-webkit-search-decoration {
    -webkit-appearance:none;
  }
  ::-webkit-date-and-time-value {
    min-height:1lh;
    text-align:inherit;
  }
  ::-webkit-datetime-edit {
    display:inline-flex;
  }
  ::-webkit-datetime-edit-fields-wrapper {
    padding:0;
  }
  ::-webkit-datetime-edit {
    padding-block:0;
  }
  ::-webkit-datetime-edit-year-field {
    padding-block:0;
  }
  ::-webkit-datetime-edit-month-field {
    padding-block:0;
  }
  ::-webkit-datetime-edit-day-field {
    padding-block:0;
  }
  ::-webkit-datetime-edit-hour-field {
    padding-block:0;
  }
  ::-webkit-datetime-edit-minute-field {
    padding-block:0;
  }
  ::-webkit-datetime-edit-second-field {
    padding-block:0;
  }
  ::-webkit-datetime-edit-millisecond-field {
    padding-block:0;
  }
  ::-webkit-datetime-edit-meridiem-field {
    padding-block:0;
  }
  ::-webkit-calendar-picker-indicator {
    line-height: 1.35;
  }
  :-moz-ui-invalid {
    box-shadow:none;
  }
  button,input:where([type=button],[type=reset],[type=submit]) {
    -webkit-appearance:button;
    -moz-appearance:button;
    appearance:button;
  }
  ::file-selector-button {
    -webkit-appearance:button;
    -moz-appearance:button;
    appearance:button;
  }
  ::-webkit-inner-spin-button {
    height:auto;
  }
  ::-webkit-outer-spin-button {
    height:auto;
  }
  [hidden]:where(:not([hidden=until-found])) {
    display:none!important;
  }
}
@layer components;
@layer utilities {
  .pointer-events-auto {
    pointer-events:auto;
  }
  .pointer-events-none {
    pointer-events:none;
  }
  .invisible {
    visibility:hidden;
  }
  .visible {
    visibility:visible;
  }
  .absolute {
    position:absolute;
  }
  .fixed {
    position:fixed;
  }
  .relative {
    position:relative;
  }
  .static {
    position:static;
  }
  .sticky {
    position:sticky;
  }
  .inset-0 {
    top:0;
    right:0;
    bottom:0;
    left:0;
  }
  .-top-1 {
    top:calc(var(--spacing) * -1);
  }
  .top-0 {
    top:0;
  }
  .top-1\/2 {
    top:50%;
  }
  .top-2 {
    top:calc(var(--spacing) * 2);
  }
  .top-2\.5 {
    top:calc(var(--spacing) * 2.5);
  }
  .top-3\.5 {
    top:calc(var(--spacing) * 3.5);
  }
  .top-4 {
    top:calc(var(--spacing) * 4);
  }
  .top-6 {
    top:calc(var(--spacing) * 6);
  }
  .top-\[52px\] {
    top:52px;
  }
  .top-\[72px\] {
    top:72px;
  }
  .top-full {
    top:100%;
  }
  .-right-1 {
    right:calc(var(--spacing) * -1);
  }
  .right-0 {
    right:0;
  }
  .right-3 {
    right:calc(var(--spacing) * 3);
  }
  .right-3\.5 {
    right:calc(var(--spacing) * 3.5);
  }
  .right-4 {
    right:calc(var(--spacing) * 4);
  }
  .right-\[-1px\] {
    right:-1px;
  }
  .-bottom-1 {
    bottom:calc(var(--spacing) * -1);
  }
  .bottom-0 {
    bottom:0;
  }
  .bottom-5 {
    bottom:calc(var(--spacing) * 5);
  }
  .bottom-6 {
    bottom:calc(var(--spacing) * 6);
  }
  .bottom-10 {
    bottom:calc(var(--spacing) * 10);
  }
  .left-0 {
    left:0;
  }
  .left-1\/2 {
    left:50%;
  }
  .left-2 {
    left:calc(var(--spacing) * 2);
  }
  .left-2\.5 {
    left:calc(var(--spacing) * 2.5);
  }
  .left-3 {
    left:calc(var(--spacing) * 3);
  }
  .left-6 {
    left:calc(var(--spacing) * 6);
  }
  .left-\[-1px\] {
    left:-1px;
  }
  .z-10 {
    z-index:10;
  }
  .z-20 {
    z-index:20;
  }
  .z-30 {
    z-index:30;
  }
  .z-40 {
    z-index:40;
  }
  .z-50 {
    z-index:50;
  }
  .z-\[-1\] {
    z-index:-1;
  }
  .z-\[110\] {
    z-index:110;
  }
  .z-\[200\] {
    z-index:200;
  }
  .z-\[998\] {
    z-index:998;
  }
  .z-\[999\] {
    z-index:999;
  }
  .z-\[9998\] {
    z-index:9998;
  }
  .z-\[9999\] {
    z-index:9999;
  }
  .z-\[10000\] {
    z-index:10000;
  }
  .z-\[10001\] {
    z-index:10001;
  }
  .container {
    width:100%;
  }
  @media(min-width:40rem) {
    .container {
      max-width:40rem;
    }
  }
  @media(min-width:48rem) {
    .container {
      max-width:48rem;
    }
  }
  @media(min-width:64rem) {
    .container {
      max-width:64rem;
    }
  }
  @media(min-width:80rem) {
    .container {
      max-width:80rem;
    }
  }
  @media(min-width:96rem) {
    .container {
      max-width:96rem;
    }
  }
  .m-0 {
    margin:0;
  }
  .-mx-4 {
    margin-inline:calc(var(--spacing) * -4);
  }
  .mx-auto {
    margin-inline:auto;
  }
  .my-1 {
    margin-block:var(--spacing);
  }
  .my-2 {
    margin-block:calc(var(--spacing) * 2);
  }
  .my-4 {
    margin-block:calc(var(--spacing) * 4);
  }
  .my-4\.5 {
    margin-block:calc(var(--spacing) * 4.5);
  }
  .my-12 {
    margin-block:calc(var(--spacing) * 12);
  }
  .my-auto {
    margin-block:auto;
  }
  .-mt-6 {
    margin-top:calc(var(--spacing) * -6);
  }
  .mt-0\.5 {
    margin-top:calc(var(--spacing) * .5);
  }
  .mt-1 {
    margin-top:var(--spacing);
  }
  .mt-1\.5 {
    margin-top:calc(var(--spacing) * 1.5);
  }
  .mt-2 {
    margin-top:calc(var(--spacing) * 2);
  }
  .mt-2\.5 {
    margin-top:calc(var(--spacing) * 2.5);
  }
  .mt-3\.5 {
    margin-top:calc(var(--spacing) * 3.5);
  }
  .mt-4 {
    margin-top:calc(var(--spacing) * 4);
  }
  .mt-4\.5 {
    margin-top:calc(var(--spacing) * 4.5);
  }
  .mt-6 {
    margin-top:calc(var(--spacing) * 6);
  }
  .mt-7 {
    margin-top:calc(var(--spacing) * 7);
  }
  .mt-8 {
    margin-top:calc(var(--spacing) * 8);
  }
  .mt-9 {
    margin-top:calc(var(--spacing) * 9);
  }
  .mt-12 {
    margin-top:calc(var(--spacing) * 12);
  }
  .mt-\[18px\] {
    margin-top:18px;
  }
  .mt-auto {
    margin-top:auto;
  }
  .-mr-4 {
    margin-right:calc(var(--spacing) * -4);
  }
  .-mr-6 {
    margin-right:calc(var(--spacing) * -6);
  }
  .mr-1 {
    margin-right:var(--spacing);
  }
  .mb-0 {
    margin-bottom:0;
  }
  .mb-1 {
    margin-bottom:var(--spacing);
  }
  .mb-1\.5 {
    margin-bottom:calc(var(--spacing) * 1.5);
  }
  .mb-2 {
    margin-bottom:calc(var(--spacing) * 2);
  }
  .mb-3 {
    margin-bottom:calc(var(--spacing) * 3);
  }
  .mb-4 {
    margin-bottom:calc(var(--spacing) * 4);
  }
  .mb-4\.5 {
    margin-bottom:calc(var(--spacing) * 4.5);
  }
  .mb-5 {
    margin-bottom:calc(var(--spacing) * 5);
  }
  .mb-6 {
    margin-bottom:calc(var(--spacing) * 6);
  }
  .mb-7 {
    margin-bottom:calc(var(--spacing) * 7);
  }
  .mb-8 {
    margin-bottom:calc(var(--spacing) * 8);
  }
  .mb-9 {
    margin-bottom:calc(var(--spacing) * 9);
  }
  .mb-10 {
    margin-bottom:calc(var(--spacing) * 10);
  }
  .mb-12 {
    margin-bottom:calc(var(--spacing) * 12);
  }
  .mb-16 {
    margin-bottom:calc(var(--spacing) * 16);
  }
  .ml-1 {
    margin-left:var(--spacing);
  }
  .ml-4 {
    margin-left:calc(var(--spacing) * 4);
  }
  .block {
    display:block;
  }
  .flex {
    display:flex;
  }
  .grid {
    display:grid;
  }
  .hidden {
    display:none;
  }
  .inline {
    display:inline;
  }
  .inline-block {
    display:inline-block;
  }
  .inline-flex {
    display:inline-flex;
  }
  .table {
    display:table;
  }
  .aspect-\[1\/1\.1\] {
    aspect-ratio:1/1.1;
  }
  .aspect-\[3\/4\] {
    aspect-ratio:3/4;
  }
  .aspect-\[4\/3\.4\] {
    aspect-ratio:4/3.4;
  }
  .aspect-\[4\/3\] {
    aspect-ratio:4/3;
  }
  .aspect-\[4\/5\.5\] {
    aspect-ratio:4/5.5;
  }
  .aspect-\[4\/5\] {
    aspect-ratio:4/5;
  }
  .aspect-\[16\/7\] {
    aspect-ratio:16/7;
  }
  .aspect-\[16\/9\] {
    aspect-ratio:16/9;
  }
  .aspect-\[16\/10\] {
    aspect-ratio:16/10;
  }
  .aspect-square {
    aspect-ratio:1;
  }
  .h-0 {
    height:0;
  }
  .h-1 {
    height:var(--spacing);
  }
  .h-2 {
    height:calc(var(--spacing) * 2);
  }
  .h-2\.5 {
    height:calc(var(--spacing) * 2.5);
  }
  .h-3 {
    height:calc(var(--spacing) * 3);
  }
  .h-3\.5 {
    height:calc(var(--spacing) * 3.5);
  }
  .h-4 {
    height:calc(var(--spacing) * 4);
  }
  .h-5 {
    height:calc(var(--spacing) * 5);
  }
  .h-6 {
    height:calc(var(--spacing) * 6);
  }
  .h-7 {
    height:calc(var(--spacing) * 7);
  }
  .h-8 {
    height:calc(var(--spacing) * 8);
  }
  .h-10 {
    height:calc(var(--spacing) * 10);
  }
  .h-11 {
    height:calc(var(--spacing) * 11);
  }
  .h-12 {
    height:calc(var(--spacing) * 12);
  }
  .h-16 {
    height:calc(var(--spacing) * 16);
  }
  .h-20 {
    height:calc(var(--spacing) * 20);
  }
  .h-32 {
    height:calc(var(--spacing) * 32);
  }
  .h-\[1px\] {
    height:1px;
  }
  .h-\[2\.5px\] {
    height:2.5px;
  }
  .h-\[5em\] {
    height:5em;
  }
  .h-\[17px\] {
    height:17px;
  }
  .h-\[18px\] {
    height:18px;
  }
  .h-\[22px\] {
    height:22px;
  }
  .h-\[44px\] {
    height:44px;
  }
  .h-\[48px\] {
    height:48px;
  }
  .h-\[50px\] {
    height:50px;
  }
  .h-\[58vh\] {
    height:58vh;
  }
  .h-\[60px\] {
    height:60px;
  }
  .h-\[64px\] {
    height:64px;
  }
  .h-\[65vh\] {
    height:65vh;
  }
  .h-\[72px\] {
    height:72px;
  }
  .h-\[90dvh\] {
    height:90dvh;
  }
  .h-\[100dvh\] {
    height:100dvh;
  }
  .h-auto {
    height:auto;
  }
  .h-full {
    height:100%;
  }
  .h-screen {
    height:100vh;
  }
  .max-h-0 {
    max-height:0;
  }
  .max-h-\[78vh\] {
    max-height:78vh;
  }
  .max-h-\[92vh\] {
    max-height:92vh;
  }
  .max-h-\[300px\] {
    max-height:300px;
  }
  .max-h-\[500px\] {
    max-height:500px;
  }
  .min-h-0 {
    min-height:0;
  }
  .min-h-\[40vh\] {
    min-height:40vh;
  }
  .min-h-\[44px\] {
    min-height:44px;
  }
  .min-h-\[46px\] {
    min-height:46px;
  }
  .min-h-\[80dvh\] {
    min-height:80dvh;
  }
  .min-h-screen {
    min-height:100vh;
  }
  .w-1 {
    width:var(--spacing);
  }
  .w-2 {
    width:calc(var(--spacing) * 2);
  }
  .w-2\.5 {
    width:calc(var(--spacing) * 2.5);
  }
  .w-3 {
    width:calc(var(--spacing) * 3);
  }
  .w-3\.5 {
    width:calc(var(--spacing) * 3.5);
  }
  .w-3\/5 {
    width:60%;
  }
  .w-4 {
    width:calc(var(--spacing) * 4);
  }
  .w-5 {
    width:calc(var(--spacing) * 5);
  }
  .w-6 {
    width:calc(var(--spacing) * 6);
  }
  .w-7 {
    width:calc(var(--spacing) * 7);
  }
  .w-8 {
    width:calc(var(--spacing) * 8);
  }
  .w-10 {
    width:calc(var(--spacing) * 10);
  }
  .w-12 {
    width:calc(var(--spacing) * 12);
  }
  .w-\[4em\] {
    width:4em;
  }
  .w-\[15\%\] {
    width:15%;
  }
  .w-\[17px\] {
    width:17px;
  }
  .w-\[18px\] {
    width:18px;
  }
  .w-\[38\%\] {
    width:38%;
  }
  .w-\[44\%\] {
    width:44%;
  }
  .w-\[48px\] {
    width:48px;
  }
  .w-\[85\%\] {
    width:85%;
  }
  .w-\[100px\] {
    width:100px;
  }
  .w-\[120px\] {
    width:120px;
  }
  .w-\[170px\] {
    width:170px;
  }
  .w-auto {
    width:auto;
  }
  .w-full {
    width:100%;
  }
  .max-w-2xl {
    max-width:var(--container-2xl);
  }
  .max-w-3xl {
    max-width:var(--container-3xl);
  }
  .max-w-4xl {
    max-width:var(--container-4xl);
  }
  .max-w-5xl {
    max-width:var(--container-5xl);
  }
  .max-w-\[85vw\] {
    max-width:85vw;
  }
  .max-w-\[630px\] {
    max-width:630px;
  }
  .max-w-\[1400px\] {
    max-width:1400px;
  }
  .max-w-\[1440px\] {
    max-width:1440px;
  }
  .max-w-md {
    max-width:var(--container-md);
  }
  .max-w-sm {
    max-width:var(--container-sm);
  }
  .max-w-xl {
    max-width:var(--container-xl);
  }
  .max-w-xs {
    max-width:var(--container-xs);
  }
  .min-w-\[120px\] {
    min-width:120px;
  }
  .min-w-\[170px\] {
    min-width:170px;
  }
  .min-w-full {
    min-width:100%;
  }
  .flex-1 {
    flex:1;
  }
  .flex-none {
    flex:none;
  }
  .flex-shrink-0,.shrink-0 {
    flex-shrink:0;
  }
  .flex-grow {
    flex-grow:1;
  }
  .origin-center {
    transform-origin:50%;
  }
  .origin-left {
    transform-origin:0;
  }
  .-translate-x-1\/2 {
    --tw-translate-x: -50%;
    translate:var(--tw-translate-x) var(--tw-translate-y);
  }
  .translate-x-0 {
    --tw-translate-x:0px;
    translate:var(--tw-translate-x) var(--tw-translate-y);
  }
  .translate-x-full {
    --tw-translate-x:100%;
    translate:var(--tw-translate-x) var(--tw-translate-y);
  }
  .-translate-y-1\/2 {
    --tw-translate-y: -50%;
    translate:var(--tw-translate-x) var(--tw-translate-y);
  }
  .translate-y-0 {
    --tw-translate-y:0px;
    translate:var(--tw-translate-x) var(--tw-translate-y);
  }
  .translate-y-full {
    --tw-translate-y:100%;
    translate:var(--tw-translate-x) var(--tw-translate-y);
  }
  .scale-110 {
    --tw-scale-x:110%;
    --tw-scale-y:110%;
    --tw-scale-z:110%;
    scale:var(--tw-scale-x) var(--tw-scale-y);
  }
  .scale-125 {
    --tw-scale-x:125%;
    --tw-scale-y:125%;
    --tw-scale-z:125%;
    scale:var(--tw-scale-x) var(--tw-scale-y);
  }
  .scale-x-0 {
    --tw-scale-x:0%;
    scale:var(--tw-scale-x) var(--tw-scale-y);
  }
  .scale-x-100 {
    --tw-scale-x:100%;
    scale:var(--tw-scale-x) var(--tw-scale-y);
  }
  .-rotate-1 {
    rotate:-1deg;
  }
  .-rotate-90 {
    rotate:-90deg;
  }
  .rotate-0 {
    rotate:0deg;
  }
  .rotate-90 {
    rotate:90deg;
  }
  .rotate-180 {
    rotate:180deg;
  }
  .transform {
    transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,);
  }
  .cursor-grab {
    cursor:grab;
  }
  .cursor-not-allowed {
    cursor:not-allowed;
  }
  .cursor-pointer {
    cursor:pointer;
  }
  .cursor-text {
    cursor:text;
  }
  .cursor-zoom-in {
    cursor:zoom-in;
  }
  .cursor-zoom-out {
    cursor:zoom-out;
  }
  .resize {
    resize:both;
  }
  .snap-x {
    scroll-snap-type:x var(--tw-scroll-snap-strictness);
  }
  .snap-mandatory {
    --tw-scroll-snap-strictness:mandatory;
  }
  .snap-start {
    scroll-snap-align:start;
  }
  .list-none {
    list-style-type:none;
  }
  .appearance-none {
    -webkit-appearance:none;
    -moz-appearance:none;
    appearance:none;
  }
  .grid-cols-1 {
    grid-template-columns:repeat(1,minmax(0,1fr));
  }
  .grid-cols-2 {
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .grid-cols-3 {
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .grid-cols-4 {
    grid-template-columns:repeat(4,minmax(0,1fr));
  }
  .grid-cols-5 {
    grid-template-columns:repeat(5,minmax(0,1fr));
  }
  .grid-cols-8 {
    grid-template-columns:repeat(8,minmax(0,1fr));
  }
  .grid-cols-\[240px_140px_1fr_140px\] {
    grid-template-columns:240px 140px 1fr 140px;
  }
  .grid-rows-\[0fr\] {
    grid-template-rows:0fr;
  }
  .grid-rows-\[1fr\] {
    grid-template-rows:1fr;
  }
  .flex-col {
    flex-direction:column;
  }
  .flex-row {
    flex-direction:row;
  }
  .flex-wrap {
    flex-wrap:wrap;
  }
  .items-center {
    align-items:center;
  }
  .items-end {
    align-items:flex-end;
  }
  .items-start {
    align-items:flex-start;
  }
  .justify-between {
    justify-content: space-between;
  }
  .justify-center {
    justify-content:center;
  }
  .justify-end {
    justify-content:flex-end;
  }
  .gap-0 {
    gap:0;
  }
  .gap-0\.5 {
    gap:calc(var(--spacing) * .5);
  }
  .gap-1 {
    gap:var(--spacing);
  }
  .gap-1\.5 {
    gap:calc(var(--spacing) * 1.5);
  }
  .gap-2 {
    gap:calc(var(--spacing) * 2);
  }
  .gap-2\.5 {
    gap:calc(var(--spacing) * 2.5);
  }
  .gap-3 {
    gap:calc(var(--spacing) * 3);
  }
  .gap-3\.5 {
    gap:calc(var(--spacing) * 3.5);
  }
  .gap-4 {
    gap:calc(var(--spacing) * 4);
  }
  .gap-5 {
    gap:calc(var(--spacing) * 5);
  }
  .gap-6 {
    gap:calc(var(--spacing) * 6);
  }
  .gap-8 {
    gap:calc(var(--spacing) * 8);
  }
  .gap-10 {
    gap:calc(var(--spacing) * 10);
  }
  .gap-12 {
    gap:calc(var(--spacing) * 12);
  }
  .gap-24 {
    gap:calc(var(--spacing) * 24);
  }
  .gap-\[0\.8em\] {
    gap:.8em;
  }
  .gap-\[18px\] {
    gap:18px;
  }
  .gap-x-3 {
    column-gap:calc(var(--spacing) * 3);
  }
  .gap-x-\[14px\] {
    column-gap:14px;
  }
  .gap-y-6 {
    row-gap:calc(var(--spacing) * 6);
  }
  .gap-y-8 {
    row-gap:calc(var(--spacing) * 8);
  }
  .gap-y-12 {
    row-gap:calc(var(--spacing) * 12);
  }
  .self-start {
    align-self:flex-start;
  }
  .truncate {
    text-overflow:ellipsis;
    white-space:nowrap;
    overflow:hidden;
  }
  .overflow-hidden {
    overflow:hidden;
  }
  .overflow-x-auto {
    overflow-x:auto;
  }
  .overflow-y-auto {
    overflow-y:auto;
  }
  .scroll-smooth {
    scroll-behavior:smooth;
  }
  .rounded-\[2px\] {
    border-radius:2px;
  }
  .rounded-full {
    border-radius:3.40282e38px;
  }
  .rounded-none {
    border-radius:0;
  }
  .rounded-t-xl {
    border-top-left-radius:var(--radius-xl);
    border-top-right-radius:var(--radius-xl);
  }
  .border {
    border-style:var(--tw-border-style);
    border-width:1px;
  }
  .border-2 {
    border-style:var(--tw-border-style);
    border-width:2px;
  }
  .border-4 {
    border-style:var(--tw-border-style);
    border-width:4px;
  }
  .border-\[1\.5px\] {
    border-style:var(--tw-border-style);
    border-width:1.5px;
  }
  .border-\[1px\] {
    border-style:var(--tw-border-style);
    border-width:1px;
  }
  .border-t {
    border-top-style:var(--tw-border-style);
    border-top-width:1px;
  }
  .border-t-0 {
    border-top-style:var(--tw-border-style);
    border-top-width:0;
  }
  .border-r-0 {
    border-right-style:var(--tw-border-style);
    border-right-width:0;
  }
  .border-b {
    border-bottom-style:var(--tw-border-style);
    border-bottom-width:1px;
  }
  .border-none {
    --tw-border-style:none;
    border-style:none;
  }
  .border-\[\#c4c4c4\] {
    border-color:#c4c4c4;
  }
  .border-\[\#e5e7eb\] {
    border-color:#e5e7eb;
  }
  .border-\[\#eaeaea\] {
    border-color:#eaeaea;
  }
  .border-\[\#f0f0f0\] {
    border-color:#f0f0f0;
  }
  .border-black {
    border-color:var(--color-black);
  }
  .border-black\/10 {
    border-color:#0000001a;
  }
  @supports (color:color-mix(in lab,red,red)) {
    .border-black\/10 {
      border-color:color-mix(in oklab,var(--color-black) 10%,transparent);
    }
  }
  .border-black\/20 {
    border-color:#0003;
  }
  @supports (color:color-mix(in lab,red,red)) {
    .border-black\/20 {
      border-color:color-mix(in oklab,var(--color-black) 20%,transparent);
    }
  }
  .border-black\/80 {
    border-color:#000c;
  }
  @supports (color:color-mix(in lab,red,red)) {
    .border-black\/80 {
      border-color:color-mix(in oklab,var(--color-black) 80%,transparent);
    }
  }
  .border-gray-100 {
    border-color:var(--color-gray-100);
  }
  .border-gray-200 {
    /* overridden to black in footer via site-footer rules */
    border-color:var(--color-gray-200);
  }
  .border-black {
    border-color:var(--color-gray-300);
  }
  .border-gray-400 {
    border-color:var(--color-gray-400);
  }
  .border-neutral-200 {
    border-color:var(--color-neutral-200);
  }
  .border-transparent {
    border-color:#0000;
  }
  .border-white {
    border-color:var(--color-white);
  }
  .bg-\[\#4B4938\] {
    background-color:#4b4938;
  }
  .bg-\[\#343A40\] {
    background-color:#343a40;
  }
  .bg-\[\#444\] {
    background-color:#444;
  }
  .bg-\[\#707780\] {
    background-color:#707780;
  }
  .bg-\[\#D8D7D3\] {
    background-color:#d8d7d3;
  }
  .bg-\[\#DCDCDA\] {
    background-color:#dcdcda;
  }
  .bg-\[\#E8E7E3\] {
    background-color:#e8e7e3;
  }
  .bg-\[\#ECECEB\] {
    background-color:#ececeb;
  }
  .bg-\[\#EFEFEF\] {
    background-color:#efefef;
  }
  .bg-\[\#F0F0EE\] {
    background-color:#f0f0ee;
  }
  .bg-\[\#F2F2F0\] {
    background-color:#f2f2f0;
  }
  .bg-\[\#F5F5F3\] {
    background-color:#f5f5f3;
  }
  .bg-\[\#eee\] {
    background-color:#eee;
  }
  .bg-\[\#f0f0f0\] {
    background-color:#f0f0f0;
  }
  .bg-\[\#f2f2f2\] {
    background-color:#f2f2f2;
  }
  .bg-\[\#f4f4f4\] {
    background-color:#f4f4f4;
  }
  .bg-\[\#f5f5f5\] {
    background-color:#f5f5f5;
  }
  .bg-\[\#f6f6f6\] {
    background-color:#f6f6f6;
  }
  .bg-\[\#f8f8f8\] {
    background-color:#f8f8f8;
  }
  .bg-\[\#fafafa\] {
    background-color:#fafafa;
  }
  .bg-\[\#fdfdfd\] {
    background-color:#fdfdfd;
  }
  .bg-black {
    background-color:var(--color-black);
  }
  .bg-black\/10 {
    background-color:#0000001a;
  }
  @supports (color:color-mix(in lab,red,red)) {
    .bg-black\/10 {
      background-color:color-mix(in oklab,var(--color-black) 10%,transparent);
    }
  }
  .bg-black\/30 {
    background-color:#0000004d;
  }
  @supports (color:color-mix(in lab,red,red)) {
    .bg-black\/30 {
      background-color:color-mix(in oklab,var(--color-black) 30%,transparent);
    }
  }
  .bg-black\/40 {
    background-color:#0006;
  }
  @supports (color:color-mix(in lab,red,red)) {
    .bg-black\/40 {
      background-color:color-mix(in oklab,var(--color-black) 40%,transparent);
    }
  }
  .bg-black\/80 {
    background-color:#000c;
  }
  @supports (color:color-mix(in lab,red,red)) {
    .bg-black\/80 {
      background-color:color-mix(in oklab,var(--color-black) 80%,transparent);
    }
  }
  .bg-gray-50 {
    background-color:var(--color-gray-50);
  }
  .bg-gray-100 {
    background-color:var(--color-gray-100);
  }
  .bg-gray-200 {
    background-color:var(--color-gray-200);
  }
  .bg-gray-300 {
    background-color:var(--color-gray-300);
  }
  .bg-gray-400 {
    background-color:var(--color-gray-400);
  }
  .bg-gray-400\/60 {
    background-color:#99a1af99;
  }
  @supports (color:color-mix(in lab,red,red)) {
    .bg-gray-400\/60 {
      background-color:color-mix(in oklab,var(--color-gray-400) 60%,transparent);
    }
  }
  .bg-green-50 {
    background-color:var(--color-green-50);
  }
  .bg-indigo-50 {
    background-color:var(--color-indigo-50);
  }
  .bg-neutral-100 {
    background-color:var(--color-neutral-100);
  }
  .bg-slate-50 {
    background-color:var(--color-slate-50);
  }
  .bg-slate-100 {
    background-color:var(--color-slate-100);
  }
  .bg-transparent {
    background-color:#0000;
  }
  .bg-white {
    background-color:var(--color-white);
  }
  .bg-gradient-to-t {
    --tw-gradient-position:to top in oklab;
    background-image:linear-gradient(var(--tw-gradient-stops));
  }
  .bg-none {
    background-image:none;
  }
  .from-black\/50 {
    --tw-gradient-from:#00000080;
  }
  @supports (color:color-mix(in lab,red,red)) {
    .from-black\/50 {
      --tw-gradient-from:color-mix(in oklab, var(--color-black) 50%, transparent);
    }
  }
  .from-black\/50 {
    --tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .via-transparent {
    --tw-gradient-via:transparent;
    --tw-gradient-via-stops:var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);
    --tw-gradient-stops:var(--tw-gradient-via-stops);
  }
  .to-transparent {
    --tw-gradient-to:transparent;
    --tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .fill-none {
    fill:none;
  }
  .stroke-black {
    stroke:var(--color-black);
  }
  .stroke-current {
    stroke:currentColor;
  }
  .stroke-\[1\.2\] {
    stroke-width:1.2px;
  }
  .stroke-\[1\.5\] {
    stroke-width:1.5px;
  }
  .stroke-\[1\.8\] {
    stroke-width:1.8px;
  }
  .stroke-\[2\.5\] {
    stroke-width:2.5px;
  }
  .stroke-\[2\] {
    stroke-width:2px;
  }
  .object-contain {
    object-fit:contain;
  }
  .object-cover {
    object-fit:cover;
  }
  .object-center {
    object-position:center;
  }
  .object-top {
    object-position:top;
  }
  .p-0 {
    padding:0;
  }
  .p-0\.5 {
    padding:calc(var(--spacing) * .5);
  }
  .p-1 {
    padding:var(--spacing);
  }
  .p-1\.5 {
    padding:calc(var(--spacing) * 1.5);
  }
  .p-2 {
    padding:calc(var(--spacing) * 2);
  }
  .p-2\.5 {
    padding:calc(var(--spacing) * 2.5);
  }
  .p-3 {
    padding:calc(var(--spacing) * 3);
  }
  .p-4 {
    padding:calc(var(--spacing) * 4);
  }
  .p-6 {
    padding:calc(var(--spacing) * 6);
  }
  .p-8 {
    padding:calc(var(--spacing) * 8);
  }
  .p-10 {
    padding:calc(var(--spacing) * 10);
  }
  .p-12 {
    padding:calc(var(--spacing) * 12);
  }
  .p-\[2px\] {
    padding:2px;
  }
  .px-0 {
    padding-inline:0;
  }
  .px-2 {
    padding-inline:calc(var(--spacing) * 2);
  }
  .px-3 {
    padding-inline:calc(var(--spacing) * 3);
  }
  .px-3\.5 {
    padding-inline:calc(var(--spacing) * 3.5);
  }
  .px-4 {
    padding-inline:calc(var(--spacing) * 4);
  }
  .px-5 {
    padding-inline:calc(var(--spacing) * 5);
  }
  .px-6 {
    padding-inline:calc(var(--spacing) * 6);
  }
  .px-8 {
    padding-inline:calc(var(--spacing) * 8);
  }
  .px-10 {
    padding-inline:calc(var(--spacing) * 10);
  }
  .px-\[1\.2em\] {
    padding-inline:1.2em;
  }
  .px-\[1\.7em\] {
    padding-inline:1.7em;
  }
  .px-\[2em\] {
    padding-inline:2em;
  }
  .py-1 {
    padding-block:var(--spacing);
  }
  .py-2 {
    padding-block:calc(var(--spacing) * 2);
  }
  .py-2\.5 {
    padding-block:calc(var(--spacing) * 2.5);
  }
  .py-3 {
    padding-block:calc(var(--spacing) * 3);
  }
  .py-3\.5 {
    padding-block:calc(var(--spacing) * 3.5);
  }
  .py-4 {
    padding-block:calc(var(--spacing) * 4);
  }
  .py-5 {
    padding-block:calc(var(--spacing) * 5);
  }
  .py-6 {
    padding-block:calc(var(--spacing) * 6);
  }
  .py-8 {
    padding-block:calc(var(--spacing) * 8);
  }
  .py-10 {
    padding-block:calc(var(--spacing) * 10);
  }
  .py-12 {
    padding-block:calc(var(--spacing) * 12);
  }
  .py-16 {
    padding-block:calc(var(--spacing) * 16);
  }
  .py-\[10px\] {
    padding-block:10px;
  }
  .py-\[14px\] {
    padding-block:14px;
  }
  .pt-0\.5 {
    padding-top:calc(var(--spacing) * .5);
  }
  .pt-1 {
    padding-top:var(--spacing);
  }
  .pt-1\.5 {
    padding-top:calc(var(--spacing) * 1.5);
  }
  .pt-2 {
    padding-top:calc(var(--spacing) * 2);
  }
  .pt-3 {
    padding-top:calc(var(--spacing) * 3);
  }
  .pt-4 {
    padding-top:calc(var(--spacing) * 4);
  }
  .pt-5 {
    padding-top:calc(var(--spacing) * 5);
  }
  .pt-6 {
    padding-top:calc(var(--spacing) * 6);
  }
  .pt-8 {
    padding-top:calc(var(--spacing) * 8);
  }
  .pt-9 {
    padding-top:calc(var(--spacing) * 9);
  }
  .pt-10 {
    padding-top:calc(var(--spacing) * 10);
  }
  .pt-12 {
    padding-top:calc(var(--spacing) * 12);
  }
  .pr-2 {
    padding-right:calc(var(--spacing) * 2);
  }
  .pr-4 {
    padding-right:calc(var(--spacing) * 4);
  }
  .pr-6 {
    padding-right:calc(var(--spacing) * 6);
  }
  .pr-8 {
    padding-right:calc(var(--spacing) * 8);
  }
  .pr-\[60px\] {
    padding-right:60px;
  }
  .pb-0 {
    padding-bottom:0;
  }
  .pb-0\.5 {
    padding-bottom:calc(var(--spacing) * .5);
  }
  .pb-1 {
    padding-bottom:var(--spacing);
  }
  .pb-2 {
    padding-bottom:calc(var(--spacing) * 2);
  }
  .pb-2\.5 {
    padding-bottom:calc(var(--spacing) * 2.5);
  }
  .pb-3 {
    padding-bottom:calc(var(--spacing) * 3);
  }
  .pb-4 {
    padding-bottom:calc(var(--spacing) * 4);
  }
  .pb-4\.5 {
    padding-bottom:calc(var(--spacing) * 4.5);
  }
  .pb-6 {
    padding-bottom:calc(var(--spacing) * 6);
  }
  .pb-8 {
    padding-bottom:calc(var(--spacing) * 8);
  }
  .pb-10 {
    padding-bottom:calc(var(--spacing) * 10);
  }
  .pb-12 {
    padding-bottom:calc(var(--spacing) * 12);
  }
  .pb-16 {
    padding-bottom:calc(var(--spacing) * 16);
  }
  .pb-20 {
    padding-bottom:calc(var(--spacing) * 20);
  }
  .pb-32 {
    padding-bottom:calc(var(--spacing) * 32);
  }
  .pl-0 {
    padding-left:0;
  }
  .pl-2 {
    padding-left:calc(var(--spacing) * 2);
  }
  .pl-3 {
    padding-left:calc(var(--spacing) * 3);
  }
  .pl-4 {
    padding-left:calc(var(--spacing) * 4);
  }
  .text-center {
    text-align:center;
  }
  .text-left {
    text-align:left;
  }
  .text-right {
    text-align:right;
  }
  .align-middle {
    vertical-align:middle;
  }
  .font-mono {
    font-family:var(--font-mono);
  }
  .font-sans {
    font-family:var(--font-sans);
  }
  .text-2xl {
    font-size:var(--text-2xl);
    line-height:var(--tw-leading,var(--text-2xl--line-height));
  }
  .text-base {
    font-size:var(--text-base);
    line-height:var(--tw-leading,var(--text-base--line-height));
  }
  .text-sm {
    font-size:var(--text-sm);
    line-height:var(--tw-leading,var(--text-sm--line-height));
  }
  .text-xl {
    font-size:var(--text-xl);
    line-height:var(--tw-leading,var(--text-xl--line-height));
  }
  .text-xs {
    font-size:var(--text-xs);
    line-height:var(--tw-leading,var(--text-xs--line-height));
  }
  .text-\[7px\] {
    font-size:7px;
  }
  .text-\[8px\] {
    font-size:8px;
  }
  .text-\[9\.5px\] {
    font-size:9.5px;
  }
  .text-\[9px\] {
    font-size:9px;
  }
  .text-\[10\.5px\] {
    font-size:10.5px;
  }
  .text-\[10px\] {
    font-size:10px;
  }
  .text-\[11\.5px\] {
    font-size:11.5px;
  }
  .text-\[11px\] {
    font-size:11px;
  }
  .text-\[12\.5px\] {
    font-size:12.5px;
  }
  .text-\[12px\] {
    font-size:12px;
  }
  .text-\[13\.5px\] {
    font-size:13.5px;
  }
  .text-\[13px\] {
    font-size:13px;
  }
  .text-\[14px\] {
    font-size:14px;
  }
  .text-\[15px\] {
    font-size:15px;
  }
  .text-\[16px\] {
    font-size:16px;
  }
  .text-\[18px\] {
    font-size:18px;
  }
  .text-\[20px\] {
    font-size:20px;
  }
  .text-\[22px\] {
    font-size:22px;
  }
  .text-\[26px\] {
    font-size:26px;
  }
  .leading-\[1\.5\] {
    --tw-leading:1.5;
    line-height: 1.35;
  }
  .leading-\[1\.6\] {
    --tw-leading:1.6;
    line-height: 1.35;
  }
  .leading-\[1\.8\] {
    --tw-leading:1.8;
    line-height: 1.35;
  }
  .leading-\[1\.9\] {
    --tw-leading:1.9;
    line-height: 1.35;
  }
  .leading-\[1\.35\] {
    --tw-leading:1.35;
    line-height:1.35;
  }
  .leading-none {
    --tw-leading:1;
    line-height: 1.35;
  }
  .leading-relaxed {
    --tw-leading:var(--leading-relaxed);
    line-height:var(--leading-relaxed);
  }
  .leading-tight {
    --tw-leading:var(--leading-tight);
    line-height:var(--leading-tight);
  }
  .font-black {
    --tw-font-weight:var(--font-weight-black);
    font-weight:var(--font-weight-black);
  }
  .font-bold {
    --tw-font-weight:var(--font-weight-bold);
    font-weight:500;
  }
  .font-extrabold {
    --tw-font-weight:var(--font-weight-extrabold);
    font-weight:500;
  }
  .font-light {
    --tw-font-weight:var(--font-weight-light);
    font-weight:var(--font-weight-light);
  }
  .font-medium {
    --tw-font-weight:var(--font-weight-medium);
    font-weight:500;
  }
  .font-normal {
    --tw-font-weight:var(--font-weight-normal);
    font-weight:var(--font-weight-normal);
  }
  .font-semibold {
    --tw-font-weight:var(--font-weight-semibold);
    font-weight:500;
  }
  .tracking-\[-0\.1px\] {
    --tw-tracking:-.1px;
    letter-spacing:-.1px;
  }
  .tracking-\[0\.1em\] {
    --tw-tracking:.1em;
    letter-spacing:.1em;
  }
  .tracking-\[0\.2em\] {
    --tw-tracking:.2em;
    letter-spacing:.2em;
  }
  .tracking-\[0\.2px\] {
    --tw-tracking:.2px;
    letter-spacing:.2px;
  }
  .tracking-\[0\.03em\] {
    --tw-tracking:.03em;
    letter-spacing:.03em;
  }
  .tracking-\[0\.3em\] {
    --tw-tracking:.3em;
    letter-spacing:.3em;
  }
  .tracking-\[0\.05em\] {
    --tw-tracking:.05em;
    letter-spacing:.05em;
  }
  .tracking-\[0\.5px\] {
    --tw-tracking:.5px;
    letter-spacing:.5px;
  }
  .tracking-\[0\.8px\] {
    --tw-tracking:.8px;
    letter-spacing:.8px;
  }
  .tracking-\[0\.14em\] {
    --tw-tracking:.14em;
    letter-spacing:.14em;
  }
  .tracking-\[0\.15em\] {
    --tw-tracking:.15em;
    letter-spacing:.15em;
  }
  .tracking-\[0\.16em\] {
    --tw-tracking:.16em;
    letter-spacing:.16em;
  }
  .tracking-\[0\.18em\] {
    --tw-tracking:.18em;
    letter-spacing:.18em;
  }
  .tracking-\[0\.22em\] {
    --tw-tracking:.22em;
    letter-spacing:.22em;
  }
  .tracking-\[0\.25em\] {
    --tw-tracking:.25em;
    letter-spacing:.25em;
  }
  .tracking-\[1\.2px\] {
    --tw-tracking:1.2px;
    letter-spacing:1.2px;
  }
  .tracking-\[1\.5px\] {
    --tw-tracking:1.5px;
    letter-spacing:1.5px;
  }
  .tracking-tight {
    --tw-tracking:var(--tracking-tight);
    letter-spacing:var(--tracking-tight);
  }
  .tracking-wide {
    --tw-tracking:var(--tracking-wide);
    letter-spacing:var(--tracking-wide);
  }
  .tracking-wider {
    --tw-tracking:var(--tracking-wider);
    letter-spacing:var(--tracking-wider);
  }
  .tracking-widest {
    --tw-tracking:var(--tracking-widest);
    letter-spacing:var(--tracking-widest);
  }
  .whitespace-nowrap {
    white-space:nowrap;
  }
  .text-\[\#0f0f0f\] {
    color:#0f0f0f;
  }
  .text-\[\#4b5563\] {
    color:#4b5563;
  }
  .text-\[\#0079C1\] {
    color:#0079c1;
  }
  .text-\[\#111\] {
    color:#111;
  }
  .text-\[\#003087\] {
    color:#003087;
  }
  .text-\[\#111827\] {
    color:#111827;
  }
  .text-\[\#767676\] {
    color:#767676;
  }
  .text-\[\#888888\] {
    color:#888;
  }
  .text-black {
    color:var(--color-black);
  }
  .text-gray-400 {
    color:var(--color-gray-400);
  }
  .text-gray-500 {
    color:var(--color-gray-500);
  }
  .text-gray-600 {
    color:var(--color-gray-600);
  }
  .text-gray-700 {
    color:var(--color-gray-700);
  }
  .text-gray-800 {
    color:var(--color-gray-800);
  }
  .text-neutral-800 {
    color:var(--color-neutral-800);
  }
  .text-white {
    color:var(--color-white);
  }
  .lowercase {
    text-transform:lowercase;
  }
  .uppercase {
    text-transform:uppercase;
  }
  .italic {
    font-style:italic;
  }
  .underline {
    text-decoration-line:underline;
  }
  .decoration-black {
    -webkit-text-decoration-color:var(--color-black);
    text-decoration-color:var(--color-black);
  }
  .decoration-1 {
    text-decoration-thickness:1px;
  }
  .underline-offset-2 {
    text-underline-offset:2px;
  }
  .underline-offset-4 {
    text-underline-offset:4px;
  }
  .underline-offset-\[3px\] {
    text-underline-offset:3px;
  }
  .antialiased {
    -webkit-font-smoothing:antialiased;
    -moz-osx-font-smoothing:grayscale;
  }
  .opacity-0 {
    opacity:0;
  }
  .opacity-25 {
    opacity:.25;
  }
  .opacity-40 {
    opacity:.4;
  }
  .opacity-60 {
    opacity:.6;
  }
  .opacity-75 {
    opacity:.75;
  }
  .opacity-80 {
    opacity:.8;
  }
  .opacity-100 {
    opacity:1;
  }
  .mix-blend-multiply {
    mix-blend-mode:multiply;
  }
  .shadow-2xl {
    --tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);
    box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);
  }
  .shadow-\[-10px_0_30px_rgba\(0\,0\,0\,0\.06\)\] {
    --tw-shadow:-10px 0 30px var(--tw-shadow-color,#0000000f);
    box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);
  }
  .shadow-\[-10px_0_30px_rgba\(0\,0\,0\,0\.08\)\] {
    --tw-shadow:-10px 0 30px var(--tw-shadow-color,#00000014);
    box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);
  }
  .shadow-\[-20px_0_40px_rgba\(0\,0\,0\,0\.1\)\] {
    --tw-shadow:-20px 0 40px var(--tw-shadow-color,#0000001a);
    box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);
  }
  .shadow-\[0_-4px_15px_rgba\(0\,0\,0\,0\.05\)\] {
    --tw-shadow:0 -4px 15px var(--tw-shadow-color,#0000000d);
    box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);
  }
  .shadow-\[0_-4px_20px_rgba\(0\,0\,0\,0\.05\)\] {
    --tw-shadow:0 -4px 20px var(--tw-shadow-color,#0000000d);
    box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);
  }
  .shadow-\[0_-4px_25px_rgba\(0\,0\,0\,0\.08\)\] {
    --tw-shadow:0 -4px 25px var(--tw-shadow-color,#00000014);
    box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);
  }
  .shadow-\[0_-8px_20px_rgba\(0\,0\,0\,0\.06\)\] {
    --tw-shadow:0 -8px 20px var(--tw-shadow-color,#0000000f);
    box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);
  }
  .shadow-\[0_4px_25px_rgba\(0\,0\,0\,0\.12\)\] {
    --tw-shadow:0 4px 25px var(--tw-shadow-color,#0000001f);
    box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);
  }
  .shadow-\[0_20px_40px_rgba\(0\,0\,0\,0\.06\)\] {
    --tw-shadow:0 20px 40px var(--tw-shadow-color,#0000000f);
    box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);
  }
  .shadow-none {
    --tw-shadow:0 0 #0000;
    box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);
  }
  .shadow-sm {
    --tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);
    box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);
  }
  .shadow-xl {
    --tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a), 0 8px 10px -6px var(--tw-shadow-color,#0000001a);
    box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);
  }
  .ring {
    --tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);
    box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);
  }
  .blur {
    --tw-blur:blur(8px);
    filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .brightness-90 {
    --tw-brightness:brightness(90%);
    filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .brightness-105 {
    --tw-brightness:brightness(105%);
    filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .drop-shadow-md {
    --tw-drop-shadow-size:drop-shadow(0 3px 3px var(--tw-drop-shadow-color,#0000001f));
    --tw-drop-shadow:drop-shadow(var(--drop-shadow-md));
    filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .drop-shadow-sm {
    --tw-drop-shadow-size:drop-shadow(0 1px 2px var(--tw-drop-shadow-color,#00000026));
    --tw-drop-shadow:drop-shadow(var(--drop-shadow-sm));
    filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .grayscale {
    --tw-grayscale:grayscale(100%);
    filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .invert {
    --tw-invert:invert(100%);
    filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .filter {
    filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .backdrop-blur-\[2px\] {
    --tw-backdrop-blur:blur(2px);
    -webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
    backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
  }
  .transition {
    transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;
    transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));
    transition-duration:var(--tw-duration,var(--default-transition-duration));
  }
  .transition-all {
    transition-property:all;
    transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));
    transition-duration:var(--tw-duration,var(--default-transition-duration));
  }
  .transition-colors {
    transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;
    transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));
    transition-duration:var(--tw-duration,var(--default-transition-duration));
  }
  .transition-opacity {
    transition-property:opacity;
    transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));
    transition-duration:var(--tw-duration,var(--default-transition-duration));
  }
  .transition-transform {
    transition-property:transform,translate,scale,rotate;
    transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));
    transition-duration:var(--tw-duration,var(--default-transition-duration));
  }
  .transition-none {
    transition-property:none;
  }
  .duration-150 {
    --tw-duration:.15s;
    transition-duration:.15s;
  }
  .duration-200 {
    --tw-duration:.2s;
    transition-duration:.2s;
  }
  .duration-300 {
    --tw-duration:.3s;
    transition-duration:.3s;
  }
  .duration-350 {
    --tw-duration:.35s;
    transition-duration:.35s;
  }
  .duration-400 {
    --tw-duration:.4s;
    transition-duration:.4s;
  }
  .duration-500 {
    --tw-duration:.5s;
    transition-duration:.5s;
  }
  .duration-700 {
    --tw-duration:.7s;
    transition-duration:.7s;
  }
  .ease-\[cubic-bezier\(0\.25\,1\,0\.5\,1\)\] {
    --tw-ease:cubic-bezier(.25,1,.5,1);
    transition-timing-function:cubic-bezier(.25,1,.5,1);
  }
  .ease-in {
    --tw-ease:var(--ease-in);
    transition-timing-function:var(--ease-in);
  }
  .ease-in-out {
    --tw-ease:var(--ease-in-out);
    transition-timing-function:var(--ease-in-out);
  }
  .ease-out {
    --tw-ease:var(--ease-out);
    transition-timing-function:var(--ease-out);
  }
  .outline-none {
    --tw-outline-style:none;
    outline-style:none;
  }
  .select-none {
    -webkit-user-select:none;
    user-select:none;
  }
  .group-focus-within\:-top-1:is(:where(.group):focus-within *) {
    top:calc(var(--spacing) * -1);
  }
  .group-focus-within\:text-\[10px\]:is(:where(.group):focus-within *) {
    font-size:10px;
  }
  .group-focus-within\:font-medium:is(:where(.group):focus-within *) {
    --tw-font-weight:var(--font-weight-medium);
    font-weight:var(--font-weight-medium);
  }
  .group-focus-within\:tracking-wider:is(:where(.group):focus-within *) {
    --tw-tracking:var(--tracking-wider);
    letter-spacing:var(--tracking-wider);
  }
  .group-focus-within\:text-gray-500:is(:where(.group):focus-within *) {
    color:var(--color-gray-500);
  }
  .group-focus-within\:uppercase:is(:where(.group):focus-within *) {
    text-transform:uppercase;
  }
  @media(hover:hover) {
    .group-hover\:block:is(:where(.group):hover *) {
      display:block;
    }
    .group-hover\:-translate-x-\[3px\]:is(:where(.group):hover *) {
      --tw-translate-x: -3px;
      translate:var(--tw-translate-x) var(--tw-translate-y);
    }
    .group-hover\:translate-x-1:is(:where(.group):hover *) {
      --tw-translate-x:var(--spacing);
      translate:var(--tw-translate-x) var(--tw-translate-y);
    }
    .group-hover\:scale-105:is(:where(.group):hover *) {
      --tw-scale-x:105%;
      --tw-scale-y:105%;
      --tw-scale-z:105%;
      scale:var(--tw-scale-x) var(--tw-scale-y);
    }
    .group-hover\:scale-x-100:is(:where(.group):hover *) {
      --tw-scale-x:100%;
      scale:var(--tw-scale-x) var(--tw-scale-y);
    }
    .group-hover\:scale-\[1\.02\]:is(:where(.group):hover *) {
      scale:1.02;
    }
    .group-hover\:scale-\[1\.04\]:is(:where(.group):hover *) {
      scale:1.04;
    }
    .group-hover\:border-black:is(:where(.group):hover *) {
      border-color:var(--color-black);
    }
    .group-hover\:text-\[\#767676\]:is(:where(.group):hover *) {
      color:#767676;
    }
    .group-hover\:text-gray-500:is(:where(.group):hover *) {
      color:var(--color-gray-500);
    }
    .group-hover\:text-neutral-700:is(:where(.group):hover *) {
      color:var(--color-neutral-700);
    }
    .group-hover\/card\:text-\[\#888888\]:is(:where(.group\/card):hover *) {
      color:#888;
    }
  }
  .selection\:bg-black ::selection {
    background-color:var(--color-black);
  }
  .selection\:bg-black::selection {
    background-color:var(--color-black);
  }
  .selection\:text-white ::selection {
    color:var(--color-white);
  }
  .selection\:text-white::selection {
    color:var(--color-white);
  }
  .placeholder\:font-light::placeholder {
    --tw-font-weight:var(--font-weight-light);
    font-weight:var(--font-weight-light);
  }
  .placeholder\:text-\[\#a0a0a0\]::placeholder {
    color:#a0a0a0;
  }
  .before\:absolute:before {
    content:var(--tw-content);
    position:absolute;
  }
  .before\:left-0:before {
    content:var(--tw-content);
    left:0;
  }
  .before\:text-black:before {
    content:var(--tw-content);
    color:var(--color-black);
  }
.before\:content-\[\'•\'\]:before{--tw-content:"•";content:var(--tw-content)}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:-bottom-0\.5:after{content:var(--tw-content);bottom:calc(var(--spacing) * -.5)}.after\:bottom-\[24px\]:after{content:var(--tw-content);bottom:24px}.after\:left-0:after{content:var(--tw-content);left:0}.after\:h-\[1px\]:after{content:var(--tw-content);height:1px}.after\:w-full:after{content:var(--tw-content);width:100%}.after\:origin-right:after{content:var(--tw-content);transform-origin:100%}.after\:scale-x-0:after{content:var(--tw-content);--tw-scale-x:0%;scale:var(--tw-scale-x) var(--tw-scale-y)}.after\:bg-black:after{content:var(--tw-content);background-color:var(--color-black)}.after\:transition-transform:after{content:var(--tw-content);transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.after\:duration-300:after{content:var(--tw-content);--tw-duration:.3s;transition-duration:.3s}.after\:content-\[\'\'\]:after{--tw-content:"";content:var(--tw-content)}@media(hover:hover){.group-hover\:after\:origin-left:is(:where(.group):hover *):after{content:var(--tw-content);transform-origin:0}.group-hover\:after\:scale-x-100:is(:where(.group):hover *):after{content:var(--tw-content);--tw-scale-x:100%;scale:var(--tw-scale-x) var(--tw-scale-y)}}.last\:border-b-0:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}@media(hover:hover){.hover\:translate-x-0\.5:hover{--tw-translate-x:calc(var(--spacing) * .5);translate:var(--tw-translate-x) var(--tw-translate-y)}.hover\:translate-x-\[3px\]:hover{--tw-translate-x:3px;translate:var(--tw-translate-x) var(--tw-translate-y)}.hover\:scale-\[1\.01\]:hover{scale:1.01}.hover\:scale-\[1\.02\]:hover{scale:1.02}.hover\:scale-\[1\.04\]:hover{scale:1.04}.hover\:rotate-0:hover{rotate:0deg}.hover\:border-black:hover{border-color:var(--color-black)}.hover\:bg-\[\#f9f9f9\]:hover{background-color:#f9f9f9}.hover\:bg-black:hover{background-color:var(--color-black)}.hover\:bg-gray-50:hover{background-color:var(--color-gray-50)}.hover\:bg-gray-500:hover{background-color:var(--color-gray-500)}.hover\:bg-gray-800:hover{background-color:var(--color-gray-800)}.hover\:bg-gray-900:hover{background-color:var(--color-gray-900)}.hover\:bg-transparent:hover{background-color:#0000}.hover\:bg-white:hover{background-color:var(--color-white)}.hover\:text-\[\#767676\]:hover{color:#767676}.hover\:text-black:hover{color:var(--color-black)}.hover\:text-gray-500:hover{color:var(--color-gray-500)}.hover\:text-gray-600:hover{color:var(--color-gray-600)}.hover\:text-white:hover{color:var(--color-white)}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-60:hover{opacity:.6}.hover\:opacity-70:hover{opacity:.7}.hover\:opacity-75:hover{opacity:.75}.hover\:opacity-80:hover{opacity:.8}.hover\:opacity-85:hover{opacity:.85}.hover\:opacity-90:hover{opacity:.9}.hover\:opacity-100:hover{opacity:1}.hover\:grayscale-0:hover{--tw-grayscale:grayscale(0%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.hover\:after\:origin-left:hover:after{content:var(--tw-content);transform-origin:0}.hover\:after\:scale-x-100:hover:after{content:var(--tw-content);--tw-scale-x:100%;scale:var(--tw-scale-x) var(--tw-scale-y)}}.active\:cursor-grabbing:active{cursor:grabbing}.active\:bg-\[\#f0f0f0\]:active{background-color:#f0f0f0}.active\:bg-black:active{background-color:var(--color-black)}.active\:bg-gray-100:active{background-color:var(--color-gray-100)}.active\:text-white:active{color:var(--color-white)}.active\:opacity-40:active{opacity:.4}.active\:opacity-50:active{opacity:.5}.active\:opacity-85:active{opacity:.85}.active\:opacity-100:active{opacity:1}.disabled\:opacity-50:disabled{opacity:.5}@media(min-width:40rem){.sm\:aspect-\[16\/10\]{aspect-ratio:16/10}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:gap-10{gap:calc(var(--spacing) * 10)}.sm\:text-\[26px\]{font-size:26px}}@media(min-width:48rem){.md\:fixed{position:fixed}.md\:top-6{top:calc(var(--spacing) * 6)}.md\:right-4{right:calc(var(--spacing) * 4)}.md\:right-6{right:calc(var(--spacing) * 6)}.md\:left-4{left:calc(var(--spacing) * 4)}.md\:col-span-5{grid-column:span 5/span 5}.md\:col-span-7{grid-column:span 7/span 7}.md\:-mx-8{margin-inline:calc(var(--spacing) * -8)}.md\:my-8{margin-block:calc(var(--spacing) * 8)}.md\:mt-12{margin-top:calc(var(--spacing) * 12)}.md\:-mr-6{margin-right:calc(var(--spacing) * -6)}.md\:mb-3{margin-bottom:calc(var(--spacing) * 3)}.md\:mb-6{margin-bottom:calc(var(--spacing) * 6)}.md\:mb-14{margin-bottom:calc(var(--spacing) * 14)}.md\:mb-20{margin-bottom:calc(var(--spacing) * 20)}.md\:block{display:block}.md\:flex{display:flex}.md\:grid{display:grid}.md\:hidden{display:none}.md\:inline{display:inline}.md\:aspect-\[16\/9\]{aspect-ratio:16/9}.md\:aspect-\[21\/8\]{aspect-ratio:21/8}.md\:aspect-\[21\/9\]{aspect-ratio:21/9}.md\:aspect-\[21\/10\]{aspect-ratio:21/10}.md\:h-3\.5{height:calc(var(--spacing) * 3.5)}.md\:h-5{height:calc(var(--spacing) * 5)}.md\:h-8{height:calc(var(--spacing) * 8)}.md\:h-20{height:calc(var(--spacing) * 20)}.md\:h-\[26px\]{height:26px}.md\:h-\[64px\]{height:64px}.md\:h-\[82vh\]{height:82vh}.md\:h-\[85vh\]{height:85vh}.md\:h-\[90vh\]{height:90vh}.md\:h-auto{height:auto}.md\:max-h-\[82vh\]{max-height:82vh}.md\:min-h-\[50vh\]{min-height:50vh}.md\:w-1\/2{width:50%}.md\:w-1\/3{width:33.3333%}.md\:w-2\/3{width:66.6667%}.md\:w-3\.5{width:calc(var(--spacing) * 3.5)}.md\:w-5{width:calc(var(--spacing) * 5)}.md\:w-8{width:calc(var(--spacing) * 8)}.md\:w-\[35\%\]{width:35%}.md\:w-\[220px\]{width:220px}.md\:w-auto{width:auto}.md\:max-w-2xl{max-width:var(--container-2xl)}.md\:max-w-\[78vw\]{max-width:78vw}.md\:max-w-\[550px\]{max-width:550px}.md\:max-w-\[756px\]{max-width:756px}.md\:-translate-y-full{--tw-translate-y:-100%;translate:var(--tw-translate-x) var(--tw-translate-y)}.md\:snap-none{scroll-snap-type:none}.md\:grid-cols-2{gap: 12px; grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:flex-row-reverse{flex-direction:row-reverse}.md\:justify-end{justify-content:flex-end}.md\:gap-1\.5{gap:calc(var(--spacing) * 1.5)}.md\:gap-3{gap:calc(var(--spacing) * 3)}.md\:gap-5{gap:calc(var(--spacing) * 5)}.md\:gap-6{gap: 20px}.md\:gap-12{gap:calc(var(--spacing) * 12)}.md\:gap-x-4{column-gap:calc(var(--spacing) * 4)}.md\:gap-y-12{row-gap:calc(var(--spacing) * 12)}.md\:overflow-visible{overflow:visible}.md\:rounded-sm{border-radius:var(--radius-sm)}.md\:border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.md\:border-b-0{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.md\:border-\[\#e5e7eb\]{border-color:#e5e7eb}.md\:border-transparent{border-color:#0000}.md\:bg-transparent{background-color:#0000}.md\:p-4{padding:calc(var(--spacing) * 4)}.md\:p-8{padding:calc(var(--spacing) * 8)}.md\:p-14{padding:calc(var(--spacing) * 14)}.md\:p-16{padding:calc(var(--spacing) * 16)}.md\:p-20{padding:calc(var(--spacing) * 20)}.md\:px-0{padding-inline:0}.md\:px-5{padding-inline:calc(var(--spacing) * 5)}.md\:px-6{padding-inline:calc(var(--spacing) * 6)}.md\:px-12{padding-inline:calc(var(--spacing) * 8)}.md\:px-16{padding-inline:calc(var(--spacing) * 16)}.md\:py-2{padding-block:calc(var(--spacing) * 2)}.md\:py-3{padding-block:calc(var(--spacing) * 3)}.md\:py-4{padding-block:calc(var(--spacing) * 4)}.md\:py-8{padding-block:calc(var(--spacing) * 8)}.md\:py-16{padding-block:calc(var(--spacing) * 16)}.md\:py-20{padding-block:calc(var(--spacing) * 20)}.md\:py-24{padding-block:calc(var(--spacing) * 15)}.md\:pt-4{padding-top:calc(var(--spacing) * 4)}.md\:pt-6{padding-top:calc(var(--spacing) * 6)}.md\:pt-16{padding-top:calc(var(--spacing) * 16)}.md\:pr-6{padding-right:calc(var(--spacing) * 6)}.md\:pb-2{padding-bottom:calc(var(--spacing) * 2)}.md\:pb-3{padding-bottom:calc(var(--spacing) * 3)}.md\:pb-4{padding-bottom:calc(var(--spacing) * 4)}.md\:pb-16{padding-bottom:calc(var(--spacing) * 16)}.md\:pb-20{padding-bottom:calc(var(--spacing) * 20)}.md\:pb-28{padding-bottom:calc(var(--spacing) * 28)}.md\:text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.md\:text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.md\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.md\:text-\[8px\]{font-size:8px}.md\:text-\[10\.5px\]{font-size:10.5px}.md\:text-\[11\.5px\]{font-size:11.5px}.md\:text-\[11px\]{font-size:11px}.md\:text-\[12\.5px\]{font-size:12.5px}.md\:text-\[12px\]{font-size:12px}.md\:text-\[13\.5px\]{font-size:13.5px}.md\:text-\[13px\]{font-size:13px}.md\:text-\[14px\]{font-size:14px}.md\:text-\[15px\]{font-size:15px}.md\:text-\[16px\]{font-size:16px}.md\:text-\[20px\]{font-size:20px}.md\:text-\[24px\]{font-size:24px}.md\:text-\[32px\]{font-size:32px}.md\:font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.md\:tracking-\[0\.2em\]{--tw-tracking:.2em;letter-spacing:.2em}.md\:tracking-\[0\.18em\]{--tw-tracking:.18em;letter-spacing:.18em}}@media(min-width:64rem){.lg\:block{display:block}.lg\:flex{display:flex}.lg\:hidden{display:none}.lg\:aspect-\[21\/9\]{aspect-ratio:21/9}.lg\:px-24{padding-inline:calc(var(--spacing) * 15)}.lg\:text-\[15px\]{font-size:15px}.lg\:text-\[16px\]{font-size:16px}.lg\:text-\[22px\]{font-size:22px}.lg\:text-\[28px\]{font-size:28px}}}.no-scrollbar::-webkit-scrollbar{display:none}.hide-scrollbar::-webkit-scrollbar{display:none}.no-scrollbar,.hide-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.snap-y-gallery{scroll-snap-type:y mandatory;overflow-y:scroll}.snap-y-item{scroll-snap-align:start;scroll-snap-stop:always}@keyframes spin{to{transform:rotate(360deg)}}.animate-spinner{animation:.8s linear infinite spin}@keyframes popBurst{0%{opacity:0;transform:scale(.5)}50%{opacity:1;transform:scale(1.25)}to{opacity:1;transform:scale(1)}}.animate-pop{animation:.4s cubic-bezier(.175,.885,.32,1.275) forwards popBurst}@keyframes rayBurst{0%{opacity:0;transform:scale(.3)}50%{opacity:1;transform:scale(1.3)}to{opacity:0;transform:scale(1.6)}}.animate-rays{animation:.5s ease-out forwards rayBurst}.bg-bottega-green{background-color:#2d4a22}.curtain-footer{z-index:30;background-color:#fff;margin-top:-6rem;position:relative}#mobile-join-btn{transition:transform .35s cubic-bezier(.16,1,.3,1),opacity .35s}#mobile-join-btn.hidden-btn{opacity:0;pointer-events:none;transform:translate(-50%,100px)}#mobile-join-btn.visible-btn{opacity:1;pointer-events:auto;transform:translate(-50%)}.accordion-panel{opacity:0;grid-template-rows:0fr;transition:grid-template-rows .35s cubic-bezier(.16,1,.3,1),opacity .25s;display:grid}.accordion-panel>div{overflow:hidden}.accordion-panel.active{opacity:1;grid-template-rows:1fr}.border-black-thin{border-color:#111}svg,button{cursor:pointer}body{-webkit-font-smoothing:auto;-moz-osx-font-smoothing:auto;color:#000;line-height: 1.35;letter-spacing:-.15px;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif}.bv-text-spacing{letter-spacing:-.15px}.bv-heading-spacing{letter-spacing:-.4px}@media(min-width:768px){.bv-heading-spacing{letter-spacing:-.7px}}.thin-icon{stroke-width:1.8px}.hover-underline-anim{display:inline-block;position:relative}.hover-underline-anim:after{content:"";transform-origin:100%;background-color:currentColor;width:100%;height:1px;transition:transform .55s cubic-bezier(.25,1,.5,1);position:absolute;bottom:0;left:0;transform:scaleX(0)}.hover-underline-anim:hover:after{transform-origin:0;transform:scaleX(1)}.hover-underline-swap{text-underline-offset:4px;text-decoration:underline;transition:text-decoration-color .15s;display:inline-block;position:relative}.hover-underline-swap:hover{text-decoration-color:#0000}.hover-underline-swap:after{content:"";transform-origin:100%;background-color:currentColor;width:100%;height:1px;transition:transform .55s cubic-bezier(.25,1,.5,1);position:absolute;bottom:0;left:0;transform:scaleX(0)}.hover-underline-swap:hover:after{transform-origin:0;transform:scaleX(1)}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-scroll-snap-strictness{syntax:"*";inherits:false;initial-value:proximity}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}



/* end @layer utilities (already closed) */

/* —— Site header —— */
.site-header,
header.site-header {
  width: 100%;
  height: 72px;
  padding-inline: 1rem;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) !important;
  align-items: center !important;
  justify-items: stretch;
  position: sticky !important;
  top: 0 !important;
  z-index: 9999;
  background: #fff;
  border-bottom: none !important;
  border: none;
}

.site-header > a:first-child,
.site-header > .site-logo-link {
  justify-self: start;
  align-self: center;
}

.site-nav-wrap {
  justify-self: center;
  grid-column: 2;
  display: none;
  align-items: center;
  justify-content: center;
  height: 100%;
  min-width: 0;
}

@media (min-width: 1024px) {
  .site-nav-wrap.hidden.lg\:flex,
  .site-nav-wrap {
    display: flex !important;
  }
}

.site-header > .header-utils {
  justify-self: end;
  grid-column: 3;
  align-self: center;
}

@media (min-width: 768px) {
  .site-header {
    padding-inline: 2rem;
  }
}

.site-nav {
  display: flex;
  list-style: none;
  margin: 0;
  padding: 0;
  height: 100%;
  justify-content: center;
  align-items: center;
  gap: 0;
}

.site-nav-wrap {
  min-width: 0;
}

/* —— Site footer (Bottega-matched) —— */
.site-footer {
  border-top: 1px solid #0a0a0a;
  background: #fff;
  color: #000;
  font-size: var(--fs-body, 12px);
  font-weight: 400;
  padding: 1.25rem 0 0;
}

@media (min-width: 768px) {
  .site-footer {
    padding: 1.5rem 0 0;
  }
}

.site-footer__top {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2.5rem;
  padding: 0 1rem 1.25rem;
}

@media (min-width: 768px) {
  .site-footer__top {
    padding-inline: 2rem;
    gap: 3rem;
    padding-bottom: 1.35rem;
  }
}

.site-footer__links {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1.5rem;
  padding: 1.25rem 1rem;
}

@media (min-width: 768px) {
  .site-footer__links {
    padding-inline: 2rem;
    gap: 2rem;
    padding-block: 1.35rem;
  }
}

.site-footer__title {
  text-transform: uppercase !important;
  font-weight: 500 !important;
  font-size: var(--fs-body, 12px) !important;
  margin-bottom: 0.75rem;
  color: #000 !important;
  letter-spacing: -0.20px !important;
  line-height: 1.35 !important;
  font-family: var(--font-sans) !important;
}

.site-footer__copy,
.site-footer p {
  color: #000;
  letter-spacing: var(--ls-body);
  line-height: 1.35;
  margin-bottom: 1rem;
  font-size: 12px;
}

.site-footer__rule {
  width: 100%;
  height: 0;
  border: 0;
  border-top: 1px solid #0a0a0a !important;
  margin: 0;
}

.site-footer__locale {
  letter-spacing: var(--ls-body);
}

.site-footer__locale a {
  text-decoration: underline;
  text-underline-offset: 3px;
}

.site-footer__copyright {
  color: #000 !important;
  opacity: 1;
  letter-spacing: var(--ls-body) !important;
  font-size: 11px !important;
}

.site-footer form.border-b,
.site-footer .border-b.border-black {
  border-bottom-color: #000 !important;
}

/* subscribe — slight nudge, constrained width */
.site-footer__subscribe {
  margin-left: 0;
  max-width: calc(28rem + 100px);
  width: 100%;
  transform: none;
  justify-self: start;
}

@media (min-width: 768px) {
  .site-footer__subscribe {
    transform: translateX(4px);
  }
}

/* —— 404 page —— */
.page-404 {
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
  background: #fff;
}

.page-404__error {
  width: 100%;
  background: #fff;
  padding: 1.75rem 1rem 1.25rem;
}

@media (min-width: 768px) {
  .page-404__error {
    padding: 2rem 2rem 1.5rem;
  }
}

.page-404__error-inner {
  max-width: 34rem;
}

.page-404__title {
  font-family: var(--font-sans) !important;
  font-size: 16px !important;
  font-weight: 500;
  color: #000 !important;
  letter-spacing: -0.20px !important;
  line-height: 1.35 !important;
  margin: 0 0 0.75rem;
}

@media (min-width: 768px) {
  .page-404__title {
    font-size: 16px;
    letter-spacing: -0.20px !important;
  }
}

.page-404__text {
  font-family: var(--font-sans);
  font-size: 12px;
  color: #000;
  letter-spacing: var(--ls-body);
  line-height: 1.35;
  margin: 0 0 0.5rem;
  max-width: 32rem;
}

@media (min-width: 768px) {
  .page-404__text {
    font-size: 14px;
  }
}

.page-404__text:last-child {
  margin-bottom: 0;
}

.page-404__text a {
  color: #000;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.page-404__discover {
  background: #fff;
  padding: 2rem 0 2.25rem;
}

@media (min-width: 768px) {
  .page-404__discover {
    padding: 2.5rem 0 2.75rem;
  }
}

.page-404__discover-title {
  font-family: var(--font-sans) !important;
  text-align: center;
  font-size: 10px;
  font-weight: 500;
  letter-spacing: -0.20px !important;
  text-transform: uppercase;
  color: #000 !important;
  line-height: 1.35 !important;
  margin: 0 auto 1.25rem;
  padding-inline: 1rem;
  max-width: 56rem;
}

@media (min-width: 768px) {
  .page-404__discover-title {
    font-size: 11px;
    margin-bottom: 1.5rem;
  }
}

.page-404__grid {
  max-width: 1440px;
  margin: 0 auto;
  padding-inline: 1rem;
  display: grid;
  grid-template-columns: 1fr;
  gap: 0.5rem; /* much smaller gap */
}

@media (min-width: 768px) {
  .page-404__grid {
    grid-template-columns: repeat(3, 1fr);
    gap: 0.625rem;
    padding-inline: 1.5rem;
  }
}

.page-404__card {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  color: #000;
  text-decoration: none;
}

.page-404__card-media {
  width: 100%;
  aspect-ratio: 3 / 4; /* taller cards */
  background: #f4f4f4;
  overflow: hidden;
  margin-bottom: 0.75rem;
}

.page-404__card-media img,
.site-discover__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: none !important;
  transition: none;
}

.page-404__card-label {
  font-family: var(--font-sans);
  font-size: 10px;
  font-weight: 500;
  letter-spacing: -0.20px;
  text-transform: uppercase;
  color: #000;
  line-height: 1.35;
}

@media (min-width: 768px) {
  .page-404__card-label {
    font-size: 10.5px;
  }
}

/* Ink helpers — do NOT override header tracking utilities */
.text-gray-800,
.text-gray-700,
.text-gray-600,
.text-gray-500,
.text-\[\#111\],
.text-\[\#767676\] {
  color: #000 !important;
}

.text-gray-400 {
  color: #000 !important;
  opacity: 0.45;
}

.site-promo,
.site-promo *,
.cookie-banner__accept,
button.bg-black,
a.bg-black {
  color: #fff !important;
}

h2.text-white,
.text-white.font-black {
  color: #fff !important;
  letter-spacing: -0.7px !important;
}

@media (min-width: 768px) {
  h2.text-white,
  .text-white.font-black {
    letter-spacing: -0.20px !important;
  }
}

header a.site-nav__link,
.site-nav__link {
  font-family: var(--font-sans) !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  letter-spacing: -0.20px !important;
  text-transform: none !important;
  color: #000 !important;
  line-height: 1.35 !important;
}

.page-404__care-link {
  color: #000;
  text-decoration: none;
  text-underline-offset: 0;
}

.site-footer__mobile {
  gap: 1.25rem;
  margin-bottom: 0.75rem;
  padding-top: 0.25rem;
}

.site-footer.pt-6 {
  padding-top: 1.25rem;
  padding-bottom: 0.75rem;
  padding-inline: 0;
}

.site-footer__top,
.site-footer__links {
  padding-left: 1rem;
  padding-right: 1rem;
}

@media (min-width: 768px) {
  .site-footer__top,
  .site-footer__links {
    padding-left: 2rem;
    padding-right: 2rem;
  }
}

.site-footer__accordion {
  letter-spacing: 0.12em !important;
}


/* Email / form underlines — black */
form.relative.border-b,
.relative.border-b.border-gray-300,
.relative.border-b.border-black,
footer .border-b,
#footer-newsletter-email,
#mobile-footer-newsletter-email,
#newsletter-sidebar-email {
  border-color: #000 !important;
}
.border-gray-300 {
  border-color: #000 !important;
}

/* Site mega menu — image cards */
.site-nav-wrap {
  position: static;
}

.site-mega {
  position: fixed;
  top: var(--header-bottom, 72px);
  left: 0;
  right: 0;
  width: 100vw;
  max-width: 100vw;
  margin: 0;
  background: #fff;
  z-index: 10050;
  border: none;
  border-top: none;
  box-shadow: none;
  display: none;
  pointer-events: auto;
  padding: 0;
}

.site-mega.site-mega--open,
.site-mega--open {
  display: block;
}

/* Bridge so cursor can move from nav into panel without closing */
.site-mega--open::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: -10px;
  height: 10px;
}

.site-mega__inner {
  /* shift columns together by 30px without changing card gap */
  width: calc(100% - 60px);
  max-width: 1380px;
  margin: 0 auto;
  padding: 2.25rem 2.5rem 2.85rem;
}

.site-mega__grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 15px;
  align-items: start;
}

.site-mega__grid--cols-4 {
  /* card width matches 5-col; group centered */
  grid-template-columns: repeat(4, minmax(0, calc((100% - 4 * 15px) / 5)));
  justify-content: center;
  width: 100%;
  margin-inline: auto;
}

.site-mega__grid--cols-3 {
  grid-template-columns: repeat(3, minmax(0, calc((100% - 4 * 15px) / 5)));
  justify-content: center;
  width: 100%;
}

.site-mega__grid--cols-5 {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.site-mega__card {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 1.1rem;
  min-width: 0;
  text-decoration: none;
  color: #000;
}

.site-mega__media {
  position: relative;
  width: 100%;
  height: 0;
  /* square + 60px taller (+30 then +30 more) */
  padding-bottom: calc(100% + 70px);
  background: #f5f5f5;
  overflow: hidden;
}

.site-mega__media img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transform: none !important;
  transition: none;
}

.site-mega__title {
  font-family: var(--font-sans);
  font-size: 13px;
  font-weight: 500;
  letter-spacing: -0.20px;
  line-height: 1.35;
  color: #000 !important;
  margin: 0;
  text-decoration: none !important;
  border: 0;
  background: none;
  opacity: 1 !important;
}

.site-mega__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.15rem;
}

.site-mega__link {
  font-family: var(--font-sans);
  font-size: 14px !important;
  font-weight: 400;
  letter-spacing: -0.20px !important;
  line-height: 1.35;
  color: #000 !important;
  text-decoration: none !important;
  background: none;
  white-space: nowrap;
  opacity: 1 !important;
}

/* Interactive underline — same motion as site link lines */
.link-line {
  position: relative;
  display: inline-block;
  color: #000 !important;
  text-decoration: none !important;
  opacity: 1 !important;
}

.link-line::after {
  content: "" !important;
  display: block !important;
  position: absolute;
  left: 0;
  bottom: -1px;
  width: 100%;
  height: 1px;
  background-color: currentColor;
  transform: scaleX(0);
  transform-origin: 100%;
  transition: transform 0.55s cubic-bezier(0.25, 1, 0.5, 1);
  pointer-events: none;
}

.link-line:hover::after,
.link-line:focus-visible::after,
.link-line:active::after,
.link-line.is-active::after {
  transform: scaleX(1);
  transform-origin: 0%;
}

/* Menu toggle lines — active/hover state via class, not grey fade */
.header-util--menu:hover,
.header-util--menu:active,
.header-util--menu.is-open {
  opacity: 1;
}

.header-util--menu:hover .header-util__icon--open,
.header-util--menu:active .header-util__icon--open {
  opacity: 0.85;
}

.site-mega__backdrop {
  position: fixed;
  inset: 0;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.35);
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  z-index: 10020;
  pointer-events: none;
}
.site-mega__backdrop.is-open {
  display: block;
}
.site-mega__backdrop.is-closed {
  display: none;
}


/* Header nav — desktop + mobile */
.site-nav__link {
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  letter-spacing: -0.20px !important;
  text-transform: none !important;
  color: #000 !important;
  line-height: 1.35 !important;
  -webkit-font-smoothing: antialiased;
}
header.site-header,
.site-header {
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif !important;
}
.site-header a,
.site-header button {
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif !important;
  color: #000;
}
/* Mobile drawer typography */
.mobile-nav,
.mobile-nav * {
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif !important;
  letter-spacing: -0.20px;
  color: #000;
}
.mobile-nav__item {
  font-size: 15px !important;
  font-weight: 400 !important;
  color: #000 !important;
  letter-spacing: -0.20px !important;
  line-height: 1.35 !important;
}

/* Default controls use body tracking; CTAs override below */
button:not(.uppercase):not([class*="tracking-[0.15em]"]),
.btn:not(.uppercase),
input[type="submit"],
input[type="button"],
a.button:not(.uppercase),
.cookie-banner__accept,
.cookie-banner__link {
  letter-spacing: var(--ls-body) !important;
  line-height: var(--lh);
  font-family: var(--font-sans);
}

/* Footer dividers — Bottega-style light grey rules */
.site-footer,
#footer-container footer {
  border-color: #0a0a0a !important;
}

.site-footer .border-gray-200,
.site-footer .border-gray-100,
.site-footer .border-gray-300,
#footer-container .border-gray-200,
#footer-container .border-gray-100,
#footer-container .border-t,
footer .border-t,
footer .border-b,
.site-footer__accordion,
.site-footer__mobile .border-t,
.site-footer__mobile .border-b,
.site-footer__rule {
  border-color: #0a0a0a !important;
}

/* Compat aliases for renamed promo */

/* Underlines: static CSS underline + matching 1px animated draw */
.hover-underline-anim,
.hover-underline-swap,
.link-line {
  position: relative !important;
  display: inline-block !important;
  color: #000 !important;
  opacity: 1 !important;
}

/* Always-on underline links (Find store, locale, Trade Support) */
.hover-underline-swap {
  text-decoration: underline !important;
  text-decoration-thickness: 1px !important;
  text-underline-offset: 3px !important;
  text-decoration-color: #000 !important;
}

.hover-underline-anim {
  text-decoration: none !important;
}

.hover-underline-anim::after,
.hover-underline-swap::after,
.hover-underline-anim:after,
.hover-underline-swap:after,
.link-line::after {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  bottom: -1px !important;
  width: 100% !important;
  height: 1px !important;
  background-color: currentColor !important;
  transform: scaleX(0);
  transform-origin: 100%;
  transition: transform 0.55s cubic-bezier(0.25, 1, 0.5, 1) !important;
  pointer-events: none !important;
}

/* swap: hide CSS underline on hover, draw matching animated line */
.hover-underline-swap:hover,
.hover-underline-swap:focus-visible {
  text-decoration-color: transparent !important;
}

.hover-underline-anim:hover::after,
.hover-underline-swap:hover::after,
.hover-underline-anim:hover:after,
.hover-underline-swap:hover:after,
.hover-underline-anim:focus-visible::after,
.hover-underline-swap:focus-visible::after,
.link-line:hover::after,
.link-line:focus-visible::after {
  transform: scaleX(1) !important;
  transform-origin: 0% !important;
}

/* slower link underlines sitewide */
.link-line::after,
.hover-underline-anim:after,
.hover-underline-swap:after,
.site-nav__link:after {
  transition-duration: 0.55s !important;
  transition-timing-function: cubic-bezier(0.25, 1, 0.5, 1) !important;
}

/* Semantic size classes — replace arbitrary Tailwind heights */
.site-header {
  height: 72px;
  position: sticky !important;
  top: 0 !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) !important;
  border-bottom: none !important;
  z-index: 9999;
}
.site-btn--h50 {
  height: 50px;
}
.site-bar--h60 {
  height: 60px;
}
@media (min-width: 768px) {
  .site-bar--h60 {
    height: 64px;
  }
}

.site-nav__link--underline::after {
  content: "" !important;
  display: block !important;
  position: absolute;
  left: 0;
  bottom: 24px;
  width: 100%;
  height: 1px;
  background: #000;
  transform: scaleX(0);
  transform-origin: 100%;
  transition: transform var(--link-line-duration, 0.55s) cubic-bezier(0.25, 1, 0.5, 1);
}
.group:hover > .site-nav__link--underline::after,
.site-nav__link--underline:hover::after,
.site-nav__link--underline:focus-visible::after,
.site-nav__link--underline:active::after {
  transform: scaleX(1);
  transform-origin: 0%;
}

/* nav never all-caps */
.site-nav .site-nav__link,
.site-nav__link,
header .site-nav__link {
  text-transform: none !important;
}


/* —— Shared discover grid (home + 404) —— */
.site-discover,
.page-404__discover {
  background: #fff;
  padding: 50px 0;
}

@media (min-width: 768px) {
  .site-discover,
  .page-404__discover {
    padding: calc(var(--spacing) * 15);
  }
}

.site-discover__title,
.page-404__discover-title {
  font-family: var(--font-sans) !important;
  text-align: center;
  font-size: var(--fs-body, 12px);
  font-weight: 500;
  letter-spacing: -0.20px !important;
  text-transform: uppercase;
  color: #000 !important;
  line-height: 1.35 !important;
  margin: 0 auto 1.25rem;
  padding-inline: 1rem;
  max-width: 56rem;
}

@media (min-width: 768px) {
  .site-discover__title,
  .page-404__discover-title {
    font-size: var(--fs-body-lg, 14px);
    margin-bottom: 1.5rem;
    letter-spacing: -0.20px !important;
  }
}

.site-discover__grid,
.page-404__grid {
  max-width: 1440px;
  width: 100%;
  margin: 0 auto;
  padding-inline: 1rem;
  display: grid;
  grid-template-columns: 1fr;
  gap: 2px;
}

@media (min-width: 768px) {
  .site-discover__grid,
  .page-404__grid {
    grid-template-columns: repeat(3, 1fr);
    gap: 2px;
    padding-inline: 2rem;
  }
}

.site-discover__card,
.page-404__card {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  color: #000;
  text-decoration: none;
}

.site-discover__media,
.page-404__card-media {
  width: 100%;
  aspect-ratio: 3 / 4.15;
  min-height: 280px;
  background: #f4f4f4;
  overflow: hidden;
  margin-bottom: 0.85rem;
}

@media (min-width: 768px) {
  .site-discover__media,
  .page-404__card-media {
    min-height: 420px;
  }
}

.site-discover__label,
.page-404__card-label {
  font-family: var(--font-sans);
  font-size: 10px;
  font-weight: 500;
  letter-spacing: var(--ls-body) !important;
  text-transform: uppercase;
  color: #000;
  line-height: 1.35;
}

@media (min-width: 768px) {
  .site-discover__label,
  .page-404__card-label {
    font-size: 10.5px;
    letter-spacing: var(--ls-body) !important;
  }
}

/* Kill image zoom on hover sitewide */
img,
.site-img,
.site-discover__img,
.page-404__card-media img,
.site-mega__media img,
.site-search__most-media img,
.site-search__result-media img {
  transform: none !important;
}

.group:hover img,
a:hover img,
button:hover img,
.group-hover\:scale-105:is(:where(.group):hover *),
.group-hover\:scale-\[1\.02\]:is(:where(.group):hover *),
.group-hover\:scale-\[1\.04\]:is(:where(.group):hover *),
.hover\:scale-105:hover,
.hover\:scale-\[1\.03\]:hover {
  --tw-scale-x: 1 !important;
  --tw-scale-y: 1 !important;
  scale: none !important;
  transform: none !important;
}

/* —— Full-screen search (slide up + fade) —— */
.site-search {
  position: fixed;
  inset: 0;
  z-index: 10050;
  background: #fff;
  color: #000;
  display: flex;
  flex-direction: column;
  transform: none;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.2s ease, visibility 0s linear 0.2s;
  overscroll-behavior: none;
  overflow: hidden;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  filter: none !important;
}

.site-search--open {
  transform: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transition: opacity 0.18s ease, visibility 0s linear 0s;
  z-index: 10050;
}

.site-search--closed {
  transform: none;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

.site-search__panel {
  display: flex;
  flex-direction: column;
  height: 100%;
  max-height: 100dvh;
  overflow: hidden;
  padding: 1rem 1.25rem 1.5rem;
}

@media (min-width: 768px) {
  .site-search__panel {
    padding: 1.25rem 2.5rem 2rem;
  }
}

.site-search__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 1.75rem;
  flex-shrink: 0;
}

.site-search__logo {
  display: inline-flex;
  align-items: center;
  line-height: 1.35;
}

.site-search__logo .site-logo {
  height: 23px;
  width: auto;
  display: block;
}

@media (min-width: 768px) {
  .site-search__logo .site-logo {
    height: 25px;
  }
}

.site-search__close {
  width: 28px;
  height: 28px;
  border: 0;
  background: transparent;
  padding: 0;
  cursor: pointer;
  color: #000;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.site-search__close-icon {
  width: 18px;
  height: 18px;
  display: block;
}

.site-search__field {
  position: relative;
  display: flex;
  align-items: center;
  border-bottom: 1px solid #000;
  padding-bottom: 0.65rem;
  margin-bottom: 1.75rem;
  flex-shrink: 0;
}

.site-search__input {
  flex: 1;
  width: 100%;
  border: 0;
  outline: none;
  background: transparent;
  color: #000;
  font-family: var(--font-sans);
  font-weight: 400;
  font-size: 14px;
  letter-spacing: -0.20px;
  line-height: 1.35;
  text-transform: uppercase;
  padding: 0.15rem 4.5rem 0.3rem 0;
  min-height: 0;
  height: auto;
  -webkit-appearance: none;
  appearance: none;
  border-radius: 0;
}

.site-search__input::placeholder {
  color: #a3a3a3;
  opacity: 1;
  font-size: 14px;
  letter-spacing: -0.20px;
  text-transform: none;
}

.site-search__input::-webkit-search-decoration,
.site-search__input::-webkit-search-cancel-button {
  -webkit-appearance: none;
  appearance: none;
}

.site-search__field-actions {
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  display: flex;
  align-items: center;
  gap: 0.65rem;
}

.site-search__clear,
.site-search__submit-icon {
  width: 22px;
  height: 22px;
  border: 0;
  background: transparent;
  padding: 0;
  color: #000;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}

.site-search__clear svg,
.site-search__submit-icon svg {
  width: 18px;
  height: 18px;
  display: block;
}

.site-search__body {
  flex: 1;
  min-height: 0;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
  position: relative;
}

.site-search__loader {
  position: absolute;
  inset: 0;
  z-index: 5;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  background: #fff;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  filter: none;
}

.site-search__loader-dots {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.65rem;
}

.site-search__dot {
  width: 11px;
  height: 11px;
  border-radius: 50%;
  background: #000;
  display: block;
  animation: site-search-bounce 0.7s ease-in-out infinite;
}

.site-search__dot:nth-child(2) {
  animation-delay: 0.12s;
}

.site-search__dot:nth-child(3) {
  animation-delay: 0.24s;
}

@keyframes site-search-bounce {
  0%,
  80%,
  100% {
    transform: translateY(0);
    opacity: 0.35;
  }
  40% {
    transform: translateY(-10px);
    opacity: 1;
  }
}

.site-search__status {
  max-width: 100%;
  width: 100%;
  box-sizing: border-box;
  overflow-wrap: anywhere;
  word-break: break-word;
  margin: 0 0 1.25rem;
}

.site-search__status--aside {
  max-width: min(100%, 248px);
  padding-right: 0.5rem;
}

@media (min-width: 1024px) {
  .site-search__status,
  .site-search__status--aside {
    max-width: 248px;
  }
}

.site-search__empty {
  font-size: 12px;
  margin: 0 0 0.65rem;
  max-width: 100%;
  line-height: 1.35;
  letter-spacing: var(--ls-body);
}

.site-search__help {
  font-size: 12px;
  margin: 0 0 1.25rem;
  max-width: 100%;
  line-height: 1.35;
  letter-spacing: var(--ls-body);
}

@media (min-width: 768px) {
  .site-search__empty,
  .site-search__help {
    font-size: 14px;
  }
}

.site-search__hint {
  display: flex;
  align-items: center;
  gap: 0.55rem;
  margin-bottom: 1.5rem;
}

.site-search__hint-icon {
  width: 14px;
  height: 14px;
  flex-shrink: 0;
}

.site-search__hint-text {
  font-size: 13px;
  background: none;
  border: 0;
  padding: 0;
  cursor: pointer;
  font-family: var(--font-sans);
}

@media (min-width: 768px) {
  .site-search__hint-text {
    font-size: 15px;
  }
}

.site-search__results {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.85rem 2px;
  max-width: 420px;
  margin-bottom: 2rem;
}

@media (min-width: 768px) {
  .site-search__results {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    max-width: 720px;
    gap: 1rem 2px;
  }
}

.site-search__result {
  display: flex;
  flex-direction: column;
  gap: 0.55rem;
  text-decoration: none;
  color: #000;
}

.site-search__result-media {
  width: 100%;
  aspect-ratio: 1 / 1;
  background: #f3f3f3;
  overflow: hidden;
}

.site-search__result-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.site-search__result-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
}

.site-search__result-title {
  font-size: 13px;
  font-weight: 400;
}

@media (min-width: 768px) {
  .site-search__result-title {
    font-size: 15px;
  }
}

.site-search__result-swatch {
  font-size: 11px;
  color: #000;
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
}

.site-search__result-swatch::before {
  content: "";
  width: 12px;
  height: 12px;
  background: #f0ebe3;
  border: 1px solid #ddd;
  display: inline-block;
}

.site-search__layout {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2rem;
  padding-bottom: 2rem;
}

@media (min-width: 1024px) {
  .site-search__layout {
    grid-template-columns: minmax(200px, 248px) 1fr;
    gap: 0;
    align-items: start;
  }

  .site-search__aside {
    padding-right: calc(2rem - 3px);
  }

  .site-search__most {
    padding-left: calc(2rem - 3px);
    border-left: 1px solid #d6d6d6;
    min-height: 100%;
  }
}

.site-search__aside {
  display: flex;
  flex-direction: column;
  gap: 1.75rem;
}

.site-search__heading {
  font-family: var(--font-sans) !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  letter-spacing: -0.20px !important;
  text-transform: uppercase;
  margin: 0 0 0.9rem;
  color: #000 !important;
  line-height: 1.35 !important;
}

.site-search__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.7rem;
}

.site-search__list-link {
  font-family: var(--font-sans);
  font-size: 13px;
  font-weight: 400;
  color: #000;
  background: none;
  border: 0;
  padding: 0;
  cursor: pointer;
  text-align: left;
  text-decoration: none;
  line-height: 1.35;
}

@media (min-width: 768px) {
  .site-search__list-link {
    font-size: 15px;
  }
}

.site-search__most-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.75rem 2px;
}

@media (min-width: 640px) {
  .site-search__most-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (min-width: 1024px) {
  .site-search__most-grid {
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 0.75rem 2px;
  }
}

.site-search__most-card {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.55rem;
  border: 0;
  background: transparent;
  padding: 0;
  cursor: pointer;
  text-align: left;
  color: #000;
}

.site-search__most-media {
  width: 100%;
  aspect-ratio: 3 / 4;
  overflow: hidden;
  background: #f3f3f3;
}

.site-search__most-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.site-search__most-label {
  font-size: 12px;
  font-weight: 400;
  letter-spacing: -0.20px;
  line-height: 1.35;
}

@media (min-width: 768px) {
  .site-search__most-label {
    font-size: 13px;
  }
}



/* Keep nav underline while mega is open */
.site-nav__item.is-open > .site-nav__link--underline::after {
  transform: scaleX(1);
  transform-origin: 0%;
}


/* —— Body type sitewide (search/mobile); header+mega set to 14px below —— */
.mobile-nav__item,
.mobile-nav a,
.mobile-nav button,
.site-search__list-link,
.site-search__empty,
.site-search__help,
.site-search__hint-text,
.site-search__result-title,
.site-search__most-label,
.page-404__text {
  font-family: var(--font-sans) !important;
  font-size: var(--fs-body, 12px) !important;
  line-height: var(--lh) !important;
  letter-spacing: -0.20px !important;
}

@media (min-width: 768px) {
  .mobile-nav__item,
  .mobile-nav a,
  .mobile-nav button,
  .site-search__list-link,
  .site-search__empty,
  .site-search__help,
  .site-search__hint-text,
  .site-search__result-title,
  .site-search__most-label,
  .page-404__text {
    font-size: var(--fs-body-lg, 14px) !important;
  }
}

.site-nav__link,
.site-mega__title,
.site-mega__link {
  font-family: var(--font-sans) !important;
  font-size: 14px !important;
  line-height: 1.35 !important;
  letter-spacing: -0.20px !important;
}

/* Mega titles stay slightly heavier but same size/lh */
.site-mega__title {
  font-weight: 500 !important;
}

/* Header + mega links: 14px / -0.15px */
.site-nav__link,
header a.site-nav__link {
  letter-spacing: -0.20px !important;
  font-weight: 500 !important;
  font-size: 14px !important;
}

/* —— CTA buttons (hero / site) — match BABY CAMPANA style —— */
.site-cta,
a.uppercase.bg-white:not(.cta-on-image),
a.uppercase.bg-black:not(.cta-on-image),
button.uppercase,
.site-btn,
a[class*="tracking-[0.15em]"],
button[class*="tracking-[0.15em]"] {
  font-family: var(--font-sans) !important;
  letter-spacing: 0.15em !important;
  line-height: 1.35 !important;
  font-weight: 500 !important;
  text-transform: uppercase;
}

/* Don't force body LS onto CTA buttons */
button.uppercase,
a.uppercase:not(.cta-on-image),
.site-cta,
.site-btn,
a[class*="tracking-[0.15em]"]:not(.cta-on-image),
button[class*="tracking-[0.15em]"] {
  letter-spacing: 0.15em !important;
}


/* mega no border */
.site-mega,
.site-mega.site-mega--open {
  border: 0 !important;
  border-top: 0 !important;
  box-shadow: none !important;
}

.site-header,
header.site-header {
  border-bottom-color: transparent;
}


#root {
  overflow: visible;
  min-height: 100%;
  height: auto;
}

/* —— Force body type sitewide: 13px mobile / 14px desktop —— */
:root {
  --fs-body: 13px;
  --fs-body-lg: 14px;
  --ls-body: -0.20px;
  --ls-heading: -0.40px;
  --ls-heading-lg: -0.70px;
  --link-line-duration: 0.45s;
}

html,
body,
#root {
  font-size: var(--fs-body) !important;
  letter-spacing: var(--ls-body) !important;
}

@media (min-width: 768px) {
  html,
  body,
  #root {
    font-size: var(--fs-body-lg) !important;
  }
}

h1, h2, h3, h4, h5, h6 {
  letter-spacing: -0.20px !important;
  line-height: var(--lh) !important;
  font-family: var(--font-sans) !important;
}

/* Remap small utilities → body size; EXCLUDE promo bar + CTA buttons */
.text-\[7px\],
.text-\[8px\],
.text-\[9px\],
.text-\[10px\],
.text-\[10\.5px\],
.text-\[11px\],
.text-\[11\.5px\],
.text-\[12px\],
.text-\[12\.5px\],
.text-\[13px\],
.text-\[13\.5px\],
.md\:text-\[8px\],
.md\:text-\[10px\],
.md\:text-\[10\.5px\],
.md\:text-\[11px\],
.md\:text-\[11\.5px\],
.md\:text-\[12px\],
.md\:text-\[12\.5px\],
.md\:text-\[13px\],
.md\:text-\[13\.5px\],
.site-nav__link,
.site-mega__title,
.site-mega__link,
.site-search__list-link,
.site-search__empty,
.site-search__help,
.site-search__hint-text,
.site-search__result-title,
.site-search__most-label,
.site-search__heading,
.mobile-nav__item,
.mobile-nav a,
.mobile-nav button,
.site-footer,
.site-footer a,
.site-footer button,
.site-footer li,
.site-footer__copy,
.page-404__title,
.page-404__text,
.page-404__discover-title,
.site-discover__title,
.site-discover__label,
.page-404__card-label,
.accordion-btn {
  font-size: var(--fs-body) !important;
  line-height: var(--lh, 1.35) !important;
  letter-spacing: -0.20px !important;
  font-family: var(--font-sans) !important;
}

/* Header + mega dropdown links stay 14px */
header a.site-nav__link,
.site-nav__link,
.site-mega__title,
.site-mega__link {
  font-size: 14px !important;
  letter-spacing: -0.20px !important;
}

.site-discover__title,
.page-404__discover-title,
.page-404__title,
.site-section__title,
.site-footer__title {
  letter-spacing: -0.20px !important;
}

.site-footer__title {
  font-size: var(--fs-body, 12px) !important;
  text-transform: uppercase !important;
  font-weight: 500 !important;
}

@media (min-width: 768px) {
  .site-discover__title,
  .page-404__discover-title,
  .page-404__title,
  .site-section__title,
  .site-footer__title {
    letter-spacing: -0.20px !important;
  }
}

@media (min-width: 768px) {
  .text-\[7px\],
  .text-\[8px\],
  .text-\[9px\],
  .text-\[10px\],
  .text-\[10\.5px\],
  .text-\[11px\],
  .text-\[11\.5px\],
  .text-\[12px\],
  .text-\[12\.5px\],
  .text-\[13px\],
  .text-\[13\.5px\],
  .text-\[14px\],
  .text-\[15px\],
  .md\:text-\[8px\],
  .md\:text-\[10px\],
  .md\:text-\[10\.5px\],
  .md\:text-\[11px\],
  .md\:text-\[11\.5px\],
  .md\:text-\[12px\],
  .md\:text-\[12\.5px\],
  .md\:text-\[13px\],
  .md\:text-\[13\.5px\],
  .md\:text-\[14px\],
  .md\:text-\[15px\],
  .md\:text-sm,
  .site-search__list-link,
  .site-search__empty,
  .site-search__help,
  .site-search__hint-text,
  .site-search__result-title,
  .site-search__most-label,
  .site-search__heading,
  .mobile-nav__item,
  .mobile-nav a,
  .mobile-nav button,
  .site-footer,
  .site-footer a,
  .site-footer button,
  .site-footer li,
  .site-footer__copy,
  .page-404__title,
  .page-404__text,
  .page-404__discover-title,
  .site-discover__title,
  .site-discover__label,
  .page-404__card-label,
  .accordion-btn {
    font-size: var(--fs-body-lg) !important;
  }

  header a.site-nav__link,
  .site-nav__link,
  .site-mega__title,
  .site-mega__link {
    font-size: 14px !important;
    letter-spacing: -0.20px !important;
  }

  .site-footer__title {
    font-size: var(--fs-body, 12px) !important;
    letter-spacing: -0.20px !important;
  }
}

/* Announcement bar keeps its own size — inherits site font + body letter-spacing */
.site-promo,
.site-promo *,
.site-promo__label {
  font-size: 11px !important;
  letter-spacing: var(--ls-body) !important;
  line-height: 1.35 !important;
  font-family: var(--font-sans) !important;
  color: #fff !important;
}

/* CTA / hero buttons — reverted compact size */
a.uppercase.bg-white:not(.cta-on-image),
a.uppercase.bg-black:not(.cta-on-image),
button.uppercase,
.site-cta,
.site-btn,
a[class*="tracking-[0.15em]"],
button[class*="tracking-[0.15em]"],
a[class*="tracking-[0.2em]"],
button[class*="tracking-[0.2em]"],
.cookie-banner__accept {
  font-size: 12px !important;
  letter-spacing: 0.15em !important;
  line-height: 1.35 !important;
  font-family: var(--font-sans) !important;
}
.cookie-banner__copy {
  font-size: 10px !important;
  letter-spacing: var(--ls-body) !important;
}
@media (min-width: 768px) {
  .cookie-banner__copy {
    font-size: 11px !important;
  }
}

p, li, label, td, th {
  font-size: var(--fs-body) !important;
  line-height: var(--lh, 1.35) !important;
  letter-spacing: var(--ls-body) !important;
  font-family: var(--font-sans) !important;
}
@media (min-width: 768px) {
  p, li, label, td, th {
    font-size: var(--fs-body-lg) !important;
  }
}

/* Interactive underlines — polished Bottega-like draw */
.link-line::after,
.hover-underline-anim:after,
.hover-underline-swap:after,
.site-nav__link--underline::after,
.site-nav__link:after {
  transition-duration: 0.55s !important;
  transition-timing-function: cubic-bezier(0.25, 1, 0.5, 1) !important;
}

/* Mega sits flush under header + roomy link stack */
.site-mega.site-mega--open {
  top: var(--header-bottom, 72px) !important;
}
.site-mega__list {
  gap: 1.15rem !important;
}
.site-mega__card {
  gap: 1.1rem !important;
}

/* Sticky header hard guarantee */
.site-header,
header.site-header {
  position: sticky !important;
  top: 0 !important;
  z-index: 9999 !important;
}

/* Homepage + 404 section stack — max 5px between sections */
main.flex.flex-col,
main.page-404,
.page-404,
.site-main-stack,
.gap-\[5px\],
.gap-\[0\.8em\] {
  gap: 16px !important;
}

/* Homepage card grids only — 2px between cards (not mega / search) */
.site-main-stack .site-discover__grid,
.site-main-stack .site-home-cards,
.page-404 .site-discover__grid,
.page-404__grid {
  gap: 2px !important;
}

/* Trade Services / home card labels — body LS; titles use heading LS */
.site-home-card__label,
.site-main-stack .site-home-cards .uppercase,
div.site-home-card__label,
.site-discover__label,
.page-404__card-label {
  letter-spacing: var(--ls-body) !important;
  font-family: var(--font-sans) !important;
  font-weight: 500 !important;
  color: #000 !important;
  text-transform: uppercase !important;
}

.site-section__title,
.site-discover__title,
.page-404__discover-title {
  letter-spacing: -0.20px !important;
  font-family: var(--font-sans) !important;
  font-weight: 500 !important;
  color: #000 !important;
  text-transform: uppercase !important;
}

@media (min-width: 768px) {
  .site-section__title,
  .site-discover__title,
  .page-404__discover-title {
    letter-spacing: -0.20px !important;
  }
}

.site-section__title {
  font-size: var(--fs-body, 12px) !important;
  text-align: center;
  margin: 0 0 2.5rem;
}
@media (min-width: 768px) {
  .site-section__title {
    font-size: var(--fs-body-lg, 14px) !important;
  }
}

/* Trade Services images — match discover card height */
.site-home-card__media,
.site-main-stack .site-home-cards .aspect-\[4\/5\] {
  aspect-ratio: 3 / 4.15 !important;
  min-height: 280px;
  margin-bottom: 0.85rem !important;
}
@media (min-width: 768px) {
  .site-home-card__media,
  .site-main-stack .site-home-cards .aspect-\[4\/5\] {
    min-height: 420px;
  }
}

/* Mobile drawer: fade in/out — no slide */
.mobile-nav {
  transition: opacity 0.2s ease, visibility 0.2s ease !important;
  transform: none !important;
}
.mobile-nav.is-open {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
}
.mobile-nav.is-closed {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transform: none !important;
}

/* Mega flush under header, full viewport width */
.site-mega,
.site-mega.site-mega--open {
  position: fixed !important;
  top: var(--header-bottom, 72px) !important;
  left: 0 !important;
  right: 0 !important;
  width: 100vw !important;
  max-width: 100vw !important;
  margin: 0 !important;
  transform: none !important;
}
.site-mega__backdrop {
  /* portaled to body — full viewport; do not pin under header */
  top: 0 !important;
  inset: 0 !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

/* Footer titles — heading LS (mobile -0.40 / desktop -0.70) */
.site-footer__title,
.site-footer h4 {
  letter-spacing: -0.20px !important;
  font-size: var(--fs-body, 12px) !important;
  text-transform: uppercase !important;
  font-weight: 500 !important;
}
@media (min-width: 768px) {
  .site-footer__title,
  .site-footer h4,
  .site-section__title,
  .site-discover__title,
  .page-404__discover-title,
  .page-404__title {
    letter-spacing: -0.20px !important;
  }
}

.site-footer__rule {
  border-top: 1px solid #0a0a0a !important;
  width: 100%;
}

.site-footer {
  border-top-color: #0a0a0a !important;
}

/* Subscribe — slight nudge, not stretched */
.site-footer__subscribe {
  margin-left: 0 !important;
  max-width: calc(28rem + 70px) !important;
  width: 100%;
  transform: none;
  justify-self: start;
}
@media (min-width: 768px) {
  .site-footer__subscribe {
    transform: translateX(4px);
  }
}

/* Keep swap links underlined at rest; anim matches 1px weight */
.hover-underline-swap {
  text-decoration: underline !important;
  text-decoration-thickness: 1px !important;
  text-underline-offset: 3px !important;
}
.hover-underline-anim::after,
.hover-underline-swap::after,
.link-line::after {
  height: 1px !important;
  transition: transform 0.55s cubic-bezier(0.25, 1, 0.5, 1) !important;
}
.link-line::after,
.hover-underline-anim:after,
.hover-underline-swap:after,
.site-nav__link--underline::after,
.site-nav__link:after {
  transition-duration: 0.55s !important;
  transition-timing-function: cubic-bezier(0.25, 1, 0.5, 1) !important;
}

/* Kill rubber-band bounce (CSS only — do not block wheel/touch) */
html,
body,
#root {
  overscroll-behavior: none;
  overscroll-behavior-y: none;
  overscroll-behavior-x: none;
}

/* No grey hovers on icons / links */
.header-util:hover,
.header-util:focus-visible,
.header-util:active,
.site-search__close:hover,
.site-search__clear:hover,
.site-search__list-link:hover,
.site-search__most-card:hover,
.site-search__result:hover,
.site-nav__link:hover,
.mobile-nav a:hover,
.mobile-nav button:hover,
.site-footer a:hover,
.page-404__care-link:hover,
[class*="hover:text-gray"]:hover,
[class*="hover:text-[#767676]"]:hover,
.group:hover .group-hover\:text-\[\#767676\],
.group:hover [class*="group-hover:text-gray"] {
  color: #000 !important;
  opacity: 1 !important;
  background-color: transparent;
}

.site-promo__close:hover,
.site-promo a:hover {
  color: #fff !important;
  opacity: 1 !important;
}

.site-search,
.site-search *,
.site-search__loader {
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  filter: none !important;
}

/* Parents must not clip sticky header */
#root,
body {
  overflow-x: clip;
  overflow-y: visible;
}
html {
  overflow-y: scroll;
  overscroll-behavior-y: none !important;
}

/* Footer headings = body size; tighter section rhythm */
.site-footer__title,
.site-footer h4,
.site-footer .site-footer__title {
  font-size: var(--fs-body, 12px) !important;
}
@media (min-width: 768px) {
  .site-footer__title,
  .site-footer h4,
  .site-footer .site-footer__title {
    font-size: var(--fs-body-lg, 14px) !important;
  }
}
.site-footer__locale {
  padding-block: 1rem !important;
  gap: 0.5rem !important;
}
.site-footer__copyright,
.site-footer .pt-3.pb-1 {
  padding-top: 0.65rem !important;
  padding-bottom: 0.65rem !important;
}
.site-mega__grid {
  gap: 15px !important;
}
.site-mega__grid--cols-4 {
  grid-template-columns: repeat(4, minmax(0, calc((100% - 4 * 15px) / 5))) !important;
}
.site-mega__grid--cols-3 {
  grid-template-columns: repeat(3, minmax(0, calc((100% - 4 * 15px) / 5))) !important;
}


/* Small non-button text → body size; buttons excluded (kept 10px) */
.text-\[10px\]:not(a.uppercase):not(button.uppercase):not(.site-cta):not(.site-btn):not([class*="tracking-[0.15em]"]),
.text-\[10\.5px\]:not(a.uppercase):not(button.uppercase),
.text-\[11px\]:not(a.uppercase):not(button.uppercase):not(.site-btn),
.text-\[11\.5px\],
.site-section__title,
.site-discover__title,
.site-discover__label,
.site-home-card__label,
.page-404__discover-title,
.page-404__card-label,
.site-footer__title,
.site-footer h4 {
  font-size: var(--fs-body, 12px) !important;
}
@media (min-width: 768px) {
  .text-\[10px\]:not(a.uppercase):not(button.uppercase):not(.site-cta):not(.site-btn):not([class*="tracking-[0.15em]"]),
  .text-\[10\.5px\]:not(a.uppercase):not(button.uppercase),
  .text-\[11px\]:not(a.uppercase):not(button.uppercase):not(.site-btn),
  .text-\[11\.5px\],
  .site-section__title,
  .site-discover__title,
  .site-discover__label,
  .site-home-card__label,
  .page-404__discover-title,
  .page-404__card-label,
  .site-footer__title,
  .site-footer h4 {
    font-size: var(--fs-body-lg, 14px) !important;
  }
}

/* Promo bar stays its own compact size */
.site-promo,
.site-promo *,
.site-promo__label {
  font-size: 11px !important;
}

/* —— Header + mega dropdown links: 14px —— */
.site-nav__link,
header .site-nav__link,
.site-mega__title,
.site-mega__link {
  font-size: 14px !important;
  line-height: 1.35 !important;
  letter-spacing: -0.20px !important;
}

/* —— Letter-spacing by size ——
   < 24px → -0.15px
   ≥ 25px → -0.40px mobile / -0.70px desktop
*/
:root {
  --ls-body: -0.20px;
  --ls-large: -0.40px;
  --ls-large-lg: -0.70px;
}

html, body, #root,
p, li, label, td, th, a, span, div, button, input, textarea, select,
.site-footer, .site-footer *,
.site-search, .site-search *,
.site-discover__title, .site-discover__label,
.site-home-card__label, .site-section__title,
.page-404__title, .page-404__text,
.site-mega__title, .site-mega__link,
.site-nav__link {
  letter-spacing: -0.20px;
}

/* Large type (≥25px only — never blanket h1/h2) */
.text-\[25px\], .text-\[26px\], .text-\[27px\], .text-\[28px\], .text-\[29px\],
.text-\[30px\], .text-\[32px\], .text-\[34px\], .text-\[36px\], .text-\[40px\],
.text-\[42px\], .text-\[44px\], .text-\[48px\], .text-\[52px\], .text-\[56px\],
.text-\[60px\], .text-\[64px\], .text-\[72px\],
.md\:text-\[25px\], .md\:text-\[26px\], .md\:text-\[28px\], .md\:text-\[30px\],
.md\:text-\[32px\], .md\:text-\[36px\], .md\:text-\[40px\], .md\:text-\[48px\],
.text-3xl, .text-4xl, .text-5xl, .text-6xl, .text-7xl, .text-8xl, .text-9xl,
.md\:text-3xl, .md\:text-4xl, .md\:text-5xl, .md\:text-6xl,
h1.text-3xl, h1.text-4xl, h1.text-5xl, h2.text-3xl, h2.text-4xl, h2.text-5xl {
  letter-spacing: -0.40px !important;
}
@media (min-width: 768px) {
  .text-\[25px\], .text-\[26px\], .text-\[27px\], .text-\[28px\], .text-\[29px\],
  .text-\[30px\], .text-\[32px\], .text-\[34px\], .text-\[36px\], .text-\[40px\],
  .text-\[42px\], .text-\[44px\], .text-\[48px\], .text-\[52px\], .text-\[56px\],
  .text-\[60px\], .text-\[64px\], .text-\[72px\],
  .md\:text-\[25px\], .md\:text-\[26px\], .md\:text-\[28px\], .md\:text-\[30px\],
  .md\:text-\[32px\], .md\:text-\[36px\], .md\:text-\[40px\], .md\:text-\[48px\],
  .text-3xl, .text-4xl, .text-5xl, .text-6xl, .text-7xl, .text-8xl, .text-9xl,
  .md\:text-3xl, .md\:text-4xl, .md\:text-5xl, .md\:text-6xl,
  h1.text-3xl, h1.text-4xl, h1.text-5xl, h2.text-3xl, h2.text-4xl, h2.text-5xl {
    letter-spacing: -0.70px !important;
  }
}

/* Buttons keep their own tracking (not size-based LS) */
a.uppercase.bg-white:not(.cta-on-image),
a.uppercase.bg-black:not(.cta-on-image),
button.uppercase,
.site-cta,
.site-btn,
a[class*="tracking-[0.15em]"],
button[class*="tracking-[0.15em]"],
a[class*="tracking-[0.2em]"],
button[class*="tracking-[0.2em]"],
.cookie-banner__accept {
  font-size: 12px !important;
  letter-spacing: 0.15em !important;
}



/* —— Letter-spacing hard rules (size-based) —— */
/* Default / under 24px */
html, body, #root, p, li, label, span, a, h1, h2, h3, h4, h5, h6,
.site-main-stack h2, .site-main-stack h3,
.text-\[13px\], .text-\[14px\], .text-\[15px\], .text-sm,
.md\:text-sm, .font-black, .drop-shadow-sm {
  letter-spacing: -0.20px !important;
}

/* Kill em-tracking on small type so size-based LS wins */
.tracking-\[0\.3em\],
.tracking-\[0\.2em\],
.tracking-\[0\.22em\],
.tracking-\[0\.18em\],
.tracking-\[0\.16em\],
.tracking-\[0\.14em\],
.tracking-\[0\.12em\],
.tracking-wider,
.tracking-wide,
.tracking-widest {
  letter-spacing: -0.20px !important;
}

/* Buttons keep own CTA tracking */
a.uppercase.bg-white:not(.cta-on-image),
a.uppercase.bg-black:not(.cta-on-image),
button.uppercase,
.site-cta,
.site-btn,
a[class*="tracking-[0.15em]"],
button[class*="tracking-[0.15em]"],
.cookie-banner__accept {
  letter-spacing: 0.15em !important;
  font-size: 12px !important;
}

/* ≥25px large type */
.text-\[25px\], .text-\[26px\], .text-\[27px\], .text-\[28px\], .text-\[29px\],
.text-\[30px\], .text-\[32px\], .text-\[34px\], .text-\[36px\], .text-\[40px\],
.text-\[42px\], .text-\[44px\], .text-\[48px\], .text-\[52px\], .text-\[56px\],
.text-\[60px\], .text-\[64px\], .text-\[72px\],
.md\:text-\[25px\], .md\:text-\[26px\], .md\:text-\[28px\], .md\:text-\[30px\],
.md\:text-\[32px\], .md\:text-\[36px\], .md\:text-\[40px\], .md\:text-\[48px\],
.text-3xl, .text-4xl, .text-5xl, .text-6xl, .text-7xl, .text-8xl, .text-9xl,
.md\:text-3xl, .md\:text-4xl, .md\:text-5xl, .md\:text-6xl {
  letter-spacing: -0.40px !important;
}
@media (min-width: 768px) {
  .text-\[25px\], .text-\[26px\], .text-\[27px\], .text-\[28px\], .text-\[29px\],
  .text-\[30px\], .text-\[32px\], .text-\[34px\], .text-\[36px\], .text-\[40px\],
  .text-\[42px\], .text-\[44px\], .text-\[48px\], .text-\[52px\], .text-\[56px\],
  .text-\[60px\], .text-\[64px\], .text-\[72px\],
  .md\:text-\[25px\], .md\:text-\[26px\], .md\:text-\[28px\], .md\:text-\[30px\],
  .md\:text-\[32px\], .md\:text-\[36px\], .md\:text-\[40px\], .md\:text-\[48px\],
  .text-3xl, .text-4xl, .text-5xl, .text-6xl, .text-7xl, .text-8xl, .text-9xl,
  .md\:text-3xl, .md\:text-4xl, .md\:text-5xl, .md\:text-6xl {
    letter-spacing: -0.70px !important;
  }
}

/* Homepage heroes — vertical breathing room */
.site-main-stack > section.relative.w-full {
  margin-block: 0;
}
.site-home-hero {
  padding-block: 0;
  box-sizing: border-box;
}
.site-main-stack > .site-home-hero + .site-home-hero,
.site-main-stack > section.site-home-hero {
  /* visual pad via stack gap; inner overlay lift */
  margin: 0;
}
.site-home-hero .site-home-hero__content {
  padding-bottom: 0.5rem;
  padding-top: 0.5rem;
}

/* Footer rules more visible */
.site-footer,
.site-footer__rule,
.site-footer .site-footer__rule {
  border-color: #0a0a0a !important;
}
.site-footer__rule {
  border-top-width: 1px !important;
  border-top-style: solid !important;
  border-top-color: #0a0a0a !important;
}
.site-footer {
  border-top-color: #0a0a0a !important;
}

/* Full-bleed home heroes — pad above/below via stack; keep image edge-to-edge */
.site-home-hero {
  padding-block: 0 !important;
}
.site-main-stack > .site-home-hero {
  margin-block: 2px;
}


/* —— Hide sitewide side scrollbar (scroll still works) —— */
html, body, #root {
  scrollbar-width: none;
  -ms-overflow-style: none;
}
html::-webkit-scrollbar,
body::-webkit-scrollbar,
#root::-webkit-scrollbar {
  width: 0 !important;
  height: 0 !important;
  display: none !important;
}

/* Sticky header stays below drawer/overlay (do not raise header) */
.site-header,
header.site-header {
  position: sticky !important;
  top: 0 !important;
  z-index: 9999 !important;
}

.site-newsletter__backdrop {
  position: fixed !important;
  inset: 0 !important;
  background: rgba(0, 0, 0, 0.35) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  z-index: 11000 !important;
}
/* Closed drawer must not block page (search, nav, etc.) */
.site-newsletter__backdrop.pointer-events-none,
.site-newsletter__backdrop.opacity-0 {
  pointer-events: none !important;
}
.site-newsletter__backdrop.pointer-events-auto {
  pointer-events: auto !important;
}
.site-newsletter {
  position: fixed !important;
  top: 0 !important;
  right: 0 !important;
  z-index: 11010 !important;
}
.site-footer__email-error,
.site-newsletter__error {
  color: #e10600 !important;
  letter-spacing: -0.20px !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
}
@media (min-width: 768px) {
  .site-footer__email-error,
  .site-newsletter__error {
    font-size: 13px !important;
  }
}

/* Footer dividers — light black */
.site-footer,
.site-footer.border-t,
.site-footer__rule,
.site-footer .site-footer__rule {
  border-color: #0a0a0a !important;
}
.site-footer {
  border-top-color: #0a0a0a !important;
}
.site-footer__rule {
  border-top: 1px solid #0a0a0a !important;
}
.site-footer__subscribe {
  max-width: calc(28rem + 70px) !important;
}


/* Footer link groups — 4 columns on desktop (Trade / Support / xSample / Legal) */
.site-footer__links {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}
@media (min-width: 768px) {
  .site-footer__links {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
}


/* —— Full-site dim overlays —— */
.site-dim,
.mobile-nav__backdrop,
.site-newsletter__backdrop {
  position: fixed !important;
  inset: 0 !important;
  background: rgba(0, 0, 0, 0.35) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

/* Mega dim is portaled to body — full viewport under header/panel */
.site-mega__backdrop {
  position: fixed !important;
  inset: 0 !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  background: rgba(0, 0, 0, 0.35) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  z-index: 10020 !important;
  pointer-events: none !important;
  display: none !important;
}
.site-mega__backdrop.is-open {
  display: block !important;
  pointer-events: auto !important;
  /* Start under header so header chrome stays undimmed */
  top: var(--header-bottom, 72px) !important;
  bottom: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: auto !important;
  inset: auto 0 0 0 !important;
}
.site-mega__backdrop.is-closed {
  display: none !important;
  pointer-events: none !important;
}

.site-mega,
.site-mega.site-mega--open {
  z-index: 10030 !important;
}

/* Header above page dim; keep nav + panel interactive — do not tint header */
body.mega-open .site-header,
body.mega-open header.site-header {
  z-index: 10040 !important;
  overflow: visible !important;
}
body.mega-open .site-nav-wrap {
  position: relative;
  z-index: 2;
  overflow: visible !important;
}

body.newsletter-open .site-header,
body.newsletter-open header.site-header,
body.newsletter-open .site-promo {
  z-index: 1 !important;
}

.mobile-nav__backdrop {
  z-index: 10020 !important;
  pointer-events: none !important;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.25s ease, visibility 0s linear 0.25s;
}
.mobile-nav__backdrop.is-open {
  pointer-events: auto !important;
  opacity: 1 !important;
  visibility: visible !important;
  transition: opacity 0.25s ease, visibility 0s linear 0s;
}
.mobile-nav__backdrop.is-closed {
  pointer-events: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
}

.mobile-nav {
  z-index: 10035 !important;
}
body.mobile-nav-open .site-header,
body.mobile-nav-open header.site-header {
  z-index: 10040 !important;
  position: sticky !important;
}

.site-newsletter__backdrop {
  z-index: 11000 !important;
}
.site-newsletter {
  z-index: 11010 !important;
}
.site-header,
header.site-header {
  position: sticky !important;
  top: 0 !important;
  z-index: 9999 !important;
}

.site-search,
.site-search--open {
  z-index: 11020 !important;
}

body.mega-open .site-header,
body.mega-open header.site-header {
  z-index: 10040 !important;
}

/* —— Cookie compact + interactive line (final) —— */
.cookie-banner__link,
.cookie-banner__copy .link-line {
  opacity: 1 !important;
  color: #000 !important;
  text-decoration: none !important;
  border-bottom: 0 !important;
}
.cookie-banner__link:hover,
.cookie-banner__copy .link-line:hover {
  opacity: 1 !important;
  color: #000 !important;
}

/* Footer email label: sentence case at rest, uppercase only when active */
.site-footer__subscribe label,
.site-footer__mobile label[for="mobile-footer-newsletter-email"],
label[for="footer-newsletter-email"],
label[for="mobile-footer-newsletter-email"] {
  text-transform: none !important;
}
.site-footer__subscribe form.group:focus-within label,
.site-footer__mobile form.group:focus-within label,
label[for="footer-newsletter-email"].uppercase,
label[for="mobile-footer-newsletter-email"].uppercase {
  text-transform: uppercase !important;
}
#footer-newsletter-email,
#mobile-footer-newsletter-email {
  text-transform: none !important;
}

/* —— Footer email + arrow alignment —— */
.site-footer__email-field {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 0.5rem;
  min-height: 2.75rem;
  padding: 1.15rem 0 0.4rem !important;
  border-bottom: 1px solid #000 !important;
}
.site-footer__email-input {
  flex: 1 1 auto;
  min-width: 0;
  padding: 0 !important;
  margin: 0 !important;
  line-height: 1.35 !important;
  height: 1.25rem !important;
  border: 0 !important;
  text-transform: none !important;
}
.site-footer__email-label {
  top: 50% !important;
  transform: translateY(-35%);
  font-size: 12px !important;
  font-weight: 400 !important;
  color: #9ca3af !important;
  letter-spacing: -0.20px !important;
  line-height: 1.35 !important;
  text-transform: none !important;
}
@media (min-width: 768px) {
  .site-footer__email-label {
    font-size: 13px !important;
  }
}
.site-footer__email-label.is-active {
  top: 0 !important;
  transform: none !important;
  font-size: 10px !important;
  font-weight: 500 !important;
  color: #000 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
}
.site-footer__email-submit {
  flex: 0 0 auto;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 1.25rem;
  height: 1.25rem;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  background: none !important;
  line-height: 1.35 !important;
  align-self: center !important;
}
.site-footer__email-submit:hover {
  opacity: 0.7;
  transform: translateX(2px);
}
.site-footer__email-submit svg {
  display: block;
  width: 1rem;
  height: 1rem;
}

/* Mega: dim page only (under header). Newsletter drawer: dim everything incl. header */
body.mega-open .site-header,
body.mega-open header.site-header,
body.mega-open .site-promo {
  z-index: 10040 !important;
}
body.newsletter-open .site-header,
body.newsletter-open header.site-header,
body.newsletter-open .site-promo,
body.newsletter-open .cookie-banner,
body.newsletter-open .cookie-overlay {
  z-index: 1 !important;
}
body.newsletter-open .site-newsletter__backdrop {
  z-index: 11000 !important;
  inset: 0 !important;
  top: 0 !important;
}
body.newsletter-open .site-newsletter {
  z-index: 11010 !important;
}

/* Newsletter success — Bottega-style */
.site-newsletter__success-text {
  letter-spacing: -0.20px !important;
}
.site-newsletter__success-link {
  display: inline-block;
  color: #000 !important;
  text-decoration: none !important;
  opacity: 1 !important;
  position: relative;
}
.site-newsletter__success-link::after {
  content: "" !important;
  display: block !important;
  position: absolute;
  left: 0;
  bottom: -2px;
  width: 100%;
  height: 1px;
  background: #000;
  transform: scaleX(0) !important;
  transform-origin: 100% !important;
  transition: transform 0.55s cubic-bezier(0.25, 1, 0.5, 1) !important;
}
.site-newsletter__success-link:hover::after,
.site-newsletter__success-link:focus-visible::after {
  transform: scaleX(1) !important;
  transform-origin: 0% !important;
}

/* —— Mega overlay: no ::after dim (portal backdrop only) —— */
body.mega-open::after {
  display: none !important;
  content: none !important;
}
.site-mega__backdrop.is-open {
  top: var(--header-bottom, 72px) !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  inset: auto 0 0 0 !important;
  width: 100% !important;
  height: auto !important;
  background: rgba(0, 0, 0, 0.42) !important;
  z-index: 10020 !important;
  display: block !important;
  pointer-events: auto !important;
  opacity: 1 !important;
  visibility: visible !important;
}
body.mega-open .site-header,
body.mega-open header.site-header,
body.mega-open .site-promo {
  z-index: 10040 !important;
}

/* Drawer open: dim covers header, but header stays in place (not z-index:1) */
body.newsletter-open .site-header,
body.newsletter-open header.site-header,
body.newsletter-open .site-promo {
  /* 20260808ea: no force-show */
  pointer-events: none !important;
  z-index: 90 !important;

}
body.newsletter-open .site-newsletter__backdrop {
  z-index: 11000 !important;
  inset: 0 !important;
  top: 0 !important;
  background: rgba(0, 0, 0, 0.42) !important;
}
body.newsletter-open .site-newsletter {
  z-index: 11010 !important;
}

/* —— Newsletter drawer: Bottega-clean form —— */
.site-newsletter {
  box-shadow: none !important;
}
.site-newsletter__intro {
  font-size: 12.5px !important;
  line-height: 1.35 !important;
  letter-spacing: -0.20px !important;
  color: #000 !important;
  margin: 0 0 2.5rem !important;
}
@media (min-width: 768px) {
  .site-newsletter__intro {
    font-size: 13.5px !important;
  }
}
.site-newsletter__required {
  text-align: right;
  font-size: 11px !important;
  color: #b0b0b0 !important;
  margin: 0 0 1.15rem !important;
  letter-spacing: -0.20px !important;
}
.site-newsletter__title {
  position: relative;
  margin: 0 0 1.75rem;
}
.site-newsletter__title-trigger {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  padding: 0.35rem 0 0.55rem;
  border: 0;
  border-bottom: 1px solid #c8c8c8;
  background: none;
  cursor: pointer;
  text-align: left;
}
.site-newsletter__title.is-open .site-newsletter__title-trigger {
  border-bottom-color: #000;
}
.site-newsletter__title-value {
  font-size: 12.5px !important;
  line-height: 1.35 !important;
  letter-spacing: -0.20px !important;
  color: #000 !important;
}
@media (min-width: 768px) {
  .site-newsletter__title-value {
    font-size: 13px !important;
  }
}
.site-newsletter__title-value.is-placeholder {
  color: #9a9a9a !important;
}
.site-newsletter__title-chevron {
  width: 1rem;
  height: 1rem;
  flex: 0 0 auto;
  stroke-width: 1.5;
  transition: transform 0.2s ease;
}
.site-newsletter__title-chevron.is-open {
  transform: rotate(180deg);
}
.site-newsletter__title-menu {
  position: absolute;
  left: 0;
  right: 0;
  top: calc(100% + 2px);
  z-index: 5;
  margin: 0;
  padding: 0.35rem 0;
  list-style: none;
  background: #fff;
  border: 1px solid #000;
}
.site-newsletter__title-option {
  padding: 0.7rem 0.85rem;
  font-size: 12.5px !important;
  line-height: 1.35 !important;
  letter-spacing: -0.20px !important;
  color: #000 !important;
  cursor: pointer;
}
@media (min-width: 768px) {
  .site-newsletter__title-option {
    font-size: 13px !important;
  }
}
.site-newsletter__title-option:hover,
.site-newsletter__title-option.is-selected {
  background: #f5f5f5;
}
.site-newsletter__email {
  position: relative;
  margin: 0 0 1.75rem;
  border-bottom: 1px solid #c8c8c8;
  padding: 1.1rem 0 0.5rem;
  min-height: 2.6rem;
}
.site-newsletter__email:focus-within {
  border-bottom-color: #000;
}
.site-newsletter__email-input {
  width: 100%;
  border: 0;
  outline: none;
  background: transparent;
  padding: 0;
  margin: 0;
  height: 1.25rem;
  font-size: 12.5px !important;
  line-height: 1.35 !important;
  letter-spacing: -0.20px !important;
  color: #000 !important;
  text-transform: none !important;
}
@media (min-width: 768px) {
  .site-newsletter__email-input {
    font-size: 13px !important;
  }
}
.site-newsletter__email-label {
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-30%);
  pointer-events: none;
  font-size: 12.5px !important;
  color: #9a9a9a !important;
  letter-spacing: -0.20px !important;
  text-transform: none !important;
  transition: top 0.2s ease, transform 0.2s ease, font-size 0.2s ease, color 0.2s ease;
}
.site-newsletter__email-label.is-active {
  top: 0;
  transform: none;
  font-size: 10px !important;
  font-weight: 500 !important;
  color: #767676 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
}
.site-newsletter__error {
  margin: -1rem 0 1.25rem !important;
  color: #e10600 !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
}
.site-newsletter__legal {
  font-size: 11.5px !important;
  line-height: 1.35 !important;
  letter-spacing: -0.20px !important;
  color: #000 !important;
  margin: 0 0 1.5rem !important;
}
@media (min-width: 768px) {
  .site-newsletter__legal {
    font-size: 12px !important;
  }
}
.site-newsletter__legal-link {
  color: #000 !important;
  text-decoration: underline !important;
  text-underline-offset: 2px;
}
.site-newsletter__actions {
  padding-top: 0.5rem;
}
.site-newsletter__submit {
  width: 100%;
  height: 3rem;
  border: 1px solid #000;
  background: #000;
  color: #fff;
  font-size: 12px !important;
  font-weight: 500 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  cursor: pointer;
  transition: opacity 0.2s ease;
}
.site-newsletter__submit:hover {
  opacity: 0.88;
}
.site-newsletter__submit:disabled {
  opacity: 0.5;
  cursor: default;
}
.site-newsletter__success {
  padding-top: 0.25rem;
}
.site-newsletter__success-text {
  margin: 0 0 2.25rem !important;
  font-size: 12.5px !important;
  line-height: 1.35 !important;
}
@media (min-width: 768px) {
  .site-newsletter__success-text {
    font-size: 13.5px !important;
  }
}

/* Collections mega — main columns (New Arrivals / Best Sellers) */
.site-mega__card--main .site-mega__title {
  font-weight: 500 !important;
}

/* —— Header height −8px (72 → 64) —— */
.site-header,
header.site-header {
  height: 64px !important;
  min-height: 64px !important;
}
:root {
  --header-bottom: 64px;
}

/* —— Footer subscribe: +10px right, −10px width —— */
.site-footer__subscribe {
  max-width: calc(28rem + 60px) !important;
  width: 100% !important;
}
@media (min-width: 768px) {
  .site-footer__subscribe {
    transform: translateX(14px) !important;
  }
}

/* —— Newsletter drawer overlay ON header (header stays, dim sits on top) —— */
body.newsletter-open .site-header,
body.newsletter-open header.site-header,
body.newsletter-open .site-promo {
  /* 20260808ea: no force-show */
  pointer-events: none !important;
  z-index: 90 !important;

}
body.newsletter-open .site-newsletter__backdrop,
.site-newsletter__backdrop.is-open {
  position: fixed !important;
  inset: 0 !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  z-index: 11000 !important;
  background: rgba(0, 0, 0, 0.42) !important;
}
body.newsletter-open .site-newsletter,
.site-newsletter {
  z-index: 11010 !important;
}

/* —— Newsletter chrome: header + close flush right —— */
.site-newsletter__header {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 1rem;
  flex-shrink: 0;
  min-height: 4.5rem;
  padding: 1.25rem 1.5rem 0.75rem !important;
}
@media (min-width: 768px) {
  .site-newsletter__header {
    padding: 1.5rem 2.5rem 1rem !important;
  }
}
.site-newsletter__heading {
  font-size: 12px !important;
  font-weight: 500 !important;
  letter-spacing: -0.20px !important;
  text-transform: uppercase !important;
  color: #000 !important;
  line-height: 1.35 !important;
}
@media (min-width: 768px) {
  .site-newsletter__heading {
    font-size: 13px !important;
  }
}
.site-newsletter__close {
  margin-left: auto !important;
  margin-right: 0 !important;
  flex: 0 0 auto;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 2rem;
  height: 2rem;
  padding: 0 !important;
  border: 0 !important;
  background: none !important;
  color: #000 !important;
  cursor: pointer;
}
.site-newsletter__close:hover {
  opacity: 0.55;
}
.site-newsletter__close-icon {
  width: 1.15rem;
  height: 1.15rem;
  stroke-width: 1.5;
  display: block;
}
.site-newsletter__body {
  padding: 0.5rem 1.5rem 2.5rem !important;
}
@media (min-width: 768px) {
  .site-newsletter__body {
    padding: 0.75rem 2.5rem 3rem !important;
  }
}

/* Clean email field */
.site-newsletter__email {
  position: relative;
  margin: 0 0 1.5rem !important;
  padding: 1.15rem 0 0.55rem !important;
  border-bottom: 1px solid #000 !important;
  min-height: 2.75rem;
}
.site-newsletter__email-input {
  width: 100% !important;
  border: 0 !important;
  outline: none !important;
  background: transparent !important;
  padding: 0 !important;
  height: 1.25rem !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
  letter-spacing: -0.20px !important;
  color: #000 !important;
  text-transform: none !important;
  box-shadow: none !important;
}
.site-newsletter__email-label {
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-28%);
  pointer-events: none;
  font-size: 13px !important;
  color: #9a9a9a !important;
  letter-spacing: -0.20px !important;
  text-transform: none !important;
  transition: top 0.2s ease, transform 0.2s ease, font-size 0.2s ease, color 0.2s ease;
}
.site-newsletter__email-label.is-active {
  top: 0 !important;
  transform: none !important;
  font-size: 10px !important;
  font-weight: 500 !important;
  color: #767676 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
}
.site-newsletter__title-trigger {
  border-bottom-color: #000 !important;
  padding: 0.4rem 0 0.55rem !important;
}

/* Clean confirmation */
.site-newsletter__success {
  padding-top: 0.35rem !important;
}
.site-newsletter__success-text {
  margin: 0 0 2.5rem !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
  letter-spacing: -0.20px !important;
  color: #000 !important;
  font-weight: 400 !important;
}
.site-newsletter__success-links {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 1.35rem !important;
}
.site-newsletter__success-link {
  display: inline-block !important;
  position: relative !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
  letter-spacing: -0.20px !important;
  color: #000 !important;
  text-decoration: none !important;
  opacity: 1 !important;
}
.site-newsletter__success-link::after {
  content: "" !important;
  display: block !important;
  position: absolute;
  left: 0;
  right: 0;
  bottom: -2px;
  height: 1px;
  background: #000;
  transform: scaleX(0) !important;
  transform-origin: 100% !important;
  transition: transform 0.55s cubic-bezier(0.25, 1, 0.5, 1) !important;
}
.site-newsletter__success-link:hover::after,
.site-newsletter__success-link:focus-visible::after {
  transform: scaleX(1) !important;
  transform-origin: 0% !important;
}

/* —— 404 title: 16px locked —— */
.page-404__title,
h1.page-404__title {
  font-size: 16px !important;
  line-height: 1.35 !important;
  letter-spacing: -0.20px !important;
  font-weight: 500 !important;
}
@media (min-width: 768px) {
  .page-404__title,
  h1.page-404__title {
    font-size: 16px !important;
  }
}

/* —— Mega: kill flash — one dim only, never above panel —— */
body.mega-open::after {
  display: none !important;
  content: none !important;
}
.site-mega__backdrop {
  transition: none !important;
  opacity: 1 !important;
}
.site-mega__backdrop.is-closed {
  display: none !important;
  pointer-events: none !important;
  opacity: 0 !important;
}
.site-mega__backdrop.is-open {
  display: block !important;
  pointer-events: auto !important;
  opacity: 1 !important;
  z-index: 10020 !important;
  top: var(--header-bottom, 64px) !important;
  inset: auto 0 0 0 !important;
  background: rgba(0, 0, 0, 0.4) !important;
}
body.mega-open .site-mega,
body.mega-open .site-mega.site-mega--open {
  z-index: 10050 !important;
}
body.mega-open .site-header,
body.mega-open header.site-header {
  z-index: 10040 !important;
}

/* —— Newsletter: header stays under dim (scroll lock is JS body:fixed) —— */
body.newsletter-open .site-header,
body.newsletter-open header.site-header {
  /* 20260808ea: no force-show */
  pointer-events: none !important;
  z-index: 90 !important;

}
body.newsletter-open .site-promo {
  z-index: 9998 !important;
}
body.newsletter-open .site-newsletter__backdrop,
.site-newsletter__backdrop.is-open {
  z-index: 11000 !important;
  inset: 0 !important;
  background: rgba(0, 0, 0, 0.42) !important;
}
body.newsletter-open .site-newsletter {
  z-index: 11010 !important;
}

/* Bigger close X */
.site-newsletter__close {
  width: 2.5rem !important;
  height: 2.5rem !important;
}
.site-newsletter__close-icon {
  width: 1.5rem !important;
  height: 1.5rem !important;
  stroke-width: 1.6 !important;
}

/* Success links: hover draw line only */
.site-newsletter__success-link {
  text-decoration: none !important;
}
.site-newsletter__success-link::after {
  transform: scaleX(0) !important;
  transform-origin: 100% !important;
  transition: transform 0.55s cubic-bezier(0.25, 1, 0.5, 1) !important;
  bottom: -2px !important;
  height: 1px !important;
  background: #000 !important;
}
.site-newsletter__success-link:hover::after,
.site-newsletter__success-link:focus-visible::after {
  transform: scaleX(1) !important;
  transform-origin: 0% !important;
}

/* —— Footer copyright align —— */
.site-footer__copyright,
.site-footer__copyright--mobile {
  color: #000 !important;
  opacity: 1 !important;
  font-size: 13px !important;
  letter-spacing: -0.20px !important;
  text-align: left !important;
  padding: 0.75rem 1rem 0.35rem !important;
  margin: 0 !important;
}
@media (min-width: 768px) {
  .site-footer__copyright,
  .site-footer__copyright--mobile {
    padding-left: 2rem !important;
    padding-right: 2rem !important;
  }
}
.site-footer__copyright--mobile {
  border-top: 1px solid #0a0a0a !important;
  margin-top: 0.5rem !important;
}

/* —— Search: full-screen, no glitch —— */
.site-search,
.site-search--open,
.site-search--closed {
  position: fixed !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  height: 100dvh !important;
  z-index: 12000 !important;
  background: #fff !important;
  transform: none !important;
  filter: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
.site-search--open {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transition: opacity 0.15s ease !important;
}
.site-search--closed,
.site-search:not(.site-search--open) {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transition: opacity 0.12s ease, visibility 0s linear 0.12s !important;
}
body.site-search-open {
  overflow: hidden !important;
}
body.site-search-open .site-header,
body.site-search-open header.site-header,
body.site-search-open .site-promo {
  visibility: hidden !important;
  pointer-events: none !important;
}

/* —— Final polish pass (20260731q) —— */
body.mega-open::after { display: none !important; content: none !important; }
.site-mega,
.site-mega.site-mega--open,
body.mega-open .site-mega,
body.mega-open .site-mega.site-mega--open {
  z-index: 10050 !important;
}
.site-mega__backdrop,
.site-mega__backdrop.is-open {
  z-index: 10020 !important;
  transition: none !important;
}
body.mega-open .site-header,
body.mega-open header.site-header {
  z-index: 10040 !important;
}

/* Newsletter: header stays painted under full-screen dim (body scroll-locked in JS) */
body.newsletter-open .site-header,
body.newsletter-open header.site-header,
body.newsletter-open .site-promo {
  /* 20260808ea: no force-show */
  pointer-events: none !important;
  z-index: 90 !important;

}
body.newsletter-open .site-newsletter__backdrop {
  z-index: 11000 !important;
  inset: 0 !important;
  background: rgba(0, 0, 0, 0.42) !important;
}
body.newsletter-open .site-newsletter {
  z-index: 11010 !important;
  pointer-events: auto !important;
}

.site-newsletter__close {
  width: 2.75rem !important;
  height: 2.75rem !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.site-newsletter__close-icon {
  width: 1.65rem !important;
  height: 1.65rem !important;
  stroke-width: 1.75 !important;
}

.site-newsletter__success-link {
  position: relative !important;
  text-decoration: none !important;
}
.site-newsletter__success-link::after {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: -2px !important;
  height: 1px !important;
  background: #000 !important;
  transform: scaleX(0) !important;
  transform-origin: 100% !important;
  transition: transform 0.55s cubic-bezier(0.25, 1, 0.5, 1) !important;
}
.site-newsletter__success-link:hover::after,
.site-newsletter__success-link:focus-visible::after {
  transform: scaleX(1) !important;
  transform-origin: 0% !important;
}

.page-404__title,
h1.page-404__title {
  font-size: 16px !important;
}

.site-footer__copyright,
.site-footer__copyright--mobile {
  color: #000 !important;
  opacity: 1 !important;
  font-size: 13px !important;
  letter-spacing: -0.20px !important;
  line-height: 1.35 !important;
  text-align: left !important;
  padding: 0.75rem 1rem 1rem !important;
  margin: 0 !important;
  width: 100% !important;
  box-sizing: border-box !important;
}
@media (min-width: 768px) {
  .site-footer__copyright,
  .site-footer__copyright--mobile {
    padding-left: 2rem !important;
    padding-right: 2rem !important;
  }
}
.site-footer__copyright--mobile {
  border-top: 1px solid #0a0a0a !important;
  margin-top: 0.35rem !important;
}
.site-footer__locale {
  text-align: left !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
}

/* Search: opaque full-screen, no header flash */
.site-search,
.site-search--open,
.site-search--closed {
  position: fixed !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  height: 100dvh !important;
  max-height: 100dvh !important;
  z-index: 12000 !important;
  background: #fff !important;
  transform: none !important;
  filter: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  overscroll-behavior: none !important;
}
.site-search--open {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transition: opacity 0.14s ease !important;
}
.site-search--closed,
.site-search:not(.site-search--open) {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transition: opacity 0.12s ease, visibility 0s linear 0.12s !important;
}
body.site-search-open {
  overflow: hidden !important;
  overscroll-behavior: none !important;
}
body.site-search-open .site-header,
body.site-search-open header.site-header {
  /* keep in place under opaque search — no hide/show glitch */
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: none !important;
}

/* —— Pass 20260731s —— */

/* Cookie banner: short professional copy only */
.cookie-banner__more {
  display: none !important;
}
.cookie-banner__copy {
  font-size: 11px !important;
  line-height: 1.35 !important;
  max-width: 42rem;
}
@media (min-width: 768px) {
  .cookie-banner__copy {
    font-size: 12px !important;
    line-height: 1.35 !important;
  }
}

/* Center shipping / language */
.site-footer__locale {
  text-align: center !important;
  align-items: center !important;
  justify-content: center !important;
}

/* Mega dropdown overlay restored under header, under panel */
body.mega-open::after {
  display: none !important;
  content: none !important;
}
.site-mega__backdrop {
  position: fixed !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  margin: 0 !important;
  background: rgba(0, 0, 0, 0.42) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  z-index: 10020 !important;
  transition: none !important;
}
.site-mega__backdrop.is-closed {
  display: none !important;
  pointer-events: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
}
.site-mega__backdrop.is-open {
  display: block !important;
  pointer-events: auto !important;
  opacity: 1 !important;
  visibility: visible !important;
  top: var(--header-bottom, 72px) !important;
  inset: auto 0 0 0 !important;
  height: auto !important;
  z-index: 10020 !important;
  background: rgba(0, 0, 0, 0.42) !important;
}
.site-mega,
.site-mega.site-mega--open,
body.mega-open .site-mega {
  z-index: 10050 !important;
}
body.mega-open .site-header,
body.mega-open header.site-header {
  z-index: 10040 !important;
}

/* Newsletter: slide transition + dim over header (header stays) */
body.newsletter-open .site-header,
body.newsletter-open header.site-header {
  /* 20260808ea: no force-show */
  pointer-events: none !important;
  z-index: 90 !important;

}
body.newsletter-open .site-newsletter__backdrop,
.site-newsletter__backdrop.is-open {
  z-index: 11000 !important;
  inset: 0 !important;
  background: rgba(0, 0, 0, 0.42) !important;
  opacity: 1 !important;
}
.site-newsletter {
  z-index: 11010 !important;
  will-change: transform, translate;
  transition:
    transform 0.5s cubic-bezier(0.25, 1, 0.5, 1),
    translate 0.5s cubic-bezier(0.25, 1, 0.5, 1) !important;
}
.site-newsletter.translate-x-full {
  transform: translateX(100%) !important;
  translate: 100% 0 !important;
}
.site-newsletter.translate-x-0 {
  transform: translateX(0) !important;
  translate: 0 0 !important;
}

/* Product / filter drawers — z raised in pass bt */
.site-drawer {
  transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1) !important;
}

/* White CTAs on images — shorter height, wider */
.cta-on-image {
  display: inline-block !important;
  padding: 0.45rem 1.65rem !important;
  line-height: 1.35 !important;
  min-width: 11.5rem;
  box-sizing: border-box;
}
@media (min-width: 768px) {
  .cta-on-image {
    padding: 0.5rem 2.15rem !important;
    min-width: 13rem;
  }
}

/* Subscribe errors always visible */
.site-newsletter__error,
.site-footer__email-error {
  display: block !important;
  color: #e10600 !important;
  opacity: 1 !important;
  visibility: visible !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
  margin-top: 0.5rem !important;
  margin-bottom: 0.75rem !important;
}

/* No grey hover on drawer / sidebar icons */
.site-newsletter__close,
.site-newsletter__close:hover,
.site-newsletter__close:focus-visible,
.site-newsletter__close:active,
.site-search__close,
.site-search__close:hover,
.site-search__close:focus-visible,
.site-search__clear,
.site-search__clear:hover,
.cookie-settings__close,
.cookie-settings__close:hover,
.header-util,
.header-util:hover,
.header-util:focus-visible,
.header-util:active {
  color: #000 !important;
  opacity: 1 !important;
  background: transparent !important;
}
.site-newsletter__close:hover {
  opacity: 1 !important;
}

/* —— Pass 20260731v —— */

/* Cookie banner overlay covers page + any settings modal underneath */
.cookie-overlay {
  background: rgba(0, 0, 0, 0.42) !important;
  z-index: 12060 !important;
}
.cookie-banner {
  z-index: 12065 !important;
  border-top: 1px solid #000 !important;
  box-shadow: none !important;
}

/* Cookie settings — match site black/white (no grey chrome) */
.cookie-settings-root {
  background: rgba(0, 0, 0, 0.42) !important;
  z-index: 12050 !important;
  color: #000 !important;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif !important;
}
.cookie-settings {
  background: #fff !important;
  color: #000 !important;
  box-shadow: none !important;
  border: 1px solid #000 !important;
  border-radius: 0 !important;
}
.cookie-settings h1,
.cookie-settings h2,
.cookie-settings h3,
.cookie-settings p,
.cookie-settings li,
.cookie-settings span,
.cookie-settings button,
.cookie-settings label {
  color: #000 !important;
  font-family: inherit !important;
}
.cookie-settings .text-gray-500,
.cookie-settings .text-\[\#111827\],
.cookie-settings .text-\[\#4b5563\],
.cookie-settings [class*="text-gray"],
.cookie-settings [class*="text-[#"] {
  color: #000 !important;
}
.cookie-settings [class*="border-[#e5e7eb]"],
.cookie-settings [class*="border-gray"],
.cookie-settings .border-\[\#e5e7eb\],
.cookie-settings .md\:border-\[\#e5e7eb\] {
  border-color: #000 !important;
}
.cookie-settings .border-b,
.cookie-settings .border-r,
.cookie-settings .md\:border-r,
.cookie-settings .md\:border-b-0 {
  border-color: #000 !important;
}
.cookie-settings .shadow-xl {
  box-shadow: none !important;
}
.cookie-settings .md\:rounded-sm {
  border-radius: 0 !important;
}
.cookie-settings__close,
.cookie-settings__close:hover {
  color: #000 !important;
  opacity: 1 !important;
}
/* Toggle track */
.cookie-settings .bg-gray-300 {
  background: #d0d0d0 !important;
}
.cookie-settings .border-gray-300 {
  border-color: #d0d0d0 !important;
}

/* Success links — interactive underline (match site link-line) */
.site-newsletter__success-links {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 1.35rem !important;
}
.site-newsletter__success-link {
  position: relative !important;
  display: inline-block !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  letter-spacing: -0.20px !important;
  line-height: 1.35 !important;
  color: #000 !important;
  text-decoration: none !important;
  opacity: 1 !important;
}
.site-newsletter__success-link::after {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: -2px !important;
  height: 1px !important;
  background: #000 !important;
  transform: scaleX(0) !important;
  transform-origin: 100% !important;
  transition: transform 0.55s cubic-bezier(0.25, 1, 0.5, 1) !important;
  display: block !important;
}
.site-newsletter__success-link:hover::after,
.site-newsletter__success-link:focus-visible::after {
  transform: scaleX(1) !important;
  transform-origin: 0% !important;
}

/* Newsletter open: no footer padding jump — lock scroll without body:fixed */
html.newsletter-open,
body.newsletter-open {
  /* 20260808eb: do NOT overflow:hidden — kills position:sticky (PLP strip) */
  overflow: visible !important;
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
  height: auto !important;
}
body.newsletter-open .site-footer,
body.newsletter-open #footer-container {
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
}
body.newsletter-open .site-header,
body.newsletter-open header.site-header {
  /* 20260808ea: no force-show */
  pointer-events: none !important;
  z-index: 90 !important;

}

/* Mega dim: reliable page overlay under header */
body.mega-open::after {
  content: "" !important;
  display: block !important;
  position: fixed !important;
  top: var(--header-bottom, 64px) !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  background: rgba(0, 0, 0, 0.42) !important;
  z-index: 10018 !important;
  pointer-events: none !important;
}
.site-mega__backdrop.is-open {
  display: block !important;
  pointer-events: auto !important;
  opacity: 1 !important;
  visibility: visible !important;
  position: fixed !important;
  top: var(--header-bottom, 64px) !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  inset: auto 0 0 0 !important;
  height: auto !important;
  width: 100% !important;
  background: rgba(0, 0, 0, 0.42) !important;
  z-index: 10020 !important;
}
.site-mega,
.site-mega.site-mega--open {
  z-index: 10050 !important;
}
body.mega-open .site-header,
body.mega-open header.site-header {
  z-index: 10040 !important;
  background: #fff !important;
}

/* Search: no top blink — instant cover, leave header alone */
.site-search,
.site-search--open,
.site-search--closed {
  transition: none !important;
  transform: none !important;
  filter: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  z-index: 12100 !important;
  background: #fff !important;
}
.site-search--open {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
}
.site-search--closed,
.site-search:not(.site-search--open) {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}
body.site-search-open .site-header,
body.site-search-open header.site-header,
body.site-search-open .site-promo {
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  /* stay under opaque search — no hide/show blink */
}

/* —— Pass 20260731w —— */

/* Cookie settings — Bottega layout match */
.cookie-settings-root {
  background: rgba(0, 0, 0, 0.35) !important;
  z-index: 12050 !important;
  padding: 1rem !important;
}
@media (min-width: 768px) {
  .cookie-settings-root {
    padding: 1.5rem !important;
  }
}
.cookie-settings {
  width: min(756px, 100%) !important;
  max-width: 756px !important;
  max-height: 92vh !important;
  background: #fff !important;
  color: #000 !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: 0 8px 40px rgba(0, 0, 0, 0.18) !important;
  display: flex !important;
  flex-direction: column !important;
  overflow: hidden !important;
}
.cookie-settings__header {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding: 1.25rem 1.5rem 1rem !important;
  border: 0 !important;
  border-bottom: 0 !important;
}
@media (min-width: 768px) {
  .cookie-settings__header {
    padding: 1.5rem 1.75rem 1.1rem !important;
  }
}
.cookie-settings__title {
  margin: 0 !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  color: #000 !important;
  line-height: 1.35 !important;
}
.cookie-settings__close {
  width: 2rem !important;
  height: 2rem !important;
  padding: 0 !important;
  color: #000 !important;
  opacity: 1 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.cookie-settings__close:hover {
  opacity: 1 !important;
  color: #000 !important;
}
.cookie-settings__body {
  border-top: 0 !important;
  min-height: 0 !important;
}
.cookie-settings__nav {
  border-right: 0 !important;
  border-bottom: 1px solid #e5e5e5 !important;
}
@media (min-width: 768px) {
  .cookie-settings__nav {
    width: 38% !important;
    border-bottom: 0 !important;
    border-right: 1px solid #e5e5e5 !important;
    padding: 0.25rem 0 1rem !important;
  }
}
.cookie-settings__nav .tab-button,
.cookie-settings__nav button.tab-button {
  padding: 0.85rem 1.5rem !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  color: #000 !important;
  background: transparent !important;
  border: 0 !important;
}
@media (min-width: 768px) {
  .cookie-settings__nav .tab-button {
    padding: 0.7rem 1.75rem !important;
  }
}
.cookie-settings__nav .tab-button span.underline,
.cookie-settings__nav .tab-button .underline {
  text-decoration: underline !important;
  text-underline-offset: 5px !important;
  text-decoration-thickness: 1.5px !important;
  text-decoration-color: #000 !important;
}
.cookie-settings__nav li {
  border-color: #e5e5e5 !important;
}
@media (min-width: 768px) {
  .cookie-settings__nav li {
    border: 0 !important;
  }
}
.cookie-settings__panel {
  padding: 1.5rem 1.75rem 1.75rem !important;
  color: #000 !important;
}
.cookie-settings__panel-title,
.cookie-settings__panel h3 {
  margin: 0 0 1.25rem !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  color: #000 !important;
}
.cookie-settings__panel-copy,
.cookie-settings__panel p {
  margin: 0 0 1.25rem !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
  letter-spacing: -0.20px !important;
  color: #000 !important;
}
.cookie-settings__more {
  display: inline-block !important;
  font-size: 13px !important;
  color: #000 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px !important;
  text-decoration-thickness: 1px !important;
}
.cookie-settings__footer {
  border-top: 0 !important;
  padding: 1rem 1.5rem 1.5rem !important;
  gap: 1rem !important;
}
@media (min-width: 768px) {
  .cookie-settings__footer {
    padding: 1.15rem 1.75rem 1.75rem !important;
  }
}
.cookie-settings__btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 2.65rem !important;
  padding: 0.65rem 1.75rem !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  letter-spacing: -0.20px !important;
  line-height: 1.35 !important;
  border-radius: 0 !important;
  cursor: pointer !important;
  box-shadow: none !important;
  text-transform: none !important;
}
.cookie-settings__btn--primary {
  background: #000 !important;
  color: #fff !important;
  border: 1px solid #000 !important;
}
.cookie-settings__btn--primary:hover {
  background: #000 !important;
  color: #fff !important;
  opacity: 1 !important;
}
.cookie-settings__btn--ghost {
  background: #fff !important;
  color: #000 !important;
  border: 1px solid #000 !important;
}
.cookie-settings__btn--ghost:hover {
  background: #fff !important;
  color: #000 !important;
  opacity: 1 !important;
}
/* Hide duplicate mobile big title on desktop look */
.cookie-settings > .px-6.pb-4.md\:hidden {
  display: none !important;
}
@media (max-width: 767px) {
  .cookie-settings > .px-6.pb-4.md\:hidden {
    display: block !important;
    padding: 0 1.5rem 0.75rem !important;
  }
  .cookie-settings > .px-6.pb-4.md\:hidden h1 {
    font-size: 1.35rem !important;
    font-weight: 500 !important;
    letter-spacing: 0.04em !important;
  }
}

/* Newsletter dim ON header (header stays visible under dim) */
body.newsletter-open .site-header,
body.newsletter-open header.site-header,
body.newsletter-open .site-promo {
  /* 20260808ea: no force-show */
  pointer-events: none !important;
  z-index: 90 !important;

}
body.newsletter-open .site-newsletter__backdrop,
.site-newsletter__backdrop.is-open {
  z-index: 11000 !important;
  inset: 0 !important;
  top: 0 !important;
  background: rgba(0, 0, 0, 0.42) !important;
}
body.newsletter-open .site-newsletter,
.site-newsletter {
  z-index: 11010 !important;
}

/* Mega: NEVER flash on top of dropdown — kill ::after, backdrop only under panel */
body.mega-open::after {
  display: none !important;
  content: none !important;
  opacity: 0 !important;
  pointer-events: none !important;
}
.site-mega__backdrop {
  position: fixed !important;
  z-index: 10020 !important;
  background: rgba(0, 0, 0, 0.42) !important;
  transition: none !important;
  animation: none !important;
  opacity: 1 !important;
}
.site-mega__backdrop.is-closed {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
}
.site-mega__backdrop.is-open {
  display: block !important;
  visibility: visible !important;
  pointer-events: auto !important;
  top: var(--header-bottom, 64px) !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  inset: auto 0 0 0 !important;
  width: 100% !important;
  height: auto !important;
  z-index: 10020 !important;
  background: rgba(0, 0, 0, 0.42) !important;
  opacity: 1 !important;
  transition: none !important;
}
.site-mega,
.site-mega.site-mega--open,
body.mega-open .site-mega,
body.mega-open .site-mega.site-mega--open {
  z-index: 10050 !important;
  position: fixed !important;
  background: #fff !important;
}
body.mega-open .site-header,
body.mega-open header.site-header {
  z-index: 10040 !important;
  background: #fff !important;
}

/* Success links: permanent underline + interactive hover draw */
.site-newsletter__success-link {
  position: relative !important;
  display: inline-block !important;
  color: #000 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px !important;
  text-decoration-thickness: 1px !important;
  text-decoration-color: #000 !important;
  opacity: 1 !important;
}
.site-newsletter__success-link::after {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: -2px !important;
  height: 1px !important;
  background: #000 !important;
  transform: scaleX(0) !important;
  transform-origin: 100% !important;
  transition: transform 0.55s cubic-bezier(0.25, 1, 0.5, 1) !important;
  display: block !important;
  pointer-events: none !important;
}
.site-newsletter__success-link:hover {
  text-decoration-color: transparent !important;
}
.site-newsletter__success-link:hover::after,
.site-newsletter__success-link:focus-visible::after {
  transform: scaleX(1) !important;
  transform-origin: 0% !important;
}

/* White CTAs on images — +4px height */
.cta-on-image {
  padding-top: calc(0.45rem + 2px) !important;
  padding-bottom: calc(0.45rem + 2px) !important;
  padding-left: 1.65rem !important;
  padding-right: 1.65rem !important;
  min-height: calc(2rem + 4px) !important;
  box-sizing: border-box !important;
}
@media (min-width: 768px) {
  .cta-on-image {
    padding-top: calc(0.5rem + 2px) !important;
    padding-bottom: calc(0.5rem + 2px) !important;
    padding-left: 2.15rem !important;
    padding-right: 2.15rem !important;
    min-height: calc(2.15rem + 4px) !important;
  }
}

body.mega-open::after {
  display: none !important;
  content: none !important;
}

/* —— Pass 20260731y — CTAs, mega dim stack, newsletter dim, success underline —— */

/* Image CTAs — Bottega slim white + black border */
.cta-on-image,
a.cta-on-image,
button.cta-on-image {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  min-width: 0 !important;
  min-height: 0 !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0.5rem 1.15rem !important;
  background: #fff !important;
  color: #000 !important;
  border: 1px solid #000 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif !important;
  font-size: 10px !important;
  font-weight: 500 !important;
  letter-spacing: 0.15em !important;
  line-height: 1.35 !important;
  text-transform: uppercase !important;
  text-align: center !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  box-sizing: border-box !important;
  transition: background-color 0.15s ease, color 0.15s ease !important;
}
@media (min-width: 768px) {
  .cta-on-image,
  a.cta-on-image,
  button.cta-on-image {
    padding: 0.55rem 1.35rem !important;
    font-size: 10px !important;
  }
}
.cta-on-image:hover,
.cta-on-image:focus-visible,
a.cta-on-image:hover,
a.cta-on-image:focus-visible {
  background: #000 !important;
  color: #fff !important;
  border-color: #000 !important;
  opacity: 1 !important;
}

/* Mega stacking: header < dim < panel. Dim never reaches header, never above panel */
body.mega-open::after {
  display: none !important;
  content: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}
.site-mega__backdrop {
  position: fixed !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: rgba(0, 0, 0, 0.42) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  transition: none !important;
  animation: none !important;
  opacity: 1 !important;
  z-index: 10020 !important;
}
.site-mega__backdrop.is-closed {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
  opacity: 0 !important;
}
.site-mega__backdrop.is-open {
  display: block !important;
  visibility: visible !important;
  pointer-events: auto !important;
  opacity: 1 !important;
  top: var(--header-bottom, 64px) !important;
  inset: auto 0 0 0 !important;
  height: auto !important;
  min-height: calc(100vh - var(--header-bottom, 64px)) !important;
  z-index: 10020 !important;
  background: rgba(0, 0, 0, 0.42) !important;
  transition: none !important;
}
.site-mega,
.site-mega.site-mega--open,
body.mega-open .site-mega,
body.mega-open .site-mega.site-mega--open {
  position: fixed !important;
  top: var(--header-bottom, 64px) !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  z-index: 10050 !important;
  background: #fff !important;
  transform: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
}
body.mega-open .site-header,
body.mega-open header.site-header,
body.mega-open .site-promo {
  z-index: 10040 !important;
  background: #fff !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/* Newsletter: dim covers header; header remains visible underneath */
body.newsletter-open .site-header,
body.newsletter-open header.site-header,
body.newsletter-open .site-promo {
  /* 20260808ea: no force-show */
  pointer-events: none !important;
  z-index: 90 !important;

}
.site-newsletter__backdrop,
.site-newsletter__backdrop.is-open,
body.newsletter-open .site-newsletter__backdrop {
  position: fixed !important;
  inset: 0 !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  z-index: 11000 !important;
  background: rgba(0, 0, 0, 0.42) !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transition: opacity 0.35s ease !important;
}
.site-newsletter__backdrop.is-closed,
.site-newsletter__backdrop.opacity-0,
.site-newsletter__backdrop.pointer-events-none {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}
body.newsletter-open .site-newsletter,
.site-newsletter {
  z-index: 11010 !important;
}

/* Success links: permanent underline + hover redraw on the same line */
.site-newsletter__success-link {
  position: relative !important;
  display: inline-block !important;
  color: #000 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px !important;
  text-decoration-thickness: 1px !important;
  text-decoration-color: #000 !important;
  opacity: 1 !important;
  padding-bottom: 0 !important;
}
.site-newsletter__success-link::after {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  width: 100% !important;
  bottom: -3px !important;
  height: 1px !important;
  background: #000 !important;
  transform: scaleX(0) !important;
  transform-origin: 100% !important;
  transition: transform 0.55s cubic-bezier(0.25, 1, 0.5, 1) !important;
  display: block !important;
  pointer-events: none !important;
}
.site-newsletter__success-link:hover,
.site-newsletter__success-link:focus-visible {
  text-decoration-color: transparent !important;
  color: #000 !important;
  opacity: 1 !important;
}
.site-newsletter__success-link:hover::after,
.site-newsletter__success-link:focus-visible::after {
  transform: scaleX(1) !important;
  transform-origin: 0% !important;
}


/* —— Pass 20260731aa — cookie slide, mega promo, newsletter over header, cookie settings —— */

/* Cookie banner: slow slide up into view */
.cookie-banner {
  transition: transform 0.85s cubic-bezier(0.22, 1, 0.36, 1) !important;
  will-change: transform;
  z-index: 12045 !important;
}
.cookie-banner.translate-y-full,
.cookie-banner.is-out {
  transform: translateY(100%) !important;
}
.cookie-banner.translate-y-0,
.cookie-banner.is-in {
  transform: translateY(0) !important;
}
.cookie-overlay {
  z-index: 12040 !important;
  background: rgba(0, 0, 0, 0.28) !important;
  inset: 0 !important;
  top: 0 !important;
}

/* Mega: dim under header; promo stays visible (black) when not closed */
body.mega-open .site-promo {
  z-index: 10045 !important;
  background: #000 !important;
  color: #fff !important;
  opacity: 1 !important;
  visibility: visible !important;
  display: block !important;
  position: relative !important;
  pointer-events: auto !important;
}
body.mega-open .site-header,
body.mega-open header.site-header {
  z-index: 10040 !important;
  background: #fff !important;
  opacity: 1 !important;
  visibility: visible !important;
}
body.mega-open .site-mega__backdrop.is-open {
  top: var(--header-bottom, 64px) !important;
  inset: auto 0 0 0 !important;
  z-index: 10020 !important;
}

/* Newsletter: dim covers promo + header; panel overlaps both */
html.newsletter-open,
body.newsletter-open {
  isolation: isolate;
}
body.newsletter-open .site-promo {
  z-index: 1 !important;
  position: relative !important;
}
body.newsletter-open .site-header,
body.newsletter-open header.site-header {
  /* 20260808ea: no force-show */
  pointer-events: none !important;
  z-index: 90 !important;

}
.site-newsletter__backdrop,
.site-newsletter__backdrop.is-open,
body.newsletter-open .site-newsletter__backdrop {
  position: fixed !important;
  inset: 0 !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  z-index: 11000 !important;
  background: rgba(0, 0, 0, 0.42) !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
}
.site-newsletter__backdrop.is-closed,
.site-newsletter__backdrop.opacity-0,
.site-newsletter__backdrop.pointer-events-none {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}
body.newsletter-open .site-newsletter,
.site-newsletter {
  position: fixed !important;
  top: 0 !important;
  right: 0 !important;
  z-index: 11010 !important;
}

/* Cookie settings — Bottega preference centre */
.cookie-settings-root {
  position: fixed !important;
  inset: 0 !important;
  z-index: 12050 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 1.25rem !important;
  background: rgba(0, 0, 0, 0.4) !important;
}
.cookie-settings {
  width: min(756px, 100%) !important;
  max-width: 756px !important;
  max-height: min(92vh, 640px) !important;
  background: #fff !important;
  color: #000 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  display: flex !important;
  flex-direction: column !important;
  overflow: hidden !important;
  border: 0 !important;
}
.cookie-settings__header {
  padding: 1.35rem 1.5rem 0.85rem !important;
  border: 0 !important;
}
.cookie-settings__title {
  font-size: 12px !important;
  font-weight: 500 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
}
.cookie-settings__body {
  flex: 1 1 auto !important;
  min-height: 0 !important;
  border-top: 1px solid #e8e8e8 !important;
}
.cookie-settings__nav {
  width: 100% !important;
}
@media (min-width: 768px) {
  .cookie-settings__nav {
    width: 42% !important;
    max-width: 280px !important;
    border-right: 1px solid #e8e8e8 !important;
    border-bottom: 0 !important;
    padding: 0.5rem 0 1rem !important;
  }
}
.cookie-settings__nav .tab-button,
.cookie-settings__nav button {
  width: 100% !important;
  text-align: left !important;
  padding: 0.7rem 1.5rem !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  letter-spacing: -0.20px !important;
  color: #000 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
}
.cookie-settings__nav .tab-button .underline,
.cookie-settings__nav .tab-button span.underline {
  text-decoration: underline !important;
  text-underline-offset: 6px !important;
  text-decoration-thickness: 1px !important;
}
.cookie-settings__panel {
  padding: 1.35rem 1.75rem 1.5rem !important;
}
.cookie-settings__panel-title,
.cookie-settings__panel h3 {
  font-size: 12px !important;
  font-weight: 500 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  margin: 0 0 1rem !important;
}
.cookie-settings__panel-copy,
.cookie-settings__panel p {
  font-size: 13px !important;
  line-height: 1.35 !important;
  letter-spacing: -0.20px !important;
  color: #000 !important;
  margin: 0 0 1rem !important;
}
.cookie-settings__more,
a.cookie-settings__more,
button.cookie-settings__more {
  display: inline-block !important;
  font-size: 13px !important;
  color: #000 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px !important;
  text-decoration-thickness: 1px !important;
  letter-spacing: -0.20px !important;
  background: none !important;
  border: 0 !important;
  padding: 0 !important;
  cursor: pointer !important;
}
.cookie-settings__footer {
  display: flex !important;
  flex-direction: row !important;
  justify-content: space-between !important;
  align-items: center !important;
  gap: 1rem !important;
  padding: 1rem 1.5rem 1.5rem !important;
  border-top: 0 !important;
  margin-top: auto !important;
}
.cookie-settings__btn {
  min-height: 2.75rem !important;
  padding: 0.7rem 1.5rem !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  letter-spacing: -0.20px !important;
  border-radius: 0 !important;
  text-transform: none !important;
}
.cookie-settings__btn--primary {
  background: #000 !important;
  color: #fff !important;
  border: 1px solid #000 !important;
}
.cookie-settings__btn--ghost {
  background: #fff !important;
  color: #000 !important;
  border: 1px solid #000 !important;
}
.cookie-settings .relative.inline-block.w-12.h-6 {
  width: 2.5rem !important;
  height: 1.25rem !important;
  border-radius: 999px !important;
}
.cookie-settings .relative.inline-block.w-12.h-6 > div {
  width: 1.25rem !important;
  height: 1.25rem !important;
  border-width: 3px !important;
}


/* —— Pass 20260731ab — mega dim via inset top = header-bottom —— */
.site-mega__backdrop.is-open,
body.mega-open .site-mega__backdrop.is-open {
  position: fixed !important;
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  /* single shorthand so nothing resets top back to auto */
  inset: var(--header-bottom, 64px) 0 0 0 !important;
  width: 100% !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  background: rgba(0, 0, 0, 0.42) !important;
  z-index: 10020 !important;
  transition: none !important;
  animation: none !important;
}
.site-mega__backdrop.is-closed {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
  opacity: 0 !important;
}
body.mega-open .site-promo {
  z-index: 10045 !important;
  background: #000 !important;
  color: #fff !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/* Cookie banner uses Tailwind `translate` not `transform` */
.cookie-banner {
  transition: translate 0.85s cubic-bezier(0.22, 1, 0.36, 1) !important;
  will-change: translate;
  z-index: 12045 !important;
}
.cookie-banner.translate-y-full,
.cookie-banner.is-out {
  translate: 0 100% !important;
}
.cookie-banner.translate-y-0,
.cookie-banner.is-in {
  translate: 0 0 !important;
}


/* —— Pass 20260731ac — cookie slow slide-up —— */
.cookie-banner {
  transition: transform 0.85s cubic-bezier(0.22, 1, 0.36, 1) !important;
}
.cookie-banner.translate-y-full,
.cookie-banner.is-out {
  translate: none !important;
  transform: translateY(100%) !important;
}
.cookie-banner.translate-y-0,
.cookie-banner.is-in {
  translate: none !important;
  transform: translateY(0) !important;
}


/* —— Pass 20260731ae — cookie settings match ref, newsletter header visible, subscribe arrows —— */

/* Cookie settings — match Bottega preference centre */
.cookie-settings-root {
  position: fixed !important;
  inset: 0 !important;
  z-index: 12050 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 1.25rem !important;
  background: rgba(0, 0, 0, 0.45) !important;
}
.cookie-settings {
  width: min(780px, 100%) !important;
  max-width: 780px !important;
  max-height: min(92vh, 620px) !important;
  height: auto !important;
  background: #fff !important;
  color: #000 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  display: flex !important;
  flex-direction: column !important;
  overflow: hidden !important;
}
.cookie-settings__header {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding: 1.35rem 1.6rem 1rem !important;
  border: 0 !important;
}
.cookie-settings__title {
  margin: 0 !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  color: #000 !important;
}
.cookie-settings__close {
  width: 2rem !important;
  height: 2rem !important;
  color: #000 !important;
  opacity: 1 !important;
}
.cookie-settings > .px-6.pb-4.md\:hidden {
  display: none !important;
}
.cookie-settings__body {
  flex: 1 1 auto !important;
  min-height: 0 !important;
  border-top: 1px solid #e8e8e8 !important;
  display: flex !important;
  flex-direction: row !important;
  overflow: hidden !important;
}
.cookie-settings__nav {
  width: 42% !important;
  max-width: 290px !important;
  border-right: 1px solid #e8e8e8 !important;
  border-bottom: 0 !important;
  overflow-y: auto !important;
  padding: 0.35rem 0 1rem !important;
  flex-shrink: 0 !important;
}
.cookie-settings__nav .tab-button,
.cookie-settings__nav button.tab-button {
  width: 100% !important;
  text-align: left !important;
  padding: 0.75rem 1.6rem !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  letter-spacing: -0.20px !important;
  color: #000 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
}
.cookie-settings__nav .tab-button .underline,
.cookie-settings__nav .tab-button span.underline {
  text-decoration: underline !important;
  text-underline-offset: 6px !important;
  text-decoration-thickness: 1px !important;
  text-decoration-color: #000 !important;
}
.cookie-settings__panel {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
  overflow-y: auto !important;
  padding: 1.35rem 1.75rem 1.5rem !important;
}
.cookie-settings__panel-title,
.cookie-settings__panel h3 {
  margin: 0 !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  color: #000 !important;
}
.cookie-settings__panel-copy,
.cookie-settings__panel p {
  margin: 0 0 1.1rem !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
  letter-spacing: -0.20px !important;
  color: #000 !important;
}
.cookie-settings__more,
a.cookie-settings__more,
button.cookie-settings__more {
  display: inline-block !important;
  font-size: 13px !important;
  color: #000 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px !important;
  text-decoration-thickness: 1px !important;
  letter-spacing: -0.20px !important;
  background: none !important;
  border: 0 !important;
  padding: 0 !important;
  cursor: pointer !important;
}
/* Footer: Confirm left — Reject All + Allow All right */
.cookie-settings__footer {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  justify-content: space-between !important;
  align-items: center !important;
  gap: 0.75rem 1rem !important;
  padding: 1rem 1.5rem 1.5rem !important;
  margin-top: auto !important;
  border-top: 0 !important;
}
.cookie-settings__footer-actions {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  gap: 0.65rem !important;
  align-items: center !important;
}
.cookie-settings__btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 2.65rem !important;
  padding: 0.65rem 1.35rem !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  letter-spacing: -0.20px !important;
  line-height: 1.35 !important;
  border-radius: 0 !important;
  cursor: pointer !important;
  text-transform: none !important;
  white-space: nowrap !important;
}
.cookie-settings__btn--primary {
  background: #000 !important;
  color: #fff !important;
  border: 1px solid #000 !important;
}
.cookie-settings__btn--ghost {
  background: #fff !important;
  color: #000 !important;
  border: 1px solid #000 !important;
}
@media (max-width: 767px) {
  .cookie-settings {
    max-height: 100% !important;
    height: 100% !important;
    width: 100% !important;
  }
  .cookie-settings__body {
    flex-direction: column !important;
  }
  .cookie-settings__nav {
    width: 100% !important;
    max-width: none !important;
    border-right: 0 !important;
    border-bottom: 1px solid #e8e8e8 !important;
  }
  .cookie-settings__footer {
    flex-direction: column !important;
    align-items: stretch !important;
  }
  .cookie-settings__footer-actions {
    width: 100% !important;
  }
  .cookie-settings__footer-actions .cookie-settings__btn,
  .cookie-settings__footer > .cookie-settings__btn {
    width: 100% !important;
  }
}
/* Toggle — grey off / black on, slim pill */
.cookie-settings .relative.inline-block.w-12.h-6 {
  width: 2.75rem !important;
  height: 1.35rem !important;
  border-radius: 999px !important;
  background: #d4d4d4 !important;
}
.cookie-settings .relative.inline-block.w-12.h-6.bg-black {
  background: #000 !important;
}
.cookie-settings .relative.inline-block.w-12.h-6 > div {
  width: 1.35rem !important;
  height: 1.35rem !important;
  border-width: 2px !important;
  top: 0 !important;
}

/* Newsletter: header stays as-is under dim (20260808ea — do not force show / transform:none) */
html.newsletter-open,
body.newsletter-open {
  isolation: auto !important;
}
body.newsletter-open .site-promo,
body.newsletter-open .site-header,
body.newsletter-open header.site-header {
  z-index: 90 !important;
  pointer-events: none !important;
  /* do not set transform/visibility — freeze + scroll-hide own them */
}
body.newsletter-open .site-header,
body.newsletter-open header.site-header {
  /* keep existing sticky/fixed from navbar — no position rewrite */
  background: #fff !important;
}
body.newsletter-open .site-promo {
  background: #000 !important;
  color: #fff !important;
}
.site-newsletter__backdrop,
.site-newsletter__backdrop.is-open,
body.newsletter-open .site-newsletter__backdrop {
  position: fixed !important;
  /* dim under header so header stays visible; panel still overlaps header */
  inset: var(--header-bottom, 64px) 0 0 0 !important;
  z-index: 11000 !important;
  background: rgba(0, 0, 0, 0.42) !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
}
.site-newsletter__backdrop.is-closed,
.site-newsletter__backdrop.opacity-0,
.site-newsletter__backdrop.pointer-events-none {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}
body.newsletter-open .site-newsletter,
.site-newsletter {
  position: fixed !important;
  top: 0 !important;
  right: 0 !important;
  z-index: 11010 !important; /* overlaps header */
}

/* Subscribe arrows — larger, nudge forward on hover */
.site-footer__email-submit {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 2rem !important;
  height: 2rem !important;
  opacity: 1 !important;
  transition: transform 0.25s cubic-bezier(0.25, 1, 0.5, 1) !important;
}
.site-footer__email-submit:hover,
.site-footer__email-field:focus-within .site-footer__email-submit,
.site-footer__email-field.group:hover .site-footer__email-submit {
  opacity: 1 !important;
  transform: translateX(4px) !important;
}
.site-footer__email-arrow,
.site-footer__email-submit svg,
.site-footer__email-submit .site-footer__email-arrow {
  display: block !important;
  width: 1.35rem !important;
  height: 1.35rem !important;
  stroke-width: 1.35px !important;
}

/* Newsletter title chevron — larger; points forward (→) on hover */
.site-newsletter__title-chevron {
  width: 1.35rem !important;
  height: 1.35rem !important;
  stroke-width: 1.75 !important;
  transition: transform 0.25s cubic-bezier(0.25, 1, 0.5, 1) !important;
  transform: rotate(0deg);
}
.site-newsletter__title-trigger:hover .site-newsletter__title-chevron:not(.is-open) {
  transform: rotate(-90deg) !important; /* down → points forward/right */
}
.site-newsletter__title-chevron.is-open {
  transform: rotate(180deg) !important;
}


/* —— Pass 20260731af — newsletter below header; subscribe arrow hover —— */

/* Sidebar starts under header so it does not hide chrome */
body.newsletter-open .site-newsletter,
.site-newsletter {
  top: var(--header-bottom, 64px) !important;
  height: calc(100dvh - var(--header-bottom, 64px)) !important;
  max-height: calc(100dvh - var(--header-bottom, 64px)) !important;
  z-index: 11010 !important;
}
body.newsletter-open .site-header,
body.newsletter-open header.site-header,
body.newsletter-open .site-promo {
  /* 20260808ea: no force-show */
  pointer-events: none !important;
  z-index: 90 !important;

}
body.newsletter-open .site-newsletter__backdrop,
.site-newsletter__backdrop.is-open {
  inset: var(--header-bottom, 64px) 0 0 0 !important;
  z-index: 11000 !important;
}

/* Title chevron larger + points forward on hover */
.site-newsletter__title-chevron {
  width: 1.65rem !important;
  height: 1.65rem !important;
  min-width: 1.65rem !important;
  stroke-width: 2 !important;
  transition: transform 0.28s cubic-bezier(0.25, 1, 0.5, 1) !important;
}
.site-newsletter__title-trigger:hover .site-newsletter__title-chevron:not(.is-open) {
  transform: rotate(-90deg) !important;
}
.site-newsletter__title-chevron.is-open {
  transform: rotate(180deg) !important;
}

/* Subscribe CTA arrow — larger, slides forward on hover */
.site-newsletter__submit {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0 !important;
  opacity: 1 !important;
}
.site-newsletter__submit-inner {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0.65rem !important;
}
.site-newsletter__submit-arrow {
  width: 1.55rem !important;
  height: 1.55rem !important;
  flex: 0 0 auto !important;
  transform: translateX(0) !important;
  transition: transform 0.3s cubic-bezier(0.25, 1, 0.5, 1) !important;
  stroke: currentColor !important;
  stroke-width: 1.6px !important;
}
.site-newsletter__submit:hover:not(:disabled) .site-newsletter__submit-arrow,
.site-newsletter__submit:focus-visible .site-newsletter__submit-arrow {
  transform: translateX(6px) !important;
}
.site-newsletter__submit:hover:not(:disabled) {
  opacity: 1 !important;
}

/* Cookie toggle knob positions */
.cookie-settings .relative.inline-block.w-12.h-6 {
  width: 2.75rem !important;
  height: 1.4rem !important;
  border-radius: 999px !important;
}
.cookie-settings .relative.inline-block.w-12.h-6.bg-gray-300 {
  background: #d1d1d1 !important;
}
.cookie-settings .relative.inline-block.w-12.h-6.bg-black {
  background: #000 !important;
}
.cookie-settings .relative.inline-block.w-12.h-6 > div {
  width: 1.4rem !important;
  height: 1.4rem !important;
  border-width: 2px !important;
  box-sizing: border-box !important;
}
.cookie-settings .relative.inline-block.w-12.h-6 > div.right-0 {
  right: 0 !important;
  left: auto !important;
}
.cookie-settings .relative.inline-block.w-12.h-6 > div.left-0 {
  left: 0 !important;
  right: auto !important;
}

/* Ensure Confirm stays visible left in footer */
.cookie-settings__footer > .cookie-settings__btn--primary {
  display: inline-flex !important;
  visibility: visible !important;
  opacity: 1 !important;
}


/* —— Pass 20260731ag — fix layer close fallout; email match; cookie OneTrust; header/sidebar —— */

/* Header always readable */
.site-header,
header.site-header {
  display: grid !important;
  opacity: 1 !important;
  visibility: visible !important;
  background: #fff !important;
  color: #000 !important;
}
.site-header a,
.site-header button,
.site-nav__link,
.header-util {
  color: #000 !important;
  opacity: 1 !important;
  visibility: visible !important;
}
.site-logo {
  opacity: 1 !important;
  visibility: visible !important;
  filter: none !important;
}

/* Newsletter: below header; header never blank/hidden */
body.newsletter-open .site-header,
body.newsletter-open header.site-header,
body.newsletter-open .site-promo {
  /* 20260808ea: no force-show */
  pointer-events: none !important;
  z-index: 90 !important;

}
body.newsletter-open .site-promo {
  background: #000 !important;
  color: #fff !important;
}
body.newsletter-open .site-newsletter,
.site-newsletter {
  top: var(--header-bottom, 64px) !important;
  height: calc(100dvh - var(--header-bottom, 64px)) !important;
  max-height: calc(100dvh - var(--header-bottom, 64px)) !important;
  z-index: 11010 !important;
}
body.newsletter-open .site-newsletter__backdrop,
.site-newsletter__backdrop.is-open {
  inset: var(--header-bottom, 64px) 0 0 0 !important;
  z-index: 11000 !important;
}

/* Footer email — match Bottega underline field */
.site-footer__email-field {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 0.75rem !important;
  min-height: 2.75rem !important;
  padding: 0.85rem 0 0.55rem !important;
  border: 0 !important;
  border-bottom: 1px solid #111 !important;
  background: transparent !important;
  box-shadow: none !important;
}
.site-footer__email-input {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  height: auto !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: #000 !important;
  font-size: 13px !important;
  letter-spacing: -0.20px !important;
  line-height: 1.35 !important;
  outline: none !important;
  box-shadow: none !important;
}
.site-footer__email-label {
  position: absolute !important;
  left: 0 !important;
  top: 50% !important;
  transform: translateY(-42%) !important;
  margin: 0 !important;
  padding: 0 !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  letter-spacing: -0.20px !important;
  line-height: 1.35 !important;
  color: #a0a0a0 !important;
  text-transform: none !important;
  pointer-events: none !important;
  background: transparent !important;
}
.site-footer__email-label.is-active {
  top: 0 !important;
  transform: none !important;
  font-size: 10px !important;
  font-weight: 500 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  color: #000 !important;
}
.site-footer__email-submit {
  position: relative !important;
  flex: 0 0 auto !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 1.75rem !important;
  height: 1.75rem !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: #000 !important;
  opacity: 1 !important;
  transform: translateX(0) !important;
  transition: transform 0.28s cubic-bezier(0.25, 1, 0.5, 1) !important;
}
.site-footer__email-submit:hover,
.site-footer__email-field:hover .site-footer__email-submit,
.site-footer__email-field:focus-within .site-footer__email-submit {
  opacity: 1 !important;
  transform: translateX(5px) !important;
}
.site-footer__email-arrow,
.site-footer__email-submit svg {
  width: 1.25rem !important;
  height: 1.25rem !important;
  stroke: #000 !important;
  stroke-width: 1.25px !important;
}

/* Cookie settings — closer to Bottega OneTrust */
.cookie-settings-root {
  background: rgba(0, 0, 0, 0.5) !important;
  padding: 1.5rem !important;
}
.cookie-settings {
  width: min(800px, 100%) !important;
  max-width: 800px !important;
  max-height: min(88vh, 640px) !important;
  box-shadow: none !important;
  border: 0 !important;
}
.cookie-settings__header {
  padding: 1.5rem 1.75rem 1rem !important;
}
.cookie-settings__title {
  font-size: 11px !important;
  font-weight: 500 !important;
  letter-spacing: 0.12em !important;
}
.cookie-settings__body {
  border-top: 1px solid #e5e5e5 !important;
}
.cookie-settings__nav {
  width: 40% !important;
  max-width: 300px !important;
  border-right: 1px solid #e5e5e5 !important;
  padding-top: 0.5rem !important;
}
.cookie-settings__nav .tab-button {
  padding: 0.8rem 1.75rem !important;
  font-size: 13px !important;
}
.cookie-settings__nav .tab-button .underline {
  text-underline-offset: 5px !important;
  text-decoration-thickness: 1px !important;
}
.cookie-settings__panel {
  padding: 1.5rem 1.75rem !important;
}
.cookie-settings__panel-title {
  font-size: 11px !important;
  letter-spacing: 0.12em !important;
}
.cookie-settings__panel-copy,
.cookie-settings__panel p {
  font-size: 13px !important;
  line-height: 1.35 !important;
  color: #000 !important;
}
.cookie-settings__more {
  font-size: 13px !important;
  text-decoration: underline !important;
  text-underline-offset: 3px !important;
}
.cookie-settings__footer {
  padding: 1.25rem 1.75rem 1.75rem !important;
  gap: 1rem !important;
}
.cookie-settings__btn {
  min-height: 2.75rem !important;
  padding: 0.7rem 1.5rem !important;
  font-size: 12px !important;
  font-weight: 500 !important;
}
.cookie-settings__footer-actions {
  gap: 0.75rem !important;
}
/* Always Active badge styling if present */
.cookie-settings .always-active,
.cookie-settings__always-active {
  font-size: 12px !important;
  color: #000 !important;
  font-weight: 500 !important;
}


/* —— Pass 20260731ah — email resting label grey; arrow Bottega match —— */
.site-footer__email-label:not(.is-active),
label.site-footer__email-label:not(.is-active) {
  color: #a0a0a0 !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  letter-spacing: -0.20px !important;
  text-transform: none !important;
  top: 50% !important;
  transform: translateY(-42%) !important;
}
.site-footer__email-label.is-active {
  color: #000 !important;
  font-size: 10px !important;
  font-weight: 500 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  top: 0 !important;
  transform: none !important;
}
.site-footer__email-field {
  border-bottom-color: #111 !important;
  min-height: 2.85rem !important;
  padding: 0.9rem 0 0.6rem !important;
}
.site-footer__email-arrow,
.site-footer__email-submit svg.site-footer__email-arrow,
.site-footer__email-submit svg {
  width: 1.35rem !important;
  height: 1.35rem !important;
  stroke: #000 !important;
  stroke-width: 1.15px !important;
}
.site-footer__email-submit:hover,
.site-footer__email-field:hover .site-footer__email-submit,
.site-footer__email-field:focus-within .site-footer__email-submit {
  transform: none !important;
}


/* —— Pass 20260731ai — arrow-only hover; cookie text; subscribe robust —— */

/* Hover moves ARROW only — never the button/field */
.site-footer__email-submit,
.site-footer__email-submit:hover,
.site-footer__email-field:hover .site-footer__email-submit,
.site-footer__email-field:focus-within .site-footer__email-submit,
.site-footer__email-field.group:hover .site-footer__email-submit {
  transform: none !important;
  opacity: 1 !important;
}
.site-footer__email-arrow,
.site-footer__email-submit svg,
.site-footer__email-submit .site-footer__email-arrow {
  display: block !important;
  width: 1.35rem !important;
  height: 1.35rem !important;
  stroke: #000 !important;
  stroke-width: 1.15px !important;
  transform: translateX(0) !important;
  transition: transform 0.28s cubic-bezier(0.25, 1, 0.5, 1) !important;
}
.site-footer__email-submit:hover .site-footer__email-arrow,
.site-footer__email-submit:hover svg,
.site-footer__email-submit:focus-visible .site-footer__email-arrow {
  transform: translateX(6px) !important;
}

/* Newsletter subscribe arrow — same: arrow only */
.site-newsletter__submit {
  transform: none !important;
}
.site-newsletter__submit-arrow {
  width: 1.55rem !important;
  height: 1.55rem !important;
  transform: translateX(0) !important;
  transition: transform 0.3s cubic-bezier(0.25, 1, 0.5, 1) !important;
}
.site-newsletter__submit:hover:not(:disabled) .site-newsletter__submit-arrow,
.site-newsletter__submit:focus-visible .site-newsletter__submit-arrow {
  transform: translateX(6px) !important;
}
.site-newsletter__submit:hover:not(:disabled) {
  transform: none !important;
  opacity: 1 !important;
}

/* SUBSCRIBE BLOCK — force visible (was effectively blank) */
.site-footer,
.site-footer.site-footer {
  position: relative !important;
  z-index: 5 !important;
  background: #fff !important;
  color: #000 !important;
  opacity: 1 !important;
  visibility: visible !important;
  isolation: isolate !important;
}
.site-footer__subscribe,
.site-footer .site-footer__subscribe {
  position: relative !important;
  z-index: 6 !important;
  display: block !important;
  width: 100% !important;
  max-width: 28rem !important;
  margin: 0 !important;
  padding: 0 !important;
  background: #fff !important;
  color: #000 !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  filter: none !important;
  mix-blend-mode: normal !important;
}
@media (min-width: 768px) {
  .site-footer__subscribe,
  .site-footer .site-footer__subscribe {
    transform: none !important;
  }
}
.site-footer__subscribe h4,
.site-footer__subscribe .site-footer__title,
.site-footer__subscribe p,
.site-footer__subscribe label,
.site-footer__subscribe input,
.site-footer__subscribe a,
.site-footer__subscribe span,
.site-footer__subscribe button {
  color: #000 !important;
  -webkit-text-fill-color: #000 !important;
  opacity: 1 !important;
  visibility: visible !important;
  filter: none !important;
}
.site-footer__subscribe .site-footer__title {
  display: block !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  margin: 0 0 1rem !important;
}
.site-footer__subscribe p {
  display: block !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
  margin: 0 0 1.5rem !important;
}
.site-footer__email-field {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 0.75rem !important;
  width: 100% !important;
  min-height: 2.85rem !important;
  padding: 0.9rem 0 0.55rem !important;
  background: #fff !important;
  border: 0 !important;
  border-bottom: 1px solid #111 !important;
  opacity: 1 !important;
  visibility: visible !important;
}
.site-footer__email-label:not(.is-active) {
  color: #a0a0a0 !important;
  -webkit-text-fill-color: #a0a0a0 !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  text-transform: none !important;
}
.site-footer__email-label.is-active {
  color: #000 !important;
  -webkit-text-fill-color: #000 !important;
}
.site-footer__email-input {
  color: #000 !important;
  -webkit-text-fill-color: #000 !important;
  caret-color: #000 !important;
  background: transparent !important;
  opacity: 1 !important;
}
.site-footer__email-submit {
  color: #000 !important;
  background: transparent !important;
  border: 0 !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/* COOKIE — match Bottega reference exactly */
.cookie-settings-root {
  background: rgba(0, 0, 0, 0.45) !important;
}
.cookie-settings {
  width: min(800px, calc(100vw - 2rem)) !important;
  max-width: 800px !important;
  max-height: min(88vh, 620px) !important;
  background: #fff !important;
  color: #000 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
.cookie-settings__title {
  font-size: 11px !important;
  font-weight: 500 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  color: #000 !important;
}
.cookie-settings__mobile-toggle,
.cookie-settings__nav .md\:hidden,
.cookie-settings .md\:hidden {
  display: none !important;
}
@media (max-width: 767px) {
  .cookie-settings__mobile-toggle,
  .cookie-settings__nav .cookie-settings__mobile-toggle {
    display: inline !important;
  }
}
.cookie-settings__nav {
  width: 40% !important;
  max-width: 300px !important;
  border-right: 1px solid #e5e5e5 !important;
}
.cookie-settings__nav .tab-button {
  color: #000 !important;
  font-size: 13px !important;
  padding: 0.85rem 1.75rem !important;
}
.cookie-settings__nav .tab-button .underline {
  text-decoration: underline !important;
  text-underline-offset: 6px !important;
  text-decoration-thickness: 1px !important;
}
.cookie-settings__panel-title {
  font-size: 11px !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  color: #000 !important;
}
.cookie-settings__panel-copy,
.cookie-settings__panel p {
  color: #000 !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
}
.cookie-settings__more {
  color: #000 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px !important;
}
.cookie-settings__footer {
  display: flex !important;
  flex-direction: row !important;
  justify-content: space-between !important;
  align-items: center !important;
  gap: 1rem !important;
  padding: 1.25rem 1.75rem 1.75rem !important;
}
.cookie-settings__footer-actions {
  display: flex !important;
  flex-direction: row !important;
  gap: 0.75rem !important;
}
.cookie-settings__btn {
  min-height: 2.85rem !important;
  padding: 0.75rem 1.6rem !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  border-radius: 0 !important;
  line-height: 1.35 !important;
}
/* CRITICAL: primary was black-on-black */
.cookie-settings__btn--primary,
.cookie-settings__btn.cookie-settings__btn--primary {
  background: #000 !important;
  background-color: #000 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  border: 1px solid #000 !important;
  opacity: 1 !important;
}
.cookie-settings__btn--ghost,
.cookie-settings__btn.cookie-settings__btn--ghost {
  background: #fff !important;
  background-color: #fff !important;
  color: #000 !important;
  -webkit-text-fill-color: #000 !important;
  border: 1px solid #000 !important;
  opacity: 1 !important;
}

/* Toggle: off = grey/left, on = black/right */
.cookie-settings .relative.inline-block.w-12.h-6 {
  width: 2.75rem !important;
  height: 1.4rem !important;
  border-radius: 999px !important;
  flex-shrink: 0 !important;
}
.cookie-settings .relative.inline-block.w-12.h-6.bg-gray-300,
.cookie-settings .relative.inline-block.w-12.h-6:not(.bg-black) {
  background: #d4d4d4 !important;
  background-color: #d4d4d4 !important;
}
.cookie-settings .relative.inline-block.w-12.h-6.bg-black {
  background: #000 !important;
  background-color: #000 !important;
}
.cookie-settings .relative.inline-block.w-12.h-6 > div {
  width: 1.4rem !important;
  height: 1.4rem !important;
  border-radius: 999px !important;
  background: #fff !important;
  box-sizing: border-box !important;
  border-width: 2px !important;
  top: 0 !important;
}
.cookie-settings .relative.inline-block.w-12.h-6 > div.right-0 {
  right: 0 !important;
  left: auto !important;
}
.cookie-settings .relative.inline-block.w-12.h-6 > div.left-0 {
  left: 0 !important;
  right: auto !important;
}


/* —— Pass 20260731aj — subscribe paint guarantee —— */
.site-footer__top {
  position: relative !important;
  z-index: 6 !important;
  background: #fff !important;
}
.site-footer__subscribe,
.site-footer__subscribe * {
  color: #000 !important;
  -webkit-text-fill-color: #000 !important;
  opacity: 1 !important;
  visibility: visible !important;
}
.site-footer__subscribe .site-footer__email-label:not(.is-active) {
  color: #a0a0a0 !important;
  -webkit-text-fill-color: #a0a0a0 !important;
}
.site-footer__email-field,
.site-footer__email-field * {
  opacity: 1 !important;
  visibility: visible !important;
}
.site-footer__email-field {
  border-bottom: 1px solid #111 !important;
  background: #fff !important;
}
/* Newsletter sidebar content never blank */
.site-newsletter,
.site-newsletter * {
  opacity: 1 !important;
  visibility: visible !important;
}
.site-newsletter {
  background: #fff !important;
  color: #000 !important;
}
.site-newsletter__heading,
.site-newsletter__intro,
.site-newsletter__legal,
.site-newsletter__title-value,
.site-newsletter__email-input,
.site-newsletter__email-label.is-active {
  color: #000 !important;
  -webkit-text-fill-color: #000 !important;
}
.site-newsletter__email-label:not(.is-active),
.site-newsletter__title-value.is-placeholder {
  color: #a0a0a0 !important;
  -webkit-text-fill-color: #a0a0a0 !important;
}
.site-newsletter__submit {
  background: #000 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}
.site-newsletter__submit-arrow {
  stroke: #fff !important;
  color: #fff !important;
}


/* —— Pass 20260731ak — cookie toggle + always-active; arrow hover lock —— */
.cookie-settings__switch {
  width: 2.75rem !important;
  height: 1.35rem !important;
  border-radius: 999px !important;
  position: relative !important;
  flex-shrink: 0 !important;
  transition: background-color 0.2s ease !important;
}
.cookie-settings__switch.is-off {
  background: #d0d0d0 !important;
  background-color: #d0d0d0 !important;
}
.cookie-settings__switch.is-on {
  background: #000 !important;
  background-color: #000 !important;
}
.cookie-settings__switch-knob {
  position: absolute !important;
  top: 0 !important;
  width: 1.35rem !important;
  height: 1.35rem !important;
  border-radius: 999px !important;
  background: #fff !important;
  box-sizing: border-box !important;
  border: 2px solid #d0d0d0 !important;
  transition: left 0.25s ease, right 0.25s ease, border-color 0.2s ease !important;
  box-shadow: none !important;
}
.cookie-settings__switch.is-off .cookie-settings__switch-knob {
  left: 0 !important;
  right: auto !important;
  border-color: #d0d0d0 !important;
}
.cookie-settings__switch.is-on .cookie-settings__switch-knob {
  right: 0 !important;
  left: auto !important;
  border-color: #000 !important;
}
.cookie-settings__always-active {
  font-size: 11px !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  color: #000 !important;
  white-space: nowrap !important;
}
.cookie-settings__panel {
  padding: 1.5rem 1.75rem !important;
}
.cookie-settings__panel .flex.justify-between {
  gap: 1rem !important;
}
.cookie-settings__more,
a.cookie-settings__more {
  display: inline-block !important;
  margin-top: 1.25rem !important;
  font-size: 13px !important;
  color: #000 !important;
  text-decoration: underline !important;
  text-underline-offset: 4px !important;
  text-decoration-thickness: 1px !important;
}

/* Footer email: field never moves; only arrow */
.site-footer__email-field,
.site-footer__email-field:hover,
.site-footer__email-field:focus-within {
  transform: none !important;
}
.site-footer__email-submit {
  transition: none !important;
  transform: none !important;
}
.site-footer__email-submit:hover {
  transform: none !important;
}
.site-footer__email-arrow {
  transition: transform 0.28s cubic-bezier(0.25, 1, 0.5, 1) !important;
}
/* superseded — arrow-only hover in pass al */
.site-footer__email-submit:hover .site-footer__email-arrow,
.site-footer__email-field:hover .site-footer__email-arrow {
  transform: none !important;
}

/* Subscribe: never blank — force paint on title/copy/field */
.site-footer__subscribe > .site-footer__title,
.site-footer__subscribe > h4,
.site-footer__subscribe > p {
  display: block !important;
  color: #000 !important;
  -webkit-text-fill-color: #000 !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: auto !important;
  max-height: none !important;
  overflow: visible !important;
  clip: auto !important;
  position: relative !important;
  z-index: 1 !important;
}
.site-footer__subscribe > .site-footer__title,
.site-footer__subscribe > h4 {
  font-size: 11px !important;
  font-weight: 500 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  margin: 0 0 1rem !important;
}
.site-footer__subscribe > p {
  font-size: 13px !important;
  line-height: 1.35 !important;
  margin: 0 0 1.5rem !important;
}

/* —— Pass 20260801ao — newsletter under header, subscribe paint, search logo, cookie UI —— */

/* Fix: newsletter must NOT cover header/promo */
body.newsletter-open .site-header,
body.newsletter-open header.site-header {
  /* 20260808ea: no force-show */
  pointer-events: none !important;
  z-index: 90 !important;

}
body.newsletter-open:not(.overlay-promo-was-off) .site-promo,
html.newsletter-open:not(.overlay-promo-was-off) .site-promo {
  position: relative !important;
  z-index: 80 !important;
  pointer-events: none !important;
  background: #000 !important;
  color: #fff !important;
}
body.newsletter-open .site-newsletter__backdrop,
.site-newsletter__backdrop.is-open,
.site-newsletter__backdrop.pointer-events-auto {
  position: fixed !important;
  inset: var(--header-bottom, 64px) 0 0 0 !important;
  top: var(--header-bottom, 64px) !important;
  right: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: auto !important;
  z-index: 12000 !important;
  background: rgba(0, 0, 0, 0.42) !important;
}
body.newsletter-open .site-newsletter,
.site-newsletter.site-newsletter,
div.site-newsletter {
  position: fixed !important;
  top: var(--header-bottom, 64px) !important;
  right: 0 !important;
  bottom: 0 !important;
  left: auto !important;
  height: calc(100dvh - var(--header-bottom, 64px)) !important;
  max-height: calc(100dvh - var(--header-bottom, 64px)) !important;
  z-index: 12010 !important;
  background: #fff !important;
  color: #000 !important;
  opacity: 1 !important;
  visibility: visible !important;
  display: flex !important;
  flex-direction: column !important;
}

/* Newsletter content never blank/white-on-white */
.site-newsletter__heading,
.site-newsletter__intro,
.site-newsletter__legal,
.site-newsletter__title-value,
.site-newsletter__email-input,
.site-newsletter__required,
.site-newsletter__success-text {
  color: #000 !important;
  -webkit-text-fill-color: #000 !important;
  opacity: 1 !important;
  visibility: visible !important;
}
.site-newsletter__email-label:not(.is-active),
.site-newsletter__title-value.is-placeholder {
  color: #a0a0a0 !important;
  -webkit-text-fill-color: #a0a0a0 !important;
}
.site-newsletter__submit {
  background: #000 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}
.site-newsletter__submit-arrow {
  stroke: #fff !important;
}

/* Footer subscribe — never blank */
.site-footer__subscribe,
.site-footer__subscribe > h4,
.site-footer__subscribe > .site-footer__title,
.site-footer__subscribe > p,
.site-footer__email-field,
.site-footer__email-label,
.site-footer__email-input,
.site-footer__email-submit {
  opacity: 1 !important;
  visibility: visible !important;
  color: #000 !important;
  -webkit-text-fill-color: #000 !important;
}
.site-footer__subscribe > h4,
.site-footer__subscribe > .site-footer__title {
  display: block !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  text-transform: uppercase !important;
  letter-spacing: -0.20px !important;
  margin: 0 0 1rem !important;
}
.site-footer__subscribe > p {
  display: block !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
  margin: 0 0 1.5rem !important;
}
.site-footer__email-label:not(.is-active) {
  color: #a0a0a0 !important;
  -webkit-text-fill-color: #a0a0a0 !important;
}

/* Search logo — same size + left align as header */
.site-search__top {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding-inline: 1rem !important;
}
@media (min-width: 768px) {
  .site-search__top {
    padding-inline: 2rem !important;
  }
}
.site-search__logo {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  line-height: 1.35 !important;
  height: 72px !important;
}
.site-search__logo .site-logo,
.site-search__logo img.site-logo,
a.site-search__logo .site-logo {
  height: 22px !important;
  width: auto !important;
  max-height: 22px !important;
  object-fit: contain !important;
  display: block !important;
}
@media (min-width: 768px) {
  .site-search__logo .site-logo,
  .site-search__logo img.site-logo,
  a.site-search__logo .site-logo {
    height: 26px !important;
    max-height: 26px !important;
  }
}
.site-header .site-logo,
.site-logo-link .site-logo,
img.site-logo {
  height: 22px !important;
  width: auto !important;
  max-height: 22px !important;
  object-fit: contain !important;
}
@media (min-width: 768px) {
  .site-header .site-logo,
  .site-logo-link .site-logo,
  img.site-logo {
    height: 26px !important;
    max-height: 26px !important;
  }
}

/* Cookie popup: −70px width */
.cookie-settings {
  width: min(730px, calc(100vw - 2rem)) !important;
  max-width: 730px !important;
}

/* Cookie buttons: invert on hover */
.cookie-settings__btn--primary,
.cookie-settings__btn.cookie-settings__btn--primary {
  background: #000 !important;
  background-color: #000 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  border: 1px solid #000 !important;
  transition: background-color 0.2s ease, color 0.2s ease !important;
}
.cookie-settings__btn--primary:hover,
.cookie-settings__btn--primary:focus-visible,
.cookie-settings__btn.cookie-settings__btn--primary:hover {
  background: #fff !important;
  background-color: #fff !important;
  color: #000 !important;
  -webkit-text-fill-color: #000 !important;
  border: 1px solid #000 !important;
}
.cookie-settings__btn--ghost,
.cookie-settings__btn.cookie-settings__btn--ghost {
  background: #fff !important;
  background-color: #fff !important;
  color: #000 !important;
  -webkit-text-fill-color: #000 !important;
  border: 1px solid #000 !important;
  transition: background-color 0.2s ease, color 0.2s ease !important;
}
.cookie-settings__btn--ghost:hover,
.cookie-settings__btn--ghost:focus-visible,
.cookie-settings__btn.cookie-settings__btn--ghost:hover {
  background: #000 !important;
  background-color: #000 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  border: 1px solid #000 !important;
}

/* Panel title row: title left, toggle right */
.cookie-settings__panel .flex.justify-between.items-center,
.cookie-settings__panel .flex.justify-between {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  width: 100% !important;
  gap: 1.25rem !important;
}
.cookie-settings__panel-title,
.cookie-settings__panel h3 {
  margin: 0 !important;
  flex: 1 1 auto !important;
}
.cookie-settings__always-active {
  margin-left: auto !important;
}

/* Toggle — grey off / black on with white knob; black border on click */
.cookie-settings__switch {
  width: 2.65rem !important;
  height: 1.28rem !important;
  border-radius: 999px !important;
  position: relative !important;
  flex-shrink: 0 !important;
  margin-left: auto !important;
  border: 1px solid transparent !important;
  box-sizing: border-box !important;
  transition: background-color 0.2s ease, border-color 0.15s ease !important;
  cursor: pointer !important;
}
.cookie-settings__switch.is-off {
  background: #cfcfcf !important;
  background-color: #cfcfcf !important;
}
.cookie-settings__switch.is-on {
  background: #000 !important;
  background-color: #000 !important;
}
.cookie-settings__switch-knob {
  position: absolute !important;
  top: 50% !important;
  width: 1.15rem !important;
  height: 1.15rem !important;
  border-radius: 999px !important;
  background: #fff !important;
  border: 0 !important;
  box-shadow: none !important;
  transform: translateY(-50%) !important;
  transition: left 0.22s ease, right 0.22s ease !important;
}
.cookie-settings__switch.is-off .cookie-settings__switch-knob {
  left: 1px !important;
  right: auto !important;
}
.cookie-settings__switch.is-on .cookie-settings__switch-knob {
  right: 1px !important;
  left: auto !important;
}
/* Black border while pressed / keyboard focus */
.cookie-settings__switch:active,
.cookie-settings__switch:focus-visible,
.cookie-settings__switch.is-pressed {
  border-color: #000 !important;
  outline: none !important;
  box-shadow: 0 0 0 1px #000 !important;
}

/* Arrow hover: only arrow control (keep from an) */
.site-footer__email-field:hover .site-footer__email-arrow,
.site-footer__email-field:focus-within .site-footer__email-arrow {
  transform: none !important;
}
.site-footer__email-submit {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  transform: none !important;
}
.site-footer__email-arrow {
  transform: translateX(0) !important;
  transition: transform 0.28s cubic-bezier(0.25, 1, 0.5, 1) !important;
}
.site-footer__email-submit:hover .site-footer__email-arrow,
.site-footer__email-submit:focus-visible .site-footer__email-arrow {
  transform: translateX(6px) !important;
}


/* —— Pass 20260801ap — force header above newsletter; cookie invert hover —— */
html.newsletter-open:not(.overlay-header-was-hidden):not(.plp-strip-active) body .site-header,
html.newsletter-open:not(.overlay-header-was-hidden):not(.plp-strip-active) body header.site-header,
body.newsletter-open:not(.overlay-header-was-hidden) .site-header:not(.is-header-off),
body.newsletter-open:not(.overlay-header-was-hidden) header.site-header:not(.is-header-off),
body.newsletter-open:not(.overlay-header-was-hidden) .site-header.site-header:not(.is-header-off) {
  z-index: 90 !important;
  pointer-events: none !important;
  /* 20260808eb: do not force sticky/visible — snaps chrome / covers PLP strip */
}
html.newsletter-open:not(.overlay-promo-was-off) body .site-promo,
body.newsletter-open:not(.overlay-promo-was-off) .site-promo {
  z-index: 80 !important;
  position: relative !important;
  pointer-events: none !important;
  background: #000 !important;
  color: #fff !important;
}
html.newsletter-open body .site-newsletter__backdrop,
body.newsletter-open .site-newsletter__backdrop,
body.newsletter-open .site-newsletter__backdrop.is-open {
  z-index: 12000 !important;
  inset: var(--header-bottom, 64px) 0 0 0 !important;
}
html.newsletter-open body .site-newsletter,
body.newsletter-open .site-newsletter {
  z-index: 12050 !important;
  top: var(--header-bottom, 64px) !important;
  height: calc(100dvh - var(--header-bottom, 64px)) !important;
}

/* Cookie invert — highest specificity, last word */
button.cookie-settings__btn.cookie-settings__btn--primary:hover,
button.cookie-settings__btn.cookie-settings__btn--primary:focus-visible {
  background: #fff !important;
  background-color: #fff !important;
  color: #000 !important;
  -webkit-text-fill-color: #000 !important;
  border-color: #000 !important;
}
button.cookie-settings__btn.cookie-settings__btn--ghost:hover,
button.cookie-settings__btn.cookie-settings__btn--ghost:focus-visible {
  background: #000 !important;
  background-color: #000 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  border-color: #000 !important;
}


/* —— Pass 20260801as — pin header/promo while newsletter open —— */
/* 20260808eb: disabled force-pin — snaps announcement when scrolled away */
body.newsletter-open:not(.overlay-promo-was-off) .site-promo {
  position: relative !important;
  z-index: 80 !important;
  pointer-events: none !important;
  background: #000 !important;
  color: #fff !important;
}
body.newsletter-open .site-header,
body.newsletter-open header.site-header {
  /* 20260808ea: no force-show */
  pointer-events: none !important;
  z-index: 90 !important;

}
/* If promo scrolled away / height 0, header at top */
body.newsletter-open .site-newsletter__backdrop,
body.newsletter-open .site-newsletter__backdrop.is-open {
  inset: var(--header-bottom, 64px) 0 0 0 !important;
  top: var(--header-bottom, 64px) !important;
  z-index: 12000 !important;
}
body.newsletter-open .site-newsletter {
  top: var(--header-bottom, 64px) !important;
  height: calc(100dvh - var(--header-bottom, 64px)) !important;
  max-height: calc(100dvh - var(--header-bottom, 64px)) !important;
  z-index: 12050 !important;
}


/* —— Pass 20260801au — CTAs, cookie bar, search logo align, chevron, NL submit —— */

/* Image CTAs: a bit taller + tighter tracking */
.cta-on-image,
a.cta-on-image,
button.cta-on-image {
  padding: 0.62rem 1.2rem !important;
  letter-spacing: 0.1em !important;
  min-height: 2.15rem !important;
  line-height: 1.35 !important;
}
@media (min-width: 768px) {
  .cta-on-image,
  a.cta-on-image,
  button.cta-on-image {
    padding: 0.7rem 1.4rem !important;
    letter-spacing: 0.09em !important;
    min-height: 2.35rem !important;
  }
}

/* Cookie banner — wider copy, links underlined at rest, accept aligns under links */
.cookie-banner {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: 0.85rem !important;
  padding: 0.85rem 1rem 1rem !important;
}
@media (min-width: 768px) {
  .cookie-banner {
    flex-direction: row !important;
    align-items: flex-end !important;
    justify-content: space-between !important;
    gap: 1.75rem !important;
    padding: 1.35rem 2rem 1.5rem !important;
  }
}
.cookie-banner__copy {
  flex: 1 1 auto !important;
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  color: #000 !important;
}
.cookie-banner__copy p {
  margin: 0 0 0.45rem !important;
  font-size: inherit !important;
  line-height: 1.35 !important;
  color: #000 !important;
}
.cookie-banner__copy p:last-child {
  margin-bottom: 0 !important;
}
@media (min-width: 768px) {
  .cookie-banner__copy {
    flex: 1 1 0 !important;
    max-width: calc(100% - 15.5rem) !important;
    font-size: 11px !important;
  }
}
.cookie-banner__actions {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: 0.55rem !important;
  width: 100% !important;
  flex: 0 0 auto !important;
}
@media (min-width: 768px) {
  .cookie-banner__actions {
    width: max-content !important;
    max-width: min(15rem, 38%) !important;
    align-items: stretch !important;
    padding-bottom: 0 !important;
  }
}
.cookie-banner__links {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: space-between !important;
  gap: 0.75rem 1.25rem !important;
  width: 100% !important;
}
@media (min-width: 768px) {
  .cookie-banner__links {
    justify-content: flex-end !important;
    width: max-content !important;
    max-width: 100% !important;
  }
}
.cookie-banner__link {
  text-decoration: none !important;
  color: #000 !important;
}
/* interactive line enabled in pass bn */
.cookie-banner__accept {
  width: 100% !important;
  max-width: 100% !important;
  align-self: stretch !important;
  padding: 0.7rem 1rem !important;
  font-size: 10px !important;
  letter-spacing: 0.08em !important;
  white-space: nowrap !important;
}
@media (min-width: 768px) {
  .cookie-banner__accept {
    width: 100% !important;
    align-self: stretch !important;
    padding: 0.75rem 1.1rem !important;
  }
}

/* Search — same chrome as header so logos share position */
.site-search__panel {
  padding: 0 !important;
}
.site-search__top {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: center !important;
  height: 72px !important;
  min-height: 72px !important;
  margin: 0 !important;
  padding-inline: 1rem !important;
  box-sizing: border-box !important;
  border-bottom: none !important;
}
@media (min-width: 768px) {
  .site-search__top {
    padding-inline: 2rem !important;
  }
}
.site-search__logo {
  display: inline-flex !important;
  align-items: center !important;
  justify-self: start !important;
  height: auto !important;
  line-height: 1.35 !important;
  margin: 0 !important;
  padding: 0 !important;
}
.site-search__logo .site-logo,
.site-search__logo img.site-logo {
  height: 22px !important;
  max-height: 22px !important;
  width: auto !important;
}
@media (min-width: 768px) {
  .site-search__logo .site-logo,
  .site-search__logo img.site-logo {
    height: 26px !important;
    max-height: 26px !important;
  }
}
.site-search__close {
  justify-self: end !important;
}
.site-search__field,
.site-search__body,
.site-search__status,
.site-search__loader {
  padding-inline: 1rem !important;
}
@media (min-width: 768px) {
  .site-search__field,
  .site-search__body,
  .site-search__status,
  .site-search__loader {
    padding-inline: 2rem !important;
  }
}

/* Title chevron: only down / up — never sideways */
.site-newsletter__title-chevron,
.site-newsletter__title-trigger:hover .site-newsletter__title-chevron,
.site-newsletter__title-trigger:hover .site-newsletter__title-chevron:not(.is-open),
.site-newsletter__title-chevron:not(.is-open) {
  transform: rotate(0deg) !important;
}
.site-newsletter__title-chevron.is-open,
.site-newsletter__title-trigger:hover .site-newsletter__title-chevron.is-open {
  transform: rotate(180deg) !important;
}

/* Newsletter Subscribe btn: no arrow; -2px top/bottom padding */
.site-newsletter__submit {
  height: auto !important;
  min-height: 0 !important;
  padding-top: calc(0.85rem - 2px) !important;
  padding-bottom: calc(0.85rem - 2px) !important;
  padding-left: 1rem !important;
  padding-right: 1rem !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.site-newsletter__submit-arrow {
  display: none !important;
}

/* Sidebars / drawers: dim starts under header (no overlay on chrome) */
body.newsletter-open .site-newsletter__backdrop,
.site-newsletter__backdrop.is-open,
body.mega-open .site-mega__backdrop,
.site-mega__backdrop.is-open {
  inset: var(--header-bottom, 64px) 0 0 0 !important;
  top: var(--header-bottom, 64px) !important;
}
body.newsletter-open .site-header,
body.newsletter-open header.site-header,
body.mega-open .site-header,
body.mega-open header.site-header,
body.site-search-open .site-header,
body.site-search-open header.site-header {
  z-index: 1 !important;
  opacity: 1 !important;
  visibility: visible !important;
}


/* —— Pass 20260801av — search drops from / closes into header —— */

/* While search is open: hide real header chrome (nav + utils + logo) —
   search top bar becomes the header (logo left, X right). */
body.site-search-open .site-header,
body.site-search-open header.site-header {
  pointer-events: none !important;
}
body.site-search-open .site-header .site-nav-wrap,
body.site-search-open .site-header .header-utils,
body.site-search-open .site-header > a:first-child,
body.site-search-open .site-header > .site-logo-link,
body.site-search-open .site-header .site-logo {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

/* Search panel: slides down from header, slides back up on close */
.site-search {
  position: fixed !important;
  inset: 0 !important;
  top: 0 !important;
  z-index: 10060 !important;
  background: #fff !important;
  color: #000 !important;
  display: flex !important;
  flex-direction: column !important;
  transform: translateY(-105%) !important;
  opacity: 1 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transition:
    transform 0.48s cubic-bezier(0.25, 1, 0.5, 1),
    visibility 0s linear 0.48s !important;
  overflow: hidden !important;
}
.site-search--open {
  transform: translateY(0) !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transition:
    transform 0.48s cubic-bezier(0.25, 1, 0.5, 1),
    visibility 0s linear 0s !important;
}
.site-search--closed {
  transform: translateY(-105%) !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transition:
    transform 0.42s cubic-bezier(0.4, 0, 0.2, 1),
    visibility 0s linear 0.42s !important;
}

/* Top bar = header twin (same height + padding as site-header) */
.site-search__panel {
  padding: 0 !important;
  height: 100% !important;
  max-height: 100dvh !important;
  display: flex !important;
  flex-direction: column !important;
  overflow: hidden !important;
}
.site-search__top {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  flex-shrink: 0 !important;
  height: 72px !important;
  min-height: 72px !important;
  margin: 0 !important;
  padding-inline: 1rem !important;
  box-sizing: border-box !important;
  background: #fff !important;
  border-bottom: none !important;
}
@media (min-width: 768px) {
  .site-search__top {
    padding-inline: 2rem !important;
  }
}
.site-search__logo {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1.35 !important;
}
.site-search__logo .site-logo,
.site-search__logo img.site-logo {
  height: 22px !important;
  max-height: 22px !important;
  width: auto !important;
  display: block !important;
}
@media (min-width: 768px) {
  .site-search__logo .site-logo,
  .site-search__logo img.site-logo {
    height: 26px !important;
    max-height: 26px !important;
  }
}
.site-search__close {
  width: 28px !important;
  height: 28px !important;
  margin: 0 !important;
  flex-shrink: 0 !important;
}

/* Content below header twin */
.site-search__field {
  margin-top: 0.75rem !important;
  padding-inline: 1rem !important;
}
.site-search__body,
.site-search__status,
.site-search__loader {
  padding-inline: 1rem !important;
}
@media (min-width: 768px) {
  .site-search__field,
  .site-search__body,
  .site-search__status,
  .site-search__loader {
    padding-inline: 2rem !important;
  }
}

/* Promo stays above search if present */
body.site-search-open .site-promo {
  position: relative !important;
  z-index: 10070 !important;
}


/* —— Pass 20260801aw — lock search + header logo to identical inset —— */
.site-header,
header.site-header {
  padding-inline: 1rem !important;
}
.site-search__top {
  padding-inline: 1rem !important;
}
@media (min-width: 768px) {
  .site-header,
  header.site-header,
  .site-search__top {
    padding-inline: 2rem !important;
  }
}
.site-header > a:first-child,
.site-header > .site-logo-link,
.site-search__logo {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}


/* —— Pass 20260801ax — search drops below promo; logo+X visible —— */
.site-search {
  top: var(--promo-bar-height, 0px) !important;
  right: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  height: auto !important;
  z-index: 10060 !important;
}
body.site-search-open .site-promo {
  position: relative !important;
  z-index: 10070 !important;
}
/* Keep search header twin visible under promo */
.site-search__top {
  position: relative !important;
  z-index: 1 !important;
  background: #fff !important;
}


/* —— Pass 20260801ay — force search chrome logo + close visible black —— */
.site-search__logo,
.site-search__logo img.site-logo,
.site-search__logo .site-logo {
  opacity: 1 !important;
  visibility: visible !important;
  filter: none !important;
  -webkit-filter: none !important;
  mix-blend-mode: normal !important;
  display: block !important;
}
.site-search__logo img.site-logo {
  /* ensure black mark on white search bar */
  filter: brightness(0) !important;
}
.site-search__close,
.site-search__close-icon {
  opacity: 1 !important;
  visibility: visible !important;
  color: #000 !important;
  stroke: #000 !important;
}
.site-search__top {
  display: flex !important;
  opacity: 1 !important;
  visibility: visible !important;
  background: #fff !important;
  border-bottom: 1px solid transparent !important;
}


/* —— Pass 20260801az — logo overflow visible in search chrome —— */
.site-search__logo img.site-logo,
.site-search__logo .site-logo {
  overflow: visible !important;
}

/* —— Pass 20260801bf — CTA ref match, search logo revert, cookie X, errors, lines —— */

/* —— Pass 20260801bh — CTAs exact Bottega .c-hometop__cta (px — root is 14px) —— */
a.cta-on-image.uppercase.bg-white,
a.cta-on-image.uppercase.bg-black,
a.cta-on-image.uppercase,
a.cta-on-image.bg-white,
a.cta-on-image,
button.cta-on-image,
.cta-on-image {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: #fff !important;
  background-color: #fff !important;
  color: #000 !important;
  -webkit-text-fill-color: #000 !important;
  border: 1px solid #000 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 8px 25px 5px !important;
  min-height: 40px !important;
  height: 40px !important;
  max-height: 40px !important;
  min-width: 0 !important;
  width: auto !important;
  box-sizing: border-box !important;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  letter-spacing: normal !important;
  --tw-tracking: 0em !important;
  line-height: 1.35 !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  text-align: center !important;
  white-space: nowrap !important;
  transition: background-color 0.15s ease, color 0.15s ease, border-color 0.15s ease !important;
}
a.cta-on-image.uppercase.bg-white:hover,
a.cta-on-image.uppercase.bg-white:focus-visible,
a.cta-on-image:hover,
a.cta-on-image:focus-visible,
button.cta-on-image:hover,
.cta-on-image:hover,
.cta-on-image:focus-visible {
  background: #000 !important;
  background-color: #000 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  border-color: #000 !important;
}

/* CTA pairs — Bottega gap 12px */
.cta-on-image + .cta-on-image,
a.cta-on-image + a.cta-on-image {
  margin-left: 12px !important;
}

/* Newsletter: dim site only — never cover header/promo chrome */
body.newsletter-open .site-newsletter__backdrop,
body.newsletter-open .site-newsletter__backdrop.is-open,
.site-newsletter__backdrop.is-open {
  top: var(--header-bottom, 64px) !important;
  inset: var(--header-bottom, 64px) 0 0 0 !important;
  z-index: 12000 !important;
}
body.newsletter-open .site-newsletter {
  top: var(--header-bottom, 64px) !important;
  height: calc(100dvh - var(--header-bottom, 64px)) !important;
  max-height: calc(100dvh - var(--header-bottom, 64px)) !important;
  z-index: 12050 !important;
}
body.newsletter-open .site-header,
body.newsletter-open header.site-header,
body.newsletter-open .site-promo {
  /* 20260808ea: no force-show */
  pointer-events: none !important;
  z-index: 90 !important;

}

/* Search — revert logo position hacks; natural logo size again */
.site-search__top {
  padding-inline: 1.25rem !important;
}
@media (min-width: 768px) {
  .site-search__top {
    padding-inline: 2.5rem !important;
  }
}
.site-search__logo {
  margin: 0 !important;
  padding: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  line-height: 1.35 !important;
}
.site-search__logo .site-logo,
.site-search__logo img.site-logo,
a.site-search__logo .site-logo {
  height: 23px !important;
  max-height: 23px !important;
  width: auto !important;
  filter: none !important;
  -webkit-filter: none !important;
  display: block !important;
  overflow: visible !important;
}
@media (min-width: 768px) {
  .site-search__logo .site-logo,
  .site-search__logo img.site-logo,
  a.site-search__logo .site-logo {
    height: 25px !important;
    max-height: 25px !important;
  }
}

/* Cookie settings — minimal X + polish */
.cookie-settings__close {
  width: 20px !important;
  height: 20px !important;
  padding: 0 !important;
  margin: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: transparent !important;
  border: 0 !important;
  line-height: 1.35 !important;
  opacity: 0.85 !important;
}
.cookie-settings__close:hover {
  opacity: 1 !important;
  background: transparent !important;
}
.cookie-settings__close svg {
  width: 12px !important;
  height: 12px !important;
  display: block !important;
}
.cookie-settings__header {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding: 1.1rem 1.35rem 0.85rem !important;
  border-bottom: 1px solid #000 !important;
}
.cookie-settings__title {
  margin: 0 !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
}
.cookie-settings {
  width: min(730px, calc(100vw - 2rem)) !important;
  max-width: 730px !important;
  border: 1px solid #000 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
.cookie-settings__body {
  border-top: 0 !important;
}
.cookie-settings__nav {
  border-right: 1px solid #000 !important;
}
.cookie-settings__footer,
.cookie-settings .cookie-settings__actions {
  border-top: 1px solid #000 !important;
  padding: 0.85rem 1.35rem !important;
  gap: 0.65rem !important;
}

/* Errors sitewide — hard red (beat footer subscribe * / > p black) */
.site-footer__subscribe .site-footer__email-error,
.site-footer__subscribe > p.site-footer__email-error,
.site-footer__subscribe p.site-footer__email-error,
.site-footer p.site-footer__email-error,
p.site-footer__email-error,
.site-footer__email-error,
.site-newsletter .site-newsletter__error,
.site-newsletter p.site-newsletter__error,
p.site-newsletter__error,
.site-newsletter__error,
[class*="email-error"],
[class*="form-error"],
.site-newsletter p[role="alert"],
.field-error,
.error-message {
  color: #e10600 !important;
  -webkit-text-fill-color: #e10600 !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/* Interactive underline lines — a bit slower */
:root {
  --link-line-duration: 0.45s !important;
}
.site-nav__link--underline::after,
.site-nav__link::after,
a.site-nav__link--underline::after,
.hover-underline-anim::after,
.site-newsletter__success-link::after,
[class*="underline-anim"]::after,
.cookie-banner__link::after {
  transition-duration: 0.85s !important;
  transition-timing-function: cubic-bezier(0.25, 1, 0.5, 1) !important;
}


/* —— Pass 20260801bh-end — last word Bottega CTA (px) —— */
a.cta-on-image.uppercase.bg-white,
a.cta-on-image.uppercase,
a.cta-on-image,
button.cta-on-image,
.cta-on-image {
  padding: 8px 25px 5px !important;
  min-height: 40px !important;
  height: 40px !important;
  max-height: 40px !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  letter-spacing: normal !important;
  line-height: 1.35 !important;
}
a.cta-on-image.uppercase.bg-white:hover,
a.cta-on-image:hover,
.cta-on-image:hover {
  background: #000 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  border-color: #000 !important;
}


/* —— Pass 20260801bj — search fade revert, NL overlay covers header, cookie no borders —— */

/* SEARCH: appear like before — fade only, no slide, full-screen */
.site-search,
.site-search--open,
.site-search--closed {
  position: fixed !important;
  inset: 0 !important;
  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  height: 100dvh !important;
  z-index: 12000 !important;
  background: #fff !important;
  color: #000 !important;
  display: flex !important;
  flex-direction: column !important;
  transform: none !important;
  filter: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  overflow: hidden !important;
}
.site-search--open {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transition: opacity 0.18s ease, visibility 0s linear 0s !important;
}
.site-search--closed,
.site-search:not(.site-search--open) {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transition: opacity 0.15s ease, visibility 0s linear 0.15s !important;
}
/* Real header hidden under full-screen search (old behavior) */
body.site-search-open .site-header,
body.site-search-open header.site-header,
body.site-search-open .site-promo {
  visibility: hidden !important;
  pointer-events: none !important;
  opacity: 0 !important;
}
body.site-search-open .site-header .site-nav-wrap,
body.site-search-open .site-header .header-utils,
body.site-search-open .site-header > a:first-child,
body.site-search-open .site-header > .site-logo-link,
body.site-search-open .site-header .site-logo {
  opacity: 1 !important;
  visibility: visible !important;
}
.site-search__panel {
  padding: 1rem 1.25rem 1.5rem !important;
  height: 100% !important;
  max-height: 100dvh !important;
  display: flex !important;
  flex-direction: column !important;
  overflow: hidden !important;
}
@media (min-width: 768px) {
  .site-search__panel {
    padding: 1.25rem 2.5rem 2rem !important;
  }
}
.site-search__top {
  height: auto !important;
  min-height: 0 !important;
  margin-bottom: 1.75rem !important;
  padding-inline: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  background: transparent !important;
  border-bottom: none !important;
}
.site-search__logo .site-logo,
.site-search__logo img.site-logo {
  height: 23px !important;
  max-height: 23px !important;
  filter: none !important;
}
@media (min-width: 768px) {
  .site-search__logo .site-logo,
  .site-search__logo img.site-logo {
    height: 25px !important;
    max-height: 25px !important;
  }
}
.site-search__field,
.site-search__body,
.site-search__status,
.site-search__loader {
  padding-inline: 0 !important;
}

/* SUBSCRIBE: full-viewport dim INCLUDING header */
body.newsletter-open .site-newsletter__backdrop,
body.newsletter-open .site-newsletter__backdrop.is-open,
html.newsletter-open body .site-newsletter__backdrop {
  position: fixed !important;
  inset: 0 !important;
  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  height: 100dvh !important;
  background: rgba(0, 0, 0, 0.42) !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  z-index: 12000 !important;
}
body.newsletter-open .site-header,
body.newsletter-open header.site-header,
body.newsletter-open .site-promo {
  z-index: 1 !important;
  pointer-events: none !important;
}
body.newsletter-open .site-newsletter {
  position: fixed !important;
  top: 0 !important;
  right: 0 !important;
  height: 100% !important;
  height: 100dvh !important;
  max-height: 100dvh !important;
  z-index: 12050 !important;
  pointer-events: auto !important;
}

/* COOKIE bar + popup — Bottega/OneTrust: no hard borders, soft shadow */
.cookie-banner,
.cookie-banner.is-in {
  border: 0 !important;
  border-top: 0 !important;
  border-bottom: 0 !important;
  box-shadow: 0 0 18px rgba(0, 0, 0, 0.2) !important;
  background: #fff !important;
}
.cookie-settings-root {
  background: rgba(0, 0, 0, 0.5) !important;
}
.cookie-settings,
.cookie-settings.bg-white {
  border: 0 !important;
  border-radius: 2px !important;
  box-shadow: 0 7px 14px rgba(50, 50, 93, 0.1), 0 2px 4px rgba(0, 0, 0, 0) !important;
}
.cookie-settings__header {
  border-bottom: 0 !important;
  border: 0 !important;
}
.cookie-settings__nav,
.cookie-settings__panel,
.cookie-settings__body,
.cookie-settings__footer,
.cookie-settings .cookie-settings__actions,
.cookie-settings .border-b,
.cookie-settings .border-r,
.cookie-settings .md\:border-r,
.cookie-settings .md\:border-b-0,
.cookie-settings [class*="border-"] {
  border-color: transparent !important;
  border-width: 0 !important;
}
.cookie-settings__nav {
  border-right: 0 !important;
}
.cookie-settings__btn--primary,
.cookie-settings__btn--ghost,
.cookie-settings__btn.cookie-settings__btn--primary,
.cookie-settings__btn.cookie-settings__btn--ghost {
  border: 1px solid #000 !important; /* buttons keep border */
}
.cookie-banner__accept {
  border: 0 !important;
}


/* —— Pass 20260801bk — NL dim MUST paint over header —— */
html.newsletter-open body .site-header,
html.newsletter-open body header.site-header,
html.newsletter-open body .site-promo,
body.newsletter-open .site-header,
body.newsletter-open header.site-header,
body.newsletter-open .site-promo {
  z-index: 1 !important;
  position: relative !important;
  pointer-events: none !important;
}
html.newsletter-open body .site-newsletter__backdrop,
html.newsletter-open body .site-newsletter__backdrop.is-open,
body.newsletter-open .site-newsletter__backdrop,
body.newsletter-open .site-newsletter__backdrop.is-open {
  z-index: 12040 !important;
  inset: 0 !important;
  top: 0 !important;
}
html.newsletter-open body .site-newsletter,
body.newsletter-open .site-newsletter {
  z-index: 12050 !important;
  top: 0 !important;
  height: 100dvh !important;
  max-height: 100dvh !important;
}


/* —— Pass 20260801bl — force dim over header (beat every prior z) —— */
html.newsletter-open body.newsletter-open .site-header,
html.newsletter-open body.newsletter-open header.site-header,
html.newsletter-open body.newsletter-open .site-promo,
html.newsletter-open body .site-header,
html.newsletter-open body header.site-header,
html.newsletter-open body .site-promo,
body.newsletter-open .site-header,
body.newsletter-open header.site-header,
body.newsletter-open .site-promo {
  z-index: 1 !important;
}
html.newsletter-open body.newsletter-open .site-newsletter__backdrop,
html.newsletter-open body .site-newsletter__backdrop,
body.newsletter-open .site-newsletter__backdrop {
  z-index: 2147483000 !important;
  inset: 0 !important;
  top: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  right: 0 !important;
}
html.newsletter-open body.newsletter-open .site-newsletter,
html.newsletter-open body .site-newsletter,
body.newsletter-open .site-newsletter {
  z-index: 2147483001 !important;
  top: 0 !important;
  height: 100dvh !important;
  max-height: 100dvh !important;
}

/* —— Pass 20260801bp — full cookie/search/NL/footer (restored) —— */

/* Cookie: no overlay element */
#cookie-overlay,
.cookie-overlay {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

/* Lock page while cookie pending or settings open — transparent blocker, no dim */
html.cookie-pending,
html.cookie-pending body,
body.cookie-pending,
html.cookie-settings-open,
html.cookie-settings-open body,
body.cookie-settings-open,
html.overflow-hidden,
body.overflow-hidden {
  overflow: hidden !important;
  overscroll-behavior: none !important;
  touch-action: none !important;
}
html.cookie-pending body::before {
  content: "" !important;
  position: fixed !important;
  inset: 0 !important;
  z-index: 12030 !important;
  background: transparent !important;
  pointer-events: auto !important;
}
html.cookie-settings-open .cookie-settings-root {
  background: rgba(0, 0, 0, 0.5) !important;
  z-index: 12070 !important;
}
html.cookie-settings-open .cookie-banner,
html.cookie-settings-open #cookie-banner {
  z-index: 12045 !important;
  pointer-events: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  translate: none !important;
}
html.cookie-pending .cookie-banner,
html.cookie-pending #cookie-banner {
  z-index: 12055 !important;
  pointer-events: auto !important;
}

/* Compact cookie bar + wider copy + links row / accept under */
div.cookie-banner,
#cookie-banner.cookie-banner {
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
  padding: 10px 16px 12px !important;
  border: 0 !important;
  box-shadow: 0 0 18px rgba(0, 0, 0, 0.18) !important;
  background: #fff !important;
}
@media (min-width: 768px) {
  div.cookie-banner,
  #cookie-banner.cookie-banner {
    flex-direction: row !important;
    align-items: flex-end !important;
    justify-content: space-between !important;
    gap: 28px !important;
    padding: 12px 28px 14px !important;
  }
}
div.cookie-banner .cookie-banner__copy,
div.cookie-banner .cookie-banner__copy p,
div.cookie-banner .cookie-banner__copy.text-\[10px\],
div.cookie-banner .cookie-banner__copy.md\:text-\[11px\] {
  flex: 1 1 auto !important;
  max-width: min(56rem, calc(100% - 16rem)) !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
  color: #000 !important;
}
div.cookie-banner .cookie-banner__copy p {
  margin: 0 0 2px !important;
  line-height: 1.35 !important;
}
div.cookie-banner .cookie-banner__actions {
  display: flex !important;
  flex-direction: column !important;
  width: 248px !important;
  min-width: 248px !important;
  max-width: 248px !important;
  flex: 0 0 248px !important;
  gap: 8px !important;
}
div.cookie-banner .cookie-banner__links {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  justify-content: space-between !important;
  align-items: baseline !important;
  width: 100% !important;
  gap: 12px !important;
}
div.cookie-banner button.cookie-banner__link {
  position: relative !important;
  display: inline-block !important;
  text-decoration: none !important;
  color: #000 !important;
  background: transparent !important;
  border: 0 !important;
  padding: 0 0 2px !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  line-height: 1.35 !important;
  white-space: nowrap !important;
  cursor: pointer !important;
}
div.cookie-banner button.cookie-banner__link::after {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 1px !important;
  background: #000 !important;
  transform: scaleX(1) !important;
  transform-origin: left center !important;
  transition: transform 0.85s cubic-bezier(0.25, 1, 0.5, 1) !important;
  pointer-events: none !important;
}
div.cookie-banner button.cookie-banner__link:hover::after,
div.cookie-banner button.cookie-banner__link:focus-visible::after {
  transform: scaleX(0) !important;
  transform-origin: right center !important;
}
div.cookie-banner button.cookie-banner__accept {
  width: 100% !important;
  padding: 8px 12px !important;
  font-size: 10px !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  background: #000 !important;
  color: #fff !important;
  border: 0 !important;
  cursor: pointer !important;
}

/* Cookie settings soft chrome */
.cookie-settings {
  border: 0 !important;
  border-radius: 2px !important;
  box-shadow: 0 7px 14px rgba(50, 50, 93, 0.1) !important;
}
.cookie-settings__header {
  border-bottom: 1px solid #e8e8e8 !important;
}
.cookie-settings__nav {
  border-right: 1px solid #e8e8e8 !important;
}

/* Footer email error red line only */
.site-footer .site-footer__email-field.is-error,
.site-footer form.site-footer__email-field.is-error {
  border-bottom-color: #e10600 !important;
}
.site-footer .site-footer__email-field.is-error .site-footer__email-label,
.site-footer .site-footer__email-field.is-error .site-footer__email-input,
.site-footer .site-footer__email-field.is-error .site-footer__email-submit {
  color: #e10600 !important;
  -webkit-text-fill-color: #e10600 !important;
}
.site-footer .site-footer__email-field.is-error .site-footer__email-arrow {
  stroke: #e10600 !important;
  color: #e10600 !important;
}

/* Search: fade, cover header, no visibility glitch */
.site-search,
.site-search--open,
.site-search--closed {
  position: fixed !important;
  inset: 0 !important;
  top: 0 !important;
  z-index: 13050 !important;
  background: #fff !important;
  transform: none !important;
}
.site-search--open {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transition: opacity 0.2s ease, visibility 0s linear 0s !important;
}
.site-search--closed,
.site-search:not(.site-search--open) {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transition: opacity 0.18s ease, visibility 0s linear 0.18s !important;
}
body.site-search-open .site-header,
body.site-search-open header.site-header,
body.site-search-open .site-promo {
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: none !important;
}

/* Newsletter smooth slide + full dim */
.site-newsletter {
  transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1) !important;
  will-change: transform !important;
}
.site-newsletter__backdrop {
  transition: opacity 0.4s cubic-bezier(0.22, 1, 0.36, 1) !important;
}
body.newsletter-open .site-newsletter__backdrop {
  inset: 0 !important;
  top: 0 !important;
  z-index: 2147483000 !important;
}
body.newsletter-open .site-newsletter {
  top: 0 !important;
  height: 100dvh !important;
  max-height: 100dvh !important;
  z-index: 2147483001 !important;
}
body.newsletter-open .site-header,
body.newsletter-open header.site-header,
body.newsletter-open .site-promo {
  z-index: 1 !important;
  pointer-events: none !important;
}


/* —— Pass 20260801bq — cookie copy size + scroll lock harden —— */
html.cookie-pending,
html.cookie-settings-open {
  overflow: hidden !important;
  height: 100% !important;
}
html.cookie-pending body,
html.cookie-settings-open body,
body.cookie-pending,
body.cookie-settings-open {
  overflow: hidden !important;
  touch-action: none !important;
  overscroll-behavior: none !important;
}
#cookie-banner .cookie-banner__copy,
#cookie-banner .cookie-banner__copy p,
.cookie-banner .cookie-banner__copy,
.cookie-banner .cookie-banner__copy p {
  font-size: 12px !important;
  line-height: 1.35 !important;
}


/* —— Pass 20260801br — drawers over header, cookie/search/CTA/lines/footer —— */

/* ===== Sitewide drawers/sidebars: ALWAYS cover header (never hide it) ===== */
.site-drawer__backdrop,
.site-newsletter__backdrop,
body.newsletter-open .site-newsletter__backdrop,
.site-mega__backdrop {
  position: fixed !important;
  inset: 0 !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  z-index: 13040 !important;
}
.site-drawer,
.site-drawer--filter,
.site-newsletter,
body.newsletter-open .site-newsletter {
  position: fixed !important;
  top: 0 !important;
  right: 0 !important;
  height: 100dvh !important;
  max-height: 100dvh !important;
  z-index: 13050 !important;
}
/* Header always interactive + sticky above dims (mega/newsletter/drawers) */

/* ===== Dropdowns / mega: never clipped ===== */
.site-header,
header.site-header,
.site-nav-wrap,
.site-nav,
.site-main-stack,
#root,
main,
.site-mega,
.site-mega__panel {
  overflow: visible !important;
}
html, body {
  overflow-x: clip;
}

/* ===== Search: plain fade over header — header never toggled ===== */
.site-search,
.site-search--open,
.site-search--closed {
  position: fixed !important;
  inset: 0 !important;
  top: 0 !important;
  z-index: 13050 !important;
  background: #fff !important;
  transform: none !important;
  translate: none !important;
}
.site-search--open {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transition: opacity 0.16s ease !important;
}
.site-search--closed,
.site-search:not(.site-search--open) {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transition: opacity 0.14s ease, visibility 0s linear 0.14s !important;
}
body.site-search-open .site-header,
body.site-search-open header.site-header,
body.site-search-open .site-promo,
body.site-search-open .site-header .site-nav-wrap,
body.site-search-open .site-header .header-utils,
body.site-search-open .site-header > a:first-child,
body.site-search-open .site-header > .site-logo-link,
body.site-search-open .site-header .site-logo {
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: none !important;
  /* stay put under search layer */
  z-index: 10040 !important;
}

/* ===== Cookie bar: 14px type, ≥70% copy width, no header hide ===== */
html.cookie-pending .site-header,
html.cookie-pending header.site-header,
html.cookie-pending .site-promo,
html.cookie-settings-open .site-header,
html.cookie-settings-open header.site-header {
  visibility: visible !important;
  opacity: 1 !important;
}
#cookie-banner .cookie-banner__copy,
#cookie-banner .cookie-banner__copy p,
#cookie-banner .cookie-banner__link,
#cookie-banner .cookie-banner__accept,
.cookie-banner .cookie-banner__copy,
.cookie-banner .cookie-banner__copy p,
.cookie-banner button.cookie-banner__link,
.cookie-banner button.cookie-banner__accept {
  font-size: 14px !important;
  line-height: 1.35 !important;
}
.cookie-banner button.cookie-banner__accept {
  font-size: 12px !important; /* button can stay slightly tighter */
  letter-spacing: 0.08em !important;
}
#cookie-banner .cookie-banner__copy,
.cookie-banner .cookie-banner__copy {
  flex: 1 1 75% !important;
  width: 75% !important;
  max-width: 75% !important;
  min-width: 75% !important;
}
@media (max-width: 767px) {
  #cookie-banner .cookie-banner__copy,
  .cookie-banner .cookie-banner__copy {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    flex: 1 1 auto !important;
  }
}
#cookie-banner .cookie-banner__actions,
.cookie-banner .cookie-banner__actions {
  flex: 0 0 auto !important;
  width: auto !important;
  min-width: 15rem !important;
  max-width: 28% !important;
}

/* ===== Footer error: RED LINE ONLY ===== */
.site-footer .site-footer__email-field.is-error {
  border-bottom-color: #e10600 !important;
}
.site-footer .site-footer__email-field.is-error .site-footer__email-label,
.site-footer .site-footer__email-field.is-error .site-footer__email-input,
.site-footer .site-footer__email-field.is-error .site-footer__email-submit,
.site-footer .site-footer__email-field.is-error .site-footer__email-arrow,
.site-footer .site-footer__email-field.is-error svg {
  color: #000 !important;
  -webkit-text-fill-color: #000 !important;
  stroke: #000 !important;
}

/* ===== CTAs Bottega metrics — include collection page white border buttons ===== */
a.cta-on-image,
button.cta-on-image,
.cta-on-image,
a.cta-on-image.uppercase.bg-white,
a.relative.z-10.bg-white.text-black.border.border-black {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: #fff !important;
  color: #000 !important;
  border: 1px solid #000 !important;
  border-radius: 0 !important;
  padding: 8px 25px 5px !important;
  min-height: 40px !important;
  height: 40px !important;
  max-height: 40px !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  letter-spacing: normal !important;
  --tw-tracking: 0em !important;
  line-height: 1.35 !important;
  text-transform: uppercase !important;
  box-sizing: border-box !important;
  white-space: nowrap !important;
}
a.cta-on-image:hover,
.cta-on-image:hover,
a.relative.z-10.bg-white.text-black.border.border-black:hover {
  background: #000 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

/* ===== Interactive lines: never thin after anim (1px locked, scaleX only) ===== */
.site-nav__link--underline::after,
.site-nav__link::after,
a.site-nav__link--underline::after,
.hover-underline-anim::after,
.hover-underline-swap::after,
.site-newsletter__success-link::after,
.cookie-banner__link::after,
div.cookie-banner button.cookie-banner__link::after,
[class*="underline-anim"]::after {
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  border: 0 !important;
  box-shadow: none !important;
  background-color: currentColor !important;
  /* prevent Y scale from Tailwind scale utilities */
  --tw-scale-y: 1 !important;
  scale: var(--tw-scale-x, 1) 1 !important;
}


/* —— Pass 20260801bs — filter panel z + cookie copy 75% —— */
.site-drawer--filter,
.site-drawer.site-drawer--filter {
  z-index: 13050 !important;
}
.site-drawer__backdrop {
  z-index: 13040 !important;
}


/* —— Pass 20260801bt — beat high-specificity filter z + copy 75% —— */
div.site-drawer.site-drawer--filter.fixed.top-0.right-0,
div.site-drawer--filter.fixed,
.site-drawer.site-drawer--filter {
  z-index: 13050 !important;
}
div.site-drawer__backdrop.fixed.inset-0,
.site-drawer__backdrop {
  z-index: 13040 !important;
}
#cookie-banner .cookie-banner__copy,
.cookie-banner .cookie-banner__copy {
  flex: 1 1 75% !important;
  width: 75% !important;
  max-width: 75% !important;
  min-width: 75% !important;
}
.cookie-banner .cookie-banner__actions {
  max-width: 25% !important;
  min-width: 14rem !important;
}
/* —— Pass 20260801bx — match Bottega search logic (https://www.bottegaveneta.com/en-en) ——
   Search = fixed full-viewport popin (inset:0) with its OWN logo + close.
   Real header stays opacity/visibility untouched underneath — covered, never toggled.
   No "panel under sticky header". No hiding .site-search__logo.
*/

/* Full-viewport search popin — Bottega .c-popin--topsearch */
html body .site-search,
html body .site-search.site-search--open,
html body .site-search.site-search--closed {
  position: fixed !important;
  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  height: 100dvh !important;
  z-index: 12000 !important;
  background: #fff !important;
  transform: none !important;
  translate: none !important;
}
html body .site-search--open {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
}
html body .site-search--closed,
html body .site-search:not(.site-search--open) {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

/* Bottega: header is NOT hidden on search — overlay covers it. Kill hide + force-show fights. */
html body.site-search-open .site-header,
html body.site-search-open header.site-header,
html body.site-search-open .site-promo {
  /* leave visual state alone — covered by search layer */
  opacity: 1 !important;
  visibility: visible !important;
  /* but do not steal clicks from search */
  pointer-events: none !important;
}

/* Restore search chrome logo (Bottega c-popin__head has logo) */
html body .site-search__logo {
  display: block !important;
  visibility: visible !important;
  width: auto !important;
  height: auto !important;
  overflow: visible !important;
  pointer-events: auto !important;
}
html body .site-search__top {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 0 1.75rem !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}
html body .site-search__logo .site-logo,
html body .site-search__logo img.site-logo {
  display: block !important;
  height: 23px !important;
  max-height: 23px !important;
  width: auto !important;
  filter: none !important;
}
@media (min-width: 768px) {
  html body .site-search__logo .site-logo,
  html body .site-search__logo img.site-logo {
    height: 25px !important;
    max-height: 25px !important;
  }
}
html body .site-search__panel {
  height: 100% !important;
  max-height: 100dvh !important;
  padding: 1rem 1.25rem 1.5rem !important;
}
@media (min-width: 768px) {
  html body .site-search__panel {
    padding: 1.25rem 2.5rem 2rem !important;
  }
}

/* Mega: header stays interactive (Bottega) — keep pointer-events */
html body.mega-open .site-header,
html body.mega-open header.site-header {
  pointer-events: auto !important;
  opacity: 1 !important;
  visibility: visible !important;
  z-index: 14000 !important;
}
/* —— Pass 20260801by — cookie only (mobile stack + desktop row) —— */
#cookie-banner.cookie-banner,
html body #cookie-banner {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: 0.65rem !important;
  padding: 0.75rem 1rem 0.85rem !important;
  width: 100% !important;
  max-width: 100vw !important;
  box-sizing: border-box !important;
  border: 0 !important;
  box-shadow: 0 -4px 24px rgba(0,0,0,0.12) !important;
}
#cookie-banner .cookie-banner__copy {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  flex: 1 1 auto !important;
  font-size: 11px !important;
  line-height: 1.35 !important;
}
#cookie-banner .cookie-banner__actions {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  flex: 0 0 auto !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 0.5rem !important;
}
#cookie-banner .cookie-banner__links {
  width: 100% !important;
  justify-content: space-between !important;
  flex-wrap: wrap !important;
  gap: 0.45rem 1rem !important;
}
#cookie-banner button.cookie-banner__link {
  font-size: 11px !important;
  white-space: normal !important;
}
#cookie-banner button.cookie-banner__accept {
  width: 100% !important;
  font-size: 11px !important;
  padding: 0.7rem 0.75rem !important;
}
@media (min-width: 768px) {
  #cookie-banner.cookie-banner,
  html body #cookie-banner {
    flex-direction: row !important;
    align-items: flex-end !important;
    gap: 2rem !important;
    padding: 1rem 2rem 1.15rem !important;
  }
  #cookie-banner .cookie-banner__copy {
    width: 70% !important;
    max-width: 72% !important;
    font-size: 14px !important;
    line-height: 1.35 !important;
  }
  #cookie-banner .cookie-banner__actions {
    width: auto !important;
    min-width: 16rem !important;
    max-width: 26% !important;
  }
  #cookie-banner .cookie-banner__links {
    justify-content: flex-end !important;
    flex-wrap: nowrap !important;
  }
  #cookie-banner button.cookie-banner__link {
    font-size: 14px !important;
    white-space: nowrap !important;
  }
  #cookie-banner button.cookie-banner__accept {
    font-size: 12px !important;
    padding: 0.75rem 1rem !important;
  }
}
/* —— Pass 20260801bz — header above drawers; soft cookie scroll; equal mobile gutters —— */

:root {
  --page-gutter: 16px;
}

/* Soften cookie banner scroll — no hard lock (settings modal still locks via JS) */
html.cookie-pending,
html.cookie-pending body,
body.cookie-pending {
  overflow: visible !important;
  overflow-x: clip !important;
  height: auto !important;
  touch-action: auto !important;
  overscroll-behavior: auto !important;
  position: static !important;
  top: auto !important;
  width: auto !important;
}
html.cookie-settings-open,
html.cookie-settings-open body,
body.cookie-settings-open {
  overflow: hidden !important;
}

/* Newsletter / filter: keep scroll lock but don't kill touch scrolling feel */
html.newsletter-open,
html.newsletter-open body,
body.newsletter-open {
  touch-action: auto !important;
}
body.site-search-open {
  touch-action: pan-y !important;
}

/* HEADER above sidebar/newsletter dims — never buried at z:1.
   Search popin still covers header (higher z below). */
html.newsletter-open body.newsletter-open .site-header,
html.newsletter-open body.newsletter-open header.site-header,
html.newsletter-open body.newsletter-open .site-promo,
html body.newsletter-open .site-header,
html body.newsletter-open header.site-header,
html body.newsletter-open .site-promo,
html.newsletter-open body .site-header,
html.newsletter-open body header.site-header,
html body.mega-open .site-header,
html body.mega-open header.site-header,
html body.mega-open .site-promo {
  pointer-events: none !important;
  z-index: 90 !important;
}
/* Filter drawer open: keep header above dim */
html body:has(.site-drawer--filter.translate-x-0) .site-header,
html body:has(.site-drawer__backdrop.is-open) .site-header,
html body:has(.site-drawer__backdrop.is-open) header.site-header {
  z-index: 14000 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  background: #fff !important;
}
html body .site-search,
html body .site-search.site-search--open {
  z-index: 15000 !important;
}

/* Dim + drawers start BELOW sticky header so chrome stays readable */
html.newsletter-open body.newsletter-open .site-newsletter__backdrop,
html.newsletter-open body .site-newsletter__backdrop,
html body.newsletter-open .site-newsletter__backdrop,
html body .site-newsletter__backdrop.is-open,
html body .site-drawer__backdrop,
html body .site-drawer__backdrop.is-open,
html body.mega-open .site-mega__backdrop,
html body .site-mega__backdrop.is-open {
  position: fixed !important;
  top: var(--header-bottom, 64px) !important;
  right: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: auto !important;
  z-index: 13040 !important;
}
html.newsletter-open body.newsletter-open .site-newsletter,
html.newsletter-open body .site-newsletter,
html body.newsletter-open .site-newsletter,
html body .site-drawer--filter,
html body .site-drawer {
  top: var(--header-bottom, 64px) !important;
  height: calc(100dvh - var(--header-bottom, 64px)) !important;
  max-height: calc(100dvh - var(--header-bottom, 64px)) !important;
  z-index: 13055 !important;
}

/* COOKIE copy full width on mobile */
@media (max-width: 767px) {
  #cookie-banner.cookie-banner,
  html body #cookie-banner {
    flex-direction: column !important;
    align-items: stretch !important;
    padding: 0.75rem var(--page-gutter) 0.85rem !important;
  }
  #cookie-banner .cookie-banner__copy,
  #cookie-banner .cookie-banner__copy p {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    flex: 1 1 auto !important;
    font-size: 11px !important;
    line-height: 1.35 !important;
  }
  #cookie-banner .cookie-banner__actions {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }
  #cookie-banner button.cookie-banner__accept {
    width: 100% !important;
  }

  /* Equal outer gutter — Bottega-style shared edge */
  .site-header,
  header.site-header {
    padding-inline: var(--page-gutter) !important;
  }
  .site-discover__title,
  .page-404__discover-title,
  .site-discover__grid,
  .page-404__grid,
  .site-home-cards,
  .site-footer__top,
  .site-footer__links,
  .site-footer__copyright,
  .site-footer__locale,
  .site-footer__mobile,
  .site-main-stack > section > .px-4,
  .site-main-stack .px-4,
  .page-404 .px-4,
  main .px-4,
  .site-section,
  .site-section__inner,
  .site-sustain,
  .site-careers,
  .site-services {
    padding-inline: var(--page-gutter) !important;
  }
  /* Tailwind padding utilities → same gutter on mobile */
  .px-2,
  .px-3,
  .px-4,
  .px-5,
  .px-6,
  .px-8 {
    padding-inline: var(--page-gutter) !important;
  }
  /* Prevent double gutters when padded section wraps another padded block */
  main section[class*="px-"] > [class*="px-"],
  main section[class*="px-"] > .max-w-xl,
  main section[class*="px-"] > .max-w-2xl,
  main section[class*="px-"] > .max-w-3xl,
  main section[class*="px-"] > .mx-auto {
    padding-inline: 0 !important;
  }
  /* Content columns that use asymmetric padding */
  .site-main-stack section .md\:px-8,
  .site-main-stack .md\:p-8,
  .site-main-stack .p-4,
  .site-main-stack .p-6,
  .site-main-stack .p-8 {
    padding-left: var(--page-gutter) !important;
    padding-right: var(--page-gutter) !important;
  }
  /* Images/grids that sat at 0 or 8px — pull to gutter when section-padded */
  .site-discover__media,
  .site-home-card,
  .page-404__card {
    /* cards themselves fill the padded grid — no extra inset */
    margin-inline: 0;
  }
}
/* —— Pass 20260801cb — header visible UNDER overlay; mega below announcement —— */

/* Sidebars / popups: header stays visible but UNDER the dim (overlay covers it) */
html.newsletter-open body.newsletter-open .site-header,
html.newsletter-open body.newsletter-open header.site-header,
html.newsletter-open body .site-header,
html.newsletter-open body header.site-header,
html body.newsletter-open .site-header,
html body.newsletter-open header.site-header,
html body:has(.site-drawer__backdrop.is-open) .site-header,
html body:has(.site-drawer__backdrop.is-open) header.site-header,
html body:has(.site-drawer--filter.translate-x-0) .site-header,
html body:has(.site-drawer--filter.translate-x-0) header.site-header {
  pointer-events: none !important;
  z-index: 90 !important;
}
/* Drawers may pin promo; newsletter must NOT — pinning snaps announcement onto header when it was scrolled away */
html body:has(.site-drawer__backdrop.is-open) .site-promo {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  z-index: 11990 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: none !important;
}
html.newsletter-open body.newsletter-open:not(.overlay-promo-was-off) .site-promo,
html body.newsletter-open:not(.overlay-promo-was-off) .site-promo {
  position: relative !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  width: 100% !important;
  z-index: 80 !important;
  pointer-events: none !important;
}
html.newsletter-open.overlay-promo-was-off body.newsletter-open .site-promo,
html.newsletter-open body.newsletter-open.overlay-promo-was-off .site-promo,
html.overlay-promo-was-off body.newsletter-open .site-promo,
html body.newsletter-open.overlay-promo-was-off .site-promo {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  z-index: 0 !important;
}

/* Full-viewport dim — COVERS header + promo */
html.newsletter-open body.newsletter-open .site-newsletter__backdrop,
html.newsletter-open body .site-newsletter__backdrop,
html body.newsletter-open .site-newsletter__backdrop,
html body .site-newsletter__backdrop.is-open,
html body .site-drawer__backdrop,
html body .site-drawer__backdrop.is-open {
  position: fixed !important;
  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  height: 100dvh !important;
  z-index: 13040 !important;
}
/* Drawer/panel above dim (may cover header strip on the right — expected) */
html.newsletter-open body.newsletter-open .site-newsletter,
html.newsletter-open body .site-newsletter,
html body.newsletter-open .site-newsletter,
html body .site-drawer--filter,
html body .site-drawer {
  top: 0 !important;
  height: 100dvh !important;
  max-height: 100dvh !important;
  z-index: 13055 !important;
}

/* MEGA: never cover announcement / promo bar */
html body.mega-open .site-promo,
html body.mega-promo-visible .site-promo,
html body.mega-open .site-promo__label {
  position: relative !important;
  z-index: 14050 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
}
html body.mega-open .site-header,
html body.mega-open header.site-header {
  z-index: 14040 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
}
html body .site-mega.site-mega--open,
html body.mega-open .site-mega {
  top: var(--header-bottom, 96px) !important;
  z-index: 13020 !important;
}
html body.mega-open .site-mega__backdrop,
html body .site-mega__backdrop.is-open {
  top: var(--header-bottom, 96px) !important;
  right: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  z-index: 13010 !important;
}
/* Kill hide-on-scroll translate while any overlay/drawer is open */
html body:has(.site-drawer__backdrop.is-open) .site-header,
html body:has(.site-drawer__backdrop.is-open) header.site-header,
html body.newsletter-open .site-header,
html body.newsletter-open header.site-header,
html.newsletter-open body .site-header,
html body.mega-open .site-header,
html body.mega-open header.site-header,
html body.site-search-open .site-header {
  pointer-events: none !important;
  z-index: 90 !important;
}
/* —— Pass 20260801cc — cookie dim like subscribe; all drawers; mega covers announcement —— */

/* COOKIE: same logic as subscribe — header visible UNDER dim */
html.cookie-pending .site-header,
html.cookie-pending header.site-header,
html.cookie-pending .site-promo,
html.cookie-settings-open .site-header,
html.cookie-settings-open header.site-header,
html.cookie-settings-open .site-promo,
html body.cookie-pending .site-header,
html body.cookie-settings-open .site-header {
  position: sticky !important;
  top: 0 !important;
  z-index: 12000 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: none !important;
  translate: none !important;
  transform: none !important;
  --tw-translate-y: 0 !important;
  background: #fff !important;
}

/* Re-enable cookie overlay + real dim covering header */
html.cookie-pending #cookie-overlay,
html.cookie-pending .cookie-overlay,
html body.cookie-pending #cookie-overlay,
html body.cookie-pending .cookie-overlay {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  position: fixed !important;
  inset: 0 !important;
  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  height: 100dvh !important;
  background: rgba(0, 0, 0, 0.42) !important;
  z-index: 13040 !important;
}
html.cookie-pending body::before {
  content: "" !important;
  position: fixed !important;
  inset: 0 !important;
  z-index: 13040 !important;
  background: rgba(0, 0, 0, 0.42) !important;
  pointer-events: auto !important;
}
html.cookie-pending #cookie-banner,
html.cookie-pending .cookie-banner,
html body.cookie-pending #cookie-banner {
  z-index: 13055 !important;
  pointer-events: auto !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/* Cookie settings modal above everything */
html.cookie-settings-open .cookie-settings-root,
html body.cookie-settings-open .cookie-settings-root {
  background: rgba(0, 0, 0, 0.42) !important;
  z-index: 13070 !important;
}
html.cookie-settings-open #cookie-banner,
html.cookie-settings-open .cookie-banner {
  z-index: 13050 !important;
  pointer-events: none !important;
}

/* ALL drawers: pin header under overlay ONLY when it was visible.
   Never force a scroll-hidden header back on screen. */
html.site-drawer-open .site-header:not(.is-header-off),
html.site-drawer-open header.site-header:not(.is-header-off),
html body.site-drawer-open .site-header:not(.is-header-off),
html body.site-drawer-open header.site-header:not(.is-header-off),
html body:has(.site-drawer__backdrop.is-open) .site-header:not(.is-header-off),
html body:has(.site-drawer__backdrop.is-open) header.site-header:not(.is-header-off) {
  /* 20260808eg: do NOT force fixed — sticky→fixed jumps; freeze keeps position */
  z-index: 90 !important;
  pointer-events: none !important;
}
/* 20260808ed: do NOT pin header fixed via generic .fixed.inset-0:has —
   newsletter backdrop matches that and sticky→fixed jumps the page */
html.site-drawer-open .site-header.is-header-off,
html.site-drawer-open header.site-header.is-header-off,
html body.site-drawer-open .site-header.is-header-off,
html body.site-drawer-open header.site-header.is-header-off,
html body.overlay-header-was-hidden .site-header,
html body.overlay-header-was-hidden header.site-header,
html.overlay-header-was-hidden body .site-header,
html body:has(.site-drawer__backdrop.is-open) .site-header.is-header-off {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  z-index: 90 !important;
  pointer-events: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transform: translate3d(0, -120%, 0) !important;
  translate: 0 -120% !important;
  --tw-translate-y: -120% !important;
  background: transparent !important;
}
html.site-drawer-open .site-drawer__backdrop,
html body.site-drawer-open .site-drawer__backdrop,
html body .site-drawer__backdrop.is-open,
html body .fixed.inset-0.bg-black\/40.opacity-100,
html body .fixed.inset-0.bg-black\/42.opacity-100 {
  z-index: 13040 !important;
  top: 0 !important;
  inset: 0 !important;
}
html.site-drawer-open .site-drawer,
html body.site-drawer-open .site-drawer,
html body .site-drawer.translate-x-0,
html body .fixed.top-0.right-0.translate-x-0 {
  /* 20260808dz: do not pin open drawers under dim — overrides own z */
  z-index: 20000 !important;
}

/* MEGA: COVER announcement bar (from top); header stays above mega */
html body.mega-open .site-promo,
html body.mega-promo-visible .site-promo {
  z-index: 12000 !important;
  position: relative !important;
}
html body.mega-open .site-header,
html body.mega-open header.site-header {
  z-index: 14040 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  translate: none !important;
  transform: none !important;
}
html body .site-mega.site-mega--open,
html body.mega-open .site-mega {
  top: 0 !important;
  z-index: 13020 !important;
}
html body.mega-open .site-mega__backdrop,
html body .site-mega__backdrop.is-open {
  top: 0 !important;
  inset: 0 !important;
  z-index: 13010 !important;
}
/* —— Pass 20260801cd — cookie-dim element + harden header under all overlays —— */
html.cookie-pending .cookie-dim,
html body.cookie-pending .cookie-dim,
.cookie-dim {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  position: fixed !important;
  inset: 0 !important;
  z-index: 13040 !important;
  background: rgba(0, 0, 0, 0.42) !important;
  pointer-events: auto !important;
}
html.cookie-pending .site-header,
html.cookie-pending header.site-header,
html.cookie-pending .site-promo,
html body.cookie-pending .site-header,
html body.cookie-pending header.site-header {
  z-index: 12000 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: none !important;
  translate: none !important;
  transform: none !important;
  --tw-translate-y: 0 !important;
}
html.cookie-pending #cookie-banner,
html.cookie-pending .cookie-banner,
html body.cookie-pending #cookie-banner {
  z-index: 13055 !important;
  pointer-events: auto !important;
}


/* —— Pass 20260801cf — mobile footer type/gutter/no-dividers + cookie settings mobile —— */

@media (max-width: 767px) {
  /* Footer: ≤15px side padding, no double gutter */
  .site-footer__mobile {
    padding-inline: 15px !important;
    gap: 1.35rem !important;
    font-family: var(--font-sans) !important;
    letter-spacing: var(--ls-body) !important;
    font-size: 12px !important;
    line-height: var(--lh, 1.35) !important;
    color: #000 !important;
  }
  .site-footer__mobile > .px-4,
  .site-footer__mobile .px-4,
  .site-footer__mobile .accordion-btn,
  .site-footer__mobile ul.flex,
  .site-footer__mobile .site-footer__copyright--mobile {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  .site-footer__copyright--mobile {
    padding-top: 0.85rem !important;
    padding-bottom: 0 !important;
    margin-top: 0 !important;
  }

  /* Remove mobile footer dividers / borderlines (keep email underline only) */
  .site-footer__mobile .border-t,
  .site-footer__mobile .border-b,
  .site-footer__mobile .border-black,
  .site-footer__mobile [class*="border-t"],
  .site-footer__mobile [class*="border-b"],
  .site-footer__copyright--mobile {
    border: 0 !important;
    border-top: 0 !important;
    border-bottom: 0 !important;
    border-color: transparent !important;
  }
  .site-footer__mobile .site-footer__email-field,
  .site-footer__mobile form.site-footer__email-field,
  .site-footer__mobile .relative.border-b {
    border: 0 !important;
    border-bottom: 1px solid #000 !important;
    border-top: 0 !important;
  }

  /* Our type system — kill wide tracking on mobile footer */
  .site-footer__mobile,
  .site-footer__mobile h4,
  .site-footer__mobile p,
  .site-footer__mobile a,
  .site-footer__mobile li,
  .site-footer__mobile button,
  .site-footer__mobile label,
  .site-footer__mobile input,
  .site-footer__mobile .accordion-btn,
  .site-footer__mobile .site-footer__title {
    font-family: var(--font-sans) !important;
    letter-spacing: -0.20px !important;
    line-height: var(--lh, 1.35) !important;
    color: #000 !important;
  }
  .site-footer__mobile h4,
  .site-footer__mobile .accordion-btn {
    font-size: 12px !important;
    font-weight: 500 !important;
    text-transform: uppercase !important;
    letter-spacing: -0.20px !important;
    margin-bottom: 0.65rem !important;
  }
  .site-footer__mobile .accordion-btn {
    margin-bottom: 0 !important;
    padding-top: 0.85rem !important;
    padding-bottom: 0.85rem !important;
  }
  .site-footer__mobile p,
  .site-footer__mobile a,
  .site-footer__mobile li,
  .site-footer__mobile .site-footer__email-input,
  .site-footer__mobile .site-footer__email-label {
    font-size: 12px !important;
    font-weight: 400 !important;
    text-transform: none !important;
  }
  .site-footer__mobile .site-footer__email-label.is-active {
    text-transform: uppercase !important;
    font-size: 12px !important;
    letter-spacing: -0.20px !important;
  }
  .site-footer__mobile .site-footer__copyright--mobile {
    font-size: 11px !important;
    font-weight: 400 !important;
    letter-spacing: -0.20px !important;
    text-align: left !important;
  }
  .site-footer__mobile .pt-4.flex.flex-col {
    padding-top: 0.35rem !important;
    gap: 0.35rem !important;
  }

  /* Cookie settings — full-bleed mobile preference centre */
  .cookie-settings-root {
    padding: 0 !important;
    align-items: stretch !important;
    justify-content: stretch !important;
    background: #fff !important;
  }
  .cookie-settings,
  .cookie-settings.bg-white {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: 100% !important;
    height: 100dvh !important;
    max-height: 100dvh !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    display: flex !important;
    flex-direction: column !important;
  }
  .cookie-settings__header {
    padding: 1rem 15px 0.85rem !important;
    border-bottom: 1px solid #000 !important;
    flex-shrink: 0 !important;
  }
  .cookie-settings__title {
    font-family: var(--font-sans) !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    letter-spacing: -0.20px !important;
    text-transform: uppercase !important;
    color: #000 !important;
  }
  /* Hide duplicate mobile title block (header already has title) */
  .cookie-settings > .px-6.pb-4.md\:hidden {
    display: none !important;
  }
  .cookie-settings__body {
    flex-direction: column !important;
    flex: 1 1 auto !important;
    min-height: 0 !important;
    overflow: hidden !important;
    border-top: 0 !important;
  }
  .cookie-settings__nav {
    width: 100% !important;
    max-width: none !important;
    border-right: 0 !important;
    border-bottom: 0 !important;
    overflow-y: auto !important;
    flex: 1 1 auto !important;
    padding: 0 !important;
  }
  .cookie-settings__nav ul,
  .cookie-settings__nav > ul {
    padding-left: 15px !important;
    padding-right: 15px !important;
    padding-top: 0.25rem !important;
    padding-bottom: 0.5rem !important;
  }
  .cookie-settings__nav .tab-button,
  .cookie-settings__nav button.tab-button {
    padding: 0.9rem 0 !important;
    font-family: var(--font-sans) !important;
    font-size: 12px !important;
    font-weight: 400 !important;
    letter-spacing: -0.20px !important;
    color: #000 !important;
  }
  .cookie-settings__mobile-toggle {
    display: inline-block !important;
    font-size: 1.15rem !important;
    font-weight: 300 !important;
    line-height: 1.35 !important;
    color: #000 !important;
  }
  /* Show accordion content that was wrongly killed by .md\:hidden { display:none } */
  .cookie-settings .mobile-content,
  .cookie-settings .mobile-content.md\:hidden,
  .cookie-settings__nav .mobile-content {
    display: block !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    padding-bottom: 1rem !important;
    border: 0 !important;
    border-bottom: 0 !important;
  }
  .cookie-settings .mobile-content p,
  .cookie-settings .mobile-content .text-\[13px\] {
    font-family: var(--font-sans) !important;
    font-size: 12px !important;
    letter-spacing: -0.20px !important;
    line-height: 1.35 !important;
    color: #000 !important;
  }
  /* Desktop panel stays hidden on mobile */
  .cookie-settings__panel.hidden,
  .cookie-settings__panel {
    display: none !important;
  }
  .cookie-settings__nav li {
    border-bottom: 1px solid #e8e8e8 !important;
  }
  .cookie-settings__nav li:last-child {
    border-bottom: 0 !important;
  }
  .cookie-settings__footer {
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 0.55rem !important;
    padding: 0.85rem 15px calc(0.85rem + env(safe-area-inset-bottom, 0px)) !important;
    border-top: 1px solid #000 !important;
    flex-shrink: 0 !important;
  }
  .cookie-settings__footer-actions {
    width: 100% !important;
    flex-direction: column !important;
    gap: 0.55rem !important;
  }
  .cookie-settings__footer-actions .cookie-settings__btn,
  .cookie-settings__footer > .cookie-settings__btn,
  .cookie-settings__btn {
    width: 100% !important;
    min-height: 2.75rem !important;
    font-family: var(--font-sans) !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    letter-spacing: -0.20px !important;
    text-transform: none !important;
  }
  .cookie-settings__always-active {
    font-family: var(--font-sans) !important;
    font-size: 11px !important;
    letter-spacing: -0.20px !important;
  }
  .cookie-settings__close {
    width: 2rem !important;
    height: 2rem !important;
  }
}

/* Desktop cookie settings keep side padding / dialog sizing */
@media (min-width: 768px) {
  .cookie-settings-root {
    padding: 1.25rem !important;
    background: rgba(0, 0, 0, 0.45) !important;
  }
  .cookie-settings .mobile-content {
    display: none !important;
  }
  .cookie-settings__mobile-toggle {
    display: none !important;
  }
}


/* —— Pass 20260801cg — sidebar slide-out: transform only (no translate snap) —— */
.site-newsletter,
.site-drawer,
.site-drawer--filter,
.site-drawer--product,
.site-drawer--sheet,
div.site-newsletter,
html body .site-newsletter,
html body .site-drawer,
html body .site-drawer--filter,
html body .site-drawer--product,
html body .site-drawer--sheet {
  transition:
    transform 0.4s cubic-bezier(0.22, 1, 0.36, 1) !important;
  will-change: transform !important;
}
.site-newsletter.translate-x-0,
.site-drawer.translate-x-0,
.site-drawer--filter.translate-x-0,
html body .site-newsletter.translate-x-0,
html body .site-drawer.translate-x-0,
html body .fixed.top-0.right-0.translate-x-0 {
  --tw-translate-x: 0px !important;
  translate: none !important;
  transform: translate3d(0, 0, 0) !important;
}
.site-newsletter.translate-x-full,
.site-drawer.translate-x-full,
.site-drawer--filter.translate-x-full,
html body .site-newsletter.translate-x-full,
html body .site-drawer.translate-x-full,
html body .fixed.top-0.right-0.translate-x-full {
  --tw-translate-x: 0px !important;
  translate: none !important;
  transform: translate3d(100%, 0, 0) !important;
}
.site-newsletter__backdrop,
.site-drawer__backdrop {
  transition: opacity 0.4s cubic-bezier(0.22, 1, 0.36, 1) !important;
}
html.newsletter-open .site-newsletter.translate-x-full,
html body.newsletter-open .site-newsletter.translate-x-full,
html.site-drawer-open .site-drawer.translate-x-full,
html body.site-drawer-open .site-drawer.translate-x-full {
  pointer-events: none !important;
}

/* —— Pass 20260801ch — mobile equal 15px gutters, full-screen cookie, 2 btns row —— */
:root {
  --page-gutter: 15px;
}

@media (max-width: 767px) {
  :root {
    --page-gutter: 14px;
  }

  /* Equal outer padding sitewide */
  .site-header,
  header.site-header,
  .site-promo,
  .site-discover__title,
  .page-404__discover-title,
  .site-discover__grid,
  .page-404__grid,
  .site-home-cards,
  .site-footer__top,
  .site-footer__links,
  .site-footer__copyright,
  .site-footer__locale,
  .site-footer__mobile,
  .site-main-stack > section,
  .site-main-stack .px-4,
  .site-main-stack .px-6,
  .site-main-stack .px-8,
  main .px-4,
  main .px-6,
  main .px-8,
  .px-2, .px-3, .px-4, .px-5, .px-6, .px-8,
  .site-section,
  .site-section__inner,
  .site-sustain,
  .site-careers,
  .site-services,
  #cookie-banner.cookie-banner,
  html body #cookie-banner {
    padding-left: var(--page-gutter) !important;
    padding-right: var(--page-gutter) !important;
  }
  .site-promo {
    padding-top: 0.65rem !important;
    padding-bottom: 0.65rem !important;
  }
  /* Prevent double gutters */
  .site-footer__mobile .px-4,
  .site-footer__mobile .accordion-btn,
  .site-footer__mobile ul.flex,
  main section[class*="px-"] > [class*="px-"] {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  /* Cookie settings — true full screen */
  .cookie-settings-root {
    position: fixed !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    height: 100dvh !important;
    max-height: 100dvh !important;
    padding: 0 !important;
    margin: 0 !important;
    align-items: stretch !important;
    justify-content: stretch !important;
    background: #fff !important;
    z-index: 2147483000 !important;
  }
  .cookie-settings,
  .cookie-settings.bg-white {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: 100% !important;
    height: 100dvh !important;
    max-height: 100dvh !important;
    min-height: 100dvh !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
  }
  .cookie-settings__header {
    padding: 0.85rem var(--page-gutter) 0.65rem !important;
    border-bottom: 0 !important;
  }
  .cookie-settings__title {
    font-size: 11px !important;
    font-weight: 500 !important;
    letter-spacing: -0.20px !important;
    text-transform: uppercase !important;
  }
  /* Bottega-style large mobile title */
  .cookie-settings > .px-6.pb-4.md\:hidden {
    display: block !important;
    padding: 0.15rem var(--page-gutter) 1rem !important;
  }
  .cookie-settings > .px-6.pb-4.md\:hidden h1 {
    margin: 0 !important;
    font-family: var(--font-sans) !important;
    font-size: 22px !important;
    font-weight: 500 !important;
    letter-spacing: -0.20px !important;
    line-height: 1.35 !important;
    text-transform: uppercase !important;
    color: #000 !important;
  }
  .cookie-settings__nav ul,
  .cookie-settings__nav > ul {
    padding-left: var(--page-gutter) !important;
    padding-right: var(--page-gutter) !important;
  }
  .cookie-settings__nav .tab-button,
  .cookie-settings__nav button.tab-button {
    font-size: 12px !important;
    font-weight: 500 !important;
    letter-spacing: -0.20px !important;
    text-transform: uppercase !important;
  }
  .cookie-settings__nav .tab-button .underline,
  .cookie-settings__nav .tab-button span {
    text-transform: uppercase !important;
  }

  /* 2 buttons on one row: Reject All | Confirm My Choices */
  .cookie-settings__footer {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    grid-template-rows: auto !important;
    align-items: stretch !important;
    gap: 0.5rem !important;
    padding: 0.75rem var(--page-gutter) calc(0.75rem + env(safe-area-inset-bottom, 0px)) !important;
    border-top: 0 !important;
  }
  .cookie-settings__footer-actions {
    display: contents !important;
  }
  .cookie-settings__footer > .cookie-settings__btn--primary,
  .cookie-settings__footer > button.cookie-settings__btn--primary {
    grid-column: 2 !important;
    grid-row: 1 !important;
    width: 100% !important;
    min-width: 0 !important;
  }
  .cookie-settings__footer-actions .cookie-settings__btn--ghost:first-of-type,
  .cookie-settings__footer-actions button.cookie-settings__btn--ghost:first-of-type {
    grid-column: 1 !important;
    grid-row: 1 !important;
    width: 100% !important;
    min-width: 0 !important;
  }
  /* Bottega mobile only shows 2 actions — hide Allow All */
  .cookie-settings__footer-actions .cookie-settings__btn--ghost:last-of-type,
  .cookie-settings__footer-actions button.cookie-settings__btn--ghost:last-of-type {
    display: none !important;
  }
  .cookie-settings__footer .cookie-settings__btn,
  .cookie-settings__btn {
    width: 100% !important;
    min-height: 2.65rem !important;
    padding: 0.55rem 0.4rem !important;
    font-size: 10px !important;
    font-weight: 500 !important;
    letter-spacing: -0.20px !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
    box-sizing: border-box !important;
  }
}

@media (min-width: 768px) {
  :root {
    --page-gutter: 32px;
  }
}

/* —— Pass 20260802a — faster sidebar; mega below promo; cookie like ref; header never hidden —— */

/* Sidebar close/open a bit faster */
.site-newsletter,
.site-drawer,
.site-drawer--filter,
div.site-newsletter,
html body .site-newsletter,
html body .site-drawer,
html body .site-drawer--filter {
  transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1) !important;
}
.site-newsletter__backdrop,
.site-drawer__backdrop {
  transition: opacity 0.4s cubic-bezier(0.22, 1, 0.36, 1) !important;
}

/* MEGA: do NOT cover announcement bar — sit under promo+header */
html body.mega-open .site-promo,
html body.mega-promo-visible .site-promo,
html body.mega-open .site-promo__label {
  position: relative !important;
  z-index: 14050 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
}
html body.mega-open .site-header,
html body.mega-open header.site-header {
  z-index: 14040 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  translate: none !important;
  transform: none !important;
  background: #fff !important;
}
html body .site-mega.site-mega--open,
html body.mega-open .site-mega {
  top: var(--header-bottom, 96px) !important;
  z-index: 13020 !important;
}
html body.mega-open .site-mega__backdrop,
html body .site-mega__backdrop.is-open {
  top: var(--header-bottom, 96px) !important;
  right: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  inset: auto 0 0 0 !important;
  z-index: 13010 !important;
}

/* COOKIE SETTINGS — never hide header/promo; match reference dialog */
html.cookie-settings-open .site-header,
html.cookie-settings-open header.site-header,
html.cookie-settings-open .site-promo,
html body.cookie-settings-open .site-header,
html body.cookie-settings-open header.site-header,
html body.cookie-settings-open .site-promo {
  position: sticky !important;
  top: 0 !important;
  z-index: 2147483600 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  translate: none !important;
  transform: none !important;
  --tw-translate-y: 0 !important;
  display: grid !important;
}
html.cookie-settings-open .site-promo,
html body.cookie-settings-open .site-promo {
  background: #000 !important;
  color: #fff !important;
  display: block !important;
}

/* Desktop: centered card like reference (not full-bleed) */
@media (min-width: 768px) {
  .cookie-settings-root {
    position: fixed !important;
    inset: 0 !important;
    z-index: 2147483000 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 1.5rem !important;
    background: rgba(0, 0, 0, 0.42) !important;
  }
  .cookie-settings,
  .cookie-settings.bg-white {
    width: min(760px, calc(100vw - 3rem)) !important;
    max-width: 760px !important;
    height: auto !important;
    max-height: min(88vh, 620px) !important;
    min-height: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
    background: #fff !important;
  }
  .cookie-settings__header {
    padding: 1.35rem 1.75rem 1rem !important;
    border-bottom: 0 !important;
  }
  .cookie-settings__title {
    font-family: var(--font-sans) !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    letter-spacing: -0.20px !important;
    text-transform: uppercase !important;
    color: #000 !important;
  }
  .cookie-settings > .px-6.pb-4.md\:hidden {
    display: none !important;
  }
  .cookie-settings__body {
    flex-direction: row !important;
    flex: 1 1 auto !important;
    min-height: 0 !important;
    overflow: hidden !important;
    border-top: 1px solid #e8e8e8 !important;
  }
  .cookie-settings__nav {
    width: 42% !important;
    max-width: 300px !important;
    border-right: 1px solid #e8e8e8 !important;
    border-bottom: 0 !important;
    overflow-y: auto !important;
    padding: 0.5rem 0 1rem !important;
    flex: 0 0 auto !important;
  }
  .cookie-settings__nav ul {
    padding: 0 !important;
  }
  .cookie-settings__nav .tab-button,
  .cookie-settings__nav button.tab-button {
    padding: 0.75rem 1.75rem !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    letter-spacing: -0.20px !important;
    text-transform: none !important;
    color: #000 !important;
  }
  .cookie-settings__nav .tab-button .underline,
  .cookie-settings__nav .tab-button span {
    text-transform: none !important;
  }
  .cookie-settings__mobile-toggle {
    display: none !important;
  }
  .cookie-settings .mobile-content {
    display: none !important;
  }
  .cookie-settings__panel,
  .cookie-settings__panel.hidden {
    display: flex !important;
    flex-direction: column !important;
    flex: 1 1 auto !important;
    overflow-y: auto !important;
    padding: 1.5rem 1.75rem !important;
  }
  .cookie-settings__panel-title,
  .cookie-settings__panel h3 {
    font-size: 12px !important;
    font-weight: 500 !important;
    letter-spacing: -0.20px !important;
    text-transform: uppercase !important;
    margin: 0 0 1rem !important;
  }
  .cookie-settings__panel-copy,
  .cookie-settings__panel p {
    font-size: 13px !important;
    line-height: 1.35 !important;
    letter-spacing: -0.20px !important;
    color: #000 !important;
  }
  .cookie-settings__more,
  a.cookie-settings__more {
    font-size: 13px !important;
    color: #000 !important;
    text-decoration: underline !important;
    text-underline-offset: 3px !important;
  }
  /* Footer: Confirm left, Reject right — hide Allow All */
  .cookie-settings__footer {
    display: flex !important;
    flex-direction: row !important;
    justify-content: space-between !important;
    align-items: center !important;
    gap: 1rem !important;
    padding: 1.15rem 1.75rem 1.5rem !important;
    border-top: 0 !important;
  }
  .cookie-settings__footer-actions {
    display: flex !important;
    flex-direction: row !important;
    gap: 0.75rem !important;
  }
  .cookie-settings__footer-actions .cookie-settings__btn--ghost:last-of-type {
    display: none !important;
  }
  .cookie-settings__btn {
    min-height: 2.75rem !important;
    padding: 0.7rem 1.5rem !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    letter-spacing: -0.20px !important;
    text-transform: none !important;
    width: auto !important;
    white-space: nowrap !important;
  }
  .cookie-settings__btn--primary {
    background: #000 !important;
    color: #fff !important;
    border: 1px solid #000 !important;
  }
  .cookie-settings__btn--ghost {
    background: #fff !important;
    color: #000 !important;
    border: 1px solid #000 !important;
  }
}

/* Mobile cookie stays full-screen; header still never hidden above it */
@media (max-width: 767px) {
  html.cookie-settings-open .site-header,
  html.cookie-settings-open header.site-header,
  html.cookie-settings-open .site-promo,
  html body.cookie-settings-open .site-header,
  html body.cookie-settings-open .site-promo {
    z-index: 2147483600 !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
  }
  /* Full-screen cookie sits BELOW sticky header/promo so chrome stays visible */
  .cookie-settings-root {
    top: var(--header-bottom, 64px) !important;
    height: calc(100dvh - var(--header-bottom, 64px)) !important;
    max-height: calc(100dvh - var(--header-bottom, 64px)) !important;
    z-index: 2147483000 !important;
  }
  .cookie-settings,
  .cookie-settings.bg-white {
    height: 100% !important;
    max-height: 100% !important;
    min-height: 0 !important;
  }
}

/* —— Pass 20260802b — pin header while cookie settings (body lock safe) —— */
html.cookie-settings-open .site-promo,
html body.cookie-settings-open .site-promo {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  z-index: 2147483600 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  display: block !important;
  background: #000 !important;
  color: #fff !important;
}
html.cookie-settings-open .site-header,
html.cookie-settings-open header.site-header,
html body.cookie-settings-open .site-header,
html body.cookie-settings-open header.site-header {
  position: fixed !important;
  top: var(--promo-bar-height, 0px) !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  z-index: 2147483600 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  display: grid !important;
  background: #fff !important;
  translate: none !important;
  transform: none !important;
}
/* If promo dismissed, header at top */
html.cookie-settings-open body:not(:has(.site-promo)) .site-header,
html.cookie-settings-open body:not(:has(.site-promo)) header.site-header {
  top: 0 !important;
}

/* —— Pass 20260802d — overlay fades fast; cookie covers sticky header in place; promo mobile —— */

/* Sidebar/filter: overlay fades out immediately on close (do not force opacity:1) */
html.newsletter-closing .site-newsletter__backdrop,
html body.newsletter-closing .site-newsletter__backdrop,
.site-newsletter__backdrop.is-closed,
.site-newsletter__backdrop.opacity-0,
.site-newsletter__backdrop.pointer-events-none {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transition: opacity 0.15s ease, visibility 0s linear 0.15s !important;
}
html.newsletter-closing .site-newsletter,
html body.newsletter-closing .site-newsletter {
  /* keep panel painted while it slides off */
  visibility: visible !important;
  pointer-events: none !important;
  transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1) !important;
}
html.site-drawer-closing .site-drawer__backdrop,
html body.site-drawer-closing .site-drawer__backdrop {
  opacity: 0 !important;
  pointer-events: none !important;
  transition: opacity 0.15s ease !important;
}
body.newsletter-open .site-newsletter__backdrop.is-open,
html.newsletter-open .site-newsletter__backdrop.is-open {
  opacity: 1 !important;
  visibility: visible !important;
}

/* COOKIE SETTINGS: overlay sticky header IN PLACE — do not pin/slide chrome above modal */
html.cookie-settings-open .site-header,
html.cookie-settings-open header.site-header,
html body.cookie-settings-open .site-header,
html body.cookie-settings-open header.site-header {
  position: sticky !important;
  top: 0 !important;
  left: auto !important;
  right: auto !important;
  width: auto !important;
  z-index: 12000 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: none !important;
  translate: none !important;
  transform: none !important;
  background: #fff !important;
}
html.cookie-settings-open .site-promo,
html body.cookie-settings-open .site-promo {
  position: relative !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  width: auto !important;
  z-index: 12000 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: none !important;
  background: #000 !important;
  color: #fff !important;
  display: block !important;
}
html.cookie-settings-open .cookie-settings-root,
html body.cookie-settings-open .cookie-settings-root {
  position: fixed !important;
  inset: 0 !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 100% !important;
  height: 100dvh !important;
  max-height: 100dvh !important;
  z-index: 13070 !important;
  padding: 0 !important;
}
@media (min-width: 768px) {
  html.cookie-settings-open .cookie-settings-root,
  html body.cookie-settings-open .cookie-settings-root {
    padding: 1.5rem !important;
    background: rgba(0, 0, 0, 0.42) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }
}
@media (max-width: 767px) {
  html.cookie-settings-open .cookie-settings-root,
  html body.cookie-settings-open .cookie-settings-root {
    top: 0 !important;
    height: 100dvh !important;
    max-height: 100dvh !important;
    background: #fff !important;
  }
}

/* COOKIE BANNER: never hide / bury announcement bar */
html.cookie-pending .site-promo,
html body.cookie-pending .site-promo {
  position: relative !important;
  z-index: 14050 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  background: #000 !important;
  color: #fff !important;
  display: block !important;
}
html.cookie-pending .site-header,
html body.cookie-pending .site-header,
html.cookie-pending header.site-header {
  z-index: 14040 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
}
/* Dim starts BELOW promo+header so announcement stays clear */
html.cookie-pending .cookie-dim,
html body.cookie-pending .cookie-dim,
html.cookie-pending #cookie-overlay,
html.cookie-pending .cookie-overlay,
html.cookie-pending body::before {
  top: var(--header-bottom, 96px) !important;
  inset: auto 0 0 0 !important;
  height: auto !important;
  bottom: 0 !important;
  left: 0 !important;
  right: 0 !important;
}

/* MEGA: never cover announcement; start at header bottom */
html body.mega-open .site-promo,
html body.mega-promo-visible .site-promo {
  z-index: 14050 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  position: relative !important;
}
html body.mega-open .site-header,
html body.mega-open header.site-header {
  z-index: 14040 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  background: #fff !important;
}
html body .site-mega.site-mega--open,
html body.mega-open .site-mega {
  top: var(--header-bottom, 96px) !important;
  z-index: 13020 !important;
}
html body.mega-open .site-mega__backdrop,
html body .site-mega__backdrop.is-open {
  top: var(--header-bottom, 96px) !important;
  inset: auto 0 0 0 !important;
  z-index: 13010 !important;
}

/* Announcement bar — mobile responsive, no close overlap, slide when needed */
.site-promo {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0 !important;
  overflow: hidden !important;
  padding: 0.55rem 2.5rem !important;
  min-height: 2rem !important;
}
.site-promo__track {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  overflow: hidden !important;
  text-align: center !important;
  mask-image: linear-gradient(90deg, transparent, #000 8px, #000 calc(100% - 8px), transparent);
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 8px, #000 calc(100% - 8px), transparent);
}
.site-promo__label {
  display: inline-block !important;
  white-space: nowrap !important;
  max-width: none !important;
}
.site-promo__close {
  position: absolute !important;
  right: 4px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: 28px !important;
  height: 28px !important;
  flex-shrink: 0 !important;
  z-index: 2 !important;
}
@media (max-width: 767px) {
  .site-promo {
    padding: 0.55rem 36px 0.55rem 12px !important;
  }
  .site-promo__close {
    right: 4px !important;
    width: 30px !important;
    height: 30px !important;
  }
  .site-promo__label {
    font-size: 10px !important;
    letter-spacing: -0.20px !important;
  }
  .site-promo.is-marquee .site-promo__label {
    animation: site-promo-marquee 14s linear infinite;
    padding-left: 0 !important;
  }
  .site-promo.is-marquee .site-promo__track {
    mask-image: none;
    -webkit-mask-image: none;
    text-align: left !important;
  }
}
@keyframes site-promo-marquee {
  0% { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}
@media (prefers-reduced-motion: reduce) {
  .site-promo.is-marquee .site-promo__label {
    animation: none !important;
  }
}

/* Kill full-viewport ::before dim that buried announcement under cookie banner */
html.cookie-pending body::before,
html body.cookie-pending::before {
  top: var(--header-bottom, 96px) !important;
  inset: auto 0 0 0 !important;
  height: auto !important;
  bottom: 0 !important;
}
html.cookie-pending .cookie-dim,
html body.cookie-pending .cookie-dim {
  top: var(--header-bottom, 96px) !important;
  inset: auto 0 0 0 !important;
  height: auto !important;
  bottom: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
}

/* —— Pass 20260802h — cookie pins sticky header in-place then overlays —— */
html.cookie-settings-open .site-header[data-cookie-pinned],
html.cookie-settings-open header.site-header[data-cookie-pinned],
html body.cookie-settings-open .site-header[data-cookie-pinned] {
  /* inline styles win for top/position; keep under modal */
  z-index: 12000 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: none !important;
  translate: none !important;
  transform: none !important;
  background: #fff !important;
}
html.cookie-settings-open .site-promo[data-cookie-pinned],
html body.cookie-settings-open .site-promo[data-cookie-pinned] {
  z-index: 12000 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: none !important;
  background: #000 !important;
  color: #fff !important;
}
html.cookie-settings-open .cookie-settings-root,
html body.cookie-settings-open .cookie-settings-root {
  z-index: 13070 !important;
  inset: 0 !important;
  top: 0 !important;
}

/* —— Pass 20260802i — mega covers promo; 14px gutters; mobile CTA/footer/cookie —— */

/* MEGA: cover announcement from viewport top; never clipped while scrolling */
html body.mega-open .site-promo,
html body.mega-promo-visible .site-promo {
  z-index: 12000 !important;
  position: relative !important;
  opacity: 1 !important;
  visibility: visible !important;
}
html body.mega-open .site-header,
html body.mega-open header.site-header {
  z-index: 14040 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  background: #fff !important;
  overflow: visible !important;
}
html body.mega-open .site-nav-wrap,
html body.mega-open .site-nav,
html body.mega-open #root,
html body.mega-open main {
  overflow: visible !important;
}
html body .site-mega.site-mega--open,
html body.mega-open .site-mega {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  max-width: 100vw !important;
  max-height: none !important;
  height: auto !important;
  overflow: visible !important;
  clip: auto !important;
  clip-path: none !important;
  z-index: 13020 !important;
  transform: none !important;
  translate: none !important;
}
html body.mega-open .site-mega__backdrop,
html body .site-mega__backdrop.is-open {
  top: 0 !important;
  inset: 0 !important;
  z-index: 13010 !important;
}
html body.mega-open .site-mega__inner,
html body.mega-open .site-mega__grid {
  overflow: visible !important;
  max-height: none !important;
}

/* Equal 14px outer gutters — no double padding */
:root {
  --page-gutter: 14px;
}
@media (max-width: 767px) {
  :root {
    --page-gutter: 14px;
  }

  .site-header,
  header.site-header,
  .site-discover__title,
  .page-404__discover-title,
  .site-discover__grid,
  .page-404__grid,
  .site-home-cards,
  .site-footer__top,
  .site-footer__links,
  .site-footer__copyright,
  .site-footer__locale,
  .site-footer__mobile,
  .site-section,
  .site-section__inner,
  .site-sustain,
  .site-careers,
  .site-services,
  #cookie-banner.cookie-banner,
  html body #cookie-banner,
  .px-2, .px-3, .px-4, .px-5, .px-6, .px-8,
  main .px-4,
  main .px-6,
  main .px-8,
  .site-main-stack .px-4,
  .site-main-stack .px-6,
  .site-main-stack .px-8 {
    padding-left: var(--page-gutter) !important;
    padding-right: var(--page-gutter) !important;
  }

  /* Kill nested double gutters */
  .site-footer__mobile .px-4,
  .site-footer__mobile .accordion-btn,
  .site-footer__mobile ul.flex,
  .site-footer__mobile .site-footer__copyright--mobile,
  main section[class*="px-"] > [class*="px-"],
  .site-main-stack section[class*="px-"] > [class*="px-"],
  .site-discover__grid .px-4,
  .site-home-cards .px-4,
  .site-section .px-4,
  .site-footer__mobile > * {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  .site-footer__mobile {
    padding-inline: var(--page-gutter) !important;
  }

  /* Tighter mobile vertical gaps / inner spacing */
  .site-main-stack section,
  .site-discover,
  .site-home-cards,
  .page-404__discover {
    padding-top: 1.25rem !important;
    padding-bottom: 1.25rem !important;
  }
  .site-discover__grid,
  .page-404__grid,
  .site-home-cards {
    gap: 0.5rem !important;
    row-gap: 0.75rem !important;
  }
  .site-footer__mobile {
    gap: 0.85rem !important;
  }
  .site-footer__mobile h4,
  .site-footer__mobile .accordion-btn {
    margin-bottom: 0.4rem !important;
  }
  .site-footer__mobile .accordion-btn {
    padding-top: 0.65rem !important;
    padding-bottom: 0.65rem !important;
  }
  .site-footer__mobile p {
    margin-bottom: 0.65rem !important;
  }

  /* Image CTAs — smaller so two fit one row */
  a.cta-on-image,
  button.cta-on-image,
  .cta-on-image,
  a.cta-on-image.uppercase.bg-white,
  a.relative.z-10.bg-white.text-black.border.border-black {
    padding: 0.35rem 0.7rem 0.3rem !important;
    min-height: 2rem !important;
    height: auto !important;
    max-height: none !important;
    font-size: 10px !important;
    line-height: 1.35 !important;
    min-width: 0 !important;
    max-width: calc(50% - 0.35rem) !important;
    flex: 1 1 calc(50% - 0.35rem) !important;
    white-space: nowrap !important;
  }
  /* CTA row containers */
  .flex.flex-wrap.justify-center.gap-3:has(.cta-on-image),
  .flex.justify-center.gap-3:has(.cta-on-image),
  .flex.gap-3:has(.cta-on-image),
  .flex.gap-2:has(.cta-on-image),
  .flex.gap-4:has(.cta-on-image) {
    gap: 0.4rem !important;
    flex-wrap: nowrap !important;
    justify-content: center !important;
    padding-inline: var(--page-gutter) !important;
  }

  /* Mobile footer — light grey borders/dividers */
  .site-footer__mobile .border-t,
  .site-footer__mobile .border-b,
  .site-footer__mobile .border-black,
  .site-footer__mobile [class*="border-t"],
  .site-footer__mobile [class*="border-b"],
  .site-footer__copyright--mobile,
  .site-footer__mobile .accordion-btn,
  .site-footer__mobile .flex.flex-col.border-t,
  .site-footer__mobile .pt-4.flex.flex-col {
    border-color: #e5e5e5 !important;
  }
  .site-footer__mobile .accordion-btn {
    border-bottom: 1px solid #e5e5e5 !important;
  }
  .site-footer__mobile .flex.flex-col.border-t,
  .site-footer__mobile .pt-4.flex.flex-col,
  .site-footer__copyright--mobile {
    border-top: 1px solid #e5e5e5 !important;
  }
  .site-footer__mobile .site-footer__email-field,
  .site-footer__mobile form.site-footer__email-field {
    border-bottom: 1px solid #111 !important; /* keep field underline dark */
  }

  /* Mobile cookie settings — light grey borders */
  .cookie-settings__nav li {
    border-bottom: 1px solid #e5e5e5 !important;
  }
  .cookie-settings__header {
    border-bottom: 1px solid #e5e5e5 !important;
  }
  .cookie-settings__footer {
    border-top: 1px solid #e5e5e5 !important;
  }
  .cookie-settings__body {
    border-top: 1px solid #e5e5e5 !important;
  }
  .cookie-settings__btn--ghost {
    border-color: #cfcfcf !important;
  }

  /* Mobile search most-searched: 2x2 for 4 items */
  .site-search__most-grid {
    grid-template-columns: 1fr 1fr !important;
    gap: 0.65rem !important;
  }
}

@media (min-width: 768px) {
  :root {
    --page-gutter: 32px;
  }
}

/* —— Pass 20260802j — CTA row on mobile; no double gutters; grey borders win —— */
@media (max-width: 767px) {
  /* Full-bleed heroes: no side padding on the section itself */
  .site-main-stack > section.relative,
  .site-main-stack > section.site-home-hero,
  .site-main-stack > .site-home-hero,
  main > .site-main-stack > section.relative {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  /* Content overlays keep single 14px gutter */
  .site-main-stack .absolute.bottom-10.px-4,
  .site-main-stack .absolute[class*="bottom-"].px-4,
  .site-home-hero__content.px-4,
  .site-home-hero__content {
    padding-left: var(--page-gutter) !important;
    padding-right: var(--page-gutter) !important;
  }
  /* Cards strip: only outer gutter once */
  .site-main-stack > section.bg-white,
  .site-main-stack > section.py-16 {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  .site-home-cards {
    padding-left: var(--page-gutter) !important;
    padding-right: var(--page-gutter) !important;
  }

  /* Force image CTA pairs onto one row */
  .flex.flex-col.sm\:flex-row:has(> .cta-on-image),
  .flex.flex-col.items-center.justify-center.gap-3:has(> .cta-on-image),
  div.flex.flex-col.sm\:flex-row.items-center.justify-center.gap-3.w-auto {
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    gap: 0.4rem !important;
    width: 100% !important;
    max-width: 100% !important;
    padding-inline: 0 !important;
    justify-content: center !important;
  }
  .flex.flex-col.sm\:flex-row:has(> .cta-on-image) > .cta-on-image,
  div.flex.flex-col.sm\:flex-row.items-center.justify-center.gap-3.w-auto > .cta-on-image,
  a.cta-on-image {
    flex: 1 1 0 !important;
    max-width: none !important;
    width: auto !important;
    min-width: 0 !important;
    padding: 0.4rem 0.55rem !important;
    font-size: 9px !important;
    min-height: 1.9rem !important;
    height: auto !important;
  }

  /* Footer accordion borders — beat earlier black !important */
  html body .site-footer__mobile .accordion-btn,
  html body .site-footer__mobile button.accordion-btn,
  html body .site-footer__mobile .border-b,
  html body .site-footer__mobile .border-t,
  html body .site-footer__mobile .border-black {
    border-color: #e5e5e5 !important;
    border-bottom-color: #e5e5e5 !important;
    border-top-color: #e5e5e5 !important;
  }
  html body .site-footer__mobile .accordion-btn {
    border-bottom: 1px solid #e5e5e5 !important;
    border-top: 0 !important;
  }
  html body .site-footer__mobile .flex.flex-col.border-t,
  html body .site-footer__copyright--mobile,
  html body .site-footer__mobile .pt-4.flex.flex-col {
    border-top: 1px solid #e5e5e5 !important;
    border-top-color: #e5e5e5 !important;
  }

  /* Cookie accordion rows — force visible light grey rule */
  html body .cookie-settings__nav li,
  html body .cookie-settings__nav li.border-b {
    border-bottom: 1px solid #e5e5e5 !important;
    border-bottom-color: #e5e5e5 !important;
  }
  html body .cookie-settings__header {
    border-bottom: 1px solid #e5e5e5 !important;
  }
  html body .cookie-settings__footer {
    border-top: 1px solid #e5e5e5 !important;
  }
}

/* —— Pass 20260802k — restore mobile footer grey rules (beat remove-divider pass) —— */
@media (max-width: 767px) {
  html body footer .site-footer__mobile button.accordion-btn.border-b.border-black,
  html body .site-footer__mobile button.accordion-btn,
  html body #footer-container .site-footer__mobile .accordion-btn {
    border: 0 !important;
    border-bottom: 1px solid #e5e5e5 !important;
    border-bottom-width: 1px !important;
    border-bottom-style: solid !important;
    border-bottom-color: #e5e5e5 !important;
  }
  html body #footer-container .site-footer__copyright--mobile,
  html body .site-footer__mobile .pt-4.flex.flex-col.items-center,
  html body .site-footer__mobile > .flex.flex-col.border-t {
    border: 0 !important;
    border-top: 1px solid #e5e5e5 !important;
    border-top-color: #e5e5e5 !important;
  }
  html body .site-footer__mobile .overflow-hidden.border-b {
    border-bottom: 1px solid #e5e5e5 !important;
  }
}

/* Reduce scroll-anchoring jumps when sidebar opens/closes */
html.newsletter-open,
html.newsletter-closing,
html.site-drawer-open,
html.site-drawer-closing {
  overflow-anchor: none !important;
}
body.newsletter-open,
body.newsletter-closing,
body.site-drawer-open,
body.site-drawer-closing {
  overflow-anchor: none !important;
}


/* —— Pass 20260802n — Bottega mobile CTAs / footer / cookie / gutters —— */
@media (max-width: 767px) {
  :root {
    --page-gutter: 14px;
    --footer-rule: #e5e5e5;
  }

  /* Restore single 14px page gutter */
  html body .site-footer__mobile,
  html body #footer-container .site-footer__mobile,
  html body .site-home-cards,
  html body .site-discover__title,
  html body .site-discover__grid,
  html body .page-404__discover-title,
  html body .page-404__grid,
  html body .site-section__inner,
  html body #cookie-banner.cookie-banner,
  html body .cookie-settings__header,
  html body .cookie-settings__body,
  html body .cookie-settings__footer,
  html body .cookie-settings__nav {
    padding-left: var(--page-gutter) !important;
    padding-right: var(--page-gutter) !important;
  }
  html body .cookie-settings__nav {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  html body .cookie-settings__header,
  html body .cookie-settings__footer,
  html body .cookie-settings__panel,
  html body .cookie-settings .cookie-settings__scroll,
  html body .cookie-settings__scroll {
    padding-left: var(--page-gutter) !important;
    padding-right: var(--page-gutter) !important;
  }

  /* Kill grey section flash behind heroes / cards */
  html body .site-main-stack > section.bg-gray,
  html body .site-main-stack > section.bg-gray-50,
  html body .site-main-stack > section.bg-gray-100,
  html body .site-main-stack > section.bg-gray-200,
  html body .site-main-stack > section.bg-gray-300,
  html body .site-main-stack section.relative.bg-gray-100,
  html body .site-main-stack section.relative.bg-gray-200,
  html body .site-main-stack section.relative.bg-gray-300,
  html body section.bg-gray-100.relative,
  html body section.bg-gray-200.relative,
  html body section.bg-gray-300.relative,
  html body .site-home-hero.bg-gray-100,
  html body .site-home-hero.bg-gray-200,
  html body .site-home-hero.bg-gray-300,
  html body [class*="bg-gray-"].relative.w-full {
    background-color: transparent !important;
    background-image: none !important;
  }
  html body .site-main-stack > section.bg-gray-50:not(.relative),
  html body .site-main-stack > section.bg-gray-100:not(.relative),
  html body main .bg-gray-50:not(.relative),
  html body main .bg-gray-100:not(.relative) {
    background-color: #fff !important;
  }

  /* —— Image CTAs: stacked Bottega white / black border —— */
  html body .flex.flex-col.sm\:flex-row:has(> .cta-on-image),
  html body .flex.flex-col.items-center.justify-center.gap-3:has(> .cta-on-image),
  html body div.flex.flex-col.sm\:flex-row.items-center.justify-center.gap-3.w-auto,
  html body .flex.flex-wrap.justify-center.gap-3:has(.cta-on-image),
  html body .flex.justify-center.gap-3:has(.cta-on-image),
  html body .flex.gap-3:has(.cta-on-image),
  html body .flex.gap-2:has(.cta-on-image),
  html body .flex.gap-4:has(.cta-on-image) {
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    justify-content: center !important;
    gap: 0.55rem !important;
    width: min(100%, 22rem) !important;
    max-width: calc(100% - (var(--page-gutter) * 2)) !important;
    padding-inline: 0 !important;
    margin-inline: auto !important;
  }

  html body a.cta-on-image,
  html body button.cta-on-image,
  html body .cta-on-image,
  html body a.cta-on-image.uppercase.bg-white,
  html body a.cta-on-image.uppercase.bg-black,
  html body a.relative.z-10.bg-white.text-black.border.border-black,
  html body .flex.flex-col.sm\:flex-row:has(> .cta-on-image) > .cta-on-image,
  html body div.flex.flex-col.sm\:flex-row.items-center.justify-center.gap-3.w-auto > .cta-on-image {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 auto !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    margin: 0 !important;
    padding: 0.85rem 1.1rem !important;
    min-height: 2.85rem !important;
    height: auto !important;
    max-height: none !important;
    border: 1px solid #000 !important;
    border-radius: 0 !important;
    background: #fff !important;
    color: #000 !important;
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif !important;
    font-size: 11px !important;
    font-weight: 500 !important;
    letter-spacing: -0.20px !important;
    line-height: 1.35 !important;
    text-transform: uppercase !important;
    text-align: center !important;
    white-space: nowrap !important;
    text-decoration: none !important;
  }
  html body a.cta-on-image:hover,
  html body a.cta-on-image:focus-visible,
  html body .cta-on-image:hover,
  html body button.cta-on-image:hover {
    background: #111 !important;
    color: #fff !important;
    border-color: #111 !important;
  }

  /* —— Footer: Bottega mobile —— */
  html body .site-footer__mobile {
    gap: 0 !important;
    background: #fff !important;
  }
  html body .site-footer__mobile > * {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  /* Subscribe block spacing */
  html body .site-footer__mobile .site-footer__subscribe,
  html body .site-footer__mobile > div:first-child {
    padding-bottom: 1.35rem !important;
  }
  html body .site-footer__mobile h4,
  html body .site-footer__mobile .site-footer__store-title,
  html body .site-footer__mobile .site-footer__accordion-label {
    margin: 0 !important;
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif !important;
    font-size: 11px !important;
    font-weight: 500 !important;
    letter-spacing: -0.20px !important;
    text-transform: uppercase !important;
    color: #111 !important;
  }
  html body .site-footer__mobile p {
    margin: 0.55rem 0 1rem !important;
    font-size: 12px !important;
    line-height: 1.35 !important;
    color: #111 !important;
  }

  /* Only black border = email underline */
  html body .site-footer__mobile .site-footer__email-field,
  html body .site-footer__mobile form.site-footer__email-field,
  html body .site-footer__mobile form.border-b,
  html body .site-footer__mobile .border-b.border-black.site-footer__email-field {
    border: 0 !important;
    border-bottom: 1px solid #111 !important;
    border-radius: 0 !important;
  }

  /* Store locator row */
  html body .site-footer__store-row {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 1rem !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 1.05rem 0 !important;
    border-top: 1px solid var(--footer-rule) !important;
    border-bottom: 1px solid var(--footer-rule) !important;
    box-sizing: border-box !important;
  }
  html body .site-footer__store-title {
    margin: 0 !important;
  }
  html body .site-footer__find-store,
  html body a.site-footer__find-store {
    margin: 0 !important;
    padding: 0 !important;
    color: #111 !important;
    font-size: 12px !important;
    font-weight: 400 !important;
    letter-spacing: -0.20px !important;
    text-transform: none !important;
    text-decoration: underline !important;
    text-underline-offset: 2px !important;
    border: 0 !important;
    background: none !important;
  }
  html body .site-footer__find-store::after,
  html body .site-footer__find-store::before {
    display: none !important;
  }

  /* Accordion list */
  html body .site-footer__accordion-list {
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
  }
  html body .site-footer__accordion-btn,
  html body .site-footer__mobile button.site-footer__accordion-btn,
  html body .site-footer__mobile button.accordion-btn,
  html body #footer-container .site-footer__mobile .accordion-btn {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 1.05rem 0 !important;
    border: 0 !important;
    border-bottom: 1px solid var(--footer-rule) !important;
    border-top: 0 !important;
    background: transparent !important;
    color: #111 !important;
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif !important;
    font-size: 11px !important;
    font-weight: 500 !important;
    letter-spacing: -0.20px !important;
    text-transform: uppercase !important;
  }
  html body .site-footer__accordion-icon,
  html body .site-footer__mobile .site-footer__accordion-icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 auto !important;
    margin-left: auto !important;
    min-width: 1.5rem !important;
    font-size: 28px !important;
    font-weight: 300 !important;
    line-height: 1.35 !important;
    color: #111 !important;
  }
  html body .site-footer__accordion-panel {
    border: 0 !important;
    border-bottom: 1px solid var(--footer-rule) !important;
  }
  html body .site-footer__accordion-links {
    gap: 0.85rem !important;
    padding: 0.15rem 0 1.15rem !important;
  }
  html body .site-footer__accordion-links a,
  html body .site-footer__accordion-links li {
    color: #111 !important;
    font-size: 13px !important;
    text-transform: none !important;
    letter-spacing: -0.20px !important;
  }

  /* Locale + copyright: left aligned, grey rules only */
  html body .site-footer__mobile .pt-4.flex.flex-col,
  html body .site-footer__mobile .pt-4.flex.flex-col.items-center {
    align-items: flex-start !important;
    justify-content: flex-start !important;
    text-align: left !important;
    gap: 0.85rem !important;
    margin: 0 !important;
    padding: 1.5rem 0 1.1rem !important;
    border: 0 !important;
    border-top: 0 !important;
    color: #111 !important;
    font-size: 12px !important;
  }
  html body .site-footer__mobile .pt-4.flex.flex-col a,
  html body .site-footer__mobile .hover-underline-swap {
    color: #111 !important;
    text-decoration: underline !important;
    text-underline-offset: 2px !important;
  }
  html body .site-footer__copyright--mobile,
  html body #footer-container .site-footer__copyright--mobile {
    margin: 0 !important;
    padding: 0 0 1.5rem !important;
    border: 0 !important;
    border-top: 0 !important;
    text-align: left !important;
    color: #9a9a9a !important;
    font-size: 11px !important;
  }

  /* —— Cookie settings mobile: big + right, grey rules, gutters —— */
  html body .cookie-settings,
  html body .cookie-settings__dialog,
  html body .cookie-settings__panel-wrap {
    background: #fff !important;
  }
  html body .cookie-settings__nav li,
  html body .cookie-settings__nav li.border-b {
    border: 0 !important;
    border-bottom: 1px solid #e5e5e5 !important;
  }
  html body .cookie-settings__nav .tab-button,
  html body .cookie-settings__nav button.tab-button {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    padding: 1.05rem 0 !important;
    gap: 1rem !important;
  }
  html body .cookie-settings__mobile-toggle {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin-left: auto !important;
    min-width: 1.5rem !important;
    font-size: 28px !important;
    font-weight: 300 !important;
    line-height: 1.35 !important;
    color: #111 !important;
  }
  html body .cookie-settings__header {
    border-bottom: 1px solid #e5e5e5 !important;
  }
  html body .cookie-settings__footer {
    border-top: 1px solid #e5e5e5 !important;
  }
  html body .cookie-settings__body {
    border-top: 0 !important;
  }
}

/* —— Pass 20260802n2 — kill remaining grey hero BGs; bigger + —— */
@media (max-width: 767px) {
  html body .site-home-hero,
  html body .site-main-stack > section.relative[class*="bg-gray"],
  html body section.relative.w-full[class*="h-"][class*="bg-gray"] {
    background-color: transparent !important;
  }
  html body .site-footer__accordion-icon,
  html body .cookie-settings__mobile-toggle {
    font-size: 28px !important;
  }
  html body .site-home-cards,
  html body .site-discover,
  html body .site-discover__grid {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
  html body .site-home-cards .px-4,
  html body .site-discover__grid .px-4 {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}


/* —— Pass 20260802o — CTA center/hover, mega below promo, accordion, gutters, weights —— */

/* Mega: never cover announcement (beat inline + older cover passes) */
html body.mega-open .site-promo,
html body.mega-promo-visible .site-promo {
  position: relative !important;
  z-index: 14050 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transform: none !important;
  translate: none !important;
}
html body.mega-open .site-header,
html body.mega-open header.site-header {
  z-index: 14040 !important;
}
html body.mega-open .site-mega,
html body.mega-open .site-mega.site-mega--open,
html body .site-mega.site-mega--open {
  top: var(--header-bottom, 96px) !important;
  z-index: 13020 !important;
}
html body.mega-open .site-mega__backdrop,
html body.mega-open .site-mega__backdrop.is-open,
html body .site-mega__backdrop.is-open {
  top: var(--header-bottom, 96px) !important;
  inset: var(--header-bottom, 96px) 0 0 0 !important;
  z-index: 13010 !important;
}

/* Desktop-exact CTA hover (sitewide) */
html body a.cta-on-image:hover,
html body a.cta-on-image:focus-visible,
html body a.cta-on-image:active,
html body button.cta-on-image:hover,
html body button.cta-on-image:focus-visible,
html body button.cta-on-image:active,
html body .cta-on-image:hover,
html body .cta-on-image:focus-visible,
html body .cta-on-image:active {
  background: #000 !important;
  background-color: #000 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  border-color: #000 !important;
}

@media (max-width: 767px) {
  :root { --page-gutter: 14px; }

  /* Tighten mobile vertical rhythm */
  html body .site-main-stack {
    gap: 2px !important;
  }
  html body .site-main-stack section,
  html body .site-discover,
  html body .site-home-cards,
  html body .page-404__discover {
    padding-top: 0.85rem !important;
    padding-bottom: 0.85rem !important;
  }
  html body .site-discover__grid,
  html body .site-home-cards {
    gap: 0.35rem !important;
    row-gap: 0.5rem !important;
  }

  /* Hard 14px page gutters */
  html body .site-footer__mobile,
  html body #footer-container .site-footer__mobile,
  html body .site-home-cards,
  html body .site-discover,
  html body .site-discover__title,
  html body .site-discover__grid,
  html body .page-404__discover-title,
  html body .page-404__grid,
  html body .site-section__inner,
  html body #cookie-banner.cookie-banner,
  html body .cookie-settings__header,
  html body .cookie-settings__footer {
    padding-left: 14px !important;
    padding-right: 14px !important;
    box-sizing: border-box !important;
  }

  /* Cookie: single 14px gutter — no nested double pad */
  html body .cookie-settings__body,
  html body .cookie-settings__scroll {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
  html body .cookie-settings__body .cookie-settings__nav,
  html body .cookie-settings__body .cookie-settings__panel,
  html body .cookie-settings__nav,
  html body .cookie-settings__panel,
  html body .cookie-settings__panel-wrap {
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  html body .cookie-settings__nav .tab-button,
  html body .cookie-settings__nav button.tab-button,
  html body .cookie-settings__panel,
  html body .cookie-settings__panel-title,
  html body .cookie-settings__panel p {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  html body .cookie-settings__mobile-toggle {
    font-size: 28px !important;
    font-weight: 300 !important;
    margin-left: auto !important;
  }

  /* Hero overlays: full width + center CTAs (fix bad 22rem on ancestors) */
  html body .site-main-stack .absolute.bottom-10,
  html body .site-main-stack .absolute[class*="bottom-"],
  html body .site-home-hero__content,
  html body .absolute.bottom-10.left-0.w-full {
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    align-items: center !important;
    justify-content: center !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
    box-sizing: border-box !important;
  }

  /* Only the direct CTA stack — centered, fit content */
  html body .absolute.bottom-10 > .flex:has(> .cta-on-image),
  html body .site-home-hero__content > .flex:has(> .cta-on-image),
  html body div.flex.flex-col.sm\:flex-row.items-center.justify-center.gap-3.w-auto,
  html body .flex.flex-col.sm\:flex-row:has(> .cta-on-image) {
    display: flex !important;
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    justify-content: center !important;
    width: max-content !important;
    max-width: 100% !important;
    min-width: min(100%, calc(11.5rem + 8px)) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-inline: 0 !important;
    gap: 0.5rem !important;
  }

  html body a.cta-on-image,
  html body button.cta-on-image,
  html body .cta-on-image {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    flex: 0 0 auto !important;
    margin: 0 !important;
    padding: 0.8rem 1.25rem !important;
    min-height: 2.75rem !important;
    border: 1px solid #000 !important;
    border-radius: 0 !important;
    background: #fff !important;
    color: #000 !important;
    -webkit-text-fill-color: #000 !important;
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif !important;
    font-size: 11px !important;
    font-weight: 500 !important;
    letter-spacing: -0.20px !important;
    line-height: 1.35 !important;
    text-transform: uppercase !important;
    text-align: center !important;
    white-space: nowrap !important;
    text-decoration: none !important;
    transition: background-color 0.15s ease, color 0.15s ease, border-color 0.15s ease !important;
  }
  html body a.cta-on-image + a.cta-on-image,
  html body .cta-on-image + .cta-on-image {
    margin-left: 0 !important;
  }

  /* Footer: 400 body / 500 labels; tighter; no rule under OPEN header */
  html body .site-footer__mobile,
  html body .site-footer__mobile p,
  html body .site-footer__mobile a,
  html body .site-footer__mobile li,
  html body .site-footer__mobile span,
  html body .site-footer__mobile input,
  html body .site-footer__copyright--mobile,
  html body .site-footer__find-store,
  html body .site-footer__accordion-links a {
    font-weight: 400 !important;
  }
  html body .site-footer__mobile h4,
  html body .site-footer__store-title,
  html body .site-footer__accordion-label,
  html body .site-footer__accordion-btn,
  html body .site-footer__mobile .site-footer__accordion-btn,
  html body .site-footer__mobile button.accordion-btn,
  html body .site-footer__mobile .font-semibold {
    font-weight: 500;
  }

  html body .site-footer__store-row {
    padding: 0.75rem 0 !important;
  }
  html body .site-footer__accordion-btn,
  html body .site-footer__mobile button.site-footer__accordion-btn,
  html body .site-footer__mobile button.accordion-btn {
    padding: 0.75rem 0 !important;
    border-bottom: 1px solid #e5e5e5 !important;
  }
  /* Open accordion: kill border between title and links (red-circled rule) */
  html body .site-footer__accordion-btn:has(+ div.grid-rows-\[1fr\]),
  html body .site-footer__mobile button.accordion-btn:has(+ div.grid-rows-\[1fr\]),
  html body .site-footer__mobile button.site-footer__accordion-btn:has(+ .opacity-100) {
    border-bottom: 0 !important;
    border-bottom-width: 0 !important;
  }
  html body .site-footer__accordion-panel {
    border: 0 !important;
    border-bottom: 1px solid #e5e5e5 !important;
  }
  html body .site-footer__accordion-links {
    gap: 0.55rem !important;
    padding: 0.1rem 0 0.85rem !important;
  }
  html body .site-footer__mobile > div:first-child,
  html body .site-footer__mobile .site-footer__subscribe {
    padding-bottom: 0.85rem !important;
  }
  html body .site-footer__mobile .pt-4.flex.flex-col,
  html body .site-footer__mobile .pt-4.flex.flex-col.items-center {
    padding: 1.1rem 0 0.75rem !important;
    gap: 0.55rem !important;
  }
  html body .site-footer__copyright--mobile {
    padding: 0 0 1.1rem !important;
  }
  html body .site-footer__accordion-icon {
    font-size: 28px !important;
    font-weight: 300 !important;
  }

  /* Bold elsewhere on mobile: 500 not 600 */
  html body .font-semibold,
  html body .font-bold {
    font-weight: 500;
  }
}


/* —— Pass 20260802o2 — accordion open border, cookie gutter, CTA #000 hover —— */
@media (max-width: 767px) {
  html body .site-footer__accordion-btn.is-open,
  html body .site-footer__mobile button.site-footer__accordion-btn.is-open,
  html body .site-footer__mobile button.accordion-btn.is-open,
  html body #footer-container .site-footer__mobile .accordion-btn.is-open,
  html body .site-footer__accordion-btn:has(+ .opacity-100),
  html body .site-footer__mobile button.accordion-btn:has(+ .opacity-100) {
    border-bottom: none !important;
    border-bottom-width: 0 !important;
    border-bottom-style: none !important;
    border-bottom-color: transparent !important;
  }

  /* Cookie nav list had px-6 → double gutter with body pad */
  html body .cookie-settings__nav .px-6,
  html body .cookie-settings__nav .flex.flex-col.w-full.px-6,
  html body .cookie-settings__body .px-6,
  html body .cookie-settings__nav ul,
  html body .cookie-settings__nav li {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  html body .cookie-settings__nav .tab-button,
  html body .cookie-settings__nav button.tab-button {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  html body a.cta-on-image,
  html body .cta-on-image {
    border-color: #000 !important;
    color: #000 !important;
    -webkit-text-fill-color: #000 !important;
    background: #fff !important;
  }
}

html body a.cta-on-image:hover,
html body a.cta-on-image:focus-visible,
html body a.cta-on-image:active,
html body .cta-on-image:hover,
html body .cta-on-image:focus-visible,
html body .cta-on-image:active,
html body a.cta-on-image.uppercase.bg-white:hover,
html body a.cta-on-image.uppercase.bg-white:active {
  background: #000 !important;
  background-color: #000 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  border-color: #000 !important;
}


/* —— Pass 20260802o3 — CTA hover/active match desktop exactly —— */
@media (max-width: 767px) {
  html body a.cta-on-image,
  html body a.cta-on-image.uppercase.bg-white,
  html body button.cta-on-image,
  html body .cta-on-image {
    border: 1px solid #000 !important;
    color: #000 !important;
    -webkit-text-fill-color: #000 !important;
    background: #fff !important;
    background-color: #fff !important;
  }
  html body a.cta-on-image:hover,
  html body a.cta-on-image:focus-visible,
  html body a.cta-on-image:active,
  html body a.cta-on-image.uppercase.bg-white:hover,
  html body a.cta-on-image.uppercase.bg-white:focus-visible,
  html body a.cta-on-image.uppercase.bg-white:active,
  html body button.cta-on-image:hover,
  html body button.cta-on-image:active,
  html body .cta-on-image:hover,
  html body .cta-on-image:focus-visible,
  html body .cta-on-image:active {
    background: #000 !important;
    background-color: #000 !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    border-color: #000 !important;
  }
}

html body a.cta-on-image:hover,
html body a.cta-on-image:focus-visible,
html body a.cta-on-image:active,
html body a.cta-on-image.uppercase.bg-white:hover,
html body a.cta-on-image.uppercase.bg-white:focus-visible,
html body a.cta-on-image.uppercase.bg-white:active,
html body button.cta-on-image:hover,
html body button.cta-on-image:active,
html body .cta-on-image:hover,
html body .cta-on-image:focus-visible,
html body .cta-on-image:active,
html body a.relative.z-10.bg-white.text-black.border.border-black:hover,
html body a.relative.z-10.bg-white.text-black.border.border-black:active {
  background: #000 !important;
  background-color: #000 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  border-color: #000 !important;
}


/* —— Pass 20260802o5 — CTA hover specificity beats .uppercase.bg-white base —— */
html body a.cta-on-image.uppercase.bg-white:hover,
html body a.cta-on-image.uppercase.bg-white:focus-visible,
html body a.cta-on-image.uppercase.bg-white:active,
html body a.cta-on-image.uppercase.bg-black:hover,
html body a.cta-on-image.uppercase.bg-black:active,
html body a.cta-on-image.bg-white:hover,
html body a.cta-on-image.bg-white:active,
html body a.relative.z-10.bg-white.text-black.border.border-black:hover,
html body a.relative.z-10.bg-white.text-black.border.border-black:active,
html body .flex.flex-col.sm\:flex-row:has(> .cta-on-image) > .cta-on-image:hover,
html body .flex.flex-col.sm\:flex-row:has(> .cta-on-image) > .cta-on-image:active,
html body div.flex.flex-col.sm\:flex-row.items-center.justify-center.gap-3.w-auto > .cta-on-image:hover,
html body div.flex.flex-col.sm\:flex-row.items-center.justify-center.gap-3.w-auto > .cta-on-image:active {
  background: #000 !important;
  background-color: #000 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  border-color: #000 !important;
}


/* —— Pass 20260802p — robust chrome; CTA +8px; discover scroll; mobile-nav; newsletter pad —— */

/* ROBUST: announcement + header under overlays — never force-show scrolled-off promo */
html body.newsletter-open:not(.overlay-promo-was-off) .site-promo,
html body.mobile-nav-open .site-promo,
html body.site-drawer-open .site-promo,
html body.mega-open .site-promo,
html.newsletter-open:not(.overlay-promo-was-off) .site-promo,
html.mobile-nav-open .site-promo {
  position: relative !important;
  z-index: 80 !important;
  pointer-events: none !important;
  background: #fff !important;
}
html body.newsletter-open .site-header:not(.is-header-off),
html body.newsletter-open header.site-header:not(.is-header-off),
html body.mobile-nav-open .site-header:not(.is-header-off),
html body.mobile-nav-open header.site-header:not(.is-header-off),
html body.site-drawer-open .site-header:not(.is-header-off),
html body.site-drawer-open header.site-header:not(.is-header-off),
html.newsletter-open .site-header:not(.is-header-off),
html.mobile-nav-open .site-header:not(.is-header-off) {
  pointer-events: none !important;
  z-index: 90 !important;
}
html body.newsletter-open .site-header.is-header-off,
html body.mobile-nav-open .site-header.is-header-off,
html body.site-drawer-open .site-header.is-header-off,
html body.mega-open .site-header.is-header-off,
html body.overlay-header-was-hidden .site-header,
html.overlay-header-was-hidden body .site-header {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transform: translate3d(0, -120%, 0) !important;
  translate: 0 -120% !important;
  --tw-translate-y: -120% !important;
  z-index: 90 !important;
  background: transparent !important;
}

/* Overlays sit BELOW chrome — never cover announcement/header */
html body.newsletter-open .site-newsletter__backdrop,
html body.newsletter-open .site-newsletter__backdrop.is-open,
html.newsletter-open .site-newsletter__backdrop,
html body .site-newsletter__backdrop.is-open {
  top: var(--header-bottom, 96px) !important;
  right: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  inset: var(--header-bottom, 96px) 0 0 0 !important;
  z-index: 13000 !important;
  height: auto !important;
}
html body.newsletter-open .site-newsletter,
html.newsletter-open .site-newsletter {
  top: var(--header-bottom, 96px) !important;
  height: calc(100dvh - var(--header-bottom, 96px)) !important;
  max-height: calc(100dvh - var(--header-bottom, 96px)) !important;
  z-index: 13010 !important;
  pointer-events: auto !important;
}
html body:not(.newsletter-open):not(.newsletter-closing) .site-newsletter {
  pointer-events: none !important;
}
html body:not(.newsletter-open) .site-newsletter__backdrop,
html body .site-newsletter__backdrop.is-closed,
html body .site-newsletter__backdrop.pointer-events-none {
  pointer-events: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
}

html body.mobile-nav-open .mobile-nav__backdrop,
html body.mobile-nav-open .site-dim.mobile-nav__backdrop,
html.mobile-nav-open .mobile-nav__backdrop {
  top: var(--header-bottom, 96px) !important;
  inset: var(--header-bottom, 96px) 0 0 0 !important;
  z-index: 13000 !important;
}
html body.mobile-nav-open .mobile-nav,
html.mobile-nav-open .mobile-nav,
html body .mobile-nav.is-open {
  top: var(--header-bottom, 96px) !important;
  z-index: 13010 !important;
}

html body.site-drawer-open .site-drawer__backdrop,
html body.site-drawer-open .site-drawer__backdrop.is-open {
  top: var(--header-bottom, 96px) !important;
  inset: var(--header-bottom, 96px) 0 0 0 !important;
  z-index: 13000 !important;
}

/* Newsletter sidebar padding (fix flush edge) */
html body .site-newsletter__header {
  padding: 1.25rem 1.5rem 0.85rem !important;
  box-sizing: border-box !important;
}
html body .site-newsletter__body {
  padding: 0.5rem 1.5rem 2rem !important;
  box-sizing: border-box !important;
}
html body .site-newsletter__actions {
  padding-left: 0 !important;
  padding-right: 0 !important;
}
@media (min-width: 768px) {
  html body .site-newsletter__header {
    padding: 1.5rem 2rem 1rem !important;
  }
  html body .site-newsletter__body {
    padding: 0.75rem 2rem 2.5rem !important;
  }
}

/* Kill huge empty grey under footer when overlays lock scroll */
html body.newsletter-open,
html body.newsletter-closing,
html.newsletter-open body {
  background: #fff !important;
}
html body.newsletter-open .site-footer,
html body.newsletter-open #footer-container {
  background: #fff !important;
  padding-bottom: 0 !important;
  min-height: 0 !important;
  margin-bottom: 0 !important;
}

@media (max-width: 767px) {
  :root { --page-gutter: 14px; }

  /* CTA width +8px on mobile */
  html body a.cta-on-image,
  html body a.cta-on-image.uppercase.bg-white,
  html body button.cta-on-image,
  html body .cta-on-image {
    padding-left: calc(1.25rem + 4px) !important;
    padding-right: calc(1.25rem + 4px) !important;
  }

  /* Discover / 404: horizontal slidable like Trade Services */
  html body .site-discover__grid,
  html body .site-discover__grid--scroll,
  html body .page-404__grid.site-discover__grid--scroll,
  html body .page-404__grid {
    display: flex !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-snap-type: x mandatory !important;
    -webkit-overflow-scrolling: touch !important;
    gap: 2px !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
    grid-template-columns: none !important;
  }
  html body .site-discover__grid .site-discover__card,
  html body .site-discover__grid--scroll .site-discover__card,
  html body .page-404__grid .page-404__card,
  html body .page-404__grid .site-discover__card {
    flex: 0 0 85% !important;
    width: 85% !important;
    max-width: 85% !important;
    scroll-snap-align: start !important;
  }
  html body .site-discover,
  html body .page-404__discover {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  html body .site-discover__title,
  html body .page-404__discover-title {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  /* Mobile nav — Bottega match */
  html body .mobile-nav,
  html body .mobile-nav.is-open {
    background: #fff !important;
  }
  html body .mobile-nav__panel {
    padding: 1.35rem 14px 2rem !important;
    box-sizing: border-box !important;
  }
  html body .mobile-nav ul.flex.flex-col {
    gap: 1.35rem !important;
  }
  html body .mobile-nav__item,
  html body .mobile-nav a.mobile-nav__item {
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif !important;
    font-size: 15px !important;
    font-weight: 400 !important;
    letter-spacing: -0.20px !important;
    color: #111 !important;
    padding: 0 !important;
  }
  html body .mobile-nav__item svg {
    width: 14px !important;
    height: 14px !important;
    stroke-width: 1.25 !important;
    flex-shrink: 0 !important;
    margin-left: auto !important;
  }
  html body .mobile-nav .mt-auto,
  html body .mobile-nav__panel .mt-auto {
    margin-top: auto !important;
    padding-top: 2.5rem !important;
    gap: 0.85rem !important;
  }
  html body .mobile-nav .mt-auto a,
  html body .mobile-nav .mt-auto div {
    font-size: 13px !important;
    font-weight: 400 !important;
    color: #888 !important;
    letter-spacing: -0.20px !important;
  }
  html body .mobile-nav .mt-auto .underline {
    text-underline-offset: 3px !important;
  }

  /* Trade cards gutter consistency */
  html body .site-home-cards {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
}

@media (min-width: 768px) {
  html body .site-discover__grid,
  html body .site-discover__grid--scroll,
  html body .page-404__grid {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    overflow: visible !important;
    scroll-snap-type: none !important;
  }
  html body .site-discover__grid .site-discover__card,
  html body .page-404__grid .page-404__card {
    flex: none !important;
    width: auto !important;
    max-width: none !important;
  }
}


/* —— Pass 20260802p2 — CTA +8px total width on mobile —— */
@media (max-width: 767px) {
  html body a.cta-on-image,
  html body a.cta-on-image.uppercase.bg-white,
  html body a.cta-on-image.uppercase.bg-black,
  html body button.cta-on-image,
  html body .cta-on-image,
  html body a.relative.z-10.bg-white.text-black.border.border-black,
  html body .flex.flex-col.sm\:flex-row:has(> .cta-on-image) > .cta-on-image,
  html body div.flex.flex-col.sm\:flex-row.items-center.justify-center.gap-3.w-auto > .cta-on-image {
    box-sizing: content-box !important;
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    padding-left: calc(1.1rem + 4px) !important;
    padding-right: calc(1.1rem + 4px) !important;
  }
  html body .absolute.bottom-10 > .flex:has(> .cta-on-image),
  html body .site-home-hero__content > .flex:has(> .cta-on-image),
  html body div.flex.flex-col.sm\:flex-row.items-center.justify-center.gap-3.w-auto,
  html body .flex.flex-col.sm\:flex-row:has(> .cta-on-image) {
    width: max-content !important;
    align-items: stretch !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  html body .absolute.bottom-10 > .flex:has(> .cta-on-image) > .cta-on-image,
  html body .site-home-hero__content > .flex:has(> .cta-on-image) > .cta-on-image,
  html body div.flex.flex-col.sm\:flex-row.items-center.justify-center.gap-3.w-auto > .cta-on-image {
    width: auto !important;
    align-self: stretch !important;
    /* stretch equalizes; pad +8 vs old 1.1rem sides */
    box-sizing: border-box !important;
    padding-left: calc(1.1rem + 4px) !important;
    padding-right: calc(1.1rem + 4px) !important;
  }
}


/* —— Pass 20260802p4 — CTA stack min-width +8px —— */
@media (max-width: 767px) {
  html body .absolute.bottom-10 > .flex:has(> .cta-on-image),
  html body .site-home-hero__content > .flex:has(> .cta-on-image),
  html body div.flex.flex-col.sm\:flex-row.items-center.justify-center.gap-3.w-auto,
  html body .flex.flex-col.sm\:flex-row:has(> .cta-on-image) {
    min-width: min(100%, calc(11.5rem + 8px)) !important;
    width: max-content !important;
  }
  html body a.cta-on-image,
  html body .flex.flex-col.sm\:flex-row:has(> .cta-on-image) > .cta-on-image,
  html body div.flex.flex-col.sm\:flex-row.items-center.justify-center.gap-3.w-auto > .cta-on-image {
    width: 100% !important;
    box-sizing: border-box !important;
    padding-left: calc(1.1rem + 4px) !important;
    padding-right: calc(1.1rem + 4px) !important;
  }
}


/* —— Pass 20260802q — restore clickable header + no rubber-band scroll —— */

/* Default scroll: no iOS/mac rubber-band bounce */
html,
body,
#root {
  overscroll-behavior: none !important;
  overscroll-behavior-y: none !important;
  overscroll-behavior-x: none !important;
}

/* Header + promo always receive clicks (unless settings modal pins them away) */
html body .site-header,
html body header.site-header,
html body .site-promo,
html.cookie-pending .site-header,
html.cookie-pending header.site-header,
html.cookie-pending .site-promo,
html body.cookie-pending .site-header,
html body.cookie-pending header.site-header,
html body.cookie-pending .site-promo {
  pointer-events: auto !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/* Cookie banner pending: do NOT re-enable bounce; keep page usable under banner */
html.cookie-pending,
html.cookie-pending body,
body.cookie-pending {
  overscroll-behavior: none !important;
  overscroll-behavior-y: none !important;
  touch-action: pan-y !important;
  overflow: visible !important;
  overflow-x: clip !important;
}
/* Kill full-viewport transparent click blocker that ate header/page clicks */
html.cookie-pending body::before {
  display: none !important;
  content: none !important;
  pointer-events: none !important;
}

/* Cookie settings modal: lock scroll, no bounce; chrome stays visible but non-interactive under dim */
html.cookie-settings-open,
html.cookie-settings-open body,
body.cookie-settings-open {
  overflow: hidden !important;
  overscroll-behavior: none !important;
  touch-action: none !important;
}

/* Closed dims never steal clicks even if opacity leftover */
html body .site-newsletter__backdrop.is-closed,
html body .mobile-nav__backdrop.is-closed,
html body .site-dim.is-closed,
html body .site-mega__backdrop.is-closed {
  pointer-events: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
}

/* Closed mobile nav off interaction */
html body .mobile-nav.is-closed {
  pointer-events: none !important;
}


/* —— Pass 20260803a — mega under header (no promo cover/cutout); footer 400; bold 500; cookie dim full —— */

/* Cookie: dim must cover the ENTIRE site (full viewport) while banner is visible */
html.cookie-pending .cookie-dim,
html body.cookie-pending .cookie-dim,
html.cookie-pending #cookie-overlay,
html.cookie-pending .cookie-overlay,
.cookie-dim {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  position: fixed !important;
  inset: 0 !important;
  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 100dvh !important;
  z-index: 13040 !important;
  background: rgba(0, 0, 0, 0.42) !important;
  pointer-events: auto !important;
}
html.cookie-pending body::before,
html body.cookie-pending::before {
  display: none !important;
  content: none !important;
  pointer-events: none !important;
}
html.cookie-pending .cookie-banner,
html.cookie-pending #cookie-banner,
html body.cookie-pending .cookie-banner,
html body.cookie-pending #cookie-banner {
  z-index: 13055 !important;
  pointer-events: auto !important;
}
/* Chrome sits under the dim while cookie is pending */
html.cookie-pending .site-header,
html.cookie-pending header.site-header,
html.cookie-pending .site-promo,
html body.cookie-pending .site-header,
html body.cookie-pending header.site-header,
html body.cookie-pending .site-promo {
  z-index: 12000 !important;
  pointer-events: none !important;
}

/* Mega: flush under live header bottom; never cover announcement; never clip on scroll */
html body.mega-open .site-promo,
html body.mega-promo-visible .site-promo {
  position: relative !important;
  z-index: 14050 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transform: none !important;
  translate: none !important;
  background: #000 !important;
  color: #fff !important;
}
html body.mega-open .site-header,
html body.mega-open header.site-header {
  position: sticky !important;
  top: 0 !important;
  transform: none !important;
  translate: none !important;
  --tw-translate-y: 0 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  z-index: 14040 !important;
  background: #fff !important;
}
html body.mega-open .site-mega,
html body.mega-open .site-mega.site-mega--open,
html body .site-mega.site-mega--open {
  position: fixed !important;
  top: var(--header-bottom, 96px) !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  max-width: 100vw !important;
  height: auto !important;
  max-height: none !important;
  overflow: visible !important;
  overflow-x: visible !important;
  overflow-y: visible !important;
  clip: auto !important;
  clip-path: none !important;
  -webkit-clip-path: none !important;
  z-index: 13020 !important;
  margin-top: 0 !important;
  border-top: none !important;
  box-shadow: none !important;
}
html body.mega-open .site-mega__inner,
html body.mega-open .site-mega__grid,
html body.mega-open .site-mega__card,
html body.mega-open .site-mega__list {
  overflow: visible !important;
  max-height: none !important;
  clip-path: none !important;
  -webkit-clip-path: none !important;
}
html body.mega-open .site-mega__backdrop,
html body.mega-open .site-mega__backdrop.is-open,
html body .site-mega__backdrop.is-open {
  top: var(--header-bottom, 96px) !important;
  right: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  inset: var(--header-bottom, 96px) 0 0 0 !important;
  height: auto !important;
  z-index: 13010 !important;
}
/* Kill upward bridge that can visually bite into chrome */
html body.mega-open .site-mega--open::before,
html body .site-mega.site-mega--open::before {
  top: 0 !important;
  height: 0 !important;
  content: none !important;
}
html body.mega-open,
html body.mega-open #root {
  overflow-x: clip !important;
}

/* Footer: ALL text 400 */
html body .site-footer,
html body .site-footer *,
html body .site-footer a,
html body .site-footer button,
html body .site-footer li,
html body .site-footer p,
html body .site-footer span,
html body .site-footer input,
html body .site-footer label,
html body .site-footer h4,
html body .site-footer__title,
html body .site-footer .site-footer__title,
html body .site-footer__store-title,
html body .site-footer__accordion-label,
html body .site-footer__accordion-btn,
html body .site-footer__copy,
html body .site-footer__copyright,
html body .site-footer__copyright--mobile,
html body .site-footer__find-store,
html body .site-footer__locale,
html body .site-footer__mobile,
html body .site-footer__mobile *,
html body .site-footer__mobile a,
html body .site-footer__mobile p,
html body .site-footer__mobile li,
html body .site-footer__mobile span,
html body .site-footer__mobile h4,
html body .site-footer__mobile .site-footer__accordion-btn,
html body .site-footer__mobile button.accordion-btn,
html body .site-footer .font-semibold,
html body .site-footer .font-bold,
html body .site-footer .font-medium,
html body .site-footer__mobile .font-semibold,
html body .site-footer__mobile .font-bold,
html body .site-footer__mobile .font-medium {
  font-weight: 500;
}

/* Sitewide bold/semibold/medium: 500 not 600 (outside footer) */
html body .font-semibold,
html body .font-bold,
html body .font-medium,
html body .site-home-card__label,
html body .site-section__title,
html body .site-discover__title,
html body .site-discover__label,
html body .page-404__discover-title,
html body .page-404__card-label,
html body .site-main-stack .site-home-cards .uppercase,
html body .site-mega__title,
html body .site-mega__card--main .site-mega__title,
html body strong,
html body b {
  font-weight: 500 !important;
}
html body [style*="font-weight: 500"],
html body [style*="font-weight: 500"],
html body [style*="font-weight: 500"],
html body [style*="font-weight: 500"] {
  font-weight: 500 !important;
}


/* —— Pass 20260803b — drawer overlays cover header; mega no hairline; cookie lock —— */

/* Drawers / newsletter / mobile-nav: FULL viewport dim over header + promo */
html body.newsletter-open .site-newsletter__backdrop,
html body.newsletter-open .site-newsletter__backdrop.is-open,
html.newsletter-open .site-newsletter__backdrop,
html body .site-newsletter__backdrop.is-open,
html body.site-drawer-open .site-drawer__backdrop,
html body.site-drawer-open .site-drawer__backdrop.is-open,
html body.mobile-nav-open .mobile-nav__backdrop,
html body.mobile-nav-open .site-dim.mobile-nav__backdrop,
html.mobile-nav-open .mobile-nav__backdrop,
html.cookie-settings-open .cookie-settings-root {
  position: fixed !important;
  inset: 0 !important;
  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 100dvh !important;
  z-index: 13040 !important;
  background: rgba(0, 0, 0, 0.42) !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
}

/* Panels sit above the dim, full height from top */
html body.newsletter-open .site-newsletter,
html.newsletter-open .site-newsletter,
html body.site-drawer-open .site-drawer,
html body.mobile-nav-open .mobile-nav,
html.mobile-nav-open .mobile-nav,
html body .mobile-nav.is-open {
  top: 0 !important;
  height: 100dvh !important;
  max-height: 100dvh !important;
  z-index: 13055 !important;
  pointer-events: auto !important;
}
html.cookie-settings-open .cookie-settings {
  z-index: 13060 !important;
}

/* Header / promo UNDER the dim while these overlays are open */
html body.newsletter-open .site-header,
html body.newsletter-open header.site-header,
html body.newsletter-open .site-promo,
html.newsletter-open .site-header,
html.newsletter-open .site-promo,
html body.site-drawer-open .site-header,
html body.site-drawer-open header.site-header,
html body.site-drawer-open .site-promo,
html body.mobile-nav-open .site-header,
html body.mobile-nav-open header.site-header,
html body.mobile-nav-open .site-promo,
html.mobile-nav-open .site-header,
html.mobile-nav-open .site-promo,
html.cookie-settings-open .site-header,
html.cookie-settings-open header.site-header,
html.cookie-settings-open .site-promo,
html body.cookie-settings-open .site-header,
html body.cookie-settings-open header.site-header,
html body.cookie-settings-open .site-promo {
  z-index: 12000 !important;
  pointer-events: none !important;
}
/* Keep hamburger/close usable above mobile-nav dim */
html body.mobile-nav-open .header-util--menu,
html.mobile-nav-open .header-util--menu {
  pointer-events: auto !important;
  position: relative !important;
  z-index: 13060 !important;
}

/* Mega: tuck 1px under header to kill hairline gap; still below promo */
html body.mega-open .site-mega,
html body.mega-open .site-mega.site-mega--open,
html body .site-mega.site-mega--open {
  top: max(0px, calc(var(--header-bottom, 96px) - 0px)) !important;
  margin-top: 0 !important;
  border-top: none !important;
  box-shadow: none !important;
}
html body.mega-open .site-header,
html body.mega-open header.site-header {
  z-index: 14040 !important;
  pointer-events: auto !important;
  box-shadow: none !important;
  border-bottom: none !important;
}
html body.mega-open .site-promo,
html body.mega-promo-visible .site-promo {
  z-index: 14050 !important;
  pointer-events: auto !important;
  background: #000 !important;
}

/* Cookie settings: no scroll jump; banner stays under modal dim */
html.cookie-settings-open,
html.cookie-settings-open body,
body.cookie-settings-open {
  overflow: hidden !important;
  overscroll-behavior: none !important;
}
html.cookie-settings-open .cookie-banner,
html.cookie-settings-open #cookie-banner,
html body.cookie-settings-open .cookie-banner {
  z-index: 12045 !important;
  pointer-events: none !important;
}


/* —— Pass 20260803d — no jump / no padding when overlays lock scroll —— */
html.cookie-settings-open,
html.cookie-settings-open body,
body.cookie-settings-open,
html.site-drawer-open,
html.site-drawer-open body,
body.site-drawer-open,
html.mobile-nav-open,
html.mobile-nav-open body,
body.mobile-nav-open,
html.overflow-hidden,
body.overflow-hidden {
  /* Lock scroll only — never shift layout with padding or fixed body */
  overflow: hidden !important;
  padding-right: 0 !important;
  padding-bottom: 0 !important;
  margin-right: 0 !important;
  width: auto !important;
  max-width: 100% !important;
}
/* Newsletter: keep sticky chrome (PLP strip) — JS wheel-lock only, no overflow:hidden */
html.newsletter-open,
html.newsletter-open body,
body.newsletter-open {
  overflow: visible !important;
  overflow-x: clip !important;
  overflow-y: visible !important;
  padding-right: 0 !important;
  padding-bottom: 0 !important;
  margin-right: 0 !important;
  width: auto !important;
  max-width: 100% !important;
}
html.cookie-settings-open body,
body.cookie-settings-open,
html.newsletter-open body,
body.newsletter-open,
html.site-drawer-open body,
body.site-drawer-open {
  position: static !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
}
/* Cookie banner must not invent bottom page padding while settings/drawers open */
html.cookie-settings-open .cookie-banner,
html.cookie-settings-open #cookie-banner,
html body.cookie-settings-open .cookie-banner,
html.newsletter-open .cookie-banner,
html.site-drawer-open .cookie-banner {
  /* stays fixed overlay; doesn't push page */
  position: fixed !important;
}
html.cookie-settings-open .site-footer,
html.newsletter-open .site-footer,
html.site-drawer-open .site-footer,
html.cookie-settings-open #root,
html.newsletter-open #root,
html.site-drawer-open #root {
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
}


/* —— Pass 20260803e — keep sticky intact: no overflow:hidden on page when overlays open —— */
html.cookie-settings-open,
html.cookie-settings-open body,
body.cookie-settings-open,
html.newsletter-open,
html.newsletter-open body,
body.newsletter-open,
html.site-drawer-open,
html.site-drawer-open body,
body.site-drawer-open,
html.mobile-nav-open,
html.mobile-nav-open body,
body.mobile-nav-open,
html.cookie-pending,
html.cookie-pending body,
body.cookie-pending {
  overflow: visible !important;
  overflow-x: clip !important;
  padding-right: 0 !important;
  padding-bottom: 0 !important;
  margin-right: 0 !important;
  position: static !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  width: auto !important;
  height: auto !important;
  max-height: none !important;
}
/* Modals/drawers themselves still scroll internally */
html.cookie-settings-open .cookie-settings,
html.cookie-settings-open .cookie-settings__body,
html.cookie-settings-open .cookie-settings__nav,
html.cookie-settings-open .cookie-settings__panel,
html.newsletter-open .site-newsletter,
html.newsletter-open .site-newsletter__body,
html.site-drawer-open .site-drawer,
html.mobile-nav-open .mobile-nav,
html.mobile-nav-open .mobile-nav__panel {
  overflow-y: auto !important;
}


/* —— Pass 20260803f — restore exact page scroll/box model when overlays open —— */
/* Earlier passes forced overflow/position and collapsed ~11px of page height. */
html.cookie-settings-open,
html.newsletter-open,
html.site-drawer-open,
html.mobile-nav-open,
html.cookie-pending,
html.overflow-hidden {
  overflow-x: clip !important;
  overflow-y: scroll !important;
  position: static !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  width: auto !important;
  height: 100% !important;
  max-height: none !important;
  padding-right: 0 !important;
  padding-bottom: 0 !important;
  margin-right: 0 !important;
  overscroll-behavior: none !important;
}
html.cookie-settings-open body,
body.cookie-settings-open,
html.newsletter-open body,
body.newsletter-open,
html.site-drawer-open body,
body.site-drawer-open,
html.mobile-nav-open body,
body.mobile-nav-open,
html.cookie-pending body,
body.cookie-pending,
html.overflow-hidden body,
body.overflow-hidden {
  overflow-x: clip !important;
  overflow-y: visible !important;
  position: relative !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  max-height: none !important;
  min-height: 100% !important;
  padding-right: 0 !important;
  padding-bottom: 0 !important;
  margin-right: 0 !important;
  overscroll-behavior: none !important;
}


/* —— Pass 20260803g — never strip page/footer padding when overlays open —— */
html.cookie-settings-open,
html.newsletter-open,
html.site-drawer-open,
html.mobile-nav-open,
html.cookie-pending {
  overflow-x: clip !important;
  overflow-y: scroll !important;
}
html.cookie-settings-open body,
body.cookie-settings-open,
html.newsletter-open body,
body.newsletter-open,
html.site-drawer-open body,
body.site-drawer-open,
html.mobile-nav-open body,
body.mobile-nav-open,
html.cookie-pending body,
body.cookie-pending {
  overflow-x: clip !important;
  overflow-y: visible !important;
  position: relative !important;
  width: 100% !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
}
/* Cancel padding-bottom:0 from older overlay passes — restore Tailwind pb-* */
html.cookie-settings-open .site-footer.pb-4,
html.newsletter-open .site-footer.pb-4,
html.site-drawer-open .site-footer.pb-4,
html.mobile-nav-open .site-footer.pb-4,
html.cookie-settings-open body .site-footer.pb-4,
html.newsletter-open body .site-footer.pb-4 {
  /* Match computed closed-state footer padding */
  padding-bottom: 9px !important;
}
html.cookie-settings-open .site-footer.pb-6,
html.newsletter-open .site-footer.pb-6,
html.site-drawer-open .site-footer.pb-6,
html.mobile-nav-open .site-footer.pb-6,
html.cookie-settings-open body .site-footer.pb-6,
html.newsletter-open body .site-footer.pb-6 {
  padding-bottom: 1.5rem !important;
}
html.cookie-settings-open #root,
html.newsletter-open #root,
html.site-drawer-open #root,
html.cookie-settings-open body,
html.newsletter-open body,
html.site-drawer-open body {
  padding-bottom: 0 !important; /* body/root themselves stay unpadded */
  margin-bottom: 0 !important;
}


/* —— Pass 20260803i — mobile under header; search clip/scrollbar; link weight; NL jump —— */

/* Mobile nav: under header again (undo full-bleed cover) */
html body.mobile-nav-open .mobile-nav,
html.mobile-nav-open .mobile-nav,
html body .mobile-nav.is-open,
html body.mobile-nav-open .mobile-nav.is-open {
  top: var(--header-bottom, 96px) !important;
  bottom: 0 !important;
  height: auto !important;
  max-height: none !important;
  z-index: 13010 !important;
}
html body.mobile-nav-open .mobile-nav__backdrop,
html body.mobile-nav-open .site-dim.mobile-nav__backdrop,
html.mobile-nav-open .mobile-nav__backdrop {
  top: var(--header-bottom, 96px) !important;
  inset: var(--header-bottom, 96px) 0 0 0 !important;
  height: auto !important;
  z-index: 13000 !important;
}
html body.mobile-nav-open .site-header,
html body.mobile-nav-open header.site-header,
html body.mobile-nav-open .site-promo,
html.mobile-nav-open .site-header,
html.mobile-nav-open .site-promo {
  z-index: 14040 !important;
  pointer-events: auto !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/* Nav links: don't thin after underline animation */
html body .site-nav__link,
html body .site-nav__link--underline,
html body .link-line,
html body .site-mega__title,
html body .site-mega__link,
html body a.link-line {
  font-weight: 500 !important;
  -webkit-font-smoothing: antialiased !important;
  -moz-osx-font-smoothing: grayscale !important;
  text-rendering: geometricPrecision !important;
  transform: none !important;
  filter: none !important;
  opacity: 1 !important;
}
html body .site-nav__link:hover,
html body .site-nav__link:focus-visible,
html body .site-nav__link:active,
html body .link-line:hover,
html body .link-line:focus-visible,
html body .site-nav__item.is-open > .site-nav__link {
  font-weight: 500 !important;
  opacity: 1 !important;
  -webkit-font-smoothing: antialiased !important;
  filter: none !important;
  transform: none !important;
}
/* Keep underline draw on ::after only — never paint-transform the text */
html body .site-nav__link--underline::after,
html body .link-line::after {
  will-change: transform;
  backface-visibility: hidden;
}

/* Search: hide scrollbar + stop title cutout */
html body .site-search__body,
html body.site-search-open .site-search__body {
  scrollbar-width: none !important;
  -ms-overflow-style: none !important;
  padding-bottom: 2.5rem !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
}
html body .site-search__body::-webkit-scrollbar {
  width: 0 !important;
  height: 0 !important;
  display: none !important;
}
html body .site-search__result,
html body .site-search__most-card {
  overflow: visible !important;
}
html body .site-search__result-meta,
html body .site-search__result-title,
html body .site-search__most-label {
  overflow: visible !important;
  line-height: 1.35 !important;
  padding-top: 2px !important;
  padding-bottom: 4px !important;
  font-weight: 500 !important;
  clip-path: none !important;
  -webkit-clip-path: none !important;
}
html body .site-search__results,
html body .site-search__most-grid {
  padding-bottom: 1.25rem !important;
  overflow: visible !important;
}

/* Newsletter: keep footer padding stable (no jump) */
html.newsletter-open .site-footer.pb-4,
html body.newsletter-open .site-footer.pb-4 {
  padding-bottom: 9px !important;
}
html.newsletter-open body,
html body.newsletter-open {
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
}


/* —— Pass 20260803j — NL no-jump; link weight stable; search titles; mobile drill —— */

/* Newsletter: never kill sticky / never collapse footer (causes jump) */
html.newsletter-open,
html.newsletter-open body,
body.newsletter-open {
  overflow-x: clip !important;
  overflow-y: visible !important;
  position: relative !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  height: auto !important;
  max-height: none !important;
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
  isolation: auto !important;
}
/* 20260808eb: do not make html a scroll container (breaks PLP sticky strip) */
html.newsletter-open .site-footer,
html body.newsletter-open .site-footer,
body.newsletter-open .site-footer,
body.newsletter-open #footer-container {
  /* Match closed mobile footer (rem=12px → pb-4 overridden to 9px elsewhere) */
  padding-bottom: 9px !important;
}
html.newsletter-open .site-footer.pb-6,
html body.newsletter-open .site-footer.pb-6 {
  padding-bottom: 1.5rem !important;
}
html.newsletter-open .site-header,
html.newsletter-open header.site-header,
html body.newsletter-open .site-header,
html body.newsletter-open header.site-header {
  pointer-events: none !important;
  z-index: 90 !important;
}
html.newsletter-open:not(.overlay-promo-was-off) .site-promo,
html body.newsletter-open:not(.overlay-promo-was-off) .site-promo {
  position: relative !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  transform: none !important;
  background: #000 !important;
  color: #fff !important;
}
/* Full-bleed overlay (JS also sets inline) */
html.newsletter-open .site-newsletter__backdrop,
html body.newsletter-open .site-newsletter__backdrop {
  inset: 0 !important;
  top: 0 !important;
  z-index: 13040 !important;
}
html.newsletter-open .site-newsletter,
html body.newsletter-open .site-newsletter {
  top: 0 !important;
  height: 100dvh !important;
  max-height: 100dvh !important;
  z-index: 13055 !important;
}

/* Nav links: underline via background so text doesn't re-rasterize thinner */
html body .site-nav__link,
html body .site-nav__link--underline,
html body a.site-nav__link,
html body .link-line,
html body a.link-line {
  font-weight: 500 !important;
  -webkit-font-smoothing: antialiased !important;
  -moz-osx-font-smoothing: grayscale !important;
  text-rendering: geometricPrecision !important;
  font-synthesis: none !important;
  opacity: 1 !important;
  filter: none !important;
  transform: none !important;
  translate: none !important;
  scale: none !important;
  will-change: auto !important;
  transition: color 0.2s ease, background-size var(--link-line-duration, 0.55s) cubic-bezier(0.25, 1, 0.5, 1), background-position var(--link-line-duration, 0.55s) cubic-bezier(0.25, 1, 0.5, 1) !important;
}
html body .site-nav__link--underline,
html body a.site-nav__link--underline,
html body .link-line,
html body a.link-line {
  background-image: linear-gradient(currentColor, currentColor) !important;
  background-position: 100% calc(100% - 23px) !important;
  background-repeat: no-repeat !important;
  background-size: 0 1px !important;
}
html body .site-nav__link--underline:hover,
html body .site-nav__link--underline:focus-visible,
html body .site-nav__item.is-open > .site-nav__link--underline,
html body .group:hover > .site-nav__link--underline,
html body .link-line:hover,
html body .link-line:focus-visible,
html body .link-line.is-active,
html body a.link-line:hover {
  background-position: 0 calc(100% - 23px) !important;
  background-size: 100% 1px !important;
  font-weight: 500 !important;
  opacity: 1 !important;
}
/* Kill transform-based ::after underline (causes post-hover thinning) */
html body .site-nav__link--underline::after,
html body a.site-nav__link--underline::after,
html body .link-line::after,
html body a.link-line::after {
  content: none !important;
  display: none !important;
  transform: none !important;
  will-change: auto !important;
}
/* Cookie / footer link-lines sit on tighter text — pin underline to text bottom */
html body .cookie-banner .link-line,
html body .site-footer .link-line,
html body .site-search .link-line {
  background-position: 100% 100% !important;
}
html body .cookie-banner .link-line:hover,
html body .site-footer .link-line:hover,
html body .site-search .link-line:hover,
html body .cookie-banner .link-line:focus-visible,
html body .site-footer .link-line:focus-visible,
html body .site-search .link-line:focus-visible,
html body .site-search .link-line.is-active {
  background-position: 0 100% !important;
  background-size: 100% 1px !important;
}

/* Search: hide scrollbar + stop title cutout (ascenders/descenders) */
html body .site-search__body,
html body.site-search-open .site-search__body {
  scrollbar-width: none !important;
  -ms-overflow-style: none !important;
  padding-bottom: 3rem !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
}
html body .site-search__body::-webkit-scrollbar {
  width: 0 !important;
  height: 0 !important;
  display: none !important;
}
html body .site-search__most-grid,
html body .site-search__results,
html body .site-search__layout {
  overflow: visible !important;
  padding-bottom: 1.5rem !important;
}
html body .site-search__result,
html body .site-search__most-card {
  overflow: visible !important;
  gap: 0.7rem !important;
  align-items: stretch !important;
}
html body .site-search__most-media,
html body .site-search__result-media {
  overflow: hidden !important;
  flex: 0 0 auto !important;
}
html body .site-search__result-meta,
html body .site-search__result-title,
html body .site-search__most-label {
  overflow: visible !important;
  clip-path: none !important;
  -webkit-clip-path: none !important;
  line-height: 1.35 !important;
  padding-top: 0.15em !important;
  padding-bottom: 0.2em !important;
  margin: 0 !important;
  font-weight: 500 !important;
  min-height: 1.4em !important;
  height: auto !important;
  max-height: none !important;
  white-space: normal !important;
}

/* Mobile drill panel — Bottega-style grid under header */
html body .mobile-nav__panel--drill {
  padding: 1.25rem 1.25rem 2.5rem !important;
}
html body .mobile-nav__back {
  font-size: 15px !important;
  font-weight: 400 !important;
  letter-spacing: -0.20px !important;
}
html body .mobile-nav__drill-title {
  font-size: 22px !important;
  font-weight: 500 !important;
  letter-spacing: -0.2px !important;
  line-height: 1.35 !important;
}
html body .mobile-nav__drill-label {
  font-size: 13px !important;
  font-weight: 400 !important;
  line-height: 1.35 !important;
}
html body .mobile-nav__drill-grid {
  gap: 1.5rem 0.75rem !important;
}

/* —— Pass 20260803k — kill newsletter fixed-chrome (pass as) —— */
html body.newsletter-open .site-header:not(.is-header-off),
html body.newsletter-open header.site-header:not(.is-header-off),
html.newsletter-open:not(.overlay-header-was-hidden):not(.plp-strip-active) body .site-header:not(.is-header-off),
html.newsletter-open:not(.overlay-header-was-hidden):not(.plp-strip-active) body header.site-header:not(.is-header-off) {
  /* keep existing position — do NOT force sticky (covers PLP strip / jumps) */
  left: auto !important;
  right: auto !important;
  width: 100% !important;
}
html body.newsletter-open:not(.overlay-promo-was-off) .site-promo,
html.newsletter-open:not(.overlay-promo-was-off) body .site-promo {
  position: relative !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  width: auto !important;
  max-width: none !important;
}


/* —— Pass 20260803m — mobile slide RTL; promo visible; restore L→R underlines —— */

/* Drawer: slide in from right, slide out on close (override fade / transform:none) */
html body .mobile-nav,
html body .mobile-nav.is-open,
html body .mobile-nav.is-closed,
html body.mobile-nav-open .mobile-nav,
html.mobile-nav-open .mobile-nav {
  transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), visibility 0s linear 0s !important;
  will-change: transform;
}
html body .mobile-nav.is-open,
html body.mobile-nav-open .mobile-nav.is-open,
html body.mobile-nav-open .mobile-nav {
  transform: translateX(0) !important;
  translate: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
}
html body .mobile-nav.is-closed {
  transform: translateX(100%) !important;
  translate: none !important;
  opacity: 1 !important; /* keep opaque while sliding out */
  visibility: hidden !important;
  pointer-events: none !important;
  transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), visibility 0s linear 0.4s !important;
}
html body .mobile-nav__backdrop.is-open,
html body.mobile-nav-open .mobile-nav__backdrop {
  opacity: 1 !important;
  visibility: visible !important;
  transition: opacity 0.35s ease !important;
}
html body .mobile-nav__backdrop.is-closed {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transition: opacity 0.35s ease, visibility 0s linear 0.35s !important;
}

/* Stay under header; announcement + header stay visible above drawer */
html body.mobile-nav-open .mobile-nav,
html.mobile-nav-open .mobile-nav,
html body .mobile-nav.is-open {
  top: var(--header-bottom, 96px) !important;
  bottom: 0 !important;
  height: auto !important;
  max-height: none !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  z-index: 13010 !important;
}
html body.mobile-nav-open .mobile-nav__backdrop,
html body.mobile-nav-open .site-dim.mobile-nav__backdrop,
html.mobile-nav-open .mobile-nav__backdrop {
  top: var(--header-bottom, 96px) !important;
  inset: var(--header-bottom, 96px) 0 0 0 !important;
  height: auto !important;
  z-index: 13000 !important;
  background: rgba(0, 0, 0, 0.28) !important;
}
html body.mobile-nav-open .site-promo,
html.mobile-nav-open .site-promo {
  position: relative !important;
  z-index: 14055 !important;
  pointer-events: auto !important;
  opacity: 1 !important;
  visibility: visible !important;
  display: block !important;
  background: #000 !important;
  color: #fff !important;
}
html body.mobile-nav-open .site-header,
html body.mobile-nav-open header.site-header,
html.mobile-nav-open .site-header {
  z-index: 14050 !important;
  pointer-events: auto !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/* Inner panels: horizontal slide (Collections + Back) */
html body .mobile-nav__track {
  display: flex !important;
  width: 100% !important;
  height: 100% !important;
  will-change: transform;
}
html body .mobile-nav__panel {
  flex: 0 0 100% !important;
  min-width: 100% !important;
  width: 100% !important;
  box-sizing: border-box !important;
}
html body .mobile-nav__viewport {
  overflow: hidden !important;
}

/* Mobile menu type + spacing (match reference) */
html body .mobile-nav,
html body .mobile-nav * {
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif !important;
  letter-spacing: -0.20px !important;
}
html body .mobile-nav__panel {
  padding: 1.5rem 1.35rem 2.5rem !important;
}
html body .mobile-nav__row {
  gap: 0.75rem !important;
}
html body .mobile-nav ul.flex.flex-col {
  gap: 1.35rem !important;
}
html body .mobile-nav__item,
html body .mobile-nav__item-label,
html body .mobile-nav a.mobile-nav__item {
  font-size: 15px !important;
  font-weight: 400 !important;
  line-height: 1.35 !important;
  color: #111 !important;
  letter-spacing: -0.20px !important;
}
html body .mobile-nav__item-arrow {
  width: 28px !important;
  height: 28px !important;
  flex-shrink: 0 !important;
}
html body .mobile-nav__item-arrow svg,
html body .mobile-nav__item svg {
  width: 14px !important;
  height: 14px !important;
  stroke-width: 1.35 !important;
}
html body .mobile-nav__back {
  font-size: 15px !important;
  font-weight: 400 !important;
  letter-spacing: -0.20px !important;
  padding-bottom: 1.1rem !important;
  gap: 0.35rem !important;
}
html body .mobile-nav__drill-title {
  font-size: 22px !important;
  font-weight: 500 !important;
  letter-spacing: -0.2px !important;
  line-height: 1.35 !important;
  margin-bottom: 1.15rem !important;
}
html body .mobile-nav__drill-label {
  font-size: 13px !important;
  font-weight: 400 !important;
  line-height: 1.35 !important;
  letter-spacing: -0.20px !important;
}
html body .mobile-nav__drill-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 1.5rem 0.85rem !important;
}
html body .mobile-nav__drill-card {
  gap: 0.55rem !important;
}
html body .mobile-nav .mt-auto a,
html body .mobile-nav .mt-auto div {
  font-size: 13px !important;
  font-weight: 400 !important;
  color: #888 !important;
}

@media (min-width: 480px) {
  html body .mobile-nav__panel {
    padding: 1.75rem 1.75rem 2.75rem !important;
  }
  html body .mobile-nav__item,
  html body .mobile-nav__item-label {
    font-size: 15px !important;
  }
  html body .mobile-nav__drill-title {
    font-size: 24px !important;
  }
}

/* Restore classic L→R interactive underline (undo background hack) */
html body .site-nav__link,
html body .site-nav__link--underline,
html body a.site-nav__link,
html body .link-line,
html body a.link-line,
html body .site-mega__link,
html body a.site-mega__link,
html body .hover-underline-anim {
  background-image: none !important;
  background-size: auto !important;
  background-position: initial !important;
  font-weight: 500 !important;
  -webkit-font-smoothing: antialiased !important;
  -moz-osx-font-smoothing: grayscale !important;
  text-rendering: geometricPrecision !important;
  font-synthesis: none !important;
  opacity: 1 !important;
  filter: none !important;
  /* keep text off GPU layer thrash — only ::after transforms */
  transform: none !important;
  translate: none !important;
  scale: none !important;
  will-change: auto !important;
  transition: color 0.2s ease !important;
}
html body .site-mega__link,
html body a.site-mega__link {
  font-weight: 400 !important; /* dropdown links match prior weight */
}
html body .site-nav__link--underline::after,
html body a.site-nav__link--underline::after,
html body .link-line::after,
html body a.link-line::after,
html body .site-mega__link.link-line::after,
html body a.site-mega__link.link-line::after,
html body .hover-underline-anim::after {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  width: 100% !important;
  height: 1px !important;
  background-color: currentColor !important;
  background: currentColor !important;
  transform: scaleX(0) !important;
  transform-origin: 100% !important; /* rest: ready to draw L→R */
  transition: transform var(--link-line-duration, 0.55s) cubic-bezier(0.25, 1, 0.5, 1) !important;
  pointer-events: none !important;
  will-change: transform !important;
  backface-visibility: hidden !important;
  opacity: 1 !important;
}
html body .site-nav__link--underline::after,
html body a.site-nav__link--underline::after {
  bottom: 24px !important;
}
html body .link-line::after,
html body a.link-line::after,
html body .site-mega__link.link-line::after,
html body .hover-underline-anim::after {
  bottom: -1px !important;
}
html body .site-nav__link--underline:hover::after,
html body .site-nav__link--underline:focus-visible::after,
html body .site-nav__item.is-open > .site-nav__link--underline::after,
html body .group:hover > .site-nav__link--underline::after,
html body .link-line:hover::after,
html body .link-line:focus-visible::after,
html body .link-line.is-active::after,
html body .site-mega__link.link-line:hover::after,
html body .site-mega__link.link-line:focus-visible::after,
html body .hover-underline-anim:hover::after,
html body .hover-underline-anim:focus-visible::after {
  transform: scaleX(1) !important;
  transform-origin: 0% !important; /* draw left → right */
}
/* Ensure mega dropdown links keep link-line underline */
html body .site-mega__link {
  position: relative !important;
  display: inline-block !important;
  text-decoration: none !important;
}


/* —— Pass 20260803n — Bottega mobile type; no-fade close; mega no-zoom —— */

/* Drawer motion: transform ONLY — never fade opacity */
html body .mobile-nav,
html body .mobile-nav.is-open,
html body .mobile-nav.is-closed,
html body.mobile-nav-open .mobile-nav {
  opacity: 1 !important;
  transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), visibility 0s linear 0s !important;
}
html body .mobile-nav.is-open,
html body.mobile-nav-open .mobile-nav.is-open {
  transform: translateX(0) !important;
  visibility: visible !important;
  pointer-events: auto !important;
}
html body .mobile-nav.is-closed {
  transform: translateX(100%) !important;
  visibility: hidden !important;
  pointer-events: none !important;
  opacity: 1 !important;
  transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), visibility 0s linear 0.4s !important;
}
html body .mobile-nav__backdrop.is-open,
html body.mobile-nav-open .mobile-nav__backdrop {
  opacity: 1 !important;
  visibility: visible !important;
  transition: opacity 0.28s ease !important;
}
html body .mobile-nav__backdrop.is-closed {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transition: opacity 0.28s ease, visibility 0s linear 0.28s !important;
}

/* Bottega-matched mobile type + spacing (root list) */
html body .mobile-nav__panel {
  padding: 1.75rem 1.25rem 2.25rem !important;
}
html body .mobile-nav__list {
  gap: 1.15rem !important;
  display: flex !important;
  flex-direction: column !important;
}
html body .mobile-nav__item,
html body .mobile-nav__item-label {
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  line-height: 1.35 !important;
  letter-spacing: -0.20px !important;
  color: #111 !important;
}
html body .mobile-nav__item-arrow {
  width: 18px !important;
  height: 18px !important;
  margin-left: auto !important;
  flex-shrink: 0 !important;
}
html body .mobile-nav__item-arrow svg {
  width: 14px !important;
  height: 14px !important;
  stroke-width: 1.35 !important;
}
html body .mobile-nav__secondary {
  margin-top: auto !important;
  padding-top: 2.75rem !important;
  gap: 0.85rem !important;
}
html body .mobile-nav__secondary-link,
html body .mobile-nav__secondary-meta {
  font-size: 13px !important;
  font-weight: 400 !important;
  line-height: 1.35 !important;
  letter-spacing: -0.20px !important;
  color: #888 !important;
}
html body .mobile-nav__secondary-underline {
  text-decoration: underline !important;
  text-underline-offset: 3px !important;
  text-decoration-thickness: 1px !important;
  color: inherit !important;
  cursor: pointer !important;
}

/* Drill: Back + title + image grid (desktop mega columns) */
html body .mobile-nav__panel--drill {
  padding: 1.25rem 1.15rem 2.5rem !important;
}
html body .mobile-nav__back {
  font-size: 14px !important;
  font-weight: 400 !important;
  letter-spacing: -0.20px !important;
  padding: 0 0 1rem !important;
  gap: 0.3rem !important;
  color: #111 !important;
}
html body .mobile-nav__back-icon {
  width: 14px !important;
  height: 14px !important;
  stroke-width: 1.5 !important;
}
html body .mobile-nav__drill-title {
  /* Match Bottega "New" — prominent but not oversized */
  font-size: 18px !important;
  font-weight: 500 !important;
  letter-spacing: -0.2px !important;
  line-height: 1.35 !important;
  margin: 0 0 1.1rem !important;
  color: #111 !important;
  background: transparent !important;
  display: block !important;
  width: fit-content !important;
  padding: 0 !important;
}
html body .mobile-nav__drill-grid {
  gap: 1.35rem 0.7rem !important;
}
html body .mobile-nav__drill-card {
  gap: 0.45rem !important;
}
html body .mobile-nav__drill-label {
  font-size: 13px !important;
  font-weight: 400 !important;
  line-height: 1.35 !important;
  letter-spacing: -0.20px !important;
  color: #111 !important;
}

/* Mega dropdown links: keep L→R underline, kill text zoom/pop */
html body .site-mega__link,
html body a.site-mega__link,
html body .site-mega__title,
html body a.site-mega__title,
html body .site-mega__title.link-line,
html body .site-mega__link.link-line {
  transform: none !important;
  translate: none !important;
  scale: none !important;
  zoom: normal !important;
  letter-spacing: -0.20px !important;
  -webkit-font-smoothing: antialiased !important;
  -moz-osx-font-smoothing: grayscale !important;
  text-rendering: geometricPrecision !important;
  font-synthesis: none !important;
  filter: none !important;
  opacity: 1 !important;
  will-change: auto !important;
  backface-visibility: visible !important;
  transition: color 0.15s ease !important; /* never transition size/weight/transform */
}
html body .site-mega__link:hover,
html body .site-mega__link:focus-visible,
html body .site-mega__title:hover,
html body .site-mega__title:focus-visible,
html body .site-mega__link.link-line:hover,
html body .site-mega__title.link-line:hover {
  transform: none !important;
  scale: none !important;
  translate: none !important;
  filter: none !important;
  opacity: 1 !important;
  letter-spacing: -0.20px !important;
}
/* Underline layer only — isolate so text doesn't get promoted/pop */
html body .site-mega__link.link-line::after,
html body .site-mega__title.link-line::after,
html body a.site-mega__link.link-line::after,
html body a.site-mega__title.link-line::after {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  bottom: -1px !important;
  width: 100% !important;
  height: 1px !important;
  background: currentColor !important;
  transform: scaleX(0) !important;
  transform-origin: 100% !important;
  transition: transform var(--link-line-duration, 0.55s) cubic-bezier(0.25, 1, 0.5, 1) !important;
  pointer-events: none !important;
  will-change: transform !important;
  backface-visibility: hidden !important;
  /* keep underline on its own compositor layer without affecting glyph rasterization */
  isolation: isolate !important;
}
html body .site-mega__link.link-line:hover::after,
html body .site-mega__link.link-line:focus-visible::after,
html body .site-mega__title.link-line:hover::after,
html body .site-mega__title.link-line:focus-visible::after {
  transform: scaleX(1) !important;
  transform-origin: 0% !important;
}


/* —— Pass 20260803o — no page scroll under menu; site font sizes; mega no-zoom; no fade —— */

/* Page must not scroll under open mobile menu */
html.mobile-nav-open,
html.mobile-nav-open body,
body.mobile-nav-open {
  overscroll-behavior: none !important;
}
html.mobile-nav-open .mobile-nav__panel {
  overscroll-behavior: contain !important;
  -webkit-overflow-scrolling: touch !important;
  touch-action: pan-y !important;
}

/* Drawer: transform only — never fade open or close */
html body .mobile-nav,
html body .mobile-nav.is-open,
html body .mobile-nav.is-closed,
html body.mobile-nav-open .mobile-nav {
  opacity: 1 !important;
  transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1) !important;
}
html body .mobile-nav.is-open,
html body.mobile-nav-open .mobile-nav.is-open {
  transform: translateX(0) !important;
  visibility: visible !important;
  pointer-events: auto !important;
}
html body .mobile-nav.is-closed {
  transform: translateX(100%) !important;
  visibility: hidden !important;
  pointer-events: none !important;
  opacity: 1 !important;
  transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), visibility 0s linear 0.4s !important;
}
/* Backdrop: instant show/hide — no opacity fade */
html body .mobile-nav__backdrop.is-open,
html body.mobile-nav-open .mobile-nav__backdrop,
html body.mobile-nav-open .site-dim.mobile-nav__backdrop {
  opacity: 1 !important;
  visibility: visible !important;
  transition: none !important;
}
html body .mobile-nav__backdrop.is-closed {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transition: none !important;
}

/* Drawer fonts = site (nav 14px, body/footer 12px) */
html body .mobile-nav__item,
html body .mobile-nav__item-label,
html body .mobile-nav__back {
  font-size: 14px !important;
  font-weight: 500 !important;
  line-height: 1.35 !important;
  letter-spacing: -0.20px !important;
  color: #000 !important;
}
html body .mobile-nav__back {
  font-weight: 400 !important;
}
html body .mobile-nav__drill-title {
  font-size: 14px !important;
  font-weight: 500 !important;
  letter-spacing: -0.20px !important;
  line-height: 1.35 !important;
  margin: 0 0 1rem !important;
}
html body .mobile-nav__drill-label {
  font-size: 13px !important;
  font-weight: 400 !important;
  line-height: 1.35 !important;
  letter-spacing: -0.20px !important;
}
html body .mobile-nav__secondary-link,
html body .mobile-nav__secondary-meta {
  font-size: 13px !important;
  font-weight: 400 !important;
  line-height: 1.35 !important;
  letter-spacing: -0.20px !important;
  color: #888 !important;
}
@media (min-width: 768px) {
  html body .mobile-nav__item,
  html body .mobile-nav__item-label,
  html body .mobile-nav__back,
  html body .mobile-nav__drill-title {
    font-size: 14px !important;
  }
  html body .mobile-nav__drill-label,
  html body .mobile-nav__secondary-link,
  html body .mobile-nav__secondary-meta {
    font-size: 14px !important;
  }
}

/* Mega dropdown links: NO transform underline (transform causes glyph zoom/pop).
   Use background-size L→R draw instead — identical look, stable text. */
html body .site-mega a.site-mega__link,
html body .site-mega a.site-mega__title,
html body .site-mega .site-mega__link,
html body .site-mega .site-mega__title,
html body .site-mega .link-line.site-mega__link,
html body .site-mega .link-line.site-mega__title {
  position: relative !important;
  display: inline-block !important;
  transform: none !important;
  translate: none !important;
  scale: none !important;
  zoom: normal !important;
  filter: none !important;
  opacity: 1 !important;
  will-change: auto !important;
  backface-visibility: visible !important;
  -webkit-font-smoothing: antialiased !important;
  -moz-osx-font-smoothing: grayscale !important;
  text-rendering: geometricPrecision !important;
  font-synthesis: none !important;
  font-size: 14px !important;
  letter-spacing: -0.20px !important;
  line-height: 1.35 !important;
  background-image: linear-gradient(currentColor, currentColor) !important;
  background-position: 0 100% !important;
  background-repeat: no-repeat !important;
  background-size: 0 1px !important;
  transition: background-size var(--link-line-duration, 0.55s) cubic-bezier(0.25, 1, 0.5, 1) !important;
}
html body .site-mega a.site-mega__link:hover,
html body .site-mega a.site-mega__title:hover,
html body .site-mega a.site-mega__link:focus-visible,
html body .site-mega a.site-mega__title:focus-visible,
html body .site-mega .site-mega__link:hover,
html body .site-mega .site-mega__title:hover {
  transform: none !important;
  translate: none !important;
  scale: none !important;
  filter: none !important;
  opacity: 1 !important;
  font-size: 14px !important;
  letter-spacing: -0.20px !important;
  -webkit-font-smoothing: antialiased !important;
  background-size: 100% 1px !important;
  background-position: 0 100% !important;
}
/* Kill ::after on mega links — it was promoting a layer and zooming glyphs */
html body .site-mega .site-mega__link::after,
html body .site-mega .site-mega__title::after,
html body .site-mega a.site-mega__link::after,
html body .site-mega a.site-mega__title::after,
html body .site-mega .link-line.site-mega__link::after,
html body .site-mega .link-line.site-mega__title::after {
  content: none !important;
  display: none !important;
  transform: none !important;
  will-change: auto !important;
  transition: none !important;
}

/* Newsletter from footer: no layout jump */
html.newsletter-open,
html.newsletter-open body,
body.newsletter-open {
  scroll-behavior: auto !important;
}
html.newsletter-open .site-footer.pb-4,
html body.newsletter-open .site-footer.pb-4,
body.newsletter-open .site-footer {
  padding-bottom: 9px !important;
}


/* —— Pass 20260803r — mega smooth enter (inner) + weight lock; drawer cutout; collections=home gutters —— */

@keyframes xsample-mega-in {
  from {
    opacity: 0;
    transform: translateY(-12px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Smooth mega entrance (animate inner — panel keeps transform:none for flush positioning) */
html body .site-mega.site-mega--open,
html body.mega-open .site-mega.site-mega--open,
html body .site-mega--open {
  display: block !important;
}
html body .site-mega.site-mega--open .site-mega__inner,
html body.mega-open .site-mega--open .site-mega__inner {
  animation: xsample-mega-in 0.34s cubic-bezier(0.25, 1, 0.5, 1) both !important;
  transform-origin: top center !important;
}
html body .site-mega__backdrop.is-open,
html body.mega-open .site-mega__backdrop.is-open {
  animation: xsample-mega-dim-in 0.28s ease both !important;
}
@keyframes xsample-mega-dim-in {
  from { opacity: 0; }
  to { opacity: 1; }
}

/* Lock mega link weights — never change on hover */
html body .site-mega .site-mega__link,
html body .site-mega a.site-mega__link,
html body .site-mega .link-line.site-mega__link {
  font-weight: 400 !important;
  font-synthesis: none !important;
  -webkit-font-smoothing: antialiased !important;
  -moz-osx-font-smoothing: grayscale !important;
  transition: background-size var(--link-line-duration, 0.55s) cubic-bezier(0.25, 1, 0.5, 1) !important;
}
html body .site-mega .site-mega__title,
html body .site-mega a.site-mega__title,
html body .site-mega .link-line.site-mega__title {
  font-weight: 500 !important;
  font-synthesis: none !important;
  -webkit-font-smoothing: antialiased !important;
  -moz-osx-font-smoothing: grayscale !important;
  transition: background-size var(--link-line-duration, 0.55s) cubic-bezier(0.25, 1, 0.5, 1) !important;
}
html body .site-mega .site-mega__link:hover,
html body .site-mega .site-mega__link:focus-visible,
html body .site-mega .site-mega__link:active,
html body .site-mega a.site-mega__link:hover,
html body .site-mega a.site-mega__link:focus-visible,
html body .site-mega .link-line.site-mega__link:hover,
html body .site-mega a.link-line.site-mega__link:hover,
html body .site-mega .link-line:hover {
  font-weight: 400 !important;
  font-size: 14px !important;
  letter-spacing: -0.20px !important;
  -webkit-font-smoothing: antialiased !important;
  transform: none !important;
  scale: none !important;
}
html body .site-mega .site-mega__title:hover,
html body .site-mega .site-mega__title:focus-visible,
html body .site-mega a.site-mega__title:hover,
html body .site-mega .link-line.site-mega__title:hover,
html body .site-mega a.link-line.site-mega__title:hover {
  font-weight: 500 !important;
  font-size: 14px !important;
  letter-spacing: -0.20px !important;
  -webkit-font-smoothing: antialiased !important;
  transform: none !important;
  scale: none !important;
}
/* Mega titles stay 500; list links stay 400 — beat global link-line:hover 500 */
html body .site-mega .site-mega__link.link-line,
html body .site-mega a.site-mega__link.link-line {
  font-weight: 400 !important;
}

/* Mobile drawer: kill text/title cutout */
html body .mobile-nav__viewport {
  overflow-x: hidden !important;
  overflow-y: hidden !important;
}
html body .mobile-nav__panel {
  padding: 1.5rem 14px 2.5rem !important;
  overflow-x: visible !important;
  box-sizing: border-box !important;
}
html body .mobile-nav__panel--drill {
  padding: 1.25rem 14px 2.5rem !important;
}
html body .mobile-nav__item,
html body .mobile-nav__item-label,
html body .mobile-nav__back,
html body .mobile-nav__drill-title,
html body .mobile-nav__drill-label,
html body .mobile-nav__secondary-link,
html body .mobile-nav__secondary-meta {
  overflow: visible !important;
  clip-path: none !important;
  -webkit-clip-path: none !important;
  line-height: 1.35 !important;
  padding-top: 0.1em !important;
  padding-bottom: 0.15em !important;
}
html body .mobile-nav__drill-title {
  margin-bottom: 1rem !important;
  width: auto !important;
  max-width: 100% !important;
}
html body .mobile-nav__drill-grid {
  /* Match home discover gutters / tight card gap */
  gap: 1.15rem 2px !important;
  margin: 0 !important;
}
html body .mobile-nav__drill-card {
  gap: 0.55rem !important;
  padding: 0 0 0.15rem !important;
  overflow: visible !important;
}
html body .mobile-nav__drill-media {
  overflow: hidden !important;
}
html body .mobile-nav__drill-label {
  font-size: 13px !important;
  font-weight: 400 !important;
}

/* Collections page mobile = home spacing (14px gutters, 2px gaps) */
@media (max-width: 767px) {
  html body .site-collections-page .site-collections-heroes,
  html body .site-collections-page .site-home-cards.site-collections-heroes {
    padding-left: 14px !important;
    padding-right: 14px !important;
    gap: 2px !important;
    box-sizing: border-box !important;
  }
  html body .site-collections-page .site-collections-grid {
    padding-left: 14px !important;
    padding-right: 14px !important;
    padding-top: 2.5rem !important;
    padding-bottom: 2.5rem !important;
  }
  html body .site-collections-page .site-collections-grid__inner {
    padding-left: 0 !important;
    padding-right: 0 !important;
    gap: 1.25rem 2px !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
  }
  html body .site-collections-page .site-collections-card__media {
    margin-bottom: 0.85rem !important;
    aspect-ratio: 3 / 4.15 !important;
  }
  html body .site-collections-page .site-collections-card__label {
    font-size: var(--fs-body, 12px) !important;
    font-weight: 500 !important;
    letter-spacing: -0.20px !important;
    text-transform: uppercase !important;
  }
}
@media (min-width: 768px) {
  html body .site-collections-page .site-collections-grid {
    padding-left: 2rem !important;
    padding-right: 2rem !important;
  }
  html body .site-collections-page .site-collections-grid__inner {
    gap: 1.5rem !important;
  }
}

/* —— Pass 20260803s — menu X = cookie X (no hover); mega fade-in; unified line weight; cookie desktop exact —— */

:root {
  --interactive-line: 1px;
  --interactive-stroke: 1.5px;
}

/* Mega: smooth into view (opacity only — no drop from above) */
@keyframes xsample-mega-in {
  from { opacity: 0; }
  to { opacity: 1; }
}
html body .site-mega.site-mega--open .site-mega__inner,
html body.mega-open .site-mega--open .site-mega__inner {
  animation: xsample-mega-in 0.28s ease both !important;
  transform: none !important;
}

/* Mobile menu X — match cookie close, no hover change */
html body .header-util--menu,
html body .header-util--menu:hover,
html body .header-util--menu:focus-visible,
html body .header-util--menu:active,
html body .header-util--menu.is-open {
  opacity: 1 !important;
  color: #000 !important;
  background: transparent !important;
}
html body .header-util--menu:hover .header-util__icon--open,
html body .header-util--menu:active .header-util__icon--open {
  opacity: 1 !important;
}
/* do not force close visible on hover — open state only */
html body .header-util--menu .header-util__icon--close {
  width: 14px !important;
  height: 14px !important;
  inset: 50% auto auto 50% !important;
  margin: -7px 0 0 -7px !important;
  transform: none !important;
  opacity: 0 !important;
  stroke: currentColor !important;
  stroke-width: var(--interactive-stroke) !important;
  stroke-linecap: square !important;
  transition: opacity 0.2s ease !important;
}
html body .header-util--menu.is-open .header-util__icon--close {
  opacity: 1 !important;
  transform: none !important;
}
html body .header-util--menu .header-util__icon--open {
  stroke-width: var(--interactive-stroke) !important;
  stroke-linecap: square !important;
  transition: opacity 0.2s ease !important;
}
html body .header-util--menu.is-open .header-util__icon--open {
  opacity: 0 !important;
  transform: none !important;
}

/* Unified close icons (cookie / search / newsletter / menu) */
html body .cookie-settings__close,
html body .cookie-settings__close:hover,
html body .cookie-settings__close:focus-visible,
html body .cookie-settings__close:active,
html body .site-search__close,
html body .site-search__close:hover,
html body .site-search__close:focus-visible,
html body .site-newsletter__close,
html body .site-newsletter__close:hover,
html body .site-newsletter__close:focus-visible {
  opacity: 1 !important;
  color: #000 !important;
  background: transparent !important;
  transform: none !important;
}
html body .cookie-settings__close svg,
html body .site-search__close-icon,
html body .site-newsletter__close-icon,
html body .header-util__icon--close {
  width: 14px !important;
  height: 14px !important;
  stroke-width: var(--interactive-stroke) !important;
  stroke-linecap: square !important;
}

/* Interactive lines — one weight (borders, underlines, strokes) */
html body .cookie-settings__btn--primary,
html body .cookie-settings__btn--ghost,
html body a.cta-on-image,
html body .cta-on-image,
html body .site-footer__email-field,
html body .cookie-banner {
  border-width: var(--interactive-line) !important;
}
html body .site-nav__link--underline,
html body a.site-nav__link--underline,
html body .link-line,
html body a.link-line,
html body .site-mega__link.link-line,
html body .site-mega__title.link-line {
  background-size: 0 var(--interactive-line) !important;
}
html body .site-nav__link--underline:hover,
html body .site-nav__link--underline:focus-visible,
html body .site-nav__item.is-open > .site-nav__link--underline,
html body .link-line:hover,
html body .link-line:focus-visible,
html body .link-line.is-active,
html body a.link-line:hover {
  background-size: 100% var(--interactive-line) !important;
}
html body .cookie-settings__nav .tab-button .underline,
html body .cookie-settings__nav .tab-button span.underline,
html body .cookie-settings__more,
html body a.cookie-settings__more {
  text-decoration-thickness: var(--interactive-line) !important;
}
html body .header-util__icon,
html body .site-footer__email-arrow,
html body .site-footer__email-submit svg,
html body .mobile-nav__item-arrow svg,
html body .mobile-nav__item svg,
html body .site-newsletter__title-chevron {
  stroke-width: var(--interactive-stroke) !important;
}

/* Cookie settings — desktop exact match to reference */
@media (min-width: 768px) {
  html body .cookie-settings-root {
    padding: 1.5rem !important;
    background: rgba(0, 0, 0, 0.4) !important;
  }
  html body .cookie-settings {
    width: min(756px, calc(100vw - 3rem)) !important;
    max-width: 756px !important;
    max-height: min(92vh, 620px) !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    background: #fff !important;
  }
  html body .cookie-settings__header {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 1.5rem 1.75rem 1rem !important;
    border: 0 !important;
  }
  html body .cookie-settings__title {
    margin: 0 !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
    color: #000 !important;
  }
  html body .cookie-settings__close {
    width: 1.75rem !important;
    height: 1.75rem !important;
  }
  html body .cookie-settings__body {
    display: flex !important;
    flex-direction: row !important;
    flex: 1 1 auto !important;
    min-height: 0 !important;
    border-top: var(--interactive-line) solid #e5e5e5 !important;
  }
  html body .cookie-settings__nav {
    width: 38% !important;
    max-width: 270px !important;
    flex: 0 0 38% !important;
    border-right: var(--interactive-line) solid #e5e5e5 !important;
    border-bottom: 0 !important;
    padding: 0.85rem 0 1.25rem !important;
  }
  html body .cookie-settings__nav .tab-button,
  html body .cookie-settings__nav button.tab-button {
    padding: 0.85rem 1.75rem !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    letter-spacing: -0.20px !important;
    text-transform: none !important;
    color: #000 !important;
    background: transparent !important;
  }
  html body .cookie-settings__nav .tab-button .underline,
  html body .cookie-settings__nav .tab-button span.underline {
    text-decoration: underline !important;
    text-underline-offset: 5px !important;
    text-decoration-thickness: var(--interactive-line) !important;
    text-decoration-color: #000 !important;
    text-transform: none !important;
  }
  html body .cookie-settings__panel {
    padding: 1.5rem 1.85rem 1.75rem !important;
  }
  html body .cookie-settings__panel-title,
  html body .cookie-settings__panel h3 {
    margin: 0 0 1.15rem !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
  }
  html body .cookie-settings__panel-copy,
  html body .cookie-settings__panel p {
    margin: 0 0 1.15rem !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
    letter-spacing: -0.20px !important;
    color: #000 !important;
  }
  html body .cookie-settings__more {
    font-size: 13px !important;
    text-underline-offset: 3px !important;
  }
  /* Confirm left · Reject right — hide Allow All */
  html body .cookie-settings__footer {
    display: flex !important;
    flex-direction: row !important;
    justify-content: space-between !important;
    align-items: center !important;
    gap: 1rem !important;
    padding: 1.15rem 1.75rem 1.65rem !important;
    border-top: 0 !important;
  }
  html body .cookie-settings__footer-actions {
    display: flex !important;
    flex-direction: row !important;
    gap: 0.75rem !important;
  }
  html body .cookie-settings__btn--allow,
  html body .cookie-settings__footer-actions .cookie-settings__btn--ghost:last-of-type {
    display: none !important;
  }
  html body .cookie-settings__btn {
    min-height: 2.75rem !important;
    padding: 0.7rem 1.55rem !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    letter-spacing: -0.20px !important;
    text-transform: none !important;
    border-radius: 0 !important;
    border-width: var(--interactive-line) !important;
    white-space: nowrap !important;
  }
  html body .cookie-settings__btn--primary {
    background: #000 !important;
    color: #fff !important;
    border-color: #000 !important;
  }
  html body .cookie-settings__btn--ghost {
    background: #fff !important;
    color: #000 !important;
    border-color: #000 !important;
  }
}

/* —— Pass 20260803t — menu -/X hover fix + size; smoother mega; cookie width/spacing —— */

/* Mega: slower, smoother opacity-only enter */
@keyframes xsample-mega-in {
  from { opacity: 0; }
  to { opacity: 1; }
}
@keyframes xsample-mega-dim-in {
  from { opacity: 0; }
  to { opacity: 1; }
}
html body .site-mega.site-mega--open .site-mega__inner,
html body.mega-open .site-mega--open .site-mega__inner {
  animation: xsample-mega-in 0.48s cubic-bezier(0.22, 1, 0.36, 1) both !important;
  transform: none !important;
}
html body .site-mega__backdrop.is-open,
html body.mega-open .site-mega__backdrop.is-open {
  animation: xsample-mega-dim-in 0.42s cubic-bezier(0.22, 1, 0.36, 1) both !important;
}

/* Menu toggle: balanced -/X; hover must NEVER reveal X */
html body .header-util.header-util--menu {
  width: 22px !important;
  height: 22px !important;
  position: relative !important;
  flex-shrink: 0 !important;
}
html body .header-util--menu .header-util__icon {
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  right: auto !important;
  bottom: auto !important;
  margin: 0 !important;
  inset: 0 auto auto 0 !important;
  transform: none !important;
  transition: opacity 0.18s ease !important;
  pointer-events: none !important;
}
html body .header-util--menu .header-util__icon--open {
  width: 1.25rem !important;
  height: 1.25rem !important;
  opacity: 1 !important;
  visibility: visible !important;
  stroke-width: 1.5px !important;
  stroke-linecap: square !important;
  transform: none !important;
}
html body .header-util--menu .header-util__icon--close {
  width: 1.25rem !important;
  height: 1.25rem !important;
  opacity: 0 !important;
  visibility: hidden !important;
  stroke-width: 1.5px !important;
  stroke-linecap: square !important;
  transform: none !important;
}
/* Closed (+ hover): hamburger only — kill prior hover→X bug */
html body .header-util--menu:not(.is-open) .header-util__icon--open,
html body .header-util--menu:not(.is-open):hover .header-util__icon--open,
html body .header-util--menu:not(.is-open):active .header-util__icon--open,
html body .header-util--menu:not(.is-open):focus-visible .header-util__icon--open {
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
}
html body .header-util--menu:not(.is-open) .header-util__icon--close,
html body .header-util--menu:not(.is-open):hover .header-util__icon--close,
html body .header-util--menu:not(.is-open):active .header-util__icon--close,
html body .header-util--menu:not(.is-open):focus-visible .header-util__icon--close {
  opacity: 0 !important;
  visibility: hidden !important;
  transform: none !important;
}
/* Open: X only */
html body .header-util--menu.is-open .header-util__icon--open,
html body .header-util--menu.is-open:hover .header-util__icon--open {
  opacity: 0 !important;
  visibility: hidden !important;
  transform: none !important;
}
html body .header-util--menu.is-open .header-util__icon--close,
html body .header-util--menu.is-open:hover .header-util__icon--close,
html body .header-util--menu.is-open:focus-visible .header-util__icon--close {
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
}
html body .header-util--menu,
html body .header-util--menu:hover,
html body .header-util--menu:active,
html body .header-util--menu:focus-visible,
html body .header-util--menu.is-open {
  opacity: 1 !important;
  color: #000 !important;
  background: transparent !important;
}

/* Cookie desktop — width + spacing matched to reference */
@media (min-width: 768px) {
  html body .cookie-settings-root {
    padding: 1.75rem !important;
    background: rgba(0, 0, 0, 0.42) !important;
  }
  html body .cookie-settings {
    width: min(980px, calc(100vw - 3.5rem)) !important;
    max-width: 980px !important;
    max-height: min(90vh, 720px) !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
  }
  html body .cookie-settings__header {
    padding: 3.25rem 3.5rem 1.35rem !important;
  }
  html body .cookie-settings__title {
    font-size: 12px !important;
    font-weight: 500 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
  }
  html body .cookie-settings__close {
    width: 1.5rem !important;
    height: 1.5rem !important;
  }
  html body .cookie-settings__body {
    border-top: 1px solid #e5e5e5 !important;
  }
  html body .cookie-settings__nav {
    width: 36.5% !important;
    max-width: none !important;
    flex: 0 0 36.5% !important;
    border-right: 1px solid #e5e5e5 !important;
    padding: 1.15rem 0 1.75rem !important;
  }
  html body .cookie-settings__nav .tab-button,
  html body .cookie-settings__nav button.tab-button {
    padding: 1.15rem 3.5rem !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    letter-spacing: -0.20px !important;
    text-transform: none !important;
    line-height: 1.35 !important;
  }
  html body .cookie-settings__nav .tab-button .underline,
  html body .cookie-settings__nav .tab-button span.underline {
    text-underline-offset: 6px !important;
    text-decoration-thickness: 1px !important;
  }
  html body .cookie-settings__panel {
    padding: 2rem 3.5rem 2.25rem !important;
  }
  html body .cookie-settings__panel-title,
  html body .cookie-settings__panel h3 {
    margin: 0 0 1.35rem !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    letter-spacing: 0.08em !important;
  }
  html body .cookie-settings__panel-copy,
  html body .cookie-settings__panel p {
    margin: 0 0 1.25rem !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
  }
  html body .cookie-settings__footer {
    padding: 1.25rem 3.5rem 3.5rem !important;
    justify-content: space-between !important;
    gap: 1.25rem !important;
  }
  html body .cookie-settings__btn--allow,
  html body .cookie-settings__footer-actions .cookie-settings__btn--ghost:last-of-type {
    display: none !important;
  }
  html body .cookie-settings__btn {
    min-height: 3.25rem !important;
    padding: 0.85rem 1.75rem !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    letter-spacing: -0.20px !important;
    text-transform: none !important;
    border-width: 1px !important;
  }
}

/* —— Pass 20260803u — cookie 756 exact; mobile label=link + arrow=drill; -/X size —— */

/* Hamburger matches other header icons (~20px), X matches cookie close */
html body .header-util.header-util--menu {
  width: 1.25rem !important;
  height: 1.25rem !important;
}
html body .header-util--menu .header-util__icon--open {
  width: 1.25rem !important;
  height: 1.25rem !important;
  stroke-width: 1.5px !important;
}
html body .header-util--menu .header-util__icon--close {
  width: 12px !important;
  height: 12px !important;
  stroke-width: 1.5px !important;
}
html body .header-util__icon {
  width: 1.25rem !important;
  height: 1.25rem !important;
  stroke-width: 1.5px !important;
}

/* Mobile nav: label is the page link; arrow opens drill */
html body .mobile-nav__item.mobile-nav__item--drill {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 0.75rem !important;
  width: 100% !important;
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
}
html body .mobile-nav__item-label,
html body a.mobile-nav__item-label {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  color: #111 !important;
  text-decoration: none !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  letter-spacing: -0.20px !important;
  line-height: 1.35 !important;
  padding: 0.15em 0 !important;
  background: transparent !important;
  border: 0 !important;
  text-align: left !important;
  cursor: pointer !important;
}
html body .mobile-nav__item-arrow {
  flex: 0 0 auto !important;
  width: 44px !important;
  height: 44px !important;
  margin: -10px -8px -10px 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: #111 !important;
  cursor: pointer !important;
  -webkit-tap-highlight-color: transparent !important;
}
html body .mobile-nav__item-arrow:hover,
html body .mobile-nav__item-arrow:focus-visible,
html body .mobile-nav__item-arrow:active {
  opacity: 1 !important;
  background: transparent !important;
}

/* Cookie desktop — Bottega width (~756), not wider */
@media (min-width: 768px) {
  html body .cookie-settings-root {
    padding: 1.5rem !important;
    background: rgba(0, 0, 0, 0.4) !important;
  }
  html body .cookie-settings {
    width: min(756px, calc(100vw - 3rem)) !important;
    max-width: 756px !important;
    max-height: min(92vh, 640px) !important;
    border: 0 !important;
    box-shadow: none !important;
  }
  html body .cookie-settings__header {
    padding: 1.5rem 1.75rem 1rem !important;
  }
  html body .cookie-settings__title {
    font-size: 12px !important;
    font-weight: 500 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
  }
  html body .cookie-settings__body {
    border-top: 1px solid #e5e5e5 !important;
  }
  html body .cookie-settings__nav {
    width: 38% !important;
    max-width: 280px !important;
    flex: 0 0 38% !important;
    border-right: 1px solid #e5e5e5 !important;
    padding: 0.65rem 0 1.25rem !important;
  }
  html body .cookie-settings__nav .tab-button,
  html body .cookie-settings__nav button.tab-button {
    padding: 0.75rem 1.75rem !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    text-transform: none !important;
  }
  html body .cookie-settings__panel {
    padding: 1.5rem 1.75rem 1.75rem !important;
  }
  html body .cookie-settings__footer {
    display: flex !important;
    flex-direction: row !important;
    justify-content: space-between !important;
    align-items: center !important;
    padding: 1.15rem 1.75rem 1.5rem !important;
    border-top: 1px solid #e5e5e5 !important;
    gap: 1rem !important;
  }
  html body .cookie-settings__btn--allow,
  html body .cookie-settings__footer-actions .cookie-settings__btn--ghost:last-of-type {
    display: none !important;
  }
  html body .cookie-settings__btn {
    min-height: 2.75rem !important;
    padding: 0.7rem 1.5rem !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    text-transform: none !important;
    border-width: 1px !important;
  }
}

/* —— Pass 20260803v — Collections mobile = Bottega gifts layout —— */
@media (max-width: 767px) {
  /* Heroes: full-bleed, flush stack, CTA on image */
  html body .site-collections-page .site-collections-heroes,
  html body .site-collections-page .site-home-cards.site-collections-heroes {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    width: 100% !important;
    max-width: none !important;
    background: #fff !important;
  }
  html body .site-collections-page .site-collections-heroes > div,
  html body .site-collections-page .site-collections-heroes > a {
    position: relative !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    aspect-ratio: 3 / 3.55 !important;
    display: flex !important;
    align-items: flex-end !important;
    justify-content: center !important;
    padding: 0 0 2.75rem !important;
    margin: 0 !important;
    background: #e8e7e3 !important;
  }
  html body .site-collections-page .site-collections-heroes > div > img,
  html body .site-collections-page .site-collections-heroes > a > img {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
  }
  html body .site-collections-page .site-collections-heroes .cta-on-image,
  html body .site-collections-page .site-collections-heroes a.cta-on-image {
    position: relative !important;
    z-index: 2 !important;
    font-size: 11px !important;
    font-weight: 500 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
    padding: 0.7rem 1.35rem !important;
    min-height: 2.35rem !important;
    border-width: 1px !important;
    border-radius: 0 !important;
    background: #fff !important;
    color: #000 !important;
  }

  /* Labeled cards: side gutters, airy stack, label under media */
  html body .site-collections-page .site-collections-grid {
    padding: 3.25rem 0 4rem !important;
    background: #fff !important;
  }
  html body .site-collections-page .site-collections-grid__inner {
    display: flex !important;
    flex-direction: column !important;
    grid-template-columns: none !important;
    gap: 3.5rem !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
    margin: 0 auto !important;
    max-width: 100% !important;
  }
  html body .site-collections-page .site-collections-card,
  html body .site-collections-page a.site-collections-card {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    width: 100% !important;
    text-decoration: none !important;
    color: #000 !important;
  }
  html body .site-collections-page .site-collections-card__media {
    width: 100% !important;
    margin: 0 0 1.15rem !important;
    aspect-ratio: 3 / 3.6 !important;
    background: #efefef !important;
    overflow: hidden !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }
  html body .site-collections-page .site-collections-card__media img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
  }
  html body .site-collections-page .site-collections-card__label {
    display: block !important;
    width: 100% !important;
    text-align: center !important;
    font-size: 11px !important;
    font-weight: 500 !important;
    letter-spacing: 0.14em !important;
    text-transform: uppercase !important;
    line-height: 1.35 !important;
    color: #000 !important;
    margin: 0 !important;
  }
}

/* —— Pass 20260803w — menu toggle fix; arrow hit; compact header; collections=home —— */

/* Compact mobile header — no shadow */
@media (max-width: 1023px) {
  html body .site-header,
  html body header.site-header {
    height: 56px !important;
    min-height: 56px !important;
    max-height: 56px !important;
    padding-inline: 14px !important;
    box-shadow: none !important;
    filter: none !important;
    -webkit-filter: none !important;
    border-bottom: 0 !important;
  }
  html body .site-logo {
    height: 20px !important;
  }
  html body .header-utils {
    gap: 1.15rem !important;
    align-items: center !important;
  }
}

/* Menu toggle: same box as other utils, reliable click, aligned */
html body .header-util,
html body button.header-util {
  width: 1.25rem !important;
  height: 1.25rem !important;
  min-width: 1.25rem !important;
  min-height: 1.25rem !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  position: relative !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: #000 !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  flex-shrink: 0 !important;
  line-height: 1.35 !important;
}
html body .header-util__icon {
  width: 1.25rem !important;
  height: 1.25rem !important;
  display: block !important;
  stroke-width: 1.5px !important;
  pointer-events: none !important;
}
html body .header-util.header-util--menu {
  width: 1.25rem !important;
  height: 1.25rem !important;
  margin-left: 0 !important;
  z-index: 5 !important;
  pointer-events: auto !important;
  cursor: pointer !important;
}
html body .header-util--menu .header-util__icon {
  position: absolute !important;
  inset: 0 !important;
  left: 0 !important;
  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  margin: 0 !important;
  width: 1.25rem !important;
  height: 1.25rem !important;
  transform: none !important;
  transition: none !important;
  pointer-events: none !important;
}
html body .header-util--menu .header-util__icon--open {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
}
html body .header-util--menu .header-util__icon--close {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
}
html body .header-util--menu.is-open .header-util__icon--open {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
}
html body .header-util--menu.is-open .header-util__icon--close {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
}
html body .header-util--menu:hover,
html body .header-util--menu:active,
html body .header-util--menu:focus-visible,
html body .header-util--menu:not(.is-open):hover .header-util__icon--open,
html body .header-util--menu:not(.is-open):hover .header-util__icon--close {
  opacity: 1 !important;
}
/* Never show X on hover when closed */
html body .header-util--menu:not(.is-open) .header-util__icon--close,
html body .header-util--menu:not(.is-open):hover .header-util__icon--close,
html body .header-util--menu:not(.is-open):active .header-util__icon--close {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
}
html body.mobile-nav-open .header-util--menu,
html.mobile-nav-open .header-util--menu,
html body.mobile-nav-open .site-header .header-utils,
html body.mobile-nav-open .site-header .header-util {
  pointer-events: auto !important;
  z-index: 14070 !important;
}
html body.mobile-nav-open .site-header,
html body.mobile-nav-open header.site-header {
  pointer-events: auto !important;
}

/* Drawer arrows — large tap targets */
html body .mobile-nav__item-arrow {
  width: 48px !important;
  height: 48px !important;
  min-width: 48px !important;
  min-height: 48px !important;
  margin: -12px -6px -12px 0 !important;
  padding: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 0 !important;
  background: transparent !important;
  color: #111 !important;
  cursor: pointer !important;
  flex-shrink: 0 !important;
  -webkit-tap-highlight-color: transparent !important;
}
html body .mobile-nav__item-arrow-icon,
html body .mobile-nav__item-arrow svg {
  width: 22px !important;
  height: 22px !important;
  stroke-width: 1.5px !important;
  display: block !important;
  pointer-events: none !important;
}
html body .mobile-nav__back {
  min-height: 48px !important;
  padding: 0.65rem 0.35rem 0.65rem 0 !important;
  gap: 0.45rem !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  letter-spacing: -0.20px !important;
}
html body .mobile-nav__back-icon,
html body .mobile-nav__back svg {
  width: 20px !important;
  height: 20px !important;
  stroke-width: 1.5px !important;
  flex-shrink: 0 !important;
}

/* Collections mobile = homepage spacing + shared CTA */
@media (max-width: 767px) {
  html body .site-collections-page .site-collections-heroes,
  html body .site-collections-page .site-home-cards.site-collections-heroes {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 2px !important;
    padding: 0 14px !important;
    margin: 0 !important;
    width: 100% !important;
    max-width: none !important;
    box-sizing: border-box !important;
    background: #fff !important;
  }
  html body .site-collections-page .site-collections-heroes > div,
  html body .site-collections-page .site-collections-heroes > a {
    position: relative !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    aspect-ratio: 4 / 5 !important;
    display: flex !important;
    align-items: flex-end !important;
    justify-content: center !important;
    padding: 0 0 2.5rem !important;
    margin: 0 !important;
    background: #e8e7e3 !important;
  }
  html body .site-collections-page .site-collections-heroes .cta-on-image,
  html body .site-collections-page .site-collections-heroes a.cta-on-image {
    position: relative !important;
    z-index: 2 !important;
    /* inherit homepage CTA — don't override size/tracking */
  }
  html body .site-collections-page .site-collections-grid {
    padding: 1.75rem 0 2.5rem !important;
    background: #fff !important;
  }
  html body .site-collections-page .site-collections-grid__inner {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 1.25rem 2px !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
    margin: 0 auto !important;
  }
  html body .site-collections-page .site-collections-card,
  html body .site-collections-page a.site-collections-card {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    width: 100% !important;
    text-decoration: none !important;
    color: #000 !important;
  }
  html body .site-collections-page .site-collections-card__media {
    width: 100% !important;
    margin: 0 0 0.75rem !important;
    aspect-ratio: 4 / 5 !important;
    background: #efefef !important;
    overflow: hidden !important;
  }
  html body .site-collections-page .site-collections-card__label {
    display: block !important;
    width: 100% !important;
    text-align: center !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    letter-spacing: -0.20px !important;
    text-transform: uppercase !important;
    line-height: 1.35 !important;
    color: #000 !important;
    margin: 0 !important;
  }
}

/* —— Pass 20260803x — menu align/cursor/click; heroes no pad; CTAs = homepage —— */

/* Menu toggle: optically level with other icons + real pointer/hit target */
html body .header-utils {
  display: flex !important;
  align-items: center !important;
}
html body .header-util.header-util--menu,
html body button.header-util.header-util--menu {
  position: relative !important;
  top: 0 !important;
  align-self: center !important;
  transform: none !important;
  translate: none !important;
  margin: 0 !important;
  padding: 0 !important;
  width: 1.25rem !important;
  height: 1.25rem !important;
  cursor: pointer !important;
  pointer-events: auto !important;
  z-index: 20 !important;
  -webkit-tap-highlight-color: transparent !important;
  touch-action: manipulation !important;
}
/* Expand clickable area without shifting layout */
html body .header-util--menu::after {
  content: "" !important;
  position: absolute !important;
  inset: -10px -8px !important;
  z-index: 1 !important;
  cursor: pointer !important;
}
html body .header-util--menu .header-util__icon {
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 1.25rem !important;
  height: 1.25rem !important;
  margin: 0 !important;
  transform: none !important;
  pointer-events: none !important;
}
html body .header-util--search .header-util__icon,
html body .header-util--account .header-util__icon,
html body .header-util--bag .header-util__icon,
html body .header-util--menu .header-util__icon--open,
html body .header-util--menu.is-open .header-util__icon--close {
  /* keep icons on the same optical baseline */
  transform: none !important;
}
html body.mobile-nav-open .header-util--menu,
html.mobile-nav-open .header-util--menu,
html body .header-util--menu:hover,
html body .header-util--menu:focus-visible,
html body .header-util--menu:active {
  cursor: pointer !important;
  pointer-events: auto !important;
  opacity: 1 !important;
}

/* Collections first image section — no side padding (full bleed) */
@media (max-width: 767px) {
  html body .site-collections-page .site-collections-heroes,
  html body .site-collections-page .site-home-cards.site-collections-heroes {
    padding: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    gap: 0 !important;
  }
  html body .site-collections-page .site-collections-heroes > div,
  html body .site-collections-page .site-collections-heroes > a {
    padding-bottom: 2.5rem !important;
  }

  /* Collections CTAs = homepage CTAs exactly */
  html body .site-collections-page .cta-on-image,
  html body .site-collections-page a.cta-on-image,
  html body .site-collections-page .site-collections-heroes .cta-on-image,
  html body .site-collections-page .site-collections-heroes a.cta-on-image {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 2.15rem !important;
    margin: 0 !important;
    padding: 0.62rem 1.2rem !important;
    background: #fff !important;
    color: #000 !important;
    -webkit-text-fill-color: #000 !important;
    border: 1px solid #000 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif !important;
    font-size: 10px !important;
    font-weight: 500 !important;
    letter-spacing: 0.1em !important;
    line-height: 1.35 !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    position: relative !important;
    z-index: 2 !important;
    cursor: pointer !important;
  }
  html body .site-collections-page .cta-on-image:hover,
  html body .site-collections-page a.cta-on-image:hover,
  html body .site-collections-page .cta-on-image:focus-visible,
  html body .site-collections-page a.cta-on-image:focus-visible {
    background: #000 !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    border-color: #000 !important;
  }
}
@media (min-width: 768px) {
  html body .site-collections-page .cta-on-image,
  html body .site-collections-page a.cta-on-image {
    padding: 0.7rem 1.4rem !important;
    letter-spacing: 0.09em !important;
    min-height: 2.35rem !important;
    font-size: 10px !important;
  }
}

/* —— Pass 20260803y — verified: menu icon +0 midY; collections CTA = measured home —— */

/* Menu icon was ~7.5px above siblings — kill leftover top/transform */
html body .header-util.header-util--menu,
html body button.header-util.header-util--menu {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  position: relative !important;
  top: 0 !important;
  overflow: visible !important;
  width: 20px !important;
  height: 20px !important;
  min-width: 20px !important;
  min-height: 20px !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1.35 !important;
  cursor: pointer !important;
  pointer-events: auto !important;
}
html body .header-util--menu .header-util__icon,
html body .header-util--menu .header-util__icon--open,
html body .header-util--menu .header-util__icon--close,
html body .header-util--menu svg.header-util__icon,
html body .header-util--menu svg {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  inset: 0 !important;
  width: 20px !important;
  height: 20px !important;
  max-width: 20px !important;
  max-height: 20px !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
  translate: none !important;
  scale: none !important;
  rotate: none !important;
  pointer-events: none !important;
}
html body .header-util--menu .header-util__icon--open {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
}
html body .header-util--menu .header-util__icon--close {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
}
html body .header-util--menu.is-open .header-util__icon--open {
  display: none !important;
  visibility: hidden !important;
}
html body .header-util--menu.is-open .header-util__icon--close {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
}
/* Match other util icon boxes exactly */
html body .header-util,
html body .header-util__icon {
  width: 20px !important;
  height: 20px !important;
}

@media (max-width: 767px) {
  /* Collections CTAs — copy measured homepage CTA (11px / -0.15 / 0.62×1.1 / border-box) */
  html body .site-collections-page a.cta-on-image,
  html body .site-collections-page .cta-on-image,
  html body .site-collections-page .site-collections-heroes a.cta-on-image,
  html body .site-collections-page .site-collections-heroes .cta-on-image {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 2.15rem !important;
    margin: 0 !important;
    padding: 0.62rem 1.1rem !important;
    background: #fff !important;
    color: #000 !important;
    -webkit-text-fill-color: #000 !important;
    border: 1px solid #000 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif !important;
    font-size: 11px !important;
    font-weight: 500 !important;
    letter-spacing: -0.20px !important;
    line-height: 1.35 !important;
    text-transform: uppercase !important;
    text-align: center !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    position: relative !important;
    z-index: 2 !important;
    cursor: pointer !important;
  }
  html body .site-collections-page a.cta-on-image:hover,
  html body .site-collections-page .cta-on-image:hover,
  html body .site-collections-page a.cta-on-image:focus-visible,
  html body .site-collections-page .cta-on-image:focus-visible {
    background: #000 !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    border-color: #000 !important;
  }
}

/* —— Pass 20260803z — beat translate(-50%) menu rules; CTA pad = home measured —— */

html body .header-util--menu .header-util__icon,
html body .header-util--menu .header-util__icon--open,
html body .header-util--menu .header-util__icon--close,
html body .header-util--menu:not(.is-open) .header-util__icon--open,
html body .header-util--menu:not(.is-open):hover .header-util__icon--open,
html body .header-util--menu:not(.is-open):active .header-util__icon--open,
html body .header-util--menu:not(.is-open):focus-visible .header-util__icon--open,
html body .header-util--menu:not(.is-open) .header-util__icon--close,
html body .header-util--menu.is-open .header-util__icon--close,
html body .header-util--menu.is-open:hover .header-util__icon--close,
html body .header-util--menu svg.header-util__icon,
html body .header-util--menu svg {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: auto !important;
  bottom: auto !important;
  inset: 0 auto auto 0 !important;
  width: 20px !important;
  height: 20px !important;
  margin: 0 !important;
  transform: none !important;
  translate: none !important;
  scale: none !important;
  rotate: none !important;
  pointer-events: none !important;
}

/* Keep util buttons same 20px box so midY matches */
html body .header-util,
html body button.header-util,
html body .header-util--search,
html body .header-util--account,
html body .header-util--bag,
html body .header-util--menu {
  width: 20px !important;
  height: 20px !important;
  min-width: 20px !important;
  min-height: 20px !important;
}
html body .header-util__icon,
html body .header-util svg {
  width: 20px !important;
  height: 20px !important;
}

@media (max-width: 767px) {
  /* Exact measured homepage CTA */
  html body .site-collections-page a.cta-on-image,
  html body .site-collections-page .cta-on-image,
  html body .site-collections-page .site-collections-heroes a.cta-on-image,
  html body .site-collections-page .site-collections-heroes .cta-on-image,
  html body .site-collections-page a.cta-on-image.uppercase,
  html body .site-collections-page a.relative.z-10 {
    box-sizing: border-box !important;
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    flex: none !important;
    height: auto !important;
    min-height: 35.5625px !important;
    max-height: none !important;
    padding: 10.2px 17.2px !important;
    padding-top: 10.2px !important;
    padding-right: 17.2px !important;
    padding-bottom: 10.2px !important;
    padding-left: 17.2px !important;
    font-size: 11px !important;
    font-weight: 500 !important;
    letter-spacing: -0.20px !important;
    line-height: 1.35 !important;
    border: 1px solid #000 !important;
    border-radius: 0 !important;
    background: #fff !important;
    color: #000 !important;
    -webkit-text-fill-color: #000 !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
    white-space: nowrap !important;
  }
}

/* —— Pass 20260803aa — hide phone on mobile; no drawer overlay; —— */

/* Phone never on mobile/tablet — beat header-util display:inline-flex */
html body .header-util.header-util--phone,
html body button.header-util--phone,
html body .header-utils .header-util--phone {
  display: none !important;
}
@media (min-width: 1024px) {
  html body .header-util.header-util--phone,
  html body button.header-util--phone,
  html body .header-utils .header-util--phone {
    display: inline-flex !important;
  }
}

/* Mobile drawer: no dim/overlay */
html body .mobile-nav__backdrop,
html body .site-dim.mobile-nav__backdrop,
html body.mobile-nav-open .mobile-nav__backdrop,
html body.mobile-nav-open .site-dim.mobile-nav__backdrop,
html.mobile-nav-open .mobile-nav__backdrop,
html body .mobile-nav__backdrop.is-open,
html body.mobile-nav-open .mobile-nav__backdrop.is-open {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  background: transparent !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

/* —— Pass 20260803ac — revert collections + collections-products layouts —— */

/* Collections page: undo Bottega/home experiment overrides — restore markup defaults */
@media (max-width: 767px) {
  html body .site-collections-page .site-collections-heroes,
  html body .site-collections-page .site-home-cards.site-collections-heroes {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 2px !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    margin: 0 !important;
    width: 100% !important;
    max-width: 1400px !important;
    box-sizing: border-box !important;
  }
  html body .site-collections-page .site-collections-heroes > div,
  html body .site-collections-page .site-collections-heroes > a {
    position: relative !important;
    width: 100% !important;
    height: 65vh !important;
    min-height: 65vh !important;
    max-height: none !important;
    aspect-ratio: auto !important;
    display: flex !important;
    align-items: flex-end !important;
    justify-content: center !important;
    padding: 0 0 3rem !important; /* pb-12 */
    margin: 0 !important;
    background: #e8e7e3 !important;
  }
  html body .site-collections-page .site-collections-heroes > div > img,
  html body .site-collections-page .site-collections-heroes > a > img {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
  }
  /* CTAs: use global homepage cta-on-image rules only — clear page-specific locks */
  html body .site-collections-page .site-collections-heroes .cta-on-image,
  html body .site-collections-page .site-collections-heroes a.cta-on-image,
  html body .site-collections-page a.cta-on-image,
  html body .site-collections-page .cta-on-image {
    position: relative !important;
    z-index: 2 !important;
    /* do not force custom padding/font here */
  }

  html body .site-collections-page .site-collections-grid {
    padding: 3rem 0 !important; /* py-12 */
    background: #fff !important;
  }
  html body .site-collections-page .site-collections-grid__inner {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 6px !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
    margin: 0 auto !important;
    max-width: 1440px !important;
  }
  html body .site-collections-page .site-collections-card,
  html body .site-collections-page a.site-collections-card {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    width: 100% !important;
    text-decoration: none !important;
    color: #000 !important;
  }
  html body .site-collections-page .site-collections-card__media {
    width: 100% !important;
    margin: 0 0 1.25rem !important; /* mb-5 */
    aspect-ratio: 4 / 5 !important;
    background: #efefef !important;
    overflow: hidden !important;
  }
  html body .site-collections-page .site-collections-card__label {
    display: block !important;
    width: 100% !important;
    text-align: center !important;
    font-size: 10px !important;
    font-weight: 500 !important;
    letter-spacing: 0.2em !important;
    text-transform: uppercase !important;
    line-height: 1.35 !important;
    color: #000 !important;
    margin: 0 !important;
  }
}

/* Collections-products PLP: match https://obanje.pages.dev/collections-products */
html body main.site-collections-products {
  width: 100% !important;
  padding: 8px 16px !important;
  box-sizing: border-box !important;
  background: #fff !important;
  color: #000 !important;
}
@media (min-width: 768px) {
  html body main.site-collections-products {
    padding: 16px 32px !important;
  }
}
html body main.site-collections-products .site-collections-products__grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  column-gap: 12px !important;
  row-gap: 32px !important;
  gap: 32px 12px !important;
  padding: 0 !important;
}
@media (min-width: 768px) {
  html body main.site-collections-products .site-collections-products__grid {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    column-gap: 16px !important;
    row-gap: 48px !important;
    gap: 48px 16px !important;
  }
}
html body main.site-collections-products .site-collections-products__bar {
  padding-left: 16px !important;
  padding-right: 16px !important;
  margin-left: -16px !important;
  margin-right: -16px !important;
  background: #fff !important;
}
@media (min-width: 768px) {
  html body main.site-collections-products .site-collections-products__bar {
    padding-left: 32px !important;
    padding-right: 32px !important;
    margin-left: -32px !important;
    margin-right: -32px !important;
  }
}
html body main.site-collections-products > h1 {
  font-size: 20px !important;
  line-height: 1.35 !important;
  font-weight: 400 !important;
  letter-spacing: 0.025em !important;
  text-transform: none !important;
  margin: 0 0 24px !important;
  padding: 0 !important;
}
@media (min-width: 768px) {
  html body main.site-collections-products > h1 {
    font-size: 24px !important;
  }
}
html body main.site-collections-products .site-plp-card > div:first-child {
  background-color: #F2F2F0 !important;
  margin-bottom: 12px !important;
}
html body main.site-collections-products .site-plp-card h3 {
  font-size: 13.5px !important;
  font-weight: 400 !important;
  letter-spacing: normal !important;
  text-transform: none !important;
  color: #000 !important;
  margin: 0 0 4px !important;
}
@media (min-width: 768px) {
  html body main.site-collections-products .site-plp-card h3 {
    font-size: 14px !important;
  }
}
html body main.site-collections-products .site-plp-card {
  letter-spacing: normal !important;
}
html body main.site-collections-products .site-plp-card > div:last-child {
  font-size: 13.5px !important;
  letter-spacing: normal !important;
}
@media (min-width: 768px) {
  html body main.site-collections-products .site-plp-card > div:last-child {
    font-size: 14px !important;
  }
}
html body main.site-collections-products .group:hover .site-plp-card__arrows,
html body main.site-collections-products .site-plp-card:hover .site-plp-card__arrows {
  opacity: 1 !important;
}


/* —— Pass 20260803af — PLP left/right + sticky filter bar + fast drawer —— */
/* Only force space-between where left/right chrome needs it — not newsletter forms */
html body main.site-collections-products .justify-between,
html body main.site-collections-products .flex.justify-between,
html body .site-drawer--filter .justify-between,
html body .site-drawer--filter .flex.justify-between,
html body .site-filter__head,
html body .site-filter__row,
html body .site-filter__footer,
html body .site-plp-card__title-row {
  justify-content: space-between !important;
}
/* Keep cookie settings exception if any were relying on flex-start via justify-between —
   cookie panel already has scoped rules; don't break them. */
html body .cookie-settings__panel .flex.justify-between,
html body .cookie-settings__panel .flex.justify-between.items-center {
  justify-content: space-between !important;
}

html body main.site-collections-products .site-collections-products__bar {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 1rem !important;
  position: sticky !important;
  top: 0 !important;
  z-index: 110 !important;
  background: #fff !important;
  border-bottom: 1px solid #e5e5e5 !important;
}
html body main.site-collections-products .site-collections-products__bar > :first-child {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  justify-content: flex-start !important;
}
html body main.site-collections-products .site-collections-products__bar > :last-child {
  flex: 0 0 auto !important;
  margin-left: auto !important;
  justify-content: flex-end !important;
}
/* Active category underline always on for selected */
html body main.site-collections-products .site-plp-cat.is-active > span:last-child {
  transform: scaleX(1) !important;
}
html body main.site-collections-products .site-plp-card h3.site-plp-card__title-row,
html body main.site-collections-products .site-plp-card .site-plp-card__title-row {
  display: flex !important;
  width: 100% !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 0.5rem !important;
}
html body main.site-collections-products .site-plp-card .site-plp-card__swatch {
  margin-left: auto !important;
  flex-shrink: 0 !important;
}

/* Sticky PLP bar + site header stay sticky while filter drawer open */
html.site-drawer-open .site-collections-products__bar,
html body.site-drawer-open .site-collections-products__bar,
html.site-drawer-open main.site-collections-products .site-collections-products__bar,
html body.site-drawer-open main.site-collections-products .site-collections-products__bar {
  position: sticky !important;
  top: 0 !important;
  z-index: 110 !important;
}
html.site-drawer-open .site-header:not(.is-header-off),
html body.site-drawer-open .site-header:not(.is-header-off),
html.site-drawer-open header.site-header:not(.is-header-off),
html body.site-drawer-open header.site-header:not(.is-header-off) {
  position: sticky !important;
}
html.site-drawer-open .site-header.is-header-off,
html body.site-drawer-open .site-header.is-header-off,
html.site-drawer-open header.site-header.is-header-off,
html body.site-drawer-open header.site-header.is-header-off {
  position: fixed !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transform: translate3d(0, -120%, 0) !important;
}

/* Filter matches subscribe drawer timing (0.4s) */
html body .site-drawer.site-drawer--filter,
html body .site-drawer--filter,
div.site-drawer.site-drawer--filter {
  transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1) !important;
}
html body .site-drawer__backdrop,
html body .site-drawer__backdrop.is-open {
  transition: opacity 0.4s cubic-bezier(0.22, 1, 0.36, 1) !important;
}

/* Filter UI: match Clear / View footer + header spacing */
html body .site-drawer--filter .site-filter__footer {
  display: flex !important;
  gap: 0.75rem !important;
  justify-content: space-between !important;
}
html body .site-drawer--filter .site-filter__footer > button {
  flex: 1 1 0 !important;
}
html body .site-drawer--filter .site-filter__head {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
}
html body .site-drawer--filter .site-filter__row {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
}

/* PLP typography closer to Bottega / sitewide */
html body main.site-collections-products .site-collections-products__bar button,
html body main.site-collections-products .site-collections-products__bar span {
  font-size: 12px !important;
  letter-spacing: -0.20px !important;
  font-weight: 400 !important;
}
html body main.site-collections-products .site-plp-cat.is-active {
  font-weight: 400 !important;
}
@media (min-width: 768px) {
  html body main.site-collections-products .site-collections-products__bar button,
  html body main.site-collections-products .site-collections-products__bar span {
    font-size: 13px !important;
  }
}


/* —— Pass 20260803ag — newsletter compact + PLP sticky handoff + essentials bar —— */

/* Subscribe drawer: no giant gap — button sits under fields */
html body .site-newsletter__body,
html body .site-newsletter__body.justify-between,
html body .site-newsletter__body.justify-start,
html body .site-newsletter__form,
html body .site-newsletter__form.justify-between,
html body .site-newsletter__form.justify-start,
html body .site-newsletter__form.flex-1 {
  justify-content: flex-start !important;
  gap: 0 !important;
}
html body .site-newsletter__actions {
  margin-top: 1.25rem !important;
  padding-top: 0 !important;
  margin-bottom: 0 !important;
}
html body .site-newsletter__legal {
  margin-bottom: 0 !important;
}

/* PLP sticky strip handoff — wait until strip overlaps top, then replace header */
html.plp-page .site-collections-products__bar-sentinel {
  display: block !important;
  height: 0 !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  pointer-events: none !important;
}
html.plp-page .site-header,
html.plp-page header.site-header,
html.plp-page .site-promo {
  transition: transform 0.28s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.22s ease !important;
  will-change: transform !important;
}
/* Strip sticks at top under the header (lower z). When it overlaps, header slides away — no jump. */
html.plp-page .site-collections-products__bar {
  position: sticky !important;
  top: 0 !important;
  z-index: 110 !important;
  transition: box-shadow 0.22s ease, z-index 0s linear 0.05s !important;
}
/* When strip has reached/overlapped the top — slide header+promo away; strip takes chrome */
html.plp-strip-active .site-header,
html.plp-strip-active header.site-header,
html body.plp-strip-active .site-header,
html body.plp-strip-active header.site-header {
  transform: translate3d(0, -100%, 0) !important;
  pointer-events: none !important;
}
html.plp-strip-active .site-promo,
html body.plp-strip-active .site-promo {
  transform: translate3d(0, -100%, 0) !important;
  opacity: 0 !important;
  pointer-events: none !important;
}
html.plp-strip-active .site-collections-products__bar,
html body.plp-strip-active .site-collections-products__bar,
html.plp-strip-active main.site-collections-products .site-collections-products__bar {
  top: 0 !important;
  z-index: 12050 !important;
  box-shadow: 0 1px 0 rgba(0,0,0,0.06) !important;
}

/* PLP bar typography closer to Bottega attachment */
html body main.site-collections-products .site-collections-products__bar {
  min-height: 52px !important;
  padding-top: 14px !important;
  padding-bottom: 14px !important;
}
html body main.site-collections-products .site-plp-cat {
  font-size: 12px !important;
  font-weight: 400 !important;
  letter-spacing: -0.20px !important;
  color: #111 !important;
  white-space: nowrap !important;
}
html body main.site-collections-products .site-plp-cat.is-active {
  font-weight: 400 !important;
}
html body main.site-collections-products .site-collections-products__bar > :first-child {
  gap: 1.35rem !important;
}


/* —— Pass 20260803ai — all sidebars = subscribe timing; overlay sticky strip —— */
:root {
  --drawer-duration: 0.4s;
  --drawer-ease: cubic-bezier(0.22, 1, 0.36, 1);
}

html body .site-newsletter,
html body .site-drawer,
html body .site-drawer--filter,
html body .site-drawer--product,
html body .site-drawer--sheet,
html body .site-drawer.site-drawer--filter,
html body .site-drawer.site-drawer--product,
div.site-newsletter,
div.site-drawer {
  transition: transform var(--drawer-duration) var(--drawer-ease) !important;
  will-change: transform !important;
}

html body .site-newsletter__backdrop,
html body .site-drawer__backdrop,
html body .site-newsletter__backdrop.is-open,
html body .site-drawer__backdrop.is-open {
  transition: opacity var(--drawer-duration) var(--drawer-ease) !important;
}

/* Drawers + backdrops always above sticky PLP strip (12050) and header */
html body .site-newsletter__backdrop,
html body .site-drawer__backdrop,
html.newsletter-open body .site-newsletter__backdrop,
html.site-drawer-open body .site-drawer__backdrop,
html.plp-strip-active .site-newsletter__backdrop,
html.plp-strip-active .site-drawer__backdrop,
html body.plp-strip-active .site-newsletter__backdrop,
html body.plp-strip-active .site-drawer__backdrop {
  z-index: 13040 !important;
}

html body .site-newsletter,
html body .site-drawer,
html body .site-drawer--filter,
html body .site-drawer--product,
html body .site-drawer--sheet,
html.newsletter-open body .site-newsletter,
html.site-drawer-open body .site-drawer,
html.plp-strip-active .site-newsletter,
html.plp-strip-active .site-drawer,
html.plp-strip-active .site-drawer--filter,
html.plp-strip-active .site-drawer--product,
html body.plp-strip-active .site-newsletter,
html body.plp-strip-active .site-drawer,
html body.plp-strip-active .site-drawer--filter,
html body.plp-strip-active .site-drawer--product {
  z-index: 13055 !important;
}

html body .site-drawer--sheet {
  z-index: 13060 !important;
}

/* When a drawer is open, keep strip visible under the dim (do not fight overlay) */
html.site-drawer-open .site-collections-products__bar,
html body.site-drawer-open .site-collections-products__bar {
  z-index: 110 !important; /* below drawer backdrop 13040 */
}
html.site-drawer-open.plp-strip-active .site-collections-products__bar,
html body.site-drawer-open.plp-strip-active .site-collections-products__bar {
  z-index: 110 !important;
}
/* Subscribe + sticky PLP strip: same as filter — strip stays sticky under dim, header stays off */
html.plp-strip-active.newsletter-open .site-collections-products__bar,
html.plp-strip-active body.newsletter-open .site-collections-products__bar,
html body.plp-strip-active.newsletter-open .site-collections-products__bar,
html.plp-strip-active.newsletter-open main.site-collections-products .site-collections-products__bar,
html.plp-page.plp-strip-active.newsletter-open .site-collections-products__bar,
html.plp-page.plp-strip-active body.newsletter-open .site-collections-products__bar {
  position: sticky !important;
  top: 0 !important;
  z-index: 12050 !important;
  transform: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  background: #fff !important;
}
html.plp-strip-active.newsletter-open .site-header,
html.plp-strip-active body.newsletter-open .site-header,
html body.plp-strip-active.newsletter-open .site-header,
html.plp-strip-active.newsletter-open header.site-header,
html.plp-page.plp-strip-active.newsletter-open .site-header {
  transform: translate3d(0, -120%, 0) !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  z-index: 90 !important;
}

/* Open/closed transform states for product drawers too */
html body .site-drawer--product.translate-x-0,
html body .site-drawer.translate-x-0 {
  --tw-translate-x: 0px !important;
  translate: none !important;
  transform: translate3d(0, 0, 0) !important;
}
html body .site-drawer--product.translate-x-full,
html body .site-drawer.translate-x-full {
  --tw-translate-x: 0px !important;
  translate: none !important;
  transform: translate3d(100%, 0, 0) !important;
}
html body .site-drawer--sheet.translate-y-0 {
  transform: translate3d(0, 0, 0) !important;
}
html body .site-drawer--sheet.translate-y-full {
  transform: translate3d(0, 100%, 0) !important;
}


/* —— Pass 20260803ai2 — newsletter/product drawers always above sticky strip —— */
html body .site-newsletter,
html.newsletter-open body .site-newsletter,
html.plp-page body .site-newsletter,
html.plp-strip-active body .site-newsletter,
html body.plp-strip-active .site-newsletter,
div.site-newsletter.fixed {
  z-index: 13055 !important;
}
html body .site-newsletter__backdrop,
html.newsletter-open body .site-newsletter__backdrop,
html.plp-strip-active body .site-newsletter__backdrop,
div.site-newsletter__backdrop.fixed {
  z-index: 13040 !important;
  transition: opacity 0.4s cubic-bezier(0.22, 1, 0.36, 1) !important;
}


/* —— Pass 20260803ak — filter on sticky strip: keep strip, no header snap, no jump —— */
/* Older "always show header on drawer-open" rules must lose to strip-active */
html.plp-strip-active.site-drawer-open .site-header,
html.plp-strip-active.site-drawer-open header.site-header,
html.plp-strip-active body.site-drawer-open .site-header,
html.plp-strip-active body.site-drawer-open header.site-header,
html body.plp-strip-active.site-drawer-open .site-header,
html body.plp-strip-active.site-drawer-open header.site-header,
html.plp-strip-active.site-drawer-open .site-promo,
html.plp-strip-active body.site-drawer-open .site-promo,
html body.plp-strip-active.site-drawer-open .site-promo {
  transform: translate3d(0, -100%, 0) !important;
  translate: none !important;
  --tw-translate-y: -100% !important;
  pointer-events: none !important;
  z-index: 100 !important;
}

/* Strip stays put under the dim while filter is open (drawer overlays it) */
html.plp-strip-active.site-drawer-open .site-collections-products__bar,
html.plp-strip-active body.site-drawer-open .site-collections-products__bar,
html body.plp-strip-active.site-drawer-open .site-collections-products__bar,
html.plp-strip-active.site-drawer-open main.site-collections-products .site-collections-products__bar {
  position: sticky !important;
  top: 0 !important;
  z-index: 12050 !important;
  transform: none !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/* Drawer + backdrop always above strip */
html.plp-strip-active.site-drawer-open .site-drawer--filter,
html.plp-strip-active.site-drawer-open .site-drawer,
html body.plp-strip-active.site-drawer-open .site-drawer--filter,
html.plp-strip-active.site-drawer-open .site-drawer__backdrop,
html body.plp-strip-active.site-drawer-open .site-drawer__backdrop {
  z-index: 13055 !important;
}
html.plp-strip-active.site-drawer-open .site-drawer__backdrop,
html body.plp-strip-active.site-drawer-open .site-drawer__backdrop {
  z-index: 13040 !important;
  top: 0 !important;
  inset: 0 !important;
}

/* Do not change body/html box model on PLP filter open — prevents page jump */
html.plp-page.site-drawer-open,
html.plp-page.site-drawer-open body,
html.plp-page body.site-drawer-open {
  /* keep whatever position/overflow the page already has */
  padding-right: 0 !important;
}


/* —— Pass 20260803al — no filter jump + Essentials hub (Bottega men style) —— */
html.plp-page.site-drawer-open,
html.plp-page.site-drawer-closing {
  position: static !important;
  overflow-x: clip !important;
  overflow-y: scroll !important;
  overflow-anchor: none !important;
}
html.plp-page.site-drawer-open body,
html.plp-page body.site-drawer-open,
html.plp-page.site-drawer-closing body,
html.plp-page body.site-drawer-closing {
  position: static !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  width: auto !important;
  padding-bottom: unset !important;
  margin-bottom: unset !important;
  overflow-x: clip !important;
  overflow-y: visible !important;
  overflow-anchor: none !important;
}
html.plp-page.site-drawer-open .site-footer,
html.plp-page.site-drawer-open #root,
html.plp-page body.site-drawer-open .site-footer,
html.plp-page body.site-drawer-open #root {
  padding-bottom: unset !important;
  margin-bottom: unset !important;
}
html.plp-page.site-drawer-open .site-footer.pb-4,
html.plp-page body.site-drawer-open .site-footer.pb-4 {
  padding-bottom: 9px !important;
}
html.plp-page.site-drawer-open .site-footer.pb-6,
html.plp-page body.site-drawer-open .site-footer.pb-6 {
  padding-bottom: 1.5rem !important;
}

/* Essentials hub — Bottega /men.html rhyme */
html body .site-essentials-hub {
  background: #fff !important;
}
html body .site-essentials-hub__sub {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  max-width: 100% !important;
}
html body .site-essentials-hub__grid {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 2px !important;
}
@media (min-width: 768px) {
  html body .site-essentials-hub__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 2px !important;
  }
}
html body .site-essentials-hub__label {
  font-size: 10px !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  font-weight: 500 !important;
}
@media (min-width: 768px) {
  html body .site-essentials-hub__label {
    font-size: 11px !important;
  }
}
html body .site-essentials-hub__campaign {
  position: relative !important;
  width: 100% !important;
  min-height: 42vh !important;
}
@media (min-width: 768px) {
  html body .site-essentials-hub__campaign {
    min-height: 52vh !important;
  }
}


/* —— Pass 20260803am — PLP filter: NEVER take header/promo out of flow (fixes jump) —— */
html.plp-page.site-drawer-open .site-header,
html.plp-page.site-drawer-open header.site-header,
html.plp-page body.site-drawer-open .site-header,
html.plp-page body.site-drawer-open header.site-header,
html.plp-page.site-drawer-open body .site-header,
html.plp-page body:has(.site-drawer__backdrop.is-open) .site-header,
html.plp-page body:has(.site-drawer__backdrop.is-open) header.site-header {
  position: sticky !important;
  top: 0 !important;
  left: auto !important;
  right: auto !important;
  width: 100% !important;
  /* keep strip-handoff hide if active */
}
html.plp-page.plp-strip-active.site-drawer-open .site-header,
html.plp-page.plp-strip-active.site-drawer-open header.site-header,
html.plp-page.plp-strip-active body.site-drawer-open .site-header,
html.plp-page.plp-strip-active body.site-drawer-open header.site-header,
html.plp-page body.plp-strip-active.site-drawer-open .site-header,
html.plp-page body.plp-strip-active.site-drawer-open header.site-header {
  position: sticky !important;
  transform: translate3d(0, -100%, 0) !important;
  translate: none !important;
  --tw-translate-y: -100% !important;
  pointer-events: none !important;
  z-index: 100 !important;
  opacity: 1 !important;
  visibility: visible !important;
  background: #fff !important;
}
html.plp-page.site-drawer-open .site-promo,
html.plp-page body.site-drawer-open .site-promo,
html.plp-page.plp-strip-active.site-drawer-open .site-promo,
html.plp-page body.plp-strip-active.site-drawer-open .site-promo {
  position: relative !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  width: 100% !important;
  transform: translate3d(0, -100%, 0) !important;
  pointer-events: none !important;
  z-index: 99 !important;
}
/* Keep sticky strip stable while filter overlays it */
html.plp-page.site-drawer-open .site-collections-products__bar,
html.plp-page.plp-strip-active.site-drawer-open .site-collections-products__bar,
html.plp-page body.site-drawer-open .site-collections-products__bar {
  position: sticky !important;
  top: 0 !important;
  z-index: 12050 !important;
}


/* —— Pass 20260803an — beat :has() drawer fixed rules (higher specificity) —— */
html.plp-page body.site-drawer-open .site-header,
html.plp-page body.site-drawer-open header.site-header,
html.plp-page body:has(.site-drawer__backdrop.is-open) .site-header,
html.plp-page body:has(.site-drawer__backdrop.is-open) header.site-header,
html.plp-page body:has(.fixed.inset-0.opacity-100.pointer-events-auto) .site-header,
html.plp-page body:has(.fixed.inset-0.opacity-100.pointer-events-auto) header.site-header,
html.plp-page.site-drawer-open body .site-header,
html.plp-page.site-drawer-open body header.site-header {
  position: sticky !important;
  top: 0 !important;
  left: auto !important;
  right: auto !important;
  width: 100% !important;
  transform: none !important;
  translate: none !important;
  --tw-translate-y: 0 !important;
}
html.plp-page.plp-strip-active body.site-drawer-open .site-header,
html.plp-page.plp-strip-active body.site-drawer-open header.site-header,
html.plp-page.plp-strip-active body:has(.site-drawer__backdrop.is-open) .site-header,
html.plp-page.plp-strip-active body:has(.site-drawer__backdrop.is-open) header.site-header,
html.plp-page body.plp-strip-active.site-drawer-open .site-header,
html.plp-page body.plp-strip-active.site-drawer-open header.site-header,
html.plp-page body.plp-strip-active:has(.site-drawer__backdrop.is-open) .site-header,
html.plp-page body.plp-strip-active:has(.site-drawer__backdrop.is-open) header.site-header {
  position: sticky !important;
  top: 0 !important;
  left: auto !important;
  right: auto !important;
  width: 100% !important;
  transform: translate3d(0, -100%, 0) !important;
  translate: none !important;
  --tw-translate-y: -100% !important;
  pointer-events: none !important;
  z-index: 100 !important;
  opacity: 1 !important;
  visibility: visible !important;
  background: #fff !important;
}
html.plp-page body.site-drawer-open .site-promo,
html.plp-page body:has(.site-drawer__backdrop.is-open) .site-promo,
html.plp-page.plp-strip-active body.site-drawer-open .site-promo,
html.plp-page.plp-strip-active body:has(.site-drawer__backdrop.is-open) .site-promo,
html.plp-page body.plp-strip-active.site-drawer-open .site-promo,
html.plp-page body.plp-strip-active:has(.site-drawer__backdrop.is-open) .site-promo {
  position: relative !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  width: 100% !important;
  transform: none !important;
  translate: none !important;
  z-index: 99 !important;
}
html.plp-page.plp-strip-active body.site-drawer-open .site-promo,
html.plp-page.plp-strip-active body:has(.site-drawer__backdrop.is-open) .site-promo,
html.plp-page body.plp-strip-active.site-drawer-open .site-promo,
html.plp-page body.plp-strip-active:has(.site-drawer__backdrop.is-open) .site-promo {
  transform: translate3d(0, -100%, 0) !important;
  pointer-events: none !important;
}


/* —— Pass 20260803ao — PLP filter: body must NOT be a scrollport (keeps sticky) —— */
html.plp-page.site-drawer-open,
html.plp-page.site-drawer-closing {
  overflow-x: clip !important;
  overflow-y: scroll !important;
  position: static !important;
  width: auto !important;
}
html.plp-page.site-drawer-open body,
html.plp-page body.site-drawer-open,
html.plp-page.site-drawer-closing body,
html.plp-page body.site-drawer-closing {
  /* Match resting PLP: clip x / visible y — never scroll/hidden on body */
  overflow-x: clip !important;
  overflow-y: visible !important;
  position: static !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  width: auto !important;
  height: auto !important;
  max-height: none !important;
  padding-right: 0 !important;
  padding-bottom: unset !important;
  margin-bottom: unset !important;
  transform: none !important;
  filter: none !important;
  perspective: none !important;
  contain: none !important;
}
/* Sticky strip must keep sticking while filter overlays it */
html.plp-page.site-drawer-open .site-collections-products__bar,
html.plp-page.plp-strip-active.site-drawer-open .site-collections-products__bar,
html.plp-page body.site-drawer-open .site-collections-products__bar,
html.plp-page.plp-strip-active body.site-drawer-open .site-collections-products__bar {
  position: sticky !important;
  top: 0 !important;
  z-index: 12050 !important;
  transform: none !important;
}


/* —— Pass 20260803ap — ONE underline: same length + 1px weight sitewide —— */
html {
  --link-underline-weight: 1px;
  --link-underline-gap: 2px;
  --interactive-line: 1px;
}

/* Kill every legacy ::after / text-decoration underline on interactive links */
html body .link-line::after,
html body a.link-line::after,
html body .hover-underline-anim::after,
html body .hover-underline-anim:after,
html body .hover-underline-swap::after,
html body .hover-underline-swap:after,
html body .site-nav__link--underline::after,
html body a.site-nav__link--underline::after,
html body .site-nav__link:after,
html body .site-mega__link::after,
html body .site-mega__title::after,
html body a.site-mega__link::after,
html body a.site-mega__title::after,
html body .site-mega .link-line::after,
html body .site-newsletter__success-link::after,
html body .cookie-banner__link::after,
html body .cookie-settings__more::after,
html body .page-404__care-link::after,
html body .site-search__list-link::after,
html body .site-search__hint-text::after {
  content: none !important;
  display: none !important;
  width: 0 !important;
  height: 0 !important;
  background: none !important;
  transform: none !important;
  transition: none !important;
}

/* Shared interactive underline tokens — full text width, 1px weight */
html body .link-line,
html body a.link-line,
html body .hover-underline-anim,
html body .hover-underline-swap,
html body .site-nav__link--underline,
html body a.site-nav__link--underline,
html body .site-mega__link,
html body .site-mega__title,
html body a.site-mega__link,
html body a.site-mega__title,
html body .site-newsletter__success-link,
html body a.site-newsletter__success-link,
html body .cookie-banner__link,
html body a.cookie-banner__link,
html body .cookie-settings__more,
html body a.cookie-settings__more,
html body .page-404__care-link,
html body .site-search__list-link,
html body .site-search__hint-text {
  text-decoration: none !important;
  text-decoration-thickness: var(--link-underline-weight) !important;
  text-underline-offset: var(--link-underline-gap) !important;
  background-image: linear-gradient(currentColor, currentColor) !important;
  background-repeat: no-repeat !important;
  background-size: 0 var(--link-underline-weight) !important;
  background-position: 100% calc(100% - var(--link-underline-gap)) !important;
  transition:
    background-size var(--link-line-duration, 0.55s) cubic-bezier(0.25, 1, 0.5, 1),
    background-position var(--link-line-duration, 0.55s) cubic-bezier(0.25, 1, 0.5, 1),
    color 0.2s ease !important;
}

/* Inline links shrink to text → underline length = text length */
html body .link-line,
html body a.link-line,
html body .hover-underline-anim,
html body .hover-underline-swap,
html body .site-mega__link,
html body .site-mega__title,
html body a.site-mega__link,
html body a.site-mega__title,
html body .site-newsletter__success-link,
html body .cookie-banner__link,
html body .cookie-settings__more,
html body .page-404__care-link,
html body .site-search__list-link,
html body .site-search__hint-text {
  display: inline-block !important;
  width: fit-content !important;
  max-width: 100% !important;
  padding-bottom: 0 !important;
  box-decoration-break: clone !important;
  -webkit-box-decoration-break: clone !important;
}

/* Header nav: tall flex cell — pin line under centered glyphs, still full text width */
html body .site-nav__link--underline,
html body a.site-nav__link--underline {
  display: flex !important;
  width: auto !important;
  align-items: center !important;
  background-position: 100% calc(50% + 0.55em) !important;
}

/* Hover / open / active → full-width 1px draw L→R */
html body .link-line:hover,
html body .link-line:focus-visible,
html body .link-line.is-active,
html body a.link-line:hover,
html body a.link-line:focus-visible,
html body .hover-underline-anim:hover,
html body .hover-underline-anim:focus-visible,
html body .site-nav__link--underline:hover,
html body .site-nav__link--underline:focus-visible,
html body .site-nav__link--underline:active,
html body .site-nav__item.is-open > .site-nav__link--underline,
html body .group:hover > .site-nav__link--underline,
html body .site-mega__link:hover,
html body .site-mega__link:focus-visible,
html body .site-mega__title:hover,
html body .site-mega__title:focus-visible,
html body a.site-mega__link:hover,
html body a.site-mega__title:hover,
html body .site-newsletter__success-link:hover,
html body .site-newsletter__success-link:focus-visible,
html body .cookie-banner__link:hover,
html body .cookie-banner__link:focus-visible,
html body .cookie-settings__more:hover,
html body .cookie-settings__more:focus-visible,
html body .page-404__care-link:hover,
html body .site-search__list-link:hover,
html body .site-search__list-link:focus-visible,
html body .site-search__list-link.is-active,
html body .site-search__hint-text:hover {
  background-size: 100% var(--link-underline-weight) !important;
  background-position: 0 calc(100% - var(--link-underline-gap)) !important;
}

html body .site-nav__link--underline:hover,
html body .site-nav__link--underline:focus-visible,
html body .site-nav__link--underline:active,
html body .site-nav__item.is-open > .site-nav__link--underline,
html body .group:hover > .site-nav__link--underline {
  background-position: 0 calc(50% + 0.55em) !important;
}

/* Always-on underlines (Find store / locale / Trade Support / success) — same 1px + text length */
html body .hover-underline-swap,
html body .site-newsletter__success-link,
html body a.site-newsletter__success-link {
  background-size: 100% var(--link-underline-weight) !important;
  background-position: 0 calc(100% - var(--link-underline-gap)) !important;
}

/* Cookie settings tabs — same weight/offset as site links */
html body .cookie-settings__nav .tab-button span.underline,
html body .cookie-settings__nav .tab-button .underline,
html body .cookie-settings__nav .tab-button.is-active span,
html body .underline.decoration-1,
html body a.underline {
  text-decoration-line: underline !important;
  text-decoration-thickness: var(--link-underline-weight) !important;
  text-underline-offset: var(--link-underline-gap) !important;
  text-decoration-color: currentColor !important;
}

/* Tailwind underline utilities → same tokens */
html body .underline {
  text-decoration-thickness: var(--link-underline-weight) !important;
  text-underline-offset: var(--link-underline-gap) !important;
}
html body .underline-offset-2,
html body .underline-offset-4,
html body .underline-offset-\[3px\] {
  text-underline-offset: var(--link-underline-gap) !important;
}
html body .decoration-1 {
  text-decoration-thickness: var(--link-underline-weight) !important;
}


/* —— Pass 20260803aq — essentials layout; underline L→R + lower; no desktop drawer; filter under promo; PLP type —— */

/* Essentials hub: Bottega category grid + site gutters/type */
html body .site-essentials-hub {
  background: #fff !important;
  padding: 0 !important;
}
html body .site-essentials-hub__sub {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding: 1.15rem var(--page-gutter, 16px) 1.25rem !important;
  gap: 1rem !important;
}
html body .site-essentials-hub__sub-left,
html body .site-essentials-hub__sub-right {
  font-size: var(--fs-body, 12px) !important;
  font-weight: 500 !important;
  letter-spacing: -0.20px !important;
  text-transform: uppercase !important;
  line-height: 1.35 !important;
  color: #000 !important;
}
@media (min-width: 768px) {
  html body .site-essentials-hub__sub {
    padding: 1.35rem var(--page-gutter, 32px) 1.5rem !important;
  }
  html body .site-essentials-hub__sub-left,
  html body .site-essentials-hub__sub-right {
    font-size: var(--fs-body-lg, 14px) !important;
  }
}
html body .site-essentials-hub__grid {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 2px !important;
  padding: 0 var(--page-gutter, 16px) !important;
  margin: 0 !important;
}
@media (min-width: 768px) {
  html body .site-essentials-hub__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    padding: 0 var(--page-gutter, 32px) !important;
  }
}
html body .site-essentials-hub__media {
  aspect-ratio: 1 / 1 !important;
  background: #F2F2F0 !important;
  width: 100% !important;
}
html body .site-essentials-hub__label {
  display: block !important;
  margin: 0.85rem 0 1.5rem !important;
  padding: 0 0.25rem !important;
  font-size: var(--fs-body, 12px) !important;
  font-weight: 500 !important;
  letter-spacing: -0.20px !important;
  text-transform: uppercase !important;
  text-align: center !important;
  color: #000 !important;
  line-height: 1.35 !important;
}
@media (min-width: 768px) {
  html body .site-essentials-hub__label {
    margin: 1rem 0 2rem !important;
    font-size: var(--fs-body-lg, 14px) !important;
  }
}
html body .site-essentials-hub__campaign {
  position: relative !important;
  width: 100% !important;
  margin-top: 0.5rem !important;
  min-height: 42vh !important;
  background: #E8E7E3 !important;
}
@media (min-width: 768px) {
  html body .site-essentials-hub__campaign {
    margin-top: 1rem !important;
    min-height: 52vh !important;
  }
}
html body .site-essentials-hub__campaign-cta {
  padding-bottom: 2.5rem !important;
}
@media (min-width: 768px) {
  html body .site-essentials-hub__campaign-cta {
    padding-bottom: 3.5rem !important;
  }
}

/* Underline: a bit lower + true L→R (size grows from left, position locked) */
html {
  --link-underline-weight: 1px;
  --link-underline-gap: 5px;
  --interactive-line: 1px;
}
html body .link-line,
html body a.link-line,
html body .hover-underline-anim,
html body .hover-underline-swap,
html body .site-mega__link,
html body .site-mega__title,
html body a.site-mega__link,
html body a.site-mega__title,
html body .site-newsletter__success-link,
html body a.site-newsletter__success-link,
html body .cookie-banner__link,
html body a.cookie-banner__link,
html body .cookie-settings__more,
html body a.cookie-settings__more,
html body .page-404__care-link,
html body .site-search__list-link,
html body .site-search__hint-text,
html body .site-essentials-hub__sub-right {
  padding-bottom: var(--link-underline-gap) !important;
  background-image: linear-gradient(currentColor, currentColor) !important;
  background-repeat: no-repeat !important;
  background-size: 0 var(--link-underline-weight) !important;
  background-position: left bottom !important;
  transition: background-size var(--link-line-duration, 0.55s) cubic-bezier(0.25, 1, 0.5, 1) !important;
}
html body .site-nav__link--underline,
html body a.site-nav__link--underline {
  background-image: linear-gradient(currentColor, currentColor) !important;
  background-repeat: no-repeat !important;
  background-size: 0 var(--link-underline-weight) !important;
  background-position: left calc(50% + 0.75em) !important;
  transition: background-size var(--link-line-duration, 0.55s) cubic-bezier(0.25, 1, 0.5, 1) !important;
}
html body .link-line:hover,
html body .link-line:focus-visible,
html body .link-line.is-active,
html body a.link-line:hover,
html body a.link-line:focus-visible,
html body .hover-underline-anim:hover,
html body .hover-underline-anim:focus-visible,
html body .site-nav__link--underline:hover,
html body .site-nav__link--underline:focus-visible,
html body .site-nav__link--underline:active,
html body .site-nav__item.is-open > .site-nav__link--underline,
html body .group:hover > .site-nav__link--underline,
html body .site-mega__link:hover,
html body .site-mega__link:focus-visible,
html body .site-mega__title:hover,
html body .site-mega__title:focus-visible,
html body a.site-mega__link:hover,
html body a.site-mega__title:hover,
html body .site-newsletter__success-link:hover,
html body .site-newsletter__success-link:focus-visible,
html body .cookie-banner__link:hover,
html body .cookie-banner__link:focus-visible,
html body .cookie-settings__more:hover,
html body .cookie-settings__more:focus-visible,
html body .page-404__care-link:hover,
html body .site-search__list-link:hover,
html body .site-search__list-link:focus-visible,
html body .site-search__list-link.is-active,
html body .site-search__hint-text:hover,
html body .site-essentials-hub__sub-right:hover,
html body .site-essentials-hub__sub-right:focus-visible {
  background-size: 100% var(--link-underline-weight) !important;
  background-position: left bottom !important;
}
html body .site-nav__link--underline:hover,
html body .site-nav__link--underline:focus-visible,
html body .site-nav__link--underline:active,
html body .site-nav__item.is-open > .site-nav__link--underline,
html body .group:hover > .site-nav__link--underline {
  background-position: left calc(50% + 0.75em) !important;
}
html body .hover-underline-swap,
html body .site-newsletter__success-link,
html body a.site-newsletter__success-link {
  background-size: 100% var(--link-underline-weight) !important;
  background-position: left bottom !important;
}
html body .underline,
html body .cookie-settings__nav .tab-button span.underline,
html body .cookie-settings__nav .tab-button .underline {
  text-decoration-thickness: var(--link-underline-weight) !important;
  text-underline-offset: var(--link-underline-gap) !important;
}

/* Desktop: never show hamburger / mobile drawer */
@media (min-width: 1024px) {
  html body .header-util.header-util--menu,
  html body button.header-util.header-util--menu,
  html body .header-util--menu {
    display: none !important;
    pointer-events: none !important;
    visibility: hidden !important;
  }
  html body .mobile-nav,
  html body .mobile-nav.is-open,
  html body .mobile-nav.is-closed,
  html body .mobile-nav__backdrop,
  html body .mobile-nav__backdrop.is-open,
  html body.mobile-nav-open .mobile-nav,
  html body.mobile-nav-open .mobile-nav__backdrop {
    display: none !important;
    visibility: hidden !important;
    pointer-events: none !important;
    opacity: 0 !important;
  }
}

/* Filter / product drawers: sit BELOW announcement bar (promo stays visible) */
html body.site-drawer-open .site-drawer__backdrop,
html body.site-drawer-open .site-drawer__backdrop.is-open,
html body .site-drawer__backdrop.is-open {
  top: var(--promo-bar-height, 0px) !important;
  right: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: calc(100dvh - var(--promo-bar-height, 0px)) !important;
  max-height: calc(100dvh - var(--promo-bar-height, 0px)) !important;
  inset: auto !important;
}
html body.site-drawer-open .site-drawer,
html body.site-drawer-open .site-drawer--filter,
html body.site-drawer-open .site-drawer--product {
  top: var(--promo-bar-height, 0px) !important;
  right: 0 !important;
  bottom: 0 !important;
  left: auto !important;
  height: calc(100dvh - var(--promo-bar-height, 0px)) !important;
  max-height: calc(100dvh - var(--promo-bar-height, 0px)) !important;
  width: 100% !important;
}
@media (min-width: 768px) {
  html body.site-drawer-open .site-drawer,
  html body.site-drawer-open .site-drawer--filter,
  html body.site-drawer-open .site-drawer--product {
    width: 50% !important;
    max-width: 550px !important;
  }
}
html body.site-drawer-open .site-promo {
  z-index: 14050 !important;
  pointer-events: auto !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/* PLP type + gutters match site tokens */
html body main.site-collections-products {
  padding-left: var(--page-gutter, 16px) !important;
  padding-right: var(--page-gutter, 16px) !important;
}
html body main.site-collections-products .site-collections-products__title,
html body main.site-collections-products > h1 {
  font-size: var(--fs-body-lg, 14px) !important;
  font-weight: 500 !important;
  letter-spacing: -0.20px !important;
  line-height: 1.35 !important;
  text-transform: none !important;
  margin: 0 0 1.25rem !important;
}
@media (min-width: 768px) {
  html body main.site-collections-products .site-collections-products__title,
  html body main.site-collections-products > h1 {
    font-size: 16px !important;
  }
}
html body main.site-collections-products .site-plp-card h3,
html body main.site-collections-products .site-plp-card__title-row,
html body main.site-collections-products .site-plp-card__name,
html body main.site-collections-products .site-plp-card__price,
html body main.site-collections-products .site-plp-card__meta,
html body main.site-collections-products .site-plp-card > div:last-child {
  font-size: var(--fs-body, 12px) !important;
  font-weight: 400 !important;
  letter-spacing: -0.20px !important;
  line-height: 1.35 !important;
}
@media (min-width: 768px) {
  html body main.site-collections-products .site-plp-card h3,
  html body main.site-collections-products .site-plp-card__title-row,
  html body main.site-collections-products .site-plp-card__name,
  html body main.site-collections-products .site-plp-card__price,
  html body main.site-collections-products .site-plp-card__meta,
  html body main.site-collections-products .site-plp-card > div:last-child {
    font-size: var(--fs-body-lg, 14px) !important;
  }
}
html body main.site-collections-products .site-collections-products__bar {
  padding-left: var(--page-gutter, 16px) !important;
  padding-right: var(--page-gutter, 16px) !important;
  margin-left: calc(var(--page-gutter, 16px) * -1) !important;
  margin-right: calc(var(--page-gutter, 16px) * -1) !important;
}
html body main.site-collections-products .site-collections-products__bar a,
html body main.site-collections-products .site-collections-products__bar button {
  font-size: var(--fs-body, 12px) !important;
  letter-spacing: -0.20px !important;
}
@media (min-width: 768px) {
  html body main.site-collections-products .site-collections-products__bar a,
  html body main.site-collections-products .site-collections-products__bar button {
    font-size: var(--fs-body-lg, 14px) !important;
  }
}


/* —— Pass 20260803ar — filter dim/panel strictly under promo; promo above dim —— */
html body.site-drawer-open .site-drawer__backdrop,
html body.site-drawer-open .site-drawer__backdrop.is-open,
html body .site-drawer__backdrop.is-open,
html body:has(.site-drawer__backdrop.is-open) .site-drawer__backdrop,
html.plp-page.site-drawer-open .site-drawer__backdrop,
html.plp-page body.site-drawer-open .site-drawer__backdrop {
  top: var(--promo-bar-height, 0px) !important;
  right: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: calc(100% - var(--promo-bar-height, 0px)) !important;
  height: calc(100dvh - var(--promo-bar-height, 0px)) !important;
  max-height: calc(100dvh - var(--promo-bar-height, 0px)) !important;
  inset: var(--promo-bar-height, 0px) 0 0 0 !important;
  z-index: 13040 !important;
}
html body.site-drawer-open .site-drawer,
html body.site-drawer-open .site-drawer--filter,
html body.site-drawer-open .site-drawer--product,
html.plp-page.site-drawer-open .site-drawer,
html.plp-page body.site-drawer-open .site-drawer {
  top: var(--promo-bar-height, 0px) !important;
  height: calc(100dvh - var(--promo-bar-height, 0px)) !important;
  max-height: calc(100dvh - var(--promo-bar-height, 0px)) !important;
  z-index: 13055 !important;
}
html body.site-drawer-open .site-promo,
html body.site-drawer-open .site-promo *,
html.plp-page.site-drawer-open .site-promo,
html.plp-page body.site-drawer-open .site-promo,
html.plp-page.plp-strip-active.site-drawer-open .site-promo,
html.plp-page body.plp-strip-active.site-drawer-open .site-promo {
  z-index: 14050 !important;
  pointer-events: auto !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  translate: none !important;
}


/* —— Pass 20260803as — drawer backdrop geometry (no Tailwind inset-0) + promo above —— */
html body .site-drawer__backdrop,
html body .site-drawer__backdrop.is-open,
html body.site-drawer-open .site-drawer__backdrop,
html.plp-page.site-drawer-open .site-drawer__backdrop,
html.plp-page.plp-strip-active.site-drawer-open .site-drawer__backdrop,
html.plp-page body.plp-strip-active.site-drawer-open .site-drawer__backdrop {
  position: fixed !important;
  top: var(--promo-bar-height, 0px) !important;
  right: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: auto !important;
  max-height: none !important;
  inset: unset !important;
  inset: var(--promo-bar-height, 0px) 0px 0px 0px !important;
  z-index: 13040 !important;
}
html body.site-drawer-open .site-promo,
html.plp-page.site-drawer-open .site-promo,
html.plp-page body.site-drawer-open .site-promo,
html.plp-page.plp-strip-active.site-drawer-open .site-promo,
html.plp-page body.plp-strip-active.site-drawer-open .site-promo,
html.plp-page body.plp-strip-active:has(.site-drawer__backdrop.is-open) .site-promo {
  z-index: 14050 !important;
  pointer-events: auto !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
}


/* —— Pass 20260803at — underline +2px + CSS→animated swap; essentials Bottega gaps; mobile 14px boxes —— */
html {
  --link-underline-weight: 1px;
  --link-underline-gap: 7px; /* was 5px; push +2px */
  --interactive-line: 1px;
}

/* Resting CSS underline links → animated draw on hover (hide CSS, show L→R line) */
html body .hover-underline-swap,
html body a.hover-underline-swap,
html body .site-plp-cat.hover-underline-swap,
html body .site-plp-cat.is-active,
html body .site-newsletter__success-link,
html body a.site-newsletter__success-link,
html body .site-essentials-hub__sub-right,
html body .underline.decoration-1,
html body a.underline,
html body .cookie-settings__nav .tab-button span.underline,
html body .cookie-settings__nav .tab-button .underline,
html body .cookie-settings__nav .tab-button.is-active span {
  text-decoration-line: underline !important;
  text-decoration-thickness: var(--link-underline-weight) !important;
  text-underline-offset: var(--link-underline-gap) !important;
  text-decoration-color: currentColor !important;
  padding-bottom: 0 !important;
  background-image: linear-gradient(currentColor, currentColor) !important;
  background-repeat: no-repeat !important;
  background-size: 0 var(--link-underline-weight) !important;
  background-position: left calc(100% + 0px) !important;
  /* line sits at padding-edge; offset via underline-offset + bg at bottom with pad */
  background-position: left bottom !important;
  transition:
    background-size var(--link-line-duration, 0.55s) cubic-bezier(0.25, 1, 0.5, 1),
    text-decoration-color 0.15s ease !important;
}
/* Use padding so animated bg line sits gap below glyphs (matches underline-offset) */
html body .hover-underline-swap,
html body a.hover-underline-swap,
html body .site-plp-cat,
html body .site-newsletter__success-link,
html body .site-essentials-hub__sub-right {
  padding-bottom: var(--link-underline-gap) !important;
  text-underline-offset: var(--link-underline-gap) !important;
  background-position: left bottom !important;
  background-size: 0 var(--link-underline-weight) !important;
}
html body .hover-underline-swap:hover,
html body .hover-underline-swap:focus-visible,
html body a.hover-underline-swap:hover,
html body a.hover-underline-swap:focus-visible,
html body .site-plp-cat:hover,
html body .site-plp-cat:focus-visible,
html body .site-plp-cat.is-active:hover,
html body .site-newsletter__success-link:hover,
html body .site-newsletter__success-link:focus-visible,
html body .site-essentials-hub__sub-right:hover,
html body .site-essentials-hub__sub-right:focus-visible,
html body .underline.decoration-1:hover,
html body a.underline:hover {
  text-decoration-color: transparent !important;
  background-size: 100% var(--link-underline-weight) !important;
  background-position: left bottom !important;
}
/* Active PLP cat: animated line stays drawn; resting CSS underline hidden */
html body .site-plp-cat.is-active {
  text-decoration-color: transparent !important;
  background-size: 100% var(--link-underline-weight) !important;
  background-position: left bottom !important;
}

/* Hover-only anim links (+2px lower) */
html body .link-line,
html body a.link-line,
html body .hover-underline-anim,
html body .site-mega__link,
html body .site-mega__title,
html body a.site-mega__link,
html body a.site-mega__title,
html body .cookie-banner__link,
html body .cookie-settings__more,
html body .page-404__care-link,
html body .site-search__list-link,
html body .site-search__hint-text {
  text-decoration: none !important;
  padding-bottom: var(--link-underline-gap) !important;
  background-image: linear-gradient(currentColor, currentColor) !important;
  background-repeat: no-repeat !important;
  background-size: 0 var(--link-underline-weight) !important;
  background-position: left bottom !important;
  transition: background-size var(--link-line-duration, 0.55s) cubic-bezier(0.25, 1, 0.5, 1) !important;
}
html body .link-line:hover,
html body .link-line:focus-visible,
html body .link-line.is-active,
html body a.link-line:hover,
html body .hover-underline-anim:hover,
html body .hover-underline-anim:focus-visible,
html body .site-mega__link:hover,
html body .site-mega__title:hover,
html body .cookie-banner__link:hover,
html body .cookie-settings__more:hover,
html body .page-404__care-link:hover,
html body .site-search__list-link:hover,
html body .site-search__list-link.is-active,
html body .site-search__hint-text:hover {
  background-size: 100% var(--link-underline-weight) !important;
  background-position: left bottom !important;
}
html body .site-nav__link--underline,
html body a.site-nav__link--underline {
  text-decoration: none !important;
  padding-bottom: 0 !important;
  background-image: linear-gradient(currentColor, currentColor) !important;
  background-repeat: no-repeat !important;
  background-size: 0 var(--link-underline-weight) !important;
  background-position: left calc(50% + 0.75em + 2px) !important;
  transition: background-size var(--link-line-duration, 0.55s) cubic-bezier(0.25, 1, 0.5, 1) !important;
}
html body .site-nav__link--underline:hover,
html body .site-nav__link--underline:focus-visible,
html body .site-nav__item.is-open > .site-nav__link--underline,
html body .group:hover > .site-nav__link--underline {
  background-size: 100% var(--link-underline-weight) !important;
  background-position: left calc(50% + 0.75em + 2px) !important;
}

/* Kill leftover ::after underlines on swap/plp (animated is background) */
html body .hover-underline-swap::after,
html body .site-plp-cat::after,
html body .site-plp-cat > span.absolute {
  content: none !important;
  display: none !important;
}

/* —— Essentials hub: Bottega box gaps + side margins; mobile 14px on boxes only —— */
html body .site-essentials-hub {
  background: #fff !important;
}
html body .site-essentials-hub__sub {
  padding-left: var(--page-gutter, 16px) !important;
  padding-right: var(--page-gutter, 16px) !important;
}
html body .site-essentials-hub__grid {
  display: grid !important;
  grid-template-columns: 1fr !important;
  column-gap: 12px !important;
  row-gap: 0 !important;
  gap: 0 12px !important;
  /* mobile: ONLY the box section gets 14px page gutter */
  padding-left: 14px !important;
  padding-right: 14px !important;
  margin: 0 !important;
}
html body .site-essentials-hub__media {
  aspect-ratio: 1 / 1 !important;
  background: #f2f2f0 !important;
}
html body .site-essentials-hub__label {
  margin: 0.65rem 0 1.35rem !important;
  font-size: var(--fs-body, 12px) !important;
  letter-spacing: -0.20px !important;
  font-weight: 500 !important;
  text-transform: uppercase !important;
  text-align: center !important;
}
html body .site-essentials-hub__campaign {
  margin-top: 0.25rem !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  width: 100% !important;
}
@media (min-width: 768px) {
  html body .site-essentials-hub__sub {
    padding-left: clamp(40px, 6vw, 100px) !important;
    padding-right: clamp(40px, 6vw, 100px) !important;
  }
  html body .site-essentials-hub__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    column-gap: 16px !important;
    gap: 0 16px !important;
    padding-left: clamp(40px, 6vw, 100px) !important;
    padding-right: clamp(40px, 6vw, 100px) !important;
  }
  html body .site-essentials-hub__label {
    margin: 0.85rem 0 1.75rem !important;
    font-size: var(--fs-body-lg, 14px) !important;
  }
}


/* —— Pass 20260803au — force swap underline +7px pad on PLP cats / discover —— */
html body .site-plp-cat,
html body .site-plp-cat.hover-underline-swap,
html body .site-plp-cat.is-active,
html body .site-essentials-hub__sub-right,
html body .site-essentials-hub__sub-right.hover-underline-swap,
html body .hover-underline-swap {
  padding-bottom: var(--link-underline-gap, 7px) !important;
  text-decoration-line: underline !important;
  text-decoration-thickness: var(--link-underline-weight, 1px) !important;
  text-underline-offset: var(--link-underline-gap, 7px) !important;
  text-decoration-color: currentColor !important;
  background-image: linear-gradient(currentColor, currentColor) !important;
  background-repeat: no-repeat !important;
  background-size: 0 var(--link-underline-weight, 1px) !important;
  background-position: left bottom !important;
}
html body .site-plp-cat.is-active,
html body .site-plp-cat:hover,
html body .site-plp-cat:focus-visible,
html body .hover-underline-swap:hover,
html body .hover-underline-swap:focus-visible,
html body .site-essentials-hub__sub-right:hover,
html body .site-essentials-hub__sub-right:focus-visible {
  text-decoration-color: transparent !important;
  background-size: 100% var(--link-underline-weight, 1px) !important;
  background-position: left bottom !important;
}


/* —— Pass 20260803av — 2.5px underline gap; no CSS deco; always-on line + L→R redraw; essentials exact —— */
html {
  --link-underline-weight: 1px;
  --link-underline-gap: 2.5px;
  --interactive-line: 1px;
}

@keyframes xsample-ul-draw {
  from { background-size: 0 var(--link-underline-weight, 1px); }
  to { background-size: 100% var(--link-underline-weight, 1px); }
}

/* Kill CSS text-decoration underlines sitewide on interactive links */
html body .hover-underline-swap,
html body a.hover-underline-swap,
html body .hover-underline-anim,
html body .link-line,
html body a.link-line,
html body .site-plp-cat,
html body .site-plp-cat.is-active,
html body .site-essentials-hub__sub-right,
html body .site-newsletter__success-link,
html body a.site-newsletter__success-link,
html body .site-nav__link--underline,
html body a.site-nav__link--underline,
html body .site-mega__link,
html body .site-mega__title,
html body a.site-mega__link,
html body a.site-mega__title,
html body .cookie-banner__link,
html body .cookie-settings__more,
html body .page-404__care-link,
html body .site-search__list-link,
html body .site-search__hint-text,
html body .underline,
html body a.underline,
html body .underline.decoration-1,
html body .cookie-settings__nav .tab-button span.underline,
html body .cookie-settings__nav .tab-button .underline,
html body .cookie-settings__nav .tab-button.is-active span {
  text-decoration: none !important;
  text-decoration-line: none !important;
  text-decoration-color: transparent !important;
}

/* Shared line geometry: 2.5px below text, 1px weight, full text length */
html body .hover-underline-swap,
html body a.hover-underline-swap,
html body .hover-underline-anim,
html body .link-line,
html body a.link-line,
html body .site-plp-cat,
html body .site-essentials-hub__sub-right,
html body .site-newsletter__success-link,
html body a.site-newsletter__success-link,
html body .site-mega__link,
html body .site-mega__title,
html body a.site-mega__link,
html body a.site-mega__title,
html body .cookie-banner__link,
html body .cookie-settings__more,
html body .page-404__care-link,
html body .site-search__list-link,
html body .site-search__hint-text,
html body .underline.decoration-1,
html body a.underline,
html body .cookie-settings__nav .tab-button span.underline,
html body .cookie-settings__nav .tab-button .underline,
html body .cookie-settings__nav .tab-button.is-active span {
  position: relative !important;
  display: inline-block !important;
  width: fit-content !important;
  max-width: 100% !important;
  padding-bottom: var(--link-underline-gap) !important;
  background-image: linear-gradient(currentColor, currentColor) !important;
  background-repeat: no-repeat !important;
  background-position: left bottom !important;
  transition: none !important;
}

/* ALWAYS-ON underline (was CSS underline): visible at rest; hover redraws L→R */
html body .hover-underline-swap,
html body a.hover-underline-swap,
html body .site-plp-cat,
html body .site-plp-cat.is-active,
html body .site-essentials-hub__sub-right,
html body .site-newsletter__success-link,
html body a.site-newsletter__success-link,
html body .underline.decoration-1,
html body a.underline,
html body .cookie-settings__nav .tab-button span.underline,
html body .cookie-settings__nav .tab-button .underline,
html body .cookie-settings__nav .tab-button.is-active span {
  background-size: 100% var(--link-underline-weight) !important;
}
html body .hover-underline-swap:hover,
html body .hover-underline-swap:focus-visible,
html body a.hover-underline-swap:hover,
html body a.hover-underline-swap:focus-visible,
html body .site-plp-cat:hover,
html body .site-plp-cat:focus-visible,
html body .site-essentials-hub__sub-right:hover,
html body .site-essentials-hub__sub-right:focus-visible,
html body .site-newsletter__success-link:hover,
html body .site-newsletter__success-link:focus-visible,
html body .underline.decoration-1:hover,
html body a.underline:hover,
html body .cookie-settings__nav .tab-button span.underline:hover {
  animation: xsample-ul-draw var(--link-line-duration, 0.55s) cubic-bezier(0.25, 1, 0.5, 1) !important;
  background-size: 100% var(--link-underline-weight) !important;
  background-position: left bottom !important;
}

/* Hover-only underline (nav/mega/footer anim/cookie more): draw L→R on hover */
html body .link-line,
html body a.link-line,
html body .hover-underline-anim,
html body .site-mega__link,
html body .site-mega__title,
html body a.site-mega__link,
html body a.site-mega__title,
html body .cookie-banner__link,
html body .cookie-settings__more,
html body .page-404__care-link,
html body .site-search__list-link,
html body .site-search__hint-text {
  background-size: 0 var(--link-underline-weight) !important;
  transition: background-size var(--link-line-duration, 0.55s) cubic-bezier(0.25, 1, 0.5, 1) !important;
}
html body .link-line:hover,
html body .link-line:focus-visible,
html body .link-line.is-active,
html body a.link-line:hover,
html body .hover-underline-anim:hover,
html body .hover-underline-anim:focus-visible,
html body .site-mega__link:hover,
html body .site-mega__title:hover,
html body a.site-mega__link:hover,
html body a.site-mega__title:hover,
html body .cookie-banner__link:hover,
html body .cookie-settings__more:hover,
html body .page-404__care-link:hover,
html body .site-search__list-link:hover,
html body .site-search__list-link.is-active,
html body .site-search__hint-text:hover {
  background-size: 100% var(--link-underline-weight) !important;
  animation: none !important;
}

/* Header nav: tall cell — pin 2.5px under glyphs */
html body .site-nav__link--underline,
html body a.site-nav__link--underline {
  display: flex !important;
  width: auto !important;
  align-items: center !important;
  padding-bottom: 0 !important;
  text-decoration: none !important;
  background-image: linear-gradient(currentColor, currentColor) !important;
  background-repeat: no-repeat !important;
  background-size: 0 var(--link-underline-weight) !important;
  background-position: left calc(50% + 0.55em + 2.5px) !important;
  transition: background-size var(--link-line-duration, 0.55s) cubic-bezier(0.25, 1, 0.5, 1) !important;
}
html body .site-nav__link--underline:hover,
html body .site-nav__link--underline:focus-visible,
html body .site-nav__item.is-open > .site-nav__link--underline,
html body .group:hover > .site-nav__link--underline {
  background-size: 100% var(--link-underline-weight) !important;
  background-position: left calc(50% + 0.55em + 2.5px) !important;
  animation: none !important;
}

/* No ::after underlines */
html body .hover-underline-swap::after,
html body .hover-underline-anim::after,
html body .link-line::after,
html body .site-plp-cat::after,
html body .site-essentials-hub__sub-right::after,
html body .site-newsletter__success-link::after,
html body .site-nav__link--underline::after,
html body .site-mega__link::after,
html body .site-mega__title::after {
  content: none !important;
  display: none !important;
}

/* —— Essentials hub exact Bottega men spacing —— */
/* Desktop ~12% side margin, ~4% column gap; mobile boxes 14px only */
html body .site-essentials-hub {
  background: #fff !important;
  padding: 0 !important;
}
html body .site-essentials-hub__sub {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding: 1.1rem 14px 1.15rem !important;
  gap: 1rem !important;
}
html body .site-essentials-hub__sub-left,
html body .site-essentials-hub__sub-right {
  font-size: var(--fs-body, 12px) !important;
  font-weight: 500 !important;
  letter-spacing: -0.20px !important;
  text-transform: uppercase !important;
  line-height: 1.35 !important;
  color: #000 !important;
}
html body .site-essentials-hub__grid {
  display: grid !important;
  grid-template-columns: 1fr !important;
  column-gap: 10px !important;
  row-gap: 0 !important;
  gap: 0 10px !important;
  padding: 0 14px !important; /* mobile: box section only = 14px gutter */
  margin: 0 !important;
  max-width: none !important;
}
html body .site-essentials-hub__tile {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-decoration: none !important;
  color: #000 !important;
}
html body .site-essentials-hub__media {
  width: 100% !important;
  aspect-ratio: 1 / 1 !important;
  background: #f2f2f0 !important;
  overflow: hidden !important;
}
html body .site-essentials-hub__media img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
}
html body .site-essentials-hub__label {
  display: block !important;
  width: 100% !important;
  margin: 12px 0 28px !important; /* tight under image; room before next row */
  padding: 0 !important;
  font-size: var(--fs-body, 12px) !important;
  font-weight: 500 !important;
  letter-spacing: -0.20px !important;
  text-transform: uppercase !important;
  text-align: center !important;
  line-height: 1.35 !important;
  color: #000 !important;
}
html body .site-essentials-hub__campaign {
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  min-height: 42vh !important;
}
@media (min-width: 768px) {
  html body .site-essentials-hub__sub {
    /* match ~12% side inset from reference */
    padding: 1.35rem 11.8vw 1.5rem !important;
  }
  html body .site-essentials-hub__sub-left,
  html body .site-essentials-hub__sub-right {
    font-size: var(--fs-body-lg, 14px) !important;
  }
  html body .site-essentials-hub__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    column-gap: 1.1vw !important; /* ~4% of tile ≈ tight Bottega gutter */
    gap: 0 1.1vw !important;
    padding: 0 11.8vw !important;
  }
  html body .site-essentials-hub__label {
    margin: 14px 0 36px !important;
    font-size: var(--fs-body-lg, 14px) !important;
  }
  html body .site-essentials-hub__campaign {
    min-height: 52vh !important;
  }
}


/* —— Pass 20260803aw — beat prior underline rules: no CSS deco; always-on 100% line —— */
html body .hover-underline-swap,
html body a.hover-underline-swap,
html body .site-plp-cat,
html body .site-plp-cat.hover-underline-swap,
html body .site-plp-cat.is-active,
html body .site-essentials-hub__sub-right,
html body .site-essentials-hub__sub-right.hover-underline-swap,
html body .site-newsletter__success-link,
html body a.site-newsletter__success-link,
html body .underline.decoration-1,
html body a.underline,
html body .cookie-settings__nav .tab-button span.underline,
html body .cookie-settings__nav .tab-button .underline,
html body .cookie-settings__nav .tab-button.is-active span {
  text-decoration: none !important;
  text-decoration-line: none !important;
  -webkit-text-decoration-line: none !important;
  text-decoration-thickness: 0 !important;
  text-underline-offset: 0 !important;
  padding-bottom: 2.5px !important;
  background-image: linear-gradient(currentColor, currentColor) !important;
  background-repeat: no-repeat !important;
  background-position: left bottom !important;
  background-size: 100% 1px !important; /* always visible */
}
html body .hover-underline-swap:hover,
html body .hover-underline-swap:focus-visible,
html body a.hover-underline-swap:hover,
html body .site-plp-cat:hover,
html body .site-plp-cat:focus-visible,
html body .site-essentials-hub__sub-right:hover,
html body .site-essentials-hub__sub-right:focus-visible,
html body .site-essentials-hub__sub-right.hover-underline-swap:hover,
html body .site-newsletter__success-link:hover,
html body a.underline:hover {
  text-decoration: none !important;
  text-decoration-line: none !important;
  animation: xsample-ul-draw 0.55s cubic-bezier(0.25, 1, 0.5, 1) !important;
  background-size: 100% 1px !important;
  background-position: left bottom !important;
}

/* Tighten essentials desktop gap to ~4% of tile (~14px at 1440) */
@media (min-width: 768px) {
  html body .site-essentials-hub__grid {
    column-gap: 14px !important;
    gap: 0 14px !important;
    padding-left: 11.8vw !important;
    padding-right: 11.8vw !important;
  }
  html body .site-essentials-hub__sub {
    padding-left: 11.8vw !important;
    padding-right: 11.8vw !important;
  }
}


/* —— Pass 20260803ax — 3px underlines; PLP tabs/filter Bottega; promo overlay; essentials/PLP gaps —— */
html {
  --link-underline-weight: 1px;
  --link-underline-gap: 3px;
  --interactive-line: 1px;
}

@keyframes xsample-ul-draw {
  from { background-size: 0 var(--link-underline-weight, 1px); }
  to { background-size: 100% var(--link-underline-weight, 1px); }
}

/* Kill CSS text-decoration on interactive links */
html body .hover-underline-swap,
html body a.hover-underline-swap,
html body .hover-underline-anim,
html body .link-line,
html body a.link-line,
html body .site-plp-cat,
html body .site-plp-cat.is-active,
html body .site-essentials-hub__sub-right,
html body .site-newsletter__success-link,
html body .site-nav__link--underline,
html body .site-mega__link,
html body .site-mega__title,
html body .cookie-banner__link,
html body .cookie-settings__more,
html body .page-404__care-link,
html body .site-search__list-link,
html body .site-search__hint-text,
html body .underline,
html body a.underline,
html body .underline.decoration-1,
html body .cookie-settings__nav .tab-button span.underline,
html body .cookie-settings__nav .tab-button .underline,
html body .site-essentials-hub__tile,
html body .site-essentials-hub__label {
  text-decoration: none !important;
  text-decoration-line: none !important;
  -webkit-text-decoration-line: none !important;
}

/* Always-on line links (footer locale, discover, success): visible + L→R redraw on hover */
html body .hover-underline-swap,
html body a.hover-underline-swap,
html body .site-essentials-hub__sub-right,
html body .site-essentials-hub__sub-right.hover-underline-swap,
html body .site-newsletter__success-link,
html body a.site-newsletter__success-link,
html body .underline.decoration-1,
html body a.underline {
  display: inline-block !important;
  width: fit-content !important;
  max-width: 100% !important;
  padding-bottom: 3px !important;
  background-image: linear-gradient(currentColor, currentColor) !important;
  background-repeat: no-repeat !important;
  background-position: left bottom !important;
  background-size: 100% 1px !important;
}
html body .hover-underline-swap:hover,
html body .hover-underline-swap:focus-visible,
html body a.hover-underline-swap:hover,
html body .site-essentials-hub__sub-right:hover,
html body .site-essentials-hub__sub-right:focus-visible,
html body .site-newsletter__success-link:hover,
html body a.underline:hover {
  animation: xsample-ul-draw 0.55s cubic-bezier(0.25, 1, 0.5, 1) !important;
  background-size: 100% 1px !important;
  background-position: left bottom !important;
}

/* Hover-only draw (nav/mega/footer anim) */
html body .link-line,
html body a.link-line,
html body .hover-underline-anim,
html body .site-mega__link,
html body .site-mega__title,
html body .cookie-banner__link,
html body .cookie-settings__more,
html body .page-404__care-link,
html body .site-search__list-link,
html body .site-search__hint-text {
  display: inline-block !important;
  width: fit-content !important;
  padding-bottom: 3px !important;
  background-image: linear-gradient(currentColor, currentColor) !important;
  background-repeat: no-repeat !important;
  background-position: left bottom !important;
  background-size: 0 1px !important;
  transition: background-size 0.55s cubic-bezier(0.25, 1, 0.5, 1) !important;
  animation: none !important;
}
html body .link-line:hover,
html body .link-line:focus-visible,
html body .link-line.is-active,
html body .hover-underline-anim:hover,
html body .site-mega__link:hover,
html body .site-mega__title:hover,
html body .cookie-banner__link:hover,
html body .cookie-settings__more:hover,
html body .page-404__care-link:hover,
html body .site-search__list-link:hover,
html body .site-search__list-link.is-active,
html body .site-search__hint-text:hover {
  background-size: 100% 1px !important;
  animation: none !important;
}

html body .site-nav__link--underline,
html body a.site-nav__link--underline {
  display: flex !important;
  width: auto !important;
  padding-bottom: 0 !important;
  background-image: linear-gradient(currentColor, currentColor) !important;
  background-repeat: no-repeat !important;
  background-size: 0 1px !important;
  background-position: left calc(50% + 0.55em + 3px) !important;
  transition: background-size 0.55s cubic-bezier(0.25, 1, 0.5, 1) !important;
}
html body .site-nav__link--underline:hover,
html body .site-nav__item.is-open > .site-nav__link--underline,
html body .group:hover > .site-nav__link--underline {
  background-size: 100% 1px !important;
}

/* Collection tabs (Bottega): no line at rest; active + hover draw L→R */
html body .site-plp-cat,
html body button.site-plp-cat,
html body main.site-collections-products .site-plp-cat,
html body main.site-collections-products button.site-plp-cat {
  display: inline-block !important;
  padding-bottom: 3px !important;
  font-weight: 400 !important;
  color: #000 !important;
  background-image: linear-gradient(currentColor, currentColor) !important;
  background-repeat: no-repeat !important;
  background-position: left bottom !important;
  background-size: 0 1px !important;
  transition: background-size 0.55s cubic-bezier(0.25, 1, 0.5, 1) !important;
  animation: none !important;
  text-decoration: none !important;
}
html body .site-plp-cat:hover,
html body .site-plp-cat:focus-visible,
html body .site-plp-cat.is-active,
html body button.site-plp-cat:hover,
html body button.site-plp-cat:focus-visible,
html body button.site-plp-cat.is-active,
html body main.site-collections-products .site-plp-cat:hover,
html body main.site-collections-products .site-plp-cat:focus-visible,
html body main.site-collections-products .site-plp-cat.is-active,
html body main.site-collections-products button.site-plp-cat:hover,
html body main.site-collections-products button.site-plp-cat:focus-visible,
html body main.site-collections-products button.site-plp-cat.is-active {
  background-size: 100% 1px !important;
  font-weight: 400 !important;
}
html body .site-plp-cat.is-active:hover,
html body button.site-plp-cat.is-active:hover,
html body main.site-collections-products .site-plp-cat.is-active:hover {
  animation: xsample-ul-draw 0.55s cubic-bezier(0.25, 1, 0.5, 1) !important;
  background-size: 100% 1px !important;
}

/* Essentials: no underlines on tiles/labels; row spacing -5px */
html body .site-essentials-hub__tile,
html body .site-essentials-hub__label,
html body a.site-essentials-hub__tile {
  text-decoration: none !important;
  background-image: none !important;
  padding-bottom: 0 !important;
  animation: none !important;
}
html body .site-essentials-hub__label {
  margin: 12px 0 23px !important; /* was 28; -5px */
}
@media (min-width: 768px) {
  html body .site-essentials-hub__label {
    margin: 14px 0 31px !important; /* was 36; -5px */
  }
}

/* Filter drawer: white panel BELOW promo; dim overlays promo (promo still visible) */
html body.site-drawer-open .site-drawer__backdrop,
html body.site-drawer-open .site-drawer__backdrop.is-open,
html body .site-drawer__backdrop.is-open {
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 100% !important;
  height: 100dvh !important;
  inset: 0 !important;
  z-index: 13040 !important;
  background: rgba(0, 0, 0, 0.42) !important;
}
html body.site-drawer-open .site-drawer--filter,
html body.site-drawer-open .site-drawer.site-drawer--filter,
html.plp-page.site-drawer-open .site-drawer--filter {
  top: var(--promo-bar-height, 0px) !important;
  height: calc(100dvh - var(--promo-bar-height, 0px)) !important;
  max-height: calc(100dvh - var(--promo-bar-height, 0px)) !important;
  z-index: 13055 !important;
  border-radius: 0 !important;
}
/* Promo stays in place under the dim (visible but overlaid) — not covered by white panel */
html body.site-drawer-open .site-promo,
html.plp-page.site-drawer-open .site-promo,
html.plp-page body.site-drawer-open .site-promo {
  z-index: 13045 !important; /* above dim? no — user wants overlayed. Put under dim: */
  z-index: 12000 !important;
  pointer-events: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  position: relative !important;
}

/* Bottega filter chips */
html body .site-filter__chip {
  border-radius: 0 !important;
  background: #fff !important;
  color: #000 !important;
}
html body .site-filter__chip:hover {
  border-color: #000 !important;
}
html body .site-drawer--filter .site-filter__head {
  height: 64px !important;
  border-bottom: 0 !important;
}
html body .site-drawer--filter .site-filter__footer {
  gap: 12px !important;
}
html body .site-drawer--filter .site-filter__footer > button {
  border-radius: 0 !important;
}

/* Collection products: Bottega side/column/row gaps */
html body main.site-collections-products {
  padding-left: var(--page-gutter, 16px) !important;
  padding-right: var(--page-gutter, 16px) !important;
  padding-top: 0.5rem !important;
}
@media (min-width: 768px) {
  html body main.site-collections-products {
    padding-left: clamp(32px, 4vw, 64px) !important;
    padding-right: clamp(32px, 4vw, 64px) !important;
  }
}
html body main.site-collections-products .site-collections-products__grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  column-gap: 12px !important;
  row-gap: 28px !important;
  gap: 28px 12px !important;
}
@media (min-width: 768px) {
  html body main.site-collections-products .site-collections-products__grid {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    column-gap: 16px !important;
    row-gap: 40px !important;
    gap: 40px 16px !important;
  }
}
html body main.site-collections-products .site-collections-products__bar {
  padding-left: var(--page-gutter, 16px) !important;
  padding-right: var(--page-gutter, 16px) !important;
  margin-left: calc(var(--page-gutter, 16px) * -1) !important;
  margin-right: calc(var(--page-gutter, 16px) * -1) !important;
  gap: 1.5rem !important;
  border-bottom-color: #e5e5e5 !important;
}
@media (min-width: 768px) {
  html body main.site-collections-products .site-collections-products__bar {
    padding-left: clamp(32px, 4vw, 64px) !important;
    padding-right: clamp(32px, 4vw, 64px) !important;
    margin-left: calc(clamp(32px, 4vw, 64px) * -1) !important;
    margin-right: calc(clamp(32px, 4vw, 64px) * -1) !important;
  }
}
html body main.site-collections-products .site-collections-products__bar .flex.items-center.gap-6 {
  gap: 1.75rem !important;
}
html body main.site-collections-products .site-plp-card > div:first-child {
  margin-bottom: 10px !important;
  background: #f2f2f0 !important;
}

/* —— Pass 20260803bj — underlines 3px persist + filter promo pin —— */
html {
  --link-underline-weight: 1px;
  --link-underline-gap: 3px;
}

@keyframes xsample-ul-draw {
  from { background-size: 0 var(--link-underline-weight, 1px); }
  to { background-size: 100% var(--link-underline-weight, 1px); }
}

/* Kill every competing underline system (text-decoration + ::after) */
html body .hover-underline-swap,
html body a.hover-underline-swap,
html body .hover-underline-anim,
html body .link-line,
html body a.link-line,
html body .site-essentials-hub__sub-right,
html body .site-newsletter__success-link,
html body a.site-newsletter__success-link,
html body .site-footer__locale a,
html body .underline,
html body a.underline,
html body .underline.decoration-1,
html body .site-nav__link--underline,
html body .site-mega__link,
html body .site-mega__title,
html body .cookie-banner__link,
html body .cookie-settings__more,
html body .page-404__care-link,
html body .site-search__list-link,
html body .site-search__hint-text,
html body .site-plp-cat,
html body button.site-plp-cat {
  text-decoration: none !important;
  text-decoration-line: none !important;
  -webkit-text-decoration-line: none !important;
  text-underline-offset: unset !important;
  text-decoration-thickness: 0 !important;
  text-decoration-color: transparent !important;
}
html body .hover-underline-swap::after,
html body .hover-underline-swap:after,
html body .hover-underline-anim::after,
html body .hover-underline-anim:after,
html body .link-line::after,
html body .link-line:after,
html body .site-essentials-hub__sub-right::after,
html body .site-newsletter__success-link::after,
html body .site-footer__locale a::after,
html body a.underline::after,
html body .underline::after {
  content: none !important;
  display: none !important;
  background: none !important;
  transform: none !important;
  width: 0 !important;
  height: 0 !important;
}

/* Always-on: line visible at rest; hover redraws L→R; 3px gap persists */
html body .hover-underline-swap,
html body a.hover-underline-swap,
html body .site-essentials-hub__sub-right,
html body .site-essentials-hub__sub-right.hover-underline-swap,
html body .site-newsletter__success-link,
html body a.site-newsletter__success-link,
html body .site-footer__locale a,
html body .underline.decoration-1,
html body a.underline {
  display: inline-block !important;
  width: fit-content !important;
  max-width: 100% !important;
  padding-bottom: 3px !important;
  background-image: linear-gradient(currentColor, currentColor) !important;
  background-repeat: no-repeat !important;
  background-position: left bottom !important;
  background-size: 100% 1px !important;
  transition: none !important;
}
html body .hover-underline-swap:hover,
html body .hover-underline-swap:focus-visible,
html body a.hover-underline-swap:hover,
html body a.hover-underline-swap:focus-visible,
html body .site-essentials-hub__sub-right:hover,
html body .site-essentials-hub__sub-right:focus-visible,
html body .site-newsletter__success-link:hover,
html body .site-footer__locale a:hover,
html body a.underline:hover {
  padding-bottom: 3px !important;
  background-position: left bottom !important;
  background-size: 100% 1px !important;
  animation: xsample-ul-draw 0.55s cubic-bezier(0.25, 1, 0.5, 1) !important;
}

/* Hover-only draw (nav/mega): no line at rest; 3px gap reserved */
html body .link-line,
html body a.link-line,
html body .hover-underline-anim,
html body .site-mega__link,
html body .site-mega__title,
html body .cookie-banner__link,
html body .cookie-settings__more,
html body .page-404__care-link,
html body .site-search__list-link,
html body .site-search__hint-text {
  display: inline-block !important;
  width: fit-content !important;
  padding-bottom: 3px !important;
  background-image: linear-gradient(currentColor, currentColor) !important;
  background-repeat: no-repeat !important;
  background-position: left bottom !important;
  background-size: 0 1px !important;
  transition: background-size 0.55s cubic-bezier(0.25, 1, 0.5, 1) !important;
  animation: none !important;
}
html body .link-line:hover,
html body .link-line:focus-visible,
html body .link-line.is-active,
html body .hover-underline-anim:hover,
html body .site-mega__link:hover,
html body .site-mega__title:hover,
html body .cookie-banner__link:hover,
html body .cookie-settings__more:hover,
html body .page-404__care-link:hover,
html body .site-search__list-link:hover,
html body .site-search__list-link.is-active,
html body .site-search__hint-text:hover {
  padding-bottom: 3px !important;
  background-size: 100% 1px !important;
}

/* Header nav: underline under label with 3px offset */
html body .site-nav__link--underline,
html body a.site-nav__link--underline {
  display: flex !important;
  width: auto !important;
  padding-bottom: 0 !important;
  background-image: linear-gradient(currentColor, currentColor) !important;
  background-repeat: no-repeat !important;
  background-size: 0 1px !important;
  background-position: left calc(50% + 0.55em + 3px) !important;
  transition: background-size 0.55s cubic-bezier(0.25, 1, 0.5, 1) !important;
}
html body .site-nav__link--underline:hover,
html body .site-nav__item.is-open > .site-nav__link--underline,
html body .group:hover > .site-nav__link--underline {
  background-size: 100% 1px !important;
}
html body .site-nav__link--underline::after,
html body .site-nav__link--underline:after {
  content: none !important;
  display: none !important;
}

/* PLP cats: rest empty; active/hover full; 3px gap */
html body main.site-collections-products .site-plp-cat,
html body main.site-collections-products button.site-plp-cat,
html body .site-plp-cat {
  padding-bottom: 3px !important;
  background-image: linear-gradient(currentColor, currentColor) !important;
  background-repeat: no-repeat !important;
  background-position: left bottom !important;
  background-size: 0 1px !important;
  transition: background-size 0.55s cubic-bezier(0.25, 1, 0.5, 1) !important;
}
html body main.site-collections-products .site-plp-cat.is-active,
html body main.site-collections-products .site-plp-cat:hover,
html body main.site-collections-products button.site-plp-cat.is-active,
html body main.site-collections-products button.site-plp-cat:hover,
html body .site-plp-cat.is-active,
html body .site-plp-cat:hover {
  background-size: 100% 1px !important;
  padding-bottom: 3px !important;
}

/* FILTER: white panel BELOW promo; dim covers promo (promo still readable) */
html body.site-drawer-open .site-drawer__backdrop,
html body.site-drawer-open .site-drawer__backdrop.is-open,
html.plp-page.site-drawer-open .site-drawer__backdrop,
html body .site-drawer__backdrop.is-open {
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  height: 100dvh !important;
  z-index: 13040 !important;
  background: rgba(0, 0, 0, 0.42) !important;
}

html body.site-drawer-open .site-drawer--filter,
html body.site-drawer-open div.site-drawer.site-drawer--filter,
html body.site-drawer-open div.site-drawer.site-drawer--filter.fixed.top-0.right-0,
html.plp-page.site-drawer-open .site-drawer--filter,
html.plp-page body.site-drawer-open .site-drawer--filter {
  top: var(--promo-bar-height, 0px) !important;
  height: calc(100dvh - var(--promo-bar-height, 0px)) !important;
  max-height: calc(100dvh - var(--promo-bar-height, 0px)) !important;
  z-index: 13055 !important;
  border-radius: 0 !important;
}

/* Pin announcement under dim while filter is open — visible but overlaid */
html body.site-drawer-open .site-promo,
html.plp-page.site-drawer-open .site-promo,
html body.site-drawer-open.filter-promo-pin .site-promo,
html.plp-page body.site-drawer-open .site-promo {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  z-index: 13030 !important; /* under dim 13040 */
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: none !important;
  transform: none !important;
  display: block !important;
  background: #000 !important;
  color: #fff !important;
}

/* Desktop PDP — Bottega-like: gallery left, sticky buy column right */
@media (min-width: 768px) {
  html body main.site-product {
    padding: 0 clamp(24px, 3vw, 48px) 64px !important;
  }
  html body .site-product__desktop {
    display: grid !important;
    grid-template-columns: minmax(0, 1.2fr) minmax(300px, 0.8fr) !important;
    column-gap: 48px !important;
    align-items: start !important;
  }
  html body .site-product__gallery {
    width: 100% !important;
    margin-bottom: 0 !important;
  }
  html body .site-product__buy {
    position: sticky !important;
    top: calc(var(--promo-bar-height, 0px) + 80px) !important;
    align-self: start !important;
    padding-top: 8px !important;
    max-width: none !important;
    width: 100% !important;
  }
  html body .site-product__title {
    font-size: 18px !important;
    font-weight: 400 !important;
    line-height: 1.35 !important;
    margin: 0 0 8px !important;
  }
  html body .site-product__price {
    font-size: 14px !important;
    margin: 0 0 20px !important;
  }
}


/* —— Pass 20260803bk — force promo pin under dim (beat z-index 99) —— */
html body.site-drawer-open.filter-promo-pin .site-promo,
html body.filter-promo-pin.site-drawer-open .site-promo,
html.plp-page body.site-drawer-open.filter-promo-pin .site-promo,
html body.site-drawer-open .site-promo.site-promo,
html.plp-page.site-drawer-open body .site-promo {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  z-index: 13030 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: none !important;
  transform: none !important;
  display: block !important;
  background: #000 !important;
  color: #fff !important;
}

/* —— Pass 20260803bl — nav underline, search, filter jump, mega, PDP sticky —— */

/* Header nav underline: paint under the LABEL, not mid-header cell */
html body .site-nav__link--underline,
html body a.site-nav__link--underline {
  display: flex !important;
  align-items: center !important;
  height: 100% !important;
  width: auto !important;
  position: relative !important;
  padding-bottom: 0 !important;
  background-image: none !important;
  background-size: auto !important;
  transition: none !important;
}
html body .site-nav__link--underline::after,
html body a.site-nav__link--underline::after,
html body .site-nav__link--underline:after {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  height: 1px !important;
  top: calc(50% + 0.45em + 3px) !important;
  bottom: auto !important;
  background-color: currentColor !important;
  background-image: none !important;
  transform: scaleX(0) !important;
  transform-origin: left center !important;
  transition: transform 0.55s cubic-bezier(0.25, 1, 0.5, 1) !important;
  pointer-events: none !important;
  opacity: 1 !important;
  visibility: visible !important;
}
html body .site-nav__link--underline:hover::after,
html body .site-nav__link--underline:focus-visible::after,
html body .site-nav__item.is-open > .site-nav__link--underline::after,
html body .group:hover > .site-nav__link--underline::after,
html body a.site-nav__link--underline:hover::after {
  transform: scaleX(1) !important;
  transform-origin: left center !important;
}

/* Search: full-viewport popin, no slide/glitch from competing top/transform */
html body .site-search,
html body .site-search.site-search--open,
html body .site-search.site-search--closed {
  position: fixed !important;
  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  height: 100dvh !important;
  transform: none !important;
  translate: none !important;
  --tw-translate-y: 0px !important;
  margin: 0 !important;
  z-index: 15000 !important;
  background: #fff !important;
  transition: opacity 0.28s cubic-bezier(0.22, 1, 0.36, 1), visibility 0.28s !important;
}
html body .site-search--open {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
}
html body .site-search--closed,
html body .site-search:not(.site-search--open) {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}
html body.site-search-open .site-header,
html body.site-search-open header.site-header,
html body.site-search-open .site-promo {
  position: sticky !important; /* keep in flow — search covers, do not jump */
  transform: none !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/* Filter open: DO NOT fixed-pin promo (causes page jump). Drawer below promo height only. */
html body.site-drawer-open .site-promo,
html.plp-page.site-drawer-open .site-promo,
html body.site-drawer-open.filter-promo-pin .site-promo,
html body.filter-promo-pin.site-drawer-open .site-promo,
html.plp-page body.site-drawer-open .site-promo,
html body.site-drawer-open .site-promo.site-promo {
  position: relative !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  width: 100% !important;
  z-index: 13030 !important;
  transform: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: none !important;
  display: block !important;
}
html body.site-drawer-open .site-header,
html body.site-drawer-open header.site-header,
html.plp-page.site-drawer-open .site-header {
  position: sticky !important;
  top: 0 !important;
  transform: none !important;
  z-index: 110 !important;
}
html body.site-drawer-open .site-drawer--filter,
html body.site-drawer-open div.site-drawer.site-drawer--filter,
html body.site-drawer-open div.site-drawer.site-drawer--filter.fixed.top-0.right-0,
html.plp-page.site-drawer-open .site-drawer--filter {
  top: var(--promo-bar-height, 0px) !important;
  height: calc(100dvh - var(--promo-bar-height, 0px)) !important;
  max-height: calc(100dvh - var(--promo-bar-height, 0px)) !important;
}
html body.site-drawer-open .site-drawer__backdrop,
html body.site-drawer-open .site-drawer__backdrop.is-open {
  top: 0 !important;
  inset: 0 !important;
  height: 100dvh !important;
  z-index: 13040 !important;
}

/* Mega: smoother slide + fade */
@keyframes xsample-mega-in-bl {
  from { opacity: 0; transform: translateY(-14px); }
  to { opacity: 1; transform: translateY(0); }
}
@keyframes xsample-mega-dim-bl {
  from { opacity: 0; }
  to { opacity: 1; }
}
html body .site-mega.site-mega--open .site-mega__inner,
html body.mega-open .site-mega--open .site-mega__inner,
html body .site-mega--open .site-mega__inner {
  animation: xsample-mega-in-bl 0.58s cubic-bezier(0.22, 1, 0.36, 1) both !important;
  transform: none !important;
}
html body .site-mega__backdrop.is-open,
html body.mega-open .site-mega__backdrop.is-open {
  animation: xsample-mega-dim-bl 0.5s cubic-bezier(0.22, 1, 0.36, 1) both !important;
}

/* PDP Bottega layout */
html body main.site-product {
  padding: 0 !important;
}
@media (min-width: 768px) {
  html body .site-product__desktop {
    display: grid !important;
    grid-template-columns: minmax(0, 1.35fr) minmax(340px, 0.65fr) !important;
    column-gap: 40px !important;
    align-items: start !important;
    padding: 0 0 80px !important;
  }
  html body .site-product__gallery {
    width: 100% !important;
    padding-left: 0 !important;
  }
  html body .site-product__buy {
    position: sticky !important;
    top: calc(var(--promo-bar-height, 0px) + 88px) !important;
    align-self: start !important;
    padding: 28px 40px 40px 8px !important;
    max-width: 420px !important;
    width: 100% !important;
    margin: 0 !important;
  }
  html body .site-product__title {
    font-size: 16px !important;
    font-weight: 400 !important;
    line-height: 1.35 !important;
    margin: 0 0 10px !important;
  }
  html body .site-product__price {
    font-size: 13px !important;
    margin: 0 0 6px !important;
  }
  html body .site-product__color {
    margin: 0 0 18px !important;
  }
}
html body .site-product__sticky-bar {
  border-top: 1px solid #e5e5e5 !important;
  box-shadow: none !important;
}
html body .site-product-modal {
  animation: xsample-mega-dim-bl 0.25s ease both;
}

/* Bottega buy box: Color text only */
html body .site-product__buy .flex.flex-wrap.gap-2 {
  display: none !important;
}

/* —— Pass 20260803bo — Bottega PDP layout verified —— */
html body main.site-product {
  padding: 0 !important;
  max-width: none !important;
}
@media (min-width: 768px) {
  html body .site-product__desktop {
    display: grid !important;
    grid-template-columns: minmax(0, 1.4fr) minmax(360px, 420px) !important;
    column-gap: 48px !important;
    align-items: start !important;
    width: 100% !important;
    padding: 0 0 96px !important;
  }
  html body .site-product__gallery {
    width: 100% !important;
    min-width: 0 !important;
  }
  html body .site-product__gallery .grid {
    gap: 2px !important;
  }
  html body .site-product__buy {
    position: sticky !important;
    top: calc(var(--promo-bar-height, 0px) + 88px) !important;
    align-self: start !important;
    width: 100% !important;
    max-width: 420px !important;
    margin: 0 !important;
    padding: 32px 40px 48px 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 18px !important;
    text-align: left !important;
  }
  html body .site-product__title {
    font-size: 15px !important;
    line-height: 1.35 !important;
    font-weight: 400 !important;
    margin: 0 !important;
  }
  html body .site-product__price {
    font-size: 13px !important;
    margin: 6px 0 0 !important;
  }
  html body .site-product__color {
    font-size: 12px !important;
    margin: 10px 0 8px !important;
    padding: 0 !important;
  }
  html body .site-product__size-guide {
    display: inline-block !important;
    width: fit-content !important;
  }
  html body .site-product__buy .flex.flex-col.gap-3,
  html body .site-product__buy .flex.flex-col.gap-3.py-2 {
    gap: 10px !important;
    padding-top: 8px !important;
  }
  html body .site-product__buy button.w-full,
  html body .site-product__buy .bg-black {
    border-radius: 0 !important;
    min-height: 46px !important;
    letter-spacing: 0.08em !important;
  }
  html body .site-product__ship,
  html body .site-product__desc {
    text-align: left !important;
  }
  html body .site-product__accordions {
    margin-top: 8px !important;
  }
  html body .site-product__row {
    border-color: #d4d4d4 !important;
    padding-top: 14px !important;
    padding-bottom: 14px !important;
  }
}
html body .site-product__sticky-bar {
  z-index: 200 !important;
  min-height: 64px !important;
}
html body .site-product__size select {
  border-radius: 0 !important;
}

/* —— Pass 20260803bp — PDP mosaic + mobile buy parity —— */
@media (min-width: 768px) {
  html body .site-product__desktop {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(340px, 400px) !important;
    column-gap: 56px !important;
    align-items: start !important;
    padding: 0 48px 120px 0 !important;
  }
  html body .site-product__gallery {
    display: flex !important;
    flex-direction: column !important;
    gap: 2px !important;
  }
  html body .site-product__gallery .grid {
    gap: 2px !important;
    margin-top: 0 !important;
  }
  html body .site-product__shot {
    margin: 0 !important;
  }
  html body .site-product__buy {
    position: sticky !important;
    top: calc(var(--promo-bar-height, 0px) + 96px) !important;
    max-width: 400px !important;
    padding: 40px 24px 64px 0 !important;
    gap: 16px !important;
  }
}
@media (max-width: 767px) {
  html body .site-product__mobile .site-product__buy {
    gap: 16px !important;
  }
  html body .site-product__mobile .site-product__color {
    font-size: 12px !important;
    margin: 4px 0 0 !important;
  }
  html body .site-product__mobile #image-gallery-mobile img {
    opacity: 1 !important;
    visibility: visible !important;
    display: block !important;
  }
  html body .site-product__mobile .site-product__ship,
  html body .site-product__mobile .site-product__desc {
    text-align: left !important;
  }
}

/* —— Pass 20260803bq — Bottega PDP centered buy; essentials 2-col; erase underline; filter over promo; no caps; soft imgs —— */

/* Essentials: 2 per row mobile; smaller desktop tiles */
html body .site-essentials-hub__grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 2px 10px !important;
  padding: 0 12px 8px !important;
}
@media (min-width: 768px) {
  html body .site-essentials-hub__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 2px 16px !important;
    padding: 0 48px 12px !important;
    max-width: 1180px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  html body .site-essentials-hub__media {
    aspect-ratio: 4 / 5 !important;
    max-height: 340px !important;
  }
  html body .site-essentials-hub__label {
    margin: 0.65rem 0 1.25rem !important;
    font-size: 13px !important;
  }
}
html body .site-essentials-hub__media {
  aspect-ratio: 3 / 4 !important;
}
html body .site-essentials-hub__sub-left,
html body .site-essentials-hub__sub-right,
html body .site-essentials-hub__label {
  text-transform: none !important;
  letter-spacing: -0.20px !important;
}
html body .site-essentials-hub__sub-right {
  text-transform: none !important;
}
html body .site-essentials-hub img,
html body .site-plp-card img,
html body .site-product__img,
html body .site-product__mobile img,
html body .site-product__gallery img,
html body .site-product__shot img {
  filter: saturate(0.72) contrast(0.96) brightness(1.02) !important;
}

/* Always-on underline: solid black (never washed/light) */
html body .hover-underline-swap,
html body a.hover-underline-swap,
html body .site-essentials-hub__sub-right,
html body .site-footer__locale a,
html body .site-footer__find-store,
html body a.hover-underline-erase,
html body .hover-underline-erase {
  color: #000 !important;
  -webkit-text-decoration-color: #000 !important;
  text-decoration-color: #000 !important;
  background-image: linear-gradient(#000, #000) !important;
  opacity: 1 !important;
}

/* Reverse underline (locale / Find store / Discover): line on at rest; hover erases L→R and stays erased */
@keyframes xsample-ul-erase {
  from { background-size: 100% var(--link-underline-weight, 1px); }
  to { background-size: 0 var(--link-underline-weight, 1px); }
}
html body .hover-underline-erase,
html body a.hover-underline-erase,
html body .site-footer__locale a,
html body .site-footer__find-store,
html body .site-essentials-hub__sub-right {
  display: inline-block !important;
  width: fit-content !important;
  max-width: 100% !important;
  padding-bottom: 3px !important;
  background-image: linear-gradient(#000, #000) !important;
  background-repeat: no-repeat !important;
  background-position: left bottom !important;
  background-size: 100% 1px !important;
  text-decoration: none !important;
  transition: none !important;
  animation: none !important;
}
html body .hover-underline-erase::after,
html body a.hover-underline-erase::after,
html body .site-footer__locale a::after,
html body .site-footer__find-store::after,
html body .site-essentials-hub__sub-right::after {
  content: none !important;
  display: none !important;
}
html body .hover-underline-erase:hover,
html body .hover-underline-erase:focus-visible,
html body a.hover-underline-erase:hover,
html body a.hover-underline-erase:focus-visible,
html body .site-footer__locale a:hover,
html body .site-footer__locale a:focus-visible,
html body .site-footer__find-store:hover,
html body .site-footer__find-store:focus-visible,
html body .site-essentials-hub__sub-right:hover,
html body .site-essentials-hub__sub-right:focus-visible {
  padding-bottom: 3px !important;
  background-position: left bottom !important;
  background-size: 0 1px !important;
  animation: xsample-ul-erase 0.55s cubic-bezier(0.25, 1, 0.5, 1) forwards !important;
}

/* Filter overlays announcement bar (covers promo) */
html body.site-drawer-open .site-drawer--filter,
html body.site-drawer-open div.site-drawer.site-drawer--filter,
html.plp-page.site-drawer-open .site-drawer--filter {
  top: 0 !important;
  height: 100dvh !important;
  max-height: 100dvh !important;
  z-index: 14100 !important;
}
html body.site-drawer-open .site-drawer__backdrop,
html body.site-drawer-open .site-drawer__backdrop.is-open {
  top: 0 !important;
  inset: 0 !important;
  height: 100dvh !important;
  z-index: 14080 !important;
}
html body.site-drawer-open .site-promo,
html.plp-page.site-drawer-open .site-promo {
  z-index: 14050 !important;
  pointer-events: none !important;
}

/* Buttons: never force all-caps on product / essentials CTAs */
html body .site-product__buy button,
html body .site-product__sticky-bar button,
html body .site-product__buy .bg-black,
html body .site-essentials-hub__campaign-cta .cta-on-image,
html body .site-essentials-hub__sub-right {
  text-transform: none !important;
  letter-spacing: -0.20px !important;
}

/* PDP: Bottega centered buy between mosaic rows */
html body main.site-product {
  padding: 0 !important;
  max-width: none !important;
}
@media (min-width: 768px) {
  html body .site-product__desktop {
    display: block !important;
    width: 100% !important;
    padding: 0 0 96px !important;
  }
  html body .site-product__pair {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 2px !important;
    width: 100% !important;
  }
  html body .site-product__buy-wrap {
    display: flex !important;
    justify-content: center !important;
    width: 100% !important;
    padding: 56px 24px 64px !important;
  }
  html body .site-product__desktop .site-product__buy {
    position: static !important;
    width: 100% !important;
    max-width: 380px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    text-align: left !important;
    gap: 24px !important;
  }
  html body .site-product__shot--full {
    margin-top: 2px !important;
  }
  html body .site-product__title {
    font-size: 15px !important;
    font-weight: 400 !important;
  }
  html body .site-product__price {
    font-size: 13px !important;
  }
}
html body .site-product__sticky-bar {
  z-index: 200 !important;
  text-transform: none !important;
}
html body .site-product__sticky-bar button {
  text-transform: none !important;
}

/* —— Pass 20260803br — force filter over promo (final) —— */
html body.site-drawer-open .site-drawer.site-drawer--filter,
html body.site-drawer-open div.site-drawer.site-drawer--filter.fixed,
html.plp-page body.site-drawer-open .site-drawer.site-drawer--filter,
html.plp-page.site-drawer-open body .site-drawer.site-drawer--filter,
html body.site-drawer-open .site-drawer--filter.fixed.top-0.right-0 {
  top: 0 !important;
  inset: 0 0 0 auto !important;
  height: 100% !important;
  height: 100dvh !important;
  max-height: 100dvh !important;
  z-index: 15000 !important;
}
html body.site-drawer-open .site-drawer__backdrop,
html body.site-drawer-open .site-drawer__backdrop.is-open,
html.plp-page.site-drawer-open .site-drawer__backdrop {
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  inset: 0 !important;
  height: 100% !important;
  height: 100dvh !important;
  z-index: 14900 !important;
}
html body.site-drawer-open .site-promo,
html body.site-drawer-open .site-promo.site-promo,
html.plp-page.site-drawer-open .site-promo {
  z-index: 100 !important;
}

/* —— Pass 20260803bs — filter covers promo (beat high-specificity older rules) —— */
html.plp-page.site-drawer-open body.site-drawer-open div.site-drawer.site-drawer--filter.fixed.top-0.right-0,
html body.site-drawer-open div.site-drawer.site-drawer--filter.fixed.top-0.right-0,
html body.site-drawer-open div.site-drawer.site-drawer--filter.fixed.top-0.right-0.translate-x-0,
html.plp-page body.site-drawer-open div.site-drawer.site-drawer--filter.fixed.top-0.right-0 {
  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  left: auto !important;
  height: 100dvh !important;
  max-height: 100dvh !important;
  z-index: 15000 !important;
}
html.plp-page.site-drawer-open body.site-drawer-open .site-drawer__backdrop.is-open,
html body.site-drawer-open .site-drawer__backdrop.is-open {
  top: 0 !important;
  inset: 0 !important;
  z-index: 14900 !important;
}

/* —— Pass 20260803bt — essentials Bottega MEN; erase→draw underline; header stays hidden under overlays —— */

/* Essentials = Bottega MEN hub (override bq mistakes) */
html body .site-essentials-hub {
  background: #fff !important;
  padding: 0 !important;
}
html body .site-essentials-hub__sub {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding: 1.1rem 14px 1.15rem !important;
  gap: 1rem !important;
}
html body .site-essentials-hub__sub-left,
html body .site-essentials-hub__sub-right {
  font-size: 12px !important;
  font-weight: 500 !important;
  letter-spacing: -0.20px !important;
  text-transform: uppercase !important;
  line-height: 1.35 !important;
  color: #000 !important;
}
html body .site-essentials-hub__grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  column-gap: 10px !important;
  row-gap: 0 !important;
  gap: 0 10px !important;
  padding: 0 14px !important;
  margin: 0 !important;
  max-width: none !important;
}
html body .site-essentials-hub__media {
  width: 100% !important;
  aspect-ratio: 1 / 1 !important;
  max-height: none !important;
  background: #f2f2f0 !important;
  overflow: hidden !important;
}
html body .site-essentials-hub__label {
  display: block !important;
  width: 100% !important;
  margin: 12px 0 28px !important;
  padding: 0 !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  letter-spacing: -0.20px !important;
  text-transform: uppercase !important;
  text-align: center !important;
  line-height: 1.35 !important;
  color: #000 !important;
}
@media (min-width: 768px) {
  html body .site-essentials-hub__sub {
    padding: 1.35rem 11.8vw 1.5rem !important;
  }
  html body .site-essentials-hub__sub-left,
  html body .site-essentials-hub__sub-right {
    font-size: 14px !important;
  }
  html body .site-essentials-hub__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    column-gap: 1.1vw !important;
    gap: 0 1.1vw !important;
    padding: 0 11.8vw !important;
    max-width: none !important;
  }
  html body .site-essentials-hub__media {
    aspect-ratio: 1 / 1 !important;
    max-height: none !important;
  }
  html body .site-essentials-hub__label {
    margin: 14px 0 36px !important;
    font-size: 14px !important;
  }
}

/* Soft images stay, but don't break layout */
html body .site-essentials-hub img {
  filter: saturate(0.78) contrast(0.97) brightness(1.01) !important;
}

/* Footer / Discover / locale: hide underline then redraw L→R */
@keyframes xsample-ul-erase-draw {
  0% { background-size: 100% 1px; }
  42% { background-size: 0 1px; }
  43% { background-size: 0 1px; }
  100% { background-size: 100% 1px; }
}
html body .hover-underline-erase,
html body a.hover-underline-erase,
html body .site-footer__locale a,
html body .site-footer__find-store,
html body a.site-footer__find-store,
html body .site-essentials-hub__sub-right,
html body .site-essentials-hub__sub-right.hover-underline-erase {
  display: inline-block !important;
  width: fit-content !important;
  max-width: 100% !important;
  padding-bottom: 3px !important;
  color: #000 !important;
  background-image: linear-gradient(#000, #000) !important;
  background-repeat: no-repeat !important;
  background-position: left bottom !important;
  background-size: 100% 1px !important;
  text-decoration: none !important;
  text-decoration-line: none !important;
  -webkit-text-decoration-line: none !important;
  text-decoration-color: #000 !important;
  opacity: 1 !important;
  transition: none !important;
  animation: none !important;
}
html body .hover-underline-erase::after,
html body a.hover-underline-erase::after,
html body .site-footer__locale a::after,
html body .site-footer__find-store::after,
html body .site-essentials-hub__sub-right::after {
  content: none !important;
  display: none !important;
}
html body .hover-underline-erase:hover,
html body .hover-underline-erase:focus-visible,
html body a.hover-underline-erase:hover,
html body a.hover-underline-erase:focus-visible,
html body .site-footer__locale a:hover,
html body .site-footer__locale a:focus-visible,
html body .site-footer__find-store:hover,
html body .site-footer__find-store:focus-visible,
html body .site-essentials-hub__sub-right:hover,
html body .site-essentials-hub__sub-right:focus-visible {
  padding-bottom: 3px !important;
  background-position: left bottom !important;
  background-size: 100% 1px !important;
  animation: xsample-ul-erase-draw 0.7s cubic-bezier(0.25, 1, 0.5, 1) !important;
}

/* Unify always-on underlines to solid black (no washed grey) */
html body .hover-underline-swap,
html body a.hover-underline-swap {
  background-image: linear-gradient(#000, #000) !important;
  color: #000 !important;
  opacity: 1 !important;
}

/*
  Header under overlays: NEVER force show / NEVER switch sticky↔fixed.
  Hidden header (translate-y-full) stays hidden; visible stays visible.
*/
html.site-drawer-open .site-header,
html.site-drawer-open header.site-header,
html body.site-drawer-open .site-header,
html body.site-drawer-open header.site-header,
html.plp-page.site-drawer-open .site-header,
html body:has(.site-drawer__backdrop.is-open) .site-header,
html body:has(.site-drawer__backdrop.is-open) header.site-header,
html body.overlay-header-frozen .site-header,
html body.overlay-header-frozen header.site-header {
  /* Kill older force-visible / force-sticky that caused jumps */
  z-index: 100 !important;
  pointer-events: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  /* Do NOT set transform/translate/position here — JS freeze owns them */
}
/* If CSS class still has -translate-y-full and freeze missed, keep it hidden */
html body.site-drawer-open .site-header[class*="-translate-y-full"],
html body.site-drawer-open header.site-header[class*="-translate-y-full"],
html body.overlay-header-frozen .site-header[class*="-translate-y-full"],
html body.mega-open .site-header[class*="-translate-y-full"],
html.plp-page.site-drawer-open .site-header[class*="-translate-y-full"] {
  transform: translate3d(0, -100%, 0) !important;
  translate: 0 -100% !important;
  --tw-translate-y: -100% !important;
}
/* Explicitly cancel older transform:none !important when header is hidden */
html body.site-drawer-open .site-header.md\:-translate-y-full,
html.plp-page.site-drawer-open .site-header.md\:-translate-y-full {
  transform: translate3d(0, -100%, 0) !important;
  --tw-translate-y: -100% !important;
}

/* Product PDP transparent header at top (desktop) — keep white on mobile */
@media (min-width: 768px) {
  html body.product-page .site-header.md\:bg-transparent,
  html body .site-header.md\:bg-transparent {
    background-color: transparent !important;
  }
}

/* —— Pass 20260803bu — transparent PDP header; header stay hidden; underline animate; full modal —— */

/* Product transparent header (desktop only) — white once scrolled */
@media (min-width: 768px) {
  html body header.site-header.is-header-transparent,
  html body .site-header.is-header-transparent {
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
    border: none !important;
  }
  html body header.site-header:not(.is-header-transparent),
  html body .site-header:not(.is-header-transparent) {
    background: #fff !important;
    background-color: #fff !important;
  }
}

/* Drawer / modal: if header was hidden, KEEP it off-screen (beat transform:none) */
html body.overlay-header-was-hidden .site-header,
html body.overlay-header-was-hidden header.site-header,
html body.site-drawer-open.overlay-header-was-hidden .site-header,
html body.site-drawer-open .site-header.is-header-off,
html body.site-modal-open .site-header.is-header-off,
html body.overlay-header-frozen .site-header.is-header-off,
html.plp-page.site-drawer-open .site-header.is-header-off,
html.site-drawer-open .site-header.is-header-off,
html body.site-drawer-open .site-header[class*="-translate-y-full"],
html body.site-modal-open .site-header,
html body.site-modal-open header.site-header {
  transform: translate3d(0, -100%, 0) !important;
  translate: 0 -100% !important;
  --tw-translate-y: -100% !important;
  z-index: 90 !important;
  pointer-events: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  background: transparent !important;
}
/* Modal: header fully covered / irrelevant — force off + hide sticky bar */
html body.site-modal-open .site-header,
html body.site-modal-open header.site-header,
html.site-modal-open .site-header {
  transform: translate3d(0, -100%, 0) !important;
  translate: 0 -100% !important;
  --tw-translate-y: -100% !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  z-index: 1 !important;
}
html body.site-modal-open .site-product__sticky-bar,
html body.site-modal-open .site-promo {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

/* Kill older drawer rules that force transform:none / white bg / sticky jump */
html body.site-drawer-open .site-header,
html body.site-drawer-open header.site-header,
html.site-drawer-open .site-header,
html.plp-page.site-drawer-open .site-header {
  /* position left alone — freeze JS owns it */
  background: transparent !important;
  box-shadow: none !important;
}

/* Footer / Discover underline: ::after erase then L→R redraw (solid black) */
@keyframes xsample-ul-erase-draw-x {
  0% { transform: scaleX(1); transform-origin: right center; }
  45% { transform: scaleX(0); transform-origin: right center; }
  46% { transform: scaleX(0); transform-origin: left center; }
  100% { transform: scaleX(1); transform-origin: left center; }
}
html body .hover-underline-erase,
html body a.hover-underline-erase,
html body .site-footer__locale a,
html body .site-footer__find-store,
html body a.site-footer__find-store,
html body .site-essentials-hub__sub-right {
  position: relative !important;
  display: inline-block !important;
  width: fit-content !important;
  max-width: 100% !important;
  padding-bottom: 3px !important;
  color: #000 !important;
  background-image: none !important;
  background-size: 0 !important;
  text-decoration: none !important;
  text-decoration-line: none !important;
  -webkit-text-decoration-line: none !important;
  opacity: 1 !important;
  transition: none !important;
  animation: none !important;
}
html body .hover-underline-erase::after,
html body a.hover-underline-erase::after,
html body .site-footer__locale a::after,
html body .site-footer__find-store::after,
html body .site-essentials-hub__sub-right::after {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 1px !important;
  background: #000 !important;
  background-color: #000 !important;
  transform: scaleX(1) !important;
  transform-origin: left center !important;
  pointer-events: none !important;
  opacity: 1 !important;
  transition: none !important;
  animation: none !important;
}
html body .hover-underline-erase:hover::after,
html body .hover-underline-erase:focus-visible::after,
html body a.hover-underline-erase:hover::after,
html body a.hover-underline-erase:focus-visible::after,
html body .site-footer__locale a:hover::after,
html body .site-footer__locale a:focus-visible::after,
html body .site-footer__find-store:hover::after,
html body .site-footer__find-store:focus-visible::after,
html body .site-essentials-hub__sub-right:hover::after,
html body .site-essentials-hub__sub-right:focus-visible::after {
  animation: xsample-ul-erase-draw-x 0.7s cubic-bezier(0.25, 1, 0.5, 1) !important;
}

/* Full-viewport product lightbox (covers header) */
html body .site-product-modal,
html body.site-modal-open .site-product-modal {
  position: fixed !important;
  inset: 0 !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100vw !important;
  height: 100dvh !important;
  max-width: 100vw !important;
  max-height: 100dvh !important;
  z-index: 20000 !important;
  background: #f3f3f1 !important;
  display: flex !important;
  flex-direction: column !important;
  margin: 0 !important;
  padding: 0 !important;
  animation: none !important;
}
html body .site-product-modal__close {
  position: absolute !important;
  top: 20px !important;
  right: 20px !important;
  z-index: 5 !important;
  padding: 8px !important;
  background: transparent !important;
  border: 0 !important;
  color: #000 !important;
  cursor: pointer !important;
}
html body .site-product-modal__nav {
  position: absolute !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  z-index: 5 !important;
  padding: 12px !important;
  background: transparent !important;
  border: 0 !important;
  color: #000 !important;
  cursor: pointer !important;
  opacity: 0.85 !important;
}
html body .site-product-modal__nav:hover { opacity: 1 !important; }
html body .site-product-modal__nav--prev { left: 12px !important; }
html body .site-product-modal__nav--next { right: 12px !important; }
@media (min-width: 768px) {
  html body .site-product-modal__nav--prev { left: 28px !important; }
  html body .site-product-modal__nav--next { right: 28px !important; }
}
html body .site-product-modal__stage {
  flex: 1 1 auto !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 100% !important;
  padding: 64px 56px 72px !important;
  box-sizing: border-box !important;
}
html body .site-product-modal__img {
  max-width: min(92vw, 1100px) !important;
  max-height: calc(100dvh - 140px) !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
  display: block !important;
  filter: saturate(0.78) contrast(0.97) !important;
}
html body .site-product-modal__dots {
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 28px !important;
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 8px !important;
  z-index: 5 !important;
}
html body .site-product-modal__dot {
  width: 5px !important;
  height: 5px !important;
  border-radius: 50% !important;
  border: 0 !important;
  padding: 0 !important;
  background: #c8c8c6 !important;
  cursor: pointer !important;
}
html body .site-product-modal__dot.is-active {
  background: #000 !important;
  width: 6px !important;
  height: 6px !important;
}

/* —— Pass 20260803bv — modal fully covers chrome —— */
html body.site-modal-open header.site-header,
html body.site-modal-open .site-header,
html.site-modal-open body header.site-header,
html.site-modal-open body .site-header,
html body.site-modal-open.overlay-header-frozen header.site-header {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transform: translate3d(0, -120%, 0) !important;
  z-index: 1 !important;
}
html body .site-product-modal {
  z-index: 30000 !important;
}

/* —— Pass 20260803bw — gallery bleeds under transparent PDP header —— */
@media (min-width: 768px) {
  html body:has(header.site-header.is-header-transparent) main.site-product .site-product__desktop,
  html body:has(.site-header.is-header-transparent) main.site-product .site-product__desktop {
    margin-top: -64px !important;
  }
  html body:has(header.site-header.is-header-transparent) main.site-product,
  html body:has(.site-header.is-header-transparent) main.site-product {
    padding-top: 0 !important;
  }
  /* Ensure transparent wins over any leftover white utilities */
  html body header.site-header.is-header-transparent,
  html body .site-header.is-header-transparent,
  html body.product-page header.site-header.is-header-transparent {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    border-bottom: 0 !important;
  }
}

/* —— Pass 20260803bx — PDP fixed transparent header; drawers keep header off; underline L→R redraw —— */

/* PDP header MUST be fixed (beat sticky !important rules) */
@media (min-width: 768px) {
  html body.product-page header.site-header,
  html body.product-page .site-header,
  html.product-page body header.site-header,
  html body header.site-header.site-header--pdp,
  html body .site-header.site-header--pdp {
    position: fixed !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    top: var(--promo-bar-height, 0px) !important;
    z-index: 9999 !important;
  }
  html body.product-page header.site-header.is-header-transparent,
  html body.product-page .site-header.is-header-transparent,
  html body header.site-header.site-header--pdp.is-header-transparent,
  html body .site-header.site-header--pdp.is-header-transparent {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    border: 0 !important;
  }
  html body.product-page header.site-header:not(.is-header-transparent),
  html body.product-page .site-header:not(.is-header-transparent) {
    background: #fff !important;
    background-color: #fff !important;
  }
  /* Gallery bleeds under transparent header */
  html body.product-page:has(.is-header-transparent) main.site-product .site-product__desktop {
    margin-top: calc(-1 * var(--site-header-height, 64px)) !important;
  }
}

/* When header was hidden, drawers/backdrops MUST NOT pull it back */
html body.overlay-header-was-hidden .site-header,
html body.overlay-header-was-hidden header.site-header,
html body.site-drawer-open.overlay-header-was-hidden .site-header,
html body.site-drawer-open .site-header.is-header-off,
html body.site-drawer-open header.site-header.is-header-off,
html body:has(.site-drawer__backdrop.is-open).overlay-header-was-hidden .site-header,
html body:has(.site-drawer.translate-x-0).overlay-header-was-hidden .site-header,
html body.product-page.site-drawer-open .site-header.is-header-off,
html body.product-page.overlay-header-was-hidden .site-header {
  transform: translate3d(0, -120%, 0) !important;
  translate: 0 -120% !important;
  --tw-translate-y: -120% !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  z-index: 90 !important;
  background: transparent !important;
}

/* Kill force-visible transform:none for hidden PDP headers under drawers */
html body.site-drawer-open .site-header.is-header-off,
html body.overlay-header-was-hidden .site-header,
html.site-drawer-open body.overlay-header-was-hidden .site-header,
html body:has(.site-drawer__backdrop.is-open) .site-header.is-header-off {
  transform: translate3d(0, -120%, 0) !important;
  translate: 0 -120% !important;
}

/* Special links: solid black line at rest; hover redraws L→R then stays */
@keyframes xsample-ul-ltr-redraw {
  0% { transform: scaleX(0); transform-origin: left center; }
  100% { transform: scaleX(1); transform-origin: left center; }
}
html body .hover-underline-erase,
html body a.hover-underline-erase,
html body .site-footer__locale a,
html body .site-footer__find-store,
html body a.site-footer__find-store,
html body .site-essentials-hub__sub-right {
  position: relative !important;
  display: inline-block !important;
  width: fit-content !important;
  padding-bottom: 3px !important;
  color: #000 !important;
  background: none !important;
  background-image: none !important;
  text-decoration: none !important;
  text-decoration-line: none !important;
  animation: none !important;
  transition: none !important;
}
html body .hover-underline-erase::after,
html body a.hover-underline-erase::after,
html body .site-footer__locale a::after,
html body .site-footer__find-store::after,
html body .site-essentials-hub__sub-right::after {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 1px !important;
  background: #000 !important;
  background-color: #000 !important;
  transform: scaleX(1) !important;
  transform-origin: left center !important;
  opacity: 1 !important;
  animation: none !important;
  transition: none !important;
}
html body .hover-underline-erase:hover::after,
html body .hover-underline-erase:focus-visible::after,
html body a.hover-underline-erase:hover::after,
html body a.hover-underline-erase:focus-visible::after,
html body .site-footer__locale a:hover::after,
html body .site-footer__locale a:focus-visible::after,
html body .site-footer__find-store:hover::after,
html body .site-footer__find-store:focus-visible::after,
html body .site-essentials-hub__sub-right:hover::after,
html body .site-essentials-hub__sub-right:focus-visible::after {
  animation: xsample-ul-ltr-redraw 0.55s cubic-bezier(0.25, 1, 0.5, 1) forwards !important;
}


/* —— Pass 20260803by — nuclear: never resurrect scroll-hidden header; PDP transparent fixed —— */
@media (min-width: 768px) {
  html body.product-page .site-header.site-header--pdp,
  html body.product-page header.site-header,
  html.product-page body .site-header {
    position: fixed !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    top: var(--promo-bar-height, 0px) !important;
  }
  html body.product-page .site-header.is-header-transparent,
  html body.product-page header.site-header.is-header-transparent {
    background: transparent !important;
    background-color: rgba(0,0,0,0) !important;
    background-image: none !important;
    box-shadow: none !important;
    border-bottom: 0 !important;
  }
  html body.product-page:has(.site-header.is-header-transparent) main.site-product .site-product__desktop {
    margin-top: calc(-1 * var(--site-header-height, 64px)) !important;
  }
}
html body.overlay-header-was-hidden .site-header,
html.overlay-header-was-hidden body .site-header,
html body.site-drawer-open .site-header.is-header-off,
html body.site-drawer-open header.site-header.is-header-off,
html body:has(.site-drawer.translate-x-0) .site-header.is-header-off,
html body:has(.fixed.inset-0.opacity-100.pointer-events-auto) .site-header.is-header-off {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transform: translate3d(0, -120%, 0) !important;
  translate: 0 -120% !important;
  --tw-translate-y: -120% !important;
  z-index: 90 !important;
  background: transparent !important;
}

/* —— Pass 20260803ca — is-header-off ALWAYS hides (beats cookie-pending transform:none) —— */
@media (min-width: 768px) {
  html body .site-header.is-header-off,
  html body header.site-header.is-header-off,
  html.cookie-pending body .site-header.is-header-off,
  html.cookie-pending body header.site-header.is-header-off,
  html body.cookie-pending .site-header.is-header-off,
  html body.cookie-pending header.site-header.is-header-off,
  html.cookie-pending .site-header.is-header-off,
  html.cookie-pending header.site-header.is-header-off,
  html body .site-header.md\:-translate-y-full,
  html body header.site-header.md\:-translate-y-full,
  html.cookie-pending body .site-header.md\:-translate-y-full,
  html body.cookie-pending .site-header.md\:-translate-y-full,
  html.cookie-pending .site-header[class*="-translate-y-full"],
  html body.cookie-pending .site-header[class*="-translate-y-full"] {
    transform: translate3d(0, -120%, 0) !important;
    translate: 0 -120% !important;
    --tw-translate-y: -120% !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }
}


/* —— Pass 20260803cb — real underline L→R via clip-path; drawers always cover header —— */

/* Underlines: solid at rest; hover redraws L→R (clip-path, not transform — transform:!important was killing anim) */
@keyframes xsample-ul-clip-ltr {
  0% { clip-path: inset(0 100% 0 0); }
  100% { clip-path: inset(0 0 0 0); }
}
html body .hover-underline-erase,
html body a.hover-underline-erase,
html body .site-footer__locale a,
html body .site-footer__find-store,
html body a.site-footer__find-store,
html body .site-essentials-hub__sub-right {
  position: relative !important;
  display: inline-block !important;
  width: fit-content !important;
  padding-bottom: 3px !important;
  text-decoration: none !important;
  background-image: none !important;
}
html body .hover-underline-erase::after,
html body a.hover-underline-erase::after,
html body .site-footer__locale a::after,
html body .site-footer__find-store::after,
html body .site-essentials-hub__sub-right::after {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  right: auto !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 1px !important;
  background: #000 !important;
  background-color: #000 !important;
  transform: none !important;
  translate: none !important;
  scale: none !important;
  opacity: 1 !important;
  clip-path: inset(0 0 0 0) !important;
  animation: none !important;
  transition: none !important;
}
html body .hover-underline-erase:hover::after,
html body .hover-underline-erase:focus-visible::after,
html body a.hover-underline-erase:hover::after,
html body a.hover-underline-erase:focus-visible::after,
html body .site-footer__locale a:hover::after,
html body .site-footer__locale a:focus-visible::after,
html body .site-footer__find-store:hover::after,
html body .site-footer__find-store:focus-visible::after,
html body .site-essentials-hub__sub-right:hover::after,
html body .site-essentials-hub__sub-right:focus-visible::after {
  animation: xsample-ul-clip-ltr 0.55s cubic-bezier(0.25, 1, 0.5, 1) forwards !important;
}

/* Drawers: header ALWAYS under dim — never cut by panel, never forced above overlay */
html body.site-drawer-open .site-header,
html body.site-drawer-open header.site-header,
html body.overlay-header-frozen .site-header,
html body.overlay-header-frozen header.site-header,
html body:has(.site-drawer__backdrop.is-open) .site-header,
html body:has(.site-drawer__backdrop.is-open) header.site-header,
html body:has(.site-drawer.translate-x-0) .site-header,
html body:has(.fixed.inset-0.opacity-100.pointer-events-auto) .site-header {
  z-index: 90 !important;
  pointer-events: none !important;
}
html body.site-drawer-open .site-drawer__backdrop,
html body.site-drawer-open .site-drawer__backdrop.is-open,
html body .site-drawer__backdrop.is-open,
html body:has(.site-drawer.translate-x-0) .site-drawer__backdrop {
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  inset: 0 !important;
  z-index: 13040 !important;
}
html body.site-drawer-open .site-drawer,
html body .site-drawer.translate-x-0 {
  z-index: 13055 !important;
}

/* PDP transparent must beat cookie-pending / white leftovers */
@media (min-width: 768px) {
  html body.product-page .site-header.is-header-transparent,
  html.cookie-pending body.product-page .site-header.is-header-transparent,
  html body.cookie-pending.product-page .site-header.is-header-transparent {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    border: 0 !important;
  }
}


/* —— Pass 20260803cc — underline anim via background-size (no !important on animated prop) —— */
@keyframes xsample-ul-bg-ltr {
  from { background-size: 0% 1px; }
  to { background-size: 100% 1px; }
}
html body .hover-underline-erase,
html body a.hover-underline-erase,
html body .site-footer__locale a,
html body .site-footer__find-store,
html body a.site-footer__find-store,
html body .site-essentials-hub__sub-right {
  position: relative !important;
  display: inline-block !important;
  width: fit-content !important;
  padding-bottom: 3px !important;
  text-decoration: none !important;
  background-image: none !important;
}
html body .hover-underline-erase::after,
html body a.hover-underline-erase::after,
html body .site-footer__locale a::after,
html body .site-footer__find-store::after,
html body .site-essentials-hub__sub-right::after {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 1px !important;
  background-color: transparent !important;
  background-image: linear-gradient(#000, #000) !important;
  background-repeat: no-repeat !important;
  background-position: left bottom !important;
  background-size: 100% 1px;
  transform: none !important;
  clip-path: none !important;
  animation: none;
  transition: none !important;
  opacity: 1 !important;
}
html body .hover-underline-erase:hover::after,
html body .hover-underline-erase:focus-visible::after,
html body a.hover-underline-erase:hover::after,
html body a.hover-underline-erase:focus-visible::after,
html body .site-footer__locale a:hover::after,
html body .site-footer__locale a:focus-visible::after,
html body .site-footer__find-store:hover::after,
html body .site-footer__find-store:focus-visible::after,
html body .site-essentials-hub__sub-right:hover::after,
html body .site-essentials-hub__sub-right:focus-visible::after {
  animation: xsample-ul-bg-ltr 0.55s cubic-bezier(0.25, 1, 0.5, 1) forwards;
}


/* —— Pass 20260803cd — hover underline MUST beat animation:none !important —— */
html body .hover-underline-erase:hover::after,
html body .hover-underline-erase:focus-visible::after,
html body a.hover-underline-erase:hover::after,
html body a.hover-underline-erase:focus-visible::after,
html body .site-footer__locale a:hover::after,
html body .site-footer__locale a:focus-visible::after,
html body .site-footer__find-store:hover::after,
html body .site-footer__find-store:focus-visible::after,
html body .site-essentials-hub__sub-right:hover::after,
html body .site-essentials-hub__sub-right:focus-visible::after {
  animation: xsample-ul-bg-ltr 0.55s cubic-bezier(0.25, 1, 0.5, 1) forwards !important;
}

/* —— Pass 20260803ce — underline fill via width anim (most reliable) —— */
@keyframes xsample-ul-width-ltr {
  from { width: 0%; }
  to { width: 100%; }
}
html body .hover-underline-erase::after,
html body a.hover-underline-erase::after,
html body .site-footer__locale a::after,
html body .site-footer__find-store::after,
html body .site-essentials-hub__sub-right::after {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  right: auto !important;
  bottom: 0 !important;
  width: 100%;
  max-width: 100% !important;
  height: 1px !important;
  background: #000 !important;
  background-color: #000 !important;
  background-image: none !important;
  transform: none !important;
  clip-path: none !important;
  scale: none !important;
  animation: none !important;
  transition: none !important;
}
html body .hover-underline-erase:hover::after,
html body .hover-underline-erase:focus-visible::after,
html body a.hover-underline-erase:hover::after,
html body a.hover-underline-erase:focus-visible::after,
html body .site-footer__locale a:hover::after,
html body .site-footer__locale a:focus-visible::after,
html body .site-footer__find-store:hover::after,
html body .site-footer__find-store:focus-visible::after,
html body .site-essentials-hub__sub-right:hover::after,
html body .site-essentials-hub__sub-right:focus-visible::after {
  animation: xsample-ul-width-ltr 0.55s cubic-bezier(0.25, 1, 0.5, 1) forwards !important;
}

/* —— Pass 20260803cf — solid width:!important + scaleX L→R (transform WITHOUT !important) —— */
@keyframes xsample-ul-scale-ltr {
  from { transform: scaleX(0); transform-origin: left center; }
  to { transform: scaleX(1); transform-origin: left center; }
}
html body .hover-underline-erase::after,
html body a.hover-underline-erase::after,
html body .site-footer__locale a::after,
html body .site-footer__find-store::after,
html body .site-essentials-hub__sub-right::after {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  right: auto !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 1px !important;
  background: #000 !important;
  background-color: #000 !important;
  background-image: none !important;
  background-size: auto !important;
  clip-path: none !important;
  transform: scaleX(1) !important;
  transform-origin: left center !important;
  animation: none !important;
  transition: none !important;
  opacity: 1 !important;
  scale: none !important;
  translate: none !important;
}
html body .hover-underline-erase:hover::after,
html body .hover-underline-erase:focus-visible::after,
html body a.hover-underline-erase:hover::after,
html body a.hover-underline-erase:focus-visible::after,
html body .site-footer__locale a:hover::after,
html body .site-footer__locale a:focus-visible::after,
html body .site-footer__find-store:hover::after,
html body .site-footer__find-store:focus-visible::after,
html body .site-essentials-hub__sub-right:hover::after,
html body .site-essentials-hub__sub-right:focus-visible::after {
  animation: xsample-ul-scale-ltr 0.55s cubic-bezier(0.25, 1, 0.5, 1) forwards !important;
}

/* —— Pass 20260804a — reliable PDP header + underline that draws L→R and STAYS while hovered —— */

/* PDP header: fixed + transparent at top (beat sticky / cookie-pending) */
@media (min-width: 768px) {
  html body.product-page .site-header.site-header--pdp,
  html body.product-page header.site-header.site-header--pdp,
  html.product-page body .site-header.site-header--pdp {
    position: fixed !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    top: var(--promo-bar-height, 0px) !important;
    z-index: 9999 !important;
  }
  html body.product-page .site-header.is-header-transparent,
  html body.product-page header.site-header.is-header-transparent,
  html.cookie-pending body.product-page .site-header.is-header-transparent,
  html body.cookie-pending.product-page .site-header.is-header-transparent {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    border: 0 !important;
  }
  html body.product-page .site-header:not(.is-header-transparent),
  html body.product-page header.site-header:not(.is-header-transparent) {
    background: #fff !important;
    background-color: #fff !important;
  }
  html body.product-page:has(.site-header.is-header-transparent) main.site-product .site-product__desktop {
    margin-top: calc(-1 * var(--site-header-height, 64px)) !important;
  }
  /* Scroll-hide always works (beats cookie-pending transform:none) */
  html body .site-header.is-header-off,
  html body header.site-header.is-header-off,
  html.cookie-pending body .site-header.is-header-off,
  html body.cookie-pending .site-header.is-header-off,
  html.cookie-pending .site-header.is-header-off {
    transform: translate3d(0, -120%, 0) !important;
    translate: 0 -120% !important;
    --tw-translate-y: -120% !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }
}

/* Drawers never resurrect a hidden header; visible headers sit under the dim */
html body.overlay-header-was-hidden .site-header,
html body.site-drawer-open .site-header.is-header-off,
html body.overlay-header-frozen .site-header.is-header-off {
  transform: translate3d(0, -120%, 0) !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  z-index: 90 !important;
}
html body.site-drawer-open .site-header,
html body.overlay-header-frozen .site-header,
html body:has(.site-drawer__backdrop.is-open) .site-header {
  z-index: 90 !important;
  pointer-events: none !important;
}
html body.site-drawer-open .site-drawer__backdrop,
html body .site-drawer__backdrop.is-open {
  inset: 0 !important;
  top: 0 !important;
  z-index: 13040 !important;
}
html body.site-drawer-open .site-drawer,
html body .site-drawer.translate-x-0 {
  z-index: 13055 !important;
}

/*
  Footer / Discover underlines:
  - solid black line at rest
  - on hover: redraw L→R via transition (stays for entire hover)
  - on mouse leave: back to solid instantly (no erase flash)
*/
html body .hover-underline-erase,
html body a.hover-underline-erase,
html body .site-footer__locale a,
html body .site-footer__find-store,
html body a.site-footer__find-store,
html body .site-essentials-hub__sub-right {
  position: relative !important;
  display: inline-block !important;
  width: fit-content !important;
  padding-bottom: 3px !important;
  text-decoration: none !important;
  background-image: none !important;
}
html body .hover-underline-erase::after,
html body a.hover-underline-erase::after,
html body .site-footer__locale a::after,
html body .site-footer__find-store::after,
html body .site-essentials-hub__sub-right::after {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  right: auto !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 1px !important;
  background: #000 !important;
  background-color: #000 !important;
  background-image: none !important;
  transform: scaleX(1);
  transform-origin: left center;
  opacity: 1 !important;
  clip-path: none !important;
  animation: none !important;
  transition: none;
}
html body .hover-underline-erase:hover::after,
html body .hover-underline-erase:focus-visible::after,
html body a.hover-underline-erase:hover::after,
html body a.hover-underline-erase:focus-visible::after,
html body .site-footer__locale a:hover::after,
html body .site-footer__locale a:focus-visible::after,
html body .site-footer__find-store:hover::after,
html body .site-footer__find-store:focus-visible::after,
html body .site-essentials-hub__sub-right:hover::after,
html body .site-essentials-hub__sub-right:focus-visible::after {
  /* Force a fresh L→R paint: start at 0, transition to 1, stays at 1 while :hover */
  animation: none !important;
  transform: scaleX(1);
  transform-origin: left center;
  transition: transform 0.55s cubic-bezier(0.25, 1, 0.5, 1);
}
/* Kick the transition from 0 by setting initial on the hover frame via @starting-style where supported,
   and a one-shot animation fallback that ends at scaleX(1) (forwards = stays while hovered). */
@keyframes xsample-ul-stay-ltr {
  0% { transform: scaleX(0); transform-origin: left center; }
  100% { transform: scaleX(1); transform-origin: left center; }
}
html body .hover-underline-erase:hover::after,
html body .hover-underline-erase:focus-visible::after,
html body a.hover-underline-erase:hover::after,
html body a.hover-underline-erase:focus-visible::after,
html body .site-footer__locale a:hover::after,
html body .site-footer__locale a:focus-visible::after,
html body .site-footer__find-store:hover::after,
html body .site-footer__find-store:focus-visible::after,
html body .site-essentials-hub__sub-right:hover::after,
html body .site-essentials-hub__sub-right:focus-visible::after {
  animation: xsample-ul-stay-ltr 0.55s cubic-bezier(0.25, 1, 0.5, 1) forwards !important;
  transform: scaleX(1);
}

/* —— Pass 20260805a — kill header hover glitch: no bg transition, no hover re-render flash —— */
html body .site-header,
html body header.site-header {
  /* Only slide hide/show — never fade background (that was the hover/mega flash) */
  transition: transform 0.3s cubic-bezier(0.25, 1, 0.5, 1), opacity 0.3s cubic-bezier(0.25, 1, 0.5, 1) !important;
  transition-property: transform, opacity, translate !important;
}
html body .site-header.is-header-transparent,
html body header.site-header.is-header-transparent,
html body .site-header.bg-white,
html body header.site-header.bg-white,
html body.product-page .site-header,
html body.product-page header.site-header {
  transition: transform 0.3s cubic-bezier(0.25, 1, 0.5, 1), opacity 0.3s cubic-bezier(0.25, 1, 0.5, 1) !important;
  transition-property: transform, opacity, translate !important;
}
/* Instant bg swap — no fade between transparent ↔ white */
html body .site-header.is-header-transparent,
html body .site-header:not(.is-header-transparent) {
  transition-property: transform, opacity, translate !important;
}

/* —— Pass 20260805b — mega: header stays interactive above panel (no freeze thrash) —— */
html body.mega-open .site-header,
html body.mega-open header.site-header {
  z-index: 14040 !important;
  pointer-events: auto !important;
  /* Keep nav usable while mega is open */
  opacity: 1 !important;
  visibility: visible !important;
}
html body.mega-open .site-header.is-header-off,
html body.mega-open header.site-header.is-header-off {
  /* If scroll-hidden, stay hidden — don't resurrect */
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transform: translate3d(0, -120%, 0) !important;
  z-index: 90 !important;
}
html body.mega-open .site-mega,
html body.mega-open .site-mega.site-mega--open {
  top: var(--header-bottom, 96px) !important;
  position: fixed !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  z-index: 14020 !important;
  will-change: transform;
  contain: layout style;
}
html body.mega-open .site-mega__backdrop.is-open,
html body.mega-open .site-mega__backdrop {
  top: var(--header-bottom, 96px) !important;
  inset: var(--header-bottom, 96px) 0 0 0 !important;
  z-index: 14010 !important;
}
html body.mega-open .site-mega__media img {
  content-visibility: auto;
  contain: paint;
}

/* —— Pass 20260805c — beat mega-open :not(.is-header-off) { pointer-events:none; z-index:90 } —— */
html body.mega-open .site-header:not(.is-header-off),
html body.mega-open header.site-header:not(.is-header-off),
html.mega-open body .site-header:not(.is-header-off),
html body.mega-open .site-header,
html body.mega-open header.site-header {
  z-index: 14040 !important;
  pointer-events: auto !important;
  opacity: 1 !important;
  visibility: visible !important;
  /* Do not force transform:none — let scroll-hide classes work when needed */
}
/* Nav links/icons must receive hover while mega open */
html body.mega-open .site-header .site-nav-wrap,
html body.mega-open .site-header .site-nav__item,
html body.mega-open .site-header .site-nav__link,
html body.mega-open .site-header .header-utils,
html body.mega-open .site-header a,
html body.mega-open .site-header button {
  pointer-events: auto !important;
}
html body.mega-open .site-mega,
html body.mega-open .site-mega.site-mega--open {
  top: var(--header-bottom, 96px) !important;
  z-index: 14020 !important;
}
html body.mega-open .site-mega__backdrop,
html body.mega-open .site-mega__backdrop.is-open {
  top: var(--header-bottom, 96px) !important;
  inset: var(--header-bottom, 96px) 0 0 0 !important;
  z-index: 14010 !important;
  pointer-events: auto !important;
}

/* —— Pass 20260805d — smooth scroll; hairline-free mega; erase→draw underline; stable search —— */

/* No overflow:hidden lock (causes rough scrollbar jump). Soft lock is JS wheel-block. */
html body.site-search-open,
html.site-search-open body,
body.site-search-open {
  overflow: visible !important;
  overflow-x: clip !important;
  touch-action: pan-y !important;
  overscroll-behavior: none !important;
  padding-right: 0 !important;
}
html body.mega-open,
html.mega-open body,
body.mega-open {
  overflow: visible !important;
  touch-action: pan-y !important;
  overscroll-behavior: contain !important;
}

/* Mega flush under header — 1px tuck kills hairline */
html body.mega-open .site-mega,
html body.mega-open .site-mega.site-mega--open,
html body .site-mega.site-mega--open {
  top: calc(var(--header-bottom, 96px) - 1px) !important;
  margin-top: 0 !important;
  border-top: 1px solid #fff !important;
  box-shadow: none !important;
}
html body.mega-open .site-mega__backdrop,
html body.mega-open .site-mega__backdrop.is-open,
html body .site-mega__backdrop.is-open {
  top: calc(var(--header-bottom, 96px) - 1px) !important;
  inset: calc(var(--header-bottom, 96px) - 1px) 0 0 0 !important;
}
html body.mega-open .site-header:not(.is-header-off),
html body.mega-open header.site-header:not(.is-header-off) {
  z-index: 14040 !important;
  pointer-events: auto !important;
  background: #fff !important;
  box-shadow: none !important;
  border-bottom: none !important;
}

/*
  Underlines: solid at rest → on hover ERASE then draw L→R → stay while hovered
*/
@keyframes xsample-ul-erase-then-ltr {
  0%   { transform: scaleX(1); transform-origin: right center; }
  42%  { transform: scaleX(0); transform-origin: right center; }
  43%  { transform: scaleX(0); transform-origin: left center; }
  100% { transform: scaleX(1); transform-origin: left center; }
}
html body .hover-underline-erase,
html body a.hover-underline-erase,
html body .site-footer__locale a,
html body .site-footer__find-store,
html body a.site-footer__find-store,
html body .site-essentials-hub__sub-right {
  position: relative !important;
  display: inline-block !important;
  width: fit-content !important;
  padding-bottom: 3px !important;
  text-decoration: none !important;
  background-image: none !important;
}
html body .hover-underline-erase::after,
html body a.hover-underline-erase::after,
html body .site-footer__locale a::after,
html body .site-footer__find-store::after,
html body .site-essentials-hub__sub-right::after {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  right: auto !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 1px !important;
  background: #000 !important;
  background-color: #000 !important;
  transform: scaleX(1) !important;
  transform-origin: left center !important;
  opacity: 1 !important;
  animation: none !important;
  transition: none !important;
  clip-path: none !important;
}
html body .hover-underline-erase:hover::after,
html body .hover-underline-erase:focus-visible::after,
html body a.hover-underline-erase:hover::after,
html body a.hover-underline-erase:focus-visible::after,
html body .site-footer__locale a:hover::after,
html body .site-footer__locale a:focus-visible::after,
html body .site-footer__find-store:hover::after,
html body .site-footer__find-store:focus-visible::after,
html body .site-essentials-hub__sub-right:hover::after,
html body .site-essentials-hub__sub-right:focus-visible::after {
  animation: xsample-ul-erase-then-ltr 0.65s cubic-bezier(0.25, 1, 0.5, 1) forwards !important;
}

/* Search: one clean full-screen panel — no double header / top jump */
html body.site-search-open .site-header,
html body.site-search-open header.site-header,
html body.site-search-open .site-promo {
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}
html body .site-search,
html body .site-search.site-search--open,
html body .site-search.site-search--closed {
  position: fixed !important;
  inset: 0 !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  z-index: 10060 !important;
  background: #fff !important;
  /* Fade only — transform slide was fighting header twin and glitching the top */
  transform: none !important;
  transition: opacity 0.18s ease, visibility 0.18s ease !important;
}
html body .site-search.site-search--open {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
}
html body .site-search.site-search--closed,
html body .site-search:not(.site-search--open) {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}
html body .site-search__panel {
  padding: 0 !important;
  height: 100% !important;
  max-height: 100dvh !important;
  overflow: hidden !important;
  display: flex !important;
  flex-direction: column !important;
}
html body .site-search__top {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  flex-shrink: 0 !important;
  height: var(--site-header-height, 64px) !important;
  min-height: var(--site-header-height, 64px) !important;
  max-height: var(--site-header-height, 64px) !important;
  margin: 0 !important;
  padding-inline: 1rem !important;
  box-sizing: border-box !important;
  background: #fff !important;
  border-bottom: 0 !important;
  transform: none !important;
}
@media (min-width: 768px) {
  html body .site-search__top {
    padding-inline: 2rem !important;
  }
}
html body .site-search__body {
  overflow-y: auto !important;
  overscroll-behavior: contain !important;
  -webkit-overflow-scrolling: touch !important;
  flex: 1 1 auto !important;
}

/* —— Pass 20260805e — restore search slide; forced erase→LTR underline; collection CTAs; filter no-jump —— */

/* SEARCH: restore slide-down, keep top stable (hide real header twin) */
html body.site-search-open .site-header,
html body.site-search-open header.site-header,
html body.site-search-open .site-promo {
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}
html body .site-search {
  position: fixed !important;
  inset: 0 !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  z-index: 10060 !important;
  background: #fff !important;
  transform: translateY(-105%) !important;
  opacity: 1 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transition:
    transform 0.48s cubic-bezier(0.25, 1, 0.5, 1),
    visibility 0s linear 0.48s !important;
  overflow: hidden !important;
}
html body .site-search.site-search--open {
  transform: translateY(0) !important;
  visibility: visible !important;
  pointer-events: auto !important;
  opacity: 1 !important;
  transition:
    transform 0.48s cubic-bezier(0.25, 1, 0.5, 1),
    visibility 0s linear 0s !important;
}
html body .site-search.site-search--closed,
html body .site-search:not(.site-search--open) {
  transform: translateY(-105%) !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transition:
    transform 0.42s cubic-bezier(0.4, 0, 0.2, 1),
    visibility 0s linear 0.42s !important;
}
html body .site-search__top {
  height: var(--site-header-height, 64px) !important;
  min-height: var(--site-header-height, 64px) !important;
  max-height: var(--site-header-height, 64px) !important;
  margin: 0 !important;
  padding-inline: 1rem !important;
  box-sizing: border-box !important;
  background: #fff !important;
  border-bottom: 0 !important;
  transform: none !important;
}
@media (min-width: 768px) {
  html body .site-search__top { padding-inline: 2rem !important; }
}
html body.site-search-open,
html.site-search-open body {
  overflow: visible !important;
  touch-action: pan-y !important;
}

/*
  UNDERLINES — force perfect 1px line.
  Rest: solid. Hover: erase (R→L) then draw (L→R) then stay.
  Use background-size (not transform) so older transform:!important cannot kill it.
*/
@keyframes xsample-ul-force-erase-ltr {
  0%   { background-size: 100% 1px; background-position: right bottom; }
  40%  { background-size: 0% 1px;   background-position: right bottom; }
  41%  { background-size: 0% 1px;   background-position: left bottom; }
  100% { background-size: 100% 1px; background-position: left bottom; }
}
html body .hover-underline-erase,
html body a.hover-underline-erase,
html body .site-footer__locale a,
html body .site-footer__find-store,
html body a.site-footer__find-store,
html body .site-essentials-hub__sub-right,
html body a.site-essentials-hub__sub-right {
  position: relative !important;
  display: inline-block !important;
  width: fit-content !important;
  max-width: 100% !important;
  padding-bottom: 4px !important;
  text-decoration: none !important;
  text-decoration-line: none !important;
  background-image: none !important;
  font-weight: inherit !important;
  -webkit-text-stroke: 0 !important;
  border: 0 !important;
  box-shadow: none !important;
}
html body .hover-underline-erase:hover,
html body a.hover-underline-erase:hover,
html body .site-footer__locale a:hover,
html body .site-footer__find-store:hover,
html body .site-essentials-hub__sub-right:hover,
html body a.site-essentials-hub__sub-right:hover {
  font-weight: inherit !important;
  text-decoration: none !important;
  -webkit-text-stroke: 0 !important;
}
html body .hover-underline-erase::after,
html body a.hover-underline-erase::after,
html body .site-footer__locale a::after,
html body .site-footer__find-store::after,
html body .site-essentials-hub__sub-right::after,
html body a.site-essentials-hub__sub-right::after {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 1px !important;
  background-color: transparent !important;
  background-image: linear-gradient(#000, #000) !important;
  background-repeat: no-repeat !important;
  background-position: left bottom !important;
  background-size: 100% 1px;
  transform: none !important;
  translate: none !important;
  scale: none !important;
  clip-path: none !important;
  opacity: 1 !important;
  animation: none !important;
  transition: none !important;
  pointer-events: none !important;
}
html body .hover-underline-erase:hover::after,
html body .hover-underline-erase:focus-visible::after,
html body a.hover-underline-erase:hover::after,
html body a.hover-underline-erase:focus-visible::after,
html body .site-footer__locale a:hover::after,
html body .site-footer__locale a:focus-visible::after,
html body .site-footer__find-store:hover::after,
html body .site-footer__find-store:focus-visible::after,
html body .site-essentials-hub__sub-right:hover::after,
html body .site-essentials-hub__sub-right:focus-visible::after,
html body a.site-essentials-hub__sub-right:hover::after,
html body a.site-essentials-hub__sub-right:focus-visible::after {
  animation: xsample-ul-force-erase-ltr 0.7s cubic-bezier(0.25, 1, 0.5, 1) forwards !important;
  transform: none !important;
}

/* Collection page: CTAs always on images */
html body .site-collections-page .site-collections-heroes .cta-on-image,
html body .site-collections-page .site-collections-heroes a.cta-on-image,
html body .site-collections-page .site-collections-card .cta-on-image,
html body .site-collections-page .site-collections-card a.cta-on-image {
  position: relative !important;
  z-index: 2 !important;
  display: inline-flex !important;
  visibility: visible !important;
  opacity: 1 !important;
}
html body .site-collections-page .site-collections-card {
  position: relative !important;
  display: flex !important;
  align-items: flex-end !important;
  justify-content: center !important;
  margin: 0 !important;
}
html body .site-collections-page .site-collections-card > img {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}
html body .site-collections-page .site-collections-card__label {
  display: none !important;
}

/* Filter: full-bleed overlay from top, no layout jump helpers */
html body.site-drawer-open .site-drawer--filter,
html body .site-drawer.site-drawer--filter.translate-x-0,
html body .site-drawer--filter {
  top: 0 !important;
  height: 100dvh !important;
  max-height: 100dvh !important;
}
html body.site-drawer-open .site-drawer__backdrop.is-open,
html body .site-drawer__backdrop.is-open {
  top: 0 !important;
  inset: 0 !important;
}
html body.plp-page.site-drawer-open,
html.plp-page body.site-drawer-open,
html body.site-drawer-open {
  overflow: visible !important;
  padding-right: 0 !important;
}
/* Don't force sticky header geometry while filter open */
html body.site-drawer-open .site-header:not(.is-header-off),
html body.site-drawer-open header.site-header:not(.is-header-off) {
  position: sticky !important;
  top: 0 !important;
  transform: none !important;
  translate: none !important;
  z-index: 90 !important;
  pointer-events: none !important;
}

/* —— Pass 20260805f — force underline background-size so line is always visible —— */
html body .hover-underline-erase::after,
html body a.hover-underline-erase::after,
html body .site-footer__locale a::after,
html body .site-footer__find-store::after,
html body .site-essentials-hub__sub-right::after,
html body a.site-essentials-hub__sub-right::after {
  background-size: 100% 1px !important;
  background-position: left bottom !important;
}
html body .hover-underline-erase:hover::after,
html body a.hover-underline-erase:hover::after,
html body .site-footer__locale a:hover::after,
html body .site-footer__find-store:hover::after,
html body .site-essentials-hub__sub-right:hover::after,
html body a.site-essentials-hub__sub-right:hover::after {
  /* animation overrides !important background-size while running */
  animation: xsample-ul-force-erase-ltr 0.7s cubic-bezier(0.25, 1, 0.5, 1) forwards !important;
}

/* —— Pass 20260805g — kill dual underline systems; force ::after erase→L→R only —— */
html body .hover-underline-erase,
html body a.hover-underline-erase,
html body .site-footer__locale a,
html body .site-footer__find-store,
html body a.site-footer__find-store,
html body .site-essentials-hub__sub-right,
html body a.site-essentials-hub__sub-right {
  background-image: none !important;
  background-size: auto !important;
  background-position: initial !important;
  animation: none !important;
  text-decoration: none !important;
  text-decoration-line: none !important;
  font-weight: inherit !important;
  -webkit-text-stroke: 0 !important;
  text-shadow: none !important;
}
html body .hover-underline-erase:hover,
html body .hover-underline-erase:focus-visible,
html body a.hover-underline-erase:hover,
html body a.hover-underline-erase:focus-visible,
html body .site-footer__locale a:hover,
html body .site-footer__locale a:focus-visible,
html body .site-footer__find-store:hover,
html body .site-footer__find-store:focus-visible,
html body .site-essentials-hub__sub-right:hover,
html body .site-essentials-hub__sub-right:focus-visible,
html body a.site-essentials-hub__sub-right:hover,
html body a.site-essentials-hub__sub-right:focus-visible {
  background-image: none !important;
  background-size: auto !important;
  animation: none !important;
  font-weight: inherit !important;
  -webkit-text-stroke: 0 !important;
  text-decoration: none !important;
}
html body .hover-underline-erase::after,
html body a.hover-underline-erase::after,
html body .site-footer__locale a::after,
html body .site-footer__find-store::after,
html body a.site-footer__find-store::after,
html body .site-essentials-hub__sub-right::after,
html body a.site-essentials-hub__sub-right::after {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: auto !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 1px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background-color: transparent !important;
  background-image: linear-gradient(#000, #000) !important;
  background-repeat: no-repeat !important;
  background-position: left bottom !important;
  background-size: 100% 1px !important;
  transform: none !important;
  translate: none !important;
  scale: none !important;
  clip-path: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  animation: none !important;
  transition: none !important;
  pointer-events: none !important;
}
html body .hover-underline-erase:hover::after,
html body .hover-underline-erase:focus-visible::after,
html body a.hover-underline-erase:hover::after,
html body a.hover-underline-erase:focus-visible::after,
html body .site-footer__locale a:hover::after,
html body .site-footer__locale a:focus-visible::after,
html body .site-footer__find-store:hover::after,
html body .site-footer__find-store:focus-visible::after,
html body a.site-footer__find-store:hover::after,
html body a.site-footer__find-store:focus-visible::after,
html body .site-essentials-hub__sub-right:hover::after,
html body .site-essentials-hub__sub-right:focus-visible::after,
html body a.site-essentials-hub__sub-right:hover::after,
html body a.site-essentials-hub__sub-right:focus-visible::after {
  animation: xsample-ul-force-erase-ltr 0.7s cubic-bezier(0.25, 1, 0.5, 1) forwards !important;
  transform: none !important;
  transition: none !important;
}

/* —— Pass 20260805h — animate via @property so !important cannot freeze the line —— */
@property --xsample-ul-sx {
  syntax: "<number>";
  inherits: false;
  initial-value: 1;
}
@property --xsample-ul-ox {
  syntax: "*";
  inherits: false;
  initial-value: left center;
}
@keyframes xsample-ul-scale-erase-ltr {
  0% {
    --xsample-ul-sx: 1;
    --xsample-ul-ox: right center;
  }
  42% {
    --xsample-ul-sx: 0;
    --xsample-ul-ox: right center;
  }
  43% {
    --xsample-ul-sx: 0;
    --xsample-ul-ox: left center;
  }
  100% {
    --xsample-ul-sx: 1;
    --xsample-ul-ox: left center;
  }
}

/* Kill text-level fake underline (was reading as “bold”) */
html body .hover-underline-erase,
html body a.hover-underline-erase,
html body .site-footer__locale a,
html body .site-footer__find-store,
html body a.site-footer__find-store,
html body .site-essentials-hub__sub-right,
html body a.site-essentials-hub__sub-right {
  background: none !important;
  background-image: none !important;
  background-size: auto !important;
  background-position: initial !important;
  animation: none !important;
  text-decoration: none !important;
  box-shadow: none !important;
  font-weight: inherit !important;
  -webkit-text-stroke: 0 !important;
  text-shadow: none !important;
}
html body .hover-underline-erase:hover,
html body .hover-underline-erase:focus-visible,
html body a.hover-underline-erase:hover,
html body a.hover-underline-erase:focus-visible,
html body .site-footer__locale a:hover,
html body .site-footer__locale a:focus-visible,
html body .site-footer__find-store:hover,
html body .site-footer__find-store:focus-visible,
html body a.site-footer__find-store:hover,
html body a.site-footer__find-store:focus-visible,
html body .site-essentials-hub__sub-right:hover,
html body .site-essentials-hub__sub-right:focus-visible,
html body a.site-essentials-hub__sub-right:hover,
html body a.site-essentials-hub__sub-right:focus-visible {
  background: none !important;
  background-image: none !important;
  animation: none !important;
  font-weight: inherit !important;
  text-decoration: none !important;
  -webkit-text-stroke: 0 !important;
}

html body .hover-underline-erase::after,
html body a.hover-underline-erase::after,
html body .site-footer__locale a::after,
html body .site-footer__find-store::after,
html body a.site-footer__find-store::after,
html body .site-essentials-hub__sub-right::after,
html body a.site-essentials-hub__sub-right::after {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 1px !important;
  background: #000 !important;
  background-image: none !important;
  background-size: auto !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: none !important;
  transition: none !important;
  animation: none !important;
  clip-path: none !important;
  translate: none !important;
  scale: none !important;
  --xsample-ul-sx: 1;
  --xsample-ul-ox: left center;
  transform: scaleX(var(--xsample-ul-sx)) !important;
  transform-origin: var(--xsample-ul-ox) !important;
}
html body .hover-underline-erase:hover::after,
html body .hover-underline-erase:focus-visible::after,
html body a.hover-underline-erase:hover::after,
html body a.hover-underline-erase:focus-visible::after,
html body .site-footer__locale a:hover::after,
html body .site-footer__locale a:focus-visible::after,
html body .site-footer__find-store:hover::after,
html body .site-footer__find-store:focus-visible::after,
html body a.site-footer__find-store:hover::after,
html body a.site-footer__find-store:focus-visible::after,
html body .site-essentials-hub__sub-right:hover::after,
html body .site-essentials-hub__sub-right:focus-visible::after,
html body a.site-essentials-hub__sub-right:hover::after,
html body a.site-essentials-hub__sub-right:focus-visible::after {
  animation: xsample-ul-scale-erase-ltr 0.7s cubic-bezier(0.25, 1, 0.5, 1) forwards !important;
  transform: scaleX(var(--xsample-ul-sx)) !important;
  transform-origin: var(--xsample-ul-ox) !important;
}

/* —— Pass 20260805i — real underline element (no ::after / !important war) —— */
@keyframes xsample-ul-line-erase-ltr {
  0% {
    transform: scaleX(1);
    transform-origin: right center;
  }
  42% {
    transform: scaleX(0);
    transform-origin: right center;
  }
  43% {
    transform: scaleX(0);
    transform-origin: left center;
  }
  100% {
    transform: scaleX(1);
    transform-origin: left center;
  }
}

/* Disable legacy text / ::after underlines so only .xsample-ul-line shows */
html body .hover-underline-erase,
html body a.hover-underline-erase,
html body .site-footer__locale a,
html body .site-footer__find-store,
html body a.site-footer__find-store,
html body .site-essentials-hub__sub-right,
html body a.site-essentials-hub__sub-right {
  position: relative !important;
  display: inline-block !important;
  width: fit-content !important;
  max-width: 100% !important;
  padding-bottom: 4px !important;
  background: none !important;
  background-image: none !important;
  animation: none !important;
  text-decoration: none !important;
  font-weight: inherit !important;
  -webkit-text-stroke: 0 !important;
  text-shadow: none !important;
  box-shadow: none !important;
}
html body .hover-underline-erase:hover,
html body .hover-underline-erase:focus-visible,
html body a.hover-underline-erase:hover,
html body a.hover-underline-erase:focus-visible,
html body .site-footer__locale a:hover,
html body .site-footer__locale a:focus-visible,
html body .site-footer__find-store:hover,
html body .site-footer__find-store:focus-visible,
html body .site-essentials-hub__sub-right:hover,
html body .site-essentials-hub__sub-right:focus-visible {
  background: none !important;
  background-image: none !important;
  animation: none !important;
  font-weight: inherit !important;
  text-decoration: none !important;
  -webkit-text-stroke: 0 !important;
}
html body .hover-underline-erase::after,
html body a.hover-underline-erase::after,
html body .site-footer__locale a::after,
html body .site-footer__find-store::after,
html body .site-essentials-hub__sub-right::after {
  content: none !important;
  display: none !important;
  animation: none !important;
  background: none !important;
}

html body .xsample-ul-line {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 1px;
  margin: 0;
  padding: 0;
  border: 0;
  background: #000;
  display: block;
  pointer-events: none;
  transform: scaleX(1);
  transform-origin: left center;
  transition: none;
  animation: none;
  opacity: 1;
  visibility: visible;
  z-index: 1;
}
html body .hover-underline-erase:hover > .xsample-ul-line,
html body .hover-underline-erase:focus-visible > .xsample-ul-line,
html body a.hover-underline-erase:hover > .xsample-ul-line,
html body a.hover-underline-erase:focus-visible > .xsample-ul-line,
html body .site-footer__locale a:hover > .xsample-ul-line,
html body .site-footer__locale a:focus-visible > .xsample-ul-line,
html body .site-footer__find-store:hover > .xsample-ul-line,
html body .site-footer__find-store:focus-visible > .xsample-ul-line,
html body .site-essentials-hub__sub-right:hover > .xsample-ul-line,
html body .site-essentials-hub__sub-right:focus-visible > .xsample-ul-line,
html body a.site-essentials-hub__sub-right:hover > .xsample-ul-line,
html body a.site-essentials-hub__sub-right:focus-visible > .xsample-ul-line {
  animation: none !important;
}


/* —— Pass 20260805m — clean .xsample-ul-line (NO transform/width !important) —— */
html body .hover-underline-erase,
html body a.hover-underline-erase,
html body .site-footer__locale a,
html body .site-footer__find-store,
html body a.site-footer__find-store,
html body .site-essentials-hub__sub-right,
html body a.site-essentials-hub__sub-right {
  position: relative !important;
  display: inline-block !important;
  width: fit-content !important;
  max-width: 100% !important;
  padding-bottom: 4px !important;
  background: none !important;
  background-image: none !important;
  animation: none !important;
  text-decoration: none !important;
  font-weight: inherit !important;
  -webkit-text-stroke: 0 !important;
  text-shadow: none !important;
  box-shadow: none !important;
}
html body .hover-underline-erase:hover,
html body a.hover-underline-erase:hover,
html body .site-footer__locale a:hover,
html body .site-footer__find-store:hover,
html body .site-essentials-hub__sub-right:hover,
html body a.site-essentials-hub__sub-right:hover {
  background: none !important;
  background-image: none !important;
  animation: none !important;
  font-weight: inherit !important;
  text-decoration: none !important;
}
html body .hover-underline-erase::after,
html body a.hover-underline-erase::after,
html body .site-footer__locale a::after,
html body .site-footer__find-store::after,
html body .site-essentials-hub__sub-right::after {
  content: none !important;
  display: none !important;
}
html body .xsample-ul-line {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 1px;
  margin: 0;
  padding: 0;
  border: 0;
  background-color: #000;
  background-image: none;
  display: block;
  pointer-events: none;
  transform: scaleX(1);
  transform-origin: left center;
  transition: none;
  animation: none;
  opacity: 1;
  visibility: visible;
  z-index: 1;
}


/* —— Pass 20260805o — solid 2px underline (no height jitter); search appear, no slide —— */

/* Underline: fixed 2px bar — never scale (scaleX made 1px look thicker/thinner) */
html body .hover-underline-erase,
html body a.hover-underline-erase,
html body .site-footer__locale a,
html body .site-footer__find-store,
html body a.site-footer__find-store,
html body .site-essentials-hub__sub-right,
html body a.site-essentials-hub__sub-right {
  padding-bottom: 3px !important;
  background: none !important;
  background-image: none !important;
  text-decoration: none !important;
}
html body .xsample-ul-line {
  position: absolute !important;
  left: 0 !important;
  right: auto !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 2px !important;
  min-height: 2px !important;
  max-height: 2px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: #000 !important;
  background-color: #000 !important;
  background-image: none !important;
  box-shadow: none !important;
  outline: none !important;
  display: block !important;
  pointer-events: none !important;
  transform: scaleX(1);
  /* translate unlocked */
  /* scale unlocked */
  rotate: none !important;
  transition: none !important;
  animation: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  clip-path: inset(0 0 0 0);
  will-change: clip-path;
  z-index: 1 !important;
}

/* SEARCH: appear once — no slide, no transform travel */
html body .site-search,
html body .site-search.site-search--open,
html body .site-search.site-search--closed,
html body .site-search:not(.site-search--open) {
  position: fixed !important;
  inset: 0 !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  transform: none !important;
  translate: none !important;
  transition: none !important;
  animation: none !important;
}
html body .site-search.site-search--open {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
}
html body .site-search.site-search--closed,
html body .site-search:not(.site-search--open) {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}


/* —— Pass 20260805p — search padding restored; 1px L→R underlines —— */

/* SEARCH gutters: match site header (was zeroed by older !important passes) */
html body .site-search__panel {
  padding: 0 !important;
  box-sizing: border-box !important;
}
html body .site-search__top {
  padding-inline: 1.25rem !important;
  padding-block: 0 !important;
  box-sizing: border-box !important;
}
html body .site-search__field,
html body .site-search__body,
html body .site-search__status,
html body .site-search__loader {
  padding-inline: 1.25rem !important;
  box-sizing: border-box !important;
}
@media (min-width: 768px) {
  html body .site-search__top,
  html body .site-search__field,
  html body .site-search__body,
  html body .site-search__status,
  html body .site-search__loader {
    padding-inline: 2.5rem !important;
  }
}

/* Keep search appear (no slide) */
html body .site-search,
html body .site-search.site-search--open,
html body .site-search.site-search--closed {
  transform: none !important;
  translate: none !important;
  transition: none !important;
}

/* 1px solid underline bar */
html body .xsample-ul-line {
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  background: #000 !important;
  transform: scaleX(1);
  /* scale unlocked */
}

/* Search / mega link-line: thin 1px draw LEFT → RIGHT only (no R→L origin) */
html body .site-search .link-line,
html body .site-search a.link-line,
html body .site-search__list-link,
html body a.site-search__list-link {
  background-image: linear-gradient(#000, #000) !important;
  background-repeat: no-repeat !important;
  background-position: left bottom !important;
  background-size: 0 1px !important;
  transition: background-size 0.55s cubic-bezier(0.25, 1, 0.5, 1) !important;
  text-decoration: none !important;
}
html body .site-search .link-line:hover,
html body .site-search .link-line:focus-visible,
html body .site-search a.link-line:hover,
html body .site-search__list-link:hover,
html body a.site-search__list-link:hover {
  background-position: left bottom !important;
  background-size: 100% 1px !important;
}
html body .site-search .link-line::after,
html body .site-search a.link-line::after,
html body .site-search__list-link::after {
  content: none !important;
  display: none !important;
}

/* —— Pass 20260805q — search gutters = header; underline draw L→R only —— */

/* SEARCH: same horizontal padding as .site-header (1rem / 2rem) */
html body .site-search,
html body .site-search.site-search--open,
html body .site-search.site-search--closed,
html body .site-search:not(.site-search--open) {
  transform: none !important;
  translate: none !important;
  transition: none !important;
  animation: none !important;
}
html body .site-search__panel {
  padding: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}
html body .site-search__top {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  height: var(--site-header-height, 72px) !important;
  min-height: var(--site-header-height, 72px) !important;
  max-height: var(--site-header-height, 72px) !important;
  margin: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  padding-left: 1rem !important;
  padding-right: 1rem !important;
  box-sizing: border-box !important;
}
html body .site-search__field {
  margin: 0 !important;
  margin-bottom: 1.75rem !important;
  padding-top: 0.35rem !important;
  padding-bottom: 0.65rem !important;
  padding-left: 1rem !important;
  padding-right: 1rem !important;
  box-sizing: border-box !important;
  width: 100% !important;
}
html body .site-search__body,
html body .site-search__status,
html body .site-search__loader {
  padding-left: 1rem !important;
  padding-right: 1rem !important;
  box-sizing: border-box !important;
}
html body .site-search__field-actions {
  right: 0 !important;
}
@media (min-width: 768px) {
  html body .site-search__top,
  html body .site-search__field,
  html body .site-search__body,
  html body .site-search__status,
  html body .site-search__loader {
    padding-left: 2rem !important;
    padding-right: 2rem !important;
  }
  html body .site-search__field-actions {
    right: 0 !important;
  }
}

/* Search suggestion/collection links: 1px underline draws LEFT → RIGHT */
html body .site-search .link-line,
html body .site-search a.link-line,
html body .site-search .site-search__list-link,
html body .site-search a.site-search__list-link {
  position: relative !important;
  display: inline-block !important;
  background-image: linear-gradient(#000, #000) !important;
  background-repeat: no-repeat !important;
  background-position: left bottom !important;
  background-size: 0% 1px !important;
  transition: background-size 0.55s cubic-bezier(0.25, 1, 0.5, 1) !important;
  text-decoration: none !important;
}
html body .site-search .link-line:hover,
html body .site-search .link-line:focus-visible,
html body .site-search a.link-line:hover,
html body .site-search a.link-line:focus-visible,
html body .site-search .site-search__list-link:hover,
html body .site-search .site-search__list-link:focus-visible,
html body .site-search a.site-search__list-link:hover,
html body .site-search a.site-search__list-link:focus-visible {
  background-position: left bottom !important;
  background-size: 100% 1px !important;
}
html body .site-search .link-line::after,
html body .site-search a.link-line::after,
html body .site-search .site-search__list-link::after {
  content: none !important;
  display: none !important;
}

/* Footer / Discover solid line: 1px, hover erase then draw L→R via clip from left */
html body .xsample-ul-line {
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
}

/* —— Pass 20260805r — search padding locked to 16px (logo + field + body) —— */
html body .site-search__top,
html body .site-search__field,
html body .site-search__body,
html body .site-search__status,
html body .site-search__loader {
  padding-left: 16px !important;
  padding-right: 16px !important;
}
@media (min-width: 768px) {
  html body .site-search__top,
  html body .site-search__field,
  html body .site-search__body,
  html body .site-search__status,
  html body .site-search__loader {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
}

/* —— Pass 20260805s — panel 16px gutter (input inherits); underline L→R at .link-line pace —— */

/* One 16px gutter on the panel so logo + input + links share it */
html body .site-search__panel {
  padding: 0 16px !important;
  box-sizing: border-box !important;
}
html body .site-search__top,
html body .site-search__field,
html body .site-search__body,
html body .site-search__status,
html body .site-search__loader {
  padding-left: 0 !important;
  padding-right: 0 !important;
}
html body .site-search__input {
  padding-left: 0 !important;
  padding-right: 4.5rem !important;
  box-sizing: border-box !important;
  width: 100% !important;
}
html body .site-search__field-actions {
  right: 0 !important;
}
@media (min-width: 768px) {
  html body .site-search__panel {
    padding: 0 16px !important;
  }
  html body .site-search__top,
  html body .site-search__field,
  html body .site-search__body,
  html body .site-search__status,
  html body .site-search__loader {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}

/* Allow WAAPI scaleX on the solid underline bar */
html body .xsample-ul-line {
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  transform: scaleX(1);
  transform-origin: left center;
  clip-path: inset(0 0% 0 0);
  /* do NOT set transform: none !important — blocks L→R motion */
}

/* Search / normal link-lines: always draw from LEFT at 0.55s */
html body .site-search .link-line,
html body .site-search a.link-line,
html body .site-search .site-search__list-link,
html body .site-search a.site-search__list-link,
html body .link-line,
html body a.link-line {
  background-image: linear-gradient(#000, #000) !important;
  background-repeat: no-repeat !important;
  background-position: left bottom !important;
  background-size: 0% 1px !important;
  transition: background-size 0.55s cubic-bezier(0.25, 1, 0.5, 1) !important;
}
html body .site-search .link-line:hover,
html body .site-search .link-line:focus-visible,
html body .site-search a.link-line:hover,
html body .site-search a.link-line:focus-visible,
html body .site-search .site-search__list-link:hover,
html body .site-search .site-search__list-link:focus-visible,
html body .site-search a.site-search__list-link:hover,
html body .site-search a.site-search__list-link:focus-visible,
html body .link-line:hover,
html body .link-line:focus-visible,
html body a.link-line:hover,
html body a.link-line:focus-visible {
  background-position: left bottom !important;
  background-size: 100% 1px !important;
}
html body .site-search .link-line::after,
html body .site-search a.link-line::after,
html body .site-search .site-search__list-link::after,
html body .link-line::after,
html body a.link-line::after {
  content: none !important;
  display: none !important;
  transform: none !important;
}


/* —— Pass 20260805t — unlock ul transform; input shares 16px; L→R @ 0.55s×2 —— */
html body .xsample-ul-line {
  transform: scaleX(1);
  transform-origin: left center;
  clip-path: none;
  scale: initial;
  translate: initial;
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
}
html body .site-search__panel {
  padding-left: 16px !important;
  padding-right: 16px !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
html body .site-search__top,
html body .site-search__field,
html body .site-search__body {
  padding-left: 0 !important;
  padding-right: 0 !important;
}
html body .site-search__input {
  margin: 0 !important;
  padding-left: 0 !important;
  padding-right: 4.5rem !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

/* —— Pass 20260805v — normal underlines: fixed 1px bar (no thin mid-anim) —— */
html body .link-line,
html body a.link-line,
html body .site-search .link-line,
html body .site-search a.link-line,
html body .site-search__list-link,
html body a.site-search__list-link,
html body .site-mega__link,
html body .site-mega__title,
html body .site-nav__link--underline,
html body a.site-nav__link--underline,
html body .hover-underline-anim,
html body .cookie-banner__link,
html body .cookie-settings__more,
html body .page-404__care-link,
html body .site-search__hint-text {
  background-image: none !important;
  background-size: auto !important;
  position: relative !important;
}
html body .link-line::after,
html body a.link-line::after,
html body .site-search .link-line::after,
html body .site-search a.link-line::after,
html body .site-search__list-link::after,
html body a.site-search__list-link::after,
html body .site-mega__link::after,
html body .site-mega__title::after,
html body .site-nav__link--underline::after,
html body a.site-nav__link--underline::after,
html body .hover-underline-anim::after,
html body .cookie-banner__link::after,
html body .cookie-settings__more::after,
html body .page-404__care-link::after,
html body .site-search__hint-text::after {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: #000 !important;
  background-color: #000 !important;
  background-image: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: none !important;
  transform: scaleX(0) !important;
  transform-origin: left center !important;
  transition: transform var(--link-line-duration, 0.55s) cubic-bezier(0.25, 1, 0.5, 1) !important;
  animation: none !important;
  /* keep weight crisp while scaling */
  backface-visibility: hidden !important;
  -webkit-backface-visibility: hidden !important;
}
html body .link-line:hover::after,
html body .link-line:focus-visible::after,
html body .link-line.is-active::after,
html body a.link-line:hover::after,
html body a.link-line:focus-visible::after,
html body .site-search .link-line:hover::after,
html body .site-search .link-line:focus-visible::after,
html body .site-search__list-link:hover::after,
html body .site-search__list-link:focus-visible::after,
html body .site-search__list-link.is-active::after,
html body a.site-search__list-link:hover::after,
html body .site-mega__link:hover::after,
html body .site-mega__title:hover::after,
html body .site-nav__link--underline:hover::after,
html body .site-nav__link--underline:focus-visible::after,
html body .site-nav__item.is-open > .site-nav__link--underline::after,
html body .group:hover > .site-nav__link--underline::after,
html body .hover-underline-anim:hover::after,
html body .cookie-banner__link:hover::after,
html body .cookie-settings__more:hover::after,
html body .page-404__care-link:hover::after,
html body .site-search__hint-text:hover::after {
  transform: scaleX(1) !important;
  transform-origin: left center !important;
  height: 1px !important;
  background: #000 !important;
  opacity: 1 !important;
}

/* Nav links: pin underline under the label (not flex full height) */
html body .site-nav__link--underline::after,
html body a.site-nav__link--underline::after {
  bottom: calc(50% - 0.55em - 4px) !important;
}

/* —— Pass 20260805w — footer links: draw L→R then stay solid (no erase) —— */
html body .site-footer .hover-underline-erase > .xsample-ul-line,
html body .site-footer a.hover-underline-erase > .xsample-ul-line,
html body .site-footer .site-footer__find-store > .xsample-ul-line,
html body .site-footer .xsample-ul-draw > .xsample-ul-line {
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  background: #000 !important;
  transform: scaleX(1);
  transform-origin: left center;
  transition: none !important;
  opacity: 1 !important;
}
html body .site-footer .hover-underline-erase:hover > .xsample-ul-line,
html body .site-footer .hover-underline-erase:focus-visible > .xsample-ul-line,
html body .site-footer .site-footer__find-store:hover > .xsample-ul-line,
html body .site-footer .xsample-ul-draw:hover > .xsample-ul-line {
  /* WAAPI drives transform; keep solid 1px weight */
  height: 1px !important;
  background: #000 !important;
  opacity: 1 !important;
  transform-origin: left center;
}
/* Kill any leftover text-level underline on footer erase links */
html body .site-footer .hover-underline-erase,
html body .site-footer a.hover-underline-erase,
html body .site-footer .site-footer__find-store {
  background-image: none !important;
  text-decoration: none !important;
}
html body .site-footer .hover-underline-erase::after,
html body .site-footer a.hover-underline-erase::after,
html body .site-footer .site-footer__find-store::after {
  content: none !important;
  display: none !important;
}

/* —— Pass 20260805x — footer/discover: solid BEFORE and AFTER (scaleX 1 at rest) —— */
html body .site-footer .hover-underline-erase > .xsample-ul-line,
html body .site-footer a.hover-underline-erase > .xsample-ul-line,
html body .site-footer .site-footer__find-store > .xsample-ul-line,
html body .site-footer .xsample-ul-draw > .xsample-ul-line,
html body .hover-underline-erase > .xsample-ul-line,
html body a.hover-underline-erase > .xsample-ul-line,
html body .site-essentials-hub__sub-right > .xsample-ul-line {
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  background: #000 !important;
  background-color: #000 !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: scaleX(1);
  transform-origin: left center;
  display: block !important;
}
/* While hovered, allow WAAPI to drive transform (no !important lock) */
html body .site-footer .hover-underline-erase:hover > .xsample-ul-line,
html body .site-footer .hover-underline-erase:focus-visible > .xsample-ul-line,
html body .site-footer .site-footer__find-store:hover > .xsample-ul-line,
html body .hover-underline-erase:hover > .xsample-ul-line,
html body .hover-underline-erase:focus-visible > .xsample-ul-line,
html body .site-essentials-hub__sub-right:hover > .xsample-ul-line,
html body .site-essentials-hub__sub-right:focus-visible > .xsample-ul-line {
  transform: scaleX(1);
  transform-origin: left center;
  height: 1px !important;
  background: #000 !important;
  opacity: 1 !important;
}


/* —— Pass 20260805y — perfect solid↔animate↔solid (NO transform !important) —— */
@keyframes xsample-ul-perfect-ltr {
  0%   { transform: scaleX(1); transform-origin: right center; }
  50%  { transform: scaleX(0); transform-origin: right center; }
  50.01%{ transform: scaleX(0); transform-origin: left center; }
  100% { transform: scaleX(1); transform-origin: left center; }
}
html body .xsample-ul-line,
html body .hover-underline-erase > .xsample-ul-line,
html body a.hover-underline-erase > .xsample-ul-line,
html body .site-footer .hover-underline-erase > .xsample-ul-line,
html body .site-footer .site-footer__find-store > .xsample-ul-line,
html body .site-essentials-hub__sub-right > .xsample-ul-line {
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  background: #000 !important;
  background-color: #000 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: none !important;
  /* solid at rest — never !important on transform */
  transform: scaleX(1);
  transform-origin: left center;
  animation: none;
  transition: none !important;
}
html body .hover-underline-erase:hover > .xsample-ul-line,
html body .hover-underline-erase:focus-visible > .xsample-ul-line,
html body a.hover-underline-erase:hover > .xsample-ul-line,
html body a.hover-underline-erase:focus-visible > .xsample-ul-line,
html body .site-footer .hover-underline-erase:hover > .xsample-ul-line,
html body .site-footer .hover-underline-erase:focus-visible > .xsample-ul-line,
html body .site-footer .site-footer__find-store:hover > .xsample-ul-line,
html body .site-footer .site-footer__find-store:focus-visible > .xsample-ul-line,
html body .site-essentials-hub__sub-right:hover > .xsample-ul-line,
html body .site-essentials-hub__sub-right:focus-visible > .xsample-ul-line,
html body a.site-essentials-hub__sub-right:hover > .xsample-ul-line,
html body a.site-essentials-hub__sub-right:focus-visible > .xsample-ul-line {
  /* 0.55s erase + 0.55s draw; linear timeline so each half keeps pace */
  animation: none /* was perfect-ltr discover */ 0.45s linear forwards !important;
  height: 1px !important;
  background: #000 !important;
  opacity: 1 !important;
}

/* —— Pass 20260805z — all underlines match perfect 1.1s linear pace —— */
:root {
  --link-line-duration: 0.45s;
  --link-line-ease: linear;
}
html,
html body {
  --link-line-duration: 0.45s !important;
  --link-line-ease: linear !important;
}

/* Normal draw underlines (::after scaleX) — same duration + linear as erase→draw */
html body .link-line::after,
html body a.link-line::after,
html body .site-search .link-line::after,
html body .site-search a.link-line::after,
html body .site-search__list-link::after,
html body a.site-search__list-link::after,
html body .site-mega__link::after,
html body .site-mega__title::after,
html body .site-nav__link--underline::after,
html body a.site-nav__link--underline::after,
html body .hover-underline-anim::after,
html body .cookie-banner__link::after,
html body .cookie-settings__more::after,
html body .page-404__care-link::after,
html body .site-search__hint-text::after {
  transition: transform 0.45s linear !important;
  transition-duration: 0.45s !important;
  transition-timing-function: linear !important;
}

/* Background-size underlines (legacy) — same pace */
html body .link-line,
html body a.link-line,
html body .site-search__list-link,
html body .site-mega__link,
html body .site-mega__title,
html body .site-nav__link--underline,
html body a.site-nav__link--underline,
html body .hover-underline-anim,
html body .cookie-banner__link,
html body .cookie-settings__more,
html body .page-404__care-link,
html body .site-search__hint-text {
  transition:
    color 0.2s ease,
    background-size 0.45s linear,
    background-position 0.45s linear !important;
}

/* Keep the solid erase→draw on the same 1.1s linear clock */
html body .hover-underline-erase:hover > .xsample-ul-line,
html body .hover-underline-erase:focus-visible > .xsample-ul-line,
html body a.hover-underline-erase:hover > .xsample-ul-line,
html body a.hover-underline-erase:focus-visible > .xsample-ul-line,
html body .site-footer .hover-underline-erase:hover > .xsample-ul-line,
html body .site-footer .site-footer__find-store:hover > .xsample-ul-line,
html body .site-essentials-hub__sub-right:hover > .xsample-ul-line,
html body a.site-essentials-hub__sub-right:hover > .xsample-ul-line {
  animation: none /* was perfect-ltr discover */ 0.45s linear forwards !important;
}

/* —— Pass 20260805aa — ALL underlines 0.45s linear; cookie links perfected —— */
:root {
  --link-line-duration: 0.45s;
  --link-line-ease: linear;
}
html,
html body {
  --link-line-duration: 0.45s !important;
  --link-line-ease: linear !important;
}

/* Solid erase→draw (footer / discover) */
html body .hover-underline-erase:hover > .xsample-ul-line,
html body .hover-underline-erase:focus-visible > .xsample-ul-line,
html body a.hover-underline-erase:hover > .xsample-ul-line,
html body a.hover-underline-erase:focus-visible > .xsample-ul-line,
html body .site-footer .hover-underline-erase:hover > .xsample-ul-line,
html body .site-footer .hover-underline-erase:focus-visible > .xsample-ul-line,
html body .site-footer .site-footer__find-store:hover > .xsample-ul-line,
html body .site-footer .site-footer__find-store:focus-visible > .xsample-ul-line,
html body .site-essentials-hub__sub-right:hover > .xsample-ul-line,
html body .site-essentials-hub__sub-right:focus-visible > .xsample-ul-line,
html body a.site-essentials-hub__sub-right:hover > .xsample-ul-line,
html body a.site-essentials-hub__sub-right:focus-visible > .xsample-ul-line {
  animation: none /* was perfect-ltr discover */ 0.45s linear forwards !important;
}

/* Normal draw underlines */
html body .link-line::after,
html body a.link-line::after,
html body .site-search .link-line::after,
html body .site-search__list-link::after,
html body .site-mega__link::after,
html body .site-mega__title::after,
html body .site-nav__link--underline::after,
html body a.site-nav__link--underline::after,
html body .hover-underline-anim::after,
html body .cookie-banner__link::after,
html body .cookie-settings__more::after,
html body .page-404__care-link::after,
html body .site-search__hint-text::after,
html body .site-newsletter__success-link::after {
  transition: transform 0.45s linear !important;
  transition-duration: 0.45s !important;
  transition-timing-function: linear !important;
}
html body .link-line,
html body a.link-line,
html body .site-search__list-link,
html body .site-mega__link,
html body .site-mega__title,
html body .site-nav__link--underline,
html body .hover-underline-anim,
html body .cookie-settings__more,
html body .page-404__care-link,
html body .site-search__hint-text,
html body .site-newsletter__success-link {
  transition:
    color 0.2s ease,
    background-size 0.45s linear,
    background-position 0.45s linear !important;
}

/*
  Cookie banner links — perfect L→R draw (kill old solid→erase + origin-right).
  Keep buttons fully clickable.
*/
html body .cookie-banner__link,
html body button.cookie-banner__link,
html body #cookie-banner .cookie-banner__link,
html body div.cookie-banner button.cookie-banner__link {
  position: relative !important;
  display: inline-block !important;
  background-image: none !important;
  text-decoration: none !important;
  color: #000 !important;
  cursor: pointer !important;
  pointer-events: auto !important;
  z-index: 2 !important;
  padding-bottom: 2px !important;
}
html body .cookie-banner__link::after,
html body button.cookie-banner__link::after,
html body #cookie-banner .cookie-banner__link::after,
html body div.cookie-banner button.cookie-banner__link::after {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  background: #000 !important;
  background-color: #000 !important;
  pointer-events: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: scaleX(0) !important;
  transform-origin: left center !important;
  transition: transform 0.45s linear !important;
  animation: none !important;
}
html body .cookie-banner__link:hover::after,
html body .cookie-banner__link:focus-visible::after,
html body button.cookie-banner__link:hover::after,
html body button.cookie-banner__link:focus-visible::after,
html body #cookie-banner .cookie-banner__link:hover::after,
html body #cookie-banner .cookie-banner__link:focus-visible::after,
html body div.cookie-banner button.cookie-banner__link:hover::after,
html body div.cookie-banner button.cookie-banner__link:focus-visible::after {
  transform: scaleX(1) !important;
  transform-origin: left center !important;
  height: 1px !important;
  background: #000 !important;
  opacity: 1 !important;
}

/* Cookie settings "Learn more" etc — same L→R + pace */
html body .cookie-settings__more,
html body a.cookie-settings__more,
html body button.cookie-settings__more {
  position: relative !important;
  display: inline-block !important;
  background-image: none !important;
  text-decoration: none !important;
  cursor: pointer !important;
  pointer-events: auto !important;
}
html body .cookie-settings__more::after,
html body a.cookie-settings__more::after,
html body button.cookie-settings__more::after {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 1px !important;
  background: #000 !important;
  transform: scaleX(0) !important;
  transform-origin: left center !important;
  transition: transform 0.45s linear !important;
  pointer-events: none !important;
}
html body .cookie-settings__more:hover::after,
html body .cookie-settings__more:focus-visible::after,
html body a.cookie-settings__more:hover::after,
html body button.cookie-settings__more:hover::after {
  transform: scaleX(1) !important;
  transform-origin: left center !important;
}


/* —— Pass 20260805ab — force :root 0.45s —— */
:root {
  --link-line-duration: 0.45s !important;
  --link-line-ease: linear !important;
}


/* —— Pass 20260805ac — SITEWIDE underlines @ 0.45s linear; unify + fix bugs —— */
:root,
html,
html body {
  --link-line-duration: 0.45s !important;
  --link-line-ease: linear !important;
}

/* Shared keyframes (erase → draw L→R) */
@keyframes xsample-ul-perfect-ltr {
  0%    { transform: scaleX(1); transform-origin: right center; }
  50%   { transform: scaleX(0); transform-origin: right center; }
  50.01%{ transform: scaleX(0); transform-origin: left center; }
  100%  { transform: scaleX(1); transform-origin: left center; }
}

/* —— Solid erase-type (footer / discover) —— */
html body .xsample-ul-line,
html body .hover-underline-erase > .xsample-ul-line,
html body a.hover-underline-erase > .xsample-ul-line,
html body .site-footer .hover-underline-erase > .xsample-ul-line,
html body .site-footer .site-footer__find-store > .xsample-ul-line,
html body .site-essentials-hub__sub-right > .xsample-ul-line {
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: #000 !important;
  background-color: #000 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: none !important;
  transform: scaleX(1);
  transform-origin: left center;
  animation: none;
  transition: none !important;
}
html body .hover-underline-erase,
html body a.hover-underline-erase,
html body .site-footer__find-store,
html body .site-essentials-hub__sub-right {
  position: relative !important;
  display: inline-block !important;
  background-image: none !important;
  text-decoration: none !important;
}
html body .hover-underline-erase::after,
html body a.hover-underline-erase::after,
html body .site-footer__find-store::after,
html body .site-essentials-hub__sub-right::after {
  content: none !important;
  display: none !important;
}
html body .hover-underline-erase:hover > .xsample-ul-line,
html body .hover-underline-erase:focus-visible > .xsample-ul-line,
html body a.hover-underline-erase:hover > .xsample-ul-line,
html body a.hover-underline-erase:focus-visible > .xsample-ul-line,
html body .site-footer .hover-underline-erase:hover > .xsample-ul-line,
html body .site-footer .hover-underline-erase:focus-visible > .xsample-ul-line,
html body .site-footer .site-footer__find-store:hover > .xsample-ul-line,
html body .site-footer .site-footer__find-store:focus-visible > .xsample-ul-line,
html body .site-essentials-hub__sub-right:hover > .xsample-ul-line,
html body .site-essentials-hub__sub-right:focus-visible > .xsample-ul-line,
html body a.site-essentials-hub__sub-right:hover > .xsample-ul-line,
html body a.site-essentials-hub__sub-right:focus-visible > .xsample-ul-line {
  animation: none /* was perfect-ltr discover */ 0.45s linear forwards !important;
  height: 1px !important;
  background: #000 !important;
  opacity: 1 !important;
}

/* —— Normal draw underlines (link-line / nav / mega / search / cookie / 404) —— */
html body .link-line,
html body a.link-line,
html body .site-search__list-link,
html body a.site-search__list-link,
html body .site-mega__link,
html body .site-mega__title,
html body .site-nav__link--underline,
html body a.site-nav__link--underline,
html body .hover-underline-anim,
html body .cookie-banner__link,
html body button.cookie-banner__link,
html body .cookie-settings__more,
html body a.cookie-settings__more,
html body button.cookie-settings__more,
html body .page-404__care-link,
html body .site-search__hint-text,
html body .site-newsletter__success-link {
  position: relative !important;
  background-image: none !important;
  text-decoration: none !important;
}
html body .link-line::after,
html body a.link-line::after,
html body .site-search__list-link::after,
html body a.site-search__list-link::after,
html body .site-mega__link::after,
html body .site-mega__title::after,
html body .site-nav__link--underline::after,
html body a.site-nav__link--underline::after,
html body .hover-underline-anim::after,
html body .cookie-banner__link::after,
html body button.cookie-banner__link::after,
html body #cookie-banner .cookie-banner__link::after,
html body div.cookie-banner button.cookie-banner__link::after,
html body .cookie-settings__more::after,
html body a.cookie-settings__more::after,
html body button.cookie-settings__more::after,
html body .page-404__care-link::after,
html body .site-search__hint-text::after,
html body .site-newsletter__success-link::after {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: #000 !important;
  background-color: #000 !important;
  background-image: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: none !important;
  transform: scaleX(0) !important;
  transform-origin: left center !important;
  transition: transform 0.45s linear !important;
  animation: none !important;
  backface-visibility: hidden !important;
}
html body .link-line:hover::after,
html body .link-line:focus-visible::after,
html body .link-line.is-active::after,
html body a.link-line:hover::after,
html body a.link-line:focus-visible::after,
html body .site-search__list-link:hover::after,
html body .site-search__list-link:focus-visible::after,
html body .site-search__list-link.is-active::after,
html body a.site-search__list-link:hover::after,
html body .site-mega__link:hover::after,
html body .site-mega__title:hover::after,
html body .site-nav__link--underline:hover::after,
html body .site-nav__link--underline:focus-visible::after,
html body .site-nav__item.is-open > .site-nav__link--underline::after,
html body .group:hover > .site-nav__link--underline::after,
html body .hover-underline-anim:hover::after,
html body .cookie-banner__link:hover::after,
html body .cookie-banner__link:focus-visible::after,
html body button.cookie-banner__link:hover::after,
html body button.cookie-banner__link:focus-visible::after,
html body #cookie-banner .cookie-banner__link:hover::after,
html body #cookie-banner .cookie-banner__link:focus-visible::after,
html body div.cookie-banner button.cookie-banner__link:hover::after,
html body div.cookie-banner button.cookie-banner__link:focus-visible::after,
html body .cookie-settings__more:hover::after,
html body .cookie-settings__more:focus-visible::after,
html body a.cookie-settings__more:hover::after,
html body button.cookie-settings__more:hover::after,
html body .page-404__care-link:hover::after,
html body .site-search__hint-text:hover::after,
html body .site-newsletter__success-link:hover::after {
  transform: scaleX(1) !important;
  transform-origin: left center !important;
  height: 1px !important;
  background: #000 !important;
  opacity: 1 !important;
}

/* Nav: pin underline under label */
html body .site-nav__link--underline::after,
html body a.site-nav__link--underline::after {
  bottom: calc(50% - 0.55em - 4px) !important;
}

/* Cookie links stay clickable */
html body .cookie-banner__link,
html body button.cookie-banner__link,
html body .cookie-settings__more,
html body a.cookie-settings__more,
html body button.cookie-settings__more {
  cursor: pointer !important;
  pointer-events: auto !important;
  z-index: 2 !important;
}

/* —— Pass 20260805ad — solid underline 0.9s (2×0.45); mega dropdown locked to 0.45s —— */

/* Solid erase→draw: each phase = 0.45s (same pace as normal draw), total 0.9s */
html body .hover-underline-erase:hover > .xsample-ul-line,
html body .hover-underline-erase:focus-visible > .xsample-ul-line,
html body a.hover-underline-erase:hover > .xsample-ul-line,
html body a.hover-underline-erase:focus-visible > .xsample-ul-line,
html body .site-footer .hover-underline-erase:hover > .xsample-ul-line,
html body .site-footer .hover-underline-erase:focus-visible > .xsample-ul-line,
html body .site-footer .site-footer__find-store:hover > .xsample-ul-line,
html body .site-footer .site-footer__find-store:focus-visible > .xsample-ul-line,
html body .site-essentials-hub__sub-right:hover > .xsample-ul-line,
html body .site-essentials-hub__sub-right:focus-visible > .xsample-ul-line,
html body a.site-essentials-hub__sub-right:hover > .xsample-ul-line,
html body a.site-essentials-hub__sub-right:focus-visible > .xsample-ul-line {
  animation: none /* was perfect-ltr discover */ 0.9s linear forwards !important;
  animation-duration: 0.9s !important;
  animation-timing-function: linear !important;
}

/* Mega / dropdown links — force 0.45s linear (was feeling faster via old rules) */
html body .site-mega .link-line::after,
html body .site-mega a.link-line::after,
html body .site-mega__link::after,
html body a.site-mega__link::after,
html body .site-mega__link.link-line::after,
html body a.site-mega__link.link-line::after,
html body .site-mega__title::after,
html body a.site-mega__title::after,
html body .site-mega__title.link-line::after {
  transition: transform 0.45s linear !important;
  transition-duration: 0.45s !important;
  transition-timing-function: linear !important;
  transform: scaleX(0) !important;
  transform-origin: left center !important;
  height: 1px !important;
  background: #000 !important;
}
html body .site-mega .link-line:hover::after,
html body .site-mega a.link-line:hover::after,
html body .site-mega__link:hover::after,
html body a.site-mega__link:hover::after,
html body .site-mega__link.link-line:hover::after,
html body a.site-mega__link.link-line:hover::after,
html body .site-mega__link:focus-visible::after,
html body .site-mega__title:hover::after,
html body a.site-mega__title:hover::after,
html body .site-mega__title.link-line:hover::after {
  transform: scaleX(1) !important;
  transform-origin: left center !important;
  transition: transform 0.45s linear !important;
  transition-duration: 0.45s !important;
  transition-timing-function: linear !important;
}

/* Kill any leftover snappy mega underline transitions */
html body .site-mega__link,
html body a.site-mega__link,
html body .site-mega__title,
html body a.site-mega__title {
  transition: color 0.2s ease, background-size 0.45s linear, background-position 0.45s linear !important;
}

/* —— Pass 20260805ae — mega DROPDOWN links only (not nav toggle): hard 0.45s L→R —— */
html body .site-mega a.site-mega__link,
html body .site-mega a.site-mega__link.link-line,
html body .site-mega .site-mega__link,
html body .site-mega .site-mega__link.link-line,
html body .site-mega a.site-mega__title,
html body .site-mega a.site-mega__title.link-line,
html body .site-mega .site-mega__title,
html body .site-mega .site-mega__title.link-line,
html body a.site-mega__link.link-line,
html body a.site-mega__title.link-line {
  position: relative !important;
  display: inline-block !important;
  background: none !important;
  background-image: none !important;
  background-size: auto !important;
  background-position: initial !important;
  text-decoration: none !important;
  /* do not animate background underline on the text itself */
  transition: color 0.2s ease !important;
}
html body .site-mega a.site-mega__link::after,
html body .site-mega a.site-mega__link.link-line::after,
html body .site-mega .site-mega__link::after,
html body .site-mega .site-mega__link.link-line::after,
html body .site-mega a.site-mega__title::after,
html body .site-mega a.site-mega__title.link-line::after,
html body .site-mega .site-mega__title::after,
html body .site-mega .site-mega__title.link-line::after,
html body a.site-mega__link.link-line::after,
html body a.site-mega__title.link-line::after {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: -1px !important;
  width: 100% !important;
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  background: #000 !important;
  background-color: #000 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: none !important;
  transform: scaleX(0) !important;
  transform-origin: left center !important;
  transition: transform 0.45s linear !important;
  transition-property: transform !important;
  transition-duration: 0.45s !important;
  transition-timing-function: linear !important;
  transition-delay: 0s !important;
  animation: none !important;
  will-change: transform !important;
}
html body .site-mega a.site-mega__link:hover::after,
html body .site-mega a.site-mega__link:focus-visible::after,
html body .site-mega a.site-mega__link.link-line:hover::after,
html body .site-mega a.site-mega__link.link-line:focus-visible::after,
html body .site-mega .site-mega__link:hover::after,
html body .site-mega .site-mega__link.link-line:hover::after,
html body .site-mega a.site-mega__title:hover::after,
html body .site-mega a.site-mega__title.link-line:hover::after,
html body .site-mega .site-mega__title:hover::after,
html body .site-mega .site-mega__title.link-line:hover::after,
html body a.site-mega__link.link-line:hover::after,
html body a.site-mega__link.link-line:focus-visible::after,
html body a.site-mega__title.link-line:hover::after,
html body a.site-mega__title.link-line:focus-visible::after {
  transform: scaleX(1) !important;
  transform-origin: left center !important;
  transition: transform 0.45s linear !important;
  transition-duration: 0.45s !important;
  transition-timing-function: linear !important;
}

/* —— Pass 20260805af — essentials campaign CTA: centered + ALL CAPS —— */
html body .site-essentials-hub__campaign-cta {
  display: flex !important;
  align-items: flex-end !important;
  justify-content: center !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  text-align: center !important;
}
html body .site-essentials-hub__campaign-cta .cta-on-image,
html body .site-essentials-hub__campaign-cta a.cta-on-image {
  text-transform: uppercase !important;
  text-align: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  letter-spacing: -0.20px !important;
}

/* —— Pass 20260805ag — mega dropdown NEVER cuts out (scroll / header-hide / overflow) —— */
html body.mega-open,
html.mega-open body,
body.mega-open,
html body.mega-open #root,
html body.mega-open #app,
html body.mega-open main,
html body.mega-open .site-header,
html body.mega-open header.site-header,
html body.mega-open .site-nav-wrap,
html body.mega-open .site-nav {
  overflow: visible !important;
  clip-path: none !important;
  clip: auto !important;
}

/* While mega is open: header stays fully visible — beat is-header-off hide rules */
html body.mega-open .site-header,
html body.mega-open header.site-header,
html body.mega-open .site-header.is-header-off,
html body.mega-open header.site-header.is-header-off,
html body.mega-open .site-header.md\:-translate-y-full,
html body.mega-open header.site-header.md\:-translate-y-full {
  transform: none !important;
  translate: none !important;
  --tw-translate-y: 0 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  z-index: 14040 !important;
}

html body.mega-open .site-header .site-nav-wrap,
html body.mega-open .site-header .site-nav__item,
html body.mega-open .site-header .site-nav__link,
html body.mega-open .site-header .header-utils,
html body.mega-open .site-header a,
html body.mega-open .site-header button {
  pointer-events: auto !important;
  visibility: visible !important;
  opacity: 1 !important;
}

html body.mega-open .site-mega,
html body.mega-open .site-mega.site-mega--open,
html body .site-mega.site-mega--open {
  position: fixed !important;
  top: var(--header-bottom, 96px) !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  max-width: 100vw !important;
  z-index: 14020 !important;
  display: block !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  max-height: calc(100dvh - var(--header-bottom, 96px)) !important;
  contain: none !important;
  clip-path: none !important;
  clip: auto !important;
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  transform: none !important;
  will-change: auto !important;
}

html body.mega-open .site-mega__inner {
  overflow: visible !important;
}

html body.mega-open .site-mega__backdrop,
html body.mega-open .site-mega__backdrop.is-open,
html body .site-mega__backdrop.is-open {
  position: fixed !important;
  top: var(--header-bottom, 96px) !important;
  inset: var(--header-bottom, 96px) 0 0 0 !important;
  z-index: 14010 !important;
  pointer-events: auto !important;
  visibility: visible !important;
}

/* —— Pass 20260805ah — mega: smooth enter, INSTANT leave (like mobile drawer) —— */
@keyframes xsample-mega-enter {
  from {
    opacity: 0;
    transform: translate3d(0, -14px, 0);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}

/* Panel shell stays put; content eases in. Leave = unmount → no exit anim. */
html body .site-mega.site-mega--open,
html body.mega-open .site-mega.site-mega--open,
html body .site-mega--open {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
  /* do NOT animate the shell — keeps flush under header */
  animation: none !important;
  transition: none !important;
}

html body .site-mega.site-mega--open .site-mega__inner,
html body.mega-open .site-mega--open .site-mega__inner,
html body .site-mega--open .site-mega__inner {
  opacity: 0 !important;
  transform: translate3d(0, -14px, 0) !important;
  transition: none !important;
  animation: none !important;
  will-change: opacity, transform;
  transform-origin: top center !important;
}

/* Enter: same ease as mobile drawer slide-in */
html body .site-mega.site-mega--open.is-in .site-mega__inner,
html body.mega-open .site-mega.site-mega--open.is-in .site-mega__inner {
  opacity: 1 !important;
  transform: translate3d(0, 0, 0) !important;
  transition:
    opacity 0.4s cubic-bezier(0.25, 1, 0.5, 1),
    transform 0.4s cubic-bezier(0.25, 1, 0.5, 1) !important;
  animation: none !important;
}

/* Backdrop: fade in with panel; leave instantly */
html body .site-mega__backdrop.is-open,
html body.mega-open .site-mega__backdrop.is-open {
  opacity: 1 !important;
  visibility: visible !important;
  transition: opacity 0.35s cubic-bezier(0.25, 1, 0.5, 1) !important;
  animation: none !important;
}
html body .site-mega__backdrop.is-closed,
html body .site-mega__backdrop:not(.is-open) {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transition: none !important;
  animation: none !important;
}

/* —— Pass 20260805al — mega: fade ease-in only (NO drop); leave instant —— */
html body .site-mega.site-mega--open .site-mega__inner,
html body.mega-open .site-mega--open .site-mega__inner,
html body .site-mega--open .site-mega__inner {
  opacity: 0 !important;
  transform: none !important;
  translate: none !important;
  transition: none !important;
  animation: none !important;
  will-change: opacity;
}

html body .site-mega.site-mega--open.is-in .site-mega__inner,
html body.mega-open .site-mega.site-mega--open.is-in .site-mega__inner {
  opacity: 1 !important;
  transform: none !important;
  translate: none !important;
  transition: opacity 0.4s cubic-bezier(0.25, 1, 0.5, 1) !important;
  animation: none !important;
}

html body .site-mega__backdrop.is-open,
html body.mega-open .site-mega__backdrop.is-open {
  opacity: 1 !important;
  transition: opacity 0.35s cubic-bezier(0.25, 1, 0.5, 1) !important;
  animation: none !important;
}
html body .site-mega__backdrop.is-closed,
html body .site-mega__backdrop:not(.is-open) {
  opacity: 0 !important;
  transition: none !important;
  animation: none !important;
}

/* —— Pass 20260805am — mega: no fade / no motion — appear & leave instantly —— */
html body .site-mega.site-mega--open,
html body.mega-open .site-mega.site-mega--open,
html body .site-mega--open,
html body .site-mega.site-mega--open .site-mega__inner,
html body.mega-open .site-mega--open .site-mega__inner,
html body .site-mega--open .site-mega__inner,
html body .site-mega.site-mega--open.is-in .site-mega__inner,
html body.mega-open .site-mega.site-mega--open.is-in .site-mega__inner {
  opacity: 1 !important;
  transform: none !important;
  translate: none !important;
  transition: none !important;
  animation: none !important;
  will-change: auto !important;
}

html body .site-mega__backdrop.is-open,
html body.mega-open .site-mega__backdrop.is-open,
html body .site-mega__backdrop.is-closed,
html body .site-mega__backdrop:not(.is-open) {
  transition: none !important;
  animation: none !important;
}
html body .site-mega__backdrop.is-open,
html body.mega-open .site-mega__backdrop.is-open {
  opacity: 1 !important;
}
html body .site-mega__backdrop.is-closed,
html body .site-mega__backdrop:not(.is-open) {
  opacity: 0 !important;
}

/* —— Pass 20260805an — search underline/line moves UP (tighter under logo) —— */
html body .site-search__top {
  height: 48px !important;
  min-height: 48px !important;
  max-height: 48px !important;
  margin: 0 !important;
  margin-bottom: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
html body .site-search__field {
  margin-top: 0 !important;
  margin-bottom: 1.25rem !important;
  padding-top: 0 !important;
  padding-bottom: 0.45rem !important;
}
html body .site-search__input {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  line-height: 1.35 !important;
  min-height: 0 !important;
  height: auto !important;
}
@media (min-width: 768px) {
  html body .site-search__top {
    height: 52px !important;
    min-height: 52px !important;
    max-height: 52px !important;
  }
}

/* —— Pass 20260805ao — empty-state divider closer; product results full width —— */

/* When empty message shows: pull divider/content up under the search field */
html body .site-search:has(.site-search__status) .site-search__field {
  margin-bottom: 0.55rem !important;
  padding-bottom: 0.4rem !important;
}
html body .site-search__status,
html body .site-search__status--aside {
  margin-top: 0 !important;
  margin-bottom: 1rem !important;
  max-width: none !important;
  width: 100% !important;
  padding-right: 0 !important;
}
html body .site-search__status .site-search__empty,
html body .site-search__status .site-search__help {
  margin-top: 0 !important;
}
html body .site-search__status .site-search__help {
  margin-bottom: 0 !important;
}

/* Also tighten gap above results hint under the field line */
html body .site-search:has(.site-search__hint) .site-search__field,
html body .site-search:has(.site-search__results) .site-search__field {
  margin-bottom: 0.75rem !important;
}
html body .site-search__hint {
  margin-top: 0 !important;
  margin-bottom: 1rem !important;
}

/* Product results: span full panel width (not a narrow left column) */
html body .site-search__results {
  max-width: none !important;
  width: 100% !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 1rem 2px !important;
  margin-bottom: 2rem !important;
  box-sizing: border-box !important;
}
@media (min-width: 640px) {
  html body .site-search__results {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}
@media (min-width: 900px) {
  html body .site-search__results {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
}
@media (min-width: 1200px) {
  html body .site-search__results {
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  }
}

/* Most-searched row also uses full width */
html body .site-search__most,
html body .site-search__most-grid {
  max-width: none !important;
  width: 100% !important;
}

/* —— Pass 20260805ap — popup/drawer inputs: compact + consistent sitewide —— */
html body input,
html body select,
html body textarea,
html body .site-newsletter__email-input,
html body .site-newsletter__title-value,
html body .site-newsletter__title-option,
html body .site-footer__email-input,
html body #newsletter-sidebar-email,
html body #footer-newsletter-email,
html body #mobile-footer-newsletter-email {
  font-size: 12px !important;
  line-height: 1.35 !important;
  letter-spacing: -0.20px !important;
}

html body .site-newsletter__email-label:not(.is-active),
html body .site-footer__email-label:not(.is-active),
html body label[for="newsletter-sidebar-email"] {
  font-size: 12px !important;
  line-height: 1.35 !important;
  letter-spacing: -0.20px !important;
}

@media (min-width: 768px) {
  html body input,
  html body select,
  html body textarea,
  html body .site-newsletter__email-input,
  html body .site-newsletter__title-value,
  html body .site-newsletter__title-option,
  html body .site-footer__email-input,
  html body #newsletter-sidebar-email,
  html body #footer-newsletter-email,
  html body #mobile-footer-newsletter-email,
  html body .site-newsletter__email-label:not(.is-active),
  html body .site-footer__email-label:not(.is-active),
  html body label[for="newsletter-sidebar-email"] {
    font-size: 13px !important;
  }
}

/* Newsletter popup fields — less tall */
html body .site-newsletter__email {
  padding: 0.7rem 0 0.4rem !important;
  min-height: 2.15rem !important;
  margin-bottom: 1.25rem !important;
}
html body .site-newsletter__email-input {
  height: 1.15rem !important;
  padding: 0 !important;
  margin: 0 !important;
}
html body .site-newsletter__title {
  margin-bottom: 1.25rem !important;
}
html body .site-newsletter__title-trigger {
  padding: 0.2rem 0 0.4rem !important;
}
html body .site-newsletter__title-option {
  padding: 0.5rem 0.75rem !important;
}
html body .site-newsletter__submit,
html body .site-newsletter__actions .site-newsletter__submit,
html body .site-newsletter button[type="submit"] {
  height: 2.75rem !important;
  min-height: 2.75rem !important;
  font-size: 12px !important;
}

/* Search popup input — size set in pass ce (do not clamp here) */
html body .site-search__input {
  height: auto !important;
  min-height: 0 !important;
}

/* Static newsletter shell (pre-hydrate) */
html body .site-newsletter select,
html body aside.site-newsletter select {
  font-size: 12px !important;
  padding-top: 0.15rem !important;
  padding-bottom: 0.15rem !important;
}
@media (min-width: 768px) {
  html body .site-newsletter select,
  html body aside.site-newsletter select {
    font-size: 13px !important;
  }
}
html body .site-newsletter .relative.border-b {
  padding-top: 0.7rem !important;
  padding-bottom: 0.35rem !important;
  margin-bottom: 1.25rem !important;
}

/* —— Pass 20260805aq — ALL inputs identical minimal size (kill leftover 14px) —— */
html body input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]):not([type=hidden]):not([type=button]):not([type=submit]):not([type=reset]):not(.site-search__input),
html body select,
html body textarea,
html body .site-newsletter__email-input,
html body .site-footer__email-input,
html body #newsletter-sidebar-email,
html body #footer-newsletter-email,
html body #mobile-footer-newsletter-email {
  /* font-size overridden by ce */
  line-height: 1.35 !important;
  letter-spacing: -0.20px !important;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif !important;
  -webkit-text-size-adjust: 100% !important;
  text-size-adjust: 100% !important;
}
html body input:not(.site-search__input)::placeholder,
html body textarea::placeholder {
  /* font-size overridden by ce */
  line-height: 1.35 !important;
  letter-spacing: -0.20px !important;
  opacity: 1 !important;
}
html body .site-newsletter__email-label,
html body .site-footer__email-label,
html body .site-newsletter__title-value,
html body .site-newsletter__title-option {
  font-size: 12px !important;
  line-height: 1.35 !important;
  letter-spacing: -0.20px !important;
}
html body .site-newsletter__email-label.is-active,
html body .site-footer__email-label.is-active {
  font-size: 10px !important;
}
html body .site-search__field {
  padding-bottom: 0.4rem !important;
}
html body .site-search__input {
  /* size owned by pass cf — do not clamp */
  padding-top: 0.45rem !important;
  padding-bottom: 0.45rem !important;
  min-height: 40px !important;
  height: auto !important;
  max-height: none !important;
}
html body .site-newsletter__email {
  padding: 0.55rem 0 0.35rem !important;
  min-height: 1.9rem !important;
}
html body .site-newsletter__email-input {
  height: 1.15rem !important;
}
html body .site-footer__email-field {
  min-height: 2.25rem !important;
  padding: 0.85rem 0 0.35rem !important;
}
html body .site-footer__email-input {
  height: 1.15rem !important;
}
/* No desktop bump for form controls — keep minimal everywhere */
@media (min-width: 768px) {
  html body input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]):not([type=hidden]):not([type=button]):not([type=submit]):not([type=reset]):not([type=search]):not(.site-search__input),
  html body select,
  html body textarea,
  html body .site-newsletter__email-input,
  html body .site-footer__email-input,
  html body #newsletter-sidebar-email,
  html body #footer-newsletter-email,
  html body #mobile-footer-newsletter-email,
  html body .site-newsletter__email-label:not(.is-active),
  html body .site-footer__email-label:not(.is-active),
  html body .site-newsletter__title-value,
  html body .site-newsletter__title-option,
  html body input:not([type=search]):not(.site-search__input)::placeholder {
    font-size: 12px !important;
  }
}

/* —— Pass 20260805ar — empty: divider reaches empty text; product width restored —— */

/* Product results: controlled width (not full-bleed) */
html body .site-search__results {
  max-width: 720px !important;
  width: 100% !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 1rem 2px !important;
  box-sizing: border-box !important;
}
@media (min-width: 768px) {
  html body .site-search__results {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    max-width: 780px !important;
  }
}

html body .site-search__most-grid {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  padding-left: 0 !important;
  box-sizing: border-box !important;
}

/* Empty: status in left col; divider runs from empty text top down through most */
@media (min-width: 1024px) {
  html body .site-search__layout.site-search__layout--empty {
    display: grid !important;
    grid-template-columns: minmax(200px, 248px) 1px minmax(0, 1fr) !important;
    grid-template-rows: auto auto !important;
    column-gap: 0 !important;
    row-gap: 1rem !important;
    align-items: stretch !important;
  }
  /* Empty copy stays in left column so the divider can rise beside it */
  html body .site-search__layout--empty > .site-search__status {
    grid-column: 1 !important;
    grid-row: 1 !important;
    margin: 0 !important;
    max-width: none !important;
    width: 100% !important;
    padding: 0 calc(2rem - 3px) 0 0 !important;
    box-sizing: border-box !important;
  }
  html body .site-search__layout--empty > .site-search__aside {
    grid-column: 1 !important;
    grid-row: 2 !important;
    padding-right: calc(2rem - 3px) !important;
  }
  html body .site-search__layout--empty > .site-search__most {
    grid-column: 3 !important;
    grid-row: 2 !important;
    border-left: none !important;
    padding-left: calc(2rem - 3px) !important;
    margin: 0 !important;
  }
  /* Full-height divider: from empty-text row through products */
  html body .site-search__layout--empty::after {
    content: "" !important;
    grid-column: 2 !important;
    grid-row: 1 / -1 !important;
    width: 1px !important;
    background: #d6d6d6 !important;
    justify-self: center !important;
    align-self: stretch !important;
    margin: 0 !important;
  }
}

/* —— Pass 20260805as — search results full width again; bigger loader dots —— */
html body .site-search__results {
  max-width: none !important;
  width: 100% !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 1rem 2px !important;
  box-sizing: border-box !important;
}
@media (min-width: 640px) {
  html body .site-search__results {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}
@media (min-width: 900px) {
  html body .site-search__results {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
}
@media (min-width: 1200px) {
  html body .site-search__results {
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  }
}

html body .site-search__loader-dots {
  gap: 0.9rem !important;
}
html body .site-search__dot {
  width: 18px !important;
  height: 18px !important;
  border-radius: 50% !important;
  background: #000 !important;
  animation: site-search-bounce-lg 0.7s ease-in-out infinite !important;
}
html body .site-search__dot:nth-child(2) {
  animation-delay: 0.12s !important;
}
html body .site-search__dot:nth-child(3) {
  animation-delay: 0.24s !important;
}
@keyframes site-search-bounce-lg {
  0%,
  80%,
  100% {
    transform: translateY(0);
    opacity: 0.35;
  }
  40% {
    transform: translateY(-14px);
    opacity: 1;
  }
}

/* —— Pass 20260805at — mobile responsive hardening (desktop layout unchanged) —— */

/* Search shell: no horizontal bleed; respect notches */
html body .site-search,
html body .site-search.site-search--open {
  overflow-x: hidden !important;
  max-width: 100vw !important;
}
html body .site-search__panel {
  max-width: 100% !important;
  box-sizing: border-box !important;
  min-height: 0 !important;
}
html body .site-search__body {
  overflow-x: hidden !important;
  -webkit-overflow-scrolling: touch !important;
  overscroll-behavior: contain !important;
}
html body .site-search__layout,
html body .site-search__results,
html body .site-search__most-grid {
  min-width: 0 !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}
html body .site-search__result,
html body .site-search__most-card {
  min-width: 0 !important;
}
html body .site-search__result-meta,
html body .site-search__most-label {
  min-width: 0 !important;
  max-width: 100% !important;
}
html body .site-search__result-title {
  min-width: 0 !important;
  flex: 1 1 auto !important;
  overflow-wrap: anywhere !important;
  word-break: break-word !important;
}
html body .site-search__result-swatch {
  flex-shrink: 0 !important;
}

/* Loader dots stay big; don't clip bounce */
html body .site-search__loader {
  overflow: visible !important;
}
html body .site-search__loader-dots {
  overflow: visible !important;
  padding: 16px 0 !important;
}

@media (max-width: 1023px) {
  /* Never apply desktop empty 3-col / pseudo divider below lg */
  html body .site-search__layout.site-search__layout--empty {
    display: grid !important;
    grid-template-columns: 1fr !important;
    grid-template-rows: auto !important;
    gap: 1.5rem !important;
    row-gap: 1.5rem !important;
  }
  html body .site-search__layout--empty > .site-search__status,
  html body .site-search__layout--empty > .site-search__aside,
  html body .site-search__layout--empty > .site-search__most {
    grid-column: auto !important;
    grid-row: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    border-left: none !important;
    width: 100% !important;
    max-width: 100% !important;
  }
  html body .site-search__layout--empty::after {
    content: none !important;
    display: none !important;
  }
  html body .site-search__most {
    border-left: none !important;
    padding-left: 0 !important;
  }
}

@media (max-width: 767px) {
  html body .site-search,
  html body .site-search.site-search--open {
    height: 100dvh !important;
    max-height: 100dvh !important;
    padding-top: env(safe-area-inset-top, 0px) !important;
    padding-bottom: env(safe-area-inset-bottom, 0px) !important;
  }
  html body .site-search__panel {
    padding-left: 16px !important;
    padding-right: 16px !important;
    height: 100% !important;
    max-height: 100% !important;
  }
  html body .site-search__top {
    height: 48px !important;
    min-height: 48px !important;
    max-height: 48px !important;
  }
  /* Prevent iOS focus zoom without changing desktop type */
  html body .site-search__input {
    /* font-size overridden by ce */
    line-height: 1.35 !important;
    padding-right: 5rem !important;
  }
  html body .site-search__field {
    margin-bottom: 1rem !important;
    padding-bottom: 0.5rem !important;
  }
  html body .site-search__field-actions {
    right: 0 !important;
    gap: 0.55rem !important;
  }
  /* Larger tap targets, same visual icons */
  html body .site-search__close,
  html body .site-search__clear,
  html body .site-search__submit-icon {
    min-width: 44px !important;
    min-height: 44px !important;
  }
  html body .site-search__status {
    margin: 0 0 1rem !important;
    width: 100% !important;
    max-width: 100% !important;
  }
  html body .site-search__empty,
  html body .site-search__help {
    font-size: 12px !important;
    line-height: 1.35 !important;
    overflow-wrap: anywhere !important;
  }
  html body .site-search__hint {
    margin-bottom: 0.85rem !important;
  }
  html body .site-search__results {
    max-width: none !important;
    width: 100% !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 0.85rem 2px !important;
  }
  html body .site-search__most-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 0.75rem 2px !important;
  }
  html body .site-search__layout {
    gap: 1.5rem !important;
    padding-bottom: calc(1.5rem + env(safe-area-inset-bottom, 0px)) !important;
  }
  /* Dots: keep large but slightly tighter bounce on small screens */
  html body .site-search__dot {
    width: 16px !important;
    height: 16px !important;
  }
  html body .site-search__loader-dots {
    gap: 0.75rem !important;
  }

  /* Essentials CTA: keep centered, readable, no overflow */
  html body .site-essentials-hub__campaign-cta {
    padding-left: 16px !important;
    padding-right: 16px !important;
    box-sizing: border-box !important;
  }
  html body .site-essentials-hub__campaign-cta .cta-on-image,
  html body .site-essentials-hub__campaign-cta a.cta-on-image {
    max-width: 100% !important;
    white-space: normal !important;
    text-align: center !important;
  }

  /* Kill accidental page-wide horizontal scroll */
  html body,
  html body #root,
  html body #app,
  html body main {
    overflow-x: clip !important;
    max-width: 100vw !important;
  }
}

/* Tablet: 3-col results max, still full width of panel */
@media (min-width: 768px) and (max-width: 899px) {
  html body .site-search__results {
    max-width: none !important;
    width: 100% !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

/* —— Pass 20260805av — popup inputs: short height + border-box (no overflow) —— */
html body .site-search__field {
  padding-top: 0 !important;
  padding-bottom: 0.28rem !important;
  margin-bottom: 1rem !important;
}
/* search input size handled in final pass — do not clamp to 18px/12px here */
html body .site-newsletter__email,
html body .site-newsletter .relative.border-b,
html body .site-newsletter__title-trigger {
  padding-top: 0.35rem !important;
  padding-bottom: 0.28rem !important;
  min-height: 1.55rem !important;
}
html body .site-newsletter__email {
  margin-bottom: 1rem !important;
}
html body .site-newsletter__email-input,
html body .site-footer__email-input,
html body #newsletter-sidebar-email,
html body #footer-newsletter-email,
html body #mobile-footer-newsletter-email {
  box-sizing: border-box !important;
  height: 16px !important;
  min-height: 16px !important;
  max-height: 16px !important;
  line-height: 1.35 !important;
  padding: 0 !important;
  font-size: 12px !important;
}
html body .site-newsletter__email-label:not(.is-active),
html body .site-footer__email-label:not(.is-active),
html body .site-newsletter__title-value {
  font-size: 12px !important;
  line-height: 1.35 !important;
}
html body .site-footer__email-field {
  min-height: 1.85rem !important;
  padding: 0.55rem 0 0.28rem !important;
}
html body .site-newsletter__title-trigger {
  min-height: 1.45rem !important;
}

/* Kill earlier desktop 13px bumps on form controls */
@media (min-width: 768px) {
  html body .site-newsletter__email-input,
  html body .site-footer__email-input,
  html body #newsletter-sidebar-email,
  html body #footer-newsletter-email,
  html body #mobile-footer-newsletter-email {
    font-size: 12px !important;
  }
}

@media (max-width: 767px) {
  html body .site-search__field {
    padding-bottom: 0.32rem !important;
    margin-bottom: 0.85rem !important;
  }
  html body input.site-search__input {
    box-sizing: border-box !important;
    /* size owned by pass cf */
    height: auto !important;
    min-height: 48px !important;
    max-height: none !important;
    line-height: 1.35 !important;
  }
  html body .site-search__input::placeholder {
    line-height: 1.35 !important;
  }
  html body .site-newsletter__email-input,
  html body #newsletter-sidebar-email {
    box-sizing: border-box !important;
    font-size: 16px !important;
    height: 22px !important;
    min-height: 22px !important;
    max-height: 22px !important;
    line-height: 1.35 !important;
  }
}

/* —— Pass 20260805aw — search placeholder 15px —— */
html body .site-search__field input.site-search__input::placeholder {
  /* font-size overridden by ce */
  line-height: 1.35 !important;
}
@media (max-width: 767px) {
  /* Keep placeholder 15px on mobile too (input stays 16px to avoid iOS zoom) */
  html body .site-search__field input.site-search__input::placeholder {
    /* font-size overridden by ce */
    line-height: 1.35 !important;
  }
}

/* —— Pass 20260805ax — find-store weight; PLP header gutters; New badge; arrow pagination —— */

/* Find store: same weight rest + hover — regular 400, underline handles hover */
html body .site-footer__find-store,
html body a.site-footer__find-store,
html body .site-footer__find-store:hover,
html body .site-footer__find-store:focus-visible,
html body a.site-footer__find-store:hover,
html body a.site-footer__find-store:focus-visible,
html body .site-footer .site-footer__find-store.link-line:hover,
html body .site-footer a.site-footer__find-store.link-line:hover {
  font-weight: 400 !important;
  font-synthesis: none !important;
  -webkit-font-smoothing: antialiased !important;
}

/* PLP padding = header (16 / 32). Gaps independently −3px */
html body main.site-collections-products {
  padding-left: 16px !important;
  padding-right: 16px !important;
  box-sizing: border-box !important;
}
@media (min-width: 768px) {
  html body main.site-collections-products {
    padding-left: 32px !important;
    padding-right: 32px !important;
  }
}
html body main.site-collections-products .site-collections-products__bar {
  padding-left: 16px !important;
  padding-right: 16px !important;
  margin-left: -16px !important;
  margin-right: -16px !important;
}
@media (min-width: 768px) {
  html body main.site-collections-products .site-collections-products__bar {
    padding-left: 32px !important;
    padding-right: 32px !important;
    margin-left: -32px !important;
    margin-right: -32px !important;
  }
}
html body main.site-collections-products .site-collections-products__grid {
  column-gap: 9px !important;
  row-gap: 25px !important;
  gap: 25px 9px !important;
}
@media (min-width: 768px) {
  html body main.site-collections-products .site-collections-products__grid {
    column-gap: 13px !important;
    row-gap: 37px !important;
    gap: 37px 13px !important;
  }
}

/* "New" badge: grey + 1.25px bigger than 9.5 → 10.75 */
html body main.site-collections-products .site-plp-card__badge,
html body .site-plp-card__badge {
  color: #888 !important;
  font-size: 10.75px !important;
  font-weight: 400 !important;
  letter-spacing: 0.04em !important;
  line-height: 1.35 !important;
}

/* Product image pagination arrows: shifted out, +2px, thicker stroke */
html body main.site-collections-products .site-plp-card__arrows,
html body .site-plp-card__arrows {
  padding-left: 6px !important;
  padding-right: 6px !important;
}
html body main.site-collections-products .site-plp-card__arrow-icon,
html body .site-plp-card__arrow-icon {
  width: 30px !important;
  height: 30px !important;
  stroke-width: 1.55 !important;
}

/* —— Pass 20260805ay — Clear/View sentence case; find-store 500 lock; darker New; arrows out/black/thick —— */

/* Filter footer: Clear / View — no all caps */
html body .site-drawer--filter .site-filter__footer > button,
html body .site-filter__footer > button {
  text-transform: none !important;
  letter-spacing: 0.04em !important;
}

/* Find store: regular 400 always — underline animates, text never bolds */
html body .site-footer a.site-footer__find-store.hover-underline-erase,
html body .site-footer .site-footer__find-store.hover-underline-erase,
html body a.site-footer__find-store.hover-underline-erase,
html body .site-footer a.site-footer__find-store.hover-underline-erase:hover,
html body .site-footer .site-footer__find-store.hover-underline-erase:hover,
html body a.site-footer__find-store.hover-underline-erase:hover,
html body .site-footer a.site-footer__find-store.hover-underline-erase:focus-visible,
html body .site-footer .site-footer__find-store.hover-underline-erase:focus-visible,
html body a.site-footer__find-store.hover-underline-erase:focus-visible,
html body .site-footer a.site-footer__find-store.hover-underline-erase:active,
html body .site-footer .site-footer__find-store.hover-underline-erase:active {
  font-weight: 400 !important;
  font-synthesis: none !important;
  -webkit-text-stroke: 0 !important;
  text-shadow: none !important;
  -webkit-font-smoothing: antialiased !important;
  -moz-osx-font-smoothing: grayscale !important;
}

/* "New" badge: darker grey (not light #888, not pure black) */
html body main.site-collections-products .site-plp-card__badge,
html body .site-plp-card__badge {
  color: #333 !important;
  font-size: 10.75px !important;
  font-weight: 400 !important;
}

/* Product arrows: further out, solid black, thicker stroke */
html body main.site-collections-products .site-plp-card__arrows,
html body .site-plp-card__arrows {
  padding-left: 2px !important;
  padding-right: 2px !important;
  left: 0 !important;
  right: 0 !important;
}
html body main.site-collections-products .site-plp-card__arrow,
html body .site-plp-card__arrow {
  color: #000 !important;
  opacity: 1 !important;
}
html body main.site-collections-products .site-plp-card__arrow-icon,
html body .site-plp-card__arrow-icon {
  width: 30px !important;
  height: 30px !important;
  color: #000 !important;
  stroke: #000 !important;
  stroke-width: 2 !important;
}

/* —— Pass 20260805az — find-in-store weight; New darker; legal pages —— */

/* Find in store (size drawer): same weight/color rest + hover */
html body .site-find-in-store-row,
html body .site-find-in-store-row:hover,
html body .site-find-in-store-row:focus-visible,
html body .site-find-in-store,
html body .site-find-in-store-row .site-find-in-store {
  color: #000 !important;
  font-weight: 500 !important;
  font-synthesis: none !important;
  -webkit-text-stroke: 0 !important;
  text-shadow: none !important;
  transition: none !important;
}

/* New badge: darker still (#333) */
html body main.site-collections-products .site-plp-card__badge,
html body .site-plp-card__badge {
  color: #333 !important;
}

/* Legal pages — cookie-settings-like two column layout */
html body main.site-legal {
  width: 100% !important;
  background: #fff !important;
  color: #000 !important;
  padding: 2.5rem 16px 4rem !important;
  box-sizing: border-box !important;
  min-height: 60vh !important;
}
@media (min-width: 768px) {
  html body main.site-legal {
    padding: 3.5rem 32px 5rem !important;
  }
}
html body .site-legal__inner {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 2.5rem !important;
  max-width: 1100px !important;
  margin: 0 auto !important;
  width: 100% !important;
}
@media (min-width: 900px) {
  html body .site-legal__inner {
    grid-template-columns: minmax(220px, 300px) minmax(0, 1fr) !important;
    gap: 4rem !important;
    align-items: start !important;
  }
}
html body .site-legal__nav-title {
  font-size: 12px !important;
  font-weight: 500 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  margin: 0 0 1.25rem !important;
  color: #000 !important;
}
html body .site-legal__nav-list {
  display: flex !important;
  flex-direction: column !important;
  gap: 0.85rem !important;
  align-items: flex-start !important;
}
html body .site-legal__nav-link {
  display: inline-block !important;
  width: fit-content !important;
  max-width: 100% !important;
  font-size: 11px !important;
  font-weight: 400 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  color: #000 !important;
  padding-bottom: 2px !important;
  border-bottom: 1px solid transparent !important;
  line-height: 1.35 !important;
}
html body .site-legal__nav-link:hover {
  opacity: 0.65 !important;
}
html body .site-legal__nav-link.is-active {
  border-bottom-color: #000 !important;
  opacity: 1 !important;
  font-weight: 400 !important;
}
html body .site-legal__title {
  font-size: 13px !important;
  font-weight: 500 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  margin: 0 0 1.35rem !important;
  line-height: 1.35 !important;
  color: #000 !important;
  max-width: 36rem !important;
}
html body .site-legal__p {
  font-size: 13px !important;
  font-weight: 400 !important;
  line-height: 1.35 !important;
  color: #000 !important;
  margin: 0 0 1.1rem !important;
  max-width: 36rem !important;
}
html body .site-legal__cookie-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0.75rem 0 1.5rem !important;
  padding: 0.85rem 1.5rem !important;
  min-width: 10.5rem !important;
  background: #000 !important;
  color: #fff !important;
  border: 0 !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  letter-spacing: 0.02em !important;
  text-transform: none !important;
  cursor: pointer !important;
}
html body .site-legal__cookie-btn:hover {
  opacity: 0.85 !important;
}
html body .site-legal__more {
  font-size: 12px !important;
  font-weight: 400 !important;
  color: #000 !important;
  margin: 1.25rem 0 0 !important;
  text-decoration: none !important;
}

/* —— Pass 20260805ba — New +1px; Find store hard lock; legal = BV layout/type —— */

/* New badge: 10.75 + 1 → 11.75, dark grey */
html body main.site-collections-products .site-plp-card__badge,
html body .site-plp-card__badge {
  color: #333 !important;
  font-size: 11.75px !important;
  font-weight: 400 !important;
  letter-spacing: 0.04em !important;
  line-height: 1.35 !important;
}

/* Find store — regular 400 always; never thicken text on hover/anim */
html body .site-footer a.site-footer__find-store,
html body .site-footer a.site-footer__find-store.hover-underline-erase,
html body .site-footer .site-footer__find-store,
html body .site-footer .site-footer__find-store.hover-underline-erase,
html body a.site-footer__find-store,
html body a.site-footer__find-store.hover-underline-erase,
html body .site-footer a.site-footer__find-store:hover,
html body .site-footer a.site-footer__find-store:focus,
html body .site-footer a.site-footer__find-store:focus-visible,
html body .site-footer a.site-footer__find-store:active,
html body .site-footer a.site-footer__find-store.hover-underline-erase:hover,
html body .site-footer a.site-footer__find-store.hover-underline-erase:focus-visible,
html body .site-footer a.site-footer__find-store[data-fw="500"],
html body .site-footer .site-footer__find-store-text,
html body .site-footer a.site-footer__find-store .site-footer__find-store-text,
html body .site-footer a.site-footer__find-store:hover .site-footer__find-store-text,
html body .site-footer a.site-footer__find-store:focus-visible .site-footer__find-store-text,
html body .site-footer a.site-footer__find-store:active .site-footer__find-store-text {
  font-weight: 400 !important;
  font-synthesis: none !important;
  -webkit-text-stroke: 0 !important;
  text-shadow: none !important;
  -webkit-font-smoothing: antialiased !important;
  -moz-osx-font-smoothing: grayscale !important;
  transition: none !important;
}
html body .site-footer a.site-footer__find-store,
html body .site-footer .site-footer__find-store {
  isolation: isolate !important;
  transform: none !important;
}
html body .site-footer .site-footer__find-store-text {
  display: inline !important;
  position: relative !important;
  z-index: 1 !important;
  font-weight: 400 !important;
}

/* Legal pages — Bottega-like: full-bleed white, left nav + right copy, ~14/22 type */
html body main.site-legal {
  width: 100% !important;
  max-width: none !important;
  background: #fff !important;
  color: #000 !important;
  padding: 48px 16px 80px !important;
  box-sizing: border-box !important;
  min-height: 70vh !important;
  font-family: inherit !important;
}
@media (min-width: 768px) {
  html body main.site-legal {
    padding: 72px 32px 120px !important;
  }
}
@media (min-width: 1280px) {
  html body main.site-legal {
    padding-left: clamp(32px, 4vw, 64px) !important;
    padding-right: clamp(32px, 4vw, 64px) !important;
  }
}
html body .site-legal__inner {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 40px !important;
  max-width: none !important;
  width: 100% !important;
  margin: 0 !important;
  align-items: start !important;
}
@media (min-width: 900px) {
  html body .site-legal__inner {
    grid-template-columns: 280px minmax(0, 1fr) !important;
    column-gap: 96px !important;
    row-gap: 0 !important;
  }
}
@media (min-width: 1200px) {
  html body .site-legal__inner {
    grid-template-columns: 300px minmax(0, 720px) !important;
    column-gap: 120px !important;
    justify-content: start !important;
  }
}
html body .site-legal__nav {
  position: relative !important;
}
@media (min-width: 900px) {
  html body .site-legal__nav {
    position: sticky !important;
    top: 120px !important;
    align-self: start !important;
  }
}
html body .site-legal__nav-title {
  font-size: 14px !important;
  font-weight: 500 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  margin: 0 0 28px !important;
  line-height: 1.35 !important;
  color: #000 !important;
}
html body .site-legal__nav-list {
  display: flex !important;
  flex-direction: column !important;
  gap: 16px !important;
  align-items: flex-start !important;
  margin: 0 !important;
  padding: 0 !important;
}
html body .site-legal__nav-link {
  display: inline-block !important;
  width: fit-content !important;
  max-width: 100% !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  letter-spacing: 0.02em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  color: #000 !important;
  padding: 0 0 2px !important;
  border-bottom: 1px solid transparent !important;
  line-height: 1.35 !important;
  background: none !important;
  box-shadow: none !important;
  transition: opacity 0.15s ease !important;
}
html body .site-legal__nav-link:hover {
  opacity: 0.55 !important;
  font-weight: 400 !important;
}
html body .site-legal__nav-link.is-active,
html body .site-legal__nav-link.is-active:hover {
  border-bottom-color: #000 !important;
  opacity: 1 !important;
  font-weight: 400 !important;
}
html body .site-legal__content {
  max-width: 720px !important;
  width: 100% !important;
  min-width: 0 !important;
}
html body .site-legal__title {
  font-size: 14px !important;
  font-weight: 400 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  margin: 0 0 24px !important;
  line-height: 1.35 !important;
  color: #000 !important;
  max-width: none !important;
}
html body .site-legal__p {
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 1.35 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  color: #000 !important;
  margin: 0 0 18px !important;
  max-width: none !important;
}
html body .site-legal__cookie-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 8px 0 28px !important;
  padding: 14px 28px !important;
  min-width: 168px !important;
  height: auto !important;
  background: #000 !important;
  color: #fff !important;
  border: 0 !important;
  border-radius: 0 !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  line-height: 1.35 !important;
  text-transform: none !important;
  cursor: pointer !important;
}
html body .site-legal__cookie-btn:hover {
  opacity: 0.82 !important;
}
html body .site-legal__more {
  display: inline-block !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 1.35 !important;
  color: #000 !important;
  margin: 8px 0 0 !important;
  padding-bottom: 1px !important;
  text-decoration: none !important;
  border-bottom: 1px solid #000 !important;
  width: fit-content !important;
  background: none !important;
}
html body .site-legal__more:hover {
  opacity: 0.55 !important;
}

@media (max-width: 899px) {
  html body .site-legal__nav-list {
    gap: 14px !important;
  }
  html body .site-legal__nav-title {
    margin-bottom: 20px !important;
  }
}

/* —— Pass 20260805bb — legal: thicker type, BV spacing, animated underline (no grey) —— */

@keyframes xsample-legal-ul-draw {
  from { transform: scaleX(0); transform-origin: left center; }
  to   { transform: scaleX(1); transform-origin: left center; }
}
@keyframes xsample-legal-ul-erase {
  from { transform: scaleX(1); transform-origin: right center; }
  to   { transform: scaleX(0); transform-origin: right center; }
}

html body main.site-legal {
  width: 100% !important;
  max-width: none !important;
  background: #fff !important;
  color: #000 !important;
  /* BV-like page frame: large top, site gutters */
  padding: 56px 20px 96px !important;
  box-sizing: border-box !important;
  min-height: 70vh !important;
}
@media (min-width: 768px) {
  html body main.site-legal {
    padding: 88px 40px 140px !important;
  }
}
@media (min-width: 1280px) {
  html body main.site-legal {
    padding: 96px 48px 160px !important;
  }
}

/* ~30% nav / wide gutter / content — matches reference crop */
html body .site-legal__inner {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 48px !important;
  width: 100% !important;
  max-width: 1280px !important;
  margin: 0 !important;
  align-items: start !important;
}
@media (min-width: 900px) {
  html body .site-legal__inner {
    grid-template-columns: minmax(240px, 30%) minmax(0, 1fr) !important;
    column-gap: clamp(64px, 10vw, 140px) !important;
    row-gap: 0 !important;
  }
}

html body .site-legal__nav {
  position: relative !important;
  min-width: 0 !important;
}
@media (min-width: 900px) {
  html body .site-legal__nav {
    position: sticky !important;
    top: 112px !important;
    align-self: start !important;
    padding-right: 8px !important;
  }
}

/* LEGAL PAGES — thicker than links */
html body .site-legal__nav-title {
  font-size: 13px !important;
  font-weight: 500 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  margin: 0 0 32px !important;
  line-height: 1.35 !important;
  color: #000 !important;
  -webkit-font-smoothing: antialiased !important;
}

html body .site-legal__nav-list {
  display: flex !important;
  flex-direction: column !important;
  gap: 18px !important;
  align-items: flex-start !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Nav links: thicker, no grey fade — animated black underline only */
html body .site-legal__nav-link,
html body a.site-legal__nav-link {
  position: relative !important;
  display: inline-block !important;
  width: fit-content !important;
  max-width: 100% !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  color: #000 !important;
  opacity: 1 !important;
  padding: 0 0 4px !important;
  border-bottom: 0 !important;
  line-height: 1.35 !important;
  background: none !important;
  background-image: none !important;
  box-shadow: none !important;
  transition: none !important;
  -webkit-font-smoothing: antialiased !important;
}
html body .site-legal__nav-link:hover,
html body .site-legal__nav-link:focus,
html body .site-legal__nav-link:focus-visible,
html body a.site-legal__nav-link:hover,
html body a.site-legal__nav-link:focus-visible {
  opacity: 1 !important;
  color: #000 !important;
  font-weight: 500 !important;
  text-decoration: none !important;
  background: none !important;
}

/* Line: hidden at rest (inactive); solid when active; animate on hover */
html body .site-legal__nav-link > .site-legal__nav-line,
html body .site-legal__nav-link > .xsample-ul-line.site-legal__nav-line,
html body a.site-legal__nav-link > .xsample-ul-line {
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  background: #000 !important;
  background-color: #000 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: none !important;
  transform: scaleX(0);
  transform-origin: left center;
  animation: none !important;
  transition: none !important;
}
/* Active = always underlined (reference) — no !important on transform so hover anim can run */
html body .site-legal__nav-link.is-active > .site-legal__nav-line,
html body .site-legal__nav-link.is-active > .xsample-ul-line,
html body a.site-legal__nav-link.is-active > .xsample-ul-line {
  transform: scaleX(1);
  transform-origin: left center;
  animation: none;
}
/* Active hover: same erase→draw wipe as site links */
html body .site-legal__nav-link.is-active:hover > .site-legal__nav-line,
html body .site-legal__nav-link.is-active:focus-visible > .site-legal__nav-line,
html body a.site-legal__nav-link.is-active:hover > .xsample-ul-line,
html body a.site-legal__nav-link.is-active:focus-visible > .xsample-ul-line {
  animation: xsample-ul-perfect-ltr 0.45s linear forwards !important;
  transform: scaleX(1);
}
/* Inactive hover: draw L→R (no grey fade) */
html body .site-legal__nav-link:not(.is-active):hover > .site-legal__nav-line,
html body .site-legal__nav-link:not(.is-active):focus-visible > .site-legal__nav-line,
html body a.site-legal__nav-link:not(.is-active):hover > .xsample-ul-line,
html body a.site-legal__nav-link:not(.is-active):focus-visible > .xsample-ul-line {
  animation: xsample-legal-ul-draw 0.45s linear forwards !important;
  transform: scaleX(1);
  transform-origin: left center;
}
/* After hover leaves inactive, collapse via erase */
html body .site-legal__nav-link:not(.is-active):not(:hover):not(:focus-visible) > .site-legal__nav-line,
html body a.site-legal__nav-link:not(.is-active):not(:hover):not(:focus-visible) > .xsample-ul-line {
  transform: scaleX(0);
  animation: none !important;
}

html body .site-legal__content {
  max-width: 560px !important;
  width: 100% !important;
  min-width: 0 !important;
  padding-top: 2px !important;
}
@media (min-width: 900px) {
  html body .site-legal__content {
    max-width: 580px !important;
  }
}

/* Content title — thicker uppercase */
html body .site-legal__title {
  font-size: 13px !important;
  font-weight: 500 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  margin: 0 0 22px !important;
  line-height: 1.35 !important;
  color: #000 !important;
  max-width: none !important;
  -webkit-font-smoothing: antialiased !important;
}

html body .site-legal__p {
  font-size: 13px !important;
  font-weight: 500 !important;
  line-height: 1.35 !important;
  letter-spacing: 0.01em !important;
  text-transform: none !important;
  color: #000 !important;
  margin: 0 0 18px !important;
  max-width: none !important;
  -webkit-font-smoothing: antialiased !important;
}

html body .site-legal__cookie-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 10px 0 28px !important;
  padding: 13px 26px !important;
  min-width: 158px !important;
  background: #000 !important;
  color: #fff !important;
  border: 0 !important;
  border-radius: 0 !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  letter-spacing: 0.01em !important;
  line-height: 1.35 !important;
  text-transform: none !important;
  cursor: pointer !important;
}
html body .site-legal__cookie-btn:hover {
  opacity: 1 !important;
  background: #111 !important;
}

/* Read more — black underline, no grey */
html body .site-legal__more,
html body a.site-legal__more {
  position: relative !important;
  display: inline-block !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  line-height: 1.35 !important;
  color: #000 !important;
  opacity: 1 !important;
  margin: 4px 0 0 !important;
  padding: 0 0 3px !important;
  text-decoration: none !important;
  border-bottom: 0 !important;
  background: none !important;
  width: fit-content !important;
}
html body .site-legal__more::after,
html body a.site-legal__more::after {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  height: 1px !important;
  background: #000 !important;
  transform: scaleX(1);
  transform-origin: left center;
}
html body .site-legal__more:hover,
html body a.site-legal__more:hover {
  opacity: 1 !important;
  color: #000 !important;
}
html body .site-legal__more:hover::after,
html body a.site-legal__more:hover::after {
  animation: xsample-ul-perfect-ltr 0.45s linear forwards !important;
}

@media (max-width: 899px) {
  html body .site-legal__nav-list {
    gap: 16px !important;
  }
  html body .site-legal__nav-title {
    margin-bottom: 24px !important;
  }
  html body .site-legal__content {
    max-width: none !important;
  }
}

/* —— Pass 20260805bc — Find store: NOT bold; underline only (match other erase links) —— */

/* Kill every earlier 500 lock — text stays regular like other footer links */
html body .site-footer a.site-footer__find-store,
html body .site-footer a.site-footer__find-store.hover-underline-erase,
html body .site-footer .site-footer__find-store,
html body .site-footer .site-footer__find-store.hover-underline-erase,
html body a.site-footer__find-store,
html body a.site-footer__find-store.hover-underline-erase,
html body .site-footer a.site-footer__find-store:hover,
html body .site-footer a.site-footer__find-store:focus,
html body .site-footer a.site-footer__find-store:focus-visible,
html body .site-footer a.site-footer__find-store:active,
html body .site-footer a.site-footer__find-store.hover-underline-erase:hover,
html body .site-footer a.site-footer__find-store.hover-underline-erase:focus-visible,
html body .site-footer a.site-footer__find-store[data-fw],
html body .site-footer .site-footer__find-store-text,
html body .site-footer a.site-footer__find-store .site-footer__find-store-text,
html body .site-footer a.site-footer__find-store:hover .site-footer__find-store-text,
html body .site-footer a.site-footer__find-store:focus-visible .site-footer__find-store-text,
html body .site-footer a.site-footer__find-store:active .site-footer__find-store-text {
  font-weight: 400 !important;
  font-synthesis: none !important;
  -webkit-text-stroke: 0 !important;
  text-shadow: none !important;
  transition: none !important;
}

/* Underline = identical to other .hover-underline-erase / .xsample-ul-line */
html body .site-footer a.site-footer__find-store,
html body .site-footer .site-footer__find-store,
html body a.site-footer__find-store {
  position: relative !important;
  display: inline-block !important;
  width: fit-content !important;
  background: none !important;
  background-image: none !important;
  text-decoration: none !important;
  isolation: auto !important;
  transform: none !important;
}
html body .site-footer a.site-footer__find-store > .xsample-ul-line,
html body .site-footer .site-footer__find-store > .xsample-ul-line,
html body a.site-footer__find-store > .xsample-ul-line {
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  background: #000 !important;
  background-color: #000 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: none !important;
  transform: scaleX(1);
  transform-origin: left center;
  animation: none;
  transition: none !important;
}
html body .site-footer a.site-footer__find-store:hover > .xsample-ul-line,
html body .site-footer a.site-footer__find-store:focus-visible > .xsample-ul-line,
html body .site-footer .site-footer__find-store:hover > .xsample-ul-line,
html body .site-footer .site-footer__find-store:focus-visible > .xsample-ul-line,
html body a.site-footer__find-store:hover > .xsample-ul-line,
html body a.site-footer__find-store:focus-visible > .xsample-ul-line {
  animation: xsample-ul-perfect-ltr 0.45s linear forwards !important;
  height: 1px !important;
  background: #000 !important;
  opacity: 1 !important;
}

/* —— Pass 20260805bd — Find store text NEVER bold; only .xsample-ul-line animates —— */
html body .site-footer a.site-footer__find-store,
html body .site-footer a.site-footer__find-store *,
html body .site-footer a.site-footer__find-store:hover,
html body .site-footer a.site-footer__find-store:hover *,
html body .site-footer a.site-footer__find-store:focus-visible,
html body .site-footer a.site-footer__find-store:focus-visible *,
html body .site-footer a.site-footer__find-store:active,
html body .site-footer a.site-footer__find-store:active *,
html body .site-footer .site-footer__find-store,
html body .site-footer .site-footer__find-store *,
html body .site-footer .site-footer__find-store:hover,
html body .site-footer .site-footer__find-store:hover * {
  font-weight: 400 !important;
  -webkit-text-stroke: 0 !important;
  text-shadow: none !important;
  text-decoration: none !important;
  text-decoration-line: none !important;
  background-image: none !important;
}
html body .site-footer a.site-footer__find-store::before,
html body .site-footer a.site-footer__find-store::after,
html body .site-footer .site-footer__find-store::before,
html body .site-footer .site-footer__find-store::after {
  content: none !important;
  display: none !important;
  animation: none !important;
}
/* Line child is the only hover change */
html body .site-footer a.site-footer__find-store > .xsample-ul-line,
html body .site-footer .site-footer__find-store > .xsample-ul-line {
  font-weight: 400 !important;
  height: 1px !important;
  background: #000 !important;
}


/* —— Pass 20260805be — Find store = International Version twin; legal BV minimal —— */

/* Kill legacy mobile text-decoration underline on Find store */
@media (max-width: 899px) {
  html body .site-footer__find-store,
  html body a.site-footer__find-store,
  html body .site-footer__mobile .site-footer__find-store,
  html body .site-footer__mobile a.site-footer__find-store {
    text-decoration: none !important;
    text-underline-offset: 0 !important;
    background-image: none !important;
    font-weight: 400 !important;
  }
}

/* Exact twin of locale .hover-underline-erase (International Version) */
html body .site-footer a.site-footer__find-store,
html body .site-footer a.site-footer__find-store.hover-underline-erase,
html body .site-footer .site-footer__find-store,
html body a.site-footer__find-store {
  position: relative !important;
  display: inline-block !important;
  width: fit-content !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 0 3px !important;
  color: #000 !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  font-synthesis: none !important;
  letter-spacing: normal !important;
  line-height: 1.35 !important;
  text-transform: none !important;
  text-decoration: none !important;
  text-decoration-line: none !important;
  -webkit-text-stroke: 0 !important;
  text-shadow: none !important;
  background: none !important;
  background-image: none !important;
  border: 0 !important;
  isolation: auto !important;
  transform: none !important;
  transition: none !important;
}
@media (min-width: 768px) {
  html body .site-footer a.site-footer__find-store,
  html body .site-footer .site-footer__find-store {
    font-size: 13px !important;
  }
}
html body .site-footer a.site-footer__find-store:hover,
html body .site-footer a.site-footer__find-store:focus-visible,
html body .site-footer a.site-footer__find-store:active,
html body .site-footer .site-footer__find-store:hover,
html body .site-footer .site-footer__find-store:focus-visible {
  font-weight: 400 !important;
  color: #000 !important;
  text-decoration: none !important;
  background-image: none !important;
  -webkit-text-stroke: 0 !important;
  text-shadow: none !important;
}
html body .site-footer a.site-footer__find-store::before,
html body .site-footer a.site-footer__find-store::after,
html body .site-footer .site-footer__find-store::before,
html body .site-footer .site-footer__find-store::after {
  content: none !important;
  display: none !important;
}
html body .site-footer a.site-footer__find-store > .xsample-ul-line,
html body .site-footer .site-footer__find-store > .xsample-ul-line {
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  background: #000 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: none !important;
  transform: scaleX(1);
  transform-origin: left center;
  animation: none;
  transition: none !important;
}
html body .site-footer a.site-footer__find-store:hover > .xsample-ul-line,
html body .site-footer a.site-footer__find-store:focus-visible > .xsample-ul-line,
html body .site-footer .site-footer__find-store:hover > .xsample-ul-line,
html body .site-footer .site-footer__find-store:focus-visible > .xsample-ul-line {
  animation: xsample-ul-perfect-ltr 0.45s linear forwards !important;
  height: 1px !important;
  background: #000 !important;
}

/* —— Legal pages: BV structure, tighter / neater spacing —— */
html body main.l-legalpages,
html body main.site-legal.l-legalpages {
  width: 100% !important;
  background: #fff !important;
  color: #000 !important;
  padding: 40px 20px 72px !important;
  box-sizing: border-box !important;
  min-height: 65vh !important;
}
@media (min-width: 768px) {
  html body main.l-legalpages {
    padding: 56px 40px 96px !important;
  }
}
@media (min-width: 1280px) {
  html body main.l-legalpages {
    padding: 64px 48px 112px !important;
  }
}

html body .l-legalpages__wrapper {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 36px !important;
  width: 100% !important;
  max-width: 1180px !important;
  margin: 0 !important;
  align-items: start !important;
}
@media (min-width: 900px) {
  html body .l-legalpages__wrapper {
    grid-template-columns: minmax(200px, 28%) minmax(0, 1fr) !important;
    column-gap: clamp(40px, 7vw, 96px) !important;
    row-gap: 0 !important;
  }
}

html body .l-legalpages__infos {
  min-width: 0 !important;
}
@media (min-width: 900px) {
  html body .l-legalpages__infos {
    position: sticky !important;
    top: 104px !important;
    align-self: start !important;
  }
}

html body .l-legalpages__title {
  font-size: 12px !important;
  font-weight: 500 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  margin: 0 0 20px !important;
  line-height: 1.35 !important;
  color: #000 !important;
}

html body .l-legalpages__folderscarouselwrapper {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 12px !important;
  margin: 0 !important;
  padding: 0 !important;
}

html body .l-legalpages__content {
  margin: 0 !important;
  padding: 0 !important;
}
html body .l-legalpages__foldertitle {
  margin: 0 !important;
  padding: 0 !important;
  font-size: inherit !important;
  font-weight: inherit !important;
  line-height: 1.35 !important;
}

html body a.l-legalpages__accordiontitle,
html body .l-legalpages__assettitle {
  position: relative !important;
  display: inline-block !important;
  width: fit-content !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 0 2px !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  color: #000 !important;
  background: none !important;
  background-image: none !important;
  opacity: 1 !important;
  line-height: 1.35 !important;
}
html body a.l-legalpages__accordiontitle::before,
html body a.l-legalpages__accordiontitle::after {
  content: none !important;
  display: none !important;
}
html body a.l-legalpages__accordiontitle > .xsample-ul-line,
html body a.l-legalpages__accordiontitle > .l-legalpages__nav-line {
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 1px !important;
  background: #000 !important;
  opacity: 0 !important;
  transform: scaleX(0);
  transform-origin: left center;
  pointer-events: none !important;
  transition: none !important;
}
html body a.l-legalpages__accordiontitle:hover > .xsample-ul-line,
html body a.l-legalpages__accordiontitle:focus-visible > .xsample-ul-line {
  opacity: 1 !important;
  animation: xsample-ul-perfect-ltr 0.45s linear forwards !important;
}
html body a.l-legalpages__accordiontitle.c-accordion__trigger--selected > .xsample-ul-line,
html body a.l-legalpages__accordiontitle[aria-current="page"] > .xsample-ul-line {
  opacity: 1 !important;
  transform: scaleX(1);
  transform-origin: left center;
  animation: none !important;
}

html body .l-legalpages__foldercontents,
html body .l-legalpages__legalpageContent {
  min-width: 0 !important;
  max-width: 640px !important;
}

html body .l-legalpages__headline {
  font-size: 15px !important;
  font-weight: 500 !important;
  letter-spacing: 0.02em !important;
  text-transform: uppercase !important;
  margin: 0 0 16px !important;
  line-height: 1.35 !important;
  color: #000 !important;
}

html body .l-legalpages__p,
html body .c-expander__content .l-legalpages__p {
  font-size: 13px !important;
  font-weight: 400 !important;
  line-height: 1.35 !important;
  margin: 0 0 14px !important;
  color: #000 !important;
  letter-spacing: 0 !important;
}

html body .l-legalpages__actions {
  margin: 4px 0 18px !important;
}

html body .l-legalpages__cookie-btn,
html body button.l-legalpages__cookie-btn,
html body #ot-sdk-btn.l-legalpages__cookie-btn {
  display: inline-block !important;
  margin: 0 !important;
  padding: 8px 14px !important;
  border: 1px solid #000 !important;
  background: #fff !important;
  color: #000 !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  letter-spacing: 0.04em !important;
  text-transform: none !important;
  cursor: pointer !important;
  line-height: 1.35 !important;
}
html body .l-legalpages__cookie-btn:hover {
  background: #000 !important;
  color: #fff !important;
}

html body .c-expander__container--legalpage {
  margin: 8px 0 0 !important;
}
html body .c-expander__btn {
  position: relative !important;
  display: inline-block !important;
  margin: 0 !important;
  padding: 0 0 2px !important;
  border: 0 !important;
  background: none !important;
  color: #000 !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  letter-spacing: 0.02em !important;
  cursor: pointer !important;
  text-decoration: none !important;
}
html body .c-expander__btn::after {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  height: 1px !important;
  background: #000 !important;
  transform: scaleX(1);
  transform-origin: left center;
}
html body .c-expander__btn:hover::after {
  animation: xsample-ul-perfect-ltr 0.45s linear forwards !important;
}
html body .c-expander__panel {
  margin-top: 14px !important;
}
html body .c-expander__content .l-legalpages__p:last-child {
  margin-bottom: 0 !important;
}

@media (max-width: 899px) {
  html body .l-legalpages__folderscarouselwrapper {
    gap: 10px !important;
  }
  html body .l-legalpages__foldercontents,
  html body .l-legalpages__legalpageContent {
    max-width: none !important;
  }
}

/* —— Pass 20260805bf — legal centering + mobile tabs; footer underlines thicker at rest —— */

/* Legal: centered frame (not top-left hugging) */
html body .l-legalpages__wrapper {
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Legal mobile: horizontal scroll tab row (BV) */
@media (max-width: 899px) {
  html body main.l-legalpages,
  html body main.site-legal.l-legalpages {
    padding-top: 32px !important;
    padding-bottom: 56px !important;
  }
  html body .l-legalpages__wrapper {
    gap: 28px !important;
  }
  html body .l-legalpages__title {
    margin-bottom: 16px !important;
  }
  html body .l-legalpages__folderscarouselwrapper {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: flex-end !important;
    gap: 20px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
    padding-bottom: 12px !important;
    margin-bottom: 4px !important;
    border-bottom: 1px solid #000 !important;
    width: 100% !important;
  }
  html body .l-legalpages__folderscarouselwrapper::-webkit-scrollbar {
    display: none !important;
  }
  html body .l-legalpages__content {
    flex: 0 0 auto !important;
    width: auto !important;
  }
  html body a.l-legalpages__accordiontitle,
  html body .l-legalpages__assettitle {
    font-size: 10px !important;
    letter-spacing: 0.06em !important;
    white-space: nowrap !important;
  }
}

/* Footer locale / find-store / shipping: solid 2px underline at rest; text never bolds */
html body .site-footer a.hover-underline-erase,
html body .site-footer .hover-underline-erase,
html body .site-footer a.site-footer__find-store,
html body .site-footer .site-footer__find-store,
html body .site-footer__locale a.hover-underline-erase {
  position: relative !important;
  display: inline-block !important;
  width: fit-content !important;
  max-width: 100% !important;
  padding: 0 0 4px !important;
  color: #000 !important;
  font-weight: 400 !important;
  font-synthesis: none !important;
  -webkit-text-stroke: 0 !important;
  text-shadow: none !important;
  text-decoration: none !important;
  text-decoration-line: none !important;
  background: none !important;
  background-image: none !important;
  border: 0 !important;
  transition: none !important;
  animation: none !important;
}
html body .site-footer a.hover-underline-erase:hover,
html body .site-footer a.hover-underline-erase:focus-visible,
html body .site-footer a.hover-underline-erase:active,
html body .site-footer .hover-underline-erase:hover,
html body .site-footer .hover-underline-erase:focus-visible,
html body .site-footer a.site-footer__find-store:hover,
html body .site-footer a.site-footer__find-store:focus-visible,
html body .site-footer a.site-footer__find-store:active,
html body .site-footer .site-footer__find-store:hover,
html body .site-footer .site-footer__find-store:focus-visible,
html body .site-footer__locale a.hover-underline-erase:hover,
html body .site-footer__locale a.hover-underline-erase:focus-visible,
html body .site-footer__locale a.hover-underline-erase:active {
  color: #000 !important;
  font-weight: 400 !important;
  font-synthesis: none !important;
  -webkit-text-stroke: 0 !important;
  text-shadow: none !important;
  text-decoration: none !important;
  background: none !important;
  background-image: none !important;
  animation: none !important;
}
html body .site-footer a.hover-underline-erase::before,
html body .site-footer a.hover-underline-erase::after,
html body .site-footer .hover-underline-erase::before,
html body .site-footer .hover-underline-erase::after,
html body .site-footer a.site-footer__find-store::before,
html body .site-footer a.site-footer__find-store::after,
html body .site-footer .site-footer__find-store::before,
html body .site-footer .site-footer__find-store::after,
html body .site-footer__locale a.hover-underline-erase::before,
html body .site-footer__locale a.hover-underline-erase::after {
  content: none !important;
  display: none !important;
}
html body .site-footer .hover-underline-erase > .xsample-ul-line,
html body .site-footer a.hover-underline-erase > .xsample-ul-line,
html body .site-footer .site-footer__find-store > .xsample-ul-line,
html body .site-footer a.site-footer__find-store > .xsample-ul-line,
html body .site-footer__locale a.hover-underline-erase > .xsample-ul-line {
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  background: #000 !important;
  background-color: #000 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: none !important;
  transform: scaleX(1);
  transform-origin: left center;
  animation: none;
  transition: none !important;
}
html body .site-footer .hover-underline-erase:hover > .xsample-ul-line,
html body .site-footer .hover-underline-erase:focus-visible > .xsample-ul-line,
html body .site-footer a.hover-underline-erase:hover > .xsample-ul-line,
html body .site-footer a.hover-underline-erase:focus-visible > .xsample-ul-line,
html body .site-footer .site-footer__find-store:hover > .xsample-ul-line,
html body .site-footer .site-footer__find-store:focus-visible > .xsample-ul-line,
html body .site-footer a.site-footer__find-store:hover > .xsample-ul-line,
html body .site-footer a.site-footer__find-store:focus-visible > .xsample-ul-line,
html body .site-footer__locale a.hover-underline-erase:hover > .xsample-ul-line,
html body .site-footer__locale a.hover-underline-erase:focus-visible > .xsample-ul-line {
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  background: #000 !important;
  animation: xsample-ul-perfect-ltr 1.1s linear forwards !important;
}

/* —— Pass 20260805bg — underline = text stroke (1px); erase→draw 1.1s like others —— */
:root,
html,
html body {
  --link-line-duration: 1.1s !important;
}

/* All erase→draw lines: same 1px weight as text stroke, same slow linear pace */
html body .xsample-ul-line,
html body .hover-underline-erase > .xsample-ul-line,
html body a.hover-underline-erase > .xsample-ul-line,
html body .site-footer .hover-underline-erase > .xsample-ul-line,
html body .site-footer .site-footer__find-store > .xsample-ul-line,
html body .site-essentials-hub__sub-right > .xsample-ul-line {
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
}

html body .hover-underline-erase:hover > .xsample-ul-line,
html body .hover-underline-erase:focus-visible > .xsample-ul-line,
html body a.hover-underline-erase:hover > .xsample-ul-line,
html body a.hover-underline-erase:focus-visible > .xsample-ul-line,
html body .site-footer .hover-underline-erase:hover > .xsample-ul-line,
html body .site-footer .hover-underline-erase:focus-visible > .xsample-ul-line,
html body .site-footer a.hover-underline-erase:hover > .xsample-ul-line,
html body .site-footer a.hover-underline-erase:focus-visible > .xsample-ul-line,
html body .site-footer .site-footer__find-store:hover > .xsample-ul-line,
html body .site-footer .site-footer__find-store:focus-visible > .xsample-ul-line,
html body .site-footer a.site-footer__find-store:hover > .xsample-ul-line,
html body .site-footer a.site-footer__find-store:focus-visible > .xsample-ul-line,
html body .site-footer__locale a.hover-underline-erase:hover > .xsample-ul-line,
html body .site-footer__locale a.hover-underline-erase:focus-visible > .xsample-ul-line,
html body .site-essentials-hub__sub-right:hover > .xsample-ul-line,
html body .site-essentials-hub__sub-right:focus-visible > .xsample-ul-line,
html body a.site-essentials-hub__sub-right:hover > .xsample-ul-line,
html body a.site-essentials-hub__sub-right:focus-visible > .xsample-ul-line,
html body a.l-legalpages__accordiontitle:hover > .xsample-ul-line,
html body a.l-legalpages__accordiontitle:focus-visible > .xsample-ul-line,
html body .c-expander__btn:hover::after,
html body .site-legal__more:hover::after,
html body a.site-legal__more:hover::after {
  animation: none /* was perfect-ltr discover */ 1.1s linear forwards !important;
  height: 1px !important;
}

/* Matching duration for ::after / background-size draw underlines */
html body .link-line::after,
html body a.link-line::after,
html body .site-search .link-line::after,
html body .site-search a.link-line::after,
html body .site-search__list-link::after,
html body a.site-search__list-link::after,
html body .site-mega__link::after,
html body .site-mega__title::after,
html body .site-nav__link--underline::after,
html body a.site-nav__link--underline::after,
html body .hover-underline-anim::after,
html body .cookie-banner__link::after,
html body .cookie-settings__more::after,
html body .page-404__care-link::after,
html body .site-search__hint-text::after,
html body .site-newsletter__success-link::after {
  transition: transform 1.1s linear !important;
  transition-duration: 1.1s !important;
  transition-timing-function: linear !important;
}
html body .link-line,
html body a.link-line,
html body .site-search__list-link,
html body .site-mega__link,
html body .site-mega__title,
html body .site-nav__link--underline,
html body a.site-nav__link--underline,
html body .hover-underline-anim,
html body .cookie-banner__link,
html body .cookie-settings__more,
html body .page-404__care-link,
html body .site-search__hint-text,
html body .site-newsletter__success-link {
  transition:
    color 0.2s ease,
    background-size 1.1s linear,
    background-position 1.1s linear !important;
}


/* —— Pass 20260805bh — underline 1.5px locked (not tiny, never bolder after hover) —— */
html body .xsample-ul-line,
html body .hover-underline-erase > .xsample-ul-line,
html body a.hover-underline-erase > .xsample-ul-line,
html body .site-footer .hover-underline-erase > .xsample-ul-line,
html body .site-footer a.hover-underline-erase > .xsample-ul-line,
html body .site-footer .site-footer__find-store > .xsample-ul-line,
html body .site-footer a.site-footer__find-store > .xsample-ul-line,
html body .site-footer__locale a.hover-underline-erase > .xsample-ul-line,
html body .site-essentials-hub__sub-right > .xsample-ul-line {
  height: 1.5px !important;
  min-height: 1.5px !important;
  max-height: 1.5px !important;
  background: #000 !important;
  background-color: #000 !important;
  -webkit-backface-visibility: hidden !important;
  backface-visibility: hidden !important;
  transform: scaleX(1) translateZ(0);
  transform-origin: left center;
}

html body .hover-underline-erase:hover > .xsample-ul-line,
html body .hover-underline-erase:focus-visible > .xsample-ul-line,
html body a.hover-underline-erase:hover > .xsample-ul-line,
html body a.hover-underline-erase:focus-visible > .xsample-ul-line,
html body .site-footer .hover-underline-erase:hover > .xsample-ul-line,
html body .site-footer .hover-underline-erase:focus-visible > .xsample-ul-line,
html body .site-footer a.hover-underline-erase:hover > .xsample-ul-line,
html body .site-footer a.hover-underline-erase:focus-visible > .xsample-ul-line,
html body .site-footer .site-footer__find-store:hover > .xsample-ul-line,
html body .site-footer .site-footer__find-store:focus-visible > .xsample-ul-line,
html body .site-footer a.site-footer__find-store:hover > .xsample-ul-line,
html body .site-footer a.site-footer__find-store:focus-visible > .xsample-ul-line,
html body .site-footer__locale a.hover-underline-erase:hover > .xsample-ul-line,
html body .site-footer__locale a.hover-underline-erase:focus-visible > .xsample-ul-line,
html body .site-essentials-hub__sub-right:hover > .xsample-ul-line,
html body .site-essentials-hub__sub-right:focus-visible > .xsample-ul-line,
html body a.site-essentials-hub__sub-right:hover > .xsample-ul-line,
html body a.site-essentials-hub__sub-right:focus-visible > .xsample-ul-line {
  height: 1.5px !important;
  min-height: 1.5px !important;
  max-height: 1.5px !important;
  background: #000 !important;
  animation: none /* was perfect-ltr discover */ 1.1s linear forwards !important;
}

html body .site-footer a.hover-underline-erase,
html body .site-footer .hover-underline-erase,
html body .site-footer a.site-footer__find-store,
html body .site-footer .site-footer__find-store,
html body .site-essentials-hub__sub-right,
html body a.site-essentials-hub__sub-right,
html body .site-footer a.hover-underline-erase:hover,
html body .site-footer a.hover-underline-erase:focus-visible,
html body .site-footer a.hover-underline-erase:active,
html body .site-footer .hover-underline-erase:hover,
html body .site-footer a.site-footer__find-store:hover,
html body .site-footer a.site-footer__find-store:focus-visible,
html body .site-footer a.site-footer__find-store:active,
html body .site-essentials-hub__sub-right:hover,
html body .site-essentials-hub__sub-right:focus-visible,
html body a.site-essentials-hub__sub-right:hover {
  font-weight: 400 !important;
  font-synthesis: none !important;
  -webkit-text-stroke: 0 !important;
  text-shadow: none !important;
  color: #000 !important;
}


/* —— Pass 20260805bi — match Discover new arrivals pace sitewide (0.45s) —— */
:root,
html,
html body {
  --link-line-duration: 0.45s !important;
}

html body .hover-underline-erase:hover > .xsample-ul-line,
html body .hover-underline-erase:focus-visible > .xsample-ul-line,
html body a.hover-underline-erase:hover > .xsample-ul-line,
html body a.hover-underline-erase:focus-visible > .xsample-ul-line,
html body .site-footer .hover-underline-erase:hover > .xsample-ul-line,
html body .site-footer .hover-underline-erase:focus-visible > .xsample-ul-line,
html body .site-footer a.hover-underline-erase:hover > .xsample-ul-line,
html body .site-footer a.hover-underline-erase:focus-visible > .xsample-ul-line,
html body .site-footer .site-footer__find-store:hover > .xsample-ul-line,
html body .site-footer .site-footer__find-store:focus-visible > .xsample-ul-line,
html body .site-footer a.site-footer__find-store:hover > .xsample-ul-line,
html body .site-footer a.site-footer__find-store:focus-visible > .xsample-ul-line,
html body .site-footer__locale a.hover-underline-erase:hover > .xsample-ul-line,
html body .site-footer__locale a.hover-underline-erase:focus-visible > .xsample-ul-line,
html body .site-essentials-hub__sub-right:hover > .xsample-ul-line,
html body .site-essentials-hub__sub-right:focus-visible > .xsample-ul-line,
html body a.site-essentials-hub__sub-right:hover > .xsample-ul-line,
html body a.site-essentials-hub__sub-right:focus-visible > .xsample-ul-line,
html body a.l-legalpages__accordiontitle:hover > .xsample-ul-line,
html body a.l-legalpages__accordiontitle:focus-visible > .xsample-ul-line,
html body .c-expander__btn:hover::after,
html body .site-legal__more:hover::after,
html body a.site-legal__more:hover::after {
  animation: none /* was perfect-ltr discover */ 0.45s linear forwards !important;
  animation-duration: 0.45s !important;
  animation-timing-function: linear !important;
}

html body .link-line::after,
html body a.link-line::after,
html body .site-search .link-line::after,
html body .site-search a.link-line::after,
html body .site-search__list-link::after,
html body a.site-search__list-link::after,
html body .site-mega__link::after,
html body .site-mega__title::after,
html body .site-nav__link--underline::after,
html body a.site-nav__link--underline::after,
html body .hover-underline-anim::after,
html body .cookie-banner__link::after,
html body .cookie-settings__more::after,
html body .page-404__care-link::after,
html body .site-search__hint-text::after,
html body .site-newsletter__success-link::after {
  transition: transform 0.45s linear !important;
  transition-duration: 0.45s !important;
  transition-timing-function: linear !important;
}
html body .link-line,
html body a.link-line,
html body .site-search__list-link,
html body .site-mega__link,
html body .site-mega__title,
html body .site-nav__link--underline,
html body a.site-nav__link--underline,
html body .hover-underline-anim,
html body .cookie-banner__link,
html body .cookie-settings__more,
html body .page-404__care-link,
html body .site-search__hint-text,
html body .site-newsletter__success-link {
  transition:
    color 0.2s ease,
    background-size 0.45s linear,
    background-position 0.45s linear !important;
}


/* —— Pass 20260805bj — stay-underline once-and-for-all: weight locked, line locked —— */
html body a.hover-underline-erase,
html body .hover-underline-erase,
html body a.site-footer__find-store,
html body .site-footer__find-store,
html body a.site-essentials-hub__sub-right,
html body .site-essentials-hub__sub-right,
html body .site-footer__locale a.hover-underline-erase,
html body a.l-legalpages__accordiontitle,
html body a.hover-underline-erase:link,
html body a.hover-underline-erase:visited,
html body a.hover-underline-erase:hover,
html body a.hover-underline-erase:focus,
html body a.hover-underline-erase:focus-visible,
html body a.hover-underline-erase:active,
html body .hover-underline-erase:hover,
html body .hover-underline-erase:focus-visible,
html body a.site-footer__find-store:hover,
html body a.site-footer__find-store:focus-visible,
html body a.site-footer__find-store:active,
html body .site-footer__find-store:hover,
html body a.site-essentials-hub__sub-right:hover,
html body a.site-essentials-hub__sub-right:focus-visible,
html body .site-essentials-hub__sub-right:hover,
html body .site-footer__locale a.hover-underline-erase:hover,
html body .site-footer__locale a.hover-underline-erase:focus-visible {
  font-weight: 400 !important;
  font-synthesis: none !important;
  -webkit-font-smoothing: antialiased !important;
  -moz-osx-font-smoothing: grayscale !important;
  -webkit-text-stroke: 0 !important;
  text-shadow: none !important;
  text-decoration: none !important;
  background-image: none !important;
  transition: none !important;
}

html body .xsample-ul-line,
html body .hover-underline-erase > .xsample-ul-line,
html body a.hover-underline-erase > .xsample-ul-line,
html body .site-footer .hover-underline-erase > .xsample-ul-line,
html body .site-footer a.hover-underline-erase > .xsample-ul-line,
html body .site-footer .site-footer__find-store > .xsample-ul-line,
html body .site-footer a.site-footer__find-store > .xsample-ul-line,
html body .site-essentials-hub__sub-right > .xsample-ul-line,
html body a.site-essentials-hub__sub-right > .xsample-ul-line {
  height: 1.5px !important;
  min-height: 1.5px !important;
  max-height: 1.5px !important;
  background: #000 !important;
  opacity: 1 !important;
  visibility: visible !important;
}

html body .hover-underline-erase:hover > .xsample-ul-line,
html body .hover-underline-erase:focus-visible > .xsample-ul-line,
html body a.hover-underline-erase:hover > .xsample-ul-line,
html body a.hover-underline-erase:focus-visible > .xsample-ul-line,
html body .site-footer .hover-underline-erase:hover > .xsample-ul-line,
html body .site-footer a.hover-underline-erase:hover > .xsample-ul-line,
html body .site-footer .site-footer__find-store:hover > .xsample-ul-line,
html body .site-footer a.site-footer__find-store:hover > .xsample-ul-line,
html body .site-essentials-hub__sub-right:hover > .xsample-ul-line,
html body a.site-essentials-hub__sub-right:hover > .xsample-ul-line {
  height: 1.5px !important;
  min-height: 1.5px !important;
  max-height: 1.5px !important;
  animation: none /* was perfect-ltr discover */ 0.45s linear forwards !important;
  animation-duration: 0.45s !important;
}


/* —— Pass 20260805bk — stay-ul 0.9s (0.45 erase + 0.45 draw); English weight twin —— */

/* Stay underlines only: slower erase→draw (Discover/draw links stay 0.45s) */
html body .hover-underline-erase:hover > .xsample-ul-line,
html body .hover-underline-erase:focus-visible > .xsample-ul-line,
html body a.hover-underline-erase:hover > .xsample-ul-line,
html body a.hover-underline-erase:focus-visible > .xsample-ul-line,
html body .site-footer .hover-underline-erase:hover > .xsample-ul-line,
html body .site-footer a.hover-underline-erase:hover > .xsample-ul-line,
html body .site-footer .site-footer__find-store:hover > .xsample-ul-line,
html body .site-footer a.site-footer__find-store:hover > .xsample-ul-line,
html body .site-footer__locale a:hover > .xsample-ul-line,
html body .site-footer__locale-link:hover > .xsample-ul-line,
html body .site-essentials-hub__sub-right:hover > .xsample-ul-line,
html body a.site-essentials-hub__sub-right:hover > .xsample-ul-line {
  animation: none /* was perfect-ltr discover */ 0.9s linear forwards !important;
  animation-duration: 0.9s !important;
  animation-timing-function: linear !important;
  height: 1.5px !important;
  min-height: 1.5px !important;
  max-height: 1.5px !important;
}

/* Locale links: identical type — English must match International Version */
html body .site-footer__locale,
html body .site-footer__locale a,
html body .site-footer a.site-footer__locale-link,
html body .site-footer__locale-link,
html body .site-footer__locale a.hover-underline-erase,
html body .site-footer__locale a.hover-underline-erase:hover,
html body .site-footer__locale a.hover-underline-erase:focus-visible,
html body .site-footer__locale a.hover-underline-erase:active,
html body .site-footer__locale-link:hover,
html body .site-footer__locale-link:focus-visible,
html body .site-footer__locale-link:active {
  font-size: 12px !important;
  font-weight: 400 !important;
  font-synthesis: none !important;
  -webkit-font-smoothing: antialiased !important;
  -moz-osx-font-smoothing: grayscale !important;
  -webkit-text-stroke: 0 !important;
  text-shadow: none !important;
  letter-spacing: -0.20px !important;
  color: #000 !important;
  text-decoration: none !important;
  background-image: none !important;
}
@media (min-width: 768px) {
  html body .site-footer__locale,
  html body .site-footer__locale a,
  html body .site-footer a.site-footer__locale-link,
  html body .site-footer__locale-link {
    font-size: 13px !important;
  }
}
html body .site-footer__locale .xsample-ul-label,
html body .site-footer__locale-link .xsample-ul-label,
html body .site-footer .xsample-ul-label {
  font-weight: 400 !important;
  font-synthesis: none !important;
  -webkit-text-stroke: 0 !important;
  text-shadow: none !important;
  font-size: inherit !important;
  letter-spacing: inherit !important;
  color: inherit !important;
}
html body .site-footer__locale a > .xsample-ul-line,
html body .site-footer__locale-link > .xsample-ul-line {
  height: 1.5px !important;
  min-height: 1.5px !important;
  max-height: 1.5px !important;
  background: #000 !important;
}


/* —— Pass 20260805bl — locale twin of Find store / Discover (exact) —— */
html body a.site-footer__locale-link,
html body .site-footer__locale-link,
html body .site-footer__locale a.site-footer__locale-link,
html body .site-footer a.site-footer__find-store,
html body .site-footer .site-footer__find-store,
html body a.site-essentials-hub__sub-right,
html body .site-essentials-hub__sub-right {
  position: relative !important;
  display: inline-block !important;
  width: fit-content !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 0 3px !important;
  color: #000 !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  font-synthesis: none !important;
  -webkit-font-smoothing: antialiased !important;
  -moz-osx-font-smoothing: grayscale !important;
  -webkit-text-stroke: 0 !important;
  text-shadow: none !important;
  letter-spacing: -0.20px !important;
  line-height: 1.35 !important;
  text-decoration: none !important;
  text-decoration-line: none !important;
  background: none !important;
  background-image: none !important;
  border: 0 !important;
  transition: none !important;
  animation: none !important;
}
@media (min-width: 768px) {
  html body a.site-footer__locale-link,
  html body .site-footer__locale-link,
  html body .site-footer__locale a.site-footer__locale-link,
  html body .site-footer a.site-footer__find-store,
  html body .site-footer .site-footer__find-store,
  html body a.site-essentials-hub__sub-right,
  html body .site-essentials-hub__sub-right {
    font-size: 13px !important;
  }
}
html body a.site-footer__locale-link:hover,
html body a.site-footer__locale-link:focus-visible,
html body a.site-footer__locale-link:active,
html body .site-footer__locale-link:hover,
html body .site-footer a.site-footer__find-store:hover,
html body .site-footer a.site-footer__find-store:focus-visible,
html body .site-footer a.site-footer__find-store:active,
html body a.site-essentials-hub__sub-right:hover,
html body a.site-essentials-hub__sub-right:focus-visible,
html body .site-essentials-hub__sub-right:hover {
  font-weight: 400 !important;
  font-synthesis: none !important;
  -webkit-text-stroke: 0 !important;
  text-shadow: none !important;
  color: #000 !important;
  text-decoration: none !important;
  background-image: none !important;
}
html body a.site-footer__locale-link::before,
html body a.site-footer__locale-link::after,
html body .site-footer__locale a::before,
html body .site-footer__locale a::after,
html body .site-footer a.site-footer__find-store::before,
html body .site-footer a.site-footer__find-store::after,
html body a.site-essentials-hub__sub-right::before,
html body a.site-essentials-hub__sub-right::after {
  content: none !important;
  display: none !important;
}

/* Shared stay line — same as Find store / Discover */
html body a.site-footer__locale-link > .xsample-ul-line,
html body .site-footer__locale-link > .xsample-ul-line,
html body .site-footer a.site-footer__find-store > .xsample-ul-line,
html body .site-footer .site-footer__find-store > .xsample-ul-line,
html body a.site-essentials-hub__sub-right > .xsample-ul-line,
html body .site-essentials-hub__sub-right > .xsample-ul-line {
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  background: #000 !important;
  background-color: #000 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: none !important;
  transform: scaleX(1);
  transform-origin: left center;
  animation: none;
  transition: none !important;
  -webkit-backface-visibility: hidden !important;
  backface-visibility: hidden !important;
}

/* Stay hover pace: same 0.9s for Find / Discover / locale */
html body a.site-footer__locale-link:hover > .xsample-ul-line,
html body a.site-footer__locale-link:focus-visible > .xsample-ul-line,
html body .site-footer__locale-link:hover > .xsample-ul-line,
html body .site-footer a.site-footer__find-store:hover > .xsample-ul-line,
html body .site-footer a.site-footer__find-store:focus-visible > .xsample-ul-line,
html body .site-footer .site-footer__find-store:hover > .xsample-ul-line,
html body a.site-essentials-hub__sub-right:hover > .xsample-ul-line,
html body a.site-essentials-hub__sub-right:focus-visible > .xsample-ul-line,
html body .site-essentials-hub__sub-right:hover > .xsample-ul-line,
html body .site-essentials-hub__sub-right:focus-visible > .xsample-ul-line {
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  background: #000 !important;
  animation: none /* was perfect-ltr discover */ 0.9s linear forwards !important;
  animation-duration: 0.9s !important;
}


/* —— Pass 20260805bm — Find store desktop size = Discover / locale —— */
@media (min-width: 768px) {
  html body .site-footer a.site-footer__find-store,
  html body .site-footer .site-footer__find-store,
  html body a.site-footer__find-store,
  html body a.site-footer__locale-link,
  html body .site-footer__locale-link,
  html body a.site-essentials-hub__sub-right,
  html body .site-essentials-hub__sub-right {
    font-size: 13px !important;
  }
}


/* —— Pass 20260805bo — keep Find store / Discover untouched; only locale aligned —— */
html body a.site-footer__locale-link,
html body .site-footer__locale-link,
html body .site-footer__locale a.site-footer__locale-link {
  font-size: 13px !important;
  font-weight: 400 !important;
  padding-bottom: 3px !important;
  letter-spacing: -0.20px !important;
}
@media (max-width: 767px) {
  html body a.site-footer__locale-link,
  html body .site-footer__locale-link,
  html body .site-footer__locale a.site-footer__locale-link {
    font-size: 12px !important;
  }
}


/* —— Pass 20260805bp — Discover link only: exact Find store twin —— */
html body a.site-essentials-hub__sub-right,
html body .site-essentials-hub__sub-right {
  position: relative !important;
  display: inline-block !important;
  width: fit-content !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 0 3px !important;
  color: #000 !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  font-synthesis: none !important;
  -webkit-font-smoothing: antialiased !important;
  -moz-osx-font-smoothing: grayscale !important;
  -webkit-text-stroke: 0 !important;
  text-shadow: none !important;
  letter-spacing: -0.20px !important;
  line-height: 1.35 !important;
  text-decoration: none !important;
  text-decoration-line: none !important;
  background: none !important;
  background-image: none !important;
  border: 0 !important;
  transition: none !important;
  animation: none !important;
}
@media (min-width: 768px) {
  html body a.site-essentials-hub__sub-right,
  html body .site-essentials-hub__sub-right {
    font-size: 13px !important;
  }
}
html body a.site-essentials-hub__sub-right::before,
html body a.site-essentials-hub__sub-right::after,
html body .site-essentials-hub__sub-right::before,
html body .site-essentials-hub__sub-right::after {
  content: none !important;
  display: none !important;
}
html body a.site-essentials-hub__sub-right > .xsample-ul-line,
html body .site-essentials-hub__sub-right > .xsample-ul-line {
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  background: #000 !important;
  background-color: #000 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: none !important;
  transform: scaleX(1);
  transform-origin: left center;
  animation: none;
  transition: none !important;
}
html body a.site-essentials-hub__sub-right:hover > .xsample-ul-line,
html body a.site-essentials-hub__sub-right:focus-visible > .xsample-ul-line,
html body .site-essentials-hub__sub-right:hover > .xsample-ul-line,
html body .site-essentials-hub__sub-right:focus-visible > .xsample-ul-line {
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  background: #000 !important;
  animation: none /* was perfect-ltr discover */ 0.9s linear forwards !important;
  animation-duration: 0.9s !important;
}


/* —— Pass 20260805bq — kill legacy hover pseudo-line (Discover) to stop bold/thick flash —— */
html body a.site-essentials-hub__sub-right::before,
html body a.site-essentials-hub__sub-right::after,
html body .site-essentials-hub__sub-right::before,
html body .site-essentials-hub__sub-right::after,
html body a.site-essentials-hub__sub-right:hover::before,
html body a.site-essentials-hub__sub-right:hover::after,
html body a.site-essentials-hub__sub-right:focus::before,
html body a.site-essentials-hub__sub-right:focus::after,
html body a.site-essentials-hub__sub-right:focus-visible::before,
html body a.site-essentials-hub__sub-right:focus-visible::after,
html body a.site-essentials-hub__sub-right:active::before,
html body a.site-essentials-hub__sub-right:active::after,
html body .site-essentials-hub__sub-right:hover::before,
html body .site-essentials-hub__sub-right:hover::after,
html body .site-essentials-hub__sub-right:focus-visible::before,
html body .site-essentials-hub__sub-right:focus-visible::after,
html body .site-essentials-hub__sub-right:active::before,
html body .site-essentials-hub__sub-right:active::after {
  content: none !important;
  display: none !important;
  width: 0 !important;
  height: 0 !important;
  background: none !important;
  border: 0 !important;
  box-shadow: none !important;
  opacity: 0 !important;
}

/* Keep text weight fixed through all interactive states */
html body a.site-essentials-hub__sub-right,
html body a.site-essentials-hub__sub-right:link,
html body a.site-essentials-hub__sub-right:visited,
html body a.site-essentials-hub__sub-right:hover,
html body a.site-essentials-hub__sub-right:focus,
html body a.site-essentials-hub__sub-right:focus-visible,
html body a.site-essentials-hub__sub-right:active,
html body .site-essentials-hub__sub-right,
html body .site-essentials-hub__sub-right:hover,
html body .site-essentials-hub__sub-right:focus-visible,
html body .site-essentials-hub__sub-right:active {
  font-weight: 400 !important;
  font-synthesis: none !important;
  -webkit-text-stroke: 0 !important;
  text-shadow: none !important;
}

/* Prevent anti-aliased thickness jump while animated */
html body a.site-essentials-hub__sub-right > .xsample-ul-line,
html body .site-essentials-hub__sub-right > .xsample-ul-line,
html body a.site-essentials-hub__sub-right:hover > .xsample-ul-line,
html body a.site-essentials-hub__sub-right:focus-visible > .xsample-ul-line,
html body .site-essentials-hub__sub-right:hover > .xsample-ul-line,
html body .site-essentials-hub__sub-right:focus-visible > .xsample-ul-line {
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  transform: translateZ(0);
  -webkit-backface-visibility: hidden !important;
  backface-visibility: hidden !important;
}


/* —— Pass 20260805bu — PLP cat line: 1px animated, no text shift —— */
html body main.site-collections-products button.site-plp-cat,
html body main.site-collections-products .site-plp-cat {
  position: relative !important;
  display: inline-block !important;
  padding-bottom: 3px !important;
  border-bottom: 0 !important;
  font-weight: 400 !important;
  text-decoration: none !important;
  background-image: none !important;
  -webkit-text-stroke: 0 !important;
  text-shadow: none !important;
}
html body main.site-collections-products button.site-plp-cat::before,
html body main.site-collections-products button.site-plp-cat::after,
html body main.site-collections-products .site-plp-cat::before,
html body main.site-collections-products .site-plp-cat::after {
  content: none !important;
  display: none !important;
}
html body main.site-collections-products button.site-plp-cat.is-active,
html body main.site-collections-products button.site-plp-cat:hover,
html body main.site-collections-products button.site-plp-cat:focus-visible,
html body main.site-collections-products .site-plp-cat.is-active,
html body main.site-collections-products .site-plp-cat:hover,
html body main.site-collections-products .site-plp-cat:focus-visible {
  font-weight: 400 !important;
  border-bottom: 0 !important;
  -webkit-text-stroke: 0 !important;
  text-shadow: none !important;
}
html body main.site-collections-products .site-plp-cat__line {
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  background: #000 !important;
  pointer-events: none !important;
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform 0.45s linear !important;
}
html body main.site-collections-products button.site-plp-cat:hover > .site-plp-cat__line,
html body main.site-collections-products button.site-plp-cat:focus-visible > .site-plp-cat__line,
html body main.site-collections-products button.site-plp-cat.is-active > .site-plp-cat__line {
  transform: scaleX(1);
  transform-origin: left center;
}

/* —— Pass 20260805bv — soft boot + slightly bolder PLP cat line —— */
html body main.site-collections-products .site-plp-cat__line,
html body main.site-collections-products button.site-plp-cat:hover > .site-plp-cat__line,
html body main.site-collections-products button.site-plp-cat:focus-visible > .site-plp-cat__line,
html body main.site-collections-products button.site-plp-cat.is-active > .site-plp-cat__line {
  height: 1.5px !important;
  min-height: 1.5px !important;
  max-height: 1.5px !important;
}

/* —— Pass 20260805bw — fade only + top page progress —— */
#xsample-boot-veil { display: none !important; }
#xsample-progress {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 2px !important;
  z-index: 2147483646 !important;
  pointer-events: none !important;
  background: transparent !important;
  opacity: 1 !important;
}
#xsample-progress > i {
  display: block !important;
  height: 100% !important;
  background: #000 !important;
}

/* neutralized 20260805bx locale clip/transform lock */

/* neutralized leftover locale hover lock */

/* neutralized 20260805by locale solid block */

/* neutralized 20260805bz locale no-anim block */

/* neutralized 20260805ca locale border/hide-line block */

/* neutralized 20260805cb locale border block */

/* —— Pass 20260805cc — locale = Find store underline (erase→draw) —— */
html body a.site-footer__locale-link,
html body .site-footer__locale-link,
html body .site-footer__locale a.site-footer__locale-link {
  position: relative !important;
  display: inline-block !important;
  width: fit-content !important;
  max-width: 100% !important;
  padding: 0 0 3px !important;
  margin: 0 !important;
  border: 0 !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
  text-decoration: none !important;
  background: none !important;
  background-image: none !important;
  font-weight: 400 !important;
  color: #000 !important;
  animation: none !important;
  transition: none !important;
}
html body a.site-footer__locale-link:hover,
html body a.site-footer__locale-link:focus-visible,
html body a.site-footer__locale-link:active,
html body .site-footer__locale-link:hover,
html body .site-footer__locale a:hover {
  border: 0 !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
  text-decoration: none !important;
  background-image: none !important;
  font-weight: 400 !important;
}
html body a.site-footer__locale-link::before,
html body a.site-footer__locale-link::after,
html body .site-footer__locale-link::before,
html body .site-footer__locale-link::after,
html body .site-footer__locale a::before,
html body .site-footer__locale a::after {
  content: none !important;
  display: none !important;
}
html body a.site-footer__locale-link > .xsample-ul-line,
html body .site-footer__locale-link > .xsample-ul-line,
html body .site-footer__locale a > .xsample-ul-line {
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: #000 !important;
  background-color: #000 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: none !important;
  transform: scaleX(1);
  transform-origin: left center;
  /* clip unlocked */
  animation: none !important;
  transition: none !important;
}
html body a.site-footer__locale-link:hover > .xsample-ul-line,
html body a.site-footer__locale-link:focus-visible > .xsample-ul-line,
html body .site-footer__locale-link:hover > .xsample-ul-line,
html body .site-footer__locale-link:focus-visible > .xsample-ul-line,
html body .site-footer__locale a:hover > .xsample-ul-line,
html body .site-footer__locale a:focus-visible > .xsample-ul-line {
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  background: #000 !important;
  border: 0 !important;
  /* clip unlocked */
  animation: xsample-ul-perfect-ltr 0.9s linear forwards !important;
  animation-duration: 0.9s !important;
}

/* —— Pass 20260805cd — locale Find-store twin (beat bz/ca specificity) —— */
html body .site-footer__locale a.site-footer__locale-link,
html body .site-footer__locale a.site-footer__locale-link:hover,
html body .site-footer__locale a.site-footer__locale-link:focus-visible,
html body .site-footer__locale a.site-footer__locale-link:active {
  position: relative !important;
  display: inline-block !important;
  width: fit-content !important;
  padding: 0 0 3px !important;
  border: 0 !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
  text-decoration: none !important;
  background: none !important;
  background-image: none !important;
  font-weight: 400 !important;
}
html body .site-footer__locale a.site-footer__locale-link > .xsample-ul-line,
html body .site-footer__locale .xsample-ul-line {
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  max-width: none !important;
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: #000 !important;
  background-color: #000 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: none !important;
  transform: scaleX(1);
  transform-origin: left center;
  /* clip unlocked */
  animation: none;
  transition: none !important;
}
html body .site-footer__locale a.site-footer__locale-link:hover > .xsample-ul-line,
html body .site-footer__locale a.site-footer__locale-link:focus-visible > .xsample-ul-line,
html body .site-footer__locale a.site-footer__locale-link:active > .xsample-ul-line,
html body .site-footer__locale a.hover-underline-erase:hover > .xsample-ul-line,
html body .site-footer__locale a.hover-underline-erase:focus-visible > .xsample-ul-line {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
  width: 100% !important;
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  background: #000 !important;
  transform-origin: left center !important;
  /* clip unlocked */
  animation: xsample-ul-perfect-ltr 0.9s linear forwards !important;
  animation-name: xsample-ul-perfect-ltr !important;
  animation-duration: 0.9s !important;
  animation-timing-function: linear !important;
  animation-fill-mode: forwards !important;
}


/* —— Pass 20260805cd2 — locale EXACT Find store underline —— */
html body .site-footer__locale a.site-footer__locale-link,
html body .site-footer__locale a.site-footer__locale-link:hover,
html body .site-footer__locale a.site-footer__locale-link:focus-visible {
  position: relative !important;
  display: inline-block !important;
  width: fit-content !important;
  padding: 0 0 3px !important;
  border: 0 !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
  text-decoration: none !important;
  background: none !important;
  background-image: none !important;
  font-weight: 400 !important;
}
html body .site-footer__locale a.site-footer__locale-link::before,
html body .site-footer__locale a.site-footer__locale-link::after {
  content: none !important;
  display: none !important;
}
html body .site-footer__locale a.site-footer__locale-link > .xsample-ul-line {
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  background: #000 !important;
  background-color: #000 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: none !important;
  transform: scaleX(1);
  transform-origin: left center;
  animation: none;
  transition: none !important;
}
html body .site-footer__locale a.site-footer__locale-link:hover > .xsample-ul-line,
html body .site-footer__locale a.site-footer__locale-link:focus-visible > .xsample-ul-line {
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  background: #000 !important;
  animation: xsample-ul-perfect-ltr 0.9s linear forwards !important;
  animation-duration: 0.9s !important;
}


/* —— Pass 20260805cf — locale shares Find store underline classes —— */
html body .site-footer__locale a.site-footer__locale-link.site-footer__find-store,
html body a.site-footer__locale-link.site-footer__find-store {
  border: 0 !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
  text-decoration: none !important;
  background-image: none !important;
}
html body .site-footer__locale a.site-footer__locale-link.site-footer__find-store > .xsample-ul-line,
html body a.site-footer__locale-link.site-footer__find-store > .xsample-ul-line {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
  width: 100% !important;
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  background: #000 !important;
  transform: scaleX(1);
  transform-origin: left center;
  animation: none;
}
html body .site-footer__locale a.site-footer__locale-link.site-footer__find-store:hover > .xsample-ul-line,
html body .site-footer__locale a.site-footer__locale-link.site-footer__find-store:focus-visible > .xsample-ul-line,
html body a.site-footer__locale-link.site-footer__find-store:hover > .xsample-ul-line,
html body a.site-footer__locale-link.site-footer__find-store:focus-visible > .xsample-ul-line {
  height: 1px !important;
  background: #000 !important;
  animation: xsample-ul-perfect-ltr 0.9s linear forwards !important;
  animation-duration: 0.9s !important;
}


/* —— Pass 20260805cg — locale Find-store underline MUST animate (no transform lock) —— */
html body .site-footer__locale a.site-footer__locale-link.site-footer__find-store > .xsample-ul-line,
html body a.site-footer__locale-link.site-footer__find-store > .xsample-ul-line,
html body .site-footer__locale a.site-footer__locale-link > .xsample-ul-line,
html body a.site-footer__locale-link > .xsample-ul-line,
html body .site-footer__locale .xsample-ul-line {
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  background: #000 !important;
  background-color: #000 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: none !important;
  /* CRITICAL: no transform:!important — keyframes need to drive scaleX */
  transform: scaleX(1);
  transform-origin: left center;
  clip-path: none;
  scale: none;
  animation: none;
  transition: none !important;
}
html body .site-footer__locale a.site-footer__locale-link.site-footer__find-store:hover > .xsample-ul-line,
html body .site-footer__locale a.site-footer__locale-link.site-footer__find-store:focus-visible > .xsample-ul-line,
html body a.site-footer__locale-link.site-footer__find-store:hover > .xsample-ul-line,
html body a.site-footer__locale-link.site-footer__find-store:focus-visible > .xsample-ul-line,
html body .site-footer__locale a.site-footer__locale-link:hover > .xsample-ul-line,
html body .site-footer__locale a.site-footer__locale-link:focus-visible > .xsample-ul-line {
  height: 1px !important;
  background: #000 !important;
  /* do not set transform here */
  animation: xsample-ul-perfect-ltr 0.9s linear forwards !important;
  animation-name: xsample-ul-perfect-ltr !important;
  animation-duration: 0.9s !important;
  animation-timing-function: linear !important;
  animation-fill-mode: forwards !important;
}

/* —— Pass 20260805ch — locale: clip wipe L→R, NO scale zoom —— */
@keyframes xsample-ul-locale-clip-ltr {
  0%   { clip-path: inset(0 0 0 0); }
  45%  { clip-path: inset(0 0 0 100%); }  /* erase left → right */
  46%  { clip-path: inset(0 100% 0 0); }  /* hidden, primed for L→R draw */
  100% { clip-path: inset(0 0 0 0); }     /* draw left → right */
}

html body .site-footer__locale a.site-footer__locale-link,
html body a.site-footer__locale-link {
  position: relative !important;
  display: inline-block !important;
  width: fit-content !important;
  padding: 0 0 3px !important;
  border: 0 !important;
  border-bottom: 0 !important;
  text-decoration: none !important;
  background-image: none !important;
}

html body .site-footer__locale a.site-footer__locale-link > .xsample-ul-line,
html body a.site-footer__locale-link > .xsample-ul-line,
html body .site-footer__locale a.site-footer__locale-link.site-footer__find-store > .xsample-ul-line,
html body a.site-footer__locale-link.site-footer__find-store > .xsample-ul-line,
html body .site-footer__locale a.site-footer__locale-link.site-footer__find-store:hover > .xsample-ul-line,
html body .site-footer__locale a.site-footer__locale-link.site-footer__find-store:focus-visible > .xsample-ul-line,
html body a.site-footer__locale-link.site-footer__find-store:hover > .xsample-ul-line,
html body a.site-footer__locale-link.site-footer__find-store:focus-visible > .xsample-ul-line,
html body .site-footer__locale a.site-footer__locale-link:hover > .xsample-ul-line,
html body .site-footer__locale a.site-footer__locale-link:focus-visible > .xsample-ul-line,
html body a.site-footer__locale-link:hover > .xsample-ul-line,
html body a.site-footer__locale-link:focus-visible > .xsample-ul-line {
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  background: #000 !important;
  background-color: #000 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: none !important;
  /* lock transform — clip-path does the motion, no zoom */
  transform: none !important;
  transform-origin: left center !important;
  scale: none !important;
  transition: none !important;
}

html body .site-footer__locale a.site-footer__locale-link > .xsample-ul-line,
html body a.site-footer__locale-link > .xsample-ul-line,
html body .site-footer__locale a.site-footer__locale-link.site-footer__find-store > .xsample-ul-line,
html body a.site-footer__locale-link.site-footer__find-store > .xsample-ul-line {
  clip-path: inset(0 0 0 0);
  animation: none !important;
}

html body .site-footer__locale a.site-footer__locale-link:hover > .xsample-ul-line,
html body .site-footer__locale a.site-footer__locale-link:focus-visible > .xsample-ul-line,
html body a.site-footer__locale-link:hover > .xsample-ul-line,
html body a.site-footer__locale-link:focus-visible > .xsample-ul-line,
html body .site-footer__locale a.site-footer__locale-link.site-footer__find-store:hover > .xsample-ul-line,
html body .site-footer__locale a.site-footer__locale-link.site-footer__find-store:focus-visible > .xsample-ul-line,
html body a.site-footer__locale-link.site-footer__find-store:hover > .xsample-ul-line,
html body a.site-footer__locale-link.site-footer__find-store:focus-visible > .xsample-ul-line {
  transform: none !important;
  scale: none !important;
  animation: xsample-ul-locale-clip-ltr 0.9s linear forwards !important;
  animation-name: xsample-ul-locale-clip-ltr !important;
  animation-duration: 0.9s !important;
  animation-timing-function: linear !important;
  animation-fill-mode: forwards !important;
}


/* —— Pass 20260805ci — locale clip wipe actually runs (unlocked clip-path) —— */
html body .site-footer__locale a.site-footer__locale-link.site-footer__find-store > .xsample-ul-line,
html body a.site-footer__locale-link.site-footer__find-store > .xsample-ul-line,
html body .site-footer__locale a.site-footer__locale-link > .xsample-ul-line,
html body a.site-footer__locale-link > .xsample-ul-line {
  transform: none !important;
  scale: none !important;
  clip-path: inset(0 0 0 0);
  -webkit-clip-path: inset(0 0 0 0);
  animation: none;
}
html body .site-footer__locale a.site-footer__locale-link.site-footer__find-store:hover > .xsample-ul-line,
html body .site-footer__locale a.site-footer__locale-link.site-footer__find-store:focus-visible > .xsample-ul-line,
html body a.site-footer__locale-link.site-footer__find-store:hover > .xsample-ul-line,
html body a.site-footer__locale-link.site-footer__find-store:focus-visible > .xsample-ul-line,
html body .site-footer__locale a.site-footer__locale-link:hover > .xsample-ul-line,
html body .site-footer__locale a.site-footer__locale-link:focus-visible > .xsample-ul-line,
html body a.site-footer__locale-link:hover > .xsample-ul-line,
html body a.site-footer__locale-link:focus-visible > .xsample-ul-line {
  transform: none !important;
  scale: none !important;
  animation: xsample-ul-locale-clip-ltr 0.9s linear forwards !important;
  animation-name: xsample-ul-locale-clip-ltr !important;
  animation-duration: 0.9s !important;
}

/* —— Pass 20260805cj — Discover: full line at rest, clip wipe (NO scale zoom) —— */
html body a.site-essentials-hub__sub-right,
html body .site-essentials-hub__sub-right {
  position: relative !important;
  display: inline-block !important;
  width: fit-content !important;
  padding: 0 0 3px !important;
  border: 0 !important;
  text-decoration: none !important;
  background-image: none !important;
  font-weight: 400 !important;
}
html body a.site-essentials-hub__sub-right::before,
html body a.site-essentials-hub__sub-right::after,
html body .site-essentials-hub__sub-right::before,
html body .site-essentials-hub__sub-right::after,
html body a.site-essentials-hub__sub-right:hover::before,
html body a.site-essentials-hub__sub-right:hover::after,
html body .site-essentials-hub__sub-right:hover::before,
html body .site-essentials-hub__sub-right:hover::after {
  content: none !important;
  display: none !important;
  width: 0 !important;
  height: 0 !important;
  transform: none !important;
  animation: none !important;
}
html body a.site-essentials-hub__sub-right > .xsample-ul-line,
html body .site-essentials-hub__sub-right > .xsample-ul-line,
html body a.site-essentials-hub__sub-right:hover > .xsample-ul-line,
html body a.site-essentials-hub__sub-right:focus-visible > .xsample-ul-line,
html body .site-essentials-hub__sub-right:hover > .xsample-ul-line,
html body .site-essentials-hub__sub-right:focus-visible > .xsample-ul-line {
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  max-width: none !important;
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  background: #000 !important;
  background-color: #000 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: none !important;
  transform: none !important;
  transform-origin: left center !important;
  scale: none !important;
  transition: none !important;
}
html body a.site-essentials-hub__sub-right > .xsample-ul-line,
html body .site-essentials-hub__sub-right > .xsample-ul-line {
  clip-path: inset(0 0 0 0);
  -webkit-clip-path: inset(0 0 0 0);
  animation: none !important;
}
html body a.site-essentials-hub__sub-right:hover > .xsample-ul-line,
html body a.site-essentials-hub__sub-right:focus-visible > .xsample-ul-line,
html body .site-essentials-hub__sub-right:hover > .xsample-ul-line,
html body .site-essentials-hub__sub-right:focus-visible > .xsample-ul-line {
  transform: none !important;
  scale: none !important;
  animation: xsample-ul-locale-clip-ltr 0.9s linear forwards !important;
  animation-name: xsample-ul-locale-clip-ltr !important;
  animation-duration: 0.9s !important;
}

/* —— Pass 20260805cj — Discover: full line at rest, clip wipe (NO scale zoom) —— */
html body a.site-essentials-hub__sub-right,
html body .site-essentials-hub__sub-right {
  position: relative !important;
  display: inline-block !important;
  width: fit-content !important;
  padding: 0 0 3px !important;
  border: 0 !important;
  text-decoration: none !important;
  background-image: none !important;
  font-weight: 400 !important;
}
html body a.site-essentials-hub__sub-right::before,
html body a.site-essentials-hub__sub-right::after,
html body .site-essentials-hub__sub-right::before,
html body .site-essentials-hub__sub-right::after,
html body a.site-essentials-hub__sub-right:hover::before,
html body a.site-essentials-hub__sub-right:hover::after,
html body .site-essentials-hub__sub-right:hover::before,
html body .site-essentials-hub__sub-right:hover::after {
  content: none !important;
  display: none !important;
  width: 0 !important;
  height: 0 !important;
  transform: none !important;
  animation: none !important;
}
html body a.site-essentials-hub__sub-right > .xsample-ul-line,
html body .site-essentials-hub__sub-right > .xsample-ul-line,
html body a.site-essentials-hub__sub-right:hover > .xsample-ul-line,
html body a.site-essentials-hub__sub-right:focus-visible > .xsample-ul-line,
html body .site-essentials-hub__sub-right:hover > .xsample-ul-line,
html body .site-essentials-hub__sub-right:focus-visible > .xsample-ul-line {
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  max-width: none !important;
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  background: #000 !important;
  background-color: #000 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: none !important;
  transform: none !important;
  transform-origin: left center !important;
  scale: none !important;
  transition: none !important;
}
html body a.site-essentials-hub__sub-right > .xsample-ul-line,
html body .site-essentials-hub__sub-right > .xsample-ul-line {
  clip-path: inset(0 0 0 0);
  -webkit-clip-path: inset(0 0 0 0);
  animation: none !important;
}
html body a.site-essentials-hub__sub-right:hover > .xsample-ul-line,
html body a.site-essentials-hub__sub-right:focus-visible > .xsample-ul-line,
html body .site-essentials-hub__sub-right:hover > .xsample-ul-line,
html body .site-essentials-hub__sub-right:focus-visible > .xsample-ul-line {
  transform: none !important;
  scale: none !important;
  animation: xsample-ul-locale-clip-ltr 0.9s linear forwards !important;
  animation-name: xsample-ul-locale-clip-ltr !important;
  animation-duration: 0.9s !important;
}


/* —— Pass 20260805ck — ALL stay links same: 1px, no zoom, clip L→R wipe —— */
@keyframes xsample-stay-ul-clip {
  0%   { clip-path: inset(0 0 0 0); -webkit-clip-path: inset(0 0 0 0); }
  45%  { clip-path: inset(0 0 0 100%); -webkit-clip-path: inset(0 0 0 100%); }
  46%  { clip-path: inset(0 100% 0 0); -webkit-clip-path: inset(0 100% 0 0); }
  100% { clip-path: inset(0 0 0 0); -webkit-clip-path: inset(0 0 0 0); }
}

html body a.xsample-stay-ul,
html body .xsample-stay-ul,
html body a.site-footer__find-store,
html body .site-footer__find-store,
html body a.site-footer__locale-link,
html body .site-footer__locale-link,
html body a.site-essentials-hub__sub-right,
html body .site-essentials-hub__sub-right {
  position: relative !important;
  display: inline-block !important;
  width: fit-content !important;
  max-width: 100% !important;
  padding: 0 0 3px !important;
  border: 0 !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
  text-decoration: none !important;
  background: none !important;
  background-image: none !important;
  font-weight: 400 !important;
  font-synthesis: none !important;
  -webkit-text-stroke: 0 !important;
  text-shadow: none !important;
  color: #000 !important;
}

html body a.xsample-stay-ul::before,
html body a.xsample-stay-ul::after,
html body .xsample-stay-ul::before,
html body .xsample-stay-ul::after,
html body a.site-footer__find-store::before,
html body a.site-footer__find-store::after,
html body a.site-footer__locale-link::before,
html body a.site-footer__locale-link::after,
html body a.site-essentials-hub__sub-right::before,
html body a.site-essentials-hub__sub-right::after,
html body a.xsample-stay-ul:hover::before,
html body a.xsample-stay-ul:hover::after,
html body a.site-footer__find-store:hover::before,
html body a.site-footer__find-store:hover::after,
html body a.site-footer__locale-link:hover::before,
html body a.site-footer__locale-link:hover::after,
html body a.site-essentials-hub__sub-right:hover::before,
html body a.site-essentials-hub__sub-right:hover::after {
  content: none !important;
  display: none !important;
  animation: none !important;
  transform: none !important;
  width: 0 !important;
  height: 0 !important;
  background: none !important;
}

html body a.xsample-stay-ul > .xsample-ul-line,
html body .xsample-stay-ul > .xsample-ul-line,
html body a.site-footer__find-store > .xsample-ul-line,
html body .site-footer__find-store > .xsample-ul-line,
html body a.site-footer__locale-link > .xsample-ul-line,
html body .site-footer__locale-link > .xsample-ul-line,
html body a.site-essentials-hub__sub-right > .xsample-ul-line,
html body .site-essentials-hub__sub-right > .xsample-ul-line,
html body a.xsample-stay-ul:hover > .xsample-ul-line,
html body a.xsample-stay-ul:focus-visible > .xsample-ul-line,
html body a.site-footer__find-store:hover > .xsample-ul-line,
html body a.site-footer__find-store:focus-visible > .xsample-ul-line,
html body a.site-footer__locale-link:hover > .xsample-ul-line,
html body a.site-footer__locale-link:focus-visible > .xsample-ul-line,
html body a.site-essentials-hub__sub-right:hover > .xsample-ul-line,
html body a.site-essentials-hub__sub-right:focus-visible > .xsample-ul-line {
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  max-width: none !important;
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: #000 !important;
  background-color: #000 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: none !important;
  transform: none !important;
  scale: none !important;
  transition: none !important;
}

html body a.xsample-stay-ul > .xsample-ul-line,
html body .xsample-stay-ul > .xsample-ul-line,
html body a.site-footer__find-store > .xsample-ul-line,
html body .site-footer__find-store > .xsample-ul-line,
html body a.site-footer__locale-link > .xsample-ul-line,
html body .site-footer__locale-link > .xsample-ul-line,
html body a.site-essentials-hub__sub-right > .xsample-ul-line,
html body .site-essentials-hub__sub-right > .xsample-ul-line {
  clip-path: inset(0 0 0 0);
  -webkit-clip-path: inset(0 0 0 0);
  animation: none !important;
}

html body a.xsample-stay-ul:hover > .xsample-ul-line,
html body a.xsample-stay-ul:focus-visible > .xsample-ul-line,
html body a.site-footer__find-store:hover > .xsample-ul-line,
html body a.site-footer__find-store:focus-visible > .xsample-ul-line,
html body a.site-footer__locale-link:hover > .xsample-ul-line,
html body a.site-footer__locale-link:focus-visible > .xsample-ul-line,
html body a.site-essentials-hub__sub-right:hover > .xsample-ul-line,
html body a.site-essentials-hub__sub-right:focus-visible > .xsample-ul-line {
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  background: #000 !important;
  transform: none !important;
  scale: none !important;
  animation: xsample-stay-ul-clip 0.9s linear forwards !important;
  animation-name: xsample-stay-ul-clip !important;
  animation-duration: 0.9s !important;
  animation-timing-function: linear !important;
  animation-fill-mode: forwards !important;
}

/* —— Pass 20260805cl — FORCE identical stay underline on all 4 links —— */
@keyframes xsample-stay-ul-clip {
  0%   { clip-path: inset(0 0 0 0); -webkit-clip-path: inset(0 0 0 0); }
  45%  { clip-path: inset(0 0 0 100%); -webkit-clip-path: inset(0 0 0 100%); }
  46%  { clip-path: inset(0 100% 0 0); -webkit-clip-path: inset(0 100% 0 0); }
  100% { clip-path: inset(0 0 0 0); -webkit-clip-path: inset(0 0 0 0); }
}
/* keep old name as identical twin so leftover rules still wipe correctly */
@keyframes xsample-ul-locale-clip-ltr {
  0%   { clip-path: inset(0 0 0 0); -webkit-clip-path: inset(0 0 0 0); }
  45%  { clip-path: inset(0 0 0 100%); -webkit-clip-path: inset(0 0 0 100%); }
  46%  { clip-path: inset(0 100% 0 0); -webkit-clip-path: inset(0 100% 0 0); }
  100% { clip-path: inset(0 0 0 0); -webkit-clip-path: inset(0 0 0 0); }
}

html body a.xsample-stay-ul > .xsample-ul-line,
html body .xsample-stay-ul > .xsample-ul-line,
html body a.site-footer__find-store.xsample-stay-ul > .xsample-ul-line,
html body a.site-footer__locale-link.xsample-stay-ul > .xsample-ul-line,
html body a.site-essentials-hub__sub-right.xsample-stay-ul > .xsample-ul-line {
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  background: #000 !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  scale: none !important;
  clip-path: inset(0 0 0 0);
  -webkit-clip-path: inset(0 0 0 0);
  animation: none !important;
  animation-name: none !important;
  transition: none !important;
}

html body a.xsample-stay-ul:hover > .xsample-ul-line,
html body a.xsample-stay-ul:focus-visible > .xsample-ul-line,
html body a.site-footer__find-store.xsample-stay-ul:hover > .xsample-ul-line,
html body a.site-footer__find-store.xsample-stay-ul:focus-visible > .xsample-ul-line,
html body a.site-footer__locale-link.xsample-stay-ul:hover > .xsample-ul-line,
html body a.site-footer__locale-link.xsample-stay-ul:focus-visible > .xsample-ul-line,
html body a.site-essentials-hub__sub-right.xsample-stay-ul:hover > .xsample-ul-line,
html body a.site-essentials-hub__sub-right.xsample-stay-ul:focus-visible > .xsample-ul-line {
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  background: #000 !important;
  transform: none !important;
  scale: none !important;
  animation: none !important;
  animation-name: xsample-stay-ul-clip !important;
  animation-duration: 0.9s !important;
  animation-timing-function: linear !important;
  animation-delay: 0s !important;
  animation-iteration-count: 1 !important;
  animation-direction: normal !important;
  animation-fill-mode: forwards !important;
  animation-play-state: running !important;
}

/* —— Pass 20260805cm — locale must use same anim name as Find/Discover —— */
html body .site-footer__locale a.site-footer__locale-link.site-footer__find-store.xsample-stay-ul:hover > .xsample-ul-line,
html body .site-footer__locale a.site-footer__locale-link.site-footer__find-store.xsample-stay-ul:focus-visible > .xsample-ul-line,
html body a.site-footer__locale-link.site-footer__find-store.xsample-stay-ul:hover > .xsample-ul-line,
html body a.site-footer__locale-link.site-footer__find-store.xsample-stay-ul:focus-visible > .xsample-ul-line {
  animation-name: xsample-stay-ul-clip !important;
  animation-duration: 0.9s !important;
  animation-timing-function: linear !important;
  animation-fill-mode: forwards !important;
  transform: none !important;
  height: 1px !important;
  background: #000 !important;
}


/* —— Pass 20260805cn — stay-ul: lock letter-spacing so locale links don't shrink on hover —— */
html body a.xsample-stay-ul,
html body a.xsample-stay-ul:hover,
html body a.xsample-stay-ul:focus-visible,
html body a.xsample-stay-ul:active,
html body a.site-footer__find-store,
html body a.site-footer__find-store:hover,
html body a.site-footer__find-store:focus-visible,
html body a.site-footer__find-store:active,
html body a.site-footer__locale-link,
html body a.site-footer__locale-link:hover,
html body a.site-footer__locale-link:focus-visible,
html body a.site-footer__locale-link:active,
html body .site-footer__locale a,
html body .site-footer__locale a:hover,
html body .site-footer__locale a:focus-visible,
html body .site-footer__locale a:active,
html body a.site-essentials-hub__sub-right,
html body a.site-essentials-hub__sub-right:hover,
html body a.site-essentials-hub__sub-right:focus-visible,
html body a.site-essentials-hub__sub-right:active {
  letter-spacing: normal !important;
}


/* —— Pass 20260805co — top route progress bar (SPA nav) —— */
#xsample-route-progress {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: auto !important;
  height: 2px !important;
  min-height: 2px !important;
  max-height: 2px !important;
  z-index: 2147483646 !important;
  pointer-events: none !important;
  background: #000 !important;
  background-color: #000 !important;
  transform-origin: left center !important;
  will-change: width, opacity;
}
#xsample-route-progress.is-idle {
  opacity: 0 !important;
  transition: none !important;
}
#xsample-route-progress.is-active {
  opacity: 1 !important;
  transition: width 0.28s ease-out, opacity 0.15s ease-out !important;
}


/* —— Pass 20260805cp — cookie banner links = stay underline (solid + clip wipe) —— */
html body .cookie-banner__link.xsample-stay-ul,
html body button.cookie-banner__link.xsample-stay-ul {
  position: relative !important;
  display: inline-block !important;
  width: fit-content !important;
  max-width: 100% !important;
  padding: 0 0 3px !important;
  margin: 0 !important;
  border: 0 !important;
  border-bottom: 0 !important;
  background: none !important;
  background-image: none !important;
  box-shadow: none !important;
  color: #000 !important;
  font-weight: 400 !important;
  font-synthesis: none !important;
  letter-spacing: normal !important;
  text-decoration: none !important;
  -webkit-text-stroke: 0 !important;
  text-shadow: none !important;
  cursor: pointer !important;
  opacity: 1 !important;
}
html body .cookie-banner__link.xsample-stay-ul::before,
html body .cookie-banner__link.xsample-stay-ul::after,
html body button.cookie-banner__link.xsample-stay-ul::before,
html body button.cookie-banner__link.xsample-stay-ul::after {
  content: none !important;
  display: none !important;
  background: none !important;
  border: 0 !important;
  transform: none !important;
  animation: none !important;
}
html body .cookie-banner__link.xsample-stay-ul > .xsample-ul-line,
html body button.cookie-banner__link.xsample-stay-ul > .xsample-ul-line {
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: #000 !important;
  background-color: #000 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: none !important;
  transform: none !important;
  scale: none !important;
  clip-path: inset(0 0 0 0);
  -webkit-clip-path: inset(0 0 0 0);
  animation: none !important;
  animation-name: none !important;
  transition: none !important;
}
html body .cookie-banner__link.xsample-stay-ul:hover > .xsample-ul-line,
html body .cookie-banner__link.xsample-stay-ul:focus-visible > .xsample-ul-line,
html body button.cookie-banner__link.xsample-stay-ul:hover > .xsample-ul-line,
html body button.cookie-banner__link.xsample-stay-ul:focus-visible > .xsample-ul-line {
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  background: #000 !important;
  transform: none !important;
  scale: none !important;
  animation: none !important;
  animation-name: xsample-stay-ul-clip !important;
  animation-duration: 0.9s !important;
  animation-timing-function: linear !important;
  animation-delay: 0s !important;
  animation-iteration-count: 1 !important;
  animation-direction: normal !important;
  animation-fill-mode: forwards !important;
  animation-play-state: running !important;
}


/* —— Pass 20260805cq — kill legacy cookie ::after (higher specificity) —— */
html body div.cookie-banner button.cookie-banner__link.xsample-stay-ul::before,
html body div.cookie-banner button.cookie-banner__link.xsample-stay-ul::after,
html body #cookie-banner .cookie-banner__link.xsample-stay-ul::before,
html body #cookie-banner .cookie-banner__link.xsample-stay-ul::after,
html body #cookie-banner button.cookie-banner__link.xsample-stay-ul::before,
html body #cookie-banner button.cookie-banner__link.xsample-stay-ul::after,
html body .cookie-banner button.cookie-banner__link.xsample-stay-ul::before,
html body .cookie-banner button.cookie-banner__link.xsample-stay-ul::after,
html body button.cookie-banner__link.xsample-stay-ul::before,
html body button.cookie-banner__link.xsample-stay-ul::after {
  content: none !important;
  display: none !important;
  width: 0 !important;
  height: 0 !important;
  max-height: 0 !important;
  opacity: 0 !important;
  visibility: hidden !important;
  background: none !important;
  background-color: transparent !important;
  border: 0 !important;
  transform: none !important;
  scale: none !important;
  animation: none !important;
  transition: none !important;
  pointer-events: none !important;
}
html body div.cookie-banner button.cookie-banner__link.xsample-stay-ul:hover::after,
html body div.cookie-banner button.cookie-banner__link.xsample-stay-ul:focus-visible::after,
html body #cookie-banner .cookie-banner__link.xsample-stay-ul:hover::after,
html body #cookie-banner .cookie-banner__link.xsample-stay-ul:focus-visible::after,
html body #cookie-banner button.cookie-banner__link.xsample-stay-ul:hover::after,
html body #cookie-banner button.cookie-banner__link.xsample-stay-ul:focus-visible::after,
html body .cookie-banner button.cookie-banner__link.xsample-stay-ul:hover::after,
html body .cookie-banner button.cookie-banner__link.xsample-stay-ul:focus-visible::after {
  content: none !important;
  display: none !important;
  transform: none !important;
  opacity: 0 !important;
  height: 0 !important;
  animation: none !important;
}


/* —— Pass 20260805cr — legal pages: BV type, underline BELOW, mobile grey —— */
/* NOTE: do NOT force * { font-weight:400 } — it blocks LEGAL PAGES / headlines at 500 */
html body main.l-legalpages,
html body main.site-legal.l-legalpages {
  font-weight: 400 !important;
  font-synthesis: weight !important;
}

/* LEGAL PAGES header — 17px / 400 */
html body .l-legalpages__title {
  font-size: 17px !important;
  font-weight: 400 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  margin: 0 0 22px !important;
  line-height: 1.35 !important;
  color: #000 !important;
}

/* Sidebar / tab links — 15px / 400; underline sits BELOW text */
html body a.l-legalpages__accordiontitle,
html body a.l-legalpages__assettitle,
html body .l-legalpages__assettitle,
html body a.l-legalpages__accordiontitle.xsample-stay-ul {
  position: relative !important;
  display: inline-block !important;
  width: fit-content !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 0 4px !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  color: #000 !important;
  background: none !important;
  background-image: none !important;
  line-height: 1.35 !important;
  -webkit-text-stroke: 0 !important;
  text-shadow: none !important;
}
html body a.l-legalpages__accordiontitle::before,
html body a.l-legalpages__accordiontitle::after,
html body a.l-legalpages__assettitle::before,
html body a.l-legalpages__assettitle::after {
  content: none !important;
  display: none !important;
}

/* Line UNDER the label (bottom of padding) — never above glyphs */
html body a.l-legalpages__accordiontitle > .xsample-ul-line,
html body a.l-legalpages__accordiontitle > .l-legalpages__nav-line,
html body a.l-legalpages__accordiontitle.xsample-stay-ul > .xsample-ul-line {
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  top: auto !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: #000 !important;
  background-color: #000 !important;
  pointer-events: none !important;
  transform: none !important;
  scale: none !important;
  transition: none !important;
  clip-path: inset(0 0 0 0);
  -webkit-clip-path: inset(0 0 0 0);
  opacity: 0 !important;
  visibility: hidden !important;
  animation: none !important;
  animation-name: none !important;
}

/* Hover / focus: clip wipe (same stay-ul system) */
html body a.l-legalpages__accordiontitle:hover > .xsample-ul-line,
html body a.l-legalpages__accordiontitle:focus-visible > .xsample-ul-line,
html body a.l-legalpages__accordiontitle.xsample-stay-ul:hover > .xsample-ul-line,
html body a.l-legalpages__accordiontitle.xsample-stay-ul:focus-visible > .xsample-ul-line {
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  animation: none !important;
  animation-name: xsample-stay-ul-clip !important;
  animation-duration: 0.9s !important;
  animation-timing-function: linear !important;
  animation-fill-mode: forwards !important;
  animation-play-state: running !important;
}

/* Active / clicked: solid underline stays under the label */
html body a.l-legalpages__accordiontitle.c-accordion__trigger--selected > .xsample-ul-line,
html body a.l-legalpages__accordiontitle.is-active > .xsample-ul-line,
html body a.l-legalpages__accordiontitle[aria-current="page"] > .xsample-ul-line,
html body .l-legalpages__content.is-active a.l-legalpages__accordiontitle > .xsample-ul-line {
  opacity: 1 !important;
  visibility: visible !important;
  clip-path: inset(0 0 0 0) !important;
  -webkit-clip-path: inset(0 0 0 0) !important;
  transform: none !important;
  animation: none !important;
  animation-name: none !important;
}
/* Active + hover still gets wipe restart */
html body a.l-legalpages__accordiontitle.c-accordion__trigger--selected:hover > .xsample-ul-line,
html body a.l-legalpages__accordiontitle[aria-current="page"]:hover > .xsample-ul-line {
  animation: none !important;
  animation-name: xsample-stay-ul-clip !important;
  animation-duration: 0.9s !important;
  animation-timing-function: linear !important;
  animation-fill-mode: forwards !important;
}

/* Content type — 15px / 400 everywhere */
html body .l-legalpages__headline {
  font-size: 15px !important;
  font-weight: 400 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
  margin: 0 0 14px !important;
  line-height: 1.35 !important;
  color: #000 !important;
}
html body .l-legalpages__effective {
  font-size: 15px !important;
  font-weight: 400 !important;
  margin: 0 0 22px !important;
  line-height: 1.35 !important;
  color: #000 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}
html body .l-legalpages__p,
html body .c-expander__content .l-legalpages__p,
html body .l-legalpages__section-body .l-legalpages__p {
  font-size: 15px !important;
  font-weight: 400 !important;
  line-height: 1.35 !important;
  margin: 0 0 14px !important;
  color: #000 !important;
  letter-spacing: 0 !important;
  text-align: left !important;
}

/* Cookie settings CTA — solid black like BV */
html body .l-legalpages__cookie-btn,
html body button.l-legalpages__cookie-btn,
html body #ot-sdk-btn.l-legalpages__cookie-btn {
  display: inline-block !important;
  margin: 4px 0 20px !important;
  padding: 10px 18px !important;
  border: 1px solid #000 !important;
  background: #000 !important;
  color: #fff !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  cursor: pointer !important;
  line-height: 1.35 !important;
}
html body .l-legalpages__cookie-btn:hover {
  background: #fff !important;
  color: #000 !important;
}

/* Read more — stay underline */
html body .c-expander__btn.xsample-stay-ul,
html body button.c-expander__btn {
  position: relative !important;
  display: inline-block !important;
  padding: 0 0 4px !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  color: #000 !important;
  background: none !important;
  border: 0 !important;
}
html body .c-expander__btn::after {
  content: none !important;
  display: none !important;
}
html body .c-expander__btn.xsample-stay-ul > .xsample-ul-line {
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  top: auto !important;
  height: 1px !important;
  background: #000 !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  clip-path: inset(0 0 0 0);
  animation: none !important;
}
html body .c-expander__btn.xsample-stay-ul:hover > .xsample-ul-line {
  animation-name: xsample-stay-ul-clip !important;
  animation-duration: 0.9s !important;
  animation-timing-function: linear !important;
  animation-fill-mode: forwards !important;
}

/* Privacy-style accordion sections + grey dividers */
html body .l-legalpages__sections {
  margin: 8px 0 0 !important;
  padding: 0 !important;
  border-top: 1px solid #d0d0d0 !important;
}
html body .l-legalpages__section {
  margin: 0 !important;
  padding: 0 !important;
  border-bottom: 1px solid #d0d0d0 !important;
}
html body .l-legalpages__section-btn {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 16px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 16px 0 !important;
  border: 0 !important;
  background: none !important;
  color: #000 !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
  text-align: left !important;
  line-height: 1.35 !important;
  cursor: pointer !important;
}
html body .l-legalpages__section-toggle {
  flex: 0 0 auto !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  line-height: 1.35 !important;
}
html body .l-legalpages__section-body {
  padding: 0 0 16px !important;
}
html body .l-legalpages__section-body .l-legalpages__p:last-child {
  margin-bottom: 0 !important;
}

/* Desktop sidebar spacing */
html body .l-legalpages__folderscarouselwrapper {
  gap: 14px !important;
}

/* Mobile: horizontal tabs + GREY row rule (not black); link underline under text only */
@media (max-width: 899px) {
  html body .l-legalpages__title {
    font-size: 17px !important;
    margin-bottom: 18px !important;
  }
  html body .l-legalpages__folderscarouselwrapper {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: flex-end !important;
    gap: 22px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
    padding: 0 0 10px !important;
    margin: 0 0 8px !important;
    border-bottom: 1px solid #d0d0d0 !important; /* grey like BV mobile */
    width: 100% !important;
  }
  html body .l-legalpages__folderscarouselwrapper::-webkit-scrollbar {
    display: none !important;
  }
  html body a.l-legalpages__accordiontitle,
  html body .l-legalpages__assettitle {
    font-size: 15px !important;
    white-space: nowrap !important;
    padding-bottom: 4px !important;
  }
  /* Active black underline sits just above the grey bar, under the word */
  html body a.l-legalpages__accordiontitle > .xsample-ul-line,
  html body a.l-legalpages__accordiontitle > .l-legalpages__nav-line {
    bottom: 0 !important;
    top: auto !important;
  }
  html body .l-legalpages__headline,
  html body .l-legalpages__effective,
  html body .l-legalpages__p,
  html body .l-legalpages__section-btn,
  html body .l-legalpages__cookie-btn,
  html body button.c-expander__btn {
    font-size: 15px !important;
  }
}


/* —— Pass 20260805cs — legal: 18px heading, site LS, mobile grey in-between —— */
html body main.l-legalpages,
html body main.site-legal.l-legalpages {
  -webkit-font-smoothing: antialiased !important;
  -moz-osx-font-smoothing: grayscale !important;
  text-rendering: geometricPrecision !important;
  font-family: var(--font-sans) !important;
  color: var(--color-ink) !important;
}

/* Do NOT force * letter-spacing — restore site deps per element */
html body main.l-legalpages,
html body main.site-legal.l-legalpages,
html body main.l-legalpages .l-legalpages__p,
html body main.l-legalpages .l-legalpages__effective,
html body main.l-legalpages .l-legalpages__section-body .l-legalpages__p,
html body main.l-legalpages .c-expander__content .l-legalpages__p {
  letter-spacing: var(--ls-body) !important;
}

/* LEGAL PAGES — 18px / 400 + site heading tracking */
html body .l-legalpages__title {
  font-size: 18px !important;
  font-weight: 400 !important;
  letter-spacing: var(--ls-heading) !important;
  text-transform: uppercase !important;
  margin: 0 0 24px !important;
  line-height: 1.35 !important;
  color: #000 !important;
  -webkit-font-smoothing: antialiased !important;
}

/* Nav links — 15px, body LS (site default), uppercase */
html body a.l-legalpages__accordiontitle,
html body a.l-legalpages__assettitle,
html body .l-legalpages__assettitle,
html body a.l-legalpages__accordiontitle.xsample-stay-ul {
  font-size: 15px !important;
  font-weight: 400 !important;
  letter-spacing: var(--ls-body) !important;
  line-height: 1.35 !important;
  padding: 0 0 5px !important;
  -webkit-font-smoothing: antialiased !important;
}

html body .l-legalpages__headline {
  font-size: 15px !important;
  font-weight: 400 !important;
  letter-spacing: var(--ls-body) !important;
  text-transform: uppercase !important;
  line-height: 1.35 !important;
  margin: 0 0 16px !important;
}

html body .l-legalpages__effective {
  font-size: 15px !important;
  font-weight: 400 !important;
  letter-spacing: var(--ls-body) !important;
  margin: 0 0 24px !important;
  line-height: 1.35 !important;
  text-transform: none !important;
}

html body .l-legalpages__p,
html body .c-expander__content .l-legalpages__p,
html body .l-legalpages__section-body .l-legalpages__p {
  font-size: 15px !important;
  font-weight: 400 !important;
  letter-spacing: var(--ls-body) !important;
  line-height: 1.35 !important;
  margin: 0 0 16px !important;
  max-width: 42rem !important;
}

html body .l-legalpages__cookie-btn,
html body button.l-legalpages__cookie-btn,
html body #ot-sdk-btn.l-legalpages__cookie-btn {
  font-size: 15px !important;
  font-weight: 400 !important;
  letter-spacing: var(--ls-body) !important;
  -webkit-font-smoothing: antialiased !important;
}

html body .c-expander__btn,
html body button.c-expander__btn,
html body .c-expander__btn.xsample-stay-ul {
  font-size: 15px !important;
  font-weight: 400 !important;
  letter-spacing: var(--ls-body) !important;
}

html body .l-legalpages__section-btn {
  font-size: 15px !important;
  font-weight: 400 !important;
  letter-spacing: var(--ls-body) !important;
  -webkit-font-smoothing: antialiased !important;
}

/* Content column — match BV breathing room */
html body .l-legalpages__foldercontents,
html body .l-legalpages__legalpageContent {
  max-width: 680px !important;
}

html body .l-legalpages__folderscarouselwrapper {
  gap: 16px !important;
}

/* Desktop sticky sidebar breathing */
@media (min-width: 900px) {
  html body .l-legalpages__wrapper {
    column-gap: clamp(48px, 8vw, 112px) !important;
  }
  html body .l-legalpages__title {
    margin-bottom: 28px !important;
  }
  html body .l-legalpages__folderscarouselwrapper {
    gap: 18px !important;
  }
}

/* Mobile: grey rule sits BETWEEN tab labels and content (text → black UL → gap → grey → content) */
@media (max-width: 899px) {
  html body main.l-legalpages,
  html body main.site-legal.l-legalpages {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
  html body .l-legalpages__title {
    font-size: 18px !important;
    letter-spacing: var(--ls-heading) !important;
    margin: 0 0 20px !important;
  }
  html body .l-legalpages__infos {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
  }
  html body .l-legalpages__folderscarouselwrapper {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: flex-end !important;
    gap: 24px !important;
    width: 100% !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
    /* space under labels for black active line, then grey bar below that */
    padding: 0 0 8px !important;
    margin: 0 0 0 !important;
    border: 0 !important;
    border-bottom: 0 !important;
    box-shadow: inset 0 -1px 0 #d0d0d0 !important; /* grey line at bottom of nav strip */
  }
  html body .l-legalpages__folderscarouselwrapper::-webkit-scrollbar {
    display: none !important;
  }
  html body a.l-legalpages__accordiontitle,
  html body .l-legalpages__assettitle {
    font-size: 15px !important;
    letter-spacing: var(--ls-body) !important;
    white-space: nowrap !important;
    padding-bottom: 6px !important; /* black UL sits in this padding, above grey rule */
  }
  html body a.l-legalpages__accordiontitle > .xsample-ul-line,
  html body a.l-legalpages__accordiontitle > .l-legalpages__nav-line {
    bottom: 0 !important; /* within link padding — between glyphs and grey bar */
    top: auto !important;
  }
  /* gap between grey nav rule and page content */
  html body .l-legalpages__foldercontents {
    margin-top: 28px !important;
    max-width: none !important;
  }
  html body .l-legalpages__wrapper {
    gap: 0 !important;
  }
  /* accordion grey dividers — full width, between items */
  html body .l-legalpages__sections {
    border-top: 1px solid #d0d0d0 !important;
    margin-top: 12px !important;
  }
  html body .l-legalpages__section {
    border-bottom: 1px solid #d0d0d0 !important;
  }
  html body .l-legalpages__section-btn {
    padding: 18px 0 !important;
  }
}


html body .l-legalpages__subhead {
  font-size: 15px !important;
  font-weight: 400 !important;
  letter-spacing: var(--ls-body) !important;
  text-transform: none !important;
  margin: 20px 0 10px !important;
  line-height: 1.35 !important;
  color: #000 !important;
  -webkit-font-smoothing: antialiased !important;
}
html body .c-expander__content .l-legalpages__subhead:first-child {
  margin-top: 4px !important;
}


/* —— Pass 20260805ct — legal: heading 500, no neg LS, underline = stay-ul, mobile type —— */
html body main.l-legalpages,
html body main.site-legal.l-legalpages {
  background: #fff !important;
  color: #000 !important;
  font-family: var(--font-sans) !important;
  -webkit-font-smoothing: antialiased !important;
  -moz-osx-font-smoothing: grayscale !important;
  text-rendering: geometricPrecision !important;
}

/* LEGAL PAGES heading — 18px / 500 / NO negative letter-spacing */
html body .l-legalpages__title {
  font-size: 18px !important;
  font-weight: 500 !important;
  font-synthesis: weight !important;
  letter-spacing: normal !important;
  text-transform: uppercase !important;
  margin: 0 0 24px !important;
  line-height: 1.35 !important;
  color: #000 !important;
  background: transparent !important;
}

/* Nav links — 15px / 400 / normal LS (clean uppercase, not site -0.15) */
html body a.l-legalpages__accordiontitle,
html body a.l-legalpages__assettitle,
html body .l-legalpages__assettitle,
html body a.l-legalpages__accordiontitle.xsample-stay-ul {
  position: relative !important;
  display: inline-block !important;
  width: fit-content !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 0 3px !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  letter-spacing: normal !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  color: #000 !important;
  background: none !important;
  background-image: none !important;
  line-height: 1.35 !important;
  -webkit-text-stroke: 0 !important;
  text-shadow: none !important;
}
html body a.l-legalpages__accordiontitle::before,
html body a.l-legalpages__accordiontitle::after,
html body a.l-legalpages__assettitle::before,
html body a.l-legalpages__assettitle::after {
  content: none !important;
  display: none !important;
}

/* Underline UNDER text — same stay-ul clip system as Find store / cookie */
html body a.l-legalpages__accordiontitle > .xsample-ul-line,
html body a.l-legalpages__accordiontitle > .l-legalpages__nav-line,
html body a.l-legalpages__accordiontitle.xsample-stay-ul > .xsample-ul-line {
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  top: auto !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: #000 !important;
  background-color: #000 !important;
  pointer-events: none !important;
  transform: none !important;
  scale: none !important;
  transition: none !important;
  /* inactive: fully clipped (hidden) — NOT opacity fights with stay-ul */
  clip-path: inset(0 100% 0 0) !important;
  -webkit-clip-path: inset(0 100% 0 0) !important;
  opacity: 1 !important;
  visibility: visible !important;
  animation: none !important;
  animation-name: none !important;
}

/* Hover: same wipe as other stay-ul links */
html body a.l-legalpages__accordiontitle:hover > .xsample-ul-line,
html body a.l-legalpages__accordiontitle:focus-visible > .xsample-ul-line,
html body a.l-legalpages__accordiontitle.xsample-stay-ul:hover > .xsample-ul-line,
html body a.l-legalpages__accordiontitle.xsample-stay-ul:focus-visible > .xsample-ul-line {
  transform: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  animation: none !important;
  animation-name: xsample-stay-ul-clip !important;
  animation-duration: 0.9s !important;
  animation-timing-function: linear !important;
  animation-fill-mode: forwards !important;
  animation-play-state: running !important;
}

/* Active / clicked: solid underline under label (full line) */
html body a.l-legalpages__accordiontitle.c-accordion__trigger--selected > .xsample-ul-line,
html body a.l-legalpages__accordiontitle.is-active > .xsample-ul-line,
html body a.l-legalpages__accordiontitle[aria-current="page"] > .xsample-ul-line,
html body .l-legalpages__content.is-active a.l-legalpages__accordiontitle > .xsample-ul-line {
  clip-path: inset(0 0 0 0) !important;
  -webkit-clip-path: inset(0 0 0 0) !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  animation: none !important;
  animation-name: none !important;
}
html body a.l-legalpages__accordiontitle.c-accordion__trigger--selected:hover > .xsample-ul-line,
html body a.l-legalpages__accordiontitle[aria-current="page"]:hover > .xsample-ul-line {
  animation-name: xsample-stay-ul-clip !important;
  animation-duration: 0.9s !important;
  animation-timing-function: linear !important;
  animation-fill-mode: forwards !important;
}

/* Content — clean type matching site readability (no forced neg LS on caps headlines) */
html body .l-legalpages__headline {
  font-size: 15px !important;
  font-weight: 400 !important;
  letter-spacing: normal !important;
  text-transform: uppercase !important;
  line-height: 1.35 !important;
  margin: 0 0 16px !important;
  color: #000 !important;
  background: transparent !important;
}
html body .l-legalpages__effective {
  font-size: 15px !important;
  font-weight: 400 !important;
  letter-spacing: normal !important;
  line-height: 1.35 !important;
  margin: 0 0 22px !important;
  text-transform: none !important;
  color: #000 !important;
}
html body .l-legalpages__p,
html body .c-expander__content .l-legalpages__p,
html body .l-legalpages__section-body .l-legalpages__p {
  font-size: 15px !important;
  font-weight: 400 !important;
  letter-spacing: normal !important;
  line-height: 1.35 !important;
  margin: 0 0 16px !important;
  color: #000 !important;
  background: transparent !important;
  max-width: 42rem !important;
}
html body .l-legalpages__subhead {
  font-size: 15px !important;
  font-weight: 400 !important;
  letter-spacing: normal !important;
  line-height: 1.35 !important;
  margin: 22px 0 10px !important;
  color: #000 !important;
}

/* Cookie Settings CTA — uppercase solid black (BV) */
html body .l-legalpages__cookie-btn,
html body button.l-legalpages__cookie-btn,
html body #ot-sdk-btn.l-legalpages__cookie-btn {
  display: inline-block !important;
  margin: 8px 0 22px !important;
  padding: 12px 20px !important;
  border: 1px solid #000 !important;
  background: #000 !important;
  color: #fff !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  line-height: 1.35 !important;
  cursor: pointer !important;
}
html body .l-legalpages__cookie-btn:hover {
  background: #fff !important;
  color: #000 !important;
}

html body .c-expander__btn,
html body .c-expander__btn.xsample-stay-ul {
  font-size: 15px !important;
  font-weight: 400 !important;
  letter-spacing: normal !important;
  color: #000 !important;
  padding: 0 0 3px !important;
}
html body .c-expander__btn::after { content: none !important; display: none !important; }
html body .c-expander__btn.xsample-stay-ul > .xsample-ul-line {
  display: block !important;
  position: absolute !important;
  left: 0 !important; right: 0 !important; bottom: 0 !important; top: auto !important;
  height: 1px !important;
  background: #000 !important;
  opacity: 1 !important;
  transform: none !important;
  clip-path: inset(0 0 0 0);
  animation: none !important;
}
html body .c-expander__btn.xsample-stay-ul:hover > .xsample-ul-line {
  animation-name: xsample-stay-ul-clip !important;
  animation-duration: 0.9s !important;
  animation-timing-function: linear !important;
  animation-fill-mode: forwards !important;
}

html body .l-legalpages__folderscarouselwrapper { gap: 16px !important; }
html body .l-legalpages__foldercontents,
html body .l-legalpages__legalpageContent { max-width: 680px !important; background: transparent !important; }

html body .l-legalpages__sections {
  margin-top: 8px !important;
  border-top: 1px solid #d0d0d0 !important;
}
html body .l-legalpages__section {
  border-bottom: 1px solid #d0d0d0 !important;
}
html body .l-legalpages__section-btn {
  font-size: 15px !important;
  font-weight: 400 !important;
  letter-spacing: normal !important;
  text-transform: uppercase !important;
  line-height: 1.35 !important;
  padding: 18px 0 !important;
  color: #000 !important;
  background: none !important;
}

@media (min-width: 900px) {
  html body .l-legalpages__title {
    font-size: 18px !important;
    font-weight: 500 !important;
    letter-spacing: normal !important;
    margin-bottom: 28px !important;
  }
  html body .l-legalpages__folderscarouselwrapper { gap: 18px !important; }
}

/* Mobile font sizes + grey rule between tabs and content */
@media (max-width: 899px) {
  html body main.l-legalpages {
    padding-left: 20px !important;
    padding-right: 20px !important;
    background: #fff !important;
  }
  html body .l-legalpages__title {
    font-size: 16px !important; /* mobile heading */
    font-weight: 500 !important;
    letter-spacing: normal !important;
    margin: 0 0 18px !important;
  }
  html body .l-legalpages__folderscarouselwrapper {
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: flex-end !important;
    gap: 22px !important;
    overflow-x: auto !important;
    padding: 0 0 8px !important;
    margin: 0 !important;
    border: 0 !important;
    box-shadow: inset 0 -1px 0 #d0d0d0 !important;
    width: 100% !important;
  }
  html body a.l-legalpages__accordiontitle,
  html body .l-legalpages__assettitle {
    font-size: 13px !important; /* mobile nav */
    letter-spacing: normal !important;
    white-space: nowrap !important;
    padding-bottom: 6px !important;
  }
  html body .l-legalpages__foldercontents { margin-top: 28px !important; max-width: none !important; }
  html body .l-legalpages__wrapper { gap: 0 !important; }
  html body .l-legalpages__headline,
  html body .l-legalpages__effective,
  html body .l-legalpages__p,
  html body .l-legalpages__subhead,
  html body .l-legalpages__section-btn,
  html body .c-expander__btn {
    font-size: 14px !important; /* mobile body */
    letter-spacing: normal !important;
    line-height: 1.35 !important;
  }
  html body .l-legalpages__cookie-btn {
    font-size: 11px !important;
    letter-spacing: 0.1em !important;
  }
}


/* —— Pass 20260805cu — legal underline parity + kill neg LS leftovers —— */
html body h2.l-legalpages__title,
html body .l-legalpages__title {
  font-size: 18px !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
  word-spacing: normal !important;
  text-indent: 0 !important;
  text-transform: uppercase !important;
  line-height: 1.35 !important;
  margin: 0 0 24px !important;
  color: #000 !important;
  background: transparent !important;
  font-family: var(--font-sans) !important;
}

/* Legal stay-ul: inactive hidden; active solid UNDER glyphs — never on top */
html body a.l-legalpages__accordiontitle.xsample-stay-ul > .xsample-ul-line,
html body a.l-legalpages__accordiontitle > .xsample-ul-line,
html body a.l-legalpages__assettitle > .xsample-ul-line {
  top: auto !important;
  bottom: 0 !important;
  inset: auto 0 0 0 !important;
  height: 1px !important;
  transform: none !important;
  scale: none !important;
  opacity: 1 !important;
  clip-path: inset(0 100% 0 0) !important;
  -webkit-clip-path: inset(0 100% 0 0) !important;
  animation: none !important;
  animation-name: none !important;
}
html body a.l-legalpages__accordiontitle.c-accordion__trigger--selected.xsample-stay-ul > .xsample-ul-line,
html body a.l-legalpages__accordiontitle.is-active.xsample-stay-ul > .xsample-ul-line,
html body a.l-legalpages__accordiontitle[aria-current="page"].xsample-stay-ul > .xsample-ul-line,
html body a.l-legalpages__accordiontitle.c-accordion__trigger--selected > .xsample-ul-line,
html body a.l-legalpages__accordiontitle[aria-current="page"] > .xsample-ul-line {
  clip-path: inset(0 0 0 0) !important;
  -webkit-clip-path: inset(0 0 0 0) !important;
  animation: none !important;
  animation-name: none !important;
  opacity: 1 !important;
  bottom: 0 !important;
  top: auto !important;
}
html body a.l-legalpages__accordiontitle.xsample-stay-ul:hover > .xsample-ul-line,
html body a.l-legalpages__accordiontitle.xsample-stay-ul:focus-visible > .xsample-ul-line {
  animation: none !important;
  animation-name: xsample-stay-ul-clip !important;
  animation-duration: 0.9s !important;
  animation-timing-function: linear !important;
  animation-fill-mode: forwards !important;
  animation-play-state: running !important;
  transform: none !important;
  opacity: 1 !important;
  bottom: 0 !important;
  top: auto !important;
}

/* Do not inherit site negative tracking on legal body */
html body main.l-legalpages,
html body main.l-legalpages * {
  --ls-body: 0px;
  --ls-heading: 0px;
  --ls-heading-lg: 0px;
}

@media (max-width: 899px) {
  html body h2.l-legalpages__title,
  html body .l-legalpages__title {
    font-size: 16px !important;
    font-weight: 500 !important;
    letter-spacing: 0 !important;
  }
  html body a.l-legalpages__accordiontitle,
  html body .l-legalpages__assettitle {
    font-size: 13px !important;
    letter-spacing: 0 !important;
  }
  html body .l-legalpages__headline,
  html body .l-legalpages__effective,
  html body .l-legalpages__p,
  html body .l-legalpages__subhead,
  html body .l-legalpages__section-btn,
  html body .c-expander__btn {
    font-size: 14px !important;
    letter-spacing: 0 !important;
  }
}


/* —— Pass 20260805cv — mobile type specificity (beat .xsample-stay-ul 15px) —— */
@media (max-width: 899px) {
  html body h2.l-legalpages__title,
  html body .l-legalpages__title {
    font-size: 16px !important;
    font-weight: 500 !important;
    letter-spacing: 0 !important;
  }
  html body a.l-legalpages__accordiontitle,
  html body a.l-legalpages__accordiontitle.xsample-stay-ul,
  html body a.l-legalpages__assettitle.l-legalpages__accordiontitle,
  html body .l-legalpages__assettitle,
  html body a.l-legalpages__assettitle {
    font-size: 13px !important;
    letter-spacing: 0 !important;
    line-height: 1.35 !important;
    padding-bottom: 6px !important;
  }
  html body .l-legalpages__headline,
  html body .l-legalpages__effective,
  html body .l-legalpages__p,
  html body .c-expander__content .l-legalpages__p,
  html body .l-legalpages__section-body .l-legalpages__p,
  html body .l-legalpages__subhead,
  html body .l-legalpages__section-btn,
  html body .c-expander__btn,
  html body .c-expander__btn.xsample-stay-ul {
    font-size: 14px !important;
    letter-spacing: 0 !important;
    line-height: 1.35 !important;
  }
}
@media (min-width: 900px) {
  html body h2.l-legalpages__title,
  html body .l-legalpages__title {
    font-size: 18px !important;
    font-weight: 500 !important;
    letter-spacing: 0 !important;
  }
  html body a.l-legalpages__accordiontitle,
  html body a.l-legalpages__accordiontitle.xsample-stay-ul,
  html body .l-legalpages__assettitle {
    font-size: 15px !important;
    letter-spacing: 0 !important;
  }
  html body .l-legalpages__headline,
  html body .l-legalpages__p,
  html body .l-legalpages__effective {
    font-size: 15px !important;
    letter-spacing: 0 !important;
  }
}


/* —— Pass 20260805cw — 1:1 BV legal layout: static UL, sentence headline, white —— */

/* Page canvas — pure white like BV (kill site grey bleed) */
html body:has(main.l-legalpages),
html body:has(main.l-legalpages) #root,
html body:has(main.l-legalpages) .App,
html body:has(main.l-legalpages) main.l-legalpages {
  background: #fff !important;
}
html body main.l-legalpages,
html body main.site-legal.l-legalpages {
  background: #fff !important;
  color: #000 !important;
  padding: 48px 24px 96px !important;
  min-height: 70vh !important;
  box-sizing: border-box !important;
}
@media (min-width: 900px) {
  html body main.l-legalpages {
    padding: 64px 48px 120px !important;
  }
}
@media (min-width: 1280px) {
  html body main.l-legalpages {
    padding: 72px 64px 140px !important;
  }
}

/* Two-column — BV proportions: ~28% nav / content */
html body .l-legalpages__wrapper {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 40px !important;
  width: 100% !important;
  max-width: 1280px !important;
  margin: 0 auto !important;
  align-items: start !important;
}
@media (min-width: 900px) {
  html body .l-legalpages__wrapper {
    grid-template-columns: minmax(220px, 0.32fr) minmax(0, 0.68fr) !important;
    column-gap: clamp(48px, 8vw, 120px) !important;
    row-gap: 0 !important;
  }
  html body .l-legalpages__infos {
    position: sticky !important;
    top: 112px !important;
  }
}

/* LEGAL PAGES — 18 / 500 / tracking 0 (not site -0.4) */
html body h2.l-legalpages__title,
html body .l-legalpages__title {
  font-family: var(--font-sans) !important;
  font-size: 18px !important;
  font-weight: 500 !important;
  font-synthesis: weight !important;
  letter-spacing: 0 !important;
  word-spacing: normal !important;
  text-transform: uppercase !important;
  line-height: 1.35 !important;
  margin: 0 0 28px !important;
  color: #000 !important;
  background: transparent !important;
}

/* Nav stack — BV vertical rhythm */
html body .l-legalpages__folderscarouselwrapper {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 14px !important;
  margin: 0 !important;
  padding: 0 !important;
  box-shadow: none !important;
  border: 0 !important;
  overflow: visible !important;
}
html body .l-legalpages__content,
html body .l-legalpages__foldertitle {
  margin: 0 !important;
  padding: 0 !important;
  font-size: inherit !important;
  font-weight: inherit !important;
  line-height: 1.35 !important;
  background: none !important;
}

/* Nav links — BV: uppercase, weight 400, tracking 0 */
html body a.l-legalpages__accordiontitle,
html body a.l-legalpages__assettitle,
html body .l-legalpages__assettitle,
html body a.l-legalpages__accordiontitle.xsample-stay-ul {
  position: relative !important;
  display: inline !important; /* text-width underline like BV */
  width: auto !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  color: #000 !important;
  background: none !important;
  background-image: none !important;
  line-height: 1.35 !important;
  border: 0 !important;
  border-bottom: 1px solid transparent !important;
  box-shadow: none !important;
  -webkit-text-stroke: 0 !important;
  text-shadow: none !important;
  transition: border-color 0.15s ease !important;
}

/* Kill stay-ul / ::before / span line on legal nav — BV is border only */
html body a.l-legalpages__accordiontitle::before,
html body a.l-legalpages__accordiontitle::after,
html body a.l-legalpages__assettitle::before,
html body a.l-legalpages__assettitle::after {
  content: none !important;
  display: none !important;
  animation: none !important;
}
html body a.l-legalpages__accordiontitle > .xsample-ul-line,
html body a.l-legalpages__accordiontitle > .l-legalpages__nav-line,
html body a.l-legalpages__accordiontitle.xsample-stay-ul > .xsample-ul-line {
  display: none !important;
  content: none !important;
  width: 0 !important;
  height: 0 !important;
  opacity: 0 !important;
  animation: none !important;
  clip-path: none !important;
}

/* Active + hover: solid 1px under glyphs (BV) — no wipe / clip draw */
html body a.l-legalpages__accordiontitle:hover,
html body a.l-legalpages__accordiontitle:focus-visible,
html body a.l-legalpages__accordiontitle.c-accordion__trigger--selected,
html body a.l-legalpages__accordiontitle.is-active,
html body a.l-legalpages__accordiontitle[aria-current="page"],
html body .l-legalpages__content.is-active a.l-legalpages__accordiontitle {
  border-bottom-color: #000 !important;
  text-decoration: none !important;
  background: none !important;
  background-image: none !important;
}

/* Content column */
html body .l-legalpages__foldercontents,
html body .l-legalpages__legalpageContent {
  max-width: 42rem !important;
  background: transparent !important;
}

/* Headline — sentence case like BV "Whistleblowing Platform" */
html body .l-legalpages__headline {
  font-size: 18px !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
  text-transform: none !important; /* NOT uppercase */
  line-height: 1.35 !important;
  margin: 0 0 20px !important;
  color: #000 !important;
  background: transparent !important;
}
html body .l-legalpages__effective {
  font-size: 15px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  line-height: 1.35 !important;
  margin: 0 0 20px !important;
  text-transform: none !important;
  color: #000 !important;
}
html body .l-legalpages__p,
html body .c-expander__content .l-legalpages__p,
html body .l-legalpages__section-body .l-legalpages__p {
  font-size: 15px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  line-height: 1.35 !important;
  margin: 0 0 18px !important;
  color: #000 !important;
  max-width: none !important;
  background: transparent !important;
}
html body .l-legalpages__subhead {
  font-size: 15px !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  line-height: 1.35 !important;
  margin: 24px 0 10px !important;
  color: #000 !important;
}

/* CTAs — BV solid black rect, sharp corners */
html body .l-legalpages__cta,
html body .l-legalpages__cookie-btn,
html body a.l-legalpages__cta,
html body button.l-legalpages__cookie-btn,
html body #ot-sdk-btn.l-legalpages__cookie-btn {
  display: inline-block !important;
  margin: 8px 0 28px !important;
  padding: 14px 22px !important;
  border: 1px solid #000 !important;
  border-radius: 0 !important;
  background: #000 !important;
  color: #fff !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  letter-spacing: 0.04em !important;
  text-transform: none !important; /* "Access the platform" sentence case */
  text-decoration: none !important;
  line-height: 1.35 !important;
  cursor: pointer !important;
  box-sizing: border-box !important;
}
/* Cookie Settings stays uppercase like BV */
html body #ot-sdk-btn.l-legalpages__cookie-btn,
html body button.l-legalpages__cookie-btn.ot-sdk-show-settings {
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  font-size: 12px !important;
}
html body .l-legalpages__cta:hover,
html body .l-legalpages__cookie-btn:hover {
  background: #fff !important;
  color: #000 !important;
}

/* Read more — keep site stay-ul twin */
html body .c-expander__btn {
  position: relative !important;
  display: inline-block !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  color: #000 !important;
  padding: 0 0 3px !important;
  background: none !important;
  border: 0 !important;
  cursor: pointer !important;
}
html body .c-expander__btn::after { content: none !important; display: none !important; }

html body .l-legalpages__actions { margin: 0 !important; }

/* No site negative tracking on legal */
html body main.l-legalpages,
html body main.l-legalpages * {
  --ls-body: 0px;
  --ls-heading: 0px;
  --ls-heading-lg: 0px;
}

@media (max-width: 899px) {
  html body main.l-legalpages {
    padding: 28px 20px 72px !important;
    background: #fff !important;
  }
  html body h2.l-legalpages__title,
  html body .l-legalpages__title {
    font-size: 16px !important;
    font-weight: 500 !important;
    letter-spacing: 0 !important;
    margin: 0 0 18px !important;
  }
  html body .l-legalpages__folderscarouselwrapper {
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: flex-end !important;
    gap: 22px !important;
    overflow-x: auto !important;
    padding: 0 0 10px !important;
    box-shadow: inset 0 -1px 0 #d0d0d0 !important;
    width: 100% !important;
  }
  html body a.l-legalpages__accordiontitle,
  html body a.l-legalpages__accordiontitle.xsample-stay-ul,
  html body .l-legalpages__assettitle {
    font-size: 13px !important;
    letter-spacing: 0 !important;
    white-space: nowrap !important;
    padding-bottom: 0 !important;
  }
  html body .l-legalpages__foldercontents {
    margin-top: 28px !important;
    max-width: none !important;
  }
  html body .l-legalpages__headline {
    font-size: 16px !important;
    font-weight: 500 !important;
    text-transform: none !important;
  }
  html body .l-legalpages__p,
  html body .l-legalpages__effective,
  html body .l-legalpages__subhead,
  html body .c-expander__btn {
    font-size: 14px !important;
    letter-spacing: 0 !important;
    line-height: 1.35 !important;
  }
}


/* —— Pass 20260805cx — content headline weight 500 like BV —— */
html body .l-legalpages__headline {
  font-weight: 500 !important;
  font-synthesis: weight !important;
}


/* —— Pass 20260805cy — BV underline = gradient under text (not border/clip wipe) —— */
html body a.l-legalpages__accordiontitle,
html body a.l-legalpages__assettitle,
html body a.l-legalpages__accordiontitle.xsample-stay-ul {
  display: inline-block !important;
  width: fit-content !important;
  max-width: 100% !important;
  padding: 0 0 3px !important;
  border: 0 !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
  text-decoration: none !important;
  background-color: transparent !important;
  background-image: linear-gradient(#000, #000) !important;
  background-position: 0 100% !important;
  background-repeat: no-repeat !important;
  background-size: 0 1px !important; /* hidden when inactive */
  transition: background-size 0s !important; /* instant like BV, no wipe draw */
  line-height: 1.35 !important;
}
html body a.l-legalpages__accordiontitle:hover,
html body a.l-legalpages__accordiontitle:focus-visible,
html body a.l-legalpages__accordiontitle.c-accordion__trigger--selected,
html body a.l-legalpages__accordiontitle.is-active,
html body a.l-legalpages__accordiontitle[aria-current="page"],
html body .l-legalpages__content.is-active a.l-legalpages__accordiontitle {
  background-image: linear-gradient(#000, #000) !important;
  background-position: 0 100% !important;
  background-repeat: no-repeat !important;
  background-size: 100% 1px !important;
  border-bottom: 0 !important;
  text-decoration: none !important;
}
html body a.l-legalpages__accordiontitle > .xsample-ul-line,
html body a.l-legalpages__accordiontitle > .l-legalpages__nav-line {
  display: none !important;
}

/* Nav rhythm closer to BV */
html body .l-legalpages__folderscarouselwrapper {
  gap: 16px !important;
}
@media (min-width: 900px) {
  html body .l-legalpages__folderscarouselwrapper {
    gap: 18px !important;
  }
  html body .l-legalpages__title {
    margin-bottom: 32px !important;
  }
}

/* Content column breathe like BV */
html body .l-legalpages__foldercontents {
  padding-top: 2px !important;
}
html body .l-legalpages__headline {
  font-size: 18px !important;
  font-weight: 500 !important;
  margin: 0 0 22px !important;
}
html body .l-legalpages__p {
  margin: 0 0 16px !important;
  line-height: 1.35 !important;
}
html body .l-legalpages__cta,
html body .l-legalpages__cookie-btn {
  margin-top: 12px !important;
  margin-bottom: 28px !important;
}


/* —— Pass 20260805cz — final BV polish: headline 500, UL air, read-more full —— */
html body h1.l-legalpages__headline,
html body .l-legalpages__headline {
  font-size: 18px !important;
  font-weight: 500 !important;
  font-synthesis: weight !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  line-height: 1.35 !important;
  margin: 0 0 22px !important;
  color: #000 !important;
}
html body a.l-legalpages__accordiontitle,
html body a.l-legalpages__assettitle {
  padding-bottom: 4px !important; /* air under glyphs like BV */
  background-size: 0 1px !important;
}
html body a.l-legalpages__accordiontitle:hover,
html body a.l-legalpages__accordiontitle:focus-visible,
html body a.l-legalpages__accordiontitle.c-accordion__trigger--selected,
html body a.l-legalpages__accordiontitle.is-active,
html body a.l-legalpages__accordiontitle[aria-current="page"] {
  background-size: 100% 1px !important;
}
/* Read more: underline full label including > */
html body .c-expander__btn.xsample-stay-ul {
  display: inline-block !important;
  width: fit-content !important;
  padding-bottom: 3px !important;
}
html body .c-expander__btn.xsample-stay-ul > .xsample-ul-line {
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  bottom: 0 !important;
}


/* —— Pass 20260805da — kill universal 400 lock; LEGAL PAGES + headline 500 —— */
html body main.l-legalpages *,
html body main.site-legal.l-legalpages * {
  font-weight: inherit !important;
  font-synthesis: weight !important;
}
html body main.l-legalpages,
html body main.site-legal.l-legalpages {
  font-weight: 400 !important;
}
html body main.l-legalpages h2.l-legalpages__title,
html body main.l-legalpages .l-legalpages__title,
html body main.site-legal.l-legalpages .l-legalpages__title {
  font-size: 18px !important;
  font-weight: 500 !important;
  font-synthesis: weight !important;
  letter-spacing: 0 !important;
}
html body main.l-legalpages h1.l-legalpages__headline,
html body main.l-legalpages .l-legalpages__headline,
html body main.site-legal.l-legalpages .l-legalpages__headline {
  font-size: 18px !important;
  font-weight: 500 !important;
  font-synthesis: weight !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}


/* —— Pass 20260805db — underline TEXT WIDTH only (not full sidebar) —— */
html body .l-legalpages__content,
html body .l-legalpages__foldertitle {
  display: block !important;
  width: fit-content !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}
html body a.l-legalpages__accordiontitle,
html body a.l-legalpages__assettitle,
html body a.l-legalpages__accordiontitle.xsample-stay-ul {
  display: inline-block !important;
  width: max-content !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  padding: 0 0 4px !important;
  /* text-width underline via background */
  background-color: transparent !important;
  background-image: linear-gradient(#000, #000) !important;
  background-position: left bottom !important;
  background-repeat: no-repeat !important;
  background-size: 0 1px !important;
  border: 0 !important;
  border-bottom: none !important;
  text-decoration: none !important;
}
html body a.l-legalpages__accordiontitle:hover,
html body a.l-legalpages__accordiontitle:focus-visible,
html body a.l-legalpages__accordiontitle.c-accordion__trigger--selected,
html body a.l-legalpages__accordiontitle.is-active,
html body a.l-legalpages__accordiontitle[aria-current="page"] {
  background-size: 100% 1px !important;
  width: max-content !important;
}


/* —— Pass 20260805dc — legal UL = site stay-ul; shift LEFT + DOWN —— */
html body .l-legalpages__content,
html body .l-legalpages__foldertitle {
  display: block !important;
  width: fit-content !important;
  max-width: 100% !important;
}

/* Match Find store / nav stay-ul host */
html body a.l-legalpages__accordiontitle,
html body a.l-legalpages__accordiontitle.xsample-stay-ul,
html body a.l-legalpages__assettitle {
  position: relative !important;
  display: inline-block !important;
  width: fit-content !important;
  max-width: 100% !important;
  margin: 0 !important;
  /* extra room below glyphs so line sits downward like site nav feel */
  padding: 0 0 5px !important;
  border: 0 !important;
  border-bottom: none !important;
  box-shadow: none !important;
  text-decoration: none !important;
  /* kill gradient UL from earlier passes */
  background: none !important;
  background-image: none !important;
  background-size: auto !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  text-transform: uppercase !important;
  line-height: 1.35 !important;
  color: #000 !important;
}

html body a.l-legalpages__accordiontitle::before,
html body a.l-legalpages__accordiontitle::after {
  content: none !important;
  display: none !important;
}

/* Line child — same stay-ul system; nudged LEFT + DOWN */
html body a.l-legalpages__accordiontitle > .xsample-ul-line,
html body a.l-legalpages__accordiontitle > .l-legalpages__nav-line,
html body a.l-legalpages__accordiontitle.xsample-stay-ul > .xsample-ul-line {
  display: block !important;
  position: absolute !important;
  /* left a bit */
  left: -2px !important;
  right: auto !important;
  width: calc(100% + 2px) !important;
  /* downward */
  top: auto !important;
  bottom: -1px !important;
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: #000 !important;
  background-color: #000 !important;
  pointer-events: none !important;
  transform: none !important;
  scale: none !important;
  transition: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  /* inactive: clipped away */
  clip-path: inset(0 100% 0 0) !important;
  -webkit-clip-path: inset(0 100% 0 0) !important;
  animation: none !important;
  animation-name: none !important;
}

/* Hover: same wipe as Find store / Collections-style stay links */
html body a.l-legalpages__accordiontitle:hover > .xsample-ul-line,
html body a.l-legalpages__accordiontitle:focus-visible > .xsample-ul-line,
html body a.l-legalpages__accordiontitle.xsample-stay-ul:hover > .xsample-ul-line,
html body a.l-legalpages__accordiontitle.xsample-stay-ul:focus-visible > .xsample-ul-line {
  transform: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  animation: none !important;
  animation-name: xsample-stay-ul-clip !important;
  animation-duration: 0.9s !important;
  animation-timing-function: linear !important;
  animation-fill-mode: forwards !important;
  animation-play-state: running !important;
  left: -2px !important;
  bottom: -1px !important;
  width: calc(100% + 2px) !important;
}

/* Active: solid underline (full line), still left+down */
html body a.l-legalpages__accordiontitle.c-accordion__trigger--selected > .xsample-ul-line,
html body a.l-legalpages__accordiontitle.is-active > .xsample-ul-line,
html body a.l-legalpages__accordiontitle[aria-current="page"] > .xsample-ul-line,
html body .l-legalpages__content.is-active a.l-legalpages__accordiontitle > .xsample-ul-line {
  clip-path: inset(0 0 0 0) !important;
  -webkit-clip-path: inset(0 0 0 0) !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  animation: none !important;
  animation-name: none !important;
  left: -2px !important;
  bottom: -1px !important;
  width: calc(100% + 2px) !important;
}
html body a.l-legalpages__accordiontitle.c-accordion__trigger--selected:hover > .xsample-ul-line,
html body a.l-legalpages__accordiontitle[aria-current="page"]:hover > .xsample-ul-line {
  animation-name: xsample-stay-ul-clip !important;
  animation-duration: 0.9s !important;
  animation-timing-function: linear !important;
  animation-fill-mode: forwards !important;
}

@media (max-width: 899px) {
  html body a.l-legalpages__accordiontitle,
  html body a.l-legalpages__accordiontitle.xsample-stay-ul {
    font-size: 13px !important;
    padding-bottom: 6px !important;
  }
  html body a.l-legalpages__accordiontitle > .xsample-ul-line {
    left: -2px !important;
    bottom: 0 !important;
    width: calc(100% + 2px) !important;
  }
}

/* —— Pass 20260805dk — legal: align content to first nav; no sticky; L→R UL; no fade; LH —— */

/* Sidebar scrolls with page — never sticky */
html body .l-legalpages__infos,
html body main.l-legalpages .l-legalpages__infos {
  position: static !important;
  top: auto !important;
  align-self: start !important;
}

/* Instant tab switch — no fade / opacity / transform on content */
html body main.l-legalpages,
html body main.l-legalpages .l-legalpages__foldercontents,
html body main.l-legalpages .l-legalpages__legalpageContent,
html body main.l-legalpages .l-legalpages__headline,
html body main.l-legalpages .l-legalpages__p,
html body main.l-legalpages .l-legalpages__sections,
html body main.l-legalpages .c-expander__panel {
  transition: none !important;
  animation: none !important;
  opacity: 1 !important;
}
html body:has(main.l-legalpages) #xsample-route-progress {
  display: block !important;
  visibility: visible !important;
}

/* Desktop: drop right column so H1 aligns with first nav link (COOKIE POLICY), not LEGAL PAGES */
@media (min-width: 900px) {
  html body .l-legalpages__foldercontents {
    /* LEGAL PAGES title block: ~22px line + 28px margin */
    padding-top: 50px !important;
    margin-top: 0 !important;
  }
  html body .l-legalpages__legalpageContent {
    padding-top: 0 !important;
    margin-top: 0 !important;
  }
  html body .l-legalpages__headline {
    margin-top: 0 !important;
  }
}

/* Body copy — more open line-height */
html body .l-legalpages__p,
html body .c-expander__content .l-legalpages__p,
html body .l-legalpages__section-body .l-legalpages__p {
  line-height: 1.35 !important;
  margin: 0 0 20px !important;
}
html body .l-legalpages__headline {
  line-height: 1.35 !important;
  margin-bottom: 22px !important;
}

/* Nav links: stay-ul L→R draw; solid when active; reset when not hovered/active */
html body a.l-legalpages__accordiontitle,
html body a.l-legalpages__accordiontitle.xsample-stay-ul,
html body a.l-legalpages__assettitle {
  position: relative !important;
  display: inline-block !important;
  width: fit-content !important;
  max-width: 100% !important;
  padding: 0 0 3px !important;
  margin: 0 !important;
  border: 0 !important;
  border-bottom: 0 !important;
  background: none !important;
  background-image: none !important;
  text-decoration: none !important;
  box-shadow: none !important;
  transition: none !important;
}
html body a.l-legalpages__accordiontitle::before,
html body a.l-legalpages__accordiontitle::after {
  content: none !important;
  display: none !important;
}

/* Underline span — clipped away at rest */
html body a.l-legalpages__accordiontitle > .xsample-ul-line,
html body a.l-legalpages__accordiontitle > .l-legalpages__nav-line,
html body a.l-legalpages__accordiontitle.xsample-stay-ul > .xsample-ul-line {
  display: block !important;
  position: absolute !important;
  left: -2px !important;
  right: auto !important;
  bottom: -1px !important;
  width: calc(100% + 2px) !important;
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: #000 !important;
  background-color: #000 !important;
  pointer-events: none !important;
  transform: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  clip-path: inset(0 100% 0 0) !important;
  -webkit-clip-path: inset(0 100% 0 0) !important;
  animation: none !important;
  animation-name: none !important;
  transition: none !important;
}

/* Hover: left → right wipe draw */
html body a.l-legalpages__accordiontitle:hover > .xsample-ul-line,
html body a.l-legalpages__accordiontitle:focus-visible > .xsample-ul-line,
html body a.l-legalpages__accordiontitle.xsample-stay-ul:hover > .xsample-ul-line,
html body a.l-legalpages__accordiontitle.xsample-stay-ul:focus-visible > .xsample-ul-line {
  animation: none !important;
  animation-name: xsample-stay-ul-clip !important;
  animation-duration: 0.45s !important;
  animation-timing-function: linear !important;
  animation-fill-mode: forwards !important;
  animation-play-state: running !important;
  transform: none !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/* Active tab: solid underline (no animation residue on siblings) */
html body a.l-legalpages__accordiontitle.c-accordion__trigger--selected > .xsample-ul-line,
html body a.l-legalpages__accordiontitle.is-active > .xsample-ul-line,
html body a.l-legalpages__accordiontitle[aria-current="page"] > .xsample-ul-line,
html body .l-legalpages__content.is-active a.l-legalpages__accordiontitle > .xsample-ul-line {
  clip-path: inset(0 0 0 0) !important;
  -webkit-clip-path: inset(0 0 0 0) !important;
  animation: none !important;
  animation-name: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
}
/* Active + hover: keep solid (don't re-wipe) */
html body a.l-legalpages__accordiontitle.c-accordion__trigger--selected:hover > .xsample-ul-line,
html body a.l-legalpages__accordiontitle[aria-current="page"]:hover > .xsample-ul-line {
  animation: none !important;
  clip-path: inset(0 0 0 0) !important;
  -webkit-clip-path: inset(0 0 0 0) !important;
}

/* —— Pass 20260807a — LEGAL INTEGRATED (single source of truth) —— */
/* Wins over earlier sticky / border-bottom / display:none / pad fights */

html body main.l-legalpages.site-legal,
html body main.site-legal.l-legalpages {
  background: #fff !important;
  color: #000 !important;
  padding: 48px 24px 96px !important;
  box-sizing: border-box !important;
}
@media (min-width: 900px) {
  html body main.l-legalpages.site-legal {
    padding: 64px 48px 120px !important;
  }
}

html body main.l-legalpages .l-legalpages__wrapper {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 40px !important;
  max-width: 1280px !important;
  margin: 0 auto !important;
  align-items: start !important;
}
@media (min-width: 900px) {
  html body main.l-legalpages .l-legalpages__wrapper {
    grid-template-columns: minmax(220px, 0.32fr) minmax(0, 0.68fr) !important;
    column-gap: clamp(48px, 8vw, 120px) !important;
    row-gap: 0 !important;
  }
}

/* NEVER sticky */
html body main.l-legalpages .l-legalpages__infos {
  position: static !important;
  top: auto !important;
  bottom: auto !important;
  align-self: start !important;
}

html body main.l-legalpages .l-legalpages__title {
  font-size: 18px !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
  text-transform: uppercase !important;
  line-height: 1.35 !important;
  margin: 0 0 28px !important;
  color: #000 !important;
}

html body main.l-legalpages .l-legalpages__folderscarouselwrapper {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 14px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* Content column: H1 top = first nav link top (COOKIE POLICY) */
@media (min-width: 900px) {
  html body main.l-legalpages .l-legalpages__foldercontents {
    padding-top: 50px !important; /* 18×1.2 + 28 margin under LEGAL PAGES */
    margin-top: 0 !important;
  }
}

html body main.l-legalpages .l-legalpages__headline {
  font-size: 18px !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  line-height: 1.35 !important;
  margin: 0 0 24px !important;
  color: #000 !important;
}

html body main.l-legalpages .l-legalpages__p,
html body main.l-legalpages .c-expander__content .l-legalpages__p,
html body main.l-legalpages .l-legalpages__section-body .l-legalpages__p {
  font-size: 15px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  line-height: 1.35 !important;
  margin: 0 0 22px !important;
  color: #000 !important;
  max-width: 42rem !important;
}

/* Instant swap — no fade */
html body main.l-legalpages,
html body main.l-legalpages .l-legalpages__foldercontents,
html body main.l-legalpages .l-legalpages__legalpageContent {
  transition: none !important;
  animation: none !important;
  opacity: 1 !important;
}
html body:has(main.l-legalpages) #xsample-route-progress {
  /* progress line visible on legal again */
  display: block !important;
  visibility: visible !important;
}

/* —— Nav links + L→R underline (CSS only) —— */
html body main.l-legalpages a.l-legalpages__accordiontitle,
html body main.l-legalpages a.l-legalpages__assettitle,
html body main.l-legalpages a.l-legalpages__accordiontitle.xsample-stay-ul {
  position: relative !important;
  display: inline-block !important;
  width: fit-content !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 0 3px !important;
  border: 0 !important;
  border-bottom: none !important;
  background: none !important;
  background-image: none !important;
  box-shadow: none !important;
  text-decoration: none !important;
  color: #000 !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  text-transform: uppercase !important;
  line-height: 1.35 !important;
  transition: none !important;
  opacity: 1 !important;
}
html body main.l-legalpages a.l-legalpages__accordiontitle::before,
html body main.l-legalpages a.l-legalpages__accordiontitle::after {
  content: none !important;
  display: none !important;
  border: 0 !important;
  background: none !important;
}

/* Kill older “hide the span line / use border” pass */
html body main.l-legalpages a.l-legalpages__accordiontitle > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__accordiontitle > .l-legalpages__nav-line,
html body main.l-legalpages a.l-legalpages__accordiontitle.xsample-stay-ul > .xsample-ul-line {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  left: -2px !important;
  right: auto !important;
  bottom: -1px !important;
  width: calc(100% + 2px) !important;
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: #000 !important;
  background-color: #000 !important;
  pointer-events: none !important;
  transform: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  clip-path: inset(0 100% 0 0) !important;
  -webkit-clip-path: inset(0 100% 0 0) !important;
  animation: none !important;
  transition: none !important;
}

html body main.l-legalpages a.l-legalpages__accordiontitle:hover > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__accordiontitle:focus-visible > .xsample-ul-line {
  animation-name: xsample-stay-ul-clip !important;
  animation-duration: 0.45s !important;
  animation-timing-function: linear !important;
  animation-fill-mode: forwards !important;
  animation-play-state: running !important;
  transform: none !important;
  opacity: 1 !important;
  visibility: visible !important;
}

html body main.l-legalpages a.l-legalpages__accordiontitle.c-accordion__trigger--selected > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__accordiontitle.is-active > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__accordiontitle[aria-current="page"] > .xsample-ul-line,
html body main.l-legalpages .l-legalpages__content.is-active a.l-legalpages__accordiontitle > .xsample-ul-line {
  clip-path: inset(0 0 0 0) !important;
  -webkit-clip-path: inset(0 0 0 0) !important;
  animation: none !important;
  opacity: 1 !important;
  visibility: visible !important;
}

html body main.l-legalpages a.l-legalpages__accordiontitle.c-accordion__trigger--selected:hover > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__accordiontitle[aria-current="page"]:hover > .xsample-ul-line {
  animation: none !important;
  clip-path: inset(0 0 0 0) !important;
  -webkit-clip-path: inset(0 0 0 0) !important;
}

/* Read more */
html body main.l-legalpages .c-expander__btn {
  margin-top: 8px !important;
  font-size: 15px !important;
  font-weight: 400 !important;
}

@media (max-width: 899px) {
  html body main.l-legalpages .l-legalpages__folderscarouselwrapper {
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    gap: 20px !important;
    padding-bottom: 12px !important;
    border-bottom: 1px solid #000 !important;
  }
  html body main.l-legalpages .l-legalpages__foldercontents {
    padding-top: 0 !important;
  }
  html body main.l-legalpages a.l-legalpages__accordiontitle {
    font-size: 13px !important;
    white-space: nowrap !important;
  }
}

/* —— Pass 20260807d — legal hover UL: scaleX L→R (clip !important was killing keyframes) —— */
html body main.l-legalpages a.l-legalpages__accordiontitle > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__accordiontitle > .l-legalpages__nav-line,
html body main.l-legalpages a.l-legalpages__accordiontitle.xsample-stay-ul > .xsample-ul-line {
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: auto !important;
  bottom: -1px !important;
  width: 100% !important;
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: #000 !important;
  background-color: #000 !important;
  pointer-events: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  /* rest: hidden, grow from left */
  transform: scaleX(0) !important;
  transform-origin: left center !important;
  clip-path: none !important;
  -webkit-clip-path: none !important;
  animation: none !important;
  animation-name: none !important;
  transition: transform 0.45s linear !important;
}

html body main.l-legalpages a.l-legalpages__accordiontitle:hover > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__accordiontitle:focus-visible > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__accordiontitle.xsample-stay-ul:hover > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__accordiontitle.xsample-stay-ul:focus-visible > .xsample-ul-line {
  transform: scaleX(1) !important;
  transform-origin: left center !important;
  clip-path: none !important;
  -webkit-clip-path: none !important;
  animation: none !important;
  animation-name: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  transition: transform 0.45s linear !important;
}

html body main.l-legalpages a.l-legalpages__accordiontitle.c-accordion__trigger--selected > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__accordiontitle.is-active > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__accordiontitle[aria-current="page"] > .xsample-ul-line,
html body main.l-legalpages .l-legalpages__content.is-active a.l-legalpages__accordiontitle > .xsample-ul-line {
  transform: scaleX(1) !important;
  transform-origin: left center !important;
  clip-path: none !important;
  -webkit-clip-path: none !important;
  animation: none !important;
  transition: none !important;
  opacity: 1 !important;
  visibility: visible !important;
}

html body main.l-legalpages a.l-legalpages__accordiontitle.c-accordion__trigger--selected:hover > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__accordiontitle[aria-current="page"]:hover > .xsample-ul-line {
  transform: scaleX(1) !important;
  transition: none !important;
}


/* —— Pass 20260807e — legal content section nudged left —— */
@media (min-width: 900px) {
  html body main.l-legalpages .l-legalpages__wrapper {
    /* Narrower nav column + tighter gap → content starts further left */
    grid-template-columns: minmax(200px, 260px) minmax(0, 1fr) !important;
    column-gap: clamp(28px, 4vw, 56px) !important;
  }
}


/* —— Pass 20260807f — legal LH 1.45, 14px mobile pad, grey tab rail —— */
html body main.l-legalpages .l-legalpages__p,
html body main.l-legalpages .c-expander__content .l-legalpages__p,
html body main.l-legalpages .l-legalpages__section-body .l-legalpages__p {
  line-height: 1.35 !important;
  margin: 0 0 16px !important;
}

html body main.l-legalpages h1.l-legalpages__headline,
html body main.l-legalpages .l-legalpages__headline,
html body main.site-legal.l-legalpages .l-legalpages__headline {
  text-transform: uppercase !important;
  line-height: 1.35 !important;
}

@media (max-width: 899px) {
  html body main.l-legalpages.site-legal,
  html body main.site-legal.l-legalpages {
    padding: 28px 14px 72px !important;
  }

  /* Screenshot: no LEGAL PAGES label — horizontal tabs only */
  html body main.l-legalpages .l-legalpages__title {
    display: none !important;
  }

  html body main.l-legalpages .l-legalpages__wrapper {
    gap: 28px !important;
    max-width: 100% !important;
  }

  html body main.l-legalpages .l-legalpages__infos {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* Full-width grey base line; tabs scroll horizontally */
  html body main.l-legalpages .l-legalpages__folderscarouselwrapper {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: flex-end !important;
    gap: 22px !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
    border: 0 !important;
    border-bottom: 1px solid #d0d0d0 !important;
    box-shadow: none !important;
  }
  html body main.l-legalpages .l-legalpages__folderscarouselwrapper::-webkit-scrollbar {
    display: none !important;
    height: 0 !important;
  }

  html body main.l-legalpages .l-legalpages__content,
  html body main.l-legalpages .l-legalpages__foldertitle {
    flex: 0 0 auto !important;
    margin: 0 !important;
    padding: 0 !important;
    width: auto !important;
  }

  html body main.l-legalpages a.l-legalpages__accordiontitle,
  html body main.l-legalpages a.l-legalpages__assettitle {
    font-size: 13px !important;
    white-space: nowrap !important;
    padding: 0 0 12px !important;
    line-height: 1.35 !important;
  }

  /* Black active UL sits on the grey rail (thicker than the rail) */
  html body main.l-legalpages a.l-legalpages__accordiontitle > .xsample-ul-line,
  html body main.l-legalpages a.l-legalpages__accordiontitle > .l-legalpages__nav-line {
    bottom: -1px !important;
    height: 1px !important;
    min-height: 1px !important;
    max-height: 2px !important;
  }
  html body main.l-legalpages a.l-legalpages__accordiontitle.c-accordion__trigger--selected > .xsample-ul-line,
  html body main.l-legalpages a.l-legalpages__accordiontitle.is-active > .xsample-ul-line,
  html body main.l-legalpages a.l-legalpages__accordiontitle[aria-current="page"] > .xsample-ul-line {
    height: 2px !important;
    min-height: 2px !important;
    max-height: 2px !important;
    bottom: -1px !important;
    transform: scaleX(1) !important;
  }

  html body main.l-legalpages .l-legalpages__foldercontents,
  html body main.l-legalpages .l-legalpages__legalpageContent {
    padding-top: 0 !important;
    margin-top: 0 !important;
  }

  html body main.l-legalpages .l-legalpages__headline {
    margin-top: 4px !important;
    margin-bottom: 20px !important;
    font-size: 16px !important;
  }
}


/* —— Pass 20260807g — content −15px left, +30px width —— */
@media (min-width: 900px) {
  html body main.l-legalpages .l-legalpages__foldercontents,
  html body main.l-legalpages .l-legalpages__legalpageContent {
    margin-left: -15px !important;
    width: calc(100% + 30px) !important;
    max-width: none !important;
    box-sizing: border-box !important;
  }
  html body main.l-legalpages .l-legalpages__p,
  html body main.l-legalpages .c-expander__content .l-legalpages__p,
  html body main.l-legalpages .l-legalpages__section-body .l-legalpages__p {
    max-width: calc(42rem + 30px) !important;
  }
}


/* —— Pass 20260807h — larger L/R gap; content −20px more left; full ToU —— */
@media (min-width: 900px) {
  html body main.l-legalpages .l-legalpages__wrapper {
    column-gap: clamp(56px, 7vw, 110px) !important;
  }
  html body main.l-legalpages .l-legalpages__foldercontents,
  html body main.l-legalpages .l-legalpages__legalpageContent {
    margin-left: -35px !important; /* was −15; +20 more left */
    width: calc(100% + 50px) !important;
  }
}
html body main.l-legalpages .l-legalpages__fullbody {
  margin-top: 8px !important;
}
html body main.l-legalpages .l-legalpages__subhead {
  font-size: 15px !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
  line-height: 1.35 !important;
  margin: 28px 0 12px !important;
  color: #000 !important;
  text-transform: none !important;
}
html body main.l-legalpages .l-legalpages__effective {
  font-size: 15px !important;
  font-weight: 400 !important;
  line-height: 1.35 !important;
  margin: 0 0 20px !important;
  color: #000 !important;
}


/* —— Pass 20260807i — nav item gap 18px —— */
html body main.l-legalpages .l-legalpages__folderscarouselwrapper {
  gap: 18px !important;
}
@media (min-width: 900px) {
  html body main.l-legalpages .l-legalpages__folderscarouselwrapper {
    gap: 18px !important;
  }
}


/* —— Pass 20260807j — more L/R gap; whole legal block left —— */
@media (min-width: 900px) {
  html body main.l-legalpages.site-legal,
  html body main.site-legal.l-legalpages {
    padding-left: 28px !important;
    padding-right: 48px !important;
  }
  html body main.l-legalpages .l-legalpages__wrapper {
    column-gap: clamp(80px, 10vw, 150px) !important;
    margin-left: -24px !important;
    margin-right: auto !important;
  }
  html body main.l-legalpages .l-legalpages__folderscarouselwrapper {
    gap: 22px !important;
  }
}


/* —— Pass 20260807k — revert left 50px; column gap +20px —— */
@media (min-width: 900px) {
  html body main.l-legalpages.site-legal,
  html body main.site-legal.l-legalpages {
    padding-left: 48px !important;
    padding-right: 48px !important;
  }
  html body main.l-legalpages .l-legalpages__wrapper {
    margin-left: 0 !important;
    margin-right: auto !important;
    /* prior ~150px max gap + 20px */
    column-gap: clamp(100px, 11vw, 170px) !important;
  }
  html body main.l-legalpages .l-legalpages__foldercontents,
  html body main.l-legalpages .l-legalpages__legalpageContent {
    /* was −35px; revert 50px → +15px */
    margin-left: 15px !important;
    width: calc(100% + 30px) !important;
  }
}


/* —— Pass 20260807l — legal block +20px right —— */
@media (min-width: 900px) {
  html body main.l-legalpages .l-legalpages__wrapper {
    margin-left: 20px !important;
  }
}


/* —— Pass 20260807m — match BV legal placement + gap —— */
@media (min-width: 900px) {
  html body main.l-legalpages.site-legal,
  html body main.site-legal.l-legalpages {
    padding: 72px 180px 120px !important;
  }

  html body main.l-legalpages .l-legalpages__wrapper {
    display: grid !important;
    /* Narrow nav column + wide gutter like BV (~120–140px) */
    grid-template-columns: minmax(200px, 280px) minmax(0, 1fr) !important;
    column-gap: 95px !important;
    row-gap: 0 !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
    align-items: start !important;
  }

  /* H1 top aligns with LEGAL PAGES (not first nav link) */
  html body main.l-legalpages .l-legalpages__foldercontents,
  html body main.l-legalpages .l-legalpages__legalpageContent {
    padding-top: 0 !important;
    margin-top: 0 !important;
    margin-left: 0 !important;
    width: 100% !important;
    max-width: none !important;
  }

  html body main.l-legalpages .l-legalpages__folderscarouselwrapper {
    gap: 25px !important;
  }
}

html body main.l-legalpages .l-legalpages__title {
  font-size: 15px !important;
  font-weight: 500 !important;
  margin: 0 0 28px !important;
  line-height: 1.35 !important;
}

html body main.l-legalpages h1.l-legalpages__headline,
html body main.l-legalpages .l-legalpages__headline {
  font-size: 15px !important;
  font-weight: 500 !important;
  text-transform: uppercase !important;
  line-height: 1.35 !important;
  margin: 0 0 28px !important;
}

html body main.l-legalpages .l-legalpages__p,
html body main.l-legalpages .c-expander__content .l-legalpages__p,
html body main.l-legalpages .l-legalpages__section-body .l-legalpages__p {
  font-size: 14px !important;
  line-height: 1.35 !important;
  margin: 0 0 18px !important;
  max-width: 40rem !important;
}

html body main.l-legalpages a.l-legalpages__accordiontitle,
html body main.l-legalpages a.l-legalpages__assettitle {
  font-size: 13px !important;
  font-weight: 400 !important;
  line-height: 1.35 !important;
}

/* Cookie settings — solid black pill/rect like BV */
html body main.l-legalpages .l-legalpages__cookie-btn,
html body main.l-legalpages button.l-legalpages__cookie-btn,
html body main.l-legalpages #ot-sdk-btn.l-legalpages__cookie-btn {
  display: inline-block !important;
  margin: 8px 0 20px !important;
  padding: 12px 22px !important;
  background: #000 !important;
  color: #fff !important;
  border: 0 !important;
  border-radius: 0 !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  cursor: pointer !important;
}
html body main.l-legalpages .l-legalpages__cookie-btn:hover {
  opacity: 0.85 !important;
}

html body main.l-legalpages .c-expander__btn {
  margin-top: 4px !important;
  margin-bottom: 24px !important;
  font-size: 14px !important;
  font-weight: 400 !important;
}


/* —— Pass 20260807o — headline 15/400, drop to nav row, fixed content width, mobile −1/−2 —— */
html body main.l-legalpages h1.l-legalpages__headline,
html body main.l-legalpages .l-legalpages__headline,
html body main.site-legal.l-legalpages .l-legalpages__headline {
  font-size: 15px !important;
  font-weight: 400 !important;
  font-synthesis: none !important;
  line-height: 1.35 !important;
  margin: 0 0 24px !important;
  text-transform: uppercase !important;
}

@media (min-width: 900px) {
  /* Bring headline down to align with first nav item (COOKIE POLICY) */
  html body main.l-legalpages .l-legalpages__foldercontents {
    padding-top: 49px !important; /* title block → first nav link */
    margin-top: 0 !important;
  }
  html body main.l-legalpages .l-legalpages__legalpageContent {
    padding-top: 0 !important;
    margin-top: 0 !important;
  }

  /* Right column: consistent content width */
  html body main.l-legalpages .l-legalpages__wrapper {
    grid-template-columns: minmax(200px, 280px) minmax(0, 48rem) !important;
  }
  html body main.l-legalpages .l-legalpages__foldercontents,
  html body main.l-legalpages .l-legalpages__legalpageContent,
  html body main.l-legalpages .l-legalpages__headline,
  html body main.l-legalpages .l-legalpages__p,
  html body main.l-legalpages .l-legalpages__fullbody,
  html body main.l-legalpages .c-expander__container,
  html body main.l-legalpages .l-legalpages__sections {
    max-width: 60rem !important;
    width: 100% !important;
    box-sizing: border-box !important;
    min-width: 54rem !important;
  }
}

/* Mobile: body −1px, large headings −2px */
@media (max-width: 899px) {
  html body main.l-legalpages .l-legalpages__p,
  html body main.l-legalpages .c-expander__content .l-legalpages__p,
  html body main.l-legalpages .l-legalpages__section-body .l-legalpages__p,
  html body main.l-legalpages .l-legalpages__effective,
  html body main.l-legalpages .l-legalpages__subhead,
  html body main.l-legalpages .c-expander__btn,
  html body main.l-legalpages a.l-legalpages__accordiontitle,
  html body main.l-legalpages a.l-legalpages__assettitle,
  html body main.l-legalpages .l-legalpages__cookie-btn,
  html body main.l-legalpages .l-legalpages__section-btn {
    font-size: 13px !important; /* was ~14 / 13 → −1 */
  }
  html body main.l-legalpages h1.l-legalpages__headline,
  html body main.l-legalpages .l-legalpages__headline,
  html body main.site-legal.l-legalpages .l-legalpages__headline,
  html body main.l-legalpages .l-legalpages__title {
    font-size: 13px !important; /* was 15 → −2 */
    font-weight: 400 !important;
  }
  html body main.l-legalpages a.l-legalpages__accordiontitle,
  html body main.l-legalpages a.l-legalpages__assettitle {
    font-size: 12px !important; /* nav −1 from 13 */
  }
}


@media (max-width: 899px) {
  html body main.l-legalpages a.l-legalpages__accordiontitle,
  html body main.l-legalpages a.l-legalpages__assettitle,
  html body main.l-legalpages a.l-legalpages__accordiontitle.xsample-stay-ul {
    font-size: 12px !important;
  }
}


/* —— Pass 20260807p — thicker legal UL (2px); short nav; no tiny max-height —— */
html body main.l-legalpages a.l-legalpages__accordiontitle > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__accordiontitle > .l-legalpages__nav-line,
html body main.l-legalpages a.l-legalpages__accordiontitle.xsample-stay-ul > .xsample-ul-line {
  height: 2px !important;
  min-height: 2px !important;
  max-height: 2px !important;
  bottom: -2px !important;
}

/* Only the current page keeps a solid line; others stay hidden unless hovered */
html body main.l-legalpages a.l-legalpages__accordiontitle:not([aria-current="page"]):not(:hover):not(:focus-visible) > .xsample-ul-line {
  transform: scaleX(0) !important;
}

html body main.l-legalpages a.l-legalpages__accordiontitle,
html body main.l-legalpages a.l-legalpages__assettitle {
  white-space: nowrap !important;
  max-width: none !important;
}

@media (max-width: 899px) {
  html body main.l-legalpages a.l-legalpages__accordiontitle,
  html body main.l-legalpages a.l-legalpages__assettitle {
    white-space: nowrap !important;
  }
}


/* —— Pass 20260807r — progress on legal; 8-tab sidebar; page −20px left —— */
html body:has(main.l-legalpages) #xsample-route-progress,
html body:has(main.l-legalpages) #xsample-progress {
  display: block !important;
  visibility: visible !important;
  /* do NOT force opacity — is-idle must be allowed to hide the bar */
  pointer-events: none !important;
  z-index: 2147483646 !important;
}
@media (min-width: 900px) {
  html body main.l-legalpages .l-legalpages__wrapper {
    margin-left: 0 !important; /* was +20px; move left by 20px */
  }
}


/* —— Pass 20260807s — no accordion; UL 1px; page −8px (not −20) —— */
html body main.l-legalpages .l-legalpages__section-btn,
html body main.l-legalpages .l-legalpages__section-toggle {
  display: none !important;
}
html body main.l-legalpages .l-legalpages__sections--static .l-legalpages__section {
  border: 0 !important;
  margin: 0 0 8px !important;
  padding: 0 !important;
}
html body main.l-legalpages .l-legalpages__sections--static .l-legalpages__section-title,
html body main.l-legalpages .l-legalpages__sections--static .l-legalpages__subhead {
  display: block !important;
  margin: 28px 0 12px !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  cursor: default !important;
  pointer-events: none !important;
}
html body main.l-legalpages .l-legalpages__sections--static .l-legalpages__section-body {
  display: block !important;
  height: auto !important;
  overflow: visible !important;
}

/* Underline back to 1px (2px felt too thick) */
html body main.l-legalpages a.l-legalpages__accordiontitle > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__accordiontitle > .l-legalpages__nav-line,
html body main.l-legalpages a.l-legalpages__accordiontitle.xsample-stay-ul > .xsample-ul-line {
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  bottom: -1px !important;
}

@media (min-width: 900px) {
  /* 8px left of the prior +20px right nudge → margin-left: 12px */
  html body main.l-legalpages .l-legalpages__wrapper {
    margin-left: 12px !important;
  }
}


/* —— Pass 20260807t — progress color vs promo; legal active UL under grey; never stuck —— */
/* Announcement ON (black promo) → white progress so it reads on the bar.
   Announcement OFF → black progress on white header. */
#xsample-route-progress {
  background: #000 !important;
  background-color: #000 !important;
}
html:has(.site-promo:not(.is-dismissed):not(.site-promo--hidden)) #xsample-route-progress,
body:has(.site-promo:not(.is-dismissed):not(.site-promo--hidden)) #xsample-route-progress {
  background: #fff !important;
  background-color: #fff !important;
}
/* When promo is dismissed / missing / zero height */
html:has(.site-promo.is-dismissed) #xsample-route-progress,
html:has(.site-promo.site-promo--hidden) #xsample-route-progress,
body:has(.site-promo.is-dismissed) #xsample-route-progress,
body:has(.site-promo.site-promo--hidden) #xsample-route-progress {
  background: #000 !important;
  background-color: #000 !important;
}
#xsample-route-progress.is-idle {
  opacity: 0 !important;
  width: 0 !important;
}
#xsample-route-progress.is-active {
  opacity: 1 !important;
}

/* Legal active underline — always visible; sits under grey rail on mobile */
html body main.l-legalpages a.l-legalpages__accordiontitle.c-accordion__trigger--selected > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__accordiontitle.is-active > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__accordiontitle[aria-current="page"] > .xsample-ul-line,
html body main.l-legalpages .l-legalpages__content.is-active a.l-legalpages__accordiontitle > .xsample-ul-line {
  display: block !important;
  transform: scaleX(1) !important;
  transform-origin: left center !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  background: #000 !important;
  clip-path: none !important;
  -webkit-clip-path: none !important;
  animation: none !important;
  transition: none !important;
}

@media (max-width: 899px) {
  html body main.l-legalpages .l-legalpages__folderscarouselwrapper {
    border-bottom: 1px solid #d0d0d0 !important;
    padding-bottom: 0 !important;
  }
  /* Active black UL sits just under the grey rail */
  html body main.l-legalpages a.l-legalpages__accordiontitle > .xsample-ul-line,
  html body main.l-legalpages a.l-legalpages__accordiontitle > .l-legalpages__nav-line {
    bottom: -1px !important;
  }
  html body main.l-legalpages a.l-legalpages__accordiontitle[aria-current="page"] > .xsample-ul-line,
  html body main.l-legalpages a.l-legalpages__accordiontitle.c-accordion__trigger--selected > .xsample-ul-line,
  html body main.l-legalpages a.l-legalpages__accordiontitle.is-active > .xsample-ul-line {
    bottom: -2px !important; /* under the grey 1px rail */
    height: 1px !important;
    transform: scaleX(1) !important;
  }
  html body main.l-legalpages a.l-legalpages__accordiontitle {
    padding-bottom: 12px !important;
  }
}

@media (min-width: 900px) {
  html body main.l-legalpages a.l-legalpages__accordiontitle[aria-current="page"] > .xsample-ul-line,
  html body main.l-legalpages a.l-legalpages__accordiontitle.c-accordion__trigger--selected > .xsample-ul-line {
    bottom: -2px !important;
    transform: scaleX(1) !important;
  }
}


/* —— Pass 20260807u — progress always thin + promo color via html class;
      mobile active UL via border (overflow-x was clipping absolute line) —— */
#xsample-route-progress,
#xsample-progress {
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
}
#xsample-progress > i {
  height: 100% !important;
}

/* Default: black (promo closed / white header) */
#xsample-route-progress,
#xsample-progress > i {
  background: #000 !important;
  background-color: #000 !important;
}
/* Announcement ON → white progress (JS toggles html.xsample-promo-on) */
html.xsample-promo-on #xsample-route-progress,
html.xsample-promo-on #xsample-progress > i,
html:has(.site-promo:not(.is-dismissed):not(.site-promo--hidden)) #xsample-route-progress {
  background: #fff !important;
  background-color: #fff !important;
}
/* Announcement OFF → black */
html.xsample-promo-off #xsample-route-progress,
html.xsample-promo-off #xsample-progress > i,
html:has(.site-promo.is-dismissed) #xsample-route-progress,
html:has(.site-promo.site-promo--hidden) #xsample-route-progress {
  background: #000 !important;
  background-color: #000 !important;
}

#xsample-route-progress.is-idle {
  opacity: 0 !important;
  width: 0 !important;
  visibility: hidden !important;
  transition: none !important;
}
#xsample-route-progress.is-active {
  opacity: 1 !important;
  visibility: visible !important;
  display: block !important;
  transition: width 0.28s ease-out !important; /* no opacity fade — must read immediately */
}

@media (max-width: 899px) {
  /*
    Grey rail + 1px active UL under it.
    overflow-x:auto clips past the padding edge — 2px pad keeps black (bottom:-2px)
    visible under the grey (drawn 1px above the bottom).
  */
  html body main.l-legalpages .l-legalpages__folderscarouselwrapper {
    border-bottom: none !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    padding-bottom: 2px !important;
    box-shadow: none !important;
    background-image: linear-gradient(#d0d0d0, #d0d0d0) !important;
    background-size: 100% 1px !important;
    background-position: left calc(100% - 1px) !important;
    background-repeat: no-repeat !important;
  }
  html body main.l-legalpages a.l-legalpages__accordiontitle,
  html body main.l-legalpages a.l-legalpages__assettitle,
  html body main.l-legalpages a.l-legalpages__accordiontitle.xsample-stay-ul {
    padding-bottom: 12px !important;
    margin-bottom: 0 !important;
    border: 0 !important;
    border-bottom: 0 !important;
  }
  html body main.l-legalpages a.l-legalpages__accordiontitle > .xsample-ul-line,
  html body main.l-legalpages a.l-legalpages__accordiontitle > .l-legalpages__nav-line,
  html body main.l-legalpages a.l-legalpages__accordiontitle.xsample-stay-ul > .xsample-ul-line {
    bottom: -2px !important; /* under grey, inside 2px pad */
    height: 1px !important;
    min-height: 1px !important;
    max-height: 1px !important;
  }
  html body main.l-legalpages a.l-legalpages__accordiontitle[aria-current="page"] > .xsample-ul-line,
  html body main.l-legalpages a.l-legalpages__accordiontitle.c-accordion__trigger--selected > .xsample-ul-line,
  html body main.l-legalpages a.l-legalpages__accordiontitle.is-active > .xsample-ul-line,
  html body main.l-legalpages a.l-legalpages__accordiontitle.xsample-stay-ul[aria-current="page"] > .xsample-ul-line,
  html body main.l-legalpages a.l-legalpages__accordiontitle.xsample-stay-ul.c-accordion__trigger--selected > .xsample-ul-line,
  html body main.l-legalpages a.l-legalpages__accordiontitle.xsample-stay-ul.is-active > .xsample-ul-line {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    scale: none !important;
    transform-origin: left center !important;
    height: 1px !important;
    min-height: 1px !important;
    max-height: 1px !important;
    bottom: -2px !important;
    background: #000 !important;
    clip-path: none !important;
    -webkit-clip-path: none !important;
    animation: none !important;
  }
}

@media (min-width: 900px) {
  html body main.l-legalpages a.l-legalpages__accordiontitle[aria-current="page"] > .xsample-ul-line,
  html body main.l-legalpages a.l-legalpages__accordiontitle.c-accordion__trigger--selected > .xsample-ul-line,
  html body main.l-legalpages a.l-legalpages__accordiontitle.is-active > .xsample-ul-line {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: scaleX(1) !important;
    height: 1px !important;
    min-height: 1px !important;
    max-height: 1px !important;
    bottom: -1px !important;
    background: #000 !important;
  }
}


/* —— Pass 20260807w — legal active UL crisp on first paint; PDP header no layout snap —— */

/* Active legal UL: no scaleX (GPU scale can render <1px on first paint). Full width + solid 1px. */
html body main.l-legalpages a.l-legalpages__accordiontitle[aria-current="page"] > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__accordiontitle.c-accordion__trigger--selected > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__accordiontitle.is-active > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__accordiontitle.xsample-stay-ul[aria-current="page"] > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__accordiontitle.xsample-stay-ul.c-accordion__trigger--selected > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__accordiontitle.xsample-stay-ul.is-active > .xsample-ul-line,
html body main.l-legalpages .l-legalpages__content.is-active a.l-legalpages__accordiontitle > .xsample-ul-line {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
  width: 100% !important;
  left: 0 !important;
  right: 0 !important;
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  /* transform:none — scaleX(1) was painting hairline-thin on cold load */
  transform: none !important;
  scale: none !important;
  transform-origin: left center !important;
  background: #000 !important;
  background-color: #000 !important;
  background-image: none !important;
  box-shadow: none !important;
  border: 0 !important;
  clip-path: none !important;
  -webkit-clip-path: none !important;
  animation: none !important;
  animation-name: none !important;
  transition: none !important;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

/* PDP: keep gallery under header always — toggling margin with transparent caused the snap */
@media (min-width: 768px) {
  html body.product-page main.site-product .site-product__desktop,
  html body.product-page:has(.is-header-transparent) main.site-product .site-product__desktop,
  html body.product-page:not(:has(.is-header-transparent)) main.site-product .site-product__desktop,
  html body:has(header.site-header.is-header-transparent) main.site-product .site-product__desktop,
  html body:has(.site-header.is-header-transparent) main.site-product .site-product__desktop {
    margin-top: calc(-1 * var(--site-header-height, 64px)) !important;
  }
  /* Header slide only — no opacity fade (opacity was flashing / snapping) */
  html body.product-page .site-header,
  html body.product-page header.site-header,
  html body.product-page .site-header.site-header--pdp {
    transition: transform 0.38s cubic-bezier(0.22, 1, 0.36, 1) !important;
    transition-property: transform, translate !important;
  }
  html body.product-page .site-header.is-header-off,
  html body.product-page header.site-header.is-header-off {
    /* Keep opacity 1 during slide — visibility hidden only at end via pointer-events */
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: none !important;
    transform: translate3d(0, -105%, 0) !important;
    translate: 0 -105% !important;
  }
}


/* —— Pass 20260807y — solid active ULs (gradient, not scaleX); PDP always white, no flash —— */

/* LEGAL active: paint underline via background gradient — never hairline from scaleX */
html body main.l-legalpages a.l-legalpages__accordiontitle[aria-current="page"],
html body main.l-legalpages a.l-legalpages__accordiontitle.c-accordion__trigger--selected,
html body main.l-legalpages a.l-legalpages__accordiontitle.is-active,
html body main.l-legalpages a.l-legalpages__accordiontitle.xsample-stay-ul[aria-current="page"],
html body main.l-legalpages a.l-legalpages__accordiontitle.xsample-stay-ul.c-accordion__trigger--selected,
html body main.l-legalpages a.l-legalpages__accordiontitle.xsample-stay-ul.is-active,
html body main.l-legalpages .l-legalpages__content.is-active a.l-legalpages__accordiontitle {
  background-color: transparent !important;
  background-image: linear-gradient(#000, #000) !important;
  background-size: 100% 1px !important;
  background-position: left bottom !important;
  background-repeat: no-repeat !important;
  text-decoration: none !important;
  border: 0 !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
}
/* Hide the absolute span on active — gradient is the real underline */
html body main.l-legalpages a.l-legalpages__accordiontitle[aria-current="page"] > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__accordiontitle.c-accordion__trigger--selected > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__accordiontitle.is-active > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__accordiontitle.xsample-stay-ul[aria-current="page"] > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__accordiontitle.xsample-stay-ul.c-accordion__trigger--selected > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__accordiontitle.xsample-stay-ul.is-active > .xsample-ul-line,
html body main.l-legalpages .l-legalpages__content.is-active a.l-legalpages__accordiontitle > .xsample-ul-line {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  height: 0 !important;
  min-height: 0 !important;
  max-height: 0 !important;
  transform: none !important;
  animation: none !important;
  transition: none !important;
}

/* Desktop legal hover still uses the span (L→R); inactive keeps span hidden via scale */
@media (min-width: 900px) {
  html body main.l-legalpages a.l-legalpages__accordiontitle:not([aria-current="page"]):not(.c-accordion__trigger--selected):not(.is-active):hover > .xsample-ul-line,
  html body main.l-legalpages a.l-legalpages__accordiontitle:not([aria-current="page"]):not(.c-accordion__trigger--selected):not(.is-active):focus-visible > .xsample-ul-line {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
    height: 1px !important;
    min-height: 1px !important;
    max-height: 1px !important;
    transform: scaleX(1) !important;
    transition: transform 0.45s linear !important;
  }
}

/* PLP active cat — same gradient trick (scaleX was hairline on first land) */
html body main.site-collections-products .site-plp-cat.is-active,
html body .site-plp-cat.is-active {
  background-color: transparent !important;
  background-image: linear-gradient(#000, #000) !important;
  background-size: 100% 1px !important;
  background-position: left bottom !important;
  background-repeat: no-repeat !important;
  text-decoration: none !important;
  text-decoration-line: none !important;
}
html body main.site-collections-products .site-plp-cat.is-active > .site-plp-cat__line,
html body main.site-collections-products .site-plp-cat.is-active > span:last-child,
html body .site-plp-cat.is-active > .site-plp-cat__line {
  display: none !important;
  opacity: 0 !important;
  transform: none !important;
  animation: none !important;
}

/* PDP: solid white header always — kill transparent + gallery pull-under (was causing white flash) */
@media (min-width: 768px) {
  html body.product-page .site-header,
  html body.product-page header.site-header,
  html body.product-page .site-header.site-header--pdp,
  html body.product-page .site-header.is-header-transparent,
  html body.product-page header.site-header.is-header-transparent {
    background: #fff !important;
    background-color: #fff !important;
    background-image: none !important;
  }
  html body.product-page main.site-product .site-product__desktop,
  html body.product-page:has(.is-header-transparent) main.site-product .site-product__desktop,
  html body.product-page:not(:has(.is-header-transparent)) main.site-product .site-product__desktop,
  html body:has(header.site-header.is-header-transparent) main.site-product .site-product__desktop,
  html body:has(.site-header.is-header-transparent) main.site-product .site-product__desktop {
    margin-top: 0 !important;
  }
}

@media (max-width: 899px) {
  /* Mobile legal active: gradient on the link; grey rail still under labels */
  html body main.l-legalpages a.l-legalpages__accordiontitle[aria-current="page"],
  html body main.l-legalpages a.l-legalpages__accordiontitle.c-accordion__trigger--selected,
  html body main.l-legalpages a.l-legalpages__accordiontitle.is-active,
  html body main.l-legalpages a.l-legalpages__accordiontitle.xsample-stay-ul[aria-current="page"] {
    background-image: linear-gradient(#000, #000) !important;
    background-size: 100% 1px !important;
    background-position: left calc(100% - 0px) !important;
    background-repeat: no-repeat !important;
    /* sit black on the grey rail: padding leaves room; gradient at bottom of link */
    padding-bottom: 8px !important;
  }
  html body main.l-legalpages .l-legalpages__folderscarouselwrapper {
    /* grey full-width under tabs; active black is on the link bottom (on the rail) */
    padding-bottom: 0 !important;
    background-image: none !important;
    border-bottom: 1px solid #d0d0d0 !important;
  }
  html body main.l-legalpages a.l-legalpages__accordiontitle,
  html body main.l-legalpages a.l-legalpages__assettitle,
  html body main.l-legalpages a.l-legalpages__accordiontitle.xsample-stay-ul {
    margin-bottom: -1px !important; /* overlap grey rail so active black covers it */
  }
}


/* —— Pass 20260807x — mobile legal tabs: tight grey-in-between; active UL instant (no anim) —— */
@media (max-width: 899px) {
  /* Text → small gap → grey rail → black active flush under grey */
  html body main.l-legalpages .l-legalpages__folderscarouselwrapper {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: flex-end !important;
    gap: 18px !important;
    border-bottom: none !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
    /* 1px grey + 1px black under it — tight, not a big empty pad */
    padding: 0 0 2px !important;
    margin: 0 !important;
    box-shadow: none !important;
    background-color: transparent !important;
    background-image: linear-gradient(#d0d0d0, #d0d0d0) !important;
    background-size: 100% 1px !important;
    background-position: left calc(100% - 1px) !important; /* grey just above bottom */
    background-repeat: no-repeat !important;
  }
  html body main.l-legalpages .l-legalpages__folderscarouselwrapper::-webkit-scrollbar {
    display: none !important;
    height: 0 !important;
  }

  html body main.l-legalpages a.l-legalpages__accordiontitle,
  html body main.l-legalpages a.l-legalpages__assettitle,
  html body main.l-legalpages a.l-legalpages__accordiontitle.xsample-stay-ul {
    padding: 0 0 8px !important; /* even, tight gap above grey — was 12px */
    margin: 0 !important;
    border: 0 !important;
    border-bottom: 0 !important;
  }

  /* Default (inactive): hidden instantly — no scale / no transition on mobile */
  html body main.l-legalpages a.l-legalpages__accordiontitle > .xsample-ul-line,
  html body main.l-legalpages a.l-legalpages__accordiontitle > .l-legalpages__nav-line,
  html body main.l-legalpages a.l-legalpages__accordiontitle.xsample-stay-ul > .xsample-ul-line {
    bottom: -2px !important; /* under grey, in the 2px pad */
    height: 1px !important;
    min-height: 1px !important;
    max-height: 1px !important;
    width: 100% !important;
    left: 0 !important;
    right: 0 !important;
    background: #000 !important;
    opacity: 0 !important;
    visibility: hidden !important;
    transform: none !important;
    scale: none !important;
    clip-path: none !important;
    -webkit-clip-path: none !important;
    animation: none !important;
    animation-name: none !important;
    transition: none !important;
  }

  /* Hover on mobile (touch): still no draw animation */
  html body main.l-legalpages a.l-legalpages__accordiontitle:hover > .xsample-ul-line,
  html body main.l-legalpages a.l-legalpages__accordiontitle:focus-visible > .xsample-ul-line,
  html body main.l-legalpages a.l-legalpages__accordiontitle.xsample-stay-ul:hover > .xsample-ul-line,
  html body main.l-legalpages a.l-legalpages__accordiontitle.xsample-stay-ul:focus-visible > .xsample-ul-line {
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    transition: none !important;
    animation: none !important;
  }

  /* Active: click → appear (no L→R / no fade) */
  html body main.l-legalpages a.l-legalpages__accordiontitle[aria-current="page"] > .xsample-ul-line,
  html body main.l-legalpages a.l-legalpages__accordiontitle.c-accordion__trigger--selected > .xsample-ul-line,
  html body main.l-legalpages a.l-legalpages__accordiontitle.is-active > .xsample-ul-line,
  html body main.l-legalpages a.l-legalpages__accordiontitle.xsample-stay-ul[aria-current="page"] > .xsample-ul-line,
  html body main.l-legalpages a.l-legalpages__accordiontitle.xsample-stay-ul.c-accordion__trigger--selected > .xsample-ul-line,
  html body main.l-legalpages a.l-legalpages__accordiontitle.xsample-stay-ul.is-active > .xsample-ul-line,
  html body main.l-legalpages .l-legalpages__content.is-active a.l-legalpages__accordiontitle > .xsample-ul-line {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
    bottom: -2px !important;
    height: 1px !important;
    min-height: 1px !important;
    max-height: 1px !important;
    transform: none !important;
    scale: none !important;
    clip-path: none !important;
    -webkit-clip-path: none !important;
    animation: none !important;
    animation-name: none !important;
    transition: none !important;
    background: #000 !important;
  }
}

/* —— Pass 20260807z — mobile legal: grey up; equal gap text↔grey↔black —— */
@media (max-width: 899px) {
  html body main.l-legalpages .l-legalpages__folderscarouselwrapper {
    border-bottom: none !important;
    /* space under black so the stack isn’t flush to the edge */
    padding: 0 0 4px !important;
    margin: 0 !important;
    box-shadow: none !important;
    background-color: transparent !important;
    /* grey raised: sits at top of the 4px pad (moved up from flush-bottom) */
    background-image: linear-gradient(#d0d0d0, #d0d0d0) !important;
    background-size: 100% 1px !important;
    background-position: left calc(100% - 4px) !important;
    background-repeat: no-repeat !important;
  }

  html body main.l-legalpages a.l-legalpages__accordiontitle,
  html body main.l-legalpages a.l-legalpages__assettitle,
  html body main.l-legalpages a.l-legalpages__accordiontitle.xsample-stay-ul {
    /* text → grey ≈ 4px (was larger empty band) */
    padding: 0 0 4px !important;
    margin: 0 !important;
    border: 0 !important;
    border-bottom: 0 !important;
    background-image: none !important;
  }

  /* Kill link gradient — black is the span under the grey */
  html body main.l-legalpages a.l-legalpages__accordiontitle[aria-current="page"],
  html body main.l-legalpages a.l-legalpages__accordiontitle.c-accordion__trigger--selected,
  html body main.l-legalpages a.l-legalpages__accordiontitle.is-active,
  html body main.l-legalpages a.l-legalpages__accordiontitle.xsample-stay-ul[aria-current="page"],
  html body main.l-legalpages a.l-legalpages__accordiontitle.xsample-stay-ul.c-accordion__trigger--selected,
  html body main.l-legalpages a.l-legalpages__accordiontitle.xsample-stay-ul.is-active {
    background-image: none !important;
    background-color: transparent !important;
    padding-bottom: 4px !important;
  }

  html body main.l-legalpages a.l-legalpages__accordiontitle[aria-current="page"] > .xsample-ul-line,
  html body main.l-legalpages a.l-legalpages__accordiontitle.c-accordion__trigger--selected > .xsample-ul-line,
  html body main.l-legalpages a.l-legalpages__accordiontitle.is-active > .xsample-ul-line,
  html body main.l-legalpages a.l-legalpages__accordiontitle.xsample-stay-ul[aria-current="page"] > .xsample-ul-line,
  html body main.l-legalpages a.l-legalpages__accordiontitle.xsample-stay-ul.c-accordion__trigger--selected > .xsample-ul-line,
  html body main.l-legalpages a.l-legalpages__accordiontitle.xsample-stay-ul.is-active > .xsample-ul-line,
  html body main.l-legalpages .l-legalpages__content.is-active a.l-legalpages__accordiontitle > .xsample-ul-line {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
    width: 100% !important;
    left: 0 !important;
    right: 0 !important;
    height: 1px !important;
    min-height: 1px !important;
    max-height: 1px !important;
    /* ~3px under grey ≈ equal to ~4px text→grey */
    bottom: -3px !important;
    background: #000 !important;
    background-color: #000 !important;
    transform: none !important;
    scale: none !important;
    clip-path: none !important;
    -webkit-clip-path: none !important;
    animation: none !important;
    transition: none !important;
  }
}

/* —— Pass 20260807aa — legal mailto links: underline + clickable —— */
html body main.l-legalpages a.l-legalpages__mail {
  color: #000 !important;
  text-decoration: underline !important;
  text-decoration-thickness: 1px !important;
  text-underline-offset: 2px !important;
  text-decoration-color: #000 !important;
  cursor: pointer !important;
  background: none !important;
  background-image: none !important;
  border: 0 !important;
  box-shadow: none !important;
  font: inherit !important;
  letter-spacing: inherit !important;
}
html body main.l-legalpages a.l-legalpages__mail:hover,
html body main.l-legalpages a.l-legalpages__mail:focus-visible {
  opacity: 0.65 !important;
  text-decoration: underline !important;
}


/* —— Pass 20260807ab — legal UL one system (no jump); mail hover anim; essentials=5 —— */

/*
  Active + hover share the SAME span at the SAME bottom.
  Active never uses background-gradient (that jumped vs hover span).
  Active uses transform:none (not scaleX) so first paint isn’t hairline.
*/
html body main.l-legalpages a.l-legalpages__accordiontitle,
html body main.l-legalpages a.l-legalpages__assettitle,
html body main.l-legalpages a.l-legalpages__accordiontitle.xsample-stay-ul {
  background-image: none !important;
  background-color: transparent !important;
  text-decoration: none !important;
  border: 0 !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
}

html body main.l-legalpages a.l-legalpages__accordiontitle > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__accordiontitle > .l-legalpages__nav-line,
html body main.l-legalpages a.l-legalpages__accordiontitle.xsample-stay-ul > .xsample-ul-line {
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important; /* locked — never changes on hover/active/click */
  width: 100% !important;
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: #000 !important;
  background-color: #000 !important;
  background-image: none !important;
  box-shadow: none !important;
  pointer-events: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: scaleX(0) !important;
  transform-origin: left center !important;
  clip-path: none !important;
  -webkit-clip-path: none !important;
  animation: none !important;
  transition: transform 0.45s linear !important;
}

/* Hover (inactive only): L→R draw — same bottom:0 */
html body main.l-legalpages a.l-legalpages__accordiontitle:not([aria-current="page"]):not(.c-accordion__trigger--selected):not(.is-active):hover > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__accordiontitle:not([aria-current="page"]):not(.c-accordion__trigger--selected):not(.is-active):focus-visible > .xsample-ul-line {
  transform: scaleX(1) !important;
  transition: transform 0.45s linear !important;
  animation: none !important;
  bottom: 0 !important;
  height: 1px !important;
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/* Active: instant solid line — NO scaleX (hairline bug), NO position change */
html body main.l-legalpages a.l-legalpages__accordiontitle[aria-current="page"] > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__accordiontitle.c-accordion__trigger--selected > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__accordiontitle.is-active > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__accordiontitle.xsample-stay-ul[aria-current="page"] > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__accordiontitle.xsample-stay-ul.c-accordion__trigger--selected > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__accordiontitle.xsample-stay-ul.is-active > .xsample-ul-line,
html body main.l-legalpages .l-legalpages__content.is-active a.l-legalpages__accordiontitle > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__accordiontitle[aria-current="page"]:hover > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__accordiontitle.c-accordion__trigger--selected:hover > .xsample-ul-line {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
  bottom: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  background: #000 !important;
  background-color: #000 !important;
  /* transform:none = full bar without GPU scale thinning */
  transform: none !important;
  scale: none !important;
  clip-path: none !important;
  -webkit-clip-path: none !important;
  animation: none !important;
  transition: none !important;
}

/* Desktop: kill old gradient-active paint */
html body main.l-legalpages a.l-legalpages__accordiontitle[aria-current="page"],
html body main.l-legalpages a.l-legalpages__accordiontitle.c-accordion__trigger--selected,
html body main.l-legalpages a.l-legalpages__accordiontitle.is-active,
html body main.l-legalpages a.l-legalpages__accordiontitle.xsample-stay-ul[aria-current="page"],
html body main.l-legalpages a.l-legalpages__accordiontitle.xsample-stay-ul.c-accordion__trigger--selected,
html body main.l-legalpages a.l-legalpages__accordiontitle.xsample-stay-ul.is-active {
  background-image: none !important;
  background-color: transparent !important;
}

@media (max-width: 899px) {
  html body main.l-legalpages .l-legalpages__folderscarouselwrapper {
    border-bottom: none !important;
    padding: 0 0 4px !important;
    background-image: linear-gradient(#d0d0d0, #d0d0d0) !important;
    background-size: 100% 1px !important;
    background-position: left calc(100% - 4px) !important;
    background-repeat: no-repeat !important;
  }
  html body main.l-legalpages a.l-legalpages__accordiontitle,
  html body main.l-legalpages a.l-legalpages__assettitle,
  html body main.l-legalpages a.l-legalpages__accordiontitle.xsample-stay-ul,
  html body main.l-legalpages a.l-legalpages__accordiontitle[aria-current="page"],
  html body main.l-legalpages a.l-legalpages__accordiontitle.c-accordion__trigger--selected,
  html body main.l-legalpages a.l-legalpages__accordiontitle.is-active {
    padding: 0 0 4px !important; /* identical active/inactive — no jump */
    margin: 0 !important;
    background-image: none !important;
  }
  /* Active black sits at bottom:0 of the 4px pad (= on grey). Same as hover. */
  html body main.l-legalpages a.l-legalpages__accordiontitle > .xsample-ul-line,
  html body main.l-legalpages a.l-legalpages__accordiontitle[aria-current="page"] > .xsample-ul-line,
  html body main.l-legalpages a.l-legalpages__accordiontitle.c-accordion__trigger--selected > .xsample-ul-line,
  html body main.l-legalpages a.l-legalpages__accordiontitle.is-active > .xsample-ul-line {
    bottom: 0 !important;
    transition: none !important; /* mobile: no draw anim on active */
  }
  html body main.l-legalpages a.l-legalpages__accordiontitle:not([aria-current="page"]):not(.c-accordion__trigger--selected):not(.is-active):hover > .xsample-ul-line {
    transition: none !important; /* mobile tap: instant */
    transform: none !important;
    opacity: 1 !important;
  }
}

/* Legal mailto: solid UL at rest; L→R wipe on hover (same stay-ul family) */
html body main.l-legalpages a.l-legalpages__mail {
  position: relative !important;
  display: inline-block !important;
  width: fit-content !important;
  max-width: 100% !important;
  padding: 0 0 2px !important;
  margin: 0 !important;
  color: #000 !important;
  text-decoration: none !important;
  text-decoration-line: none !important;
  cursor: pointer !important;
  background: none !important;
  background-image: none !important;
  border: 0 !important;
  box-shadow: none !important;
  font: inherit !important;
  letter-spacing: inherit !important;
  opacity: 1 !important;
}
html body main.l-legalpages a.l-legalpages__mail::before,
html body main.l-legalpages a.l-legalpages__mail::after {
  content: none !important;
  display: none !important;
}
html body main.l-legalpages a.l-legalpages__mail > .xsample-ul-line {
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: #000 !important;
  background-color: #000 !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  transform-origin: left center !important;
  clip-path: inset(0 0 0 0) !important;
  -webkit-clip-path: inset(0 0 0 0) !important;
  animation: none !important;
  transition: none !important;
  pointer-events: none !important;
}
html body main.l-legalpages a.l-legalpages__mail:hover > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__mail:focus-visible > .xsample-ul-line {
  opacity: 1 !important;
  transform: none !important;
  animation: xsample-stay-ul-clip 0.9s linear forwards !important;
  animation-name: xsample-stay-ul-clip !important;
}
html body main.l-legalpages a.l-legalpages__mail:hover,
html body main.l-legalpages a.l-legalpages__mail:focus-visible {
  opacity: 1 !important;
  text-decoration: none !important;
}


/* —— Pass 20260807ac — mail UL tight + scaleX wipe; active box-shadow (never thin);
      mobile tabs: no hover draw —— */

/* Active legal tab: inset shadow = true 1px, never GPU-scaled hairline */
html body main.l-legalpages a.l-legalpages__accordiontitle[aria-current="page"],
html body main.l-legalpages a.l-legalpages__accordiontitle.c-accordion__trigger--selected,
html body main.l-legalpages a.l-legalpages__accordiontitle.is-active,
html body main.l-legalpages a.l-legalpages__accordiontitle.xsample-stay-ul[aria-current="page"],
html body main.l-legalpages a.l-legalpages__accordiontitle.xsample-stay-ul.c-accordion__trigger--selected,
html body main.l-legalpages a.l-legalpages__accordiontitle.xsample-stay-ul.is-active,
html body main.l-legalpages .l-legalpages__content.is-active a.l-legalpages__accordiontitle {
  background-image: none !important;
  background-color: transparent !important;
  text-decoration: none !important;
  border: 0 !important;
  border-bottom: 0 !important;
  /* paints on the padding edge — same plane as span bottom:0 */
  box-shadow: inset 0 -1px 0 #000 !important;
}
html body main.l-legalpages a.l-legalpages__accordiontitle[aria-current="page"] > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__accordiontitle.c-accordion__trigger--selected > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__accordiontitle.is-active > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__accordiontitle.xsample-stay-ul[aria-current="page"] > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__accordiontitle.xsample-stay-ul.c-accordion__trigger--selected > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__accordiontitle.xsample-stay-ul.is-active > .xsample-ul-line,
html body main.l-legalpages .l-legalpages__content.is-active a.l-legalpages__accordiontitle > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__accordiontitle[aria-current="page"]:hover > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__accordiontitle.c-accordion__trigger--selected:hover > .xsample-ul-line {
  /* hide span on active — box-shadow is the underline (no scaleX hairline) */
  opacity: 0 !important;
  visibility: hidden !important;
  transform: scaleX(0) !important;
  transition: none !important;
  animation: none !important;
  pointer-events: none !important;
}

/* Inactive hover still uses span at bottom:0 (desktop) */
html body main.l-legalpages a.l-legalpages__accordiontitle:not([aria-current="page"]):not(.c-accordion__trigger--selected):not(.is-active) {
  box-shadow: none !important;
}

@media (max-width: 899px) {
  /* Mobile tabs: NEVER draw on hover — only active shows */
  html body main.l-legalpages a.l-legalpages__accordiontitle:hover > .xsample-ul-line,
  html body main.l-legalpages a.l-legalpages__accordiontitle:focus-visible > .xsample-ul-line,
  html body main.l-legalpages a.l-legalpages__accordiontitle.xsample-stay-ul:hover > .xsample-ul-line,
  html body main.l-legalpages a.l-legalpages__accordiontitle:not([aria-current="page"]):not(.c-accordion__trigger--selected):not(.is-active):hover > .xsample-ul-line,
  html body main.l-legalpages a.l-legalpages__accordiontitle:not([aria-current="page"]):not(.c-accordion__trigger--selected):not(.is-active):focus-visible > .xsample-ul-line {
    transform: scaleX(0) !important;
    opacity: 0 !important;
    visibility: hidden !important;
    transition: none !important;
    animation: none !important;
  }
  html body main.l-legalpages a.l-legalpages__accordiontitle[aria-current="page"],
  html body main.l-legalpages a.l-legalpages__accordiontitle.c-accordion__trigger--selected,
  html body main.l-legalpages a.l-legalpages__accordiontitle.is-active {
    box-shadow: inset 0 -1px 0 #000 !important;
    padding-bottom: 4px !important;
  }
}

/* Mailto: tight gap; solid at rest; L→R via scaleX (reliable) */
html body main.l-legalpages a.l-legalpages__mail,
html body main.l-legalpages a.l-legalpages__mail.xsample-stay-ul {
  position: relative !important;
  display: inline-block !important;
  width: fit-content !important;
  max-width: 100% !important;
  padding: 0 0 1px !important; /* tight — body text is small */
  margin: 0 !important;
  color: #000 !important;
  text-decoration: none !important;
  text-decoration-line: none !important;
  text-underline-offset: 0 !important;
  cursor: pointer !important;
  background: none !important;
  background-image: none !important;
  border: 0 !important;
  box-shadow: none !important;
  font: inherit !important;
  font-size: inherit !important;
  line-height: 1.35 !important;
  letter-spacing: inherit !important;
  opacity: 1 !important;
}
html body main.l-legalpages a.l-legalpages__mail::before,
html body main.l-legalpages a.l-legalpages__mail::after {
  content: none !important;
  display: none !important;
}
html body main.l-legalpages a.l-legalpages__mail > .xsample-ul-line {
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: #000 !important;
  background-color: #000 !important;
  opacity: 1 !important;
  visibility: visible !important;
  /* solid at rest */
  transform: scaleX(1) !important;
  transform-origin: left center !important;
  clip-path: none !important;
  -webkit-clip-path: none !important;
  animation: none !important;
  transition: none !important;
  pointer-events: none !important;
}
/* Hover: wipe off right→left then redraw left→right (scaleX keyframes) */
@keyframes xsample-mail-ul-wipe {
  0%   { transform: scaleX(1); transform-origin: right center; }
  45%  { transform: scaleX(0); transform-origin: right center; }
  46%  { transform: scaleX(0); transform-origin: left center; }
  100% { transform: scaleX(1); transform-origin: left center; }
}
html body main.l-legalpages a.l-legalpages__mail:hover > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__mail:focus-visible > .xsample-ul-line {
  animation: xsample-mail-ul-wipe 0.55s linear forwards !important;
  animation-name: xsample-mail-ul-wipe !important;
  transition: none !important;
  clip-path: none !important;
  -webkit-clip-path: none !important;
  opacity: 1 !important;
}
html body main.l-legalpages a.l-legalpages__mail:hover,
html body main.l-legalpages a.l-legalpages__mail:focus-visible {
  opacity: 1 !important;
  text-decoration: none !important;
}


/* —— Pass 20260807ad — mail: zero offset; animate L→R on hover only (hidden at rest) —— */
html body main.l-legalpages a.l-legalpages__mail,
html body main.l-legalpages a.l-legalpages__mail.xsample-stay-ul {
  position: relative !important;
  display: inline-block !important;
  width: fit-content !important;
  max-width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  color: #000 !important;
  text-decoration: none !important;
  text-decoration-line: none !important;
  text-underline-offset: 0 !important;
  cursor: pointer !important;
  background: none !important;
  background-image: none !important;
  border: 0 !important;
  box-shadow: none !important;
  font: inherit !important;
  font-size: inherit !important;
  line-height: 1.35 !important;
  letter-spacing: inherit !important;
  opacity: 1 !important;
}
html body main.l-legalpages a.l-legalpages__mail::before,
html body main.l-legalpages a.l-legalpages__mail::after {
  content: none !important;
  display: none !important;
}
html body main.l-legalpages a.l-legalpages__mail > .xsample-ul-line {
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important; /* flush under glyphs — no extra offset */
  width: 100% !important;
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: #000 !important;
  background-color: #000 !important;
  opacity: 1 !important;
  visibility: visible !important;
  /* hidden at rest — appears via hover animation */
  transform: scaleX(0) !important;
  transform-origin: left center !important;
  clip-path: none !important;
  -webkit-clip-path: none !important;
  animation: none !important;
  transition: transform 0.4s linear !important;
  pointer-events: none !important;
}
html body main.l-legalpages a.l-legalpages__mail:hover > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__mail:focus-visible > .xsample-ul-line {
  transform: scaleX(1) !important;
  transform-origin: left center !important;
  animation: none !important;
  transition: transform 0.4s linear !important;
  clip-path: none !important;
  -webkit-clip-path: none !important;
  opacity: 1 !important;
  visibility: visible !important;
}
html body main.l-legalpages a.l-legalpages__mail:hover,
html body main.l-legalpages a.l-legalpages__mail:focus-visible {
  opacity: 1 !important;
  text-decoration: none !important;
}


/* —— Pass 20260807ae — mail UL: solid + minimal offset —— */
html body main.l-legalpages a.l-legalpages__mail,
html body main.l-legalpages a.l-legalpages__mail.xsample-stay-ul {
  position: relative !important;
  display: inline !important; /* sit in text flow — less gap than inline-block */
  padding: 0 !important;
  margin: 0 !important;
  color: #000 !important;
  text-decoration: none !important;
  text-decoration-line: none !important;
  text-underline-offset: 0 !important;
  cursor: pointer !important;
  background: none !important;
  background-image: none !important;
  border: 0 !important;
  box-shadow: none !important;
  font: inherit !important;
  font-size: inherit !important;
  line-height: 1.35 !important;
  letter-spacing: inherit !important;
  opacity: 1 !important;
}
html body main.l-legalpages a.l-legalpages__mail::before,
html body main.l-legalpages a.l-legalpages__mail::after {
  content: none !important;
  display: none !important;
}
/* Solid 1px underline, flush under the text (no padding offset) */
html body main.l-legalpages a.l-legalpages__mail > .xsample-ul-line {
  display: none !important; /* use text-decoration instead — true flush under glyphs */
}
html body main.l-legalpages a.l-legalpages__mail,
html body main.l-legalpages a.l-legalpages__mail.xsample-stay-ul {
  text-decoration: underline !important;
  text-decoration-line: underline !important;
  text-decoration-thickness: 1px !important;
  text-decoration-color: #000 !important;
  text-underline-offset: 1px !important; /* minimal — was too far */
  text-underline-position: under !important;
}
html body main.l-legalpages a.l-legalpages__mail:hover,
html body main.l-legalpages a.l-legalpages__mail:focus-visible {
  opacity: 1 !important;
  text-decoration: underline !important;
  text-decoration-thickness: 1px !important;
  text-underline-offset: 1px !important;
}


/* —— Pass 20260807af — mail: solid at rest + L→R wipe on hover; tight offset —— */
@keyframes xsample-mail-ul-wipe {
  0%   { transform: scaleX(1); transform-origin: right center; }
  45%  { transform: scaleX(0); transform-origin: right center; }
  46%  { transform: scaleX(0); transform-origin: left center; }
  100% { transform: scaleX(1); transform-origin: left center; }
}

html body main.l-legalpages a.l-legalpages__mail,
html body main.l-legalpages a.l-legalpages__mail.xsample-stay-ul {
  position: relative !important;
  display: inline-block !important;
  width: fit-content !important;
  max-width: 100% !important;
  padding: 0 0 1px !important; /* tight under small body text */
  margin: 0 !important;
  color: #000 !important;
  text-decoration: none !important;
  text-decoration-line: none !important;
  text-underline-offset: 0 !important;
  cursor: pointer !important;
  background: none !important;
  background-image: none !important;
  border: 0 !important;
  box-shadow: none !important;
  font: inherit !important;
  font-size: inherit !important;
  line-height: 1.35 !important;
  letter-spacing: inherit !important;
  opacity: 1 !important;
}
html body main.l-legalpages a.l-legalpages__mail::before,
html body main.l-legalpages a.l-legalpages__mail::after {
  content: none !important;
  display: none !important;
}

/* Solid 1px line at rest */
html body main.l-legalpages a.l-legalpages__mail > .xsample-ul-line {
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: #000 !important;
  background-color: #000 !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: scaleX(1) !important;
  transform-origin: left center !important;
  clip-path: none !important;
  -webkit-clip-path: none !important;
  animation: none !important;
  transition: none !important;
  pointer-events: none !important;
}

/* Hover: wipe off → redraw L→R (stay-ul style) */
html body main.l-legalpages a.l-legalpages__mail:hover > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__mail:focus-visible > .xsample-ul-line {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: scaleX(1) !important;
  clip-path: none !important;
  -webkit-clip-path: none !important;
  animation: xsample-mail-ul-wipe 0.55s linear forwards !important;
  animation-name: xsample-mail-ul-wipe !important;
  transition: none !important;
}
html body main.l-legalpages a.l-legalpages__mail:hover,
html body main.l-legalpages a.l-legalpages__mail:focus-visible {
  opacity: 1 !important;
  text-decoration: none !important;
  text-decoration-line: none !important;
}


/* —— Pass 20260807ag — mail UL = Find store stay-ul (clip wipe); 1px locked forever —— */
/*
  Earlier passes killed the anim with clip-path:none !important / scaleX / text-decoration.
  This mirrors site-footer__find-store exactly: transform:none + clip wipe, height locked 1px.
*/
html body main.l-legalpages a.l-legalpages__mail,
html body main.l-legalpages a.l-legalpages__mail.xsample-stay-ul {
  position: relative !important;
  display: inline-block !important;
  width: fit-content !important;
  max-width: 100% !important;
  padding: 0 0 1px !important;
  margin: 0 !important;
  border: 0 !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
  text-decoration: none !important;
  text-decoration-line: none !important;
  text-underline-offset: 0 !important;
  background: none !important;
  background-image: none !important;
  color: #000 !important;
  cursor: pointer !important;
  font: inherit !important;
  font-size: inherit !important;
  font-weight: 400 !important;
  font-synthesis: none !important;
  line-height: 1.35 !important;
  letter-spacing: inherit !important;
  -webkit-text-stroke: 0 !important;
  text-shadow: none !important;
  opacity: 1 !important;
}
html body main.l-legalpages a.l-legalpages__mail::before,
html body main.l-legalpages a.l-legalpages__mail::after,
html body main.l-legalpages a.l-legalpages__mail:hover::before,
html body main.l-legalpages a.l-legalpages__mail:hover::after {
  content: none !important;
  display: none !important;
  width: 0 !important;
  height: 0 !important;
  background: none !important;
  animation: none !important;
  transform: none !important;
}

/* Rest: solid 1px — same as Find store (NO scaleX = no bold/thin) */
html body main.l-legalpages a.l-legalpages__mail > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__mail.xsample-stay-ul > .xsample-ul-line {
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  max-width: none !important;
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: #000 !important;
  background-color: #000 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: none !important;
  transform: none !important;
  scale: none !important;
  transition: none !important;
  /* rest clip — no !important so hover keyframes can animate it */
  clip-path: inset(0 0 0 0);
  -webkit-clip-path: inset(0 0 0 0);
  animation: none !important;
  animation-name: none !important;
}

/* Hover: identical Find-store wipe; height stays 1px before/during/after */
html body main.l-legalpages a.l-legalpages__mail:hover > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__mail:focus-visible > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__mail.xsample-stay-ul:hover > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__mail.xsample-stay-ul:focus-visible > .xsample-ul-line {
  display: block !important;
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  background: #000 !important;
  background-color: #000 !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  scale: none !important;
  transition: none !important;
  animation: xsample-stay-ul-clip 0.9s linear forwards !important;
  animation-name: xsample-stay-ul-clip !important;
  animation-duration: 0.9s !important;
  animation-timing-function: linear !important;
  animation-fill-mode: forwards !important;
}
html body main.l-legalpages a.l-legalpages__mail:hover,
html body main.l-legalpages a.l-legalpages__mail:focus-visible {
  opacity: 1 !important;
  text-decoration: none !important;
  font-weight: 400 !important;
  -webkit-text-stroke: 0 !important;
  text-shadow: none !important;
}


/* —— Pass 20260807ah — mail clip MUST be inset(0 0 0 0), never none (none breaks wipe) —— */
html body main.l-legalpages a.l-legalpages__mail > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__mail.xsample-stay-ul > .xsample-ul-line {
  /* rest only — do NOT set clip on :hover or keyframes cannot move it */
  clip-path: inset(0 0 0 0) !important;
  -webkit-clip-path: inset(0 0 0 0) !important;
}
html body main.l-legalpages a.l-legalpages__mail:hover > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__mail:focus-visible > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__mail.xsample-stay-ul:hover > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__mail.xsample-stay-ul:focus-visible > .xsample-ul-line {
  /* explicitly clear !important clip so animation owns clip-path */
  clip-path: inset(0 0 0 0);
  -webkit-clip-path: inset(0 0 0 0);
}
html body main.l-legalpages a.l-legalpages__mail > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__mail.xsample-stay-ul > .xsample-ul-line {
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  background: #000 !important;
  background-color: #000 !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  scale: none !important;
  transition: none !important;
  animation: none !important;
  animation-name: none !important;
}
/* Hover: re-enable wipe — animation overrides the !important clip during play */
html body main.l-legalpages a.l-legalpages__mail:hover > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__mail:focus-visible > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__mail.xsample-stay-ul:hover > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__mail.xsample-stay-ul:focus-visible > .xsample-ul-line {
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  background: #000 !important;
  transform: none !important;
  scale: none !important;
  animation: xsample-stay-ul-clip 0.9s linear forwards !important;
  animation-name: xsample-stay-ul-clip !important;
  animation-duration: 0.9s !important;
  animation-timing-function: linear !important;
  animation-fill-mode: forwards !important;
}


/* —— Pass 20260807aj — mail UL up + R→L wipe; find-store weight locked 1px always —— */
html body main.l-legalpages a.l-legalpages__mail,
html body main.l-legalpages a.l-legalpages__mail.xsample-stay-ul {
  padding: 0 !important;
}
html body main.l-legalpages a.l-legalpages__mail > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__mail.xsample-stay-ul > .xsample-ul-line {
  bottom: 2px !important; /* move up toward text */
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  transform: none !important;
  scale: none !important;
  box-shadow: none !important;
  border: 0 !important;
  filter: none !important;
}

/* Find store / locale / essentials stay-ul: never bold after hover */
html body a.site-footer__find-store > .xsample-ul-line,
html body .site-footer__find-store > .xsample-ul-line,
html body a.site-footer__locale-link > .xsample-ul-line,
html body .site-footer__locale-link > .xsample-ul-line,
html body a.site-essentials-hub__sub-right > .xsample-ul-line,
html body .site-essentials-hub__sub-right > .xsample-ul-line,
html body a.site-footer__find-store:hover > .xsample-ul-line,
html body a.site-footer__find-store:focus-visible > .xsample-ul-line,
html body a.site-footer__find-store:not(:hover) > .xsample-ul-line,
html body a.xsample-stay-ul:not(.l-legalpages__accordiontitle) > .xsample-ul-line,
html body a.xsample-stay-ul:not(.l-legalpages__accordiontitle):hover > .xsample-ul-line {
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  transform: none !important;
  scale: none !important;
  box-shadow: none !important;
  border: 0 !important;
  filter: none !important;
  background: #000 !important;
  background-color: #000 !important;
  opacity: 1 !important;
}
html body a.site-footer__find-store,
html body a.site-footer__find-store:hover,
html body a.site-footer__find-store:focus-visible,
html body a.site-footer__locale-link,
html body a.site-footer__locale-link:hover {
  font-weight: 400 !important;
  font-synthesis: none !important;
  -webkit-text-stroke: 0 !important;
  text-shadow: none !important;
}


/* —— Pass 20260807ak — all mail: R→L + offset; restore stay-ul CSS wipe (no inline clip lock) —— */
html body main.l-legalpages a.l-legalpages__mail,
html body main.l-legalpages a.l-legalpages__mail.xsample-stay-ul,
html body main.l-legalpages a[href^="mailto:"].l-legalpages__mail {
  position: relative !important;
  display: inline-block !important;
  padding: 0 !important;
  text-decoration: none !important;
  font-weight: 400 !important;
}
html body main.l-legalpages a.l-legalpages__mail > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__mail.xsample-stay-ul > .xsample-ul-line,
html body main.l-legalpages a[href^="mailto:"].l-legalpages__mail > .xsample-ul-line {
  bottom: 2px !important;
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  transform: none !important;
  scale: none !important;
  animation: none !important; /* JS owns R→L wipe */
  animation-name: none !important;
}
html body main.l-legalpages a.l-legalpages__mail:hover > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__mail:focus-visible > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__mail.xsample-stay-ul:hover > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__mail.xsample-stay-ul:focus-visible > .xsample-ul-line {
  animation: none !important;
  animation-name: none !important;
  transform: none !important;
  height: 1px !important;
}

/* Restore Find store / locale / essentials / cookie / read-more wipe after weight lock */
html body a.site-footer__find-store.xsample-stay-ul:hover > .xsample-ul-line,
html body a.site-footer__find-store.xsample-stay-ul:focus-visible > .xsample-ul-line,
html body a.site-footer__locale-link.xsample-stay-ul:hover > .xsample-ul-line,
html body a.site-footer__locale-link.xsample-stay-ul:focus-visible > .xsample-ul-line,
html body a.site-essentials-hub__sub-right.xsample-stay-ul:hover > .xsample-ul-line,
html body a.site-essentials-hub__sub-right.xsample-stay-ul:focus-visible > .xsample-ul-line,
html body .cookie-banner__link.xsample-stay-ul:hover > .xsample-ul-line,
html body .cookie-banner__link.xsample-stay-ul:focus-visible > .xsample-ul-line,
html body button.cookie-banner__link.xsample-stay-ul:hover > .xsample-ul-line,
html body button.cookie-banner__link.xsample-stay-ul:focus-visible > .xsample-ul-line,
html body .c-expander__btn.xsample-stay-ul:hover > .xsample-ul-line,
html body .c-expander__btn.xsample-stay-ul:focus-visible > .xsample-ul-line,
html body a.xsample-stay-ul:not(.l-legalpages__accordiontitle):not(.l-legalpages__mail):hover > .xsample-ul-line,
html body a.xsample-stay-ul:not(.l-legalpages__accordiontitle):not(.l-legalpages__mail):focus-visible > .xsample-ul-line {
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  transform: none !important;
  scale: none !important;
  background: #000 !important;
  animation: xsample-stay-ul-clip 0.9s linear forwards !important;
  animation-name: xsample-stay-ul-clip !important;
  animation-duration: 0.9s !important;
  animation-timing-function: linear !important;
  animation-fill-mode: forwards !important;
  animation-play-state: running !important;
}


/* —— Pass 20260807al — JS owns stay/mail wipe; kill conflicting CSS anim on those —— */
html body a.site-footer__find-store > .xsample-ul-line,
html body a.site-footer__locale-link > .xsample-ul-line,
html body a.site-essentials-hub__sub-right > .xsample-ul-line,
html body .cookie-banner__link > .xsample-ul-line,
html body .c-expander__btn.xsample-stay-ul > .xsample-ul-line,
html body a.site-footer__find-store:hover > .xsample-ul-line,
html body a.site-footer__locale-link:hover > .xsample-ul-line,
html body a.site-essentials-hub__sub-right:hover > .xsample-ul-line,
html body .cookie-banner__link:hover > .xsample-ul-line,
html body .c-expander__btn.xsample-stay-ul:hover > .xsample-ul-line {
  animation: none !important;
  animation-name: none !important;
  transform: none !important;
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
}
html body main.l-legalpages a.l-legalpages__mail > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__mail:hover > .xsample-ul-line {
  bottom: 2px !important;
  animation: none !important;
  animation-name: none !important;
}


/* —— Pass 20260807am — no scaleX zoom on locale/find; mail L→R; tight offset —— */
html body a.site-footer__locale-link,
html body a.site-footer__locale-link.site-footer__find-store,
html body .site-footer__locale a.site-footer__locale-link,
html body .site-footer__locale a.site-footer__locale-link.site-footer__find-store,
html body a.site-footer__find-store,
html body a.site-footer__find-store.xsample-stay-ul,
html body a.site-essentials-hub__sub-right {
  padding: 0 0 1px !important;
  transform: none !important;
  scale: none !important;
  font-weight: 400 !important;
  font-size: inherit !important;
  letter-spacing: normal !important;
}
html body a.site-footer__locale-link:hover,
html body a.site-footer__locale-link:focus-visible,
html body a.site-footer__locale-link:active,
html body .site-footer__locale a.site-footer__locale-link:hover,
html body a.site-footer__find-store:hover,
html body a.site-footer__find-store:focus-visible,
html body a.site-essentials-hub__sub-right:hover {
  transform: none !important;
  scale: none !important;
  font-weight: 400 !important;
  font-size: inherit !important;
  letter-spacing: normal !important;
  -webkit-text-stroke: 0 !important;
  text-shadow: none !important;
}

/* Kill scaleX perfect-ltr / stay-ul CSS anim — JS clip wipe owns hover */
html body .site-footer__locale a.site-footer__locale-link > .xsample-ul-line,
html body .site-footer__locale a.site-footer__locale-link.site-footer__find-store > .xsample-ul-line,
html body a.site-footer__locale-link.site-footer__find-store > .xsample-ul-line,
html body a.site-footer__locale-link > .xsample-ul-line,
html body a.site-footer__find-store > .xsample-ul-line,
html body a.site-essentials-hub__sub-right > .xsample-ul-line,
html body .site-footer__locale a.site-footer__locale-link:hover > .xsample-ul-line,
html body .site-footer__locale a.site-footer__locale-link:focus-visible > .xsample-ul-line,
html body .site-footer__locale a.site-footer__locale-link.site-footer__find-store:hover > .xsample-ul-line,
html body .site-footer__locale a.site-footer__locale-link.site-footer__find-store:focus-visible > .xsample-ul-line,
html body a.site-footer__locale-link.site-footer__find-store:hover > .xsample-ul-line,
html body a.site-footer__locale-link.site-footer__find-store:focus-visible > .xsample-ul-line,
html body a.site-footer__locale-link:hover > .xsample-ul-line,
html body a.site-footer__find-store:hover > .xsample-ul-line,
html body a.site-essentials-hub__sub-right:hover > .xsample-ul-line {
  bottom: 0 !important;
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  transform: none !important;
  scale: none !important;
  transform-origin: left center !important;
  animation: none !important;
  animation-name: none !important;
  transition: none !important;
}

html body main.l-legalpages a.l-legalpages__mail > .xsample-ul-line,
html body main.l-legalpages a.l-legalpages__mail:hover > .xsample-ul-line {
  bottom: 2px !important;
  transform: none !important;
  scale: none !important;
  animation: none !important;
  animation-name: none !important;
}


/* —— Pass 20260807an — filter accordion expand —— */
html body .site-filter__panel {
  display: grid;
  grid-template-rows: 0fr;
  opacity: 0;
  transition:
    grid-template-rows 0.28s cubic-bezier(0.22, 1, 0.36, 1),
    opacity 0.22s ease;
}
html body .site-filter__panel.is-open {
  grid-template-rows: 1fr;
  opacity: 1;
}
html body .site-filter__panel-inner {
  overflow: hidden;
  min-height: 0;
}
html body .site-filter__chevron {
  transition: transform 0.28s cubic-bezier(0.22, 1, 0.36, 1);
  transform: rotate(0deg);
}
html body .site-filter__chevron.is-open {
  transform: rotate(180deg);
}

/* PLP cat links look like buttons */
html body a.site-plp-cat {
  text-decoration: none;
  color: #000;
}


/* —— Pass 20260807aq — PDP no promo; transparent header (dropdown removed; padding restored) —— */

/* Product: never show announcement bar */
html.product-page .site-promo,
html body.product-page .site-promo,
html.product-page body .site-promo {
  display: none !important;
  height: 0 !important;
  min-height: 0 !important;
  max-height: 0 !important;
  overflow: hidden !important;
  visibility: hidden !important;
  pointer-events: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}
html.product-page,
html body.product-page {
  --promo-bar-height: 0px !important;
}

/* PDP header: transparent over gallery at top; solid when scrolled; hide on scroll-down */
html body.product-page header.site-header.site-header--pdp,
html body.product-page .site-header.site-header--pdp {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  transition: transform 0.32s cubic-bezier(0.22, 1, 0.36, 1), background-color 0.22s ease, color 0.22s ease !important;
}
html body.product-page header.site-header.is-header-transparent,
html body.product-page .site-header.is-header-transparent,
html body.product-page header.site-header.site-header--pdp.is-header-transparent {
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  border-bottom-color: transparent !important;
}
html body.product-page header.site-header:not(.is-header-transparent),
html body.product-page .site-header:not(.is-header-transparent) {
  background: #fff !important;
  background-color: #fff !important;
}
html body.product-page header.site-header.is-header-off,
html body.product-page .site-header.is-header-off {
  transform: translate3d(0, -120%, 0) !important;
}

/* Gallery sits under transparent header */
html body.product-page main.site-product .site-product__desktop {
  margin-top: 0 !important;
}
@media (min-width: 768px) {
  html body.product-page main.site-product {
    padding-top: 0 !important;
  }
}

/* Product buy column width closer to BV reference */
html body.product-page main.site-product .site-product__buy,
html body.product-page main.site-product .site-product__buy-wrap,
html body.product-page main.site-product .site-product__desc,
html body.product-page main.site-product .site-product__accordions {
  max-width: 48rem !important;
  width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
html body.product-page main.site-product .site-product__buy-wrap {
  padding-left: 1.25rem !important;
  padding-right: 1.25rem !important;
  padding-top: 2rem !important;
  padding-bottom: 2rem !important;
}

/* Product drawers / overlays: match site filter timing + cover */
html body.product-page .site-drawer,
html body.product-page .site-drawer--product {
  transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1) !important;
}
html body.product-page .site-drawer__backdrop {
  transition: opacity 0.4s cubic-bezier(0.22, 1, 0.36, 1) !important;
  background: rgba(0, 0, 0, 0.42) !important;
}


/* —— Pass 20260807aq — PLP cats: L→R span underline; lock type so no hover shrink —— */
html body main.site-collections-products a.site-plp-cat,
html body main.site-collections-products button.site-plp-cat,
html body main.site-collections-products .site-plp-cat {
  position: relative !important;
  display: inline-block !important;
  padding-bottom: 3px !important;
  font-weight: 400 !important;
  letter-spacing: normal !important;
  transform: none !important;
  text-decoration: none !important;
  text-decoration-line: none !important;
  background-image: none !important;
  background-size: auto !important;
  animation: none !important;
  transition: color 0.2s ease !important;
  -webkit-text-stroke: 0 !important;
  text-shadow: none !important;
}
html body main.site-collections-products a.site-plp-cat:hover,
html body main.site-collections-products a.site-plp-cat:focus-visible,
html body main.site-collections-products a.site-plp-cat.is-active,
html body main.site-collections-products button.site-plp-cat:hover,
html body main.site-collections-products button.site-plp-cat:focus-visible,
html body main.site-collections-products button.site-plp-cat.is-active,
html body main.site-collections-products .site-plp-cat:hover,
html body main.site-collections-products .site-plp-cat:focus-visible,
html body main.site-collections-products .site-plp-cat.is-active {
  font-weight: 400 !important;
  letter-spacing: normal !important;
  transform: none !important;
  background-image: none !important;
  background-size: auto !important;
  animation: none !important;
  text-decoration: none !important;
  -webkit-text-stroke: 0 !important;
  text-shadow: none !important;
}
html body main.site-collections-products a.site-plp-cat::before,
html body main.site-collections-products a.site-plp-cat::after,
html body main.site-collections-products button.site-plp-cat::before,
html body main.site-collections-products button.site-plp-cat::after,
html body main.site-collections-products .site-plp-cat::before,
html body main.site-collections-products .site-plp-cat::after {
  content: none !important;
  display: none !important;
}
html body main.site-collections-products .site-plp-cat__line,
html body main.site-collections-products a.site-plp-cat > .site-plp-cat__line,
html body main.site-collections-products button.site-plp-cat > .site-plp-cat__line,
html body main.site-collections-products .site-plp-cat.is-active > .site-plp-cat__line,
html body main.site-collections-products .site-plp-cat.is-active > span:last-child {
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  background: #000 !important;
  pointer-events: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: scaleX(0) !important;
  transform-origin: left center !important;
  transition: transform 0.45s cubic-bezier(0.25, 1, 0.5, 1) !important;
  animation: none !important;
}
html body main.site-collections-products a.site-plp-cat:hover > .site-plp-cat__line,
html body main.site-collections-products a.site-plp-cat:focus-visible > .site-plp-cat__line,
html body main.site-collections-products a.site-plp-cat.is-active > .site-plp-cat__line,
html body main.site-collections-products button.site-plp-cat:hover > .site-plp-cat__line,
html body main.site-collections-products button.site-plp-cat:focus-visible > .site-plp-cat__line,
html body main.site-collections-products button.site-plp-cat.is-active > .site-plp-cat__line,
html body main.site-collections-products .site-plp-cat:hover > .site-plp-cat__line,
html body main.site-collections-products .site-plp-cat:focus-visible > .site-plp-cat__line,
html body main.site-collections-products .site-plp-cat.is-active > .site-plp-cat__line,
html body main.site-collections-products .site-plp-cat.is-active > span:last-child {
  transform: scaleX(1) !important;
  transform-origin: left center !important;
  opacity: 1 !important;
  visibility: visible !important;
  display: block !important;
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
}


/* —— Pass 20260807ar — PLP breadcrumb: no hover underline —— */
html body main.site-collections-products a.site-plp-crumb,
html body main.site-collections-products a.site-plp-crumb:hover,
html body main.site-collections-products a.site-plp-crumb:focus-visible {
  text-decoration: none !important;
  text-decoration-line: none !important;
  background-image: none !important;
  background-size: auto !important;
  animation: none !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
}
html body main.site-collections-products a.site-plp-crumb::before,
html body main.site-collections-products a.site-plp-crumb::after {
  content: none !important;
  display: none !important;
}


/* —— Pass 20260807as — PLP tab UL solid black; filter chevron +3px —— */
html body main.site-collections-products .site-plp-cat__line,
html body main.site-collections-products a.site-plp-cat > .site-plp-cat__line,
html body main.site-collections-products button.site-plp-cat > .site-plp-cat__line,
html body main.site-collections-products .site-plp-cat.is-active > .site-plp-cat__line,
html body main.site-collections-products .site-plp-cat:hover > .site-plp-cat__line,
html body main.site-collections-products a.site-plp-cat.is-active > .site-plp-cat__line,
html body main.site-collections-products a.site-plp-cat:hover > .site-plp-cat__line {
  background: #000 !important;
  background-color: #000 !important;
  background-image: none !important;
  color: #000 !important;
  opacity: 1 !important;
  filter: none !important;
  mix-blend-mode: normal !important;
}
/* Kill any grey gradient underline competing on the tab itself */
html body main.site-collections-products a.site-plp-cat,
html body main.site-collections-products a.site-plp-cat:hover,
html body main.site-collections-products a.site-plp-cat.is-active,
html body main.site-collections-products .site-plp-cat,
html body main.site-collections-products .site-plp-cat:hover,
html body main.site-collections-products .site-plp-cat.is-active {
  background-image: none !important;
  color: #000 !important;
}
html body .site-drawer--filter .site-filter__chevron,
html body .site-filter__chevron {
  width: 17px !important;
  height: 17px !important;
  min-width: 17px !important;
  min-height: 17px !important;
  color: #000 !important;
  stroke: #000 !important;
}


/* —— Pass 20260807at — force black tab UL + 17px filter arrows (re-apply) —— */
html body main.site-collections-products .site-plp-cat__line,
html body main.site-collections-products a.site-plp-cat > .site-plp-cat__line,
html body main.site-collections-products .site-plp-cat.is-active > .site-plp-cat__line,
html body main.site-collections-products .site-plp-cat:hover > .site-plp-cat__line,
html body main.site-collections-products .site-plp-cat.is-active > span:last-child {
  background: #000 !important;
  background-color: #000 !important;
  background-image: none !important;
  height: 1.5px !important;
  min-height: 1.5px !important;
  max-height: 1.5px !important;
  opacity: 1 !important;
  filter: none !important;
  box-shadow: none !important;
}
html body main.site-collections-products a.site-plp-cat,
html body main.site-collections-products a.site-plp-cat:hover,
html body main.site-collections-products a.site-plp-cat.is-active {
  background-image: none !important;
  color: #000 !important;
  -webkit-text-fill-color: #000 !important;
}
html body .site-drawer--filter svg.site-filter__chevron,
html body svg.site-filter__chevron,
html body .site-filter__chevron {
  width: 17px !important;
  height: 17px !important;
  min-width: 17px !important;
  min-height: 17px !important;
  max-width: 17px !important;
  max-height: 17px !important;
  color: #000 !important;
  stroke: currentColor !important;
}


/* —— Pass 20260807au — equal tab UL weight; smooth PDP header scrim —— */

/* PLP tabs: identical 1.5px black line for hover + active (beat a.is-active 1px) */
html body main.site-collections-products a.site-plp-cat > .site-plp-cat__line,
html body main.site-collections-products button.site-plp-cat > .site-plp-cat__line,
html body main.site-collections-products .site-plp-cat > .site-plp-cat__line,
html body main.site-collections-products a.site-plp-cat:hover > .site-plp-cat__line,
html body main.site-collections-products a.site-plp-cat:focus-visible > .site-plp-cat__line,
html body main.site-collections-products a.site-plp-cat.is-active > .site-plp-cat__line,
html body main.site-collections-products button.site-plp-cat:hover > .site-plp-cat__line,
html body main.site-collections-products button.site-plp-cat:focus-visible > .site-plp-cat__line,
html body main.site-collections-products button.site-plp-cat.is-active > .site-plp-cat__line,
html body main.site-collections-products .site-plp-cat:hover > .site-plp-cat__line,
html body main.site-collections-products .site-plp-cat:focus-visible > .site-plp-cat__line,
html body main.site-collections-products .site-plp-cat.is-active > .site-plp-cat__line,
html body main.site-collections-products .site-plp-cat.is-active > span:last-child,
html body main.site-collections-products a.site-plp-cat.is-active > span:last-child {
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 1.5px !important;
  min-height: 1.5px !important;
  max-height: 1.5px !important;
  background: #000 !important;
  background-color: #000 !important;
  background-image: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: none !important;
  box-shadow: none !important;
  filter: none !important;
  animation: none !important;
  transform-origin: left center !important;
  transition: transform 0.45s cubic-bezier(0.25, 1, 0.5, 1) !important;
}
html body main.site-collections-products a.site-plp-cat > .site-plp-cat__line,
html body main.site-collections-products button.site-plp-cat > .site-plp-cat__line,
html body main.site-collections-products .site-plp-cat > .site-plp-cat__line {
  transform: scaleX(0) !important;
}
html body main.site-collections-products a.site-plp-cat:hover > .site-plp-cat__line,
html body main.site-collections-products a.site-plp-cat:focus-visible > .site-plp-cat__line,
html body main.site-collections-products a.site-plp-cat.is-active > .site-plp-cat__line,
html body main.site-collections-products button.site-plp-cat:hover > .site-plp-cat__line,
html body main.site-collections-products button.site-plp-cat:focus-visible > .site-plp-cat__line,
html body main.site-collections-products button.site-plp-cat.is-active > .site-plp-cat__line,
html body main.site-collections-products .site-plp-cat:hover > .site-plp-cat__line,
html body main.site-collections-products .site-plp-cat:focus-visible > .site-plp-cat__line,
html body main.site-collections-products .site-plp-cat.is-active > .site-plp-cat__line,
html body main.site-collections-products a.site-plp-cat.is-active > span:last-child,
html body main.site-collections-products .site-plp-cat.is-active > span:last-child {
  transform: scaleX(1) !important;
}
/* Kill competing gradient UL on active tabs */
html body main.site-collections-products a.site-plp-cat,
html body main.site-collections-products a.site-plp-cat:hover,
html body main.site-collections-products a.site-plp-cat.is-active,
html body main.site-collections-products .site-plp-cat,
html body main.site-collections-products .site-plp-cat:hover,
html body main.site-collections-products .site-plp-cat.is-active {
  background-image: none !important;
  background-size: auto !important;
  color: #000 !important;
}

/* PDP header: white scrim fades in/out; gallery always under header (no layout jump) */
html body.product-page header.site-header.site-header--pdp,
html body.product-page .site-header.site-header--pdp,
html body.product-page header.site-header,
html body.product-page .site-header {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  isolation: isolate !important;
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
  border-bottom-color: transparent !important;
  transition:
    transform 0.42s cubic-bezier(0.22, 1, 0.36, 1),
    border-color 0.42s cubic-bezier(0.22, 1, 0.36, 1) !important;
}
html body.product-page header.site-header.site-header--pdp::before,
html body.product-page .site-header.site-header--pdp::before,
html body.product-page header.site-header::before {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 0 !important;
  background: #fff !important;
  opacity: 0 !important;
  transition: opacity 0.42s cubic-bezier(0.22, 1, 0.36, 1) !important;
  pointer-events: none !important;
}
html body.product-page header.site-header.is-header-solid::before,
html body.product-page .site-header.is-header-solid::before,
html body.product-page header.site-header:not(.is-header-transparent)::before,
html body.product-page .site-header:not(.is-header-transparent)::before {
  opacity: 1 !important;
}
html body.product-page header.site-header.is-header-transparent::before,
html body.product-page .site-header.is-header-transparent::before {
  opacity: 0 !important;
}
html body.product-page header.site-header.site-header--pdp > *,
html body.product-page .site-header.site-header--pdp > *,
html body.product-page header.site-header > * {
  position: relative !important;
  z-index: 1 !important;
}
html body.product-page header.site-header.is-header-off,
html body.product-page .site-header.is-header-off {
  transform: translate3d(0, -120%, 0) !important;
}
html body.product-page header.site-header:not(.is-header-off),
html body.product-page .site-header:not(.is-header-off) {
  transform: translate3d(0, 0, 0) !important;
}
@media (min-width: 768px) {
  html body.product-page main.site-product .site-product__desktop,
  html body.product-page:has(.is-header-transparent) main.site-product .site-product__desktop,
  html body.product-page:not(:has(.is-header-transparent)) main.site-product .site-product__desktop,
  html body.product-page:has(.is-header-solid) main.site-product .site-product__desktop {
    margin-top: calc(-1 * var(--site-header-height, 64px)) !important;
  }
  html body.product-page main.site-product {
    padding-top: 0 !important;
  }
}

/* —— Pass 20260807av — PDP path trailing-slash + header scrim —— */


/* —— Pass 20260807aw — PLP tabs stick at viewport top; ride OVER header then push —— */
html.plp-page .site-collections-products__bar,
html body.plp-page main.site-collections-products .site-collections-products__bar {
  position: sticky !important;
  top: 0 !important;
  z-index: 110 !important;
  transition: box-shadow 0.22s ease !important;
}
html.plp-strip-active .site-collections-products__bar,
html body.plp-strip-active .site-collections-products__bar,
html.plp-strip-active main.site-collections-products .site-collections-products__bar {
  top: 0 !important;
  z-index: 12050 !important;
}


/* —— Pass 20260807ax — unified UL timing; PLP sticky handoff perfected —— */
:root {
  --link-line-duration: 0.45s !important;
  --link-line-ease: cubic-bezier(0.25, 1, 0.5, 1) !important;
}

/* All scaleX / gradient underlines: same pace */
html body .xsample-ul-line,
html body .site-plp-cat__line,
html body a.site-plp-cat > .site-plp-cat__line,
html body main.site-collections-products .site-plp-cat__line,
html body main.site-collections-products a.site-plp-cat > .site-plp-cat__line,
html body main.site-collections-products a.site-plp-cat.is-active > .site-plp-cat__line,
html body main.site-collections-products a.site-plp-cat:hover > .site-plp-cat__line,
html body .hover-underline-swap,
html body a.hover-underline-swap,
html body .hover-underline-anim,
html body .link-line,
html body a.link-line,
html body .site-nav__link--underline,
html body .site-mega__link {
  transition-duration: var(--link-line-duration, 0.45s) !important;
  transition-timing-function: var(--link-line-ease, cubic-bezier(0.25, 1, 0.5, 1)) !important;
}
html body main.site-collections-products .site-plp-cat__line,
html body main.site-collections-products a.site-plp-cat > .site-plp-cat__line,
html body main.site-collections-products a.site-plp-cat:hover > .site-plp-cat__line,
html body main.site-collections-products a.site-plp-cat:focus-visible > .site-plp-cat__line,
html body main.site-collections-products a.site-plp-cat.is-active > .site-plp-cat__line,
html body main.site-collections-products .site-plp-cat:hover > .site-plp-cat__line,
html body main.site-collections-products .site-plp-cat.is-active > .site-plp-cat__line {
  height: 1.5px !important;
  min-height: 1.5px !important;
  max-height: 1.5px !important;
  background: #000 !important;
  background-color: #000 !important;
  transform-origin: left center !important;
  transition: transform var(--link-line-duration, 0.45s) var(--link-line-ease, cubic-bezier(0.25, 1, 0.5, 1)) !important;
}

/* PLP sticky: always top:0 so strip can slide OVER header, then push it away */
html.plp-page .site-collections-products__bar,
html body.plp-page main.site-collections-products .site-collections-products__bar,
html.plp-page:not(.plp-strip-active) .site-collections-products__bar,
html body.plp-page:not(.plp-strip-active) main.site-collections-products .site-collections-products__bar {
  position: sticky !important;
  top: 0 !important;
  z-index: 15000 !important;
  transition: box-shadow 0.28s ease !important;
}
html.plp-page .site-header,
html.plp-page header.site-header,
html body.plp-page .site-header,
html body.plp-page header.site-header {
  transition: transform 0.34s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.28s ease !important;
  will-change: transform !important;
}
html.plp-strip-active .site-header,
html.plp-strip-active header.site-header,
html body.plp-strip-active .site-header,
html body.plp-strip-active header.site-header {
  transform: translate3d(0, -100%, 0) !important;
  pointer-events: none !important;
}
html.plp-strip-active .site-promo,
html body.plp-strip-active .site-promo {
  transform: translate3d(0, -100%, 0) !important;
  opacity: 0 !important;
  pointer-events: none !important;
}
html.plp-strip-active .site-collections-products__bar,
html body.plp-strip-active .site-collections-products__bar,
html.plp-strip-active main.site-collections-products .site-collections-products__bar {
  top: 0 !important;
  z-index: 12050 !important;
  box-shadow: 0 1px 0 rgba(0,0,0,0.06) !important;
}


/* —— Pass 20260807ay — force tab bar top:0 on handoff —— */
html.plp-strip-active .site-collections-products__bar,
html body.plp-strip-active .site-collections-products__bar,
html.plp-strip-active main.site-collections-products .site-collections-products__bar,
html body.plp-strip-active main.site-collections-products .site-collections-products__bar {
  top: 0 !important;
  z-index: 12050 !important;
}

/* —— Pass 20260807az — PLP header waits longer before handoff —— */


/* —— Pass 20260807ba — PDP gallery modal (BV layout) + PLP handoff at tab top —— */
html body.site-modal-open,
html.site-modal-open {
  overflow: hidden !important;
}
html body .site-product-modal {
  position: fixed !important;
  inset: 0 !important;
  z-index: 14000 !important;
  background: #fff !important;
  color: #000 !important;
}
html body .site-product-modal__close {
  position: absolute !important;
  top: 18px !important;
  right: 18px !important;
  z-index: 5 !important;
  width: 44px !important;
  height: 44px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
  cursor: pointer !important;
}
html body .site-product-modal__close svg {
  width: 22px !important;
  height: 22px !important;
}
html body .site-product-modal__arrow {
  position: absolute !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  z-index: 5 !important;
  width: 48px !important;
  height: 72px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
  cursor: pointer !important;
  color: #000 !important;
  opacity: 0.85 !important;
}
html body .site-product-modal__arrow:hover { opacity: 1 !important; }
html body .site-product-modal__arrow--prev { left: 4px !important; }
html body .site-product-modal__arrow--next { right: 4px !important; }
html body .site-product-modal__arrow svg {
  width: 36px !important;
  height: 36px !important;
  stroke-width: 1.1 !important;
}
html body .site-product-modal__scroller {
  position: absolute !important;
  inset: 0 !important;
  background: #f0f0ee !important;
}
html body .site-product-modal__stack { display: none !important; }
html body .site-product-modal__mobile-frame {
  display: flex !important;
  width: 100% !important;
  height: 100vh !important;
  height: 100dvh !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
  overscroll-behavior: none !important;
}
html body .site-product-modal__mobile-frame img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
  display: block !important;
  user-select: none !important;
}
html body .site-product-modal__dots {
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 22px !important;
  z-index: 6 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  pointer-events: auto !important;
}
html body .site-product-modal__dot {
  width: 7px !important;
  height: 7px !important;
  border-radius: 50% !important;
  border: 1px solid #111 !important;
  background: transparent !important;
  padding: 0 !important;
  cursor: pointer !important;
  appearance: none !important;
}
html body .site-product-modal__dot.is-active {
  background: #111 !important;
  border-color: #111 !important;
}

@media (min-width: 768px) {
  html body .site-product-modal__arrow--prev { left: 8px !important; }
  html body .site-product-modal__arrow--next { right: 8px !important; }
  html body .site-product-modal__arrow svg {
    width: 42px !important;
    height: 42px !important;
  }
  html body .site-product-modal__scroller {
    overflow-x: hidden !important;
    overflow-y: auto !important;
    overscroll-behavior: contain !important;
    -webkit-overflow-scrolling: touch !important;
  }
  html body .site-product-modal__mobile-frame { display: none !important; }
  html body .site-product-modal__stack {
    display: block !important;
    width: 100% !important;
  }
  html body .site-product-modal__slide {
    width: 100% !important;
    min-height: 100vh !important;
    min-height: 100dvh !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: #f0f0ee !important;
  }
  html body .site-product-modal__slide img {
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    object-fit: contain !important;
    display: block !important;
    user-select: none !important;
  }
  html body .site-product-modal__dots {
    bottom: 28px !important;
    gap: 12px !important;
  }
  html body .site-product-modal__dot {
    width: 8px !important;
    height: 8px !important;
  }
}


/* —— Pass 20260807bb — PLP: keep header until tab strip handoff; modal polish —— */
html.plp-page:not(.plp-strip-active) .site-header,
html.plp-page:not(.plp-strip-active) header.site-header,
html body.plp-page:not(.plp-strip-active) .site-header,
html body.plp-page:not(.plp-strip-active) header.site-header {
  transform: none !important;
  translate: none !important;
  --tw-translate-y: 0 !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  visibility: visible !important;
}
html.plp-page:not(.plp-strip-active) .site-promo,
html body.plp-page:not(.plp-strip-active) .site-promo {
  transform: none !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}
/* Mobile modal: lock scroller; larger edge chevrons like BV */
@media (max-width: 767px) {
  html body .site-product-modal__scroller {
    overflow: hidden !important;
    overscroll-behavior: none !important;
    touch-action: none !important;
  }
  html body .site-product-modal__arrow {
    width: 40px !important;
    height: 64px !important;
  }
  html body .site-product-modal__arrow--prev { left: 2px !important; }
  html body .site-product-modal__arrow--next { right: 2px !important; }
  html body .site-product-modal__arrow svg {
    width: 32px !important;
    height: 32px !important;
    stroke-width: 1 !important;
  }
  html body .site-product-modal__dots { bottom: 18px !important; }
}
@media (min-width: 768px) {
  html body .site-product-modal__arrow--prev { left: 6px !important; }
  html body .site-product-modal__arrow--next { right: 6px !important; }
  html body .site-product-modal__arrow svg {
    width: 44px !important;
    height: 44px !important;
    stroke-width: 1 !important;
  }
  html body .site-product-modal__slide img {
    width: 100% !important;
    max-width: 100% !important;
  }
}


/* —— Pass 20260807bd — smoother PLP header ↔ tab strip swap —— */
html.plp-page .site-header,
html.plp-page header.site-header,
html body.plp-page .site-header,
html body.plp-page header.site-header,
html.plp-page .site-promo,
html body.plp-page .site-promo {
  transition:
    transform 0.55s cubic-bezier(0.33, 0.1, 0.2, 1),
    opacity 0.45s cubic-bezier(0.33, 0.1, 0.2, 1) !important;
  will-change: transform, opacity !important;
}
html.plp-page .site-collections-products__bar,
html body.plp-page main.site-collections-products .site-collections-products__bar,
html.plp-page:not(.plp-strip-active) .site-collections-products__bar,
html body.plp-page:not(.plp-strip-active) main.site-collections-products .site-collections-products__bar,
html.plp-strip-active .site-collections-products__bar,
html body.plp-strip-active .site-collections-products__bar,
html.plp-strip-active main.site-collections-products .site-collections-products__bar,
html body.plp-strip-active main.site-collections-products .site-collections-products__bar {
  transition:
    top 0.55s cubic-bezier(0.33, 0.1, 0.2, 1),
    box-shadow 0.45s ease,
    z-index 0s linear 0.28s !important;
}
html.plp-strip-active .site-header,
html.plp-strip-active header.site-header,
html body.plp-strip-active .site-header,
html body.plp-strip-active header.site-header {
  transform: translate3d(0, -100%, 0) !important;
  opacity: 0 !important;
  pointer-events: none !important;
}
html.plp-page:not(.plp-strip-active) .site-header,
html.plp-page:not(.plp-strip-active) header.site-header,
html body.plp-page:not(.plp-strip-active) .site-header,
html body.plp-page:not(.plp-strip-active) header.site-header {
  transform: none !important;
  translate: none !important;
  --tw-translate-y: 0 !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  visibility: visible !important;
}


/* —— Pass 20260807bi — full recovery: mega white, overlay, gaps, modal side-by-side scroll, mobile revert —— */

/* PDP transparent header → white while mega open */
html body.product-page.mega-open header.site-header.is-header-transparent::before,
html body.product-page.mega-open .site-header.is-header-transparent::before,
html body.mega-open.product-page header.site-header.site-header--pdp.is-header-transparent::before,
html body.mega-open.product-page .site-header.site-header--pdp.is-header-transparent::before,
html body.product-page.mega-open header.site-header::before,
html body.product-page.mega-open .site-header::before,
html.product-page body.mega-open header.site-header.is-header-transparent::before,
html.product-page body.mega-open .site-header.is-header-transparent::before {
  opacity: 1 !important;
}

/* PDP drawer: only open backdrop dims @ 32% */
html body.product-page .site-drawer__backdrop:not(.is-open),
html.product-page body .site-drawer__backdrop:not(.is-open) {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  background: transparent !important;
}
html body.product-page .site-drawer__backdrop.is-open,
html.product-page body .site-drawer__backdrop.is-open,
html body.product-page.site-drawer-open .site-drawer__backdrop.is-open {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  background: rgba(0, 0, 0, 0.32) !important;
}

/* Under-gallery 12px gaps */
@media (min-width: 768px) {
  html body .site-product__under {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    width: 100% !important;
  }
  html body .site-product__under .site-product__pair,
  html body .site-product__pair--under {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 12px !important;
    column-gap: 12px !important;
    row-gap: 12px !important;
  }
  html body .site-product__under .site-product__shot--full {
    margin-top: 0 !important;
  }
}

/* Mobile PDP: keep prior layout (not expand-sheet) */
@media (max-width: 767px) {
  html body .site-product__mobile > .sticky {
    position: sticky !important;
    top: 52px !important;
    height: 58vh !important;
    z-index: 10 !important;
  }
  html body .site-product__dash { display: none !important; }
  html body .site-product__sheet {
    position: relative !important;
    margin-top: 0 !important;
    max-height: none !important;
    overflow: visible !important;
  }
}

/* Modal shell */
html body.site-modal-open,
html.site-modal-open { overflow: hidden !important; }
html body .site-product-modal {
  position: fixed !important;
  inset: 0 !important;
  z-index: 14000 !important;
  background: #f0f0ee !important;
  color: #000 !important;
}
html body .site-product-modal__close {
  position: absolute !important;
  top: 18px !important;
  right: 18px !important;
  z-index: 5 !important;
  width: 44px !important;
  height: 44px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: transparent !important;
  border: 0 !important;
  cursor: pointer !important;
}
html body .site-product-modal__arrow {
  position: absolute !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  z-index: 5 !important;
  width: 48px !important;
  height: 72px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: transparent !important;
  border: 0 !important;
  cursor: pointer !important;
  color: #000 !important;
}
html body .site-product-modal__arrow--prev { left: 6px !important; }
html body .site-product-modal__arrow--next { right: 6px !important; }
html body .site-product-modal__arrow svg { width: 42px !important; height: 42px !important; stroke-width: 1 !important; }
html body .site-product-modal__dots {
  position: absolute !important;
  left: 0 !important; right: 0 !important;
  bottom: 24px !important;
  z-index: 6 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 12px !important;
}
html body .site-product-modal__dot {
  width: 8px !important;
  height: 8px !important;
  border-radius: 50% !important;
  border: 1px solid #111 !important;
  background: transparent !important;
  padding: 0 !important;
  cursor: pointer !important;
  appearance: none !important;
}
html body .site-product-modal__dot.is-active { background: #111 !important; }

/* Side-by-side track; each pane scrolls the full-width image vertically */
html body .site-product-modal__viewport {
  position: absolute !important;
  inset: 0 !important;
  overflow: hidden !important;
}
html body .site-product-modal__track {
  display: flex !important;
  flex-direction: row !important;
  align-items: stretch !important;
  width: 100% !important;
  height: 100% !important;
  transition: transform 0.42s cubic-bezier(0.33, 0.1, 0.2, 1) !important;
  will-change: transform !important;
}
html body .site-product-modal__pane {
  flex: 0 0 100% !important;
  width: 100% !important;
  max-width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  overflow-x: hidden !important;
  overflow-y: scroll !important;
  -webkit-overflow-scrolling: touch !important;
  overscroll-behavior: contain !important;
  background: #f0f0ee !important;
}
html body .site-product-modal__pane .site-product-modal__img,
html body .site-product-modal__img {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  max-height: none !important;
  min-height: 0 !important;
  object-fit: contain !important;
  object-position: top center !important;
  user-select: none !important;
  filter: none !important;
}
html body .site-product-modal__scroller,
html body .site-product-modal__stack,
html body .site-product-modal__mobile-frame {
  display: none !important;
}

@media (max-width: 767px) {
  html body .site-product-modal__pane { overflow: hidden !important; }
  html body .site-product-modal__pane .site-product-modal__img,
  html body .site-product-modal__img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
  }
  html body .site-product-modal__arrow--prev { left: 2px !important; }
  html body .site-product-modal__arrow--next { right: 2px !important; }
  html body .site-product-modal__arrow svg { width: 32px !important; height: 32px !important; }
  html body .site-product-modal__dots { bottom: 18px !important; }
}


/* —— Pass 20260807bj — modal no page-scroll; sitewide UL 0.45s same pace; all PDPs —— */
/* Do NOT set overflow:hidden on modal-open — that jumps the page under the overlay */
html body.site-modal-open,
html.site-modal-open,
html body.site-modal-open body,
html.site-modal-open body {
  overflow: visible !important;
}
html body .site-product-modal {
  position: fixed !important;
  inset: 0 !important;
  z-index: 14000 !important;
  overscroll-behavior: none !important;
}

/* Sitewide underline pace: one duration + easing everywhere */
:root,
html,
html body {
  --link-line-duration: 0.45s !important;
  --link-line-ease: cubic-bezier(0.25, 1, 0.5, 1) !important;
}
html body .xsample-ul-line,
html body .hover-underline-swap,
html body .hover-underline-swap::after,
html body .hover-underline-swap:after,
html body a.hover-underline-swap::after,
html body a.hover-underline-swap:after,
html body .hover-underline-anim,
html body .hover-underline-anim::after,
html body .hover-underline-anim:after,
html body a.hover-underline-anim::after,
html body a.hover-underline-anim:after,
html body .hover-underline-erase > .xsample-ul-line,
html body a.hover-underline-erase > .xsample-ul-line,
html body .link-line,
html body a.link-line,
html body .site-nav__link--underline,
html body .site-nav__link--underline::after,
html body .site-mega__link,
html body .site-mega__link::after,
html body .site-plp-cat__line,
html body a.site-plp-cat > .site-plp-cat__line,
html body .site-footer .hover-underline-erase > .xsample-ul-line,
html body .site-footer__find-store > .xsample-ul-line,
html body .site-essentials-hub__sub-right > .xsample-ul-line,
html body .site-product a.hover-underline-swap::after,
html body .site-product .hover-underline-swap::after {
  transition-duration: 0.45s !important;
  transition-timing-function: cubic-bezier(0.25, 1, 0.5, 1) !important;
  animation-duration: 0.45s !important;
  animation-timing-function: cubic-bezier(0.25, 1, 0.5, 1) !important;
}
/* Kill rogue 0.55s / 1.1s underline timing leftovers */
html body .hover-underline-anim:after,
html body .hover-underline-swap:after,
html body .hover-underline-anim::after,
html body .hover-underline-swap::after {
  transition: transform 0.45s cubic-bezier(0.25, 1, 0.5, 1) !important;
  transition-duration: 0.45s !important;
}

/* All product pages share mosaic / modal / under-gap treatment */
html body.product-page main.site-product .site-product__under,
html body main.site-product .site-product__under {
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
}
@media (min-width: 768px) {
  html body.product-page main.site-product .site-product__pair--under,
  html body main.site-product .site-product__pair--under,
  html body.product-page main.site-product .site-product__under .site-product__pair,
  html body main.site-product .site-product__under .site-product__pair {
    gap: 12px !important;
    column-gap: 12px !important;
    row-gap: 12px !important;
  }
}


/* —— Pass 20260807bk — footer UL pace = header; mobile dash/dots/padding —— */

/* Footer + stay wipes: same 0.45s eased pace as nav/dropdown (kill linear snap) */
html body .site-footer .xsample-ul-line,
html body .site-footer a.hover-underline-erase > .xsample-ul-line,
html body .site-footer .hover-underline-erase > .xsample-ul-line,
html body .site-footer .site-footer__find-store > .xsample-ul-line,
html body a.site-footer__find-store > .xsample-ul-line,
html body a.site-footer__locale-link > .xsample-ul-line,
html body .site-footer .hover-underline-swap::after,
html body .site-footer .hover-underline-swap:after,
html body .site-footer a.hover-underline-swap::after,
html body .site-footer a.hover-underline-swap:after,
html body .site-nav .hover-underline-swap::after,
html body .site-nav a::after,
html body .site-mega__link::after,
html body .site-mega a::after {
  transition-duration: 0.45s !important;
  transition-timing-function: cubic-bezier(0.25, 1, 0.5, 1) !important;
  animation-duration: 0.45s !important;
  animation-timing-function: cubic-bezier(0.25, 1, 0.5, 1) !important;
}
html body .site-footer .hover-underline-erase:hover > .xsample-ul-line,
html body .site-footer .hover-underline-erase:focus-visible > .xsample-ul-line,
html body .site-footer a.hover-underline-erase:hover > .xsample-ul-line,
html body .site-footer .site-footer__find-store:hover > .xsample-ul-line {
  animation: none !important;
  transition: transform 0.45s cubic-bezier(0.25, 1, 0.5, 1) !important;
}

@media (max-width: 767px) {
  /* Dots: top-right of gallery */
  html body .site-product__mobile .site-product__dots,
  html body .site-product__mobile .absolute.right-3\.5 {
    top: 16px !important;
    right: 14px !important;
    transform: none !important;
    translate: none !important;
  }

  /* Sheet padding matches mobile header (16px) */
  html body .site-product__sheet,
  html body .site-product__mobile > .relative.z-20,
  html body .site-product__mobile .site-product__sheet {
    padding-left: 16px !important;
    padding-right: 16px !important;
    padding-top: 10px !important;
    gap: 1.15rem !important;
  }
  html body .site-product__sheet .site-product__buy,
  html body .site-product__mobile .site-product__buy {
    gap: 1.15rem !important;
  }

  /* Thin black dash handle */
  html body .site-product__dash {
    display: block !important;
    width: 36px !important;
    height: 2px !important;
    margin: 4px auto 12px !important;
    padding: 14px 24px !important;
    box-sizing: content-box !important;
    border: 0 !important;
    border-radius: 0 !important;
    background-color: transparent !important;
    background-image: linear-gradient(#000, #000) !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: 36px 2px !important;
    cursor: pointer !important;
    appearance: none !important;
    touch-action: none !important;
    flex-shrink: 0 !important;
  }

  /* Collapsed vs expanded sheet (dash moves content up/down) */
  html body .site-product__sheet {
    position: relative !important;
    z-index: 30 !important;
    margin-top: -1.5rem !important;
    max-height: 42vh !important;
    overflow: hidden !important;
    background: #fff !important;
    border-radius: 12px 12px 0 0 !important;
    box-shadow: 0 -8px 20px rgba(0,0,0,0.06) !important;
    transition: max-height 0.45s cubic-bezier(0.33, 0.1, 0.2, 1) !important;
  }
  html body .site-product__sheet.is-open {
    max-height: 88dvh !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
  }
}


/* —— Pass 20260807bl — mobile dots top-right harden; padding sync —— */
@media (max-width: 767px) {
  html body .site-product__mobile .site-product__dots {
    position: absolute !important;
    top: 14px !important;
    right: 14px !important;
    left: auto !important;
    bottom: auto !important;
    transform: none !important;
    translate: none !important;
    --tw-translate-y: 0 !important;
    z-index: 25 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 10px !important;
    width: auto !important;
    height: auto !important;
    pointer-events: none !important;
  }
  html body .site-product__mobile .site-product__dots .dot-indicator {
    width: 5px !important;
    height: 5px !important;
  }
  /* Match mobile chrome horizontal padding */
  html body.product-page header.site-header,
  html body.product-page .site-header {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
  html body .site-product__sheet,
  html body .site-product__mobile .site-product__sheet {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
  html body .site-product__dash {
    display: block !important;
    background-size: 36px 2px !important;
    background-image: linear-gradient(#000,#000) !important;
  }
}


/* —— Pass 20260807bm — no scrollbars; modal X +3 thicker; PDP header slide; dots=modal; footer pace —— */

/* Hide scrollbars on PDP + modal (scroll still works) */
html body.product-page,
html body.product-page *,
html body .site-product-modal,
html body .site-product-modal * {
  scrollbar-width: none !important;
  -ms-overflow-style: none !important;
}
html body.product-page::-webkit-scrollbar,
html body.product-page *::-webkit-scrollbar,
html body .site-product-modal::-webkit-scrollbar,
html body .site-product-modal *::-webkit-scrollbar {
  width: 0 !important;
  height: 0 !important;
  display: none !important;
}

/* Modal close X: +3px and thicker */
html body .site-product-modal__close {
  width: 48px !important;
  height: 48px !important;
}
html body .site-product-modal__close svg {
  width: 25px !important;
  height: 25px !important;
  stroke-width: 1.85 !important;
}

/* PDP header slide hide/show (all breakpoints) */
html body.product-page header.site-header,
html body.product-page .site-header.site-header--pdp {
  transition:
    transform 0.42s cubic-bezier(0.22, 1, 0.36, 1),
    opacity 0.28s ease,
    background-color 0.35s ease !important;
  will-change: transform !important;
}
html body.product-page header.site-header.is-header-off,
html body.product-page .site-header.is-header-off,
html body.product-page header.site-header.site-header--pdp.is-header-off {
  transform: translate3d(0, -100%, 0) !important;
  pointer-events: none !important;
}
html body.product-page header.site-header:not(.is-header-off),
html body.product-page .site-header:not(.is-header-off) {
  transform: translate3d(0, 0, 0) !important;
}

/* Mobile gallery dots = exact modal dot style */
@media (max-width: 767px) {
  html body .site-product__mobile .site-product__dots {
    position: absolute !important;
    top: 14px !important;
    right: 14px !important;
    left: auto !important;
    transform: none !important;
    z-index: 25 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 12px !important;
    pointer-events: auto !important;
  }
  html body .site-product__mobile .site-product__dots .site-product-modal__dot,
  html body .site-product__mobile .site-product-modal__dot {
    width: 8px !important;
    height: 8px !important;
    border-radius: 50% !important;
    border: 1px solid #111 !important;
    background: transparent !important;
    padding: 0 !important;
    margin: 0 !important;
    cursor: pointer !important;
    appearance: none !important;
    flex-shrink: 0 !important;
  }
  html body .site-product__mobile .site-product__dots .site-product-modal__dot.is-active,
  html body .site-product__mobile .site-product-modal__dot.is-active {
    background: #111 !important;
    border-color: #111 !important;
  }

  /* Sheet snap open/close */
  html body .site-product__sheet {
    transition: max-height 0.45s cubic-bezier(0.33, 0.1, 0.2, 1) !important;
  }
}

/* Footer wipe pace: force identical CSS vars + kill linear leftovers */
:root, html, html body {
  --link-line-duration: 0.45s !important;
  --link-line-ease: cubic-bezier(0.25, 1, 0.5, 1) !important;
}
html body .site-footer .xsample-ul-line,
html body .site-footer a > .xsample-ul-line,
html body .site-footer .hover-underline-erase > .xsample-ul-line,
html body .site-footer .site-footer__find-store > .xsample-ul-line,
html body a.site-footer__locale-link > .xsample-ul-line {
  transition: transform 0.45s cubic-bezier(0.25, 1, 0.5, 1) !important;
  animation: none !important;
  animation-duration: 0.45s !important;
  animation-timing-function: cubic-bezier(0.25, 1, 0.5, 1) !important;
}

/* —— Pass 20260807bn — sheet snap+restore; footer wipe = header pace; X thicker —— */
html body .site-product-modal__close {
  width: 48px !important;
  height: 48px !important;
}
html body .site-product-modal__close svg {
  width: 25px !important;
  height: 25px !important;
  stroke-width: 2.15 !important;
}
html body .site-product-modal__close svg line {
  stroke-width: 2.15 !important;
}
@media (max-width: 767px) {
  html body .site-product__sheet {
    transition: max-height 0.45s cubic-bezier(0.25, 1, 0.5, 1) !important;
  }
  html body .site-product__sheet.is-open {
    max-height: 88dvh !important;
  }
}

/* —— Pass 20260807bq — crumb weight; PDP 20px; custom select; UL = mega linear —— */

/* PLP breadcrumb: Collections bold, collection name regular */
html body .site-collections-products .site-plp-crumb.font-semibold,
html body .site-collections-products a.site-plp-crumb.font-semibold {
  font-weight: 500;
}
html body .site-collections-products .font-normal.text-black {
  font-weight: 400 !important;
}

/* PDP title + price */
html body.product-page .site-product__title,
html body .site-product__title,
html body.product-page .site-product__price,
html body .site-product__price {
  font-size: 20px !important;
  line-height: 1.35 !important;
  font-weight: 400 !important;
}

/* Hide any leftover PayPal CTA */
html body .site-product__buy button:has(.text-\[\#003087\]),
html body .site-product button:has(span.text-\[\#003087\]) {
  display: none !important;
}

/* Custom select — same pattern as newsletter Title dropdown */
html body .xsample-select {
  position: relative !important;
  width: 100% !important;
}
html body .xsample-select__trigger {
  width: 100% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 0.75rem !important;
  padding: 0.85rem 0 !important;
  border: 0 !important;
  border-bottom: 1px solid #000 !important;
  border-top: 1px solid #000 !important;
  background: none !important;
  cursor: pointer !important;
  text-align: left !important;
  color: #000 !important;
}
html body .xsample-select--drawer .xsample-select__trigger,
html body .xsample-select--compact .xsample-select__trigger {
  border-top: 0 !important;
  padding: 0.45rem 0 0.55rem !important;
  border-bottom-color: #c8c8c8 !important;
}
html body .xsample-select.is-open .xsample-select__trigger,
html body .xsample-select--drawer.is-open .xsample-select__trigger {
  border-bottom-color: #000 !important;
}
html body .xsample-select__value {
  font-size: 12.5px !important;
  line-height: 1.35 !important;
  letter-spacing: -0.20px !important;
  color: #000 !important;
  font-weight: 400 !important;
}
@media (min-width: 768px) {
  html body .xsample-select__value {
    font-size: 13px !important;
  }
}
html body .xsample-select__value.is-placeholder {
  color: #9a9a9a !important;
}
html body .xsample-select__chevron {
  width: 1rem !important;
  height: 1rem !important;
  flex: 0 0 auto !important;
  stroke-width: 1.75 !important;
  transition: transform 0.2s ease !important;
}
html body .xsample-select__chevron.is-open {
  transform: rotate(180deg) !important;
}
html body .xsample-select__menu {
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  top: calc(100% + 2px) !important;
  z-index: 40 !important;
  margin: 0 !important;
  padding: 0.35rem 0 !important;
  list-style: none !important;
  background: #fff !important;
  border: 1px solid #000 !important;
  max-height: 240px !important;
  overflow-y: auto !important;
}
html body .xsample-select__option {
  padding: 0.7rem 0.85rem !important;
  font-size: 12.5px !important;
  line-height: 1.35 !important;
  letter-spacing: -0.20px !important;
  color: #000 !important;
  cursor: pointer !important;
  font-weight: 400 !important;
}
@media (min-width: 768px) {
  html body .xsample-select__option {
    font-size: 13px !important;
  }
}
html body .xsample-select__option:hover,
html body .xsample-select__option.is-selected {
  background: #f5f5f5 !important;
}

/* Product size select uses double rule like before */
html body .site-product__size-select .xsample-select__trigger {
  border-top: 1px solid #000 !important;
  border-bottom: 1px solid #000 !important;
  padding: 0.9rem 0 !important;
}

/* Unify product drawer chrome with filter drawer */
html body .site-drawer.site-drawer--product > .site-drawer__head,
html body .site-drawer.site-drawer--product > div:first-of-type,
html body aside.site-drawer--product > .site-drawer__head,
html body aside.site-drawer--product > div:first-of-type {
  min-height: 64px !important;
  height: auto !important;
  padding: 0 24px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  flex-shrink: 0 !important;
  box-sizing: border-box !important;
}
@media (min-width: 768px) {
  html body .site-drawer.site-drawer--product > .site-drawer__head,
  html body .site-drawer.site-drawer--product > div:first-of-type,
  html body aside.site-drawer--product > .site-drawer__head,
  html body aside.site-drawer--product > div:first-of-type {
    min-height: 80px !important;
    padding: 0 32px !important;
  }
}
html body .site-drawer.site-drawer--product .flex-1.overflow-y-auto,
html body aside.site-drawer--product .flex-1.overflow-y-auto {
  padding-left: 24px !important;
  padding-right: 24px !important;
}
@media (min-width: 768px) {
  html body .site-drawer.site-drawer--product .flex-1.overflow-y-auto,
  html body aside.site-drawer--product .flex-1.overflow-y-auto {
    padding-left: 32px !important;
    padding-right: 32px !important;
  }
}

/* Underlines: match mega / nav — 0.55s cubic (same pace sitewide) */
:root, html, html body {
  --link-line-duration: 0.55s !important;
  --link-line-ease: cubic-bezier(0.25, 1, 0.5, 1) !important;
}
html body .link-line::after,
html body a.link-line::after,
html body .hover-underline-anim::after,
html body .hover-underline-anim:after,
html body .hover-underline-swap::after,
html body .hover-underline-swap:after,
html body a.hover-underline-anim::after,
html body a.hover-underline-swap::after,
html body .site-nav__link--underline::after,
html body a.site-nav__link--underline::after,
html body .site-mega__link::after,
html body a.site-mega__link::after,
html body .site-mega__link.link-line::after,
html body .site-mega__title::after,
html body .site-mega__title.link-line::after,
html body .site-plp-cat__line,
html body a.site-plp-cat > .site-plp-cat__line,
html body .site-product a.hover-underline-swap::after,
html body .site-product .hover-underline-swap::after,
html body .site-footer .hover-underline-swap::after,
html body .site-footer a.hover-underline-swap::after,
html body .xsample-ul-line,
html body .hover-underline-erase > .xsample-ul-line,
html body a.hover-underline-erase > .xsample-ul-line {
  transition: transform 0.45s linear !important;
  transition-duration: 0.45s !important;
  transition-timing-function: linear !important;
  animation: none !important;
}

/* —— Pass 20260807br — Bottega dots; cart empty; crumb weights; sheet/dash; X+3 —— */

/* Gallery dots: active = larger solid black; inactive = smaller solid grey */
html body .site-product-modal__dots {
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 20px !important;
  z-index: 6 !important;
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  pointer-events: auto !important;
}
html body .site-product-modal__dot {
  width: 5px !important;
  height: 5px !important;
  border-radius: 50% !important;
  border: 0 !important;
  background: #9a9a9a !important;
  padding: 0 !important;
  margin: 0 !important;
  cursor: pointer !important;
  appearance: none !important;
  flex-shrink: 0 !important;
  transition: width 0.15s ease, height 0.15s ease, background 0.15s ease !important;
}
html body .site-product-modal__dot.is-active {
  width: 8px !important;
  height: 8px !important;
  background: #111 !important;
  border: 0 !important;
}
@media (min-width: 768px) {
  html body .site-product-modal__dots {
    bottom: 26px !important;
    gap: 9px !important;
  }
  html body .site-product-modal__dot {
    width: 5.5px !important;
    height: 5.5px !important;
  }
  html body .site-product-modal__dot.is-active {
    width: 9px !important;
    height: 9px !important;
  }
}

/* Mobile PDP dots: bottom-center, tighter than modal */
@media (max-width: 767px) {
  html body .site-product__mobile .site-product__dots,
  html body .site-product__mobile .absolute.left-1\/2 {
    position: absolute !important;
    left: 50% !important;
    right: auto !important;
    top: auto !important;
    bottom: 14px !important;
    transform: translateX(-50%) !important;
    translate: none !important;
    --tw-translate-x: -50% !important;
    --tw-translate-y: 0 !important;
    z-index: 25 !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    width: auto !important;
    height: auto !important;
    pointer-events: auto !important;
  }
  html body .site-product__mobile .site-product__dots .site-product-modal__dot,
  html body .site-product__mobile .site-product-modal__dot {
    width: 4px !important;
    height: 4px !important;
    border: 0 !important;
    background: #9a9a9a !important;
  }
  html body .site-product__mobile .site-product__dots .site-product-modal__dot.is-active,
  html body .site-product__mobile .site-product-modal__dot.is-active {
    width: 6.5px !important;
    height: 6.5px !important;
    background: #111 !important;
    border: 0 !important;
  }
  html body .site-product-modal__dots {
    bottom: 16px !important;
    gap: 6px !important;
  }
  html body .site-product-modal__dot {
    width: 4px !important;
    height: 4px !important;
  }
  html body .site-product-modal__dot.is-active {
    width: 6.5px !important;
    height: 6.5px !important;
  }

  /* Modal X +3px (25 → 28) */
  html body .site-product-modal__close {
    width: 50px !important;
    height: 50px !important;
  }
  html body .site-product-modal__close svg {
    width: 28px !important;
    height: 28px !important;
  }

  /* Tighter dash spacing */
  html body .site-product__dash {
    margin: 0 auto 4px !important;
    padding: 8px 22px !important;
    background-size: 32px 2px !important;
  }
  html body .site-product__sheet,
  html body .site-product__mobile .site-product__sheet {
    padding-top: 6px !important;
    gap: 1rem !important;
  }
  html body .site-product__sheet .site-product__buy {
    gap: 1rem !important;
  }

  /* Breadcrumb tighter gap on mobile; size set in pass bs */
  html body .site-product__crumb {
    gap: 0.25rem !important;
  }
  html body .site-plp-crumb-row {
    gap: 0.25rem !important;
  }
}

/* PLP crumb: parents regular, current bold (Bottega) */
html body .site-collections-products .site-plp-crumb,
html body .site-collections-products a.site-plp-crumb,
html body .site-collections-products .site-plp-crumb.font-semibold,
html body .site-collections-products a.site-plp-crumb.font-semibold {
  font-weight: 500;
}
html body .site-collections-products .site-plp-crumb-current,
html body .site-collections-products .site-plp-crumb-current.font-semibold {
  font-weight: 500;
}
html body .site-product__crumb .font-semibold {
  font-weight: 500;
}
html body .site-product__crumb .font-normal {
  font-weight: 400 !important;
}

/* Hide YMAL on mobile PDP (desktop sheet is md:hidden parent) */
@media (max-width: 767px) {
  html body .site-product__ymal,
  html body .site-product__mobile .site-product__ymal {
    display: none !important;
  }
}

/* Cart / empty bag (Bottega-inspired) */
html body .site-cart {
  background: #fff !important;
  color: #000 !important;
  min-height: 60vh !important;
}
html body .site-cart__empty {
  min-height: 42vh !important;
  padding-top: 4.5rem !important;
  padding-bottom: 3.5rem !important;
}
@media (min-width: 768px) {
  html body .site-cart__empty {
    min-height: 48vh !important;
    padding-top: 6.5rem !important;
    padding-bottom: 5rem !important;
  }
}
html body .site-cart__title {
  font-size: 13px !important;
  letter-spacing: 0.1em !important;
  font-weight: 500 !important;
}
@media (min-width: 768px) {
  html body .site-cart__title {
    font-size: 14px !important;
  }
}
html body .site-cart__cta {
  border-radius: 0 !important;
  min-width: 180px !important;
}
html body .site-cart__promo-grid {
  gap: 0 !important;
}
@media (min-width: 768px) {
  html body .site-cart__promo-grid {
    gap: 0 !important;
  }
}
html body .site-cart__promo-btn {
  border-radius: 0 !important;
}
html body .site-cart__back-link:hover {
  opacity: 0.65 !important;
}

/* —— Pass 20260807bs — mobile PDP + PLP crumbs/links/text → 12px —— */
@media (max-width: 767px) {
  html body.product-page .site-product__crumb,
  html body.product-page .site-product__crumb a,
  html body.product-page .site-product__crumb span,
  html body.product-page .site-product__crumb .hover-underline-swap,
  html body .site-product__crumb,
  html body .site-product__crumb a,
  html body .site-product__crumb span {
    font-size: 13px !important;
    line-height: 1.35 !important;
  }

  html body main.site-collections-products .site-plp-crumb-row,
  html body main.site-collections-products .site-plp-crumb-row a,
  html body main.site-collections-products .site-plp-crumb-row span,
  html body main.site-collections-products .site-plp-crumb,
  html body main.site-collections-products .site-plp-crumb-current,
  html body main.site-collections-products .site-plp-crumb__sep {
    font-size: 13px !important;
    line-height: 1.35 !important;
  }

  /* Other small PDP / PLP link + label text */
  html body.product-page .site-product a.hover-underline-swap,
  html body.product-page .site-product .hover-underline-swap,
  html body.product-page .site-product__ship,
  html body.product-page .site-product__ship a,
  html body.product-page .site-product__size-guide,
  html body main.site-collections-products a.site-plp-cat,
  html body main.site-collections-products .site-plp-cat,
  html body main.site-collections-products .site-collections-products__bar,
  html body main.site-collections-products .site-collections-products__bar a,
  html body main.site-collections-products .site-collections-products__bar button,
  html body main.site-collections-products .site-plp-card__swatch,
  html body main.site-collections-products .site-plp-card a,
  html body main.site-collections-products .site-plp-card .text-\[9\.5px\],
  html body main.site-collections-products .site-plp-card .text-\[10px\],
  html body main.site-collections-products .site-plp-card .text-\[10\.5px\],
  html body main.site-collections-products .site-plp-card .text-\[11px\] {
    font-size: 12px !important;
  }
}

/* —— Pass 20260807bt — no sheet clip; scroll-up restore; crumbs/titles bold no UL; mb −2px —— */

/* Mobile sheet: no max-height clip (content was cutting mid-line on scroll) */
@media (max-width: 767px) {
  html body .site-product__sheet,
  html body .site-product__mobile .site-product__sheet,
  html body .site-product__sheet.is-open,
  html body .site-product__mobile .site-product__sheet.is-open {
    max-height: none !important;
    overflow: visible !important;
    overflow-y: visible !important;
  }

  /* PDP/PLP crumbs: 13px sitewide */
  html body.product-page .site-product__crumb,
  html body.product-page .site-product__crumb a,
  html body.product-page .site-product__crumb span,
  html body .site-product__crumb,
  html body .site-product__crumb a,
  html body .site-product__crumb span,
  html body main.site-collections-products .site-plp-crumb-row,
  html body main.site-collections-products .site-plp-crumb-row a,
  html body main.site-collections-products .site-plp-crumb-row span,
  html body main.site-collections-products .site-plp-crumb,
  html body main.site-collections-products .site-plp-crumb-current {
    font-size: 13px !important;
    line-height: 1.35 !important;
  }

  html body.product-page .site-product__ship,
  html body.product-page .site-product__ship a,
  html body.product-page .site-product__desc {
    font-size: 10px !important;
    line-height: 1.35 !important;
  }
}

/* Desktop crumbs: 13px, clean gap */
@media (min-width: 768px) {
  html body .site-product__crumb,
  html body .site-product__crumb a,
  html body .site-product__crumb span,
  html body main.site-collections-products .site-plp-crumb-row,
  html body main.site-collections-products .site-plp-crumb-row a,
  html body main.site-collections-products .site-plp-crumb-row span,
  html body main.site-collections-products .site-plp-crumb,
  html body main.site-collections-products .site-plp-crumb-current {
    font-size: 13px !important;
    line-height: 1.35 !important;
  }
}

/* Breadcrumbs: no underlines (mobile + desktop) */
html body .site-product__crumb a,
html body .site-product__crumb .site-product__crumb-link,
html body .site-product__crumb .hover-underline-swap,
html body main.site-collections-products .site-plp-crumb,
html body main.site-collections-products a.site-plp-crumb,
html body main.site-collections-products .site-plp-crumb-current {
  text-decoration: none !important;
  background-image: none !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
}
html body .site-product__crumb a::before,
html body .site-product__crumb a::after,
html body .site-product__crumb .hover-underline-swap::before,
html body .site-product__crumb .hover-underline-swap::after,
html body .site-product__crumb .xsample-ul-line,
html body main.site-collections-products a.site-plp-crumb::before,
html body main.site-collections-products a.site-plp-crumb::after,
html body main.site-collections-products a.site-plp-crumb .xsample-ul-line {
  display: none !important;
  content: none !important;
  opacity: 0 !important;
  width: 0 !important;
  height: 0 !important;
}

/* Current crumb bold; parents regular */
html body .site-product__crumb-current,
html body .site-product__crumb .font-semibold,
html body main.site-collections-products .site-plp-crumb-current {
  font-weight: 500 !important;
}
html body .site-product__crumb-link,
html body .site-product__crumb .font-normal,
html body main.site-collections-products .site-plp-crumb {
  font-weight: 400 !important;
}

/* Clean crumb spacing */
html body .site-product__crumb,
html body main.site-collections-products .site-plp-crumb-row {
  gap: 0.35rem !important;
  letter-spacing: -0.01em !important;
}
@media (min-width: 768px) {
  html body .site-product__crumb,
  html body main.site-collections-products .site-plp-crumb-row {
    gap: 0.45rem !important;
  }
}

/* PLP product titles: bold, no underline (mobile + desktop) */
html body main.site-collections-products .site-plp-card h3,
html body main.site-collections-products .site-plp-card__title-row,
html body main.site-collections-products .site-plp-card__name,
html body main.site-collections-products .site-plp-card a,
html body main.site-collections-products .site-plp-card a h3 {
  font-weight: 500 !important;
  text-decoration: none !important;
}
html body main.site-collections-products .site-plp-card a::after,
html body main.site-collections-products .site-plp-card a::before,
html body main.site-collections-products .site-plp-card .hover-underline-swap::after {
  display: none !important;
}
html body main.site-collections-products .site-plp-card__swatch,
html body main.site-collections-products .site-plp-card__price,
html body main.site-collections-products .site-plp-card > div:last-child {
  font-weight: 400 !important;
}

/* PDP header: smooth slide both ways */
html body.product-page header.site-header,
html body.product-page .site-header.site-header--pdp {
  transition:
    transform 0.42s cubic-bezier(0.22, 1, 0.36, 1),
    opacity 0.28s ease,
    background-color 0.35s ease !important;
}
html body.product-page header.site-header:not(.is-header-off),
html body.product-page .site-header:not(.is-header-off) {
  transform: translate3d(0, 0, 0) !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
}

/* —— Pass 20260807bu — crumbs: 12px desktop only; collection 500; no bold —— */

/* Size: mobile stays smaller; 12px desktop only */
@media (max-width: 767px) {
  html body .site-product__crumb,
  html body .site-product__crumb a,
  html body .site-product__crumb span,
  html body main.site-collections-products .site-plp-crumb-row,
  html body main.site-collections-products .site-plp-crumb-row a,
  html body main.site-collections-products .site-plp-crumb-row span,
  html body main.site-collections-products .site-plp-crumb,
  html body main.site-collections-products .site-plp-crumb-current,
  html body main.site-collections-products .site-plp-crumb__sep {
    font-size: 10px !important;
    line-height: 1.35 !important;
  }
}
@media (min-width: 768px) {
  html body .site-product__crumb,
  html body .site-product__crumb a,
  html body .site-product__crumb span,
  html body main.site-collections-products .site-plp-crumb-row,
  html body main.site-collections-products .site-plp-crumb-row a,
  html body main.site-collections-products .site-plp-crumb-row span,
  html body main.site-collections-products .site-plp-crumb,
  html body main.site-collections-products .site-plp-crumb-current,
  html body main.site-collections-products .site-plp-crumb__sep {
    font-size: 12px !important;
    line-height: 1.35 !important;
  }
}

/* No bold (600+) on crumbs — collection name = 500 only */
html body .site-product__crumb,
html body .site-product__crumb a,
html body .site-product__crumb span,
html body .site-product__crumb .font-semibold,
html body .site-product__crumb-current,
html body main.site-collections-products .site-plp-crumb-row,
html body main.site-collections-products .site-plp-crumb,
html body main.site-collections-products .site-plp-crumb.font-semibold,
html body main.site-collections-products a.site-plp-crumb {
  font-weight: 400 !important;
}
html body .site-product__crumb-collection,
html body .site-product__crumb .site-product__crumb-collection,
html body main.site-collections-products .site-plp-crumb-current,
html body main.site-collections-products .site-plp-crumb-current.font-semibold,
html body main.site-collections-products .site-plp-crumb-current.font-medium {
  font-weight: 500;
}

/* No underlines on crumbs */
html body .site-product__crumb a,
html body .site-product__crumb-link,
html body main.site-collections-products .site-plp-crumb,
html body main.site-collections-products a.site-plp-crumb,
html body main.site-collections-products .site-plp-crumb-current {
  text-decoration: none !important;
  background-image: none !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
}
html body .site-product__crumb a::before,
html body .site-product__crumb a::after,
html body .site-product__crumb .xsample-ul-line,
html body main.site-collections-products a.site-plp-crumb::before,
html body main.site-collections-products a.site-plp-crumb::after {
  display: none !important;
  content: none !important;
}

/* —— Pass 20260807bv — crumbs: 12px mobile; body size desktop; weight 500 on collection only —— */
@media (max-width: 767px) {
  html body .site-product__crumb,
  html body .site-product__crumb a,
  html body .site-product__crumb span,
  html body main.site-collections-products .site-plp-crumb-row,
  html body main.site-collections-products .site-plp-crumb-row *,
  html body main.site-collections-products .site-plp-crumb,
  html body main.site-collections-products .site-plp-crumb-current,
  html body main.site-collections-products .site-plp-crumb__sep {
    font-size: 12px !important;
    line-height: 1.35 !important;
  }
}
@media (min-width: 768px) {
  html body .site-product__crumb,
  html body .site-product__crumb a,
  html body .site-product__crumb span,
  html body main.site-collections-products .site-plp-crumb-row,
  html body main.site-collections-products .site-plp-crumb-row *,
  html body main.site-collections-products .site-plp-crumb,
  html body main.site-collections-products .site-plp-crumb-current,
  html body main.site-collections-products .site-plp-crumb__sep {
    font-size: var(--fs-body-lg, 14px) !important;
    line-height: 1.35 !important;
  }
}

/* Default crumb weight = regular */
html body .site-product__crumb,
html body .site-product__crumb a,
html body .site-product__crumb span,
html body .site-product__crumb-current,
html body .site-product__crumb .font-semibold,
html body .site-product__crumb .font-medium,
html body main.site-collections-products .site-plp-crumb,
html body main.site-collections-products a.site-plp-crumb,
html body main.site-collections-products .site-plp-crumb__sep {
  font-weight: 400 !important;
}

/* ONLY collection name is 500 */
html body .site-product__crumb-collection,
html body a.site-product__crumb-collection,
html body main.site-collections-products .site-plp-crumb-current,
html body main.site-collections-products span.site-plp-crumb-current {
  font-weight: 500 !important;
}

/* Product card titles: not bold */
html body main.site-collections-products .site-plp-card h3,
html body main.site-collections-products .site-plp-card__title-row,
html body main.site-collections-products .site-plp-card__name {
  font-weight: 400 !important;
}

/* —— Pass 20260807bw — crumb weight 500 on "Collections" only (not Essentials) —— */
html body .site-product__crumb,
html body .site-product__crumb a,
html body .site-product__crumb span,
html body .site-product__crumb-current,
html body main.site-collections-products .site-plp-crumb-row,
html body main.site-collections-products .site-plp-crumb,
html body main.site-collections-products .site-plp-crumb-current,
html body main.site-collections-products .site-plp-crumb__sep {
  font-weight: 400 !important;
  text-decoration: none !important;
}

/* "Collections" label only */
html body .site-product__crumb-collection,
html body a.site-product__crumb-collection,
html body main.site-collections-products .site-plp-crumb--collections,
html body main.site-collections-products a.site-plp-crumb--collections {
  font-weight: 500 !important;
  text-decoration: none !important;
}
html body .site-product__crumb-collection::before,
html body .site-product__crumb-collection::after,
html body main.site-collections-products a.site-plp-crumb--collections::before,
html body main.site-collections-products a.site-plp-crumb--collections::after {
  display: none !important;
  content: none !important;
}

/* —— Pass 20260807bx — crumbs 12px mobile / body desktop; tab strip over header —— */

/* Crumbs: 12px ONLY on mobile; desktop = site body */
@media (max-width: 767px) {
  html body .site-product__crumb,
  html body .site-product__crumb a,
  html body .site-product__crumb span,
  html body main.site-collections-products .site-plp-crumb-row,
  html body main.site-collections-products .site-plp-crumb-row *,
  html body main.site-collections-products .site-plp-crumb,
  html body main.site-collections-products .site-plp-crumb-current,
  html body main.site-collections-products .site-plp-crumb__sep {
    font-size: 12px !important;
    line-height: 1.35 !important;
  }
}
@media (min-width: 768px) {
  html body .site-product__crumb,
  html body .site-product__crumb a,
  html body .site-product__crumb span,
  html body main.site-collections-products .site-plp-crumb-row,
  html body main.site-collections-products .site-plp-crumb-row *,
  html body main.site-collections-products .site-plp-crumb,
  html body main.site-collections-products .site-plp-crumb-current,
  html body main.site-collections-products .site-plp-crumb__sep {
    font-size: var(--fs-body-lg, 14px) !important;
    line-height: 1.35 !important;
  }
}

/* PLP tab strip rides OVER the header while transitioning */
html.plp-page .site-collections-products__bar,
html body.plp-page .site-collections-products__bar,
html.plp-page main.site-collections-products .site-collections-products__bar,
html body.plp-page main.site-collections-products .site-collections-products__bar {
  position: sticky !important;
  top: 0 !important;
  z-index: 10050 !important; /* header is 9999 — strip covers it */
  transition:
    box-shadow 0.28s ease,
    z-index 0s linear !important;
}
html.plp-page .site-header,
html.plp-page header.site-header,
html body.plp-page .site-header,
html body.plp-page header.site-header {
  z-index: 9999 !important;
  transition: transform 0.34s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.28s ease !important;
}
html.plp-strip-active .site-header,
html.plp-strip-active header.site-header,
html body.plp-strip-active .site-header,
html body.plp-strip-active header.site-header {
  transform: translate3d(0, -100%, 0) !important;
  pointer-events: none !important;
}
html.plp-strip-active .site-collections-products__bar,
html body.plp-strip-active .site-collections-products__bar,
html.plp-strip-active main.site-collections-products .site-collections-products__bar,
html body.plp-strip-active main.site-collections-products .site-collections-products__bar {
  top: 0 !important;
  z-index: 12050 !important;
  box-shadow: 0 1px 0 rgba(0,0,0,0.06) !important;
}

/* —— Pass 20260807by — FORCE crumb sizes: 12px mobile / 14px desktop (literal) —— */
html body main.site-collections-products .site-plp-crumb-row,
html body main.site-collections-products .site-plp-crumb-row a,
html body main.site-collections-products .site-plp-crumb-row span,
html body main.site-collections-products a.site-plp-crumb,
html body main.site-collections-products a.site-plp-crumb--collections,
html body main.site-collections-products .site-plp-crumb,
html body main.site-collections-products .site-plp-crumb-current,
html body main.site-collections-products .site-plp-crumb__sep,
html body .site-product__crumb,
html body .site-product__crumb a,
html body .site-product__crumb span,
html body .site-product__crumb-link,
html body .site-product__crumb-collection,
html body .site-product__crumb-current,
html body .site-product__crumb-sep {
  font-size: 12px !important;
  line-height: 1.35 !important;
}
@media (min-width: 768px) {
  html body main.site-collections-products .site-plp-crumb-row,
  html body main.site-collections-products .site-plp-crumb-row a,
  html body main.site-collections-products .site-plp-crumb-row span,
  html body main.site-collections-products a.site-plp-crumb,
  html body main.site-collections-products a.site-plp-crumb--collections,
  html body main.site-collections-products .site-plp-crumb,
  html body main.site-collections-products .site-plp-crumb-current,
  html body main.site-collections-products .site-plp-crumb__sep,
  html body .site-product__crumb,
  html body .site-product__crumb a,
  html body .site-product__crumb span,
  html body .site-product__crumb-link,
  html body .site-product__crumb-collection,
  html body .site-product__crumb-current,
  html body .site-product__crumb-sep {
    font-size: 14px !important;
    line-height: 1.35 !important;
  }
}

/* —— Pass 20260807bz — PDP tight buy; dots TR; modal edge; size slide; no PayPal —— */

/* CTA padding: −10px overall, top −3px more */
html body .site-product__cta,
html body .site-product__buy .site-product__cta,
html body .site-product__buy button.site-product__cta,
html body .site-product__secondary,
html body .site-product__buy .site-product__secondary {
  padding-top: 4px !important;
  padding-bottom: 7px !important;
  padding-left: 12px !important;
  padding-right: 12px !important;
  min-height: 36px !important;
  border-radius: 0 !important;
  letter-spacing: 0.02em !important;
}
html body .site-product__sticky-bar button {
  padding-top: 4px !important;
  padding-bottom: 7px !important;
  min-height: 36px !important;
}

/* Tight PDP buy stack */
html body .site-product__buy {
  gap: 0.75rem !important;
}
html body .site-product__actions {
  gap: 8px !important;
}
html body .site-product__ship,
html body .site-product__desc {
  margin: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

/* Accordion rows: no borders, tight (match BV) */
html body .site-product__accordions {
  border: 0 !important;
  margin-top: 6px !important;
  gap: 0 !important;
}
html body .site-product__row,
html body .site-product__accordions .site-product__row,
html body button.site-product__row {
  border: 0 !important;
  border-bottom: 0 !important;
  border-top: 0 !important;
  padding-top: 5px !important;
  padding-bottom: 5px !important;
  box-shadow: none !important;
}

/* Never show PayPal CTA */
html body .site-product__buy button:has(img[alt*="PayPal" i]),
html body .site-product__buy button:has(.text-\[\#003087\]),
html body .site-product button:has(span.text-\[\#003087\]) {
  display: none !important;
}

/* Size dropdown: smooth slide open */
html body .xsample-select__panel {
  display: grid !important;
  grid-template-rows: 0fr !important;
  transition: grid-template-rows 0.38s cubic-bezier(0.22, 1, 0.36, 1) !important;
}
html body .xsample-select.is-open .xsample-select__panel {
  grid-template-rows: 1fr !important;
}
html body .xsample-select__panel > .xsample-select__menu,
html body .xsample-select__menu {
  position: static !important;
  overflow: hidden !important;
  min-height: 0 !important;
  max-height: none !important;
  border: 0 !important;
  border-bottom: 1px solid #e5e5e5 !important;
  background: #fff !important;
  padding: 0 !important;
  margin: 0 !important;
  list-style: none !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
}
html body .xsample-select.is-open .xsample-select__menu {
  padding: 0.25rem 0 0.5rem !important;
}
html body .site-product__size-select .xsample-select__trigger {
  transition: border-color 0.25s ease !important;
}

/* Mobile gallery dots: top-right again */
@media (max-width: 767px) {
  html body .site-product__mobile .site-product__dots,
  html body .site-product__mobile .absolute.right-3\.5 {
    position: absolute !important;
    top: 14px !important;
    right: 14px !important;
    left: auto !important;
    bottom: auto !important;
    transform: none !important;
    translate: none !important;
    --tw-translate-x: 0 !important;
    --tw-translate-y: 0 !important;
    z-index: 25 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 8px !important;
    width: auto !important;
    height: auto !important;
    pointer-events: auto !important;
  }
  html body .site-product__mobile .site-product__dots .site-product-modal__dot,
  html body .site-product__mobile .site-product-modal__dot {
    width: 5px !important;
    height: 5px !important;
    border: 0 !important;
    border-radius: 50% !important;
    background: #9a9a9a !important;
    padding: 0 !important;
    margin: 0 !important;
    flex-shrink: 0 !important;
  }
  html body .site-product__mobile .site-product__dots .site-product-modal__dot.is-active,
  html body .site-product__mobile .site-product-modal__dot.is-active {
    width: 7px !important;
    height: 7px !important;
    background: #111 !important;
  }

  /* Modal X + arrows closer to screen edge */
  html body .site-product-modal__close {
    top: 10px !important;
    right: 6px !important;
  }
  html body .site-product-modal__arrow--prev {
    left: 0 !important;
  }
  html body .site-product-modal__arrow--next {
    right: 0 !important;
  }
}

/* Product drawers: smooth slide */
html body .site-drawer--product,
html body .site-drawer.site-drawer--product {
  transition: transform 0.42s cubic-bezier(0.22, 1, 0.36, 1) !important;
}
html body .site-drawer__backdrop {
  transition: opacity 0.35s ease !important;
}

/* —— Pass 20260807ca — float sticky; size-guide animate; clean CTA; less bottom space —— */

/* Floating sticky (first-image zone) vs full-width (lower gallery) */
html body .site-product__sticky-bar--float {
  left: 16px !important;
  right: 16px !important;
  bottom: 16px !important;
  width: auto !important;
  border: 1px solid #e8e8e8 !important;
  border-top: 1px solid #e8e8e8 !important;
  box-shadow: 0 2px 16px rgba(0, 0, 0, 0.06) !important;
}
html body .site-product__sticky-bar--full {
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  border: 0 !important;
  border-top: 1px solid #e5e5e5 !important;
  box-shadow: none !important;
}
html body .site-product__sticky-bar__inner {
  width: 100% !important;
  max-width: none !important;
  padding: 12px 20px !important;
  box-sizing: border-box !important;
}
@media (min-width: 768px) {
  html body .site-product__sticky-bar--float {
    left: 40px !important;
    right: 40px !important;
    bottom: 20px !important;
  }
  html body .site-product__sticky-bar__inner {
    padding: 14px 32px !important;
  }
  html body .site-product__sticky-bar--full .site-product__sticky-bar__inner {
    padding-left: 48px !important;
    padding-right: 48px !important;
  }
}
html body .site-product__sticky-bar__title {
  text-transform: uppercase !important;
  letter-spacing: 0.06em !important;
  font-size: 11px !important;
}
html body .site-product__sticky-bar__cta,
html body .site-product__sticky-bar button.site-product__cta {
  padding: 10px 28px !important;
  min-height: 40px !important;
  letter-spacing: 0.04em !important;
  text-transform: none !important;
}

/* Clean PDP CTA — tight inner padding, single primary */
html body .site-product__cta,
html body .site-product__buy .site-product__cta,
html body .site-product__buy button.site-product__cta {
  padding: 11px 16px !important;
  min-height: 42px !important;
  border-radius: 0 !important;
  letter-spacing: 0.02em !important;
  font-weight: 400 !important;
}
html body .site-product__secondary,
html body .site-product__buy .site-product__secondary {
  display: none !important;
}

/* Size guide: one link, wipe underline on hover */
html body .site-product__size-guide,
html body button.site-product__size-guide,
html body .site-drawer .site-product__size-guide {
  position: relative !important;
  display: inline-block !important;
  width: fit-content !important;
  margin-top: 10px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
  color: #000 !important;
  cursor: pointer !important;
  text-decoration: underline !important;
  text-decoration-thickness: 1px !important;
  text-underline-offset: 3px !important;
  text-decoration-color: #000 !important;
}
html body .site-product__size-guide::after,
html body button.site-product__size-guide::after,
html body .site-drawer .site-product__size-guide::after {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  bottom: -1px !important;
  width: 100% !important;
  height: 1px !important;
  background: currentColor !important;
  transform: scaleX(0) !important;
  transform-origin: 100% !important;
  transition: transform 0.45s cubic-bezier(0.25, 1, 0.5, 1) !important;
  pointer-events: none !important;
}
html body .site-product__size-guide:hover,
html body .site-product__size-guide:focus-visible,
html body button.site-product__size-guide:hover,
html body button.site-product__size-guide:focus-visible {
  text-decoration-color: transparent !important;
}
html body .site-product__size-guide:hover::after,
html body .site-product__size-guide:focus-visible::after,
html body button.site-product__size-guide:hover::after,
html body button.site-product__size-guide:focus-visible::after {
  transform: scaleX(1) !important;
  transform-origin: 0% !important;
}

/* Less bottom spacing under crumbs / buy */
html body .site-product__crumb {
  padding-bottom: 1.25rem !important;
}
@media (min-width: 768px) {
  html body .site-product__buy-wrap {
    padding-top: 2.5rem !important;
    padding-bottom: 2rem !important;
  }
  html body .site-product__crumb {
    padding-top: 1.25rem !important;
    padding-bottom: 1.5rem !important;
  }
  html body .site-product__desktop {
    padding-bottom: 48px !important;
  }
}
@media (max-width: 767px) {
  html body .site-product__sheet {
    padding-bottom: 1.25rem !important;
  }
  html body .site-product__crumb.md\:hidden,
  html body .site-product__crumb {
    padding-top: 0.75rem !important;
    padding-bottom: 1rem !important;
  }
  html body main.site-product {
    padding-bottom: 1.5rem !important;
  }
}

/* —— Pass 20260807cb — Bottega size box; float bar sizing; rails; modal jump —— */

/* Size select: closed = hairline rules; open = full black box (Bottega) */
html body .site-product__size-select.xsample-select {
  border: 0 !important;
  background: #fff !important;
}
html body .site-product__size-select .xsample-select__trigger {
  border-top: 1px solid #e5e5e5 !important;
  border-bottom: 1px solid #e5e5e5 !important;
  border-left: 0 !important;
  border-right: 0 !important;
  padding: 14px 4px !important;
  min-height: 48px !important;
}
html body .site-product__size-select .xsample-select__value.is-placeholder {
  color: #9a9a9a !important;
}
html body .site-product__size-select.is-open {
  border: 1px solid #111 !important;
  padding: 0 !important;
}
html body .site-product__size-select.is-open .xsample-select__trigger {
  border: 0 !important;
  border-bottom: 0 !important;
  padding: 14px 14px 10px !important;
}
html body .site-product__size-select .xsample-select__panel {
  display: grid !important;
  grid-template-rows: 0fr !important;
  transition: grid-template-rows 0.36s cubic-bezier(0.22, 1, 0.36, 1) !important;
}
html body .site-product__size-select.is-open .xsample-select__panel {
  grid-template-rows: 1fr !important;
}
html body .site-product__size-select .xsample-select__menu,
html body .site-product__size-select.is-open .xsample-select__menu {
  position: static !important;
  border: 0 !important;
  max-height: none !important;
  overflow: hidden !important;
  padding: 0 0 8px !important;
  background: #fff !important;
}
html body .site-product__size-select .xsample-select__option {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  padding: 11px 14px !important;
  background: transparent !important;
  border: 0 !important;
  font-size: 13px !important;
  color: #111 !important;
  cursor: pointer !important;
}
html body .site-product__size-select .xsample-select__option:hover,
html body .site-product__size-select .xsample-select__option.is-selected {
  background: #f7f7f7 !important;
}
html body .site-product__size-select .xsample-select__option.is-soldout {
  color: #b0b0b0 !important;
  cursor: default !important;
}
html body .site-product__size-select .xsample-select__option.is-soldout:hover {
  background: transparent !important;
}
html body .site-product__size-select .xsample-select__option-note {
  margin-left: auto !important;
  font-size: 11px !important;
  color: #9a9a9a !important;
  font-weight: 400 !important;
}
html body .site-product__size-select .xsample-select__option-action {
  margin-left: auto !important;
  border: 0 !important;
  background: none !important;
  padding: 0 !important;
  font-size: 11px !important;
  color: #111 !important;
  cursor: pointer !important;
  text-decoration: none !important;
}
html body .site-product__size-select .xsample-select__option-action:hover {
  text-decoration: underline !important;
}
html body .site-product__size-select .xsample-select__chevron.is-open {
  transform: rotate(180deg) !important;
}

/* Floating sticky bar — match BV first-image bar sizing */
html body .site-product__sticky-bar--float {
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  border: 0 !important;
  border-top: 1px solid #e8e8e8 !important;
  box-shadow: none !important;
  min-height: 56px !important;
  background: #fff !important;
}
html body .site-product__sticky-bar--float .site-product__sticky-bar__inner {
  padding: 10px 20px !important;
  min-height: 56px !important;
  align-items: center !important;
}
@media (min-width: 768px) {
  html body .site-product__sticky-bar--float .site-product__sticky-bar__inner {
    padding: 12px 48px !important;
    min-height: 60px !important;
  }
}
html body .site-product__sticky-bar--float .site-product__sticky-bar__title {
  font-size: 11px !important;
  line-height: 1.35 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  font-weight: 400 !important;
}
html body .site-product__sticky-bar--float .site-product__sticky-bar__price {
  font-size: 12px !important;
  font-weight: 400 !important;
}
html body .site-product__sticky-bar--float .site-product__sticky-bar__cta,
html body .site-product__sticky-bar--float button.site-product__cta {
  padding: 10px 18px !important;
  min-height: 36px !important;
  font-size: 12px !important;
  letter-spacing: 0.02em !important;
  text-transform: none !important;
  border-radius: 0 !important;
}
html body .site-product__sticky-bar--float .site-product__sticky-bar__actions {
  gap: 16px !important;
}

/* Modal: no slide on open jump */
html body .site-product-modal__track.is-jump {
  transition: none !important;
}
html body .site-product-modal__track.is-animate {
  transition: transform 0.42s cubic-bezier(0.33, 0.1, 0.2, 1) !important;
}

/* Related / Complete the collection — above crumb links */
html body .site-product__rails {
  width: 100% !important;
  padding: 28px 16px 8px !important;
  box-sizing: border-box !important;
}
@media (min-width: 768px) {
  html body .site-product__rails {
    padding: 48px 48px 16px !important;
  }
}
html body .site-product__rail {
  margin-bottom: 28px !important;
}
html body .site-product__rail-title {
  font-size: 12px !important;
  font-weight: 500 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  margin: 0 0 16px !important;
  color: #111 !important;
}
html body .site-product__rail-track {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 12px 10px !important;
}
@media (min-width: 768px) {
  html body .site-product__rail-track {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 16px 14px !important;
  }
}
html body .site-product__rail-card {
  display: flex !important;
  flex-direction: column !important;
  text-decoration: none !important;
  color: #111 !important;
}
html body .site-product__rail-media {
  width: 100% !important;
  aspect-ratio: 3 / 4 !important;
  background: #f2f2f0 !important;
  overflow: hidden !important;
  margin-bottom: 8px !important;
}
html body .site-product__rail-img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}
html body .site-product__rail-name {
  font-size: 11px !important;
  font-weight: 400 !important;
  line-height: 1.35 !important;
  margin: 0 0 4px !important;
}
html body .site-product__rail-price {
  font-size: 11px !important;
  color: #111 !important;
}

/* —— Pass 20260807cc — search input; float bar inset; CTAs; size ease; guide wipe —— */

/* Search input — larger type + field */
html body input.site-search__input {
  font-size: 22px !important;
  line-height: 1.35 !important;
  letter-spacing: -0.02em !important;
  padding-top: 0.35rem !important;
  padding-bottom: 0.35rem !important;
  padding-right: 5rem !important;
}
@media (min-width: 768px) {
  html body input.site-search__input {
    font-size: 28px !important;
    padding-top: 0.45rem !important;
    padding-bottom: 0.45rem !important;
  }
}
html body .site-search__field {
  padding-bottom: 0.85rem !important;
  margin-bottom: 1.5rem !important;
}
html body .site-search__input::placeholder {
  font-size: inherit !important;
  color: #a3a3a3 !important;
}

/* Floating sticky — inset over first image (match BV ref) */
html body .site-product__sticky-bar--float {
  left: 16px !important;
  right: 16px !important;
  bottom: 16px !important;
  width: auto !important;
  border: 0 !important;
  border-top: 0 !important;
  box-shadow: 0 1px 0 rgba(0,0,0,0.06), 0 8px 24px rgba(0,0,0,0.08) !important;
  min-height: 64px !important;
  background: #fff !important;
}
@media (min-width: 768px) {
  html body .site-product__sticky-bar--float {
    left: 40px !important;
    right: 40px !important;
    bottom: 24px !important;
    min-height: 68px !important;
  }
}
html body .site-product__sticky-bar--float .site-product__sticky-bar__inner {
  padding: 12px 16px 12px 20px !important;
  min-height: 64px !important;
  gap: 16px !important;
}
@media (min-width: 768px) {
  html body .site-product__sticky-bar--float .site-product__sticky-bar__inner {
    padding: 14px 20px 14px 28px !important;
    min-height: 68px !important;
  }
}
html body .site-product__sticky-bar--float .site-product__sticky-bar__title {
  font-size: 11px !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
}
html body .site-product__sticky-bar--float .site-product__sticky-bar__price {
  font-size: 12px !important;
}
html body .site-product__sticky-bar--float .site-product__sticky-bar__cta,
html body .site-product__sticky-bar--float button.site-product__cta {
  padding: 12px 22px !important;
  min-height: 40px !important;
  font-size: 12px !important;
}

/* Full-width sticky (lower gallery) stays edge-to-edge */
html body .site-product__sticky-bar--full {
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  box-shadow: none !important;
  border-top: 1px solid #e5e5e5 !important;
}

/* CTA padding — Add to bag / project / style with */
html body .site-product__cta,
html body .site-product__buy .site-product__cta,
html body .site-product__buy button.site-product__cta {
  padding: 14px 18px !important;
  min-height: 48px !important;
  letter-spacing: 0.02em !important;
}
html body .site-product__secondary,
html body .site-product__buy .site-product__secondary,
html body button.site-product__secondary {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 14px 18px !important;
  min-height: 48px !important;
  border-radius: 0 !important;
  letter-spacing: 0.02em !important;
  font-weight: 400 !important;
  box-sizing: border-box !important;
}
html body .site-product__secondary--outline {
  background: #fff !important;
  color: #111 !important;
  border: 1px solid #111 !important;
}
html body .site-product__secondary--solid {
  background: #111 !important;
  color: #fff !important;
  border: 1px solid #111 !important;
}
html body .site-product__actions {
  gap: 10px !important;
}

/* Size guide — erase wipe underline (perfect) */
html body .site-product__size-guide,
html body button.site-product__size-guide {
  position: relative !important;
  display: inline-block !important;
  width: fit-content !important;
  margin-top: 12px !important;
  padding: 0 0 2px !important;
  border: 0 !important;
  background: transparent !important;
  font-size: 12px !important;
  color: #111 !important;
  text-decoration: none !important;
  text-decoration-line: none !important;
  background-image: none !important;
  cursor: pointer !important;
}
html body .site-product__size-guide::after,
html body button.site-product__size-guide::after {
  content: none !important;
  display: none !important;
}
html body .site-product__size-guide > .xsample-ul-line,
html body button.site-product__size-guide > .xsample-ul-line {
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  height: 1px !important;
  background: #111 !important;
  transform-origin: left center !important;
}

/* Size dropdown — smooth open/close, no absolute fight */
html body .site-product__size-select.xsample-select {
  position: relative !important;
  z-index: 5 !important;
}
html body .site-product__size-select .xsample-select__panel {
  display: grid !important;
  grid-template-rows: 0fr !important;
  transition: grid-template-rows 0.34s cubic-bezier(0.22, 1, 0.36, 1) !important;
  overflow: hidden !important;
}
html body .site-product__size-select.is-open .xsample-select__panel {
  grid-template-rows: 1fr !important;
}
html body .site-product__size-select .xsample-select__menu {
  position: static !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  max-height: none !important;
  overflow: hidden !important;
  min-height: 0 !important;
  border: 0 !important;
  box-shadow: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transform: none !important;
}
html body .site-product__size-select:not(.is-open) .xsample-select__menu {
  pointer-events: none !important;
}
html body .site-product__size-select .xsample-select__trigger {
  cursor: pointer !important;
  user-select: none !important;
}
html body .site-product__size-select.is-open {
  z-index: 30 !important;
}

/* Hide page rails if any leftover */
html body .site-product__rails {
  display: none !important;
}

/* —— Pass 20260807cd — search size REAL; CTA row; tight PDP; float match; size close —— */

/* Kill 18px-tall search field — force large input */
html body .site-search .site-search__field,
html body .site-search__field {
  padding-top: 0.25rem !important;
  padding-bottom: 0.75rem !important;
  margin-bottom: 1.5rem !important;
  min-height: 0 !important;
}
html body .site-search .site-search__input {
  font-size: 24px !important;
  line-height: 1.35 !important;
  letter-spacing: -0.03em !important;
  height: auto !important;
  min-height: 36px !important;
  max-height: none !important;
  padding: 0.4rem 5rem 0.4rem 0 !important;
  box-sizing: border-box !important;
}
html body .site-search__input::placeholder {
  font-size: 24px !important;
  line-height: 1.35 !important;
}
@media (min-width: 768px) {
  html body .site-search .site-search__input {
    font-size: 32px !important;
    min-height: 44px !important;
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }
  html body .site-search__input::placeholder {
    font-size: 32px !important;
  }
}

/* CTA row: Add to bag | Add to project, Style with full below */
html body .site-product__actions {
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
}
html body .site-product__actions-row {
  display: flex !important;
  flex-direction: row !important;
  gap: 8px !important;
  width: 100% !important;
}
html body .site-product__actions-half,
html body .site-product__actions-row .site-product__cta,
html body .site-product__actions-row .site-product__secondary {
  flex: 1 1 0 !important;
  width: auto !important;
  min-width: 0 !important;
  padding: 12px 10px !important;
  min-height: 44px !important;
  font-size: 11px !important;
  white-space: nowrap !important;
}
html body .site-product__secondary--outline {
  display: flex !important;
  min-height: 44px !important;
  padding: 12px 10px !important;
}

/* Tight buy stack — less in-between spacing (mobile + desktop) */
html body .site-product__buy {
  gap: 0.55rem !important;
}
html body .site-product__buy .flex.flex-col.gap-0\.5,
html body .site-product__buy .flex.flex-col.gap-0\.5.pt-0 {
  gap: 0.15rem !important;
  padding: 0 !important;
}
html body .site-product__title {
  margin: 0 !important;
  line-height: 1.35 !important;
}
html body .site-product__price {
  margin: 0 !important;
}
html body .site-product__color {
  margin: 0 0 2px !important;
  padding: 0 !important;
}
html body .site-product__size {
  margin: 0 !important;
}
html body .site-product__size-guide,
html body button.site-product__size-guide {
  margin-top: 6px !important;
  margin-bottom: 2px !important;
}
html body .site-product__ship,
html body .site-product__desc {
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1.35 !important;
}
html body .site-product__accordions {
  margin-top: 4px !important;
  gap: 0 !important;
}
html body .site-product__row,
html body button.site-product__row {
  padding-top: 8px !important;
  padding-bottom: 8px !important;
}
@media (max-width: 767px) {
  html body .site-product__sheet {
    gap: 0.65rem !important;
    padding-top: 0.65rem !important;
    padding-left: 1rem !important;
    padding-right: 1rem !important;
  }
  html body .site-product__mobile .site-product__buy {
    gap: 0.5rem !important;
  }
  html body .site-product__actions-half,
  html body .site-product__actions-row .site-product__cta,
  html body .site-product__actions-row .site-product__secondary {
    font-size: 11px !important;
    padding: 11px 8px !important;
    min-height: 42px !important;
  }
}
@media (min-width: 768px) {
  html body .site-product__buy-wrap {
    padding-top: 2rem !important;
    padding-bottom: 1.5rem !important;
  }
  html body .site-product__desktop .site-product__buy {
    gap: 0.65rem !important;
  }
}

/* Floating sticky — match ref width/spacing */
html body .site-product__sticky-bar--float {
  left: max(16px, calc((100vw - 1280px) / 2 + 16px)) !important;
  right: max(16px, calc((100vw - 1280px) / 2 + 16px)) !important;
  bottom: 20px !important;
  width: auto !important;
  min-height: 64px !important;
  background: #fff !important;
  border: 0 !important;
  box-shadow: 0 2px 20px rgba(0, 0, 0, 0.1) !important;
}
@media (min-width: 768px) {
  html body .site-product__sticky-bar--float {
    left: 48px !important;
    right: 48px !important;
    bottom: 24px !important;
    min-height: 68px !important;
  }
}
html body .site-product__sticky-bar--float .site-product__sticky-bar__inner {
  padding: 12px 16px 12px 24px !important;
  min-height: 64px !important;
  gap: 20px !important;
}
@media (min-width: 768px) {
  html body .site-product__sticky-bar--float .site-product__sticky-bar__inner {
    padding: 14px 20px 14px 32px !important;
    min-height: 68px !important;
  }
}
html body .site-product__sticky-bar--float .site-product__sticky-bar__title {
  font-size: 11px !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  font-weight: 400 !important;
}
html body .site-product__sticky-bar--float .site-product__sticky-bar__price {
  font-size: 12px !important;
}
html body .site-product__sticky-bar--float .site-product__sticky-bar__cta {
  padding: 11px 20px !important;
  min-height: 40px !important;
  font-size: 12px !important;
}
html body .site-product__sticky-bar--float .site-product__sticky-bar__actions {
  gap: 18px !important;
}

/* Size select — reliable open/close */
html body .site-product__size-select.is-open {
  z-index: 40 !important;
}
html body .site-product__size-select .xsample-select__trigger {
  pointer-events: auto !important;
  position: relative !important;
  z-index: 2 !important;
}
html body .site-product__size-select .xsample-select__option.is-soldout {
  color: #111 !important;
  cursor: pointer !important;
  opacity: 1 !important;
}

/* Drawer Add links always get wipe line */
html body .site-drawer .hover-underline-erase,
html body .site-drawer button.hover-underline-erase {
  position: relative !important;
  display: inline-block !important;
  text-decoration: none !important;
  padding-bottom: 1px !important;
}
html body .site-drawer .hover-underline-erase > .xsample-ul-line,
html body .site-drawer button.hover-underline-erase > .xsample-ul-line {
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  height: 1px !important;
  background: #111 !important;
}


/* —— Pass 20260807ce — search input FINAL (beat :not() specificity wars) —— */
html body .site-search input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]):not([type=hidden]):not([type=button]):not([type=submit]):not([type=reset]).site-search__input,
html body input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]):not([type=hidden]):not([type=button]):not([type=submit]):not([type=reset]).site-search__input,
html body .site-search__field input.site-search__input,
html body .site-search .site-search__input {
  font-size: 28px !important;
  line-height: 1.35 !important;
  letter-spacing: -0.03em !important;
  height: auto !important;
  min-height: 40px !important;
  max-height: none !important;
  padding: 0.45rem 5rem 0.45rem 0 !important;
  box-sizing: border-box !important;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif !important;
  -webkit-text-size-adjust: 100% !important;
  text-size-adjust: 100% !important;
}
html body .site-search input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]):not([type=hidden]):not([type=button]):not([type=submit]):not([type=reset]).site-search__input::placeholder,
html body input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]):not([type=hidden]):not([type=button]):not([type=submit]):not([type=reset]).site-search__input::placeholder,
html body .site-search__field input.site-search__input::placeholder,
html body .site-search .site-search__input::placeholder,
html body .site-search__input::placeholder {
  font-size: 28px !important;
  line-height: 1.35 !important;
  letter-spacing: -0.03em !important;
  opacity: 1 !important;
  color: #a3a3a3 !important;
}
html body .site-search .site-search__field,
html body .site-search__field {
  padding-top: 0.35rem !important;
  padding-bottom: 0.85rem !important;
  margin-bottom: 1.5rem !important;
  min-height: 0 !important;
}
@media (min-width: 768px) {
  html body .site-search input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]):not([type=hidden]):not([type=button]):not([type=submit]):not([type=reset]).site-search__input,
  html body input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]):not([type=hidden]):not([type=button]):not([type=submit]):not([type=reset]).site-search__input,
  html body .site-search__field input.site-search__input,
  html body .site-search .site-search__input {
    font-size: 36px !important;
    min-height: 48px !important;
    padding-top: 0.55rem !important;
    padding-bottom: 0.55rem !important;
  }
  html body .site-search input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]):not([type=hidden]):not([type=button]):not([type=submit]):not([type=reset]).site-search__input::placeholder,
  html body input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]):not([type=hidden]):not([type=button]):not([type=submit]):not([type=reset]).site-search__input::placeholder,
  html body .site-search__field input.site-search__input::placeholder,
  html body .site-search .site-search__input::placeholder,
  html body .site-search__input::placeholder {
    font-size: 36px !important;
  }
}


/* —— Pass 20260807cf — search input NUCLEAR (id beats everything) —— */
html body #xsample-search-input.site-search__input,
html body input#xsample-search-input,
html body .site-search input#xsample-search-input,
html body .site-search__field input#xsample-search-input.site-search__input {
  font-size: 28px !important;
  line-height: 1.35 !important;
  letter-spacing: -0.03em !important;
  height: auto !important;
  min-height: 44px !important;
  max-height: none !important;
  padding: 0.5rem 5rem 0.5rem 0 !important;
  box-sizing: border-box !important;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif !important;
  -webkit-text-size-adjust: 100% !important;
  text-size-adjust: 100% !important;
  transform: none !important;
  zoom: 1 !important;
}
html body #xsample-search-input.site-search__input::placeholder,
html body input#xsample-search-input::placeholder,
html body .site-search input#xsample-search-input::placeholder,
html body .site-search__field input#xsample-search-input.site-search__input::placeholder {
  font-size: 28px !important;
  line-height: 1.35 !important;
  letter-spacing: -0.03em !important;
  opacity: 1 !important;
  color: #a3a3a3 !important;
}
@media (min-width: 768px) {
  html body #xsample-search-input.site-search__input,
  html body input#xsample-search-input,
  html body .site-search input#xsample-search-input,
  html body .site-search__field input#xsample-search-input.site-search__input {
    font-size: 36px !important;
    min-height: 52px !important;
    padding-top: 0.55rem !important;
    padding-bottom: 0.55rem !important;
  }
  html body #xsample-search-input.site-search__input::placeholder,
  html body input#xsample-search-input::placeholder,
  html body .site-search input#xsample-search-input::placeholder,
  html body .site-search__field input#xsample-search-input.site-search__input::placeholder {
    font-size: 36px !important;
  }
}


/* —— Pass 20260808ch — compact 14px caps: search, CTAs, sticky, size —— */

/* Search input: 14px caps, tight to underline */
html body #xsample-search-input.site-search__input,
html body input#xsample-search-input,
html body .site-search input#xsample-search-input,
html body .site-search__field input#xsample-search-input.site-search__input,
html body .site-search .site-search__input,
html body input.site-search__input {
  font-size: 14px !important;
  line-height: 1.35 !important;
  letter-spacing: -0.20px !important;
  text-transform: uppercase !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  padding: 0.15rem 4.5rem 0.3rem 0 !important;
  box-sizing: border-box !important;
}
html body #xsample-search-input.site-search__input::placeholder,
html body input#xsample-search-input::placeholder,
html body .site-search input#xsample-search-input::placeholder,
html body .site-search__field input#xsample-search-input.site-search__input::placeholder,
html body .site-search__input::placeholder {
  font-size: 14px !important;
  line-height: 1.35 !important;
  letter-spacing: -0.20px !important;
  text-transform: none !important;
  opacity: 1 !important;
  color: #a3a3a3 !important;
}
html body .site-search .site-search__field,
html body .site-search__field {
  padding-top: 0.15rem !important;
  padding-bottom: 0.35rem !important;
  margin-bottom: 1rem !important;
  min-height: 0 !important;
}

/* PDP CTAs — shared compact size, all caps */
html body .site-product__actions {
  gap: 12px !important;
  margin-bottom: 0 !important;
}
html body .site-product__actions-row {
  gap: 6px !important;
}
html body .site-product__cta,
html body .site-product__buy .site-product__cta,
html body .site-product__buy button.site-product__cta,
html body .site-product__actions-half,
html body .site-product__actions-row .site-product__cta,
html body .site-product__actions-row .site-product__secondary,
html body .site-product__secondary,
html body .site-product__buy .site-product__secondary,
html body button.site-product__secondary,
html body .site-product__secondary--outline,
html body .site-product__secondary--solid {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 14px !important;
  letter-spacing: -0.20px !important;
  text-transform: uppercase !important;
  font-weight: 400 !important;
  padding: 10px 12px !important;
  min-height: 40px !important;
  line-height: 1.35 !important;
  box-sizing: border-box !important;
  border-radius: 0 !important;
}
html body .site-product__ship {
  margin-top: 4px !important;
  padding-top: 0 !important;
}

/* Sticky bar — slimmer */
html body .site-product__sticky-bar,
html body .site-product__sticky-bar--float,
html body .site-product__sticky-bar--full {
  min-height: 0 !important;
}
html body .site-product__sticky-bar__inner,
html body .site-product__sticky-bar--float .site-product__sticky-bar__inner,
html body .site-product__sticky-bar--full .site-product__sticky-bar__inner {
  padding: 8px 16px !important;
  min-height: 48px !important;
  gap: 12px !important;
}
@media (min-width: 768px) {
  html body .site-product__sticky-bar__inner,
  html body .site-product__sticky-bar--float .site-product__sticky-bar__inner,
  html body .site-product__sticky-bar--full .site-product__sticky-bar__inner {
    padding: 8px 24px !important;
    min-height: 48px !important;
    border: 1px solid #ccc;
  }
  html body .site-product__sticky-bar--float {
    left: 24px !important;
    right: 24px !important;
    bottom: 16px !important;
    min-height: 0 !important;
  }
}
html body .site-product__sticky-bar__title,
html body .site-product__sticky-bar--float .site-product__sticky-bar__title {
  font-size: 14px !important;
  letter-spacing: -0.20px !important;
  text-transform: uppercase !important;
  font-weight: 400 !important;
}
html body .site-product__sticky-bar__price,
html body .site-product__sticky-bar--float .site-product__sticky-bar__price {
  font-size: 14px !important;
  letter-spacing: -0.20px !important;
}
html body .site-product__sticky-bar__cta,
html body .site-product__sticky-bar button.site-product__cta,
html body .site-product__sticky-bar--float .site-product__sticky-bar__cta,
html body .site-product__sticky-bar--float button.site-product__cta {
  font-size: 14px !important;
  letter-spacing: -0.20px !important;
  text-transform: uppercase !important;
  padding: 8px 18px !important;
  min-height: 34px !important;
}

/* Size select — 14px, tighter text-to-line, reliable close surface */
html body .site-product__size-select .xsample-select__trigger {
  font-size: 14px !important;
  letter-spacing: -0.20px !important;
  padding: 8px 4px !important;
  min-height: 0 !important;
  line-height: 1.35 !important;
}
html body .site-product__size-select.is-open .xsample-select__trigger {
  padding: 8px 12px 6px !important;
}
html body .site-product__size-select .xsample-select__value {
  font-size: 14px !important;
  letter-spacing: -0.20px !important;
}
html body .site-product__size-select .xsample-select__option {
  font-size: 14px !important;
  letter-spacing: -0.20px !important;
  padding: 8px 12px !important;
}
html body .site-product__size-select .xsample-select__menu,
html body .site-product__size-select.is-open .xsample-select__menu {
  padding: 0 0 4px !important;
}


/* —— Pass 20260808ci — beat button.uppercase 0.15em tracking on PDP CTAs —— */
html body button.site-product__cta,
html body button.site-product__secondary,
html body button.site-product__secondary--outline,
html body button.site-product__secondary--solid,
html body button.site-product__actions-half,
html body .site-product__buy button.site-product__cta,
html body .site-product__buy button.site-product__secondary,
html body .site-product__actions button,
html body .site-product__sticky-bar button.site-product__cta,
html body button.site-product__sticky-bar__cta {
  font-size: 14px !important;
  letter-spacing: -0.20px !important;
  text-transform: uppercase !important;
  font-weight: 400 !important;
  padding: 15px 12px !important;
  min-height: 40px !important;
}
html body .site-product__sticky-bar button.site-product__cta,
html body button.site-product__sticky-bar__cta {
  padding: 8px 18px !important;
  min-height: 34px !important;
}


/* —— Pass 20260808cj — size close; no ship; meta 2px; size black lines; size-guide underline —— */

/* Chevron never steals hits from the trigger button */
html body .xsample-select__chevron,
html body .site-product__size-select .xsample-select__chevron {
  pointer-events: none !important;
}

/* Size select: black text + black underlines only (hairline top/bottom) */
html body .site-product__size-select.xsample-select {
  border: 0 !important;
  background: #fff !important;
}
html body .site-product__size-select .xsample-select__trigger {
  width: 100% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  border-top: 1px solid #111 !important;
  border-bottom: 1px solid #111 !important;
  border-left: 0 !important;
  border-right: 0 !important;
  color: #111 !important;
  font-size: 12px !important;
  letter-spacing: -0.20px !important;
  padding: 8px 2px !important;
  min-height: 0 !important;
  background: transparent !important;
}
@media (min-width: 768px) {
  html body .site-product__size-select .xsample-select__trigger {
    font-size: 14px !important;
  }
}
html body .site-product__size-select .xsample-select__value,
html body .site-product__size-select .xsample-select__option,
html body .site-product__size-select .xsample-select__option-label {
  color: #111 !important;
  font-size: inherit !important;
  letter-spacing: -0.20px !important;
}
html body .site-product__size-select .xsample-select__value.is-placeholder {
  color: #111 !important;
  opacity: 0.45 !important;
}
html body .site-product__size-select.is-open {
  border: 1px solid #111 !important;
}
html body .site-product__size-select.is-open .xsample-select__trigger {
  border: 0 !important;
  border-bottom: 0 !important;
  padding: 8px 12px 6px !important;
}
html body .site-product__size-select .xsample-select__option {
  padding: 7px 12px !important;
  font-size: 12px !important;
}
@media (min-width: 768px) {
  html body .site-product__size-select .xsample-select__option {
    font-size: 14px !important;
  }
}
html body .site-product__size-select .xsample-select__menu,
html body .site-product__size-select.is-open .xsample-select__menu {
  padding: 0 0 4px !important;
}

/* Hide removed ship line if leftover */
html body .site-product__ship {
  display: none !important;
}

/* 2px gaps: name → price → color → size */
html body .site-product__meta {
  display: flex !important;
  flex-direction: column !important;
  gap: 2px !important;
  margin: 0 !important;
  padding: 0 !important;
}
html body .site-product__title,
html body .site-product__price,
html body .site-product__color {
  margin: 0 !important;
  padding: 0 !important;
  letter-spacing: -0.20px !important;
}
html body .site-product__title {
  font-size: 13px !important;
}
html body .site-product__price,
html body .site-product__color,
html body .site-product__desc {
  font-size: 12px !important;
}
html body .site-product__size {
  margin-top: 2px !important;
  margin-bottom: 0 !important;
}
@media (min-width: 768px) {
  html body .site-product__title,
  html body .site-product__price,
  html body .site-product__color,
  html body .site-product__desc,
  html body .site-product__row {
    font-size: 14px !important;
  }
}
html body .site-product__buy .flex.flex-col.gap-0\.5,
html body .site-product__buy .site-product__meta {
  gap: 2px !important;
}

/* Size guide: always-on black underline under text only + wipe */
html body .site-product__size-guide,
html body button.site-product__size-guide {
  position: relative !important;
  display: inline-block !important;
  width: fit-content !important;
  max-width: 100% !important;
  margin-top: 8px !important;
  margin-bottom: 0 !important;
  padding: 0 0 2px !important;
  border: 0 !important;
  background: transparent !important;
  color: #111 !important;
  font-size: 12px !important;
  letter-spacing: -0.20px !important;
  line-height: 1.35 !important;
  cursor: pointer !important;
  text-decoration: none !important;
  text-decoration-line: none !important;
  background-image: none !important;
  box-shadow: none !important;
}
@media (min-width: 768px) {
  html body .site-product__size-guide,
  html body button.site-product__size-guide {
    font-size: 14px !important;
  }
}
html body .site-product__size-guide::after,
html body button.site-product__size-guide::after {
  content: none !important;
  display: none !important;
}
html body .site-product__size-guide > .xsample-ul-line,
html body button.site-product__size-guide > .xsample-ul-line {
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: auto !important;
  width: 100% !important;
  bottom: 0 !important;
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  background: #111 !important;
  opacity: 1 !important;
  pointer-events: none !important;
  transform: none !important;
  transform-origin: left center !important;
}

/* Detail drawer download links — same wipe underline */
html body .site-drawer .site-product__detail-link,
html body .site-drawer button.site-product__detail-link,
html body .site-drawer .hover-underline-erase {
  position: relative !important;
  display: inline-block !important;
  width: fit-content !important;
  color: #111 !important;
  text-decoration: none !important;
  padding: 0 0 2px !important;
}
html body .site-drawer .site-product__detail-link > .xsample-ul-line,
html body .site-drawer button.site-product__detail-link > .xsample-ul-line,
html body .site-drawer .hover-underline-erase > .xsample-ul-line {
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  width: 100% !important;
  bottom: 0 !important;
  height: 1px !important;
  background: #111 !important;
}

/* Tighter product-details drawer accordions */
html body .site-drawer--product .border-b button {
  padding-top: 10px !important;
  padding-bottom: 10px !important;
}


/* —— Pass 20260808ck — beat product-page 20px title/price —— */
html body.product-page .site-product__title,
html body .product-page .site-product__title,
html body main.site-product .site-product__title,
html body .site-product__desktop .site-product__title,
html body .site-product__mobile .site-product__title,
html body .site-product__buy .site-product__title {
  font-size: 13px !important;
  letter-spacing: -0.20px !important;
  line-height: 1.35 !important;
}
html body.product-page .site-product__price,
html body.product-page .site-product__color,
html body.product-page .site-product__desc,
html body main.site-product .site-product__price,
html body main.site-product .site-product__color,
html body main.site-product .site-product__desc,
html body .site-product__desktop .site-product__price,
html body .site-product__desktop .site-product__color,
html body .site-product__desktop .site-product__desc,
html body .site-product__buy .site-product__price,
html body .site-product__buy .site-product__color {
  font-size: 12px !important;
  letter-spacing: -0.20px !important;
}
@media (min-width: 768px) {
  html body.product-page .site-product__title,
  html body .product-page .site-product__title,
  html body main.site-product .site-product__title,
  html body .site-product__desktop .site-product__title,
  html body .site-product__buy .site-product__title,
  html body.product-page .site-product__price,
  html body.product-page .site-product__color,
  html body.product-page .site-product__desc,
  html body main.site-product .site-product__price,
  html body main.site-product .site-product__color,
  html body main.site-product .site-product__desc,
  html body .site-product__desktop .site-product__price,
  html body .site-product__desktop .site-product__color,
  html body .site-product__desktop .site-product__desc,
  html body .site-product__buy .site-product__price,
  html body .site-product__buy .site-product__color,
  html body .site-product__row {
    font-size: 14px !important;
  }
}


/* —— Pass 20260808cl — revert title/price size; real gaps; size close —— */
html body.product-page .site-product__title,
html body .product-page .site-product__title,
html body main.site-product .site-product__title,
html body .site-product__desktop .site-product__title,
html body .site-product__mobile .site-product__title,
html body .site-product__buy .site-product__title,
html body .site-product__title {
  font-size: 16px !important;
  letter-spacing: -0.20px !important;
  line-height: 1.35 !important;
  font-weight: 400 !important;
}
html body.product-page .site-product__price,
html body .product-page .site-product__price,
html body main.site-product .site-product__price,
html body .site-product__desktop .site-product__price,
html body .site-product__mobile .site-product__price,
html body .site-product__buy .site-product__price,
html body .site-product__price {
  font-size: 16px !important;
  letter-spacing: -0.20px !important;
  line-height: 1.35 !important;
  font-weight: 400 !important;
}
@media (min-width: 768px) {
  html body.product-page .site-product__title,
  html body .product-page .site-product__title,
  html body main.site-product .site-product__title,
  html body .site-product__desktop .site-product__title,
  html body .site-product__buy .site-product__title,
  html body .site-product__title,
  html body.product-page .site-product__price,
  html body .product-page .site-product__price,
  html body main.site-product .site-product__price,
  html body .site-product__desktop .site-product__price,
  html body .site-product__buy .site-product__price,
  html body .site-product__price {
    font-size: 20px !important;
  }
}

/* Color stays 14 desktop / 13 mobile — not reverted to title size */
html body.product-page .site-product__color,
html body main.site-product .site-product__color,
html body .site-product__color {
  font-size: 13px !important;
  letter-spacing: -0.20px !important;
}
@media (min-width: 768px) {
  html body.product-page .site-product__color,
  html body main.site-product .site-product__color,
  html body .site-product__color {
    font-size: 14px !important;
  }
}

/* Clear space between title → price → color → size */
html body .site-product__meta {
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
  margin: 0 0 10px !important;
  padding: 0 !important;
}
html body .site-product__title,
html body .site-product__price,
html body .site-product__color {
  margin: 0 !important;
  padding: 0 !important;
}
html body .site-product__size {
  margin-top: 4px !important;
  margin-bottom: 0 !important;
}
html body .site-product__buy {
  gap: 0.75rem !important;
}
html body .site-product__buy .flex.flex-col.gap-0\.5,
html body .site-product__buy .site-product__meta {
  gap: 12px !important;
}

/* Size select: trigger always clickable above panel */
html body .site-product__size-select .xsample-select__trigger {
  position: relative !important;
  z-index: 2 !important;
  cursor: pointer !important;
}
html body .site-product__size-select .xsample-select__panel {
  position: relative !important;
  z-index: 1 !important;
}
html body .site-product__size-select .xsample-select__chevron {
  pointer-events: none !important;
}


/* —— Pass 20260808cm — drawers/cookie don't block size; size close hardened —— */

/* Closed drawers must not steal clicks over the PDP */
html body .site-drawer.translate-x-full,
html body .site-drawer:not(.translate-x-0) {
  pointer-events: none !important;
}
html body .site-drawer.translate-x-0,
html body .site-drawer.is-open {
  pointer-events: auto !important;
}
html body .site-drawer__backdrop:not(.is-open),
html body .site-drawer__backdrop.invisible,
html body .site-drawer__backdrop.pointer-events-none {
  pointer-events: none !important;
}

/* Cookie dim only while pending — never block PDP forever */
html body:not(.cookie-pending) .cookie-dim,
html body.cookie-accepted .cookie-dim,
html body.cookie-dismissed .cookie-dim {
  pointer-events: none !important;
  display: none !important;
}

/* Size select always above buy-box siblings while open */
html body .site-product__size {
  position: relative !important;
  z-index: 20 !important;
}
html body .site-product__size-select.is-open {
  position: relative !important;
  z-index: 40 !important;
}
html body .site-product__size-select .xsample-select__trigger {
  position: relative !important;
  z-index: 3 !important;
  pointer-events: auto !important;
}


/* —— Pass 20260808cr — delivery Estimate black; size-guide wipe; drawer underline —— */
html body .site-drawer--product button.w-full.h-\[44px\].bg-\[\#707780\],
html body .site-drawer button.bg-\[\#707780\] {
  background: #000 !important;
  background-color: #000 !important;
}
html body .site-drawer .site-product__size-guide,
html body .site-drawer button.site-product__size-guide,
html body .site-drawer .hover-underline-erase.site-product__size-guide {
  position: relative !important;
  display: inline-block !important;
  width: fit-content !important;
  max-width: 100% !important;
  color: #111 !important;
  text-decoration: none !important;
  background: transparent !important;
  border: 0 !important;
  padding: 0 0 2px !important;
  margin-top: 8px !important;
  cursor: pointer !important;
  overflow: visible !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
  letter-spacing: -0.20px !important;
  font-weight: 400 !important;
}
@media (min-width: 768px) {
  html body .site-drawer .site-product__size-guide,
  html body .site-drawer button.site-product__size-guide {
    font-size: 14px !important;
  }
}
html body .site-drawer .site-product__size-guide::after,
html body .site-drawer button.site-product__size-guide::after,
html body .site-drawer .hover-underline-erase::after {
  content: none !important;
  display: none !important;
}
html body .site-drawer .site-product__size-guide > .xsample-ul-line,
html body .site-drawer button.site-product__size-guide > .xsample-ul-line,
html body .site-drawer .hover-underline-erase > .xsample-ul-line {
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: auto !important;
  width: 100% !important;
  bottom: 0 !important;
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  background: #111 !important;
  opacity: 1 !important;
  pointer-events: none !important;
  transform: none !important;
  transform-origin: left center !important;
}


/* —— Pass 20260808cs — cart layout; accordion +1.5px; sheet snap; hide cart footer —— */
html body.cart-page #footer-container,
html.cart-page #footer-container,
html body.cart-page .site-footer,
html.cart-page .site-footer {
  display: none !important;
}

html body .site-cart {
  background: #fff !important;
  color: #000 !important;
  min-height: 0 !important;
  padding-bottom: 0 !important;
}
html body .site-cart__back {
  padding: 12px 8px 0 !important;
}
@media (min-width: 768px) {
  html body .site-cart__back {
    padding: 18px 8px 0 !important;
  }
}
html body .site-cart__back-link {
  display: inline-flex !important;
  align-items: center !important;
  gap: 4px !important;
  font-size: 11px !important;
  color: #000 !important;
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
  cursor: pointer !important;
  font-weight: 400 !important;
}
@media (min-width: 768px) {
  html body .site-cart__back-link {
    font-size: 12px !important;
  }
}
html body .site-cart__empty {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  min-height: 38vh !important;
  padding: 3.25rem 16px 2.75rem !important;
}
@media (min-width: 768px) {
  html body .site-cart__empty {
    min-height: 42vh !important;
    padding: 4.5rem 32px 3.5rem !important;
  }
}
html body .site-cart__title {
  font-size: 12px !important;
  letter-spacing: 0.1em !important;
  font-weight: 500 !important;
  text-transform: uppercase !important;
  color: #000 !important;
  margin: 0 !important;
}
@media (min-width: 768px) {
  html body .site-cart__title {
    font-size: 13px !important;
  }
}
html body .site-cart__cta {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-top: calc(1.25rem - 8px) !important;
  background: #000 !important;
  color: #fff !important;
  border: 0 !important;
  border-radius: 0 !important;
  min-width: 200px !important;
  padding: 12px !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  text-decoration: none !important;
  transition: opacity 0.15s ease !important;
}
html body .site-cart__cta:hover {
  opacity: 0.9 !important;
}
@media (min-width: 768px) {
  html body .site-cart__cta {
    margin-top: calc(1.25rem - 8px) !important;
    font-size: 14px !important;
    padding: 12px !important;
  }
}
html body .site-cart__promos {
  margin: 0 !important;
  padding: 0 !important;
}
html body .site-cart__promo-grid {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 0 !important;
}
@media (min-width: 768px) {
  html body .site-cart__promo-grid {
    grid-template-columns: 1fr 1fr !important;
    gap: 0 !important;
  }
}
html body .site-cart__promo {
  position: relative !important;
  display: block !important;
  aspect-ratio: 3 / 4 !important;
  overflow: hidden !important;
  background: #efefef !important;
  text-decoration: none !important;
}
html body .site-cart__promo-img {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}
html body .site-cart__promo .cta-on-image,
html body .site-cart__promo-btn.cta-on-image,
html body span.site-cart__promo-btn {
  position: absolute !important;
  left: 50% !important;
  bottom: 28px !important;
  transform: translateX(-50%) !important;
  z-index: 2 !important;
  pointer-events: none !important;
}
@media (min-width: 768px) {
  html body .site-cart__promo .cta-on-image,
  html body .site-cart__promo-btn.cta-on-image {
    bottom: 36px !important;
  }
}
html body .site-cart__writeup {
  padding: 28px 16px 40px !important;
  max-width: 42rem !important;
}
@media (min-width: 768px) {
  html body .site-cart__writeup {
    padding: 32px 32px 48px !important;
  }
}
html body .site-cart__writeup-line,
html body .site-cart__writeup-hours {
  margin: 0 !important;
  font-size: 14px !important;
  line-height: 1.35 !important;
  color: #000 !important;
  font-weight: 400 !important;
}
html body .site-cart__writeup-hours {
  margin-top: 1px !important;
}
html body .site-cart__writeup-link {
  color: #000 !important;
  text-decoration: none !important;
  position: relative !important;
  display: inline !important;
}

@media (max-width: 767px) {
  html body .site-product__row,
  html body button.site-product__row {
    padding-top: 9.5px !important;
    padding-bottom: 9.5px !important;
  }
  html body .site-product__sheet,
  html body .site-product__mobile .site-product__sheet {
    scroll-behavior: smooth !important;
    overscroll-behavior: contain !important;
  }
}

/* Cart promo: tile hover must NOT invert CTA (btn-only hover) */
html body .site-cart__promo:hover .cta-on-image,
html body .site-cart__promo:focus-visible .cta-on-image,
html body .site-cart__promo:hover span.site-cart__promo-btn,
html body a.site-cart__promo:hover .cta-on-image {
  background: #fff !important;
  background-color: #fff !important;
  color: #000 !important;
  -webkit-text-fill-color: #000 !important;
  border-color: #000 !important;
}


/* —— Pass 20260808cu — cart: no image gap; CTA 13/14px; black border + invert hover —— */
html body .site-cart__promo-grid,
html body .site-cart .site-cart__promo-grid {
  gap: 0 !important;
  column-gap: 0 !important;
  row-gap: 0 !important;
}
html body .site-cart__promo,
html body a.site-cart__promo {
  margin: 0 !important;
  border: 0 !important;
  outline: 0 !important;
}

/* Empty bag title — match site type */
html body .site-cart__title {
  font-size: 13px !important;
  letter-spacing: 0.1em !important;
}
@media (min-width: 768px) {
  html body .site-cart__title {
    font-size: 14px !important;
  }
}

/* Promo CTAs: same as homepage cta-on-image */
html body .site-cart__promo .cta-on-image,
html body .site-cart__promo span.site-cart__promo-btn,
html body a.site-cart__promo .cta-on-image,
html body span.cta-on-image.site-cart__promo-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-sizing: border-box !important;
  background: #fff !important;
  background-color: #fff !important;
  color: #000 !important;
  -webkit-text-fill-color: #000 !important;
  border: 1px solid #000 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  letter-spacing: normal !important;
  line-height: 1.35 !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  padding: 8px 22px 6px !important;
  min-height: 38px !important;
  height: auto !important;
  max-height: none !important;
  transition: background-color 0.15s ease, color 0.15s ease, border-color 0.15s ease, -webkit-text-fill-color 0.15s ease !important;
}
@media (min-width: 768px) {
  html body .site-cart__promo .cta-on-image,
  html body .site-cart__promo span.site-cart__promo-btn,
  html body a.site-cart__promo .cta-on-image,
  html body span.cta-on-image.site-cart__promo-btn {
    font-size: 14px !important;
    padding: 8px 25px 5px !important;
    min-height: 40px !important;
    line-height: 1.35 !important;
  }
}

/* Tile hover must NOT invert CTA — invert only on .site-cart__promo-btn:hover */
html body .site-cart__promo:hover .cta-on-image,
html body .site-cart__promo:focus-visible .cta-on-image,
html body a.site-cart__promo:hover .cta-on-image,
html body a.site-cart__promo:focus-visible .cta-on-image,
html body .site-cart__promo:hover span.site-cart__promo-btn,
html body a.site-cart__promo:hover span.site-cart__promo-btn {
  background: #fff !important;
  background-color: #fff !important;
  color: #000 !important;
  -webkit-text-fill-color: #000 !important;
  border: 1px solid #000 !important;
  border-color: #000 !important;
}


/* —— Pass 20260808cw — mobile body 13px sitewide; cart body 13px —— */
:root {
  --fs-body: 13px !important;
}
html, body, #root {
  font-size: 13px !important;
}
@media (min-width: 768px) {
  html, body, #root {
    font-size: 14px !important;
  }
}
@media (max-width: 767px) {
  html body .site-cart,
  html body .site-cart__back-link,
  html body .site-cart__title,
  html body .site-cart__writeup,
  html body .site-cart__writeup-line,
  html body .site-cart__writeup-hours,
  html body .site-cart__writeup-link,
  html body .site-cart__promo-btn {
    font-size: 13px !important;
  }
}


/* —— Pass 20260808cx — body 13 mobile / 14 desktop; cart btn hover only; PLP back-to-top —— */
:root {
  --fs-body: 13px !important;
  --fs-body-lg: 14px !important;
}
html, body, #root {
  font-size: 13px !important;
}
@media (min-width: 768px) {
  html, body, #root {
    font-size: 14px !important;
  }
}

/* Cart: no tile-wide CTA invert — only .site-cart__promo-btn:hover */
html body .site-cart__promo:hover .cta-on-image,
html body .site-cart__promo:focus-visible .cta-on-image,
html body a.site-cart__promo:hover .cta-on-image,
html body a.site-cart__promo:focus-visible .cta-on-image,
html body .site-cart__promo:hover span.site-cart__promo-btn,
html body a.site-cart__promo:hover span.site-cart__promo-btn,
html body .site-cart__promo:hover .site-cart__promo-btn,
html body a.site-cart__promo:hover .site-cart__promo-btn {
  background: #fff !important;
  background-color: #fff !important;
  color: #000 !important;
  -webkit-text-fill-color: #000 !important;
  border: 1px solid #000 !important;
}
html body .site-cart__promo .site-cart__promo-btn:hover,
html body .site-cart__promo a.site-cart__promo-btn:hover,
html body .site-cart__promo .site-cart__promo-btn:focus-visible,
html body .site-cart__promo a.site-cart__promo-btn:focus-visible,
html body .site-cart__promo:hover .site-cart__promo-btn:hover,
html body .site-cart__promo:hover a.site-cart__promo-btn:hover {
  background: #000 !important;
  background-color: #000 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  border: 1px solid #000 !important;
}
html body .site-cart__promo-hit {
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  display: block !important;
}

/* PLP back to top — thin ↑ under product grid, right-aligned */
html body .site-plp-backtop {
  display: flex !important;
  justify-content: flex-end !important;
  align-items: center !important;
  width: 100% !important;
  padding: 28px 0 40px !important;
  margin: 0 !important;
}
@media (min-width: 768px) {
  html body .site-plp-backtop {
    padding: 36px 0 56px !important;
  }
}
html body .site-plp-backtop__btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 28px !important;
  height: 28px !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: #111 !important;
  cursor: pointer !important;
  appearance: none !important;
  transition: opacity 0.15s ease !important;
}
html body .site-plp-backtop__btn:hover {
  opacity: 0.55 !important;
}
html body .site-plp-backtop__icon {
  width: 18px !important;
  height: 18px !important;
  display: block !important;
}


/* —— Pass 20260808cz — cart empty: tighter space, -0.20px LS, tight CTA underline —— */
html body .site-cart__empty {
  min-height: 28vh !important;
  padding: 2rem 16px 1.75rem !important;
}
@media (min-width: 768px) {
  html body .site-cart__empty {
    min-height: 32vh !important;
    padding: 2.75rem 32px 2.25rem !important;
  }
}
html body .site-cart__title {
  letter-spacing: -0.20px !important;
  font-weight: 500 !important;
  text-transform: uppercase !important;
  margin: 0 !important;
}
html body .site-cart__cta {
  margin-top: calc(1.25rem - 8px) !important;
  letter-spacing: -0.20px !important;
  text-decoration: none !important;
  text-decoration-line: none !important;
  background-image: none !important;
}
@media (min-width: 768px) {
  html body .site-cart__cta {
    margin-top: calc(1.25rem - 8px) !important;
  }
}


/* —— Pass 20260808da — PDP variants; added drawer; populated cart —— */
html body .site-product__variants {
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
  margin: 6px 0 4px !important;
  width: 100% !important;
}
html body .site-product__variant-grid {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 6px !important;
  width: 100% !important;
}
html body .site-product__variant {
  width: 52px !important;
  height: 52px !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 1px solid transparent !important;
  background: #f2f2f0 !important;
  cursor: pointer !important;
  appearance: none !important;
  overflow: hidden !important;
  flex: 0 0 auto !important;
}
@media (min-width: 768px) {
  html body .site-product__variant {
    width: 58px !important;
    height: 58px !important;
  }
}
html body .site-product__variant.is-selected {
  border-color: #111 !important;
}
html body .site-product__variant-img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}
html body .site-added__continue {
  text-decoration: underline !important;
  text-underline-offset: 1px !important;
  text-decoration-thickness: 1px !important;
  letter-spacing: -0.20px !important;
}

/* Populated cart */
html body .site-cart--filled,
html body .site-cart.site-cart--filled {
  padding: 0 16px 48px !important;
}
@media (min-width: 768px) {
  html body .site-cart--filled {
    padding: 0 32px 72px !important;
  }
}
html body .site-cart__filled {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 36px !important;
  max-width: 1200px !important;
  margin: 8px auto 0 !important;
  width: 100% !important;
}
@media (min-width: 900px) {
  html body .site-cart__filled {
    grid-template-columns: minmax(0, 1.35fr) minmax(280px, 0.75fr) !important;
    gap: 48px !important;
    align-items: start !important;
  }
}
html body .site-cart__bag-title {
  margin: 8px 0 24px !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  letter-spacing: -0.20px !important;
  text-transform: uppercase !important;
  color: #000 !important;
}
@media (min-width: 768px) {
  html body .site-cart__bag-title { font-size: 14px !important; }
}
html body .site-cart__lines {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
html body .site-cart__line {
  display: grid !important;
  grid-template-columns: 110px minmax(0, 1fr) !important;
  gap: 16px !important;
  padding: 0 0 28px !important;
  margin: 0 0 28px !important;
  border-bottom: 1px solid #e5e5e5 !important;
}
@media (min-width: 768px) {
  html body .site-cart__line {
    grid-template-columns: 140px minmax(0, 1fr) !important;
    gap: 24px !important;
  }
}
html body .site-cart__line-media {
  position: relative !important;
  display: block !important;
  aspect-ratio: 1 / 1 !important;
  background: #f2f2f0 !important;
  overflow: hidden !important;
  text-decoration: none !important;
}
html body .site-cart__line-img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}
html body .site-cart__line-zoom {
  position: absolute !important;
  top: 6px !important;
  right: 8px !important;
  font-size: 16px !important;
  line-height: 1.35 !important;
  color: #111 !important;
  pointer-events: none !important;
}
html body .site-cart__line-body {
  display: flex !important;
  flex-direction: column !important;
  gap: 6px !important;
  min-width: 0 !important;
}
html body .site-cart__line-top {
  display: flex !important;
  justify-content: space-between !important;
  gap: 12px !important;
  align-items: flex-start !important;
}
html body .site-cart__line-name,
html body .site-cart__line-price {
  font-weight: 500 !important;
  color: #000 !important;
  letter-spacing: -0.20px !important;
}
html body .site-cart__line-meta,
html body .site-cart__line-qty {
  color: #000 !important;
  letter-spacing: -0.20px !important;
}
html body .site-cart__line-qty {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  margin-top: 4px !important;
}
html body .site-cart__qty-btn {
  border: 0 !important;
  background: transparent !important;
  padding: 0 4px !important;
  font-size: 16px !important;
  line-height: 1.35 !important;
  cursor: pointer !important;
  color: #000 !important;
}
html body .site-cart__qty-val {
  min-width: 1ch !important;
  text-align: center !important;
}
html body .site-cart__line-actions {
  display: flex !important;
  gap: 18px !important;
  margin-top: 8px !important;
}
html body .site-cart__line-link {
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
  color: #000 !important;
  cursor: pointer !important;
  font: inherit !important;
  text-decoration: none !important;
  letter-spacing: -0.20px !important;
}
html body .site-cart__gift {
  display: flex !important;
  gap: 16px !important;
  align-items: center !important;
  padding: 8px 0 24px !important;
}
html body .site-cart__gift-media {
  width: 72px !important;
  height: 72px !important;
  flex: 0 0 auto !important;
  background: #f2f2f0 !important;
  overflow: hidden !important;
}
html body .site-cart__gift-img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}
html body .site-cart__gift-copy {
  margin: 0 !important;
  color: #000 !important;
  letter-spacing: -0.20px !important;
  line-height: 1.35 !important;
}
html body .site-cart__summary {
  border: 1px solid #e5e5e5 !important;
  padding: 22px 20px 18px !important;
}
html body .site-cart__summary-title {
  margin: 0 0 18px !important;
  font-size: inherit !important;
  font-weight: 500 !important;
  letter-spacing: -0.20px !important;
  color: #000 !important;
}
html body .site-cart__summary-row {
  display: flex !important;
  justify-content: space-between !important;
  gap: 12px !important;
  margin: 0 0 10px !important;
  color: #000 !important;
  letter-spacing: -0.20px !important;
}
html body .site-cart__summary-row--total {
  margin-top: 14px !important;
  margin-bottom: 14px !important;
  font-weight: 500 !important;
}
html body .site-cart__estimate {
  display: inline-block !important;
  margin: 0 0 18px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: #000 !important;
  font: inherit !important;
  cursor: pointer !important;
  letter-spacing: -0.20px !important;
}
html body .site-cart__checkout {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 48px !important;
  margin: 0 0 14px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: #000 !important;
  color: #fff !important;
  font: inherit !important;
  letter-spacing: -0.20px !important;
  cursor: pointer !important;
}
html body .site-cart__legal {
  margin: 0 0 22px !important;
  color: #111 !important;
  line-height: 1.35 !important;
  letter-spacing: -0.20px !important;
  font-size: 12px !important;
}
html body .site-cart__legal-link {
  color: inherit !important;
  text-decoration: none !important;
}
html body .site-cart__acc {
  border-top: 1px solid #e5e5e5 !important;
}
html body .site-cart__acc-btn {
  width: 100% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  padding: 14px 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: #000 !important;
  font: inherit !important;
  font-size: 12px !important;
  letter-spacing: -0.20px !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
}
html body .site-cart__acc-body {
  padding: 0 0 14px !important;
  color: #111 !important;
  line-height: 1.35 !important;
  letter-spacing: -0.20px !important;
}


/* —— Pass 20260808db — match Bottega refs: variants 6-col, drawer, bag —— */
html body .site-product__badge {
  margin: 0 0 6px !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  letter-spacing: -0.20px !important;
  color: #000 !important;
  line-height: 1.35 !important;
}
@media (min-width: 768px) {
  html body .site-product__badge { font-size: 14px !important; }
}
html body .site-product__meta {
  gap: 2px !important;
}
html body .site-product__title,
html body .site-product__price {
  margin: 0 !important;
  letter-spacing: -0.20px !important;
}
html body .site-product__variants {
  margin: 18px 0 8px !important;
  gap: 8px !important;
}
html body .site-product__color {
  margin: 0 !important;
  font-size: 13px !important;
  letter-spacing: -0.20px !important;
  color: #000 !important;
  line-height: 1.35 !important;
}
@media (min-width: 768px) {
  html body .site-product__color { font-size: 14px !important; }
}
/* 6-across square thumbs like Bottega */
html body .site-product__variant-grid {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 5px !important;
  width: 100% !important;
}
@media (min-width: 768px) {
  html body .site-product__variant-grid {
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
    gap: 6px !important;
  }
}
html body .site-product__variant {
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 1 / 1 !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 1px solid transparent !important;
  background: #efefef !important;
  cursor: pointer !important;
  appearance: none !important;
  overflow: hidden !important;
  flex: unset !important;
  box-sizing: border-box !important;
}
html body .site-product__variant.is-selected {
  border-color: #111 !important;
}
html body .site-product__variant-img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
  display: block !important;
}

/* Added drawer — Bottega layout */
html body .site-drawer--added {
  display: flex !important;
  flex-direction: column !important;
}
html body .site-added__head {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding: 22px 24px 12px !important;
  min-height: 64px !important;
}
@media (min-width: 768px) {
  html body .site-added__head {
    padding: 28px 32px 16px !important;
    min-height: 72px !important;
  }
}
html body .site-added__title {
  margin: 0 !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: #000 !important;
}
@media (min-width: 768px) {
  html body .site-added__title { font-size: 13px !important; }
}
html body .site-added__close {
  border: 0 !important;
  background: transparent !important;
  padding: 4px !important;
  color: #000 !important;
  cursor: pointer !important;
}
html body .site-added__body {
  flex: 1 1 auto !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  padding: 12px 24px 36px !important;
  overflow-y: auto !important;
}
@media (min-width: 768px) {
  html body .site-added__body { padding: 16px 32px 48px !important; }
}
html body .site-added__item {
  display: flex !important;
  gap: 22px !important;
  align-items: flex-start !important;
}
html body .site-added__media {
  width: 120px !important;
  flex: 0 0 120px !important;
  aspect-ratio: 1 / 1 !important;
  background: #f2f2f0 !important;
  overflow: hidden !important;
}
html body .site-added__img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}
html body .site-added__info {
  display: flex !important;
  flex-direction: column !important;
  gap: 6px !important;
  padding-top: 2px !important;
  font-size: 13px !important;
  letter-spacing: -0.20px !important;
  color: #000 !important;
  line-height: 1.35 !important;
}
@media (min-width: 768px) {
  html body .site-added__info { font-size: 14px !important; }
}
html body .site-added__name {
  font-weight: 400 !important;
}
html body .site-added__price {
  margin-top: 8px !important;
}
html body .site-added__actions {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 16px !important;
  margin-top: auto !important;
  padding-top: 40px !important;
  width: 100% !important;
}
html body .site-added__view {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 48px !important;
  background: #000 !important;
  color: #fff !important;
  text-decoration: none !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  letter-spacing: -0.20px !important;
  border-radius: 0 !important;
}
@media (min-width: 768px) {
  html body .site-added__view { font-size: 14px !important; min-height: 50px !important; }
}
html body .site-added__continue {
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  color: #000 !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  letter-spacing: -0.20px !important;
  cursor: pointer !important;
  text-decoration: underline !important;
  text-underline-offset: 2px !important;
  text-decoration-thickness: 1px !important;
}
@media (min-width: 768px) {
  html body .site-added__continue { font-size: 14px !important; }
}

/* Filled bag refinements */
html body .site-cart__line {
  grid-template-columns: 120px minmax(0, 1fr) !important;
  gap: 18px !important;
  padding-bottom: 32px !important;
  margin-bottom: 32px !important;
}
@media (min-width: 768px) {
  html body .site-cart__line {
    grid-template-columns: 160px minmax(0, 1fr) !important;
    gap: 28px !important;
  }
}
html body .site-cart__line-name {
  font-weight: 500 !important;
}
html body .site-cart__line-price {
  font-weight: 400 !important;
  white-space: nowrap !important;
}
html body .site-cart__line-qty {
  gap: 8px !important;
  margin-top: 8px !important;
}
html body .site-cart__qty-btn {
  min-width: 18px !important;
  font-size: 15px !important;
  line-height: 1.35 !important;
}
html body .site-cart__line-actions {
  gap: 20px !important;
  margin-top: 12px !important;
}
html body .site-cart__line-link {
  text-decoration: none !important;
  text-underline-offset: 0 !important;
  text-decoration-thickness: 0 !important;
}
html body .site-cart__gift {
  border-top: 0 !important;
  padding-top: 4px !important;
}
html body .site-cart__summary {
  border: 1px solid #e8e8e8 !important;
  padding: 24px 22px 20px !important;
}
html body .site-cart__estimate {
  text-decoration: none !important;
  text-underline-offset: 0 !important;
  text-decoration-thickness: 0 !important;
  margin-bottom: 20px !important;
}
html body .site-cart__checkout {
  text-transform: none !important;
  font-weight: 400 !important;
  min-height: 50px !important;
}
html body .site-cart__pay-icons {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  margin: 0 0 12px !important;
}
html body .site-cart__pay-icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 28px !important;
  padding: 4px 8px !important;
  border: 1px solid #ddd !important;
  background: #fff !important;
  font-size: 11px !important;
  letter-spacing: -0.20px !important;
  color: #111 !important;
}
html body .site-cart__acc-copy {
  margin: 0 !important;
  line-height: 1.35 !important;
}


/* —— Pass 20260808ep — PLP tabs: stop fighting clip-path span underline —— */
html body main.site-collections-products a.site-plp-cat,
html body main.site-collections-products .site-plp-cat {
  background-image: none !important;
  background-size: auto !important;
  animation: none !important;
}
html body main.site-collections-products a.site-plp-cat::after,
html body main.site-collections-products a.site-plp-cat::before,
html body main.site-collections-products .site-plp-cat::after,
html body main.site-collections-products .site-plp-cat::before {
  content: none !important;
  display: none !important;
}
html body main.site-collections-products span.site-plp-cat__line,
html body main.site-collections-products a.site-plp-cat > span.site-plp-cat__line,
html body main.site-collections-products a.site-plp-cat.is-active > span.site-plp-cat__line,
html body main.site-collections-products .site-plp-cat.is-active > span:last-child {
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  background: #000 !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  filter: none !important;
  box-shadow: none !important;
  pointer-events: none !important;
  transition: clip-path 0.45s cubic-bezier(0.25, 1, 0.5, 1), -webkit-clip-path 0.45s cubic-bezier(0.25, 1, 0.5, 1) !important;
}
html body main.site-collections-products a.site-plp-cat:not(.is-active) > span.site-plp-cat__line {
  clip-path: inset(0 100% 0 0) !important;
  -webkit-clip-path: inset(0 100% 0 0) !important;
}
html body main.site-collections-products a.site-plp-cat:hover > span.site-plp-cat__line,
html body main.site-collections-products a.site-plp-cat:focus-visible > span.site-plp-cat__line,
html body main.site-collections-products a.site-plp-cat.is-active > span.site-plp-cat__line {
  clip-path: inset(0 0 0 0) !important;
  -webkit-clip-path: inset(0 0 0 0) !important;
  transform: none !important;
}


/* —— Pass 20260808eq — PLP sticky-proof bg underline; hide span —— */
html body main.site-collections-products a.site-plp-cat,
html body main.site-collections-products .site-plp-cat,
html body main.site-collections-products a.site-plp-cat.is-active {
  background-image: linear-gradient(#000, #000) !important;
  background-repeat: no-repeat !important;
  background-position: left bottom !important;
  background-size: 0 1px !important;
  animation: none !important;
  font-weight: 400 !important;
  box-shadow: none !important;
}
html body main.site-collections-products a.site-plp-cat:hover,
html body main.site-collections-products a.site-plp-cat:focus-visible,
html body main.site-collections-products a.site-plp-cat.is-active {
  background-size: 100% 1px !important;
  font-weight: 400 !important;
}
html.plp-strip-active body main.site-collections-products a.site-plp-cat.is-active,
html body.plp-strip-active main.site-collections-products a.site-plp-cat.is-active {
  box-shadow: inset 0 -1px 0 #000 !important;
  background-size: 100% 1px !important;
}
html body main.site-collections-products a.site-plp-cat::after,
html body main.site-collections-products a.site-plp-cat::before,
html body main.site-collections-products .site-plp-cat::after,
html body main.site-collections-products .site-plp-cat::before {
  content: none !important;
  display: none !important;
}
html body main.site-collections-products span.site-plp-cat__line,
html body main.site-collections-products a.site-plp-cat > span.site-plp-cat__line,
html body main.site-collections-products a.site-plp-cat.is-active > span.site-plp-cat__line,
html body main.site-collections-products .site-plp-cat.is-active > span:last-child {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transform: none !important;
}
