/* ===========================
   RESET & BASE
   =========================== */
*{margin:0;padding:0;box-sizing:border-box;}

:root{
    --gold:#c9a842;
    --gold-dark:#8b6914;
    --gold-light:#e8d08a;
    --gold-pale:#f5e9c0;
    --rose:#d4537a;
    --rose-light:#f0a8be;
    --black:#000;
    --white:#fff;
    --gray:#ddd;
    --gray-dim:#aaa;
    --glass:rgba(255,255,255,0.04);
    --glass-border:rgba(201,168,66,0.12);
    --section-pad:140px 8%;
    --accent:var(--gold);
    --accent-dark:var(--gold-dark);
    --accent-light:var(--gold-light);
    --accent-pale:var(--gold-pale);
}

html{scroll-behavior:smooth;}

body{
    background:#000;
    color:#fff;
    font-family:'Montserrat',sans-serif;
    overflow-x:hidden;
}

/* ===========================
   GLOBAL TYPOGRAPHY
   =========================== */
.section-tag{
    color:var(--gold-light);
    letter-spacing:5px;
    font-size:11px;
    font-weight:600;
    text-transform:uppercase;
    margin-bottom:18px;
    display:block;
}
.section-title{
    font-family:'Playfair Display',serif;
    font-size:clamp(36px,4.5vw,62px);
    line-height:1.1;
    font-weight:700;
    margin-bottom:24px;
}
.section-title em{font-style:italic;color:var(--gold);}
.section-subtitle{color:var(--gray-dim);font-size:16px;margin-bottom:60px;font-style:italic;}
.body-text{color:#bbb;line-height:1.9;font-size:16px;margin-bottom:20px;}

/* ===========================
   BUTTONS
   =========================== */
.btn-primary{
    background:linear-gradient(135deg,#dfc27d,#f5e9c0);
    color:#1a1000;
    text-decoration:none;
    padding:16px 40px;
    border-radius:50px;
    transition:all 0.4s ease;
    font-size:12.5px;
    font-weight:600;
    letter-spacing:2px;
    text-transform:uppercase;
    display:inline-block;
    font-family:'Montserrat',sans-serif;
    box-shadow:0 8px 25px rgba(201,168,66,0.25);
    border:1px solid rgba(255,255,255,0.4);
}
.btn-primary:hover{
    background:linear-gradient(135deg,#f5e9c0,#ffffff);
    transform:translateY(-4px);
    box-shadow:0 15px 35px rgba(201,168,66,0.35);
}
.btn-secondary{
    background:rgba(255,255,255,0.03);
    border:1px solid rgba(255,255,255,0.25);
    color:#fff;
    text-decoration:none;
    padding:16px 40px;
    border-radius:50px;
    transition:all 0.4s ease;
    font-size:12.5px;
    font-weight:400;
    letter-spacing:2px;
    text-transform:uppercase;
    display:inline-block;
    backdrop-filter:blur(10px);
}
.btn-secondary:hover{
    background:rgba(255,255,255,0.1);
    border-color:#fff;
    transform:translateY(-4px);
    box-shadow:0 10px 30px rgba(255,255,255,0.1);
}

/* ===========================
   NAVBAR
   =========================== */
.navbar{
    position:fixed;
    top:0;left:0;
    width:100%;
    height:90px;
    padding:0 8%;
    display:flex;
    justify-content:space-between;
    align-items:center;
    background:rgba(0,0,0,0.5);
    backdrop-filter:blur(16px);
    -webkit-backdrop-filter:blur(16px);
    border-bottom:1px solid rgba(201,168,66,0.15);
    z-index:999;
    transition:background 0.3s;
}
.navbar.scrolled{background:rgba(0,0,0,0.9);border-bottom-color:rgba(201,168,66,0.2);}
.logo img{width:90px;height:auto;display:block;object-fit:contain;}
.menu{display:flex;list-style:none;gap:38px;}
.menu a{
    color:rgba(255,255,255,0.8);
    text-decoration:none;
    transition:0.3s;
    font-size:13.5px;
    font-weight:500;
    letter-spacing:0.5px;
    position:relative;
}
.menu a::after{
    content:'';
    position:absolute;
    bottom:-4px;left:0;
    width:0;height:1px;
    background:var(--gold);
    transition:0.3s;
}
.menu a:hover{color:var(--gold-light);}
.menu a:hover::after{width:100%;}
.hamburger{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;}
.hamburger span{width:24px;height:1.5px;background:#fff;transition:0.3s;display:block;}

/* ===========================
   HERO
   =========================== */
.hero{
    min-height:100vh;
    padding:0 8%;
    padding-top:90px;
    position:relative;
    overflow:hidden;
    background:#000;
}
.hero-bg-image{
    position:absolute;
    inset:-5%; /* Margen extra para permitir el movimiento */
    background-image:url('../imagenes/Cusco.webp');
    background-size:cover;
    background-position:center;
    /* Al quitar fixed y poner animation, logramos el efecto de paneo/scroll constante */
    filter:brightness(0.35) saturate(0.8);
    z-index:0;
    animation: bgScrollRepite 35s ease-in-out infinite alternate;
}

@keyframes bgScrollRepite {
    0% {
        transform: scale(1) translateY(0);
    }
    100% {
        transform: scale(1.1) translateY(-4%);
    }
}
.hero-bg-glow{
    position:absolute;inset:0;
    background:linear-gradient(135deg,rgba(0,0,0,0.7) 0%,rgba(201,168,66,0.05) 50%,rgba(0,0,0,0.8) 100%);
    z-index:1;pointer-events:none;
}
.hero-bg-particles{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden;}
.hero-bg-particles span{
    position:absolute;width:2px;height:2px;border-radius:50%;
    background:var(--gold);opacity:0;animation:floatParticle linear infinite;
}
@keyframes floatParticle{
    0%{opacity:0;transform:translateY(100vh) translateX(0);}
    10%{opacity:0.6;}90%{opacity:0.3;}
    100%{opacity:0;transform:translateY(-20vh) translateX(30px);}
}
.hero-content{
    min-height:calc(100vh - 90px);
    display:flex;justify-content:space-between;align-items:center;gap:60px;
    position:relative;z-index:2;
}
.hero-text{width:55%;}
.subtitle{
    color:var(--gold-light);letter-spacing:5px;font-size:11px;font-weight:600;
    display:block;margin-bottom:14px;
}
.hero-text h1{
    font-size:clamp(46px,5vw,78px);line-height:1.1;
    font-family:'Playfair Display',serif;font-weight:700;margin-bottom:28px;
}
.hero-text h1 span{
    color:var(--gold);
    background:linear-gradient(135deg,var(--gold-dark),var(--gold),var(--gold-light));
    -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
}
.hero-text p{color:#ccc;line-height:1.85;font-size:17px;max-width:560px;}
.hero-buttons{display:flex;gap:18px;margin-top:48px;flex-wrap:wrap;}
.hero-image{
    width:460px;height:640px;border-radius:0 0 220px 220px;overflow:hidden;
    position:relative;flex-shrink:0;box-shadow:0 0 80px rgba(201,168,66,0.2);
}
.hero-image img{width:100%;height:100%;object-fit:cover;display:block;}
.hero-image-glow{
    position:absolute;inset:0;
    box-shadow:0 0 60px rgba(201,168,66,0.2) inset, 0 0 80px rgba(201,168,66,0.15);
    border-radius:inherit;pointer-events:none;
}
.hero-scroll-indicator{
    position:absolute;bottom:36px;left:50%;transform:translateX(-50%);
    display:flex;flex-direction:column;align-items:center;gap:8px;opacity:0.4;z-index:2;
}
.scroll-line{
    width:1px;height:48px;
    background:linear-gradient(to bottom,var(--gold),transparent);
    animation:scrollPulse 2s infinite;
}
.hero-scroll-indicator span{font-size:10px;letter-spacing:3px;text-transform:uppercase;}
@keyframes scrollPulse{0%{opacity:0.3;}50%{opacity:1;}100%{opacity:0.3;}}

/* ===========================
   STATS — con animación contador
   =========================== */
.stats-section{
    padding:70px 8% 30px 8%;
    border-top:1px solid var(--glass-border);
    border-bottom:1px solid var(--glass-border);
    background:linear-gradient(180deg,rgba(201,168,66,0.02),transparent);
}
.stats-grid{display:flex;align-items:center;justify-content:center;gap:0;max-width:900px;margin:0 auto;}
.stat-item{flex:1;text-align:center;padding:20px;}
.stat-number{
    display:block;
    font-family:'Playfair Display',serif;
    font-size:clamp(38px,4vw,56px);
    font-weight:700;
    background:linear-gradient(135deg,var(--gold-dark),var(--gold),var(--gold-light));
    -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
    line-height:1;margin-bottom:10px;
    transition:opacity 0.3s;
}
/* Infinity pulsing effect */
.stat-infinity{
    animation:infinityPulse 3s ease-in-out infinite;
    display:inline-block;
}
@keyframes infinityPulse{
    0%,100%{opacity:1;transform:scale(1);}
    50%{opacity:0.7;transform:scale(1.08);}
}
.stat-label{font-size:12px;color:var(--gray-dim);letter-spacing:1.5px;text-transform:uppercase;}
.stat-divider{width:1px;height:60px;background:rgba(201,168,66,0.2);flex-shrink:0;}

/* ===========================
   SOBRE MÍ
   =========================== */
.sobre-mi{padding:var(--section-pad);position:relative;overflow:hidden;}
#sobre-mi{padding-top:40px;padding-bottom:20px;}
.sobre-mi-bg{
    position:absolute;inset:0;
    background-image:url('../Imagenes/equipo.jpg');
    background-size:cover;background-position:center;background-attachment:fixed;
    filter:brightness(0.12) saturate(0.5);z-index:0;
}
.sobre-mi-bg::after{
    content:'';position:absolute;inset:0;
    background:linear-gradient(180deg,#000 0%,transparent 30%,transparent 70%,#000 100%);
}
.section-glow-left{
    position:absolute;top:50%;left:-200px;transform:translateY(-50%);
    width:500px;height:500px;
    background:radial-gradient(circle,rgba(201,168,66,0.07) 0%,transparent 70%);
    pointer-events:none;z-index:1;
}
.sobre-mi-grid{
    display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;
    position:relative;z-index:2;
}
.image-frame{
    position:relative;border-radius:20px;overflow:hidden;aspect-ratio:3/4;
    box-shadow:0 0 60px rgba(201,168,66,0.15);
}
.image-frame img{
    width:100%;height:100%;object-fit:cover;display:block;
    transition:transform 0.6s cubic-bezier(0.25, 1, 0.5, 1);
}
.image-frame:hover img{
    transform:scale(1.06);
}
.image-frame::after{
    content:'';position:absolute;inset:0;
    border:1px solid rgba(201,168,66,0.25);border-radius:20px;pointer-events:none;
    z-index: 3;
}
.image-badge{
    position:absolute;top:24px;right:24px;
    background:rgba(0,0,0,0.75);backdrop-filter:blur(12px);
    border:1px solid rgba(201,168,66,0.25);border-radius:12px;padding:12px 18px;text-align:center;
}
.image-badge span{font-size:11px;color:var(--gray-dim);display:block;margin-bottom:2px;}
.image-badge strong{
    font-size:22px;font-family:'Playfair Display',serif;
    background:linear-gradient(135deg,var(--gold-dark),var(--gold));
    -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
}
.floating-card{
    margin-top:20px;background:var(--glass);backdrop-filter:blur(12px);
    border:1px solid rgba(201,168,66,0.15);border-radius:16px;padding:20px 24px;
    display:flex;align-items:center;gap:16px;
}
.floating-card p{font-size:13px;color:#ccc;line-height:1.5;font-style:italic;margin:0;}
.floating-card span{font-size:11px;color:var(--gold);margin-top:4px;display:block;}
.milestone-list {
    margin-top: 36px;
    display: flex;
    flex-direction: column;
    gap: 24px;
}
.milestone {
    display: flex;
    align-items: flex-start;
    gap: 20px;
    transition: all 0.3s ease;
}
.milestone-icon-fenix {
    width: 42px;
    height: 42px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(201,168,66,0.18) 0%, rgba(10,8,4,0.7) 100%);
    border: 1.5px solid var(--gold);
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 0 15px rgba(201,168,66,0.25), inset 0 0 8px rgba(201,168,66,0.15);
    flex-shrink: 0;
    margin-top: 2px;
    transition: all 0.3s ease;
}
.milestone:hover .milestone-icon-fenix {
    transform: scale(1.15) rotate(8deg);
    border-color: var(--gold-light);
    box-shadow: 0 0 22px rgba(201,168,66,0.5), inset 0 0 10px rgba(201,168,66,0.3);
}
.milestone:hover {
    transform: translateX(5px);
}
.milestone strong {
    font-size: 15px;
    display: block;
    margin-bottom: 4px;
    transition: color 0.3s;
}
.milestone:hover strong {
    color: var(--gold-light);
}
.milestone span {
    font-size: 13px;
    color: #b0b0b0;
    line-height: 1.6;
}

/* Diseño premium de imagen de trayectoria */
.trayectoria-image-wrapper {
    position: relative;
    padding: 0;
}
.trayectoria-image-wrapper::before {
    content: '';
    position: absolute;
    inset: -4px;
    border: 2px solid var(--gold);
    border-radius: 34px;
    z-index: 1;
    pointer-events: none;
    transition: all 0.5s cubic-bezier(0.25, 1, 0.5, 1);
    opacity: 0;
    transform: scale(0.96);
}
.trayectoria-image-wrapper:hover::before {
    opacity: 1;
    transform: scale(1.03);
    border-color: var(--gold-light);
    box-shadow: 0 0 30px rgba(201,168,66,0.6);
}
.trayectoria-image-wrapper .image-frame {
    position: relative;
    z-index: 2;
}

/* Evitar que el marco dorado se corte arriba y asegurar z-index correcto */
.trayectoria {
    overflow: visible !important;
    position: relative;
    z-index: 5;
}

/* Rediseño premium del badge de evolución en la parte inferior izquierda */
.trayectoria .image-badge {
    top: auto;
    right: auto;
    bottom: 24px;
    left: 24px;
    background: linear-gradient(135deg, rgba(10, 8, 4, 0.85) 0%, rgba(20, 16, 8, 0.95) 100%);
    backdrop-filter: blur(16px);
    border: 1.5px solid rgba(201, 168, 66, 0.4);
    border-radius: 14px;
    padding: 10px 20px;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.6), inset 0 0 12px rgba(201, 168, 66, 0.15);
    z-index: 10;
    transition: all 0.4s cubic-bezier(0.25, 1, 0.5, 1);
}
.trayectoria .image-badge span {
    font-size: 9px;
    color: var(--gold-light);
    display: block;
    margin-bottom: 2px;
    letter-spacing: 2px;
    text-transform: uppercase;
}
.trayectoria .image-badge strong {
    font-size: 18px;
    font-family: 'Playfair Display', serif;
    background: linear-gradient(135deg, #ffffff 40%, var(--gold-light) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    display: block;
    font-weight: 700;
}
.trayectoria-image-wrapper:hover .image-badge {
    transform: translateY(-5px);
    border-color: var(--gold-light);
    box-shadow: 0 12px 40px rgba(201, 168, 66, 0.25);
}

/* ===========================
   MISIÓN Y VISIÓN
   =========================== */
.mision-vision {
    position: relative; padding: 120px 8%; overflow: hidden;
    background: #050400; /* Fondo muy oscuro y elegante */
}
.mision-vision::before {
    content: ''; position: absolute; top: -50%; left: -20%; width: 70%; height: 200%;
    background: radial-gradient(circle, rgba(201,168,66,0.08) 0%, transparent 60%); pointer-events: none;
}
.mision-vision::after {
    content: ''; position: absolute; bottom: -50%; right: -20%; width: 70%; height: 200%;
    background: radial-gradient(circle, rgba(212,83,122,0.03) 0%, transparent 60%); pointer-events: none;
}
/* Efecto de Fuego / Ave Fénix Animado */
.mv-bg-fire {
    position: absolute; inset: 0;
    background-image: url('../Imagenes/avefenix.jpg');
    background-size: cover; background-position: center;
    background-attachment: fixed;
    filter: brightness(0.25) saturate(1.3) contrast(1.1);
    z-index: 0; opacity: 0.8;
}
.mv-bg-fire::after {
    content: ''; position: absolute; inset: 0;
    background: linear-gradient(to top, rgba(0,0,0,1) 0%, rgba(0,0,0,0.3) 50%, rgba(0,0,0,1) 100%);
}
.mv-particles {
    position: absolute; inset: 0; z-index: 1; overflow: hidden; pointer-events: none;
}
.mv-particles .particle {
    position: absolute;
    bottom: -50px;
    left: var(--x);
    width: 5px; height: 15px; /* Forma de gota / chispa estirada */
    background: #fff; /* Núcleo blanco brillante */
    border-radius: 10px;
    box-shadow: 0 0 10px 3px #ffcc00, 0 0 20px 6px #ff6600, 0 0 35px 10px #ff0000;
    animation: sparksUp 4s ease-in infinite;
    animation-delay: var(--d);
    opacity: 0;
}
@keyframes sparksUp {
    0% { transform: translateY(0) scale(1); opacity: 0; }
    10% { opacity: 1; }
    70% { opacity: 0.8; }
    100% { transform: translateY(-800px) scale(0.3); opacity: 0; }
}
.mv-grid {
    display: grid; grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)); gap: 50px; max-width: 1100px; margin: 0 auto; position: relative; z-index: 2;
}
.mv-card {
    background: rgba(5, 3, 0, 0.25); backdrop-filter: blur(12px);
    padding: 50px 45px; border-radius: 24px;
    border: 1px solid var(--gold); /* Borde tipo oro brillante */
    box-shadow: 0 20px 50px rgba(0,0,0,0.6), inset 0 0 30px rgba(201,168,66,0.1);
    transition: all 0.5s ease; position: relative; overflow: hidden;
}
.mv-card::before {
    content: ''; position: absolute; top: 0; right: 0; width: 150px; height: 150px;
    background: radial-gradient(circle at top right, rgba(201,168,66,0.2) 0%, transparent 70%);
}
.mv-card:hover {
    transform: translateY(-10px);
    border-color: var(--gold-light);
    box-shadow: 0 30px 60px rgba(0,0,0,0.8), inset 0 0 40px rgba(201,168,66,0.25), 0 0 25px rgba(201,168,66,0.4);
}
.mv-icon-wrapper {
    width: 64px; height: 64px; border-radius: 50%;
    background: rgba(0,0,0,0.6);
    border: 1px solid var(--gold);
    display: flex; align-items: center; justify-content: center;
    box-shadow: 0 0 20px rgba(201,168,66,0.2) inset, 0 0 20px rgba(201,168,66,0.3);
    flex-shrink: 0;
}
.mv-icon-wrapper svg { width: 32px; height: 32px; stroke: var(--gold-light); fill: none; }
.mv-header { display: flex; align-items: center; gap: 20px; margin-bottom: 30px; }
.mv-text { color: #e0e0e0; line-height: 1.85; font-size: 15.5px; margin: 0; }

/* ===========================
   PILARES
   =========================== */
.pilares {
    padding: 120px 8% 60px 8%;
    background: #030200;
    position: relative;
    overflow: hidden;
}
.pilares-bg {
    position: absolute;
    inset: 0;
    background-image: url('../imagenes/ternomarina.jpg');
    background-size: cover;
    background-position: center 25%;
    background-attachment: fixed;
    filter: brightness(0.16) saturate(0.65);
    z-index: 0;
    opacity: 0.95;
}
.pilares-bg::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, #000 0%, transparent 25%, transparent 75%, #000 100%);
}
.pilares-header {
    text-align: center;
    margin-bottom: 72px;
    position: relative;
    z-index: 2;
}
.pilares-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 28px;
    position: relative;
    z-index: 2;
}
.pilar-card {
    background: rgba(15, 12, 6, 0.35);
    backdrop-filter: blur(16px);
    border: 1.5px solid rgba(201, 168, 66, 0.15);
    border-radius: 24px;
    padding: 45px 36px;
    transition: all 0.5s cubic-bezier(0.25, 1, 0.5, 1);
    position: relative;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.4), inset 0 0 15px rgba(201, 168, 66, 0.02);
}

/* Luxury Sweep Effect on Hover */
.pilar-card::after {
    content: '';
    position: absolute;
    top: -50%;
    left: -60%;
    width: 30%;
    height: 200%;
    background: linear-gradient(to right, transparent, rgba(255, 255, 255, 0.12), transparent);
    transform: rotate(35deg);
    transition: all 0.8s ease;
    pointer-events: none;
    z-index: 1;
}
.pilar-card:hover::after {
    left: 140%;
}

/* Gold Top Highlight Line */
.pilar-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, transparent, var(--gold-light), var(--gold), transparent);
    opacity: 0;
    transition: opacity 0.5s ease;
    z-index: 2;
}

