.header{
    box-shadow: 0px 1px 2px #00000046;
}

.header__t{
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 8px 0;
    width: 1280px;
    max-width: 100%;
    margin: 0 auto;
    color: #16191c;
}

.header__logo img{
    width: 69px;
}

.header__menu{
    display: flex;
    gap: 20px;
}

.header__menu-movil{
    display: none;
    width: 45px;
    height: 45px;
    font-size: 24px;
}

.header__menu-el{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
    padding: 8px;
    font-size: 14px;
    cursor: pointer;
}

.header__menu-el img{
    width: 24px;
    height: 24px;
    object-fit: cover;
    border-radius: 100%;
}

.header__menu-el i{
    font-size: 18px;
}

.header__arrow-down{
    font-size: 22px !important;
}

.header__login{
    display: flex;
    align-items: center;
    justify-content: center;
}

.header__login button{
    width: 109px;
    height: 37px;
    padding: 8px 12px;
    border-radius: 4px;
    font-size: 14px;
    font-weight: 600;
    color: #186cdf;
    background-color: #f0f6ff;
    border: none;
    cursor: pointer;
}

.header__b{
    display: flex;
    gap: 16px;
    width: 1280px;
    max-width: 100%;
    margin-top: 8px;
    margin: 0 auto;
}

.header__b-el{
    display: flex;
    gap: 4px;
    padding: 9px;
    font-size: 14px;
    cursor: pointer;
}

.header__b-el.active{
    border-radius: 8px 8px 0 0;
    color: #003b98;
    background-color: #f0f6ff;
    border-bottom: 2px solid #003b98;
}

.header__b-el i{
    color: #003b98;
    font-size: 18px;
}

.header__icon-fire{
    color: #d93616 !important;
}

.banner{
    position: relative;
    min-height: 220px;
    background: #0461b2;
    background: linear-gradient(180deg, #0461b2, #1d87da);
    box-shadow: 0px 1px 2px #00000046;
}

.banner::before{
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    -webkit-clip-path: polygon(0 0, 35% 0, 50% 101%, 0 101%);
    clip-path: polygon(0 0, 35% 0, 50% 101%, 0 101%);
    background-color: #fff;
}

.box{
    max-width: 1280px;
    margin: 0 auto 16px;
    padding: 0 15px;
}

.box__content{
    padding: 24px 15px 8px;
    color: #fff;
}

.box__msj{
    font-size: calc(1.0375rem + 1.95vw);
    text-align: right;
    text-shadow: 0 calc(0.5px* 4) calc(1px* 4) hsla(210, 18%, 4%, 0.14), 0 calc(0.5px* 4) calc(1px* 4) hsl(210deg 18% 4% / 10%);
}

.box__msj-footer{
    margin-bottom: 16px;
    text-align: right;
    text-shadow: 0 calc(0.5px* 4) calc(1px* 4) hsla(210, 18%, 4%, 0.14), 0 calc(0.5px* 4) calc(1px* 4) hsl(210deg 18% 4% / 38%);
}

.flys{
    position: relative;
    width: 1248px;
    max-width: 100%;
    padding: 20px;
    margin: 16px;
    border-radius: 4px;
    color: #3A3C40;
    background-color: #fff;
    box-shadow: 3px 3px 10px #00000046;
}

.flys__options{
    display: flex;
    gap: calc(0.25rem* 4) !important;;
    margin-bottom: 8px;
}

.flys__op{
    display: flex;
    align-items: center;
}

.flys__op label{
    height: 20px;
}

.flys__op .input__checkbox[type="checkbox"] {
    display: none;
}

.custom-checkbox {
    display: inline-block;
    width: 20px;
    height: 20px;
    margin-right: 4px;
    border: 2px solid #2196f3;
    border-radius: 50%;
    position: relative;
    cursor: pointer;
}

.custom-checkbox::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 12px;
    height: 12px;
    background-color: #2196f3;
    border-radius: 50%;
    opacity: 0;
}

/* Show the checkmark when checkbox is checked */
.input__checkbox[type="checkbox"]:checked+.custom-checkbox::after {
    opacity: 1;
}

.form{
    position: relative;
    display: flex;
    margin-bottom: 16px;
}

.form__el{
    position: relative;
    padding: 0 15px;
}

.form__el:nth-child(2){
    padding-left: 0;
}

.form__el:last-child{
    padding-right: 0;
}

.form__ttl{
    font-size: 12px;
}

.form__content-input{
    display: flex;
    align-items: center;
    height: 38px;
    border-bottom: 1px solid #bfc2c7;
}

.form__content-input .bx{
    font-size: 20px;
}

