
@media (min-width:1200px){
  .Product__InfoWrapper *{ margin-top:4px !important; margin-bottom:4px !important; }
  .Product__InfoWrapper{ font-size:13px !important; line-height:1.35 !important; }
  .Product__InfoWrapper input[type="text"], .Product__InfoWrapper input[type="number"], .Product__InfoWrapper select{ height:34px !important; padding-top:4px !important; padding-bottom:4px !important; }
  .Product__InfoWrapper .fh-subtotal-row{ margin-top:8px !important; padding-top:6px !important; }
  .Product__InfoWrapper .fh-actions-row, .Product__InfoWrapper .ProductForm__BuyButtons{ margin-top:8px !important; margin-bottom:0 !important; }
}



:root {
  --container-max-width: 100%;
  --container-xxs-max-width: 27.5rem;
  --container-xs-max-width: 42.5rem;
  --container-sm-max-width: 61.25rem;
  --container-md-max-width: 71.875rem;
  --container-lg-max-width: 78.75rem;
  --container-xl-max-width: 85rem;
  --container-gutter: 1.25rem;
  --section-vertical-spacing: 2.5rem;
  --section-vertical-spacing-tight: 2.5rem;
  --section-stack-gap: 2.25rem;
  --section-stack-gap-tight: 2.25rem;
  --form-gap: 1.25rem;
  --fieldset-gap: 1rem;
  --form-control-gap: 0.625rem;
  --checkbox-control-gap: 0.75rem;
  --input-padding-block: 0.65rem;
  --input-padding-inline: 0.8rem;
  --checkbox-size: 0.875rem;
  --sticky-area-height: calc(var(--announcement-bar-is-sticky, 0) * var(--announcement-bar-height, 0px) + var(--header-is-sticky, 0) * var(--header-is-visible, 1) * var(--header-height, 0px));
  --transform-logical-flip: 1;
  --transform-origin-start: left;
  --transform-origin-end: right;
  --heading-font-family: "Open Sans", sans-serif;
  --heading-font-weight: 400;
  --heading-font-style: normal;
  --heading-text-transform: uppercase;
  --heading-letter-spacing: 0.18em;
  --text-font-family: "Open Sans", sans-serif;
  --text-font-weight: 400;
  --text-font-style: normal;
  --text-letter-spacing: 0em;
  --button-font: normal 400 var(--text-sm) / 1.65 var(--heading-font-family);
  --button-text-transform: none;
  --button-letter-spacing: 0.18em;
  --text-heading-size-factor: 1;
  --text-h1: max(0.6875rem, clamp(1.375rem, 1.146341463414634rem + 0.975609756097561vw, 2rem));
  --text-h2: max(0.6875rem, clamp(1.25rem, 1.0670731707317074rem + 0.7804878048780488vw, 1.75rem));
  --text-h3: max(0.6875rem, clamp(1.125rem, 1.0335365853658536rem + 0.3902439024390244vw, 1.375rem));
  --text-h4: max(0.6875rem, clamp(1rem, 0.9542682926829268rem + 0.1951219512195122vw, 1.125rem));
  --text-h5: 0.875rem;
  --text-h6: 0.75rem;
  --text-xs: 0.6875rem;
  --text-sm: 0.8125rem;
  --text-base: 0.875rem;
  --text-lg: 1.0625rem;
  --text-xl: 1.125rem;
  --rounded-full: 9999px;
  --button-border-radius: 0rem;
  --input-border-radius: 0rem;
  --shadow-sm: 0 2px 8px rgb(0 0 0 / 0.05);
  --shadow: 0 5px 15px rgb(0 0 0 / 0.05);
  --shadow-md: 0 5px 30px rgb(0 0 0 / 0.05);
  --shadow-block: 0px 2px 4px rgb(var(--text-primary) / 0.05);
  --page-overlay: 0 0 0 / 0.4;
  --page-background: 250 248 246;
  --on-sale-text: 227 44 43;
  --on-sale-badge-background: 227 44 43;
  --on-sale-badge-text: 255 255 255;
  --sold-out-badge-background: 250 248 246;
  --sold-out-badge-text: 0 0 0 / 0.65;
  --custom-badge-background: 28 28 28;
  --custom-badge-text: 255 255 255;
  --star-color: 28 28 28;
  --success-background: 199 218 191;
  --success-text: 48 122 7;
  --warning-background: 253 230 178;
  --warning-text: 237 138 0;
  --error-background: 242 194 194;
  --error-text: 203 43 43;
  --checkmark-svg-url: url(/assets/checkmark.svg);
  --cursor-zoom-in-svg-url: url(/assets/cursor-zoom-in.svg);
}

