
/* LINEA ESTE */
body.le {
    color: #282f33;
    font-weight: 500;
}

body.le .primary {
    background-color: #3d7cc9;
    color: #fff;

}
body.le section.main {
    background-color: #3d7cc9;
}
body.le section.main::after {
    content: '';
    background-image: url(../img/vector-bkg-linea-este.svg);
    background-repeat: no-repeat;
    background-position: right;
    background-size: contain;
    height: 50%;
    width: 62%;
    position: absolute;
    bottom: 10%;
    right: 0;
    z-index: 1;
}
body.le h1 {
    color: #3d7cc9 ;
}
body.le h2 {
    margin-bottom: 1.5em;
    color:#3d7cc9;
    text-decoration-color:#f2d131;
}
/*body.le h2::after {
    content: '';
    width: 100%;
    height: 6px;
    background-color: ;
    position: absolute;
    bottom: -0.2em;
    left: 0;
}*/

/* HEAD */
body.le .header-le h1{
    color: #fff;
}
body.le h3 {
    color:#3d7cc9
}
.header-le.header-proceso {
    padding-top: 3em;
}
/* NAVBAR */
.navbar-brand {
    background-color: #3d7cc9;
}
.navbar-default .navbar-brand:focus, .navbar-default .navbar-brand:hover {
    background-color: #3d7cc9;
    padding-left: 35px;
}
.navbar-nav .btn-info:hover img {
    filter: invert(100%) sepia(100%) saturate(0%) hue-rotate(84deg) brightness(300%) contrast(103%);
}
.navbar-nav .btn-info img, footer .btn-footer img {
    margin-top: -3px;
    margin-left: 5px;
} 
/* BUTTONS */

.btn-primary {
    background: #3d7cc9;
    transition: all ease-in-out 0.3s;
}
.btn-primary:hover {
    background: #f2d131;
}
.btn-info {
    border: 1px solid #e1251b;
    padding: 0.7em 1.5em!important;
    border-radius: 50vh;
    background: #fff;
    display: block;
    margin-top: 1.8em;
    margin-left: 1em;
    color: #e1251b!important;
    transition: all ease-in-out 0.3s;
}
.btn-info:hover {
    background: #e1251b !important;
    color: #fff !important;
    border-color:#fff;
} 
.btn-primary.selected {
    background-color: #fff;
    color: #3d7cc9 ;
}

/* HEADER SECTION*/
header.header-le {
    background-color: #3d7cc9;
    text-align: center;
    color: #fff;

}
.mod-buttons-head  {
    margin:3em 0;
}
.mod-buttons-head .btn-primary {
    border:1px solid #fff;
    padding: 15px 60px;
}

/* SEARCH MODULE*/

label {
    text-transform: uppercase;
    color:#3d7cc9;
}