.form__input{
    height: 100%;
    padding: 6px 12px;
    font-size: 16px;
    color: #676b70;
    outline: none;
    border: none;
}

.form__input-div{
    max-width: 157px;
    cursor: pointer;
}

.form__input-div-b{
    min-width: 223px;
    cursor: pointer;
}

.form__submit{
    min-width: 176px;
    height: 100%;
    padding: 16px;
    border-radius: 6px;
    line-height: 1.2em;
    font-size: 16px;
    letter-spacing: 1px;
    font-weight: 700;
    color: #fff;
    background-color: #2196f3;
    border: none;
    cursor: pointer;
}

.trash{
    width: 1280px;
    max-width: 100%;
    margin: 16px auto;
}

.trash__ttl{
    font-size: 28px;
    font-weight: 400;
    margin-bottom: 8px;
}

.trash__sub{
    margin-bottom: 16px;
}

.trash__carrousel{
    display: flex;
    gap: 10px;
    overflow: scroll;
    scrollbar-width: none; /* Firefox */
    -ms-overflow-style: none; /* IE 10+ */
    -webkit-overflow-scrolling: touch;
}

.trash__carrousel::-webkit-scrollbar {
    display: none; /* Chrome, Safari y Opera */
}

.trash__carrousel-img{
    border-radius: 4px;
}

.trash__payments{
    display: flex;
    align-items: center;
    margin: 40px 0 30px;
    padding: 28px 0;
    border-radius: 20px;
    border: 1px solid #00000023;
}

.trash__box{
    display: flex;
    gap: calc(0.25rem* 8) !important;
}

.trash__box-el{
    display: flex;
    gap: 24px;
    width: 50%;
    padding: 28px;
    border-radius: 20px;
    border: 1px solid #00000023;
}

.box__logo{
    width: 40px;
    height: 40px;
    background-image: url(/assets/img/Shopping_Bag.svg);
    background-position: center;
    background-repeat: no-repeat;
}

.trash__box-el:last-child .box__logo{
    background-image: url(/assets/img/Call_Center.svg);
}

.payments__el{
    padding: 0 48px;
}

.payments__el:first-child{
    border-right: 1px solid #00000023;
}

.payments__ttl{
    font-size: 20px;
    font-weight: bold;
    margin-bottom: 8px;
}

.payments__sub{
    margin-bottom: 4px;
    font-size: 16px;
}

.payments__btn{
    display: flex;
    align-items: center;
    color: #dc3004;
    font-size: 16px;
    font-weight: 600;
    background-color: transparent;
    border: none;
}

.payments__btn-hidde{
    display: none;
}

.payments__btn .bx{
    font-size: 20px;
}

.PaymentBanner__logos{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 32px;
    flex-wrap: wrap;
}

@media (992px <= width) {
    .banner {
        margin-top: 2px;
    }
}

.loginBanner{
    position: relative;
    width: 100%;
    padding: 54px 72px;
    margin-top: 30px;
    border-radius: 12px;
    overflow: hidden;
}

.loginBanner::before{
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, hsl(210,18%,4%) 0, hsla(210,18%,4%, .69) 50%, hsla(210,18%,4%, .15) 100%);
    opacity: .75;
    z-index: 1;
}

.loginBanner_heroimg{
    border-radius: 12px;
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
    object-fit: cover;
}

.loginBanner_container{
    color: #fff;
    max-width: 420px;
    position: relative;
    z-index: 2;
}

.loginBanner_container h2{
    margin-bottom: 20px;
    font-size: 28px;
    font-weight: 700;
}

.loginBanner_container p{
    margin-bottom: 24px;
}

.loginBanner_container_btns{
    display: flex;
    gap: 2rem;
}

.loginBanner_container_btns a{
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    width: 132px;
    height: 55px;
    color: #fff;
    text-decoration: none;
}

.btnPrimary{
    background-color: rgb(204, 47, 8);
    border-bottom-color: rgb(204, 47, 8);
    border-left-color: rgb(204, 47, 8);
    border-right-color: rgb(204, 47, 8);
    border-top-color: rgb(204, 47, 8);
    box-shadow: rgba(8, 10, 12, 0.14) 0px 2.86888px 5.73777px 0px, rgba(8, 10, 12, 0.14) 0px 2.86888px 5.73777px 0px;
}

.btnOnBg{
    background-color: #000;
    border: 2px solid #fff;
}

.quest{
    padding: 0 15px;
    margin-top: 70px;
    color: #3A3C40;
}

.quest__ttl{
    margin-bottom: 32px;
    font-size: 28px;
    font-weight: 400;
}

.quest__content{
    display: flex;
    gap: 16px;
}

.quest__el{
    width: 33%;
    min-height: 305px;
    margin: 0 15px;
    padding: 20px;
    border-radius: 4px;
    border: 1px solid rgba(22, 25, 28, .125);
}

