/* ===========================
🌍 VARIABLES GLOBALES
=========================== */
:root {
    --color-bg: #0b0f19;
    --color1: #2b1055;
    --color2: #7597de;
    --color3: #9ee8ff;
    --color4: #0072ff;
    --color-title-start: #ffffff;
    --color-title-end: #9ee8ff;
    --color-titulo: #9ee8ff;
    --color-subtitulo: #9ee8ff;
    --color-texto-boton: #9ee8ff;
    --color-btn-start: #00c6ff;
    --color-btn-end: #0072ff;
    --color-btn-shadow: rgba(0, 114, 255, 0.4);
    --color-btn-shadow-hover: rgba(0, 200, 255, 0.6);
    --text-color: rgba(255, 255, 255, 0.85);
    --overlay-dark: rgba(240, 26, 26, 0.274);
    --overlay-light: rgba(255, 255, 255, 0.15);
    --overlay-border: rgba(255, 255, 255, 0.4);
    --border-radius: 0px;
}

/* 🌍 Contenedor externo que controla la altura del hero */
.hero-wrapper {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 5;
    transition: top 0.4s ease-in-out;
}

/* Garantiza que el hero interno mantenga su diseño */
.hero-wrapper>section {
    position: relative;
    width: 100%;
    height: 100vh;
}

/* 🌌 HERO MODERNA_1 */
.moderna1-section {
    position: relative;
    width: 100%;
    height: 100vh;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--color-bg);
    color: var(--color-texto-boton);
    font-family: 'Inter', sans-serif;
}

/* ✨ Fondo gradiente animado */
.moderna1-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(120deg, var(--color1), var(--color2));
    background-size: 200% 200%;
    animation: moderna1GradientMove 10s ease infinite alternate;
    z-index: 1;
    opacity: 0.8;
}

@keyframes moderna1GradientMove {
    0% {
        background-position: 0% 50%;
    }

    100% {
        background-position: 100% 50%;
    }
}

/* 📦 Contenedor principal */
.moderna1-container {
    position: relative;
    z-index: 2;
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 85%;
    max-width: 1300px;
    gap: 3rem;
}

/* 🧠 Contenido de texto */
.moderna1-content {
    flex: 1;
    min-width: 320px;
}

.moderna1-title {
    font-size: 3.5rem;
    font-weight: 800;
    line-height: 1.2;
    background: linear-gradient(90deg, var(--color-titulo), var(--color-titulo));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    letter-spacing: -1px;
    margin-bottom: 1rem;
}

.moderna1-subtitle {
    font-size: 1.25rem;
    line-height: 1.7;
    color: var(--color-subtitulo);
    margin-bottom: 2rem;
    max-width: 480px;
}

/* 🎯 Botón principal */
.moderna1-btn {
    display: inline-block;
    background: linear-gradient(90deg, var(--color-btn-start), var(--color-btn-end));
    color: var(--color-texto-boton);
    padding: 0.9rem 2.2rem;
    border-radius: var(--border-radius, 50px);
    text-decoration: none;
    font-weight: 600;
    letter-spacing: 0.5px;
    transition: all 0.3s ease;
    box-shadow: 0 4px 20px var(--color-btn-shadow);
}

.moderna1-btn:hover {
    transform: translateY(-3px) scale(1.02);
    box-shadow: 0 6px 25px var(--color-btn-shadow-hover);
}

/* 🖼️ Imagen futurista */
.moderna1-image-wrapper {
    flex: 1;
    display: flex;
    justify-content: center;
    align-items: center;
    perspective: 1000px;
}

.moderna1-image {
    width: 100%;
    max-width: 520px;
    transform: rotateY(-10deg) rotateX(5deg);
    animation: moderna1Float3D 6s ease-in-out infinite alternate;
    border-radius: 25px;
    box-shadow: 0 25px 45px rgba(0, 0, 0, 0.35);
}

@keyframes moderna1Float3D {
    0% {
        transform: rotateY(-10deg) translateY(0);
    }

    100% {
        transform: rotateY(10deg) translateY(-20px);
    }
}

/* 📱 Responsive */
@media (max-width: 950px) {
    .moderna1-container {
        flex-direction: column-reverse;
        text-align: center;
    }

    .moderna1-title {
        font-size: 2.5rem;
    }

    .moderna1-subtitle {
        max-width: 100%;
    }

    .moderna1-image {
        max-width: 360px;
        transform: rotateY(0);
    }
}

/* ===========================
   🎬 HERO Imagen_1 (versión dinámica con variables globales)
=========================== */
#wrapper_Video_1 {
    position: relative;
    top: var(--altura-hero, 0px);
    /* valor estable por defecto */
    transition: none;
    /* evita animación que cause shift */
}

.hero-section {
    position: relative;
    height: 100vh;
    width: 100%;
    overflow: hidden;

    /* 🎨 Fondo dinámico */
    background-color: var(--color-bg);
    background-image:
        linear-gradient(120deg,
            var(--color1),
            var(--color2)),
        url("https://www.transparenttextures.com/patterns/diagmonds.png");
    background-repeat: repeat;
    background-size: auto;
    color: var(--text-color);
}

/* 🌑 Superposición oscura para contraste */
.hero-section::before {
    content: "";
    position: absolute;
    inset: 0;
    background: var(--overlay-dark);
    z-index: 0;
}

/* 📦 Contenedor principal */
.hero-section .container {
    position: relative;
    z-index: 1;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
}

/* 🧠 Título */
.hero-section h1 {
    font-size: 3.2rem;
    font-weight: 800;
    background: linear-gradient(90deg, var(--color-titulo), var(--color-titulo));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    margin-bottom: 1rem;
}

/* 📝 Subtítulo */
.hero-section h2 {
    font-size: 1.25rem;
    color: var(--color-subtitulo);
    max-width: 600px;
    line-height: 1.6;
    margin-bottom: 2rem;
}

/* 🔘 Botón */
.hero-section .btn {
    display: inline-block;
    background: linear-gradient(90deg, var(--color-btn-start), var(--color-btn-end));
    color: var(--color-texto-boton);
    padding: 0.9rem 2.2rem;
    border-radius: var(--border-radius);
    text-decoration: none;
    font-weight: 600;
    letter-spacing: 0.5px;
    box-shadow: 0 4px 20px var(--color-btn-shadow);
    transition: all 0.3s ease;
}

.hero-section .btn:hover {
    transform: translateY(-3px) scale(1.02);
    box-shadow: 0 6px 25px var(--color-btn-shadow-hover);
    color: var(--color4);
}

/* ===========================
   🎬 HERO VIDEO_1 (con variables globales)
=========================== */
.video1-hero-section {
    position: relative;
    width: 100%;
    height: 100vh;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    background-color: var(--color-bg);
}

/* 🎥 Fondo de video */
.video1-video-background {
    position: absolute;
    inset: 0;
    z-index: 0;
    overflow: hidden;
}

.video1-video-background video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    position: absolute;
    top: 0;
    left: 0;
    filter: brightness(0.9) contrast(1.1);
    transition: opacity 0.6s ease;
}

/* 🌫️ Capa de oscurecimiento y blur */
.video1-hero-overlay {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, var(--overlay-dark), var(--overlay-dark));
    backdrop-filter: blur(4px);
    z-index: 1;
}

/* 💬 Contenido encima del video */
.video1-hero-content {
    position: relative;
    z-index: 2;
    padding: 1.5rem;
    max-width: 900px;
    width: 90%;
    animation: fadeInUp 1.2s ease forwards;
    color: var(--text-color);
}

/* 🟦 Título principal */
.video1-hero-content h1 {
    font-size: clamp(2rem, 5vw, 4rem);
    font-weight: 700;
    margin-bottom: 1rem;
    line-height: 1.2;
    color: var(--color-titulo);
    background: linear-gradient(90deg, var(--color-titulo), var(--color-titulo));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    text-shadow: 0 3px 15px var(--overlay-light);
}

/* 🟦 Subtítulo */
.video1-hero-content h2 {
    font-size: clamp(1rem, 3vw, 2rem);
    font-weight: 400;
    margin-bottom: 2rem;
    color: var(--color-subtitulo);
    text-shadow: 0 2px 10px var(--overlay-light);
}

/* 🔘 Botón elegante */
.video1-hero-content a {
    display: inline-block;
    padding: 0.8rem 2rem;
    border-radius: var(--border-radius);
    background: linear-gradient(90deg, var(--color-btn-start), var(--color-btn-end));
    color: var(--color-texto-boton);
    border: 1px solid var(--overlay-border);
    font-size: clamp(0.9rem, 2vw, 1rem);
    letter-spacing: 0.5px;
    text-decoration: none;
    box-shadow: 0 6px 15px var(--color-btn-shadow);
    transition: all 0.3s ease;
}

.video1-hero-content a:hover {
    background: linear-gradient(90deg, var(--color-btn-end), var(--color-btn-start));
    box-shadow: 0 8px 25px var(--color-btn-shadow-hover);
    transform: translateY(-3px);
    color: var(--color-titulo);
    /* 🔹 Cambia el texto del botón al color del título */
}

/* 📱 Responsivo */
@media (max-width: 992px) {
    .video1-hero-section {
        height: 90vh;
        padding: 1rem;
    }

    .video1-hero-content h1 {
        font-size: clamp(1.8rem, 6vw, 3rem);
    }

    .video1-hero-content h2 {
        font-size: clamp(1rem, 4vw, 1.4rem);
    }
}

@media (max-width: 576px) {
    .video1-hero-section {
        height: 100vh;
        padding: 0.5rem;
    }

    .video1-hero-content {
        width: 95%;
    }

    .video1-hero-content a {
        padding: 0.6rem 1.5rem;
        font-size: 0.9rem;
    }
}

/* ✨ Animación de aparición */
@keyframes fadeInUp {
    0% {
        opacity: 0;
        transform: translateY(20px);
    }

    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

/* ===================== */
/* 🎬 HERO VIDEO 2 AJUSTABLE */
/* ===================== */

.Video2-hero-section {
    position: relative;
    width: 100%;
    height: 100vh;
    overflow: hidden;
    background-size: cover;
    background-position: center;
}

.Video2-hero-section::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    backdrop-filter: blur(6px);
    background-color: rgba(0, 0, 0, 0.35);
    /* Oscurece ligeramente */
    z-index: 1;
    /* capa inferior al contenido */
}

.Video2-hero-section {
    position: relative;
    width: 100%;
    height: 100vh;
    overflow: hidden;
}

.Video2-hero-video-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    overflow: hidden;
}

.Video2-hero-video-bg video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    pointer-events: none;
}

.Video2-hero-video-wrapper {
    position: absolute;
    top: 60%;
    left: 75%;
    width: 30%;
    height: 30%;
    transform: translate(-50%, -50%);
    z-index: 3;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.4);
    transition: all 0.3s ease;
}

.Video2-hero-video-wrapper video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    border: none;
    border-radius: 12px;
}

/* 🎯 CONTENIDO PRINCIPAL */
.Video2-hero-content {
    position: absolute;
    top: 60%;
    left: 25%;
    transform: translate(-50%, -50%);

    text-align: center;
    z-index: 4;
}

.Video2-hero-title {
    margin: 0;
    font-size: 3rem;
    font-weight: bold;
    color: var(--color-titulo);
}

.Video2-hero-subtitle {
    margin: 10px 0 20px 0;
    font-size: 1.5rem;
    font-weight: 500;
    color: var(--color-subtitulo);
}

.Video2-hero-btn {
    display: inline-block;
    padding: 12px 30px;
    font-size: 1rem;
    border-radius: var(--border-radius, 8px);
    background: var(--color-btn-start);
    color: var(--color-texto-boton);
    text-decoration: none;
    transition: all 0.3s ease;
}

.Video2-hero-btn:hover {
    background-color: var(--color-btn-end);
    color: var(--color-texto-boton);
}

/* ===================== */
/* 📱 RESPONSIVO */
/* ===================== */

/* 🔸 Pantallas medianas (tablets) */
@media (max-width: 992px) {
    .Video2-hero-video-wrapper {
        top: 80%;
        left: 50%;
        width: 90%;
        height: 30%;
        transform: translate(-50%, -50%);
    }

    .Video2-hero-content {
        top: 40%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 90%;
    }

    .Video2-hero-title {
        font-size: 1.8rem;
    }

    .Video2-hero-subtitle {
        font-size: 1rem;
    }

    .Video2-hero-btn {
        padding: 10px 20px;
        font-size: 0.9rem;
    }
}

/* 🔹 Pantallas pequeñas (móviles) */
@media (max-width: 576px) {
    .Video2-hero-video-wrapper {
        top: 80%;
        left: 50%;
        width: 90%;
        height: 30%;
        transform: translate(-50%, -50%);
    }

    .Video2-hero-content {
        top: 40%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 90%;
    }

    .Video2-hero-title {
        font-size: 1.8rem;
    }

    .Video2-hero-subtitle {
        font-size: 1rem;
    }

    .Video2-hero-btn {
        padding: 10px 20px;
        font-size: 0.9rem;
    }
}


/* ===========================
   🎬 HERO VIDEO_3 (con variables globales)
=========================== */
/* ===========================
   🎬 HERO VIDEO_3 – Profesional y limpio
=========================== */
.video3-hero-section {
    position: relative;
    width: 100%;
    height: 100vh;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    background-color: var(--color-bg);
}

/* 🎥 Fondo de video */
.video3-video-background {
    position: absolute;
    inset: 0;
    z-index: 0;
    overflow: hidden;
}

.video3-video-background video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    position: absolute;
    top: 0;
    left: 0;
    filter: brightness(1) contrast(1.05) saturate(1.05);
    transition: opacity 0.6s ease;
}

/* 💬 Contenedor del contenido */
.video3-hero-content {
    position: relative;
    z-index: 2;
    padding: 2rem 3rem;
    max-width: 750px;
    width: 90%;
    background: rgba(10, 10, 10, 0.35);
    backdrop-filter: blur(8px);
    border-radius: 1.5rem;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.25);
    animation: fadeInUp 1.2s ease forwards;
    color: var(--text-color);
}

/* ✨ Título */
.video3-hero-content h1 {
    font-size: clamp(1.8rem, 4vw, 3.5rem);
    font-weight: 600;
    margin-bottom: 0.8rem;
    letter-spacing: 0.5px;
    background: linear-gradient(90deg, var(--color-titulo), var(--color-titulo));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    line-height: 1.1;
}

/* Subtítulo */
.video3-hero-content h2 {
    font-size: clamp(1rem, 2vw, 1.4rem);
    font-weight: 300;
    color: rgba(255, 255, 255, 0.85);
    margin-bottom: 1.5rem;
}

/* 🔘 Botón */
.video3-hero-content a {
    display: inline-block;
    padding: 0.7rem 2rem;
    border-radius: var(--border-radius);
    background: linear-gradient(90deg, var(--color-btn-start), var(--color-btn-end));
    color: var(--color-texto-boton);
    font-weight: 500;
    font-size: clamp(0.9rem, 1.8vw, 1rem);
    text-decoration: none;
    letter-spacing: 0.4px;
    box-shadow: 0 6px 15px var(--color-btn-shadow);
    transition: all 0.3s ease;
}

.video3-hero-content a:hover {
    background: linear-gradient(90deg, var(--color-btn-end), var(--color-btn-start));
    transform: translateY(-3px);
    box-shadow: 0 8px 25px var(--color-btn-shadow-hover);
}

/* ✨ Animación de aparición */
@keyframes fadeInUp {
    0% {
        opacity: 0;
        transform: translateY(25px);
    }

    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

/* 📱 Responsivo */
@media (max-width: 768px) {
    .video3-hero-content {
        padding: 1.2rem 1.8rem;
        width: 90%;
    }

    .video3-hero-content h1 {
        font-size: 1.8rem;
    }

    .video3-hero-content h2 {
        font-size: 1rem;
    }
}

.video3-hero-section {
    height: var(--altura-hero, 100vh);
}

.hidden-temp {
    opacity: 0;
    pointer-events: none;
}

/* HERO base estable */
.video3-hero-section {
    position: relative;
    width: 100%;
    height: var(--altura-hero, 100vh);
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    background-color: var(--color-bg);
    contain: layout paint;
    /* 🧱 Aísla layout y evita que cambios internos afecten el resto */
}

/* Fija el video completamente */
.video3-video-background video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    background-color: black;
    /* previene frame blanco inicial */
    opacity: 0;
    transition: opacity 0.4s ease;
    /* fade suave sin cambiar layout */
}

.video3-video-background video.loaded {
    opacity: 1;
}

/* Desactiva animación inicial hasta carga completa */
.video3-hero-content {
    opacity: 0;
    transform: translateY(25px);
    transition: opacity 0.6s ease, transform 0.6s ease;
}

.video3-hero-section.ready .video3-hero-content {
    opacity: 1;
    transform: translateY(0);
}

/* ===========================
   🎯 HERO SPLIT 1 PROFESIONAL RESPONSIVE
=========================== */
/* ===========================
   🎯 HERO SPLIT 1 PROFESIONAL (con variables globales)
=========================== */
.split1-hero-section {
    width: 100%;
    min-height: 100vh;
    display: flex;
    align-items: stretch;
    background-color: var(--color-bg);
    color: var(--text-color);
    overflow: hidden;
}

/* ======== CONTENEDOR PRINCIPAL ======== */
.split1-container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    width: 100%;
    height: 100%;
}

/* ======== COLUMNA DE TEXTO ======== */
.split1-content {
    background: linear-gradient(135deg,
            rgba(255, 255, 255, 0.08) 0%,
            rgba(255, 255, 255, 0.05) 100%);
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 5rem 6rem;
    text-align: left;
    color: var(--text-color);
    backdrop-filter: blur(10px);
    border-right: 1px solid var(--overlay-light);
}

/* ======== TÍTULO ======== */
.split1-title {
    font-size: clamp(2.5rem, 5vw, 4rem);
    margin-bottom: 1rem;
    font-weight: 700;
    background: linear-gradient(90deg, var(--color-titulo), var(--color-titulo));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    line-height: 1.2;
}