.pilar-card:hover {
    border-color: rgba(201, 168, 66, 0.45);
    transform: translateY(-8px);
    background: rgba(201, 168, 66, 0.05);
    box-shadow: 0 20px 45px rgba(0, 0, 0, 0.7), 
                inset 0 0 20px rgba(201, 168, 66, 0.1),
                0 0 25px rgba(201, 168, 66, 0.15);
}
.pilar-card:hover::before {
    opacity: 1;
}

/* Beautiful Icon Emblem Badge */
.pilar-icon {
    width: 52px;
    height: 52px;
    border-radius: 16px;
    background: radial-gradient(circle, rgba(201, 168, 66, 0.15) 0%, rgba(10, 8, 4, 0.7) 100%);
    border: 1.5px solid var(--gold);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    color: var(--gold-light);
    margin-bottom: 26px;
    box-shadow: 0 0 15px rgba(201, 168, 66, 0.2), inset 0 0 8px rgba(201, 168, 66, 0.1);
    transition: all 0.5s cubic-bezier(0.25, 1, 0.5, 1);
    position: relative;
    z-index: 2;
}

.pilar-card:hover .pilar-icon {
    transform: scale(1.12) rotate(10deg);
    border-color: var(--gold-light);
    color: #fff;
    box-shadow: 0 0 25px rgba(201, 168, 66, 0.45), inset 0 0 12px rgba(201, 168, 66, 0.2);
}

