/**
 * AWA Motos — Correção estrutural global (2026-05-20)
 * Ordem de carga: ÚLTIMA folha AWA (após responsive-guard / ui-ux-pro-max-header).
 * Escopo por área; paleta oficial AWA apenas.
 */

/* ═══ 1. Design system — container / gap / radius ═══ */
:root {
  --awa-container-catalog: 1440px;
  --awa-container-max: 1440px;
  --awa-page-catalog: 1440px;
  --awa-hdr-container-max: 1440px;
  --footer-container: 1440px;
  --awa-checkout-shell-max: min(1440px, calc(100vw - 48px));
  --awa-structural-gap: 24px;
  --awa-structural-radius: 12px;
  --awa-structural-border: #e5e5e5;
  --awa-structural-bg: #ffffff;
  --awa-structural-bg-soft: #f7f7f7;
}

/* Overflow global */
html {
  overflow-x: clip;
}

body {
  overflow-x: clip;
  color: #333333;
}

body .page-wrapper {
  overflow-x: clip;
  min-width: 0;
}

/* Containers tier catalog — 1440px + pad 20/12 (útil: 1400px = 1440 − 2×20)
 * Usa valor fixo (não variável CSS) porque outros bundles async sobrescrevem
 * --awa-container-catalog antes deste arquivo carregar.
 */
body#html-body .page-wrapper :is(
  .page-main.container,
  .page-main,
  .nav-breadcrumbs .container,
  .page.messages
) {
  max-width: 1440px !important;
  margin-inline: auto !important;
  padding-inline: clamp(12px, 3vw, 20px) !important;
  box-sizing: border-box !important;
  width: 100% !important;
}

body#html-body .page-wrapper .page-main > .columns {
  padding-inline: 0 !important;
  max-width: 100% !important;
  margin-inline: 0 !important;
}

/* #region agent log H-D — cart/checkout/login: vence defer-global §20 (padding/margin em .columns) */
body#html-body:is(
  .checkout-cart-index,
  .checkout-index-index,
  .rokanthemes-onepagecheckout,
  .onepagecheckout-index-index,
  .b2b-account-login,
  .b2b-auth-shell,
  .customer-account-login,
  .customer-account-create
) .page-wrapper .page-main > .columns {
  padding-inline: 0 !important;
  max-width: 100% !important;
  margin-inline: 0 !important;
  box-sizing: border-box !important;
}
/* #endregion agent log H-D */

@media (min-width: 992px) {
  body#html-body .page-wrapper .awa-site-header :is(
    .header-main > .container,
    .awa-b2b-promo-bar > .container,
    .header-control.awa-nav-bar .awa-nav-bar__inner
  ) {
    max-width: 1440px !important;
    margin-inline: auto !important;
    padding-inline: clamp(12px, 3vw, 20px) !important;
    width: 100% !important;
    box-sizing: border-box !important;
  }
}

body#html-body .page-wrapper :is(
  .page_footer .footer-container > .container,
  .page-footer .footer-container > .container,
  .footer.content,
  .aw-footer-highlights,
  .footer-bottom-inner
) {
  max-width: 1440px !important;
  margin-inline: auto !important;
  padding-inline: clamp(12px, 3vw, 20px) !important;
  box-sizing: border-box !important;
}

/* Home: shell content-top-home alinhado
 * DOM live: body > .page-wrapper > .content-top-home (não filho direto do body).
 * #region agent log H-A — eixo home 1440px alinhado ao header/page-main */
body#html-body:is(.cms-index-index, .cms-home, .cms-homepage_ayo_home5)
  .page-wrapper .content-top-home,
body#html-body:is(.cms-index-index, .cms-home, .cms-homepage_ayo_home5)
  > .content-top-home,
body#html-body:is(.cms-index-index, .cms-home, .cms-homepage_ayo_home5)
  :is(.page-wrapper .content-top-home, > .content-top-home) > .ayo-home5-wrapper,
body#html-body:is(.cms-index-index, .cms-home, .cms-homepage_ayo_home5)
  :is(.page-wrapper .content-top-home, > .content-top-home) .top-home-content--above-fold,
body#html-body:is(.cms-index-index, .cms-home, .cms-homepage_ayo_home5)
  :is(.page-wrapper .content-top-home, > .content-top-home) .top-home-content:not(.top-home-content--above-fold),
body#html-body:is(.cms-index-index, .cms-home, .cms-homepage_ayo_home5)
  :is(.page-wrapper .content-top-home, > .content-top-home) .awa-home-section {
  max-width: 1440px !important;
  margin-inline: auto !important;
  padding-inline: clamp(12px, 3vw, 20px) !important;
  box-sizing: border-box !important;
  width: 100% !important;
}

