.border{ border: 1px dashed #00ffff !important; }
a{ text-decoration: none !important; }


body{
    font-family: "Montserrat", sans-serif;
    background-color: #FAFAFA;
    color: var(--dark1);
}

/* -----------------------------------
                Colores 
------------------------------------ */
:root{
    --white: #ffffff;
    --black: #000000;
    --purple1: #5F2167;
    --red1: #E11F2A;
    --dark1: #1D1F24;
}


/* ----------------------------------
                Globales 
---------------------------------- */
ul{
    list-style: none;
}
.norad{
    border-radius: 0 !important;
}
.rad8{ 
    border-radius: 8px !important; 
}
.rad10{ 
    border-radius: 10px !important; 
}
.rad16{ 
    border-radius: 16px !important; 
}
.rad20{ 
    border-radius: 20px !important; 
}
.rad24{
    border-radius: 24px !important; 
}
.modal-content{
    background-color: #FAFAFA;
}
.form-control{
    border-radius: 8px;
    background-color: #F6F7FB !important;
    border: 1px solid #E3E7F2;
    padding: 0.8rem .75rem; 
    box-shadow: none !important;
}
.modalFull .modal-dialog{
    width: 100%;
    max-width: 100%;
    height: 100%;
    margin: 0;
    border-radius: 0;
}
.modal-bottom .modal-dialog{
    width: 100%;
    max-width: 100%;
    margin: 0;
    border-radius: 0;
    position: absolute;
    bottom: 0;
}.modal-bottom .modal-dialog .modal-content{
    border-top-left-radius: 30px;
    border-top-right-radius: 30px;
}
.separador{
    border-top: 2px solid #F1F3F9;
}
.green-div1{
    background-color: #EBF7F6;
    border-top: 1px solid #169A8E;
    border-bottom: 1px solid #169A8E;
}
.green-div2{
    background-color: #EBF7F6;
    border: 1px solid #B9E9E4;
}
.green-div3{
    background-color: #E7F7E4;
    border: 1px solid #258910;
}
.form-check-input:checked {
    background-color: var(--purple1);
    border-color: var(--purple1);
}

.btn-close {
    --bs-btn-close-bg: url("../images/iconos-logos/close.svg");
    background-size: 50px;
}

.purple-link{
    color: var(--purple1);
}.purple-link:hover{
    color: var(--red1);
}


/* -----------------------------------
        Colores tipografías 
------------------------------------ */
.f-white{
    color: var(--white);
}
.f-black{
    color: var(--black);
}
.f-green1{
    color: #258910;
}
.f-green2{
    color: #169A8E;
}
.f-purple{
    color: var(--purple1);
}
.f-red{
    color: var(--red1);
}

/* -----------------------------------
            Backgrounds 
------------------------------------ */
.white-opacity-cont{
    background-color: rgba(255, 255, 255, .8); 
}
.whiteback{
    background-color: var(--white);
}
.faback{
    background: #FAFAFA;
}
.purpleback{
    background: #E4DAE6;
    border: 1px solid #5F2167;
}



/* -----------------------------------
        Tamaños y bolds Tipografías 
------------------------------------ */
.f-12{
    font-size: 12px;
}
.f-14{
    font-size: 14px;
}
.f-16{
    font-size: 16px;
}
.f-18{
    font-size: 18px;
}
.f-20{
    font-size: 20px;
}
.f-24{
    font-size: 24px;
}
.f-28{
    font-size: 28px;
}
.f-32{
    font-size: 32px;
}
.f-40{
    font-size: 40px;
}

.fw-300{
    font-weight: 300;
}
.fw-500{
    font-weight: 500;
}
.fw-600{
    font-weight: 600;
}
.fw-700{
    font-weight: 700;
}

    
    
/* ----------------------------------
                Botones 
---------------------------------- */
.white-btn{
    background-color: var(--white);
    border: 1px solid var(--purple1);
    color: var(--purple1)
}.white-btn:hover{
    background-color: var(--purple1);    
    color: var(--white);
}
.disabled-btn{
    background-color: #E3E7F2;
    border: 1px solid #E3E7F2;
}

.fa-btn{
    background-color: #FAFAFA;
    border: 1px solid var(--purple1);
    color: var(--purple1)
}.fa-btn:hover{
    background-color: var(--purple1);    
    color: #FAFAFA;
}

.purple-btn{
    background-color: var(--purple1);
    border: 1px solid var(--purple1);
    color: var(--white)
}.purple-btn:hover{
    background-color: var(--white);    
    border: 1px solid var(--purple1);
    color: var(--purple1);
}

.gray1-btn{
    background-color: #E3E7F2;
    color: #6F7587;
}.gray1-btn:hover{
    background-color: #258910;
    color: var(--white);
}

.green-btn{
    background-color: #258910;
    color: var(--white);
    border: 1px solid #258910;
}.green-btn:hover{
    background-color: var(--white);
    color: #258910;
    border: 1px solid #258910;
}

.btnlang{
    width: 184px;
    height: 64px;
}

.btnRegresar1{
    width: 187px;
}


/* ----------------------------------
                Home 
---------------------------------- */
.back-red{
    background: var(--red1); 
    height: 400px; 
    position: fixed; 
    width: 100%; 
    left: 0; 
    top: 0; 
    right: 0; 
    z-index: -10;
}

/* Formulario Ida Regreso */
.ida_regreso .custom-radio{
    position: relative;
    width: 50%;
}.ida_regreso .form-check-input[type=radio] {
    border-radius: 0;
    width: 100%;
    height: 40px;
    margin-top: -2px;
}.ida_regreso .form-check-input:checked {
    background-color: var(--purple1);
    border-color: var(--purple1);
}.ida_regreso .form-check-input:checked[type=radio] {
    background-image: url("");
}.ida_regreso .form-check-label{
    width: 100%;
    position: absolute;
    left: 0; 
    right: 0; 
    top: 0;
    z-index: 2;
    color: #2D2E30;
}.ida_regreso .form-check-input[type=radio]:checked + .form-check-label{
    color: var(--white);
}


/* Cards Destinos */
.card-destino .card-body{
    position: relative;
    height: 150px;
}
.card-destino img{
    border-top-left-radius: 16px;
    border-top-right-radius: 16px;
}.card-destino button{
    position: absolute;
    bottom: 20px;    
    display: block;
    left: 5%;
    right: 5%;
    width: 90% !important;
}.card-destino:hover,
.card-destino:hover .card-body,
.card-destino:hover h5{
    background-color: #7a4680;
    color: #fff;
}.card-destino:hover{
    box-shadow: 0px 0px 0px 7px #5f2167 inset;
}

/* Acorddion terminales */
#accordionTerminales,
#accordionTerminales .accordion-header,
#accordionTerminales .accordion-header button{
    background-color: #FAFAFA;
    font-size: 20px;
}
.subaccordions,
.subaccordions button,
.subaccordions .accordion-body{
    background-color: #F1F3F9 !important;
    font-size: 20px;
}
.subaccordions button:hover{
    background-color: var(--purple1) !important;
    color: var(--white) !important;
    border-radius: 20px;
}
#accordionTerminales button[aria-expanded="true"]{
    font-weight: 700;
}

