/* ----------------------------------------------------------
   ----------------------------------------------------------

        CSS proceso reservas

   ---------------------------------------------------------
   ---------------------------------------------------------- */

   @import url("https://fonts.googleapis.com/css2?family=Manrope:wght@200..800&display=swap");
   @import url("https://fonts.googleapis.com/css2?family=Gilda+Display&display=swap");
   /* ------------------------------- open: VARIABLES prueba ------------------------------------------ */
   :root {
     --main: #3b3c3e;
     --secondary: #b6754f;
     --white: #fff;
     /* color white */
     --white-rgb: 255, 255, 255;
     /* color white */
     --neutral-00: #f6f6f6;
     /* color neutral 00 */
     --neutral-10: #e6e6e6;
     /* color neutral 10 */
     --neutral-20: #cbcbcb;
     /* color neutral 20 */
     --neutral-40: #a3a3a3;
     /* color neutral 40 */
     --neutral-60: #a0a0a0;
     /* color neutral 60 */
     --neutral-80: #17212f;
     /* color neutral 80 */
     --black: #3b3c3e;
     /* color black Rippa */
     --black-rgb: 0, 0, 0;
     /* color black RGB */
     --gris: #f5f5f5;
     /* color gris */
   
     --azul: #0071eb;
     --azul-rgba: 0, 113, 235;
     --typo-primary: "Gilda display", sans-serif;
     /* tipografía del site */
     --typo-secondary: "Manrope", sans-serif;
     /* tipografía del site */
   
     --transition: all 0.3s ease-in-out;
     /* transición corta de elementos tipo button, enlaces, velos etc */
     --transition-1: all 0.7s ease-in-out;
     /* transición larga de elementos tipo button, enlaces, velos etc */
     --background: #fdfdfd;
   
     --success: #009e3e;
   }
   
   /* ------------------------------- close: VARIABLES ------------------------------------------ */
   
   /* ------------------------------- open: GENERAL ------------------------------------------ */
   
   #main-content {
     background-color: transparent;
   }
   
   #section-visitas.home-visitas {
     display: inline-block;
     width: 100%;
     min-height: calc(100vh - 112px);
     margin: 24px 0 0 0;
     padding: 0 0 0 0;
   }
   
   #section-visitas.enoexperiencia-detalle {
     display: inline-block;
     width: 100%;
     /*min-height: calc(80vh - 112px);*/
     margin: 24px 0 0 0;
     padding: 0 0 0 0;
   }
   
   #section-visitas {
     display: flex;
     flex-direction: column;
   }
   
   /* inputs general */
   *::-webkit-input-placeholder {
     /* Google Chrome y Safari */
     color: var(--neutral-60) !important;
     font-weight: 400;
     opacity: 1;
     letter-spacing: 0px;
   }
   
   *:-moz-placeholder {
     /* Firefox anterior a 19 */
     color: var(--neutral-60) !important;
     font-weight: 400;
     opacity: 1;
     letter-spacing: 0px;
   }
   
   *::-moz-placeholder {
     /* Firefox 19 y superior */
     color: var(--neutral-60) !important;
     font-weight: 400;
     opacity: 1;
     letter-spacing: 0px;
   }
   
   *:-ms-input-placeholder {
     /* Internet Explorer 10 y superior */
     color: var(--neutral-60) !important;
     font-weight: 400;
     opacity: 1;
     letter-spacing: 0px;
   }
   
   #section-visitas input.form-control,
   #section-visitas textarea.form-control,
   #section-visitas select {
     width: 100%;
     max-width: inherit;
     height: 36px;
     margin: 0 0 0 0 !important;
     text-align: center;
     font-size: 14px;
     font-weight: 600;
     background-color: white;
     padding: 0 8px;
     cursor: pointer;
     border: 1px solid var(--neutral-10);
     transition: var(--transition);
     outline: 0px solid rgba(var(--black-rgb), 0.1);
     outline-offset: -1px;
     border-radius: 4px;
     box-shadow: none;
     color: var(--black);
     line-height: 100%;
   }
   
   #section-visitas select#instalaciones {
     -webkit-appearance: none;
     -moz-appearance: none;
     appearance: none;
     background-image: url("/wp-content/uploads/2025/10/select.svg"); /* tu icono */
     background-repeat: no-repeat;
     background-position: right 15px center;
     background-size: 16px;
     padding-right: 40px;
     text-align: left !important;
     border-radius: 20px;
     max-width: 260px;
     float: right;
     display: flex;
     justify-content: end;
     padding: 0px 14px;
     line-height: 20px;
   }
   
   .input-group .usuarios_grupos {
     text-align: center;
   }
   
   #section-visitas input.form-control:hover,
   #section-visitas textarea.form-control:hover,
   #section-visitas select:hover {
     border: 1px solid var(--neutral-20);
     outline: 4px solid rgba(var(--azul-rgba), 0.08);
     outline-offset: -5px;
   }
   
   #section-visitas input.form-control:focus,
   #section-visitas textarea.form-control:focus,
   #section-visitas select:focus {
     border-color: var(--azul);
     outline: 2px solid var(--azul);
     outline-offset: -2px;
   }
   
   #section-visitas textarea.form-control {
     height: 120px;
     padding: 8px !important;
   }
   
   .caracteres_textarea {
     float: right;
     font-size: 12px;
     padding: 5px 5px 0;
     letter-spacing: 0px;
     color: var(--neutral-60);
     font-weight: 400;
   }
   
   /* fin inputs general */
   
   /* botones */
   .btn-solid-main {
     padding: 14px 40px !important;
     letter-spacing: 0.5px !important;
     font-weight: 600 !important;
     font-size: 12px !important;
     background: var(--main);
     color: var(--white) !important;
     -webkit-transition: all 0.3s ease-in-out !important;
     -moz-transition: all 0.3s ease-in-out !important;
     -o-transition: all 0.3s ease-in-out !important;
     transition: all 0.3s ease-in-out !important;
     font-family: var(--typo-secondary) !important;
     border-radius: 40px;
     border: 0px;
   }
   .btn-solid-main:hover {
     background: #000;
   }
   
   .btn-solid-neutral {
     padding: 14px 40px !important;
     letter-spacing: 1px !important;
     font-weight: 600 !important;
     font-size: 12px !important;
     background: none !important;
     border: 1px solid #bbb !important;
     color: #aaa !important;
     -webkit-transition: all 0.3s ease-in-out !important;
     -moz-transition: all 0.3s ease-in-out !important;
     -o-transition: all 0.3s ease-in-out !important;
     transition: all 0.3s ease-in-out !important;
     line-height: 1;
     margin-bottom: 10px;
     display: inline-block;
     font-family: var(--typo-secondary) !important;
     border-radius: 40px;
   }
   
   .btn-solid-neutral:hover {
     color: var(--main) !important;
     text-decoration: none;
     border: 1px solid var(--main) !important;
   }
   
   .volver_carrito {
     padding: 14px 40px !important;
     letter-spacing: 0.5px !important;
     font-weight: 600 !important;
     font-size: 12px !important;
     background: none !important;
     border: 1px solid #bbb !important;
     color: #aaa !important;
     -webkit-transition: all 0.3s ease-in-out !important;
     -moz-transition: all 0.3s ease-in-out !important;
     -o-transition: all 0.3s ease-in-out !important;
     transition: all 0.3s ease-in-out !important;
     line-height: 1;
     margin-bottom: 10px;
     display: inline-block;
     font-family: var(--typo-secondary) !important;
   }
   
   .volver_carrito:hover {
     background: none;
     color: var(--main) !important;
     text-decoration: none;
     border: 1px solid var(--main) !important;
   }
   
   /* fin botones */
   
   /* loader */
   .loader {
     background: rgba(var(--white-rgb), 0.8);
     position: fixed;
     z-index: 1000;
     top: 0;
     left: 0;
     height: 100%;
     width: 100%;
     backdrop-filter: blur(4px);
   }
   
   .loader .cont-loader {
     display: flex;
     height: 100%;
     align-items: center;
   }
   
   /* fin loader */
   
   /* breadcrumb visitas */
   
   #breadcrumb.row-visitas {
     padding: 0 0 20px;
     float: left;
     width: 100%;
     letter-spacing: 0.02em;
     /*display: none;*/
   }
   
   @media only screen and (max-width: 1080px) {
     #breadcrumb.row-visitas {
       padding: 0 0 24px;
     }
   }
   
   @media only screen and (max-width: 767px) {
     #breadcrumb.row-visitas {
       font-size: 10px;
     }
   }
   
   /* fin breadcrumb visitas */
   
   /* header */
   @media only screen and (max-width: 810px) {
     .et_header_style_centered header#main-header .logo_container {
       max-width: 100%;
       text-align: center;
       height: 120px;
       max-height: 120px;
       margin-bottom: -10px;
     }
   
     .et_header_style_centered header#main-header .logo_container img {
       height: 60%;
       padding: 0;
       max-height: 60%;
     }
   
     #et-top-navigation {
       display: none;
     }
   }
   #top-menu a {
     text-decoration: none;
     display: block;
     position: relative;
     -webkit-transition: opacity 0.4s ease-in-out,
       background-color 0.4s ease-in-out;
     transition: opacity 0.4s ease-in-out, background-color 0.4s ease-in-out;
     color: var(--main);
     border-radius: 4px;
     font-family: var(--typo-secondary);
     font-weight: 500;
     font-size: 14px;
     letter-spacing: 0.4px;
   }
   
   .west a {
     font-size: 0px !important;
   }
   
   .west a::after {
     content: "" !important;
     display: flex !important;
     height: 26px;
     opacity: 1;
     overflow: hidden;
     background-image: url("/wp-content/uploads/2025/10/logo-west.svg") !important;
     background-position: 0px center;
     background-repeat: no-repeat;
     background-position-y: 0px;
     background-size: 71px;
     background-position-x: 0px;
     width: 100px;
     top: 2px;
     margin-top: -20px;
   }
   
   .west a:hover {
     filter: brightness(0) saturate(100%) invert(0%) sepia(98%) saturate(0%)
       hue-rotate(314deg) brightness(97%) contrast(102%);
     transition: none !important;
   }
   .et_fullwidth_nav #main-header .container {
     max-width: 90% !important;
   }
   
   /* fin header */
   
   /* footer */
   .footer-col-info strong {
     font-weight: 600;
   }
   
   .footer-col-menu #menu-footer-es {
     display: block;
   }
   
   .footer-col-menu .et_pb_menu__menu {
     display: inherit;
   }
   
   .footer-col-menu .et_mobile_nav_menu {
     display: none;
   }
   
   .footer-col-menu #menu-footer-es li {
     padding: 0;
     text-align: center;
     display: block;
   }
   
   .footer-col-menu #menu-footer-es li a,
   .footer-col-menu #menu-footer-es li a:hover {
     background: none;
   }
   
   /* fin footer */
   
   @media only screen and (max-width: 767px) {
     .steps {
       margin: 0px 0 4px;
     }
   }
   
   /* fin steps pasos procesos */
   
   /* menseje error y success */
   .msg_error,
   label.error {
     padding: 0 0 0 20px !important;
     margin: 8px 0 0;
     color: var(--error);
     font-weight: 500;
     font-size: 12px;
     background-image: url(/wp-content/plugins/visitas/modules/visitas/reservas/images/error.svg);
     background-size: 14px;
     background-repeat: no-repeat;
     background-position: top 1px left;
     float: left;
     width: 100%;
     letter-spacing: 0px;
     text-align: left;
     font-family: var(--typo-secondary);
   }
   
   .success {
     padding: 0 0 0 18px;
     margin: 8px 0 0px;
     color: var(--ayuda);
     font-weight: 500;
     font-size: 12px;
     background-image: url(/wp-content/plugins/visitas/modules/visitas/reservas/images/check.svg);
     background-size: 12px;
     background-repeat: no-repeat;
     background-position: top 4px left;
     float: left;
     width: 100%;
     letter-spacing: 0px;
     text-align: left;
   }
   
   /* fin menseje error */
   
   /* ------------------------------- close: GENERALES ------------------------------------------ */
   
   /*  ----------------------------------------------------------------------------------------------------------------------------
       ----------------------------------------------------------------------------------------------------------------------------
           OPEN: Selección de servicios
       ----------------------------------------------------------------------------------------------------------------------------
       ----------------------------------------------------------------------------------------------------------------------------  */
   
   /* section-texto inicio + foto fondo  */
   .text-intro-inicio h1 strong {
     font-style: italic;
     letter-spacing: -0.03em;
     color: var(--main);
   }
   
   /* --------------------------------------- responsive 1280px ------------------------------------------------------------------------------ */
   
   @media only screen and (max-width: 1280px) {
     .text-intro-inicio .et_pb_module h1 {
       font-size: 104px;
     }
   }
   
   /* --------------------------------------- responsive 980px ------------------------------------------------------------------------------ */
   
   @media only screen and (max-width: 980px) {
     .parrafo-intro-inicio {
       background-color: rgba(var(--white-rgb), 0.8);
       backdrop-filter: blur(8px);
       padding: 24px;
       border-radius: 0px;
       max-width: 400px;
     }
   }
   
   /* --------------------------------------- responsive 767px ------------------------------------------------------------------------------ */
   
   @media only screen and (max-width: 767px) {
     .text-intro-inicio .et_pb_module h1 {
       font-size: 48px;
       margin-top: 16px;
       line-height: 90%;
     }
   
     .parrafo-intro-inicio {
       padding: 12px 16px;
       max-width: 280px;
     }
   
     .parrafo-intro-inicio p {
       font-size: 12px;
     }
   }
   
   /* fin section-texto inicio + foto fondo */
   
   /* contenedor cuando vienes + banner regala */
   .vienes-regala {
     display: flex;
     gap: 40px;
     padding-bottom: 24px;
   }
   
   /* filtro fecha cuando vienes */
   .cuando-vienes {
     background-color: var(--main);
     padding: 12px 16px 16px;
     width: 440px;
   }
   
   .cuando-vienes h1 {
     color: var(--white);
     margin: 0 0 4px;
     font-size: 30px;
     font-weight: 700;
   }
   
   .cuando-vienes p {
     font-size: 14px;
     padding-bottom: 8px;
     color: var(--white);
     font-weight: 500;
   }
   
   .group-input-vienes {
     overflow: hidden;
     position: relative;
   }
   
   #titulo-visitas.contenedor_filtros_visitas {
     display: flex;
     flex-wrap: wrap;
     margin: -256px 0 208px 0;
     padding: 24px 0;
     border-radius: 0px;
     text-align: center;
     background: var(--white);
     max-width: 1040px;
     display: none;
   }
   
   #titulo-visitas.contenedor_filtros_visitas .form-row {
     display: flex;
     align-items: center;
     width: 100%;
     gap: 0;
   }
   
   #titulo-visitas.contenedor_filtros_visitas .form-group.separador {
     margin: 0 0 0 0;
     padding: 0 24px;
     width: calc(100% / 3);
   }
   
   #titulo-visitas.contenedor_filtros_visitas
     .form-group.separador.group-personas {
     border-left: 0.5px solid var(--black);
     border-right: 0.5px solid var(--black);
     padding: 0 12px;
   }
   
   #titulo-visitas.contenedor_filtros_visitas .form-group.separador label {
     display: block;
     width: 100%;
     margin: 0 0 4px 0 !important;
     padding: 0 0 0 0;
   
     text-align: center;
     font-size: 11px;
     line-height: 12px;
   }
   
   #titulo-visitas.contenedor_filtros_visitas .form-group.separador .input-group {
     display: flex;
     width: 100%;
     margin: 0 !important;
     justify-content: space-between;
   }
   
   #titulo-visitas.contenedor_filtros_visitas
     .form-group.separador
     .input-group
     .input-group-btn {
     display: flex;
     width: auto;
     margin: 0;
     padding: 0;
     align-items: center;
     align-content: center;
   }
   
   #titulo-visitas.contenedor_filtros_visitas
     .form-group.separador
     .input-group
     .input-group-btn
     button {
     display: flex;
     width: 100%;
     height: 100%;
     margin: 0 0 0 0;
     padding: 0 8px;
     align-items: center;
     align-content: center;
     border-radius: 0px !important;
     background: none;
     border: none;
   }
   
   #titulo-visitas.contenedor_filtros_visitas
     .form-group.separador
     .input-group
     .input-group-btn
     button
     svg {
     width: 30px;
   }
   
   #BtnFiltrarVisitas {
     text-align: center;
     font-size: 14px;
     font-weight: 600;
     background-color: var(--black);
     color: var(--white) !important;
     padding: 0 16px !important;
     cursor: pointer;
     border: 0px;
   
     height: 52px;
     transition: var(--transition);
   }
   
   #BtnFiltrarVisitas:hover {
     background-color: var(--neutral-60);
   }
   
   #BtnFiltrarVisitas .fa {
     padding-right: 12px;
     border-right: 1px solid var(--white);
     margin-right: 8px;
   }
   
   #section-visitas .contenedor_filtros_visitas input::-webkit-input-placeholder {
     /* Google Chrome y Safari */
     color: var(--neutral-20) !important;
     font-size: 16px;
     font-weight: 400;
     transition: var(--transition);
   }
   
   #section-visitas .contenedor_filtros_visitas input:-moz-placeholder {
     /* Firefox anterior a 19 */
     color: var(--neutral-20) !important;
     font-size: 16px;
     font-weight: 400;
     transition: var(--transition);
   }
   
   #section-visitas .contenedor_filtros_visitas input::-moz-placeholder {
     /* Firefox 19 y superior */
     color: var(--neutral-20) !important;
     font-size: 16px;
     font-weight: 400;
     transition: var(--transition);
   }
   
   #section-visitas .contenedor_filtros_visitas input:-ms-input-placeholder {
     /* Internet Explorer 10 y superior */
     color: var(--neutral-20) !important;
     font-size: 16px;
     font-weight: 400;
     transition: var(--transition);
   }
   
   /* datepicker cuando vienes */
   .datepicker.datepicker-dropdown {
     min-width: 400px;
     box-shadow: none;
     border: 1px solid var(--neutral-10);
     border-radius: 8px;
     padding: 16px;
     margin-top: 40px;
     outline: 4px solid var(--neutral-00);
   }
   
   .datepicker-dropdown.datepicker-orient-left::before {
     left: 50% !important;
     margin-left: -7px;
     border-top: 6px solid var(--black) !important;
   }
   
   .datepicker-dropdown.datepicker-orient-left::after {
     left: 50% !important;
     margin-left: -6px;
     border-top: 6px solid var(--black) !important;
   }
   
   .datepicker-days .table-condensed {
     width: 100%;
   }
   
   /* fin datepicker cuando vienes */
   
   .cleardate {
     position: absolute;
     top: 2px;
     right: -140px;
     background-color: var(--white);
     height: 36px;
     display: flex;
     align-items: center;
     padding: 0 32px 2px 16px;
     font-size: 12px;
     font-weight: 600;
   
     color: var(--main);
     transition: var(--transition);
     background-image: url(/wp-content/plugins/visitas/modules/visitas/reservas/images/ico-delete.svg);
     background-size: 28px;
     background-repeat: no-repeat;
     background-position: top 4px right 2px;
     border-left: 2px solid var(--white);
     cursor: pointer;
   }
   
   .cleardate:hover {
     color: var(--white);
     background-position: top -24px right 2px;
     background-color: var(--black);
   }
   
   .cleardate.filtrado {
     right: 2px;
   }
   
   /* fin filtro fecha cuando vienes */
   
   /* banner regala */
   #banner-regala {
     display: flex;
     flex-wrap: wrap;
     gap: 12px;
     width: 100%;
     display: none !important;
     margin: 60px 0px;
     /*background-color: #f5f2eb;*/
   }
   
   .tit-banner-regala {
     display: flex;
     width: 100%;
   }
   
   .tit-banner-regala h2 {
     margin: 0;
     padding: 0;
     font-family: var(--typo-secondary) !important;
   
     font-size: 20px;
     line-height: 100%;
   }
   
   .info-banner-regala {
     display: flex;
     gap: 24px;
     width: 100%;
   }
   
   #banner-regala .img-banner-regala {
     width: calc(30% - 20px);
   
     padding: 20px;
   }
   
   #banner-regala .img-banner-regala img {
     width: 100%;
   }
   
   .text-banner-regala {
   }
   
   #banner-regala .text-banner-regala {
     width: calc(70% - 20px);
     padding: 40px;
   }
   
   #banner-regala .text-banner-regala .textos-regala {
     padding-right: 24px;
     max-width: 500px;
     padding-bottom: 40px;
   }
   
   #banner-regala .textos-regala p {
     font-size: 14px;
     padding-bottom: 0;
     font-family: var(--typo-secondary);
   }
   
   #banner-regala .textos-regala p strong {
     font-family: var(--typo-secondary);
     font-weight: 900 !important;
     font-size: 22px;
     line-height: 140%;
   }
   
   #banner-regala:hover .text-banner-regala .boton-banner .btn-solid-main {
     background-color: transparent !important;
     color: var(--main) !important;
     outline: 1px solid var(--main);
   }
   
   /* fin banner regala */
   
   @media only screen and (max-width: 1080px) {
     .cuando-vienes {
       width: 400px;
     }
   }
   
   @media only screen and (max-width: 980px) {
     #titulo-visitas.contenedor_filtros_visitas {
       margin: -160px 0 120px 0;
     }
   
     #titulo-visitas.contenedor_filtros_visitas .form-group.separador.buscador {
       width: 320px;
     }
   }
   
   @media only screen and (max-width: 767px) {
     #titulo-visitas.contenedor_filtros_visitas {
       margin: -256px 0 160px 0;
       padding: 16px 0;
     }
   
     #titulo-visitas.contenedor_filtros_visitas .form-row {
       gap: 16px 4px;
       flex-wrap: wrap;
     }
   
     #titulo-visitas.contenedor_filtros_visitas .form-group.separador {
       padding: 0 16px;
       width: calc(100% / 2 - 8px);
     }
   
     #titulo-visitas.contenedor_filtros_visitas .form-group.separador.buscador {
       width: 100%;
     }
   
     #titulo-visitas.contenedor_filtros_visitas
       .form-group.separador.group-personas {
       border-right: none;
       padding: 0 0 0 4px;
     }
   
     #titulo-visitas.contenedor_filtros_visitas
       .form-group.separador
       .input-group
       .input-group-btn:last-child
       button {
       padding-right: 0;
     }
   
     .vienes-regala {
       flex-wrap: wrap;
       flex-flow: column-reverse;
       padding-bottom: 40px;
     }
   
     .cuando-vienes {
       width: 100%;
     }
   
     .datepicker.datepicker-dropdown {
       min-width: 320px;
     }
   
     #banner-regala {
       width: 100%;
       padding: 20px 16px;
     }
   
     .info-banner-regala {
       gap: 16px;
       flex-wrap: wrap;
     }
   
     #banner-regala .img-banner-regala {
       width: 100%;
     }
   
     #banner-regala .text-banner-regala {
       width: 100%;
       gap: 16px;
     }
   
     #banner-regala .text-banner-regala .textos-regala {
       padding-right: 0;
     }
   
     #banner-regala .text-banner-regala .boton-banner .btn-solid-main {
       padding: 0 24px;
       height: 40px;
       font-size: 16px;
       letter-spacing: -0.04em !important;
     }
   }
   
   /* FIN contenedor cuando vienes + banner regala */
   
   #servicios_posibles {
     display: inline-block;
     width: 100%;
     margin: 0 0 0 0;
   }
   
   /* grid cards visita masonry listado */
   .grid-layout {
     position: relative;
     display: flex;
     flex-wrap: wrap;
     gap: 40px;
     margin-top: 20px;
   }
   
   .regala .grid-item:not(.grid-item-destacado) {
     position: relative;
     transition: var(--transition);
     width: calc(100% / 2 - 30px);
   }
   
   @media only screen and (max-width: 780px) {
     .regala .grid-item {
       width: 100% !important;
     }
   }
   
   .grid-item {
     display: flex;
     flex-wrap: wrap;
     width: calc(100% / 4 - 30px);
     position: relative;
   }
   
   @media only screen and (max-width: 1200px) {
     .grid-item {
       width: calc(100% / 2 - 20px);
     }
   }
   
   @media only screen and (max-width: 767px) {
     .grid-item {
       width: 100%;
     }
   }
   
   /* imagen card visita */
   
   .tag-transporte {
     position: absolute;
     bottom: 10px;
     right: 10px;
     background: #000;
     color: #fff;
     font-size: 12px;
     padding: 4px 10px;
     border-radius: 20px;
     z-index: 10;
     white-space: nowrap;
     display: flex;
     gap: 4px;
   }
   .tag-transporte:before {
     content: "" !important;
     display: flex !important;
     width: 20px;
     height: 20px;
     opacity: 1;
     overflow: hidden;
     background-image: url("/wp-content/uploads/2025/10/bus.svg") !important;
     background-position: 40px center;
     margin-left: 0 !important;
     transition: var(--transition);
     background-size: contain;
   }
   
   .imagen-visita {
     display: inline-block;
     width: 100%;
     height: 260px;
     position: relative;
     overflow: hidden;
     border-radius: 28px;
   }
   
   .grid-item:hover .imagen-visita {
     cursor: pointer;
   }
   
   .imagen-visita img {
     display: inline-block;
     width: 100% !important;
     height: 100% !important;
     object-fit: cover;
     object-position: center;
     -webkit-transition: var(--transition);
     -moz-transition: var(--transition);
     -o-transition: var(--transition);
     transition: var(--transition);
     filter: brightness(0.9);
     border-radius: 4px 4px 0px 0px;
   }
   
   .grid-item:hover .imagen-visita img {
     filter: brightness(1);
     transition: all 0.3s ease-in-out;
     transform: scale(1.03);
   }
   
   .imagen-visita .sombra_img {
     position: absolute;
     width: 100%;
     height: 100%;
     z-index: 1;
     transition: var(--transition);
   }
   
   .grid-item:hover .imagen-visita .sombra_img {
     background-color: rgba(var(--black-rgb), 0.2);
   }
   
   .grid-item-destacado:hover .imagen-visita .sombra_img {
     background-color: rgba(var(--black-rgb), 0) !important;
   }
   
   @media only screen and (max-width: 1080px) {
     .imagen-visita {
       height: 240px;
     }
   }
   
   /* fin imagen card visita */
   
   /* info del card visita */
   .grid-item .info-visita {
     padding: 24px;
     margin: 0;
     transition: var(--transition);
     display: flex;
     flex-wrap: wrap;
     width: 100%;
     justify-content: center;
     border-radius: 0px 0px 4px 4px;
   }
   
   .grid-item:hover .info-visita {
     cursor: pointer;
   
     border-color: var(--black);
   }
   
   .bodega-idioma {
     display: none;
   }
   
   .bodega-idioma .nombre-bodega:not(.idioma-servicio) {
     font-size: 11px;
     display: flex;
     line-height: 100%;
     font-weight: 500;
   }
   
   .bodega-idioma .idioma-servicio {
     font-size: 10px;
   
     font-weight: 500;
     line-height: 100%;
   }
   
   @media only screen and (max-width: 767px) {
     .grid-item .info-visita {
       padding: 20px 20px;
     }
   
     .bodega-idioma .idioma-servicio {
       font-size: 9px;
     }
   }
   
   /* fin info del card visita */
   
   /* título y texto resumen card visita */
   .text-card-visita {
     margin-bottom: 16px;
   }
   
   .text-card-visita h2 {
     display: flex;
     line-height: normal;
     flex-wrap: wrap;
     width: 100%;
     height: 50px;
     padding: 0;
     margin: 10px 0;
     font-family: var(--typo-secondary);
     font-weight: 700;
     font-size: 16px;
     color: var(--neutral-80);
     -webkit-transition: all 0.3s ease-in-out;
     -moz-transition: all 0.3s ease-in-out;
     -o-transition: all 0.3s ease-in-out;
     transition: all 0.3s ease-in-out;
   }
   
   .text-card-visita h3 {
     margin: 8px 0 0 0;
     padding: 0;
     font-size: 12px !important;
     font-weight: 400 !important;
     text-transform: none !important;
     line-height: 140%;
     color: var(--neutral-800);
     font-family: var(--typo-secondary) !important;
     transition: var(--transition);
     display: -webkit-box;
     -webkit-box-orient: vertical;
     -webkit-line-clamp: 3;
     overflow: hidden;
     text-overflow: ellipsis;
     letter-spacing: 0.2px;
   }
   
   @media only screen and (max-width: 767px) {
     .text-card-visita {
       height: auto;
       margin-bottom: 8px;
     }
   
     .text-card-visita h2 {
       font-size: 20px;
       max-height: initial;
       height: auto;
       display: flex;
     }
   
     .text-card-visita h3 {
       max-height: initial;
       display: flex;
       font-size: 12px;
       line-height: 120%;
     }
   }
   
   /* fin título y texto resumen card visita */
   
   /* fecha card visita */
   .fecha-card-visita {
     position: absolute;
     top: 12px;
     right: 12px;
     width: auto;
     padding: 8px 16px 12px !important;
     margin: 0;
     background: var(--white);
     border: 4px solid var(--black);
     text-align: center;
     font-family: var(--typo-secondary);
   }
   
   .fecha-card-visita p {
     line-height: 100%;
     margin: 0;
     padding: 0;
   }
   
   .fecha-card-visita .dia_evento {
     font-size: 32px;
     font-weight: 600;
     line-height: 90%;
   }
   
   .fecha-card-visita .mes_evento {
     font-size: 20px;
     border-bottom: 0.5px solid var(--black);
     margin-bottom: 6px;
     padding-bottom: 8px;
     font-weight: 600;
   }
   
   .fecha-card-visita .hora_evento {
     text-transform: none;
     font-size: 14px;
     padding-top: 4px;
     font-family: var(--typo-secondary);
     font-weight: 500;
   }
   
   @media only screen and (max-width: 767px) {
     .fecha-card-visita {
       top: 8px;
       left: initial;
       right: 8px;
       padding: 4px 8px 8px !important;
     }
   
     .fecha-card-visita .dia_evento {
       font-size: 24px;
     }
   
     .fecha-card-visita .mes_evento {
       font-size: 16px;
       margin-bottom: 2px;
       padding-bottom: 4px;
     }
   
     .fecha-card-visita .hora_evento {
       font-size: 11px;
     }
   }
   
   /* fin fecha card visita */
   
   /* footer card visita */
   .footer-card-visita {
     display: inline-block;
     width: 100%;
     margin: 20px 0 0 0;
     padding: 0 0 0 0;
   }
   
   .footer-card-visita h4 {
     display: inline-block;
     width: 100%;
     margin: 0 0 10px 0;
     padding: 0 0 0 0;
     font-family: var(--typo-secondary);
     font-size: 22px;
     font-weight: 600;
     color: var(--neutral-80);
   }
   .footer-card-visita h4 .desde {
     display: inline-block;
     width: 100%;
     font-family: var(--typo-secondary);
     font-size: 12px;
     font-weight: 400;
     color: var(--neutral-80);
   }
   
   .footer-card-visita a.boton_compra {
     font-weight: 600;
     margin: 0;
     padding: 12px;
     display: inline-block;
     transition: var(--transition);
     font-size: 12px;
     letter-spacing: 0px;
     border: 2px solid var(--black);
     font-family: var(--typo-secondary);
   
     height: 40px;
     line-height: 100%;
     background-color: var(--white);
   }
   
   .boton_info {
     display: flex;
     margin: 30px 0px 0px 0px;
     position: relative;
     align-content: center;
     justify-content: center;
   }
   
   .boton_info:hover {
     text-decoration: none;
   }
   
   .info_extra {
     font-weight: 600;
     margin: 0;
     padding: 10px 30px;
     width: auto;
     color: var(--main);
     transition: var(--transition);
     font-size: 12px;
     letter-spacing: 0px;
     font-family: var(--typo-secondary);
     background-color: white;
     text-align: center;
     display: flex;
     text-decoration: none;
     border-radius: 20px;
     border: 1px solid var(--main);
   }
   
   .info_extra:hover {
     color: var(--white);
     background-color: var(--main);
   }
   
   .footer-card-visita input {
     padding: 14px 40px !important;
     letter-spacing: 0.5px !important;
     font-weight: 600 !important;
     font-size: 12px !important;
     background: var(--main) !important;
     border: 1px solid var(--main) !important;
     color: var(--white) !important;
     -webkit-transition: all 0.3s ease-in-out !important;
     -moz-transition: all 0.3s ease-in-out !important;
     -o-transition: all 0.3s ease-in-out !important;
     transition: all 0.3s ease-in-out !important;
     font-family: var(--typo-secondary) !important;
     border-radius: 40px;
     display: none;
   }
   
   .grid-item:hover .footer-card-visita input {
     background-color: transparent !important;
     color: var(--main) !important;
     outline: 1px solid var(--main);
   }
   
   @media only screen and (max-width: 767px) {
     .footer-card-visita h4 {
       font-size: 24px;
     }
   }
   
   /* fin footer card visita */
   
   /* fin info del card visita */
   
   /* card visita destacado */
   
   .row-contenedor-visita-destacado {
     margin: 0 !important;
     width: 100%;
   }
   
   /* info del card visita destacado */
   .grid-item-destacado {
     display: flex;
     align-items: center;
     gap: 0px;
     width: 100%;
     justify-content: space-between;
     flex-flow: row-reverse;
     height: 100%;
   }
   
   @media only screen and (max-width: 767px) {
     .grid-item-destacado {
       flex-wrap: wrap;
       gap: 8px;
     }
   }
   
   /* imagen card visita destacado */
   .grid-item-destacado .imagen-visita {
     width: calc(50% + 40px);
     margin: 0;
     position: relative;
     height: 400px;
   }
   
   @media only screen and (max-width: 1080px) {
     #DivCabeceraModificacion.datos-reserva {
       width: 100% !important;
     }
   
     .grid-item-destacado .imagen-visita {
       height: 360px;
     }
   }
   
   @media only screen and (max-width: 767px) {
     .card-visita.datos-reserva h2 {
       padding: 40px 40px 0px 40px;
       margin-bottom: 0px;
     }
     .grid-item-destacado .imagen-visita {
       height: 240px;
       width: 100%;
     }
   }
   
   /* fin imagen card visita destacado */
   
   .grid-item-destacado .info-visita {
     padding: 24px;
     margin: 0;
     transition: var(--transition);
     background-color: var(--white);
     display: flex;
     flex-wrap: wrap;
     align-items: center;
     justify-content: center;
     height: 100%;
   }
   
   .grid-item-destacado .bodega-idioma .idioma-servicio {
     font-size: 14px;
     font-weight: 400;
   }
   
   .grid-item-destacado .text-card-visita {
     height: auto;
   }
   
   .grid-item-destacado .text-card-visita h2 {
     font-size: 36px;
     margin-bottom: 16px;
     line-height: 110%;
   }
   
   .grid-item-destacado .info-visita h3 {
     height: auto;
     font-size: 16px;
     line-height: 130%;
   }
   
   @media only screen and (max-width: 1080px) {
     .grid-item-destacado .info-visita h2 {
       font-size: 32px;
       max-height: 96px;
     }
   
     .grid-item-destacado .info-visita h3 {
       -webkit-line-clamp: 4;
     }
   }
   
   @media only screen and (max-width: 767px) {
     .grid-item-destacado .bodega-idioma .idioma-servicio {
       font-size: 9px;
       font-weight: 500;
     }
   
     .grid-item-destacado .info-visita {
       width: inherit;
       margin: 0;
       padding: 20px 16px 8px;
     }
   
     .grid-item-destacado .info-visita h2 {
       font-size: 20px;
       max-height: initial;
       height: auto;
       display: flex;
       margin-bottom: 8px;
     }
   
     .grid-item-destacado .info-visita h3 {
       max-height: initial;
       display: flex;
       font-size: 12px;
       line-height: 120%;
     }
   }
   
   /* fin info del card visita destacado */
   
   /* footer card visita destacado */
   .grid-item-destacado .footer-card-visita {
     padding: 0;
   }
   
   /* fin footer card visita destacado */
   
   /* fin card visita destacado */
   
   /* fin cards visita grid masonry listado */
   
   .servicio_bloque .novedad,
   .servicio_bloque .evento,
   .enviar_formulario_destacado .novedad,
   .enviar_formulario_destacado .evento {
     position: absolute;
     top: 40px;
     right: 40px;
     padding: 5px 15px;
     font-family: var(--typo-secondary);
     font-weight: 700;
   
     font-size: 13px;
     color: var(--neutral-50);
     border: 1px solid var(--neutral-50);
     line-height: 100%;
     z-index: 1;
   }
   
   /*boton volver evento*/
   
   /* #BtnExtrasPasoAtrasEvento {
       padding: 14px 16px;
       letter-spacing: 2px !important;
       font-size: 14px;
       
       background: none;
       border: none;
       display: block;
       transition: var(--transition);
       line-height: 100%;
   } */
   
   /* aviso todo vendido en bloque listado */
   .aviso-no-plazas {
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
     backdrop-filter: blur(2px);
     z-index: 1;
     background: rgba(var(--white-rgb), 0.8);
     display: flex;
     align-items: center;
     justify-content: center;
     border: 2px solid var(--black);
   }
   
   .aviso-no-plazas .reserva-tramite {
     color: var(--black);
     font-weight: 700;
     font-size: 44px;
   }
   
   /* fin aviso todo vendido en bloque listado */
   
   /* botones gastrobar/gastrotienda */
   .gastrotiendas {
     display: flex;
     align-items: center;
     justify-content: center;
     gap: 16px;
     margin: 80px 0 0;
     padding: 50px 0;
     border-top: 1px dashed rgba(var(--black-rgb), 0.15);
     border-bottom: 1px dashed rgba(var(--black-rgb), 0.15);
   }
   
   .gastrotiendas a {
     border: 0.5px solid var(--neutral-20);
     color: var(--neutral-60);
     padding: 8px 16px;
   
     letter-spacing: 0px;
     font-size: 13px;
     font-weight: 400;
     width: 180px;
     text-align: center;
     transition: var(--transition);
     text-decoration: none;
   }
   
   .gastrotiendas a:hover {
     border: 0.5px solid var(--main);
     color: var(--main);
   }
   
   @media only screen and (max-width: 767px) {
     .gastrotiendas {
       gap: 0;
       flex-wrap: wrap;
       padding: 30px 0;
     }
   
     .gastrotiendas a {
       width: 100%;
       margin: 8px 0;
     }
   }
   
   /* fin botones gastrobar/gastrotienda */
   
   /* aviso no visitas disponible filtrando por fecha */
   .contenedor_tipo_visitas.no_hay_visitas {
     max-width: 600px;
     width: 90%;
     margin: 0 auto;
   }
   
   /* fin aviso no visitas disponible filtrando por fecha */
   
   /* ------------------------------------------------------CLOSE: Selección de servicios ------------------------------------------------------ */
   
   /*  ----------------------------------------------------------------------------------------------------------------------------
       ----------------------------------------------------------------------------------------------------------------------------
           OPEN: Paso 1 Selección de Fecha Idioma Número personas
       ----------------------------------------------------------------------------------------------------------------------------
       ----------------------------------------------------------------------------------------------------------------------------  */
   
   #paso_1_all {
     float: left;
   }
   
   /* card visita info*/
   .card-visita {
     padding: 0px;
     position: relative;
     box-shadow: none;
     float: left;
     width: 100%;
   }
   
   .datos-reserva {
     margin-bottom: 20px;
     border: 1px solid var(--neutral-10);
     background-color: var(--white);
     border-radius: 28px;
     width: 32%;
     float: right;
     right: 0;
     top: 0px;

   }
   
   .card-visita.datos-reserva h2 {
     padding: 20px 40px 0px 20px;
     margin-bottom: 0px;
   }
   
   .content-card-filtro .datos-servicio-container {
     padding: 20px 40px 20px 40px !important;
     margin: 0px;
   }
   .content-card-filtro .text-expli {
     padding: 0px 40px 20px 60px !important;
     margin: 0px;
   }
   .datos-confirmar .content-card-filtro .text-expli {
     padding: 20px 40px 20px 0px !important;
   }
   .tabla-resumen tr {
     padding: 0px 40px 0px 40px !important;
     display: flex;
     flex-wrap: wrap;
     justify-content: space-between;
   }
   .tabla-resumen .totales {
     padding: 20px 40px !important;
     margin-top: 20px;
     border-radius: 0px 0px 28px 28px;
   }
   
   .datos-confirmar {
     margin-bottom: 20px;
     float: left;
     width: 100%;
     border: 1px solid var(--neutral-10);
     padding: 40px !important;
     border-radius: 0px;
     background-color: var(--white);
   }
   
   .info_servicio_cabecera {
     display: flex;
     margin: 0;
     padding: 0;
     flex-wrap: wrap;
     width: calc(70% - 40px);
   }
   
   .info_servicio_cabecera .imagen-visita-detalle {
     width: 100%;
     overflow: hidden;
     height: 400px;
     border-radius: 28px;
   }
   
   .info_servicio_cabecera .imagen-visita-detalle img {
     object-fit: cover;
     height: 100%;
     width: 100%;
   }
   
   .info-visita-detalle {
     width: 100%;
     position: relative;
     margin-top: 0px;
     padding: 40px 20px;
   }
   
   .texto_descripcion_servicio_no_hay {
     padding: 40px;
   }
   
   .info-visita-detalle h1 {
     display: inline-block;
     width: 100%;
     padding: 0px;
     font-family: var(--typo-secondary);
     font-weight: 700;
     font-size: 22px;
     color: var(--neutral-80);
     line-height: initial;
     margin-top: 20px;
   }
   
   .ancla-reserva {
     display: none !important;
     margin: 8px 0 16px;
   }
   
   b,
   strong {
     font-weight: 600 !important;
   }
   
   .ancla-reserva p {
     line-height: 100%;
   }
   
   label {
     margin: 5px !important;
     font-weight: 500 !important;
   }
   
   .ancla-reserva a {
     padding: 14px 40px !important;
     letter-spacing: 0.5px !important;
     font-weight: 600 !important;
     font-size: 12px !important;
     background: var(--main);
     color: var(--white) !important;
     -webkit-transition: all 0.3s ease-in-out !important;
     -moz-transition: all 0.3s ease-in-out !important;
     -o-transition: all 0.3s ease-in-out !important;
     transition: all 0.3s ease-in-out !important;
     font-family: var(--typo-secondary) !important;
     border-radius: 40px;
     border: 0px;
   }
   
   .ancla-reserva:hover a {
     background: linear-gradient(
       108deg,
       #000000 2.62%,
       #000000 48.07%,
       #2d2d2d 93.53%
     );
   }
   
   #punto-ancla {
     display: none;
     width: 100%;
   }
   
   .info-visita-detalle .texto_descripcion_servicio {
     max-width: 100%;
     font-family: var(--typo-secondary);
     letter-spacing: 0px;
     line-height: 140%;
   }
   .info-visita-detalle .texto_descripcion_servicio h2 {
     max-width: 100%;
     font-family: var(--typo-secondary);
   }
   
   .text-card-visita p.nombre-bodega,
   .info-visita-detalle p.nombre-bodega {
     font-size: 11px;
     font-weight: 500;
     margin: 0;
     letter-spacing: 0px;
     font-family: var(--typo-secondary);
     background-color: var(--white);
     padding: 4px 16px;
     border-radius: 20px;
     width: auto !important;
     display: initial;
     color: var(--neutral-60);
   }
   
   .text-card-visita p {
     margin-top: 10px;
   }
   
   .nombre-bodega::before {
     content: "";
     position: absolute;
     margin-left: -21px;
     width: 20px;
     height: 20px;
     background: url("/wp-content/uploads/2025/10/bodega.svg") no-repeat center;
     background-size: contain;
     margin-right: 20px;
     backdrop-filter: opacity(10%);
     filter: opacity(49%);
   }
   
   @media only screen and (max-width: 1080px) {
     .reserva-tramite {
       width: 100% !important;
     }
   
     .datos-reserva {
       width: 100%;
       position: initial;
     }
     .cuerpo_servicio {
       width: 100% !important;
     }
   
     .info-visita-detalle {
       width: 100%;
       padding: 20px 0px;
     }
   
     .info-visita-detalle p.nombre-bodega,
     .text-card-visita p.nombre-bodega {
       font-size: 12px;
     }
   
     .info_servicio_cabecera .imagen-visita-detalle {
       height: 320px;
     }
   }
   
   @media only screen and (max-width: 810px) {
     .info_servicio_cabecera {
       width: 100%;
       gap: 16px;
     }
   
     .info_servicio_cabecera .imagen-visita-detalle {
       max-height: 240px;
     }
   
     .info-visita-detalle h1 {
       padding: 16px 0 16px;
       font-size: 22px;
     }
   }
   
   @media only screen and (max-width: 767px) {
     .info_servicio_cabecera {
       width: 100%;
       gap: 8px;
       margin-top: 16px;
     }
   
     .info_servicio_cabecera .imagen-visita-detalle {
       max-height: 200px;
     }
   
     .info-visita-detalle p.nombre-bodega {
       font-size: 12px;
     }
   
     .info-visita-detalle h1 {
       padding: 0px 0 16px;
       font-size: 24px;
       max-width: 100%;
     }
   
     .ancla-reserva {
       display: flex;
     }
   
     #punto-ancla {
       display: flex;
     }
   }
   
   /* fin card visita info*/
   
   /* bloque selección fecha / personas / horarios */
   
   /* .confirmacion_servicios h2 {
       
       text-align: center;
       font-size: 32px;
       font-weight: 300;
       text-align: left;
   } */
   
   .text-no-card {
     text-align: left;
   }
   
   .adultos label {
     text-align: center;
     margin: 0 !important;
     font-size: 12px !important;
     font-weight: 600 !important;
     font-family: var(--typo-secondary);
   }
   
   .cuerpo_servicio {
     float: left;
     width: 60%;
     margin: 0;
     border: 1px solid var(--neutral-10);
     padding: 40px !important;
     margin-bottom: 20px;
     border-radius: 28px;
     background-color: rgba(var(--white-rgb), 0.5);
     transition: var(--transition);
   }
   
   .reserva-tramite {
     width: 60%;
     margin: 0;
     float: left;
     border: 1px solid var(--neutral-10);
     padding: 40px !important;
     margin-bottom: 20px;
     border-radius: 28px;
     background-color: rgba(var(--white-rgb), 0.5);
     transition: var(--transition);
   }
   
   .cuerpo_servicio:hover {
     /*border: 1px solid var(--azul);*/
     transition: var(--transition);
     background: var(--white);
   }
   
   .cuerpo_servicio:hover.datos-confirmar,
   .cuerpo_servicio:hover.condiciones_servicio {
     border: 1px solid var(--neutral-10);
     transition: var(--transition);
     background: var(--white);
   }
   
   /* #DivCarritoResumenConfirmar {
       margin: 8px 0 24px;
       float: left;
       width: 100%;
       border: 1px solid var(--neutral-20) !important;
       padding: 32px;
       background-color: rgba(var(--white-rgb), 0.4) !important;
   } */
   
   #paso_1_all .cuerpo_servicio {
     margin: 0;
     float: right;
     width: 30%;
     position: relative;
     border: none;
     padding: 0 !important;
   }
   
   .confirmacion_servicios {
     display: inline-block;
     width: 100%;
     margin: 0 0 0 0;
     padding: 0 0;
     z-index: 2;
     position: relative;
   }
   
   .card-visita.fechaseleccion {
     display: inline-block;
     width: 100%;
     margin: 0 0 0 0;
     z-index: 2;
     position: relative;
     border: 1px solid var(--neutral-10);
     background-color: var(--white) !important;
     padding: 30px !important;
     border-radius: 28px;
   }
   
   .card-visita.resultados-horarios-posibles {
     display: inline-block;
     margin: 0 0 0 0;
     z-index: 2;
     position: relative;
     border: 1px solid var(--neutral-10);
     background-color: var(--white) !important;
     padding: 30px !important;
     border-radius: 28px;
   }
   
   .result-modificar img {
     display: none;
   }
   
   #DivEdicionFechas .card-visita.resultados-horarios-posibles,
   #DivEdicionFechas .fechaseleccion {
     display: inline-block;
     margin: 0 0 0 0;
     z-index: 2;
     position: relative;
     border: 0px solid var(--neutral-10);
     background-color: var(--white) !important;
     padding: 30px 10px !important;
     border-radius: 0px;
   }
   
   .Filtros .card-visita.usuarios_grupos_disponibles {
     display: inline-block;
     width: 100%;
     margin: 0 0 0 0;
     z-index: 2;
     position: relative;
     padding: 40px;
     border: 1px solid var(--neutral-10) !important;
     border-radius: 28px;
   }
   
   #DivEdicionPlazas .card-visita.usuarios_grupos_disponibles {
     display: inline-block;
     width: 100%;
     margin: 20px 0 0 0;
     z-index: 2;
     position: relative;
     border: 0px solid var(--neutral-10);
     background-color: var(--white) !important;
     padding: 0px !important;
     border-radius: 0px;
   }
   
   .title-no-card {
     font-size: 28px;
     margin: 0;
     padding: 0 0 4px;
     letter-spacing: 0.01em;
     color: var(--black);
     font-weight: 800;
   }
   
   h2.title-no-card {
     font-size: 16px !important;
     font-weight: 700 !important;
     font-family: var(--typo-secondary) !important;
     line-height: 140%;
   }
   
   #paso_1_all .cuerpo_servicio .text-no-card {
     font-family: var(--typo-secondary);
     font-size: 14px;
     font-weight: 500;
     margin-bottom: 8px;
     color: var(--black);
     letter-spacing: 0px;
     display: none;
   }
   
   #paso_1_all .cuerpo_servicio .text-no-card::after {
     content: " ";
     display: block;
     margin-top: 32px;
   }
   
   #contenidoTusVisitas .title-no-card {
     margin: 0 0 0 0;
     padding: 0 0 30px 0;
     font-size: 23px;
     color: var(--main);
     font-weight: 400;
   }
   
   @media only screen and (max-width: 1080px) {
     #paso_1_all .cuerpo_servicio::after {
       width: calc(100% + 64px);
     }
   }
   
   @media only screen and (max-width: 810px) {
     #paso_1_all .cuerpo_servicio {
       margin: 8px 0 0 24px;
       width: calc(45% - 24px);
       padding: 24px;
     }
   
     #paso_1_all .cuerpo_servicio::after {
       width: 100%;
       height: 100%;
       top: 0;
       border-width: 2px;
     }
   
     .title-no-card {
       font-size: 24px;
     }
   }
   
   @media only screen and (max-width: 767px) {
     .btn-solid-neutral {
       width: 100%;
       text-align: center;
     }
     .botones_completar_reserva {
       width: 100% !important;
     }
   
     .cuerpo_servicio,
     #paso_1_all .cuerpo_servicio {
       width: 100%;
       padding: 30px;
     }
   
     #paso_1_all .cuerpo_servicio {
       margin-top: 0;
     }
   }
   
   /* card filtros */
   .Filtros {
     display: flex;
     gap: 24px;
     flex-wrap: wrap;
   }
   
   .Filtros .card-visita {
     width: 100%;
     background: none;
     padding: 0;
     margin: 0;
   }
   
   .title-card-filtro {
     font-family: var(--typo-secondary) !important;
     font-weight: 700 !important;
     font-size: 14px !important;
     border-bottom: 1px dashed var(--neutral-20);
     margin-bottom: 15px !important;
     margin-top: -10px !important;
     padding-bottom: 16px;
   }

   .datos-reserva.datos-reserva-ok h3{
    padding: 20px 40px;
   }
   
   .vuelta-pago .card-visita .title-card-filtro {
     font-family: var(--typo-secondary) !important;
     font-weight: 700 !important;
     font-size: 14px !important;
     border-bottom: 1px dashed var(--neutral-20);
     margin-top: 6px !important;
     padding-bottom: 16px;

   }
   
   .vuelta-pago .card-visita.datos-reserva h3::before {
     content: "";
     display: inline-block;
     width: 30px;
     height: 30px;
     background: url(/wp-content/uploads/2025/10/ticket-1.svg) no-repeat center
       center;
     background-size: auto;
     background-size: contain;
     margin-right: 10px;
   }
   .vuelta-pago .card-visita.datos-reserva h3 {
     display: flex;
     align-items: center;
     margin: 0px;
   }
   
   .datos-reserva h2::before {
     content: "";
     display: inline-block;
     width: 30px;
     height: 30px;
     background: url(/wp-content/uploads/2025/10/ticket-1.svg) no-repeat center
       center;
     background-size: auto;
     background-size: contain;
     margin-right: 10px;
   }
   .datos-reserva h2 {
     display: flex;
     align-items: center;
     margin: 0px;
   }
   
   .tus-datos-personales h3::before {
     content: "";
     display: inline-block;
     width: 30px;
     height: 30px;
     background: url(/wp-content/uploads/2025/10/user.svg) no-repeat center center;
     background-size: auto;
     background-size: contain;
     margin-right: 10px;
   }
   .tus-datos-personales h3 {
     display: flex;
     align-items: center;
     margin: 0px;
   }
   
   .tus-datos-personales h2::before {
     content: "";
     display: inline-block;
     width: 30px;
     height: 30px;
     background: url(/wp-content/uploads/2025/10/user.svg) no-repeat center center;
     background-size: auto;
     background-size: contain;
     margin-right: 10px;
   }
   
   .tus-datos-personales h2 {
     display: flex;
     align-items: center;
     margin: 0px;
   }
   
   .forma_pago h2::before {
     content: "";
     display: inline-block;
     width: 30px;
     height: 30px;
     background: url(/wp-content/uploads/2025/10/pay.svg) no-repeat center center;
     background-size: auto;
     background-size: contain;
     margin-right: 10px;
   }
   .forma_pago h2 {
     display: flex;
     align-items: center;
     margin: 0px;
   }
   
   .finalizar_compra {
     display: flex;
     flex-wrap: wrap;
     justify-content: space-between;
     width: 100%;
   }
   
   .finalizar-mis-visitas {
     width: 100%;
   }
   
   .vuelta-pago .finalizar_compra {
     display: flex;
     justify-content: space-between;
     background: none;
     width: 100%;
   }
   /* selección fecha */
   .confirmacion_servicios #FechaVisita-container {
     border: none;
     padding: 0;
     float: left;
     width: 100%;
   }
   
   /* datepicker */
   
   .content-card-filtro {
     border: none;
     padding: 0 0 0 0;
     float: left;
     width: 100%;
   }
   
   .confirmacion_servicios #FechaVisita-container .datepicker table {
     background: none !important;
     border: none !important;
     margin: 0;
   }
   
   .confirmacion_servicios .fechaseleccion .datepicker-inline {
     width: 100%;
   }
   
   #DivSiguientePaso00 .confirmacion_servicios .fechaseleccion {
     width: calc(100% / 2 - 20px);
   }
   
   #DivSiguientePaso00 .confirmacion_servicios .horarioseleccion {
     width: calc(100% / 2 - 20px);
   }
   
   @media only screen and (max-width: 980px) {
     #DivSiguientePaso00 .confirmacion_servicios .fechaseleccion {
       width: calc(100%);
     }
   
     #DivSiguientePaso00 .confirmacion_servicios .horarioseleccion {
       width: calc(100%);
     }
   }
   
   .datepicker table tr th {
     line-height: 40px;
     color: var(--neutral-80);
     text-align: center !important;
     border: none !important;
     border-radius: 0 !important;
   }
   
   .datepicker-days .table-condensed tr {
     display: flex;
     gap: 3px;
   }
   
   .datepicker-days .table-condensed thead tr:nth-child(2) {
     border-radius: 0px;
   }
   
   .datepicker table tr th.prev,
   .datepicker table tr th.next,
   .datepicker table tr th.datepicker-switch {
     padding: 0;
     transition: var(--transition);
     font-family: var(--typo-secondary);
     font-weight: 400;
     font-size: 24px;
     line-height: 24px;
   }
   
   .datepicker table tr th.prev {
     border-right: 0px solid var(--black) !important;
     border-radius: 40px !important;
     width: 35px;
   }
   
   .datepicker table tr th.next {
     border-left: 0px solid var(--black) !important;
     border-radius: 40px !important;
     width: 35px;
   }
   
   .datepicker table tr th.prev:hover,
   .datepicker table tr th.next:hover {
     background: var(--azul);
     color: var(--white);
   }
   
   .datepicker table tr th.datepicker-switch {
     font-weight: 500;
     font-size: 12px;
   
     width: 100%;
     padding-top: 2px;
   }
   
   .datepicker table tr .datepicker-switch:hover {
     background: none;
     cursor: default;
   }
   
   .datepicker table tr th.dow {
     font-weight: 400;
     padding: 5px;
   
     font-size: 12px;
     letter-spacing: 0.05em;
     margin-bottom: 20px !important;
   }
   
   .datepicker table tr td.day {
     font-weight: 600;
     transition: var(--transition);
     font-size: 12px;
     letter-spacing: 0px;
     line-height: 17px;
     border: 1px solid var(--neutral-10);
     font-family: var(--typo-secondary);
     border-radius: 2px;
     color: var(--black);
   }
   
   .datepicker table tr td.day:hover {
     border-color: var(--black);
     background: var(--black) !important;
     color: var(--white);
   }
   
   .datepicker table tr td.disabled,
   .datepicker table tr td.disabled:hover {
     font-weight: 400;
     background: none !important;
     font-size: 12px;
     color: var(--black);
     border: none;
   }
   
   .datepicker table tr td.old,
   .datepicker table tr td.new,
   .datepicker table tr td.old:hover,
   .datepicker table tr td.new:hover {
     font-weight: 400;
     background: none;
     color: var(--neutral-20) !important;
     border: none;
   }
   
   .datepicker table tr td.day.active,
   .datepicker table tr td.day.active:hover {
     background: var(--main) !important;
     text-shadow: none;
     color: var(--white) !important;
     border-color: var(--main) !important;
   }
   
   .datepicker-days .table-condensed thead th.dow,
   .datepicker-days .table-condensed tr td {
     width: calc(100% / 7) !important;
     display: flex;
     margin-bottom: 4px;
     justify-content: center;
     font-family: var(--typo-secondary);
     font-weight: 600;
   }
   
   /* fin datepicker */
   
   /* fin selección fecha */
   
   /* seleccion personas */
   
   #paso_1_all .Filtros .adultos {
     margin-bottom: 16px;
   }
   
   .confirmacion_servicios .usuarios_grupos_disponibles .adultos,
   #FormCompraEvento .usuarios_grupos_disponibles .adultos {
     /* margin-top: 16px; */
     text-align: center;
   }
   
   .confirmacion_servicios .usuarios_grupos_disponibles .adultos:first-child {
     margin-top: 0 !important;
   }
   
   .content-card-filtro h4 {
     font-family: var(--typo-secondary) !important;
   
     font-size: 11px !important;
     font-weight: 500 !important;
     color: var(--neutral-80);
     margin: 0;
     text-align: center;
     padding-bottom: 0;
   }
   
   /* botones + - selección de personas */
   
   .content-card-filtro .input-group.bootstrap-touchspin {
     margin-top: 8px;
     border: 0px solid var(--neutral-10);
   }
   
   .content-card-filtro .input-group.bootstrap-touchspin span:first-child {
     border-right: 0px solid var(--neutral-20);
   }
   
   .content-card-filtro .input-group.bootstrap-touchspin span:last-child {
     border-left: 0px solid var(--neutral-20);
   }
   
   #section-visitas .cuerpo_servicio input.form-control {
     height: 34px;
     font-family: var(--typo-secondary) !important;
     background: var(--neutral-00);
     border-radius: 40px;
   }
   
   #section-visitas .cuerpo_servicio input.form-control:hover {
     outline-offset: -4px;
   }
   
   .confirmacion_servicios
     .usuarios_grupos_disponibles
     .adultos
     .input-group-btn
     .btn,
   #FormCompraEvento .usuarios_grupos_disponibles .adultos .input-group-btn .btn {
     height: 22px;
     width: 22px;
     border: 0px solid var(--black);
     font-size: 40px;
     font-weight: 300;
     line-height: 5px;
     padding: 0;
     color: var(--black);
     transition: var(--transition);
     background: none;
     box-shadow: none !important;
     border-radius: 20px;
     margin: 0px 10px;
   }
   
   .confirmacion_servicios
     .usuarios_grupos_disponibles
     .adultos
     .input-group-btn
     .btn:hover,
   #FormCompraEvento
     .usuarios_grupos_disponibles
     .adultos
     .input-group-btn
     .btn:hover {
     background-color: var(--azul);
     color: var(--white);
   }
   
   .confirmacion_servicios
     .usuarios_grupos_disponibles
     .adultos
     .input-group-btn
     .btn
     svg {
     fill: var(--azul);
     -webkit-transition: var(--transition);
     -moz-transition: var(--transition);
     -o-transition: var(--transition);
     transition: var(--transition);
     margin-left: -1px;
     margin-top: -1px;
   }
   
   .confirmacion_servicios
     .usuarios_grupos_disponibles
     .adultos
     .input-group-btn
     .btn:hover
     svg {
     fill: var(--white);
   }
   
   .confirmacion_servicios
     .usuarios_grupos_disponibles
     .adultos
     .input-group-btn
     .btn
     svg
     rect:last-child {
     transition: var(--transition);
   }
   
   .confirmacion_servicios
     .usuarios_grupos_disponibles
     .adultos
     .input-group-btn
     .bootstrap-touchspin-down
     svg
     rect {
     transition: var(--transition);
     height: 4px;
     width: 34px;
   }
   
   .confirmacion_servicios
     .usuarios_grupos_disponibles
     .adultos
     .input-group-btn
     .bootstrap-touchspin-up
     svg
     rect:first-child {
     transition: var(--transition);
     height: 4px;
     width: 34px;
   }
   
   .confirmacion_servicios
     .usuarios_grupos_disponibles
     .adultos
     .input-group-btn
     .bootstrap-touchspin-up
     svg
     rect:last-child {
     transition: var(--transition);
     height: 34px;
     width: 4px;
   }
   
   .content-card-filtro .input-group.bootstrap-touchspin input.usuarios_grupos {
     border: none !important;
     height: 40px;
   }
   
   /* fin botones + - selección de personas */
   
   /* fin seleccion personas */
   
   /* selección hora */
   
   .content-card-filtro h4.text-select-hour {
     text-transform: initial;
     font-size: 12px !important;
     text-align: left;
     font-weight: 500 !important;
   }
   
   #ResultadosVisitas {
     margin-top: 10px;
     float: left;
     width: 100%;
   }
   
   #ResultadosVisitas .msg_error {
     padding-left: 0;
     margin-top: 8px;
   }
   
   .info_servicio .radio.inputs-horas {
     margin: 8px 0;
     display: flex;
     flex-wrap: wrap;
     gap: 8px;
   }
   
   .info_servicio .radio.inputs-horas label {
     width: auto;
     margin: 0 !important;
     padding: 6px 16px;
     text-align: center;
     border: 1px solid var(--neutral-20);
     transition: var(--transition);
     border-radius: 2px;
   }
   
   .info_servicio .radio.inputs-horas label:hover {
     border: 1px solid var(--black) !important;
     background-color: var(--black);
     color: var(--white);
   }
   
   .info_servicio .radio.inputs-horas label.hour-selected,
   .info_servicio .radio.inputs-horas label.hour-selected:hover {
     border: 1px solid var(--main) !important;
     background-color: var(--main);
     color: var(--white);
   }
   
   .info_servicio .radio.inputs-horas label input {
     position: absolute;
     visibility: hidden;
   }
   
   .info_servicio .radio.inputs-horas label span {
     display: block;
     font-weight: 700;
     font-size: 12px;
     transition: var(--transition);
     cursor: pointer;
     letter-spacing: 0px;
     font-family: var(--typo-secondary);
   }
   
   .info_servicio .radio.inputs-horas label:hover span {
     color: var(--white);
   }
   
   .info_servicio .radio.inputs-horas label.hour-selected span,
   .info_servicio .radio.inputs-horas label.hour-selected:hover span {
     color: var(--white);
   }
   
   .info_servicio em {
     display: block;
     width: 100%;
     margin: 0 0 20px 0;
     padding: 0 0 0 0;
     text-align: left;
     font-size: 13px;
   }
   
   .info_servicio em a {
     color: #111;
   }
   
   .info_servicio em a:hover {
     color: var(--neutral-80);
   }
   
   .resultados-horarios-posibles .personas_minimo {
     margin-bottom: 20px;
     margin-top: 0;
   }
   
   .info_servicio .enviar_visita {
     margin-top: 20px;
     width: 100%;
     margin-bottom: 20px;
   }
   
   .info_servicio .enviar_visita:hover {
     color: var(--white) !important;
     background-color: var(--black) !important;
   }
   button[disabled],
   html input[disabled] {
     cursor: default;
     opacity: 0.2;
   }
   #MensajeContacto {
     display: inline-block;
     color: var(--neutral-60);
     font-size: 12px !important;
     font-weight: 400;
     line-height: 16px;
     letter-spacing: 0px;
   }
   
   #MensajeContacto em a {
     font-weight: 600;
     transition: var(--transition);
     color: var(--neutral-60);
   }
   
   #MensajeContacto em a:hover {
     color: var(--neutral-80);
     text-decoration: underline;
   }
   
   /* fin selección hora */
   
   /* selección para regalar */
   .visita-regalar .info_servicio_cabecera {
     width: 100%;
     display: flex;
     margin-bottom: 32px;
   }
   
   .visita-regalar .info_servicio_cabecera .imagen-visita-detalle {
     width: calc(100% / 2 - 0px);
     height: auto;
   }
   @media only screen and (max-width: 1080px) {
     .texto-regala-detalle {
       padding: 20px 20px !important;
     }
   }
   .texto-regala-detalle {
     position: relative;
     margin-bottom: 0px;
     margin-top: 0px;
     width: 50%;
     background-color: transparent;
     padding: 0px 40px;
   }
   
   .visita-regalar .info_servicio_cabecera .title-visita-regalo {
     width: 100%;
   }
   
   .visita-regalar .info-visita-detalle {
     width: 100%;
     padding: 0px;
     border: 0px;
     background-color: transparent;
   }
   
   .visita-regalar .title-visita-regalo p.nombre-bodega {
     font-size: 14px;
   
     font-weight: 500;
   }
   
   .visita-regalar .title-visita-regalo h1 {
     display: inline-block;
     width: 100%;
     margin: 0 0 0 0;
     padding: 0 0 25px;
     font-family: var(--typo-secondary);
     font-weight: 800;
     font-size: 24px;
     letter-spacing: 0.3px;
     color: var(--neutral-80);
     line-height: initial;
   }
   
   .visita-regalar .ancla-reserva {
     display: flex;
     margin-top: 24px;
   }
   
   .visita-regalar #punto-ancla {
     display: flex;
   }
   
   .confirmacion_servicios.confirmacion_servicios_regalo {
     padding: 40px;
     border: 1px solid var(--neutral-20);
     margin: 0 0 24px;
   }
   
   /* .resumen-regala-visita {
       margin-bottom: 24px;
       border: 1px solid var(--neutral-10);
       padding: 32px;
       background-color: rgba(var(--white-rgb), 0.4);
       border: opacity 0.5;
   } */
   
   .resumen-regala-visita .name-visit-resume {
     padding-right: 20px;
     margin-right: 20px;
   }
   
   .resumen-regala-visita .date-visit-resume:nth-child(2) {
     font-family: inherit;
     letter-spacing: inherit !important;
     font-size: inherit;
     color: inherit;
   }
   
   .confirmacion_servicios_regalo .Filtros .content-card-filtro {
     display: flex;
     flex-wrap: wrap;
     gap: 40px;
   }
   
   .confirmacion_servicios_regalo .Filtros .content-card-filtro .adultos {
     width: calc(100% / 3 - 28px);
     margin: 0;
   }
   
   #FormCompraEvento .confirmacion_servicios.confirmacion_servicios_regalo {
     border: 1px solid var(--neutral-10);
     padding: 40px;
   }
   
   /* fin selección para regalar */
   
   /* oculta el botón de contacto cuando no está disponible la reserva */
   #fila-contacto {
     display: none;
     padding-top: 0;
   }
   
   #fila-contacto a {
     font-size: 16px;
     font-weight: 500;
   }
   
   /* fin oculta el botón de contacto cuando no está disponible la reserva */
   
   @media only screen and (max-width: 810px) {
     .visita-regalar .info_servicio_cabecera .imagen-visita-detalle {
       width: 100%;
       max-height: 320px;
     }
   
     .texto-regala-detalle {
       width: 100%;
     }
   
     .visita-regalar .title-visita-regalo p.nombre-bodega {
       font-size: 18px;
     }
   
     .visita-regalar .info_servicio_cabecera .title-visita-regalo {
       width: 100%;
       padding-left: 0;
       padding-bottom: 0;
     }
   
     .visita-regalar .title-visita-regalo h1 {
       font-size: 32px;
     }
   
     .visita-regalar .ancla-reserva {
       margin: 16px 0;
     }
   }
   
   @media only screen and (max-width: 767px) {
     .visita-regalar .info_servicio_cabecera {
       gap: 8px;
     }
   
     .visita-regalar .info_servicio_cabecera .imagen-visita-detalle {
       max-height: 200px;
     }
   
     .visita-regalar .title-visita-regalo p.nombre-bodega {
       font-size: 16px;
       margin-bottom: 0;
     }
   
     .visita-regalar .title-visita-regalo h1 {
       padding: 16px 0 12px;
       font-size: 24px;
       max-width: 100%;
     }
   
     .visita-regalar .ancla-reserva {
       margin: 12px 0 8px;
     }
   
     .confirmacion_servicios.confirmacion_servicios_regalo {
       padding: 24px;
     }
   
     .confirmacion_servicios_regalo .Filtros .content-card-filtro {
       gap: 24px;
     }
   
     .confirmacion_servicios_regalo .Filtros .content-card-filtro .adultos {
       width: 100%;
     }
   
     #FormCompraEvento .confirmacion_servicios.confirmacion_servicios_regalo {
       padding: 24px;
     }
   }
   
   /* fin card filtros */
   
   /* ------------------------------------------------------ CLOSE: PASO 1: Selección Fecha Idioma Número personas  ------------------------------------------------------ */
   
   /*  ----------------------------------------------------------------------------------------------------------------------------
       ----------------------------------------------------------------------------------------------------------------------------
           OPEN: Paso 2 Resumen Extras Datos Formas de pago
       ----------------------------------------------------------------------------------------------------------------------------
       ----------------------------------------------------------------------------------------------------------------------------  */
   
   #paso_2_all,
   #paso_3_all,
   #paso_resumen_all {
   }
   
   #paso_extras_compra {
     display: none;
   }
   #paso_extras_compra .reserva-tramite {
     width: 100%;
   }
   #paso_extras_compra .botones_completar_reserva {
     width: 100%;
   }
   
   #DivTusExtras {
     display: none;
   }
   
   /* resumen visita */
   #FormCompraServicio .card-visita {
     width: 100%;
   }
   
   .card-visita.botones_completar_reserva {
     background: none;
     margin: 24px 0 0;
   }
   
   .datos-servicio-container {
     padding: 16px 0 24px;
     border-bottom: 1px dashed var(--neutral-20);
     display: flex;
     align-items: center;
   }
   
   .datos-servicio-container #StrNombreInstalacion {
     display: none;
   }
   
   .datos-servicio-container .date-visit-resume {
     border-right: 1px solid var(--neutral-20);
     padding: 0px 20px;
   }
   
   .datos-servicio-container .date-visit-resume:last-child {
     border-right: 0px solid var(--neutral-20);
     padding: 0px 20px;
   }
   
   .title-visit {
     font-weight: 600;
     font-size: 18px;
     color: var(--neutral-80);
     margin-top: 15px;
   }
   
   .date-visit-resume {
     font-weight: 400;
     font-size: 14px;
   }
   
   .date-visit-resume strong {
     font-weight: 500 !important;
   }
   
   .date-visit-resume:first-child {
     font-size: 12px;
     letter-spacing: 0px;
   }
   
   .date-visit-resume:nth-child(2) {
     letter-spacing: 0 !important;
     padding-left: 0px;
     color: var(--black);
   }
   .date-visit-resume:nth-child(1) {
     display: none;
   }
   
   .date-visit-resume:nth-child(2) strong {
     font-weight: 600 !important;
   }
   
   .date-visit-resume.date-visit-resume-ant {
     font-size: 14px;
     color: var(--black);
     font-family: var(--typo-secondary);
     text-transform: inherit;
     opacity: 0.3;
     font-style: italic;
   }
   
   .date-visit-resume.date-visit-resume-ant:nth-child(1) {
     margin-top: -16px;
   }
   
   .date-visit-resume.date-visit-resume-ant:nth-child(2) {
     margin-bottom: 8px;
   }
   
   .datos-servicio {
     font-family: var(--typo-secondary) !important;
   }
   
   /* tabla resumen */
   .carrito-tabla {
     padding: 24px 0 0;
   }
   
   .tabla-resumen {
     border: none !important;
     margin: 0 !important;
     width: 100%;
   }
   
   .tabla-resumen tr td {
     padding: 2px 0;
     border: none;
     line-height: 100%;
     font-size: 14px;
     letter-spacing: 0px;
     font-weight: 500;
     width: calc(100% / 3 - 20px);
   }
   
   .tabla-resumen tr th {
     padding: 0 0 12px;
     width: calc(100% / 3 - 20px);
   }
   
   .tabla-resumen tr th:nth-child(2) {
   }
   
   .tabla-resumen tr th:nth-child(3) {
   }
   
   .tabla-resumen th h5 {
     font-weight: 700;
     font-size: 14px;
     letter-spacing: 0px;
     margin: 0;
     color: var(--main);
     font-family: var(--typo-secondary) !important;
     padding-bottom: 0px;
   }
   .tabla-resumen th {
     border: 0px;
   }
   
   #trcupones td {
     padding: 16px 0;
     font-weight: 500;
   }
   
   .tabla-resumen tr td .num_usuarios {
     border: none;
     display: block;
     width: 100%;
     padding: 0;
   }
   
   .tabla-resumen tr td input {
     background: none;
   }
   
   .tabla-resumen tr.totales {
     background-color: var(--main);
     color: var(--white);
   }
   
   .tabla-resumen tr.totales td {
     color: var(--white);
     font-size: 16px;
     font-weight: 700;
     width: auto;
   }
   
   .tabla-resumen tr.totales td.total_precio {
     font-weight: 800;
     color: var(--white);
     font-size: 18px;
   }
   
   .tabla-resumen tr td label {
     margin: 0 !important;
     padding: 4px 0;
     font-weight: 500 !important;
   }
   
   /* fila tabla extra */
   
   .tabla-resumen tr td.delete-mejora .fa {
     color: var(--error);
     cursor: pointer;
     font-size: 24px;
     padding-top: 5px;
     background: none !important;
     line-height: 24px;
     transition: var(--transition);
   }
   
   .tabla-resumen tr td.delete-mejora .fa:hover {
     color: var(--error);
   }
   
   tr.extra-mejora-tabla td {
     color: var(--neutral-60);
     font-weight: 500;
   }
   
   tr.extra-mejora-tabla td input {
     text-align: center;
     border: none;
     color: var(--neutral-60);
     width: 100%;
     font-style: initial;
   }
   
   tr.extra-mejora-tabla td.casi-last {
     font-style: initial;
   }
   
   /* fin fila tabla extra */
   
   /* fin tabla resumen */
   
   @media only screen and (max-width: 810px) {
     .datos-servicio-container {
       flex-wrap: wrap;
       margin-top: 16px;
     }
   
     .name-visit-resume {
       display: block;
       font-size: 14px;
     }
   
     .date-visit-resume {
       width: 100%;
       margin-right: 0;
       padding: 0px !important;
       border: 0 !important;
     }
     .tabla-resumen tr {
       padding: 0px 30px 0px 30px !important;
     }
     .reserva-tramite {
       padding: 30px !important;
     }
     .cuerpo_servicio {
       padding: 30px !important;
     }
   
     .date-visit-resume:last-child {
       padding-right: 0;
       margin-right: 0;
       border-right: none;
     }
   
     .date-visit-resume.date-visit-resume-ant {
       font-size: 14px;
     }
   
     #mejora-tus-visitas {
       margin: 0;
       padding: 16px 0 0;
       display: flex;
       gap: 24px;
       flex-wrap: wrap;
       align-content: flex-start;
     }
   }
   
   @media only screen and (max-width: 767px) {
     .vuelta-pago .card-visita .title-card-filtro {
       padding: 20px 20px;
     }
     .content-card-filtro .text-expli {
       padding: 0px 30px 20px 60px !important;
       margin: 0px;
     }
     .content-card-filtro .datos-servicio-container {
       padding: 20px 30px 20px 30px !important;
       margin: 0px;
     }
   
     .volver_carrito {
       width: 100%;
       text-align: center;
     }
   
     .btn-solid-main {
       width: 100%;
       text-align: center;
     }
   
     .finalizar_compra {
       flex-direction: column-reverse;
       gap: 20px;
     }
     .tabla-resumen tr td,
     .tabla-resumen tr td label {
       font-size: 12px;
     }
   
     .tabla-resumen tr.totales td {
       font-size: 10px;
       letter-spacing: 0;
     }
   
     .tabla-resumen tr.totales td.total_precio {
       font-size: 14px;
     }
   
     .date-visit-resume:nth-child(2) {
       font-size: 14px;
     }
   }
   
   /* fin resumen visita */
   
   /* extras mejora tus visitas */
   
   #mejora-tus-visitas {
     margin: 0;
     padding: 0;
     display: flex;
     gap: 24px;
     flex-wrap: wrap;
     align-content: flex-start;
   }
   
   #mejora-tus-visitas li.card-visita {
     list-style: none;
     width: calc(50% - 12px);
     margin-bottom: 0;
     padding: 0;
   }
   
   .content-extra {
     display: flex;
     align-items: center;
     padding-right: 16px;
   }
   
   .textos-card-extras {
     padding: 0 32px 0 24px;
     border-right: 0.5px solid var(--neutral-20);
   }
   
   .mejora-texto-titulo {
     align-content: center;
     display: flex;
     align-items: center;
     font-weight: 400;
     transition: var(--transition);
     font-size: 16px;
     color: var(--neutral-80);
   }
   
   .mejora-texto-titulo strong {
     font-weight: 600;
   }
   
   .mejora-texto {
     font-style: italic;
     align-content: center;
     display: flex;
     align-items: center;
     padding: 0;
     font-weight: 400;
     transition: var(--transition);
     line-height: 21px;
     color: var(--neutral-80);
     font-size: 14px;
     letter-spacing: 0px;
   }
   
   .mejora-precio {
     padding-left: 30px;
   
     letter-spacing: 0px;
     font-size: 11px;
     color: var(--neutral-80);
   }
   
   .usuario_grupo_precio {
     display: flex;
     align-items: center;
   }
   
   .mejora-precio span {
     font-size: 20px;
     font-family: var(--typo-secondary);
     padding-left: 8px;
     display: inline-block;
   }
   
   .error_anadir_extra {
     font-size: 12px;
     padding-top: 10px;
     display: block;
   }
   
   .mejora-enviar {
     align-items: center;
     display: flex;
   }
   
   .mejora-enviar .enviar_extra {
     padding: 0;
     display: block;
     width: 45px;
     height: 45px;
     line-height: 45px;
     background: none;
     color: var(--neutral-80);
     border: 1px solid var(--neutral-80);
     transition: var(--transition);
   }
   
   .mejora-enviar .enviar_extra:hover {
     background: var(--neutral-80);
     color: var(--neutral-50);
     border: 1px solid var(--neutral-80);
   }
   
   .mejora-enviar button.enviar_extra i {
     font-size: 16px;
     line-height: 45px;
   }
   
   #mejora-extra .msg_error {
     padding: 0;
     background: none;
     color: var(--error);
     font-weight: 300;
     font-size: 12px;
   }
   
   @media only screen and (max-width: 810px) {
     #mejora-tus-visitas li.card-visita {
       width: calc(100% / 2 - 15px);
     }
   
     #mejora-tus-visitas {
       margin: 0;
       padding: 16px 0 0;
     }
   
     #mejora-tus-visitas li.card-visita {
       width: 100%;
       margin: 0;
     }
   }
   
   @media only screen and (max-width: 767px) {
     p.text-expli {
       padding-left: 0px;
     }
     #mejora-tus-visitas {
       gap: 20px;
       padding-top: 24px;
     }
   
     .content-extra {
       padding-right: 0;
       padding-bottom: 16px;
       border-bottom: 1px solid var(--neutral-10);
       flex-wrap: wrap;
     }
   
     li:last-child .content-extra {
       padding-bottom: 0;
       border-bottom: none;
     }
   
     .textos-card-extras {
       padding: 0 0 0 24px;
       border-right: none;
       width: calc(100% - 69px);
     }
   
     .mejora-precio {
       padding-left: 69px;
       padding-top: 12px;
     }
   }
   
   /* fin extras mejora tus visitas */
   
   /* tus datos */
   .text-expli .campos-obligatorios {
     font-style: italic;
     font-size: 12px;
     padding-left: 10px;
     color: var(--neutral-60);
   }
   
   .cont-datos-personales {
     display: flex;
     align-items: flex-start;
     gap: 8px 24px;
     flex-wrap: wrap;
     align-content: flex-start;
   }
   
   .cont-datos-personales .linea_datos {
     padding: 0;
   }
   
   #DivContenidoExtras .linea_datos {
     margin-top: 16px;
     width: calc(100% / 2 - 25px);
   }
   
   .linea_datos {
     margin-top: 16px;
     width: calc(100% / 2 - 12px);
   }
   
   .datos-visitas .rotulo {
     font-family: var(--typo-secondary);
   }
   
   .datos-visitas .rotulo strong {
     font-family: var(--typo-secondary);
   
     font-weight: 600;
     padding-left: 5px;
   }
   
   #section-visitas .cuerpo_servicio .linea_datos .label-datos {
     margin: 4px !important;
     font-size: 12px;
     color: var(--black);
     font-family: var(--typo-secondary);
     font-weight: 600 !important;
     display: none;
   }
   
   #section-visitas .cuerpo_servicio .linea_datos .label-datos sup {
     font-size: 14px;
     top: 0;
     line-height: 14px;
     font-family: var(--typo-secondary);
     bottom: initial;
   }
   
   #section-visitas .cuerpo_servicio .linea_datos input.form-control,
   #section-visitas .cuerpo_servicio .linea_datos textarea.form-control {
     height: 48px;
     text-align: left;
     border: 1px solid var(--neutral-20);
     padding: 0 16px;
     text-transform: initial;
     font-weight: 500;
     font-size: 14px;
     border-radius: 4px;
     background: white;
   }
   
   #section-visitas .cuerpo_servicio .linea_datos input.form-control:hover,
   #section-visitas .cuerpo_servicio .linea_datos textarea.form-control:hover {
     background-color: var(--white);
   }
   
   #section-visitas .cuerpo_servicio .linea_datos input.form-control:focus,
   #section-visitas .cuerpo_servicio .linea_datos textarea.form-control:focus {
     border-color: var(--azul);
     outline: 4px solid rgba(var(--main-rgb), 0.2);
     outline-offset: -5px;
     background-color: var(--white);
   }
   
   #section-visitas .cuerpo_servicio .linea_datos input.form-control::placeholder,
   #section-visitas
     .cuerpo_servicio
     .linea_datos
     textarea.form-control::placeholder {
     color: var(--neutral-60) !important;
     font-weight: 400;
     text-transform: initial;
     letter-spacing: 0;
     opacity: 0.5;
     font-family: var(--typo-secondary);
   }
   
   #section-visitas .cuerpo_servicio .linea_datos textarea.form-control {
     height: 120px;
     line-height: 140%;
   }
   
   @media only screen and (max-width: 767px) {
     .text-expli .campos-obligatorios {
       padding-left: 0;
       display: block;
     }
   
     .text-expli {
       margin-bottom: 0;
     }
   
     .linea_datos {
       width: 100%;
     }
   
     #section-visitas textarea.form-control {
       height: 100px;
     }
   }
   
   /* fin tus datos */
   
   /* formas pago */
   
   #FormasPago {
     display: flex;
     align-items: center;
     gap: 8px 24px;
     flex-wrap: wrap;
     align-content: flex-start;
     padding: 0 0 24px;
   }
   
   /* card tipo pago */
   #FormasPago .pago {
     margin: 16px 0 0;
     padding: 0;
     width: auto;
     background: none;
   }
   
   #FormasPago .pago label {
     padding: 16px 24px 16px 68px;
     margin: 0 !important;
     color: var(--black);
     font-size: 14px;
     line-height: 18px;
     font-weight: 600 !important;
     background-repeat: no-repeat;
     background-size: 40px;
     background-position: center left 16px;
     cursor: pointer;
     border: 1px solid var(--black);
     transition: var(--transition);
     height: 52px;
     border-radius: 4px;
   
     font-family: var(--typo-secondary);
   }
   
   #FormasPago .pago label:hover {
     border: 1px solid var(--main);
     color: var(--white);
     background-color: var(--main);
     background-position: bottom 5px left 16px;
   }
   
   #FormasPago .pago.selected label,
   #FormasPago .pago.selected label:hover {
     border: 1px solid var(--main);
     color: var(--white);
     background-color: var(--main);
     background-position: bottom 5px left 16px;
   }
   
   /* icons para cada tipo de pago */
   #FormasPago .pago.pago_en_bodega label {
     background-image: url(/wp-content/plugins/visitas/modules/visitas/reservas/images/pago-bodega-icon.svg);
   }
   
   #FormasPago .pago.tarjeta_de_debito_o_credito label {
     background-image: url(/wp-content/plugins/visitas/modules/visitas/reservas/images/pago-card-icon.svg);
   }
   
   #FormasPago .pago.mercado_pago label {
     background-image: url(/wp-content/plugins/visitas/modules/visitas/reservas/images/pago-mercado-icon.svg);
   }

   #FormasPago .pago.pago_con_tarjeta label {
     background-image: url(/wp-content/plugins/visitas/modules/visitas/reservas/images/pago-card-icon.svg);
   }
   
   #FormasPago .pago.pix label {
     background-image: url(/wp-content/plugins/visitas/modules/visitas/reservas/images/pago-plexo-icon.svg);
     background-size: 28px;
   }
   
   #FormasPago .pago.bizum label {
     background-image: url(/wp-content/plugins/visitas/modules/visitas/reservas/images/pago-bizum-icon.svg);
   }
   
   #FormasPago .pago.paypal label {
     background-image: url(/wp-content/plugins/visitas/modules/visitas/reservas/images/pago-paypal-icon.svg);
   }
   
   #FormasPago .pago.apple_pay label {
     background-image: url(/wp-content/plugins/visitas/modules/visitas/reservas/images/pago-apple-icon.svg);
   }
   
   #FormasPago .pago.google_pay label {
     background-image: url(/wp-content/plugins/visitas/modules/visitas/reservas/images/pago-google-icon.svg);
   }
   
   #FormasPago .pago.pago_en_instalacion label,
   #FormasPago .pago.pago_en_la_instalacion label {
     background-image: url(/wp-content/plugins/visitas/modules/visitas/reservas/images/pago-instalacion-icon.svg);
   }
   
   #FormasPago .pago.gratuito label {
     background-image: url(/wp-content/plugins/visitas/modules/visitas/reservas/images/pago-gratis-icon.svg);
   }
   
   /* fin icons para cada tipo de pago */
   
   #FormasPago .pago label input {
     width: 0;
     height: 0;
     opacity: 0;
   }
   
   /* fin card tipo pago */
   
   @media only screen and (max-width: 767px) {
     #FormasPago .pago {
       width: 100%;
     }
   
     #FormasPago .pago label {
       width: 100%;
     }
   }
   
   /* fin formas pago */
   
   /* botones cancelar y continuar */
   
   /* fin botones cancelar y continuar */
   
   /* ------------------------------------------------------ CLOSE: Paso 2 Resumen Extras Datos Formas de pago  ------------------------------------------------------ */
   
   /*  ----------------------------------------------------------------------------------------------------------------------------
       ----------------------------------------------------------------------------------------------------------------------------
           OPEN: Paso 3 Confirmar compra
       ----------------------------------------------------------------------------------------------------------------------------
       ----------------------------------------------------------------------------------------------------------------------------  */
   
   /* datos reserva */
   .datos-reserva-ok {
     text-align: left;
   }
   
   .datos-reserva .datos-visitas.fecha {
     /* border-bottom: 0.5px solid var(--black);
       padding: 12px 0 16px;*/
   }
   
   .datos-reserva .datos-visitas.fecha .title-visit {
     margin: 0;
     font-family: var(--typo-secondary) !important;
   }
   
   .datos-reserva .datos-visitas.fecha .title-visit .date-visit-resume {
     font-size: 16px;
     text-transform: inherit;
   }
   
   @media only screen and (max-width: 767px) {
     .datos-reserva .datos-visitas.fecha .date-visit-resume {
       font-size: 13px;
     }
   }
   
   /* fin datos reserva */
   
   /* cupón descuento */
   #cupones {
     visibility: hidden;
   }
   
   #cupones .cont-datos-personales {
     margin-top: 24px;
     display: flex;
     align-items: center;
     gap: 16px;
   }
   
   #cupones .linea_datos {
     width: 100%;
     max-width: 320px;
     margin: 0;
   }
   
   #cupones .contiene-cupon #validar_cupon {
     padding: 0 16px;
     color: var(--black);
     font-size: 14px;
     line-height: 14px;
     letter-spacing: 0px;
     font-weight: 600 !important;
     cursor: pointer;
     border: 2px solid var(--black);
     transition: var(--transition);
     font-family: var(--typo-secondary);
   
     height: 48px;
     border-radius: 0px;
     background: none;
   }
   
   #cupones .contiene-cupon #validar_cupon:hover {
     background-color: var(--black);
     color: var(--white);
   }
   
   .cont-datos-personales #cupon-error {
     order: 3;
     width: 100%;
     margin-top: 0 !important;
   }
   
   @media only screen and (max-width: 767px) {
     #cupones {
       padding-bottom: 32px;
       margin-top: 0;
     }
   
     #cupones .cont-datos-personales {
       gap: 8px;
     }
   
     #cupones .linea_datos {
       width: 100%;
       max-width: 100%;
     }
   
     #cupones .contiene-cupon {
       width: 100%;
     }
   
     #cupones .contiene-cupon #validar_cupon {
       height: 40px;
     }
   }
   
   @media only screen and (max-width: 1600px) {
     #paso_3_all_confirmar .datos-reserva {
     }
   
     #paso_3_all .datos-reserva {
       width: 100% !important;
     }
   }
   
   /* fin cupón descuento */
   
   /* tus datos */
   .card-visita.tus-datos-personales {
     float: left;
     width: 100%;
     padding: 32px 0;
     border-radius: 28px;
   }
   
   /*----------CAMPOS EXTRA----------*/
   
   #DivExtrasDisponibles p {
     font-family: var(--typo-secondary);
   }
   
   #DivExtrasDisponibles .confirmacion_servicios {
     padding: 0;
     background: none;
     border: none;
     border-radius: 0;
   }
   
   #DivExtrasContenido {
     display: flex;
     gap: 40px;
     flex-wrap: wrap;
     width: 100%;
     padding: 0px !important;
     border: 0px !important;
   }
   
   .bloque_extra {
     width: calc(100% / 3 - 30px) !important;
     display: inline-block;
     margin: 0 0 0 0;
     z-index: 2;
     position: relative;
     border: 1px solid var(--neutral-10);
     background-color: var(--white) !important;
     padding: 30px !important;
     border-radius: 28px;
   }
   
   .bloque_extra .box-extra {
     background-color: var(--white);
     position: relative;
     z-index: 1;
     padding: 24px;
     border-radius: 0px;
   }
   
   .bloque_extra .detalle-extras .imagen-extra-detalle {
     height: 200px;
   }
   
   .bloque_extra .detalle-extras .imagen-extra-detalle img {
     object-fit: cover;
     width: 100%;
     height: 100%;
     border-radius: 16px;
   }
   
   .bloque_extra .box-extra h3 {
     font-size: 24px;
     letter-spacing: 0;
     font-weight: 700 !important;
     text-align: center;
     padding-bottom: 20px !important;
     margin: 0px !important;
   
     line-height: 140%;
   }
   
   .bloque_extra .box-extra h4 {
     text-align: center;
   }
   
   .bloque_extra .box-extra .breve_descripcion {
     padding: 20px 0 20px;
   }
   
   .bloque_extra .box-extra .breve_descripcion p {
     margin: 0;
     font-size: 12px;
     white-space: normal;
     min-height: 40px;
     font-family: var(--typo-secondary);
   }
   
   .bloque_extra .btn-solid-neutral {
     letter-spacing: 0.5px !important;
     font-size: 11px;
     border: 2px solid var(--black);
     text-align: center;
     width: auto;
     color: var(--black);
     padding: 13px;
     border-radius: 0px;
   }
   
   .bloque_extra .breve_descripcion p {
     text-align: center;
   }
   
   .bloque_extra #DivExtrasEnlace {
     width: 100%;
     margin: 0 auto;
     left: inherit;
   }
   
   .bloque_extra #DivExtrasEnlace #BtnMisExtras {
     font-size: 14px;
     letter-spacing: 0 !important;
   }
   
   .bloque_extra #DivExtrasEnlace:hover #BtnMisExtras {
     color: var(--white);
     background-color: var(--black);
     text-decoration: none;
   }
   
   #LblIntruccionesAdd {
     font-family: var(--typo-secondary);
   }
   
   #DivContenidoExtrasServicio {
     margin-top: 24px;
     padding-top: 0;
   }
   
   @media only screen and (max-width: 1140px) {
     .bloque_extra {
       width: calc(100% / 2 - 20px) !important;
     }
   }
   
   @media only screen and (max-width: 767px) {
     .bloque_extra {
       width: 100% !important;
     }
   
     #LblIntruccionesAdd,
     #LblIntruccionesDelete {
       line-height: 110%;
       font-size: 14px;
     }
   }
   
   /*--FIN CAMPOS EXTRA--*/
   
   #DivCondicionesExtras p {
     margin: 0;
   }
   
   .tus-datos-personales .cont-datos-persona {
     display: flex;
     align-items: flex-start;
     gap: 16px 30px;
     flex-wrap: wrap;
     align-content: flex-start;
     padding-top: 20px;
   }
   
   .cont-datos-persona .datos-visitas {
     width: calc(100% / 4 - 25px);
   }
   
   .cont-datos-persona .datos-visitas-cinco {
     width: calc(100% / 5 - 25px);
   }
   
   .cont-datos-persona .datos-visitas-confirmacion {
     width: calc(100% / 5 - 25px);
   }
   
   .tus-datos-personales .datos-visitas p {
     padding-bottom: 8px;
     font-family: var(--typo-secondary) !important;
     font-size: 14px !important;
     font-weight: 700 !important;
     color: var(--main);
     margin: 0;
     letter-spacing: 0px;
   }
   
   .tus-datos-personales .datos-visitas strong {
     font-weight: 500;
     font-size: 14px;
     letter-spacing: 0px;
     color: var(--neutral-80);
     text-transform: initial;
   }
   
   .cuerpo_servicio .content-card-filtro .text-expli {
     padding-left: 0px;
   }
   
   .tus-datos-personales .datos-visitas-confirmacion p {
     font-weight: 400;
     font-size: 12px;
     letter-spacing: 0px;
     margin: 0;
     color: var(--neutral-20);
   
     padding-bottom: 5px;
   }
   
   .tus-datos-personales .datos-visitas-confirmacion strong {
     font-weight: 500;
     font-size: 14px;
     letter-spacing: 0px;
     color: var(--neutral-80);
     text-transform: initial;
   }
   
   @media only screen and (max-width: 810px) {
     .cont-datos-persona .datos-visitas,
     .cont-datos-persona .datos-visitas-cinco {
       width: calc(100% / 2 - 15px);
       margin: 5px 0;
     }
   }
   
   /* fin tus datos */
   
   /* condiciones */
   .card-visita.condiciones_servicio {
     border-bottom: 0.5px solid var(--black);
     padding: 32px 0 24px;
     border-top: 0.5px solid var(--black);
   }
   
   .condiciones_servicio .text-condiciones {
     padding-top: 8px;
     font-family: var(--typo-secondary);
     font-size: 12px;
   }
   
   #DivCondiciones p {
     margin-bottom: 0px !important;
   }
   
   .condiciones_servicio .text-condiciones ul {
     list-style: square;
     margin-bottom: 16px;
     padding-left: 16px;
   }
   
   .condiciones_servicio .text-condiciones ul li {
     font-size: 16px;
     font-weight: 400;
     line-height: 130%;
     margin-bottom: 8px;
   }
   
   .condiciones_servicio .text-condiciones a {
     color: var(--black);
     text-decoration: underline;
     font-weight: 600;
   }
   
   .condiciones_servicio .text-condiciones a:hover {
     color: var(--main);
   }
   
   @media only screen and (max-width: 767px) {
     .condiciones_servicio .text-condiciones ul li {
       font-size: 14px;
     }
   }
   
   /* fin condiciones */
   
   .contacto_formulario {
     text-decoration: underline;
     color: var(--black);
   }
   
   .contacto_formulario:hover {
     color: var(--main);
   }
   
   /* formulario por qué */
   
   .formulario-bloque .row {
     margin-top: 20px;
     margin-bottom: 0;
     padding: 0;
   }
   
   .formulario-bloque ul.formulario_preguntas li {
     margin: 5px 0 0;
   }
   
   .formulario-bloque ul.formulario_preguntas li label {
     font-size: 13px;
     font-style: italic;
     line-height: 1.4em;
   }
   
   .formulario-bloque ul.formulario_preguntas li label input {
     margin-top: 3px;
   }
   
   /* fin formulario por qué */
   
   /* mensage sesión caducada */
   
   #session-caducada-msg {
     margin-top: 15px;
   }
   
   /* fin mensage sesión caducada */
   .datos-passbook {
     display: none;
   }
   
   .datos-passbook h4 {
     text-align: left;
   }
   
   @media (max-width: 767px) {
     .datos-passbook {
       display: inline-block;
       width: 100%;
       text-align: left;
     }
   }
   
   .datos-passbook h4.rotulo-compras2 {
     margin: 0 0 8px 0;
     padding: 0;
   }
   
   .wallet-form {
     text-align: left;
     margin-top: 16px;
   }
   
   .wallet-form button[type="submit"] {
     padding: 16px 24px 16px 68px;
     margin: 0;
     color: var(--black);
     font-size: 16px;
     line-height: 16px;
     letter-spacing: 0.02em;
     font-weight: 500;
     cursor: pointer;
     transition: var(--transition);
     background-image: url(/wp-content/plugins/visitas/modules/visitas/reservas/images/wallet-icon.svg);
     background-size: 40px;
     background-position: center left 16px;
     background-repeat: no-repeat;
     border: 2px solid var(--black);
     background-color: transparent;
     border-radius: 0px;
   }
   
   .wallet-form button[type="submit"]:hover,
   .wallet-form button[type="submit"]:focus {
     color: var(--white);
     background-color: var(--black);
     background-position: bottom 5px left 16px;
   }
   
   /* botones volver y confirmar reserva */
   @media only screen and (max-width: 767px) {
     .wallet-form button[type="submit"] {
       padding: 12px 24px 12px 40px;
       font-size: 14px;
       line-height: 14px;
       background-size: 28px;
       background-position: center left 8px;
     }
   
     .wallet-form button[type="submit"]:hover,
     .wallet-form button[type="submit"]:focus {
       background-position: bottom 5px left 8px;
     }
   }
   
   /* fin botones volver y confirmar reserva */
   
   /* ---------- responsive ----------------------------- */
   
   /* ------------------------------------------------------ CLOSE: Paso 3 Confirmar compra  ------------------------------------------------------ */
   
   /* ------------------------------------------------------OPEN: RESERVA FINALIZADA: Resumen  ------------------------------------------------------ */
   
   /* datos reserva finalizada */
   
   .row.vuelta-pago {
     /*display: grid;*/
     margin: 0 auto;
     place-content: center;
     text-align: center;
   }
   
   .row.vuelta-pago .checkmark {
     display: inline-block;
   }
   
   .reserva-fin-resumen .row,
   .datos-personales-resumen .row {
     margin-top: 30px;
   }
   
   .reserva-fin-resumen .row:first-child {
     margin-top: 0;
   }
   
   .reserva-fin-resumen .rotulo {
     font-weight: 500;
     font-size: 16px;
   
     letter-spacing: 2px;
     padding-bottom: 10px;
     color: var(--neutral-80);
     margin: 0;
     font-family: var(--typo-secondary);
   }
   
   .reserva-fin-resumen .localizador {
     text-align: right;
   }
   
   .reserva-fin-resumen .localizador p {
     margin: 5px 0 0;
     border: 0.5px dashed var(--neutral-80);
     padding: 15px 20px 10px 25px !important;
     border-right: 5px solid var(--neutral-80);
     display: inline-block;
     text-align: right;
     margin-bottom: 10px;
   }
   
   .reserva-fin-resumen .localizador p .rotulo-localizador {
     font-size: 16px;
     font-weight: 500;
     color: var(--neutral-80);
     display: block;
     line-height: 100%;
     letter-spacing: 0px;
     margin-bottom: 5px;
   }
   
   .reserva-fin-resumen .localizador p .cifra-localizador {
     font-size: 42px;
     font-weight: 600;
     color: var(--neutral-80);
     display: block;
     line-height: 100%;
   }
   
   .localizador-pago-ok {
     font-size: 32px;
     font-weight: 600;
   }
   
   .vuelta-pago .textos-pagos .google-maps-link {
     display: flex !important;
     margin-top: 50px;
     text-align: center;
     margin-bottom: 50px;
     justify-content: center;
   }
   
   .vuelta-pago .textos-pagos .google-maps-link a {
     padding: 12px 24px 14px 56px;
     margin: 0;
     font-size: 16px;
     line-height: 18px;
     font-weight: 600 !important;
     background-repeat: no-repeat;
     background-size: 36px;
     background-position: center left 16px;
     cursor: pointer;
     border: 2px solid var(--main);
     transition: var(--transition);
     background-image: url(/wp-content/plugins/visitas/modules/visitas/reservas/images/location-icon.svg);
     color: var(--main);
   
     border-radius: 8px;
     font-family: var(--typo-secondary);
   }
   
   .vuelta-pago .textos-pagos .google-maps-link a:hover {
     color: var(--white);
     background-position: bottom 4px left 16px;
     background-color: var(--black);
     text-decoration: none;
   }
   
   .vuelta-pago .textos-pagos .google-maps-link a:focus {
     border: 1px solid var(--main);
     color: var(--white);
     background-color: var(--main);
     background-position: bottom 5px left 16px;
     text-decoration: none;
   }
   
   /* fin reserva finalizada */
   
   /* open modificar reserva */
   #CambioReserva {
     display: inline-block;
     width: 100%;
   }
   
   p.text-expli {
     text-align: left;
   
     font-family: var(--typo-secondary);
     padding-bottom: 20px !important;
     font-size: 12px;
     letter-spacing: 0.2px;
     border-bottom: 1px dashed var(--neutral-20);
     padding-left: 42px;
   }

   p.no-padding-left {
    padding-left: 0px !important;
   }
   
   .row.result-modificar {
     width: 100%;
     text-align: center;
     margin-bottom: 16px;
   }
   
   /* close modificar reserva */
   
   /* botones acciones */
   
   #paso_resumen_all .finalizar_resumen {
     background: none;
     padding: 0;
   }
   
   .btns-reserva-finalizada {
     display: flex;
     justify-content: space-between;
     width: 100%;
   }
   
   /* fin botones acciones */
   
   /* ---------- responsive ----------------------------- */
   
   @media only screen and (max-width: 767px) {
     .reserva-fin-resumen .localizador p {
       width: 100%;
       margin-top: 20px;
       margin-bottom: 0;
       text-align: left;
       border-left: 5px solid var(--neutral-80);
       border-right: 0.5px dashed var(--neutral-80);
       padding-left: 20px !important;
     }
   
     p.text-expli {
       line-height: 110%;
     }
   }
   
   /* ------------------------------------------------------ CLOSE: RESERVA FINALIZADA: Resumen  ------------------------------------------------------ */
   
   /*  ----------------------------------------------------------------------------------------------------------------------------
       ----------------------------------------------------------------------------------------------------------------------------
           OPEN: Pantalla pago OK
       ----------------------------------------------------------------------------------------------------------------------------
       ----------------------------------------------------------------------------------------------------------------------------  */
   
   .vuelta-pago {
     float: left;
     width: 100%;
   }
   
   .imagen-exito {
     width: 180px;
     margin-bottom: 36px;
   }
   
   .textos-pagos p {
     font-size: 14px;
   }
   
   .vuelta-pago .textos-pagos {
     margin-bottom: 24px;
     border: 1px solid var(--neutral-10);
     padding: 40px;
     border-radius: 28px;
     background: var(--white);
   }
   
   .vuelta-pago .datos-reserva {
     margin-bottom: 20px;
     border: 1px solid var(--neutral-10);
     background-color: var(--white);
     border-radius: 28px;
     width: 100%;
     position: initial;
   }
   
   .vuelta-pago .cuerpo_servicio {
     float: left;
     width: 100%;
   }
   
   .text-reserva-ok {
     display: flex;
     align-items: center;
     justify-content: center;
     gap: 30px;
   }
   
   .icon-text-status-pago {
     display: flex;
     align-items: center;
     gap: 16px;
   }
   
   .icon-text-status-pago .checkmark {
     width: 64px;
     height: 64px;
   }
   
   .textos-pagos h2 {
     margin: 0 0 16px;
     padding: 0px 0 0;
     line-height: 100%;
     font-size: 18px;
     font-family: var(--typo-secondary) !important;
     font-weight: 600;
     color: var(--main);
   }
   
   .textos-pagos h2 strong {
     font-weight: 600;
   }
   
   .textos-pagos h3 {
     font-size: 16px;
     font-weight: 600;
     color: var(--black);
     margin-bottom: 16px;
   
     font-family: var(--typo-secondary);
   }
   
   .text-vuelta-parrafo {
     float: left;
     width: 100%;
     padding: 0px 0px 20px 0;
     border-bottom: 0.5px dashed var(--neutral-400);
     margin-bottom: 14px;
   }
   
   .text-vuelta-parrafo p {
     font-size: 16px;
   }
   
   .textos-pagos .localizador-pago-ok {
     display: block;
     text-align: center;
     border-bottom: 1px dashed var(--neutral-300);
     padding-bottom: 20px;
   }
   
   .textos-pagos .localizador-pago-ok strong {
     display: inline-block;
     color: var(--neutral-80);
     padding: 16px 24px;
     font-weight: 700 !important;
     letter-spacing: 0px;
     font-size: 30px;
     font-family: var(--typo-secondary);
     border-radius: 8px;
     border: 2px solid var(--neutral-80);
     margin: 40px 0px;
   }
   
   .card-visita.boton-pago-imprimir,
   .card-visita.boton-pago-imprimir form {
     display: flex;
     justify-content: space-between;
     width: 100%;
   }
   
   .info-localizador-ok {
     display: flex;
     gap: 30px;
   }
   
   .info-localizador-ok p {
     width: 50%;
     text-align: center;
   }
   
   .info-localizador-ok p span {
     display: block;
   
     border-bottom: 0.5px solid var(--neutral-10);
   
     max-width: 500px;
     margin: 0 auto;
     padding-bottom: 5px;
     letter-spacing: 0px;
     color: var(--neutral-20);
   }
   
   .info-localizador-ok p:first-child strong {
     display: block;
     margin: 20px 0 0;
   
     font-size: 18px;
     letter-spacing: 0px;
     font-weight: 600;
     color: var(--neutral-80);
   }
   
   .info-localizador-ok p:last-child strong {
     font-size: 30px;
     line-height: 30px;
     display: block;
     padding: 15px 0 0;
     color: var(--neutral-80);
   }
   
   /* animacion ok */
   
   .path {
     stroke-dasharray: 1000;
     stroke-dashoffset: 0;
     animation: dash 2s ease-in-out;
     -webkit-animation: dash 2s ease-in-out;
   }
   
   .spin {
     animation: spin 2s;
     -webkit-animation: spin 2s;
     transform-origin: 50% 50%;
     -webkit-transform-origin: 50% 50%;
   }
   
   @-webkit-keyframes dash {
     0% {
       stroke-dashoffset: 1000;
     }
   
     100% {
       stroke-dashoffset: 0;
     }
   }
   
   @keyframes dash {
     0% {
       stroke-dashoffset: 1000;
     }
   
     100% {
       stroke-dashoffset: 0;
     }
   }
   
   @-webkit-keyframes spin {
     0% {
       -webkit-transform: rotate(0deg);
     }
   
     100% {
       -webkit-transform: rotate(360deg);
     }
   }
   
   @keyframes spin {
     0% {
       -webkit-transform: rotate(0deg);
     }
   
     100% {
       -webkit-transform: rotate(360deg);
     }
   }
   
   @-webkit-keyframes text {
     0% {
       opacity: 0;
     }
   
     100% {
       opacity: 1;
     }
   }
   
   @keyframes text {
     0% {
       opacity: 0;
     }
   
     100% {
       opacity: 1;
     }
   }
   
   /* fin animacion ok */
   
   /* ---------- responsive ----------------------------- */
   
   @media only screen and (max-width: 767px) {
     .icon-text-status-pago {
       align-items: flex-start;
       gap: 8px;
       flex-wrap: wrap;
     }
   
     .icon-text-status-pago .checkmark {
       width: 56px;
       height: 56px;
     }
   
     .imagen-exito {
       margin-bottom: 8px;
     }
   
     .textos-pagos h2 {
       line-height: 32px;
       font-size: 16px;
       padding-top: 0;
       width: 100%;
       margin-bottom: 0;
     }
   
     .textos-pagos h2 strong {
       font-weight: 600;
       display: block;
     }
   
     .textos-pagos p {
       font-size: 14px;
     }
   
     .text-vuelta-parrafo {
       padding: 16px 0;
     }
   
     .text-vuelta-parrafo p {
       font-size: 16px;
       margin-bottom: 0;
     }
   
     .vuelta-pago .textos-pagos .google-maps-link a {
       padding: 8px 24px 8px 40px;
       font-size: 14px;
       line-height: 16px;
       background-size: 28px;
       background-position: center left 8px;
     }
   
     .vuelta-pago .textos-pagos .google-maps-link a:hover,
     .vuelta-pago .textos-pagos .google-maps-link a:focus {
       background-position: bottom 2px left 8px;
     }
   }
   
   /* ------------------------------------------------------ CLOSE: Pantalla pago OK  ------------------------------------------------------ */
   
   /* ------------------------------------------------------OPEN: PANTALLA PAGO ERROR  ------------------------------------------------------ */
   
   /* animacion error */
   
   .textos-pagos-error .checkmark {
     margin-top: 20px;
     margin-bottom: 20px;
   }
   
   .path {
     stroke-dasharray: 1000;
     stroke-dashoffset: 0;
   }
   
   .path.circle {
     -webkit-animation: dash 0.9s ease-in-out;
     animation: dash 0.9s ease-in-out;
   }
   
   .path.line {
     stroke-dashoffset: 1000;
     -webkit-animation: dash 0.9s 0.35s ease-in-out forwards;
     animation: dash 0.9s 0.35s ease-in-out forwards;
   }
   
   .path.check {
     stroke-dashoffset: -100;
     -webkit-animation: dash-check 0.9s 0.35s ease-in-out forwards;
     animation: dash-check 0.9s 0.35s ease-in-out forwards;
   }
   
   @-webkit-keyframes dash {
     0% {
       stroke-dashoffset: 1000;
     }
   
     100% {
       stroke-dashoffset: 0;
     }
   }
   
   @keyframes dash {
     0% {
       stroke-dashoffset: 1000;
     }
   
     100% {
       stroke-dashoffset: 0;
     }
   }
   
   @-webkit-keyframes dash-check {
     0% {
       stroke-dashoffset: -100;
     }
   
     100% {
       stroke-dashoffset: 900;
     }
   }
   
   @keyframes dash-check {
     0% {
       stroke-dashoffset: -100;
     }
   
     100% {
       stroke-dashoffset: 900;
     }
   }
   
   @keyframes stroke {
     100% {
       stroke-dashoffset: 0;
     }
   }
   
   /* fin animacion error */
   
   /* textos error */
   
   .imagen-error {
     width: 180px;
     margin-bottom: 36px;
   }
   
   .vuelta-pago-nok .textos-pagos h2 {
   }
   
   /* fin textos error */
   
   /* ------------------------------------------------------ CLOSE: PANTALLA PAGO ERROR  ------------------------------------------------------ */
   
   #servicios_slider {
     max-width: 1020px;
     margin: 0 auto;
   }
   
   /* ···························· inicio IGUALAR ESTILOS ESPACIOS MENU EN VISITAS ·········································· */
   
   #top-menu li a {
     padding-left: 0;
     padding-right: 0;
   }
   
   #top-menu li a:hover {
     background: none;
   }
   
   /* ----------------------------------- 1440px */
   
   /* ···························· fin IGUALAR ESTILOS ESPACIOS MENU EN VISITAS ·········································· */
   
   /* tunear checkbox */
   .forma_pago .checkbox {
     margin: 0 !important;
     display: block;
     padding: 0px 0;
   }
   
   .checkbox .acepto-condiciones label {
     padding: 0 px 0px 0px 20px;
   }
   
   .acepto-condiciones label {
     display: flex;
     align-items: flex-start;
     margin: 12px 0 0 !important;
     position: relative;
     min-height: inherit;
     padding: 1px 0px 0px 1px;
     font-family: var(--typo-secondary);
   }
   .acepto-condiciones label a {
     font-weight: 600;
     font-family: var(--typo-secondary);
   }
   
   .acepto-condiciones label p {
     width: calc(100% - 24px);
     font-size: 12px;
     line-height: 16px;
   }
   
   .acepto-condiciones label p a {
     font-weight: 600;
     transition: var(--transition);
     text-decoration: underline;
     color: var(--black);
     font-family: var(--typo-secondary);
   }
   
   .acepto-condiciones label p a:hover {
     color: var(--main);
   }
   
   .acepto-condiciones label.error {
     margin: 8px 0 0 2px !important;
   }
   
   .acepto-condiciones input {
     width: 0;
     height: 0;
     opacity: 0;
   }
   
   .acepto-condiciones label > span {
     width: 16px;
     height: 16px;
     display: flex;
     justify-content: center;
     border: 1px solid var(--black);
     margin-right: 8px;
     overflow: hidden;
     transition: var(--transition);
   }
   
   .acepto-condiciones label > span:hover {
     border: 1px solid var(--black);
     background-color: var(--black);
   }
   
   .acepto-condiciones input:checked + label > span {
     animation: bounce 250ms;
     border-color: var(--black);
   }
   
   .acepto-condiciones input:checked + label > span:hover {
     background: none;
   }
   
   .acepto-condiciones input:checked + label > span::before {
     content: "";
     position: absolute;
     top: 8px;
     left: 4px;
     border-right: 2px solid transparent;
     border-bottom: 2px solid transparent;
     transform: rotate(45deg);
     transform-origin: 0% 100%;
     animation: checked-box 125ms 250ms forwards;
   }
   
   @keyframes checked-box {
     0% {
       width: 0;
       height: 0;
       border-color: var(--black);
       transform: translate(0, 12px) rotate(45deg);
     }
   
     33% {
       width: 5px;
       height: 0;
       border-color: var(--black);
       transform: translate(0, 4px) rotate(45deg);
     }
   
     100% {
       width: 5px;
       height: 10px;
       border-color: var(--black);
       transform: translate(0, -8px) rotate(45deg);
     }
   }
   
   @keyframes bounce {
     0% {
       transform: scale(1);
     }
   
     33% {
       transform: scale(0.7);
     }
   
     100% {
       transform: scale(1);
     }
   }
   
   /* fin tunear checkbox */
   
   input#reserva_anular {
     display: none;
   }
   
   /*-------------------- INICIO REEMBOLSO ----------------------*/
   .total-reembolso {
     padding-top: 10px;
     padding-bottom: 16px;
     margin-top: 8px;
     border-bottom: 1px dashed var(--neutral-10);
     font-size: 18px;
     margin-bottom: 20px;
     font-family: var(--typo-secondary);
   }
   
   #informacion_reembolso .rotulo-compras2 {
     font-size: 14px;
   }
   #DivAltaEliminarExtras h4 {
     font-family: var(--typo-secondary) !important;
     font-size: 20px;
     font-weight: 700;
   }
   #DivExtrasDisponibles p,
   #DivExtrasDisponibles {
     font-family: var(--typo-secondary) !important;
   }
   
   #DivExtrasDisponibles p {
     font-family: var(--typo-secondary) !important;
     border-bottom: 1px dashed var(--neutral-20);
     padding-bottom: 20px;
     margin-bottom: 20px;
   }
   
   p,
   .entry-content p {
     font-family: var(--typo-secondary);
     letter-spacing: 0.3px;
   }
   
   #informacion_reembolso .instrucciones-localizador .titulo_total,
   #informacion_reembolso .instrucciones-localizador .total_precio {
     font-size: 14px;
   }
   
   #anular-reserva-all {
     display: block;
     float: left;
     width: 100%;
   }
   
   #DivResultadoModificacion .texto-pagos {
     text-align: center;
     display: inline-block;
   }
   
   /*-------------------- FIN REEMBOLSO ---------------------*/
   
   /* ···························· open RESEÑAS ·········································· */
   .section-resenas .et_pb_text h3 {
     font-family: var(--typo-secondary) !important;
     color: var(--neutral-20) !important;
   }
   
   .previa-titulo {
     font-family: montserrat;
     font-size: 12px;
     font-weight: 600;
     letter-spacing: 2px;
   }
   
   .post-titulo {
     font-size: 12px;
     font-family: montserrat;
     font-weight: 500;
     letter-spacing: 2px;
   }
   
   .et_pb_section {
     background-color: transparent !important;
   }
   
   .section-resenas .et_pb_row .module-resenas .ti-widget .ti-reviews-container {
     font-family: var(--typo-secondary) !important;
     margin-bottom: 0;
     color: var(--neutral-80) !important;
   }
   
   .section-resenas
     .et_pb_row
     .module-resenas
     .ti-widget
     .ti-reviews-container
     .ti-review-item
     .ti-inner {
     background: none !important;
     border: none !important;
   }
   
   .section-resenas
     .et_pb_row
     .module-resenas
     .ti-widget
     .ti-reviews-container
     .ti-review-item
     .ti-inner
     .ti-name {
     font-family: var(--typo-secondary) !important;
     letter-spacing: 0.01em;
     color: var(--neutral-80);
     font-size: 16px !important;
   }
   
   .section-resenas
     .et_pb_row
     .module-resenas
     .ti-widget
     .ti-reviews-container
     .ti-review-item
     .ti-inner
     .ti-date {
     font-family: var(--typo-secondary) !important;
     letter-spacing: 0px;
     color: var(--neutral-60);
     opacity: 1;
   }
   
   .section-resenas
     .et_pb_row
     .module-resenas
     .ti-widget
     .ti-reviews-container
     .ti-review-item
     .ti-inner
     .ti-star {
     width: 12px;
     height: 12px;
     margin-right: 4px !important;
   }
   
   .section-resenas
     .et_pb_row
     .module-resenas
     .ti-widget
     .ti-reviews-container
     .ti-review-item
     .ti-inner
     .ti-verified-review {
     width: 12px;
     height: 12px;
     margin-left: 8px !important;
   }
   
   .section-resenas
     .et_pb_row
     .module-resenas
     .ti-widget
     .ti-reviews-container
     .ti-review-item
     .ti-inner
     .ti-review-content {
     font-family: var(--typo-secondary) !important;
     letter-spacing: 0px;
     color: var(--neutral-80);
     line-height: 140% !important;
     height: 88px !important;
   }
   
   .section-resenas
     .et_pb_row
     .module-resenas.module-resenas-google
     .ti-widget
     .ti-reviews-container
     .ti-review-item
     .ti-inner
     .ti-review-content {
     height: 80px !important;
   }
   
   .section-resenas
     .et_pb_row
     .module-resenas
     .ti-widget
     .ti-reviews-container
     .ti-review-item
     .ti-inner
     .ti-review-content
     strong {
     font-family: var(--typo-secondary) !important;
     font-weight: 700 !important;
     letter-spacing: 0px;
     color: var(--neutral-80);
     line-height: 140%;
     padding-bottom: 4px;
     display: inline-block;
     padding-top: 4px;
   }
   
   .section-resenas
     .et_pb_row
     .module-resenas
     .ti-widget
     .ti-footer
     .ti-rating-text {
     padding-top: 16px !important;
     text-align: left;
   }
   
   .section-resenas
     .et_pb_row
     .module-resenas
     .ti-widget
     .ti-footer
     .ti-rating-text
     .nowrap {
     font-family: var(--typo-secondary) !important;
     color: var(--neutral-80) !important;
     letter-spacing: 0px;
   }
   
   .section-resenas
     .et_pb_row
     .module-resenas
     .ti-widget
     .ti-footer
     .ti-rating-text
     .nowrap
     strong {
     color: var(--main) !important;
     font-weight: 700 !important;
   }
   
   .row-buttom-resenas .et_pb_button_module_wrapper {
     margin-top: -40px;
   }
   
   @media only screen and (max-width: 810px) {
     .section-resenas
       .et_pb_row
       .module-resenas
       .ti-widget
       .ti-footer
       .ti-rating-text {
       padding-top: 0 !important;
     }
   
     .row-buttom-resenas .et_pb_button_module_wrapper {
       margin-top: 0;
     }
   }
   
   @media only screen and (max-width: 767px) {
     .section-resenas
       .et_pb_row
       .module-resenas
       .ti-widget
       .ti-reviews-container
       .ti-review-item {
       padding: 0;
     }
   
     .section-resenas
       .et_pb_row
       .module-resenas
       .ti-widget
       .ti-reviews-container
       .ti-review-item
       .ti-inner {
       padding: 0 !important;
     }
   
     .section-resenas
       .et_pb_row
       .module-resenas
       .ti-widget
       .ti-reviews-container
       .ti-controls-line {
       padding: 0 !important;
       margin: 12px 0px 20px;
       height: 1px;
       background: var(--neutral-10);
     }
   
     .section-resenas
       .et_pb_row
       .module-resenas
       .ti-widget
       .ti-reviews-container
       .ti-controls-line
       .dot {
       background: var(--neutral-20);
     }
   
     .section-resenas
       .et_pb_row
       .module-resenas
       .ti-widget
       .ti-footer
       .ti-rating-text {
       padding-bottom: 8px !important;
     }
   }
   
   /* ···························· CLOSE RESEÑAS ·········································· */
   
   /* ···························· TUSVISITAS ·········································· */
   #DivMsnRegalarOK {
     display: none;
   }
   
   #DivMsnCabRegalarOK {
     text-align: center;
     display: inline-block;
   }
   
   #DivEdicionPlazas {
     display: none;
   }
   
   #DivEdicionFechas {
     display: none;
   }
   
   #DivEdicionFechas .Filtros {
     gap: 40px;
   }
   
   #DivCarritoResumenConfirmar {
     display: none;
   }
   
   /*#DivOpcionesModificacion {
       border: 1px solid var(--secondary);
   }*/
   
   #DivOpcionesModificacion .fechaseleccion,
   #DivOpcionesModificacion .resultados-horarios-posibles {
     width: calc(100% / 2 - 20px);
   }
   
   #DivEdicionFechas .Filtros #FechaVisita-selected {
     font-size: 24px;
     padding-bottom: 8px;
   }
   #FechaVisita-selected::before {
     content: "";
     display: inline-block;
     width: 30px;
     height: 30px;
     background: url(/wp-content/uploads/2025/10/calendario.svg) no-repeat center
       center;
     background-size: contain;
     margin-right: 10px;
   }
   
   #FechaVisita-selected {
     display: flex;
     align-items: center;
     margin: 0px;
   }
   
   .box-extra .title-card-filtro::before {
     display: none !important;
   }
   
   .usuarios_grupos_disponibles .title-card-filtro::before {
     content: "";
     display: inline-block;
     width: 30px;
     height: 30px;
     background: url(/wp-content/uploads/2025/10/user.svg) no-repeat center center;
     background-size: contain;
     margin-right: 10px;
   }
   
   .confirmacion_servicios_regalo .title-no-card::before {
     content: "";
     display: inline-block;
     width: 30px;
     height: 30px;
     background: url(/wp-content/uploads/2025/10/user.svg) no-repeat center center;
     background-size: contain;
     margin-right: 10px;
   }
   .confirmacion_servicios_regalo .title-no-card {
     display: flex;
     flex-wrap: wrap;
     font-family: var(--typo-secondary) !important;
     font-weight: 700 !important;
     font-size: 14px !important;
     border-bottom: 1px dashed var(--neutral-20);
     margin-bottom: 15px !important;
     margin-top: -10px !important;
     padding-bottom: 16px;
     align-items: center;
   }
   .usuarios_grupos_disponibles .title-card-filtro {
     display: flex;
     align-items: center;
     margin: 0px;
   }
   
   .resultados-horarios-posibles .title-card-filtro::before {
     content: "";
     display: inline-block;
     width: 30px;
     height: 30px;
     background: url(/wp-content/uploads/2025/10/clock.svg) no-repeat center center;
     background-size: contain;
     margin-right: 10px;
   }
   .resultados-horarios-posibles .title-card-filtro {
     display: flex;
     align-items: center;
     margin: 0px;
   }
   
   @media only screen and (max-width: 980px) {
     #DivOpcionesModificacion .fechaseleccion {
       width: calc(100%);
       float: left;
     }
   
     #DivOpcionesModificacion .resultados-horarios-posibles {
       width: calc(100%);
       float: left;
     }
   }
   
   .datos-visitas-resumen {
     padding-right: 24px;
     margin-left: 24px;
     font-family: var(--typo-secondary);
   
     font-weight: 400;
     font-size: 16px;
     letter-spacing: 0px;
   }
   
   .datos-visitas-resumen strong {
     color: var(--neutral-80);
     font-weight: 600;
     letter-spacing: 0px;
     padding-left: 5px;
   }
   
   .datos-visitas-resumen.regala-people {
     padding: 0px 20px;
     margin: 0;
     font-family: var(--typo-secondary);
     text-transform: inherit;
   }
   
   .card-visita.datos-reserva.regalo-canjeo-fecha {
     border-color: var(--secondary);
   }
   
   .card-visita.datos-reserva.regalo-canjeo-fecha .Filtros {
   }
   
   #DivExtrasSeleccionados {
     display: none;
     padding-top: 16px;
   }
   
   #DivExtrasComprados {
     display: none;
     padding-top: 16px;
   }
   
   #DivExtrasComprados .date-visit-resume {
     font-size: 16px;
     text-transform: inherit;
     color: inherit;
     font-family: inherit;
   }
   
   #DivFormasPagoExtras {
     display: none;
     padding-top: 16px;
   }
   
   #DivTipoEdicionExtras {
     display: none;
     padding-top: 16px;
   }
   
   #DivResumenModificacion {
     display: none;
   }
   
   #informacion_reembolso_modificar {
     display: none;
   }
   
   #TblExtras {
     display: none;
   }
   
   #DivContTipoEdicionExtras {
     display: flex;
     gap: 16px;
     flex-wrap: wrap;
     padding: 15px 0 0;
   }
   
   /* card tipo pago */
   #DivContTipoEdicionExtras .pago {
     margin: 0;
     padding: 0;
     width: auto;
     background: none;
   }
   
   #DivContTipoEdicionExtras .pago label {
     padding: 16px 24px;
     color: var(--black);
   
     font-size: 14px;
     font-family: var(--typo-secondary);
     line-height: 16px;
     letter-spacing: 0px;
     font-weight: 600 !important;
     border: 1px solid var(--black);
     cursor: pointer;
     margin: 0 !important;
     transition: var(--transition);
     border-radius: 0px;
   }
   
   #DivContTipoEdicionExtras .pago label:hover {
     background-color: var(--black);
     color: var(--white);
   }
   
   #DivContTipoEdicionExtras .pago.selected label {
     background-color: var(--secondary);
     border-color: var(--secondary);
     color: var(--white);
     background-position: center bottom 1px;
   }
   
   /* fin icons para cada tipo de pago */
   
   #DivContTipoEdicionExtras .pago label input {
     width: 0;
     height: 0;
     opacity: 0;
     margin: 0px;
   }
   
   /* fin card tipo pago */
   
   @media only screen and (max-width: 810px) {
     #DivContTipoEdicionExtras .pago {
       width: calc(100% / 3 - 20px);
     }
   }
   
   @media only screen and (max-width: 767px) {
     #DivContTipoEdicionExtras {
       gap: 0px 20px;
       margin-top: 10px;
     }
   
     #DivContTipoEdicionExtras .pago {
       width: calc(100% / 2 - 10px);
       margin-top: 5px;
     }
   }
   
   #BtnPreconfirmarEditar {
     display: none;
   }
   
   #BtnConfirmarEditar {
     display: none;
   }
   
   #carritoConfirmarEliminarExtras {
     display: none;
   }
   
   #DivTituloResumenEliminar {
     display: none;
   }
   
   #DivTarifasCambioExtras {
     float: none;
     width: auto;
     padding-top: 0px !important;
     padding-bottom: 0px !important;
   }
   
   #DivTarifasCambio input {
     padding: 12px;
     display: inline !important;
     width: 100%;
     background: var(--neutral-00);
     border-radius: 40px;
     height: 34px;
   }
   
   #DivTarifasCambio .input-group.bootstrap-touchspin {
     margin-top: 14px;
     border: 0px solid var(--neutral-10);
   }
   
   #DivTarifasCambio {
     margin-top: 20px;
     display: flex;
     gap: 24px;
     flex-wrap: wrap;
   }
   
   #DivTarifasCambio .adultos {
     width: calc(100% / 3 - 16px);
     margin: 0;
   }
   
   @media only screen and (max-width: 980px) {
     #DivTarifasCambio .adultos {
       width: 100%;
       margin-top: 10px;
     }
   }
   
   #opciones_modificacion .col-md-4 {
     width: 100%;
   }
   
   #opciones_modificacion {
   }
   
   #DivResumenMovimientos {
     display: none;
     padding-top: 0;
   }
   
   #DivBloqueCondicionesExtras {
     display: none;
   }
   
   /* Historial compras */
   #DivResumenMovimientosContenido {
     display: flex;
     flex-wrap: wrap;
     gap: 24px;
     padding: 16px 0 8px;
   }
   
   #DivResumenMovimientosContenido .bloque_pedido_extra {
     width: calc(100% / 4 - 20px);
     border: 1px solid var(--main);
     padding: 24px;
     transition: var(--transition);
     cursor: pointer;
   }
   
   #DivResumenMovimientosContenido .bloque_pedido_extra:hover {
     color: var(--white);
     background-color: var(--main);
   }
   
   #DivResumenMovimientosContenido .bloque_pedido_extra p {
     color: var(--main);
     border-bottom: 0.5px solid var(--main);
     padding-bottom: 12px;
     transition: var(--transition);
   }
   
   #DivResumenMovimientosContenido .bloque_pedido_extra:hover p {
     color: var(--white);
     border-bottom: 0.5px solid var(--white);
   }
   
   #DivResumenMovimientosContenido .bloque_pedido_extra .bloque-extra-fecha p {
     border-bottom: none;
     padding-bottom: 0;
     margin: 0;
   }
   
   #DivResumenMovimientosContenido .bloque_pedido_extra p span {
     display: block;
   
     font-size: 14px;
     font-weight: 500;
   }
   
   #DivResumenMovimientosContenido .bloque_pedido_extra p strong {
     display: block;
     font-size: 20px;
     padding-top: 4px;
   }
   
   @media only screen and (max-width: 1024px) {
     #DivResumenMovimientosContenido .bloque_pedido_extra {
       width: calc(100% / 3 - 16px);
     }
   }
   
   @media only screen and (max-width: 767px) {
     #DivResumenMovimientos {
       display: none;
       padding-top: 0;
       padding: 0 0 16px;
     }
   
     #DivResumenMovimientosContenido {
       gap: 16px;
     }
   
     #DivResumenMovimientosContenido .bloque_pedido_extra {
       width: calc(100% / 2 - 8px);
       padding: 8px 12px;
     }
   
     #DivResumenMovimientosContenido .bloque_pedido_extra p {
       padding-bottom: 8px;
       margin-bottom: 8px;
     }
   
     #DivResumenMovimientosContenido .bloque_pedido_extra p span {
       font-size: 12px;
       font-weight: 500;
       line-height: 12px;
     }
   
     #DivResumenMovimientosContenido .bloque_pedido_extra p strong {
       font-size: 16px;
       padding-top: 0px;
     }
   }
   
   /* fin Historial compras*/
   
   /* ···························· CLOSE TUSVISITAS ·········································· */
   
   /*---------loader---------*/
   
   #DivPagoInstalacion {
     display: none;
   }
   
   /* ------- OPEN Form CONTACTA enoturismo ------ */
   #section-visitas.row-form-contacto {
     max-width: 1520px;
     margin: 0 auto;
     display: flex;
     gap: 40px;
     width: 100%;
     align-items: flex-start;
   }
   
   #section-visitas.row-form-contacto .row-visitas-ev {
     width: 55%;
   }
   
   #section-visitas.row-form-contacto .row-visitas-ev .info_servicio_cabecera {
     width: 100%;
   }
   
   #section-visitas .row-form-visitas-contact {
     width: calc(45% - 40px);
   }
   
   #fila-contacto form h2 {
     font-size: 28px;
     margin: 0;
     padding: 0 0 16px;
     letter-spacing: 0.01em;
     color: var(--black);
     font-weight: 800;
   }
   
   #fila-contacto form p.text-intro {
     margin: 0;
     padding: 0;
   }
   
   .row-form-visitas-contact .cont-datos-personales {
     gap: 0;
   }
   
   .row-form-visitas-contact .cont-datos-personales .linea_datos,
   .row-form-visitas-contact .cont-datos-personales .checkbox {
     width: 100%;
   }
   
   .row-form-visitas-contact .cont-datos-personales .linea_datos:first-child {
     margin-top: 0;
   }
   
   .row-form-visitas-contact .cont-datos-personales .linea_datos .label-datos {
     margin: 0 !important;
   
     font-size: 12px;
     color: var(--black);
     width: 100%;
   }
   
   #section-visitas
     .row-form-visitas-contact
     .cont-datos-personales
     .linea_datos
     .label-datos
     input.form-control,
   #section-visitas
     .row-form-visitas-contact
     .cont-datos-personales
     .linea_datos
     .label-datos
     textarea.form-control {
     height: 48px;
     text-align: left;
     border: 1px solid var(--black);
     padding: 0 16px;
     text-transform: initial;
     font-weight: 500;
     font-size: 18px;
   }
   
   #section-visitas
     .row-form-visitas-contact
     .cont-datos-personales
     .linea_datos
     .label-datos
     textarea.form-control {
     height: 120px;
   }
   
   #section-visitas
     .row-form-visitas-contact
     .cont-datos-personales
     .linea_datos
     .label-datos
     input.form-control:hover,
   #section-visitas
     .row-form-visitas-contact
     .cont-datos-personales
     .linea_datos
     .label-datos
     textarea.form-control:hover {
     background-color: var(--white);
   }
   
   #section-visitas
     .row-form-visitas-contact
     .cont-datos-personales
     .linea_datos
     .label-datos
     input.form-control:focus,
   #section-visitas
     .row-form-visitas-contact
     .cont-datos-personales
     .linea_datos
     .label-datos
     textarea.form-control:focus {
     border-color: var(--main);
     outline: 4px solid rgba(var(--main-rgb), 0.2);
     outline-offset: -5px;
     background-color: var(--white);
   }
   
   #section-visitas
     .row-form-visitas-contact
     .cont-datos-personales
     .linea_datos
     .label-datos
     input.form-control::placeholder,
   #section-visitas
     .row-form-visitas-contact
     .cont-datos-personales
     .linea_datos
     .label-datos
     textarea.form-control::placeholder {
     color: var(--neutral-20) !important;
     font-weight: 400;
     text-transform: initial;
     opacity: 0.8;
     letter-spacing: 0;
   }
   
   .row-form-visitas-contact .cont-datos-personales .checkbox .wpcf7-list-item {
     margin: 0;
   }
   
   .row-form-visitas-contact
     .cont-datos-personales
     .checkbox
     .wpcf7-list-item
     .wpcf7-list-item-label {
     font-size: 14px;
   }
   
   .row-form-visitas-contact .cont-datos-personales .checkbox .wpcf7-list-item a {
     font-weight: 600 !important;
     transition: var(--transition);
     text-decoration: underline;
     color: var(--black);
     text-transform: initial !important;
     font-size: 14px !important;
   }
   
   .row-form-visitas-contact
     .cont-datos-personales
     .checkbox
     .wpcf7-list-item
     a:hover {
     color: var(--main);
   }
   
   #section-visitas .row-form-visitas-contact .cont-datos-personales .linea-btn p {
     display: flex;
     align-items: center;
     gap: 16px;
   }
   
   #section-visitas
     .row-form-visitas-contact
     .cont-datos-personales
     .linea-btn
     .wpcf7-spinner {
     margin: 0;
     background-color: var(--white);
     border: 1px solid var(--main);
   }
   
   #section-visitas
     .row-form-visitas-contact
     .cont-datos-personales
     .linea-btn
     .wpcf7-spinner::before {
     margin: 0;
     background-color: var(--main);
     top: -1px;
     left: -1px;
     width: 8px;
     height: 8px;
     transform-origin: 12px 12px;
     border: 2px solid var(--white);
   }
   
   #section-visitas
     .row-form-visitas-contact
     .cont-datos-personales
     .linea_datos
     .wpcf7-not-valid-tip {
     padding: 0 0 0 20px !important;
     margin: 8px 0 0;
     color: var(--error);
     font-weight: 500;
     font-size: 12px;
     background-image: url(/wp-content/plugins/visitas/modules/visitas/reservas/images/error.svg);
     background-size: 14px;
     background-repeat: no-repeat;
     background-position: top 1px left;
     float: left;
     width: 100%;
     letter-spacing: 0px;
     text-align: left;
     line-height: 16px;
     text-transform: initial;
   }
   
   #section-visitas
     .row-form-visitas-contact
     form
     .cont-datos-personales
     .wpcf7-response-output {
     border: 1px dashed var(--black);
     border-radius: 0px;
     margin: 0 0 16px;
     width: 100%;
     padding: 8px 16px;
   }
   
   #section-visitas
     .row-form-visitas-contact
     form.invalid
     .cont-datos-personales
     .wpcf7-response-output {
     color: var(--error);
     border-color: var(--error);
   }
   
   #section-visitas
     .row-form-visitas-contact
     form.sent
     .cont-datos-personales
     .wpcf7-response-output {
     color: var(--ayuda);
     border-color: var(--ayuda);
   }
   
   @media only screen and (max-width: 1023px) {
     #section-visitas.row-form-contacto {
       flex-wrap: wrap;
     }
   
     #section-visitas.row-form-contacto .row-visitas-ev,
     #section-visitas .row-form-visitas-contact {
       width: 100%;
     }
   }
   
   /* ------- CLOSE Form CONTACTA enoturismo ------ */
   
   .ast-builder-menu-1 .menu-item > .menu-link {
     font-size: 16px !important;
   }
   
   #titulo-visitas {
     display: none;
   }
   
   .idioma-servicio {
     display: none;
   }
   
   .tit-banner-regala {
     display: none;
   }
   
   .info-banner-regala {
     display: flex;
     flex-wrap: wrap;
     align-items: center;
     border-top: 1px dashed var(--neutral-20);
     border-bottom: 1px dashed var(--neutral-20);
   }
   
   .textos-regala strong {
     font-size: 22px;
   }
   
   .textos-regala p {
     font-weight: normal;
     font-size: 14px;
     line-height: 22px;
   }
   
   .textos-regala {
   }
   
   .datos-servicio-container,
   .carrito-tabla {
     font-family: var(--typo-secondary);
   }
   
   /*---------loader---------*/
   .filtro {
     background-color: transparent;
     padding: 10px 20px;
     margin: 10px;
     cursor: pointer;
     border-radius: 6px;
     color: var(--main);
     font-weight: 600;
     letter-spacing: 0;
     transition: all 1s ease-out;
     font-size: 12px;
     min-width: 100px;
     line-height: 18px;
   }
   
   .filtro:hover img {
     filter: invert(1);
     transition: all 0.3s ease-in-out;
   }
   
   .filtros_caracteristicas {
     display: flex;
     /*overflow: hidden;*/
     width: 90%;
     margin: 0 auto;
     margin-bottom: 40px;
   }
   
   /*-------mostrar burguer------*/
   @media only screen and (max-width: 1160px) {
     #top-menu-nav {
       display: none;
     }
     #et_mobile_nav_menu {
       display: block;
     }
     li.pll-parent-menu-item:hover {
       background-color: transparent !important;
       color: white !important;
       border-radius: 0px !important;
       border: 0px solid var(--neutral-20);
     }
     .et_mobile_menu .menu-item-has-children > a {
       display: none;
     }
     #main-header .et_mobile_menu li ul {
       visibility: visible !important;
       display: flex !important;
       padding: 20px 0px;
       border-bottom: 1px solid var(--neutral-00);
     }
     #paso_1_all .nombre-bodega::before {
       margin-left: -22px;
     }
   }
   
   /*-------ocultar burguer------*/
   /*-------flitros caractristicas mobile------*/
   @media only screen and (max-width: 680px) {
     #et-top-navigation {
       padding-left: 0px !important;
     }
     .et_header_style_left #logo {
       max-width: 80%;
     }
     .et_header_style_left #et-top-navigation .mobile_menu_bar {
       padding-bottom: 10px;
     }
     li.pll-parent-menu-item {
       background-color: var(--white) !important;
       font-size: 14px !important;
       border-radius: 50px !important;
       border: 0px solid var(--main) !important;
       text-transform: uppercase;
     }
   
     .filtros_caracteristicas .filtro {
       display: flex;
       flex-direction: column;
       gap: 0px !important;
       align-items: center;
       max-width: 100px;
       text-align: center;
       padding: 6px;
     }
     .filtros_caracteristicas {
       display: flex;
       flex-wrap: nowrap;
       justify-content: initial;
       overflow: scroll;
       width: 75%;
       margin: 0 auto;
       margin-bottom: 20px;
     }
   
     #titulo-visitas.contenedor_filtros_visitas {
       display: none;
     }
     .filtro {
       min-width: 74px;
       max-width: 70px !important;
     }
   }
   
   /*------- fin flitros caractristicas mobile------*/
   .filtros_caracteristicas::before,
   .filtros_caracteristicas::after {
     position: absolute;
     margin-top: 44px;
     transform: translateY(-50%);
   }
   .filtros_caracteristicas::before {
     /*content: "";
       left: 0px;
       background: url('/wp-content/uploads/2025/10/left-1.svg') center / contain no-repeat;
       width: 30px;
   height: 30px;
   background-size: contain;*/
   }
   .filtros_caracteristicas::after {
     /*content: "";
       right: 0px;
       background: url('/wp-content/uploads/2025/10/right.svg') center / contain no-repeat;
       width: 30px;
   height: 30px;
   background-size: contain;*/
   }
   
   .filtros_caracteristicas .activa img {
     filter: invert(1);
     transition: all 0.3s ease-in-out;
   }
   
   .filtros_caracteristicas img {
     border-radius: 40px;
     padding: 10px;
     transition: all 0.3s ease-in-out;
     background-color: var(--white);
     width: 50px;
     height: 50px;
   }
   
   .filtros_caracteristicas .filtro {
     display: flex;
     flex-direction: column;
     gap: 10px;
     align-items: center;
     min-width: 100px;
     text-align: center;
   }
   
   /*--------check input---------*/
   /* --- CONTENEDOR DEL INPUT --- */
   .linea_datos {
     position: relative;
   }
   
   /* --- INPUT BASE --- */
   .input_datopersonal {
     width: 100%;
     padding-right: 45px; /* espacio reservado para el icono */
     border: 2px solid #ccc;
     border-radius: 6px;
     transition: border-color 0.3s;
     box-sizing: border-box;
   }
   
   /* --- ICONO DE CHECK (centrado dentro del input) --- */
   .linea_datos::after,
   .caja-localizador::after {
     content: "";
     position: absolute;
     right: 15px;
     top: 24px;
     transform: translateY(-50%) scale(0.6);
     opacity: 0;
     width: 20px;
     height: 20px;
     background-image: url("/wp-content/uploads/2025/10/check-1.svg");
     background-repeat: no-repeat;
     background-size: contain;
     transition: all 0.25s ease-out;
     pointer-events: none;
   }
   
   /* --- ANIMACIÓN CHULA AL APARECER --- */
   .linea_datos.valid::after,
   .caja-localizador.valid::after {
     opacity: 1;
     transform: translateY(-50%) scale(1);
   }
   
   /* --- EFECTO DE FOCO --- */
   .input_datopersonal:focus,
   .caja-localizador:focus {
     border-color: #888;
   }
   
   /* --- AJUSTE PARA SELECTS --- */
   select.input_datopersonal,
   select.caja-localizadorl {
     background-position: calc(100% - 30px) center;
   }
   
   /*-------fin check input---------*/
   
   #breadcrumb a {
     color: var(--main);
   }
   
   /*---------steps procesos-----------*/
   
   .steps {
     display: none;
     gap: 8px;
     justify-content: flex-end;
     margin: -36px 0 20px 0;
     padding: 0;
     width: 100px;
     position: absolute;
     right: 30px;
     align-items: center;
   }
   
   .steps div {
     width: 8px;
     height: 8px;
     background: var(--neutral-20);
     transition: var(--transition);
     border-radius: 20px;
   }
   
   .steps .color-step {
     background-color: var(--black);
     width: 12px;
     height: 12px;
   }
   /*---------fin steps procesos-----------*/
   
   /*---------steps procesos nuevo-----------
   
   .steps {
       display: flex;
       align-items: center;
       justify-content: space-between;
       width: 80px;
       height: 50px;
       position: absolute;
       right: 30px;
       top: -10px;
   }
   
   .steps div {
       position: relative;
       width: 14px;
       height: 14px;
       background-color: var(--neutral-10);
       border-radius: 50%;
       z-index: 1; 
   }
   
   /* Línea entre los círculos 
   .steps div::after {
       content: '';
       position: absolute;
       top: 50%;
       left: 100%;
       width: 20px;
       height: 2px;
       background-color: var(--neutral-10);
       transform: translateY(-50%);
       z-index: 0;
      
   }
   
   .steps div:last-child::after {
     content: none;
   }
   
   .color-step {
     background-color: var(--main) !important;
   }
   
   
   .color-step::after {
     background-color: green;
   }
   
   ---------fin steps procesos nuevo-----------*/
   
   #DivCabeceraModificacion .datos-servicio-container {
     display: flex;
     flex-wrap: wrap;
   }
   
   #DivCabeceraModificacion
     .datos-servicio-container
     .date-visit-resume:nth-child(2) {
     letter-spacing: 0 !important;
     padding-left: 0px;
     color: var(--black);
     width: 100%;
     font-weight: 600;
     font-size: 14px;
     margin-bottom: 20px;
     border-right: 0px;
   }
   
   #DivCabeceraModificacion
     .datos-servicio-container
     .date-visit-resume:last-child {
     border-right: 2 solid var(--neutral-20);
     padding: 0px 0px 0 0;
     margin: 0px 0px 10px 0;
   }
   #DivCabeceraModificacion .datos-servicio-container .date-visit-resume {
     border-right: 1px solid var(--neutral-20);
     padding: 0px 20px 0 0;
     margin: 0 20px 10px 0;
     display: flex;
     flex-direction: column;
   }
   
   #informacion_reservas .datos-servicio-container {
     display: flex;
     flex-wrap: wrap;
   }
   
   #informacion_reservas
     .datos-servicio-container
     .date-visit-resume:nth-child(2) {
     letter-spacing: 0 !important;
     padding-left: 0px;
     color: var(--black);
     width: 100%;
     font-weight: 600;
     font-size: 14px;
     margin-bottom: 20px;
     border-right: 0px;
   }
   
   #informacion_reservas .datos-servicio-container .date-visit-resume:last-child {
     border-right: 1px solid var(--neutral-20);
     padding: 0px 20px 0 0;
     margin: 0 20px 10px 0;
   }
   #informacion_reservas .datos-servicio-container .date-visit-resume {
     border-right: 0px solid var(--neutral-20);
     padding: 0px 20px 0 0;
     margin: 0 20px 10px 0;
     display: flex;
     flex-direction: column;
   }
   
   .botones_completar_reserva {
     width: 60%;
   }
   
   li.pll-parent-menu-item {
     background-color: var(--white) !important;
     font-size: 14px !important;
     border-radius: 50px !important;
     border: 1px solid var(--main);
     text-transform: uppercase;
   }
   
   li.pll-parent-menu-item {
     margin: 0px 8px;
   }
   
   li.pll-parent-menu-item a {
     padding: 12px 12px !important;
     margin: 0 !important;
   }
   
   .pll-parent-menu-item a {
     background-color: transparent !important;
     color: initial !important;
   }
   
   li.pll-parent-menu-item:hover {
     background-color: var(--neutral-20);
     color: white !important;
     border-radius: 50px !important;
     border: 1px solid var(--neutral-20);
     text-transform: uppercase;
   }
   
   .card-visita .img-p {
     border-radius: 28px 28px 0 0;
     max-height: 200px;
     width: 100%;
     object-fit: cover;
   }
   
   #top-menu li {
     padding-right: initial !important;
   }
   
   /*-------- pasos -------------*/
   @media only screen and (max-width: 680px) {
    #labelSteps span {
      font-size: 10px !important;
    }
    #labelSteps {
      display: flex;
      flex-wrap: wrap;
    }

    #labelSteps span b {
      font-size: 10px !important;
    }
   }
   
   #labelSteps span {
     font-size: 12px;
     color: var(--neutral-40);
     margin: 0px 6px;
   }
   #labelSteps {
     float: right;
     margin-bottom: -20px;
   }
   
   #labelSteps span b {
     font-weight: 700 !important;
     font-size: 12px;
     color: white;
     background: var(--main);
     border-radius: 20px;
     padding: 4px 10px;
   }
   
   /*-------- fin pasos -------------*/
   
   /*-------- galeria get ----*/
   
   .miniatura:nth-child(1) {
     width: 70%;
     height: 400px;
     border: 0px;
     border-radius: 32px 0px 0px 32px;
     grid: 1/3;
     display: ruby-text-container;
     float: left;
     padding: 4px;
   }
   .miniatura:nth-child(2) {
     width: 30%;
     height: 200px;
     border: 0px;
     border-radius: 0px 32px 0px 0px;
     float: right;
     display: grid;
     padding: 4px;
   }
   .miniatura:nth-child(3) {
     width: 30%;
     height: 200px;
     border: 0px;
     border-radius: 0px 0px 32px 0px;
     padding: 4px;
   }
   .flecha-miniatura {
     display: none !important;
   }
   .miniaturas-container {
     height: 400px;
     overflow: hidden;
   }
   .miniatura:hover {
     transform: none !important;
   }
   
   @media only screen and (max-width: 680px) {
     .miniatura:nth-child(1) {
       width: 60%;
       height: 260px;
       border: 0px;
       border-radius: 32px 0px 0px 32px;
       grid: 1/3;
       display: ruby-text-container;
       float: left;
       padding: 2px;
     }
     .miniatura:nth-child(2) {
       width: 40%;
       height: 130px;
       border: 0px;
       border-radius: 0px 32px 0px 0px;
       float: right;
       display: grid;
       padding: 2px;
     }
     .miniatura:nth-child(3) {
       width: 40%;
       height: 130px;
       border: 0px;
       border-radius: 0px 0px 32px 0px;
       padding: 2px;
     }
     .miniaturas-container {
       height: 260px;
       overflow: hidden;
     }
     #labelSteps {
       text-align: center;
       margin-top: -50px;
     }
     .nombre-bodega::before {
       margin-left: -22px;
     }
   }
   /*-------- fin galeria get ----*/
   
   /*--------slider-home-------*/
   .et-pb-arrow-next::before {
     content: "";
     position: absolute;
     left: 0px;
     width: 38px;
     height: 38px;
     background: url("/wp-content/uploads/2025/10/banner-right.svg") no-repeat
       center;

     background-size: contain;
     margin-right: 20px;
     filter: brightness(0) saturate(100%) invert(100%) sepia(3%) saturate(2%)
       hue-rotate(246deg) brightness(115%) contrast(100%);
   }
   .et-pb-arrow-prev::before {
     content: "";
     position: absolute;
     left: 0px;
     width: 38px;
     height: 38px;
     background: url("/wp-content/uploads/2025/10/banner-left.svg") no-repeat
       center;
     background-size: contain;
     margin-right: 20px;
     filter: brightness(0) saturate(100%) invert(100%) sepia(3%) saturate(2%)
       hue-rotate(246deg) brightness(115%) contrast(100%);
   }
   
   .et-pb-arrow-prev {
     left: 30px !important;
   }
   .et-pb-arrow-next,
   .et-pb-arrow-prev {
     position: absolute;
     top: 50%;
     z-index: 100;
     font-size: 48px;
     color: #fff;
     margin-top: -24px;
     -webkit-transition: all 0.2s ease-in-out;
     transition: all 0.2s ease-in-out;
     opacity: 1;
     border: 1px solid white;
     width: 40px;
     height: 40px;
     border-radius: 20px;
   }
   
   .et-pb-arrow-next:hover,
   .et-pb-arrow-prev:hover {
     background-color: rgba(255, 255, 255, 0.5);
     border-color: rgba(255, 255, 255, 0.5);
   }
   
   .et-pb-arrow-next {
     right: 22px;
   }
   
   .et-pb-controllers .et-pb-active-control {
     background-color: #d9a57a;
     width: 24px;
     height: 12px;
   }
   .et-pb-controllers a {
     width: 12px;
     height: 12px;
     background-color: #f3f3f3;
   }
   @media only screen and (max-width: 680px) {
     .et-pb-arrow-next,
     .et-pb-arrow-prev {
       display: none;
     }
   }
   
   /*--------slider-home-------*/
   
   #top-menu li.current-menu-item > a {
     color: var(--main);
   }
   
   /*-------- carrusel iconos ----------*/
   .carousel-container {
     width: 100%; /* ancho visible del carrusel */
     overflow: hidden;
     position: relative;
   }
   
   .carousel-wrapper {
     width: 85%;
     overflow: hidden;
     margin: 0 auto;
   }
   
   .carousel {
     display: flex;
     padding: 0;
     margin: 0;
     list-style: none;
     transition: transform 0.5s ease;
   }
   
   .carousel li {
     min-width: 200px;
     margin-right: 20px;
   }
   
   button.prev,
   button.next {
     position: absolute;
     top: 60px;
     transform: translateY(-50%);
     background: transparent;
     color: white;
     border: none;
     padding: 5px 10px;
     cursor: pointer;
     z-index: 1;
   }
   
   button.prev {
     left: 0;
   }
   button.next {
     right: 0;
   }
   
   /*---------- fin carrusel iconos ---------*/
   
   /*------prefijo--------*/
   
   .linea_datos:nth-child(3) {
     display: flex;
   }
   .linea_datos #prefijo {
     width: 100px;
     height: 48px;
   }
   
   .linea_datos .telefono-con-prefijo {
     display: none;
   }
   /*-------fin prefijo------*/
   