/* ============================================================
   FOX AMETHYST — CUSTOM CSS COMPLETO
   Elementor > Site Settings > Custom CSS
   Substitua TODO o conteúdo atual por este arquivo.
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;1,300;1,400&family=Jost:wght@200;300;400;500&display=swap');

/* ── VARIÁVEIS ── */
:root {
  --fa-amethyst:     #6B3FA0;
  --fa-amethyst-mid: #8B5CC4;
  --fa-amethyst-lt:  #C4A0E8;
  --fa-gold:         #C8A96E;
  --fa-gold-lt:      #E8D5A8;
  --fa-obsidian:     #0D0A12;
  --fa-deep:         #130E1C;
  --fa-dark:         #1C1628;
  --fa-cream:        #F5F0EA;
}

/* ── BASE ── */
body {
  background-color: var(--fa-obsidian);
  font-family: 'Jost', sans-serif;
  font-weight: 300;
  color: var(--fa-cream);
}
h1, h2, h3, h4 {
  font-family: 'Cormorant Garamond', serif;
  font-weight: 300;
}
.elementor-widget-heading .elementor-heading-title {
  font-family: 'Cormorant Garamond', serif;
  font-weight: 300;
}

/* ══════════════════════════════════════════
   SHOP — LISTA DE PRODUTOS
══════════════════════════════════════════ */

