/* =========================
   GOOGLE FONT
========================= */

@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700;800&display=swap');

/* =========================
   ROOT COLORS
========================= */

:root{

--navy:#0B1F3A;
--navy-light:#16345D;

--saffron:#D97706;
--saffron-light:#F59E0B;

--white:#ffffff;
--off-white:#f8fafc;

--text:#1e293b;
--gray:#64748b;

--shadow:
0 10px 30px rgba(0,0,0,.1);

}

/* =========================
   RESET
========================= */

*{
margin:0;
padding:0;
box-sizing:border-box;
font-family:'Poppins',sans-serif;
}

html{
scroll-behavior:smooth;
}

body{
background:var(--off-white);
color:var(--text);
overflow-x:hidden;
}

/* =========================
   CONTAINER
========================= */

.container{
width:90%;
max-width:1300px;
margin:auto;
}

/* =========================
   COMMON SECTION
========================= */

section{
padding:100px 0;
}

.section-title{

text-align:center;

font-size:42px;

font-weight:700;

color:var(--navy);

margin-bottom:20px;

}

.section-subtitle{

text-align:center;

max-width:800px;

margin:0 auto 50px;

line-height:1.8;

color:var(--gray);

}

/* =========================
   BUTTONS
========================= */

.btn{

display:inline-block;

padding:15px 30px;

background:var(--saffron);

color:white;

text-decoration:none;

border-radius:10px;

font-weight:600;

transition:.3s;

}

.btn:hover{

background:#b45309;

transform:translateY(-3px);

}

.btn-secondary{

display:inline-block;

padding:15px 30px;

background:white;

color:var(--navy);

text-decoration:none;

border-radius:10px;

font-weight:600;

transition:.3s;

}

.btn-secondary:hover{

transform:translateY(-3px);

}

/* =========================
   NAVBAR
========================= */

.navbar{

position:fixed;

top:0;
left:0;

width:100%;

z-index:9999;

background:
rgba(11,31,58,.95);

backdrop-filter:blur(10px);

padding:15px 0;

}

.nav-container{

display:flex;

justify-content:space-between;

align-items:center;

}

.logo{

display:flex;

align-items:center;

gap:10px;

}

.logo img{

width:55px;
height:55px;

object-fit:contain;

}

.logo h2{

color:white;

font-size:24px;

}

.nav-links{

display:flex;

list-style:none;

gap:25px;

}

.nav-links a{

text-decoration:none;

color:white;

font-weight:500;

transition:.3s;

}

.nav-links a:hover{

color:var(--saffron-light);

}

.hamburger{

display:none;

font-size:28px;

color:white;

cursor:pointer;

}

/* =========================
   HERO
========================= */

.hero{

min-height:100vh;

background:
linear-gradient(
135deg,
#0B1F3A,
#16345D,
#D97706
);

display:flex;

align-items:center;

padding-top:120px;

color:white;

}

.hero-container{

display:flex;

align-items:center;

justify-content:space-between;

gap:50px;

}

.hero-content{

flex:1;

}

.hero-content h1{

font-size:65px;

font-weight:800;

line-height:1.2;

margin-bottom:20px;

}

.hero-content span{

color:#FFD166;

}

.hero-content p{

font-size:20px;

line-height:1.8;

margin-bottom:30px;

}

.hero-buttons{

display:flex;

gap:20px;

margin-bottom:40px;

}

.hero-image{

flex:1;

text-align:center;

}

.hero-image img{

width:100%;

max-width:500px;

animation:
float 4s ease-in-out infinite;

}

@keyframes float{

0%{
transform:translateY(0);
}

50%{
transform:translateY(-15px);
}

100%{
transform:translateY(0);
}

}

/* =========================
   HERO STATS
========================= */

.hero-stats{

display:flex;

gap:30px;

flex-wrap:wrap;

}

.hero-stats div{

background:
rgba(255,255,255,.12);

padding:15px 25px;

border-radius:15px;

backdrop-filter:blur(10px);

}

.hero-stats h3{

font-size:28px;

color:#FFD166;

}

.hero-stats p{

font-size:14px;

margin:0;
}

/* =========================
   MOBILE
========================= */

@media(max-width:992px){

.hero-container{

flex-direction:column;

text-align:center;

}

.hero-content h1{

font-size:48px;

}

.nav-links{

display:none;

}

.hamburger{

display:block;

}

}

@media(max-width:768px){

.section-title{

font-size:32px;

}

.hero-content h1{

font-size:38px;

}

.hero-content p{

font-size:16px;

}

.hero-buttons{

flex-direction:column;

}

.btn,
.btn-secondary{

width:100%;

text-align:center;

}

.logo h2{

font-size:18px;

}

}

