/* =========================================================
   MSDEV - Farmácia Belladona | Máscara GERAL do Cabeçalho
   Arquivo: bella-dona-geral.css
   Contém SOMENTE as regras do cabeçalho (barra de avisos,
   barra social, logo, busca, conta, carrinho e menu de
   categorias, versões desktop e mobile).

   Todas as regras abaixo estão condicionadas à classe
   "msbd-cabecalho-geral", que o bella-dona-geral.js adiciona
   automaticamente ao <body> em QUALQUER página da loja (home,
   PDP, checkout etc.) - por isso este arquivo funciona como
   máscara geral do cabeçalho, e não apenas na home.
   ========================================================= */

/* ---------------------------------------------------------
   Variáveis base (necessárias para as cores do cabeçalho)
   --------------------------------------------------------- */
body.msbd-cabecalho-geral{--p950:#26102e;--p900:#3b1747;--p800:#5f1b72;--p700:#78288e;--p600:#9a4cad;--p100:#f6eef7;--gold:#c8a45d;--gold2:#ead8aa;--ink:#24112b;--muted:#6d5c72;--line:rgba(95,27,114,.13);--shadow:0 28px 90px rgba(52,18,63,.14)}
body.msbd-cabecalho-geral *{box-sizing:border-box}
body.msbd-cabecalho-geral a{text-decoration:none}

/* =========================================================
   V06 - Correção do texto cortado no carrinho do cabeçalho
   ========================================================= */
body.msbd-cabecalho-geral #cabecalho .carrinho .vazio-text,
body.msbd-cabecalho-geral #cabecalho .carrinho > a > span > span{
  display:none!important;
}

/* =========================================================
   V06 - Barra de newsletter (topo)
   ========================================================= */
body.msbd-cabecalho-geral #barraNewsletter{background:linear-gradient(90deg,#2b1034,#5f1b72 55%,#2b1034)!important;border-bottom:1px solid rgba(234,216,170,.2)!important}
body.msbd-cabecalho-geral #barraNewsletter .componente.newsletter{border:0!important;background:transparent!important;box-shadow:none!important}
body.msbd-cabecalho-geral #barraNewsletter .titulo,
body.msbd-cabecalho-geral #barraNewsletter .texto-newsletter{color:#fff!important}
body.msbd-cabecalho-geral #barraNewsletter input{border-radius:999px!important;border:1px solid rgba(234,216,170,.32)!important;background:#fffdf9!important;color:var(--ink)!important;min-height:38px!important;padding:0 14px!important}
body.msbd-cabecalho-geral #barraNewsletter .newsletter-assinar{border-radius:999px!important;background:linear-gradient(135deg,#fffaf0,#ead8aa)!important;color:#26102e!important;border:1px solid rgba(234,216,170,.36)!important}

/* =========================================================
   V06 - Barra social (redes sociais e contato)
   ========================================================= */