@media (max-width: 991px) {
  /* Mobile: header-main usa borda 8px — remover gutter duplo do shell home */
  body#html-body:is(.cms-index-index, .cms-home, .cms-homepage_ayo_home5)
    :is(.page-wrapper .content-top-home, > .content-top-home),
  body#html-body:is(.cms-index-index, .cms-home, .cms-homepage_ayo_home5)
    :is(.page-wrapper .content-top-home, > .content-top-home) > .ayo-home5-wrapper,
  body#html-body:is(.cms-index-index, .cms-home, .cms-homepage_ayo_home5)
    :is(.page-wrapper .content-top-home, > .content-top-home) .top-home-content--above-fold,
  body#html-body:is(.cms-index-index, .cms-home, .cms-homepage_ayo_home5)
    :is(.page-wrapper .content-top-home, > .content-top-home) .awa-home-section {
    padding-inline: 0 !important;
  }

  /* Seções abaixo do hero (page-main) — mesmo eixo do header mobile */
  body#html-body:is(.cms-index-index, .cms-home, .cms-homepage_ayo_home5)
    .page-wrapper .page-main {
    padding-inline: 0 !important;
  }

  /* #region agent log H-M — PLP/PDP mobile: page-main sem gutter extra vs header full-bleed */
  body#html-body:is(.catalog-category-view, .catalogsearch-result-index, .catalog-product-view)
    .page-wrapper .page-main {
    padding-inline: 0 !important;
  }
  /* #endregion agent log H-M */
}
/* #endregion agent log H-A */

/* Header primary container — vence awa-super-global + padding duplo em .header-main */
@media (min-width: 992px) {
  #html-body .page-wrapper .awa-site-header .awa-main-header,
  #html-body .page-wrapper .awa-site-header .header_main.awa-main-header-inner-wrap {
    padding-inline: 0 !important;
    max-width: none !important;
  }

  #html-body .page-wrapper .awa-site-header .header-main,
  #html-body .page-wrapper .awa-site-header .header-main > .container,
  #html-body .page-wrapper .awa-site-header .header-main .container,
  #html-body .page-wrapper .header.awa-main-header .header-main > .container,
  body#html-body:is(.cms-index-index, .cms-home, .cms-homepage_ayo_home5)
    .page-wrapper .awa-site-header .header_main.awa-main-header-inner-wrap > .header-main > .container,
  body#html-body .page-wrapper .awa-site-header.awa-header-professional .awa-main-header .header-main > .container {
    max-width: 1440px !important;
    width: 100% !important;
    margin-inline: auto !important;
    padding-inline: clamp(12px, 3vw, 20px) !important;
    box-sizing: border-box !important;
  }
}

/* ═══ 2. Header — proporção + alinhamento + minicart (todos breakpoints) ═══ */
#html-body .page-wrapper .awa-site-header .awa-header-primary-row,
#html-body .page-wrapper #header .awa-header-primary-row {
  display: flex !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  gap: var(--awa-structural-gap, 24px) !important;
  width: 100% !important;
  min-width: 0 !important;
}

#html-body .page-wrapper .awa-site-header .awa-header-brand-cell,
#html-body .page-wrapper .awa-site-header .logo {
  flex: 0 0 auto !important;
  align-self: center !important;
}

/* Logo sizing — ver seção canônica no final do arquivo (E2E + breakpoints) */

#html-body .page-wrapper .awa-site-header :is(
  .awa-header-search-col,
  .top-search,
  .block-search
) {
  flex: 1 1 280px !important;
  min-width: 0 !important;
  max-width: 640px !important;
  align-self: center !important;
}

/* ═══ 2b. Header grid — correção do search-col no desktop ═══
 * Causa: awa-defer-global-bundle.min.css perdeu o wrapper @media (max-width:991px)
 * na minificação → grid-column:1/-1 e order:3 vazam para desktop, fazendo
 * a coluna de busca ocupar toda a largura do header.
 * Fix: forçar grid-area:search e reset do grid-column para auto.
 *
 * Causa 2: a mesma minificação quebrada gera right:3621px no input#search
 * (mobile: right:100vw ou similar que escapa para desktop).
 * Fix: right:auto !important restaura posição natural no flex/grid.
 */
@media (min-width: 992px) {
  #html-body .page-wrapper .awa-site-header .awa-main-header__inner.wp-header,
  #html-body .page-wrapper .awa-site-header .awa-main-header__inner[data-awa-header-row] {
    display: grid !important;
    grid-template-areas: "brand search actions" !important;
    align-items: center !important;
    gap: clamp(12px, 2vw, 24px) !important;
    min-height: 60px !important;
    max-height: 68px !important;
    padding-block: 4px !important;
    width: 100% !important;
    box-sizing: border-box !important;
  }

  #html-body .page-wrapper .awa-site-header .awa-header-primary-row {
    display: contents !important;
  }

  #html-body .page-wrapper .awa-site-header .awa-header-brand-cell {
    grid-area: brand !important;
    align-self: center !important;
  }

  #html-body .page-wrapper .awa-site-header .awa-header-search-col {
    grid-area: search !important;
    grid-column: auto !important;
    order: unset !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    margin-inline: 0 !important;
    display: block !important;
    align-self: center !important;
  }

  #html-body .page-wrapper .awa-site-header .awa-header-right-col {
    grid-area: actions !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: clamp(8px, 1.2vw, 16px) !important;
    flex-shrink: 0 !important;
    overflow: visible !important;
  }

  /* Fix: input de busca empurrado para fora da tela por right:3621px */
  #html-body .page-wrapper .awa-site-header .block-search input#search,
  #html-body .page-wrapper .awa-site-header form#search_mini_form input#search,
  #html-body .page-wrapper .awa-site-header .awa-header-search-col input#search {
    position: relative !important;
    right: auto !important;
    left: auto !important;
    inset-inline-end: auto !important;
    inset-inline-start: 0 !important;
    width: 100% !important;
  }
}

