:root {
  --bs-blue: #0d6efd;
  --bs-indigo: #6610f2;
  --bs-purple: #6f42c1;
  --bs-pink: #d63384;
  --bs-red: #dc3545;
  --bs-orange: #fd7e14;
  --bs-yellow: #ffc107;
  --bs-green: #198754;
  --bs-teal: #20c997;
  --bs-cyan: #0dcaf0;
  --bs-black: #000;
  --bs-white: #fff;
  --bs-gray: #6c757d;
  --bs-gray-dark: #343a40;
  --bs-gray-100: #f8f9fa;
  --bs-gray-200: #e9ecef;
  --bs-gray-300: #dee2e6;
  --bs-gray-400: #ced4da;
  --bs-gray-500: #adb5bd;
  --bs-gray-600: #6c757d;
  --bs-gray-700: #495057;
  --bs-gray-800: #343a40;
  --bs-gray-900: #212529;
  --bs-primary: #0d6efd;
  --bs-secondary: #6c757d;
  --bs-success: #198754;
  --bs-info: #0dcaf0;
  --bs-warning: #ffc107;
  --bs-danger: #dc3545;
  --bs-light: #f8f9fa;
  --bs-dark: #212529;
  --bs-primary-rgb: 13, 110, 253;
  --bs-secondary-rgb: 108, 117, 125;
  --bs-success-rgb: 25, 135, 84;
  --bs-info-rgb: 13, 202, 240;
  --bs-warning-rgb: 255, 193, 7;
  --bs-danger-rgb: 220, 53, 69;
  --bs-light-rgb: 248, 249, 250;
  --bs-dark-rgb: 33, 37, 41;
  --bs-white-rgb: 255, 255, 255;
  --bs-black-rgb: 0, 0, 0;
  --bs-body-color-rgb: 33, 37, 41;
  --bs-body-bg-rgb: 255, 255, 255;
  --bs-font-sans-serif: font-family: "Montserrat", sans-serif;
  ;
  --bs-font-monospace: font-family: "Montserrat", sans-serif;
  --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));
  --bs-body-font-family: var(--bs-font-sans-serif);
  --bs-body-font-size: 1rem;
  --bs-body-font-weight: 400;
  --bs-body-line-height: 1.5;
  --bs-body-color: #212529;
  --bs-body-bg: #ffffff;
  --bs-border-width: 1px;
  --bs-border-style: solid;
  --bs-border-color: #dee2e6;
  --bs-border-color-translucent: rgba(0, 0, 0, 0.175);
  --bs-border-radius: 0.375rem;
  --bs-border-radius-sm: 0.25rem;
  --bs-border-radius-lg: 0.5rem;
  --bs-border-radius-xl: 1rem;
  --bs-border-radius-2xl: 2rem;
  --bs-border-radius-pill: 50rem;
  --bs-link-color: #0D3450;
  --bs-link-hover-color: #0D3450;
  --bs-code-color: #d63384;
  --bs-highlight-bg: #fff3cd;
}

* {
  font-family: "Montserrat", sans-serif !important;
}

.body1 {
  margin-top: 100px;
  background-image: url('../img/pasaportes/bg-main.png');
  background-repeat: repeat-x;
  color: #0D3450;
  font-size: 16px;
  font-weight: 500;
  line-height: 20px;
  letter-spacing: 0em;
  text-align: left;
}

.bodyConfirmar{
    color: #0D3450;
    font-size: 16px;
    font-weight: 500;
    line-height: 20px;
    letter-spacing: 0em;
    text-align: left;
}

h1 {
  font-size: 36px;
  font-weight: 600;
  line-height: 44px;
  letter-spacing: 0em;
  text-align: left;

}

.tituloPasaporteh1 {
  font-size: 36px;
  font-weight: 600;
  line-height: 44px;
  letter-spacing: 0em;
  text-align: left;
}

.tituloConfirmar {
  font-size: 32px;
  font-weight: 600;
  line-height: 39px;
  letter-spacing: 0em;
  text-align: center;
}

.tituloPasaporteh2 {
  font-size: 32px;
  font-weight: 600;
  line-height: 39px;
  letter-spacing: 0em;
  text-align: center;
}

h3 {
  font-size: 20px;
  font-weight: 600;
  line-height: 24px;
  letter-spacing: 0em;
  text-align: left;
}

.tituloPasaporteh3 {
  font-size: 20px;
  font-weight: 600;
  line-height: 24px;
  letter-spacing: 0em;
  text-align: left;
}

* {
  font-family: "Montserrat", sans-serif !important;
}