body.msbd-cabecalho-geral .barra-inicial{background:#2b1034!important;border-bottom:1px solid rgba(234,216,170,.18)!important}
body.msbd-cabecalho-geral .barra-inicial,
body.msbd-cabecalho-geral .barra-inicial a,
body.msbd-cabecalho-geral .barra-inicial span,
body.msbd-cabecalho-geral .barra-inicial i{color:rgba(255,255,255,.94)!important}
body.msbd-cabecalho-geral .barra-inicial .lista-redes a{width:28px!important;height:28px!important;display:inline-grid!important;place-items:center!important;border-radius:999px!important;background:rgba(255,255,255,.12)!important;border:1px solid rgba(234,216,170,.18)!important}

/* =========================================================
   V06 - Cabeçalho (logo, conta, carrinho, busca)
   ========================================================= */
body.msbd-cabecalho-geral #cabecalho{background:rgba(255,253,249,.96)!important;backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);border-bottom:1px solid rgba(95,27,114,.1)!important;box-shadow:0 1px 0 rgba(95,27,114,.08),0 18px 48px rgba(52,18,63,.05)!important}
body.msbd-cabecalho-geral #cabecalho .conteiner{padding-top:14px!important;padding-bottom:12px!important}
body.msbd-cabecalho-geral #cabecalho .logo img{max-height:82px!important;object-fit:contain!important}
body.msbd-cabecalho-geral #cabecalho .bem-vindo,
body.msbd-cabecalho-geral #cabecalho .acoes-conta a,
body.msbd-cabecalho-geral #cabecalho .carrinho a,
body.msbd-cabecalho-geral #cabecalho .carrinho .vazio-text{color:var(--p800)!important}
body.msbd-cabecalho-geral #cabecalho .acoes-conta li i,
body.msbd-cabecalho-geral #cabecalho .carrinho i,
body.msbd-cabecalho-geral .fundo-principal{background:linear-gradient(135deg,var(--p800),var(--p600))!important;color:#fff!important}
body.msbd-cabecalho-geral #cabecalho .busca{border:1px solid rgba(200,164,93,.26)!important;border-radius:999px!important;overflow:hidden!important;background:#fff!important;box-shadow:0 16px 42px rgba(52,18,63,.07)!important}
body.msbd-cabecalho-geral #cabecalho .busca input{border:0!important;background:transparent!important;min-height:46px!important;padding:0 18px!important;color:var(--ink)!important}
body.msbd-cabecalho-geral #cabecalho .busca input::placeholder{color:rgba(36,17,43,.58)!important}
body.msbd-cabecalho-geral #cabecalho .busca .botao-busca{min-width:54px!important;min-height:42px!important;margin:2px!important;border-radius:999px!important;background:linear-gradient(135deg,var(--p800),var(--p600))!important;color:#fff!important}

/* =========================================================
   V06 - Menu de categorias (desktop, base)
   ========================================================= */
body.msbd-cabecalho-geral #cabecalho .menu.superior{background:#fffdf9!important;border-top:1px solid rgba(95,27,114,.08)!important;border-bottom:1px solid rgba(95,27,114,.08)!important}
body.msbd-cabecalho-geral #cabecalho .menu.superior>ul.nivel-um{display:flex!important;justify-content:center!important;gap:4px!important;max-width:1240px!important;margin:0 auto!important;padding:8px 12px!important}
body.msbd-cabecalho-geral #cabecalho .menu.superior>ul.nivel-um>li{border:0!important;background:transparent!important}
body.msbd-cabecalho-geral #cabecalho .menu.superior>ul.nivel-um>li>a{min-height:42px!important;display:flex!important;align-items:center!important;gap:7px!important;border-radius:999px!important;padding:0 12px!important;color:var(--p800)!important;transition:.2s ease!important}
body.msbd-cabecalho-geral #cabecalho .menu.superior>ul.nivel-um>li>a strong{color:var(--p800)!important;font-weight:900!important;font-size:.92rem!important}
body.msbd-cabecalho-geral #cabecalho .menu.superior>ul.nivel-um>li:hover>a{background:#fbf4e6!important}
.menu.superior .nivel-dois,
.menu.superior .nivel-tres{border:1px solid rgba(200,164,93,.18)!important;border-radius:18px!important;box-shadow:0 24px 70px rgba(52,18,63,.14)!important;background:#fffdf9!important;overflow:hidden!important}

/* =========================================================
   V06 - Drawer/menu mobile (estrutura base)
   ========================================================= */
.msbd-mobile-overlay{position:fixed;inset:0;z-index:9998;background:rgba(36,17,43,.46);opacity:0;pointer-events:none;transition:.25s ease}
body.msbd-mobile-menu-open .msbd-mobile-overlay{opacity:1;pointer-events:auto}
.msbd-mobile-drawer{position:fixed;top:0;right:0;bottom:0;z-index:9999;width:min(88vw,380px);transform:translateX(105%);transition:transform .25s ease;overflow-y:auto;background:#fffdf9;box-shadow:-20px 0 60px rgba(0,0,0,.22);padding:18px}
body.msbd-mobile-menu-open .msbd-mobile-drawer{transform:translateX(0)}
.msbd-mobile-drawer__head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px}
.msbd-mobile-drawer__head strong{color:var(--p800);font-size:1.25rem;font-weight:950}
.msbd-mobile-drawer__close{width:42px;height:42px;min-width:42px;display:inline-grid;place-items:center;border:1px solid rgba(95,27,114,.14);border-radius:999px;background:#f6eef7;color:var(--p800);font-size:26px;line-height:1;cursor:pointer}
.msbd-mobile-menu-list,
.msbd-mobile-menu-list ul{list-style:none;padding:0;margin:0}
.msbd-mobile-menu-list>li{margin-bottom:7px}
.msbd-mobile-menu-list a{min-height:44px;display:flex!important;align-items:center;justify-content:space-between;padding:12px 14px!important;border-radius:14px;background:#fbf4e6;color:var(--ink)!important;font-size:14px;font-weight:850;line-height:1.25;border:1px solid rgba(95,27,114,.08)}
.msbd-mobile-menu-list .nivel-dois,
.msbd-mobile-menu-list .nivel-tres{display:none;padding:6px 0 0 10px}
.msbd-mobile-menu-list li.msbd-open>.nivel-dois,
.msbd-mobile-menu-list li.msbd-open>.nivel-tres{display:block}
.msbd-mobile-menu-list li.com-filho>a:after{content:"﹢";color:var(--p800);font-weight:900;margin-left:10px}
.msbd-mobile-menu-list li.com-filho.msbd-open>a:after{content:"−"}

/* =========================================================
   V06 - Cabeçalho no mobile (base)
   ========================================================= */
@media(max-width:767px){
  body.msbd-cabecalho-geral{overflow-x:hidden!important}
  body.msbd-cabecalho-geral #barraNewsletter{display:none!important}
  body.msbd-cabecalho-geral .barra-inicial{margin-top:0!important;min-height:36px!important;display:block!important}
  body.msbd-cabecalho-geral .barra-inicial .conteiner{width:100%!important;padding:6px 16px!important}
  body.msbd-cabecalho-geral .barra-inicial .lista-redes,
  body.msbd-cabecalho-geral .barra-inicial .canais-contato li.hidden-phone,
  body.msbd-cabecalho-geral .barra-inicial .canais-contato li:not(.tel-whatsapp){display:none!important}
  body.msbd-cabecalho-geral .barra-inicial .canais-contato{width:100%!important;margin:0!important}
  body.msbd-cabecalho-geral .barra-inicial .canais-contato ul{display:flex!important;justify-content:center!important;align-items:center!important;margin:0!important}
  body.msbd-cabecalho-geral .barra-inicial .tel-whatsapp{display:inline-flex!important;color:#fff!important;font-size:12px!important;font-weight:800!important}
  body.msbd-cabecalho-geral #cabecalho{position:sticky!important;top:0!important;z-index:990!important;background:rgba(255,253,249,.98)!important;border-bottom:1px solid rgba(95,27,114,.12)!important;box-shadow:0 10px 28px rgba(52,18,63,.08)!important}
  body.msbd-cabecalho-geral #cabecalho .atalhos-mobile{display:flex!important;background:transparent!important;border:0!important;padding:10px 12px 0!important}
  body.msbd-cabecalho-geral #cabecalho .atalhos-mobile ul{width:100%!important;display:grid!important;grid-template-columns:44px 44px 1fr 44px 44px!important;gap:8px!important;align-items:center!important;margin:0!important;padding:0!important}
  body.msbd-cabecalho-geral #cabecalho .atalhos-mobile li{list-style:none!important;margin:0!important;padding:0!important}
  body.msbd-cabecalho-geral #cabecalho .atalhos-mobile li.vazia{display:block!important}
  body.msbd-cabecalho-geral #cabecalho .atalhos-mobile a,
  body.msbd-cabecalho-geral #cabecalho .atalhos-mobile span{width:42px!important;height:42px!important;min-width:42px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;border-radius:14px!important;border:1px solid rgba(95,27,114,.14)!important;background:#fffaf4!important;color:var(--p800)!important;box-shadow:0 8px 18px rgba(52,18,63,.06)!important;font-size:18px!important}
  body.msbd-cabecalho-geral #cabecalho .atalhos-mobile li.fundo-principal a,
  body.msbd-cabecalho-geral #cabecalho .atalhos-mobile .icon-shopping-cart{background:linear-gradient(135deg,var(--p800),var(--p600))!important;color:#fff!important}
  body.msbd-cabecalho-geral #cabecalho>.conteiner{width:100%!important;padding:8px 12px 12px!important}
  body.msbd-cabecalho-geral #cabecalho>.conteiner>.row-fluid{display:flex!important;flex-direction:column!important;gap:10px!important;margin:0!important}
  body.msbd-cabecalho-geral #cabecalho .span3,
  body.msbd-cabecalho-geral #cabecalho .span9,
  body.msbd-cabecalho-geral #cabecalho .conteudo-topo,
  body.msbd-cabecalho-geral #cabecalho .inferior,
  body.msbd-cabecalho-geral #cabecalho .busca-mobile{width:100%!important;margin:0!important}
  body.msbd-cabecalho-geral #cabecalho .logo{margin:-46px auto 0!important;padding:0 96px!important;min-height:46px!important;display:flex!important;justify-content:center!important;align-items:center!important}
  body.msbd-cabecalho-geral #cabecalho .logo a{display:flex!important;justify-content:center!important}
  body.msbd-cabecalho-geral #cabecalho .logo img{max-width:180px!important;max-height:50px!important}
  body.msbd-cabecalho-geral #cabecalho .superior,
  body.msbd-cabecalho-geral #cabecalho .carrinho.hidden-phone,
  body.msbd-cabecalho-geral #cabecalho .menu.superior,
  body.msbd-cabecalho-geral #cabecalho .menu.superior>ul.nivel-um{display:none!important}
  body.msbd-cabecalho-geral #cabecalho .busca{height:46px!important;display:flex!important;align-items:center!important;border-radius:999px!important;background:#fff!important;overflow:hidden!important}
  body.msbd-cabecalho-geral #cabecalho .busca form{display:flex!important;align-items:center!important;width:100%!important}
  body.msbd-cabecalho-geral #cabecalho .busca input{height:44px!important;min-width:0!important;flex:1!important;font-size:14px!important;line-height:44px!important;padding:0 14px!important}
  body.msbd-cabecalho-geral #cabecalho .busca .botao-busca{width:42px!important;min-width:42px!important;height:40px!important;min-height:40px!important;padding:0!important;margin:3px!important;border-radius:999px!important}
}
@media(max-width:390px){
  body.msbd-cabecalho-geral #cabecalho .atalhos-mobile ul{grid-template-columns:40px 40px 1fr 40px 40px!important;gap:6px!important}
  body.msbd-cabecalho-geral #cabecalho .atalhos-mobile a,
  body.msbd-cabecalho-geral #cabecalho .atalhos-mobile span{width:40px!important;height:40px!important;min-width:40px!important}
  body.msbd-cabecalho-geral #cabecalho .logo{padding:0 88px!important}
  body.msbd-cabecalho-geral #cabecalho .logo img{max-width:155px!important;max-height:46px!important}
  body.msbd-cabecalho-geral #cabecalho .busca input{font-size:13px!important}
}

/* =========================================================
   V06 - Menu Desktop (correção sem quebrar o cabeçalho)
   ========================================================= */
body.msbd-cabecalho-geral {
  width: 100% !important;
  max-width: 100vw !important;
  overflow-x: hidden !important;
}

@media (min-width: 768px) {
  body.msbd-cabecalho-geral #cabecalho {
    position: relative !important;
    z-index: 50000 !important;
    overflow: visible !important;
  }

  body.msbd-cabecalho-geral #cabecalho .conteiner,
  body.msbd-cabecalho-geral #cabecalho .row-fluid,
  body.msbd-cabecalho-geral #cabecalho .conteudo-topo,
  body.msbd-cabecalho-geral #cabecalho .inferior,
  body.msbd-cabecalho-geral #cabecalho .menu.superior {
    overflow: visible !important;
  }

  body.msbd-cabecalho-geral #cabecalho > .conteiner {
    width: min(1240px, calc(100vw - 42px)) !important;
    max-width: min(1240px, calc(100vw - 42px)) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
  }

  body.msbd-cabecalho-geral #cabecalho > .conteiner > .row-fluid {
    display: block !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  body.msbd-cabecalho-geral #cabecalho .logo {
    margin: 0 !important;
    padding: 0 !important;
  }

  body.msbd-cabecalho-geral #cabecalho .logo img {
    max-width: 240px !important;
    max-height: 82px !important;
    width: auto !important;
    height: auto !important;
    object-fit: contain !important;
  }

  body.msbd-cabecalho-geral #cabecalho .busca {
    width: 100% !important;
    max-width: 100% !important;
  }

  body.msbd-cabecalho-geral #cabecalho .busca form {
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
  }

  body.msbd-cabecalho-geral #cabecalho .busca input {
    flex: 1 1 auto !important;
    min-width: 0 !important;
  }

  body.msbd-cabecalho-geral #cabecalho .menu.superior {
    width: 100% !important;
    background: #fffdf9 !important;
    border-top: 1px solid rgba(95, 27, 114, .08) !important;
    border-bottom: 1px solid rgba(95, 27, 114, .08) !important;
    overflow: visible !important;
  }

  body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um {
    width: min(1240px, calc(100vw - 42px)) !important;
    max-width: min(1240px, calc(100vw - 42px)) !important;
    min-height: 88px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 12px 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-wrap: nowrap !important;
    gap: clamp(10px, 1.15vw, 20px) !important;
    overflow: visible !important;
    box-sizing: border-box !important;
  }

  body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li.categoria-paginas,
  body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li.categoria-marcas,
  body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li.msbd-menu-force-hidden {
    display: none !important;
  }

  body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li {
    position: relative !important;
    flex: 0 1 auto !important;
    max-width: 132px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
  }

  body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li > a {
    min-height: 44px !important;
    height: auto !important;
    max-width: 132px !important;
    padding: 8px 9px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 5px !important;
    border-radius: 18px !important;
    background: transparent !important;
    color: #5f1b72 !important;
    text-align: center !important;
    line-height: 1.08 !important;
    white-space: normal !important;
    transition: .2s ease !important;
    box-sizing: border-box !important;
  }

  body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li > a strong {
    color: #5f1b72 !important;
    font-size: 13.5px !important;
    line-height: 1.08 !important;
    font-weight: 950 !important;
    letter-spacing: -.03em !important;
    text-align: center !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
  }

  body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li > a i {
    display: none !important;
  }

  body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li:hover > a,
  body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li.msbd-menu-more.msbd-open > a {
    background: #fbf4e6 !important;
    color: #3b1747 !important;
    box-shadow: 0 10px 28px rgba(52, 18, 63, .07) !important;
  }

  body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li:hover > a strong,
  body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li.msbd-menu-more.msbd-open > a strong {
    color: #3b1747 !important;
  }

  body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li.msbd-menu-more {
    display: block !important;
    position: relative !important;
    z-index: 60000 !important;
    flex: 0 0 auto !important;
    max-width: none !important;
    margin-left: 4px !important;
  }

  body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li.msbd-menu-more > a {
    min-width: 150px !important;
    max-width: 164px !important;
    min-height: 52px !important;
    padding: 8px 18px !important;
    border-radius: 999px !important;
    color: #ffffff !important;
    background: linear-gradient(135deg, #5f1b72, #8b2fa0) !important;
    box-shadow: 0 12px 30px rgba(95, 27, 114, .15) !important;
  }

  body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li.msbd-menu-more > a strong {
    color: #ffffff !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    font-size: 14px !important;
    -webkit-line-clamp: initial !important;
    overflow: visible !important;
  }

  body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li.msbd-menu-more > a strong::before {
    content: "☰";
    font-size: 17px !important;
    line-height: 1 !important;
  }

  body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li.msbd-menu-more > a::after {
    content: "⌄";
    display: inline-block !important;
    margin-left: 4px !important;
    color: #ead8aa !important;
    font-size: 14px !important;
    line-height: 1 !important;
    transform: translateY(-1px);
  }

  body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li.msbd-menu-more > ul.nivel-dois {
    position: absolute !important;
    top: calc(100% + 12px) !important;
    right: 0 !important;
    left: auto !important;
    width: min(340px, calc(100vw - 34px)) !important;
    min-width: 0 !important;
    max-width: calc(100vw - 34px) !important;
    max-height: min(520px, calc(100vh - 250px)) !important;
    display: block !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transform: translateY(10px) !important;
    padding: 12px !important;
    margin: 0 !important;
    border-radius: 22px !important;
    border: 1px solid rgba(200, 164, 93, .22) !important;
    background: #fffdf9 !important;
    box-shadow: 0 28px 80px rgba(52, 18, 63, .20) !important;
    z-index: 70000 !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    box-sizing: border-box !important;
    transition: opacity .18s ease, transform .18s ease, visibility .18s ease !important;
  }

  body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li.msbd-menu-more:hover > ul.nivel-dois,
  body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li.msbd-menu-more.msbd-open > ul.nivel-dois {
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    transform: translateY(0) !important;
  }

  body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li.msbd-menu-more > ul.nivel-dois::before {
    content: "";
    position: absolute;
    top: -10px;
    right: 34px;
    width: 18px;
    height: 18px;
    background: #fffdf9;
    border-left: 1px solid rgba(200, 164, 93, .18);
    border-top: 1px solid rgba(200, 164, 93, .18);
    transform: rotate(45deg);
  }

  body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li.msbd-menu-more > ul.nivel-dois > li {
    width: 100% !important;
    display: block !important;
    position: relative !important;
    margin: 0 0 7px !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-sizing: border-box !important;
  }

  body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li.msbd-menu-more > ul.nivel-dois > li:last-child {
    margin-bottom: 0 !important;
  }

  body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li.msbd-menu-more > ul.nivel-dois > li > a {
    width: 100% !important;
    min-height: 46px !important;
    height: auto !important;
    max-width: none !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 10px !important;
    padding: 12px 14px !important;
    border-radius: 15px !important;
    background: #fbf4e6 !important;
    color: #24112b !important;
    text-align: left !important;
    white-space: normal !important;
    border: 1px solid rgba(95, 27, 114, .08) !important;
    transition: .2s ease !important;
    box-sizing: border-box !important;
  }

  body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li.msbd-menu-more > ul.nivel-dois > li > a:hover {
    background: #f6eef7 !important;
  }

  body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li.msbd-menu-more > ul.nivel-dois > li > a strong {
    color: #5f1b72 !important;
    font-size: 14px !important;
    line-height: 1.18 !important;
    font-weight: 950 !important;
    text-align: left !important;
    display: block !important;
    overflow: visible !important;
    -webkit-line-clamp: initial !important;
  }

  body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li.msbd-menu-more > ul.nivel-dois > li.com-filho > a::after {
    content: "›";
    color: #8b6b2f;
    font-size: 20px;
    line-height: 1;
    font-weight: 900;
    transform: rotate(90deg);
  }

  body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li.msbd-menu-more > ul.nivel-dois > li.msbd-open-sub > a::after {
    transform: rotate(-90deg);
  }

  body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li.msbd-menu-more ul.nivel-dois,
  body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li.msbd-menu-more ul.nivel-tres,
  body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li.msbd-menu-more > ul.nivel-dois > li > ul {
    position: static !important;
    top: auto !important;
    right: auto !important;
    left: auto !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    display: none !important;
    padding: 6px 0 0 10px !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
    box-sizing: border-box !important;
  }

  body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li.msbd-menu-more li.msbd-open-sub > ul,
  body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li.msbd-menu-more li:hover > ul {
    display: block !important;
  }

  body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li.msbd-menu-more ul.nivel-dois li,
  body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li.msbd-menu-more ul.nivel-tres li {
    width: 100% !important;
    display: block !important;
    margin: 0 0 5px !important;
    box-sizing: border-box !important;
  }

  body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li.msbd-menu-more ul.nivel-dois li a,
  body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li.msbd-menu-more ul.nivel-tres li a {
    width: 100% !important;
    max-width: none !important;
    display: flex !important;
    align-items: center !important;
    min-height: 40px !important;
    padding: 10px 12px !important;
    border-radius: 13px !important;
    color: #24112b !important;
    background: rgba(255,255,255,.74) !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    text-align: left !important;
    box-sizing: border-box !important;
  }

  body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li.msbd-menu-more ul.nivel-dois li a:hover,
  body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li.msbd-menu-more ul.nivel-tres li a:hover {
    background: #fbf4e6 !important;
    color: #5f1b72 !important;
  }
}

@media (min-width: 768px) and (max-width: 1180px) {
  body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um {
    gap: 7px !important;
    min-height: 82px !important;
  }

  body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li,
  body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li > a {
    max-width: 116px !important;
  }

  body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li > a {
    padding-left: 7px !important;
    padding-right: 7px !important;
  }

  body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li > a strong {
    font-size: 12.5px !important;
  }

  body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li.msbd-menu-more > a {
    min-width: 138px !important;
    max-width: 150px !important;
  }
}