#html-body .page-wrapper .awa-site-header .awa-header-right-col {
  display: flex !important;
  flex: 0 0 auto !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: clamp(8px, 1.2vw, 16px) !important;
  min-width: 0 !important;
  overflow: visible !important;
}

/* Minicart: sempre visível (desktop + mobile grid-area cart) */
#html-body .page-wrapper .awa-site-header .awa-header-minicart,
#html-body .page-wrapper .awa-site-header .awa-header-minicart[data-awa-header-cart="true"] {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 44px !important;
  min-width: 44px !important;
  height: 44px !important;
  min-height: 44px !important;
  overflow: visible !important;
  clip: auto !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
}

#html-body .page-wrapper .awa-site-header .awa-header-minicart .mini-carts,
#html-body .page-wrapper .awa-site-header .awa-header-minicart.shadowcart .mini-carts {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  width: auto !important;
  height: auto !important;
  min-width: 44px !important;
  min-height: 44px !important;
  overflow: visible !important;
  pointer-events: auto !important;
  padding: 0 !important;
  margin: 0 !important;
}

#html-body .page-wrapper .awa-site-header .awa-header-minicart .minicart-wrapper {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 44px !important;
  min-width: 44px !important;
  height: 44px !important;
  min-height: 44px !important;
  overflow: visible !important;
  opacity: 1 !important;
  visibility: visible !important;
}

#html-body .page-wrapper .awa-site-header .awa-header-minicart .minicart-wrapper :is(
  .action.showcart,
  a.showcart.header-mini-cart,
  .awa-minicart-trigger
) {
  position: relative !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 44px !important;
  height: 44px !important;
  min-width: 44px !important;
  min-height: 44px !important;
  opacity: 1 !important;
  visibility: visible !important;
  background: #b73337 !important;
  color: #ffffff !important;
  border: 0 !important;
  border-radius: 10px !important;
  cursor: pointer !important;
  pointer-events: auto !important;
  z-index: 2 !important;
  padding: 0 !important;
}

#html-body .page-wrapper .awa-site-header .awa-header-minicart .minicart-wrapper :is(
  .action.showcart,
  a.showcart.header-mini-cart
):hover {
  background: #8e2629 !important;
}

#html-body .page-wrapper .awa-site-header .awa-header-minicart .minicart-wrapper .awa-minicart-icon,
#html-body .page-wrapper .awa-site-header .awa-header-minicart .minicart-wrapper .showcart svg {
  display: inline-block !important;
  width: 20px !important;
  height: 20px !important;
  stroke: #ffffff !important;
  fill: none !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/* Fallback só antes do KO — esconde quando .showcart existe (evita ícone duplicado) */
#html-body .page-wrapper .awa-site-header .awa-header-minicart .awa-header-cart-fallback {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

@media (min-width: 992px) {
  #html-body .page-wrapper .awa-site-header .awa-header-minicart:not(:has(.minicart-wrapper .showcart)) .awa-header-cart-fallback {
    display: inline-flex !important;
    visibility: visible !important;
    pointer-events: auto !important;
    align-items: center !important;
    justify-content: center !important;
    width: 44px !important;
    height: 44px !important;
    background: #b73337 !important;
    border-radius: 10px !important;
  }
}

#html-body .page-wrapper .awa-site-header
  .awa-header-minicart .minicart-wrapper[data-awa-minicart-dropdown="1"]
  ~ .awa-header-cart-fallback,
#html-body .page-wrapper .awa-site-header
  .awa-header-minicart:has(.minicart-wrapper[data-awa-minicart-dropdown="1"]) .awa-header-cart-fallback,
#html-body .page-wrapper .awa-site-header
  .awa-header-minicart:has(.minicart-wrapper .showcart) .awa-header-cart-fallback {
  display: none !important;
}

/* Nav secundária — visível em TODAS as páginas (desktop ≥992px)
 * ui-ux-pro-max: fundo branco + borda; coluna Departamentos permanece vermelha.
 * NÃO pintar a barra inteira de #b73337 — o trigger some no mesmo tom (carrinho vazio).
 */
