.elementor-1783 .elementor-element.elementor-element-76c15e3{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:20px;--padding-bottom:20px;--padding-left:63px;--padding-right:20px;}.elementor-1783 .elementor-element.elementor-element-76c15e3:not(.elementor-motion-effects-element-type-background), .elementor-1783 .elementor-element.elementor-element-76c15e3 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#EEEEEE;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-1783 .elementor-element.elementor-element-ab99ad2 .elementor-button{background-color:#61CE7000;font-family:"Lato", Sans-serif;font-weight:500;fill:#0F0F0F;color:#0F0F0F;}.elementor-1783 .elementor-element.elementor-element-ab99ad2{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) -22px;padding:0px 0px 0px 0px;}.elementor-1783 .elementor-element.elementor-element-ab99ad2.elementor-element{--align-self:flex-start;}.elementor-1783 .elementor-element.elementor-element-ab99ad2 .elementor-button-content-wrapper{flex-direction:row;}.elementor-1783 .elementor-element.elementor-element-ab99ad2 .elementor-button:hover, .elementor-1783 .elementor-element.elementor-element-ab99ad2 .elementor-button:focus{color:#005B9F;}.elementor-1783 .elementor-element.elementor-element-ab99ad2 .elementor-button:hover svg, .elementor-1783 .elementor-element.elementor-element-ab99ad2 .elementor-button:focus svg{fill:#005B9F;}.elementor-widget-theme-page-title .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-1783 .elementor-element.elementor-element-ba04160 .elementor-heading-title{font-family:"Playfair Display", Sans-serif;font-weight:600;color:#005B9F;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-1783 .elementor-element.elementor-element-1cfb047{padding:15px 0px 0px 0px;}.elementor-1783 .elementor-element.elementor-element-1cfb047 .elementor-heading-title{font-family:"Lato", Sans-serif;font-size:24px;font-weight:400;color:#005B9F;}.elementor-1783 .elementor-element.elementor-element-710a86b{--display:flex;--min-height:95vh;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-start;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-1783 .elementor-element.elementor-element-710a86b:not(.elementor-motion-effects-element-type-background), .elementor-1783 .elementor-element.elementor-element-710a86b > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-1783 .elementor-element.elementor-element-5264ddc{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:3px 3px;--row-gap:3px;--column-gap:3px;}.elementor-1783 .elementor-element.elementor-element-66c956f{padding:15px 0px 0px 0px;}.elementor-1783 .elementor-element.elementor-element-66c956f .elementor-heading-title{font-family:"Playfair Display", Sans-serif;font-size:29px;font-weight:500;color:#000000;}.elementor-widget-theme-post-content{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-1783 .elementor-element.elementor-element-fafa012{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-1783 .elementor-element.elementor-element-10fd1bc{padding:15px 0px 0px 0px;}.elementor-1783 .elementor-element.elementor-element-10fd1bc .elementor-heading-title{font-family:"Playfair Display", Sans-serif;font-size:29px;font-weight:500;color:#000000;}.elementor-1783 .elementor-element.elementor-element-50b2f57{--display:grid;--e-con-grid-template-columns:repeat(1, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--gap:0px 0px;--row-gap:0px;--column-gap:0px;--grid-auto-flow:row;}.elementor-1783 .elementor-element.elementor-element-a67a51c{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:5px 5px;--row-gap:5px;--column-gap:5px;}@media(max-width:1024px){.elementor-1783 .elementor-element.elementor-element-50b2f57{--grid-auto-flow:row;}}@media(min-width:768px){.elementor-1783 .elementor-element.elementor-element-76c15e3{--content-width:1546px;}.elementor-1783 .elementor-element.elementor-element-710a86b{--content-width:1546px;}.elementor-1783 .elementor-element.elementor-element-5264ddc{--width:70%;}.elementor-1783 .elementor-element.elementor-element-fafa012{--width:30%;}}@media(max-width:767px){.elementor-1783 .elementor-element.elementor-element-76c15e3{--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-1783 .elementor-element.elementor-element-ab99ad2{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-1783 .elementor-element.elementor-element-50b2f57{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}}/* Start custom CSS for shortcode, class: .elementor-element-25b3820 *//* ========================================
   Galeria Interativa - Estilos CSS
   Copie para: /seu-tema/assets/css/galeria-interativa.css
   ======================================== */

.galeria-interativa {
    width: 100%;
    margin: 2rem 0;
}

/* ========================================
   Imagem Principal com Contador
   ======================================== */

.galeria-principal-container {
    width: 100%;
    margin-bottom: 1.5rem;
}

.galeria-principal {
    position: relative;
    width: 100%;
    background: #f5f5f5;
    border-radius: 12px;
    overflow: hidden;
    aspect-ratio: 16 / 9;
}

