/* ===========================
   GOOGLE FONT & RESET
=========================== */

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

body{
    font-family:'Poppins',sans-serif;
    background:#ffffff;
    color:#111111;
    overflow-x:hidden;
}

a{
    text-decoration:none;
}

ul{
    list-style:none;
}

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

/* ===========================
   COLORS
=========================== */

:root{

    --yellow:#FBBF24;
    --yellow-dark:#F59E0B;

    --black:#111111;
    --dark:#1C1C1C;

    --white:#ffffff;
    --gray:#666666;
    --light:#f8f8f8;

}

/* ===========================
   CONTAINER
=========================== */

.container{
    width:90%;
    max-width:1300px;
    margin:auto;
}
/* ===========================
   NAVBAR
=========================== */

header{

    width:100%;
    position:fixed;
    top:0;
    left:0;

    z-index:999;

    background:#111111;
}

.navbar{

    display:flex;

    justify-content:space-between;

    align-items:center;

    height:85px;
}

.logo{

    color:#FBBF24;

    font-size:34px;

    font-weight:700;

    letter-spacing:2px;
}

.nav-links{

    display:flex;

    gap:40px;
}

.nav-links a{

    color:white;

    font-weight:500;

    transition:.3s;
}

.nav-links a:hover{

    color:#FBBF24;
}

.demo-btn{

    background:#FBBF24;

    color:#111111;

    padding:14px 28px;

    border-radius:50px;

    font-weight:600;

    transition:.3s;
}

.demo-btn:hover{

    background:#FFD54A;

    transform:translateY(-3px);

    box-shadow:0 10px 25px rgba(251,191,36,.35);
}
/* ===========================
   HERO SECTION
=========================== */

.hero{

    background:#111111;

    min-height:100vh;

    display:flex;

    align-items:center;

    padding-top:90px;

}

.hero-content{

    display:flex;

    justify-content:space-between;

    align-items:center;

    gap:80px;

}

.hero-text{

    flex:1;
}

.tagline{

    color:#FBBF24;

    font-weight:600;

    letter-spacing:3px;

    margin-bottom:20px;

    font-size:14px;
}

.hero-text h1{

    font-size:70px;

    color:white;

    line-height:1.1;

    margin-bottom:30px;

    font-weight:800;
}

.hero-text h1 span{

    color:#FBBF24;
}

.hero-description{

    color:#d1d5db;

    font-size:18px;

    line-height:1.8;

    max-width:600px;

    margin-bottom:40px;
}

.hero-buttons{

    display:flex;

    gap:20px;
}

.primary-btn{

    background:#FBBF24;

    color:#111111;

    padding:16px 35px;

    border-radius:50px;

    font-weight:600;

    transition:.3s;
}

.primary-btn:hover{

    transform:translateY(-4px);

    background:#FFD54A;

    box-shadow:0 15px 35px rgba(251,191,36,.35);

}

.secondary-btn{

    border:2px solid #FBBF24;

    color:#FBBF24;

    padding:16px 35px;

    border-radius:50px;

    transition:.3s;

    font-weight:600;
}

.secondary-btn:hover{

    background:#FBBF24;

    color:#111111;

}

.hero-image{

    flex:1;

    display:flex;

    justify-content:center;
}

.hero-image img{

    width:100%;

    max-width:650px;

    border-radius:25px;

    box-shadow:0 30px 60px rgba(0,0,0,.4);

}
/* ===========================
   ABOUT SECTION
=========================== */

.about{

    background:#ffffff;

    padding:140px 0;

}

.about-container{

    display:flex;

    justify-content:space-between;

    align-items:center;

    gap:80px;

}

.about-left{

    flex:1;

}

.section-title{

    color:var(--yellow);

    font-size:14px;

    font-weight:700;

    letter-spacing:3px;

    margin-bottom:20px;

}

.about-left h2{

    font-size:52px;

    line-height:1.2;

    color:var(--black);

    margin-bottom:30px;

    font-weight:700;

}

.about-left p{

    color:#666;

    font-size:18px;

    line-height:1.9;

    margin-bottom:20px;

}

.about-right{

    flex:1;

    display:flex;

    justify-content:center;

}

.about-right img{

    width:100%;

    max-width:600px;

    border-radius:25px;

    box-shadow:0 25px 60px rgba(0,0,0,.15);

    transition:.4s;

}

.about-right img:hover{

    transform:translateY(-8px);

}

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

@media(max-width:992px){

    .hero-content{

        flex-direction:column;

        text-align:center;

    }

    .hero-description{

        margin:auto;

        margin-bottom:40px;

    }

    .hero-buttons{

        justify-content:center;

    }

    .about-container{

        flex-direction:column-reverse;

        text-align:center;

    }

    .about-left h2{

        font-size:40px;

    }

}

