@import url(https://fonts.googleapis.com/css?family=Lato:400,400italic,700,700italic);
.thumnail-item:hover figure:before,
.thumnail-item:hover figure:after,
.thumnail-item.active figure:before,
.thumnail-item.active figure:after {
    opacity: 1;
    visibility: visible;
}

.chart .chart-bar .ul-bar li.active .date-day .date,
.chart .chart-bar .ul-bar li.active .date-day .short-day {
    color: #ff5757;
}
.daterangepicker.ltr.show-calendar.opensleft {
    border: 4px solid #c40008;
    border-radius: 15px;
}


.ui-menu-item.ui-state-focus{
background-color: 1px solid rgba(196, 0, 8, 0.2);
}
/* Estilos generales del autocompletado */
.ui-autocomplete.ui-front.ui-menu.ui-widget.ui-widget-content {
    color: #c40008; /* rojo */
    border: 1px solid rgba(196, 0, 8, 0.2);
}

/* Cada ítem del autocompletado */
.ui-autocomplete.ui-front.ui-menu.ui-widget.ui-widget-content .ui-menu-item {
    padding: 8px 12px;
    cursor: pointer;
}

/* Texto del ítem */
.ui-autocomplete.ui-front.ui-menu.ui-widget.ui-widget-content .ui-menu-item-wrapper {
    color: #c40008; /* rojo */
}

/* Hover / item activo */
.ui-autocomplete.ui-front.ui-menu.ui-widget.ui-widget-content 
.ui-menu-item-wrapper.ui-state-active {
    background-color: rgba(196, 0, 8, 0.08); /* rojo MUY clarito */
    border: none;
    color: #c40008;
}

.form-check{
	
}
/* ==========================
   BUSCADOR VUELOS
========================== */
.new-busqueda-form {
  width: 100%;
}

.new-busqueda-vuelos {
  padding-top: 10px;
}
.col-md-2.col-xs-12.SpaceB.pasajeros-right {
	margin-left: auto;
}

/* GRID PRINCIPAL */
.new-busqueda-journeys {
  padding-right: 20px;
}

/* LINKS */
.new-busqueda-link {
  font-weight: 200;
  color: #000000;
  margin-right: 16px;
  cursor: pointer;
  text-decoration: none;
}
.new-busqueda-link.orange:focus{
color: #c40008;
}
.new-busqueda-link i {
  margin-right: 6px;
}
a#multiTrayecto:focus{
color: #5191FA;
}

.new-busqueda-link.orange {
  color: #000000;
}

.new-busqueda-link.danger {
  color: #c40008;
}

/* OPCIONES AVANZADAS */
.new-busqueda-advanced hr {
  margin: 16px 0;
}

/* INPUTS */
.new-busqueda-input {
  height: 48px;
  border-radius: 8px;
  font-size: 14px;
}

/* CHECKBOX */
.new-busqueda-checkbox {
  font-size: 14px;
  display: flex;
  align-items: center;
  gap: 8px;
}
.label.form-check-label {
	cursor: pointer;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	min-height: 30px;
	padding: 6px 16px;
	margin: 0;
	border-radius: 8px;
	font-size: 14px;
	line-height: 1.5em;
	text-align: center;
	-webkit-transition: background-color 0.2s, color 0.2s;
	transition: background-color 0.2s, color 0.2s;
	border: 1px solid #e0e0e0;
}
.Solo_ida {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}

.Solo_ida > div {
    display: flex;
    align-items: center;
}

/* Empuja Adultos/Niños a la derecha */
#FlightsInfo {
    margin-left: auto;
    display: flex;
    align-items: center;
    gap: 6px;
    font-weight: 500;
	border-color: #5191FA;
}
.person-new-children{/* width: 100%; *//* height: 50;/* padding: 15px; */ 15px;border: 1px solid #e0e0e0 !important;border-radius: 6px !important;font-size: 14px;/* font-family: Helvetica, Arial, sans-serif; *//* color: #333 !important; *//* -webkit-transition: border-color 0.1s; *//* transition: border-color 0.1s; *//* background-color: #fff !important; *//* background-size: 24px auto; */}
.person-new-children:focus {
   border-color: #c40008 !important;
  outline: none !important;
  box-shadow: 
    0 0 0 2px #dceaff,
    0 0 8px #dceaff;
}
.person-new-children:hover{
	border-color: #c40008 !important;
}

/* BOTÓN BUSCAR */
.new-busqueda-btn {
  background-color: #c40008;
  border-radius: 10px;
  height: 52px;
  font-size: 16px;
  font-weight: 600;
  border: none;
  color: #fff;
  width: 100%;
}
.form-control-new-busqueda{
    width: 100%;
    height: 50px;
    padding: 15px;
    border: 1px solid #e0e0e0 !important;
    border-radius: 6px !important;
    font-size: 14px;
    font-family: Helvetica, Arial, sans-serif;
    color: #333 !important;
    -webkit-transition: border-color 0.1s;
    transition: border-color 0.1s;
    background-color: #fff !important;
    background-size: 24px auto;	
	
}
.form-control-new-busqueda:focus{
	border-color: #c40008
}

.new-busqueda-btn:hover {
  background-color: #00026d;
  color: #fff;
}
.glyphicon-map-marke{

}

/* MOBILE */
@media (max-width: 768px) {
  .new-busqueda-actions {
    text-align: center;
  }

  .new-busqueda-actions .text-end {
    text-align: center !important;
    margin-top: 10px;
  }
}
.new-busqueda-options{
	position: relative;
	margin: 0 40px 32px;
}
@media (max-width: 992px) {
    .new-busqueda-options {
        margin: 0 24px 28px;
    }
}

/* Móvil */
@media (max-width: 576px) {
    .new-busqueda-options {
        margin: 0 12px 20px;
    }
}
.search-forms #buscadorVuelos .trayectoInputs>div {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 12px
}
.new-busqueda-container{
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 12px;
}