.galeria-main-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

.galeria-counter {
    position: absolute;
    top: 1rem;
    right: 1rem;
    background: rgba(0, 0, 0, 0.6);
    color: white;
    padding: 0.5rem 1rem;
    border-radius: 6px;
    font-size: 0.9rem;
    font-weight: 600;
    z-index: 10;
}

/* ========================================
   NOVO: Botões de Navegação na Imagem Principal
   ======================================== */

.galeria-main-nav-btn {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(255, 255, 255, 0.9);
    color: #333;
    border: none;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    transition: all 0.3s ease;
    z-index: 10;
    opacity: 1;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}

.galeria-main-nav-btn:hover {
    background: #fff;
    transform: translateY(-50%) scale(1.1);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
}

.galeria-main-nav-btn:active {
    transform: translateY(-50%) scale(0.95);
}

.galeria-main-nav-prev {
    left: 1rem;
}

.galeria-main-nav-next {
    right: 1rem;
}



/* ========================================
   Thumbnails
   ======================================== */

.galeria-thumbnails-container {
    width: 100%;
}

.galeria-thumbnails {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1rem;
}

.thumbnail {
    position: relative;
    overflow: hidden;
    border-radius: 8px;
    background: #f5f5f5;
    border: 3px solid transparent;
    cursor: pointer;
    transition: all 0.3s ease;
    aspect-ratio: 1;
    padding: 0;
    font-family: inherit;
}

.thumbnail img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
    transition: transform 0.3s ease;
}

.thumbnail:hover {
    border-color: #0066cc;
    transform: scale(1.02);
}

.thumbnail:hover img {
    transform: scale(1.05);
}

.thumbnail.active {
    border-color: #0066cc;
    box-shadow: 0 0 0 2px #fff, 0 0 0 4px #0066cc;
}

/* ========================================
   Botão "+" para Ver Mais
   ======================================== */

.thumbnail-mais {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #0066cc 0%, #0052a3 100%);
    border: 3px solid transparent;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.3s ease;
    font-family: inherit;
    padding: 0;
    aspect-ratio: 1;
}

.thumbnail-mais:hover {
    background: linear-gradient(135deg, #0052a3 0%, #003d7a 100%);
    transform: scale(1.02);
    box-shadow: 0 4px 12px rgba(0, 102, 204, 0.3);
}

.thumbnail-mais:active {
    transform: scale(0.98);
}

.mais-icon {
    font-size: 2.5rem;
    color: white;
    font-weight: 300;
    line-height: 1;
    margin-bottom: 0.25rem;
}

.mais-texto {
    font-size: 0.75rem;
    color: white;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

/* ========================================
   Modal Bootstrap Customizado
   ======================================== */

.galeria-modal-content {
    background: #1a1a1a;
    border: none;
    border-radius: 12px;
    overflow: hidden;
}

.galeria-modal-header {
    background: #222;
    border-bottom: 1px solid #333;
    padding: 1rem 1.5rem;
}

.galeria-modal-header .modal-title {
    color: white;
    font-weight: 600;
    font-size: 1rem;
}

.galeria-modal-header .btn-close {
    filter: invert(1);
}

.galeria-modal-body {
    padding: 1.5rem;
    background: #1a1a1a;
}

.galeria-modal-main {
    position: relative;
    width: 100%;
    margin-bottom: 1.5rem;
    border-radius: 8px;
    overflow: hidden;
    background: #000;
    aspect-ratio: 16 / 9;
}

.galeria-modal-img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
    display: block;
    background: #000;
}

/* ========================================
   Botões de Navegação do Modal
   ======================================== */

.galeria-nav-btn {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(255, 255, 255, 0.2);
    color: white;
    border: none;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    transition: all 0.3s ease;
    z-index: 10;
}

.galeria-nav-btn:hover {
    background: rgba(255, 255, 255, 0.3);
    transform: translateY(-50%) scale(1.1);
}

.galeria-nav-btn:active {
    transform: translateY(-50%) scale(0.95);
}

.galeria-nav-prev {
    left: 1rem;
}

.galeria-nav-next {
    right: 1rem;
}

/* ========================================
   Thumbnails do Modal
   ======================================== */

.galeria-modal-thumbnails {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(80px, 1fr));
    gap: 0.75rem;
    max-height: 150px;
    overflow-y: auto;
    padding: 0.5rem;
    background: #222;
    border-radius: 8px;
}

.modal-thumbnail {
    position: relative;
    overflow: hidden;
    border-radius: 6px;
    border: 2px solid transparent;
    cursor: pointer;
    transition: all 0.3s ease;
    aspect-ratio: 1;
    padding: 0;
    font-family: inherit;
    background: #333;
}

.modal-thumbnail img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
    transition: transform 0.3s ease;
}

