/* Checkout only: WooCommerce terms checkbox label (dark luxury sections) */
body.woocommerce-checkout .woocommerce-terms-and-conditions-checkbox-text {
  color: #fff;
}

body.woocommerce-checkout .woocommerce-terms-and-conditions-checkbox-text a {
  color: #fff;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 0.2em;
}

body.woocommerce-checkout .woocommerce-terms-and-conditions-checkbox-text a:hover {
  color: #e8e8e8;
}

body.woocommerce-checkout .woocommerce-terms-and-conditions-checkbox-text a:focus {
  outline: none;
}

body.woocommerce-checkout .woocommerce-terms-and-conditions-checkbox-text a:focus-visible {
  outline: 2px solid #fff;
  outline-offset: 3px;
}

body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper #terms ~ abbr.required {
  color: #fff;
}

/* -------------------------------------------------------------------------- */
/* Single product: Elementor column uses classic background = product image. */
/* Default cover crops tall vials; contain keeps full product visible, centered. */
/* Template post ID 1212 — column id 20c793cb (same on sampled PDPs).          */
/* -------------------------------------------------------------------------- */
body.single-product .elementor-element.elementor-element-20c793cb:not(.elementor-motion-effects-element-type-background) > .elementor-widget-wrap,
body.single-product .elementor-element.elementor-element-20c793cb > .elementor-widget-wrap > .elementor-motion-effects-container > .elementor-motion-effects-layer {
  background-size: contain !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
}

body.single-product .elementor-element.elementor-element-20c793cb > .elementor-widget-wrap {
  padding: clamp(12px, 3vw, 36px);
  box-sizing: border-box;
}

/* WooCommerce PDP add to cart — monochrome (overrides default WC purple where present) */
body.single-product .woocommerce button.single_add_to_cart_button.button.alt,
body.single-product .woocommerce .single_add_to_cart_button.button.alt {
  background-color: #0a0a0a !important;
  color: #fff !important;
  border: 1px solid #0a0a0a !important;
  border-radius: 0;
}

body.single-product .woocommerce button.single_add_to_cart_button.button.alt:hover,
body.single-product .woocommerce .single_add_to_cart_button.button.alt:hover {
  background-color: #fff !important;
  color: #0a0a0a !important;
  border-color: #0a0a0a !important;
}

/* -------------------------------------------------------------------------- */
/* Homepage spacing rhythm (homepage only: page-id-117)                        */
/* -------------------------------------------------------------------------- */
body.page-id-117 .elementor-section.elementor-top-section + .elementor-section.elementor-top-section {
  margin-top: clamp(22px, 3.5vw, 56px);
}

/* Keep header-like first strip tighter to hero */
body.page-id-117 .elementor-section.elementor-element-41027a6e12 {
  margin-top: clamp(10px, 2vw, 22px);
}

/* Hero -> next section breathing room (new section above made this feel tight) */
body.page-id-117 .elementor-section.elementor-element-41027a6e12 {
  padding-bottom: clamp(28px, 5vw, 72px);
}

/* Best Sellers section: add top/bottom editorial breathing space */
body.page-id-117 .elementor-section.elementor-element-d5554a6 {
  padding-top: clamp(34px, 6vw, 88px);
  padding-bottom: clamp(34px, 6vw, 88px);
}

/* Quality section: ensure it doesn't butt against the grid */
body.page-id-117 .elementor-section.elementor-element-5440052 {
  padding-top: clamp(34px, 6vw, 88px);
  padding-bottom: clamp(34px, 6vw, 88px);
}

@media (max-width: 767px) {
  body.page-id-117 .elementor-section.elementor-top-section + .elementor-section.elementor-top-section {
    margin-top: clamp(18px, 6vw, 34px);
  }
}

/* -------------------------------------------------------------------------- */
/* Homepage hero/Spline integration (section: 41027a6e12)                      */
/* -------------------------------------------------------------------------- */
body.page-id-117 .elementor-section.elementor-element-41027a6e12 {
  padding: 0 0 clamp(40px, 6vw, 88px);
  background: linear-gradient(180deg, #050505 0%, #0a0a0a 62%, #111 100%);
  position: relative;
}

body.page-id-117 .elementor-section.elementor-element-41027a6e12::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: radial-gradient(120% 80% at 50% 0%, rgba(255, 255, 255, 0.11) 0%, rgba(255, 255, 255, 0) 60%);
}

body.page-id-117 .elementor-section.elementor-element-41027a6e12 .elementor-container {
  max-width: 100% !important;
  width: 100% !important;
}

body.page-id-117 .elementor-section.elementor-element-41027a6e12 .elementor-widget-wrap {
  max-width: none;
  margin: 0;
  padding-left: 0;
  padding-right: 0;
  box-sizing: border-box;
}

body.page-id-117 .elementor-section.elementor-element-41027a6e12 hana-viewer {
  min-height: clamp(460px, 68vh, 820px);
  height: clamp(460px, 68vh, 820px) !important;
  background: #070707;
  border: 0;
  box-shadow: none;
}

body.page-id-117 .elementor-section.elementor-element-41027a6e12 + .elementor-section {
  margin-top: clamp(40px, 6vw, 92px);
}

@media (max-width: 767px) {
  body.page-id-117 .elementor-section.elementor-element-41027a6e12 {
    padding: 0 0 clamp(24px, 8vw, 42px);
  }

  body.page-id-117 .elementor-section.elementor-element-41027a6e12 hana-viewer {
    min-height: clamp(320px, 58vh, 520px);
    height: clamp(320px, 58vh, 520px) !important;
  }
}

/* -------------------------------------------------------------------------- */
/* Homepage layout cleanup (homepage only)                                     */
/* -------------------------------------------------------------------------- */
body.page-id-117 {
  background: #050505;
}

/* Ensure the Spline wrapper doesn't clamp/overflow into next section */
body.page-id-117 .elementor-element.elementor-element-c553fe8 > div[style*="position: relative"] {
  height: auto !important;
  overflow: hidden;
}

body.page-id-117 .elementor-section.elementor-element-41027a6e12 {
  overflow: hidden;
}

/* Remove the manual white watermark-cover overlay that is escaping (bottom:-180px) */
body.page-id-117 .elementor-element.elementor-element-c553fe8 > div[style*="position: relative"] > div {
  display: none !important;
}

/* -------------------------------------------------------------------------- */
/* Homepage Spline embed: make wrapper + viewer match section height           */
/* -------------------------------------------------------------------------- */
body.page-id-117 .elementor-element.elementor-element-c553fe8 {
  line-height: 0; /* prevent any stray inline-gap seams */
}

/* Override the inline fixed-height wrapper (height:500px) to our cinematic clamp */
body.page-id-117 .elementor-element.elementor-element-c553fe8 > div[style*="height: 500px"],
body.page-id-117 .elementor-element.elementor-element-c553fe8 > div[style*="height:500px"] {
  height: clamp(640px, 92vh, 1100px) !important;
  max-height: none !important;
}

/* Let the viewer fill the wrapper exactly (avoid mismatch/gaps) */
body.page-id-117 .elementor-element.elementor-element-c553fe8 hana-viewer {
  width: 100% !important;
  height: 100% !important;
  display: block;
  transform: scale(1.05);
  transform-origin: center center;
}