@media (min-width: 992px) {
  #html-body .page-wrapper .header-control.header-nav,
  #html-body .page-wrapper .header-control.awa-nav-bar,
  #html-body .page-wrapper .header-control.header-nav-global.awa-nav-bar,
  #html-body .page-wrapper .header-wrapper-sticky .header-control.header-nav {
    display: flex !important;
    align-items: stretch !important;
    min-height: var(--awa-hdr-nav-h, 52px) !important;
    height: auto !important;
    width: 100% !important;
    background: #ffffff !important;
    color: #333333 !important;
    border-block-start: 1px solid #e5e5e5 !important;
    border-block-end: 1px solid #e5e5e5 !important;
    overflow: visible !important;
    max-height: none !important;
  }

  #html-body .page-wrapper .header-control.header-nav > .container,
  #html-body .page-wrapper .header-control.awa-nav-bar > .container {
    display: flex !important;
    align-items: stretch !important;
    width: 100% !important;
    max-width: 1440px !important;
    margin-inline: auto !important;
    padding-inline: clamp(12px, 3vw, 20px) !important;
    box-sizing: border-box !important;
  }

  #html-body .page-wrapper .header-control.awa-nav-bar .awa-nav-bar__inner {
    display: flex !important;
    align-items: stretch !important;
    gap: 0 !important;
    min-height: var(--awa-hdr-nav-h, 52px) !important;
    height: auto !important;
    width: 100% !important;
  }

  #html-body .page-wrapper .header-control.awa-nav-bar .awa-header-categories.menu_left_home1 {
    display: flex !important;
    flex: 0 0 290px !important;
    max-width: 290px !important;
    min-width: 220px !important;
    visibility: visible !important;
    opacity: 1 !important;
    overflow: visible !important;
    background: #b73337 !important;
  }

  #html-body .page-wrapper .header-control.awa-nav-bar
    button.our_categories.title-category-dropdown[data-role="awa-vertical-menu-trigger"],
  #html-body .page-wrapper .header-control.awa-nav-bar .our_categories.title-category-dropdown {
    display: inline-flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    color: #ffffff !important;
    background: #b73337 !important;
  }

  #html-body .page-wrapper .header-control.awa-nav-bar .awa-header-primary-nav.menu_primary {
    display: flex !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
    align-items: center !important;
  }
}

/* ═══ 3. Footer — altura, blocos vazios, newsletter ═══ */
body#html-body .page-wrapper :is(.page_footer, .page-footer) :is(
  .block:empty,
  .velaBlock:empty,
  [class*="col"]:empty
) {
  display: none !important;
  min-height: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
}

body#html-body .page-wrapper .page_footer :is(
  .footer-static,
  .footer-container,
  #footer
) {
  min-height: 0 !important;
}

body#html-body .page-wrapper .page_footer .newsletter,
body#html-body .page-wrapper .page-footer .newsletter,
body#html-body .page-wrapper .page_footer .block.newsletter {
  max-width: 100% !important;
  width: 100% !important;
}

body#html-body .page-wrapper .page_footer .newsletter .form.subscribe,
body#html-body .page-wrapper .page-footer .newsletter .form.subscribe {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
  align-items: stretch !important;
  max-width: 520px !important;
}

body#html-body .page-wrapper .page_footer .newsletter .field,
body#html-body .page-wrapper .page-footer .newsletter .field {
  flex: 1 1 200px !important;
  min-width: 0 !important;
}

body#html-body .page-wrapper .page_footer .newsletter .action.subscribe,
body#html-body .page-wrapper .page-footer .newsletter .action.subscribe {
  flex: 0 0 auto !important;
  min-height: 44px !important;
  border-radius: 10px !important;
  background: #b73337 !important;
  color: #ffffff !important;
}

body#html-body .page-wrapper .footer-bottom,
body#html-body .page-wrapper .footer-copyright {
  background: #ffffff !important;
  color: #666666 !important;
  padding-block: 16px !important;
}

/* Footer links grid: evitar altura 766px por cada coluna
 * Causa: min-height:100% nas colunas + align-items:stretch no grid
 * Fix: align-items:start para cada coluna crescer só com seu conteúdo
 */
body#html-body .page-wrapper #footer.footer-container .container .row,
body#html-body .page-wrapper #footer.footer-container .container .rowFlexMargin {
  align-items: start !important;
}

body#html-body .page-wrapper #footer.footer-container .col-lg-3 {
  align-self: start !important;
  height: auto !important;
}

body#html-body .page-wrapper #footer.footer-container .vela-content.velaFooterMenu {
  min-height: 0 !important;
  height: auto !important;
}

/* Footer bottom: corrigir wrap do bloco pagamentos + copyright
 * Causa: os dois itens juntos excedem o container, causando wrap
 * Fix: nowrap + flex proporcional
 */
body#html-body .page-wrapper .footer-bottom .container {
  max-width: 1440px !important;
  margin-inline: auto !important;
  padding: 16px 20px !important;
  box-sizing: border-box !important;
}

body#html-body .page-wrapper .footer-bottom .footer-bottom-inner {
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
}

body#html-body .page-wrapper .footer-bottom .footer-bottom-inner > .row.awa-footer-bottom__row {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  width: auto !important;
}

body#html-body .page-wrapper .footer-bottom .footer-bottom-inner > .awa-footer-bottom__copyright {
  flex: 0 1 auto !important;
  min-width: 180px !important;
  text-align: right !important;
  padding-block: 8px !important;
}

/* Footer-bottom: reduzir padding excessivo no bloco de pagamentos e copyright
 * Causa: .awa-footer-bottom__copyright tem padding:24px topo/fundo (48px total)
 * .row.awa-footer-bottom__row tem padding implícito de ~80px
 */
body#html-body .page-wrapper .footer-bottom {
  padding-block: 8px !important;
}

body#html-body .page-wrapper .footer-bottom .footer-bottom-inner {
  padding-block: 4px !important;
  min-height: 0 !important;
}

