/*
Theme Name: Jesca Store
Theme URI: https://jescastore.com.br
Description: Tema filho exclusivo para a Jesca Store baseado no Blocksy, com tipografia Instrument Serif/Sans e identidade visual oficial.
Author: ROAS 360
Author URI: https://roas360.com.br
Template: blocksy
Version: 1.0.0
Text Domain: jesca
*/

/* 1. FONTES LOCAIS GOOGLE FONTS */
@font-face {
  font-family: 'Instrument Serif';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('assets/fonts/instrument-serif-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: 'Instrument Serif';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('assets/fonts/instrument-serif-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02D9, U+02DB-02DD, U+02DF, U+02E5-02EB, U+02ED, U+02F0-02FF, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: 'Instrument Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('assets/fonts/instrument-sans-latin.woff2') format('woff2');
}

@font-face {
  font-family: 'Instrument Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('assets/fonts/instrument-sans-latin.woff2') format('woff2');
}

@font-face {
  font-family: 'Instrument Sans';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('assets/fonts/instrument-sans-latin.woff2') format('woff2');
}

@font-face {
  font-family: 'Instrument Sans';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url('assets/fonts/instrument-sans-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02D9, U+02DB-02DD, U+02DF-02FF, U+0300-0303, U+0305-0307, U+0309-0328, U+032A-036F, U+0374-0375, U+037E, U+0385, U+0387, U+038A, U+03F6, U+2044, U+207F, U+20A0-20AB, U+20AD-20CF, U+2113, U+2116, U+2126, U+212E, U+2150-215F, U+2189, U+2190, U+2192, U+2194-2199, U+21AF, U+21E6-21F3, U+221A, U+221E, U+2235, U+2264-2265, U+2300, U+2308-230B, U+2329-232A, U+2423, U+2500-2574, U+2580-2589, U+25A0-25A1, U+25B2-25B3, U+25BC-25BD, U+25C6-25C7, U+25CA, U+25CB, U+25CF-25D1, U+25E2-25E5, U+25EF, U+2640, U+2642, U+2660-2661, U+2663-2665, U+266A-266C, U+FE20-FE2F, U+FF01-FF60;
}

/* MAVEN PRO LOCAL (GOOGLE FONTS - TRAY 1:1) */
@font-face {
  font-family: 'Maven Pro';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('assets/fonts/maven-pro-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: 'Maven Pro';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('assets/fonts/maven-pro-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: 'Maven Pro';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('assets/fonts/maven-pro-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: 'Maven Pro';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url('assets/fonts/maven-pro-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* 2. VARIÁVEIS DE IDENTIDADE VISUAL DA JESCA STORE */
:root {
  --jesca-dark: #01012b;
  --jesca-text: #333333;
  --jesca-light: #f4f4f4;
  --jesca-white: #ffffff;
  --jesca-green: #25D366;
  --jesca-green-hover: #1eb954;
  --jesca-font-serif: 'Instrument Serif', Georgia, serif;
  --jesca-font-sans: 'Instrument Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  --jesca-font-maven: 'Maven Pro', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  --jesca-radius-pill: 100px;
  --jesca-radius-card: 10px;
  --jesca-rodape-fundo: #f3f3f3;

  /* Sobrescrevendo variáveis nativas do Blocksy */
  --theme-font-headings: var(--jesca-font-serif);
  --theme-font-body: var(--jesca-font-sans);
  --theme-palette-color-1: var(--jesca-dark);
  --theme-palette-color-2: #1a1a4b;
  --theme-palette-color-3: var(--jesca-text);
  --theme-palette-color-4: #666666;
  --theme-palette-color-5: var(--jesca-light);
  --theme-palette-color-6: #e9e9e9;
  --theme-palette-color-7: #ffffff;
  --theme-palette-color-8: #ffffff;
  --theme-button-border-radius: var(--jesca-radius-pill);
}

/* 3. TIPOGRAFIA GERAL E PREVENÇÃO DE OVERFLOW */
html, body {
  overflow-x: hidden !important;
  max-width: 100vw !important;
}
.woocommerce-Tabs-panel img,
.woocommerce-product-details__short-description img,
.entry-content img,
.product-description img,
.woocommerce-Tabs-panel table {
  max-width: 100% !important;
  height: auto !important;
}
body, p, input, select, textarea, button, .menu, nav {
  font-family: var(--jesca-font-sans) !important;
  color: var(--jesca-text);
}

h1, h2, h3, h4, h5, h6,
.entry-title,
.product-title,
.woocommerce-loop-product__title,
.wc-block-grid__product-title,
.site-title,
.jesca-serif-title {
  font-family: var(--jesca-font-serif) !important;
  font-weight: 400 !important;
  letter-spacing: 0.5px;
}

/* 4. FAIXA DE ANÚNCIO NO TOPO (TOP BAR) */
.jesca-announcement-bar {
  background-color: var(--jesca-dark);
  color: var(--jesca-white);
  text-align: center;
  padding: 8px 16px;
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 0.3px;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 12px;
}

.jesca-announcement-bar a {
  color: #ffffff;
  text-decoration: underline;
}

/* 5. BOTÕES EM PÍLULA (PILL BUTTONS) */
.button,
.btn,
button,
input[type="submit"],
.woocommerce #respond input#submit,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.wp-element-button {
  border-radius: var(--jesca-radius-pill) !important;
  padding: 12px 28px !important;
  font-family: var(--jesca-font-sans) !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  text-transform: none !important;
  transition: all 0.25s ease !important;
}

.button.primary,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
.wp-element-button.wp-block-button__link:not(.has-background) {
  background-color: var(--jesca-dark) !important;
  color: #ffffff !important;
  border: 1px solid var(--jesca-dark) !important;
}

.button.primary:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover {
  background-color: #1a1a4b !important;
  color: #ffffff !important;
  transform: translateY(-1px);
}

/* 6. BOTÃO COMPRAR PELO WHATSAPP */
.jesca-btn-whatsapp {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  background-color: transparent !important;
  color: var(--jesca-green) !important;
  border: 2px solid var(--jesca-green) !important;
  border-radius: var(--jesca-radius-pill) !important;
  padding: 11px 24px !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  text-decoration: none !important;
  transition: all 0.25s ease !important;
  width: 100%;
  margin-top: 8px;
  box-sizing: border-box;
}

.jesca-btn-whatsapp:hover {
  background-color: var(--jesca-green) !important;
  color: #ffffff !important;
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(37, 211, 102, 0.25);
}

.jesca-btn-whatsapp svg {
  width: 18px;
  height: 18px;
  fill: currentColor;
}

/* 7. BOTÃO FLUTUANTE DO WHATSAPP (CANTO INFERIOR DIREITO) */
.jesca-floating-whatsapp {
  position: fixed;
  bottom: 24px;
  right: 24px;
  width: 60px;
  height: 60px;
  background-color: var(--jesca-green);
  color: #ffffff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.2);
  z-index: 99999;
  transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  text-decoration: none;
}

.jesca-floating-whatsapp:hover {
  background-color: var(--jesca-green-hover);
  color: #ffffff;
  transform: scale(1.1);
  box-shadow: 0 6px 20px rgba(37, 211, 102, 0.4);
}

.jesca-floating-whatsapp svg {
  width: 32px;
  height: 32px;
  fill: #ffffff;
}

/* 8. CARDS DE PRODUTOS (PADRÃO TRAY / SHOPIFY - ETAPA 4c e 4d) */
.woocommerce ul.products li.product,
.wc-block-grid__product {
  border-radius: var(--jesca-radius-card) !important;
  transition: transform 0.2s ease !important;
  background: #ffffff !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 0 12px 0 !important;
  box-sizing: border-box !important;
  text-align: center !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  position: relative !important;
}

.woocommerce ul.products li.product:hover,
.wc-block-grid__product:hover {
  transform: translateY(-2px) !important;
  box-shadow: none !important;
}

/* Link e Imagem do Card: quadrada 1:1, contain, fundo branco, sem moldura */
.woocommerce ul.products li.product .woocommerce-loop-product__link,
.wc-block-grid__product-link {
  display: block !important;
  width: 100% !important;
  text-decoration: none !important;
  color: #333333 !important;
  background: #ffffff !important;
}

.woocommerce ul.products li.product img,
.wc-block-grid__product-image img,
.woocommerce-loop-product__link img {
  border-radius: 8px !important;
  aspect-ratio: 1 / 1 !important;
  object-fit: contain !important;
  width: 100% !important;
  height: auto !important;
  background-color: #ffffff !important;
  padding: 6px !important;
  box-sizing: border-box !important;
  display: block !important;
  margin: 0 auto !important;
}

/* Título do produto com exatamente 2 linhas de altura reservadas */
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product h2,
.woocommerce ul.products li.product h3,
.wc-block-grid__product-title {
  font-family: var(--jesca-font-sans) !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  line-height: 1.4 !important;
  height: 2.8em !important;
  margin: 10px 0 6px 0 !important;
  padding: 0 6px !important;
  color: #333333 !important;
  text-align: center !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  text-decoration: none !important;
}

.woocommerce ul.products li.product .woocommerce-loop-product__link:hover .woocommerce-loop-product__title {
  color: #000000 !important;
  text-decoration: none !important;
}

/* Ocultar categorias nos cards */
.woocommerce ul.products li.product .entry-meta,
.woocommerce ul.products li.product .meta-categories,
.woocommerce ul.products li.product .posted_in,
.wc-block-grid__product-meta {
  display: none !important;
}

/* Ocultar botão duplicado de Compra Rápida de plugins antigos */
.woosq-btn,
.woosq-link,
.addonify-qv-btn {
  display: none !important;
}

/* Selo Esgotado em Português */
.out-of-stock-badge,
.badge-out-of-stock {
  font-family: var(--jesca-font-sans) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  background-color: #666666 !important;
  color: #ffffff !important;
  border-radius: 4px !important;
  padding: 4px 8px !important;
}

/* 9. PREÇO NO PADRÃO TRAY / SHOPIFY (Linha 1: Cheio, Linha 2: Pix em destaque) */
.woocommerce ul.products li.product .jesca-pix-box {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  margin: 4px auto 10px auto !important;
  gap: 2px !important;
}

.woocommerce ul.products li.product .jesca-price-regular {
  font-size: 14px !important;
  color: #666666 !important;
  font-weight: 500 !important;
}

.woocommerce ul.products li.product .jesca-pix-main {
  font-size: 17px !important;
  font-weight: 700 !important;
  color: var(--jesca-dark) !important;
  display: flex !important;
  align-items: baseline !important;
  justify-content: center !important;
  gap: 4px !important;
}

.woocommerce ul.products li.product .jesca-pix-label {
  font-size: 13px !important;
  font-weight: 600 !important;
  color: var(--jesca-dark) !important;
}

/* Linha de Botões do Card */
.jesca-loop-buy-row {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  width: 100% !important;
  padding: 0 4px !important;
  box-sizing: border-box !important;
  margin-top: auto !important;
}

.jesca-loop-qty-wrap {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  border: 1px solid #d4d4d4 !important;
  border-radius: var(--jesca-radius-pill) !important;
  height: 38px !important;
  width: 76px !important;
  padding: 0 6px !important;
  box-sizing: border-box !important;
  background: #ffffff !important;
  flex-shrink: 0 !important;
}

.jesca-loop-qty-btn {
  background: none !important;
  border: none !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  color: #444444 !important;
  cursor: pointer !important;
  padding: 0 4px !important;
  line-height: 1 !important;
}

.jesca-loop-qty-val {
  font-size: 13px !important;
  font-weight: 600 !important;
  color: #222222 !important;
}

.woocommerce ul.products li.product a.button,
.woocommerce ul.products li.product .button {
  flex: 1 !important;
  background-color: var(--jesca-dark) !important;
  color: #ffffff !important;
  border-radius: var(--jesca-radius-pill) !important;
  height: 38px !important;
  line-height: 38px !important;
  padding: 0 16px !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  text-align: center !important;
  margin: 0 !important;
  border: none !important;
  box-shadow: none !important;
  transition: all 0.2s ease !important;
  display: inline-block !important;
}

.woocommerce ul.products li.product a.button:hover,
.woocommerce ul.products li.product .button:hover {
  background-color: #1a1a4b !important;
  color: #ffffff !important;
  transform: translateY(-1px) !important;
}

.jesca-btn-whatsapp-loop {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  width: calc(100% - 8px) !important;
  margin: 6px auto 0 auto !important;
  height: 36px !important;
  border: 1.5px solid var(--jesca-green) !important;
  background: #ffffff !important;
  color: var(--jesca-green) !important;
  border-radius: var(--jesca-radius-pill) !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  box-sizing: border-box !important;
  transition: all 0.2s ease !important;
}

.jesca-btn-whatsapp-loop:hover {
  background: var(--jesca-green) !important;
  color: #ffffff !important;
}

.jesca-btn-whatsapp-loop svg {
  width: 16px !important;
  height: 16px !important;
  fill: currentColor !important;
}

/* 10. RODAPÉ ESTILIZADO */
.jesca-footer {
  background-color: var(--jesca-light);
  color: var(--jesca-text);
  padding: 48px 24px 24px 24px;
  margin-top: 60px;
}

.jesca-footer-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 32px;
  max-width: 1200px;
  margin: 0 auto;
}

.jesca-footer-col h4 {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  font-style: normal !important;
  text-transform: none !important;
  margin-bottom: 16px;
  color: var(--jesca-dark);
}

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

.jesca-footer-col ul li {
  margin-bottom: 10px;
}

.jesca-footer-col ul li a {
  color: var(--jesca-text);
  text-decoration: none;
  font-size: 14px;
  transition: color 0.2s;
}

.jesca-footer-col ul li a:hover {
  color: var(--jesca-dark);
  text-decoration: underline;
}

.jesca-footer-bottom {
  max-width: 1200px;
  margin: 40px auto 0 auto;
  padding-top: 20px;
  border-top: 1px solid #e0e0e0;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 12px;
  color: #666666;
  flex-wrap: wrap;
  gap: 12px;
}

/* 11. AJUSTES ESPECÍFICOS DE CABEÇALHO E HOME */
.home .entry-header,
.home .entry-title,
.home h1.page-title {
  display: none !important;
}

/* Ocultar texto duplicado 'Jesca Store' sob o logotipo */
.site-branding .site-title,
.site-branding .site-description,
.site-title,
.site-description {
  display: none !important;
}

/* Tamanho do Logotipo Oficial conforme DESIGN.md */
.site-branding img.custom-logo,
.site-logo img {
  max-height: 45px !important;
  width: auto !important;
  object-fit: contain;
}

@media (max-width: 768px) {
  .site-branding img.custom-logo,
  .site-logo img {
    max-height: 35px !important;
  }
}

/* 12. BOTÕES NOS CARDS DE PRODUTO DA VITRINE */
.woocommerce ul.products li.product .button,
.wc-block-grid__product-add-to-cart .wp-block-button__link {
  width: 100% !important;
  background-color: var(--jesca-dark) !important;
  color: #ffffff !important;
  border-radius: var(--jesca-radius-pill) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  padding: 10px 16px !important;
  text-align: center;
  display: block;
  margin-top: 10px;
  box-sizing: border-box;
}

.woocommerce ul.products li.product .button:hover,
.wc-block-grid__product-add-to-cart .wp-block-button__link:hover {
  background-color: #1a1a4b !important;
  color: #ffffff !important;
}

.jesca-btn-whatsapp-loop {
  width: 100% !important;
  margin-top: 6px !important;
  padding: 8px 16px !important;
  font-size: 12px !important;
}

/* 13. AJUSTE HERDADO ETAPA 2: OCULTAR FRETE R$ 0,00 NA PÁGINA DO PRODUTO */
.single-product .melhor-envio-shipping-calculator .shipping-result li:has(:contains("R$ 0,00")),
.single-product .melhor-envio-shipping-calculator .shipping-result li:has(:contains("Grátis")) {
  display: none !important;
}

/* 14. CARRINHO LATERAL (SIDE CART) ESTILO SHOPIFY */
.xoo-wsc-modal {
  font-family: var(--jesca-font-sans) !important;
}

.xoo-wsc-header {
  border-bottom: 1px solid #f0f0f0 !important;
  padding: 18px 24px !important;
}

.xoo-wsc-head-title {
  font-family: var(--jesca-font-sans) !important;
  font-size: 1.25rem !important;
  font-weight: 600 !important;
  color: var(--jesca-dark) !important;
}

.xoo-wsc-product {
  border-bottom: 1px solid #f4f4f4 !important;
  padding: 16px 20px !important;
}

.xoo-wsc-img img {
  border-radius: 8px !important;
  aspect-ratio: 1 / 1;
  object-fit: cover;
}

.xoo-wsc-pname a {
  font-weight: 600 !important;
  color: var(--jesca-text) !important;
  font-size: 14px !important;
  text-decoration: none !important;
}

.xoo-wsc-footer {
  background-color: #ffffff !important;
  border-top: 1px solid #eeeeee !important;
  padding: 20px 24px !important;
}

.xoo-wsc-ft-subtotal {
  font-size: 15px !important;
  font-weight: 600 !important;
  color: var(--jesca-text) !important;
  margin-bottom: 14px !important;
}

.xoo-wsc-ft-subtotal .woocommerce-Price-amount {
  font-size: 1.15rem !important;
  font-weight: 700 !important;
  color: var(--jesca-dark) !important;
}

.xoo-wsc-btn-checkout {
  background-color: #f4f4f4 !important;
  color: #333333 !important;
  border-radius: var(--jesca-radius-pill) !important;
  padding: 14px 24px !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  text-align: center !important;
  transition: all 0.25s ease !important;
  border: 1px solid #e0e0e0 !important;
}

.xoo-wsc-btn-checkout:hover {
  background-color: var(--jesca-dark) !important;
  color: #ffffff !important;
  border-color: var(--jesca-dark) !important;
}

/* 15. COMPRA RÁPIDA (QUICK VIEW) & SWATCHES */
.woosq-btn {
  background: transparent !important;
  border: none !important;
  color: var(--jesca-dark) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  padding: 6px 12px !important;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.woosq-btn:hover {
  color: #1a1a4b !important;
  text-decoration: underline;
}

/* Cartela de cores quadrada (Swatches) estilo Paleta Colada — Etapa 8m */
.woo-variation-swatches .variable-items-wrapper .variable-item,
.woo-variation-swatches .variable-items-wrapper .variable-item.color-variable-item,
.woo-variation-swatches .variable-items-wrapper .variable-item.circle,
.woo-variation-swatches .variable-items-wrapper .variable-item.button-variable-item {
  border-radius: 3px !important;
  width: 40px !important;
  height: 40px !important;
  min-width: 40px !important;
  min-height: 40px !important;
  padding: 1px !important;
  margin: 2px !important;
  border: 1px solid rgba(0, 0, 0, 0.16) !important;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05) !important;
  transition: all 0.15s ease !important;
  background-clip: content-box !important;
  cursor: pointer !important;
  position: relative !important;
  overflow: hidden !important;
}

.woo-variation-swatches .variable-items-wrapper .variable-item .variable-item-span-color,
.woo-variation-swatches .variable-items-wrapper .variable-item .variable-item-span {
  border-radius: 2px !important;
  width: 100% !important;
  height: 100% !important;
  display: block !important;
}

.woo-variation-swatches .variable-items-wrapper .variable-item:hover {
  border-color: #01012b !important;
  box-shadow: 0 2px 6px rgba(1, 1, 43, 0.15) !important;
}

.woo-variation-swatches .variable-items-wrapper .variable-item.selected {
  border: 2px solid #01012b !important;
  box-shadow: 0 2px 6px rgba(1, 1, 43, 0.25) !important;
  transform: none !important;
}

/* 16. PÁGINA DE PRODUTO REFINADA (ESTILO TRAY / DESIGN DA JESCA) */

/* Galeria de Fotos sem distorção, sem corte e com proporção 1:1 */
.woocommerce-product-gallery {
  max-width: 520px !important;
  margin: 0 auto !important;
  width: 100% !important;
}

.woocommerce-product-gallery .ct-product-gallery-container,
.woocommerce-product-gallery .ct-media-container,
.woocommerce-product-gallery figure,
.woocommerce-product-gallery__image {
  background: #ffffff !important;
  border-radius: 8px !important;
}

.woocommerce-product-gallery img,
.woocommerce-product-gallery .ct-media-container img,
.woocommerce-product-gallery__image img,
.woocommerce-product-gallery img.wp-post-image {
  border-radius: 8px !important;
  aspect-ratio: 1 / 1 !important;
  object-fit: contain !important;
  max-height: 520px !important;
  width: 100% !important;
  height: auto !important;
  background: #ffffff !important;
  padding: 12px !important;
  box-sizing: border-box !important;
  display: block !important;
  margin: 0 auto !important;
}

/* Fotos das Vitrines e Catálogo sem corte */
.woocommerce ul.products li.product .ct-media-container img,
.woocommerce ul.products li.product img,
.wc-block-grid__product-image img,
.product-media-container img,
.ct-image-container img {
  border-radius: var(--jesca-radius-card) !important;
  aspect-ratio: 1 / 1 !important;
  object-fit: contain !important;
  background: #ffffff !important;
  padding: 8px !important;
  box-sizing: border-box !important;
  width: 100% !important;
}

/* Ocultar a descrição curta do topo e meta duplicada */
.single-product .woocommerce-product-details__short-description,
.single-product .product_meta {
  display: none !important;
}

/* ESTRUTURA LIMPA DO RESUMO DO PRODUTO CONFORME O PRINT DA TRAY */
.single-product .entry-summary {
  display: block !important;
}

.single-product .entry-summary .product_title {
  font-size: 2rem !important;
  margin-bottom: 4px !important;
  color: var(--jesca-text) !important;
}

.single-product .entry-summary .jesca-product-meta-header {
  font-size: 13px;
  color: #777777;
  margin-top: 2px;
  margin-bottom: 6px;
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
}

.single-product .entry-summary .jesca-product-stars {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  color: #f5a623;
  margin-bottom: 14px;
}

.single-product .entry-summary .woocommerce-product-rating {
  display: none !important;
}

.single-product .entry-summary table.variations {
  width: 100% !important;
  border: none !important;
  margin-top: 6px !important;
  margin-bottom: 12px !important;
  display: table !important;
}

.single-product .entry-summary table.variations tr {
  display: flex;
  flex-direction: column;
  margin-bottom: 10px;
}

.single-product .entry-summary table.variations td.label {
  padding-bottom: 4px;
}

.single-product .entry-summary table.variations label {
  font-weight: 600;
  color: var(--jesca-text);
  font-size: 14px;
  display: block;
}

.single-product .entry-summary p.price {
  margin-bottom: 0px !important;
  font-size: 1.25rem !important;
  color: #777777 !important;
  font-weight: 500;
  display: block !important;
  clear: both !important;
}

.single-product .entry-summary .jesca-pix-box {
  margin: 2px 0 16px 0;
  display: block !important;
  clear: both !important;
}

.single-product .entry-summary form.cart,
.single-product .entry-summary form.variations_form,
.single-product .entry-summary .single_variation_wrap,
.single-product .entry-summary .woocommerce-variation-add-to-cart,
.single-product .entry-summary .melhor-envio-shipping-calculator,
.single-product .entry-summary .jesca-shipping-free-notice,
.single-product .entry-summary .jesca-product-accordions {
  width: 100% !important;
  max-width: 100% !important;
  display: block !important;
  clear: both !important;
  float: none !important;
  box-sizing: border-box !important;
}

.single-product .entry-summary .jesca-btn-whatsapp {
  width: 100% !important;
  max-width: 100% !important;
  display: inline-flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  clear: both !important;
  float: none !important;
  box-sizing: border-box !important;
}

.jesca-review-link {
  color: #888888;
  font-size: 12px;
}

/* Preço Regular */
.single-product div.product p.price .woocommerce-Price-amount {
  color: #555555 !important;
}

/* Caixa Preço PIX */
.jesca-pix-main {
  font-size: 1.7rem;
  font-weight: 700;
  color: var(--jesca-dark);
  line-height: 1.2;
}

.jesca-pix-label {
  font-size: 1.15rem;
  font-weight: 500;
  color: #555555;
}

.jesca-pix-sub {
  font-size: 0.88rem;
  color: #0b7c3d;
  font-weight: 600;
  margin-top: 3px;
}

/* Linha de Compra: Quantidade - 1 + ao lado de COMPRAR */
.single-product .woocommerce-variation-add-to-cart,
.single-product form.cart:not(.variations_form) {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  margin-top: 10px !important;
  margin-bottom: 10px !important;
}

/* Layout da área de compra (Quantidade, Botão Comprar e WhatsApp) */
.single-product .ct-cart-actions {
  display: grid !important;
  grid-template-columns: 110px 1fr !important;
  gap: 10px !important;
  align-items: center !important;
  margin-top: 10px !important;
  margin-bottom: 12px !important;
  width: 100% !important;
}

.single-product .quantity,
.single-product .quantity[data-type="type-2"] {
  width: 110px !important;
  height: 48px !important;
  border: 1px solid #d5d5d5 !important;
  border-radius: var(--jesca-radius-pill) !important;
  background: #ffffff !important;
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}

.single-product .quantity input.qty,
.single-product .quantity[data-type="type-2"] input[type="number"] {
  width: 100% !important;
  height: 100% !important;
  border: none !important;
  outline: none !important;
  background: transparent !important;
  text-align: center !important;
  font-family: var(--jesca-font-maven, sans-serif) !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  color: #111111 !important;
  padding: 0 32px !important;
  margin: 0 !important;
  box-shadow: none !important;
  -moz-appearance: textfield !important;
}

.single-product .quantity input.qty::-webkit-outer-spin-button,
.single-product .quantity input.qty::-webkit-inner-spin-button {
  -webkit-appearance: none !important;
  margin: 0 !important;
}

.single-product .quantity .ct-decrease,
.single-product .quantity .ct-increase {
  position: absolute !important;
  top: 0 !important;
  bottom: 0 !important;
  width: 32px !important;
  height: 100% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  color: #555555 !important;
  background: transparent !important;
  border: none !important;
  z-index: 5 !important;
  transition: color 0.15s ease, background 0.15s ease !important;
  user-select: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.single-product .quantity .ct-decrease {
  left: 0 !important;
}

.single-product .quantity .ct-increase {
  right: 0 !important;
}

.single-product .quantity .ct-decrease:hover,
.single-product .quantity .ct-increase:hover {
  color: #01012b !important;
  background: rgba(0, 0, 0, 0.04) !important;
}

.single-product .quantity .ct-decrease svg,
.single-product .quantity .ct-increase svg {
  width: 10px !important;
  height: 10px !important;
  display: block !important;
}

.single-product .single_add_to_cart_button {
  width: 100% !important;
  height: 48px !important;
  background-color: var(--jesca-dark) !important;
  color: #ffffff !important;
  border-radius: var(--jesca-radius-pill) !important;
  font-weight: 700 !important;
  font-size: 15px !important;
  letter-spacing: 0.8px !important;
  text-transform: uppercase !important;
  border: none !important;
  margin: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  transition: all 0.2s ease !important;
  box-sizing: border-box !important;
}

.single-product .single_add_to_cart_button:hover {
  background-color: #1a1a4b !important;
}

.single-product .single_add_to_cart_button.disabled,
.single-product .single_add_to_cart_button:disabled {
  background-color: var(--jesca-dark) !important;
  color: #ffffff !important;
  opacity: 0.9 !important;
  cursor: pointer !important;
}

/* Botão Comprar pelo Whats na Página de Produto (linha de baixo, 100% de largura) */
.single-product .jesca-btn-whatsapp,
.single-product .jesca-btn-whatsapp-product {
  grid-column: 1 / -1 !important;
  width: 100% !important;
  height: 46px !important;
  border-radius: var(--jesca-radius-pill) !important;
  margin: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  border: 1.5px solid var(--jesca-green) !important;
  color: var(--jesca-green) !important;
  background: #ffffff !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  text-decoration: none !important;
  box-sizing: border-box !important;
  transition: all 0.2s ease !important;
}

.single-product .jesca-btn-whatsapp-product:hover,
.single-product .jesca-btn-whatsapp:hover {
  background-color: var(--jesca-green) !important;
  color: #ffffff !important;
}

/* Remover divisor nativo órfão do Blocksy na página do produto */
.single-product .ct-product-divider {
  display: none !important;
}

/* Calculadora de Frete do Melhor Envio estilo Tray */
.single-product #woocommerce-correios-calculo-de-frete-na-pagina-do-produto,
.single-product .containerCalculator,
.single-product .melhor-envio-shipping-calculator,
.single-product .melhor-envio-shipping-calculator-container,
.single-product [class*="melhor-envio-shipping"] {
  border: none !important;
  padding: 10px 0 16px 0 !important;
  background: transparent !important;
  background-color: transparent !important;
  margin: 14px 0 !important;
  width: 100% !important;
  box-sizing: border-box !important;
  box-shadow: none !important;
}

.single-product .containerCalculator .calculatorRow,
.single-product .containerCalculator .row,
.single-product .containerCalculator .col-75 {
  background: transparent !important;
  background-color: transparent !important;
  border: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

.single-product .containerCalculator p {
  font-size: 14px !important;
  font-weight: 600 !important;
  color: var(--jesca-text) !important;
  margin-bottom: 8px !important;
}

.single-product .containerCalculator input#inputCep,
.single-product .melhor-envio-shipping-calculator input#melhor_envio_cep {
  border-radius: 4px !important;
  border: 1px solid #dcdcdc !important;
  padding: 0 14px !important;
  height: 42px !important;
  font-size: 13px !important;
  background: #ffffff !important;
  max-width: 320px !important;
  box-sizing: border-box !important;
}

.single-product .melhor-envio-shipping-calculator button#melhor_envio_calcular {
  border-radius: 4px !important;
  background: #ffffff !important;
  color: var(--jesca-dark) !important;
  border: 1.5px solid var(--jesca-dark) !important;
  font-weight: 700 !important;
  font-size: 12px !important;
  padding: 0 20px !important;
  height: 42px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
}

.single-product .melhor-envio-shipping-calculator button#melhor_envio_calcular:hover {
  background: var(--jesca-dark) !important;
  color: #ffffff !important;
}

/* Esconder abas inferiores padrão do WooCommerce que duplicam a descrição */
.woocommerce-tabs,
.wc-tabs-wrapper {
  display: none !important;
}

/* Acordeões Recolhidos Estilo Tray */
.jesca-product-accordions {
  margin-top: 20px !important;
  border-top: 1px solid #e8e8e8 !important;
}

.jesca-accordion-item {
  border: none !important;
  border-bottom: 1px solid #e8e8e8 !important;
  background: transparent !important;
}

.jesca-accordion-header {
  padding: 14px 4px !important;
  font-weight: 600 !important;
  font-size: 15px !important;
  color: var(--jesca-text) !important;
  cursor: pointer !important;
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  list-style: none !important;
  user-select: none !important;
  transition: color 0.2s !important;
}

.jesca-accordion-header::-webkit-details-marker {
  display: none !important;
}

.jesca-accordion-header:hover {
  color: var(--jesca-dark) !important;
}

.jesca-accordion-icon {
  font-size: 12px !important;
  color: #888888 !important;
  transition: transform 0.25s ease !important;
}

.jesca-accordion-item[open] .jesca-accordion-icon {
  transform: rotate(180deg) !important;
}

.jesca-accordion-body {
  padding: 0 4px 18px 4px !important;
  color: #555555 !important;
  font-size: 14px !important;
  line-height: 1.65 !important;
}

.jesca-accordion-body p {
  margin-bottom: 10px !important;
}

.jesca-accordion-body ul {
  padding-left: 20px !important;
  margin-top: 8px !important;
}

.jesca-accordion-body ul li {
  margin-bottom: 6px !important;
}

/* Bloco de Avaliações dentro do Acordeão conforme padrão Tray */
.jesca-reviews-prompt {
  text-align: center !important;
  padding: 30px 15px !important;
}

.jesca-reviews-title {
  font-family: var(--jesca-font-sans) !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  color: var(--jesca-dark) !important;
  margin-bottom: 22px !important;
}

.jesca-btn-login-review {
  display: inline-block !important;
  background-color: #000000 !important;
  color: #ffffff !important;
  font-family: var(--jesca-font-sans) !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: 0.6px !important;
  padding: 14px 34px !important;
  border-radius: 4px !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
  transition: all 0.2s ease !important;
}

.jesca-btn-login-review:hover {
  background-color: #222222 !important;
  color: #ffffff !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15) !important;
}

.jesca-review-link {
  color: #777777 !important;
  text-decoration: underline !important;
  cursor: pointer !important;
  transition: color 0.2s !important;
}

.jesca-review-link:hover {
  color: var(--jesca-dark) !important;
}

/* 15. POPUP COMPRA RÁPIDA (QUICK BUY) - BOTTOM SHEET NO CELULAR & POPOVER NO DESKTOP */
.jesca-qb-backdrop {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.55);
  backdrop-filter: blur(3px);
  -webkit-backdrop-filter: blur(3px);
  z-index: 99998;
  animation: jescaFadeIn 0.2s ease;
}

body.jesca-qb-open {
  overflow: hidden;
}

.jesca-quick-buy-card {
  background: #ffffff;
  border-radius: 12px;
  box-shadow: 0 10px 32px rgba(0, 0, 0, 0.24), 0 0 0 1px rgba(0, 0, 0, 0.04);
  padding: 16px 14px;
  box-sizing: border-box;
  animation: jescaFadeInUp 0.22s cubic-bezier(0.16, 1, 0.3, 1);
}

@keyframes jescaFadeInUp {
  from {
    opacity: 0;
    transform: translateY(12px) scale(0.98);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

@keyframes jescaFadeIn {
  from { opacity: 0; }
  to { opacity: 1; }
}

@media (min-width: 769px) {
  .jesca-quick-buy-card {
    position: absolute !important;
    bottom: 10px !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: 270px !important;
    max-width: 95% !important;
    background: #ffffff !important;
    border-radius: 10px !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.18), 0 0 0 1px rgba(0, 0, 0, 0.05) !important;
    padding: 12px 14px 14px !important;
    box-sizing: border-box !important;
    z-index: 999 !important;
    overflow: visible !important;
  }
}

@media (max-width: 768px) {
  .jesca-quick-buy-card.jesca-qb-bottomsheet {
    position: fixed !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    border-radius: 20px 20px 0 0 !important;
    padding: 14px 18px 24px !important;
    box-sizing: border-box !important;
    background: #ffffff !important;
    z-index: 99999 !important;
    box-shadow: 0 -10px 40px rgba(0, 0, 0, 0.28) !important;
    animation: jescaSlideUpSheet 0.28s cubic-bezier(0.16, 1, 0.3, 1) !important;
    max-height: 85vh !important;
    overflow-y: auto !important;
  }

  @keyframes jescaSlideUpSheet {
    from { transform: translateY(100%); }
    to { transform: translateY(0); }
  }

  .jesca-qb-sheet-handle {
    width: 42px;
    height: 4px;
    background: #dcdcdc;
    border-radius: 2px;
    margin: 0 auto 12px;
  }

  .jesca-qb-swatches-wrap {
    max-height: 220px !important;
    gap: 12px !important;
    padding: 6px !important;
  }

  .jesca-qb-swatch {
    flex: 0 0 40px !important;
    width: 40px !important;
    height: 40px !important;
    min-width: 40px !important;
  }

  .jesca-qb-actions {
    margin-top: 16px !important;
  }

  .jesca-qb-qty-picker {
    height: 42px !important;
    width: 96px !important;
  }

  .jesca-qb-qty-btn {
    font-size: 20px !important;
  }

  .jesca-qb-qty-val {
    font-size: 15px !important;
  }

  .jesca-qb-submit-btn {
    height: 42px !important;
    font-size: 15px !important;
  }
}

.jesca-qb-header {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 12px;
  padding: 0;
  border-bottom: none !important;
}

.jesca-qb-title {
  font-family: var(--jesca-font-maven, 'Maven Pro', sans-serif) !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  color: #333333 !important;
  text-align: center !important;
}

.jesca-qb-close {
  position: absolute !important;
  right: -4px !important;
  top: -4px !important;
  background: none !important;
  border: none !important;
  font-size: 22px !important;
  line-height: 1 !important;
  color: #333333 !important;
  cursor: pointer !important;
  padding: 4px !important;
  transition: color 0.15s !important;
}

.jesca-qb-close:hover {
  color: #000000 !important;
}

.jesca-qb-swatches-wrap {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  gap: 8px !important;
  margin: 0 auto 14px auto !important;
  max-height: 140px !important;
  overflow-y: auto !important;
  overflow-x: visible !important;
  padding: 4px 6px !important;
  box-sizing: border-box !important;
}

.jesca-qb-title strong,
.jesca-qb-color-name {
  font-weight: 700 !important;
  color: #01012b !important;
  margin-left: 2px !important;
}

.jesca-qb-swatch {
  flex: 0 0 40px !important;
  width: 40px !important;
  height: 40px !important;
  min-width: 40px !important;
  border-radius: 3px !important;
  border: 1px solid rgba(0, 0, 0, 0.16) !important;
  cursor: pointer !important;
  padding: 0 !important;
  margin: 2px !important;
  box-sizing: border-box !important;
  transition: all 0.15s ease !important;
  outline: none !important;
  background-size: cover !important;
  background-position: center !important;
  position: relative !important;
}

.jesca-qb-swatch:hover {
  border-color: #01012b !important;
  box-shadow: 0 2px 6px rgba(1, 1, 43, 0.15) !important;
}

.jesca-qb-swatch.is-active {
  border: 2px solid #01012b !important;
  box-shadow: 0 2px 6px rgba(1, 1, 43, 0.25) !important;
  transform: none !important;
}

/* Indicador de esgotado no Quick Buy: "x" pequeno no canto (Etapa 8m - idêntico à PDP) */
.jesca-qb-swatch.is-out-of-stock {
  position: relative !important;
  opacity: 0.6 !important;
  cursor: pointer !important;
  pointer-events: auto !important;
}

.jesca-qb-swatch.is-out-of-stock::after {
  content: "✕" !important;
  position: absolute !important;
  top: auto !important;
  bottom: 1px !important;
  right: 2px !important;
  left: auto !important;
  border: none !important;
  background: transparent !important;
  color: #dc2626 !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  text-shadow: 0 0 2px #ffffff, 0 0 3px #ffffff !important;
  z-index: 10 !important;
  pointer-events: none !important;
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  width: auto !important;
  height: auto !important;
}

.jesca-qb-aviseme-btn {
  background: #01012b !important;
  color: #ffffff !important;
  width: 100% !important;
  height: 42px !important;
  border-radius: 6px !important;
  font-weight: 700 !important;
  font-size: 13.5px !important;
  border: none !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
}

.jesca-qb-aviseme-btn:hover {
  background: #1a1a4b !important;
  transform: translateY(-1px) !important;
}

.jesca-qb-actions {
  display: flex;
  gap: 10px;
  align-items: center;
  justify-content: space-between;
}

.jesca-qb-qty-picker {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  border: 1px solid #d4d4d4;
  border-radius: 9999px;
  padding: 0 8px;
  height: 38px;
  width: 86px;
  box-sizing: border-box;
  background: #ffffff;
}

.jesca-qb-qty-btn {
  background: none !important;
  border: none !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  color: #444444 !important;
  cursor: pointer !important;
  padding: 0 !important;
  line-height: 1 !important;
}

.jesca-qb-qty-val {
  font-size: 14px;
  font-weight: 600;
  color: #111111;
  min-width: 18px;
  text-align: center;
}

.jesca-qb-submit-btn {
  flex: 1;
  height: 38px;
  background: #01012b !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 9999px !important;
  font-family: var(--jesca-font-maven, 'Maven Pro', sans-serif) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  letter-spacing: 0.5px !important;
  cursor: pointer !important;
  transition: background-color 0.15s ease !important;
  outline: none !important;
}

.jesca-qb-submit-btn:hover {
  background: #1e1e48 !important;
}

.jesca-qb-submit-btn:disabled {
  background: #888888 !important;
  cursor: not-allowed !important;
  opacity: 0.7 !important;
}

.jesca-qb-loading {
  text-align: center;
  padding: 24px 10px;
  font-size: 13px;
  color: #666666;
}

/* OCULTAR BOTÃO FEIO 'VER CARRINHO' INSERIDO PELO WOOCOMMERCE NOS CARDS */
a.added_to_cart.wc-forward,
.woocommerce a.added_to_cart {
  display: none !important;
}

/* FEEDBACK NO BOTÃO COMPRAR APÓS ADICIONAR */
a.button.jesca-btn-added {
  background-color: #25d366 !important;
  color: #ffffff !important;
  border-color: #25d366 !important;
  transition: all 0.2s ease !important;
}

/* ANIMAÇÃO PULSANTE NO BADGE DO CARRINHO */
@keyframes jescaBadgePulse {
  0% { transform: scale(1); }
  40% { transform: scale(1.45); }
  100% { transform: scale(1); }
}

.jesca-badge-pulse {
  animation: jescaBadgePulse 0.4s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

/* TOAST DE NOTIFICAÇÃO FLUTUANTE - ABAIXO DO CABEÇALHO */
.jesca-cart-toast {
  position: fixed;
  top: 75px;
  left: 50%;
  transform: translateX(-50%) translateY(-120px);
  z-index: 9999999;
  transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.35s ease;
  opacity: 0;
  pointer-events: none;
  width: calc(100% - 32px);
  max-width: 440px;
}

.jesca-cart-toast.is-active {
  transform: translateX(-50%) translateY(0) !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}

@media (max-width: 768px) {
  .jesca-cart-toast {
    top: 65px !important;
    bottom: auto !important;
    left: 12px !important;
    right: 12px !important;
    width: auto !important;
    max-width: calc(100% - 24px) !important;
    transform: translateY(-120px) !important;
  }

  .jesca-cart-toast.is-active {
    transform: translateY(0) !important;
  }
}

.jesca-cart-toast-inner {
  display: flex;
  align-items: center;
  gap: 12px;
  background: var(--jesca-dark);
  color: #ffffff;
  padding: 12px 18px;
  border-radius: 50px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.35);
  border: 1px solid rgba(255, 255, 255, 0.15);
}

.jesca-toast-icon {
  width: 26px;
  height: 26px;
  min-width: 26px;
  border-radius: 50%;
  background: #25d366;
  display: flex;
  align-items: center;
  justify-content: center;
}

.jesca-toast-text {
  flex: 1;
  font-family: var(--jesca-font-sans);
  font-size: 13px;
  font-weight: 600;
  color: #ffffff;
  line-height: 1.3;
}

.jesca-toast-link {
  background: rgba(255, 255, 255, 0.18);
  color: #ffffff !important;
  text-decoration: none !important;
  font-family: var(--jesca-font-sans);
  font-size: 12px;
  font-weight: 700;
  padding: 6px 14px;
  border-radius: var(--jesca-radius-pill);
  transition: all 0.2s ease;
  white-space: nowrap;
  border: 1px solid rgba(255, 255, 255, 0.3);
}

.jesca-toast-link:hover {
  background: #ffffff;
  color: var(--jesca-dark) !important;
}

.jesca-toast-close {
  background: none !important;
  border: none !important;
  color: rgba(255, 255, 255, 0.7) !important;
  font-size: 22px !important;
  line-height: 1 !important;
  cursor: pointer !important;
  padding: 0 4px !important;
  transition: color 0.2s;
}

.jesca-toast-close:hover {
  color: #ffffff !important;
}

/* 16. CARROSSÉIS DE PRODUTOS NA HOME */
.jesca-carousel-wrap {
  position: relative;
  margin: 10px 0 40px 0;
  padding: 0 4px;
}

.jesca-product-carousel-track {
  display: flex !important;
  overflow-x: auto !important;
  scroll-snap-type: x mandatory !important;
  scroll-behavior: smooth !important;
  gap: 16px !important;
  padding: 12px 6px 24px 6px !important;
  margin: 0 !important;
  list-style: none !important;
  scrollbar-width: none !important; /* Firefox */
  -ms-overflow-style: none !important;
}

.jesca-product-carousel-track::-webkit-scrollbar {
  display: none !important; /* Chrome / Safari */
}

.jesca-product-carousel-track > li.product {
  flex: 0 0 calc(25% - 12px) !important;
  min-width: 240px !important;
  max-width: none !important;
  scroll-snap-align: start !important;
  box-sizing: border-box !important;
  margin: 0 !important;
}

@media (max-width: 1024px) {
  .jesca-product-carousel-track > li.product {
    flex: 0 0 calc(33.333% - 12px) !important;
    min-width: 220px !important;
  }
}

@media (max-width: 768px) {
  .jesca-product-carousel-track {
    gap: 10px !important;
    padding: 8px 4px 16px 4px !important;
  }
  .jesca-product-carousel-track > li.product {
    flex: 0 0 calc(50% - 6px) !important;
    min-width: calc(50% - 6px) !important;
    max-width: calc(50% - 6px) !important;
    box-sizing: border-box !important;
  }
}

.jesca-carousel-nav {
  position: absolute;
  top: 45%;
  transform: translateY(-50%);
  width: 44px;
  height: 44px;
  background-color: #ffffff !important;
  color: var(--jesca-dark) !important;
  border: 1px solid #e0e0e0 !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.14) !important;
  cursor: pointer !important;
  z-index: 10 !important;
  transition: all 0.2s ease !important;
  padding: 0 !important;
}

.jesca-carousel-nav:hover {
  background-color: var(--jesca-dark) !important;
  color: #ffffff !important;
  transform: translateY(-50%) scale(1.08) !important;
}

.jesca-nav-prev {
  left: -14px;
}

.jesca-nav-next {
  right: -14px;
}

@media (max-width: 768px) {
  .jesca-carousel-nav {
    display: none !important; /* No mobile o deslize por touch é natural e dispensa setas */
  }
}

/* 17. CABEÇALHO E MENU PADRÃO TRAY (ETAPA 4d & 4g) */
header#header {
  position: sticky !important;
  top: 0 !important;
  z-index: 9999 !important;
  background-color: #ffffff !important;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05) !important;
  transition: all 0.2s ease !important;
}

body.is-scrolled header#header {
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08) !important;
}