/* Tablets */
@media (max-width: 991px) {
  .new-busqueda-container {
    gap: 10px;
  }
}

/* Móviles */
@media (max-width: 576px) {
  .new-busqueda-container {
    flex-direction: column;     /* 👈 se apilan */
    gap: 8px;
  }
}

.new-busqueda-calendar{
display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 12px;
	}
	.col-md-3.col-xs-12.margin20 {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    -ms-flex-preferred-size: 50%;
    flex-basis: 50%;
}


/* ==========================
   CONTENEDOR GENERAL
========================== */
.new-busqueda-wrapper {
  background: #fff;
  border: 4px solid #c40008;
  border-radius: 16px;
  box-shadow: 0 10px 25px rgba(255, 174, 177, 1);
  padding: 20px;
  margin: 20px 0;
}

.form-control-new{
width: 100%;
	height: 50px;
	padding: 15px;
	border: 1px solid #e0e0e0 !important;
	border-radius: 6px !important;
	font-size: 14px;
	font-family: Helvetica, Arial, sans-serif;
	color: #333 !important;
	-webkit-transition: border-color 0.1s;
	transition: border-color 0.1s;
	background-color: #fff ;
	background-size: 24px auto;
}
.form-control-new:focus {
   border-color: #c40008 !important;
  outline: none !important;
  box-shadow: 
    0 0 0 2px #ffaeb1,
    0 0 8px #ffaeb1;
}
.form-control-new:hover{
	border-color: #c40008 !important;
}
.input#chkOWRT {
	display: none;
}
.input#selBagage {
	display: none;
}
.input#VuelosDirectos {
	display: none;
}

/* ==========================
   PANEL
========================== */
.new-busqueda-panel {
  padding: 0;
}
.form-check-input{
display: none;
}
input#selBagage {
    display: none;
}
input#VuelosDirectos {
    display: none;
}
.form-check-label{
    cursor: pointer;
    display: flex;
    align-items: center;
    min-height: 34px;
    padding: 6px 16px;
    margin: 0;
    border-radius: 8px;
    font-size: 14px;
    line-height: 1.5em;
    text-align: center;

    border: 1px solid #e0e0e0;
    background-color: #fff;
    color: #444;

    transition: 
        background-color 0.2s ease,
        color 0.2s ease,
        border-color 0.2s ease;
}
/* ===============================
   POPOVER GENERAL (FLOTANTE)
================================= */
.switch-cookiesCris {
  position: relative;
  display: inline-flex;
  align-items: center;
  cursor: pointer;
  font-size: 16px;
  user-select: none;
  gap: 10px;
}
input#chkOWRT {
    display: none;
}
.switch-cookiesCris .slider {
  position: relative;
  width: 50px;
  height: 26px;
  background-color: #797373;
  border-radius: 26px;
  transition: background-color 0.3s;
}

.switch-cookiesCris .slider::before {
  content: "";
  position: absolute;
  width: 24px;
  height: 24px;
  left: 1px;
  top: 1px;
  background-color: white;
  border-radius: 50%;
  transition: transform 0.3s;
}

.switch-cookiesCris input:checked + .slider {
  background-color: #c40008;
}

.switch-cookiesCris input:checked + .slider::before {
  transform: translateX(24px);
}

/* El boton de Mostrar_Detalles */
.btn-link {
  background: none;
  border: none;
  color: #0050ff;
  cursor: pointer;
  font-size: 15px;
  text-decoration: underline;
}
.row.g-3 {
    margin-bottom: 10px;
}
.popover {
    position: absolute !important;
    top: 70px;
    /* right: 0; */
    transform: none !important;
    width: 260px;
    max-width: 260px;
    z-index: 2000;
    background-color: #ffffff;
    border: 3px solid #c40008;
    border-radius: 12px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.12);
    padding: 12px;
    font-family: var(--bs-font-sans-serif);
    font-size: 14px;
}