.pilar-card h3 {
    font-family: 'Playfair Display', serif;
    font-size: 21px;
    color: #fff;
    margin-bottom: 16px;
    font-weight: 600;
    transition: color 0.3s ease;
    position: relative;
    z-index: 2;
}
.pilar-card:hover h3 {
    color: var(--gold-light);
}

.pilar-card p {
    font-size: 13.5px;
    color: #b8b8b8;
    line-height: 1.75;
    transition: color 0.3s ease;
    margin: 0;
    position: relative;
    z-index: 2;
}
.pilar-card:hover p {
    color: #e0e0e0;
}

/* ===========================
   EXPERIENCIAS
   =========================== */
.experiencias{padding:var(--section-pad);position:relative;overflow:hidden;}
#experiencias{padding-top:30px;}
.section-glow-right{
    position:absolute;top:50%;right:-200px;transform:translateY(-50%);
    width:500px;height:500px;
    background:radial-gradient(circle,rgba(201,168,66,0.07) 0%,transparent 70%);pointer-events:none;
}
.experiencias-header{text-align:center;margin-bottom:72px;}

/* Grid viajes */
.experiencias-grid{
    display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:auto;gap:20px;margin-bottom:80px;
}
.exp-large{grid-column:span 2;grid-row:span 2;}
.exp-wide{grid-column:span 2;}
.exp-card{
    border-radius:20px;overflow:hidden;position:relative;cursor:pointer;min-height:260px;background:#0d0900;
}
.exp-large{min-height:540px;}
.exp-image{position:absolute;inset:0;}
.exp-image img{
    width:100%;height:100%;object-fit:cover;display:block;
    transition:transform 0.7s ease, filter 0.5s ease;
    filter:brightness(0.75) saturate(1);
}
.exp-card:hover .exp-image img{
    transform:scale(1.07);filter:brightness(0.3) saturate(0.7);
}

