/* =========================
GLOBAL RESET
========================= */

*{
margin:0;
padding:0;
box-sizing:border-box;
text-decoration:none;
}

body{
font-family:'Poppins', sans-serif;
background:#ffffff;
color:#333;
padding-top:90px;
}

/* =========================
BRAND COLORS
========================= */

:root{
--red:#d80000;
--pink:#f8c8dc;
--white:#ffffff;
}

/* =========================
GLASS NAVBAR
========================= */

.navbar{

position:fixed;
top:0;
width:100%;

background:rgba(216,0,0,0.65);

backdrop-filter:blur(10px);

display:flex;
justify-content:space-between;
align-items:center;

padding:15px 8%;

z-index:1000;

color:white;

}

.brand h2{
font-size:22px;
}

.brand p{
font-size:12px;
opacity:0.9;
}

/* =========================
NAV MENU
========================= */

.nav-menu{
display:flex;
gap:25px;
}

.nav-menu a{
color:white;
font-weight:500;
transition:0.3s;
}

.nav-menu a:hover{
color:var(--pink);
transform:translateY(-2px);
}

/* =========================
HAMBURGER
========================= */

.hamburger{
display:none;
flex-direction:column;
cursor:pointer;
}

.hamburger span{
height:3px;
width:25px;
background:white;
margin:4px;
transition:0.3s;
}

/* =========================
HERO SECTION
========================= */

.hero{

position:relative;
height:85vh;

display:flex;
align-items:center;
justify-content:center;

text-align:center;
color:white;

overflow:hidden;

}

/* HERO SLIDER */

.hero-slider{

position:absolute;
width:100%;
height:100%;

top:0;
left:0;

}

.slide{

position:absolute;
width:100%;
height:100%;

background-size:cover;
background-position:center;

opacity:0;

transition:opacity 1.5s ease-in-out;

}

/* DARK OVERLAY */

.slide::after{

content:"";
position:absolute;

width:100%;
height:100%;

background:rgba(0,0,0,0.55);

top:0;
left:0;

}

.slide.active{
opacity:1;
}

.hero-content{

position:relative;
z-index:2;
max-width:800px;
padding:20px;

}

.hero h1{
font-size:48px;
margin-bottom:20px;
}

.hero p{
font-size:18px;
line-height:1.6;
margin-bottom:30px;
}

/* =========================
TYPING EFFECT
========================= */

#typing{
border-right:3px solid var(--pink);
padding-right:6px;
animation:blink 0.7s infinite;
}

@keyframes blink{

0%{border-color:transparent}
50%{border-color:var(--pink)}
100%{border-color:transparent}

}

/* =========================
HERO BUTTONS
========================= */

.hero-buttons{
display:flex;
justify-content:center;
gap:15px;
flex-wrap:wrap;
}

.btn-primary,
.btn-secondary{

padding:14px 28px;
border-radius:40px;
font-weight:600;

transition:0.3s;

}

.btn-primary{
background:var(--red);
color:white;
}

.btn-secondary{
background:white;
color:var(--red);
}

/* BUTTON HOVER */

.btn-primary:hover,
.btn-secondary:hover,
.course-btn:hover,
.cta-btn:hover,
.newsletter-form button:hover{

background:var(--pink);
color:black;
transform:scale(1.05);

}

/* =========================
COURSES
========================= */

.courses-preview{
padding:70px 10%;
text-align:center;
}

.course-container{

display:grid;
grid-template-columns:repeat(auto-fit,minmax(220px,1fr));

gap:25px;
margin-top:40px;

}

.course-card{

background:white;

padding:30px;

border-radius:15px;

box-shadow:0 10px 25px rgba(0,0,0,0.08);

transition:0.3s;

}

.course-card:hover{
transform:translateY(-10px);
}

.course-card i{
font-size:40px;
color:var(--red);
margin-bottom:15px;
}

.course-btn{

display:inline-block;
margin-top:15px;

background:var(--red);
color:white;

padding:10px 20px;

border-radius:30px;

transition:0.3s;

}

/* =========================
WHY US
========================= */

.why-us{

padding:70px 10%;
background:#fff5f7;

text-align:center;

}