@media (max-width: 767px) {
  body.msbd-cabecalho-geral #cabecalho .menu.superior {
    display: none !important;
  }
}

/* =========================================================
   V17 - Cabeçalho desktop compacto (logo / busca / ações)
   ========================================================= */
@media (min-width: 768px) {
  body.msbd-cabecalho-geral #cabecalho {
    position: relative !important;
    z-index: 50000 !important;
    background: #fffdf9 !important;
    border-bottom: 1px solid rgba(95,27,114,.10) !important;
    box-shadow: 0 1px 0 rgba(95,27,114,.06), 0 14px 42px rgba(52,18,63,.045) !important;
    overflow: visible !important;
  }

  body.msbd-cabecalho-geral #cabecalho > .conteiner {
    width: min(1240px, calc(100vw - 42px)) !important;
    max-width: min(1240px, calc(100vw - 42px)) !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-top: 14px !important;
    padding-bottom: 0 !important;
    box-sizing: border-box !important;
  }

  body.msbd-cabecalho-geral #cabecalho > .conteiner > *:not(.msbd-header-main-v17):not(.menu.superior):not(.barra-inicial),
  body.msbd-cabecalho-geral #cabecalho .msbd-header-empty-v17,
  body.msbd-cabecalho-geral #cabecalho .msbd-header-hidden-original-v17,
  body.msbd-cabecalho-geral #cabecalho .msbd-header-main-v15,
  body.msbd-cabecalho-geral #cabecalho .msbd-header-main-v16 {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    overflow: hidden !important;
  }

  body.msbd-cabecalho-geral #cabecalho .msbd-header-main-v17 {
    width: 100% !important;
    min-height: 96px !important;
    display: grid !important;
    grid-template-columns: 245px minmax(460px, 1fr) 300px !important;
    gap: 28px !important;
    align-items: center !important;
    margin: 0 0 14px !important;
    padding: 0 !important;
    box-sizing: border-box !important;
  }

  body.msbd-cabecalho-geral #cabecalho .msbd-header-logo-v17,
  body.msbd-cabecalho-geral #cabecalho .msbd-header-search-v17,
  body.msbd-cabecalho-geral #cabecalho .msbd-header-actions-v17 {
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  body.msbd-cabecalho-geral #cabecalho .msbd-header-logo-v17 {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
  }

  body.msbd-cabecalho-geral #cabecalho .msbd-header-logo-v17 .logo,
  body.msbd-cabecalho-geral #cabecalho .msbd-header-logo-v17 .logo a {
    width: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: left !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  body.msbd-cabecalho-geral #cabecalho .msbd-header-logo-v17 .logo img {
    max-width: 225px !important;
    max-height: 68px !important;
    width: auto !important;
    height: auto !important;
    display: block !important;
    object-fit: contain !important;
    object-position: left center !important;
  }

  body.msbd-cabecalho-geral #cabecalho .msbd-header-search-v17 {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: center !important;
  }

  body.msbd-cabecalho-geral #cabecalho .msbd-header-search-v17 .bem-vindo {
    display: block !important;
    width: 100% !important;
    margin: 0 0 9px !important;
    padding: 0 !important;
    color: #5f1b72 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    font-size: .96rem !important;
    line-height: 1.2 !important;
    font-weight: 900 !important;
    text-align: left !important;
  }

  body.msbd-cabecalho-geral #cabecalho .msbd-header-search-v17 .busca {
    width: 100% !important;
    height: 50px !important;
    min-height: 50px !important;
    display: flex !important;
    align-items: center !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid rgba(200,164,93,.28) !important;
    border-radius: 999px !important;
    background: #ffffff !important;
    overflow: hidden !important;
    box-shadow: 0 14px 38px rgba(52,18,63,.07) !important;
  }

  body.msbd-cabecalho-geral #cabecalho .msbd-header-search-v17 .busca form {
    width: 100% !important;
    display: flex !important;
    align-items: center !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body.msbd-cabecalho-geral #cabecalho .msbd-header-search-v17 .busca input,
  body.msbd-cabecalho-geral #cabecalho .msbd-header-search-v17 .busca input[type="text"],
  body.msbd-cabecalho-geral #cabecalho .msbd-header-search-v17 .busca input[type="search"] {
    height: 48px !important;
    min-height: 48px !important;
    flex: 1 1 auto !important;
    width: auto !important;
    min-width: 0 !important;
    padding: 0 18px !important;
    margin: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: #24112b !important;
    font-size: 1rem !important;
    line-height: 48px !important;
    box-shadow: none !important;
  }

  body.msbd-cabecalho-geral #cabecalho .msbd-header-search-v17 .busca .botao-busca,
  body.msbd-cabecalho-geral #cabecalho .msbd-header-search-v17 .busca button,
  body.msbd-cabecalho-geral #cabecalho .msbd-header-search-v17 .busca input[type="submit"] {
    width: 92px !important;
    min-width: 92px !important;
    height: 44px !important;
    min-height: 44px !important;
    margin: 2px !important;
    padding: 0 16px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: linear-gradient(135deg, #5f1b72, #8b2fa0) !important;
    color: #ffffff !important;
    box-shadow: none !important;
    text-shadow: none !important;
    font-size: 0 !important;
    line-height: 1 !important;
    text-indent: 0 !important;
    overflow: hidden !important;
  }

  body.msbd-cabecalho-geral #cabecalho .msbd-header-search-v17 .busca .botao-busca::after,
  body.msbd-cabecalho-geral #cabecalho .msbd-header-search-v17 .busca button::after,
  body.msbd-cabecalho-geral #cabecalho .msbd-header-search-v17 .busca input[type="submit"]::after {
    content: "Buscar" !important;
    display: inline-block !important;
    color: #ffffff !important;
    font-size: .95rem !important;
    line-height: 1 !important;
    font-weight: 950 !important;
  }

  body.msbd-cabecalho-geral #cabecalho .msbd-header-search-v17 .busca i,
  body.msbd-cabecalho-geral #cabecalho .msbd-header-search-v17 .busca svg {
    display: none !important;
  }

  body.msbd-cabecalho-geral #cabecalho .msbd-header-actions-v17 {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: center !important;
    gap: 9px !important;
  }

  body.msbd-cabecalho-geral #cabecalho .msbd-header-actions-v17 .acoes-conta {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body.msbd-cabecalho-geral #cabecalho .msbd-header-actions-v17 .acoes-conta ul {
    width: 100% !important;
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 9px !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body.msbd-cabecalho-geral #cabecalho .msbd-header-actions-v17 .acoes-conta li {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
  }

  body.msbd-cabecalho-geral #cabecalho .msbd-header-actions-v17 .acoes-conta li a {
    width: 100% !important;
    min-height: 43px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 12px !important;
    border: 1px solid rgba(95,27,114,.12) !important;
    border-radius: 16px !important;
    background: #fffdf9 !important;
    color: #5f1b72 !important;
    font-size: .98rem !important;
    font-weight: 950 !important;
    line-height: 1.1 !important;
    text-align: center !important;
    box-shadow: none !important;
    text-shadow: none !important;
  }

  body.msbd-cabecalho-geral #cabecalho .msbd-header-actions-v17 .acoes-conta li a i,
  body.msbd-cabecalho-geral #cabecalho .msbd-header-actions-v17 .acoes-conta li a svg,
  body.msbd-cabecalho-geral #cabecalho .msbd-header-actions-v17 .acoes-conta li i {
    display: none !important;
  }

  body.msbd-cabecalho-geral #cabecalho .msbd-header-actions-v17 .carrinho,
  body.msbd-cabecalho-geral #cabecalho .msbd-header-actions-v17 .carrinho > a,
  body.msbd-cabecalho-geral #cabecalho .msbd-header-actions-v17 .carrinho .carrinho-interno {
    width: 100% !important;
    min-height: 46px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
    padding: 0 14px !important;
    border: 0 !important;
    border-radius: 16px !important;
    background: linear-gradient(135deg, #5f1b72, #8b2fa0) !important;
    color: #ffffff !important;
    box-shadow: none !important;
    text-shadow: none !important;
    overflow: hidden !important;
  }

  body.msbd-cabecalho-geral #cabecalho .msbd-header-actions-v17 .carrinho *{
    color: #ffffff !important;
    text-shadow: none !important;
  }

  body.msbd-cabecalho-geral #cabecalho .msbd-header-actions-v17 .carrinho i,
  body.msbd-cabecalho-geral #cabecalho .msbd-header-actions-v17 .carrinho svg {
    display: none !important;
  }

  body.msbd-cabecalho-geral #cabecalho .msbd-header-actions-v17 .carrinho .vazio-text,
  body.msbd-cabecalho-geral #cabecalho .msbd-header-actions-v17 .carrinho .titulo,
  body.msbd-cabecalho-geral #cabecalho .msbd-header-actions-v17 .carrinho strong,
  body.msbd-cabecalho-geral #cabecalho .msbd-header-actions-v17 .carrinho span {
    color: #ffffff !important;
    font-size: 1rem !important;
    font-weight: 950 !important;
    line-height: 1.1 !important;
    text-align: center !important;
  }

  body.msbd-cabecalho-geral #cabecalho .menu.superior {
    width: 100% !important;
    margin: 0 !important;
    background: #fffdf9 !important;
    border-top: 1px solid rgba(95,27,114,.08) !important;
    border-bottom: 1px solid rgba(95,27,114,.08) !important;
    overflow: hidden !important;
  }

  body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um {
    width: min(1240px, calc(100vw - 42px)) !important;
    max-width: min(1240px, calc(100vw - 42px)) !important;
    min-height: 64px !important;
    margin: 0 auto !important;
    padding: 8px 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    flex-wrap: nowrap !important;
    gap: 10px !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
  }

  body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li.msbd-menu-more {
    display: none !important;
  }

  body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li.categoria-paginas,
  body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li.categoria-marcas,
  body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li.msbd-menu-force-hidden {
    display: none !important;
  }

  body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li {
    position: relative !important;
    flex: 0 1 auto !important;
    max-width: 132px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
  }

  body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li > a {
    min-height: 40px !important;
    max-width: 132px !important;
    padding: 6px 3px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: transparent !important;
    color: #5f1b72 !important;
    border-radius: 14px !important;
    text-align: center !important;
    line-height: 1.08 !important;
    white-space: normal !important;
    box-shadow: none !important;
  }

  body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li > a strong {
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    color: #5f1b72 !important;
    font-size: .91rem !important;
    font-weight: 950 !important;
    line-height: 1.08 !important;
    letter-spacing: -.025em !important;
    text-align: center !important;
  }

  body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li > a i {
    display: none !important;
  }

  body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li:hover > a {
    background: #fbf4e6 !important;
  }

  body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li > ul {
    z-index: 70000 !important;
  }
}

@media (min-width: 768px) and (max-width: 1180px) {
  body.msbd-cabecalho-geral #cabecalho .msbd-header-main-v17 {
    grid-template-columns: 215px minmax(380px, 1fr) 255px !important;
    gap: 16px !important;
  }

  body.msbd-cabecalho-geral #cabecalho .msbd-header-logo-v17 .logo img {
    max-width: 200px !important;
  }

  body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um {
    gap: 7px !important;
  }

  body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li,
  body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li > a {
    max-width: 106px !important;
  }

  body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li > a strong {
    font-size: .80rem !important;
  }

  body.msbd-cabecalho-geral #cabecalho .msbd-header-search-v17 .busca .botao-busca,
  body.msbd-cabecalho-geral #cabecalho .msbd-header-search-v17 .busca button,
  body.msbd-cabecalho-geral #cabecalho .msbd-header-search-v17 .busca input[type="submit"] {
    width: 78px !important;
    min-width: 78px !important;
  }
}

@media (max-width: 767px) {
  body.msbd-cabecalho-geral #cabecalho .menu.superior {
    display: none !important;
  }
}

/* =========================================================
   V22 - Cabeçalho mobile estável (grid próprio)
   ========================================================= */