.header-menu,
.ct-header [data-id*="menu"] {
  font-family: var(--jesca-font-sans) !important;
}

.ct-header [data-id*="menu"] .menu > li > a {
  font-family: var(--jesca-font-sans) !important;
  font-weight: 600 !important;
  font-size: 14.5px !important;
  letter-spacing: 0 !important;
  color: #333333 !important;
  text-transform: none !important;
  padding: 10px 14px !important;
  transition: color 0.2s ease !important;
}

.ct-header [data-id*="menu"] .menu > li > a:hover {
  color: var(--jesca-dark) !important;
}

/* Ocultar setinhas dropdown no menu do topo */
.ct-header [data-id*="menu"] .ct-toggle-dropdown-desktop,
.ct-header [data-id*="menu"] .ct-toggle-dropdown-desktop-ghost {
  display: none !important;
}

/* Submenus e painéis com fundo BRANCO e sombra suave */
.ct-header [data-id*="menu"] .sub-menu,
.sub-menu {
  background-color: #ffffff !important;
  border-radius: 8px !important;
  box-shadow: 0 10px 28px rgba(0, 0, 0, 0.12) !important;
  border: 1px solid #eaeaea !important;
  padding: 10px 0 !important;
}

.ct-header [data-id*="menu"] .sub-menu li a,
.sub-menu li a {
  font-family: var(--jesca-font-sans) !important;
  font-weight: 600 !important;
  font-size: 13px !important;
  color: #444444 !important;
  padding: 8px 18px !important;
  transition: all 0.18s ease !important;
}

.ct-header [data-id*="menu"] .sub-menu li a:hover,
.sub-menu li a:hover {
  background-color: #f7f7f7 !important;
  color: var(--jesca-dark) !important;
  padding-left: 22px !important;
}

/* Botão pílula PRETA Ofertas Especiais no menu (Tray 1:1) */
.ct-header .menu-item-ofertas,
.menu > li.menu-item-ofertas {
  display: flex !important;
  align-items: center !important;
}

.ct-header .menu-item-ofertas > a,
.menu > li.menu-item-ofertas > a,
.jesca-btn-ofertas {
  background-color: #000000 !important;
  color: #ffffff !important;
  border-radius: 20px !important;
  padding: 5px 16px !important;
  height: 30px !important;
  line-height: 20px !important;
  box-sizing: border-box !important;
  margin: auto 6px !important;
  font-weight: 700 !important;
  font-size: 12px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  white-space: nowrap !important;
  text-decoration: none !important;
  text-transform: none !important;
  transition: all 0.2s ease !important;
}

.ct-header .menu-item-ofertas > a:hover,
.menu > li.menu-item-ofertas > a:hover,
.jesca-btn-ofertas:hover {
  background-color: #222222 !important;
  color: #ffffff !important;
  transform: translateY(-1px) !important;
}

/* Barra de Busca arredondada grande estilo Tray */
.ct-header [data-id*="search"] input[type="search"],
.ct-search-modal input[type="search"] {
  border-radius: var(--jesca-radius-pill) !important;
  border: 1.5px solid #d4d4d4 !important;
  padding: 10px 20px !important;
  font-size: 14px !important;
  font-family: var(--jesca-font-sans) !important;
  background-color: #ffffff !important;
  color: #333333 !important;
}

/* OCULTAR ELEMENTOS MOBILE NO DESKTOP (FIX ETAPA 4f) */
@media (min-width: 1024px) {
  .jesca-mobile-tracking-box,
  .jesca-mobile-footer-links {
    display: none !important;
  }
}

/* 18. MENU LATERAL MOBILE TRAY (390px) */
@media (max-width: 1023px) {
  .ct-drawer-canvas {
    background-color: #ffffff !important;
  }

  .jesca-mobile-tracking-box {
    background-color: #111111;
    color: #ffffff;
    padding: 18px 16px;
    margin-top: 20px;
    border-radius: 8px;
    text-align: left;
    display: block !important;
  }

  .jesca-mobile-tracking-title {
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    margin-bottom: 8px;
    display: flex;
    align-items: center;
    gap: 6px;
  }

  .jesca-mobile-tracking-input {
    width: 100%;
    border-radius: var(--jesca-radius-pill);
    border: 1px solid #444444;
    background: #222222;
    color: #ffffff;
    padding: 8px 14px;
    font-size: 13px;
    box-sizing: border-box;
    margin-bottom: 8px;
  }

  .jesca-mobile-tracking-btn {
    width: 100%;
    background: #ffffff !important;
    color: #000000 !important;
    border-radius: var(--jesca-radius-pill) !important;
    font-weight: 700 !important;
    font-size: 12px !important;
    padding: 8px 14px !important;
    border: none !important;
    cursor: pointer !important;
    text-transform: uppercase !important;
  }

  .jesca-mobile-footer-links {
    background-color: #050505;
    color: #ffffff;
    padding: 16px;
    margin-top: 14px;
    border-radius: 8px;
    font-size: 13px;
    text-align: left;
    display: block !important;
  }

  .jesca-mobile-footer-links a {
    color: #ffffff !important;
    text-decoration: none !important;
    display: block;
    margin-bottom: 8px;
    font-weight: 600;
  }
}

/* 19. SEÇÃO "CONFIRA NOSSAS OFERTAS" COM FUNDO AZUL-MARINHO NA HOME */
.jesca-ofertas-section {
  background-color: #01012b;
  color: #ffffff;
  padding: 40px 16px 50px 16px;
  margin: 40px 0;
  border-radius: 12px;
}

.jesca-ofertas-section h2 {
  color: #ffffff !important;
  font-family: var(--jesca-font-serif) !important;
  font-size: 2.2rem !important;
  text-align: center;
  margin-bottom: 6px;
}

.jesca-ofertas-section p {
  color: #a4b3d6 !important;
  text-align: center;
  font-size: 14px;
  margin-bottom: 24px;
}

/* 20. TEXTURAS DE ACABAMENTO METÁLICO NAS BOLINHAS DE COR (SOMENTE METAIS SÓLIDOS, NUNCA FIOS/FOTOS) */
.variable-item:not(.jesca-has-photo-swatch):not(:has(.jesca-swatch-photo))[data-title*="Dourad" i]:not([data-title*="Envelhecid" i]):not([data-value*="envelhecid" i]) .variable-item-span-color,
.variable-item:not(.jesca-has-photo-swatch):not(:has(.jesca-swatch-photo))[data-title*="Dourad" i]:not([data-title*="Envelhecid" i]):not([data-value*="envelhecid" i]),
.variable-item:not(.jesca-has-photo-swatch):not(:has(.jesca-swatch-photo))[data-value*="dourad" i]:not([data-title*="Envelhecid" i]):not([data-value*="envelhecid" i]) .variable-item-span-color,
.variable-item:not(.jesca-has-photo-swatch):not(:has(.jesca-swatch-photo))[data-value*="dourad" i]:not([data-title*="Envelhecid" i]):not([data-value*="envelhecid" i]) {
  background: linear-gradient(135deg, #e5b842 0%, #ffd700 50%, #c4962c 100%) !important;
}

.variable-item:not(.jesca-has-photo-swatch):not(:has(.jesca-swatch-photo))[data-title*="Envelhecid" i] .variable-item-span-color,
.variable-item:not(.jesca-has-photo-swatch):not(:has(.jesca-swatch-photo))[data-title*="Envelhecid" i],
.variable-item:not(.jesca-has-photo-swatch):not(:has(.jesca-swatch-photo))[data-value*="envelhecid" i] .variable-item-span-color,
.variable-item:not(.jesca-has-photo-swatch):not(:has(.jesca-swatch-photo))[data-value*="envelhecid" i],
.variable-item:not(.jesca-has-photo-swatch):not(:has(.jesca-swatch-photo))[data-title*="Ouro Velho" i] .variable-item-span-color,
.variable-item:not(.jesca-has-photo-swatch):not(:has(.jesca-swatch-photo))[data-title*="Ouro Velho" i],
.variable-item:not(.jesca-has-photo-swatch):not(:has(.jesca-swatch-photo))[data-value*="ouro-velho" i] .variable-item-span-color,
.variable-item:not(.jesca-has-photo-swatch):not(:has(.jesca-swatch-photo))[data-value*="ouro-velho" i] {
  background: linear-gradient(135deg, #7a5e28 0%, #4a3714 50%, #634b1e 100%) !important;
}

.variable-item:not(.jesca-has-photo-swatch):not(:has(.jesca-swatch-photo))[data-title*="Cobre" i] .variable-item-span-color,
.variable-item:not(.jesca-has-photo-swatch):not(:has(.jesca-swatch-photo))[data-title*="Cobre" i],
.variable-item:not(.jesca-has-photo-swatch):not(:has(.jesca-swatch-photo))[data-value*="cobre" i] .variable-item-span-color,
.variable-item:not(.jesca-has-photo-swatch):not(:has(.jesca-swatch-photo))[data-value*="cobre" i] {
  background: linear-gradient(135deg, #d9824c 0%, #b87333 50%, #944d18 100%) !important;
}

.variable-item:not(.jesca-has-photo-swatch):not(:has(.jesca-swatch-photo))[data-title*="Grafite" i] .variable-item-span-color,
.variable-item:not(.jesca-has-photo-swatch):not(:has(.jesca-swatch-photo))[data-title*="Grafite" i],
.variable-item:not(.jesca-has-photo-swatch):not(:has(.jesca-swatch-photo))[data-value*="grafite" i] .variable-item-span-color,
.variable-item:not(.jesca-has-photo-swatch):not(:has(.jesca-swatch-photo))[data-value*="grafite" i] {
  background: linear-gradient(135deg, #555555 0%, #2b2b2b 50%, #444444 100%) !important;
}

.variable-item:not(.jesca-has-photo-swatch):not(:has(.jesca-swatch-photo))[data-title*="Niquel" i] .variable-item-span-color,
.variable-item:not(.jesca-has-photo-swatch):not(:has(.jesca-swatch-photo))[data-title*="Niquel" i],
.variable-item:not(.jesca-has-photo-swatch):not(:has(.jesca-swatch-photo))[data-title*="Níquel" i] .variable-item-span-color,
.variable-item:not(.jesca-has-photo-swatch):not(:has(.jesca-swatch-photo))[data-title*="Níquel" i],
.variable-item:not(.jesca-has-photo-swatch):not(:has(.jesca-swatch-photo))[data-value*="niquel" i] .variable-item-span-color,
.variable-item:not(.jesca-has-photo-swatch):not(:has(.jesca-swatch-photo))[data-value*="niquel" i] {
  background: linear-gradient(135deg, #f0f0f0 0%, #c8c8c8 50%, #e0e0e0 100%) !important;
}

.variable-item:not(.jesca-has-photo-swatch):not(:has(.jesca-swatch-photo))[data-title*="Ouro Velho" i] .variable-item-span-color,
.variable-item:not(.jesca-has-photo-swatch):not(:has(.jesca-swatch-photo))[data-title*="Ouro Velho" i],
.variable-item:not(.jesca-has-photo-swatch):not(:has(.jesca-swatch-photo))[data-value*="ouro-velho" i] .variable-item-span-color,
.variable-item:not(.jesca-has-photo-swatch):not(:has(.jesca-swatch-photo))[data-value*="ouro-velho" i] {
  background: linear-gradient(135deg, #9b7a35 0%, #6e5220 50%, #876527 100%) !important;
}

.variable-item:not(.jesca-has-photo-swatch):not(:has(.jesca-swatch-photo))[data-title*="Prata" i] .variable-item-span-color,
.variable-item:not(.jesca-has-photo-swatch):not(:has(.jesca-swatch-photo))[data-title*="Prata" i],
.variable-item:not(.jesca-has-photo-swatch):not(:has(.jesca-swatch-photo))[data-value*="prata" i] .variable-item-span-color,
.variable-item:not(.jesca-has-photo-swatch):not(:has(.jesca-swatch-photo))[data-value*="prata" i] {
  background: linear-gradient(135deg, #e8e8e8 0%, #cfcfcf 50%, #dadada 100%) !important;
}

.variable-item:not(.jesca-has-photo-swatch):not(:has(.jesca-swatch-photo))[data-title*="Pret" i] .variable-item-span-color,
.variable-item:not(.jesca-has-photo-swatch):not(:has(.jesca-swatch-photo))[data-title*="Pret" i],
.variable-item:not(.jesca-has-photo-swatch):not(:has(.jesca-swatch-photo))[data-value*="pret" i] .variable-item-span-color,
.variable-item[data-value*="pret" i] {
  background: #1a1a1a !important;
}

/* 21. MEGAMENU POR CATEGORIA COM PRODUTO EM DESTAQUE (ETAPA 4e - TRAY t12) */
.ct-header [data-id*="menu"] .menu > li > .sub-menu {
  display: flex !important;
  flex-direction: row !important;
  min-width: 540px !important;
  max-width: 780px !important;
  padding: 18px 20px !important;
  background-color: #ffffff !important;
  border-radius: 12px !important;
  box-shadow: 0 12px 36px rgba(0, 0, 0, 0.14) !important;
  border: 1px solid #ededed !important;
  gap: 20px !important;
}

.jesca-megamenu-links-col {
  flex: 1 1 65% !important;
  display: grid !important;
  grid-template-columns: repeat(2, 1fr) !important;
  gap: 6px 14px !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

.jesca-megamenu-links-col li a {
  font-family: var(--jesca-font-sans) !important;
  font-size: 13.5px !important;
  font-weight: 500 !important;
  color: #444444 !important;
  padding: 6px 8px !important;
  display: block !important;
  border-radius: 4px !important;
  transition: all 0.15s ease !important;
}

.jesca-megamenu-links-col li a:hover {
  background-color: #f7f7f7 !important;
  color: var(--jesca-dark) !important;
  font-weight: 600 !important;
  padding-left: 12px !important;
}

.jesca-megamenu-product {
  flex: 0 0 200px !important;
  max-width: 200px !important;
  border-left: 1px solid #eeeeee !important;
  padding-left: 18px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
  box-sizing: border-box !important;
}

.jesca-mmp-badge {
  font-size: 10px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  color: #888888 !important;
  margin-bottom: 6px !important;
}

.jesca-mmp-img-link {
  display: block !important;
  width: 120px !important;
  height: 120px !important;
  margin-bottom: 8px !important;
}

.jesca-mmp-img-link img {
  width: 100% !important;
  height: 100% !important;
  aspect-ratio: 1 / 1 !important;
  object-fit: contain !important;
  border-radius: 6px !important;
}

.jesca-mmp-title {
  font-family: var(--jesca-font-sans) !important;
  font-size: 12.5px !important;
  font-weight: 600 !important;
  color: #222222 !important;
  text-decoration: none !important;
  line-height: 1.3 !important;
  height: 2.6em !important;
  overflow: hidden !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  margin-bottom: 4px !important;
}

.jesca-mmp-prices {
  display: flex !important;
  flex-direction: column !important;
  gap: 1px !important;
  margin-bottom: 8px !important;
}

.jesca-mmp-reg {
  font-size: 11px !important;
  color: #777777 !important;
}

.jesca-mmp-pix {
  font-size: 13.5px !important;
  font-weight: 700 !important;
  color: var(--jesca-dark) !important;
}

.jesca-mmp-btn {
  background-color: var(--jesca-dark) !important;
  color: #ffffff !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  border-radius: var(--jesca-radius-pill) !important;
  padding: 6px 16px !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
  transition: all 0.2s ease !important;
}

.jesca-mmp-btn:hover {
  background-color: #1a1a4b !important;
}

/* 22. PAINEL TODAS CATEGORIAS (ETAPA 4e - TRAY t11) */
.menu-item-todas-categorias .jesca-all-cats-megamenu-wrap {
  position: absolute !important;
  top: 100% !important;
  left: 0 !important;
  min-width: 820px !important;
  background-color: #ffffff !important;
  border-radius: 12px !important;
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.16) !important;
  border: 1px solid #ededed !important;
  padding: 24px 26px !important;
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 20px !important;
  visibility: hidden;
  opacity: 0;
  transition: opacity 0.2s ease, visibility 0.2s ease !important;
  z-index: 9999 !important;
  text-align: left !important;
}

.menu-item-todas-categorias:hover .jesca-all-cats-megamenu-wrap {
  visibility: visible !important;
  opacity: 1 !important;
}

.jesca-all-cats-col {
  display: flex !important;
  flex-direction: column !important;
  gap: 6px !important;
}

.jesca-all-cats-col .jesca-acc-title {
  font-family: var(--jesca-font-sans) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  color: var(--jesca-dark) !important;
  text-transform: uppercase !important;
  border-bottom: 2px solid #ededed !important;
  padding-bottom: 6px !important;
  margin-bottom: 6px !important;
  text-decoration: none !important;
}

.jesca-all-cats-col .jesca-acc-list {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 4px !important;
}

.jesca-all-cats-col .jesca-acc-list li a {
  font-family: var(--jesca-font-sans) !important;
  font-size: 13px !important;
  color: #555555 !important;
  text-decoration: none !important;
  padding: 4px 6px !important;
  border-radius: 4px !important;
  transition: all 0.15s ease !important;
  display: block !important;
}

.jesca-all-cats-col .jesca-acc-list li a:hover {
  background-color: #f5f5f5 !important;
  color: var(--jesca-dark) !important;
  padding-left: 10px !important;
}

.jesca-cookie-banner {
  display: none !important;
}


/* ==========================================================================
   23. ETAPA 4O: FAIXA COMPACTA DE CATEGORIA (SEM FUNDO CINZA ALTO, TÍTULO NORMAL)
   ========================================================================== */

.archive .hero-section,
.tax-product_cat .hero-section,
.post-type-archive-product .hero-section {
  display: none !important;
}

.jesca-category-clean-header {
  width: 100% !important;
  max-width: var(--normal-container-max-width, 1280px) !important;
  margin: 0 auto !important;
  padding: 24px 20px 8px 20px !important;
  box-sizing: border-box !important;
}

.jesca-cat-clean-title {
  font-family: var(--jesca-font-sans, "Instrument Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif) !important;
  font-size: 32px !important;
  font-weight: 700 !important;
  color: #111111 !important;
  margin: 12px 0 20px 0 !important;
  text-transform: none !important;
  letter-spacing: -0.5px !important;
  line-height: 1.15 !important;
  text-align: left !important;
}

.archive .hero-section .ct-breadcrumbs,
.tax-product_cat .hero-section .ct-breadcrumbs,
.jesca-cat-breadcrumbs {
  margin: 0 0 2px 0 !important;
  font-size: 13px !important;
  color: #777777 !important;
  text-align: left !important;
}

.jesca-cat-breadcrumbs a {
  color: #555555 !important;
  text-decoration: none !important;
}

.jesca-cat-breadcrumbs a:hover {
  color: #111111 !important;
  text-decoration: underline !important;
}

.jesca-cat-breadcrumbs .sep {
  margin: 0 6px !important;
  color: #aaaaaa !important;
}

.jesca-cat-breadcrumbs .current {
  color: #222222 !important;
  font-weight: 600 !important;
}

/* Ocultar barra padrão redundante do WooCommerce/Blocksy */
.tax-product_cat .woocommerce-result-count,
.tax-product_cat .woocommerce-ordering,
.archive .woocommerce-result-count,
.archive .woocommerce-ordering,
.post-type-archive-product .woocommerce-result-count,
.post-type-archive-product .woocommerce-ordering {
  display: none !important;
}


/* Remover PREÇO REPETIDO no loop (WooCommerce padrão continua sendo impresso) */
.woocommerce ul.products li.product > .price,
.woocommerce ul.products li.product span.price:not(.jesca-pix-box *) {
  display: none !important;
}

/* Preço no Card: Estilo Shopify / Tray — Novo Bloco de Preço Etapa 8 (Lucas 15:49) */
.woocommerce ul.products li.product .jesca-pix-box {
  margin: 6px 0 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 2px !important;
}

.woocommerce ul.products li.product .jesca-pix-main {
  font-size: 17px !important;
  font-weight: 800 !important;
  color: #01012b !important;
  line-height: 1.2 !important;
}

.woocommerce ul.products li.product .jesca-pix-label {
  font-weight: 700 !important;
  color: #25D366 !important;
  font-size: 13px !important;
}

.woocommerce ul.products li.product .jesca-card-line {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 1px !important;
}

.woocommerce ul.products li.product .jesca-price-regular {
  font-size: 14px !important;
  font-weight: 400 !important;
  color: #555555 !important;
  text-decoration: none !important;
}

.woocommerce ul.products li.product .jesca-pix-installments,
.woocommerce ul.products li.product .jesca-card-installments {
  font-size: 12px !important;
  color: #777777 !important;
  line-height: 1.2 !important;
}

/* Imagem do Card ENCOSTADA NAS BORDAS (t13 - Sem Moldura / Sem Fundo Cinza) */
.woocommerce ul.products li.product,
.wc-block-grid__product {
  background: #ffffff !important;
  background-color: #ffffff !important;
  border: none !important;
  box-shadow: none !important;
}

.woocommerce ul.products li.product figure,
.woocommerce ul.products li.product .ct-media-container,
.wc-block-grid__product-image {
  background: #ffffff !important;
  background-color: #ffffff !important;
  border: none !important;
  padding: 0 !important;
  margin: 0 0 10px 0 !important;
  width: 100% !important;
}

.woocommerce ul.products li.product img,
.woocommerce-loop-product__link img {
  border-radius: 4px !important;
  aspect-ratio: 1 / 1 !important;
  object-fit: contain !important;
  width: 100% !important;
  height: auto !important;
  background: #ffffff !important;
  background-color: #ffffff !important;
  padding: 0 !important;
  margin: 0 !important;
  box-shadow: none !important;
}

/* ==========================================================================
   24. CABEÇALHO SEMPRE VISÍVEL NO TOPO (STICKY HEADER)
   ========================================================================== */
header#header,
.ct-header {
  position: sticky !important;
  top: 0 !important;
  z-index: 99999 !important;
  background-color: #ffffff !important;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08) !important;
  transition: top 0.2s ease !important;
}

body.admin-bar header#header,
body.admin-bar .ct-header {
  top: 32px !important;
}

@media (max-width: 782px) {
  body.admin-bar header#header,
  body.admin-bar .ct-header {
    top: 46px !important;
  }
}

#main-container,
.site-main,
main#main {
  overflow: visible !important;
}

/* ==========================================================================
   25. BANNER HERO REAL SHOPIFY (1920x450) E SLIDER
   ========================================================================== */
.jesca-shopify-banner-slider {
  position: relative;
  width: 100%;
  max-width: 100%;
  margin: 0;
  padding: 0;
  overflow: hidden;
  background-color: #f7f7f7;
}

.jesca-banner-track {
  position: relative;
  width: 100%;
  height: auto;
  min-height: 0;
}

.jesca-banner-slide {
  display: none;
  width: 100%;
  height: auto;
  text-decoration: none;
}

.jesca-banner-slide.active {
  display: block;
  animation: fadeInBanner 0.4s ease-in-out;
}

@keyframes fadeInBanner {
  from { opacity: 0.4; }
  to { opacity: 1; }
}

.jesca-banner-slide img {
  width: 100% !important;
  height: auto !important;
  max-height: none !important;
  object-fit: contain !important;
  display: block !important;
}

/* Zero gap entre cabeçalho e banner na Home (Etapa 4g) */
body.home .hero-section,
body.home .entry-header {
  display: none !important;
}

body.home .site-main,
body.home [data-vertical-spacing*="top"],
body.home .ct-container-full,
body.home article.page,
body.home .entry-content {
  padding-top: 0 !important;
  margin-top: 0 !important;
}

.jesca-banner-controls {
  position: absolute !important;
  bottom: 12px !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  background: transparent !important;
  padding: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  z-index: 10 !important;
}

@media (max-width: 768px) {
  .jesca-banner-controls {
    position: absolute !important;
    bottom: 8px !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    justify-content: center !important;
    padding: 0 !important;
    background: transparent !important;
    z-index: 10 !important;
  }
  .jesca-bdot {
    background: #cccccc !important;
    border: none !important;
  }
  .jesca-bdot.active {
    background: #000000 !important;
  }
}

.jesca-banner-playpause {
  display: none !important;
}

.jesca-banner-dots {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
}

.jesca-bdot {
  width: 9px !important;
  height: 9px !important;
  border-radius: 50% !important;
  background: rgba(255, 255, 255, 0.65) !important;
  border: 1px solid rgba(0, 0, 0, 0.3) !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
}

.jesca-bdot.active {
  background: #000000 !important;
  border-color: #ffffff !important;
  transform: scale(1.25) !important;
}

/* ==========================================================================
   26. FAIXA DE BENEFÍCIOS (7 ÍCONES IDÊNTICOS À SHOPIFY - SCREENSHOT 2)
   ========================================================================== */
.jesca-benefits-bar-shopify {
  background: #ffffff;
  border-bottom: 1px solid #ebebeb;
  padding: 30px 20px;
  width: 100%;
  box-sizing: border-box;
}

.jesca-benefits-container {
  max-width: 1280px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
  flex-wrap: nowrap;
}

.jesca-benefit-item {
  flex: 1;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
}

.jesca-benefit-icon {
  color: #333333;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 32px;
}

.jesca-benefit-icon svg {
  width: 28px !important;
  height: 28px !important;
  stroke: #222222 !important;
  display: block !important;
}

.jesca-benefit-info strong {
  display: block;
  font-family: var(--jesca-font-sans);
  font-size: 13.5px;
  font-weight: 700;
  color: #1a1a1a;
  line-height: 1.25;
}

.jesca-benefit-info span {
  display: block;
  font-family: var(--jesca-font-sans);
  font-size: 12px;
  color: #666666;
  font-weight: 400;
  margin-top: 3px;
  line-height: 1.2;
}

@media (max-width: 992px) {
  .jesca-benefits-container {
    flex-wrap: wrap;
    gap: 20px 10px;
  }
  .jesca-benefit-item {
    flex: 0 0 calc(33.33% - 10px);
  }
}

@media (max-width: 768px) {
  .jesca-benefits-bar-shopify {
    padding: 12px 10px !important;
    overflow: hidden !important;
  }
  .jesca-benefits-container {
    display: flex !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory !important;
    -webkit-overflow-scrolling: touch !important;
    gap: 10px !important;
    padding: 4px 2px 8px 2px !important;
    scrollbar-width: none !important;
  }
  .jesca-benefits-container::-webkit-scrollbar {
    display: none !important;
  }
  .jesca-benefit-item {
    flex: 0 0 calc(50% - 5px) !important;
    max-width: calc(50% - 5px) !important;
    scroll-snap-align: start !important;
    box-sizing: border-box !important;
    padding: 10px 8px !important;
    background: #fafafa !important;
    border-radius: 8px !important;
    border: 1px solid #ebebeb !important;
  }
  .jesca-benefit-info strong {
    font-size: 12px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    max-width: 100% !important;
  }
  .jesca-benefit-info span {
    font-size: 11px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    max-width: 100% !important;
  }
}

/* ==========================================================================
   27. FAIXA DA NEWSLETTER TRAY 1:1 (SCREENSHOT 1 & ETAPA 4g)
   ========================================================================== */
.jesca-newsletter-section {
  background-color: var(--jesca-rodape-fundo, #f3f3f3) !important;
  border-top: 1px solid #e5e5e5 !important;
  border-bottom: 1px solid #e5e5e5 !important;
  padding: 35px 20px !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

.jesca-newsletter-inner {
  max-width: 1240px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  flex-wrap: nowrap;
}

.jesca-newsletter-text-wrap {
  display: flex;
  align-items: center;
  gap: 16px;
  flex-shrink: 0;
}

.jesca-newsletter-icon {
  width: 44px;
  height: 44px;
  color: #222222;
  flex-shrink: 0;
}

.jesca-newsletter-title {
  font-family: var(--jesca-font-sans);
  font-size: 17px;
  font-weight: 700;
  color: #222222;
  margin: 0;
  line-height: 1.2;
}

.jesca-newsletter-subtitle {
  font-family: var(--jesca-font-sans);
  font-size: 14px;
  color: #666666;
  margin: 3px 0 0 0;
}

.jesca-newsletter-form {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 8px !important;
  flex-shrink: 0;
}

.jesca-nl-inputs-row {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  flex-wrap: nowrap !important;
}

.jesca-nl-input {
  height: 44px !important;
  width: 190px !important;
  border-radius: 25px !important;
  border: 1px solid #dcdcdc !important;
  background-color: #ffffff !important;
  padding: 0 16px !important;
  font-size: 13px !important;
  font-family: var(--jesca-font-sans) !important;
  color: #333333 !important;
  outline: none !important;
  box-sizing: border-box !important;
  transition: border-color 0.2s, box-shadow 0.2s;
}

.jesca-nl-input:focus {
  border-color: #01012b !important;
  box-shadow: 0 0 0 2px rgba(1, 1, 43, 0.1) !important;
}

.jesca-nl-submit-btn {
  background-color: #000000 !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 25px !important;
  height: 44px !important;
  padding: 0 24px !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  font-family: var(--jesca-font-sans) !important;
  cursor: pointer !important;
  white-space: nowrap !important;
  letter-spacing: 0.5px !important;
  text-transform: uppercase !important;
  transition: background 0.2s, transform 0.1s !important;
}

.jesca-nl-submit-btn:hover {
  background-color: #222222 !important;
  transform: translateY(-1px) !important;
}

.jesca-nl-lgpd-wrap {
  font-size: 11.5px !important;
  color: #666666 !important;
  margin-top: 2px !important;
}

.jesca-nl-lgpd-wrap label {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  cursor: pointer !important;
}

.jesca-newsletter-msg {
  width: 100%;
  font-size: 13px;
  font-weight: 600;
  padding: 6px 12px;
  border-radius: 4px;
  display: none;
  margin-top: 8px;
}

.jesca-newsletter-msg.success {
  display: block;
  background: #d4edda;
  color: #155724;
}

.jesca-newsletter-msg.error {
  display: block;
  background: #f8d7da;
  color: #721c24;
}

/* ==========================================================================
   28. RODAPÉ TRAY 5 COLUNAS 1:1 (SCREENSHOT 1 & ETAPA 4g)
   ========================================================================== */
.jesca-footer-container {
  background-color: var(--jesca-rodape-fundo, #f3f3f3) !important;
  color: #444444 !important;
  padding: 45px 20px 0 20px !important;
  font-family: var(--jesca-font-sans) !important;
  border-top: none !important;
}

.jesca-footer-grid {
  max-width: 1240px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1.2fr 1fr 1fr 1.2fr 1.3fr;
  gap: 30px;
  padding-bottom: 35px;
}

.jesca-footer-col h4 {
  font-size: 15px;
  font-weight: 700;
  color: #1a1a1a;
  margin: 0 0 16px 0;
  padding: 0;
  position: static;
  text-transform: none;
  letter-spacing: 0;
}

.jesca-footer-col h4::after {
  display: none !important;
}

.jesca-footer-col ul {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  display: flex;
  flex-direction: column;
  gap: 7px;
}

.jesca-footer-col ul li a {
  font-size: 13px;
  color: #666666;
  text-decoration: none;
  transition: color 0.15s;
}

.jesca-footer-col ul li a:hover {
  color: #01012b;
}

.jesca-footer-brand-logo img {
  max-width: 180px;
  height: auto;
  margin-bottom: 16px;
  display: block;
}

.jesca-footer-social-icons {
  display: flex;
  gap: 12px;
  align-items: center;
}

.jesca-footer-social-icons a {
  color: #222222;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: transform 0.15s, color 0.15s;
  background: none !important;
  width: auto !important;
  height: auto !important;
  border-radius: 0 !important;
}

.jesca-footer-social-icons a:hover {
  color: #01012b;
  transform: translateY(-2px);
}

.jesca-footer-contact-item {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin-bottom: 14px;
  font-size: 13px;
  color: #444444;
  line-height: 1.4;
}

.jesca-footer-contact-item svg {
  width: 18px;
  height: 18px;
  color: #222222;
  flex-shrink: 0;
  margin-top: 1px;
}

/* Coluna 5: Formas de Pagamento e Selos */
.jesca-footer-payments-wrap {
  margin-bottom: 24px;
}

.jesca-footer-payments-icons {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  align-items: center;
}

.jesca-footer-payments-icons img {
  height: 24px;
  width: auto;
  border-radius: 2px;
}

.jesca-footer-seals-wrap {
  margin-top: 20px;
}

.jesca-footer-seals-icons {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

.jesca-footer-seals-icons img {
  height: 36px;
  width: auto;
  object-fit: contain;
}

.jesca-google-seal-box {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 10px;
  background: #ffffff;
  border: 1px solid #e0e0e0;
  border-radius: 4px;
  font-size: 12px;
  font-weight: 700;
  color: #333333;
}

/* Linha Final do Rodapé (Branca 1:1 Tray & Crédito ROAS 360) */
.jesca-footer-copyright-row {
  background-color: #ffffff !important;
  border-top: 1px solid #e5e5e5 !important;
  margin-left: -20px !important;
  margin-right: -20px !important;
  padding: 18px 24px !important;
  max-width: none !important;
}

.jesca-footer-copyright-inner {
  max-width: 1240px !important;
  margin: 0 auto !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
  font-size: 12px !important;
  color: #666666 !important;
  line-height: 1.5 !important;
}

.jesca-footer-partner-credits {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  font-size: 12px !important;
  color: #666666 !important;
  margin: 0 !important;
}

.jesca-footer-partner-credits img {
  vertical-align: middle !important;
  height: 18px !important;
  width: auto !important;
}

/* ==========================================================================
   29. NENHUM AVISO DE COOKIES (ETAPA 4g - PEDIDO DO LUCAS)
   ========================================================================== */
#jesca-cookie-banner,
.jesca-cookie-banner,
.ct-cookies-bar,
.cookie-notice,
#cookie-law-info-bar,
.moove-gdpr-cookie-notice,
.complianz-cookiebanner,
[class*="cookie-banner"],
[id*="cookie-banner"],
[class*="cookie-notice"],
[id*="cookie-notice"] {
  display: none !important;
  opacity: 0 !important;
  pointer-events: none !important;
  height: 0 !important;
  visibility: hidden !important;
}

/* Ocultar rodapé padrão do Blocksy (para manter exclusivamente o rodapé Tray 1:1) */
footer.ct-footer,
.ct-footer,
[data-id="footer"],
#footer:not(.jesca-footer-container) {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  overflow: hidden !important;
  pointer-events: none !important;
}

@media (max-width: 992px) {
  .jesca-footer-grid {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 30px !important;
  }
  .jesca-newsletter-inner {
    flex-direction: column !important;
    align-items: stretch !important;
  }
  .jesca-newsletter-form {
    width: 100% !important;
  }
  .jesca-nl-inputs-row {
    flex-direction: column !important;
    width: 100% !important;
    gap: 10px !important;
  }
  .jesca-nl-input {
    width: 100% !important;
  }
  .jesca-nl-submit-btn {
    width: 100% !important;
  }
  .jesca-footer-copyright-inner {
    flex-direction: column !important;
    text-align: center !important;
    gap: 10px !important;
  }
}

@media (max-width: 600px) {
  .jesca-footer-grid {
    grid-template-columns: 1fr !important;
    gap: 26px !important;
  }
}

/* ==========================================================================
   30. DRAWER MENU MOBILE 1:1 TRAY (DESIGN T06) & TOUCH TARGETS >= 44PX
   ========================================================================== */
.jesca-mobile-drawer {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 9999999;
  pointer-events: none;
  visibility: hidden;
  transition: visibility 0.3s ease;
}

.jesca-mobile-drawer.is-open {
  pointer-events: auto;
  visibility: visible;
}

.jesca-drawer-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.6);
  opacity: 0;
  transition: opacity 0.3s ease;
}

.jesca-mobile-drawer.is-open .jesca-drawer-overlay {
  opacity: 1;
}

.jesca-drawer-panel {
  position: absolute;
  top: 0;
  left: 0;
  width: 320px;
  max-width: 85vw;
  height: 100%;
  background: #ffffff;
  display: flex;
  flex-direction: column;
  transform: translateX(-100%);
  transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1);
  box-shadow: 4px 0 25px rgba(0, 0, 0, 0.15);
}

.jesca-mobile-drawer.is-open .jesca-drawer-panel {
  transform: translateX(0);
}

body.jesca-drawer-open {
  overflow: hidden !important;
}

/* Header do Drawer */
.jesca-drawer-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 16px 20px;
  border-bottom: 1px solid #eee;
  background: #fff;
  flex-shrink: 0;
}

.jesca-drawer-title {
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: 16px;
  font-weight: 700;
  color: #111;
}

.jesca-drawer-close {
  background: none;
  border: none;
  padding: 8px;
  cursor: pointer;
  color: #222;
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 44px;
  min-height: 44px;
}

/* Corpo do Drawer */
.jesca-drawer-body {
  flex: 1;
  overflow-y: auto;
  background: #fff;
  -webkit-overflow-scrolling: touch;
}

.jesca-drawer-nav {
  list-style: none;
  margin: 0;
  padding: 0;
}

.jesca-drawer-nav li {
  border-bottom: 1px solid #f3f3f3;
}

.jesca-drawer-nav .nav-item-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0 20px;
  min-height: 50px;
}

.jesca-drawer-nav .nav-item-row a {
  color: #222;
  font-size: 15px;
  font-weight: 500;
  text-decoration: none;
  flex: 1;
  padding: 14px 0;
  display: block;
  min-height: 44px;
  line-height: 1.4;
}

.jesca-drawer-nav .drawer-toggle-sub {
  background: none;
  border: none;
  padding: 10px;
  cursor: pointer;
  color: #666;
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 44px;
  min-height: 44px;
  transition: transform 0.2s ease;
}

.jesca-drawer-nav li.sub-expanded > .nav-item-row .drawer-toggle-sub {
  transform: rotate(180deg);
}

.jesca-drawer-nav .drawer-submenu {
  list-style: none;
  margin: 0;
  padding: 0;
  background: #fbfbfb;
  display: none;
}

.jesca-drawer-nav li.sub-expanded > .drawer-submenu {
  display: block;
}

.jesca-drawer-nav .drawer-submenu li {
  border-bottom: 1px solid #f0f0f0;
}

.jesca-drawer-nav .drawer-submenu a {
  display: flex;
  align-items: center;
  padding: 12px 20px 12px 35px;
  font-size: 14px;
  color: #555;
  text-decoration: none;
  min-height: 44px;
}

.jesca-drawer-nav .drawer-submenu a:hover {
  color: #000;
  font-weight: 600;
}

/* Ofertas Especiais Pill */
.jesca-drawer-ofertas-wrap {
  padding: 18px 20px;
}

.jesca-drawer-ofertas-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  background: #000000;
  color: #ffffff !important;
  text-decoration: none;
  padding: 12px 20px;
  border-radius: 9999px;
  font-size: 14px;
  font-weight: 700;
  min-height: 46px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.12);
}

.jesca-drawer-ofertas-btn .icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  border: 1.5px solid #fff;
  border-radius: 50%;
  font-size: 11px;
  font-weight: 800;
}

/* Rodapé Preto do Drawer (1:1 t06) */
.jesca-drawer-footer {
  background: #000000;
  color: #ffffff;
  padding: 20px;
  flex-shrink: 0;
}

.jesca-drawer-footer-link {
  display: flex;
  align-items: center;
  gap: 14px;
  color: #ffffff !important;
  text-decoration: none;
  min-height: 44px;
}

.jesca-drawer-footer-link .title {
  display: block;
  font-size: 14px;
  font-weight: 700;
  color: #fff;
}

.jesca-drawer-footer-link .sub {
  display: block;
  font-size: 12px;
  color: #bbb;
}

.jesca-drawer-footer-divider {
  height: 1px;
  background: rgba(255, 255, 255, 0.15);
  margin: 12px 0;
}

.jesca-drawer-tracking-wrap {
  margin-top: 5px;
}

.jesca-drawer-tracking-title {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 13px;
  font-weight: 600;
  margin-bottom: 10px;
  color: #fff;
}

.jesca-drawer-tracking-form {
  display: flex;
  align-items: center;
  background: #ffffff;
  border-radius: 9999px;
  padding: 2px 6px 2px 14px;
}

.jesca-drawer-tracking-form input {
  border: none;
  outline: none;
  background: transparent;
  font-size: 13px;
  color: #111;
  width: 100%;
  height: 38px;
}

.jesca-drawer-tracking-form button {
  background: none;
  border: none;
  padding: 8px;
  cursor: pointer;
  color: #333;
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 44px;
  min-height: 44px;
}

/* Prevenção de Estouro Horizontal em Telas Pequenas */
html, body {
  max-width: 100vw !important;
  overflow-x: hidden !important;
}

/* Área de toque mínima de 44px para botões e links interativos no celular */
@media (max-width: 600px) {
  button, 
  .button, 
  a.button, 
  .btn,
  .ct-header-trigger,
  .ct-header-cart,
  .ct-header-search {
    min-width: 44px;
    min-height: 44px;
  }
}

/* ==========================================================================
   31. CABEÇALHO DESKTOP 2 LINHAS 1:1 TRAY (ETAPA 4k - DESIGN t11 / t12)
   ========================================================================== */
.jesca-tray-desktop-header {
  display: block;
  width: 100%;
  background: #ffffff;
  position: relative;
  z-index: 9999;
}

/* Ocultar cabeçalho padrão do Blocksy no Desktop */
@media (min-width: 992px) {
  header#header.ct-header {
    display: none !important;
  }
  .jesca-tray-desktop-header {
    display: block !important;
  }
}

/* No Celular: Ocultar cabeçalho desktop e manter header Blocksy opaco e fixo */
@media (max-width: 991px) {
  .jesca-tray-desktop-header {
    display: none !important;
  }
  header#header.ct-header {
    display: block !important;
    position: sticky !important;
    top: 0 !important;
    z-index: 99999 !important;
    background: #ffffff !important;
    background-color: #ffffff !important;
    opacity: 1 !important;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08) !important;
  }
  body.admin-bar header#header.ct-header {
    top: 46px !important;
  }
  header#header.ct-header [data-device="desktop"] {
    display: none !important;
  }
  header#header.ct-header [data-device="mobile"] {
    display: block !important;
    background: #ffffff !important;
  }
}

