/**
 * Estilos para o Slider de Destinos em Destaque
 */

/* Importar fonte Poppins se não estiver carregada pelo tema */
@import url('https://fonts.fonts.googleapis.com/css2?family=Poppins:wght@400;600;700&display=swap');

.wte-slider-wrapper-destinations {
    position: relative;
    width: 100%;
    padding: 20px 0;
    /* Only vertical padding - arrows positioned outside via calc() */
    box-sizing: border-box;
    font-family: 'Poppins', sans-serif;
}

.wte-destinations-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 30px;
    /* Aumentado gap para ficar mais espaçado como os outros */
    width: 100%;
}

.wte-destination-card {
    position: relative;
    border-radius: 10px;
    /* Matching base var */
    overflow: hidden;
    text-decoration: none !important;
    transition: transform 0.3s ease;
    display: flex;
    flex-direction: column;
    background-color: #1b4264;
    /* User requested solid bg */
    height: 100%;
}

.wte-destination-card:not(.wte-card-empty):hover {
    transform: translateY(-5px);
}

.wte-destination-media {
    position: relative;
    width: 100%;
    aspect-ratio: 4 / 3;
    /* Standard layout */
    overflow: hidden;
}

.wte-destination-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.wte-destination-card:hover .wte-destination-media img {
    transform: scale(1.1);
}

/* Placeholder */
.wte-placeholder-image {
    width: 100%;
    height: 100%;
    background-color: #1b4264;
}

.wte-destination-content {
    padding: 15px;
    color: #fff;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
}

.wte-destination-title {
    font-family: 'Poppins', sans-serif;
    font-size: 18px;
    font-weight: 600;
    margin: 0 0 10px 0 !important;
    color: #fff !important;
    line-height: 1.2;
    text-align: center;
}

.wte-destination-description {
    font-family: 'Poppins', sans-serif;
    font-size: 13px;
    line-height: 1.5;
    margin-bottom: 15px;
    opacity: 0.9;
    color: #d1d5db;
    /* Light gray text */
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    flex-grow: 1;
    text-align: center;
}

.wte-destination-footer {
    margin-top: auto;
    text-align: center;
}

.wte-destination-count {
    font-family: 'Poppins', sans-serif;
    font-size: 12px;
    font-weight: 500;
    display: inline-block;
    color: #fff;
    opacity: 0.8;
}

/* Arrow positioning inherited from slider-base.css */

/* Responsividade */
@media (max-width: 1024px) {
    .wte-destinations-grid {
        grid-template-columns: repeat(3, 1fr);
    }

    /* Ocultar 4º item em tablets grandes */
    .wte-destinations-grid > .wte-destination-card:nth-child(4) {
        display: none;
    }
}

@media (max-width: 768px) {
    .wte-destinations-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    /* Ocultar 3º e 4º itens em tablets */
    .wte-destinations-grid > .wte-destination-card:nth-child(n+3) {
        display: none;
    }

    .wte-slider-wrapper-destinations {
        padding: 10px 0;
    }
}

/* ========================================
   MOBILE: Mostrar apenas 1 destino por slide
   ======================================== */
@media (max-width: 640px) {
    /* Grid simplificado para 1 item */
    .wte-destinations-grid {
        display: block;
        padding: 0 10px;
    }

    /* Garantir que todos os cards tenham display flex por padrão */
    .wte-destinations-grid > .wte-destination-card {
        display: flex !important;
    }

    /* Ocultar todos exceto o primeiro */
    .wte-destinations-grid > .wte-destination-card:not(:first-child) {
        display: none !important;
    }

    .wte-destinations-container .wte-destinations-grid > .wte-destination-card:not(:first-child) {
        display: block !important;
    }

    /* Card único ocupa toda a largura */
    .wte-destinations-grid > .wte-destination-card:first-child {
        width: 100%;
        max-width: 100%;
    }

    .wte-slider-wrapper-destinations {
        padding: 10px 0;
    }

    /* Reduzir padding interno em mobile */
    .wte-destination-content {
        padding: 10px;
    }

    /* Garantir setas visíveis no mobile */
    .wte-slider-wrapper-destinations .swiper-button-prev,
    .wte-slider-wrapper-destinations .swiper-button-next {
        display: block !important;
        width: 35px !important;
        height: 35px !important;
        background: #8ea1b2;
        border-radius: 50%;
        z-index: 10;
    }

    .wte-slider-wrapper-destinations .swiper-button-prev {
        left: 5px;
    }

    .wte-slider-wrapper-destinations .swiper-button-next {
        right: 5px;
    }

    .wte-slider-wrapper-destinations .swiper-button-prev::after,
    .wte-slider-wrapper-destinations .swiper-button-next::after {
        font-size: 14px !important;
        color: #fff;
    }
}

/* Setas menores em telas muito pequenas (mantém visíveis) */
@media (max-width: 480px) {
    .wte-slider-wrapper-destinations .swiper-button-prev,
    .wte-slider-wrapper-destinations .swiper-button-next {
        display: block !important;
        width: 30px !important;
        height: 30px !important;
    }

    .wte-slider-wrapper-destinations .swiper-button-prev::after,
    .wte-slider-wrapper-destinations .swiper-button-next::after {
        font-size: 12px !important;
    }
}