/* Título SIEMPRE VISIBLE en la parte inferior */
.exp-title-always{
    position:absolute;
    bottom:0;left:0;right:0;
    padding:22px 24px 20px;
    background:linear-gradient(to top, rgba(0,0,0,0.85) 0%, rgba(0,0,0,0.4) 60%, transparent 100%);
    z-index:2;
    transition:opacity 0.35s ease;
}
.exp-title-always .exp-tag,
.exp-title-always .exp-tag-gold{
    font-size:10px;letter-spacing:3px;color:var(--gold-light);display:block;margin-bottom:5px;
}
.exp-title-always h3{
    font-family:'Playfair Display',serif;
    font-size:clamp(16px,1.6vw,22px);
    color:#fff;margin:0;
    text-shadow:0 2px 8px rgba(0,0,0,0.6);
}

/* Al hacer hover, el título siempre visible desaparece (lo reemplaza el overlay completo) */
.exp-card:hover .exp-title-always{opacity:0;}

/* Borde dorado en hover */
.exp-card::after{
    content:'';position:absolute;inset:0;
    border:1px solid transparent;border-radius:20px;
    transition:border-color 0.4s;pointer-events:none;z-index:3;
}
.exp-card:hover::after{border-color:rgba(201,168,66,0.35);}

/* Overlay completo — OCULTO por defecto, visible al hover */
.exp-overlay{
    position:absolute;bottom:0;left:0;right:0;padding:28px;
    background:linear-gradient(to top,rgba(0,0,0,0.95) 0%,rgba(0,0,0,0.4) 55%,transparent 100%);
    opacity:0;transform:translateY(10px);
    transition:opacity 0.45s ease, transform 0.45s ease;z-index:4;
}
.exp-card:hover .exp-overlay{opacity:1;transform:translateY(0);}

