*{
margin:0;
padding:0;
box-sizing:border-box;
}

body{
font-family:Helvetica, Arial, sans-serif;
background:black;
color:white;
line-height:1.6;
overflow-x:hidden;
}



/* NAV */

.nav{
position:fixed;
top:0;
width:100%;
display:flex;
justify-content:space-between;
align-items:center;
padding:4px 60px;
background:rgba(0,0,0,0.6);
backdrop-filter:blur(6px);
z-index:100;
}

.brand{
display:flex;
align-items:center;
gap:12px;
}

.brand img{
height:110px;
transition:transform 0.3s ease;
}

.brand img:hover{
transform:scale(1.1);
}

.name{
font-size:18px;
letter-spacing:1px;
}

.menu{
display:flex;
gap:28px;
list-style:none;
}

.menu a{
text-decoration:none;
color:white;
font-size:14px;
letter-spacing:1px;
opacity:0.9;
transition:0.3s;
}

.menu a:hover{
opacity:1;
}

.lang span{
margin-left:14px;
cursor:pointer;
font-size:13px;
opacity:0.7;
}

.lang span:hover{
opacity:1;
}



/* HERO */

.hero{
height:100vh;
position:relative;
}

.hero-img{
width:100%;
height:100%;
object-fit:cover;
}

.overlay{
position:absolute;
top:0;
width:100%;
height:100%;
background:linear-gradient(rgba(0,0,0,0.2),rgba(0,0,0,0.8));
}

.caption{
position:absolute;
bottom:10px;
right:14px;
font-size:11px;
opacity:0.8;
}



/* GENERAL SECTIONS */

.section{
padding:130px 10%;
max-width:1200px;
margin:auto;
}

.section h2{
font-size:34px;
margin-bottom:50px;
letter-spacing:1px;
}

.section p{
margin-bottom:22px;
max-width:720px;
line-height:1.7;
}



/* ABOUT */

.about-content{
display:grid;
grid-template-columns:260px 1fr;
gap:60px;
align-items:start;
}

.about-photo img{
width:100%;
border-radius:4px;
}



/* ACHIEVEMENTS */

.achievements-section{
padding:110px 10%;
background:white;
color:black;
text-align:center;
}

.achievements-section h2{
margin-bottom:70px;
}

.achievements-grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:40px;
max-width:900px;
margin:auto;
}

.achievement{
background:white;
border-top:4px solid #d50000;
padding:30px 20px;
transition:0.3s;
}

.achievement:hover{
transform:translateY(-6px);
}

.achievement h3{
font-size:32px;
margin-bottom:10px;
color:#d50000;
}

.achievement p{
font-size:14px;
line-height:1.5;
}



/* HERO SECTIONS */

.hero-section{
position:relative;
height:90vh;
display:flex;
align-items:center;
justify-content:center;
text-align:center;
padding:0 20px;
}

.section-bg{
position:absolute;
width:100%;
height:100%;
object-fit:cover;
}

.section-content{
position:relative;
max-width:800px;
}

.section-content h2{
font-size:40px;
margin-bottom:25px;
}

.section-content p{
font-size:16px;
line-height:1.7;
}



/* COUNTDOWN */

.countdown{
display:flex;
justify-content:center;
gap:60px;
margin-top:40px;
}

.countdown span{
font-size:42px;
font-weight:600;
}

.countdown p{
font-size:12px;
opacity:0.7;
}



/* MEDIA */

.media{
text-align:center;
}

.media-carousel{
overflow:hidden;
width:100%;
margin-top:40px;
}

.media-track{
display:flex;
gap:18px;
animation:mediaScroll 10s linear infinite;
}

.media-track a{
flex-shrink:0;
}

.media-track img{
height:280px;
width:auto;
object-fit:cover;
transition:0.3s;
}

.media-track img:hover{
transform:scale(1.05);
}

@keyframes mediaScroll{

0%{
transform:translateX(0);
}

100%{
transform:translateX(-50%);
}

}



/* SOCIAL */

.social{
text-align:center;
}

.social-links{
display:flex;
justify-content:center;
gap:30px;
margin-top:30px;
}

.social-links img{
height:32px;
transition:0.3s;
}

.social-links img:hover{
transform:scale(1.1);
}



/* CONTACT */

.contact{
text-align:center;
}

.dark{
background:#111;
}



/* FOOTER */

.footer{
text-align:center;
padding:40px 20px;
font-size:12px;
opacity:0.6;
}



/* MOBILE */

@media(max-width:900px){

.menu{
display:none;
}

.nav{
padding:20px 25px;
}

.section{
padding:100px 25px;
}

.about-content{
grid-template-columns:1fr;
gap:40px;
}

.achievements-grid{
grid-template-columns:1fr 1fr;
}

.hero-section{
height:70vh;
}

.section-content h2{
font-size:30px;
}

.countdown{
gap:25px;
}

}

@media(max-width:600px){

.achievements-grid{
grid-template-columns:1fr;
}

.media-carousel img{
height:150px;
}

}.hero .overlay{
display:none;
}
/* SPONSORS */

.sponsors{
text-align:center;
background:black;
padding:120px 10%;
}

.sponsor-grid{
display:grid;
grid-template-columns:repeat(5,180px);
gap:60px;
justify-content:center;
align-items:center;
margin:80px auto 0;
}

.sponsor-grid a{
display:flex;
justify-content:center;
align-items:center;
width:100%;
height:80px;
}

.sponsor-grid img{
max-height:60px;
max-width:160px;
width:auto;
height:auto;
object-fit:contain;
filter:brightness(0) invert(1);
opacity:0.85;
transition:0.3s;
}

.sponsor-grid img:hover{
opacity:1;
transform:scale(1.1);
}

@media(max-width:900px){

.sponsor-grid{
grid-template-columns:repeat(2,1fr);
gap:40px;
}

}
.contact-container{
display:flex;
align-items:center;
justify-content:center;
gap:80px;
}

.contact-logo img{
height:180px;
max-height:200px;
transition:transform 0.3s ease;
}

.contact-logo img:hover{
transform:scale(1.08);
}

.contact-info{
text-align:left;
font-size:18px;
line-height:1.8;
}
.hero-img{
animation:heroZoom 30s ease-in-out infinite alternate;
}

@keyframes heroZoom{

0%{
transform:scale(1);
}

100%{
transform:scale(1.1);
}

}
/* MEDIA LOGOS */

.media-logos{
display:grid;
grid-template-columns:repeat(6,1fr);
gap:40px;
max-width:1000px;
margin:80px auto 0;
align-items:center;
justify-items:center;
}

.media-logos img{
height:38px;
object-fit:contain;
filter:brightness(0) invert(1);
opacity:0.75;
transition:0.3s;
}

.media-logos img:hover{
opacity:1;
transform:scale(1.1);
}

@media(max-width:900px){

.media-logos{
grid-template-columns:repeat(3,1fr);
gap:30px;
}

}
.hero-section{
height:90vh;
}

#xpyr .section-bg{
object-position:top center;
}
@media(max-width:700px){

.section-content{
padding:0 20px;
max-width:100%;
}

.section-content p{
font-size:15px;
line-height:1.6;
}

.race-logo img{
max-width:180px;
height:auto;
}

}
.contact-container{
flex-direction:column;
gap:25px;
text-align:center;
}

.contact-info{
text-align:center;
}

.contact-logo img{
height:120px;
}

}
@media(max-width:700px){

.section p{
max-width:100%;
}

}
.media-carousel{
overflow-x:auto;
scroll-behavior:smooth;
-webkit-overflow-scrolling:touch;
}