.accordion-button:not(.collapsed),
.accordion-collapse.show .accordion-body{
    background-color: #F1F3F9 !important;
}


.fechas-viaje{
    background-color: #F1F3F9;
}
.list-fechas-viaje li{
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 20px;
    font-weight: 500;
    font-size: 18px;
}
.list-fechas-viaje .circle{
    width: 14px;
    height: 14px;
    margin-right: 5px;
    border-radius: 50%;    
}
.list-fechas-viaje li:nth-child(1) .circle{
    background: #5F2167;
}.list-fechas-viaje li:nth-child(2) .circle{
    background: #D1820B;
}.list-fechas-viaje li:nth-child(3) .circle{
    background: #87CE77;
}


/* Lightpicker */
.litepicker {
    display: block;
}
.litepicker .container__months {
    display: flex;
    flex-direction: column;
}
.month-item{
    margin-bottom: 20px !important;
}
.container__months,
.month-item-header,
.month-item-weekdays-row,
.container__days{
    background-color: #FAFAFA !important;
    box-shadow: none !important;
}
.day-item{
    font-family: "Montserrat", sans-serif !important;
    font-size: 18px;
}
.month-item-name, .month-item-year{
    font-family: "Montserrat", sans-serif !important;
    font-weight: 600;
    text-transform: capitalize;
    font-size: 28px;
}
.month-item-weekdays-row{
    border-bottom: 1px solid #E3E7F2;
}
.month-item-weekdays-row div{
    text-transform: uppercase;
    font-size: 22px;
    color: #000000;
}
.litepicker .container__days .day-item.is-start-date,
.litepicker .container__days .day-item.is-end-date {
    background-color: #5F2167 !important;
}
.litepicker .container__days .day-item.is-in-range{
    background-color: #E4DAE6 !important;
}
.litepicker .container__days .day-item.is-locked{
    color: #B5BAC7;
}