.input-icon {
    position: relative;
    width: 100%;
}

.input-icon input {
    padding-left: 45px; 
    
}
.busqueda-wrapper {
  
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.input-icon .icon-calendar {
    position: absolute;
    left: 14px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 18px;
    color: #7a7a7a;
    pointer-events: none;
}
.input-icon-seg .icon-calendar-seg {
    position: absolute;
    left: 14px;
    top: 70%;
    transform: translateY(-50%);
    font-size: 18px;
    color: #7a7a7a;
    pointer-events: none;
}
.icon-location {
    position: absolute;
    left: 14px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 24px;
    color: #c40008;
    pointer-events: none;
}
.icon-location i {
    color: #c40008;
}
.popover .counter-hotel {
    display: flex;
    align-items: center;
    gap: 15px;
}
.popover-hotel {
    position: absolute !important;
    top: 210px;
    transform: none !important;
    width: 260px;
    max-width: 260px;
    right: 850px;
    z-index: 2000;
    background-color: #ffffff;
    border: 3px solid #c40008;
    border-radius: 12px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.12);
    padding: 12px;
    font-family: var(--bs-font-sans-serif);
    font-size: 14px;
}
@media (max-width: 768px) {
    .popover-hotel {
      /* position: fixed !important; */
      margin-top: 350px;
      /* bottom: 0; */
      /* left: 50px; */
      /* right: 0; */
      width: 1000%;
      max-width: 100%;
      border-radius: 12px;
      transform: none !important;
      /* padding-bottom: env(safe-area-inset-bottom); */
    }
}
.ifPassAddRoom{
width: 100%;
    margin-top: 12px;
    padding: 10px;
    border-radius: 8px;
    border: none;
    background-color: #c40008;
    color: #ffffff;
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
    transition: background-color 0.2s ease;
}
label.ifPassAddRoom.IfPassRoomCtrl.label-NewHab-Passenger.mb-0 {
	    justify-content: center;
    display: grid;
}
.ifPassAddRoom:hover{ 
	
	background-color: #00026d;
	}
@media (max-width: 768px) {
    .popover {
      /* position: fixed !important; */
      margin-top: 200px;
      /* bottom: 0; */
      left: 50px;
      right: 0;
      /* width: 1000%; */
      /* max-width: 100%; */
      border-radius: 12px;
      transform: none !important;
      /* padding-bottom: env(safe-area-inset-bottom); */
    }
}
.col-12.d-flex.justify-content-between.align-items-center.contMarginPassenger {
    margin-top: -30px;
}

/* Quitar flecha del popover */
.popover .popover-arrow {
    display: none;
}

/* ===============================
   CUERPO DEL POPOVER
================================= */
.popover-body {
    padding: 8px;
}

/* Fila Adultos / Niños */
.popover .row-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 14px;
}

/* Texto Adultos / Niños */
.popover .row-item span.label {
    font-size: 14px;
    color: #222;
}
.counter .new-input-group-busqueda {
  position: relative;
  display: flex;
  flex-wrap: wrap; // For form validation feedback
  align-items: stretch;
}

/* ===============================
   CONTADOR + / -
================================= */
.popover .counter {
    display: flex;
    align-items: center;
    gap: 25px;
}

/* Número */
.popover .counter span.value {
    width: 28px;
    text-align: center;
    font-weight: 500;
    color: #222;
}

/* Botones base */
.popover button {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    border: none;
    font-size: 18px;
    cursor: pointer;

    display: flex;
    align-items: center;
    justify-content: center;

    transition: opacity 0.2s ease;
}

/* Botón menos */
.popover button.minus {
    background-color: #f1e4e8;
    color: #c40008;
}

/* Botón más */
.popover button.plus {
    background-color: #efe9ff;
    color: #6b4eff;
}

.popover button:hover {
    
}
.IfPassRoomAges {
    margin-bottom: 30px;
}
/* ===============================
   BOTÓN APLICAR
================================= */
.popover .btn-aplicar {
    width: 100%;
    margin-top: 12px;
    padding: 10px;

    border-radius: 8px;
    border: none;

    background-color:#c40008;
    color: #ffffff;

    font-size: 14px;
    font-weight: 500;
    cursor: pointer;

    transition: background-color 0.2s ease;
}
.label_edades-assitencia {
    width: 100%;
    height: 50px;
    padding: 15px;
    border: 1px solid #e0e0e0 !important;
    border-radius: 6px !important;
    font-size: 14px;
    font-family: Helvetica, Arial, sans-serif;
    color: #333 !important;
    -webkit-transition: border-color 0.1s;
    transition: border-color 0.1s;
    background-color: #fff !important;
    background-size: 24px auto;
}
.label_edades-assitencia2 {
    width: 100%;
    height: 50px;
    padding: 15px;
    border: 1px solid #e0e0e0 !important;
    border-radius: 6px !important;
    font-size: 14px;
    font-family: Helvetica, Arial, sans-serif;
    color: #333 !important;
    -webkit-transition: border-color 0.1s;
    transition: border-color 0.1s;
    background-color: #fff !important;
    background-size: 24px auto;
    display: none;
}

