*{
margin:0;
padding:0;
box-sizing:border-box;
}

html{
scroll-behavior:smooth;
}

body{

font-family:'Poppins',sans-serif;
background:#ffffff;
color:#222;
overflow-x:hidden;

}

:root{

--blue:#0056D2;
--red:#E63946;
--white:#ffffff;
--gray:#F8FAFC;
--dark:#0F172A;

}

.container{

width:90%;
max-width:1300px;
margin:auto;

}

/* Loader */

#loader{

position:fixed;
width:100%;
height:100%;
background:#fff;
display:flex;
justify-content:center;
align-items:center;
z-index:9999;

}

.spinner{

width:60px;
height:60px;
border:6px solid #eee;
border-top:6px solid var(--red);
border-radius:50%;
animation:spin 1s linear infinite;

}

@keyframes spin{

100%{

transform:rotate(360deg);

}

}

/* Header */

header{

position:fixed;
top:0;
left:0;
width:100%;
padding:18px 0;
z-index:999;
transition:.4s;

}

header.sticky{

background:#fff;
box-shadow:0 10px 30px rgba(0,0,0,.08);

}

.navbar{

display:flex;
justify-content:space-between;
align-items:center;

}

.logo img{

height:75px;
transition:.3s;

}

.nav-menu{

display:flex;
list-style:none;
gap:35px;

}

.nav-menu a{

text-decoration:none;
color:#fff;
font-weight:600;
transition:.3s;

}

header.sticky .nav-menu a{

color:#222;

}

.nav-menu a:hover{

color:var(--red);

}