/* ======== SUBTÍTULO ======== */
.split1-subtitle {
    font-size: clamp(1rem, 2vw, 1.4rem);
    color: var(--color-subtitulo);
    opacity: 0.85;
    margin-bottom: 2rem;
    max-width: 90%;
    line-height: 1.6;
}

/* ======== BOTÓN ======== */
.split1-btn {
    background: linear-gradient(90deg, var(--color-btn-end), var(--color-btn-end));
    border: 2px solid transparent;
    color: var(--color-texto-boton);
    padding: 0.9rem 2.4rem;
    border-radius: var(--border-radius, 50px);
    transition: all 0.3s ease-in-out;
    width: fit-content;
    font-weight: 600;
    letter-spacing: 0.5px;
    box-shadow: 0 4px 10px var(--color-btn-shadow);

}

.split1-btn:hover {
    background: transparent;
    border-color: var(--color-btn-end);
    color: var(--color-btn-end);
    box-shadow: 0 4px 15px var(--color-btn-shadow-hover);
}

/* ======== COLUMNA DE IMAGEN ======== */
.split1-image {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
    background: var(--overlay-dark);
}

.split1-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: brightness(0.85);
    transition: transform 1.5s ease, filter 0.5s ease;
}

.split1-img:hover {
    transform: scale(1.05);
    filter: brightness(1);
}

/* ======== CAPA DE SUPERPOSICIÓN OPCIONAL ======== */
.split1-overlay {
    position: absolute;
    inset: 0;
    background: var(--overlay-dark);
}

/* ======== TABLETS MEDIANAS ======== */
@media (max-width: 1200px) {
    .split1-content {
        padding: 4rem;
    }
}

/* ======== TABLETS PEQUEÑAS ======== */
@media (max-width: 991px) {
    .split1-container {
        grid-template-columns: 1fr;
    }

    .split1-content {
        text-align: center;
        align-items: center;
        padding: 3rem 2rem;
        border-right: none;
        border-bottom: 1px solid var(--overlay-light);
    }

    .split1-title {
        font-size: clamp(2rem, 7vw, 3rem);
    }

    .split1-subtitle {
        max-width: 100%;
    }

    .split1-btn {
        margin-top: 1rem;
    }

    .split1-image {
        height: 45vh;
    }
}

/* ======== MÓVILES GRANDES ======== */
@media (max-width: 768px) {
    .split1-hero-section {
        min-height: 100vh;
        display: flex;
        flex-direction: column;
    }

    .split1-container {
        display: flex;
        flex-direction: column;
        flex: 1;
        margin-top: 100px;
    }

    .split1-content {
        flex: 1 0 60%;
        padding: 1.8rem 1.2rem 1.5rem;
        display: flex;
        flex-direction: column;
        justify-content: center;
        text-align: center;
    }

    .split1-title {
        font-size: 1.6rem;
        margin-bottom: 0.7rem;
        line-height: 1.3;
    }

    .split1-subtitle {
        font-size: 0.95rem;
        margin-bottom: 1.3rem;
        line-height: 1.5;
    }

    .split1-btn {
        font-size: 0.85rem;
        padding: 0.7rem 1.6rem;
        align-self: center;
    }

    .split1-image {
        flex: 1 0 40%;
        width: 100%;
        height: auto;
        position: relative;
    }

    .split1-img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .split1-hero-section+* {
        margin-top: 0;
    }
}

/* ======== MÓVILES PEQUEÑOS OPTIMIZADO ======== */
@media (max-width: 480px) {
    .split1-hero-section {
        min-height: 100vh;
        display: flex;
        flex-direction: column;
    }

    .split1-container {
        display: flex;
        flex-direction: column;
        flex: 1;
        margin-top: 100px;
    }

    .split1-content {
        flex: 1 0 60%;
        padding: 1.8rem 1.2rem 1.5rem;
        display: flex;
        flex-direction: column;
        justify-content: center;
        text-align: center;
    }

    .split1-title {
        font-size: 1.6rem;
        margin-bottom: 0.7rem;
        line-height: 1.3;
    }

    .split1-subtitle {
        font-size: 0.95rem;
        margin-bottom: 1.3rem;
        line-height: 1.5;
    }

    .split1-btn {
        font-size: 0.85rem;
        padding: 0.7rem 1.6rem;
        align-self: center;
    }

    .split1-image {
        flex: 1 0 40%;
        width: 100%;
        height: auto;
        position: relative;
    }

    .split1-img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    /* Elimina cualquier espacio extra al final */
    .split1-hero-section+* {
        margin-top: 0;
    }
}

/* ======== PANTALLAS 2K y 4K ======== */
@media (min-width: 1600px) {
    .split1-content {
        padding: 6rem 8rem;
    }

    .split1-title {
        font-size: 4.5rem;
    }

    .split1-subtitle {
        font-size: 1.6rem;
        max-width: 80%;
    }

    .split1-btn {
        font-size: 1.1rem;
        padding: 1rem 3rem;
    }
}

/* ===========================
   🌅 HERO SPLIT 2 ELEGANTE
=========================== */
/* ===========================
   🌅 HERO SPLIT 2 – USANDO VARIABLES GLOBALES
=========================== */
.split2-hero-section {
    width: 100%;
    min-height: 100vh;
    display: flex;
    align-items: stretch;
    overflow: hidden;
    background-color: var(--color-bg);
    color: var(--text-color);
}

/* ======== CONTENEDOR ======== */
.split2-container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    width: 100%;
    height: 100%;
}

/* ======== COLUMNA DE IMAGEN ======== */
.split2-image {
    position: relative;
    overflow: hidden;
}

.split2-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: brightness(0.9) contrast(1.05);
    transform: scale(1.05);
    transition: transform 1.5s ease, filter 0.6s ease;
}

.split2-img:hover {
    transform: scale(1.1);
    filter: brightness(1);
}

.split2-overlay {
    position: absolute;
    inset: 0;
    background: var(--overlay-dark);
}

/* ======== COLUMNA DE TEXTO ======== */
.split2-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 5rem 6rem;
    text-align: left;
    color: var(--text-color);
    background: linear-gradient(135deg, var(--color1), var(--color2));
    transition: background 0.8s ease;
    opacity: 0;
    transform: translateY(40px);
    animation: fadeUp 1s ease forwards;
    animation-delay: 0.3s;
    position: relative;
}

/* ======== ANIMACIÓN ======== */
@keyframes fadeUp {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* ======== TEXTOS ======== */
.split2-title {
    font-size: clamp(2.5rem, 5vw, 4rem);
    margin-bottom: 1rem;
    font-weight: 700;
    background: linear-gradient(90deg, var(--color-titulo), var(--color-titulo));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.split2-subtitle {
    font-size: clamp(1rem, 2vw, 1.3rem);
    color: var(--color-subtitulo);
    margin-bottom: 2rem;
    max-width: 90%;
    line-height: 1.6;
}

/* ======== BOTÓN ======== */
.split2-btn {
    background: linear-gradient(135deg, var(--color-btn-end), var(--color-btn-end));
    border: 2px solid transparent;
    color: var(--color-texto-boton);
    padding: 0.9rem 2.4rem;
    border-radius: var(--border-radius, 50px);
    transition: all 0.3s ease-in-out;
    width: fit-content;
    font-weight: 600;
    letter-spacing: 0.5px;
    box-shadow: 0 4px 10px var(--color-btn-shadow);
}

.split2-btn:hover {
    background: transparent;
    border-color: var(--color2);
    color: var(--color2);
    box-shadow: 0 4px 15px var(--color-btn-shadow-hover);
}

/* ======== RESPONSIVE ======== */
@media (max-width: 991px) {
    .split2-container {
        grid-template-columns: 1fr;
    }

    .split2-content {
        text-align: center;
        align-items: center;
        padding: 3rem 2rem;
        background: linear-gradient(135deg, var(--color1), var(--color2));
    }

    .split2-image {
        height: 45vh;
    }

    .split2-subtitle {
        max-width: 100%;
    }
}

@media (max-width: 768px) {
    .split2-content {
        padding: 2rem 1.2rem;
    }

    .split2-title {
        font-size: 1.8rem;
    }

    .split2-subtitle {
        font-size: 1rem;
    }

    .split2-btn {
        font-size: 0.85rem;
        padding: 0.7rem 1.6rem;
    }
}

/* ===========================
   🌈 SECCIÓN PRINCIPAL
=========================== */
.split3-section {
    position: relative;
    width: 100%;
    height: 100vh;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--text-color);
    background-color: var(--color-bg);
}

/* ===========================
   🎨 Fondo gradiente dinámico
=========================== */
.split3-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, var(--color1), var(--color2));
    animation: split3GradientShift 10s ease-in-out infinite alternate;
    z-index: 1;
}

/* 💫 Animación del gradiente */
@keyframes split3GradientShift {
    0% {
        background: linear-gradient(135deg, var(--color1), var(--color2));
    }

    100% {
        background: linear-gradient(135deg, var(--color3), var(--color4));
    }
}

/* ===========================
   📐 CONTENEDOR PRINCIPAL
=========================== */
.split3-container {
    position: relative;
    z-index: 2;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    width: 90%;
    max-width: 1300px;
    gap: 2rem;
}

/* ===========================
   📝 LADO IZQUIERDO: TEXTO
=========================== */
.split3-text-content {
    flex: 1;
    min-width: 320px;
    max-width: 550px;
}

.split3-text-content h1 {
    font-size: 3rem;
    line-height: 1.2;
    margin-bottom: 1rem;
    font-weight: 700;
    background: linear-gradient(90deg, var(--color-titulo), var(--color-titulo));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    text-shadow: 0 4px 20px var(--overlay-light);
}

.split3-text-content p {
    font-size: 1.2rem;
    line-height: 1.6;
    margin-bottom: 2rem;
    color: var(--color-subtitulo);
    text-shadow: 0 2px 10px var(--overlay-light);
}

/* ===========================
   🔘 BOTÓN
=========================== */
.split3-btn {
    display: inline-block;
    background: linear-gradient(135deg, var(--color-btn-start), var(--color-btn-end));
    color: var(--color-texto-boton);
    padding: 0.9rem 2rem;
    border-radius: var(--border-radius);
    font-weight: 600;
    text-decoration: none;
    transition: all 0.3s ease;
    box-shadow: 0 6px 15px var(--color-btn-shadow);
    border: 1px solid var(--overlay-border);
}

.split3-btn:hover {
    background: transparent;
    border-color: var(--color2);
    color: var(--color2);
    box-shadow: 0 6px 20px var(--color-btn-shadow-hover);
    transform: translateY(-3px);
}

/* ===========================
   🖼️ LADO DERECHO: IMAGEN FLOTANTE
=========================== */
.split3-image-container {
    flex: 1;
    display: flex;
    justify-content: center;
    align-items: center;
    min-width: 300px;
}

.split3-floating-img {
    width: 100%;
    max-width: 480px;
    animation: split3Float 6s ease-in-out infinite alternate;
    border-radius: 20px;
    box-shadow: 0 15px 35px var(--overlay-dark);
}

/* 💨 Animación de flotación */
@keyframes split3Float {
    0% {
        transform: translateY(0);
    }

    100% {
        transform: translateY(-25px);
    }
}

/* ===========================
   📱 RESPONSIVE
=========================== */
@media (max-width: 900px) {
    .split3-container {
        flex-direction: column-reverse;
        text-align: center;
    }

    .split3-text-content {
        max-width: 100%;
    }

    .split3-floating-img {
        max-width: 320px;
    }
}


/* ===========================
   🌅 SPLIT 4 ADAPTADO A VARIABLES
=========================== */
.split4-section {
    position: relative;
    width: 100%;
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    color: var(--text-color);
    font-family: 'Poppins', sans-serif;
    background-color: var(--color-bg);
}

.split4-overlay {
    position: absolute;
    inset: 0;
    z-index: 1;
    background: linear-gradient(135deg, var(--color1), var(--color2), var(--color3), var(--color4));
    clip-path: polygon(0 0, 100% 0, 100% 80%, 0 100%);
}

/* Contenedor general */
.split4-container {
    position: relative;
    z-index: 2;
    display: flex;
    flex-wrap: wrap;
    width: 90%;
    max-width: 1300px;
    align-items: center;
    justify-content: space-between;
}

/* Texto */
.split4-text-content {
    flex: 1 1 500px;
    padding: 2rem;
    z-index: 2;
    opacity: 0;
    transform: translateX(-50px);
    transition: all 0.8s ease;
}

.split4-text-content.scroll-visible {
    opacity: 1;
    transform: translateX(0);
}

.split4-title {
    font-size: clamp(2.5rem, 6vw, 5rem);
    font-weight: 800;
    margin-bottom: 1rem;
    line-height: 1.1;
    background: linear-gradient(90deg, var(--color-titulo), var(--color-titulo));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    text-shadow: 0 5px 25px var(--overlay-light);
}

.split4-subtitle {
    font-size: 1.3rem;
    margin-bottom: 2rem;
    line-height: 1.6;
    color: var(--color-subtitulo);
    text-shadow: 0 2px 15px var(--overlay-light);
    opacity: 0.95;
}

/* Botón con efecto 3D */
/* Botón con efecto 3D usando variables globales */
.split4-btn {
    display: inline-block;
    background: var(--color-btn-start);
    /* fondo principal desde variables */
    border: 2px solid var(--color-texto-boton);
    color: var(--color-texto-boton);
    padding: 0.75rem 2rem;
    border-radius: 50px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
    transition: all 0.4s ease;
    box-shadow: 0 5px 15px var(--overlay-dark);
    /* sombra desde variable */
    text-decoration: none;
    /* <-- quita la rayita abajo */
}

.split4-btn:hover {
    background: var(--color3);
    color: var(--color-texto-boton);
    transform: translateY(-5px) scale(1.05);
    box-shadow: 0 10px 30px var(--overlay-dark);
}

/* Imagen circular/diagonal con máscara */
.split4-image-container {
    flex: 1 1 500px;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
}

.split4-image-mask {
    width: 80%;
    max-width: 500px;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    border-radius: 50% 50% 50% 10%;
    transform: rotate(-5deg);
    box-shadow: 0 20px 60px var(--overlay-dark);
}

.split4-floating-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s ease;
}

.split4-floating-img:hover {
    transform: scale(1.1) rotate(0deg);
}

/* Responsive */
@media (max-width: 992px) {
    .split4-container {
        flex-direction: column-reverse;
        text-align: center;
    }

    .split4-image-mask {
        width: 70%;
        border-radius: 40% 40% 40% 10%;
    }
}

/* ===========================
   🌍 SPLIT_5 CON VARIABLES GLOBALES
=========================== */
.split5-section {
    position: relative;
    width: 100%;
    min-height: 95vh;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    color: var(--text-color);
    font-family: 'Poppins', sans-serif;
}

.split5-overlay {
    position: absolute;
    inset: 0;
    z-index: 1;
    background: linear-gradient(135deg, var(--color1), var(--color2), var(--color3), var(--color4));
    clip-path: polygon(0 0, 100% 0, 100% 85%, 0 100%);
}

/* Contenedor general */
.split5-container {
    position: relative;
    z-index: 2;
    display: flex;
    flex-wrap: wrap;
    width: 90%;
    max-width: 1300px;
    align-items: center;
    justify-content: space-between;
}

/* Texto */
.split5-text-content {
    flex: 1 1 600px;
    padding: 3rem;
    z-index: 2;
    opacity: 0;
    transform: translateX(-60px);
    transition: all 0.9s ease;
}

.split5-text-content.scroll-visible {
    opacity: 1;
    transform: translateX(0);
}

.split5-title {
    font-size: clamp(2.5rem, 6vw, 5rem);
    font-weight: 800;
    margin-bottom: 1rem;
    line-height: 1.1;
    color: var(--color-titulo);
    text-shadow: 0 3px 15px var(--overlay-dark);
}

.split5-subtitle {
    font-size: 1.3rem;
    margin-bottom: 2rem;
    line-height: 1.6;
    opacity: 0.95;
    color: var(--color-subtitulo);
    text-shadow: 0 2px 10px var(--overlay-dark);
}

/* Botón 3D con brillo dinámico */
.split5-btn {
    display: inline-block;
    background: var(--color-btn-start);
    border: 2px solid var(--color-texto-boton);
    color: var(--color-texto-boton);
    padding: 0.8rem 2rem;
    border-radius: var(--border-radius);
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
    transition: all 0.4s ease;
    box-shadow: 0 6px 20px var(--overlay-dark);
    text-decoration: none;
}

.split5-btn:hover {
    background: var(--color-btn-end);
    color: var(--color-bg);
    transform: translateY(-6px) scale(1.07);
    box-shadow: 0 12px 40px var(--overlay-dark);
}

/* Imagen flotante asimétrica */
.split5-image-container {
    flex: 1 1 500px;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
}

.split5-image-mask {
    width: 85%;
    max-width: 520px;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    border-radius: 60% 40% 30% 70% / 50% 60% 40% 50%;
    transform: rotate(-8deg);
    box-shadow: 0 25px 70px var(--overlay-dark);
}

.split5-floating-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s ease;
}

.split5-floating-img:hover {
    transform: scale(1.12) rotate(0deg);
}

/* Responsive */
@media (max-width: 992px) {
    .split5-container {
        flex-direction: column-reverse;
        text-align: center;
    }

    .split5-image-mask {
        width: 70%;
        border-radius: 50% 40% 30% 50% / 50% 50% 40% 50%;
    }
}


/* ===========================
   🌌 SPLIT_6 - HERO EXPERIMENTAL (RESPONSIVE MEJORADO)
=========================== */

.split6-section {
    position: relative;
    width: 100%;
    min-height: 95vh;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    color: var(--text-color);
    font-family: 'Poppins', sans-serif;
}

/* Overlay más suave (mejor para móviles) */
.split6-overlay {
    position: absolute;
    inset: 0;
    z-index: 1;
    background: linear-gradient(135deg,
            var(--color1),
            var(--color2),
            var(--color3),
            var(--color4));
    opacity: 0.65;
    /* antes 0.8, ahora más elegante */
}