@media screen and (min-width: 700px) {
  :root {
    --text-xs: 0.75rem;
    --text-sm: 0.8125rem;
    --text-base: 0.875rem;
    --text-lg: 1.0625rem;
    --text-xl: 1.25rem;
    --container-gutter: 2rem;
  }
}

@media screen and (min-width: 1000px) {
  :root {
    --container-gutter: 3rem;
    --section-vertical-spacing: 4rem;
    --section-vertical-spacing-tight: 4rem;
    --section-stack-gap: 3rem;
    --section-stack-gap-tight: 3rem;
  }
}

/* Color schemes */
.color-scheme--scheme-1 {
  --accent: 0 58 67;
  --text-color: 28 28 28;
  --background: 250 248 246 / 1;
  --background-without-opacity: 250 248 246;
  --background-gradient: ;
  --border-color: 217 215 213;
  --button-background: 0 58 67;
  --button-text-color: 255 255 255;
  --circle-button-background: 255 255 255;
  --circle-button-text-color: 28 28 28;
}

.color-scheme--scheme-2 {
  --accent: 0 58 67;
  --text-color: 28 28 28;
  --background: 250 248 246 / 1;
  --background-without-opacity: 250 248 246;
  --background-gradient: ;
  --border-color: 217 215 213;
  --button-background: 0 58 67;
  --button-text-color: 255 255 255;
  --circle-button-background: 255 255 255;
  --circle-button-text-color: 28 28 28;
}

.color-scheme--scheme-3 {
  --accent: 0 58 67;
  --text-color: 255 255 255;
  --background: 0 58 67 / 1;
  --background-without-opacity: 0 58 67;
  --background-gradient: ;
  --border-color: 38 88 95;
  --button-background: 0 58 67;
  --button-text-color: 255 255 255;
  --circle-button-background: 0 58 67;
  --circle-button-text-color: 255 255 255;
}

.color-scheme--scheme-4 {
  --accent: 0 58 67;
  --text-color: 255 255 255;
  --background: 0 0 0 / 0;
  --background-without-opacity: 0 0 0;
  --background-gradient: ;
  --border-color: 255 255 255;
  --button-background: 0 58 67;
  --button-text-color: 28 28 28;
  --circle-button-background: 255 255 255;
  --circle-button-text-color: 28 28 28;
}

.color-scheme--scheme-a759e206-2ba9-4997-88ed-91ecd98e39b3 {
  --accent: 0 58 67;
  --text-color: 28 28 28;
  --background: 236 234 226 / 1;
  --background-without-opacity: 236 234 226;
  --background-gradient: ;
  --border-color: 205 203 196;
  --button-background: 0 58 67;
  --button-text-color: 255 255 255;
  --circle-button-background: 255 255 255;
  --circle-button-text-color: 28 28 28;
}

.color-scheme--dialog {
  --accent: 0 58 67;
  --text-color: 28 28 28;
  --background: rgba(250 248 246);
  --background-without-opacity: 250 248 246;
  --background-gradient: ;
  --border-color: 217 215 213;
  --button-background: 0 58 67;
  --button-text-color: 255 255 255;
  --circle-button-background: 255 255 255;
  --circle-button-text-color: 28 28 28;
}

/* FH Section heading overrides - match FabbHome uppercase */
.fh-bestsellers__eyebrow,
.fh-compare__heading,
.fh-cat__heading,
.fh-eb__h,
.fh-sbs__heading {
  text-transform: var(--heading-text-transform, uppercase);
  letter-spacing: var(--heading-letter-spacing, 0.18em);
  font-family: var(--heading-font-family);
  font-weight: var(--heading-font-weight, 400);
}

