/*==========================
 GOOGLE FONT
==========================*/

@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700;800&display=swap');

/*==========================
 RESET
==========================*/

*{
margin:0;
padding:0;
box-sizing:border-box;
}

html{
scroll-behavior:smooth;
}

body{

font-family:'Poppins',sans-serif;
background:#040816;
color:#fff;
overflow-x:hidden;

}

/*==========================
 COLORS
==========================*/

:root{

--primary:#0A84FF;
--secondary:#00D4FF;
--dark:#040816;
--card:rgba(255,255,255,.07);
--border:rgba(255,255,255,.12);
--text:#ffffff;
--gray:#b8c2d6;

}

/*==========================
 BACKGROUND
==========================*/

.bg-animation{

position:fixed;
width:100%;
height:100%;
left:0;
top:0;
overflow:hidden;
z-index:-2;

background:

radial-gradient(circle at top left,#0A84FF33,transparent 35%),

radial-gradient(circle at bottom right,#00D4FF22,transparent 35%),

#040816;

}

/*==========================
 GLOW CIRCLES
==========================*/

.circle{

position:absolute;
border-radius:50%;
filter:blur(120px);

animation:float 10s infinite ease-in-out;

}

.c1{

width:350px;
height:350px;
background:#0066ff;

top:-100px;
left:-100px;

}

.c2{

width:300px;
height:300px;

background:#00d4ff;

right:-100px;
top:20%;

animation-delay:2s;

}

.c3{

width:260px;
height:260px;

background:#005eff;

bottom:-100px;
left:35%;

animation-delay:4s;

}

@keyframes float{

0%{

transform:translateY(0px);

}

50%{

transform:translateY(50px);

}

100%{

transform:translateY(0px);

}

}

/*==========================
 CURSOR GLOW
==========================*/

#cursorGlow{

position:fixed;

width:260px;
height:260px;

background:radial-gradient(circle,#00d4ff55,transparent);

border-radius:50%;

pointer-events:none;

transform:translate(-50%,-50%);

filter:blur(45px);

z-index:-1;

}

/*==========================
 NAVBAR
==========================*/

.navbar{

width:90%;
height:85px;

margin:auto;

display:flex;

justify-content:space-between;

align-items:center;

}

.logo img{

height:55px;

}

.navbar ul{

display:flex;

gap:35px;

list-style:none;

}

.navbar a{

text-decoration:none;

color:#fff;

font-weight:500;

transition:.3s;

}

.navbar ul li a:hover{

color:var(--secondary);

}

.btn-nav{

padding:13px 28px;

border-radius:50px;

background:linear-gradient(90deg,#0A84FF,#00D4FF);

color:#fff;

}

/*==========================
 HERO
==========================*/

.hero{

width:90%;

margin:auto;

min-height:100vh;

display:flex;

align-items:center;

justify-content:space-between;

gap:80px;

}

.hero-left{

width:55%;

}

.badge{

display:inline-block;

padding:10px 22px;

border-radius:40px;

background:#0A84FF22;

border:1px solid #0A84FF;

margin-bottom:25px;

color:#00D4FF;

}

.hero h1{

font-size:72px;

line-height:1.05;

margin-bottom:25px;

font-weight:800;

}

.hero h1 span{

background:linear-gradient(90deg,#00D4FF,#0A84FF);

-webkit-background-clip:text;

-webkit-text-fill-color:transparent;

}

.hero p{

font-size:18px;

line-height:1.9;

color:var(--gray);

max-width:620px;

margin-bottom:40px;

}

.buttons{

display:flex;

gap:20px;

}

.btn-primary{

padding:16px 38px;

background:linear-gradient(90deg,#0A84FF,#00D4FF);

border-radius:50px;

color:white;

text-decoration:none;

font-weight:600;

}

.btn-secondary{

padding:16px 38px;

border:1px solid rgba(255,255,255,.2);

border-radius:50px;

text-decoration:none;

color:white;

backdrop-filter:blur(15px);

}

/*==========================
 GLASS CARDS
==========================*/

.hero-right{

position:relative;

width:45%;

height:550px;

}

.glass-card{

position:absolute;

width:260px;

padding:28px;

background:rgba(255,255,255,.08);

border:1px solid rgba(255,255,255,.15);

backdrop-filter:blur(18px);

border-radius:22px;

transition:.4s;

box-shadow:

0 0 25px rgba(0,212,255,.08);

}

.glass-card:hover{

transform:translateY(-12px);

box-shadow:

0 0 40px rgba(0,212,255,.35);

}

.card1{

top:40px;
left:20px;

}

.card2{

top:200px;
right:0;

}

.card3{

bottom:40px;
left:80px;

}

.glass-card h3{

margin-bottom:10px;

font-size:22px;

}

.glass-card p{

color:#d5d9e2;

}

/*==========================
 SCROLL
==========================*/

.scroll-down{

position:absolute;

bottom:25px;

left:50%;

transform:translateX(-50%);

}

.scroll-down span{

display:block;

width:28px;

height:48px;

border:2px solid #ffffff55;

border-radius:20px;

position:relative;

}

.scroll-down span::before{

content:"";

position:absolute;

width:6px;
height:6px;

background:#00D4FF;

left:50%;
top:8px;

transform:translateX(-50%);

border-radius:50%;

animation:scroll 2s infinite;

}

@keyframes scroll{

0%{

top:8px;
opacity:1;

}

100%{

top:28px;
opacity:0;

}

}
/*============================
EVENTS
=============================*/

.events{

width:90%;

margin:auto;

padding:140px 0;

position:relative;

}

.events::before{

content:"EVENTS";

position:absolute;

left:50%;

top:20px;

transform:translateX(-50%);

font-size:170px;

font-weight:800;

color:rgba(255,255,255,.03);

letter-spacing:12px;

pointer-events:none;

}

.section-title{

text-align:center;

max-width:760px;

margin:auto  auto 80px;

}

.section-title span{

color:#00D4FF;

font-weight:600;

letter-spacing:3px;

}

.section-title h2{

font-size:58px;

margin:20px 0;

}

.section-title p{

color:#b8c2d6;

line-height:1.8;

}

.events-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:35px;

}

.event-card{

background:rgba(255,255,255,.06);

border:1px solid rgba(255,255,255,.08);

border-radius:24px;

padding:45px 35px;

backdrop-filter:blur(20px);

transition:.4s;

cursor:pointer;

}

.event-card:hover{

transform:translateY(-15px);

border-color:#00D4FF;

box-shadow:0 0 40px rgba(0,212,255,.25);

}

.icon{

font-size:48px;

margin-bottom:25px;

}

.event-card h3{

font-size:24px;

margin-bottom:15px;

}

.event-card p{

color:#b8c2d6;

line-height:1.8;

}
/*=========================
SECTORS
==========================*/

.sectors{

width:90%;
margin:auto;
padding:130px 0;

}

.sector-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:30px;

}

.sector{

height:340px;

position:relative;

overflow:hidden;

border-radius:22px;

cursor:pointer;

}

.sector img{

width:100%;
height:100%;

object-fit:cover;

transition:1s;

}

.overlay{

position:absolute;

left:0;
top:0;

width:100%;
height:100%;

display:flex;

justify-content:center;

align-items:center;

background:linear-gradient(to top,#040816,transparent);

}

.overlay h3{

font-size:30px;

text-align:center;

padding:20px;

}

.sector:hover img{

transform:scale(1.15);

}

.sector::after{

content:"";

position:absolute;

left:0;
top:0;

width:100%;
height:100%;

background:#00d4ff22;

opacity:0;

transition:.4s;

}

.sector:hover::after{

opacity:1;

}
/*=========================
TIMELINE
==========================*/

.timeline{

width:90%;

margin:auto;

padding:140px 0;

}

.timeline-line{

position:relative;

max-width:900px;

margin:auto;

}

.timeline-line::before{

content:"";

position:absolute;

left:35px;

top:0;

width:4px;

height:100%;

background:linear-gradient(#00D4FF,#0066ff);

border-radius:20px;

}

.step{

display:flex;

gap:35px;

margin-bottom:70px;

position:relative;

}

.number{

width:70px;

height:70px;

border-radius:50%;

background:linear-gradient(135deg,#00D4FF,#0066ff);

display:flex;

justify-content:center;

align-items:center;

font-size:22px;

font-weight:bold;

color:#fff;

box-shadow:0 0 30px rgba(0,212,255,.35);

flex-shrink:0;

transition:.4s;

}

.step:hover .number{

transform:scale(1.1);

box-shadow:0 0 50px rgba(0,212,255,.6);

}

.content{

background:rgba(255,255,255,.05);

border:1px solid rgba(255,255,255,.08);

padding:30px;

border-radius:20px;

flex:1;

backdrop-filter:blur(18px);

transition:.4s;

}

.content:hover{

transform:translateX(10px);

border-color:#00D4FF;

}

.content h3{

font-size:24px;

margin-bottom:10px;

}

.content p{

color:#bcc6d9;

line-height:1.8;

}
/*=========================
STATISTICS
==========================*/

.stats{

padding:140px 0;

width:90%;

margin:auto;

position:relative;

}

.stats::before{

content:"";

position:absolute;

inset:0;

background-image:

linear-gradient(rgba(255,255,255,.03) 1px, transparent 1px),

linear-gradient(90deg, rgba(255,255,255,.03) 1px, transparent 1px);

background-size:40px 40px;

opacity:.4;

pointer-events:none;

}

.stats-grid{

display:grid;

grid-template-columns:repeat(4,1fr);

gap:30px;

margin-top:80px;

}

.stat-card{

background:rgba(255,255,255,.05);

border:1px solid rgba(255,255,255,.08);

backdrop-filter:blur(20px);

border-radius:25px;

padding:45px;

text-align:center;

transition:.4s;

position:relative;

overflow:hidden;

}

.stat-card::before{

content:"";

position:absolute;

width:220px;

height:220px;

background:#00D4FF22;

border-radius:50%;

top:-120px;

right:-120px;

transition:.5s;

}

.stat-card:hover::before{

transform:scale(1.4);

}

.stat-card:hover{

transform:translateY(-12px);

border-color:#00D4FF;

box-shadow:0 0 45px rgba(0,212,255,.25);

}

.counter{

font-size:64px;

font-weight:800;

color:#00D4FF;

margin-bottom:10px;

}

.stat-card p{

font-size:18px;

color:#cfd6e6;

}
/*=========================
FEATURED EVENTS
==========================*/

.featured-events{

width:90%;

margin:auto;

padding:140px 0;

}

.featured-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:30px;

margin-top:70px;

}

.featured-card{

position:relative;

height:520px;

overflow:hidden;

border-radius:26px;

cursor:pointer;

background:#111;

}

.featured-card img{

width:100%;

height:100%;

object-fit:cover;

transition:1s;

}

.featured-content{

position:absolute;

left:0;
right:0;
bottom:0;

padding:40px;

background:linear-gradient(transparent,#020816);

}

.featured-content span{

color:#00D4FF;

font-size:14px;

letter-spacing:2px;

}

.featured-content h3{

margin:15px 0;

font-size:32px;

line-height:1.3;

}

.featured-content a{

color:white;

text-decoration:none;

transition:.4s;

}

.featured-card:hover img{

transform:scale(1.12);

}

.featured-card:hover a{

color:#00D4FF;

}

.featured-card::after{

content:"";

position:absolute;

left:0;

top:0;

width:100%;

height:100%;

background:linear-gradient(transparent,#00000099);

opacity:0;

transition:.5s;

}

.featured-card:hover::after{

opacity:1;

}
/*=========================
WHY
==========================*/

.why{

width:90%;

margin:auto;

padding:140px 0;

display:grid;

grid-template-columns:1.1fr .9fr;

gap:80px;

align-items:center;

}

.why-left span{

color:#00D4FF;

letter-spacing:3px;

font-weight:600;

}

.why-left h2{

font-size:54px;

margin:20px 0;

}

.why-left>p{

line-height:1.9;

color:#b9c3d8;

margin-bottom:50px;

}

.why-list{

display:flex;

flex-direction:column;

gap:25px;

}

.why-item{

display:flex;

gap:20px;

align-items:flex-start;

}

.check{

width:52px;

height:52px;

background:linear-gradient(135deg,#00D4FF,#0066ff);

display:flex;

justify-content:center;

align-items:center;

border-radius:50%;

font-size:22px;

font-weight:bold;

flex-shrink:0;

}

.why-item h3{

margin-bottom:8px;

}

.why-item p{

color:#b8c2d6;

line-height:1.7;

}

.why-right{

display:grid;

grid-template-columns:repeat(2,1fr);

gap:25px;

}

.feature-box{

background:rgba(255,255,255,.05);

border:1px solid rgba(255,255,255,.08);

border-radius:24px;

padding:45px 25px;

text-align:center;

transition:.4s;

backdrop-filter:blur(18px);

}

.feature-box h3{

font-size:34px;

color:#00D4FF;

margin-bottom:10px;

}

.feature-box:hover{

transform:translateY(-10px);

border-color:#00D4FF;

box-shadow:0 0 40px rgba(0,212,255,.25);

}
/*=========================
GALLERY
==========================*/

.gallery{

width:90%;
margin:auto;
padding:120px 0;

}

.gallery-grid{

columns:3 300px;

column-gap:18px;

}

.gallery-grid img{

width:100%;
margin-bottom:18px;

border-radius:20px;

cursor:pointer;

transition:.5s;

}

.gallery-grid img:hover{

transform:scale(1.03);

box-shadow:0 20px 50px rgba(0,212,255,.25);

}
/*=========================
PARTNERS
==========================*/

.partners{

padding:100px 0;

overflow:hidden;

}

.partners h2{

text-align:center;

margin-bottom:50px;

font-size:44px;

}

.logos{

display:flex;

gap:80px;

white-space:nowrap;

animation:slide 18s linear infinite;

}

.logos div{

font-size:34px;

font-weight:700;

color:#ffffff55;

}

@keyframes slide{

0%{

transform:translateX(0);

}

100%{

transform:translateX(-50%);

}

}
/*=========================
CONTACT
==========================*/

.contact{

width:90%;

margin:auto;

padding:150px 0;

display:grid;

grid-template-columns:1fr 1fr;

gap:70px;

}

.contact h2{

font-size:52px;

margin-bottom:25px;

}

.contact p{

line-height:1.9;

color:#b8c2d6;

}

.info{

margin-top:40px;

display:flex;

flex-direction:column;

gap:20px;

}

form{

display:flex;

flex-direction:column;

gap:20px;

}

input,
textarea{

padding:18px;

background:rgba(255,255,255,.05);

border:1px solid rgba(255,255,255,.08);

border-radius:15px;

color:white;

}

textarea{

height:170px;

resize:none;

}

button{

padding:18px;

background:linear-gradient(90deg,#0066ff,#00D4FF);

border:none;

color:white;

border-radius:50px;

cursor:pointer;

font-size:18px;

}
/*=========================
FOOTER
==========================*/

footer{

padding:60px 20px;

text-align:center;

border-top:1px solid rgba(255,255,255,.08);

}

footer img{

height:70px;

margin-bottom:20px;

}

footer p{

color:#95a1ba;

margin:10px 0;

}
.info a{

    color:#ffffff;
    text-decoration:none;
    transition:.3s;

}

.info a:hover{

    color:#00D4FF;

}
/*====================================
MOBILE MENU
====================================*/

.menu-toggle{

display:none;

width:45px;

height:45px;

cursor:pointer;

justify-content:center;

align-items:center;

flex-direction:column;

gap:6px;

z-index:9999;

}

.menu-toggle span{

width:28px;

height:3px;

background:#fff;

border-radius:20px;

transition:.35s;

}

.menu-toggle.active span:nth-child(1){

transform:rotate(45deg) translateY(13px);

}

.menu-toggle.active span:nth-child(2){

opacity:0;

}

.menu-toggle.active span:nth-child(3){

transform:rotate(-45deg) translateY(-13px);

}

.menu-overlay{

position:fixed;

left:0;

top:0;

width:100%;

height:100%;

background:rgba(0,0,0,.55);

backdrop-filter:blur(5px);

opacity:0;

visibility:hidden;

transition:.35s;

z-index:1000;

}

.menu-overlay.active{

opacity:1;

visibility:visible;

}