:root {
  --shell-burgundy: #650019;
  --shell-burgundy-deep: #39000e;
  --shell-gold: #d7aa52;
  --shell-bg: #fdfbf9;
  --shell-surface: #ffffff;
  --shell-text: #281b1d;
  --shell-muted: #776a6d;
  --shell-line: #eadfdb;
  --shell-radius: 14px;
  --shell-content: 1320px;
}

* {
  box-sizing: border-box;
}

html {
  width: 100%;
  max-width: 100%;
  scroll-behavior: smooth;
}

body {
  width: 100%;
  min-width: 0;
  max-width: 100%;
  background: var(--shell-bg);
}

[hidden] {
  display: none !important;
}

.announcement,
body.commerce-route .announcement,
body.account-route .announcement,
body.finder-route .announcement {
  position: relative;
  z-index: 61;
  min-height: 32px;
  padding: 6px 16px;
  display: flex !important;
  align-items: center;
  justify-content: center;
  color: #fff5dd;
  background: var(--shell-burgundy-deep);
  font-size: 11px;
  line-height: 1.5;
  text-align: center;
}

.site-header,
.site-header.compact {
  position: sticky;
  inset-block-start: 0;
  z-index: 60;
  min-height: 0;
  padding: 0;
  border: 0;
  color: #fff8ef;
  background: linear-gradient(115deg, #3d000f, #69001c 52%, #3d000f);
  box-shadow: 0 7px 24px rgba(58, 0, 16, .16);
}

.header-main,
.compact .header-main {
  width: min(calc(100% - 40px), var(--shell-content));
  height: 80px;
  min-height: 80px;
  margin: 0 auto;
  padding: 0;
  display: grid;
  grid-template-columns: minmax(390px, 1fr) 190px minmax(190px, 1fr);
  grid-template-areas: "commerce brand preferences";
  align-items: center;
  gap: 24px;
  direction: ltr;
}

.header-commerce-zone {
  grid-area: commerce;
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 18px;
  direction: ltr;
}

.header-commerce-actions {
  display: flex;
  align-items: center;
  gap: 7px;
  flex: 0 0 auto;
}

.mobile-header-search {
  display: none;
}

.header-commerce-actions .mobile-header-search-trigger {
  display: none;
}

.header-commerce-actions > button,
.header-preference-actions > button {
  position: relative;
  width: 40px;
  height: 40px;
  min-width: 40px;
  padding: 0;
  display: grid;
  place-items: center;
  border: 1px solid transparent;
  border-radius: 10px;
  color: #fff8ef;
  background: transparent;
  cursor: pointer;
}

.header-commerce-actions > button:hover,
.header-preference-actions > button:hover {
  border-color: rgba(218, 177, 91, .48);
  background: rgba(255, 255, 255, .08);
}

.header-commerce-actions svg {
  width: 22px;
  height: 22px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.7;
}

.header-commerce-actions .action-count {
  position: absolute;
  inset-block-start: -3px;
  inset-inline-end: -3px;
  min-width: 18px;
  height: 18px;
  padding: 0 4px;
  display: grid;
  place-items: center;
  border: 2px solid var(--shell-burgundy);
  border-radius: 999px;
  color: #5a0017;
  background: #efbf62;
  font-size: 9px;
  font-weight: 800;
}

.header-main .header-search,
.compact .header-main .header-search {
  position: static;
  width: min(340px, 100%);
  height: 44px;
  min-width: 0;
  padding: 0 17px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 11px;
  border: 1px solid rgba(231, 199, 132, .48);
  border-radius: 999px;
  color: #f0c86d;
  background: rgba(255, 255, 255, .045);
  direction: rtl;
}

.header-main .header-search:hover {
  border-color: var(--shell-gold);
  background: rgba(255, 255, 255, .09);
}

.header-main .header-search svg {
  width: 20px;
  height: 20px;
  flex: 0 0 20px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
}

.header-main .header-search span {
  min-width: 0;
  display: block;
  overflow: hidden;
  color: #eadbd6;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.header-main .header-search b {
  font-size: 11px;
  font-weight: 400;
}

.header-main > .brand,
.compact .header-main > .brand {
  position: static;
  grid-area: brand;
  width: 175px;
  min-width: 0;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  transform: none;
}

.site-header .brand-logo-link img {
  width: 158px;
  height: 56px;
  object-fit: contain;
}

.header-preference-actions {
  grid-area: preferences;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  direction: rtl;
}

.header-preference-actions .lang-button {
  width: auto;
  min-width: 92px;
  padding-inline: 13px;
  display: flex;
  gap: 7px;
  font-size: 11px;
  font-weight: 700;
}

.header-preference-actions .theme-toggle {
  border-color: rgba(218, 177, 91, .38);
  border-radius: 50%;
  color: #f2c76a;
}

.header-preference-actions .theme-toggle span {
  grid-area: 1 / 1;
}

.header-preference-actions .theme-toggle .moon,
body.dark .header-preference-actions .theme-toggle .sun {
  display: none;
}

body.dark .header-preference-actions .theme-toggle .moon {
  display: block;
}

.category-nav {
  width: 100%;
  height: 52px;
  min-height: 52px;
  padding: 0 max(24px, calc((100vw - var(--shell-content)) / 2));
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(12px, 1.8vw, 28px);
  border-block-start: 1px solid rgba(255, 255, 255, .16);
  background: rgba(40, 0, 12, .22);
  direction: rtl;
  overflow: visible;
}

.category-nav > a,
.brands-nav > button {
  height: 52px;
  min-width: 0;
  padding: 0 3px;
  display: flex;
  align-items: center;
  gap: 6px;
  border: 0;
  color: #fff8ef;
  background: transparent;
  font-size: 12px;
  font-weight: 600;
  white-space: nowrap;
}

.category-nav .nav-icon {
  min-width: 15px;
  color: #e0b45b;
  font-size: 15px;
}

.category-nav .smart-scent-nav {
  height: 36px !important;
  margin-inline-start: auto;
  padding: 0 14px !important;
  border: 1px solid rgba(224, 180, 91, .8) !important;
  border-radius: 999px;
  color: #f0ca72;
}

.mobile-menu-button {
  display: none;
}

#storefront-main {
  width: 100%;
  max-width: none;
  min-height: 60vh;
  margin: 0;
  padding: 0;
}