.select-wrapper {
    border:1px solid #3d7cc9;
    background-image: url(../img/select-arrow.svg);
    background-position: center right 20px;
    background-repeat: no-repeat;
}
.form-wrapper {
    border:1px solid #3d7cc9;
    border-radius: 50vh;
    padding: 13px 20px;
    width: auto;
}
.select-wrapper.select-extended {
    width: 130%;
}
.select-wrapper select.form-control {
    color: #3d7cc9;
}
.form-control {
    background: #fff;
    box-shadow:none;
    border:solid 1px #3d7cc9;
    color: #3d7cc9;
    cursor: pointer;
    border-radius: 50vh;
    text-transform: uppercase;
    font-weight: 500;
    font-size: 1.1em;
    background: transparent;
}
.form-control::placeholder {
  color: #3d7cc9;
  opacity: 1; /* Firefox */
}
input[type=text].form-control, .form-control[type=email] {
    height: 4em;
}
.form-control[type=text], .form-control[type=email] {
    padding: 30px 21px;
}
.radio-btn label {
    background: #fff;
    box-shadow: 0 0 0 1px #3d7cc9;
    color: #3d7cc9;
    padding: 10px 40px;
    cursor: pointer;
    border-radius: 50vh;
    text-transform: uppercase;
    font-weight: 500;
    font-size: 1.1em;
    cursor: pointer;
    margin-bottom: 0;
    transition: all ease-in-out .3s;
}
.radio-btn label:hover {
    background-color:#f2d131;
    box-shadow: 0 0 0 1px #f2d131;
    color: #fff;
}
.radio-btn input[type="radio"]:checked+label {
    background-color: #3d7cc9;
    color: #fff;
}
.radio-btn input[type=radio] {
    display: none;
}
input[type=date], input[type=time] {
    width: 100%;
    background: transparent;
    border: 0;
    background-color: transparent;
    border-radius: 0;
    box-shadow: none;
    font-size: 1.1em;
    text-transform: uppercase;
    color: #3d7cc9;
    position: relative;
}
#form_p1 {
    margin-bottom: 2em;
}
.check-eticket {
    float: left;
    padding-top: 1em;
    margin-bottom: 2em;
}
.check-eticket input {
    margin: 0 0 0 0.5em;
}
.check-eticket label {
    margin:0;
}
#form_et {
    clear: left;
}
#ul-fecha-vuelta {
    padding: 0;
    margin:0;
    display: inline-table;
}
#fv1 {
    display: table-cell;
    padding: 5px;
}
#fv2 {
    display: table-cell;
    padding-right: 13px;
}
#fv1, #fv2 {
    transition: opacity ease-in-out .4s;
}
.bus-img {
    position: absolute;
    z-index: 2;
    top: 43%;
    right: 19%;
    transform: translateY(-50%);
}

/* PROCESS */
.steps-module {
    width: 100%;
    height: 3px;
    background: #fff;
    position: relative;
    margin: 30px 0;
}

.steps-module div.on {
    background: #fff;
    color: #3d7cc9;
}
.steps-module div.done {
    background: #f2d131;
}
.steps-module div {
    border-radius: 50%;
    height: 50px;
    width: 50px;
    border: 3px solid #fff;
    background: #3d7cc9;
    top: -22px;
    font-size: 1.5em;
    font-weight: 800;
    padding: 8px;
}
.steps-module div:nth-child(1) {
    position: absolute;
    left: 0;
}
.steps-module div:nth-child(2) {
    position: absolute;
    left: 33%;
}
.steps-module div:nth-child(3) {
    position: absolute;
    right: 33%;
}
.steps-module div:nth-child(4) {
    position: absolute;
    right: 0;
}
.mod-resumen {
    text-align: center;
    font-size: 1.2em;
    margin: 20px 0 30px;
}
.mod-resumen span {
    margin-right: -1em;
    margin-left: 0.2em;
}

.mod-resumen i {
    margin-left: 20px;
    margin-right: 5px;
    color: #f2d131;
}
.mod-resumen.vertical {
    text-align: left;
}
.mod-resumen.vertical i{
    margin-left: 0.2em;
    margin-right: 0.8em;
    color: #3d7cc9;
}
.table>tbody>tr>td, .table>tbody>tr>th, .table>tfoot>tr>td, .table>tfoot>tr>th, .table>thead>tr>td, .table>thead>tr>th {
    padding: 10px 8px;
    border-top: 1px solid #ddd;
}
.table>caption+thead>tr:first-child>td, .table>caption+thead>tr:first-child>th, .table>colgroup+thead>tr:first-child>td, .table>colgroup+thead>tr:first-child>th, .table>thead:first-child>tr:first-child>td, .table>thead:first-child>tr:first-child>th {
    text-transform: uppercase;
}
.table-striped>tbody>tr:hover {
    background: #efefef !important;
}

.table-striped-horarios>tbody>tr:nth-of-type(odd) {
    background-color: #f9f9f9;
}

