/*
Theme Name: Sintonía Fractal
Theme URI: #
Author: Tu Nombre
Description: Tema inmersivo y minimalista personalizado con predominancia de violeta.
Version: 28.0 - ESCALADO GLOBAL DESKTOP & MOBILE RESTAURADO
Text Domain: sintonia-fractal
*/

/* =========================================
   FRACTAL DESIGN - BASE ESTABLE
   ========================================= */
:root {
    --neon: #9d4edd; 
    --neon-alt: #4cc9f0; 
    --neon-dark: #2a0a5e; 
    --dark: #05000a; 
    --glass: rgba(20, 5, 40, 0.4); 
    --glass-border: rgba(255, 255, 255, 0.06); 
    --text-muted: rgba(255, 255, 255, 0.5);
}

* { margin: 0; padding: 0; box-sizing: border-box; -webkit-tap-highlight-color: transparent; }
html { scroll-behavior: smooth; }
body { background: var(--dark); font-family: 'Inter', sans-serif; color: #fff; overflow-x: hidden; line-height: 1.2; min-height: 100vh; }

#matriz-flor-vida { position: fixed; inset: 0; z-index: -3; pointer-events: none; }
#particles-js { position: fixed; inset: 0; z-index: -2; opacity: 0.2; pointer-events: none; }
.contenedor-maestro { max-width: 1200px; margin: 0 auto; padding: 0 30px; position: relative; z-index: 10; padding-bottom: 60px;}

.seccion-hero-impacto { margin-top: 40px; margin-bottom: 60px; } 
.portal-visual-contenedor { 
    position: relative; border-radius: 24px; overflow: hidden; border: 1px solid var(--glass-border); 
    background: var(--glass); backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px); 
    box-shadow: 0 30px 60px rgba(0,0,0,0.6), inset 0 1px 1px rgba(255,255,255,0.05);
}
.portal-visual-contenedor::after {
    content: ''; position: absolute; top: -200px; left: -150px; width: 500px; height: 500px;
    background: radial-gradient(circle, rgba(157,78,221,0.1) 0%, transparent 70%); z-index: 1; pointer-events: none;
}

/* =========================================
   ARQUITECTURA GRID DESKTOP
   ========================================= */
.hero-grid-maestro {
    display: grid;
    grid-template-columns: 1.3fr 0.7fr;
    grid-template-areas:         "titles foto"        "oferta foto";
    gap: 0 40px;
    padding: 50px 60px 0;
    position: relative;
    z-index: 5;
    min-height: 600px;
    padding-left: 8vw;
}
.hero-titles { grid-area: titles; align-self: end; padding-bottom: 10px; }
.hero-offer { grid-area: oferta; align-self: start; padding-bottom: 60px; display: flex; flex-direction: column; justify-content: flex-start;}
.hero-foto {
    grid-area: foto;
    position: fixed;
    display: flex;
    justify-content: flex-end;
    align-items: flex-end;
    width: 150%;
    right: -3vw;
    bottom: 0vh;
}

