.elementor-kit-1152{--e-global-color-primary:#008C43;--e-global-color-secondary:#009960;--e-global-color-text:#484848;--e-global-color-accent:#15AF1C;--e-global-color-ee2fb5a:#FFFFFF;--e-global-color-fe84efc:#FFFFFF;--e-global-color-0416b24:#EDEDED;--e-global-color-start-background:#FFFFFF;--e-global-color-start-primary:#008C43;--e-global-color-start-secondary:#009960;--e-global-color-start-primary-strong:#00592C;--e-global-color-start-accent:#15AF1C;--e-global-color-start-text:#484848;--e-global-color-start-gray:#EEEEEE;--e-global-typography-primary-font-family:"Ubuntu";--e-global-typography-primary-font-size:42px;--e-global-typography-primary-font-weight:900;--e-global-typography-primary-text-transform:uppercase;--e-global-typography-secondary-font-family:"Ubuntu";--e-global-typography-secondary-font-size:26px;--e-global-typography-secondary-font-weight:700;--e-global-typography-secondary-text-transform:uppercase;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-size:16px;--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Shadows Into Light Two";--e-global-typography-accent-font-size:22px;--e-global-typography-accent-font-weight:500;background-color:#E9FFEC;color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );}.elementor-kit-1152 button,.elementor-kit-1152 input[type="button"],.elementor-kit-1152 input[type="submit"],.elementor-kit-1152 .elementor-button{background-color:var( --e-global-color-secondary );font-family:"Ubuntu", Sans-serif;font-size:16px;font-weight:600;text-transform:uppercase;color:var( --e-global-color-ee2fb5a );border-radius:5px 5px 5px 5px;padding:15px 30px 15px 30px;}.elementor-kit-1152 button:hover,.elementor-kit-1152 button:focus,.elementor-kit-1152 input[type="button"]:hover,.elementor-kit-1152 input[type="button"]:focus,.elementor-kit-1152 input[type="submit"]:hover,.elementor-kit-1152 input[type="submit"]:focus,.elementor-kit-1152 .elementor-button:hover,.elementor-kit-1152 .elementor-button:focus{background-color:#00D686;color:var( --e-global-color-ee2fb5a );box-shadow:0px 0px 45px 15px rgba(1.2084782608695583, 185.3, 43.629568052930104, 0.5);}.elementor-kit-1152 e-page-transition{background-color:#FFBC7D;}.elementor-kit-1152 a{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );}.elementor-kit-1152 h1{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );text-transform:var( --e-global-typography-primary-text-transform );}.elementor-kit-1152 h2{color:var( --e-global-color-primary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );text-transform:var( --e-global-typography-secondary-text-transform );}.elementor-kit-1152 h3{color:var( --e-global-color-primary );font-family:"Open Sans", Sans-serif;font-size:20px;font-weight:600;}.elementor-kit-1152 img{border-radius:15px 15px 15px 15px;transition-duration:0.4s;}.elementor-kit-1152 img:hover{filter:brightness( 120% ) contrast( 100% ) saturate( 100% ) blur( 0px ) hue-rotate( 0deg );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1200px;}.e-con{--container-max-width:1200px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-1152{font-size:var( --e-global-typography-text-font-size );}.elementor-kit-1152 a{font-size:var( --e-global-typography-text-font-size );}.elementor-kit-1152 h1{font-size:var( --e-global-typography-primary-font-size );}.elementor-kit-1152 h2{font-size:var( --e-global-typography-secondary-font-size );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-1152{font-size:var( --e-global-typography-text-font-size );}.elementor-kit-1152 a{font-size:var( --e-global-typography-text-font-size );}.elementor-kit-1152 h1{font-size:var( --e-global-typography-primary-font-size );}.elementor-kit-1152 h2{font-size:var( --e-global-typography-secondary-font-size );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS */:root {
	--card-radius: 10px;
}


html, body {
    overflow-x: hidden;
    max-width: 100vw; /* Garante que não exceda a viewport */
    width: 100%;
    position: relative; /* Ajuda a conter elementos absolutos */
}

.card {
	overflow: hidden;
	border-radius: var(--card-radius);
}


/* --- GALERIA NATIVA WORDPRESS (CSS GRID) --- */

/* 1. O Container da Galeria */
.gallery {
    display: grid;
    grid-gap: 20px; /* Espaço entre as fotos */
    margin-bottom: 30px;
    width: 100%;
}

/* 2. Reseta os estilos antigos do WP */
.gallery .gallery-item {
    margin: 0 !important;
    width: 100% !important; /* O Grid que controla a largura agora */
    max-width: 100% !important;
    float: none !important;
}

