*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

body{
    font-family:'Poppins',sans-serif;
    color:#222;
    background:white;
}

/* NAVBAR */

.navbar{
    display:flex;
    justify-content:space-between;
    align-items:center;

    padding:20px 8%;
}

.logo-container{
    display:flex;
    align-items:center;
    gap:10px;
}

.logo-container img{
    width:40px;
}

.logo-container span{
    font-size:1.4rem;
    font-weight:700;
    color:#00ffef;
}

.nav-links{
    display:flex;
    gap:30px;
}

.nav-links a{
    text-decoration:none;
    color:#333;
}

/* HERO */

.hero{
    min-height:90vh;

    display:flex;
    align-items:center;
    justify-content:space-between;

    padding:0 8%;
}

.hero-content{
    max-width:550px;
}

.hero-content h1{
    font-size:3.5rem;
    line-height:1.2;
}

.hero-content p{
    margin-top:20px;
    color:#666;
}

.hero-buttons{
    margin-top:30px;
    display:flex;
    gap:15px;
}

.primary-btn{
    background:#00ffef;
    color:white;

    padding:14px 28px;
    border-radius:10px;
    text-decoration:none;
}

.secondary-btn{
    border:2px solid #00ffef;
    color:#00ffef;

    padding:14px 28px;
    border-radius:10px;
    text-decoration:none;
}

.hero-image{
    position:relative;
    width:650px;
    height:450px;
}

.float-icon {
    position: absolute;
    opacity: 0.92;
    pointer-events: none;
}

/* Individual icon positions and sizes */
#icon-design    { width: 52px; top: -20px;  left: -30px;  transform: rotate(-12deg); }
#icon-coding    { width: 64px; top: -10px;  right: -20px; transform: rotate(8deg);   }
#icon-rating    { width: 40px; top: 30%;    left: -40px;  transform: rotate(20deg);  }
#icon-video     { width: 44px; top: 35%;    right: -30px; transform: rotate(-18deg); }
#icon-writing   { width: 52px; top: 55%;    left: -25px;  transform: rotate(-6deg);  }
#icon-analytics { width: 64px; bottom: 10px; right: -15px; transform: rotate(15deg); }
#icon-music     { width: 38px; top: 5%;     left: 40%;    transform: rotate(25deg);  }
#icon-ideas     { width: 50px; bottom: -15px; left: 10%;  transform: rotate(-20deg); }
#icon-payment   { width: 38px; bottom: -10px; right: 30%; transform: rotate(10deg);  }

/* Laptop */

.laptop-mockup{
    position:absolute;
    left:0;
    bottom:0;

    width:100%;
    max-width:650px;
    filter:drop-shadow(0 15px 25px rgba(0,0,0,0.15));
}

/* Phone */

.phone-mockup{
    position:absolute;

    right:-10px;
    bottom:-20px;

    width:300px;

    z-index:3;

    filter:
        drop-shadow(0 10px 10px rgba(0,0,0,0.15))
        drop-shadow(0 35px 45px rgba(0,0,0,0.30));
}

.download-btn{
    display:flex;
    align-items:center;
    gap:10px;
}

.download-btn img{
    width:22px;
    height:22px;
}

/* FEATURES */

.features{
    padding:100px 8%;
}

.features h2{
    text-align:center;
    margin-bottom:50px;
}

.feature-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:25px;
}

.feature-card{
    padding:30px;
    border-radius:15px;
    box-shadow:0 5px 20px rgba(0,0,0,0.08);
    text-align:center;
}

.feature-card img{
    width:80px;
    margin-bottom:15px;
}

/* HOW IT WORKS */

.how-it-works{
    padding:100px 8%;
    background:#f5f9f9;
}

.how-it-works h2{
    text-align:center;
    margin-bottom:50px;
}

.steps{
    display:flex;
    justify-content:center;
    gap:30px;
}

.step{
    background:white;
    padding:30px;
    border-radius:15px;
    width:220px;
    text-align:center;
}

.step h3{
    color:#00ffef;
    font-size:2rem;
}


/* CTA */

.cta{
    position:relative;

    text-align:center;
    padding:100px 8%;
    background:#00d0c2;
    color:white;
}

.cta .primary-btn{
    background:white;
    color:#00ffef;
    display:inline-block;
    margin-top:20px;
}

/* FOOTER */

footer{
    padding:30px;
    text-align:center;
}

/* MOBILE */

@media(max-width:768px){

    .nav-links{
        display:none;
    }

    .hero{
        flex-direction:column;
        text-align:center;
        padding-top:50px;
    }

    .hero-content h1{
        font-size:2.3rem;
    }

    .hero-buttons{
        justify-content:center;
    }

    .hero-image{
        width:100%;
        max-width:400px;
        height:280px;
        margin-top:40px;
    }                          /* ← close .hero-image here */

    /* Scale down floating icons on mobile */
    #icon-design    { width: 36px; }
    #icon-coding    { width: 44px; }
    #icon-rating    { width: 28px; }
    #icon-video     { width: 32px; }
    #icon-writing   { width: 36px; }
    #icon-analytics { width: 44px; }
    #icon-music     { width: 28px; }
    #icon-ideas     { width: 36px; }
    #icon-payment   { width: 28px; }

    .laptop-mockup{
        width:100%;
        filter:drop-shadow(0 15px 25px rgba(0,0,0,0.15));
    }

    .phone-mockup{
        position:absolute;
        right:20px;
        bottom:-10px;
        width:140px;
        z-index:3;
        filter:
            drop-shadow(0 8px 8px rgba(0,0,0,0.15))
            drop-shadow(0 25px 30px rgba(0,0,0,0.25));
    }

    .feature-grid{
        grid-template-columns:1fr;
    }

    .steps{
        flex-direction:column;
        align-items:center;
    }

    .screenshot-grid{
        grid-template-columns:1fr;
    }

}

.play-badge img{
    width:220px;
    max-width:100%;
    transition:0.3s;
    margin-top:25px;
}

.play-badge img:hover{
    transform:scale(1.05);
}

.whatsapp-contact{
    position:absolute;
    left:30px;
    bottom:30px;

    display:flex;
    align-items:center;
    gap:10px;

    text-decoration:none;
    color:white;
}

.whatsapp-contact img{
    width:28px;
    height:28px;
}

.legal-page{
    max-width:900px;
    margin:auto;
    padding:80px 8%;
    line-height:1.8;
}

.legal-page h1{
    margin-bottom:20px;
}

.legal-page h2{
    margin-top:35px;
    margin-bottom:10px;
    color:#00ffef;
}

.legal-page p{
    margin-bottom:15px;
}