@media (max-width: 767px) {
  html,
  body.msbd-cabecalho-geral {
    width: 100% !important;
    max-width: 100vw !important;
    overflow-x: hidden !important;
  }

  body.msbd-cabecalho-geral * {
    box-sizing: border-box !important;
  }

  body.msbd-cabecalho-geral .barra-inicial {
    min-height: 32px !important;
    height: 32px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: #2b1034 !important;
    border-bottom: 1px solid rgba(234,216,170,.14) !important;
    overflow: hidden !important;
  }

  body.msbd-cabecalho-geral .barra-inicial .conteiner {
    width: 100% !important;
    max-width: 100vw !important;
    min-height: 32px !important;
    height: 32px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 10px !important;
    margin: 0 !important;
  }

  body.msbd-cabecalho-geral .barra-inicial .lista-redes,
  body.msbd-cabecalho-geral .barra-inicial .fale-conosco,
  body.msbd-cabecalho-geral .barra-inicial .telefone {
    display: none !important;
  }

  body.msbd-cabecalho-geral .barra-inicial,
  body.msbd-cabecalho-geral .barra-inicial a,
  body.msbd-cabecalho-geral .barra-inicial span,
  body.msbd-cabecalho-geral .barra-inicial i {
    color: #ffffff !important;
    font-size: .78rem !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    text-shadow: none !important;
  }

  body.msbd-cabecalho-geral #cabecalho .atalhos-mobile,
  body.msbd-cabecalho-geral #cabecalho .atalhos-menu,
  body.msbd-cabecalho-geral #cabecalho .atalho-menu,
  body.msbd-cabecalho-geral #cabecalho .atalho-conta,
  body.msbd-cabecalho-geral #cabecalho .atalho-carrinho,
  body.msbd-cabecalho-geral #cabecalho .atalho-home,
  body.msbd-cabecalho-geral #cabecalho [class*="atalho"],
  body.msbd-cabecalho-geral #cabecalho .menu-mobile,
  body.msbd-cabecalho-geral #cabecalho .botao-menu,
  body.msbd-cabecalho-geral #cabecalho .icon-home,
  body.msbd-cabecalho-geral #cabecalho .icon-user,
  body.msbd-cabecalho-geral #cabecalho .icon-shopping-cart,
  body.msbd-cabecalho-geral #cabecalho .msbd-mobile-header-v20,
  body.msbd-cabecalho-geral #cabecalho .msbd-mobile-header-v21,
  body.msbd-cabecalho-geral #cabecalho .msbd-header-main-v17,
  body.msbd-cabecalho-geral #cabecalho .msbd-header-main-v16,
  body.msbd-cabecalho-geral #cabecalho .msbd-header-main-v15,
  body.msbd-cabecalho-geral #cabecalho .menu.superior,
  body.msbd-cabecalho-geral #cabecalho .msbd-mobile-hidden-v22,
  body.msbd-cabecalho-geral #cabecalho > .conteiner > *:not(.msbd-mobile-header-v22) {
    display: none !important;
    visibility: hidden !important;
    width: 0 !important;
    height: 0 !important;
    min-width: 0 !important;
    min-height: 0 !important;
    max-width: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    overflow: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }

  body.msbd-cabecalho-geral #cabecalho {
    position: relative !important;
    z-index: 50000 !important;
    min-height: 104px !important;
    background: #fffdf9 !important;
    border-bottom: 1px solid rgba(95,27,114,.08) !important;
    box-shadow: 0 10px 26px rgba(52,18,63,.05) !important;
    overflow: visible !important;
  }

  body.msbd-cabecalho-geral #cabecalho > .conteiner {
    width: 100% !important;
    max-width: 100vw !important;
    display: block !important;
    padding: 8px 10px 12px !important;
    margin: 0 !important;
  }

  body.msbd-cabecalho-geral #cabecalho .msbd-mobile-header-v22 {
    width: 100% !important;
    display: grid !important;
    grid-template-columns: 40px minmax(0, 1fr) 88px !important;
    grid-template-areas:
      "menu logo actions"
      "search search search"
      "drawer drawer drawer" !important;
    align-items: center !important;
    gap: 8px !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
  }

  body.msbd-cabecalho-geral #cabecalho .msbd-mobile-menu-trigger-v22 {
    grid-area: menu !important;
    width: 39px !important;
    height: 39px !important;
    min-width: 39px !important;
    display: inline-grid !important;
    place-items: center !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 14px !important;
    border: 1px solid rgba(95,27,114,.14) !important;
    background: #fffdf9 !important;
    color: #5f1b72 !important;
    box-shadow: 0 8px 24px rgba(52,18,63,.07) !important;
    font-size: 1.32rem !important;
    line-height: 1 !important;
    font-weight: 950 !important;
    cursor: pointer !important;
  }

  body.msbd-cabecalho-geral #cabecalho .msbd-mobile-logo-v22 {
    grid-area: logo !important;
    min-width: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  body.msbd-cabecalho-geral #cabecalho .msbd-mobile-logo-v22 a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    max-width: 100% !important;
    text-decoration: none !important;
  }

  body.msbd-cabecalho-geral #cabecalho .msbd-mobile-logo-v22 img {
    max-width: 150px !important;
    max-height: 38px !important;
    width: auto !important;
    height: auto !important;
    display: block !important;
    object-fit: contain !important;
  }

  body.msbd-cabecalho-geral #cabecalho .msbd-mobile-actions-v22 {
    grid-area: actions !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 8px !important;
    min-width: 88px !important;
  }

  body.msbd-cabecalho-geral #cabecalho .msbd-mobile-account-v22,
  body.msbd-cabecalho-geral #cabecalho .msbd-mobile-cart-v22 {
    position: relative !important;
    width: 39px !important;
    height: 39px !important;
    min-width: 39px !important;
    display: inline-grid !important;
    place-items: center !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 14px !important;
    text-decoration: none !important;
    font-size: 0 !important;
    line-height: 1 !important;
    overflow: hidden !important;
  }

  body.msbd-cabecalho-geral #cabecalho .msbd-mobile-account-v22 {
    border: 1px solid rgba(95,27,114,.14) !important;
    background: #fffdf9 !important;
    color: #5f1b72 !important;
    box-shadow: 0 8px 24px rgba(52,18,63,.07) !important;
  }

  body.msbd-cabecalho-geral #cabecalho .msbd-mobile-account-v22::before {
    content: "●" !important;
    width: 16px !important;
    height: 16px !important;
    display: block !important;
    border-radius: 999px !important;
    color: #5f1b72 !important;
    font-size: .86rem !important;
    line-height: 16px !important;
    text-align: center !important;
    transform: translateY(-2px) !important;
  }

  body.msbd-cabecalho-geral #cabecalho .msbd-mobile-account-v22::after {
    content: "" !important;
    width: 18px !important;
    height: 9px !important;
    display: block !important;
    position: absolute !important;
    left: 50% !important;
    bottom: 9px !important;
    transform: translateX(-50%) !important;
    border-radius: 12px 12px 5px 5px !important;
    background: #5f1b72 !important;
  }

  body.msbd-cabecalho-geral #cabecalho .msbd-mobile-cart-v22 {
    border: 0 !important;
    background: linear-gradient(135deg, #5f1b72, #8b2fa0) !important;
    color: #ffffff !important;
    box-shadow: 0 8px 24px rgba(52,18,63,.09) !important;
  }

  body.msbd-cabecalho-geral #cabecalho .msbd-mobile-cart-v22::before {
    content: "🛒" !important;
    display: block !important;
    color: #ffffff !important;
    font-size: 1.12rem !important;
    line-height: 1 !important;
  }

  body.msbd-cabecalho-geral #cabecalho .msbd-mobile-search-v22 {
    grid-area: search !important;
    width: 100% !important;
    min-width: 0 !important;
  }

  body.msbd-cabecalho-geral #cabecalho .msbd-mobile-search-v22 form {
    width: 100% !important;
    height: 41px !important;
    display: flex !important;
    align-items: center !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid rgba(95,27,114,.12) !important;
    border-radius: 999px !important;
    background: #ffffff !important;
    overflow: hidden !important;
    box-shadow: 0 8px 24px rgba(52,18,63,.06) !important;
  }

  body.msbd-cabecalho-geral #cabecalho .msbd-mobile-search-v22 input {
    height: 39px !important;
    min-height: 39px !important;
    flex: 1 1 auto !important;
    width: auto !important;
    min-width: 0 !important;
    padding: 0 13px !important;
    margin: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: #24112b !important;
    font-size: .86rem !important;
    line-height: 39px !important;
    box-shadow: none !important;
  }

  body.msbd-cabecalho-geral #cabecalho .msbd-mobile-search-v22 button {
    width: 76px !important;
    min-width: 76px !important;
    height: 37px !important;
    min-height: 37px !important;
    margin: 2px !important;
    padding: 0 12px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: linear-gradient(135deg, #5f1b72, #8b2fa0) !important;
    color: #ffffff !important;
    box-shadow: none !important;
    text-shadow: none !important;
    font-size: .78rem !important;
    line-height: 1 !important;
    font-weight: 950 !important;
    overflow: hidden !important;
  }

  body.msbd-cabecalho-geral #cabecalho .msbd-mobile-drawer-v22 {
    grid-area: drawer !important;
    display: none !important;
    width: 100% !important;
    margin: 2px 0 0 !important;
    padding: 10px !important;
    background: #fffdf9 !important;
    border: 1px solid rgba(95,27,114,.10) !important;
    border-radius: 18px !important;
    box-shadow: 0 14px 38px rgba(52,18,63,.10) !important;
  }

  body.msbd-mobile-menu-open-v22.msbd-cabecalho-geral #cabecalho .msbd-mobile-drawer-v22 {
    display: block !important;
  }

  body.msbd-cabecalho-geral #cabecalho .msbd-mobile-drawer-v22 ul {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 6px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
  }

  body.msbd-cabecalho-geral #cabecalho .msbd-mobile-drawer-v22 a {
    min-height: 38px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 0 12px !important;
    border-radius: 12px !important;
    background: rgba(95,27,114,.045) !important;
    color: #5f1b72 !important;
    font-size: .92rem !important;
    line-height: 1.1 !important;
    font-weight: 900 !important;
    text-decoration: none !important;
  }

  body.msbd-cabecalho-geral #cabecalho .msbd-mobile-drawer-v22 a::after {
    content: "›" !important;
    color: #8b2fa0 !important;
    font-size: 1.2rem !important;
    line-height: 1 !important;
  }
}

/* =========================================================
   V23 - Ajuste fino do cabeçalho mobile (WhatsApp centralizado)
   ========================================================= */
@media (max-width: 767px) {
  body.msbd-cabecalho-geral .barra-inicial {
    position: relative !important;
    min-height: 30px !important;
    height: 30px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    background: #2b1034 !important;
    overflow: hidden !important;
  }

  body.msbd-cabecalho-geral .barra-inicial .conteiner {
    width: 100% !important;
    max-width: 100vw !important;
    min-height: 30px !important;
    height: 30px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    padding: 0 10px !important;
    margin: 0 auto !important;
  }

  body.msbd-cabecalho-geral .barra-inicial .conteiner > * {
    float: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
  }

  body.msbd-cabecalho-geral .barra-inicial .canais-contato,
  body.msbd-cabecalho-geral .barra-inicial .canais-contato ul,
  body.msbd-cabecalho-geral .barra-inicial .canais-contato li,
  body.msbd-cabecalho-geral .barra-inicial .canais-contato a,
  body.msbd-cabecalho-geral .barra-inicial .canais-contato span,
  body.msbd-cabecalho-geral .barra-inicial .whatsapp,
  body.msbd-cabecalho-geral .barra-inicial [class*="whatsapp"] {
    float: none !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    padding: 0 !important;
    text-align: center !important;
    color: #ffffff !important;
    font-size: .78rem !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    white-space: nowrap !important;
  }

  body.msbd-cabecalho-geral #cabecalho {
    min-height: 96px !important;
  }

  body.msbd-cabecalho-geral #cabecalho > .conteiner {
    padding-top: 5px !important;
    padding-bottom: 9px !important;
  }

  body.msbd-cabecalho-geral #cabecalho .msbd-mobile-header-v22 {
    grid-template-columns: 39px minmax(0, 1fr) 86px !important;
    gap: 6px 7px !important;
  }

  body.msbd-cabecalho-geral #cabecalho .msbd-mobile-menu-trigger-v22,
  body.msbd-cabecalho-geral #cabecalho .msbd-mobile-account-v22,
  body.msbd-cabecalho-geral #cabecalho .msbd-mobile-cart-v22 {
    width: 37px !important;
    height: 37px !important;
    min-width: 37px !important;
    border-radius: 13px !important;
  }

  body.msbd-cabecalho-geral #cabecalho .msbd-mobile-logo-v22 img {
    max-width: 146px !important;
    max-height: 36px !important;
  }

  body.msbd-cabecalho-geral #cabecalho .msbd-mobile-actions-v22 {
    min-width: 86px !important;
    gap: 7px !important;
  }

  body.msbd-cabecalho-geral #cabecalho .msbd-mobile-search-v22 form {
    height: 39px !important;
  }

  body.msbd-cabecalho-geral #cabecalho .msbd-mobile-search-v22 input {
    height: 37px !important;
    min-height: 37px !important;
    line-height: 37px !important;
  }

  body.msbd-cabecalho-geral #cabecalho .msbd-mobile-search-v22 button {
    width: 74px !important;
    min-width: 74px !important;
    height: 35px !important;
    min-height: 35px !important;
  }
}

