/* Container pai com escopo forçado */
.cidades-carousel-wrapper {
    position: relative;
    padding-top: 30px;
    padding-bottom: 80px;
    width: 100%;
}

/* Container pai com escopo forçado */
.cidades-carousel-wrapper {
    position: relative;
    padding-top: 50px;
    padding-bottom: 80px;
    width: 100%;
    overflow: hidden;
}

.cidades-carousel-wrapper .cidades-swiper-container {
    width: 100%;
    padding: 0;
    overflow: visible !important;
}

/* Transição base escopada ao wrapper */
.cidades-carousel-wrapper .swiper-slide {
    transition: transform 0.45s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.4s ease;
    transform: scale(0.85);
    opacity: 0.6;
    border-radius: 20px;
}

/* Card central ativo escopado */
.cidades-carousel-wrapper .swiper-slide-active {
    transform: scale(1.2) !important;
    opacity: 1;
    z-index: 1;
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.3);
}

.cidades-carousel-wrapper .cidade-card {
    display: block;
    position: relative;
    width: 100%;
    height: 400px;
    text-decoration: none;
    border-radius: 20px;
    overflow: hidden;
}

.cidades-carousel-wrapper .cidade-card-image {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-size: cover;
    background-position: center;
}

.cidades-carousel-wrapper .cidade-card-overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 50%;
    background: linear-gradient(to top, rgba(14, 27, 42, 0.9) 16%, transparent 100%);
}

.cidades-carousel-wrapper .cidade-card-title {
    font-family: "Inter", Sans-serif;
    font-size: 1.8rem;
    line-height: 2.4rem;
    font-weight: 600;
    position: absolute;
    left: 0;
    right: 0;
    text-align: center;
    bottom: 20px;
    color: #EFEFEF;
    margin: 0;
    padding: 0 20px;
    z-index: 2;
}

/* Setas Laterais Escopadas - Estilo Base dos Botões */
.cidades-carousel-wrapper .cidades-nav-button {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 58px;
    height: 58px;
    background-color: #EFEFEF;
    border: 1px solid transparent;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    z-index: 20;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
    transition: all 0.3s ease;
}


.cidades-carousel-wrapper .cidades-nav-button:hover {
    background-color: #245B5A;
    border: 1px solid #EFEFEF;
}

/* Posição dos botões na lateral */
.cidades-carousel-wrapper .swiper-button-prev-custom {
    left: 18%;
}

.cidades-carousel-wrapper .swiper-button-next-custom {
    right: 18%;
}

/* ----------------------------------------------------- */
/* Configuração dos Ícones SVG usando Máscara (::after)  */
/* ----------------------------------------------------- */
.cidades-carousel-wrapper .cidades-nav-button::after {
    content: '';
    display: block;
    width: 24px;
    height: 24px;
    background-color: #245B5A;
    transition: background-color 0.3s ease;

    /* Configurações da máscara CSS */
    -webkit-mask-size: contain;
    mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
}

/* Inversão da cor do Ícone no Hover do botão pai */
.cidades-carousel-wrapper .cidades-nav-button:hover::after {
    background-color: #EFEFEF;
}

/* Aplicação do ficheiro SVG: Seta Esquerda */
.cidades-carousel-wrapper .swiper-button-prev-custom::after {
    -webkit-mask-image: url('https://noentornotem.inpacto.com.br/wp-content/uploads/2026/06/arrow-left-nocolor.svg');
    mask-image: url('https://noentornotem.inpacto.com.br/wp-content/uploads/2026/06/arrow-left-nocolor.svg');
}

/* Aplicação do ficheiro SVG: Seta Direita */
.cidades-carousel-wrapper .swiper-button-next-custom::after {
    -webkit-mask-image: url('https://noentornotem.inpacto.com.br/wp-content/uploads/2026/06/arrow-right-nocolor.svg');
    mask-image: url('https://noentornotem.inpacto.com.br/wp-content/uploads/2026/06/arrow-right-nocolor.svg');
}

/* Paginação Escopada */
.cidades-carousel-wrapper .cidades-pagination {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    text-align: center;
    z-index: 5;
}

.cidades-carousel-wrapper .cidades-pagination .swiper-pagination-bullet {
    background: rgba(255, 255, 255, 0.5);
    opacity: 1;
    transition: 0.3s;
    margin: 0 6px;
}

.cidades-carousel-wrapper .cidades-pagination .swiper-pagination-bullet-active {
    background: #ffffff;
    width: 24px;
    border-radius: 10px;
}

@media (max-width: 768px) {
    .cidades-carousel-wrapper .cidades-nav-button {
        display: none;
    }
}