/* FAIXA PRETA TOPO TRAY */
.jesca-hdr-topbar {
  background: #000000;
  color: #ffffff;
  font-size: 12px;
  font-weight: 500;
  text-align: center;
  padding: 6px 15px;
  letter-spacing: 0.3px;
}

.jesca-hdr-topbar-text {
  color: #ffffff;
}

.jesca-hdr-container {
  max-width: 1260px;
  margin: 0 auto;
  padding: 0 20px;
  width: 100%;
  box-sizing: border-box;
}

/* LINHA 1: Logo + Busca + Atendimento + Conta + Carrinho */
.jesca-hdr-line-1 {
  background: #ffffff;
  padding: 12px 0;
  border-bottom: 1px solid #f0f0f0;
}

.jesca-hdr-line-1 .jesca-hdr-container {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
}

.jesca-hdr-logo {
  display: inline-flex;
  align-items: center;
  flex-shrink: 0;
}

.jesca-hdr-logo img {
  height: 48px;
  width: auto;
  display: block;
}

/* Busca Grande em Pílula */
.jesca-hdr-search-wrap {
  flex: 1;
  max-width: 560px;
  margin: 0 20px;
}

.jesca-hdr-search-form {
  position: relative;
  display: flex;
  align-items: center;
  background: #f3f3f3;
  border-radius: 9999px;
  height: 44px;
  padding: 2px 8px 2px 20px;
  box-sizing: border-box;
  border: 1px solid transparent;
  transition: all 0.2s ease;
}

.jesca-hdr-search-form:focus-within {
  background: #ffffff;
  border-color: #000000;
  box-shadow: 0 0 0 2px rgba(0,0,0,0.06);
}

.jesca-hdr-search-input {
  flex: 1;
  border: none !important;
  outline: none !important;
  background: transparent !important;
  font-size: 14px;
  color: #1a1a1a;
  padding: 0;
  height: 100%;
  box-shadow: none !important;
}

.jesca-hdr-search-input::placeholder {
  color: #777777;
}

.jesca-hdr-search-btn {
  background: none;
  border: none;
  padding: 8px 12px;
  cursor: pointer;
  color: #333333;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  transition: color 0.15s ease;
}

.jesca-hdr-search-btn:hover {
  color: #000000;
}

/* Ações Linha 1 (Atendimento e Minha Conta) */
.jesca-hdr-action-item {
  display: flex;
  align-items: center;
  gap: 10px;
  text-decoration: none;
  flex-shrink: 0;
  color: #1a1a1a;
  transition: opacity 0.15s;
}

.jesca-hdr-action-item:hover {
  opacity: 0.8;
}

.jesca-hdr-icon-circle {
  width: 36px;
  height: 36px;
  border: 1.5px solid #dcdcdc;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #111111;
  flex-shrink: 0;
}

.jesca-hdr-action-text {
  display: flex;
  flex-direction: column;
  line-height: 1.25;
}

.jesca-hdr-action-text .sub {
  font-size: 11px;
  color: #777777;
  font-weight: 500;
}

.jesca-hdr-action-text .main {
  font-size: 13px;
  color: #111111;
  font-weight: 700;
}

/* Carrinho com contador */
.jesca-hdr-cart-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  color: #111111;
  text-decoration: none;
  padding: 6px;
  flex-shrink: 0;
}

.jesca-hdr-cart-icon-wrap {
  position: relative;
  display: inline-flex;
}

.jesca-hdr-cart-badge {
  position: absolute;
  top: -6px;
  right: -8px;
  background: #000000;
  color: #ffffff;
  font-size: 11px;
  font-weight: 700;
  min-width: 18px;
  height: 18px;
  border-radius: 9px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 4px;
  box-sizing: border-box;
}

/* CABEÇALHO COMPLETO DESKTOP (Linha 1 + Linha 2 Sticky ao Rolar, Tray t66) */
@media (min-width: 769px) {
  .jesca-hdr-sticky-wrap {
    background: #ffffff;
    width: 100%;
    position: relative;
    z-index: 99998;
    transition: box-shadow 0.2s ease;
  }

  .jesca-hdr-sticky-wrap.is-sticky {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    z-index: 99999 !important;
    background: #ffffff !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.08) !important;
    border-bottom: 1px solid #eeeeee !important;
  }

  body.admin-bar .jesca-hdr-sticky-wrap.is-sticky {
    top: 32px !important;
  }

  /* Compactação suave ao fixar (~102px total) */
  .jesca-hdr-sticky-wrap.is-sticky .jesca-hdr-line-1 {
    padding: 6px 0 !important;
    height: 58px !important;
    border-bottom: 1px solid #f1f5f9 !important;
  }
  .jesca-hdr-sticky-wrap.is-sticky .jesca-hdr-logo img {
    height: 38px !important;
    width: auto !important;
  }
  .jesca-hdr-sticky-wrap.is-sticky .jesca-hdr-line-2 {
    height: 44px !important;
    border-bottom: none !important;
  }
  .jesca-hdr-sticky-wrap.is-sticky .jesca-hdr-nav-container {
    height: 44px !important;
  }
}

/* LINHA 2: Categorias */
.jesca-hdr-line-2 {
  background: #ffffff;
  border-bottom: 1px solid #eeeeee;
  position: relative;
  z-index: 99998;
}

.jesca-hdr-nav-container {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 50px;
}

.jesca-hdr-main-nav {
  display: flex;
  align-items: center;
  gap: 28px;
  height: 100%;
}

.jesca-nav-item {
  position: relative;
  display: flex;
  align-items: center;
  height: 100%;
}

.jesca-nav-link {
  font-size: 14px;
  font-weight: 600;
  color: #111111 !important;
  text-decoration: none !important;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  height: 100%;
  padding: 0 2px;
  transition: color 0.15s ease;
  white-space: nowrap;
}

.jesca-nav-link:hover {
  color: #01012b !important;
}

.jesca-todas-cat-link {
  font-weight: 700;
}

/* Botão Pílula Preta: % Ofertas Especiais */
.jesca-hdr-ofertas-wrap {
  display: flex;
  align-items: center;
}

.jesca-hdr-ofertas-btn {
  background: #000000 !important;
  color: #ffffff !important;
  padding: 7px 18px !important;
  border-radius: 9999px !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.12) !important;
  transition: transform 0.15s ease, background 0.15s ease !important;
}

.jesca-hdr-ofertas-btn:hover {
  transform: translateY(-1px);
  background: #1a1a1a !important;
}

.jesca-hdr-ofertas-btn .icon {
  width: 18px !important;
  height: 18px !important;
  border: 1.5px solid #ffffff !important;
  border-radius: 50% !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 10px !important;
  font-weight: 800 !important;
  color: #ffffff !important;
}

/* MEGAMENU: Todas Categorias (4 colunas 1:1 com t11) */
.jesca-megamenu-panel {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  width: 940px;
  background: #ffffff;
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.12);
  border-radius: 0 0 8px 8px;
  padding: 24px 28px;
  box-sizing: border-box;
  z-index: 999999;
}

.jesca-nav-item.has-megamenu:hover .jesca-megamenu-panel,
.jesca-megamenu-panel:hover {
  display: block;
}

.jesca-megamenu-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
}

.jesca-mega-group {
  margin-bottom: 18px;
}

.jesca-mega-title {
  display: block;
  font-size: 14px;
  font-weight: 700;
  color: #111111 !important;
  text-decoration: none !important;
  margin-bottom: 8px;
  padding-bottom: 4px;
  border-bottom: 1px solid #f0f0f0;
}

.jesca-mega-title:hover {
  color: #01012b !important;
}

.jesca-mega-list {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex;
  flex-direction: column;
  gap: 5px;
}

.jesca-mega-list li a {
  font-size: 13px;
  color: #555555 !important;
  text-decoration: none !important;
  transition: color 0.15s ease;
}

.jesca-mega-list li a:hover {
  color: #111111 !important;
  text-decoration: underline !important;
}

/* DROPDOWN CATEGORIA FIOS (2 colunas + Produto Destaque 1:1 com t12) */
.jesca-fios-dropdown-panel {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  width: 580px;
  background: #ffffff;
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.12);
  border-radius: 0 0 8px 8px;
  padding: 24px 24px;
  box-sizing: border-box;
  z-index: 999999;
  gap: 24px;
}

.jesca-nav-item.has-dropdown-fios:hover .jesca-fios-dropdown-panel,
.jesca-fios-dropdown-panel:hover {
  display: flex;
}

.jesca-fios-cols-wrap {
  flex: 1;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}

.jesca-fios-col-list {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex;
  flex-direction: column;
  gap: 7px;
}

.jesca-fios-col-list li a {
  font-size: 13px;
  color: #555555 !important;
  text-decoration: none !important;
  transition: color 0.15s ease;
}

.jesca-fios-col-list li a:hover {
  color: #111111 !important;
  text-decoration: underline !important;
}

.jesca-fios-featured-product {
  width: 170px;
  background: #ffffff;
  border-left: 1px solid #eeeeee;
  padding-left: 18px;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  flex-shrink: 0;
}

.jesca-fios-feat-img-link {
  display: block;
  margin-bottom: 8px;
}

.jesca-fios-feat-img-link img {
  width: 130px;
  height: 130px;
  object-fit: contain;
  display: block;
  border-radius: 4px;
}

.jesca-fios-feat-title {
  font-size: 12px;
  font-weight: 600;
  color: #111111 !important;
  text-decoration: none !important;
  line-height: 1.3;
  margin-bottom: 6px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.jesca-fios-feat-price {
  margin-bottom: 8px;
}

.jesca-fios-feat-price .price-full {
  display: block;
  font-size: 13px;
  font-weight: 700;
  color: #111111;
}

.jesca-fios-feat-price .price-pix {
  display: block;
  font-size: 11px;
  color: #01012b;
}

.jesca-fios-feat-buy-btn {
  display: block;
  width: 100%;
  background: #000000;
  color: #ffffff !important;
  text-align: center;
  padding: 6px 0;
  border-radius: 4px;
  font-size: 12px;
  font-weight: 700;
  text-decoration: none !important;
  margin-bottom: 6px;
}

.jesca-fios-feat-wa-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  width: 100%;
  border: 1px solid #25d366;
  color: #25d366 !important;
  text-align: center;
  padding: 5px 0;
  border-radius: 4px;
  font-size: 10px;
  font-weight: 600;
  text-decoration: none !important;
}

/* ==========================================================================
   ETAPA 4L: CABEÇALHO E LOGO MOBILE
   ========================================================================== */
@media (max-width: 768px) {
  .ct-header [data-device="mobile"] [data-row="middle"] {
    min-height: 52px !important;
    max-height: 56px !important;
  }
  .ct-header [data-device="mobile"] .site-logo-container img,
  .ct-header [data-device="mobile"] .site-logo-container img.default-logo,
  .ct-header [data-device="mobile"] [data-id="logo"] img {
    height: 35px !important;
    width: auto !important;
    max-height: 35px !important;
    object-fit: contain !important;
  }
}

/* ==========================================================================
   ETAPA 4M / 4N: AJUSTES FINAIS & PÁGINAS INSTITUCIONAIS
   ========================================================================== */

/* 1. Ocultar seletor YayCurrency do frontend */
.yay-currency,
.yay-currency-switcher,
[class*="yay-currency"],
[id*="yay-currency"] {
  display: none !important;
}

/* 2. Visual das Páginas Institucionais (Leitura Confortável ~760px) */
body.page:not(.home):not(.woocommerce-checkout):not(.woocommerce-cart):not(.woocommerce-account) .hero-section {
  padding-top: 36px !important;
  padding-bottom: 12px !important;
  margin-bottom: 0 !important;
  background: transparent !important;
}

body.page:not(.home):not(.woocommerce-checkout):not(.woocommerce-cart):not(.woocommerce-account) .page-title {
  font-family: var(--jesca-font-maven, "Maven Pro", sans-serif) !important;
  font-size: clamp(1.8rem, 3vw, 2.4rem) !important;
  font-weight: 700 !important;
  text-align: center !important;
  color: #1a1a1a !important;
  margin: 0 auto 20px auto !important;
  letter-spacing: -0.5px !important;
}

body.page:not(.home):not(.woocommerce-checkout):not(.woocommerce-cart):not(.woocommerce-account) .entry-content {
  max-width: 760px !important;
  width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 20px !important;
  padding-right: 20px !important;
  padding-bottom: 70px !important;
  line-height: 1.75 !important;
  font-size: 15.5px !important;
  color: #3f3936 !important;
  box-sizing: border-box !important;
}

body.page:not(.home):not(.woocommerce-checkout):not(.woocommerce-cart):not(.woocommerce-account) .entry-content h2 {
  font-family: var(--jesca-font-serif, "Instrument Serif", Georgia, serif) !important;
  font-size: 1.85rem !important;
  font-weight: 400 !important;
  color: #2c2523 !important;
  margin-top: 36px !important;
  margin-bottom: 14px !important;
  line-height: 1.3 !important;
  border-bottom: 1px solid #f0eeea;
  padding-bottom: 8px;
}

body.page:not(.home):not(.woocommerce-checkout):not(.woocommerce-cart):not(.woocommerce-account) .entry-content h3 {
  font-family: var(--jesca-font-sans, "Instrument Sans", sans-serif) !important;
  font-size: 1.25rem !important;
  font-weight: 700 !important;
  color: #2c2523 !important;
  margin-top: 28px !important;
  margin-bottom: 10px !important;
}

body.page:not(.home):not(.woocommerce-checkout):not(.woocommerce-cart):not(.woocommerce-account) .entry-content p {
  margin-bottom: 1.4em !important;
}

body.page:not(.home):not(.woocommerce-checkout):not(.woocommerce-cart):not(.woocommerce-account) .entry-content ul,
body.page:not(.home):not(.woocommerce-checkout):not(.woocommerce-cart):not(.woocommerce-account) .entry-content ol {
  margin-bottom: 1.4em !important;
  padding-left: 24px !important;
}

body.page:not(.home):not(.woocommerce-checkout):not(.woocommerce-cart):not(.woocommerce-account) .entry-content li {
  margin-bottom: 0.6em !important;
}

body.page:not(.home):not(.woocommerce-checkout):not(.woocommerce-cart):not(.woocommerce-account) .entry-content a {
  color: #01012b !important;
  text-decoration: underline !important;
  font-weight: 600;
}

body.page:not(.home):not(.woocommerce-checkout):not(.woocommerce-cart):not(.woocommerce-account) .entry-content a:hover {
  color: #e5b842 !important;
}

/* ==========================================================================
   ETAPA 4O: BARRA DE FILTROS HORIZONTAL E GAVETA MOBILE
   ========================================================================== */

/* 1. Subcategorias em Pílulas */
/* ==========================================================================
   24. ETAPA 4Q: FILTROS EM LINHA 1:1 SHOPIFY (REFERÊNCIA PRINT t33)
   ========================================================================== */

.jesca-sfilters-bar {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
  max-width: var(--normal-container-max-width, 1280px) !important;
  margin: 0 auto 20px auto !important;
  padding: 8px 20px 14px 20px !important;
  box-sizing: border-box !important;
  font-family: var(--jesca-font-sans, "Instrument Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif) !important;
  border-bottom: 1px solid #ebebeb !important;
}

.jesca-sfilters-left {
  display: flex !important;
  align-items: center !important;
  gap: 28px !important;
}

.jesca-sfilters-right {
  display: flex !important;
  align-items: center !important;
  gap: 24px !important;
}

.jesca-sfilter-dropdown {
  position: relative !important;
}

.jesca-sfilter-btn {
  background: none !important;
  border: none !important;
  padding: 6px 0 !important;
  font-family: var(--jesca-font-sans, "Instrument Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif) !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  color: #222222 !important;
  cursor: pointer !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  transition: color 0.15s ease !important;
}

.jesca-sfilter-btn:hover {
  color: #000000 !important;
}

.jesca-sfilter-btn svg {
  transition: transform 0.2s ease !important;
}

.jesca-sfilter-dropdown.is-open .jesca-sfilter-btn svg {
  transform: rotate(180deg) !important;
}

.jesca-sfilter-popover {
  display: none;
  position: absolute;
  top: calc(100% + 8px);
  left: 0;
  background: #ffffff;
  border: 1px solid #e5e5e5;
  border-radius: 8px;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
  padding: 14px 16px;
  min-width: 210px;
  z-index: 1000;
  box-sizing: border-box;
}

.jesca-sfilter-popover-right {
  left: auto !important;
  right: 0 !important;
}

.jesca-sfilter-dropdown.is-open .jesca-sfilter-popover {
  display: block !important;
  animation: fadeIn 0.15s ease-out;
}

.jesca-sfilter-list {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 4px !important;
  max-height: 260px !important;
  overflow-y: auto !important;
}

.jesca-sfilter-list li {
  padding: 0 !important;
  margin: 0 !important;
}

.jesca-sfilter-list a {
  display: block !important;
  padding: 6px 8px !important;
  font-size: 13.5px !important;
  color: #444444 !important;
  text-decoration: none !important;
  border-radius: 4px !important;
  transition: background 0.15s, color 0.15s !important;
}

.jesca-sfilter-list a:hover {
  background: #f5f5f5 !important;
  color: #000000 !important;
}

.jesca-sfilter-list a.is-active {
  font-weight: 700 !important;
  color: #01012b !important;
  background: #f0f2f8 !important;
}

/* Subcategoria dropdown refinado (Etapa 8c) */
.jesca-sfilter-popover-subcat {
  min-width: 290px !important;
  max-width: 420px !important;
  width: max-content !important;
  max-height: 60vh !important;
  padding: 10px 8px !important;
  border-radius: 10px !important;
  box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.1) !important;
}

.jesca-sfilter-subcat-list {
  max-height: calc(60vh - 24px) !important;
  overflow-y: auto !important;
  scroll-behavior: smooth !important;
  scrollbar-width: thin !important;
  scrollbar-color: #cbd5e1 transparent !important;
  -webkit-overflow-scrolling: touch !important;
  padding-right: 4px !important;
}

.jesca-sfilter-subcat-list::-webkit-scrollbar {
  width: 6px;
}
.jesca-sfilter-subcat-list::-webkit-scrollbar-track {
  background: transparent;
}
.jesca-sfilter-subcat-list::-webkit-scrollbar-thumb {
  background: #cbd5e1;
  border-radius: 4px;
}
.jesca-sfilter-subcat-list::-webkit-scrollbar-thumb:hover {
  background: #94a3b8;
}

.jesca-sfilter-subcat-list li {
  width: 100% !important;
}

.jesca-sfilter-subcat-list a {
  white-space: nowrap !important;
  font-size: 13.5px !important;
  padding: 8px 12px !important;
  border-radius: 6px !important;
  color: #334155 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
}

.jesca-sfilter-subcat-list a:hover {
  background: #f1f5f9 !important;
  color: #0f172a !important;
}

.jesca-sfilter-subcat-list a.is-active {
  background: #01012b !important;
  color: #ffffff !important;
  font-weight: 600 !important;
}

.jesca-sfilter-options {
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
}

.jesca-sfilter-check-row,
.jesca-sfilter-radio-row {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  font-size: 13.5px !important;
  color: #222222 !important;
  cursor: pointer !important;
  padding: 3px 0 !important;
}

.jesca-sfilter-count-label {
  font-size: 13.5px !important;
  color: #666666 !important;
  font-weight: 500 !important;
}

.jesca-sfilter-sort-list {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 2px !important;
  min-width: 190px !important;
}

.jesca-sfilter-sort-list button {
  width: 100% !important;
  text-align: left !important;
  background: none !important;
  border: none !important;
  padding: 7px 10px !important;
  font-size: 13.5px !important;
  color: #444444 !important;
  border-radius: 4px !important;
  cursor: pointer !important;
  transition: background 0.15s, color 0.15s !important;
}

.jesca-sfilter-sort-list button:hover {
  background: #f5f5f5 !important;
  color: #000000 !important;
}

.jesca-sfilter-sort-list button.is-active {
  font-weight: 700 !important;
  color: #01012b !important;
  background: #f0f2f8 !important;
}

/* Popover de Características */
.jesca-sfilter-popover-wide {
  min-width: 250px !important;
  max-width: 320px !important;
  max-height: 380px !important;
  overflow-y: auto !important;
}

.jesca-sfilter-char-group {
  margin-bottom: 12px;
  padding-bottom: 10px;
  border-bottom: 1px solid #f0f0f0;
}

.jesca-sfilter-char-group:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: none;
}

.jesca-sfilter-char-heading {
  font-size: 11px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  color: #888888 !important;
  margin-bottom: 6px !important;
  display: block !important;
}

.jesca-sfilter-char-options {
  display: flex !important;
  flex-direction: column !important;
  gap: 6px !important;
}

.jesca-sfilter-char-row {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  font-size: 13.5px !important;
  color: #222222 !important;
  cursor: pointer !important;
  padding: 2px 0 !important;
  user-select: none !important;
}

.jesca-sfilter-char-row input[type="checkbox"] {
  accent-color: #01012b;
  cursor: pointer;
}

.jesca-sfilter-char-count {
  color: #888888;
  font-size: 12px;
  margin-left: 2px;
}

/* Etiquetas Pequenas Removíveis (Chips) */
.jesca-sfilter-chips-wrap {
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  max-width: var(--normal-container-max-width, 1280px) !important;
  margin: -10px auto 16px auto !important;
  padding: 0 20px !important;
  box-sizing: border-box !important;
}

.jesca-sfilter-chip {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  background: #f4f4f4 !important;
  color: #222222 !important;
  border: 1px solid #e0e0e0 !important;
  border-radius: 20px !important;
  padding: 4px 12px !important;
  font-size: 12px !important;
  font-weight: 500 !important;
}

.jesca-sfilter-chip button {
  background: none !important;
  border: none !important;
  padding: 0 !important;
  cursor: pointer !important;
  color: #666666 !important;
  font-size: 13px !important;
  line-height: 1 !important;
}

.jesca-sfilter-chip button:hover {
  color: #000000 !important;
}

.jesca-sfilter-clear-all {
  background: none !important;
  border: none !important;
  color: #333333 !important;
  font-size: 12.5px !important;
  font-weight: 600 !important;
  text-decoration: underline !important;
  cursor: pointer !important;
  padding: 4px 6px !important;
}

/* Celular (< 768px): Filtrar ⌄ · Classificar ⌄ */
.jesca-sfilters-mobile-bar {
  display: none !important;
}

@media (max-width: 768px) {
  .jesca-sfilters-left,
  .jesca-sfilters-right {
    display: none !important;
  }

  .jesca-sfilters-bar {
    padding: 0 !important;
    margin-bottom: 12px !important;
    border-bottom: none !important;
  }

  .jesca-sfilters-mobile-bar {
    display: flex !important;
    width: 100% !important;
    border-top: 1px solid #eeeeee !important;
    border-bottom: 1px solid #eeeeee !important;
    padding: 2px 0 !important;
    box-sizing: border-box !important;
  }

  .jesca-smobile-trigger {
    flex: 1 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    background: none !important;
    border: none !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #111111 !important;
    padding: 10px 0 !important;
    cursor: pointer !important;
  }

  .jesca-smobile-trigger:first-child {
    border-right: 1px solid #eeeeee !important;
  }
}

/* Gaveta Mobile de Filtros (Bottom-Sheet) */
.jesca-sdrawer-overlay {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  background: rgba(0, 0, 0, 0.5) !important;
  z-index: 100000 !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transition: opacity 0.25s ease, visibility 0.25s ease !important;
}

.jesca-sdrawer-overlay.is-open {
  opacity: 1 !important;
  visibility: visible !important;
}

.jesca-sdrawer-sheet {
  position: fixed !important;
  bottom: 0 !important;
  left: 0 !important;
  right: 0 !important;
  max-height: 82vh !important;
  background: #ffffff !important;
  border-radius: 16px 16px 0 0 !important;
  z-index: 100001 !important;
  transform: translateY(100%) !important;
  transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
  display: flex !important;
  flex-direction: column !important;
  overflow: hidden !important;
  box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.15) !important;
}

.jesca-sdrawer-overlay.is-open .jesca-sdrawer-sheet {
  transform: translateY(0) !important;
}

.jesca-sdrawer-header {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding: 16px 20px !important;
  border-bottom: 1px solid #eeeeee !important;
}

.jesca-sdrawer-header h3 {
  font-size: 16px !important;
  font-weight: 700 !important;
  color: #111111 !important;
  margin: 0 !important;
}

.jesca-sdrawer-close {
  background: none !important;
  border: none !important;
  font-size: 18px !important;
  cursor: pointer !important;
  color: #666666 !important;
  padding: 4px !important;
}

.jesca-sdrawer-body {
  padding: 16px 20px !important;
  overflow-y: auto !important;
  flex: 1 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 20px !important;
}

.jesca-sdrawer-section h4 {
  font-size: 13px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  color: #333333 !important;
  margin: 0 0 10px 0 !important;
  letter-spacing: 0.5px !important;
}

.jesca-sdrawer-subcat-links {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
}

.jesca-sdrawer-subcat-links a {
  display: inline-block !important;
  padding: 6px 14px !important;
  border-radius: 20px !important;
  background: #f5f5f5 !important;
  color: #333333 !important;
  font-size: 12.5px !important;
  text-decoration: none !important;
  border: 1px solid #e5e5e5 !important;
}

.jesca-sdrawer-subcat-links a.is-active {
  background: #01012b !important;
  color: #ffffff !important;
  border-color: #01012b !important;
}

.jesca-sdrawer-footer {
  padding: 14px 20px !important;
  border-top: 1px solid #eeeeee !important;
  display: flex !important;
  gap: 10px !important;
  background: #ffffff !important;
}

.jesca-sdrawer-btn-apply {
  flex: 1 !important;
  background: #01012b !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 8px !important;
  padding: 12px !important;
  font-weight: 700 !important;
  font-size: 14px !important;
  cursor: pointer !important;
}

.jesca-sdrawer-btn-clear {
  background: #f5f5f5 !important;
  color: #333333 !important;
  border: 1px solid #dddddd !important;
  border-radius: 8px !important;
  padding: 12px 18px !important;
  font-weight: 600 !important;
  font-size: 13px !important;
  cursor: pointer !important;
}


/* ==========================================================================
   25. ETAPA 4P: CABEÇALHO, CARROSSÉIS, OFERTAS, GAVETA E RODAPÉ 1:1 TRAY
   ========================================================================== */

/* Defaults para Desktop */
#jesca-mob-header,
#jesca-mob-search-dropdown,
#jesca-mob-drawer-backdrop,
#jesca-mob-drawer {
  display: none !important;
}

.jesca-btn-whatsapp-text-mobile,
.jesca-btn-wpp-mobile {
  display: none !important;
}

.jesca-btn-wpp-desktop {
  display: inline !important;
}

/* Vitrine Titles (Padrão Tray: Sans-Serif Bold com Tracinho Preto) */
.jesca-vitrine-header {
  text-align: center;
  margin: 36px 0 20px 0;
}

.jesca-vitrine-title {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
  font-size: 22px !important;
  font-weight: 700 !important;
  color: #111111 !important;
  margin: 0 !important;
  text-transform: none !important;
  letter-spacing: -0.3px !important;
}

.jesca-vitrine-line {
  width: 32px;
  height: 3px;
  background-color: #000000;
  margin: 8px auto 0 auto;
  border-radius: 2px;
}