/* =========================================================
   V25 - Mobile: remove espaço branco e corrige ícone de conta
   ========================================================= */
@media (max-width: 767px) {
  html body.msbd-cabecalho-geral #cabecalho > .atalhos-mobile,
  html body.msbd-cabecalho-geral #cabecalho > .atalhos-mobile.visible-phone,
  html body.msbd-cabecalho-geral #cabecalho > .atalhos-mobile.fundo-secundario,
  html body.msbd-cabecalho-geral #cabecalho > .atalhos-mobile.borda-principal,
  html body.msbd-cabecalho-geral #cabecalho > .atalhos-mobile.visible-phone.fundo-secundario.borda-principal {
    display: none !important;
    visibility: hidden !important;
    position: absolute !important;
    left: -9999px !important;
    top: -9999px !important;
    width: 0 !important;
    height: 0 !important;
    min-width: 0 !important;
    min-height: 0 !important;
    max-width: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    overflow: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }

  html body.msbd-cabecalho-geral #cabecalho {
    min-height: 0 !important;
    height: auto !important;
    padding: 0 !important;
    margin: 0 !important;
    background: #fffdf9 !important;
  }

  html body.msbd-cabecalho-geral #cabecalho > .conteiner {
    padding-top: 3px !important;
    padding-bottom: 8px !important;
    margin-top: 0 !important;
    min-height: 0 !important;
  }

  html body.msbd-cabecalho-geral #cabecalho .msbd-mobile-header-v22 {
    gap: 5px 7px !important;
    margin-top: 0 !important;
    padding-top: 0 !important;
    align-items: center !important;
  }

  html body.msbd-cabecalho-geral #cabecalho .msbd-mobile-menu-trigger-v22,
  html body.msbd-cabecalho-geral #cabecalho .msbd-mobile-account-v22,
  html body.msbd-cabecalho-geral #cabecalho .msbd-mobile-cart-v22 {
    width: 36px !important;
    height: 36px !important;
    min-width: 36px !important;
    min-height: 36px !important;
    border-radius: 13px !important;
  }

  html body.msbd-cabecalho-geral #cabecalho .msbd-mobile-logo-v22 img {
    max-width: 144px !important;
    max-height: 34px !important;
  }

  html body.msbd-cabecalho-geral #cabecalho .msbd-mobile-actions-v22 {
    min-width: 84px !important;
    gap: 7px !important;
  }

  html body.msbd-cabecalho-geral #cabecalho .msbd-mobile-account-v22::before {
    content: "👤" !important;
    width: auto !important;
    height: auto !important;
    display: block !important;
    color: #5f1b72 !important;
    font-size: 1rem !important;
    line-height: 1 !important;
    text-align: center !important;
    transform: none !important;
    background: transparent !important;
    border-radius: 0 !important;
  }

  html body.msbd-cabecalho-geral #cabecalho .msbd-mobile-account-v22::after {
    content: none !important;
    display: none !important;
  }

  html body.msbd-cabecalho-geral #cabecalho .msbd-mobile-search-v22 form {
    height: 38px !important;
  }

  html body.msbd-cabecalho-geral #cabecalho .msbd-mobile-search-v22 input {
    height: 36px !important;
    min-height: 36px !important;
    line-height: 36px !important;
  }

  html body.msbd-cabecalho-geral #cabecalho .msbd-mobile-search-v22 button {
    width: 72px !important;
    min-width: 72px !important;
    height: 34px !important;
    min-height: 34px !important;
  }
}

/* =========================================================
   V26 - Mobile: remove barra superior do WhatsApp
   ========================================================= */
@media (max-width: 767px) {
  html body.msbd-cabecalho-geral .barra-inicial,
  html body.msbd-cabecalho-geral .barra-inicial.fundo-secundario,
  html body.msbd-cabecalho-geral .barra-inicial.hidden-phone,
  html body.msbd-cabecalho-geral .barra-inicial.visible-phone,
  html body.msbd-cabecalho-geral .barra-inicial .conteiner,
  html body.msbd-cabecalho-geral .barra-inicial * {
    display: none !important;
    visibility: hidden !important;
    position: absolute !important;
    left: -9999px !important;
    top: -9999px !important;
    width: 0 !important;
    height: 0 !important;
    min-width: 0 !important;
    min-height: 0 !important;
    max-width: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    overflow: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }

  html body.msbd-cabecalho-geral #cabecalho {
    margin-top: 0 !important;
  }

  html body.msbd-cabecalho-geral .conteiner-principal,
  html body.msbd-cabecalho-geral .conteiner-principal > #cabecalho:first-child {
    margin-top: 0 !important;
  }

  html body.msbd-cabecalho-geral #cabecalho > .conteiner {
    padding-top: 6px !important;
  }
}

/* =========================================================
   V32 - Cabeçalho desktop restaurado + mobile preservado
   ========================================================= */
@media (min-width:768px){
  html body.msbd-cabecalho-geral #cabecalho .msbd-mobile-header-v22,
  html body.msbd-cabecalho-geral #cabecalho .msbd-mobile-drawer-v22,
  html body.msbd-cabecalho-geral #cabecalho .msbd-mobile-header-v20,
  html body.msbd-cabecalho-geral #cabecalho .msbd-mobile-header-v21{
    display:none!important;visibility:hidden!important;width:0!important;height:0!important;min-width:0!important;min-height:0!important;max-width:0!important;max-height:0!important;margin:0!important;padding:0!important;border:0!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important;
  }

  html body.msbd-cabecalho-geral #cabecalho{
    position:relative!important;z-index:50000!important;min-height:0!important;height:auto!important;background:#fffdf9!important;border-bottom:1px solid rgba(95,27,114,.10)!important;box-shadow:0 1px 0 rgba(95,27,114,.06),0 14px 42px rgba(52,18,63,.045)!important;overflow:visible!important;
  }

  html body.msbd-cabecalho-geral #cabecalho>.conteiner{
    width:min(1240px,calc(100vw - 42px))!important;max-width:min(1240px,calc(100vw - 42px))!important;display:flex!important;flex-direction:column!important;gap:0!important;margin-left:auto!important;margin-right:auto!important;padding:14px 0 0!important;box-sizing:border-box!important;overflow:visible!important;
  }

  html body.msbd-cabecalho-geral #cabecalho>.conteiner>*:not(.msbd-header-main-v17):not(.menu.superior),
  html body.msbd-cabecalho-geral #cabecalho .msbd-header-hidden-original-v17,
  html body.msbd-cabecalho-geral #cabecalho .msbd-header-main-v15,
  html body.msbd-cabecalho-geral #cabecalho .msbd-header-main-v16{
    display:none!important;visibility:hidden!important;height:0!important;min-height:0!important;max-height:0!important;margin:0!important;padding:0!important;border:0!important;overflow:hidden!important;opacity:0!important;
  }

  html body.msbd-cabecalho-geral #cabecalho .msbd-header-main-v17{
    width:100%!important;min-height:96px!important;height:auto!important;display:grid!important;grid-template-columns:245px minmax(460px,1fr) 300px!important;gap:28px!important;align-items:center!important;margin:0 0 14px!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important;opacity:1!important;visibility:visible!important;overflow:visible!important;box-sizing:border-box!important;
  }

  html body.msbd-cabecalho-geral #cabecalho .msbd-header-logo-v17,
  html body.msbd-cabecalho-geral #cabecalho .msbd-header-search-v17,
  html body.msbd-cabecalho-geral #cabecalho .msbd-header-actions-v17{min-width:0!important;display:flex!important;box-sizing:border-box!important;opacity:1!important;visibility:visible!important}

  html body.msbd-cabecalho-geral #cabecalho .msbd-header-logo-v17{align-items:center!important;justify-content:flex-start!important}
  html body.msbd-cabecalho-geral #cabecalho .msbd-header-logo-v17 .logo,
  html body.msbd-cabecalho-geral #cabecalho .msbd-header-logo-v17 .logo a{width:100%!important;display:flex!important;align-items:center!important;justify-content:flex-start!important;margin:0!important;padding:0!important;text-align:left!important;background:transparent!important;border:0!important;box-shadow:none!important}
  html body.msbd-cabecalho-geral #cabecalho .msbd-header-logo-v17 .logo img{max-width:225px!important;max-height:68px!important;width:auto!important;height:auto!important;display:block!important;object-fit:contain!important;object-position:left center!important}

  html body.msbd-cabecalho-geral #cabecalho .msbd-header-search-v17{flex-direction:column!important;align-items:stretch!important;justify-content:center!important}
  html body.msbd-cabecalho-geral #cabecalho .msbd-header-search-v17 .bem-vindo{display:block!important;width:100%!important;margin:0 0 9px!important;padding:0!important;color:#5f1b72!important;background:transparent!important;border:0!important;box-shadow:none!important;font-size:.96rem!important;line-height:1.2!important;font-weight:900!important;text-align:left!important}
  html body.msbd-cabecalho-geral #cabecalho .msbd-header-search-v17 .busca{width:100%!important;height:50px!important;min-height:50px!important;display:flex!important;align-items:center!important;margin:0!important;padding:0!important;border:1px solid rgba(200,164,93,.28)!important;border-radius:999px!important;background:#fff!important;overflow:hidden!important;box-shadow:0 14px 38px rgba(52,18,63,.07)!important;box-sizing:border-box!important}
  html body.msbd-cabecalho-geral #cabecalho .msbd-header-search-v17 .busca form{width:100%!important;height:100%!important;display:flex!important;align-items:center!important;margin:0!important;padding:0!important;box-sizing:border-box!important}
  html body.msbd-cabecalho-geral #cabecalho .msbd-header-search-v17 .busca input{height:100%!important;min-height:0!important;flex:1 1 auto!important;width:auto!important;min-width:0!important;padding:0 18px!important;margin:0!important;border:0!important;background:transparent!important;color:#24112b!important;font-size:1rem!important;line-height:normal!important;box-shadow:none!important;box-sizing:border-box!important}

  html body.msbd-cabecalho-geral #cabecalho .msbd-header-search-v17 .busca .botao-busca,
  html body.msbd-cabecalho-geral #cabecalho .msbd-header-search-v17 .busca button,
  html body.msbd-cabecalho-geral #cabecalho .msbd-header-search-v17 .busca input[type=submit]{width:92px!important;min-width:92px!important;flex:0 0 auto!important;height:calc(100% - 6px)!important;min-height:0!important;max-height:44px!important;margin:3px!important;align-self:center!important;padding:0 16px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;border:0!important;border-radius:999px!important;background:linear-gradient(135deg,#5f1b72,#8b2fa0)!important;color:#fff!important;box-shadow:none!important;text-shadow:none!important;font-size:0!important;line-height:1!important;text-indent:0!important;overflow:hidden!important;box-sizing:border-box!important;vertical-align:middle!important}
  html body.msbd-cabecalho-geral #cabecalho .msbd-header-search-v17 .busca .botao-busca:after,
  html body.msbd-cabecalho-geral #cabecalho .msbd-header-search-v17 .busca button:after,
  html body.msbd-cabecalho-geral #cabecalho .msbd-header-search-v17 .busca input[type=submit]:after{content:"Buscar"!important;color:#fff!important;font-size:.95rem!important;line-height:1!important;font-weight:950!important}
  html body.msbd-cabecalho-geral #cabecalho .msbd-header-search-v17 .busca i,
  html body.msbd-cabecalho-geral #cabecalho .msbd-header-search-v17 .busca svg{display:none!important}

  html body.msbd-cabecalho-geral #cabecalho .msbd-header-actions-v17{flex-direction:column!important;align-items:stretch!important;justify-content:center!important;gap:9px!important}
  html body.msbd-cabecalho-geral #cabecalho .msbd-header-actions-v17 .acoes-conta{width:100%!important;margin:0!important;padding:0!important}
  html body.msbd-cabecalho-geral #cabecalho .msbd-header-actions-v17 .acoes-conta ul{width:100%!important;display:grid!important;grid-template-columns:1fr 1fr!important;gap:9px!important;margin:0!important;padding:0!important}
  html body.msbd-cabecalho-geral #cabecalho .msbd-header-actions-v17 .acoes-conta li{width:100%!important;margin:0!important;padding:0!important;list-style:none!important}
  html body.msbd-cabecalho-geral #cabecalho .msbd-header-actions-v17 .acoes-conta li a{width:100%!important;min-height:43px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;padding:0 12px!important;border:1px solid rgba(95,27,114,.12)!important;border-radius:16px!important;background:#fffdf9!important;color:#5f1b72!important;font-size:.98rem!important;font-weight:950!important;line-height:1.1!important;text-align:center!important;box-shadow:none!important;text-shadow:none!important}
  html body.msbd-cabecalho-geral #cabecalho .msbd-header-actions-v17 .acoes-conta i,
  html body.msbd-cabecalho-geral #cabecalho .msbd-header-actions-v17 .acoes-conta svg{display:none!important}

  html body.msbd-cabecalho-geral #cabecalho .msbd-header-actions-v17 .carrinho,
  html body.msbd-cabecalho-geral #cabecalho .msbd-header-actions-v17 .carrinho>a,
  html body.msbd-cabecalho-geral #cabecalho .msbd-header-actions-v17 .carrinho .carrinho-interno{width:100%!important;min-height:46px!important;display:flex!important;align-items:center!important;justify-content:center!important;margin:0!important;padding:0 14px!important;border:0!important;border-radius:16px!important;background:linear-gradient(135deg,#5f1b72,#8b2fa0)!important;color:#fff!important;box-shadow:none!important;text-shadow:none!important;overflow:hidden!important}
  html body.msbd-cabecalho-geral #cabecalho .msbd-header-actions-v17 .carrinho .carrinho-interno{top:48px!important}
  html body.msbd-cabecalho-geral #cabecalho .msbd-header-actions-v17 .carrinho *{color:#fff!important;text-shadow:none!important}
  html body.msbd-cabecalho-geral #cabecalho .msbd-header-actions-v17 .carrinho i,
  html body.msbd-cabecalho-geral #cabecalho .msbd-header-actions-v17 .carrinho svg{display:none!important}
  html body.msbd-cabecalho-geral #cabecalho .msbd-header-actions-v17 .carrinho .vazio-text,
  html body.msbd-cabecalho-geral #cabecalho .msbd-header-actions-v17 .carrinho .titulo,
  html body.msbd-cabecalho-geral #cabecalho .msbd-header-actions-v17 .carrinho strong,
  html body.msbd-cabecalho-geral #cabecalho .msbd-header-actions-v17 .carrinho span{color:#fff!important;font-size:1rem!important;font-weight:950!important;line-height:1.1!important;text-align:center!important}
  html body.msbd-cabecalho-geral #cabecalho .msbd-header-actions-v17 .carrinho>a>span:not(.vazio-text){padding:0!important;display:flex!important;align-items:center!important;justify-content:center!important}
  html body.msbd-cabecalho-geral #cabecalho .msbd-header-actions-v17 .carrinho>a>strong.qtd-carrinho{display:inline-flex!important;align-items:center!important}

  html body.msbd-cabecalho-geral #cabecalho .menu.superior{display:block!important;visibility:visible!important;width:100%!important;max-width:100%!important;margin:0!important;background:#fffdf9!important;border-top:1px solid rgba(95,27,114,.08)!important;border-bottom:1px solid rgba(95,27,114,.08)!important;overflow:hidden!important;opacity:1!important;pointer-events:auto!important}
  html body.msbd-cabecalho-geral #cabecalho .menu.superior>ul.nivel-um{width:min(1240px,calc(100vw - 42px))!important;max-width:min(1240px,calc(100vw - 42px))!important;min-height:64px!important;margin:0 auto!important;padding:8px 0!important;display:flex!important;align-items:center!important;justify-content:space-between!important;flex-wrap:nowrap!important;gap:10px!important;overflow:hidden!important;box-sizing:border-box!important}
  html body.msbd-cabecalho-geral #cabecalho .menu.superior>ul.nivel-um>li.msbd-menu-more,
  html body.msbd-cabecalho-geral #cabecalho .menu.superior>ul.nivel-um>li.categoria-paginas,
  html body.msbd-cabecalho-geral #cabecalho .menu.superior>ul.nivel-um>li.categoria-marcas,
  html body.msbd-cabecalho-geral #cabecalho .menu.superior>ul.nivel-um>li.msbd-menu-force-hidden{display:none!important}
  html body.msbd-cabecalho-geral #cabecalho .menu.superior>ul.nivel-um>li{position:relative!important;flex:0 1 auto!important;max-width:132px!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important}
  html body.msbd-cabecalho-geral #cabecalho .menu.superior>ul.nivel-um>li>a{min-height:40px!important;max-width:132px!important;padding:6px 3px!important;display:flex!important;align-items:center!important;justify-content:center!important;background:transparent!important;color:#5f1b72!important;border-radius:14px!important;text-align:center!important;line-height:1.08!important;white-space:normal!important;box-shadow:none!important}
  html body.msbd-cabecalho-geral #cabecalho .menu.superior>ul.nivel-um>li>a strong{display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;color:#5f1b72!important;font-size:.91rem!important;font-weight:950!important;line-height:1.08!important;letter-spacing:-.025em!important;text-align:center!important}
  html body.msbd-cabecalho-geral #cabecalho .menu.superior>ul.nivel-um>li>a i{display:none!important}
}