/* Footer-bottom grid row: forçar flex para evitar altura de grid auto */
body#html-body .page-wrapper .footer-bottom .row.awa-footer-bottom__row,
body#html-body .page-wrapper .footer-bottom-inner .row.awa-footer-bottom__row {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 12px 16px !important;
  padding: 0 !important;
  margin: 0 !important;
}

body#html-body .page-wrapper .footer-bottom .row.awa-footer-bottom__row > [class*="col-"] {
  padding: 4px 0 !important;
  flex-shrink: 0 !important;
}

/* Mobile footer-bottom: neutralize Bootstrap column widths inside the payment row. */
@media (max-width: 767px) {
  body#html-body .page-wrapper .footer-bottom {
    padding-inline: 0 !important;
    box-sizing: border-box !important;
  }

  body#html-body .page-wrapper .footer-bottom .container {
    width: 100% !important;
    max-width: 100% !important;
    padding-inline: var(--awa-container-pad, 16px) !important;
    box-sizing: border-box !important;
  }

  body#html-body .page-wrapper .footer-bottom .footer-bottom-inner {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: var(--awa-space-3, 12px) !important;
    width: 100% !important;
    max-width: 100% !important;
    padding-inline: 0 !important;
    box-sizing: border-box !important;
  }

  body#html-body .page-wrapper .footer-bottom .row.awa-footer-bottom__row,
  body#html-body .page-wrapper .footer-bottom-inner .row.awa-footer-bottom__row {
    flex-direction: column !important;
    align-items: stretch !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  body#html-body .page-wrapper .footer-bottom .row.awa-footer-bottom__row > [class*="col-"],
  body#html-body .page-wrapper .footer-bottom-inner .row.awa-footer-bottom__row > [class*="col-"] {
    flex: 0 0 auto !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  body#html-body .page-wrapper .footer-bottom :is(.awa-footer-pay-sec, .awa-footer-security-sec, .awa-footer-bottom__copyright) {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    text-align: center !important;
    box-sizing: border-box !important;
  }
}

/* Footer container: reduzir padding-bottom que cria espaço vazio */
body#html-body .page-wrapper #footer.footer-container {
  padding-bottom: 0 !important;
}

body#html-body .page-wrapper #footer.footer-container > .container {
  padding-block: 24px !important;
}

/* Sticky inferior (fixed-right / back-to-top) */
body#html-body .fixed-right .fixed-right-ul {
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
  align-items: flex-end !important;
}

body#html-body .fixed-right .fixed-right-ul li {
  position: relative !important;
  inset: auto !important;
}

body#html-body .fixed-right .fixed-right-ul li.scroll-top:not(.show) {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

/* ═══ 4. PDP — layout + botão compra + relacionados ═══ */
body#html-body.catalog-product-view .page-wrapper .page-main {
  max-width: 1440px !important;
}

@media (min-width: 992px) {
  body#html-body.catalog-product-view .main-detail > .row {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: flex-start !important;
    gap: 32px !important;
    width: 100% !important;
  }

  body#html-body.catalog-product-view .main-detail > .row > .col-md-6:first-child {
    flex: 1 1 54% !important;
    max-width: 54% !important;
    width: auto !important;
    float: none !important;
  }

  body#html-body.catalog-product-view .main-detail > .row > .col-md-6:last-child {
    flex: 1 1 46% !important;
    max-width: 46% !important;
    width: auto !important;
    float: none !important;
    min-width: 0 !important;
  }
}

body#html-body.catalog-product-view .product-info-main,
body#html-body.catalog-product-view .detail-info.product-info-main {
  width: 100% !important;
  max-width: 100% !important;
}

body#html-body.catalog-product-view .box-tocart .action.tocart,
body#html-body.catalog-product-view #product-addtocart-button,
body#html-body.catalog-product-view .product-info-main .action.primary.tocart {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  max-width: 100% !important;
  min-height: 48px !important;
  height: auto !important;
  padding: 12px 20px !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  line-height: 1.25 !important;
  border-radius: 12px !important;
  background: #b73337 !important;
  color: #ffffff !important;
  border: 0 !important;
  box-sizing: border-box !important;
}

body#html-body.catalog-product-view .box-tocart .action.tocart:hover {
  background: #8e2629 !important;
}

body#html-body.catalog-product-view .related.products .products-grid,
body#html-body.catalog-product-view .block.related .products {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)) !important;
  gap: var(--awa-structural-gap, 24px) !important;
  width: 100% !important;
}

body#html-body.catalog-product-view .related.products .product-item {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
}

/* Sticky bar PDP */
body#html-body.catalog-product-view .awa-pdp-sticky-bar {
  left: 50% !important;
  right: auto !important;
  width: calc(100% - 32px) !important;
  max-width: 500px !important;
  box-sizing: border-box !important;
  padding-inline: 12px !important;
  transform: translateX(-50%) !important;
  background: #ffffff !important;
  border-top: 1px solid #e5e5e5 !important;
  box-shadow: 0 -4px 16px rgba(0, 0, 0, 0.08) !important;
  z-index: 1002 !important;
}

body#html-body.catalog-product-view .awa-pdp-sticky-bar__inner {
  max-width: 1440px !important;
  margin-inline: auto !important;
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  min-height: 56px !important;
}