body.commerce-route #storefront-main > *:not(#commerce-page),
body.account-route #storefront-main > *:not(#account-page),
body.finder-route #storefront-main > *:not(#fragrance-finder-page),
body.catalog-route #storefront-main > *:not(#catalog-page),
body.notes-route #storefront-main > *:not(#notes-library-page),
body.benefit-route #storefront-main > *:not(#benefit-detail-page) {
  display: none !important;
}

.commerce-shell,
.account-shell,
.finder-shell,
.catalog-shell,
.notes-page-shell,
.benefit-detail-shell {
  width: min(100%, var(--shell-content));
  max-width: var(--shell-content);
  margin-inline: auto;
}

.commerce-page,
.account-route-page,
.fragrance-finder-page {
  padding-inline: clamp(16px, 2.2vw, 30px);
}

.commerce-page {
  padding-block-start: 30px;
}

.checkout-layout,
.checkout-layout.three,
.account-layout,
.finder-layout {
  gap: 18px;
}

.checkout-layout.three {
  grid-template-columns: minmax(0, 1fr) 330px 280px;
}

.checkout-main-card,
.checkout-summary-card,
.checkout-why,
.tracking-card,
.account-sidebar,
.account-content,
.account-rail > section,
.finder-main,
.finder-summary {
  border-radius: var(--shell-radius);
}

.checkout-summary-card {
  top: 178px;
}

.origo-home,
.catalog-page,
.commerce-page,
.account-route-page,
.fragrance-finder-page {
  isolation: isolate;
}

.account-mobile-back {
  display: none;
}

body.dark {
  --shell-bg: #100a0c;
  --shell-surface: #1c1316;
  --shell-text: #f4eaed;
  --shell-muted: #baaeb1;
  --shell-line: #3e2c32;
}