.quest__el p{
    margin-bottom: 8px;
    font-weight: 600;
}

.quest__el div{
    font-size: 14px;
    color: #676b70;
}

.footer{

}

.footer__t{
    background-color: #f2f3f5;
}

.footer__t-content{
    display: flex;
    align-items: center;
    width: 1280px;
    max-width: 100%;
    padding: 24px 15px 48px;
    margin: 0 auto;
}

.footer__t-el{
    width: 50%;
    padding: 0 28px 0 20px;
}

.footer__t-el:first-child{
    border-right: 1px solid #bfc2c7;
}

.footer__t-ttl-hidde{
    display: none;
}

.footer__t-ttl{
    margin-bottom: 16px;
    font-size: 20px;
    color: #3A3C40;
}

.footer__t-call{
    display: flex;
    gap: 16px;
}

.footer__t-call-el{
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 16px;
    border-radius: 4px;
    background-color: #fff;
}

.footer__t-call-el i{
    font-size: 24px;
}

.footer__t-call-el span{
    font-size: 14px;
    font-weight: 400;
}

.footer__t-call-el:first-child i{
    color: #1c8207;
}
.footer__t-call-el:nth-child(2) i{
    color: #3161f2;
}

.footer__t-el h3{
    text-align: center;
}

.footer__t-stores{
    display: flex;
    align-items: center;
    justify-content: center;
}

.footer__b{
    background-color: #003b98;
}

.footer__b-box{
    position: relative;
    width: 1280px;
    max-width: 100%;
    min-height: 240px;
    margin: 0 auto;
}

.footer__box{
    position: absolute;
    top: -30px;
    left: 50%;
    transform: translateX(-50%);
    width: 1066px;
    max-width: 100%;
    padding: 22px 23px 22px 32px;
    border-radius: 10px;
    color: #3A3C40;
    background-color: #fff;
    border: 1px solid #e4e5e6 ;
}

.footer__box-ttl{
    margin: 16px 8px;
    font-size: 26px;
    font-weight: 700;
}

.footer__box-content{
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 70px;
    padding-top: 24px;
}

.footer__box-content input{
    padding: 16px;
    width: 345px;
    height: 77px;
    border-radius: 4px;
    font-size: 16px;
    border: 1px solid #00000023;
}

.footer__box-content button{
    padding: 16px;
    width: 305px;
    height: 70px;
    border-radius: 4px;
    font-size: 16px;
    font-weight: 600;
    color: #dc3004;
    background-color: #fff;
    border: 2px solid #dc3004;
}

.footer__content{
    display: flex;
    width: 1280px;
    max-width: 100%;
    padding-top: 24px;
    margin: 0 auto;
    color: #fff;
}

.footer__l{
    width: 320px;
}

.footer__el{
    padding: 48px 0 0 15px;
}

.footer__el img{
    width: 100px;
    height: 91px;
}

.footer__redes{
    display: flex;
    align-items: center;
    gap: 16px;
    font-size: 24px;
    color: #186cdf;
}

.footer__redes div{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    margin-top: 16px;
    border-radius: 50%;
    background-color: #fff;
    cursor: pointer;
}

.footer__r{
    display: flex;
    justify-content: space-between;
    flex: 1;
    flex-wrap: wrap;
}

.footer__r-content{
    width: fit-content;
    font-weight: 600;
}

.footer__r-content p{
    padding-left: 8px;
    margin-bottom: 16px;
}

.footer__r-content ul{
    padding: 0 8px;
    margin-bottom: 16px;
}

.footer__r-content li{
    margin-bottom: 15px;
    list-style: none;
}

.footer__r-content a{
    text-decoration: none;
    font-size: 12px;
    color: #fff;
    /* text-wrap: none; */
}

/* RESPONSIVE */

@media screen and (max-width: 1279px) {
    .header__t,
    .header__b,
    .box,
    .trash,
    .footer__content {
        width: 960px;
    }

    .box__content {
        padding: 0;
    }

    .header__txt{
        display: none;
    }

    .form__input{
        width: 152px;
    }

    .form__input-div-b{
        min-width: 152px;
    }

    .form__input-div {
        max-width: 103px;
    }

    .form__submit {
        min-width: 122px;
    }

    .payments__el:first-child {
        max-width: 373px;
    }

    .payments__el:last-child {
        flex: 1;
    }

    .footer__t-content {
        flex-direction: column;
        width: 930px;
    }

    .footer__t-el {
        width: 100%;
        padding: 16px;
    }

    .footer__t-el:first-child {
        text-align: center;
        border-right: none;
        border-bottom: 1px solid #bfc2c7;
    }

    .footer__t-call-el{
        justify-content: center;
        width: 100%;
    }

    .footer__t-ttl{
        display: none;
    }

    .footer__t-ttl-hidde{
        display: block;
    }

    .footer__t-el:last-child{
        display: flex;
        justify-content: space-between;
    }

    .footer__t-stores{
        gap: 14px;
    }

    .footer__box{
        width: 800px;
    }
}