body#html-body.catalog-product-view .awa-pdp-sticky-bar__btn {
  min-height: 44px !important;
  border-radius: 10px !important;
  flex-shrink: 0 !important;
}

/* Mobile — sticky bar acima da bottom nav (JS: .awa-pdp-sticky-bar--visible + .is-visible) */
@media (max-width: 991px) {
  body#html-body.catalog-product-view .awa-pdp-sticky-bar.awa-pdp-sticky-bar--visible,
  body#html-body.catalog-product-view .awa-pdp-sticky-bar.is-visible {
    bottom: calc(var(--awa-mobile-bottom-nav-h, 84px) + 12px + env(safe-area-inset-bottom, 0px)) !important;
    left: 50% !important;
    right: auto !important;
    transform: translateX(-50%) !important;
    width: calc(100% - 24px) !important;
    max-width: 500px !important;
    padding: 8px !important;
    border-radius: 22px !important;
  }

  body#html-body.catalog-product-view .awa-pdp-sticky-bar__inner {
    display: grid !important;
    grid-template-columns: 44px minmax(0, 1fr) minmax(96px, auto) !important;
    gap: 8px !important;
    min-height: 56px !important;
    padding: 0 !important;
  }

  body#html-body.catalog-product-view:has(.awa-pdp-sticky-bar.awa-pdp-sticky-bar--visible),
  body#html-body.catalog-product-view:has(.awa-pdp-sticky-bar.is-visible) {
    padding-bottom: calc(76px + var(--awa-mobile-bottom-nav-h, 84px) + 24px + env(safe-area-inset-bottom, 0px)) !important;
  }

  /* Keep the scroll shortcut out of the sticky buy area on mobile PDP. */
  body#html-body.catalog-product-view:has(.awa-pdp-sticky-bar.awa-pdp-sticky-bar--visible) :is(#awa-back-to-top, .awa-back-to-top),
  body#html-body.catalog-product-view:has(.awa-pdp-sticky-bar.is-visible) :is(#awa-back-to-top, .awa-back-to-top) {
    bottom: calc(var(--awa-mobile-bottom-nav-h, 84px) + 108px + env(safe-area-inset-bottom, 0px)) !important;
    right: 12px !important;
    z-index: 1001 !important;
  }
}

/* ═══ 5. Checkout — escopo .checkout-index-index (exceto OPC: premium 2-col) ═══ */
body#html-body.checkout-index-index,
body#html-body.onepagecheckout-index-index {
  --awa-checkout-col-left: 200px;
  --awa-checkout-col-right: 340px;
  --awa-checkout-col-gap: 28px;
}

body#html-body.checkout-index-index .page-wrapper .page-main,
body#html-body.onepagecheckout-index-index .page-wrapper .page-main {
  max-width: min(1440px, calc(100vw - 32px)) !important;
  padding-inline: clamp(12px, 3vw, 20px) !important;
  font-size: 15px !important;
  line-height: 1.5 !important;
}

@media (min-width: 1024px) {
  body#html-body.checkout-index-index:not(.rokanthemes-onepagecheckout) .page-wrapper .checkout-container,
  body#html-body.onepagecheckout-index-index:not(.rokanthemes-onepagecheckout) .page-wrapper .checkout-container {
    display: grid !important;
    grid-template-columns:
      minmax(180px, var(--awa-checkout-col-left, 200px))
      minmax(0, 1fr)
      minmax(320px, var(--awa-checkout-col-right, 340px)) !important;
    grid-template-rows: auto 1fr !important;
    gap: var(--awa-checkout-col-gap, 28px) !important;
    align-items: start !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-inline: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
  }

  body#html-body.checkout-index-index:not(.rokanthemes-onepagecheckout) .checkout-container > .awa-checkout-steps-rail,
  body#html-body.checkout-index-index:not(.rokanthemes-onepagecheckout) .checkout-container > .opc-progress-bar {
    grid-column: 1 !important;
    grid-row: 1 / -1 !important;
    width: 100% !important;
    max-width: var(--awa-checkout-col-left, 200px) !important;
  }

  body#html-body.checkout-index-index:not(.rokanthemes-onepagecheckout) .checkout-container > .opc-wrapper {
    grid-column: 2 !important;
    grid-row: 1 / -1 !important;
    width: 100% !important;
    min-width: 0 !important;
    font-size: 15px !important;
  }

  body#html-body.checkout-index-index:not(.rokanthemes-onepagecheckout) .checkout-container > :is(#opc-sidebar, .opc-sidebar) {
    grid-column: 3 !important;
    grid-row: 1 / -1 !important;
    width: 100% !important;
    max-width: var(--awa-checkout-col-right, 340px) !important;
    position: sticky !important;
    top: 100px !important;
    align-self: start !important;
  }
}

body#html-body.checkout-index-index .opc-wrapper .step-title {
  font-size: 1.125rem !important;
}

body#html-body.checkout-index-index .opc-block-summary {
  font-size: 14px !important;
  border: 1px solid #e5e5e5 !important;
  border-radius: 12px !important;
  background: #f7f7f7 !important;
  padding: 16px !important;
}

body#html-body.checkout-index-index .action.primary,
body#html-body.checkout-index-index .action.action-apply {
  min-height: 44px !important;
  border-radius: 10px !important;
}

