/* Eastern Automotive final launch hardening - Open Design warm editorial pass. */
:root {
  --ea-final-paper: #faf7f2;
  --ea-final-ink: #1c1a17;
  --ea-final-muted: #6f665f;
  --ea-final-line: rgba(47, 91, 79, 0.14);
  --ea-final-cta: #8b4f20;
  --ea-final-cta-2: #d9ad63;
  --ea-final-success: #e8f7ec;
  --ea-final-success-ink: #166534;
  --ea-final-footer: #2a1a12;
  --ea-final-focus: #c0512f;
  --ea-final-radius: 16px;
}
html { scroll-padding-top: 112px; }
body { background: var(--ea-final-paper); color: var(--ea-final-ink); }
.ea-header, .ea-header * { box-sizing: border-box; }
.ea-header { min-height: 88px; contain: layout style; z-index: 90; }
.ea-header__top { min-height: 72px !important; height: 72px !important; align-items: center !important; gap: 18px !important; }
.ea-header__brand { min-height: 56px !important; align-items: center !important; overflow: hidden !important; }
.ea-header__logo, .ea-header__brand img { width: 56px !important; height: 56px !important; object-fit: contain !important; flex: 0 0 56px !important; }
.ea-header__brand-copy, .ea-header__brand-text { min-width: 0 !important; overflow: hidden !important; }
.ea-header__nav a, .ea-header__action, .ea-header__cart, .ea-language-select, .ea-header select { min-height: 44px !important; display: inline-flex !important; align-items: center !important; justify-content: center !important; line-height: 1 !important; }
.ea-header__nav a { padding: 0 10px !important; border-radius: 10px !important; }
.ea-header__nav a:hover, .ea-header__nav a:focus-visible, .ea-header__nav .is-active > a, .ea-header__nav a[aria-current="page"] { background: rgba(139, 79, 32, .1) !important; color: var(--ea-final-ink) !important; outline: none !important; }
.ea-header__cart { border-radius: 999px !important; white-space: nowrap !important; }
@media (max-width: 900px) {
  .ea-header { min-height: 72px; }
  .ea-header__top { height: 64px !important; min-height: 64px !important; padding-inline: 12px !important; }
  .ea-header__logo, .ea-header__brand img { width: 48px !important; height: 48px !important; flex-basis: 48px !important; }
}
.ea-footer { background: var(--ea-final-footer) !important; color: #f6eee4 !important; border-top: 1px solid rgba(255,255,255,.12) !important; }
.ea-footer a, .ea-footer p, .ea-footer span, .ea-footer li, .ea-footer__logo, .ea-footer__logo-copy, .ea-footer__logo-name { color: #f6eee4 !important; }
.ea-footer__logo-sub, .ea-footer__accordion-toggle span:first-child, .ea-footer__column h2, .ea-footer__column h3 { color: #d9ad63 !important; }
.ea-footer__tagline, .ea-footer__contact span, .ea-footer__copyright { color: rgba(246,238,228,.78) !important; }
.ea-footer__newsletter-form input, .ea-footer select { background: rgba(255,255,255,.08) !important; border-color: rgba(255,255,255,.22) !important; color: #fff8ed !important; }
.ea-footer__newsletter-form button { background: #d9ad63 !important; color: #24160f !important; }
.ea-footer__accordion-toggle, .ea-footer__column a { min-height: 36px !important; }
.ea-home-shop-hero__title, .ea-home-shop-hero-htl1, .ea-home-shop-hero-htl2, .ea-contact-htl2, .ea-pol-htl1, .ea-pol-htl2, .entry-title, .page-title { overflow: visible !important; text-wrap: balance; line-height: 1.04 !important; padding-bottom: .08em !important; }
.ea-home-shop-hero__title { max-height: none !important; }
@media (max-width: 640px) {
  .ea-home-shop-hero__title, .ea-home-shop-hero-htl1, .ea-home-shop-hero-htl2 { font-size: clamp(42px, 15vw, 72px) !important; line-height: .98 !important; }
  .ea-contact-htl2, .ea-pol-htl1, .ea-pol-htl2 { font-size: clamp(44px, 16vw, 78px) !important; }
}
.ea-home-reel__name, .ea-home-reel__note, .ea-workshop-wall__tile-copy, .ea-workshop-wall__feature-copy, .ea-workshop-wall__tile-copy strong, .ea-workshop-wall__feature-copy strong { color: #fff8ed !important; text-shadow: 0 1px 8px rgba(28,20,12,.55) !important; }
.ea-home-reel__note, .ea-workshop-wall__tile-copy span, .ea-workshop-wall__feature-copy span { color: rgba(255,248,237,.88) !important; }
.ea-workshop-wall__tile-copy, .ea-workshop-wall__feature-copy { background: linear-gradient(180deg, rgba(28,20,12,0), rgba(28,20,12,.76)) !important; padding: 18px !important; }
.ea-atelier-pdp__zoom { overflow: hidden !important; color: transparent !important; text-indent: -9999px !important; }
.ea-atelier-pdp__zoom img, .ea-atelier-pdp__gallery img, .woocommerce-product-gallery img, .ea-product-card__image, .ea-product-card__visual img { object-fit: contain !important; max-width: 100% !important; max-height: 100% !important; }
.ea-atelier-pdp__zoom span, .ea-atelier-pdp__zoom strong { color: var(--ea-final-ink) !important; text-indent: 0 !important; }
.ea-atelier-pdp [class*="price"], .single-product [class*="price"] { color: var(--ea-final-ink) !important; }
.ea-shop-product-grid, .products.ea-shop-product-grid { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: 22px !important; }
@media (max-width: 1100px) { .ea-shop-product-grid, .products.ea-shop-product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; } }
@media (max-width: 720px) { .ea-shop-product-grid, .products.ea-shop-product-grid { grid-template-columns: 1fr !important; } }
.ea-product-card { border-radius: 20px !important; background: #fffaf3 !important; border: 1px solid rgba(139,79,32,.2) !important; overflow: hidden !important; }
.ea-product-card__visual { min-height: 220px !important; display: grid !important; place-items: center !important; background: linear-gradient(180deg, #f4ead9, #fffaf3) !important; }
.ea-product-card__button, .ea-split-buy__primary, button.single_add_to_cart_button, .single_add_to_cart_button, .ea-checkout-place-order, #place_order { min-height: 58px !important; display: inline-flex !important; align-items: center !important; justify-content: center !important; text-align: center !important; line-height: 1 !important; padding: 0 28px !important; border-radius: 18px !important; background: linear-gradient(180deg, #8b4f20, #28140c) !important; color: #fff8ed !important; font-weight: 900 !important; letter-spacing: .08em !important; text-transform: uppercase !important; box-shadow: none !important; transform: none !important; }
.ea-product-card__button > *, .ea-split-buy__primary > *, button.single_add_to_cart_button > *, #place_order > * { line-height: 1 !important; }
.ea-product-card__button:hover, .ea-product-card__button:focus-visible, .ea-split-buy__primary:hover, .ea-split-buy__primary:focus-visible, .single_add_to_cart_button:hover, .single_add_to_cart_button:focus-visible { filter: brightness(1.06) !important; outline: 3px solid rgba(192,81,47,.28) !important; outline-offset: 3px !important; }
.ea-collection-card__mini-shop { min-height: 0 !important; padding: 10px !important; gap: 8px !important; }
.ea-collection-card__mini-list { grid-auto-rows: 54px !important; gap: 8px !important; }
.ea-collection-card__mini-item, .ea-review-card__quick-pick { min-height: 54px !important; grid-template-columns: minmax(0, 1fr) auto !important; gap: 8px !important; align-items: center !important; padding: 7px 10px !important; overflow: hidden !important; white-space: nowrap !important; }
.ea-collection-card__mini-thumb, .ea-collection-card__mini-check, .ea-review-card__quick-pick img { display: none !important; }
.ea-collection-card__mini-copy, .ea-collection-card__mini-name { min-width: 0 !important; overflow: hidden !important; text-overflow: ellipsis !important; white-space: nowrap !important; display: block !important; }
.ea-collection-card__mini-name { font-size: 14px !important; line-height: 1.1 !important; }
.ea-collection-card__mini-fitment, .ea-collection-card__mini-copy small { display: none !important; }
.ea-collection-card__mini-price { display: inline-flex !important; align-items: center !important; justify-content: center !important; min-height: 30px !important; padding: 0 11px !important; border-radius: 999px !important; background: rgba(139,79,32,.13) !important; color: #704015 !important; font-weight: 900 !important; flex: 0 0 auto !important; }
.ea-collection-card__mini-variations, .ea-collection-card__mini-variations--split { display: inline-flex !important; gap: 6px !important; flex: 0 0 auto !important; }
.ea-collection-card__mini-variation { min-height: 34px !important; padding: 0 12px !important; border-radius: 999px !important; white-space: nowrap !important; }
.ea-collection-card__mini-item.is-added, .ea-review-card__quick-pick.is-added { background: var(--ea-final-success) !important; box-shadow: inset 0 0 0 2px rgba(22,101,52,.24) !important; color: var(--ea-final-success-ink) !important; }
.ea-product-card__addon-item.is-selected, [data-ea-product-addon-toggle].is-selected { background: #f0f8f1 !important; box-shadow: inset 0 0 0 2px rgba(22,101,52,.35) !important; }
.ea-product-card__addon-item.is-selected .ea-product-card__addon-check, [data-ea-product-addon-toggle].is-selected .ea-product-card__addon-check { display: inline-grid !important; place-items: center !important; background: #166534 !important; color: #fff !important; border-color: #166534 !important; }
.ea-live-chat__dock { position: fixed !important; right: max(18px, env(safe-area-inset-right)) !important; bottom: max(18px, env(safe-area-inset-bottom)) !important; left: auto !important; display: inline-flex !important; align-items: center !important; justify-content: center !important; gap: 0 !important; width: auto !important; max-width: min(92vw, 430px) !important; z-index: 95 !important; transform: none !important; }
.ea-floating-cart, .ea-live-chat__launcher { min-height: 58px !important; display: inline-flex !important; align-items: center !important; justify-content: center !important; white-space: nowrap !important; }
.ea-floating-cart__copy { display: grid !important; align-content: center !important; justify-items: start !important; line-height: 1.05 !important; }
.ea-floating-cart.is-empty { opacity: 1 !important; visibility: visible !important; pointer-events: auto !important; }
.ea-floating-cart.is-shaking { animation: ea-final-cart-shake .42s cubic-bezier(.36,.07,.19,.97) both; }
@keyframes ea-final-cart-shake { 10%, 90% { transform: translateX(-1px); } 20%, 80% { transform: translateX(2px); } 30%, 50%, 70% { transform: translateX(-4px); } 40%, 60% { transform: translateX(4px); } }
@media (max-width: 760px) {
  body { padding-bottom: calc(82px + env(safe-area-inset-bottom)) !important; }
  .ea-live-chat__dock { left: 12px !important; right: 12px !important; bottom: max(12px, env(safe-area-inset-bottom)) !important; max-width: none !important; width: auto !important; }
  .ea-floating-cart, .ea-live-chat__launcher { flex: 1 1 0 !important; min-width: 0 !important; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: .001ms !important; transition-duration: .001ms !important; scroll-behavior: auto !important; }
}

/* Final sticky dock alignment: keep cart/chat grouped, centered on phones, and away from footer controls. */
.ea-live-chat__dock {
  position: fixed !important;
  right: max(18px, env(safe-area-inset-right)) !important;
  bottom: max(18px, env(safe-area-inset-bottom)) !important;
  left: auto !important;
  z-index: 9998 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0 !important;
  width: auto !important;
  min-width: 236px !important;
  height: 56px !important;
  overflow: hidden !important;
  border-radius: 999px !important;
  box-shadow: 0 18px 42px rgba(28, 26, 23, .18) !important;
}
.ea-live-chat__dock .ea-floating-cart,
.ea-live-chat__dock .ea-live-chat__launcher {
  position: static !important;
  inset: auto !important;
  transform: none !important;
  height: 56px !important;
  min-height: 56px !important;
  border-radius: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-shadow: none !important;
  margin: 0 !important;
}
.ea-live-chat__dock .ea-floating-cart {
  width: 118px !important;
  min-width: 118px !important;
  padding: 0 14px !important;
}
.ea-live-chat__dock .ea-live-chat__launcher {
  width: 118px !important;
  min-width: 118px !important;
  padding: 0 14px !important;
}
.ea-live-chat__dock .ea-floating-cart__copy,
.ea-live-chat__dock .ea-live-chat__launcher-copy {
  display: block !important;
  width: auto !important;
  height: auto !important;
  clip: auto !important;
  clip-path: none !important;
  position: static !important;
  overflow: visible !important;
  white-space: nowrap !important;
  font-size: 13px !important;
  line-height: 1.05 !important;
}
body.ea-footer-in-view .ea-live-chat__dock:not(.is-open) {
  transform: translateY(-16px) !important;
}
@media (max-width: 767px) {
  body { padding-bottom: calc(82px + env(safe-area-inset-bottom)) !important; }
  .ea-live-chat__dock {
    left: 50% !important;
    right: auto !important;
    bottom: max(10px, env(safe-area-inset-bottom)) !important;
    transform: translateX(-50%) !important;
    width: min(352px, calc(100vw - 24px)) !important;
    min-width: 0 !important;
    height: 58px !important;
  }
  body.ea-footer-in-view .ea-live-chat__dock:not(.is-open) {
    transform: translateX(-50%) translateY(-18px) !important;
  }
  .ea-live-chat__dock .ea-floating-cart,
  .ea-live-chat__dock .ea-live-chat__launcher {
    height: 58px !important;
    min-height: 58px !important;
    flex: 1 1 0 !important;
    width: auto !important;
    min-width: 0 !important;
    gap: 9px !important;
  }
  .ea-live-chat__dock .ea-floating-cart__icon,
  .ea-live-chat__dock .ea-live-chat__launcher-badge {
    width: 34px !important;
    height: 34px !important;
    flex: 0 0 34px !important;
  }
  .ea-live-chat__dock .ea-floating-cart__copy,
  .ea-live-chat__dock .ea-live-chat__launcher-copy {
    max-width: 92px !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }
}
@media (max-width: 430px) {
  .ea-live-chat__dock .ea-floating-cart__copy,
  .ea-live-chat__dock .ea-live-chat__launcher-copy {
    font-size: 12px !important;
    max-width: 78px !important;
  }
}

/* Shop/archive cards: align product discovery cards with the home featured-card system. */
body.post-type-archive-product .ea-product-card,
body.tax-product_cat .ea-product-card,
.woocommerce-shop .ea-product-card,
.ea-shop .ea-product-card {
  border: 1px solid rgba(214, 177, 105, .54) !important;
  border-radius: 28px !important;
  background: linear-gradient(180deg, rgba(255, 252, 246, .96), rgba(250, 247, 242, .96)) !important;
  box-shadow: 0 18px 50px rgba(82, 56, 28, .10) !important;
  overflow: hidden !important;
  padding: 0 !important;
}
body.post-type-archive-product .ea-product-card__visual,
body.tax-product_cat .ea-product-card__visual,
.woocommerce-shop .ea-product-card__visual,
.ea-shop .ea-product-card__visual {
  margin: 0 !important;
  min-height: 0 !important;
  aspect-ratio: 16 / 10 !important;
  border: 0 !important;
  border-radius: 28px 28px 0 0 !important;
  background: linear-gradient(90deg, rgba(239, 225, 201, .75), rgba(255, 252, 246, .94), rgba(239, 225, 201, .75)) !important;
  display: grid !important;
  place-items: center !important;
  overflow: hidden !important;
}
body.post-type-archive-product .ea-product-card__visual img,
body.tax-product_cat .ea-product-card__visual img,
.woocommerce-shop .ea-product-card__visual img,
.ea-shop .ea-product-card__visual img {
  width: min(76%, 360px) !important;
  height: min(76%, 260px) !important;
  max-width: 76% !important;
  max-height: 76% !important;
  object-fit: contain !important;
  object-position: center !important;
  mix-blend-mode: normal !important;
}
body.post-type-archive-product .ea-product-card__body,
body.tax-product_cat .ea-product-card__body,
.woocommerce-shop .ea-product-card__body,
.ea-shop .ea-product-card__body {
  padding: clamp(18px, 2vw, 30px) !important;
  display: grid !important;
  gap: 14px !important;
}
body.post-type-archive-product .ea-product-card__eyebrow,
body.tax-product_cat .ea-product-card__eyebrow,
.woocommerce-shop .ea-product-card__eyebrow,
.ea-shop .ea-product-card__eyebrow,
body.post-type-archive-product .ea-product-card__badge,
body.tax-product_cat .ea-product-card__badge,
.woocommerce-shop .ea-product-card__badge,
.ea-shop .ea-product-card__badge {
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #8A817A !important;
  letter-spacing: .12em !important;
  font-size: 12px !important;
  line-height: 1.15 !important;
  padding: 0 !important;
}
body.post-type-archive-product .ea-product-card__title,
body.tax-product_cat .ea-product-card__title,
.woocommerce-shop .ea-product-card__title,
.ea-shop .ea-product-card__title {
  font-family: Georgia, Times New Roman, serif !important;
  font-size: clamp(30px, 3.15vw, 52px) !important;
  line-height: .94 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  color: #1C1A17 !important;
  margin: 0 !important;
}
body.post-type-archive-product .ea-product-card__fitment,
body.tax-product_cat .ea-product-card__fitment,
.woocommerce-shop .ea-product-card__fitment,
.ea-shop .ea-product-card__fitment {
  border: 2px solid rgba(28, 26, 23, .48) !important;
  color: #7B736C !important;
  font-size: 11px !important;
  line-height: 1.2 !important;
  letter-spacing: .11em !important;
  padding: 3px 6px !important;
  background: rgba(255,255,255,.38) !important;
}
body.post-type-archive-product .ea-product-card__description,
body.tax-product_cat .ea-product-card__description,
.woocommerce-shop .ea-product-card__description,
.ea-shop .ea-product-card__description {
  color: #6F665F !important;
  font-size: 16px !important;
  line-height: 1.5 !important;
  margin: 0 !important;
}
body.post-type-archive-product .ea-product-card__variations,
body.tax-product_cat .ea-product-card__variations,
.woocommerce-shop .ea-product-card__variations,
.ea-shop .ea-product-card__variations {
  border: 1px solid rgba(28,26,23,.09) !important;
  border-radius: 22px !important;
  background: rgba(255,252,246,.76) !important;
  padding: 12px !important;
  display: flex !important;
  gap: 10px !important;
  flex-wrap: wrap !important;
}
body.post-type-archive-product .ea-product-card__variation,
body.tax-product_cat .ea-product-card__variation,
.woocommerce-shop .ea-product-card__variation,
.ea-shop .ea-product-card__variation {
  min-height: 48px !important;
  border: 1px solid rgba(28,26,23,.16) !important;
  border-radius: 999px !important;
  background: #FAF7F2 !important;
  color: #1C1A17 !important;
  box-shadow: none !important;
  padding: 0 18px !important;
  text-transform: none !important;
}
body.post-type-archive-product .ea-product-card__variation.is-active,
body.tax-product_cat .ea-product-card__variation.is-active,
.woocommerce-shop .ea-product-card__variation.is-active,
.ea-shop .ea-product-card__variation.is-active {
  background: #9A5E2C !important;
  color: #fff !important;
  border-color: #9A5E2C !important;
}
body.post-type-archive-product .ea-product-card__addon-list,
body.tax-product_cat .ea-product-card__addon-list,
.woocommerce-shop .ea-product-card__addon-list,
.ea-shop .ea-product-card__addon-list {
  border: 1px solid rgba(28,26,23,.09) !important;
  border-radius: 22px !important;
  background: rgba(255,255,255,.72) !important;
  padding: 10px !important;
  display: grid !important;
  gap: 8px !important;
}
body.post-type-archive-product .ea-product-card__addon,
body.tax-product_cat .ea-product-card__addon,
.woocommerce-shop .ea-product-card__addon,
.ea-shop .ea-product-card__addon {
  min-height: 52px !important;
  border-radius: 16px !important;
  border: 1px solid rgba(28,26,23,.08) !important;
  background: #fff !important;
  display: grid !important;
  grid-template-columns: minmax(0,1fr) auto !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 8px 12px !important;
}
body.post-type-archive-product .ea-product-card__addon-price,
body.tax-product_cat .ea-product-card__addon-price,
.woocommerce-shop .ea-product-card__addon-price,
.ea-shop .ea-product-card__addon-price,
body.post-type-archive-product .ea-product-card__price,
body.tax-product_cat .ea-product-card__price,
.woocommerce-shop .ea-product-card__price,
.ea-shop .ea-product-card__price {
  border: 0 !important;
  border-radius: 999px !important;
  background: rgba(214,177,105,.26) !important;
  color: #8B5A2B !important;
  min-height: 0 !important;
  padding: 5px 12px !important;
  font-weight: 800 !important;
}
body.post-type-archive-product .ea-product-card__dock,
body.tax-product_cat .ea-product-card__dock,
.woocommerce-shop .ea-product-card__dock,
.ea-shop .ea-product-card__dock {
  margin-top: 8px !important;
  border: 1px solid rgba(28,26,23,.09) !important;
  border-radius: 22px !important;
  background: rgba(255,252,246,.86) !important;
  padding: 14px !important;
}
body.post-type-archive-product .ea-product-card__add,
body.tax-product_cat .ea-product-card__add,
.woocommerce-shop .ea-product-card__add,
.ea-shop .ea-product-card__add,
body.post-type-archive-product .ea-product-card .add_to_cart_button,
body.tax-product_cat .ea-product-card .add_to_cart_button,
.woocommerce-shop .ea-product-card .add_to_cart_button,
.ea-shop .ea-product-card .add_to_cart_button {
  border-radius: 999px !important;
  min-height: 54px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  background: #2A140D !important;
  color: #fff !important;
  border: 0 !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.12), 0 10px 22px rgba(42,20,13,.18) !important;
  text-transform: uppercase !important;
  letter-spacing: .08em !important;
}
@media (min-width: 1024px) {
  body.post-type-archive-product ul.products,
  body.tax-product_cat ul.products,
  .woocommerce-shop ul.products,
  .ea-shop-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 767px) {
  body.post-type-archive-product .ea-product-card__body,
  body.tax-product_cat .ea-product-card__body,
  .woocommerce-shop .ea-product-card__body,
  .ea-shop .ea-product-card__body { padding: 16px !important; }
  body.post-type-archive-product .ea-product-card__title,
  body.tax-product_cat .ea-product-card__title,
  .woocommerce-shop .ea-product-card__title,
  .ea-shop .ea-product-card__title { font-size: 31px !important; }
  body.post-type-archive-product .ea-product-card__description,
  body.tax-product_cat .ea-product-card__description,
  .woocommerce-shop .ea-product-card__description,
  .ea-shop .ea-product-card__description { font-size: 15px !important; }
}

/* High-specificity shop card correction for legacy html/body archive rules. */
html body.post-type-archive-product .ea-product-card,
html body.tax-product_cat .ea-product-card,
html body.woocommerce-shop .ea-product-card {
  border: 1px solid rgba(214,177,105,.54) !important;
  border-radius: 28px !important;
  background: linear-gradient(180deg, rgba(255,252,246,.96), rgba(250,247,242,.96)) !important;
  box-shadow: 0 18px 50px rgba(82,56,28,.10) !important;
  overflow: hidden !important;
}
html body.post-type-archive-product .ea-product-card__visual,
html body.tax-product_cat .ea-product-card__visual,
html body.woocommerce-shop .ea-product-card__visual {
  border-radius: 28px 28px 0 0 !important;
  aspect-ratio: 16 / 10 !important;
  display: grid !important;
  place-items: center !important;
  background: linear-gradient(90deg, rgba(239,225,201,.72), rgba(255,252,246,.95), rgba(239,225,201,.72)) !important;
  overflow: hidden !important;
}
html body.post-type-archive-product .ea-product-card__visual img,
html body.tax-product_cat .ea-product-card__visual img,
html body.woocommerce-shop .ea-product-card__visual img {
  width: min(76%, 360px) !important;
  height: min(76%, 260px) !important;
  max-width: 76% !important;
  max-height: 76% !important;
  object-fit: contain !important;
  object-position: center !important;
}
html body.post-type-archive-product .ea-product-card__body,
html body.tax-product_cat .ea-product-card__body,
html body.woocommerce-shop .ea-product-card__body {
  padding: clamp(18px, 2vw, 30px) !important;
  display: grid !important;
  gap: 14px !important;
}
html body.post-type-archive-product .ea-product-card__title,
html body.tax-product_cat .ea-product-card__title,
html body.woocommerce-shop .ea-product-card__title {
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(30px, 3.15vw, 52px) !important;
  line-height: .94 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}
html body.post-type-archive-product .ea-product-card__variation,
html body.tax-product_cat .ea-product-card__variation,
html body.woocommerce-shop .ea-product-card__variation,
html body.post-type-archive-product .ea-product-card__variation-button,
html body.tax-product_cat .ea-product-card__variation-button,
html body.woocommerce-shop .ea-product-card__variation-button {
  border-radius: 999px !important;
  min-height: 48px !important;
  padding: 0 18px !important;
}
html body.post-type-archive-product .ea-product-card__button,
html body.tax-product_cat .ea-product-card__button,
html body.woocommerce-shop .ea-product-card__button,
html body.post-type-archive-product .ea-product-card__add,
html body.tax-product_cat .ea-product-card__add,
html body.woocommerce-shop .ea-product-card__add,
html body.post-type-archive-product .ea-product-card .add_to_cart_button,
html body.tax-product_cat .ea-product-card .add_to_cart_button,
html body.woocommerce-shop .ea-product-card .add_to_cart_button {
  min-height: 54px !important;
  border-radius: 999px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  background: #2A140D !important;
  color: #fff !important;
}
@media (max-width: 767px) {
  html body.post-type-archive-product .ea-product-card__title,
  html body.tax-product_cat .ea-product-card__title,
  html body.woocommerce-shop .ea-product-card__title { font-size: 31px !important; }
}

/* Exact legacy shop-grid override: match current highly-specific archive selectors. */
html body.wp-theme-ea-vintage.woocommerce-shop .ea-shop-loop .ea-product-grid.ea-shop-product-grid > article.ea-product-card,
html body.wp-theme-ea-vintage.post-type-archive-product .ea-shop-loop .ea-product-grid.ea-shop-product-grid > article.ea-product-card,
html body.wp-theme-ea-vintage.tax-product_cat .ea-shop-loop .ea-product-grid.ea-shop-product-grid > article.ea-product-card,
html body.wp-theme-ea-vintage.tax-product_tag .ea-shop-loop .ea-product-grid.ea-shop-product-grid > article.ea-product-card,
html body.woocommerce-shop .ea-page-shell--woocommerce .ea-shop-product-grid > article.ea-product-card,
html body.post-type-archive-product .ea-page-shell--woocommerce .ea-shop-product-grid > article.ea-product-card,
html body.tax-product_cat .ea-page-shell--woocommerce .ea-shop-product-grid > article.ea-product-card,
html body.tax-product_tag .ea-page-shell--woocommerce .ea-shop-product-grid > article.ea-product-card {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  grid-template-rows: auto !important;
  border-radius: 28px !important;
  border: 1px solid rgba(214,177,105,.54) !important;
  background: linear-gradient(180deg, rgba(255,252,246,.98), rgba(250,247,242,.98)) !important;
  box-shadow: 0 18px 50px rgba(82,56,28,.10) !important;
  overflow: hidden !important;
}
html body.wp-theme-ea-vintage.woocommerce-shop .ea-shop-loop .ea-product-grid.ea-shop-product-grid > article.ea-product-card .ea-product-card__visual,
html body.wp-theme-ea-vintage.post-type-archive-product .ea-shop-loop .ea-product-grid.ea-shop-product-grid > article.ea-product-card .ea-product-card__visual,
html body.wp-theme-ea-vintage.tax-product_cat .ea-shop-loop .ea-product-grid.ea-shop-product-grid > article.ea-product-card .ea-product-card__visual,
html body.woocommerce-shop .ea-page-shell--woocommerce .ea-shop-product-grid > article.ea-product-card .ea-product-card__visual,
html body.post-type-archive-product .ea-page-shell--woocommerce .ea-shop-product-grid > article.ea-product-card .ea-product-card__visual,
html body.tax-product_cat .ea-page-shell--woocommerce .ea-shop-product-grid > article.ea-product-card .ea-product-card__visual {
  grid-column: auto !important;
  grid-row: auto !important;
  height: auto !important;
  min-height: 0 !important;
  aspect-ratio: 16 / 10 !important;
  border-radius: 28px 28px 0 0 !important;
  background: linear-gradient(90deg, rgba(239,225,201,.74), rgba(255,252,246,.95), rgba(239,225,201,.74)) !important;
}
html body.wp-theme-ea-vintage.woocommerce-shop .ea-shop-loop .ea-product-grid.ea-shop-product-grid > article.ea-product-card .ea-product-card__title,
html body.wp-theme-ea-vintage.post-type-archive-product .ea-shop-loop .ea-product-grid.ea-shop-product-grid > article.ea-product-card .ea-product-card__title,
html body.wp-theme-ea-vintage.tax-product_cat .ea-shop-loop .ea-product-grid.ea-shop-product-grid > article.ea-product-card .ea-product-card__title,
html body.woocommerce-shop .ea-page-shell--woocommerce .ea-shop-product-grid > article.ea-product-card .ea-product-card__title,
html body.post-type-archive-product .ea-page-shell--woocommerce .ea-shop-product-grid > article.ea-product-card .ea-product-card__title,
html body.tax-product_cat .ea-page-shell--woocommerce .ea-shop-product-grid > article.ea-product-card .ea-product-card__title {
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(30px, 3.15vw, 52px) !important;
  line-height: .94 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}

/* Override legacy blanket zero-radius reset on commerce surfaces. */
html body.wp-theme-ea-vintage .ea-product-card.ea-product-card.ea-product-card.ea-product-card.ea-product-card.ea-product-card.ea-product-card.ea-product-card.ea-product-card.ea-product-card {
  border-radius: 28px !important;
}
html body.wp-theme-ea-vintage .ea-product-card .ea-product-card__visual.ea-product-card__visual.ea-product-card__visual.ea-product-card__visual.ea-product-card__visual.ea-product-card__visual.ea-product-card__visual.ea-product-card__visual.ea-product-card__visual.ea-product-card__visual {
  border-radius: 28px 28px 0 0 !important;
}
html body.wp-theme-ea-vintage .ea-product-card .ea-product-card__variation.ea-product-card__variation.ea-product-card__variation.ea-product-card__variation.ea-product-card__variation.ea-product-card__variation,
html body.wp-theme-ea-vintage .ea-product-card .ea-product-card__variation-button.ea-product-card__variation-button.ea-product-card__variation-button.ea-product-card__variation-button.ea-product-card__variation-button.ea-product-card__variation-button,
html body.wp-theme-ea-vintage .ea-product-card .ea-product-card__addon.ea-product-card__addon.ea-product-card__addon.ea-product-card__addon.ea-product-card__addon.ea-product-card__addon,
html body.wp-theme-ea-vintage .ea-product-card .ea-product-card__price.ea-product-card__price.ea-product-card__price.ea-product-card__price.ea-product-card__price.ea-product-card__price,
html body.wp-theme-ea-vintage .ea-product-card .ea-product-card__addon-price.ea-product-card__addon-price.ea-product-card__addon-price.ea-product-card__addon-price.ea-product-card__addon-price.ea-product-card__addon-price {
  border-radius: 999px !important;
}
html body.wp-theme-ea-vintage .ea-product-card .ea-product-card__dock.ea-product-card__dock.ea-product-card__dock.ea-product-card__dock.ea-product-card__dock.ea-product-card__dock,
html body.wp-theme-ea-vintage .ea-product-card .ea-product-card__variations.ea-product-card__variations.ea-product-card__variations.ea-product-card__variations.ea-product-card__variations.ea-product-card__variations,
html body.wp-theme-ea-vintage .ea-product-card .ea-product-card__addon-list.ea-product-card__addon-list.ea-product-card__addon-list.ea-product-card__addon-list.ea-product-card__addon-list.ea-product-card__addon-list {
  border-radius: 22px !important;
}
html body.wp-theme-ea-vintage .ea-product-card .ea-product-card__button.ea-product-card__button.ea-product-card__button.ea-product-card__button.ea-product-card__button.ea-product-card__button,
html body.wp-theme-ea-vintage .ea-product-card .ea-product-card__add.ea-product-card__add.ea-product-card__add.ea-product-card__add.ea-product-card__add.ea-product-card__add,
html body.wp-theme-ea-vintage .ea-product-card .add_to_cart_button.add_to_cart_button.add_to_cart_button.add_to_cart_button.add_to_cart_button.add_to_cart_button,
html body.wp-theme-ea-vintage .single_add_to_cart_button.single_add_to_cart_button.single_add_to_cart_button.single_add_to_cart_button.single_add_to_cart_button.single_add_to_cart_button,
html body.wp-theme-ea-vintage .ea-split-buy__primary.ea-split-buy__primary.ea-split-buy__primary.ea-split-buy__primary.ea-split-buy__primary.ea-split-buy__primary {
  border-radius: 999px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
}

/* Product pages have a bottom purchase bar; lift cart/chat dock above it so Add to Cart remains tappable. */
@media (max-width: 767px) {
  html body.single-product .ea-live-chat__dock {
    bottom: calc(82px + env(safe-area-inset-bottom)) !important;
  }
  html body.single-product.ea-footer-in-view .ea-live-chat__dock:not(.is-open) {
    transform: translateX(-50%) translateY(-18px) !important;
  }
  html body.single-product { padding-bottom: calc(150px + env(safe-area-inset-bottom)) !important; }
}

/* Mobile cart: price label must not intercept quantity control taps. */
html body.woocommerce-cart .ea-cart-row__price {
  pointer-events: none !important;
}
html body.woocommerce-cart .ea-cart-qty {
  position: relative !important;
  z-index: 3 !important;
}

/* Cart page: remove the editorial divider/copy that reads like a stray rule above the cart. */
html body.woocommerce-cart .ea-cart-minimal__head {
  border-bottom: 0 !important;
  padding-bottom: 0 !important;
  margin-bottom: 18px !important;
}
html body.woocommerce-cart .ea-cart-minimal__sub {
  display: none !important;
}

/* Keep the persistent cart/support dock readable and centered instead of collapsing into icon-only blocks. */
html body .ea-live-chat__dock {
  align-items: stretch !important;
  justify-content: center !important;
  min-height: 56px !important;
  isolation: isolate !important;
}
html body .ea-live-chat__dock .ea-floating-cart,
html body .ea-live-chat__dock .ea-live-chat__launcher {
  min-height: 56px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  white-space: nowrap !important;
}
html body .ea-live-chat__dock .ea-floating-cart {
  min-width: 132px !important;
  padding: 0 18px !important;
}
html body .ea-live-chat__dock .ea-live-chat__launcher {
  min-width: 148px !important;
  padding: 0 18px !important;
}
html body .ea-live-chat__dock .ea-floating-cart__icon,
html body .ea-live-chat__dock .ea-live-chat__launcher-icon {
  flex: 0 0 auto !important;
}
html body .ea-live-chat__dock .ea-floating-cart__copy,
html body .ea-live-chat__dock .ea-live-chat__launcher-copy {
  display: grid !important;
  place-items: center start !important;
  min-width: 0 !important;
  line-height: 1.05 !important;
}
@media (max-width: 767px) {
  html body .ea-live-chat__dock {
    width: min(352px, calc(100vw - 24px)) !important;
    max-width: calc(100vw - 24px) !important;
  }
  html body .ea-live-chat__dock .ea-floating-cart,
  html body .ea-live-chat__dock .ea-live-chat__launcher {
    min-width: 0 !important;
    flex: 1 1 0 !important;
    padding-inline: 12px !important;
  }
}

@media (max-width: 767px) {
  html body .ea-live-chat,
  html body .ea-live-chat.is-loading {
    left: 50% !important;
    right: auto !important;
    width: min(352px, calc(100vw - 24px)) !important;
    max-width: calc(100vw - 24px) !important;
    transform: translateX(-50%) !important;
  }
  html body .ea-live-chat__dock {
    left: 50% !important;
    right: auto !important;
    bottom: max(12px, env(safe-area-inset-bottom)) !important;
    width: min(352px, calc(100vw - 24px)) !important;
    max-width: calc(100vw - 24px) !important;
    transform: translateX(-50%) !important;
  }
}

/* Checkout: all proxy/order buttons share one centered, guarded submitting state. */
html body.woocommerce-checkout #place_order,
html body.woocommerce-checkout [data-mobile-place-order],
html body.woocommerce-checkout [data-summary-place-order] {
  min-height: 56px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  line-height: 1 !important;
}
html.ea-checkout-is-submitting body.woocommerce-checkout #place_order,
html.ea-checkout-is-submitting body.woocommerce-checkout [data-mobile-place-order],
html.ea-checkout-is-submitting body.woocommerce-checkout [data-summary-place-order] {
  cursor: progress !important;
  filter: saturate(.92) brightness(.96) !important;
}
html.ea-checkout-is-submitting body.woocommerce-checkout [data-mobile-place-order]::after,
html.ea-checkout-is-submitting body.woocommerce-checkout [data-summary-place-order]::after,
html.ea-checkout-is-submitting body.woocommerce-checkout #place_order::after {
  content: "";
  width: 14px;
  height: 14px;
  margin-left: 10px;
  border-radius: 999px;
  border: 2px solid currentColor;
  border-right-color: transparent;
  animation: eaCheckoutSpin .75s linear infinite;
}
@keyframes eaCheckoutSpin {
  to { transform: rotate(360deg); }
}
@media (prefers-reduced-motion: reduce) {
  html.ea-checkout-is-submitting body.woocommerce-checkout [data-mobile-place-order]::after,
  html.ea-checkout-is-submitting body.woocommerce-checkout [data-summary-place-order]::after,
  html.ea-checkout-is-submitting body.woocommerce-checkout #place_order::after {
    animation: none;
  }
}

/* Final visual-residual pass: make scanner-confirmed overlays and controls readable without changing layout. */
html body .ea-home-shop-hero-htl1 {
  line-height: 1.08 !important;
  padding-block: .03em .14em !important;
  overflow: visible !important;
}
html body .ea-home-reel__name {
  display: inline-block !important;
  width: auto !important;
  max-width: calc(100% - 24px) !important;
  min-height: 28px !important;
  padding: 5px 9px !important;
  border-radius: 8px !important;
  background: rgba(42, 20, 13, .78) !important;
  color: #fff8ed !important;
  text-shadow: none !important;
}
html body .ea-workshop-wall__tile-copy,
html body .ea-workshop-wall__feature-copy {
  background-color: #2A140D !important;
  background-image: none !important;
  color: #fff8ed !important;
  border-radius: 0 0 2px 2px !important;
  text-shadow: none !important;
}
html body .ea-workshop-wall__tile-copy strong,
html body .ea-workshop-wall__feature-copy strong,
html body .ea-workshop-wall__tile-copy span,
html body .ea-workshop-wall__feature-copy span {
  display: block !important;
  background: transparent !important;
  color: #fff8ed !important;
  text-shadow: none !important;
}
html body.single-product .ea-atelier-pdp__buy,
html body.single-product .ea-atelier-pdp__buy-top,
html body.single-product .ea-atelier-pdp__notes,
html body.single-product .ea-atelier-pdp__notes span {
  background-color: #2A140D !important;
}
html body.single-product .ea-atelier-pdp__buy-top span,
html body.single-product .ea-atelier-pdp__buy-top strong,
html body.single-product .ea-atelier-pdp__buy-top small,
html body.single-product .ea-atelier-pdp__notes span {
  color: #fff8ed !important;
  text-shadow: none !important;
}
html body.single-product .ea-stitch-pdp .ea-atelier-pdp__notes span,
html body.single-product .ea-atelier-pdp__notes span {
  background: #2A140D !important;
  border-color: rgba(255, 248, 237, .32) !important;
}
html body.single-product .ea-stitch-pdp__fitment-help.ea-stitch-pdp__fitment-help {
  background-color: #2A140D !important;
  color: #fff8ed !important;
  text-shadow: none !important;
}
html body.single-product .ea-atelier-pdp__slide[aria-hidden="true"] .ea-atelier-pdp__zoom {
  visibility: hidden !important;
}
html body.single-product .ea-atelier-pdp__slide.is-active .ea-atelier-pdp__zoom,
html body.single-product .ea-atelier-pdp__slide[aria-hidden="false"] .ea-atelier-pdp__zoom {
  visibility: visible !important;
}
html body.woocommerce-checkout h1,
html body.woocommerce-checkout .entry-title,
html body.woocommerce-checkout .page-title {
  line-height: 1.12 !important;
  padding-bottom: .12em !important;
  overflow: visible !important;
}
html body .ea-product-card__qty input,
html body .ea-atelier-pdp__qty input,
html body .quantity input.qty {
  min-width: 44px !important;
}
html body .ea-home-reel__note {
  display: inline-block !important;
  width: auto !important;
  max-width: min(640px, calc(100% - 24px)) !important;
  padding: 7px 10px !important;
  border-radius: 8px !important;
  background-color: #2A140D !important;
  color: #fff8ed !important;
  text-shadow: none !important;
}
html body .ea-collection-card__mini-variation {
  min-height: 44px !important;
}
html body #ea-home-reel-title.ea-home-reel__title {
  line-height: 1.1 !important;
  padding-bottom: .14em !important;
  overflow: visible !important;
}
html body.single-product .ea-atelier-pdp__zoom {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* Final mobile sticky dock centering guard: must stay last so older dock overrides cannot shift it. */
@media (max-width: 767px) {
  html body .ea-live-chat,
  html body .ea-live-chat.is-loading {
    left: 50% !important;
    right: auto !important;
    width: min(352px, calc(100vw - 24px)) !important;
    max-width: calc(100vw - 24px) !important;
    transform: translateX(-50%) !important;
  }
  html body .ea-live-chat__dock {
    left: 50% !important;
    right: auto !important;
    bottom: max(12px, env(safe-area-inset-bottom)) !important;
    width: min(352px, calc(100vw - 24px)) !important;
    max-width: calc(100vw - 24px) !important;
    transform: translateX(-50%) !important;
  }
}

/* Final mobile sticky dock equal-margin guard: no parent transform, no nested fixed-position math. */
@media (max-width: 767px) {
  html body .ea-live-chat,
  html body .ea-live-chat.is-loading {
    left: 12px !important;
    right: 12px !important;
    width: auto !important;
    max-width: none !important;
    transform: none !important;
  }
  html body .ea-live-chat__dock {
    left: 12px !important;
    right: 12px !important;
    bottom: max(12px, env(safe-area-inset-bottom)) !important;
    width: auto !important;
    max-width: none !important;
    transform: none !important;
  }
}

/* Final mobile sticky dock width guard: fixed shell/dock must not shrink to icon width. */
@media (max-width: 767px) {
  html body .ea-live-chat,
  html body .ea-live-chat.is-loading {
    left: 12px !important;
    right: auto !important;
    width: calc(100vw - 24px) !important;
    max-width: calc(100vw - 24px) !important;
    transform: none !important;
  }
  html body .ea-live-chat__dock {
    left: 12px !important;
    right: auto !important;
    bottom: max(12px, env(safe-area-inset-bottom)) !important;
    width: calc(100vw - 24px) !important;
    max-width: calc(100vw - 24px) !important;
    transform: none !important;
  }
}

/* Final mobile sticky cart/support contract: restore full-width dock after legacy icon-only rules. */
@media (max-width: 767px) {
  html body:not(.woocommerce-checkout) .ea-live-chat[data-ea-live-chat]:not(.is-open),
  html body:not(.woocommerce-checkout) .ea-live-chat:not(.is-open) {
    left: 12px !important;
    right: auto !important;
    bottom: max(12px, env(safe-area-inset-bottom)) !important;
    width: calc(100vw - 24px) !important;
    min-width: 0 !important;
    max-width: calc(100vw - 24px) !important;
    height: 56px !important;
    transform: none !important;
  }
  html body:not(.woocommerce-checkout) .ea-live-chat[data-ea-live-chat]:not(.is-open) .ea-live-chat__dock,
  html body:not(.woocommerce-checkout) .ea-live-chat:not(.is-open) .ea-live-chat__dock {
    left: 12px !important;
    right: auto !important;
    bottom: max(12px, env(safe-area-inset-bottom)) !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(142px, .82fr) !important;
    width: calc(100vw - 24px) !important;
    min-width: 0 !important;
    max-width: calc(100vw - 24px) !important;
    height: 56px !important;
    max-height: 56px !important;
    transform: none !important;
    margin: 0 !important;
  }
  html body:not(.woocommerce-checkout) .ea-live-chat[data-ea-live-chat]:not(.is-open) .ea-floating-cart,
  html body:not(.woocommerce-checkout) .ea-live-chat[data-ea-live-chat]:not(.is-open) .ea-live-chat__launcher,
  html body:not(.woocommerce-checkout) .ea-live-chat:not(.is-open) .ea-floating-cart,
  html body:not(.woocommerce-checkout) .ea-live-chat:not(.is-open) .ea-live-chat__launcher {
    display: inline-flex !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    height: 56px !important;
    min-height: 56px !important;
    padding-inline: 12px !important;
    gap: 8px !important;
  }
  html body:not(.woocommerce-checkout) .ea-live-chat[data-ea-live-chat]:not(.is-open) .ea-floating-cart {
    border-radius: 999px 0 0 999px !important;
  }
  html body:not(.woocommerce-checkout) .ea-live-chat[data-ea-live-chat]:not(.is-open) .ea-live-chat__launcher {
    border-radius: 0 999px 999px 0 !important;
  }
  html body:not(.woocommerce-checkout) .ea-live-chat[data-ea-live-chat]:not(.is-open) .ea-floating-cart__copy,
  html body:not(.woocommerce-checkout) .ea-live-chat[data-ea-live-chat]:not(.is-open) .ea-live-chat__launcher-copy,
  html body:not(.woocommerce-checkout) .ea-live-chat:not(.is-open) .ea-floating-cart__copy,
  html body:not(.woocommerce-checkout) .ea-live-chat:not(.is-open) .ea-live-chat__launcher-copy {
    display: grid !important;
    min-width: 0 !important;
    place-items: center start !important;
  }
}

/* Final mobile dock specificity guard: beat legacy page-context icon-only rules. */
@media (max-width: 767px) {
  html body:not(.single-product):not(.woocommerce-cart):not(.woocommerce-checkout) .ea-live-chat[data-ea-live-chat]:not(.is-open),
  html body.single-product:not(.woocommerce-cart):not(.woocommerce-checkout) .ea-live-chat[data-ea-live-chat]:not(.is-open) {
    left: 12px !important;
    right: auto !important;
    bottom: max(12px, env(safe-area-inset-bottom)) !important;
    width: calc(100vw - 24px) !important;
    min-width: 0 !important;
    max-width: calc(100vw - 24px) !important;
    height: 56px !important;
    transform: none !important;
  }
  html body:not(.single-product):not(.woocommerce-cart):not(.woocommerce-checkout) .ea-live-chat[data-ea-live-chat]:not(.is-open) .ea-live-chat__dock,
  html body.single-product:not(.woocommerce-cart):not(.woocommerce-checkout) .ea-live-chat[data-ea-live-chat]:not(.is-open) .ea-live-chat__dock {
    left: 12px !important;
    right: auto !important;
    bottom: max(12px, env(safe-area-inset-bottom)) !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(142px, .82fr) !important;
    width: calc(100vw - 24px) !important;
    min-width: 0 !important;
    max-width: calc(100vw - 24px) !important;
    height: 56px !important;
    max-height: 56px !important;
    transform: none !important;
    margin: 0 !important;
  }
  html body:not(.single-product):not(.woocommerce-cart):not(.woocommerce-checkout) .ea-live-chat[data-ea-live-chat]:not(.is-open) .ea-floating-cart,
  html body:not(.single-product):not(.woocommerce-cart):not(.woocommerce-checkout) .ea-live-chat[data-ea-live-chat]:not(.is-open) .ea-live-chat__launcher,
  html body.single-product:not(.woocommerce-cart):not(.woocommerce-checkout) .ea-live-chat[data-ea-live-chat]:not(.is-open) .ea-floating-cart,
  html body.single-product:not(.woocommerce-cart):not(.woocommerce-checkout) .ea-live-chat[data-ea-live-chat]:not(.is-open) .ea-live-chat__launcher {
    display: inline-flex !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    height: 56px !important;
    min-height: 56px !important;
    padding-inline: 12px !important;
    gap: 8px !important;
  }
  html body:not(.single-product):not(.woocommerce-cart):not(.woocommerce-checkout) .ea-live-chat[data-ea-live-chat]:not(.is-open) .ea-floating-cart,
  html body.single-product:not(.woocommerce-cart):not(.woocommerce-checkout) .ea-live-chat[data-ea-live-chat]:not(.is-open) .ea-floating-cart {
    border-radius: 999px 0 0 999px !important;
  }
  html body:not(.single-product):not(.woocommerce-cart):not(.woocommerce-checkout) .ea-live-chat[data-ea-live-chat]:not(.is-open) .ea-live-chat__launcher,
  html body.single-product:not(.woocommerce-cart):not(.woocommerce-checkout) .ea-live-chat[data-ea-live-chat]:not(.is-open) .ea-live-chat__launcher {
    border-radius: 0 999px 999px 0 !important;
  }
  html body:not(.single-product):not(.woocommerce-cart):not(.woocommerce-checkout) .ea-live-chat[data-ea-live-chat]:not(.is-open) .ea-floating-cart__copy,
  html body:not(.single-product):not(.woocommerce-cart):not(.woocommerce-checkout) .ea-live-chat[data-ea-live-chat]:not(.is-open) .ea-live-chat__launcher-copy,
  html body.single-product:not(.woocommerce-cart):not(.woocommerce-checkout) .ea-live-chat[data-ea-live-chat]:not(.is-open) .ea-floating-cart__copy,
  html body.single-product:not(.woocommerce-cart):not(.woocommerce-checkout) .ea-live-chat[data-ea-live-chat]:not(.is-open) .ea-live-chat__launcher-copy {
    display: grid !important;
    min-width: 0 !important;
    place-items: center start !important;
  }
}

/* Home fallback chat shell already owns the 12px mobile margin; keep its inner dock flush. */
@media (max-width: 767px) {
  html body.home .ea-live-chat[data-ea-live-chat]:not(.is-open) .ea-live-chat__dock {
    left: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
  }
}

/* Home-specific final dock flush with page-context specificity. */
@media (max-width: 767px) {
  html body.home:not(.single-product):not(.woocommerce-cart):not(.woocommerce-checkout) .ea-live-chat[data-ea-live-chat]:not(.is-open) .ea-live-chat__dock {
    left: 0 !important;
    right: auto !important;
    width: 100% !important;
    max-width: 100% !important;
  }
}

/* Footer-avoidance compact state: icon-only dock must not clip hidden cart/support text. */
@media (max-width: 767px) {
  html body.ea-footer-in-view .ea-live-chat[data-ea-live-chat]:not(.is-open) .ea-floating-cart__copy,
  html body.ea-footer-in-view .ea-live-chat[data-ea-live-chat]:not(.is-open) .ea-live-chat__launcher-copy,
  html body.ea-footer-in-view .ea-live-chat:not(.is-open) .ea-floating-cart__copy,
  html body.ea-footer-in-view .ea-live-chat:not(.is-open) .ea-live-chat__launcher-copy {
    display: none !important;
  }
  html body.ea-footer-in-view .ea-live-chat[data-ea-live-chat]:not(.is-open) .ea-floating-cart,
  html body.ea-footer-in-view .ea-live-chat[data-ea-live-chat]:not(.is-open) .ea-live-chat__launcher,
  html body.ea-footer-in-view .ea-live-chat:not(.is-open) .ea-floating-cart,
  html body.ea-footer-in-view .ea-live-chat:not(.is-open) .ea-live-chat__launcher {
    justify-content: center !important;
  }
}

/* Product purchase priority: sticky support/cart dock yields while the Add to Cart CTA is visible. */
@media (max-width: 767px) {
  html body.single-product.ea-product-cta-in-view .ea-live-chat[data-ea-live-chat]:not(.is-open),
  html body.single-product.ea-product-cta-in-view .ea-live-chat:not(.is-open) {
    opacity: 0 !important;
    pointer-events: none !important;
    transform: translateY(calc(100% + 24px)) !important;
  }
}
@media (prefers-reduced-motion: reduce) and (max-width: 767px) {
  html body.single-product.ea-product-cta-in-view .ea-live-chat[data-ea-live-chat]:not(.is-open),
  html body.single-product.ea-product-cta-in-view .ea-live-chat:not(.is-open) {
    transform: none !important;
  }
}

/* Compact footer dock still needs enough intrinsic width for the cart accessible text. */
@media (max-width: 767px) {
  html body.ea-footer-in-view .ea-live-chat[data-ea-live-chat]:not(.is-open) .ea-live-chat__dock,
  html body.ea-footer-in-view .ea-live-chat:not(.is-open) .ea-live-chat__dock {
    grid-template-columns: 64px 64px !important;
    width: 132px !important;
    max-width: 132px !important;
  }
  html body.ea-footer-in-view .ea-live-chat[data-ea-live-chat]:not(.is-open) .ea-floating-cart,
  html body.ea-footer-in-view .ea-live-chat:not(.is-open) .ea-floating-cart,
  html body.ea-footer-in-view .ea-live-chat[data-ea-live-chat]:not(.is-open) .ea-live-chat__launcher,
  html body.ea-footer-in-view .ea-live-chat:not(.is-open) .ea-live-chat__launcher {
    width: 64px !important;
    min-width: 64px !important;
    max-width: 64px !important;
  }
}

/* Mobile shop/category overflow guard: tabs scroll inside their rail, cards may not widen the page. */
@media (max-width: 767px) {
  html body.post-type-archive-product,
  html body.tax-product_cat,
  html body.woocommerce-shop,
  html body.post-type-archive-product .site-content,
  html body.tax-product_cat .site-content,
  html body.woocommerce-shop .site-content {
    max-width: 100vw !important;
    overflow-x: clip !important;
  }
  html body.post-type-archive-product .ea-shop-selector,
  html body.tax-product_cat .ea-shop-selector,
  html body.woocommerce-shop .ea-shop-selector {
    max-width: 100vw !important;
    overflow: hidden !important;
  }
  html body.post-type-archive-product .ea-shop-selector__tabs,
  html body.tax-product_cat .ea-shop-selector__tabs,
  html body.woocommerce-shop .ea-shop-selector__tabs {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 8px !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-snap-type: x proximity !important;
    -webkit-overflow-scrolling: touch !important;
  }
  html body.post-type-archive-product .ea-shop-selector__tab,
  html body.tax-product_cat .ea-shop-selector__tab,
  html body.woocommerce-shop .ea-shop-selector__tab {
    flex: 0 0 auto !important;
    scroll-snap-align: start !important;
  }
  html body.post-type-archive-product .ea-product-card,
  html body.tax-product_cat .ea-product-card,
  html body.woocommerce-shop .ea-product-card {
    max-width: calc(100vw - 24px) !important;
  }
}

/* Product mobile purchase safety: never let chat/cart dock cover the Add to Cart CTA. */
@media (max-width: 767px) {
  html body.single-product:not(.woocommerce-cart):not(.woocommerce-checkout) .ea-live-chat[data-ea-live-chat]:not(.is-open),
  html body.single-product:not(.woocommerce-cart):not(.woocommerce-checkout) .ea-live-chat:not(.is-open) {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }
}

/* Exact footer compact override: prevent icon-only cart from measuring hidden text. */
@media (max-width: 767px) {
  html body.ea-footer-in-view .ea-live-chat[data-ea-live-chat]:not(.is-open) a.ea-floating-cart.is-empty,
  html body.ea-footer-in-view .ea-live-chat:not(.is-open) a.ea-floating-cart.is-empty {
    width: 64px !important;
    min-width: 64px !important;
    max-width: 64px !important;
    overflow: hidden !important;
    font-size: 0 !important;
    text-indent: -999px !important;
  }
  html body.ea-footer-in-view .ea-live-chat[data-ea-live-chat]:not(.is-open) a.ea-floating-cart.is-empty .ea-floating-cart__icon,
  html body.ea-footer-in-view .ea-live-chat:not(.is-open) a.ea-floating-cart.is-empty .ea-floating-cart__icon {
    text-indent: 0 !important;
  }
  html body.ea-footer-in-view .ea-live-chat[data-ea-live-chat]:not(.is-open) a.ea-floating-cart.is-empty .ea-floating-cart__copy,
  html body.ea-footer-in-view .ea-live-chat:not(.is-open) a.ea-floating-cart.is-empty .ea-floating-cart__copy {
    display: none !important;
    width: 0 !important;
    min-width: 0 !important;
    max-width: 0 !important;
    overflow: hidden !important;
  }
}

/* Shop shell overflow guard: product rails must not widen the document. */
html body.post-type-archive-product,
html body.tax-product_cat,
html body.woocommerce-shop {
  max-width: 100vw !important;
  overflow-x: clip !important;
}
html body.post-type-archive-product #page,
html body.tax-product_cat #page,
html body.woocommerce-shop #page,
html body.post-type-archive-product .site,
html body.tax-product_cat .site,
html body.woocommerce-shop .site,
html body.post-type-archive-product .site-content,
html body.tax-product_cat .site-content,
html body.woocommerce-shop .site-content {
  max-width: 100vw !important;
  overflow-x: clip !important;
}

/* Product mobile dock returns after add-to-cart so the buyer can open the sticky cart. */
@media (max-width: 767px) {
  html body.single-product:not(.woocommerce-cart):not(.woocommerce-checkout) .ea-live-chat[data-ea-live-chat]:not(.is-open):has(.ea-floating-cart:not(.is-empty)),
  html body.single-product:not(.woocommerce-cart):not(.woocommerce-checkout) .ea-live-chat:not(.is-open):has(.ea-floating-cart:not(.is-empty)) {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: none !important;
  }
  html body.single-product:not(.woocommerce-cart):not(.woocommerce-checkout) .ea-live-chat[data-ea-live-chat]:not(.is-open):has(.ea-floating-cart:not(.is-empty)) .ea-live-chat__dock,
  html body.single-product:not(.woocommerce-cart):not(.woocommerce-checkout) .ea-live-chat:not(.is-open):has(.ea-floating-cart:not(.is-empty)) .ea-live-chat__dock,
  html body.single-product:not(.woocommerce-cart):not(.woocommerce-checkout) .ea-live-chat[data-ea-live-chat]:not(.is-open):has(.ea-floating-cart:not(.is-empty)) .ea-floating-cart,
  html body.single-product:not(.woocommerce-cart):not(.woocommerce-checkout) .ea-live-chat:not(.is-open):has(.ea-floating-cart:not(.is-empty)) .ea-floating-cart,
  html body.single-product:not(.woocommerce-cart):not(.woocommerce-checkout) .ea-live-chat[data-ea-live-chat]:not(.is-open):has(.ea-floating-cart:not(.is-empty)) .ea-live-chat__launcher,
  html body.single-product:not(.woocommerce-cart):not(.woocommerce-checkout) .ea-live-chat:not(.is-open):has(.ea-floating-cart:not(.is-empty)) .ea-live-chat__launcher {
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
  }
}

/* Mobile shop/category: stack product cards and wrap filter tabs to avoid body-level overflow. */
@media (max-width: 767px) {
  html body.post-type-archive-product .ea-product-grid.ea-shop-product-grid,
  html body.tax-product_cat .ea-product-grid.ea-shop-product-grid,
  html body.woocommerce-shop .ea-product-grid.ea-shop-product-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    grid-auto-flow: row !important;
    grid-auto-columns: auto !important;
    gap: 14px !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow: visible !important;
    padding-inline: 0 !important;
  }
  html body.post-type-archive-product .ea-product-grid.ea-shop-product-grid > .ea-product-card,
  html body.tax-product_cat .ea-product-grid.ea-shop-product-grid > .ea-product-card,
  html body.woocommerce-shop .ea-product-grid.ea-shop-product-grid > .ea-product-card {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    transform: none !important;
  }
  html body.post-type-archive-product .ea-shop-selector__tabs,
  html body.tax-product_cat .ea-shop-selector__tabs,
  html body.woocommerce-shop .ea-shop-selector__tabs {
    flex-wrap: wrap !important;
    overflow: visible !important;
  }
}

/* Absolute last guard: before product add, empty sticky cart/support dock cannot cover Add to Cart. */
@media (max-width: 767px) {
  html body.single-product:not(.woocommerce-cart):not(.woocommerce-checkout) .ea-live-chat[data-ea-live-chat]:not(.is-open):has(.ea-floating-cart.is-empty),
  html body.single-product:not(.woocommerce-cart):not(.woocommerce-checkout) .ea-live-chat:not(.is-open):has(.ea-floating-cart.is-empty) {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }
}

/* Product CTA hit target wins over sticky dock when Playwright/user scroll aligns them. */
@media (max-width: 767px) {
  html body.single-product .ea-atelier-pdp__add,
  html body.single-product .single_add_to_cart_button,
  html body.single-product button[name="add-to-cart"] {
    position: relative !important;
    z-index: 2147483601 !important;
    pointer-events: auto !important;
  }
}

/* Exact footer-visible compact dock width: 48px clips cart text metrics, 64px does not. */
@media (max-width: 767px) {
  html body.ea-footer-in-view .ea-live-chat[data-ea-live-chat]:not(.is-open),
  html body.ea-footer-in-view .ea-live-chat:not(.is-open) {
    width: 64px !important;
    max-width: 64px !important;
  }
  html body.ea-footer-in-view .ea-live-chat[data-ea-live-chat]:not(.is-open) .ea-live-chat__dock.is-footer-visible,
  html body.ea-footer-in-view .ea-live-chat:not(.is-open) .ea-live-chat__dock.is-footer-visible {
    grid-template-columns: 64px !important;
    width: 64px !important;
    min-width: 64px !important;
    max-width: 64px !important;
  }
  html body.ea-footer-in-view .ea-live-chat[data-ea-live-chat]:not(.is-open) .ea-live-chat__dock.is-footer-visible a.ea-floating-cart.is-empty,
  html body.ea-footer-in-view .ea-live-chat:not(.is-open) .ea-live-chat__dock.is-footer-visible a.ea-floating-cart.is-empty {
    width: 64px !important;
    min-width: 64px !important;
    max-width: 64px !important;
  }
}

/* Product mobile with existing cart: keep sticky cart usable, but park it below header away from Add to Cart. */
@media (max-width: 767px) {
  html body.single-product:not(.woocommerce-cart):not(.woocommerce-checkout) .ea-live-chat[data-ea-live-chat]:not(.is-open):has(.ea-floating-cart:not(.is-empty)),
  html body.single-product:not(.woocommerce-cart):not(.woocommerce-checkout) .ea-live-chat:not(.is-open):has(.ea-floating-cart:not(.is-empty)) {
    top: calc(var(--ea-header-height, 92px) + 10px) !important;
    bottom: auto !important;
    left: 12px !important;
    right: auto !important;
    width: calc(100vw - 24px) !important;
    max-width: calc(100vw - 24px) !important;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: none !important;
    transform: none !important;
  }
  html body.single-product:not(.woocommerce-cart):not(.woocommerce-checkout) .ea-live-chat[data-ea-live-chat]:not(.is-open):has(.ea-floating-cart:not(.is-empty)) .ea-live-chat__dock,
  html body.single-product:not(.woocommerce-cart):not(.woocommerce-checkout) .ea-live-chat:not(.is-open):has(.ea-floating-cart:not(.is-empty)) .ea-live-chat__dock {
    top: calc(var(--ea-header-height, 92px) + 10px) !important;
    bottom: auto !important;
    left: 12px !important;
    right: auto !important;
    width: calc(100vw - 24px) !important;
    max-width: calc(100vw - 24px) !important;
    pointer-events: auto !important;
  }
}