@media(max-width:768px){

    .navbar{

        flex-direction:column;

        height:auto;

        padding:20px 0;

        gap:20px;

    }

    .nav-links{

        gap:20px;

        flex-wrap:wrap;

        justify-content:center;

    }

    .hero{

        padding-top:180px;

    }

    .hero-text h1{

        font-size:48px;

    }

    .about-left h2{

        font-size:34px;

    }

    .hero-buttons{

        flex-direction:column;

    }

    .primary-btn,

    .secondary-btn,

    .demo-btn{

        text-align:center;

    }

}
/*==========================
PLATFORM
==========================*/

.platform{

    background:#111111;

    padding:140px 0;

}

.center{

    text-align:center;

}

.platform .section-title{

    color:var(--yellow);

    margin-bottom:20px;

}

.section-heading{

    color:white;

    font-size:52px;

    text-align:center;

    margin-bottom:25px;

}

.section-description{

    max-width:800px;

    margin:auto;

    text-align:center;

    color:#cccccc;

    line-height:1.8;

    font-size:18px;

}

.platform-grid{

    margin-top:70px;

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:35px;

}

.platform-card{

    background:#1b1b1b;

    padding:35px;

    border-radius:25px;

    transition:.4s;

    border:1px solid #2a2a2a;

}

.platform-card:hover{

    transform:translateY(-12px);

    border-color:var(--yellow);

    box-shadow:0 25px 45px rgba(251,191,36,.15);

}

.platform-card img{

    width:100%;

    height:220px;

    object-fit:cover;

    border-radius:15px;

    margin-bottom:25px;

}

.platform-card h3{

    color:white;

    font-size:28px;

    margin-bottom:18px;

}

.platform-card p{

    color:#bbbbbb;

    line-height:1.8;

}
/*==========================
FEATURES
==========================*/

.features{

    padding:140px 0;

    background:#f8f8f8;

}

.section-heading-dark{

    text-align:center;

    font-size:50px;

    color:var(--black);

    margin-bottom:25px;

}

.section-description-dark{

    max-width:760px;

    margin:auto;

    text-align:center;

    color:#666;

    line-height:1.8;

    font-size:18px;

}

.feature-grid{

    margin-top:70px;

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:30px;

}

.feature-card{

    background:white;

    padding:35px;

    border-radius:20px;

    transition:.35s;

    box-shadow:0 12px 35px rgba(0,0,0,.08);

}

.feature-card:hover{

    transform:translateY(-10px);

    border-top:5px solid var(--yellow);

}