/* Canvas particles */
.split6-canvas {
    position: absolute;
    inset: 0;
    z-index: 0;
}

/* MAIN CONTAINER */
.split6-container {
    position: relative;
    z-index: 2;
    width: 92%;
    max-width: 1400px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    gap: 3rem;
}

/* TEXT AREA */
.split6-text-content {
    flex: 1 1 520px;
    padding: 2.5rem;
    opacity: 0;
    transform: translateY(60px);
    transition: all 0.9s ease;
}

/* Visible cuando aparece */
.split6-text-content.scroll-visible {
    opacity: 1;
    transform: translateY(0);
}

/* TITLES */
.split6-title {
    font-size: clamp(2.3rem, 6vw, 4.8rem);
    font-weight: 800;
    margin-bottom: 1rem;
    line-height: 1.1;
    color: var(--color-titulo);
    text-shadow: 0 5px 20px var(--overlay-dark);
}

.split6-subtitle {
    font-size: clamp(1.1rem, 2.6vw, 1.35rem);
    margin-bottom: 2rem;
    line-height: 1.5;
    opacity: 0.95;
    color: var(--color-subtitulo);
    text-shadow: 0 3px 15px var(--overlay-dark);
}

/* BOTÓN */
.split6-btn {
    display: inline-block;
    padding: 0.9rem 2rem;
    border-radius: var(--border-radius);
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: var(--color-texto-boton);
    background: rgba(255, 255, 255, 0.18);
    border: 2px solid var(--color-texto-boton);
    box-shadow: 0 6px 20px var(--overlay-dark);
    transition: all 0.4s ease;
    text-decoration: none;
}

.split6-btn:hover {
    background: var(--color-btn-start);
    color: var(--color-btn-end);
    transform: translateY(-6px) scale(1.08);
    box-shadow: 0 12px 40px var(--color-btn-shadow-hover);
}

/* IMAGES ZONE */
.split6-images-container {
    flex: 1 1 520px;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
}

.split6-image-main {
    width: 85%;
    max-width: 480px;
    border-radius: 30px;
    box-shadow: 0 20px 60px var(--overlay-dark);
    transition: transform 0.6s ease;
}

.split6-image-overlay {
    position: absolute;
    top: -25px;
    left: 25px;
    width: 55%;
    max-width: 260px;
    border-radius: 50%;
    transform: rotate(-13deg);
    opacity: 0.8;
    transition: transform 0.6s ease, opacity 0.6s ease;
}

.split6-image-main:hover {
    transform: scale(1.05) rotate(2deg);
}

.split6-image-overlay:hover {
    transform: scale(1.12) rotate(0deg);
    opacity: 1;
}

/* ===========================
   📱 RESPONSIVE
=========================== */

/* Tablets → 992px */
@media (max-width: 992px) {

    .split6-container {
        flex-direction: column-reverse;
        text-align: center;
        gap: 0.5rem;
        padding: 0.1rem;
    }

    .split6-text-content {
        padding: 1.8rem;
    }

    .split6-image-main,
    .split6-image-overlay {
        max-width: 350px;
        width: 75%;
    }
}

/* Phones grandes → 768px */
@media (max-width: 768px) {

    .split6-title {
        font-size: clamp(2.1rem, 8vw, 3.3rem);
    }

    .split6-subtitle {
        font-size: 1.05rem;
    }

    .split6-image-overlay {
        display: none;
        /* 🔥 overlay se quita en mobile para evitar ruido */
    }

    .split6-image-main {
        max-width: 330px;
        width: 80%;
    }

    .split6-btn {
        width: auto;
        padding: 0.85rem 1.6rem;
        font-size: 0.9rem;
    }
}

/* Phones pequeños → 480px */
@media (max-width: 480px) {

    .split6-title {
        font-size: 1.9rem;
    }

    .split6-text-content {
        padding: 1.3rem;
    }

    .split6-image-main {
        width: 90%;
        max-width: 280px;
    }
}

/* ===========================
   🌌 SPLIT_7 - HERO CON VARIABLES GLOBALES
=========================== */
.split7-section {
    position: relative;
    width: 100%;
    min-height: 90vh;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    color: var(--text-color);
}

.split7-overlay {
    position: absolute;
    inset: 0;
    z-index: 1;
    background: linear-gradient(135deg, var(--color1), var(--color2), var(--color3), var(--color4));
    opacity: 0.85;
}

.split7-container {
    position: relative;
    z-index: 2;
    display: flex;
    flex-wrap: wrap;
    width: 90%;
    max-width: 1200px;
    align-items: center;
    justify-content: space-between;
}

.split7-text-content {
    flex: 1 1 500px;
    padding: 2rem;
}

.split7-title {
    font-size: clamp(2rem, 5vw, 4rem);
    font-weight: 700;
    margin-bottom: 1rem;
    color: var(--color-titulo);
    text-shadow: 0 5px 20px var(--overlay-dark);
}

.split7-subtitle {
    font-size: 1.2rem;
    margin-bottom: 2rem;
    opacity: 0.95;
    color: var(--color-subtitulo);
    text-shadow: 0 3px 15px var(--overlay-dark);
}

.split7-btn {
    display: inline-block;
    background: var(--color-btn-start);
    border: 2px solid var(--color-texto-boton);
    color: var(--color-texto-boton);
    padding: 0.75rem 1.75rem;
    border-radius: var(--border-radius);
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
    transition: all 0.3s ease;
    box-shadow: 0 5px 15px var(--overlay-dark);
    text-decoration: none;
}

.split7-btn:hover {
    background: var(--color-btn-start);
    color: var(--color-btn-end);
    transform: translateY(-3px);
    box-shadow: 0 6px 16px var(--color-btn-shadow-hover);
}

.split7-image-container {
    flex: 1 1 500px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.split7-floating-img {
    width: 90%;
    max-width: 500px;
    border-radius: 20px;
    box-shadow: 0 20px 60px var(--overlay-dark);
    transition: transform 0.5s ease, box-shadow 0.5s ease;
}

.split7-floating-img:hover {
    transform: scale(1.05);
    box-shadow: 0 30px 80px var(--color-btn-shadow-hover);
}

@media(max-width:992px) {
    .split7-container {
        flex-direction: column-reverse;
    }

    .split7-text-content,
    .split7-image-container {
        flex: 1 1 100%;
        text-align: center;
    }

    .split7-floating-img {
        width: 70%;
    }
}

/* 🎥 SPLIT 8 - VIDEO HERO CON VARIABLES GLOBALES */
.split8-section {
    position: relative;
    width: 100%;
    height: 100vh;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--text-color);
}

.split8-video-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 0;
}

.split8-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, var(--color1), var(--color2), var(--color3), var(--color4));
    opacity: 0.65;
    z-index: 1;
    mix-blend-mode: multiply;
}

.split8-container {
    position: relative;
    z-index: 2;
    width: 90%;
    max-width: 1100px;
    text-align: center;
    animation: fadeIn 1.5s ease forwards;
}

.split8-title {
    font-size: clamp(2.5rem, 6vw, 4rem);
    font-weight: 700;
    margin-bottom: 1rem;
    line-height: 1.1;
    opacity: 0;
    transform: translateY(30px);
    animation: slideUp 1s ease forwards 0.4s;
    color: var(--color-titulo);
    text-shadow: 0 5px 20px var(--overlay-dark);
}

.split8-subtitle {
    font-size: 1.3rem;
    line-height: 1.6;
    max-width: 700px;
    margin: 0 auto 2rem;
    opacity: 0;
    transform: translateY(30px);
    animation: slideUp 1s ease forwards 0.8s;
    color: var(--color-subtitulo);
    text-shadow: 0 3px 15px var(--overlay-dark);
}

.split8-btn {
    display: inline-block;
    background: rgba(255, 255, 255, 0.1);
    border: 2px solid var(--color-texto-boton);
    color: var(--color-texto-boton);
    padding: 0.85rem 2rem;
    border-radius: var(--border-radius);
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
    transition: all 0.3s ease;
    opacity: 0;
    transform: translateY(30px);
    animation: slideUp 1s ease forwards 1.2s;
    box-shadow: 0 5px 15px var(--overlay-dark);
    text-decoration: none;
}

.split8-btn:hover {
    background: var(--color-btn-start);
    color: var(--color-btn-end);
    box-shadow: 0 0 20px var(--color-btn-shadow-hover);
    transform: translateY(-3px);
}

/* 🌬 Animaciones */
@keyframes slideUp {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes fadeIn {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

/* 📱 Responsive */
@media (max-width: 768px) {
    .split8-title {
        font-size: 2rem;
    }

    .split8-subtitle {
        font-size: 1rem;
    }
}

/* ==============================
   🎨 SPLIT 9 - DOUBLE DIAGONAL HERO CON VARIABLES GLOBALES
================================= */
.split9-section {
    position: relative;
    width: 100%;
    height: 100vh;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--text-color);
}

/* 🎬 Imágenes laterales */
.split9-images {
    position: absolute;
    inset: 0;
    display: flex;
}

.split9-image {
    flex: 1;
    overflow: hidden;
    position: relative;
    clip-path: polygon(0 0, 100% 0, 70% 100%, 0% 100%);
    transition: transform 1.5s ease;
}

.split9-right {
    clip-path: polygon(30% 0, 100% 0, 100% 100%, 0% 100%);
}

.split9-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transform: scale(1.1);
    transition: transform 2s ease;
}

.split9-section:hover .split9-image img {
    transform: scale(1);
}

/* 🌈 Overlay gradiente */
.split9-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(120deg, var(--overlay-dark), var(--overlay-light));
    z-index: 1;
    mix-blend-mode: multiply;
}

/* ✍️ Contenido */
.split9-content {
    position: relative;
    z-index: 2;
    text-align: center;
    max-width: 800px;
    padding: 2rem;
    animation: fadeSlideIn 1.5s ease forwards;
}

.split9-title {
    font-size: clamp(2rem, 5vw, 3.5rem);
    font-weight: 700;
    margin-bottom: 1rem;
    opacity: 0;
    transform: translateY(40px);
    animation: fadeUp 1.2s ease forwards 0.4s;
    color: var(--color-titulo);
    text-shadow: 0 5px 20px var(--overlay-dark);
}

.split9-subtitle {
    font-size: 1.2rem;
    line-height: 1.6;
    opacity: 0;
    transform: translateY(40px);
    animation: fadeUp 1.2s ease forwards 0.8s;
    color: var(--color-subtitulo);
    text-shadow: 0 3px 15px var(--overlay-dark);
}

.split9-btn {
    display: inline-block;
    margin-top: 1.5rem;
    padding: 0.8rem 2rem;
    border: 2px solid var(--color-texto-boton);
    border-radius: var(--border-radius);
    color: var(--color-texto-boton);
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
    transition: all 0.3s ease;
    opacity: 0;
    transform: translateY(40px);
    animation: fadeUp 1.2s ease forwards 1.2s;
    box-shadow: 0 5px 15px var(--overlay-dark);
    text-decoration: none;
}

.split9-btn:hover {
    background: var(--color-btn-start);
    color: var(--color-btn-end);
    transform: translateY(-3px);
    box-shadow: 0 8px 25px var(--color-btn-shadow-hover);
}