/* 3. Estiliza a Imagem */
.gallery-icon img {
    width: 100%;
    height: auto;
    display: block;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    object-fit: cover; /* Garante que preencha sem distorcer */
    aspect-ratio: 1 / 1; /* Opcional: Força quadradinho. Remova se quiser original */
}

/* Hover: Efeito de Zoom */
.gallery-icon img:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 15px rgba(0,0,0,0.1);
}

/* 4. LÓGICA DE COLUNAS (Lê a classe que o WP gera) */

/* Se selecionou 1 coluna */
.gallery-columns-1 { grid-template-columns: 1fr; }

/* Se selecionou 2 colunas */
.gallery-columns-2 { grid-template-columns: repeat(2, 1fr); }

/* Se selecionou 3 colunas */
.gallery-columns-3 { grid-template-columns: repeat(3, 1fr); }

/* Se selecionou 4 colunas */
.gallery-columns-4 { grid-template-columns: repeat(4, 1fr); }

/* Se selecionou 5 colunas */
.gallery-columns-5 { grid-template-columns: repeat(5, 1fr); }

/* Se selecionou 6+ colunas */
.gallery-columns-6, 
.gallery-columns-7, 
.gallery-columns-8, 
.gallery-columns-9 { 
    grid-template-columns: repeat(auto-fit, minmax(100px, 1fr)); 
}

/* 5. Legenda (Caption) - Opcional */
.gallery-caption {
    font-size: 13px;
    color: #666;
    text-align: center;
    margin-top: 5px;
    padding: 0 5px;
}

/* 6. RESPONSIVIDADE */

/* Tablet (max 768px) -> Força 3 colunas max */
@media (max-width: 768px) {
    .gallery {
        grid-gap: 15px;
    }
    .gallery[class*="gallery-columns-"] {
        grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    }
}

/* Celular (max 480px) -> Força 2 colunas */
@media (max-width: 480px) {
    .gallery {
        grid-gap: 10px;
    }
    /* Força 2 colunas no mobile, ou troque para 1fr se quiser uma por linha */
    .gallery[class*="gallery-columns-"] {
        grid-template-columns: repeat(2, 1fr); 
    }
}

.mrx-swiper-gallery .swiper-slide img {
    aspect-ratio: 4/3;
    oobject-fit: cover;
}


.mrx-swiper-gallery {
    opacity: 0;
    transition: opacity 0.3s ease;
}
.mrx-swiper-gallery.swiper-initialized {
    opacity: 1;
}
.mrx-swiper-gallery .swiper-slide img {
    width: 100%;
    height: auto;
    border-radius: 5px;
}
.mrx-swiper-gallery .swiper-button-next, 
.mrx-swiper-gallery .swiper-button-prev {
    color: #333;
}

/* --- CORREÇÃO PREVENTIVA DO SWIPER (CARROSSEL) --- */
/* Força os slides a ficarem lado a lado mesmo sem JS */
.elementor-widget-image-carousel .swiper-wrapper,
.elementor-widget-slides .swiper-wrapper,
.elementor-main-swiper .swiper-wrapper {
    display: flex;
    flex-wrap: nowrap;
    box-sizing: content-box;
}

/* Esconde slides que transbordam a tela antes do JS cortar */
.elementor-widget-image-carousel .swiper-container,
.elementor-main-swiper {
    overflow: hidden;
}

/* Define largura fixa para evitar colapso */
.swiper-slide {
    flex-shrink: 0;
    height: 100%;
    position: relative;
}

/* --- CORREÇÃO DO OFFCANVAS / POPUP --- */
/* Garante que o container do popup esteja oculto inicialmente */
.dialog-widget-content:not(.dialog-lightbox-widget-content) {
    display: none;
}
/* Mas quando o Elementor ativa, ele adiciona display block via style inline, que vence o CSS acima */


.start-fade-delay {
    opacity: 0;
    /* O !important no transform impede que o Elementor empurre o elemento */
    transform: none !important; 
    
    /* Mantém a animação de fade */
    animation: startFadeIn 0.5s ease-out forwards;
    animation-delay: 0.2s; 
}

@keyframes startFadeIn {
    from { 
        opacity: 0; 
        transform: none !important; /* Garante que começa parado */
    }
    to { 
        opacity: 1; 
        transform: none !important; /* Garante que termina parado */
    }
}

.elementor-button:hover {
    filter: brightness(110%);
}/* End custom CSS */