/* Modal Viajantes */
#modal-pasajeros .icon-viajeros{
    width: 60px;
}
#modal-pasajeros .btn-cant{
    border: 2px solid #ECEFF6;
    border-radius: 7px;
    box-shadow: none !important;
    color: #959BA8;
    width: 50px;
    height: 50px;
    font-size: 20px;
}
#modal-pasajeros .form-control {
    width: 70px;
    text-align: center;
    border: none !important;
    box-shadow: none !important;
    background-color: #FAFAFA;
}
#dec_ad,
#dec_ni,
#dec_ina,
#dec_est,
#dec_mae{
    background-image: url('../images/iconos-logos/menos.png'); 
    background-repeat: no-repeat; 
    background-position: center; 
    background-size: 80%;
}
#inc_ad,
#inc_ni,
#inc_ina,
#inc_est,
#inc_mae{
    background-image: url('../images/iconos-logos/mas.png'); 
    background-repeat: no-repeat; 
    background-position: center; 
    background-size: 70%;
}


/* ----------------------------------
            Corridas 
---------------------------------- */
#corridas{
    height: 1245px;
    overflow-y: scroll;
}
.nav-corridas li button{
    border-bottom: solid 3px transparent;
    position: inherit;
}
.nav-corridas li button img{
    width: 20px;
}
.nav-corridas li button{
    font-size: 20px;
    color: #959BA8;
    font-weight: 500;
}
.nav-corridas li button:hover,
.nav-corridas li button.active{
    border-bottom: solid 3px var(--purple1) !important;    
    color: #000;
}
#boletos-tab.active .boletos-off{
    display:none;
}#boletos-tab.active .boletos-on{
    display: flex !important;
}
#asientos-tab.active .asientos-off{
    display:none;
}#asientos-tab.active .asientos-on{
    display: flex !important;
}
#registro-tab.active .registro-off{
    display:none;
}#registro-tab.active .registro-on{
    display: flex !important;
}
#pago-tab.active .pago-off{
    display:none;
}#pago-tab.active .pago-on{
    display: flex !important;
}


.corridasBox-top{
    border-top-left-radius: 16px;
    border-top-right-radius: 16px;
}.corridasBox-bottom{
    border-bottom-left-radius: 16px;
    border-bottom-right-radius: 16px;
}

.list-group .list-group-item:not(:last-child) {
    border-right: none !important;
}.list-group .list-group-item:not(:last-child) {
    background-image: url("../images/line-border.png");
    background-size: 1px 50%;
    background-repeat: no-repeat;
    background-position: right center;
}
#estatus_corrida{
    border-bottom: 2px solid #B5BAC7;
    background-color: #ECEFF6;
}

.borders-x{
    background-image: url("../images/line-border.png"), url("../images/line-border.png");
    background-size: 1px 60%, 1 60%;
    background-repeat: no-repeat, no-repeat;
    background-position: right center, left center;
}
.border-lx{
    background-image: url("../images/line-border.png");
    background-size: 1px 60%;
    background-repeat: no-repeat;
    background-position: left center;
}
.list-borders1 li:not(:last-child){
    background-image: url("../images/line-white.png");
    background-size: 1px 50%;
    background-repeat: no-repeat;
    background-position: right center;
}

.btn-corridas-selec{
    padding: 13px 10px;
}

/* 
    Corridas asientos
*/
.bullets-asientos{
    width: 15px; 
    height: 15px;                  
    border-radius: 50%;
}
.bullets-asientos.disp{
    border: 1px solid #B5BAC7;
    background-color: #fff;
}
.bullets-asientos.nodisp{
    border: 1px solid #B5BAC7;
    background-color: #848CA2;
}
.bullets-asientos.select{
    background-color: var(--purple1);
    border: 1px solid #B5BAC7;
}


.navsBoletos{
    border: 5px solid #ECEFF6;
    border-radius: 16px;
}
.navsBoletos .nav-link.active,
.navsBoletos .nav-link:hover, 
.navsBoletos .show>.nav-link {
    color: var(--white);
    background-color: var(--purple1);
}
.navsBoletos .nav-link{
    color: #808391;
}

.card-boletos-car{
    border: 1px solid #B5BAC7;
    background-color: #ECEFF6;
    border-radius: 10px;    
}
.border-red{
    box-shadow: 0px -20px 0px -3px var(--red1) inset;
}
.border-orange{
    box-shadow: 0px -20px 0px -3px #FF6633 inset;
}