.woocommerce-page .woocommerce,
.woocommerce {
  background: transparent !important;
  max-width: 1300px;
  margin: 0 auto;
  padding: 0 60px 120px !important;
}
.woocommerce ul.products {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 2px !important;
  float: none !important;
  clear: both;
}
.woocommerce ul.products li.product {
  background: #1C1628 !important;
  border: 1px solid rgba(200,169,110,.07) !important;
  border-radius: 0 !important;
  overflow: hidden !important;
  transition: border-color .4s, transform .4s !important;
  padding: 0 !important;
  margin: 0 !important;
  float: none !important;
  width: auto !important;
  display: flex !important;
  flex-direction: column !important;
}
.woocommerce ul.products li.product:hover {
  border-color: rgba(200,169,110,.25) !important;
  transform: translateY(-4px) !important;
  box-shadow: 0 20px 60px rgba(0,0,0,.4) !important;
}
.woocommerce ul.products li.product a img {
  display: block !important;
  width: 100% !important;
  aspect-ratio: 3/4 !important;
  object-fit: cover !important;
  filter: saturate(.9) brightness(.88) !important;
  transition: transform .9s cubic-bezier(.16,1,.3,1), filter .7s !important;
  margin: 0 !important;
}
.woocommerce ul.products li.product:hover a img {
  transform: scale(1.06) !important;
  filter: saturate(1.05) brightness(.98) !important;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title {
  font-family: 'Cormorant Garamond', serif !important;
  font-size: 22px !important;
  font-weight: 400 !important;
  color: #FFFFFF !important;
  padding: 20px 20px 6px !important;
  line-height: 1.2 !important;
}
.woocommerce ul.products li.product .price {
  font-family: 'Cormorant Garamond', serif !important;
  font-size: 28px !important;
  font-weight: 300 !important;
  color: #F5F0EA !important;
  padding: 4px 20px 20px !important;
  display: block !important;
}
.woocommerce ul.products li.product a.button,
.woocommerce ul.products li.product .button {
  display: block !important;
  margin: 0 20px 20px !important;
  font-family: 'Jost', sans-serif !important;
  font-size: 10px !important;
  font-weight: 400 !important;
  letter-spacing: .2em !important;
  text-transform: uppercase !important;
  background: transparent !important;
  color: #C8A96E !important;
  border: 1px solid rgba(200,169,110,.3) !important;
  border-radius: 0 !important;
  padding: 13px 20px !important;
  text-align: center !important;
  transition: all .3s !important;
}
.woocommerce ul.products li.product a.button:hover,
.woocommerce ul.products li.product .button:hover {
  background: #C8A96E !important;
  color: #0D0A12 !important;
  border-color: #C8A96E !important;
}
.woocommerce span.onsale {
  background: #8B5CC4 !important;
  color: #fff !important;
  font-family: 'Jost', sans-serif !important;
  font-size: 9px !important;
  font-weight: 400 !important;
  letter-spacing: .2em !important;
  text-transform: uppercase !important;
  border-radius: 0 !important;
  padding: 5px 10px !important;
  min-height: auto !important;
  min-width: auto !important;
  line-height: 1.4 !important;
}
.woocommerce .woocommerce-result-count,
.woocommerce .woocommerce-ordering {
  display: none !important;
}

/* ══════════════════════════════════════════
   PRODUTO INDIVIDUAL
══════════════════════════════════════════ */

/* Fundo escuro em TODOS os containers da página de produto */
.single-product,
.single-product #page,
.single-product #content,
.single-product #primary,
.single-product .site-main,
.single-product #main,
.single-product .content-area,
.single-product .entry-content,
.single-product .woocommerce,
.woocommerce-page.single-product {
  background: #0D0A12 !important;
  padding-top: 0 !important;
}
/* Remove fundo branco do Hello Elementor */
.single-product .hentry,
.single-product article {
  background: transparent !important;
}
.single-product .woocommerce-breadcrumb {
  max-width: 1300px !important;
  margin: 0 auto !important;
  padding: 120px 60px 0 !important;
  display: block !important;
  font-family: 'Jost', sans-serif !important;
  font-size: 11px !important;
  letter-spacing: .15em !important;
  color: rgba(245,240,234,.3) !important;
  background: transparent !important;
}
.single-product .woocommerce-breadcrumb a { color: #C8A96E !important; text-decoration: none !important; }
.single-product .woocommerce-breadcrumb a:hover { color: #E8D5A8 !important; }

.single-product .product {
  max-width: 1300px !important;
  margin: 0 auto !important;
  padding: 40px 60px 100px !important;
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 72px !important;
  align-items: start !important;
  background: transparent !important;
}

/* Galeria */
.single-product .woocommerce-product-gallery {
  grid-column: 1 !important;
  grid-row: 1 !important;
  border: 1px solid rgba(200,169,110,.15) !important;
  background: #1C1628 !important;
  position: relative !important;
  overflow: hidden !important;
  width: 100% !important;
}
.single-product .woocommerce-product-gallery .woocommerce-product-gallery__wrapper {
  margin: 0 !important;
}
.single-product .woocommerce-product-gallery__image {
  overflow: hidden !important;
  position: relative !important;
}
.single-product .woocommerce-product-gallery__image a {
  display: block !important;
  cursor: zoom-in !important;
}
.single-product .woocommerce-product-gallery__image img.wp-post-image {
  width: 100% !important;
  height: auto !important;
  display: block !important;
  margin: 0 !important;
  filter: saturate(1.05) brightness(.95) !important;
  transition: transform .6s cubic-bezier(.16,1,.3,1) !important;
}
.single-product .woocommerce-product-gallery__image:hover img.wp-post-image {
  transform: scale(1.04) !important;
}
.single-product img.zoomImg { display: none !important; }
.single-product .woocommerce-product-gallery__trigger {
  position: absolute !important;
  top: 16px !important; right: 16px !important;
  background: rgba(13,10,18,.7) !important;
  border-radius: 0 !important;
  width: 36px !important; height: 36px !important;
  z-index: 10 !important;
}

/* Summary */
.single-product .summary.entry-summary {
  grid-column: 2 !important;
  grid-row: 1 !important;
  padding: 0 !important;
  background: transparent !important;
}
.single-product .product_title.entry-title {
  font-family: 'Cormorant Garamond', serif !important;
  font-size: clamp(36px, 4vw, 58px) !important;
  font-weight: 300 !important;
  color: #FFFFFF !important;
  line-height: 1.1 !important;
  margin: 0 0 20px !important;
}
.single-product p.price,
.single-product span.price {
  font-family: 'Cormorant Garamond', serif !important;
  font-size: 52px !important;
  font-weight: 300 !important;
  color: #F5F0EA !important;
  line-height: 1 !important;
  display: block !important;
  padding: 20px 0 !important;
  margin: 0 0 20px !important;
  border-top: 1px solid rgba(200,169,110,.12) !important;
  border-bottom: 1px solid rgba(200,169,110,.12) !important;
}
.single-product .woocommerce-Price-currencySymbol {
  font-size: 60% !important;
  vertical-align: super !important;
}
.single-product .woocommerce-product-details__short-description {
  font-family: 'Jost', sans-serif !important;
  font-size: 14px !important;
  font-weight: 300 !important;
  line-height: 1.9 !important;
  color: rgba(245,240,234,.5) !important;
  margin: 0 0 28px !important;
  padding-bottom: 28px !important;
  border-bottom: 1px solid rgba(200,169,110,.08) !important;
}
.single-product .woocommerce-product-details__short-description p { color: rgba(245,240,234,.5) !important; }

.single-product form.cart {
  display: flex !important;
  gap: 12px !important;
  align-items: stretch !important;
  margin-bottom: 16px !important;
}
.single-product .quantity input.qty {
  background: rgba(255,255,255,.04) !important;
  border: 1px solid rgba(200,169,110,.2) !important;
  color: #F5F0EA !important;
  font-family: 'Cormorant Garamond', serif !important;
  font-size: 20px !important;
  font-weight: 300 !important;
  border-radius: 0 !important;
  padding: 0 16px !important;
  min-height: 54px !important;
  width: 72px !important;
  text-align: center !important;
  box-shadow: none !important;
  outline: none !important;
}
.single-product .single_add_to_cart_button.button {
  flex: 1 !important;
  background: #C8A96E !important;
  color: #0D0A12 !important;
  font-family: 'Jost', sans-serif !important;
  font-size: 11px !important;
  font-weight: 400 !important;
  letter-spacing: .22em !important;
  text-transform: uppercase !important;
  border-radius: 0 !important;
  padding: 16px 28px !important;
  border: none !important;
  transition: background .3s !important;
  text-align: center !important;
  box-shadow: none !important;
  min-height: 54px !important;
}
.single-product .single_add_to_cart_button.button:hover {
  background: #E8D5A8 !important;
  color: #0D0A12 !important;
}
.single-product .wc-stripe-product-checkout-container { margin-top: 12px !important; }
.single-product .gpay-button-container button,
.single-product .gpay-card-info-container { border-radius: 0 !important; }

.single-product .product_meta {
  font-family: 'Jost', sans-serif !important;
  font-size: 11px !important;
  font-weight: 300 !important;
  color: rgba(245,240,234,.25) !important;
  letter-spacing: .08em !important;
  margin-top: 20px !important;
  padding-top: 20px !important;
  border-top: 1px solid rgba(200,169,110,.08) !important;
}
.single-product .product_meta a { color: #C8A96E !important; text-decoration: none !important; }
.single-product .product_meta a:hover { color: #E8D5A8 !important; }

/* Tabs */
.single-product .woocommerce-tabs {
  grid-column: 1 / -1 !important;
  grid-row: 2 !important;
  margin-top: 40px !important;
  padding-top: 56px !important;
  border-top: 1px solid rgba(200,169,110,.08) !important;
  background: transparent !important;
}
.single-product .woocommerce-tabs ul.tabs.wc-tabs {
  display: flex !important;
  gap: 4px !important;
  margin: 0 0 36px !important;
  padding: 0 !important;
  border: none !important;
  background: none !important;
  list-style: none !important;
}
.single-product .woocommerce-tabs ul.tabs.wc-tabs::before,
.single-product .woocommerce-tabs ul.tabs.wc-tabs::after { display: none !important; }
.single-product .woocommerce-tabs ul.tabs.wc-tabs li {
  border: 1px solid rgba(200,169,110,.15) !important;
  border-radius: 0 !important;
  background: none !important;
  padding: 0 !important; margin: 0 !important;
  position: static !important;
}
.single-product .woocommerce-tabs ul.tabs.wc-tabs li::before,
.single-product .woocommerce-tabs ul.tabs.wc-tabs li::after { display: none !important; }
.single-product .woocommerce-tabs ul.tabs.wc-tabs li a {
  font-family: 'Jost', sans-serif !important;
  font-size: 10px !important;
  font-weight: 400 !important;
  letter-spacing: .2em !important;
  text-transform: uppercase !important;
  color: rgba(245,240,234,.45) !important;
  padding: 11px 24px !important;
  display: block !important;
  background: none !important;
}
.single-product .woocommerce-tabs ul.tabs.wc-tabs li.active {
  background: #C8A96E !important;
  border-color: #C8A96E !important;
}
.single-product .woocommerce-tabs ul.tabs.wc-tabs li.active a { color: #0D0A12 !important; }
.single-product .woocommerce-tabs ul.tabs.wc-tabs li:not(.active):hover a { color: #F5F0EA !important; }
.single-product .woocommerce-Tabs-panel {
  font-family: 'Jost', sans-serif !important;
  font-size: 14px !important;
  font-weight: 300 !important;
  line-height: 1.9 !important;
  color: rgba(245,240,234,.5) !important;
  background: none !important;
  border: none !important;
  padding: 0 !important; margin: 0 !important;
}
.single-product .woocommerce-Tabs-panel h2 { display: none !important; }
.single-product .woocommerce-Tabs-panel p { color: rgba(245,240,234,.5) !important; }

/* Atributos */
.single-product table.shop_attributes {
  width: 100% !important;
  border-collapse: collapse !important;
}
.single-product table.shop_attributes th,
.single-product table.shop_attributes td {
  font-family: 'Jost', sans-serif !important;
  font-size: 12px !important;
  font-weight: 300 !important;
  padding: 11px 14px !important;
  border: 1px solid rgba(200,169,110,.08) !important;
  color: rgba(245,240,234,.5) !important;
  background: rgba(255,255,255,.02) !important;
  text-align: left !important;
}
.single-product table.shop_attributes th {
  font-size: 9px !important;
  letter-spacing: .15em !important;
  text-transform: uppercase !important;
  color: #C8A96E !important;
  width: 30% !important;
  background: rgba(200,169,110,.04) !important;
}
.single-product table.shop_attributes p { color: rgba(245,240,234,.5) !important; margin: 0 !important; }

/* Relacionados */
.single-product .related.products {
  grid-column: 1 / -1 !important;
  grid-row: 3 !important;
  padding-top: 60px !important;
  border-top: 1px solid rgba(200,169,110,.08) !important;
}
.single-product .related.products > h2 {
  font-family: 'Cormorant Garamond', serif !important;
  font-size: 40px !important;
  font-weight: 300 !important;
  color: #fff !important;
  margin-bottom: 36px !important;
}

/* ══════════════════════════════════════════
   LIGHTBOX — acima do header fixo
══════════════════════════════════════════ */
.pswp {
  z-index: 99999 !important;
}
.pswp__ui,
.pswp__top-bar,
.pswp__button,
.pswp__counter {
  z-index: 100000 !important;
}
.elementor-lightbox,
.elementor-lightbox-container,
.dialog-widget-content {
  z-index: 99999 !important;
}

/* ══════════════════════════════════════════
   RESPONSIVO
══════════════════════════════════════════ */
@media (max-width: 1024px) {
  .woocommerce ul.products { grid-template-columns: repeat(2, 1fr) !important; }
  .woocommerce { padding: 0 40px 80px !important; }
  .single-product .product {
    grid-template-columns: 1fr !important;
    gap: 40px !important;
    padding: 20px 40px 80px !important;
  }
  .single-product .woocommerce-product-gallery { grid-column: 1 !important; grid-row: 1 !important; }
  .single-product .summary.entry-summary { grid-column: 1 !important; grid-row: 2 !important; }
  .single-product .woocommerce-tabs { grid-row: 3 !important; }
  .single-product .related.products { grid-row: 4 !important; }
  .single-product .woocommerce-breadcrumb { padding: 100px 40px 0 !important; }
}
@media (max-width: 640px) {
  .woocommerce ul.products { grid-template-columns: 1fr !important; }
  .woocommerce { padding: 0 24px 60px !important; }
  .single-product .product { padding: 20px 24px 60px !important; }
  .single-product .woocommerce-breadcrumb { padding: 90px 24px 0 !important; }
  .single-product p.price, .single-product span.price { font-size: 40px !important; }
  .single-product form.cart { flex-direction: column !important; }
  .single-product .quantity input.qty { width: 100% !important; }
}

/* ══════════════════════════════════════════
   SHOP — FULL WIDTH (página gerada pelo WooCommerce)
══════════════════════════════════════════ */
.woocommerce-page #page,
.woocommerce-page #content,
.woocommerce-page #primary,
.woocommerce-page .content-area,
.woocommerce-page .site-main,
.woocommerce-page #main,
.tax-product_cat #page,
.tax-product_cat #content,
.tax-product_cat #primary,
.tax-product_cat .site-main {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background: #0D0A12 !important;
}
.woocommerce-page .container,
.woocommerce-page .site-container,
.woocommerce-page .entry-content {
  max-width: 100% !important;
  padding: 0 !important;
  background: #0D0A12 !important;
}

/* ══════════════════════════════════════════
   PÁGINAS DE CATEGORIA (geradas pelo WooCommerce)
   .tax-product_cat = body das páginas /product-category/*
══════════════════════════════════════════ */
.tax-product_cat #page,
.tax-product_cat #content,
.tax-product_cat #primary,
.tax-product_cat .content-area,
.tax-product_cat .site-main,
.tax-product_cat #main,
.tax-product_cat .entry-content,
.archive.woocommerce #page,
.archive.woocommerce #content,
.archive.woocommerce #primary,
.archive.woocommerce .site-main {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background: #0D0A12 !important;
}

/* Conteúdo da categoria com largura controlada */
.tax-product_cat .woocommerce,
.archive.woocommerce .woocommerce {
  max-width: 1300px !important;
  margin: 0 auto !important;
  padding: 140px 60px 100px !important;
  background: transparent !important;
}

/* Título da categoria */
.tax-product_cat .woocommerce-products-header,
.archive.woocommerce .woocommerce-products-header {
  max-width: 1300px !important;
  margin: 0 auto !important;
  padding: 0 60px !important;
}
.tax-product_cat .woocommerce-products-header__title,
.archive.woocommerce .woocommerce-products-header__title {
  font-family: 'Cormorant Garamond', serif !important;
  font-size: clamp(40px, 5vw, 72px) !important;
  font-weight: 300 !important;
  color: #FFFFFF !important;
  line-height: 1.1 !important;
}
.tax-product_cat .term-description,
.archive.woocommerce .term-description {
  font-family: 'Jost', sans-serif !important;
  font-size: 14px !important;
  font-weight: 300 !important;
  color: rgba(245,240,234,.5) !important;
  line-height: 1.8 !important;
  margin-top: 16px !important;
}

@media (max-width: 1024px) {
  .tax-product_cat .woocommerce,
  .archive.woocommerce .woocommerce { padding: 120px 40px 80px !important; }
  .tax-product_cat .woocommerce-products-header,
  .archive.woocommerce .woocommerce-products-header { padding: 0 40px !important; }
}
@media (max-width: 640px) {
  .tax-product_cat .woocommerce,
  .archive.woocommerce .woocommerce { padding: 110px 24px 60px !important; }
  .tax-product_cat .woocommerce-products-header,
  .archive.woocommerce .woocommerce-products-header { padding: 0 24px !important; }
}

/* ══════════════════════════════════════════
   ARCHIVE / CATEGORIA — Theme Builder Elementor
   Fundo escuro em toda a página de categoria
══════════════════════════════════════════ */
body.tax-product_cat,
body.archive.woocommerce {
  background: #0D0A12 !important;
}
.tax-product_cat .elementor-location-archive,
.tax-product_cat .e-con,
.tax-product_cat .e-con-full {
  background: transparent !important;
}
/* Shortcode de produtos dentro do archive */
.tax-product_cat .elementor-shortcode .woocommerce {
  max-width: 1300px !important;
  margin: 0 auto !important;
  padding: 0 60px 100px !important;
  background: transparent !important;
}
.tax-product_cat .elementor-shortcode ul.products {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 2px !important;
}
@media (max-width: 1024px) {
  .tax-product_cat .elementor-shortcode .woocommerce { padding: 0 40px 80px !important; }
  .tax-product_cat .elementor-shortcode ul.products { grid-template-columns: repeat(2, 1fr) !important; }
}
@media (max-width: 640px) {
  .tax-product_cat .elementor-shortcode .woocommerce { padding: 0 24px 60px !important; }
  .tax-product_cat .elementor-shortcode ul.products { grid-template-columns: 1fr !important; }
}

/* ══════════════════════════════════════════
   ARCHIVE — força containers Elementor full width
══════════════════════════════════════════ */
body.tax-product_cat .elementor-location-archive > .e-con,
body.tax-product_cat .e-con-full,
body.tax-product_cat .e-con {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  --container-max-width: 100% !important;
  background: #0D0A12 !important;
}
body.tax-product_cat .elementor-widget-container {
  background: transparent !important;
}

/* ══════════════════════════════════════════
   FIX DEFINITIVO — Shortcode products no Elementor
   (shop /store/ E categorias usam .elementor-shortcode)
══════════════════════════════════════════ */
.elementor-shortcode .woocommerce,
.elementor-widget-shortcode .woocommerce {
  max-width: 1300px !important;
  margin: 0 auto !important;
  padding: 0 60px 100px !important;
  background: transparent !important;
}
.elementor-shortcode ul.products,
.elementor-widget-shortcode ul.products {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 2px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  width: 100% !important;
}
.elementor-shortcode ul.products::before,
.elementor-shortcode ul.products::after {
  display: none !important;
  content: none !important;
}
.elementor-shortcode ul.products li.product,
.elementor-widget-shortcode ul.products li.product {
  width: auto !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  clear: none !important;
  background: #1C1628 !important;
  border: 1px solid rgba(200,169,110,.07) !important;
  display: flex !important;
  flex-direction: column !important;
  overflow: hidden !important;
  transition: border-color .4s, transform .4s !important;
}
.elementor-shortcode ul.products li.product:hover {
  border-color: rgba(200,169,110,.25) !important;
  transform: translateY(-4px) !important;
  box-shadow: 0 20px 60px rgba(0,0,0,.4) !important;
}
.elementor-shortcode ul.products li.product a img {
  width: 100% !important;
  aspect-ratio: 3/4 !important;
  object-fit: cover !important;
  margin: 0 !important;
  display: block !important;
  filter: saturate(.9) brightness(.88) !important;
  transition: transform .9s cubic-bezier(.16,1,.3,1), filter .7s !important;
}
.elementor-shortcode ul.products li.product:hover a img {
  transform: scale(1.06) !important;
  filter: saturate(1.05) brightness(.98) !important;
}
.elementor-shortcode ul.products li.product .woocommerce-loop-product__title {
  font-family: 'Cormorant Garamond', serif !important;
  font-size: 22px !important;
  font-weight: 400 !important;
  color: #FFFFFF !important;
  padding: 20px 20px 6px !important;
  line-height: 1.2 !important;
}
.elementor-shortcode ul.products li.product .price {
  font-family: 'Cormorant Garamond', serif !important;
  font-size: 28px !important;
  font-weight: 300 !important;
  color: #F5F0EA !important;
  padding: 4px 20px 20px !important;
  display: block !important;
}
.elementor-shortcode ul.products li.product .button {
  display: block !important;
  margin: 0 20px 20px !important;
  font-family: 'Jost', sans-serif !important;
  font-size: 10px !important;
  font-weight: 400 !important;
  letter-spacing: .2em !important;
  text-transform: uppercase !important;
  background: transparent !important;
  color: #C8A96E !important;
  border: 1px solid rgba(200,169,110,.3) !important;
  border-radius: 0 !important;
  padding: 13px 20px !important;
  text-align: center !important;
  transition: all .3s !important;
}
.elementor-shortcode ul.products li.product .button:hover {
  background: #C8A96E !important;
  color: #0D0A12 !important;
  border-color: #C8A96E !important;
}
@media (max-width: 1024px) {
  .elementor-shortcode .woocommerce { padding: 0 40px 80px !important; }
  .elementor-shortcode ul.products { grid-template-columns: repeat(2, 1fr) !important; }
}
@media (max-width: 640px) {
  .elementor-shortcode .woocommerce { padding: 0 24px 60px !important; }
  .elementor-shortcode ul.products { grid-template-columns: 1fr !important; }
}


/* ============================================================
   FOX AMETHYST — CART & CHECKOUT
   Estiliza as páginas nativas do WooCommerce /cart/ e /checkout/.
   ============================================================ */

/* ── FUNDO GERAL ── */
.woocommerce-cart #primary,
.woocommerce-cart .site-main,
.woocommerce-checkout #primary,
.woocommerce-checkout .site-main,
.woocommerce-cart body,
.woocommerce-checkout body {
  background: #0D0A12 !important;
}
.woocommerce-cart .woocommerce,
.woocommerce-checkout .woocommerce {
  max-width: 1300px !important;
  margin: 0 auto !important;
  padding: 0 60px 120px !important;
  background: transparent !important;
  color: rgba(245,240,234,.7);
  font-family: 'Jost', sans-serif;
}

/* ══════════════════════════════════════════
   CART TABLE
══════════════════════════════════════════ */
table.shop_table.cart,
.woocommerce-cart-form table.cart {
  width: 100% !important;
  border-collapse: collapse !important;
  margin-bottom: 40px !important;
}
table.shop_table.cart thead {
  border-bottom: 1px solid rgba(200,169,110,.15) !important;
}
table.shop_table.cart thead th {
  font-family: 'Jost', sans-serif !important;
  font-size: 9px !important;
  letter-spacing: .2em !important;
  text-transform: uppercase !important;
  color: #C8A96E !important;
  padding: 16px 12px !important;
  text-align: left !important;
  font-weight: 400 !important;
}
table.shop_table.cart tbody tr.cart_item {
  border-bottom: 1px solid rgba(200,169,110,.06) !important;
}
table.shop_table.cart tbody td {
  padding: 24px 12px !important;
  vertical-align: middle !important;
}
table.shop_table.cart td.product-thumbnail img {
  width: 90px !important;
  height: 90px !important;
  object-fit: cover !important;
  border: 1px solid rgba(200,169,110,.12) !important;
  filter: saturate(1) brightness(.95) !important;
}
table.shop_table.cart td.product-name a {
  font-family: 'Cormorant Garamond', serif !important;
  font-size: 19px !important;
  font-weight: 400 !important;
  color: #F5F0EA !important;
  text-decoration: none !important;
}
table.shop_table.cart td.product-name a:hover { color: #C8A96E !important; }
table.shop_table.cart td.product-price .amount,
table.shop_table.cart td.product-subtotal .amount {
  font-family: 'Cormorant Garamond', serif !important;
  font-size: 19px !important;
  font-weight: 400 !important;
  color: #F5F0EA !important;
}
table.shop_table.cart .quantity .qty {
  background: rgba(255,255,255,.04) !important;
  border: 1px solid rgba(200,169,110,.2) !important;
  color: #F5F0EA !important;
  font-family: 'Cormorant Garamond', serif !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  border-radius: 0 !important;
  padding: 8px 10px !important;
  width: 64px !important;
  text-align: center !important;
  height: auto !important;
}
table.shop_table.cart td.product-remove a.remove {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 30px !important;
  height: 30px !important;
  border: 1px solid rgba(200,169,110,.2) !important;
  color: rgba(245,240,234,.5) !important;
  background: transparent !important;
  border-radius: 0 !important;
  font-size: 16px !important;
  transition: all .3s !important;
}
table.shop_table.cart td.product-remove a.remove:hover {
  border-color: #C8A96E !important;
  color: #C8A96E !important;
  background: rgba(200,169,110,.06) !important;
}

/* Cart actions row (coupon + update button) */
.woocommerce-cart-form .actions {
  padding: 24px 12px !important;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 16px !important;
  align-items: center !important;
  justify-content: space-between !important;
}
.woocommerce-cart-form .coupon {
  display: flex !important;
  gap: 10px !important;
  align-items: center !important;
}
.woocommerce-cart-form .coupon input#coupon_code {
  background: rgba(255,255,255,.04) !important;
  border: 1px solid rgba(200,169,110,.2) !important;
  color: #F5F0EA !important;
  font-family: 'Jost', sans-serif !important;
  font-size: 13px !important;
  padding: 12px 16px !important;
  border-radius: 0 !important;
  min-width: 200px !important;
}
.woocommerce-cart-form .coupon button,
.woocommerce-cart-form .actions button[name="update_cart"] {
  background: transparent !important;
  border: 1px solid rgba(200,169,110,.35) !important;
  color: #C8A96E !important;
  font-family: 'Jost', sans-serif !important;
  font-size: 10px !important;
  font-weight: 400 !important;
  letter-spacing: .18em !important;
  text-transform: uppercase !important;
  padding: 12px 22px !important;
  border-radius: 0 !important;
  cursor: pointer !important;
  transition: all .3s !important;
}
.woocommerce-cart-form .coupon button:hover,
.woocommerce-cart-form .actions button[name="update_cart"]:hover {
  background: #C8A96E !important;
  color: #0D0A12 !important;
}

/* ── CART TOTALS SIDEBAR ── */
.cart-collaterals {
  display: flex !important;
  justify-content: flex-end !important;
}
.cart-collaterals .cart_totals {
  width: 100% !important;
  max-width: 420px !important;
  background: rgba(255,255,255,.02) !important;
  border: 1px solid rgba(200,169,110,.12) !important;
  padding: 32px !important;
}
.cart_totals h2 {
  font-family: 'Cormorant Garamond', serif !important;
  font-size: 26px !important;
  font-weight: 400 !important;
  color: #fff !important;
  margin-bottom: 20px !important;
}
.cart_totals table.shop_table {
  width: 100% !important;
  border-collapse: collapse !important;
}
.cart_totals table.shop_table th,
.cart_totals table.shop_table td {
  padding: 14px 0 !important;
  border-bottom: 1px solid rgba(200,169,110,.08) !important;
  font-family: 'Jost', sans-serif !important;
  font-size: 13px !important;
  font-weight: 300 !important;
  color: rgba(245,240,234,.55) !important;
}
.cart_totals table.shop_table th {
  font-size: 10px !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
  color: rgba(245,240,234,.35) !important;
}
.cart_totals table.shop_table tr.order-total th,
.cart_totals table.shop_table tr.order-total td {
  border-bottom: none !important;
  padding-top: 20px !important;
}
.cart_totals table.shop_table tr.order-total .amount {
  font-family: 'Cormorant Garamond', serif !important;
  font-size: 28px !important;
  font-weight: 400 !important;
  color: #F5F0EA !important;
}
.wc-proceed-to-checkout {
  margin-top: 24px !important;
}
.wc-proceed-to-checkout a.checkout-button {
  display: block !important;
  width: 100% !important;
  text-align: center !important;
  background: #C8A96E !important;
  color: #0D0A12 !important;
  font-family: 'Jost', sans-serif !important;
  font-size: 11px !important;
  font-weight: 400 !important;
  letter-spacing: .22em !important;
  text-transform: uppercase !important;
  padding: 17px !important;
  border-radius: 0 !important;
  text-decoration: none !important;
  transition: background .3s !important;
}
.wc-proceed-to-checkout a.checkout-button:hover { background: #E8D5A8 !important; }

/* ── EMPTY CART ── */
.woocommerce-cart .cart-empty {
  font-family: 'Cormorant Garamond', serif !important;
  font-size: 22px !important;
  font-weight: 300 !important;
  color: rgba(245,240,234,.6) !important;
  text-align: center !important;
  padding: 60px 0 20px !important;
  border: none !important;
  background: none !important;
}
.woocommerce-cart .return-to-shop {
  text-align: center !important;
  margin-bottom: 60px !important;
}
.woocommerce-cart .return-to-shop .button {
  display: inline-block !important;
  background: #C8A96E !important;
  color: #0D0A12 !important;
  font-family: 'Jost', sans-serif !important;
  font-size: 11px !important;
  letter-spacing: .2em !important;
  text-transform: uppercase !important;
  padding: 15px 32px !important;
  text-decoration: none !important;
  border-radius: 0 !important;
}

/* ══════════════════════════════════════════
   CHECKOUT PAGE — LAYOUT (fix definitivo pós-Stripe)
   O plugin Stripe adicionou elementos novos (Apple/Google Pay,
   separador "OR") como filhos diretos do formulário. Por isso
   cada parte agora tem posição EXPLÍCITA em vez de automática.
══════════════════════════════════════════ */
.woocommerce-checkout form.checkout {
  display: grid !important;
  grid-template-columns: 1.1fr 0.9fr !important;
  grid-template-areas:
    "express   express"
    "separator separator"
    "details   heading"
    "details   summary" !important;
  column-gap: 56px !important;
  row-gap: 12px !important;
  align-items: start !important;
}
#wc-stripe-express-checkout-element {
  grid-area: express !important;
  margin-bottom: 8px !important;
}
#wc-stripe-express-checkout-button-separator {
  grid-area: separator !important;
  color: rgba(245,240,234,.35) !important;
  font-family: 'Jost', sans-serif !important;
  font-size: 11px !important;
  letter-spacing: .2em !important;
  text-align: center !important;
}
#customer_details {
  grid-area: details !important;
}
#order_review_heading {
  grid-area: heading !important;
}
#order_review {
  grid-area: summary !important;
}
/* Elementos invisíveis de rastreamento do WooCommerce — tirar do grid */
.woocommerce-checkout form.checkout wc-order-attribution-inputs {
  display: none !important;
}

/* Section titles */
.woocommerce-checkout #customer_details h3,
.woocommerce-checkout #order_review_heading {
  font-family: 'Cormorant Garamond', serif !important;
  font-size: 24px !important;
  font-weight: 400 !important;
  color: #fff !important;
  margin-bottom: 20px !important;
  padding-bottom: 16px !important;
  border-bottom: 1px solid rgba(200,169,110,.1) !important;
}

/* Form fields */
.woocommerce-checkout .form-row label {
  font-family: 'Jost', sans-serif !important;
  font-size: 10px !important;
  font-weight: 400 !important;
  letter-spacing: .15em !important;
  text-transform: uppercase !important;
  color: rgba(245,240,234,.4) !important;
  margin-bottom: 6px !important;
  display: block !important;
}
.woocommerce-checkout .form-row .required {
  color: #C8A96E !important;
  text-decoration: none !important;
}
.woocommerce-checkout input.input-text,
.woocommerce-checkout select,
.woocommerce-checkout textarea,
.woocommerce-checkout .select2-selection {
  background: rgba(255,255,255,.04) !important;
  border: 1px solid rgba(200,169,110,.18) !important;
  color: #F5F0EA !important;
  font-family: 'Jost', sans-serif !important;
  font-size: 14px !important;
  font-weight: 300 !important;
  padding: 13px 14px !important;
  border-radius: 0 !important;
  width: 100% !important;
  box-sizing: border-box !important;
  height: auto !important;
  transition: border-color .3s, background .3s !important;
}
.woocommerce-checkout input.input-text:focus,
.woocommerce-checkout select:focus,
.woocommerce-checkout textarea:focus {
  border-color: rgba(200,169,110,.45) !important;
  background: rgba(255,255,255,.06) !important;
  outline: none !important;
}
.select2-container .select2-selection--single {
  height: auto !important;
}
.select2-container--default .select2-selection--single .select2-selection__rendered {
  color: #F5F0EA !important;
  line-height: 1.6 !important;
  padding-left: 0 !important;
}
.select2-dropdown {
  background: #1C1628 !important;
  border-color: rgba(200,169,110,.2) !important;
}
.select2-container--default .select2-results__option--highlighted[aria-selected] {
  background: #6B3FA0 !important;
}
.select2-container--default .select2-results__option {
  color: rgba(245,240,234,.7) !important;
}
.woocommerce-checkout .select2-selection__arrow b {
  border-color: #C8A96E transparent transparent transparent !important;
}

/* Checkbox for "ship to different address" etc */
.woocommerce-checkout .woocommerce-form__label-for-checkbox {
  font-family: 'Jost', sans-serif !important;
  font-size: 12px !important;
  color: rgba(245,240,234,.5) !important;
}

/* ── ORDER REVIEW (right column) ── */
#order_review {
  background: rgba(255,255,255,.02) !important;
  border: 1px solid rgba(200,169,110,.12) !important;
  padding: 32px !important;
  position: sticky !important;
  top: 110px !important;
}
#order_review table.shop_table {
  width: 100% !important;
  border-collapse: collapse !important;
  margin-bottom: 0 !important;
}
#order_review table.shop_table thead {
  display: none !important;
}
#order_review table.shop_table tbody tr.cart_item td {
  padding: 14px 0 !important;
  border-bottom: 1px solid rgba(200,169,110,.06) !important;
  font-family: 'Jost', sans-serif !important;
  font-size: 13px !important;
  color: rgba(245,240,234,.6) !important;
}
#order_review table.shop_table tbody tr.cart_item td.product-name {
  font-family: 'Cormorant Garamond', serif !important;
  font-size: 16px !important;
  color: #F5F0EA !important;
}
#order_review table.shop_table tbody tr.cart_item td.product-name .product-quantity {
  color: rgba(245,240,234,.35) !important;
  font-family: 'Jost', sans-serif !important;
  font-size: 11px !important;
}
#order_review table.shop_table tfoot tr th,
#order_review table.shop_table tfoot tr td {
  padding: 14px 0 !important;
  border-bottom: 1px solid rgba(200,169,110,.06) !important;
  font-family: 'Jost', sans-serif !important;
  font-size: 12px !important;
  letter-spacing: .05em !important;
  color: rgba(245,240,234,.5) !important;
}
#order_review table.shop_table tfoot tr.order-total th,
#order_review table.shop_table tfoot tr.order-total td {
  border-bottom: none !important;
  padding-top: 18px !important;
}
#order_review table.shop_table tfoot tr.order-total .amount {
  font-family: 'Cormorant Garamond', serif !important;
  font-size: 26px !important;
  font-weight: 400 !important;
  color: #F5F0EA !important;
}