/* 🔄 Animaciones */
@keyframes fadeUp {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes fadeSlideIn {
    from {
        opacity: 0;
        transform: translateY(50px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* 📱 Responsive */
@media (max-width: 768px) {
    .split9-images {
        flex-direction: column;
    }

    .split9-image {
        clip-path: none;
        height: 50%;
    }
}

/* ============================
   🌌 SPLIT 10 - NEON CENTER HERO
=============================== */
.split10-section {
    position: relative;
    width: 100%;
    height: 100vh;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    color: var(--text-color);
    background: var(--color-bg);
}

/* 🎇 Overlay gradiente */
.split10-overlay {
    position: absolute;
    inset: 0;
    z-index: 1;
    opacity: 0.8;
    transition: opacity 1s ease;
    background: linear-gradient(135deg, var(--color1), var(--color2), var(--color3));
}

/* 🌠 Canvas de partículas */
.split10-canvas {
    position: absolute;
    inset: 0;
    z-index: 0;
}

/* ✍️ Contenido */
.split10-content {
    position: relative;
    z-index: 2;
    padding: 2rem;
    max-width: 800px;
}

/* ✨ Título */
.split10-title {
    font-size: clamp(2.5rem, 6vw, 4.5rem);
    font-weight: 800;
    color: var(--color-titulo);
    text-shadow:
        0 0 10px var(--color4),
        0 0 20px var(--color4),
        0 0 40px var(--color4);
    letter-spacing: 2px;
    opacity: 0;
    transform: translateY(50px);
    animation: fadeUp 1.5s ease forwards;
}

/* 🕊️ Subtítulo */
.split10-subtitle {
    font-size: 1.3rem;
    margin-top: 1rem;
    line-height: 1.6;
    color: var(--color-subtitulo);
    opacity: 0;
    transform: translateY(40px);
    animation: fadeUp 1.5s ease forwards 0.4s;
}

/* 💫 Botón sin borde */
.split10-btn {
    display: inline-block;
    margin-top: 2rem;
    padding: 0.9rem 2.5rem;
    /* border: 2px solid var(--color-btn-end); */
    /* Borde eliminado */
    border-radius: var(--border-radius);
    color: var(--color-texto-boton);
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    transition: all 0.3s ease;
    box-shadow: 0 0 10px var(--color-btn-shadow);
    opacity: 0;
    transform: translateY(40px);
    animation: fadeUp 1.5s ease forwards 0.8s;
    text-decoration: none;
}

.split10-btn:hover {
    background: var(--color-btn-end);
    color: var(--color-bg);
    box-shadow: 0 0 25px var(--color-btn-shadow-hover);
    transform: translateY(-4px);
}

/* 🔄 Animación base */
@keyframes fadeUp {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* ============================
   🎥 SPLIT 11 - VIDEO SIDE TEXT (Con variables globales)
=============================== */
.split11-section {
    position: relative;
    width: 100%;
    height: 100vh;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    color: var(--color-texto-principal);
    background: var(--color-bg);
}

/* 🎞️ Video de fondo */
.split11-video {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 0;
    filter: brightness(0.6);
}

/* 🌈 Overlay gradiente */
.split11-overlay {
    position: absolute;
    inset: 0;
    z-index: 1;
    opacity: 0.1;
    background: var(--color1);
    transition: all 0.8s ease;
}

/* 📦 Contenedor principal */
.split11-container {
    position: relative;
    z-index: 2;
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 4rem;
    display: flex;
    justify-content: flex-start;
    align-items: center;
}

/* 📝 Texto lateral */
.split11-text {
    max-width: 600px;
    animation: fadeSlide 1.2s ease forwards;
    transform: translateY(50px);
    opacity: 0;
}

/* ✨ Animación suave */
@keyframes fadeSlide {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.split11-title {
    font-size: clamp(2.2rem, 5vw, 4rem);
    font-weight: 800;
    margin-bottom: 1rem;
    line-height: 1.2;
    color: var(--color-titulo);
}

.split11-subtitle {
    font-size: 1.2rem;
    margin-bottom: 2rem;
    opacity: 0.95;
    line-height: 1.6;
    color: var(--color-subtitulo);
}

/* 🔘 Botón */
.split11-btn {
    display: inline-block;
    background: var(--color-btn-bg);
    border: 2px solid var(--color-btn-border);
    color: var(--color-texto-boton);
    padding: 0.9rem 2.2rem;
    border-radius: var(--border-radius);
    text-transform: uppercase;
    letter-spacing: 1px;
    font-weight: 600;
    transition: all 0.3s ease;
    box-shadow: 0 6px 15px var(--color-btn-shadow);
    text-decoration: none;
}

.split11-btn:hover {
    background: var(--color-btn-hover-bg);
    color: var(--color3);
    transform: translateY(-3px);
    box-shadow: 0 6px 15px var(--color-btn-shadow-hover);
}

/* 📱 Responsive */
@media (max-width: 992px) {
    .split11-container {
        justify-content: center;
        text-align: center;
        padding: 2rem;
    }

    .split11-text {
        max-width: 90%;
    }
}

/* ===============================
   🧩 SPLIT 12 - DIAGONAL MODERN SPLIT
================================== */
/* ===============================
   🧩 SPLIT 12 - Versión Profesional (Variables Globales)
================================== */
.split12-section {
    position: relative;
    width: 100%;
    overflow: hidden;
    background: var(--color-bg);
    padding: 100px 0;
}

.split12-container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: center;
    width: min(90%, 1200px);
    margin: 0 auto;
    gap: 2rem;
}

/* 🖼️ Imagen adaptable con máscara diagonal */
.split12-image {
    position: relative;
    aspect-ratio: 4 / 3;
    border-radius: 1.5rem;
    overflow: hidden;
    box-shadow: 0 10px 30px var(--color-shadow-light);
    clip-path: polygon(0 0, 100% 8%, 100% 92%, 0 100%);
    transition: transform 0.8s ease, box-shadow 0.8s ease;
}

.split12-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transition: transform 1.2s ease;
    filter: brightness(0.95) contrast(1.05);
}

.split12-image:hover img {
    transform: scale(1.08);
}

/* 📄 Contenido */
.split12-content {
    background: var(--color-content-bg);
    border-radius: 1.5rem;
    padding: 3rem;
    box-shadow: 0 10px 30px var(--color-shadow-content);
    transform: translateY(30px);
    opacity: 0;
    animation: fadeInUp 1s ease forwards;
}

.split12-content h2 {
    font-size: clamp(1.8rem, 4vw, 2.6rem);
    font-weight: 700;
    color: var(--color-titulo);
    margin-bottom: 1rem;
}

.split12-content p {
    font-size: 1.1rem;
    color: var(--color-subtitulo);
    line-height: 1.7;
    margin-bottom: 2rem;
}

/* 🔘 Botón */
.split12-btn {
    display: inline-block;
    padding: 0.9rem 2rem;
    background: var(--color-btn-bg);
    color: var(--color-texto-boton);
    font-weight: 600;
    border-radius: var(--border-radius);
    text-decoration: none;
    transition: all 0.3s ease;
    box-shadow: 0 6px 15px var(--color-btn-shadow);
}

.split12-btn:hover {
    background: var(--color-btn-hover-bg);
    transform: translateY(-3px);
    box-shadow: 0 6px 15px var(--color-btn-shadow-hover);
}

/* ✨ Animación */
@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(60px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* 📱 Responsive */
@media (max-width: 992px) {
    .split12-container {
        grid-template-columns: 1fr;
    }

    .split12-image {
        aspect-ratio: 16 / 9;
        clip-path: polygon(0 0, 100% 5%, 100% 95%, 0 100%);
    }

    .split12-content {
        text-align: center;
        transform: none;
    }
}

/* ================================
   🧩 SPLIT 13 - Minimal Elegant Layout (Variables Globales)
=================================== */
.split13-section {
    width: 100%;
    background: var(--color-bg);
    padding: 100px 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

.split13-container {
    display: grid;
    grid-template-columns: 45% 55%;
    align-items: center;
    gap: 4rem;
    width: min(90%, 1200px);
    margin: 0 auto;
}

/* Imagen */
.split13-image-wrapper {
    overflow: hidden;
    border-radius: 1.5rem;
    position: relative;
    box-shadow: 0 10px 35px var(--color-shadow-light);
    height: 450px;
    background: var(--color-bg-image);
}

.split13-image-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transform: scale(1.05);
    transition: transform 1.5s ease, filter 1s ease;
    filter: brightness(0.95) contrast(1.05);
}

.split13-image-wrapper:hover img {
    transform: scale(1.1);
    filter: brightness(1);
}

/* Contenido */
.split13-content {
    opacity: 0;
    transform: translateY(50px);
    transition: all 1s ease;
}

.split13-content.visible {
    opacity: 1;
    transform: translateY(0);
}

.split13-content h2 {
    font-size: clamp(2rem, 4vw, 2.8rem);
    color: var(--color-titulo);
    font-weight: 700;
    margin-bottom: 1.5rem;
    line-height: 1.2;
}

.split13-content p {
    font-size: 1.15rem;
    color: var(--color-subtitulo);
    line-height: 1.8;
    margin-bottom: 2.5rem;
    max-width: 550px;
}

/* 🔘 Botón */
.split13-btn {
    display: inline-block;
    padding: 0.85rem 2.2rem;
    background: var(--color-btn-bg);
    color: var(--color-texto-boton);
    border-radius: var(--border-radius);
    text-decoration: none;
    font-weight: 600;
    transition: all 0.3s ease;
    box-shadow: 0 6px 18px var(--color-btn-shadow);
}

.split13-btn:hover {
    background: var(--color-btn-hover-bg);
    transform: translateY(-3px);
    box-shadow: 0 6px 18px var(--color-btn-shadow-hover);
}

/* Responsive */
@media (max-width: 992px) {
    .split13-container {
        grid-template-columns: 1fr;
        gap: 3rem;
        text-align: center;
    }

    .split13-image-wrapper {
        height: 320px;
    }

    .split13-content p {
        margin: 0 auto 2rem auto;
    }
}

/* ================================
   🧩 SPLIT 14 - Minimal Geometric Diagonal
=================================== */
/* ================================
   🧩 SPLIT 14 - Asimetría Editorial (Variables Globales)
================================== */
.split14-section {
    width: 100%;
    background: var(--color-bg);
    padding: 100px 0;
    display: flex;
    justify-content: center;
    align-items: center;
    overflow: hidden;
}

.split14-container {
    position: relative;
    width: min(92%, 1200px);
    display: flex;
    align-items: flex-end;
    justify-content: center;
    gap: 3rem;
}

/* 📸 Imagen vertical dominante */
.split14-image-wrapper {
    position: relative;
    flex: 1.1;
    overflow: hidden;
    border-radius: 1.5rem;
    box-shadow: 0 12px 35px var(--color-shadow-light);
    height: 650px;
}

.split14-image-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transform: scale(1.05);
    transition: transform 1.8s ease;
}

.split14-image-wrapper:hover img {
    transform: scale(1.12);
}

/* 🧾 Contenido superpuesto */
.split14-content-wrapper {
    position: absolute;
    right: 5%;
    bottom: 10%;
    max-width: 420px;
    background: var(--color-bg-overlay);
    backdrop-filter: blur(10px);
    padding: 2rem 2.5rem;
    border-radius: 1.2rem;
    box-shadow: 0 8px 25px var(--color-shadow-light);
    opacity: 0;
    transform: translateY(40px);
    transition: all 1.2s ease;
}

.split14-content-wrapper.visible {
    opacity: 1;
    transform: translateY(0);
}

.split14-content h2 {
    font-size: clamp(1.8rem, 3vw, 2.6rem);
    color: var(--color-titulo);
    margin-bottom: 1.2rem;
    font-weight: 700;
    line-height: 1.2;
}

.split14-content p {
    color: var(--color-subtitulo);
    font-size: 1.05rem;
    line-height: 1.7;
    margin-bottom: 1.5rem;
}

.split14-btn {
    display: inline-block;
    padding: 0.75rem 1.8rem;
    background: var(--color-btn-start);
    color: var(--color-texto-boton);
    border-radius: var(--border-radius);
    text-decoration: none;
    font-weight: 600;
    transition: all 0.3s ease;
}

.split14-btn:hover {
    background: var(--color-btn-hover-bg);
    transform: translateY(-3px);
    box-shadow: 0 6px 16px var(--color-btn-shadow);
}

/* 📱 Responsive */
@media (max-width: 992px) {
    .split14-container {
        flex-direction: column;
        align-items: center;
    }

    .split14-image-wrapper {
        height: 500px;
        width: 100%;
    }

    .split14-content-wrapper {
        position: relative;
        right: auto;
        bottom: auto;
        margin-top: -80px;
        max-width: 90%;
    }
}

/* ================================
   🧩 SPLIT 15 - Minimal Inverted Asymmetry
=================================== */
/* ================================
   🧩 SPLIT 15 - Modern Framed Composition (Variables Globales)
=================================== */
.split15-section {
    width: 100%;
    background: linear-gradient(135deg, var(--color-bg), #f0f0f0);
    padding: 120px 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

.split15-container {
    display: grid;
    grid-template-columns: 45% 55%;
    align-items: center;
    gap: 4rem;
    width: min(90%, 1200px);
    margin: 0 auto;
}

/* 🖼️ Imagen dentro de un marco */
.split15-frame {
    position: relative;
    background: var(--color-btn-end);
    padding: 1rem;
    border-radius: 1.5rem;
    box-shadow: 0 8px 40px var(--color-btn-shadow);
    transform: translateY(40px);
    transition: all 0.8s ease;
}

.split15-frame:hover {
    transform: translateY(0);
    box-shadow: 0 12px 45px var(--color-btn-shadow-hover);
}

.split15-image-wrapper {
    border-radius: 1rem;
    overflow: hidden;
    height: 460px;
}

.split15-image-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transform: scale(1.05);
    transition: transform 1.2s ease;
}

.split15-image-wrapper:hover img {
    transform: scale(1.1);
}

/* ✍️ Contenido */
.split15-content {
    opacity: 0;
    transform: translateX(-60px);
    transition: all 1s ease;
}

.split15-content.visible {
    opacity: 1;
    transform: translateX(0);
}

.split15-content h2 {
    font-size: clamp(2rem, 4vw, 2.8rem);
    color: var(--color-titulo);
    font-weight: 700;
    margin-bottom: 1.5rem;
    line-height: 1.2;
}

.split15-content p {
    font-size: 1.1rem;
    color: var(--color-subtitulo);
    line-height: 1.8;
    margin-bottom: 2rem;
    max-width: 520px;
}

.split15-btn {
    display: inline-block;
    padding: 0.9rem 2.2rem;
    background: linear-gradient(120deg, var(--color-btn-start), var(--color-btn-end));
    color: var(--color-texto-boton);
    border-radius: var(--border-radius);
    text-decoration: none;
    font-weight: 600;
    transition: all 0.3s ease;
}

.split15-btn:hover {
    background: linear-gradient(120deg, var(--color-btn-end), var(--color-btn-start));
    transform: translateY(-3px);
}

/* Responsive */
@media (max-width: 992px) {
    .split15-container {
        grid-template-columns: 1fr;
        gap: 3rem;
        text-align: center;
    }

    .split15-frame {
        transform: none;
        height: auto;
    }

    .split15-content {
        transform: none;
        opacity: 1;
    }

    .split15-image-wrapper {
        height: 380px;
    }

    .split15-content p {
        margin: 0 auto 2rem;
    }
}

/* ===========================
   🎞️ HERO SLIDER 1 – PROFESSIONAL REFINEMENT (v6.1) con variables globales
=========================== */

/* --- Reset --- */
html,
body {
    margin: 0;
    padding: 0;
    overflow-x: hidden;
    width: 100%;
    font-family: "Poppins", "Inter", sans-serif;
    scroll-behavior: smooth;
}

/* --- Sección principal --- */
.slider1-hero-section {
    position: relative;
    width: 100%;
    height: 100vh;
    overflow: hidden;
    background-color: var(--color-bg);
    color: var(--text-color);
}

/* --- Imagen de fondo --- */
.slider1-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: brightness(0.92) contrast(1.08) saturate(1.1);
    transition: transform 1.8s ease, filter 0.8s ease;
}

.slider1-img:hover {
    transform: scale(1.03);
    filter: brightness(0.96) contrast(1.1);
}

/* --- Overlay (degradado equilibrado) --- */
.carousel-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to bottom,
            var(--overlay-light) 0%,
            var(--overlay-dark) 60%,
            rgba(0, 0, 0, 0.45) 100%);
    z-index: 1;
}

/* --- Texto principal --- */
.carousel-caption {
    position: absolute;
    inset: 0;
    z-index: 2;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    text-align: center;
    padding: 0 1.5rem;
    pointer-events: none;
}

/* --- Título --- */
.slider1-title {
    font-size: clamp(2.4rem, 5vw, 4rem);
    font-weight: 700;
    letter-spacing: -0.01em;
    color: var(--color-titulo);
    margin-bottom: 1rem;
    text-shadow: 0 4px 14px rgba(0, 0, 0, 0.45);
    animation: fadeDown 1s ease both;
}

/* --- Subtítulo --- */
.slider1-subtitle {
    font-size: clamp(1rem, 2vw, 1.4rem);
    color: var(--color-subtitulo);
    max-width: 720px;
    line-height: 1.5;
    font-weight: 400;
    margin: 0 auto;
    animation: fadeUp 1.1s ease both;
}

/* --- Fondo translúcido (solo bloque de texto) --- */
.carousel-caption::before {
    content: "";
    position: absolute;
    inset: auto 0 auto 0;
    bottom: 25%;
    margin: auto;
    background: rgba(255, 255, 255, 0.07);
    border-radius: 1.25rem;
    backdrop-filter: blur(12px) brightness(1.15);
    width: 90%;
    max-width: 800px;
    height: auto;
    min-height: 180px;
    z-index: -1;
}

/* --- Indicadores --- */
.carousel-indicators [data-bs-target] {
    background-color: rgba(255, 255, 255, 0.65);
    width: 10px;
    height: 10px;
    border-radius: 50%;
    margin: 0 4px;
    transition: transform 0.25s ease, background-color 0.25s ease;
}

.carousel-indicators .active {
    background-color: #fff;
    transform: scale(1.2);
    box-shadow: 0 0 10px rgba(255, 255, 255, 0.4);
}

/* --- Controles --- */
.carousel-control-prev-icon,
.carousel-control-next-icon {
    filter: drop-shadow(0 0 6px rgba(0, 0, 0, 0.6));
    transition: transform 0.3s ease, filter 0.3s ease;
}

.carousel-control-prev-icon:hover,
.carousel-control-next-icon:hover {
    transform: scale(1.15);
    filter: drop-shadow(0 0 10px rgba(255, 255, 255, 0.3));
}

/* =============================
   📱 RESPONSIVE DESIGN
============================= */

/* --- TABLET --- */
@media (max-width: 992px) {

    .slider1-hero-section,
    .slider1-img {
        height: 85vh;
    }

    .carousel-caption {
        justify-content: flex-start;
        padding-top: 6rem;
    }

    .slider1-title {
        font-size: clamp(1.8rem, 4vw, 3rem);
    }

    .slider1-subtitle {
        font-size: clamp(0.95rem, 1.8vw, 1.25rem);
        max-width: 600px;
    }

    .carousel-overlay {
        background: linear-gradient(to bottom,
                rgba(0, 0, 0, 0.05) 0%,
                rgba(0, 0, 0, 0.18) 60%,
                rgba(0, 0, 0, 0.35) 100%);
    }
}

/* --- MÓVILES --- */
@media (max-width: 576px) {

    .slider1-hero-section,
    .slider1-img {
        height: 80vh;
    }

    .carousel-caption {
        justify-content: flex-end;
        padding-bottom: 3.5rem;
    }

    .slider1-title {
        font-size: 1.6rem;
        line-height: 1.25;
    }

    .slider1-subtitle {
        font-size: 0.9rem;
        line-height: 1.4;
        max-width: 90%;
    }

    .carousel-caption::before {
        display: none;
        /* Evita ruido visual en pantallas pequeñas */
    }
}

/* =============================
   ✨ Animaciones sutiles
============================= */
@keyframes fadeDown {
    from {
        opacity: 0;
        transform: translateY(-20px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes fadeUp {
    from {
        opacity: 0;
        transform: translateY(20px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* =============================
   ✨ Animaciones suaves
============================= */
@keyframes fadeDown {
    from {
        opacity: 0;
        transform: translateY(-25px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes fadeUp {
    from {
        opacity: 0;
        transform: translateY(25px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* ===========================
   🎠 HERO SLIDER 2 (Horizontal Slide Optimizado)
=========================== */
/* ===========================
   🎠 HERO SLIDER 2 (Horizontal Slide)
   🌈 Estilo moderno y adaptable con variables globales
=========================== */

.slider2-hero-section {
    position: relative;
    width: 100%;
    height: 100vh;
    overflow: hidden;
    background: linear-gradient(135deg, var(--color1), var(--color2));
    /* ✅ Usando variables globales */
    color: var(--text-color);
}

.slider2-container {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
    border-radius: 0;
}

.slider2-wrapper {
    display: flex;
    transition: transform 1s ease-in-out;
    height: 100%;
}

.slider2-slide {
    position: relative;
    flex: 0 0 100%;
    height: 100%;
    overflow: hidden;
    border-radius: 0;
}

.slider2-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: brightness(0.9);
    transition: filter 0.6s ease;
}

.slider2-slide:hover .slider2-img {
    filter: brightness(1);
}

/* 🎬 Texto sobre la imagen */
.slider2-caption {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
    color: var(--color-titulo);
    text-shadow: 0 4px 20px rgba(0, 0, 0, 0.6);
    max-width: 80%;
    background: rgba(0, 0, 0, 0.35);
    padding: 1.5rem 2rem;
    border-radius: 1rem;
    backdrop-filter: blur(6px);
}

.slider2-caption h2 {
    font-size: 3rem;
    font-weight: 700;
    margin-bottom: 0.5rem;
    letter-spacing: 1px;
}

.slider2-caption p {
    font-size: 1.25rem;
    opacity: 0.9;
    color: var(--color-subtitulo);
}

/* 🔘 Indicadores */
.slider2-indicators {
    position: absolute;
    bottom: 25px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    gap: 12px;
    z-index: 10;
}

.slider2-indicators .dot {
    width: 12px;
    height: 12px;
    background: rgba(255, 255, 255, 0.6);
    border-radius: 50%;
    cursor: pointer;
    transition: background 0.3s, transform 0.2s;
}

.slider2-indicators .dot.active {
    background: #fff;
    transform: scale(1.2);
}

/* ⏪⏩ Controles */
.slider2-btn {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(255, 255, 255, 0.3);
    border: none;
    color: var(--color-bg);
    font-size: 2rem;
    padding: 10px 15px;
    cursor: pointer;
    border-radius: 50%;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);
    transition: all 0.3s ease;
    z-index: 20;
    backdrop-filter: blur(4px);
}

.slider2-btn:hover {
    background: rgba(255, 255, 255, 0.7);
    color: var(--color1);
    transform: translateY(-50%) scale(1.1);
}

.slider2-btn.prev {
    left: 20px;
}

.slider2-btn.next {
    right: 20px;
}

/* 🌐 Responsividad */
@media (max-width: 768px) {
    .slider2-caption h2 {
        font-size: 2rem;
    }

    .slider2-caption p {
        font-size: 1rem;
    }
}

/* ===========================
   🕊️ HERO SLIDER 3 (Parallax Effect)
=========================== */
/* ===========================
   🕊️ HERO SLIDER 3 (Parallax Effect Mejorado)
=========================== */
/* ===========================
   🕊️ HERO SLIDER 3 (Parallax Effect Refinado)
   🌈 Usando variables globales
=========================== */

.slider3-hero-section {
    position: relative;
    width: 100%;
    height: 100vh;
    overflow: hidden;
    background: linear-gradient(135deg, var(--color1), var(--color2));
    color: var(--text-color);
    font-family: 'Poppins', sans-serif;
}

/* Contenedor del slider */
.slider3-container {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

/* Wrapper de slides */
.slider3-wrapper {
    display: flex;
    height: 100%;
    transition: transform 1s ease-in-out;
}

/* Cada slide */
.slider3-slide {
    position: relative;
    flex: 0 0 100%;
    height: 100%;
    overflow: hidden;
}

/* Imagen con efecto Parallax */
.slider3-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 1s ease-out;
    filter: brightness(0.85) contrast(1.1);
    transform: scale(1.05);
}

/* Movimiento Parallax */
.slider3-slide.active .slider3-img {
    transform: scale(1);
}

/* =====================
   ✨ ESTILO NUEVO DEL TEXTO
===================== */
.slider3-content {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
    color: var(--text-color);
    z-index: 5;
    max-width: 80%;
    padding: 2rem 2.5rem;

    /* 🔹 Fondo translúcido con gradiente y brillo sutil */
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.12), rgba(255, 255, 255, 0.05));
    border: 1px solid rgba(255, 255, 255, 0.25);
    border-radius: 1.5rem;
    backdrop-filter: blur(10px);
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.4);
}

.slider3-content h2 {
    font-size: 3rem;
    font-weight: 600;
    letter-spacing: 1px;
    margin-bottom: 0.6rem;
    text-transform: uppercase;
    background: linear-gradient(90deg, var(--color-titulo), var(--color-titulo));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.slider3-content p {
    font-size: 1.2rem;
    font-weight: 300;
    letter-spacing: 0.5px;
    color: var(--color-subtitulo);
    text-shadow: 0 2px 10px rgba(0, 0, 0, 0.4);
    line-height: 1.6;
}

/* =====================
   ⏪⏩ Botones
===================== */
.slider3-nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(255, 255, 255, 0.2);
    border: 1px solid rgba(255, 255, 255, 0.3);
    color: var(--text-color);
    font-size: 2rem;
    padding: 10px 15px;
    cursor: pointer;
    border-radius: 50%;
    transition: all 0.3s ease;
    z-index: 20;
    backdrop-filter: blur(6px);
}

.slider3-nav:hover {
    background: rgba(255, 255, 255, 0.6);
    color: var(--color1);
    transform: translateY(-50%) scale(1.15);
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);
}

#slider3-prev_18 {
    left: 25px;
}

#slider3-next_18 {
    right: 25px;
}

/* Indicadores */
.slider3-indicators {
    position: absolute;
    bottom: 25px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    gap: 12px;
    z-index: 10;
}

.slider3-indicators .dot {
    width: 12px;
    height: 12px;
    background: rgba(255, 255, 255, 0.4);
    border-radius: 50%;
    cursor: pointer;
    transition: background 0.3s, transform 0.2s;
}

.slider3-indicators .dot.active {
    background: #fff;
    transform: scale(1.2);
}

/* 🌐 Responsividad */
@media (max-width: 768px) {
    .slider3-content {
        padding: 1.2rem 1.6rem;
    }

    .slider3-content h2 {
        font-size: 2rem;
    }

    .slider3-content p {
        font-size: 1rem;
    }
}

/* ===========================
   🌟 SLIDER 4 - ZOOM IN / OUT
   🌈 Usando variables globales
=========================== */
.slider4-hero-section {
    position: relative;
    width: 100%;
    height: 100vh;
    overflow: hidden;
    background: var(--color-bg);
    display: flex;
    justify-content: center;
    align-items: center;
}

.slider4-container {
    position: relative;
    width: 100%;
    height: 100%;
}

.slider4-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
}

.slider4-slide {
    position: absolute;
    inset: 0;
    opacity: 0;
    transform: scale(1.2);
    transition: transform 2s ease, opacity 2s ease;
}

.slider4-slide.active {
    opacity: 1;
    transform: scale(1);
    z-index: 2;
}

.slider4-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: brightness(0.7);
}

.slider4-content {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
    color: var(--text-color);
    z-index: 3;
    max-width: 80%;
}

.slider4-content h2 {
    font-size: 3rem;
    font-weight: 700;
    text-transform: uppercase;
    margin-bottom: 10px;
    color: var(--color-titulo);
    animation: fadeInUp 1.5s ease;
}

.slider4-content p {
    font-size: 1.2rem;
    opacity: 0.9;
    color: var(--color-subtitulo);
    animation: fadeInUp 2s ease;
}

/* Indicadores */
.slider4-indicators {
    position: absolute;
    bottom: 30px;
    width: 100%;
    display: flex;
    justify-content: center;
    gap: 12px;
    z-index: 4;
}

.slider4-indicators .dot {
    width: 12px;
    height: 12px;
    background: rgba(255, 255, 255, 0.6);
    border-radius: 50%;
    cursor: pointer;
    transition: background 0.3s ease;
}

.slider4-indicators .dot.active {
    background: var(--color1);
}

/* Controles */
.slider4-nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(255, 255, 255, 0.2);
    color: var(--text-color);
    font-size: 2rem;
    padding: 10px 15px;
    border: none;
    cursor: pointer;
    z-index: 4;
    transition: background 0.3s ease, transform 0.3s ease;
    backdrop-filter: blur(4px);
}

.slider4-nav:hover {
    background: rgba(255, 255, 255, 0.5);
    transform: scale(1.1);
}

.slider4-nav.prev {
    left: 20px;
}

.slider4-nav.next {
    right: 20px;
}

/* Animaciones */
@keyframes fadeInUp {
    from {
        transform: translateY(20px);
        opacity: 0;
    }

    to {
        transform: translateY(0);
        opacity: 1;
    }
}

/* 🌐 Responsividad */
@media (max-width: 768px) {
    .slider4-content h2 {
        font-size: 2rem;
    }

    .slider4-content p {
        font-size: 1rem;
    }
}

/* ===========================
   🪞 SLIDER 5 - CRISTAL ESMERILADO BRILLANTE
   🌈 Usando variables globales
=========================== */
.slider5-hero-section {
    position: relative;
    width: 100%;
    height: 100vh;
    overflow: hidden;
    background: var(--color-bg);
    color: var(--text-color);
}

/* Contenedor general */
.slider5-container {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

/* Wrapper */
.slider5-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
}

/* Slide individual */
.slider5-slide {
    position: absolute;
    inset: 0;
    opacity: 0;
    transition: opacity 1.5s ease, filter 1s ease;
}

.slider5-slide.active {
    opacity: 1;
    z-index: 5;
    filter: blur(0);
}

/* Imagen */
.slider5-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 8s ease, filter 1.5s ease;
    filter: blur(5px) brightness(0.9);
}

.slider5-slide.active .slider5-img {
    filter: blur(0px) brightness(1);
    transform: scale(1.05);
}

/* 🌟 Contenido con efecto "cristal brillante" */
.slider5-content {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
    padding: 2.5rem 3.5rem;
    background: rgba(255, 255, 255, 0.18);
    border: 1px solid rgba(255, 255, 255, 0.4);
    border-radius: 2rem;
    backdrop-filter: blur(18px) saturate(180%);
    -webkit-backdrop-filter: blur(18px) saturate(180%);
    box-shadow:
        0 0 25px rgba(255, 255, 255, 0.4),
        0 0 80px rgba(255, 255, 255, 0.2),
        inset 0 0 25px rgba(255, 255, 255, 0.3);
    max-width: 75%;
    z-index: 10;
    transition: all 0.5s ease;
}

/* ✨ Título con halo brillante */
.slider5-content h2 {
    font-size: 3rem;
    font-weight: 700;
    margin-bottom: 0.75rem;
    color: var(--color-titulo);
    text-shadow:
        0 0 10px var(--color-titulo),
        0 0 30px var(--color2),
        0 0 60px var(--color3);
}

/* 🌈 Subtítulo con luz difusa */
.slider5-content p {
    font-size: 1.3rem;
    opacity: 0.95;
    color: var(--color-subtitulo);
    line-height: 1.7;
    text-shadow: 0 0 15px var(--color-subtitulo);
}

/* Botones de navegación */
.slider5-nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(255, 255, 255, 0.25);
    border: none;
    color: var(--text-color);
    font-size: 2rem;
    padding: 12px 17px;
    cursor: pointer;
    border-radius: 50%;
    transition: all 0.3s ease;
    z-index: 20;
    backdrop-filter: blur(6px);
    box-shadow: 0 0 15px rgba(255, 255, 255, 0.4);
}

.slider5-nav:hover {
    background: rgba(255, 255, 255, 0.8);
    color: var(--color-bg);
    transform: translateY(-50%) scale(1.1);
    box-shadow: 0 0 25px rgba(255, 255, 255, 0.8);
}

#slider5-prev_20 {
    left: 25px;
}