/* Rodapé: Selo ROAS 360 e Linha Escura 1:1 Shimizu */
.jesca-roas-pill {
  display: inline-flex !important;
  align-items: center !important;
  background-color: #1a1a1a !important;
  padding: 5px 12px !important;
  border-radius: 4px !important;
  text-decoration: none !important;
  transition: opacity 0.2s ease !important;
}

.jesca-roas-pill:hover {
  opacity: 0.85 !important;
}

.jesca-footer-copyright-row {
  background-color: #1a1a1a !important;
  color: #aaaaaa !important;
  border-top: 1px solid #282828 !important;
}

.jesca-footer-cnpj {
  color: #888888 !important;
}

.jesca-footer-partner-credits {
  color: #aaaaaa !important;
}

.jesca-roas-credit-link {
  display: inline-flex !important;
  align-items: center !important;
  transition: opacity 0.2s ease !important;
}

.jesca-roas-credit-link:hover {
  opacity: 0.85 !important;
}

/* ==========================================================================
   REGRAS ESPECÍFICAS MOBILE (< 1024px e < 768px)
   ========================================================================== */

@media (max-width: 1024px) {
  /* Esconder o cabeçalho Blocksy no mobile */
  header#header.ct-header {
    display: none !important;
  }

  /* Padding superior no body para acomodar a barra fixa de 54px */
  body {
    padding-top: 54px !important;
  }

  /* Cabeçalho Fixo 1:1 Tray (t27) */
  #jesca-mob-header {
    display: flex !important;
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: 54px !important;
    background-color: #ffffff !important;
    border-bottom: 1px solid #eeeeee !important;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.06) !important;
    z-index: 99999 !important;
    padding: 0 16px !important;
    align-items: center !important;
    justify-content: space-between !important;
    box-sizing: border-box !important;
  }

  .jesca-mob-icon-btn {
    background: none !important;
    border: none !important;
    padding: 6px !important;
    cursor: pointer !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #111111 !important;
    text-decoration: none !important;
    position: relative !important;
  }

  .jesca-mob-logo {
    display: flex !important;
    align-items: center !important;
    text-decoration: none !important;
  }

  .jesca-mob-logo img {
    height: 32px !important;
    width: auto !important;
    max-width: 140px !important;
    display: block !important;
  }

  .jesca-mob-right-actions {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
  }

  .jesca-mob-cart-badge {
    position: absolute !important;
    top: 0 !important;
    right: -2px !important;
    background-color: #000000 !important;
    color: #ffffff !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    width: 16px !important;
    height: 16px !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  /* Barra de Busca Expansível (Etapa 9o) */
  #jesca-mob-search-dropdown {
    display: none !important;
    position: fixed !important;
    top: 82px !important;
    left: 0 !important;
    right: 0 !important;
    background: #ffffff !important;
    padding: 12px 16px !important;
    border-bottom: 1px solid #eeeeee !important;
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.12) !important;
    z-index: 999999 !important;
    box-sizing: border-box !important;
  }

  #jesca-mob-search-dropdown.is-open {
    display: block !important;
  }

  #jesca-mob-search-dropdown form {
    display: flex !important;
    position: relative !important;
    margin: 0 !important;
  }

  #jesca-mob-search-dropdown input[type="search"] {
    width: 100% !important;
    height: 40px !important;
    padding: 0 42px 0 14px !important;
    border: 1px solid #dddddd !important;
    border-radius: 20px !important;
    font-size: 14px !important;
    outline: none !important;
  }

  #jesca-mob-search-dropdown button {
    position: absolute !important;
    right: 6px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    background: none !important;
    border: none !important;
    color: #666666 !important;
    cursor: pointer !important;
    padding: 6px !important;
  }

  /* Backdrop e Drawer Lateral 1:1 Tray (t30) */
  #jesca-mob-drawer-backdrop {
    display: block !important;
    position: fixed !important;
    inset: 0 !important;
    background: rgba(0, 0, 0, 0.6) !important;
    z-index: 100000 !important;
    opacity: 0 !important;
    visibility: hidden !important;
    transition: opacity 0.3s ease, visibility 0.3s ease !important;
  }

  #jesca-mob-drawer-backdrop.is-open {
    opacity: 1 !important;
    visibility: visible !important;
  }

  #jesca-mob-drawer {
    display: flex !important;
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    bottom: 0 !important;
    width: 82% !important;
    max-width: 320px !important;
    background: #ffffff !important;
    z-index: 100001 !important;
    transform: translateX(-100%) !important;
    transition: transform 0.3s cubic-bezier(0.25, 0.8, 0.25, 1) !important;
    flex-direction: column !important;
    box-shadow: 4px 0 20px rgba(0, 0, 0, 0.25) !important;
  }

  #jesca-mob-drawer.is-open {
    transform: translateX(0) !important;
  }

  .jesca-mob-drawer-header {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 16px 20px !important;
    border-bottom: 1px solid #f0f0f0 !important;
    background: #ffffff !important;
  }

  .jesca-mob-drawer-heading {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #111111 !important;
  }

  .jesca-mob-drawer-close {
    background: none !important;
    border: none !important;
    font-size: 20px !important;
    color: #666666 !important;
    cursor: pointer !important;
    padding: 4px !important;
    line-height: 1 !important;
  }

  .jesca-mob-drawer-content {
    flex: 1 !important;
    overflow-y: auto !important;
    padding: 10px 0 !important;
  }

  .jesca-mob-cat-menu {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .jesca-mob-cat-menu li {
    border-bottom: 1px solid #f5f5f5 !important;
    margin: 0 !important;
  }

  .jesca-cat-row {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 12px 20px !important;
  }

  .jesca-cat-row a {
    color: #333333 !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    text-decoration: none !important;
    flex: 1 !important;
  }

  .jesca-toggle-sub {
    background: none !important;
    border: none !important;
    padding: 6px 8px !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  .jesca-toggle-sub .chevron {
    transition: transform 0.25s ease !important;
  }

  .has-submenu.is-open .jesca-toggle-sub .chevron {
    transform: rotate(180deg) !important;
  }

  .jesca-sub-menu {
    display: none !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 4px 0 8px 32px !important;
    background: #fafafa !important;
  }

  .has-submenu.is-open .jesca-sub-menu {
    display: block !important;
  }

  .jesca-sub-menu li {
    border: none !important;
    padding: 6px 0 !important;
  }

  .jesca-sub-menu a {
    color: #666666 !important;
    font-size: 13px !important;
    text-decoration: none !important;
  }

  .jesca-drawer-deals-row {
    padding: 16px 20px !important;
  }

  .jesca-drawer-deals-btn {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    background: #000000 !important;
    color: #ffffff !important;
    text-decoration: none !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    padding: 10px 16px !important;
    border-radius: 50px !important;
  }

  .jesca-drawer-deals-btn .pct-badge {
    background: rgba(255, 255, 255, 0.2) !important;
    width: 20px !important;
    height: 20px !important;
    border-radius: 50% !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 11px !important;
  }

  /* Rodapé Preto da Gaveta */
  .jesca-mob-drawer-footer {
    background: #111111 !important;
    color: #ffffff !important;
    padding: 18px 20px 22px 20px !important;
    font-size: 13px !important;
  }

  .jesca-drawer-account-link {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    color: #ffffff !important;
    text-decoration: none !important;
    margin-bottom: 14px !important;
  }

  .jesca-drawer-account-link .account-texts strong {
    display: block !important;
    font-size: 13px !important;
    color: #ffffff !important;
  }

  .jesca-drawer-account-link .account-texts span {
    font-size: 11px !important;
    color: #aaaaaa !important;
  }

  .jesca-drawer-email-row {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    color: #cccccc !important;
    font-size: 12px !important;
    border-top: 1px solid #222222 !important;
    padding-top: 12px !important;
    margin-bottom: 14px !important;
  }

  .jesca-drawer-tracking-row {
    border-top: 1px solid #222222 !important;
    padding-top: 12px !important;
  }

  .jesca-drawer-tracking-row .tracking-label {
    font-size: 12px !important;
    font-weight: 600 !important;
    color: #ffffff !important;
    margin-bottom: 8px !important;
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
  }

  .jesca-drawer-tracking-row .tracking-form {
    display: flex !important;
    position: relative !important;
    margin: 0 !important;
  }

  .jesca-drawer-tracking-row input {
    width: 100% !important;
    height: 38px !important;
    background: #ffffff !important;
    color: #111111 !important;
    border: none !important;
    border-radius: 4px !important;
    padding: 0 38px 0 10px !important;
    font-size: 12px !important;
    outline: none !important;
  }

  .jesca-drawer-tracking-row button {
    position: absolute !important;
    right: 0 !important;
    top: 0 !important;
    height: 38px !important;
    width: 38px !important;
    background: none !important;
    border: none !important;
    color: #555555 !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }
}

/* ==========================================================================
   CARROSSÉIS NO CELULAR, OFERTAS E SANFONA DO RODAPÉ (< 768px)
   ========================================================================== */

@media (max-width: 768px) {
  /* Seção "Confira nossas ofertas" Sangrando até a borda (1:1 Tray t29) */
  .jesca-ofertas-section {
    background-color: #01012b !important;
    color: #ffffff !important;
    padding: 36px 12px 44px 12px !important;
    margin: 24px calc(-50vw + 50%) !important;
    width: 100vw !important;
    max-width: 100vw !important;
    border-radius: 0 !important;
    box-sizing: border-box !important;
  }

  .jesca-ofertas-section h2 {
    color: #ffffff !important;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
    font-weight: 700 !important;
    font-size: 22px !important;
    text-align: center !important;
    margin: 0 0 6px 0 !important;
    text-transform: none !important;
  }

  .jesca-ofertas-section p {
    color: rgba(255, 255, 255, 0.85) !important;
    text-align: center !important;
    font-size: 13px !important;
    margin: 0 0 20px 0 !important;
  }

  /* 2 Cards Inteiros no Carrossel Mobile (t27) */
  .jesca-product-carousel-track {
    gap: 10px !important;
    padding: 8px 10px 16px 10px !important;
    scroll-padding: 10px !important;
  }

  .jesca-product-carousel-track > li.product {
    flex: 0 0 calc((100% - 10px) / 2) !important;
    min-width: calc((100% - 10px) / 2) !important;
    max-width: calc((100% - 10px) / 2) !important;
    box-sizing: border-box !important;
    margin: 0 !important;
  }

  /* Setas Sutis no Carrossel Mobile (Círculo Branco com Sombra Leve - t27) */
  .jesca-carousel-nav {
    display: flex !important;
    width: 32px !important;
    height: 32px !important;
    background-color: #ffffff !important;
    color: #111111 !important;
    border: 1px solid rgba(0, 0, 0, 0.08) !important;
    border-radius: 50% !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15) !important;
    top: 40% !important;
    transform: translateY(-50%) !important;
    z-index: 10 !important;
  }

  .jesca-nav-prev {
    left: 4px !important;
  }

  .jesca-nav-next {
    right: 4px !important;
  }

  .jesca-carousel-nav svg {
    width: 18px !important;
    height: 18px !important;
  }

  /* Botão "Comprar pelo Whats" no Mobile (1 Linha, Menor - t27) */
  .jesca-btn-whatsapp-loop {
    font-size: 11px !important;
    padding: 6px 4px !important;
    white-space: nowrap !important;
  }

  .jesca-btn-wpp-desktop,
  .jesca-btn-whatsapp-text-desktop {
    display: none !important;
  }

  .jesca-btn-wpp-mobile,
  .jesca-btn-whatsapp-text-mobile {
    display: inline !important;
  }

  /* Sanfona do Rodapé no Celular (Categorias, Institucional, Atendimento - t28) */
  .jesca-footer-grid {
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
  }

  .jesca-footer-acc-col {
    border-bottom: 1px solid #eeeeee !important;
    padding: 0 !important;
  }

  .jesca-footer-acc-header {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 14px 0 !important;
    cursor: pointer !important;
  }

  .jesca-footer-acc-header h4 {
    margin: 0 !important;
    font-size: 15px !important;
    color: #222222 !important;
  }

  .jesca-acc-arrow {
    display: block !important;
    transition: transform 0.25s ease !important;
  }

  .jesca-footer-acc-col.is-open .jesca-acc-arrow {
    transform: rotate(180deg) !important;
  }

  .jesca-footer-acc-content {
    display: none !important;
    padding-bottom: 14px !important;
  }

  .jesca-footer-acc-col.is-open .jesca-footer-acc-content {
    display: block !important;
  }

  .jesca-footer-payments-icons {
    display: flex !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    gap: 6px !important;
    padding: 6px 0 14px 0 !important;
  }

  .jesca-footer-payments-icons img {
    height: 24px !important;
    width: auto !important;
  }
}

/* ==========================================================================
   ETAPA 5c — AJUSTES VISUAIS OFICIAIS (LUCAS, 24/10)
   ========================================================================== */

/* 1. Página de Produto: Preço único e limpo (Item 1) */
.single-product .entry-summary > p.price,
.single-product div.product > p.price,
.single-product .entry-summary .summary > p.price {
  display: none !important;
}
.single-product .jesca-pix-box {
  margin: 12px 0 16px 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 2px !important;
}
.single-product .jesca-pix-box .jesca-pix-main {
  font-size: 28px !important;
  font-weight: 800 !important;
  color: #01012b !important;
  display: flex !important;
  align-items: baseline !important;
  gap: 6px !important;
  line-height: 1.1 !important;
}
.single-product .jesca-pix-box .jesca-pix-label {
  font-size: 16px !important;
  font-weight: 700 !important;
  color: #25D366 !important;
}
.single-product .jesca-pix-box .jesca-card-line {
  display: flex !important;
  flex-direction: column !important;
  gap: 2px !important;
  margin-top: 3px !important;
}
.single-product .jesca-pix-box .jesca-price-regular {
  font-size: 15px !important;
  font-weight: 400 !important;
  color: #4b5563 !important;
  text-decoration: none !important;
  line-height: 1.2 !important;
}
.single-product .jesca-pix-box .jesca-pix-installments,
.single-product .jesca-pix-box .jesca-card-installments {
  font-size: 13px !important;
  color: #6b7280 !important;
  line-height: 1.2 !important;
}

/* Swatches de Alças (Opção C): Quadrados com Cor Sólida Dominante */
.jesca-is-alca-swatch,
.jesca-is-alca-swatch .variable-item-span,
.variable-item-span.jesca-swatch-solid-alca,
.product_cat-alcas .woo-variation-swatches .variable-items-wrapper .variable-item,
.product_cat-alcas .woo-variation-swatches .variable-items-wrapper .variable-item .variable-item-span,
.product_cat-alcas-e-puxadores .woo-variation-swatches .variable-items-wrapper .variable-item,
.product_cat-alcas-e-puxadores .woo-variation-swatches .variable-items-wrapper .variable-item .variable-item-span {
  border-radius: 4px !important;
}

/* 2. Botão "Comprar pelo WhatsApp" perfeitamente alinhado (Item 2) */
.single-product .entry-summary .jesca-btn-whatsapp,
.single-product .jesca-btn-whatsapp,
.jesca-btn-whatsapp {
  display: inline-flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  width: 100% !important;
  height: 44px !important;
  box-sizing: border-box !important;
}
.jesca-btn-whatsapp svg {
  flex-shrink: 0 !important;
  margin: 0 !important;
  display: inline-block !important;
  vertical-align: middle !important;
}
.jesca-btn-whatsapp span {
  display: inline-block !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}

/* 3. Frete mais organizado e com destaque (Item 3) */
.single-product #woocommerce-correios-calculo-de-frete-na-pagina-do-produto,
.single-product .containerCalculator,
.single-product .melhor-envio-shipping-calculator {
  background: #ffffff !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 8px !important;
  padding: 16px !important;
  margin: 16px 0 !important;
  box-sizing: border-box !important;
}
.single-product .containerCalculator .calculatorRow {
  margin: 0 !important;
  padding: 0 !important;
}
.single-product .containerCalculator p {
  font-family: var(--jesca-font-maven) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #111111 !important;
  margin-bottom: 10px !important;
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
}
.single-product .containerCalculator .row {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  flex-wrap: nowrap !important;
}
.single-product .containerCalculator .col-75 {
  width: 100% !important;
}
.single-product .containerCalculator input#inputCep,
.single-product input#melhor_envio_cep {
  flex: 1 !important;
  height: 42px !important;
  border: 1.5px solid #d1d5db !important;
  border-radius: 6px !important;
  padding: 0 12px !important;
  font-size: 14px !important;
  color: #333333 !important;
  box-sizing: border-box !important;
}
.single-product .containerCalculator input#inputCep:focus,
.single-product input#melhor_envio_cep:focus {
  border-color: #01012b !important;
  outline: none !important;
}
.single-product .containerCalculator input#calcular-frete,
.single-product button#melhor_envio_calcular {
  height: 42px !important;
  background: #01012b !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 6px !important;
  padding: 0 20px !important;
  font-family: var(--jesca-font-maven) !important;
  font-weight: 700 !important;
  font-size: 13px !important;
  cursor: pointer !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  transition: all 0.2s ease !important;
  flex-shrink: 0 !important;
}
.single-product .containerCalculator input#calcular-frete:hover,
.single-product button#melhor_envio_calcular:hover {
  background: #1a1a4b !important;
}
.jesca-link-nao-sei-cep {
  display: inline-block !important;
  margin-top: 6px !important;
  font-size: 12px !important;
  color: #64748b !important;
  text-decoration: underline !important;
  cursor: pointer !important;
}
.jesca-link-nao-sei-cep:hover {
  color: #01012b !important;
}

/* Tabela de cotações com destaque */
.single-product .resultado-frete.tableResult table {
  width: 100% !important;
  border-collapse: separate !important;
  border-spacing: 0 6px !important;
  margin-top: 12px !important;
}
.single-product .resultado-frete table tbody tr,
.jesca-shipping-card-row {
  background: #ffffff !important;
  border-radius: 8px !important;
  border: 1.5px solid #e2e8f0 !important;
  display: flex !important;
  align-items: center !important;
  padding: 10px 14px !important;
  transition: all 0.15s ease !important;
  box-sizing: border-box !important;
  margin-bottom: 8px !important;
  width: 100% !important;
}

.single-product .resultado-frete table tbody tr:hover,
.jesca-shipping-card-row:hover {
  border-color: #01012b !important;
  background: #f8fafc !important;
}

.single-product .resultado-frete table tbody tr td,
.jesca-shipping-card-row td {
  padding: 0 !important;
  border: none !important;
  width: 100% !important;
  display: block !important;
}

.jesca-shipping-card-content {
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  gap: 3px !important;
}

.jesca-shipping-line1 {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
  gap: 8px !important;
}

.jesca-shipping-carrier {
  font-family: var(--jesca-font-maven, sans-serif) !important;
  font-weight: 600 !important;
  font-size: 13.5px !important;
  color: #1e293b !important;
  line-height: 1.3 !important;
  text-align: left !important;
}

.jesca-shipping-price {
  font-family: var(--jesca-font-maven, sans-serif) !important;
  font-weight: 700 !important;
  font-size: 14px !important;
  color: #0f172a !important;
  white-space: nowrap !important;
  margin-left: auto !important;
  flex-shrink: 0 !important;
  line-height: 1.3 !important;
}

.jesca-shipping-line2 {
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
  font-size: 12px !important;
  color: #64748b !important;
  line-height: 1.3 !important;
  flex-wrap: wrap !important;
}

.jesca-shipping-time {
  font-size: 12px !important;
  color: #64748b !important;
}

.jesca-shipping-dot {
  font-size: 12px !important;
  color: #94a3b8 !important;
  font-weight: 700 !important;
}

.jesca-shipping-badge {
  font-size: 10px !important;
  font-weight: 700 !important;
  padding: 2px 7px !important;
  border-radius: 4px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.3px !important;
  display: inline-block !important;
  line-height: 1.2 !important;
}

.jesca-shipping-badge.badge-eco {
  background: #dcfce7 !important;
  color: #15803d !important;
}

.jesca-shipping-badge.badge-fast {
  background: #e0e7ff !important;
  color: #3730a3 !important;
}
.single-product .jesca-shipping-free-notice {
  background: #f0fdf4 !important;
  border: 1px solid #bbf7d0 !important;
  border-radius: 6px !important;
  padding: 8px 12px !important;
  margin-top: 10px !important;
  color: #166534 !important;
  font-size: 12.5px !important;
}

/* 4. Galeria de fotos quadrada 1:1 e miniaturas (Item 4) */
.woocommerce-product-gallery {
  max-width: 520px !important;
  width: 100% !important;
  margin: 0 auto !important;
}
.woocommerce-product-gallery .ct-media-container,
.woocommerce-product-gallery figure,
.woocommerce-product-gallery__image {
  aspect-ratio: 1 / 1 !important;
  background: #ffffff !important;
  border-radius: 8px !important;
}
.woocommerce-product-gallery img,
.woocommerce-product-gallery .ct-media-container img,
.woocommerce-product-gallery__image img,
.woocommerce-product-gallery img.wp-post-image {
  aspect-ratio: 1 / 1 !important;
  object-fit: contain !important;
  width: 100% !important;
  height: auto !important;
  max-height: 520px !important;
  padding: 12px !important;
  box-sizing: border-box !important;
  border-radius: 8px !important;
  background: #ffffff !important;
}
.woocommerce-product-gallery ol.flex-control-thumbs,
.flex-control-nav.flex-control-thumbs {
  display: flex !important;
  gap: 10px !important;
  margin-top: 12px !important;
  padding: 0 !important;
  list-style: none !important;
  justify-content: flex-start !important;
  flex-wrap: wrap !important;
}
.flex-control-nav.flex-control-thumbs li {
  width: 68px !important;
  height: 68px !important;
  aspect-ratio: 1 / 1 !important;
  border-radius: 6px !important;
  overflow: hidden !important;
  border: 1.5px solid #e2e8f0 !important;
  cursor: pointer !important;
  box-sizing: border-box !important;
  transition: all 0.2s ease !important;
}
.flex-control-nav.flex-control-thumbs li:hover,
.flex-control-nav.flex-control-thumbs li.flex-active,
.flex-control-nav.flex-control-thumbs li img.flex-active {
  border-color: #01012b !important;
}
.flex-control-nav.flex-control-thumbs li img {
  width: 100% !important;
  height: 100% !important;
  aspect-ratio: 1 / 1 !important;
  object-fit: contain !important;
  padding: 2px !important;
  box-sizing: border-box !important;
}

/* 5. Espaço categoria reduzido (Item 5) */
.archive .woocommerce-breadcrumb,
.woocommerce-page .woocommerce-breadcrumb {
  margin-top: 16px !important;
  margin-bottom: 8px !important;
  padding: 0 !important;
}
.archive .woocommerce-products-header,
.archive .entry-header {
  margin: 0 !important;
  padding: 0 !important;
}
.archive .woocommerce-products-header .page-title,
.archive .entry-header .entry-title {
  margin: 0 0 16px 0 !important;
  padding: 0 !important;
  font-size: 28px !important;
  font-family: var(--jesca-font-serif) !important;
  color: #01012b !important;
}
.jesca-sfilters-bar {
  margin-top: 16px !important;
  margin-bottom: 24px !important;
}

/* 6. Botões Filtrar e Ordenar no celular 1:1 Tray (Item 6) */
@media (max-width: 991px) {
  .jesca-sfilters-mobile-bar {
    display: flex !important;
    gap: 10px !important;
    width: 100% !important;
  }
  .jesca-smobile-trigger {
    flex: 1 !important;
    height: 42px !important;
    border: 1px solid #d4d4d4 !important;
    border-radius: 6px !important;
    background: #ffffff !important;
    color: #333333 !important;
    font-family: var(--jesca-font-maven) !important;
    font-weight: 700 !important;
    font-size: 13.5px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
  }
  .jesca-smobile-trigger:hover,
  .jesca-smobile-trigger:active {
    border-color: #01012b !important;
    color: #01012b !important;
  }
  .jesca-sdrawer-subcat-links {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
  }
  .jesca-sdrawer-subcat-links a {
    display: inline-flex !important;
    align-items: center !important;
    padding: 6px 12px !important;
    background: #f1f5f9 !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 6px !important;
    font-size: 13px !important;
    font-family: var(--jesca-font-maven) !important;
    font-weight: 600 !important;
    color: #334155 !important;
    text-decoration: none !important;
  }
  .jesca-sdrawer-subcat-links a.is-active {
    background: #01012b !important;
    color: #ffffff !important;
    border-color: #01012b !important;
  }
}

/* 7. Faixa de benefícios de ponta a ponta sem borda/caixa (Item 7) */
.jesca-benefits-bar-shopify {
  width: 100vw !important;
  position: relative !important;
  left: 50% !important;
  right: 50% !important;
  margin-left: -50vw !important;
  margin-right: -50vw !important;
  background: #ffffff !important;
  border-top: 1px solid #f0f0f0 !important;
  border-bottom: 1px solid #f0f0f0 !important;
  padding: 24px 0 !important;
  box-sizing: border-box !important;
}
.jesca-benefits-container {
  max-width: 1260px !important;
  margin: 0 auto !important;
  padding: 0 20px !important;
}
@media (max-width: 768px) {
  .jesca-benefits-bar-shopify {
    padding: 16px 0 12px 0 !important;
    background: #ffffff !important;
    border: none !important;
  }
  .jesca-benefits-container {
    display: flex !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory !important;
    gap: 12px !important;
    padding: 0 16px !important;
    scrollbar-width: none !important;
  }
  .jesca-benefit-item {
    flex: 0 0 38% !important;
    max-width: 38% !important;
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    padding: 4px !important;
    box-shadow: none !important;
    scroll-snap-align: start !important;
  }
  .jesca-benefit-icon svg {
    width: 22px !important;
    height: 22px !important;
  }
  .jesca-benefit-info strong {
    font-size: 12px !important;
    font-family: var(--jesca-font-maven) !important;
  }
  .jesca-benefit-info span {
    font-size: 11px !important;
    font-family: var(--jesca-font-maven) !important;
  }
}

/* 8. Faixa de ofertas de ponta a ponta no desktop (Item 8) */
.jesca-ofertas-section {
  width: 100vw !important;
  position: relative !important;
  left: 50% !important;
  right: 50% !important;
  margin-left: -50vw !important;
  margin-right: -50vw !important;
  border-radius: 0 !important;
  background-color: #01012b !important;
  padding: 45px 0 55px 0 !important;
  box-sizing: border-box !important;
}
.jesca-ofertas-section h2 {
  font-family: var(--jesca-font-serif) !important;
  font-size: 2.2rem !important;
  color: #ffffff !important;
  text-align: center !important;
  margin-bottom: 6px !important;
}
.jesca-ofertas-section p {
  color: #a4b3d6 !important;
  text-align: center !important;
  font-size: 14px !important;
  font-family: var(--jesca-font-maven) !important;
  margin-bottom: 28px !important;
}
.jesca-ofertas-section .jesca-carousel-wrap {
  max-width: 1260px !important;
  margin: 0 auto !important;
  padding: 0 20px !important;
  box-sizing: border-box !important;
}

/* 9. Compra rápida sem quebrar no celular (Item 9) */
@media (max-width: 768px) {
  .jesca-loop-buy-row {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 6px !important;
    width: 100% !important;
    padding: 0 !important;
  }
  .jesca-loop-qty-wrap {
    width: 90px !important;
    height: 32px !important;
    margin: 0 auto !important;
    justify-content: space-around !important;
  }
  .jesca-loop-qty-btn {
    font-size: 15px !important;
    padding: 0 6px !important;
  }
  .woocommerce ul.products li.product a.button,
  .woocommerce ul.products li.product .button,
  .jesca-loop-buy-row a.button {
    width: calc(100% - 16px) !important;
    margin: 0 auto !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: none !important;
    height: 36px !important;
    line-height: 36px !important;
    font-size: 13px !important;
    padding: 0 8px !important;
    text-align: center !important;
    box-sizing: border-box !important;
    border-radius: var(--jesca-radius-pill, 9999px) !important;
  }
}

/* 11. Banner slider com picture e aspect-ratio natural da imagem mobile (Item 2 - Etapa 8m) */
@media (max-width: 768px) {
  .jesca-shopify-banner-slider {
    aspect-ratio: auto !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin-bottom: 0 !important;
  }
  .jesca-shopify-banner-slider .jesca-banner-track {
    position: relative !important;
    width: 100% !important;
    height: auto !important;
  }
  .jesca-shopify-banner-slider .jesca-banner-slide {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    display: none !important;
  }
  .jesca-shopify-banner-slider .jesca-banner-slide.active {
    position: relative !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    display: block !important;
  }
  .jesca-banner-slide picture {
    display: block !important;
    width: 100% !important;
    height: auto !important;
  }
  .jesca-banner-slide picture img,
  .jesca-banner-slide picture source {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: auto !important;
    object-fit: contain !important;
    display: block !important;
  }
}

/* 12. Faixa preta do topo no celular alternando (Item 12) */
.jesca-mobile-topbar {
  display: none;
}
@media (max-width: 991px) {
  .jesca-mobile-topbar {
    display: block !important;
    background: #000000 !important;
    color: #ffffff !important;
    text-align: center !important;
    padding: 6px 12px !important;
    font-family: var(--jesca-font-maven) !important;
    font-size: 11.5px !important;
    font-weight: 600 !important;
    letter-spacing: 0.3px !important;
    overflow: hidden !important;
    height: 28px !important;
    box-sizing: border-box !important;
  }
  .jesca-mobile-topbar-slider {
    position: relative !important;
    height: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }
  .jesca-topbar-msg {
    display: none !important;
    opacity: 0 !important;
    white-space: nowrap !important;
  }
  .jesca-topbar-msg.active {
    display: flex !important;
    opacity: 1 !important;
    animation: jescaTopFade 0.35s ease-out !important;
  }
}

/* 13. Rodapé fiel às medidas da Tray (Item 13 - t48, t49) */
.jesca-footer-col h4 {
  font-family: var(--jesca-font-maven) !important;
  font-size: 19px !important;
  font-weight: 700 !important;
  color: #1a1a1a !important;
  margin: 0 0 16px 0 !important;
  letter-spacing: -0.2px !important;
}
.jesca-footer-col ul {
  display: flex !important;
  flex-direction: column !important;
  gap: 4px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}
.jesca-footer-col ul li a {
  font-family: var(--jesca-font-maven) !important;
  font-size: 13.5px !important;
  font-weight: 400 !important;
  color: #333333 !important;
  line-height: 1.35 !important;
  transition: color 0.15s ease !important;
  display: inline-block !important;
  padding: 1px 0 !important;
}
.jesca-footer-col ul li a:hover {
  color: #01012b !important;
}
.jesca-footer-contact-item {
  font-family: var(--jesca-font-maven) !important;
  font-size: 13.92px !important;
  color: #333333 !important;
  line-height: 21px !important;
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
}
.jesca-footer-contact-item svg {
  color: #333333 !important;
  flex-shrink: 0 !important;
}
.jesca-footer-hours-divider {
  border-top: 1px solid #e0e0e0 !important;
  margin: 12px 0 10px 0 !important;
  width: 100% !important;
}
.jesca-footer-copyright-inner {
  text-align: center !important;
  justify-content: center !important;
  font-family: var(--jesca-font-maven) !important;
  font-size: 12px !important;
  color: #666666 !important;
}

/* 14. Menu Linha 2 espalhado por toda a largura com Maven Pro 16px 700 (Item 14 - t50) */
@media (min-width: 992px) {
  .jesca-hdr-nav-container {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    max-width: 1260px !important;
    margin: 0 auto !important;
    padding: 0 20px !important;
    box-sizing: border-box !important;
  }
  .jesca-hdr-main-nav {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    flex: 1 !important;
    margin-right: 28px !important;
    gap: 0 !important;
  }
  .jesca-nav-link {
    font-family: var(--jesca-font-maven) !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #333333 !important;
    transition: color 0.15s ease !important;
  }
  .jesca-nav-link:hover {
    color: #01012b !important;
  }
  .jesca-todas-cat-link {
    font-family: var(--jesca-font-maven) !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #333333 !important;
  }
  .jesca-hdr-ofertas-btn {
    font-family: var(--jesca-font-maven) !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    white-space: nowrap !important;
  }
}

/* ==========================================================================
   27. ETAPA 5D: CARRINHO ENXUTO E CHECKOUT EM ETAPAS (t45, t46, t47)
   ========================================================================== */

/* 1. Carrinho Compacto (Tray t45) */
body.woocommerce-cart .entry-header,
body.woocommerce-cart header.entry-header,
.woocommerce-cart .entry-header,
.woocommerce-cart header.entry-header {
  margin-top: 16px !important;
  margin-bottom: 12px !important;
  padding: 0 !important;
  text-align: left !important;
}

body.woocommerce-cart .entry-title,
body.woocommerce-cart h1,
body.woocommerce-cart .entry-header h1,
.woocommerce-cart .entry-title,
.woocommerce-cart h1.entry-title,
.woocommerce-cart h1,
.woocommerce-cart .page-title,
.woocommerce-cart h1.page-title {
  font-family: var(--jesca-font-maven, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif) !important;
  font-size: 24px !important;
  font-weight: 700 !important;
  color: #111827 !important;
  letter-spacing: -0.3px !important;
  margin: 0 0 8px 0 !important;
  text-transform: none !important;
}

.woocommerce-cart .woocommerce {
  margin-top: 8px !important;
}

/* Tabela do Carrinho */
.woocommerce-cart table.shop_table {
  border: 1px solid #e5e7eb !important;
  border-radius: 8px !important;
  overflow: hidden !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  margin-bottom: 24px !important;
}

.woocommerce-cart table.shop_table th {
  background: #f9fafb !important;
  color: #374151 !important;
  font-family: var(--jesca-font-maven, sans-serif) !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  padding: 12px 16px !important;
  border-bottom: 1px solid #e5e7eb !important;
}

.woocommerce-cart table.shop_table td {
  padding: 16px !important;
  border-bottom: 1px solid #f3f4f6 !important;
  vertical-align: middle !important;
}

.woocommerce-cart .product-name a {
  font-family: var(--jesca-font-maven, sans-serif) !important;
  font-weight: 600 !important;
  color: #111827 !important;
  text-decoration: none !important;
  font-size: 14.5px !important;
}

.woocommerce-cart .product-price,
.woocommerce-cart .product-subtotal {
  font-weight: 700 !important;
  color: #111827 !important;
  font-size: 15px !important;
}

/* 2. Frete no Carrinho e Totais (t46) */
.woocommerce-cart .cart_totals {
  background: #fdfdfd !important;
  border: 1px solid #e5e7eb !important;
  border-radius: 8px !important;
  padding: 20px !important;
}

.woocommerce-cart .cart_totals h2 {
  font-family: var(--jesca-font-maven, sans-serif) !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  color: #111827 !important;
  margin-top: 0 !important;
  margin-bottom: 16px !important;
  border-bottom: 1px solid #eeeeee !important;
  padding-bottom: 10px !important;
}

/* Lista de Métodos de Frete (Carrinho e Checkout) - Etapa 8k */
ul#shipping_method,
.shipping-method__options {
  list-style: none !important;
  padding: 0 !important;
  margin: 10px 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
  width: 100% !important;
}

ul#shipping_method li,
li.shipping-method__option {
  display: flex !important;
  align-items: center !important;
  padding: 10px 14px !important;
  border: 1.5px solid #e2e8f0 !important;
  border-radius: 8px !important;
  background: #ffffff !important;
  transition: all 0.15s ease !important;
  cursor: pointer !important;
  margin-bottom: 8px !important;
  box-sizing: border-box !important;
  width: 100% !important;
  position: relative !important;
}

ul#shipping_method li:hover,
li.shipping-method__option:hover {
  border-color: #01012b !important;
  background: #f8fafc !important;
}

ul#shipping_method li:has(input[type="radio"]:checked),
li.shipping-method__option:has(input[type="radio"]:checked),
li.shipping-method__option.is-selected {
  border-color: #01012b !important;
  background: #f8fafc !important;
  box-shadow: 0 0 0 1px #01012b !important;
}

ul#shipping_method li input[type="radio"],
li.shipping-method__option input[type="radio"] {
  margin: 0 12px 0 0 !important;
  accent-color: #01012b !important;
  cursor: pointer !important;
  flex-shrink: 0 !important;
  width: 16px !important;
  height: 16px !important;
}

ul#shipping_method li label,
li.shipping-method__option label,
.jesca-shipping-card-label {
  display: flex !important;
  align-items: center !important;
  width: 100% !important;
  margin: 0 !important;
  cursor: pointer !important;
}

.shipping-method__option-label-wrapper {
  width: 100% !important;
}

/* Botão Concluir no Carrinho */
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
  background: #2563eb !important;
  color: #ffffff !important;
  font-family: var(--jesca-font-maven, sans-serif) !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  padding: 14px 24px !important;
  border-radius: 6px !important;
  text-align: center !important;
  transition: background 0.15s ease !important;
}

.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover {
  background: #1d4ed8 !important;
}

/* 3. Fluid Checkout Customizações (Etapas t47) */
.fc-checkout-steps {
  margin-bottom: 24px !important;
}

.fc-step__header {
  font-family: var(--jesca-font-maven, sans-serif) !important;
}

.fc-step__title {
  font-size: 18px !important;
  font-weight: 700 !important;
  color: #111827 !important;
}

.fc-btn--next-step,
.fc-btn--primary,
#place_order {
  background: #2563eb !important;
  border-color: #2563eb !important;
  color: #ffffff !important;
  font-family: var(--jesca-font-maven, sans-serif) !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  border-radius: 6px !important;
  padding: 14px 28px !important;
  min-height: 48px !important;
  box-shadow: 0 1px 3px rgba(37, 99, 235, 0.2) !important;
  transition: all 0.15s ease !important;
}

.fc-btn--next-step:hover,
.fc-btn--primary:hover,
#place_order:hover {
  background: #1d4ed8 !important;
  border-color: #1d4ed8 !important;
}

/* Destaque Pix no Checkout */
.payment_method_vindi_pix label,
.payment_method_bacs label {
  font-weight: 700 !important;
  color: #047857 !important;
}

.payment_method_vindi_pix label::after {
  content: " (5% OFF)" !important;
  display: inline-block !important;
  background: #dcfce7 !important;
  color: #15803d !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  padding: 2px 6px !important;
  border-radius: 4px !important;
  margin-left: 6px !important;
}





/* 4. Correção Global de Transbordamento Mobile (Etapa 5e - Responsividade 390px) */
html, body {
  max-width: 100% !important;
  overflow-x: hidden !important;
}

