@import url("https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;600;700&display=swap");

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

body{
font-family:Poppins,sans-serif;
background:linear-gradient(135deg,#090909,#151528,#1d0f24);
color:white;
transition:.4s;
background-image: url("bgport.png");
background-size: cover;
background-attachment: fixed;
}

header{
position:fixed;
top:0;
width:100%;
z-index:1000;
}

nav{
display:flex;
justify-content:space-between;
align-items:center;
padding:18px 8%;
background:rgba(0,0,0,.6);
backdrop-filter:blur(12px);
}

.logo{
font-size:28px;
font-weight:700;
color:#ff5ea8;
}

nav ul{
display:flex;
list-style:none;
gap:30px;
}

nav a{
color:white;
text-decoration:none;
font-weight:600;
transition:.3s;
}

nav a:hover{
color:#ff5ea8;
}

#themeBtn{
padding:10px 15px;
font-size:18px;
border:none;
border-radius:50%;
cursor:pointer;
background:#ff5ea8;
color:rgb(125, 106, 106);
}

.section{
min-height:100vh;
padding:120px 10%;
display:flex;
flex-direction:column;
justify-content:center;
}

.hero{
display:grid;
grid-template-columns:1.3fr .8fr;
align-items:center;
gap:50px;
color:rgb(62, 73, 72);
}

.hero-image{
display:flex;
justify-content:center;
height: 350px;
width: 300px;
}

.hero img{
width:330px;
border-radius:20px;
border:4px solid #ff5ea8;
box-shadow:0 20px 40px rgba(255,94,168,.3);
}

h1{
font-size:3.5rem;
margin-bottom:20px;
background:linear-gradient(90deg,#5d4b4b,#ff5ea8);
}

h2{
margin:40px 0 20px;
color:#ff5ea8;

}

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

.card{
padding: 20px;;
background:grey;
border-radius:15px;
border:1px solid rgba(255,255,255,.1);
transition:.4s;
text-align:center;
}

.card:hover{
transform:translateY(-10px);
border-color:#ff5ea8;
}

.btn{
display:inline-block;
margin-top:25px;
padding:13px 30px;
background:#ff5ea8;
border-radius:30px;
text-decoration:none;
color:white;
font-weight:600;
}

footer{
padding:30px;
text-align:center;
background:#000;
}

body.light{
background:#f3f3f3;
color:#222;
}

body.light nav{
background:white;
}

body.light nav a{
color:#222;
}

body.light .card{
background:white;
color:#222;
border:1px solid #ddd;
}

body.light footer{
background:#eee;
color:#333;

}

@media screen and (max-width: 768px){

    nav{
        flex-direction: row;
        gap: 15px;
        padding: 15px;
    }

    nav ul{
        flex-wrap: wrap;
        justify-content: center;
        gap: 15px;
    }

    nav a{
        font-size: 15px;
    }

    .logo{
        font-size: 24px;
    }

    #themeBtn{
        padding: 8px 12px;
        font-size: 16px;
    }

    .section{
        padding: 120px 20px 60px;
        min-height: auto;
    }

    .hero{
        grid-template-columns: 1fr;
        text-align: center;
        gap: 30px;
    }

    .hero-text{
        order: 2;
    }

    .hero-image{
        order: 1;
        width: 100%;
        height: auto;
        justify-content: center;
    }

    .hero img{
        width: 220px;
        max-width: 100%;
        height: auto;
    }

    h1{
        font-size: 2.2rem;
    }

    h2{
        font-size: 1.8rem;
        text-align: center;
    }

    p{
        font-size: 15px;
        line-height: 1.6;
    }

    .grid{
        grid-template-columns: 1fr;
        gap: 15px;
    }

    .card{
        padding: 18px;
    }

    .btn{
        padding: 12px 25px;
        font-size: 15px;
    }

    footer{
        font-size: 14px;
        padding: 20px;
    }

}

@media screen and (max-width: 480px){

    nav ul{
        flex-direction: row;
        align-items: right;
    }

    .logo{
        font-size: 22px;
    }

    h1{
        font-size: 1.8rem;
    }

    h2{
        font-size: 1.5rem;
    }

    .hero img{
        width: 180px;
    }

    .card{
        font-size: 14px;
    }

    .btn{
        width: 100%;
        text-align: center;
    }

}