/* =========================================
   ESU ELITE FUNNEL DESIGN SYSTEM V1
   ========================================= */

.esu-funnel{
    font-family: 'Inter', system-ui, -apple-system, sans-serif;
    background:#f8fafc;
    color:#0f172a;
}

/* ================= NAV ================= */

.esu-nav{
    position:sticky;
    top:0;
    z-index:1000;
    box-shadow:0 2px 12px rgba(0,0,0,.08);
}

.esu-nav-inner{
    max-width:1200px;
    margin:0 auto;
    padding:16px 20px;
    display:flex;
    align-items:center;
    justify-content:space-between;
}

.esu-nav-brand{
    font-weight:900;
    font-size:20px;
    letter-spacing:-.02em;
}

.esu-nav-links{
    display:flex;
    gap:18px;
    align-items:center;
}

.esu-nav-links a{
    text-decoration:none;
    font-weight:700;
    font-size:13px;
    text-transform:uppercase;
}

.esu-nav-cta{
    padding:10px 18px;
    border-radius:999px;
    font-weight:900;
    font-size:13px;
    text-decoration:none;
    color:#fff;
}

/* ================= HERO ================= */

.esu-hero{
    color:#fff;
}

.esu-hero-inner{
    max-width:1200px;
    margin:0 auto;
    padding:100px 20px 90px;
}

.esu-hero-title{
    font-size:56px;
    font-weight:900;
    letter-spacing:-.04em;
    line-height:1.05;
    margin-bottom:18px;
}

.esu-hero-body{
    font-size:20px;
    max-width:650px;
    opacity:.95;
    line-height:1.7;
}

/* ================= PILLS ================= */

.esu-pill{
    background:rgba(255,255,255,.15);
    padding:8px 14px;
    border-radius:999px;
    font-size:13px;
    font-weight:800;
}

.esu-pill-accent{
    background:#39ff14;
    color:#000;
}

.esu-pill-light{
    background:#fff;
    color:#000;
}

/* ================= BUTTONS ================= */

.esu-btn-primary{
    padding:16px 26px;
    border-radius:12px;
    font-weight:900;
    text-decoration:none;
    color:#fff;
    display:inline-block;
    font-size:16px;
    transition:.15s;
}

.esu-btn-primary:hover{
    transform:translateY(-1px);
    box-shadow:0 8px 24px rgba(0,0,0,.2);
}

.esu-price-tag{
    background:rgba(255,255,255,.15);
    padding:16px 22px;
    border-radius:12px;
    font-weight:800;
}

/* ================= SECTIONS ================= */

.esu-section{
    padding:90px 0;
    border-bottom:1px solid #e2e8f0;
}

.esu-section-inner{
    max-width:1100px;
    margin:0 auto;
    padding:0 20px;
}

.esu-section-title{
    font-size:42px;
    font-weight:900;
    letter-spacing:-.03em;
    margin-bottom:18px;
}

.esu-section-body{
    font-size:18px;
    line-height:1.8;
    max-width:700px;
}

.esu-centered{
    text-align:center;
    margin:0 auto;
    max-width:900px;
}

.esu-image{
    width:100%;
    border-radius:16px;
    margin:28px 0;
    box-shadow:0 18px 60px rgba(0,0,0,.12);
}

/* ================= SPLIT ================= */

.esu-split{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:60px;
    align-items:center;
}

/* ================= FINAL CTA ================= */

.esu-final{
    color:#fff;
}

.esu-final-inner{
    max-width:900px;
    margin:0 auto;
    padding:100px 20px;
    text-align:center;
}

.esu-final-title{
    font-size:48px;
    font-weight:900;
    letter-spacing:-.04em;
}

.esu-final-body{
    font-size:20px;
    margin-top:18px;
    opacity:.92;
}

.esu-final-spots{
    margin-top:20px;
    font-weight:800;
    opacity:.9;
}

/* ================= MOBILE ================= */

@media(max-width:900px){

    .esu-split{
        grid-template-columns:1fr;
        gap:30px;
    }

    .esu-hero-title{
        font-size:38px;
    }

    .esu-section-title{
        font-size:30px;
    }

    .esu-final-title{
        font-size:32px;
    }

    .esu-nav-inner{
        flex-direction:column;
        align-items:flex-start;
        gap:10px;
    }

    .esu-nav-links{
        flex-wrap:wrap;
    }

}