.single-product form.cart {
  flex-wrap: wrap !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

.single-product form.cart .quantity {
  margin-right: 10px !important;
}

.single-product form.cart .single_add_to_cart_button {
  flex-grow: 1 !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

.single-product .containerCalculator,
.single-product #woocommerce-correios-calculo-de-frete-na-pagina-do-produto,
.single-product .calculatorRow,
.single-product .container_simulator,
.single-product .melhor-envio-calculator-wrapper {
  flex-basis: 100% !important;
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  box-sizing: border-box !important;
  clear: both !important;
}

.single-product .containerCalculator table,
.single-product .containerCalculator .calculatorRow {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

@media (max-width: 768px) {
  .product-entry-wrapper,
  .entry-summary,
  .ct-product-add-to-cart,
  .single-product form.cart {
    max-width: 100% !important;
    box-sizing: border-box !important;
    overflow-x: hidden !important;
  }

  .single-product form.cart {
    display: flex !important;
    flex-wrap: wrap !important;
    width: 100% !important;
  }

  .single-product form.cart .single_add_to_cart_button {
    width: auto !important;
    flex: 1 1 180px !important;
  }

  .single-product .jesca-btn-whatsapp-product {
    max-width: 100% !important;
    box-sizing: border-box !important;
  }
}


/* ==========================================================================
   ETAPA 5F — CORREÇÕES FINAIS DE HOMOLOGAÇÃO (11 ITENS + BOTÃO WHATSAPP)
   ========================================================================== */

/* Item Extra: Botão Comprar pelo WhatsApp perfeitamente alinhado nos cards (Pedido do Lucas) */
.jesca-btn-whatsapp-loop {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  width: 100% !important;
  max-width: 100% !important;
  height: 38px !important;
  margin: 8px 0 0 0 !important;
  padding: 0 12px !important;
  border: 1.5px solid var(--jesca-green, #25D366) !important;
  background-color: #ffffff !important;
  color: var(--jesca-green, #25D366) !important;
  border-radius: 9999px !important;
  font-family: var(--jesca-font-maven, sans-serif) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
  white-space: nowrap !important;
}

.jesca-btn-whatsapp-loop:hover {
  background-color: var(--jesca-green, #25D366) !important;
  color: #ffffff !important;
}

.jesca-btn-whatsapp-loop svg {
  width: 16px !important;
  height: 16px !important;
  flex-shrink: 0 !important;
  fill: currentColor !important;
  margin: 0 !important;
}

.jesca-btn-whatsapp-loop .jesca-btn-whatsapp-text {
  display: inline-block !important;
  line-height: 1 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

@media (max-width: 768px) {
  .jesca-btn-whatsapp-loop {
    width: calc(100% - 16px) !important;
    max-width: calc(100% - 16px) !important;
    margin: 6px auto 0 auto !important;
    height: 34px !important;
    line-height: 32px !important;
    font-size: 12px !important;
    padding: 0 8px !important;
    border: 1.5px solid var(--jesca-green, #25D366) !important;
    background-color: transparent !important;
    color: var(--jesca-green, #25D366) !important;
  }
  .jesca-btn-whatsapp-loop svg {
    width: 14px !important;
    height: 14px !important;
  }
}

/* Item 1: Faixas de banners, benefícios e ofertas de ponta a ponta (100% Full Width) */
body.home .ct-container-full,
body.home article.page,
body.home .entry-content,
body.home .entry-content.is-layout-constrained {
  max-width: 100% !important;
  width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* Banner Slider, Faixa de Benefícios e Seção de Ofertas: 100% FULL WIDTH (Ponta a Ponta) */
body.home .entry-content.is-layout-constrained > .jesca-shopify-banner-slider,
body.home .entry-content.is-layout-constrained > .jesca-benefits-bar-shopify,
body.home .entry-content.is-layout-constrained > .jesca-ofertas-section,
body.home .jesca-shopify-banner-slider,
body.home .jesca-benefits-bar-shopify,
body.home .jesca-ofertas-section {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  left: auto !important;
  right: auto !important;
  box-sizing: border-box !important;
}

/* Vitrines, Depoimentos e Instagram Centralizados (Padrão Tray 1320px com margens perfeitas) */
body.home .entry-content.is-layout-constrained > .jesca-vitrine-header,
body.home .entry-content.is-layout-constrained > .jesca-carousel-wrap,
body.home .entry-content.is-layout-constrained > #sb_instagram,
body.home .jesca-vitrine-header,
body.home .jesca-carousel-wrap,
body.home #sb_instagram {
  max-width: 1320px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 15px !important;
  padding-right: 15px !important;
  box-sizing: border-box !important;
  width: 100% !important;
}

/* Item 2: Título 'Confira nossas ofertas' em Maven Pro Negrito Branco */
.jesca-ofertas-section h2 {
  font-family: var(--jesca-font-maven, sans-serif) !important;
  font-weight: 700 !important;
  color: #ffffff !important;
  letter-spacing: -0.5px !important;
}

/* Item 3: Pintura rápida da Home sem layout shift */
.jesca-shopify-banner-slider {
  aspect-ratio: 1920 / 450 !important;
  min-height: 250px !important;
}

@media (max-width: 768px) {
  .jesca-shopify-banner-slider {
    aspect-ratio: 400 / 270 !important;
    min-height: auto !important;
  }
}

/* Item 4: Categoria Celular — 2 produtos por linha (Padrão Tray) */
@media (max-width: 768px) {
  .woocommerce ul.products,
  ul.products[class*="columns-"] {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px 10px !important;
    padding: 0 10px !important;
  }

  .woocommerce ul.products li.product {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    box-sizing: border-box !important;
  }
}

/* Item 5: Botões Filtrar / Ordenar no celular ladeando o título da categoria */
@media (max-width: 768px) {
  .woocommerce-products-header,
  .entry-header.ct-container-narrow {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    position: relative !important;
    padding: 16px 12px 8px 12px !important;
    margin: 0 !important;
  }

  .woocommerce-products-header h1.page-title,
  .entry-header h1.page-title {
    font-family: var(--jesca-font-maven, sans-serif) !important;
    font-size: 20px !important;
    font-weight: 700 !important;
    color: #111111 !important;
    margin: 0 !important;
    text-align: center !important;
  }

  .jesca-sfilters-mobile-bar {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    padding: 8px 12px 14px 12px !important;
    gap: 10px !important;
    border-bottom: 1px solid #f0f0f0 !important;
    margin-bottom: 16px !important;
  }

  .jesca-smobile-trigger {
    flex: 1 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    height: 40px !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 6px !important;
    background: #ffffff !important;
    color: #333333 !important;
    font-family: var(--jesca-font-maven, sans-serif) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
  }
}

/* Item 6 & 10: Faixa preta no topo absoluto sem espaço branco */
.jesca-mobile-topbar {
  display: none;
}
@media (max-width: 991px) {
  .jesca-mobile-topbar {
    display: block !important;
    background: #000000 !important;
    color: #ffffff !important;
    text-align: center !important;
    padding: 6px 12px !important;
    font-family: var(--jesca-font-maven, sans-serif) !important;
    font-size: 11.5px !important;
    font-weight: 600 !important;
    letter-spacing: 0.3px !important;
    overflow: hidden !important;
    height: 28px !important;
    box-sizing: border-box !important;
    position: relative !important;
    z-index: 99999 !important;
    top: 0 !important;
    margin: 0 !important;
  }
}

/* Preço completo e consistente em TODOS os produtos (Simples e Variáveis) */
.single-product .entry-summary .jesca-pix-box .jesca-price-regular {
  display: block !important;
  font-family: var(--jesca-font-maven, sans-serif) !important;
  font-size: 26px !important;
  font-weight: 700 !important;
  color: #111111 !important;
  margin-bottom: 4px !important;
  line-height: 1.2 !important;
}

.single-product .entry-summary p.price,
.single-product div.product p.price {
  display: none !important;
}

.single-product .entry-summary .jesca-pix-box {
  margin: 4px 0 16px 0 !important;
}

.single-product .entry-summary .jesca-pix-main {
  font-family: var(--jesca-font-maven, sans-serif) !important;
  font-size: 20px !important;
  font-weight: 800 !important;
  color: #01012b !important; /* Navy oficial da marca */
  display: flex !important;
  align-items: baseline !important;
  gap: 6px !important;
}

.single-product .entry-summary .jesca-pix-label {
  font-size: 14px !important;
  font-weight: 600 !important;
  color: #01012b !important;
}

.single-product .entry-summary .jesca-pix-installments {
  font-family: var(--jesca-font-maven, sans-serif) !important;
  font-size: 13px !important;
  color: #666666 !important;
  margin-top: 2px !important;
}

/* Item 8: Simulador de Frete com Botão Calcular ao lado do input */
.single-product .containerCalculator .calculatorRow .row {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
}

.single-product .containerCalculator .col-75 {
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
}

.single-product .containerCalculator .iptCep {
  display: inline-block !important;
  width: calc(100% - 110px) !important;
  max-width: 220px !important;
  height: 42px !important;
  vertical-align: middle !important;
}

.single-product .jesca-btn-calc-frete {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 42px !important;
  padding: 0 18px !important;
  background-color: #01012b !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 9999px !important;
  font-family: var(--jesca-font-maven, sans-serif) !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  margin-left: 8px !important;
  vertical-align: middle !important;
  transition: background 0.2s ease !important;
}

.single-product .jesca-btn-calc-frete:hover {
  background-color: #111827 !important;
}

/* Item 9: Carrinho — Botões estilo loja (navy em pílula) e zero inglês */
.woocommerce-cart .actions .button,
.woocommerce-cart button[name="apply_coupon"],
.woocommerce-cart button[name="update_cart"],
.woocommerce-cart .coupon .button {
  background-color: #01012b !important;
  color: #ffffff !important;
  border-radius: 9999px !important;
  font-family: var(--jesca-font-maven, sans-serif) !important;
  font-weight: 700 !important;
  font-size: 13px !important;
  padding: 10px 22px !important;
  border: none !important;
  transition: all 0.2s ease !important;
}

.woocommerce-cart .actions .button:hover,
.woocommerce-cart button[name="apply_coupon"]:hover,
.woocommerce-cart button[name="update_cart"]:hover {
  background-color: #111827 !important;
}

.woocommerce-cart th.product-name {
  text-transform: uppercase !important;
}

/* Item 11: Checkout Fluid Checkout — Títulos Maven Pro 600 #333 e Botões Navy Pílula */
.fc-checkout-steps h2,
.fc-checkout-steps h3,
.fc-checkout-steps h4,
.fc-checkout-steps legend,
.fc-step__title,
.fc-step__header-title,
.fc-section__title,
.fc-step-heading,
.fc-step__header,
.fc-checkout-steps .fc-step__sub-title {
  font-family: var(--jesca-font-maven, sans-serif) !important;
  font-weight: 600 !important;
  color: #333333 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
}

.fc-btn--next-step,
.fc-btn--primary,
.fc-btn,
#place_order,
.fc-wrapper button.button {
  background-color: #01012b !important;
  border-color: #01012b !important;
  color: #ffffff !important;
  font-family: var(--jesca-font-maven, sans-serif) !important;
  border-radius: 9999px !important;
  font-weight: 700 !important;
  font-size: 15px !important;
}

.fc-btn--next-step:hover,
.fc-btn--primary:hover,
#place_order:hover {
  background-color: #111827 !important;
  border-color: #111827 !important;
}

.jesca-cep-input-group {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  margin-top: 8px !important;
}

.jesca-cep-input-group input#inputCep {
  flex: 1 !important;
  max-width: 180px !important;
  height: 42px !important;
  margin: 0 !important;
  border: 1px solid #cbd5e1 !important;
  border-radius: 6px !important;
  padding: 0 12px !important;
  font-family: var(--jesca-font-maven, sans-serif) !important;
  font-size: 14px !important;
}

.jesca-btn-calc-frete {
  height: 42px !important;
  padding: 0 20px !important;
  background-color: #01012b !important;
  color: #ffffff !important;
  border-radius: 9999px !important;
  font-family: var(--jesca-font-maven, sans-serif) !important;
  font-weight: 700 !important;
  font-size: 13px !important;
  border: none !important;
  cursor: pointer !important;
  margin: 0 !important;
  transition: background 0.2s ease !important;
}

.jesca-btn-calc-frete:hover {
  background-color: #111827 !important;
}

.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
  background-color: #01012b !important;
  color: #ffffff !important;
  border-radius: 9999px !important;
  font-weight: 700 !important;
  font-size: 15px !important;
  transition: background 0.2s ease !important;
}

.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover {
  background-color: #111827 !important;
}

/* ==========================================================================
   DROPDOWNS UNIVERSAIS DE CATEGORIAS NO HEADER (PADRÃO TRAY t11/t12)
   ========================================================================== */
.jesca-nav-item.has-cat-dropdown {
  position: relative;
}

.jesca-cat-dropdown-panel {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  width: 580px;
  background: #ffffff;
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.12);
  border-radius: 0 0 8px 8px;
  padding: 24px 24px;
  box-sizing: border-box;
  z-index: 999999;
  gap: 24px;
}

.jesca-nav-item.has-cat-dropdown:hover .jesca-cat-dropdown-panel,
.jesca-cat-dropdown-panel:hover {
  display: flex !important;
}

.jesca-nav-item.dropdown-right .jesca-cat-dropdown-panel {
  left: auto !important;
  right: 0 !important;
}

.jesca-cat-cols-wrap {
  flex: 1;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
}

.jesca-cat-col-list {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.jesca-cat-col-list li a {
  font-size: 13px;
  color: #555555 !important;
  text-decoration: none !important;
  transition: color 0.15s ease, padding-left 0.15s ease;
  display: inline-block;
}

.jesca-cat-col-list li a:hover {
  color: #111111 !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  padding-left: 4px;
}

.jesca-cat-featured-product {
  flex: 0 0 180px;
  max-width: 180px;
  border-left: 1px solid #f0f0f0;
  padding-left: 20px;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

.jesca-cat-feat-badge {
  font-size: 10px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  color: #888888 !important;
  margin-bottom: 6px !important;
}

.jesca-cat-feat-img-link {
  display: block;
  width: 120px;
  height: 120px;
  margin-bottom: 8px;
}

.jesca-cat-feat-img-link img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 6px;
}

.jesca-cat-feat-title {
  font-size: 12px !important;
  color: #222222 !important;
  font-weight: 600 !important;
  line-height: 1.3 !important;
  margin-bottom: 6px !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  text-decoration: none !important;
}

.jesca-cat-feat-price {
  margin-bottom: 8px;
}

.jesca-cat-feat-price .price-full {
  font-size: 11px;
  color: #888888;
  text-decoration: line-through;
  display: block;
}

.jesca-cat-feat-price .price-pix {
  font-size: 13px;
  color: #111111;
  font-weight: 700;
}

.jesca-cat-feat-buy-btn {
  display: block;
  width: 100%;
  padding: 6px 0;
  background: #01012b;
  color: #ffffff !important;
  font-size: 11px;
  font-weight: 700;
  text-align: center;
  text-transform: uppercase;
  border-radius: 4px;
  text-decoration: none !important;
  transition: background 0.15s ease;
  margin-bottom: 6px;
}

.jesca-cat-feat-buy-btn:hover {
  background: #111827;
}

.jesca-cat-feat-wa-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  font-size: 11px;
  color: #25d366 !important;
  text-decoration: none !important;
  font-weight: 600;
}



/* ==========================================================================
   RODAPÉ: BLOCO DE CANAIS E REPUTAÇÃO (ETAPA 6g)
   ========================================================================== */
.jesca-footer-channels-block {
  width: 100%;
  max-width: 1200px;
  margin: 30px auto 0 auto;
  padding: 22px 15px;
  border-top: 1px solid #e2e8f0;
  text-align: center;
  box-sizing: border-box;
}

.jesca-footer-channels-heading {
  font-family: 'Maven Pro', sans-serif !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  color: #333333 !important;
  text-transform: none !important;
  letter-spacing: normal !important;
  margin: 0 0 16px 0 !important;
}

.jesca-footer-channels-list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 12px;
}

.jesca-channel-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 44px;
  padding: 8px 16px;
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 6px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);
  color: #334155;
  text-decoration: none;
  font-size: 12px;
  font-weight: 600;
  transition: all 0.2s ease;
  user-select: none;
  box-sizing: border-box;
}

.jesca-channel-link:hover,
.jesca-channel-badge:hover {
  border-color: #cbd5e1;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.08);
  transform: translateY(-1px);
}

.jesca-channel-brand-img {
  height: 24px;
  max-height: 24px;
  width: auto;
  max-width: 85px;
  object-fit: contain;
  display: block;
  flex-shrink: 0;
}

.jesca-channel-brand-text {
  font-family: 'Maven Pro', sans-serif;
  font-size: 13px;
  font-weight: 700;
  color: #111827;
  letter-spacing: -0.2px;
}

.jesca-channel-tag {
  font-family: 'Maven Pro', sans-serif;
  font-size: 11px;
  font-weight: 600;
  color: #64748b;
  white-space: nowrap;
}

@media (max-width: 768px) {
  .jesca-footer-channels-list {
    gap: 8px;
  }
  .jesca-channel-badge {
    min-height: 38px;
    padding: 6px 10px;
    gap: 6px;
  }
  .jesca-channel-brand-img {
    height: 20px;
    max-height: 20px;
    max-width: 70px;
  }
  .jesca-channel-tag {
    font-size: 10px;
  }
  .jesca-channel-brand-text {
    font-size: 12px;
  }
}


/* ==========================================================================
   REDUÇÃO DE ESPAÇO ENTRE O PRODUTO E OS PRODUTOS RELACIONADOS
   ========================================================================== */
.single-product div.product {
  margin-bottom: 10px !important;
  padding-bottom: 0 !important;
}

.single-product .entry-summary {
  margin-bottom: 10px !important;
  padding-bottom: 0 !important;
}

.single-product .jesca-product-accordions {
  margin-top: 15px !important;
  margin-bottom: 5px !important;
}

.single-product .related.products,
.single-product section.related,
.single-product .ct-related-products,
.single-product [data-products-section] {
  margin-top: 20px !important;
  padding-top: 0 !important;
  margin-bottom: 40px !important;
}

.single-product .related.products > h2,
.single-product section.related > h2,
.single-product .ct-related-products > h2 {
  font-family: var(--jesca-font-maven) !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  color: #1a1a1a !important;
  margin: 0 0 16px 0 !important;
  text-align: left !important;
  padding: 0 !important;
}

/* ==========================================================================
   BREADCRUMBS PADRÃO TRAY (SEM LINKS AZUIS, SEM CAIXA ALTA, SEPARADOR SUAVE)
   ========================================================================== */
.single-product .ct-breadcrumbs,
.ct-breadcrumbs,
.woocommerce-breadcrumb {
  font-family: var(--jesca-font-maven), -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  color: #666666 !important;
  text-transform: none !important;
  letter-spacing: normal !important;
}

.single-product .ct-breadcrumbs a,
.ct-breadcrumbs a,
.woocommerce-breadcrumb a {
  color: #666666 !important;
  text-decoration: none !important;
  text-transform: none !important;
  font-weight: 400 !important;
  transition: color 0.15s ease !important;
}

.single-product .ct-breadcrumbs a:hover,
.ct-breadcrumbs a:hover,
.woocommerce-breadcrumb a:hover {
  color: #111111 !important;
  text-decoration: none !important;
}

.single-product .ct-breadcrumbs .ct-separator,
.ct-breadcrumbs .ct-separator {
  color: #aaaaaa !important;
  fill: #aaaaaa !important;
  margin: 0 6px !important;
  width: 6px !important;
  height: 6px !important;
  opacity: 0.7 !important;
}

.single-product .ct-breadcrumbs span,
.ct-breadcrumbs span {
  text-transform: none !important;
  color: #666666 !important;
}

.single-product .ct-breadcrumbs span:last-child,
.ct-breadcrumbs span:last-child {
  color: #333333 !important;
}

/* ==========================================================================
   ELIMINAÇÃO DA BARRA BRANCA/CINZA NA HOME (BENEFÍCIOS -> OFERTAS FLUSH)
   ========================================================================== */
body.home .jesca-benefits-bar-shopify {
  margin-bottom: 0 !important;
  border-bottom: none !important;
  padding-bottom: 18px !important;
}

body.home .jesca-ofertas-section {
  margin-top: 0 !important;
}

body.home .entry-content > * + .jesca-ofertas-section,
body.home .entry-content > .jesca-benefits-bar-shopify + .jesca-ofertas-section,
body.home .entry-content > [data-align] + .jesca-ofertas-section {
  margin-top: 0 !important;
}

/* ==========================================================================
   RODAPÉ: REMOÇÃO DE SETAS NO DESKTOP, APROXIMAÇÃO DOS TÍTULOS E -50% GAP
   ========================================================================== */
.jesca-acc-arrow {
  display: none !important;
}

@media (max-width: 768px) {
  .jesca-acc-arrow {
    display: block !important;
  }
}

.jesca-footer-col h4,
.jesca-footer-acc-header h4 {
  margin: 0 0 6px 0 !important;
  padding: 0 !important;
  font-size: 16px !important;
  color: #1a1a1a !important;
}

.jesca-footer-acc-header {
  padding: 0 !important;
  margin: 0 0 6px 0 !important;
}

.jesca-footer-col ul {
  gap: 2px !important;
  line-height: 1.15 !important;
  margin: 0 !important;
  padding: 0 !important;
}

.jesca-footer-col ul li {
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1.15 !important;
}

.jesca-footer-col ul li a {
  padding: 1px 0 !important;
  line-height: 1.2 !important;
  font-size: 13px !important;
}

.jesca-footer-contact-item {
  margin-bottom: 6px !important;
  gap: 8px !important;
  font-size: 12.5px !important;
  line-height: 1.25 !important;
}

.jesca-footer-fale-conosco-list {
  margin-top: 6px !important;
}

.jesca-footer-fale-conosco-list a {
  font-size: 13px !important;
  color: #333333 !important;
  text-decoration: none !important;
}

.jesca-footer-fale-conosco-list a:hover {
  color: #01012b !important;
}

/* Ocultar estrelas de avaliação nos cards de produtos (home, catálogo, vitrines e carrosséis) */
.ct-woo-card-rating,
ul.products li.product .star-rating,
.woocommerce ul.products li.product .star-rating,
.jesca-carousel-track .star-rating,
.jesca-carousel-wrap .star-rating,
.jesca-carousel-track .ct-woo-card-rating,
.jesca-carousel-wrap .ct-woo-card-rating,
.related.products .star-rating,
.related.products .ct-woo-card-rating,
.upsells.products .star-rating,
.upsells.products .ct-woo-card-rating {
  display: none !important;
}

/* Seção Instagram Feed (Padrão Tray 1:1) */
.jesca-instagram-header {
  margin-top: 50px !important;
  margin-bottom: 8px !important;
}

.jesca-instagram-subtitle {
  text-align: center !important;
  margin-bottom: 25px !important;
}

.jesca-instagram-subtitle a {
  color: #666666 !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  text-decoration: none !important;
  letter-spacing: 0.2px !important;
  transition: color 0.2s ease !important;
}

.jesca-instagram-subtitle a:hover {
  color: var(--jesca-color-primary, #01012b) !important;
}

#sb_instagram #sbi_load {
  padding-top: 24px !important;
  padding-bottom: 20px !important;
  text-align: center !important;
}

#sb_instagram .sbi_follow_btn a {
  background: #01012b !important;
  color: #ffffff !important;
  font-family: var(--jesca-font-maven, sans-serif) !important;
  font-weight: 600 !important;
  font-size: 13px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.6px !important;
  padding: 11px 28px !important;
  border-radius: 25px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  text-decoration: none !important;
  box-shadow: 0 2px 8px rgba(1, 1, 43, 0.15) !important;
  transition: background 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease !important;
}

#sb_instagram .sbi_follow_btn a:hover {
  background: #111144 !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 4px 12px rgba(1, 1, 43, 0.25) !important;
}

/* ==========================================================================
/* ==========================================================================
   GALERIA DE MINIATURAS DAS VARIAÇÕES SINCRONIZADA 1:1 TRAY / SHOPIFY (ETAPA 5l & 5n)
   ========================================================================== */
.woocommerce div.product div.images.jesca-product-gallery,
.woocommerce-product-gallery.jesca-product-gallery {
  width: 55% !important;
  max-width: 700px !important;
  float: left !important;
  margin-bottom: 24px !important;
  user-select: none !important;
  -webkit-user-select: none !important;
  box-sizing: border-box !important;
  position: relative !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
}

.woocommerce div.product div.summary,
.single-product .entry-summary {
  float: right !important;
  width: calc(45% - 40px) !important;
  max-width: 540px !important;
  box-sizing: border-box !important;
  padding-left: 20px !important;
  margin-top: 0 !important;
  padding-top: 0 !important;
}

.single-product div.product::after {
  content: "" !important;
  display: table !important;
  clear: both !important;
}

/* Palco da Galeria e Foto Grande 1:1 */
.jesca-gallery-stage {
  position: relative !important;
  width: 100% !important;
  background: transparent !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: none !important;
  border-radius: 0 !important;
  overflow: visible !important;
  box-sizing: border-box !important;
  min-height: auto !important;
}

.jesca-gallery-viewport {
  width: 100% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  background: transparent !important;
  box-sizing: border-box !important;
}

.jesca-gallery-viewport img {
  width: 100% !important;
  max-width: 100% !important;
  max-height: 680px !important;
  aspect-ratio: 1 / 1 !important;
  height: auto !important;
  object-fit: contain !important;
  display: block !important;
  margin: 0 auto !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  transition: opacity 0.12s ease-out !important;
}

/* Setas Bare Chevrons ‹ › nas laterais fora da foto (t57) */
.jesca-gallery-nav {
  position: absolute !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: 38px !important;
  height: 48px !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  cursor: pointer !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #111111 !important;
  z-index: 15 !important;
  padding: 0 !important;
  opacity: 0.75 !important;
  transition: opacity 0.2s ease, transform 0.2s ease, color 0.2s ease !important;
}

.jesca-gallery-prev {
  left: 8px !important;
}

.jesca-gallery-next {
  right: 8px !important;
}

.jesca-gallery-nav:hover {
  background: transparent !important;
  color: #000000 !important;
  opacity: 1 !important;
  transform: translateY(-50%) scale(1.15) !important;
  box-shadow: none !important;
}

.jesca-gallery-nav svg {
  pointer-events: none !important;
}

/* Miniaturas da Galeria ~50px, foto preenchendo 100% (Etapa 5o) */
.jesca-gallery-thumbs-wrapper {
  width: 100% !important;
  margin-top: 14px !important;
}

