/* ========== RESET & TOKENS ========== */
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}

:root{
    --bg:#050810;
    --bg-card:rgba(255,255,255,.03);
    --border:rgba(255,255,255,.07);
    --border-hover:rgba(255,255,255,.14);
    --accent:#7c6aff;
    --accent2:#00d4ff;
    --accent-glow:rgba(124,106,255,.25);
    --text:#fff;
    --text-secondary:rgba(255,255,255,.55);
    --text-tertiary:rgba(255,255,255,.35);
    --gradient:linear-gradient(135deg,#7c6aff 0%,#00d4ff 100%);
    --gradient-subtle:linear-gradient(135deg,rgba(124,106,255,.12),rgba(0,212,255,.08));
    --radius:16px;
    --radius-lg:24px;
    --radius-xl:32px;
    --ease:cubic-bezier(.25,.46,.45,.94);
    --ease-spring:cubic-bezier(.34,1.56,.64,1);
}

html{scroll-behavior:smooth;scroll-padding-top:80px}

body{
    font-family:'Inter',-apple-system,BlinkMacSystemFont,sans-serif;
    background:var(--bg);
    color:var(--text);
    line-height:1.6;
    overflow-x:hidden;
    -webkit-font-smoothing:antialiased;
}

.container{max-width:1200px;margin:0 auto;padding:0 24px}

/* ========== TYPOGRAPHY ========== */
h1,h2,h3{letter-spacing:-.03em;line-height:1.1}
h2{font-size:clamp(2rem,5vw,3.2rem);font-weight:800}
.hero-gradient{
    background:var(--gradient);
    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;
    background-clip:text;
}
.section-header{text-align:center;margin-bottom:64px}
.section-header p{color:var(--text-secondary);font-size:1.1rem;max-width:520px;margin:16px auto 0}
.section-label{
    display:inline-block;
    font-size:.75rem;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:.12em;
    color:var(--accent);
    margin-bottom:16px;
    background:rgba(124,106,255,.1);
    padding:6px 16px;
    border-radius:50px;
    border:1px solid rgba(124,106,255,.2);
}

/* ========== BUTTONS ========== */
.btn{
    display:inline-flex;
    align-items:center;
    gap:10px;
    text-decoration:none;
    font-weight:600;
    font-size:.95rem;
    border-radius:50px;
    padding:14px 32px;
    transition:all .3s var(--ease);
    cursor:pointer;
    border:none;
    position:relative;
    overflow:hidden;
}
.btn-primary{
    background:var(--gradient);
    color:#fff;
    box-shadow:0 4px 24px var(--accent-glow);
}
.btn-primary:hover{
    transform:translateY(-2px);
    box-shadow:0 8px 40px rgba(124,106,255,.4);
}
.btn-outline{
    background:transparent;
    color:var(--text);
    border:1px solid var(--border-hover);
}
.btn-outline:hover{
    background:rgba(255,255,255,.05);
    border-color:rgba(255,255,255,.25);
}
.btn-lg{padding:18px 40px;font-size:1.05rem}

/* ========== NAV ========== */
.nav{
    position:fixed;
    top:0;left:0;right:0;
    z-index:1000;
    background:rgba(5,8,16,.6);
    backdrop-filter:blur(20px) saturate(180%);
    -webkit-backdrop-filter:blur(20px) saturate(180%);
    border-bottom:1px solid transparent;
    transition:all .3s;
}
.nav.scrolled{
    background:rgba(5,8,16,.9);
    border-bottom-color:var(--border);
}
.nav-inner{
    max-width:1200px;
    margin:0 auto;
    padding:14px 24px;
    display:flex;
    align-items:center;
    justify-content:space-between;
}
.nav-logo{
    display:flex;
    align-items:center;
    gap:10px;
    text-decoration:none;
    color:var(--text);
    font-weight:800;
    font-size:1.25rem;
    letter-spacing:-.02em;
}
.nav-icon{width:32px;height:32px;border-radius:8px}
.nav-links{display:flex;gap:32px}
.nav-links a{
    color:var(--text-secondary);
    text-decoration:none;
    font-size:.875rem;
    font-weight:500;
    transition:color .2s;
}
.nav-links a:hover{color:var(--text)}
.nav-right{display:flex;align-items:center;gap:16px}
.nav-cta{
    background:rgba(255,255,255,.1);
    color:var(--text);
    text-decoration:none;
    padding:8px 20px;
    border-radius:50px;
    font-weight:600;
    font-size:.85rem;
    border:1px solid rgba(255,255,255,.12);
    transition:all .2s;
}
.nav-cta:hover{background:rgba(255,255,255,.15);border-color:rgba(255,255,255,.2)}
.nav-menu-btn{
    display:none;
    background:none;border:none;
    width:24px;height:18px;
    position:relative;cursor:pointer;
    flex-direction:column;
    justify-content:space-between;
}
.nav-menu-btn span{
    display:block;
    width:100%;height:2px;
    background:var(--text);
    border-radius:2px;
    transition:all .3s;
}
.nav-mobile{
    display:none;
    flex-direction:column;
    padding:16px 24px 24px;
    gap:16px;
    border-top:1px solid var(--border);
}
.nav-mobile a{
    color:var(--text-secondary);
    text-decoration:none;
    font-size:1rem;
    font-weight:500;
}
.nav-mobile-cta{
    background:var(--gradient);
    color:#fff !important;
    text-align:center;
    padding:14px;
    border-radius:12px;
    font-weight:600;
    margin-top:8px;
}

/* ========== HERO ========== */
.hero{
    position:relative;
    min-height:100vh;
    display:flex;
    align-items:center;
    padding:140px 0 80px;
    overflow:hidden;
}
.hero-bg{
    position:absolute;inset:0;
    pointer-events:none;overflow:hidden;
}
.hero-orb{
    position:absolute;
    border-radius:50%;
    filter:blur(100px);
    opacity:.5;
}
.hero-orb-1{
    width:700px;height:700px;
    top:-200px;left:-100px;
    background:radial-gradient(circle,rgba(124,106,255,.25) 0%,transparent 70%);
    animation:orbFloat 12s ease-in-out infinite;
}
.hero-orb-2{
    width:500px;height:500px;
    bottom:-150px;right:-50px;
    background:radial-gradient(circle,rgba(0,212,255,.15) 0%,transparent 70%);
    animation:orbFloat 15s ease-in-out infinite reverse;
}
.hero-orb-3{
    width:300px;height:300px;
    top:40%;left:50%;
    background:radial-gradient(circle,rgba(244,114,182,.1) 0%,transparent 70%);
    animation:orbFloat 10s ease-in-out infinite 2s;
}
@keyframes orbFloat{
    0%,100%{transform:translate(0,0) scale(1)}
    33%{transform:translate(30px,-40px) scale(1.05)}
    66%{transform:translate(-20px,30px) scale(.95)}
}
.hero-grid-lines{
    position:absolute;inset:0;
    background-image:
        linear-gradient(rgba(255,255,255,.02) 1px,transparent 1px),
        linear-gradient(90deg,rgba(255,255,255,.02) 1px,transparent 1px);
    background-size:80px 80px;
    mask-image:radial-gradient(ellipse 60% 60% at 50% 40%,black 20%,transparent 70%);
    -webkit-mask-image:radial-gradient(ellipse 60% 60% at 50% 40%,black 20%,transparent 70%);
}
.hero-particles{position:absolute;inset:0}
.hero-particle{
    position:absolute;
    width:2px;height:2px;
    background:rgba(255,255,255,.2);
    border-radius:50%;
    animation:particleDrift linear infinite;
}
@keyframes particleDrift{
    0%{transform:translateY(100vh) translateX(0);opacity:0}
    5%{opacity:1}
    95%{opacity:1}
    100%{transform:translateY(-10vh) translateX(20px);opacity:0}
}

.hero-content{
    position:relative;z-index:2;
    max-width:640px;
}
.hero-badge{
    display:inline-flex;
    align-items:center;
    gap:10px;
    background:rgba(124,106,255,.08);
    border:1px solid rgba(124,106,255,.18);
    border-radius:50px;
    padding:8px 20px;
    font-size:.82rem;
    font-weight:600;
    color:rgba(255,255,255,.8);
    margin-bottom:32px;
}
.badge-pulse{
    width:8px;height:8px;
    background:#34d399;
    border-radius:50%;
    animation:pulse 2s ease-in-out infinite;
    flex-shrink:0;
}
@keyframes pulse{
    0%,100%{opacity:1;box-shadow:0 0 0 0 rgba(52,211,153,.4)}
    50%{opacity:.7;box-shadow:0 0 0 6px rgba(52,211,153,0)}
}

h1{
    font-size:clamp(2.8rem,6vw,4.5rem);
    font-weight:900;
    line-height:1.05;
    letter-spacing:-.04em;
    margin-bottom:24px;
}
.hero-sub{
    font-size:1.15rem;
    color:var(--text-secondary);
    line-height:1.7;
    margin-bottom:40px;
    max-width:500px;
}
.hero-actions{display:flex;flex-direction:column;gap:12px;align-items:flex-start}
.hero-note{font-size:.82rem;color:var(--text-tertiary)}

.hero-proof{
    display:flex;
    align-items:center;
    gap:28px;
    margin-top:56px;
    padding-top:32px;
    border-top:1px solid var(--border);
}
.hero-proof-item strong{
    display:block;
    font-size:1.3rem;
    font-weight:800;
    letter-spacing:-.02em;
}
.hero-proof-item span{
    font-size:.75rem;
    color:var(--text-tertiary);
    font-weight:500;
    text-transform:uppercase;
    letter-spacing:.05em;
}
.hero-proof-sep{width:1px;height:36px;background:var(--border)}
.star{color:#fbbf24}

/* Phone */
.hero-phone-wrap{
    position:absolute;
    right:5%;
    top:50%;
    transform:translateY(-50%);
    z-index:1;
}
.hero-phone{position:relative}
.phone{
    width:280px;height:570px;
    background:linear-gradient(160deg,#1a1f2e,#0d1017);
    border-radius:42px;
    border:1.5px solid rgba(255,255,255,.1);
    padding:10px;
    box-shadow:
        0 60px 120px rgba(0,0,0,.6),
        0 0 0 .5px rgba(255,255,255,.06),
        inset 0 1px 0 rgba(255,255,255,.08);
    animation:phoneFloat 6s ease-in-out infinite;
    position:relative;
    overflow:hidden;
}
@keyframes phoneFloat{
    0%,100%{transform:translateY(0) rotate(1deg)}
    50%{transform:translateY(-14px) rotate(-1deg)}
}
.phone-notch{
    position:absolute;
    top:10px;left:50%;
    transform:translateX(-50%);
    width:100px;height:24px;
    background:#050810;
    border-radius:0 0 16px 16px;
    z-index:10;
}
.phone-screen{
    width:100%;height:100%;
    background:linear-gradient(180deg,#0e1320,#141a2a);
    border-radius:34px;
    overflow:hidden;
    position:relative;
}
.phone-glow{
    position:absolute;
    bottom:-40px;left:50%;
    transform:translateX(-50%);
    width:250px;height:80px;
    background:radial-gradient(ellipse,rgba(124,106,255,.2) 0%,transparent 70%);
    filter:blur(20px);
    pointer-events:none;
}

/* Phone screen content */
.screen-content{
    position:absolute;inset:0;
    padding:44px 18px 18px;
    display:flex;
    flex-direction:column;
    opacity:0;
    transition:opacity .6s ease, transform .6s ease;
    transform:translateX(20px);
}
.screen-content.active{opacity:1;transform:translateX(0)}
.screen-time{
    text-align:center;
    font-size:.65rem;
    font-weight:600;
    color:rgba(255,255,255,.6);
    margin-bottom:24px;
}
.screen-greeting{font-size:.75rem;color:rgba(255,255,255,.45);text-align:center;margin-bottom:2px}
.screen-title{font-size:1rem;font-weight:700;text-align:center;margin-bottom:20px}
.screen-orb{
    display:flex;
    align-items:center;
    justify-content:center;
    flex:1;
    position:relative;
}
.orb-ring{
    position:absolute;
    width:140px;height:140px;
    border:1px solid rgba(124,106,255,.15);
    border-radius:50%;
    animation:ringPulse 4s ease-in-out infinite;
}
.orb-ring-2{
    width:170px;height:170px;
    animation-delay:.5s;
    border-color:rgba(0,212,255,.1);
}
@keyframes ringPulse{
    0%,100%{transform:scale(1);opacity:.4}
    50%{transform:scale(1.06);opacity:.8}
}
.orb-core{
    width:110px;height:110px;
    border-radius:50%;
    background:radial-gradient(circle at 35% 35%,rgba(124,106,255,.5),rgba(0,212,255,.25));
    display:flex;
    align-items:center;
    justify-content:center;
    animation:orbBreathe 4s ease-in-out infinite;
    box-shadow:0 0 40px rgba(124,106,255,.25);
}
@keyframes orbBreathe{
    0%,100%{transform:scale(1)}
    50%{transform:scale(1.08)}
}
.orb-core span{font-size:.7rem;font-weight:600;color:rgba(255,255,255,.85);letter-spacing:.04em}
.screen-cards{
    display:flex;gap:6px;margin-top:auto;
}
.screen-card{
    flex:1;
    background:rgba(255,255,255,.05);
    border:1px solid rgba(255,255,255,.06);
    border-radius:12px;
    padding:10px 6px;
    text-align:center;
    font-size:.55rem;
    font-weight:500;
    color:rgba(255,255,255,.5);
}
.screen-card span{display:block;font-size:1.1rem;margin-bottom:3px}

/* Screen 2: AI */
.screen-ai-header{display:flex;align-items:center;gap:8px;justify-content:center;margin-bottom:20px}
.screen-ai-icon{font-size:1.2rem}
.screen-ai-title{font-size:.85rem;font-weight:700}
.screen-ai-prompt{font-size:.75rem;font-weight:600;text-align:center;margin-bottom:14px;color:rgba(255,255,255,.7)}
.screen-ai-options{display:flex;gap:5px;margin-bottom:8px;justify-content:center;flex-wrap:wrap}
.screen-ai-chip{
    font-size:.55rem;
    padding:5px 10px;
    border-radius:20px;
    background:rgba(255,255,255,.05);
    border:1px solid rgba(255,255,255,.08);
    color:rgba(255,255,255,.5);
    font-weight:500;
}
.screen-ai-chip.active{
    background:rgba(124,106,255,.2);
    border-color:rgba(124,106,255,.3);
    color:rgba(255,255,255,.9);
}
.screen-ai-btn{
    margin-top:auto;
    background:var(--gradient);
    text-align:center;
    padding:10px;
    border-radius:10px;
    font-size:.7rem;
    font-weight:700;
}

/* Screen 3: Player */
.screen-player-art{
    display:flex;align-items:center;justify-content:center;
    flex:1;position:relative;
}
.screen-player-rings{position:absolute}
.sp-ring{
    width:130px;height:130px;
    border:1px solid rgba(56,189,248,.12);
    border-radius:50%;
    position:absolute;
    top:50%;left:50%;
    transform:translate(-50%,-50%);
    animation:ringPulse 3s ease-in-out infinite;
}
.sp-ring-2{width:160px;height:160px;animation-delay:.4s;border-color:rgba(124,106,255,.08)}
.screen-player-icon{font-size:2.8rem;position:relative;z-index:1}
.screen-player-title{font-size:.9rem;font-weight:700;text-align:center;margin-bottom:2px}
.screen-player-sub{font-size:.65rem;color:rgba(255,255,255,.45);text-align:center;margin-bottom:14px}
.screen-player-bar{
    height:3px;
    background:rgba(255,255,255,.1);
    border-radius:3px;
    margin:0 10px 12px;
    overflow:hidden;
}
.screen-player-progress{
    width:35%;height:100%;
    background:var(--gradient);
    border-radius:3px;
}
.screen-player-controls{display:flex;justify-content:center;gap:24px;align-items:center;margin-bottom:10px}
.sp-ctrl{font-size:.8rem;color:rgba(255,255,255,.4)}
.sp-play{
    width:40px;height:40px;
    background:#fff;
    border-radius:50%;
    display:flex;align-items:center;justify-content:center;
    color:#000;font-size:.7rem;
}

/* ========== FEATURES ========== */
.features{padding:120px 0}
.features-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:16px;
}
.feature-card{
    background:var(--bg-card);
    border:1px solid var(--border);
    border-radius:var(--radius-lg);
    padding:32px 28px;
    transition:all .4s var(--ease);
    position:relative;
    overflow:hidden;
}
.feature-card::before{
    content:'';
    position:absolute;
    top:0;left:0;right:0;
    height:1px;
    background:linear-gradient(90deg,transparent,var(--accent,rgba(255,255,255,.1)),transparent);
    opacity:0;
    transition:opacity .4s;
}
.feature-card:hover{
    transform:translateY(-4px);
    border-color:var(--border-hover);
    box-shadow:0 20px 60px rgba(0,0,0,.3);
}
.feature-card:hover::before{opacity:1}
.feature-card-lg{grid-column:span 2}
.feature-icon{font-size:2rem;margin-bottom:16px}
.feature-badge{
    position:absolute;
    top:16px;right:16px;
    font-size:.65rem;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:.06em;
    background:rgba(124,106,255,.15);
    color:var(--accent);
    padding:4px 10px;
    border-radius:50px;
    border:1px solid rgba(124,106,255,.2);
}
.feature-card h3{font-size:1.05rem;font-weight:700;margin-bottom:8px;letter-spacing:-.01em}
.feature-card p{font-size:.88rem;color:var(--text-secondary);line-height:1.6}
.feature-stat{
    margin-top:16px;
    font-size:.75rem;
    font-weight:600;
    color:var(--accent2);
    text-transform:uppercase;
    letter-spacing:.04em;
}

/* ========== AI SECTION ========== */
.ai-section{
    padding:120px 0;
    position:relative;
    overflow:hidden;
}
.ai-bg{position:absolute;inset:0;pointer-events:none}
.ai-glow{
    position:absolute;
    top:50%;left:50%;
    transform:translate(-50%,-50%);
    width:800px;height:600px;
    background:radial-gradient(ellipse,rgba(124,106,255,.08) 0%,transparent 60%);
}
.ai-content{
    max-width:640px;
    margin:0 auto;
    text-align:center;
    position:relative;
}
.ai-description{
    color:var(--text-secondary);
    font-size:1.1rem;
    line-height:1.7;
    margin:20px 0 48px;
}
.ai-features{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:20px;
    margin-bottom:48px;
    text-align:left;
}
.ai-feature{
    display:flex;
    align-items:flex-start;
    gap:14px;
    padding:20px;
    background:var(--bg-card);
    border:1px solid var(--border);
    border-radius:var(--radius);
    transition:border-color .3s;
}
.ai-feature:hover{border-color:var(--border-hover)}
.ai-feature-icon{font-size:1.3rem;flex-shrink:0;margin-top:2px}
.ai-feature strong{display:block;font-size:.9rem;margin-bottom:2px}
.ai-feature span{font-size:.8rem;color:var(--text-secondary)}

/* ========== DEVICES ========== */
.devices{padding:120px 0}
.devices-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:20px;
}
.device-card{
    background:var(--bg-card);
    border:1px solid var(--border);
    border-radius:var(--radius-lg);
    padding:40px 28px;
    text-align:center;
    transition:all .3s var(--ease);
}
.device-card:hover{
    transform:translateY(-4px);
    border-color:var(--border-hover);
}
.device-icon{font-size:2.5rem;margin-bottom:16px}
.device-card h3{font-size:1.05rem;font-weight:700;margin-bottom:8px}
.device-card p{font-size:.88rem;color:var(--text-secondary);line-height:1.5}

/* ========== TESTIMONIALS ========== */
.testimonials{padding:120px 0}
.testimonials-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:20px;
}
.testimonial{
    background:var(--bg-card);
    border:1px solid var(--border);
    border-radius:var(--radius-lg);
    padding:36px 32px;
    transition:all .3s var(--ease);
}
.testimonial:hover{
    border-color:var(--border-hover);
    transform:translateY(-3px);
}
.testimonial-stars{
    color:#fbbf24;
    font-size:.85rem;
    letter-spacing:3px;
    margin-bottom:16px;
}
.testimonial p{
    font-size:.95rem;
    color:var(--text-secondary);
    line-height:1.7;
    margin-bottom:20px;
}
.testimonial-author{
    display:flex;
    align-items:center;
    gap:12px;
}
.testimonial-avatar{
    width:36px;height:36px;
    border-radius:50%;
    background:var(--gradient);
    display:flex;align-items:center;justify-content:center;
    font-weight:700;font-size:.8rem;flex-shrink:0;
}
.testimonial-author strong{display:block;font-size:.85rem;font-weight:600}
.testimonial-author span{font-size:.72rem;color:var(--text-tertiary)}

/* ========== PRICING ========== */
.pricing{padding:120px 0}
.pricing-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:24px;
    max-width:820px;
    margin:0 auto;
    align-items:start;
}
.pricing-card{
    background:var(--bg-card);
    border:1px solid var(--border);
    border-radius:var(--radius-xl);
    padding:44px 36px;
    position:relative;
}
.pricing-card-featured{
    border-color:rgba(124,106,255,.3);
    background:linear-gradient(180deg,rgba(124,106,255,.05) 0%,var(--bg-card) 100%);
}
.pricing-popular{
    position:absolute;
    top:-1px;left:50%;
    transform:translateX(-50%);
    background:var(--gradient);
    padding:6px 20px;
    border-radius:0 0 10px 10px;
    font-size:.7rem;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:.08em;
}
.pricing-name{
    font-size:1.1rem;
    font-weight:700;
    margin-bottom:16px;
}
.pricing-card-featured .pricing-name{margin-top:16px}
.pricing-price{margin-bottom:4px}
.price-amount{font-size:2.8rem;font-weight:900;letter-spacing:-.03em}
.price-period{font-size:1rem;color:var(--text-secondary)}
.pricing-breakdown{
    font-size:.85rem;
    color:var(--accent2);
    font-weight:500;
    margin-bottom:28px;
}
.pricing-features{
    list-style:none;
    margin-bottom:32px;
}
.pricing-features li{
    padding:8px 0;
    font-size:.88rem;
    color:var(--text-secondary);
    display:flex;align-items:center;gap:10px;
}
.pricing-features li.muted{color:var(--text-tertiary)}
.check{color:var(--accent2);font-weight:700;font-size:.9rem}
.x{color:var(--text-tertiary);font-size:1.2rem}
.pricing-note{
    font-size:.78rem;
    color:var(--text-tertiary);
    margin-top:12px;
    text-align:center;
}