.register-btn{

background:linear-gradient(135deg,var(--red),#ff5965);
padding:14px 30px;
border-radius:50px;
text-decoration:none;
color:#fff;
font-weight:600;
transition:.4s;

}

.register-btn:hover{

transform:translateY(-5px);

}

.hamburger{

display:none;
cursor:pointer;

}

.hamburger span{

display:block;
width:30px;
height:3px;
background:#fff;
margin:6px;

}

header.sticky .hamburger span{

background:#222;

}

@media(max-width:992px){

.nav-menu{

display:none;

}

.hamburger{

display:block;

}

.logo img{

height:60px;

}

}

/* ================= HERO ================= */

.hero{

position:relative;
height:100vh;
overflow:hidden;

}

.slider{

position:relative;
width:100%;
height:100%;

}

.slide{

position:absolute;
width:100%;
height:100%;
opacity:0;
visibility:hidden;
transition:opacity 1s ease;

}

.slide.active{

opacity:1;
visibility:visible;

}

.slide img{

width:100%;
height:100%;
object-fit:cover;

}

.overlay{

position:absolute;
inset:0;
background:linear-gradient(rgba(15,23,42,.75),
rgba(0,86,210,.55));

}

.hero-content{

position:absolute;
top:50%;
left:10%;
transform:translateY(-50%);
max-width:650px;
color:#fff;
z-index:10;

}

.hero-content h1{

font-size:4rem;
line-height:1.15;
margin-bottom:20px;
font-weight:800;

animation:fadeUp .8s ease;

}

.hero-content p{

font-size:1.2rem;
margin-bottom:35px;
color:#F8FAFC;
animation:fadeUp 1s ease;

}

.hero-buttons{

display:flex;
gap:20px;
flex-wrap:wrap;

}

.btn{

display:inline-block;
padding:16px 36px;
border-radius:50px;
text-decoration:none;
font-weight:600;
transition:.3s;

}

.btn-primary{

background:linear-gradient(135deg,#E63946,#ff6b6b);
color:#fff;

}

.btn-primary:hover{

transform:translateY(-4px);

}

.btn-outline{

border:2px solid #fff;
color:#fff;

}

.btn-outline:hover{

background:#fff;
color:#0056D2;

}

.slider-controls{

position:absolute;
top:50%;
width:100%;
display:flex;
justify-content:space-between;
padding:0 30px;
transform:translateY(-50%);
z-index:50;

}

.slider-controls button{

width:55px;
height:55px;
border:none;
border-radius:50%;
background:rgba(255,255,255,.2);
backdrop-filter:blur(10px);
color:#fff;
font-size:24px;
cursor:pointer;
transition:.3s;

}

.slider-controls button:hover{

background:#E63946;

}

.slider-dots{

position:absolute;
bottom:35px;
left:50%;
transform:translateX(-50%);
display:flex;
gap:12px;
z-index:50;

}

.dot{

width:14px;
height:14px;
background:#fff;
opacity:.5;
border-radius:50%;
cursor:pointer;

}

.dot.active{

background:#E63946;
opacity:1;

}

@keyframes fadeUp{

from{

opacity:0;
transform:translateY(30px);

}

to{

opacity:1;
transform:translateY(0);

}

}

@media(max-width:768px){

.hero-content{

left:6%;
right:6%;
max-width:100%;

}

.hero-content h1{

font-size:2.4rem;

}

.hero-content p{

font-size:1rem;

}

.hero-buttons{

flex-direction:column;

}

}

/* ================= ABOUT ================= */

.section{

padding:120px 0;

}

.about{

background:#F8FAFC;

}

.section-heading{

text-align:center;
max-width:800px;
margin:auto auto 80px;

}

.section-heading h5{

color:#E63946;
font-size:18px;
font-weight:700;
letter-spacing:2px;
margin-bottom:15px;

}

.section-heading h2{

font-size:42px;
margin-bottom:20px;
color:#0F172A;

}

.section-heading p{

font-size:18px;
color:#64748B;

}

.about-wrapper{

display:grid;
grid-template-columns:1fr 1fr;
gap:70px;
align-items:center;

}

.about-image{

position:relative;

}

.about-image img{

width:100%;
border-radius:25px;
box-shadow:0 30px 70px rgba(0,0,0,.15);

}

.experience-box{

position:absolute;
bottom:30px;
right:-20px;

background:linear-gradient(135deg,#0056D2,#003b91);

color:#fff;

padding:25px;

border-radius:20px;

box-shadow:0 20px 40px rgba(0,0,0,.2);

text-align:center;

}

.experience-box h2{

font-size:40px;

}

.about-content h3{

font-size:36px;
margin-bottom:20px;
color:#0F172A;

}

.about-content p{

margin-bottom:20px;
font-size:17px;
color:#555;

}

.about-grid{

display:grid;
grid-template-columns:repeat(2,1fr);
gap:20px;
margin:40px 0;

}

.about-card{

background:#fff;

padding:25px;

border-radius:18px;

box-shadow:0 15px 40px rgba(0,0,0,.08);

transition:.4s;

}

.about-card:hover{

transform:translateY(-8px);

}

.icon-circle{

width:65px;
height:65px;
border-radius:50%;

background:linear-gradient(135deg,#0056D2,#E63946);

display:flex;
justify-content:center;
align-items:center;

color:#fff;

font-size:25px;

margin-bottom:20px;

}

.about-card h4{

margin-bottom:12px;

}

.mission-vision{

display:grid;

grid-template-columns:repeat(2,1fr);

gap:25px;

margin-bottom:40px;

}

.mv-box{

background:#fff;

padding:30px;

border-left:5px solid #E63946;

border-radius:18px;

box-shadow:0 15px 35px rgba(0,0,0,.08);

}

.mv-box h3{

margin-bottom:15px;
color:#0056D2;

}

.mv-box i{

margin-right:10px;
color:#E63946;

}

@media(max-width:992px){

.about-wrapper{

grid-template-columns:1fr;

}

.about-grid{

grid-template-columns:1fr;

}

.mission-vision{

grid-template-columns:1fr;

}

.section-heading h2{

font-size:34px;

}

.about-content h3{

font-size:30px;

}

.experience-box{

right:20px;

}

}

/* ================= SERVICES ================= */

.services{
    background:#ffffff;
}

.services-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
    gap:35px;
}

.service-card{
    background:#fff;
    border-radius:20px;
    overflow:hidden;
    box-shadow:0 15px 35px rgba(0,0,0,.08);
    transition:.35s ease;
}

.service-card:hover{
    transform:translateY(-12px);
    box-shadow:0 25px 50px rgba(0,86,210,.15);
}

.service-image{
    height:220px;
    overflow:hidden;
    background:#eef4ff;
}

.service-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .5s ease;
}

.service-card:hover .service-image img{
    transform:scale(1.08);
}

.service-content{
    padding:25px;
}

.service-content h3{
    font-size:22px;
    color:#0F172A;
    margin-bottom:12px;
}

.service-content p{
    color:#64748B;
    margin-bottom:20px;
    min-height:72px;
}

.service-content .btn{
    display:inline-block;
}

@media (max-width:768px){

    .service-image{
        height:200px;
    }

    .service-content{
        padding:20px;
    }

}
/* ================= PORTAL ================= */

.portal{

background:linear-gradient(135deg,#F8FAFC,#EEF5FF);

}

.portal-wrapper{

display:grid;

grid-template-columns:1fr 1fr;

gap:80px;

align-items:center;

}

.portal-img-box{

position:relative;

}

.portal-img-box img{

width:100%;

border-radius:25px;

box-shadow:0 25px 60px rgba(0,0,0,.12);

}

.section-tag{

display:inline-block;

padding:8px 18px;

background:#E63946;

color:#fff;

border-radius:40px;

font-size:14px;

font-weight:600;

margin-bottom:20px;

}

.portal-content h2{

font-size:42px;

margin-bottom:20px;

color:#0F172A;

}

.portal-content p{

font-size:17px;

color:#555;

margin-bottom:20px;

line-height:1.8;

}

.portal-features{

display:grid;

grid-template-columns:repeat(2,1fr);

gap:18px;

margin:35px 0;

}

.feature-item{

display:flex;

align-items:center;

gap:15px;

background:#fff;

padding:18px;

border-radius:15px;

box-shadow:0 10px 25px rgba(0,0,0,.08);

transition:.35s;

}

.feature-item:hover{

transform:translateY(-6px);

}

.feature-item i{

font-size:22px;

color:#0056D2;

}

.portal-buttons{

display:flex;

gap:15px;

flex-wrap:wrap;

margin-top:30px;

}

.btn-secondary{

background:#0F172A;

color:#fff;

padding:15px 32px;

border-radius:50px;

text-decoration:none;

transition:.35s;

}

.btn-secondary:hover{

background:#E63946;

}

.btn-outline-blue{

padding:15px 32px;

border:2px solid #0056D2;

border-radius:50px;

text-decoration:none;

color:#0056D2;

font-weight:600;

transition:.35s;

}

.btn-outline-blue:hover{

background:#0056D2;

color:#fff;

}

.floating-card{

position:absolute;

background:#fff;

padding:20px;

border-radius:18px;

box-shadow:0 20px 45px rgba(0,0,0,.12);

text-align:center;

animation:float 4s ease-in-out infinite;

}

.floating-card i{

font-size:30px;

color:#E63946;

margin-bottom:10px;

}

.lessons{

top:30px;

left:-30px;

}

.students{

bottom:30px;

right:-30px;

}

@keyframes float{

0%,100%{

transform:translateY(0);

}

50%{

transform:translateY(-12px);

}

}

@media(max-width:992px){

.portal-wrapper{

grid-template-columns:1fr;

}

.portal-features{

grid-template-columns:1fr;

}

.portal-content h2{

font-size:34px;

}

.lessons,
.students{

position:relative;

left:0;

right:0;

top:20px;

bottom:0;

margin:20px auto;

max-width:220px;

}

}

/* ================= WHY CHOOSE US ================= */

.why-us{

background:#ffffff;

}

.why-wrapper{

display:grid;

grid-template-columns:1fr 1fr;

gap:70px;

align-items:center;

}

.why-content h3{

font-size:38px;

margin-bottom:25px;

color:#0F172A;

}

.why-content p{

color:#555;

line-height:1.8;

margin-bottom:20px;

}

.feature-list{

margin-top:40px;

display:grid;

grid-template-columns:repeat(2,1fr);

gap:25px;

}

.feature-box{

display:flex;

gap:18px;

padding:25px;

background:#F8FAFC;

border-radius:18px;

transition:.4s;

box-shadow:0 15px 35px rgba(0,0,0,.05);

}

.feature-box:hover{

background:#0056D2;

transform:translateY(-8px);

}

.feature-box:hover h4,

.feature-box:hover p,

.feature-box:hover i{

color:#fff;

}

.feature-box i{

font-size:28px;

color:#E63946;

margin-top:5px;

transition:.3s;

}

.feature-box h4{

margin-bottom:8px;

color:#0F172A;

transition:.3s;

}

.feature-box p{

font-size:15px;

margin:0;

transition:.3s;

}

.why-image{

position:relative;

}

.why-image img{

width:100%;

border-radius:25px;

box-shadow:0 25px 60px rgba(0,0,0,.12);

}

.achievement-card{

position:absolute;

top:40px;

left:-30px;

background:#fff;

padding:25px;

border-radius:20px;

text-align:center;

box-shadow:0 20px 50px rgba(0,0,0,.12);

animation:float 5s ease-in-out infinite;

}

.achievement-card.second{

bottom:40px;

right:-30px;

left:auto;

top:auto;

}

.achievement-card h2{

font-size:40px;

color:#0056D2;

}

.achievement-card p{

font-weight:600;

color:#555;

}

@media(max-width:992px){

.why-wrapper{

grid-template-columns:1fr;

}

.feature-list{

grid-template-columns:1fr;

}

.why-content h3{

font-size:32px;

}

.achievement-card,

.achievement-card.second{

position:relative;

left:0;

right:0;

top:20px;

bottom:0;

margin:20px auto;

max-width:220px;

}

}

/* ================= STATISTICS ================= */

.statistics{

background:linear-gradient(135deg,#0056D2,#0F172A);

color:#fff;

position:relative;

overflow:hidden;

}

.statistics::before{

content:"";

position:absolute;

width:700px;
height:700px;

background:rgba(255,255,255,.05);

border-radius:50%;

top:-250px;
right:-250px;

}

.statistics::after{

content:"";

position:absolute;

width:500px;
height:500px;

background:rgba(255,255,255,.03);

border-radius:50%;

bottom:-180px;
left:-180px;

}

.light h2,
.light h5,
.light p{

color:#fff;

}

.stats-grid{

display:grid;

grid-template-columns:repeat(auto-fit,minmax(250px,1fr));

gap:35px;

position:relative;

z-index:2;

}

.stat-card{

background:rgba(255,255,255,.08);

backdrop-filter:blur(15px);

padding:45px 30px;

border-radius:25px;

text-align:center;

border:1px solid rgba(255,255,255,.12);

transition:.4s;

}

.stat-card:hover{

transform:translateY(-12px);

background:rgba(255,255,255,.15);

}

.stat-icon{

width:85px;
height:85px;

margin:auto;

border-radius:50%;

background:#E63946;

display:flex;

justify-content:center;
align-items:center;

font-size:32px;

margin-bottom:25px;

box-shadow:0 10px 25px rgba(0,0,0,.25);

}

.stat-card h2{

display:inline-block;

font-size:56px;

font-weight:800;

margin-bottom:10px;

}

.stat-card span{

font-size:40px;

font-weight:700;

color:#FFD166;

}

.stat-card h4{

margin:18px 0;

font-size:24px;

}

.stat-card p{

color:#E2E8F0;

line-height:1.7;

}

@media(max-width:768px){

.stat-card{

padding:35px 25px;

}

.stat-card h2{

font-size:46px;

}

.stat-card span{

font-size:32px;

}

}

/* ================= TESTIMONIALS ================= */

.testimonials{

background:#F8FAFC;

}

.testimonial-slider{

position:relative;

overflow:hidden;

max-width:900px;

margin:auto;

}

.testimonial-track{

position:relative;

min-height:420px;

}

.testimonial-card{

position:absolute;

width:100%;

opacity:0;

visibility:hidden;

transition:opacity .8s ease;

background:#fff;

padding:50px;

border-radius:25px;

box-shadow:0 20px 50px rgba(0,0,0,.08);

text-align:center;

}

.testimonial-card.active{

opacity:1;

visibility:visible;

}

.student-photo{

width:120px;

height:120px;

margin:auto;

margin-bottom:20px;

border-radius:50%;

overflow:hidden;

border:5px solid #0056D2;

}

.student-photo img{

width:100%;

height:100%;

object-fit:cover;

}

.stars{

font-size:26px;

color:#FFD700;

margin-bottom:15px;

}

.testimonial-card h3{

font-size:28px;

margin-bottom:8px;

color:#0F172A;

}

.band-score{

display:inline-block;

padding:8px 18px;

background:#E63946;

color:#fff;

border-radius:30px;

font-size:14px;

margin-bottom:25px;

}

.testimonial-card p{

font-size:17px;

line-height:1.8;

color:#555;

font-style:italic;

}

.testimonial-nav{

display:flex;

justify-content:center;

gap:20px;

margin-top:40px;

}

.testimonial-nav button{

width:55px;

height:55px;

border:none;

border-radius:50%;

background:#0056D2;

color:#fff;

font-size:20px;

cursor:pointer;

transition:.3s;

}

.testimonial-nav button:hover{

background:#E63946;

}

.testimonial-dots{

display:flex;

justify-content:center;

gap:12px;

margin-top:25px;

}

.t-dot{

width:14px;

height:14px;

background:#ccc;

border-radius:50%;

cursor:pointer;

transition:.3s;

}

.t-dot.active{

background:#E63946;

}

@media(max-width:768px){

.testimonial-card{

padding:35px 25px;

}

.student-photo{

width:90px;

height:90px;

}

.testimonial-card h3{

font-size:24px;

}

}

/* ================= MISSION ================= */

.mission{

background:linear-gradient(135deg,#F8FAFC,#ffffff);

}

.mission-wrapper{

display:grid;

grid-template-columns:1fr 1fr;

gap:70px;

align-items:center;

}

.mission-image img{

width:100%;

border-radius:25px;

box-shadow:0 20px 60px rgba(0,0,0,.12);

transition:.4s;

}

.mission-image img:hover{

transform:scale(1.02);

}

.mission-content{

display:flex;

flex-direction:column;

gap:30px;

}

.mission-card{

background:#fff;

padding:35px;

border-radius:20px;

box-shadow:0 15px 40px rgba(0,0,0,.08);

border-left:6px solid #0056D2;

transition:.35s;

}

.mission-card:hover{

transform:translateY(-8px);

border-left:6px solid #E63946;

}

.mission-icon{

width:70px;

height:70px;

background:linear-gradient(135deg,#0056D2,#E63946);

border-radius:50%;

display:flex;

justify-content:center;

align-items:center;

color:#fff;

font-size:28px;

margin-bottom:20px;

}

.mission-card h3{

font-size:28px;

margin-bottom:15px;

color:#0F172A;

}

.mission-card p{

color:#555;

line-height:1.8;

}

.core-values{

background:#ffffff;

padding:30px;

border-radius:20px;

box-shadow:0 15px 40px rgba(0,0,0,.08);

}

.core-values h3{

margin-bottom:20px;

color:#0056D2;

}

.core-values ul{

list-style:none;

display:grid;

grid-template-columns:repeat(2,1fr);

gap:15px;

}

.core-values li{

font-weight:500;

color:#444;

}

.core-values i{

color:#E63946;

margin-right:10px;

}

@media(max-width:992px){

.mission-wrapper{

grid-template-columns:1fr;

}

.core-values ul{

grid-template-columns:1fr;

}

.mission-card{

padding:30px;

}

}
/* ================= CTA ================= */

.cta-banner{

position:relative;

padding:120px 0;

background:linear-gradient(135deg,#0056D2,#0F172A);

overflow:hidden;

color:#fff;

}

.cta-banner::before{

content:"";

position:absolute;

width:600px;

height:600px;

background:rgba(255,255,255,.05);

border-radius:50%;

top:-250px;

right:-150px;

}

.cta-banner::after{

content:"";

position:absolute;

width:400px;

height:400px;

background:rgba(230,57,70,.15);

border-radius:50%;

bottom:-180px;

left:-120px;

}

.cta-overlay{

position:absolute;

inset:0;

background:url("images/pattern.png");

opacity:.05;

}

.cta-wrapper{

position:relative;

z-index:2;

display:grid;

grid-template-columns:2fr 1fr;

gap:60px;

align-items:center;

}

.cta-tag{

display:inline-block;

padding:10px 22px;

background:#E63946;

border-radius:40px;

font-weight:600;

font-size:14px;

margin-bottom:25px;

}

.cta-content h2{

font-size:52px;

margin-bottom:20px;

line-height:1.2;

}

.cta-content p{

font-size:18px;

line-height:1.8;

color:#E2E8F0;

margin-bottom:30px;

}

.cta-benefits{

list-style:none;

margin-bottom:40px;

}

.cta-benefits li{

margin-bottom:18px;

font-size:18px;

display:flex;

align-items:center;

gap:15px;

}

.cta-benefits i{

color:#FFD166;

font-size:20px;

}

.cta-buttons{

display:flex;

gap:20px;

flex-wrap:wrap;

}

.btn-light{

background:#fff;

color:#0056D2;

padding:16px 35px;

border-radius:50px;

text-decoration:none;

font-weight:600;

transition:.35s;

}

.btn-light:hover{

background:#E63946;

color:#fff;

}

.cta-card{

background:rgba(255,255,255,.12);

backdrop-filter:blur(18px);

padding:45px;

border-radius:25px;

text-align:center;

border:1px solid rgba(255,255,255,.2);

box-shadow:0 25px 50px rgba(0,0,0,.2);

transition:.35s;

}

.cta-card:hover{

transform:translateY(-10px);

}

.cta-card-icon{

width:90px;

height:90px;

margin:auto;

border-radius:50%;

background:#E63946;

display:flex;

justify-content:center;

align-items:center;

font-size:36px;

margin-bottom:25px;

}

.cta-card h3{

font-size:32px;

margin-bottom:20px;

}

.cta-card p{

line-height:1.8;

margin-bottom:30px;

color:#F1F5F9;

}

.cta-stats{

display:flex;

justify-content:space-around;

margin-top:20px;

}

.cta-stats h2{

font-size:36px;

color:#FFD166;

}

.cta-stats span{

display:block;

margin-top:8px;

font-size:15px;

color:#E2E8F0;

}

@media(max-width:992px){

.cta-wrapper{

grid-template-columns:1fr;

}

.cta-content h2{

font-size:38px;

}

.cta-card{

padding:35px;

}

}

@media(max-width:576px){

.cta-content h2{

font-size:30px;

}

.cta-buttons{

flex-direction:column;

}

.cta-benefits li{

font-size:16px;

}

}

/* ================= CONTACT ================= */

.contact{

background:#F8FAFC;

}

.contact-wrapper{

display:grid;

grid-template-columns:1fr 1.3fr;

gap:50px;

margin-top:60px;

}

.contact-info{

display:flex;

flex-direction:column;

gap:25px;

}

.contact-card{

background:#fff;

padding:30px;

border-radius:20px;

box-shadow:0 12px 35px rgba(0,0,0,.08);

transition:.35s;

}

.contact-card:hover{

transform:translateY(-8px);

}

.contact-card i{

font-size:30px;

color:#E63946;

margin-bottom:15px;

}

.contact-card h3{

margin-bottom:15px;

color:#0056D2;

}

.contact-card p{

line-height:1.8;

color:#555;

}

.social-links{

display:flex;

gap:15px;

margin-top:10px;

}

.social-links a{

width:50px;

height:50px;

border-radius:50%;

background:#0056D2;

display:flex;

justify-content:center;

align-items:center;

color:#fff;

text-decoration:none;

transition:.3s;

}

.social-links a:hover{

background:#E63946;

transform:translateY(-5px);

}

.contact-form-area{

background:#fff;

padding:40px;

border-radius:25px;

box-shadow:0 15px 40px rgba(0,0,0,.08);

}

.form-group{

margin-bottom:20px;

}

.form-group input,

.form-group textarea{

width:100%;

padding:18px;

border:1px solid #ddd;

border-radius:12px;

font-size:16px;

outline:none;

transition:.3s;

}

.form-group input:focus,

.form-group textarea:focus{

border-color:#0056D2;

box-shadow:0 0 10px rgba(0,86,210,.15);

}

.map-container{

margin-top:70px;

border-radius:20px;

overflow:hidden;

box-shadow:0 15px 40px rgba(0,0,0,.08);

}

.map-container iframe{

width:100%;

height:450px;

border:none;

}

@media(max-width:992px){

.contact-wrapper{

grid-template-columns:1fr;

}

.contact-form-area{

padding:30px;

}

}

/* ================= FOOTER ================= */

.footer{

background:#0F172A;

color:#CBD5E1;

padding:90px 0 30px;

}

.footer-grid{

display:grid;

grid-template-columns:repeat(auto-fit,minmax(250px,1fr));

gap:50px;

margin-bottom:60px;

}

.footer-logo{

width:180px;

margin-bottom:20px;

}

.footer-column h3{

color:#fff;

margin-bottom:20px;

font-size:22px;

}

.footer-column p{

line-height:1.8;

margin-bottom:15px;

}

.footer-column ul{

list-style:none;

}

.footer-column li{

margin-bottom:12px;

}

.footer-column a{

color:#CBD5E1;

text-decoration:none;

transition:.3s;

}

.footer-column a:hover{

color:#E63946;

padding-left:5px;

}

.newsletter{

background:#162033;

padding:45px;

border-radius:20px;

text-align:center;

margin-bottom:50px;

}

.newsletter h3{

color:#fff;

margin-bottom:15px;

}

.newsletter p{

margin-bottom:25px;

}

.newsletter form{

display:flex;

justify-content:center;

gap:15px;

flex-wrap:wrap;

}

.newsletter input{

padding:16px 20px;

width:380px;

border:none;

border-radius:50px;

outline:none;

}

.newsletter button{

padding:16px 35px;

border:none;

background:#E63946;

color:#fff;

border-radius:50px;

cursor:pointer;

font-weight:600;

transition:.3s;

}

.newsletter button:hover{

background:#0056D2;

}

.footer-bottom{

border-top:1px solid rgba(255,255,255,.08);

padding-top:30px;

display:flex;

justify-content:space-between;

align-items:center;

flex-wrap:wrap;

gap:20px;

}

.footer-links{

display:flex;

gap:20px;

}

.footer-links a{

color:#CBD5E1;

text-decoration:none;

}

.footer-links a:hover{

color:#E63946;

}

.developer a{

color:#E63946;

text-decoration:none;

font-weight:600;

}

#backToTop{

position:fixed;

bottom:95px;

right:25px;

width:55px;

height:55px;

border:none;

border-radius:50%;

background:#0056D2;

color:#fff;

font-size:20px;

cursor:pointer;

display:none;

box-shadow:0 15px 30px rgba(0,0,0,.2);

z-index:999;

transition:.3s;

}

#backToTop:hover{

background:#E63946;

}

.whatsapp{

position:fixed;

right:25px;

bottom:25px;

width:60px;

height:60px;

background:#25D366;

color:#fff;

display:flex;

justify-content:center;

align-items:center;

border-radius:50%;

font-size:30px;

text-decoration:none;

box-shadow:0 15px 30px rgba(0,0,0,.25);

z-index:999;

transition:.3s;

}

.whatsapp:hover{

transform:scale(1.08);

}

@media(max-width:768px){

.footer-bottom{

flex-direction:column;

text-align:center;

}

.newsletter input{

width:100%;

}

}

/* ================= FAQ ================= */

.faq{

background:#F8FAFC;

}

.faq-container{

max-width:900px;

margin:auto;

}

.faq-item{

background:#fff;

margin-bottom:20px;

border-radius:18px;

overflow:hidden;

box-shadow:0 15px 40px rgba(0,0,0,.08);

transition:.3s;

}

.faq-question{

width:100%;

padding:25px 30px;

background:none;

border:none;

display:flex;

justify-content:space-between;

align-items:center;

font-size:20px;

font-weight:600;

cursor:pointer;

color:#0F172A;

}

.faq-question i{

color:#0056D2;

transition:.3s;

}

.faq-answer{

max-height:0;

overflow:hidden;

transition:max-height .4s ease;

padding:0 30px;

}

.faq-answer p{

padding-bottom:25px;

line-height:1.8;

color:#555;

}

.faq-item.active .faq-answer{

max-height:250px;

}

.faq-item.active .faq-question i{

transform:rotate(45deg);

color:#E63946;

}

.faq-item:hover{

transform:translateY(-5px);

}

@media(max-width:768px){

.faq-question{

font-size:18px;

padding:20px;

}

}

/* ================= PARTNERS ================= */

.partners{

background:#ffffff;

overflow:hidden;

}

.logo-slider{

margin:60px 0;

overflow:hidden;

position:relative;

}

.logo-track{

display:flex;

align-items:center;

width:max-content;

animation:scrollLogos 30s linear infinite;

}

.logo-slider:hover .logo-track{

animation-play-state:paused;

}

.logo-item{

width:180px;

height:110px;

background:#fff;

margin:0 20px;

display:flex;

justify-content:center;

align-items:center;

border-radius:18px;

box-shadow:0 12px 35px rgba(0,0,0,.08);

padding:20px;

transition:.35s;

}

.logo-item:hover{

transform:translateY(-8px);

}

.logo-item img{

max-width:100%;

max-height:60px;

object-fit:contain;

filter:grayscale(100%);

transition:.35s;

}

.logo-item:hover img{

filter:none;

}

@keyframes scrollLogos{

0%{

transform:translateX(0);

}

100%{

transform:translateX(-50%);

}

}

.accreditation-grid{

display:grid;

grid-template-columns:repeat(auto-fit,minmax(280px,1fr));

gap:30px;

margin-top:50px;

}

.accreditation-card{

background:#F8FAFC;

padding:40px;

border-radius:20px;

text-align:center;

box-shadow:0 15px 40px rgba(0,0,0,.06);

transition:.35s;

}

.accreditation-card:hover{

background:#0056D2;

transform:translateY(-10px);

}

.accreditation-card:hover h3,

.accreditation-card:hover p,

.accreditation-card:hover i{

color:#fff;

}

.accreditation-card i{

font-size:45px;

color:#E63946;

margin-bottom:20px;

transition:.35s;

}

.accreditation-card h3{

margin-bottom:15px;

color:#0F172A;

}

.accreditation-card p{

color:#555;

line-height:1.8;

transition:.35s;

}

@media(max-width:768px){

.logo-item{

width:140px;

margin:0 12px;

}

}

/* ================= BLOG ================= */

.blog{

background:#F8FAFC;

}

.blog-grid{

display:grid;

grid-template-columns:repeat(auto-fit,minmax(320px,1fr));

gap:35px;

margin-top:60px;

}

.blog-card{

background:#fff;

border-radius:22px;

overflow:hidden;

box-shadow:0 15px 40px rgba(0,0,0,.08);

transition:.35s;

}

.blog-card:hover{

transform:translateY(-10px);

}

.blog-image{

position:relative;

overflow:hidden;

}

.blog-image img{

width:100%;

height:240px;

object-fit:cover;

transition:.4s;

}

.blog-card:hover img{

transform:scale(1.08);

}

.blog-category{

position:absolute;

top:18px;

left:18px;

background:#E63946;

color:#fff;

padding:8px 16px;

border-radius:30px;

font-size:13px;

font-weight:600;

}

.blog-content{

padding:30px;

}

.blog-meta{

display:flex;

justify-content:space-between;

margin-bottom:20px;

font-size:14px;

color:#777;

}

.blog-meta i{

color:#0056D2;

margin-right:6px;

}

.blog-content h3{

font-size:24px;

margin-bottom:15px;

color:#0F172A;

}

.blog-content p{

line-height:1.8;

color:#555;

margin-bottom:25px;

}

.read-more{

display:inline-flex;

align-items:center;

gap:10px;

font-weight:600;

text-decoration:none;

color:#0056D2;

transition:.3s;

}

.read-more:hover{

color:#E63946;

}

.blog-btn{

text-align:center;

margin-top:60px;

}