/* FH Global button overrides (matching fabbwallpaper.com) */
.button:hover, .btn:hover, [class*="button--"]:hover,
.fh-btn:hover, .fh-bs-viewall-btn:hover {
  background-color: #A68945 !important;
  border-color: #A68945 !important;
}
.button--outline:not(.button--subdued) {
  background-color: transparent !important;
  color: #003A43 !important;
  border-color: #003A43 !important;
}
.button--outline:not(.button--subdued):hover {
  background-color: #003A43 !important;
  color: #fff !important;
}
.fabbhome-payment-button__button--unbranded {
  background-image: none !important;
  background-color: #003A43 !important;
  border-color: #003A43 !important;
  color: #fff !important;
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease !important;
}
.fabbhome-payment-button__button--unbranded:hover {
  background-color: #A68945 !important;
  border-color: #A68945 !important;
}

/* Color modal - hidden by default, shown via JS */
.fh-color-modal { display: none; }
.fh-color-modal.is-visible { display: flex; }



  :root { --announcement-bar-is-sticky: 0; }
  #fabbhome-section-announcement-bar { --announcement-bar-font-size: 0.625rem; }
  @media screen and (min-width: 999px) {
    #fabbhome-section-announcement-bar { --announcement-bar-font-size: 0.6875rem; }
  }



[data-fh-topbar]{
  background:#e9e4de !important;
  color:#231F20 !important;
  border-bottom:0 !important;
  font-size: 0.75rem;
  padding: 6px 0;
}
[data-fh-topbar] .fh-topbar__inner.container{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  width:100% !important;
  margin:0 auto !important;
  padding-left: var(--container-gutter, 24px) !important;
  padding-right: var(--container-gutter, 24px) !important;
}
[data-fh-topbar] .fh-topbar__left{ display:none !important; }
[data-fh-topbar] .fh-topbar__right{
  margin-left:auto !important;
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
}
[data-fh-topbar] a,
[data-fh-topbar] button.fh-topbar__link{
  color:inherit !important;
  text-decoration:none !important;
  opacity:.95 !important;
  font-size: 0.75rem;
}
[data-fh-topbar] a:hover{ opacity:1 !important; text-decoration:underline !important; }

/* ═══ FH LOCALE MODAL ═══ */
.fh-locale-modal[hidden]{ display:none !important; }
html.fh-locale-modal-open,
html.fh-locale-modal-open body{ overflow:hidden !important; }

.fh-locale-modal{
  position:fixed !important;
  inset:0 !important;
  z-index:999999 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}

.fh-locale-modal__backdrop{
  position:absolute !important;
  inset:0 !important;
  background: rgba(0,0,0,0.18) !important;
  backdrop-filter: saturate(1.08) !important;
  -webkit-backdrop-filter: saturate(1.08) !important;
}

.fh-locale-modal__panel{
  position:relative !important;
  width:min(560px, 86vw) !important;
  aspect-ratio:1 / 1 !important;
  height:auto !important;
  max-height:86vh !important;
  background:#003A43 !important;
  color:#fff !important;
  border-radius:0 !important;
  box-shadow:none !important;
  padding:48px 56px 38px !important;
  overflow:hidden !important;
  text-align:center !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
}

.fh-locale-modal__close{
  position:absolute !important;
  top:14px !important;
  right:14px !important;
  width:40px !important;
  height:40px !important;
  border:0 !important;
  background:transparent !important;
  color:#fff !important;
  font-size:30px !important;
  line-height:40px !important;
  cursor:pointer !important;
  opacity:.95 !important;
}
.fh-locale-modal__close:hover{ opacity:1 !important; }

.fh-locale-modal__title{
  font-family:"Saintecolombe","Sainte Colombe",var(--heading-font-family,serif) !important;
  font-weight:400 !important;
  font-size:34px !important;
  line-height:1.05 !important;
  margin:0 0 12px !important;
  letter-spacing:.01em !important;
  white-space:nowrap !important;
}

.fh-locale-modal__desc{
  font-size:13px !important;
  line-height:1.6 !important;
  opacity:.9 !important;
  max-width:520px !important;
  margin:18px auto 48px !important;
}

.fh-locale-form__label{
  display:block !important;
  margin:0 0 8px !important;
  font-size:12px !important;
  letter-spacing:.22em !important;
  text-transform:uppercase !important;
  opacity:.9 !important;
  text-align:center !important;
}

