/* =========================================================
   ADI YOGPEETH — RISHIKESH EXPERIENCE
   ========================================================= */

.course-excursions-section {

    padding:
        110px
        0;

    background:
        var(--color-ivory);

}


/* =========================================================
   HEADER
   ========================================================= */

.course-excursions__header {

    display:
        grid;

    grid-template-columns:
        minmax(0, 1fr)
        minmax(260px, 0.55fr);

    gap:
        60px;

    align-items:
        end;

    margin-bottom:
        50px;

}


.course-excursions__header h2 {

    margin:
        0;

    color:
        var(--color-forest);

    font-family:
        var(--font-display);

    font-size:
        clamp(
            2.2rem,
            4vw,
            3.8rem
        );

    font-weight:
        var(--font-weight-medium);

    line-height:
        1.05;

    letter-spacing:
        -0.035em;

}


.course-excursions__intro {

    max-width:
        370px;

}


.course-excursions__intro p {

    margin:
        0 0 8px;

    color:
        var(--color-text-secondary);

    font-size:
        0.7rem;

    line-height:
        1.8;

}


.course-excursions__intro span {

    color:
        var(--color-text-muted);

    font-size:
        0.52rem;

}


/* =========================================================
   FEATURED
   ========================================================= */

.excursion-featured {

    display:
        grid;

    grid-template-columns:
        minmax(0, 1.15fr)
        minmax(0, 0.85fr);

    min-height:
        450px;

    margin-bottom:
        14px;

    overflow:
        hidden;

    background:
        var(--color-white);

    border:
        1px solid var(--color-border);

    border-radius:
        var(--radius-md);

}


.excursion-featured__image {

    overflow:
        hidden;

}


.excursion-featured__image img {

    display:
        block;

    width:
        100%;

    height:
        100%;

    min-height:
        450px;

    object-fit:
        cover;

    transition:
        transform 700ms var(--ease-smooth);

}


.excursion-featured:hover
.excursion-featured__image img {

    transform:
        scale(1.035);

}


.excursion-featured__content {

    display:
        flex;

    flex-direction:
        column;

    justify-content:
        center;

    padding:
        55px;

}


.excursion-card__category {

    display:
        block;

    margin-bottom:
        10px;

    color:
        var(--color-terracotta);

    font-size:
        0.49rem;

    font-weight:
        var(--font-weight-semibold);

    letter-spacing:
        var(--tracking-wide);

    text-transform:
        uppercase;

}


.excursion-featured__content h3 {

    margin:
        0;

    color:
        var(--color-forest);

    font-family:
        var(--font-display);

    font-size:
        clamp(
            2rem,
            3.5vw,
            3.2rem
        );

    font-weight:
        var(--font-weight-medium);

    line-height:
        1.08;

    letter-spacing:
        -0.03em;

}


.excursion-featured__content p {

    max-width:
        450px;

    margin:
        22px 0;

    color:
        var(--color-text-secondary);

    font-size:
        0.68rem;

    line-height:
        1.8;

}


.excursion-featured__meta {

    display:
        flex;

    flex-wrap:
        wrap;

    gap:
        8px;

    margin-top:
        15px;

}


.excursion-featured__meta span {

    padding:
        7px 10px;

    color:
        var(--color-text-secondary);

    background:
        var(--color-ivory);

    border:
        1px solid var(--color-border);

    border-radius:
        var(--radius-full);

    font-size:
        0.48rem;

}


/* =========================================================
   GRID
   ========================================================= */

.excursion-grid {

    display:
        grid;

    grid-template-columns:
        repeat(3, 1fr);

    gap:
        14px;

}


.excursion-card {

    overflow:
        hidden;

    background:
        var(--color-white);

    border:
        1px solid var(--color-border);

    border-radius:
        var(--radius-md);

}


.excursion-card__image {

    height:
        220px;

    overflow:
        hidden;

}


.excursion-card__image img {

    display:
        block;

    width:
        100%;

    height:
        100%;

    object-fit:
        cover;

    transition:
        transform 600ms var(--ease-smooth);

}


.excursion-card:hover
.excursion-card__image img {

    transform:
        scale(1.035);

}


.excursion-placeholder {

    display:
        flex;

    align-items:
        center;

    justify-content:
        center;

    width:
        100%;

    height:
        100%;

    color:
        var(--color-text-muted);

    background:
        var(--color-sand);

    font-size:
        0.55rem;

    letter-spacing:
        var(--tracking-wide);

    text-transform:
        uppercase;

}


.excursion-card__content {

    padding:
        22px;

}


.excursion-card__content h3 {

    margin:
        0;

    color:
        var(--color-forest);

    font-family:
        var(--font-display);

    font-size:
        1.25rem;

    font-weight:
        var(--font-weight-medium);

}


.excursion-card__content p {

    margin:
        12px 0 20px;

    color:
        var(--color-text-secondary);

    font-size:
        0.6rem;

    line-height:
        1.7;

}


.excursion-card__footer {

    display:
        flex;

    justify-content:
        space-between;

    gap:
        10px;

    padding-top:
        14px;

    border-top:
        1px solid var(--color-border);

    color:
        var(--color-text-muted);

    font-size:
        0.48rem;

}


.excursion-card__included {

    color:
        var(--color-forest);

    font-weight:
        var(--font-weight-semibold);

}


/* =========================================================
   NOTE
   ========================================================= */

.course-excursions__note {

    display:
        flex;

    justify-content:
        center;

    gap:
        7px;

    margin-top:
        25px;

    color:
        var(--color-text-muted);

    font-size:
        0.55rem;

    text-align:
        center;

}


.course-excursions__note strong {

    color:
        var(--color-forest);

}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 991px) {

    .excursion-featured {

        grid-template-columns:
            1fr;

    }


    .excursion-featured__image img {

        min-height:
            400px;

    }


    .excursion-grid {

        grid-template-columns:
            repeat(2, 1fr);

    }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 767px) {

    .course-excursions-section {

        padding:
            70px
            0;

    }


    .course-excursions__header {

        grid-template-columns:
            1fr;

        gap:
            20px;

        margin-bottom:
            30px;

    }


    .course-excursions__header h2 {

        font-size:
            clamp(
                2rem,
                9vw,
                2.8rem
            );

    }


    .excursion-featured {

        grid-template-columns:
            1fr;

    }


    .excursion-featured__image img {

        min-height:
            280px;

    }


    .excursion-featured__content {

        padding:
            30px 22px;

    }


    .excursion-featured__content h3 {

        font-size:
            2rem;

    }


    .excursion-grid {

        grid-template-columns:
            1fr;

        gap:
            10px;

    }


    .excursion-card__image {

        height:
            230px;

    }


    .course-excursions__note {

        flex-direction:
            column;

        gap:
            3px;

    }

}