.table-striped span {
    font-weight: bold;
    color: #3d7cc9;
    text-transform: uppercase;
}
.table-striped-horarios span {
    font-weight: bold;
    color: #3d7cc9;
}
.table-striped {
    margin-bottom: 4em; 
}
.btn-mod {
    text-align: right;
}
.mod-content-sm {
    background: #fff;
    border-radius: 2em;
    padding: 2em;
}
.mod-aprobado .op-num {
    font-style: italic;
    color: #888;
    text-align: right;
}

/*TIMER */
#timer {
    background-color: #F2D131; 
    text-align: center;
    padding: 0.6em;
    position: sticky;
    width: 106%;
    left: 0;
    top: 25em;
    height: 3em;
    margin-left: -2.5em;
}



/*MODAL*/
#temporizadorPaso3modal {
    border-style: solid;
    border-color: #F2d131;
    border-width: 1px;
    margin: 2.3em 0 1.5em 0;
    display: block;
    padding: 1em 2em;
    border-radius: 1em;
    text-align: center;
}
.modal-datos {
    color:#282f33 ;
}
#total-pago {
    color:#282f33;
    font-size: 1.3em;
}

/* BUS MODULE */
.bus-module table {
    border-collapse: separate;
    border-spacing: 5px 10px;
    margin: auto;
}

.bus-module table td {
    height: 40px;
    width: 50px;
    text-align: center;
    margin-bottom: 5px;
}
.ascenso-bus .bus-module {
    padding: 20px 10px;
    background-color: #f9f9f9;
    border-radius: 10px;
    margin-bottom: 2em;
}
.bus-module .conductor {
    background: #ccc;
    padding: 20px;
    border-radius: 10px 10px 0 0;
    margin: -20px -10px 20px;
    height: 54px;
    text-align: center;
    text-transform: uppercase;
    font-weight: 800;
}
.bus-module table td.bus-wc {
    background: #888;
    border-radius: 10px;
    color: #fff;
}
.bus-module table td label {
    background: transparent;
    border:2px solid #3d7cc9;
    color: #3d7cc9;
    border-radius: 10px;
    padding: 10px 0;
    cursor: pointer;
    width: 39px;
    height: 40px;
    margin-bottom: 0;
}
.bus-module table td input[type="radio"]:checked+label {
    background: #f2d131;
}
.bus-module table td input[type="radio"]:disabled+label {
    background: #888;
    color: #ccc;
    border-color:#999 ;
}
.bus-module table input[type=radio] {
    display: none;
}
.pasajeros-form div.select-wrapper {
    padding: 12px 20px;
    margin-bottom: 0;
}



/* AGENCIAS */
.mod-agencias {
    margin-top: 2em;
}
.mod-agencias .nav-tabs {
    text-align: center;
}
.mod-agencias .nav-tabs>li {
    float: none;
    display: inline-table;
    text-transform: uppercase;
    color: #282f33;
}
.nav-tabs>li.active>a, .nav-tabs>li.active>a:focus, .nav-tabs>li.active>a:hover {
   background: #3d7cc9;
   color: #fff; 
}
.mod-agencias .tab-content {
    padding-top: 3em;
}
.mod-agencias ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.mod-agencias i {
    margin-right: 1em;
    color: #3d7cc9;
}
.mod-agencias .btn-mod {
    margin-top: 1em;
}
.mod-agencias .btn-mod i {
    color: #fff;
}
.agencias-row {
    overflow: hidden;
    margin-bottom: 2em;
    border-bottom: solid 1px #ccc;
    padding-bottom: 1em;
}
.agencias-row ul li {
    margin-bottom: 0.5em;
}



/*TARIFAS*/
.tarifa-table thead {
    background:#3d7cc9 ;
    color: #fff;
}



