
*{

box-sizing:border-box;

margin:0;

padding:0;

font-family:'Poppins',sans-serif;

}



body{

background:#050a19;

color:white;

min-height:100vh;

}





/* HEADER */


header{

display:flex;

justify-content:space-between;

align-items:center;

padding:15px 5%;

background:#081326;

position:sticky;

top:0;

z-index:1000;

}

header b{
font-size:24px;
color:#00f7ff;1
}

.logo{

display:flex;

align-items:center;

gap:10px;

font-size:22px;

}



.logo img{

width:45px;

height:45px;

object-fit:contain;

}





nav{

display:flex;

gap:15px;

flex-wrap:wrap;

}



nav a{

color:white;

text-decoration:none;

font-size:14px;

padding:8px 12px;

border-radius:8px;

}



nav a:hover{

background:#00aaff;

}





/* HERO */


.hero{

text-align:center;

padding:60px 20px;

background:

linear-gradient(

135deg,

#07142d,

#003b6f

);

}



.hero h1{

font-size:40px;

}



.hero h2{

font-size:22px;

margin-top:10px;

}



/* =========================
   SEARCH BOX
========================= */

.search-box{
    width:90%;
    max-width:650px;

    margin:20px auto;

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

    background:#fff;

    border-radius:50px;
    overflow:hidden;

    box-shadow:0 8px 20px rgba(0,0,0,.25);
}

.search-box input{
    flex:1;

    padding:18px 20px;

    border:none;
    outline:none;

    font-size:16px;
}


/* =========================
   SECTION
========================= */

.section{

    padding:70px 8%;

}

.section-title{

    font-size:35px;
    color:#38bdf8;
    margin-bottom:40px;

}

/* =========================
   SOFTWARE GRID
========================= */

.software-grid{

    display:grid;

    grid-template-columns:
    repeat(auto-fit,minmax(280px,1fr));

    gap:25px;

}

.card{

    background:rgba(255,255,255,.05);

    border:1px solid rgba(255,255,255,.08);

    border-radius:20px;

    overflow:hidden;

    backdrop-filter:blur(12px);

    transition:.35s;

}

.card:hover{

    transform:translateY(-8px);

    box-shadow:
    0 10px 25px rgba(0,0,0,.40);

}

.card img{

    width:100%;
    height:180px;

    object-fit:cover;

    background:#fff;

}

.card-content{

    padding:20px;

}

.card-content h3{

    font-size:22px;
    margin-bottom:12px;

}

.card-content p{

    color:#cbd5e1;
    line-height:1.6;
    margin-bottom:20px;

}

/* =========================
   DOWNLOAD BUTTON
========================= */

.download-btn{

    position:relative;

    width:100%;

    padding:14px;

    border:none;

    border-radius:12px;

    background:#38bdf8;

    color:white;

    cursor:pointer;

    font-size:16px;

    font-weight:600;

    overflow:hidden;

    transition:.3s;

}

.download-btn:hover{

    background:#0ea5e9;

    transform:translateY(-2px);

}


.download-btn.downloading{

    background:#0284c7;

    pointer-events:none;

}


.download-btn.success{

    background:#16a34a;

}


.btn-text{

    position:relative;

    z-index:2;

}


.loader{

    position:absolute;

    width:22px;

    height:22px;

    border:3px solid rgba(255,255,255,.3);

    border-top:3px solid white;

    border-radius:50%;

    top:50%;
    left:50%;

    transform:translate(-50%,-50%);

    animation:spin 1s linear infinite;

    opacity:0;

}


.download-btn.downloading .loader{

    opacity:1;

}


.download-btn.downloading .btn-text{

    opacity:0;

}


@keyframes spin{

    100%{

        transform:
        translate(-50%,-50%)
        rotate(360deg);

    }

}


/* =========================
   BADGE
========================= */

.badge{

    display:inline-block;

    padding:6px 12px;

    border-radius:30px;

    background:#16a34a;

    font-size:12px;

    margin-bottom:15px;

}


/* FOOTER */


footer{

text-align:center;

padding:25px;

background:#081326;

margin-top:40px;

color:#aaa;

}








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


@media(max-width:768px){



header{

flex-direction:column;

gap:15px;

}



nav{

justify-content:center;

}



.hero h1{

font-size:30px;

}



.hero h2{

font-size:18px;

}



.box{

width:95%;

padding:18px;

}



.dashboard-menu button{


width:100%;


}



.timeline-card img{

height:180px;

}



}




/* SMALL PHONE */


@media(max-width:480px){



.logo{

font-size:18px;

}



nav a{

font-size:12px;

padding:6px;

}



.hero{

padding:40px 15px;

}



button{

width:100%;

}



}