@media (min-width:768px) and (max-width:1180px){
  html body.msbd-cabecalho-geral #cabecalho .msbd-header-main-v17{grid-template-columns:215px minmax(380px,1fr) 255px!important;gap:16px!important}
  html body.msbd-cabecalho-geral #cabecalho .msbd-header-logo-v17 .logo img{max-width:200px!important}
  html body.msbd-cabecalho-geral #cabecalho .menu.superior>ul.nivel-um{gap:7px!important}
  html body.msbd-cabecalho-geral #cabecalho .menu.superior>ul.nivel-um>li,
  html body.msbd-cabecalho-geral #cabecalho .menu.superior>ul.nivel-um>li>a{max-width:106px!important}
  html body.msbd-cabecalho-geral #cabecalho .menu.superior>ul.nivel-um>li>a strong{font-size:.80rem!important}
  html body.msbd-cabecalho-geral #cabecalho .msbd-header-search-v17 .busca .botao-busca,
  html body.msbd-cabecalho-geral #cabecalho .msbd-header-search-v17 .busca button,
  html body.msbd-cabecalho-geral #cabecalho .msbd-header-search-v17 .busca input[type=submit]{width:78px!important;min-width:78px!important}
}

@media (max-width:767px){
  html body.msbd-cabecalho-geral #cabecalho .msbd-header-main-v17,
  html body.msbd-cabecalho-geral #cabecalho .menu.superior{display:none!important;visibility:hidden!important}
  html body.msbd-cabecalho-geral #cabecalho .msbd-mobile-header-v22{display:grid!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important}
}

/* =========================================================
   V38 - Submenus do menu desktop sempre acima do restante da página
   ========================================================= */
@media (min-width: 768px) {
  html body.msbd-cabecalho-geral #cabecalho,
  html body.msbd-cabecalho-geral #cabecalho > .conteiner,
  html body.msbd-cabecalho-geral #cabecalho .menu.superior {
    position: relative !important;
    z-index: 999900 !important;
    overflow: visible !important;
  }

  html body.msbd-cabecalho-geral #cabecalho .menu.superior {
    isolation: isolate !important;
  }

  html body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um {
    position: relative !important;
    z-index: 999910 !important;
    overflow: visible !important;
  }

  html body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li {
    position: relative !important;
    z-index: 999920 !important;
    overflow: visible !important;
  }

  html body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li:hover,
  html body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li:focus-within {
    z-index: 999990 !important;
  }

  html body.msbd-cabecalho-geral #cabecalho .menu.superior ul.nivel-dois,
  html body.msbd-cabecalho-geral #cabecalho .menu.superior ul.nivel-tres,
  html body.msbd-cabecalho-geral #cabecalho .menu.superior .nivel-dois,
  html body.msbd-cabecalho-geral #cabecalho .menu.superior .nivel-tres,
  html body.msbd-cabecalho-geral #cabecalho .menu.superior .submenu,
  html body.msbd-cabecalho-geral #cabecalho .menu.superior .dropdown-menu {
    position: absolute !important;
    z-index: 1000000 !important;
    overflow: visible !important;
    pointer-events: auto !important;
  }

  html body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li:hover > ul.nivel-dois,
  html body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li:focus-within > ul.nivel-dois {
    z-index: 1000001 !important;
  }
}

/* =========================================================
   V51 - Correção definitiva do menu desktop
   ========================================================= */