.nav-pills {
  --bs-nav-pills-border-radius: 0.375rem !important;
  --bs-nav-pills-link-active-color: #0D3450 !important;
  --bs-nav-pills-link-active-bg: #C2DDFF !important;
  --bs-nav-pills-link-hover-bg: #C2DDFF !important;
}

.nav-link2{
  color: #0D3450;
  display: block;
  padding: .5rem 1rem;
  text-decoration: none;
  background-color: none;
  border: 0;
  transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out;
  font-weight: 500;
}




.rounded-pill {
  border: 2px solid #0D3450 !important;
}

/* .btn-primary,
.btn-primary:hover {
  --bs-btn-bg: #0D3450;
  border-radius: 4px;
  padding: 16px;
  font-size: 16px;
  font-weight: 600;
  line-height: 20px;
  letter-spacing: 0em;
  text-align: center;
} */

.btn-outline-primary {
  --bs-btn-border-color: #0D3450 !important;
  --bs-btn-color: #0D3450 !important;
  --bs-btn-hover-color: #0D3450 !important;
  --bs-btn-hover-bg: #E5F2FF !important;
  --bs-btn-hover-border-color: #0D3450 !important;
  border-radius: 4px !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  line-height: 20px !important;
  letter-spacing: 0em !important;
  text-align: center !important;
}

.verRequisitos {
  --bs-btn-color: #fff;
  background-color: #0D3450 !important;
  --bs-btn-bg: #0d6efd;
  --bs-btn-border-color: #0d6efd;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #0b5ed7;
  --bs-btn-hover-border-color: #0a58ca;
  --bs-btn-focus-shadow-rgb: 49, 132, 253;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #0a58ca;
  --bs-btn-active-border-color: #0a53be;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, .125);
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: #0d6efd;
  --bs-btn-disabled-border-color: #0d6efd;
  border-radius: 4px !important;
  font-weight: 600 !important;
  text-align: center !important;
}

.verRequisitos:hover{
  background-color: #0d6efd !important;
  width: 172.06px;
  height: 46.8px;
  font-size: 17px;
  border-radius: 4px;
  font-weight: 600;
  line-height: 20px;
  text-align: center;
  padding: 10px;
}

.nav-pills .nav-link2.active{
  color:#0D3450;
  background-color: #C2DDFF ;
  font-weight: 500;
}

.bg-white {
  background-color: #ffffff !important;
}

.bg-gray {
  background-color: #F7F7F7 !important;
}

.bg-blue {
  background-color: #C2DDFF;
}

.bg-info1 {
  background-color: #e6f2ff !important;
}

.feature {
  margin: 0px;
}

.card-title {
  font-size: 20px;
  font-weight: 500;
  line-height: 24px;
  letter-spacing: 0em;
  text-align: left;
}

.pricing-card-title {
  text-align: left;
  font-size: 24px;
}

.left {
  float: left;
  text-align: left;
}

.right {
  text-align: right;
}

.card {
  border: 2px solid #C2DDFF !important;
  font-size: 20px;
  box-shadow: 0 0 0 rgba(0, 0, 0, 0) !important;
}

.border-cita {
  border-color: #3366CC !important;
  border-width: 2px !important;
}

.lead {
  font-size: 16px;
}

.display-5 {
  font-size: 36px;
}

.border1{
    border: 1px solid #3366CC !important;
    color: #0D3450;
    border-width: 2px !important;
    font-weight: 500 !important;
    font-size: 16px;

}