@media screen and (max-width: 991px) {
    .header__t,
    .header__b,
    .box,
    .trash,
    .footer__content {
        width: 720px;
    }

    .favorites{
        display: none;
    }

    .header__logo img {
        width: 60px;
    }

    .header__menu {
        gap: 4px;
    }

    .banner::before {
        display: none;
    }

    .box{
        width: 688px;
        padding: 24px 0 16px;
    }

    .flys{
        margin: 16px 0;
    }

    .form{
        flex-direction: column;
    }

    .form__el{
        height: 79px;
        padding: 0;
    }

    .form__el:last-child{
        height: 55px;
    }

    .form__submit{
        width: 100%;
    }

    .form__input,
    .form__input-div{
        width: 100%;
        max-width: 100%;
    }

    .flights{
        top: 59px;
        left: 0;
        width: 100%;
    }

    .flights.flights__d {
        top: 138px;
        left: 0;
    }

    #calendar-wrapper {
        top: 58px;
        left: 0px;
    }

    .passengers{
        top: 59px;
        left: 0;
        width: 100%;
    }

    .trash__payments{
        flex-direction: column;
    }

    .payments__el:first-child {
        border-right: none;
    }

    .payments__ttl{
        margin-bottom: 18px;
    }

    .payments__btn{
        display: none;
    }

    .payments__btn-hidde{
        display: flex;
        margin-top: 18px;
    }

    .loginBanner{
        padding: 56px 32px;
    }

    .quest__content{
        justify-content: center;
        flex-wrap: wrap;
    }

    .quest__el{
        width: 48%;
        margin: 0;
    }

    .footer__t-content{
        width: 720px;
    }

    .footer__t-el:last-child{
        align-items: center;
        gap: 100px;
    }

    .footer__t-call-el{
        min-width: fit-content;
        width: 100%;
    }

    .footer__t-ttl-hidde{
        text-align: center;
    }

    .footer__t-stores{
        flex-direction: column;
    }

    .footer__t-stores img{
        width: 121px;
    }

    .footer__box {
        width: 720px;
    }

    .footer__box-content{
        flex-direction: column;
        gap: 24px;
    }

    .footer__box-content input,
    .footer__box-content button{
        width: 100%;
        max-width: 100%;
    }

    .footer__content{
        flex-direction: column;
    }

    .footer__l {
        display: flex;
        justify-content: space-between;
        width: 100%;
        margin-top: 26px;
        margin-bottom: 46px;
    }

    .footer__r{
        width: 540px;
    }
}

@media screen and (max-width: 767px) {
    .header__t,
    .header__b,
    .box,
    .trash,
    .footer__content {
        width: 540px;
    }

    .header__menu{
        display: none;
    }

    .header__menu-movil{
        display: block;
    }

    .trash__box{
        flex-direction: column;
    }

    .trash__box-el{
        width: 100%;
    }

    .quest__el{
        width: 100%;
        min-height: auto;
    }

    .footer__t-call{
        flex-wrap: wrap;
    }

    .footer__t-el:last-child {
        flex-direction: column;
        gap: 10px;
    }

    .footer__t-stores{
        flex-direction: row;
    }

    .footer__box {
        width: 540px;
    }
}

@media screen and (max-width: 575px) {
    .header__t,
    .header__b,
    .box,
    .trash,
    .footer__content,
    .footer__r {
        width: 95%;
    }

    .header__b{
        overflow: hidden;
    }

    .header__b-el{
        min-width: fit-content;
    }

    .footer__l{
        flex-direction: column;
        align-items: center;
        margin-top: 80px;
    }

    .footer__el {
        padding: 30px 0 0 0;
    }

    .footer__redes{
        justify-content: center;
    }
}

@media screen and (max-width: 480px) {
    #popupsContent{
        position: fixed;
        display: none;
        width: 100%;
        height: 100vh;
        z-index: 100;
        border: 1px solid red;
    }

    #calendar-wrapper {
        position: fixed;
        top: inherit;
        left: 0;
        bottom: 0%;
        display: block !important;
        width: 100%;
        border-radius: 20px 20px 0 0;
        transition: .4s ease-in-out;
    }

    #calendar-wrapper.hidde{
        bottom: -100%;
    }

    .calendar__el {
        min-width: 100%;
    }
}