*{
margin:0;
padding:0;
box-sizing:border-box;
font-family:'Poppins',sans-serif;
}

body{
overflow-x:hidden;
color:white;
}

#bg-video{
position:fixed;
top:0;
left:0;
width:100%;
height:100%;
object-fit:cover;
z-index:-2;
}

.overlay{
position:fixed;
width:100%;
height:100%;
background:#00ADC5;
backdrop-filter:blur(3px);
z-index:-1;
opacity:50%
}

header{
text-align:center;
padding:60px 20px;
animation:fadeDown 1s;
}

.logo{
width:130px;
margin-bottom:20px;
}

header h1{
font-size:60px;
font-weight:700;
}

header p{
font-size:20px;
opacity:.8;
margin-top:10px;
}

.cards{
max-width:1400px;
margin:auto;
display:grid;
grid-template-columns:repeat(auto-fit,minmax(320px,1fr));
gap:40px;
padding:40px;
}

.card{

background:rgba(255,255,255,.08);

border:1px solid rgba(255,255,255,.2);

backdrop-filter:blur(18px);

border-radius:25px;

overflow:hidden;

transition:.5s;

box-shadow:0 20px 40px rgba(0,0,0,.35);

animation:fadeUp 1s;
}

.card:hover{

transform:translateY(-15px) scale(1.03);

box-shadow:0 30px 60px rgba(0,0,0,.5);

}

.card img{

width:100%;

height:260px;

object-fit:cover;

}

.card h2{

text-align:center;

margin:25px 0 10px;

font-size:32px;

}

.card p{

padding:0 30px;

text-align:center;

opacity:.9;

line-height:1.8;

}

.card a{

display:block;

width:180px;

margin:30px auto;

padding:16px;

text-align:center;

text-decoration:none;

color:white;

background:#3E71B6;

border-radius:50px;

font-weight:600;

transition:.4s;

}

.card a:hover{

background:white;

color:black;

}

@keyframes fadeDown{

from{

opacity:0;

transform:translateY(-50px);

}

to{

opacity:1;

transform:translateY(0);

}

}

@keyframes fadeUp{

from{

opacity:0;

transform:translateY(60px);

}

to{

opacity:1;

transform:translateY(0);

}

}