/* Carrinho grid: awa-cart-layout-terminal.css (blocking no checkout_cart_index) */

/* ═══ 6. Dashboard B2B / conta ═══ */
body#html-body:is(
  .b2b-account-dashboard,
  .customer-account-index,
  .account
) .page-wrapper > .page-main {
  max-width: 1280px !important;
}

/* Layout de colunas de conta: definido em awa-b2b-pages-late.css (§3).
   Duplicação removida — uma única fonte de verdade evita conflito de cascata. */

@media (min-width: 768px) {

  body#html-body.b2b-account-dashboard .columns.layout-2-col > div:first-child {
    max-height: calc(100vh - var(--awa-header-scroll-offset, 120px) - 32px) !important;
    overflow-y: auto !important;
    overscroll-behavior: contain !important;
    scrollbar-gutter: stable;
  }
}

body#html-body.b2b-account-dashboard .columns.layout-2-col > [class*="col-"],
body#html-body.b2b-account-dashboard .columns > [class*="col-"] {
  float: none !important;
  width: auto !important;
  max-width: none !important;
  flex: none !important;
  min-width: 0 !important;
  padding-inline: 0 !important;
}

body#html-body.b2b-account-dashboard .columns.layout-2-col > div:first-child {
  grid-column: 1 !important;
  grid-row: 1 !important;
  align-self: start !important;
  min-width: 0 !important;
}

body#html-body.b2b-account-dashboard .columns > .col-main,
body#html-body.b2b-account-dashboard .columns > .column.main,
body#html-body.customer-account-index .columns > .column.main {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  min-width: 0 !important;
  min-height: 200px !important;
  width: 100% !important;
  float: none !important;
  padding: 0 !important;
  grid-column: 2 !important;
  grid-row: 1 !important;
  align-self: start !important;
}

body#html-body.b2b-account-dashboard .col-main > .page-title-wrapper {
  display: none !important;
}

body#html-body.b2b-account-dashboard .sidebar-additional1,
body#html-body.b2b-account-dashboard .sidebar.sidebar-additional {
  display: none !important;
}

body#html-body.b2b-account-dashboard .b2b-dashboard,
body#html-body.b2b-account-dashboard .awa-b2b-dashboard {
  display: flex !important;
  flex-direction: column !important;
  gap: 16px !important;
  width: 100% !important;
  opacity: 1 !important;
  visibility: visible !important;
}

body#html-body.b2b-account-dashboard .b2b-dashboard :is(
  .b2b-dashboard-header,
  .b2b-company-info,
  .b2b-summary-cards,
  .b2b-onboarding-section,
  .b2b-section,
  .summary-card
) {
  opacity: 1 !important;
  visibility: visible !important;
  animation-fill-mode: forwards !important;
}

body#html-body.b2b-account-dashboard .b2b-summary-cards {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(min(280px, 100%), 1fr)) !important;
  gap: 16px !important;
}

body#html-body.b2b-account-dashboard .awa-b2b-dashboard :is(
  .awa-b2b-card,
  .b2b-dashboard-card,
  [class*="dashboard-card"],
  .b2b-company-info,
  .b2b-onboarding-section,
  .b2b-section,
  .b2b-quick-actions,
  .summary-card
) {
  max-width: 100% !important;
  border-radius: 12px !important;
  border: 1px solid #e5e5e5 !important;
  background: #ffffff !important;
}

body#html-body.b2b-account-dashboard .block-collapsible-nav .item.current a,
body#html-body.b2b-account-dashboard .block-collapsible-nav .item a.current {
  background: color-mix(in srgb, #b73337 8%, transparent) !important;
  color: #b73337 !important;
  font-weight: 700 !important;
  border-inline-start: 3px solid #b73337 !important;
}

/* ═══ 7. Home desktop — alinhamento header + nav sem buraco (2026-05-20) ═══ */
#html-body .page-wrapper .awa-site-header .awa-top-utility-bar .topbar-info--phone a,
#html-body .page-wrapper .awa-site-header .awa-top-utility-bar .topbar-info--phone a.info-text {
  color: #1e293b !important;
  font-weight: 600 !important;
}

#html-body .page-wrapper .awa-site-header .awa-top-utility-bar .topbar-info--hours,
#html-body .page-wrapper .awa-site-header .awa-top-utility-bar .topbar-info--hours .info-text {
  color: #475569 !important;
  font-weight: 500 !important;
}