.why-container{

display:grid;
grid-template-columns:repeat(auto-fit,minmax(200px,1fr));

gap:25px;
margin-top:40px;

}

.why-box{
padding:25px;
}

.why-box i{
font-size:35px;
color:var(--red);
margin-bottom:10px;
}

/* =========================
STATS
========================= */

.stats-section{

padding:70px 10%;
text-align:center;

background:white;

}

.stats-container{

display:grid;
grid-template-columns:repeat(auto-fit,minmax(150px,1fr));

gap:30px;
margin-top:30px;

}

.stat-box h3{
font-size:36px;
color:var(--red);
}

/* =========================
TESTIMONIALS
========================= */

.testimonials{

padding:70px 10%;
background:#fff5f7;

text-align:center;

}

.testimonial{

display:none;

max-width:600px;
margin:auto;

}

.testimonial.active{

display:block;

animation:fade 1s;

}

.testimonial img{

width:80px;
height:80px;

border-radius:50%;

margin-bottom:15px;

}

@keyframes fade{

from{opacity:0}
to{opacity:1}

}

/* =========================
CTA
========================= */

.cta{

background:var(--red);
color:white;

text-align:center;

padding:70px 20px;

}

.cta-btn{

display:inline-block;
margin-top:20px;

padding:14px 28px;

background:white;
color:var(--red);

border-radius:40px;

font-weight:600;

transition:0.3s;

}

/* =========================
NEWSLETTER
========================= */

.newsletter{

padding:70px 10%;
text-align:center;

}

.newsletter-form{
margin-top:20px;
}

.newsletter-form input{

padding:14px;

width:260px;

border-radius:30px;

border:1px solid #ddd;

outline:none;

margin-right:10px;

}

.newsletter-form button{

padding:14px 24px;

border:none;

border-radius:30px;

background:var(--red);

color:white;

cursor:pointer;

transition:0.3s;

}

.small-note{

display:block;

margin-top:10px;

font-size:12px;

opacity:0.7;

}

/* =========================
FOOTER
========================= */

.footer{

background:var(--red);

color:white;

padding-top:40px;

}

.footer-container{

display:grid;

grid-template-columns:repeat(auto-fit,minmax(220px,1fr));

gap:30px;

padding:40px 10%;

}

.footer-col h3{
margin-bottom:15px;
}

.footer-col a{

color:white;

transition:0.3s;

}

.footer-col a:hover{
color:var(--pink);
}

.social-icons a{
margin-right:10px;
font-size:18px;
}

.footer-bottom{

text-align:center;

padding:15px;

border-top:1px solid rgba(255,255,255,0.2);

}

/* =========================
WHATSAPP FLOAT
========================= */

.whatsapp-float{

position:fixed;

bottom:25px;
right:25px;

background:#25D366;

color:white;

width:60px;
height:60px;

display:flex;

align-items:center;
justify-content:center;

font-size:30px;

border-radius:50%;

box-shadow:0 6px 15px rgba(0,0,0,0.2);

animation:pulse 2s infinite;

transition:0.3s;

}

.whatsapp-float:hover{

transform:scale(1.1);

background:var(--pink);

color:black;

}

@keyframes pulse{

0%{box-shadow:0 0 0 0 rgba(37,211,102,0.6);}
70%{box-shadow:0 0 0 15px rgba(37,211,102,0);}
100%{box-shadow:0 0 0 0 rgba(37,211,102,0);}

}

/* =========================
MOBILE MENU
========================= */

@media(max-width:768px){

.nav-menu{

position:fixed;

top:0;
right:-100%;

width:260px;
height:100vh;

background:var(--red);

flex-direction:column;

padding-top:100px;

gap:30px;

align-items:center;

transition:0.4s;

box-shadow:-10px 0 20px rgba(0,0,0,0.2);

}

.nav-menu.active{
right:0;
}

.nav-menu a{
font-size:18px;
}

.hamburger{
display:flex;
z-index:1001;
}

.hero h1{
font-size:32px;
}

.hero{
height:auto;
padding:100px 20px;
}

.newsletter-form input{
width:100%;
margin-bottom:10px;
}

}