/* --------------------------------------- */
/* HERO SECTION STYLES START */
/* --------------------------------------- */

.hero__section {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: stretch;
    align-items: stretch;

    background-image: url(../../assets/editable/hero-bg-city-northern-lights-lg.webp);
    background-size: cover;
    background-position: center bottom;

    padding: 0rem 0rem 3rem 0rem;
}

/* .hero__section .background__img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: -1;
} */

.hero__section .hero__content__container {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: stretch;

    gap: 3.5rem;
    padding-top: 8.5rem;
}

.hero__section .hero__content__container .text__container {
    display: flex;
    flex-direction: column;
    justify-content: stretch;
    align-items: start;

    gap: 1rem;
}

.hero__section .hero__content__container .text__container .title {
    color: var(--clr-white);
    font-size: var(--title);
    font-weight: 600;
}

.hero__section .hero__content__container .text__container .description {
    color: var(--clr-white);
    font-size: var(--size-base);
    font-weight: 300;
    /* width: 50ch; */
}

.hero__section .hero__content__container .search__bar {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.hero__section .hero__content__container .search__bar .search__form {
    background-color: var(--clr-white);
    border-radius: 1rem;

    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: stretch;
    
    gap: 0.8rem;
    padding: 1.25rem 1.7rem;
}

.hero__section .hero__content__container .search__bar .search__form input {
    width: 100%;
    background-color: var(--clr-teal-light);
    color: var(--clr-black);
    font-size: var(--size-xl);
    font-weight: 400;
    border: 1px solid var(--clr-teal-primary);
    border-radius: 0.6rem;

    padding: 0.6rem 1rem;
}

.hero__section .hero__content__container .search__bar .search__form input::placeholder {
    color: var(--clr-black);
    font-size: var(--size-base);
    font-weight: 500;
}

.hero__section .hero__content__container .search__bar .search__form .submit {
    color: var(--clr-black);
    font-size: var(--size-base);
    font-weight: 500;
    background-color: var(--clr-teal-primary);
    border-radius: 0.6rem;

    padding: 0.6rem 1rem;
}

.hero__section .hero__content__container .search__bar .search__form .submit i {
    padding-top: 0.2rem;
}


/* xxxs */
/* @media (min-width: 320px) {} */

/* xxs */
/* @media (min-width: 380px) {} */

/* xs */
/* @media (min-width: 475px) {} */

/* sm */
/* @media (min-width: 640px) {} */

/* md */
@media (min-width: 768px) {

    .hero__section .hero__content__container .search__bar .search__form input {
        width: 400px;
        border: 1px solid var(--clr-teal-primary);
        border-radius: 0.6rem;
    
        padding: 0.6rem 1rem;
    }

    .hero__section .hero__content__container .text__container .description {
        width: 50ch;
    }

    
}

/* lg */
/* @media (min-width: 1024px) {} */

/* xl */
@media (min-width: 1280px) {

    .hero__section .hero__content__container .search__bar .search__form input::placeholder {
        color: var(--clr-black);
        font-size: var(--size-lg);
        font-weight: 400;
    }
}

/* 2xl */
/* @media (min-width: 1536px) {} */

/* --------------------------------------- */
/* HERO SECTION STYLES END */
/* --------------------------------------- */

/* --------------------------------------- */
/* HOTEL DETAILS GRID STYLES START */
/* --------------------------------------- */

.hotels__grid {
    display: grid;
    /* grid-template-columns: 1fr 3fr; */
    /* justify-content: stretch; */
    /* align-items: stretch; */

    gap: 1.8rem;
}

.hotels__grid .hotel__list__grid__item {
    background-color: var(--clr-teal-light);
    border-radius: 1rem;

    display: flex;
    flex-direction: column;
    justify-content: start;
    align-items: stretch;

    gap: 0.5rem;
    padding: 2rem 1.125rem;
}

.hotels__grid .hotel__list__grid__item .hotel__list__grid__item__wrapper {
    display: flex;
    flex-direction: column;
    justify-content: start;
    align-items: stretch;

    gap: 1rem;
}

.hotel__list__grid__item .title {
    color: var(--clr-black);
    font-size: var(--sub-title);
    font-weight: 500;
}

.hotels__grid .hotel__list__grid__item .hotels__list {
    height: 180px;
    height: 70%;
    overflow: hidden;
    list-style: none;

    display: flex;
    flex-direction: column;
    justify-content: start;
    align-items: stretch;
    text-align: start;

    gap: 0.2rem;
    padding-left: 0rem;
}

.hotels__grid .hotel__list__grid__item .hotels__list.active {
    height: 100%;
}

.hotels__grid .hotel__list__grid__item .hotels__list .list__item {
    background-color: var(--clr-teal-light);
    color: var(--clr-black);
    font-size: var(--size-base);
    font-weight: 400;
    border-radius: 0.8rem;

    padding: 0.6rem 1rem;

    transition: all 0.3s ease-in-out;
} 

.hotels__grid .hotel__list__grid__item .hotels__list .list__item:hover {
    background-color: var(--clr-teal-primary);
    border-radius: 0.8rem;

    padding: 0.6rem 1rem;
}

.hotels__grid .hotel__list__grid__item .hotels__list .acitve {
    background-color: var(--clr-teal-primary);
    border-radius: 0.8rem;

    padding: 0.6rem 1rem;
}

.hotels__grid .hotel__list__grid__item .view__more__btn {
    color: var(--clr-blue);
    font-size: var(--size-base);
    font-weight: 600;
    cursor: pointer;
}

.hotels__grid .hotel__detail__grid {
    background-color: var(--clr-white);
    border: 1px solid var(--clr-ddd-black-title);
    border-radius: 1rem;

    display: flex;
    flex-direction: column;
    justify-content: start;
    align-items: stretch;

    gap: 1.2rem;
    padding: 2rem 1.125rem;
}

.hotel__detail__grid .heading__wrapper {
    display: flex;
    flex-direction: column;
    justify-content: start;
    align-items: start;

    gap: 0rem;
}

.hotel__detail__grid .heading__wrapper .title {
    color: var(--clr-black);
    font-size: var(--title-mb);
    font-weight: 500;
}

.hotel__detail__grid .heading__wrapper .location {
    color: var(--clr-333-black);
    font-size: var(--title-sm);
    font-weight: 400;
}

.hotel__detail__grid .description {
    color: var(--clr-1b1-black);
    font-size: var(--size-base);
    font-weight: 400;
    text-align: start;
}

.hotel__detail__grid .images__grid {
    display: grid;

    gap: 1rem;
}

.hotel__detail__grid .images__grid .main__img__wrapper,
.hotel__detail__grid .images__grid .verticle__grid .img__wrapper {
    height: 100%;
    width: 100%;
    border-radius: 0.65rem;
    overflow: hidden;
}

.hotel__detail__grid .images__grid .main__img__wrapper .img,
.hotel__detail__grid .images__grid .verticle__grid .img__wrapper .img {
    height: 100%;
    width: 100%;
    object-fit: cover;
}

.hotel__detail__grid .images__grid .verticle__grid {
    display: flex;
    flex-direction: column;
    justify-content: stretch;
    align-items: stretch;

    gap: 1rem;

}

.hotel__detail__grid .btn__wrapper {
    width: 100%;
}

.hotel__detail__grid .btn__wrapper .btn {
    width: 100%;
    background-color: var(--clr-teal-primary);
    color: var(--clr-black);
    font-size: var(--size-sm);
    font-weight: 500;
    border-radius: 0.65rem;
    
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    text-align: start;

    padding: 1.2rem 1.2rem;

    transition: all 0.3s ease-in-out;
}

.hotel__detail__grid .btn__wrapper .btn:hover {
    opacity: 0.875;
}


/* xxxs */
/* @media (min-width: 320px) {} */

/* xxs */
/* @media (min-width: 380px) {} */

/* xs */
/* @media (min-width: 475px) {} */

/* sm */
/* @media (min-width: 640px) {} */

/* md */
@media (min-width: 768px) {

    .hotels__grid {
        display: grid;
        grid-template-columns: 1.25fr 2.75fr;
        justify-content: stretch;
        align-items: stretch;
    
        gap: 1.8rem;
    }

    .hotels__grid .hotel__list__grid__item .hotels__list {
        height: 100%;
    }

    .hotels__grid .hotel__list__grid__item {
        border-radius: 1rem;

        gap: 2rem;
        padding: 2rem 0.8rem;
    }

    .hotels__grid .hotel__list__grid__item .hotels__list .list__item {
        font-size: var(--size-sm);
        padding: 0.6rem 1rem;
    
        transition: all 0.3s ease-in-out;
    } 

    .hotels__grid .hotel__list__grid__item .view__more__btn {
        display: none;
    }

    .hotel__detail__grid .description {
        font-size: var(--size-sm);
        font-weight: 400;
    }

    .hotels__grid .hotel__detail__grid {
        border-radius: 1rem;
    
        gap: 1.2rem;
        padding: 2rem 2rem;
    }

    .hotel__detail__grid .images__grid {
        grid-template-columns: 1.75fr 1.25fr;
    
        gap: 1rem;
    }

    .hotel__detail__grid .images__grid .verticle__grid {
        gap: 1rem;
    
    }

    .hotel__detail__grid .btn__wrapper .btn {
        font-size: var(--size-base);

        padding: 0.9rem 1.1rem;
    }
    
}

/* lg */
/* @media (min-width: 1024px) {} */

/* xl */
@media (min-width: 1280px) {

    .hotels__grid {
        display: grid;
        grid-template-columns: 1fr 3fr;
        justify-content: stretch;
        align-items: stretch;
    
        gap: 1.8rem;
    }

    .hotels__grid .hotel__list__grid__item .hotels__list .list__item {
        font-size: var(--size-lg);
        padding: 0.6rem 1rem;
    
        transition: all 0.3s ease-in-out;
    } 

    .hotel__detail__grid .description {
        font-size: var(--size-base);
        font-weight: 400;
    }

    .hotel__detail__grid .images__grid {
        grid-template-columns: 1.75fr 1.25fr;
    
        gap: 1.8rem;
    }

    .hotel__detail__grid .images__grid .verticle__grid {
        gap: 1.8rem;
    
    }
}

/* 2xl */
/* @media (min-width: 1536px) {} */


/* --------------------------------------- */
/* HOTEL DETAILS GRID STYLES START */
/* --------------------------------------- */