.single-trip-main-carousel{
    position: relative !important;
}

/* Título original: se oculta visualmente una vez copiado (sigue en el DOM/SEO) */
.trip-title.trip-title-hidden{
    position: absolute !important;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
}

/* Overlay dentro de la galería */
.trip-title-overlay{
    position: absolute;
    z-index: 9999;
    inset: 0; /* ocupa toda la galería, cada breakpoint decide cómo alinear el texto adentro */
    box-sizing: border-box;
    padding: 40px 40px 70px; /* más aire respecto al borde inferior, como en la referencia */
    display: flex;
    align-items: flex-end;      /* desktop: texto hacia abajo pero sin pegarse al borde */
    justify-content: flex-start;
    pointer-events: none;
    background: linear-gradient(
        to top,
        rgba(0,0,0,0.55) 0%,
        rgba(0,0,0,0.25) 40%,
        rgba(0,0,0,0) 75%
    );
}

.trip-title-overlay-text{
    display: block;
    max-width: 90%;
    color: #fff;
    font-weight: 800;
    font-size: clamp(24px, 3vw, 44px);
    line-height: 1.2;
    text-align: left;
    text-shadow: 0 2px 16px rgba(0,0,0,0.9);
    word-wrap: break-word;
    overflow-wrap: break-word;
    hyphens: auto;
}

/* TABLET: centrado horizontal Y vertical dentro de la galería */
@media (max-width: 1024px){
    .trip-title-overlay{
        padding: 24px;
        align-items: center;
        justify-content: center;
        text-align: center;
        background: rgba(0,0,0,0.35); /* overlay uniforme en vez de solo degradado inferior */
    }
    .trip-title-overlay-text{
        max-width: 85%;
        text-align: center;
        font-size: clamp(20px, 3.6vw, 30px);
        font-weight: 700;
    }
}

/* MOBILE: mismo criterio, centrado total */
@media (max-width: 768px){
    .trip-title-overlay{
        padding: 16px;
        align-items: center;
        justify-content: center;
        text-align: center;
        background: rgba(0,0,0,0.4);
    }
    .trip-title-overlay-text{
        max-width: 90%;
        text-align: center;
        font-size: clamp(18px, 5.5vw, 24px);
        font-weight: 700;
    }
}