/* Payment methods */
#payment {
  background: transparent !important;
  margin-top: 24px !important;
  padding-top: 24px !important;
  border-top: 1px solid rgba(200,169,110,.1) !important;
}
ul.payment_methods {
  border: none !important;
  padding: 0 !important;
  list-style: none !important;
}
ul.payment_methods li.payment_method_stripe,
ul.payment_methods li {
  border: 1px solid rgba(200,169,110,.12) !important;
  margin-bottom: 10px !important;
  padding: 16px !important;
  background: rgba(255,255,255,.015) !important;
}
ul.payment_methods li label {
  font-family: 'Jost', sans-serif !important;
  font-size: 13px !important;
  color: #F5F0EA !important;
  font-weight: 400 !important;
}
ul.payment_methods .payment_box {
  background: transparent !important;
  color: rgba(245,240,234,.5) !important;
  font-family: 'Jost', sans-serif !important;
  font-size: 12px !important;
  padding: 14px 0 0 !important;
}
ul.payment_methods .payment_box::before { display: none !important; }

/* Place order button */
#place_order {
  width: 100% !important;
  background: #C8A96E !important;
  color: #0D0A12 !important;
  font-family: 'Jost', sans-serif !important;
  font-size: 11px !important;
  font-weight: 400 !important;
  letter-spacing: .22em !important;
  text-transform: uppercase !important;
  padding: 18px !important;
  border: none !important;
  border-radius: 0 !important;
  cursor: pointer !important;
  transition: background .3s !important;
  margin-top: 20px !important;
}
#place_order:hover { background: #E8D5A8 !important; }