.modal-thumbnail:hover {
    border-color: #0066cc;
    transform: scale(1.05);
}

.modal-thumbnail:hover img {
    transform: scale(1.1);
}

.modal-thumbnail.active {
    border-color: #0066cc;
    box-shadow: 0 0 0 2px #1a1a1a, 0 0 0 4px #0066cc;
}

/* ========================================
   Responsividade
   ======================================== */

@media (max-width: 768px) {
    .galeria-principal {
        aspect-ratio: 4 / 3;
        margin-bottom: 1rem;
    }

    .galeria-thumbnails {
        grid-template-columns: repeat(4, 1fr);
        gap: 0.75rem;
    }

    .galeria-counter {
        top: 0.75rem;
        right: 0.75rem;
        padding: 0.4rem 0.8rem;
        font-size: 0.8rem;
    }

    .galeria-nav-btn,
    .galeria-main-nav-btn {
        width: 40px;
        height: 40px;
        font-size: 1.2rem;
    }

    .galeria-nav-prev,
    .galeria-main-nav-prev {
        left: 0.5rem;
    }

    .galeria-nav-next,
    .galeria-main-nav-next {
        right: 0.5rem;
    }

    .mais-icon {
        font-size: 2rem;
    }
}

@media (max-width: 480px) {
    .galeria-interativa {
        margin: 1rem 0;
    }

    .galeria-principal {
        aspect-ratio: 1;
        margin-bottom: 0.75rem;
        border-radius: 8px;
    }

    .galeria-thumbnails {
        grid-template-columns: repeat(4, 1fr);
        gap: 0.5rem;
    }

    .thumbnail,
    .thumbnail-mais {
        border-radius: 6px;
    }

    .galeria-counter {
        top: 0.5rem;
        right: 0.5rem;
        padding: 0.3rem 0.6rem;
        font-size: 0.7rem;
    }

    .galeria-modal-main {
        aspect-ratio: 1;
        margin-bottom: 1rem;
    }

    .galeria-modal-thumbnails {
        grid-template-columns: repeat(auto-fill, minmax(60px, 1fr));
        max-height: 120px;
    }

    .galeria-nav-btn,
    .galeria-main-nav-btn {
        width: 36px;
        height: 36px;
        font-size: 1rem;
    }

    .galeria-nav-prev,
    .galeria-main-nav-prev {
        left: 0.25rem;
    }

    .galeria-nav-next,
    .galeria-main-nav-next {
        right: 0.25rem;
    }

    .mais-icon {
        font-size: 1.5rem;
    }

    .mais-texto {
        font-size: 0.65rem;
    }
}

/* ========================================
   Acessibilidade
   ======================================== */

.thumbnail:focus,
.thumbnail-mais:focus,
.galeria-nav-btn:focus,
.galeria-main-nav-btn:focus,
.modal-thumbnail:focus {
    outline: 3px solid #0066cc;
    outline-offset: 2px;
}

@media (prefers-reduced-motion: reduce) {
    .thumbnail,
    .thumbnail-mais,
    .galeria-nav-btn,
    .galeria-main-nav-btn,
    .modal-thumbnail,
    .galeria-main-img,
    .galeria-modal-img {
        transition: none;
    }
}

@media (prefers-color-scheme: dark) {
    .galeria-principal {
        background: #2a2a2a;
    }

    .thumbnail {
        background: #2a2a2a;
    }

    .galeria-counter {
        background: rgba(0, 0, 0, 0.8);
    }
}

/* ========================================
   Scrollbar Customizado (Modal)
   ======================================== */

.galeria-modal-thumbnails::-webkit-scrollbar {
    width: 6px;
}

.galeria-modal-thumbnails::-webkit-scrollbar-track {
    background: #333;
    border-radius: 3px;
}

.galeria-modal-thumbnails::-webkit-scrollbar-thumb {
    background: #0066cc;
    border-radius: 3px;
}

.galeria-modal-thumbnails::-webkit-scrollbar-thumb:hover {
    background: #0052a3;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-64142d2 */.lista-comodidades-acf {
    display: flex;
    flex-direction: column;
    gap: 10px; /* Espaçamento entre os itens */
}

.item-comodidade {
    background-color: #eaf0e4; /* Cor de fundo verde claro */
    color: #333; /* Cor do texto */
    padding: 12px 15px;
    border-radius: 8px; /* Bordas arredondadas */
    font-family: sans-serif;
    font-size: 16px;
    display: flex;
    align-items: center;
}

.item-comodidade .check-icon {
    color: #005aee; /* Cor do ícone de check */
    font-weight: bold;
    margin-right: 10px; /* Espaço entre o ícone e o texto */
    font-size: 18px;
}/* End custom CSS */