.titular-absoluto { margin-bottom: 15px; }
.txt-stack-mobile { display: block; width: 55vw} 
.txt-ruido, .txt-conecta, .txt-5d { font-family: 'Cinzel', serif; font-weight: 900; font-size: clamp(2.5rem, 4vw, 4.5rem); color: #fff; line-height: 1.1; text-shadow: 0 4px 15px rgba(0,0,0,0.8); display: inline;}
.txt-5d { text-shadow: 0 0 25px rgba(157, 78, 221, 0.7), 0 0 50px rgba(157, 78, 221, 0.3); }

.indicador-urgencia { font-family: 'Syncopate', sans-serif; font-size: 9px; letter-spacing: 4px; color: var(--neon-alt); margin-bottom: 15px; display: inline-flex; align-items: center; gap: 8px; padding: 8px 20px; border: 1px solid rgba(76, 201, 240, 0.3); border-radius: 50px; background: rgba(76, 201, 240, 0.05); }
.punto-pulso { width: 6px; height: 6px; background: var(--neon-alt); border-radius: 50%; animation: pulse 2s infinite; box-shadow: 0 0 10px var(--neon-alt); }
@keyframes pulse { 0%, 100% { opacity: 0.3; transform: scale(0.8); } 50% { opacity: 1; transform: scale(1.2); } }

.badges-pack { display: flex; justify-content: flex-start; gap: 10px; margin-bottom: 20px; flex-wrap: row; }
.badge { background: rgba(10, 0, 20, 0.6); border: 1px solid var(--glass-border); padding: 8px 14px; border-radius: 8px; font-size: 0.6vw; font-weight: 600; letter-spacing: 1px; color: rgba(255,255,255,0.9); display: flex; align-items: center; gap: 6px; backdrop-filter: blur(4px); }
.b-icon { color: var(--neon-alt); font-size: 12px; filter: drop-shadow(0 0 2px var(--neon-alt)); }

.cluster-conversion { display: flex; align-items: center; gap: 20px; margin-bottom: 12px;}
.btn-neon-violeta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-direction: row;
    flex-wrap: nowrap;
    gap: 12px;
    background: linear-gradient(135deg, #510a9e 0%, #9d4edd 100%);
    color: #ffffff;
    padding: 18px 35px;
    border-radius: 12px;
    text-decoration: none;
    font-weight: 800;
    font-family: 'Syncopate', sans-serif;
    font-size: 11px;
    letter-spacing: 1.5px;
    border: 1px solid rgba(255, 255, 255, 0.15);
    box-shadow: 0 10px 30px rgba(157, 78, 221, 0.4), inset 0 2px 2px rgba(255,255,255,0.2);
    transition: all 0.4s ease;
    cursor: pointer;
    text-transform: uppercase;
    white-space: nowrap;
    width: 70%;
    margin-left: 2vw;
}
.btn-neon-violeta:hover { filter: brightness(1.2); box-shadow: 0 15px 40px rgba(76, 201, 240, 0.5), inset 0 2px 2px rgba(255,255,255,0.3); transform: translateY(-3px); border-color: var(--neon-alt);}
.btn-neon-violeta.ancho-total { width: 100%; text-align: center; }
.btn-texto-accion { position: relative; z-index: 2; white-space: nowrap;}
.btn-divisor { opacity: 0.5; font-weight: 300; position: relative; z-index: 2; }
.btn-precio { font-size: 15px; color: #fff; font-weight: 900; position: relative; z-index: 2; text-shadow: 0 0 10px rgba(255,255,255,0.5); white-space: nowrap;}

.micro-trust-hero { display: flex; align-items: center; gap: 8px; font-size: 12px; color: var(--text-muted); font-weight: 400;}
.estrellas { color: #facc15; font-size: 14px; letter-spacing: 2px; filter: drop-shadow(0 0 4px rgba(250, 204, 21, 0.5)); } 

.aura-diego { position: absolute; top: 40%; left: 50%; transform: translate(-50%, -50%); width: 280px; height: 280px; background: radial-gradient(circle, var(--neon) 0%, transparent 60%); filter: blur(60px); border-radius: 50%; z-index: -1; opacity: 0.3; pointer-events: none; animation: auraBreathe 6s ease-in-out infinite alternate;}
@keyframes auraBreathe { 0% { transform: translate(-50%, -50%) scale(1); opacity: 0.2; } 100% { transform: translate(-50%, -50%) scale(1.1); opacity: 0.4; } }
.hero-foto img { width: 100%; max-width: 400px; display: block; position: relative; z-index: 2; -webkit-mask-image: linear-gradient(to bottom, rgba(0,0,0,1) 80%, rgba(0,0,0,0) 100%); mask-image: linear-gradient(to bottom, rgba(0,0,0,1) 80%, rgba(0,0,0,0) 100%); filter: contrast(1.05) brightness(1.05); pointer-events: none; }

/* =========================================
   SECCIONES GENERALES
   ========================================= */
.seccion-sintomas { text-align: center; margin-bottom: 70px; margin-top: 30px; position: relative; z-index: 10;}
.m-titulo { font-family: 'Syncopate', sans-serif; font-size: 11px; letter-spacing: 5px; color: var(--neon-alt); margin: 30px 0 15px; font-weight: 700; text-transform: uppercase;}
.texto-puente { font-size: 1.1rem; color: rgba(255,255,255,0.9); max-width: 650px; margin: 0 auto 35px; font-weight: 300;}

.grid-sintomas, .grid-pilares { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; max-width: 950px; margin: 0 auto 30px;}
.sintoma-card, .pilar-card { background: var(--glass); border: 1px solid var(--glass-border); padding: 25px; border-radius: 16px; backdrop-filter: blur(8px); transition: all 0.4s; box-shadow: 0 10px 30px rgba(0,0,0,0.2);}
.sintoma-card:hover, .pilar-card:hover { border-color: rgba(157, 78, 221, 0.4); transform: translateY(-5px); box-shadow: 0 15px 40px rgba(157, 78, 221, 0.2); background: rgba(30, 8, 50, 0.6);}
.sintoma-header { display: flex; align-items: center; gap: 10px; margin-bottom: 12px;}
.sintoma-icon { font-size: 18px; color: var(--neon-alt); filter: drop-shadow(0 0 5px var(--neon-alt));}
.sintoma-titulo { font-family: 'Cinzel', serif; font-size: 15px; letter-spacing: 1px; color: #fff; font-weight: 700;}
.sintoma-card p, .pilar-hidden p { font-size: 13.5px; color: rgba(255,255,255,0.75); line-height: 1.6; font-weight: 300;}

/* LÍNEA LÁSER DE FASES (Solo Desktop) */
@media (min-width: 901px) {
    .grid-pilares { position: relative; }
    .grid-pilares::before {
        content: ''; position: absolute;
        top: 60px; left: 10%; right: 10%; height: 2px;
        background: linear-gradient(90deg, transparent, var(--neon), var(--neon-alt), transparent);
        z-index: 0; box-shadow: 0 0 10px var(--neon); opacity: 0.4; pointer-events: none;
    }
    .pilar-card { position: relative; z-index: 1; background: rgba(20, 5, 40, 0.8); } 
}

.pilar-card { padding: 35px 25px; cursor: pointer; align-items: center; text-align: center; }
.pilar-icon { font-size: 32px; color: var(--neon); margin-bottom: 15px; transition: 0.3s; filter: drop-shadow(0 0 8px rgba(157,78,221,0.5)); } 
.pilar-card:hover .pilar-icon { filter: drop-shadow(0 0 15px var(--neon-alt)); transform: scale(1.1); color: var(--neon-alt);}
.pilar-card h3 { font-family: 'Cinzel', serif; font-size: 16px; letter-spacing: 1px; margin-bottom: 8px; font-weight: 700; color: #fff;}
.pilar-short { font-size: 11px; color: var(--text-muted); text-transform: uppercase; letter-spacing: 1px; font-weight: 400; transition: 0.3s;}
.pilar-hidden { max-height: 0; opacity: 0; overflow: hidden; transition: all 0.4s ease; }
.pilar-card.active .pilar-short { margin-bottom: 12px; color: var(--neon-alt); }
.pilar-card.active .pilar-hidden { max-height: 100px; opacity: 1; }

/* CAJA DE TRANSMISIÓN (MANIFIESTO) */
.manifiesto-expansivo { text-align: center; max-width: 800px; margin: 0 auto 80px; }
.manifiesto-expansivo .m-texto {
    background: linear-gradient(180deg, rgba(20,5,40,0.6) 0%, rgba(5,0,15,0.8) 100%);
    border: 1px solid rgba(157,78,221,0.3);
    padding: 40px; border-radius: 20px; margin-top: 25px;
    box-shadow: 0 20px 50px rgba(0,0,0,0.5), inset 0 0 20px rgba(157,78,221,0.1);
    backdrop-filter: blur(12px); position: relative;
}
.manifiesto-expansivo .m-texto::before {
    content: '◈'; position: absolute; top: -12px; left: 50%; transform: translateX(-50%);
    color: var(--neon-alt); font-size: 18px; background: #05000a; padding: 0 10px;
}
.m-texto p { font-size: clamp(1.1rem, 2vw, 1.4rem); line-height: 1.6; color: rgba(255,255,255,0.9); margin-bottom: 25px; font-weight: 300;}
.manifiesto-expansivo .m-texto p:first-child { font-style: italic; color: rgba(255,255,255,0.7); }
.m-texto strong { font-family: 'Cinzel', serif; color: var(--neon-alt); font-weight: 700; text-shadow: 0 0 10px rgba(76,201,240,0.4); font-size: 1.1em;}

.layout-inferior { display: grid; grid-template-columns: 1.6fr 1fr; gap: 50px; align-items: start; padding-bottom: 80px; position: relative; z-index: 10; }
.t-seccion-baja { font-family: 'Cinzel', serif; font-size: 15px; letter-spacing: 2px; color: rgba(255,255,255,0.9); margin-bottom: 25px; font-weight: 700; border-bottom: 1px solid var(--glass-border); padding-bottom: 10px; display: inline-block;}

.grid-dual { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.caja-contraste { padding: 30px; border-radius: 16px; background: var(--glass); border: 1px solid var(--glass-border); backdrop-filter: blur(8px); transition: 0.4s ease; box-shadow: inset 0 1px 0 rgba(255,255,255,0.02);} 
.caja-contraste.estatica { opacity: 0.5; filter: grayscale(100%); transform: scale(0.98);}
.caja-contraste.sintonizada { border-color: rgba(157, 78, 221, 0.4); background: linear-gradient(180deg, rgba(42, 10, 94, 0.3) 0%, rgba(10, 0, 20, 0.6) 100%); box-shadow: 0 10px 30px rgba(157, 78, 221, 0.15), inset 0 1px 0 rgba(255,255,255,0.05); transform: scale(1.02); z-index: 2;}
.caja-contraste h5 { font-family: 'Syncopate', sans-serif; font-size: 9px; margin-bottom: 18px; letter-spacing: 2px; color: var(--text-muted); }
.caja-contraste.sintonizada h5 { color: var(--neon); filter: drop-shadow(0 0 5px var(--neon)); }
.caja-contraste ul { list-style: none; }
.caja-contraste li { font-size: 13.5px; color: rgba(255,255,255,0.6); margin-bottom: 12px; line-height: 1.5; position: relative; padding-left: 16px; }
.caja-contraste li::before { content: '◈'; position: absolute; left: 0; color: rgba(255,255,255,0.2); font-size: 10px; top: 1px;}
.caja-contraste.sintonizada li { color: rgba(255,255,255,0.9); }
.caja-contraste.sintonizada li::before { color: var(--neon-alt); filter: drop-shadow(0 0 5px var(--neon-alt)); }

.faq-container { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.faq-item { background: var(--glass); border: 1px solid var(--glass-border); border-radius: 12px; overflow: hidden; transition: 0.3s; cursor: pointer; backdrop-filter: blur(8px); height: max-content;}
.faq-item:hover { border-color: rgba(76, 201, 240, 0.3); background: rgba(76, 201, 240, 0.05);}
.faq-pregunta { padding: 18px 20px; display: flex; justify-content: space-between; align-items: center; font-weight: 600; font-size: 13px; color: rgba(255,255,255,0.9); }
.faq-icon { font-size: 18px; color: var(--neon-alt); transition: transform 0.3s ease; font-weight: 300; display: inline-block; width: 20px; text-align: center;} 
.faq-respuesta { max-height: 0; padding: 0 20px; color: rgba(255,255,255,0.6); font-size: 13px; line-height: 1.6; transition: all 0.3s ease; opacity: 0; }
.faq-item.active { border-color: var(--neon-alt); background: rgba(10,0,20,0.8);}
.faq-item.active .faq-respuesta { max-height: 300px; padding: 0 20px 20px; opacity: 1; }
.faq-item.active .faq-icon { transform: rotate(45deg); color: #fff;}

.checkout-luxe-final { position: sticky; top: 30px; background: rgba(10, 0, 20, 0.6); border: 1px solid var(--glass-border); padding: 40px 30px; border-radius: 20px; backdrop-filter: blur(12px); overflow: hidden; box-shadow: 0 20px 50px rgba(0,0,0,0.6), inset 0 1px 0 rgba(255,255,255,0.05);}
.v-protocol { font-family: 'Syncopate', sans-serif; font-size: 8px; color: var(--neon-alt); margin-bottom: 12px; display: block; letter-spacing: 3px; font-weight: 700;}
.checkout-luxe-final h3 { font-family: 'Cinzel', serif; font-size: 22px; line-height: 1.3; margin-bottom: 25px; font-weight: 700; letter-spacing: 1px; color: #fff;}
.check-list { list-style: none; margin-bottom: 30px; border-top: 1px solid var(--glass-border); }
.check-list li { padding: 15px 0; border-bottom: 1px solid var(--glass-border); font-weight: 300; font-size: 13.5px; color: rgba(255,255,255,0.8); display: flex; align-items: flex-start; gap: 12px; }
.check-list li strong { color: #fff; font-weight: 600;}
.precio-final-layout { display: flex; flex-direction: column; gap: 15px; align-items: center; margin-bottom: 5px; }
.badge {
    background: rgba(10, 0, 20, 0.6);
    border: 1px solid var(--glass-border);
    padding: 8px 14px;
    border-radius: 8px;
    font-size: 0.6vw;
    font-weight: 600;
    letter-spacing: 1px;
    color: rgba(255,255,255,0.9);
    display: flex;
    align-items: center;
    gap: 6px;
    backdrop-filter: blur(4px);
    width: 15vw;
}

@media (max-width: 900px) {
    .contenedor-maestro { padding: 0 20px; }
    .portal-visual-contenedor { background: transparent; border-radius: 16px; margin-top: 10px; border: none; box-shadow: none;} 
    .hero-grid-maestro { display: block; position: relative; min-height: 65vh; padding: 0; border-radius: 20px; border: 1px solid var(--glass-border); background: var(--glass); backdrop-filter: blur(8px); overflow: hidden;}
        .hero-titles {
            position: absolute;
            top: 20vh;
            left: 1vw;
            width: 40%;
            z-index: 10;
            text-align: left;
            padding: 0;
}
.indicador-urgencia {
    font-family: 'Syncopate', sans-serif;
    font-size: 2.6vw;
    letter-spacing: 4px;
    color: var(--neon-alt);
    margin-bottom: 15px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 20px;
    border: 1px solid rgba(76, 201, 240, 0.3);
    border-radius: 50px;
    background: rgba(76, 201, 240, 0.05);
    width: 130%;
}
.txt-ruido {
    font-size: clamp(25px, 5vw, 25px);
    line-height: 0.5!important;
    letter-spacing: 0.1em;
}
    .txt-5d { font-size: clamp(13px, 3vw, 13px); line-height: 1px!important; margin-top: 5px;}
    .hero-foto {
    position: absolute;
    bottom: 0;
    right: -19.1%;
    width: 90%;
    height: 100%;
    z-index: 2;
    display: flex;
    align-items: flex-end;
    justify-content: flex-end;
}
    .hero-foto img { width: 100%; height: 85%; object-fit: contain; object-position: bottom right; -webkit-mask-image: linear-gradient(to bottom, rgba(0,0,0,1) 80%, rgba(0,0,0,0) 100%); mask-image: linear-gradient(to bottom, rgba(0,0,0,1) 80%, rgba(0,0,0,0) 100%); }
    .hero-offer { position: absolute; bottom: 20px; left: 0vw; width: calc(100% - 5px); z-index: 15; padding: 0; background: transparent; } 
    .cluster-conversion { margin-top: 15px; width: 100%; }
    .btn-neon-violeta { padding: 16px 20px; width: 100%; font-size: 10px; } 
    .grid-sintomas, .grid-pilares, .grid-dual, .faq-container, .layout-inferior { grid-template-columns: 1fr; gap: 16px; }
    .checkout-luxe-final { position: static; margin-top: 0; }
    .badge {
    background: rgba(10, 0, 20, 0.6);
    border: 1px solid var(--glass-border);
    padding: 8px 14px;
    border-radius: 8px;
    font-size: 2.2vw;
    font-weight: 600;
    letter-spacing: 1px;
    color: rgba(255,255,255,0.9);
    display: flex;
    align-items: center;
    gap: 6px;
    backdrop-filter: blur(4px);
    width: 30vw;
}
}

/* =========================================
   🚀 CHECKOUT MODAL - ESCALADO GLOBAL PERFECTO 🚀
   ========================================= */

.modal-overlay-whop {
    position: fixed; inset: 0; z-index: 99999;
    background-color: rgba(3, 0, 8, 0.85); 
    backdrop-filter: blur(15px); -webkit-backdrop-filter: blur(15px);
    opacity: 0; visibility: hidden; pointer-events: none;
    transition: opacity 0.3s ease, visibility 0.3s ease;
    display: flex; align-items: center; justify-content: center;
}

.modal-overlay-whop.activo { opacity: 1; visibility: visible; pointer-events: auto; }

@media (min-width: 901px) {
    .modal-caja-premium {
        position: relative; width: 900px; display: flex; align-items: stretch;
        background: #0A0A0A; border-radius: 20px; border: 1px solid rgba(255, 255, 255, 0.1);
        box-shadow: 0 40px 100px rgba(0,0,0,0.9), inset 0 1px 1px rgba(255,255,255,0.1);
        transform-origin: center center; transform: scale(0.85) translateY(20px); transition: transform 0.4s ease;
    }

    .modal-overlay-whop.activo .modal-caja-premium { transform: scale(0.85) translateY(0); }
    @media (max-height: 900px) { .modal-overlay-whop.activo .modal-caja-premium { transform: scale(0.78); } }
    @media (max-height: 800px) { .modal-overlay-whop.activo .modal-caja-premium { transform: scale(0.70); } }
    @media (max-height: 700px) { .modal-overlay-whop.activo .modal-caja-premium { transform: scale(0.62); } }

    .btn-cerrar-modal {
        position: absolute; top: 15px; right: 15px; z-index: 1000;
        width: 36px; height: 36px; border-radius: 50%;
        background: rgba(255,255,255,0.05); border: 1px solid rgba(255,255,255,0.15); color: #fff;
        display: flex; align-items: center; justify-content: center;
        cursor: pointer; transition: all 0.3s ease; backdrop-filter: blur(4px);
    }
    .btn-cerrar-modal:hover { background: #9d4edd; border-color: #9d4edd; transform: rotate(90deg) scale(1.1); }

    .modal-left-luxury {
        width: 40%; padding: 40px 30px; display: flex; flex-direction: column; justify-content: center; 
        background: radial-gradient(100% 100% at 0% 0%, rgba(157, 78, 221, 0.1) 0%, transparent 100%);
        border-right: 1px solid rgba(255,255,255,0.05);
    }

    .glow-orb { position: absolute; top: -10%; left: -10%; width: 500px; height: 500px; background: radial-gradient(circle, rgba(157, 78, 221, 0.2) 0%, transparent 60%); filter: blur(60px); z-index: 0; pointer-events: none; }
    .luxury-content { position: relative; z-index: 1; display: flex; flex-direction: column;}

    .stars-review { display: flex; align-items: center; gap: 8px; margin-bottom: 15px; }
    .stars-review .stars { color: #facc15; font-size: 14px; letter-spacing: 2px;}
    .stars-review span { font-family: 'Inter', sans-serif; font-size: 10px; color: rgba(255,255,255,0.7); }

    .title-elite { font-family: 'Cinzel', serif; font-size: 26px; line-height: 1.1; margin-bottom: 8px; background: linear-gradient(135deg, #ffffff 0%, #a78bfa 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; filter: drop-shadow(0 4px 10px rgba(157, 78, 221, 0.3)); }
    .desc-elite { font-family: 'Inter', sans-serif; font-size: 13px; color: rgba(255,255,255,0.85); margin-bottom: 25px; line-height: 1.5; font-weight: 300; }

    .feature-grid { display: flex; flex-direction: column; gap: 12px; margin-bottom: 25px; }
    .feature-item { display: flex; align-items: center; gap: 12px; }
    .f-icon { width: 32px; height: 32px; border-radius: 10px; flex-shrink: 0; background: rgba(157, 78, 221, 0.15); border: 1px solid rgba(157, 78, 221, 0.3); display: flex; justify-content: center; align-items: center; color: #a78bfa; }
    .f-icon svg { width: 16px; height: 16px; stroke: currentColor; stroke-width: 2; fill: none; }
    .f-text { display: flex; flex-direction: column; }
    .f-text strong { font-size: 13px; color: #fff; font-weight: 600; margin-bottom: 2px;}
    .f-text span { font-size: 11px; color: rgba(255,255,255,0.6); }

    .guarantee-box { display: flex; align-items: center; gap: 12px; background: rgba(255,255,255,0.03); border: 1px solid rgba(255,255,255,0.08); border-radius: 12px; padding: 12px 14px; }
    .g-icon svg { width: 24px; height: 24px; stroke: #4cc9f0; stroke-width: 1.5; fill: none;}
    .g-text strong { font-size: 12px; color: #fff; font-weight: 600; margin-bottom: 2px; }
    .g-text span { font-size: 10px; color: rgba(255,255,255,0.6); line-height: 1.4; display: block; }

    .trust-footer { display: flex; justify-content: flex-start; gap: 20px; margin-top: 20px; padding-top: 15px; border-top: 1px solid rgba(255,255,255,0.05); flex-wrap: wrap;}
    .t-logo { display: flex; align-items: center; gap: 6px; font-size: 10px; color: rgba(255,255,255,0.5); font-weight: 500; text-transform: uppercase; letter-spacing: 1px;}
    .t-logo svg { width: 14px; height: 14px; opacity: 0.8; fill: currentColor; }

    .modal-right-checkout { width: 60%; padding: 20px; display: block; position: relative; z-index: 5; }
    .checkout-terminal, .terminal-body { width: 100%; display: block; position: relative; }
    .whop-loader { position: absolute; top: 150px; left: 50%; transform: translateX(-50%); display: flex; flex-direction: column; align-items: center; gap: 12px; font-size: 11px; color: rgba(255,255,255,0.4); font-weight: 500; z-index: 1;}
    .spinner { width: 24px; height: 24px; border: 2px solid rgba(255,255,255,0.1); border-top-color: #a78bfa; border-radius: 50%; animation: spinS 1s linear infinite; }
    [data-whop-checkout-plan-id] { width: 100%; position: relative; z-index: 5; }
}

@media (max-width: 900px) {
    .modal-overlay-whop { display: block; overflow-y: auto; -webkit-overflow-scrolling: touch; padding: 0; }
    .modal-caja-premium { display: block; width: 100%; max-width: none; height: auto; min-height: 100vh; border-radius: 0; border: none; margin: 0; transform: none !important; }
    .modal-left-luxury { display: none !important; }
    .modal-right-checkout { display: block; width: 100%; height: auto; padding: 60px 15px 120px 15px; }
    .btn-cerrar-modal { position: fixed; top: 15px; right: 15px; background: rgba(0,0,0,0.8); z-index: 9999; }
}

/* =========================================
   🚀 CÓDIGO HTML PURO: CÁPSULA (SNEAK PEEK)
   ========================================= */
.capsule-preview-container {
    width: 100%; max-width: 900px; margin: 0 auto;
    padding: 20px; border-radius: 24px;
    background: var(--glass); border: 1px solid var(--glass-border);
    box-shadow: 0 30px 60px rgba(0,0,0,0.6);
    backdrop-filter: blur(10px);
}
.capsule-wrapper { position: relative; width: 100%; display: flex; justify-content: center; align-items: center; }
.ether-aura { position: absolute; top: -10%; left: -5%; right: -5%; bottom: -10%; background: radial-gradient(ellipse at center, rgba(157, 78, 221, 0.4) 0%, transparent 60%); z-index: -1; pointer-events: none; filter: blur(40px); border-radius: 500px; }
.ultimate-capsule { position: relative; width: 100%; aspect-ratio: 21 / 9; border-radius: 300px; background: linear-gradient(180deg, #2a2a35 0%, #0d0d14 30%, #000000 70%, #1a1a25 100%); padding: 20px; box-shadow: 0 40px 80px rgba(0,0,0,0.9), inset 0 10px 20px rgba(255,255,255,0.1), inset 0 -10px 30px rgba(0,0,0,0.8); display: flex; z-index: 10; }
.capsule-coil { position: absolute; top: 20%; bottom: 20%; width: 30px; background: #05050a; border-radius: 10px; box-shadow: inset 0 5px 15px rgba(0,0,0,0.9); z-index: 10; display: flex; flex-direction: column; justify-content: space-evenly; align-items: center; padding: 10px 0; }
.capsule-coil.left { left: 15px; } .capsule-coil.right { right: 15px; }
.plasma-line { width: 80%; height: 3px; background: var(--neon-alt); box-shadow: 0 0 10px var(--neon-alt); border-radius: 5px; opacity: 0.8; }
.capsule-screen { position: relative; flex: 1; border-radius: 200px; border-top: 4px solid rgba(76,201,240,0.5); border-bottom: 4px solid rgba(157,78,221,0.5); box-shadow: inset 0 0 80px rgba(0,0,0,1), inset 0 0 40px rgba(157,78,221,0.3); z-index: 20; overflow: hidden; isolation: isolate; }
.filtro-trama { position: absolute; inset: 0; z-index: 30; pointer-events: none; background-image: linear-gradient(rgba(157, 78, 221, 0.15) 1px, transparent 1px), linear-gradient(90deg, rgba(157, 78, 221, 0.15) 1px, transparent 1px); background-size: 4px 4px; mix-blend-mode: overlay; }
.sintonizador-texto { font-family: 'Syncopate', sans-serif; letter-spacing: 6px; z-index: 40; position: relative;}

/* NÚCLEO ENERGÉTICO EN LUGAR DEL PLAY BUTTON */
.core-energia {
    width: 60px; height: 60px; border-radius: 50%;
    background: radial-gradient(circle, var(--neon-alt) 0%, rgba(76,201,240,0.2) 60%, transparent 100%);
    box-shadow: 0 0 40px var(--neon-alt), inset 0 0 20px #fff;
    z-index: 40; position: relative;
    animation: corePulse 2s infinite alternate ease-in-out;
}
@keyframes corePulse {
    0% { transform: scale(0.9); opacity: 0.8; filter: brightness(1); }
    100% { transform: scale(1.1); opacity: 1; filter: brightness(1.5); box-shadow: 0 0 60px var(--neon-alt), inset 0 0 30px #fff; }
}

@media (max-width: 900px) {
    .capsule-preview-container { padding: 10px; border-radius: 16px; margin: 0 10px; }
    .ultimate-capsule { border-radius: 100px; aspect-ratio: 16/9; padding: 10px; }
    .capsule-screen { border-radius: 80px; }
    .capsule-coil { display: none; }
    .sintonizador-texto { font-size: 9px !important; letter-spacing: 3px; }
    .sintonizador-hz { font-size: 14px !important; }
    .core-energia { width: 40px; height: 40px; }
}

/* =========================================
   🚀 TESTIMONIOS VERTICALES (EFECTO HOLOGRÁFICO)
   ========================================= */
.grid-testimonios-native {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
    justify-items: center;
}

.native-tk-card {
    width: 100%; max-width: 320px; aspect-ratio: 9 / 16;
    border-radius: 16px; background: #000; overflow: hidden; position: relative;
    border: 1px solid rgba(157, 78, 221, 0.4);
    box-shadow: 0 20px 40px rgba(0,0,0,0.8), 0 0 20px rgba(157, 78, 221, 0.1);
    cursor: pointer;
    transform: translateZ(0); 
}

.native-tk-card video { 
    width: 100%; height: 100%; object-fit: cover; display: block; 
    position: relative; z-index: 1; 
}

.native-tk-card:not(.is-playing) video::-webkit-media-controls { display: none !important; }

/* Overlay de Cristal */
.video-cover-overlay {
    position: absolute; inset: 0; background: rgba(5,0,15,0.4);
    z-index: 10; display: flex; justify-content: center; align-items: center;
    transition: 0.4s ease; backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); 
}

.native-tk-card:hover .video-cover-overlay { background: rgba(5,0,15,0.2); }
.native-tk-card:hover .play-btn-neon { transform: scale(1.1); box-shadow: 0 0 30px var(--neon-alt); }
.native-tk-card.is-playing .video-cover-overlay { opacity: 0; visibility: hidden; pointer-events: none; }

/* INDICADOR DE DESLIZAMIENTO MÓVIL (Oculto en desktop por defecto) */
.mobile-swipe-cue { display: none; }

/* CARRUSEL HORIZONTAL PARA MÓVIL */
@media (max-width: 900px) {
    /* Mostramos el indicador animado solo en móviles */
    .mobile-swipe-cue {
        display: flex; align-items: center; justify-content: center; gap: 8px;
        color: var(--neon-alt); font-family: 'Syncopate', sans-serif; font-size: 8px;
        letter-spacing: 2px; margin-bottom: 25px; text-transform: uppercase;
        animation: deslizarFlecha 2s infinite ease-in-out;
    }
    .mobile-swipe-cue svg { width: 14px; height: 14px; stroke: currentColor; stroke-width: 2; fill: none; stroke-linecap: round; stroke-linejoin: round; }
    
    @keyframes deslizarFlecha {
        0%, 100% { transform: translateX(0); opacity: 0.5; }
        50% { transform: translateX(8px); opacity: 1; filter: drop-shadow(0 0 8px var(--neon-alt)); }
    }

    .grid-testimonios-native {
        display: flex; flex-wrap: nowrap; overflow-x: auto;
        scroll-snap-type: x mandatory; padding-bottom: 20px; gap: 15px;
        -ms-overflow-style: none; scrollbar-width: none; 
    }
    .grid-testimonios-native::-webkit-scrollbar { display: none; }
    
    .native-tk-card {
        flex: 0 0 260px;
        scroll-snap-align: center; 
    }
}