/* =====================================================================
   ER8 — Poppins global (auto-alojada, garantia cross-OS/navegador/dispositivo)
   1) @font-face Poppins (pesos 300–700, latin + latin-ext)
   2) Remapeia Roboto / Roboto Condensed / Bahnschrift -> Poppins
      (independente da ordem do CSS; não toca em Material Icons)
   3) Força Poppins nos elementos de texto base (sem partir ícones nem RTL)
   ===================================================================== */

/* ---------- 1) Poppins (latin) ---------- */
@font-face{font-family:'Poppins';font-style:normal;font-weight:300;font-display:swap;src:url(poppins-300.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Poppins';font-style:normal;font-weight:400;font-display:swap;src:url(poppins-400.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Poppins';font-style:normal;font-weight:500;font-display:swap;src:url(poppins-500.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Poppins';font-style:normal;font-weight:600;font-display:swap;src:url(poppins-600.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Poppins';font-style:normal;font-weight:700;font-display:swap;src:url(poppins-700.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

/* ---------- 1b) Poppins (latin-ext: PL, acentos, etc.) ---------- */
@font-face{font-family:'Poppins';font-style:normal;font-weight:300;font-display:swap;src:url(poppins-300-ext.woff2) format('woff2');unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Poppins';font-style:normal;font-weight:400;font-display:swap;src:url(poppins-400-ext.woff2) format('woff2');unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Poppins';font-style:normal;font-weight:500;font-display:swap;src:url(poppins-500-ext.woff2) format('woff2');unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Poppins';font-style:normal;font-weight:600;font-display:swap;src:url(poppins-600-ext.woff2) format('woff2');unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Poppins';font-style:normal;font-weight:700;font-display:swap;src:url(poppins-700-ext.woff2) format('woff2');unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF}

/* ---------- 2) Remap das fontes concorrentes -> Poppins ----------
   Redefinir @font-face para a mesma família faz o browser desenhar Poppins
   em TODAS as regras que já usam Roboto/Roboto Condensed/Bahnschrift,
   sem alterar seletores e sem afetar 'Material Icons'. */
@font-face{font-family:'Roboto';font-style:normal;font-weight:300;font-display:swap;src:url(poppins-300.woff2) format('woff2')}
@font-face{font-family:'Roboto';font-style:normal;font-weight:400;font-display:swap;src:url(poppins-400.woff2) format('woff2')}
@font-face{font-family:'Roboto';font-style:normal;font-weight:500;font-display:swap;src:url(poppins-500.woff2) format('woff2')}
@font-face{font-family:'Roboto';font-style:normal;font-weight:600;font-display:swap;src:url(poppins-600.woff2) format('woff2')}
@font-face{font-family:'Roboto';font-style:normal;font-weight:700;font-display:swap;src:url(poppins-700.woff2) format('woff2')}
@font-face{font-family:'Roboto Condensed';font-style:normal;font-weight:300;font-display:swap;src:url(poppins-300.woff2) format('woff2')}
@font-face{font-family:'Roboto Condensed';font-style:normal;font-weight:400;font-display:swap;src:url(poppins-400.woff2) format('woff2')}
@font-face{font-family:'Roboto Condensed';font-style:normal;font-weight:500;font-display:swap;src:url(poppins-500.woff2) format('woff2')}
@font-face{font-family:'Roboto Condensed';font-style:normal;font-weight:600;font-display:swap;src:url(poppins-600.woff2) format('woff2')}
@font-face{font-family:'Roboto Condensed';font-style:normal;font-weight:700;font-display:swap;src:url(poppins-700.woff2) format('woff2')}
@font-face{font-family:'Bahnschrift';font-style:normal;font-weight:400;font-display:swap;src:url(poppins-400.woff2) format('woff2')}
@font-face{font-family:'Bahnschrift';font-style:normal;font-weight:600;font-display:swap;src:url(poppins-600.woff2) format('woff2')}
@font-face{font-family:'Bahnschrift';font-style:normal;font-weight:700;font-display:swap;src:url(poppins-700.woff2) format('woff2')}

/* ---------- 2b) Remap de TODAS as restantes famílias de TEXTO -> Poppins ----------
   NÃO inclui fontes de ÍCONES (Material Icons, Font Awesome, VideoJS, Prestafont,
   slick, swiper-icons) nem monospace de código. weight-range cobre todos os pesos. */
@font-face{font-family:'Arial';font-weight:100 500;font-display:swap;src:url(poppins-400.woff2) format('woff2')}
@font-face{font-family:'Arial';font-weight:501 900;font-display:swap;src:url(poppins-700.woff2) format('woff2')}
@font-face{font-family:'Helvetica';font-weight:100 500;font-display:swap;src:url(poppins-400.woff2) format('woff2')}
@font-face{font-family:'Helvetica';font-weight:501 900;font-display:swap;src:url(poppins-700.woff2) format('woff2')}
@font-face{font-family:'Helvetica Neue';font-weight:100 500;font-display:swap;src:url(poppins-400.woff2) format('woff2')}
@font-face{font-family:'Helvetica Neue';font-weight:501 900;font-display:swap;src:url(poppins-700.woff2) format('woff2')}
@font-face{font-family:'Georgia';font-weight:100 500;font-display:swap;src:url(poppins-400.woff2) format('woff2')}
@font-face{font-family:'Georgia';font-weight:501 900;font-display:swap;src:url(poppins-700.woff2) format('woff2')}
@font-face{font-family:'Times New Roman';font-weight:100 500;font-display:swap;src:url(poppins-400.woff2) format('woff2')}
@font-face{font-family:'Times New Roman';font-weight:501 900;font-display:swap;src:url(poppins-700.woff2) format('woff2')}
@font-face{font-family:'Times';font-weight:100 900;font-display:swap;src:url(poppins-400.woff2) format('woff2')}
@font-face{font-family:'Trebuchet MS';font-weight:100 500;font-display:swap;src:url(poppins-400.woff2) format('woff2')}
@font-face{font-family:'Trebuchet MS';font-weight:501 900;font-display:swap;src:url(poppins-700.woff2) format('woff2')}
@font-face{font-family:'Tahoma';font-weight:100 900;font-display:swap;src:url(poppins-400.woff2) format('woff2')}
@font-face{font-family:'Verdana';font-weight:100 900;font-display:swap;src:url(poppins-400.woff2) format('woff2')}
@font-face{font-family:'Open Sans';font-weight:100 500;font-display:swap;src:url(poppins-400.woff2) format('woff2')}
@font-face{font-family:'Open Sans';font-weight:501 900;font-display:swap;src:url(poppins-700.woff2) format('woff2')}
@font-face{font-family:'Inter';font-weight:100 500;font-display:swap;src:url(poppins-400.woff2) format('woff2')}
@font-face{font-family:'Inter';font-weight:501 900;font-display:swap;src:url(poppins-700.woff2) format('woff2')}
@font-face{font-family:'IBM Plex Sans';font-weight:100 500;font-display:swap;src:url(poppins-400.woff2) format('woff2')}
@font-face{font-family:'IBM Plex Sans';font-weight:501 900;font-display:swap;src:url(poppins-700.woff2) format('woff2')}

/* ---------- 3) Forçar Poppins no texto (sem ícones / sem RTL) ----------
   Lista deliberada de elementos de texto. NÃO inclui i/span/[class*=icon]
   para não partir Material Icons. RTL mantém-se (body.lang-rtl tem maior
   especificidade + !important no head). */
html, body,
h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6,
p, a, li, ol, ul, dl, dd, dt, label, legend, small, strong, b, em, blockquote, figcaption, caption,
button, input, select, textarea, optgroup, fieldset,
table, th, td, tr, thead, tbody, tfoot,
code, pre, kbd, samp,
nav, header, footer, section, article, aside, main, address, time, mark, cite, q, sub, sup, abbr,
.btn, .form-control, .nav, .navbar, .menu, .breadcrumb, .dropdown-menu, .modal, .tooltip, .popover, .alert, .badge, .card, .tab-content, .pagination,
.product-title, .product-name, .price, .h1-product-name {
  font-family: 'Poppins', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif !important;
}

/* Garante que campos de formulário (que muitas vezes herdam do sistema) usam Poppins */
input::placeholder, textarea::placeholder { font-family: 'Poppins', sans-serif !important; }

/* ---------- 4) Elementor (page builder): injeta o seu proprio Roboto depois do nosso.
   Override por seletor (vence a regra do Elementor). Nao toca em icones. */
.elementor-widget-container,
.elementor-heading-title, .elementor-text-editor, .elementor-button, .elementor-button-text,
.elementor-widget-heading, .elementor-widget-text-editor,
[class*="elementor-widget"] h1, [class*="elementor-widget"] h2, [class*="elementor-widget"] h3,
[class*="elementor-widget"] h4, [class*="elementor-widget"] h5, [class*="elementor-widget"] h6,
[class*="elementor-widget"] p, [class*="elementor-widget"] a, [class*="elementor-widget"] li,
[class*="elementor-widget"] td, [class*="elementor-widget"] label, [class*="elementor-widget"] button {
  font-family: 'Poppins', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif !important;
}

/* ---------- 5) CATCH-ALL de máxima prioridade (Poppins em TODO o texto) ----------
   Vence page-builders (Elementor/Creative-popup/top-banner) que injetam Roboto com
   !important. Exclui elementos de ÍCONE (<i>, .material-icons, *icon*, .fa*, vjs, slick)
   para não os partir. Pseudos (::before/::after) não são afetados -> ícones em ::before
   (swiper/FA) mantêm-se. Especificidade altíssima via cadeia de :not(). */
html body:not(.lang-rtl) *:not(i):not(.material-icons):not(.material-icons-outlined):not(.material-symbols-outlined):not([class*="icon"]):not([class*="Icon"]):not(.fa):not(.fas):not(.far):not(.fal):not(.fab):not([class^="fa-"]):not([class*=" fa-"]):not([class*="vjs"]):not([class*="slick-"]):not([class*="swiper"]):not(svg):not(svg *) {
  font-family: 'Poppins', -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif !important;
}