/* =========================
   ABOUT SECTION
========================= */

.about{
background:white;
}

.about-grid{

display:grid;

grid-template-columns:
repeat(auto-fit,minmax(280px,1fr));

gap:30px;

margin-top:50px;

}

.about-card{

background:white;

padding:35px;

text-align:center;

border-radius:20px;

box-shadow:var(--shadow);

transition:.4s;

}

.about-card:hover{

transform:translateY(-10px);

}

.about-card i{

font-size:55px;

color:var(--saffron);

margin-bottom:20px;

}

.about-card h3{

color:var(--navy);

margin-bottom:15px;

font-size:24px;

}

.about-card p{

color:var(--gray);

line-height:1.8;

}

/* =========================
   WHY CHOOSE US
========================= */

.why-us{

background:#f8fafc;

}

.why-grid{

display:grid;

grid-template-columns:
repeat(auto-fit,minmax(250px,1fr));

gap:30px;

margin-top:50px;

}

.why-box{

background:white;

padding:30px;

text-align:center;

border-radius:20px;

box-shadow:var(--shadow);

transition:.4s;

}

.why-box:hover{

transform:translateY(-10px);

background:var(--navy);

}

.why-box:hover h3,
.why-box:hover p{

color:white;

}

.why-box i{

font-size:50px;

color:var(--saffron);

margin-bottom:20px;

}

.why-box h3{

margin-bottom:15px;

color:var(--navy);

}

.why-box p{

color:var(--gray);

line-height:1.7;

}

/* =========================
   STATISTICS
========================= */

.stats{

background:var(--navy);

color:white;

}

.stats-grid{

display:grid;

grid-template-columns:
repeat(4,1fr);

gap:25px;

}

.stat-card{

background:
rgba(255,255,255,.08);

padding:35px;

border-radius:20px;

text-align:center;

transition:.4s;

}

.stat-card:hover{

transform:translateY(-10px);

background:
rgba(255,255,255,.12);

}

.stat-card h2{

font-size:50px;

color:var(--saffron-light);

margin-bottom:10px;

}

.stat-card p{

font-size:18px;

}

/* =========================
   COURSES
========================= */

.courses{

background:white;

}

.course-grid{

display:grid;

grid-template-columns:
repeat(auto-fit,minmax(280px,1fr));

gap:30px;

margin-top:50px;

}

.course-card{

background:white;

padding:35px;

border-radius:20px;

box-shadow:var(--shadow);

text-align:center;

transition:.4s;

position:relative;

overflow:hidden;

}

.course-card::before{

content:"";

position:absolute;

top:0;
left:0;

width:100%;
height:5px;

background:var(--saffron);

}

.course-card:hover{

transform:
translateY(-10px);

}

.course-card i{

font-size:60px;

color:var(--saffron);

margin-bottom:20px;

}

.course-card h3{

font-size:24px;

color:var(--navy);

margin-bottom:15px;

}

.course-card p{

color:var(--gray);

line-height:1.8;

}

/* =========================
   COURSE BADGE
========================= */

.course-card .badge{

display:inline-block;

margin-top:15px;

padding:8px 18px;

background:var(--saffron);

color:white;

border-radius:30px;

font-size:14px;

font-weight:600;

}

/* =========================
   ANIMATION
========================= */

.about-card,
.why-box,
.course-card,
.stat-card{

animation:
fadeUp 1s ease;

}

@keyframes fadeUp{

from{

opacity:0;

transform:
translateY(40px);

}

to{

opacity:1;

transform:
translateY(0);

}

}

/* =========================
   RESPONSIVE
========================= */

@media(max-width:992px){

.stats-grid{

grid-template-columns:
repeat(2,1fr);

}

}

@media(max-width:768px){

.about-grid,
.why-grid,
.course-grid{

grid-template-columns:1fr;

}

.stats-grid{

grid-template-columns:1fr;

}

.stat-card h2{

font-size:38px;

}

.course-card h3{

font-size:22px;

}

}

/* =========================
   RESOURCES SECTION
========================= */

.resources{

background:#f8fafc;

}

.resource-grid{

display:grid;

grid-template-columns:
repeat(auto-fit,minmax(280px,1fr));

gap:30px;

margin-top:50px;

}

.resource-card{

background:white;

padding:35px;

border-radius:20px;

text-align:center;

box-shadow:var(--shadow);

transition:.4s;

}

.resource-card:hover{

transform:
translateY(-10px);

}

.resource-card i{

font-size:60px;

color:var(--saffron);

margin-bottom:20px;

}