.jesca-gallery-thumbs {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  gap: 8px !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

.jesca-gallery-thumb {
  flex: 0 0 52px !important;
  width: 52px !important;
  height: 52px !important;
  min-width: 52px !important;
  min-height: 52px !important;
  max-width: 52px !important;
  max-height: 52px !important;
  padding: 0 !important;
  margin: 0 !important;
  background: #ffffff !important;
  border: 1.5px solid #d1d5db !important;
  border-radius: 4px !important;
  cursor: pointer !important;
  overflow: hidden !important;
  display: block !important;
  box-sizing: border-box !important;
  transition: border-color 0.15s ease !important;
}

.jesca-gallery-thumb img {
  width: 100% !important;
  height: 100% !important;
  min-width: 100% !important;
  min-height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: cover !important;
  display: block !important;
  padding: 0 !important;
  margin: 0 !important;
  border: none !important;
  pointer-events: none !important;
}

.jesca-gallery-thumb:hover {
  border-color: #555555 !important;
}

.jesca-gallery-thumb.is-active {
  border: 2px solid #01012b !important;
  box-shadow: none !important;
}

/* ==========================================================================
   ETAPA 5n: COMPACTAÇÃO DA COLUNA DIREITA, TRILHA E TIPOGRAFIA TRAY (t61)
   ========================================================================== */
/* Trilha (Breadcrumbs): alinhada à esquerda do conteúdo (1260px container) no desktop */
@media (min-width: 769px) {
  .single-product .hero-section,
  .single-product .entry-header {
    max-width: 1260px !important;
    margin: 0 auto !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
    box-sizing: border-box !important;
    width: 100% !important;
  }
  .single-product .ct-breadcrumbs {
    margin-top: 0 !important;
    margin-bottom: 16px !important;
    text-align: left !important;
    justify-content: flex-start !important;
    padding: 0 !important;
  }
  .ct-breadcrumbs,
  .woocommerce-breadcrumb,
  .jesca-cat-breadcrumbs {
    max-width: 1260px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
    box-sizing: border-box !important;
    text-align: left !important;
    justify-content: flex-start !important;
  }
}
@media (max-width: 768px) {
  .single-product .ct-breadcrumbs,
  .jesca-cat-breadcrumbs {
    text-align: center !important;
    justify-content: center !important;
  }
}

/* Título em Maven Pro 600, cor #333, ~24px (sem serifa) alinhado ao topo da foto */
.single-product .entry-summary h1.product_title,
.single-product h1.product_title.entry-title {
  font-family: var(--jesca-font-maven, 'Maven Pro', sans-serif) !important;
  font-weight: 600 !important;
  font-size: 24px !important;
  line-height: 1.25 !important;
  color: #333333 !important;
  margin-top: 0 !important;
  margin-bottom: 6px !important;
  letter-spacing: normal !important;
}

/* Ocultar Modelo e Referência caso venha no DOM */
.single-product .jesca-product-meta-header {
  display: none !important;
}

/* Estrelinhas compactas */
.single-product .jesca-product-stars {
  margin-bottom: 12px !important;
}

/* Tabela de Variações Compacta (sem vão de 45px entre rótulo e bolinhas) */
.single-product table.variations {
  margin-top: 0 !important;
  margin-bottom: 14px !important;
  border: none !important;
}
.single-product table.variations tbody,
.single-product table.variations tr,
.single-product table.variations th,
.single-product table.variations td {
  display: block !important;
  width: 100% !important;
  border: none !important;
  padding: 0 !important;
  margin: 0 !important;
}
.single-product table.variations th.label {
  margin-bottom: 8px !important;
}
.single-product table.variations th.label label {
  font-family: var(--jesca-font-maven, sans-serif) !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  color: #111111 !important;
  display: inline-block !important;
  margin: 0 !important;
}
.single-product .jesca-color-name-wrap {
  font-weight: 400 !important;
  color: #111111 !important;
}
.single-product .jesca-color-name-wrap strong {
  font-weight: 700 !important;
  color: #111111 !important;
}

/* Ocultar texto duplicado do WVS, floating tooltip e o link Limpar */
.single-product .wvs-selected-item,
.single-product .woo-selected-variation-item-name,
.single-product .reset_variations,
.single-product [data-wvstooltip]::before,
.single-product .variable-item:not(.jesca-swatch-out-of-stock):not(.disabled)::after {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
}

/* Bolinhas de Swatches circulares e espaçamento suave */
.single-product .variable-items-wrapper {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Variação Esgotada: Clicável, com X vermelho no canto (Etapa 8c3) */
.single-product .variable-items-wrapper .variable-item.jesca-swatch-out-of-stock,
.single-product .variable-items-wrapper .variable-item.disabled {
  position: relative !important;
  opacity: 0.8 !important;
  cursor: pointer !important;
  pointer-events: auto !important;
}

.single-product .variable-items-wrapper .variable-item.jesca-swatch-out-of-stock.selected,
.single-product .variable-items-wrapper .variable-item.disabled.selected {
  outline: 2px solid #01012b !important;
  outline-offset: 2px !important;
}

.single-product .variable-items-wrapper .variable-item.jesca-swatch-out-of-stock::after,
.single-product .variable-items-wrapper .variable-item.disabled::after {
  content: "✕" !important;
  position: absolute !important;
  top: auto !important;
  bottom: -3px !important;
  right: -2px !important;
  left: auto !important;
  border: none !important;
  background: transparent !important;
  color: #e53e3e !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  text-shadow: 0 0 2px #ffffff, 0 0 2px #ffffff !important;
  z-index: 10 !important;
  pointer-events: none !important;
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  width: auto !important;
  height: auto !important;
}

/* Responsivo para celular */
@media (max-width: 768px) {
  .single-product .ct-container-full[data-vertical-spacing] {
    padding-top: 12px !important;
  }

  .single-product .ct-breadcrumbs {
    margin-top: 0 !important;
    margin-bottom: 12px !important;
    padding: 0 16px !important;
  }

  .single-product .product-entry-wrapper {
    padding: 0 !important;
  }

  .woocommerce div.product div.images.jesca-product-gallery,
  .woocommerce-product-gallery.jesca-product-gallery {
    width: 100% !important;
    float: none !important;
    max-width: 100% !important;
    margin: 0 0 16px 0 !important;
    padding: 0 !important;
  }

  .jesca-gallery-stage {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto 16px auto !important;
    padding: 0 !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
    position: relative !important;
  }

  .jesca-gallery-viewport {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  .jesca-gallery-viewport img {
    max-height: 85vw !important;
    width: 100% !important;
    max-width: 100% !important;
    object-fit: contain !important;
    display: block !important;
    margin: 0 auto !important;
    box-sizing: border-box !important;
  }

  .woocommerce div.product div.summary,
  .single-product .entry-summary {
    width: 100% !important;
    float: none !important;
    padding: 0 16px !important;
  }

  .jesca-gallery-prev {
    left: 16px !important;
    z-index: 20 !important;
  }
  .jesca-gallery-next {
    right: 16px !important;
    z-index: 20 !important;
  }

  .jesca-gallery-thumbs-wrapper {
    padding: 0 16px !important;
  }

  .jesca-gallery-thumbs {
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
    justify-content: flex-start !important;
    padding: 4px 0 8px 0 !important;
    scroll-snap-type: x mandatory;
    gap: 8px !important;
  }

  .jesca-gallery-thumb {
    scroll-snap-align: start;
    flex-shrink: 0 !important;
    width: 48px !important;
    height: 48px !important;
  }

  /* Adendo 13: Rodapé mobile logo maior (210px) e redes sociais maiores (26px) centralizados */
  .jesca-footer-col:first-child {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
    margin-bottom: 24px !important;
  }
  .jesca-footer-brand-logo img {
    max-width: 210px !important;
    width: 210px !important;
    margin: 0 auto 16px auto !important;
  }
  .jesca-footer-social-icons {
    display: flex !important;
    justify-content: center !important;
    gap: 18px !important;
    margin: 0 auto !important;
  }
  .jesca-footer-social-icons a svg {
    width: 26px !important;
    height: 26px !important;
  }
}

/* Adendo 10: Faixa preta no celular colada no topo sem faixa branca (Etapa 5j) */
.jesca-mobile-topbar {
  display: none !important;
}

@media (max-width: 991px) {
  body {
    padding-top: 82px !important; /* 28px topbar + 54px header */
  }

  .jesca-mobile-topbar {
    display: flex !important;
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: 28px !important;
    background: #000000 !important;
    color: #ffffff !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 12px !important;
    font-family: var(--jesca-font-maven, sans-serif) !important;
    font-size: 11.5px !important;
    font-weight: 600 !important;
    letter-spacing: 0.3px !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
    z-index: 100000 !important;
    margin: 0 !important;
  }

  .jesca-mobile-topbar-slider {
    position: relative !important;
    width: 100% !important;
    height: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  .jesca-topbar-msg {
    display: none !important;
    font-family: var(--jesca-font-maven, sans-serif) !important;
    font-size: 11.5px !important;
    font-weight: 600 !important;
    color: #ffffff !important;
    line-height: 28px !important;
    white-space: nowrap !important;
    text-align: center !important;
  }

  .jesca-topbar-msg.active {
    display: inline-block !important;
    animation: jescaFadeIn 0.35s ease !important;
  }

  @keyframes jescaFadeIn {
    from { opacity: 0; transform: translateY(3px); }
    to { opacity: 1; transform: translateY(0); }
  }

  #jesca-mob-header {
    top: 28px !important; /* Colado imediatamente abaixo da faixa preta */
    height: 54px !important;
    z-index: 99999 !important;
  }
}


/* Adendo 14: Selos Google e ROAS 360 do mesmo tamanho (130x44px) */
.jesca-footer-seals-icons {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  flex-wrap: wrap !important;
}

.jesca-footer-seals-icons a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 130px !important;
  height: 44px !important;
  background: #ffffff !important;
  border: 1px solid #e0e0e0 !important;
  border-radius: 4px !important;
  box-sizing: border-box !important;
  text-decoration: none !important;
  padding: 4px 8px !important;
  transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
}

.jesca-footer-seals-icons a:hover {
  border-color: #bbbbbb !important;
  box-shadow: 0 1px 4px rgba(0,0,0,0.06) !important;
}

.jesca-google-seal-box {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  padding: 0 !important;
  background: transparent !important;
  border: none !important;
  font-family: var(--jesca-font-maven, sans-serif) !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  color: #333333 !important;
  width: 100% !important;
  height: 100% !important;
}

.jesca-footer-seals-icons .jesca-roas-pill img {
  max-width: 100px !important;
  max-height: 24px !important;
  height: auto !important;
  width: auto !important;
  object-fit: contain !important;
  display: block !important;
  margin: 0 auto !important;
}

.jesca-footer-seals-icons a.jesca-roas-pill {
  background: #111111 !important;
  border: 1px solid #111111 !important;
}

.jesca-footer-seals-icons a.jesca-roas-pill:hover {
  background: #01012b !important;
  border-color: #01012b !important;
}

/* ==========================================================================
   ETAPA 5J: CATEGORIA NO CELULAR COM BOTÕES FILTRAR/ORDENAR AO LADO DO TÍTULO (TRAY t36)
   ========================================================================== */
.jesca-mob-cat-btn {
  display: none !important;
}

@media (max-width: 768px) {
  .jesca-category-clean-header {
    padding: 10px 16px 4px 16px !important;
  }

  .jesca-cat-breadcrumbs {
    margin-bottom: 6px !important;
    font-size: 12px !important;
  }

  .jesca-cat-header-row {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    width: 100% !important;
    margin: 0 0 8px 0 !important;
  }

  .jesca-cat-clean-title {
    flex: 1 !important;
    text-align: center !important;
    font-size: 19px !important;
    font-weight: 700 !important;
    margin: 0 !important;
    color: #111111 !important;
    line-height: 1.2 !important;
  }

  .jesca-mob-cat-btn {
    display: inline-flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 2px !important;
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    background: #ffffff !important;
    border: 1px solid #d9d9d9 !important;
    border-radius: 6px !important;
    padding: 0 !important;
    cursor: pointer !important;
    color: #111111 !important;
    box-sizing: border-box !important;
    transition: background 0.15s ease, border-color 0.15s ease !important;
  }

  .jesca-mob-cat-btn:active {
    background: #f5f5f5 !important;
    border-color: #01012b !important;
  }

  .jesca-mob-cat-btn svg {
    width: 17px !important;
    height: 17px !important;
  }

  .jesca-mob-cat-btn span {
    font-size: 9px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.2px !important;
    line-height: 1 !important;
    color: #333333 !important;
  }

  .jesca-sfilters-mobile-bar {
    display: none !important; /* Embutido ao lado do título (Tray t36) */
  }

  .jesca-sfilters-bar {
    margin-bottom: 0 !important;
    padding: 0 !important;
    border: none !important;
  }

  .woocommerce ul.products,
  ul.products {
    margin-top: 8px !important;
  }
}

/* ==========================================================================
   ETAPA 5K: CARRINHO LATERAL GAVETA 1:1 TRAY (PRINT t52)
   ========================================================================== */
.jesca-cart-drawer-overlay {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  background: rgba(0, 0, 0, 0.5) !important;
  z-index: 1000000 !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transition: opacity 0.28s cubic-bezier(0.16, 1, 0.3, 1), visibility 0.28s !important;
}

.jesca-cart-drawer-overlay.is-active {
  opacity: 1 !important;
  visibility: visible !important;
}

.jesca-cart-drawer {
  position: fixed !important;
  top: 0 !important;
  right: 0 !important;
  width: 100% !important;
  max-width: 420px !important;
  height: 100vh !important;
  height: 100dvh !important;
  background: #ffffff !important;
  box-shadow: -4px 0 24px rgba(0, 0, 0, 0.15) !important;
  z-index: 1000001 !important;
  transform: translateX(100%) !important;
  transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
  display: flex !important;
  flex-direction: column !important;
  box-sizing: border-box !important;
  font-family: var(--jesca-font-maven, sans-serif) !important;
}

.jesca-cart-drawer.is-active {
  transform: translateX(0) !important;
}

.jesca-cart-drawer-header {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding: 16px 20px !important;
  border-bottom: 1px solid #eeeeee !important;
  background: #ffffff !important;
}

.jesca-cart-drawer-close {
  background: none !important;
  border: none !important;
  padding: 0 !important;
  cursor: pointer !important;
  font-family: var(--jesca-font-maven, sans-serif) !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  color: #333333 !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 4px !important;
}

.jesca-cart-drawer-close .chevron {
  font-size: 20px !important;
  line-height: 1 !important;
}

.jesca-cart-drawer-title {
  font-size: 15px !important;
  font-weight: 700 !important;
  color: #111111 !important;
  letter-spacing: 0.2px !important;
}

.jesca-cart-drawer-content {
  flex: 1 !important;
  overflow-y: auto !important;
  display: flex !important;
  flex-direction: column !important;
}

.jesca-cart-drawer-items {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 20px !important;
  flex: 1 !important;
}

.jesca-cart-drawer-item {
  display: flex !important;
  align-items: flex-start !important;
  gap: 14px !important;
  padding: 18px 0 !important;
  border-bottom: 1px solid #f0f0f0 !important;
  position: relative !important;
}

.jesca-cart-drawer-item-img {
  width: 68px !important;
  height: 68px !important;
  border-radius: 6px !important;
  object-fit: cover !important;
  flex-shrink: 0 !important;
  background: #f8f8f8 !important;
  border: 1px solid #eee !important;
}

.jesca-cart-drawer-item-info {
  flex: 1 !important;
  min-width: 0 !important;
  padding-right: 24px !important;
}

.jesca-cart-drawer-item-name {
  font-size: 13.5px !important;
  font-weight: 600 !important;
  color: #222222 !important;
  text-decoration: none !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  line-height: 1.35 !important;
  margin-bottom: 4px !important;
}

.jesca-cart-drawer-item-meta {
  font-size: 12px !important;
  color: #777777 !important;
  margin-bottom: 8px !important;
}

.jesca-cart-drawer-item-bottom {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
}

.jesca-cart-drawer-qty-picker {
  display: inline-flex !important;
  align-items: center !important;
  border: 1px solid #dcdcdc !important;
  border-radius: 4px !important;
  background: #fafafa !important;
  overflow: hidden !important;
}

.jesca-cart-drawer-qty-btn {
  background: none !important;
  border: none !important;
  width: 28px !important;
  height: 28px !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  color: #444444 !important;
  cursor: pointer !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
}

.jesca-cart-drawer-qty-btn:hover {
  background: #eeeeee !important;
}

.jesca-cart-drawer-qty-val {
  width: 28px !important;
  text-align: center !important;
  font-size: 12.5px !important;
  font-weight: 600 !important;
  color: #222222 !important;
}

.jesca-cart-drawer-item-price {
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #111111 !important;
}

.jesca-cart-drawer-item-remove {
  background: none !important;
  border: none !important;
  color: #999999 !important;
  cursor: pointer !important;
  padding: 4px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  position: absolute !important;
  top: 14px !important;
  right: 0 !important;
  transition: color 0.15s ease !important;
}

.jesca-cart-drawer-item-remove:hover {
  color: #e53e3e !important;
}

.jesca-cart-drawer-footer {
  padding: 20px !important;
  border-top: 1px solid #eeeeee !important;
  background: #fafafa !important;
}

.jesca-cart-drawer-subtotal-row {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  margin-bottom: 16px !important;
}

.jesca-cart-drawer-subtotal-label {
  font-size: 14px !important;
  font-weight: 600 !important;
  color: #444444 !important;
}

.jesca-cart-drawer-subtotal-val {
  font-size: 18px !important;
  font-weight: 800 !important;
  color: #111111 !important;
}

.jesca-cart-drawer-btn-checkout {
  display: block !important;
  width: 100% !important;
  background-color: #01012b !important;
  color: #ffffff !important;
  text-align: center !important;
  padding: 14px 20px !important;
  border-radius: 9999px !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  text-decoration: none !important;
  box-sizing: border-box !important;
  transition: background-color 0.2s ease !important;
  margin-bottom: 10px !important;
}

.jesca-cart-drawer-btn-checkout:hover {
  background-color: #1a2b49 !important;
  color: #ffffff !important;
}

.jesca-cart-drawer-btn-continue {
  display: block !important;
  width: 100% !important;
  background: transparent !important;
  border: none !important;
  color: #555555 !important;
  text-align: center !important;
  padding: 8px 0 !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  text-decoration: underline !important;
  cursor: pointer !important;
}

.jesca-cart-drawer-btn-continue:hover {
  color: #111111 !important;
}

.jesca-cart-drawer-empty {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  padding: 60px 24px !important;
  flex: 1 !important;
}

.jesca-cart-drawer-empty svg {
  color: #cccccc !important;
  margin-bottom: 16px !important;
}

.jesca-cart-drawer-empty-title {
  font-size: 16px !important;
  font-weight: 700 !important;
  color: #222222 !important;
  margin-bottom: 8px !important;
}

.jesca-cart-drawer-empty-text {
  font-size: 13.5px !important;
  color: #666666 !important;
  margin-bottom: 24px !important;
  max-width: 240px !important;
  line-height: 1.4 !important;
}

/* Página /carrinho/ vazia (t53) - Botão navy pílula */
.woocommerce-cart .cart-empty.woocommerce-info {
  border-top-color: #01012b !important;
  font-size: 15px !important;
  color: #333333 !important;
  padding: 16px 20px !important;
}

.woocommerce-cart p.return-to-shop a.button {
  background-color: #01012b !important;
  color: #ffffff !important;
  border-radius: 9999px !important;
  padding: 12px 28px !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  transition: background-color 0.2s ease !important;
}

.woocommerce-cart p.return-to-shop a.button:hover {
  background-color: #1a2b49 !important;
}

/* Aviso de variação necessária com shake */
.jesca-var-needed-notice {
  display: none;
  background-color: #fee2e2;
  color: #b91c1c;
  border: 1px solid #f87171;
  padding: 10px 14px;
  border-radius: 6px;
  font-size: 13.5px;
  font-weight: 700;
  text-align: center;
  margin-bottom: 12px;
}

.jesca-var-needed-notice.active {
  display: block;
}

.shake {
  animation: jescaNoticeShake 0.45s ease-in-out !important;
}

@keyframes jescaNoticeShake {
  0%, 100% { transform: translateX(0); }
  20%, 60% { transform: translateX(-6px); }
  40%, 80% { transform: translateX(6px); }
}

.jesca-swatch-shake {
  animation: jescaBorderShake 0.5s ease-in-out !important;
  border: 1.5px solid #ef4444 !important;
  border-radius: 8px !important;
  padding: 6px !important;
}

@keyframes jescaBorderShake {
  0%, 100% { transform: translateX(0); border-color: #ef4444; }
  20%, 60% { transform: translateX(-5px); border-color: #ef4444; }
  40%, 80% { transform: translateX(5px); border-color: #ef4444; }
}

/* Compra Rápida: Medida como Select Dropdown (t55) */
.jesca-qb-select-container {
  padding: 12px 0 16px 0 !important;
  width: 100% !important;
}

.jesca-qb-select-label {
  display: block !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  color: #222222 !important;
  margin-bottom: 6px !important;
}

.jesca-qb-select {
  width: 100% !important;
  height: 42px !important;
  border-radius: 9999px !important;
  border: 1.5px solid #cccccc !important;
  padding: 0 16px !important;
  font-size: 13.5px !important;
  font-weight: 500 !important;
  color: #111111 !important;
  background-color: #ffffff !important;
  outline: none !important;
  cursor: pointer !important;
  box-sizing: border-box !important;
  transition: border-color 0.2s ease !important;
}

.jesca-qb-select:focus {
  border-color: #01012b !important;
}

.jesca-qb-select.has-error {
  border-color: #ef4444 !important;
  animation: jescaNoticeShake 0.45s ease-in-out !important;
}

/* Página de Produto: table.variations select estilizado como pílula */
.single-product table.variations select {
  height: 44px !important;
  border-radius: 9999px !important;
  border: 1.5px solid #d1d5db !important;
  padding: 0 18px !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  color: #111111 !important;
  background-color: #ffffff !important;
  cursor: pointer !important;
  width: 100% !important;
  max-width: 320px !important;
  outline: none !important;
}

.single-product table.variations select:focus {
  border-color: #01012b !important;
}

/* 404 Estilo Jesca */
.jesca-404-wrap {
  max-width: 620px !important;
  margin: 60px auto !important;
  padding: 0 20px !important;
  text-align: center !important;
  font-family: var(--jesca-font-maven, sans-serif) !important;
}

.jesca-404-badge {
  display: inline-block !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  background: #f1f5f9 !important;
  color: #01012b !important;
  padding: 4px 12px !important;
  border-radius: 20px !important;
  margin-bottom: 12px !important;
}

.jesca-404-title {
  font-size: 30px !important;
  font-weight: 700 !important;
  color: #111111 !important;
  margin: 0 0 12px 0 !important;
}

.jesca-404-desc {
  font-size: 14.5px !important;
  color: #666666 !important;
  line-height: 1.5 !important;
  margin: 0 0 24px 0 !important;
}

.jesca-404-search-box {
  margin-bottom: 24px !important;
}

.jesca-404-searchform {
  display: flex !important;
  align-items: center !important;
  max-width: 440px !important;
  margin: 0 auto !important;
  border: 1.5px solid #d1d5db !important;
  border-radius: 9999px !important;
  overflow: hidden !important;
  background: #ffffff !important;
}

.jesca-404-search-field {
  flex: 1 !important;
  border: none !important;
  outline: none !important;
  padding: 12px 18px !important;
  font-size: 14px !important;
}

.jesca-404-search-submit {
  background: none !important;
  border: none !important;
  padding: 0 16px !important;
  cursor: pointer !important;
  color: #01012b !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* ==========================================================================
   ETAPA 5P: PRODUTOS VISUALIZADOS E BARRA DE COMPRA FIXA NO RODAPÉ (TRAY t68/t69)
   ========================================================================== */

/* 1. SEÇÃO PRODUTOS VISUALIZADOS */
.jesca-viewed-section {
  width: 100%;
  max-width: 1240px;
  margin: 50px auto 30px auto;
  padding: 0 20px;
  box-sizing: border-box;
  clear: both;
}

.jesca-viewed-header {
  text-align: center;
  margin-bottom: 24px;
}

.jesca-viewed-title {
  font-family: var(--jesca-font-maven, 'Maven Pro', sans-serif) !important;
  font-size: 24px !important;
  font-weight: 700 !important;
  color: #111111 !important;
  margin: 0 0 8px 0 !important;
  text-align: center !important;
}

.jesca-viewed-title-bar {
  display: block;
  width: 44px;
  height: 3px;
  background-color: #01012b;
  margin: 0 auto;
  border-radius: 2px;
}

.jesca-viewed-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
  gap: 16px;
  justify-content: center;
}

.jesca-viewed-card {
  background: #ffffff;
  border: 1px solid #e5e7eb;
  border-radius: 6px;
  padding: 12px;
  transition: all 0.2s ease;
  box-sizing: border-box;
}

.jesca-viewed-card:hover {
  border-color: #01012b;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06);
}

.jesca-viewed-card-link {
  display: flex;
  align-items: center;
  gap: 12px;
  text-decoration: none !important;
  color: inherit !important;
}

.jesca-viewed-img-wrap {
  flex: 0 0 70px;
  width: 70px;
  height: 70px;
  border-radius: 4px;
  overflow: hidden;
  background: #f9fafb;
  display: flex;
  align-items: center;
  justify-content: center;
}

.jesca-viewed-img-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.jesca-viewed-info {
  flex: 1;
  min-width: 0;
}

.jesca-viewed-name {
  font-family: var(--jesca-font-maven, 'Maven Pro', sans-serif);
  font-size: 13.5px;
  font-weight: 500;
  color: #222222;
  line-height: 1.35;
  margin-bottom: 4px;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

.jesca-viewed-price {
  font-size: 13.5px;
  font-weight: 700;
  color: #111111;
  line-height: 1.2;
}

.jesca-viewed-pix {
  font-size: 11.5px;
  font-weight: 700;
  color: #01012b;
  margin-top: 2px;
}

.jesca-viewed-pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin-top: 20px;
  font-size: 13px;
  color: #555555;
}

.jesca-viewed-pag-number {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  background: #111111;
  color: #ffffff;
  font-weight: 700;
  font-size: 12px;
}

/* 2. BARRA FIXA DE COMPRA NO RODAPÉ */
.jesca-sticky-buy-bar {
  position: fixed !important;
  bottom: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  height: 68px !important;
  background: #ffffff !important;
  border-top: 1px solid #e5e7eb !important;
  box-shadow: 0 -4px 16px rgba(0, 0, 0, 0.08) !important;
  z-index: 99990 !important;
  transform: translateY(100%);
  transition: transform 0.28s cubic-bezier(0.16, 1, 0.3, 1) !important;
  display: flex !important;
  align-items: center !important;
  box-sizing: border-box !important;
}

.jesca-sticky-buy-bar.is-visible {
  transform: translateY(0) !important;
}

.jesca-sticky-buy-container {
  width: 100%;
  max-width: 1240px;
  margin: 0 auto;
  padding: 0 24px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  box-sizing: border-box;
}

.jesca-sticky-buy-left {
  display: flex;
  align-items: center;
  gap: 14px;
  min-width: 0;
  flex: 1;
  padding-right: 20px;
}

.jesca-sticky-buy-thumb {
  flex: 0 0 46px;
  width: 46px;
  height: 46px;
  border-radius: 4px;
  border: 1px solid #e5e7eb;
  overflow: hidden;
  background: #f9fafb;
}

.jesca-sticky-buy-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.jesca-sticky-buy-name {
  font-family: var(--jesca-font-maven, 'Maven Pro', sans-serif);
  font-size: 15px;
  font-weight: 600;
  color: #111111;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 420px;
}

.jesca-sticky-buy-right {
  display: flex;
  align-items: center;
  gap: 24px;
  flex-shrink: 0;
}

.jesca-sticky-buy-pricing {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  line-height: 1.25;
}

.jesca-sticky-buy-reg {
  font-size: 12px;
  color: #888888;
  text-decoration: line-through;
}

.jesca-sticky-buy-cur {
  font-size: 16px;
  font-weight: 700;
  color: #111111;
}

.jesca-sticky-buy-pix {
  font-size: 12px;
  font-weight: 700;
  color: #01012b;
}

.jesca-sticky-buy-btn {
  background: #01012b !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 9999px !important;
  padding: 11px 32px !important;
  font-family: var(--jesca-font-maven, 'Maven Pro', sans-serif) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  letter-spacing: 0.5px !important;
  cursor: pointer !important;
  transition: background-color 0.15s ease, transform 0.1s ease !important;
  outline: none !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.jesca-sticky-buy-btn:hover {
  background: #1e1e48 !important;
}

.jesca-sticky-buy-btn:disabled {
  background: #888888 !important;
  cursor: not-allowed !important;
  opacity: 0.7 !important;
}

/* 3. COMPORTAMENTO NO CELULAR (TRAY t69) */
@media (max-width: 768px) {
  .jesca-sticky-buy-bar {
    height: 60px !important;
  }

  .jesca-sticky-buy-container {
    padding: 0 12px;
  }

  .jesca-sticky-buy-left {
    gap: 8px;
    padding-right: 8px;
    flex: 0 0 auto;
  }

  .jesca-sticky-buy-thumb {
    width: 38px;
    height: 38px;
    flex: 0 0 38px;
  }

  .jesca-sticky-buy-name {
    display: none; /* No mobile da Tray t69 fica só a thumb + preço + comprar */
  }

  .jesca-sticky-buy-right {
    gap: 12px;
    flex: 1;
    justify-content: space-between;
  }

  .jesca-sticky-buy-pricing {
    align-items: flex-start;
  }

  .jesca-sticky-buy-cur {
    font-size: 14.5px;
  }

  .jesca-sticky-buy-pix {
    font-size: 11px;
  }

  .jesca-sticky-buy-btn {
    padding: 9px 20px !important;
    font-size: 13px !important;
  }

  .jesca-viewed-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
  }

  .jesca-viewed-card {
    padding: 8px;
  }

  .jesca-viewed-img-wrap {
    width: 54px;
    height: 54px;
    flex: 0 0 54px;
  }

  .jesca-viewed-name {
    font-size: 12px;
  }
}

/* 4. AJUSTE DO WHATSAPP FLUTUANTE PARA NÃO FICAR COBERTO PELA BARRA */
body.jesca-sticky-buy-active .jesca-floating-whatsapp,
body.jesca-sticky-buy-active .joinchat,
body.jesca-sticky-buy-active .ct-floating-bar {
  bottom: 74px !important;
  transition: bottom 0.25s ease !important;
}

/* ==========================================================================
   ETAPA 5R: CATEGORIA E PRODUTO: DIMINUIR ESPAÇOS DO TOPO E ALINHAMENTO À ESQUERDA
   ========================================================================== */

/* 1. TOPO DA CATEGORIA / ARQUIVOS / BUSCA / OFERTAS (DESKTOP)
   - Espaço entre menu e trilha: ~16px (antes ~75-84px)
   - Espaço entre título e filtros: ~12px (antes ~55px)
   - Alinhamento vertical à esquerda: trilha, título, filtros e grid na mesma linha
*/
.archive .site-main > .ct-container,
.tax-product_cat .site-main > .ct-container,
.tax-product_tag .site-main > .ct-container,
.post-type-archive-product .site-main > .ct-container,
.search-results .site-main > .ct-container,
.woocommerce-shop .site-main > .ct-container {
  padding-top: 16px !important;
}

.jesca-category-clean-header {
  padding: 0 !important;
  margin: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
}

.jesca-cat-header-inner {
  padding: 0 !important;
  margin: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
}

.jesca-cat-clean-title {
  margin: 0 0 12px 0 !important;
  padding: 0 !important;
  text-align: left !important;
}

.jesca-cat-header-row {
  margin: 0 !important;
  padding: 0 !important;
}

.jesca-sfilters-bar {
  margin: 0 0 20px 0 !important;
  padding: 8px 0 14px 0 !important;
  width: 100% !important;
  max-width: 100% !important;
}

@media (min-width: 769px) {
  .jesca-cat-breadcrumbs {
    margin: 0 0 4px 0 !important;
    padding: 0 !important;
    max-width: 100% !important;
    width: 100% !important;
    text-align: left !important;
    justify-content: flex-start !important;
  }

  /* 2. PÁGINA DO PRODUTO (DESKTOP)
     - Espaço entre menu e trilha: ~16px (antes ~65px)
     - Trilha alinhada à esquerda com a foto (gallery left: 80px)
  */
  .single-product .site-main > .ct-container-full {
    padding-top: 16px !important;
  }

  .single-product .hero-section,
  .single-product .entry-header {
    max-width: 1290px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    box-sizing: border-box !important;
    width: 100% !important;
  }

  .single-product .ct-breadcrumbs {
    max-width: 100% !important;
    width: 100% !important;
    margin-top: 0 !important;
    margin-left: 5px !important;
    margin-bottom: 14px !important;
    padding: 0 !important;
    box-sizing: border-box !important;
    text-align: left !important;
    justify-content: flex-start !important;
  }
}

/* 3. CELULAR: CORTES PROPORCIONAIS */
@media (max-width: 768px) {
  .archive .site-main > .ct-container,
  .tax-product_cat .site-main > .ct-container,
  .tax-product_tag .site-main > .ct-container,
  .post-type-archive-product .site-main > .ct-container,
  .search-results .site-main > .ct-container,
  .woocommerce-shop .site-main > .ct-container {
    padding-top: 12px !important;
  }

  .jesca-category-clean-header {
    padding: 0 0 4px 0 !important;
  }

  .jesca-cat-breadcrumbs {
    margin-bottom: 6px !important;
    font-size: 12px !important;
    text-align: center !important;
    justify-content: center !important;
  }

  .jesca-cat-header-row {
    margin: 0 0 8px 0 !important;
  }

  .single-product .site-main > .ct-container-full,
  .single-product .ct-container-full[data-vertical-spacing] {
    padding-top: 12px !important;
  }

  .single-product .ct-breadcrumbs {
    margin-left: 0 !important;
    margin-bottom: 10px !important;
    text-align: center !important;
    justify-content: center !important;
  }
}

/* ==========================================================================
   ETAPA 5T: MINHA CONTA: PRIMEIRO ACESSO E LOGIN POR LINK NO E-MAIL
   ========================================================================== */
.jesca-login-first-access-wrap {
  margin: 15px 0 10px 0 !important;
  text-align: center !important;
}

.jesca-login-first-access-link {
  display: inline-block !important;
  padding: 10px 18px !important;
  background: #f7fafc !important;
  border: 1px solid #cbd5e1 !important;
  border-radius: 6px !important;
  color: #0b1736 !important;
  font-size: 14px !important;
  text-decoration: none !important;
  transition: all 0.2s ease !important;
}

.jesca-login-first-access-link:hover {
  background: #0b1736 !important;
  color: #ffffff !important;
  border-color: #0b1736 !important;
}

.jesca-login-magic-wrap {
  margin-top: 20px !important;
  text-align: center !important;
}

.jesca-login-divider {
  display: flex !important;
  align-items: center !important;
  text-align: center !important;
  margin: 16px 0 !important;
  color: #94a3b8 !important;
  font-size: 12px !important;
  font-weight: 600 !important;
}

.jesca-login-divider::before,
.jesca-login-divider::after {
  content: '' !important;
  flex: 1 !important;
  border-bottom: 1px solid #e2e8f0 !important;
}

.jesca-login-divider span {
  padding: 0 10px !important;
}

.jesca-magic-link-btn {
  width: 100% !important;
  background: #ffffff !important;
  color: #334155 !important;
  border: 1px solid #cbd5e1 !important;
  padding: 12px 16px !important;
  border-radius: 6px !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
}

.jesca-magic-link-btn:hover {
  background: #f1f5f9 !important;
  color: #0b1736 !important;
  border-color: #94a3b8 !important;
}

/* Ajuste no formulário do shortcode Passwordless Login */
#jesca-magic-link-box form {
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
}

#jesca-magic-link-box input[type="text"],
#jesca-magic-link-box input[type="email"] {
  width: 100% !important;
  padding: 10px 12px !important;
  border: 1px solid #cbd5e1 !important;
  border-radius: 6px !important;
  font-size: 14px !important;
  box-sizing: border-box !important;
}

#jesca-magic-link-box input[type="submit"],
#jesca-magic-link-box button[type="submit"] {
  background: #0b1736 !important;
  color: #ffffff !important;
  border: none !important;
  padding: 10px 16px !important;
  border-radius: 6px !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  width: 100% !important;
}

/* Etapa 5t: Checkout sem campo de senha e conta automática transparente */
.woocommerce-checkout .create-account,
.woocommerce-checkout #createaccount,
.woocommerce-checkout label[for="createaccount"],
.fc-step__substep--contact_info .form-row.create-account,
.fc-step__substep--contact_info .fc-substep__actions {
  display: none !important;
}

/* Selo de Avaliação Real da Shopee */
.jesca-shopee-review-badge {
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
  background-color: #fff2ed !important;
  color: #ee4d2d !important;
  border: 1px solid #ffd8cc !important;
  padding: 3px 10px !important;
  border-radius: 12px !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.4px !important;
  margin-bottom: 8px !important;
}

.jesca-shopee-review-badge .shopee-icon {
  font-size: 13px !important;
}

/* Bloco de Avaliações Shopee no Produto (Etapa 6b) */
.jesca-shopee-reviews-section {
  margin: 35px 0 25px 0 !important;
  padding: 24px !important;
  background: #ffffff !important;
  border: 1px solid #ffe2d6 !important;
  border-radius: 12px !important;
  box-shadow: 0 4px 16px rgba(238, 77, 45, 0.05) !important;
}

.jesca-shopee-reviews-header {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
  padding-bottom: 16px !important;
  border-bottom: 1px solid #f1f5f9 !important;
  margin-bottom: 20px !important;
}

.jesca-shopee-header-title {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
}

.jesca-shopee-header-title h3 {
  margin: 0 !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  color: #1e293b !important;
}

.jesca-shopee-header-stats {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  font-size: 14px !important;
  color: #475569 !important;
}

.jesca-shopee-store-link {
  color: #ee4d2d !important;
  font-weight: 600 !important;
  text-decoration: underline !important;
  margin-left: 8px !important;
}

.jesca-shopee-reviews-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)) !important;
  gap: 16px !important;
}

.jesca-shopee-review-card {
  background: #fafafa !important;
  border: 1px solid #f1f5f9 !important;
  border-radius: 8px !important;
  padding: 14px 16px !important;
}

.jesca-shopee-card-top {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  margin-bottom: 8px !important;
}

.jesca-shopee-card-rating {
  color: #ee4d2d !important;
  font-size: 14px !important;
  letter-spacing: 2px !important;
}

.jesca-shopee-card-date {
  font-size: 12px !important;
  color: #94a3b8 !important;
}

.jesca-shopee-card-text {
  font-size: 13px !important;
  color: #334155 !important;
  line-height: 1.5 !important;
  margin: 0 0 10px 0 !important;
  font-style: italic !important;
}

.jesca-shopee-card-author {
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
  font-size: 12px !important;
  color: #64748b !important;
}

.jesca-shopee-card-author .shopee-tag {
  background: #fff2ed !important;
  color: #ee4d2d !important;
  padding: 2px 6px !important;
  border-radius: 4px !important;
  font-size: 10px !important;
  font-weight: 700 !important;
}

/* ==========================================================================
   ETAPA 6h: REVISÃO DO LUCAS (28/10) - ESTILOS ESPECÍFICOS DOS 8 ITENS
   ========================================================================== */

/* Item 1: Parcelas no cartão em vitrines e cards */
.jesca-pix-box .jesca-pix-installments,
.single-product .jesca-pix-box .jesca-pix-installments,
.single-product .entry-summary .jesca-pix-installments {
  font-family: var(--jesca-font-maven, 'Maven Pro', sans-serif) !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  color: #555555 !important;
  margin-top: 2px !important;
}

/* Item 2: Faixa Preta do Topo Rotativa (Desktop e Celular) */
.jesca-topbar-slider,
.jesca-mobile-topbar-slider {
  position: relative !important;
  height: 20px !important;
  width: 100% !important;
  max-width: 800px !important;
  margin: 0 auto !important;
  overflow: hidden !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.jesca-topbar-slider .jesca-topbar-msg,
.jesca-mobile-topbar-slider .jesca-topbar-msg {
  display: none !important;
  opacity: 0 !important;
  font-family: var(--jesca-font-maven, sans-serif) !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  color: #ffffff !important;
  letter-spacing: 0.3px !important;
  white-space: nowrap !important;
  text-align: center !important;
  pointer-events: none !important;
}

.jesca-topbar-slider .jesca-topbar-msg.active,
.jesca-mobile-topbar-slider .jesca-topbar-msg.active {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  animation: jescaTopFade 0.35s ease-out !important;
}

@keyframes jescaTopFade {
  0% {
    opacity: 0;
    transform: translateY(3px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Item 4: Produto Simples Esgotado & Modal Avise-me */
.jesca-out-of-stock-actions {
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
  margin: 16px 0 !important;
  width: 100% !important;
}

.jesca-btn-out-disabled {
  width: 100% !important;
  height: 48px !important;
  background: #f1f5f9 !important;
  color: #94a3b8 !important;
  border: 1px solid #cbd5e1 !important;
  border-radius: 6px !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  cursor: not-allowed !important;
}

.jesca-btn-aviseme {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  width: 100% !important;
  height: 48px !important;
  background: #01012b !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 6px !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  cursor: pointer !important;
  transition: background 0.2s ease, transform 0.2s ease !important;
}

.jesca-btn-aviseme:hover {
  background: #1e293b !important;
  transform: translateY(-1px) !important;
}

/* Modal Avise-me quando chegar */
.jesca-modal-overlay {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  background: rgba(1, 1, 43, 0.7) !important;
  backdrop-filter: blur(4px) !important;
  z-index: 999999 !important;
  display: none !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 16px !important;
}

.jesca-modal-overlay.active {
  display: flex !important;
}

body.jesca-modal-open {
  overflow: hidden !important;
}

.jesca-modal-content {
  position: relative !important;
  background: #ffffff !important;
  border-radius: 12px !important;
  padding: 32px 28px !important;
  max-width: 440px !important;
  width: 100% !important;
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.25) !important;
  animation: jescaModalPop 0.25s ease-out !important;
}

@keyframes jescaModalPop {
  from { opacity: 0; transform: scale(0.92); }
  to { opacity: 1; transform: scale(1); }
}

.jesca-modal-close {
  position: absolute !important;
  top: 14px !important;
  right: 16px !important;
  background: transparent !important;
  border: none !important;
  font-size: 26px !important;
  color: #64748b !important;
  cursor: pointer !important;
  line-height: 1 !important;
}

.jesca-modal-close:hover {
  color: #0f172a !important;
}

.jesca-modal-header {
  text-align: center !important;
  margin-bottom: 20px !important;
}

.jesca-modal-icon {
  width: 48px !important;
  height: 48px !important;
  border-radius: 50% !important;
  background: #f1f5f9 !important;
  color: #01012b !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 auto 12px auto !important;
}

.jesca-modal-title {
  font-family: var(--jesca-font-maven, sans-serif) !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  color: #01012b !important;
  margin: 0 0 6px 0 !important;
}

.jesca-modal-subtitle {
  font-size: 13px !important;
  color: #64748b !important;
  line-height: 1.4 !important;
  margin: 0 !important;
}

.jesca-form-group {
  margin-bottom: 14px !important;
}

.jesca-form-group label {
  display: block !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  color: #334155 !important;
  margin-bottom: 4px !important;
}

.jesca-form-group input {
  width: 100% !important;
  height: 42px !important;
  padding: 0 12px !important;
  border: 1px solid #cbd5e1 !important;
  border-radius: 6px !important;
  font-size: 14px !important;
  color: #1e293b !important;
  box-sizing: border-box !important;
}

.jesca-form-group input:focus {
  border-color: #01012b !important;
  outline: none !important;
  box-shadow: 0 0 0 2px rgba(1, 1, 43, 0.1) !important;
}

.jesca-modal-submit-btn {
  width: 100% !important;
  height: 46px !important;
  background: #01012b !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 6px !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  margin-top: 8px !important;
  transition: background 0.2s ease !important;
}

.jesca-modal-submit-btn:hover {
  background: #1e293b !important;
}

.jesca-modal-feedback {
  margin-top: 14px !important;
  padding: 10px 12px !important;
  border-radius: 6px !important;
  font-size: 13px !important;
  text-align: center !important;
}

.jesca-modal-feedback.success {
  background: #ecfdf5 !important;
  color: #065f46 !important;
  border: 1px solid #a7f3d0 !important;
}

.jesca-modal-feedback.error {
  background: #fef2f2 !important;
  color: #991b1b !important;
  border: 1px solid #fecaca !important;
}

.jesca-form-group-checkbox {
  margin: 12px 0 16px 0 !important;
}

.jesca-form-group-checkbox label {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  font-size: 13px !important;
  color: #334155 !important;
  cursor: pointer !important;
  user-select: none !important;
}

.jesca-form-group-checkbox input[type="checkbox"] {
  width: 16px !important;
  height: 16px !important;
  cursor: pointer !important;
  accent-color: #01012b !important;
  margin: 0 !important;
}

.jesca-btn-aviseme-var {
  margin-top: 12px !important;
}


/* Item 5: Produtos Relacionados (Carrossel Horizontal 1:1) */
.related.products {
  margin-top: 40px !important;
  padding-top: 20px !important;
  border-top: 1px solid #f1f5f9 !important;
}

.related.products > h2 {
  font-family: var(--jesca-font-maven, sans-serif) !important;
  font-size: 22px !important;
  font-weight: 700 !important;
  color: #01012b !important;
  margin-bottom: 24px !important;
}

.related.products ul.products {
  display: flex !important;
  flex-wrap: nowrap !important;
  overflow-x: auto !important;
  scroll-snap-type: x mandatory !important;
  gap: 20px !important;
  padding-bottom: 12px !important;
  scrollbar-width: thin !important;
}

.related.products ul.products li.product {
  flex: 0 0 calc((100% - 60px) / 4) !important;
  min-width: 220px !important;
  scroll-snap-align: start !important;
  box-sizing: border-box !important;
}

@media (max-width: 768px) {
  .related.products ul.products li.product {
    flex: 0 0 calc((100% - 16px) / 2) !important;
    min-width: 155px !important;
  }
}

/* Item 6: Produtos Visualizados em Carrossel de 1 Linha (t80) */
.jesca-viewed-section {
  width: 100% !important;
  margin: 40px 0 20px 0 !important;
  padding: 0 15px !important;
  box-sizing: border-box !important;
}

.jesca-viewed-container {
  max-width: 1320px !important;
  margin: 0 auto !important;
  position: relative !important;
}

.jesca-viewed-carousel-wrapper {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  width: 100% !important;
  margin-top: 18px !important;
}

.jesca-viewed-btn {
  position: absolute !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: 38px !important;
  height: 38px !important;
  border-radius: 50% !important;
  background: #ffffff !important;
  border: 1px solid #cbd5e1 !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1) !important;
  color: #0b1736 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  z-index: 10 !important;
  transition: all 0.2s ease !important;
  padding: 0 !important;
}

.jesca-viewed-btn:hover {
  background: #0b1736 !important;
  color: #ffffff !important;
  border-color: #0b1736 !important;
}

.jesca-viewed-btn.prev {
  left: -14px !important;
}

.jesca-viewed-btn.next {
  right: -14px !important;
}

.jesca-viewed-track-container {
  flex: 1 !important;
  overflow-x: auto !important;
  scroll-snap-type: x mandatory !important;
  scrollbar-width: none !important;
  -ms-overflow-style: none !important;
  scroll-behavior: smooth !important;
  padding: 4px 0 !important;
}

.jesca-viewed-track-container::-webkit-scrollbar {
  display: none !important;
}

.jesca-viewed-track {
  display: flex !important;
  gap: 16px !important;
  align-items: stretch !important;
}

.jesca-viewed-card {
  flex: 0 0 calc((100% - 48px) / 4) !important;
  min-width: 220px !important;
  scroll-snap-align: start !important;
  background: #ffffff !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 8px !important;
  padding: 12px !important;
  box-sizing: border-box !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease !important;
}

.jesca-viewed-card:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08) !important;
}

.jesca-viewed-card-link {
  display: flex !important;
  flex-direction: row !important;
  gap: 12px !important;
  align-items: center !important;
  text-decoration: none !important;
  color: inherit !important;
}

.jesca-viewed-img-wrap {
  width: 72px !important;
  height: 72px !important;
  flex-shrink: 0 !important;
  border-radius: 6px !important;
  overflow: hidden !important;
}

.jesca-viewed-img-wrap img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}

.jesca-viewed-info {
  flex: 1 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 3px !important;
  min-width: 0 !important;
}

.jesca-viewed-name {
  font-size: 13px !important;
  font-weight: 600 !important;
  color: #1e293b !important;
  line-height: 1.3 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.jesca-viewed-price {
  font-size: 13px !important;
  color: #334155 !important;
}

.jesca-viewed-pix {
  font-size: 12px !important;
  color: #01012b !important;
  font-weight: 700 !important;
}

@media (max-width: 768px) {
  .jesca-viewed-card {
    flex: 0 0 calc((100% - 16px) / 2) !important;
    min-width: 155px !important;
  }
  .jesca-viewed-btn.prev { left: 2px !important; }
  .jesca-viewed-btn.next { right: 2px !important; }
}

/* Item 7: Hover nos Cards com Troca para 2ª Foto (Desktop) */
.jesca-card-img-swap {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  overflow: hidden !important;
}

.jesca-card-img-swap img {
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 1 / 1 !important;
  object-fit: cover !important;
  display: block !important;
  transition: opacity 0.3s ease !important;
}

.jesca-card-img-swap .jesca-card-secondary-img {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

@media (min-width: 1025px) {
  li.product:hover .jesca-card-img-swap .jesca-card-secondary-img,
  .ct-media-container:hover .jesca-card-img-swap .jesca-card-secondary-img {
    opacity: 1 !important;
  }
  li.product:hover .jesca-card-img-swap img:not(.jesca-card-secondary-img),
  .ct-media-container:hover .jesca-card-img-swap img:not(.jesca-card-secondary-img) {
    opacity: 0 !important;
  }
}


/* ==========================================================================
   ETAPA 6i: TELA MINHA CONTA, LOGIN LIMPO, LINK MÁGICO E INSTAGRAM ESTÁTICO
   ========================================================================== */

/* 1. Títulos da Área Minha Conta em Maven Pro */
.woocommerce-account .woocommerce h2,
.woocommerce-account .entry-title,
.woocommerce-account h1,
.woocommerce-account h2,
.woocommerce-account h3,
.jesca-login-title {
  font-family: var(--jesca-font-maven, 'Maven Pro', -apple-system, sans-serif) !important;
  font-weight: 700 !important;
  color: #0b1736 !important;
}

/* 2. Ocultar duplicidades de olho e botões nativos redundantes */
.show-password-input {
  display: none !important;
}

/* 3. Grid e Layout da Página de Login / Cadastro */
.jesca-login-wrapper {
  max-width: 980px;
  margin: 40px auto;
  padding: 0 16px;
}

.jesca-login-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 40px;
  align-items: start;
}

@media (max-width: 768px) {
  .jesca-login-grid {
    grid-template-columns: 1fr;
    gap: 32px;
  }
}

.jesca-login-box,
.jesca-register-box {
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  padding: 32px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.03);
}