@media (max-width: 1180px) and (min-width: 901px) {
  .header-main,
  .compact .header-main {
    grid-template-columns: minmax(330px, 1fr) 160px minmax(150px, 1fr);
    gap: 14px;
  }

  .header-commerce-zone {
    gap: 10px;
  }

  .header-main .header-search {
    width: min(260px, 100%);
  }

  .category-nav {
    gap: 10px;
  }

  .category-nav > a,
  .brands-nav > button {
    font-size: 10px;
  }

  .checkout-layout.three {
    grid-template-columns: minmax(0, 1fr) 320px;
  }

  .checkout-layout.three .checkout-why {
    grid-column: 1 / -1;
  }
}

@media (max-width: 900px) {
  .announcement,
  body.commerce-route .announcement,
  body.account-route .announcement,
  body.finder-route .announcement {
    display: none !important;
  }

  .site-header,
  .site-header.compact {
    min-height: 68px;
  }

  .header-main,
  .compact .header-main {
    width: 100%;
    height: 68px;
    min-height: 68px;
    padding: 0 13px;
    grid-template-columns: 88px 1fr 48px;
    grid-template-areas: "commerce brand menu";
    gap: 0;
  }

  .mobile-menu-button {
    position: static;
    grid-area: menu;
    width: 42px;
    height: 42px;
    margin-inline-start: auto;
    display: flex;
  }

  .header-commerce-zone {
    grid-area: commerce;
    gap: 0;
  }

  .header-commerce-actions {
    gap: 3px;
  }

  .header-commerce-actions > button {
    width: 40px;
    min-width: 40px;
  }

  .header-commerce-actions .account-button {
    display: none;
  }

  .header-main .header-search,
  .header-preference-actions,
  .category-nav {
    display: none !important;
  }

  .header-main > .brand,
  .compact .header-main > .brand {
    grid-area: brand;
    width: 128px;
  }

  .site-header .brand-logo-link img {
    width: 122px;
    height: 47px;
  }

  .commerce-page,
  .account-route-page,
  .fragrance-finder-page {
    padding-inline: 10px;
  }

  .commerce-page {
    padding-block-start: 18px;
  }

  .checkout-layout,
  .checkout-layout.three {
    width: 100%;
    grid-template-columns: minmax(0, 1fr);
  }

  .checkout-main-card,
  .checkout-summary-card,
  .checkout-why {
    width: 100%;
    min-width: 0;
  }

  .checkout-summary-card {
    position: static;
    order: 2;
  }

  .checkout-why,
  .checkout-layout.three .checkout-why {
    grid-column: auto;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    order: 3;
  }

  .checkout-why h2 {
    grid-column: 1 / -1;
  }

  .commerce-shell,
  .account-shell,
  .finder-shell,
  .catalog-shell,
  .notes-page-shell,
  .benefit-detail-shell {
    width: 100%;
  }

  #account-root[data-view]:not([data-view="dashboard"]) .account-mobile-overview {
    display: none;
  }

  #account-root[data-view]:not([data-view="dashboard"]) .account-content {
    display: block;
  }

  #account-root[data-view]:not([data-view="dashboard"]) .account-mobile-menu {
    display: none;
  }

  #account-root[data-view]:not([data-view="dashboard"]) .account-layout {
    display: block;
  }

  .account-mobile-back {
    width: 100%;
    min-height: 46px;
    margin: 0 0 12px;
    padding: 0 13px;
    display: flex;
    align-items: center;
    gap: 9px;
    border: 1px solid var(--account-line);
    border-radius: 10px;
    color: var(--account-burgundy);
    background: var(--account-surface);
    font: inherit;
    font-weight: 700;
  }

  .account-mobile-back svg {
    width: 20px;
    height: 20px;
  }
}

@media (max-width: 390px) {
  .header-main,
  .compact .header-main {
    grid-template-columns: 80px 1fr 44px;
    padding-inline: 8px;
  }

  .header-commerce-actions > button {
    width: 37px;
    min-width: 37px;
  }

  .site-header .brand-logo-link img {
    width: 112px;
  }
}