.redireccion_perfil {
  width: 53px;
  height: 27px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.redireccion_perfil i {
  width: 27px;
  height: 27px;
  font-size: 27px;
  color: #000;
}


/* List Interval */
.intervalSelected {
  background-color: #c2ddff !important;
}

.intervalSelected:hover {
  background-color: #c2ddff !important;
}

.intervalSelected:active {
  background-color: #c2ddff !important;
  outline: none !important;
}

.intervalSelected:focus {
  background-color: #c2ddff !important;
  outline: none !important;
}

.list-intervals .list-group-item {
  border-color: rgb(13 52 80);
}

.content-agendando,
.content-espera-sar {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.datepicker-inline {
  width: 400px !important;
}

.datepicker table {
  width: 400px !important;
  margin-top: 20px !important;
  margin-bottom: 20px !important;
}

.datepicker td,
.datepicker th {
  padding: 10px;
}

.datepicker .datepicker-switch {
  text-align: left;
}

.dow {
  border-bottom: solid #9c9c9c !important;
}

.datepicker table tr td.active.active,
.datepicker table tr td.active.disabled.active,
.datepicker table tr td.active.disabled:active,
.datepicker table tr td.active.disabled:hover.active,
.datepicker table tr td.active.disabled:hover:active,
.datepicker table tr td.active:active,
.datepicker table tr td.active:hover.active,
.datepicker table tr td.active:hover:active {
  background-color: #e6f2ff !important;
  background-image: linear-gradient(to bottom, #e6f2ff, #e6f2ff) !important;
  color: #183e58 !important;
  border: 1px solid #183e58 !important;
  border-radius: 5px !important;
}

.highlight {
  font-weight: bolder !important;
  color: #0D3450 !important;
  border: 1px solid #0D3450 !important;
}

.container-respuesta {
  align-items: center;
  display: flex;
  justify-content: center;
  flex-direction: column;
  height: calc(100vh - 200px);
}

.content-cita-agendada {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.card {
  font-size: 16px;
}

/*Step 3 Confirmación */
.bg-blue {
  background-color: #e5f2ff;
}

.container-footer {
  background-color: #f6f6f6;
}

.content-top {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}

.text-bg-blue {
  background-color: #e5f2ff;
  color: #4c4c4c;
}

.container-mensaje1 {
  border: 1px solid #ffd800;
  display: flex;
  gap: 18px;
  align-items: center;
  margin-top: 10px;
  margin-bottom: 10px;
}

.resumeApplicant {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}

.resumeAppointment-top {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}

.resumePayment-left,
.resumePayment-right {
  display: flex;
  justify-content: space-between;
}

.container-mensaje2 {
  display: flex;
  align-items: center;
  gap: 18px;
  justify-content: space-between;
  border: 2px dashed #157d24;
  margin-top: 10px;
}

.contenido-header {
  display: flex;
  justify-content: space-between;
}

.resumeAddressAppointment {
  font-size: 16px;
  line-height: initial;
  margin-bottom: 0;
}

.resumePayment {
  background-color: #f2f2f2;
}

.fs-14 {
  font-size: 14px;
}

.fs-12 {
  font-size: 12px;
}

/*Fin Step 3 Confirmación */
.bg-green1 {
  background-color: #F1FFE2 !important;
  color: #12511B !important;
}

.bg-green2 {
  background-color: #D1FAA7;
}

.bg-green3 {
  background-color: #FDFFF8;
}

.bg-egg {
  background-color: #FFFBDB;
}

.hr-green {
  border: 2px solid #157d24 !important;
  opacity: 1 !important;
}

.border-green1 {
  border: 2px dashed #157d24 !important;
}

.border-blue {
  border: 2px dashed #4876d1 !important;
}

.cupos_number {
  font-size: 25px;
  font-weight: 700;
  line-height: 30px;
  letter-spacing: 0em;
  color: #396F95;
}

.cupos_number2 {
  font-size: 25px;
  font-weight: 700;
  line-height: 30px;
  letter-spacing: 0em;
  color: #47AC6A;
}

.list-group-item {
  border: 0 !important;
}

.input-group-text {
  border: 2px solid #0dcaf0 !important;
}

.whatsapp-button {
  position: fixed;
  bottom: 20px;
  right: 20px;
  background-color: #D1FAA7;
  color: white;
  border-radius: 50%;
  width: 80px;
  height: 80px;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3);
  z-index: 1000;
  transition: background-color 0.3s;
}

.whatsapp-button:hover {
  background-color: #F1FFE2;
}

.whatsapp-button img {
  font-size: 50px;
}
/* Media queries para pantallas grandes */
@media (min-width: 768px) {
  .menu-burguer {
    flex-direction: row !important;
  }

  /* Ocultar redireccion_perfil dentro del ul */
  .menu-burguer .redireccion_perfil {
    display: none !important;
  }

  .margin-top-body {
    margin-top: 100px;
  }
}

@media (min-width: 770px) {
  .margin-top-body {
    margin-top: 170px;
  }
}

@media (min-width: 1225px) {
  .margin-top-body {
    margin-top: 100px;
  }
}

/* Media queries para pantallas pequeñas */
@media (max-width: 767px) {
  .menu-burguer {
    flex-direction: column !important;
  }

  .boton-menu-burguer {
    align-items: center;
    margin-top: 25px;
    left:530px;
  }

  /* Ocultar redireccion_perfil fuera del ul */
  .navbar-collapse + div .redireccion_perfil {
    display: none !important;
  }

  .margin-top-body {
    margin-top: 120px;
  }
}

@media (max-width:600px){
  .boton-menu-burguer {
    align-items: center;
    margin-top: 25px;
    left:400px;
  }

  @media(max-width: 450px){
    .boton-menu-burguer {
      align-items: center;
      margin-top: 25px;
      left:320px;
    }
  }
}


/* para calendario de step 2 */


.calendar-container {
  max-width: 405px;
  max-height: 350px;
}

.calendar-container h3 {
  font-size: 16px;
  font-weight: 600;
}

.calendar-navigation {
  display: flex;
  justify-content: space-between;
  margin-bottom: 10px;
}

.calendar-navigation button {
  padding: 5px 10px;
  font-size: 14px;
  cursor: pointer;
  background-color: #F28705;
  color: white;
  border: none;
  border-radius: 4px;
}

.calendar-navigation button:disabled {
  background-color: #ccc;
  cursor: not-allowed;
}

.calendar-grid {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
}

.day {
  padding: 10px;
  text-align: center;
  font-weight: 500;
  color: #616161;
}

.day.empty {
  color: #e0e0e0;
}

.day.highlighted {
  background-color: #0d34501c;
  color: #F28705;
  border: 2px solid #F28705;
  border-radius: 4px;
  cursor: pointer;
  font-weight: bolder;
}

/* Borde inferior para los encabezados de días */
.calendar-grid .day:nth-child(-n+7) {
  border-bottom: 2px solid #C2C2C2;
}

.linea-divisora{
  height: 350px;
  width: 2px;
  background-color: #c2c2c2;
}

.panel-pasos-agendar,
.panel-pasos-crear-ventanilla,
.panel-pasos-crear-funcionario,
.panel-pasos-asignar,
.panel-crear-sede,
.panel-crear-perfil,
.panel-crear-sala,
.panel-crear-categoria {
    background-color: #FFFFFF;
    padding: 16px;
}

.container-fecha-hora {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.hora {
  display: flex;
}

.am p,
.pm p {
  font-family: 'Poppins';
  font-weight: 600;
  font-size: 16px;
}

.horario-am {
  margin: 0 10px 5px 0;
}

.horario-pm {
  margin: 0 0 5px 0;
}

.horario-am,
.horario-pm {
  width: 192px;
  height: 53px;
  padding: 16px;
  border-radius: 2px;
  border: 2px solid #EFEEEE;
  background-color: #FFFFFF;
  display: flex;
  justify-content: space-between;
  cursor: pointer;
}

.horario-am.activo h3,
.horario-pm.activo h3 {
  font-family: 'Poppins';
  font-weight: 600;
  font-size: 14px;
  color: #052841;
}

.horario-am h3,
.horario-pm h3 {
  font-family: 'Poppins';
  font-weight: 600;
  font-size: 14px;
  color: #303030;
}

.horario-am.activo p,
.horario-pm.activo p {
  font-family: 'Poppins';
  font-weight: 400;
  font-size: 14px;
  color: #052841;
  margin: -2px 0 0 0;
}

.horario-am p,
.horario-pm p {
  font-family: 'Poppins';
  font-weight: 400;
  font-size: 14px;
  color: #303030;
  margin: -2px 0 0 0;
}

.horario-am.activo {
  width: 192px;
  height: 53px;
  padding: 16px;
  border-radius: 2px;
  border: 2px solid #0D3450;
  background-color: #0d34501c;
}

.hora a {
  text-decoration: none;
}

.btn-enabledSteps {
  background-color: #0D3450;
  color: #fff;
  cursor: pointer;
  border-radius: 4px;
  font-size: 16px;
  font-weight: 600;
  line-height: 20px;
  letter-spacing: 0em;
  text-align: center;
}

.btn-disabledSteps {
  background-color: #6c757d;
  border-color: #6c757d;
  color: #ffffff;
  cursor: not-allowed;
  pointer-events: none;
  opacity: 0.6;
  border-radius: 4px;
  font-size: 16px;
  line-height: 20px;
  letter-spacing: 0em;
  text-align: center;
}

.hora{
  overflow-y: scroll;
  max-height: 321px;
}

#fullScreenLoader {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 9999;
  display: none;
  justify-content: center;
  align-items: center;
}

#fullScreenLoader .spinner-border {
  width: 3rem;
  height: 3rem;
  color: #ffffff;
}

.volverActivo{
  border: 1px solid #0D3450 !important;
  font-weight: bolder !important;
  color: #0D3450 !important;
}

.volverActivo:active{
  background-color: #0D3450 !important;
  color: #ffffff !important;
}