/* Shimmer */
.exp-card::before{
    content:'';position:absolute;top:-100%;left:-60%;width:50%;height:300%;
    background:linear-gradient(105deg,transparent,rgba(201,168,66,0.07),transparent);
    transform:skewX(-20deg);transition:left 0.7s ease;z-index:5;pointer-events:none;
}
.exp-card:hover::before{left:130%;}

.exp-tag{font-size:10px;letter-spacing:3px;color:var(--gold-light);display:block;margin-bottom:8px;}
.exp-tag-gold{color:var(--gold);font-size:10px;letter-spacing:3px;display:block;margin-bottom:8px;}
.exp-overlay h3{font-family:'Playfair Display',serif;font-size:clamp(20px,2vw,26px);margin-bottom:8px;}
.exp-overlay p{font-size:13px;color:rgba(255,255,255,0.85);line-height:1.55;}

/* ===========================
   FRASE DIVISORA
   =========================== */
.exp-quote-divider{
    display:flex;align-items:center;gap:40px;margin:20px 0 100px;padding:0 4%;
}
.quote-line{flex:1;height:1px;background:linear-gradient(90deg,transparent,rgba(201,168,66,0.4),transparent);}
.exp-quote{
    text-align:center;flex-shrink:0;max-width:620px;
    font-family:'Playfair Display',serif;font-size:clamp(18px,2vw,24px);
    font-style:italic;color:#e0c97a;line-height:1.55;position:relative;
}
.quote-mark{
    font-size:52px;line-height:0.4;vertical-align:-18px;
    color:var(--gold);opacity:0.5;font-family:'Playfair Display',serif;display:inline-block;margin:0 6px;
}

/* ===========================
   GRID EVENTOS/MENTORÍAS
   =========================== */
.eventos-experiencias-grid{margin-bottom:0;}
.exp-image-overlay-evento img{filter:brightness(0.75) saturate(0.9);}
.exp-card.exp-evento-card:hover .exp-image-overlay-evento img{filter:brightness(0.3) saturate(0.6);}
.exp-overlay-evento{
    background:linear-gradient(to top,rgba(0,0,0,0.98) 0%,rgba(10,6,0,0.5) 75%,transparent 100%);
}
.exp-overlay-evento p{font-size:13.5px;color:rgba(255,255,255,0.85);line-height:1.6;margin-bottom:14px;}
.exp-evento-desc{font-size:13.5px !important;}
.exp-mentoria-badge{
    display:inline-block;
    background:rgba(201,168,66,0.12);border:1px solid rgba(201,168,66,0.35);
    color:var(--gold-light);font-size:10px;letter-spacing:2px;
    padding:6px 14px;border-radius:50px;font-weight:600;
}

/* ===========================
   EVENTOS — NUEVO LAYOUT CON VIDEO AL LADO
   =========================== */