.jesca-login-title {
  font-size: 22px !important;
  margin: 0 0 24px 0 !important;
  padding-bottom: 12px;
  border-bottom: 2px solid #f1f5f9;
}

/* Campos de Senha com Olho Único */
.jesca-password-wrap {
  position: relative;
}

.jesca-password-input-box {
  position: relative;
  display: block;
  width: 100%;
}

.jesca-password-input-box input {
  padding-right: 44px !important;
}

.jesca-toggle-pass-btn {
  position: absolute;
  right: 12px;
  top: 50%;
  transform: translateY(-50%);
  background: transparent;
  border: none;
  cursor: pointer;
  padding: 4px;
  color: #64748b;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: color 0.2s ease;
}

.jesca-toggle-pass-btn:hover {
  color: #0b1736;
}

/* Ações de Login e Botões */
.jesca-login-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 20px 0 16px 0;
  flex-wrap: wrap;
  gap: 12px;
}

.jesca-auth-btn {
  background-color: #0b1736 !important;
  color: #ffffff !important;
  font-family: var(--jesca-font-maven, 'Maven Pro', -apple-system, sans-serif) !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  padding: 12px 28px !important;
  border-radius: 6px !important;
  border: none !important;
  cursor: pointer !important;
  transition: background-color 0.2s ease, transform 0.1s ease !important;
  text-align: center;
  display: inline-block;
}

.jesca-auth-btn:hover {
  background-color: #1e293b !important;
  color: #ffffff !important;
  transform: translateY(-1px);
}

.jesca-auth-btn-secondary {
  background-color: #059669 !important;
  width: 100%;
}

.jesca-auth-btn-secondary:hover {
  background-color: #047857 !important;
}

.jesca-lost-password-wrap {
  margin-top: 14px;
  font-size: 14px;
}

.jesca-link-muted {
  color: #2563eb;
  text-decoration: underline;
  transition: color 0.2s ease;
}

.jesca-link-muted:hover {
  color: #1d4ed8;
}

/* Divisor 'ou' */
.jesca-auth-divider {
  display: flex;
  align-items: center;
  text-align: center;
  margin: 28px 0 20px 0;
}

.jesca-auth-divider::before,
.jesca-auth-divider::after {
  content: '';
  flex: 1;
  border-bottom: 1px solid #e2e8f0;
}

.jesca-auth-divider span {
  padding: 0 14px;
  font-size: 13px;
  color: #94a3b8;
  text-transform: uppercase;
  font-weight: 600;
}

/* Link Mágico */
.jesca-magic-toggle-btn {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  background: #f8fafc;
  border: 1px dashed #cbd5e1;
  border-radius: 6px;
  padding: 12px;
  font-size: 14px;
  font-weight: 600;
  color: #334155;
  cursor: pointer;
  transition: all 0.2s ease;
}

.jesca-magic-toggle-btn:hover {
  background: #f1f5f9;
  border-color: #94a3b8;
  color: #0b1736;
}

.jesca-magic-link-form {
  margin-top: 16px;
  padding: 16px;
  background: #f8fafc;
  border-radius: 8px;
  border: 1px solid #e2e8f0;
}

.jesca-magic-desc {
  font-size: 13px;
  color: #475569;
  margin: 0 0 12px 0;
  line-height: 1.5;
}

.jesca-magic-msg {
  margin-top: 12px;
  padding: 12px;
  border-radius: 6px;
  font-size: 13px;
  line-height: 1.5;
}

.jesca-magic-msg.is-success {
  background: #ecfdf5;
  color: #065f46;
  border: 1px solid #a7f3d0;
}

.jesca-privacy-notice {
  font-size: 13px;
  color: #64748b;
  line-height: 1.5;
  margin: 16px 0;
}

/* 4. Menu Simplificado e Telas Minha Conta */
.woocommerce-MyAccount-navigation ul {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  overflow: hidden;
}

.woocommerce-MyAccount-navigation li {
  border-bottom: 1px solid #f1f5f9;
}

.woocommerce-MyAccount-navigation li:last-child {
  border-bottom: none;
}

.woocommerce-MyAccount-navigation li a {
  display: block;
  padding: 14px 18px;
  color: #334155;
  font-weight: 600;
  text-decoration: none;
  transition: background 0.15s ease, color 0.15s ease;
}

.woocommerce-MyAccount-navigation li.is-active a,
.woocommerce-MyAccount-navigation li a:hover {
  background: #f8fafc;
  color: #0b1736;
}

/* Tabela Meus Pedidos: Botão 'Ver pedido' no padrão da loja (Etapa 6o) */
.woocommerce-MyAccount-orders .woocommerce-button.view {
  background: #ffffff !important;
  color: #0b1736 !important;
  font-size: 13px !important;
  height: 36px !important;
  min-height: 36px !important;
  line-height: 33px !important;
  padding: 0 16px !important;
  border-radius: var(--jesca-radius-pill, 100px) !important;
  border: 1.5px solid #0b1736 !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-sizing: border-box !important;
}

.woocommerce-MyAccount-orders .woocommerce-button.view:hover {
  background: #f4f6f8 !important;
  border-color: #0b1736 !important;
  color: #0b1736 !important;
}

/* Ocultar campo de Nome de Exibição na tela Detalhes da Conta */
.woocommerce-EditAccountForm .woocommerce-form-row--wide:has(#account_display_name) {
  display: none !important;
}

/* 5. Faixa Estática Instagram na Home */
.jesca-insta-strip {
  max-width: 1200px;
  margin: 48px auto 32px auto;
  padding: 0 16px;
}

.jesca-insta-strip-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
  flex-wrap: wrap;
  gap: 16px;
}

.jesca-insta-strip-info {
  display: flex;
  align-items: center;
  gap: 12px;
}

.jesca-insta-icon {
  color: #e1306c;
}

.jesca-insta-strip-titles {
  display: flex;
  flex-direction: column;
}

.jesca-insta-title {
  font-family: var(--jesca-font-maven, 'Maven Pro', -apple-system, sans-serif);
  font-size: 20px;
  font-weight: 700;
  color: #0b1736;
}

.jesca-insta-handle {
  font-size: 14px;
  font-weight: 600;
  color: #64748b;
}

.jesca-insta-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: linear-gradient(45deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%);
  color: #ffffff !important;
  font-family: var(--jesca-font-maven, 'Maven Pro', -apple-system, sans-serif);
  font-size: 14px;
  font-weight: 700;
  padding: 10px 20px;
  border-radius: 9999px;
  text-decoration: none !important;
  box-shadow: 0 4px 12px rgba(220, 39, 67, 0.25);
  transition: transform 0.15s ease, opacity 0.15s ease;
}

.jesca-insta-btn:hover {
  transform: translateY(-2px);
  opacity: 0.95;
  color: #ffffff !important;
}

.jesca-insta-grid {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 14px;
}

@media (max-width: 900px) {
  .jesca-insta-grid {
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
  }
}

@media (max-width: 500px) {
  .jesca-insta-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
  }
}

.jesca-insta-item {
  position: relative;
  aspect-ratio: 1 / 1;
  border-radius: 10px;
  overflow: hidden;
  background: #f1f5f9;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
  display: block;
}

.jesca-insta-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.3s ease;
}

.jesca-insta-item:hover img {
  transform: scale(1.06);
}














/* ==========================================================================
   ETAPA 6H3: ALINHAMENTOS (PRODUTOS VISUALIZADOS, RODAPÉ, SELO, AVISO VARIAÇÃO, ABAS)
   ========================================================================== */

/* Item 1: Produtos Visualizados alinhado 100% com Produtos Relacionados */
.jesca-viewed-section {
  width: 100% !important;
  max-width: 1290px !important;
  margin: 40px auto 30px auto !important;
  padding: 0 !important;
  box-sizing: border-box !important;
  clear: both !important;
}

.jesca-viewed-container {
  width: 100% !important;
  max-width: 1290px !important;
  margin: 0 auto !important;
  position: relative !important;
  box-sizing: border-box !important;
}

.jesca-viewed-title {
  font-family: var(--jesca-font-maven, 'Maven Pro', sans-serif) !important;
  font-size: 22px !important;
  font-weight: 700 !important;
  color: #01012b !important;
  margin: 0 0 20px 0 !important;
  text-align: left !important;
  padding: 0 !important;
}

.jesca-viewed-title-bar {
  display: none !important;
}

.jesca-viewed-carousel-wrapper {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  width: 100% !important;
  margin-top: 0 !important;
}

.jesca-viewed-btn {
  position: absolute !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: 36px !important;
  height: 36px !important;
  border-radius: 50% !important;
  background: #ffffff !important;
  border: 1px solid #cbd5e1 !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.12) !important;
  color: #0b1736 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  z-index: 10 !important;
  transition: all 0.2s ease !important;
  padding: 0 !important;
}

.jesca-viewed-btn:hover {
  background: #0b1736 !important;
  color: #ffffff !important;
  border-color: #0b1736 !important;
}

.jesca-viewed-btn.prev {
  left: 6px !important;
}

.jesca-viewed-btn.next {
  right: 6px !important;
}

.jesca-viewed-track-container {
  width: 100% !important;
  overflow-x: auto !important;
  scroll-snap-type: x mandatory !important;
  scrollbar-width: none !important;
  -ms-overflow-style: none !important;
  scroll-behavior: smooth !important;
  padding: 4px 0 !important;
}

.jesca-viewed-track-container::-webkit-scrollbar {
  display: none !important;
}

.jesca-viewed-track {
  display: flex !important;
  gap: 20px !important;
  align-items: stretch !important;
  width: 100% !important;
}

.jesca-viewed-card {
  flex: 0 0 calc((100% - 60px) / 4) !important;
  min-width: 220px !important;
  scroll-snap-align: start !important;
  background: #ffffff !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 8px !important;
  padding: 12px !important;
  box-sizing: border-box !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease !important;
}

@media (max-width: 768px) {
  .jesca-viewed-section {
    padding: 0 15px !important;
    margin: 30px auto 20px auto !important;
  }
  .jesca-viewed-track {
    gap: 14px !important;
  }
  .jesca-viewed-card {
    flex: 0 0 calc((100% - 14px) / 2) !important;
    min-width: 155px !important;
  }
}

/* Item 2: Selo Google Site Seguro em UMA linha */
.jesca-footer-seals-icons a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  min-width: 155px !important;
  height: 38px !important;
  background: #ffffff !important;
  border: 1px solid #e0e0e0 !important;
  border-radius: 4px !important;
  box-sizing: border-box !important;
  text-decoration: none !important;
  padding: 4px 14px !important;
  white-space: nowrap !important;
  transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
}

.jesca-google-seal-box {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  padding: 0 !important;
  background: transparent !important;
  border: none !important;
  font-family: var(--jesca-font-maven, sans-serif) !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  color: #333333 !important;
  white-space: nowrap !important;
  line-height: 1 !important;
}

.jesca-google-seal-box svg {
  flex-shrink: 0 !important;
  vertical-align: middle !important;
}

/* Item 3: Formas de Pagamento em Linhas Completas (4 + 4) */
.jesca-footer-payments-icons {
  display: grid !important;
  grid-template-columns: repeat(4, 38px) !important;
  gap: 6px !important;
  align-items: center !important;
}

.jesca-footer-payments-icons img {
  width: 38px !important;
  height: 26px !important;
  object-fit: contain !important;
  border-radius: 3px !important;
  display: block !important;
}

/* Item 4: Rodapé - Fale Conosco alinhado com ícone */
.jesca-footer-fale-conosco-item {
  margin-top: 10px !important;
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  font-size: 13.5px !important;
}

.jesca-footer-fale-conosco-item a {
  color: #333333 !important;
  text-decoration: none !important;
  transition: color 0.2s ease !important;
}

.jesca-footer-fale-conosco-item a:hover {
  color: #0b1736 !important;
  text-decoration: underline !important;
}

/* Item 5: Aviso de Variação em UMA linha ocupando largura total */
.jesca-var-needed-notice {
  display: none;
  width: 100% !important;
  flex-basis: 100% !important;
  order: 99 !important;
  clear: both !important;
  margin: 12px 0 0 0 !important;
  background-color: #fee2e2 !important;
  color: #b91c1c !important;
  border: 1px solid #f87171 !important;
  padding: 10px 14px !important;
  border-radius: 6px !important;
  font-size: 13.5px !important;
  font-weight: 700 !important;
  text-align: center !important;
  box-sizing: border-box !important;
}

.jesca-var-needed-notice.active {
  display: block !important;
}

/* Item 7: Abas do produto (sem buraco branco, altura do conteúdo e tipografia unificada) */
.jesca-product-accordions {
  width: 100% !important;
  margin-top: 18px !important;
  clear: both !important;
}

.jesca-accordion-item {
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  border-bottom: 1px solid #e5e7eb !important;
  box-sizing: border-box !important;
}

.jesca-accordion-body {
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: visible !important;
  font-family: var(--jesca-font-maven, sans-serif) !important;
  color: #333333 !important;
  font-size: 15px !important;
  line-height: 1.6 !important;
  padding: 4px 4px 18px 4px !important;
  box-sizing: border-box !important;
}

.jesca-accordion-body * {
  font-family: inherit !important;
}

.jesca-accordion-body p,
.jesca-accordion-body span,
.jesca-accordion-body li {
  color: #333333 !important;
  font-size: 15px !important;
  line-height: 1.6 !important;
}

.jesca-accordion-body strong,
.jesca-accordion-body b {
  color: #111111 !important;
  font-weight: 700 !important;
}

/* ==========================================================================
   ETAPA 6H4: RESUMO DO PEDIDO E CHECKOUT
   ========================================================================== */
.fc-checkout-order-review-title,
#order_review_heading,
.fc-step__substep-title {
    font-family: 'Maven Pro', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    color: #01012b !important;
    letter-spacing: 0.5px !important;
}

.fc-checkout-order-review__head {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    margin-bottom: 16px !important;
}

.jesca-fc-edit-cart-btn {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    padding: 6px 14px !important;
    border: 1.5px solid #01012b !important;
    border-radius: 9999px !important;
    background: transparent !important;
    color: #01012b !important;
    font-family: 'Maven Pro', -apple-system, BlinkMacSystemFont, sans-serif !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
    line-height: 1 !important;
    white-space: nowrap !important;
}

.jesca-fc-edit-cart-btn:hover {
    background: #01012b !important;
    color: #ffffff !important;
    border-color: #01012b !important;
}

.jesca-fc-edit-cart-btn svg {
    display: block !important;
    flex-shrink: 0 !important;
}

/* Esconder link de texto padrão de editar carrinho se renderizado */
.fc-checkout-order-review__header-link:not(.jesca-fc-edit-cart-btn) {
    display: none !important;
}



/* ==========================================================================
   ETAPA 6o: PADRONIZAÇÃO DE BOTÕES EM MINHA CONTA > MEUS PEDIDOS & CONTA
   ========================================================================== */

/* 1. Célula de Ações da Tabela de Pedidos (Desktop) */
.woocommerce-orders-table__cell-order-actions {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 8px !important;
  min-width: 170px !important;
}

/* Base Comum dos Botões da Tabela de Pedidos */
.woocommerce-orders-table__cell-order-actions .woocommerce-button,
.woocommerce-orders-table__cell-order-actions a.button {
  font-family: 'Maven Pro', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
  font-weight: 600 !important;
  font-size: 13px !important;
  letter-spacing: 0.3px !important;
  height: 36px !important;
  min-height: 36px !important;
  line-height: 34px !important;
  padding: 0 16px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: var(--jesca-radius-pill, 100px) !important;
  box-sizing: border-box !important;
  text-decoration: none !important;
  transition: all 0.2s ease-in-out !important;
  white-space: nowrap !important;
  margin: 0 !important;
  box-shadow: none !important;
}

/* Botão "Pagar": Principal cheio azul-escuro #0b1736 */
.woocommerce-orders-table__cell-order-actions a.button.pay,
.woocommerce-MyAccount-content .order-actions-button.pay,
.woocommerce-MyAccount-content a.button.pay {
  background-color: #0b1736 !important;
  color: #ffffff !important;
  border: 1px solid #0b1736 !important;
  border-radius: var(--jesca-radius-pill, 100px) !important;
  height: 36px !important;
  min-height: 36px !important;
  line-height: 34px !important;
  font-size: 13px !important;
  padding: 0 16px !important;
}
.woocommerce-orders-table__cell-order-actions a.button.pay:hover,
.woocommerce-MyAccount-content .order-actions-button.pay:hover,
.woocommerce-MyAccount-content a.button.pay:hover {
  background-color: #1a2b56 !important;
  border-color: #1a2b56 !important;
  color: #ffffff !important;
}

/* Botão "Ver pedido": Contornado (borda azul-escuro #0b1736, fundo branco) */
.woocommerce-orders-table__cell-order-actions a.button.view,
.woocommerce-MyAccount-content .order-actions-button.view,
.woocommerce-MyAccount-content a.button.view {
  background-color: #ffffff !important;
  color: #0b1736 !important;
  border: 1.5px solid #0b1736 !important;
  border-radius: var(--jesca-radius-pill, 100px) !important;
  height: 36px !important;
  min-height: 36px !important;
  line-height: 33px !important;
  font-size: 13px !important;
  padding: 0 16px !important;
}
.woocommerce-orders-table__cell-order-actions a.button.view:hover,
.woocommerce-MyAccount-content .order-actions-button.view:hover,
.woocommerce-MyAccount-content a.button.view:hover {
  background-color: #f4f6f8 !important;
  border-color: #0b1736 !important;
  color: #0b1736 !important;
}

/* Link "Cancelar pedido": Discreto cinza, abaixo — não botão */
.woocommerce-orders-table__cell-order-actions a.button.cancel,
.woocommerce-MyAccount-content .order-actions-button.cancel,
.woocommerce-MyAccount-content a.button.cancel {
  flex-basis: 100% !important;
  width: 100% !important;
  background: transparent !important;
  background-color: transparent !important;
  color: #718096 !important;
  border: none !important;
  border-radius: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  line-height: 1.4 !important;
  padding: 4px 0 0 0 !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  text-decoration: underline !important;
  display: inline-block !important;
  text-align: left !important;
  justify-content: flex-start !important;
  box-shadow: none !important;
}
.woocommerce-orders-table__cell-order-actions a.button.cancel:hover,
.woocommerce-MyAccount-content .order-actions-button.cancel:hover,
.woocommerce-MyAccount-content a.button.cancel:hover {
  background: transparent !important;
  background-color: transparent !important;
  color: #e53e3e !important;
  text-decoration: underline !important;
}

/* 2. Responsividade Mobile (<= 768px) */
@media (max-width: 768px) {
  .woocommerce-orders-table__cell-order-actions {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
    width: 100% !important;
    align-items: stretch !important;
  }
  .woocommerce-orders-table__cell-order-actions a.button.pay,
  .woocommerce-orders-table__cell-order-actions a.button.view {
    width: 100% !important;
    height: 38px !important;
    min-height: 38px !important;
    line-height: 36px !important;
    text-align: center !important;
    justify-content: center !important;
  }
  .woocommerce-orders-table__cell-order-actions a.button.cancel {
    width: 100% !important;
    text-align: center !important;
    justify-content: center !important;
    margin-top: 2px !important;
  }
}

/* 3. Remoção do Azul-Claro (#2f7bff / #2872fa) em toda a Minha Conta */
.woocommerce-MyAccount-content .button:not(.view):not(.cancel):not(.pay),
.woocommerce-MyAccount-content button.button:not(.view):not(.cancel):not(.pay),
.woocommerce-MyAccount-content input[type="submit"].button,
.woocommerce-EditAccountForm button.button,
.woocommerce-address-fields button.button {
  background-color: #0b1736 !important;
  color: #ffffff !important;
  border: 1px solid #0b1736 !important;
  border-radius: var(--jesca-radius-pill, 100px) !important;
  font-family: 'Maven Pro', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  height: 40px !important;
  padding: 0 24px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-shadow: none !important;
  transition: all 0.2s ease-in-out !important;
}
.woocommerce-MyAccount-content .button:not(.view):not(.cancel):not(.pay):hover,
.woocommerce-MyAccount-content button.button:not(.view):not(.cancel):not(.pay):hover,
.woocommerce-MyAccount-content input[type="submit"].button:hover,
.woocommerce-EditAccountForm button.button:hover,
.woocommerce-address-fields button.button:hover {
  background-color: #1a2b56 !important;
  border-color: #1a2b56 !important;
  color: #ffffff !important;
}

/* Links "Editar" e "Adicionar" em Endereços da Minha Conta */
.woocommerce-MyAccount-content .woocommerce-Addresses .edit,
.woocommerce-MyAccount-content .woocommerce-Address-title a.edit {
  color: #0b1736 !important;
  font-family: 'Maven Pro', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
  font-weight: 600 !important;
  text-decoration: underline !important;
  transition: color 0.2s ease !important;
}
.woocommerce-MyAccount-content .woocommerce-Addresses .edit:hover,
.woocommerce-MyAccount-content .woocommerce-Address-title a.edit:hover {
  color: #1a2b56 !important;
}

/* ==========================================================================
   ETAPA 6l4: AVALIAÇÕES NATIVAS, SELOS E CALCULADORA DE FRETE INTELIGENTE
   ========================================================================== */

/* Acordeão e Wrapper de Avaliações */
.jesca-accordion-reviews .jesca-accordion-body {
  padding: 16px 20px !important;
}

.jesca-product-reviews-wrapper #reviews {
  display: flex !important;
  flex-direction: column !important;
  gap: 20px !important;
}

.jesca-product-reviews-wrapper .woocommerce-Reviews-title {
  font-family: var(--jesca-font-maven, sans-serif) !important;
  font-size: 17px !important;
  font-weight: 700 !important;
  color: #111827 !important;
  margin: 0 0 12px 0 !important;
}

.jesca-product-reviews-wrapper .woocommerce-noreviews {
  font-size: 14px !important;
  color: #64748b !important;
  margin: 0 0 16px 0 !important;
}

/* Mensagem de restrição: somente quem comprou pode avaliar */
.woocommerce-verification-required {
  background: #f8fafc !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 8px !important;
  padding: 14px 18px !important;
  font-size: 13.5px !important;
  color: #475569 !important;
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  margin: 12px 0 !important;
}
.woocommerce-verification-required::before {
  content: "🔒";
  font-size: 16px;
}

/* Formulário de Avaliação */
#review_form_wrapper {
  background: #fbfbfb !important;
  border: 1px solid #e5e7eb !important;
  border-radius: 8px !important;
  padding: 18px 20px !important;
  margin-top: 15px !important;
}

#review_form #reply-title {
  font-family: var(--jesca-font-maven, sans-serif) !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  color: #111827 !important;
  margin: 0 0 12px 0 !important;
}

#review_form .comment-form-rating {
  margin-bottom: 14px !important;
}

#review_form .comment-form-rating label {
  display: block !important;
  font-weight: 600 !important;
  font-size: 13px !important;
  color: #374151 !important;
  margin-bottom: 4px !important;
}

#review_form .comment-form-comment label {
  display: block !important;
  font-weight: 600 !important;
  font-size: 13px !important;
  color: #374151 !important;
  margin-bottom: 6px !important;
}

#review_form textarea#comment {
  width: 100% !important;
  min-height: 90px !important;
  border: 1px solid #d1d5db !important;
  border-radius: 6px !important;
  padding: 10px 12px !important;
  font-size: 13.5px !important;
  outline: none !important;
  transition: border-color 0.2s ease !important;
}

#review_form textarea#comment:focus {
  border-color: #0b1736 !important;
}

#review_form input#submit {
  background: #0b1736 !important;
  color: #ffffff !important;
  font-family: var(--jesca-font-maven, sans-serif) !important;
  font-weight: 700 !important;
  font-size: 14px !important;
  padding: 10px 24px !important;
  border: none !important;
  border-radius: 6px !important;
  cursor: pointer !important;
  transition: background 0.2s ease !important;
  margin-top: 8px !important;
}

#review_form input#submit:hover {
  background: #1a2b56 !important;
}

/* Lista de Comentários / Avaliações */
.jesca-product-reviews-wrapper .commentlist {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 16px !important;
}

.jesca-product-reviews-wrapper .commentlist li.review {
  border-bottom: 1px solid #f1f5f9 !important;
  padding-bottom: 14px !important;
}

.jesca-product-reviews-wrapper .comment_container {
  display: flex !important;
  flex-direction: column !important;
  gap: 6px !important;
}

.jesca-product-reviews-wrapper .star-rating {
  font-size: 13px !important;
  color: #f59e0b !important;
}

.jesca-product-reviews-wrapper .woocommerce-review__author {
  font-weight: 700 !important;
  color: #1e293b !important;
  font-size: 14px !important;
}

.jesca-product-reviews-wrapper .woocommerce-review__dash {
  color: #94a3b8 !important;
  margin: 0 4px !important;
}

.jesca-product-reviews-wrapper .woocommerce-review__published-date {
  color: #64748b !important;
  font-size: 12.5px !important;
}

.jesca-product-reviews-wrapper .woocommerce-review__verified {
  display: inline-flex !important;
  align-items: center !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  color: #15803d !important;
  background: #dcfce7 !important;
  padding: 2px 7px !important;
  border-radius: 100px !important;
  margin-left: 6px !important;
  text-transform: uppercase !important;
}

/* Mensagens de Sucesso / Pendente da Moderação */
.woocommerce-Reviews .comment-awaiting-moderation {
  background: #fefce8 !important;
  border: 1px solid #fef08a !important;
  color: #854d0e !important;
  border-radius: 6px !important;
  padding: 10px 14px !important;
  font-size: 13px !important;
  margin-top: 6px !important;
}

/* Extras Calculadora de Frete na PDP */
.jesca-shipping-note {
  margin-top: 6px !important;
  font-size: 12px !important;
  color: #64748b !important;
  font-style: italic !important;
}

.jesca-shipping-error-msg {
  padding: 10px 14px !important;
  background: #fef2f2 !important;
  border: 1px solid #fecaca !important;
  color: #991b1b !important;
  border-radius: 6px !important;
  font-size: 13px !important;
  margin-top: 10px !important;
}

/* ==========================================================================
   ETAPA 8c: BOLINHAS COM MINIATURA DO MIOLO (NÃO-METAIS) & GALERIA COMPACTA
   ========================================================================== */

/* Bolinhas viram QUADRADOS com foto recortada do miolo em 72x72 WebP (~40px na tela) — Etapa 8m */
.woo-variation-swatches .variable-items-wrapper .variable-item .variable-item-span.jesca-swatch-photo {
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  border-radius: 2px !important;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.08) !important;
  transition: transform 0.15s ease, box-shadow 0.15s ease !important;
  display: block !important;
}

.woo-variation-swatches .variable-items-wrapper .variable-item.jesca-has-photo-swatch {
  width: 40px !important;
  height: 40px !important;
  min-width: 40px !important;
  min-height: 40px !important;
  border-radius: 3px !important;
  padding: 1px !important;
  box-sizing: border-box !important;
  margin: 2px !important;
  background: transparent !important;
  border: 1px solid rgba(0, 0, 0, 0.16) !important;
}

.woo-variation-swatches .variable-items-wrapper .variable-item.jesca-has-photo-swatch:hover {
  border-color: #01012b !important;
  box-shadow: 0 2px 6px rgba(1, 1, 43, 0.15) !important;
}

.woo-variation-swatches .variable-items-wrapper .variable-item.jesca-has-photo-swatch.selected,
.woo-variation-swatches .variable-items-wrapper .variable-item.jesca-has-photo-swatch[aria-checked="true"] {
  border: 2px solid #01012b !important;
  box-shadow: 0 2px 6px rgba(1, 1, 43, 0.25) !important;
}

/* Indicador de esgotado: "x" pequeno no canto + opacidade 60% */
.woo-variation-swatches .variable-items-wrapper .variable-item.jesca-has-photo-swatch.disabled,
.woo-variation-swatches .variable-items-wrapper .variable-item.jesca-has-photo-swatch.jesca-swatch-out-of-stock {
  opacity: 0.6 !important;
  position: relative !important;
}

.woo-variation-swatches .variable-items-wrapper .variable-item.jesca-has-photo-swatch.disabled::after,
.woo-variation-swatches .variable-items-wrapper .variable-item.jesca-has-photo-swatch.jesca-swatch-out-of-stock::after {
  content: "✕" !important;
  position: absolute !important;
  bottom: 1px !important;
  right: 2px !important;
  color: #dc2626 !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  text-shadow: 0 0 2px #fff, 0 0 3px #fff !important;
  z-index: 10 !important;
  display: block !important;
}

/* Galeria com no máximo 3 linhas e expansão suave ("Ver todas as fotos") - Etapa 8f */
.jesca-gallery-thumbs-wrapper.is-collapsed .jesca-gallery-thumbs {
  max-height: 185px !important; /* Exatamente 3 linhas (22 fotos visíveis): 52px + 8px gap + 52px + 8px gap + 52px */
  overflow: hidden !important;
  transition: max-height 0.35s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.jesca-gallery-thumbs-wrapper.is-expanded .jesca-gallery-thumbs {
  max-height: 1400px !important;
  transition: max-height 0.45s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.jesca-gallery-toggle-thumbs {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  width: 100% !important;
  margin-top: 12px !important;
  padding: 8px 16px !important;
  background: #f8fafc !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 8px !important;
  color: #334155 !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
  font-family: inherit !important;
}

.jesca-gallery-toggle-thumbs:hover {
  background: #f1f5f9 !important;
  color: #0f172a !important;
  border-color: #cbd5e1 !important;
}

.jesca-gallery-toggle-thumbs svg {
  transition: transform 0.25s ease !important;
}

.jesca-gallery-thumbs-wrapper.is-expanded .jesca-gallery-toggle-thumbs svg {
  transform: rotate(180deg) !important;
}

/* ==========================================================================
   ETAPA 8c5: AJUSTES DE VARIAÇÃO ESGOTADA (ESCONDER QTD E COMPRAR + SELO ÚNICO)
   ========================================================================== */

/* Esconde o texto nativo "Esgotado" do WooCommerce para não duplicar com o selo */
.single-product .woocommerce-variation-availability p.stock.out-of-stock,
.single-product .woocommerce-variation-availability .stock.out-of-stock {
  display: none !important;
}

/* Quando variação esgotada estiver selecionada, esconde quantidade e botão COMPRAR */
form.variations_form.jesca-var-out-of-stock .woocommerce-variation-add-to-cart,
form.variations_form.jesca-var-out-of-stock .ct-cart-actions,
form.variations_form.jesca-var-out-of-stock .quantity,
form.variations_form.jesca-var-out-of-stock .single_add_to_cart_button,
body.jesca-var-out-of-stock #jesca-sticky-buy-submit {
  display: none !important;
}

/* Botão Avise-me na barra fixa */
.jesca-sticky-aviseme-btn {
  background: #01012b !important;
  color: #ffffff !important;
  font-weight: 600 !important;
  border-radius: 8px !important;
  padding: 10px 18px !important;
  border: none !important;
  cursor: pointer !important;
  font-size: 13px !important;
  transition: opacity 0.2s ease !important;
}

.jesca-sticky-aviseme-btn:hover {
  opacity: 0.9 !important;
}

/* Botão Avise-me na compra rápida */
.jesca-qb-aviseme-btn {
  background: #01012b !important;
  color: #ffffff !important;
  font-weight: 600 !important;
  border-radius: 8px !important;
  padding: 12px 18px !important;
  border: none !important;
  cursor: pointer !important;
  font-size: 14px !important;
  width: 100% !important;
  text-align: center !important;
}

/* ==========================================================================
   ETAPA 8g: PÁGINA DE PRODUTO NO CELULAR (REFINAMENTOS MOBILE EXCLUSIVOS)
   ========================================================================== */

/* 1. Título no topo antes da foto no celular */
@media (min-width: 769px) {
  .jesca-mobile-product-header {
    display: none !important;
  }
}

@media (max-width: 768px) {
  .entry-summary h1.product_title,
  .entry-summary .jesca-product-stars {
    display: none !important;
  }
  .jesca-mobile-product-header {
    display: block !important;
    padding: 0 16px !important;
    margin-bottom: 12px !important;
  }
  .jesca-mobile-product-header h1.product_title {
    font-size: 21px !important;
    line-height: 1.25 !important;
    margin-bottom: 6px !important;
    color: #01012b !important;
  }
  .jesca-mobile-product-header .jesca-product-stars {
    margin-bottom: 8px !important;
  }
}

/* 2. Etiqueta discreta com o nome da cor junto da foto principal */
.jesca-gallery-color-tag {
  position: absolute !important;
  bottom: 12px !important;
  left: 12px !important;
  background: rgba(1, 1, 43, 0.78) !important;
  backdrop-filter: blur(4px) !important;
  color: #ffffff !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  padding: 4px 10px !important;
  border-radius: 6px !important;
  z-index: 15 !important;
  pointer-events: none !important;
  letter-spacing: 0.3px !important;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2) !important;
}

/* 3. Setas da galeria: ambas sempre visíveis, dentro da foto, toque ≥ 40px */
.jesca-gallery-nav {
  position: absolute !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: 44px !important;
  height: 44px !important;
  border-radius: 50% !important;
  background: rgba(255, 255, 255, 0.88) !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.16) !important;
  border: none !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #01012b !important;
  z-index: 20 !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
}

.jesca-gallery-prev {
  left: 10px !important;
}

.jesca-gallery-next {
  right: 10px !important;
}

.jesca-gallery-nav:hover {
  background: #ffffff !important;
  color: #01012b !important;
  transform: translateY(-50%) scale(1.08) !important;
}

/* 4. Cartela de cores quadrada no celular (≈36px com espaço 3-4px, ~8-9 por linha) — Etapa 8m */
@media (max-width: 768px) {
  .woo-variation-swatches .variable-items-wrapper .variable-item,
  .woo-variation-swatches .variable-items-wrapper .variable-item.jesca-has-photo-swatch,
  .woo-variation-swatches .variable-items-wrapper .variable-item.color-variable-item,
  .woo-variation-swatches .variable-items-wrapper .variable-item.button-variable-item {
    width: 36px !important;
    height: 36px !important;
    min-width: 36px !important;
    min-height: 36px !important;
    margin: 2px !important;
    padding: 1px !important;
    border-radius: 3px !important;
  }
  .woo-variation-swatches .variable-items-wrapper .variable-item .variable-item-span.jesca-swatch-photo,
  .woo-variation-swatches .variable-items-wrapper .variable-item .variable-item-span-color,
  .woo-variation-swatches .variable-items-wrapper .variable-item .variable-item-span {
    width: 100% !important;
    height: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    border-radius: 2px !important;
  }
}

/* 5. Newsletter reduzida na página do produto no celular */
@media (max-width: 768px) {
  .single-product .jesca-newsletter-section {
    padding: 24px 16px !important;
    margin: 24px 0 16px 0 !important;
  }
  .single-product .jesca-newsletter-title {
    font-size: 20px !important;
    line-height: 1.25 !important;
    margin-bottom: 6px !important;
  }
  .single-product .jesca-newsletter-desc {
    font-size: 13px !important;
    margin-bottom: 14px !important;
  }
  .single-product .jesca-newsletter-form {
    gap: 8px !important;
  }
  .single-product .jesca-newsletter-form input {
    height: 42px !important;
    padding: 8px 12px !important;
    font-size: 13.5px !important;
  }
  .single-product .jesca-newsletter-form button {
    height: 42px !important;
    padding: 8px 16px !important;
    font-size: 13.5px !important;
  }
}

/* 6. Produtos relacionados e visualizados visíveis no celular (carrossel 2 por vez) */
.single-product .related.products.ct-hidden-sm,
.single-product .related.products.ct-hidden-md,
.single-product section.related.ct-hidden-sm,
.single-product section.related.ct-hidden-md {
  display: block !important;
}

@media (max-width: 768px) {
  .single-product .related.products {
    padding: 0 16px !important;
    margin-top: 30px !important;
  }
  .single-product .related.products > h2 {
    font-size: 18px !important;
    margin-bottom: 12px !important;
    padding: 0 !important;
  }
  .single-product .related.products ul.products {
    display: flex !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
    scroll-snap-type: x mandatory !important;
    gap: 12px !important;
    padding: 4px 0 16px 0 !important;
    margin: 0 !important;
  }
  .single-product .related.products ul.products::-webkit-scrollbar {
    display: none !important;
  }
  .single-product .related.products ul.products li.product {
    flex: 0 0 calc((100% - 12px) / 2) !important;
    min-width: 155px !important;
    max-width: 185px !important;
    scroll-snap-align: start !important;
    margin: 0 !important;
  }
}

/* ==========================================================================
   ETAPA 8i: CELULAR - MENU LATERAL (DRAWER) + VITRINES DA HOME EM 1 LINHA
   ========================================================================== */

/* 1. Menu Lateral Mobile: primeiro item "Ver tudo em..." com destaque sutil */
.jesca-drawer-nav .drawer-submenu li.jesca-see-all a {
  font-weight: 700 !important;
  color: #01012b !important;
  border-bottom: 1px dashed #cbd5e1 !important;
  padding-bottom: 8px !important;
  margin-bottom: 6px !important;
  display: block !important;
}

