/* SW Galerias: formato horizontal de teste 248 x 107, responsivo e sem distorcer imagens. */
.swads-gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),248px));gap:16px;justify-content:start;align-items:start}
.swads-gallery-tile{display:block;position:relative;overflow:hidden;border-radius:12px;background:#24242b;text-decoration:none;width:100%;max-width:248px}
.swads-gallery-tile img{display:block;width:100%;height:auto;max-height:107px;object-fit:contain;object-position:center}
.swads-gallery-tile span{display:block;color:#fff;padding:8px 10px;font-size:13px}
.swads-slider.swads-gallery-carousel{position:relative;display:block;width:100%;max-width:248px;height:auto;max-height:none;aspect-ratio:248/107;border-radius:12px;overflow:hidden;margin:0;box-sizing:border-box}
.swads-gallery-carousel .swads-track{inset:0;width:100%;height:100%}
.swads-gallery-carousel .swads-slide img{display:block;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;object-position:center}
.swads-gallery-carousel .swads-prev{left:8px}.swads-gallery-carousel .swads-next{right:8px}
@media(max-width:767px){.swads-gallery-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr));gap:12px}.swads-slider.swads-gallery-carousel{max-width:100%}}

/* Alpha.31: bloco duplo opt-in no Elementor: classe CSS swads-dupla no contêiner pai. */
.swads-dupla{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:start;max-width:1004px;margin-inline:auto}
.swads-dupla > .e-con,.swads-dupla > .elementor-element,.swads-dupla > .elementor-widget-wrap{min-width:0;width:100%;max-width:248px}
.swads-dupla .elementor-widget-shortcode,.swads-dupla .elementor-shortcode,.swads-dupla .elementor-widget-container{width:100%;min-width:0}
.swads-dupla .swads-slider{width:100%;max-width:492px;margin:0;aspect-ratio:248/107;height:auto}
.swads-dupla .swads-slider .swads-track{inset:0;width:100%;height:100%}
.swads-dupla .swads-slider .swads-slide{inset:0;width:100%;height:100%}
.swads-dupla .swads-slider .swads-slide img{width:100%;height:100%;object-fit:contain;object-position:center}
.swads-dupla .swads-gallery-carousel .swads-slide img{object-fit:cover}
@media(max-width:767px){.swads-dupla{grid-template-columns:minmax(0,1fr);gap:16px;max-width:492px}.swads-dupla > .e-con,.swads-dupla > .elementor-element{max-width:100%}}

/* Alpha.32: somente a galeria usa quadro compacto 248 x 107, mesmo dentro do layout duplo. */
.swads-dupla .swads-slider.swads-gallery-carousel{width:100%;max-width:248px;aspect-ratio:248/107;height:auto;max-height:none}
.swads-dupla .swads-gallery-carousel .swads-slide img{object-fit:contain}

/* Alpha.33: carrossel real, independente do slider publicitário. */
.swads-photo-carousel{position:relative;width:100%;min-width:0;box-sizing:border-box;padding:0 30px}
.swads-photo-viewport{overflow:hidden;width:100%;min-width:0}
.swads-photo-track{display:flex;align-items:stretch;gap:12px;transition:transform .42s ease;will-change:transform}
.swads-photo-card{flex:0 0 248px;width:248px;max-width:calc(100% - 1px);aspect-ratio:248/107;overflow:hidden;border-radius:10px;background:#24242b}
.swads-photo-card img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.swads-photo-arrow{position:absolute;top:50%;transform:translateY(-50%);border:0;border-radius:50%;width:27px;height:27px;background:#24242b;color:#fff;cursor:pointer;z-index:2;font-size:22px;line-height:1}
.swads-photo-prev{left:0}.swads-photo-next{right:0}
.swads-photo-arrow:focus-visible{outline:2px solid #e9fa4d;outline-offset:2px}
.swads-photo-carousel[data-single="1"] .swads-photo-arrow{display:none}
/* Classe opcional no contêiner pai do Elementor; não altera outras seções. */
.swads-linha-3070{display:grid!important;grid-template-columns:minmax(0,3fr) minmax(0,7fr);gap:16px;align-items:start}
.swads-linha-3070 > .e-con,.swads-linha-3070 > .elementor-element{min-width:0;width:100%;max-width:none}
.swads-linha-3070 .elementor-widget-shortcode,.swads-linha-3070 .elementor-shortcode,.swads-linha-3070 .elementor-widget-container{min-width:0;width:100%}
@media(max-width:767px){.swads-linha-3070{grid-template-columns:minmax(0,1fr);gap:16px}.swads-photo-carousel{padding-inline:24px}.swads-photo-track{gap:10px}}
@media(prefers-reduced-motion:reduce){.swads-photo-track{transition:none}}

/* Alpha.34: aproveitamento integral dos 70%, com setas sobrepostas ao carrossel.
   Escopo limitado a galeria: não altera o slider publicitário. */
.swads-linha-3070 .swads-photo-carousel,
.swads-photo-carousel{padding:0;max-width:100%;overflow:visible}
.swads-photo-carousel .swads-photo-viewport{width:100%;overflow:hidden;border-radius:10px}
.swads-photo-carousel .swads-photo-track{gap:12px}
.swads-photo-carousel .swads-photo-card{flex:0 0 248px;width:248px;max-width:100%;aspect-ratio:248/107}
.swads-photo-carousel .swads-photo-arrow{width:28px;height:28px;background:rgba(26,26,32,.86);box-shadow:0 1px 5px rgba(0,0,0,.25)}
.swads-photo-carousel .swads-photo-prev{left:6px}
.swads-photo-carousel .swads-photo-next{right:6px}
.swads-linha-3070 > .e-con,
.swads-linha-3070 > .elementor-element{min-width:0}
@media(max-width:767px){.swads-photo-carousel{padding:0}.swads-photo-carousel .swads-photo-prev{left:4px}.swads-photo-carousel .swads-photo-next{right:4px}}

/* Alpha.41: enquadramento automatico exclusivo do carrossel de fotografias.
   A regra por card substitui o cover centralizado; preserva imagens verticais. */
.swads-photo-carousel .swads-photo-card.swads-photo-fit-contain img{object-fit:contain;object-position:center center}
.swads-photo-carousel .swads-photo-card.swads-photo-fit-cover img{object-fit:cover;object-position:center center}


/* Alpha.42: preenchimento automatico e discreto, restrito aos cards contain.
   A foto inteira permanece nitida em primeiro plano; a mesma foto desfocada
   preenche as laterais, sem adicionar elementos a biblioteca de midia. */
.swads-photo-carousel .swads-photo-card.swads-photo-fit-contain{position:relative;isolation:isolate;background:#24242b}
.swads-photo-carousel .swads-photo-card.swads-photo-fit-contain::before{content:"";position:absolute;inset:-14px;background-image:var(--swads-photo-bg,none);background-position:center;background-size:cover;background-repeat:no-repeat;filter:blur(12px) brightness(.55);z-index:-1;pointer-events:none}
.swads-photo-carousel .swads-photo-card.swads-photo-fit-contain img{position:relative;z-index:1;object-fit:contain;object-position:center}