.eventos{
    padding:var(--section-pad);position:relative;overflow:hidden;
}
.evento-mio-bg{
    position:absolute;inset:0;
    background-image:url('../Imagenes/lima.jpg');
    background-size:cover;background-position:center;background-attachment:fixed;
    filter:brightness(0.12) saturate(0.5);z-index:0;
}
.eventos-bg{
    position:absolute;inset:0;
    background-image:url('../imagenes/egipto.jpg');
    background-size:cover;background-position:center 60%;background-attachment:fixed;
    filter:brightness(0.1) saturate(0.4);z-index:0;
}
.eventos-bg::after{
    content:'';position:absolute;inset:0;
    background:linear-gradient(180deg,#000 0%,rgba(0,0,0,0.6) 50%,#000 100%);
}
.eventos-header{text-align:center;margin-bottom:72px;position:relative;z-index:1;}

/* Grid principal: evento + video lateral */
.eventos-main-grid{
    display:grid;
    grid-template-columns:1.1fr 0.9fr;
    gap:44px;
    align-items:start;
    position:relative;z-index:1;
}

.evento-featured{
    background:rgba(0,0,0,0.65);
    border:1px solid rgba(201,168,66,0.2);
    border-radius:24px;padding:48px;
    position:relative;overflow:hidden;
    backdrop-filter:blur(20px);
}
.evento-featured::before{
    content:'';position:absolute;top:0;left:0;right:0;height:3px;
    background:linear-gradient(90deg,var(--gold-dark),var(--gold),var(--gold-light));
}
.evento-badge-featured{
    display:inline-block;
    background:rgba(201,168,66,0.1);border:1px solid rgba(201,168,66,0.3);
    color:var(--gold-light);font-size:10px;letter-spacing:3px;
    padding:6px 14px;border-radius:50px;margin-bottom:28px;
}
.evento-fecha{display:flex;align-items:baseline;gap:10px;margin-bottom:24px;}
.fecha-mes{font-size:13px;color:var(--gold);letter-spacing:3px;font-weight:600;}
.fecha-dia{font-family:'Playfair Display',serif;font-size:52px;line-height:1;color:#fff;}
.fecha-año{font-size:14px;color:var(--gray-dim);}
.evento-featured h3{font-family:'Playfair Display',serif;font-size:28px;margin-bottom:18px;line-height:1.2;}
.evento-featured>p{color:#aaa;font-size:15px;line-height:1.7;margin-bottom:28px;}
.evento-aprenderan{list-style:none;margin-bottom:28px;}
.evento-aprenderan li{
    font-size:14px;color:#bbb;padding:7px 0;
    border-bottom:1px solid rgba(201,168,66,0.08);display:flex;gap:10px;
}
.evento-info{display:flex;gap:20px;flex-wrap:wrap;margin-bottom:36px;}
.evento-info span{font-size:13px;color:#888;}

/* Video lateral */
.evento-video-lateral{
    position:sticky;top:110px;
    display:flex;flex-direction:column;
    align-items:flex-start;
}
.evento-video-title{
    font-family:'Playfair Display',serif;
    font-size:clamp(22px,2.2vw,32px);
    line-height:1.2;
    margin-bottom:8px;
}
.evento-video-title em{color:var(--gold);font-style:italic;}
.evento-video-sub{
    font-size:11px;letter-spacing:2px;text-transform:uppercase;
    color:#666;margin-bottom:28px;
}
.video-container{
    position:relative;width:100%;border-radius:20px;overflow:hidden;
    border:1px solid rgba(201,168,66,0.25);
    box-shadow:0 0 50px rgba(201,168,66,0.12), 0 0 100px rgba(0,0,0,0.8);
    background:#0d0900;
}
.video-container::before{
    content:'';position:absolute;top:0;left:0;right:0;height:3px;
    background:linear-gradient(90deg,transparent,var(--gold),transparent);z-index:2;
}
.video-container video,.video-container iframe{
    width:100%;display:block;aspect-ratio:16/9;border:none;
}
/* Video lateral con ratio 9:16 o cuadrado, también funciona bien 16:9 */
.video-lateral{border-radius:20px;}

.video-placeholder{
    width:100%;aspect-ratio:16/9;
    background:linear-gradient(135deg,#0d0900,#1a1200,#0d0900);
    display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;cursor:pointer;
}
.video-play-btn{
    width:72px;height:72px;border-radius:50%;
    background:linear-gradient(135deg,var(--gold-dark),var(--gold));
    display:flex;align-items:center;justify-content:center;
    box-shadow:0 0 40px rgba(201,168,66,0.4);
    transition:transform 0.3s, box-shadow 0.3s;
    animation:pulseBtn 2.5s ease infinite;
}
.video-play-btn:hover{transform:scale(1.1);box-shadow:0 0 60px rgba(201,168,66,0.6);}
@keyframes pulseBtn{
    0%,100%{box-shadow:0 0 40px rgba(201,168,66,0.4);}
    50%{box-shadow:0 0 70px rgba(201,168,66,0.7);}
}
.video-play-btn svg{margin-left:6px;}
.video-placeholder p{color:#666;font-size:12px;letter-spacing:2px;text-transform:uppercase;}

/* ===========================
   COMUNIDAD
   =========================== */
.comunidad{padding:var(--section-pad);position:relative;overflow:hidden;}
.section-glow-center{
    position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);
    width:800px;height:600px;
    background:radial-gradient(ellipse,rgba(201,168,66,0.04) 0%,transparent 70%);pointer-events:none;
}
.comunidad-inner{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;}
.comunidad-beneficios{display:flex;flex-direction:column;gap:24px;margin-top:36px;}
.beneficio{display:flex;gap:18px;align-items:flex-start;}
.beneficio-icon{font-size:20px;color:var(--gold);flex-shrink:0;margin-top:2px;}
.beneficio strong{font-size:15px;display:block;margin-bottom:4px;}
.beneficio p{font-size:13.5px;color:#999;line-height:1.6;margin:0;}
.comunidad-visual{position:relative;height:500px;}
.comunidad-cards{position:relative;width:100%;height:100%;}
.mini-card{
    position:absolute;
    background:rgba(0,0,0,0.8);backdrop-filter:blur(16px);
    border:1px solid rgba(201,168,66,0.15);border-radius:14px;padding:14px 18px;
    display:flex;align-items:center;gap:12px;max-width:210px;z-index:2;
}
.mini-card:hover{border-color:rgba(201,168,66,0.35);}
.mini-card-icon{font-size:22px;}
.mini-card strong{font-size:13px;display:block;margin-bottom:2px;}
.mini-card p{font-size:11px;color:#888;margin:0;line-height:1.4;}
.comunidad-center-img{
    position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);
    width:180px;height:260px;border-radius:100px;overflow:hidden;
    box-shadow:0 0 60px rgba(201,168,66,0.25);z-index:1;
    border:1px solid rgba(201,168,66,0.2);
}
.comunidad-center-img img{width:100%;height:100%;object-fit:cover;object-position:top;}
.comunidad-img-glow{position:absolute;inset:0;box-shadow:0 0 40px rgba(201,168,66,0.2) inset;border-radius:inherit;}

/* ===========================
   TESTIMONIOS
   =========================== */
.testimonios{padding:var(--section-pad);overflow:hidden;}
.testimonios-header{text-align:center;margin-bottom:72px;}
.testimonios-track-wrapper{
    overflow:hidden;
    mask:linear-gradient(90deg,transparent,black 10%,black 90%,transparent);
    -webkit-mask:linear-gradient(90deg,transparent,black 10%,black 90%,transparent);
}
.testimonios-track{
    display:flex;gap:24px;animation:scrollLeft 32s linear infinite;width:max-content;
}
@keyframes scrollLeft{0%{transform:translateX(0);}100%{transform:translateX(-50%);}}
.testimonios-track:hover{animation-play-state:paused;}
.testimonio-card{
    background:var(--glass);border:1px solid var(--glass-border);
    border-radius:20px;padding:36px;width:340px;flex-shrink:0;transition:border-color 0.3s;
}
.testimonio-card:hover{border-color:rgba(201,168,66,0.25);}
.testimonio-stars{color:var(--gold);font-size:14px;margin-bottom:16px;letter-spacing:2px;}
.testimonio-card>p{font-size:14px;color:#bbb;line-height:1.7;margin-bottom:24px;font-style:italic;}
.testimonio-author{display:flex;align-items:center;gap:14px;}
.author-avatar{
    width:42px;height:42px;border-radius:50%;
    background:linear-gradient(135deg,var(--gold-dark),var(--gold));
    display:flex;align-items:center;justify-content:center;
    font-size:16px;font-weight:700;color:#000;flex-shrink:0;
}
.testimonio-author strong{font-size:14px;display:block;margin-bottom:2px;}
.testimonio-author span{font-size:12px;color:var(--gray-dim);}

/* ===========================
   CTA FINAL
   =========================== */
.cta-final{padding:var(--section-pad);position:relative;overflow:hidden;text-align:center;}
.cta-glow{
    position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);
    width:700px;height:500px;
    background:radial-gradient(ellipse,rgba(201,168,66,0.08) 0%,transparent 65%);pointer-events:none;
}
.cta-mio-final {
    position:absolute;inset:0;
    background-image:url('../Imagenes/avefenix.jpg');
    background-size:cover;background-position:center;background-attachment:fixed;
    filter:brightness(0.12) saturate(0.5);z-index:0;
}
.cta-inner{position:relative;z-index:1;}
.cta-title{
    font-family:'Playfair Display',serif;
    font-size:clamp(42px,5vw,72px);line-height:1.1;max-width:700px;margin:0 auto 20px;
}
.cta-title em{font-style:italic;color:var(--gold);}
.cta-sub{color:#999;font-size:16px;max-width:500px;margin:0 auto 48px;line-height:1.7;}
.cta-buttons{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;}
.btn-whatsapp{
    background:#25D366;color:#fff;text-decoration:none;
    padding:16px 40px;border-radius:50px;font-size:12.5px;
    font-weight:600;letter-spacing:2px;text-transform:uppercase;
    display:inline-flex;align-items:center;gap:10px;transition:all 0.4s ease;
    font-family:'Montserrat',sans-serif;
    box-shadow:0 8px 25px rgba(37,211,102,0.25);
    border:1px solid rgba(255,255,255,0.2);
}
.btn-whatsapp:hover{background:#1abe5a;transform:translateY(-4px);box-shadow:0 15px 35px rgba(37,211,102,0.35);}

/* ===========================
   CONTACTO — íconos más compactos
   =========================== */
.contacto{padding:var(--section-pad);border-top:1px solid var(--glass-border);}
.contacto-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start;}
.contacto-links{display:flex;flex-direction:column;gap:12px;margin-top:28px;}
.contacto-link{
    display:flex;align-items:center;gap:14px;text-decoration:none;color:#fff;
    background:var(--glass);border:1px solid var(--glass-border);border-radius:12px;padding:14px 18px;
    transition:all 0.3s;
}
.contacto-link:hover{border-color:rgba(201,168,66,0.3);background:rgba(201,168,66,0.04);transform:translateX(4px);}
.contacto-link-icon{
    width:36px;height:36px;border-radius:10px;
    background:rgba(201,168,66,0.1);border:1px solid rgba(201,168,66,0.2);
    display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--gold);
}
.contacto-link strong{font-size:13px;display:block;margin-bottom:1px;}
.contacto-link span{font-size:11px;color:var(--gray-dim);}
.contacto-map{
    margin-top:20px;border-radius:14px;overflow:hidden;
    border:1px solid rgba(201,168,66,0.2);box-shadow:0 0 30px rgba(201,168,66,0.1);
}
.contacto-map iframe{display:block;width:100%;height:200px;border:none;filter:grayscale(30%) brightness(0.85);}
.form-glass{
    background:var(--glass);border:1px solid var(--glass-border);border-radius:24px;padding:44px;
}
.form-glass h3{font-family:'Playfair Display',serif;font-size:22px;margin-bottom:28px;}
.form-group{margin-bottom:18px;}
.form-group input,.form-group textarea,.form-group select{
    width:100%;background:rgba(255,255,255,0.04);border:1px solid var(--glass-border);
    border-radius:12px;padding:16px 20px;color:#fff;
    font-family:'Montserrat',sans-serif;font-size:14px;outline:none;
    transition:border-color 0.3s;-webkit-appearance:none;appearance:none;
}
.form-group select option{background:#0d0900;color:#fff;}
.form-group input::placeholder,.form-group textarea::placeholder{color:#555;}
.form-group input:focus,.form-group textarea:focus,.form-group select:focus{border-color:rgba(201,168,66,0.5);}
.form-group textarea{resize:vertical;min-height:110px;}

/* ===========================
   FOOTER — íconos reales con texto
   =========================== */
.footer{border-top:1px solid var(--glass-border);padding:70px 8% 0;}
.footer-inner{
    display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:60px;
    padding-bottom:60px;border-bottom:1px solid var(--glass-border);align-items:start;
}
.footer-logo img{width:80px;margin-bottom:16px;display:block;}
.footer-logo p{font-size:13px;color:#666;line-height:1.7;}
.footer-links{display:flex;flex-direction:column;gap:14px;}
.footer-links a{color:#666;text-decoration:none;font-size:13px;transition:0.3s;}
.footer-links a:hover{color:var(--gold);}

/* Redes sociales con ícono real + texto */
.footer-social{display:flex;flex-direction:column;gap:10px;}
.social-btn{
    display:inline-flex;align-items:center;gap:10px;
    background:var(--glass);border:1px solid var(--glass-border);
    color:#aaa;text-decoration:none;font-size:12px;letter-spacing:0.5px;
    padding:10px 16px;border-radius:10px;transition:0.3s;width:fit-content;
}
.social-btn svg{flex-shrink:0;opacity:0.7;transition:0.3s;}
.social-btn:hover{background:rgba(201,168,66,0.08);border-color:rgba(201,168,66,0.3);color:var(--gold);}
.social-btn:hover svg{opacity:1;}

.footer-bottom{
    padding:28px 0;display:flex;justify-content:space-between;
    align-items:center;flex-wrap:wrap;gap:10px;
}
.footer-bottom p{font-size:12px;color:#444;}

/* ===========================
   WHATSAPP FLOAT
   =========================== */
.whatsapp-float{
    position:fixed;bottom:32px;right:32px;
    width:58px;height:58px;background:#25D366;border-radius:50%;
    display:flex;align-items:center;justify-content:center;
    color:#fff;text-decoration:none;
    box-shadow:0 4px 20px rgba(37,211,102,0.4);z-index:998;
    transition:all 0.3s;opacity:0;transform:scale(0.8);
}
.whatsapp-float.visible{opacity:1;transform:scale(1);}
.whatsapp-float:hover{transform:scale(1.1);box-shadow:0 8px 30px rgba(37,211,102,0.5);}

/* ===========================
   ANIMATIONS / REVEAL
   =========================== */
.reveal,.reveal-up,.reveal-left,.reveal-right{
    opacity:0;transition:opacity 0.9s ease, transform 0.9s ease;
}
.reveal{transform:translateY(30px);}
.reveal-up{transform:translateY(40px);}
.reveal-left{transform:translateX(-40px);}
.reveal-right{transform:translateX(40px);}
.revealed{opacity:1 !important;transform:translate(0,0) !important;}

/* ===========================
   RESPONSIVE
   =========================== */
@media(max-width:1200px){
    .pilares-grid{grid-template-columns:repeat(2,1fr);}
    .experiencias-grid{grid-template-columns:repeat(2,1fr);}
    .exp-large{grid-column:span 1;grid-row:span 1;min-height:280px;}
    .exp-wide{grid-column:span 2;}
    .eventos-main-grid{grid-template-columns:1fr 1fr;}
}
@media(max-width:900px){
    :root{--section-pad:100px 6%;}
    .navbar{padding:0 6%;}
    .hero{padding:0 6%;padding-top:90px;}
    .menu{
        display:none;position:fixed;top:90px;left:0;right:0;
        background:rgba(0,0,0,0.97);flex-direction:column;gap:0;
        padding:20px 0;border-bottom:1px solid var(--glass-border);
    }
    .menu.open{display:flex;}
    .menu li a{display:block;padding:16px 8%;font-size:15px;}
    .hamburger{display:flex;}
    .hero-content{flex-direction:column;padding-top:60px;padding-bottom:60px;gap:50px;min-height:auto;}
    .hero-text{width:100%;text-align:center;}
    .hero-text p{max-width:100%;}
    .hero-buttons{justify-content:center;}
    .hero-image{width:280px;height:380px;margin:0 auto;}
    .sobre-mi-grid{grid-template-columns:1fr;}
    .image-frame{max-width:400px;aspect-ratio:3/4;margin:0 auto;}
    .sobre-mi-text{text-align:center;}
    .milestone-list{align-items:flex-start;text-align:left;}
    .pilares-grid{grid-template-columns:1fr 1fr;gap:16px;}
    .experiencias-grid{grid-template-columns:1fr 1fr;}
    .exp-wide{grid-column:span 2;}
    .exp-quote-divider{flex-direction:column;gap:20px;padding:0;}
    .exp-quote{font-size:18px;}
    /* Eventos: stack vertical en móvil */
    .eventos-main-grid{grid-template-columns:1fr;}
    .evento-video-lateral{position:static;}
    .comunidad-inner{grid-template-columns:1fr;}
    .comunidad-visual{height:360px;}
    .contacto-grid{grid-template-columns:1fr;}
    .stats-grid{flex-wrap:wrap;}
    .stat-divider{display:none;}
    .stat-item{min-width:50%;}
    .footer-inner{grid-template-columns:1fr 1fr;gap:40px;}
    .footer-bottom{flex-direction:column;text-align:center;}
}
@media(max-width:580px){
    :root{--section-pad:80px 5%;}
    .pilares-grid{grid-template-columns:1fr;}
    .experiencias-grid{grid-template-columns:1fr;}
    .exp-wide{grid-column:span 1;}
    .cta-buttons{flex-direction:column;align-items:center;}
    .footer-inner{grid-template-columns:1fr;}
    .evento-featured{padding:32px 24px;}
    .form-glass{padding:30px 24px;}
    .hero-text h1{font-size:clamp(42px,10vw,68px);}
}