#slider5-next_20 {
    right: 25px;
}

/* Indicadores */
.slider5-indicators {
    position: absolute;
    bottom: 25px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    gap: 12px;
    z-index: 10;
}

.slider5-indicators .dot {
    width: 12px;
    height: 12px;
    background: rgba(255, 255, 255, 0.6);
    border-radius: 50%;
    cursor: pointer;
    transition: background 0.3s, transform 0.2s, box-shadow 0.3s;
}

.slider5-indicators .dot.active {
    background: var(--color1);
    transform: scale(1.3);
    box-shadow: 0 0 10px var(--color3);
}

/* 🌐 Responsivo */
@media (max-width: 768px) {
    .slider5-content {
        padding: 1.5rem 2rem;
        max-width: 90%;
    }

    .slider5-content h2 {
        font-size: 2rem;
    }

    .slider5-content p {
        font-size: 1rem;
    }
}

/* ===========================
   🧩 SLIDER 6 - SPLIT IMAGE/TEXT
=========================== */
/* ===========================
   🪟 SLIDER 6 - SPLIT
=========================== */
/* ===========================
   🪟 SLIDER 6 - SPLIT (PREMIUM)
   🌈 Variables globales aplicadas
=========================== */
.slider6-hero-section {
    position: relative;
    width: 100%;
    height: 100vh;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--color-bg);
    color: var(--text-color);
    font-family: 'Poppins', sans-serif;
}

.slider6-container {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.slider6-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
}

/* ===== SLIDE BASE ===== */
.slider6-slide {
    position: absolute;
    inset: 0;
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: center;
    opacity: 0;
    transition: opacity 1s ease, transform 1s ease;
    z-index: 0;
}

.slider6-slide.active {
    opacity: 1;
    z-index: 2;
}

/* ===== IMAGEN ===== */
.slider6-image {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.slider6-image::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(to right, var(--overlay-dark), transparent);
    pointer-events: none;
}

.slider6-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 5s ease;
    filter: brightness(0.9);
}

.slider6-slide.active .slider6-image img {
    transform: scale(1.08);
}

/* ===== CONTENIDO ===== */
.slider6-content {
    padding: 3rem 4rem;
    background: rgba(255, 255, 255, 0.65);
    backdrop-filter: blur(15px) saturate(180%);
    border-radius: 2rem;
    max-width: 600px;
    margin-left: -50px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.1);
    animation: fadeInUp 1.2s ease both;
    color: var(--text-color);
}

.slider6-content h2 {
    font-size: 2.6rem;
    font-weight: 700;
    margin-bottom: 1rem;
    color: var(--color-titulo);
    letter-spacing: 0.5px;
}

.slider6-content p {
    font-size: 1.1rem;
    color: var(--color-subtitulo);
    line-height: 1.6;
}

/* Variaciones para temas oscuros o claros */
[data-theme="dark"] .slider6-content {
    background: rgba(25, 25, 25, 0.55);
    color: var(--text-color);
}

[data-theme="dark"] .slider6-content h2 {
    color: var(--color-title-start);
}

[data-theme="dark"] .slider6-content p {
    color: var(--text-color);
}

/* ===== BOTONES ===== */
.slider6-nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(255, 255, 255, 0.3);
    border: none;
    color: var(--text-color);
    font-size: 1.8rem;
    padding: 12px 18px;
    cursor: pointer;
    border-radius: 50%;
    transition: all 0.3s ease;
    z-index: 10;
    backdrop-filter: blur(6px);
}

.slider6-nav:hover {
    background: rgba(255, 255, 255, 0.8);
    color: var(--color-bg);
    transform: translateY(-50%) scale(1.1);
}

#slider6-prev_21 {
    left: 30px;
}

#slider6-next_21 {
    right: 30px;
}

/* ===== INDICADORES ===== */
.slider6-indicators {
    position: absolute;
    bottom: 25px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    gap: 10px;
    z-index: 10;
}

.slider6-indicators .dot {
    width: 12px;
    height: 12px;
    background: rgba(255, 255, 255, 0.5);
    border-radius: 50%;
    border: 1px solid rgba(0, 0, 0, 0.2);
    cursor: pointer;
    transition: all 0.3s ease;
}

.slider6-indicators .dot.active {
    background: var(--color1);
    transform: scale(1.3);
    box-shadow: 0 0 10px var(--color3);
}

/* ===== ANIMACIONES ===== */
@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* ===== RESPONSIVO ===== */
@media (max-width: 1024px) {
    .slider6-slide {
        grid-template-columns: 55% 45%;
    }

    .slider6-content {
        padding: 2rem;
        margin-left: 0;
    }
}

@media (max-width: 768px) {
    .slider6-slide {
        grid-template-columns: 1fr;
    }

    .slider6-content {
        margin: 0 auto;
        border-radius: 1.5rem;
        text-align: center;
        padding: 2rem;
    }

    .slider6-content h2 {
        font-size: 2rem;
    }

    .slider6-content p {
        font-size: 1rem;
    }

    .slider6-nav {
        font-size: 1.5rem;
        padding: 8px 12px;
    }
}

/* =============== 🪄 SLIDER 7 - TEXTO DESLIZANTE INDEPENDIENTE =============== */

.slider7-hero-section {
    position: relative;
    width: 100%;
    height: 100vh;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--color-bg);
}

.slider7-background img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 1;
    transition: transform 10s ease-in-out;
}

/* Efecto suave en el fondo */
.slider7-background img:hover {
    transform: scale(1.05);
}

/* Capa semitransparente */
.slider7-overlay {
    position: absolute;
    inset: 0;
    background: var(--overlay-dark);
    z-index: 2;
}

/* Contenedor del texto */
.slider7-text-wrapper {
    position: relative;
    z-index: 3;
    max-width: 800px;
    text-align: center;
    padding: 20px;
    color: var(--text-color);
    overflow: hidden;
}

/* Texto principal animado */
.slider7-text {
    font-size: 3rem;
    font-weight: 700;
    margin-bottom: 10px;
    color: var(--color-titulo);
    animation: slideText 8s infinite ease-in-out;
}

/* Subtexto */
.slider7-subtext {
    font-size: 1.4rem;
    font-weight: 400;
    color: var(--color-subtitulo);
    animation: slideSubtext 10s infinite ease-in-out;
    opacity: 0.9;
}

/* Animaciones independientes */
@keyframes slideText {
    0% {
        transform: translateY(100%);
        opacity: 0;
    }

    10%,
    50% {
        transform: translateY(0);
        opacity: 1;
    }

    60%,
    100% {
        transform: translateY(-100%);
        opacity: 0;
    }
}

@keyframes slideSubtext {
    0% {
        transform: translateY(100%);
        opacity: 0;
    }

    20%,
    60% {
        transform: translateY(0);
        opacity: 1;
    }

    70%,
    100% {
        transform: translateY(-100%);
        opacity: 0;
    }
}

/* 🌐 Responsivo */
@media (max-width: 768px) {
    .slider7-text {
        font-size: 2rem;
    }

    .slider7-subtext {
        font-size: 1rem;
    }
}

.slider8-section {
    position: relative;
    width: 100%;
    height: 100vh;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    color: var(--text-color);
}

.slider8-video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 1;
}