/* ========== FAQ ========== */
.faq{padding:100px 0}
.faq-list{max-width:680px;margin:0 auto}
.faq-item{border-bottom:1px solid var(--border)}
.faq-q{
    width:100%;
    background:none;border:none;
    color:var(--text);
    font-family:inherit;
    font-size:1rem;
    font-weight:600;
    text-align:left;
    padding:20px 0;
    cursor:pointer;
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:16px;
    transition:color .2s;
}
.faq-q::after{
    content:'+';
    font-size:1.3rem;
    font-weight:300;
    color:var(--text-tertiary);
    transition:transform .3s var(--ease),color .3s;
    flex-shrink:0;
}
.faq-item.open .faq-q::after{
    transform:rotate(45deg);
    color:var(--accent);
}
.faq-q:hover{color:var(--accent2)}
.faq-a{
    max-height:0;
    overflow:hidden;
    transition:max-height .4s var(--ease);
}
.faq-item.open .faq-a{max-height:300px}
.faq-a p{
    padding:0 0 20px;
    font-size:.9rem;
    color:var(--text-secondary);
    line-height:1.7;
}

/* ========== FINAL CTA ========== */
.final-cta{padding:100px 0;text-align:center}
.final-cta-inner{
    position:relative;
    background:linear-gradient(180deg,rgba(124,106,255,.06),var(--bg-card));
    border:1px solid rgba(124,106,255,.15);
    border-radius:var(--radius-xl);
    padding:80px 40px;
    overflow:hidden;
}
.final-cta-glow{
    position:absolute;
    top:0;left:50%;
    transform:translateX(-50%);
    width:600px;height:300px;
    background:radial-gradient(ellipse,rgba(124,106,255,.1) 0%,transparent 70%);
    pointer-events:none;
}
.final-cta h2{
    font-size:clamp(1.8rem,4vw,2.8rem);
    margin-bottom:16px;
    position:relative;z-index:1;
}
.final-cta p{
    color:var(--text-secondary);
    font-size:1.1rem;
    margin-bottom:36px;
    position:relative;z-index:1;
}
.final-cta .btn{position:relative;z-index:1}

