
/* =====================================
   RESET
===================================== */

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html{
    scroll-behavior:smooth;
}

body{
    font-family:'Inter',sans-serif;
    background:
    radial-gradient(
        circle at top,
        #131d38 0%,
        #050505 40%
    );
    color:white;
    overflow-x:hidden;
}

img{
    display:block;
    max-width:100%;
}

button{
    font-family:inherit;
}

/* =====================================
   PAGE
===================================== */

.page{
    width:min(1500px,95vw);
    margin:auto;
    position:relative;
}

/* =====================================
   NAVBAR
===================================== */

.navbar{
    height:90px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:0 40px;
    position:relative;
    z-index:100;
    background:transparent;
}

.logo{
    display:flex;
    align-items:center;
    gap:14px;
    position:relative;
}

.logo img{
    width:52px;
    height:52px;
    border-radius:16px;
    transition:.4s ease;
    filter:
    drop-shadow(0 0 10px rgba(37,99,235,.6))
    drop-shadow(0 0 20px rgba(168,85,247,.4));
}

.logo img:hover{
    transform:scale(1.08) rotate(-4deg);
    filter:
    drop-shadow(0 0 18px rgba(37,99,235,.9))
    drop-shadow(0 0 35px rgba(168,85,247,.8));
}

.logo h2{
    font-size:34px;
    font-weight:800;
    text-shadow:0 0 15px rgba(59,130,246,.25);
}