.resource-card h3{

color:var(--navy);

margin-bottom:15px;

font-size:24px;

}

.resource-card p{

color:var(--gray);

line-height:1.8;

margin-bottom:20px;

}

/* =========================
   GALLERY
========================= */

.gallery{

background:white;

}

.gallery-grid{

display:grid;

grid-template-columns:
repeat(auto-fit,minmax(300px,1fr));

gap:20px;

margin-top:50px;

}

.gallery-item{

overflow:hidden;

border-radius:20px;

box-shadow:var(--shadow);

cursor:pointer;

position:relative;

}

.gallery-item img{

width:100%;

height:280px;

object-fit:cover;

transition:.5s;

}

.gallery-item:hover img{

transform:scale(1.1);

}

/* =========================
   CERTIFICATES
========================= */

.certificates{

background:#f8fafc;

}

.certificate-grid{

display:grid;

grid-template-columns:
repeat(auto-fit,minmax(320px,1fr));

gap:30px;

margin-top:50px;

}

.certificate-card{

background:white;

padding:15px;

border-radius:20px;

box-shadow:var(--shadow);

text-align:center;

transition:.4s;

}

.certificate-card:hover{

transform:
translateY(-10px);

}

.certificate-card img{

width:100%;

border-radius:15px;

margin-bottom:15px;

}

.certificate-card h3{

color:var(--navy);

font-size:20px;

}

/* =========================
   TESTIMONIALS
========================= */

.testimonials{

background:white;

}

.testimonial-grid{

display:grid;

grid-template-columns:
repeat(auto-fit,minmax(300px,1fr));

gap:30px;

margin-top:50px;

}

.testimonial-card{

background:white;

padding:35px;

border-radius:20px;

box-shadow:var(--shadow);

text-align:center;

transition:.4s;

}

.testimonial-card:hover{

transform:
translateY(-10px);

}

.stars{

font-size:24px;

color:#FFD700;

margin-bottom:20px;

}

.testimonial-card p{

line-height:1.8;

color:var(--gray);

font-style:italic;

margin-bottom:20px;

}

.testimonial-card h4{

color:var(--navy);

font-size:20px;

}

/* =========================
   IMAGE HOVER EFFECTS
========================= */

.gallery-item,
.certificate-card{

transition:.4s;

}

.gallery-item:hover,
.certificate-card:hover{

box-shadow:
0 15px 40px rgba(0,0,0,.15);

}

/* =========================
   RESPONSIVE
========================= */

@media(max-width:768px){

.resource-grid,
.gallery-grid,
.certificate-grid,
.testimonial-grid{

grid-template-columns:1fr;

}

.gallery-item img{

height:250px;

}

}

/* =========================
   PAYMENT SECTION
========================= */

.payment{

background:white;

}

.payment-wrapper{

display:grid;

grid-template-columns:
repeat(auto-fit,minmax(300px,1fr));

gap:30px;

margin-top:50px;

}

.payment-card{

background:white;

padding:35px;

border-radius:20px;

box-shadow:var(--shadow);

text-align:center;

transition:.4s;

}

.payment-card:hover{

transform:
translateY(-10px);

}

.payment-card img{

width:250px;

max-width:100%;

margin-bottom:20px;

border-radius:15px;

}

.payment-card h3{

color:var(--navy);

margin-bottom:15px;

font-size:24px;

}

.payment-card p{

color:var(--gray);

line-height:1.8;

margin-bottom:20px;

}

/* =========================
   FAQ
========================= */

.faq{

background:#f8fafc;

}

.faq-container{

max-width:900px;

margin:auto;

}

.faq-item{

background:white;

margin-bottom:20px;

border-radius:15px;

overflow:hidden;

box-shadow:var(--shadow);

}

.faq-question{

padding:20px;

background:var(--navy);

color:white;

font-size:18px;

font-weight:600;

cursor:pointer;

}

.faq-answer{

display:none;

padding:20px;

line-height:1.8;

color:var(--gray);

}

.faq-item.active
.faq-answer{

display:block;

}

/* =========================
   CONTACT SECTION
========================= */

.contact{

background:white;

}

.contact-grid{

display:grid;

grid-template-columns:
repeat(auto-fit,minmax(250px,1fr));

gap:30px;

margin-top:50px;

}

.contact-card{

background:white;

padding:35px;

border-radius:20px;

box-shadow:var(--shadow);

text-align:center;

transition:.4s;

}

.contact-card:hover{

transform:
translateY(-10px);

}

.contact-card i{

font-size:55px;

color:var(--saffron);

margin-bottom:20px;

}