/* Keep the homepage shell proportional at wide viewports and browser zoom-out. */
@media (min-width: 1081px) {
  .header-main,
  .compact .header-main {
    width: calc(100% - clamp(40px, 4vw, 76px));
    max-width: none;
  }

  .home-benefits,
  .home-gender-section,
  .home-promo-strip,
  .home-best-sellers,
  .home-categories,
  .home-ai-banner,
  .footer-trust-bar,
  footer.origo-footer {
    width: calc(100% - clamp(40px, 4vw, 76px));
    max-width: none;
  }

  .commerce-shell,
  .account-shell,
  .finder-shell,
  .catalog-shell,
  .notes-page-shell,
  .benefit-detail-shell {
    width: 100%;
    max-width: none;
  }

  .finder-progress,
  .finder-layout,
  .pdp-breadcrumb,
  .pdp-hero,
  .pdp-description,
  .pdp-performance,
  .pdp-community,
  .pdp-recommendations {
    width: 100%;
    max-width: none;
  }

  footer.origo-footer {
    width: calc(100% - clamp(40px, 4vw, 76px)) !important;
    max-width: none !important;
  }

  .product-admin-overlay .admin-panel,
  .notes-admin-panel {
    width: calc(100% - clamp(32px, 3vw, 56px));
    max-width: none;
  }
}

.commerce-shell > *,
.account-shell > *,
.finder-shell > *,
.catalog-shell > *,
.notes-page-shell > *,
.benefit-detail-shell > *,
.checkout-layout > *,
.account-layout > *,
.finder-layout > *,
.pdp-hero > * {
  min-width: 0;
}

fieldset {
  min-inline-size: 0;
}

/* Switch to the compact header before its desktop controls start colliding. */
@media (max-width: 1080px) {
  .announcement,
  body.commerce-route .announcement,
  body.account-route .announcement,
  body.finder-route .announcement {
    display: none !important;
  }

  .site-header,
  .site-header.compact {
    min-height: 68px;
  }

  .header-main,
  .compact .header-main {
    width: 100%;
    height: 68px;
    min-height: 68px;
    padding: 0 13px;
    grid-template-columns: 88px minmax(0, 1fr) 48px;
    grid-template-areas: "commerce brand menu";
    gap: 0;
  }

  .mobile-menu-button {
    position: static;
    grid-area: menu;
    width: 42px;
    height: 42px;
    margin-inline-start: auto;
    display: flex;
  }

  .header-commerce-zone {
    grid-area: commerce;
    gap: 0;
  }

  .header-commerce-actions {
    gap: 3px;
  }

  .header-commerce-actions > button {
    width: 40px;
    min-width: 40px;
  }

  .header-commerce-actions .account-button,
  .header-main .header-search,
  .header-preference-actions,
  .category-nav {
    display: none !important;
  }

  .header-main > .brand,
  .compact .header-main > .brand {
    grid-area: brand;
    width: 128px;
  }

  .site-header .brand-logo-link img {
    width: 122px;
    height: 47px;
  }
}

.store-bottom-nav{display:none}
@keyframes origoAnnouncementMarquee{to{transform:translateX(-100%)}}
@keyframes origoAnnouncementMarqueeArabic{from{transform:translateX(-100%)}to{transform:translateX(100%)}}