/* SMALL DESKTOP */
/* Medium devices (desktops, 1200) */
@media (max-width: 1441px) { 
body.le {
    font-size: 11px;
}
body.le section.main::after {
    width: 100%;
    bottom: 0;
    height: 36%;
}
.container {
    width: 100%;
}

.row-group {
    margin-bottom: 1.2em;
}
.bus-img {
    top: 52%;
    right: 3%;
    width: 33%;
}

.btn-mod {
    margin-top: 2em;
}
.navbar-default .navbar-toggle .icon-bar {
    background-color:#3d7cc9 ;
}

div.select-wrapper select.form-control {
    height: 2.1em;
}
div.select-wrapper {
    background-size: 17px 19px;
}
.form-wrapper {
    padding: 5px 20px;
}
#timer {
    top: 29em;
}

}


/*IPHONE 5 PORT*/
@media (max-width: 767px) and (orientation : portrait) {
body.le {
    font-size: 10px;
}
body.le section.main {
    height: auto;
    position: relative;
    padding-bottom: 33em;
}
.navbar-default {
    border-color: #3d7cc9;
}
.steps-module {
    margin: 3em 0 4em 0;
}
.steps-module div:nth-child(2) {
    left: 30%;
}
.steps-module div:nth-child(3) {
    right: 30%;
}
td .btn {
    padding: 1em 2em;
    font-size: 1.2em;
}
.mod-resumen.vertical {
    float: left;
    background: white;
    padding: 2em 1em;
    border-radius: 1em;
    margin-top: 0em;
}
.resumen-origen, .resumen-destino {
    font-weight: 700;
    font-size: 1.3em;
    margin-bottom: 1em;
}
.btn-mod {
    margin-top: 1em;
}
.search-module {
    min-width: inherit;
    padding: 2em;
    position: initial;
    width: 100%;
    transform: none;
    margin-top: 1em;
}
.bus-img {
    position: absolute;
    z-index: 2;
    bottom: 17%;
    right: 19%;
    width: 67%;
    top: initial;
    transform:none; 
}
body.le section.main::after {
        height: 20%;
    }

#timer {
    top: 31em;
}
#ul-fecha-vuelta {
    padding: 0 0 0 0.2em;
    margin-top: 1em;
    transition: all easy-in-out .4s;
}
#fv1 {
    display: table-cell;
    padding: 5px;
}
#fv2 {
    display: table-cell;
    padding-right: 13px;
}
}

.tableFS{
    font-size: 14px;
}
@media (max-width: 767px) and (orientation : portrait) {
    .tableFS{
        font-size: 12px;
    }
}


/* icono con enlace a pdf en horarios LE y 713 */
.divConEnlace {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
}

.imgEnlacenlacePdfIcon{
    padding-left: 15px;
}

/* scroll horizontal en tablas de horarios */
.scrollTable{
    overflow-x: scroll;
}

/* BANNERS HOME */
@media (max-width: 767px) and (orientation : portrait) {
    .bannerMovil {
        padding-top: 25px;
    }
}

/* FORM TRABAJA */
.contPostula {
    border: 1px solid #3d7cc9;
    padding: 20px;
    border-radius: 25px;        /* Borde redondeado */
    margin-bottom: 15px;
}

.textoPostula {
  margin-bottom: 20px;
  text-transform: uppercase;
  font-size: 1.1em;
  color: #3d7cc9; /* Texto azul */
}

.checkboxesPostula {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 10px;
}

.checkboxesPostula label {
  display: flex;
  align-items: center;
  text-transform: none;
  font-weight: 550;
}

.checkboxesPostula input[type="checkbox"]{
    margin-top: 0px;
    margin-right: 10px;
}

.textAreaTrab{
    width: 100%;
    height: 80px;
    box-sizing: border-box; /* Asegura que el padding no exceda el ancho */
    padding: 5px;
    font-size: 1.1em;
    background: none;
    border: none;
    outline: none;
    color: #3d7cc9;
}

.contTarbajoTotal{
    padding-left: 150px;
    padding-right: 150px;
}
.contCur{
    border: 1px solid #3d7cc9;
    padding: 20px;
    border-radius: 25px;
}