.contact-card h3{

color:var(--navy);

margin-bottom:10px;

}

.contact-card p{

color:var(--gray);

}

/* =========================
   FOOTER
========================= */

.footer{

background:
linear-gradient(
135deg,
#0B1F3A,
#16345D
);

color:white;

padding:70px 0 20px;

}

.footer-grid{

display:grid;

grid-template-columns:
repeat(auto-fit,minmax(250px,1fr));

gap:40px;

}

.footer h3{

color:var(--saffron-light);

margin-bottom:20px;

font-size:22px;

}

.footer p{

color:#CBD5E1;

line-height:1.8;

}

.footer-links{

list-style:none;

}

.footer-links li{

margin-bottom:10px;

}

.footer-links a{

text-decoration:none;

color:#CBD5E1;

transition:.3s;

}

.footer-links a:hover{

color:var(--saffron-light);

padding-left:5px;

}

.footer-bottom{

margin-top:40px;

padding-top:20px;

border-top:
1px solid rgba(255,255,255,.1);

text-align:center;

}

.footer-bottom strong{

color:var(--saffron-light);

}

/* =========================
   FLOATING BUTTONS
========================= */

.floating-buttons{

position:fixed;

right:20px;
bottom:20px;

display:flex;

flex-direction:column;

gap:12px;

z-index:9999;

}

.floating-buttons a{

width:60px;
height:60px;

border-radius:50%;

display:flex;

align-items:center;
justify-content:center;

text-decoration:none;

color:white;

font-size:24px;

box-shadow:
0 10px 25px rgba(0,0,0,.2);

transition:.3s;

}

.floating-buttons a:hover{

transform:scale(1.1);

}

.whatsapp{

background:#25D366;

}

.call{

background:#0B1F3A;

}

.linkedin{

background:#0077B5;

}

.email{

background:#D97706;

}

/* =========================
   BACK TO TOP
========================= */

.back-to-top{

position:fixed;

left:20px;
bottom:20px;

width:55px;
height:55px;

background:var(--saffron);

color:white;

border-radius:50%;

display:none;

align-items:center;
justify-content:center;

cursor:pointer;

font-size:20px;

z-index:9999;

box-shadow:var(--shadow);

}

/* =========================
   DARK MODE
========================= */

body.dark{

background:#0f172a;

color:white;

}

body.dark section{

background:#0f172a;

}

body.dark .about-card,
body.dark .course-card,
body.dark .resource-card,
body.dark .payment-card,
body.dark .contact-card,
body.dark .certificate-card,
body.dark .testimonial-card{

background:#1e293b;

color:white;

}

body.dark .section-title{

color:white;

}

/* =========================
   MOBILE MENU
========================= */

@media(max-width:992px){

.nav-links{

position:fixed;

top:85px;
left:-100%;

width:100%;

background:var(--navy);

flex-direction:column;

padding:30px;

transition:.4s;

display:flex;

}

.nav-links.active{

left:0;

}

.nav-links li{

margin:15px 0;

}

}

/* =========================
   RESPONSIVE
========================= */

@media(max-width:768px){

.payment-wrapper,
.contact-grid,
.footer-grid{

grid-template-columns:1fr;

}

.footer{

text-align:center;

}

.floating-buttons a{

width:55px;
height:55px;

font-size:22px;

}

.back-to-top{

width:50px;
height:50px;

}

}

/* IMAGE POPUP */

.image-overlay{

position:fixed;

top:0;
left:0;

width:100%;
height:100%;

background:
rgba(0,0,0,.9);

display:flex;

justify-content:center;
align-items:center;

z-index:99999;

cursor:pointer;

}

.image-overlay img{

max-width:90%;

max-height:90%;

border-radius:20px;

}

.contact-card{

text-decoration:none;

color:inherit;

display:block;

}

.image-overlay{

position:fixed;

top:0;
left:0;

width:100%;
height:100%;

background:rgba(0,0,0,.9);

display:flex;

justify-content:center;
align-items:center;

z-index:99999;

cursor:pointer;

}

.image-overlay img{

max-width:90%;

max-height:90%;

border-radius:20px;

}

/* =========================
   VERIFICATION SECTION
========================= */

.verification{

background:#f8fafc;

text-align:center;

}

.verification-box{

max-width:600px;

margin:auto;

background:white;

padding:40px;

border-radius:20px;

box-shadow:var(--shadow);

}

.verification-box i{

font-size:70px;

color:var(--saffron);

margin-bottom:20px;

}

.verification-box h3{

color:var(--navy);

margin-bottom:15px;

}

.verification-box p{

margin-bottom:25px;

color:var(--gray);

line-height:1.8;

}