/* 2. Vitrines da Home: Sobrescrever display:grid do Blocksy com alta especificidade */
.jesca-carousel-wrap .jesca-product-carousel-track,
.jesca-carousel-wrap ul.products.jesca-product-carousel-track,
.woocommerce .jesca-carousel-wrap ul.products.jesca-product-carousel-track,
.woocommerce-page .jesca-carousel-wrap ul.products.jesca-product-carousel-track,
body.home .jesca-carousel-wrap ul.products {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  overflow-x: auto !important;
  scroll-snap-type: x mandatory !important;
  scroll-behavior: smooth !important;
  -webkit-overflow-scrolling: touch !important;
  list-style: none !important;
  scrollbar-width: none !important;
  grid-template-columns: none !important;
  grid-auto-flow: column !important;
}

.jesca-carousel-wrap .jesca-product-carousel-track::-webkit-scrollbar,
.jesca-carousel-wrap ul.products.jesca-product-carousel-track::-webkit-scrollbar,
body.home .jesca-carousel-wrap ul.products::-webkit-scrollbar {
  display: none !important;
}

/* No celular: exatamente 2 cards por vez em UMA linha única que desliza */
@media (max-width: 768px) {
  .jesca-carousel-wrap {
    padding: 0 4px !important;
    margin: 10px 0 28px 0 !important;
    position: relative !important;
  }

  .jesca-carousel-wrap .jesca-product-carousel-track,
  .jesca-carousel-wrap ul.products.jesca-product-carousel-track,
  .woocommerce .jesca-carousel-wrap ul.products.jesca-product-carousel-track,
  body.home .jesca-carousel-wrap ul.products {
    gap: 10px !important;
    padding: 8px 4px 16px 4px !important;
    scroll-padding: 4px !important;
  }

  .jesca-carousel-wrap .jesca-product-carousel-track > li.product,
  .jesca-carousel-wrap ul.products.jesca-product-carousel-track > li.product,
  .woocommerce .jesca-carousel-wrap ul.products.jesca-product-carousel-track > li.product,
  body.home .jesca-carousel-wrap ul.products > li.product {
    flex: 0 0 calc((100% - 10px) / 2) !important;
    min-width: calc((100% - 10px) / 2) !important;
    max-width: calc((100% - 10px) / 2) !important;
    width: calc((100% - 10px) / 2) !important;
    scroll-snap-align: start !important;
    margin: 0 !important;
    box-sizing: border-box !important;
  }

  /* Setas do carrossel no celular: centralizadas verticalmente na única linha de cards */
  .jesca-carousel-wrap .jesca-nav-prev,
  .jesca-carousel-wrap .jesca-nav-next {
    position: absolute !important;
    top: 45% !important;
    transform: translateY(-50%) !important;
    width: 36px !important;
    height: 36px !important;
    border-radius: 50% !important;
    background: rgba(255, 255, 255, 0.92) !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.18) !important;
    border: none !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    z-index: 10 !important;
    color: #01012b !important;
    cursor: pointer !important;
    padding: 0 !important;
  }

  .jesca-carousel-wrap .jesca-nav-prev {
    left: 2px !important;
  }

  .jesca-carousel-wrap .jesca-nav-next {
    right: 2px !important;
  }
}

/* ==========================================================================
   ETAPA 8j: MINI BANNERS DA HOME (ALÇAS, FIOS, FERRAGENS)
   ========================================================================== */
/* ==========================================================================
   ETAPA 8m: AJUSTES DE HOMOLOGAÇÃO VISUAL (01/11)
   ========================================================================== */

/* 1. MINI BANNERS DA HOME (DESKTOP CENTRALIZADO NO CONTAINER + MOBILE 1 POR VEZ COM DOTS) */
body.home .entry-content > .jesca-mini-banners-section,
body.home .entry-content.is-layout-constrained > .jesca-mini-banners-section,
.jesca-mini-banners-section {
  width: 100% !important;
  max-width: 1320px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  margin-top: 32px !important;
  margin-bottom: 28px !important;
  padding: 0 16px !important;
  box-sizing: border-box !important;
}

.jesca-mini-banners-container {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 auto !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

.jesca-mini-banners-grid {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 20px !important;
  width: 100% !important;
  align-items: stretch !important;
}

.jesca-mini-banner-item {
  display: block !important;
  position: relative !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.06) !important;
  transition: transform 0.25s ease, box-shadow 0.25s ease !important;
  background: #f8fafc !important;
}

.jesca-mini-banner-item:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12) !important;
}

.jesca-mini-banner-img {
  width: 100% !important;
  height: auto !important;
  display: block !important;
  border-radius: 12px !important;
  object-fit: cover !important;
  aspect-ratio: 16 / 9 !important;
}

.jesca-mini-banners-dots {
  display: none !important;
}

/* 2. HERO SLIDER NO CELULAR SEM VÃO BRANCO (ITEM 2) */
@media (max-width: 768px) {
  .jesca-shopify-banner-slider,
  .jesca-shopify-banner-slider .swiper-wrapper,
  .jesca-shopify-banner-slider .swiper-slide {
    aspect-ratio: auto !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
  }

  .jesca-shopify-banner-slider .jesca-banner-track {
    position: relative !important;
    width: 100% !important;
    height: auto !important;
  }

  .jesca-shopify-banner-slider .jesca-banner-slide {
    position: relative !important;
    width: 100% !important;
    height: auto !important;
  }

  .jesca-shopify-banner-slider .jesca-banner-slide:not(.active) {
    display: none !important;
    position: absolute !important;
  }

  .jesca-shopify-banner-slider .jesca-banner-slide img {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: auto !important;
    display: block !important;
    object-fit: contain !important;
  }

  .jesca-shopify-banner-slider .jesca-banner-controls {
    bottom: 8px !important;
  }

  /* 3. FAIXA DE BENEFÍCIOS NO CELULAR: 2 POR TELA COM SCROLL-SNAP (ITEM 3) */
  .jesca-benefits-bar-shopify {
    padding: 12px 0 10px 0 !important;
    overflow: hidden !important;
    border-bottom: 1px solid #f1f5f9 !important;
  }

  .jesca-benefits-container {
    display: flex !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory !important;
    -webkit-overflow-scrolling: touch !important;
    gap: 10px !important;
    padding: 0 12px !important;
    scrollbar-width: none !important;
  }

  .jesca-benefits-container::-webkit-scrollbar {
    display: none !important;
  }

  .jesca-benefit-item {
    flex: 0 0 calc((100% - 10px) / 2) !important;
    min-width: calc((100% - 10px) / 2) !important;
    max-width: calc((100% - 10px) / 2) !important;
    scroll-snap-align: start !important;
    box-sizing: border-box !important;
    padding: 8px 6px !important;
    background: #f8fafc !important;
    border-radius: 8px !important;
    border: 1px solid #e2e8f0 !important;
    align-items: center !important;
  }

  .jesca-benefit-item strong {
    font-size: 11px !important;
    line-height: 1.2 !important;
  }

  .jesca-benefit-item span {
    font-size: 10px !important;
  }

  /* 4. VITRINES NO CELULAR: CARDS MAIS LARGOS, SETAS 28px NA ALTURA DA FOTO, BOTÕES 32px (ITEM 4) */
  .jesca-product-carousel-track {
    gap: 8px !important;
    padding: 8px 6px 14px 6px !important;
  }

  .jesca-product-carousel-track > li.product {
    flex: 0 0 calc((100% - 8px) / 2) !important;
    min-width: calc((100% - 8px) / 2) !important;
    max-width: calc((100% - 8px) / 2) !important;
    padding: 6px !important;
  }

  .jesca-carousel-nav {
    display: flex !important;
    width: 28px !important;
    height: 28px !important;
    line-height: 28px !important;
    border-radius: 50% !important;
    top: 85px !important;
    transform: translateY(-50%) !important;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.18) !important;
    z-index: 10 !important;
  }

  .jesca-carousel-nav svg {
    width: 14px !important;
    height: 14px !important;
  }

  .jesca-nav-prev {
    left: 2px !important;
  }

  .jesca-nav-next {
    right: 2px !important;
  }

  .woocommerce ul.products li.product .button,
  .woocommerce ul.products li.product a.button,
  .jesca-product-carousel-track li.product .button {
    height: 32px !important;
    line-height: 32px !important;
    font-size: 12px !important;
    padding: 0 8px !important;
  }

  .jesca-btn-whatsapp-loop {
    height: 32px !important;
    line-height: 32px !important;
    font-size: 12px !important;
    padding: 0 8px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    box-sizing: border-box !important;
  }

  .jesca-btn-wpp-desktop,
  .jesca-btn-whatsapp-text-desktop {
    display: none !important;
  }

  .jesca-btn-wpp-mobile,
  .jesca-btn-whatsapp-text-mobile {
    display: inline !important;
  }

  /* MINI BANNERS NO CELULAR: 1 BANNER POR VEZ COM LARGURA ÚTIL + DOTS */
  .jesca-mini-banners-section {
    margin: 20px 0 16px 0 !important;
    padding: 0 !important;
  }

  .jesca-mini-banners-container {
    padding: 0 !important;
    overflow: hidden !important;
  }

  .jesca-mini-banners-grid {
    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;
    gap: 12px !important;
    padding: 6px 16px 10px 16px !important;
    scrollbar-width: none !important;
  }

  .jesca-mini-banners-grid::-webkit-scrollbar {
    display: none !important;
  }

  .jesca-mini-banner-item {
    flex: 0 0 calc(100vw - 32px) !important;
    min-width: calc(100vw - 32px) !important;
    max-width: calc(100vw - 32px) !important;
    scroll-snap-align: center !important;
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.08) !important;
  }

  .jesca-mini-banner-item:hover {
    transform: none !important;
  }

  .jesca-mini-banners-dots {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 8px !important;
    margin-top: 8px !important;
    padding: 4px 0 !important;
  }

  .jesca-mb-dot {
    width: 8px !important;
    height: 8px !important;
    border-radius: 50% !important;
    background: #cbd5e1 !important;
    border: none !important;
    padding: 0 !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
  }

  .jesca-mb-dot.active {
    background: #01012b !important;
    width: 22px !important;
    border-radius: 4px !important;
  }

  /* 6. GALERIA NO CELULAR: CARROSSEL CONTÍNUO COM TODAS AS FOTOS SEM BOTÃO DE COLAPSO (ITEM 6) */
  #jesca-toggle-thumbs,
  .jesca-gallery-toggle-thumbs {
    display: none !important;
  }

  .jesca-gallery-thumbs-wrapper,
  .jesca-gallery-thumbs-wrapper.is-collapsed,
  .jesca-gallery-thumbs-wrapper.is-expanded {
    max-height: none !important;
    overflow: visible !important;
  }

  .jesca-gallery-thumbs {
    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;
    max-height: none !important;
    gap: 8px !important;
    padding: 6px 4px 12px 4px !important;
    scrollbar-width: thin !important;
  }

  .jesca-gallery-thumb {
    flex: 0 0 52px !important;
    width: 52px !important;
    height: 52px !important;
    min-width: 52px !important;
    scroll-snap-align: start !important;
    border-radius: 4px !important;
  }
}

/* 5. ETIQUETA DA COR SOBRE A FOTO (ITEM 5) */
.jesca-gallery-color-tag {
  position: absolute !important;
  left: 12px !important;
  bottom: 12px !important;
  max-width: calc(100% - 24px) !important;
  padding: 4px 10px !important;
  background: rgba(1, 1, 43, 0.85) !important;
  color: #ffffff !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  border-radius: 4px !important;
  white-space: normal !important;
  word-break: break-word !important;
  box-sizing: border-box !important;
  z-index: 5 !important;
  backdrop-filter: blur(4px) !important;
  -webkit-backdrop-filter: blur(4px) !important;
  pointer-events: none !important;
}

/* 7. TRILHA (BREADCRUMB) NA PDP: REMOVER NOME DO PRODUTO (ITEM 7) */
.single-product .ct-breadcrumbs .last-item,
.single-product .woocommerce-breadcrumb .last-item {
  display: none !important;
}

.single-product .ct-breadcrumbs > span:nth-last-child(2) .ct-separator,
.single-product .ct-breadcrumbs > span:last-of-type .ct-separator {
  display: none !important;
}

/* ==========================================================================
   ETAPA 8q: TELA DE PEDIDO PAGO, POLLING PIX E MINHA CONTA
   ========================================================================== */

/* Fonte Maven Pro nos títulos de confirmação e ver pedido */
.woocommerce-order-received .entry-title,
.woocommerce-order-received .page-title,
.woocommerce-order-received h1,
.woocommerce-order-received h2,
.woocommerce-view-order .entry-title,
.woocommerce-view-order .page-title,
.woocommerce-view-order h1,
.woocommerce-view-order h2 {
  font-family: 'Maven Pro', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
  font-weight: 700 !important;
}

/* 1. Card de Pagamento Confirmado (Verde Sucesso) */
.jesca-order-paid-banner {
  background: #f0fdf4 !important;
  border: 1px solid #bbf7d0 !important;
  border-left: 5px solid #16a34a !important;
  border-radius: 10px !important;
  padding: 24px !important;
  margin: 20px 0 30px 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 16px !important;
  box-shadow: 0 2px 8px rgba(22, 163, 74, 0.08) !important;
}

.jesca-order-paid-icon-wrap {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  background: #16a34a;
  color: #ffffff;
  border-radius: 50%;
  font-size: 24px;
  font-weight: bold;
}

.jesca-order-paid-title {
  color: #15803d !important;
  font-size: 22px !important;
  font-weight: 700 !important;
  margin: 0 0 6px 0 !important;
  font-family: 'Maven Pro', sans-serif !important;
}

.jesca-order-paid-meta {
  color: #374151 !important;
  font-size: 14px !important;
  margin: 0 0 4px 0 !important;
}

.jesca-order-paid-desc {
  color: #1f2937 !important;
  font-size: 15px !important;
  margin: 0 !important;
}

.jesca-order-paid-action {
  margin-top: 8px;
}

/* 2. Card de Pix Expirado */
.jesca-pix-expired-banner {
  background: #fffbeb !important;
  border: 1px solid #fef3c7 !important;
  border-left: 5px solid #d97706 !important;
  border-radius: 10px !important;
  padding: 24px !important;
  margin: 20px 0 30px 0 !important;
}

.jesca-pix-expired-icon {
  font-size: 32px;
  margin-bottom: 8px;
}

.jesca-pix-expired-title {
  color: #b45309 !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  margin: 0 0 8px 0 !important;
}

.jesca-pix-expired-desc {
  color: #4b5563 !important;
  font-size: 14px !important;
  line-height: 1.5 !important;
  margin: 0 0 16px 0 !important;
}

/* 3. Card Pix Pendente (QR Code + Copia e Cola) */
.jesca-pix-pending-card {
  background: #ffffff !important;
  border: 1px solid #e5e7eb !important;
  border-radius: 12px !important;
  padding: 24px !important;
  margin: 20px 0 30px 0 !important;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.05) !important;
}

.jesca-pix-badge-pending {
  display: inline-block;
  background: #fef3c7;
  color: #b45309;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  padding: 4px 10px;
  border-radius: 4px;
  margin-bottom: 10px;
}

.jesca-pix-title {
  font-size: 20px !important;
  color: #111827 !important;
  margin: 0 0 8px 0 !important;
  font-weight: 700 !important;
}

.jesca-pix-timer-notice {
  font-size: 14px !important;
  color: #4b5563 !important;
  margin: 0 0 20px 0 !important;
}

.jesca-pix-body-grid {
  display: grid;
  grid-template-columns: 240px 1fr;
  gap: 28px;
  align-items: start;
}

@media (max-width: 768px) {
  .jesca-pix-body-grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }
}

.jesca-pix-qr-col {
  text-align: center;
}

.jesca-pix-qr-frame {
  background: #ffffff;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  padding: 10px;
  display: inline-block;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.04);
}

.jesca-qr-img {
  display: block;
  max-width: 100%;
  height: auto;
  border-radius: 4px;
}

.jesca-pix-qr-hint {
  font-size: 12px;
  color: #6b7280;
  margin-top: 8px;
}

.jesca-pix-inst-title {
  font-size: 15px !important;
  color: #111827 !important;
  font-weight: 600 !important;
  margin: 0 0 10px 0 !important;
}

.jesca-pix-steps-list {
  padding-left: 20px;
  margin: 0 0 20px 0;
  color: #374151;
  font-size: 14px;
  line-height: 1.6;
}

/* Caixa Copia e Cola Estilizada (Item 4) */
.jesca-pix-copy-box {
  background: #f9fafb;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  padding: 16px;
  margin-top: 16px;
}

.jesca-pix-copy-label {
  display: block;
  font-size: 13px;
  font-weight: 600;
  color: #374151;
  margin-bottom: 8px;
}

.jesca-pix-copy-field {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.jesca-pix-textarea {
  width: 100% !important;
  background: #ffffff !important;
  border: 1px solid #d1d5db !important;
  border-radius: 6px !important;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace !important;
  font-size: 12px !important;
  line-height: 1.4 !important;
  padding: 8px 10px !important;
  word-break: break-all !important;
  overflow-y: auto !important;
  resize: none !important;
  color: #1f2937 !important;
  box-sizing: border-box !important;
}

.jesca-btn-copy-pix {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  background: #202020 !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 6px !important;
  padding: 11px 18px !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
  text-decoration: none !important;
}

.jesca-btn-copy-pix:hover {
  background: #bfa15f !important;
  color: #ffffff !important;
}

.jesca-btn-copy-pix.copied {
  background: #16a34a !important;
  color: #ffffff !important;
}

/* Indicador de Polling */
.jesca-pix-polling-indicator {
  margin-top: 20px;
  padding-top: 16px;
  border-top: 1px solid #f3f4f6;
  font-size: 13px;
  color: #6b7280;
  display: flex;
  align-items: center;
  gap: 10px;
}

.jesca-pulse-dot {
  display: inline-block;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #16a34a;
  box-shadow: 0 0 0 rgba(22, 163, 74, 0.4);
  animation: jescaPulse 1.8s infinite;
}

@keyframes jescaPulse {
  0% { transform: scale(0.95); box-shadow: 0 0 0 0 rgba(22, 163, 74, 0.7); }
  70% { transform: scale(1); box-shadow: 0 0 0 6px rgba(22, 163, 74, 0); }
  100% { transform: scale(0.95); box-shadow: 0 0 0 0 rgba(22, 163, 74, 0); }
}

.jesca-animated-fade-in {
  animation: jescaFadeIn 0.4s ease-out;
}

@keyframes jescaFadeIn {
  from { opacity: 0; transform: translateY(-6px); }
  to { opacity: 1; transform: translateY(0); }
}

/* 4. Botão "← Voltar para meus pedidos" (Item 7) */
.jesca-back-orders-wrap {
  margin: 15px 0 25px 0;
}

.jesca-back-orders-bottom {
  margin: 30px 0 15px 0;
}

.jesca-btn-back-orders {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 9px 18px;
  background: #f4f4f5;
  color: #27272a;
  border: 1px solid #e4e4e7;
  border-radius: 6px;
  font-size: 13px;
  font-weight: 600;
  text-decoration: none;
  transition: all 0.2s ease;
}

.jesca-btn-back-orders:hover {
  background: #bfa15f;
  border-color: #bfa15f;
  color: #ffffff;
}

/* 5. Endereços em Minha Conta > Ver Pedido (Item 8) */
.jesca-customer-details-section {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  margin-top: 30px !important;
}

.jesca-addresses-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 24px !important;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  align-items: stretch !important;
}

@media (max-width: 768px) {
  .jesca-addresses-grid {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }
}

.jesca-address-card {
  background: #fcfcfc !important;
  border: 1px solid #e5e7eb !important;
  border-radius: 8px !important;
  padding: 20px !important;
  box-sizing: border-box !important;
  height: 100% !important;
}

.jesca-address-title {
  font-size: 16px !important;
  font-weight: 700 !important;
  color: #111827 !important;
  margin: 0 0 12px 0 !important;
  padding-bottom: 8px !important;
  border-bottom: 1px solid #f3f4f6 !important;
  font-family: 'Maven Pro', sans-serif !important;
}

.jesca-address-content {
  font-style: normal !important;
  font-size: 14px !important;
  line-height: 1.6 !important;
  color: #374151 !important;
}

.jesca-address-meta {
  margin: 6px 0 0 0 !important;
  font-size: 13px !important;
  color: #4b5563 !important;
}

/* 6. Tabela Detalhes do Pedido (Item 9) */
.woocommerce-table--order-details,
.woocommerce-order-details table.shop_table {
  width: 100% !important;
  max-width: 100% !important;
  table-layout: fixed !important;
  border-collapse: collapse !important;
  margin-bottom: 25px !important;
}

.woocommerce-table--order-details th.woocommerce-table__product-name,
.woocommerce-table--order-details td.woocommerce-table__product-name {
  width: auto !important;
  text-align: left !important;
  padding: 12px 16px !important;
}

.woocommerce-table--order-details th.woocommerce-table__product-table,
.woocommerce-table--order-details td.woocommerce-table__product-total {
  width: 140px !important;
  text-align: right !important;
  white-space: nowrap !important;
  padding: 12px 16px !important;
}

.woocommerce-table--order-details tfoot th {
  text-align: left !important;
  padding: 10px 16px !important;
}

.woocommerce-table--order-details tfoot td {
  width: 180px !important;
  text-align: right !important;
  white-space: nowrap !important;
  padding: 10px 16px !important;
}

/* Botão dourado reutilizável */
.button.jesca-btn-gold {
  background: #bfa15f !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 6px !important;
  padding: 11px 20px !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  text-decoration: none !important;
  display: inline-block !important;
  transition: all 0.2s ease !important;
}

.button.jesca-btn-gold:hover {
  background: #a88d4d !important;
  color: #ffffff !important;
}

/* ==========================================================================
   ETAPAS 8S & 8Q2: REGRAS DEFINITIVAS DE DESIGN, CARDS, TABELA E GAVETAS
   ========================================================================== */

/* --- ETAPA 8S: BOTÃO WHATSAPP NOS CARDS DO LOOP (CONTORNO PILL ARREDONDADO 9999PX) --- */
.jesca-btn-whatsapp-loop {
  box-sizing: border-box !important;
  text-decoration: none !important;
  font-family: inherit !important;
}

@media (max-width: 768px) {
  .woocommerce ul.products li.product .jesca-btn-whatsapp-loop,
  .jesca-btn-whatsapp.jesca-btn-whatsapp-loop,
  a.jesca-btn-whatsapp-loop {
    height: 32px !important;
    min-height: 32px !important;
    max-height: 32px !important;
    line-height: 29px !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    width: calc(100% - 16px) !important;
    margin: 6px 8px !important;
    padding: 0 10px !important;
    box-sizing: border-box !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    overflow: visible !important;
    border-radius: 9999px !important;
    border: 1.5px solid #25D366 !important;
    background: #ffffff !important;
    color: #25D366 !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
  }

  .woocommerce ul.products li.product .jesca-btn-whatsapp-loop:hover,
  .jesca-btn-whatsapp.jesca-btn-whatsapp-loop:hover,
  a.jesca-btn-whatsapp-loop:hover {
    background: #25D366 !important;
    color: #ffffff !important;
  }

  .jesca-btn-whatsapp-loop .jesca-btn-wpp-prefix,
  .jesca-btn-whatsapp-loop .jesca-btn-wpp-desktop,
  .jesca-btn-whatsapp-loop .jesca-btn-whatsapp-text-desktop {
    display: none !important;
    visibility: hidden !important;
    width: 0 !important;
    height: 0 !important;
    font-size: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .jesca-btn-whatsapp-loop .jesca-btn-wpp-label {
    display: inline !important;
    font-size: 12px !important;
    line-height: 1 !important;
  }

  .jesca-btn-whatsapp-loop svg {
    width: 15px !important;
    height: 15px !important;
    min-width: 15px !important;
    flex-shrink: 0 !important;
    fill: currentColor !important;
  }
}

@media (min-width: 769px) {
  .woocommerce ul.products li.product .jesca-btn-whatsapp-loop,
  .jesca-btn-whatsapp.jesca-btn-whatsapp-loop,
  a.jesca-btn-whatsapp-loop {
    height: 36px !important;
    font-size: 13px !important;
    width: calc(100% - 16px) !important;
    margin: 6px 8px !important;
    padding: 0 16px !important;
    box-sizing: border-box !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    border-radius: 9999px !important;
    border: 1.5px solid #25D366 !important;
    background: #ffffff !important;
    color: #25D366 !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
  }

  .woocommerce ul.products li.product .jesca-btn-whatsapp-loop:hover,
  .jesca-btn-whatsapp.jesca-btn-whatsapp-loop:hover,
  a.jesca-btn-whatsapp-loop:hover {
    background: #25D366 !important;
    color: #ffffff !important;
  }

  .jesca-btn-whatsapp-loop .jesca-btn-wpp-prefix {
    display: inline !important;
  }

  .jesca-btn-whatsapp-loop svg {
    width: 16px !important;
    height: 16px !important;
    min-width: 16px !important;
    flex-shrink: 0 !important;
    fill: currentColor !important;
  }
}

/* --- ETAPA 8S: PARCELAMENTO NOS CARDS (FONTE 11PX, QUEBRA NORMAL) --- */
.woocommerce ul.products li.product .jesca-pix-installments,
.woocommerce ul.products li.product .jesca-card-installments,
.jesca-pix-box .jesca-card-installments,
.jesca-pix-box .jesca-pix-installments {
  font-size: 11px !important;
  line-height: 1.3 !important;
  white-space: normal !important;
  overflow: visible !important;
  word-break: normal !important;
  text-align: center !important;
  display: block !important;
  color: #777777 !important;
}

/* --- ETAPA 8S EXTRA 1: ALINHAMENTO DO RODAPÉ DOS CARDS (COLUNA FLEX) --- */
.woocommerce ul.products li.product,
.woocommerce ul.products li.product .ct-product-inner,
.wc-block-grid__product {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
}

.woocommerce ul.products li.product .woocommerce-loop-product__link {
  display: flex !important;
  flex-direction: column !important;
  flex-grow: 1 !important;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product h2 {
  flex-grow: 1 !important;
  margin-bottom: 8px !important;
}

.woocommerce ul.products li.product .jesca-pix-box {
  margin-top: auto !important;
  margin-bottom: 8px !important;
}

.woocommerce ul.products li.product .jesca-loop-buy-row {
  margin-top: 0 !important;
  margin-bottom: 6px !important;
  width: 100% !important;
}

.woocommerce ul.products li.product .jesca-btn-whatsapp-loop {
  margin-top: 0 !important;
  margin-bottom: 6px !important;
}

/* --- ETAPA 8S EXTRA 2: COMPRA RÁPIDA (SELETOR DE QUANTIDADE FIXO 96PX) --- */
.jesca-qb-actions {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  width: 100% !important;
  box-sizing: border-box !important;
}
.jesca-qb-actions .is-hidden,
.jesca-qb-actions .jesca-qb-qty-picker.is-hidden,
.jesca-qb-actions .jesca-qb-buy-btn.is-hidden,
.jesca-qb-actions .jesca-qb-aviseme-btn.is-hidden {
  display: none !important;
}

.jesca-qb-qty-picker {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  border: 1px solid #d4d4d4 !important;
  border-radius: 9999px !important;
  padding: 0 4px !important;
  height: 38px !important;
  width: 96px !important;
  min-width: 96px !important;
  max-width: 96px !important;
  box-sizing: border-box !important;
  background: #ffffff !important;
  flex-shrink: 0 !important;
  overflow: hidden !important;
}

.jesca-qb-qty-btn {
  background: none !important;
  border: none !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  color: #444444 !important;
  cursor: pointer !important;
  padding: 0 !important;
  line-height: 1 !important;
  width: 26px !important;
  height: 36px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-shrink: 0 !important;
}

.jesca-qb-qty-val {
  font-size: 14px !important;
  font-weight: 600 !important;
  color: #111111 !important;
  flex: 1 !important;
  text-align: center !important;
  line-height: 1 !important;
}

.jesca-qb-submit-btn,
.jesca-qb-buy-btn {
  flex: 1 1 auto !important;
  height: 38px !important;
  background: #01012b !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 9999px !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  text-align: center !important;
}

.jesca-qb-aviseme-btn {
  width: 100% !important;
  flex: 1 1 100% !important;
  height: 38px !important;
  background: #01012b !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 9999px !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  text-align: center !important;
}

/* --- ETAPA 8S: BARRA FIXA DE COMPRA DO PRODUTO (RODAPÉ MOBILE) --- */
@media (max-width: 768px) {
  #jesca-sticky-buy-bar .jesca-sticky-buy-inst {
    display: none !important;
  }
  #jesca-sticky-buy-bar .jesca-sticky-buy-pricing {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    gap: 1px !important;
    text-align: right !important;
  }
  #jesca-sticky-buy-bar .jesca-sticky-buy-pix {
    font-size: 13px !important;
    font-weight: 700 !important;
    color: #16a34a !important;
    line-height: 1.2 !important;
    order: 1 !important;
  }
  #jesca-sticky-buy-bar .jesca-sticky-buy-cur {
    font-size: 11px !important;
    color: #6b7280 !important;
    line-height: 1.2 !important;
    order: 2 !important;
  }
}

/* --- ETAPA 8Q2: ALINHAMENTO PERFEITO DA TABELA DETALHES DO PEDIDO --- */
table.woocommerce-table--order-details,
.woocommerce-page .woocommerce-order-details table.shop_table {
  width: 100% !important;
  max-width: 100% !important;
  table-layout: fixed !important;
  border-collapse: collapse !important;
  box-sizing: border-box !important;
}

table.woocommerce-table--order-details tfoot th,
.woocommerce-page .woocommerce-order-details table.shop_table tfoot th {
  text-align: left !important;
  padding: 12px 14px !important;
  font-weight: 600 !important;
  color: #374151 !important;
  width: 45% !important;
  vertical-align: top !important;
  box-sizing: border-box !important;
}

table.woocommerce-table--order-details tfoot td,
.woocommerce-page .woocommerce-order-details table.shop_table tfoot td {
  text-align: right !important;
  padding: 12px 14px !important;
  width: 55% !important;
  vertical-align: top !important;
  box-sizing: border-box !important;
  word-break: break-word !important;
}

.jesca-order-total-cell {
  text-align: right !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

/* --- ETAPA 8Q2: ESPAÇAMENTO NA CATEGORIA E GAVETA ORDENAR --- */
@media (max-width: 768px) {
  .tax-product_cat .woo-listing-top,
  .archive .woo-listing-top,
  .woocommerce-shop .woo-listing-top {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
    overflow: hidden !important;
  }

  .jesca-category-clean-header {
    margin-bottom: 12px !important;
    padding-bottom: 0 !important;
  }
}

.jesca-sort-drawer-overlay {
  position: fixed !important;
  inset: 0 !important;
  background: rgba(0, 0, 0, 0.5) !important;
  z-index: 999999 !important;
  display: flex !important;
  align-items: flex-end !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transition: opacity 0.25s ease, visibility 0.25s ease !important;
}

.jesca-sort-drawer-overlay.is-open {
  opacity: 1 !important;
  visibility: visible !important;
}

.jesca-sort-drawer-overlay .jesca-sdrawer-sheet {
  background: #ffffff !important;
  width: 100% !important;
  border-radius: 16px 16px 0 0 !important;
  box-sizing: border-box !important;
  transform: translateY(100%) !important;
  transition: transform 0.25s cubic-bezier(0.1, 0.9, 0.2, 1) !important;
  box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.15) !important;
}

.jesca-sort-drawer-overlay.is-open .jesca-sdrawer-sheet {
  transform: translateY(0) !important;
}


    /* --- FIX LUCAS: ZERO BARRAS BRANCAS NO BANNER HERO MOBILE --- */
    @media (max-width: 768px) {
        body.home #jesca-mob-header {
            margin-bottom: 0 !important;
        }
        body.home .site-main,
        body.home .ct-container-full,
        body.home article.page,
        body.home .entry-content,
        body.home .entry-content.is-layout-constrained {
            padding-top: 0 !important;
            margin-top: 0 !important;
        }
        .jesca-shopify-banner-slider {
            aspect-ratio: auto !important;
            height: auto !important;
            min-height: 0 !important;
            max-height: none !important;
            background: transparent !important;
            margin-top: 0 !important;
            margin-bottom: 0 !important;
            padding: 0 !important;
        }
        .jesca-shopify-banner-slider .jesca-banner-track {
            margin: 0 !important;
            padding: 0 !important;
            height: auto !important;
            position: relative !important;
        }
        .jesca-shopify-banner-slider .jesca-banner-slide {
            margin: 0 !important;
            padding: 0 !important;
            height: auto !important;
        }
        .jesca-shopify-banner-slider .jesca-banner-slide img {
            width: 100% !important;
            height: auto !important;
            display: block !important;
            margin: 0 !important;
            padding: 0 !important;
            object-fit: cover !important;
        }
        .jesca-banner-controls,
        .jesca-shopify-banner-slider .jesca-banner-controls {
            position: absolute !important;
            bottom: 8px !important;
            left: 50% !important;
            transform: translateX(-50%) !important;
            background: transparent !important;
            padding: 0 !important;
            margin: 0 !important;
            z-index: 10 !important;
        }
        .jesca-benefits-bar-shopify {
            margin-top: 0 !important;
            padding-top: 10px !important;
        }
    }

    

/* --- FIX LUCAS: CARDS DE FRETE EM 2 LINHAS (UMA EM BAIXO DA OUTRA) --- */
ul#shipping_method,
.shipping-method__options {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 0 10px 0 !important;
  width: 100% !important;
}

ul#shipping_method li,
li.shipping-method__option {
  display: flex !important;
  align-items: flex-start !important;
  padding: 10px 14px !important;
  border: 1.5px solid #e2e8f0 !important;
  border-radius: 8px !important;
  background: #ffffff !important;
  transition: all 0.15s ease !important;
  cursor: pointer !important;
  margin-bottom: 8px !important;
  box-sizing: border-box !important;
  width: 100% !important;
  min-width: 0 !important;
  position: relative !important;
  overflow: visible !important;
}

ul#shipping_method li:hover,
li.shipping-method__option:hover {
  border-color: #01012b !important;
  background: #f8fafc !important;
}

ul#shipping_method li:has(input[type="radio"]:checked),
li.shipping-method__option:has(input[type="radio"]:checked),
li.shipping-method__option.is-selected {
  border-color: #01012b !important;
  background: #f8fafc !important;
  box-shadow: 0 0 0 1px #01012b !important;
}

ul#shipping_method li input[type="radio"],
li.shipping-method__option input[type="radio"] {
  margin: 3px 12px 0 0 !important;
  accent-color: #01012b !important;
  cursor: pointer !important;
  flex-shrink: 0 !important;
  width: 16px !important;
  height: 16px !important;
}

ul#shipping_method li label,
li.shipping-method__option label,
.jesca-shipping-card-label {
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  min-width: 0 !important;
  flex: 1 1 auto !important;
  margin: 0 !important;
  padding: 0 !important;
  cursor: pointer !important;
}

.jesca-shipping-card-content {
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  min-width: 0 !important;
  gap: 3px !important;
}

.jesca-shipping-line1 {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
  min-width: 0 !important;
  gap: 8px !important;
}

.jesca-shipping-carrier {
  font-family: var(--jesca-font-maven, sans-serif) !important;
  font-weight: 600 !important;
  font-size: 13.5px !important;
  color: #1e293b !important;
  line-height: 1.3 !important;
  text-align: left !important;
  white-space: normal !important;
  word-break: break-word !important;
  flex: 1 1 auto !important;
}

.jesca-shipping-price {
  font-family: var(--jesca-font-maven, sans-serif) !important;
  font-weight: 700 !important;
  font-size: 14px !important;
  color: #0f172a !important;
  white-space: nowrap !important;
  margin-left: auto !important;
  flex-shrink: 0 !important;
  line-height: 1.3 !important;
}

.jesca-shipping-line2 {
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
  font-size: 12px !important;
  color: #64748b !important;
  line-height: 1.3 !important;
  flex-wrap: wrap !important;
  margin-top: 2px !important;
}

.jesca-shipping-time {
  font-size: 12px !important;
  color: #64748b !important;
  font-weight: normal !important;
}

.jesca-shipping-dot {
  font-size: 12px !important;
  color: #94a3b8 !important;
  font-weight: 700 !important;
}

.jesca-shipping-badge {
  font-size: 10px !important;
  font-weight: 700 !important;
  padding: 2px 7px !important;
  border-radius: 4px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.3px !important;
  display: inline-block !important;
}

.jesca-shipping-badge.badge-eco {
  background: #dcfce7 !important;
  color: #15803d !important;
}

.jesca-shipping-badge.badge-fast {
  background: #ede9fe !important;
  color: #6d28d9 !important;
}

/* Review Order Table Summary Cell */
.jesca-summary-shipping-cell {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-end !important;
  text-align: right !important;
  gap: 2px !important;
  width: 100% !important;
}

.jesca-summary-shipping-line1 {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 8px !important;
  width: 100% !important;
}

.jesca-summary-shipping-carrier {
  font-size: 13px !important;
  color: #374151 !important;
  font-weight: 500 !important;
  text-align: right !important;
}

.jesca-summary-shipping-price {
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #111111 !important;
  white-space: nowrap !important;
}

.jesca-summary-shipping-line2 {
  font-size: 11.5px !important;
  color: #6b7280 !important;
  text-align: right !important;
}

/* ==========================================================================
   ETAPA 9L2 — SELETOR SEGMENTADO TIPO DE PESSOA (PF / PJ) NO TOPO
   ========================================================================== */
.jesca-persontype-field-wrap {
  margin-bottom: 22px !important;
}

.jesca-pt-segmented-control {
  display: flex !important;
  gap: 10px !important;
  width: 100% !important;
  margin-top: 4px !important;
}

.jesca-pt-btn {
  flex: 1 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  padding: 12px 16px !important;
  border: 1.5px solid #cbd5e1 !important;
  border-radius: 8px !important;
  background: #ffffff !important;
  color: #475569 !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  user-select: none !important;
  transition: all 0.2s ease !important;
}

.jesca-pt-btn.active {
  border-color: #0b1736 !important;
  background: #0b1736 !important;
  color: #ffffff !important;
  box-shadow: 0 2px 6px rgba(11, 23, 54, 0.15) !important;
}

.jesca-pt-btn:hover:not(.active) {
  border-color: #94a3b8 !important;
  background: #f8fafc !important;
}

.jesca-pt-btn input[type="radio"] {
  position: absolute !important;
  opacity: 0 !important;
  pointer-events: none !important;
  margin: 0 !important;
}

@media (max-width: 480px) {
  .jesca-pt-btn {
    padding: 10px 12px !important;
    font-size: 13px !important;
  }
}

