/* SANTIM NOSSO MAQUINÁRIO — Somente estrutura e interações.
   Fontes, tamanho, cores, padding, margens, background, botões = controles nativos do Elementor.
   Tudo restrito ao prefixo sm4-. A única regra !important é display:none de itens filtrados. */
:where(.sm4-site){overflow:clip}
:where(.sm4-site) .sm4-header{position:relative;z-index:45}
:where(.sm4-site) .sm4-menu-toggle{display:none}
:where(.sm4-site) .sm4-header-inner{position:relative}
:where(.sm4-site) .sm4-hero-visual{position:relative;overflow:hidden}
:where(.sm4-site) .sm4-hero-visual .sm4-hero-photo{position:absolute;inset:0;width:100%;height:100%}
:where(.sm4-site) .sm4-hero-photo .elementor-widget-container{width:100%;height:100%}
:where(.sm4-site) .sm4-hero-photo img{width:100%;height:100%;object-fit:cover;display:block}
:where(.sm4-site) .sm4-photo-label{position:absolute;left:30px;bottom:30px;z-index:3}
:where(.sm4-site) .sm4-photo-count{position:absolute;top:20px;right:20px;z-index:3}
:where(.sm4-site) .sm4-hero-visual::after{content:"";position:absolute;inset:60% 0 0;pointer-events:none;background:linear-gradient(transparent,rgba(0,0,0,.35));z-index:1}
:where(.sm4-site) .sm4-fact{min-width:0}
:where(.sm4-site) .sm4-fact+.sm4-fact{border-left:1px solid #e9e5e1}
:where(.sm4-site) .sm4-photo-card{position:relative;min-width:0;overflow:hidden;cursor:zoom-in;isolation:isolate}
:where(.sm4-site) .sm4-gallery-photo{position:absolute;inset:0;width:100%;height:100%;z-index:0}
:where(.sm4-site) .sm4-gallery-photo .elementor-widget-container{width:100%;height:100%;overflow:hidden}
:where(.sm4-site) .sm4-gallery-photo img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .4s ease}
:where(.sm4-site) .sm4-photo-card:hover .sm4-gallery-photo img{transform:scale(1.035)}
:where(.sm4-site) .sm4-photo-card::after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(9,17,23,.74));pointer-events:none;z-index:1}
:where(.sm4-site) .sm4-photo-overlay{position:absolute;bottom:0;left:0;right:0;z-index:2;pointer-events:none}
:where(.sm4-site) .sm4-photo-overlay .elementor-widget-heading{pointer-events:none}
:where(.sm4-site) .sm4-photo-card:focus-visible{outline:3px solid #E2078F;outline-offset:3px}
:where(.sm4-site) .sm4-hidden{display:none!important}
:where(.sm4-site) .sm4-filter .elementor-button{touch-action:manipulation;cursor:pointer}
:where(.sm4-site) .sm4-filter.sm4-active .elementor-button{box-shadow:inset 0 0 0 2px #E2078F}
:where(.sm4-site) .sm4-gallery-foot{align-items:center}
:where(.sm4-site) .sm4-footer-bottom{padding-top:20px;border-top:1px solid #e9e5e1}
:where(.sm4-site) .sm4-footer-link .elementor-button{text-align:left;white-space:normal}
:where(.sm4-site) .sm4-footer-link .elementor-button-text{text-align:left}
@media(max-width:900px){
  .sm4-site .sm4-menu-toggle{display:block}
  .sm4-site .sm4-nav{display:none;position:absolute;top:100%;left:0;right:0;z-index:55;background:#fff;box-shadow:0 14px 28px #00000018;padding:18px 22px;border:1px solid #eeece9}
  .sm4-site .sm4-nav.sm4-nav-open{display:flex}
  .sm4-site .sm4-nav .elementor-widget-button{width:100%}
  .sm4-site .sm4-nav .elementor-button{text-align:left}
}
@media(max-width:767px){
  :where(.sm4-site) .sm4-hero-visual{height:315px;min-height:315px}
  :where(.sm4-site) .sm4-photo-label{bottom:18px;left:18px}
  :where(.sm4-site) .sm4-fact:nth-child(3){border-left:0;border-top:1px solid #e9e5e1}
  :where(.sm4-site) .sm4-fact:nth-child(4){border-top:1px solid #e9e5e1}
}
/* Modal funcional, gerado pelo script e independente dos widgets do Elementor. */
.sm4-lightbox{border:0;border-radius:10px;padding:0;width:min(95vw,1100px);max-width:95vw;max-height:95vh;background:#111923;color:white;box-shadow:0 25px 80px #0009}
.sm4-lightbox::backdrop{background:#000c;backdrop-filter:blur(3px)}
.sm4-lightbox-bar{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:12px 15px;font:600 14px Arial,sans-serif}
.sm4-lightbox-btn{border:1px solid #ffffff4d;border-radius:6px;background:#28303b;color:#fff;cursor:pointer;min-width:40px;min-height:38px;font-size:24px}
.sm4-lightbox-media{display:flex;align-items:center;justify-content:space-between;gap:6px;padding:0 12px 15px}
.sm4-lightbox-media img{display:block;width:calc(100% - 106px);height:auto;max-height:73vh;object-fit:contain}
.sm4-lightbox-counter{text-align:center;padding:0 12px 15px;font:12px Arial,sans-serif;color:#bec4ca}
@media(max-width:650px){.sm4-lightbox-media{padding:0 6px 10px}.sm4-lightbox-btn{min-width:33px}.sm4-lightbox-media img{width:calc(100% - 76px)}}
@media(prefers-reduced-motion:reduce){:where(.sm4-site) .sm4-gallery-photo img{transition:none}}