/* Terms checkbox */
.woocommerce-terms-and-conditions-wrapper {
  font-family: 'Jost', sans-serif !important;
  font-size: 11px !important;
  color: rgba(245,240,234,.4) !important;
  margin: 16px 0 !important;
}
.woocommerce-terms-and-conditions-wrapper a { color: #C8A96E !important; }

/* Notices (errors etc) */
.woocommerce-error, .woocommerce-message, .woocommerce-info {
  background: rgba(255,255,255,.03) !important;
  border: 1px solid rgba(200,169,110,.15) !important;
  color: rgba(245,240,234,.7) !important;
  font-family: 'Jost', sans-serif !important;
  font-size: 13px !important;
  padding: 16px 20px !important;
  list-style: none !important;
  border-radius: 0 !important;
  margin-bottom: 24px !important;
}
.woocommerce-error::before, .woocommerce-message::before, .woocommerce-info::before { display: none !important; }
.woocommerce-error a, .woocommerce-message a { color: #C8A96E !important; }

/* ══════════════════════════════════════════
   RESPONSIVE — CART & CHECKOUT
   (versão corrigida: cada célula da tabela do carrinho
   vira um bloco de verdade no mobile, evitando o bug de
   colapso de imagens ao misturar flex com table-cell)
══════════════════════════════════════════ */
@media (max-width: 1024px) {
  .woocommerce-cart .woocommerce,
  .woocommerce-checkout .woocommerce { padding: 0 40px 100px !important; }
  .woocommerce-checkout form.checkout {
    grid-template-columns: 1fr !important;
    grid-template-areas:
      "express"
      "separator"
      "details"
      "heading"
      "summary" !important;
    gap: 24px !important;
  }
  #order_review { position: static !important; }
  table.shop_table.cart td.product-thumbnail img { width: 64px !important; height: 64px !important; }
}
@media (max-width: 768px) {
  .woocommerce-cart .woocommerce,
  .woocommerce-checkout .woocommerce { padding: 0 20px 60px !important; }

  /* Cabeçalho da tabela some — vira layout de cartão */
  table.shop_table.cart thead { display: none !important; }

  /* Reset total: tudo vira bloco de verdade, sem comportamento de tabela */
  table.shop_table.cart,
  table.shop_table.cart tbody,
  table.shop_table.cart tr,
  table.shop_table.cart td {
    display: block !important;
    width: 100% !important;
    box-sizing: border-box !important;
  }

  /* Cada produto vira um cartão em grid: foto à esquerda, dados à direita */
  table.shop_table.cart tr.cart_item {
    position: relative !important;
    display: grid !important;
    grid-template-columns: 84px 1fr !important;
    grid-template-areas:
      "thumb name"
      "thumb price"
      "thumb qty"
      "thumb subtotal" !important;
    column-gap: 16px !important;
    row-gap: 6px !important;
    padding: 20px 0 !important;
    border-bottom: 1px solid rgba(200,169,110,.1) !important;
  }
  table.shop_table.cart tr.cart_item td {
    padding: 0 !important;
    border: none !important;
    width: auto !important;
  }

  table.shop_table.cart td.product-remove {
    position: absolute !important;
    top: 20px !important;
    right: 0 !important;
  }
  table.shop_table.cart td.product-thumbnail {
    grid-area: thumb !important;
  }
  table.shop_table.cart td.product-thumbnail img {
    width: 84px !important;
    height: 84px !important;
    object-fit: cover !important;
    display: block !important;
  }
  table.shop_table.cart td.product-name {
    grid-area: name !important;
    padding-right: 32px !important;
  }
  table.shop_table.cart td.product-price {
    grid-area: price !important;
  }
  table.shop_table.cart td.product-price::before {
    content: "Price: ";
    color: rgba(245,240,234,.3);
    font-size: 9px;
    text-transform: uppercase;
    letter-spacing: .1em;
  }
  table.shop_table.cart td.product-quantity {
    grid-area: qty !important;
  }
  table.shop_table.cart td.product-subtotal {
    grid-area: subtotal !important;
  }
  table.shop_table.cart td.product-subtotal::before {
    content: "Subtotal: ";
    color: rgba(245,240,234,.3);
    font-size: 9px;
    text-transform: uppercase;
    letter-spacing: .1em;
  }

  /* Linha de ações (Update cart) — volta a ser um bloco simples */
  table.shop_table.cart tr:not(.cart_item) td.actions {
    display: flex !important;
    padding: 20px 0 0 !important;
  }

  .woocommerce-cart-form .actions {
    flex-direction: column !important;
    align-items: stretch !important;
  }
  .woocommerce-cart-form .coupon {
    flex-direction: column !important;
    align-items: stretch !important;
  }
  .cart-collaterals { justify-content: stretch !important; }
  .cart-collaterals .cart_totals { max-width: 100% !important; padding: 24px !important; }
}

/* ============================================================
   FOX AMETHYST — CALCULADORA DE FRETE (página do Carrinho)
   + FIX GERAL do select2/selectWoo (que ficava branco)

   CAUSA: nosso CSS de campos/dropdown estava restrito à
   página de Checkout (".woocommerce-checkout"). A calculadora
   de frete do Carrinho usa os mesmos componentes (select2),
   mas nunca recebeu o mesmo estilo. Agora ficou global.
   ============================================================ */

/* Campos de texto da calculadora de frete (Cidade, ZIP) */
.shipping-calculator-form input.input-text,
.woocommerce-shipping-calculator input.input-text {
  background: rgba(255,255,255,.06) !important;
  border: 1px solid rgba(200,169,110,.25) !important;
  color: #F5F0EA !important;
  font-family: 'Jost', sans-serif !important;
  font-size: 14px !important;
  padding: 12px 14px !important;
  border-radius: 0 !important;
  width: 100% !important;
  box-sizing: border-box !important;
}
.shipping-calculator-form label {
  font-family: 'Jost', sans-serif !important;
  font-size: 10px !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
  color: rgba(245,240,234,.4) !important;
  display: block !important;
  margin-bottom: 6px !important;
}
.shipping-calculator-button {
  color: #C8A96E !important;
  font-family: 'Jost', sans-serif !important;
  font-size: 12px !important;
  text-decoration: underline !important;
}
.shipping-calculator-form button[name="calc_shipping"] {
  background: #C8A96E !important;
  color: #0D0A12 !important;
  border: none !important;
  font-family: 'Jost', sans-serif !important;
  font-size: 11px !important;
  letter-spacing: .15em !important;
  text-transform: uppercase !important;
  padding: 12px 22px !important;
  border-radius: 0 !important;
  cursor: pointer !important;
}

/* ══════════════════════════════════════════
   SELECT2 / SELECTWOO — estilo global
   (antes só funcionava dentro do Checkout)
══════════════════════════════════════════ */

/* Caixa fechada do dropdown (o que aparece antes de clicar) */
.select2-container--default .select2-selection--single {
  background: rgba(255,255,255,.06) !important;
  border: 1px solid rgba(200,169,110,.25) !important;
  border-radius: 0 !important;
  height: auto !important;
  padding: 12px 14px !important;
}
.select2-container--default .select2-selection--single .select2-selection__rendered {
  color: #F5F0EA !important;
  line-height: 1.4 !important;
  padding: 0 !important;
}
.select2-container--default .select2-selection--single .select2-selection__arrow {
  height: 100% !important;
  top: 0 !important;
  right: 8px !important;
}
.select2-container--default .select2-selection--single .select2-selection__arrow b {
  border-color: #C8A96E transparent transparent transparent !important;
}

/* Caixa de busca dentro do dropdown aberto */
.select2-container--default .select2-search--dropdown .select2-search__field {
  background: rgba(255,255,255,.06) !important;
  border: 1px solid rgba(200,169,110,.25) !important;
  color: #F5F0EA !important;
  border-radius: 0 !important;
}

/* Fundo da lista de opções ao abrir */
.select2-dropdown {
  background: #1C1628 !important;
  border-color: rgba(200,169,110,.25) !important;
  border-radius: 0 !important;
}
.select2-results,
.select2-results__options {
  background: #1C1628 !important;
}
.select2-container--default .select2-results__option {
  color: rgba(245,240,234,.7) !important;
}
.select2-container--default .select2-results__option--highlighted[aria-selected] {
  background: #6B3FA0 !important;
  color: #fff !important;
}
.select2-container--default .select2-results__option[aria-selected="true"] {
  background: rgba(200,169,110,.15) !important;
  color: #F5F0EA !important;
}