*{
margin:0;
padding:0;
box-sizing:border-box;
}

html{
scroll-behavior:smooth;
}

body{

font-family:Montserrat,sans-serif;
background:#111;
color:white;
line-height:1.6;

}

img{
max-width:100%;
display:block;
}

.container{

width:min(1100px,90%);
margin:auto;
padding:80px 0;

}

header{

position:fixed;
top:0;
width:100%;
background:rgba(0,0,0,.8);
backdrop-filter:blur(8px);
z-index:1000;

}

.navbar{

display:flex;
justify-content:space-between;
align-items:center;
padding:20px;

}

.logo{

font-size:1.4rem;
font-weight:900;
letter-spacing:2px;

}

.nav-links{

display:flex;
list-style:none;
gap:25px;

}

.nav-links a{

color:white;
text-decoration:none;
transition:.3s;

}

.nav-links a:hover{

color:#00d4ff;

}

.menu-toggle{

display:none;
background:none;
border:none;
color:white;
font-size:2rem;
cursor:pointer;

}

.hero{

height:100vh;

background:

linear-gradient(rgba(0,0,0,.45),rgba(0,0,0,.7)),
url("images/ecp-hero.png") center/cover no-repeat;

display:flex;
align-items:center;
justify-content:center;
text-align:center;

}

.hero-overlay h1{

font-size:4rem;
font-weight:900;

}

.hero-overlay p{

margin:20px 0;
font-size:1.4rem;

}

.btn{

display:inline-block;
padding:14px 32px;
background:#00d4ff;
color:black;
text-decoration:none;
font-weight:bold;
border-radius:40px;

}

section{

padding-top:40px;

}

.dark{

background:#1b1b1b;

}

h2{

font-size:2.4rem;
margin-bottom:30px;
text-align:center;

}

.cards{

display:grid;
grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
gap:30px;

}

.card{

background:#252525;
padding:30px;
border-radius:10px;
text-align:center;

}

.video-container{

position:relative;
padding-bottom:56.25%;
height:0;

}

.video-container iframe{

position:absolute;
width:100%;
height:100%;

}

.gallery{

display:grid;
grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
gap:20px;

}

.gallery img{

height:250px;
object-fit:cover;
border-radius:10px;

}

.event{

padding:20px;
margin-bottom:20px;
background:#222;
border-left:5px solid #00d4ff;

}

form{

display:flex;
flex-direction:column;
gap:20px;

}

input,
textarea{

padding:15px;
border:none;
border-radius:8px;
font-size:1rem;

}

textarea{

height:180px;

}

button{

padding:15px;
background:#00d4ff;
border:none;
font-size:1rem;
font-weight:bold;
cursor:pointer;

}

footer{

padding:30px;
text-align:center;
background:black;

}

@media(max-width:768px){

.menu-toggle{

display:block;

}

.nav-links{

position:absolute;
top:70px;
left:0;
width:100%;
background:#111;

display:none;
flex-direction:column;
text-align:center;
padding:20px;

}

.nav-links.show{

display:flex;

}

.hero-overlay h1{

font-size:2.6rem;

}

.hero-overlay p{

font-size:1.1rem;

}

}