/* Gradiente de superposición dinámico usando variables globales */
.slider8-overlay {
    position: absolute;
    inset: 0;
    z-index: 2;
    opacity: 0.3;
    background: linear-gradient(135deg, var(--overlay-dark), #333333);
}

/* Contenido textual */
.slider8-content {
    position: relative;
    z-index: 3;
    max-width: 800px;
    padding: 2rem;
    animation: fadeInUp 2s ease-in-out;
}

.slider8-content h1 {
    font-size: 3rem;
    font-weight: bold;
    margin-bottom: 1rem;
    color: var(--color-title-start);
    background: linear-gradient(90deg, var(--color-titulo), var(--color-titulo));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.slider8-content p {
    font-size: 1.2rem;
    margin-bottom: 1.5rem;
    line-height: 1.6;
    color: var(--color-subtitulo);
}

.slider8-btn {
    background: linear-gradient(90deg, var(--color-btn-start), var(--color-btn-end));
    color: var(--color-texto-boton);
    border: none;
    padding: 12px 28px;
    border-radius: var(--border-radius);
    font-size: 1rem;
    cursor: pointer;
    box-shadow: 0 4px 15px var(--color-btn-shadow);
    transition: all 0.3s ease;
    text-decoration: none;
}

.slider8-btn:hover {
    background: linear-gradient(90deg, var(--color-btn-end), var(--color-btn-start));
    box-shadow: 0 6px 20px var(--color-btn-shadow-hover);
    transform: scale(1.05);
}

/* ========== SLIDER 9 - 3D PERSPECTIVE ROTATE ========== */
.slider9-section {
    position: relative;
    width: 100%;
    height: 100vh;
    overflow: hidden;
    color: var(--text-color);
    display: flex;
    align-items: center;
    justify-content: flex-start;
    padding-left: 8%;
    background: var(--color-bg);
}

/* Fondo dinámico con gradiente y blur */
.slider9-bg {
    position: absolute;
    inset: 0;
    z-index: 1;
    background: linear-gradient(120deg,
            var(--color1),
            var(--color2),
            var(--color3),
            var(--color4));
    background-size: 300% 300%;
    animation: slider9-bgMove 12s infinite alternate ease-in-out;
    opacity: 0.4;
    filter: blur(20px);
}

/* Animación del fondo */
@keyframes slider9-bgMove {
    0% {
        background-position: 0% 50%;
    }

    100% {
        background-position: 100% 50%;
    }
}

/* Contenido principal */
.slider9-content {
    position: relative;
    z-index: 5;
    max-width: 45%;
    text-shadow: 0 4px 10px rgba(0, 0, 0, 0.6);
    animation: slider9-fadeIn 1.2s ease-in forwards;
}

@keyframes slider9-fadeIn {
    from {
        opacity: 0;
        transform: translateY(20px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.slider9-main-title {
    font-size: 3.2rem;
    font-weight: 800;
    margin-bottom: 0.5rem;
    color: var(--color-titulo);
}

.slider9-main-subtitle {
    font-size: 1.2rem;
    line-height: 1.5;
    margin-bottom: 1.5rem;
    color: var(--color-subtitulo);
}

.slider9-btn {
    background: linear-gradient(90deg, var(--color-btn-start), var(--color-btn-end));
    color: var(--color-texto-boton);
    border: none;
    padding: 14px 32px;
    border-radius: var(--border-radius);
    font-size: 1rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s ease;
    box-shadow: 0 4px 15px var(--color-btn-shadow);
    text-decoration: none;
}

.slider9-btn:hover {
    transform: translateY(-3px) scale(1.05);
    filter: brightness(115%);
    box-shadow: 0 6px 20px var(--color-btn-shadow-hover);
}

/* Cubo */
.slider9-scene {
    position: absolute;
    bottom: 8%;
    right: 6%;
    width: 280px;
    height: 280px;
    perspective: 1000px;
    z-index: 3;
}

.slider9-cube {
    position: relative;
    width: 100%;
    height: 100%;
    transform-style: preserve-3d;
    animation: slider9-rotate 18s infinite linear;
}

.slider9-face {
    position: absolute;
    width: 100%;
    height: 100%;
    backface-visibility: hidden;
    overflow: hidden;
    border-radius: 18px;
    box-shadow: 0 10px 25px var(--overlay-dark);
}

.slider9-face img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: brightness(80%);
}

/* Posiciones */
.slider9-face1 {
    transform: rotateY(0deg) translateZ(140px);
}

.slider9-face2 {
    transform: rotateY(120deg) translateZ(140px);
}

.slider9-face3 {
    transform: rotateY(240deg) translateZ(140px);
}

/* Animación de rotación */
@keyframes slider9-rotate {
    0% {
        transform: rotateY(0deg);
    }

    33% {
        transform: rotateY(-120deg);
    }

    66% {
        transform: rotateY(-240deg);
    }

    100% {
        transform: rotateY(-360deg);
    }
}

/* Textos dentro de las caras */
.slider9-text {
    position: absolute;
    bottom: 15px;
    left: 15px;
    color: var(--text-color);
    text-shadow: 0 2px 6px rgba(0, 0, 0, 0.7);
}

.slider9-text h2 {
    font-size: 1.2rem;
    font-weight: 700;
}

.slider9-text p {
    font-size: 0.9rem;
    opacity: 0.85;
}

/* Responsividad */
@media (max-width: 992px) {
    .slider9-section {
        flex-direction: column;
        justify-content: center;
        text-align: center;
        padding: 2rem;
    }

    .slider9-content {
        max-width: 90%;
    }

    .slider9-scene {
        position: relative;
        right: 0;
        bottom: 0;
        margin-top: 2rem;
    }
}

/* ==============================
   SLIDER 10 - FAN CAROUSEL
   (3D FLOAT EFFECT - TILT)
============================== */

/* Sección principal */
.slider10-section {
    position: relative;
    width: 100%;
    height: 100vh;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-end;
    color: var(--text-color);
    text-align: center;
    font-family: 'Poppins', sans-serif;
    background: radial-gradient(circle at top, var(--color1), var(--color2));
}

/* Fondo con gradiente animado */
.slider10-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, var(--color1), var(--color2), var(--color3), var(--color4));
    opacity: 0.85;
    animation: slider10-gradientShift 10s ease-in-out infinite alternate;
    z-index: 1;
}

@keyframes slider10-gradientShift {
    0% {
        background: linear-gradient(135deg, var(--color1), var(--color2), var(--color3), var(--color4));
    }

    100% {
        background: linear-gradient(135deg, var(--color4), var(--color3), var(--color2), var(--color1));
    }
}

/* Contenedor 3D */
.slider10-fan-container {
    position: absolute;
    top: 18%;
    left: 50%;
    transform: translateX(-50%);
    perspective: 2000px;
    z-index: 2;
    width: 100%;
    max-width: 1200px;
}

/* Fan de tarjetas */
.slider10-fan {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1.5vw;
    transform-style: preserve-3d;
    flex-wrap: nowrap;
    margin: 0 auto;
}

/* Tarjetas */
.slider10-card {
    width: clamp(180px, 18vw, 250px);
    height: clamp(250px, 25vw, 350px);
    border-radius: 12px;
    overflow: hidden;
    background: var(--color-bg);
    box-shadow: 0 18px 30px var(--overlay-dark);
    transition: transform 0.5s ease, box-shadow 0.5s ease, filter 0.4s ease, opacity 0.5s ease;
    position: relative;
    cursor: pointer;
    transform: translateZ(0px) rotateX(0deg) rotateY(0deg);
    opacity: 1;
}

.slider10-card img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: brightness(80%);
    transition: filter 0.4s ease;
}

/* Hover 3D */
.slider10-card:hover {
    transform: translateZ(60px) rotateX(4deg) rotateY(-4deg);
    box-shadow: 0 22px 40px var(--overlay-dark);
    filter: brightness(100%);
    z-index: 10;
}

/* Animación flotante */
@keyframes floatTilt10 {
    0% {
        transform: translateY(0) rotateY(0deg) rotateX(0deg);
    }

    100% {
        transform: translateY(-10px) rotateY(2deg) rotateX(1deg);
    }
}

/* Aplicar animaciones a cada tarjeta */
.slider10-card:nth-child(1) {
    animation: floatTilt10 6s ease-in-out infinite alternate;
}

.slider10-card:nth-child(2) {
    animation: floatTilt10 7s ease-in-out infinite alternate-reverse;
}

.slider10-card:nth-child(3) {
    animation: floatTilt10 5s ease-in-out infinite alternate;
}

.slider10-card:nth-child(4) {
    animation: floatTilt10 6.5s ease-in-out infinite alternate-reverse;
}

.slider10-card:nth-child(5) {
    animation: floatTilt10 5.5s ease-in-out infinite alternate;
}

/* Texto sobre imagen */
.slider10-text {
    position: absolute;
    bottom: 12px;
    left: 12px;
    right: 12px;
    background: var(--overlay-dark);
    padding: 10px;
    border-radius: 10px;
    transition: background 0.3s ease;
}

.slider10-card:hover .slider10-text {
    background: rgba(0, 0, 0, 0.65);
}

.slider10-text h3 {
    margin: 0;
    font-size: 1rem;
    font-weight: 700;
    color: var(--color-titulo);
}

.slider10-text p {
    margin: 3px 0 0;
    font-size: 0.85rem;
    color: var(--color-subtitulo);
}

/* Texto principal inferior */
.slider10-main-text {
    position: relative;
    z-index: 3;
    margin-bottom: 50px;
    transform: translateY(-20px);
    color: var(--text-color);
}

.slider10-main-text h1 {
    font-size: 2.2rem;
    font-weight: 700;
    margin-bottom: 10px;
    color: var(--color-titulo);
}

.slider10-main-text p {
    font-size: 0.95rem;
    max-width: 500px;
    margin: 0 auto 12px;
    opacity: 0.9;
    color: var(--color-subtitulo);
}

/* =============================
   MEDIA QUERIES PARA TARJETAS VISIBLES
============================= */

/* Desktop grande: mostrar las 5 tarjetas */
@media (min-width: 1200px) {
    .slider10-card {
        display: block;
        opacity: 1;
        transform: scale(1) translateY(0);
    }
}

/* Laptops/Tablets: mostrar solo 2 tarjetas */
@media (max-width: 1199px) and (min-width: 768px) {
    .slider10-card {
        display: none;
    }

    .slider10-card:nth-child(1),
    .slider10-card:nth-child(2),

    .slider10-card:nth-child(4) {
        display: block;
    }

    /* Texto principal inferior */
    .slider10-main-text {
        position: relative;
        z-index: 3;
        margin-bottom: 50px;
        transform: translateY(-50px);
        color: var(--text-color);
    }

    .slider10-main-text h1 {
        font-size: 5rem;
        font-weight: 700;
        margin-bottom: 50px;
        color: var(--color-titulo);
    }

    .slider10-main-text p {
        font-size: 2rem;
        max-width: 500px;
        margin-bottom: 160px;
        opacity: 0.9;
        color: var(--color-subtitulo);
    }
}

/* Móviles: mostrar solo 1 tarjeta */
@media (max-width: 767px) {
    .slider10-card {
        display: none;
    }

    .slider10-card:nth-child(1) {
        display: block;
        width: 70vw;
        height: 80vw;
    }

    .slider10-main-text h1 {
        font-size: 1.5rem;
    }

    .slider10-main-text p {
        font-size: 0.8rem;
    }
}

/* ========== SLIDER 11 - COVERFLOW EFFECT ========== */
.slider11-section {
    position: relative;
    width: 100%;
    height: 100vh;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-end;
    color: var(--text-color);
    text-align: center;
    font-family: 'Poppins', sans-serif;
}

/* Fondo con gradiente */
.slider11-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, var(--color1), var(--color2));
    z-index: 1;
}

/* COVERFLOW */
.slider11-coverflow-container {
    position: absolute;
    top: 10%;
    left: 50%;
    transform: translateX(-50%);
    perspective: 1200px;
    z-index: 2;
}

.slider11-coverflow {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 20px;
    transform-style: preserve-3d;
}

/* Tarjetas con ancho responsivo y más compacto */
.slider11-card {
    width: clamp(140px, 12vw, 200px);
    /* ancho mínimo 140px, máximo 200px, adaptable al 15% del viewport */
    height: clamp(200px, 20vw, 280px);
    /* altura proporcional al ancho */
    border-radius: 14px;
    overflow: hidden;
    background: var(--color-bg);
    box-shadow: 0 10px 25px var(--overlay-dark);
    transition: transform 0.6s ease, box-shadow 0.3s ease, filter 0.3s ease;
    position: relative;
    cursor: pointer;
    transform-origin: center center;
}

.slider11-card img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: brightness(80%);
    transition: filter 0.3s ease;
}

/* Posiciones tipo Coverflow */
.slider11-card:nth-child(1) {
    transform: rotateY(35deg) translateX(-160px) translateZ(-80px) scale(0.85);
    z-index: 1;
}

.slider11-card:nth-child(2) {
    transform: rotateY(20deg) translateX(-80px) translateZ(-40px) scale(0.93);
    z-index: 2;
}

.slider11-card:nth-child(3) {
    transform: rotateY(0deg) translateX(0) translateZ(0) scale(1);
    z-index: 3;
}

.slider11-card:nth-child(4) {
    transform: rotateY(-20deg) translateX(80px) translateZ(-40px) scale(0.93);
    z-index: 2;
}

.slider11-card:nth-child(5) {
    transform: rotateY(-35deg) translateX(160px) translateZ(-80px) scale(0.85);
    z-index: 1;
}

/* Hover refinado */
.slider11-card:hover {
    transform: translateZ(80px) scale(1.05) rotateY(0deg);
    z-index: 10;
    box-shadow: 0 25px 50px var(--overlay-dark);
}

.slider11-card:hover img {
    filter: brightness(100%);
}

/* Texto sobre imagen */
.slider11-text {
    position: absolute;
    bottom: 15px;
    left: 15px;
    right: 15px;
    background: var(--overlay-dark);
    padding: 10px;
    border-radius: 10px;
    transition: background 0.3s ease;
}

.slider11-card:hover .slider11-text {
    background: rgba(0, 0, 0, 0.6);
}

.slider11-text h3 {
    margin: 0;
    font-size: 1.1rem;
    font-weight: 700;
    color: var(--color-titulo);
}

.slider11-text p {
    margin: 3px 0 0;
    font-size: 0.9rem;
    color: var(--color-subtitulo);
}

/* Texto principal abajo */
.slider11-main-text {
    position: relative;
    z-index: 3;
    margin-bottom: 100px;
    transform: translateY(-80px);
    color: var(--text-color);
}

.slider11-main-text h1 {
    font-size: 3rem;
    font-weight: 700;
    margin-bottom: 10px;
    color: var(--color-titulo);
}

.slider11-main-text p {
    font-size: 1.2rem;
    max-width: 700px;
    margin: 0 auto 20px;
    opacity: 0.9;
    color: var(--color-subtitulo);
}

.slider11-btn {
    background: linear-gradient(90deg, var(--color-btn-start), var(--color-btn-end));
    color: var(--color-texto-boton);
    border: none;
    padding: 12px 28px;
    border-radius: var(--border-radius);
    font-weight: 600;
    font-size: 1rem;
    cursor: pointer;
    box-shadow: 0 8px 20px var(--color-btn-shadow);
    transition: all 0.3s ease;
    text-decoration: none;
}

.slider11-btn:hover {
    transform: scale(1.07);
    background: linear-gradient(90deg, var(--color-btn-start), var(--color-btn-end));
    box-shadow: 0 10px 25px var(--color-btn-shadow-hover);
}

/* Laptops/Tablets: mostrar solo 2 tarjetas */
@media (max-width: 1199px) and (min-width: 768px) {
    .slider11-card {
        display: none;
    }

    .slider11-card:nth-child(2),
    .slider11-card:nth-child(3),

    .slider11-card:nth-child(4) {
        display: block;
    }

    /* Texto principal inferior */
    .slider11-main-text {
        position: relative;
        z-index: 3;
        margin-bottom: 50px;
        transform: translateY(-50px);
        color: var(--text-color);
    }

    .slider11-main-text h1 {
        font-size: 5rem;
        font-weight: 700;
        margin-bottom: 50px;
        color: var(--color-titulo);
    }

    .slider11-main-text p {
        font-size: 2rem;
        max-width: 500px;
        margin-bottom: 160px;
        opacity: 0.9;
        color: var(--color-subtitulo);
    }

    .slider11-btn {
        background: linear-gradient(90deg, var(--color-btn-start), var(--color-btn-end));
        color: var(--color-texto-boton);
        border: none;
        padding: 12px 28px;
        border-radius: 30px;
        font-weight: 600;
        font-size: 1rem;
        cursor: pointer;
        box-shadow: 0 8px 20px var(--color-btn-shadow);
        transition: all 0.3s ease;
        margin-bottom: 160px;
    }
}

@media (max-width: 767px) {
    .slider11-card {
        display: none;
    }

    .slider11-card:nth-child(3) {
        display: block;
        width: 70vw;
        height: 80vw;
    }

    .slider11-main-text h1 {
        font-size: 1.5rem;
    }

    .slider11-main-text p {
        font-size: 0.8rem;
    }

    /* Texto principal inferior */
    .slider11-main-text {
        position: relative;
        z-index: 3;
        margin-bottom: 50px;
        transform: translateY(-50px);
        color: var(--text-color);
    }

    .slider11-main-text h1 {
        font-size: 2.2rem;
        font-weight: 700;
        margin-top: 20px;
        margin-bottom: 20px;
        color: var(--color-titulo);
    }

    .slider11-main-text p {
        font-size: 1.8rem;
        max-width: 500px;
        margin-bottom: 20px;
        opacity: 0.9;
        color: var(--color-subtitulo);
    }

    .slider11-btn {
        background: linear-gradient(90deg, var(--color-btn-start), var(--color-btn-end));
        color: var(--color-texto-boton);
        border: none;
        padding: 12px 28px;
        border-radius: 30px;
        font-weight: 600;
        font-size: 1rem;
        cursor: pointer;
        box-shadow: 0 8px 20px var(--color-btn-shadow);
        transition: all 0.3s ease;

    }
}

/* ======= 🎢 SLIDER 12 - Tilt Carousel ======= */
.slider12-section_27 {
    position: relative;
    width: 100%;
    height: 100vh;
    background: linear-gradient(135deg, var(--color1), var(--color2));
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    perspective: 1000px;
}

.slider12-container_27 {
    display: flex;
    gap: 40px;
    transform-style: preserve-3d;
    transition: transform 1s ease;
}

.slider12-slide_27 {
    position: relative;
    width: clamp(180px, 18vw, 250px);
    height: clamp(250px, 25vw, 350px);
    overflow: hidden;
    border-radius: 20px;
    transform: rotateY(0deg);
    transition: transform 0.6s ease, box-shadow 0.6s ease;
    box-shadow: 0 15px 35px var(--overlay-dark);
    background: var(--color-bg);
}

.slider12-slide_27 img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s ease;
}

.slider12-slide_27:hover {
    transform: rotateY(15deg) scale(1.05) translateZ(30px);
    box-shadow: 0 25px 50px var(--overlay-dark);
}

.slider12-slide_27:hover img {
    transform: scale(1.1);
}

.slider12-content_27 {
    position: absolute;
    bottom: 20px;
    left: 20px;
    color: var(--color-titulo);
    text-shadow: 0 3px 10px var(--overlay-dark);
}

.slider12-content_27 h2 {
    font-size: 1.5rem;
    margin-bottom: 8px;
    color: var(--color-titulo);
}

.slider12-content_27 p {
    font-size: 1rem;
    opacity: 0.9;
    color: var(--color-subtitulo);
}

/* ==============================
   MEDIA QUERIES
============================== */

/* Laptops/Tablets: hero más pequeño y cards ligeramente más chicas */
@media (max-width: 1199px) and (min-width: 768px) {
    .slider12-section_27 {
        height: 75vh;
        /* hero más pequeño */
    }

    .slider12-slide_27 {
        width: clamp(160px, 20vw, 220px);
        height: clamp(220px, 28vw, 300px);
    }

    .slider12-content_27 h2 {
        font-size: 1.4rem;
    }

    .slider12-content_27 p {
        font-size: 0.95rem;
    }
}

/* Móviles: mostrar solo una tarjeta grande centrada */
@media (max-width: 767px) {
    .slider12-section_27 {
        height: 70vh;
        /* hero más pequeño */
    }

    .slider12-container_27 {
        justify-content: center;
    }

    .slider12-slide_27 {
        display: none;
        /* ocultar todas */
    }

    .slider12-slide_27:first-child {
        display: block;
        /* mostrar solo la primera */
        width: 80vw;
        /* tarjeta grande */
        height: 90vw;
    }

    .slider12-content_27 h2 {
        font-size: 1.8rem;
        /* texto grande y legible */
    }

    .slider12-content_27 p {
        font-size: 1.2rem;
    }
}