.logo span{
    background:linear-gradient(135deg, #60a5fa, #a855f7);
    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;
    text-shadow:0 0 20px rgba(168,85,247,.4);
}

.nav-links{
    position:relative;
    display:flex;
    gap:34px;
    list-style:none;
}

.nav-indicator{
    display:none;
}

.nav-links a{
    color:#cbd5e1;
    text-decoration:none;
    transition:.3s;
    position:relative;
}

.nav-links a:hover{
    color:white;
}

.nav-links a.active{
    color:white;
    text-shadow:
    0 0 10px rgba(59,130,246,.8),
    0 0 20px rgba(139,92,246,.8);
}

.nav-links a.active::after{
    content:'';
    position:absolute;
    left:0;
    bottom:-10px;
    width:100%;
    height:2px;
    background:linear-gradient(90deg, #3b82f6, #8b5cf6);
    border-radius:10px;
}

.notify-btn{
    border:none;
    cursor:pointer;
    color:white;
    padding:14px 24px;
    border-radius:16px;
    font-weight:600;
    background:linear-gradient(135deg, #2563eb, #8b5cf6);
}

/* =====================================
   HERO
===================================== */

.hero{
    min-height:700px;
    display:grid;
    grid-template-columns:minmax(450px,46%) 1fr;
    align-items:start;
    gap:40px;
    padding-top:30px;
}

.hero-left{
    width:100%;
    max-width:700px;
}

.hero-badge{
    display:inline-flex;
    padding:12px 18px;
    border-radius:999px;
    color:#60a5fa;
    background:rgba(59,130,246,.12);
    border:1px solid rgba(59,130,246,.25);
    margin-bottom:28px;
}

.hero-left h1{
    font-size:clamp(54px,6vw,84px);
    line-height:1.02;
    font-weight:900;
}

.hero-left span{
    background:linear-gradient(135deg, #60a5fa, #a855f7);
    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;
}

.hero-left p{
    margin-top:24px;
    color:#b6bcc8;
    font-size:clamp(16px,1.1vw,18px);
    line-height:1.8;
    max-width:620px;
}

.hero-buttons{
    display:flex;
    flex-wrap:wrap;
    gap:18px;
    margin-top:34px;
}

.primary-btn,
.launch-btn{
    border:none;
    cursor:pointer;
    color:white;
    font-weight:600;
    padding:18px 28px;
    border-radius:16px;
    background:linear-gradient(135deg, #2563eb, #8b5cf6);
}

.secondary-btn{
    background:transparent;
    border:1px solid rgba(255,255,255,.15);
    color:white;
    padding:18px 28px;
    border-radius:16px;
}

/* =====================================
   PHONES
===================================== */

.hero-right{
    position:relative;
    width:100%;
    min-height:650px;
    display:flex;
    align-items:center;
    justify-content:center;
    perspective:1400px;
}

.phone-stage{
    position:relative;
    width:100%;
    height:650px;
    transform-style:preserve-3d;
}

.orbit{
    position:absolute;
    border-radius:50%;
    pointer-events:none;
    filter:blur(.2px);
}

.orbit1{
    width:700px;
    height:260px;
    top:180px;
    left:30px;
    border:2px solid rgba(59,130,246,.22);
    transform:rotate(-12deg);
}

.orbit2{
    width:700px;
    height:320px;
    top:150px;
    left:0;
    border:2px solid rgba(168,85,247,.16);
    transform:rotate(12deg);
}

.phone-card{
    position:absolute;
    border-radius:32px;
    padding:10px;
    background:linear-gradient(135deg, rgba(59,130,246,.16), rgba(168,85,247,.14));
    border:1px solid rgba(255,255,255,.10);
    box-shadow:0 0 35px rgba(59,130,246,.16), 0 0 70px rgba(168,85,247,.10);
    overflow:hidden;
    will-change:transform;
    transition:transform .35s ease, box-shadow .35s ease, filter .35s ease;
    animation:phoneFloat 6s ease-in-out infinite;
}

.phone-card::after{
    content:'';
    position:absolute;
    inset:0;
    background:linear-gradient(120deg, transparent 0%, rgba(255,255,255,.14) 50%, transparent 100%);
    transform:translateX(-120%);
    transition:transform .8s ease;
    pointer-events:none;
}

.phone-card:hover::after{
    transform:translateX(120%);
}

.phone-card:hover{
    transform:translateY(-8px) scale(1.02);
    box-shadow:0 0 50px rgba(59,130,246,.28), 0 0 95px rgba(168,85,247,.18);
}

.phone-card img{
    display:block;
    width:100%;
    height:auto;
    border-radius:24px;
    object-fit:cover;
    transform:translateZ(0);
}

.left-phone{
    width:180px;
    top:130px;
    left:8%;
    transform:rotate(-14deg) translateY(0);
    z-index:2;
    animation-delay:-1.2s;
    --rot:-14deg;
}

.center-phone{
    width:240px;
    top:10px;
    left:35%;
    z-index:10;
    animation-delay:-0.4s;
    --rot:0deg;
}

.right-phone{
    width:180px;
    top:130px;
    left:475px;
    transform:rotate(14deg) translateY(0);
    z-index:2;
    animation-delay:-2s;
    --rot:14deg;
}

@keyframes phoneFloat{
    0%,100%{
        transform:translateY(0) rotate(var(--rot, 0deg));
    }
    50%{
        transform:translateY(-12px) rotate(var(--rot, 0deg));
    }
}

/* =====================================
   STATS
===================================== */

.stats-row{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:20px;
    margin-top:40px;
}

.stat-card{
    display:flex;
    align-items:center;
    gap:16px;
    padding:20px;
    border-radius:20px;
    background:rgba(255,255,255,.03);
    border:1px solid rgba(255,255,255,.05);
}

.stat-card span{
    font-size:28px;
}

.stat-card p{
    color:#94a3b8;
    margin-top:4px;
}

/* =====================================
   ECOSYSTEM
===================================== */

.ecosystem-grid{
    margin-top:24px;
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:18px;
}

.feature-card{
    padding:28px;
    border-radius:22px;
    background:rgba(255,255,255,.03);
    border:1px solid rgba(255,255,255,.06);
    transition:.3s;
}

.feature-card:hover{
    transform:translateY(-8px);
}

.card-icon{
    font-size:34px;
    margin-bottom:16px;
}

.feature-card h3{
    margin-bottom:12px;
}

.feature-card p{
    color:#b6bcc8;
    line-height:1.7;
}

.mini-card{
    padding:22px;
    border-radius:18px;
    text-align:center;
    background:rgba(255,255,255,.03);
    border:1px solid rgba(255,255,255,.05);
}

/* =====================================
   LAUNCH CARD
===================================== */

.launch-card{
    grid-column:1/-1;
    margin-top:8px;
    border-radius:28px;
    overflow:hidden;
    background:linear-gradient(135deg, #0f172a, #1e293b);
    border:1px solid rgba(255,255,255,.08);
    position:relative;
    min-height:320px;
}

.launch-content{
    position:relative;
    z-index:2;
    width:60%;
    padding:50px;
    max-width:700px;
    backdrop-filter:blur(2px);
}

.launch-tag{
    color:#60a5fa;
    font-weight:700;
    margin-bottom:18px;
}

.launch-content h2{
    font-size:64px;
    margin-bottom:18px;
}

.launch-content p{
    color:#b6bcc8;
    max-width:500px;
    line-height:1.8;
    margin-bottom:30px;
}

.launch-phone{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    overflow:hidden;
    z-index:1;
    pointer-events:none;
}

.launch-phone img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    opacity:.08;
    filter:none;
}

/* =====================================
   FOOTER
===================================== */

footer{
    margin-top:120px;
    padding:80px 0;
    border-top:1px solid rgba(255,255,255,.06);
}

.footer-brand{
    text-align:left;
}

.footer-content{
    display:grid;
    grid-template-columns:1.5fr 1fr 1fr 1fr;
    gap:80px;
    align-items:start;
}

.footer-brand img{
    width:72px;
    height:72px;
    padding:10px;
    border-radius:20px;
    background:linear-gradient(135deg, rgba(37,99,235,.15), rgba(168,85,247,.15));
    border:1px solid rgba(255,255,255,.08);
    box-shadow:0 0 15px rgba(37,99,235,.35), 0 0 35px rgba(168,85,247,.25);
    margin-bottom:18px;
    transition:.35s ease;
}

.footer-brand img:hover{
    transform:translateY(-4px) scale(1.05);
    box-shadow:0 0 25px rgba(37,99,235,.55), 0 0 50px rgba(168,85,247,.45);
}

.footer-brand h2{
    margin-top:20px;
    font-size:38px;
    font-weight:800;
    background:linear-gradient(135deg, #ffffff, #60a5fa);
    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;
}

.footer-brand p{
    margin-top:12px;
    color:#94a3b8;
    line-height:1.7;
}

.footer-column h4{
    margin-bottom:18px;
}

.footer-column a{
    display:block;
    color:#94a3b8;
    margin-bottom:12px;
    text-decoration:none;
    transition:.3s;
}

.footer-column a:hover{
    color:#60a5fa;
    transform:translateX(4px);
}

.copyright{
    text-align:center;
    padding:20px 0 40px;
    color:#64748b;
}

/* ================================
   JS ANIMATIONS
================================ */

.hidden{
    opacity:0;
    transform:translateY(40px);
    transition:opacity .8s ease, transform .8s ease;
}

.show{
    opacity:1;
    transform:translateY(0);
}

/* =====================================
   CUSTOM SCROLLBAR
===================================== */

::-webkit-scrollbar{
    width:6px;
}

::-webkit-scrollbar-track{
    background:#020617;
}

::-webkit-scrollbar-thumb{
    background:linear-gradient(180deg, #2563eb, #8b5cf6);
    border-radius:999px;
    border:1px solid rgba(255,255,255,.08);
    box-shadow:0 0 12px rgba(37,130,235,.5), 0 0 20px rgba(139,92,246,.4);
}

::-webkit-scrollbar-thumb:hover{
    background:linear-gradient(180deg, #3b82f6, #a855f7);
}

::-webkit-scrollbar-corner{
    background:#020617;
}

/* =====================================
   HOME NAV + MOBILE MENU
===================================== */

.menu-btn{
    display:none;
    background:none;
    border:none;
    color:white;
    font-size:32px;
    cursor:pointer;
    transition:.3s ease;
}

.menu-btn.active{
    transform:rotate(90deg);
    color:#60a5fa;
}

.mobile-menu{
    display:none !important;
}

.mobile-menu a{
    display:block;
    width:100%;
    padding:14px 18px;
    border-radius:14px;
    color:white;
    text-decoration:none;
    font-size:18px;
    transition:.3s ease;
}

.mobile-menu a.active{
    width:100%;
    background:rgba(96,165,250,.12);
    color:#60a5fa;
}

.mobile-menu a:hover{
    background:rgba(96,165,250,.12);
    transform:translateX(8px);
    color:#60a5fa;
}

.mobile-menu button{
    margin-top:10px;
    padding:15px;
    border:none;
    border-radius:16px;
    color:white;
    font-weight:700;
    background:linear-gradient(135deg, #2563eb, #8b5cf6);
    box-shadow:0 0 20px rgba(59,130,246,.3);
}

.mobile-menu.active{
    display:flex !important;
    flex-direction:column;
    gap:8px;
    position:absolute;
    top:90px;
    left:15px;
    right:15px;
    padding:20px;
    background:rgba(15,23,42,.95);
    backdrop-filter:blur(20px);
    border:1px solid rgba(96,165,250,.2);
    border-radius:24px;
    box-shadow:0 0 30px rgba(37,130,235,.25), 0 0 60px rgba(168,85,247,.15);
    animation:menuSlide .35s ease;
    z-index:9999;
}

@keyframes menuSlide{
    from{
        opacity:0;
        transform:translateY(-20px) scale(.95);
    }
    to{
        opacity:1;
        transform:translateY(0) scale(1);
    }
}

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

@media (max-width:1000px){

    .nav-links,
    .notify-btn{
        display:none !important;
    }

    .menu-btn{
        display:block;
    }

    .hero{
        grid-template-columns:1fr;
        text-align:center;
        gap:50px;
        padding-top:20px;
        min-height:auto;
    }

    .hero-left{
        max-width:none;
    }

    .hero-buttons,
    .hero-stats{
        justify-content:center;
    }

    .hero-right{
        height:clamp(380px, 60vw, 560px);
        margin:0 auto;
    }

    .orbit{
        display:none;
    }

    .stats-row{
        grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
    }

    .ecosystem-grid{
        grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
    }

    .footer-content{
        grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
        gap:50px;
    }
}

@media (max-width:768px){

    .navbar{
        padding:0 16px;
    }

    .logo h2{
        font-size:26px;
    }

    .logo img{
        width:42px;
        height:42px;
    }

    .hero-left h1{
        font-size:clamp(36px, 11vw, 56px);
    }

    .hero-left p{
        font-size:16px;
    }

    .hero-buttons{
        flex-direction:column;
    }

    .primary-btn,
    .secondary-btn{
        width:100%;
        justify-content:center;
    }

    .stats-row{
        grid-template-columns:1fr;
    }

    

    .hero-right{
        min-height:auto;
        height:auto;
    }

    .phone-stage{
        display:flex;
        align-items:flex-end;
        justify-content:center;
        gap:12px;
        height:auto;
        min-height:300px;
        padding-top:20px;
    }

    .phone-card{
        position:relative;
        top:auto !important;
        left:auto !important;
        right:auto !important;
        animation:none;
        border-radius:22px;
        padding:6px;
    }

    .left-phone{
        width:120px;
        transform:rotate(-10deg) translateY(15px);
    }

    .center-phone{
        width:155px;
        transform:translateY(-20px);
        z-index:3;
    }

    .right-phone{
        width:120px;
        transform:rotate(10deg) translateY(15px);
    }

    .launch-phone{
        display:none;
    }

    .launch-content{
        width:100%;
        padding:30px;
    }

    .launch-content h2{
        font-size:42px;
    }

    .ecosystem-grid,
    .footer-content{
        grid-template-columns:1fr;
    }

    .footer-brand{
        text-align:center;
    }

    .footer-brand h2{
        font-size:36px;
    }

    .copyright{
        padding:18px 0 30px;
    }
}

@media (max-width:480px){

    .hero{
        gap:10px;
        padding-top:0;
    }

    .hero-right{
        min-height:auto;
        margin-top:-20px;
    }

    .phone-stage{
        min-height:360px;
        gap:10px;
    }

    .left-phone,
    .right-phone{
        width:90px;
    }

    .center-phone{
        width:125px;
    }

    .launch-content h2{
        font-size:34px;
    }
}