@media (min-width: 768px) {
  html body.msbd-cabecalho-geral #cabecalho,
  html body.msbd-cabecalho-geral #cabecalho > .conteiner,
  html body.msbd-cabecalho-geral #cabecalho .menu.superior {
    overflow: visible !important;
    position: relative !important;
    z-index: 999900 !important;
  }

  html body.msbd-cabecalho-geral #cabecalho .menu.superior {
    width: 100% !important;
    max-width: none !important;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    background: #fffdf9 !important;
    border-top: 1px solid rgba(95,27,114,.07) !important;
    border-bottom: 1px solid rgba(95,27,114,.09) !important;
  }

  html body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um {
    position: relative !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: min(1820px, calc(100vw - 24px)) !important;
    max-width: min(1820px, calc(100vw - 24px)) !important;
    min-height: 60px !important;
    height: auto !important;
    display: flex !important;
    align-items: center !important;
    align-content: center !important;
    justify-content: center !important;
    flex-wrap: wrap !important;
    gap: 5px 7px !important;
    margin: 0 !important;
    padding: 8px 8px 10px !important;
    overflow: visible !important;
    box-sizing: border-box !important;
    z-index: 999910 !important;
    transition: none !important;
    animation: none !important;
  }

  html body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li {
    position: static !important;
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    flex: 0 1 auto !important;
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    pointer-events: auto !important;
    transform: none !important;
    transition: none !important;
    animation: none !important;
  }

  html body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li.msbd-menu-more {
    display: none !important;
  }

  html body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li > a {
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    min-height: 43px !important;
    height: auto !important;
    display: flex !important;
    visibility: visible !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 5px !important;
    padding: 7px 10px !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 13px !important;
    color: #5f1b72 !important;
    background: transparent !important;
    white-space: normal !important;
    overflow: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    box-sizing: border-box !important;
    transition: background .16s ease, color .16s ease, box-shadow .16s ease !important;
  }

  html body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li > a strong,
  html body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li > a span {
    display: block !important;
    width: auto !important;
    max-width: 158px !important;
    color: inherit !important;
    font-size: .80rem !important;
    font-weight: 950 !important;
    line-height: 1.08 !important;
    text-align: center !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    overflow: visible !important;
  }

  html body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li:hover > a,
  html body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li:focus-within > a,
  html body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li.msbd-menu-open-v51 > a {
    color: #ffffff !important;
    background: linear-gradient(135deg, #5f1b72, #8b2fa0) !important;
    box-shadow: 0 10px 24px rgba(52,18,63,.16) !important;
  }

  html body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li:hover > a *,
  html body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li:focus-within > a *,
  html body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li.msbd-menu-open-v51 > a * {
    color: #ffffff !important;
  }

  html body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li.com-filho > a::after {
    content: "⌄" !important;
    display: inline-block !important;
    color: currentColor !important;
    font-size: .76rem !important;
    font-weight: 950 !important;
    line-height: 1 !important;
  }

  html body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li > ul.nivel-dois.msbd-submenu-v51 {
    position: absolute !important;
    top: calc(100% + 2px) !important;
    left: var(--msbd-submenu-left-v51, 0px) !important;
    right: auto !important;
    width: var(--msbd-submenu-width-v51, 480px) !important;
    max-width: calc(100vw - 32px) !important;
    min-width: 0 !important;
    max-height: min(580px, calc(100vh - 120px)) !important;
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
    margin: 0 !important;
    padding: 12px !important;
    border: 1px solid rgba(200,164,93,.22) !important;
    border-radius: 16px !important;
    background: #fffdf9 !important;
    box-shadow: 0 24px 70px rgba(52,18,63,.18) !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    transform: none !important;
    columns: auto !important;
    z-index: 1000005 !important;
    box-sizing: border-box !important;
  }

  html body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li.msbd-menu-open-v51 > ul.nivel-dois.msbd-submenu-v51 {
    display: grid !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
  }

  html body.msbd-cabecalho-geral #cabecalho .menu.superior ul.nivel-dois.msbd-submenu-standard-v51 {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 0 !important;
  }

  html body.msbd-cabecalho-geral #cabecalho .menu.superior ul.nivel-dois.msbd-submenu-wide-v51 {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 3px 18px !important;
    padding: 14px !important;
  }

  html body.msbd-cabecalho-geral #cabecalho .menu.superior ul.nivel-dois.msbd-submenu-mega-v51 {
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    gap: 4px 24px !important;
    padding: 18px 20px !important;
  }

  html body.msbd-cabecalho-geral #cabecalho .menu.superior ul.nivel-dois.msbd-submenu-v51 > li {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    position: relative !important;
    break-inside: avoid !important;
    box-sizing: border-box !important;
  }

  html body.msbd-cabecalho-geral #cabecalho .menu.superior ul.nivel-dois.msbd-submenu-v51 > li > a {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    min-height: 40px !important;
    display: flex !important;
    align-items: center !important;
    padding: 9px 11px !important;
    margin: 0 !important;
    border-bottom: 1px solid rgba(95,27,114,.10) !important;
    border-radius: 9px !important;
    color: #38213d !important;
    background: transparent !important;
    font-size: .84rem !important;
    font-weight: 750 !important;
    line-height: 1.30 !important;
    text-align: left !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
  }

  html body.msbd-cabecalho-geral #cabecalho .menu.superior ul.nivel-dois.msbd-submenu-v51 > li > a:hover,
  html body.msbd-cabecalho-geral #cabecalho .menu.superior ul.nivel-dois.msbd-submenu-v51 > li > a:focus {
    color: #5f1b72 !important;
    background: #f8eef9 !important;
  }

  html body.msbd-cabecalho-geral #cabecalho .menu.superior ul.nivel-dois.msbd-submenu-mega-v51 > li > a {
    border-bottom-color: transparent !important;
  }

  html body.msbd-cabecalho-geral #cabecalho .menu.superior ul.nivel-dois.msbd-submenu-v51 > li > ul.nivel-tres {
    top: 0 !important;
    left: calc(100% + 8px) !important;
    width: min(380px, calc(100vw - 34px)) !important;
    max-width: min(380px, calc(100vw - 34px)) !important;
    min-width: 0 !important;
    padding: 10px !important;
    border: 1px solid rgba(200,164,93,.20) !important;
    border-radius: 14px !important;
    background: #fffdf9 !important;
    box-shadow: 0 20px 55px rgba(52,18,63,.16) !important;
    overflow: visible !important;
    z-index: 1000008 !important;
  }

  html body.msbd-cabecalho-geral #cabecalho .menu.superior ul.nivel-dois.msbd-submenu-v51 > li > ul.nivel-tres a {
    white-space: normal !important;
    overflow-wrap: anywhere !important;
  }
}

@media (min-width: 768px) and (max-width: 1450px) {
  html body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um {
    width: calc(100vw - 16px) !important;
    max-width: calc(100vw - 16px) !important;
    gap: 3px 4px !important;
  }

  html body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li > a {
    padding: 6px 8px !important;
  }

  html body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li > a strong,
  html body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li > a span {
    max-width: 128px !important;
    font-size: .74rem !important;
  }

  html body.msbd-cabecalho-geral #cabecalho .menu.superior ul.nivel-dois.msbd-submenu-mega-v51 {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
}

/* =========================================================
   V52 - Restaura "Páginas" e "Marcas" no menu desktop
   ========================================================= */
@media (min-width: 768px) {
  html body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li.categoria-paginas,
  html body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li.categoria-marcas {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: static !important;
    flex: 0 1 auto !important;
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    pointer-events: auto !important;
    transform: none !important;
  }

  html body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li.categoria-paginas > a,
  html body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li.categoria-marcas > a {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    min-height: 43px !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 5px !important;
    padding: 7px 10px !important;
    margin: 0 !important;
    color: #5f1b72 !important;
    background: transparent !important;
    border-radius: 13px !important;
    pointer-events: auto !important;
  }

  html body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li.categoria-paginas:hover > a,
  html body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li.categoria-paginas:focus-within > a,
  html body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li.categoria-paginas.msbd-menu-open-v51 > a,
  html body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li.categoria-marcas:hover > a,
  html body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li.categoria-marcas:focus-within > a,
  html body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li.categoria-marcas.msbd-menu-open-v51 > a {
    color: #ffffff !important;
    background: linear-gradient(135deg, #5f1b72, #8b2fa0) !important;
    box-shadow: 0 10px 24px rgba(52,18,63,.16) !important;
  }

  html body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li.categoria-paginas:hover > a *,
  html body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li.categoria-paginas:focus-within > a *,
  html body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li.categoria-paginas.msbd-menu-open-v51 > a *,
  html body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li.categoria-marcas:hover > a *,
  html body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li.categoria-marcas:focus-within > a *,
  html body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li.categoria-marcas.msbd-menu-open-v51 > a * {
    color: #ffffff !important;
  }

  html body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li.categoria-paginas > ul.nivel-dois.msbd-submenu-v51,
  html body.msbd-cabecalho-geral #cabecalho .menu.superior > ul.nivel-um > li.categoria-marcas > ul.nivel-dois.msbd-submenu-v51 {
    width: var(--msbd-submenu-width-v51, 1780px) !important;
    max-width: calc(100vw - 32px) !important;
  }
}


/* ============================================================
   A PARTIR DAQUI: MÁSCARA DO CORPO DA PÁGINA DE PRODUTO (PDP)
   Escopo: body.pagina-produto (não afeta home/checkout)
   ============================================================ */

/* ============================================================
   MSDEV - Farmácia Belladona | Máscara do CORPO DA PÁGINA DE PRODUTO
   Arquivo: bella-dona-produto.css
   Escopo: somente páginas de produto (body.pagina-produto, classe
   nativa da Loja Integrada) - não altera nenhuma lógica de negócio,
   apenas reestiliza a estrutura HTML nativa já existente da PDP.
   Paleta igual à usada no cabeçalho (bella-dona-geral.css):
   roxo/dourado Belladona.
   Seções cobertas: galeria de imagens, caixa de compra (preço/qtde/
   comprar/parcelas/frete), descrição do produto, avaliações,
   produtos relacionados e barra flutuante mobile.
   ============================================================ */

body.pagina-produto{
  --p950:#26102e;--p900:#3b1747;--p800:#5f1b72;--p700:#78288e;--p600:#9a4cad;
  --p100:#f6eef7;--gold:#c8a45d;--gold2:#ead8aa;--gold-soft:#8a6323;
  --ink:#24112b;--muted:#6d5c72;--line:rgba(95,27,114,.13);
  --shadow:0 20px 50px rgba(52,18,63,.12);--radius:20px;
}

/* ============================================================
   1) GRID PRINCIPAL: galeria + caixa de compra lado a lado
   Observação: usamos seletores baseados em CONTEÚDO (:has), não em
   posição (:first-child/:last-child), porque a ordem real dos dois
   .span6 no DOM pode variar entre produtos/temas. Isso garante que
   a galeria fique SEMPRE à esquerda (coluna fixa 420px) e a caixa
   de compra SEMPRE à direita, sem inverter e sem a imagem esticar.
   A coluna de informações é limitada (minmax) para não esticar
   demais em telas largas, e toda a área do produto é centralizada
   com largura máxima para manter proporção equilibrada.
   ============================================================ */
body.pagina-produto .produto{
  max-width:1020px;margin:0 auto!important;float:none!important;width:100%!important;
}
body.pagina-produto .produto>.row-fluid:has(.conteiner-imagem){
  display:grid;grid-template-columns:420px minmax(280px,520px);gap:32px;align-items:start;
  justify-content:center;
}
body.pagina-produto .produto>.row-fluid:has(.conteiner-imagem)>.span6{
  width:auto!important;float:none!important;margin-left:0!important;
}
body.pagina-produto .produto>.row-fluid>.span6:has(.conteiner-imagem){order:1}
body.pagina-produto .produto>.row-fluid>.span6:has(.principal){order:2}

/* ============================================================
   2) GALERIA DE IMAGENS
   ============================================================ */
body.pagina-produto .produto>.row-fluid>.span6:has(.conteiner-imagem){
  background:#fff;border:1px solid var(--line);border-radius:var(--radius);
  box-shadow:var(--shadow);padding:20px;position:sticky;top:20px;
  max-width:420px;
}
body.pagina-produto .conteiner-imagem{margin:0}
body.pagina-produto .conteiner-imagem img{width:100%;border-radius:14px;display:block}
body.pagina-produto .produto-thumbs{margin-top:14px}
body.pagina-produto .produto-thumbs .miniaturas li{
  border-radius:10px;overflow:hidden;border:2px solid var(--line)!important;
  margin-right:8px!important;transition:border-color .2s;
}
body.pagina-produto .produto-thumbs .miniaturas li.active,
body.pagina-produto .produto-thumbs .miniaturas li:hover{border-color:var(--gold)!important}
body.pagina-produto .produto-thumbs .miniaturas img{border-radius:8px}
body.pagina-produto .produto-thumbs .flex-direction-nav a{color:var(--p700)}

body.pagina-produto .produto-compartilhar{margin-top:14px;border-top:1px dashed var(--line);padding-top:14px}
body.pagina-produto .produto-compartilhar .lista-favoritos{
  display:inline-flex;align-items:center;gap:8px;background:var(--p100)!important;
  color:var(--gold-soft)!important;border:1px solid var(--line);border-radius:999px;
  padding:8px 16px;font-weight:800;font-size:12.5px;text-transform:uppercase;letter-spacing:.03em;
}
body.pagina-produto .produto-compartilhar .lista-favoritos:hover{background:var(--gold2)!important}

/* ============================================================
   3) CAIXA DE COMPRA (.principal)
   ============================================================ */
body.pagina-produto .produto>.row-fluid>.span6:has(.principal) .principal{
  background:#fff;border:1px solid var(--line);border-radius:var(--radius);
  box-shadow:var(--shadow);padding:26px 28px;
}

/* breadcrumb */
body.pagina-produto .breadcrumbs{background:transparent!important;border:0!important;padding:0!important;margin-bottom:14px!important;font-size:12px}
body.pagina-produto .breadcrumbs ul{margin:0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:4px;color:var(--muted)}
body.pagina-produto .breadcrumbs li{display:flex;align-items:center;gap:4px}
body.pagina-produto .breadcrumbs li:not(:last-child):after{content:"/";margin-left:4px;color:var(--line)}
body.pagina-produto .breadcrumbs a{color:var(--gold-soft)!important;font-weight:700}
body.pagina-produto .breadcrumbs i{color:var(--gold-soft);margin-right:2px}

/* título */
body.pagina-produto h1.nome-produto{
  font-size:1.55rem;line-height:1.32;margin:0 0 10px;color:var(--ink)!important;font-weight:800;
}

/* código / marca / avaliação */
body.pagina-produto .codigo-produto{
  display:flex;flex-wrap:wrap;align-items:center;gap:14px;font-size:12.5px;
  color:var(--muted);border-bottom:1px dashed var(--line);padding-bottom:16px;margin-bottom:16px;
}
body.pagina-produto .codigo-produto>span{color:var(--muted)!important;float:none!important}
body.pagina-produto .codigo-produto [itemprop="brand"]{margin-left:0!important;float:none!important}
body.pagina-produto .codigo-produto [itemprop="brand"] a{
  background:var(--p100);color:var(--gold-soft)!important;padding:5px 12px;border-radius:999px;
  font-weight:800;text-transform:uppercase;letter-spacing:.04em;font-size:11px;
}
body.pagina-produto .product-reviews__rating{display:inline-flex}
body.pagina-produto .product-reviews__rating-stars{display:inline-flex;align-items:center;gap:6px}
body.pagina-produto .product-reviews__rating-count{color:var(--muted)}

