/* Mistroni — CSS complementar isolado.
   Estilos de tipografia, cor, fundo, bordas e padding permanecem nos widgets Elementor.
   As únicas cores de botão aqui são referentes ao ESTADO ATIVO dos filtros. */
.mst-site .mst-header{position:sticky;top:0;z-index:55;}
.mst-site .mst-header-inner{position:relative;}
.mst-site .mst-menu-toggle{display:none;}
.mst-site .mst-hero{position:relative;isolation:isolate;}
.mst-site .mst-hero::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(90deg,rgba(11,29,43,.93) 0%,rgba(11,29,43,.76) 48%,rgba(11,29,43,.35) 100%);}
.mst-site .mst-hero-inner{position:relative;z-index:1;}
.mst-site .mst-product-card{overflow:hidden;transition:transform .2s,box-shadow .2s;}
.mst-site .mst-product-card:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(16,37,53,.09);}
.mst-site .mst-product-card.mst-filter-hidden{display:none;}
/* A classe do filtro somente gerencia o estado selecionado; seus demais estilos são nativos. */
.mst-site .mst-filter[aria-pressed="true"] .elementor-button{background-color:#122532;color:#fff;border-color:#122532;}
.mst-site .mst-filter .elementor-button:focus-visible{outline:2px solid #D39B3B;outline-offset:2px;}
/* O formulário é um widget HTML de propósito, pois não exige Elementor Pro ou plugin de formulários. */
.mst-site .mst-quote-form{display:grid;gap:12px;}
.mst-site .mst-quote-form input,.mst-site .mst-quote-form select,.mst-site .mst-quote-form textarea{width:100%;min-width:0;border:1px solid #d3dadd;border-radius:6px;background:#fff;padding:14px;font:400 13px/1.5 Inter,Arial,sans-serif;color:#152533;box-sizing:border-box;}
.mst-site .mst-quote-form textarea{min-height:100px;resize:vertical;}
.mst-site .mst-quote-form button{justify-self:start;border:0;border-radius:6px;background:#D39B3B;color:#122532;padding:13px 20px;font:750 13px/1.5 Inter,Arial,sans-serif;cursor:pointer;}
.mst-site .mst-quote-form button:hover{background:#e4b25d;}
.mst-site .mst-quote-form :focus-visible{outline:2px solid #D39B3B;outline-offset:2px;}
.mst-site .mst-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
.mst-site .mst-floating-wa{position:fixed;right:20px;bottom:22px;z-index:70;filter:drop-shadow(0 7px 12px rgba(0,0,0,.2));}
@media(max-width:970px){
  .mst-site .mst-head-cta{display:none;}
}
@media(max-width:767px){
  .mst-site .mst-topbar{display:none;}
  .mst-site .mst-header-inner{min-height:70px;}
  .mst-site .mst-header-logo img{max-width:145px;}
  .mst-site .mst-menu-toggle{display:block;}
  .mst-site .mst-navlinks{display:none;position:absolute;top:100%;left:0;right:0;z-index:60;width:100%;padding:10px 12px 18px;background:#fff;border:1px solid #e5e8e8;box-shadow:0 15px 28px rgba(10,37,51,.1);}
  .mst-site .mst-navlinks.mst-open{display:flex;flex-direction:column;align-items:stretch;gap:0;}
  .mst-site .mst-navlinks .mst-navlink .elementor-button{width:100%;text-align:left;}
  .mst-site .mst-hero-features{display:none;}
  .mst-site .mst-catalog-art{display:none;}
  .mst-site .mst-product-image img{max-width:100%;}
}
@media(max-width:520px){
  .mst-site .mst-floating-wa{right:12px;bottom:12px;}
}
@media(prefers-reduced-motion:reduce){.mst-site .mst-product-card{transition:none;}}