.feature-icon{

    width:70px;
    height:70px;

    background:linear-gradient(135deg,#FBBF24,#F59E0B);

    border-radius:18px;

    display:flex;
    align-items:center;
    justify-content:center;

    margin-bottom:25px;

    color:#111111;

    font-size:30px;

    box-shadow:0 12px 30px rgba(251,191,36,.35);

    transition:.3s;

}
.feature-card:hover .feature-icon{

    transform:rotate(-8deg) scale(1.1);

}

.feature-card h3{

    font-size:24px;

    margin-bottom:15px;

    color:var(--black);

}

.feature-card p{

    color:#666;

    line-height:1.8;

}
/*==========================
WHY ASAN
==========================*/

.why-asan{

    padding:140px 0;

    background:#111111;

}

.why-grid{

    margin-top:70px;

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:30px;

}

.why-card{

    background:#1c1c1c;

    padding:40px;

    border-radius:24px;

    border:1px solid #2a2a2a;

    transition:.4s;

}

.why-card:hover{

    transform:translateY(-10px);

    border-color:var(--yellow);

    box-shadow:0 20px 40px rgba(251,191,36,.18);

}

.why-number{

    font-size:48px;

    font-weight:700;

    color:var(--yellow);

    margin-bottom:20px;

}

.why-card h3{

    color:#fff;

    font-size:28px;

    margin-bottom:15px;

}

.why-card p{

    color:#cfcfcf;

    line-height:1.8;

    font-size:17px;

}
/*==========================
APPLICATIONS
==========================*/

.apps{

    padding:140px 0;

    background:#ffffff;

}

.app-row{

    display:flex;

    align-items:center;

    justify-content:space-between;

    gap:80px;

    margin-top:100px;

}

.reverse{

    flex-direction:row-reverse;

}

.app-image{

    flex:1;

}

.app-image img{

    width:100%;

    max-width:450px;

    margin:auto;

    border-radius:30px;

    box-shadow:0 25px 50px rgba(0,0,0,.15);

    transition:.4s;

}

.app-image img:hover{

    transform:translateY(-10px);

}

.app-content{

    flex:1;

}

.app-content h3{

    font-size:42px;

    color:var(--black);

    margin-bottom:25px;

}

.app-content p{

    font-size:18px;

    color:#666;

    line-height:1.8;

    margin-bottom:25px;

}

.app-content ul{

    list-style:none;

}

.app-content li{

    margin-bottom:15px;

    font-size:18px;

    color:#222;

}
/*==========================
TECHNOLOGY
==========================*/

.technology{

    padding:140px 0;

    background:#111111;

}

.tech-grid{

    margin-top:70px;

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:30px;

}

.tech-card{

    background:#1c1c1c;

    padding:35px;

    border-radius:22px;

    text-align:center;

    transition:.35s;

    border:1px solid #2a2a2a;

}

.tech-card:hover{

    transform:translateY(-10px);

    border-color:var(--yellow);

    box-shadow:0 20px 40px rgba(251,191,36,.15);

}

.tech-icon{

    font-size:50px;

    margin-bottom:20px;

}

.tech-card h3{

    color:white;

    margin-bottom:15px;

    font-size:24px;

}

.tech-card p{

    color:#cccccc;

    line-height:1.8;

    font-size:16px;

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

.stats{

    padding:140px 0;

    background:#ffffff;

}

.stats-grid{

    margin-top:70px;

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:30px;

}

.stat-card{

    background:#f8f8f8;

    padding:50px 30px;

    border-radius:22px;

    text-align:center;

    transition:.35s;

}

.stat-card:hover{

    background:var(--yellow);

    transform:translateY(-10px);

}

.stat-card h3{

    font-size:52px;

    color:var(--black);

    margin-bottom:15px;

    font-weight:700;

}

.stat-card p{

    font-size:18px;

    color:#555;

}
/*==========================
GALLERY
==========================*/

.gallery{

    padding:140px 0;
    background:#111111;

}

.gallery-grid{

    margin-top:70px;

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:30px;

}

.gallery-item{

    background:#1a1a1a;

    border-radius:25px;

    padding:20px;

    display:flex;

    justify-content:center;

    align-items:center;

    overflow:hidden;

    transition:.4s;

}

.gallery-item:hover{

    transform:translateY(-8px);

    box-shadow:0 20px 45px rgba(251,191,36,.18);

}

.gallery-item img{

    width:100%;

    height:auto;

    object-fit:contain;

    border-radius:18px;

}

.large{

    grid-row:span 1;

}
/*==========================
CONTACT CTA
==========================*/

.contact-cta{

    padding:140px 0;

    background:#ffffff;

}

.cta-box{

    background:linear-gradient(135deg,#111111,#1c1c1c);

    border-radius:30px;

    padding:80px;

    text-align:center;

}

.cta-box h2{

    color:white;

    font-size:52px;

    margin-bottom:20px;

}

.cta-box p{

    color:#d1d5db;

    font-size:20px;

    line-height:1.8;

    max-width:700px;

    margin:0 auto 40px;

}

.cta-buttons{

    display:flex;

    justify-content:center;

    gap:20px;

    flex-wrap:wrap;

}

.secondary-btn-dark{

    background:transparent;

    border:2px solid var(--yellow);

    color:var(--yellow);

    padding:16px 35px;

    border-radius:50px;

    font-weight:600;

    transition:.3s;

}

.secondary-btn-dark:hover{

    background:var(--yellow);

    color:#111111;

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

.footer{

    background:#111111;

    padding-top:90px;

    color:white;

}

.footer-container{

    display:grid;

    grid-template-columns:2fr 1fr 1fr 1fr;

    gap:60px;

    padding-bottom:60px;

}

.footer-logo{

    color:var(--yellow);

    font-size:42px;

    margin-bottom:20px;

}

.footer-column p{

    color:#bbbbbb;

    line-height:1.8;

    margin-bottom:12px;

}

.footer-column h3{

    margin-bottom:25px;

    color:white;

}

.footer-column ul li{

    margin-bottom:15px;

}

.footer-column a{

    color:#bbbbbb;

    transition:.3s;

}

.footer-column a:hover{

    color:var(--yellow);

}

.footer-bottom{

    border-top:1px solid #2a2a2a;

    text-align:center;

    padding:30px 0;

    color:#999;

}
/*==========================
SCROLL ANIMATIONS
==========================*/

.fade-up{
    opacity:0;
    transform:translateY(60px);
    animation:fadeUp 1s ease forwards;
}

.delay-1{
    animation-delay:.2s;
}

.delay-2{
    animation-delay:.4s;
}

.delay-3{
    animation-delay:.6s;
}

@keyframes fadeUp{

    from{
        opacity:0;
        transform:translateY(60px);
    }

    to{
        opacity:1;
        transform:translateY(0);
    }

}