@media (min-width: 992px) {
  #html-body .page-wrapper .awa-site-header .awa-main-header__inner.wp-header,
  #html-body .page-wrapper .awa-site-header .awa-main-header__inner[data-awa-header-row] {
    align-items: center !important;
    grid-template-columns: minmax(132px, 196px) minmax(0, 1fr) minmax(400px, auto) !important;
    padding-block: 8px !important;
    min-height: 68px !important;
    max-height: 80px !important;
  }

  #html-body .page-wrapper .awa-site-header .awa-header-brand-cell,
  #html-body .page-wrapper .awa-site-header .awa-header-search-col,
  #html-body .page-wrapper .awa-site-header .awa-header-right-col {
    align-self: center !important;
  }

  #html-body .page-wrapper .awa-site-header .awa-header-account-prompt,
  #html-body .page-wrapper .awa-site-header .awa-header-contact-links.awa-header-account-prompt {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    gap: 10px !important;
    max-width: min(300px, 34vw) !important;
    min-width: 210px !important;
    height: auto !important;
    width: auto !important;
  }

  #html-body .page-wrapper .awa-site-header .awa-header-account-prompt__text {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    gap: 1px !important;
    min-width: 0 !important;
  }

  #html-body .page-wrapper .awa-site-header .awa-header-account-prompt__line1 {
    font-size: max(12px, 0.75rem) !important;
    line-height: 1.25 !important;
    color: #666666 !important;
    white-space: nowrap !important;
  }

  #html-body .page-wrapper .awa-site-header .awa-header-account-prompt__line2 {
    display: inline-flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    gap: 4px !important;
    white-space: nowrap !important;
  }

  #html-body .page-wrapper .awa-site-header .awa-header-right-col .awa-header-minicart {
    align-self: center !important;
    flex-shrink: 0 !important;
  }

  /* Home: esconder shell vazio do top-menu; links rápidos colados ao Departamentos */
  #html-body:is(.cms-index-index, .cms-home, .cms-homepage_ayo_home5)
    .page-wrapper .header-control.awa-nav-bar .awa-header-primary-nav.menu_primary {
    display: none !important;
    flex: 0 0 0 !important;
    width: 0 !important;
    min-width: 0 !important;
    max-width: 0 !important;
    overflow: hidden !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  #html-body:is(.cms-index-index, .cms-home, .cms-homepage_ayo_home5)
    .page-wrapper .header-control.awa-nav-bar .awa-nav-bar__inner {
    justify-content: flex-start !important;
    gap: 0 !important;
  }

  #html-body:is(.cms-index-index, .cms-home, .cms-homepage_ayo_home5)
    .page-wrapper .header-control.awa-nav-bar .awa-nav-quick-links {
    display: flex !important;
    flex: 1 1 auto !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    visibility: visible !important;
    opacity: 1 !important;
  }

  #html-body:is(.cms-index-index, .cms-home, .cms-homepage_ayo_home5)
    .page-wrapper .header-control.awa-nav-bar .awa-nav-quick-links__list {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    width: 100% !important;
  }

  #html-body:is(.cms-index-index, .cms-home, .cms-homepage_ayo_home5)
    .page-wrapper .header-control.awa-nav-bar .awa-nav-quick-links__link {
    display: inline-flex !important;
    align-items: center !important;
    min-height: 52px !important;
    padding-inline: 16px !important;
    color: #333333 !important;
    white-space: nowrap !important;
  }

  #html-body:is(.cms-index-index, .cms-home, .cms-homepage_ayo_home5)
    .page-wrapper .top-home-content--above-fold {
    margin-top: 0 !important;
    padding-top: 0 !important;
    overflow: hidden !important;
  }

  #html-body:is(.cms-index-index, .cms-home, .cms-homepage_ayo_home5)
    .page-wrapper .top-home-content--above-fold :is(.banner-slider, .banner-slider2, .awa-hero-slider) {
    margin-top: 0 !important;
    border-radius: 0 !important;
    overflow: hidden !important;
  }
}

/* ═══ Logo header — regra canônica (E2E: .logo img width ≥80px @ ≥992px, ≥56px @ mobile)
   Logo nativo 161×92 — max-height 45px ⇒ width ~79px (falha Playwright).
   Última palavra neste bundle; vence 45px de styles-l / super-global. ═══ */
#html-body .page-wrapper .awa-site-header :is(
  .logo img,
  .awa-header-brand-cell .logo img,
  .awa-header-primary-row .logo img,
  .col-md-2 .logo img,
  .col-sm-2 .logo img
) {
  display: block !important;
  width: auto !important;
  height: auto !important;
  max-width: 161px !important;
  object-fit: contain !important;
  object-position: left center !important;
}

@media (max-width: 767px) {
  #html-body .page-wrapper .awa-site-header :is(
    .logo img,
    .awa-header-brand-cell .logo img,
    .awa-header-primary-row .logo img,
    .col-md-2 .logo img
  ) {
    max-height: 40px !important;
    min-width: 0 !important;
    max-width: min(140px, 36vw) !important;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  #html-body .page-wrapper .awa-site-header :is(
    .logo img,
    .awa-header-brand-cell .logo img,
    .awa-header-primary-row .logo img,
    .col-md-2 .logo img
  ) {
    max-height: 44px !important;
    min-width: 56px !important;
    max-width: 160px !important;
  }
}

@media (min-width: 992px) {
  #html-body .page-wrapper .awa-site-header :is(
    .logo img,
    .awa-header-brand-cell .logo img,
    .awa-header-primary-row .logo img,
    .col-md-2 .logo img
  ) {
    max-height: 48px !important;
    min-width: 80px !important;
    max-width: 180px !important;
  }
}

@media (min-width: 1367px) {
  #html-body .page-wrapper .awa-site-header :is(
    .logo img,
    .awa-header-brand-cell .logo img,
    .awa-header-primary-row .logo img,
    .col-md-2 .logo img
  ) {
    max-height: 52px !important;
    max-width: 196px !important;
  }
}