.popover .btn-aplicar:hover {
    background-color: #00026d;
}
i.fa.fa-user {
 color: rgba(0, 0, 0, 0) !important;
    width: 24px;
    height: 24px;
    background-position: center center;
	background-image: url("https://publicacion.ideasfractal.com/SearchBox/IdeasSearchBox/Images/personabp.svg") !important
}
.icon-person{
    color: rgba(0, 0, 0, 0) !important;
    width: 24px;
    height: 24px;
    background-position: center center;

}
.icon-person{
 background-image: url("https://publicacion.ideasfractal.com/SearchBox/IdeasSearchBox/Images/personabp.svg") !important
}
.glyphicon-map-marker{
	background-image: url("https://publicacion.ideasfractal.com/SearchBox/IdeasSearchBox/Images/location.svg") !important
}
.form-check {
    display: block;
    min-height: 1.5rem;
    padding-left: 0;
    margin-bottom: 0.125rem;
}
.form-check-label:hover {
    border: 2px solid #5191FA;
    background-color: #dceaff;
    color: #5191FA;
}
.form-check-input:checked + .form-check-label {
    border: 2px solid #5191FA;
    background-color: #dceaff;
    color: #5191FA;
    font-weight: 500;
}
.form-check-input:checked + .form-check-label::before {
    content: "✕";
    margin-right: 8px;
    font-size: 22px;
    color: #457428;
}

.Solo_ida #divOwRt .container>div input:checked+label {
	color: #c40008 !important;
	background-color: #ffe4e5;
	border: 2px solid #c40008;
	padding-left: 36px;
	background-size: 18px 18px;
	background-position: 12px center
}
/* ==========================
   TABS SUPERIORES
========================== */
.new-busqueda-tabs {
  display: flex;
  gap: 40px;
  list-style: none;
  justify-content: center;
  padding-left: 0;
  margin-bottom: 18px;
  border-bottom: 1px solid #e0e0e0;
}
@media (max-width: 480px) {
  .new-busqueda-tabs {
    justify-content: space-between;
  }

  .new-busqueda-tabs li {
    flex: 1;                       
    text-align: center;
  }

  .new-busqueda-tabs li a {
    display: flex;
    flex-direction: column;        
    align-items: center;
    gap: 4px;
    font-size: 11px;               
    white-space: normal;           
  }

  .new-busqueda-tabs li a i,
  .new-busqueda-tabs li a svg {
    font-size: 18px;               
  }
}

.new-busqueda-tab-item {
  position: relative;
}

.new-busqueda-tab-link {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 0;
  font-weight: 600;
  text-decoration: none;
  color: #000000;
  background: none;
  border: none;
}

.new-busqueda-tab-link img {
  width: 26px;
  height: 26px;
}

.new-busqueda-tab-link span {
  font-size: 15px;
}

/* TAB ACTIVO */
.new-busqueda-tab-link.active {
  color: #c40008;
}

.new-busqueda-tab-link.active::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -1px;
  width: 100%;
  height: 3px;
  background-color: #c40008;
  border-radius: 2px;
}

/* ==========================
   CONTENIDO
========================== */
.new-busqueda-content {
  padding-top: 10px;
}

.new-busqueda-content .tab-pane {
  padding: 0;
}


.Solo_ida {
    display: flex;
    align-items: stretch;
    padding: 0;
    width: auto;
    margin-bottom: 16px;
    gap: 8px;
}

.opciones-new{
	color: #c40008 !important;
    background-color: #ffe4e5;
    border: 2px solid #c40008;
	padding-left: 36px;
	background-size: 18px 18px;
	background-position: 12px center
}
.vuelo-hotel-new{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	width: auto;
	margin: 30px 10px 30px;
	border-bottom: 1px solid #e0e0e0;
	overflow: visible
}
div#ui-datepicker-div {
    border: 4px solid #c40008;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 1);
    border-radius: 16px;
	margin-top: 10px;
}
span.IfPassCantInfo {
    display: flex;
    align-items: center;      
    justify-content: center;  
    text-align: center;       
    padding: 10px 20px 15px;
}
