/* ===== PAGE HEADER BANNER ===== */
.page__header {
    padding-top: 8rem; /* Pushes content below the fixed header */
    padding-bottom: 3rem;
    background: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('../images/dest_header.jpg');
    background-size: cover;
    background-position: center 70%;
    text-align: center;
}

.page__header-title {
    font-size: var(--biggest-font-size);
    color: #fff;
    margin-bottom: var(--mb-0-5);
}

.page__header-subtitle {
    font-size: var(--h3-font-size);
    color: var(--text-color);
}

/* ===== DESTINATIONS GRID STYLING ===== */
.destinations__grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 2rem;
}

.destination__card {
    background-color: var(--container-color);
    border-radius: .75rem;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    box-shadow: 0 5px 20px hsla(0, 0%, 0%, 0.1);
    transition: transform .4s ease, box-shadow .4s ease;
}

.destination__card:hover {
    transform: translateY(-10px);
    box-shadow: 0 15px 30px hsla(0, 0%, 0%, 0.2);
}

.destination__image-container {
    overflow: hidden;
}

.destination__img {
    width: 100%;
    height: 250px;
    object-fit: cover;
    transition: transform .4s ease;
}

.destination__card:hover .destination__img {
    transform: scale(1.05);
}

.destination__data {
    padding: 1.5rem;
    display: flex;
    flex-direction: column;
    flex-grow: 1; /* Allows the card to grow if needed */
}

.destination__title {
    font-size: var(--h1-font-size);
    color: var(--first-color);
    margin-bottom: var(--mb-1);
}

.destination__description {
    font-size: var(--normal-font-size);
    margin-bottom: var(--mb-1-5);
}

.destination__features {
    list-style: none;
    margin-top: auto; /* Pushes this list to the bottom of the card */
    padding-top: 1rem;
    border-top: 1px solid hsla(0, 0%, 100%, 0.1);
}

.destination__features li {
    display: flex;
    align-items: center;
    gap: .75rem;
    color: var(--text-color);
    font-size: var(--small-font-size);
}

.destination__features li:not(:last-child) {
    margin-bottom: .5rem;
}

.destination__features .fa-check {
    color: var(--first-color-alt);
}