html {
    scroll-behavior: smooth;
  }
  
  body{
    /* background: #feca30; */
    background-color:#000;
    background-image: url('../v2/bg-cdmx.jpg');
    background-position: center;
    background-size: cover;
    background-attachment: fixed;
  }
  selecciones{
      display: flex;
      justify-content: space-evenly;
      width: 100%;
      height: 12.5%;
      align-items: center;
  }
  #selecciones .form-select{
      width: 20%;
  }
  #containerExperiencias{
      width: 100%;
      top: 12.5%;
      height: 87.5%;
      display: flex;
      justify-content: space-evenly;
  
  }
  
  #sucursales{
      width: 100%;
      top: 5%;
      height: 95%;
      display: flreservasPublicoex;
      /* flex-wrap: wrap; */
      overflow-y: auto;
  }
  .sucursal{
      width: calc(100%/6);
      text-align: center;
  }
  
  .encabezadoSucursal{
      height: 30%;
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
  }
  
  .horarioSucursal{
      display: flex;
      flex-direction: column;
      align-items: center;
      overflow-y: auto;
      height: 70%;
  }
  .btnHorario{
      width: 50%;
      border-radius: 20px;
      background-color: transparent;
      color: white;
      margin-top: 1%;
      margin-bottom: 1%;
      border-color: #e60073;
  }
  
  .btnHorario:hover{
    animation: glow 1s ease-in-out infinite alternate;
  }
  
  @-webkit-keyframes glow {
    from {
      text-shadow: 0 0 10px #fff, 0 0 20px #fff, 0 0 30px #e60073, 0 0 40px #e60073, 0 0 50px #e60073, 0 0 60px #e60073, 0 0 70px #e60073;
    }
  
    to {
      text-shadow: 0 0 20px #fff, 0 0 30px #ff4da6, 0 0 40px #ff4da6, 0 0 50px #ff4da6, 0 0 60px #ff4da6, 0 0 70px #ff4da6, 0 0 80px #ff4da6;
    }
  }
  
  
  /*Opciones para cambiar el texto del botón on hover*/
  /* .btnHorario:before,
  .btnHorario:after {
      content: '';
      width: 100%;
      position: absolute;
      opacity: 0;
      -webkit-transition: .4s,opacity .6s;
      -moz-transition: .4s,opacity .6s;
      -o-transition: .4s,opacity .6s;
      transition: .4s,opacity .6s;
  } */
  
  /* :before */
  
  /* .btnHorario:before {
      content: attr(data-hover);
      -webkit-transform: translate(-150%,0);
      -moz-transform: translate(-150%,0);
      -ms-transform: translate(-150%,0);
      -o-transform: translate(-150%,0);
      transform: translate(-150%,0);
  } */
  
  /* :after */
  
  /* .btnHorario:after {
      content: attr(data-active);
      -webkit-transform: translate(150%,0);
      -moz-transform: translate(150%,0);
      -ms-transform: translate(150%,0);
      -o-transform: translate(150%,0);
      transform: translate(150%,0);
  } */
  
  /* Span on :hover and :active */
  
  /* .btnHorario:hover span,
  .btnHorario:active span {
      opacity: 0;
      -webkit-transform: scale(0.3);
      -moz-transform: scale(0.3);
      -ms-transform: scale(0.3);
      -o-transform: scale(0.3);
      transform: scale(0.3);
  } */
  
  /*
      We show :before pseudo-element on :hover
      and :after pseudo-element on :active
  */
  
  /* .btnHorario:hover:before,
  .btnHorario:active:after {
      opacity: 1;
      -webkit-transform: translate(0,0);
      -moz-transform: translate(0,0);
      -ms-transform: translate(0,0);
      -o-transform: translate(0,0);
      transform: translate(0,0);
      -webkit-transition-delay: .4s;
      -moz-transition-delay: .4s;
      -o-transition-delay: .4s;
      transition-delay: .4s;
  } */
  
  /*
    We hide :before pseudo-element on :active
  */
  
  /* .btnHorario:active:before {
      -webkit-transform: translate(-150%,0);
      -moz-transform: translate(-150%,0);
      -ms-transform: translate(-150%,0);
      -o-transform: translate(-150%,0);
      transform: translate(-150%,0);
      -webkit-transition-delay: 0s;
      -moz-transition-delay: 0s;
      -o-transition-delay: 0s;
      transition-delay: 0s;
  } */
  
  #prices {
      /*background-image: url(../assets/images/bg-large.jpg);*/
      background-image: url(img/bg-cdmx.jpg);
      background-position: center;
      background-size: cover;
      background-attachment: fixed;
      /* padding-top: 6rem; */
      /* padding-bottom: 6rem; */
  }
  #prices h2 {
      color: #000;
  }
  h1 {
      color: #000;
  }
  #prices p {
      color: #000;
      /* margin: 2rem 0 0; */
  }
  #prices .box {
      /* padding-top: 2rem; */
      /* padding-bottom: 1rem; */
      border: 2px solid #FFC600;
  }
  #prices .box h4 {
      color: #FFC600;
      /* font-size: 2.5rem; */
  }
  #prices .box h3 {
      font-family: 'Montserrat', sans-serif;
      font-weight: 300;
      /* font-size: 1rem; */
      /* margin-top: 1rem; */
      color: #000;
  }
  #prices .box .label {
      font-family: 'Yanone Kaffeesatz', sans-serif;
      background-color: transparent;
      /* font-size: 2rem; */
      font-weight: 800;
      /* padding: 0.5rem 1.5rem; */
  }
  #prices .box .label small {
      font-size: 70%;
      font-weight: 300;
  }
  
  #prices .icons img{
    width:75%;
  }
  
  
  
  .datepicker-native-button {
      position: relative;
  }
  .datepicker-native-button-input {
      position: absolute;
      overflow: hidden;
      width: 100%;
      height: 100%;
      right: 0;
      top: 0;
      opacity: 0;
  }
  .datepicker-native-button-input::-webkit-calendar-picker-indicator {
      position: absolute;
      right: 0;
      width: 100%;
      height: 100%;
      margin: 0;
      padding: 0;
      opacity: 0;
      cursor: pointer;
  }
  
  .logo{
    text-align: initial;
  }
  
  .center{
    text-align: center;
  }
  
  .inlineRow{
    display:inline-block;
  }
  
  .displayDate{
    color:#feca30;
    padding-top:5%;
    display:inline-block;
    padding-left:2.5%;
    padding-right:2.5%;
  }
  
  .headerSelector{
    /* display:inline-block; */
    color:white;
    padding-bottom:2.5%;
  }
  
  .displayCity{
    color:#feca30;
    display:block;
    padding-left: 2.5%;
    padding-right: 2.5%;
    white-space: nowrap;
  
  }
  .displayOpt{
    display:inline-block;
  }
  .selectOptions{
    width:50%;
    height: 70%;
    background-color: black;
    border-color:#feca30;
    color:#feca30;
    border-radius: 15px;
    font-family: 'Yanone Kaffeesatz', sans-serif;
    text-transform: uppercase;
  }
  
  .selectOptions select:focus, select option:checked, select option:hover select option:active{
      border-color: #feca30 !important;
      background-color: black !important;
  }
  
  .selectOptions option:hover, option:checked, option:active{
    border-color: #feca30 !important;
    background-color: black !important;
  }
  
  .selectOptions:hover, .selectOptions:active{
    border-color: #feca30 !important;
    background-color: black !important;
  
  }
  
  .headerButton{
    color:#feca30;
    font-size: 3rem;
    padding-left:2.5%;
    padding-right: 2.5%;
    background-color: transparent;
    border-color: transparent;
  }
  .reservationLine{
     border-bottom: 1px solid #feca30;
     margin-bottom: 1.5%;
  }
  
  .centerdiv{
    display: flex;
    justify-content: center;
    align-items: center;
  }
  
  .buttonParts{
    display: flex;
    justify-content: center;
    align-items: center;
  }
  
  .modalText{
    color:black;
    font-weight: bold;
    font-family: 'Yanone Kaffeesatz', sans-serif;
    text-transform: uppercase;
    font-size: 1.25rem;
    text-align: center;
  }
  .modalWarning{
    color:red;
    font-weight: bold;
    font-family: 'Yanone Kaffeesatz', sans-serif;
    text-transform: uppercase;
    font-size: 1.25rem;
    text-align: center;
  }
  .Pricing{
    text-align: right;
  }
  .totalReservation{
    color:#feca30;
  }
  .titles{
    color: #feca30;
    padding-top: 5%;
    /* display: inline-block; */
    /* padding-left: 2.5%; */
    display: flex;
    justify-content: center;
    font-size: 3.5rem;
  }
  
  .horariosLine{
     border-bottom: 1px solid #feca30;
     margin-bottom: 1.5%;
  }
  
  horariosLine:after { /* this is the border */
      content:"";
      display:block;
      width: 6em;
      max-width:70%;
      border-bottom: 0.3em solid red;
      margin: 2em auto 0;
  }
  
  reservationLine:after { /* this is the border */
      content:"";
      display:block;
      width: 6em;
      max-width:70%;
      border-bottom: 0.3em solid red;
      margin: 2em auto 0;
  }
  
  .timetable{
    font-family: 'Yanone Kaffeesatz', sans-serif;
    text-transform: uppercase;
    color:white;
    width:100%;
  }
  .imgExp{
    width:60%;
    transform:translate(50%,0%);
  }
  
  .hidden{
    display: none;
  }
  /* .button */
  
  .button {
      display: inline-block;
      position: relative;
      margin: .15em;
      padding: 0.05em;
      border: 2px solid #feca30;
      overflow: hidden;
      width:9.5%;
      height:1.9rem;
      text-decoration: none;
      font-size: 1.15em;
      outline: none;
      color: white;
      background: transparent;
      /* font-family: 'raleway', sans-serif; */
      border-radius: 20px;
  }
  
  .button.disabled, .button[disabled] {
      opacity: .75;
      cursor: not-allowed;
      background-color: #fe0102 !important;
      color:white !important;
      display: flex;
      justify-content: center;
      align-items: end;
  }
  
  .button2 {
      display: inline-block;
      position: relative;
      margin: .15em;
      padding: 0.05em;
      border: 2px solid #feca30;
      overflow: hidden;
      width:8.5%;
      /* height:3%; */
      text-decoration: none;
      font-size: 1.15em;
      outline: none;
      color: white;
      background: transparent;
      /* font-family: 'raleway', sans-serif; */
      border-radius: 20px;
  }
  
  .button span {
      -webkit-transition: 0.6s;
      -moz-transition: 0.6s;
      -o-transition: 0.6s;
      transition: 0.6s;
      -webkit-transition-delay: 0.2s;
      -moz-transition-delay: 0.2s;
      -o-transition-delay: 0.2s;
      transition-delay: 0.2s;
  }
  
  .button:before,
  .button:after {
      content: '';
      position: absolute;
      top: 0.05em;
      left: 0;
      width: 100%;
      text-align: center;
      opacity: 0;
      -webkit-transition: .4s,opacity .6s;
      -moz-transition: .4s,opacity .6s;
      -o-transition: .4s,opacity .6s;
      transition: .4s,opacity .6s;
  }
  
  /* :before */
  
  .button:before {
      content: attr(data-hover);
      -webkit-transform: translate(-150%,0);
      -moz-transform: translate(-150%,0);
      -ms-transform: translate(-150%,0);
      -o-transform: translate(-150%,0);
      transform: translate(-150%,0);
  }
  
  /* :after */
  
  .button:after {
      content: attr(data-active);
      -webkit-transform: translate(150%,0);
      -moz-transform: translate(150%,0);
      -ms-transform: translate(150%,0);
      -o-transform: translate(150%,0);
      transform: translate(150%,0);
  }
  
  /* Span on :hover and :active */
  
  .button:hover span,
  .button:active span {
      opacity: 0;
      -webkit-transform: scale(0.3);
      -moz-transform: scale(0.3);
      -ms-transform: scale(0.3);
      -o-transform: scale(0.3);
      transform: scale(0.3);
  }
  
  /*
      We show :before pseudo-element on :hover
      and :after pseudo-element on :active
  */
  
  .button:hover:before,
  .button:active:after {
      opacity: 1;
      -webkit-transform: translate(0,0);
      -moz-transform: translate(0,0);
      -ms-transform: translate(0,0);
      -o-transform: translate(0,0);
      transform: translate(0,0);
      -webkit-transition-delay: .4s;
      -moz-transition-delay: .4s;
      -o-transition-delay: .4s;
      transition-delay: .4s;
      background-color: #feca30fA;
  }
  
  .button:focus, .button:hover {
    background-color: #feca30fA;
  
  }
  /*
    We hide :before pseudo-element on :active
  */
  
  .button:active:before {
      -webkit-transform: translate(-150%,0);
      -moz-transform: translate(-150%,0);
      -ms-transform: translate(-150%,0);
      -o-transform: translate(-150%,0);
      transform: translate(-150%,0);
      -webkit-transition-delay: 0s;
      -moz-transition-delay: 0s;
      -o-transition-delay: 0s;
      transition-delay: 0s;
  }
  
  .line{
    width:90vw;
    /* white-space: nowrap; */
  }
  .experiencia{
    position:absolute;
    width:20%;
    margin-left:5%;
  }
  
  .horarios{
    width: 100%;
    margin-left:2.5%;
    /* margin-top:1.5%; */
    transform: translate(0,25%);
    /* overflow-x: scroll; */
    /* overflow-y:hidden; */
    /* height:15vh; */
    white-space: nowrap;
    display: flex;
    justify-content: center;
    /* overflow-wrap: text-wrap; */
  }
  
  /* .horarios::-webkit-scrollbar-track{
      -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3);
       border-radius: 10px;
       background-color: #F5F5F500;
   } */
  
  /* .horarios::-webkit-scrollbar{
       width: 12px;
       background-color: #F5F5F500;
  } */
  
  /* .horarios::-webkit-scrollbar-thumb{
      border-radius: 10px;
      -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,.3);
       background-color: #eaa708;
  } */
  
  
  .reservado{
    background-color:#fc0200;
    color:#fff;
    /* font-size:.75em; */
    border-color:#fc0200;
    height:80%;
  }
  
  .reservado:active:before {
  }
  .reservado:active:before {
  }
  
  .button:hover:before,
  .button:active:after {
    background-color: #FF000000;
  }
  
  .button:hover span,
  .button:active span {
    background-color: #00000000;
  }
  
  .button:focus:before,
  .button:active:after {
    background-color: #00000000;
  }
  
  .button:focus span,
  .button:active span {
    background-color: #00000000;
  }
  .sections{
    color:white;
  }
  
  .parts{
    width:15%;
  }
  
  .unitaryExp{
    display:inline-block;
  }
  .deletebtn{
    font-size: 2rem;
  }
  .totalExp{
    color:#feca30;
    display:inline-block;
  }
  
  .modders{
    width:95%;
    height:8%;
    border-radius: 5px;
  }
  
  .footerParts{
    text-align: center;
    margin-top:20%;
  }
  
  .reservar{
    background-color: red;
    border-color:red;
    border-radius: 5px;
    width:75%;
    height:8%;
  }
  
  .personalData{
    color:#feca30;
    font-family: 'Yanone Kaffeesatz', sans-serif;
    text-transform: uppercase;
    padding-left: 30px;
  }
  .centerData{
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
  }
  
  .confirmationDisclaimer{
        font-size: 1.5rem;
        display: flex;
        top: 5%;
        margin-top: 5%;
        border: 2px solid #feca30;
        padding: 15px;
        border-radius: 15px;
        text-align: center;
  }
  
  .personalDataTitles{
    padding-left:15px;
  }
  
  
  /* Create a custom checkbox */
  .checkboxConfirmation{
    height: 1.5rem;
    width: 1.5rem;
    background-color: black;
  }
  
  /* On mouse-over, add a grey background color */
  .container:hover input ~ .checkboxConfirmation {
    background-color: #ccc;
  }
  
  /* When the checkbox is checked, add a blue background */
  .container input:checked ~ .checkboxConfirmation {
    background-color: #feca30;
  }
  
  /* Create the checkmark/indicator (hidden when not checked) */
  .checkboxConfirmation:after {
    content: "";
    position: absolute;
    display: none;
  }
  
  [type=checkbox]{
    magin:0px;
  }
  /* Show the checkmark when checked */
  .container input:checked ~ .checkboxConfirmation:after {
    display: block;
  }
  
  /* Style the checkmark/indicator */
  .container .checkboxConfirmation:after {
    left: 9px;
    top: 5px;
    width: 5px;
    height: 10px;
    border: solid white;
    border-width: 0 3px 3px 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  .terms{
    color:white;
    font-family: 'Yanone Kaffeesatz', sans-serif;
    text-transform: uppercase;
  }
  #confirmationdiv{
    border-right: 3px solid white;
  }
  
  .inputReserva{
    background-color: transparent;
    color:white;
    border-radius: 15px;
    font-family: 'Yanone Kaffeesatz', sans-serif;
    text-transform: uppercase;
  }
  
  .confirmationPrice{
    color:#feca30;
    font-family: 'Yanone Kaffeesatz', sans-serif;
    text-transform: uppercase;
  }
  
  .reservationDate{
    color:white;
    font-family: 'Yanone Kaffeesatz', sans-serif;
    text-transform: uppercase;
  }
  .inputReserva:focus{
    color:#3d3d3b !important;
  }
  
  input:-webkit-autofill,
  input:-webkit-autofill:hover,
  input:-webkit-autofill:focus,
  textarea:-webkit-autofill,
  textarea:-webkit-autofill:hover,
  textarea:-webkit-autofill:focus,
  select:-webkit-autofill,
  select:-webkit-autofill:hover,
  select:-webkit-autofill:focus {
    /* border: 1px solid green; */
    -webkit-text-fill-color: white !important;
    -webkit-box-shadow: 0 0 0px 1000px black inset !important;
    transition: background-color 5000s ease-in-out 0s !important;
  }
  
  .inputReserva:active{
    color:#3d3d3b;
  }
  /* Orden de Participantes */
  .imgResLine{order:1;}
  .datetimeResLine{order:2;}
  .priceResLine{order:4;}
  .partsResLine{order:3;}
  .trashResLine{order:5;}
  
  .active{
    background-color: #feca30;
    color:white;
    font-weight: 900;
  }
  
  .buttonParts2 {
    display: flex;
    justify-content: center;
    align-items: center;
  
  }
  
  @media (min-width: 768px) {
        .modal-xl {
          width: 90%;
         max-width:1200px;
        }
      }
  
  @media screen and (orientation:portrait) {
    .headerButton, .displayDate{
        font-size:1.5rem;
    }
    section.nice {
      min-height: 135vh;
    }
  
    .displayCity{
      color:white;
    }
  
    .displayOpt{
      font-size:1.5rem;
    }
  
    .selectOptions{
      width:100%;
    }
  
    .horarios{
      display: -webkit-inline-box;
      /* overflow-x: scroll; */
      transform: translate(25%,0);
      height:auto;
    }
  
    .button{
      align-items: center;
      width:auto;
      padding:revert;
    }
    .button[disabled]{
      align-items: center;
    }
    .imgResLine{order:1;}
    .datetimeResLine{order:2;}
    .priceResLine{order:3;}
    .partsResLine{order:4;    margin-left: 5%;}
    .trashResLine{order:5;}
    .imageResLine{
      margin-left:20%;
    }
    .reservationDate{
      font-size: 1rem;
    }
    h4.reservationDate{
      font-size: 1rem;
    }
    h2.confirmationPrice{
      font-size: 1rem;
    }
    h1.confirmationPrice{
      font-size: 2rem;
    }
    #confirmationdiv{
      border-right: 0px solid white;
      border-bottom: 2px solid #feca30;
      margin-bottom: 10%;
    }
    .personalDataTitles{
      font-size:1.5rem;
    }
    .confirmationDisclaimer{
      font-size:.75rem;
    }
    .titles{
      font-size: 2.5rem;
    }
    .custom-checkbox{
      font-size: .75rem;
    }
    .buttonParts2 {
      margin-bottom: 35%;
      margin-top: 15%;
    }
  }

/* Loader overlay (requerido por reservasCliente.js — mockup Reservas/reservaciones.html) */
#loading {
  position: fixed;
  inset: 0;
  z-index: 999999;
  background: rgba(0, 0, 0, 0.85);
}
#loading-center {
  width: 100%;
  height: 100%;
}