@media(max-width:640px){
  body{padding-bottom:70px}
  body.account-route{padding-bottom:0}
  .announcement,body.commerce-route .announcement,body.account-route .announcement,body.finder-route .announcement{width:100%;min-height:27px;height:27px;padding:0;display:flex!important;justify-content:flex-start;overflow:hidden;direction:ltr;white-space:nowrap;background:linear-gradient(90deg,#4b0013,#780020,#4b0013)}
  .announcement>span{min-width:max-content;padding-inline:36px;display:flex;align-items:center;color:#fff3d5;font-size:9px;animation:origoAnnouncementMarquee 22s linear infinite}
  html[dir="rtl"] .announcement{direction:rtl}
  html[dir="rtl"] .announcement>span{direction:rtl;text-align:right;animation-name:origoAnnouncementMarqueeArabic}
  .site-header,.site-header.compact{min-height:62px;color:var(--shell-burgundy);background:var(--shell-surface);border-bottom:1px solid var(--shell-line);box-shadow:0 5px 18px #3d00100f}
  .header-main,.compact .header-main{width:100%;height:62px;min-height:62px;padding:0 8px;display:grid;grid-template-columns:38px minmax(74px,1fr) 72px 112px;grid-template-areas:"menu brand preferences commerce";gap:3px}
  .mobile-menu-button{grid-area:menu;width:36px;height:36px;margin:0;padding:0;display:grid!important;place-content:center;gap:4px;border:1px solid #76002033;border-radius:9px;color:var(--shell-burgundy);background:#fff}
  .mobile-menu-button span{width:18px;height:2px;display:block;border-radius:2px;background:currentColor}
  .header-main>.brand,.compact .header-main>.brand{grid-area:brand;width:min(112px,100%);margin:auto}
  .site-header .brand-logo-link img{width:104px;height:43px}
  .header-preference-actions{grid-area:preferences;display:flex!important;justify-content:center;gap:2px;direction:ltr}
  .header-preference-actions>button{color:var(--shell-burgundy);background:#fff}
  .header-preference-actions .lang-button{width:62px;min-width:62px;height:34px;padding:0 6px;overflow:visible;justify-content:center;border:0;font-size:10px;white-space:nowrap}
  .header-preference-actions .theme-toggle{width:32px;min-width:32px;height:32px;border-color:#76002033;color:var(--shell-burgundy)}
  .header-commerce-zone{grid-area:commerce;min-width:0;display:block}
  .header-commerce-actions{display:grid;grid-template-columns:repeat(4,27px);justify-content:end;gap:1px}
  .header-commerce-actions>button{width:27px;min-width:27px;height:36px;display:grid!important;color:var(--shell-burgundy)}
  .header-commerce-actions .mobile-header-search-trigger{display:grid!important}
  .header-commerce-actions svg{width:20px;height:20px}
  .header-commerce-actions .action-count{top:-1px;right:-2px;left:auto;min-width:16px;height:16px;padding:0 3px;border:2px solid #fff;font-size:7px}
  .header-main .header-search,.category-nav{display:none!important}
  .mobile-header-search{position:relative;width:calc(100% - 20px);height:46px;margin:0 10px 10px;padding:0 12px;display:flex;align-items:center;gap:9px;border:1px solid #e5e0dc;border-radius:999px;background:#fff;box-shadow:0 3px 12px #3d001017;direction:ltr}
  .mobile-header-search[hidden]{display:none}
  .mobile-header-search input{min-width:0;flex:1;border:0;outline:0;color:var(--shell-ink);background:transparent;font:600 11px/1.4 Alexandria,sans-serif;text-align:center;direction:rtl}
  .mobile-header-search input::placeholder{color:#a59b99;opacity:1}
  .mobile-header-search button{width:26px;height:36px;padding:0;display:grid;place-items:center;border:0;color:#171214;background:transparent;cursor:pointer}
  .mobile-header-search svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
  .mobile-header-search-filter svg{width:22px;height:22px}
  .mobile-smart-search-results{position:absolute;z-index:70;top:calc(100% + 7px);right:0;left:0;max-height:min(58vh,390px);padding:7px;overflow:auto;border:1px solid #e8ded9;border-radius:16px;color:var(--shell-ink);background:#fff;box-shadow:0 18px 44px #3d001026;direction:rtl}
  .mobile-smart-search-results[hidden]{display:none}
  .mobile-smart-search-group+ .mobile-smart-search-group{margin-top:5px;padding-top:5px;border-top:1px solid #eee5e1}
  .mobile-smart-search-group>small{display:block;padding:5px 9px;color:var(--shell-gold-dark);font-size:9px;font-weight:800}
  .mobile-smart-search-results button{width:100%;height:auto;min-height:45px;padding:6px 8px;display:flex;align-items:center;justify-content:flex-start;gap:9px;border-radius:9px;color:var(--shell-ink);text-align:start;direction:rtl}
  .mobile-smart-search-results button:is(:hover,:focus,.active){outline:0;background:#fff4ef}
  .mobile-smart-search-results img{width:38px;height:38px;flex:0 0 38px;border-radius:8px;object-fit:cover;background:#faf5f2}
  .mobile-smart-search-results span{min-width:0;display:grid;gap:2px}
  .mobile-smart-search-results b{overflow:hidden;font-size:11px;text-overflow:ellipsis;white-space:nowrap}
  .mobile-smart-search-results span small{color:#8a7d79;font-size:9px}
  .mobile-smart-search-empty{padding:13px;text-align:center;color:#8a7d79;font-size:10px}
  .site-header:has(.mobile-header-search:not([hidden])){padding-bottom:1px}
  .origo-home-hero{overflow:hidden}
  .home-hero-copy{right:auto!important;left:50%!important;width:calc(100% - 24px)!important;max-width:410px;padding-inline:10px;text-align:center;transform:translateX(-50%)!important}
  .home-hero-copy h1{max-width:100%;margin-inline:auto;font-size:clamp(26px,8vw,34px)!important;line-height:1.25;white-space:normal;overflow-wrap:anywhere}
  .home-hero-copy p{max-width:100%;font-size:12px!important;line-height:1.7;white-space:normal}
  .store-bottom-nav{position:fixed;z-index:58;right:0;bottom:0;left:0;height:66px;padding:5px 8px max(5px,env(safe-area-inset-bottom));display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--shell-line);color:var(--shell-muted);background:color-mix(in srgb,var(--shell-surface) 94%,transparent);box-shadow:0 -8px 24px #39000e17;backdrop-filter:blur(14px)}
  .store-bottom-nav>:is(a,button){min-width:0;padding:2px;display:grid;place-content:center;justify-items:center;gap:2px;border:0;color:inherit;background:transparent;text-decoration:none}
  .store-bottom-nav span{font-size:22px;line-height:1}.store-bottom-nav b{font-size:8px;white-space:nowrap}.store-bottom-nav .active{color:var(--shell-burgundy)}
  .store-bottom-nav .store-bottom-discover span{width:40px;height:40px;margin-top:-20px;display:grid;place-items:center;border-radius:50%;color:#fff;background:linear-gradient(145deg,#7c0022,#4b0013);box-shadow:0 6px 16px #50001740}
  body.account-route .store-bottom-nav{display:none}
  body.finder-route .fragrance-finder-page{padding-bottom:calc(170px + env(safe-area-inset-bottom))}
  body.finder-route .finder-actions{z-index:57;bottom:calc(66px + env(safe-area-inset-bottom))}
}

@media(max-width:640px){
  .announcement>span{font-size:11px;font-weight:800}
  .header-preference-actions .lang-button{font-size:11px;font-weight:900}
  .store-bottom-nav b{font-size:11px;font-weight:900}
  .home-hero-copy h1{font-size:clamp(30px,9vw,38px)!important}
  .home-hero-copy p{font-size:14px!important}
  .ornament-heading h2,.home-section-head h2{font-size:24px!important}
  .home-categories.horizontal-rail a b{font-size:11px!important;line-height:1.3;font-weight:900!important}
  .home-benefits b{font-size:11px!important;font-weight:900!important}.home-benefits small{font-size:10px!important;font-weight:700!important}
  .brand-marquee-set b{font-size:12px!important;font-weight:900!important}
  .perfume-product-card .product-brand{font-size:10px!important;font-weight:800!important}
  .perfume-product-card .product-info h3,.home-best-sellers .perfume-product-card .product-info h3{font-size:15px!important;font-weight:900!important}
  .perfume-product-card .product-price{font-size:16px!important;font-weight:900!important}
  .perfume-product-card .product-card-type{font-size:9px!important;font-weight:700!important}
  .perfume-product-card .card-add-button{font-size:12px!important;font-weight:900!important}
  .footer-directory h3{font-size:17px!important}
  .footer-directory a,.footer-directory button,.footer-contact p,.footer-app>p{font-size:12px!important}
  .announcement>span,.header-preference-actions .lang-button,.store-bottom-nav b,.home-hero-copy,.home-categories,.home-benefits,.home-section-head,.ornament-heading,.perfume-product-card .product-card-info,.footer-directory{font-weight:600}
  .home-hero-copy h1,.home-section-head h2,.ornament-heading h2,.home-categories b,.home-benefits b,.brand-marquee-set b,.perfume-product-card h3,.perfume-product-card .product-price,.perfume-product-card .card-add-button,.footer-directory h3,.store-bottom-nav b{font-weight:800!important}
  .home-brand-showcase .product-grid{gap:10px!important}
  .home-brand-showcase .perfume-product-card{flex:0 0 min(72vw,235px)!important;min-width:0!important;width:auto!important}
  .home-brand-showcase .perfume-product-card .product-card-media{aspect-ratio:1/1.08!important}
}

/* Equal-height product content keeps every add-to-cart button on one baseline. */
.perfume-product-card {
  height: 100%;
  display: flex;
  flex-direction: column;
}

.perfume-product-card .product-card-media {
  flex: 0 0 auto;
}

.perfume-product-card .product-card-info,
.home-best-sellers .perfume-product-card .product-card-info {
  min-height: 0;
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
}

.perfume-product-card .product-card-commerce,
.home-best-sellers .perfume-product-card .product-card-commerce {
  width: 100%;
  margin-top: auto;
}

.perfume-product-card .card-add-button,
.home-best-sellers .perfume-product-card .card-add-button {
  flex: 0 0 46px;
  min-height: 46px;
  line-height: 1;
  white-space: nowrap;
}

@media (min-width: 641px) {
  .home-best-sellers .perfume-product-card .product-card-title-row {
    min-height: 64px;
  }

  .home-best-sellers .perfume-product-card .product-card-rating-price {
    min-height: 68px;
  }
}

/* Mobile scroll chrome: compact header and direction-aware bottom navigation. */
@media (max-width: 640px) {
  .site-header,
  .site-header.compact,
  .header-main,
  .compact .header-main,
  .header-main > .brand,
  .compact .header-main > .brand,
  .header-preference-actions,
  .header-commerce-actions > button,
  .store-bottom-nav {
    transition:
      height 240ms ease,
      min-height 240ms ease,
      opacity 220ms ease,
      transform 240ms ease,
      width 240ms ease,
      padding 240ms ease;
  }

  body.mobile-header-condensed .site-header,
  body.mobile-header-condensed .site-header.compact {
    min-height: 56px;
  }

  body.mobile-header-condensed .header-main,
  body.mobile-header-condensed .compact .header-main {
    height: 56px;
    min-height: 56px;
    grid-template-columns: 44px minmax(0, 1fr) 76px;
    grid-template-areas: "menu spacer commerce";
    padding-inline: 10px;
  }

  body.mobile-header-condensed .header-main > .brand,
  body.mobile-header-condensed .compact .header-main > .brand,
  body.mobile-header-condensed .header-preference-actions {
    width: 0;
    min-width: 0;
    height: 0;
    min-height: 0;
    overflow: hidden;
    opacity: 0;
    pointer-events: none;
    transform: translateY(-10px) scale(.92);
  }

  body.mobile-header-condensed .header-commerce-zone {
    grid-area: commerce;
    justify-self: end;
  }

  body.mobile-header-condensed .header-commerce-actions {
    grid-template-columns: repeat(2, 34px);
    gap: 4px;
  }

  body.mobile-header-condensed .header-commerce-actions > button {
    width: 34px;
    min-width: 34px;
    height: 40px;
  }

  body.mobile-header-condensed .header-commerce-actions :is(.wishlist-button, .account-button) {
    display: none !important;
  }

  body.mobile-header-condensed .mobile-menu-button {
    width: 40px;
    height: 40px;
  }

  body.mobile-nav-hidden .store-bottom-nav {
    opacity: 0;
    transform: translateY(calc(100% + env(safe-area-inset-bottom)));
    pointer-events: none;
  }

  body.commerce-route .store-bottom-nav {
    opacity: 1;
    transform: translateY(0);
    pointer-events: auto;
  }
}

@media (prefers-reduced-motion: reduce) {
  .site-header,
  .site-header.compact,
  .header-main,
  .compact .header-main,
  .store-bottom-nav {
    transition-duration: 1ms !important;
  }
}