/* 🎨 Fondo general */
.slider13-section {
    position: relative;
    width: 100%;
    padding: 60px 20px;
    background: linear-gradient(135deg, var(--color1), var(--color2));
    /* uso de variables globales */
    display: flex;
    flex-direction: column;
    align-items: center;
    overflow: hidden;
}

.slider13-container {
    position: relative;
    width: 90%;
    max-width: 1100px;
    perspective: 1200px;
    margin-bottom: 50px;
}

.slider13-carousel {
    display: flex;
    gap: 20px;
    transition: transform 1s ease;
}

.slider13-card {
    flex: 1;
    min-width: calc(33.333% - 20px);
    position: relative;
    transform-style: preserve-3d;
    transition: transform 0.8s ease, opacity 0.8s ease;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 10px 30px var(--overlay-dark);
    /* sombra usando variable global */
    background: var(--color-bg);
    /* fondo de card usando variable global */
}

.slider13-card img {
    width: 100%;
    height: 350px;
    object-fit: cover;
    display: block;
    transition: transform 0.6s ease;
}

.slider13-card:hover img {
    transform: scale(1.08);
}

.slider13-overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 15px;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.6), transparent);
    color: var(--color-titulo);
    /* texto principal usando variable global */
    text-align: center;
}

.slider13-overlay h3 {
    font-size: 1.1rem;
    font-weight: 600;
    margin: 0;
    color: var(--color-titulo);
}

.slider13-controls {
    position: absolute;
    top: 40%;
    width: 100%;
    display: flex;
    justify-content: space-between;
    pointer-events: none;
}

.slider13-btn {
    background: var(--overlay-light);
    border: none;
    color: var(--text-color);
    font-size: 2rem;
    cursor: pointer;
    pointer-events: all;
    padding: 8px 15px;
    border-radius: 50%;
    transition: all 0.3s ease;
}

.slider13-btn:hover {
    background: var(--overlay-light);
    transform: scale(1.1);
}

/* Texto del título y subtítulo */
.slider13-text-content {
    text-align: center;
    max-width: 800px;
}

.slider13-title {
    font-size: 2.5rem;
    color: var(--color-titulo);
    /* uso de variable global */
    font-weight: 700;
    margin-bottom: 15px;
    text-shadow: 0 3px 6px var(--overlay-dark);
}

.slider13-subtitle {
    font-size: 1.2rem;
    color: var(--color-subtitulo);
    /* uso de variable global */
    line-height: 1.6;
}

/* Responsive */
@media (max-width: 900px) {
    .slider13-card img {
        height: 250px;
    }

    .slider13-title {
        font-size: 2rem;
    }

    .slider13-subtitle {
        font-size: 1rem;
    }
}

@media (max-width: 600px) {
    .slider13-carousel {
        flex-direction: column;
    }

    .slider13-card {
        min-width: 100%;
    }

    .slider13-card img {
        width: 100%;
        height: 500px;
        object-fit: cover;
        display: block;
        transition: transform 0.6s ease;
    }
}

/* --- Imagen principal más grande --- */
.slider13-card.active {
    transform: scale(1.18);
    z-index: 3;
}

/* Imagen dentro de la principal */
.slider13-card.active img {
    height: 420px;
    /* un poquito más alta */
    transform: scale(1.05);
}

/* Las imágenes laterales más pequeñas */
.slider13-card:not(.active) {
    transform: scale(0.85);
    opacity: 0.75;
}

.slider13-card:not(.active) img {
    height: 330px;
    filter: brightness(0.85);
}

/* 🎨 Fondo general */
.slider14-section {
    position: relative;
    width: 100%;
    height: 100vh;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    color: var(--text-color);
    /* variable global */
    text-align: center;
}

/* 🌈 Fondo con gradiente animado */
.slider14-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, var(--color1), var(--color2));
    /* uso de variables globales */
    animation: slider14GradientShift 10s ease-in-out infinite alternate;
    z-index: 1;
}

@keyframes slider14GradientShift {
    0% {
        background: linear-gradient(135deg, var(--color1), var(--color2));
    }

    100% {
        background: linear-gradient(135deg, var(--color3), var(--color4));
    }
}

/* Título principal - bien jerarquizado y cerca del carrusel */
.slider14-main-title1 {
    position: relative;
    z-index: 3;
    font-size: 3rem;
    font-weight: 800;
    color: var(--color-titulo);
    /* variable global */
    text-shadow: 0 4px 20px var(--overlay-dark);
    /* sombra consistente con variable */
    animation: fadeDown 1.2s ease-out;
    margin-bottom: 2rem;
    line-height: 1.2;
}

/* Subtítulo debajo del carrusel */
.slider14-sub-title1 {
    position: relative;
    z-index: 3;
    font-size: 1.6rem;
    font-weight: 400;
    color: var(--color-subtitulo);
    /* variable global */
    opacity: 0.9;
    text-shadow: 0 2px 10px var(--overlay-dark);
    animation: fadeUp 1.4s ease-out;
    margin-top: 2rem;
    line-height: 1.3;
    max-width: 90%;
}

/* Contenedor del carrusel */
.slider14-container {
    position: relative;
    z-index: 2;
    width: 90%;
    max-width: 1200px;
    perspective: 1200px;
    margin: 0 auto;
}

/* Carrusel 3D */
.slider14-carousel {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    transform-style: preserve-3d;
    min-height: 350px;
}

/* Slides */
.slider14-slide {
    position: absolute;
    width: 30%;
    max-width: 350px;
    aspect-ratio: 4/3;
    border-radius: 20px;
    overflow: hidden;
    transform-origin: center center;
    transition: all 1s ease;
    box-shadow: 0 10px 35px var(--overlay-dark);
    /* variable global */
    cursor: pointer;
    background: var(--color-bg);
    /* fondo de slide usando variable global */
}

.slider14-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 1s ease;
}

.slider14-slide:hover img {
    transform: scale(1.05);
}

/* Texto dentro del slide */
.slider14-caption {
    position: absolute;
    bottom: 0;
    width: 100%;
    background: rgba(0, 0, 0, 0.45);
    text-align: center;
    padding: 10px;
    color: var(--color-titulo);
    /* variable global */
}

.slider14-caption h3 {
    font-size: 1.2rem;
    margin: 0;
}

/* Posiciones 3D */
.slider14-slide.active {
    transform: translateZ(200px) scale(1);
    z-index: 3;
}

.slider14-slide.prev {
    transform: translateX(-250px) rotateY(35deg) scale(0.9);
    z-index: 2;
}

.slider14-slide.next {
    transform: translateX(250px) rotateY(-35deg) scale(0.9);
    z-index: 2;
}

.slider14-slide.hidden {
    opacity: 0;
    pointer-events: none;
    transform: translateZ(-400px) scale(0.7);
}