/* preço - caixa principal de compra */
body.pagina-produto .principal .acoes-produto .preco-produto{
  border-top:1px dashed var(--line);border-bottom:1px dashed var(--line);
  padding:18px 0;margin-bottom:18px;
}
body.pagina-produto .principal .acoes-produto .preco-produto .preco-venda{
  color:var(--muted)!important;font-size:14px;font-weight:500;text-decoration:line-through;
}
body.pagina-produto .principal .acoes-produto .preco-produto .preco-promocional{
  display:block;font-size:2.1rem;font-weight:900;color:var(--gold-soft)!important;margin:2px 0 4px;
}
body.pagina-produto .principal .acoes-produto .desconto-a-vista{
  display:block;font-size:13.5px;color:var(--p700)!important;font-weight:700;
}
body.pagina-produto .principal .acoes-produto .desconto-a-vista strong{color:var(--p700)!important}

/* comprar (qtde + botão) */
body.pagina-produto .principal .acoes-produto .comprar{
  display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:6px;
}
body.pagina-produto .qtde-adicionar-carrinho{
  margin:0!important;display:flex!important;align-items:center;justify-content:center;gap:2px;
  background:var(--p100)!important;border:1px solid var(--line);border-radius:999px;
  padding:4px!important;height:52px;box-sizing:border-box;width:auto!important;
}
/* o rótulo "Qtde:" nativo some - os botões +/- já deixam a função óbvia */
body.pagina-produto .qtde-carrinho-title{display:none!important}
/* esconde as setinhas nativas do input number */
body.pagina-produto input.qtde-carrinho::-webkit-inner-spin-button,
body.pagina-produto input.qtde-carrinho::-webkit-outer-spin-button{-webkit-appearance:none!important;margin:0!important}
body.pagina-produto input.qtde-carrinho{-moz-appearance:textfield!important}
body.pagina-produto .qtde-carrinho{
  width:40px!important;height:36px!important;border:0!important;border-radius:0!important;
  background:transparent!important;padding:0!important;text-align:center;font-size:1rem;
  font-weight:800;color:var(--ink)!important;box-shadow:none!important;flex:0 0 auto;
}
body.pagina-produto .qtde-carrinho:focus{outline:none}
/* botões de +/- injetados pelo bella-dona-pdp.js */
body.pagina-produto .msbd-qtd-btn{
  width:34px;height:34px;flex:0 0 auto;border:0;border-radius:50%;background:#fff;
  color:var(--p700);font-size:1.05rem;line-height:1;font-weight:900;cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 2px 6px rgba(52,18,63,.14);transition:background .15s,color .15s;
}
body.pagina-produto .msbd-qtd-btn:hover{background:var(--gold);color:var(--p950)}
body.pagina-produto .msbd-qtd-btn:active{filter:brightness(.95)}
body.pagina-produto .botao-comprar{
  background:linear-gradient(135deg,var(--gold),var(--gold-soft))!important;border:0!important;
  border-radius:999px!important;font-weight:900!important;color:var(--p950)!important;
  box-shadow:0 14px 30px rgba(200,164,93,.35);padding:14px 34px!important;font-size:1rem!important;
}
body.pagina-produto .botao-comprar:hover{filter:brightness(1.06)}
body.pagina-produto .principal .disponibilidade-produto{
  display:block;width:100%;font-size:12.5px;color:var(--muted)!important;margin-top:4px;
}
body.pagina-produto .principal .disponibilidade-produto b{color:var(--p700)!important}

/* envio / prazo */
body.pagina-produto .shipping-summary{
  margin-top:16px;border:1px solid var(--line)!important;box-shadow:none!important;
  background:var(--p100)!important;border-radius:14px!important;padding:16px!important;
}
body.pagina-produto .shipping-summary .status .arrival-time{color:var(--p700)!important}
body.pagina-produto .shipping-summary .time-left .hours,
body.pagina-produto .shipping-summary .time-left .minutes{color:var(--ink)!important}

/* parcelas / formas de pagamento */
body.pagina-produto .parcelas-produto{border:0!important;background:transparent;margin-top:16px;padding-top:16px;border-top:1px solid var(--line)}
body.pagina-produto .parcelas-produto .accordion-group{border:0!important;border-bottom:1px solid var(--line)!important;margin:0!important}
body.pagina-produto .parcelas-produto .accordion-heading{padding:9px 0}
body.pagina-produto .parcelas-produto .accordion-toggle{display:flex;align-items:center;justify-content:space-between;font-size:13px;color:var(--ink)}
body.pagina-produto .parcelas-produto .text-parcelas{color:var(--gold-soft)!important;font-weight:800}
body.pagina-produto .parcelas-produto img{max-height:20px}

/* calcular frete */
body.pagina-produto .principal .cep{margin-top:16px}
body.pagina-produto .principal .cep label{font-size:12.5px;color:var(--muted);font-weight:700;display:block;margin-bottom:6px}
body.pagina-produto .principal .cep .input-cep{border:1px solid var(--line)!important;border-radius:14px 0 0 14px!important;padding:10px 14px!important}
body.pagina-produto .principal .cep .form-inline .btn{
  background:var(--p700)!important;color:#fff!important;border:0!important;
  border-radius:0 14px 14px 0!important;padding:0 18px!important;font-weight:800!important;
}
body.pagina-produto .principal .cep .aviso-disponibilidade{color:var(--muted);font-size:11.5px}

/* ============================================================
   4) SEÇÃO: DESCRIÇÃO DO PRODUTO
   ============================================================ */
body.pagina-produto .abas-custom{
  background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);
  padding:28px;margin-top:28px;
}
body.pagina-produto #descricao{font-family:'Segoe UI',Arial,sans-serif;color:var(--ink)}
body.pagina-produto #descricao::before{
  content:"ℹ️  Sobre o produto";display:block;
  font-size:1.1rem;font-weight:800;color:var(--ink);margin-bottom:18px;
  padding-bottom:12px;border-bottom:1px solid var(--line);
}

/* ============================================================
   5) SEÇÃO: AVALIAÇÕES
   ============================================================ */
body.pagina-produto #avaliacoes{
  background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);
  padding:28px;margin-top:28px;
}
body.pagina-produto .product-reviews__overview-title{
  font-size:1.1rem!important;font-weight:800!important;color:var(--ink)!important;margin:0 0 18px!important;
}
body.pagina-produto .product-reviews__overview-average-rating{
  font-size:2.1rem!important;color:var(--gold-soft)!important;font-weight:900!important;
}
body.pagina-produto .product-reviews__overview-average-reviews{color:var(--muted)!important}
body.pagina-produto .product-reviews__overview-filter-title{color:var(--ink)!important;font-weight:700}
body.pagina-produto .product-reviews__overview-filter-star-progress-bar{background:var(--gold)!important}
body.pagina-produto .product-reviews__overview-filter-star-count{color:var(--muted)!important}

body.pagina-produto .product-reviews__section{
  display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:20px;
}
body.pagina-produto .product-reviews__item{
  background:var(--p100)!important;border:1px solid var(--line)!important;border-radius:16px!important;
  padding:16px!important;margin:0!important;
}
body.pagina-produto .product-reviews__section-item-author{color:var(--gold-soft)!important;font-weight:800}
body.pagina-produto .product-reviews__section-item-published{color:var(--muted)!important;font-size:11px}
body.pagina-produto .product-reviews__section-item-description{color:var(--ink)!important;font-size:13.5px;line-height:1.55}
body.pagina-produto .product-reviews__section-item-recommended .cor-principal{color:var(--p700)!important}
body.pagina-produto .product-reviews__pagination-btn{
  border-radius:999px!important;border:1px solid var(--line)!important;color:var(--p700)!important;font-weight:800!important;background:#fff!important;
}

/* ============================================================
   6) SEÇÃO: PRODUTOS RELACIONADOS
   Observação: aqui NÃO mexemos no display/float/width do container
   (.listagem-linha>ul.row-fluid) nem dos <li>. Esse bloco pode ser
   controlado por um carrossel/slider nativo da loja (o mesmo tipo
   usado nas miniaturas de imagem) que calcula posição via JS - forçar
   grid ali quebra o posicionamento e "corta"/desalinha os cards.
   Reestilizamos só a aparência do card, sem tocar no layout do trilho.
   ============================================================ */
body.pagina-produto .listagem.aproveite-tambem{
  background:#fff;border:1px solid var(--line)!important;border-radius:var(--radius);box-shadow:var(--shadow);
  padding:28px;margin-top:28px;overflow:hidden;
}
body.pagina-produto .listagem.aproveite-tambem>.titulo{
  font-size:1.1rem!important;font-weight:800!important;color:var(--ink)!important;margin:0 0 18px!important;border:0!important;
}
body.pagina-produto .listagem.aproveite-tambem>ul{list-style:none;margin:0;padding:0}
body.pagina-produto .listagem-item{
  position:relative;overflow:hidden;
  background:var(--p100);border:1px solid var(--line);border-radius:16px;padding:14px;text-align:center;
  transition:box-shadow .2s,transform .2s;box-sizing:border-box;
}
body.pagina-produto .listagem-item:hover{box-shadow:var(--shadow);transform:translateY(-3px)}
body.pagina-produto .listagem-item .imagem-produto{
  height:140px;display:flex;align-items:center;justify-content:center;overflow:hidden;margin-bottom:8px;
}
body.pagina-produto .listagem-item .imagem-produto img{
  max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;border-radius:10px;
}
body.pagina-produto .listagem-item .nome-produto{
  color:var(--ink)!important;font-weight:700;font-size:12.5px;line-height:1.35;display:block;min-height:32px;
}
body.pagina-produto .listagem-item .preco-produto{margin:8px 0}
body.pagina-produto .listagem-item .preco-promocional{color:var(--gold-soft)!important;font-weight:900}
body.pagina-produto .listagem-item .preco-parcela,
body.pagina-produto .listagem-item .desconto-a-vista{font-size:11px;color:var(--muted)!important}
body.pagina-produto .listagem-item .botao-comprar{
  background:var(--p700)!important;color:#fff!important;border-radius:999px!important;font-weight:800!important;
  font-size:12px!important;padding:9px 16px!important;box-shadow:none!important;
}
body.pagina-produto .listagem-item .tag-comprar{
  background:var(--p700)!important;color:#fff!important;border-radius:999px!important;
}

/* ============================================================
   7) BARRA FLUTUANTE MOBILE
   ============================================================ */
body.pagina-produto .acoes-flutuante{
  background:#fff!important;border:1px solid var(--line)!important;box-shadow:0 -12px 30px rgba(52,18,63,.15)!important;
}
body.pagina-produto .acoes-flutuante .nome-produto{color:var(--ink)!important}
body.pagina-produto .acoes-flutuante .preco-produto .preco-promocional{color:var(--gold-soft)!important}
body.pagina-produto .acoes-flutuante .preco-produto .preco-venda{color:var(--muted)!important}
body.pagina-produto .acoes-flutuante .desconto-a-vista{color:var(--p700)!important}
body.pagina-produto .acoes-flutuante .disponibilidade-produto{color:var(--muted)!important}
body.pagina-produto .acoes-flutuante .disponibilidade-produto b{color:var(--p700)!important}
body.pagina-produto .acoes-flutuante .botao-comprar{
  background:linear-gradient(135deg,var(--gold),var(--gold-soft))!important;color:var(--p950)!important;
  border-radius:999px!important;font-weight:900!important;
}
body.pagina-produto .acoes-flutuante .close_float{color:var(--muted)!important}

/* ============================================================
   8) RESPONSIVO
   ============================================================ */
@media (max-width:900px){
  body.pagina-produto .produto>.row-fluid:has(.conteiner-imagem){grid-template-columns:1fr;gap:20px}
  body.pagina-produto .produto>.row-fluid>.span6:has(.conteiner-imagem){position:static;max-width:none}
  body.pagina-produto .product-reviews__section{grid-template-columns:1fr}
  body.pagina-produto .abas-custom,
  body.pagina-produto #avaliacoes,
  body.pagina-produto .listagem.aproveite-tambem{padding:20px}
}
@media (max-width:520px){
  body.pagina-produto .principal .acoes-produto .preco-produto .preco-promocional{font-size:1.7rem}
  body.pagina-produto .produto>.row-fluid>.span6:has(.conteiner-imagem),
  body.pagina-produto .produto>.row-fluid>.span6:has(.principal) .principal{
    border-radius:16px;padding:18px;
  }
}
