﻿/*!
 * Style v3 Css
 * Autor: Euromundo
 */

/*
/* @File: EBE - Euromundo
*
*/


/* Importación de fuentes */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;600;700&family=Roboto:wght@400;500&display=swap');

/* RESET BÁSICO */
*,
*::before,
*::after {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
} 

/* VARIABLES */
:root {
    /* Fuente base */
    --font-base: 'Inter', sans-serif;
    --font-secondary: 'Roboto', sans-serif;

    /* Fuentes principales */
    --font-inter-regular: 'Inter', sans-serif;
    --font-inter-medium: 'Inter', sans-serif;
    --font-inter-semibold: 'Inter', sans-serif;
    --font-inter-bold: 'Inter', sans-serif;
    --font-roboto-regular: 'Roboto', sans-serif;
    --font-roboto-medium: 'Roboto', sans-serif;

    /* Variables de uso específico */
    --font-titulo: var(--font-inter-bold);
    --font-subtitulo: var(--font-inter-semibold);
    --font-texto: var(--font-base);
    --font-botones: var(--font-inter-medium);
    --font-navegacion: var(--font-roboto-regular);

    /* Colores del tema */
    --background-color: #ffffff;
    --text-color: #333;
    --accent-color: var(--black-color);
    --link-color: var(--accent-color);
    --gray-100: #f8f9fa;
    --gray-200: #e9ecef;
    --gray-300: #dee2e6;
    --gray-400: #ced4da;
    --gray-500: #adb5bd;
    --gray-600: #6c757d;
    --gray-700: #495057;
    --gray-800: #343a40;
    --gray-900: #212529;
    --border-color: #CBD1D7;
    --icon-color: #E70033;
    /*Variables para loader*/
    --white-color: #ffffff;
    --size: 350px;
    --ring: #E3E8EF; 
    --icon-bg-primario: var(--main-color); 
    --icon-bg-secundario: var(--black-color); 
    --icon-color: #ffffff; 
    --dur: 3s;              
    --bg: #ffffff;
    --fg: #475569;
    --pendulum-dur: 2s;

    --header-h: 160px;
}



/* TIPOGRAFÍA */
body {
    font-family: var(--font-texto);
    color: var(--text-color);
    background-color: var(--background-color);
    line-height: 1.6;
    font-size: 16px;
    padding-top: var(--header-h);
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: var(--font-titulo);
    font-weight: 600;
}

p,
a {
    font-family: var(--font-texto);
}

h1 {
    font-size: 2.5rem;
}

h2 {
    font-size: 2rem;
}

h3 {
    font-size: 1.75rem;
}

h4 {
    font-size: 1.5rem;
}

h5 {
    font-size: 1.25rem;
}

h6 {
    font-size: 1rem;
}

p {
    font-size: 1rem;
    line-height: 1.2;
}

a {
    color: var(--link-color);
    text-decoration: none;
}

a:hover {
    text-decoration: underline;
}

.f-8 {
    font-size: 8px;
}

.f-10 {
    font-size: 10px;
}

.f-12 {
    font-size: 12px;
}

.f-14 {
    font-size: 14px;
}

.f-15 {
    font-size: 15px;
}

.f-16 {
    font-size: 16px;
}

.f-18 {
    font-size: 18px;
}

.f-20 {
    font-size: 20px;
}

.f-22 {
    font-size: 22px;
}

.f-inter-400 {
    font-family: var(--font-inter-regular);
    font-weight: 400;
}

.f-inter-500 {
    font-family: var(--font-inter-medium);
    font-weight: 500;
}

.f-inter-600 {
    font-family: var(--font-inter-semibold);
    font-weight: 600;
}

.f-inter-700 {
    font-family: var(--font-inter-bold);
    font-weight: 700;
}

/* COMPONENTES GENERALES */
.container {
    width: 90%;
    max-width: 1200px;
    margin: 0 auto;
}

.section {
    padding: 4rem 0;
}

/* FIN COMPONENTES GENERALES */

/* BLOQUE: BUTTON */
.button {
    font-family: var(--font-botones);
    font-weight: 400;
    border-radius: 25px;
    border: none;
    cursor: pointer;
    transition: background-color 0.3s ease, color 0.3s ease, border 0.3s ease;
    display: flex;
    justify-content: center;
    align-items: center;
}

.button--small {
    padding: 1rem;
    font-size: 12px;
    height: 32px;
    line-height: 1;
}

.button--small__large {
    padding: 0.5rem;
    font-size: 12px;
    height: 32px;
    line-height: 1;
}

.button--medium {
    padding: 0.5rem 1rem;
    font-size: 14px;
    height: 45px;
    line-height: 1;
}

.button--large {
    padding: 0.5rem 1rem;
    font-size: 1.125rem;
}

/* Botón primario */
.button--primary {
    background-color: var(--main-color);
    color: #fff;
}

.button--primary:hover {
    background-color: var(--black-color);
}

.button--primary:active {
    background-color: var(--black-color);
}

/* Botón secundario */
.button--secondary {
    background-color: var(--black-color);
    color: #fff;
}

.button--secondary:hover {
    background-color: var(--main-color);
}

.button--secondary:active {
    background-color: var(--main-color);
}

/* Outline Blanco */
.button--outline-white {
    background-color: transparent;
    color: #fff;
    border: 2px solid #fff;
}

.button--outline-white:hover {
    background-color: var(--black-color);
    color: #fff;
}

.button--outline-white:active {
    background-color: var(--black-color);
    border-color: var(--black-color);
}

/* Outline Primario */
.button--outline-primary {
    background-color: transparent;
    color: var(--main-color);
    border: 2px solid var(--main-color);
}

.button--outline-primary:hover {
    background-color: var(--black-color);
    color: #fff;
}

.button--outline-primary:active {
    background-color: var(--black-color);
    border-color: var(--black-color);
}

/* Outline Secundario */
.button--outline-secondary {
    background-color: transparent;
    color: var(--black-color);
    border: 2px solid var(--black-color);
}

.button--outline-secondary:hover {
    background-color: var(--main-color);
    color: #fff;
}

.button--outline-secondary:active {
    background-color: var(--main-color);
    border-color: var(--main-color);
}

/* Botón Company */
.button--company {
    background-color: var(--black-color);
    color: var(--company-text);
}

.button--company:hover {
    background-color: var(--link-color);
    color: var(--company-text);
}

.button--company:active {
    background-color: var(--accent-color);
}

/* Botón Company Alternativo */
.button--company-alt {
    background-color: var(--accent-color);
    color: var(--company-text);
    border: 2px solid var(--accent-color);
}

.button--company-alt:hover {
    background-color: var(--company-text);
    color: var(--link-color);
}

.button--company-alt:active {
    background-color: var(--accent-color);
}

/* Outline Company */
.button--outline-company {
    background-color: transparent;
    color: var(--company-text);
    border: 2px solid var(--company-text);
}

.button--outline-company:hover {
    background-color: var(--link-color);
    color: #fff;
}

.button--outline-company:active {
    background-color: var(--accent-color);
    border-color: var(--accent-color);
}

/* Botón de texto */
.button--text {
    background-color: transparent;
    color: var(--accent-color);
    border: none;
    padding: 0.5rem 0.75rem;
}

.button--text:hover {
    text-decoration: underline;
    color: var(--link-color);
}

.button--text:active {
    color: var(--gray-700);
}

/* ESTILO PARA ESTADO DISABLED */
.button:disabled,
.button[disabled] {
    background-color: var(--gray-300);
    color: var(--gray-500);
    border-color: var(--gray-300);
    cursor: not-allowed;
    opacity: 0.6;
    text-decoration: none;
}

/* Remover efectos hover y active en disabled */
.button:disabled:hover,
.button[disabled]:hover,
.button:disabled:active,
.button[disabled]:active {
    background-color: var(--gray-300);
    color: var(--gray-500);
    border-color: var(--gray-300);
}

.button--text:disabled,
.button--text[disabled] {
    background-color: transparent;
    color: var(--gray-500);
    border-color: var(--gray-300);
    cursor: not-allowed;
    opacity: 0.6;
    text-decoration: none;
}

/* Remover efectos hover y active en disabled */
.button--text:disabled:hover,
.button--text[disabled]:hover,
.button--text:disabled:active,
.button--text[disabled]:active {
    background-color: transparent;
    color: var(--gray-500);
    border-color: var(--gray-300);
}


/* FIN BLOQUE: BUTTON */

/* BLOQUE: PACKAGE CARD */
.package-card {
    background-color: #fff;
    border-top-left-radius: 20px;
    border-top-right-radius: 20px;
    border-bottom-left-radius: 20px;
    border-bottom-right-radius: 20px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    font-family: var(--font-texto);
    margin: auto;
    height: auto;
    max-width: 400px;
}

/* Imagen del paquete */
.package-card__image {
    position: relative;
}

.package-card__tooltip {
    position: absolute;
    bottom: 5px;
    right: 15px;
    background-color: var(--main-color);
    color: white;
    padding: 6px 6px;
    border-radius: 50%;
    font-size: 15px;
    z-index: 2;
    display: flex;
    align-items: center;
    gap: 5px;
    cursor: pointer;
}

.tooltip-inner {
    background-color: #2D2D2D !important;
    /* Fondo rojo */
    color: #fff !important;
    /* Texto blanco */
    font-size: 13px;
    border-radius: 6px;
    padding: 8px 10px;
    text-align: left;
}

/* Flecha del tooltip */
.tooltip.bs-tooltip-end .tooltip-arrow::before {
    border-right-color: #e6002d !important;
}

.tooltip.bs-tooltip-top .tooltip-arrow::before {
    border-top-color: #e6002d !important;
}

.tooltip.bs-tooltip-bottom .tooltip-arrow::before {
    border-bottom-color: #e6002d !important;
}

.tooltip.bs-tooltip-start .tooltip-arrow::before {
    border-left-color: #e6002d !important;
}


/* Slider package card */


.package-card__image img {
    width: 100%;
    height: 160px;
    object-fit: cover;
}

/* Contenido principal */
.package-card__content {
    padding: 0.75rem;
    text-align: center;
    display: flex;
    flex-direction: column;
    flex: 1;
}



.package-card__title {
    font-size: 1rem;
    font-weight: 700;
    margin-bottom: 0.5rem;
    color: #333;
    display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  min-height: calc(1.25em * 2);   /* reserva alto uniforme del bloque */
}

.package-card__details {
    font-size: 14px;
    color: #666;
    line-height: 1.4;
    display: flex;
    flex-direction: column;
    gap: 5px;
    margin-top: 10px;
    min-height: 64px; 
}

.package-card__duration,
.package-card__location,
.package-card__includes {
    margin-bottom: 0.25rem;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 5px;
    flex-wrap:wrap; 
}

/* Footer de la tarjeta */
.package-card__footer {
    background-color: var(--main-color);
    color: #fff;
    padding: 1.3rem 2rem;
    text-align: center;
    margin-top: auto;
    border-bottom-left-radius: 20px;
    border-bottom-right-radius: 20px;
}

/* Contenedor general del footer */
.package-card__footer-content {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

/* Contenedor del precio */
.package-card__price {
    width: 65%;
    text-align: left;
    display: flex;
    flex-direction: column;
    gap: 5px;
    padding: 5px;
}

.package-card__price-label {
    font-size: 10px;
    font-weight: 400;
    text-transform: uppercase;
}

.package-card__price-value {
    font-size: 20px;
    font-weight: 500;
    text-transform: uppercase;
}

.package-card__price-value span {
    font-size: 16px;
    font-weight: 500;
    text-transform: uppercase;
}

.package-card__price-offer {
    font-size: 14px;
    font-weight: 500;
    text-transform: uppercase;
    text-decoration: line-through;
}

.package-card__price-offer span {
    font-size: 16px;
    font-weight: 500;
    text-transform: uppercase;
}

.package-card__price-note {
    font-size: 8px;
    font-weight: 400;
}

/* Contenedor del botón */
.package-card__button-container {
    width: 35%;
    display: flex;
    justify-content: center;
    align-items: center;
}

/* Estilo del botón */
.package-card__button {
    width: 100%;
    background-color: var(--black-color);
    color: #FFFFFF;
    height: 35px;
}

.package-card__button:hover {
    width: 100%;
    background-color: #ffffff;
    color: var(--black-color);
    height: 35px;
}

/* Estilo para los íconos */
.package-card__details i {
    margin-left: 5px;
    color: var(--black-color, #b88b3a);
    font-size: 14px;
    vertical-align: middle;
}


/* Bloque de comparador */
.compare-pleca {
    display: none;
    text-align: center;
    justify-content: space-between;
    align-items: center;
    flex-direction: row;
    min-height: 61px;
    background: var(--black-color);
    color: white;
    width: 100%;
    padding: 15px 30px;
    z-index: 1000;
    box-shadow: 0 -2px 5px rgba(0, 0, 0, 0.2);
    margin-top: -10px;
    min-height: 61px;
}

.compare-pleca-card {
    display: flex;
    text-align: start;
    justify-content: center;
    align-items: flex-start;
    flex-direction: column;
}

.compare-text {
    margin: 0;
    font-size: 10px;
    line-height: 1.2;
}

.compare-subtext {
    display: none;
    margin: 5px 0 0;
    font-size: 10px;
}

.compare-subtext a {
    color: #fff;
    text-decoration: underline;
    font-weight: bold;
}

.compare-subtext a:hover {
    text-decoration: none;
}

.compare-card-delete {
    display: none;
    align-items: center;
    justify-content: center;
    padding-left: 10px;
}

.compare-delete {
    margin: 5px 0 0;
    font-size: 10px;
}

.compare-delete a {
    text-decoration: underline;
    font-weight: bold;
    cursor: pointer;
}

.compare-delete a:hover {
    text-decoration: none;
    /*color: #FF4D4D;*/
}

#btn-compare-package:disabled {
    background-color: #ccc;
    cursor: not-allowed;
}


.compare-count-display {
    background: var(--main-color);
    border-radius: 20px;
    color: #fff;
    margin-left: -5px;
    border: 1px solid #fff;
    height: 25px;
    min-width: 25px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.euroCompare-Alert {
    background: var(--main-color);
    color: #fff;
    padding: 10px;
    border-radius: 20px;
    display: none;
    gap: 5px;
    flex-direction: column;
}

.euroCompare-Alert p {
    /*font-family: 'Inter';*/
    font-size: 9px !important;
    font-style: normal;
    line-height: normal;
    font-weight: 400 !important;
}

/* FIN BLOQUE: CARD */


/* BLOQUR FILTRO BUSQUEDA */
.left-side-search-boxed-v4 {
    background: #fff;
    border: 1px solid #ebedef;
    border-radius: 20px;
    padding: 0 0;
    margin-bottom: 30px;
    top: 120px;
    height: auto;
}

.left-side-search-boxtitle-v2 {
    background: var(--main-color);
    border-radius: 10px 10px 0 0;
    padding: 15px 20px;
    overflow: hidden;
}

.left-side-search-boxtitle-v2 h5 {
    color: var(--company-text);
    font-family: var(--font-subtitulo);
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

.left-side-search-item-v2 {
    border-bottom: 1px solid #ebedef;
    padding-bottom: 20px;
}

.left-side-search-heading-v2 {
    padding: 16px 20px 0 20px;
}

.left_side_search_heading h5 {
    border-bottom: 1px solid #00000030;
    padding-bottom: 7px;
    font-size: 13px;
    font-weight: 500;
}

.left-side-search-heading-v2 h5 {
    color: var(--black, #000);
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    border-bottom: 0 !important;
}

.name-search-form-v2 {
    margin: 0 !important;
    padding: 5px 20px 5px 20px;
    display: flex;
    align-items: center;
}

.group-search-v2 {
    display: flex;
    line-height: 28px;
    align-items: center;
    position: relative;
    max-width: 100%;
    padding-left: 0;

}

.icon-group-search-v2 {
    position: absolute;
    left: 1rem;
    fill: #9e9ea7;
    width: 1rem;
    height: 1rem;
    top: .5rem;
}

.input-group-search-v2 {
    width: 100%;
    height: 32px;
    line-height: 28px;
    padding: 0;
    padding-left: 2.5rem;
    border: 2px solid transparent;
    border-radius: 10px;
    outline: none;
    background-color: #ebedef;
    color: #0d0c22;
    transition: .3s ease;
}

.btn-group-search-v2 {
    color: var(--company-text);
    background-color: var(--main-color);
    transition: var(--transition);
    box-shadow: none;
    overflow: hidden;
    border-radius: 10px;
    border: none;
    height: 30px;
    width: 60px;
    font-size: 14px;
}

.left-side-search-item-v2 {
    border-bottom: 1px solid #ebedef;
    padding-bottom: 20px;
}

.left-side-search-heading-v2 {
    padding: 16px 20px 0 20px;
}

.left_side_search_heading h5 {
    border-bottom: 1px solid #00000030;
    padding-bottom: 7px;
    font-size: 13px;
    font-weight: 500;
}

.left-side-search-heading-v2 h5 {
    color: var(--black, #000);
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    border-bottom: 0 !important;
}

.filter-price {
    padding-top: 10px;
    padding-bottom: 45px;
    margin-left: 12px;
}

.filter-price-v2 {
    padding: 0 15px;
    width: 90%;
}

.noUi-target {
    background: #ebebeb;
    border-radius: 6px;
}

.noUi-horizontal {
    height: .3rem;
}

.noUi-target {
    position: relative;
    direction: ltr;
}

.noUi-connects {
    border-radius: 3px;
}

.noUi-connects {
    overflow: hidden;
    z-index: 0;
}

.noUi-connect {
    background: var(--main-color);

}

.filter-price-buttonBox-v2 {
    display: flex;
    justify-content: center;
}

.filter-price-buttonBox-v2 {
    display: flex;
    justify-content: center;
}

.btn-group-slider-a-v2 {
    color: var(--company-text);
    background-color: var(--main-color);
    border-radius: 20px;
    border: none;
    height: 30px;
    width: 90px;
    margin-inline: 5px;
    font-size: 14px;
}

.btn-group-slider-b-v2 {
    color: var(--main-color);
    background-color: var(--white-color);
    border-radius: 20px;
    border: 1px solid var(--main-color);
    height: 30px;
    width: 90px;
    margin-inline: 5px;
    font-size: 14px;
}




/* BLOQUE: SLIDER */
.slider {
    height: 500px;
    /* Altura móvil */
}

@media (min-width: 768px) {
    .slider {
        height: 600px;
        /* Altura escritorio */
    }
}

.slider__indicator {
    width: 12px;
    height: 12px;
    background-color: var(--gray-400);
    border-radius: 50%;
    margin: 0 4px;
    display: inline-block;
}

.slider__indicator--active {
    background-color: var(--accent-color);
}

.slider__card {
    min-width: 300px;
    max-width: 300px;
    margin: 0 auto;
}

/* FIN BLOQUE: SLIDER */

/* BLOQUE: CAROUSEL */
.carousel {
    display: flex;
    overflow-x: auto;
}

.carousel__nav {
    background-color: rgba(0, 0, 0, 0.5);
    color: white;
    padding: 0.5rem;
    border-radius: 50%;
    font-size: 1.5rem;
}

.carousel__nav:hover {
    background-color: rgba(0, 0, 0, 0.7);
}

/* FIN BLOQUE: CAROUSEL */


/* Estilo opcional para mostrar los botones mejor organizados */
.button-container {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    margin: 2rem;
    margin-bottom: 2rem;
}

.button-section {
    margin-bottom: 2rem;
}

.button-title {
    font-family: var(--font-titulo);
    font-weight: 600;
    margin-bottom: 0.5rem;
}

/*Sección de carrusel defs ofertas*/
/* ===== General Styles ===== */
.carousel-offers {
    background: linear-gradient(rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.4)), url('background.jpg');
    background-size: cover;
    color: #fff;
    padding: 20px 12%;
    text-align: start;
}

.carousel-offers h2 {
    font-weight: 600;
    color: #ffffff;

}

.carousel-offers p {
    font-weight: 300;
}

.carousel-offers__title {
    font-size: 2rem;
    margin-bottom: 10px;
}

.carousel-offers__subtitle {
    font-size: 0.9rem;
    margin-bottom: 20px;
    opacity: 0.8;
}

.swiper-card-title {
    background: var(--black-color);
    border-radius: 10px;
    padding: 10px 5px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    margin-top: 5px;
    margin-bottom: 10px;
}

/* ===== Navigation Arrows ===== */
.carousel-offers__arrow {
    background: rgba(0, 0, 0, 0.6);
    color: #fff;
    border: none;
    padding: 10px;
    border-radius: 50%;
    cursor: pointer;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}

.carousel-offers__arrow--left {
    left: 10px;
}

.carousel-offers__arrow--right {
    right: 10px;
}

.carousel-offers__arrow:hover {
    background: rgba(0, 0, 0, 0.8);
}


/* Personaliza los botones de navegación */
.swiper-button-prev,
.swiper-button-next {
    background-color: rgba(0, 0, 0, 0.5);
    border-radius: 50%;
    padding: 10px;
    width: 40px;
    height: 40px;
}

/* Paginación personalizada */
.swiper-pagination-bullet {
    background: white;
}

.swiper-pagination-bullet-active {
    background: yellow;
}


/*Fin Sección de carrusel defs ofertas*/

/* Base para todas las cards */
.card {
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.1);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.card:hover {
    transform: translateY(-5px);
    box-shadow: 0px 6px 10px rgba(0, 0, 0, 0.2);
}

/* Variante transparente */
.card--transparent {
    background-color: rgba(0, 0, 0, 0) !important;
    backdrop-filter: blur(10px);
    border: none !important;
}

/* Modificador del título en la card transparente */
.card--transparent .card__details {
    background-color: var(--main-color);
    color: #ffffff;
    margin-block: 5px 0;
    border-radius: 10px;
    padding: 10px 0;
    display: flex;              /* para que el contenido se alinee bien */
    align-items: center;
}

.card--transparent .card__price-original {
    color: rgba(255, 255, 255, 0.6);
    /* Blanco tenue para el precio original */
}

.card--transparent .card__price-discount {
    color: #ffcc00;
    /* Amarillo brillante para el precio con descuento */
}

.card--transparent .card__taxes,
.card--transparent .card__validity {
    color: rgba(255, 255, 255, 0.8);
    /* Blanco opaco para impuestos y vigencia */
}

/* Botón de reserva */
.card--transparent .card__reserve-btn {
    background-color: var(--black-color);
    color: #fff !important;
    border: none;
    border-radius: 15px !important;
    font-weight: 500;
}

.card--transparent .card__reserve-btn:hover {
    background-color: var(--main-color);
}


.card--transparent .card__info {
    color: #ffffff;
    padding: 5px;
}

.card--transparent .card__duration {}

.card--transparent .card__duration i {
    margin-right: 10px;
}

.card--transparent .card__title {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 5px 10px;
    text-align: start;
}

.card--transparent .card__pricing {
    flex-direction: column;
}


.card--transparent .card__info p {
    color: #fff;
}

.card--transparent .card__image-wrapper img {
    border-radius: 10px;
}

.card--transparent .card__badge {
    background: var(--icon-color);
    border-radius: 25px;
    display: flex;
    flex-direction: row;
}

.card--transparent .card__badge__circle {
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    border-radius: 40px;
    height: 42px;
    width: 42px;
    color: var(--black-color);
}

.card__image-img-descuento {
    width: 80%;
}

.card--transparent .card__badge__percent {
    color: #ffffff !important;
    font-size: 18px;
    font-weight: 600;
    display: flex;
    justify-content: flex-start;
    align-items: center;
}

.oferta-icon {
    color: var(--icon-color);
    display: flex;
    justify-content: center;
    align-items: center;
}

.oferta-icon svg {
    width: 35px;
    height: auto;
}



.card__info .card__duration {
    margin-block: 10px 0;
}

.card__info .card__duration span {
    font-family: var(--font-texto);
    font-weight: 400;
    margin-bottom: 0.5rem;
    font-size: 12px;
}

.card__info .card__includes {
    display: flex;
    flex-direction: row;
    gap: 8px;
    margin-bottom: 20px;
}

.card__info .card__includes span {}

.card__info .card__includes i {}

.card__footer .card__pricing {}

.card__footer .card__pricing p {}

.card__footer .card__pricing i {}

.card__footer .card__pricing span {}

.card__people {
    font-family: var(--font-texto);
    font-weight: 400;
    margin-bottom: 0.5rem;
    font-size: 10px;
}

.card__price-original {
    font-family: var(--font-texto);
    font-weight: 500;
    margin-bottom: 0.5rem;
    font-size: 12px;
    color: var(--icon-color) !important;
    text-align: start;
    text-decoration-line: line-through;
}

.card__price-original i {
    margin-right: 10px;
}

.card__price-discount {
    font-family: var(--font-texto);
    font-weight: 600;
    margin-bottom: 0.5rem;
    font-size: 22px;
    color: #fff !important;
    text-align: start;
}

.card__price-per-person {
    font-family: var(--font-texto);
    font-weight: 400;
    margin-bottom: 0.2rem;
    font-size: 10px;
    color: #fff !important;
    text-align: start;
}

.card__taxes {
    font-family: var(--font-texto);
    font-weight: 400;
    margin-bottom: 0.2rem;
    font-size: 9px;
    color: #fff !important;
    text-align: start;
}

.card__validity {
    font-family: var(--font-texto);
    font-weight: 400;
    margin-bottom: 0.5rem;
    font-size: 8px;
    color: #fff !important;
    text-align: start;
}

/*Estilos de flechas del slider*/
.carousel-offers {
    position: relative;
    /* Contenedor que define el área de las flechas */
}

.carousel-offers__swiper {
    overflow: hidden;
    /* Mantiene las cards dentro del contenedor */
}

.carousel-offers__prev,
.carousel-offers__next {
    position: absolute;
    top: 50%;
    /* Centra verticalmente */
    transform: translateY(-50%);
    z-index: 10;
    /* Asegura que las flechas estén por encima de otros elementos */
    width: 40px;
    height: 40px;
    background-color: rgba(0, 0, 0, 0.5);
    /* Fondo semitransparente */
    color: white;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.carousel-offers__swiper .swiper-button-prev {
    left: -50px;
    /* Ajusta la posición hacia fuera del carrusel */
}

.carousel-offers__swiper .swiper-button-next {
    right: -50px;
    /* Ajusta la posición hacia fuera del carrusel */
}

.carousel-offers__prev,
.carousel-offers__next {
    background-color: transparent;
    color: #ffffff;
    border: 1px solid #ffffff;
    cursor: pointer;
}

.carousel-offers__prev:hover,
.carousel-offers__next:hover {
    background-color: var(--black-color);
    cursor: pointer;
}



/*Fin Estilos de flechas del slider*/

/*Slider destacados*/
.featured-slider {
    position: relative;
    padding: 0;
    /* Espacio para las flechas */
}

.featured-slider__swiper {
    overflow: hidden;
    width: 100%;
}

.featured-slider__prev,
.featured-slider__next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 40px;
    height: 40px;
    background-color: var(--main-color);
    color: white;
    border: none;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    z-index: 10;
    transition: all 0.3s ease;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}

.featured-slider__prev {
    left: 0;
}

.featured-slider__next {
    right: 0;
}

.featured-slider__prev:hover,
.featured-slider__next:hover {
    background-color: var(--black-color);
    transform: translateY(-50%) scale(1.1);
}

/* Estilos responsivos */
@media (max-width: 768px) {
    .featured-slider {
        padding: 0 30px;
    }

    .featured-slider__prev,
    .featured-slider__next {
        width: 35px;
        height: 35px;
    }
}

@media (max-width: 480px) {
    .featured-slider {
        padding: 0 20px;
    }

    .featured-slider__prev,
    .featured-slider__next {
        width: 30px;
        height: 30px;
    }
}

/* Cards destacadas */
.card--featured .card__details {
    background: linear-gradient(to right, #6b21a8, #4338ca);
    color: white;
}

.card--featured .card__offer-title {
    font-size: 1.25rem;
    font-weight: 600;
    
}

.card__offer-title{
  display: -webkit-box;
  -webkit-line-clamp: 2;      /* <= dos líneas */
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 1.25;          /* ajusta si quieres más/menos alto */
}

.card--featured .card__description {
    font-size: 0.875rem;
    color: rgba(255, 255, 255, 0.7);
}


/*Fin Slider destacados*/


.container-euro {
    width: 100vw;
    padding: 0 40px;
}

/*Plecas de Ebe*/
.euro-pleca {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background-color: var(--black-color);
    padding: 10px 10px;
    font-weight: bold;
    position: relative;
    border-radius: 0;
    margin: 0;
    height: 70px;
    width: 300px;
}

.euro-pleca-xl {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background-color: var(--black-color);
    padding: 10px 10px;
    font-weight: bold;
    position: relative;
    border-radius: 0;
    margin: 0 0 50px 0;
    height: 70px;
    width: 480px;
}

.euro-pleca::after {
    content: "";
    position: absolute;
    top: 0;
    right: -40px;
    width: 150px;
    height: 100%;
    background-color: var(--black-color);
    border-radius: 0 20px 10px 0;
    transform: skewX(-35deg);
    transform-origin: bottom right;
}

.euro-pleca-xl::after {
    content: "";
    position: absolute;
    top: 0;
    right: -10px;
    width: 150px;
    height: 100%;
    background-color: var(--black-color);
    border-radius: 0 20px 10px 0;
    transform: skewX(-35deg);
    transform-origin: bottom right;
}

.euro-pleca__title-container {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    z-index: 1;
}

.euro-pleca__description {
    font-size: 12px;
    color: #ffffff;
}

.euro-pleca__title {
    margin: 0;
    position: relative;
    z-index: 1;
    font-size: 24px;
    color: #ffffff;
}

.euro-pleca__title-xl {
    margin: 0;
    position: relative;
    z-index: 1;
    font-size: 20px;
    color: #ffffff;
}

/* Variantes blancas de Plecas de Ebe */
.euro-pleca--white {
    background-color: #ffffff;
    border-bottom: 4px solid var(--black-color);
    margin: -15px 0 -55px 0;
    z-index: 1;
}

.euro-pleca--white h2 {
    font-size: 16px;
    font-weight: 400;
}

.euro-pleca--white i {
    margin-left: 10px;
}

.euro-pleca--white::after {
    background-color: #ffffff;
    border-bottom: 4px solid var(--black-color);
    border-right: 4px solid var(--black-color);
    height: 106%;
}

.euro-pleca--white .euro-pleca__title {
    color: var(--main-color);
}

.euro-pleca-xl--white {
    background-color: #ffffff;
    border-bottom: 4px solid var(--black-color);
}

.euro-pleca-xl--white::after {
    background-color: #ffffff;

}

.euro-pleca-xl::after .euro-pleca-xl--white .euro-pleca__title-xl {
    color: var(--main-color);
}

/*Fin Plecas de Ebe*/


/*Buscador General*/
.slider-pararp-v2 {
    margin-left: 1.2rem;
    margin-bottom: .5rem;
    color: #fff;
    font-size: 1.5rem;
}

.slider-pararp-v2 i {
    margin-right: .75rem;
    color: #fff;
    font-size: 1.5rem;
}


.euro-search {
    background-color: var(--black-color);
    height: auto;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    padding-block: 2rem;
    z-index: 10;
}

.euro-search img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: .7;
}

.euro-search .container__Home {
    position: relative;
    z-index: 1;
}


.euro-search__area {
    background: transparent;
    padding: 0 20px;
    position: relative;
}

.euro-search__tabs {
    margin-bottom: 0;
    margin-left: 0;
}

.euro-search__tab-list {
    border-bottom: 0 solid #dee2e6;
    margin-left: 5px;
    gap: 5px;
}


.euro-search__tab-list .euro-search__tab-link {
    background: var(--main-color);
    color: var(--company-text);
    border: 1px solid var(--main-color);
    border-top-left-radius: 20px;
    border-top-right-radius: 20px;
    border-bottom: 0px solid var(--main-color);
    display: flex;
    padding: 5px 35px;
    margin-bottom: -1px;
    transition: all 0.3s ease;
}

.euro-search__tab-list .euro-search__tab-link:hover {
    background: rgba(255, 255, 255, 0.9);
    color: var(--main-color);
    border-color: #ffffff;
}

.euro-search__tab-list .euro-search__tab-item.show .euro-search__tab-link,
.euro-search__tab-list .euro-search__tab-link.active {
    background: #ffffff;
    color: var(--main-color);
    border: 1px solid #ffffff;
    z-index: 5;
}

/* .euro-search__tab-link p {
            font-size: 14px;
        } */

.euro-search__form {}

.euro-search__tab-link-name {
    font-size: 14px;
}

.euro-search__tab-link-text {
    /* color: var(--company-text); */
    font-weight: 600;
    font-size: 14px;
}

.euro-search__form--container {
    display: flex;
    background: #fff;
    border-radius: 5px 5px 5px 5px;
    border: 1px solid #ebedef;
    box-shadow: 4px 14px 28px rgba(0, 0, 0, .1);
}

/*buscador movil*/
.search-summary-mobile {
    display: flex;
    align-items: center;
    background: #fff;
    padding: 0.75rem 1.25rem;
    margin-bottom: 0;
    box-shadow: 0 2px 8px rgba(0,0,0,0.06);
    font-size: 1rem;
    cursor: pointer;
    position: relative;
}
.search-summary-mobile__icon {
    color: #e4003a;
    font-size: 1.2rem;
    margin-right: 0.75rem;
}
.search-summary-mobile__chevron {
    margin-left: auto;
    color: #e4003a;
    font-size: 1.1rem;
}

.pleca-float {
        position: absolute;
        left: 0;
        top: 0px;
        z-index: 20;
        width: 400px;
    }

    #plecaAccordionContent {
        position: absolute;
        left: 50%;
        top: 0;
        transform: translateX(-50%);
        z-index: 21;
        width: 400px;
        background: #fff;
        box-shadow: 0 4px 24px rgba(0,0,0,0.08);
        display: none;
    }
    #plecaAccordionContent.show {
        display: block;
    }


/*Buscador Circuitos-Paquetes*/

.input-group {}

.input-group__wrapper {
    width: 100%;
}

.input-group__label {
    font-size: 14px;
    font-weight: bold;
    color: #374151;
    margin-bottom: 5px;
}

.input-group__container {
    position: relative;
}

.rangeDates {
    max-width: 100%;
}

.input-group__icon {
    font-size: 16px;
    color: #6b7280;
}

.input-group__icon:focus {
    color: var(--black-color);
}


.input-group__input {
    width: 100%;
    padding: 10px 40px;
    border: 1px solid #d1d5db;
    border-radius: 1rem;
    background-color: #F6F7F8;
    font-size: 14px;
    height: 45px;
}

.input-group__input:focus {
    border: 2px solid var(--black-color) !important;
    border-radius: 1rem !important;
}

.input-group__input--select {
    appearance: none;
    cursor: pointer;
}


.input-group__dropdown {
    position: relative;
}

.input-group__input--bootstrap-select {
    appearance: none;
}

/*Dorpdown*/
/* Contenedor del select personalizado */
.bootstrap-select.input-group__input--bootstrap-select {
    width: 100%;
    border-radius: 8px;
}

/* Botón del dropdown */
.bootstrap-select .dropdown-toggle {
    display: flex;
    align-items: center;
    width: 100%;
    max-width: 100%;
    padding: 10px 40px;
    border: 1px solid #d1d5db;
    border-radius: 1rem !important;
    background-color: #F6F7F8 !important;
    font-size: 14px;
    height: 45px;
}

/* Placeholder del select */
.bootstrap-select .dropdown-toggle .filter-option-inner-inner {
    color: #6b7280;
}

/* Menú desplegable */
.bootstrap-select .dropdown-menu {
    width: 100%;
    border-radius: 8px;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.1);
    overflow: hidden;
}

/* Input de búsqueda dentro del dropdown */
.bootstrap-select .bs-searchbox input {
    width: 100%;
    padding: 8px;
    border: 1px solid var(--black-color);
    border-radius: 6px;
    font-size: 14px;
}


.bootstrap-select .bs-searchbox input:focus {
    border-color: var(--black-color) !important;
    border: 3px solid var(--black-color);
    outline: none !important;
    box-shadow: none;
}


/* Opciones dentro del menú */
.bootstrap-select .dropdown-menu.inner {
    max-height: 200px;
    overflow-y: auto;
}

/* Estilo de cada opción */
.bootstrap-select .dropdown-menu li a {
    padding: 10px;
    color: #374151;
    font-size: 14px;
}

/* Estilo cuando pasas el mouse sobre una opción */
.bootstrap-select .dropdown-menu li a:hover {
    background-color: var(--black-color);
    color: white;
}



.dropdown-item.active,
.dropdown-item:active {
    color: #fff !important;
    text-decoration: none;
    background-color: var(--main-color) !important;
}

/* Ícono del dropdown en el botón */
.bootstrap-select .dropdown-toggle::after {
    content: '\f107';
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
    color: #6b7280;
    border-top: 0em solid;
}

/* Estilo cuando el select está abierto */
.bootstrap-select.show .dropdown-toggle {
    border-color: #2563eb;
}

/* === Estilos del dropdown de pasajeros === */
.dropdown_passenger_info {
    width: 100%;
    border-radius: 8px;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.1);
    overflow: hidden;
    background-color: white;
    padding: 5px !important;
}

/* Botón del dropdown */
.dropdown-toggle {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 10px 40px;
    border: 1px solid #d1d5db;
    border-radius: 1rem;
    background-color: #F6F7F8;
    font-size: 14px;
    height: 45px;
}

.dropdown-toggle::after {
    content: '\f107';
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
    color: #6b7280;
    border-top: 0em solid;
}



/* Contenedor de la selección de habitaciones */
.passengers-types {
    display: flex;
    align-items: center;
    justify-content: space-between;
    border: 1px solid #d1d5db;
    padding: 10px;
    border-radius: 8px;
    background-color: #F6F7F8;
}

/* Botones para aumentar/disminuir número de habitaciones */
.button-set button {
    border: none;
    background-color: #d1d5db;
    color: #374151;
    border-radius: 50%;
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s;
}

.button-set button:hover {
    background-color: #60a5fa;
    color: white;
}

/* Estilos para el texto dentro del dropdown */
.count {
    font-size: 18px;
    font-weight: bold;
}

.type-label p {
    font-size: 14px;
    color: #6b7280;
}

/* === Botón de búsqueda === */
.input-group__button {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    background-color: var(--black-color);
    color: white;
    font-weight: 500;
    padding: 10px 16px;
    border-radius: 16px;
    transition: background-color 0.3s ease-in-out;
    width: 100%;
    border: none;
    cursor: pointer;
    height: 45px;
}

.input-group__button:hover {
    background-color: var(--main-color);
    /* Azul más oscuro al pasar el mouse */
}

/* Ícono dentro del botón */
.input-group__button-icon {
    font-size: 16px;
}

/* === Contenedor de fechas === */

/* Específico para fechas */
.input-group__input--date {
    appearance: none;
    cursor: pointer;
}

/* Ícono izquierdo (calendario) */
.input-group__icon--left {
    position: absolute;
    left: 12px;
    top: 50%;
    transform: translateY(-50%);
    z-index: 10;
}

/* Ícono derecho (abre el selector de fechas) */
.input-group__icon--right {
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
    pointer-events: none;
}


/*Slider del Home*/
.homeSlider {}

.homeSlider__container {}

.homeSlider__carousel {}

.homeSlider__carousel--inner {}

.homeSlider__control {}

.homeSlider__control--prev {}

.homeSlider__control {}

.homeSlider__control--next {}

/*Fin de Slider del Home*/


/*Contenedor Home*/
.container__Home {
    width: 90%;
    margin-inline: 5%;
}

.bootstrap-select:not([class*=col-]):not([class*=form-control]):not(.input-group-btn) {
    width: 100%;
    border-radius: 1rem;
}

/*Fin Contenedor Home*/


/*Cards anteriores */
/*Nueva Card Lite param Carrusel*/

.cardbox-lite-v2 {
    width: 290px;
    height: 350px;
    max-width: 290px;
    max-height: 350px;
    min-width: 290px;
    min-height: 350px;
    box-shadow: 0px 6px 6px 0px rgba(0, 0, 0, 0.10);
    border-radius: 10px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.cardbox-lite-v2-img {
    height: 225px;
    display: flex;
    justify-content: center;
    align-items: center;
    overflow: hidden;
}

.cardbox-lite-v2-img img {
    object-fit: cover;
    height: 100%;
}

.cardbox-lite-v2-title {
    display: flex;
    align-items: center;
    justify-content: center;
    padding-block: 8px;
    padding-inline: 16px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.12);
    height: 65px;
    background: var(--main-color);
}

.cardbox-lite-v2-title h3 {
    color: var(--company-text);
    text-align: center;
    font-family: var(--font-texto);
    font-size: 14px;
    font-style: normal;
    font-weight: 700;
    line-height: 1.2;
}

.cardbox-lite-v2-content {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-end;
    padding: 0 16px 8px 16px;
    /*padding-block: 8px;
    padding-inline: 16px;*/
    height: auto;
    background: #fff;
}


.cardbox-lite-v2-content {
    min-height: 140px;
    /*min-height: 150px;*/
    height: 150px;
}

.cardbox-lite-v2-content-info {
    display: flex;
    flex-direction: row;
}

.cardbox-lite-v2-content-info-a {
    display: flex;
    flex-direction: row;
    /*width: 100%;*/
    padding-block: 10px;
}

.cardbox-lite-v2-content-text {
    max-height: 085px;
    overflow: hidden;
    text-overflow: ellipsis;
    padding-top: 10px;
}

.cardbox-lite-v2-content-text p {
    font-size: 12px;
}

.cardbox-lite-v2-content-precio {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding-inline: 16px;
}

.cardbox-lite-v2-content-precio h4 {
    color: var(--black-color);
    font-family: var(--font-texto);
    font-size: 12px;
    font-style: normal;
    font-weight: 300;
    line-height: normal;
}

.cardbox-lite-v2-content-precio h3 {
    color: var(--black-color);
    font-family: var(--font-texto);
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
}

.cardbox-lite-v2-content-precio p {
    color: var(--black-color);
    font-family: var(--font-texto);
    font-size: 9px;
    font-style: normal;
    font-weight: 300;
    line-height: normal;
}

.cardbox-lite-v2-precio {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
}

.cardbox-lite-v2-precio h4 {
    color: var(--main-color);
    font-family: var(--font-texto);
    font-size: 12px;
    font-style: normal;
    font-weight: 300;
    line-height: normal;
}

.cardbox-lite-v2-precio h5 {
    color: #AAB4BC;
    font-family: var(--font-texto);
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    text-decoration-line: line-through;
}

.cardbox-lite-v2-precio h3 {
    color: var(--main-color);
    font-family: var(--font-texto);
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
}

.cardbox-lite-v2-precio p {
    color: var(--main-color);
    font-family: var(--font-texto);
    font-size: 9px;
    font-style: normal;
    font-weight: 300;
    line-height: normal;
}




.cardbox-lite-v2-boton {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
}

.cardbox-lite-button-active {
    width: auto;
    height: 30px;
    padding: 4px 10px;
    flex-shrink: 0;
    background: var(--main-color) !important;
    border: 1px solid var(--main-color);
    border-radius: 20px;
    color: #fff;
    font-size: 12px;
    border: 1px solid transparent;
}

.cardbox-oferta-container {
    position: absolute;
    top: 0;
    right: 10px;
    width: 40px;
    height: 100px;
    display: flex;
    flex-direction: column;
    align-items: center;
    z-index: 10;
}

.cardbox-oferta {
    background-color: #FF0000;
    color: white;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    font-weight: bold;
    font-size: 14px;
    transform: rotate(0deg);
    writing-mode: vertical-rl;
    text-orientation: mixed;

    clip-path: polygon(0 0,
            /* arriba izquierda */
            100% 0,
            /* arriba derecha */
            100% 100%,
            /* abajo derecha */
            50% 85%,
            /* centro hacia arriba */
            0 100%
            /* abajo izquierda */
        );

}

.cardbox-oferta p {
    color: #fff;
    font-size: 13px;
    line-height: normal;
}

.cardbox-oferta i {
    color: #fff;
    font-size: 13px;
    margin-bottom: 5px;
    margin-top: -10px;
}

/*Cards anteriores */

/*Texto de alerta defs notas center dolares*/
.euro-note {
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    align-items: center;
    margin: 0;
    padding: 12px 5%;
}

.euro-note__text {
    font-size: 14px;
    color: #33475B;
    line-height: 1.5;
    font-weight: 400;
    text-align: end;
}

.euro-note__textPrice {
    font-size: 12px;
    color: #000000;
    line-height: 1.2;
    font-weight: 400;
    text-align: end;
    margin-top: 15px;
}

.euro-note__highlight {
    font-weight: 500;
}

.euro-note__strong {
    font-weight: 600;
}

/*Fin Texto de alerta defs notas center dolares*/


/*Holiday Destinations Area*/
.holiday_left_heading {
    background: #F3F6FD;
    border-radius: 20px;
    padding: 70px 45px;
    margin-top: 30px;
}

.holiday_small_boxed {
    border-radius: 1rem;
    overflow: hidden;
    position: relative;
    max-height: 320px;
    /*margin-bottom: 20px;*/
}

.holiday_small_boxed img {
    height: 100%;
    transition: var(--transition);
    object-fit: cover;
    border-radius: 1rem;
    object-position: center center;
}

.holiday_small_boxed:hover img {
    transform: scale(1.1);
    background: linear-gradient(359deg, #111018 0%, rgba(217, 217, 217, 0) 70%);
}

.holiday_small_boxed:hover .holiday_small_box_content {
    opacity: 1;
}

/*.holiday_small_box_content {
    background: linear-gradient(359deg, #111018 0%, rgb(217 217 217 / 0%) 70%);
    border-radius: 20px;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    transition: var(--transition);
}*/

.holiday_inner_content {
    position: absolute;
    bottom: 0;
    width: 100%;
    padding: 30px 20px;
}

.holiday_inner_content h3 {
    color: var(--white-color);
    padding: 10px 0;
    font-weight: 400;
}

.holiday_inner_content h4 {
    color: var(--white-color);
    font-weight: 400;
}

.holiday_inner_content-a h4 {
    color: #FFF;
    font-family: Roboto;
    font-size: 22px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
}

.holiday_inner_content p {
    color: var(--white-color);
    padding-top: 5px;
    font-weight: 400;
    font-size: 14px;
    line-height: 24px;
}

/*Fin Holiday Destinations Area*/

/*Newsletter Area*/
.section-newsletter-contact {
    background-color: rgba(231, 0, 51, 0.13);
    padding-block: 80px;
    background-image: url(https://eurocdn.azureedge.net/bucket/EBE/sears/646avionPuntitos_VSearsw.webp);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
}

.section-euromundo-contact {
    background-color: rgba(42, 44, 103, 0.1);
    padding-block: 120px 0;
    background-image: url(https://eurocdn.azureedge.net/bucket/EBE/euro/232FondoCTAEuro-a.avif);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
}

.col-newsletter-contact {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    padding: 3% 15% 0 35px;
}

.col-newsletter-contact h3 {
    color: var(--main-color);
    text-align: center;
    font-family: var(--font-titulo);
    font-size: 30px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
    width: 100%;
    margin-bottom: 25px;
}

.col-newsletter-contact p {
    color: #000;
    text-align: center;
    font-family: var(--font-texto);
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    width: 100%;
    margin-bottom: 10px;
}

.form-newsletter-contact {
    padding: 30px 30px 15px 35px;
    border-radius: 10px;
    background: #FFF;
    box-shadow: 0px 2px 22px 0px rgba(0, 0, 0, 0.10);
}

/*Fin Newsletter Area*/



/*Footer*/
.container-footer-home {
    padding: 25px 25px 10px 25px;
}

.section-bottom-iconWhats {
    display: flex;
    justify-content: space-between;
}

.section-footer-column-title img {
    width: auto;
    height: 4rem;
    margin-top: 32px;
    margin-bottom: 32px;
}

.mainWhastappButtonHomeEuroMobile {
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 999;
}

.mainWhastappButtonEuroMobile {
    display: flex;
    align-items: center;
    justify-content: center;
    width: auto;
    height: 42px;
    background: #25d366;
    color: #fff;
    padding-inline: 20px;
    border-radius: 20px;
    border: 1px solid #25d366;
    flex-shrink: 0;
    line-height: normal;
    font-style: normal;
    font-weight: 300;
}

.mainWhastappButtonEuroMobile i {
    margin-right: 12px;
    font-size: 20px;
    color: #fff;
}

.mainWhastappButtonEuroMobile p {
    display: block;
    font-size: 14px;
    color: #fff;
}

.section-footer-column-title h4 {
    color: var(--main-color);
    font-family: var(--font-titulo);
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    margin-bottom: 24px;
}

.section-footer-column-content {
    margin-bottom: 10px;
}

.section-footer-column-content-row {
    margin-bottom: 15px;
}

.section-footer-column-content-row p {
    color: #000;
    font-family: var(--font-texto);
    font-size: 13px;
    font-style: normal;
    font-weight: 400;
    line-height: 1.5;
}

.section-footer-column-content-row i {
    width: 18px;
    height: auto;
    color: var(--main-color);
    margin-right: 10px;
    font-size: 18px;
}

.section-footer-column-content-row a {
    color: #000000;
}

.section-subfooter-home {
    background-color: var(--main-color);
    color: #fff;
    height: 80px;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    padding: 0px 30px;
}

.section-subfooter-home-container {
    width: 100%;
}

.section-subfooter-content-a {
    display: flex;
    justify-content: flex-start;
}

.section-subfooter-home-text h5 {
    color: var(--company-text);
    font-family: var(--font-texto);
    font-size: 12px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
}

.section-subfooter-content-b {
    display: flex;
    justify-content: flex-end;
}

.section-subfooter-home-text a {
    color: var(--company-text);
    font-size: 12px;
    line-height: normal;
}

.section-subfooter-home-text i {
    margin-left: 8px;
    font-size: 22px;
    transition: transform .3sease;
}

/*Fin de Footer*/

/*Top To Bottom*/
.go-top {
    position: fixed;
    cursor: pointer;
    bottom: 15px;
    right: 15px;
    color: var(--company-text);
    border: 1px solid var(--company-text);
    background-color: var(--main-color);
    z-index: 4;
    width: 40px;
    text-align: center;
    height: 40px;
    line-height: 40px;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.9s, visibility 0.9s, transform 0.9s;
    border-radius: 50%;
}

/* Estado activo cuando el botón "Go to Top" aparece */
.go-top.active {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.go-top i {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
    right: 0;
    margin: 0 auto;
    transition: opacity 0.6s, top 0.6s, visibility 0.6s;
}

/* Cambios en el segundo ícono cuando está en hover */
.go-top i:last-child {
    opacity: 0;
    visibility: hidden;
    top: 60%;
}

/* Estilo del contenedor antes del hover */
.go-top::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    background: var(--main-color);
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.6s, visibility 0.6s;
    border-radius: 50%;
}

/* Efectos hover */
.go-top:hover,
.go-top:focus {
    color: var(--company-text);
}

.go-top:hover::before,
.go-top:focus::before {
    opacity: 1;
    visibility: visible;
}

.go-top:hover i:first-child,
.go-top:focus i:first-child {
    opacity: 0;
    top: 0;
    visibility: hidden;
}

.go-top:hover i:last-child,
.go-top:focus i:last-child {
    opacity: 1;
    visibility: visible;
    top: 50%;
}

/*Fin Top To Bottom*/

/*About Us*/

.sectionAboutus {
    background-color: #ffffff;
}

.sectionAboutus__container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 0 50px 25px;
}

.sectionAboutus__text {
    flex: 1;
}

.sectionAboutus__text--h3 {
    margin-bottom: 1rem;
}

.sectionAboutus__image {
    width: 100%;
    flex: 1;
}

.sectionAboutus__text p {
    margin-bottom: 1rem;
}

.sectionAboutus__span {
    color: var(--main-color);
}

/* Estilos Card Revistas */
.sectionRevistas {
    background-color: #fff;
}

.section-magazine-grid {
    background-color: #fff;
    padding-block: 0 80px;
}

.sectionRevistas__container {
    max-width: 1480px;
}

.sectionRevistas__card {
    background-color: transparent;
    border: 2px solid var(--border-color);
    border-radius: 10px;
    padding: 16px;
    text-align: center;
    margin-bottom: 30px;
    margin-top: 30px;
}

.sectionRevistas__row {
    margin-block: 24px;
}

.sectionRevistas__card:hover {}


.sectionRevistas__card img {
    width: 100%;
    height: auto;
    border: 1px solid var(--border-color);
    margin: 10px 0;
}

.sectionRevistas__card h4 {
    font-size: 18px;
    color: var(--main-color);
    margin-bottom: 4px;
    font-weight: 700;
}


.sectionRevistas__card p {
    font-size: 12px;
    color: #28333E;
    margin-bottom: 12px;
    font-weight: 700;
    font-weight: 600;
    font-size: 12px;
    line-height: 100%;
    text-align: center;
    vertical-align: middle;
}

.sectionRevistas__button-magazine {
    display: block;
    margin-top: 15px;
}

.sectionRevistas__col--button,
.sectionRevistas__col--button-b {
    display: flex;
}

.sectionRevistas__col--button button,
.sectionRevistas__col--button-b button {
    width: 100%;
    border-radius: 20px;
    padding: 5px 0;
    font-size: 14px;
    transition: all 0.3s ease;
}

/* Botón primario */
.sectionRevistas__col--button button {
    background: var(--main-color);
    color: #fff;
    border: 1px solid var(--main-color);
}

.sectionRevistas__col--button button:hover {
    background: #fff;
    color: var(--main-color);
    border: 1px solid var(--main-color);
}

/* Botón secundario */
.sectionRevistas__col--button-b button {
    background: #fff;
    color: var(--main-color);
    border: 1px solid var(--main-color);
}

.sectionRevistas__col--button-b button:hover {
    background: var(--main-color);
    color: #fff;
    border: 1px solid var(--main-color);
}

/* Estilos para íconos */
.sectionRevistas__col--button i,
.sectionRevistas__col--button-b i {
    margin-right: 10px;
    transition: color 0.3s ease;
}

.sectionRevistas__col--button i {
    color: #fff;
}

.sectionRevistas__col--button-b i {
    color: var(--main-color);
}

.sectionRevistas__col--button:hover i {
    color: var(--main-color);
}

.sectionRevistas__col--button-b:hover i {
    color: #fff;
}

.sectionSucursales {
    background-color: #ffffff;
}


.sectionSucursales__wrapper {
    width: 100%;
    border: 1px solid var(--black-color);
    border-radius: 10px;
    overflow: hidden;
}

.sectionSucursales__form {
    padding: 20px 30px;
}

.sectionSucursales__form label {
    font-weight: 400;
    font-size: 12px;
    line-height: 100%;
    letter-spacing: 0%;
    vertical-align: middle;
}

.sectionSucursales__form select {
    border-radius: 30px;
    border-color: #8B96A2;
    background-color: #F6F7F8;
    font-weight: 500;
    font-size: 14px;
    line-height: 100%;
    letter-spacing: 0%;
}

.sectionSucursales__map {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 3rem;
    width: 100%;
}

.sectionSucursales__map-inner {
    max-width: 700px;
    width: 100%;
    height: 300px !important;
    border-radius: 10px;
    border: none;
    overflow: hidden;
}

.map_area {
    width: 100%;

}

.sectionSucursales__map iframe {
    width: 100%;
    height: 300px;
    border-radius: 10px;
    border: none;

}

.sectionSucursales__footer {
    background-color: #878787;
    width: 100%;
    border-radius: 0px 0px 10px 10px;
    margin-left: 0px;
    padding-left: 0px;
    padding-right: 0px;
    color: #FFFFFF;
    padding: 15px;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
}

.sectionSucursales__footer-group {
    margin: 20px 25%;
    font-weight: 400;
    font-size: 14px;
    line-height: 100%;
    align-items: center;
    justify-content: flex-start;
    flex-direction: row;
}

.sectionSucursales__footer-item {
    justify-content: center;
    text-align: left;
}

.sectionSucursales__footer-item i {
    font-size: 1rem;
}

.sectionSucursales__footer-item p {
    font-size: 0.85rem;
    text-align: left;
}

/* ESTILOS DE ABOUT US CON CKEDITOR */
.sectionAboutUs{
    padding: 30px;
}


/**Estilos Formularios**/
.sectionFormulario {
    width: 100%;
    border: 1px solid var(--border-color);
    border-radius: 10px;
    overflow: hidden;
}

.sectionSucursales__wrapper {
    overflow: hidden;
    padding-right: 0 !important;
    padding-left: 0 !important;
}

.sectionSucursales__wrapper-title {
    display: none;
    font-weight: 600;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: 0%;
    vertical-align: middle;
}

.sectionFormulario__container {
    padding: 6rem;
}

.sectionFormulario__group {
    margin-bottom: 20px;
}

.sectionFormulario__label {
    display: block;
    margin-bottom: 8px;
    font-weight: 600;
    color: #333;
    font-size: 14px;
}

.sectionFormulario__input,
.sectionFormulario__textarea {
    width: 100%;
    padding: 10px 14px;
    border: 1px solid #8B96A2;
    border-radius: 15px;
    font-size: 14px;
    background-color: #f9f9f9;
    transition: border-color 0.3s ease, box-shadow 0.3s ease;
    color: #28333E;

}

.sectionFormulario__input:focus,
.sectionFormulario__textarea:focus {
    border-color: var(--main-color, #d80027);
    box-shadow: 0 0 0 2px rgba(216, 0, 39, 0.1);
    outline: none;
    background-color: #fff;
}

.sectionFormulario__input {
    height: 40px;
}

.sectionFormulario__button {
    padding: 7px 40px !important;
    background-color: var(--main-color) !important;
    border: none;
    border-radius: 25px;
    color: #fff !important;
    font-weight: bold;
    font-size: 15px;
    transition: background-color 0.3s ease;
    margin-bottom: 20px;
    font-weight: 500;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: 0%;
    text-align: center;
    vertical-align: middle;
}

.sectionFormulario__button:hover {
    background-color: var(--black-color) !important;
}

.sectionFormulario__Contacto-title {
    font-weight: 700;
    font-size: 20px;
    line-height: 100%;
    letter-spacing: 0%;
    text-transform: lowercase;
    color: var(--main-color);
}

.sectionFormulario__Contacto-text {
    font-weight: 400;
    font-size: 9px;
    line-height: 100%;
    letter-spacing: 0%;
    text-align: right;
    vertical-align: middle;
}

.responsive__container {
    display: flex;
    flex-direction: column-reverse;
    gap: 2rem;
}

.sectionFormulario__check {
    margin-top: 0px;
}

.sectionFormulario__label--check {
    font-weight: 400;
    font-size: 12px;
    line-height: 100%;
    letter-spacing: 0%;
    vertical-align: middle;
}

.sectionFormulario__label--check a {
    font-weight: 700;
    font-size: 12px;
    line-height: 100%;
    vertical-align: middle;
    text-decoration: underline;
    text-decoration-style: solid;
    text-decoration-thickness: 0%;
}


/** ESTILOS FORMULARIO HOME **/



.Home__container {
    width: 90%;
    margin-inline: 5%;
}

.Home__container-search {
    background: transparent;
    padding: 0px;
    position: relative;
}


.section-blue-b {
    background-color: var(--black-color);
    height: auto;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    padding-block: 3rem;
}

.section-blue-b img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0.7;
}

.Search-group__label {
    font-weight: 500;
    font-size: 12px;
    line-height: 100%;
    letter-spacing: 0%;
    color: #33475B;
    background-color: transparent;
}

.Home__container-menu {
    font-weight: 500;
    font-size: 20px;
    line-height: 16px;
    color: #ffffff;
}

/*Fin Top To Bottom*/

/* Estilos del Footer */
.euro-footer {
    background-color: #ffffff;
}

.euro-footer__main {
    padding: 4rem 0;
}

.euro-footer__title {
    font-size: 1.125rem;
    font-weight: 600;
    margin-bottom: 1.5rem;
    color: var(--black-color);
}

.euro-footer__link {
    color: var(--black-color);
    transition: all 0.3s ease;
    font-size: 1rem;
}

.euro-footer__link:hover {
    color: var(--main-color);
    transform: translateX(5px);
}

.euro-footer__contact-item {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-bottom: 1rem;
}

.euro-footer__icon {
    color: var(--main-color);
    font-size: 1.25rem;
}

/* Subfooter */
.euro-footer__sub {
    background-color: var(--main-color);
    color: white;
    padding: 1.5rem 0;
}

.euro-footer__sub-content {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 1rem;
}

.euro-footer__social {
    display: flex;
    align-items: center;
    gap: 1.5rem;
}

.euro-footer__social-text {
    color: var(--company-text);
    font-size: 0.875rem;
    margin-right: 1rem;
}

.euro-footer__social-icons {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.euro-footer__social-link {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 35px;
    height: 35px;
    border-radius: 50%;
    background-color: transparent;
    border: 1px solid var(--company-text);
    color: var(--company-text);
    transition: all 0.3s ease;
    text-decoration: none;
}

.euro-footer__social-link:hover {
    background-color: var(--company-text);
    color: var(--main-color);
    transform: translateY(-3px);
    text-decoration: none;
}

.euro-footer__social-icon {
    font-size: 1rem;
}

/* Responsive */
@media (max-width: 768px) {
    .euro-footer__sub-content {
        flex-direction: column;
        text-align: center;
    }

    .euro-footer__social {
        margin-top: 1rem;
    }

    .euro-footer__title {
        font-size: 1rem;
    }

    .euro-footer__contact-item {
        font-size: 0.875rem;
    }
}

@media (max-width: 480px) {
    .euro-footer__main {
        padding: 2rem 0;
    }

    .euro-footer__social-icons {
        gap: 0.5rem;
    }

    .euro-footer__social-icon {
        font-size: 1.25rem;
    }
}


/*Footer*/
.euro-footer__contact {
    margin-top: 1rem;
    display: flex;
    justify-content: center;
}

.euro-footer__contact-whatsapp {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    background-color: #25D366;
    padding: 0.5rem 1rem;
    border-radius: 9999px;
    text-decoration: none;
    transition: all 0.3s ease;
}

.euro-footer__contact-whatsapp:hover {
    background-color: #128C7E;
    transform: translateY(-2px);
    text-decoration: none;
}

.euro-footer__contact-whatsapp-icon {
    color: #ffffff;
    font-size: 1.25rem;
}

.euro-footer__contact-whatsapp-text {
    color: #ffffff;
    font-family: var(--font-texto);
    font-weight: 500;
    font-size: 0.875rem;
}

@media (max-width: 768px) {
    .euro-footer__contact-whatsapp-text {
        font-size: 0.75rem;
    }
}

/*Fin Footer*/



.daterangepicker td.active,
.daterangepicker td.active:hover {
    background-color: var(--black-color);
    border-color: transparent;
    color: #fff;
}

.button-set button:hover {
    background-color: var(--main-color);
}

.drp-buttons .applyBtn {
    background-color: var(--main-color);
}

.flatpickr-day.selected {
    background-color: var(--main-color);
}

.flatpickr-day.selected:hover {
    background-color: var(--black-color);
}

.flatpickr-day.today {
    border-color: var(--black-color);
}

.search-input-container-radio-group {
    display: flex;
    gap: 15px;
    margin-top: 5px !important;
    margin-bottom: -10px;
    margin-left: 0px;
}

.search-input-container-radio-option {
    display: flex;
    align-items: center;
    font-family: Arial, sans-serif;
    font-size: 14px;
    color: #5A5A5A;
}

.SeaechFlight {
    padding: 10px 30px;
}

.ui-widget {
    font-size: 15px !important;
    border-radius: 15px;
    padding: 10px;
}

.ui-menu .ui-menu-item-wrapper:hover {
    background-color: var(--main-color);
}

.ui-menu .ui-menu-item-wrapper {
    border-radius: 10px;
}

.ui-menu .ui-menu-item-wrapper:focus {
    background-color: var(--main-color);
}

.bannerImg {
    padding-left: 12rem;
}

.bannerImg__text {
    font-size: 16px;
    padding-right: 18rem;
}

.textEuroSearch {
    font-weight: 500;
    font-size: 14px;
    line-height: 16px;
    vertical-align: middle;
}

.encabezadoResultados {
    background-color: #EBEDEF;
    border-radius: 10px;
    padding: 5px 20px;
}

.encabezadoResultados-texts {
    font-size: 14px;
    font-weight: 400;
    font-size: 14px;
    line-height: 100%;
    /* letter-spacing: 0%; */
    vertical-align: middle;
}

.encabezadoResultados-texts a {
    color: var(--main-color);
}

.encabezadoResultados select {
    border-radius: 10px;
    width: 60%;
    font-size: 0.8rem;
}

.filter-box {
    border-radius: 10px;
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
    overflow: hidden;
    max-width: 100%;
}

.filter-header {
    background-color: var(--main-color);
    color: white;
    padding: 10px 15px;
}

.search-btn {
    border-radius: 20%;
    width: 38px;
    height: 38px;
    display: flex;
    align-items: center;
    justify-content: center;

}

.range-label {
    font-weight: bold;
}

.input-clearable {
    position: relative;
    flex-grow: 1;
}

.input-clearable input {
    padding-right: 30px;
    border: 1px solid #AAB4BC;
    border-radius: 10px;
    width: 100%;
}

.input-clearable .clear-btn {
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
    background-color: var(--main-color);
    border: none;
    font-size: 1rem;
    color: #ffffff;
    cursor: pointer;
    border-radius: 50%;
    width: 23px;
    height: 23px;
    line-height: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

.clear-btn p {
    font-size: 18px;
    font-weight: 600;
    padding-top: 0px;
    padding-bottom: 3px;
}

.filter__button-rp {
    border-radius: 20px;
    padding: 5px 20px;
    background-color: var(--main-color);
    color: #ffffff;
}

.filter__button-rp:hover {
    background-color: var(--black-color);
    color: #ffffff;
}

.button__card-primary {
    background-color: #ffffff;
    color: var(--main-color);
}

.button__card-primary:hover {
    background-color: var(--black-color);
    color: #FFFFFF;
}

.filter__noUi.noUi-target {
    height: 4px;
    margin-right: 0.5rem;
}

.filter__noUi .noUi-handle {
    width: 14px;
    height: 14px;
    top: -5px;
}

/* Contenedor general del slider */
.filter__noUi.noUi-target {
    background-color: #f8f9fa;
    /* gris claro */
    border: 1px solid #dee2e6;
    border-radius: 0.5rem;
    height: 5px;
}

/* Línea de conexión activa */
.filter__noUi .noUi-connect {
    background-color: var(--main-color);
}

/* Manijas (handles) */
.filter__noUi .noUi-handle {
    width: 20px;
    height: 20px;
    top: 0px;
    left: 0px;
    border: 2px solid var(--main-color);
    border-radius: 50%;
    box-shadow: 0 0 2px rgba(0, 0, 0, 0.2);
    cursor: pointer;
}

/* Área táctil interna para manijas */
.filter__noUi .noUi-touch-area {
    width: 100%;
    height: 100%;
}

/* Suprime el borde azul de enfoque nativo */
.filter__noUi .noUi-handle:focus {
    outline: none;
    box-shadow: 0 0 0 0.25rem rgba(230, 0, 45, 0.25);
}



html:not([dir="rtl"]) .noUi-horizontal .noUi-handle {
    right: -1.2rem;
    left: auto;
}

.euro-note__textPriceMovil {
    display: none;
}

.paginator__page-item:last-child .page-link {
    border-top-right-radius: 1.25rem;
    border-bottom-right-radius: 1.25rem;
}

.paginator__page-item:first-child .page-link {
    border-top-left-radius: 1.25rem;
    border-bottom-left-radius: 1.25rem;
}

.buscador__page-link {
    background-color: #EBEDEF;
    color: var(--main-color)
}

.paginator__page-item.disabled .page-link {
    background-color: #EBEDEF;
    color: var(--main-color)
}

.paginator__page-item.active .page-link {
    z-index: 3;
    color: #fff;
    background-color: var(--main-color);
    border-color: var(--border-color);
}

.paginator__strong {
    color: var(--black-color);
}

.paginator__page-link:hover {
    background-color: var(--black-color);
    color: #FFFFFF;
}

.auravia-card__start {
    font-size: 12px;
    text-align: left;
    color: var(--main-color);
    margin-left: 30px;
    margin-bottom: 20px;
}

/****************************+*******+++********************** AURAVIA TRASLADO ****************************+*******+++**********************/
.cardAuraviaTraslado {
    border-radius: 10px;
    border: 1px solid var(--border-color);
}

/* Fraja Titulo Card */
.cardAuraviaTraslado__franjaCard {
    color: #ffffff;
    background-color: var(--main-color);
}

/* Textos Salida/Resgreso */
.cardAuraviaTraslado__textCard {
    padding: 1.5rem;
}

.cardAuraviaTraslado__textCard-colorGray {
    color: #5D6974;
}

.cardAuraviaTraslado__textCard-colorGray2 {
    color: #28333E;
}

.cardAuraviaTraslado__btnCard {
    background-color: var(--black-color);
    border-radius: 20px;
    padding: 10px;
    color: #ffffff;
    width: 100%;
}

.cardAuraviaTraslado__btnCard:hover {
    background-color: var(--main-color);
}

.cardAuraviaTraslado__textCard-price {
    width: 250px;
    padding: 1.5rem;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-end;
    text-align: right;
}

.cardAuraviaTraslado__imgCard {
    max-width: 300px;
}

/* Paginador Auravia */

.paginator__strong {
    color: var(--black-color);
}


.buscadorAuravia__page-link {
    background-color: #EBEDEF;
    color: var(--black-color)
}



.paginatorAuravia__page-item:last-child .page-link {
    border-top-right-radius: 1.25rem;
    border-bottom-right-radius: 1.25rem;
}

.paginatorAuravia__page-item:first-child .page-link {
    border-top-left-radius: 1.25rem;
    border-bottom-left-radius: 1.25rem;
}

.buscadorAuravia__page-link {
    background-color: #EBEDEF;
    color: var(--black-color)
}

.paginatorAuravia__page-item.disabled .page-link {
    background-color: #EBEDEF;
    color: var(--black-color)
}

.paginatorAuravia__page-item.active .page-link {
    z-index: 3;
    color: #fff;
    background-color: var(--black-color);
    border-color: var(--border-color);
}

.paginatorAuravia__strong {
    color: var(--black-color);
}

.paginatorAuravia__page-link:hover {
    background-color: var(--main-color);
    color: #FFFFFF;
}


/****************************+*******+++********************** AURAVIA HOTELES ****************************+*******+++**********************/
.cardAuraviaHoteles {
    border: 1px solid var(--border-color);
    max-width: 350px;
    border-radius: 20px;
}


.cardAuraviaHoteles__stars {
    color: #F7C51A;
    font-size: 12px;
    padding-left: 15px;
}

.cardAuraviaHoteles__content {
    padding: 10px 35px;
    font-size: 14px;
}

.cardAuraviaHoteles__footer {
    background-color: var(--main-color);
}

.cardAuraviaHoteles__footer-btn {
    background-color: var(--black-color);
    border: 1px solid var(--black-color);
    padding-top: .5rem;
    padding-bottom: .5rem;
    padding-right: 1.5rem;
    padding-left: 1.5rem;
}

.cardAuraviaHoteles__footer-btn:hover {
    background-color: #ffffff;
    border: 1px solid var(--black-color);
    color: var(--main-color);
}

.cardAuraviaHoteles__filter-stars {
    color: #F7C51A;
    font-size: 12px;
}

/* OFERTA CARDS */
.ribbon-oferta-vertical {
    position: absolute;
    top: 0;
    right: 0;
    width: 42px;
    height: 115px;
    background-color: red;
    color: white;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    font-weight: bold;
    font-size: 0.75rem;
    padding-top: 8px;
    z-index: 10;
    clip-path: polygon(0 0, 100% 0, 100% 100%, 50% 90%, 0 100%, 0 0);
    margin-right: 10px;
}

.ribbon-oferta-vertical i {
    font-size: 1rem;
    margin-bottom: 4px;
}

.ribbon-oferta-vertical span {
    writing-mode: vertical-lr;
    transform: rotate(180deg);
    text-align: center;
    letter-spacing: 1px;
}

/****************************+*******+++********************** FIN AURAVIA HOTELES ****************************+*******+++**********************/


/****************************+*******+++********************** AURAVIA HOTEL + VUELOS ****************************+*******+++**********************/

.search-item-v2 {
    margin-bottom: 30px;
    background: #fff;
    border-radius: 10px;
    border: 1px solid #ebedef;
    box-shadow: 0 2px 22px 0 rgba(0, 0, 0, .1);
    overflow: hidden;
}

.search-item-box1-v2 {
    height: auto;
    margin: 0;
    padding: 0;
}

.search-item-box1-left-v2 {
    margin: 0;
    padding: 0;
    height: 100%;
    padding-right: 0 !important;
    padding-left: 0 !important;
}

.search-item-img-v2 {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.search-item-img-v2 img {
    width: 100%;
    height: 100%;
    min-height: 260px;
    max-height: 260px;
    object-fit: cover;
    border-radius: 5px 0 0 0;
}

.search-item-box1-rigth-v2 {
    padding: 0;
    padding-right: 0 !important;
    padding-left: 0 !important;
}

.search-item-description-name {
    color: #000;
    font-size: 20px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    margin-bottom: 0;
}

.search-item-description-a-v2 {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.search-item-description-star {
    margin-top: 30px !important;
    margin-bottom: 15px;
    font-size: 12px;
}

.search-item-description-star span {
    color: #ffc107 !important;
}

.search-item-description-cuarto {
    color: #000;
    font-family: var(--font-texto);
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    margin-top: 12px;
    margin-bottom: 0;
}

.search-item-description-b-v2 {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 5px;
}

.search-item-description-tipo {
    color: var(--black-color);
    font-family: var(--font-texto);
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    margin-bottom: 8px;
}

.search-item-description-dias {
    color: #000;
    display: flex;
    font-family: var(--font-texto);
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    margin-bottom: 8px !important;
    align-items: center;
}

.hotelDetail-container-diasAndPersons{
    gap: 10px;
}

.hotelDetail-diasAndPersons{
    align-items: center;
}

.search-item-description-icon {
    margin-right: 10px;
    font-size: 12px;
}

.search-item-description-cajadeprecio {
    display: flex;
    align-items: end;
    flex-direction: column;
}

.search-item-description-personas {
    color: #000;
    font-family: var(--font-texto);
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    margin-right: 0;
    margin-bottom: 0;
}

.search-item-description-precio {
    color: #000;
    font-family: Roboto;
    font-size: 20px;
    font-style: normal;
    font-weight: 800;
    line-height: normal;
    margin-bottom: 0;
}

.search-item-description-precioxpersona {
    color: #000;
    font-family: var(--font-texto);
    font-size: 12px;
    font-style: normal;
    font-weight: 300;
    line-height: normal;
    margin-bottom: 0;
}

.search-item-description-impuestos {
    color: #000;
    font-family: var(--font-texto);
    font-size: 12px;
    font-style: normal;
    font-weight: 300;
    line-height: normal;
}

.search-item-description-boton {
    width: 150px;
    height: 35px;
    flex-shrink: 0;
    background: var(--main-color) !important;
    border-radius: 20px;
    color: #fff;
    margin-top: 20px;
    font-size: 14px;
}

.btn_theme {
    color: var(--company-text);
    background-color: var(--black-color);
    transition: var(--transition);
    box-shadow: none;
    overflow: hidden;
    white-space: nowrap;
    position: relative;
    z-index: 0;
    border: none;
    border-radius: 25px !important;
    padding: 5px 25px;
}

.btn_theme:hover {
    background-color: var(--main-color);
    color: #fff;
}

.btn_theme:before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 50%;
    width: 937px;
    height: 550px;
    margin: auto;
    background-color: var(--black-color);
    border-radius: 30px;
    z-index: -1;
    -webkit-transform-origin: top center;
    transform-origin: top center;
    -webkit-transform: translateX(-50%) translateY(-5%) scale(.4);
    transform: translateX(-50%) translateY(-5%) scale(.4);
    transition: var(--transition);
}

.search-item-box2-v2 {
    margin: 0;
    padding: 0;
    border-top: 1px solid #dde1e4;
    border-radius: 0;
    overflow: hidden;
    padding-right: 0;
    padding-left: 0;
    min-height: 45px !important;
    height: auto;
}

.search-item-box2-accordion-item-v2 {
    background-color: #fff;
    border: 0px solid !important;
}

.search-item-box2-accordion-item-v2:last-of-type {
    border-bottom-right-radius: 0rem !important;
    border-bottom-left-radius: 0rem !important;
}

.search-item-box2-accordion-item-v2:first-of-type {
    border-top-left-radius: 0rem !important;
    border-top-right-radius: 0rem !important;
}

.search-item-box2-accordion-item-v2 H2 {
    font-size: 34px !important;
}

.accordion-header {
    margin-bottom: 0;
}

.accordion-button-b {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    padding: 1rem 1.25rem;
    font-size: .9rem;
    color: #212529;
    text-align: left;
    background-color: #fff;
    border: 0;
    border-bottom: 1px solid #dde1e4;
    border-radius: 0;
    transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out, border-radius .15s ease;
    margin-top: 7px;
    margin-bottom: 0;
    padding-top: 2px;
    padding-bottom: 5px;
    height: 40px;
}

.search-item-box2-accordion-icon-v2 {
    margin-right: 5px;
}

.accordion-item:last-of-type .accordion-collapse {
    border-bottom-right-radius: .25rem;
    border-bottom-left-radius: .25rem;
}

.search-item-description-b-v2-contenedorGene {
    border-right: 1px solid #dde1e4;
    padding-left: 35px !important;
    padding-block: 15px !important;
}

.container-search-item-fechavuelo {
    display: flex;
    flex-direction: row;
    align-items: flex-end;
    gap: 10px;
    margin-bottom: 10px;
}

.container-search-item-fechavuelo p {
    font-family: var(--font-texto);
    font-size: 13px;
    font-style: normal;
    line-height: normal;
    font-weight: 500;
    margin-bottom: 0;
    text-align: start;
    margin-bottom: 0;
    color: #646D74;
}

.search-item-description-b-v2-logo {
    display: flex;
}

.search-item-description-b-v2-logo {
    display: flex;
    justify-content: center !important;
    flex-direction: column;
    align-items: flex-start;
    align-items: center;
}

.search-item-description-b-v2-logo img {
    width: 42px;
    height: 42px;
    flex-shrink: 0;
    border-radius: 30px;
}

.search-item-description-b-v2-logo p {
    margin-top: 0;
    font-size: 11px;
    text-align: center;
}

.search-item-description-b-v2-datos {
    padding-right: 5px;
    padding-left: 5px;
}

.search-item-description-b-v2-datos {
    display: flex;
    justify-content: center;
    flex-direction: row;
    align-items: start;
}

.search-item-description-b-v2-datos h6 {
    font-family: var(--font-texto);
    color: #000;
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    text-align: start;
    margin-bottom: .5rem;
    text-align: center;
}

.search-item-description-b-v2-datos p {
    font-family: var(--font-texto);
    color: #000;
    font-size: 13px;
    text-align: center;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    margin-bottom: 5px;
}

.container-search-item-time {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.container-search-item-time p {
    font-size: 12px;
}

.container-search-item-time span {
    color: #0B5B71;
    font-family: var(--font-texto);
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    text-decoration-line: none;
    background: #fff;
    border: 1px solid #fff;
    white-space: nowrap;
}

.search-item-description-b-v2-escala {
    color: var(--black-color);
    font-family: var(--font-texto);
    font-size: 12px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    text-decoration-line: underline;
    white-space: nowrap;
    margin-left: 0px;
}


.search-item-description-b-v2-datos p {
    font-family: var(--font-texto);
    color: #000;
    font-size: 13px;
    text-align: center;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    margin-bottom: 5px;
}

.custom-baggage-container {
    display: flex;
    flex-direction: column;
    justify-content: start;
    gap: 0px;
    padding: 5px 40px 0px 15px;
    margin-top: 0 !important;
    margin-left: 0px;
}

.search-item-description-b-v2-datos img {
    border: 1px solid #EBEDEF;
    border-radius: 50px;
    width: 50px;
}

.search-item-description-b-v2-datos p:last-child {
    font-size: 12px;
    font-weight: 600;
}

.custom-baggage-container p {
    font-family: var(--font-texto);
    font-size: 10px !important;
    font-style: normal;
    line-height: normal;
    margin-bottom: 0;
    text-align: start;
    color: #333;
}

.search-item-description-b-v2-datos p {
    font-family: var(--font-texto);
    color: #000;
    font-size: 13px;
    text-align: center;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    margin-bottom: 5px;
}

.search-item-description-b-v2-contenedorBoton {
    display: flex;
    align-items: center;
    padding-left: 15px;
    justify-content: center;
}

.search-item-description-boton-2 {
    width: 130px;
    height: 35px;
    flex-shrink: 0;
    background: #fff !important;
    border: 1px solid var(--main-color) !important;
    border-radius: 20px;
    color: var(--main-color) !important;
    font-size: 13px !important;
}

.vuelo-etiqueta-movil {
    display: none;
    font-size: 0.7rem;
    color: #0066b3;
    font-weight: 500;
}

.cardTitleHV {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 12px 15px;
}





/****************************+*******+++********************** FIN AURAVIA HOTEL + VUELOS  ****************************+*******+++**********************/

/****************************+*******+++**********************  AURAVIA HOTEL DETAIL  ****************************+*******+++**********************/
.tour_details_main{
    padding: 3rem 3rem 0rem !important;
}

.cardTableDisponibilidad {
    border: 2px solid #0B5B71 !important;
    border-radius: 20px !important;
}

.hotelResume {
    border-radius: 10px !important;
    border: 1px solid #DDE1E4 !important;
}

.hotelDetail__container-disponibilidad {
    max-width: 80% !important;
}

.cardTableDisponibilidad__title {
    border-top-left-radius: 20px !important;
    border-top-right-radius: 20px !important;
}

.hotelList-button-info {
    color: var(--black-color) !important;
    margin-top: 10px !important;
    font-weight: 500 !important;
    font-size: 14px !important;
    line-height: 100% !important;
    letter-spacing: 0% !important;
    vertical-align: middle !important;
    text-transform: capitalize !important;
    text-decoration: underline !important;
    text-decoration-style: solid !important;
    text-decoration-offset: 0% !important;
    text-decoration-thickness: 0% !important;
}

.hotelList-button-info:hover {
    color: var(--main-color) !important;
}

.hotelDetail__table-hotel {
    padding: 10px 40px !important;
}

.search-item-description-title-b {
    color: var(--black-color) !important;
    font-family: var(--font-texto) !important;
    font-size: 16px !important;
    font-style: normal !important;
    font-weight: 700 !important;
    line-height: normal !important;
    letter-spacing: -.224px !important;
    margin-bottom: 24px !important;
    text-align: start !important;
    text-decoration: underline !important;
}

.hotel-component,
.hotelResume {
    border: 1px solid #DDE1E4 !important;
    border-radius: 10px !important;
    margin: auto !important;
    box-shadow: none !important;
    overflow: hidden !important;
    padding: 0px !important;
}

.hotelDetail-line{
    border: 1px solid #909090;
}

.container-start-hotelDetail{
    margin-top: 10px;
    margin-bottom: 10px;
}
 
.hotel-component__slide {
    width: 588px !important;
    position: relative !important;
    left: 0 !important;
    top: 0 !important;
    z-index: 999 !important;
    opacity: 1 !important;
    margin: 0 !important;
}

.hotel-component__slider{
    height: 271px;
}

.hotel-component__slider .slick-slide img {
    width: 100% !important;
    height: 250px !important;
    object-fit: cover !important;
    margin-bottom: 0 !important;
    border-top-left-radius: 10px !important;
}

.hotel-component__info {
    padding: 1.5rem !important;
}

.hotel-component__price {
    font-size: 1.5rem !important;
    font-weight: bold !important;
}

.hotel-component__button {
    background-color: #065E6C !important;
    color: white !important;
    font-weight: bold !important;
    padding: 0.75rem 2rem !important;
    border-radius: 10px !important;
}

.hotel-component__details i {
    width: 20px !important;
}

.hotel-component__thumbs {
    margin-top: 0 !important;
    margin-bottom: -7px !important;
}

.hotel-component__thumbs .slick-slide {
    opacity: 0.4 !important;
    margin: 0 !important;
}

.hotel-component__thumbs .slick-current {
    opacity: 1 !important;
}

/* base */
.hotel-component__thumbs .swiper-slide{
  height: 65px;
}

.hotel-component__thumbs {
  overflow: hidden;
}


/* si hay pocos thumbs, que se repartan el ancho */
.hotel-component__thumbs.is-few .swiper-wrapper{
  width: 100%;
}

.hotel-component__thumbs:not(.is-few) .swiper-slide{
  flex: 0 0 180px !important;
}

/* Modo pocos (<=3): se reparten el ancho */
.hotel-component__thumbs.is-few .swiper-slide{
  flex: 1 1 0 !important;
  width: auto !important;
}

.hotel-component__thumbs img{
  height: 65px !important;
  width: 100% !important;
  object-fit: cover !important;
  display: block !important;

  min-width: 0 !important;
  max-width: none !important;
  margin: 0 !important;
}

.hotel-component__thumbs .slick-current img {
    border-bottom-left-radius: 10px !important;
}

.hotel-component__slider .slick-arrow {
    position: absolute !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    z-index: 10 !important;
    color: white !important;
    border: none !important;
    font-size: 1.5rem !important;
    width: 30px !important;
    height: 30px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 50% !important;
} 

.hotel-component__slider .slick-prev {
    left: 10px !important;
}

.hotel-component__slider .slick-next {
    right: 10px !important;
}

.slick-dots {
    bottom: 10px !important;
}

.thumbnail-slider .slick-list {
    margin: 0 !important;
}

.slick-slide>div {
    margin: 0 !important;
}

.hotel-component__slide>div {
    margin: 0 !important;
}



/* Títulos internos ("Resumen", "Información y servicios") */
.hotelResume .search-item-description-title {
    color: #000;
font-family: Inter;
font-size: 20px;
font-style: normal;
font-weight: 700;
line-height: 150%; /* 30px */
letter-spacing: -0.22px;
margin-bottom: 20px;
}

/* Secciones de texto */
.hotelList-details-right-box-Info {
    margin-bottom: 1.75rem;
}

.hotelList-button-info {
    font-size: 0.9rem;
    color: #0071c2;
}

.hotelList-button-info:hover {
    color: #004b80;
}

/* Imagen de resumen */
.img-detail-hotel-a .img_detail_hotel,
.img-detail-hotel-b .img_detail_hotel-b {
    width: 100%;
    max-height: 170px;
    object-fit: cover;
    border-radius: 12px;
    margin-bottom: 0.75rem;
}

/* Descripción del hotel */

.search-item-description-main b{
color: #000;
font-family: Inter;
font-size: 12px;
font-style: normal;
font-weight: 700;
line-height: 150%;
letter-spacing: -0.132px;
}

.search-item-description-main {
color: #000;
font-family: Inter;
font-size: 12px;
font-style: normal;
font-weight: 400;
line-height: 150%;
letter-spacing: -0.132px;
}

.search-item-description-main.is-clamped{
  overflow: hidden;

  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 6;

  max-height: calc(1.6em * 6);
}

/* Por defecto ocultamos los servicios extra */
.js-services-box .js-service-item.is-hidden {
  display: none;
}


.search-item-description-icon {
    margin-right: 0.35rem;
    color: #111827;
}

/* Bloque Ubicación (columna derecha) */
.hotelResume h5 {
    font-size: 1.1rem;
    font-weight: 600;
    margin-bottom: 0.75rem;
}

.hotelResume .ratio {
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 8px 18px rgba(15, 23, 42, 0.12);
	width: 637px;
	height: 378px;
}

/* ===== SECCIÓN DISPONIBILIDAD ===== */
.hotelDetail-price-person {
    color: #28333E;
text-align: right;
font-family: Inter;
font-size: 12px;
font-style: normal;
font-weight: 300;
line-height: normal;
}

.search-item-description-cajadeprecio {
    margin-bottom: 0.15rem;
}

.search-item-description-precio {
    font-size: 1rem;
    font-weight: 600;
    color: #111827;
    margin: 0;
}

.btn-hotelDetail-reservar {
    color: var(--company-text) !important;
    background-color: var(--black-color) !important;
    transition: var(--transition);
    box-shadow: none;
    overflow: hidden;
    white-space: nowrap;
    position: relative;
    z-index: 0;
    border: none;
    /* border-radius: 25px !important; */
    padding: 10px 60px !important;
	margin: 10px 0;
}

.btn-hotelDetail-reservar:hover {
    background-color: var(--main-color) !important;
}

.room-availability-title{
color: #000;
font-family: Inter;
font-size: 20px;
font-style: normal;
font-weight: 700;
line-height: 150%; /* 30px */
letter-spacing: -0.22px;
}

.room-availability {
    margin: 0 auto;
}

/* HEADER DESKTOP */
.room-availability__header {
    background-color: #EBEDEF;
    padding: 10px 16px;
    border-radius: 12px 12px 0 0;
    border: 1px solid #e5e5e5;
    border-bottom: none;
    font-size: 14px;
    font-weight: 600;
}

.room-availability__header-col {
    flex: 1;
    display: flex;
    align-items: center;
}

.room-availability__header-col--room {
    flex: 0 0 50%;
}

.room-availability__header-col--option {
    flex: 0 0 25%;
}

.room-availability__header-col--hotel {
    flex: 0 0 25%;
    justify-content: flex-end;
}

/* CARD BASE (MOBILE) */
.room-availability__card {
    border-radius: 12px;
    border: 1px solid #e5e5e5;
    background-color: #ffffff;
    overflow: hidden;
    margin-bottom: 16px;
}

.room-availability__card:hover{
    border: 2px solid #006b7f;
}

/* HEADER MOBILE */
.room-availability__card-header {
    background-color: #EBEDEF;
    padding: 12px 16px;
    color: var(--Black, #000);
    font-family: Inter;
    font-size: 14px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
}

/* BODY */
.room-availability__card-body {
    padding: 0 16px 16px;
}

.room-availability__cell{
    display: flex;
    justify-content: space-between;
    padding: 20px 0px;
    align-items: center;
}

.room-availability__cell--price {
    border-top: 1px solid #DDE1E4;
    border-bottom: 1px solid #DDE1E4;
    align-items: flex-start;
}

.room-availability__label {
    color: var(--Gray--OS-OS900, #28333E);
font-family: Inter;
font-size: 14px;
font-style: normal;
font-weight: 500;
line-height: normal;
}

.room-availability__room-name {
    color: #000;
font-family: Inter;
font-size: 16px;
font-style: normal;
font-weight: 600;
line-height: normal;
}

.room-availability__option {
    color: var(--Gray--OS-OS900, #28333E);
    text-align: right;
    font-family: Inter;
    font-size: 12px;
    font-style: normal;
    font-weight: 300;
    line-height: normal;
}

.room-availability__price-block {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.room-availability__option-block {
    flex-direction: column;
    align-items: center;
    gap: 1rem;
}

.room-availability__option-note {
    color: var(--Gray--OS-OS900, #28333E);
    font-family: Inter;
    font-size: 12px;
    font-style: normal;
    font-weight: 300;
    line-height: normal;
}

.room-availability__option-note:hover {
    color: var(--link-color);
    font-family: Inter;
    font-size: 12px;
    font-style: normal;
    font-weight: 300;
    line-height: normal;
}

.room-availability__price-info {
    font-size: 12px;
    text-align: right;
}

.room-availability__pax {
    color:  #28333E;
    font-family: Inter;
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}

.room-availability__price {
    color: var(--Gray--OS-OS900, #28333E);
    font-family: Roboto;
    font-size: 20px;
    font-style: normal;
    font-weight: 800;
    line-height: normal;
}

.room-availability__currency {
    margin-right: 4px;
    color: var(--Gray--OS-OS900, #28333E);
font-family: Roboto;
font-size: 14px;
font-style: normal;
font-weight: 800;
line-height: normal;
}

.room-availability__price-note {
    color: var(--Gray--OS-OS900, #28333E);
font-family: Inter;
font-size: 12px;
font-style: normal;
font-weight: 300;
line-height: normal;
}

/* FOOTER / BOTÓN */
.room-availability__card-footer {
    padding-top: 8px;
}

.room-availability__btn {
    width: 161px;
    border-radius: 32px;
    white-space: nowrap;
    height: 35px;
}

/* DESKTOP (>=768px)  */
@media (min-width: 768px) {

    .room-availability__card {
        border-radius: 0;
        border-left: 1px solid #e5e5e5;
        border-right: 1px solid #e5e5e5;
        border-top: 1px solid #e5e5e5;
        border-bottom: none;
        margin-bottom: 0;
    }

    .room-availability__card:last-child {
        border-bottom: 1px solid #e5e5e5;
        border-radius: 0 0 12px 12px;
    }

    .room-availability__card--selected {
        border: 3px solid #0B5B71;
    }

    .room-availability__card-body {
        padding: 5px 20px;
    }

    .room-availability__cell {
        border-top: none;
        border-bottom: none;
        display: flex;
        align-items: center;
        justify-content: flex-start;
        margin: 0px !important;
        padding: 0 !important;
    }

    .room-availability__cell--price {
        justify-content: flex-start;
        margin: 0px !important;
        padding: 0 !important;
    }

    .room-availability__price-block {
        flex-direction: row;
        align-items: center;
        gap: 5rem;
    }


    .room-availability__btn {
        width: 150px;
        height: 35px;
        min-width: 130px;
    }

    .room-availability__option {
        color: #000;
        font-family: Inter;
        font-size: 16px;
        font-style: normal;
        font-weight: 400;
        line-height: normal;
    }

    .room-availability__price-info {
        font-size: 12px;
        text-align: left;
    }
}




/****************************+*******+++********************** FIN AURAVIA HOTEL DETAIL  ****************************+*******+++**********************/


/* Seccion de Sucursales o Contacto */
/* Estilos para el select de sucursales */
.contact-suc-class {
    padding: 1rem;
}

.contact-suc-class .input-group__wrapper {
    width: 100%;
}

.contact-suc-class .input-group__label {
    font-size: 14px;
    font-weight: bold;
    color: var(--main-color);
    margin-bottom: 8px;
    display: block;
}

.contact-suc-class .input-group__container {
    position: relative;
}

.contact-suc-class .input-group__icon--left {
    position: absolute;
    left: 12px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--main-color);
    z-index: 1;
}

.contact-suc-class .input-group__input--select {
    width: 100%;
    padding: 10px 40px;
    border: 1px solid #d1d5db;
    border-radius: 1rem;
    background-color: #F6F7F8;
    font-size: 14px;
    height: 45px;
    appearance: none;
    cursor: pointer;
}

.contact-suc-class .input-group__input--select optgroup {
    font-weight: bold;
    color: var(--main-color);
    background-color: #fff;
}

.contact-suc-class .input-group__input--select option {
    padding: 8px;
    color: var(--text-color);
}

.contact-suc-class .input-group__input--select:focus {
    outline: none;
    border-color: var(--main-color);
    box-shadow: 0 0 0 2px rgba(var(--main-color-rgb), 0.1);
}

/* Añadir flecha personalizada */
.contact-suc-class .input-group__container::after {
    content: '\f107';
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--main-color);
    pointer-events: none;
}

/* --Preloader V2 -- */

.loaderContainer {
    background: var(--white-color);
    width: 100% !important;
    height: 100vh !important;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    position: fixed;
    inset: 0;
    z-index: 100000;
    text-align: center;
}

.loaderEB {
    overflow: visible;
    padding: 20px;
}

.logoLoader path,
.logoLoader polygon,
.logoLoader rect,
.logoLoader image {
    fill: transparent;
    stroke: transparent;
    stroke-width: 1px;
    stroke-dasharray: 1560;
    stroke-dashoffset: 1560;
    animation: loadMain 5s linear forwards infinite;
}

.text-EBE {
    font-weight: bolder;
    font-size: 20px;
    color: var(--black-color);
    text-align: center;
}

.text-EBE p {
    font-weight: 400;
    font-size: 1.3rem;
    color: var(--black-color);
    text-align: center;
}

.dot-EBE {
    display: inline-block;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background-color: var(--black-color);
    margin: 20px 2px;
    opacity: 0;
    animation: fadeIn-EB 2s infinite;
}

.dot-EBE:nth-child(2) {
    animation-delay: 0.5s;
}

.dot-EBE:nth-child(3) {
    animation-delay: 0.8s;
}

@keyframes blinkText {

    0%,
    100% {
        opacity: 0;
    }

    50% {
        opacity: 1;
    }
}

.text-EBE p {
    animation: blinkText 2s infinite;
}


@keyframes loadMain {
    0% {
        stroke-dashoffset: 1560;
        stroke: var(--black-color);
        fill: transparent;
    }

    25% {
        stroke-dashoffset: 3120;
        stroke: var(--black-color);
        fill: transparent;
    }

    50% {
        stroke-dashoffset: 3120;
        stroke: var(--black-color);
        fill: var(--main-color);
    }

    75% {
        stroke-dashoffset: 3120;
        stroke: var(--main-color);
        fill: transparent;
    }

    100% {
        stroke-dashoffset: 1560;
        stroke: var(--main-color);
        fill: transparent;
    }
}

@keyframes bounce {

    0%,
    20%,
    50%,
    80%,
    100% {
        transform: translateY(0);
    }

    40% {
        transform: translateY(-20px);
    }

    60% {
        transform: translateY(-10px);
    }
}

@keyframes fadeIn-EB {
    0% {
        opacity: 0;
    }

    50% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

/* Media queries */
@media screen and (max-width: 768px) {
    .text-EBE {
        font-size: 14px;
    }

    .loaderEB {
        padding: 10px;
    }

    .logoLoader path {
        stroke-width: 1px;
    }
}


/** -- Fin Preloader V2 -- **/


/* Hero principal México Travesías */
.mainHero {
    position: relative;
    width: 100%;
    min-height: 580px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    overflow: hidden;
    /* Animación de entrada */
    opacity: 0;
    transform: translateY(40px);
    animation: mainHero-fadeIn 1.2s cubic-bezier(0.23, 1, 0.32, 1) forwards;
}

@keyframes mainHero-fadeIn {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.mainHero__bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 1;
    transition: transform 0.7s cubic-bezier(0.23, 1, 0.32, 1), filter 0.7s cubic-bezier(0.23, 1, 0.32, 1);
}

.mainHero:hover .mainHero__bg {
    transform: scale(1.04);
    filter: brightness(0.95) blur(1px);
}

.mainHero__overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.15) 0%, rgba(0, 0, 0, 0.25) 100%);
    z-index: 2;
    transition: background 0.7s cubic-bezier(0.23, 1, 0.32, 1);
}

.mainHero:hover .mainHero__overlay {
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.55) 0%, rgba(0, 0, 0, 0.35) 100%);
}

.mainHero__content {
    position: relative;
    z-index: 3;
    color: #fff;
    padding: 4vw 6vw;
    transition: transform 0.7s cubic-bezier(0.23, 1, 0.32, 1);
}

.mainHero:hover .mainHero__content {
    transform: translateY(-8px) scale(1.01);
}

.mainHero__title {
    font-size: 3rem;
    font-weight: 800;
    margin-bottom: 1rem;
    letter-spacing: 2px;
    text-shadow: 0 2px 8px rgba(0, 0, 0, 0.4);
    transition: color 0.4s, text-shadow 0.4s;
}

.mainHero__subtitle {
    font-size: 1.5rem;
    font-weight: 500;
    margin-bottom: 2rem;
    text-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
    transition: color 0.4s, text-shadow 0.4s;
}

.mainHero__social {
    display: flex;
    gap: 1.2rem;
    list-style: none;
    margin: 0;
    padding: 0;
    flex-direction: column;
}

.mainHero__social a {
    color: #fff;
    font-size: 1.7rem;
    transition: color 0.3s, transform 0.3s, box-shadow 0.3s;
    will-change: color, transform;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.mainHero__social a:hover {
    color: #25D366;
    transform: scale(1.18) translateY(-2px);
    box-shadow: 0 4px 16px 0 rgba(37, 211, 102, 0.15);
}

@media (max-width: 768px) {
    .mainHero__content {
        padding: 8vw 4vw;
    }

    .mainHero__title {
        font-size: 2rem;
    }

    .mainHero__subtitle {
        font-size: 1.1rem;
    }
}

/* Slider package card */

.mainHeroCardsSwiper {
    padding-bottom: 48px;
    position: relative;
}

.mainHeroCardsSwiper .swiper-button-next,
.mainHeroCardsSwiper .swiper-button-prev {
    background: rgba(0, 0, 0, 0.45);
    color: #fff;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    top: 40%;
    box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.12);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.7rem;
    transition: background 0.3s, color 0.3s, transform 0.2s;
}

.mainHeroCardsSwiper .swiper-button-next:hover,
.mainHeroCardsSwiper .swiper-button-prev:hover {
    background: var(--main-color, #d80027);
    color: #fff;
    transform: scale(1.08);
}

.mainHeroCardsSwiper .swiper-button-next:after,
.mainHeroCardsSwiper .swiper-button-prev:after {
    font-size: 1.7rem;
    font-weight: bold;
}

.mainHeroCardsSwiper .swiper-button-next {
    right: 8px;
}

.mainHeroCardsSwiper .swiper-button-prev {
    left: 8px;
}

.mainHeroCardsSwiper .swiper-pagination {
    bottom: 8px !important;
    text-align: center;
}

.mainHeroCardsSwiper .swiper-pagination-bullet {
    width: 14px;
    height: 14px;
    background: #fff;
    opacity: 0.6;
    border-radius: 50%;
    margin: 0 4px !important;
    border: 2px solid var(--main-color, #d80027);
    transition: background 0.3s, opacity 0.3s;
}

.mainHeroCardsSwiper .swiper-pagination-bullet-active {
    background: var(--main-color, #d80027);
    opacity: 1;
    border-color: var(--main-color, #d80027);
}

/* Placa de busqueda */

/* Acordeón de Pleca */
.euro-pleca-accordion {
    position: relative;
    z-index: 5;
    top: 0px;
}

.euro-pleca-accordion__trigger {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background-color: #fff;
    padding: 0.7rem 0rem 0.7rem 0.7rem;
    font-weight: bold;
    position: absolute;
    border: 1px solid var(--main-color);
    border-radius: 0;
    height: 60px;
    width: 350px;
    transition: background-color 0.3s ease;
    color: var(--main-color);
}

.euro-pleca-accordion__title-container {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    z-index: 1;
}

.euro-pleca-accordion__title {
    margin: 0;
    position: relative;
    z-index: 1;
    font-size: 14px;
    font-weight: 500;
    color: var(--main-color);
    line-height: 1.2;
}

.euro-pleca-accordion__description {
    font-size: 12px;
    color: var(--main-color);
    margin-left: 0.25rem;
}

.euro-pleca-accordion__description i {
    font-size: 18px;
    color: var(--main-color);
    vertical-align: middle;
    margin-left: 6px;
}

.euro-pleca-accordion__decorator {
    position: absolute;
    top: 1;
    right: -15px;
    width: 100px;
    height: 60px;
    background-color: #fff;
    border-top: 1px solid var(--main-color);
    border-bottom: 1px solid var(--main-color);
    border-left: none;
    border-right: 1px solid var(--main-color);
    border-radius: 0 30px 10px 0;
    transform: skewX(-35deg);
    transform-origin: bottom right;
    transition: background-color 0.3s ease;
}

/* BOTÓN */
.euro-pleca-accordion__trigger:hover {
    background-color: var(--main-color);
    color: #fff;
}

.euro-pleca-accordion__trigger:focus {
    background-color: var(--main-color);
    color: #fff;
}

.euro-pleca-accordion__trigger:active {
    background-color: var(--main-color);
    color: #fff;
}

/* DECORADOR */
.euro-pleca-accordion__trigger:hover .euro-pleca-accordion__decorator {
    background-color: var(--main-color);
}

.euro-pleca-accordion__trigger:focus .euro-pleca-accordion__decorator {
    background-color: var(--main-color);
}

.euro-pleca-accordion__trigger:active .euro-pleca-accordion__decorator {
    background-color: var(--main-color);
}

/* TEXTO E ÍCONO */
.euro-pleca-accordion__trigger:hover .euro-pleca-accordion__title,
.euro-pleca-accordion__trigger:hover .euro-pleca-accordion__description,
.euro-pleca-accordion__trigger:hover .euro-pleca-accordion__description i {
    color: #fff;
}

.euro-pleca-accordion__trigger:focus .euro-pleca-accordion__title,
.euro-pleca-accordion__trigger:focus .euro-pleca-accordion__description,
.euro-pleca-accordion__trigger:focus .euro-pleca-accordion__description i {
    color: #fff;
}

.euro-pleca-accordion__trigger:active .euro-pleca-accordion__title,
.euro-pleca-accordion__trigger:active .euro-pleca-accordion__description,
.euro-pleca-accordion__trigger:active .euro-pleca-accordion__description i {
    color: #fff;
}



.euro-pleca-accordion__content {
    width: 100%;
    background-color: #ffffff;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
    border-radius: 0 0 0.5rem 0.5rem;
    overflow: hidden;
    transition: all 0.3s ease;
}

.euro-pleca-accordion__content>div {
        padding: 1rem 1rem 0rem;
}


/* Parte de boletos */
.boletos-recientes-container {
    display: flex;
    gap: 24px;
    align-items: flex-start;
    flex-wrap: wrap;
}

.boleto-reciente {
    background: url('https://eurocdn.azureedge.net/bucket/EBE/general/230ticket_busqueda_01.svg') no-repeat center/contain;
    width: 250px;
    height: 130px;
    display: flex;
    align-items: center;
    padding: 18px 24px;
    box-sizing: border-box;
    font-family: var(--font-texto);
}

.boleto-reciente__info {
    display: flex;
    flex-direction: column;
    width: 100%;
}

.boleto-reciente__tipo {
    font-size: 13px;
    color: #6c757d;
    font-weight: 500;
    margin-bottom: 2px;
    line-height: 1;
}

.boleto-reciente__destino {
    font-size: 16px;
    color: #28333E;
    font-weight: 700;
    margin-bottom: 2px;
}

.boleto-reciente__fecha,
.boleto-reciente__pasajeros {
    font-size: 10px;
    color: #6c757d;
    margin-bottom: 2px;
}

.boleto-reciente__iconos {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-width: 40px;
    margin-right: 12px;
    color: var(--main-color, #009688);
}

.swiper-wrapper {
    gap: 0px;
}
/********************************************************** COOKIES ***************************************************************/
.cookie-consent-banner{
    position: fixed; 
    bottom: 0; 
    width: 100%; 
    background-color: var(--main-color); 
    color: #fff; 
    padding: 15px; 
    text-align: center; 
    z-index: 9999;
    opacity: 0.85;
}

.cookie-button{    
    width: 157px;
    height: 33px;
    margin-left: 10px; 
    padding: 5px 35px;
    border-radius: 5px;
    justify-content: center;
    align-items: center;
}

.cookie-button-accept{
    background: #FFF;
    border: none;
    color: var(--main-color);
}

.cookie-button-reject{
    border: 1px solid #FFF;
    background: transparent;
    color: var(--text-color);
}

/********************************************************** END COOKIES ***************************************************************/
/*************************************************************************** ABOUT US MEXICO TRAVESIAS ******************************************************************************************/

.ebe__container {
    max-width: 100% !important;
    padding: 0 0px;
}

.about__container-row {
    display: flex;
    align-items: center;
    padding-block: 0;
    width: 100%;
    padding: 0 3rem;
}

.about__col--image {
    display: flex;
    justify-content: flex-start;
    padding: 5% 0% 5% 0%;
}

.about__col--image img {
    height: 425px !important;
    width: 100%;
    object-fit: cover;
    border-radius: 15px;
}

.about__col--text {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    padding: 5% 5% 5% 5%;
}

.about__col--text h1 {
    font-family: 'Inter';
    font-size: 1rem;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    letter-spacing: 0.16px;
}

.about__col--text h2 {
    background: transparent;
    font-size: 2.1rem;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    margin-bottom: 31px;
    margin-top: 20px;
}

.about__col--text p {
    font-size: 1rem;
    font-style: normal;
    font-weight: 300;
    line-height: normal;
    margin-bottom: 50px;
}

.about__col--text h3 {
    font-family: Inter;
    font-size: 1rem;
    font-style: italic;
    font-weight: 600;
    line-height: normal;
    letter-spacing: 0.32px;
    margin-bottom: 40px;
}

/***************************************************************************** END ABOUT US MEXICO TRAVESIAS ************************************************************************************/


@media (max-width: 1200px) {
    .euro-pleca-accordion__trigger {
        width: 360px;
        padding: 0.75rem 0rem 0.75rem 1rem;
    }

    .euro-pleca-accordion__title {
        font-size: 16px;
    }

    .euro-pleca-accordion__description {
        font-size: 11px;
    }

    .euro-pleca-accordion__decorator {
        right: -30px;
        width: 120px;
    }
}

@media (max-width: 992px) {
    .euro-pleca-accordion__trigger {
        width: 360px;

    }

    .euro-pleca-accordion__title {
        font-size: 15px;
    }

    .euro-pleca-accordion__description {
        font-size: 10px;
    }

    .euro-pleca-accordion__decorator {
        right: -25px;
        width: 100px;
    }

    /*************************************************************************** ABOUT US MEXICO TRAVESIAS ******************************************************************************************/

    .ebe__container {
        max-width: 100% !important;
        margin: 50px auto;
        padding: 0 0px;
    }

    .about__container-row {
        display: flex;
        align-items: center;
        padding-block: 0;
        width: 100%;
        padding: 0 0.5rem;
    }

    .about__col--image {
        display: flex;
        justify-content: flex-start;
        padding: 5% 0% 5% 0%;
    }

    .about__col--image img {
        height: 425px !important;
        width: 100%;
        object-fit: cover;
        border-radius: 15px;
    }

    .about__col--text {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: flex-start;
        padding: 5% 5% 5% 5%;
    }

    .about__col--text h1 {
        font-family: 'Inter';
        font-size: 1rem;
        font-style: normal;
        font-weight: 500;
        line-height: normal;
        letter-spacing: 0.16px;
    }

    .about__col--text h2 {
        background: transparent;
        font-size: 2.1rem;
        font-style: normal;
        font-weight: 700;
        line-height: normal;
        margin-bottom: 31px;
        margin-top: 20px;
    }

    .about__col--text p {
        font-size: 1rem;
        font-style: normal;
        font-weight: 300;
        line-height: normal;
        margin-bottom: 50px;
    }

    .about__col--text h3 {
        font-family: Inter;
        font-size: 1rem;
        font-style: italic;
        font-weight: 600;
        line-height: normal;
        letter-spacing: 0.32px;
        margin-bottom: 40px;
    }

    /***************************************************************************** END ABOUT US MEXICO TRAVESIAS ************************************************************************************/

}

@media (max-width: 768px) {
    .euro-pleca-accordion__trigger {
        width: 320px;
    }

    .euro-pleca-accordion__title {
        font-size: 12px;
    }

    .euro-pleca-accordion__description {
        font-size: 10px;
        margin-left: 0;
    }

    .euro-pleca-accordion__decorator {}
}

@media (max-width: 480px) {
    .euro-pleca-accordion__trigger {
        width: 280px;
        padding: 0.5rem;
    }

    .euro-pleca-accordion__title {
        font-size: 11px;
    }

    .euro-pleca-accordion__description {
        font-size: 9px;
    }

    .euro-pleca-accordion__description i {
        font-size: 14px;
        margin-left: 4px;
    }
}

.euro-pleca-accordion--mobile-full-width {
    width: 100%;
}

.euro-pleca-accordion--compact {
    height: 50px;
    padding: 0.5rem;
}

.euro-pleca-accordion__content--responsive {
    padding: 1rem;
}

@media (max-width: 480px) {
    .euro-pleca-accordion__content {
        border-radius: 0;
    }

    .euro-pleca-accordion__content>div {
        padding: 1.5rem 0 0rem;
    }
}

/* Estilos para las flechas del slider de boletos */

.swiper-carrusel-boletos{
    overflow: auto !important;
    padding: 30px 0 0px !important;
    position: relative !important;
    width: 100%;
    box-sizing: border-box !important;

}

.swiper-carrusel-boletos .swiper-button-prev,
.swiper-carrusel-boletos .swiper-button-next {
    width: 40px;
    height: 40px;
    background-color: #ffffff;
    color: var(--main-color);
    border: 1px solid var(--border-color);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;

}

.swiper-carrusel-boletos .swiper-button-prev::after,
.swiper-carrusel-boletos .swiper-button-next::after {
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
    font-size: 18px;
}

.swiper-carrusel-boletos .swiper-button-prev::after {
    content: '\f104';
    margin-right: 2px;
}

.swiper-carrusel-boletos .swiper-button-next::after {
    content: '\f105';
    margin-left: 2px;
}

.swiper-carrusel-boletos .swiper-button-prev:hover,
.swiper-carrusel-boletos .swiper-button-next:hover {
    background-color: var(--black-color);
    color: #ffffff;
    transform: scale(1.1);
}

/* Posicionamiento */
.swiper-carrusel-boletos .swiper-button-prev {
    left: 10px;
}

.swiper-carrusel-boletos .swiper-button-next {
    right: 10px;
}

.swiper-carrusel-boletos .swiper-slide {
    display: flex;
    justify-content: center;
    padding: 0 15px;
    box-sizing: border-box;
}

/* Estilos responsivos */
@media (max-width: 1920px) {
    .swiper-carrusel-boletos .swiper-slide {
        display: flex;
        justify-content: center;
        padding: 0 15px;
        box-sizing: border-box;
    }
}

@media (max-width: 1590px) {
    .swiper-carrusel-boletos .swiper-slide {
        display: flex;
        justify-content: center;
        padding: 0 15px;
        box-sizing: border-box;
    }
}


@media (max-width: 1400px) {
    .swiper-carrusel-boletos .swiper-slide {
        display: flex;
        justify-content: center;
        padding: 0 15px;
        box-sizing: border-box;
    }
}

@media (max-width: 1084px) {
    .swiper-carrusel-boletos .swiper-slide {
        display: flex;
        justify-content: center;
        padding: 0 15px;
        box-sizing: border-box;
    }

    .swiper-carrusel-boletos .swiper-button-prev,
    .swiper-carrusel-boletos .swiper-button-next {
        width: 30px;
        height: 30px;
    }

    .swiper-carrusel-boletos .swiper-button-prev::after,
    .swiper-carrusel-boletos .swiper-button-next::after {
        font-size: 14px;
    }
}

@media (max-width: 768px) {
    .swiper-carrusel-boletos .swiper-slide {
        display: flex;
        justify-content: center;
        padding: 0 15px;
        box-sizing: border-box;
    }

    .swiper-carrusel-boletos .swiper-button-prev,
    .swiper-carrusel-boletos .swiper-button-next {
        width: 30px;
        height: 30px;
    }

    .swiper-carrusel-boletos .swiper-button-prev::after,
    .swiper-carrusel-boletos .swiper-button-next::after {
        font-size: 14px;
    }
}

@media (max-width: 640px) {
    .swiper-carrusel-boletos .swiper-slide {
        display: flex;
        justify-content: center;
        padding: 0 15px;
        box-sizing: border-box;
    }

    .boleto-reciente {
        width: 100%;
        max-width: 280px;
        /* Ajusta este valor según necesites */
    }

    .swiper-carrusel-boletos .swiper-button-prev {
        left: 5px;
    }

    .swiper-carrusel-boletos .swiper-button-next {
        right: 5px;
    }
}


.containerButtonCollapseMainForm-v2 {
    display: none;
}

@media(max-width: 426px) {
    .containerButtonCollapseMainForm-v2 {
        display: block;
        width: 100%;
        text-align: center;
        padding: 0px;
    }

    .containerButtonCollapseMainForm-v2 button {
        width: 100%;
        padding: 10px;
    }

    .mainTopFormDesktop-v2 {
        display: none;
    }

    .btnCollapMainContainer {
        background-color: #fff;
        margin: 0px 10px;
        display: flex;
        flex-direction: row;
        justify-content: left;
        align-items: center;
        border-radius: 15px;
        padding: 10px;
    }

    .btnCollapMainCont-b {
        padding: 0;
    }

    .btnCollapMainCont-a {
        padding: 0;
        width: 70% !important;
    }

    .dropdown-menu .dropdown_passenger_info .show {
        padding: 5px !important;
    }

    .SeaechFlight {
        padding: 10px 10px;
    }
}

/* Featured slider  */

.carousel-control-next,
.carousel-control-prev {
    z-index: 1 !important;
    background: rgba(0, 0, 0, 0.5) !important;
    width: 5% !important;
}



/* Comparador  */


#btn-compare-package {
    padding: 5px 10px;
    width: 130px;
    min-width: 40px;
    height: 40px;
    border-radius: 20px;
    font-size: 14px;
    color: #fff;
    background: var(--black-color);
    border: 1px solid #fff;
    transition: all 0.3s ease;
    cursor: pointer;
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 10px;
}

#btn-compare-package i {
    margin-right: 10px;
}

#btn-compare-package:hover {
    background: var(--main-color);
    color: #fff;
    border-color: #fff;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
}

#btn-compare-package:active {
    background: var(--main-color);
    border-color: #fff;
    color: #fff;
    transform: scale(0.95);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
}


/* filtro de coparador */

.filter__input-container {
    display: flex;
    align-items: center;
    justify-content: center;
}

.filter__input-container i {
    color: var(--main-color);
    font-size: 1rem;
}

.filter__input-container input {}




/* No disponibilidad de busqueda de productos */

.euro-no-disponibilidad {
    padding: 30px 20px;
    border: 1px solid #DDE1E4;
    border-radius: 20px;
    width: 50%;
}

.euro-no-disponibilidad__titulo {
    font-size: 20px;
    font-weight: 500;
    color: #808A93;
    text-align: center;
    line-height: 1;
}

.euro-no-disponibilidad__subtitulo {
    font-size: 14px;
    color: #000000;
    text-align: center;
}

.euro-no-disponibilidad__imagenes {
    display: flex;
    justify-content: center;
    margin-top: 40px;
    max-width: 100%;
    flex-wrap: wrap;
}

.euro-no-disponibilidad__imagen {
    width: auto;
    height: 12rem;
}


@media (max-width: 768px) {
    .euro-no-disponibilidad__imagenes {
        flex-direction: column;
        align-items: center;
    }

    .euro-no-disponibilidad__imagen {
        width: 90%;
        max-width: 90%;
        height: auto;
    }
}


/* Filtro de precio - Estilos BEM */

.filter-price__header {
    padding: 16px 20px 0;
}

.filter-price__title {
    color: var(--black, #000);
    font-size: 14px;
    font-weight: 500;
    line-height: normal;
    border-bottom: 1px solid rgba(0, 0, 0, 0.2);
    padding: 14px 0 7px;
}

.filter-price__slider {
    position: relative;
    width: 90%;
    padding: 10px 0px 45px 20px;
    margin-left: 0px;
}

.filter-price__slider-wrapper {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding-top: 10px;
}

.filter-price__slider .noUi-target {
    background: #ffffff;
    border-radius: 4px;
    border: none;
    box-shadow: none;
    height: 6px;
    margin: 10px 0;
    width: 50%;
    position: relative;
    top: 10px;
}

.noUi-base,
.noUi-connects {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0px;
    left: 0;
    z-index: 1;
    transform: translateY(0);
}

.filter-price__slider .noUi-connects {
    position: absolute;
    width: 100%;
    height: 100%;
    top: -10px;
    left: 0;
}

.filter-price__slider .noUi-connect {
    background: var(--black-color);
    height: 6px;
    top: 0;
}

.filter-price__slider .noUi-handle {
    width: 18px;
    height: 18px;
    top: -7px;
    right: -9px;
    position: absolute;
    border-radius: 50%;
    background: var(--black-color);
    border: 2px solid var(--black-color);
    cursor: pointer;
    transition: transform 0.2s ease;
}

.filter-price__slider .noUi-handle:hover {
    transform: scale(1.1);
}

.filter-price__slider-track-container {
    position: relative;
    width: 100%;
    padding: 0 10px;
}

.filter-price__slider-value {
    color: var(--black);
    font-size: 14px;
    text-align: start;
    margin-top: 15px;
}

.filter-price__actions {
    display: flex;
    justify-content: center;
    flex-direction: row;
    align-items: center;
    gap: 10px;
}

.filter-price__slider-value-box {
    align-items: center;
}

.filter-price__button {
    border-radius: 20px;
    height: 35px;
    width: auto;
    min-width: 70px;
    min-width: 100px;
    font-size: 14px;
    cursor: pointer;
    transition: all 0.2s ease;
    border: none;
    font-size: 14px;
}

.filter-price__button--apply {
    color: var(--company-text);
    background: var(--main-color);
}

.filter-price__button--clear {
    color: var(--black-color);
    background: var(--white-color);
    border: 0px solid var(--main-color);
}

.filter-price__button:hover {
    opacity: 0.9;
    transform: translateY(-1px);
}

/* Featured slider  */

/*************************************************************** SIDER SWIPER ********************************************************************************/
/* Tamaño para las imágenes principales del slider */
.hotel-component__slider .swiper-slide img {
    width: 100%;
    height: 271px;
    object-fit: cover;
    object-position: center center;
    /* Centra la imagen */
    border-top-left-radius: 10px;
}

/* Tamaño para los thumbnails */
.hotel-component__thumbs .swiper-slide img {
    width: 100%;
    height: 70px;
    object-fit: cover;
    border-radius: 0px;

}


/* tamaño del icono de flecha */
.hotel_swiper-button-next::after,
.hotel_swiper-button-prev::after {
    font-size: 32px;
    color: #fff;
}

/* fondo de los botones */
.hotel_swiper-button-next,
.hotel_swiper-button-prev {
    background: rgba(0, 0, 0, 0.10);
    border-radius: 0;
    width: 30px !important;
    height: 100% !important;
    transition: background 0.2s;
    top: 22px !important;
    color: #fff !important;
}

.hotel_swiper-button-next {
    right: 0 !important;
}

.hotel_swiper-button-prev {
    left: 0 !important;
}

/* Efecto hover */
.hotel_swiper-button-next:hover,
.hotel_swiper-button-prev:hover {
    background: rgba(0, 0, 0, 0.8);
}

/* Capa oscura */
.swiper-slide-thumb .thumb-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.6);
    border-radius: 0px;
    transition: background 0.2s;
    pointer-events: none;
}

/* Quitar la capa cuando está activo */
.swiper-slide-thumb-active .thumb-overlay {
    background: transparent;
}

.swiper-slide-thumb {
    position: relative;
}

.hotel-component__thumbs .swiper-wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
}

.hotel-component__thumbs .swiper-slide {
    flex: 1 1 0;
    width: auto !important;
    height: auto;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    margin-right: 0px !important;
}


/** Lightbox Detelle Hotel **/
.lightbox-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(0, 0, 0, 0.5);
    color: #fff;
    border: none;
    font-size: 2.5rem;
    padding: 0 15px;
    cursor: pointer;
    z-index: 10001;
    border-radius: 4px;
    user-select: none;
}

.lightbox-prev {
    left: 20px;
}

.lightbox-next {
    right: 20px;
}

/*************************************************************** END SIDER SWIPER ********************************************************************************/

/***************************************************************** PRODUCT **********************************************************************************/
.container__product-card {
    font-family: Inter;
}

.product-card {
    margin: 40px;
    border: 1px solid #ccc;
    border-radius: 20px;
    padding: 0px 10px;
}

.product-card__header {
    display: flex;
    align-items: stretch;
    border-radius: 20px;
    overflow: hidden;
    background: #fff;
    border: 1px solid #ccc;
}

.product-card__image {
    padding: 0 !important;
}

.product-card__image img {
    width: 100%;
    height: 100%;
    max-height: 260px;
    object-fit: cover;
    border-radius: 20px 0 0 20px;
    padding: 0 !important;
}

.product-card__description {
    padding: 15px 30px;
    display: flex;
    flex-direction: column;
    justify-content: start;
}

.product-card__title {
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--main-color);
    margin-bottom: 0.5rem;
}

.product-card__info {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 1rem;
    color: #333;
}

.product-card__days i,
.product-card__dates i {
    margin-right: 4px;
}

.product-card__separator {
    margin: 0 8px;
    color: #bbb;
}

.product-card__short-description {
    margin-top: 15px;
    color: #333;
    font-size: 0.95rem;
}

.product-card__includes {
    margin-top: 15px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.product-card__includes-label {
    font-weight: 600;
    color: #065E6C;
}

.product-card__price {
    padding: 30px;
    background: #f7f8fa;
    border-radius: 0 20px 20px 0;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-end;
    text-align: right;
}

.product-card__price-content {
    width: 100%;
}

.product-card__people {
    font-size: 14px;
    color: #495057;
    font-weight: 400;
}

.product-card__price-offer {
    font-size: 16px;
    color: #adb5bd;
    text-decoration: line-through;
    margin-right: 8px;
}


.product-card__price-value {
    font-size: 2rem;
    color: #28333E;
    font-weight: 700;
}

.product-card__currency {
    font-size: 1.2rem;
    color: #28333E;
    font-weight: 600;
}

.product-card__price-per-person {
    display: block;
    font-size: 1rem;
    color: #6c757d;
    font-weight: 600;
    margin-bottom: 2px;
}

.product-card__price-per-person strong {
    color: rgba(93, 105, 116, 1);
    font-weight: 600;
    font-size: 14px;
}

.product-card__taxes {
    display: block;
    font-size: 14px;
    color: rgba(93, 105, 116, 1);
    font-weight: 400;
    margin-top: -5px;
}

.product-card__button-container {
    margin-top: 20px !important;
    display: flex;
    justify-content: flex-end;
}

.button.button--primary {
    background: var(--black-color);
    color: #fff;
    border-radius: 25px;
    padding: 8px 32px;
    font-size: 1rem;
    font-weight: 600;
    border: none;
    transition: background 0.2s;
}

.button.button--primary:hover {
    background: var(--main-color);
    color: #fff;
}

/*************************************************************** END PRODUCT ********************************************************************************/

/*************************************************************** FORM DE BUSQUEDA ********************************************************************************/

.banner-form {
    display: flex;
    min-height: 200px;
    max-height: 550px;
    padding: 0 0 0% 0;
    background-color: var(--black-color);
    background-size: cover;
    background-position: center;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    justify-content: flex-end;
    background: linear-gradient(to right, rgba(0, 0, 0, 1), rgba(0, 0, 0, 0)), url(https://eurobucket.blob.core.windows.net/bucket/EBE/banner_hoteles.png);
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}

/* Featured slider  */



/* Seccion de Mexico travesias */
.wrapper-MT-image {
    background-repeat: no-repeat;
    background-size: cover;
    height: 100%;
}

.fondo-lazy {
    position: relative;
    min-height: 700px;
    overflow: hidden;
    top: -72px;
}

.img-fondo-lazy {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 1;
    /* asegúrate de que no quede detrás completamente */
    opacity: 1;
    pointer-events: none;
    user-select: none;
}

.wrapper-MT {
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    height: 80%;
}

.social-media-MT {
    position: absolute;
    top: 40%;
    left: 3%;
    transform: translateY(-50%);
    z-index: 2;
}

.social-media-MT ul li a {
    list-style: none;
    color: #fff;
    /*padding-top: 20px;*/
}

.header-MT {
    position: absolute;
    top: 25%;
    left: 10%;
    transform: translate(-50% -50%);
    width: 60%;
    z-index: 2;
}

.header-MT h1 {
    color: #fff;
    font-size: 72px;
    font-weight: bolder;
    text-shadow: 1px 1px 2px black;
    line-height: 90px;
}

.header-MT p {
    color: #fff;
    font-family: 'Inter';
    font-size: 32px;
    font-weight: 600;
    font-style: normal;
    line-height: normal;
    text-shadow: 1px 1px 2px black;
    margin-top: 16px;
}

.header-MT button {
    background: #fff;
    color: #000;
    margin-top: 15px;
    font-family: 'inter';
    font-size: 14px;
    font-weight: 500;
    font-style: normal;
    line-height: normal;
    border: none;
    border-radius: 10px;
    padding: 16px 40px;
    letter-spacing: 4px;
    margin-top: 24px;
}

@media (max-width: 768px) {
    .fondo-lazy {
        position: relative;
        min-height: 400px;
        overflow: hidden;
        top: -72px;
    }
}

@media (max-width: 576px) {
    .header-MT {
        top: 35%;
        left: 20%;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }

    .header-MT h1 {
        font-size: 40px;
        line-height: 1;
    }

    .header-MT p {
        font-size: 16px;
        margin-top: 5px;
    }

    .header-MT button {
        padding: 10px 24px !important;
        font-size: 12px;
        margin-left: 0%;
    }

}

@media (max-width: 480px) {
    .header-MT {
        top: 40%;
    }

    .header-MT h1 {
        font-size: 2.5rem;
        line-height: 1;
        margin-bottom: 10px;
        text-align: center;
    }

    .header-MT p {
        font-size: 18px;
        line-height: 1.2;
        margin-bottom: 15px;
        text-align: center;
    }

    .header-MT-button {
        display: none;
        margin-left: 0%;
        font-size: 12px;
        margin-top: 5px !important;
    }

    .social-media-MT {
        top: 50%;
    }

}

/*************************************************************** END FORM DE BUSQUEDA ********************************************************************************/

.lightbox-MT {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.8);
    display: none;
    align-items: center;
    justify-content: center;
    z-index: 9999;
}

.lightbox-MT[style*="display: flex"] {
    display: flex !important;
}


.product__nav {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
}


.product__button-nav {
    background-color: transparent !important;
    color: var(--black-color) !important;
}


.product__button-nav.active {
    color: var(--main-color) !important;
    font-weight: 600;
    transition: background 0.2s, color 0.2s;
    font-size: 16px;
}

.serviceContainer-v2 {
    border: 1px solid #DDE1E4;
    border-radius: 20px;
}


/******************************************************************* PRODUCT *************************************************************************/

.itinerary {
    margin: 40px !important;
    padding: 0px 10px !important;
}

.itinerary__sidebar {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
}

.itinerary__content {
    border-radius: 20px;
    padding: 0 !important;
}

.itinerary-card {
    border: none !important;
    background: transparent;
    border-radius: 20px !important;
    box-shadow: none;
    transition: none;
}

.itinerary-card:hover {
    box-shadow: none;
    transform: none;
    transition: none;
}

.itinerary-card__header {
    background-color: var(--black-color) !important;
    border-top-left-radius: 20px !important;
    border-top-right-radius: 20px !important;
    padding: .5rem 1rem !important;
    color: #fff !important;
}

.itinerary-card__header-nextDay {
    background-color: var(--black-color) !important;
    border-top: 1px solid var(--main-color) !important;
    border-bottom: 1px solid var(--main-color) !important;
    padding: .5rem 1rem !important;
    color: #fff !important;
}


.text-two-lines {
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: normal !important;
}

.text-two-lines-mx150 {
    max-width: 150px !important;
}

.text-two-lines-mx200 {
    max-width: 200px !important;
}

.text-two-lines-mx240 {
    max-width: 240px !important;
}

.itinerary-card__button {
    background: var(--black-color) !important;
    color: #fff !important;
    border-radius: 30px !important;
    padding: 8px 25px !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    border: none !important;
    transition: background 0.2s !important;
}

.itinerary-card__button:hover {
    background: var(--main-color) !important;
    color: #fff !important;
    border-radius: 30px !important;
    padding: 8px 25px !important;
    font-size: 14px !important;
    font-weight: 400    !important;
    border: none !important;
    transition: background 0.2s !important;
}

.itinerary-card__hotel-img {
    width: 170px;
    height: 170px;
    object-fit: cover;
    border-radius: 8px;
}

.itinerary-card__flight--content {
    gap: 5rem;
}

.itinerary-card__flight--content-update {
    gap: 0rem;
}

.itinerary-card__hotel-link {
    text-decoration: underline;
    color: var(--black-color);
    font-size: 14px;
    font-weight: 400;
}

.itinerary-card__hotel-link:hover {
    font-weight: 600;
}

.itinerary__icon-ticket {
    margin-top: .3rem;
}

.itinerary-card__service--text {
    padding-right: 21rem;
}

.text-gold {
    color: #d4af37;
}

.container__product-itinerary {
    margin: 40px !important;
}

.itinerary__menu-list {
    padding-left: 0;
    padding-right: 2rem;
    text-align: right;
    list-style: none;
}

.itinerary__menu-item {
    padding: 6px 0 6px 0;
    font-size: 14px;
    color: rgba(40, 51, 62, 1);
    cursor: pointer;
    border: none;
    background: none;
    transition: color 0.2s;
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-weight: 500;
    display: flex;
    justify-content: flex-end;
}

.itinerary__menu-item span {
    padding-right: 2rem;
}

.itinerary__menu-item .active {
    color: var(--main-color);
    font-weight: 600;
    font-size: 16px;
}

.itinerary__download {
    padding-left: 0;
    padding-right: 2rem;
    text-align: right;
    list-style: none;
}

.itinerary__downloads-title {
    color: #23272f;
    font-size: 1rem;
    text-align: right;
}

.itinerary__downloads-list {
    padding-left: 0;
}

.itinerary__downloads-item {
    padding: 6px 0 6px 0;
    font-size: 16px;
    color: rgba(40, 51, 62, 1);
    cursor: pointer;
    border: none;
    background: none;
    transition: color 0.2s;
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-weight: 400;
    display: flex;
    justify-content: flex-end;
}

.itinerary__downloads-item a {
    font-size: 1rem;
    color: #23272f;
    text-decoration: none;
    transition: color 0.2s;
}

.itinerary__downloads-item span {
    padding-right: 1rem;
}

.itinerary__downloads-item a:hover {
    color: var(--main-color);
}


.product--card__detail {
    padding: 0 !important;
}

.product--card__detail-title {
    background-color: var(--black-color);
    border-radius: 10px;
    color: #fff;
    padding: 10px 20px;
}

.product--card__detail-text {
    padding: 15px 30px;
}

.accordion_left_side {
    padding-left: 1.25rem;
}

/******************************************************************* END PRODUCT ********************************************************************/


/* Contenedor del paginador */
.pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    background: #ffffff;
    margin: 0px 0;
    border: none;
    box-shadow: none;
}

/* Cada item del paginador */
.page-item {
    margin: 0px;
}


.page-item:first-child .page-link {
    border-top-left-radius: 15px !important;
    border-bottom-left-radius: 15px !important;
}

.page-item:last-child .page-link {
    border-top-right-radius: 15px !important;
    border-bottom-right-radius: 15px !important;
}

/* Enlace de cada página */
.page-link {
    color: var(--main-color) !important;
    background: transparent;
    border: none;
    border-radius: 0px;
    padding: 6px 16px;
    font-size: 18px;
    font-weight: 500;
    transition: background 0.2s, color 0.2s;
    outline: none;
    box-shadow: none;
}

/* Página activa */
.page-item.active .page-link,
.page-link.active {
    background: var(--main-color);
    color: #fff !important;
    border: none;
    pointer-events: none;
}

/* Hover */
.page-link:hover,
.page-link:focus {
    background: var(--black-color) !important;
    color: #fff !important;
    border: none;
}

/* Botones deshabilitados */
.page-item.disabled .page-link {
    color: #bdbdbd !important;
    background: transparent;
    pointer-events: none;
}

/* Quitar borde azul de focus */
.page-link:focus {
    box-shadow: none;
}

/* Texto de resultados */
.paginator__strong {
    color: var(--main-color);
    font-weight: bold;
}

/*******************************************************************Modal Reservar Viaje*****************************************************************************/

/*

*/
.selectCheckoutMainOption {
    margin: 20px 0;
}

.selectCheckoutMainOption h3 {
    justify-content: center;
    align-items: center;
    display: flex;
}

.containerModalReserve {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 0px !important;
    padding: 0;
}

.containerModalReserveButton {
    justify-content: center;
    display: flex;
    align-items: center;
}

/*******************************************************************END Modal Reservar Viaje*****************************************************************************/



.tooltip-large .tooltip-inner {
    max-width: 250px;
    font-size: 14px;
    padding: 12px 15px;
}

.tooltip-large .tooltip-inner p {
    font-size: 13px !important;
    margin-bottom: 5px;
}

.tooltip-large .tooltip-inner b {
    font-size: 16px !important;
    margin-bottom: 8px;
    display: block;
}








/*******************************************************************Bloque Trabajo*****************************************************************************/




/*******************************************************************Mexico Travesias*****************************************************************************/

/*
FUNDAMENTOS DE MÉXICO TRAVESÍAS
*/





/*******************************************************************END Bloque Trabajo*****************************************************************************/


/*Estilos nuevos Servicios*/
.paquete-card-main-subcontainers-content-b {
    background: #fff;
    display: flex;
    align-items: flex-start;
    padding: 20px 20px;
}

.sub-title-paquete-card-b {
    color: #000;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 12px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
    margin-bottom: 10px;
}

.text-paquete-card-b {
    color: #5D6974;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: 1;
    text-transform: capitalize;
    margin-bottom: 6px;
}

.text-paquete-card-c {
    padding: 6px 0 6px 0;
    font-size: 12px;
}



.text-paquete-card-c p {
    color: #000000;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: 1;
    text-transform: capitalize;
    margin-bottom: 4px;
}

.text-paquete-card-c span {
    color: #000000;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: 1;
    text-transform: capitalize;
    margin-bottom: 4px;
}

.text-paquete-card-c strong {
    color: #000000;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: 1;
    text-transform: capitalize;
    margin-bottom: 4px;
}

/*Estilos nuevos Servicios*/

.paquete-card-main-subcontainers-title-a {
    display: flex;
    flex-direction: column;
    justify-content: center;
    background-color: #F6F7F8;
    height: 40px;
    color: #28333E;
    padding-inline: 40px;
}

.paquete-card-main-subcontainers-title-a p {
    font-size: 16px;
    color: var(--main-color);
    font-weight: 400;
}

.paquete-card-main-subcontainers-title-a button {
    font-size: 16px;
    color: var(--main-color);
    font-weight: 400;
}


/******************************************************************* PHOTOS *****************************************************************************/
/* Filter Sidebar Styles */
.filter-sidebar-MT {
    background: transparent;
    border-radius: 8px;
    padding: 0px;
    height: fit-content;
    position: sticky;
    top: 20px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    margin: 20px;
    border: 1px solid rgba(221, 225, 228, 1);
}

.filter-title-MT {
    font-size: 16px;
    font-weight: 500;
    color: #ffffff;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    background: var(--main-color);
    padding: 15px 20px;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
}

.filter-section-MT {
    margin-bottom: 15px;
    padding: 20px;
}

.filter-subtitle-MT {
    font-size: 14px;
    color: #28333E;
    margin-bottom: 15px;
    font-weight: 500;
}

.buttons-MT-vertical {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

/* Checkbox Styles Personalizados */
.filter-option-MT {
    position: relative;
}

.filter-checkbox-MT {
    position: absolute;
    opacity: 0;
    cursor: pointer;
    height: 0;
    width: 0;
}

.filter-label-MT {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 0px 5px;
    color: #555;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.3s ease;
    font-size: 13px;
    font-weight: 500;
    width: 100%;
    margin: 0;
    position: relative;
}

.filter-label-MT:hover {
    transform: translateX(5px);
}


/* Crear un indicador visual personalizado */
.filter-label-MT::before {
    content: '';
    width: 16px;
    height: 16px;
    border: 2px solid #000000;
    border-radius: 3px;
    margin-right: 8px;
    transition: all 0.1s ease;
    flex-shrink: 0;
}

.filter-checkbox-MT:checked + .filter-label-MT::before {
    background: #24A147;
     border: 0px solid #fff;
    content: '✓';
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    color: #ffffff;
    font-weight: bold;
}

.filter-icon-MT {
    font-size: 14px;
    flex-shrink: 0;
}

/* Gallery Grid Styles - Masonry con CSS Grid */
.gallery-grid-MT {
    display: grid;
    grid-template-columns: repeat(3, 1fr); 
    grid-auto-rows: 120px; 
    gap: 12px; 
    padding: 20px 0;
}

/* Tamaños diferentes para crear efecto masonry */
.gallery-masonry-item.small {
    grid-row: span 2;
}

.gallery-masonry-item.medium {
    grid-row: span 3;
}

.gallery-masonry-item.large {
    grid-row: span 4;
}

.gallery-masonry-item.wide {
    grid-row: span 1;
}


/* Gallery Item Styles */
.gallery-masonry-item {
    transition: all 0.3s ease;
}

.gallery-card-MT {
    background: white;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    cursor: pointer;
    transition: all 0.3s ease;
    height: 100%;
    width: 100%;
}

.gallery-card-MT:hover {
    transform: translateY(-8px);
    box-shadow: 0 12px 24px rgba(0,0,0,0.15);
}

.gallery-image-container-MT {
    position: relative;
    height: 100%;
    overflow: hidden;
}

.gallery-image-MT {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.gallery-card-MT:hover .gallery-image-MT {
    transform: scale(1.05);
}

.gallery-overlay-MT {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0,0,0,0.7);
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.gallery-card-MT:hover .gallery-overlay-MT {
    opacity: 1;
}

.overlay-content-MT {
    text-align: center;
    color: white;
}

.overlay-content-MT i {
    font-size: 2rem;
    margin-bottom: 8px;
    display: block;
}

.overlay-content-MT span {
    font-weight: 600;
    font-size: 14px;
}

/* Lightbox Styles */

/* === Estilos del lightbox === */
.lightbox-MT {
    display: none;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    position: fixed;
    z-index: 9999;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.9);
    text-align: center;
}

.lightbox-MT img {
    max-width: 90%;
    max-height: 90%;
    margin-top: 5%;
    width: 450px;
    height: 450px;
    object-fit: cover;
}

.lightbox-MT .close-MT {
    position: absolute;
    top: 1em;
    right: 1em;
    color: #fff;
    font-size: 2em;
    cursor: pointer;
}


.lightbox-content-MT {
    position: relative;
    width: 100vw;
    height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: -5rem;
}

/* ✅ Contenedor de imagen con tamaño fijo */
.lightbox-image-container-MT {
    width: 70vw;
    height: 70vh;
    max-width: 800px;
    max-height: 600px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.lightbox-image-MT {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    border-radius: 8px;
}

.close-MT {
    position: absolute;
    top: 3rem;
    right: 20px;
    color: white;
    font-size: 40px;
    font-weight: bold;
    cursor: pointer;
    z-index: 10000;
    transition: all 0.3s ease;
    background: rgba(0, 0, 0, 0.5);
    border-radius: 50%;
    width: 50px;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
}

.close-MT:hover {
    color: #ff4444;
    background: rgba(0, 0, 0, 0.7);
    transform: scale(1.1);
}

/* ✅ Botones de navegación siempre en las orillas */
.lightbox-MT__nav-button {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(255, 255, 255, 0.2);
    color: white;
    border: none;
    font-size: 20px;
    width: 40px;
    height: 40px;
    padding: 0;
    cursor: pointer;
    border-radius: 50%;
    transition: all 0.3s ease;
    z-index: 10000;
    backdrop-filter: blur(10px);
    user-select: none;
    display: flex !important;
    align-items: center;
    justify-content: center;
}

.lightbox-MT__nav-button:hover {
    background: rgba(255, 255, 255, 0.4);
    transform: translateY(-50%) scale(1.1);
}

.lightbox-MT__nav-button:active {
    transform: translateY(-50%) scale(0.95);
}

/* ✅ Botón previo - siempre en el borde izquierdo */
.lightbox-MT__nav-button--prev {
    left: 5%;
}

/* ✅ Botón siguiente - siempre en el borde derecho */
.lightbox-MT__nav-button--next {
    right: 5%;
}

/* ✅ Botón de acción centrado debajo */
.lightbox-action-btn-MT {
    z-index: 10000;
    padding: 10px 40px;
    font-size: 16px;
    font-weight: 600;
    border-radius: 25px;
    transition: all 0.3s ease;
    color: #fff;
    background-color: #7A8B9F;
}

.lightbox-action-btn-MT:hover {
    color: #fff;
    background-color: var(--main-color);
}

.overlay-name-image{
    font-weight: 700;
}

/* Responsive adjustments para lightbox */
@media (max-width: 768px) {
    .filter-sidebar-MT {
        margin-bottom: 20px;
        position: static;
    }
    
    .lightbox-MT__nav-button--prev {
        left: 10px;
    }
    
    .lightbox-MT__nav-button--next {
        right: 10px;
    }
    
    .lightbox-action-btn-MT {
        position: fixed;
        bottom: 20px;
        left: 50%;
        transform: translateX(-50%);
    }
}

/* Responsive adjustments */
@media (max-width: 1200px) {
    .gallery-grid-MT {
        grid-template-columns: repeat(2, 1fr);
        grid-auto-rows: 120px;
        gap: 10px;
    }
    .buttons-MT-vertical {
        flex-direction: column;
        flex-wrap: wrap;
    }
}

@media (max-width: 768px) {
    .gallery-grid-MT {
        grid-template-columns: repeat(2, 1fr);
        grid-auto-rows: 120px;
        gap: 10px;
    }
    
    .buttons-MT-vertical {
        flex-direction: column;
        flex-wrap: wrap;
    }
    
    .filter-label-MT {
        flex: 1;
        min-width: 120px;
    }
}

@media (max-width: 480px) {
    .gallery-grid-MT {
        grid-template-columns: 1fr;
        grid-auto-rows: 200px;
    }
    
    .gallery-masonry-item.small,
    .gallery-masonry-item.medium,
    .gallery-masonry-item.large,
    .gallery-masonry-item.wide {
        grid-row: span 1;
        grid-column: span 1;
    }

    .lightbox-MT__nav-button {
        top: 50%;
        background: #000;
        font-size: 15px;
        padding: 5px 10px;
        z-index: 9999;
        width: 30px;
        height: 30px;
    }

    .close-MT {
        top: 0px;
        right: 0px;
    }
}

.lightbox-info-container-MT {
    position: absolute;
    bottom: 30px;
    left: 50%;
    transform: translateX(-50%);
    text-align: center;
    z-index: 10000;
}

.lightbox-description-MT {
    color: white;
    margin-bottom: 15px;
    font-size: 16px;
}

.overlay-text-MT {
    color: white;
    font-size: 14px;
    opacity: 0.8;
}

/*******************************************************************END PHOTOS*****************************************************************************/

.section_padding {
    padding: 25px 0;
}


/*================================================
                --------------
=================================================*/
.section-main-guest {
    display: flex;
    width: 100%;
    height: 60vh;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
}

.container-reserve-form {
    width: auto !important;
    height: 392px;
    box-shadow: 0px 2px 22px 0px rgba(0, 0, 0, 0.10);
    border-radius: 5px;
    display: flex;
    overflow: hidden;
}

.container-reserve-form-a {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    padding: 40px 50px;
}

.container-reserve-form-a h3 {
    color: var(--main-color);
    /*font-family: 'Inter', sans-serif;*/
    font-size: 20px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    margin-bottom: 40px;
}

.container-reserve-form-b {
    background: var(--main-color);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    padding: 40px 50px;
}

.container-reserve-form-b h3 {
    color: var(--company-text);
    /*font-family: 'Inter', sans-serif;*/
    font-size: 20px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
    margin-bottom: 40px;
}

.container-reserve-form-cont {
    display: flex;
    flex-direction: column;
}

.container-reserve-form-cont-a {
    margin-bottom: 16px;
}

.container-reserve-form-cont-a i {
    color: var(--company-text);
}

.container-reserve-form-cont-a p {
    color: var(--company-text);
    /*font-family: 'Inter', sans-serif;*/
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}


/*Secciones de guest*/

.section-bookingDetails {
    /*margin-top: 50px;*/
}

.button-container-Guest-v1 {
    margin-block: 40px;
}

.container container-Guest-v1 {
    margin-block: 25px 40px;
}

.navigation-Guest-v1-left {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    color: #0F71E5;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
}

.navigation-Guest-v1-left i {
    margin-right: 15px;
}

.navigation-Guest-v1-right {
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    color: #0F71E5;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
}

.navigation-Guest-v1-right i {
    margin-left: 15px;
}

.notice-Guest-v1 {
    height: 72px;
    flex-shrink: 0;
    border-radius: 3px;
    border: 1px solid #FCCE15;
    background: #FFF7A0;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.info-Guest-v1-a {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 15px;
}

.notice-Guest-v1-icon {
    display: flex;
    justify-content: center;
    align-items: center;
}

.notice-Guest-v1-icon {
    color: #FCCE15;
    font-size: 40px;
}

.notice-Guest-v1-text {}

.notice-Guest-v1-text p {
    color: #000;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}



.info-notice-Guest-v1 {
    height: 72px;
    flex-shrink: 0;
    border-radius: 3px;
    border: 1px solid #AAB4BC;
    background: #EBEDEF;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.info-notice-Guest-v1-icon {
    display: flex;
    justify-content: center;
    align-items: center;
    color: #AAB4BC;
    font-size: 40px;
}

.info-notice-Guest-v1-text {}


.info-notice-Guest-v1-text p {
    color: #000;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}



.cancel-notice-Guest-v1 {
    height: 72px;
    flex-shrink: 0;
    border-radius: 3px;
    border: 1px solid #E81313;
    background: #FFD8D9;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.cancel-notice-Guest-v1-icon {
    display: flex;
    justify-content: center;
    align-items: center;
    color: #E81313;
    font-size: 40px;
}

.cancel-notice-Guest-v1-text {}


.cancel-notice-Guest-v1-text p {
    color: #000;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}



.reserve-notice-Guest-v1 {
    height: 72px;
    flex-shrink: 0;
    border-radius: 3px;
    border: 1px solid #AAB4BC;
    background: #FFF;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.reserve-notice-Guest-v1-text {}

.reserve-notice-Guest-v1-text h4 {
    color: var(--main-color);
    /*font-family: 'Inter', sans-serif;*/
    font-size: 20px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
}

.reserve-notice-Guest-v1-text h5 {
    color: #000;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    letter-spacing: -0.224px;
}

.reserve-notice-Guest-v1-text p {
    color: #000;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    letter-spacing: -0.224px;
}


/*Nuevo conteenedor para pagar*/

.info-container-Guest-v1-d {
    height: auto;
    flex-shrink: 0;
    border-radius: 3px;
    border: 1px solid #DDE1E4;
    background: #FFF;
    padding: 16px 30px;
}

.info-container-Guest-v1-d h5 {
    color: var(--main-color);
    /*font-family: 'Inter', sans-serif;*/
    font-size: 17px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
    text-transform: uppercase;
    margin-bottom: 15px;
}


/* Finn nuevo conteenedor para pagar*/



.info-container-Guest-v1-a {
    height: 90px;
    flex-shrink: 0;
    border-radius: 5px;
    border: 1px solid #DDE1E4;
    background: #FFF;
    padding: 16px 30px;
}



.data-container-Guest-v1-a {}

.data-container-Guest-v1-a h5 {
    color: #000;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    letter-spacing: -0.224px;
}

.data-container-Guest-v1-a p {
    color: #000;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    letter-spacing: -0.224px;
}

.data-container-Guest-v1-b {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
}

.data-container-Guest-v1-b h5 {
    color: #24A147;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    letter-spacing: -0.224px;
}

.data-container-Guest-v1-b p {
    color: #24A147;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    letter-spacing: -0.224px;
}

.data-container-Guest-v1-c {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.data-container-Guest-v1-c h5 {
    color: #000;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    letter-spacing: -0.224px;
}

.data-container-Guest-v1-c p {
    color: #000;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    letter-spacing: -0.224px;
}


.info-container-Guest-v1-c {
    height: auto;
    border-radius: 3px;
    border: 1px solid #DDE1E4;
    background: #FFF;
    padding: 0px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

.row-info-container-Guest-v1-a {
    height: 90px;
    border-bottom: 1px solid #DDE1E4;
    background: #FFF;
    padding: 16px 30px;
}



.info-container-Guest-v1-b {
    min-height: 80px;
    height: auto;
    flex-shrink: 0;
    border-radius: 5px;
    border: 1px solid #DDE1E4;
    background: #FFF;
    padding: 16px 30px;
}

.info-container-Guest-v1-b h5 {
    color: var(--main-color);
    /*font-family: 'Inter', sans-serif;*/
    font-size: 17px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
    text-transform: uppercase;
    margin-bottom: 15px;
}

.card-general-a-lugar-Guest {
    display: flex;
    flex-direction: row;
    align-items: center;
    width: 100%;
    color: var(--Black, #000);
    /*font-family: 'Inter', sans-serif;*/
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    margin-bottom: 15px;
}

.info-Guest-v1-b {
    min-height: 80px;
    height: 100%;
    flex-shrink: 0;
    border-radius: 5px;
    border: 1px solid #DDE1E4;
    background: #FFF;
    padding: 0px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding-right: 0 !important;
    padding-left: 0 !important;
}

.prueba2 {
    display: flex;
}

.cont-info-title-guest-v1-a {
    background: var(--main-color);
    width: 100%;
    padding: 16px 30px;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: space-between;
}

.info-title-guest-v1-a {
    display: flex;
}

.info-title-guest-v1-a h3 {
    color: #FFF;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
}

.cont-info-title-guest-v1-a h3 {
    color: #FFF;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
}

.info-title-guest-v1-b {
    display: flex;
}

.info-title-guest-v1-b h5 {
    color: #FFF;
    text-align: right;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 22px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
}

.cont-service-title-guest-v1-a {
    background: var(--main-color);
    width: 100%;
    padding: 16px 30px;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: flex-start;
}

.cont-service-title-guest-v1-a h3 {
    color: #FFF;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
}

.cont-service-title-guest-v1-a i {
    color: #FFF;
    margin-right: 15px;
}

.cont-info-title-guest-v1-b {
    padding: 16px 30px;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.info-service-title-guest-a {
    color: #000;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}

.info-service-title-guest-b {
    color: #000;
    /*font-family: 'Inter', sans-serif;*/
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}

.info-service-title-guest-b p {
    font-size: 15px;
}

.info-service-title-guest-c {
    color: #000;
    text-align: right;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
}

.info-service-title-guest-c p {
    text-align: end
}

.cont-service-title-guest-v1-d {
    background: var(--main-color);
    width: 100%;
    padding: 0px;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: flex-start;
    min-height: 90px;
}

.cont-service-title-guest-v1-d h3 {
    color: #FFF;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
}

.cont-service-title-guest-v1-d i {
    color: #FFF;
    margin-right: 15px;
}

.row-cont-service-title-guest-v1-d {
    padding: 0;
    margin: 0;
}

.cont-payment-title-guest-v1 {
    /*border: 1px solid #DDE1E4;*/
    background: #EBEDEF;
    padding: 8px 30px;
}

.cont-payment-title-guest-a {
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

.cont-payment-title-guest-a p {
    color: #000;
    text-align: right;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
}

.cont-payment-title-guest-b {
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

.cont-payment-title-guest-b p {
    color: #000;
    text-align: right;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
}

.cont-pendingpayment-title-guest-v1 {
    /*border: 1px solid #DDE1E4;*/
    background: #3B3F44;
    padding: 8px 30px;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.cont-pendingpayment-title-guest-a {
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

.cont-pendingpayment-title-guest-a p {
    color: #FFF;
    text-align: right;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 18px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
}

.cont-pendingpayment-title-guest-b {
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

.cont-pendingpayment-title-guest-b p {
    color: #FFF;
    text-align: right;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 20px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
}


.cont-buttonpayment-title-guest-v1 {
    padding: 16px 30px;
    display: flex;
    justify-content: flex-end;
}

.infoServices-Guest-v1 {}



.cont-guest-fechaVuelo-v1-a {
    /*border-right: 1px solid #DDE1E4;*/
    padding: 16px 30px;
}

.cont-guest-fechaVuelo-v1-b {
    padding: 16px 30px;
}

.gray-guest-title {
    background: #EBEDEF;
    display: flex;
    justify-content: center;
    padding: 10px 30px;
}

.white-guest-title {
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
    min-height: 65px;
    padding: 10px 20px;
    gap: 10px;
}

.card-general-a-Guest-p {
    margin-right: 5px;
}

.cont-guest-container-v1-a {
    border-right: 1px solid #DDE1E4;
    border-bottom: 1px solid #DDE1E4;
    padding: 0px;
    padding-right: 0 !important;
    padding-left: 0 !important;
}

.cont-guest-container-v1-b {
    padding: 0px;
    border-bottom: 1px solid #DDE1E4;
}

.cont-guest-row-v2 {
    margin-right: 0;
    margin-left: 0;
}

.cont-guest-cont-v2 {
    padding: 0;
    padding-right: 0 !important;
    padding-left: 0 !important;
}

.card-general-a-Guest {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    width: 100%;
    color: var(--Black, #000);
    /*font-family: 'Inter', sans-serif;*/
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}

.card-general-a-Guest p {
    font-size: 14px;
    display: flex;
    flex-direction: row;
    margin-right: 5px;
}

.card-general-a-Guest i {
    font-size: 14px;
    margin-right: 3px;
}

.cont-last-Guest-v1 {}

.cont-last-row-Guest-v1 {}

.condiciones-Guest-v1-a {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding-right: 25px;
}

.condiciones-Guest-v1-logo {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.condiciones-Guest-v1-logo i {
    color: var(--black-color);
    font-size: 40px;
}

.condiciones-Guest-v1-text {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.condiciones-Guest-v1-text h5 {
    color: #000;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
}

.condiciones-Guest-v1-text p {
    color: #000;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}

.condiciones-Guest-v1-button {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.condiciones-Guest-v1-button button {}

.cancelaciones-Guest-v1-a {}

.row-cancel-Guest-v1-a {
    border: 0.5px solid #AAB4BC;
    background: var(--White, #FFF);
    border-radius: 5px;
    padding: 0;
    margin: 0;
}

.cancel-Guest-v1-a {
    display: flex;
    align-items: center;
    justify-content: center;
}

.info-cancel-Guest-v1-a {}

.info-cancel-Guest-v1-a h3 {
    color: var(--main-color);
    /*font-family: 'Inter', sans-serif;*/
    font-size: 20px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
}

.info-cancel-container-Guest-v1-a {
    margin-block: 40px;
}

.info-cancel-container-Guest-v1-a p {
    color: #000;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}

.info-cancel-container-Guest-v1-a i {
    color: var(--black-color);
    font-size: 16px;
    margin-right: 10px;
}


.cancel-Guest-v1-b {
    padding: 0;
}

.cancel-Guest-v1-b img {
    width: 100%;
    object-fit: cover;
}

#circuitsZoneDestinyDiv {
    width: 100%;
}



#packageZoneDestinyDiv {
    width: 100%;
}


/*Circulos checkout */
.container-checkout-steps {
    width: 100%;
}



.container-checkout-steps .steps-checkout-steps {
    display: flex;
    width: 100%;
    align-items: center;
    justify-content: space-between;
    position: relative;
}

.steps-checkout-steps .circle-checkout-steps {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 50px;
    width: 50px;
    color: #999;
    font-size: 22px;
    font-weight: 500;
    border-radius: 50%;
    background: #fff;
    border: 4px solid #e0e0e0;
    transition: all 200ms ease;
    transition-delay: 0s;
}

.steps-checkout-steps .circle-checkout-steps .active-checkout-steps {
    transition-delay: 100ms;
    border-color: #4070f4;
    color: #4070f4;
}

.steps-checkout-steps .progress-bar-checkout-steps {
    position: absolute;
    height: 4px;
    width: 100%;
    background: #e0e0e0;
    z-index: -1;
}

.progress-bar-checkout-steps .indicator-checkout-steps {
    position: absolute;
    height: 100%;
    width: 0%;
    background: #4070f4;
    transition: all 300ms ease;
}

.container-checkout-steps .buttons-checkout-steps {
    display: flex;
    gap: 20px;
}

.buttons-checkout-steps button {
    padding: 8px 25px;
    background: #4070f4;
    border: none;
    border-radius: 8px;
    color: #fff;
    font-size: 16px;
    font-weight: 400;
    cursor: pointer;
    box-shadow: 0 5px 10px rgba(0, 0, 0, 0.05);
    transition: all 200ms linear;
}

.buttons-checkout-steps button:active {
    transform: scale(0.97);
}

.buttons-checkout-steps button:disabled {
    background: #87a5f8;
    cursor: not-allowed;
}




/*Fin Circulos checkout */


/*Formulario en pasos*/

::selection {
    color: #fff;
    background: var(--main-color);
}

.container-checkout-main {
    /*padding-inline: 5%;
    padding-left: 5%;*/
    padding-bottom: 40px;
}

.container-checkout-sesion {
    border-radius: 5px;
    background: #D3ECDA;
    height: 64px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    margin-bottom: 32px;
}

.container-checkout-sesion h4 {
    color: #000;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 14px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
}

.container-checkout-sesion a {
    color: #000;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 14px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
    text-decoration-line: underline !important;
    text-transform: uppercase;
}

.container-checkout-main-steps {
    width: 100%;
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: flex-start;
    padding: 30px 0 0px 12px;
    /*overflow: hidden;*/
}


.form-input .paymentMethod .amountPayment {
    width: 75% !important;
    text-align: center;
    border-radius: 4px;
    /* border: 1px; */
    border: 1px solid #24A147;
}

.checkout-payment-option-price input {
    width: 75% !important;
    text-align: center;
    border-radius: 4px;
    /* border: 1px; */
    border: 1px solid #24A147;
}

.container-checkout-steps {
    width: 100%;
    background: #fff;
    text-align: center;
    padding: 0px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    /*gap: 40px;*/
    /*width: 800px;*/
    /*border-radius: 5px;*/
    /*padding: 50px 35px 10px 35px;*/
    /*max-width: 800px;*/
}

.container-timer-steps {
    display: flex;
    border-radius: 5px;
    background: #ebedef;
    justify-content: center;
    align-items: center;
    width: 35%;
    padding: 10px 20px;
}

.container-timer {
    font-weight: 600;
    font-style: normal;
    line-height: normal;
}

.container-timer-title {
    font-size: 13px;
}

.container-timer-time {
    font-size: 20px;
}

.row-container-checkout-steps {
    width: 100%;
    padding-right: 0 !important;
    padding-left: 0 !important;
    margin: 0;
}

.container-checkout-steps-main {
    overflow: hidden;
    padding-right: 0 !important;
    padding-left: 0 !important;
}

.container-checkout-steps-bullet {
    align-items: center !important;
}

.container-checkout-border {
    border-radius: 5px;
    border: 1px solid #DDE1E4;
    padding: 35px 50px 0 50px;
    width: 100%;
    /*height: 600px;*/
}

.container-checkout-border-b {
    border-radius: 5px;
    border: 1px solid #DDE1E4;
    padding: 35px 50px 0 50px;
    width: 100%;
    /*height: 600px;*/
}


.container-checkout-border-c {
    border-radius: 5px;
    border: 1px solid #DDE1E4;
    width: 100%;
    /*height: 600px;*/
}

.container-checkout-padding {
    padding: 35px 50px 0 50px;
    border-bottom: 1px solid #DDE1E4;
}

.container-checkout-padding-meeting-points {
    padding: 35px 50px 50px 50px;
    border-bottom: 1px solid #DDE1E4;
}

.container-checkout-pad {
    padding-right: 0;
    padding-left: 0;
    margin-right: 0;
    margin-left: 0;
}

.container-checkout-steps header {
    font-size: 35px;
    font-weight: 600;
    margin: 0 0 30px 0;
}

/*.container-checkout-steps .form-outer-checkout-steps {
        width: 100%;
        overflow: hidden;
    }*/



/*.container-checkout-steps .form-outer-checkout-steps form*/
.container-checkout-steps .form-outer-checkout-steps {
    display: flex;
    width: 400%;
}

/*.form-outer-checkout-steps form .page-checkout-steps*/
.form-outer-checkout-steps .page-checkout-steps {
    width: 25%;
    transition: margin-left 0.3s ease-in-out;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

/*.form-outer-checkout-steps form .page-checkout-steps .title-checkout-steps*/
.form-outer-checkout-steps .page-checkout-steps .title-checkout-steps {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    margin-bottom: 15px;
    padding-bottom: 20px;
    border-bottom: 1px solid #DDE1E4;
}

/*.form-outer-checkout-steps form .page-checkout-steps .title-checkout-steps h3*/
.form-outer-checkout-steps .page-checkout-steps .title-checkout-steps h3 {
    color: var(--main-color);
    /*font-family: 'Inter', sans-serif;*/
    font-size: 18px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
}

/*.form-outer-checkout-steps form .page-checkout-steps .title-checkout-steps h4 */
p .form-outer-checkout-steps .page-checkout-steps .title-checkout-steps p {
    color: #000;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 14px;
    font-style: normal;
    font-weight: 300;
    line-height: normal;
}

.form-outer-checkout-steps .page-checkout-steps .title-checkout-steps h5 {
    color: #000;
    /*font-family: Inter;*/
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    margin-top: 10px;
    text-align: left;
}

/*.form-outer-checkout-steps form .page-checkout-steps .title-checkout-steps */
.form-outer-checkout-steps .page-checkout-steps .title-checkout-steps p {
    color: #000;
    /*font-family: Inter;*/
    font-size: 12px;
    font-style: normal;
    font-weight: 300;
    line-height: normal;
    margin-top: 5px;
    /*margin-left: 5px;*/
}

.container-checkout-button-step {
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: center;
}

/*.form-outer-checkout-steps form .page-checkout-steps .field-checkout-steps*/
/*.form-outer-checkout-steps .page-checkout-steps*/
.field-checkout-steps {
    width: 100%;
    height: auto;
    min-height: 70px;
    margin: 22px 0;
    display: flex;
    position: relative;
    flex-direction: column;
    padding-inline: 5px;
}

.field-checkout-steps-button {
    flex-direction: row !important;
    min-height: 45px !important;
}

/*form .page-checkout-steps .field-checkout-steps .label-checkout-steps*/
.page-checkout-steps .field-checkout-steps .label-checkout-steps {
    position: absolute;
    top: -30px;
    font-weight: 500;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}

/*form .page-checkout-steps .field-checkout-steps .label-checkout-steps error*/
.page-checkout-steps .field-checkout-steps .label-checkout-steps error {
    margin-block: 10px;
    color: crimson;
}

.iti {
    height: 45px;
}

/*form .page-checkout-steps .field-checkout-steps input*/
.page-checkout-steps .field-checkout-steps input {
    height: 100%;
    min-height: 45px;
    width: 100%;
    border: 1px solid lightgrey;
    border-radius: 5px;
    padding-left: 15px;
    font-size: 18px;
    color: #000;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
}

/*form .page-checkout-steps .field-checkout-steps textarea*/
.page-checkout-steps .field-checkout-steps textarea {
    min-height: 60px;
    height: 100%;
    width: 100%;
    border: 1px solid lightgrey;
    border-radius: 5px;
    padding: 15px;
    font-size: 18px;
    color: #000;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    margin-bottom: 30px;
}

/*form .page-checkout-steps .field-checkout-steps textarea */
.page-checkout-steps .field-checkout-steps textarea {
    min-height: 60px;
    height: 100%;
    width: 100%;
    border: 1px solid lightgrey;
    border-radius: 5px;
    padding: 15px;
    font-size: 18px;
    color: #000;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    margin-bottom: 30px;
}

/*form .page-checkout-steps .field-checkout-steps select*/
.page-checkout-steps .field-checkout-steps select {
    min-height: 45px;
    /*height: 100%;*/
    width: 100%;
    border: 1px solid lightgrey;
    border-radius: 5px;
    padding: 15px;
    font-size: 18px;
    color: #000;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    padding: 0 15px;
}

.error {
    color: crimson;
    margin: 5px 0 5px 0;
    line-height: 1;
    font-size: 12px;
}

/*form .page-checkout-steps .field-checkout-steps select:after*/
.page-checkout-steps .field-checkout-steps select:after {
    position: absolute;
    content: "";
    top: 14px;
    right: 10px;
    width: 0;
    height: 0;
    border: 6px solid transparent;
    border-color: var(--black-color);
}


/*form .page-checkout-steps .field-checkout-steps button*/
.page-checkout-steps .field-checkout-steps button {
    width: 100%;
    height: calc(100% + 5px);
    border: none;
    background: var(--black-color);
    margin-top: -20px;
    border-radius: 5px;
    color: var(--company-text);
    cursor: pointer;
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 1px;
    text-transform: uppercase;
    transition: 0.5s ease;
}

/*form .page-checkout-steps .field-checkout-steps button:hover*/
.page-checkout-steps .field-checkout-steps button:hover {
    background: var(--main-color);
}

/*form .page-checkout-steps .btns-checkout-steps button*/
.page-checkout-steps .btns-checkout-steps button {
    margin-top: -20px !important;
}

/*form .page-checkout-steps .btns-checkout-steps button.prev-checkout-steps*/
.page-checkout-steps .btns-checkout-steps button.prev-checkout-steps {
    margin-right: 3px;
    font-size: 13px;
}

/*form .page-checkout-steps .btns-checkout-steps button.next-checkout-steps*/
.page-checkout-steps .btns-checkout-steps button.next-checkout-steps {
    margin-left: 3px;
}

.container-checkout-steps .progress-bar-checkout-steps {
    display: flex;
    margin: 40px 0;
    user-select: none;
    width: 70%;
}

.container-checkout-steps .progress-bar-checkout-steps .step-checkout-steps {
    text-align: center;
    width: 100%;
    position: relative;
}

.container-checkout-steps .progress-bar-checkout-steps .step-checkout-steps p {
    font-weight: 500;
    font-size: 14px;
    color: #000;
    margin-bottom: 8px;
    text-align: center;
}

#formPrincipal {
    width: 100%;
}

/*progress bar 1*/
.progress-bar-checkout-steps .step-checkout-steps .bullet-checkout-steps {
    height: 40px;
    width: 40px;
    border: 2px solid #DDE1E4;
    background: #DDE1E4;
    display: inline-block;
    border-radius: 50%;
    position: relative;
    transition: 0.2s;
    font-weight: 500;
    font-size: 17px;
    line-height: 37px;
    z-index: 1;
}

.progress-bar-checkout-steps .step-checkout-steps .bullet-checkout-steps.active-checkout-steps {
    border-color: #24A147;
    background: #D3ECDA;
    z-index: 1;
}

.progress-bar-checkout-steps .step-checkout-steps .bullet-checkout-steps span {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    color: #fff;
}

.progress-bar-checkout-steps .step-checkout-steps .bullet-checkout-steps.active-checkout-steps span {
    display: none;
}

.progress-bar-checkout-steps .step-checkout-steps .bullet-checkout-steps:before,
.progress-bar-checkout-steps .step-checkout-steps .bullet-checkout-steps:after {
    position: absolute;
    content: '';
    /*bottom: 11px;
        right: -51px;
        height: 3px;
        width: 44px;*/
    bottom: 17px;
    right: -205px;
    height: 2px;
    width: 205px;
    background: #DDE1E4;
    z-index: 0;
}

.progress-bar-checkout-steps .step-checkout-steps .bullet-checkout-steps.active-checkout-steps:after {
    background: #24A147;
    transform: scaleX(0);
    transform-origin: left;
    animation: animate 0.3s linear forwards;
}

@keyframes animate {
    100% {
        transform: scaleX(1);
    }
}

.progress-bar-checkout-steps .step-checkout-steps:last-child .bullet-checkout-steps:before,
.progress-bar-checkout-steps .step-checkout-steps:last-child .bullet-checkout-steps:after {
    display: none;
}

/*fin progress bar 1*/

/*progress bar 2*/
.progress-bar-checkout-steps .step-checkout-steps .bullet-checkout-steps-a {
    height: 40px;
    width: 40px;
    border: 2px solid #DDE1E4;
    background: #DDE1E4;
    display: inline-block;
    border-radius: 50%;
    position: relative;
    transition: 0.2s;
    font-weight: 500;
    font-size: 17px;
    line-height: 37px;
}

.progress-bar-checkout-steps .step-checkout-steps .bullet-checkout-steps-a.active-checkout-steps {
    border-color: #24A147;
    background: #D3ECDA;
    z-index: 1;
}

.progress-bar-checkout-steps .step-checkout-steps .bullet-checkout-steps-a span {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    color: #fff;
}

.progress-bar-checkout-steps .step-checkout-steps .bullet-checkout-steps-a.active-checkout-steps span {
    display: none;
}

.progress-bar-checkout-steps .step-checkout-steps .bullet-checkout-steps-a:before,
.progress-bar-checkout-steps .step-checkout-steps .bullet-checkout-steps-a:after {
    position: absolute;
    content: '';
    /*bottom: 11px;
        right: -51px;
        height: 3px;
        width: 44px;*/
    bottom: 17px;
    right: -460px;
    height: 2px;
    width: 450px;
    background: #DDE1E4;
    z-index: 0;
}

.progress-bar-checkout-steps .step-checkout-steps .bullet-checkout-steps-a.active-checkout-steps:after {
    background: #24A147;
    transform: scaleX(0);
    transform-origin: left;
    animation: animate 0.3s linear forwards;
}

@keyframes animate {
    100% {
        transform: scaleX(1);
    }
}

.progress-bar-checkout-steps .step-checkout-steps:last-child .bullet-checkout-steps-a:before,
.progress-bar-checkout-steps .step-checkout-steps:last-child .bullet-checkout-steps-a:after {
    display: none;
}

/*fin progress bar 2*/

.progress-bar-checkout-steps .step-checkout-steps p.active-checkout-steps {
    color: #24A147;
    transition: 0.2s linear;
}

.progress-bar-checkout-steps .step-checkout-steps .check-checkout-steps {
    position: absolute;
    left: 50%;
    /*top: 70%;*/
    top: 25%;
    font-size: 17px;
    transform: translate(-50%, -50%);
    display: none;
}

.progress-bar-checkout-steps .step-checkout-steps .check-checkout-steps.active-checkout-steps {
    display: block;
    color: #24A147;
    z-index: 1;
}

.accordion-checkout-steps {
    margin-block: 25px;
    width: 100%;
}

.accordion-item-checkout-steps {
    background-color: #DDE1E4;
    border: 0px solid rgba(0, 0, 0, 0);
}

.accordion-header-checkout-steps {}

.accordion-button::after {
    fill: var(--black-color);
}

.accordion-button:not(.collapsed) {
    fill: black !important;
}

.accordion-button-checkout-steps {
    background-color: transparent;
    padding: 1rem;
    margin-top: 0px;
    margin-bottom: 0px;
    border-color: transparent;
}

.accordion-button-checkout-steps h4 {
    color: #000;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 14px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
    margin-left: 20px;
}

.accordion-button-checkout-steps:not(.collapsed) {
    box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0);
}

.accordion-collapse-checkout-steps {
    background: #fff;
}

.accordion-body-checkout-steps {
    padding: 0.5rem 0rem !important;
}

.container-checkout-steps-section {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 40px;
    /* max-width: 800px; */
    width: 100%;
    /* width: 800px; */
    background: #fff;
    text-align: center;
    /* border-radius: 5px; */
    padding: 0px;
}

.field-checkout-steps-title {
    width: 100%;
    display: flex;
    justify-content: flex-start;
    height: 45px;
    margin: 12px 0;
    display: flex;
    position: relative;
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}

.field-checkout-steps-title h4 {
    color: #000;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 14px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
}

.box-center-checkout {
    display: flex;
    align-items: center;
    margin: 10px 0;
}

.field-checkout-steps-tittle {}

/* The switch - the box around the slider */
.container-checkout-switch {
    position: relative;
    display: inline-block;
    width: 40px;
    height: 20px;
    margin-left: 20px;
}

/* Hide default HTML checkbox */
.container-checkout-switch input {
    opacity: 0;
    width: 0;
    height: 0;
}

/* The slider */
.container-checkout-slider {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #ccc;
    -webkit-transition: .4s;
    transition: .4s;
}

.container-checkout-slider:before {
    position: absolute;
    content: "";
    height: 12px;
    width: 12px;
    left: 4px;
    bottom: 4px;
    background-color: white;
    -webkit-transition: .4s;
    transition: .4s;
}

input:checked+.container-checkout-slider {
    background-color: var(--black-color);
}

input:focus+.container-checkout-slider {
    box-shadow: 0 0 1px var(--black-color);
}

input:checked+.container-checkout-slider:before {
    -webkit-transform: translateX(20px);
    -ms-transform: translateX(20px);
    transform: translateX(20px);
}

/* Rounded sliders */
.container-checkout-slider.container-checkout-round {
    border-radius: 34px;
}

.container-checkout-slider.container-checkout-round:before {
    border-radius: 50%;
}

.row-checkout {
    width: 100%;
}

/*Fin Formulario en pasos*/

.nav-tabs-payment-checkout {}

.nav-links-payment-checkout {}


.nav-tabs-payment-checkout .nav-item.show .nav-links-payment-checkout,
.nav-tabs-payment-checkout .nav-links-payment-checkout.active {
    color: #fff;
    background-color: var(--black-color);
    border-color: #dee2e6 #dee2e6 #dee2e6;
}


.nav-tabs-payment-checkout .nav-links-payment-checkout {
    margin-bottom: -1px;
    background: 0 0;
    border: 1px solid #dee2e6;
    border-top-left-radius: .25rem;
    border-top-right-radius: .25rem;
    color: #dee2e6;
    margin-right: 10px;
}

.nav-tabs-profile-container {
    display: flex;
    gap: 5px;
    border: none;
    border-bottom: none !important;
}

.nav-links-profile {
    background: #fff;
    border-radius: 20px 20px !important;
    border: 1px solid var(--main-color) !important;
    color: var(--main-color) !important;
    transition: all 0.3s ease;
    font-size: 12px !important;
    padding: 5px 10px !important;
}

.nav-links-profile:hover {
    background: var(--main-color) !important;
    color: #fff !important;
    border-color: var(--main-color);
}

.nav-links-profile.active {
    background: var(--main-color) !important;
    color: #fff !important;
    box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.2);
}

/*SideBar del CheckOut*/
.container-info-checkout-main {
    /*padding-right: 5%;*/
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.container-info-checkout-reserve {
    border: 1px solid #DDE1E4;
    border-radius: 5px;
    padding: 0;
}

.container-info-checkout-reserve-description {
    background: #EBEDEF;
    padding: 16px 20px;
}

.container-info-checkout-reserve-description h3 {
    color: var(--Black, #000);
    /*font-family: 'Inter', sans-serif;*/
    font-size: 14px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
    margin-bottom: 16px;
}




.container-info-checkout-conditions h3 {
    color: var(--Black, #000);
    /*font-family: 'Inter', sans-serif;*/
    font-size: 14px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
    margin-bottom: 16px;
}

.container-info-checkout-reserve-description h4 {
    color: var(--Black, #000);
    /*font-family: 'Inter', sans-serif;*/
    font-size: 14px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
    margin-top: 8px;
}

.container-info-checkout-reserve-description h5 {
    color: var(--Black, #000);
    /*font-family: 'Inter', sans-serif;*/
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    margin-top: 8px;
}

.container-info-checkout-reserve-description p {
    color: var(--Black, #000);
    /*font-family: 'Inter', sans-serif;*/
    font-size: 14px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
}

.container-info-checkout-reserve-description-a {
    display: flex;
    flex-direction: row;
    align-items: center;
}

.container-info-checkout-reserve-description-a i {
    color: var(--Black, #000);
    font-size: 14px;
    margin-right: 10px;
}


.container-info-checkout-reserve-services {
    padding: 16px 20px;
}

.container-info-checkout-reserve-services-a {
    margin-bottom: 8px;
    border-bottom: 1px solid #DDE1E4;
    padding-block: 8px;
}

.container-info-checkout-reserve-services-a h5 {
    color: var(--Black, #000);
    /*font-family: 'Inter', sans-serif;*/
    font-size: 14px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
    text-transform: uppercase;
}

.container-info-checkout-reserve-services-a p {
    color: var(--Black, #000);
    /*font-family: 'Inter', sans-serif;*/
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    margin-left: 10px;
    margin-top: 5px;
}

.container-info-checkout-reserve-services-a i {
    margin-right: 15px;
}

.container-info-checkout-reserve-services-ab {
    margin-bottom: 8px;
    border-bottom: 1px solid #DDE1E4;
    padding-block: 8px;
}

.container-info-checkout-reserve-services-ab h5 {
    color: var(--Black, #000);
    /*font-family: 'Inter', sans-serif;*/
    font-size: 14px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
    text-transform: uppercase;
}

.container-info-checkout-reserve-services-ab p {
    color: var(--Black, #000);
    /*font-family: 'Inter', sans-serif;*/
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    margin-left: 10px;
    margin-top: 5px;
}

.container-info-checkout-reserve-services-ab i {
    margin-right: 15px;
}

.green-text {
    color: #24A147 !important;
}

.red-text {
    color: #E81313 !important;
}

.container-info-checkout-reserve-price {
    /* background: #EBEDEF; */
    padding: 16px 50px;
    gap: 5px;
}

.container-info-checkout-reserve-price h2 {
    color: var(--Black, #000);
    /*font-family: Inter;*/
    font-size: 20px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
}


.container-info-checkout-reserve-price h3 {
    color: var(--Black, #000);
    /*font-family: 'Inter', sans-serif;*/
    font-size: 22px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    text-align: end;
}

.container-info-checkout-reserve-price h4 {
    color: var(--Black, #000);
    /*font-family: Inter;*/
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    margin-bottom: 10px;
}

.container-info-checkout-reserve-price h5 {
    color: var(--Black, #000);
    /*font-family: Inter;*/
    font-size: 18px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    margin-bottom: 10px;
    text-align: end;
}

.container-info-checkout-conditions {
    border: 1px solid #DDE1E4;
    border-radius: 5px;
    background: #EBEDEF;
    padding: 16px 20px;
    display: flex;
    flex-direction: column;
    align-items: start;
}

.container-info-checkout-paytime {
    border: 1px solid #DDE1E4;
    border-radius: 5px;
    background: #FFFFFF;
    padding: 16px 20px;
    display: flex;
    flex-direction: column;
    align-items: start;
}

.container-info-checkout-paytime h2 {
    font-size: 1rem;
    line-height: 1.1;
    font-weight: 600;
    margin-left: 0px;
    margin-bottom: 0;
}

.container-info-checkout-paytime h3 {
    font-size: 1.3rem;
    font-weight: 600;
    margin-bottom: 0px;
}


.promoContainerA {
    display: flex;
    flex-direction: row;
    width: 100%;
    gap: 25px;
}

#promoCode {
    width: 100%;
    border: 1px solid lightgrey;
    border-radius: 5px;
    padding-left: 10px;
    height: 42px;
}

.btn_Promo {
    min-width: 100px;
    width: 100px;
    padding-inline: 15px;
    height: 42px;
}

.col-flex {
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-items: flex-start;
    justify-content: center;
}

.col-flex-B {
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-items: flex-end;
    justify-content: center;
}

.col-flex p {
    font-size: 14px;
}

.container-info-checkout-fligths {
    border: 1px solid #DDE1E4;
    border-radius: 5px;
}

.container-info-checkout-fligths-title {
    background: #EBEDEF;
    padding: 5px 20px;
}

.container-info-checkout-fligths-title p {
    color: var(--Black, #000);
    /*font-family: 'Inter', sans-serif;*/
    font-size: 14px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
}

.container-info-checkout-fligths-title i {
    margin-right: 15px;
}

.container-info-checkout-fligths-info {
    padding: 16px 20px;
    border-bottom: 1px solid #DDE1E4;
}

.container-info-checkout-fligths-info h4 {
    color: var(--Black, #000);
    /*font-family: 'Inter', sans-serif;*/
    font-size: 14px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
    letter-spacing: -0.196px;
    text-transform: uppercase;
    text-align: center;
}

.container-info-checkout-fligths-info img {
    margin-right: 10px;
    margin-block: 12px;
    height: 35px;
}

.checkout-payment-disclaimer-b a {
    color: var(--main-color) !important;
    text-decoration: underline !important;
}

.checkout-payment-disclaimer-b a:hover {
    color: var(--black-color);
    text-decoration: none;
}

.container-info-checkout-fligths-info p {
    color: var(--Black, #000);
    /*font-family: Inter;*/
    font-size: 14px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
    letter-spacing: -0.196px;
    text-transform: uppercase;
    text-align: center;
}

.container-info-checkout-fligths-info h5 {
    color: var(--gray-osos-800, #646D74);
    text-align: center;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 12px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
}

.container-info-checkout-fligths-info h6 {
    color: #000;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    letter-spacing: -0.196px;
    text-align: center;
}

.container-info-checkout-fligths-info-a {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.container-info-checkout-fligths-info-abc {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.container-info-checkout-Hotels {
    border: 1px solid #DDE1E4;
    border-radius: 5px;
}

.container-info-checkout-carrier {
    border: 1px solid #DDE1E4;
    border-radius: 5px;
}

.container-info-checkout-service {
    border: 1px solid #DDE1E4;
    border-radius: 5px;
}


.container-accordion-checkout-main {
    margin: 20px 0 0 0;
    padding: 0;
    overflow: hidden;
    border-top: 1px solid #DDE1E4;
}

.container-accordion-checkout-item {
    background-color: #fff;
    border: 1px solid transparent;
        margin: 10px 0 0;
}

.container-accordion-checkout-button:not(.collapsed) {
    box-shadow: inset 0 -1px 0 transparent;
}

.container-accordion-checkout-header {
    margin: 0px;
    padding: 0;
    text-decoration: underline;
}

.container-accordion-checkout-button {
    display: flex;
    justify-content: flex-end;
    text-align: center;
    color: var(--black-color);
    padding: 0;
    margin: 0;
}

.container-accordion-checkout-button::after {
    margin-left: 40%;
}

.container-accordion-checkout-body {
    padding: 5px 20px !important;
}

.container-accordion-checkout-body-a {}

.container-accordion-checkout-body-a h5 {
    color: var(--Black, #000);
    /*font-family: 'Inter', sans-serif;*/
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    margin-bottom: 5px;
}

.container-accordion-checkout-button:not(.collapsed)::after {
    fill: var(--black-color);
}

.container-checkout-info-blue {
    border-radius: 3px;
    border: 1px solid #6EB0FF;
    background: #CFE3FE;
    height: 64px;
    flex-shrink: 0;
    margin: 30px 0 15px 0;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 15px;
}

.container-checkout-info-blue p {
    color: #000;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}

.container-checkout-info-red {
    border-radius: 3px;
    border: 1px solid #FE706F;
    background: #FFD8D9;
    height: 64px;
    flex-shrink: 0;
    margin: 15px 0 30px 0;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 15px;
}

.container-checkout-info-red p {
    color: #E81313;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}


/*Notas Formulario*/

.container-checkout-notes-logn {
    background: #fff;
    border: 1px solid #fff;
    border-radius: 3px;
    padding: 48px 25px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 5px;
    border-top: 1px solid #AAB4BC;
    margin-top: 48px;
}

.container-checkout-notes-login-a {
    display: flex;
}

.container-checkout-notes-login h3 {
    color: #000;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 14px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
}

.container-checkout-notes-login-a p {
    color: #000;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 14px;
    font-style: normal;
    font-weight: 300;
    line-height: normal;
}


.container-checkout-notes-login-a i {
    color: #24A147;
    margin-right: 10px;
}

.btn-login-principal {
    border-radius: 30px;
    border: 1px solid var(--black-color);
    background: #fff;
    width: 233px;
    height: 40px;
    flex-shrink: 0;
    color: #000;
    text-align: center;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}

.containerModalReserve {
    gap: 0;
}

.containerModalReserveButton {
    display: flex;
    justify-content: center;
}

.container-check-select {
    padding: 0 15px;
}

.container-check-field-cont {
    padding: 0;
}


/***************** FACTURACION EBE **********************/
.omit-passenger-data {
    display: flex;
    border-radius: 5px;
    background: #ebedef;
    justify-content: center;
    align-items: flex-start;
    width: 100%;
    padding: 10px 20px;
    font-size: 14px; 
}

.btn_omit_passenger {
    min-width: 100px;
    width: 60%;
    padding-inline: 15px;
    height: 35px;
    background-color: transparent !important;
        border: 1px solid var(--black-color) !important;
        color: var(--black-color) !important;
}

.btn_omit_passenger:hover {
    background-color: var(--main-color) !important;
        border: 1px solid var(--black-color) !important;
        color: #ffffff !important;
}

.button_omit__passenger{
    display: flex; 
    justify-content: end;
    align-items: center;
}

.line__payment-facturacion{
        width: 62rem;
    position: relative;
    left: -4rem;
    margin-bottom: 25px;
    color: #9a9b9c;
}

.container-0{
        margin: 0px;
        padding: 0px;
    }


    
/*Contenedores de Pagos*/
.container-checkout-payment {
    height: auto;
    margin-block: 30px;
}

.container-checkout-payment-a {
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: flex-start;
}

.container-checkout-payment-a h3 {
    color: var(--main-color);
    /*font-family: 'Inter', sans-serif;*/
    font-size: 14px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
    text-transform: uppercase;
}

.container-checkout-payment-a p {
    color: #000;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}

.container-checkout-payment-b {}

.container-checkout-payment-options {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    gap: 20px;
}

.container-checkout-payment-options h4 {
    color: #000;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 14px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
}

.container-checkout-payment-options h5 {
    color: #E81313;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}

.checkout-payment-option {
    width: 100%;
    height: 48px;
    flex-shrink: 0;
    border-radius: 5px;
    border: 1px solid #AAB4BC;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.checkout-payment-option-select {
    width: 100%;
    height: 48px;
    flex-shrink: 0;
    border-radius: 5px;
    border: 1px solid #24A147;
    background: #D3ECDA;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 0 15px;
}

.checkout-payment-option-check {}

.checkout-payment-option-check input {}

.checkout-payment-option-tittle {}

.checkout-payment-option-tittle h5 {
    color: #000;
    text-align: start;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 14px;
    font-style: normal;
    font-weight: 600;
    line-height: 150%;
    /* 21px */
    letter-spacing: -0.154px;
}

.checkout-payment-option-price {}

.checkout-payment-option-price h5 {
    color: #000;
    text-align: left;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 14px;
    font-style: normal;
    font-weight: 600;
    line-height: 150%;
    /* 21px */
    letter-spacing: -0.154px;
}


.checkout-payment-form {
    width: 100%;
}

.checkout-payment-disclaimer {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 16px;
    margin: 10px 0 30px 0;
}

.checkout-payment-disclaimer-a {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    padding: 0;
}

.checkout-payment-disclaimer-b {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
}

.checkout-payment-disclaimer {}

.checkout-payment-disclaimer p {
    color: #000;
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;

}

.checkout-payment-disclaimer a {
    color: #000;
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    text-decoration-line: underline;
}

.container-checkout-oxxo {}

.checkout-payment-oxxo {
    display: flex;
    gap: 16px;
    flex-direction: column;
    align-items: flex-start;
    padding-block: 25px;
    border-top: 1px solid #DDE1E4;
}

.container-checkout-oxxo-a {}

.container-checkout-oxxo-a-p1 {
    margin-bottom: 8px;
}

.container-checkout-oxxo-a-p1 p {
    color: #000;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}

.container-checkout-oxxo-a-p2 {
    margin-bottom: 8px;
}

.container-checkout-oxxo-a-p2 p {
    color: var(--black-color);
    /*font-family: 'Inter', sans-serif;*/
    font-size: 14px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
}

.container-checkout-oxxo-b {
    padding: 0;
}

.container-checkout-oxxo-description {
    padding: 16px;
    border: 1px solid #DDE1E4;
    border-radius: 5px;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.container-checkout-oxxo-description p {
    color: #E81313;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 10px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}

.container-checkout-oxxo-description img {
    width: 86px;
    height: auto;
    flex-shrink: 0;
}

.container-checkout-oxxo-description-a {}

.container-checkout-oxxo-description-a p {
    color: #000;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}

.container-checkout-oxxo-description-b {
    padding: 0;
}

.container-checkout-oxxo-description-b p {
    color: #000;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 14px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
}

.container-checkout-notes {
    height: 120px;
    background: #EBEDEF;
    border: 1px solid #DDE1E4;
    border-radius: 3px;
    padding: 16px 50px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 5px;
}

.container-checkout-notes-a {
    display: flex;
}

.container-checkout-notes-a p {
    color: #000;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 14px;
    font-style: normal;
    font-weight: 300;
    line-height: normal;
}


.container-checkout-notes-a i {
    color: var(--black-color);
    margin-right: 10px;
}

.container-checkout-final {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 20px;
    margin: 20px 0 60px 0;
}

.container-checkout-final h2 {
    color: #24A147;
    text-align: center;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 18px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
}

.container-checkout-final img {
    width: 300px;
    height: auto;
    flex-shrink: 0;
}

.container-checkout-final h3 {
    color: var(--main-color);
    /*font-family: 'Inter', sans-serif;*/
    font-size: 20px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
}

.container-checkout-final p {
    color: #000;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 18px;
}

/*Fin Contenedores de Pagos*/


/*Modal*/

.euro-modal__container {
    border-radius: 0px;
}

.euro-modal__header {
    border-bottom: none;
    margin: 20px 40px 0 40px;
}

.euro-modal__title {
    color: var(--black-color);
    /*font-family: 'Inter';*/
    font-size: 14px;
    font-weight: 500;
    font-style: normal;
    line-height: normal;
}

.euro-modal__close-btn {
    cursor: pointer;
}

.euro-modal__content {
    border: 1px solid #CBD1D7;
    margin: 20px 40px 20px 40px;
    border-radius: 8px;
    padding: 0;
    background: #E5E8EB;
    overflow: hidden;
}

.euro-modal__package-title {
    text-align: center;
    color: var(--black-color);
    /*font-family: 'Inter';*/
    font-size: 16px;
    font-weight: 700;
    line-height: normal;
    margin-bottom: 5px;
    margin-top: 10px;
}

.euro-modal__date {
    text-align: center;
    color: var(--black-color);
    /*font-family: 'Inter';*/
    font-size: 14px;
    font-weight: 500;
    margin-bottom: 5px;
}

.euro-modal__passengers {
    text-align: center;
    color: var(--black-color);
    /*font-family: 'Inter';*/
    font-size: 12px;
    font-weight: 500;
}

.euro-modal__details {
    margin-top: 15px;
    padding: 15px 40px;
    background: #ffffff;
}

.euro-modal__details p {
    /*font-family: 'Inter';*/
    font-size: 14px;
    font-weight: 400;
}

.euro-modal__price {
    font-size: 1.2rem;
    font-weight: bold;
    margin-block: 5px 15px;
    margin-inline: 15px;
    padding-bottom: 10px;
}

.euro-modal__sub-amount {
    font-size: 1.2rem;
    font-weight: 500;
    margin-block: 5px 5px;
}

.euro-modal__offer-amount {
    font-size: 1.2rem;
    font-weight: 500;
    margin-block: 5px 5px;
}

.euro-modal__total {
    background: var(--black-color);
    color: var(--main-color);
    padding: 20px 40px 1px 40px;
}

.euro-modal__total p {
    /*font-family: 'Inter';*/
    font-size: 12px;
    font-weight: 400;
    margin-bottom: 10px;
}

.euro-modal__total-amount {
    /*font-family: 'Inter';*/
    font-size: 24px;
    font-weight: 500;
}

.euro-modal__actions {
    display: flex;
    justify-content: space-evenly;
    border-top: none;
}

.euro-modal__cancel-btn {
    border: 1px solid #ccc;
    border-radius: 25px;
}

.euro-modal__confirm-btn {
    background-color: var(--black-color) !important;
    border-color: var(--black-color) !important;
    border-radius: 25px;
    color: #ffffff;
}

.euro-no-disponibilidad {
    padding: 30px 20px;
    border: 1px solid #DDE1E4;
    border-radius: 20px;
    width: 50%;
}

.euro-no-disponibilidad__titulo {
    font-size: 20px;
    font-weight: 500;
    color: #808A93;
    text-align: center;
    line-height: 1;
}

.euro-no-disponibilidad__subtitulo {
    font-size: 14px;
    color: #000000;
    text-align: center;
}

.euro-no-disponibilidad__imagenes {
    display: flex;
    justify-content: center;
    margin-top: 40px;
    max-width: 100%;
    flex-wrap: wrap;
}

.euro-no-disponibilidad__imagen {
    width: auto;
    height: 12rem;
}


.slider-pararp-v2 {
    color: #fff;
    font-size: 40px;
    font-weight: 600;
    text-shadow: 1px 1px 2px black;
    margin-left: 2px;
    margin-bottom: 15px;
    line-height: 1;
    margin-top: 10px;
}

.slider-pararp-v2-full {
    color: #fff;
    font-size: 50px;
    font-weight: 600;
    text-shadow: 1px 1px 2px black;
    margin-left: 0;
    line-height: 1;
    margin-bottom: 0px;
}

.slider-title-search-full{
    color: #fff;
    font-size: 25px;
    font-weight: 600;
    text-shadow: 1px 1px 2px black;
    margin-left: 0;
    line-height: 1;
    margin-bottom: 0px;
}

.slider-title-icon-container{
    padding-left: 20px;
}

.euro-search__product-icon{
    font-size: 25px;
    margin-right: 10px;
    color: #fff;
}

/*************************************************************/


/*Nueva Contact Page*/

.section-contact-area {
    padding-block: 75px;
    padding-inline: 0px;
}

.container-contact-area {}

.row-contact-area {}

.left-sidebar-contact-area {}

.left-sidebar-contact-area h2 {
    color: var(--main-color);
    /*font-family: 'Inter', sans-serif;*/
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
    margin-left: 0px;
    margin-bottom: 24px;
}

.right-sidebar-contact-area {
    padding-top: 0;
}

.right-sidebar-contact-area h2 {
    color: var(--main-color);
    /*font-family: 'Inter', sans-serif;*/
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
    margin-left: 0px;
    margin-bottom: 24px;
}

.container-left-contact-area {}

.container-right-contact-area {
    padding: 0;
}

.row-right-contact-area {}

.map-right-contact-area {}

.info-right-contact-area {
    padding: 40px 30px;
    border-radius: 10px;
    background: #FFF;
    box-shadow: 0px 2px 22px 0px rgba(0, 0, 0, 0.10);
}

.div-info-right-contact-area {
    margin-bottom: 12px;
}

.subdiv-info-right-contact-area-a2-social {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 15px;
    margin-top: 40px;
}

.subdiv-info-right-contact-area-a {
    display: flex;
    justify-content: center;
    align-items: center;
}

.subdiv-info-right-contact-area-a2 {
    display: flex;
    justify-content: center;
    align-items: start;
}

.subdiv-info-right-contact-area-b {
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    justify-content: center;
    gap: 2px;
}

.subdiv-info-right-contact-area-b h3 {
    color: #000;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
    margin-block: 12px;
}

.subdiv-info-right-contact-area-b h4 {
    color: #000;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    margin-bottom: 3px;
}

.subdiv-info-right-contact-area-b h5 {
    color: #000;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    margin-bottom: 10px;
}

.subdiv-info-right-contact-area-b a {
    color: #000;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}

.subdiv-info-right-contact-area-b a:hover {
    color: var(--black-color);
}

.icon-info-right-contact-area {
    display: flex;
    justify-content: center;
    padding: 10px;
    background-color: var(--main-color);
    border: 1px solid var(--main-color);
    border-radius: 25px;
    color: #fff;
}

.icon-info-right-contact-area:hover {
    border: 1px solid var(--main-color);
    background-color: #fff;
    color: var(--main-color);
}

.icon-info-right-contact-area:active {
    border: 1px solid var(--main-color);
    background-color: #fff;
    color: var(--main-color);
}

.subdiv-info-right-contact-area-b p {
    color: #000;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}


.container-form-contact-area {
    margin-top: 40px;
}

.card-form-contact-area {
    padding: 80px;
    border-radius: 10px;
    background: #FFF;
    box-shadow: 0px 2px 22px 0px rgba(0, 0, 0, 0.10);
}

.contact-suc-class {
    display: flex;
    flex-direction: column;
    cursor: pointer;
}

.contact-suc-class h4 {
    color: #000;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 14px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
    margin-block: 18px;
}

.contact-suc-class h3 {
    color: #000;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 14px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
    margin-bottom: 12px;
}

.contact-suc-class a {
    color: #000;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    margin-bottom: 8px;
    margin-left: 5px;
}

.contact-suc-class a:hover {
    color: var(--main-color) !important;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
}

.contact-suc-class a:active {
    color: var(--main-color) !important;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
}



.contact-form-group {}

.contact-form-label {
    display: block !important;
    font-weight: 600;
    color: var(--black-color);
    font-size: 16px;
}

.label-form-contact {}

.label-form-contact label {
    /*display: block;*/
    margin-bottom: 10px;
    font-size: 16px;
}

.label-form-contact input[type="checkbox"] {
    margin-right: 5px;
}

.label-form-contact a {
    font-weight: bold;
    text-decoration: underline;
}

.containerSucursales{
    padding: 0 10rem  !important;
}

/* ESTILOS PARA CKEDIOTR*/

/* CKEDITOR */
.news_details_content_area {
    /* Asegura que el contenido no se desborde */
    overflow-x: auto;
}

/* Estilos base de CKEditor para tablas */
/* CKEDITOR */
.news_details_content_area {
    /* Asegura que el contenido no se desborde */
    overflow-x: auto;
}

/* Estilos base de CKEditor para tablas */
.ck-table-resized {
    border-collapse: collapse;
    width: 100%;
    margin: 1em 0;
    background: #fff;
}
.ck-table-resized th,
.ck-table-resized td {
    border: 1px solid #ddd;
    padding: 8px 12px;
    text-align: left;
}
.ck-table-resized tr:nth-child(even) {
    background-color: #f9f9f9;
}

/* Estilos para figuras e imágenes */
figure.image, figure.image_resized {
    display: block;
    margin: 1.5em auto;
    text-align: center;
}

figure.image img, figure.image_resized img {
    max-width: 100%;
    height: auto;
    display: inline-block;
}

/*mejora la visualización de figuras de tabla */
figure.table {
    display: table;
    margin: 1.5em auto;
    max-width: 100%;
}

/* Estilos base para el contenido de CKEditor */
    .cke-content {
        font-family: inherit;
        font-size: 1.1rem;
        color: #222;
        line-height: 1.7;
    }
    .cke-content p {
        margin-bottom: 1.2em;
    }
    .cke-content strong {
        font-weight: bold;
    }
    .cke-content em {
        font-style: italic;
    }
    .cke-content ul, .cke-content ol {
        margin-left: 2em;
        margin-bottom: 1.2em;
    }
    .cke-content h1, .cke-content h2, .cke-content h3, .cke-content h4, .cke-content h5 {
        font-weight: 600;
        margin-top: 1.5em;
        margin-bottom: 0.7em;
        color: #0a3a4a;
    }
    .cke-content img {
        max-width: 100%;
        height: auto;
        margin: 1em 0;
        border-radius: 8px;
    }
    .cke-content a {
        color: #007bff;
        text-decoration: underline;
        word-break: break-all;
    }

/* END CKEDITOR */


.home-section--banner{
    margin-bottom: 30px;
}

#carouselHomePrincipal > div > div > picture > img{
    object-fit: fill !important;
    min-height: 500px;
    max-height: 500px;
}

#carouselHomePrincipal > div > div > a > picture > img{
    object-fit: fill !important;
    min-height: 500px;
    max-height: 500px;
}

.section-margin-home-e {
    margin: 1rem 0;
}



/* HOME */
.ebe-section__text-content {
    padding: 2rem;
}

.ebe-section__description {
    text-align: justify;
    font-size: 18px;
    margin-bottom: 2rem;
}

.ebe-section__description-bold {
    color: var(--main-color);
    font-weight: bold;
    text-align: center;
    margin: 0 auto;
    padding: 0 7rem;
    font-size: 18px;
}

.ebe__suscribete-banner {
    background: var(--black-color);
    display: flex;
    flex-direction: column;
}

.ebe__suscribete-banner-parrafo {
    text-align: center;
    font-size: 3rem;
    color: #ffffff;
    padding: 0 18rem;
    font-weight: 400;
}

.ebe__suscribete-banner-button {
    margin: 15px auto 0;
    padding: 10px 20px;
    border: none;
    border-radius: 15px;
    color: var(--black-color);
}

.ebe__mapa {
    align-items: center;
    justify-content: center;
    display: flex;
}

.ebe__mapa-description {
    display: flex;
    flex-direction: column;
    align-items: start;
    justify-content: center;
    padding: 0px 15rem 0 5rem;
}

.ebe__mapa-text {
    text-align: justify;
    font-size: 18px;
    align-items: center;
    margin: 0 auto;
}


/***************** TRIPADVISOR **********************/

.tripadvisor-comments-banner {
    background: #fff;
    padding: 32px 0;
}

.tripadvisor-comments-title {
    text-align: center;
    font-size: 2.2rem;
    font-weight: 600;
    margin-bottom: 32px;
    color: var(--black-color);
}

/************ END TRIPADVISOR ***********************/


.clear-btn {
    padding: 0;
    width: 20px !important;
    height: 20px !important;
    font-size: 15px !important; 
}

.ebe-about-hero {
    padding: 60px 0 40px 0;
    height: 200px;
    display: flex;
}

.ebe-about-hero-container {
    display: flex
;
    flex-direction: column;
    justify-content: center;
}

.ebe-about-hero-title {
    color: #fff;
    font-weight: 700;
    margin: 0 5rem;
    font-family: Inter;
    font-style: Bold;
    font-size: 35px;
}

.ebe-about-hero-subtitle {
    color: #fff;
    margin-left: 5rem;
    font-family: Inter;
    font-weight: 500;
    font-size: 20px;
}

/* Inputs de fechas */
input[type="text"][id*="startDate"],
input[type="text"][id*="endDate"],
input[type="text"][placeholder="Entrada"],
input[type="text"][placeholder="Salida"] {
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 10px 40px !important;
    border: 1px solid #d1d5db !important;
    border-radius: 1rem !important;
    background-color: #F6F7F8 !important;
    font-size: 14px !important;
    height: 45px !important;
}

/* Selects de habitaciones/adultos/niños */
.mi-be-occupation-field,
.mi-dropdown-button,
.mi-be-multiroom-field {
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 10px 40px !important;
    border: 1px solid #d1d5db !important;
    border-radius: 1rem !important;
    background-color: #F6F7F8 !important;
    font-size: 14px !important;
    height: 45px !important;
}

/* Código promocional */
input[type="text"][placeholder="Código Promocional"],
.mi-be-promo-field input[type="text"] {
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 10px 40px !important;
    border: 1px solid #d1d5db !important;
    border-radius: 1rem !important;
    background-color: #F6F7F8 !important;
    font-size: 14px !important;
    height: 45px !important;
}

/* Oculta la X del input type="search" en Chrome */
input[type="search"]::-webkit-search-cancel-button {
    -webkit-appearance: none;
    appearance: none;
    display: none;
}




/******************************************************************* BLOG *****************************************************************************/

/*Noticia Principal*/
.ebe-featured-article{
    margin: 5rem;
    background: #F8F8F8;
    border-radius: 20px;
    display: flex;
}

.ebe-featured-article__img {
    width: 760px;
    border-radius: 20px;
    margin: 0;
    padding: 0;
    height: 393px !important;
}

.ebe-featured-article__content {
    margin: 50px 25px;
    gap: 30px;
    display: flex;
    flex-direction: column;
}

.ebe-featured-article__title-link{
    font-size: 35px;
    font-family: Inter;
    font-weight: 700;
    line-height: 100%;
    vertical-align: middle;
    text-transform: uppercase;

}

.ebe-featured-article__title-link:hover {
    color: var(--main-color);
    text-decoration: none;
}

.ebe-featured-article__author-name{
    font-family: Inter;
    font-weight: 500;
    font-size: 16px;
    line-height: 100%;
    vertical-align: middle;
    text-transform: uppercase;

}

.ebe-featured-article__description{
    font-family: Inter;
    font-weight: 300;
    font-size: 16px;
    line-height: 100%;
    vertical-align: middle;

}

.ebe-featured-article__cta{
    border: 1.5px solid #2C343E;
    padding: 10px 50px;
    border-radius: 30px;
    font-family: Inter;
    font-weight: 600;
    font-size: 14px;
    line-height: 100%;
    text-align: center;
    vertical-align: middle;
}

.ebe-featured-article__cta:hover{
    background: var(--main-color);
    color: #fff;
    text-decoration: none;
}


.ebe-featured-article__cta-btn:hover{
    color: #fff;
    text-decoration: none;
}

.ebe-blog-grid{
    margin: 5rem;
}

.ebe-blog-card{
    width: 100%;
}

.ebe-blog-card__img{
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
    max-height: 300px;
    height: 230px !important;
    object-fit: cover;
    width: 500px;
}

.ebe-blog-card__content{
    gap: 20px;
    display: flex;
    flex-direction: column;
    margin: 20px 0px;
}

.ebe-blog-card__title{
    font-family: Inter;
    font-weight: 700;
    font-style: Bold;
    font-size: 20px;
    line-height: 100%;
    vertical-align: middle;
    text-transform: uppercase;
    color: #183C47;
}

.ebe-blog-card__title:hover{
    font-family: Inter;
    font-weight: 700;
    font-style: Bold;
    font-size: 20px;
    line-height: 100%;
    vertical-align: middle;
    text-transform: uppercase;
    color: #183C47;
}

.ebe-featured-article__author-name,
.ebe-blog-card__author-name{
    font-family: Inter;
    font-weight: 600;
    font-size: 14px;
    line-height: 100%;
    letter-spacing: 0%;
    vertical-align: middle;
    text-transform: uppercase;
    color: #000;
}

.ebe-blog-card__description{
    font-family: Inter;
    font-weight: 300;
    font-size: 14px;
    line-height: 100%;
    letter-spacing: 0%;
    color: #000;
    display: flex;
    justify-content: center;
    align-items: center;
}

.ebe-blog-card__description_link{
    font-family: Inter;
    font-weight: 500;
    font-size: 14px;
    line-height: 100%;
    letter-spacing: 0%;
    text-align: center;
    vertical-align: middle;
    text-decoration: underline;
    text-decoration-style: solid;
    text-decoration-offset: 0%;
    text-decoration-thickness: 0%;
}

.ebe-blog-card__description_link:hover{
    text-decoration: none;
    color: #000;    
}


/*
    Articulo de BLOG
*/
.ebe-blog-article{
    margin: 5rem;
}

/* Author Sidebar */
.ebe-blog-author-sidebar {
    padding-right: 30px;
}

.ebe-blog-author-card {
    padding: 30px 15px;
    text-align: center;
    top: 100px;
    margin-bottom: 30px;
}

.ebe-blog-author-card__avatar {
    margin-bottom: 20px;
    justify-content: center;
    display: flex;
    align-items: center;
}

.ebe-blog-author-card__image {
    width: 120px;
    height: 120px;
    border-radius: 50%;
    object-fit: cover;
    border: 4px solid #667eea;
}

.ebe-blog-author-card__info{
    text-align: left;
}

.ebe-blog-author-card__name {
    font-size: 1.3rem;
    font-weight: 700;
    color: #2c3e50;
    margin-bottom: 10px;
}

.ebe-blog-author-card__reading-time {
    font-family: Inter;
    font-weight: 300;
    font-size: 16px;
    line-height: 100%;
    vertical-align: middle;
    text-transform: uppercase;
}

.ebe-blog-author-card__reading-time i {
    margin-right: 5px;
    color: #667eea;
}

.ebe-blog-author-card__social {
    display: flex;
    justify-content: start;
    gap: 0px;
    margin-bottom: 20px;
}

.ebe-blog-author-card__social-link {
    width: 40px !important;
    height: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: start;
    color: #6c757d;
    text-decoration: none;
    transition: all 0.3s ease;
}


.ebe-blog-author-card__date {
    color: #6c757d;
    font-size: 0.9rem;
    padding-top: 20px;
    border-top: 1px solid #e9ecef;
}

.ebe-blog-author-card__date i {
    margin-right: 8px;
    color: #667eea;
}

/* Navigation */
.ebe-blog-navigation {
    background: white;
    border-radius: 10px;
    padding: 20px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
}

.ebe-blog-navigation__title {
    font-weight: 600;
    color: #2c3e50;
    margin-bottom: 15px;
    font-size: 1rem;
}

.ebe-blog-navigation__list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.ebe-blog-navigation__list li {
    margin-bottom: 8px;
}

.ebe-blog-navigation__link {
    color: #6c757d;
    text-decoration: none;
    font-size: 0.9rem;
    transition: color 0.3s ease;
}

.ebe-blog-navigation__link:hover {
    color: #667eea;
}

/* Article Content */
.ebe-blog-article__content {
    border-radius: 15px;
    padding: 40px;
}

.ebe-blog-article__featured-image img {
    border-radius: 10px;
    width: 100%;
    height: auto;
}

.ebe-blog-article__lead{
    margin-bottom: 3rem;
}

.ebe-blog-article__lead p{
    font-family: Inter;
    font-weight: 700;
    font-size: 35px;
    line-height: 100%;
    letter-spacing: 0%;
    vertical-align: middle;
    text-transform: uppercase;

}

.ebe-blog-article__body {
    font-size: 1.1rem;
    line-height: 1.8;
    color: #333;
}

.ebe-blog-article__body h1,
.ebe-blog-article__body h2,
.ebe-blog-article__body h3,
.ebe-blog-article__body h4 {
    color: #2c3e50;
    margin-top: 40px;
    margin-bottom: 20px;
    font-weight: 600;
}

.ebe-blog-article__body img {
    max-width: 100%;
    height: auto;
    border-radius: 8px;
    margin: 20px 0;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}

.ebe-blog-article__body p {
    margin-bottom: 20px;
}

.ebe-blog-article__body ul,
.ebe-blog-article__body ol {
    margin-bottom: 20px;
    padding-left: 30px;
}

.ebe-blog-article__body li {
    margin-bottom: 8px;
}

/* Share */
.ebe-blog-article__share-title {
    color: #2c3e50;
    font-weight: 600;
    margin-bottom: 15px;
}

.ebe-blog-share {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.ebe-blog-share__item {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 15px;
    border-radius: 25px;
    text-decoration: none;
    font-size: 0.9rem;
    font-weight: 500;
    transition: all 0.3s ease;
}

.ebe-blog-share__item--facebook {
    background: #1877f2;
    color: white;
}

.ebe-blog-share__item--twitter {
    background: #1da1f2;
    color: white;
}

.ebe-blog-share__item--whatsapp {
    background: #25d366;
    color: white;
}

.ebe-blog-share__item--copy {
    background: #6c757d;
    color: white;
}

.ebe-blog-share__item:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
    color: white;
}
/*******************************************************************END BLOG*****************************************************************************/



.container__Home-ofertas-temporada {
    width: 100%;
}

.section-margin-home {
    margin: 0rem;
    padding: 2rem 3rem;
}


.featured-slider__prev, .featured-slider__next {
    background-color: #fff;
    color: var(--main-color);
    border: 1px solid var(--black-color);
}

.featured-slider__prev:hover , .featured-slider__next:hover {
    background-color: var(--black-color);
    color: #fff;
}

.euro-search {
    padding-block: 1rem;
}



.swiper-wrapper {
    gap: 0px;
}

.swiper-slide {
    display: flex !important;
    align-items: stretch !important;
    height: auto !important;
}

.package-card {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    height:100%;
}

.featured-slider{
    padding: 0px;
}

.featured-slider__next {
    right: -3rem;
}

.featured-slider__prev {
    left: -3rem;
}

.boletos-recientes-container {
    margin-top: 10px;
}

.section-magazine-grid {
    padding-block: 0;
}

/* Área de artículo */
.ebe-blog-article__content {
  line-height: 1.6;
}

/* Párrafos generales */
.ebe-blog-article__content p {
  margin: 0 0 14px;
}

.carousel-item {
  float: left;
  margin-right: -100%;
  /* transition desactivada */
}

/* #carouselHomePrincipal,
.carousel-inner,
.carousel-item,
.carousel-item picture,
.carousel-item img {
    min-height: 500px !important;
    max-height: 500px !important;
    height: 500px !important;
    width: 100% !important;
    object-fit: cover !important;
    display: block;
} */

/* Banner principal (id real del DOM) */
#carouselHomePrincipal-2 .carousel-inner,
#carouselHomePrincipal-2 .carousel-item,
#carouselHomePrincipal-2 .carousel-item picture,
#carouselHomePrincipal-2 .carousel-item img {
  height: 500px; min-height: 500px; max-height: 500px;
  object-fit: cover;
}

/* Clientes con otra altura */
#carouselClientes .carousel-inner,
#carouselClientes .carousel-item,
#carouselClientes .carousel-item picture,
#carouselClientes .carousel-item img {
  height: 320px; min-height: 320px; max-height: 320px;
  object-fit: cover;
}


/******************************************************************* PRODUCT *****************************************************************************/

 .paquete-card-main-3{
        padding: 0;
    }

    .granDeal-table-container{
        padding: 0 5rem;
    }

    .granDeal-table-list {
        border: 1px solid var(--main-color) !important;
        border-collapse: separate;
        border-spacing: 0;
        border-radius: 8px;
        overflow: hidden;
        margin-top: 2rem;
        margin-bottom: 2rem;
    }

    .granDeal-table-list th,
    .granDeal-table-list td {
        border-right: 1px solid var(--main-color) !important;
        border-bottom: 1px solid var(--main-color) !important;
        border-left: none;
        border-top: none;
    }

    .granDeal-table-list th:last-child,
    .granDeal-table-list td:last-child {
        border-right: none;
    }

    .granDeal-table-list tr:last-child td {
        border-bottom: none;
    }

    .granDeal-table-list th:first-child,
    .granDeal-table-list td:first-child {
        text-align: center;
    }

    /* Esquinas redondeadas específicas */
    .granDeal-table-list tr:first-child th:first-child {
        border-top-left-radius: 8px;
    }

    .granDeal-table-list tr:first-child th:last-child {
        border-top-right-radius: 8px;
    }

    .granDeal-table-list tr:last-child td:first-child {
        border-bottom-left-radius: 8px;
    }

    .granDeal-table-list tr:last-child td:last-child {
        border-bottom-right-radius: 8px;
    }

    .granDeal-table__header-text{
        font-family: Inter;
        font-weight: 600;
        font-size: 12px;
        line-height: 100%;
        text-align: center;
        vertical-align: middle;
        text-align: center;
    }

    .granDeal-table__header-date th{
        background-color: var(--black-color) !important;
        color: #fff !important;
        font-family: Inter;
        font-weight: 900;
        font-size: 22px;
        letter-spacing: 0%;
        text-align: center;
        vertical-align: middle;
        text-align: center;
    
    }

    .granDeal-table__header-text-title{
        padding: 5px 35px;
        font-size: 14px;
    }

/******************************************************************* END PRODUCT *****************************************************************************/

.modal-login-size {
    max-width: 900px !important;
    width: 100%;
}

.input-group__input--select {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
}
.input-group__input--select::-ms-expand {
    display: none;
}



.flightChange {
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.04);
    margin-top: 1rem;
    margin-bottom: 1rem;
    padding: 0;
        border: 1px solid #CBD1D7;
}
.flightChange__header {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 1.1rem;
    font-weight: 600;
    margin-bottom: 16px;
        padding: 5px 20px;
            background: #F6F7F8;
            border-radius: 12px 12px 0 0;
}
.flightChange__header-title {
    font-weight: 700;
}
.flightChange__body {
    display: flex;
    flex-wrap: wrap;
    margin: 10px 0; 
}
.flightChange__info {
    border-right: 1px solid #eee;
    padding-right: 24px;
    padding: 0;
    margin: 0; 
}
.flightChange__segment {
    margin-bottom: 18px;
}
.flightChange__segment-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 1rem;
    font-weight: 500;
    margin-bottom: 8px;
    background: #EBEDEF;
    padding: 5px 20px;
}

/***** LOADER V3 *****/

.orbit-wrap{
      position: relative;
      width: var(--size);
      height: var(--size);
    }
    
    .ring{
      position: absolute; 
      inset: 0;
      border-radius: 50%;
      border: 3px solid var(--ring);
      box-shadow: none !important;
    }
    
    .orbit{
      position: absolute; 
      inset: 0;
      animation: spin-with-pauses var(--dur) ease-in-out infinite;
    }
    
    .icon-circle.top {
      left: 50%; 
      top: 0%;
      background: var(--icon-bg-primario);
      animation: 
        pendulum var(--pendulum-dur) ease-in-out infinite,
        color-change-top var(--dur) ease-in-out infinite;
    }
    
    .icon-circle.right {
      left: 100%; 
      top: 50%;
      background: var(--icon-bg-secundario);
      animation: 
        pendulum var(--pendulum-dur) ease-in-out infinite,
        color-change-right var(--dur) ease-in-out infinite;
    }
    
    .icon-circle.left {
      left: 0%; 
      top: 50%;
      background: var(--icon-bg-secundario);
      animation: 
        pendulum var(--pendulum-dur) ease-in-out infinite,
        color-change-left var(--dur) ease-in-out infinite;
    }

    .icon-circle.red {
      background: var(--icon-bg-primario);
      animation: 
        pendulum var(--pendulum-dur) ease-in-out infinite,
        color-change-reverse var(--dur) ease-in-out infinite; /* Animación inversa */
    }

    .icon-circle {
      position: absolute;
      width: calc(var(--size) * .15);
      height: calc(var(--size) * .15);
      border-radius: 50%;
      transform: translate(-50%, -50%);
      display: flex;
      align-items: center;
      justify-content: center;
      box-shadow: 0 2px 8px rgba(0,0,0,0.15);
    }
    
    .icon-circle i {
      color: var(--icon-color);
      font-size: calc(var(--size) * .06);
    }
    
    /* Posiciones iniciales ajustadas para coincidir con la imagen */
    .icon-circle.top { left: 50%; top: 0%; }
    .icon-circle.right { left: 100%; top: 50%; }
    .icon-circle.left { left: 0%; top: 50%; }
    
    .center { 
      position: absolute; 
      inset: 0; 
      display: grid; 
      place-items: center; 
    }
    

    .center img { 
      width: calc(var(--size) * .7); 
      height: auto;
      max-width: 220px;
    }
    
    @keyframes spin-with-pauses { 
      0%   { transform: rotate(0deg); }
      12.5% { transform: rotate(45deg); }
      25%  { transform: rotate(90deg); }
      37.5% { transform: rotate(135deg); }
      50%  { transform: rotate(180deg); }
      62.5% { transform: rotate(225deg); }
      75%  { transform: rotate(270deg); }
      87.5% { transform: rotate(315deg); }
      100% { transform: rotate(360deg); }
    }
    
    @keyframes pendulum {
      0% { transform: translate(-50%, -50%) rotate(0deg); }
      33% { transform: translate(-50%, -50%) rotate(45deg); }
      66% { transform: translate(-50%, -50%) rotate(45deg); }
      100% { transform: translate(-50%, -50%) rotate(0deg); }
    }

    /* Animación para cambiar el color durante las pausas */

        @keyframes color-change-top {
          0%      { background: var(--icon-bg-primario); }
          12.5%  { background: var(--icon-bg-secundario); }
          25%    { background: var(--icon-bg-secundario); }
          37.5%  { background: var(--icon-bg-primario); }
          50%    { background: var(--icon-bg-secundario); }
          62.5%  { background: var(--icon-bg-secundario); }
          75%    { background: var(--icon-bg-primario); }
          87.5%  { background: var(--icon-bg-secundario); }
          100%   { background: var(--icon-bg-secundario); }
        }

        @keyframes color-change-right {
          0%      { background: var(--icon-bg-secundario); }
          12.5%  { background: var(--icon-bg-primario); }
          25%    { background: var(--icon-bg-secundario); }
          37.5%  { background: var(--icon-bg-secundario); }
          50%    { background: var(--icon-bg-primario); }
          62.5%  { background: var(--icon-bg-secundario); }
          75%    { background: var(--icon-bg-secundario); }
          87.5%  { background: var(--icon-bg-primario); }
          100%   { background: var(--icon-bg-secundario); }
        }

        @keyframes color-change-left {
          0%      { background: var(--icon-bg-secundario); }
          12.5%  { background: var(--icon-bg-secundario); }
          25%    { background: var(--icon-bg-primario); }
          37.5%  { background: var(--icon-bg-secundario); }
          50%    { background: var(--icon-bg-secundario); }
          62.5%  { background: var(--icon-bg-primario); }
          75%    { background: var(--icon-bg-secundario); }
          87.5%  { background: var(--icon-bg-secundario); }
          100%   { background: var(--icon-bg-primario); }
        }

    .caption { 
      margin-top: 50px; 
      color: #23246c; 
      font-size: 16px;
      text-align: center; 
      display: flex;
    }
    
    /* Estilos para incluir iconos de Font Awesome */
    .controls { 
      margin-top: 16px; 
      display: flex; 
      gap: 8px; 
      justify-content: center; 
    }
    
    .btn { 
      padding: 6px 10px; 
      border-radius: 8px; 
      border: 1px solid #e2e8f0; 
      background: #f8fafc; 
      cursor: pointer; 
    }

    .logo-loader{
      display: flex;
      justify-content: center;
      align-items: center;
      width: 250px;
      height: 250px;
    }

/***** END LOADER V3 *****/

.flightChange__segment-type {
    display: flex;
    align-items: center;
    gap: 6px;
    font-weight: bold;
}
.flightChange__segment-type--ida {
    color: #d32f2f;
}
.flightChange__segment-type--regreso {
    color: #1976d2;
}
.flightChange__iata {
    font-weight: bold;
    color: #d32f2f;
}
.flightChange__segment-date {
    font-size: 0.95rem;
    font-weight: 400;
    color: #666;
}
.flightChange__segment-detail {
    background: #f8f9fa;
    border-radius: 8px;
    padding: 12px 16px;
    display: flex;
    flex-direction: column;
    gap: 6px;
}
.flightChange__segment-time {
    font-size: 1.1rem;
    font-weight: 500;
    display: flex;
    gap: 12px;
    align-items: center;
}
.flightChange__segment-hour {
    font-weight: bold;
    font-size: 1.2rem;
}
.flightChange__segment-duration {
    font-size: 0.95rem;
    color: #888;
    font-weight: 500;
}
.flightChange__segment-baggage {
    font-size: 0.9rem;
    color: #888;
}
.flightChange__segment-airports {
    font-size: 0.95rem;
    display: flex;
    gap: 8px;
    align-items: center;
    color: #444;
}
.flightChange__price {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    justify-content: center;
    padding-left: 24px;
}
.flightChange__price-info {
    margin-bottom: 18px;
    text-align: right;
}
.flightChange__price-personas {
    font-size: 1rem;
    font-weight: 500;
    color: #444;
}
.flightChange__price-amount {
    font-size: 1.5rem;
    font-weight: 700;
    color: #d32f2f;
    display: block;
}
.flightChange__price-tax {
    font-size: 0.95rem;
    color: #888;
}
.flightChange__price-btn {
    background: #fff;
    border: 2px solid #d32f2f;
    color: #d32f2f;
    border-radius: 8px;
    padding: 10px 24px;
    font-size: 1rem;
    font-weight: 600;
    cursor: pointer;
    transition: background 0.2s, color 0.2s;
}
.flightChange__price-btn--selected {
    background: #d32f2f;
    color: #fff;
    border: 2px solid #d32f2f;
}




/* ===== Card ===== */
.flight-card{ margin: 0 auto 1.25rem; border: 1px solid #CBD1D7; border-radius:10px;  }

.flight-card__header{
  background: #F6F7F8;
  border-bottom: 1px solid #CBD1D7;
  border-radius: 10px 10px 0 0;
  padding: .55rem .85rem;
  line-height: 1;
}

.flight-card__header i{ opacity:.85; transform: rotate(-90deg);}

.flight-card__body{
  border-top: none;
  border-radius: 0 0 10px 10px;
}

/* ===== Legs (lado izquierdo) ===== */
.flight-card__legs{ padding:0; }
.flight-card__leg + .flight-card__leg{ border-top:1px solid var(--fc-border); }

.flight-card__leg-header{
    background: #EBEDEF;
    padding: 10px 20px;          
}


.flight-card__leg-label{ text-transform:uppercase; margin-right:.25rem; font-weight: 700;}
.flight-card__leg-date{ min-width:200px; }

/* Contenedor de cada fila/partial */
.flight-card__itinerary{ padding:.6rem .95rem; }
.flight-card__more{ padding:.25rem 0 .6rem; }
.flight-card__more-link{ color:#111827; font-weight:600; text-decoration:none; }
.flight-card__more-link:hover{ text-decoration:underline; }

/* ===== Aside (lado derecho) ===== */
.flight-card__aside{
  background:var(--fc-bg);
  border-left:1px solid #CBD1D7;
  display:flex; align-items:stretch;
}
.flight-card__aside-box{
  padding:1rem; width:100%;
  display:flex; flex-direction:column; justify-content:center; align-items:center;
  gap:.5rem;
}
.flight-card__badge{
  background:#10b981; color:#fff; font-weight:600;
  padding:.25rem .5rem; border-radius:6px; margin:.5rem auto 0;
  width:max-content;
}
.flight-card__aside-people{ color:var(--fc-muted); margin-top:.25rem; }
.flight-card__aside-price{
  font-size:clamp(1.35rem,2.4vw,1.9rem);
  font-weight:800; line-height:1; color:var(--fc-title);
}
.flight-card__aside-currency{ font-size:.95rem; font-weight:800; margin-left:.25rem; }
.flight-card__aside-tax{ color:var(--fc-muted); font-size:.9rem; }

.flight-card__cta{
  border-radius:999px !important; 
  border:1px solid #ef4444 !important; 
  color:#fff !important;
  padding:.55rem 1rem !important; 
  font-weight:600 !important;
   background:var(--main-color) !important;
}
.flight-card__cta:hover{ background:var(--black-color) !important; border-color:#ef4444 !important; color:#fff !important; }

/* ===== Skins para tu partial itinerary (si lo usas) ===== */
.itinerary-card__flight{
  width:100%;
  border-radius:8px;
  padding:.75rem .5rem;
}
.itinerary-card__flight + .itinerary-card__flight{
  border-top:1px solid var(--fc-border); border-radius:0; 
}
.itinerary-card__flight-airline img{ width:32px; height:32px; object-fit:contain; }



.boleto-reciente__destino {
  display: block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 150px; /* Ajusta el ancho según tu diseño */
}

/* reutiliza tus tokens/variables */
.section-flights-caja {
  border: 1px solid var(--fc-border, #E5E7EB);
  border-radius: 10px;
  background: var(--fc-bg, #fff);
  padding: 14px 16px;
}

.rotate-90 { transform: rotate(-90deg); display: inline-block; }

/* tipografía apretada para títulos/precios */
.section-flights-select-precio,
.section-flights-select-title,
.section-flights-select-precioxpersona,
.section-flights-select-impuestos { line-height: 1.2; }


/* ===== Bloque modal de vuelo ===== */
.modal-flight {}

/* Tipografías/colores recurrentes */
.modal-flight__text-muted-12 { color:#6b7280; font-size:12px; }
.modal-flight__text-subtle   { color:#9ca3af; }
.modal-flight__text-strong   { color:#111827; }
.modal-flight__airline-title { color:#374151; font-size:12px; font-weight:600; }

/* Línea vertical con puntos */
.modal-flight__timeline{
  min-width:14px; display:flex; flex-direction:column; align-items:center;
}
.modal-flight__timeline-dot{
  width:6px; height:6px; border-radius:50%; background:#cbd5e1; display:block;
}
.modal-flight__timeline-line{
  width:2px; height:48px; background:#cbd5e1; display:block;
}

/* Badge circular para logo */
.modal-flight__logo-badge{
  width:42px; height:42px; border-radius:50%;
  background:#fff; border:1px solid #e5e7eb;
  display:flex; align-items:center; justify-content:center;
}
.modal-flight__logo-img{ width:28px; height:28px; object-fit:contain; }

/* Grupo con separación precisa */
.modal-flight__gap-6{ gap:.6rem; }

/* Layover (tiempo de espera) */
.modal-flight__layover{
  background:#f9fafb;
}
.modal-flight__layover-icon{ color:#64748b; }
.modal-flight__layover-body{
  padding-left:1rem !important; border-left:3px dotted #cbd5e1;
}
.modal-flight__layover-title{
  margin-bottom:.25rem; color:#475569; font-size:12px; font-weight:700;
}
.modal-flight__layover-sub{
  margin:0; color:#6b7280; font-size:12px; font-weight:700;
}


.disclaimer-section {
    padding: 2rem 3rem;
    background: #f6f7f8;
}
.disclaimer-container {
    margin-bottom: 15px;
}
.disclaimer-container p {
    font-weight: 400;
    font-size: 10px;
    font-style: normal;
    line-height: normal;
    color: #33475b;
    text-align: justify;
}
.disclaimer-container b {
    font-weight: 900;
    font-size: 10px;
    font-style: normal;
    line-height: normal;
}

.cardbox-circuitos {
    width: 450px;
    box-shadow: 0 6px 6px 0 rgba(0, 0, 0, .1);
    overflow: hidden;
    margin-inline: 15px;
    margin-block: 25px;
    border-radius: 10px;
}

.container-habitaciones{
    max-width: 1440px !important;
}

.mirai-search {
    padding: 0 !important;
}

[data-mirai-engine='mirai_be'] .mi-be {
    gap: 0 !important;
}

[data-mirai-engine='mirai_be'] .mi-be .mi-be-datepicker-select .DateRangePickerInput .DateRangePickerInput_calendarIcon, [data-mirai-engine='mirai_be'] .mi-be .mi-be-multiroom-field span.mi-ico-dropdown, [data-mirai-engine='mirai_be'] .mi-be .mi-be-promo-field span.mi-ico-code {
    display: none !important;
}

[data-mirai-engine='mirai_be'] .mi-be-chain-field, [data-mirai-engine='mirai_be'] .DateRangePickerInput, [data-mirai-engine='mirai_be'] .mi-be-multiroom-field, [data-mirai-engine='mirai_be'] .mi-be-promo-field {
    padding: 0 !important;
}


.button__reservar--temporada{
    padding: 1rem 2.5rem;
}

/* fuerza ocultar cuando no hay overflow */
.swiper-nav-hidden { display: none !important; }


.container-mirai{ position:relative; min-height:80px; }

.container-mirai.is-loading::before{
  content:""; position:absolute; inset:0; z-index:10;
  background:rgba(255,255,255,.65); border-radius:16px;
}

.container-mirai.is-loading::after{
  content:""; position:absolute; top:50%; left:50%;
  width:28px; height:28px; margin:-14px 0 0 -14px; z-index:11;
  border:3px solid rgba(0,0,0,.15); border-top-color:var(--main-color,#20b2aa);
  border-radius:50%; animation:miraiSpin .8s linear infinite;
}

@keyframes miraiSpin{ to{ transform:rotate(360deg);} }




.search-row-container {
    width: 100%;
}


.img-fluid-md{
    max-height: 500px;
}
























:root{
  --tm-border:#dfe4ea;
  --tm-muted:#6b7280;
  --tm-text:#1f2937;
  --tm-bg:#fff;
  --tm-head:#f6f7f9;
}

.container-travelM{
    max-width: 1440px !important;
}

/* ===== Contenedor principal ===== */
.itinerary_tm__panel{ background:var(--tm-bg); border:1px solid var(--tm-border); border-radius:12px; }
.itinerary_tm__header{ padding:1.25rem 1.25rem; }
.itinerary_tm__title{ 
color: #28333E;
font-family: Inter;
font-size: 20px;
font-style: normal;
font-weight: 600;
line-height: normal;
}
.itinerary_tm__subtitle{ 
    color: #000;
font-family: Inter;
font-size: 14px;
font-style: normal;
font-weight: 400;
line-height: normal;    
}
.itinerary_tm__meta{
    color: #28333E;
    text-align: right;
    font-family: Inter;
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: 20px; 

 }

 .field_tm__p{
    color: #28333E;
font-family: Inter;
font-size: 18px;
font-style: normal;
font-weight: 600;
line-height: normal;
 }

/* ===== Steps / timeline ===== */
.itinerary_tm__steps{ position:relative; padding:0 0 .5rem; }
.itinerary-step_tm{ padding:1rem 0 1.25rem; margin-bottom:.25rem; position:relative; }
.itinerary-step_tm__number{
  width:32px; height:32px; display:inline-grid; place-items:center;
  background:#DFE1E3;  border-radius:100%;
  flex:0 0 32px;
  color: #555;
text-align: center;
font-family: Inter;
font-size: 19px;
font-style: normal;
font-weight: 600;
line-height: normal;
}
.itinerary-step_tm__city{ 
    color: #28333E;
font-family: Inter;
font-size: 20px;
font-style: normal;
font-weight: 600;
line-height: normal;
}

/* ===== Campos / select custom ===== */
.field_tm{ margin-bottom:.25rem;  border-radius: 9px;
border: 1px solid var #AAB4BC;}
.field-tm__div-input-destino{ margin-left: 3.5rem; }
.field_tm__label{ display:block;  margin-bottom:.35rem;

color: #495057;
font-family: Inter;
font-size: 10px;
font-style: normal;
font-weight: 500;
line-height: normal;
}
.field_tm__control{
  position:relative; display:flex; align-items:center;
  border:1px solid var(--tm-border); border-radius:12px; background:#fff; padding:4.5px .75rem;
  width: 275px;
  min-width: 275px;
}

.field_tm__control:focus-within{ outline:2px solid var(--main-color); outline-offset:2px; }
.field_tm__icon{ font-size:1.1rem; color:#2a3642; opacity:.9; margin-right:.5rem; }
.field_tm__chevron{ margin-left:auto; color:#6b7280; pointer-events:none; }
.field_tm__selectBtn{ border:0 !important; background:transparent; padding: 0; display: flex; align-items: center; justify-content: center;} 
.field_tm__input{ border:0 !important; outline:0; box-shadow:none !important; }

/* Mostrar el menú cuando el <details> está abierto (o cuando la clase .is-open está presente) */
.field_tm__control[open] .field_tm__menu,
.field_tm__control.is-open .field_tm__menu {
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
  display: block; /* por si tu CSS previa usaba display */
}

/* Resetea marcador nativo y asegura que summary se vea como tu botón actual */
.field_tm__control summary::-webkit-details-marker { display: none; }
.field_tm__control summary::marker { display: none !important; }


/* Opcional: gira el chevron al abrir */
.field_tm__control[open] .field_tm__chevron,
.field_tm__control.is-open .field_tm__chevron {
  transform: rotate(180deg);
  transition: transform .18s ease;
}

/* ===== Menú del selector de noches ===== */
.js-nightSelect_tm{ position:relative; }
.field_tm__menu{
  position:absolute; left:0; right:0; top:calc(100% + 6px); z-index:20;
  background:#fff; border:1px solid var(--tm-border); border-radius:12px;
  box-shadow:0 6px 24px rgba(17,24,39,.08); padding:.75rem;
  opacity:0; transform:translateY(-6px); pointer-events:none; transition:.18s ease;
}
.js-nightSelect_tm.is-open .field_tm__menu{ opacity:1; transform:translateY(0); pointer-events:auto; }

.nights_tm{ display:flex; align-items:center; border:1px solid var(--tm-border); border-radius:12px; padding: 0px 20px; }
.nights_tm__icon{ font-size:1.1rem; margin-right:.35rem; color:#2a3642; }
.nights_tm__value{
  width:48px; text-align:center; border:0 !important; box-shadow:none; font-weight:700; font-size:1rem; background:transparent !important;
}

.nights_tm__value:focus{
   border:0 !important; 
   box-shadow: none !important;
}
.nights_tm__actions{ margin-left:auto; display:flex; align-items:center; gap:.35rem; padding-left:.5rem; position:relative; }

.itinerary_tm__steps::before{ content:none !important; }

/* posicionamiento para el conector por step */
.itinerary-step_tm{ position:relative; }

/* número por encima de la línea */
.itinerary-step_tm__number{ position:relative; z-index:1; }

/* Conector SOLO si hay un step debajo */
.itinerary-step_tm:not(:last-child)::after{
  content:"";
  position:absolute;
  left:40px;             
  top:36px;             
  bottom:-12px;           
  border-left:2px dashed #e5e7eb;
}

/* Mostrar cuando ya hay al menos 2 steps */
.itinerary_tm__steps:has(.itinerary-step_tm:nth-child(2))::before{
  content:"";
  position:absolute;
  left:40px; top:16px; bottom:16px;
  border-left:2px dashed #e5e7eb;
}
.nights_tm__btn{
  width:34px; height:34px;  border-radius:10px;
  line-height:1; font-size:20px; background:#fff;
}
.nights_tm__btn:active{ transform:translateY(1px); }
.nights_tm__apply{ text-align:right; margin-top:.6rem; }

/* ===== Acciones ===== */
.itinerary_tm__actions{ padding:1rem 1.25rem 1.25rem; border-top:1px solid var(--tm-border); text-align:right; }
.btn--brand_tm{ background:var(--black-color) !important; color:#fff !important; border-radius:999px !important; border:0 !important; height:44px; }
.btn--brand_tm:hover{ background:var(--main-color) !important; color:#fff !important; }
.btn--brand_tm:focus{ outline:2px solid rgba(208,2,27,.35); outline-offset:2px; }

/* ===== Aside resumen ===== */
.summary_tm{ background:#fff; border:1px solid var(--tm-border); border-radius:12px; padding:1rem; }
.summary_tm__title{ 
    color:#28333E; 
    margin-bottom:.75rem; 
    letter-spacing:.3px;
    font-size:1.125rem;
    padding-bottom:0.5rem;
    text-transform:uppercase;
    font-family: Inter;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
}

.summary_tm__row{ display:flex; align-items:center; gap:.75rem; padding:.5rem .25rem; border-bottom:1px solid var(--tm-border); color:#374151; }
.summary_tm__item{ display:flex; justify-content:space-between; padding:.4rem 0; color:#374151; }
.summary_tm__total{ border-top:1px solid var(--tm-border); padding-top:.75rem; font-size:1.05rem; }

.field_tm__selectBtn:focus {
    background-color: none; 
    border: none !important; 
    box-shadow: none !important; 
}

.field_tm__input:focus{
    background-color: none; 
    border-color: none; 
    box-shadow: none; 
}

.field-tm__div-input{
    margin-left: 3rem;
}

.itinerary-step_tm__remove{
  margin-left:.25rem;
  border:0; background:transparent; line-height:1;
  color:var(--black-color); cursor:pointer; padding:.25rem .35rem;
  border-radius:8px;
}
.itinerary-step_tm__remove:hover{ color:#dc2626; background:#f8fafc; }
.itinerary-step_tm__remove:focus{ outline:2px solid rgba(220,38,38,.25); }

.autocomplete_tm{
  position:absolute; left:0; right:0; top:calc(100% + 6px);
  background:#fff; border:1px solid var(--tm-border); border-radius:12px;
  box-shadow:0 8px 24px rgba(17,24,39,.10);
  max-height:260px; overflow:auto; z-index:40;
  padding:.25rem 0;
}
.autocomplete_tm[hidden]{ display:none; }
.autocomplete_tm__item{
  display:flex; align-items:center; gap:.5rem;
  padding:.5rem .75rem; cursor:pointer; user-select:none;
}
.autocomplete_tm__item i{ opacity:.7; }
.autocomplete_tm__item:hover, .autocomplete_tm__item--active{
  background:var(--main-color); color:#fff;
}
.autocomplete_tm__nores{
  padding:.5rem .75rem; color:var(--tm-muted);
}




/* ===== Panel ===== */


.summary_tm__row{
  display:flex; align-items:center; gap:.75rem; padding:.5rem 1rem 1rem;
  color:#374151; border-bottom:1px solid var(--tm-border);
}
.summary_tm__row .ms-auto{ margin-left:auto; }

/* ===== Card/Accordion por destino ===== */
.summaryItem_tm{ border-bottom:1px solid var(--tm-border); }
.summaryItem_tm__head{
  width:100%;
  display:flex;
  background:#ECECEC;
  cursor:pointer;
  border:0;
  text-align:left;
    padding: 9px 19px;
    flex-direction: column;
    gap: 4px;
    align-self: stretch;
}


/* fila superior (índice + ciudad) */
.summaryItem_tm__head-top{
  display:flex;
  align-items:center;
  gap:.6rem;
}
.summaryItem_tm__left {
  display:flex;
  align-items:center;
  gap:.6rem;
  min-width:0;
  overflow:hidden;
  color:#28333E;
font-family: Inter;
font-size: 14px;
font-style: normal;
font-weight: 600;
line-height: normal;
}

/* fila inferior (fechas / noches) */
.summaryItem_tm__head-bottom{
  display:flex;
  align-items:center;
  gap:.6rem;
  color:var(--tm-muted);
  font-size:.95rem;
}

/* chevrón en la esquina derecha de la fila superior */
.summaryItem_tm__chevron{
  margin-left:auto;
  color:#243041;
  font-size:1rem;
  transition:transform .2s ease;
}

.summaryItem_tm__index{ font-weight:800; color:#243041; }
.summaryItem_tm__title{ font-weight:800; color:#243041; }
.summaryItem_tm__dates{ font-size:.9rem; color:#6b7280; padding:0 1rem .5rem; }
.summaryItem_tm__nights{
  margin-left:auto; display:inline-flex; align-items:center; gap:.35rem;
  color:#374151; font-size:.95rem;
}
.summaryItem_tm.is-open .summaryItem_tm__chevron{ transform:rotate(180deg); }

.summaryItem_tm__body{ display:none; background:#fff; }
.summaryItem_tm.is-open .summaryItem_tm__body{ display:block; }

/* Líneas dentro del body */
.summaryLine_tm{
  display:flex; justify-content:space-between; gap:1rem; padding:.9rem 1rem;
}
.summaryLine_tm + .summaryLine_tm{ border-top:none !important; }

/* Grupo de sección */
.summaryGroup_tm{
  padding: .9rem 1rem;
}
.summaryGroup_tm + .summaryGroup_tm{
  border-top:1px solid #e9edf2;  
}

/* Título de la sección (Vuelos/Hotel/...) */
.summaryGroup_tm__title{
  font-weight:700; color:#111827; margin-bottom:.5rem;
}

/* Renglón dentro de la sección */
.summaryRow_tm{
  display:flex; justify-content:space-between; gap:1rem; padding:.35rem 0;
}
.summaryRow_tm__left{ min-width:0; }
.summaryRow_tm__name{ font-weight:700; color:#111827; line-height:1.15; }
.summaryRow_tm__meta{ color:#6b7280; line-height:1.1; margin-top:.15rem; }
.summaryRow_tm__date{ color:#6b7280; line-height:1.1; margin-top:.15rem; font-size: 12px; }
.summaryRow_tm__price{ font-weight:700; color:#111827; white-space:nowrap; }
/* Subtotal del destino */
.summary_tm__subtotal{
  display:flex; justify-content:space-between; align-items:center;
  padding:.85rem 1rem; border-top:1px solid var(--tm-border);
}
.summary_tm__subtotal a{
  color:color-mix(in srgb, var(--main-color) 85%, black 0%); font-weight:800; text-decoration:none;
}
.summary_tm__subtotal a:hover{ text-decoration:underline; }

/* Barra de total */
.summary_tm__total  {
    background: var(--main-color);
    padding: 0.75rem 1rem;
    border-radius: 0 0 10px 10px;
    box-shadow: 0 4px 10px rgba(11, 92, 255, 0.08);
    border-top: none;
    
}

.summary_tm__total span{
    font-family: Inter;
    font-size: 22px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
    color: #fff;
}

.summary_tm__total > strong{
    color: #FFF;
text-align: right;
font-family: Inter;
font-size: 22px;
font-style: normal;
font-weight: 600;
line-height: normal;
}



.summary_tm__total small{ 
   color: #FFF;
font-family: Inter;
font-size: 14px;
font-style: normal;
font-weight: 600;
line-height: normal;
    
}

/* ===== Custom styles for DATOS DE LA RESERVA (overrides/finetune) ===== */
.summary_tm{
  padding:1rem; /* keep inner spacing */
  border-radius:12px;
  box-shadow: 0 6px 18px rgba(15,23,42,0.04);
  overflow:visible;
  background: #fff;
    border: 1px solid #d7dee6;
    border-radius: 10px 10px 10px 10px;
    overflow: hidden;
    padding: 0;
}


.summary_tm__row{
  display:flex;
  align-items:center;
  gap:0.75rem;
  padding:0.5rem 0.5rem 0.75rem;
  color:#374151;
}

.summary_tm__row i{
  font-size:1.25rem; /* larger calendar icon */
  color:#0f1724;
  width:28px; height:28px; display:inline-grid; place-items:center;
}

#summaryRange_tm{
    margin-left:4px;
    color: #28333E;
    font-family: Inter;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}

.summary_tm__row .ms-auto{ /* right side: personas */
  margin-left:auto;
  display:flex;
  gap:1rem;
  align-items:center;
}

.summary_tm__row .d-inline-flex{
  color:#111827;
  font-weight:600;
}
.summary_tm__row .d-inline-flex i{ font-size:1.05rem; margin-right:4px; color:#111827; }



/* === Header como el mock === */
.summary__header{
  padding:1rem 1.25rem 1.25rem;
  
    border: 1px solid #CBD1D7;
    background: #F6F7F8;
}


.summary__row{
  display:flex;
  align-items:center;
  gap:1rem;
}

.summary__icon .bi{ font-size:1.25rem; line-height:1; }

/* Rango de fechas grande */
.summary__range{
  font-size:1.25rem;
  color:#2b3442;
}

/* Bloque personas "2 | 0" */
.summary__people{
  display:flex; align-items:center; gap:14px;
  margin-left:auto;
  color:#000;
}
.summary__person{
  position:relative;
  display:inline-flex; align-items:center; gap:.35rem;
  font-size:1.1rem;
}
.summary__person-icon{ font-size:16px; }

/* Barra vertical entre Adultos y Niños */
.summary__people .summary__person:first-child{
  padding-right:14px; margin-right:6px;
}
.summary__people .summary__person:first-child::after{
  content:"";
  position:absolute;
  right:-5px; top:50%;
  width:2px; height:22px;
  background:#2b3442; 
  transform:translateY(-50%);
}

.summaryItem_tm__title{
  font-weight:800;
  font-size:1.05rem;
  white-space:nowrap;
  text-overflow:ellipsis;
  overflow:hidden;
}
.summaryItem_tm__right{
  margin-left:auto;
  display:flex;
  align-items:center;
  gap:.75rem;
  color:#6b7280;
  flex-shrink:0;
}
.summaryItem_tm__label{
  color:#6b7280;
  font-size:.95rem;
  white-space:nowrap;
  margin-left:2rem;
}
.summaryItem_tm__nights i{
  margin-right:.45rem;
}
.summaryItem_tm__chevron{
  color:#243041;
  font-size:1rem;
  transition:transform .2s ease;
}
.summaryItem_tm.is-open .summaryItem_tm__chevron{ transform:rotate(180deg); }














/* SECION 2*/

.itinerary_tm__panel{ background:#fff; border:1px solid var(--tm-border); border-radius:12px; overflow:hidden; }


/* Barra: título + rango */
.builder_tm__bar {
  padding: 20px 34px;
  display: flex;
  align-items: center;
  gap: 1rem;
  background: transparent;
}
.builder_tm__title {
  margin: 0;
  line-height: 1;
  color: #28333E;
font-family: Inter;
font-size: 20px;
font-style: normal;
font-weight: 600;
line-height: normal;
}
.builder_tm__subtitle {
  margin: 0;
  color: #000;
font-family: Inter;
font-size: 14px;
font-style: normal;
font-weight: 400;
line-height: normal;
}

/* Fecha (meta) a la derecha */
.builder_tm__meta {
    color: #28333E;
  text-align: right;
  font-family: Inter;
font-size: 14px;
font-style: normal;
line-height: 20px;
}
.builder_tm__meta strong {
  display: inline-block;
  margin-left: .25rem;
  font-weight: 700;
}




/* --- Step card / encabezado del step --- */
.stepCard_tm {
  border-top: 0;
}
.stepCard_tm__head {
  padding: 0 34px;
  display: flex;
  align-items: flex-end;
  gap: 2rem;
  flex-wrap: wrap;
}

/* contenedor izquierdo (steps) */
.itinerary_tm__steps {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  min-width: 0;
}

/* Item del step (caja blanca pequeña) */
.itinerary-step_tm {
  background: #ffffff;
  border-radius: 10px;
  padding: 0;
  display: flex;
  flex-direction: column;
  max-width: 100%;
  gap: 5px;
  padding-right: 1.5rem ;
    padding-left: 1.5rem ;
}

/* fila con el número y nombre */
.itinerary-step_tm .d-flex.align-items-center {
  align-items: center;
  gap: 12px;
}

/* Badge circular con número */
.itinerary-step_tm__number {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: #eef0f3;
  display: grid;
  place-items: center;
  font-weight: 800;
  color: #2b3442;
  font-size: 1rem;
  flex: 0 0 40px;
}

/* Nombre de la ciudad */
.itinerary-step_tm__city {
  font-weight: 800;
  color: #243041;
  margin: 0;
}

/* Botón eliminar (pequeño) */
.itinerary-step_tm__remove {
  margin-left: auto;
  background: transparent;
  border: 0;
  color: #9aa3b2;
  padding: 6px;
  border-radius: 6px;
}
.itinerary-step_tm__remove:hover { color: #e03b3b; background: rgba(224,59,59,0.06); }

/* Acciones / panel derecho con hint y pills */
.stepCard_tm__actions {
  display: flex;
  align-items: center;
  gap: .75rem;
  min-width: 220px;
  justify-content: flex-end;
  margin-bottom: 1rem;
}

.stepCard_tm__left { text-align: left; }

/* Hint encima de los pills */
.stepCard_tm__hint {
  margin-bottom: .5rem;
  color: #28333E;
font-family: Inter;
font-size: 14px;
font-style: normal;
font-weight: 500;
line-height: normal;
}

/* Pills estilo tarjeta (Agregar actividad / Cambiar hotel) */
.btnGroup_tm {
  display: flex;
  gap: .5rem;
  flex-wrap: wrap;
  justify-content: flex-end;
  margin-top: 1rem; 
}
.btn-pill_tm {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 10px 15px;
  border-radius: 10px;
  border: 1px solid #CBD1D7;
  background: #ffffff;
  color: #243041;
  font-weight: 700;
  cursor: pointer;
}

.btn-pill_tm:hover { transform: translateY(-1px); }

/* Icono dentro del pill */
.btn-pill_tm__icon {
    width: 25px; 
    height: 25px; 
    display:grid; 
    place-items:center;
    border-radius:8px; 
    color:#243041;
    flex: 0 0 36px;
}

/* Chevron pequeño a la derecha */
.btn-pill_tm__chev { margin-left: 6px; color: rgba(36,48,65,0.6); font-size: .9rem; }





/* Strips */
/* Strip "agrega vuelo" - estilos pedidos */
.strip_tm.strip_tm--ask {
  border-radius: 9px;
  border: 1px solid #CBD1D7;
  background: #F6F7F8;
  box-shadow: 0 6px 18px rgba(16,24,40,0.04); 
      padding: 1rem 2rem;
}

.strip_tm.strip_tm--translate {
  background: #F6F7F8;
  box-shadow: 0 6px 18px rgba(16,24,40,0.04); /* opcional */
      padding: 1rem 2rem;
}

.line-separator-translate-top{
    display: inline-block;
    width: 50px;
    height: 2px;
    margin-left: 20px;
    border: none;
    border-top: 3px dashed #8B96A2;
    transform: rotate(90deg);
    transform-origin: left;
    vertical-align: middle;
    margin-left: 45px;
    top: -1rem;
    margin-top: -5rem;
    background-color: transparent;
}
    
.line-separator-translate-bottom{
    display: inline-block;
    width: 50px;
    height: 2px;
    margin-left: 20px;
    border: none;
    border-top: 3px dashed #8B96A2;
    transform: rotate(90deg);
    transform-origin: left;
    vertical-align: middle;
    margin-left: 45px;
    top: -1rem;
    margin-top: -2rem;
    background-color: transparent;
}

/* Estructura interna: alineación */
.strip_tm.strip_tm--ask > .d-flex { align-items: center; gap: .75rem; }

/* Contenedor circular del SVG (fondo) */
.strip_tm__icon {
  display: inline-grid;
  place-items: center;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: #DFE1E3;   /* fondo circular solicitado */
  flex: 0 0 40px;
  min-width: 40px;
  min-height: 40px;
}

/* Texto principal junto al icono */
 .strip-text {
  color: #28333E;
  font-family: Inter, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial;
  font-size: 16px;
  font-style: normal;
  font-weight: 600;
  line-height: normal;
}

.strip-text-translate{
     font-size: 12px;
}

.strip-button-translate{
    width: 180px;
height: 40px;
flex-shrink: 0;
border-radius: 20px;
border: 1px solid #23246C;
display: flex;
flex-direction: column;
justify-content: center;
flex-shrink: 0;
color: #23246C;
text-align: center;
font-family: Inter;
font-size: 14px;
font-style: normal;
font-weight: 600;
line-height: normal;
}

.strip-button-translate:hover{
    background-color: var(--main-color);
    color: #FFFFFF;
    text-align: center;
border-radius: 20px;
border: 1px solid #fff;
}

.strip-summary__date{
    color: #000;
    font-family: Inter;
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}

.strip-summary__date strong{
    color: #000;
    font-family: Inter;
    font-size: 12px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
}

/* Ajuste del propio SVG dentro del contenedor */
.strip_tm__icon[width] { width: 20px; height: 20px; } /* reduce el inline size si hace falta */
.strip_tm__icon svg,
.strip_tm__icon { vertical-align: middle; }

/* Si no quieres editar HTML, aplicamos la misma regla al primer SVG dentro del strip */
.strip_tm.strip_tm--ask > .d-flex > svg:first-child {
    display: inline-gridz;
    place-items: center;
    width: 25px;
    height: 25px;
    min-width: 20px;
    min-height: 20px;
    border-radius: 50%;
    background: #DFE1E3;
    border: 1px solid #CBD1D7;
    padding: 3px;
    box-sizing: border-box;
}

/* Forzar color del path del SVG (el atributo fill inline se sobreescribe con !important) */
.strip_tm__icon path {
  fill: #28333E !important;
}

.strip-apply{
    background-color: #23246C;
    width: 157px;
    height: 33px;
    flex-shrink: 0;
    color: var(--White, #FFF);
    text-align: center;
    font-family: Roboto;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    padding: 5px 15px;
    border-radius: 20px;
}

/* Etiqueta de sección */
.sectionLabel_tm{
  padding:.5rem 1rem; color:#3b4150; border-bottom:1px solid var(--tm-border);
}

/* PRODUCT CARDS (hotel / vuelo) */
.productCard_tm{ border:2px solid var(--main-color); border-radius:12px; overflow:hidden; margin:1rem; background: #F6F7F8;}
.productCard_tm__head{
  background:color-mix(in srgb, var(--main-color) 88%, black 12%);
  color:#fff; font-weight:500; padding:.6rem 2rem;
}
.productCard_tm__body{ padding:0; }
.productCard_tm__img img{ object-fit:cover; width:100%; height:100%; border-radius:.5rem; }

/* Vuelo fila */
.flight_tm .vr{ background:#e5e7eb; opacity:1; }

/* Footer acciones */
.builder_tm__footer{ 
    padding:1rem; 
    border-top:1px 
    solid var(--tm-border); 
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}

.botton-footer-destino{
    margin-left: auto !important;
    gap: 0.5rem;
}

.btn-danger{ background:var(--black-color); border-color:var(--black-color); }
.btn-danger:hover{ filter:brightness(.95); }

/* ===== Flight card — estilo tipo "Vuelo Incluido" ===== */
.flight-card--featured {
  /* contenedor: borde azul oscuro y radio */
  --flight-border: #23204f;        /* color borde */
  --flight-head-bg: #26215b;       /* fondo cabecera */
  --flight-head-color: #ffffff;    /* texto cabecera */
  --flight-meta-bg: #F1F3F6;       /* gris claro dentro del body (fila meta) */
  border: 2px solid var(--flight-border);
  border-radius: 12px;
  overflow: hidden;
  /* deja un pequeño espacio interno en móviles si hace falta */
  background: transparent;
}



/* Cabecera azul */
.flight-card--featured .productCard_tm__head {
  background: var(--flight-head-bg);
  color: var(--flight-head-color);
  padding: 14px 18px;
  align-items: center;
  gap: 12px;
}

/* icono de cabecera (avión blanco pequeño) */
.productCard_tm__head-icon {
  font-size: 1.05rem;
  color: #ffffff;
}

/* título dentro de la cabecera */
.productCard_tm__title {
  font-weight: 600;
  font-size: 1rem;
}

/* bloque de fecha alineado a la derecha */
.productCard_tm__date {
  line-height: 1;
  color: #ffffff;
}
.productCard_tm__date .f-12 { color: rgba(255,255,255,0.85); font-size: 12px; }
.productCard_tm__date .f-14 { font-size: 14px; font-weight: 700; }

.flight-card__text{
    color:  #000;
    font-family: Inter;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}

.itinerary-card__flight-hrs{
    color: #000;
    font-family: Inter;
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
}

.strip_flight__info-text{
    gap: 3rem;
    color: #000;
font-family: Inter;
font-size: 12px;
font-style: normal;
font-weight: 600;
line-height: normal;
}

.strip_tm-date{
    width: 149px;
    height: 27px;
    flex-shrink: 0;
    border-radius: 13.5px !important;
    border: 1px solid #707070;
    justify-content: center;
    align-items: center;
    display: flex;
    font-family: Inter;
    font-size: 10px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
    color: #707070;
}

.strip_tm-switch{
    width: 48px !important;
    height: 24px !important;
    flex-shrink: 0;
}

.strip_tm-switch-text{
    color: #8B96A2;
text-align: right;
font-family: Inter;
font-size: 12px;
font-style: normal;
font-weight: 500;
line-height: normal;
}

.strip_tm-switch-link{
    cursor: pointer;
    text-decoration: underline;
}

/* Body blanco */
.flight-card--featured .productCard_tm__body {
  background: #ffffff;
  padding: 14px 18px 18px 18px;
}

.strip_tm__icon--circle{
    gap: 1rem;
    display: flex
;
    justify-content: center;
    align-items: center;
    margin-left: .5rem;
}

/* meta-row gris (IDA: ...) */
.flight-card__meta {
  background: #EBEDEF;
  padding: 10px 2rem;
  width: 100%;
  margin-bottom: 12px;
}

/* Itinerary flight layout tweaks */
.itinerary-card__flight {
  padding: 0 2rem;
  align-items: center;
}

/* Contenedor de la aerolínea (logo + nombre) */
.itinerary-card__flight-airline {
  min-width: 88px;
  max-width: 100px;
  text-align: center;
}

/* blanco circular para logo */
.airline-logo-wrap {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: #ffffff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 1px 2px rgba(0,0,0,0.04);
  border: 1px solid rgba(0,0,0,0.04);
  margin: 0 auto 6px auto;
  overflow: hidden;
}
.airline-logo-wrap img {
  max-width: 28px;
  max-height: 28px;
  display: block;
}

/* columnas de info (horario, codigo, aeropuerto) */
.flight-col {
  min-width: 120px;
  max-width: 220px;
  text-align: center;
}

/* plane icon accent color */
.itinerary-card__flight-icon i.fa-plane {
  color: #e31b3d; /* rojo aviones */
  font-size: 1.15rem;
}

/* Botón rojo tipo "Explorar opciones" */
.btn-explore {
  background: #e31b3d;
  color: #fff;
  border: none;
  padding: 10px 20px;
  border-radius: 28px;
  box-shadow: none;
  font-weight: 600;
  white-space: nowrap;
}
.btn-explore:hover {
  background: #c21634;
  color: #fff;
}
/* ===== Seccion: Vuelo Ida Agregado ===== */
.section-stript-add{
    padding: 1rem 1rem;
}

.itinerary-card__flight--content-mt {
    gap: 2rem;
}

.itinerary-card__button-mt {
    border-radius: 30px !important;
    padding: 7px 20px !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    transition: background 0.2s !important;
    min-width: 150px;
}

.itinerary-card__flight-change{
    background: var(--black-color) !important;
    color: #fff !important;
}

.itinerary-card__button-reserve{
    background: #fff !important;
    color: #777C81 !important;
    border: 1px solid #777C81;
}

/* ===== Bloque: crearItinerario ===== */
.crearItinerario{ padding:6px 1.5rem 12px; }
.crearItinerario__title{
  margin:0 0 20px;
  color:#28333E; font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  font-size:18px; font-style:normal; font-weight:600; line-height:normal;
}

/* Rail horizontal con conectores y CTA a la derecha */
.crearItinerario__rail{
  display:flex; align-items:center; flex-wrap:wrap; row-gap:16px;
  overflow-x:hidden; /* elimina scroll horizontal */
}

.crearItinerario__spacer{ flex:1; }

/* Conector entre steps */
.crearItinerario__connector{
  height:3px; width:40px; 
  background:#D9D9D9; border-radius:2px;
}

/* Step (chip) */
.crearItinerario__step-active{
  display:inline-flex; align-items:center; gap:10px;
  padding:10px 14px;
  border-radius:8px; border:1px solid #CBD1D7; background:#F6F7F8;
  color:#28333E; font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  font-size:14px; font-weight:500; line-height:1;
}

.crearItinerario__step{
  display:inline-flex; align-items:center; gap:10px;
  padding:10px 14px;
  border-radius:8px; border:1px solid #CBD1D7; background:#FFFFFF;
  color:#28333E; font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  font-size:14px; font-weight:500; line-height:1;
}

.crearItinerario__step-checked{
  display:inline-flex; align-items:center; gap:10px;
  padding:10px 14px;
  border-radius:8px; border:1px solid #24A147; background:#D3ECDA;
  color:#24A147; font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  font-size:14px; font-weight:500; line-height:1;
}

.crearItinerario__step:hover{ background:#EFF1F2; }

/* Badge con número de step */
.crearItinerario__badge{
  width:24px; height:24px; display:grid; place-items:center;
  border-radius:999px; background:#FFFFFF; border:1px solid #CBD1D7;
  color:#707070; text-align:center; font-family:Inter,inherit;
  font-size:10px; font-style:normal; font-weight:500; line-height:normal;
}
.crearItinerario__badge-checked {
    width: 24px;
    height: 24px;
    display: grid;
    place-items: center;
    border-radius: 999px;
    background: #D3ECDA;
    border: 1px solid #24A147;
    color: #707070;
    text-align: center;
    font-family: Inter,inherit;
    font-size: 10px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
}
.crearItinerario__label{ white-space:nowrap; }

/* CTA “Agrega otro destino” */
.crearItinerario__cta{
  display:inline-flex; align-items:center; gap:8px;
  padding:12px 16px; border-radius:10px; border:0;
  background:#23246C; color:#FFFFFF; font-weight:600;
}
.crearItinerario__cta:hover{ filter:brightness(.95); }
.crearItinerario__ctaIcon{
  width:24px; height:24px; display:grid; place-items:center;
  border-radius:999px; border:2px solid rgba(255,255,255,.75); line-height:0;
}
.crearItinerario__ctaArrow{ margin-left:6px; }


/* --- POP NIGHTS --- */
/* POPUP container */
.addDest_tm{ position:fixed; z-index:3000;  }

.addDest_tm,
#addDestPanel {
    position: absolute !important;
    z-index: 10;
    min-width: 200px;
    max-width: 310px;
    box-sizing: border-box;
    background: #fff;
    border-radius: .5rem;
    overflow: visible;
}

.activity-popover__container{
    max-width: 300px;
}

/* Panel */
.addDest_tm__panel,
#addDestPanel .addDest_tm__panel {
  display: flex;
  flex-direction: column;
  min-height: 0;             /* crucial en flex parents para permitir overflow interno */
  max-height: calc(90vh - 40px); /* tope global del panel */
  overflow: hidden;
  box-sizing: border-box;
}

/* Contenido que scrollea si no cabe */
.addDest_tm__content,
#addDestPanel .addDest_tm__content {
  padding: 16px;
  -webkit-overflow-scrolling: touch;
  flex: 1 1 auto;
  min-height: 0; /* importante para que flex children no desborden */
  overflow: auto;
  box-sizing: border-box;

  /* límite seguro; se ajustará luego con JS si hace falta */
  max-height: calc(80vh - 140px);
}

/* Footer */
/* footer siempre visible: sticky dentro del panel */
.addDest_tm__footer,
#addDestPanel .addDest_tm__footer {
  position: sticky;
  bottom: 0;
  z-index: 6;
  background: linear-gradient(180deg, rgba(255,255,255,0.96), #fff);
  box-shadow: 0 -6px 12px rgba(39,56,77,0.06);
  padding: .75rem 1rem;
  display: flex;
  justify-content: flex-end;
  gap: .5rem;
  box-sizing: border-box;
  border-bottom-left-radius: .5rem;
  border-bottom-right-radius: .5rem;
}


/* pequeño safeguard: si el panel abre hacia arriba, inversa */
.crearItinerario__popover.open-up .addDest_tm,
#addDestPanel.open-up {
  top: auto !important;
  bottom: calc(100% + .5rem) !important;
}

/* reforzar ocultamiento del marker si existe summary */
.crearItinerario__popover > summary::-webkit-details-marker,
.addDest_tm > summary::-webkit-details-marker { display: none; }
.crearItinerario__popover > summary::marker,
.addDest_tm > summary::marker { font-size: 0; color: transparent; }

.crearItinerario__popover .addDest_tm {
  position: absolute;
  z-index: 1200;
  min-width: 320px;
  max-width: 480px;
  box-shadow: 0 8px 24px rgba(42, 59, 77, 0.12);
  border-radius: .5rem;
  background: #fff;
  /* Para permitir cálculo dinámico en JS y evitar recortes por flex parents */
  overflow: visible;
}


/* Si el panel queda muy cerca del bottom, abre hacia arriba (se controla mejor con JS).
   Añadir clase .open-up desde JS para invertir la posición. */
.crearItinerario__popover.open-up .addDest_tm { top: auto; bottom: calc(100% + .5rem); }

/* Mejora visual: cuando el panel sea corto, que el content no deje hueco enorme */
.addDest_tm__panel.small {
  max-height: none;
  min-height: auto;
}

/* Oculta marcador nativo summary (reiterando por compatibilidad) */
.crearItinerario__popover > summary::-webkit-details-marker { display: none; }
.crearItinerario__popover > summary::marker { font-size: 0; color: transparent; }

/* Panel anclado al CTA */
.addDest_tm,
.activity-popover__panel {
  position: absolute;
  width: min(385px, 92vw);
  opacity: 0; transform: translateY(6px);
  pointer-events: none;
  transition: opacity .18s ease, transform .18s ease;
  z-index: 50;
}

/* Mostrar panel al abrir details */
.crearItinerario__popover[open] .addDest_tm,
.activity-popover[open] .activity-popover__panel {
  opacity: 1; transform: translateY(0);
  pointer-events: auto;
}

/* Tarjeta visual */
.addDest_tm__panel,
.activity-dropdown__card {
  background: #fff;
  border: 1px solid #e7e8ee;
  border-radius: 14px;
  box-shadow: 0 12px 30px rgba(16,24,40,.12);
  padding: 16px;
}

/* Chevron del CTA gira al abrir */
.crearItinerario__popover[open] .crearItinerario__ctaArrow,
.activity-popover[open] .btn-pill_tm__chev { transform: rotate(90deg); transition: transform .2s; }

/* --- Menús internos EN FLUJO para que crezca el panel --- */
/* Si dentro usas dropdowns/menus propios, hazlos estáticos al "abrir" su details */
.fieldSelect__menu { display: none; }
.fieldSelect[open] .fieldSelect__menu {
  display: block;
  position: static !important;
  max-height: 260px; overflow: auto;   /* scroll interno si es largo */
  margin-top: .35rem;
}

/* Si dentro usas Bootstrap dropdowns, fuerza que empujen el flujo */
.addDest_tm .dropdown-menu,
.activity-popover__panel .dropdown-menu {
  transform: none !important;
  float: none !important;
  margin: .25rem 0 0 !important;
}

/* Inputs look */
.activity-dropdown__input {
  border-radius: 10px;
  background: #fbfbfd;
  border: 1px solid rgba(16,24,40,0.06);
  padding: 10px 12px;
  height:44px;
  display: flex;
  align-items:center;
}

.activity-dropdown__icon {
  width:42px;
  display:inline-flex;
  justify-content:center;
  color: rgba(16,24,40,0.45);
  font-size:16px;
}

/* Passengers dropdown */
.activity-dropdown__passengers { min-width:220px; border-radius:8px; box-shadow: none; }

.activity-dropdown__pass-row {
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:8px 0;
  border-bottom: 1px dashed rgba(16,24,40,0.04);
}
.activity-dropdown__pass-row:last-child { border-bottom: none; }

.activity-dropdown__pass-title { font-weight:600; }

.activity-dropdown__pass-controls {
  display:flex;
  gap:8px;
  align-items:center;
}

.activity-dropdown__counter-btn {
  width:36px;
  height:36px;
  border-radius:8px;
  border:1px solid rgba(16,24,40,0.08);
  background: #fff;
  font-size:18px;
  line-height:1;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
}

.activity-dropdown__counter-value {
  min-width:28px;
  text-align:center;
  font-weight:600;
}

/* Footer actions */
.activity-dropdown__footer {
  display:flex;
  gap:10px;
  margin-top:12px;
  justify-content:space-between;
}
.activity-dropdown__btn-cancel {
  flex:1 1 48%;
  border-radius:10px;
  border:1px solid var(--main-color, #2c1b6b);
  background: transparent;
  color: var(--main-color, #2c1b6b);
}
.activity-dropdown__btn-apply {
  flex:1 1 48%;
  border-radius:10px;
  background: var(--main-color, #2c1b6b);
  color:#fff;
  border:none;
  font-weight:600;
}

/* ===== SECCION DETALLE HOTEL TM ===== */

/* Body: padding consistente */
.productCard_tm__body-hotel {
  padding: 1rem;
}

.productCard_tm__body-img-container{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 200px !important;
    padding: 0;
    margin: 0 !important;
    height: 200px;
}

/* Imagen: mantener ratio y esquinas redondeadas internas */
.productCard_tm__img  {
      display: flex;
    justify-content: center;
    align-items: center;
    width: 180px;
    height: 180px;
    border-radius: 10px;
}

/* Imagen: mantener ratio y esquinas redondeadas internas */
.productCard_tm__img img {
 display: flex;
    max-width: 180px;
    max-height: 180px;
    justify-content: center;
    align-items: center;
}

.productCard_tm__body-info-container{
    padding: 1rem;
    margin: 0 !important;
    align-items: start;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    gap: 5px;
}

/* Divisor (hr) — ancho completo y sutil */
.productCard_tm__divider {
  border: 0;
  border-top: 1px solid rgba(16,24,40,0.06);
  margin: 0;
  width: 100%;
}

/* .productCard_tm__room {
  margin: 0;
  padding: 12px 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
} */

.productCard_tm__room {
    flex-wrap: wrap;
    padding: 20px !important;
}

.productCard_tm__room-container-info {
    align-items: flex-start;
    justify-content: space-around;
    gap: 10px;
    flex-wrap: wrap;
    padding: 0px !important;
}

/* Contenedor info (icon + textos) */
.productCard_tm__room-info {
  display: flex;
  align-items: center;
  gap: 14px;
}

/* Icono en círculo */
.productCard_tm__room-icon {
  width: 25px;
  height: 25px;
  min-width: 25px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
}

.productCard_tm__room-details{
    margin-bottom: 1rem;
}

/* Título / línea principal */
.productCard_tm__room-title {
  font-weight: 700;
  color: rgba(16,24,40,0.92);
  line-height: 1.1;
}
.productCard_tm__room-sub {
  margin-top: 4px;
  color: rgba(99,103,116,0.7);
}

/* Botón a la derecha: pill rojo */
.productCard_tm__room-btn {
  min-width: 180px !important;
  padding: 0.6rem 1.4rem !important;
  font-weight: 600 !important;
  border-radius: 999px !important;
  background: #e21b3c !important;
  border: 1px solid #e21b3c !important;
  color: #fff !important;
  box-shadow: none !important;
}

.hotel-card { border-radius: 16px; background: #fff; border: 1px solid #e5e5e5; }
.hotel-card__header { background: #F6F7F8; border-radius: 16px 16px 0 0; }
.hotel-card__icon { font-size: 1.2rem; color: #ffffff; }
.hotel-card__icon-black { font-size: 1.2rem; color: #000000; }
.hotel-card__title { font-size: 1rem; }
.hotel-card__img { width: 240px; max-width: 240px; height: 200px; max-height: 260px; object-fit: cover; border-radius: 15px;}
.hotel-card__stars .fa-star { font-size: 1rem; }
.hotel-card__details { font-size: 0.95rem; }
.hotel-card__address { font-size: 0.95rem; color: #555; }
.hotel-card__desc { font-size: 0.95rem; color: #555; }
.hotel-card__room { border-radius: 12px; border:1px solid #CBD1D7 }
.hotel-card__room-title { font-size: 1rem; }
.hotel-card__room-plan { font-size: 0.95rem; color: #555; }
.hotel-card__room-policy a { color: #d32f2f; font-size: 0.95rem; }
.hotel-card__room-pax { font-size: 0.95rem; }
.hotel-card__price-label { font-size: 0.95rem; color: #555; }
.hotel-card__price { font-size: 1.3rem; color: var(--main-color); }
.hotel-card__currency { font-size: 1rem; color: var(--black-color); }
.hotel-card__taxes { font-size: 0.95rem; }
.hotel-card__select-btn { font-size: 1rem; border-width: 2px; }
.hotel-card__select-btn { background-color: transparent; border: 1px solid var(--black-color) !important;  color: var(--main-color) !important; }
.hotel-card__select-btn:hover { background-color: var(--main-color);  color: #fff; }

.hotel-card__room-info{
    align-items: flex-start;
    justify-content: space-around;
    gap: 10px;
    flex-wrap: wrap;
    padding: 20px !important;
    border-right: 1px solid #CBD1D7;
}

.hotel-card__room-info > div {
    min-width: 200px;
    width: 200px;
    display: flex;
    align-items: flex-start;
    gap: 10px;
}

.flight-card__header-travel,
.hotel-card__header-Travel{
    background-color: var(--main-color);
    color: #FFFFFF;
}

.flight-card-travel,
.hotel-card-Travel{
    border: 1px solid var(--main-color);
}

.flight-card__cta-Travel{
    background-color: var(--black-color) !important;
    color: #FFFFFF !important;
}

.flight-card__cta-Travel_vuelos,
.hotel-card__cta-Travel_vuelos{
    background-color: transparent !important;
    color: var(--main-color) !important;
    border: 1px solid var(--main-color) !important;
}

.container-Travel{
    max-width: 1440px !important;
}

.hotel-card__info-travel{
    justify-content: space-between;
}

.hotel-card__select-btn-Travel { background-color: var(--black-color) !important;  border: 1px solid var(--black-color) !important;  color: #FFFFFF !important; }
                    
.hotel-card__info-Travel{
    justify-content: space-between;
}

.hotel-card__img-container{
    display: flex;
    align-items: center;
    justify-content: center;
}

/* filepath suggestion: wwwroot/css/site.css */
.activity-card {
    border: 2px solid #2f2f6a; /* borde morado oscuro similar al ejemplo */
    border-radius: 10px;
    background: #fff;
    overflow: hidden;
    box-shadow: 0 2px 6px rgba(0,0,0,0.05);
}

/* Header oscuro */
.activity-card__header {
    background: #2f2f6a;
    color: #fff;
    border-top-left-radius: 8px;
    border-top-right-radius: 8px;
}

/* Imagen */
.activity-card__img {
    width: 160px;
    height: 150px;
    object-fit: fill;
    display: block;
}

/* Ajustes columnas */
.activity-card__body {
    gap: 1rem;
}

.activity-card__content{
    width: 65%;
}
.activity-card__aside{
    width: 15%;
}

.activity-card__img-col {
    min-width: 160px;
}

/* Título y descripción */
.activity-card__name {
    font-size: 1rem;
    letter-spacing: 0.2px;
    text-transform: uppercase;
    margin-bottom: 0.35rem;

    color:  #28333E;
    text-overflow: ellipsis;
    font-family: Inter;
    font-style: normal;
    font-weight: 500;
    line-height: 16px;
}

.activity-card__desc {
    font-size: 0.95rem;
    line-height: 1.3;
}

/* Estrellas */
.activity-card__stars .checked {
    color: #f5c518; /* amarillo */
    margin-right: 2px;
    font-size: 0.95rem;
}

/* Precio y botón */
.activity-card__from {
    font-size: 0.8rem;
    letter-spacing: 0.04em;
}

.activity-card__price {
    font-size: 1.4rem;
    color: #2f2f6a;
}

.activity-card__currency {
    font-size: 0.9rem;
    color: #6c757d;
}

/* El details será el contenedor relativo del popover */

/* Panel base */
.activity-popover__panel {
    position: absolute;
    z-index: 20;
}

/* Cuando debe abrir “hacia la izquierda” (alineado al botón por la izquierda) */
.activity-popover--align-left .activity-popover__panel {
    left: 0;
    right: auto;
    transform-origin: top left;
}

/* Cuando debe abrir “hacia la derecha” (pegado al borde derecho del botón) */
.activity-popover--align-right .activity-popover__panel {
    right: 0;
    left: auto;
    transform-origin: top right;
}

/* Botón rojo pill */
.activity-card__btn.btn-add {
    background: var(--black-color);
    color: #fff;
    border: none;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
}

.activity-card__btn.btn-add:hover {
    background: transparent;
    color: var(--black-color);
    border: 1px solid var(--main-color);
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
}

/* Responsive: en pantallas pequeñas apilar el precio debajo y ajustar imagen */
@media (max-width: 767.98px) {
    .activity-card__body {
        flex-direction: column;
        gap: .75rem;
    }

    .activity-card__img {
        width: 100%;
        height: 160px;
    }

    .activity-card__img-col {
        min-width: 0;
    }

    .activity-card__aside {
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
    }

    .activity-card__price {
        font-size: 1.1rem;
    }
}

.col-9-Travel{
    padding-inline: 20px;
}

.row-Travel{
    margin-top: 3rem !important;
}

.filter-price__slider-Travel .noUi-handle {
    width: 18px;
    height: 18px;
    top: -15px;
    right: -5px !important;
    position: absolute;
    border-radius: 50%;
    background: var(--black-color);
    border: 2px solid var(--black-color);
    cursor: pointer;
    transition: transform 0.2s  ease;
}

.filter-price__button--clear{
    text-align: start;
    padding: 0;
    margin: 0;
    align-items: center;
}

.left-side-search-item {
    padding-bottom: 20px;
}

.left-side-search-item-v2-box {
    background: #EBEDEF;
    padding: 8px 20px;
}

.left-side-search-item-v2-title {
    color: #000;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 14px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
    margin-bottom: 8px;
}

.left-side-search-item-v2-subtitle {
    color: #646D74;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
}

.productCard_tm__body-text-address{
        color: #5D6974;
        font-family: Inter;
        font-size: 14px;
        font-style: normal;
        font-weight: 400;
        line-height: normal;
    }

    .icon-next-destination{ 
        width: 20px;
        height: 20px;
        min-width: 20px;
        min-height: 20px;
        border-radius: 50%;
        background: #DFE1E3;
        border: 1px solid #CBD1D7; 
        padding: 1px; 
    }

     /* Wrapper solo móvil */
            .flight-card-movilTM {
                max-width: 380px;
                margin: 0 auto;
            }

            /* Card */
            .flight-card-movilTM__card {
                border-radius: 16px;
                border: 1px solid #DDE1E4;
                padding: 20px 15px;
            }

            /* Logo */
            .flight-card-movilTM__logo img {
                width: 40px;
                height: 40px;
                border-radius: 50%;
                object-fit: cover;
            }

            /* Horario */
            .flight-card-movilTM__time {
                font-weight: 600;
                font-size: 12px;
            }

            /* Meta (Directo + duración) */
            .flight-card-movilTM__meta {
                font-size: 10px;
            }

            .flight-card-movilTM__directo {
                color: #0055A5;
                cursor: pointer;
                font-weight: 500;
            }

            .flight-card-movilTM__duration {
                color: #666;
            }

            /* Maletas */
            .flight-card-movilTM__baggage {
                font-size: 10px;
                color: #999;
            }

            /* Aeropuertos */
            .flight-card-movilTM__airports p {
                font-size: 10px;
                color:  #28333E;
                text-align: center;
                font-family: Inter;
                font-size: 10px;
                font-style: normal;
                font-weight: 400;
                line-height: normal;
            }

            /* Botón rojo */
            .flight-card-movilTM__btn {
                background-color: var(--black-color) !important;
                border-radius: 999px !important;
                border: none !important;
                font-weight: 600 !important;
                padding: 0px 0px !important;
                height: 30px !important;
                width: 180px !important;
                font-size: 14px !important;
                color: #fff !important;
                justify-content: center !important;
                align-items: center !important;
                display: flex !important;
                margin: 10px auto !important;
            }

            .flight-card-movilTM__btn:hover {
                background-color: #c30511;
            }

            .flight-card__transfer{
                width: 60%;
            }

            .flight-card__pass{
                width: 30%;
                text-align: end
            }

            .translate-text-activity{
                color: #28333E;
                font-size: 10px;
                font-style: normal;
                font-weight: 400;
                margin-top: 15px;
            }

            #section-transfer-activity-details > section > div:nth-child(1) > div.productCard_tm.my-3 > div.productCard_tm__body > div > div.col-12.col-md-9.d-flex.align-items-center.justify-content-between.p-0 > div > div > div:nth-child(2) > p,
            #div-first-transfer-header > div > div.productCard_tm.my-3 > div.productCard_tm__body > div > div.col-12.col-md-9.d-flex.align-items-center.justify-content-between.p-0 > div > div > p{
                color: #28333E;
                font-family: Inter;
                font-size: 12px;
                font-style: normal;
                font-weight: 400;
                line-height: 14px; /* 116.667% */
            }

            .text-juniper-translate{
                max-width: 75%;
            }

            .button-translate-change{
                align-items: end;
            }

            .activity-dropdown__btn-cancel,
            .addDest_tm__btn--ghost{
                border-radius: 8px !important;
                border: 1px solid var(--main-color) !important;
                background: #fff !important;
                color: var(--main-color) !important; 
                width: 109px;
                height: 33px;
                padding: 0px !important;
            }

            .activity-dropdown__btn-apply,
            .addDest_tm__btn--primary{
                border-radius: 8px !important;
                border: 0 !important;
                background: var(--main-color) !important;
                color: var(--white-color) !important;
                width: 157px;
                height: 33px;
                padding: 0px !important;
            }

            .activity-card__desc--collapsed {
                display: -webkit-box;
                -webkit-line-clamp: 3;   /* Número de líneas visibles */
                -webkit-box-orient: vertical;
                overflow: hidden;
            }


/* Contenedor general del texto */
.activity-card__desc {
    font-size: 0.9rem;
    line-height: 1.6;
    color: #5D6974 !important;
    margin-top: .25rem;
    font-family: Inter;
}

/* Párrafos normales */
.activity-card__desc p {
    margin-bottom: 0.35rem;
}

/* "Títulos" dentro del texto (muchos vienen en <strong> o <strong><u>) */
.activity-card__desc strong {
    font-weight: 600;
    color: #222;
}

.activity-card__desc strong u {
    text-transform: uppercase;
    letter-spacing: .03em;
    display: block;
    margin-top: .75rem;
    margin-bottom: .25rem;
    padding-left: .85rem;
}

/* Listas */
.activity-card__desc ul {
    margin: 0 0 .5rem 0;
    padding-left: 1.25rem;
    list-style: none; /* quitamos bullets por defecto */
}

/* Cada elemento de lista */
.activity-card__desc ul li {
    position: relative;
    padding-left: .85rem;
    margin-bottom: .25rem;
}

/* Bullet custom */
.activity-card__desc ul li::before {
    content: "•";
    position: absolute;
    left: 0;
    top: 0;
    font-size: 1rem;
    line-height: 1;
    color: var(--main-color); /* color acento, cámbialo a tu primario */
}

/* Sublistas un poco más metidas */
.activity-card__desc ul ul {
    margin-top: .15rem;
    margin-bottom: .15rem;
    padding-left: 1.1rem;
}

.activity-card__desc ul ul li::before {
    content: "–";
    font-size: .9rem;
}

/* Cursivas tipo notas */
.activity-card__desc em {
    color: #666;
}

/* Opcional: una “franja” sutil a la izquierda de todo el bloque */
.activity-card__desc-wrapper {
    padding-left: .75rem;
}

.activity-card__toggle {
    color: var(--black-color) !important;
    font-size: 16px !important;
    margin-top: 1rem;
}

.color_theme{
    color: #F7C51A;
}

.filter-rewiew-Travel{
    padding-inline: 20px;
}

.activity-card-text{
    margin-bottom: 1rem;
    font-size: 16px;
}

.activity-card-time{
    display: flex;
    align-items: center;
    justify-content: flex-start;
    text-align: start;
    margin-bottom: 0rem;
    gap: 1rem;
}

.activity-card-button{
    display: flex;
    flex-direction: column;
    align-items: end;
    justify-content: center;
}

.flight-card__text-cta{
    text-align: right;
}

.field_tm__selectBtn  > .nights_tm__value > button{
    border: 0px solid #d1d5db;
    background-color: transparent !important;
}

.field_tm__selectBtn  > .nights_tm__value > button:focus{
    box-shadow: none !important;
    outline: none !important;
     border: 0px solid #d1d5db;
    background-color: transparent !important;
}

.hotel-card__name{
    font-size: 18px;
}

.icon-plane__travel {
    color: #e31b3d;
    font-size: 1.15rem;
}


.no-refundable-hotel {
    color: #dd042b;
}

.refundable-hotel {
    color: #24A147;
}

:not(.input-group)>.bootstrap-select.form-control:not([class*=col-]) {
    width: 225px;
}

.itinerary-card__flight-escalas{
    text-decoration: underline;
    color: var(--black-color);
    cursor: pointer;
}

.euro-pleca-travel,
.euro-pleca-travel::after{
    background-color: var(--main-color);
}


.hotel-component__info-title{
    color: #000;
    font-family: Inter;
    font-size: 20px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    text-transform: capitalize;
}

.hotel-component__info-star{
    color: #F7C51A;
}

.ebe-pagination{

}

.ebe-link-preview,
.ebe-link-next{
    color: #33475B !important;
    background: #CBD1D7 !important;
}

.ebe-link-preview:hover,
.ebe-link-next:hover{
    color: #33475B !important;
    background: #EBEDEF !important;
}


.ebe-container-numPages {
    background: #fff;
    color: #000 !important;
    border: 1px solid #CBD1D7;
    /*pointer-events: none;*/
    width: 40px;
    height: 40px;
}

.ebe-container-numPages-active {
    background: var(--black-color);
    color: #fff !important;
}

.ebe-text-pagination{
    color: var(--black-color);
    font-family: Inter;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    margin-bottom: 15px;
}

/* Lista del autocomplete */
.ui-autocomplete.ui-menu {
  max-height: 300px;   
  overflow-y: auto;
  overflow-x: hidden;
}

/*  highlight azul de jQuery UI */
.ui-menu .ui-menu-item-wrapper.ui-state-active,
.ui-menu .ui-menu-item-wrapper.ui-state-focus,
.ui-menu .ui-menu-item-wrapper:focus,
.ui-menu .ui-menu-item-wrapper:active {
  background: var(--main-color) !important;
  border-color: transparent !important;
  outline: none !important;
  box-shadow: none !important;
}

.package-card__title-hotelList{
        max-height: calc(1.25em * 2);
        min-height: 0;
}

.package-card__location-wrapper {
    /* opcional, solo si quieres asegurar una altura mínima */
    min-height: 3.5em; /* ajusta según el tamaño de fuente */
}

.package-card__location {
    display: -webkit-box;          /* Necesario para el line-clamp */
    -webkit-box-orient: vertical;  /* Dirección vertical */
    -webkit-line-clamp: 3;         /* Nº de líneas máximas */
    overflow: hidden;              /* Esconde lo que sobra */
    text-overflow: ellipsis;       /* Muestra los “...” */
}


/*PopUp de Selecci�n */
.selectCheckoutMain {
    max-width: 900px;
    max-height: 600px;
    background: #fff;
    border-radius: 5px;
    overflow: hidden;
}

.selectCheckoutMainImg {
    width: 100%;
}

.selectCheckoutMainImg img {
    width: 100%;
    height: 150px;
    object-fit: cover;
    object-position: center;
}

.selectCheckoutMainOption {
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
    padding: 0px;
}

.selectCheckoutMainOption h3 {
    color: #000;
    text-align: center;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    margin-bottom: 30px;
}

.selectCheckoutMainOptionText {
    color: #000;
    text-align: center;
    /*font-family: 'Inter', sans-serif;*/
    font-size: 18px;
    font-style: normal;
    font-weight: 600;
    margin-bottom: 0;
    margin-left: 0;
}

.selectCheckoutMainOptionContainer {
    height: 150px;
    width: 180px;
    border-radius: 5px 5px 0px 0px;
    border: 1px solid var(--black-color);
    background: #EBEDEF;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: center;
}

.selectCheckoutMainOptionContainer i {
    font-size: 56px;
    color: var(--black-color);
}

.selectCheckoutMainOptionButton {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: row;
    font-size: 15px;
    background: var(--black-color);
    color: var(--company-text);
    width: 100%;
    border-radius: 0px;
    margin-top: 25px;
    height: 48px;
}

.selectCheckoutMainOptionButton i {
    font-size: 14px;
    color: #fff;
    margin-left: 5px;
}

.itinerary-card__hotel-button-container{
    margin-right: 0.3rem;
}


.hotel-component__thumbs .swiper-wrapper{
  justify-content: flex-start !important; 
}

.hotel-component__thumbs .swiper-slide{
  flex: 0 0 auto !important;              
  width: auto !important;                 
  margin-right: 0 !important;             
}

.display-container{
    display: none;                      /*PAra visaualizar div si requiere o no factura en Checkout de la reserva*/
}



/**Estilos del formulario de tarjetas*/
.bkng-tb-cntnt {
    float: left;
    width: 800px;
}

.bkng-tb-cntnt a.button {
    color: #fff;
    float: right;
    font-size: 18px;
    padding: 5px 20px;
    width: auto;
}

.bkng-tb-cntnt a.button.o {
    background: none repeat scroll 0 0 rgba(0, 0, 0, 0);
    color: #e51f04;
    border: 1px solid #e51f04;
}

.bkng-tb-cntnt a.button i {
    color: #fff;
}

.bkng-tb-cntnt a.button.o i {
    color: #e51f04;
}

.bkng-tb-cntnt a.button.right i {
    float: right;
    margin: 2px 0 0 10px;
}

.bkng-tb-cntnt a.button.left {
    float: left;
}

.bkng-tb-cntnt a.button.disabled.o {
    border-color: #ccc;
    color: #ccc;
}

.bkng-tb-cntnt a.button.disabled.o i {
    color: #ccc;
}

.pymnts {
    /* float: left; */
    width: 800px;
}

.sctn-row {
    margin-bottom: 35px;
    /* width: 800px; */
    width: 100%;
}

.sctn-col {
    width: 375px !important; 
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.sctn-col.l {
    width: 425px;
}

.sctn-col input {
    border: 1px solid #ccc;
    font-size: 14px;
    line-height: 20px;
    padding: 10px 12px;
    width: 100% !important;
}

.sctn-col label {
    color: var(--main-color);
    /*font-family: 'Inter', sans-serif;*/
    font-size: 12px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
    text-transform: uppercase;
    margin-bottom: 10px;
    margin-left: 5px;
    text-align: start;
}

.sctn-col.x3 {
    width: 300px;
}

.sctn-col.x3.last {
    width: 200px;
}

.sctn-col.x3 input {
    width: 210px;
}

.sctn-col.x3 a {
    float: right;
}

.pymnts-sctn {
    width: 800px;
}

.pymnt-itm {
    margin: 0 0 3px;
    width: 100vh;
    border: none !important;
    box-shadow: none !important;
    border-radius: 1rem;
}

.pymnt-itm:hover {
    transform: none;
}

.pymnt-itm h2 {
    /*background-color: #e9e9e9;*/
    font-size: 24px;
    line-height: 24px;
    margin: 0;
    padding: 28px 0 28px 20px;
    width: 780px;
}

.pymnt-itm.active h2 {
    color: var(--main-color);
    /*font-family: 'Inter', sans-serif;*/
    font-size: 14px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
    text-transform: uppercase;
}

.pymnt-itm div.pymnt-cntnt {
    display: none;
}

.pymnt-itm.active div.pymnt-cntnt {
    /*background-color: #f7f7f7;*/
    display: block;
    padding: 0 0 30px;
    width: 100%;
}

.pymnt-cntnt div.sctn-row {
    margin: 20px;
    /* width: 740px;*/
}

.pymnt-cntnt div.sctn-row div.sctn-col.half.l {
    float: left;
    /*width: 190px;*/
}

.pymnt-cntnt div.sctn-row div.sctn-col.cvv {
    background-image: url("/assets/img/openpay/cvv.png");
    background-position: 156px center;
    background-repeat: no-repeat;
    padding-bottom: 30px;
}

.openpay {
    display: flex;
    justify-content: flex-end;
    flex-direction: row;
    align-items: center;
    height: 60px;
    margin: 40px 30px 0 0;
    width: 100%;
}

.openpay div.logo {
    background-image: url("/assets/img/openpay/openpay.png");
    background-position: left bottom;
    background-repeat: no-repeat;
    border-right: 1px solid #ccc;
    font-size: 12px;
    font-weight: 400;
    height: 45px;
    /*padding: 15px 20px 0 0;*/
    padding: 0px 20px 0 0;
}

.openpay div.shield {
    background-image: url("/assets/img/openpay/security.png");
    background-position: left bottom;
    background-repeat: no-repeat;
    font-size: 12px;
    font-weight: 400;
    margin-left: 20px;
    /*padding: 20px 0 0 40px;*/
    padding: 0 0 0 40px;
    width: 200px;
}

.card-expl {
    float: left;
    height: 80px;
    margin: 10px 0 80px 10px;
    /*width: 800px;*/
}

.card-expl div {
    background-position: left 45px;
    background-repeat: no-repeat;
    height: 70px;
    padding-top: 10px;
}

.card-expl div.debit {
    background-image: url("/assets/img/openpay/cards2.png");
    margin-left: 20px;
    width: 540px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.card-expl div.credit {
    background-image: url("/assets/img/openpay/cards1.png");
    border-right: 1px solid #ccc;
    margin-left: 30px;
    width: 209px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.card-expl h4 {
    font-weight: 400;
    font-size: 18px;
    margin: 0;
}

.booking_success_text h2 {
    font-size: 24px;
    color: var(--main-color)
}

.booking_success_text h3 {
    font-weight: 400;
    font-size: 18px;
    padding-left: 15px;
    margin-bottom: 5px;
}

.booking_success_text h6 {
    font-weight: 300;
    font-size: 16px;
    padding-left: 18px;
    margin-bottom: 10px;
}



/* COMPARATIVO */


.button-compare {
    padding: 5px 15px;
    width: 128px;
    min-width: 40px;
    height: 35px;
    border-radius: 20px;
    border: 1px solid var(--main-color);
    font-size: 13px;
    color: var(--main-color);
    background: #fff;
    transition: all 0.3s ease;
    align-items: center;
    margin-bottom: 1rem;
}

.button-compare i {
    margin-right: 5px;
}

.button-compare:hover {
    background: var(--main-color);
    color: #fff;
    border-color: var(--main-color);
}

.button-compare:active {
    background: #004d40;
    color: #e0f7fa;
    transform: scale(0.95);
}

.euroCompare-section-container{
    max-width: 1440px !important;
}

/* Estilo General de la Tabla */
.euroCompare-tabla {
    margin: 20px auto;
    width: 100%;
    border-spacing: 0;
    border-radius: 15px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    height: 100%;
}

.euroCompare-tabla table {
    width: 100%;
    border-collapse: collapse;
    background-color: #fff;
}

.euroCompare-tabla thead th {
    background-color: var(--main-color);
    color: #fff;
    text-align: start;
    padding: 15px;
    border-top-left-radius: 15px;
    border-top-right-radius: 15px;
}

.euroCompare-tabla thead th i {
    margin-right: 10px;
    font-size: 1.2rem;
}

.euroCompare-tabla tbody {
    border: 1px solid #ddd;
}

.euroCompare-tabla tbody td {
    text-align: center;
    padding: 15px 10px;
    border-inline: 0.5px solid #ddd;
    font-size: 14px;
    width: 220px;
    height: 100%;
    vertical-align: top;
}

.euroCompare-tabla tbody tr {
    border-bottom: 1px solid #ddd;
}

.euroCompare-tabla tbody tr:nth-child(even) {
    background-color: #F6F7F8;
}

.euroCompare-tabla tbody tr:last-child td:first-child {
    border-bottom-left-radius: 15px;
}

.euroCompare-tabla tbody tr:last-child td:last-child {
    border-bottom-right-radius: 15px;
}

/* T�tulos y Encabezados */

.euroCompare-h1 {
    font-weight: 600;
    /*font-family: 'Inter';*/
    font-size: 14px;
    text-align: end;
    line-height: normal;
    margin-top: 10px;
}

.euroCompare-h2 {
    font-weight: 600;
    /*font-family: 'Inter';*/
    font-size: 14px;
    text-align: center;
    line-height: normal;
}

.euroCompare-p {
    font-weight: 400;
    /*font-family: 'Inter';*/
    font-size: 14px;
    text-align: center;
    line-height: normal;
}

.euroCompare-seccion__info {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    height: auto;
}

.euroCompare-seccion__info p {
    font-weight: 400;
    /*font-family: 'Inter';*/
    font-size: 12px;
    text-align: center;
    line-height: normal;
}

.euroCompare-seccion__info-b {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: start;
    justify-content: space-between;
    gap: 10px;
    height: 100%;
}

.euroCompare-seccion__info-b p {
    font-weight: 400;
    /*font-family: 'Inter';*/
    font-size: 12px;
    text-align: start;
    line-height: normal;
}

.euroCompare-container {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: flex-end;
    gap: 12rem;
}

.euroCompare-title {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    margin-bottom: 20px;
}

.euroCompare-title h3 {
    font-weight: 600;
    /*font-family: 'Inter';*/
    font-size: 20px;
    font-style: normal;
    line-height: normal;
    margin-bottom: 20px;
}

.euroCompare-tabla tbody td p {
    font-weight: 500;
    /*font-family: 'Inter';*/
    font-size: 14px;
    font-style: normal;
    line-height: normal;
    text-align: center;
}

.euroCompare-tabla tbody td h3 {
    font-weight: 500;
    /*font-family: 'Inter';*/
    font-size: 16px;
    font-style: normal;
    line-height: normal;
    text-align: center;
    color: var(--black-color);
    margin-block: 10px;
}



.euroCompare-tabla tbody td h4 {
    font-weight: 400;
    /*font-family: 'Inter';*/
    font-size: 12px;
    font-style: normal;
    line-height: normal;
    text-align: start;
    margin-top: 5px;
}

.euroCompare-tabla tbody td h3 {
    font-weight: 500;
    /*font-family: 'Inter';*/
    font-size: 13px;
    font-style: normal;
    line-height: normal;
    text-align: start;
    margin-top: 15px;
}

.euroCompare-tabla tbody td h6 {
    font-weight: 400;
    /*font-family: 'Inter';*/
    font-size: 10px;
    font-style: normal;
    line-height: normal;
    text-align: center;
    margin-top: 7px;
}

.euroCompare-tabla tbody td h5 {
    font-weight: 400;
    /*font-family: 'Inter';*/
    font-size: 12px;
    font-style: normal;
    line-height: normal;
    text-align: center;
    color: #E81313;
    margin-top: 10px;
    margin-bottom: 10px;
}


/* Botones */
.euroCompare-reserva-btn {
    background-color: var(--black-color);
    color: #fff;
    border: 1px solid var(--black-color);
    padding: 5px 10px;
    margin-top: 15px;
    border-radius: 20px;
    font-size: 0.9rem;
    cursor: pointer;
    transition: background-color 0.3s ease;
    width: 110px;
}

.euroCompare-reserva-btn:hover {
    background-color: transparent;
    color: var(--main-color);
    border: 1px solid var(--main-color);
}

.euroCompare-accordion-btn {
    background-color: transparent;
    color: var(--main-color);
    border: 1px solid var(--main-color);
    padding: 5px 10px;
    margin-top: 10px;
    cursor: pointer;
    border-radius: 20px;
    font-size: 0.9rem;
}

.euroCompare-accordion-btn:hover {
    background-color: transparent;
    color: var(--black-color);
    border: 1px solid var(--black-color);
}


.euroCompare-container-btn-red {
    min-width: 35px;
}

.euroCompare-accordion-btn-red {
    background-color: var(--black-color);
    color: #fff;
    border: 1px solid var(--black-color);
    padding: 5px 10px;
    margin-top: 15px;
    border-radius: 20px;
    font-size: 0.9rem;
    cursor: pointer;
    transition: background-color 0.3s ease;
    width: 110px;
    display: none;
    justify-content: center;
}

.euroCompare-accordion-btn-red:hover {
    background-color: transparent;
    color: var(--main-color);
    border: 1px solid var(--main-color);
}


.euroCompare-accordion-btnWhite {
    background-color: transparent;
    color: #ffffff;
    border: 1px solid #ffffff;
    padding: 5px 10px;
    margin-top: 10px;
    cursor: pointer;
    border-radius: 20px;
    font-size: 0.9rem;
}

.euroCompare-accordion-btnWhite:hover {
    background-color: #ffffff;
    color: var(--black-color);
    border: 1px solid var(--black-color);
}

.section-selected__button {
    background-color: #ffffff;
    color: #233b8e;
    font-size: 0.9rem;
    font-weight: bold;
    border: none;
    padding: 8px 16px;
    border-radius: 20px;
    transition: all 0.3s ease-in-out;
}

.section-selected__button:hover {
    background-color: #c0c7e4;
    color: #233b8e;
    transform: scale(1.05);
}

/* Contenido del Accordion */
.euroCompare-accordion-content {
    display: none;
    /* margin-top: 10px;*/
    padding: 10px;
    text-align: left;
    /* background-color: #f9f9f9;
    border: 1px solid #ddd;
    border-radius: 5px;*/
    font-size: 14px;
    color: #333;
}

/* Mostrar contenido cuando el acorde�n est� activo */
.euroCompare-accordion-content.active {
    display: block;
}

.no--line--padding {
    padding: 15px 0px !important;
}

.center--section--container {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.border-bottom-section {
    border-bottom: 0.5px solid #ddd;
    margin-bottom: 30px;
}

.euroCompare-content-round {
    text-align: left;
    padding: 0 15px;
}

.euroCompare-content-round h6 {
    text-align: left !important;
}

.euroCompare-content-round p {
    text-align: left !important;
}

/* Contenedor de Informaci�n */
.euroCompare-title-info {
    display: flex;
    flex-direction: row;
    gap: 10px;
}

.euroCompare-title-info p {
    font-weight: 500;
    /*font-family: 'Inter';*/
    font-size: 14px;
}

.euroCompare-title-info b {
    /*font-family: 'Inter';*/
    font-size: 16px;
    font-style: normal;
    line-height: normal;
}

.euroCompare-title-info i {
    font-size: 16px;
    margin-right: 5px;
}

.euroCompare-accordion-content h3 {
    font-weight: 500;
    /*font-family: 'Inter';*/
    font-size: 12px;
    font-style: normal;
    line-height: normal;
    text-align: center;
    /*color: #E81313;*/
    margin-top: 10px;
}

.euroCompare-accordion-content h4 {
    font-weight: 400;
    /*font-family: 'Inter';*/
    font-size: 12px;
    font-style: normal;
    line-height: normal;
    text-align: center;
    /*color: #E81313;*/
    margin-top: 10px;
}

/* Estilo del enlace interactivo */
.euroCompare-link-container {
    text-align: center;
    margin-top: 20px;
    display: none;
    min-width: auto;
    height: auto !important;
    max-height: 35px;
    min-height: auto !important;
}

.euroCompare-link-hotel {
    /*font-family: 'Inter', sans-serif;*/
    font-weight: 500;
    font-size: 12px;
    text-decoration: underline;
    color: var(--main-color);
    cursor: pointer;
    transition: color 0.3s ease;
    display: none;
}

.euroCompare-link-flight {
    /*font-family: 'Inter', sans-serif;*/
    font-weight: 500;
    font-size: 12px;
    text-decoration: underline;
    color: var(--main-color);
    cursor: pointer;
    transition: color 0.3s ease;
    display: none
}

.euroCompare-link-flight-return {
    /*font-family: 'Inter', sans-serif;*/
    font-weight: 500;
    font-size: 12px;
    text-decoration: underline;
    color: var(--main-color);
    cursor: pointer;
    transition: color 0.3s ease;
    display: none
}

.euroCompare-link-hotel:hover {
    color: var(--hover-color);
    text-decoration: none;
}

.euroCompare-link-flight:hover {
    color: var(--hover-color);
    text-decoration: none;
}

.euroCompare-link-flight-return:hover {
    color: var(--hover-color);
    text-decoration: none;
}

.day-hide {
    display: block;
}


.euroCompare-reserva-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
}

.euroCompare-reserva-container form {
    width: 100%;
}

.euroCompare-precio-container {
    padding: 30px 0px 15px 0px;
}

.euroCompare-title-container {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: 15px;
    height: 36px;
}

.euroCompare-title-container p {}

.euroCompare-title-container i {
    font-size: 0.7rem;
}

.icon-refresh-reserve-button {
    background: transparent;
    border: 1px solid var(--main-color);
    border-radius: 25px;
    padding: 0px;
    width: 20px;
    height: 20px;
    min-width: 20px;
    min-height: 20px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.container--delete i {
    font-size: 0.7rem;
}

.euroCompare-seccion-none {
    display: none;
}


.euroCompare-seccion-flex {
    display: flex;
    /* Ocultamos los encabezados de la tabla */
}


/* Breadcrumbs */
.section-breadcumbs {
    display: flex;
    padding: 50px 0 50px;
}

.euroCompare-breadcrumbs {
    font-size: 14px;
    margin-bottom: 15px;
}

.euroCompare-breadcrumbs__link {
    color: #212529;
    text-decoration: none;
}

.euroCompare-breadcrumbs__link:hover {
    text-decoration: underline;
    color: var(--black-color);
}

.euroCompare-breadcrumbs__current {
    color: var(--black-color);
}

/* Bot�n dentro del t�tulo */
.euroCompare-search__button {
    background-color: var(--black-color);
    color: white;
    border: none;
    padding: 5px 20px;
    cursor: pointer;
    border-radius: 20px;
    font-size: 14px;
    transition: background-color 0.3s ease;
    margin-top: 10px;
}

.euroCompare-search__button:hover {
    background-color: var(--main-color);
}

/* Formulario Desplegable */

.euroCompare-search__form {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: flex-end;
    justify-content: center;
    padding: 25px;
}

/* Por defecto, el formulario estar� oculto */
.euroCompare-search__form.hidden {
    display: none;
}

/* Estilo de filas */
.euroCompare-search__row {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

/* Estilo del contenedor de input e icono */
.euroCompare-input-container {
    display: flex;
    align-items: center;
    gap: 8px;
    border: 1px solid #CBD1D7;
    border-radius: 20px;
    padding: 8px 10px;
    background: #F6F7F8;
    width: 350px;
    height: 50px;
}

/* Iconos dentro del input */
.euroCompare-input-container i {
    color: var(--main-color);
    font-size: 16px;
}

/* Inputs */
.euroCompare-input-container input {
    border: none;
    outline: none;
    flex: 1;
    /* Que ocupe todo el espacio disponible */
    font-size: 16px;
    padding: 5px;
}

/* Bot�n buscar */
.euroCompare-search__submit {
    padding: 10px 20px;
    cursor: pointer;
    border: none;
    background-color: var(--black-color);
    color: #ffffff;
    border-radius: 20px;
    font-size: 16px;
    height: 50px;
    width: 200px;
}

.euroCompare-search__submit i {
    margin-right: 15px;
}

.euroCompare-search__row label {
    color: #28333E;
    font-weight: 500;
    /*font-family: 'Inter';*/
    font-size: 10px;
}

.euroContainer-search {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    justify-content: space-between;
    height: 100%;
}

.euroContainer-search__compare {
    background-color: #6F911E;
    color: #fff;
    border: 1px solid #6F911E;
    padding: 5px 10px;
    border-radius: 20px;
    font-size: 0.8rem;
    cursor: pointer;
    transition: background-color 0.3s ease;
    width: auto;
    display: none;
}

.euroContainer-search__compare:hover {
    background-color: #ffffff;
    color: #6F911E;
    border: 1px solid #6F911E;
}

.euroContainer-search__compare:active {
    background-color: #ffffff;
    color: #6F911E;
    border: 1px solid #6F911E;
}



.euroCompare-dropdown {
    position: relative;
    display: inline-block;
}

.euroCompare-dropdown-btn {
    background-color: transparent;
    border: none;
    padding: 8px 16px;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 8px;
    color: var(--main-color);
    font-size: 12px;
}

.euroCompare-dropdown-content {
    display: none;
    position: absolute;
    background-color: #fff;
    min-width: 160px;
    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.1);
    z-index: 1;
    border-radius: 14px;
}

.euroCompare-dropdown:hover .euroCompare-dropdown-content {
    display: block;
}

.euroCompare-dropdown-item {
    padding: 12px 16px;
    text-decoration: none;
    display: flex;
    align-items: center;
    gap: 8px;
    color: var(--main-color);
    font-size: 12px;
}

.euroCompare-dropdown-item:hover {
    background-color: #f8f9fa;
    text-decoration: none;
}


.btn--container--delete {
    align-items: center;
    gap: 8px;
    padding: 8px 16px;
    font-size: 12px;
    font-weight: 400;
    color: var(--main-color);
    background-color: transparent;
    border: none;
    border-radius: 0px;
    cursor: pointer;
}


.btn--container--delete i {
    font-size: 12px;
}


.btn--container--delete:hover {
    background-color: transparent;
    color: var(--black-color);
}


.btn--container--delete:hover i {
    color: var(--black-color);
}


.btn--container--delete:active {
    transform: scale(0.95);
}


/* END COMPARATIVO*/

.paquete-card-info-text{
    margin: 1rem 0;
}

/* Bloque principal tipo “pastilla” */
.pkg-start-chip {
    display: flex;
    align-items: center;
    gap: 5px;
    padding: .25rem .8rem;
    border-radius: 999px;
    border: 2px solid var(--main-color);
    background-color: #fff;
    font-size: 12px;
    font-weight: 500;
    color: var(--main-color);           
    justify-content: center;
    width: 160px;  
}

/* Icono fontawesome */
.pkg-start-chip__icon i {
    font-size: 0.9rem;
    color: var(--black-color);
}


/* Contenedor sin fondo */
.container-custompdf-text{
  background: transparent !important;
}

/* Form layout tipo Bootstrap */
.customizepdf-form{
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

/* Títulos */
.custompdf-form-h3{
  margin: 0;
  font-size: 1.1rem;
  font-weight: 600;
  font-family: 'Inter', sans-serif;
}

/* Inputs tipo .form-control (sin fondo) */

.form-customizepdf-input {
    height: 37px;
    border-radius: 3px;
    border: 1px solid #AAB4BC;
    margin-bottom: 10px;
    font-size: 13px;
    color: #303030;
    width: 100%;
    padding: 0 5px;
}

.form-customizepdf-input-a {
    height: 37px;
    border-radius: 3px;
    border: 1px solid #AAB4BC;
    margin-bottom: 20px;
    font-size: 14px;
    color: #AAB4BC;
    width: 100%;
}

.form-customizepdf-input:focus{
  border-color: rgba(13,110,253,.8);
  box-shadow: 0 0 0 .25rem rgba(13,110,253,.25);
}

/* Botón principal tipo .btn.btn-primary */
.form-customizepdf-button-b{
  width: 100%;
  padding: .5rem 1rem;
  border-radius: .375rem;
  border: 1px solid transparent;
  cursor: pointer;
  font-weight: 600;
}

/* Si quieres que parezca "primary" sin depender de variables */
.form-customizepdf-button-b{
  background: #0d6efd;
  color: #fff;
}
.form-customizepdf-button-b:hover{ filter: brightness(0.95); }


.form-customizepdf-input::file-selector-button {
    background-color: var(--main-color);
    color: white;
    padding: 5px 20px;
    border-radius: 2px;
    border: none;
    cursor: pointer;
    font-size: 14px;
    margin-left: -5px;
    height: 37px;
}

/* Botón secundario tipo outline */
.form-customizepdf-button-a{
  width: 100%;
  padding: .5rem 1rem;
  border-radius: .375rem;
  border: 1px solid rgba(255,255,255,.35);
  background: transparent;  /* <- sin fondo */
  color: inherit;
  font-weight: 600;
}
.form-customizepdf-button-a:hover{
  background: rgba(255,255,255,.06); /* si lo quieres 100% transparente, quita esta línea */
}

/* Sección compartir: separador y spacing */
.download-info-container-a{
  padding-top: 1rem;
  border-top: 1px solid rgba(255,255,255,.15);
}

/* Botones de compartir estilo .btn btn-outline */
.product-c-container-b{
  display: flex;
  gap: .5rem;
  flex-wrap: wrap;
}
.product-c-boton-compartir{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: .375rem .6rem;
  border-radius: .375rem;
  border: 1px solid rgba(255,255,255,.25);
  background: transparent; /* <- sin fondo */
  color: inherit;
  text-decoration: none;
}
.product-c-boton-compartir:hover{
  background: rgba(255,255,255,.06); /* opcional */
}

.file-upload {
  background-color: #ffffff;
  width: 600px;
  margin: 0 auto;
  padding: 20px;
}

.file-upload-btn {
  width: 100%;
  margin: 0;
  color: #fff;
  background: #1FB264;
  border: none;
  padding: 10px;
  border-radius: 4px;
  border-bottom: 4px solid #15824B;
  transition: all .2s ease;
  outline: none;
  text-transform: uppercase;
  font-weight: 700;
}

.file-upload-btn:hover {
  background: #1AA059;
  color: #ffffff;
  transition: all .2s ease;
  cursor: pointer;
}

.file-upload-btn:active {
  border: 0;
  transition: all .2s ease;
}

.file-upload-content {
  display: none;
  text-align: center;
}

.file-upload-input {
  position: absolute;
  margin: 0;
  padding: 0;
  width: 100%;
  height: 100%;
  outline: none;
  opacity: 0;
  cursor: pointer;
}

.image-upload-wrap {
  margin-top: 20px;
  border: 4px dashed #1FB264;
  position: relative;
}

.image-dropping,
.image-upload-wrap:hover {
  background-color: #1FB264;
  border: 4px dashed #ffffff;
}

.image-title-wrap {
  padding: 0 15px 15px 15px;
  color: #222;
}

.drag-text {
  text-align: center;
}

.drag-text h3 {
  font-weight: 100;
  text-transform: uppercase;
  color: #15824B;
  padding: 60px 0;
}

.file-upload-image {
  max-height: 200px;
  max-width: 200px;
  margin: auto;
  padding: 20px;
}

.remove-image {
  width: 200px;
  margin: 0;
  color: #fff;
  background: #cd4535;
  border: none;
  padding: 10px;
  border-radius: 4px;
  border-bottom: 4px solid #b02818;
  transition: all .2s ease;
  outline: none;
  text-transform: uppercase;
  font-weight: 700;
}

.remove-image:hover {
  background: #c13b2a;
  color: #ffffff;
  transition: all .2s ease;
  cursor: pointer;
}

.remove-image:active {
  border: 0;
  transition: all .2s ease;
}

#circuitsZoneDestinyDiv > div > div,
#packageZoneDestinyDiv > div > div  {
    width: 400px;
}

#mainPassDivPkgJun-1404521125 > div > div
{
    width: 200px;
}

#searchPackageJunForm-1404521125 > div > div > div:nth-child(2) > div > div > div > div > div {
    width: 400px;
}

.search-select-hotel i {
    margin-left: 10px;
    margin-bottom: 5px;
    margin-top: 5px;
}

.dropdown_passenger_info {
    width: 200px;
}

.passengers-type{
    gap: 5px;
}

.bootstrap-select .dropdown-menu.inner .dropdown-item{
  display: flex;
  align-items: center;
  gap: 10px;

}

.bootstrap-select .dropdown-menu.inner .dropdown-item > .text:first-child{
  padding-left: 1rem;
}

.mobilDateResumeClass{
    font-size: 16px;
}