/* Animaciones de títulos */
@keyframes fadeDown {
    from {
        opacity: 0;
        transform: translateY(-30px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes fadeUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Responsive */
@media (max-width: 900px) {
    .slider14-main-title1 {
        font-size: 2.2rem;
        margin-bottom: 1.5rem;
    }

    .slider14-sub-title1 {
        font-size: 1.2rem;
        margin-top: 1.5rem;
    }

    .slider14-slide {
        width: 70%;
    }
}

/* ===========================
   🪶 HERO PARALLAX 1 (Institucional) - Con Variables Globales
=========================== */

/* --- Reset básico --- */
html,
body {
    margin: 0;
    padding: 0;
    width: 100%;
    overflow-x: hidden;
    font-family: 'Poppins', sans-serif;
}

/* --- Sección principal --- */
.parallax1-hero-section {
    position: relative;
    width: 100%;
    height: 100vh;
    background-image: url('https://picsum.photos/1920/1080?blur=2');
    background-size: cover;
    background-position: center;
    background-attachment: fixed;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    color: var(--text-color);
    /* variable global */
    overflow: hidden;
}

/* --- Capa oscura sutil --- */
.parallax1-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to bottom,
            rgba(0, 0, 0, 0.25) 0%,
            rgba(0, 0, 0, 0.35) 40%,
            rgba(0, 0, 0, 0.55) 100%);
    /* se puede usar variable overlay-dark si quieres uniformidad */
    z-index: 1;
}

/* --- Contenido --- */
.parallax1-content {
    position: relative;
    z-index: 2;
    max-width: 900px;
    padding: 2rem;
}

/* --- Título --- */
.parallax1-title {
    font-size: clamp(2rem, 5vw, 4rem);
    font-weight: 800;
    color: var(--color-titulo);
    /* variable global */
    text-shadow: 0 4px 15px var(--overlay-dark);
    /* sombra con variable global */
    margin-bottom: 1rem;
}

/* --- Subtítulo --- */
.parallax1-subtitle {
    font-size: clamp(1rem, 2vw, 1.4rem);
    color: var(--color-subtitulo);
    /* variable global */
    margin-bottom: 2rem;
    line-height: 1.6;
}

/* --- Botón --- */
.parallax1-btn {
    display: inline-block;
    padding: 0.9rem 2.2rem;
    font-weight: 600;
    border: 2px solid var(--color-titulo);
    /* variable global */
    color: var(--color-texto-boton);
    /* variable global */
    border-radius: var(--border-radius);
    text-decoration: none;
    transition: all 0.3s ease;
    backdrop-filter: blur(4px);
}

.parallax1-btn:hover {
    background-color: rgba(255, 255, 255, 0.15);
    /* opcional: se puede usar overlay-light */
    transform: scale(1.05);
}

/* ===========================
   📱 RESPONSIVIDAD TOTAL
=========================== */

/* --- Tablets --- */
@media (max-width: 992px) {
    .parallax1-hero-section {
        height: 80vh;
        background-attachment: scroll;
    }

    .parallax1-title {
        font-size: clamp(1.8rem, 5vw, 3rem);
    }

    .parallax1-subtitle {
        font-size: clamp(0.95rem, 2vw, 1.3rem);
    }
}

/* --- Móviles --- */
@media (max-width: 576px) {
    .parallax1-hero-section {
        height: 75vh;
        background-attachment: scroll;
    }

    .parallax1-content {
        padding: 1.5rem;
    }

    .parallax1-title {
        font-size: 1.8rem;
        line-height: 1.3;
    }

    .parallax1-subtitle {
        font-size: 0.95rem;
        line-height: 1.4;
    }

    .parallax1-btn {
        padding: 0.7rem 1.8rem;
        font-size: 0.9rem;
    }

    .parallax1-overlay {
        background: linear-gradient(to bottom,
                rgba(0, 0, 0, 0.15) 0%,
                rgba(0, 0, 0, 0.25) 40%,
                rgba(0, 0, 0, 0.45) 100%);
    }
}

/* --- Pantallas grandes (TV o monitores ultra wide) --- */
@media (min-width: 1600px) {
    .parallax1-hero-section {
        height: 100vh;
        background-position: center top;
    }
}




/* ===========================
   🌈 HERO GRADIENTE ANIMADO - VARIABLES GLOBALES
=========================== */

.gradient1-hero-section {
    position: relative;
    width: 100%;
    height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    overflow: hidden;
    color: var(--text-color);
    /* variable global */
    background: linear-gradient(-45deg, var(--color1), var(--color2), var(--color3), var(--color4));
    background-size: 400% 400%;
    animation: gradientShift 12s ease infinite;
}

/* Fondo animado elegante */
@keyframes gradientShift {
    0% {
        background-position: 0% 50%;
    }

    50% {
        background-position: 100% 50%;
    }

    100% {
        background-position: 0% 50%;
    }
}

/* Sutil overlay para mejorar contraste del texto */
.gradient1-overlay {
    position: absolute;
    inset: 0;
    background: var(--overlay-dark);
    /* variable global */
    z-index: 1;
}

/* Contenido centrado */
.gradient1-content {
    position: relative;
    z-index: 2;
    max-width: 800px;
    padding: 2rem;
}

/* Título principal */
.gradient1-title {
    font-size: 2.8rem;
    line-height: 1.2;
    font-weight: 700;
    margin-bottom: 1rem;
    color: var(--color-titulo);
    /* variable global */
    text-shadow: 0 3px 6px var(--overlay-dark);
    /* variable global */
}

/* Subtítulo */
.gradient1-subtitle {
    font-size: 1.25rem;
    line-height: 1.6;
    margin-bottom: 2rem;
    opacity: 0.95;
    color: var(--color-subtitulo);
    /* variable global */
}

/* Botón principal */
.gradient1-btn {
    display: inline-block;
    background: var(--overlay-light);
    /* variable global */
    border: 2px solid var(--color-titulo);
    /* variable global */
    color: var(--color-texto-boton);
    /* variable global */
    padding: 0.75rem 1.75rem;
    border-radius: var(--border-radius);
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
    transition: all 0.3s ease;
    text-decoration: none;
}

.gradient1-btn:hover {
    background: var(--color-btn-start);
    /* variable global */
    color: var(--color-btn-end);
    /* variable global */
    transform: translateY(-3px);
    box-shadow: 0 6px 16px var(--color-btn-shadow-hover);
    /* variable global */
}

/* Adaptación responsive */
@media (max-width: 768px) {
    .gradient1-title {
        font-size: 2rem;
    }

    .gradient1-subtitle {
        font-size: 1rem;
    }
}


/* ===========================
   🔲 HERO MINIMALISTA TIPOGRÁFICO - VARIABLES GLOBALES
=========================== */

.minimal1-hero-section {
    position: relative;
    width: 100%;
    height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    overflow: hidden;
    background-color: var(--color-bg);
    /* variable global */
    color: var(--text-color);
    /* variable global */
}

/* Overlay sutil (opcional) */
.minimal1-overlay {
    position: absolute;
    inset: 0;
    background: var(--overlay-light);
    /* variable global */
    z-index: 1;
}

/* Contenido centrado */
.minimal1-content {
    position: relative;
    z-index: 2;
    max-width: 900px;
    padding: 2rem;
}

/* Título principal */
.minimal1-title {
    font-size: clamp(2rem, 6vw, 6rem);
    font-weight: 800;
    line-height: 1.1;
    margin-bottom: 1rem;
    color: var(--color-titulo);
    /* variable global */
}

/* Subtítulo */
.minimal1-subtitle {
    font-size: clamp(1rem, 2vw, 1.5rem);
    line-height: 1.5;
    margin-bottom: 2rem;
    opacity: 0.9;
    color: var(--color-subtitulo);
    /* variable global */
}

/* Botón principal */
.minimal1-btn {
    display: inline-block;
    background: transparent;
    border: 2px solid var(--color-titulo);
    /* variable global */
    color: var(--color-texto-principal);
    /* variable global */
    padding: 0.75rem 1.75rem;
    border-radius: var(--border-radius);
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
    transition: all 0.3s ease;
    text-decoration: none;
}

.minimal1-btn:hover {
    background: var(--color-titulo);
    /* variable global */
    color: var(--color-bg);
    /* variable global */
    transform: translateY(-2px);
    box-shadow: 0 4px 12px var(--overlay-dark);
    /* variable global */
}

/* ===== Responsivo ===== */
@media (max-width: 992px) {
    .minimal1-title {
        font-size: clamp(2rem, 5vw, 4.5rem);
    }

    .minimal1-subtitle {
        font-size: clamp(0.9rem, 2vw, 1.3rem);
    }
}

@media (max-width: 576px) {
    .minimal1-hero-section {
        height: 75vh;
    }

    .minimal1-title {
        font-size: clamp(1.5rem, 5vw, 3rem);
    }

    .minimal1-subtitle {
        font-size: 0.9rem;
    }
}

/* ===========================
   🧭 HERO SHAPE DIVIDER - VARIABLES GLOBALES
=========================== */

.shape1-hero-section {
    position: relative;
    width: 100%;
    height: 100vh;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    background-color: var(--color-bg);
    /* variable global */
    color: var(--text-color);
    /* variable global */
}

.shape1-overlay {
    position: absolute;
    inset: 0;
    background: var(--overlay-dark);
    /* variable global */
    z-index: 1;
}

.shape1-content {
    position: relative;
    z-index: 2;
    max-width: 900px;
    padding: 2rem;
}

/* Título y subtítulo */
.shape1-title {
    font-size: clamp(2rem, 6vw, 5rem);
    font-weight: 700;
    line-height: 1.2;
    margin-bottom: 1rem;
    text-shadow: 0 4px 10px var(--overlay-dark);
    /* variable global */
    color: var(--color-titulo);
    /* variable global */
}

.shape1-subtitle {
    font-size: clamp(1rem, 2vw, 1.6rem);
    margin-bottom: 2rem;
    line-height: 1.5;
    text-shadow: 0 2px 6px var(--overlay-dark);
    /* variable global */
    color: var(--color-subtitulo);
    /* variable global */
}

/* Botón */
.shape1-btn {
    display: inline-block;
    padding: 0.75rem 2rem;
    border-radius: var(--border-radius);
    background: var(--overlay-light);
    /* variable global */
    color: var(--color-titulo);
    /* variable global */
    font-weight: 600;
    text-transform: uppercase;
    transition: all 0.3s ease;
    border: 2px solid var(--color-titulo);
    text-decoration: none;
    /* variable global */
}

.shape1-btn:hover {
    background: var(--color-titulo);
    /* variable global */
    color: var(--color-bg);
    /* variable global */
    transform: translateY(-3px);
    box-shadow: 0 6px 16px var(--overlay-dark);
    /* variable global */
}

/* Shape Divider */
.shape1-divider {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    overflow: hidden;
    line-height: 0;
}

.shape1-divider svg {
    display: block;
    width: 100%;
    height: 100px;
}

/* Responsive */
@media (max-width: 768px) {
    .shape1-title {
        font-size: clamp(1.5rem, 6vw, 3rem);
    }

    .shape1-subtitle {
        font-size: clamp(0.9rem, 2vw, 1.2rem);
    }
}


/* ===========================
   🧭 HERO SHAPE 2 - IMAGEN
=========================== */
/* ===========================
   🧭 HERO SHAPE 2 - IMAGEN (VARIABLES GLOBALES)
=========================== */

.shape2-hero-section {
    position: relative;
    width: 100%;
    height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    overflow: hidden;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    color: var(--text-color);
    /* variable global */
}

.shape2-overlay {
    position: absolute;
    inset: 0;
    background: var(--overlay-dark);
    /* variable global */
    z-index: 1;
}

.shape2-content {
    position: relative;
    z-index: 2;
    max-width: 800px;
    padding: 2rem;
}

.shape2-title {
    font-size: clamp(2rem, 5vw, 4rem);
    font-weight: 700;
    margin-bottom: 1rem;
    color: var(--color-titulo);
    /* variable global */
}

.shape2-subtitle {
    font-size: clamp(1rem, 2.5vw, 1.5rem);
    margin-bottom: 2rem;
    opacity: 0.9;
    color: var(--color-subtitulo);
    /* variable global */
}

.shape2-btn {
    display: inline-block;
    background: var(--overlay-light);
    /* variable global */
    border: 2px solid var(--color-titulo);
    /* variable global */
    color: var(--color-titulo);
    /* variable global */
    padding: 0.75rem 1.75rem;
    border-radius: var(--border-radius);
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
    transition: all 0.3s ease;
    text-decoration: none;
}

.shape2-btn:hover {
    background: var(--color-titulo);
    /* variable global */
    color: var(--color-bg);
    /* variable global */
    transform: translateY(-3px);
    box-shadow: 0 6px 16px var(--overlay-dark);
    /* variable global */
}

/* Shape Divider */
.shape2-divider {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    overflow: hidden;
    line-height: 0;
}

.shape2-divider svg {
    display: block;
    width: 100%;
    height: 100px;
    fill: var(--color-bg);
    /* color del fondo siguiente, variable global */
}

/* Responsive */
@media (max-width: 768px) {
    .shape2-title {
        font-size: 2rem;
    }

    .shape2-subtitle {
        font-size: 1rem;
    }
}


/* ===========================
   🌌 HERO PARTICULAS 1 (VARIABLES GLOBALES)
=========================== */

.particula1-hero-section {
    position: relative;
    width: 100%;
    height: 100vh;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    background: linear-gradient(135deg, var(--color1), var(--color2));
    /* variable global */
    color: var(--text-color);
    /* variable global */
}

.particula1-overlay {
    position: absolute;
    inset: 0;
    background: var(--overlay-dark);
    /* variable global */
    z-index: 1;
}

.particula1-content {
    position: relative;
    z-index: 2;
    max-width: 800px;
    padding: 2rem;
}

.particula1-title {
    font-size: clamp(2rem, 6vw, 4rem);
    font-weight: 700;
    margin-bottom: 1rem;
    text-shadow: 0 3px 6px var(--overlay-dark);
    /* variable global */
    color: var(--color-titulo);
    /* variable global */
}

.particula1-subtitle {
    font-size: 1.25rem;
    margin-bottom: 2rem;
    opacity: 0.95;
    color: var(--color-subtitulo);
    /* variable global */
}

.particula1-btn {
    display: inline-block;
    background: var(--overlay-light);
    /* variable global */
    border: 2px solid var(--color-titulo);
    /* variable global */
    color: var(--color-titulo);
    /* variable global */
    padding: 0.75rem 1.75rem;
    border-radius: var(--border-radius);
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
    transition: all 0.3s ease;
    text-decoration: none;
}

.particula1-btn:hover {
    background: var(--color-titulo);
    /* variable global */
    color: var(--color-bg);
    /* variable global */
    transform: translateY(-3px);
    box-shadow: 0 6px 16px var(--overlay-dark);
    /* variable global */
}

/* Canvas de partículas */
.particula1-canvas {
    position: absolute;
    inset: 0;
    z-index: 0;
    display: block;
}

/* Responsive */
@media (max-width: 768px) {
    .particula1-title {
        font-size: 2rem;
    }

    .particula1-subtitle {
        font-size: 1rem;
    }
}

/* ===========================
   HERO PARTICULA 2 (VARIABLES GLOBALES)
=========================== */
.particula2-hero-section {
    position: relative;
    width: 100%;
    height: 100vh;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    background: var(--color-bg);
    /* variable global */
    color: var(--text-color);
    /* variable global */
}

.particula2-overlay {
    position: absolute;
    inset: 0;
    background: var(--overlay-dark);
    /* variable global */
    z-index: 1;
}

.particula2-content {
    position: relative;
    z-index: 2;
    color: var(--text-color);
    /* variable global */
    padding: 1rem;
}

.particula2-title {
    font-size: clamp(2rem, 6vw, 5rem);
    font-weight: bold;
    margin-bottom: 1rem;
    color: var(--color-titulo);
    /* variable global */
}

.particula2-subtitle {
    font-size: clamp(1rem, 2.5vw, 1.5rem);
    margin-bottom: 1.5rem;
    color: var(--color-subtitulo);
    /* variable global */
}

.particula2-btn {
    display: inline-block;
    padding: 0.8rem 1.8rem;
    font-size: 1rem;
    background: var(--color-btn-start);
    /* variable global */
    color: var(--color-texto-boton);
    /* variable global */
    text-decoration: none;
    border-radius: var(--border-radius);
    transition: all 0.3s ease;
}

.particula2-btn:hover {
    background: var(--color-btn-end);
    /* variable global */
}

.particula2-canvas {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
}

/* ===========================
   HERO PARTICULA 3
=========================== */
/* ===========================
   HERO PARTICULA 3 (VARIABLES GLOBALES)
=========================== */
.particula3-hero-section {
    position: relative;
    width: 100%;
    height: 100vh;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    background: linear-gradient(135deg, var(--color1), var(--color2), var(--color3));
    color: var(--text-color);
    /* variable global */
}

.particula3-overlay {
    position: absolute;
    inset: 0;
    background: var(--overlay-dark);
    /* variable global */
    z-index: 1;
}

.particula3-content {
    position: relative;
    z-index: 2;
    max-width: 900px;
    padding: 2rem;
}

.particula3-title {
    font-size: clamp(2rem, 6vw, 4rem);
    font-weight: 700;
    margin-bottom: 1rem;
    text-shadow: 0 3px 10px var(--overlay-dark);
    /* variable global */
    color: var(--color-titulo);
    /* variable global */
}

.particula3-subtitle {
    font-size: 1.25rem;
    margin-bottom: 2rem;
    opacity: 0.95;
    color: var(--color-subtitulo);
    /* variable global */
}

.particula3-btn {
    display: inline-block;
    background: var(--overlay-light);
    /* variable global */
    border: 2px solid #fff;
    color: var(--color-texto-boton);
    /* variable global */
    padding: 0.75rem 1.75rem;
    border-radius: var(--border-radius);
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
    transition: all 0.3s ease;
    text-decoration: none;
}

.particula3-btn:hover {
    background: #fff;
    color: var(--color1);
    /* variable global */
    transform: translateY(-3px);
    box-shadow: 0 6px 16px var(--overlay-dark);
    /* variable global */
}

.particula3-canvas {
    position: absolute;
    inset: 0;
    z-index: 0;
    display: block;
}

/* Responsive */
@media (max-width: 768px) {
    .particula3-title {
        font-size: 2rem;
    }

    .particula3-subtitle {
        font-size: 1rem;
    }
}

/* ===========================
   💬 HERO QUOTE_1
=========================== */
.quote1-hero-section {
    position: relative;
    width: 100%;
    height: 80vh;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    background: rgba(0, 0, 0, 0.6);
    background-color: var(--color-bg);
    /* variable global agregada */
    color: var(--text-color);
    /* variable global agregada */
    overflow: hidden;
}

.quote1-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg,
            rgba(26, 26, 40, 0.8),
            rgba(43, 43, 60, 0.6));
    background: linear-gradient(135deg,
            var(--color1, #1a1a28),
            var(--color2, #2b2b44));
    /* variable global agregada con fallback */
    z-index: 1;
}

.quote1-content {
    position: relative;
    z-index: 2;
    max-width: 800px;
    padding: 0 20px;
    opacity: 0;
    transform: translateY(20px);
    animation: fadeUp 1s ease-out forwards;
    color: var(--text-color);
    /* variable global agregada */
}

.quote1-subtitle {
    font-size: clamp(1.2rem, 2.5vw, 1.8rem);
    font-style: italic;
    line-height: 1.6;
    color: var(--color-subtitulo);
    /* variable global agregada */
}

.quote1-content {
    max-width: 800px;
    padding: 0 20px;
}

.quote1-subtitle {
    font-size: clamp(1.2rem, 2.5vw, 1.8rem);
    line-height: 1.6;
}

/* ===== Animación fade-up ===== */
@keyframes fadeUp {
    from {
        opacity: 0;
        transform: translateY(20px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/*/ ===== 🕊️ HERO INTERACTIVE 1 ===== */
.interactive1-hero-section {
    position: relative;
    width: 100%;
    height: 100vh;
    overflow: hidden;
    display: flex;
    justify-content: center;
    align-items: center;
    color: var(--text-color);
    /* variable global agregada */
    background: linear-gradient(135deg, var(--color1, #1a1a40), var(--color2, #2b2b60));
    /* variables globales con fallback */
    perspective: 1000px;
    /* da efecto de profundidad */
}

/* Capas del fondo */
.interactive1-layer {
    position: absolute;
    inset: 0;
    transition: transform 0.3s ease-out;
    will-change: transform;
}

.interactive1-bg {
    background-image: url('https://images.unsplash.com/photo-1503676260728-1c00da094a0b');
    background-size: cover;
    background-position: center;
    opacity: 0.8;
    z-index: 0;
}

.interactive1-overlay {
    background: var(--overlay-dark, rgba(0, 0, 0, 0.4));
    /* variable global agregada con fallback */
    z-index: 1;
}

.interactive1-content {
    position: relative;
    z-index: 2;
    text-align: center;
    max-width: 800px;
    padding: 0 20px;
    animation: fadeUp 1s ease-out forwards;
    color: var(--text-color);
    /* variable global agregada */
}

.interactive1-title {
    font-size: clamp(2rem, 5vw, 3.5rem);
    margin-bottom: 20px;
    color: var(--color-titulo);
    /* variable global agregada */
}

.interactive1-subtitle {
    font-size: clamp(1rem, 2.5vw, 1.5rem);
    margin-bottom: 30px;
    color: var(--color-subtitulo);
    /* variable global agregada */
}

.interactive1-btn {
    display: inline-block;
    padding: 12px 30px;
    background: var(--color-btn-start, #6a11cb);
    /* variable global con fallback */
    border-radius: var(--border-radius);
    color: var(--color-texto-boton, #fff);
    /* variable global agregada */
    text-decoration: none;
    transition: background 0.3s;
}

.interactive1-btn:hover {
    background: var(--color-btn-end, #2575fc);
    /* variable global con fallback */
}

/* Animación de entrada */
@keyframes fadeUp {
    from {
        opacity: 0;
        transform: translateY(20px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* ===========================
   🧩 HERO CON TARJETAS (CARDS_1)
=========================== */
.cards1-hero-section {
    position: relative;
    width: 100%;
    min-height: 100vh;
    padding: 80px 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, var(--color1, #1a1a40), var(--color2, #2b2b60));
    /* variables globales con fallback */
    color: var(--color-titulo, #fff);
    /* variable global */
    text-align: center;
    overflow: hidden;
}

.cards1-overlay {
    position: absolute;
    inset: 0;
    background: var(--overlay-dark, rgba(0, 0, 0, 0.4));
    /* variable global con fallback */
    z-index: 1;
}

.cards1-content {
    position: relative;
    z-index: 2;
    max-width: 1200px;
    width: 100%;
}

.cards1-title {
    font-size: 2.8rem;
    margin-bottom: 50px;
    text-transform: uppercase;
    letter-spacing: 2px;
    color: var(--color-titulo, #fff);
    /* variable global */
}

.cards1-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 30px;
    justify-items: center;
}

.cards1-card {
    background: rgba(255, 255, 255, 0.08);
    border-radius: 20px;
    padding: 30px 20px;
    transition: all 0.4s ease;
    backdrop-filter: blur(8px);
    box-shadow: 0 5px 25px rgba(0, 0, 0, 0.2);
}

.cards1-card:hover {
    transform: translateY(-10px) scale(1.03);
    background: rgba(255, 255, 255, 0.15);
}

.cards1-img {
    width: 100%;
    height: 200px;
    object-fit: cover;
    border-radius: 15px;
    margin-bottom: 20px;
}

.cards1-card-title {
    font-size: 1.4rem;
    font-weight: bold;
    margin-bottom: 10px;
    color: var(--color-titulo, #fff);
    /* variable global */
}

.cards1-card-text {
    font-size: 1rem;
    color: var(--color-subtitulo, #ddd);
    /* variable global */
    line-height: 1.5;
}

/* 📱 Responsive */
@media (max-width: 768px) {
    .cards1-title {
        font-size: 2rem;
    }

    .cards1-card {
        padding: 20px;
    }

    .cards1-img {
        height: 180px;
    }
}

/* ===========================
   🖼️ HERO IMAGE 2 (BLUR EFFECT) - VARIABLES GLOBALES
=========================== */
.imagen2-hero-section {
    position: relative;
    width: 100%;
    height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    overflow: hidden;
    color: var(--text-color);
}

/* Imagen de fondo */
.imagen2-bg {
    position: absolute;
    inset: 0;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    filter: brightness(70%);
    transition: transform 1s ease, filter 0.5s ease;
    z-index: 1;
}



/* Contenido principal */
.imagen2-content {
    position: relative;
    z-index: 3;
    max-width: 800px;
    padding: 30px;
    background: var(--overlay-light);
    backdrop-filter: blur(12px);
    border-radius: 20px;
    box-shadow: 0 5px 30px var(--overlay-dark);
    animation: fadeInUp 1.2s ease forwards;
}

/* Título */
.imagen2-title {
    font-size: 2.8rem;
    margin-bottom: 20px;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: var(--color-titulo);
    text-shadow: 0 4px 15px var(--overlay-dark);
}

/* Subtítulo */
.imagen2-subtitle {
    font-size: 1.2rem;
    margin-bottom: 30px;
    color: var(--color-subtitulo);
    line-height: 1.6;
    text-shadow: 0 3px 10px var(--overlay-dark);
}

/* Botón */
.imagen2-btn {
    display: inline-block;
    padding: 12px 30px;
    background: linear-gradient(90deg, var(--color-btn-start), var(--color-btn-end));
    color: var(--color-texto-boton);
    font-weight: bold;
    border-radius: var(--border-radius);
    text-decoration: none;
    transition: all 0.3s ease;
    box-shadow: 0 5px 15px var(--overlay-dark);
}

.imagen2-btn:hover {
    transform: scale(1.05);
    background: linear-gradient(90deg, var(--color-btn-end), var(--color-btn-start));
    box-shadow: 0 8px 25px var(--overlay-btn-shadow-hover, rgba(0, 200, 255, 0.6));
}

/* ✨ Animación de entrada */
@keyframes fadeInUp {
    0% {
        opacity: 0;
        transform: translateY(40px);
    }

    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

/* 📱 Responsive */
@media (max-width: 768px) {
    .imagen2-title {
        font-size: 2rem;
    }

    .imagen2-subtitle {
        font-size: 1rem;
    }

    .imagen2-content {
        padding: 20px;
    }
}

/* 📱 Animation_1 */
:root {
    --color1: #FF6B6B;
    --color2: #FFD93D;
    --color3: #6BCB77;
    --color4: #4D96FF;
}

.animation1-section {
    position: relative;
    width: 100%;
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    color: #fff;
    font-family: 'Poppins', sans-serif;
}

.animation1-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(120deg, var(--color1), var(--color2), var(--color3), var(--color4));
    background-size: 600% 600%;
    animation: gradientShift 20s ease infinite;
    z-index: 0;
    opacity: 0.7;
}

@keyframes gradientShift {
    0% {
        background-position: 0% 50%;
    }

    50% {
        background-position: 100% 50%;
    }

    100% {
        background-position: 0% 50%;
    }
}

.animation1-content {
    position: relative;
    z-index: 2;
    text-align: center;
    padding: 0 20px;
    max-width: 1200px;
}

.animation1-main-title {
    font-size: 3rem;
    font-weight: 700;
    margin-bottom: 1rem;
    opacity: 0;
    transform: translateY(50px);
    transition: all 1s ease;
}

.animation1-sub-title {
    font-size: 1.5rem;
    margin: 1rem 0 2rem;
    opacity: 0;
    transform: translateY(50px);
    transition: all 1s ease 0.2s;
}

.animation1-button {
    display: inline-block;
    padding: 0.8rem 2rem;
    background: #fff;
    color: #333;
    font-weight: 600;
    border-radius: 6px;
    text-decoration: none;
    opacity: 0;
    transform: translateY(50px);
    transition: all 1s ease 0.4s;
}

.scroll-visible {
    opacity: 1 !important;
    transform: translateY(0px) !important;
}

.animation1-container {
    margin: 2rem 0;
    overflow: hidden;
    position: relative;
}

.animation1-carousel {
    display: flex;
    transition: transform 0.8s ease;
}

.animation1-slide {
    min-width: 100%;
    position: relative;
    opacity: 0;
    transition: opacity 0.8s ease;
}

.animation1-slide.active {
    opacity: 1;
}

.animation1-slide img {
    width: 100%;
    border-radius: 12px;
    display: block;
}

.animation1-caption {
    position: absolute;
    bottom: 10%;
    left: 50%;
    transform: translateX(-50%);
    color: #fff;
    text-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
}

/* 🎨 Variables globales */
:root {
    --color-fondo: #6650e2;
    --color-texto: #222;
    --fuente-general: "Montserrat", sans-serif;
}

/* 🔄 Scroll suave */
html,
body {
    scroll-behavior: smooth;
}

/* 🧩 Estilos base */
body {
    background-color: var(--color-fondo);
    color: var(--color-texto);
    font-family: var(--fuente-general);
    margin: 0;
    padding: 0;
}