.rowCentrada{
    display: flex;
    justify-content: center;
}
.selPos{
    display: table;
}
.btnPos{
    margin-right: 17%;
}
.contCap{
    margin-left: 17%;
}
.textMin{
    text-transform: none;
}

@media (max-width: 767px) and (orientation : portrait) {
    .contTarbajoTotal {
        padding-left: 25px;
        padding-right: 25px;
    }
    .rowCentrada{
        display: block;
    }
    .selPos{
        display: block;
    }
    .btnPos{
        margin-right: 0;
        text-align: center;
    }
    .contCap{
        text-align: center;
    }
    
}

/* OFERTAS LABORALES */
.contOfertas{
    padding-right: 50px;
    padding-left: 50px;
}
.divOferta{
    border-bottom: 3px solid black;
    padding-top: 20px;
}
.encabezado{
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 10%;
    padding-bottom: 30px;
}
.hEcabezado{
    color: #3d7cc9;
}
.hOferta{
    font-size: larger;
}
.pOferta{
    padding-bottom: 15px;
    padding-top: 15px;
}
.btnPostul{
    font-size: 1em;
}

/* MODALES DIALOGS */
.mdialog {
    border: none;
    border-radius: 15px;
    padding: 14px;
    width: 400px;
    box-shadow: 0 4px 8px rgba(0,0,0,0.2);
    font-family: sans-serif;
}

.modal-header,
.modal-footer {
    padding: 1em;
/*    background-color: #f2f2f2;*/
}

.modal-header {
  border-bottom: 0px solid #ccc;
  font-weight: bold;
  color: #3d7cc9;
}

.modal-body {
  padding: 1em;
}

.modal-footer {
  display: flex;
  justify-content: flex-end;
  gap: 0.5em;
  border-top: 0px solid #ccc;
}

.p-mdialog{
    margin-bottom: 0px;
}

.btn-mdialog {
  padding: 0.5em 1em;
  border: none;
  border-radius: 3px;
  cursor: pointer;
}

.btn-cancelar {
  background-color: #3d7cc9;
  color: white;
}

.btn-aceptar {
  background-color: #3d7cc9;
  color: white;
}

/* Fondo oscuro detrás del modal */
.backdrop {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.5);
  display: none;
  z-index: 100;
}

/* *************** */

/* CONTENEDOR INPUT TELEFONO */
.contTelInter {
    background: #fff;
    box-shadow:none;
    border:solid 1px #3d7cc9;
    color: #3d7cc9;
    cursor: pointer;
    border-radius: 50vh;
    text-transform: uppercase;
    font-weight: 500;
    font-size: 1.1em;
    background: transparent;
}

.bordeTelsInter {
    border: none;
    height: 3em !important;
    padding-left: 100px !important;
}

@media (max-width: 767px) and (orientation: portrait) {
    #wapp_p1, #wapp_p2{
        padding-left: 90px !important;
    }
    
    #selViasWrap, #selTipDoc_wrapp {
        margin-bottom: 22px;
    }
}
/* Cambiar tamaño de la bandera */
.iti__flag {
/*  height: 20px !important;
  width: 20px !important;*/
}

.iti__selected-flag {
    background-color: #ff000000 !important;
}

.iti__flag-container{
    padding-left: 15px !important;
}

.iti {
    width: -webkit-fill-available;
}

/* MODALES */
/* Capa de oscurecimiento personalizada */ 
.overlay {
  display: none;
  position: fixed;
  top: 0; left: 0;
  width: 100vw;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.5);  /*Cambia la opacidad aquí*/ 
  z-index: 999;  /*Detrás del dialog*/ 
}
.popUPdialog {
    border: none;
    border-radius: 30px;
    padding: 0;
    width: 400px;
    box-shadow: 0 4px 8px rgba(0,0,0,0.2);
    font-family: sans-serif;
    outline: none;
}

/* ajustar imagen al dialog */
.modal-body-popup {
  padding: 0px;
}
/* ************************ */