/* Full-bleed hero presence (reduce “boxed embed” feel) */
body.page-id-117 .elementor-section.elementor-element-41027a6e12 .elementor-container,
body.page-id-117 .elementor-section.elementor-element-41027a6e12 .elementor-column,
body.page-id-117 .elementor-section.elementor-element-41027a6e12 .elementor-widget,
body.page-id-117 .elementor-section.elementor-element-41027a6e12 .elementor-widget-container {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

body.page-id-117 .elementor-element.elementor-element-c553fe8 {
  width: 100%;
  margin-left: 0;
  margin-right: 0;
}

@media (max-width: 767px) {
  body.page-id-117 .elementor-element.elementor-element-c553fe8 > div[style*="height: 500px"],
  body.page-id-117 .elementor-element.elementor-element-c553fe8 > div[style*="height:500px"] {
    height: clamp(420px, 70vh, 720px) !important;
  }

  body.page-id-117 .elementor-element.elementor-element-c553fe8 hana-viewer {
    transform: scale(1.02);
  }
}

/* -------------------------------------------------------------------------- */
/* FINAL HOMEPAGE HERO FIT OVERRIDES (avoid boxed/constrained render)         */
/* -------------------------------------------------------------------------- */
body.page-id-117 .elementor-section.elementor-element-41027a6e12 {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

body.page-id-117 .elementor-section.elementor-element-41027a6e12 > .elementor-container {
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
}

body.page-id-117 .elementor-section.elementor-element-41027a6e12 .elementor-column,
body.page-id-117 .elementor-section.elementor-element-41027a6e12 .elementor-widget-wrap,
body.page-id-117 .elementor-section.elementor-element-41027a6e12 .elementor-widget-container,
body.page-id-117 .elementor-section.elementor-element-41027a6e12 .elementor-element.elementor-element-c553fe8 {
  width: 100% !important;
  max-width: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

body.page-id-117 .elementor-element.elementor-element-c553fe8 > div[style*="position: relative"] {
  width: 100% !important;
  height: min(96vh, 1100px) !important;
  min-height: 620px !important;
}

body.page-id-117 .elementor-element.elementor-element-c553fe8 hana-viewer {
  width: 100% !important;
  height: 100% !important;
  transform: none !important;
}

@media (max-width: 767px) {
  body.page-id-117 .elementor-element.elementor-element-c553fe8 > div[style*="position: relative"] {
    min-height: 420px !important;
    height: min(74vh, 760px) !important;
  }
}

/* -------------------------------------------------------------------------- */
/* Shop price readability + responsive usability pass                           */
/* -------------------------------------------------------------------------- */
body.post-type-archive-product ul.products li.product .price,
body.post-type-archive-product .eael-product-grid .price {
  font-size: clamp(1.05rem, 1vw + 0.55rem, 1.3rem);
  line-height: 1.25;
  font-weight: 600;
  letter-spacing: 0.01em;
}

body.post-type-archive-product ul.products li.product .price del {
  font-size: 0.86em;
  opacity: 0.72;
}

body.post-type-archive-product ul.products li.product .price ins {
  text-decoration: none;
}

/* Keep card rhythm intact when prices are larger */
body.post-type-archive-product ul.products li.product .woocommerce-loop-product__title {
  margin-bottom: 0.45rem;
}

/* Prevent accidental horizontal scrolling on smaller viewports */
@media (max-width: 1024px) {
  html,
  body {
    overflow-x: hidden;
  }

  img,
  iframe,
  video {
    max-width: 100%;
    height: auto;
  }

  /* Tablet/phone touch targets */
  .woocommerce a.button,
  .woocommerce button.button,
  .woocommerce input.button,
  .elementor-button,
  .wpr-mailchimp-subscribe-btn {
    min-height: 44px;
    padding-top: 10px;
    padding-bottom: 10px;
  }

  /* Form readability on cart/checkout/contact/community */
  .woocommerce form .form-row input.input-text,
  .woocommerce form .form-row textarea,
  .woocommerce form .form-row select,
  input[type="text"],
  input[type="email"],
  input[type="tel"],
  textarea,
  select {
    font-size: 16px;
    line-height: 1.35;
  }

  /* Better checkout/cart breathing room on tablet/mobile */
  body.woocommerce-cart .woocommerce,
  body.woocommerce-checkout .woocommerce {
    padding-left: 12px;
    padding-right: 12px;
    box-sizing: border-box;
  }
}

@media (max-width: 767px) {
  body.post-type-archive-product ul.products li.product .price,
  body.post-type-archive-product .eael-product-grid .price {
    font-size: clamp(1.15rem, 2.8vw + 0.55rem, 1.45rem);
    line-height: 1.22;
  }

  /* Header/menu toggle comfort on small screens */
  .hfe-nav-menu__toggle {
    min-height: 44px;
    min-width: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }

  /* Newsletter/footer form alignment */
  .wpr-mailchimp-fields {
    gap: 10px;
  }

  .wpr-mailchimp-email,
  .wpr-mailchimp-subscribe {
    width: 100%;
  }
}

/* Make shop prices match product title size exactly */
body.post-type-archive-product ul.products li.product .woocommerce-loop-product__title,
body.post-type-archive-product .eael-product-grid .woocommerce-loop-product__title,
body.post-type-archive-product ul.products li.product .price,
body.post-type-archive-product .eael-product-grid .price,
body.tax-product_cat ul.products li.product .woocommerce-loop-product__title,
body.tax-product_cat .eael-product-grid .woocommerce-loop-product__title,
body.tax-product_cat ul.products li.product .price,
body.tax-product_cat .eael-product-grid .price,
body.tax-product_tag ul.products li.product .woocommerce-loop-product__title,
body.tax-product_tag .eael-product-grid .woocommerce-loop-product__title,
body.tax-product_tag ul.products li.product .price,
body.tax-product_tag .eael-product-grid .price {
  font-size: clamp(1.3rem, 1.1vw + 0.76rem, 1.62rem);
  line-height: 1.24;
}

/* Sale ribbon — high-contrast red on product archives */
body.post-type-archive-product span.onsale,
body.tax-product_cat span.onsale,
body.tax-product_tag span.onsale,
body.post-type-archive-product .eael-product-grid span.onsale,
body.tax-product_cat .eael-product-grid span.onsale,
body.tax-product_tag .eael-product-grid span.onsale {
  background-color: #c41e3a;
  color: #fff;
  border: none;
  box-shadow: 0 1px 0 rgba(0, 0, 0, 0.12);
}

/* Keep header visible while scrolling */
.ehf-header,
header.site-header,
.elementor-location-header {
  position: sticky;
  top: 0;
  z-index: 9999;
}

/* Avoid admin bar overlap when logged in */
body.admin-bar .ehf-header,
body.admin-bar header.site-header,
body.admin-bar .elementor-location-header {
  top: 32px;
}

@media (max-width: 782px) {
  body.admin-bar .ehf-header,
  body.admin-bar header.site-header,
  body.admin-bar .elementor-location-header {
    top: 46px;
  }
}

/* -------------------------------------------------------------------------- */
/* WooCommerce My Account — luxury monochrome client portal (account pages only) */
/* -------------------------------------------------------------------------- */
body.woocommerce-account {
  --woocommerce: #0a0a0a;
  --wc-primary: #0a0a0a;
  --wc-primary-text: #fff;
  --wc-secondary: #e8e8e6;
  --wc-secondary-text: #3a3a3a;
  --wc-highlight: #0a0a0a;
  --wc-highligh-text: #fff;
  --wc-green: #0a0a0a;
  --wc-red: #6b0f0f;
  --wc-orange: #0a0a0a;
  --wc-blue: #0a0a0a;
}

body.woocommerce-account main.site-main {
  background: linear-gradient(180deg, #ebeae8 0%, #f5f5f3 38%, #fafaf8 100%);
  padding-top: clamp(20px, 4vw, 48px);
  padding-bottom: clamp(48px, 8vw, 96px);
}

body.woocommerce-account:not(.logged-in) .woocommerce {
  max-width: 26rem;
  margin-left: auto;
  margin-right: auto;
  padding-left: clamp(16px, 4vw, 24px);
  padding-right: clamp(16px, 4vw, 24px);
}

body.woocommerce-account:not(.logged-in) .woocommerce > h2,
body.woocommerce-account:not(.logged-in) .woocommerce > form {
  background: #fff;
  border: 1px solid #0a0a0a;
  padding: clamp(22px, 4vw, 32px);
  box-sizing: border-box;
}

body.woocommerce-account:not(.logged-in) .woocommerce > h2 {
  margin: 0 0 -1px;
  border-bottom: none;
  font-weight: 300;
  letter-spacing: 0.04em;
  font-size: clamp(1.65rem, 2.4vw, 2rem);
  line-height: 1.2;
  color: #0a0a0a;
}

body.woocommerce-account:not(.logged-in) .woocommerce > form {
  margin: 0;
  border-top: 1px solid #d4d4d4;
}

body.woocommerce-account.logged-in .woocommerce {
  display: flex;
  flex-wrap: wrap;
  gap: clamp(20px, 3vw, 40px);
  align-items: flex-start;
  max-width: 72rem;
  margin-left: auto;
  margin-right: auto;
  padding-left: clamp(16px, 3vw, 28px);
  padding-right: clamp(16px, 3vw, 28px);
  box-sizing: border-box;
}

body.woocommerce-account.logged-in .woocommerce-notices-wrapper {
  flex: 1 0 100%;
  width: 100%;
}

body.woocommerce-account .woocommerce-MyAccount-navigation {
  float: none;
  width: min(15rem, 100%);
  flex: 0 0 auto;
  margin: 0;
  padding: clamp(18px, 2.5vw, 26px);
  background: #fff;
  border: 1px solid #0a0a0a;
  box-sizing: border-box;
}

body.woocommerce-account .woocommerce-MyAccount-content {
  float: none;
  width: auto;
  flex: 1 1 17.5rem;
  min-width: 0;
  margin: 0;
  padding: clamp(22px, 3vw, 40px);
  background: #fff;
  border: 1px solid #0a0a0a;
  box-sizing: border-box;
}

body.woocommerce-account .woocommerce-MyAccount-navigation ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li a {
  display: block;
  padding: 0.65rem 0 0.65rem 0.75rem;
  margin: 0;
  border-left: 2px solid transparent;
  text-decoration: none;
  color: #5a5a5a;
  font-size: 0.6875rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  line-height: 1.35;
  transition: color 0.15s ease, border-color 0.15s ease;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li a:hover {
  color: #0a0a0a;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a {
  border-left-color: #0a0a0a;
  color: #0a0a0a;
  font-weight: 600;
}

body.woocommerce-account .woocommerce-MyAccount-content > p:first-of-type {
  margin-top: 0;
  font-size: 1.0625rem;
  line-height: 1.65;
  color: #3a3a3a;
  letter-spacing: 0.01em;
}

body.woocommerce-account .woocommerce-MyAccount-content a:not(.button):not(.woocommerce-button) {
  color: #0a0a0a;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 0.2em;
}

body.woocommerce-account .woocommerce-MyAccount-content a:not(.button):not(.woocommerce-button):hover {
  color: #000;
}

body.woocommerce-account .woocommerce form .form-row {
  margin-bottom: 1.1rem;
}

body.woocommerce-account .woocommerce form .form-row label,
body.woocommerce-account .woocommerce-form-row label {
  font-size: 0.6875rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #2a2a2a;
  margin-bottom: 0.45rem;
}

body.woocommerce-account .woocommerce form .input-text,
body.woocommerce-account .woocommerce form input[type="password"],
body.woocommerce-account .woocommerce form input[type="email"],
body.woocommerce-account .woocommerce form input[type="tel"],
body.woocommerce-account .woocommerce textarea,
body.woocommerce-account .woocommerce form select {
  border: 1px solid #0a0a0a;
  border-radius: 0;
  padding: 0.7rem 0.85rem;
  background: #fff;
  color: #0a0a0a;
  font-size: 1rem;
  line-height: 1.35;
  box-sizing: border-box;
}

body.woocommerce-account .woocommerce form .input-text:focus,
body.woocommerce-account .woocommerce form input:focus,
body.woocommerce-account .woocommerce textarea:focus,
body.woocommerce-account .woocommerce form select:focus {
  outline: 2px solid #0a0a0a;
  outline-offset: 2px;
}

body.woocommerce-account .woocommerce .button,
body.woocommerce-account .woocommerce a.button,
body.woocommerce-account .woocommerce button.button,
body.woocommerce-account .woocommerce input.button,
body.woocommerce-account .woocommerce #respond input#submit {
  background-color: #0a0a0a !important;
  color: #fff !important;
  border: 1px solid #0a0a0a !important;
  border-radius: 0 !important;
  padding: 0.75rem 1.35rem;
  font-weight: 500;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  font-size: 0.6875rem;
  line-height: 1.3;
  transition: background-color 0.15s ease, color 0.15s ease, border-color 0.15s ease;
}

body.woocommerce-account .woocommerce .button:hover,
body.woocommerce-account .woocommerce a.button:hover,
body.woocommerce-account .woocommerce button.button:hover,
body.woocommerce-account .woocommerce input.button:hover,
body.woocommerce-account .woocommerce #respond input#submit:hover {
  background-color: #fff !important;
  color: #0a0a0a !important;
  border-color: #0a0a0a !important;
}

body.woocommerce-account table.shop_table,
body.woocommerce-account table.woocommerce-table--order-details {
  border: 1px solid #0a0a0a;
  border-collapse: collapse;
  border-radius: 0;
}

body.woocommerce-account table.shop_table th,
body.woocommerce-account table.shop_table td {
  border-bottom: 1px solid #d8d8d6;
  padding: 0.85rem 1rem;
  vertical-align: middle;
}

body.woocommerce-account table.shop_table thead th {
  text-transform: uppercase;
  letter-spacing: 0.07em;
  font-size: 0.65rem;
  font-weight: 600;
  background: #f4f4f2;
  color: #0a0a0a;
  border-bottom: 1px solid #0a0a0a;
}

body.woocommerce-account .woocommerce-orders-table .button,
body.woocommerce-account table.shop_table .button {
  margin: 0.15rem 0.35rem 0.15rem 0;
}

body.woocommerce-account .woocommerce-message,
body.woocommerce-account .woocommerce-info,
body.woocommerce-account .woocommerce-error {
  border-radius: 0;
  border-left-width: 3px;
  border-left-style: solid;
  background: #fff !important;
  color: #1a1a1a !important;
  box-shadow: none;
}

body.woocommerce-account .woocommerce-message {
  border-left-color: #0a0a0a;
}

body.woocommerce-account .woocommerce-info {
  border-left-color: #8a8a8a;
}

body.woocommerce-account .woocommerce-error {
  border-left-color: #6b0f0f;
}

body.woocommerce-account .woocommerce-message .button,
body.woocommerce-account .woocommerce-info .button,
body.woocommerce-account .woocommerce-error .button {
  float: none;
  display: inline-block;
  margin-top: 0.5rem;
}

body.woocommerce-account .woocommerce-store-notice {
  background: #0a0a0a !important;
  color: #fff !important;
  border-bottom: 1px solid #000 !important;
}

body.woocommerce-account .woocommerce-store-notice a {
  color: #fff !important;
  text-decoration: underline;
}

body.woocommerce-account .woocommerce-password-strength,
body.woocommerce-account .woocommerce-password-hint {
  border-radius: 0;
}

body.woocommerce-account .woocommerce-password-strength.short,
body.woocommerce-account .woocommerce-password-strength.bad,
body.woocommerce-account .woocommerce-password-strength.good,
body.woocommerce-account .woocommerce-password-strength.strong {
  background-color: #ececea !important;
  color: #0a0a0a !important;
  border: 1px solid #0a0a0a !important;
}

body.woocommerce-account .select2-container--default .select2-selection--single {
  border: 1px solid #0a0a0a;
  border-radius: 0;
  min-height: 2.75rem;
  padding: 0.2rem 0.35rem;
}

body.woocommerce-account .select2-container--default .select2-selection--single .select2-selection__rendered {
  line-height: 2.2rem;
  color: #0a0a0a;
  padding-left: 0.35rem;
}

body.woocommerce-account .select2-container--default .select2-selection--single .select2-selection__arrow {
  height: 2.65rem;
}

/* Select2 open dropdown — default library uses WP blue highlight (#0073aa) */
body.woocommerce-account .select2-dropdown {
  border: 1px solid #0a0a0a;
  border-radius: 0;
}

body.woocommerce-account .select2-container--default .select2-results__option--highlighted[aria-selected],
body.woocommerce-account .select2-container--default .select2-results__option--highlighted[data-selected] {
  background-color: #0a0a0a !important;
  color: #fff !important;
}

body.woocommerce-account .select2-search--dropdown .select2-search__field {
  border: 1px solid #0a0a0a !important;
  border-radius: 0 !important;
  color: #0a0a0a;
}

/* Orders pagination — WC default uses lavender borders + purple hover/current */
body.woocommerce-account nav.woocommerce-pagination ul {
  border-color: #0a0a0a !important;
}

body.woocommerce-account nav.woocommerce-pagination ul li {
  border-right-color: #d4d4d4 !important;
}

body.woocommerce-account nav.woocommerce-pagination ul li a {
  color: #0a0a0a;
}

body.woocommerce-account nav.woocommerce-pagination ul li a:focus,
body.woocommerce-account nav.woocommerce-pagination ul li a:hover,
body.woocommerce-account nav.woocommerce-pagination ul li span.current {
  background: #0a0a0a !important;
  color: #fff !important;
}

/* Order status chip — keep neutral vs theme-tinted marks */
body.woocommerce-account mark.order-status {
  background: #f4f4f2;
  color: #0a0a0a;
  border: 1px solid #0a0a0a;
  padding: 0.2em 0.55em;
  font-weight: 600;
  font-size: 0.65rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  line-height: 1.3;
}

body.woocommerce-account .woocommerce-Address-title .title h3,
body.woocommerce-account .woocommerce-Address-title .title {
  font-weight: 400;
  letter-spacing: 0.03em;
  color: #0a0a0a;
}

body.woocommerce-account .u-columns.woocommerce-Addresses,
body.woocommerce-account .woocommerce-Addresses .woocommerce-Address {
  margin-bottom: 1.5rem;
}

body.woocommerce-account hr {
  border: none;
  border-top: 1px solid #d4d4d4;
  margin: 2rem 0;
}

@media (max-width: 768px) {
  body.woocommerce-account .woocommerce-MyAccount-navigation {
    width: 100%;
  }

  body.woocommerce-account .woocommerce-MyAccount-navigation ul {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem 1rem;
  }

  body.woocommerce-account .woocommerce-MyAccount-navigation li {
    flex: 1 1 auto;
    min-width: calc(50% - 0.5rem);
  }

  body.woocommerce-account .woocommerce-MyAccount-navigation li a {
    border-left: none;
    border-bottom: 2px solid transparent;
    padding: 0.5rem 0;
  }

  body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a {
    border-bottom-color: #0a0a0a;
  }

  body.woocommerce-account table.shop_table {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}

/* -------------------------------------------------------------------------- */
/* HOMEPAGE GAP CLEANUP: remove dark spacer bars between sections              */
/* -------------------------------------------------------------------------- */
body.page-id-117 .elementor-section.elementor-top-section {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

body.page-id-117 .elementor-section.elementor-top-section + .elementor-section.elementor-top-section {
  margin-top: 0 !important;
}

body.page-id-117 .elementor-section.elementor-element-41027a6e12 {
  padding-bottom: 0 !important;
}

body.page-id-117 .elementor-section.elementor-element-41027a6e12 + .elementor-section {
  margin-top: 0 !important;
}

body.page-id-117 .elementor-section.elementor-element-d5554a6,
body.page-id-117 .elementor-section.elementor-element-5440052,
body.page-id-117 .elementor-section.elementor-element-b98b75f,
body.page-id-117 .elementor-section.elementor-element-84e8fa3,
body.page-id-117 .elementor-section.elementor-element-d814558 {
  padding-top: 0 !important;
}

/* -------------------------------------------------------------------------- */
/* Homepage pass 1 refresh (2026-03-29)                                       */
/* Low-risk visual cleanup only: hero clarity, trust hierarchy, product polish */
/* -------------------------------------------------------------------------- */
body.page-id-117 {
  --mia-accent: #ff6f61;
  --mia-accent-soft: #ffd0c6;
  --mia-ink: #050505;
  --mia-surface: #121212;
  --mia-surface-soft: #1b1b1b;
  --mia-ivory: #f4efe8;
  --mia-muted: #c8c0b4;
}

/* Hero messaging layer */
body.page-id-117 .mia-home-hero {
  position: relative;
  min-height: clamp(620px, 90vh, 1040px);
}

body.page-id-117 .mia-home-hero__viewer,
body.page-id-117 .mia-home-hero__viewer hana-viewer {
  display: block;
  width: 100%;
  height: 100%;
}

body.page-id-117 .mia-home-hero__overlay {
  position: absolute;
  left: clamp(18px, 5vw, 56px);
  right: auto;
  bottom: clamp(18px, 6vw, 48px);
  z-index: 3;
  width: min(620px, calc(100% - 36px));
  padding: clamp(22px, 3vw, 34px);
  border: 1px solid rgba(255, 255, 255, 0.12);
  background: linear-gradient(180deg, rgba(5, 5, 5, 0.66) 0%, rgba(5, 5, 5, 0.9) 100%);
  backdrop-filter: blur(10px);
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.28);
}

body.page-id-117 .mia-home-hero__eyebrow {
  margin: 0 0 10px;
  color: var(--mia-accent-soft);
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.22em;
  text-transform: uppercase;
}

body.page-id-117 .mia-home-hero__title {
  margin: 0;
  color: #fff;
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(2.8rem, 5vw, 5rem);
  line-height: 0.95;
  letter-spacing: -0.03em;
}

body.page-id-117 .mia-home-hero__lede {
  margin: 16px 0 0;
  max-width: 34rem;
  color: rgba(255, 255, 255, 0.84);
  font-size: clamp(1rem, 1vw + 0.7rem, 1.2rem);
  line-height: 1.58;
}

body.page-id-117 .mia-home-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 24px;
}

body.page-id-117 .mia-home-hero__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 0 22px;
  border: 1px solid transparent;
  font-size: 0.95rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-decoration: none !important;
  text-transform: uppercase;
  transition: transform 0.18s ease, background-color 0.18s ease, color 0.18s ease, border-color 0.18s ease;
}

body.page-id-117 .mia-home-hero__button:hover {
  transform: translateY(-1px);
}

body.page-id-117 .mia-home-hero__button--primary {
  background: #fff;
  color: var(--mia-ink);
}

body.page-id-117 .mia-home-hero__button--secondary {
  border-color: rgba(255, 255, 255, 0.28);
  color: #fff;
  background: transparent;
}

body.page-id-117 .mia-home-hero__proof {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 18px;
}

body.page-id-117 .mia-home-hero__proof span {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 0 12px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  color: rgba(255, 255, 255, 0.88);
  background: rgba(255, 255, 255, 0.04);
  font-size: 0.84rem;
  letter-spacing: 0.04em;
}

/* Section rhythm and trust section cleanup */
body.page-id-117 .elementor-section.elementor-element-d5554a6,
body.page-id-117 .elementor-section.elementor-element-5440052,
body.page-id-117 .elementor-section.elementor-element-b98b75f,
body.page-id-117 .elementor-section.elementor-element-84e8fa3 {
  padding-left: 18px !important;
  padding-right: 18px !important;
}

body.page-id-117 .elementor-section.elementor-element-d5554a6 {
  border-width: 1px !important;
  border-style: solid !important;
  border-color: rgba(255, 255, 255, 0.06) !important;
}

body.page-id-117 .elementor-section.elementor-element-5440052 > .elementor-container,
body.page-id-117 .elementor-section.elementor-element-b98b75f > .elementor-container {
  min-height: clamp(320px, 44vw, 560px) !important;
}

body.page-id-117 .elementor-section.elementor-element-5440052,
body.page-id-117 .elementor-section.elementor-element-b98b75f {
  padding-top: clamp(40px, 6vw, 88px) !important;
  padding-bottom: clamp(40px, 6vw, 88px) !important;
}

body.page-id-117 .elementor-section.elementor-element-5440052 > .elementor-background-overlay,
body.page-id-117 .elementor-section.elementor-element-b98b75f > .elementor-background-overlay,
body.page-id-117 .elementor-element.elementor-element-943e96d > .elementor-element-populated > .elementor-background-overlay {
  opacity: 0.72 !important;
}

body.page-id-117 .elementor-element.elementor-element-e9cf24d .elementor-heading-title,
body.page-id-117 .elementor-element.elementor-element-9e9b8d9 .elementor-heading-title,
body.page-id-117 .elementor-element.elementor-element-12de8cd .elementor-heading-title {
  max-width: 14ch;
  margin-left: auto;
  margin-right: auto;
  line-height: 0.98;
  letter-spacing: -0.03em;
}

body.page-id-117 .elementor-element.elementor-element-12de8cd .elementor-heading-title {
  text-align: center;
  font-size: clamp(2.3rem, 4vw, 4rem);
}

body.page-id-117 .elementor-element.elementor-element-e9cf24d .elementor-heading-title {
  font-size: clamp(2.15rem, 3.6vw, 3.75rem);
}

body.page-id-117 .elementor-element.elementor-element-9e9b8d9 .elementor-heading-title {
  max-width: 24ch;
  font-size: clamp(1.35rem, 1.6vw + 0.9rem, 2rem);
}

body.page-id-117 .elementor-element.elementor-element-3f938e7,
body.page-id-117 .elementor-element.elementor-element-265abca {
  max-width: 44rem;
  margin-left: auto;
  margin-right: auto;
  line-height: 1.65;
}

body.page-id-117 .elementor-element.elementor-element-3f938e7 {
  font-size: clamp(1.02rem, 1vw + 0.68rem, 1.18rem);
}

body.page-id-117 .elementor-element.elementor-element-265abca {
  font-size: clamp(1rem, 0.9vw + 0.68rem, 1.12rem);
  color: #18120f !important;
}

/* Product grid polish */
body.page-id-117 .elementor-element.elementor-element-6547abc .eael-product-grid .woocommerce ul.products li.product {
  border-radius: 18px;
  overflow: hidden;
  background: linear-gradient(180deg, #101010 0%, #151515 100%);
  box-shadow: 0 14px 32px rgba(0, 0, 0, 0.16);
}

body.page-id-117 .elementor-element.elementor-element-6547abc .eael-product-grid .woocommerce ul.products li.product .product-image-wrap {
  background: #0a0a0a;
}

body.page-id-117 .elementor-element.elementor-element-6547abc .icons-wrap.block-style li.eael-product-quick-view,
body.page-id-117 .elementor-element.elementor-element-6547abc .icons-wrap.block-style li.view-details {
  display: none !important;
}

body.page-id-117 .elementor-element.elementor-element-6547abc .eael-product-grid .eael-product-wrap .icons-wrap li.add-to-cart a {
  min-height: 44px;
  padding: 0 16px;
  border: 1px solid rgba(255, 255, 255, 0.18);
  background: rgba(255, 255, 255, 0.08);
  color: #fff;
  font-size: 0.84rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

body.page-id-117 .elementor-element.elementor-element-6547abc .eael-product-grid .eael-product-wrap .icons-wrap li.add-to-cart a:hover {
  background: #fff;
  color: var(--mia-ink);
}

body.page-id-117 .elementor-element.elementor-element-6547abc .eael-product-title h2 {
  font-size: clamp(1.15rem, 1vw + 0.8rem, 1.4rem) !important;
  line-height: 1.12;
  letter-spacing: -0.01em;
}

body.page-id-117 .elementor-element.elementor-element-6547abc .eael-product-price,
body.page-id-117 .elementor-element.elementor-element-6547abc .eael-product-grid .woocommerce ul.products li.product .price {
  color: var(--mia-ivory) !important;
  opacity: 0.92;
}

body.page-id-117 .elementor-element.elementor-element-6547abc .eael-product-grid .woocommerce ul.products li.product .onsale {
  font-size: 0.8rem !important;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

/* Newsletter cleanup */
body.page-id-117 .elementor-element.elementor-element-694f0437 .wpr-mailchimp-header h3 {
  font-family: "Cormorant Garamond", serif !important;
  font-size: clamp(2rem, 3vw, 2.8rem) !important;
  line-height: 1.05 !important;
  letter-spacing: -0.02em;
}

body.page-id-117 .elementor-element.elementor-element-694f0437 .wpr-mailchimp-header p {
  color: rgba(255, 255, 255, 0.76) !important;
  max-width: 34rem;
  margin-left: auto;
  margin-right: auto;
}

body.page-id-117 .elementor-element.elementor-element-694f0437 .wpr-mailchimp-fields input {
  color: #111 !important;
  background: #fff !important;
}

body.page-id-117 .elementor-element.elementor-element-694f0437 .wpr-mailchimp-subscribe-btn {
  background: #fff !important;
  background-image: none !important;
  color: var(--mia-ink) !important;
  border-color: #fff !important;
}

body.page-id-117 .elementor-element.elementor-element-694f0437 .wpr-mailchimp-subscribe-btn:hover {
  background: transparent !important;
  color: #fff !important;
  border-color: rgba(255, 255, 255, 0.24) !important;
}

body.page-id-117 .elementor-element.elementor-element-694f0437 .wpr-mailchimp-message {
  background: transparent !important;
}

body.page-id-117 .elementor-element.elementor-element-694f0437 .wpr-mailchimp-success-message,
body.page-id-117 .elementor-element.elementor-element-694f0437 .wpr-mailchimp-error-message {
  display: inline-block;
  margin-top: 8px;
}

/* Mobile tightening */
@media (max-width: 767px) {
  body.page-id-117 .mia-home-hero {
    min-height: 520px;
  }

  body.page-id-117 .mia-home-hero__overlay {
    left: 14px;
    right: 14px;
    width: auto;
    bottom: 14px;
    padding: 18px;
  }

  body.page-id-117 .mia-home-hero__title {
    font-size: clamp(2.1rem, 10vw, 3.1rem);
  }

  body.page-id-117 .mia-home-hero__actions {
    flex-direction: column;
  }

  body.page-id-117 .mia-home-hero__button {
    width: 100%;
  }

  body.page-id-117 .elementor-section.elementor-element-5440052 > .elementor-container,
  body.page-id-117 .elementor-section.elementor-element-b98b75f > .elementor-container {
    min-height: auto !important;
  }

  body.page-id-117 .elementor-element.elementor-element-6547abc .eael-product-grid .woocommerce ul.products li.product {
    border-radius: 14px;
  }

  body.page-id-117 .elementor-element.elementor-element-694f0437 .wpr-mailchimp-subscribe,
  body.page-id-117 .elementor-element.elementor-element-694f0437 .wpr-mailchimp-subscribe-btn {
    width: 100% !important;
  }
}

/* -------------------------------------------------------------------------- */
/* Header/footer + storefront polish pass (2026-03-29)                       */
/* Low-risk storefront-only cleanup: nav clarity, footer cleanup, card polish */
/* -------------------------------------------------------------------------- */
.elementor-location-header,
.ehf-header,
header.site-header {
  background: rgba(5, 5, 5, 0.9);
  backdrop-filter: blur(10px);
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.elementor-location-header .elementor-container,
.ehf-header .elementor-container {
  min-height: 76px;
}

.elementor-location-header .hfe-nav-menu a,
.ehf-header .hfe-nav-menu a {
  color: rgba(255, 255, 255, 0.92) !important;
  font-size: 0.95rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.elementor-location-header .hfe-nav-menu a:hover,
.ehf-header .hfe-nav-menu a:hover,
.elementor-location-header .hfe-nav-menu .current-menu-item > a,
.ehf-header .hfe-nav-menu .current-menu-item > a {
  color: #ffd0c6 !important;
}

.elementor-location-header .elementor-social-icon,
.ehf-header .elementor-social-icon {
  background: rgba(255, 255, 255, 0.06) !important;
  border: 1px solid rgba(255, 255, 255, 0.08);
}

.elementor-location-header .elementor-social-icon:hover,
.ehf-header .elementor-social-icon:hover {
  background: rgba(255, 111, 97, 0.18) !important;
  border-color: rgba(255, 111, 97, 0.28);
}

.elementor-location-footer {
  background: #060606;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
}

.elementor-location-footer .elementor-container {
  max-width: 1200px;
}

.elementor-location-footer .hfe-nav-menu ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0;
}

.elementor-location-footer .hfe-nav-menu a {
  color: rgba(255, 255, 255, 0.84) !important;
  font-size: 0.92rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.elementor-location-footer .hfe-nav-menu a:hover,
.elementor-location-footer .hfe-nav-menu .current-menu-item > a {
  color: #ffd0c6 !important;
}

.elementor-location-footer .elementor-widget-text-editor,
.elementor-location-footer .elementor-widget-text-editor p,
.elementor-location-footer .elementor-widget-text-editor a {
  color: rgba(255, 255, 255, 0.72) !important;
  font-size: 0.92rem;
  line-height: 1.55;
}

.elementor-location-footer .elementor-widget-text-editor a:hover {
  color: #ffd0c6 !important;
}

.elementor-location-footer .elementor-widget-text-editor strong {
  color: #fff;
  font-weight: 600;
}

/* Homepage section + product-card polish */
body.page-id-117 .elementor-section.elementor-element-d5554a6 > .elementor-container {
  max-width: 1380px !important;
}

body.page-id-117 .elementor-element.elementor-element-6547abc .products {
  row-gap: 22px;
}

body.page-id-117 .elementor-element.elementor-element-6547abc .product-details-wrap {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 18px 18px 20px !important;
}

body.page-id-117 .elementor-element.elementor-element-6547abc .eael-product-title {
  min-height: 2.6em;
}

body.page-id-117 .elementor-element.elementor-element-6547abc .eael-product-title h2 {
  margin: 0;
}

body.page-id-117 .elementor-element.elementor-element-6547abc .eael-product-price {
  margin-top: auto;
}

body.page-id-117 .elementor-element.elementor-element-6547abc .eael-product-grid .eael-product-wrap .icons-wrap {
  inset: auto 18px 18px 18px;
  justify-content: stretch;
}

body.page-id-117 .elementor-element.elementor-element-6547abc .eael-product-grid .eael-product-wrap .icons-wrap li.add-to-cart {
  width: 100%;
}

body.page-id-117 .elementor-element.elementor-element-6547abc .eael-product-grid .eael-product-wrap .icons-wrap li.add-to-cart a {
  width: 100%;
  justify-content: center;
}

body.page-id-117 .elementor-element.elementor-element-3f938e7 a,
body.page-id-117 .elementor-element.elementor-element-265abca a {
  color: #18120f;
  text-decoration: underline;
  text-underline-offset: 0.22em;
}

body.page-id-117 .elementor-element.elementor-element-3f938e7 a:hover,
body.page-id-117 .elementor-element.elementor-element-265abca a:hover {
  color: #000;
}

body.page-id-117 .elementor-section.elementor-element-84e8fa3 {
  padding-top: clamp(40px, 6vw, 72px) !important;
  padding-bottom: clamp(42px, 6vw, 78px) !important;
}

@media (max-width: 1024px) {
  .elementor-location-header .elementor-container,
  .ehf-header .elementor-container {
    min-height: 68px;
  }

  .elementor-location-header .hfe-nav-menu a,
  .ehf-header .hfe-nav-menu a,
  .elementor-location-footer .hfe-nav-menu a {
    font-size: 0.88rem;
  }
}

@media (max-width: 767px) {
  .elementor-location-header,
  .ehf-header {
    background: rgba(5, 5, 5, 0.96);
  }

  .elementor-location-header .hfe-nav-menu__toggle,
  .ehf-header .hfe-nav-menu__toggle {
    min-width: 46px;
    min-height: 46px;
  }

  .elementor-location-header .hfe-nav-menu ul.sub-menu,
  .elementor-location-header .hfe-nav-menu-layout-vertical,
  .ehf-header .hfe-nav-menu-layout-vertical {
    background: #0b0b0b;
  }

  .elementor-location-footer .hfe-nav-menu ul {
    gap: 4px 0;
  }

  .elementor-location-footer .elementor-widget-text-editor,
  .elementor-location-footer .elementor-widget-text-editor p,
  .elementor-location-footer .elementor-widget-text-editor a {
    font-size: 0.84rem;
  }

  body.page-id-117 .elementor-element.elementor-element-6547abc .product-details-wrap {
    padding: 16px 16px 18px !important;
  }

  body.page-id-117 .elementor-element.elementor-element-6547abc .eael-product-title {
    min-height: 0;
  }
}

/* -------------------------------------------------------------------------- */
/* Phase 3 storefront hierarchy polish (2026-03-29)                           */
/* Storefront-only: message-led hero, tighter proof rhythm, calmer mobile UX  */
/* -------------------------------------------------------------------------- */
body.page-id-117 .elementor-section.elementor-element-41027a6e12 {
  background: #050505;
}

body.page-id-117 .elementor-section.elementor-element-41027a6e12 > .elementor-container {
  max-width: 1440px !important;
}

body.page-id-117 .mia-home-hero {
  position: relative;
  min-height: clamp(520px, 78vh, 760px);
  align-items: stretch;
  background:
    radial-gradient(circle at 18% 16%, rgba(255, 208, 198, 0.18), transparent 28%),
    linear-gradient(135deg, #040404 0%, #101010 44%, #060606 100%);
}

body.page-id-117 .mia-home-hero__viewer {
  opacity: 0.72;
  filter: saturate(0.9) contrast(1.04);
}

body.page-id-117 .mia-home-hero__viewer::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(5, 5, 5, 0.82) 0%, rgba(5, 5, 5, 0.55) 38%, rgba(5, 5, 5, 0.18) 68%, rgba(5, 5, 5, 0.1) 100%),
    linear-gradient(180deg, rgba(5, 5, 5, 0.12) 0%, rgba(5, 5, 5, 0.3) 100%);
  pointer-events: none;
}

body.page-id-117 .mia-home-hero__overlay {
  max-width: 700px;
  margin: 0 auto 0 clamp(24px, 5vw, 74px);
  padding: clamp(36px, 5vw, 56px);
  background: linear-gradient(180deg, rgba(8, 8, 8, 0.72) 0%, rgba(8, 8, 8, 0.52) 100%);
  border: 1px solid rgba(255, 255, 255, 0.09);
  box-shadow: 0 28px 80px rgba(0, 0, 0, 0.42);
  backdrop-filter: blur(10px);
}

body.page-id-117 .mia-home-hero__eyebrow {
  margin-bottom: 16px;
  color: rgba(255, 255, 255, 0.72);
  font-size: 0.82rem;
  letter-spacing: 0.28em;
  text-transform: uppercase;
}

body.page-id-117 .mia-home-hero__title {
  max-width: 12ch;
  margin-bottom: 18px;
  font-size: clamp(2.8rem, 6vw, 5.5rem);
  line-height: 0.98;
  letter-spacing: -0.04em;
}

body.page-id-117 .mia-home-hero__lede {
  max-width: 56ch;
  margin-bottom: 28px;
  color: rgba(255, 255, 255, 0.82);
  font-size: clamp(1rem, 1.5vw, 1.14rem);
  line-height: 1.65;
}

body.page-id-117 .mia-home-hero__actions {
  gap: 14px;
  margin-bottom: 24px;
}

body.page-id-117 .mia-home-hero__button {
  min-width: 170px;
  padding: 15px 24px;
  border-radius: 999px;
  font-size: 0.88rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

body.page-id-117 .mia-home-hero__button--primary {
  background: #ffffff;
  color: #060606;
}

body.page-id-117 .mia-home-hero__button--primary:hover {
  background: #ffd0c6;
  color: #060606;
}

body.page-id-117 .mia-home-hero__button--secondary {
  background: transparent;
  border-color: rgba(255, 255, 255, 0.2);
  color: #ffffff;
}

body.page-id-117 .mia-home-hero__button--secondary:hover {
  border-color: rgba(255, 208, 198, 0.45);
  background: rgba(255, 208, 198, 0.12);
  color: #ffffff;
}

body.page-id-117 .mia-home-hero__proof {
  gap: 10px;
}

body.page-id-117 .mia-home-hero__proof span {
  padding: 10px 16px;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  background: rgba(255, 255, 255, 0.06);
  color: rgba(255, 255, 255, 0.8);
  font-size: 0.76rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

body.page-id-117 .elementor-section.elementor-element-d5554a6 {
  padding-top: clamp(76px, 9vw, 118px) !important;
  padding-bottom: clamp(70px, 8vw, 108px) !important;
  background: #040404;
}

body.page-id-117 .elementor-element.elementor-element-b76cdf5 .elementor-heading-title {
  letter-spacing: 0.24em;
  text-transform: uppercase;
}

body.page-id-117 .elementor-element.elementor-element-12de8cd .elementor-heading-title {
  max-width: 11ch;
  margin-inline: auto;
  line-height: 0.98;
  letter-spacing: -0.04em;
}

body.page-id-117 .elementor-element.elementor-element-6547abc {
  margin-top: 24px;
}

body.page-id-117 .elementor-element.elementor-element-6547abc .eael-product-grid .woocommerce ul.products {
  gap: 24px 20px;
}

body.page-id-117 .elementor-element.elementor-element-6547abc .eael-product-grid .woocommerce ul.products li.product {
  background: linear-gradient(180deg, #0b0b0b 0%, #050505 100%);
  border: 1px solid rgba(255, 255, 255, 0.08);
  box-shadow: none;
}

body.page-id-117 .elementor-element.elementor-element-6547abc .eael-product-grid .woocommerce ul.products li.product:hover {
  transform: translateY(-4px);
  border-color: rgba(255, 208, 198, 0.22);
  box-shadow: 0 24px 44px rgba(0, 0, 0, 0.28);
}

body.page-id-117 .elementor-element.elementor-element-6547abc .eael-product-wrap .icons-wrap li:not(.add-to-cart) {
  display: none !important;
}

body.page-id-117 .elementor-element.elementor-element-6547abc .eael-product-image-wrap {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.02) 0%, rgba(255, 255, 255, 0.01) 100%);
}

body.page-id-117 .elementor-element.elementor-element-6547abc .eael-product-grid .eael-product-wrap .icons-wrap li.add-to-cart a {
  border: 1px solid rgba(255, 255, 255, 0.14);
  background: #111111;
  color: #ffffff;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

body.page-id-117 .elementor-element.elementor-element-6547abc .eael-product-grid .eael-product-wrap .icons-wrap li.add-to-cart a:hover {
  background: #ffd0c6;
  border-color: #ffd0c6;
  color: #060606;
}

body.page-id-117 .elementor-section.elementor-element-5440052,
body.page-id-117 .elementor-section.elementor-element-b98b75f {
  padding-inline: 18px;
}

body.page-id-117 .elementor-section.elementor-element-5440052 {
  padding-top: clamp(72px, 8vw, 108px) !important;
  padding-bottom: 18px !important;
}

body.page-id-117 .elementor-section.elementor-element-b98b75f {
  margin-top: -20px;
  padding-top: 0 !important;
  padding-bottom: clamp(76px, 8vw, 112px) !important;
}

body.page-id-117 .elementor-section.elementor-element-5440052 > .elementor-container,
body.page-id-117 .elementor-section.elementor-element-b98b75f > .elementor-container {
  max-width: 920px !important;
  min-height: auto !important;
}

body.page-id-117 .elementor-element.elementor-element-e9cf24d .elementor-heading-title {
  max-width: 10ch;
  margin-inline: auto;
  line-height: 0.98;
  letter-spacing: -0.04em;
}

body.page-id-117 .elementor-element.elementor-element-3f938e7,
body.page-id-117 .elementor-element.elementor-element-265abca {
  max-width: 760px;
  margin-inline: auto;
}

body.page-id-117 .elementor-element.elementor-element-3f938e7 p,
body.page-id-117 .elementor-element.elementor-element-265abca p {
  margin-bottom: 0;
  line-height: 1.7;
}

body.page-id-117 .elementor-element.elementor-element-9e9b8d9 .elementor-heading-title {
  display: inline-block;
  padding: 14px 20px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.72);
  border: 1px solid rgba(0, 0, 0, 0.08);
  line-height: 1.35;
}

body.page-id-117 .elementor-section.elementor-element-84e8fa3 {
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  background: linear-gradient(180deg, #060606 0%, #101010 100%) !important;
}

body.page-id-117 .elementor-element.elementor-element-694f0437 {
  max-width: 560px;
  margin-inline: auto;
}

body.page-id-117 .elementor-element.elementor-element-694f0437 .wpr-mailchimp {
  padding: clamp(26px, 4vw, 36px);
  border: 1px solid rgba(255, 255, 255, 0.08);
  background: rgba(255, 255, 255, 0.03);
}

body.page-id-117 .elementor-element.elementor-element-694f0437 .wpr-mailchimp-header-title {
  letter-spacing: -0.03em;
}

body.page-id-117 .elementor-element.elementor-element-694f0437 .wpr-mailchimp-subscribe-btn {
  background: #ffffff !important;
  color: #060606 !important;
}

body.page-id-117 .elementor-element.elementor-element-694f0437 .wpr-mailchimp-subscribe-btn:hover {
  background: #ffd0c6 !important;
}

.elementor-location-header .elementor-container,
.ehf-header .elementor-container {
  max-width: 1380px;
}

.elementor-location-header .elementor-widget-image img,
.ehf-header .elementor-widget-image img {
  max-height: 84px;
  width: auto;
}

.elementor-location-header .elementor-social-icons-wrapper,
.ehf-header .elementor-social-icons-wrapper {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
}

.elementor-location-footer .elementor-container {
  max-width: 1180px;
}

.elementor-location-footer .elementor-widget-image img {
  max-width: 150px;
  width: 100%;
  height: auto;
}

.elementor-location-footer .hfe-nav-menu a {
  font-size: 0.86rem;
  letter-spacing: 0.12em;
}

.elementor-location-footer .elementor-widget-text-editor p {
  margin-bottom: 0;
}

@media (max-width: 1024px) {
  body.page-id-117 .mia-home-hero {
    min-height: clamp(480px, 72vh, 640px);
  }

  body.page-id-117 .mia-home-hero__overlay {
    margin: 0 auto;
    max-width: 640px;
  }

  body.page-id-117 .elementor-element.elementor-element-12de8cd .elementor-heading-title,
  body.page-id-117 .elementor-element.elementor-element-e9cf24d .elementor-heading-title {
    max-width: none;
  }

  .elementor-location-header .elementor-social-icons-wrapper,
  .ehf-header .elementor-social-icons-wrapper {
    gap: 6px;
  }
}

@media (max-width: 767px) {
  body.page-id-117 .mia-home-hero {
    min-height: auto;
  }

  body.page-id-117 .mia-home-hero__viewer {
    min-height: 340px;
  }

  body.page-id-117 .mia-home-hero__viewer::after {
    background: linear-gradient(180deg, rgba(5, 5, 5, 0.18) 0%, rgba(5, 5, 5, 0.66) 50%, rgba(5, 5, 5, 0.88) 100%);
  }

  body.page-id-117 .mia-home-hero__overlay {
    margin: -56px 0 0;
    padding: 24px 20px 22px;
    border-radius: 22px;
  }

  body.page-id-117 .mia-home-hero__title {
    max-width: none;
    font-size: clamp(2.2rem, 11vw, 3.4rem);
  }

  body.page-id-117 .mia-home-hero__lede {
    font-size: 0.98rem;
    line-height: 1.6;
  }

  body.page-id-117 .mia-home-hero__proof span {
    width: 100%;
    justify-content: center;
    text-align: center;
  }

  body.page-id-117 .elementor-section.elementor-element-d5554a6 {
    padding-top: 56px !important;
    padding-bottom: 64px !important;
  }

  body.page-id-117 .elementor-element.elementor-element-6547abc .eael-product-grid .woocommerce ul.products {
    gap: 18px;
  }

  body.page-id-117 .elementor-element.elementor-element-6547abc .product-details-wrap {
    gap: 8px;
  }

  body.page-id-117 .elementor-section.elementor-element-5440052 {
    padding-top: 58px !important;
    padding-bottom: 8px !important;
  }

  body.page-id-117 .elementor-section.elementor-element-b98b75f {
    margin-top: -6px;
    padding-bottom: 68px !important;
  }

  body.page-id-117 .elementor-element.elementor-element-9e9b8d9 .elementor-heading-title {
    padding: 12px 16px;
    font-size: 1rem;
  }

  body.page-id-117 .elementor-element.elementor-element-694f0437 .wpr-mailchimp {
    padding: 22px 18px;
  }

  .elementor-location-header .elementor-social-icons-wrapper,
  .ehf-header .elementor-social-icons-wrapper {
    display: none;
  }

  .elementor-location-header .hfe-nav-menu__toggle,
  .ehf-header .hfe-nav-menu__toggle {
    margin-left: auto;
  }

  .elementor-location-footer {
    padding-bottom: 20px;
  }
}

/* -------------------------------------------------------------------------- */
/* Phase 4 archive + PDP polish (2026-03-29)                                  */
/* Storefront-only: Elementor templates 1214/1212, no WooCommerce logic edits */
/* -------------------------------------------------------------------------- */
body.post-type-archive-product,
body.tax-product_cat,
body.tax-product_tag {
  background: #050505;
  color: #ffffff;
}

body.post-type-archive-product .elementor-section.elementor-element-2affc42b,
body.tax-product_cat .elementor-section.elementor-element-2affc42b,
body.tax-product_tag .elementor-section.elementor-element-2affc42b {
  padding-top: clamp(48px, 6vw, 88px);
  padding-bottom: clamp(72px, 7vw, 108px);
  background: linear-gradient(180deg, #050505 0%, #0b0b0b 100%);
}

body.post-type-archive-product .elementor-element.elementor-element-a1214e1 .elementor-heading-title,
body.tax-product_cat .elementor-element.elementor-element-a1214e1 .elementor-heading-title,
body.tax-product_tag .elementor-element.elementor-element-a1214e1 .elementor-heading-title {
  letter-spacing: 0.24em;
  text-transform: uppercase;
}

body.post-type-archive-product .elementor-element.elementor-element-a1214t1 .elementor-heading-title,
body.tax-product_cat .elementor-element.elementor-element-a1214t1 .elementor-heading-title,
body.tax-product_tag .elementor-element.elementor-element-a1214t1 .elementor-heading-title {
  max-width: 11ch;
  margin-inline: auto;
  line-height: 0.96;
  letter-spacing: -0.04em;
}

body.post-type-archive-product .elementor-element.elementor-element-a1214x1,
body.tax-product_cat .elementor-element.elementor-element-a1214x1,
body.tax-product_tag .elementor-element.elementor-element-a1214x1 {
  max-width: 760px;
  margin: 0 auto clamp(28px, 4vw, 44px);
}

body.post-type-archive-product .woocommerce-result-count,
body.post-type-archive-product .woocommerce-ordering,
body.tax-product_cat .woocommerce-result-count,
body.tax-product_cat .woocommerce-ordering,
body.tax-product_tag .woocommerce-result-count,
body.tax-product_tag .woocommerce-ordering {
  color: rgba(255, 255, 255, 0.68);
}

body.post-type-archive-product .woocommerce-result-count,
body.tax-product_cat .woocommerce-result-count,
body.tax-product_tag .woocommerce-result-count {
  margin-bottom: 12px;
  font-size: 0.88rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

body.post-type-archive-product .woocommerce-ordering .orderby,
body.tax-product_cat .woocommerce-ordering .orderby,
body.tax-product_tag .woocommerce-ordering .orderby {
  min-height: 46px;
  padding: 10px 16px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.04);
  color: #ffffff;
}

body.post-type-archive-product ul.products,
body.tax-product_cat ul.products,
body.tax-product_tag ul.products {
  gap: 24px 20px;
  margin-top: clamp(18px, 3vw, 34px);
}

body.post-type-archive-product ul.products li.product,
body.tax-product_cat ul.products li.product,
body.tax-product_tag ul.products li.product {
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 22px;
  background: linear-gradient(180deg, #0d0d0d 0%, #060606 100%);
  box-shadow: none;
}

body.post-type-archive-product ul.products li.product:hover,
body.tax-product_cat ul.products li.product:hover,
body.tax-product_tag ul.products li.product:hover {
  transform: translateY(-4px);
  border-color: rgba(255, 208, 198, 0.2);
  box-shadow: 0 28px 44px rgba(0, 0, 0, 0.32);
}

body.post-type-archive-product ul.products li.product a.woocommerce-LoopProduct-link,
body.tax-product_cat ul.products li.product a.woocommerce-LoopProduct-link,
body.tax-product_tag ul.products li.product a.woocommerce-LoopProduct-link {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 18px 18px 0;
}

body.post-type-archive-product ul.products li.product img,
body.tax-product_cat ul.products li.product img,
body.tax-product_tag ul.products li.product img {
  aspect-ratio: 1 / 1;
  object-fit: contain;
  padding: 14px;
  background: radial-gradient(circle at top, rgba(255, 255, 255, 0.06) 0%, rgba(255, 255, 255, 0.01) 72%);
}

body.post-type-archive-product ul.products li.product .woocommerce-loop-product__title,
body.tax-product_cat ul.products li.product .woocommerce-loop-product__title,
body.tax-product_tag ul.products li.product .woocommerce-loop-product__title {
  color: #ffffff;
  margin-bottom: 8px;
}

body.post-type-archive-product ul.products li.product .price,
body.tax-product_cat ul.products li.product .price,
body.tax-product_tag ul.products li.product .price {
  color: rgba(255, 255, 255, 0.92);
  margin-bottom: 16px;
}

body.post-type-archive-product span.onsale,
body.tax-product_cat span.onsale,
body.tax-product_tag span.onsale,
body.post-type-archive-product .eael-product-grid span.onsale,
body.tax-product_cat .eael-product-grid span.onsale,
body.tax-product_tag .eael-product-grid span.onsale {
  min-height: auto;
  min-width: 0;
  padding: 8px 12px;
  border-radius: 999px;
  border: 1px solid rgba(255, 208, 198, 0.2);
  background: rgba(255, 208, 198, 0.12);
  color: #ffd0c6;
  box-shadow: none;
}

body.post-type-archive-product a.button.product_type_variable,
body.post-type-archive-product a.button.product_type_simple,
body.tax-product_cat a.button.product_type_variable,
body.tax-product_cat a.button.product_type_simple,
body.tax-product_tag a.button.product_type_variable,
body.tax-product_tag a.button.product_type_simple {
  display: inline-flex;
  justify-content: center;
  width: calc(100% - 36px);
  margin: 0 18px 18px;
  min-height: 46px;
  padding: 12px 18px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 999px;
  background: #111111;
  color: #ffffff;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

body.post-type-archive-product a.button.product_type_variable:hover,
body.post-type-archive-product a.button.product_type_simple:hover,
body.tax-product_cat a.button.product_type_variable:hover,
body.tax-product_cat a.button.product_type_simple:hover,
body.tax-product_tag a.button.product_type_variable:hover,
body.tax-product_tag a.button.product_type_simple:hover {
  background: #ffffff;
  border-color: #ffffff;
  color: #060606;
}

body.single-product {
  background: #050505;
  color: #ffffff;
}

body.single-product .elementor-section.elementor-element-2d82b80c {
  padding-top: clamp(42px, 6vw, 88px);
  padding-bottom: clamp(54px, 6vw, 92px);
  background: linear-gradient(180deg, #050505 0%, #0a0a0a 100%);
}

body.single-product .elementor-element.elementor-element-268bc6b4 > .elementor-widget-wrap {
  max-width: 640px;
  padding: clamp(24px, 4vw, 40px);
  border: 1px solid rgba(255, 255, 255, 0.08);
  background: rgba(255, 255, 255, 0.03);
  box-shadow: 0 28px 60px rgba(0, 0, 0, 0.32);
}

body.single-product .elementor-element.elementor-element-20c793cb > .elementor-widget-wrap {
  min-height: clamp(440px, 56vw, 720px);
  border: 1px solid rgba(255, 255, 255, 0.08);
  background-color: rgba(255, 255, 255, 0.02);
}

body.single-product .elementor-element.elementor-element-138fc757 .woocommerce-breadcrumb,
body.single-product .elementor-element.elementor-element-138fc757 .woocommerce-breadcrumb a {
  color: rgba(255, 255, 255, 0.58) !important;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

body.single-product .elementor-element.elementor-element-4ae75ba2 .product_title {
  color: #ffffff;
  line-height: 0.98;
  letter-spacing: -0.04em;
}

body.single-product .elementor-element.elementor-element-3f4b9992 {
  max-width: 56ch;
}

body.single-product .elementor-element.elementor-element-15d6b58b .price {
  color: #ffffff;
  line-height: 1.15;
}

body.single-product .elementor-element.elementor-element-a1212p1 {
  margin: 8px 0 20px;
}

body.single-product .elementor-element.elementor-element-a1212p1 .elementor-widget-container {
  padding: 14px 16px;
  border-left: 2px solid #ffd0c6;
  background: rgba(255, 255, 255, 0.04);
}

body.single-product .elementor-element.elementor-element-a1212p1 p,
body.single-product .elementor-element.elementor-element-a1212p1 a {
  color: #e6e6e6;
}

body.single-product .elementor-element.elementor-element-a1212p1 a:hover {
  color: #ffd0c6;
}

body.single-product .variations {
  margin-bottom: 18px;
}

body.single-product .variations select,
body.single-product .quantity .qty {
  min-height: 48px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 14px;
  background: #0d0d0d;
  color: #ffffff;
}

body.single-product .woocommerce button.single_add_to_cart_button.button.alt,
body.single-product .woocommerce .single_add_to_cart_button.button.alt {
  min-height: 50px;
  padding: 14px 24px;
  border-radius: 999px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

body.single-product .elementor-section.elementor-element-34c7f3cc {
  padding-top: clamp(56px, 6vw, 88px);
  padding-bottom: clamp(72px, 7vw, 108px);
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  background: linear-gradient(180deg, #060606 0%, #0b0b0b 100%);
}

body.single-product .elementor-element.elementor-element-6fbcd3c .eael-cat-tab {
  display: none;
}

body.single-product .elementor-element.elementor-element-6fbcd3c .eael-product-wrap,
body.single-product .elementor-element.elementor-element-e2b8267 ul.products li.product {
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 20px;
  background: linear-gradient(180deg, #0d0d0d 0%, #060606 100%);
  overflow: hidden;
  box-shadow: none;
}

body.single-product .elementor-element.elementor-element-6fbcd3c .eael-product-details-wrap,
body.single-product .elementor-element.elementor-element-e2b8267 ul.products li.product {
  color: #ffffff;
}

body.single-product .elementor-element.elementor-element-6fbcd3c .eael-product-title,
body.single-product .elementor-element.elementor-element-e2b8267 .woocommerce-loop-product__title,
body.single-product .elementor-element.elementor-element-e2b8267 .price {
  color: #ffffff;
}

body.single-product .elementor-element.elementor-element-6fbcd3c a.button,
body.single-product .elementor-element.elementor-element-e2b8267 a.button {
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  background: #111111;
  color: #ffffff;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

body.single-product .elementor-element.elementor-element-6fbcd3c a.button:hover,
body.single-product .elementor-element.elementor-element-e2b8267 a.button:hover {
  background: #ffffff;
  color: #060606;
}

@media (max-width: 767px) {
  body.post-type-archive-product .elementor-section.elementor-element-2affc42b,
  body.tax-product_cat .elementor-section.elementor-element-2affc42b,
  body.tax-product_tag .elementor-section.elementor-element-2affc42b {
    padding-top: 34px;
    padding-bottom: 64px;
  }

  body.post-type-archive-product .elementor-element.elementor-element-a1214t1 .elementor-heading-title,
  body.tax-product_cat .elementor-element.elementor-element-a1214t1 .elementor-heading-title,
  body.tax-product_tag .elementor-element.elementor-element-a1214t1 .elementor-heading-title {
    max-width: none;
  }

  body.post-type-archive-product ul.products,
  body.tax-product_cat ul.products,
  body.tax-product_tag ul.products {
    gap: 18px;
  }

  body.post-type-archive-product a.button.product_type_variable,
  body.post-type-archive-product a.button.product_type_simple,
  body.tax-product_cat a.button.product_type_variable,
  body.tax-product_cat a.button.product_type_simple,
  body.tax-product_tag a.button.product_type_variable,
  body.tax-product_tag a.button.product_type_simple {
    width: calc(100% - 28px);
    margin: 0 14px 14px;
  }

  body.single-product .elementor-section.elementor-element-2d82b80c {
    padding-top: 28px;
    padding-bottom: 54px;
  }

  body.single-product .elementor-element.elementor-element-268bc6b4 > .elementor-widget-wrap {
    padding: 20px 18px;
  }

  body.single-product .elementor-element.elementor-element-20c793cb > .elementor-widget-wrap {
    min-height: 320px;
  }

  body.single-product .elementor-element.elementor-element-a1212p1 .elementor-widget-container {
    padding: 12px 14px;
  }

  body.single-product .elementor-section.elementor-element-34c7f3cc {
    padding-top: 46px;
    padding-bottom: 68px;
  }
}

/* -------------------------------------------------------------------------- */
/* Phase 5 PDP decision-area + side-cart polish (2026-03-29)                 */
/* Storefront-only: template 1212 presentation refinement, CSS-only cart UI  */
/* -------------------------------------------------------------------------- */
body.single-product .elementor-element.elementor-element-2d82b80c > .elementor-container {
  align-items: stretch;
  gap: clamp(22px, 3vw, 42px);
}

body.single-product .elementor-element.elementor-element-268bc6b4 > .elementor-widget-wrap {
  gap: 10px;
}

body.single-product .elementor-element.elementor-element-138fc757 {
  opacity: 0.9;
}

body.single-product .woocommerce-breadcrumb {
  font-size: 0.72rem;
}

body.single-product .woocommerce-breadcrumb a[href*="/product-category/uncategorized/"] {
  opacity: 0.28;
  pointer-events: none;
}

body.single-product .elementor-element.elementor-element-4ae75ba2 {
  margin-bottom: 6px;
}

body.single-product .elementor-element.elementor-element-4ae75ba2 .product_title {
  max-width: 12ch;
}

body.single-product .elementor-element.elementor-element-15d6b58b {
  margin-bottom: 4px;
}

body.single-product .elementor-element.elementor-element-15d6b58b .price del {
  opacity: 0.5;
}

body.single-product .elementor-element.elementor-element-15d6b58b .price ins {
  text-decoration: none;
}

body.single-product .elementor-element.elementor-element-a1212p1 {
  margin-top: 6px;
  margin-bottom: 14px;
}

body.single-product .elementor-element.elementor-element-a1212p1 .elementor-widget-container {
  border-radius: 16px;
  border-left-width: 3px;
}

body.single-product .elementor-element.elementor-element-a1212p1 p {
  margin-bottom: 0;
  line-height: 1.65;
}

body.single-product .variations_form {
  margin-top: 6px;
}

body.single-product .variations tbody,
body.single-product .variations tr {
  display: block;
  width: 100%;
}

body.single-product .variations tr {
  margin-bottom: 14px;
}

body.single-product .variations th.label,
body.single-product .variations td.value {
  display: block;
  width: 100%;
  text-align: left;
}

body.single-product .variations th.label {
  margin-bottom: 8px;
  color: rgba(255, 255, 255, 0.68);
  font-size: 0.74rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

body.single-product .variations select {
  width: 100%;
  padding: 12px 14px;
}

body.single-product .reset_variations {
  color: rgba(255, 255, 255, 0.6);
  font-size: 0.78rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

body.single-product .single_variation_wrap {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

body.single-product .woocommerce-variation-price,
body.single-product .woocommerce-variation-availability {
  color: rgba(255, 255, 255, 0.84);
}

body.single-product .variations_button {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
}

body.single-product .quantity {
  margin: 0;
}

body.single-product .quantity .qty {
  width: 88px;
  text-align: center;
}

body.single-product .woocommerce button.single_add_to_cart_button.button.alt,
body.single-product .woocommerce .single_add_to_cart_button.button.alt {
  flex: 1 1 220px;
  justify-content: center;
}

body.single-product .product_meta {
  margin-top: 14px;
  color: rgba(255, 255, 255, 0.52);
  font-size: 0.78rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

body.single-product .product_meta a {
  color: rgba(255, 255, 255, 0.62);
}

body.single-product .product_meta a:hover {
  color: #ffd0c6;
}

body.single-product .elementor-element.elementor-element-6fbcd3c .eael-product-item,
body.single-product .elementor-element.elementor-element-e2b8267 ul.products li.product {
  transition: transform 0.22s ease, border-color 0.22s ease, box-shadow 0.22s ease;
}

body.single-product .elementor-element.elementor-element-6fbcd3c .eael-product-item:hover,
body.single-product .elementor-element.elementor-element-e2b8267 ul.products li.product:hover {
  transform: translateY(-3px);
  border-color: rgba(255, 208, 198, 0.18);
  box-shadow: 0 24px 36px rgba(0, 0, 0, 0.26);
}

/* CSS-only side-cart refinement */
.xoo-wsc-basket,
.xoo-wsch-basket {
  background: #0b0b0b;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 999px;
  box-shadow: 0 18px 34px rgba(0, 0, 0, 0.28);
}

.xoo-wsc-items-count,
.xoo-wsch-items-count {
  background: #ffd0c6;
  color: #060606;
  border-radius: 999px;
  font-weight: 700;
}

.xoo-wsc-container,
.xoo-wsc-modal {
  background: #0a0a0a;
}

.xoo-wsc-header,
.xoo-wsc-footer,
.xoo-wsc-body {
  background: #0a0a0a;
  color: #ffffff;
}

.xoo-wsch-text,
.xoo-wsc-empty-cart,
.xoo-wsc-notices {
  color: rgba(255, 255, 255, 0.86);
}

.xoo-wsc-ft-buttons-cont,
.xoo-wsc-empty-cart {
  gap: 12px;
}

.xoo-wsc-btn,
.xoo-wsc-ft-btn {
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 999px;
  background: #111111;
  color: #ffffff;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.xoo-wsc-btn:hover,
.xoo-wsc-ft-btn:hover {
  background: #ffffff;
  color: #060606;
}

.xoo-wsch-text {
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

@media (max-width: 767px) {
  body.single-product .elementor-element.elementor-element-4ae75ba2 .product_title {
    max-width: none;
  }

  body.single-product .variations_button {
    gap: 10px;
  }

  body.single-product .quantity,
  body.single-product .woocommerce button.single_add_to_cart_button.button.alt,
  body.single-product .woocommerce .single_add_to_cart_button.button.alt {
    width: 100%;
  }

  body.single-product .quantity .qty {
    width: 100%;
  }

  .xoo-wsc-basket {
    right: 14px;
    bottom: 14px;
  }
}

/* ==========================================================================
   Final storefront consistency polish (2026-03-29)
   Cross-storefront CSS-only refinement for approved safe surfaces only.
   Keeps Woo behavior intact while tightening rhythm, typography, and chrome.
   ========================================================================== */

body.page-id-117 .mia-home-hero__button,
body.post-type-archive-product a.button.product_type_variable,
body.post-type-archive-product a.button.product_type_simple,
body.tax-product_cat a.button.product_type_variable,
body.tax-product_cat a.button.product_type_simple,
body.tax-product_tag a.button.product_type_variable,
body.tax-product_tag a.button.product_type_simple,
body.single-product .woocommerce button.single_add_to_cart_button.button.alt,
body.single-product .woocommerce .single_add_to_cart_button.button.alt,
.xoo-wsc-btn,
.xoo-wsc-ft-btn {
  min-height: 48px;
  padding: 14px 22px;
  font-size: 0.72rem;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  transition: transform 0.22s ease, border-color 0.22s ease, box-shadow 0.22s ease, background-color 0.22s ease, color 0.22s ease;
}

body.page-id-117 .mia-home-hero__button:hover,
body.post-type-archive-product a.button.product_type_variable:hover,
body.post-type-archive-product a.button.product_type_simple:hover,
body.tax-product_cat a.button.product_type_variable:hover,
body.tax-product_cat a.button.product_type_simple:hover,
body.tax-product_tag a.button.product_type_variable:hover,
body.tax-product_tag a.button.product_type_simple:hover,
body.single-product .woocommerce button.single_add_to_cart_button.button.alt:hover,
body.single-product .woocommerce .single_add_to_cart_button.button.alt:hover,
.xoo-wsc-btn:hover,
.xoo-wsc-ft-btn:hover {
  transform: translateY(-1px);
  box-shadow: 0 16px 28px rgba(0, 0, 0, 0.22);
}

body.page-id-117 .mia-home-hero__viewer {
  filter: saturate(0.88) contrast(1.04);
}

body.page-id-117 .elementor-element.elementor-element-694f0437 .elementor-widget-container {
  max-width: 720px;
  margin-inline: auto;
}

body.page-id-117 .elementor-element.elementor-element-694f0437 p {
  max-width: 44ch;
  margin-inline: auto;
}

body.post-type-archive-product .woocommerce-result-count,
body.tax-product_cat .woocommerce-result-count,
body.tax-product_tag .woocommerce-result-count {
  color: rgba(255, 255, 255, 0.52);
  font-size: 0.72rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

body.post-type-archive-product .woocommerce-ordering,
body.tax-product_cat .woocommerce-ordering,
body.tax-product_tag .woocommerce-ordering {
  margin-bottom: 26px;
}

body.post-type-archive-product .woocommerce-ordering .orderby,
body.tax-product_cat .woocommerce-ordering .orderby,
body.tax-product_tag .woocommerce-ordering .orderby {
  min-height: 46px;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  background: #111111;
  color: rgba(255, 255, 255, 0.86);
  font-size: 0.72rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  padding-inline: 18px 42px;
}

body.post-type-archive-product ul.products li.product,
body.tax-product_cat ul.products li.product,
body.tax-product_tag ul.products li.product {
  padding: 18px 18px 22px;
}

body.post-type-archive-product ul.products li.product a img,
body.tax-product_cat ul.products li.product a img,
body.tax-product_tag ul.products li.product a img {
  aspect-ratio: 4 / 5;
  object-fit: cover;
  background: #0f0f0f;
}

body.post-type-archive-product .woocommerce-loop-product__title,
body.tax-product_cat .woocommerce-loop-product__title,
body.tax-product_tag .woocommerce-loop-product__title {
  min-height: 2.8em;
  margin-bottom: 10px;
  font-size: 1rem;
  line-height: 1.35;
  letter-spacing: -0.01em;
}

body.post-type-archive-product .price,
body.tax-product_cat .price,
body.tax-product_tag .price {
  margin-bottom: 16px;
  font-size: 0.96rem;
}

body.post-type-archive-product span.onsale,
body.tax-product_cat span.onsale,
body.tax-product_tag span.onsale {
  padding: 7px 12px;
  border: 0;
  background: #f0d6cf;
  color: #0a0a0a;
  font-size: 0.64rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  box-shadow: none;
}

body.single-product .woocommerce-breadcrumb {
  max-width: 38rem;
  line-height: 1.55;
}

body.single-product .elementor-element.elementor-element-4ae75ba2 .product_title {
  letter-spacing: -0.035em;
  line-height: 1.02;
}

body.single-product .elementor-element.elementor-element-15d6b58b .price {
  line-height: 1.12;
}

body.single-product .elementor-element.elementor-element-3f4b9992 .woocommerce-product-details__short-description {
  max-width: 56ch;
}

body.single-product .elementor-element.elementor-element-a1212p1 .elementor-widget-container {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.025));
}

body.single-product .variations select,
body.single-product .quantity .qty {
  min-height: 48px;
  border-radius: 14px;
}

body.single-product .product_meta {
  padding-top: 16px;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
}

body.single-product .elementor-element.elementor-element-6fbcd3c,
body.single-product .elementor-element.elementor-element-e2b8267 {
  margin-top: 8px;
}

.xoo-wsc-basket,
.xoo-wsch-basket {
  backdrop-filter: blur(12px);
}

.xoo-wsc-header,
.xoo-wsc-footer {
  border-color: rgba(255, 255, 255, 0.08);
}

.xoo-wsch-text {
  font-size: 0.66rem;
}

.xoo-wsc-body {
  scrollbar-color: rgba(255, 208, 198, 0.36) #0a0a0a;
}

@media (max-width: 767px) {
  body.page-id-117 .mia-home-hero__viewer {
    opacity: 0.78;
  }

  body.page-id-117 .elementor-element.elementor-element-694f0437 .elementor-widget-container {
    max-width: none;
  }

  body.post-type-archive-product .woocommerce-ordering .orderby,
  body.tax-product_cat .woocommerce-ordering .orderby,
  body.tax-product_tag .woocommerce-ordering .orderby,
  body.post-type-archive-product a.button.product_type_variable,
  body.post-type-archive-product a.button.product_type_simple,
  body.tax-product_cat a.button.product_type_variable,
  body.tax-product_cat a.button.product_type_simple,
  body.tax-product_tag a.button.product_type_variable,
  body.tax-product_tag a.button.product_type_simple {
    width: 100%;
  }

  body.post-type-archive-product ul.products li.product,
  body.tax-product_cat ul.products li.product,
  body.tax-product_tag ul.products li.product {
    padding: 16px 14px 18px;
  }

  body.single-product .elementor-element.elementor-element-3f4b9992 .woocommerce-product-details__short-description {
    max-width: none;
  }

  body.single-product .woocommerce-breadcrumb {
    max-width: none;
  }
}

/* ==========================================================================
   Miami Science homepage architecture redesign (2026-03-29)
   Safe surfaces only: Home 117, Header 320, Footer 302.
   White-background / black-outline system. No commerce logic changes.
   ========================================================================== */

.woocommerce-store-notice.demo_store {
  display: none !important;
}

header#masthead,
.elementor-location-header,
.elementor-location-footer {
  background: #ffffff;
  color: #111111;
}

header#masthead {
  border-bottom: 1px solid #111111;
}

.elementor-location-header .elementor-element.elementor-element-m320u001 {
  border-bottom: 1px solid #111111;
  background: #ffffff;
}

.mia-utility-strip {
  padding: 10px 18px;
  text-align: center;
}

.mia-utility-strip p {
  margin: 0;
  color: #111111;
  font-size: 0.75rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.elementor-location-header .elementor-element.elementor-element-5eb880a {
  background: #ffffff;
}

.elementor-location-header .elementor-element.elementor-element-5eb880a > .elementor-container {
  min-height: 88px;
  align-items: center;
  gap: 22px;
}

.elementor-location-header .elementor-element.elementor-element-e097c77 img {
  max-width: 96px;
  filter: saturate(0) contrast(1.1);
}

.elementor-location-header .elementor-element.elementor-element-8a9a254 .hfe-nav-menu__layout-horizontal,
.elementor-location-header .elementor-element.elementor-element-8a9a254 nav ul {
  gap: 0;
}

.elementor-location-header .elementor-element.elementor-element-8a9a254 a,
.elementor-location-header .elementor-element.elementor-element-8a9a254 .menu-item a {
  color: #111111 !important;
  font-size: 0.84rem;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  padding: 14px 18px !important;
}

.elementor-location-header .elementor-element.elementor-element-8a9a254 a:hover,
.elementor-location-header .elementor-element.elementor-element-8a9a254 .current-menu-item > a {
  color: #111111 !important;
  opacity: 0.66;
}

.elementor-location-header .elementor-element.elementor-element-8a9a254 .hfe-nav-menu-icon,
.elementor-location-header .elementor-element.elementor-element-8a9a254 .hfe-menu-toggle {
  color: #111111;
}

.mia-header-account {
  display: flex;
  justify-content: flex-end;
}

.mia-header-account a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 0 18px;
  border: 1px solid #111111;
  border-radius: 10px;
  background: #ffffff;
  color: #111111;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  text-decoration: none;
}

.mia-header-account a:hover {
  background: #111111;
  color: #ffffff;
}

body.page-id-117,
body.page-id-117 #page,
body.page-id-117 #content,
body.page-id-117 .site-content {
  background: #ffffff;
  color: #111111;
}

body.page-id-117 .elementor-element.elementor-element-41027a6e12,
body.page-id-117 .elementor-element.elementor-element-d5554a6,
body.page-id-117 .elementor-element.elementor-element-5440052,
body.page-id-117 .elementor-element.elementor-element-b98b75f,
body.page-id-117 .elementor-element.elementor-element-84e8fa3 {
  background: #ffffff;
}

body.page-id-117 .mia-home-v4 {
  display: grid;
  gap: 22px;
}

body.page-id-117 .mia-home-v4__trust,
body.page-id-117 .mia-home-v4__shortcuts,
body.page-id-117 .mia-home-v4__proof {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

body.page-id-117 .mia-home-v4__trust span,
body.page-id-117 .mia-home-v4__shortcut,
body.page-id-117 .mia-home-v4__proof-item {
  border: 1px solid #111111;
  border-radius: 12px;
  background: #ffffff;
}

body.page-id-117 .mia-home-v4__trust span {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 56px;
  padding: 12px 16px;
  color: #111111;
  font-size: 0.77rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-align: center;
}

body.page-id-117 .mia-home-v4__shortcut {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 66px;
  padding: 14px 18px;
  color: #111111;
  font-size: 0.92rem;
  font-weight: 600;
  letter-spacing: -0.01em;
  text-decoration: none;
}

body.page-id-117 .mia-home-v4__shortcut:hover {
  background: #111111;
  color: #ffffff;
}

body.page-id-117 .mia-home-v4__hero {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(320px, 0.9fr);
  gap: 24px;
  align-items: stretch;
}

body.page-id-117 .mia-home-v4__copy,
body.page-id-117 .mia-home-v4__visual-frame {
  border: 1px solid #111111;
  border-radius: 18px;
  background: #ffffff;
}

body.page-id-117 .mia-home-v4__copy {
  padding: 36px 36px 32px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

body.page-id-117 .mia-home-v4__eyebrow {
  margin: 0 0 16px;
  color: #4a4a4a;
  font-size: 0.76rem;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

body.page-id-117 .mia-home-v4__title {
  margin: 0 0 18px;
  color: #111111;
  font-size: clamp(2.45rem, 5vw, 4.4rem);
  line-height: 0.98;
  letter-spacing: -0.05em;
  max-width: 11ch;
}

body.page-id-117 .mia-home-v4__lede {
  margin: 0 0 24px;
  max-width: 44ch;
  color: #4a4a4a;
  font-size: 1rem;
  line-height: 1.7;
}

body.page-id-117 .mia-home-v4__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

body.page-id-117 .mia-home-v4__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 50px;
  padding: 0 22px;
  border: 1px solid #111111;
  border-radius: 10px;
  color: #111111;
  font-size: 0.78rem;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  text-decoration: none;
}

body.page-id-117 .mia-home-v4__button--primary {
  background: #111111;
  color: #ffffff;
}

body.page-id-117 .mia-home-v4__button--secondary {
  background: #ffffff;
  color: #111111;
}

body.page-id-117 .mia-home-v4__button:hover {
  transform: translateY(-1px);
}

body.page-id-117 .mia-home-v4__visual-frame {
  min-height: 440px;
  overflow: hidden;
}

body.page-id-117 .mia-home-v4__visual-frame hana-viewer {
  width: 100%;
  height: 100%;
  display: block;
  filter: grayscale(1) saturate(0) contrast(1.04);
  opacity: 0.74;
}

body.page-id-117 .mia-home-v4__proof-item {
  min-height: 92px;
  padding: 18px 18px 16px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 8px;
}

body.page-id-117 .mia-home-v4__proof-item strong {
  color: #111111;
  font-size: 0.88rem;
  font-weight: 600;
  letter-spacing: -0.01em;
}

body.page-id-117 .mia-home-v4__proof-item span {
  color: #4a4a4a;
  font-size: 0.86rem;
  line-height: 1.45;
}

body.page-id-117 .elementor-element.elementor-element-d5554a6 {
  padding-top: 18px;
}

body.page-id-117 .elementor-element.elementor-element-b76cdf5 .elementor-heading-title {
  color: #4a4a4a;
  font-size: 0.78rem;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

body.page-id-117 .elementor-element.elementor-element-12de8cd .elementor-heading-title,
body.page-id-117 .elementor-element.elementor-element-e9cf24d .elementor-heading-title,
body.page-id-117 .elementor-element.elementor-element-9e9b8d9 .elementor-heading-title {
  color: #111111 !important;
  text-shadow: none !important;
  -webkit-text-stroke: 0 !important;
  letter-spacing: -0.04em;
}

body.page-id-117 .elementor-element.elementor-element-12de8cd .elementor-heading-title {
  font-size: clamp(2rem, 4vw, 3.6rem);
  line-height: 1;
}

body.page-id-117 .elementor-element.elementor-element-6547abc .eael-product-grid .woocommerce ul.products {
  gap: 18px;
}

body.page-id-117 .elementor-element.elementor-element-6547abc .eael-product-grid .woocommerce ul.products li.product {
  border: 1px solid #111111;
  border-radius: 14px;
  background: #ffffff;
  box-shadow: none;
}

body.page-id-117 .elementor-element.elementor-element-6547abc .eael-product-title h2,
body.page-id-117 .elementor-element.elementor-element-6547abc .eael-product-price,
body.page-id-117 .elementor-element.elementor-element-6547abc .eael-product-price * {
  color: #111111 !important;
}

body.page-id-117 .elementor-element.elementor-element-6547abc .icons-wrap.block-style {
  display: none !important;
}

body.page-id-117 .elementor-element.elementor-element-6547abc .eael-product-wrap .icons-wrap li.add-to-cart a,
body.page-id-117 .elementor-element.elementor-element-6547abc a.button {
  border: 1px solid #111111 !important;
  border-radius: 10px !important;
  background: #111111 !important;
  color: #ffffff !important;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  box-shadow: none !important;
}

body.page-id-117 .elementor-element.elementor-element-6547abc span.onsale {
  border: 1px solid #111111;
  background: #111111;
  color: #ffffff;
  border-radius: 999px;
  box-shadow: none;
}

body.page-id-117 .elementor-element.elementor-element-5440052,
body.page-id-117 .elementor-element.elementor-element-b98b75f,
body.page-id-117 .elementor-element.elementor-element-84e8fa3 {
  padding-top: 10px;
}

body.page-id-117 .elementor-element.elementor-element-5440052 .elementor-column,
body.page-id-117 .elementor-element.elementor-element-b98b75f .elementor-column,
body.page-id-117 .elementor-element.elementor-element-84e8fa3 .elementor-column {
  border: 1px solid #111111;
  border-radius: 18px;
  background: #ffffff;
}

body.page-id-117 .elementor-element.elementor-element-5440052 .elementor-column-wrap,
body.page-id-117 .elementor-element.elementor-element-b98b75f .elementor-column-wrap,
body.page-id-117 .elementor-element.elementor-element-84e8fa3 .elementor-column-wrap,
body.page-id-117 .elementor-element.elementor-element-5440052 .elementor-widget-wrap,
body.page-id-117 .elementor-element.elementor-element-b98b75f .elementor-widget-wrap,
body.page-id-117 .elementor-element.elementor-element-84e8fa3 .elementor-widget-wrap {
  padding: 0;
}

body.page-id-117 .elementor-element.elementor-element-3f938e7,
body.page-id-117 .elementor-element.elementor-element-265abca {
  color: #4a4a4a;
}

body.page-id-117 .elementor-element.elementor-element-3f938e7 p,
body.page-id-117 .elementor-element.elementor-element-265abca p {
  color: #4a4a4a;
  font-size: 1rem;
  line-height: 1.7;
}

body.page-id-117 .elementor-element.elementor-element-265abca a {
  color: #111111;
  font-weight: 600;
}

body.page-id-117 .elementor-element.elementor-element-694f0437 .wpr-mailchimp-form {
  border: 1px solid #111111;
  border-radius: 18px;
  background: #ffffff;
  padding: 32px;
  box-shadow: none;
}

body.page-id-117 .elementor-element.elementor-element-694f0437 .wpr-mailchimp-header,
body.page-id-117 .elementor-element.elementor-element-694f0437 .wpr-mailchimp-message {
  text-align: left;
}

body.page-id-117 .elementor-element.elementor-element-694f0437 .wpr-mailchimp-title,
body.page-id-117 .elementor-element.elementor-element-694f0437 .wpr-mailchimp-header h2,
body.page-id-117 .elementor-element.elementor-element-694f0437 .wpr-mailchimp-header h3 {
  color: #111111 !important;
  font-size: clamp(1.7rem, 3vw, 2.5rem) !important;
  line-height: 1.05 !important;
  letter-spacing: -0.04em;
}

body.page-id-117 .elementor-element.elementor-element-694f0437 .wpr-mailchimp-desc,
body.page-id-117 .elementor-element.elementor-element-694f0437 .wpr-mailchimp-header p,
body.page-id-117 .elementor-element.elementor-element-694f0437 .wpr-mailchimp-message span {
  color: #4a4a4a !important;
}

body.page-id-117 .elementor-element.elementor-element-694f0437 input[type="email"],
body.page-id-117 .elementor-element.elementor-element-694f0437 input[type="text"] {
  min-height: 52px;
  border: 1px solid #111111 !important;
  border-radius: 10px 0 0 10px !important;
  background: #ffffff !important;
  color: #111111 !important;
}

body.page-id-117 .elementor-element.elementor-element-694f0437 .wpr-mailchimp-subscribe-btn {
  min-height: 52px;
  border: 1px solid #111111 !important;
  border-left: 0 !important;
  border-radius: 0 10px 10px 0 !important;
  background: #111111 !important;
  color: #ffffff !important;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.elementor-location-footer {
  border-top: 1px solid #111111;
}

.elementor-location-footer .elementor-element.elementor-element-991305a {
  background: #ffffff;
}

.elementor-location-footer .elementor-element.elementor-element-991305a > .elementor-container {
  gap: 14px;
  align-items: center;
}

.elementor-location-footer .elementor-element.elementor-element-755d156 img {
  max-width: 84px;
  filter: saturate(0) contrast(1.05);
}

.elementor-location-footer .elementor-element.elementor-element-b44e51c a,
.elementor-location-footer .elementor-element.elementor-element-1759a5a a,
.elementor-location-footer .elementor-element.elementor-element-563f432 a,
.elementor-location-footer .elementor-element.elementor-element-e6ca727,
.elementor-location-footer .elementor-element.elementor-element-e6ca727 * {
  color: #111111 !important;
}

.elementor-location-footer .elementor-element.elementor-element-b44e51c a {
  font-size: 0.8rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.elementor-location-footer .elementor-element.elementor-element-1759a5a,
.elementor-location-footer .elementor-element.elementor-element-563f432,
.elementor-location-footer .elementor-element.elementor-element-e6ca727 {
  opacity: 0.82;
}

@media (max-width: 1024px) {
  .elementor-location-header .elementor-element.elementor-element-5eb880a > .elementor-container {
    min-height: 78px;
  }

  body.page-id-117 .mia-home-v4__hero {
    grid-template-columns: 1fr;
  }

  body.page-id-117 .mia-home-v4__visual-frame {
    min-height: 320px;
  }
}

@media (max-width: 767px) {
  .mia-utility-strip {
    padding: 8px 12px;
  }

  .mia-utility-strip p {
    font-size: 0.68rem;
    letter-spacing: 0.06em;
  }

  .elementor-location-header .elementor-element.elementor-element-5eb880a > .elementor-container {
    gap: 12px;
  }

  .elementor-location-header .elementor-element.elementor-element-e097c77 img {
    max-width: 72px;
  }

  .mia-header-account {
    justify-content: flex-start;
  }

  body.page-id-117 .mia-home-v4 {
    gap: 14px;
  }

  body.page-id-117 .mia-home-v4__trust,
  body.page-id-117 .mia-home-v4__shortcuts,
  body.page-id-117 .mia-home-v4__proof {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
  }

  body.page-id-117 .mia-home-v4__copy {
    padding: 24px 20px 22px;
  }

  body.page-id-117 .mia-home-v4__title {
    max-width: none;
    font-size: 2.45rem;
  }

  body.page-id-117 .mia-home-v4__lede {
    font-size: 0.95rem;
  }

  body.page-id-117 .mia-home-v4__actions {
    flex-direction: column;
  }

  body.page-id-117 .mia-home-v4__button {
    width: 100%;
  }

  body.page-id-117 .mia-home-v4__visual-frame {
    min-height: 250px;
  }

  body.page-id-117 .elementor-element.elementor-element-694f0437 .wpr-mailchimp-form {
    padding: 22px 18px;
  }

  body.page-id-117 .elementor-element.elementor-element-694f0437 input[type="email"],
  body.page-id-117 .elementor-element.elementor-element-694f0437 input[type="text"],
  body.page-id-117 .elementor-element.elementor-element-694f0437 .wpr-mailchimp-subscribe-btn {
    border-radius: 10px !important;
    border-left: 1px solid #111111 !important;
    width: 100%;
  }
}

/* ==========================================================================
   Archive + PDP white-outline system pass (2026-03-29)
   Safe surfaces only: Elementor 1214, Elementor 1212, child-theme CSS.
   Aligns shop and product pages with the live homepage redesign.
   ========================================================================== */

body.post-type-archive-product,
body.tax-product_cat,
body.tax-product_tag,
body.single-product {
  background: #ffffff;
  color: #111111;
}

body.post-type-archive-product .elementor-section.elementor-element-2affc42b,
body.tax-product_cat .elementor-section.elementor-element-2affc42b,
body.tax-product_tag .elementor-section.elementor-element-2affc42b {
  padding-top: clamp(40px, 5vw, 72px);
  padding-bottom: clamp(56px, 6vw, 84px);
  background: #ffffff;
}

body.post-type-archive-product .elementor-element.elementor-element-a1214e1 .elementor-heading-title,
body.tax-product_cat .elementor-element.elementor-element-a1214e1 .elementor-heading-title,
body.tax-product_tag .elementor-element.elementor-element-a1214e1 .elementor-heading-title {
  color: #4a4a4a;
  font-size: 0.78rem;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

body.post-type-archive-product .elementor-element.elementor-element-a1214t1 .elementor-heading-title,
body.tax-product_cat .elementor-element.elementor-element-a1214t1 .elementor-heading-title,
body.tax-product_tag .elementor-element.elementor-element-a1214t1 .elementor-heading-title {
  max-width: 12ch;
  margin-inline: auto;
  color: #111111;
  line-height: 0.98;
  letter-spacing: -0.05em;
  text-shadow: none !important;
  -webkit-text-stroke: 0 !important;
}

body.post-type-archive-product .elementor-element.elementor-element-a1214x1,
body.tax-product_cat .elementor-element.elementor-element-a1214x1,
body.tax-product_tag .elementor-element.elementor-element-a1214x1 {
  max-width: 58ch;
  margin: 0 auto 28px;
  color: #4a4a4a;
}

body.post-type-archive-product .elementor-element.elementor-element-a1214x1 p,
body.tax-product_cat .elementor-element.elementor-element-a1214x1 p,
body.tax-product_tag .elementor-element.elementor-element-a1214x1 p {
  color: #4a4a4a;
  font-size: 1rem;
  line-height: 1.7;
}

body.post-type-archive-product .woocommerce-result-count,
body.tax-product_cat .woocommerce-result-count,
body.tax-product_tag .woocommerce-result-count {
  color: #4a4a4a;
  margin-bottom: 10px;
  font-size: 0.74rem;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

body.post-type-archive-product .woocommerce-ordering,
body.tax-product_cat .woocommerce-ordering,
body.tax-product_tag .woocommerce-ordering {
  margin-bottom: 26px;
}

body.post-type-archive-product .woocommerce-ordering .orderby,
body.tax-product_cat .woocommerce-ordering .orderby,
body.tax-product_tag .woocommerce-ordering .orderby {
  min-height: 48px;
  padding: 10px 18px;
  border: 1px solid #111111;
  border-radius: 12px;
  background: #ffffff;
  color: #111111;
  font-size: 0.74rem;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  box-shadow: none;
}

body.post-type-archive-product ul.products,
body.tax-product_cat ul.products,
body.tax-product_tag ul.products {
  gap: 22px 18px;
  margin-top: 22px;
}

body.post-type-archive-product ul.products li.product,
body.tax-product_cat ul.products li.product,
body.tax-product_tag ul.products li.product {
  overflow: hidden;
  border: 1px solid #111111;
  border-radius: 16px;
  background: #ffffff;
  box-shadow: none;
}

body.post-type-archive-product ul.products li.product:hover,
body.tax-product_cat ul.products li.product:hover,
body.tax-product_tag ul.products li.product:hover {
  transform: translateY(-2px);
  border-color: #111111;
  box-shadow: none;
}

body.post-type-archive-product ul.products li.product a.woocommerce-LoopProduct-link,
body.tax-product_cat ul.products li.product a.woocommerce-LoopProduct-link,
body.tax-product_tag ul.products li.product a.woocommerce-LoopProduct-link {
  gap: 10px;
  padding: 18px 18px 0;
}

body.post-type-archive-product ul.products li.product img,
body.tax-product_cat ul.products li.product img,
body.tax-product_tag ul.products li.product img {
  aspect-ratio: 4 / 5;
  object-fit: cover;
  padding: 0;
  border: 1px solid #111111;
  border-radius: 12px;
  background: #ffffff;
}

body.post-type-archive-product ul.products li.product .woocommerce-loop-product__title,
body.tax-product_cat ul.products li.product .woocommerce-loop-product__title,
body.tax-product_tag ul.products li.product .woocommerce-loop-product__title {
  min-height: 2.8em;
  color: #111111;
  margin-bottom: 6px;
  font-size: 1rem;
  line-height: 1.35;
  letter-spacing: -0.01em;
}

body.post-type-archive-product ul.products li.product .price,
body.tax-product_cat ul.products li.product .price,
body.tax-product_tag ul.products li.product .price {
  color: #111111;
  margin-bottom: 14px;
  font-size: 0.96rem;
  line-height: 1.35;
}

body.post-type-archive-product span.onsale,
body.tax-product_cat span.onsale,
body.tax-product_tag span.onsale,
body.post-type-archive-product .eael-product-grid span.onsale,
body.tax-product_cat .eael-product-grid span.onsale,
body.tax-product_tag .eael-product-grid span.onsale {
  padding: 7px 11px;
  border: 1px solid #111111;
  border-radius: 999px;
  background: #111111;
  color: #ffffff;
  font-size: 0.64rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  box-shadow: none;
}

body.post-type-archive-product a.button.product_type_variable,
body.post-type-archive-product a.button.product_type_simple,
body.tax-product_cat a.button.product_type_variable,
body.tax-product_cat a.button.product_type_simple,
body.tax-product_tag a.button.product_type_variable,
body.tax-product_tag a.button.product_type_simple {
  display: inline-flex;
  justify-content: center;
  width: calc(100% - 36px);
  margin: 0 18px 18px;
  min-height: 48px;
  padding: 12px 18px;
  border: 1px solid #111111;
  border-radius: 10px;
  background: #111111;
  color: #ffffff;
  font-size: 0.74rem;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  box-shadow: none;
}

body.post-type-archive-product a.button.product_type_variable:hover,
body.post-type-archive-product a.button.product_type_simple:hover,
body.tax-product_cat a.button.product_type_variable:hover,
body.tax-product_cat a.button.product_type_simple:hover,
body.tax-product_tag a.button.product_type_variable:hover,
body.tax-product_tag a.button.product_type_simple:hover {
  background: #ffffff;
  border-color: #111111;
  color: #111111;
}

body.single-product .elementor-section.elementor-element-2d82b80c {
  padding-top: clamp(36px, 5vw, 72px);
  padding-bottom: clamp(48px, 5vw, 78px);
  background: #ffffff;
}

body.single-product .elementor-element.elementor-element-2d82b80c > .elementor-container {
  gap: 24px;
}

body.single-product .elementor-element.elementor-element-268bc6b4 > .elementor-widget-wrap {
  max-width: 680px;
  padding: clamp(24px, 4vw, 34px);
  border: 1px solid #111111;
  border-radius: 18px;
  background: #ffffff;
  box-shadow: none;
}

body.single-product .elementor-element.elementor-element-20c793cb > .elementor-widget-wrap {
  min-height: clamp(420px, 52vw, 680px);
  border: 1px solid #111111;
  border-radius: 18px;
  background-color: #ffffff;
  box-shadow: none;
  overflow: hidden;
}

body.single-product .elementor-element.elementor-element-138fc757,
body.single-product .woocommerce-breadcrumb,
body.single-product .woocommerce-breadcrumb a {
  color: #4a4a4a !important;
  font-size: 0.72rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

body.single-product .woocommerce-breadcrumb a[href*="/product-category/uncategorized/"] {
  opacity: 0.32;
}

body.single-product .elementor-element.elementor-element-4ae75ba2 {
  margin-bottom: 10px;
}

body.single-product .elementor-element.elementor-element-4ae75ba2 .product_title {
  color: #111111;
  line-height: 0.98;
  letter-spacing: -0.05em;
  max-width: 11ch;
}

body.single-product .elementor-element.elementor-element-3f4b9992,
body.single-product .elementor-element.elementor-element-3f4b9992 .woocommerce-product-details__short-description,
body.single-product .elementor-element.elementor-element-3f4b9992 p {
  color: #4a4a4a;
  max-width: 56ch;
  font-size: 1rem;
  line-height: 1.7;
}

body.single-product .elementor-element.elementor-element-15d6b58b {
  margin-bottom: 12px;
}

body.single-product .elementor-element.elementor-element-15d6b58b .price,
body.single-product .elementor-element.elementor-element-15d6b58b .price * {
  color: #111111;
  line-height: 1.15;
}

body.single-product .elementor-element.elementor-element-15d6b58b .price del {
  opacity: 0.45;
}

body.single-product .elementor-element.elementor-element-a1212p1 {
  margin: 6px 0 18px;
}

body.single-product .elementor-element.elementor-element-a1212p1 .elementor-widget-container {
  padding: 14px 16px;
  border: 1px solid #111111;
  border-left-width: 3px;
  border-radius: 12px;
  background: #ffffff;
}

body.single-product .elementor-element.elementor-element-a1212p1 p,
body.single-product .elementor-element.elementor-element-a1212p1 a {
  color: #4a4a4a;
}

body.single-product .elementor-element.elementor-element-a1212p1 a {
  color: #111111;
  font-weight: 600;
}

body.single-product .variations,
body.single-product .variations_form {
  margin-bottom: 16px;
}

body.single-product .variations th.label {
  color: #4a4a4a;
}

body.single-product .variations select,
body.single-product .quantity .qty {
  min-height: 48px;
  border: 1px solid #111111;
  border-radius: 10px;
  background: #ffffff;
  color: #111111;
  box-shadow: none;
}

body.single-product .reset_variations,
body.single-product .woocommerce-variation-price,
body.single-product .woocommerce-variation-availability,
body.single-product .product_meta,
body.single-product .product_meta a {
  color: #4a4a4a;
}

body.single-product .product_meta {
  padding-top: 16px;
  border-top: 1px solid #111111;
}

body.single-product .product_meta a:hover {
  color: #111111;
}

body.single-product .woocommerce button.single_add_to_cart_button.button.alt,
body.single-product .woocommerce .single_add_to_cart_button.button.alt {
  min-height: 50px;
  padding: 14px 24px;
  border: 1px solid #111111;
  border-radius: 10px;
  background: #111111;
  color: #ffffff;
  font-size: 0.74rem;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  box-shadow: none;
}

body.single-product .woocommerce button.single_add_to_cart_button.button.alt:hover,
body.single-product .woocommerce .single_add_to_cart_button.button.alt:hover {
  background: #ffffff;
  color: #111111;
  border-color: #111111;
}

body.single-product .elementor-section.elementor-element-34c7f3cc {
  padding-top: clamp(46px, 5vw, 72px);
  padding-bottom: clamp(56px, 6vw, 84px);
  background: #ffffff;
}

body.single-product .elementor-element.elementor-element-6fbcd3c .eael-cat-tab {
  color: #111111;
}

body.single-product .elementor-element.elementor-element-6fbcd3c .eael-product-wrap,
body.single-product .elementor-element.elementor-element-e2b8267 ul.products li.product {
  border: 1px solid #111111;
  border-radius: 16px;
  background: #ffffff;
  box-shadow: none;
}

body.single-product .elementor-element.elementor-element-6fbcd3c .eael-product-details-wrap,
body.single-product .elementor-element.elementor-element-e2b8267 ul.products li.product {
  color: #111111;
}

body.single-product .elementor-element.elementor-element-6fbcd3c .eael-product-title,
body.single-product .elementor-element.elementor-element-e2b8267 .woocommerce-loop-product__title,
body.single-product .elementor-element.elementor-element-e2b8267 .price {
  color: #111111;
}

body.single-product .elementor-element.elementor-element-6fbcd3c a.button,
body.single-product .elementor-element.elementor-element-e2b8267 a.button {
  border: 1px solid #111111;
  border-radius: 10px;
  background: #111111;
  color: #ffffff;
  box-shadow: none;
}

body.single-product .elementor-element.elementor-element-6fbcd3c a.button:hover,
body.single-product .elementor-element.elementor-element-e2b8267 a.button:hover {
  background: #ffffff;
  color: #111111;
  border-color: #111111;
}

body.single-product .elementor-element.elementor-element-6fbcd3c .eael-product-item:hover,
body.single-product .elementor-element.elementor-element-e2b8267 ul.products li.product:hover {
  transform: translateY(-2px);
  border-color: #111111;
  box-shadow: none;
}

@media (max-width: 767px) {
  body.post-type-archive-product .elementor-section.elementor-element-2affc42b,
  body.tax-product_cat .elementor-section.elementor-element-2affc42b,
  body.tax-product_tag .elementor-section.elementor-element-2affc42b,
  body.single-product .elementor-section.elementor-element-2d82b80c,
  body.single-product .elementor-section.elementor-element-34c7f3cc {
    padding-top: 28px;
    padding-bottom: 40px;
  }

  body.post-type-archive-product ul.products,
  body.tax-product_cat ul.products,
  body.tax-product_tag ul.products {
    gap: 16px;
  }

  body.post-type-archive-product ul.products li.product,
  body.tax-product_cat ul.products li.product,
  body.tax-product_tag ul.products li.product {
    border-radius: 14px;
  }

  body.post-type-archive-product a.button.product_type_variable,
  body.post-type-archive-product a.button.product_type_simple,
  body.tax-product_cat a.button.product_type_variable,
  body.tax-product_cat a.button.product_type_simple,
  body.tax-product_tag a.button.product_type_variable,
  body.tax-product_tag a.button.product_type_simple,
  body.single-product .woocommerce button.single_add_to_cart_button.button.alt,
  body.single-product .woocommerce .single_add_to_cart_button.button.alt {
    width: 100%;
  }

  body.single-product .elementor-element.elementor-element-268bc6b4 > .elementor-widget-wrap,
  body.single-product .elementor-element.elementor-element-20c793cb > .elementor-widget-wrap {
    border-radius: 14px;
    padding: 18px;
  }

  body.single-product .elementor-element.elementor-element-4ae75ba2 .product_title,
  body.single-product .elementor-element.elementor-element-3f4b9992 .woocommerce-product-details__short-description {
    max-width: none;
  }
}

/* ==========================================================================