/* ========== FOOTER ========== */
.footer{
    padding:48px 0;
    border-top:1px solid var(--border);
}
.footer-inner{display:flex;flex-direction:column;gap:24px}
.footer-top{
    display:flex;
    justify-content:space-between;
    align-items:center;
}
.footer-brand{
    display:flex;
    align-items:center;
    gap:10px;
    font-weight:800;
    font-size:1.1rem;
}
.footer-icon{width:24px;height:24px;border-radius:6px}
.footer-links{display:flex;gap:24px}
.footer-links a{
    color:var(--text-tertiary);
    text-decoration:none;
    font-size:.83rem;
    font-weight:500;
    transition:color .2s;
}
.footer-links a:hover{color:var(--text)}
.footer-bottom{
    text-align:center;
    padding-top:24px;
    border-top:1px solid var(--border);
}
.footer-bottom p{font-size:.75rem;color:var(--text-tertiary)}

/* ========== REVEAL ========== */
.reveal{
    opacity:0;
    transform:translateY(24px);
    transition:opacity .6s var(--ease),transform .6s var(--ease);
}
.reveal.visible{opacity:1;transform:translateY(0)}

/* ========== RESPONSIVE ========== */
@media(max-width:1100px){
    .hero-phone-wrap{display:none}
    .hero-content{max-width:100%;text-align:center}
    .hero-sub{max-width:560px;margin-left:auto;margin-right:auto}
    .hero-actions{align-items:center}
    .hero-proof{justify-content:center}
    .hero-badge{margin-left:auto;margin-right:auto}
}
@media(max-width:1024px){
    .nav-links{display:none}
    .nav-menu-btn{display:flex}
    .features-grid{grid-template-columns:repeat(2,1fr)}
    .feature-card-lg{grid-column:span 2}
}
@media(max-width:768px){
    .hero{padding:120px 0 60px;min-height:auto}
    h1{font-size:2.6rem}
    .features-grid{grid-template-columns:1fr}
    .feature-card-lg{grid-column:span 1}
    .ai-features{grid-template-columns:1fr}
    .devices-grid{grid-template-columns:1fr;max-width:400px;margin:0 auto}
    .testimonials-grid{grid-template-columns:1fr}
    .pricing-grid{grid-template-columns:1fr;max-width:420px;margin:0 auto}
    .footer-top{flex-direction:column;gap:16px;text-align:center}
    .footer-links{flex-wrap:wrap;justify-content:center}
    .hero-proof{gap:20px}
    .hero-proof-sep{display:none}
}
@media(max-width:480px){
    h1{font-size:2.1rem}
    .container{padding:0 16px}
    .nav-inner{padding:12px 16px}
    .final-cta-inner{padding:48px 20px}
    .pricing-card{padding:32px 24px}
}
