/*
Theme Name: Maison Top
Theme URI: https://jujuquestoes.com.br
Description: Tema filho da Storefront com identidade visual MAISON TOP - Alta perfumaria árabe. Preto, dourado e bordô.
Author: Erik - Epsistemas
Author URI: https://epsistemas.com
Template: storefront
Version: 2.8.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: maison-top
*/

/* ============================================
   MAISON TOP - Identidade Visual
   Paleta: Preto + Dourado + Bordô
   ============================================ */

@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,300;0,400;0,500;1,400&family=Inter:wght@300;400;500;600&family=Sacramento&display=swap');

:root {
  --mt-black: #0A0A0A;
  --mt-black-deep: #000000;
  --mt-gold: #D4AF37;
  --mt-gold-light: #E8D9B0;
  --mt-gold-dark: #8B7355;
  --mt-bordo: #6B1F2E;
  --mt-bordo-dark: #4A1520;
  --mt-bg-secondary: #0F0A05;
  --mt-border: #2A1F0E;
  --font-display: 'Cinzel', 'Playfair Display', Georgia, serif;
  --font-serif: 'Playfair Display', Georgia, serif;
  --font-sans: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
}

/* ============================================
   RESET & BASE
   ============================================ */

body,
body.wp-custom-logo,
.site {
  background: var(--mt-black) !important;
  color: var(--mt-gold-light) !important;
  font-family: var(--font-sans);
  font-weight: 300;
  line-height: 1.7;
}

h1, h2, h3, h4, h5, h6,
.entry-title,
.widget-title,
.site-title {
  font-family: var(--font-display) !important;
  font-weight: 500 !important;
  color: var(--mt-gold-light) !important;
  letter-spacing: 2px;
}

a {
  color: var(--mt-gold) !important;
  transition: all 0.3s ease;
}

a:hover {
  color: var(--mt-gold-light) !important;
}

/* ============================================
   BARRA TOP - ROTATIVA (4 mensagens)
   ============================================ */

.mt-top-bar-wrap {
  background: var(--mt-black-deep);
  border-bottom: 1px solid var(--mt-border);
  height: 36px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  position: relative;
}

.mt-top-bar-rotating {
  position: relative;
  width: 100%;
  height: 36px;
}

.mt-top-msg {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--mt-gold);
  font-size: 11px;
  letter-spacing: 3px;
  text-align: center;
  opacity: 0;
  transform: translateY(8px);
  transition: opacity .6s ease, transform .6s ease;
  pointer-events: none;
}

.mt-top-msg.active {
  opacity: 1;
  transform: translateY(0);
}

.mt-top-msg::before { content: "✦  "; opacity: .6; }
.mt-top-msg::after  { content: "  ✦"; opacity: .6; }

/* ============================================
   HEADER (estilo Azza Parfums)
   3 colunas: Logo | Busca | Utilities
   ============================================ */

.site-header {
  background: var(--mt-black) !important;
  padding: 0 !important;
  border-bottom: 1px solid var(--mt-border);
}

.site-header .col-full {
  padding: 0 !important;
  max-width: none !important;
  width: 100%;
}

.mt-header-3col {
  display: grid;
  grid-template-columns: auto auto 1fr auto auto;
  gap: 24px;
  align-items: center;
  padding: 18px 40px;
  max-width: 1400px;
  margin: 0 auto;
  position: relative;
}

/* Desktop: tagline centralizada + lupa toggle (igual mobile).
   Search overlay por default ESCONDIDO; abre quando body.mt-search-open. */
@media (min-width: 769px) {
  html body .mt-header-3col {
    grid-template-columns: auto 1fr auto !important;
  }
  html body .mt-header-center {
    display: contents !important;
    width: auto !important;
    position: static !important;
  }
  html body .mt-header-3col > .site-branding {
    grid-column: 1 !important;
    grid-row: 1 !important;
    justify-self: start !important;
  }
  html body .mt-header-center > .mt-tagline {
    grid-column: 2 !important;
    grid-row: 1 !important;
    justify-self: center !important;
  }
  /* Overlay NÃO ocupa coluna do grid — volta ao default position absolute (escondido) */
  html body .mt-header-center > .mt-search-overlay {
    grid-column: 1 / -1 !important;
    grid-row: 2 !important;
    justify-self: center !important;
  }
  html body .mt-header-3col > .mt-header-utils {
    grid-column: 3 !important;
    grid-row: 1 !important;
    justify-self: end !important;
  }
  .mt-header-center > .mt-tagline {
    grid-column: 3;
    grid-row: 1;
    justify-self: center;
    display: block !important;
  }
  /* Overlay no desktop: SOMENTE quando body.mt-search-open (igual mobile) */
  body.mt-search-open .mt-header-center > .mt-search-overlay,
  body.mt-search-open .mt-search-overlay {
    position: absolute !important;
    top: 100% !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    display: flex !important;
    opacity: 1 !important;
    box-shadow: 0 12px 36px rgba(0,0,0,0.6) !important;
    background: var(--mt-black) !important;
    border: 1px solid var(--mt-gold-dark) !important;
    padding: 12px !important;
    margin-top: 12px !important;
    border-radius: 4px;
    width: min(560px, 90vw) !important;
    height: auto !important;
    align-items: center;
    z-index: 1000 !important;
  }
  /* Overlay default escondido (vence a regra .mt-search-form { display: flex } com mais classes) */
  html body:not(.mt-search-open) .mt-search-form.mt-search-overlay,
  html body:not(.mt-search-open) form.mt-search-overlay,
  html body:not(.mt-search-open) .mt-header-center > .mt-search-overlay {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
  }
  /* Quando aberto, garante visível */
  html body.mt-search-open .mt-search-form.mt-search-overlay,
  html body.mt-search-open .mt-header-center > .mt-search-overlay {
    display: flex !important;
    opacity: 1 !important;
    visibility: visible !important;
  }
  .mt-header-center > .mt-search-overlay input[type="search"] {
    flex: 1;
    background: transparent;
    border: 0;
    padding: 0 14px;
    color: var(--mt-gold-light);
    font-size: 14px;
    outline: 0;
    height: 100%;
    -webkit-appearance: none;
    appearance: none;
    box-shadow: none;
  }
  /* Remove qualquer borda/outline/sombra ao focar (inclusive :focus-visible do navegador) */
  .mt-header-center > .mt-search-overlay input[type="search"]:focus,
  .mt-header-center > .mt-search-overlay input[type="search"]:focus-visible,
  .mt-header-center > .mt-search-overlay input[type="search"]:focus-within {
    outline: 0 !important;
    box-shadow: none !important;
    border: 0 !important;
  }
  .mt-header-center > .mt-search-overlay input::placeholder {
    color: var(--mt-gold-dark);
  }
  /* Botão X (limpar) — visível no desktop, igual mobile (escondido só quando input vazio via JS) */
  html body.mt-search-open .mt-header-center > .mt-search-overlay .mt-search-clear,
  html body.mt-search-open .mt-search-form .mt-search-clear {
    display: flex !important;
    background: transparent !important;
    color: var(--mt-gold-dark, #8B7355) !important;
    border: 0 !important;
    padding: 0 8px !important;
    cursor: pointer !important;
    align-items: center !important;
    justify-content: center !important;
    width: 32px !important;
    height: 32px !important;
    flex: 0 0 auto !important;
  }
  html body.mt-search-open .mt-search-form .mt-search-clear:hover {
    color: var(--mt-gold-light, #E8D9B0) !important;
  }
  /* Botão lupa (submit) dentro do overlay aberto */
  html body.mt-search-open .mt-header-center > .mt-search-overlay .mt-search-submit,
  html body.mt-search-open .mt-search-form .mt-search-submit {
    display: flex !important;
    background: transparent !important;
    color: var(--mt-gold-light, #E8D9B0) !important;
    border: 0 !important;
    padding: 0 12px !important;
    cursor: pointer !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 auto !important;
  }
  html body.mt-search-open .mt-search-form .mt-search-submit:hover {
    color: var(--mt-gold, #D4AF37) !important;
  }
  /* Mostra a lupa-toggle no desktop com MESMO estilo dos outros utils (Minha Conta / Carrinho) */
  html body .mt-header-3col .mt-header-utils .mt-search-toggle,
  html body .mt-header-utils > button.mt-search-toggle,
  html body button.mt-util.mt-search-toggle {
    display: inline-flex !important;
    visibility: visible !important;
    width: auto !important;
    min-width: 44px !important;
    height: auto !important;
    background: transparent !important;
    background-color: transparent !important;
    color: var(--mt-gold-light, #E8D9B0) !important;
    border: 0 !important;
    border-radius: 0 !important;
    padding: 8px 12px !important;
    cursor: pointer !important;
    align-items: center !important;
    justify-content: center !important;
    flex-direction: column !important;
    gap: 4px !important;
    font-family: var(--font-sans, 'Inter', sans-serif) !important;
    font-size: 11px !important;
    letter-spacing: 0.5px !important;
    transition: color 0.2s !important;
  }
  html body button.mt-util.mt-search-toggle:hover {
    color: var(--mt-gold, #D4AF37) !important;
    background: transparent !important;
  }
  html body button.mt-util.mt-search-toggle svg {
    width: 22px !important;
    height: 22px !important;
    stroke: currentColor !important;
    color: inherit !important;
    fill: none !important;
  }
  .mt-header-center > .mt-search-overlay .mt-search-submit:hover {
    color: var(--mt-gold) !important;
  }
  .mt-header-center > .mt-search-overlay .mt-search-submit svg {
    stroke: currentColor !important;
  }

  .mt-header-utils {
    grid-column: 5;
    grid-row: 1;
  }

  /* Esconde o botão toggle de busca (input já visível direto) */
  .mt-header-utils .mt-search-toggle {
    display: none !important;
  }

  /* Esconde o estilo "fundo creme" que tinha no search-toggle (não existe mais visível) */

  /* No dropdown Produtos do DESKTOP: esconde HOME e MINHA CONTA (esses só em mobile drawer) */
  .main-navigation ul.menu ul.sub-menu li.mt-drawer-home,
  .main-navigation ul.menu ul.sub-menu li.mt-drawer-conta {
    display: none !important;
  }
}

/* ---- Hamburger desktop: escondido (só aparece em mobile) ---- */
.mt-hamburger {
  display: none;
  background: transparent;
  border: 0;
  padding: 0;
  cursor: pointer;
  color: var(--mt-gold-light);
  -webkit-tap-highlight-color: transparent;
  outline: none;
}
.mt-hamburger svg {
  display: block;
  stroke: var(--mt-gold);
}
.mt-hamburger:hover svg { stroke: var(--mt-gold-light); }
.mt-hamburger:focus { outline: none; }

/* Esconde SEMPRE o menu-toggle original do Storefront (usamos .mt-hamburger) */
.main-navigation > button.menu-toggle,
nav.main-navigation > button.menu-toggle {
  display: none !important;
  visibility: hidden !important;
  position: absolute !important;
  left: -9999px !important;
}

/* ---- Centro do header (desktop: tagline manuscrita) ---- */
.mt-header-center {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
}

.mt-tagline {
  font-family: 'Sacramento', 'Great Vibes', cursive;
  font-size: 36px;
  color: var(--mt-gold);
  letter-spacing: 1px;
  line-height: 1;
  text-align: center;
  white-space: nowrap;
}

/* ---- Overlay da busca (abre quando clica na lupa) ---- */
.mt-search-overlay {
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%) translateY(-10px);
  width: min(600px, 90vw);
  background: var(--mt-black);
  border: 1px solid var(--mt-gold-dark);
  border-radius: 4px;
  padding: 12px;
  box-shadow: 0 12px 36px rgba(0,0,0,0.6);
  display: none;
  opacity: 0;
  transition: opacity 0.2s ease, transform 0.2s ease;
  z-index: 1000;
  margin-top: 12px;
}
body.mt-search-open .mt-search-overlay {
  display: flex !important;
  opacity: 1;
  transform: translateX(-50%) translateY(0);
}
.mt-search-overlay input[type="search"] {
  flex: 1;
  background: transparent;
  border: 0;
  padding: 10px 14px;
  color: var(--mt-gold-light);
  font-size: 14px;
  outline: 0;
}
.mt-search-overlay input::placeholder { color: var(--mt-gold-dark); }
.mt-search-overlay button {
  background: var(--mt-gold);
  color: var(--mt-black);
  border: 0;
  padding: 0 16px;
  cursor: pointer;
  border-radius: 3px;
}

/* Logo (esquerda) */
.mt-header-3col .site-branding {
  margin: 0 !important;
  padding: 0 !important;
  text-align: left !important;
  width: auto !important;
}

.mt-header-3col .site-branding .custom-logo-link,
.mt-header-3col .site-branding .site-title {
  text-align: left !important;
  display: block;
  margin: 0 !important;
}

.mt-header-3col .site-branding .custom-logo {
  max-height: 76px !important;
  width: auto !important;
  margin: 0 !important;
}

/* Caixa de busca (centro) — desktop usa overlay; mobile também usa overlay */
.mt-header-search {
  width: 100%;
}

.mt-search-form:not(.mt-search-overlay) {
  display: none; /* form normal desativado, usamos overlay */
}

.mt-search-form {
  display: flex;
  background: #fff;
  border-radius: 4px;
  overflow: hidden;
  height: 48px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.2);
}

.mt-search-form input[type="search"] {
  flex: 1;
  background: transparent;
  border: 0;
  padding: 0 20px;
  color: #333;
  font-family: var(--font-sans);
  font-size: 14px;
  outline: 0;
  height: 100%;
}

.mt-search-form input[type="search"]::placeholder {
  color: #999;
  font-style: normal;
}

.mt-search-form button {
  background: transparent;
  border: 0;
  padding: 0 20px;
  color: #555;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: color 0.2s ease;
}

.mt-search-form button:hover {
  color: var(--mt-gold-dark);
}

/* Utilities (direita - ícones) */
.mt-header-utils {
  display: flex;
  gap: 16px;
  align-items: center;
}

/* Lupa com fundo creme (desktop) — destaque visual */
.mt-util.mt-search-toggle {
  background: #eeeeee !important;
  color: #1a1a1a !important;
  border-radius: 50% !important;
  width: 44px !important;
  height: 44px !important;
  min-width: 44px !important;
  padding: 0 !important;
  border: 0 !important;
  cursor: pointer;
  transition: all 0.3s ease;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  flex-direction: row !important;
}
.mt-util.mt-search-toggle svg {
  color: #1a1a1a !important;
}
.mt-util.mt-search-toggle span {
  display: none !important; /* sem texto no botão */
}
.mt-util.mt-search-toggle:hover {
  background: var(--mt-gold) !important;
}
.mt-util.mt-search-toggle:focus {
  outline: 0 !important;
}

.mt-util {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  text-decoration: none !important;
  color: var(--mt-gold-light) !important;
  position: relative;
  padding: 6px 4px;
  transition: color 0.3s ease;
  min-width: 60px;
}

.mt-util:hover {
  color: var(--mt-gold) !important;
}

.mt-util svg {
  display: block;
}

.mt-util span {
  font-size: 11px;
  letter-spacing: 0.5px;
  font-weight: 400;
  white-space: nowrap;
}

.mt-util-cart {
  position: relative;
}

.mt-cart-count {
  position: absolute;
  top: -2px;
  right: 4px;
  background: var(--mt-bordo);
  color: var(--mt-gold-light) !important;
  font-size: 10px !important;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  display: flex !important;
  align-items: center;
  justify-content: center;
  letter-spacing: 0 !important;
  font-weight: 700 !important;
  line-height: 1;
}

/* Esconder o cart antigo do Storefront */
.site-header-cart {
  display: none !important;
}

/* ============================================
   MENU DE NAVEGAÇÃO (linha abaixo do header)
   ============================================ */

/* Override do container col-full (constraint do Storefront) */
.storefront-primary-navigation,
.main-navigation {
  background: var(--mt-black) !important;
  padding: 0 !important;
  border-top: 1px solid var(--mt-border);
  width: 100%;
}

.storefront-primary-navigation .col-full,
.main-navigation .col-full,
.site-header + .storefront-primary-navigation .col-full {
  max-width: none !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}

.main-navigation .menu-toggle {
  display: none;
}

/* ============================================
   MENU HAMBURGER (responsivo - mobile/tablet)
   ============================================ */

@media (max-width: 992px) {
  /* Esconder menu horizontal completo (alta especificidade pra vencer regras desktop) */
  html body .main-navigation .primary-navigation,
  html body .main-navigation ul.menu,
  html body .main-navigation ul.nav-menu,
  html body .main-navigation .primary-navigation > ul,
  html body .main-navigation .primary-navigation > ul.menu,
  html body .main-navigation .primary-navigation > ul.nav-menu {
    display: none !important;
  }

  /* Container do botão: centraliza via flex no nav */
  .main-navigation {
    display: flex !important;
    flex-direction: column;
    align-items: center;
    position: relative;
    z-index: 10;
  }

  /* Botão hamburger (mobile) — sobrescreve TOTALMENTE Storefront default */
  .main-navigation button.menu-toggle,
  .main-navigation .menu-toggle {
    display: flex !important;
    align-items: center;
    justify-content: center;
    gap: 12px;
    background: transparent !important;
    background-image: none !important;
    border: 1px solid var(--mt-gold-dark) !important;
    padding: 12px 22px !important;
    color: var(--mt-gold-light) !important;
    cursor: pointer !important;
    margin: 14px auto !important;
    float: none !important;
    width: auto !important;
    min-width: 140px;
    max-width: none !important;
    min-height: 44px;
    border-radius: 2px;
    text-transform: uppercase;
    font-family: var(--font-sans) !important;
    position: relative;
    z-index: 20;
    pointer-events: auto !important;
    box-shadow: none !important;
    text-align: center !important;
    left: auto !important;
    right: auto !important;
  }

  .main-navigation button.menu-toggle:hover,
  .main-navigation button.menu-toggle:focus {
    border-color: var(--mt-gold) !important;
    outline: 0;
  }

  /* ESCONDE os pseudo-elementos do Storefront (3 linhas stacked) */
  .main-navigation button.menu-toggle::after,
  .main-navigation button.menu-toggle span::before,
  .main-navigation button.menu-toggle span::after {
    content: none !important;
    display: none !important;
    background: transparent !important;
    width: 0 !important;
    height: 0 !important;
  }

  /* MEU ícone hamburger via ::before (anulando o absolute do Storefront) */
  .main-navigation button.menu-toggle::before {
    content: "☰" !important;
    display: inline-block !important;
    font-size: 22px !important;
    line-height: 1 !important;
    color: var(--mt-gold) !important;
    flex-shrink: 0;
    position: static !important;
    top: auto !important;
    left: auto !important;
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    background: transparent !important;
    border-radius: 0 !important;
    transform: none !important;
  }

  .main-navigation.toggled button.menu-toggle::before {
    content: "✕" !important;
  }

  /* Texto "Menu" dentro do span */
  .main-navigation button.menu-toggle span {
    font-size: 12px !important;
    letter-spacing: 2px !important;
    color: var(--mt-gold-light) !important;
    font-family: var(--font-sans) !important;
    font-weight: 500 !important;
    line-height: 1 !important;
    display: inline-block !important;
    position: static !important;
  }

  /* Menu aberto (mobile drawer) — alta especificidade pra vencer o hide acima */
  html body .main-navigation.toggled .primary-navigation {
    display: block !important;
    background: var(--mt-black) !important;
    border-top: 1px solid var(--mt-border);
  }

  html body .main-navigation.toggled ul.menu,
  html body .main-navigation.toggled ul.nav-menu,
  html body .main-navigation.toggled .primary-navigation > ul,
  html body .main-navigation.toggled .primary-navigation > ul.menu,
  html body .main-navigation.toggled .primary-navigation > ul.nav-menu {
    display: flex !important;
    flex-direction: column !important;
    padding: 0 !important;
    width: 100% !important;
    gap: 0 !important;
  }

  .main-navigation.toggled ul.menu > li,
  .main-navigation.toggled ul.nav-menu > li {
    flex: 1 1 100% !important;
    text-align: left !important;
    border-top: 1px solid var(--mt-border);
    width: 100%;
    order: 0 !important;
  }

  .main-navigation.toggled ul.menu > li:first-child {
    border-top: 0;
  }

  /* Força ordem linear no mobile (remove o "order: 3" dos últimos 2 que o desktop usa) */
  .main-navigation.toggled ul.menu > li:nth-child(n+8) {
    order: 0 !important;
  }

  .main-navigation.toggled ul.menu > li > a {
    padding: 14px 28px !important;
    text-align: left !important;
    font-size: 13px !important;
    display: block !important;
  }

  /* Esconder o ::after trick de line-break (usado no desktop) */
  .main-navigation.toggled ul.menu::after {
    display: none !important;
  }

  /* Sub-menu (Produtos) no mobile: sempre visível quando menu aberto */
  .main-navigation.toggled ul.menu ul.sub-menu {
    position: static !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    box-shadow: none !important;
    border: 0 !important;
    background: var(--mt-bg-secondary) !important;
    padding: 0 !important;
    min-width: 0 !important;
  }

  .main-navigation.toggled ul.menu ul.sub-menu li a {
    padding: 10px 40px !important;
    font-size: 12px !important;
    letter-spacing: 1.5px;
    border-top: 1px solid var(--mt-border);
  }

  /* Esconder chevron no mobile (sub-menus já aparecem) */
  .main-navigation ul.menu li.menu-item-has-children > a::after {
    content: "" !important;
  }
}

/* Força largura total em todos os wrappers intermediários */
.main-navigation,
.main-navigation .primary-navigation,
.storefront-primary-navigation,
.storefront-primary-navigation > .col-full {
  width: 100% !important;
  max-width: none !important;
  display: block !important;
}

/* Menu base styles */
.main-navigation ul.menu,
.main-navigation ul.nav-menu,
.main-navigation .primary-navigation > ul {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  width: 100% !important;
  font-size: 0 !important; /* Remove whitespace between inline-block items */
}

.main-navigation ul.menu > li,
.main-navigation ul.nav-menu > li,
.main-navigation .primary-navigation > ul > li {
  display: inline-block !important;
  font-size: 14px !important; /* Restore font size */
  margin: 0 !important;
  padding: 0 !important;
  text-align: center !important;
  list-style: none !important;
  width: 12.5% !important; /* 100% / 8 items */
  box-sizing: border-box !important;
  vertical-align: top !important;
}

.main-navigation ul.menu > li a,
.main-navigation ul.nav-menu > li a,
.main-navigation .primary-navigation > ul > li a {
  display: block !important;
  padding: 18px 10px !important;
  width: 100% !important;
  text-align: center !important;
}

/* Esconder menu fallback (wp_page_menu) que o Storefront injeta */
.main-navigation > div.menu {
  display: none !important;
}

.main-navigation ul.menu li a,
.main-navigation ul.nav-menu li a {
  color: var(--mt-gold-light) !important;
  font-family: var(--font-sans) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  letter-spacing: 0.5px;
  text-transform: none;
  padding: 18px 14px !important;
  transition: color 0.3s ease;
  display: block;
  white-space: nowrap;
}

.main-navigation ul.menu li a:hover,
.main-navigation ul.menu li.current-menu-item a {
  color: var(--mt-gold) !important;
  background: transparent !important;
}

/* Dropdown (sub-menu) estilo Azza */
.main-navigation ul.menu li.menu-item-has-children > a::after,
.main-navigation ul.nav-menu li.menu-item-has-children > a::after {
  content: " ▾";
  font-size: 10px;
  margin-left: 4px;
  color: var(--mt-gold);
  vertical-align: middle;
}

.main-navigation ul.menu ul.sub-menu,
.main-navigation ul.nav-menu ul.children,
.main-navigation ul.menu ul.children {
  background: var(--mt-black) !important;
  border: 0 !important;
  border-radius: 2px;
  display: block !important;
  position: absolute !important;
  top: 100% !important;
  left: 0 !important;
  padding: 8px 0 !important;
  min-width: 240px;
  opacity: 0;
  visibility: hidden;
  transform: translateY(6px);
  transition: opacity 0.25s ease, transform 0.25s ease, visibility 0s linear 0.25s;
  z-index: 1000;
  box-shadow: 0 8px 24px rgba(0,0,0,0.4);
}

.main-navigation ul.menu li.menu-item-has-children,
.main-navigation ul.nav-menu li.menu-item-has-children {
  position: relative;
}

.main-navigation ul.menu li:hover > ul.sub-menu,
.main-navigation ul.nav-menu li:hover > ul.children,
.main-navigation ul.menu li:focus-within > ul.sub-menu {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
  transition: opacity 0.25s ease, transform 0.25s ease, visibility 0s linear 0s;
}

.main-navigation ul.menu ul.sub-menu li a,
.main-navigation ul.nav-menu ul.children li a {
  padding: 10px 18px !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  letter-spacing: 0.5px !important;
  text-transform: none !important;
  border-bottom: 0 !important;
  display: block;
}

.main-navigation ul.menu ul.sub-menu li:last-child a {
  border-bottom: 0;
}

.main-navigation ul.menu ul.sub-menu li a:hover {
  background: var(--mt-bg-secondary) !important;
  color: var(--mt-gold) !important;
}

/* Estilo das páginas institucionais criadas automaticamente */
.mt-page-table,
.page .entry-content table {
  width: 100%;
  border-collapse: collapse;
  margin: 20px 0;
  border: 1px solid var(--mt-border);
}
.mt-page-table th,
.mt-page-table td,
.page .entry-content th,
.page .entry-content td {
  padding: 10px 14px;
  border: 1px solid var(--mt-border);
  text-align: left;
}
.mt-page-table th {
  background: var(--mt-bg-secondary);
  color: var(--mt-gold) !important;
  letter-spacing: 1px;
  font-size: 12px;
}

/* ============================================
   RESPONSIVO HEADER
   ============================================ */

@media (max-width: 992px) {
  .mt-header-3col {
    grid-template-columns: auto 1fr;
    grid-template-rows: auto auto;
    gap: 16px;
    padding: 12px 16px;
  }
  .mt-header-3col .site-branding {
    grid-column: 1;
    grid-row: 1;
  }
  .mt-header-utils {
    grid-column: 2;
    grid-row: 1;
    justify-content: flex-end;
    gap: 18px;
  }
  .mt-header-search {
    grid-column: 1 / -1;
    grid-row: 2;
  }
  .mt-util span {
    display: none;
  }
  .mt-util {
    min-width: auto;
    padding: 6px 8px;
  }
  .mt-cart-count {
    top: -4px;
    right: -4px;
  }
  .mt-header-3col .site-branding .custom-logo {
    max-height: 56px !important;
  }
}

@media (max-width: 600px) {
  .main-navigation ul.menu li a,
  .main-navigation ul.nav-menu li a {
    padding: 12px 12px !important;
    font-size: 11px !important;
    letter-spacing: 1px;
  }
}

/* ============================================
   HERO CARROSSEL (Swiper)
   ============================================ */

/* Zera TODOS os espaços entre o header e o hero */
#masthead,
#masthead.site-header,
.site-header,
.storefront-primary-navigation,
.storefront-primary-navigation .col-full,
.main-navigation,
.main-navigation .col-full,
.primary-navigation,
nav#site-navigation {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}
.site-header {
  border-bottom-width: 0 !important;
}
.site-content,
#content.site-content,
#primary.content-area,
.site-main {
  padding-top: 0 !important;
  margin-top: 0 !important;
}
section.mt-hero-carousel,
.mt-hero-carousel {
  margin: 0 !important;
  padding: 0 !important;
  display: block !important;
}

.mt-hero-carousel {
  width: 100%;
  height: clamp(420px, 62vh, 680px);
  position: relative;
  overflow: hidden;
  background: var(--mt-black);
}

.mt-hero-carousel .swiper-slide {
  position: relative;
  display: block !important;
  padding: 0;
  color: var(--mt-gold-light);
  background: transparent !important;
}
/* Slides agora usam <picture> + <img> em vez de background-image */
.mt-hero-carousel .swiper-slide .mt-slide-link {
  display: block;
  width: 100%;
  height: 100%;
  text-decoration: none;
}
.mt-hero-carousel .swiper-slide picture,
.mt-hero-carousel .swiper-slide picture img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
/* Mobile: imagem vertical (3:4) — altura cresce, mantém ratio */
@media (max-width: 768px) {
  .mt-hero-carousel { height: clamp(420px, 75vh, 720px); }
  .mt-hero-carousel .swiper-slide picture img { object-position: center; }
}

.mt-slide-inner {
  max-width: 640px;
  text-align: left;
  z-index: 2;
  position: relative;
}

.mt-slide-tag {
  font-size: 12px;
  color: var(--mt-gold);
  letter-spacing: 6px;
  margin-bottom: 22px;
  font-weight: 500;
  text-shadow: 0 1px 6px rgba(0,0,0,0.7);
}

.mt-slide-title {
  font-family: var(--font-serif) !important;
  font-size: clamp(36px, 5.2vw, 64px) !important;
  line-height: 1.05 !important;
  font-weight: 300 !important;
  color: var(--mt-gold-light) !important;
  margin: 0 0 20px !important;
  letter-spacing: 1px;
  text-shadow: 0 2px 12px rgba(0,0,0,0.75);
}

.mt-slide-title em {
  color: var(--mt-gold);
  font-weight: 400;
  font-style: italic;
}

.mt-slide-sub {
  font-size: 15px;
  color: var(--mt-gold-light);
  letter-spacing: 2px;
  margin-bottom: 32px;
  opacity: 0.9;
  max-width: 480px;
  text-shadow: 0 1px 8px rgba(0,0,0,0.7);
}

.mt-btn {
  display: inline-block;
  padding: 15px 36px;
  font-size: 11px;
  letter-spacing: 3px;
  font-weight: 500;
  text-decoration: none !important;
  border-radius: 0;
  transition: all 0.3s ease;
  cursor: pointer;
  text-transform: uppercase;
}

.mt-btn-gold {
  background: var(--mt-gold);
  color: var(--mt-black) !important;
  border: 1px solid var(--mt-gold);
}

.mt-btn-gold:hover {
  background: var(--mt-gold-light);
  border-color: var(--mt-gold-light);
}

.mt-btn-outline {
  background: transparent;
  color: var(--mt-gold) !important;
  border: 1px solid var(--mt-gold);
}

.mt-btn-outline:hover {
  background: var(--mt-gold);
  color: var(--mt-black) !important;
}

/* Setas de navegação Swiper */
.mt-hero-carousel .swiper-button-prev,
.mt-hero-carousel .swiper-button-next {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: rgba(0,0,0,0.35);
  border: 1px solid rgba(212, 175, 55, 0.5);
  color: var(--mt-gold) !important;
  transition: all 0.3s ease;
  margin-top: -24px;
}

.mt-hero-carousel .swiper-button-prev:hover,
.mt-hero-carousel .swiper-button-next:hover {
  background: var(--mt-gold);
  color: var(--mt-black) !important;
}

.mt-hero-carousel .swiper-button-prev::after,
.mt-hero-carousel .swiper-button-next::after {
  font-size: 18px !important;
  font-weight: 600 !important;
}

/* Paginação (bullets) */
.mt-hero-carousel .swiper-pagination {
  bottom: 24px !important;
}

.mt-hero-carousel .swiper-pagination-bullet {
  background: var(--mt-gold-light) !important;
  opacity: 0.4 !important;
  width: 10px;
  height: 10px;
  margin: 0 6px !important;
  transition: all 0.3s ease;
}

.mt-hero-carousel .swiper-pagination-bullet-active {
  background: var(--mt-gold) !important;
  opacity: 1 !important;
  width: 32px;
  border-radius: 6px;
}

@media (max-width: 768px) {
  .mt-hero-carousel {
    height: clamp(380px, 70vh, 540px);
  }
  .mt-hero-carousel .swiper-slide {
    padding: 0 20px;
    text-align: center;
    justify-content: center;
  }
  .mt-slide-inner {
    text-align: center;
    margin: 0 auto;
  }
  .mt-slide-sub {
    margin-left: auto;
    margin-right: auto;
  }
  .mt-hero-carousel .swiper-button-prev,
  .mt-hero-carousel .swiper-button-next {
    display: none;
  }
}

/* ============================================
   FAIXA DE BENEFÍCIOS (estilo Azza - fundo cinza claro)
   4 ícones circulares + título + descrição longa
   ============================================ */

.mt-beneficios-bar {
  background: #EEEEEE;
  padding: 60px 40px;
  border-top: 1px solid rgba(0,0,0,0.05);
  border-bottom: 1px solid rgba(0,0,0,0.05);
}

.mt-beneficios-inner {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 36px;
  max-width: 1400px;
  margin: 0 auto;
  align-items: start;
}

.mt-beneficio-item {
  display: flex;
  align-items: flex-start;
  gap: 20px;
}

.mt-beneficio-icon {
  width: 72px;
  height: 72px;
  min-width: 72px;
  border: 2px solid #333;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #333;
  flex-shrink: 0;
  background: transparent;
}

.mt-beneficio-icon svg {
  display: block;
}

.mt-beneficio-text {
  flex: 1;
  min-width: 0;
}

.mt-beneficio-text h4 {
  font-family: var(--font-sans) !important;
  color: #1a1a1a !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  margin: 4px 0 8px !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  line-height: 1.2;
}

.mt-beneficio-text p {
  color: #333 !important;
  font-size: 13px !important;
  line-height: 1.55;
  margin: 0 !important;
  letter-spacing: 0.2px;
}

.mt-beneficio-text strong {
  color: #000;
  font-weight: 700;
}

/* Em DESKTOP: mostra full, esconde short */
.mt-benef-short { display: none; }
.mt-benef-full { display: block; }

@media (max-width: 992px) {
  .mt-beneficios-inner {
    grid-template-columns: repeat(2, 1fr);
    gap: 28px;
  }
}

@media (max-width: 600px) {
  .mt-beneficios-bar {
    padding: 40px 20px;
  }
  .mt-beneficios-inner {
    grid-template-columns: 1fr;
    gap: 24px;
  }
}

/* ============================================
   PRODUTOS - GRID E CARDS
   ============================================ */

.woocommerce ul.products,
.woocommerce-page ul.products {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 18px !important;
  padding: 40px 48px !important;
}

@media (max-width: 768px) {
  .woocommerce ul.products,
  .woocommerce-page ul.products {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 12px !important;
    padding: 20px !important;
  }
}

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
  background: var(--mt-bg-secondary) !important;
  border: 1px solid var(--mt-border) !important;
  border-radius: 4px !important;
  overflow: hidden !important;
  transition: all 0.3s ease !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
}

.woocommerce ul.products li.product:hover {
  border-color: var(--mt-gold) !important;
  transform: translateY(-4px);
}

.woocommerce ul.products li.product a img {
  background: radial-gradient(ellipse at center, #2A1015 0%, var(--mt-black) 80%);
  padding: 20px;
  margin: 0 !important;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product h2,
.woocommerce ul.products li.product h3 {
  font-family: var(--font-sans) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  color: var(--mt-gold-light) !important;
  padding: 16px 18px 4px !important;
  letter-spacing: 0.5px !important;
}

.woocommerce ul.products li.product .price {
  font-family: var(--font-serif) !important;
  font-size: 22px !important;
  color: var(--mt-gold) !important;
  font-weight: 400 !important;
  padding: 0 18px 8px !important;
  display: block;
}

.woocommerce ul.products li.product .price del {
  color: var(--mt-gold-dark) !important;
  font-size: 13px !important;
  opacity: 0.7;
}

.woocommerce ul.products li.product .price ins {
  background: transparent !important;
  color: var(--mt-gold) !important;
}

/* Badge "Inspiração Olfativa" */
.mt-inspiration {
  padding: 0 18px 12px;
  font-size: 10px;
  color: var(--mt-gold-dark);
  font-style: italic;
}

/* Badge "Oferta!" — flutua no canto superior direito da imagem do card */
html body ul.mt-products-grid > li.product,
html body .mt-shop-wrap ul.products > li.product,
html body .woocommerce ul.products li.product {
  position: relative !important;
}
html body .woocommerce span.onsale,
html body ul.mt-products-grid li.product .onsale,
html body .mt-shop-wrap li.product .onsale,
html body ul.products > li.product .onsale,
html body section.related li.product .onsale,
html body section.up-sells li.product .onsale {
  position: absolute !important;
  top: 12px !important;
  left: 12px !important;
  right: auto !important;
  bottom: auto !important;
  margin: 0 !important;
  z-index: 5 !important;
  background: var(--mt-bordo) !important;
  color: #ffffff !important;
  font-family: var(--font-sans) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  padding: 7px 14px !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  border: 0 !important;
  border-radius: 2px !important;
  min-height: auto !important;
  line-height: 1 !important;
  box-shadow: 0 4px 12px rgba(0,0,0,0.55), 0 0 0 1px rgba(212,175,55,0.25) inset;
  pointer-events: none;
}
/* Garante que o li.product sirva de referência para o posicionamento absoluto */
html body ul.products > li.product,
html body section.related li.product,
html body section.up-sells li.product {
  position: relative !important;
}

/* Botão "Adicionar ao Carrinho" */
.woocommerce ul.products li.product .button,
.woocommerce #respond input#submit,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button {
  background: var(--mt-bordo) !important;
  color: var(--mt-gold-light) !important;
  border: none !important;
  border-radius: 0 !important;
  font-size: 11px !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  padding: 12px 18px !important;
  font-weight: 500 !important;
  width: 100% !important;
  text-align: center !important;
  transition: background 0.3s ease !important;
  margin: 0 !important;
}

.woocommerce ul.products li.product .button:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce #respond input#submit:hover {
  background: var(--mt-bordo-dark) !important;
}

.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce #respond input#submit.alt {
  background: var(--mt-gold) !important;
  color: var(--mt-black) !important;
  font-weight: 600 !important;
}

.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover {
  background: var(--mt-gold-light) !important;
}

/* ============================================
   PÁGINA DE PRODUTO INDIVIDUAL
   ============================================ */

.single-product div.product h1.product_title {
  font-family: var(--font-serif) !important;
  font-size: 36px !important;
  color: var(--mt-gold-light) !important;
  font-weight: 300 !important;
  margin-bottom: 4px !important;
}

/* Subtítulo "inspirado em ..." abaixo do H1 — menor, itálico, cor cream suave */
.single-product div.product .mt-product-subtitle {
  font-family: var(--font-serif) !important;
  font-size: 16px !important;
  font-style: italic !important;
  font-weight: 300 !important;
  color: var(--mt-gold-light) !important;
  opacity: 0.85 !important;
  margin: 0 0 14px !important;
  padding: 0 !important;
  line-height: 1.35 !important;
}

.single-product div.product .price {
  font-family: var(--font-serif) !important;
  font-size: 32px !important;
  color: var(--mt-gold) !important;
}

.single-product div.product .woocommerce-product-details__short-description {
  color: var(--mt-gold-light);
  font-size: 14px;
  line-height: 1.8;
  padding: 20px 0;
  border-top: 1px solid var(--mt-border);
  border-bottom: 1px solid var(--mt-border);
  margin: 20px 0;
}

.single-product .woocommerce-tabs ul.tabs {
  border-bottom: 1px solid var(--mt-border) !important;
}

.single-product .woocommerce-tabs ul.tabs li {
  background: transparent !important;
  border: none !important;
}

.single-product .woocommerce-tabs ul.tabs li.active {
  background: var(--mt-bg-secondary) !important;
  border-bottom: 2px solid var(--mt-gold) !important;
}

.single-product .woocommerce-tabs ul.tabs li a {
  color: var(--mt-gold-light) !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  font-size: 12px !important;
}

/* Related / Upsells — força largura total no desktop (limpa float do Storefront)
   APENAS desktop — mobile segue as regras do @media (max-width: 768px) mais abaixo */
@media (min-width: 769px) {
  .single-product .related,
  .single-product .upsells,
  .single-product .cross-sells,
  .single-product div.product .related,
  .single-product div.product .upsells {
    clear: both !important;
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
    margin: 40px 0 0 !important;
    padding: 24px 48px !important;
    box-sizing: border-box;
  }
  .single-product .related h2,
  .single-product .upsells h2,
  .single-product .cross-sells h2 {
    margin: 0 0 20px !important;
    padding: 0 !important;
    text-align: left !important;
  }
  .single-product .related ul.products,
  .single-product .upsells ul.products,
  .single-product .cross-sells ul.products {
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
    float: none !important;
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: flex-start !important;
    grid-template-columns: none !important;
    gap: 18px !important;
  }
  .single-product .related ul.products > li.product,
  .single-product .upsells ul.products > li.product,
  .single-product .cross-sells ul.products > li.product {
    flex: 0 0 calc(25% - 14px) !important;
    max-width: calc(25% - 14px) !important;
    width: calc(25% - 14px) !important;
    margin: 0 !important;
  }
  /* Desktop: idem, remove ::before/::after fantasmas */
  .single-product .related ul.products::before,
  .single-product .related ul.products::after,
  .single-product .upsells ul.products::before,
  .single-product .upsells ul.products::after,
  .single-product .cross-sells ul.products::before,
  .single-product .cross-sells ul.products::after {
    display: none !important;
    content: none !important;
  }
}

/* ============================================
   TABS — conteúdo interno (Descrição / Info Adicional / Avaliações)
   Tudo no mesmo fundo do site, sem caixas brancas/azuis
   ============================================ */
.single-product .woocommerce-tabs .panel,
.single-product .woocommerce-tabs .wc-tab,
.single-product .woocommerce-Tabs-panel {
  background: transparent !important;
  color: var(--mt-gold-light) !important;
  padding: 24px 0 !important;
}

/* Descrição — texto justificado */
.single-product .woocommerce-tabs .woocommerce-Tabs-panel--description,
.single-product #tab-description,
.single-product .woocommerce-Tabs-panel--description p,
.single-product #tab-description p {
  text-align: justify !important;
  text-justify: inter-word;
  hyphens: auto;
  line-height: 1.75 !important;
}

/* Tabela de atributos (Informação Adicional) — fundo escuro, sem caixa branca */
.single-product table.shop_attributes,
.single-product .woocommerce-product-attributes {
  background: transparent !important;
  border: 1px solid var(--mt-border) !important;
  border-radius: 4px !important;
  overflow: hidden !important;
  width: 100% !important;
  border-collapse: collapse !important;
}
.single-product table.shop_attributes th,
.single-product table.shop_attributes td,
.single-product .woocommerce-product-attributes th,
.single-product .woocommerce-product-attributes td {
  background: transparent !important;
  color: var(--mt-gold-light) !important;
  border-color: var(--mt-border) !important;
  border-style: solid !important;
  border-width: 0 0 1px 0 !important;
  padding: 12px 16px !important;
  font-size: 14px !important;
  text-align: left !important;
}
.single-product table.shop_attributes tr:last-child th,
.single-product table.shop_attributes tr:last-child td { border-bottom: 0 !important; }
.single-product table.shop_attributes th,
.single-product .woocommerce-product-attributes th {
  color: var(--mt-gold) !important;
  font-weight: 600;
  letter-spacing: 1px;
  width: 35%;
  background: rgba(212,175,55,0.04) !important;
}

/* Avaliações — aviso "Não há avaliações" sem fundo azul */
.single-product #reviews .woocommerce-noreviews,
.single-product .woocommerce-Reviews-noReviews,
.single-product #reviews .woocommerce-info {
  background: transparent !important;
  border: 1px dashed var(--mt-border) !important;
  border-top-color: var(--mt-gold) !important;
  color: var(--mt-gold-light) !important;
  padding: 18px 20px !important;
  font-size: 14px;
  margin-bottom: 24px !important;
}

/* Lista de avaliações existentes */
.single-product #reviews ol.commentlist {
  padding: 0 !important;
  margin: 0 0 24px !important;
  list-style: none;
}
.single-product #reviews ol.commentlist li.review,
.single-product #reviews ol.commentlist li.comment {
  background: transparent !important;
  border: 1px solid var(--mt-border) !important;
  border-radius: 4px !important;
  padding: 16px 18px !important;
  margin-bottom: 12px !important;
  list-style: none;
}
.single-product #reviews ol.commentlist li img.avatar {
  width: 42px !important;
  height: 42px !important;
  border-radius: 50% !important;
  border: 1px solid var(--mt-gold-dark) !important;
  padding: 0 !important;
  position: static !important;
  background: transparent !important;
  float: left;
  margin-right: 14px;
}
.single-product #reviews ol.commentlist .comment-text {
  margin: 0 0 0 56px !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  color: var(--mt-gold-light) !important;
}
.single-product #reviews ol.commentlist .meta strong {
  color: var(--mt-gold) !important;
  font-size: 13px;
  letter-spacing: 0.5px;
}
.single-product #reviews ol.commentlist .meta time,
.single-product #reviews ol.commentlist .woocommerce-review__published-date {
  color: var(--mt-gold-dark) !important;
  font-size: 11px;
  opacity: 0.8;
}
.single-product #reviews .star-rating span::before,
.single-product #reviews .star-rating::before { color: var(--mt-gold) !important; }
.single-product #reviews .star-rating { color: var(--mt-gold) !important; }

/* Estrelas douradas em TODO o site (resumo, loop, single) — vence roxo do Storefront */
html body .woocommerce .star-rating,
html body .star-rating,
html body .star-rating::before,
html body .star-rating span,
html body .star-rating span::before,
html body p.stars a.active,
html body p.stars.selected a.active,
html body p.stars.selected a:not(.active) { color: var(--mt-gold) !important; }

/* Calculadora de frete — captura TODOS os inputs/buttons dentro da .summary
   que NÃO são campos nativos do WC (qty, submit cart). Evita depender de
   classes JS-injected que variam entre releases do plugin. */
html body.single-product div.product .summary input[type="text"]:not(.qty):not(.input-text),
html body.single-product div.product .summary input[type="number"]:not(.qty),
html body.single-product div.product .summary input[type="tel"],
html body.single-product div.product .summary input[type="search"] {
  background: var(--mt-black) !important;
  background-color: var(--mt-black) !important;
  color: var(--mt-gold-light) !important;
  border: 1px solid var(--mt-gold-dark) !important;
  border-radius: 3px !important;
  box-shadow: none !important;
  padding: 13px 14px !important;
  font-family: var(--font-sans) !important;
  font-size: 14px !important;
  height: 46px !important;
  min-height: 46px !important;
  box-sizing: border-box;
}
html body.single-product div.product .summary input[type="text"]::placeholder,
html body.single-product div.product .summary input[type="tel"]::placeholder {
  color: var(--mt-gold-dark) !important;
}
html body.single-product div.product .summary input:focus {
  outline: 0 !important;
  border-color: var(--mt-gold) !important;
}

/* Botão CONSULTAR e qualquer botão do plugin dentro da summary
   (exceto o botão "add to cart" do WC) */
html body.single-product div.product .summary button:not(.single_add_to_cart_button):not(.button):not(.mt-search-submit):not(.mt-search-clear):not(.mt-variation-btn):not(.mt-qty-btn),
html body.single-product div.product .summary input[type="button"],
html body.single-product div.product .summary input[type="submit"]:not(.single_add_to_cart_button) {
  background: var(--mt-bordo) !important;
  background-color: var(--mt-bordo) !important;
  color: var(--mt-gold-light) !important;
  border: 1px solid var(--mt-bordo) !important;
  font-family: var(--font-sans) !important;
  font-size: 12px !important;
  letter-spacing: 3px !important;
  text-transform: uppercase !important;
  font-weight: 700 !important;
  padding: 0 20px !important;
  height: 46px !important;
  min-height: 46px !important;
  border-radius: 3px !important;
  box-shadow: none !important;
  cursor: pointer;
  transition: background 0.2s;
}
html body.single-product div.product .summary button:not(.single_add_to_cart_button):not(.button):not(.mt-variation-btn):hover,
html body.single-product div.product .summary input[type="button"]:hover {
  background: var(--mt-bordo-dark) !important;
  background-color: var(--mt-bordo-dark) !important;
  border-color: var(--mt-bordo-dark) !important;
}

/* Calculadora de frete — classes oficiais do plugin (current-style / spinning)
   Força cor do tema no estado inicial E durante o "consultando" (loading). */
html body .woo-better-input-current-style,
html body input.woo-better-input-current-style {
  background: #0A0A0A !important;
  background-color: #0A0A0A !important;
  color: #E8D9B0 !important;
  border: 1px solid #8B7355 !important;
  border-radius: 3px !important;
  box-shadow: none !important;
}
html body .woo-better-input-current-style::placeholder { color: #8B7355 !important; }

html body .woo-better-button-current-style,
html body button.woo-better-button-current-style,
html body .woo-better-button-current-style.spinning,
html body button.woo-better-button-current-style.spinning,
html body .woo-better-button-current-style[disabled],
html body .woo-better-button-current-style:disabled,
html body .woo-better-button-current-style:focus,
html body .woo-better-button-current-style:active {
  background: #6B1F2E !important;
  background-color: #6B1F2E !important;
  color: #E8D9B0 !important;
  border: 1px solid #6B1F2E !important;
  border-color: #6B1F2E !important;
  border-radius: 3px !important;
  box-shadow: none !important;
  opacity: 1 !important;
  font-family: var(--font-sans) !important;
  font-size: 12px !important;
  letter-spacing: 3px !important;
  text-transform: uppercase !important;
  font-weight: 700 !important;
}
html body .woo-better-button-current-style:hover {
  background: #4A1520 !important;
  background-color: #4A1520 !important;
  border-color: #4A1520 !important;
}

/* Spinner interno dentro do botão — cor dourada */
html body .woo-better-button-current-style .loading-icon,
html body .woo-better-button-current-style .spinning-container,
html body .woo-better-button-current-style svg,
html body .woo-better-button-current-style svg * { color: #E8D9B0 !important; stroke: #E8D9B0 !important; fill: #E8D9B0 !important; }

/* Calculadora de frete (plugin Woo Better Shipping) — cor do tema */
html body #woo-better-calculator,
html body .woo-better-calculator,
html body [id*="woo-better-"] {
  background: transparent !important;
}
html body #woo-better-calculator input,
html body .woo-better-calculator input,
html body [class*="woo-better-postcode"] input {
  background: var(--mt-black) !important;
  color: var(--mt-gold-light) !important;
  border: 1px solid var(--mt-gold-dark) !important;
  border-radius: 3px !important;
  box-shadow: none !important;
}
html body #woo-better-calculator input::placeholder,
html body .woo-better-calculator input::placeholder { color: var(--mt-gold-dark) !important; }
html body #woo-better-calculator button,
html body .woo-better-calculator button,
html body [class*="woo-better-postcode"] button,
html body [id*="woo-better-"] button,
html body [id*="woo-better-"] input[type="button"],
html body [id*="woo-better-"] input[type="submit"],
html body [class*="woo-better-"] button,
html body [class*="woo-better-"] input[type="button"],
html body [class*="woo-better-"] input[type="submit"] {
  background: var(--mt-bordo) !important;
  background-color: var(--mt-bordo) !important;
  color: var(--mt-gold-light) !important;
  border: 1px solid var(--mt-bordo) !important;
  border-color: var(--mt-bordo) !important;
  letter-spacing: 3px !important;
  text-transform: uppercase !important;
  font-weight: 700 !important;
  font-family: var(--font-sans) !important;
  font-size: 12px !important;
  padding: 14px 22px !important;
  border-radius: 3px !important;
  transition: background 0.2s;
  box-shadow: none !important;
}
html body #woo-better-calculator button:hover,
html body .woo-better-calculator button:hover,
html body [class*="woo-better-postcode"] button:hover,
html body [id*="woo-better-"] button:hover,
html body [class*="woo-better-"] button:hover {
  background: var(--mt-bordo-dark) !important;
  background-color: var(--mt-bordo-dark) !important;
  border-color: var(--mt-bordo-dark) !important;
}
html body a[href*="Não sei"],
html body .woo-better-calculator a { color: var(--mt-gold) !important; }

/* Ícone SVG do caminhãozinho do plugin — trocar azul por dourado */
html body [id*="woo-better-"] svg *,
html body [class*="woo-better-"] svg * { fill: var(--mt-gold) !important; stroke: var(--mt-gold) !important; }
html body [id*="woo-better-"] img[src*="transit"],
html body [class*="woo-better-"] img[src*="transit"] { filter: hue-rotate(180deg) saturate(1.2) brightness(1.1) !important; }

/* Formulário "Deixar uma avaliação" — tudo no fundo do site */
.single-product #review_form_wrapper,
.single-product #review_form,
.single-product #respond {
  background: transparent !important;
  padding: 0 !important;
}
.single-product #review_form #respond p.comment-form-rating,
.single-product #review_form #respond p.comment-form-author,
.single-product #review_form #respond p.comment-form-email,
.single-product #review_form #respond p.comment-form-comment { margin: 12px 0 !important; }
.single-product #review_form label {
  color: var(--mt-gold) !important;
  font-size: 12px;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  display: block;
  margin-bottom: 6px;
  font-weight: 600;
}
.single-product #review_form input[type="text"],
.single-product #review_form input[type="email"],
.single-product #review_form input[type="url"],
.single-product #review_form textarea {
  background: var(--mt-black) !important;
  border: 1px solid var(--mt-border) !important;
  color: var(--mt-gold-light) !important;
  padding: 10px 12px !important;
  font-size: 14px !important;
  font-family: inherit !important;
  width: 100% !important;
  max-width: 520px !important;
  border-radius: 3px !important;
  box-shadow: none !important;
}
.single-product #review_form textarea {
  min-height: 100px !important;
  height: 120px !important;
  max-width: 100% !important;
  resize: vertical;
}
.single-product #review_form input:focus,
.single-product #review_form textarea:focus {
  outline: 0 !important;
  border-color: var(--mt-gold) !important;
}
.single-product #review_form #respond .form-submit input[type="submit"],
.single-product #review_form .submit {
  background: var(--mt-gold) !important;
  color: var(--mt-black) !important;
  border: 0 !important;
  padding: 12px 28px !important;
  font-size: 12px !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  font-weight: 700 !important;
  cursor: pointer;
  border-radius: 3px;
}
.single-product #review_form .form-submit input[type="submit"]:hover {
  background: var(--mt-gold-light) !important;
}

/* Estrelas clicáveis do rating */
.single-product p.stars a {
  color: var(--mt-gold-dark) !important;
}
.single-product p.stars.selected a.active,
.single-product p.stars a:hover,
.single-product p.stars.selected a:not(.active) {
  color: var(--mt-gold) !important;
}

/* Checkbox "salvar nome" */
.single-product #review_form .comment-form-cookies-consent { font-size: 12px; opacity: 0.8; }
.single-product #review_form .comment-form-cookies-consent label {
  display: inline !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  color: var(--mt-gold-light) !important;
  font-weight: normal !important;
  font-size: 12px;
}

/* Seletor de volume (variação) */
.woocommerce div.product form.cart .variations {
  background: var(--mt-bg-secondary);
  padding: 16px;
  border: 1px solid var(--mt-border);
  border-radius: 4px;
  margin-bottom: 20px;
}

.woocommerce div.product form.cart .variations label {
  color: var(--mt-gold) !important;
  font-size: 11px;
  letter-spacing: 2px;
  text-transform: uppercase;
}

.woocommerce div.product form.cart .variations select {
  background: var(--mt-black);
  color: var(--mt-gold-light);
  border: 1px solid var(--mt-gold-dark);
  padding: 10px;
  font-family: var(--font-sans);
}

/* ============================================
   CARRINHO E CHECKOUT
   ============================================ */

.woocommerce-cart table.shop_table,
.woocommerce-checkout table.shop_table {
  background: transparent !important;
  border: 1px solid currentColor !important;
}

.woocommerce-cart table.shop_table th,
.woocommerce-checkout table.shop_table th {
  color: currentColor !important;
  background: transparent !important;
  font-size: 11px;
  letter-spacing: 2px;
  text-transform: uppercase;
}

.woocommerce-cart table.shop_table td,
.woocommerce-checkout table.shop_table td {
  color: var(--mt-gold-light) !important;
  border-top: 1px solid var(--mt-border) !important;
}

.woocommerce-checkout form .form-row input.input-text,
.woocommerce-checkout form .form-row textarea,
.woocommerce-checkout form .form-row select,
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea {
  background: transparent !important;
  color: currentColor !important;
  border: 1px solid currentColor !important;
  border-radius: 2px !important;
  padding: 12px !important;
  font-family: var(--font-sans) !important;
}

.woocommerce form .form-row label {
  color: currentColor !important;
  font-size: 12px;
  letter-spacing: 1px;
}

/* ============================================
   FOOTER
   ============================================ */

.site-footer {
  background: var(--mt-black-deep) !important;
  color: var(--mt-gold-dark) !important;
  border-top: 1px solid var(--mt-border);
  padding: 56px 48px 28px !important;
}

.site-footer h1,
.site-footer h2,
.site-footer h3,
.site-footer .widget-title {
  font-family: var(--font-sans) !important;
  color: var(--mt-gold) !important;
  font-size: 11px !important;
  letter-spacing: 3px !important;
  text-transform: uppercase;
  font-weight: 500 !important;
  margin-bottom: 16px;
}

.site-footer a {
  color: var(--mt-gold-dark) !important;
  font-size: 11px;
  text-decoration: none;
}

.site-footer a:hover {
  color: var(--mt-gold) !important;
}

.site-info {
  border-top: 1px solid var(--mt-border);
  padding-top: 20px;
  margin-top: 40px;
  font-size: 10px;
  color: var(--mt-gold-dark);
  letter-spacing: 1px;
}

/* ============================================
   WIDGETS E SIDEBAR
   ============================================ */

.widget {
  background: var(--mt-bg-secondary);
  padding: 20px;
  border: 1px solid var(--mt-border);
  border-radius: 4px;
  margin-bottom: 20px;
}

.widget_price_filter .price_slider_wrapper .ui-widget-content {
  background: var(--mt-black) !important;
}

.widget_price_filter .ui-slider .ui-slider-range {
  background: var(--mt-gold) !important;
}

.widget_price_filter .ui-slider .ui-slider-handle {
  background: var(--mt-gold) !important;
  border: 2px solid var(--mt-gold-light) !important;
}

/* ============================================
   NEWSLETTER / GRUPO EXCLUSIVO WHATSAPP
   ============================================ */

.mt-newsletter {
  background: linear-gradient(135deg, #1A0A10 0%, #2A1015 100%);
  padding: 60px 48px;
  text-align: center;
  border-top: 1px solid var(--mt-border);
  border-bottom: 1px solid var(--mt-border);
}

.mt-newsletter-tag {
  font-size: 11px;
  color: var(--mt-gold);
  letter-spacing: 5px;
  margin-bottom: 14px;
  font-weight: 500;
}

.mt-newsletter h2 {
  font-family: var(--font-serif) !important;
  font-size: 32px !important;
  color: var(--mt-gold-light) !important;
  font-weight: 300 !important;
  margin-bottom: 12px;
}

.mt-newsletter h2 em {
  color: var(--mt-gold);
  font-style: italic;
}

.mt-newsletter p {
  font-size: 12px;
  color: var(--mt-gold-dark);
  letter-spacing: 1px;
  margin-bottom: 28px;
}

/* Form WhatsApp — mesmo estilo do antigo email */
.mt-wa-form {
  display: flex;
  max-width: 480px;
  margin: 0 auto;
  gap: 0;
}
.mt-wa-form input[type="tel"] {
  flex: 1;
  background: var(--mt-black);
  border: 1px solid var(--mt-gold);
  color: var(--mt-gold-light);
  padding: 14px 18px;
  font-size: 14px;
  font-family: var(--font-sans);
  min-width: 0;
  outline: none;
}
.mt-wa-form input[type="tel"]::placeholder {
  color: var(--mt-gold-dark);
  letter-spacing: 1px;
}
.mt-wa-form button {
  background: var(--mt-gold);
  color: var(--mt-black);
  padding: 14px 28px;
  font-size: 11px;
  letter-spacing: 2px;
  font-weight: 600;
  border: none;
  cursor: pointer;
  text-transform: uppercase;
  font-family: var(--font-sans);
  transition: background 0.3s ease;
  white-space: nowrap;
}
.mt-wa-form button:hover {
  background: var(--mt-gold-light);
}

/* ============================================
   MENSAGENS WOOCOMMERCE
   ============================================ */

.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
  background: var(--mt-bg-secondary) !important;
  border-top-color: var(--mt-gold) !important;
  color: var(--mt-gold-light) !important;
}

.woocommerce-message::before,
.woocommerce-info::before {
  color: var(--mt-gold) !important;
}

/* ============================================
   RESPONSIVE
   ============================================ */

@media (max-width: 768px) {
  .mt-hero {
    padding: 40px 20px;
  }

  .mt-hero h1 {
    font-size: 32px !important;
  }

  .mt-benefits {
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
    padding: 20px;
  }

  .site-footer {
    padding: 32px 20px !important;
  }
}

/* ============================================
   SCROLLBAR CUSTOMIZADA
   ============================================ */

::-webkit-scrollbar {
  width: 10px;
}

::-webkit-scrollbar-track {
  background: var(--mt-black-deep);
}

::-webkit-scrollbar-thumb {
  background: var(--mt-gold-dark);
  border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
  background: var(--mt-gold);
}

/* ============================================
   AJUSTES FINOS
   ============================================ */

/* Breadcrumb — mesmo padrão do SKU/Categoria (sans-serif, tamanho normal) */
.woocommerce-breadcrumb {
  font-family: var(--font-sans) !important;
  font-size: 14px !important;
  color: var(--mt-gold-light) !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  padding: 20px 48px;
  border-bottom: 1px solid var(--mt-border);
  line-height: 1.6;
}

.woocommerce-breadcrumb a {
  color: var(--mt-gold) !important;
  font-family: var(--font-sans) !important;
  font-size: 14px !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  text-decoration: none;
}
.woocommerce-breadcrumb a:hover { text-decoration: underline; }

/* Título da página ("Produtos em Destaques") */
.page-title,
.woocommerce-products-header__title {
  font-family: var(--font-display) !important;
  font-size: 36px !important;
  color: var(--mt-gold-light) !important;
  text-align: center;
  padding: 40px 20px 0;
  letter-spacing: 4px;
  margin: 0 !important;
  position: relative;
}

/* Divisor dourado sob o título (igual "Nossas Linhas") */
.page-title::after,
.woocommerce-products-header__title::after {
  content: "";
  display: block;
  width: 60px;
  height: 1px;
  background: var(--mt-gold);
  margin: 16px auto 20px;
}

.woocommerce-products-header {
  padding: 20px 0 0;
}

/* ============================================
   SEÇÕES DE PRODUTOS (Lançamentos / Promoção)
   ============================================ */

.mt-products-section {
  padding: 70px 40px 60px;
  border-bottom: 1px solid var(--mt-border);
}

.mt-section-lancamentos {
  background: var(--mt-black);
}

.mt-section-promocao {
  background: var(--mt-bg-secondary);
  position: relative;
}

.mt-section-promocao::before {
  content: "✦ OFERTA ESPECIAL ✦";
  position: absolute;
  top: 28px;
  left: 50%;
  transform: translateX(-50%);
  font-size: 10px;
  color: var(--mt-gold);
  letter-spacing: 4px;
  font-weight: 500;
}

.mt-section-promocao .mt-section-title {
  margin-top: 20px;
}

.mt-section-sub {
  text-align: center;
  font-size: 13px;
  color: var(--mt-gold-dark);
  letter-spacing: 1.5px;
  margin-top: -30px;
  margin-bottom: 44px;
  font-style: italic;
}

.mt-products-grid-wrapper {
  max-width: 1400px;
  margin: 0 auto;
}

.mt-products-section .woocommerce {
  margin: 0 !important;
}

/* Grid 4 colunas — Lançamentos e Promoção (triple-class specificity) */
html body ul.mt-products-grid.mt-products-grid,
ul.mt-products-grid.mt-products-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 20px !important;
  padding: 0 !important;
  margin: 0 !important;
  list-style: none !important;
  width: 100% !important;
  float: none !important;
}

html body ul.mt-products-grid::before,
html body ul.mt-products-grid::after {
  display: none !important;
  content: none !important;
}

html body ul.mt-products-grid > li.product.product.product,
ul.mt-products-grid > li.product.product {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  clear: none !important;
  box-sizing: border-box !important;
  list-style: none !important;
  display: flex !important;
  flex-direction: column !important;
  text-align: left !important;
}

/* Altura fixa no descritivo (Inspiração Olfativa) — sempre reserva 2 linhas
   Aplica em TODOS os lugares que mostram cards de produto (home, shop, relacionados, upsells) */
ul.mt-products-grid .mt-inspiration,
.mt-shop-wrap .mt-inspiration,
.related ul.products li.product .mt-inspiration,
.upsells ul.products li.product .mt-inspiration,
ul.products li.product .mt-inspiration {
  min-height: 2.8em !important;
  height: 2.8em !important;
  line-height: 1.4 !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  box-sizing: content-box !important;
}

/* "Ofertas para você" (relacionados/upsells no single-product):
   remove a linha "Inspiração Olfativa: X" abaixo das estrelas.
   Especificidade (0,5,2) vence a regra de altura acima (0,4,2).
   Home e loja NÃO são afetadas. */
.single-product .related ul.products li.product .mt-inspiration,
.single-product .upsells ul.products li.product .mt-inspiration,
.single-product .up-sells ul.products li.product .mt-inspiration {
  display: none !important;
  height: 0 !important;
  min-height: 0 !important;
}

/* Como removemos o "Inspiração Olfativa" entre estrelas e preço nos
   relacionados, as estrelas colaram no preço — dá um respiro abaixo delas.
   Especificidade (0,5,4) vence a regra geral margin:6px auto (0,4,4). */
html body.single-product section.related.products li.product .star-rating,
html body.single-product section.up-sells.products li.product .star-rating,
html body.single-product .related ul.products li.product .star-rating,
html body.single-product .upsells ul.products li.product .star-rating {
  margin-bottom: 16px !important;
}

/* Empurra botão "Comprar" para o rodapé do card */
ul.mt-products-grid > li.product .button,
ul.mt-products-grid > li.product a.button {
  margin-top: auto !important;
}

/* Alinhamento bottom dos cards — reserva sempre 3 linhas no título no DESKTOP
   (títulos como "ALPINE HAVEN SPIRIT – inspirado em 'Allure Homme Sport' Chanel"
   ocupam 3 linhas naturalmente em colunas estreitas). */
ul.mt-products-grid .woocommerce-loop-product__title,
ul.mt-products-grid h2.woocommerce-loop-product__title,
ul.mt-products-grid h3.woocommerce-loop-product__title {
  min-height: 3.9em !important; /* 3 linhas × line-height 1.3 */
  height: 3.9em !important;
  line-height: 1.3 !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 3 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  box-sizing: content-box !important;
}
/* Star rating ocupa altura fixa mesmo se ausente (alinha cards sem estrelas) */
ul.mt-products-grid > li.product .star-rating,
ul.mt-products-grid > li.product .woocommerce-product-rating {
  min-height: 22px !important;
}
/* Bloco de preço com altura fixa (alguns têm "A partir de" + 2 linhas, outros não) */
ul.mt-products-grid > li.product .price {
  min-height: 2.2em !important;
  display: flex !important;
  align-items: flex-end !important;
}

/* Título do produto: sans-serif, compacto (não herda o display/Cinzel) */
ul.mt-products-grid .woocommerce-loop-product__title,
ul.mt-products-grid h2.woocommerce-loop-product__title,
ul.mt-products-grid h3.woocommerce-loop-product__title,
.mt-shop-wrap .woocommerce-loop-product__title,
.mt-shop-wrap h2.woocommerce-loop-product__title,
.mt-shop-wrap h3.woocommerce-loop-product__title {
  font-family: var(--font-sans) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  letter-spacing: 0.5px !important;
  text-transform: none !important;
  color: var(--mt-gold-light) !important;
  padding: 16px 18px 4px !important;
  margin: 0 !important;
  text-align: left !important;
  line-height: 1.3 !important;
}

/* No shop loop com 5 colunas, título maior pra dar destaque */
.mt-shop-wrap .woocommerce-loop-product__title,
.mt-shop-wrap h2.woocommerce-loop-product__title {
  font-size: 16px !important;
  padding: 20px 20px 6px !important;
  font-weight: 500 !important;
}

@media (max-width: 900px) {
  ul.mt-products-grid {
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 10px !important;
  }
  /* Mostra apenas 6 cards (3 col × 2 linhas) no mobile — APENAS NA HOME
     (escopado por .mt-products-section pra não afetar /loja/). */
  .mt-products-section ul.mt-products-grid > li.product:nth-child(n+7) {
    display: none !important;
  }
}

/* Mobile pequeno: MANTÉM 2 colunas (era 1 col antes — virava 1×8 longo demais).
   Cards compactos com fonte/padding menores pra caber.
   ALINHAMENTO: cada filho tem altura FIXA (não min) + flex-shrink:0.
   Card ocupa 100% da row do grid (height:100% + align-items:stretch). */
@media (max-width: 768px) {
  ul.mt-products-grid {
    grid-template-columns: repeat(3, 1fr) !important;
    grid-auto-rows: 1fr !important; /* todas linhas mesma altura */
    gap: 10px !important;
    align-items: stretch !important;
  }
  /* Mostra apenas 6 cards (3 col × 2 linhas) no mobile — SÓ NA HOME (escopo .mt-products-section) */
  .mt-products-section ul.mt-products-grid > li.product:nth-child(n+7) {
    display: none !important;
  }
  ul.mt-products-grid > li.product {
    height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
  }
  /* TÍTULO no mobile — 3 linhas pra evitar cortar nomes longos.
     box-sizing: content-box pra padding não comer altura do texto. */
  ul.mt-products-grid > li.product .woocommerce-loop-product__title,
  ul.mt-products-grid > li.product h2.woocommerce-loop-product__title,
  ul.mt-products-grid > li.product h3.woocommerce-loop-product__title {
    height: 4em !important;
    min-height: 4em !important;
    max-height: 4em !important;
    line-height: 1.3 !important;
    box-sizing: content-box !important;
    flex-shrink: 0 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 3 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    word-break: normal !important;
    overflow-wrap: break-word !important;
  }
  /* STAR RATING — altura fixa, mesmo se vazio */
  ul.mt-products-grid > li.product .star-rating,
  ul.mt-products-grid > li.product .woocommerce-product-rating {
    height: 24px !important;
    min-height: 24px !important;
    flex-shrink: 0 !important;
    margin: 4px 0 !important;
  }
  /* INSPIRAÇÃO OLFATIVA — altura fixa pra 2 linhas */
  ul.mt-products-grid > li.product .mt-inspiration {
    height: 2.8em !important;
    min-height: 2.8em !important;
    max-height: 2.8em !important;
    line-height: 1.4 !important;
    flex-shrink: 0 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
  }
  /* PREÇO — altura fixa */
  ul.mt-products-grid > li.product .price {
    height: 1.8em !important;
    min-height: 1.8em !important;
    flex-shrink: 0 !important;
    display: flex !important;
    align-items: flex-end !important;
    margin: 2px 0 !important;
  }
  /* BOTÃO — sempre no fim (margin-top auto empurra) */
  ul.mt-products-grid > li.product .button,
  ul.mt-products-grid > li.product a.button {
    margin-top: auto !important;
    flex-shrink: 0 !important;
  }
}

/* Mobile pequeno (≤480px): fontes/paddings ainda menores (3 cols cabem em ~110px cada).
   IMPORTANTE: padding-y do título = 0 (só lateral) pra altura do texto não ser cortada.
   Espaço entre título e estrelas vem da margin do rating. */
@media (max-width: 480px) {
  ul.mt-products-grid {
    gap: 8px !important;
  }
  ul.mt-products-grid > li.product .woocommerce-loop-product__title,
  ul.mt-products-grid > li.product h2.woocommerce-loop-product__title,
  ul.mt-products-grid > li.product h3.woocommerce-loop-product__title {
    font-size: 11px !important;
    padding: 0 6px !important;       /* zero vertical pra texto não ser cortado */
    margin: 8px 0 0 !important;       /* respiro acima */
    line-height: 1.3 !important;
    height: 3.9em !important;         /* 3 linhas × 1.3 = 3.9em exato */
    max-height: 3.9em !important;
    min-height: 3.9em !important;
    box-sizing: content-box !important;
  }
  ul.mt-products-grid > li.product .price {
    font-size: 13px !important;
    padding: 0 6px !important;
  }
  ul.mt-products-grid > li.product .mt-inspiration {
    font-size: 9px !important;
    padding: 0 6px !important;
    line-height: 1.3 !important;
    height: 2.6em !important;
    max-height: 2.6em !important;
    min-height: 2.6em !important;
    box-sizing: content-box !important;
  }
  ul.mt-products-grid > li.product .button,
  ul.mt-products-grid > li.product a.button {
    font-size: 9px !important;
    padding: 8px 4px !important;
    letter-spacing: 1px !important;
  }
  ul.mt-products-grid > li.product .star-rating {
    font-size: 10px !important;
    padding: 0 6px !important;
    margin: 6px 0 4px !important;
  }
}

/* Thumb */
.mt-product-card .mt-product-thumb {
  display: block;
  position: relative;
  background: radial-gradient(ellipse at center, #2A1015 0%, var(--mt-black) 80%);
  aspect-ratio: 1 / 1;
  overflow: hidden;
}

.mt-product-card .mt-product-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.5s ease;
}

.mt-product-card:hover .mt-product-thumb img {
  transform: scale(1.05);
}

/* Título */
.mt-product-card h3,
.mt-product-card .woocommerce-loop-product__title {
  font-family: var(--font-sans) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  color: var(--mt-gold-light) !important;
  padding: 16px 18px 4px !important;
  margin: 0 !important;
  text-align: left;
  letter-spacing: 0.5px;
}

.mt-product-card h3 a {
  color: var(--mt-gold-light) !important;
  text-decoration: none !important;
}

.mt-product-card h3 a:hover {
  color: var(--mt-gold) !important;
}

/* Preço */
.mt-product-card .price {
  font-family: var(--font-serif) !important;
  font-size: 20px !important;
  color: var(--mt-gold) !important;
  padding: 0 18px 12px !important;
  display: block;
  margin: auto 0 0 0;
}

/* Botão "Comprar" — cards de produto (home, shop, category, related, up-sells)
   PADRÃO ÚNICO: padding 12px 18px, ~43px de altura, pra todos os contextos */
.mt-product-card .button,
.mt-product-card a.button,
.mt-product-card .add_to_cart_button,
html body ul.products li.product a.button,
html body ul.products li.product button.button,
html body ul.products li.product .add_to_cart_button,
html body ul.mt-products-grid li.product a.button,
html body ul.mt-products-grid li.product button.button,
html body ul.mt-products-grid li.product .add_to_cart_button,
html body .mt-shop-wrap ul.products li.product a.button,
html body .mt-shop-wrap ul.products li.product .add_to_cart_button,
html body .mt-shop-main ul.products li.product a.button,
html body .mt-shop-main ul.products li.product .add_to_cart_button,
html body section.related.products li.product a.button,
html body section.related.products li.product .add_to_cart_button,
html body section.up-sells.products li.product a.button,
html body section.up-sells.products li.product .add_to_cart_button {
  background: var(--mt-bordo, #6B1F2E) !important;
  color: var(--mt-gold-light, #E8D9B0) !important;
  border: none !important;
  border-radius: 0 !important;
  font-family: var(--font-sans, 'Inter', sans-serif) !important;
  font-size: 11px !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  padding: 12px 18px !important;
  min-height: 0 !important;
  height: auto !important;
  font-weight: 600 !important;
  text-align: center !important;
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  text-decoration: none !important;
  box-shadow: none !important;
  transition: background 0.3s ease !important;
  box-sizing: border-box !important;
}

.mt-product-card .button:hover,
html body ul.mt-products-grid li.product a.button:hover,
html body .mt-shop-wrap ul.products li.product a.button:hover,
html body section.related.products li.product a.button:hover,
html body section.up-sells.products li.product a.button:hover {
  background: var(--mt-bordo-dark, #4A1520) !important;
}

/* Badge "Oferta" */
.mt-product-card .onsale {
  position: absolute !important;
  top: 12px !important;
  left: 12px !important;
  background: var(--mt-bordo) !important;
  color: var(--mt-gold-light) !important;
  font-size: 10px !important;
  font-weight: 600 !important;
  padding: 5px 10px !important;
  letter-spacing: 1px !important;
  border-radius: 2px !important;
  z-index: 2;
  min-height: auto !important;
  line-height: 1 !important;
}

/* (media queries dos cards ficam na regra ul.mt-custom-products acima) */

/* Esconder filtros de ordenação e contador (fallback CSS) */
.woocommerce-ordering,
.woocommerce-result-count,
form.woocommerce-ordering,
p.woocommerce-result-count {
  display: none !important;
}

/* Esconder crédito padrão do Storefront ("Built with WooCommerce")
   Mantém apenas o meu .mt-footer-bottom personalizado */
.site-info:not(.mt-footer-bottom),
.site-info > .imprint,
.site-info a[href*="woocommerce.com"],
.site-info a[href*="storefront"] {
  display: none !important;
}

/* ============================================
   SHOP LOOP ("Produtos em Destaques")
   Grid 6 colunas (fixo, sem carrossel) — template nativo do Woo
   ============================================ */

.mt-shop-wrap {
  max-width: 1400px;
  margin: 0 auto;
  padding: 30px 32px 50px;
}

/* Shop loop: 4 colunas — triple-class specificity (beats any Storefront rule)
   Storefront usa float+width em ul.products.columns-4, nosso grid força sobre isso */
html body .mt-shop-wrap ul.products.products.products,
html body .mt-shop-wrap ul.products.columns-3.products,
html body .mt-shop-wrap ul.products.columns-4.columns-4,
.mt-shop-wrap ul.products.products.products {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 20px !important;
  padding: 0 !important;
  margin: 0 !important;
  list-style: none !important;
  width: 100% !important;
  float: none !important;
}

/* Zerar o clearfix do Storefront (ul.products::before/after) */
html body .mt-shop-wrap ul.products::before,
html body .mt-shop-wrap ul.products::after {
  display: none !important;
  content: none !important;
}

/* LI cards: zera todo float/width do Storefront */
html body .mt-shop-wrap ul.products > li.product.product.product,
.mt-shop-wrap ul.products > li.product.product {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  clear: none !important;
  box-sizing: border-box !important;
  display: flex !important;
  flex-direction: column !important;
  text-align: left !important;
}

/* Cards idênticos aos de Lançamentos/Promoção */
.mt-shop-wrap ul.products li.product .woocommerce-loop-product__title {
  font-size: 14px !important;
  padding: 16px 18px 4px !important;
}
.mt-shop-wrap ul.products li.product .price {
  font-size: 20px !important;
  padding: 0 18px 12px !important;
}
.mt-shop-wrap ul.products li.product .mt-inspiration {
  font-size: 11px !important;
  padding: 0 18px 10px !important;
  min-height: 2.8em !important;
  line-height: 1.4 !important;
}
.mt-shop-wrap ul.products li.product .button {
  font-size: 11px !important;
  padding: 12px 18px !important;
  letter-spacing: 2px !important;
  margin-top: auto !important;
}

/* ============================================
   Paginação Client-Side do Shop Loop ("Produtos em Destaques")
   Alterna páginas via JS sem reload
   ============================================ */

/* Classe pra esconder produtos nas "páginas" inativas
   Especificidade ALTA (triple .product) pra vencer display:flex !important */
html body ul.mt-products-grid > li.product.product.product.mt-hidden,
ul.mt-products-grid > li.product.product.mt-hidden,
ul.mt-products-grid > li.mt-hidden {
  display: none !important;
}

.mt-shop-pag {
  text-align: center;
  padding: 28px 0 40px;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
}

.mt-shop-pag-btn {
  background: var(--mt-bg-secondary);
  color: var(--mt-gold-light);
  border: 1px solid var(--mt-border);
  padding: 10px 16px;
  border-radius: 2px;
  font-size: 12px;
  letter-spacing: 1px;
  font-weight: 500;
  transition: all 0.3s ease;
  min-width: 40px;
  text-align: center;
  cursor: pointer;
  font-family: var(--font-sans);
}

.mt-shop-pag-btn:hover:not(:disabled):not(.active) {
  background: var(--mt-bordo);
  color: var(--mt-gold-light);
  border-color: var(--mt-bordo);
}

.mt-shop-pag-btn.active {
  background: var(--mt-gold);
  color: var(--mt-black);
  border-color: var(--mt-gold);
  cursor: default;
}

.mt-shop-pag-btn:disabled {
  opacity: 0.35;
  cursor: not-allowed;
}

.mt-shop-pag-nav {
  font-size: 18px;
  padding: 6px 14px;
  font-weight: 700;
  line-height: 1;
}

/* Esconde também qualquer paginação nativa que escape */
.woocommerce nav.woocommerce-pagination {
  display: none !important;
}

@media (max-width: 900px) {
  html body .mt-shop-wrap ul.products,
  html body .mt-shop-wrap ul.products.columns-3,
  html body .mt-shop-wrap ul.products.columns-4 {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}

@media (max-width: 480px) {
  html body .mt-shop-wrap ul.products,
  html body .mt-shop-wrap ul.products.columns-3,
  html body .mt-shop-wrap ul.products.columns-4 {
    grid-template-columns: 1fr !important;
  }
  .mt-shop-wrap { padding: 20px 12px 30px; }
}

.mt-section-cta {
  text-align: center;
  margin-top: 44px;
}

@media (max-width: 768px) {
  .mt-products-section {
    padding: 40px 16px 36px;
  }
  .mt-products-section .woocommerce ul.products {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 12px !important;
  }
}

/* ============================================
   BANNERS DE CATEGORIA (3 colunas)
   ============================================ */

.mt-cat-banners {
  background: var(--mt-bg-secondary);
  padding: 70px 48px;
  border-top: 1px solid var(--mt-border);
  border-bottom: 1px solid var(--mt-border);
}

.mt-section-title {
  font-family: var(--font-display) !important;
  font-size: 28px !important;
  color: var(--mt-gold-light) !important;
  text-align: center;
  letter-spacing: 6px;
  margin-bottom: 50px;
  font-weight: 400 !important;
  position: relative;
}

.mt-section-title::after {
  content: "";
  display: block;
  width: 60px;
  height: 1px;
  background: var(--mt-gold);
  margin: 16px auto 0;
}

.mt-cat-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
  max-width: 1280px;
  margin: 0 auto;
}

.mt-cat-card {
  display: block;
  position: relative;
  min-height: 320px;
  background: linear-gradient(135deg, #1A0A10 0%, #2A1015 100%);
  background-size: cover !important;
  background-position: center !important;
  border: 1px solid var(--mt-border);
  border-radius: 4px;
  overflow: hidden;
  text-decoration: none !important;
  transition: all 0.4s ease;
}

.mt-cat-card:hover {
  border-color: var(--mt-gold);
  transform: translateY(-6px);
  box-shadow: 0 20px 40px rgba(0,0,0,0.5);
}

.mt-cat-card-content {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  padding: 40px 24px;
}

.mt-cat-card-tag {
  color: var(--mt-gold);
  font-size: 18px;
  margin-bottom: 16px;
  letter-spacing: 4px;
}

.mt-cat-card h3 {
  font-family: var(--font-display) !important;
  font-size: 26px !important;
  color: var(--mt-gold-light) !important;
  letter-spacing: 5px;
  margin: 0 0 12px !important;
  font-weight: 500 !important;
}

.mt-cat-card p {
  font-size: 12px;
  color: var(--mt-gold-light);
  letter-spacing: 1px;
  opacity: 0.8;
  margin: 0 0 24px;
}

.mt-cat-card-link {
  display: inline-block;
  font-size: 11px;
  color: var(--mt-gold);
  letter-spacing: 3px;
  padding: 10px 18px;
  border: 1px solid var(--mt-gold);
  transition: all 0.3s ease;
}

.mt-cat-card:hover .mt-cat-card-link {
  background: var(--mt-gold);
  color: var(--mt-black);
}

@media (max-width: 768px) {
  .mt-cat-banners { padding: 40px 16px; }
  .mt-cat-grid { grid-template-columns: 1fr; gap: 16px; }
  .mt-cat-card { min-height: 240px; }
}

/* ============================================
   BADGES DE PRODUTO (NOVO / OFERTA)
   ============================================ */

.woocommerce ul.products li.product { position: relative; }

.mt-badge {
  position: absolute;
  top: 12px;
  right: 12px;
  background: var(--mt-gold);
  color: var(--mt-black);
  font-size: 9px;
  font-weight: 700;
  padding: 5px 10px;
  letter-spacing: 2px;
  border-radius: 2px;
  z-index: 3;
}

.mt-badge-novo {
  background: var(--mt-gold);
  color: var(--mt-black);
}

/* WhatsApp flutuante removido — classe mantida como display:none pra segurança */
.mt-whatsapp { display: none !important; }

/* Handheld footer bar do Storefront REMOVIDO */
.storefront-handheld-footer-bar { display: none !important; }

/* ============================================
   BOTTOM BAR MOBILE (estilo app) — só <= 768px
   [🏠 Início] [📦 Loja] [🔍 Busca] [👤 Conta] [🛒 Carrinho]
   ============================================ */
.mt-mobile-bar {
  display: none; /* oculto por default — mostrado só em mobile via media query */
}

@media (max-width: 768px) {
  html body .mt-mobile-bar {
    display: flex !important;
    position: fixed !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    background: var(--mt-black-deep);
    border-top: 1px solid var(--mt-gold-dark);
    z-index: 9998;
    justify-content: space-around;
    align-items: stretch;
    padding: 4px 0 max(4px, env(safe-area-inset-bottom, 4px));
    box-shadow: 0 -4px 20px rgba(0,0,0,0.6);
    margin: 0;
    gap: 0;
  }

  html body .mt-mobile-bar .mt-mbar-item {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 3px !important;
    padding: 6px 4px !important;
    color: var(--mt-gold-light) !important;
    text-decoration: none !important;
    font-size: 10px !important;
    letter-spacing: 0.3px !important;
    line-height: 1.1 !important;
    flex: 1 1 0 !important;
    min-height: 52px !important;
    background: transparent !important;
    border: 0 !important;
    outline: none !important;
    cursor: pointer !important;
    font-family: var(--font-sans) !important;
    position: relative !important;
    transition: color 0.2s ease !important;
    -webkit-tap-highlight-color: transparent !important;
  }

  html body .mt-mobile-bar .mt-mbar-item svg {
    stroke: currentColor !important;
    stroke-width: 1.8 !important;
    width: 24px !important;
    height: 24px !important;
    display: block !important;
    margin-bottom: 0 !important;
  }

  html body .mt-mobile-bar .mt-mbar-item span:not(.mt-cart-count) {
    color: var(--mt-gold-light) !important;
    font-size: 10px !important;
    display: block !important;
    font-weight: 400 !important;
    letter-spacing: 0.3px !important;
    text-transform: none !important;
  }

  html body .mt-mobile-bar .mt-mbar-item:hover,
  html body .mt-mobile-bar .mt-mbar-item:focus,
  html body .mt-mobile-bar .mt-mbar-item:active {
    color: var(--mt-gold) !important;
    outline: none !important;
    background: transparent !important;
  }

  /* Badge do carrinho */
  html body .mt-mobile-bar .mt-mbar-cart .mt-cart-count {
    position: absolute !important;
    top: 4px !important;
    right: 14% !important;
    min-width: 16px !important;
    height: 16px !important;
    padding: 0 3px !important;
    background: var(--mt-bordo) !important;
    color: var(--mt-gold-light) !important;
    border-radius: 8px !important;
    font-size: 9px !important;
    font-weight: 700 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    line-height: 1 !important;
    letter-spacing: 0 !important;
  }

}

/* ============================================
   FOOTER EXPANDIDO (4 colunas)
   ============================================ */

.mt-footer-cols {
  display: grid;
  grid-template-columns: 1.6fr 1fr 1fr;
  gap: 36px;
  max-width: 1180px;
  margin: 0 auto;
  padding-bottom: 36px;
}

.mt-footer-col h4 {
  font-family: var(--font-sans) !important;
  color: var(--mt-gold) !important;
  font-size: 11px !important;
  letter-spacing: 3px !important;
  text-transform: uppercase;
  font-weight: 600 !important;
  margin: 0 0 18px !important;
  padding-bottom: 12px;
  border-bottom: 1px solid var(--mt-border);
}

.mt-footer-col p,
.mt-footer-col li {
  color: var(--mt-gold-dark);
  font-size: 12px;
  line-height: 1.8;
  letter-spacing: 0.5px;
}

.mt-footer-col ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.mt-footer-col ul li {
  margin-bottom: 8px;
}

.mt-footer-col a {
  color: var(--mt-gold-dark) !important;
  text-decoration: none !important;
  transition: color 0.3s ease;
}

.mt-footer-col a:hover {
  color: var(--mt-gold) !important;
}

.mt-footer-about {
  font-style: italic;
  margin-bottom: 20px;
}

.mt-social {
  display: flex;
  gap: 14px;
  margin-top: 16px;
  margin-bottom: 14px;
  align-items: center;
}

/* Ícones sociais: SEM borda/círculo — só o SVG */
.mt-social a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 0 !important;
  background: transparent !important;
  border-radius: 0 !important;
  width: auto !important;
  height: auto !important;
  padding: 4px !important;
  color: var(--mt-gold-dark) !important;
  transition: color 0.3s ease;
}

.mt-social a svg {
  display: block;
  width: 22px;
  height: 22px;
}

.mt-social a:hover {
  color: var(--mt-gold) !important;
  background: transparent !important;
}

/* (email no rodapé agora só existe no bloco ATENDIMENTO) */

.mt-pagamentos {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.mt-pagamentos span {
  display: inline-block;
  padding: 6px 10px;
  border: 1px solid var(--mt-gold-dark);
  font-size: 9px;
  color: var(--mt-gold);
  letter-spacing: 1px;
  border-radius: 2px;
  font-weight: 500;
}

.mt-footer-seguranca {
  font-size: 11px !important;
  line-height: 1.6 !important;
}

.mt-footer-bottom {
  display: flex !important;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 12px;
  border-top: 1px solid var(--mt-border) !important;
  padding-top: 24px !important;
  margin-top: 0 !important;
  font-size: 11px !important;
  color: var(--mt-gold-dark) !important;
  max-width: 1280px;
  margin-left: auto !important;
  margin-right: auto !important;
}

.mt-footer-bottom a {
  color: var(--mt-gold) !important;
}

@media (max-width: 768px) {
  .mt-footer-cols {
    grid-template-columns: 1fr;
    gap: 32px;
  }
  .mt-footer-bottom {
    flex-direction: column;
    text-align: center;
  }
  .mt-hero {
    padding: 60px 20px 70px;
  }
  .mt-hero h1 {
    font-size: 32px !important;
  }
  .mt-hero-cta {
    flex-direction: column;
  }
  .mt-btn {
    width: 100%;
  }
}

/* ================================================================
   📱 MOBILE OPTIMIZATION — responsividade completa
   Prioriza UX mobile: touch targets >= 44px, fontes legíveis,
   layouts 1-col, inputs evitam zoom iOS, textos não quebram
   ================================================================ */

/* ===== TABLET (<= 992px) — ajustes gerais ===== */
@media (max-width: 992px) {
  html body .mt-shop-wrap ul.products,
  html body .mt-shop-wrap ul.products.columns-3,
  html body .mt-shop-wrap ul.products.columns-4 {
    grid-template-columns: repeat(3, 1fr) !important;
  }
}

/* ===== MOBILE GRANDE (<= 768px) ===== */
@media (max-width: 768px) {
  /* ---- Tipografia base ---- */
  body { font-size: 15px; line-height: 1.6; }

  /* ---- Topbar rotativa ---- */
  .mt-top-bar-wrap { height: auto; padding: 8px 12px; border-bottom: 1px solid var(--mt-border); }
  .mt-top-bar-rotating { height: auto; min-height: 28px; }
  .mt-top-msg { font-size: 10px !important; letter-spacing: 1.5px; padding: 0 18px; line-height: 1.3; }

  /* ---- Header 3-col ---- */
  .mt-header-3col { padding: 10px 14px !important; gap: 10px !important; }
  .mt-header-3col .site-branding .custom-logo { max-height: 44px !important; }
  .mt-header-utils { gap: 8px !important; }
  .mt-util { padding: 6px !important; min-width: 44px !important; min-height: 44px !important; }
  .mt-util svg { width: 22px; height: 22px; }
  .mt-cart-count { font-size: 9px !important; width: 16px !important; height: 16px !important; top: -2px !important; right: 2px !important; }
  .mt-search-form { height: 42px; }
  .mt-search-form input[type="search"] { font-size: 14px !important; padding: 0 14px; }
  .mt-search-form button { padding: 0 14px !important; min-width: 44px; }

  /* ---- Hamburger: mesma cor dos outros ícones (var do Customizer mt_header_text) ---- */
  .mt-hamburger {
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    background: transparent !important;
    border: 0 !important;
    padding: 0 !important;
    margin: 0;
    cursor: pointer;
    outline: none;
    flex-shrink: 0;
    z-index: 2;
    color: var(--mt-gold-light);
    -webkit-tap-highlight-color: transparent;
    -webkit-appearance: none;
    appearance: none;
  }
  .mt-hamburger svg {
    stroke: currentColor;
    stroke-width: 1.8;
    width: 26px;
    height: 26px;
  }
  /* REMOVE hover em mobile (mobile não tem mouse, hover fica "grudado" após tap) */
  .mt-hamburger:hover,
  .mt-hamburger:focus,
  .mt-hamburger:active,
  .mt-header-utils .mt-util:hover,
  .mt-header-utils .mt-util:focus,
  .mt-header-utils .mt-util:active {
    background: transparent !important;
    border: 0 !important;
    outline: none !important;
    box-shadow: none !important;
    color: var(--mt-gold-light) !important;
  }
  /* Unifica cor dos SVG dos 3 ícones (Menu, Busca, Carrinho) */
  .mt-hamburger svg,
  .mt-header-utils .mt-util svg {
    stroke: var(--mt-gold-light) !important;
    color: var(--mt-gold-light) !important;
  }
  /* Quando menu aberto: vira X (rotaciona as 3 linhas ou troca por SVG X) */
  body.mt-menu-open .mt-hamburger svg line:nth-child(1) {
    transform: translateY(5px) rotate(45deg);
    transform-origin: center;
  }
  body.mt-menu-open .mt-hamburger svg line:nth-child(2) {
    opacity: 0;
  }
  body.mt-menu-open .mt-hamburger svg line:nth-child(3) {
    transform: translateY(-5px) rotate(-45deg);
    transform-origin: center;
  }
  .mt-hamburger svg line {
    transition: transform 0.25s ease, opacity 0.15s ease;
    transform-origin: center;
  }
  .mt-header-3col > button.menu-toggle span { display: none !important; }
  /* Anula os pseudo-elementos do Storefront (as 3 linhas antigas) pra não sobrepor */
  .mt-header-3col > button.menu-toggle::after,
  .mt-header-3col > button.menu-toggle span::before,
  .mt-header-3col > button.menu-toggle span::after {
    content: none !important;
    display: none !important;
    background: transparent !important;
  }
  /* Ícone hambúrguer */
  .mt-header-3col > button.menu-toggle::before {
    content: "☰" !important;
    display: inline-block !important;
    font-size: 26px !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1 !important;
    color: var(--mt-gold) !important;
    position: static !important;
    top: auto !important;
    left: auto !important;
    width: auto !important;
    height: auto !important;
    border-radius: 0 !important;
    transform: none !important;
  }
  /* Quando menu aberto vira X */
  .main-navigation.toggled .mt-header-3col > button.menu-toggle::before,
  body.nav-open .mt-header-3col > button.menu-toggle::before,
  .mt-header-3col > button.menu-toggle[aria-expanded="true"]::before {
    content: "✕" !important;
  }

  /* ═══════════════════════════════════════════════════════════════
     Header mobile — grid 1fr auto 1fr (logo centralizado mat.)
     ALTURA FIXA (independente do conteúdo: logo ou input de busca)
     ═══════════════════════════════════════════════════════════════ */
  html body .mt-header-3col {
    display: grid !important;
    grid-template-columns: 1fr auto 1fr !important;
    align-items: center !important;
    padding: 8px 10px !important;
    gap: 8px !important;
    height: 60px !important;
    min-height: 60px !important;
    max-height: 60px !important;
    position: relative !important;
    box-sizing: border-box;
  }

  /* COLUNA 1: Hamburger — alinhado à esquerda */
  html body .mt-header-3col > .mt-hamburger {
    grid-column: 1 !important;
    grid-row: 1 !important;
    justify-self: start !important;
  }

  /* COLUNA 2: Logo — naturalmente no centro pois outer columns são iguais */
  html body .mt-header-3col > .site-branding {
    grid-column: 2 !important;
    grid-row: 1 !important;
    justify-self: center !important;
    margin: 0 !important;
    padding: 0 !important;
    width: auto !important;
    position: static !important;
    transform: none !important;
    left: auto !important;
    top: auto !important;
  }
  html body .mt-header-3col > .site-branding .custom-logo {
    max-height: 44px !important;
    height: 44px !important;
    width: auto !important;
    display: block;
    object-fit: contain;
  }
  html body .mt-header-3col > .site-branding .custom-logo-link,
  html body .mt-header-3col > .site-branding .site-title {
    display: block;
    margin: 0 !important;
    text-align: center;
  }

  /* COLUNA 3: Utilities (busca + carrinho) — alinhado à direita */
  html body .mt-header-3col > .mt-header-utils {
    grid-column: 3 !important;
    grid-row: 1 !important;
    justify-self: end !important;
    margin-left: 0 !important;
  }

  /* Tagline ESCONDIDA em mobile (só desktop) */
  html body .mt-header-center .mt-tagline {
    display: none !important;
  }
  html body .mt-header-center {
    display: none !important;
  }

  /* Quando busca aberta: ESCONDE logo, mostra input NO LUGAR do logo (mesma linha) */
  html body.mt-search-open .mt-header-3col > .site-branding {
    display: none !important;
  }
  html body.mt-search-open .mt-header-center {
    display: block !important;
    grid-column: 2 !important;
    grid-row: 1 !important;
    justify-self: stretch !important;
    width: 100% !important;
    min-width: 0;
  }
  /* Input da busca inline no header — substitui posição absolute */
  html body.mt-search-open .mt-header-3col .mt-search-overlay {
    position: static !important;
    transform: none !important;
    width: 100% !important;
    max-width: 100% !important;
    left: auto !important;
    top: auto !important;
    margin: 0 !important;
    background: transparent !important;
    border: 1px solid var(--mt-gold-dark) !important;
    border-radius: 4px !important;
    padding: 0 !important;
    box-shadow: none !important;
    display: flex !important;
    align-items: center !important;
    opacity: 1 !important;
    height: 40px !important;
  }
  /* Input com texto vertical-centralizado (line-height = altura) */
  html body.mt-search-open .mt-header-3col .mt-search-overlay input[type="search"] {
    color: var(--mt-gold-light) !important;
    font-size: 16px !important;
    padding: 0 14px !important;
    height: 100% !important;
    line-height: 1 !important;
    min-width: 0;
    background: transparent !important;
    border: 0 !important;
    outline: none !important;
    width: 100% !important;
    box-sizing: border-box;
    display: flex;
    align-items: center;
  }
  html body.mt-search-open .mt-header-3col .mt-search-overlay input::placeholder {
    color: var(--mt-gold-dark);
  }
  /* ESCONDE o botão submit (teclado mobile já tem "Enter/Buscar") */
  html body.mt-search-open .mt-header-3col .mt-search-overlay .mt-search-submit {
    display: none !important;
  }
  /* Botão X limpa o input */
  html body.mt-search-open .mt-header-3col .mt-search-overlay .mt-search-clear {
    background: transparent !important;
    border: 0 !important;
    padding: 0 10px !important;
    color: var(--mt-gold-dark) !important;
    cursor: pointer;
    display: flex !important;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    outline: none;
  }
  html body.mt-search-open .mt-header-3col .mt-search-overlay .mt-search-clear svg {
    stroke: currentColor !important;
    display: block;
  }
  html body.mt-search-open .mt-header-3col .mt-search-overlay .mt-search-clear:hover {
    color: var(--mt-gold) !important;
  }

  /* UTILITIES direita — em mobile só mostra BUSCA + CARRINHO (conta foi pro drawer) */
  html body .mt-header-utils {
    margin-left: auto !important;
    gap: 2px !important;
    display: flex;
    align-items: center;
    flex-shrink: 0;
    z-index: 2;
  }
  /* Esconde o ícone Minha Conta no header mobile (agora fica no drawer) */
  html body .mt-header-utils a.mt-util[aria-label="Minha Conta"] {
    display: none !important;
  }

  /* Ícones utilities MAIORES */
  html body .mt-header-utils .mt-util {
    min-width: 44px !important;
    min-height: 44px !important;
    padding: 6px !important;
    background: transparent !important;
    border: 0 !important;
    cursor: pointer;
  }
  html body .mt-header-utils .mt-util svg {
    width: 26px !important;
    height: 26px !important;
  }
  html body .mt-header-utils .mt-util span {
    display: none !important;
  }
  html body .mt-cart-count {
    top: 2px !important;
    right: 2px !important;
    width: 18px !important;
    height: 18px !important;
    font-size: 10px !important;
  }

  /* Search escondida por default em mobile, aparece quando body.mt-search-open */
  html body .mt-header-search {
    display: none !important;
  }
  html body.mt-search-open .mt-header-search {
    display: block !important;
    grid-column: 1 / -1 !important;
    grid-row: 2 !important;
    margin-top: 10px;
    animation: mtSearchSlide 0.2s ease-out;
  }
  @keyframes mtSearchSlide {
    from { opacity: 0; transform: translateY(-8px); }
    to { opacity: 1; transform: translateY(0); }
  }

  /* ---- Drawer mobile: MOSTRAR SÓ os sub-itens de Produtos ---- */
  /* Esconde TODOS os itens principais do menu em mobile drawer */
  html body .main-navigation.toggled ul.menu > li {
    display: none !important;
  }

  /* Mostra APENAS o item "Produtos" (que tem filhos) */
  html body .main-navigation.toggled ul.menu > li.menu-item-has-children {
    display: block !important;
    order: 0 !important;
    flex: 1 1 100% !important;
    width: 100% !important;
    border-top: 0 !important;
  }

  /* Esconde o link "Produtos" (parent) — mostra só os 4 filhos */
  html body .main-navigation.toggled ul.menu > li.menu-item-has-children > a {
    display: none !important;
  }

  /* Sub-menu (LOJA, Femininos, Masculinos, Compartilháveis, Lançamentos, MINHA CONTA) */
  html body .main-navigation.toggled ul.menu ul.sub-menu {
    background: transparent !important;
    padding: 0 !important;
  }
  html body .main-navigation.toggled ul.menu ul.sub-menu li {
    border-top: 1px solid var(--mt-border);
  }
  html body .main-navigation.toggled ul.menu ul.sub-menu li:first-child {
    border-top: 0 !important;
  }
  html body .main-navigation.toggled ul.menu ul.sub-menu li a {
    padding: 18px 24px !important;
    font-size: 14px !important;
    letter-spacing: 2px !important;
    min-height: 48px;
    display: flex !important;
    align-items: center;
    text-transform: uppercase;
    color: var(--mt-gold-light) !important;
  }

  /* Destaque visual pra HOME + LOJA (topo) e MINHA CONTA (base) — itens extras em dourado forte */
  html body .main-navigation.toggled ul.menu ul.sub-menu li.mt-drawer-home {
    border-top: 0 !important;
  }
  html body .main-navigation.toggled ul.menu ul.sub-menu li.mt-drawer-home a,
  html body .main-navigation.toggled ul.menu ul.sub-menu li.mt-drawer-loja a,
  html body .main-navigation.toggled ul.menu ul.sub-menu li.mt-drawer-conta a {
    color: var(--mt-gold) !important;
    font-weight: 600 !important;
  }
  /* Separador após LOJA (antes de Femininos) */
  html body .main-navigation.toggled ul.menu ul.sub-menu li.mt-drawer-loja {
    border-top: 1px solid var(--mt-border) !important;
    border-bottom: 2px solid var(--mt-gold-dark) !important;
  }
  /* Separador antes de MINHA CONTA */
  html body .main-navigation.toggled ul.menu ul.sub-menu li.mt-drawer-conta {
    border-top: 2px solid var(--mt-gold-dark) !important;
  }

  /* Elimina o ::after truque de line-break em mobile */
  html body .main-navigation.toggled ul.menu::after,
  html body .main-navigation.toggled .primary-navigation > ul::after {
    display: none !important;
    content: none !important;
  }

  /* ---- Hero carrossel (mobile) ---- */
  .mt-hero-carousel { height: clamp(380px, 72vh, 520px); }
  .mt-hero-carousel .swiper-slide {
    padding: 0 !important;
    justify-content: center !important;
    background-blend-mode: normal !important;
  }
  /* Overlay escuro do mobile REMOVIDO — não há mais texto sobreposto, era do layout antigo */
  .mt-hero-carousel .swiper-slide::before {
    content: none !important;
    display: none !important;
    background: transparent !important;
  }
  .mt-slide-inner {
    text-align: center !important;
    max-width: 100% !important;
    padding: 0 10px;
    position: relative;
    z-index: 2;
  }
  .mt-slide-tag {
    font-size: 10px !important;
    letter-spacing: 4px !important;
    margin-bottom: 14px !important;
    text-shadow: 0 1px 4px rgba(0,0,0,0.5);
  }
  .mt-slide-title {
    font-size: 32px !important;
    line-height: 1.1 !important;
    margin-bottom: 12px !important;
    letter-spacing: 0 !important;
    text-shadow: 0 2px 8px rgba(0,0,0,0.6);
  }
  .mt-slide-sub {
    font-size: 13px !important;
    letter-spacing: 1px !important;
    margin: 0 auto 22px !important;
    max-width: 100% !important;
    line-height: 1.5;
    text-shadow: 0 1px 4px rgba(0,0,0,0.6);
  }
  .mt-hero-carousel .swiper-pagination { bottom: 14px !important; }
  .mt-hero-carousel .swiper-pagination-bullet { width: 7px !important; height: 7px !important; margin: 0 3px !important; }
  .mt-hero-carousel .swiper-pagination-bullet-active { width: 22px !important; }

  /* ---- Botões genéricos ---- */
  .mt-btn { padding: 14px 28px; font-size: 12px; min-height: 48px; display: inline-flex; align-items: center; justify-content: center; }
  .mt-btn-gold, .mt-btn-outline { width: auto; max-width: 280px; }

  /* ---- Faixa benefícios: 4 colunas compactas, só ícone + nome ---- */
  html body .mt-beneficios-bar { padding: 22px 8px !important; }
  html body .mt-beneficios-inner { grid-template-columns: repeat(4, 1fr) !important; gap: 4px !important; }
  html body .mt-beneficio-item {
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
    gap: 8px !important;
  }
  html body .mt-beneficio-icon {
    width: 46px !important;
    height: 46px !important;
    min-width: 46px !important;
    border-width: 1.5px !important;
    display: flex !important;
    align-items: center;
    justify-content: center;
  }
  html body .mt-beneficio-icon svg {
    width: 20px !important;
    height: 20px !important;
    display: block !important;
  }
  html body .mt-beneficio-text { width: 100%; }
  /* Nome: h4 visível bold preto */
  html body .mt-beneficios-bar .mt-beneficio-text h4 {
    font-size: 11px !important;
    margin: 0 0 2px !important;
    letter-spacing: 0 !important;
    line-height: 1.15 !important;
    font-weight: 700 !important;
    color: #1A1A1A !important;
    display: block !important;
  }
  /* Esconde descrição longa, mostra curta */
  html body .mt-beneficios-bar .mt-beneficio-text .mt-benef-full {
    display: none !important;
  }
  html body .mt-beneficios-bar .mt-beneficio-text .mt-benef-short {
    display: block !important;
    font-size: 9px !important;
    color: #555 !important;
    line-height: 1.25 !important;
    margin: 0 !important;
    font-weight: 400 !important;
  }

  /* ---- Seções de produtos (Lançamentos / Promoção) ---- */
  .mt-products-section { padding: 40px 0 30px !important; }
  .mt-section-title { font-size: 22px !important; letter-spacing: 3px !important; margin-bottom: 8px !important; padding-top: 0 !important; }
  .mt-section-title::after { margin: 12px auto 0 !important; }
  .mt-section-sub { font-size: 11px !important; margin: -8px auto 22px !important; padding: 0 20px; }

  /* CARROSSEL scroll-snap antigo REMOVIDO — usamos grid 3×2 com nth-child hide.
     Mantemos só o reset pra garantir que NÃO vire flex/scroll-snap por outras regras. */
  html body ul.mt-products-grid.mt-products-grid {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    overflow-x: visible !important;
    overflow-y: visible !important;
    scroll-snap-type: none !important;
    padding: 0 !important;
    gap: 10px !important;
  }
  html body ul.mt-products-grid.mt-products-grid > li.product.product {
    flex: initial !important;
    min-width: 0 !important;
    max-width: 100% !important;
    width: auto !important;
    scroll-snap-align: none !important;
  }
  /* Esconde 7º+ no mobile — SÓ NA HOME (escopo .mt-products-section, NÃO afeta /loja/) */
  html body .mt-products-section ul.mt-products-grid.mt-products-grid > li.product.product:nth-child(n+7) {
    display: none !important;
  }

  /* TÍTULO mobile — regra ÚNICA com specificity MAX, vence todas conflitantes.
     box-sizing: border-box pra altura total previsível.
     line-clamp:3 + display:-webkit-box + overflow:hidden = corta no fim da 3a linha. */
  html body ul.mt-products-grid.mt-products-grid > li.product.product .woocommerce-loop-product__title,
  html body ul.mt-products-grid.mt-products-grid > li.product.product h2.woocommerce-loop-product__title,
  html body ul.mt-products-grid.mt-products-grid > li.product.product h3.woocommerce-loop-product__title {
    font-size: 11px !important;
    line-height: 1.3 !important;
    letter-spacing: 0 !important;
    padding: 8px 8px 0 !important;
    margin: 0 !important;
    /* 3 linhas × line-height 14.3px + padding-top 8px = ~51px */
    height: 51px !important;
    min-height: 51px !important;
    max-height: 51px !important;
    box-sizing: border-box !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 3 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    word-break: normal !important;
    overflow-wrap: break-word !important;
  }
  html body ul.mt-products-grid.mt-products-grid > li.product.product .price {
    font-size: 14px !important;
    padding: 4px 8px 4px !important;
    margin: 0 !important;
  }
  html body ul.mt-products-grid.mt-products-grid > li.product.product .mt-inspiration {
    font-size: 10px !important;
    padding: 0 8px !important;
    line-height: 1.3 !important;
    height: 28px !important;
    min-height: 28px !important;
    max-height: 28px !important;
    box-sizing: border-box !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
  }
  html body ul.mt-products-grid.mt-products-grid > li.product.product .star-rating,
  html body ul.mt-products-grid.mt-products-grid > li.product.product .woocommerce-product-rating {
    height: 18px !important;
    min-height: 18px !important;
    max-height: 18px !important;
    margin: 4px 8px !important;
    padding: 0 !important;
    font-size: 11px !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
  }
  /* O span interno do .star-rating contém texto literal "Avaliação 4.80 de 5"
     que estava aparecendo em AMARELO sobre o conteúdo abaixo. Esconde via text-indent. */
  html body ul.mt-products-grid.mt-products-grid > li.product.product .star-rating > span {
    text-indent: -9999em !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    padding-top: 0 !important;
    height: 18px !important;
    max-height: 18px !important;
  }
  html body ul.mt-products-grid.mt-products-grid > li.product.product .button {
    font-size: 10px !important;
    padding: 10px 4px !important;
    letter-spacing: 1px !important;
    min-height: 38px !important;
    margin-top: auto !important;
  }

  /* Sombra "arrastar" do carrossel antigo REMOVIDA (agora é grid fixo 3×2) */
  .mt-products-section .mt-products-grid-wrapper {
    position: static !important;
    overflow: visible !important;
  }
  .mt-products-section .mt-products-grid-wrapper::after {
    display: none !important;
    content: none !important;
  }

  .mt-section-cta { margin-top: 20px !important; padding: 0 20px; }
  .mt-section-cta .mt-btn { font-size: 11px !important; padding: 12px 24px; letter-spacing: 2px; }

  /* Promoção: selo topo mais compacto */
  .mt-section-promocao::before { top: 20px !important; font-size: 9px !important; letter-spacing: 3px !important; }
  .mt-section-promocao .mt-section-title { margin-top: 16px !important; }

  /* ---- Shop loop (Produtos em Destaques) — carrossel em mobile ---- */
  .mt-shop-wrap { padding: 20px 0 20px !important; max-width: 100%; position: relative; overflow: hidden; }

  html body .mt-shop-wrap ul.products.products,
  html body .mt-shop-wrap ul.products.columns-3.columns-3,
  html body .mt-shop-wrap ul.products.columns-4.columns-4 {
    display: flex !important;
    grid-template-columns: none !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-snap-type: x mandatory !important;
    -webkit-overflow-scrolling: touch !important;
    padding: 4px 12px 12px !important;
    gap: 10px !important;
    scrollbar-width: none !important;
    -ms-overflow-style: none !important;
  }
  html body .mt-shop-wrap ul.products.products::-webkit-scrollbar { display: none !important; }

  html body .mt-shop-wrap ul.products.products > li.product.product {
    flex: 0 0 calc(50% - 6px) !important;
    min-width: calc(50% - 6px) !important;
    max-width: calc(50% - 6px) !important;
    scroll-snap-align: start !important;
    scroll-snap-stop: always !important;
  }

  /* Dica visual de swipe */
  .mt-shop-wrap::after {
    content: "";
    position: absolute;
    top: 60px; right: 0; bottom: 60px;
    width: 28px;
    background: linear-gradient(to right, transparent, rgba(0,0,0,0.6));
    pointer-events: none;
    z-index: 2;
  }

  .mt-shop-wrap ul.products li.product .woocommerce-loop-product__title,
  .mt-shop-wrap ul.products li.product h2.woocommerce-loop-product__title { font-size: 12px !important; padding: 10px 10px 2px !important; }
  .mt-shop-wrap ul.products li.product .price { font-size: 15px !important; padding: 0 10px 8px !important; }
  .mt-shop-wrap ul.products li.product .button { font-size: 10px !important; padding: 10px 6px !important; min-height: 42px; }

  /* Paginação shop: escondida em mobile (substituída pelo swipe horizontal) */
  .mt-shop-pag { display: none !important; }

  /* Em mobile, reverter .mt-hidden do JS da paginação — todos produtos visíveis no carrossel */
  html body ul.mt-products-grid > li.product.mt-hidden,
  html body .mt-shop-wrap ul.products > li.product.mt-hidden {
    display: flex !important;
  }

  /* ---- Nossas linhas ---- */
  .mt-cat-banners { padding: 40px 12px 30px !important; }
  .mt-cat-grid { grid-template-columns: 1fr !important; gap: 10px !important; }
  .mt-cat-card { min-height: 200px !important; }
  .mt-cat-card h3 { font-size: 22px !important; letter-spacing: 3px !important; }
  .mt-cat-card p { font-size: 11px !important; }
  .mt-cat-card-link { font-size: 10px !important; padding: 8px 14px !important; }

  /* ---- Newsletter ---- */
  .mt-newsletter { padding: 40px 20px !important; }
  .mt-newsletter h2 { font-size: 22px !important; line-height: 1.2 !important; }
  .mt-newsletter p { font-size: 12px !important; margin-bottom: 20px !important; }
  .mt-newsletter form,
  .mt-wa-form { flex-direction: column !important; gap: 10px !important; max-width: 320px !important; margin: 0 auto !important; }
  .mt-newsletter form input,
  .mt-wa-form input[type="tel"] { font-size: 16px !important; padding: 14px 18px !important; min-height: 48px; width: 100% !important; border-radius: 3px; }
  .mt-newsletter form button,
  .mt-wa-form button { padding: 14px 20px !important; font-size: 12px !important; min-height: 48px; width: 100% !important; border-radius: 3px; }

  /* ---- Footer mobile ----
     Layout: MAISON TOP (full width) em cima,
             Institucional | Atendimento lado a lado em baixo */
  .site-footer { padding: 32px 20px 14px !important; }
  .mt-footer-cols {
    grid-template-columns: 1fr 1fr !important;
    column-gap: 16px !important;
    row-gap: 20px !important;
    padding-bottom: 20px !important;
  }
  .mt-footer-cols > .mt-footer-col:first-child {
    grid-column: 1 / -1 !important;
  }
  .mt-footer-col h4 {
    font-size: 12px !important;
    letter-spacing: 2.5px !important;
    margin-bottom: 10px !important;
    padding-bottom: 8px !important;
  }
  .mt-footer-col p, .mt-footer-col li {
    font-size: 13px !important;
    line-height: 1.7 !important;
  }
  .mt-footer-col ul li {
    margin-bottom: 4px !important;
  }
  .mt-footer-col a {
    padding: 2px 0;
    display: inline-block;
    min-height: 28px;
  }
  .mt-footer-bottom {
    flex-direction: column !important;
    text-align: center !important;
    gap: 6px !important;
    padding-top: 16px !important;
    font-size: 10px !important;
  }
  .mt-social {
    justify-content: flex-start;
    margin-top: 12px;
    margin-bottom: 10px;
  }
  .mt-social a { width: 40px !important; height: 40px !important; }
  .mt-social a svg { width: 18px !important; height: 18px !important; }
  .mt-footer-email { font-size: 12px !important; }
  .mt-footer-about { font-size: 13px !important; line-height: 1.6; margin-bottom: 8px !important; }

  /* ---- Botão WhatsApp flutuante ---- */
  .mt-whatsapp { width: 56px !important; height: 56px !important; bottom: 16px !important; right: 16px !important; }
  .mt-whatsapp svg { width: 26px !important; height: 26px !important; }

  /* ---- Página de produto single ---- */
  .single-product div.product { display: block !important; }
  .single-product div.product .images,
  .single-product div.product .summary { width: 100% !important; float: none !important; margin: 0 0 20px !important; }

  /* Margens laterais em TUDO do single product pra não ficar colado na borda */
  .single-product #primary,
  .single-product .content-area,
  .single-product main#main { padding: 0 !important; }
  .single-product .woocommerce-breadcrumb { padding: 12px 16px !important; margin: 0 !important; font-size: 13px !important; }
  .single-product .woocommerce-breadcrumb a { font-size: 13px !important; }
  .single-product div.product .summary { padding: 0 16px !important; box-sizing: border-box; }
  .single-product div.product .summary > * { box-sizing: border-box; }
  .single-product div.product h1.product_title { font-size: 24px !important; letter-spacing: 0 !important; padding: 4px 0 6px !important; margin: 0 !important; line-height: 1.25 !important; }
  .single-product div.product .mt-product-subtitle { font-size: 13px !important; padding: 0 !important; margin: 2px 0 10px !important; line-height: 1.3 !important; }
  .single-product div.product .price { font-size: 24px !important; padding: 6px 0 !important; }
  .single-product div.product form.cart { padding: 6px 0 0 !important; }
  .single-product div.product form.cart .variations { padding: 14px !important; }
  .single-product div.product .woocommerce-product-details__short-description { font-size: 14px; padding: 12px 0 !important; line-height: 1.55 !important; }
  .single-product div.product .product_meta { padding: 12px 0 !important; font-size: 12px; line-height: 1.8; }
  .single-product div.product .cart .single_add_to_cart_button { width: 100% !important; padding: 14px !important; font-size: 13px !important; }
  .single-product div.product .cart .quantity { display: flex; margin-bottom: 10px; width: 100%; }
  .single-product div.product .cart .quantity input.qty { width: 100% !important; }

  /* Wrapper do CEP (correios) */
  .single-product .summary .woocommerce-info,
  .single-product .summary .cfw-wrap,
  .single-product .summary .wc-correios-simulator { margin: 10px 0 !important; }

  /* Galeria de imagens — evita encostar nas bordas */
  .single-product div.product .woocommerce-product-gallery { padding: 0 16px !important; box-sizing: border-box; }

  /* Abas DESCRIÇÃO / INFO ADICIONAL / AVALIAÇÕES */
  .single-product .woocommerce-tabs { padding: 0 !important; }
  .single-product .woocommerce-tabs ul.tabs { display: flex !important; flex-wrap: nowrap !important; overflow-x: auto; -webkit-overflow-scrolling: touch; padding: 0 12px !important; gap: 4px; margin: 0 !important; border-bottom: 1px solid var(--mt-border); }
  .single-product .woocommerce-tabs ul.tabs li { flex: 0 0 auto !important; margin: 0 !important; padding: 0 !important; }
  .single-product .woocommerce-tabs ul.tabs li a { font-size: 11px !important; padding: 10px 14px !important; letter-spacing: 1px !important; white-space: nowrap; }
  .single-product .woocommerce-tabs .panel { padding: 16px !important; margin: 0 !important; font-size: 14px !important; line-height: 1.6 !important; }

  /* Related / Upsell products — layout padrão 2 colunas alinhado à ESQUERDA */
  .single-product .related,
  .single-product .upsells {
    padding: 24px 0 20px !important;
    clear: both !important;
    width: 100% !important;
  }
  .single-product .related h2,
  .single-product .upsells h2 {
    font-size: 18px !important;
    padding: 0 16px 14px !important;
    margin: 0 !important;
    letter-spacing: 2px;
    text-transform: uppercase;
    text-align: left !important;
  }
  html body.single-product .related ul.products,
  html body.single-product .upsells ul.products,
  html body.single-product .related ul.products.columns-4,
  html body.single-product .upsells ul.products.columns-4 {
    padding: 0 12px 12px !important;
    gap: 10px !important;
    margin: 0 !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    grid-auto-flow: row !important;
    grid-auto-rows: auto !important;
    justify-content: start !important;
    justify-items: stretch !important;
    align-items: stretch !important;
    width: 100% !important;
    list-style: none !important;
  }
  html body.single-product .related ul.products > li.product,
  html body.single-product .upsells ul.products > li.product,
  html body.single-product .related ul.products.columns-4 > li.product,
  html body.single-product .upsells ul.products.columns-4 > li.product,
  html body.single-product .related ul.products > li.product.first,
  html body.single-product .related ul.products > li.product.last {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    float: none !important;
    clear: none !important;
    grid-column: auto / auto !important;
    grid-row: auto / auto !important;
    grid-column-start: auto !important;
    grid-column-end: auto !important;
  }
  /* Remove ::before/::after do Storefront que viram flex-items fantasmas e empurram o 1º produto */
  html body.single-product .related ul.products::before,
  html body.single-product .related ul.products::after,
  html body.single-product .upsells ul.products::before,
  html body.single-product .upsells ul.products::after {
    display: none !important;
    content: none !important;
  }

  /* ---- Páginas institucionais ---- */
  .page .entry-content { padding: 0 16px !important; font-size: 15px; line-height: 1.7; }
  .page .entry-content h1, .page .entry-title { font-size: 24px !important; padding: 20px 16px 12px !important; letter-spacing: 2px !important; }
  .page .entry-content h2 { font-size: 19px !important; margin-top: 1.6em !important; letter-spacing: 1px !important; }
  .page .entry-content h3 { font-size: 16px !important; }
  .page .entry-content ul, .page .entry-content ol { padding-left: 20px; }
  .page .entry-content table { display: block; overflow-x: auto; -webkit-overflow-scrolling: touch; font-size: 12px; }
  .page .entry-content table th, .page .entry-content table td { padding: 8px 10px !important; }

  /* ---- Carrinho / Checkout ---- */
  .woocommerce-cart table.shop_table,
  .woocommerce-checkout table.shop_table {
    display: block;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    font-size: 13px;
  }
  /* Inputs de form: 16px evita zoom automático no iOS */
  .woocommerce form .form-row input.input-text,
  .woocommerce form .form-row textarea,
  .woocommerce form .form-row select,
  .woocommerce-checkout form .form-row input.input-text,
  .woocommerce-checkout form .form-row select,
  input[type="text"], input[type="email"], input[type="tel"],
  input[type="password"], input[type="search"], textarea, select {
    font-size: 16px !important;
    padding: 12px !important;
    min-height: 44px;
  }

  /* ---- Imagens genéricas ---- */
  img { max-width: 100%; height: auto; }
  iframe, embed, video { max-width: 100% !important; }

  /* ---- Anti-overflow horizontal — usa 100% (não 100vw) pra não incluir scrollbar ---- */
  html {
    overflow-x: hidden !important;
    max-width: 100% !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  body {
    overflow-x: hidden !important;
    max-width: 100% !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    position: relative;
    box-sizing: border-box;
  }
  #page, .site, .site-content, #content, #main, .site-main, #primary, .content-area, .col-full {
    max-width: 100% !important;
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box;
  }
  /* Elementos fixos/flutuantes que podem causar scroll horizontal */
  .mt-whatsapp { display: none !important; }
}

/* ===== MOBILE PEQUENO (<= 480px) — smartphone comum ===== */
@media (max-width: 480px) {
  .mt-slide-title { font-size: 26px !important; }
  .mt-slide-sub { font-size: 12px !important; }
  .mt-hero-carousel { height: clamp(320px, 70vh, 440px); }

  /* Mantém carrossel 2 por tela (não muda pra 1) — swipe continua */

  /* Header: logo pequeno */
  .mt-header-3col .site-branding .custom-logo { max-height: 40px !important; }
  .mt-util { min-width: 40px !important; }
  .mt-util svg { width: 20px; height: 20px; }

  /* Topo rotativa ainda menor */
  .mt-top-msg { font-size: 9px !important; letter-spacing: 1px !important; padding: 0 14px; }

  /* Newsletter edge-to-edge */
  .mt-newsletter { padding: 32px 16px !important; }
  .mt-newsletter form { max-width: 100% !important; }

  /* WhatsApp um pouco menor */
  .mt-whatsapp { width: 52px !important; height: 52px !important; bottom: 14px !important; right: 14px !important; }
}

/* ===== Barra de filtros da loja (categorias + busca + ordenação) ===== */
.mt-shop-filters {
  max-width: 1400px;
  margin: 0 auto 28px;
  padding: 18px 24px;
  background: var(--mt-bg-secondary);
  border: 1px solid var(--mt-border);
  border-radius: 4px;
  display: grid;
  grid-template-columns: minmax(240px, 1fr) 2fr minmax(200px, auto);
  gap: 18px;
  align-items: center;
}

/* Busca */
.mt-shop-search {
  display: flex;
  align-items: center;
  background: var(--mt-black);
  border: 1px solid var(--mt-border);
  border-radius: 3px;
  overflow: hidden;
}
.mt-shop-search input[type="search"] {
  flex: 1;
  padding: 10px 14px;
  background: transparent !important;
  border: 0 !important;
  color: var(--mt-gold-light) !important;
  font-size: 13px;
  outline: 0;
}
.mt-shop-search input::placeholder { color: var(--mt-gold-dark); opacity: 0.8; }
.mt-shop-search button {
  background: transparent !important;
  border: 0 !important;
  padding: 0 14px !important;
  color: var(--mt-gold) !important;
  cursor: pointer;
  display: flex;
  align-items: center;
  height: 100%;
}
.mt-shop-search button:hover { color: var(--mt-gold-light) !important; }

/* Pills de categoria */
.mt-shop-cats {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: center;
}
.mt-cat-chip {
  display: inline-block;
  padding: 8px 16px;
  font-size: 11px;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: var(--mt-gold-light) !important;
  background: transparent;
  border: 1px solid var(--mt-border);
  border-radius: 100px;
  text-decoration: none !important;
  transition: all 0.2s;
  white-space: nowrap;
}
.mt-cat-chip:hover {
  border-color: var(--mt-gold);
  color: var(--mt-gold) !important;
}
.mt-cat-chip.active {
  background: var(--mt-gold);
  color: var(--mt-black) !important;
  border-color: var(--mt-gold);
  font-weight: 600;
}

/* Ordenação */
.mt-shop-order { display: flex; justify-content: flex-end; }
.mt-shop-order form.woocommerce-ordering { margin: 0 !important; }
.mt-shop-order select.orderby {
  background: var(--mt-black) !important;
  color: var(--mt-gold-light) !important;
  border: 1px solid var(--mt-border) !important;
  padding: 10px 14px !important;
  font-size: 12px !important;
  letter-spacing: 1px;
  text-transform: uppercase;
  border-radius: 3px;
  cursor: pointer;
  min-width: 180px;
}
.mt-shop-order select.orderby:focus { border-color: var(--mt-gold) !important; outline: 0; }

/* Mobile */
@media (max-width: 900px) {
  .mt-shop-filters {
    grid-template-columns: 1fr;
    padding: 14px;
    gap: 12px;
  }
  .mt-shop-cats { justify-content: flex-start; overflow-x: auto; flex-wrap: nowrap; padding-bottom: 4px; scrollbar-width: thin; }
  .mt-shop-cats::-webkit-scrollbar { height: 4px; }
  .mt-shop-cats::-webkit-scrollbar-thumb { background: var(--mt-border); border-radius: 2px; }
  .mt-shop-order { justify-content: stretch; }
  .mt-shop-order select.orderby { width: 100% !important; }
}

/* ===== Reset quando .mt-products-section é injetada em .entry-content =====
   (casos: Promoção no carrinho, e qualquer outro reuso dentro de páginas) */
.entry-content .mt-products-section a,
.entry-content .mt-products-section a:hover,
.entry-content .mt-products-section a:visited,
.entry-content .mt-products-section a:focus { text-decoration: none !important; }
.entry-content .mt-products-section,
.entry-content .mt-products-section p,
.entry-content .mt-products-section h2 { text-align: center !important; hyphens: manual !important; }
.entry-content .mt-products-section .mt-products-grid li,
.entry-content .mt-products-section .woocommerce-loop-product__title,
.entry-content .mt-products-section .mt-olfativa,
.entry-content .mt-products-section .mt-product-meta { text-align: left !important; }
.entry-content .mt-products-section .mt-products-grid .woocommerce-loop-product__title,
.entry-content .mt-products-section h3,
.entry-content .mt-products-section h2.woocommerce-loop-product__title,
.entry-content .mt-products-section h2 a { font-family: inherit !important; }
/* Botão "Comprar" dentro da grade */
.entry-content .mt-products-section .button,
.entry-content .mt-products-section a.button,
.entry-content .mt-products-section .add_to_cart_button,
.entry-content .mt-products-section li.product .button {
  text-transform: uppercase !important;
  letter-spacing: 3px !important;
  font-weight: 700 !important;
  font-size: 11px !important;
  padding: 14px 18px !important;
  background: var(--mt-gold) !important;
  color: var(--mt-black) !important;
  border: 0 !important;
  display: block !important;
  text-align: center !important;
  width: 100% !important;
}
.entry-content .mt-products-section .button:hover { background: var(--mt-gold-light) !important; color: var(--mt-black) !important; }

/* ===== Fonte especial da frase "Fragrâncias que marcam momentos" ===== */
.mt-tagline,
.mt-footer-col h4 {
  font-family: "Mongolian Baiti", "Mongolian Baiti Regular", serif !important;
}

/* ===== RODAPÉ — texto compacto e justificado ===== */
.mt-footer-about {
  font-size: 13px;
  line-height: 1.5;
  margin: 0 0 4px 0 !important;
  text-align: justify !important;
  text-justify: inter-word;
  hyphens: auto;
  -webkit-hyphens: auto;
}
.mt-footer-about:last-child { margin-bottom: 0 !important; }
.mt-footer-tagline {
  font-style: italic;
  letter-spacing: 1px;
  color: var(--mt-gold) !important;
  text-align: left !important;
  margin-top: 10px !important;
}
.mt-footer-tagline strong { color: var(--mt-gold) !important; letter-spacing: 2px; }

/* ===== PÁGINAS INSTITUCIONAIS — esconder sidebar e widgets ===== */
/* Remove a sidebar (Pesquisar / Recent Posts / Comments / Archives / Categories)
   nas páginas institucionais e ocupa a largura total do conteúdo.          */
body.page #secondary,
body.page .widget-area,
body.page aside.widget-area,
body.page .sidebar,
body.page .secondary,
body.page #sidebar-1,
body.page .site-content .widget-area,
body.page .widget_search,
body.page .widget_recent_entries,
body.page .widget_recent_comments,
body.page .widget_archive,
body.page .widget_categories,
body.page .widget_meta { display: none !important; visibility: hidden !important; width: 0 !important; height: 0 !important; overflow: hidden !important; }

body.page #primary,
body.page #primary.content-area,
body.page .content-area {
  width: 100% !important;
  max-width: 100% !important;
  margin-right: 0 !important;
  margin-left: 0 !important;
  float: none !important;
}

body.page #content .col-full,
body.page .site-content .col-full { max-width: 980px !important; }

/* Remove espaço grande entre breadcrumb e título (páginas institucionais + WC) */
html body .storefront-breadcrumb,
html body.page .storefront-breadcrumb,
html body .woocommerce-breadcrumb {
  margin: 0 !important;
  padding-bottom: 12px !important;
}
html body.page #content,
html body.page .site-content,
html body.page #main,
html body.page main#main,
html body.page .site-main,
html body.woocommerce-cart #main,
html body.woocommerce-cart main#main,
html body.woocommerce-account #main,
html body.woocommerce-account main#main {
  padding-top: 0 !important;
  margin-top: 0 !important;
}
html body.page .entry-header,
html body.page article.hentry,
html body.page article.page,
html body.woocommerce-cart .entry-header,
html body.woocommerce-account .entry-header {
  margin: 0 !important;
  padding: 0 !important;
}
html body.page .entry-title,
html body.page .entry-header .entry-title,
html body.page h1.entry-title,
html body.woocommerce-cart .entry-title,
html body.woocommerce-account .entry-title,
html body.page .entry-content > h1:first-child {
  margin: 14px 0 18px 0 !important;
  padding: 0 !important;
}
/* Força remover gap extra no topo do conteúdo */
html body.page .col-full > .site-main,
html body.woocommerce-cart .col-full > .site-main,
html body.woocommerce-account .col-full > .site-main { padding-top: 0 !important; }

/* Justificar texto das páginas institucionais */
body.page .entry-content p,
body.page .entry-content li,
body.page .entry-content td,
body.page .entry-content blockquote,
body.page .entry-content .wp-block-paragraph,
body.page .entry-content .wp-block-group p,
body.page .entry-content .wp-block-columns p,
body.page article p,
body.page article li,
body.page .hentry .entry-content p,
body.page .hentry .entry-content li {
  text-align: justify !important;
  text-justify: inter-word;
  hyphens: auto;
  -webkit-hyphens: auto;
}

/* ============================================
   UNIFICAÇÃO DE FONTE — Header, Menu, Utilities, Busca, Topbar
   Todas devem usar a mesma fonte de "Frete Grátis para compras..."
   que é var(--font-sans) (Inter). A única exceção é .mt-tagline
   ("Fragrâncias que marcam momentos") que mantém fonte cursiva.
   ============================================ */
html body .mt-top-msg,
html body .main-navigation ul.menu li a,
html body .main-navigation ul.menu li a:hover,
html body .main-navigation ul.menu ul.sub-menu li a,
html body .mt-util,
html body .mt-util span,
html body .mt-search-form input,
html body .mt-search-overlay input,
html body .mt-search-overlay input[type="search"],
html body .mt-search-form input::placeholder,
html body .mt-search-overlay input::placeholder,
html body .mt-cart-count {
  font-family: var(--font-sans) !important;
}

/* ============================================
   BOTÕES DE "COMPRAR" NOS CARDS DE PRODUTO
   Fonte e hover iguais ao botão "VER TODOS OS LANÇAMENTOS" (.mt-btn-outline)
   Fundo/texto continuam sendo controlados pelos pickers de cada seção.
   ============================================ */
html body ul.mt-products-grid > li.product .button,
html body ul.mt-products-grid > li.product a.button,
html body ul.mt-products-grid > li.product .add_to_cart_button,
html body .mt-shop-wrap ul.products li.product .button,
html body .mt-shop-wrap ul.products li.product a.button,
html body .mt-shop-wrap ul.products li.product .add_to_cart_button {
  font-family: var(--font-sans) !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  letter-spacing: 3px !important;
  text-transform: uppercase !important;
  border: 1px solid transparent !important;
  border-radius: 0 !important;
  transition: background 0.3s ease, color 0.3s ease, border-color 0.3s ease !important;
}

/* ============================================
   BOTÃO APROVEITAR OFERTAS (outline) — mesmo estilo de
   VER TODOS OS LANÇAMENTOS, mesmo com a classe mt-btn-outline.
   Regra já existente no bloco .mt-btn-outline é reforçada aqui
   com maior especificidade pra nenhuma outra regra quebrar.
   ============================================ */
html body a.mt-btn.mt-btn-outline,
html body .mt-section-cta a.mt-btn.mt-btn-outline {
  background: transparent !important;
  color: var(--mt-gold) !important;
  border: 1px solid var(--mt-gold) !important;
  font-family: var(--font-sans) !important;
  letter-spacing: 3px !important;
  transition: background 0.3s ease, color 0.3s ease, border-color 0.3s ease !important;
}
html body a.mt-btn.mt-btn-outline:hover,
html body .mt-section-cta a.mt-btn.mt-btn-outline:hover {
  background: var(--mt-gold) !important;
  color: var(--mt-black) !important;
  border-color: var(--mt-gold) !important;
}

/* ============================================
   SEÇÃO "PRODUTOS EM DESTAQUES" NA HOME
   Mesmo padrão visual de Lançamentos/Promoção
   ============================================ */
.mt-section-destaques {
  background: var(--mt-black);
}

/* ============================================
   PÁGINA DE PRODUTO — nova ordem de blocos
   1. Logo
   2. Nome
   3. Short description (com dividers acima e abaixo)  ← movido pra prio 7
   4. Preço (menor)
   5. Estrelas + reviews                                 ← movido pra prio 12
   6. Volume / variações / Comprar
   ============================================ */

/* Short description colada no nome, sem dividers bruscos */
html body.single-product .summary > .woocommerce-product-details__short-description,
html body.single-product .entry-summary > .woocommerce-product-details__short-description {
  border: 0 !important;
  padding: 0 !important;
  margin: 4px 0 14px !important;
  text-align: left !important;
}
html body.single-product .summary > .woocommerce-product-details__short-description h5,
html body.single-product .summary > .woocommerce-product-details__short-description p,
html body.single-product .summary > .woocommerce-product-details__short-description em {
  font-family: var(--font-sans) !important;
  font-style: italic !important;
  font-size: 13px !important;
  letter-spacing: 1.2px !important;
  text-transform: uppercase !important;
  font-weight: 400 !important;
  color: var(--mt-gold-light) !important;
  margin: 0 !important;
  line-height: 1.5 !important;
}
html body.single-product .summary > .woocommerce-product-details__short-description strong {
  color: var(--mt-gold) !important;
  font-weight: 700 !important;
}

/* Preço — grande mas não exagerado, fica ABAIXO da inspiração */
html body.single-product .summary > p.price,
html body.single-product .entry-summary > p.price {
  font-family: var(--font-serif) !important;
  font-size: 26px !important;
  font-weight: 400 !important;
  color: var(--mt-gold-light) !important;
  margin: 14px 0 6px !important;
  letter-spacing: 0.5px !important;
}
html body.single-product .summary > p.price .mt-from-label {
  font-size: 11px !important;
  color: var(--mt-gold-dark) !important;
  margin-right: 4px !important;
}
html body.single-product .woocommerce-variation-price .price,
html body.single-product .woocommerce-variation .price {
  font-family: var(--font-serif) !important;
  font-size: 26px !important;
  font-weight: 400 !important;
  color: var(--mt-gold-light) !important;
  margin: 6px 0 0 !important;
  display: inline-block !important;
}
/* Sub-label "X × R$ Y" quando qty > 1 */
html body.single-product .mt-unit-price {
  display: block !important;
  font-size: 11px !important;
  color: var(--mt-gold-dark) !important;
  letter-spacing: 1px !important;
  margin-top: 2px !important;
  font-style: italic;
}

/* Rating: estrelas + link, abaixo do preço, sem muita margem */
html body.single-product .summary > .woocommerce-product-rating {
  margin: 2px 0 18px !important;
}

/* Esconde "X em estoque" (redundante com o Comprar) */
html body.single-product .stock.in-stock,
html body.single-product .woocommerce-variation-availability,
html body.single-product .woocommerce-variation p.stock {
  display: none !important;
}

/* SKU sai da .product_meta — agora aparece na aba "Informações Adicionais" */
html body.single-product .product_meta .sku_wrapper {
  display: none !important;
}

/* ============================================
   VOLUME como botões (via JS converte <select>)
   ============================================ */
html body .mt-variation-buttons {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  margin: 4px 0 !important;
}
html body .mt-variation-btn,
html body.single-product div.product .summary .mt-variation-btn {
  background: transparent !important;
  color: var(--mt-gold-light) !important;
  border: 1px solid var(--mt-gold-dark) !important;
  border-radius: 3px !important;
  padding: 10px 20px !important;
  min-width: 80px !important;
  font-family: var(--font-sans) !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
  text-align: center !important;
  box-shadow: none !important;
}
html body .mt-variation-btn:hover,
html body.single-product div.product .summary .mt-variation-btn:hover {
  border-color: var(--mt-gold) !important;
  color: var(--mt-gold) !important;
  background: transparent !important;
}
/* Estado ATIVO: cores invertidas pra destaque claro (bg dourado sólido, texto preto) */
html body .mt-variation-btn.active,
html body.single-product div.product .summary .mt-variation-btn.active {
  background: var(--mt-gold, #D4AF37) !important;
  background-color: var(--mt-gold, #D4AF37) !important;
  color: var(--mt-black, #0A0A0A) !important;
  border-color: var(--mt-gold, #D4AF37) !important;
  box-shadow: 0 0 0 2px rgba(212,175,55,0.25), inset 0 0 0 1px var(--mt-gold, #D4AF37) !important;
  font-weight: 700 !important;
}
html body .mt-variation-btn.active:hover,
html body.single-product div.product .summary .mt-variation-btn.active:hover {
  background: var(--mt-gold-light, #E8D9B0) !important;
  background-color: var(--mt-gold-light, #E8D9B0) !important;
  color: var(--mt-black, #0A0A0A) !important;
  border-color: var(--mt-gold-light, #E8D9B0) !important;
}
/* Esconde o <select> original (deixamos no DOM pra compatibilidade com o JS do Woo) */
html body form.variations_form .variations select[name^="attribute_"] {
  display: none !important;
}
/* Label "VOLUME" — mesma régua de caption */
html body form.variations_form .variations .label label {
  font-family: var(--font-sans) !important;
  font-size: 11px !important;
  letter-spacing: 2px !important;
  color: var(--mt-gold) !important;
  text-transform: uppercase !important;
  font-weight: 600 !important;
  margin-bottom: 6px !important;
  display: block !important;
}
html body form.variations_form .variations,
html body form.variations_form .variations tbody,
html body form.variations_form .variations tr,
html body form.variations_form .variations th,
html body form.variations_form .variations td {
  display: block !important;
  border: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
}
html body form.variations_form .variations tr {
  margin-bottom: 14px !important;
}
/* "Limpar" opção — escondido (sempre tem um volume selecionado por default) */
html body form.variations_form .variations .reset_variations,
html body form.variations_form a.reset_variations {
  display: none !important;
}

/* ============================================
   Quantidade + Comprar lado a lado
   ============================================ */
html body.single-product form.cart .woocommerce-variation-add-to-cart,
html body.single-product form.cart.variations_form .single_variation_wrap .woocommerce-variation-add-to-cart {
  display: flex !important;
  align-items: stretch !important;
  gap: 12px !important;
  flex-wrap: wrap !important;   /* Quantidade + Comprar lado a lado, calculador CEP em linha de baixo (full width via flex-basis 100%) */
  margin-top: 14px !important;
}
@media (max-width: 480px) {
  html body.single-product form.cart .woocommerce-variation-add-to-cart { flex-wrap: wrap !important; }
}
html body.single-product form.cart .quantity {
  display: flex !important;
  margin: 0 !important;
  flex: 0 0 auto !important;
}
html body.single-product form.cart .quantity input.qty,
html body.single-product form.cart input.input-text.qty,
html body.single-product form.cart input[type="number"].qty {
  width: 70px !important;
  height: 52px !important;
  padding: 0 10px !important;
  background: var(--mt-black) !important;
  color: var(--mt-gold-light) !important;
  border: 1px solid var(--mt-border) !important;
  border-radius: 3px !important;
  text-align: center !important;
  font-family: var(--font-sans) !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  /* Remove setas do input number (Firefox) */
  -moz-appearance: textfield !important;
  appearance: textfield !important;
}
/* Remove setas do input number (Chrome, Safari, Edge) */
html body.single-product form.cart .quantity input.qty::-webkit-outer-spin-button,
html body.single-product form.cart .quantity input.qty::-webkit-inner-spin-button,
html body.single-product form.cart input[type="number"].qty::-webkit-outer-spin-button,
html body.single-product form.cart input[type="number"].qty::-webkit-inner-spin-button {
  -webkit-appearance: none !important;
  appearance: none !important;
  margin: 0 !important;
  display: none !important;
}
html body.single-product form.cart button.single_add_to_cart_button {
  flex: 1 1 auto !important;
  min-width: 200px !important;
  height: 52px !important;
  padding: 0 36px !important;
  background: var(--mt-bordo) !important;
  color: var(--mt-gold-light) !important;
  border: 0 !important;
  border-radius: 3px !important;
  font-family: var(--font-sans) !important;
  font-size: 13px !important;
  letter-spacing: 3px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
  transition: background 0.2s ease, color 0.2s ease !important;
}
html body.single-product form.cart button.single_add_to_cart_button:hover {
  background: var(--mt-bordo-dark) !important;
  color: var(--mt-gold) !important;
}

/* Calculadora de frete (Melhor Envio) sempre DEPOIS do form — JS move,
   mas garantimos margem superior bonita pro layout */
html body.single-product #woocommerce-correios-calculo-de-frete-na-pagina-do-produto {
  margin-top: 18px !important;
}

/* "A partir de" dos preços de produtos variáveis no loop */
html body .mt-from-label {
  font-size: 11px !important;
  color: var(--mt-gold-dark) !important;
  font-family: var(--font-sans) !important;
  letter-spacing: 0.5px !important;
  font-weight: 400 !important;
  text-transform: none !important;
  display: inline-block;
  margin-right: 2px;
}
/* Layout do preço nos cards:
   - "A partir de" sempre na LINHA DE CIMA.
   - Se for promoção (<del>), "A partir de" fica na mesma linha do preço riscado;
     o preço novo (<ins>) cai na linha de baixo.
   - Se NÃO for promoção, "A partir de" fica sozinho em cima e o preço embaixo. */
html body ul.mt-products-grid .price,
html body .mt-shop-wrap ul.products .price,
html body .woocommerce ul.products li.product .price,
html body section.related.products li.product .price,
html body section.up-sells.products li.product .price {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  align-items: baseline !important;
  gap: 4px 6px !important;
  white-space: normal !important;
  text-align: center !important;
}
/* Não-promoção: "A partir de" ocupa 100% (linha 1) e o valor cai na linha 2 */
html body ul.mt-products-grid .price > .mt-from-label,
html body .mt-shop-wrap ul.products .price > .mt-from-label,
html body .woocommerce ul.products li.product .price > .mt-from-label,
html body section.related.products li.product .price > .mt-from-label,
html body section.up-sells.products li.product .price > .mt-from-label {
  flex: 0 0 100% !important;
  order: 0 !important;
  display: block !important;
}
html body ul.mt-products-grid .price > .woocommerce-Price-amount,
html body .mt-shop-wrap ul.products .price > .woocommerce-Price-amount,
html body .woocommerce ul.products li.product .price > .woocommerce-Price-amount,
html body section.related.products li.product .price > .woocommerce-Price-amount,
html body section.up-sells.products li.product .price > .woocommerce-Price-amount {
  order: 1 !important;
}
/* Promoção (tem <del>): "A partir de" fica na MESMA linha do preço riscado;
   o <ins> (preço novo) cai na linha de baixo sozinho (100%). Total: 2 linhas, nunca 3.
   Selectors espelhados pra bater a especificidade da regra não-promoção. */
html body ul.mt-products-grid .price:has(del) > .mt-from-label,
html body .mt-shop-wrap ul.products .price:has(del) > .mt-from-label,
html body .woocommerce ul.products li.product .price:has(del) > .mt-from-label,
html body section.related.products li.product .price:has(del) > .mt-from-label,
html body section.up-sells.products li.product .price:has(del) > .mt-from-label {
  flex: 0 0 auto !important;
  width: auto !important;
  display: inline-block !important;
  order: 0 !important;
  white-space: nowrap !important;
}
html body ul.mt-products-grid .price:has(del) > del,
html body .mt-shop-wrap ul.products .price:has(del) > del,
html body .woocommerce ul.products li.product .price:has(del) > del,
html body section.related.products li.product .price:has(del) > del,
html body section.up-sells.products li.product .price:has(del) > del {
  flex: 0 0 auto !important;
  width: auto !important;
  order: 1 !important;
  display: inline-block !important;
  white-space: nowrap !important;
}
html body ul.mt-products-grid .price:has(del) > ins,
html body .mt-shop-wrap ul.products .price:has(del) > ins,
html body .woocommerce ul.products li.product .price:has(del) > ins,
html body section.related.products li.product .price:has(del) > ins,
html body section.up-sells.products li.product .price:has(del) > ins {
  flex: 0 0 100% !important;
  order: 2 !important;
  display: block !important;
  text-align: center !important;
}
html body ul.mt-products-grid .price del,
html body ul.mt-products-grid .price ins,
html body .mt-shop-wrap ul.products .price del,
html body .mt-shop-wrap ul.products .price ins,
html body .woocommerce ul.products li.product .price del,
html body .woocommerce ul.products li.product .price ins {
  background: transparent !important;
  display: inline-block !important;
  margin: 0 !important;
}
html body ul.mt-products-grid .price del,
html body .mt-shop-wrap ul.products .price del {
  color: var(--mt-gold-dark) !important;
  opacity: 0.7;
  font-size: 14px !important;
  text-decoration: line-through !important;
  vertical-align: baseline;
}
html body ul.mt-products-grid .price ins,
html body .mt-shop-wrap ul.products .price ins {
  color: var(--mt-gold) !important;
  font-weight: 500;
  text-decoration: none !important;
  font-size: inherit !important;
}

/* ============================================
   PÁGINA DE PRODUTO — limpezas
   1. Esconde calculadora duplicada (WooBetter Shipping — Link Nacional)
   2. Esconde preço-faixa "R$ X,XX – R$ Y,YY" do produto variável
      (o preço da variação selecionada continua aparecendo)
   3. Estiliza a calculadora do Melhor Envio (a que fica) pra paleta do site
   ============================================ */

/* 1. Remove WooBetter Shipping Calculator (Link Nacional) — deixa só Melhor Envio
      Cobre classes legado (wcbcb-*) E atuais (woo-better-* — TODAS, incluindo
      parent-container, info-block, current-postcode-*, toggle-*, product-*,
      shipping-methods, etc.) + link "Não sei meu CEP". */
/* Esconde elementos do plugin Better Shipping APENAS na single-product
   (era pra esconder a calculadora EXTRA do produto, mas estava escondendo
   também o CEP do checkout — bug corrigido) */
html body.single-product [class*="wcbcb-"],
html body.single-product [class*="woo-better-"]:not(input):not(select):not([class*="address-form"]),
html body.single-product [id*="woo-better-"]:not(input):not(select),
html body.single-product .summary a[href*="buscacepinter.correios"],
html body.single-product .summary a[href*="buscacep"] {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

/* 2. Esconde o preço-faixa de variáveis no topo (mantém o da variação selecionada) */
html body.single-product div.product > .summary > .price,
html body.single-product div.product .entry-summary > .price {
  display: none !important;
}
/* Mas preserva preço dentro da variação ativa */
html body.single-product .woocommerce-variation .woocommerce-variation-price,
html body.single-product .woocommerce-variation .woocommerce-variation-price .price {
  display: block !important;
  visibility: visible !important;
  color: var(--mt-gold) !important;
}

/* 3. Calculadora Melhor Envio Cotação (a que fica) → minimal: só o input visível */
html body #woocommerce-correios-calculo-de-frete-na-pagina-do-produto,
html body .containerCalculator {
  background: transparent !important;
  color: var(--mt-gold-light) !important;
  border: 0 !important;
  border-radius: 0 !important;
  padding: 0 !important;
  margin: 14px 0 0 !important;
  font-family: var(--font-sans) !important;
  box-shadow: none !important;
}
/* Esconde o label "Simulação de frete" */
html body #woocommerce-correios-calculo-de-frete-na-pagina-do-produto p,
html body .containerCalculator p {
  display: none !important;
}
html body #woocommerce-correios-calculo-de-frete-na-pagina-do-produto .iptCep,
html body #woocommerce-correios-calculo-de-frete-na-pagina-do-produto #inputCep,
html body .containerCalculator input.iptCep,
html body .containerCalculator #inputCep,
html body .containerCalculator input[type="text"] {
  background: var(--mt-black) !important;
  color: var(--mt-gold-light) !important;
  border: 1px solid var(--mt-border) !important;
  border-radius: 3px !important;
  padding: 10px 12px !important;
  font-size: 14px !important;
  font-family: var(--font-sans) !important;
  width: 100% !important;
  max-width: 100% !important;
  letter-spacing: 0.5px !important;
}
html body .containerCalculator input::placeholder {
  color: var(--mt-gold-dark) !important;
  opacity: 0.8;
}
html body .containerCalculator input:focus {
  border-color: var(--mt-gold) !important;
  outline: 0 !important;
}
/* Tabela de resultados */
html body .containerCalculator .resultado-frete {
  margin-top: 12px !important;
}
html body .containerCalculator .resultado-frete table {
  width: 100% !important;
  border-collapse: collapse !important;
  background: var(--mt-black) !important;
  border: 1px solid var(--mt-border) !important;
  border-radius: 3px !important;
  overflow: hidden !important;
}
html body .containerCalculator .resultado-frete table thead,
html body .containerCalculator .resultado-frete table thead th {
  background: var(--mt-bg-secondary) !important;
  color: var(--mt-gold) !important;
  font-size: 11px !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
  padding: 8px 12px !important;
  border-bottom: 1px solid var(--mt-border) !important;
}
html body .containerCalculator .resultado-frete table,
html body .containerCalculator .resultado-frete table tbody,
html body .containerCalculator .resultado-frete table tbody tr,
html body .containerCalculator .resultado-frete table tbody td {
  background: transparent !important;
  background-color: transparent !important;
}
html body .containerCalculator .resultado-frete table tbody td {
  color: var(--mt-gold-light, #E8D9B0) !important;
  padding: 10px 12px !important;
  border-bottom: 1px dashed rgba(212, 175, 55, 0.12) !important;
  font-size: 13px !important;
}
html body .containerCalculator .resultado-frete table tbody tr:last-child td {
  border-bottom: 0 !important;
}
html body .containerCalculator .resultado-frete table tbody td strong,
html body .containerCalculator .resultado-frete table tbody td .price,
html body .containerCalculator .resultado-frete table tbody td b {
  color: var(--mt-gold) !important;
  font-weight: 600 !important;
}
html body .containerCalculator small#destiny-shipping-mehor-envio,
html body .containerCalculator small.observation-shipping-free,
html body .containerCalculator small {
  color: var(--mt-gold-dark) !important;
  font-style: italic;
  display: block;
  margin-top: 6px;
  font-size: 11px !important;
}
/* Loader (gif) — esconde quando inativo; o plugin o mostra via JS só durante loading */
html body #calcular-frete-loader,
html body .containerCalculator #calcular-frete-loader {
  display: none !important;   /* evita o quadrado vermelho da img quebrada */
}
/* Quando o plugin ativa o loader via JS (inline style display:flex/block), respeitamos */
html body .containerCalculator #calcular-frete-loader[style*="flex"],
html body .containerCalculator #calcular-frete-loader[style*="block"] {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  padding: 8px 0 !important;
}
html body #calcular-frete-loader img {
  filter: brightness(1.3) hue-rotate(30deg) !important;
  max-height: 28px !important;
}
/* Quadrado branco vazio: esconde .tableResult enquanto não tem conteúdo na tbody */
html body .containerCalculator .resultado-frete.tableResult:not([style*="block"]):not([style*="table"]) {
  display: none !important;
}
/* Calculadora Melhor Envio (comentado - não alterar) */

/* Fundo e cor dos wrappers internos */
html body .containerCalculator .resultado-frete,
html body .containerCalculator .resultado-frete.tableResult {
  background: transparent !important;
}

/* ============================================
   HOME — esconder título "Home" + sidebar de widgets
   A front page é composta só pelas seções custom (Hero, Lançamentos,
   Promoção, Linhas, Destaques). O <h1>Home</h1> vindo da page default
   do WP e a sidebar #secondary ficam ocultos aqui.
   ============================================ */
html body.home .entry-header,
html body.home h1.entry-title,
html body.home article.page > .entry-content:empty,
html body.home #primary,
html body.home #secondary,
html body.home .widget-area,
html body.home .site-content > .col-full > .woocommerce:empty {
  display: none !important;
  visibility: hidden !important;
  width: 0 !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}
html body.home #content.site-content > .col-full {
  padding: 0 !important;
  margin: 0 !important;
  max-width: none !important;
}

/* Barra "FRETE GRÁTIS" customizada removida — usamos a barra padrão do template. */

/* ============================================
   Pós "ADICIONADO AO CARRINHO"
   - Esconde TUDO dentro de .product exceto a seção "Ofertas para você"
     (inclui galeria, summary, tabs, paginação E o span.onsale órfão
     que fica flutuando acima da seção)
   - Remove o risco branco (border-left) do aviso .woocommerce-message
   - Estiliza o botão VER CARRINHO pra bater com a paleta dos outros
     botões do site (bordo + Inter + uppercase).
   ============================================ */
html body.single-product.mt-item-added div.product > *:not(section.related) {
  display: none !important;
}
/* Garante título "OFERTAS PARA VOCÊ" com margem decente quando isolada */
html body.single-product.mt-item-added div.product > section.related {
  margin-top: 32px !important;
  padding-top: 0 !important;
  border-top: 0 !important;
  display: block !important;
}

/* Remove TODAS as bordas do aviso (sem linhas brancas/penduradas).
   Inclui o OUTLINE de foco — o WC dá .focus() no aviso (tabindex=-1, role=alert)
   após "adicionar ao carrinho", e o navegador desenha um anel de foco que parece
   borda ("às vezes aparece"). Cobre o wrapper .woocommerce p/ vencer specificity. */
html body .woocommerce-message,
html body .woocommerce-info,
html body .woocommerce-error,
html body .woocommerce .woocommerce-message,
html body .woocommerce .woocommerce-info,
html body .woocommerce .woocommerce-error,
html body .woocommerce-message:focus,
html body .woocommerce-message:focus-visible,
html body .woocommerce-info:focus,
html body .woocommerce-error:focus,
html body .woocommerce .woocommerce-message:focus,
html body .woocommerce .woocommerce-message:focus-visible {
  border: 0 !important;
  box-shadow: none !important;
  outline: 0 !important;
  margin: 0 0 8px !important;
}
/* No estado pós-add-to-cart, encosta o aviso e a seção "Ofertas pra você" */
html body.single-product.mt-item-added .woocommerce-notices-wrapper,
html body.single-product.mt-item-added .woocommerce-message {
  margin-bottom: 8px !important;
}
html body.single-product.mt-item-added div.product > section.related {
  margin-top: 0 !important;
  padding-top: 16px !important;
}

/* ============================================
   Grid de produtos UNIFORME — mesmas colunas em todas as views
   (loja, categoria, tag, busca, related, up-sells)
   ============================================ */
html body ul.products,
html body ul.mt-products-grid,
html body .mt-shop-main ul.products,
html body .mt-shop-wrap ul.products,
html body .woocommerce ul.products,
html body section.related.products ul.products,
html body section.up-sells.products ul.products {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 20px !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 0 0 24px !important;
}
html body ul.products::before,
html body ul.products::after { content: none !important; display: none !important; }
@media (max-width: 1100px) {
  html body ul.products,
  html body .mt-shop-main ul.products { grid-template-columns: repeat(3, 1fr) !important; }
}
@media (max-width: 768px) {
  html body ul.products,
  html body .mt-shop-main ul.products { grid-template-columns: repeat(2, 1fr) !important; }
}
@media (max-width: 420px) {
  html body ul.products,
  html body .mt-shop-main ul.products { grid-template-columns: 1fr !important; }
}

/* ============================================
   Cards de produto com ALTURA IGUAL — COMPRAR sempre no rodapé
   ============================================ */
html body ul.products li.product,
html body ul.mt-products-grid li.product,
html body .mt-shop-wrap ul.products li.product,
html body .mt-shop-main ul.products li.product,
html body .woocommerce ul.products li.product,
html body section.related.products ul.products li.product,
html body section.up-sells.products ul.products li.product {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  align-self: stretch !important;
  float: none !important;
  background: transparent !important;
  background-color: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  border-radius: 0 !important;
}
/* Remove qualquer wrapper interno que adicione borda nos cards */
html body ul.products li.product > a,
html body ul.products li.product > a.woocommerce-LoopProduct-link {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}
/* Imagem do produto: 100% largura + altura uniforme via aspect-ratio
   (todos os cards têm a MESMA imagem quadrada, independente da view) */
html body ul.products li.product .attachment-woocommerce_thumbnail,
html body ul.products li.product img.wp-post-image,
html body ul.products li.product > a.woocommerce-LoopProduct-link img,
html body ul.products li.product > a > img {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  aspect-ratio: 1 / 1 !important;
  object-fit: cover !important;
  margin: 0 0 12px !important;
}
/* O <a> que envolve imagem/título/rating/price precisa esticar também pra
   empurrar o preço pro fundo e o botão (irmão dele) pra base do card. */
html body ul.mt-products-grid li.product > a.woocommerce-LoopProduct-link,
html body .mt-shop-wrap ul.products li.product > a.woocommerce-LoopProduct-link,
html body .woocommerce ul.products li.product > a.woocommerce-LoopProduct-link,
html body section.related.products li.product > a.woocommerce-LoopProduct-link,
html body section.up-sells.products li.product > a.woocommerce-LoopProduct-link {
  flex: 1 1 auto !important;
  display: flex !important;
  flex-direction: column !important;
}
/* Empurra o preço pro final do link (fica imediatamente acima do botão) */
html body ul.mt-products-grid li.product .price,
html body .mt-shop-wrap ul.products li.product .price,
html body .woocommerce ul.products li.product .price,
html body section.related.products li.product .price,
html body section.up-sells.products li.product .price {
  margin-top: auto !important;
}
/* Botão COMPRAR — fica fora do <a> e sempre encosta no rodapé do card */
html body ul.mt-products-grid li.product > a.button,
html body ul.mt-products-grid li.product > button.button,
html body .mt-shop-wrap ul.products li.product > a.button,
html body .woocommerce ul.products li.product > a.button,
html body section.related.products li.product > a.button,
html body section.up-sells.products li.product > a.button {
  margin-top: auto !important;
  align-self: stretch !important;
}

/* Botão VER CARRINHO (e qualquer .wc-forward dentro de notices) — paleta do site */
html body .woocommerce-message a.button,
html body .woocommerce-message a.wc-forward,
html body .woocommerce-info a.button,
html body .woocommerce-info a.wc-forward,
html body .woocommerce-notices-wrapper a.button,
html body .woocommerce-notices-wrapper a.wc-forward,
html body a.button.wc-forward {
  background: var(--mt-bordo, #6B1F2E) !important;
  background-color: var(--mt-bordo, #6B1F2E) !important;
  color: var(--mt-gold-light, #E8D9B0) !important;
  border: 1px solid var(--mt-bordo, #6B1F2E) !important;
  font-family: var(--font-sans, 'Inter', sans-serif) !important;
  font-size: 12px !important;
  letter-spacing: 3px !important;
  text-transform: uppercase !important;
  font-weight: 700 !important;
  padding: 12px 24px !important;
  border-radius: 3px !important;
  box-shadow: none !important;
  text-decoration: none !important;
  transition: background 0.2s ease !important;
}
html body .woocommerce-message a.button:hover,
html body .woocommerce-message a.wc-forward:hover,
html body .woocommerce-notices-wrapper a.button:hover,
html body a.button.wc-forward:hover {
  background: var(--mt-bordo-dark, #4A1520) !important;
  background-color: var(--mt-bordo-dark, #4A1520) !important;
  border-color: var(--mt-bordo-dark, #4A1520) !important;
  color: var(--mt-gold-light, #E8D9B0) !important;
}

/* Esconde o título "Carrinho" no topo da página /carrinho/ */
html body.woocommerce-cart h1.entry-title,
html body.woocommerce-cart .entry-header,
html body.page-id-8 h1.entry-title,
html body.page-id-8 .entry-header {
  display: none !important;
}

/* ============================================
   CARRINHO BLOCK (Gutenberg) — wc-block-cart-*
   O carrinho atual usa o bloco React do WooCommerce, NÃO o
   shortcode legado com .shop_table. Estilizamos os componentes
   wc-block-* pra paleta do site.
   ============================================ */
/* Container principal */
html body.woocommerce-cart .wp-block-woocommerce-cart,
html body.woocommerce-cart .wc-block-cart,
html body.woocommerce-cart .is-large.wc-block-cart {
  background: transparent !important;
  color: var(--mt-gold-light, #E8D9B0) !important;
  font-family: var(--font-sans, 'Inter', sans-serif) !important;
}
/* Tabela de itens — sem bordas laterais, só linha inferior por linha */
html body.woocommerce-cart table.wc-block-cart-items,
html body.woocommerce-cart .wc-block-cart-items {
  background: transparent !important;
  border: 0 !important;
  border-collapse: collapse !important;
  width: 100% !important;
  box-shadow: none !important;
}
html body.woocommerce-cart .wc-block-cart-items th,
html body.woocommerce-cart .wc-block-cart-items thead th,
html body.woocommerce-cart .wc-block-cart-items__header,
html body.woocommerce-cart .wc-block-cart-items__header-image,
html body.woocommerce-cart .wc-block-cart-items__header-product,
html body.woocommerce-cart .wc-block-cart-items__header-total {
  background: transparent !important;
  color: var(--mt-gold, #D4AF37) !important;
  font-family: var(--font-sans, 'Inter', sans-serif) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  border: 0 !important;
  border-bottom: 1px solid var(--mt-border, #2A1F0E) !important;
  padding: 16px 12px !important;
}
html body.woocommerce-cart .wc-block-cart-items tr,
html body.woocommerce-cart .wc-block-cart-items__row,
html body.woocommerce-cart tr.wc-block-cart-items__row {
  background: transparent !important;
  border: 0 !important;
  border-top: 0 !important;
  border-left: 0 !important;
  border-right: 0 !important;
  border-bottom: 1px solid var(--mt-border, #2A1F0E) !important;
}
html body.woocommerce-cart .wc-block-cart-items td,
html body.woocommerce-cart .wc-block-cart-items__row td {
  background: transparent !important;
  border: 0 !important;
  color: var(--mt-gold-light, #E8D9B0) !important;
  padding: 16px 12px !important;
  vertical-align: middle !important;
}
/* Miniatura — preenche a célula */
html body.woocommerce-cart td.wc-block-cart-item__image,
html body.woocommerce-cart .wc-block-cart-item__image {
  width: 130px !important;
  padding: 12px !important;
}
html body.woocommerce-cart .wc-block-cart-item__image a,
html body.woocommerce-cart .wc-block-cart-item__image > a {
  display: block !important;
  width: 100% !important;
  aspect-ratio: 1 / 1 !important;
  overflow: hidden !important;
  border-radius: 4px !important;
  background: var(--mt-bg-secondary, #0F0A05) !important;
}
html body.woocommerce-cart .wc-block-cart-item__image img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: cover !important;
  margin: 0 !important;
  background: var(--mt-bg-secondary, #0F0A05) !important;
}
/* Nome / variação */
html body.woocommerce-cart .wc-block-components-product-name {
  color: var(--mt-gold-light, #E8D9B0) !important;
  font-family: var(--font-sans, 'Inter', sans-serif) !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  letter-spacing: 0.5px !important;
  text-decoration: none !important;
}
html body.woocommerce-cart .wc-block-components-product-name:hover {
  color: var(--mt-gold, #D4AF37) !important;
}
html body.woocommerce-cart .wc-block-cart-item__product-metadata,
html body.woocommerce-cart .wc-block-components-product-metadata,
html body.woocommerce-cart .wc-block-components-product-details {
  color: var(--mt-gold-dark, #8B7355) !important;
  font-size: 12px !important;
  margin-top: 4px !important;
}
html body.woocommerce-cart .wc-block-components-product-metadata__description,
html body.woocommerce-cart .wc-block-components-product-details li {
  color: var(--mt-gold-dark, #8B7355) !important;
}
/* Preços */
html body.woocommerce-cart .wc-block-components-product-price,
html body.woocommerce-cart .wc-block-cart-item__total-price-wrapper,
html body.woocommerce-cart .wc-block-components-formatted-money-amount {
  color: var(--mt-gold-light, #E8D9B0) !important;
  font-family: var(--font-sans, 'Inter', sans-serif) !important;
  font-size: 14px !important;
  font-weight: 600 !important;
}
html body.woocommerce-cart td.wc-block-cart-item__total .wc-block-components-formatted-money-amount {
  color: var(--mt-gold, #D4AF37) !important;
  font-weight: 700 !important;
}
/* Quantity selector — fica como o stepper do produto */
html body.woocommerce-cart .wc-block-components-quantity-selector {
  background: var(--mt-bg-secondary, #0F0A05) !important;
  border: 1px solid var(--mt-border, #2A1F0E) !important;
  border-radius: 3px !important;
  display: inline-flex !important;
  align-items: stretch !important;
  height: 42px !important;
  overflow: hidden !important;
}
html body.woocommerce-cart .wc-block-components-quantity-selector__button {
  background: transparent !important;
  background-color: transparent !important;
  border: 0 !important;
  color: var(--mt-gold-light, #E8D9B0) !important;
  width: 36px !important;
  height: 100% !important;
  font-size: 18px !important;
  font-weight: 500 !important;
  cursor: pointer !important;
  transition: background 0.2s, color 0.2s !important;
  padding: 0 !important;
}
html body.woocommerce-cart .wc-block-components-quantity-selector__button:hover {
  background: var(--mt-bordo, #6B1F2E) !important;
  color: #ffffff !important;
}
html body.woocommerce-cart .wc-block-components-quantity-selector__input {
  background: transparent !important;
  border: 0 !important;
  border-left: 1px solid var(--mt-border, #2A1F0E) !important;
  border-right: 1px solid var(--mt-border, #2A1F0E) !important;
  color: var(--mt-gold-light, #E8D9B0) !important;
  width: 50px !important;
  text-align: center !important;
  font-family: var(--font-sans, 'Inter', sans-serif) !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  padding: 0 !important;
  height: 100% !important;
}
/* Botão remover — só a lixeira (sem o × antes) */
html body.woocommerce-cart .wc-block-cart-item__remove-link,
html body.woocommerce-cart button.wc-block-cart-item__remove-link {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: transparent !important;
  color: var(--mt-gold-dark, #8B7355) !important;
  border: 0 !important;
  border-radius: 50% !important;
  width: 32px !important;
  height: 32px !important;
  padding: 0 !important;
  /* Esconde qualquer texto/× que venha junto do ícone — só sobra o SVG da lixeira */
  font-size: 0 !important;
  text-decoration: none !important;
  transition: all 0.2s ease !important;
  margin: 0 !important;
  cursor: pointer !important;
}
html body.woocommerce-cart .wc-block-cart-item__remove-link::before,
html body.woocommerce-cart .wc-block-cart-item__remove-link::after {
  content: none !important;
  display: none !important;
}
html body.woocommerce-cart .wc-block-cart-item__remove-link svg {
  width: 20px !important;
  height: 20px !important;
  fill: currentColor !important;
}
html body.woocommerce-cart .wc-block-cart-item__remove-link:hover {
  background: var(--mt-bordo, #6B1F2E) !important;
  color: #ffffff !important;
  transform: scale(1.1) !important;
}
/* Coluna de totais — só o container externo tem borda */
html body.woocommerce-cart .wp-block-woocommerce-cart-totals-block {
  background: var(--mt-bg-secondary, #0F0A05) !important;
  border: 1px solid var(--mt-border, #2A1F0E) !important;
  border-radius: 4px !important;
  padding: 24px !important;
}
/* Sem borda/box em sub-blocos internos */
html body.woocommerce-cart .wp-block-woocommerce-cart-totals-block .wp-block-woocommerce-cart-order-summary-block,
html body.woocommerce-cart .wp-block-woocommerce-cart-order-summary-coupon-form-block,
html body.woocommerce-cart .wp-block-woocommerce-cart-order-summary-subtotal-block,
html body.woocommerce-cart .wp-block-woocommerce-cart-order-summary-shipping-block,
html body.woocommerce-cart .wp-block-woocommerce-cart-order-summary-taxes-block,
html body.woocommerce-cart .wp-block-woocommerce-cart-order-summary-discount-block,
html body.woocommerce-cart .wp-block-woocommerce-cart-order-summary-fee-block,
html body.woocommerce-cart .wp-block-woocommerce-cart-order-summary-totals-block,
html body.woocommerce-cart .wp-block-woocommerce-cart-order-summary-heading-block,
html body.woocommerce-cart .wc-block-components-panel,
html body.woocommerce-cart .wc-block-components-totals-wrapper,
html body.woocommerce-cart .wc-block-components-totals-coupon,
html body.woocommerce-cart .wc-block-components-totals-coupon__content,
html body.woocommerce-cart .wc-block-components-totals-footer-item {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
}
html body.woocommerce-cart .wc-block-components-totals-item {
  background: transparent !important;
  color: var(--mt-gold-light, #E8D9B0) !important;
  font-size: 13px !important;
  padding: 10px 0 !important;
  border-bottom: 1px dashed rgba(212, 175, 55, 0.12) !important;
  margin: 0 !important;
}
html body.woocommerce-cart .wc-block-components-totals-item__label,
html body.woocommerce-cart .wc-block-components-totals-item__value {
  color: var(--mt-gold-light, #E8D9B0) !important;
}
html body.woocommerce-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
html body.woocommerce-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
  color: var(--mt-gold, #D4AF37) !important;
  font-size: 16px !important;
  font-weight: 700 !important;
}
html body.woocommerce-cart .wc-block-components-panel,
html body.woocommerce-cart .wc-block-components-panel__button {
  background: transparent !important;
  color: var(--mt-gold-light, #E8D9B0) !important;
  border: 0 !important;
}
html body.woocommerce-cart .wp-block-woocommerce-cart-order-summary-heading-block h2,
html body.woocommerce-cart .wc-block-cart__totals-title {
  color: var(--mt-gold, #D4AF37) !important;
  font-family: var(--font-sans, 'Inter', sans-serif) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  letter-spacing: 3px !important;
  text-transform: uppercase !important;
  border-bottom: 1px solid var(--mt-border, #2A1F0E) !important;
  padding: 0 0 14px !important;
  margin: 0 0 14px !important;
  background: transparent !important;
}
/* Botão "Finalizar compra" / Proceed to checkout */
html body.woocommerce-cart .wc-block-cart__submit-button,
html body.woocommerce-cart .wc-block-components-checkout-button,
html body.woocommerce-cart a.wc-block-components-checkout-button,
html body.woocommerce-cart button.wc-block-cart__submit-button,
html body.woocommerce-cart .wp-block-woocommerce-proceed-to-checkout-block a,
html body.woocommerce-cart .wp-block-woocommerce-proceed-to-checkout-block button {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  background: #ffffff !important;
  background-color: #ffffff !important;
  color: #0A0A0A !important;
  border: 0 !important;
  border-radius: 3px !important;
  padding: 0 18px !important;
  height: 40px !important;
  min-height: 40px !important;
  max-height: 40px !important;
  font-family: var(--font-sans, 'Inter', sans-serif) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  text-align: center !important;
  text-decoration: none !important;
  transition: background 0.2s, color 0.2s !important;
  box-shadow: none !important;
  margin-top: 14px !important;
  line-height: 1 !important;
  vertical-align: middle !important;
}
/* Filhos (span do texto): centralizam vertical e horizontal dentro do botão */
html body.woocommerce-cart .wc-block-cart__submit-button *,
html body.woocommerce-cart .wp-block-woocommerce-proceed-to-checkout-block a *,
html body.woocommerce-cart .wp-block-woocommerce-proceed-to-checkout-block button *,
html body.woocommerce-cart .wc-block-components-button__text {
  background: transparent !important;
  color: #0A0A0A !important;
  text-decoration: none !important;
  padding: 0 !important;
  margin: 0 !important;
  text-align: center !important;
  width: auto !important;
  flex: 0 1 auto !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 1 !important;
  vertical-align: middle !important;
  align-self: center !important;
}
html body.woocommerce-cart .wc-block-cart__submit-button:hover,
html body.woocommerce-cart .wc-block-components-checkout-button:hover,
html body.woocommerce-cart .wp-block-woocommerce-proceed-to-checkout-block a:hover,
html body.woocommerce-cart .wp-block-woocommerce-proceed-to-checkout-block button:hover {
  background: var(--mt-gold-light, #E8D9B0) !important;
  background-color: var(--mt-gold-light, #E8D9B0) !important;
  color: #0A0A0A !important;
}
/* Reset interno: spans/textos do botão herdam cor preta sobre fundo branco */
html body.woocommerce-cart .wc-block-cart__submit-button .wc-block-components-button__text,
html body.woocommerce-cart .wp-block-woocommerce-proceed-to-checkout-block a .wc-block-components-button__text,
html body.woocommerce-cart .wp-block-woocommerce-proceed-to-checkout-block button .wc-block-components-button__text {
  color: #0A0A0A !important;
  background: transparent !important;
  text-decoration: none !important;
}
/* SUPER AGRESSIVO: remove sublinhado em qualquer botão WC Block do carrinho/checkout */
html body a.wc-block-components-button,
html body a.wc-block-components-button *,
html body a.wc-block-components-button span,
html body a.wc-block-components-button .wc-block-components-button__text,
html body a.wc-block-components-button.wc-block-cart__submit-button,
html body a.wc-block-components-button.wc-block-cart__submit-button *,
html body button.wc-block-components-button,
html body button.wc-block-components-button *,
html body button.wc-block-components-button span,
html body button.wc-block-components-button .wc-block-components-button__text,
html body .wp-block-woocommerce-proceed-to-checkout-block a,
html body .wp-block-woocommerce-proceed-to-checkout-block a *,
html body .wp-block-woocommerce-proceed-to-checkout-block a span,
html body .wp-block-woocommerce-proceed-to-checkout-block button,
html body .wp-block-woocommerce-proceed-to-checkout-block button *,
html body .wc-block-cart__submit-container a,
html body .wc-block-cart__submit-container a *,
html body .wc-block-cart__submit-container button,
html body .wc-block-cart__submit-container button * {
  text-decoration: none !important;
  text-decoration-line: none !important;
  border-bottom: 0 !important;
  outline: 0 !important;
}
html body a.wc-block-components-button:hover,
html body a.wc-block-components-button:hover *,
html body a.wc-block-components-button:focus,
html body a.wc-block-components-button:focus *,
html body a.wc-block-components-button:active,
html body a.wc-block-components-button:active *,
html body a.wc-block-components-button:visited,
html body a.wc-block-components-button:visited * {
  text-decoration: none !important;
  text-decoration-line: none !important;
  border-bottom: 0 !important;
}

/* Remove sublinhado em todos os estados + nos elementos filhos */
html body.woocommerce-cart .wc-block-cart__submit-button,
html body.woocommerce-cart .wc-block-cart__submit-button:hover,
html body.woocommerce-cart .wc-block-cart__submit-button:focus,
html body.woocommerce-cart .wc-block-cart__submit-button:active,
html body.woocommerce-cart .wc-block-cart__submit-button:visited,
html body.woocommerce-cart .wc-block-cart__submit-button *,
html body.woocommerce-cart .wc-block-components-checkout-button,
html body.woocommerce-cart .wc-block-components-checkout-button:hover,
html body.woocommerce-cart .wc-block-components-checkout-button:focus,
html body.woocommerce-cart .wc-block-components-checkout-button:active,
html body.woocommerce-cart .wc-block-components-checkout-button:visited,
html body.woocommerce-cart .wc-block-components-checkout-button *,
html body.woocommerce-cart a.wc-block-components-checkout-button,
html body.woocommerce-cart a.wc-block-components-checkout-button:hover,
html body.woocommerce-cart a.wc-block-components-checkout-button:focus,
html body.woocommerce-cart a.wc-block-components-checkout-button:active,
html body.woocommerce-cart .wp-block-woocommerce-proceed-to-checkout-block a,
html body.woocommerce-cart .wp-block-woocommerce-proceed-to-checkout-block a:hover,
html body.woocommerce-cart .wp-block-woocommerce-proceed-to-checkout-block a:focus,
html body.woocommerce-cart .wp-block-woocommerce-proceed-to-checkout-block a:active,
html body.woocommerce-cart .wp-block-woocommerce-proceed-to-checkout-block a *,
html body.woocommerce-cart .wc-block-components-button,
html body.woocommerce-cart .wc-block-components-button:hover,
html body.woocommerce-cart .wc-block-components-button:focus,
html body.woocommerce-cart .wc-block-components-button *,
html body.woocommerce-cart .wc-block-components-button__text {
  text-decoration: none !important;
  outline: 0 !important;
  -webkit-tap-highlight-color: transparent !important;
}

/* Estabiliza o botão "Comprar agora" no carrinho mobile — sem flicker no load */
@media (max-width: 768px) {
  html body.woocommerce-cart .wc-block-cart__submit-button,
  html body.woocommerce-cart .wc-block-components-checkout-button,
  html body.woocommerce-cart .wp-block-woocommerce-proceed-to-checkout-block a {
    transition: background 0.2s !important;
    animation: none !important;
    transform: none !important;
    will-change: auto !important;
    contain: layout style !important;
  }
  /* Container do submit ocupa largura total e tem altura mínima fixa pra não "pular" */
  html body.woocommerce-cart .wc-block-cart__submit-container,
  html body.woocommerce-cart .wp-block-woocommerce-proceed-to-checkout-block {
    min-height: 60px !important;
    width: 100% !important;
    box-sizing: border-box !important;
    position: static !important;
  }
}

/* REMOVE o botão FIXO/STICKY que aparece flutuando no rodapé do mobile (Cart Block sticky CTA).
   Mantemos APENAS o botão inline (dentro do summary). */
html body.woocommerce-cart .wc-block-cart__submit-container--sticky,
html body.woocommerce-cart .wc-block-cart__sticky-button,
html body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart__submit-container.wc-block-cart__submit-container--sticky,
html body.woocommerce-cart [class*="sticky"][class*="submit"],
html body.woocommerce-cart [class*="floating"][class*="checkout"],
html body.woocommerce-cart .wc-block-checkout__sticky-button {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  position: static !important;
}
/* Defensivo: se algum elemento tem position:fixed no fundo do carrinho, remove */
html body.woocommerce-cart .wc-block-cart__submit-container,
html body.woocommerce-cart .wc-block-cart__sidebar,
html body.woocommerce-cart .wp-block-woocommerce-proceed-to-checkout-block {
  position: static !important;
  bottom: auto !important;
}

/* RESERVA ESPAÇO pra barra de frete grátis (plugin Better Shipping Calc) ANTES
   dela renderizar via JS — evita layout shift que faz o botão "Comprar Agora" pular. */
html body.woocommerce-cart .wc-better-shipping-progress-bar,
html body.woocommerce-checkout .wc-better-shipping-progress-bar {
  min-height: 56px !important;
  margin: 12px 0 !important;
  contain: layout style !important;
  transition: opacity 0.25s ease !important;
}
/* Container alvo onde o plugin INJETA a barra (ANTES da injeção): reserva o slot */
html body.woocommerce-cart .wp-block-woocommerce-cart-order-summary-heading-block,
html body.woocommerce-cart .wc-block-components-checkout-order-summary__title {
  min-height: 80px !important;
  position: relative !important;
}
/* Esconde flash inicial da barra (fade-in suave após render) */
html body .wc-better-shipping-progress-bar:not(.mt-loaded) {
  opacity: 0;
}
html body .wc-better-shipping-progress-bar.mt-loaded {
  opacity: 1;
}
/* Cupom (input + botão) */
html body.woocommerce-cart .wc-block-components-totals-coupon input[type="text"],
html body.woocommerce-cart .wc-block-components-totals-coupon-link {
  background: var(--mt-bg-secondary, #0F0A05) !important;
  color: var(--mt-gold-light, #E8D9B0) !important;
  border: 1px solid var(--mt-border, #2A1F0E) !important;
  border-radius: 3px !important;
  font-family: var(--font-sans, 'Inter', sans-serif) !important;
}
html body.woocommerce-cart .wc-block-components-totals-coupon button,
html body.woocommerce-cart button.wc-block-components-totals-coupon__button {
  background: var(--mt-bordo, #6B1F2E) !important;
  color: #ffffff !important;
  border: 0 !important;
  border-radius: 3px !important;
  padding: 0 16px !important;
  font-family: var(--font-sans, 'Inter', sans-serif) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
}
html body.woocommerce-cart .wc-block-components-totals-coupon-link {
  color: var(--mt-gold, #D4AF37) !important;
  text-decoration: underline !important;
  font-size: 12px !important;
  letter-spacing: 1px !important;
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
}

/* ============================================
   CARRINHO (legado /carrinho/ via shortcode) — mantido como fallback
   ============================================ */
/* Layout geral da tabela */
html body.woocommerce-cart .woocommerce-cart-form table.shop_table,
html body.woocommerce-cart table.shop_table.cart,
html body.woocommerce-cart table.woocommerce-cart-form__contents {
  background: transparent !important;
  border: 0 !important;
  border-collapse: collapse !important;
  border-spacing: 0 !important;
  border-radius: 0 !important;
  margin: 0 0 24px !important;
  width: 100% !important;
  box-shadow: none !important;
}
/* Reset agressivo: NENHUMA borda em qualquer th/td/tr da tabela do carrinho.
   Border-bottom é re-aplicado seletivamente apenas onde queremos. */
html body.woocommerce-cart .woocommerce-cart-form table.shop_table th,
html body.woocommerce-cart .woocommerce-cart-form table.shop_table td,
html body.woocommerce-cart .woocommerce-cart-form table.shop_table tr,
html body.woocommerce-cart .woocommerce-cart-form table.shop_table tbody,
html body.woocommerce-cart .woocommerce-cart-form table.shop_table thead,
html body.woocommerce-cart table.shop_table.cart th,
html body.woocommerce-cart table.shop_table.cart td,
html body.woocommerce-cart table.shop_table.cart tr,
html body.woocommerce-cart table.shop_table.cart tbody,
html body.woocommerce-cart table.shop_table.cart thead,
html body.woocommerce-cart table.woocommerce-cart-form__contents th,
html body.woocommerce-cart table.woocommerce-cart-form__contents td,
html body.woocommerce-cart table.woocommerce-cart-form__contents tr {
  border: 0 !important;
  border-top: 0 !important;
  border-left: 0 !important;
  border-right: 0 !important;
  box-shadow: none !important;
  outline: 0 !important;
}
/* Cabeçalho (PRODUTO / PREÇO / QUANTIDADE / SUBTOTAL) */
html body.woocommerce-cart table.shop_table thead {
  background: transparent !important;
}
html body.woocommerce-cart table.shop_table thead th {
  background: transparent !important;
  color: var(--mt-gold, #D4AF37) !important;
  font-family: var(--font-sans, 'Inter', sans-serif) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  border: 0 !important;
  border-bottom: 1px solid var(--mt-border, #2A1F0E) !important;
  padding: 16px 12px !important;
}
/* Células do body: sem bordas laterais, só linha divisória inferior */
html body.woocommerce-cart table.shop_table tbody tr,
html body.woocommerce-cart table.shop_table tbody tr.cart_item,
html body.woocommerce-cart table.shop_table tbody tr.woocommerce-cart-form__cart-item {
  background: transparent !important;
  border: 0 !important;
}
html body.woocommerce-cart table.shop_table tbody td {
  background: transparent !important;
  border: 0 !important;
  border-bottom: 1px solid var(--mt-border, #2A1F0E) !important;
  color: var(--mt-gold-light, #E8D9B0) !important;
  font-family: var(--font-sans, 'Inter', sans-serif) !important;
  font-size: 14px !important;
  padding: 16px 12px !important;
  vertical-align: middle !important;
}
/* Miniaturas: ocupam a célula inteira, quadradas */
html body.woocommerce-cart td.product-thumbnail {
  width: 120px !important;
  padding: 12px !important;
}
html body.woocommerce-cart td.product-thumbnail a {
  display: block !important;
  width: 100% !important;
  aspect-ratio: 1 / 1 !important;
  overflow: hidden !important;
  border-radius: 4px !important;
  background: var(--mt-bg-secondary, #0F0A05) !important;
}
html body.woocommerce-cart td.product-thumbnail img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: cover !important;
  margin: 0 !important;
}
/* Nome do produto */
html body.woocommerce-cart td.product-name a {
  color: var(--mt-gold-light, #E8D9B0) !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  font-size: 14px !important;
  letter-spacing: 0.5px !important;
}
html body.woocommerce-cart td.product-name a:hover {
  color: var(--mt-gold, #D4AF37) !important;
}
html body.woocommerce-cart td.product-name .variation {
  margin-top: 6px !important;
  font-size: 12px !important;
  color: var(--mt-gold-dark, #8B7355) !important;
}
/* Preço & subtotal */
html body.woocommerce-cart td.product-price,
html body.woocommerce-cart td.product-subtotal {
  color: var(--mt-gold-light, #E8D9B0) !important;
  font-size: 14px !important;
  font-weight: 500 !important;
}
html body.woocommerce-cart td.product-subtotal {
  color: var(--mt-gold, #D4AF37) !important;
  font-weight: 700 !important;
}
/* Input de quantidade */
html body.woocommerce-cart td.product-quantity .quantity input.qty {
  background: var(--mt-bg-secondary, #0F0A05) !important;
  color: var(--mt-gold-light, #E8D9B0) !important;
  border: 1px solid var(--mt-border, #2A1F0E) !important;
  border-radius: 3px !important;
  height: 42px !important;
  width: 70px !important;
  font-family: var(--font-sans, 'Inter', sans-serif) !important;
  font-size: 14px !important;
  text-align: center !important;
  padding: 0 !important;
}
/* Botão REMOVER (X) — arredondado, fundo sutil, hover bordo */
html body.woocommerce-cart td.product-remove {
  width: 40px !important;
  padding: 12px 6px !important;
  text-align: center !important;
}
html body.woocommerce-cart a.remove,
html body.woocommerce-cart td.product-remove a.remove {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 28px !important;
  height: 28px !important;
  border-radius: 50% !important;
  background: var(--mt-bg-secondary, #0F0A05) !important;
  color: var(--mt-gold-dark, #8B7355) !important;
  border: 1px solid var(--mt-border, #2A1F0E) !important;
  font-family: var(--font-sans, 'Inter', sans-serif) !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  transition: all 0.2s ease !important;
}
html body.woocommerce-cart a.remove:hover,
html body.woocommerce-cart td.product-remove a.remove:hover {
  background: var(--mt-bordo, #6B1F2E) !important;
  color: #ffffff !important;
  border-color: var(--mt-bordo, #6B1F2E) !important;
  transform: scale(1.08) !important;
}
/* Linha de ações: cupom + atualizar carrinho */
html body.woocommerce-cart table.shop_table tbody tr td.actions {
  padding: 20px 0 !important;
  border-bottom: 0 !important;
}
html body.woocommerce-cart .coupon {
  display: inline-flex !important;
  gap: 8px !important;
  align-items: stretch !important;
  margin-right: 12px !important;
}
html body.woocommerce-cart .coupon label.screen-reader-text { display: none !important; }
html body.woocommerce-cart .coupon input[type="text"],
html body.woocommerce-cart input#coupon_code {
  background: var(--mt-bg-secondary, #0F0A05) !important;
  color: var(--mt-gold-light, #E8D9B0) !important;
  border: 1px solid var(--mt-border, #2A1F0E) !important;
  border-radius: 3px !important;
  padding: 0 14px !important;
  height: 42px !important;
  font-size: 13px !important;
  min-width: 180px !important;
  font-family: var(--font-sans, 'Inter', sans-serif) !important;
}
html body.woocommerce-cart .coupon button[name="apply_coupon"],
html body.woocommerce-cart button[name="update_cart"],
html body.woocommerce-cart input[name="update_cart"] {
  background: var(--mt-bordo, #6B1F2E) !important;
  color: var(--mt-gold-light, #E8D9B0) !important;
  border: 1px solid var(--mt-bordo, #6B1F2E) !important;
  border-radius: 3px !important;
  padding: 0 20px !important;
  height: 42px !important;
  font-family: var(--font-sans, 'Inter', sans-serif) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
  transition: background 0.2s ease !important;
}
html body.woocommerce-cart .coupon button[name="apply_coupon"]:hover,
html body.woocommerce-cart button[name="update_cart"]:hover,
html body.woocommerce-cart input[name="update_cart"]:hover {
  background: var(--mt-bordo-dark, #4A1520) !important;
  border-color: var(--mt-bordo-dark, #4A1520) !important;
}
html body.woocommerce-cart button[name="update_cart"][disabled],
html body.woocommerce-cart input[name="update_cart"][disabled] {
  opacity: 0.5 !important;
  cursor: not-allowed !important;
}
/* Totais (lado direito) */
html body.woocommerce-cart .cart_totals {
  background: var(--mt-bg-secondary, #0F0A05) !important;
  border: 1px solid var(--mt-border, #2A1F0E) !important;
  border-radius: 4px !important;
  padding: 24px !important;
}
html body.woocommerce-cart .cart_totals h2 {
  color: var(--mt-gold, #D4AF37) !important;
  font-family: var(--font-sans, 'Inter', sans-serif) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  letter-spacing: 3px !important;
  text-transform: uppercase !important;
  border-bottom: 1px solid var(--mt-border, #2A1F0E) !important;
  padding-bottom: 14px !important;
  margin: 0 0 14px !important;
}
html body.woocommerce-cart .cart_totals table.shop_table {
  margin: 0 !important;
  border: 0 !important;
}
html body.woocommerce-cart .cart_totals table.shop_table th,
html body.woocommerce-cart .cart_totals table.shop_table td {
  background: transparent !important;
  color: var(--mt-gold-light, #E8D9B0) !important;
  border: 0 !important;
  border-bottom: 1px dashed rgba(212, 175, 55, 0.12) !important;
  padding: 12px 8px !important;
  font-size: 13px !important;
  font-family: var(--font-sans, 'Inter', sans-serif) !important;
}
html body.woocommerce-cart .cart_totals table.shop_table tr:last-child th,
html body.woocommerce-cart .cart_totals table.shop_table tr:last-child td {
  border-bottom: 0 !important;
}
html body.woocommerce-cart .cart_totals table.shop_table tr.order-total th,
html body.woocommerce-cart .cart_totals table.shop_table tr.order-total td {
  color: var(--mt-gold, #D4AF37) !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  padding-top: 16px !important;
}
html body.woocommerce-cart .cart_totals .wc-proceed-to-checkout {
  margin-top: 18px !important;
  padding: 0 !important;
}
html body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
html body.woocommerce-cart a.checkout-button.button {
  display: block !important;
  width: 100% !important;
  background: var(--mt-bordo, #6B1F2E) !important;
  color: #ffffff !important;
  border: 0 !important;
  border-radius: 3px !important;
  padding: 16px !important;
  font-family: var(--font-sans, 'Inter', sans-serif) !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: 3px !important;
  text-transform: uppercase !important;
  text-align: center !important;
  text-decoration: none !important;
  transition: background 0.2s !important;
  box-shadow: none !important;
}
html body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover {
  background: var(--mt-bordo-dark, #4A1520) !important;
  color: #ffffff !important;
}
/* Aviso/cupom WC notices */
html body.woocommerce-cart .woocommerce-notices-wrapper .woocommerce-message,
html body.woocommerce-cart .woocommerce-notices-wrapper .woocommerce-info,
html body.woocommerce-cart .woocommerce-notices-wrapper .woocommerce-error {
  background: var(--mt-bg-secondary, #0F0A05) !important;
  color: var(--mt-gold-light, #E8D9B0) !important;
  border: 0 !important;
  margin: 0 0 16px !important;
}
/* Mobile: empilha cupom + atualizar */
@media (max-width: 700px) {
  html body.woocommerce-cart .coupon,
  html body.woocommerce-cart .coupon input[type="text"],
  html body.woocommerce-cart .coupon button[name="apply_coupon"],
  html body.woocommerce-cart button[name="update_cart"] {
    width: 100% !important;
    margin: 0 0 8px !important;
  }
  html body.woocommerce-cart .coupon {
    flex-wrap: wrap !important;
  }
  html body.woocommerce-cart td.product-thumbnail { width: 90px !important; }

  /* CARRINHO BLOCK no mobile: imagem menor + textos não sobreposições */
  html body.woocommerce-cart .wc-block-cart-item__image,
  html body.woocommerce-cart td.wc-block-cart-item__image {
    width: 80px !important;
    padding: 8px !important;
  }
  html body.woocommerce-cart .wc-block-cart-items td,
  html body.woocommerce-cart .wc-block-cart-items__row td {
    padding: 10px 6px !important;
    vertical-align: top !important;
  }
  html body.woocommerce-cart .wc-block-cart-item__product .wc-block-components-product-name,
  html body.woocommerce-cart .wc-block-cart-item__product {
    font-size: 13px !important;
  }
  html body.woocommerce-cart .wc-block-cart-item__total .wc-block-components-formatted-money-amount,
  html body.woocommerce-cart .wc-block-cart-item__prices {
    font-size: 13px !important;
    white-space: normal !important;
  }
  /* Stepper de quantidade compacto */
  html body.woocommerce-cart .wc-block-components-quantity-selector {
    height: 36px !important;
  }
  html body.woocommerce-cart .wc-block-components-quantity-selector__button {
    width: 30px !important;
    font-size: 16px !important;
  }
  html body.woocommerce-cart .wc-block-components-quantity-selector__input {
    width: 36px !important;
    font-size: 13px !important;
  }
  /* Garante que cada td não sobreponha o vizinho */
  html body.woocommerce-cart .wc-block-cart-items {
    table-layout: auto !important;
  }
}

/* ============================================
   LOJA (/loja/) — Layout 2 colunas: sidebar lateral + grid de produtos
   ============================================ */
html body.mt-pagina-loja .mt-shop-layout {
  display: grid;
  grid-template-columns: 240px 1fr;
  gap: 28px;
  align-items: start;
  margin: 16px 0 32px;
}
@media (max-width: 900px) {
  html body.mt-pagina-loja .mt-shop-layout { grid-template-columns: 1fr; }
}
html body.mt-pagina-loja .mt-shop-main { min-width: 0; }

/* Esconde título da página da loja + contador "X produtos" */
html body.mt-pagina-loja .woocommerce-products-header,
html body.mt-pagina-loja .woocommerce-products-header__title,
html body.mt-pagina-loja .page-title,
html body.mt-pagina-loja h1.entry-title,
html body.mt-pagina-loja .mt-shop-count {
  display: none !important;
}
/* Esconde paginação em TODAS as páginas (loja, categoria, tag, busca, related, etc) */
html body .woocommerce-pagination,
html body nav.woocommerce-pagination,
html body .woocommerce-pagination ul,
html body .woocommerce-pagination ul.page-numbers,
html body nav.pagination,
html body .pagination,
html body .mt-shop-pagination,
html body .mt-shop-pag,
html body .mt-shop-pag-btn,
html body ul.page-numbers,
html body .page-numbers:not(li),
html body .storefront-sorting + nav,
html body .woocommerce-page nav.woocommerce-pagination,
html body .mt-shop-main nav.woocommerce-pagination,
html body .mt-shop-main .woocommerce-pagination {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}
/* Topbar: label da categoria à esquerda, sort à direita */
html body.mt-pagina-loja .mt-shop-topbar {
  justify-content: space-between !important;
}
html body.mt-pagina-loja .mt-shop-sort {
  margin-left: auto !important;
}
/* Esconde o label "Ordenar:" — desktop e mobile (deixa só o select) */
html body .mt-shop-sort-label,
html body label.mt-shop-sort-label,
html body form.mt-shop-sort label.mt-shop-sort-label {
  display: none !important;
}
html body .mt-shop-cat-label { display: none !important; }

/* Botão "FILTRAR" — desktop oculto, mobile visível */
html body .mt-shop-filter-toggle { display: none; }
html body .mt-sidebar-close { display: none; }

@media (max-width: 900px) {
  /* Mobile: topbar com FILTRAR à esquerda e ORDENAR à direita, MESMO TAMANHO + MESMA ESTÉTICA */
  html body.mt-pagina-loja .mt-shop-topbar {
    padding: 0 12px !important;
    box-sizing: border-box !important;
    gap: 10px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    border: 0 !important;
  }
  /* FILTRAR e form-sort com largura E altura IDÊNTICAS (50/50, 48px) */
  html body.mt-pagina-loja .mt-shop-topbar form.mt-shop-sort,
  html body.mt-pagina-loja .mt-shop-topbar > .mt-shop-filter-toggle {
    width: calc(50% - 5px) !important;
    flex: 0 0 calc(50% - 5px) !important;
    min-width: 0 !important;
    max-width: calc(50% - 5px) !important;
    height: 48px !important;
    min-height: 48px !important;
    max-height: 48px !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
    align-self: center !important;
    display: flex !important;
    align-items: center !important;
  }
  /* Select interno preenche 100% do form */
  html body.mt-pagina-loja .mt-shop-topbar form.mt-shop-sort > select#mt-orderby {
    width: 100% !important;
    height: 48px !important;
    margin: 0 !important;
    align-self: stretch !important;
  }
  /* Botão FILTRAR + Select ORDENAR — visualmente IDÊNTICOS */
  html body.mt-pagina-loja .mt-shop-topbar > .mt-shop-filter-toggle,
  html body.mt-pagina-loja .mt-shop-topbar select#mt-orderby {
    height: 48px !important;
    min-height: 48px !important;
    max-height: 48px !important;
    line-height: 46px !important;
    padding: 0 16px !important;
    box-sizing: border-box !important;
    margin: 0 !important;
    width: 100% !important;
    background: transparent !important;
    background-color: transparent !important;
    color: var(--mt-gold-light, #E8D9B0) !important;
    border: 1px solid var(--mt-gold-dark, #8B7355) !important;
    border-radius: 3px !important;
    font-family: var(--font-sans, 'Inter', sans-serif) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    letter-spacing: 1.5px !important;
    text-transform: uppercase !important;
    cursor: pointer !important;
    text-align: center !important;
    text-align-last: center !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    appearance: none !important;
  }
  html body.mt-pagina-loja .mt-shop-topbar select#mt-orderby {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23E8D9B0' stroke-width='2'><polyline points='6 9 12 15 18 9'/></svg>") !important;
    background-repeat: no-repeat !important;
    background-position: right 12px center !important;
    background-size: 14px !important;
    padding-right: 36px !important;
  }
  html body.mt-pagina-loja .mt-shop-topbar > .mt-shop-filter-toggle:hover,
  html body.mt-pagina-loja .mt-shop-topbar > .mt-shop-filter-toggle[aria-expanded="true"] {
    background-color: var(--mt-gold, #D4AF37) !important;
    color: var(--mt-black, #0A0A0A) !important;
    border-color: var(--mt-gold, #D4AF37) !important;
  }

  /* LOJA mobile: força grid de 2 COLUNAS (uma fileira embaixo da outra, sem carrossel) */
  html body.mt-pagina-loja .mt-shop-main ul.mt-products-grid,
  html body.mt-pagina-loja .mt-shop-main ul.mt-shop-grid,
  html body.mt-pagina-loja .mt-shop-main ul.products {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
    overflow: visible !important;
    flex-wrap: wrap !important;
    scroll-snap-type: none !important;
  }
  html body.mt-pagina-loja .mt-shop-main ul.mt-products-grid > li.product,
  html body.mt-pagina-loja .mt-shop-main ul.mt-shop-grid > li.product,
  html body.mt-pagina-loja .mt-shop-main ul.products > li.product {
    flex: unset !important;
    min-width: 0 !important;
    max-width: 100% !important;
    width: 100% !important;
    margin: 0 !important;
    scroll-snap-align: none !important;
  }
  /* Reverte o .mt-hidden caso tenha vindo do JS de pagination da home */
  html body.mt-pagina-loja .mt-shop-main ul.mt-products-grid > li.product.mt-hidden,
  html body.mt-pagina-loja .mt-shop-main ul.mt-shop-grid > li.product.mt-hidden {
    display: flex !important;
  }

  html body .mt-shop-filter-toggle {
    display: inline-flex !important;
    align-items: center;
    gap: 8px;
    background: transparent;
    color: var(--mt-gold-light, #E8D9B0);
    border: 1px solid var(--mt-gold-dark, #8B7355);
    border-radius: 3px;
    padding: 8px 14px;
    font-family: var(--font-sans, 'Inter', sans-serif);
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    cursor: pointer;
    transition: background 0.2s, color 0.2s, border-color 0.2s;
  }
  html body .mt-shop-filter-toggle:hover,
  html body .mt-shop-filter-toggle[aria-expanded="true"] {
    background: var(--mt-gold, #D4AF37);
    color: var(--mt-black, #0A0A0A);
    border-color: var(--mt-gold, #D4AF37);
  }
}

/* Drawer / overlay do sidebar no mobile */
@media (max-width: 900px) {
  /* Escondido por padrão */
  html body .mt-shop-sidebar {
    display: none;
  }
  /* Quando aberto: drawer da esquerda com margens */
  html body.mt-sidebar-open .mt-shop-sidebar {
    display: block !important;
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: calc(100% - 56px) !important;
    max-width: 360px !important;
    height: 100vh !important;
    z-index: 9999 !important;
    overflow-y: auto !important;
    background: var(--mt-bg-primary, #0A0705) !important;
    padding: 56px 22px 28px !important;
    box-shadow: 4px 0 28px rgba(0,0,0,0.6) !important;
    border-right: 1px solid var(--mt-border, #2A1F0E) !important;
    margin: 0 !important;
  }
  /* Backdrop escuro atrás do drawer */
  html body.mt-sidebar-open::after {
    content: '';
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.6);
    z-index: 9998;
  }
  /* Trava o scroll do body enquanto o drawer está aberto */
  html body.mt-sidebar-open {
    overflow: hidden !important;
  }
  /* Botão × no canto superior direito do drawer */
  html body .mt-sidebar-close {
    display: block !important;
    position: absolute;
    top: 12px;
    right: 14px;
    background: transparent;
    border: 0;
    color: var(--mt-gold-light, #E8D9B0);
    font-size: 28px;
    line-height: 1;
    width: 36px;
    height: 36px;
    cursor: pointer;
    padding: 0;
    z-index: 1;
  }
  html body .mt-sidebar-close:hover { color: var(--mt-gold, #D4AF37); }
}

/* Sidebar — sem borda externa, transparente, integrada à página */
html body .mt-shop-sidebar {
  background: transparent;
  border: 0;
  border-radius: 0;
  padding: 0 18px 0 0;
  position: sticky;
  top: 24px;
  font-family: var(--font-sans, 'Inter', sans-serif);
}
html body .mt-shop-sidebar-form { display: block; }
html body .mt-sidebar-block { margin-bottom: 22px; }
html body .mt-sidebar-block:last-child { margin-bottom: 0; }
html body .mt-sidebar-title {
  font-family: var(--font-sans, 'Inter', sans-serif) !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
  color: var(--mt-gold, #D4AF37) !important;
  margin: 0 0 12px !important;
  padding: 0 0 8px !important;
  border-bottom: 1px solid var(--mt-border, #2A1F0E) !important;
}
html body .mt-sidebar-title-section {
  margin-top: 8px !important;
  padding-top: 12px !important;
}
html body .mt-sidebar-subtitle {
  font-family: var(--font-sans, 'Inter', sans-serif) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
  color: var(--mt-gold-light, #E8D9B0) !important;
  margin: 0 0 10px !important;
}
html body .mt-sidebar-search {
  background: var(--mt-black, #0A0A0A) !important;
  color: var(--mt-gold-light, #E8D9B0) !important;
  border: 1px solid var(--mt-border, #2A1F0E) !important;
  border-radius: 3px !important;
  padding: 10px 12px !important;
  height: 38px !important;
  width: 100% !important;
  font-family: var(--font-sans, 'Inter', sans-serif) !important;
  font-size: 13px !important;
  box-sizing: border-box !important;
}
html body .mt-sidebar-search:focus {
  border-color: var(--mt-gold, #D4AF37) !important;
  outline: 0 !important;
}
/* Lista de categorias */
html body .mt-sidebar-list {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}
html body .mt-sidebar-list li { margin: 0 !important; padding: 0 !important; }
html body .mt-sidebar-list li a {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  padding: 7px 0 !important;
  color: var(--mt-gold-light, #E8D9B0) !important;
  font-size: 13px !important;
  text-decoration: none !important;
  letter-spacing: 0.3px !important;
  border-bottom: 1px dashed rgba(212, 175, 55, 0.08) !important;
  transition: color 0.2s !important;
}
html body .mt-sidebar-list li:last-child a { border-bottom: 0 !important; }
html body .mt-sidebar-list li a:hover {
  color: var(--mt-gold, #D4AF37) !important;
}
/* Categoria ativa: cores invertidas (fundo dourado, texto preto) */
html body .mt-sidebar-list li a.active {
  color: var(--mt-black, #0A0A0A) !important;
  background: var(--mt-gold, #D4AF37) !important;
  padding: 7px 10px !important;
  margin: 0 -10px !important;
  border-radius: 3px !important;
  border-bottom-color: transparent !important;
  font-weight: 600 !important;
}
html body .mt-sidebar-list .mt-sidebar-count,
html body .mt-sidebar-checkboxes .mt-sidebar-count {
  color: var(--mt-gold-dark, #8B7355) !important;
  font-size: 11px !important;
  font-style: normal !important;
}

/* Checkboxes (Volume, Gênero, etc.) */
html body .mt-sidebar-checkboxes {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  max-height: 220px;
  overflow-y: auto;
}
html body .mt-sidebar-checkboxes::-webkit-scrollbar { width: 6px; }
html body .mt-sidebar-checkboxes::-webkit-scrollbar-thumb { background: var(--mt-border, #2A1F0E); border-radius: 3px; }
html body .mt-sidebar-checkboxes li { margin: 0 !important; padding: 0 !important; }
html body .mt-sidebar-checkboxes label {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  padding: 6px 0 !important;
  cursor: pointer !important;
  color: var(--mt-gold-light, #E8D9B0) !important;
  font-size: 13px !important;
  letter-spacing: 0.3px !important;
}
html body .mt-sidebar-checkboxes input[type="checkbox"] {
  position: absolute !important;
  opacity: 0 !important;
  pointer-events: none !important;
}
html body .mt-sidebar-checkboxes .mt-cb-mark {
  width: 16px !important;
  height: 16px !important;
  background: var(--mt-black, #0A0A0A) !important;
  border: 1.5px solid var(--mt-gold-dark, #8B7355) !important;
  border-radius: 3px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 auto !important;
  position: relative;
  transition: border-color 0.15s, background 0.15s;
}
html body .mt-sidebar-checkboxes input[type="checkbox"]:checked + .mt-cb-mark {
  border-color: var(--mt-gold, #D4AF37) !important;
  background: var(--mt-gold, #D4AF37) !important;
}
html body .mt-sidebar-checkboxes input[type="checkbox"]:checked + .mt-cb-mark::after {
  content: "";
  width: 10px; height: 6px;
  border-left: 2px solid var(--mt-black, #0A0A0A);
  border-bottom: 2px solid var(--mt-black, #0A0A0A);
  transform: rotate(-45deg) translate(0, -1px);
  position: absolute;
}
html body .mt-sidebar-checkboxes label:hover .mt-cb-mark {
  border-color: var(--mt-gold, #D4AF37) !important;
}
html body .mt-cb-label {
  flex: 1;
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 6px;
}

/* Preço */
html body .mt-sidebar-price {
  display: flex;
  gap: 6px;
}
html body .mt-sidebar-price input {
  flex: 1 1 0;
  min-width: 0 !important;
  background: var(--mt-black, #0A0A0A) !important;
  color: var(--mt-gold-light, #E8D9B0) !important;
  border: 1px solid var(--mt-border, #2A1F0E) !important;
  border-radius: 3px !important;
  padding: 8px 10px !important;
  height: 36px !important;
  font-family: var(--font-sans, 'Inter', sans-serif) !important;
  font-size: 13px !important;
  box-sizing: border-box !important;
  -moz-appearance: textfield !important;
  appearance: textfield !important;
}
/* Remove setinhas do number input no Chrome/Safari/Edge */
html body .mt-sidebar-price input::-webkit-outer-spin-button,
html body .mt-sidebar-price input::-webkit-inner-spin-button {
  -webkit-appearance: none !important;
  appearance: none !important;
  margin: 0 !important;
  display: none !important;
}

/* Ações sidebar */
html body .mt-sidebar-actions {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-top: 18px;
  padding-top: 16px;
  border-top: 1px solid var(--mt-border, #2A1F0E);
}
html body .mt-sidebar-apply {
  background: var(--mt-bordo, #6B1F2E) !important;
  color: #ffffff !important;
  border: 0 !important;
  border-radius: 3px !important;
  padding: 12px !important;
  font-family: var(--font-sans, 'Inter', sans-serif) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
  transition: background 0.2s !important;
}
html body .mt-sidebar-apply:hover { background: var(--mt-bordo-dark, #4A1520) !important; }
html body .mt-sidebar-clear {
  text-align: center !important;
  color: var(--mt-gold-dark, #8B7355) !important;
  font-size: 12px !important;
  text-decoration: underline !important;
  letter-spacing: 0.5px !important;
}
html body .mt-sidebar-clear:hover { color: var(--mt-gold, #D4AF37) !important; }

/* Top bar (sort + count) */
html body .mt-shop-topbar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  padding: 0;
  margin: 0 0 20px;
  border-bottom: 0;
}
html body .mt-shop-count {
  font-family: var(--font-sans, 'Inter', sans-serif);
  font-size: 12px;
  letter-spacing: 0.5px;
  color: var(--mt-gold-dark, #8B7355);
  text-transform: uppercase;
}
html body .mt-shop-sort {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}
html body .mt-shop-sort-label {
  font-family: var(--font-sans, 'Inter', sans-serif);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: var(--mt-gold-dark, #8B7355);
}
html body .mt-shop-sort select {
  background: var(--mt-bg-secondary, #0F0A05) !important;
  color: var(--mt-gold-light, #E8D9B0) !important;
  border: 1px solid var(--mt-border, #2A1F0E) !important;
  border-radius: 3px !important;
  padding: 8px 36px 8px 14px !important;
  height: 38px !important;
  font-family: var(--font-sans, 'Inter', sans-serif) !important;
  font-size: 13px !important;
  cursor: pointer !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path fill='%23D4AF37' d='M6 8L0 0h12z'/></svg>") !important;
  background-repeat: no-repeat !important;
  background-position: right 12px center !important;
}

/* ============================================
   LOJA (/loja/) — Barra de filtros antiga (mantida só pra retrocompat)
   ============================================ */
html body .mt-shop-filters-wrap {
  background: var(--mt-bg-secondary, #0F0A05);
  border: 1px solid var(--mt-border, #2A1F0E);
  border-radius: 4px;
  padding: 18px 20px;
  margin: 0 0 24px;
}
html body .mt-shop-filters {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 14px 16px;
  align-items: end;
}
html body .mt-shop-filters-row {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
html body .mt-shop-filters-row.mt-shop-filters-search {
  grid-column: 1 / -1;
}
html body .mt-filter-label {
  font-family: var(--font-sans, 'Inter', sans-serif);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: var(--mt-gold, #D4AF37);
}
html body .mt-shop-filters input.mt-filter-input,
html body .mt-shop-filters select.mt-filter-input {
  background: var(--mt-black, #0A0A0A) !important;
  color: var(--mt-gold-light, #E8D9B0) !important;
  border: 1px solid var(--mt-border, #2A1F0E) !important;
  border-radius: 3px !important;
  padding: 10px 12px !important;
  height: 42px !important;
  font-family: var(--font-sans, 'Inter', sans-serif) !important;
  font-size: 13px !important;
  letter-spacing: 0.3px !important;
  width: 100% !important;
  box-sizing: border-box !important;
  appearance: none;
  -webkit-appearance: none;
}
html body .mt-shop-filters select.mt-filter-input {
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path fill='%23D4AF37' d='M6 8L0 0h12z'/></svg>") !important;
  background-repeat: no-repeat !important;
  background-position: right 12px center !important;
  padding-right: 32px !important;
}
html body .mt-shop-filters input.mt-filter-input:focus,
html body .mt-shop-filters select.mt-filter-input:focus {
  border-color: var(--mt-gold, #D4AF37) !important;
  outline: 0 !important;
  box-shadow: none !important;
}
html body .mt-shop-filters input.mt-filter-input::placeholder {
  color: var(--mt-gold-dark, #8B7355) !important;
  opacity: 0.8;
}
html body .mt-shop-filters-price .mt-price-pair {
  display: flex;
  gap: 6px;
}
html body .mt-shop-filters-price .mt-price-pair input {
  flex: 1 1 0;
  min-width: 0;
}
html body .mt-shop-filters-actions {
  display: flex;
  gap: 8px;
  align-items: stretch;
  grid-column: 1 / -1;
  justify-content: flex-end;
  flex-wrap: wrap;
  margin-top: 4px;
}
html body .mt-filter-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 42px !important;
  padding: 0 22px !important;
  border-radius: 3px !important;
  font-family: var(--font-sans, 'Inter', sans-serif) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  cursor: pointer !important;
  transition: background 0.2s, color 0.2s !important;
  border: 1px solid transparent !important;
}
html body .mt-filter-btn-apply {
  background: var(--mt-bordo, #6B1F2E) !important;
  color: #ffffff !important;
  border-color: var(--mt-bordo, #6B1F2E) !important;
}
html body .mt-filter-btn-apply:hover {
  background: var(--mt-bordo-dark, #4A1520) !important;
  border-color: var(--mt-bordo-dark, #4A1520) !important;
}
html body .mt-filter-btn-clear {
  background: transparent !important;
  color: var(--mt-gold-dark, #8B7355) !important;
  border-color: var(--mt-border, #2A1F0E) !important;
}
html body .mt-filter-btn-clear:hover {
  color: var(--mt-gold, #D4AF37) !important;
  border-color: var(--mt-gold, #D4AF37) !important;
}
html body .mt-shop-filters-meta {
  grid-column: 1 / -1;
  font-family: var(--font-sans, 'Inter', sans-serif);
  font-size: 12px;
  letter-spacing: 0.5px;
  color: var(--mt-gold-dark, #8B7355);
  border-top: 1px dashed rgba(212, 175, 55, 0.12);
  padding-top: 10px;
  margin-top: 4px;
}
@media (max-width: 600px) {
  html body .mt-shop-filters { grid-template-columns: 1fr 1fr !important; }
  html body .mt-shop-filters-row.mt-shop-filters-search,
  html body .mt-shop-filters-actions,
  html body .mt-shop-filters-meta { grid-column: 1 / -1; }
  html body .mt-filter-btn { flex: 1 1 auto; }
}

/* ============================================
   CHECKOUT BLOCK (/finalizar-compra/) — paleta + fontes do site
   ============================================ */
/* Esconde o título grande "Finalizar compra" */
html body.woocommerce-checkout h1.entry-title,
html body.woocommerce-checkout .entry-header,
html body.woocommerce-checkout .page-title {
  display: none !important;
}
/* Container e tipografia geral */
html body.woocommerce-checkout .wp-block-woocommerce-checkout,
html body.woocommerce-checkout .wc-block-checkout,
html body.woocommerce-checkout .wc-block-components-form {
  background: transparent !important;
  color: currentColor !important;
  font-family: var(--font-sans, 'Inter', sans-serif) !important;
}
/* Títulos de etapa (Endereço, Pagamento, etc) */
html body.woocommerce-checkout .wc-block-components-checkout-step__title,
html body.woocommerce-checkout .wc-block-components-checkout-step__heading,
html body.woocommerce-checkout .wp-block-woocommerce-checkout-fields-block h2,
html body.woocommerce-checkout .wc-block-components-title {
  color: currentColor !important;
  font-family: var(--font-sans, 'Inter', sans-serif) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  margin: 0 0 14px !important;
}
html body.woocommerce-checkout .wc-block-components-checkout-step {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  padding: 0 0 24px !important;
  margin-bottom: 24px !important;
  border-bottom: 1px solid currentColor !important;
}
html body.woocommerce-checkout .wc-block-components-checkout-step:last-of-type {
  border-bottom: 0 !important;
}
html body.woocommerce-checkout .wc-block-components-checkout-step__description {
  color: currentColor !important;
  font-size: 12px !important;
  letter-spacing: 0.5px !important;
}
/* Inputs / textareas / selects */
html body.woocommerce-checkout .wc-block-components-text-input input,
html body.woocommerce-checkout .wc-block-components-textarea,
html body.woocommerce-checkout input.wc-block-components-text-input,
html body.woocommerce-checkout textarea.wc-block-components-textarea,
html body.woocommerce-checkout .wp-block-woocommerce-checkout-fields-block input[type="text"],
html body.woocommerce-checkout .wp-block-woocommerce-checkout-fields-block input[type="email"],
html body.woocommerce-checkout .wp-block-woocommerce-checkout-fields-block input[type="tel"],
html body.woocommerce-checkout .wp-block-woocommerce-checkout-fields-block input[type="number"],
html body.woocommerce-checkout .wp-block-woocommerce-checkout-fields-block select,
html body.woocommerce-checkout .wc-block-components-select select,
html body.woocommerce-checkout .wc-block-components-combobox input {
  background: transparent !important;
  background-color: transparent !important;
  color: currentColor !important;
  border: 1px solid currentColor !important;
  border-radius: 3px !important;
  font-family: var(--font-sans, 'Inter', sans-serif) !important;
  font-size: 14px !important;
  padding: 14px 12px !important;
  height: auto !important;
  min-height: 48px !important;
  box-shadow: none !important;
  letter-spacing: 0.3px !important;
}
html body.woocommerce-checkout .wc-block-components-text-input input:focus,
html body.woocommerce-checkout input:focus,
html body.woocommerce-checkout select:focus,
html body.woocommerce-checkout textarea:focus {
  border-color: currentColor !important;
  outline: 0 !important;
  box-shadow: none !important;
}
/* Labels (flutuantes ou normais) */
html body.woocommerce-checkout .wc-block-components-text-input label,
html body.woocommerce-checkout label,
html body.woocommerce-checkout .wc-block-components-checkbox__label {
  color: currentColor !important;
  font-family: var(--font-sans, 'Inter', sans-serif) !important;
  font-size: 13px !important;
  letter-spacing: 0.3px !important;
}
html body.woocommerce-checkout .wc-block-components-text-input label.is-active,
html body.woocommerce-checkout .wc-block-components-text-input.is-active label {
  color: var(--mt-gold-dark, #8B7355) !important;
  font-size: 11px !important;
}
/* Checkboxes */
html body.woocommerce-checkout .wc-block-components-checkbox__input,
html body.woocommerce-checkout input[type="checkbox"] {
  accent-color: var(--mt-gold, #D4AF37) !important;
}
html body.woocommerce-checkout .wc-block-components-checkbox__mark {
  color: var(--mt-gold, #D4AF37) !important;
}
/* Resumo do pedido (sidebar direita) — sem borda externa */
html body.woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-block,
html body.woocommerce-checkout .wc-block-components-sidebar {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  padding: 0 0 20px 0 !important;
}
/* Itens do resumo — força layout horizontal pra evitar texto vertical bug */
html body.woocommerce-checkout .wc-block-components-order-summary-item,
html body.woocommerce-checkout .wc-block-components-order-summary-item__container {
  display: flex !important;
  align-items: flex-start !important;
  gap: 12px !important;
  padding: 12px 0 !important;
  border-bottom: 1px dashed rgba(212, 175, 55, 0.12) !important;
  margin: 0 !important;
  background: transparent !important;
  width: 100% !important;
}
html body.woocommerce-checkout .wc-block-components-order-summary-item__image {
  flex: 0 0 60px !important;
  width: 60px !important;
  height: 60px !important;
  border-radius: 3px !important;
  overflow: hidden !important;
  position: relative !important;
}
html body.woocommerce-checkout .wc-block-components-order-summary-item__image img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
  max-width: none !important;
}
html body.woocommerce-checkout .wc-block-components-order-summary-item__description {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 2px !important;
}
html body.woocommerce-checkout .wc-block-components-order-summary-item__description .wc-block-components-product-name,
html body.woocommerce-checkout .wc-block-components-order-summary-item .wc-block-components-product-name,
html body.woocommerce-checkout .wc-block-components-order-summary-item__description > a {
  font-family: var(--font-sans, 'Inter', sans-serif) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  letter-spacing: 0.2px !important;
  text-transform: none !important;
  color: var(--mt-gold-light, #E8D9B0) !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
  display: block !important;
  line-height: 1.35 !important;
}
html body.woocommerce-checkout .wc-block-components-order-summary-item__total-price,
html body.woocommerce-checkout .wc-block-components-order-summary-item__quantity,
html body.woocommerce-checkout .wc-block-components-product-metadata,
html body.woocommerce-checkout .wc-block-components-product-metadata__description,
html body.woocommerce-checkout .wc-block-components-product-details {
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
  font-size: 12px !important;
}
/* "Volume: 50ml" inline, name + value na MESMA linha */
html body.woocommerce-cart .wc-block-components-product-details > *,
html body.woocommerce-cart .wc-block-components-product-metadata .wc-block-components-product-details > *,
html body.woocommerce-checkout .wc-block-components-product-details > *,
html body.woocommerce-checkout .wc-block-components-product-metadata .wc-block-components-product-details > * {
  display: inline !important;
}
html body.woocommerce-cart .wc-block-components-product-details__name,
html body.woocommerce-cart .wc-block-components-product-details__value,
html body.woocommerce-checkout .wc-block-components-product-details__name,
html body.woocommerce-checkout .wc-block-components-product-details__value {
  display: inline !important;
  white-space: normal !important;
}
html body.woocommerce-cart .wc-block-components-product-details__name,
html body.woocommerce-checkout .wc-block-components-product-details__name {
  margin-right: 4px !important;
  font-weight: 600 !important;
}
html body.woocommerce-cart .wc-block-components-product-details,
html body.woocommerce-checkout .wc-block-components-product-details {
  display: block !important;
}
/* Cada par "Volume: 50ml" ocupa uma única linha (não quebra entre label e valor) */
html body.woocommerce-cart .wc-block-components-product-details > span,
html body.woocommerce-checkout .wc-block-components-product-details > span {
  display: inline-block !important;
  white-space: nowrap !important;
  margin-right: 8px !important;
}
html body.woocommerce-checkout .wc-block-components-order-summary-item__total-price {
  flex: 0 0 auto !important;
  text-align: right !important;
  color: var(--mt-gold, #D4AF37) !important;
  font-weight: 700 !important;
  font-size: 13px !important;
}
/* Badge de quantidade no canto da imagem */
html body.woocommerce-checkout .wc-block-components-order-summary-item__quantity {
  position: absolute !important;
  top: -6px !important;
  right: -6px !important;
  background: var(--mt-bordo, #6B1F2E) !important;
  color: #ffffff !important;
  border-radius: 50% !important;
  width: 22px !important;
  height: 22px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  z-index: 2 !important;
}
html body.woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-block .wp-block-woocommerce-checkout-order-summary-cart-items-block,
html body.woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-coupon-form-block,
html body.woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-subtotal-block,
html body.woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-shipping-block,
html body.woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-totals-block,
html body.woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-discount-block,
html body.woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-fee-block {
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
}
html body.woocommerce-checkout .wc-block-components-totals-item {
  color: var(--mt-gold-light, #E8D9B0) !important;
  border-bottom: 1px dashed rgba(212,175,55,0.12) !important;
  padding: 10px 0 !important;
  font-size: 13px !important;
}
html body.woocommerce-checkout .wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
html body.woocommerce-checkout .wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
  color: var(--mt-gold, #D4AF37) !important;
  font-size: 16px !important;
  font-weight: 700 !important;
}
/* Pagamento / Entrega — opções com radio */
html body.woocommerce-checkout .wc-block-components-radio-control__option {
  background: var(--mt-black, #0A0A0A) !important;
  border: 1px solid var(--mt-border, #2A1F0E) !important;
  border-radius: 3px !important;
  padding: 12px 14px 12px 44px !important;  /* espaço pra radio à esquerda */
  margin-bottom: 8px !important;
  color: var(--mt-gold-light, #E8D9B0) !important;
  position: relative !important;
  display: block !important;
}
html body.woocommerce-checkout .wc-block-components-radio-control__option--checked {
  border-color: var(--mt-gold, #D4AF37) !important;
}
/* Radio input: posiciona à esquerda, NÃO sobrepõe o label */
html body.woocommerce-checkout .wc-block-components-radio-control__input {
  position: absolute !important;
  left: 14px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: 18px !important;
  height: 18px !important;
  margin: 0 !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  border: 1.5px solid var(--mt-gold-dark, #8B7355) !important;
  border-radius: 50% !important;
  background: var(--mt-black, #0A0A0A) !important;
  cursor: pointer !important;
}
html body.woocommerce-checkout .wc-block-components-radio-control__input:checked {
  border-color: var(--mt-gold, #D4AF37) !important;
  background: radial-gradient(circle, var(--mt-gold, #D4AF37) 0 5px, var(--mt-black, #0A0A0A) 6px) !important;
}
html body.woocommerce-checkout .wc-block-components-radio-control__option-layout,
html body.woocommerce-checkout .wc-block-components-radio-control__label,
html body.woocommerce-checkout .wc-block-components-radio-control__description {
  display: block !important;
  margin-left: 0 !important;
  padding-left: 0 !important;
  text-align: left !important;
}
html body.woocommerce-checkout .wc-block-components-radio-control__label {
  color: var(--mt-gold-light, #E8D9B0) !important;
  font-weight: 500 !important;
  font-size: 13px !important;
}
/* Layout 50/50 entre form e resumo do pedido — usa a largura natural da página
   (mesma do breadcrumb / col-full). Sem expansão forçada pra viewport. */
@media (min-width: 800px) {
  /* O wrapper externo NÃO é grid — é block pra ocupar largura natural */
  html body.woocommerce-checkout .wp-block-woocommerce-checkout.wc-block-checkout {
    display: block !important;
    max-width: 100% !important;
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  /* SÓ o sidebar-layout é o grid 50/50 (form + resumo) */
  html body.woocommerce-checkout .wc-block-components-sidebar-layout,
  html body.woocommerce-checkout .wc-block-components-sidebar-layout.is-small,
  html body.woocommerce-checkout .wc-block-components-sidebar-layout.is-medium,
  html body.woocommerce-checkout .wc-block-components-sidebar-layout.is-large {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 40px !important;
    align-items: start !important;
    max-width: none !important;
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  html body.woocommerce-checkout .wc-block-components-main,
  html body.woocommerce-checkout .wp-block-woocommerce-checkout-fields-block {
    min-width: 0 !important;
    width: 100% !important;
    max-width: none !important;
  }
  html body.woocommerce-checkout .wc-block-components-sidebar,
  html body.woocommerce-checkout .wp-block-woocommerce-checkout-totals-block {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    position: sticky !important;
    top: 24px !important;
  }
}
/* Mobile: empilha vertical */
@media (max-width: 800px) {
  html body.woocommerce-checkout .wc-block-checkout,
  html body.woocommerce-checkout .wc-block-components-sidebar-layout {
    display: block !important;
    grid-template-columns: none !important;
  }
  html body.woocommerce-checkout .wc-block-components-main,
  html body.woocommerce-checkout .wc-block-components-sidebar {
    width: 100% !important;
  }
}
/* Botão FAZER PEDIDO / PLACE ORDER — branco com letra preta (igual COMPRAR AGORA do carrinho) */
html body.woocommerce-checkout .wc-block-components-checkout-place-order-button,
html body.woocommerce-checkout button.wc-block-components-checkout-place-order-button,
html body.woocommerce-checkout .wp-block-woocommerce-checkout-actions-block button {
  display: block !important;
  width: 100% !important;
  background: #ffffff !important;
  background-color: #ffffff !important;
  color: #000000 !important;
  border: 0 !important;
  border-radius: 3px !important;
  padding: 18px !important;
  font-family: var(--font-sans, 'Inter', sans-serif) !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: 3px !important;
  text-transform: uppercase !important;
  text-align: center !important;
  text-decoration: none !important;
  transition: background 0.2s !important;
  box-shadow: none !important;
  margin-top: 18px !important;
}
html body.woocommerce-checkout .wc-block-components-checkout-place-order-button:hover,
html body.woocommerce-checkout button.wc-block-components-checkout-place-order-button:hover,
html body.woocommerce-checkout .wp-block-woocommerce-checkout-actions-block button:hover {
  background: #f2f2f2 !important;
  background-color: #f2f2f2 !important;
  color: #000000 !important;
}
/* Texto/spinner interno (caso WC use span/svg) — preto sobre fundo branco */
html body.woocommerce-checkout .wc-block-components-checkout-place-order-button *,
html body.woocommerce-checkout button.wc-block-components-checkout-place-order-button *,
html body.woocommerce-checkout .wp-block-woocommerce-checkout-actions-block button * {
  color: #000000 !important;
  fill: #000000 !important;
  stroke: #000000 !important;
}
/* Avisos e mensagens */
html body.woocommerce-checkout .wc-block-components-validation-error {
  color: #ff7a7a !important;
  font-size: 12px !important;
}
html body.woocommerce-checkout .wc-block-components-notice-banner {
  background: var(--mt-bg-secondary, #0F0A05) !important;
  border: 1px solid var(--mt-border, #2A1F0E) !important;
  color: var(--mt-gold-light, #E8D9B0) !important;
}

/* ============================================
   Avisos de cupom no CARRINHO/checkout (snackbar dos blocos):
   "Código do cupom X foi adicionado/removido do seu carrinho".
   O botão de dispensar (X) herdava o estilo global de botão (.wp-element-button,
   fundo marrom) e virava um QUADRADO sólido cobrindo o ícone. Reset p/ só o "X".
   ============================================ */
/* Alta especificidade (5 classes) p/ vencer o CSS inline do tema que força
   background: #490311 !important em .wc-block-components-button no carrinho/checkout. */
html body.woocommerce-cart button.wc-block-components-notice-banner__dismiss.wc-block-components-button.wp-element-button.contained,
html body.woocommerce-checkout button.wc-block-components-notice-banner__dismiss.wc-block-components-button.wp-element-button.contained,
html body button.wc-block-components-notice-banner__dismiss.wc-block-components-button.wp-element-button.contained {
  background: transparent !important;
  background-color: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 2px !important;
  min-width: 0 !important;
  width: auto !important;
  height: auto !important;
  min-height: 0 !important;
  line-height: 0 !important;
  color: inherit !important;
  opacity: .55;
  transition: opacity .15s ease;
}
html body.woocommerce-cart button.wc-block-components-notice-banner__dismiss.wc-block-components-button.wp-element-button.contained:hover,
html body.woocommerce-checkout button.wc-block-components-notice-banner__dismiss.wc-block-components-button.wp-element-button.contained:hover,
html body button.wc-block-components-notice-banner__dismiss.wc-block-components-button.wp-element-button.contained:hover {
  background: transparent !important;
  opacity: 1;
}
html body button.wc-block-components-notice-banner__dismiss > svg,
html body button.wc-block-components-notice-banner__dismiss > svg path {
  fill: currentColor !important;
  width: 18px !important;
  height: 18px !important;
  display: block !important;
  margin: 0 !important;
}
/* o snackbar do carrinho fica limpo (caixa clara com sombra suave, borda dourada discreta) */
html body .wc-block-components-notices__snackbar .wc-block-components-notice-snackbar {
  border-radius: 8px !important;
  box-shadow: 0 8px 24px rgba(0, 0, 0, .12) !important;
}

/* ============================================
   Páginas institucionais: esconde o título grande
   (Quem Somos, Política de Trocas, Política de Privacidade, FAQ etc.)
   ============================================ */
html body.page:not(.home):not(.woocommerce-cart):not(.woocommerce-checkout):not(.woocommerce-account):not(.blog):not(.search):not(.archive) > .site,
html body.page:not(.home):not(.woocommerce-cart):not(.woocommerce-checkout):not(.woocommerce-account):not(.blog):not(.search):not(.archive) #content {
  /* selector container — não muda nada, só garante escopo */
}
html body.page:not(.home):not(.woocommerce-cart):not(.woocommerce-checkout):not(.woocommerce-account):not(.blog):not(.search):not(.archive) article.page > .entry-header,
html body.page:not(.home):not(.woocommerce-cart):not(.woocommerce-checkout):not(.woocommerce-account):not(.blog):not(.search):not(.archive) article > header.entry-header,
html body.page:not(.home):not(.woocommerce-cart):not(.woocommerce-checkout):not(.woocommerce-account):not(.blog):not(.search):not(.archive) h1.entry-title,
html body.page:not(.home):not(.woocommerce-cart):not(.woocommerce-checkout):not(.woocommerce-account):not(.blog):not(.search):not(.archive) .page-title {
  display: none !important;
}

/* ============================================
   Imagem principal da galeria do produto: preenche 100% da largura
   do container pra alinhar com o último thumbnail à direita.
   ATENÇÃO: NÃO mexer no `.woocommerce-product-gallery__wrapper`
   (FlexSlider seta width: 800% inline — sobrescrever quebra o slide).
   ============================================ */
html body.single-product .woocommerce-product-gallery .flex-viewport {
  max-width: 100% !important;
}
html body.single-product .woocommerce-product-gallery__image a,
html body.single-product .woocommerce-product-gallery__image img,
html body.single-product .woocommerce-product-gallery img.wp-post-image {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  margin: 0 !important;
}

/* ============================================
   Stepper de quantidade (− | N | +) — igual ao do carrinho.
   Aplica em desktop e mobile.
   ============================================ */
html body.single-product form.cart .mt-qty-stepper {
  display: inline-flex !important;
  align-items: stretch !important;
  height: 52px !important;
  background: var(--mt-bg-secondary, #0F0A05) !important;
  border: 1px solid var(--mt-border, #2A1F0E) !important;
  border-radius: 3px !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}
html body.single-product form.cart .mt-qty-stepper .mt-qty-btn {
  background: transparent !important;
  background-color: transparent !important;
  color: var(--mt-gold-light, #E8D9B0) !important;
  border: 0 !important;
  border-radius: 0 !important;
  width: 40px !important;
  min-width: 40px !important;
  height: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  font-family: var(--font-sans, 'Inter', sans-serif) !important;
  font-size: 20px !important;
  font-weight: 500 !important;
  line-height: 1 !important;
  cursor: pointer !important;
  transition: background 0.2s, color 0.2s !important;
  box-shadow: none !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}
html body.single-product form.cart .mt-qty-stepper .mt-qty-btn:hover {
  background: var(--mt-bordo, #6B1F2E) !important;
  color: #ffffff !important;
}
/* Remove outline "linha rosa" que aparece ao clicar/focar */
html body.single-product form.cart .mt-qty-stepper .mt-qty-btn:focus,
html body.single-product form.cart .mt-qty-stepper .mt-qty-btn:focus-visible,
html body.single-product form.cart .mt-qty-stepper .mt-qty-btn:active,
html body.single-product form.cart .mt-qty-stepper input.qty:focus,
html body.single-product form.cart .mt-qty-stepper input.qty:focus-visible,
html body.single-product form.cart .mt-qty-stepper input.qty:active {
  outline: 0 !important;
  outline-offset: 0 !important;
  box-shadow: none !important;
  border-color: var(--mt-border, #2A1F0E) !important;
}
/* :focus-visible no teclado: anel discreto gold-dark em volta do stepper inteiro (acessibilidade) */
html body.single-product form.cart .mt-qty-stepper:focus-within {
  outline: 1px solid var(--mt-gold-dark, #8B7355);
  outline-offset: 1px;
}
html body.single-product form.cart .mt-qty-stepper input.qty {
  width: 52px !important;
  min-width: 52px !important;
  height: 100% !important;
  background: transparent !important;
  border: 0 !important;
  border-left: 1px solid var(--mt-border, #2A1F0E) !important;
  border-right: 1px solid var(--mt-border, #2A1F0E) !important;
  border-radius: 0 !important;
  text-align: center !important;
  font-family: var(--font-sans, 'Inter', sans-serif) !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  color: var(--mt-gold-light, #E8D9B0) !important;
  padding: 0 !important;
  margin: 0 !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
}
/* O wrapper .quantity não precisa mais ser a referência visual — o stepper é */
html body.single-product form.cart .quantity {
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
}

/* ============================================
   Mobile: COMPRAR ao lado da quantidade, ambos preenchendo
   toda a largura disponível (qty compacto à esquerda, botão
   estica até o fim). Mesma régua pro input de CEP.
   ============================================ */
@media (max-width: 768px) {
  html body.single-product div.product form.cart {
    display: block !important;
    padding: 6px 0 0 !important;
    width: 100% !important;
  }
  /* Tudo dentro do form (variations/price/wrap) ocupa 100% */
  html body.single-product div.product form.cart .variations,
  html body.single-product div.product form.cart .woocommerce-variation,
  html body.single-product div.product form.cart .woocommerce-variation-price,
  html body.single-product div.product form.cart .woocommerce-variation-description,
  html body.single-product div.product form.cart .woocommerce-variation-availability,
  html body.single-product div.product form.cart .single_variation_wrap,
  html body.single-product div.product form.cart .woocommerce-variation-add-to-cart {
    width: 100% !important;
    max-width: 100% !important;
    display: block !important;
    float: none !important;
    margin: 0 !important;
  }
  html body.single-product form.cart .woocommerce-variation-add-to-cart,
  html body.single-product form.cart.variations_form .single_variation_wrap .woocommerce-variation-add-to-cart {
    display: grid !important;
    grid-template-columns: auto 1fr !important;
    gap: 8px !important;
    margin-top: 10px !important;
    padding: 0 !important;
    align-items: stretch !important;
    width: 100% !important;
    flex-wrap: unset !important;
  }
  html body.single-product div.product form.cart .quantity {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    grid-column: 1 !important;
    grid-row: 1 !important;
  }
  html body.single-product div.product form.cart button.single_add_to_cart_button {
    grid-column: 2 !important;
    grid-row: 1 !important;
  }
  /* Hidden inputs dentro do wrap não devem ocupar células do grid */
  html body.single-product form.cart .woocommerce-variation-add-to-cart > input[type="hidden"] {
    display: none !important;
    grid-column: 1 !important;
  }
  html body.single-product div.product form.cart .quantity input.qty {
    width: 100% !important;
    height: 52px !important;
    padding: 0 !important;
    margin: 0 !important;
    text-align: center !important;
    box-sizing: border-box !important;
  }
  html body.single-product div.product form.cart button.single_add_to_cart_button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 1 1 auto !important;
    width: auto !important;
    min-width: 0 !important;
    height: 52px !important;
    padding: 0 10px !important;
    font-size: 12px !important;
    letter-spacing: 2px !important;
    margin: 0 !important;
    box-sizing: border-box !important;
  }
  /* Calculadora de frete (CEP) também preenche toda a largura */
  html body.single-product .containerCalculator,
  html body.single-product #woocommerce-correios-calculo-de-frete-na-pagina-do-produto {
    width: 100% !important;
    padding: 0 !important;
    box-sizing: border-box !important;
  }
  html body.single-product .containerCalculator input.iptCep,
  html body.single-product .containerCalculator #inputCep,
  html body.single-product .containerCalculator input[type="text"] {
    width: 100% !important;
    max-width: 100% !important;
    height: 52px !important;
    padding: 0 14px !important;
    box-sizing: border-box !important;
  }
}

/* ============================================
   Logo "EP Sistemas" nos créditos do footer
   ============================================ */
html body .mt-footer-bottom .mt-credit {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}
html body .mt-footer-bottom a.mt-ep-logo {
  display: inline-flex;
  align-items: center;
  line-height: 0;
  text-decoration: none !important;
  border: 0 !important;
  transition: opacity 0.2s;
}
html body .mt-footer-bottom a.mt-ep-logo:hover {
  opacity: 0.85;
}
html body .mt-footer-bottom svg.mt-ep-svg,
html body .mt-footer-bottom a.mt-ep-logo img,
html body .mt-seals .mt-footer-bottom a.mt-ep-logo img {
  display: block !important;
  height: 66px !important;
  width: auto !important;
  max-width: none !important;
}

/* ============================================
   Avaliação em estrelas CENTRALIZADA nos cards de produto
   (home, shop, related, up-sells). Single-product fica como está.
   ============================================ */
html body ul.mt-products-grid li.product .star-rating,
html body .mt-shop-wrap ul.products li.product .star-rating,
html body .woocommerce ul.products li.product .star-rating,
html body section.related.products li.product .star-rating,
html body section.up-sells.products li.product .star-rating,
html body .mt-product-card .star-rating {
  display: block !important;
  margin: 6px auto !important;
  float: none !important;
  text-align: center !important;
}

/* ============================================
   Selos de confiança + política de trocas no FINAL do footer
   ============================================ */
html body .mt-seals {
  max-width: 1100px;
  margin: 18px auto 0 !important;
  padding: 8px 20px !important;
}
html body .mt-seals-policy {
  text-align: center;
  font-size: 12px;
  font-style: italic;
  letter-spacing: 0.4px;
  color: var(--mt-gold-light, #E8D9B0);
  opacity: 0.85;
  margin: 0 0 14px;
  line-height: 1.55;
  padding: 0 10px;
}
/* Sem divisor entre a frase e os selos */
html body .mt-seals ul.mt-seals-row {
  border: 0 !important;
  padding-top: 6px !important;
  margin-bottom: 14px !important;
}
/* Créditos do rodapé: copyright + "Desenvolvido por + logo" na MESMA linha
   no desktop; stackeados e centralizados no mobile */
html body .mt-seals .mt-footer-bottom,
html body .mt-seals .site-info {
  border: 0 !important;
  padding: 0 !important;
  margin-top: 6px !important;
  margin-bottom: 0 !important;
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: space-between !important;
  text-align: left !important;
  gap: 12px !important;
  width: 100% !important;
}
html body .mt-seals .mt-footer-bottom .mt-credit,
html body .mt-seals .site-info .mt-credit {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 10px !important;
  width: auto !important;
}
html body .mt-seals .mt-footer-bottom .mt-copyright,
html body .mt-seals .site-info .mt-copyright {
  display: inline-block !important;
  text-align: left !important;
}
@media (max-width: 700px) {
  html body .mt-seals .mt-footer-bottom,
  html body .mt-seals .site-info {
    flex-direction: column !important;
    justify-content: center !important;
    text-align: center !important;
    gap: 6px !important;
  }
  html body .mt-seals .mt-footer-bottom .mt-copyright {
    text-align: center !important;
  }
  html body .mt-seals .mt-footer-bottom .mt-credit {
    justify-content: center !important;
  }
}

/* Reduz o espaço entre o fim do footer principal (ícones sociais)
   e a frase "Não efetuamos trocas…" */
html body .mt-seals {
  margin-top: 0 !important;
  padding-top: 4px !important;
}
html body .mt-seals-policy {
  margin-top: 0 !important;
}
html body .mt-footer {
  padding-bottom: 8px !important;
}
html body .mt-footer-socials,
html body .mt-footer-col--socials,
html body .mt-footer .mt-footer-col:first-child {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}
html body .mt-seals {
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
}
html body ul.mt-seals-row {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: stretch;
  gap: 8px;
  overflow-x: auto;
}
html body ul.mt-seals-row li.mt-seal {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  background: transparent !important;
  background-color: transparent !important;
  border: 1px solid #000 !important;
  border-radius: 3px;
  flex: 0 1 auto;
  min-width: 0;
  white-space: nowrap;
  transition: transform 0.2s;
}
html body ul.mt-seals-row li.mt-seal:hover {
  border-color: #000 !important;
  transform: translateY(-1px);
}
html body .mt-seal .mt-seal-ico {
  flex: 0 0 auto;
  width: 28px;
  height: 28px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #000 !important;
}
html body .mt-seal .mt-seal-ico svg {
  width: 100%;
  height: 100%;
  display: block;
  color: #000 !important;
  fill: none !important;
  stroke: #000 !important;
}
html body .mt-seal .mt-seal-ico svg * {
  stroke: #000 !important;
}
html body .mt-seal .mt-seal-txt {
  display: flex;
  flex-direction: column;
  line-height: 1.15;
  color: #000 !important;
  font-family: var(--font-sans, 'Inter', sans-serif);
}
html body .mt-seal .mt-seal-txt strong {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1.2px;
  text-transform: uppercase;
  color: #000 !important;
}
html body .mt-seal .mt-seal-txt em {
  font-size: 10px;
  font-style: normal;
  letter-spacing: 0.5px;
  color: #000 !important;
  margin-top: 2px;
}
@media (max-width: 900px) {
  /* Mobile: só ÍCONES visíveis em 1 linha. Texto aparece em popup ao tocar (.mt-seal-open). */
  html body ul.mt-seals-row {
    flex-wrap: nowrap !important;
    overflow-x: visible !important;
    overflow-y: visible !important;
    gap: 10px !important;
    justify-content: center !important;
  }
  html body ul.mt-seals-row li.mt-seal {
    flex: 0 0 auto !important;
    min-width: 0 !important;
    padding: 10px !important;
    cursor: pointer !important;
    position: relative !important;
    gap: 0 !important;
  }
  html body .mt-seal .mt-seal-ico {
    width: 28px !important;
    height: 28px !important;
  }
  /* Texto ESCONDIDO por default no mobile */
  html body .mt-seal .mt-seal-txt {
    display: none !important;
  }
  /* Aberto (após tap): texto em popup absoluto ACIMA do ícone */
  html body ul.mt-seals-row li.mt-seal.mt-seal-open .mt-seal-txt {
    display: flex !important;
    position: absolute !important;
    bottom: calc(100% + 8px) !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    background: var(--mt-bg-secondary, #0F0A05) !important;
    border: 1px solid var(--mt-gold, #D4AF37) !important;
    padding: 8px 14px !important;
    border-radius: 4px !important;
    white-space: nowrap !important;
    z-index: 100 !important;
    box-shadow: 0 6px 20px rgba(0,0,0,0.5) !important;
    flex-direction: column !important;
    align-items: center !important;
  }
  html body ul.mt-seals-row li.mt-seal.mt-seal-open .mt-seal-txt strong {
    font-size: 11px !important;
    letter-spacing: 1px !important;
    color: var(--mt-gold, #D4AF37) !important;
  }
  html body ul.mt-seals-row li.mt-seal.mt-seal-open .mt-seal-txt em {
    font-size: 10px !important;
    color: var(--mt-gold-light, #E8D9B0) !important;
    margin-top: 3px !important;
  }
  /* Setinha apontando pra baixo (do popup pro ícone) */
  html body ul.mt-seals-row li.mt-seal.mt-seal-open .mt-seal-txt::after {
    content: '';
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    border: 6px solid transparent;
    border-top-color: var(--mt-gold, #D4AF37);
  }
  html body .mt-seals-policy { font-size: 11px; }
}
@media (max-width: 480px) {
  html body ul.mt-seals-row { gap: 8px !important; }
  html body ul.mt-seals-row li.mt-seal { padding: 9px !important; }
  html body .mt-seal .mt-seal-ico { width: 26px !important; height: 26px !important; }
}

/* Logo Epsistemas reduzida no mobile */
@media (max-width: 900px) {
  html body .mt-footer-bottom svg.mt-ep-svg,
  html body .mt-footer-bottom a.mt-ep-logo img,
  html body .mt-seals .mt-footer-bottom a.mt-ep-logo img {
    height: 40px !important;
  }
}
@media (max-width: 480px) {
  html body .mt-footer-bottom svg.mt-ep-svg,
  html body .mt-footer-bottom a.mt-ep-logo img,
  html body .mt-seals .mt-footer-bottom a.mt-ep-logo img {
    height: 32px !important;
  }
}

/* ============================================
   MINHA CONTA (/minha-conta/) — Limpeza visual
   - Esconde título "Minha conta" + títulos de cada subseção
   - Esconde card "Endereço de cobrança" (copiado do shipping internamente)
   - Remove bordas externas do menu lateral e do form
   - Botão de salvar no padrão da página
   - Estiliza Select2 (país/estado) na cor do site
   ============================================ */

/* Esconde título grande "Minha conta" + cabeçalhos das subseções (Pedidos, Downloads, Endereços, Senha) */
html body.woocommerce-account .woocommerce-MyAccount-content > h1,
html body.woocommerce-account .woocommerce-MyAccount-content > h2,
html body.woocommerce-account .woocommerce-MyAccount-content > h3,
html body.woocommerce-account .woocommerce-MyAccount-content > header > h1,
html body.woocommerce-account .woocommerce-MyAccount-content > header > h2,
html body.woocommerce-account .woocommerce-MyAccount-content > header > h3,
html body.woocommerce-account h1.entry-title,
html body.woocommerce-account .page-title,
html body.woocommerce-account .woocommerce-MyAccount-content form > h1,
html body.woocommerce-account .woocommerce-MyAccount-content form > h2,
html body.woocommerce-account .woocommerce-MyAccount-content form > h3 {
  display: none !important;
}

/* Login (deslogado): esconde título "Entrar"/"Login" + remove bordas externas do form */
html body.woocommerce-account #customer_login h2,
html body.woocommerce-account #customer_login .u-column1 > h2,
html body.woocommerce-account #customer_login .u-column2 > h2,
html body.woocommerce-account .woocommerce > h2,
html body.woocommerce-account .entry-content .woocommerce > h2,
html body.woocommerce-page #customer_login h2,
html body.woocommerce-page .woocommerce > h2 {
  display: none !important;
}
html body.woocommerce-account form.woocommerce-form-login,
html body.woocommerce-account form.woocommerce-form-register,
html body.woocommerce-account .woocommerce-form-login,
html body.woocommerce-account .woocommerce-form-register,
html body.woocommerce-account #customer_login,
html body.woocommerce-account #customer_login form,
html body.woocommerce-account #customer_login .u-column1,
html body.woocommerce-account #customer_login .u-column2,
html body.woocommerce-account #customer_login .col-1,
html body.woocommerce-account #customer_login .col-2,
html body.woocommerce-account .u-columns,
html body.woocommerce-account #customer_login .woocommerce-form-login,
html body .woocommerce-form-login,
html body .woocommerce-form-register {
  border: 0 !important;
  background: transparent !important;
  padding: 0 !important;
  box-shadow: none !important;
  border-radius: 0 !important;
}
/* Login ↔ Cadastro: mostra só um por vez. Default = login (mt-show-login).
 * O JS adiciona .mt-show-register no body quando user clica em "Criar conta". */
html body #customer_login {
  display: block !important;
}
/* Storefront tem sidebar (#secondary) ocupando ~35% no desktop, deixando #primary com 65%.
   Em /minha-conta/ não queremos sidebar — content-area ocupa 100%. */
html.mt-tema body.woocommerce-account #primary.content-area,
html body.woocommerce-account #primary.content-area,
html body.woocommerce-account #primary {
  width: 100% !important;
  max-width: 100% !important;
  float: none !important;
  margin: 0 auto !important;
}
html body.woocommerce-account #secondary,
html body.woocommerce-account aside.widget-area,
html body.woocommerce-account #secondary.widget-area {
  display: none !important;
}

html.mt-tema body.woocommerce-account #customer_login,
html.mt-tema body.woocommerce-account #customer_login.u-columns,
html.mt-tema body.woocommerce-account #customer_login.col2-set,
html body #customer_login,
html body #customer_login.u-columns,
html body #customer_login.col2-set {
  display: block !important;
  width: 100% !important;
  max-width: 720px !important;
  margin: 0 auto !important;
  float: none !important;
  grid-template-columns: none !important;
  grid-template-rows: none !important;
}
html.mt-tema body.woocommerce-account #customer_login .u-column1,
html.mt-tema body.woocommerce-account #customer_login .u-column2,
html.mt-tema body.woocommerce-account #customer_login .col-1,
html.mt-tema body.woocommerce-account #customer_login .col-2,
html.mt-tema body.woocommerce-account #customer_login form.woocommerce-form-login,
html.mt-tema body.woocommerce-account #customer_login form.woocommerce-form-register,
html body #customer_login .u-column1,
html body #customer_login .u-column2,
html body #customer_login .col-1,
html body #customer_login .col-2,
html body #customer_login form.woocommerce-form-login,
html body #customer_login form.woocommerce-form-register {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 auto !important;
  float: none !important;
  flex: 0 0 100% !important;
  grid-column: 1 / -1 !important;
}
/* Inputs do form de login/cadastro: ocupam 100% da coluna */
html body #customer_login .woocommerce-form-login input.input-text,
html body #customer_login .woocommerce-form-register input.input-text,
html body #customer_login form .form-row,
html body #customer_login form .form-row input.input-text,
html body #customer_login form .woocommerce-form-row,
html body #customer_login form .woocommerce-form-row input.input-text,
html body #customer_login form .woocommerce-Input--text {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}
html body #customer_login form .form-row.form-row-first,
html body #customer_login form .form-row.form-row-last,
html body #customer_login form .woocommerce-form-row--first,
html body #customer_login form .woocommerce-form-row--last {
  width: 100% !important;
  max-width: 100% !important;
  flex: 0 0 100% !important;
  float: none !important;
}

/* Senha perdida — mesmo container do login (720px centralizado no desktop) */
html body.woocommerce-account .woocommerce-ResetPassword,
html body.woocommerce-account form.lost_reset_password,
html body.woocommerce-account form.woocommerce-ResetPassword {
  width: 100% !important;
  max-width: 720px !important;
  margin: 0 auto !important;
}
html body.woocommerce-account .entry-content > .woocommerce > p,
html body.woocommerce-account .woocommerce > .woocommerce-ResetPassword,
html body.woocommerce-account .woocommerce > p:first-of-type {
  max-width: 720px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
/* Força .form-row-first dentro do lost-password a 100% (não 48% como nos endereços) */
html body.woocommerce-account .woocommerce-ResetPassword p.form-row,
html body.woocommerce-account .woocommerce-ResetPassword p.form-row-first,
html body.woocommerce-account .woocommerce-ResetPassword p.form-row.form-row-first,
html body.woocommerce-account form.lost_reset_password p.form-row,
html body.woocommerce-account form.lost_reset_password p.form-row-first {
  width: 100% !important;
  flex: 0 0 100% !important;
  float: none !important;
  max-width: 100% !important;
}
html body.woocommerce-account .woocommerce-ResetPassword input[type="text"],
html body.woocommerce-account .woocommerce-ResetPassword input[type="email"],
html body.woocommerce-account .woocommerce-ResetPassword .woocommerce-input-wrapper,
html body.woocommerce-account form.lost_reset_password input[type="text"],
html body.woocommerce-account form.lost_reset_password input[type="email"],
html body.woocommerce-account form.lost_reset_password .woocommerce-input-wrapper {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  display: block !important;
}
/* Default: esconde registro */
html body #customer_login .u-column2,
html body #customer_login .col-2 {
  display: none !important;
}
/* Quando body.mt-show-register: esconde login, mostra registro */
html body.mt-show-register #customer_login .u-column1,
html body.mt-show-register #customer_login .col-1 {
  display: none !important;
}
html body.mt-show-register #customer_login .u-column2,
html body.mt-show-register #customer_login .col-2 {
  display: block !important;
}

/* Texto receptivo no form de cadastro */
html body .mt-welcome-text {
  background: rgba(212, 175, 55, 0.06) !important;
  border-left: 3px solid var(--mt-gold, #D4AF37) !important;
  padding: 14px 16px !important;
  margin: 0 0 18px !important;
  border-radius: 3px !important;
  font-size: 13px !important;
  line-height: 1.6 !important;
  color: var(--mt-gold-light, #E8D9B0) !important;
}
html body .mt-welcome-text strong {
  color: var(--mt-gold, #D4AF37) !important;
  font-size: 14px !important;
  letter-spacing: 0.5px !important;
}
html body .mt-welcome-text a {
  color: var(--mt-gold, #D4AF37) !important;
  text-decoration: underline !important;
}

/* Texto da política de privacidade — letras pequenas */
html body.woocommerce-account .woocommerce-privacy-policy-text,
html body .woocommerce-privacy-policy-text {
  font-size: 11px !important;
  line-height: 1.55 !important;
  opacity: 0.75 !important;
  margin: 12px 0 !important;
  color: var(--mt-gold-light, #E8D9B0) !important;
}

/* Link "Criar conta" abaixo do login */
html body .mt-register-link {
  display: block !important;
  margin: 14px 0 0 !important;
  text-align: center !important;
  font-family: var(--font-sans, 'Inter', sans-serif) !important;
  font-size: 12px !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
  color: var(--mt-gold-light, #E8D9B0) !important;
}
html body .mt-register-link a {
  color: var(--mt-gold, #D4AF37) !important;
  font-weight: 600 !important;
  text-decoration: underline !important;
}
html body .mt-register-link a:hover {
  color: var(--mt-gold-light, #E8D9B0) !important;
}

/* Endereços: esconde card de cobrança; o de entrega ocupa a largura toda */
html body.woocommerce-account .addresses .col-1,
html body.woocommerce-account .addresses .u-column1,
html body.woocommerce-account .woocommerce-Addresses .col-1,
html body.woocommerce-account .woocommerce-Addresses .u-column1 {
  display: none !important;
}
html body.woocommerce-account .addresses .col-2,
html body.woocommerce-account .addresses .u-column2,
html body.woocommerce-account .woocommerce-Addresses .col-2,
html body.woocommerce-account .woocommerce-Addresses .u-column2 {
  width: 100% !important;
  max-width: 640px !important;
  margin-left: 0 !important;
  float: none !important;
}
/* Esconde labels grandes "Endereço de entrega" / "Endereço de cobrança" do header do address e do form de edição */
html body.woocommerce-account .addresses .woocommerce-Address-title,
html body.woocommerce-account .addresses .woocommerce-Address-title h2,
html body.woocommerce-account .addresses .woocommerce-Address-title h3,
html body.woocommerce-account .woocommerce-MyAccount-content form h3 {
  display: none !important;
}

/* Layout do MyAccount no desktop: GRID 220px + 1fr (sidebar + conteúdo)
   APENAS quando user está LOGADO (tem .woocommerce-MyAccount-navigation).
   Deslogado (login/cadastro/lost-password) NÃO usa grid — fica em block normal. */
@media (min-width: 768px) {
  html body.woocommerce-account .woocommerce:has(.woocommerce-MyAccount-navigation) {
    display: grid !important;
    grid-template-columns: 220px minmax(0, 1fr) !important;
    gap: 32px !important;
    align-items: start !important;
  }
  html body.woocommerce-account .woocommerce:has(.woocommerce-MyAccount-navigation) > .woocommerce-notices-wrapper {
    grid-column: 1 / -1 !important;
  }
  /* Deslogado: garantir block (defensivo) */
  html body.woocommerce-account .woocommerce:not(:has(.woocommerce-MyAccount-navigation)) {
    display: block !important;
    grid-template-columns: none !important;
  }
  html body.woocommerce-account .woocommerce-MyAccount-navigation,
  html body.woocommerce-account .woocommerce-MyAccount-content {
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
    margin: 0 !important;
  }
  html body.woocommerce-account .woocommerce-MyAccount-navigation ul li a {
    white-space: nowrap !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
}

/* Remove a borda roxa do :focus + sublinhado em TODOS os itens do menu MyAccount.
   Specificity altíssima (html.mt-tema body.woocommerce-account .entry-content .nav .ul .li .a)
   pra vencer a regra de .entry-content a do bloco de páginas institucionais. */
html.mt-tema body.woocommerce-account .entry-content .woocommerce-MyAccount-navigation ul li a,
html.mt-tema body.woocommerce-account .entry-content .woocommerce-MyAccount-navigation ul li a:focus,
html.mt-tema body.woocommerce-account .entry-content .woocommerce-MyAccount-navigation ul li a:focus-visible,
html.mt-tema body.woocommerce-account .entry-content .woocommerce-MyAccount-navigation ul li a:active,
html.mt-tema body.woocommerce-account .entry-content .woocommerce-MyAccount-navigation ul li a:hover,
html.mt-tema body.woocommerce-account .entry-content .woocommerce-MyAccount-navigation ul li a:visited,
html body.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation ul li a,
html body.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation ul li a:hover,
html body.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation ul li a:focus,
html body.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation ul li a:active,
html body.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation ul li a:visited {
  outline: 0 !important;
  outline: none !important;
  box-shadow: none !important;
  text-decoration: none !important;
  -webkit-tap-highlight-color: transparent !important;
}
/* Item ATIVO mantém o destaque com box-shadow inset (que define a borda esquerda dourada) */
html body.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active > a {
  box-shadow: inset 3px 0 0 0 var(--mt-gold, #D4AF37) !important;
  text-decoration: none !important;
}

/* Remove bordas externas: menu lateral, form e fieldset */
html body.woocommerce-account .woocommerce-MyAccount-navigation,
html body.woocommerce-account .woocommerce-MyAccount-navigation ul,
html body.woocommerce-account .woocommerce-MyAccount-content,
html body.woocommerce-account .woocommerce-MyAccount-content form,
html body.woocommerce-account .woocommerce-MyAccount-content fieldset,
html body.woocommerce-account .woocommerce-EditAccountForm,
html body.woocommerce-account .woocommerce-address-fields {
  border: 0 !important;
  background: transparent !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Defensivo: esconde Empresa e País (sempre BR) */
html body.woocommerce-account #shipping_company_field,
html body.woocommerce-account #billing_company_field,
html body.woocommerce-account #shipping_country_field,
html body.woocommerce-account .mt-hide-country,
html body.woocommerce-account p.form-row.mt-hide-country {
  display: none !important;
}

/* Sobe o form: zera padding/margin top do conteúdo do MyAccount */
html body.woocommerce-account .woocommerce-MyAccount-content {
  padding-top: 0 !important;
  margin-top: 0 !important;
}
html body.woocommerce-account .woocommerce-MyAccount-content > p:first-child {
  margin-top: 0 !important;
}

/* Container do form de endereço/conta usa flex-wrap pra ter 2 colunas reais (não float) */
html body.woocommerce-account .woocommerce-address-fields__field-wrapper,
html body.woocommerce-account .woocommerce-account .woocommerce-MyAccount-content form > div,
html body.woocommerce-account form.woocommerce-EditAccountForm {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 0 14px !important;
  margin: 0 !important;
}
/* Edit-account: fieldset (Alteração de senha) e botão de submit ocupam 100% */
html body.woocommerce-account form.woocommerce-EditAccountForm > fieldset,
html body.woocommerce-account form.woocommerce-EditAccountForm > p.form-row:last-child,
html body.woocommerce-account form.woocommerce-EditAccountForm > .woocommerce-form-row--wide,
html body.woocommerce-account form.woocommerce-EditAccountForm > p.mt-account-whatsapp {
  width: 100% !important;
  flex: 0 0 100% !important;
}
html body.woocommerce-account .woocommerce-address-fields p.form-row,
html body.woocommerce-account .woocommerce-MyAccount-content form p.form-row {
  margin: 0 0 14px !important;
  padding: 0 !important;
  box-sizing: border-box !important;
  float: none !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
}
/* Label tem altura mínima fixa (1 linha) → input alinha entre colunas */
html body.woocommerce-account .woocommerce-address-fields p.form-row > label,
html body.woocommerce-account .woocommerce-MyAccount-content form p.form-row > label {
  display: block !important;
  min-height: 18px !important;
  line-height: 18px !important;
  margin: 0 0 6px !important;
  padding: 0 !important;
}
html body.woocommerce-account .woocommerce-address-fields p.form-row > .woocommerce-input-wrapper,
html body.woocommerce-account .woocommerce-MyAccount-content form p.form-row > .woocommerce-input-wrapper {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
}
html body.woocommerce-account .woocommerce-address-fields p.form-row.form-row-first,
html body.woocommerce-account .woocommerce-MyAccount-content form p.form-row.form-row-first {
  width: calc(50% - 7px) !important;
  flex: 0 0 calc(50% - 7px) !important;
}
html body.woocommerce-account .woocommerce-address-fields p.form-row.form-row-last,
html body.woocommerce-account .woocommerce-MyAccount-content form p.form-row.form-row-last {
  width: calc(50% - 7px) !important;
  flex: 0 0 calc(50% - 7px) !important;
}
html body.woocommerce-account .woocommerce-address-fields p.form-row.form-row-wide,
html body.woocommerce-account .woocommerce-MyAccount-content form p.form-row.form-row-wide {
  width: 100% !important;
  flex: 0 0 100% !important;
}
@media (max-width: 720px) {
  html body.woocommerce-account .woocommerce-address-fields p.form-row.form-row-first,
  html body.woocommerce-account .woocommerce-MyAccount-content form p.form-row.form-row-first,
  html body.woocommerce-account .woocommerce-address-fields p.form-row.form-row-last,
  html body.woocommerce-account .woocommerce-MyAccount-content form p.form-row.form-row-last {
    width: 100% !important;
    flex: 0 0 100% !important;
  }
}

/* Inputs ocupam largura total da coluna */
html body.woocommerce-account .woocommerce-address-fields p.form-row input,
html body.woocommerce-account .woocommerce-address-fields p.form-row select,
html body.woocommerce-account .woocommerce-MyAccount-content form p.form-row input,
html body.woocommerce-account .woocommerce-MyAccount-content form p.form-row select {
  width: 100% !important;
  box-sizing: border-box !important;
}

/* Alerta de validação (campos obrigatórios não preenchidos) */
html body .mt-form-alert {
  display: none;
  background: rgba(229, 57, 53, 0.12) !important;
  border: 1px solid #e57373 !important;
  border-left: 4px solid #e57373 !important;
  color: #ffb4b4 !important;
  padding: 12px 16px !important;
  border-radius: 3px !important;
  font-family: var(--font-sans, 'Inter', sans-serif) !important;
  font-size: 13px !important;
  letter-spacing: 0.3px !important;
  margin: 0 0 18px !important;
}

/* Realça inputs required vazios após tentativa de submit */
html body.woocommerce-account .woocommerce-MyAccount-content form [required]:invalid:not(:placeholder-shown),
html body.woocommerce-account .woocommerce-MyAccount-content form .mt-invalid {
  border-color: #e57373 !important;
  box-shadow: 0 0 0 1px #e57373 !important;
}

/* Garante que notices nativos do WC apareçam no Minha Conta */
html body.woocommerce-account .woocommerce-MyAccount-content > .woocommerce-notices-wrapper,
html body.woocommerce-account .woocommerce-MyAccount-content > .woocommerce-message,
html body.woocommerce-account .woocommerce-MyAccount-content > .woocommerce-info,
html body.woocommerce-account .woocommerce-MyAccount-content > .woocommerce-error,
html body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-error,
html body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-message,
html body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info {
  display: block !important;
  visibility: visible !important;
  margin: 0 0 18px !important;
}

/* Label de seção "Nome da pessoa que irá receber" — alinhado com início da nav lateral */
html body .mt-section-label {
  color: var(--mt-gold, #D4AF37) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
  margin: 0 0 12px !important;
  padding: 0 0 8px !important;
  border-bottom: 1px solid var(--mt-border, #2A1F0E) !important;
  width: 100% !important;
  flex: 0 0 100% !important;
}

/* CEP: mostra um indicador de busca */
html body input.mt-cep-loading {
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23D4AF37' stroke-width='3' stroke-linecap='round'><path d='M12 2 a10 10 0 0 1 10 10' opacity='.6'><animateTransform attributeName='transform' type='rotate' from='0 12 12' to='360 12 12' dur='0.8s' repeatCount='indefinite'/></path></svg>") !important;
  background-repeat: no-repeat !important;
  background-position: right 10px center !important;
  background-size: 16px !important;
  padding-right: 32px !important;
}

/* Garante que label do Complemento (address_2) apareça (WC esconde por padrão) */
html body.woocommerce-account #shipping_address_2_field label {
  display: block !important;
  visibility: visible !important;
  position: static !important;
  height: auto !important;
  width: auto !important;
  clip: auto !important;
  overflow: visible !important;
  margin: 0 0 6px !important;
}

/* Botões em TODAS as áreas do Minha Conta (Pedidos: Visualizar, Downloads: Baixar,
 * Endereços: Editar, Senha: Salvar) — mesma cor + mesma fonte */
html body.woocommerce-account .woocommerce-MyAccount-content .button,
html body.woocommerce-account .woocommerce-MyAccount-content a.button,
html body.woocommerce-account .woocommerce-MyAccount-content button.button,
html body.woocommerce-account .woocommerce-MyAccount-content button[type="submit"],
html body.woocommerce-account .woocommerce-MyAccount-content input[type="submit"],
html body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Button,
html body.woocommerce-account .woocommerce-orders-table__cell-order-actions .button,
html body.woocommerce-account .woocommerce-MyAccount-orders .button,
html body.woocommerce-account .woocommerce-MyAccount-downloads .button,
html body.woocommerce-account form .button,
html body.woocommerce-account form input[name="save_address"] {
  background: var(--mt-gold, #D4AF37) !important;
  color: var(--mt-black, #0A0A0A) !important;
  border: 0 !important;
  padding: 12px 26px !important;
  font-family: var(--font-sans, 'Inter', sans-serif) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  border-radius: 3px !important;
  cursor: pointer !important;
  text-decoration: none !important;
  display: inline-block !important;
  line-height: 1.2 !important;
  transition: background 0.2s !important;
}
html body.woocommerce-account .woocommerce-MyAccount-content .button:hover,
html body.woocommerce-account .woocommerce-MyAccount-content a.button:hover,
html body.woocommerce-account .woocommerce-MyAccount-content button[type="submit"]:hover,
html body.woocommerce-account .woocommerce-MyAccount-content input[type="submit"]:hover {
  background: var(--mt-gold-light, #E8D9B0) !important;
  color: var(--mt-black, #0A0A0A) !important;
}
/* Botão principal de salvar (form) — um pouco maior pra hierarquia visual */
html body.woocommerce-account form button[type="submit"],
html body.woocommerce-account form input[type="submit"],
html body.woocommerce-account form input[name="save_address"] {
  padding: 14px 32px !important;
  letter-spacing: 3px !important;
}

/* Select2 (país, estado) — bate com a paleta dark */
html body.woocommerce-account .select2-container--default .select2-selection--single,
html body.woocommerce-account .select2-container--default .select2-selection--multiple {
  background: var(--mt-black, #0A0A0A) !important;
  border: 1px solid var(--mt-border, #2A1F0E) !important;
  color: var(--mt-gold-light, #E8D9B0) !important;
  height: 42px !important;
  padding: 6px 10px !important;
  border-radius: 3px !important;
  font-family: var(--font-sans, 'Inter', sans-serif) !important;
  font-size: 13px !important;
}
html body.woocommerce-account .select2-container--default .select2-selection--single .select2-selection__rendered {
  color: var(--mt-gold-light, #E8D9B0) !important;
  line-height: 28px !important;
  padding-left: 0 !important;
  padding-right: 28px !important;
}
html body.woocommerce-account .select2-container--default .select2-selection--single .select2-selection__placeholder {
  color: var(--mt-gold-dark, #8B7355) !important;
}
html body.woocommerce-account .select2-container--default .select2-selection--single .select2-selection__arrow {
  height: 100% !important;
  top: 0 !important;
  right: 8px !important;
}
html body.woocommerce-account .select2-container--default .select2-selection--single .select2-selection__arrow b {
  border-color: var(--mt-gold, #D4AF37) transparent transparent transparent !important;
}
html body.woocommerce-account .select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b {
  border-color: transparent transparent var(--mt-gold, #D4AF37) transparent !important;
}
/* Dropdown aberto (precisa ser global pois o WC injeta no <body>, não dentro do .woocommerce-account) */
html body .select2-container--default .select2-dropdown {
  background: var(--mt-bg-secondary, #14100A) !important;
  border: 1px solid var(--mt-border, #2A1F0E) !important;
  color: var(--mt-gold-light, #E8D9B0) !important;
}
html body .select2-container--default .select2-results__option {
  background: var(--mt-bg-secondary, #14100A) !important;
  color: var(--mt-gold-light, #E8D9B0) !important;
  padding: 9px 14px !important;
  font-family: var(--font-sans, 'Inter', sans-serif) !important;
  font-size: 13px !important;
}
html body .select2-container--default .select2-results__option--highlighted[aria-selected],
html body .select2-container--default .select2-results__option--highlighted {
  background: var(--mt-gold, #D4AF37) !important;
  color: var(--mt-black, #0A0A0A) !important;
}
html body .select2-container--default .select2-results__option[aria-selected="true"] {
  background: var(--mt-bg-primary, #0A0705) !important;
  color: var(--mt-gold, #D4AF37) !important;
}
html body .select2-container--default .select2-search--dropdown .select2-search__field {
  background: var(--mt-black, #0A0A0A) !important;
  border: 1px solid var(--mt-border, #2A1F0E) !important;
  color: var(--mt-gold-light, #E8D9B0) !important;
  padding: 8px 10px !important;
  border-radius: 3px !important;
}
html body .select2-container--default .select2-search--dropdown .select2-search__field:focus {
  border-color: var(--mt-gold, #D4AF37) !important;
  outline: 0 !important;
}

/* Breadcrumbs (Início > Página > ...): remove a borda roxa do :focus em todas as páginas */
html body .woocommerce-breadcrumb a,
html body .woocommerce-breadcrumb a:focus,
html body .woocommerce-breadcrumb a:focus-visible,
html body .woocommerce-breadcrumb a:active,
html body nav.woocommerce-breadcrumb a,
html body nav.woocommerce-breadcrumb a:focus,
html body nav.woocommerce-breadcrumb a:focus-visible,
html body nav.woocommerce-breadcrumb a:active,
html body .storefront-breadcrumb a,
html body .storefront-breadcrumb a:focus,
html body .storefront-breadcrumb a:focus-visible,
html body .storefront-breadcrumb a:active,
html body .breadcrumbs a,
html body .breadcrumbs a:focus,
html body .breadcrumbs a:focus-visible,
html body .breadcrumbs a:active,
html body .breadcrumb a,
html body .breadcrumb a:focus,
html body .breadcrumb a:focus-visible,
html body .breadcrumb a:active {
  outline: 0 !important;
  outline: none !important;
  box-shadow: none !important;
  -webkit-tap-highlight-color: transparent !important;
}

/* Filtros da loja (sidebar de categorias e checkboxes): remove a borda roxa do :focus */
html body .mt-sidebar-list li a,
html body .mt-sidebar-list li a:focus,
html body .mt-sidebar-list li a:focus-visible,
html body .mt-sidebar-list li a:active,
html body .mt-sidebar-checkboxes label,
html body .mt-sidebar-checkboxes label:focus,
html body .mt-sidebar-checkboxes label:focus-visible,
html body .mt-sidebar-checkboxes label:active,
html body .mt-sidebar-checkboxes input[type="checkbox"]:focus,
html body .mt-sidebar-checkboxes input[type="checkbox"]:focus-visible,
html body .mt-sidebar-checkboxes input[type="checkbox"]:active,
html body .mt-cat-chip,
html body .mt-cat-chip:focus,
html body .mt-cat-chip:focus-visible,
html body .mt-cat-chip:active,
html body .mt-shop-filter-toggle:focus,
html body .mt-shop-filter-toggle:focus-visible,
html body .mt-shop-filter-toggle:active,
html body .mt-sidebar-close:focus,
html body .mt-sidebar-close:focus-visible,
html body .mt-sidebar-close:active {
  outline: 0 !important;
  outline: none !important;
  box-shadow: none !important;
  -webkit-tap-highlight-color: transparent !important;
}

/* Remove SUBLINHADO de todos os menus do site (todos os estados) */
html body .main-navigation ul.menu li a,
html body .main-navigation ul.menu li a:hover,
html body .main-navigation ul.menu li a:focus,
html body .main-navigation ul.menu li a:active,
html body .main-navigation ul.menu li a:visited,
html body .main-navigation ul.nav-menu li a,
html body .main-navigation ul.nav-menu li a:hover,
html body .main-navigation ul.nav-menu li a:focus,
html body .main-navigation ul.nav-menu li a:active,
html body .main-navigation ul.nav-menu li a:visited,
html body .main-navigation ul.menu ul.sub-menu li a,
html body .main-navigation ul.menu ul.sub-menu li a:hover,
html body .main-navigation ul.menu ul.sub-menu li a:focus,
html body .main-navigation ul.menu ul.sub-menu li a:active,
html body .secondary-navigation ul.menu li a,
html body .secondary-navigation ul.menu li a:hover,
html body .secondary-navigation ul.menu li a:focus,
html body .secondary-navigation ul.menu li a:active,
html body .mt-util,
html body .mt-util:hover,
html body .mt-util:focus,
html body .mt-util:visited {
  text-decoration: none !important;
}

/* Menus principais (desktop e mobile): remove a borda roxa do :focus padrão do navegador */
html body .main-navigation ul.menu li a,
html body .main-navigation ul.menu li a:focus,
html body .main-navigation ul.menu li a:focus-visible,
html body .main-navigation ul.menu li a:active,
html body .main-navigation ul.nav-menu li a,
html body .main-navigation ul.nav-menu li a:focus,
html body .main-navigation ul.nav-menu li a:focus-visible,
html body .main-navigation ul.nav-menu li a:active,
html body .main-navigation ul.menu ul.sub-menu li a,
html body .main-navigation ul.menu ul.sub-menu li a:focus,
html body .main-navigation ul.menu ul.sub-menu li a:focus-visible,
html body .main-navigation ul.menu ul.sub-menu li a:active,
html body .secondary-navigation ul.menu li a,
html body .secondary-navigation ul.menu li a:focus,
html body .secondary-navigation ul.menu li a:focus-visible,
html body .secondary-navigation ul.menu li a:active,
html body .mt-util,
html body .mt-util:focus,
html body .mt-util:focus-visible,
html body .mt-util:active {
  outline: 0 !important;
  outline: none !important;
  box-shadow: none !important;
  -webkit-tap-highlight-color: transparent !important;
}

/* Tabs do produto (Descrição, Informação adicional, Avaliações):
   remove a borda roxa do :focus padrão do navegador */
html body.single-product .woocommerce-tabs ul.tabs li a,
html body.single-product .woocommerce-tabs ul.tabs li a:focus,
html body.single-product .woocommerce-tabs ul.tabs li a:focus-visible,
html body.single-product .woocommerce-tabs ul.tabs li a:active,
html body.single-product .woocommerce-tabs ul.wc-tabs li a,
html body.single-product .woocommerce-tabs ul.wc-tabs li a:focus,
html body.single-product .woocommerce-tabs ul.wc-tabs li a:focus-visible,
html body.single-product .woocommerce-tabs ul.wc-tabs li a:active {
  outline: 0 !important;
  outline: none !important;
  box-shadow: none !important;
  border-color: var(--mt-border, #2A1F0E) !important;
}
html body.single-product .woocommerce-tabs ul.tabs li a:focus,
html body.single-product .woocommerce-tabs ul.wc-tabs li a:focus {
  -webkit-tap-highlight-color: transparent !important;
}

/* CHECKOUT — ajustes aplicados sob demanda */

/* Esconde APENAS o título "Informações de contato" (mantém os outros 3 steps com título) */
html body.woocommerce-checkout .wp-block-woocommerce-checkout-contact-information-block .wc-block-components-checkout-step__title,
html body.woocommerce-checkout .wc-block-checkout__contact-fields .wc-block-components-checkout-step__title {
  display: none !important;
}

/* Esconde o checkbox "Crie uma conta" (marcado por default via JS no footer) */
html body.woocommerce-checkout .wc-block-checkout__create-account,
html body.woocommerce-checkout .wc-block-components-checkbox.wc-block-checkout__create-account {
  display: none !important;
}

/* Esconde o checkbox "Usar o mesmo endereço para cobrança" (já vem marcado por default
   pelo WC; bloco de billing já não renderiza enquanto checked=true). */
html body.woocommerce-checkout .wc-block-checkout__use-address-for-billing,
html body.woocommerce-checkout .wc-block-components-checkbox.wc-block-checkout__use-address-for-billing {
  display: none !important;
}

/* Esconde o select de PAÍS (já vem com BR default e é o único permitido) */
html body.woocommerce-checkout .wc-block-components-address-form__country,
html body.woocommerce-checkout .wc-block-components-country-input {
  display: none !important;
}

/* Títulos dos steps do checkout — fonte padrão Inter (vence regra das páginas institucionais).
   `body.mt-tema` (não html.mt-tema) — mt-tema está no body, não no html. */
html body.mt-tema.woocommerce-checkout .entry-content h2.wc-block-components-checkout-step__title,
html body.mt-tema.woocommerce-checkout .wp-block-woocommerce-checkout h2.wc-block-components-checkout-step__title,
html body.mt-tema.woocommerce-checkout h2.wc-block-components-checkout-step__title,
html body.woocommerce-checkout h2.wc-block-components-checkout-step__title {
  font-family: var(--font-sans, 'Inter', -apple-system, BlinkMacSystemFont, sans-serif) !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  letter-spacing: 1px !important;
}

/* Address form do checkout — permite reorder via flex sem mudar layout visual.
   `flex-direction: column` mantém empilhamento vertical exatamente como display:block. */
html body.woocommerce-checkout #shipping .wc-block-components-address-form {
  display: flex !important;
  flex-direction: column !important;
}
/* Complemento (address_2) DEPOIS de cidade (order maior).
   Default dos outros campos é order:0, então qualquer order >= 1 vai pro fim.
   City precisa ter order menor que address_2 mas maior que os anteriores. */
html body.woocommerce-checkout #shipping .wc-block-components-address-form__city {
  order: 50 !important;
}
html body.woocommerce-checkout #shipping .wc-block-components-text-input.wc-block-components-address-form__address_2,
html body.woocommerce-checkout #shipping .wc-block-components-address-form > .wc-block-components-address-form__address_2-toggle {
  order: 60 !important;
}
html body.woocommerce-checkout #shipping .wc-block-components-address-form__state {
  order: 70 !important;
}

/* Esconde o campo CPF/CNPJ no checkout (não usado neste site) */
html body.woocommerce-checkout #billing_document,
html body.woocommerce-checkout label[for="billing_document"],
html body.woocommerce-checkout .wc-better-billing-document,
html body.woocommerce-checkout .wc-block-components-address-form__document {
  display: none !important;
}

/* Esconde o checkbox "Sem número (S/N)" do plugin Better Shipping Calc */
html body.woocommerce-checkout #wc-shipping-better-checkbox,
html body.woocommerce-checkout label:has(#wc-shipping-better-checkbox),
html body.woocommerce-checkout .wc-block-components-checkbox:has(#wc-shipping-better-checkbox) {
  display: none !important;
}

/* Opções de entrega + Opções de pagamento — REMOVE TUDO que pareça borda/card.
   Cobre: borda real, outline, box-shadow E pseudo-elements ::before/::after
   (que o WC usa pra desenhar separador 1px branco entre as opções) */
html body.woocommerce-checkout .wc-block-components-radio-control,
html body.woocommerce-checkout .wc-block-components-radio-control--highlight-checked,
html body.woocommerce-checkout .wc-block-components-radio-control--highlight-checked--last-selected,
html body.woocommerce-checkout .wc-block-components-radio-control__option,
html body.woocommerce-checkout .wc-block-components-radio-control__option:hover,
html body.woocommerce-checkout .wc-block-components-radio-control__option-checked,
html body.woocommerce-checkout .wc-block-components-radio-control-accordion-option,
html body.woocommerce-checkout .wc-block-components-shipping-rates-control,
html body.woocommerce-checkout .wc-block-components-shipping-rates-control__package,
html body.woocommerce-checkout .wc-block-checkout__shipping-option {
  border: 0 !important;
  border-color: transparent !important;
  border-radius: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
}
html body.woocommerce-checkout .wc-block-components-radio-control__option {
  padding-top: 10px !important;
  padding-bottom: 10px !important;
}
/* Remove pseudo-elements (separador de 1px branco que cria efeito de borda/card) */
html body.woocommerce-checkout .wc-block-components-radio-control::before,
html body.woocommerce-checkout .wc-block-components-radio-control::after,
html body.woocommerce-checkout .wc-block-components-radio-control--highlight-checked::before,
html body.woocommerce-checkout .wc-block-components-radio-control--highlight-checked::after,
html body.woocommerce-checkout .wc-block-components-radio-control--highlight-checked--last-selected::before,
html body.woocommerce-checkout .wc-block-components-radio-control--highlight-checked--last-selected::after,
html body.woocommerce-checkout .wc-block-components-radio-control__option::before,
html body.woocommerce-checkout .wc-block-components-radio-control__option::after,
html body.woocommerce-checkout .wc-block-components-radio-control__option-checked::before,
html body.woocommerce-checkout .wc-block-components-radio-control__option-checked::after {
  display: none !important;
  content: none !important;
  background: transparent !important;
  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
}

/* Bolinha do radio (Opções de entrega + Opções de pagamento) — preencher com cor visível
   Atualmente o ::before tinha bg PRETO sobre fundo preto = invisível */
html body.woocommerce-checkout .wc-block-components-radio-control__option-checked input[type="radio"]::before,
html body.woocommerce-checkout .wc-block-components-radio-control__input:checked::before,
html body.woocommerce-checkout input.wc-block-components-radio-control__input:checked::before {
  background-color: #ffffff !important;
  background: #ffffff !important;
}
/* Borda do radio (estado normal e checked) — visível sobre fundo escuro */
html body.woocommerce-checkout .wc-block-components-radio-control__input,
html body.woocommerce-checkout input.wc-block-components-radio-control__input {
  border-color: #E8D9B0 !important;
}
html body.woocommerce-checkout .wc-block-components-radio-control__input:checked,
html body.woocommerce-checkout input.wc-block-components-radio-control__input:checked {
  border-color: #ffffff !important;
}

/* Spinner do botão REMOVIDO em todos os contextos:
   - Página do produto: "Comprar"
   - Cards de produto: "Adicionar ao carrinho"
   - Carrinho: "Comprar agora"
   - Checkout: "Finalizar compra" */
html body.single-product div.product form.cart .single_add_to_cart_button.loading::after,
html body.single-product div.product form.cart button.single_add_to_cart_button.loading::after,
html body div.product .single_add_to_cart_button.loading::after,
html body .add_to_cart_button.loading::after,
html body button.button.loading::after,
html body a.button.loading::after,
html body .single_add_to_cart_button.loading::before,
html body .add_to_cart_button.loading::before,
/* Cart Block (Comprar Agora) */
html body .wc-block-cart__submit-button .wc-block-components-spinner,
html body .wc-block-cart__submit-button[aria-busy="true"]::after,
html body .wc-block-cart__submit-button[aria-busy="true"]::before,
html body .wc-block-components-checkout-button .wc-block-components-spinner,
html body .wc-block-components-checkout-button[aria-busy="true"]::after,
html body .wc-block-components-checkout-button[aria-busy="true"]::before,
html body .wp-block-woocommerce-proceed-to-checkout-block a .wc-block-components-spinner,
html body .wp-block-woocommerce-proceed-to-checkout-block button .wc-block-components-spinner,
html body .wp-block-woocommerce-proceed-to-checkout-block a[aria-busy="true"]::after,
html body .wp-block-woocommerce-proceed-to-checkout-block button[aria-busy="true"]::after,
/* Checkout Block (Finalizar Compra / place-order) */
html body .wc-block-components-checkout-place-order-button .wc-block-components-spinner,
html body .wc-block-components-checkout-place-order-button[aria-busy="true"]::after,
html body .wc-block-components-checkout-place-order-button[aria-busy="true"]::before,
/* Generic spinner do WC Blocks em qualquer botão */
html body button.wc-block-components-button .wc-block-components-spinner,
html body a.wc-block-components-button .wc-block-components-spinner {
  display: none !important;
  content: none !important;
  visibility: hidden !important;
  width: 0 !important;
  height: 0 !important;
  opacity: 0 !important;
}
/* Mantém texto visível durante loading (em todos os botões) */
html body .single_add_to_cart_button.loading,
html body .add_to_cart_button.loading,
html body button.button.loading,
html body a.button.loading,
html body .wc-block-cart__submit-button[aria-busy="true"],
html body .wp-block-woocommerce-proceed-to-checkout-block a[aria-busy="true"],
html body .wp-block-woocommerce-proceed-to-checkout-block button[aria-busy="true"],
html body .wc-block-components-checkout-place-order-button[aria-busy="true"] {
  color: inherit !important;
  opacity: 0.7 !important;
}

/* iOS Safari faz zoom-in automático em <input>/<select>/<textarea> com font-size < 16px.
   Forçamos font-size 16px em todos os inputs no MOBILE pra evitar esse zoom indesejado
   (que quebra responsividade ao clicar em CEP, busca, etc). */
@media (max-width: 768px) {
  html body input[type="text"],
  html body input[type="email"],
  html body input[type="tel"],
  html body input[type="number"],
  html body input[type="search"],
  html body input[type="password"],
  html body input[type="url"],
  html body input[type="date"],
  html body select,
  html body textarea,
  /* IDs específicos com mais specificity */
  html body input#inputCep,
  html body input.iptCep,
  html body input.calculatorRow,
  html body input[id*="cep" i],
  html body input[id*="postcode" i],
  html body input[name*="postcode"],
  html body input[name*="cep"],
  html body .containerCalculator input,
  html body .resultado-frete input,
  html body .wcbsccfb-shipping-calculator input {
    font-size: 16px !important;
    -webkit-text-size-adjust: 100% !important;
  }
}
/* Em DESKTOP também aplicamos pra evitar inconsistência */
html body input#inputCep,
html body input.iptCep {
  font-size: 16px !important;
}

/* Calculadora de frete (Woo Better Shipping Calculator for Brazil):
   força quebra de texto e impede overflow horizontal no mobile */
html body.single-product div.product .containerCalculator,
html body.single-product div.product .containerCalculator *,
html body.single-product div.product .resultado-frete,
html body.single-product div.product .resultado-frete *,
html body .containerCalculator,
html body .resultado-frete,
html body .wcbsccfb-shipping-calculator,
html body .wcbsccfb-shipping-calculator * {
  max-width: 100% !important;
  word-wrap: break-word !important;
  overflow-wrap: break-word !important;
  white-space: normal !important;
  box-sizing: border-box !important;
  word-break: break-word !important;
}
html body.single-product div.product .containerCalculator,
html body.single-product div.product .resultado-frete {
  overflow-x: hidden !important;
  width: 100% !important;
}
html body.single-product div.product .resultado-frete table {
  width: 100% !important;
  table-layout: fixed !important;
}
html body.single-product div.product .resultado-frete td,
html body.single-product div.product .resultado-frete th {
  padding: 6px 8px !important;
  font-size: 12px !important;
  line-height: 1.4 !important;
}

/* ============================================
   PÁGINA DO PRODUTO — Ajustes finais
   ============================================ */

/* 1) Selo "OFERTA!" em cima da imagem principal, mesma cor dos cards (bordô + dourado) */
html body.single-product div.product .woocommerce-product-gallery,
html body.single-product div.product .images {
  position: relative !important;
}
html body.single-product div.product .woocommerce-product-gallery .onsale,
html body.single-product div.product .images .onsale,
html body.single-product div.product > .onsale,
html body.single-product .product .onsale {
  position: absolute !important;
  top: 12px !important;
  left: 12px !important;
  right: auto !important;
  z-index: 10 !important;
  background: var(--mt-bordo, #6B1F2E) !important;
  color: var(--mt-gold-light, #E8D9B0) !important;
  border: 0 !important;
  border-radius: 2px !important;
  padding: 6px 12px !important;
  font-family: var(--font-sans, 'Inter', sans-serif) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
  line-height: 1 !important;
  margin: 0 !important;
  min-width: 0 !important;
  min-height: 0 !important;
  width: auto !important;
  height: auto !important;
  text-align: center !important;
  box-shadow: 0 2px 6px rgba(0,0,0,0.4) !important;
}

/* 2) Miniaturas da galeria centralizadas e alinhadas com a largura da imagem principal
   (desktop e mobile com mesmo layout) */
html body.single-product div.product .flex-control-thumbs,
html body.single-product div.product ol.flex-control-thumbs,
html body.single-product div.product .flex-control-nav.flex-control-thumbs {
  display: flex !important;
  flex-wrap: nowrap !important;
  justify-content: center !important;
  gap: 10px !important;
  padding: 12px 0 0 !important;
  margin: 0 !important;
  list-style: none !important;
  width: 100% !important;
}
html body.single-product div.product .flex-control-thumbs li {
  flex: 1 1 0 !important;
  width: auto !important;
  max-width: 25% !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}
html body.single-product div.product .flex-control-thumbs li img {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  aspect-ratio: 1 / 1 !important;
  object-fit: cover !important;
  margin: 0 !important;
  opacity: 0.7;
  transition: opacity 0.2s, border-color 0.2s;
  border: 1px solid var(--mt-border, #2A1F0E) !important;
  border-radius: 3px !important;
  box-sizing: border-box !important;
  cursor: pointer !important;
}
html body.single-product div.product .flex-control-thumbs li img.flex-active,
html body.single-product div.product .flex-control-thumbs li:hover img {
  opacity: 1;
  border-color: var(--mt-gold, #D4AF37) !important;
}

/* 3) Mobile: "Ofertas para você" (related) vira CARROSSEL horizontal, 2 cards por vez */
@media (max-width: 768px) {
  html body.single-product section.related,
  html body.single-product section.related.products,
  html body section.related.products {
    padding: 18px 0 24px !important;
    margin: 24px 0 0 !important;
  }
  html body.single-product section.related > h2,
  html body section.related.products > h2 {
    padding: 0 16px 12px !important;
    margin: 0 !important;
    text-align: left !important;
  }
  /* (carrossel removido — grid 2-col vertical aplicado mais abaixo) */
}

/* ============================================
   FIX FINAL — "Ofertas para você" (related products) na página do produto
   Override agressivo (final do arquivo, máxima prioridade na cascata)
   ============================================ */
html body.single-product section.related,
html body.single-product section.related.products,
html body section.related.products {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  clear: both !important;
  float: none !important;
  margin: 40px 0 0 !important;
  padding: 24px 24px 32px !important;
  box-sizing: border-box !important;
}
html body.single-product section.related ul.products,
html body.single-product section.related.products ul.products,
html body.single-product section.related ul.products.columns-4,
html body.single-product section.related.products ul.products.columns-4,
html body section.related.products ul.products,
html body section.related.products ul.products.columns-4 {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 18px !important;
  width: 100% !important;
  max-width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  list-style: none !important;
  float: none !important;
}
html body.single-product section.related ul.products > li.product,
html body.single-product section.related.products ul.products > li.product,
html body.single-product section.related.products ul.products.columns-4 > li.product,
html body section.related.products ul.products > li.product,
html body section.related.products ul.products.columns-4 > li.product {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  flex: unset !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  clear: none !important;
  grid-column: auto / auto !important;
}
@media (max-width: 1100px) {
  html body section.related.products ul.products,
  html body section.related.products ul.products.columns-4 {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}
/* ╔═════════════════════════════════════════════════════════════════╗
   ║ MOBILE — "Ofertas para você" (related products) na single-product ║
   ║ CARROSSEL HORIZONTAL: mostra 2 cards visíveis, swipe revela próximos ║
   ║ Specificity altíssima (html.mt-tema body.single-product) pra vencer ║
   ║ qualquer regra de grid global.                                       ║
   ╚═════════════════════════════════════════════════════════════════╝ */
@media (max-width: 768px) {
  html.mt-tema body.single-product section.related,
  html.mt-tema body.single-product section.related.products,
  html body.single-product section.related,
  html body.single-product section.related.products {
    overflow-x: hidden !important;
    overflow-y: visible !important;
    max-width: 100% !important;
    width: 100% !important;
    box-sizing: border-box !important;
    padding: 18px 0 24px !important;
    margin: 24px 0 0 !important;
    clear: both !important;
  }
  html.mt-tema body.single-product section.related > h2,
  html body.single-product section.related > h2 {
    padding: 0 16px 14px !important;
    margin: 0 !important;
    text-align: left !important;
  }
  /* O <ul> vira FLEX HORIZONTAL com scroll, sem grid */
  html.mt-tema body.single-product section.related ul.products,
  html.mt-tema body.single-product section.related.products ul.products,
  html.mt-tema body.single-product section.related ul.products.columns-4,
  html.mt-tema body.single-product section.related.products ul.products.columns-4,
  html body.single-product section.related ul.products,
  html body.single-product section.related.products ul.products,
  html body.single-product section.related ul.products.columns-4,
  html body.single-product section.related.products ul.products.columns-4 {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-snap-type: x mandatory !important;
    -webkit-overflow-scrolling: touch !important;
    grid-template-columns: none !important;
    grid-template-rows: none !important;
    grid-auto-flow: unset !important;
    padding: 4px 12px 12px !important;
    gap: 10px !important;
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    scrollbar-width: none !important;
    -ms-overflow-style: none !important;
  }
  html body.single-product section.related ul.products::-webkit-scrollbar,
  html body.single-product section.related.products ul.products::-webkit-scrollbar {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
  }
  /* Cada <li.product>: largura calc(50% - 5px) = 2 cards visíveis na viewport */
  html.mt-tema body.single-product section.related ul.products > li.product,
  html.mt-tema body.single-product section.related.products ul.products > li.product,
  html.mt-tema body.single-product section.related.products ul.products.columns-4 > li.product,
  html body.single-product section.related ul.products > li.product,
  html body.single-product section.related.products ul.products > li.product,
  html body.single-product section.related.products ul.products.columns-4 > li.product {
    flex: 0 0 calc(50% - 5px) !important;
    width: calc(50% - 5px) !important;
    min-width: calc(50% - 5px) !important;
    max-width: calc(50% - 5px) !important;
    margin: 0 !important;
    padding: 0 !important;
    scroll-snap-align: start !important;
    scroll-snap-stop: always !important;
    grid-column: auto !important;
    grid-row: auto !important;
    float: none !important;
    clear: none !important;
  }
  /* Título do produto: nome completo, sem corte */
  html body.single-product section.related ul.products > li.product .woocommerce-loop-product__title,
  html body.single-product section.related.products ul.products > li.product .woocommerce-loop-product__title,
  html body.single-product section.related.products ul.products.columns-4 > li.product .woocommerce-loop-product__title,
  html body.single-product section.related ul.products > li.product h2.woocommerce-loop-product__title,
  html body.single-product section.related.products ul.products > li.product h2.woocommerce-loop-product__title {
    line-height: 1.3 !important;
    margin: 0 0 4px !important;
    display: block !important;
    overflow: visible !important;
    -webkit-line-clamp: unset !important;
    line-clamp: unset !important;
    text-overflow: clip !important;
    white-space: normal !important;
    word-break: break-word !important;
  }
  /* CARDS COM ALTURA IGUAL — botões COMPRAR sempre alinhados no rodapé */
  html body.single-product section.related ul.products,
  html body.single-product section.related.products ul.products {
    align-items: stretch !important;
  }
  html body.single-product section.related ul.products > li.product,
  html body.single-product section.related.products ul.products > li.product {
    display: flex !important;
    flex-direction: column !important;
    align-self: stretch !important;
    height: auto !important;
  }
  /* Link wrapper que envolve imagem/título/preço cresce pra empurrar o botão pro fim */
  html body.single-product section.related ul.products > li.product > a.woocommerce-LoopProduct-link,
  html body.single-product section.related.products ul.products > li.product > a.woocommerce-LoopProduct-link {
    display: flex !important;
    flex-direction: column !important;
    flex: 1 1 auto !important;
  }
  /* Botão COMPRAR ancorado no fundo de cada card */
  html body.single-product section.related ul.products > li.product > a.button,
  html body.single-product section.related ul.products > li.product > .button,
  html body.single-product section.related.products ul.products > li.product > a.button,
  html body.single-product section.related.products ul.products > li.product > .button {
    margin-top: auto !important;
    align-self: stretch !important;
  }
}

/* ============================================
   PÁGINAS INSTITUCIONAIS — Quem Somos, Políticas, FAQ
   Tipografia rica, primeiro parágrafo em destaque, headings e tabelas estilizadas
   ============================================ */
html body.page:not(.home):not(.woocommerce-cart):not(.woocommerce-checkout):not(.woocommerce-account) .entry-content {
  max-width: 820px !important;
  margin: 0 auto !important;
  padding: 0 18px 32px !important;
  font-size: 15.5px !important;
  line-height: 1.75 !important;
  color: var(--mt-gold-light, #E8D9B0) !important;
}
/* Primeiro parágrafo (introdução) em destaque, igual ao mt-welcome-text */
html body.page:not(.home):not(.woocommerce-cart):not(.woocommerce-checkout):not(.woocommerce-account) .entry-content > p:first-of-type {
  background: rgba(212, 175, 55, 0.06) !important;
  border-left: 3px solid var(--mt-gold, #D4AF37) !important;
  padding: 16px 20px !important;
  margin: 0 0 28px !important;
  border-radius: 3px !important;
  font-size: 16px !important;
  line-height: 1.6 !important;
}
/* Headings - APENAS em paginas institucionais (.mt-page-apoio) */
html body.mt-page-apoio .entry-content h2 {
  font-family: var(--font-serif, 'Playfair Display', serif) !important;
  font-size: 26px !important;
  font-weight: 500 !important;
  letter-spacing: 0.5px !important;
  color: currentColor !important;
  margin: 38px 0 14px !important;
  padding: 0 0 8px !important;
  border-bottom: 1px solid currentColor !important;
  line-height: 1.25 !important;
}
html body.mt-page-apoio .entry-content h3 {
  font-family: var(--font-sans, 'Inter', sans-serif) !important;
  font-size: 17px !important;
  font-weight: 700 !important;
  letter-spacing: 0.3px !important;
  color: currentColor !important;
  margin: 22px 0 8px !important;
}
html body.mt-page-apoio .entry-content h4 {
  font-size: 14px !important;
  font-weight: 700 !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
  color: currentColor !important;
  margin: 18px 0 6px !important;
}
/* Listas */
html body.mt-page-apoio .entry-content ul,
html body.mt-page-apoio .entry-content ol {
  padding-left: 22px !important;
  margin: 10px 0 18px !important;
}
html body.mt-page-apoio .entry-content li {
  margin-bottom: 6px !important;
  line-height: 1.65 !important;
}
html body.mt-page-apoio .entry-content li::marker {
  color: currentColor;
}
html body.mt-page-apoio .entry-content strong {
  color: currentColor !important;
  font-weight: 700 !important;
}
html body.mt-page-apoio .entry-content em {
  color: currentColor !important;
  font-style: italic !important;
}
html body.mt-page-apoio .entry-content a {
  color: currentColor !important;
  text-decoration: underline !important;
  text-underline-offset: 2px !important;
}
html body.mt-page-apoio .entry-content a:hover {
  color: currentColor !important;
}
/* Tabelas - apenas em paginas institucionais (.mt-page-apoio), nao em cart/account */
html body.mt-page-apoio .entry-content table.mt-page-table,
html body.mt-page-apoio .entry-content table {
  width: 100% !important;
  border-collapse: collapse !important;
  margin: 18px 0 24px !important;
  background: transparent !important;
  border: 1px solid currentColor !important;
  border-radius: 4px !important;
  overflow: hidden !important;
}
html body.mt-page-apoio .entry-content table th {
  background: transparent !important;
  color: currentColor !important;
  text-align: left !important;
  padding: 10px 14px !important;
  font-size: 12px !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
  border-bottom: 1px solid currentColor !important;
}
html body.mt-page-apoio .entry-content table td {
  padding: 10px 14px !important;
  border-bottom: 1px dashed currentColor !important;
  font-size: 14px !important;
}
html body.mt-page-apoio .entry-content table tr:last-child td {
  border-bottom: 0 !important;
}
/* hr */
html body.mt-page-apoio .entry-content hr {
  border: 0 !important;
  border-top: 1px solid currentColor !important;
  margin: 32px 0 !important;
}
/* Mobile */
@media (max-width: 600px) {
  html body.page:not(.home) .entry-content { font-size: 14.5px !important; line-height: 1.65 !important; padding: 0 14px 24px !important; }
  html body.page:not(.home) .entry-content > p:first-of-type { font-size: 14px !important; padding: 14px 16px !important; }
  html body.page:not(.home) .entry-content h2 { font-size: 22px !important; margin: 30px 0 10px !important; }
  html body.page:not(.home) .entry-content h3 { font-size: 16px !important; }
  html body.page:not(.home) .entry-content table th,
  html body.page:not(.home) .entry-content table td { padding: 8px 10px !important; font-size: 13px !important; }
}

/* Esconde a navegação flutuante "produto anterior/próximo" do Storefront
   (mini cards que apareciam grudados nas laterais da tela ao passar o mouse) */
html body .storefront-product-pagination,
html body nav.storefront-product-pagination,
html body.single-product .storefront-product-pagination {
  display: none !important;
  visibility: hidden !important;
}

/* Esconde H1 vazios/desnecessários da home + qualquer .woocommerce-ordering duplicado
   (mantemos só o nosso #mt-orderby na topbar) */
html body.home h1.entry-title,
html body.home .entry-header,
html body.page-id-131 h1.entry-title,
html body.page-id-131 .entry-header {
  display: none !important;
}
html body.woocommerce-page form.woocommerce-ordering:not(.mt-shop-sort),
html body.mt-pagina-loja form.woocommerce-ordering:not(.mt-shop-sort),
html body .mt-shop-main form.woocommerce-ordering:not(.mt-shop-sort) {
  display: none !important;
}

/* Cards de produto: força BOTÃO COMPRAR no rodapé do card (margin-top: auto)
   independente da altura do bloco de preço.
   Promoções (com <del>+<ins>) ocupam mais altura que preços normais — se o botão
   não tiver margin-top: auto, ele desce só nos cards de promo, desalinhando a fileira. */
html body ul.products > li.product > a.button,
html body ul.products > li.product > .button,
html body ul.products > li.product .add_to_cart_button,
html body ul.mt-products-grid > li.product > a.button,
html body ul.mt-products-grid > li.product > .button,
html body section.related.products ul.products > li.product > a.button,
html body section.related.products ul.products > li.product > .button,
html body section.up-sells.products ul.products > li.product > a.button,
html body section.up-sells.products ul.products > li.product > .button,
html body .mt-shop-wrap ul.products > li.product > a.button,
html body .mt-shop-wrap ul.products > li.product > .button {
  margin-top: auto !important;
  align-self: stretch !important;
}
/* Garante que o LINK <a> (que envolve a maior parte do card) NÃO seja flex-grow
   maior que o restante — só o suficiente pra empurrar o button pro fim */
html body ul.products > li.product > a.woocommerce-LoopProduct-link,
html body ul.mt-products-grid > li.product > a.woocommerce-LoopProduct-link {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
}
/* Preço tachado (<del>) com fonte do mesmo tamanho do "A partir de" (11px)
   pra alinhar baseline junto. Cor sutil mas visível. */
html body ul.products li.product .price del,
html body ul.products li.product .price del *,
html body ul.products li.product .price del .woocommerce-Price-amount,
html body ul.products li.product .price del bdi,
html body ul.mt-products-grid li.product .price del,
html body ul.mt-products-grid li.product .price del *,
html body ul.mt-products-grid li.product .price del .woocommerce-Price-amount,
html body section.related.products li.product .price del,
html body section.related.products li.product .price del *,
html body section.up-sells.products li.product .price del,
html body section.up-sells.products li.product .price del *,
html body .mt-shop-wrap ul.products li.product .price del,
html body .mt-shop-wrap ul.products li.product .price del * {
  font-size: 11px !important;
  line-height: 1.4 !important;
  opacity: 0.9 !important;
  font-weight: 400 !important;
  color: var(--mt-gold-light, #E8D9B0) !important;
  vertical-align: baseline !important;
  text-decoration: line-through !important;
  text-decoration-thickness: 1px !important;
}
@media (max-width: 768px) {
  html body ul.products li.product .price del,
  html body ul.products li.product .price del *,
  html body ul.mt-products-grid li.product .price del,
  html body ul.mt-products-grid li.product .price del *,
  html body section.related.products li.product .price del,
  html body section.related.products li.product .price del *,
  html body .mt-shop-wrap ul.products li.product .price del,
  html body .mt-shop-wrap ul.products li.product .price del * {
    font-size: 10px !important;
  }
}

/* Neutraliza o fundo branco/azulado do autofill (Chrome/Edge/Safari)
   nos campos de input em formulários do site */
html body input:-webkit-autofill,
html body input:-webkit-autofill:hover,
html body input:-webkit-autofill:focus,
html body input:-webkit-autofill:active,
html body select:-webkit-autofill,
html body textarea:-webkit-autofill {
  -webkit-box-shadow: 0 0 0 1000px var(--mt-black, #0A0A0A) inset !important;
  box-shadow: 0 0 0 1000px var(--mt-black, #0A0A0A) inset !important;
  -webkit-text-fill-color: var(--mt-gold-light, #E8D9B0) !important;
  caret-color: var(--mt-gold-light, #E8D9B0) !important;
  background-color: var(--mt-black, #0A0A0A) !important;
  background-image: none !important;
  transition: background-color 600000s ease-in-out 0s;
  -webkit-background-clip: content-box !important;
}

/* Form de avaliação: esconde o checkbox "Salvar meus dados neste navegador"
   (já vem marcado por default via PHP) */
html body.single-product #commentform .comment-form-cookies-consent,
html body .comment-form-cookies-consent,
html body #commentform p.comment-form-cookies-consent {
  display: none !important;
}

/* Mensagem "Entre na sua conta para avaliar" — destaque dourado */
html body .mt-must-login,
html body p.mt-must-login {
  background: rgba(212, 175, 55, 0.06) !important;
  border-left: 3px solid var(--mt-gold, #D4AF37) !important;
  padding: 16px 20px !important;
  margin: 14px 0 !important;
  border-radius: 3px !important;
  color: var(--mt-gold-light, #E8D9B0) !important;
  font-size: 14px !important;
  letter-spacing: 0.3px !important;
  line-height: 1.5 !important;
}
html body .mt-must-login a,
html body p.mt-must-login a {
  color: var(--mt-gold, #D4AF37) !important;
  font-weight: 700 !important;
  text-decoration: underline !important;
  margin-left: 4px !important;
}
html body .mt-must-login a:hover {
  color: var(--mt-gold-light, #E8D9B0) !important;
}

/* ╔════════════════════════════════════════════════════════════════╗
   ║ FIX FINAL — CARRINHO                                            ║
   ║ 1) Tabela de produtos sem NENHUMA borda                          ║
   ║ 2) Botão "Comprar Agora" com texto centralizado vertical        ║
   ║ Specificity altíssima (html.mt-tema body.woocommerce-cart).     ║
   ╚════════════════════════════════════════════════════════════════╝ */

/* 1) BORDAS DA TABELA DE PRODUTOS — zero em todos os níveis */
html.mt-tema body.woocommerce-cart .wp-block-woocommerce-filled-cart-block table,
html.mt-tema body.woocommerce-cart .wp-block-woocommerce-filled-cart-block thead,
html.mt-tema body.woocommerce-cart .wp-block-woocommerce-filled-cart-block tbody,
html.mt-tema body.woocommerce-cart .wp-block-woocommerce-filled-cart-block tr,
html.mt-tema body.woocommerce-cart .wp-block-woocommerce-filled-cart-block th,
html.mt-tema body.woocommerce-cart .wp-block-woocommerce-filled-cart-block td,
html.mt-tema body.woocommerce-cart table.wc-block-cart-items,
html.mt-tema body.woocommerce-cart table.wc-block-cart-items thead,
html.mt-tema body.woocommerce-cart table.wc-block-cart-items tbody,
html.mt-tema body.woocommerce-cart table.wc-block-cart-items tr,
html.mt-tema body.woocommerce-cart table.wc-block-cart-items th,
html.mt-tema body.woocommerce-cart table.wc-block-cart-items td,
html.mt-tema body.woocommerce-cart .wc-block-cart-items__row {
  border: 0 !important;
  border-top: 0 !important;
  border-right: 0 !important;
  border-bottom: 0 !important;
  border-left: 0 !important;
  box-shadow: none !important;
}

/* 2) BOTÃO COMPRAR AGORA — texto centralizado VERTICAL via flex + line-height igual à altura */
html.mt-tema body.woocommerce-cart .wp-block-woocommerce-proceed-to-checkout-block a,
html.mt-tema body.woocommerce-cart .wp-block-woocommerce-proceed-to-checkout-block button,
html.mt-tema body.woocommerce-cart .wc-block-cart__submit-button,
html.mt-tema body.woocommerce-cart a.wc-block-components-checkout-button,
html.mt-tema body.woocommerce-cart button.wc-block-components-checkout-button {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: center !important;
  height: 40px !important;
  min-height: 40px !important;
  max-height: 40px !important;
  padding: 0 18px !important;
  line-height: 1 !important;
  vertical-align: middle !important;
  text-align: center !important;
  box-sizing: border-box !important;
}
/* Filhos diretos do botão (span do React) — também centralizam */
html.mt-tema body.woocommerce-cart .wp-block-woocommerce-proceed-to-checkout-block a > *,
html.mt-tema body.woocommerce-cart .wp-block-woocommerce-proceed-to-checkout-block button > *,
html.mt-tema body.woocommerce-cart .wc-block-cart__submit-button > *,
html.mt-tema body.woocommerce-cart .wc-block-components-button__text {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1 !important;
  vertical-align: middle !important;
  align-self: center !important;
}

/* Remove bordas externas + INTERNAS dos formulários e blocos do carrinho/checkout */
html body.woocommerce-cart .wp-block-woocommerce-cart,
html body.woocommerce-cart .wp-block-woocommerce-cart-items-block,
html body.woocommerce-cart .wp-block-woocommerce-cart-totals-block,
html body.woocommerce-cart .wp-block-woocommerce-cart-order-summary-block,
html body.woocommerce-cart .wp-block-woocommerce-filled-cart-block,
html body.woocommerce-cart .wc-block-cart,
html body.woocommerce-cart .wc-block-cart__main,
html body.woocommerce-cart .wc-block-cart__sidebar,
html body.woocommerce-cart .wc-block-cart-items,
html body.woocommerce-cart table.wc-block-cart-items,
html body.woocommerce-cart .wc-block-cart-items__row,
html body.woocommerce-cart tr.wc-block-cart-items__row,
html body.woocommerce-cart .wc-block-cart-items thead,
html body.woocommerce-cart .wc-block-cart-items tbody,
html body.woocommerce-cart .wc-block-cart-items th,
html body.woocommerce-cart .wc-block-cart-items td,
html body.woocommerce-cart .wc-block-cart-items tr,
html body.woocommerce-cart .wc-block-components-totals-wrapper,
html body.woocommerce-cart .wc-block-components-totals-coupon,
html body.woocommerce-cart .wc-block-components-totals-coupon__form,
html body.woocommerce-cart .wc-block-components-panel,
html body.woocommerce-cart .wc-block-components-sidebar-layout,
html body.woocommerce-checkout .wp-block-woocommerce-checkout,
html body.woocommerce-checkout .wc-block-checkout,
html body.woocommerce-checkout .wc-block-checkout__main,
html body.woocommerce-checkout .wc-block-checkout__sidebar,
html body.woocommerce-checkout .wp-block-woocommerce-checkout-shipping-address-block,
html body.woocommerce-checkout .wp-block-woocommerce-checkout-billing-address-block,
html body.woocommerce-checkout .wp-block-woocommerce-checkout-shipping-method-block,
html body.woocommerce-checkout .wp-block-woocommerce-checkout-payment-block,
html body.woocommerce-checkout .wc-block-components-address-form,
html body.woocommerce-checkout fieldset {
  border: 0 !important;
  border-top: 0 !important;
  border-right: 0 !important;
  border-bottom: 0 !important;
  border-left: 0 !important;
  box-shadow: none !important;
  outline: 0 !important;
}

/* Carrinho desktop:
   - container alinhado com o breadcrumb (1100px)
   - SIDEBAR maior (Total estimado precisa respirar)
   - NÃO mexe no display do filled-cart (deixa o sidebar-layout natural do WC funcionar) */
@media (min-width: 768px) {
  html body.woocommerce-cart.page #content.site-content .col-full,
  html body.woocommerce-cart .site-content .col-full,
  html body.page.woocommerce-cart .site-content .col-full {
    max-width: 1100px !important;
  }
  html body.woocommerce-cart #primary,
  html body.woocommerce-cart #primary.content-area {
    width: 100% !important;
    max-width: 100% !important;
  }
  html body.woocommerce-cart .wp-block-woocommerce-cart,
  html body.woocommerce-cart .wp-block-woocommerce-cart.alignwide,
  html body.woocommerce-cart .wp-block-woocommerce-cart.alignfull,
  html body.woocommerce-cart .wp-block-woocommerce-filled-cart-block {
    max-width: 100% !important;
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  /* Sidebar maior pro Total estimado respirar — sem mexer no display do filled-cart */
  html body.woocommerce-cart .wc-block-cart__sidebar {
    width: 38% !important;
    max-width: 440px !important;
    min-width: 300px !important;
  }
  html body.woocommerce-cart .wc-block-cart__main {
    width: 58% !important;
    min-width: 0 !important;
  }
}

/* Esconde título "Total no carrinho" (sidebar do summary) */
html body.woocommerce-cart .wc-block-cart__totals-title,
html body.woocommerce-cart .wp-block-woocommerce-cart-order-summary-heading-block,
html body.woocommerce-cart h2.wc-block-cart__totals-title {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Header "Total" da tabela do carrinho alinhado à DIREITA — igual ao conteúdo da célula */
html body.woocommerce-cart .wc-block-cart-items__header-total,
html body.woocommerce-cart th.wc-block-cart-items__header-total,
html body.woocommerce-cart .wc-block-cart-item__total {
  text-align: right !important;
}

/* Item do carrinho: layout em 3 linhas no canto direito:
   1) "Economize"
   2) Valor da economia (R$ X,XX)
   3) Preço total */
html body.woocommerce-cart .wc-block-cart-item__total-price-and-sale-badge-wrapper {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-end !important;
  gap: 2px !important;
}
html body.woocommerce-cart .wc-block-cart-item__total-price-and-sale-badge-wrapper .wc-block-components-sale-badge {
  order: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-end !important;
  gap: 2px !important;
  text-align: right !important;
  line-height: 1.2 !important;
}
/* Quebra "Economize" do valor: o <span> do valor dentro do badge vira block */
html body.woocommerce-cart .wc-block-components-sale-badge .wc-block-components-formatted-money-amount,
html body.woocommerce-cart .wc-block-components-sale-badge bdi {
  display: block !important;
  width: 100% !important;
  text-align: right !important;
  white-space: nowrap !important;
}
html body.woocommerce-cart .wc-block-cart-item__total-price-and-sale-badge-wrapper .wc-block-components-product-price,
html body.woocommerce-cart .wc-block-cart-item__total-price-and-sale-badge-wrapper > .wc-block-components-formatted-money-amount {
  order: 1 !important;
  margin-top: 4px !important;
}
/* Preço total não quebra no meio */
html body.woocommerce-cart .wc-block-components-product-price .wc-block-components-formatted-money-amount {
  white-space: nowrap !important;
  word-break: keep-all !important;
}

/* ===========================================================
   CARRINHO — Calculadora de frete (Better Shipping):
   - Botão CONSULTAR / ALTERAR: branco com letra preta, 100% w
   - Borda do input CEP: branca
   - Empilha input em cima e botão embaixo (vertical)
   - Esconde toggle "recolher", labels (Carrinho/Quantidade/Métodos),
     "Atualizado em..." e "Valor de frete calculado para todos..."
   =========================================================== */

/* INPUT CEP — borda branca + 100% largura */
html body.woocommerce-cart .woo-better-input-current-style,
html body.woocommerce-cart input.woo-better-input-current-style {
  border-color: #ffffff !important;
  border-width: 1px !important;
  border-style: solid !important;
  width: 100% !important;
  min-width: 100% !important;
  max-width: 100% !important;
  flex: 1 1 100% !important;
  box-sizing: border-box !important;
}

/* Wrapper do input — ocupa 100% (display: block pra garantir largura total) */
html body.woocommerce-cart .woo-better-input-wrapper-current-style {
  display: block !important;
  width: 100% !important;
  min-width: 100% !important;
  max-width: 100% !important;
  flex: 1 1 100% !important;
  box-sizing: border-box !important;
}

/* Container externo (parent + container current) — 100% w */
html body.woocommerce-cart .woo-better-parent-container,
html body.woocommerce-cart .woo-better-container-current-style {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

/* Group input+button — empilhar vertical (input em cima, botão embaixo) */
html body.woocommerce-cart .woo-better-input-button-group-current-style {
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
  width: 100% !important;
  align-items: stretch !important;
}

/* Botão CONSULTAR — branco com letra preta, 100% w (igual Comprar Agora) */
html body.woocommerce-cart .woo-better-button-current-style,
html body.woocommerce-cart button.woo-better-button-current-style,
html body.woocommerce-cart .woo-better-button-current-style.spinning,
html body.woocommerce-cart button.woo-better-button-current-style.spinning,
html body.woocommerce-cart .woo-better-button-current-style[disabled],
html body.woocommerce-cart .woo-better-button-current-style:disabled,
html body.woocommerce-cart .woo-better-button-current-style:focus,
html body.woocommerce-cart .woo-better-button-current-style:active {
  background: #ffffff !important;
  background-color: #ffffff !important;
  color: #000000 !important;
  border: 1px solid #ffffff !important;
  width: 100% !important;
  min-width: 0 !important;
  font-weight: 700 !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
  padding: 14px 22px !important;
}
html body.woocommerce-cart .woo-better-button-current-style:hover {
  background: #f2f2f2 !important;
  background-color: #f2f2f2 !important;
  color: #000000 !important;
  border-color: #f2f2f2 !important;
}
/* Spinner dentro do CONSULTAR (estado loading) — preto sobre branco */
html body.woocommerce-cart .woo-better-button-current-style .loading-icon,
html body.woocommerce-cart .woo-better-button-current-style .spinning-container,
html body.woocommerce-cart .woo-better-button-current-style svg,
html body.woocommerce-cart .woo-better-button-current-style svg * {
  color: #000000 !important;
  stroke: #000000 !important;
  fill: #000000 !important;
}

/* Botão ALTERAR (aparece após calcular CEP) — mesmo estilo do CONSULTAR */
html body.woocommerce-cart .woo-better-change-postcode-button {
  background: #ffffff !important;
  background-color: #ffffff !important;
  color: #000000 !important;
  border: 1px solid #ffffff !important;
  border-radius: 3px !important;
  width: 100% !important;
  font-weight: 700 !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
  padding: 14px 22px !important;
  cursor: pointer !important;
}
html body.woocommerce-cart .woo-better-change-postcode-button:hover {
  background: #f2f2f2 !important;
  background-color: #f2f2f2 !important;
}

/* Esconde TOGGLE "recolher" do CEP (botão ao lado do "CEP: XXX") */
html body.woocommerce-cart .woo-better-toggle-button,
html body.woocommerce-cart .woo-better-toggle-postcode-wrapper {
  display: none !important;
}

/* Esconde labels redundantes:
   - "Carrinho" (com ícone de produto)
   - "Quantidade: 1" (com ícone de quantidade)
   - "Métodos de Entrega:" (P dentro do shipping-methods, mantém UL com lista) */
html body.woocommerce-cart .woo-better-cart-name,
html body.woocommerce-cart .woo-better-cart-quantity,
html body.woocommerce-cart .woo-better-shipping-methods > p {
  display: none !important;
}

/* Esconde rodapé do bloco: "Atualizado em..." e
   "Valor de frete calculado para todos os itens do carrinho." + separador */
html body.woocommerce-cart .woo-better-update-section,
html body.woocommerce-cart .woo-better-separator {
  display: none !important;
}

/* Layout do bloco "current postcode" (após calcular):
   "CEP: XXX-XX" em cima + botão Alterar embaixo, ambos 100% w
   Sem bordas, sem fundo (mesmo bg da página) */
html body.woocommerce-cart .woo-better-current-postcode-block {
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
  align-items: stretch !important;
  border: 0 !important;
  background: transparent !important;
  background-color: transparent !important;
  padding: 0 !important;
  margin: 0 !important;
}
html body.woocommerce-cart .woo-better-current-postcode-text {
  text-align: left !important;
  padding: 4px 0 !important;
}

/* Bloco de conteúdo (lista de fretes após calcular) — sem fundo / borda */
html body.woocommerce-cart .woo-better-content-block {
  border: 0 !important;
  border-bottom: 0 !important;
  background: transparent !important;
  background-color: transparent !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* Lista de fretes — texto na cor padrão da página (branco) */
html body.woocommerce-cart .woo-better-shipping-list,
html body.woocommerce-cart .woo-better-shipping-list li,
html body.woocommerce-cart .woo-better-shipping-list li *,
html body.woocommerce-cart .woo-better-shipping-list li strong {
  color: #ffffff !important;
}

/* Botão ALTERAR — sem sublinhado */
html body.woocommerce-cart .woo-better-change-postcode-button,
html body.woocommerce-cart .woo-better-change-postcode-button:hover,
html body.woocommerce-cart .woo-better-change-postcode-button:focus,
html body.woocommerce-cart .woo-better-change-postcode-button:active {
  text-decoration: none !important;
}

/* ===========================================================
   PÁGINA "PEDIDO RECEBIDO" (/finalizar-compra/order-received/)
   - Fundo igual da página (transparente sobre body preto)
   - Texto branco igual restante do site
   - Fonte Inter
   - Remove cartões claros + zigzag de "recibo"
   =========================================================== */
html body .woocommerce-order,
html body .woocommerce-order *,
html body .woocommerce-order-received,
html body .woocommerce-order-received *,
html body .wc-bacs-bank-details *,
html body .woocommerce-customer-details * {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  color: #ffffff !important;
  font-family: var(--font-sans, 'Inter', -apple-system, BlinkMacSystemFont, sans-serif) !important;
  border-color: rgba(255,255,255,0.15) !important;
  box-shadow: none !important;
  text-shadow: none !important;
}

/* Cartão "Order Overview" (NÚMERO/DATA/EMAIL/TOTAL/PAGAMENTO)
   — sem fundo claro, sem bordas zigzag */
html body .woocommerce-order-overview,
html body ul.woocommerce-order-overview,
html body .woocommerce-thankyou-order-details,
html body ul.order_details {
  background: transparent !important;
  background-image: none !important;
  border: 0 !important;
  padding: 0 !important;
  margin: 24px 0 !important;
  list-style: none !important;
}
/* Zigzag (estilo "recibo") em cima e embaixo do UL — pseudo-elements com linear-gradient */
html body .woocommerce-order-overview::before,
html body .woocommerce-order-overview::after,
html body ul.woocommerce-order-overview::before,
html body ul.woocommerce-order-overview::after,
html body .woocommerce-thankyou-order-details::before,
html body .woocommerce-thankyou-order-details::after,
html body ul.order_details::before,
html body ul.order_details::after {
  display: none !important;
  content: none !important;
  background: transparent !important;
  background-image: none !important;
  border: 0 !important;
  height: 0 !important;
}
html body .woocommerce-order-overview li,
html body .woocommerce-thankyou-order-details li,
html body ul.order_details li {
  background: transparent !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(255,255,255,0.12) !important;
  padding: 14px 0 !important;
  margin: 0 !important;
  color: #ffffff !important;
  font-family: inherit !important;
  font-size: 13px !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
  list-style: none !important;
}
html body .woocommerce-order-overview li strong,
html body .woocommerce-thankyou-order-details li strong,
html body ul.order_details li strong {
  display: block !important;
  margin-top: 6px !important;
  color: #ffffff !important;
  font-weight: 700 !important;
  font-size: 18px !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  font-family: inherit !important;
}

/* Notice "Obrigado. Seu pedido foi recebido." */
html body .woocommerce-notice,
html body .woocommerce-notice--success,
html body p.woocommerce-thankyou-order-received {
  background: transparent !important;
  color: #ffffff !important;
  font-family: var(--font-sans, 'Inter', sans-serif) !important;
  font-size: 18px !important;
  font-weight: 600 !important;
  padding: 0 0 16px 0 !important;
  margin-bottom: 24px !important;
  border: 0 !important;
}

/* Tabelas de detalhes do pedido */
html body .woocommerce-order table,
html body .woocommerce-order .shop_table,
html body .woocommerce-table,
html body table.woocommerce-table--order-details,
html body table.woocommerce-table--customer-details {
  background: transparent !important;
  color: #ffffff !important;
  font-family: var(--font-sans, 'Inter', sans-serif) !important;
  border: 0 !important;
  border-collapse: collapse !important;
  width: 100% !important;
  margin: 16px 0 24px 0 !important;
}
html body .woocommerce-order table th,
html body .woocommerce-order table td,
html body .woocommerce-table th,
html body .woocommerce-table td {
  background: transparent !important;
  color: #ffffff !important;
  border-color: rgba(255,255,255,0.12) !important;
  border-style: solid !important;
  border-width: 0 0 1px 0 !important;
  padding: 12px 8px !important;
}
html body .woocommerce-order table tfoot th,
html body .woocommerce-order table tfoot td {
  font-weight: 700 !important;
}

/* Headings: "Detalhes do pedido", "Endereço de entrega", etc */
html body .woocommerce-order h2,
html body .woocommerce-order h3,
html body .woocommerce-customer-details h2,
html body .woocommerce-customer-details h3 {
  color: #ffffff !important;
  font-family: var(--font-sans, 'Inter', sans-serif) !important;
  font-weight: 700 !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
  font-size: 16px !important;
  margin-top: 32px !important;
  margin-bottom: 12px !important;
  padding-bottom: 8px !important;
  border-bottom: 1px solid rgba(255,255,255,0.15) !important;
}

/* Endereços */
html body .woocommerce-customer-details address {
  background: transparent !important;
  color: #ffffff !important;
  font-family: var(--font-sans, 'Inter', sans-serif) !important;
  border: 1px solid rgba(255,255,255,0.15) !important;
  padding: 16px !important;
  font-style: normal !important;
}

/* Links dentro do bloco — em dourado claro pra destacar */
html body .woocommerce-order a,
html body .woocommerce-customer-details a {
  color: #E8D9B0 !important;
}
html body .woocommerce-order a:hover,
html body .woocommerce-customer-details a:hover {
  color: #ffffff !important;
}

/* =============================================================
   CLASSIC CHECKOUT (shortcode [woocommerce_checkout]) — RESET LIMPO
   Migração do Block Checkout pro Classic Checkout (Asaas compat).
   Mantém só: bg preto da página, texto branco, dourado pra acentos.
   Removidos todos os estilos custom do Block.
   ============================================================= */

/* Container geral — herda do site (preto + branco) */
html body.woocommerce-checkout,
html body.woocommerce-checkout #content,
html body.woocommerce-checkout #primary,
html body.woocommerce-checkout #main,
html body.woocommerce-checkout main#main,
html body.woocommerce-checkout .col-full {
  background: var(--mt-black, #0A0A0A) !important;
  background-color: var(--mt-black, #0A0A0A) !important;
  color: #ffffff !important;
}
html body.woocommerce-checkout * {
  color: inherit;
}

/* Layout do form do checkout — MOBILE FIRST: 1 coluna sempre.
   #customer_details (.col2-set interno) — billing + shipping empilhados */
html body.woocommerce-checkout form.checkout {
  background: transparent !important;
  display: block !important;
}
html body.woocommerce-checkout form.checkout > .col2-set,
html body.woocommerce-checkout form.checkout #customer_details.col2-set {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  float: none !important;
  margin: 0 0 24px 0 !important;
}
html body.woocommerce-checkout form.checkout .col-1,
html body.woocommerce-checkout form.checkout .col-2 {
  width: 100% !important;
  max-width: 100% !important;
  float: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  display: block !important;
}
html body.woocommerce-checkout form.checkout .col-2 {
  margin-top: 24px !important;
}

/* DESKTOP (≥ 900px): 2 colunas — esquerda 40% (dados) | direita 60% (resumo + pagto)
   Fix de alinhamento: usa grid-row explícito em CADA item da coluna 2 e
   grid-row: 1 / -1 no customer_details (sem criar linhas implícitas vazias) */
@media (min-width: 900px) {
  html body.woocommerce-checkout form.checkout {
    display: grid !important;
    grid-template-columns: 2fr 3fr !important; /* 40% / 60% */
    grid-template-rows: auto auto auto !important;
    gap: 0 48px !important;
    align-items: start !important;
  }
  /* Coluna 1: customer_details ocupa todas as 3 linhas */
  html body.woocommerce-checkout form.checkout #customer_details {
    grid-column: 1 !important;
    grid-row: 1 / -1 !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  /* Coluna 2: cada item em uma linha específica */
  html body.woocommerce-checkout form.checkout #order_review_heading {
    grid-column: 2 !important;
    grid-row: 1 !important;
    margin: 0 !important;
    padding: 0 0 10px 0 !important;
  }
  html body.woocommerce-checkout form.checkout > .wc-better-shipping-progress-bar {
    grid-column: 2 !important;
    grid-row: 2 !important;
    margin: 12px 0 !important;
  }
  html body.woocommerce-checkout form.checkout #order_review {
    grid-column: 2 !important;
    grid-row: 3 !important;
    margin-top: 0 !important;
    position: sticky !important;
    top: 24px !important;
    align-self: start !important;
  }
}

/* Bloco "Cartão de Crédito" — labels dos inputs alinhadas à esquerda */
html body.woocommerce-checkout .payment_box,
html body.woocommerce-checkout .payment_method_woo-asaas-credit-card .payment_box,
html body.woocommerce-checkout .payment_method_woo-asaas-credit-card .form-row,
html body.woocommerce-checkout .payment_method_woo-asaas-credit-card label {
  text-align: left !important;
}
html body.woocommerce-checkout .payment_method_woo-asaas-credit-card .form-row {
  display: block !important;
  margin-bottom: 12px !important;
}
html body.woocommerce-checkout .payment_method_woo-asaas-credit-card label {
  display: block !important;
  margin-bottom: 6px !important;
  font-size: 12px !important;
  color: rgba(255,255,255,0.85) !important;
  letter-spacing: 0.3px !important;
  text-transform: none !important;
  font-weight: 500 !important;
}

/* Headings dos blocos: "Detalhes de cobrança", "Seu pedido", "Cartão de crédito" */
html body.woocommerce-checkout h2,
html body.woocommerce-checkout h3,
html body.woocommerce-checkout #customer_details h3,
html body.woocommerce-checkout #order_review_heading {
  background: transparent !important;
  color: currentColor !important;
  font-family: var(--font-sans, 'Inter', sans-serif) !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
  border: 0 !important;
  border-bottom: 1px solid currentColor !important;
  padding: 0 0 10px 0 !important;
  margin: 0 0 16px 0 !important;
}

/* Labels dos campos */
html body.woocommerce-checkout label,
html body.woocommerce-checkout .form-row label {
  color: rgba(255,255,255,0.85) !important;
  font-family: var(--font-sans, 'Inter', sans-serif) !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  letter-spacing: 0.5px !important;
  text-transform: none !important;
  margin-bottom: 6px !important;
  display: block !important;
}
html body.woocommerce-checkout label .required,
html body.woocommerce-checkout abbr.required {
  color: #E8D9B0 !important;
  text-decoration: none !important;
  border: 0 !important;
}

/* Campos de input (texto, email, tel, select, textarea) */
html body.woocommerce-checkout input[type="text"],
html body.woocommerce-checkout input[type="email"],
html body.woocommerce-checkout input[type="tel"],
html body.woocommerce-checkout input[type="number"],
html body.woocommerce-checkout input[type="password"],
html body.woocommerce-checkout textarea,
html body.woocommerce-checkout select,
html body.woocommerce-checkout .select2-container--default .select2-selection--single,
html body.woocommerce-checkout .select2-selection {
  background: transparent !important;
  background-color: transparent !important;
  color: currentColor !important;
  border: 1px solid currentColor !important;
  border-radius: 3px !important;
  padding: 12px 14px !important;
  font-size: 14px !important;
  font-family: var(--font-sans, 'Inter', sans-serif) !important;
  width: 100% !important;
  box-sizing: border-box !important;
  height: auto !important;
  line-height: 1.4 !important;
}
html body.woocommerce-checkout input::placeholder,
html body.woocommerce-checkout textarea::placeholder {
  color: currentColor !important;
  opacity: 0.5 !important;
}
html body.woocommerce-checkout input:focus,
html body.woocommerce-checkout textarea:focus,
html body.woocommerce-checkout select:focus,
html body.woocommerce-checkout .select2-container--default .select2-selection--single:focus {
  outline: 0 !important;
  border-color: #E8D9B0 !important;
  background: rgba(255,255,255,0.06) !important;
}

/* Select2 (estado/país) — aparência consistente com inputs */
html body.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__rendered {
  color: #ffffff !important;
  line-height: 1.4 !important;
  padding: 0 !important;
}
html body.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__arrow {
  height: 100% !important;
  top: 0 !important;
}

/* Form row (espaçamento entre campos) */
html body.woocommerce-checkout .form-row,
html body.woocommerce-checkout p.form-row {
  margin: 0 0 14px 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
}

/* Tabela "Seu pedido" (resumo do carrinho) */
html body.woocommerce-checkout #order_review,
html body.woocommerce-checkout .woocommerce-checkout-review-order,
html body.woocommerce-checkout .woocommerce-checkout-review-order-table {
  background: transparent !important;
  color: #ffffff !important;
  width: 100% !important;
  margin-top: 16px !important;
}
html body.woocommerce-checkout table.shop_table,
html body.woocommerce-checkout table.woocommerce-checkout-review-order-table {
  background: transparent !important;
  color: #ffffff !important;
  border: 0 !important;
  border-collapse: collapse !important;
  font-family: var(--font-sans, 'Inter', sans-serif) !important;
}
html body.woocommerce-checkout table.shop_table th,
html body.woocommerce-checkout table.shop_table td,
html body.woocommerce-checkout table.woocommerce-checkout-review-order-table th,
html body.woocommerce-checkout table.woocommerce-checkout-review-order-table td {
  background: transparent !important;
  color: currentColor !important;
  border: 0 !important;
  border-bottom: 1px solid currentColor !important;
  padding: 14px 8px !important;
  font-size: 13px !important;
}
html body.woocommerce-checkout table.shop_table thead th {
  font-size: 11px !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
  color: currentColor !important;
  font-weight: 700 !important;
}
html body.woocommerce-checkout table.shop_table tfoot th,
html body.woocommerce-checkout table.shop_table tfoot td {
  font-weight: 700 !important;
  font-size: 14px !important;
}
html body.woocommerce-checkout table.shop_table tfoot tr:last-child th,
html body.woocommerce-checkout table.shop_table tfoot tr:last-child td {
  font-size: 16px !important;
  color: currentColor !important;
}

/* Bloco "Seu pedido" — preço, métodos de envio, totais */
html body.woocommerce-checkout #order_review .product-name,
html body.woocommerce-checkout #order_review .product-total {
  color: currentColor !important;
}
html body.woocommerce-checkout ul#shipping_method,
html body.woocommerce-checkout ul.woocommerce-shipping-methods {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}
html body.woocommerce-checkout ul#shipping_method li,
html body.woocommerce-checkout ul.woocommerce-shipping-methods li {
  margin: 6px 0 !important;
  color: #ffffff !important;
  font-size: 13px !important;
  background: transparent !important;
}

/* Bloco "Métodos de Pagamento" (#payment) */
html body.woocommerce-checkout #payment,
html body.woocommerce-checkout .woocommerce-checkout-payment {
  background: transparent !important;
  border: 0 !important;
  margin-top: 16px !important;
  padding: 0 !important;
}
html body.woocommerce-checkout ul.payment_methods {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
  border: 0 !important;
}
html body.woocommerce-checkout ul.payment_methods li {
  background: transparent !important;
  color: #ffffff !important;
  border: 1px solid rgba(255,255,255,0.15) !important;
  border-radius: 3px !important;
  padding: 14px 16px !important;
  margin: 0 0 10px 0 !important;
  list-style: none !important;
}
html body.woocommerce-checkout ul.payment_methods li label {
  color: #ffffff !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  letter-spacing: 0.5px !important;
  text-transform: none !important;
  display: inline !important;
  cursor: pointer !important;
  margin-left: 8px !important;
}
html body.woocommerce-checkout ul.payment_methods li input[type="radio"] {
  accent-color: #E8D9B0 !important;
  width: 18px !important;
  height: 18px !important;
  margin-right: 4px !important;
  vertical-align: middle !important;
}
/* Box de detalhes do método (form do cartão, info do PIX, etc.) */
html body.woocommerce-checkout .payment_box,
html body.woocommerce-checkout .payment_method_woo-asaas-credit-card .payment_box,
html body.woocommerce-checkout .payment_method_woo-asaas-pix .payment_box {
  background: rgba(255,255,255,0.03) !important;
  background-color: rgba(255,255,255,0.03) !important;
  color: #ffffff !important;
  border: 1px solid rgba(255,255,255,0.1) !important;
  border-radius: 3px !important;
  padding: 16px !important;
  margin-top: 10px !important;
  font-size: 13px !important;
}
html body.woocommerce-checkout .payment_box::before {
  display: none !important;
}
html body.woocommerce-checkout .payment_box * {
  color: #ffffff !important;
}
html body.woocommerce-checkout .payment_box label {
  color: rgba(255,255,255,0.85) !important;
}
html body.woocommerce-checkout .payment_box input[type="text"],
html body.woocommerce-checkout .payment_box input[type="tel"],
html body.woocommerce-checkout .payment_box input[type="number"],
html body.woocommerce-checkout .payment_box select {
  background: rgba(255,255,255,0.06) !important;
  border: 1px solid rgba(255,255,255,0.18) !important;
  color: #ffffff !important;
}

/* Botão "Finalizar pedido" (#place_order) — branco com letra preta, igual COMPRAR AGORA */
html body.woocommerce-checkout #place_order,
html body.woocommerce-checkout button#place_order,
html body.woocommerce-checkout .woocommerce-checkout button#place_order {
  display: block !important;
  width: 100% !important;
  background: #ffffff !important;
  background-color: #ffffff !important;
  color: #000000 !important;
  border: 0 !important;
  border-radius: 3px !important;
  padding: 18px !important;
  font-family: var(--font-sans, 'Inter', sans-serif) !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: 3px !important;
  text-transform: uppercase !important;
  text-align: center !important;
  text-decoration: none !important;
  transition: background 0.2s !important;
  box-shadow: none !important;
  margin-top: 18px !important;
  cursor: pointer !important;
}
html body.woocommerce-checkout #place_order:hover {
  background: #f2f2f2 !important;
  background-color: #f2f2f2 !important;
  color: #000000 !important;
}

/* Mensagem de cupom (Tem um cupom?) */
html body.woocommerce-checkout .woocommerce-form-coupon-toggle,
html body.woocommerce-checkout .woocommerce-info {
  background: rgba(255,255,255,0.04) !important;
  color: #ffffff !important;
  border: 1px solid rgba(255,255,255,0.12) !important;
  border-radius: 3px !important;
  padding: 14px 16px !important;
  font-size: 13px !important;
  margin-bottom: 16px !important;
}
html body.woocommerce-checkout .woocommerce-info::before {
  color: #E8D9B0 !important;
}
html body.woocommerce-checkout .woocommerce-info a {
  color: #E8D9B0 !important;
}

/* Form de cupom */
html body.woocommerce-checkout form.checkout_coupon {
  background: rgba(255,255,255,0.04) !important;
  border: 1px solid rgba(255,255,255,0.12) !important;
  padding: 14px !important;
  margin-bottom: 16px !important;
  border-radius: 3px !important;
}
html body.woocommerce-checkout form.checkout_coupon button {
  background: #ffffff !important;
  color: #000000 !important;
  border: 0 !important;
  padding: 10px 20px !important;
  font-weight: 700 !important;
  letter-spacing: 1px !important;
  font-size: 12px !important;
  text-transform: uppercase !important;
  border-radius: 3px !important;
}

/* Mensagens de erro/aviso */
html body.woocommerce-checkout .woocommerce-error,
html body.woocommerce-checkout .woocommerce-notice--error {
  background: rgba(107, 31, 46, 0.15) !important;
  color: #ff8a8a !important;
  border: 1px solid #6B1F2E !important;
  padding: 14px !important;
  border-radius: 3px !important;
  margin-bottom: 16px !important;
  list-style: none !important;
}

/* Termos & loading state */
html body.woocommerce-checkout .blockUI.blockOverlay {
  background: rgba(0,0,0,0.7) !important;
}

/* Faz desaparecer o estilo "vertical" antigo do Block que tava vazando */
html body.woocommerce-checkout .wp-block-woocommerce-checkout,
html body.woocommerce-checkout .wp-block-woocommerce-cart {
  display: none !important;
}

/* Menu principal — itens com espaçamento UNIFORME e alinhados à esquerda
   (sem distribuir / sem space-between empurrando o último pra direita) */
@media (min-width: 992px) {
  html body .main-navigation,
  html body nav.main-navigation {
    text-align: left !important;
  }
  html body .main-navigation ul.menu,
  html body .main-navigation ul.nav-menu {
    display: flex !important;
    flex-wrap: nowrap !important;
    justify-content: flex-start !important;
    align-items: center !important;
    gap: 0 !important;
    width: auto !important;
    margin: 0 auto !important;
  }
  html body .main-navigation ul.menu > li,
  html body .main-navigation ul.nav-menu > li {
    flex: 0 0 auto !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  html body .main-navigation ul.menu > li > a,
  html body .main-navigation ul.nav-menu > li > a {
    padding: 14px 12px !important;
    font-size: 12px !important;
    letter-spacing: 0.4px !important;
    white-space: nowrap !important;
    margin: 0 !important;
  }
  /* Anula qualquer margem auto (que isolava o último item) */
  html body .main-navigation ul.menu > li:last-child,
  html body .main-navigation ul.menu > li:first-child,
  html body .main-navigation ul.menu > li.menu-item-pagamentos {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}
@media (min-width: 1200px) {
  html body .main-navigation ul.menu > li > a,
  html body .main-navigation ul.nav-menu > li > a {
    padding: 14px 16px !important;
    font-size: 13px !important;
    letter-spacing: 0.6px !important;
  }
}

/* FAQ — Accordion estiloso usando <details>/<summary> */
html body .mt-faq-page {
  max-width: 880px;
  margin: 0 auto;
}
html body .mt-faq-page .mt-faq-intro {
  font-size: 15px;
  color: rgba(255,255,255,0.8);
  margin-bottom: 32px;
  text-align: center;
}
html body .mt-faq-page .mt-faq-section-title {
  font-family: var(--font-sans, 'Inter', sans-serif) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  color: #E8D9B0 !important;
  margin: 40px 0 16px 0 !important;
  padding-bottom: 8px !important;
  border-bottom: 1px solid rgba(232,217,176,0.25) !important;
}
html body .mt-faq-page .mt-faq-item {
  border-bottom: 1px solid rgba(255,255,255,0.1);
  padding: 0;
  margin: 0;
}
html body .mt-faq-page .mt-faq-item summary {
  cursor: pointer;
  padding: 18px 32px 18px 0;
  list-style: none;
  position: relative;
  font-weight: 600;
  font-size: 15px;
  color: #ffffff;
  font-family: var(--font-sans, 'Inter', sans-serif);
  letter-spacing: 0.2px;
  transition: color 0.18s;
  outline: none;
}
html body .mt-faq-page .mt-faq-item summary:hover {
  color: #E8D9B0;
}
html body .mt-faq-page .mt-faq-item summary::-webkit-details-marker { display: none; }
html body .mt-faq-page .mt-faq-item summary::marker { display: none; content: ""; }
html body .mt-faq-page .mt-faq-item summary::after {
  content: "+";
  position: absolute;
  right: 4px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 22px;
  font-weight: 300;
  color: #E8D9B0;
  transition: transform 0.25s ease;
  line-height: 1;
}
html body .mt-faq-page .mt-faq-item[open] summary::after {
  transform: translateY(-50%) rotate(45deg);
}
html body .mt-faq-page .mt-faq-item[open] summary {
  color: #E8D9B0;
}
html body .mt-faq-page .mt-faq-answer {
  padding: 0 0 20px 0;
  color: rgba(255,255,255,0.78);
  line-height: 1.7;
  font-size: 14px;
  animation: mtFaqFadeIn 0.25s ease;
}
@keyframes mtFaqFadeIn {
  from { opacity: 0; transform: translateY(-4px); }
  to   { opacity: 1; transform: translateY(0); }
}
html body .mt-faq-page .mt-faq-answer p {
  margin: 0 0 12px 0;
}
html body .mt-faq-page .mt-faq-answer p:last-child { margin-bottom: 0; }
html body .mt-faq-page .mt-faq-answer ul,
html body .mt-faq-page .mt-faq-answer ol {
  margin: 8px 0 12px 0;
  padding-left: 22px;
}
html body .mt-faq-page .mt-faq-answer li {
  margin-bottom: 6px;
}
html body .mt-faq-page .mt-faq-answer a {
  color: #E8D9B0;
  text-decoration: underline;
  text-underline-offset: 2px;
}
html body .mt-faq-page .mt-faq-answer a:hover {
  color: #ffffff;
}
html body .mt-faq-page .mt-faq-answer strong {
  color: #ffffff;
  font-weight: 600;
}

/* Calculador de frete (#inputCep) — sempre na linha DEBAIXO do botão Comprar, full width.
   Quantidade [- 1 +] e COMPRAR ficam lado a lado na MESMA linha. */
html body.single-product form.cart .woocommerce-variation-add-to-cart,
html body.single-product form.cart.variations_form .single_variation_wrap .woocommerce-variation-add-to-cart,
html body.single-product div.product form.cart .variations_button,
html body.single-product .summary form.cart .woocommerce-variation-add-to-cart {
  flex-wrap: wrap !important;
  display: flex !important;
  align-items: stretch !important;
  gap: 12px !important;
}
/* Botão Comprar — flex shrink ON, basis 0, min 0 — encaixa no espaço sobrando da quantidade */
html body.single-product form.cart .single_add_to_cart_button,
html body.single-product form.cart button.single_add_to_cart_button {
  flex: 1 1 0 !important;
  min-width: 0 !important;
  max-width: 100% !important;
}
/* Quantidade — fixa no tamanho mínimo (não cresce) */
html body.single-product form.cart .quantity {
  flex: 0 0 auto !important;
  background: transparent !important;
}
html body.single-product form.cart .quantity input.qty,
html body.single-product .mt-qty-stepper input.qty,
html body.single-product .mt-qty-stepper {
  background: transparent !important;
  background-color: transparent !important;
}
/* Calculador CEP — sempre quebra pra próxima linha em full width */
html body.single-product form.cart .woocommerce-variation-add-to-cart .containerCalculator,
html body.single-product form.cart .woocommerce-variation-add-to-cart #woocommerce-correios-calculo-de-frete-na-pagina-do-produto,
html body.single-product .summary form.cart .containerCalculator,
html body.single-product div.product .containerCalculator,
html body.single-product div.product #woocommerce-correios-calculo-de-frete-na-pagina-do-produto {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  flex: 0 0 100% !important;
  flex-basis: 100% !important;
  clear: both !important;
  margin-top: 16px !important;
  order: 99 !important;
  background: transparent !important;
}
/* Input CEP — bg transparente (herda do produto) + borda visível */
html body.single-product .containerCalculator .calculatorRow,
html body.single-product .containerCalculator .row,
html body.single-product .containerCalculator .col-75,
html body.single-product .containerCalculator .col-25,
html body.single-product #inputCep,
html body.single-product input.iptCep {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  background: transparent !important;
  background-color: transparent !important;
}

/* Esconde TODAS as variantes do botão flutuante Storefront Sticky Add To Cart
   (cobre slideInDown/slideInUp/active/etc — plugin adiciona classes em scroll) */
html body section.storefront-sticky-add-to-cart,
html body .storefront-sticky-add-to-cart,
html body section[class*="storefront-sticky-add-to-cart"],
html body div[class*="storefront-sticky-add-to-cart"],
html body .storefront-sticky-add-to-cart--active,
html body .storefront-sticky-add-to-cart--slideInDown,
html body .storefront-sticky-add-to-cart--slideInUp,
html body .storefront-sticky-add-to-cart--slideOutDown,
html body .storefront-sticky-add-to-cart--slideOutUp {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  height: 0 !important;
  width: 0 !important;
  overflow: hidden !important;
  pointer-events: none !important;
  position: absolute !important;
  left: -9999px !important;
  top: -9999px !important;
}

/* Esconde o título grande (h1.entry-title) das páginas institucionais
   — já tem no breadcrumb e fica redundante visualmente */
html body.page-id-91 .entry-header,
html body.page-id-91 .entry-title,
html body.page-id-30 .entry-header,
html body.page-id-30 .entry-title,
html body.page-id-90 .entry-header,
html body.page-id-90 .entry-title,
html body.page-id-36 .entry-header,
html body.page-id-36 .entry-title,
html body.page-id-88 .entry-header,
html body.page-id-88 .entry-title,
html body.page-id-89 .entry-header,
html body.page-id-89 .entry-title,
html body.page-id-422 .entry-header,
html body.page-id-422 .entry-title {
  display: none !important;
}

/* Esconde categoria/tags/sku no single-product (defensivo: PHP já remove via remove_action) */
html body.single-product .product_meta,
html body.single-product .summary .product_meta,
html body.single-product .product_meta .posted_in,
html body.single-product .product_meta .tagged_as {
  display: none !important;
}

/* Reordenar elementos do .summary do single-product (padrão visual MAISON TOP):
   1. Título
   2. Rating
   3. Preço
   4. Parcelamento (4x sem juros)
   5. Short description ("Inspirado em ...")
   6. Form (Volume + Comprar)
   7. Calculador de frete (no fim)
   Layout flex column permite reordenar via `order` sem mexer no PHP/HTML */
html body.single-product .summary,
html body.single-product div.product .summary {
  display: flex !important;
  flex-direction: column !important;
}
/* Ordem: Título → Subtítulo → Rating → Preço → Parcelamento → Form (volume + comprar) */
html body.single-product .summary .product_title         { order: 1 !important; }
/* Subtítulo "inspirado em..." colado logo ABAIXO do título.
   order:1 igual ao título → empate resolvido por ordem no DOM (título vem antes). */
html body.single-product .summary .mt-product-subtitle   { order: 1 !important; }
html body.single-product .summary .woocommerce-product-details__short-description { order: 2 !important; margin-top: 6px !important; }
html body.single-product .summary .woocommerce-product-rating { order: 3 !important; margin-top: 10px !important; }
html body.single-product .summary p.price                { order: 4 !important; margin-top: 14px !important; margin-bottom: 4px !important; }
html body.single-product .summary .mt-installments       { order: 5 !important; }
html body.single-product .summary form.variations_form,
html body.single-product .summary form.cart             { order: 6 !important; margin-top: 18px !important; }
/* Força p.price SEMPRE visível (WC esconde via JS quando variação é selecionada) */
html body.single-product .summary > p.price,
html body.single-product .entry-summary > p.price,
html body.single-product div.product .summary > p.price,
html body.single-product div.product .entry-summary > p.price {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  height: auto !important;
}
/* Esconde o preço DUPLICADO que aparece dentro do form variation (mantém só o p.price acima) */
html body.single-product .summary form.variations_form .single_variation_wrap .single_variation .woocommerce-variation-price,
html body.single-product .summary form.variations_form .single_variation .price {
  display: none !important;
}
html body.single-product .summary .woo-better-parent-container,
html body.single-product .summary .containerCalculator  { order: 7 !important; }
html body.single-product .summary .edit-link            { order: 99 !important; }

/* Bloco "4x sem juros" — visual conforme padrão (ícone laranja + texto) */
html body.single-product .summary .mt-installments {
  font-size: 13px !important;
  color: rgba(255,255,255,0.85) !important;
  margin: 0 0 4px 0 !important;
  padding: 0 !important;
  line-height: 1.4 !important;
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  letter-spacing: 0.2px !important;
}
html body.single-product .summary .mt-installments strong {
  color: #ffffff !important;
  font-weight: 700 !important;
}
html body.single-product .summary .mt-installments-icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 20px !important;
  height: 20px !important;
  background: transparent !important;
  color: #E8D9B0 !important;
  border-radius: 0 !important;
  flex-shrink: 0 !important;
  padding: 0 !important;
}
html body.single-product .summary .mt-installments-icon svg {
  width: 18px !important;
  height: 18px !important;
  display: block !important;
  stroke: #E8D9B0 !important;
  fill: none !important;
}

/* Container .woocommerce-tabs — full width (não pode ficar em coluna estreita) */
html body.single-product .woocommerce-tabs,
html body.single-product div.product .woocommerce-tabs {
  width: 100% !important;
  max-width: 100% !important;
  display: block !important;
  float: none !important;
  margin-top: 32px !important;
  clear: both !important;
}

/* MOBILE FIRST (≤ 768px): ordem do conteúdo + padding lateral
   Galeria → Tabs (Descrição/Info/Avaliações) → Resumo do produto → Relacionados
   Descrição vem ANTES do botão Comprar no mobile (UX: cliente lê antes de decidir) */
@media (max-width: 768px) {
  html body.single-product div.product {
    display: flex !important;
    flex-direction: column !important;
  }
  html body.single-product div.product .woocommerce-product-gallery {
    order: 1 !important;
  }
  html body.single-product div.product .woocommerce-tabs {
    order: 2 !important;
    padding: 0 16px !important;
    margin-top: 24px !important;
  }
  html body.single-product div.product .summary,
  html body.single-product div.product .entry-summary {
    order: 3 !important;
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
    padding: 0 16px !important;
    margin: 24px 0 0 0 !important;
  }
  html body.single-product div.product .related,
  html body.single-product div.product section.related,
  html body.single-product div.product .upsells {
    order: 4 !important;
    padding: 0 16px !important;
  }
  /* Garantir que tabs não fiquem coladas nas bordas */
  html body.single-product .woocommerce-tabs ul.tabs,
  html body.single-product .woocommerce-tabs ul.wc-tabs {
    padding: 0 !important;
  }
  html body.single-product .woocommerce-tabs .panel,
  html body.single-product .woocommerce-tabs .woocommerce-Tabs-panel {
    padding: 16px 0 !important;
  }
}
/* Painéis de conteúdo (Descrição/Info/Avaliações) — full width sem deslocamento */
html body.single-product .woocommerce-tabs .panel,
html body.single-product .woocommerce-tabs .wc-tab,
html body.single-product .woocommerce-tabs .woocommerce-Tabs-panel,
html body.single-product .woocommerce-tabs .woocommerce-Tabs-panel--description,
html body.single-product .woocommerce-tabs .woocommerce-Tabs-panel--additional_information,
html body.single-product .woocommerce-tabs .woocommerce-Tabs-panel--reviews {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  float: none !important;
}

/* Esconde os títulos H2 dentro dos painéis (redundante com o menu de tabs acima):
   "Descrição", "Informação adicional", "1 avaliação para SAVENT" */
html body.single-product .woocommerce-tabs .woocommerce-Tabs-panel--description > h2,
html body.single-product .woocommerce-tabs .woocommerce-Tabs-panel--additional_information > h2,
html body.single-product .woocommerce-tabs .woocommerce-Tabs-panel--reviews > h2,
html body.single-product .woocommerce-tabs #reviews-title,
html body.single-product .woocommerce-tabs h2.woocommerce-Reviews-title,
html body.single-product .woocommerce-tabs #reviews > h2:first-child,
html body.single-product .woocommerce-tabs .panel > h2:first-child,
html body.single-product .woocommerce-tabs .wc-tab > h2:first-child {
  display: none !important;
}
/* Tabs (DESCRIÇÃO / INFORMAÇÃO ADICIONAL / AVALIAÇÕES)
   Horizontal sempre, COR DA FONTE igual ao texto do site (branco) */
html body.single-product .woocommerce-tabs ul.tabs,
html body.single-product .woocommerce-tabs ul.wc-tabs,
html body.single-product .woocommerce-tabs ul.tabs.wc-tabs {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 0 0 24px 0 !important;
  gap: 0 !important;
  border-bottom: 1px solid rgba(255,255,255,0.15) !important;
  background: transparent !important;
  width: 100% !important;
  max-width: 100% !important;
  overflow: visible !important;
}
html body.single-product .woocommerce-tabs ul.tabs li,
html body.single-product .woocommerce-tabs ul.wc-tabs li {
  display: inline-flex !important;
  align-items: center !important;
  padding: 12px 18px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  margin: 0 -1px 0 0 !important;
  list-style: none !important;
  font-family: var(--font-sans, 'Inter', sans-serif) !important;
  font-size: 12px !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
  color: #ffffff !important;
  cursor: pointer !important;
  transition: color 0.2s, border-color 0.2s !important;
  border-bottom: 2px solid transparent !important;
  position: relative !important;
  bottom: -1px !important;
  opacity: 0.7 !important;
}
html body.single-product .woocommerce-tabs ul.tabs li::before,
html body.single-product .woocommerce-tabs ul.tabs li::after,
html body.single-product .woocommerce-tabs ul.wc-tabs li::before,
html body.single-product .woocommerce-tabs ul.wc-tabs li::after {
  display: none !important;
  content: none !important;
}
html body.single-product .woocommerce-tabs ul.tabs li:hover,
html body.single-product .woocommerce-tabs ul.wc-tabs li:hover {
  color: #ffffff !important;
  opacity: 1 !important;
  background: transparent !important;
}
html body.single-product .woocommerce-tabs ul.tabs li.active,
html body.single-product .woocommerce-tabs ul.wc-tabs li.active {
  /* color e border-bottom-color SOBRESCRITOS dinamicamente em functions.php */
  opacity: 1 !important;
  font-weight: 700 !important;
  background: transparent !important;
}
html body.single-product .woocommerce-tabs ul.tabs li a,
html body.single-product .woocommerce-tabs ul.wc-tabs li a {
  color: inherit !important;
  text-decoration: none !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  font-weight: inherit !important;
  font-size: inherit !important;
  letter-spacing: inherit !important;
  text-transform: inherit !important;
}
@media (max-width: 600px) {
  html body.single-product .woocommerce-tabs ul.tabs li,
  html body.single-product .woocommerce-tabs ul.wc-tabs li {
    padding: 10px 12px !important;
    font-size: 11px !important;
    letter-spacing: 1px !important;
  }
}

/* Botões de Volume — versão compacta (.mt-variation-btn é a classe custom do tema) */
html body.single-product .summary .mt-variation-btn,
html body.single-product .mt-variation-btn {
  padding: 6px 14px !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  letter-spacing: 0.5px !important;
  min-width: 0 !important;
  height: auto !important;
  line-height: 1.3 !important;
  border-radius: 3px !important;
}
/* Link "Limpar" das variações — discreto */
html body.single-product .summary .reset_variations {
  font-size: 11px !important;
  margin-left: 12px !important;
  opacity: 0.6 !important;
}

/* Métodos de frete — formato com nome em cima e ETA com ícone embaixo
   Aplicado em qualquer página com Better Shipping (produto, carrinho, checkout) */
html body .woo-better-content-block ul,
html body .woo-better-shipping-list {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}
html body .woo-better-content-block ul li,
html body .woo-better-shipping-list li,
html body .containerCalculator table tr td,
html body .containerCalculator .resultado-frete tr td {
  list-style: none !important;
  padding: 12px 0 !important;
  border-bottom: 1px solid rgba(255,255,255,0.08) !important;
  margin: 0 !important;
}
html body .containerCalculator table,
html body .containerCalculator .resultado-frete table {
  width: 100% !important;
  border-collapse: collapse !important;
  background: transparent !important;
}
html body .containerCalculator table tr,
html body .containerCalculator .resultado-frete tr {
  background: transparent !important;
}
html body .woo-better-content-block ul li:last-child {
  border-bottom: 0 !important;
}
html body .mt-ship-name {
  color: #ffffff !important;
  font-weight: 700 !important;
  font-size: 13px !important;
  letter-spacing: 0.3px !important;
  margin-bottom: 4px !important;
}
html body .mt-ship-eta {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  font-size: 12px !important;
  color: rgba(255,255,255,0.75) !important;
  line-height: 1.5 !important;
  flex-wrap: wrap !important;
}
html body .mt-ship-eta strong {
  color: #ffffff !important;
  font-weight: 600 !important;
}
html body .mt-ship-eta strong.mt-ship-price {
  color: #E8D9B0 !important;
  font-weight: 700 !important;
  margin-left: auto !important;
}
html body .mt-ship-icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: inherit !important;
  flex-shrink: 0 !important;
}
html body .mt-ship-icon svg {
  stroke: currentColor !important;
  fill: none !important;
  display: block !important;
}

/* Esconde o campo "País" — sempre BR (forçado server-side) */
html body.woocommerce-checkout #billing_country_field,
html body.woocommerce-checkout #shipping_country_field {
  display: none !important;
}

/* Loading visual do CEP enquanto faz busca */
html body.woocommerce-checkout input.mt-cep-loading {
  background-image: linear-gradient(90deg, transparent 0%, rgba(232,217,176,0.15) 50%, transparent 100%) !important;
  background-size: 200% 100% !important;
  animation: mtCepShimmer 1.2s linear infinite !important;
}
@keyframes mtCepShimmer {
  0% { background-position: 200% 0; }
  100% { background-position: -200% 0; }
}

/* ========== MENU DESKTOP - FORÇA MÁXIMA ========== */
@media (min-width: 769px) {
  html body .storefront-primary-navigation ul.menu,
  html body nav.main-navigation ul.menu,
  html body .main-navigation > .col-full > ul.menu,
  html body .main-navigation .col-full ul {
    display: flex !important;
    flex-wrap: nowrap !important;
    width: 100% !important;
    justify-content: space-between !important;
    gap: 0 !important;
  }