/* ═══ FH CUSTOM DROPDOWN ═══ */
.fh-dd{ position:relative !important; width:300px !important; max-width:100% !important; margin:0 auto 22px !important; }
.fh-dd-trigger{
  width:100% !important; height:44px !important; display:flex !important; align-items:center !important;
  gap:14px !important; padding:0 14px !important; background:#fff !important; border:0 !important;
  border-bottom:1px solid rgba(0,0,0,.18) !important; border-radius:0 !important; cursor:pointer !important;
}
.fh-dd-trigger__text{ flex:1 1 auto !important; color:#111 !important; font-size:14px !important; text-align:left !important; white-space:nowrap !important; }
.fh-dd-trigger__caret{
  width:8px !important; height:8px !important; transform:rotate(45deg) !important;
  border-right:2px solid rgba(0,0,0,.55) !important; border-bottom:2px solid rgba(0,0,0,.55) !important; margin-left:auto !important;
}

.fh-locale-flag, .fh-locale-flag .country-flag{
  width:26px !important; height:18px !important; display:block !important; border-radius:2px !important; object-fit:cover !important;
}

.fh-dd-menu{
  position:absolute !important; left:0 !important; right:0 !important; top:100% !important;
  background:#fff !important; border:0 !important; border-radius:0 !important;
  box-shadow:0 10px 30px rgba(0,0,0,.18) !important; z-index:9999999 !important;
  max-height:280px !important; overflow-y:auto !important; display:none !important;
  scrollbar-width:none !important;
}
.fh-dd-menu::-webkit-scrollbar{ display:none !important; }
.fh-dd.is-open .fh-dd-menu{ display:block !important; }

.fh-dd-item{
  width:100% !important; display:flex !important; align-items:center !important; gap:14px !important;
  padding:14px !important; background:#fff !important; border:0 !important;
  border-bottom:1px solid rgba(0,0,0,.18) !important; cursor:pointer !important; text-align:left !important;
}
.fh-dd-item:hover{ background:#FAF8F6 !important; }
.fh-dd-item[aria-selected="true"]{ background:#ECE7E2 !important; }
.fh-dd-item__text{ color:#111 !important; font-size:14px !important; }

.fh-locale-form__confirm{
  width:auto !important; padding-left:36px !important; padding-right:36px !important;
  height:46px !important; margin:6px auto 18px !important; border:0 !important;
  background:#B08B4A !important; color:#fff !important; letter-spacing:.22em !important;
  text-transform:uppercase !important; font-size:12px !important; cursor:pointer !important;
  display:flex !important; align-items:center !important; justify-content:center !important;
}
.fh-locale-form__confirm:hover{ filter:brightness(1.05) !important; }

.fh-locale-modal__altlink{
  display:inline-block !important; margin:0 auto 6px !important; font-size:12px !important;
  letter-spacing:.16em !important; text-transform:uppercase !important; color:#fff !important;
  background:transparent !important; border:0 !important; padding:0 !important;
  text-decoration:underline !important; text-underline-offset:6px !important; cursor:pointer !important;
}
.fh-locale-modal__altlink:hover{ color:#B08B4A !important; }

.fh-locale-modal__note{
  margin:28px auto 0 !important; font-size:12px !important; opacity:.9 !important;
  max-width:560px !important; line-height:1.55 !important; text-align:center !important;
}

/* Mobile locale modal */
@media (max-width: 999px){
  .fh-locale-modal__panel{
    width:100% !important; max-width:520px !important; aspect-ratio:auto !important;
    max-height:96vh !important; padding:28px 18px 22px !important;
  }
  .fh-locale-modal__title{ font-size:18px !important; white-space:normal !important; }
  .fh-locale-modal__desc{ font-size:12px !important; margin-bottom:28px !important; }
  .fh-dd{ width:min(240px, 92%) !important; min-width:240px !important; }
  .fh-locale-form__confirm{ width:92% !important; max-width:360px !important; height:35px !important; }
}



  :root { --header-is-sticky: 1; }
  #fabbhome-section-header {
    --header-grid: "primary-nav logo secondary-nav" / minmax(0, 1fr) auto minmax(0, 1fr);
    --header-padding-block: 1rem;
    --header-transparent-header-text-color: 255 255 255;
    --header-separation-border-color: 28 28 28 / 0.15;
    position: relative;
    z-index: 4;
  }
  @media screen and (min-width: 700px) {
    #fabbhome-section-header { --header-padding-block: 1.2rem; }
  }
  @media screen and (min-width: 1000px) {
    #fabbhome-section-header {
      --header-grid: "logo primary-nav secondary-nav" / minmax(max-content, 1fr) auto minmax(max-content, 1fr);
    }
  }
  #fabbhome-section-header {
    position: sticky;
    top: 0;
  }
  .fabbhome-section--announcement-bar ~ #fabbhome-section-header {
    top: calc(var(--announcement-bar-is-sticky, 0) * var(--announcement-bar-height, 0px));
  }
  #fabbhome-section-header { --header-logo-width: 110px; }
  @media screen and (min-width: 700px) {
    #fabbhome-section-header { --header-logo-width: 145px; }
  }

  /* Kill theme.css .mega-menu (we don't use that class anymore) */
  .mega-menu { display: none !important; }

  /* Sidebar, cart-drawer, header-search are managed by theme.js custom elements */
  /* No CSS overrides needed - theme.js handles open/close via Shadow DOM */

  /* ── FH Nav Dropdowns ── */
  .fh-nav-dropdown { position: relative; }
  .fh-nav-dropdown__trigger { cursor: pointer; text-decoration: none; }

  /* Hidden by default */
  .fh-nav-dropdown__panel {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 100;
  }

  /* Show via JS-managed .is-open class (hover with delay) */
  .fh-nav-dropdown.is-open > .fh-nav-dropdown__panel {
    display: block;
  }

  /* Let mega menu escape the nav dropdown positioning */
  .fh-nav-dropdown:has(.fh-megamenu) {
    position: static;
  }

  /* ── Mega menu panel ── */
  .fh-megamenu {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    width: 100%;
    background: rgb(var(--background-without-opacity, 250 248 246));
    /* border-top removed: header box-shadow handles the line */
    border-bottom: 1px solid rgb(var(--border-color, 217 215 213));
    box-shadow: 0 5px 20px rgb(0 0 0 / 0.06);
    padding: 2rem 0;
    z-index: 50;
  }
  .fh-mega {
    max-width: var(--container-xl-max-width, 85rem);
    margin: 0 auto;
    padding: 0 var(--container-gutter, 3rem);
  }
  .fh-mega__columns { display: flex; gap: 2.5rem; }
  .fh-mega__group { min-width: 140px; }
  .fh-mega__heading {
    display: block;
    text-transform: uppercase;
    letter-spacing: 0.18em;
    font-size: var(--text-sm);
    font-family: var(--heading-font-family);
    font-weight: var(--heading-font-weight, 400);
    text-decoration: none;
    color: inherit;
    margin-bottom: 0.75rem;
  }
  .fh-mega__heading:hover { text-decoration: underline; }
  .fh-mega__items { list-style: none; padding: 0; margin: 0; }
  .fh-mega__items li { padding: 0.3rem 0; }
  .fh-mega__item-link {
    font-size: var(--text-sm);
    text-decoration: none;
    color: inherit;
    opacity: 0.7;
    transition: opacity 0.15s;
  }
  .fh-mega__item-link:hover { opacity: 1; text-decoration: underline; }

  /* ── Simple dropdown panel ── */
  .fh-simple-dropdown {
    min-width: 200px;
    background: rgb(var(--background-without-opacity, 250 248 246));
    border: 1px solid rgb(var(--border-color, 217 215 213));
    box-shadow: 0 5px 30px rgb(0 0 0 / 0.05);
    padding: 1rem 1.25rem;
  }
  .fh-simple-dropdown li { padding: 0.35rem 0; }
  .fh-simple-dropdown a {
    text-decoration: none; color: inherit; opacity: 0.75;
    font-size: var(--text-sm); transition: opacity 0.15s;
  }
  .fh-simple-dropdown a:hover { opacity: 1; }

  /* Mega menu 2-column grid for large groups */
  .fh-mega__items-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0 1.5rem;
  }
  .fh-mega__all-link {
    display: block;
    margin-top: 0.75rem;
    font-size: var(--text-sm);
    text-decoration: underline;
    text-underline-offset: 4px;
  }
  .fh-mega__group--room .fh-mega__items {
    columns: 1;
  }
