/* =========================
   ROOT VARIABLES
========================= */
:root{
--primary:#7B2DFF;
--secondary:#FF7A00;
--accent:#FF3EC9;
--dark:#050510;
--light:#ffffff;
}

/* =========================
   RESET & BASE
========================= */
*{
margin:0;
padding:0;
box-sizing:border-box;
}

/* 
   FONT RECOMMENDATION:
   - Headings (h1–h4): Bebas Neue — bold, cinematic, high-impact
   - Sub-headings / section titles (h2 with weight): Inter 700/800 — clean and modern
   - Body text: Inter 400/500 — highly legible, professional upgrade from Poppins
   Inter is used below; Bebas Neue retained for hero h1 and key display headings
*/

html{
overflow-x:hidden;
}

body{
font-family:'Inter', 'Poppins', sans-serif;
background:#fff;
color:#222;
overflow-x:hidden;
line-height:1.6;
}

img, video, iframe{
max-width:100%;
height:auto;
}

h1,h2,h3,h4,h5,h6{
font-family:'Inter', sans-serif;
}

.container{
width:100%;
max-width:1200px;
margin:0 auto;
padding:0 20px;
}

/* =========================
   HEADER
========================= */
.header{
position:fixed;
top:0;
left:0;
width:100%;
z-index:9999;
background:rgba(0,0,0,1);
backdrop-filter:blur(12px);
-webkit-backdrop-filter:blur(12px);
border-bottom:1px solid rgba(255,255,255,0.1);
padding:15px 0;
}

.header .container{
display:flex;
justify-content:space-between;
align-items:center;
height:90px;
}

.logo img{
height:60px;
}

.nav{
display:flex;
gap:30px;
}

.nav a{
color:white;
text-decoration:none;
font-size:14px;
font-weight:500;
letter-spacing:0.3px;
transition:color .2s;
}

.nav a:hover{
color:#b58cff;
}

/* =========================
   BUTTONS
========================= */
.btn-primary{
padding:14px 30px;
background:linear-gradient(90deg,#FF7A00,#FF3EC9);
color:white;
border-radius:50px;
text-decoration:none;
font-weight:600;
font-size:15px;
display:inline-flex;
align-items:center;
gap:8px;
transition:.3s;
border:none;
cursor:pointer;
}

.btn-primary:hover{
transform:translateY(-2px);
box-shadow:0 8px 25px rgba(255,122,0,.3);
}

.btn-secondary{
padding:14px 30px;
border:1px solid white;
border-radius:50px;
color:white;
text-decoration:none;
font-weight:500;
font-size:15px;
display:inline-flex;
align-items:center;
transition:.3s;
}

.btn-secondary:hover{
background:rgba(255,255,255,.1);
}

/* =========================
   HERO
========================= */
.hero{
margin-top:100px;
width:100%;
background:
linear-gradient(rgba(0,0,0,0.55),rgba(0,0,0,0.55)),
url('../images/header.jpg');
background-size:cover;
background-position:center;
background-repeat:no-repeat;
padding:0 20px;
}

.hero-grid{
display:grid;
grid-template-columns:1fr;
align-items:center;
gap:40px;
}

.hero-left,.hero-right,.stats{display:none;}

.hero-content{
text-align:center;
padding:120px 0;
}

.badge{
display:inline-block;
padding:8px 20px;
border:1px solid rgba(255,255,255,.4);
border-radius:50px;
color:#ddd;
font-size:13px;
letter-spacing:1px;
margin-bottom:20px;
}

.hero h1{
font-family:'Bebas Neue', sans-serif;
font-size:64px;
line-height:1.15;
color:white;
text-align:center;
letter-spacing:1px;
}

.hero p{
color:#ccc;
font-size:18px;
margin:20px 0 30px;
text-align:center;
line-height:1.7;
}

.hero-buttons{
display:flex;
gap:16px;
justify-content:center;
flex-wrap:wrap;
}

/* =========================
   WHY LEARN SECTION
========================= */
.why-learn{
background:#000;
padding:60px 0;
position:relative;
overflow:hidden;
}

.why-learn .section-title{
font-family:'Bebas Neue', sans-serif;
text-align:center;
font-size:28px;
font-weight:400;
color:#fff;
margin-bottom:40px;
text-transform:uppercase;
letter-spacing:2px;
}

.learn-wrapper{
display:flex;
align-items:center;
justify-content:center;
gap:18px;
flex-wrap:wrap;
}

.learn-card{
width:170px;
min-height:100px;
background:#fff;
border-radius:14px;
padding:18px 14px;
text-align:center;
box-shadow:0 4px 12px rgba(0,0,0,.08);
transition:.3s ease;
}

.learn-card:hover{transform:translateY(-5px);}

.learn-card i{
font-size:30px;
color:#000;
margin-bottom:10px;
}

.learn-card h4{
font-size:13px;
line-height:1.4;
font-weight:500;
color:#111;
}

.camera-image{
position:absolute;
right:20px;
bottom:0;
width:220px;
max-width:28vw;
}

.camera-image img{
width:100%;
display:block;
}

/* =========================
   FUTURE FILMMAKING
========================= */
.future-filmmaking{
padding:100px 0;
background:#f8f8fc;
overflow:hidden;
}

.future-grid{
display:grid;
grid-template-columns:1fr 1fr;
align-items:center;
gap:60px;
}

.future-image img{
width:100%;
display:block;
border-radius:20px;
}

.section-tag{
display:inline-flex;
align-items:center;
justify-content:center;
padding:8px 18px;
border-radius:100px;
border:2px solid #b694ff;
color:#6f3cff;
font-size:12px;
font-weight:700;
letter-spacing:.5px;
background:#fff;
margin-bottom:18px;
}

.section-title{
font-size:34px;
line-height:1.4;
font-weight:800;
color:#1a1a2e;
margin-bottom:40px;
}

.future-filmmaking .section-title{
color:#111;
}

.section-title span{
background:linear-gradient(135deg,#1b60f9 0%,#d503f8 100%);
-webkit-background-clip:text;
-webkit-text-fill-color:transparent;
}

.feature-grid{
display:grid;
grid-template-columns:repeat(4,1fr);
gap:18px;
}

.feature-card{
background:#fff;
border-radius:20px;
min-height:145px;
padding:24px 16px;
text-align:center;
box-shadow:0 10px 30px rgba(0,0,0,.06);
transition:.4s ease;
cursor:pointer;
}

.feature-card:nth-child(1){background:#f4f3ff;}
.feature-card:nth-child(2){background:#fff5ee;}
.feature-card:nth-child(3){background:#f4f2ff;}
.feature-card:nth-child(4){background:#f4efff;}
.feature-card:nth-child(5){background:#eefaf0;}
.feature-card:nth-child(6){background:#f8efff;}
.feature-card:nth-child(7){background:#fff1f6;}
.feature-card:nth-child(8){background:#f2f4ff;}

.feature-card:hover{
transform:translateY(-10px);
box-shadow:0 20px 40px rgba(0,0,0,.12);
}

.feature-card i{
font-size:34px;
margin-bottom:18px;
background:linear-gradient(135deg,#1b60f9,#d503f8);
-webkit-background-clip:text;
-webkit-text-fill-color:transparent;
}

.feature-card h4{
font-size:13px;
line-height:1.4;
font-weight:600;
color:#1d1d1d;
}

/* =========================
   SCROLL-TRIGGERED REVEAL ANIMATIONS
========================= */
.reveal-up, .reveal-left, .reveal-right, .reveal-scale {
    opacity: 0;
    transition: opacity .8s ease, transform .8s ease;
    will-change: opacity, transform;
}

.reveal-up{ transform: translateY(50px); }
.reveal-left{ transform: translateX(-70px); }
.reveal-right{ transform: translateX(70px); }
.reveal-scale{ transform: scale(.9); }

.reveal-up.in-view,
.reveal-left.in-view,
.reveal-right.in-view,
.reveal-scale.in-view{
    opacity: 1;
    transform: none;
}

.delay-1{transition-delay:.15s;}
.delay-2{transition-delay:.3s;}
.delay-3{transition-delay:.45s;}
.delay-4{transition-delay:.6s;}
.delay-5{transition-delay:.75s;}

/* =========================
   AMBIENT / CONTINUOUS MOTION
========================= */
@keyframes floatY{
    0%,100%{ transform: translateY(0); }
    50%{ transform: translateY(-10px); }
}

.hero-left img{ animation: floatY 5s ease-in-out infinite; }
.hero-right img{ animation: floatY 5s ease-in-out infinite; animation-delay: .8s; }

.card-icon-circle{ animation: floatY 3.2s ease-in-out infinite; }

@keyframes pulseOrange{
    0%,100%{ box-shadow: 0 0 0 rgba(255,122,26,0); }
    50%{ box-shadow: 0 0 20px rgba(255,122,26,.55); }
}
@keyframes pulsePurple{
    0%,100%{ box-shadow: 0 0 0 rgba(168,85,247,0); }
    50%{ box-shadow: 0 0 20px rgba(168,85,247,.55); }
}
.theme-orange .plan-badge{ animation: pulseOrange 2.6s ease-in-out infinite; }
.theme-purple .plan-badge{ animation: pulsePurple 2.6s ease-in-out infinite; }

/* Button shine sweep */
.card-cta, .btn-primary, .enroll-btn{
    position: relative;
    overflow: hidden;
}
.card-cta::after, .btn-primary::after, .enroll-btn::after{
    content:"";
    position:absolute;
    top:0; left:-75%;
    width:50%; height:100%;
    background: linear-gradient(120deg, transparent, rgba(255,255,255,.35), transparent);
    transform: skewX(-20deg);
    transition: left .7s ease;
    pointer-events: none;
}
.card-cta:hover::after, .btn-primary:hover::after, .enroll-btn:hover::after{
    left: 125%;
}

.btn-primary{
    background-size: 200% 200%;
    animation: gradientShift 6s ease infinite;
}
@keyframes gradientShift{
    0%{ background-position: 0% 50%; }
    50%{ background-position: 100% 50%; }
    100%{ background-position: 0% 50%; }
}

/* Lively hover lift for cards not already animated on hover */
.plan-card{ transition: transform .35s ease, box-shadow .35s ease; }
.plan-card:hover{ transform: translateY(-8px); }
.faq-item{ transition: transform .3s ease, border-color .3s ease; }
.faq-item:hover{ transform: translateX(4px); }

/* Subtle ambient glow pulse behind the CTA section */
.cta{ position: relative; overflow: hidden; }
.cta::before{
    content:"";
    position:absolute;
    inset:0;
    background: radial-gradient(circle at 50% 40%, rgba(255,122,26,.18), transparent 60%);
    animation: ctaGlow 5s ease-in-out infinite;
    pointer-events: none;
}
@keyframes ctaGlow{
    0%,100%{ opacity: .5; }
    50%{ opacity: 1; }
}

@media (prefers-reduced-motion: reduce){
    .reveal-up, .reveal-left, .reveal-right, .reveal-scale,
    .hero-left img, .hero-right img, .card-icon-circle,
    .theme-orange .plan-badge, .theme-purple .plan-badge,
    .btn-primary, .cta::before{
        animation: none !important;
        transition: none !important;
        opacity: 1 !important;
        transform: none !important;
    }
}

/* =========================
   CURRICULUM SECTION
========================= */

.section-header{
text-align:center;
max-width:850px;
margin:0 auto 60px;
} 

.section-header h2 {
    font-size: 42px;
    font-weight: 800;
    color: #fff;
    line-height: 1.2;
    margin-bottom: 16px;
}

.section-header h2 span{
background:linear-gradient(135deg,#1b60f9,#d503f8);
-webkit-background-clip:text;
-webkit-text-fill-color:transparent;
}

/* .section-header p{
font-size:16px;
color:#666;
line-height:1.7;
} */

.section-header p {
    font-size: 18px;
    color: #ffffff;
    line-height: 0;
    font-weight: 800;
}

.course-accordion{
background:#fff;
border-radius:20px;
margin-bottom:20px;
overflow:hidden;
box-shadow:0 10px 30px rgba(0,0,0,.08);
}

.course-title{
width:100%;
border:none;
cursor:pointer;
text-align:left;
padding:28px 35px;
font-size:20px;
font-weight:700;
background:#fff;
position:relative;
font-family:'Inter',sans-serif;
color:#111;
}

.course-title::after{
content:'+';
position:absolute;
right:30px;
top:50%;
transform:translateY(-50%);
font-size:34px;
color:#7B2DFF;
}

.course-accordion.active .course-title::after{content:'−';}

.course-content{
max-height:0;
overflow:hidden;
transition:.5s ease;
}

.course-accordion.active .course-content{
max-height:5000px;
padding:30px;
}

.curriculum-grid{
display:grid;
grid-template-columns:repeat(4,1fr);
gap:20px;
}

.curriculum-card{
background:#f8f8fc;
padding:24px;
border-radius:20px;
box-shadow:0 6px 20px rgba(0,0,0,.06);
transition:.4s ease;
position:relative;
}

.curriculum-card:hover{transform:translateY(-6px);}

.module-number{
width:52px;
height:52px;
border-radius:14px;
display:flex;
align-items:center;
justify-content:center;
font-size:18px;
font-weight:700;
color:#fff;
margin-bottom:16px;
background:linear-gradient(135deg,#1b60f9,#d503f8);
}

.curriculum-card h3{
font-size:15px;
margin-bottom:10px;
color:#111;
font-weight:600;
line-height:1.4;
}

.curriculum-card p{
font-size:13px;
color:#666;
line-height:1.7;
}

/* =========================
   OFFER SECTION
========================= */
.offer-section{
padding:100px 0;
background:#efeff4;
}

.offer-wrapper{
display:grid;
grid-template-columns:1fr 420px;
gap:80px;
align-items:center;
}

.offer-tag{
display:inline-block;
padding:10px 20px;
border-radius:100px;
background:#f0e7ff;
color:#7B2DFF;
font-weight:700;
font-size:12px;
letter-spacing:1px;
margin-bottom:20px;
}

.offer-content h2{
font-size:40px;
line-height:1.2;
margin-bottom:20px;
color:#111;
font-weight:800;
}

.offer-content h2 span{
background:linear-gradient(135deg,#1b60f9,#d503f8);
-webkit-background-clip:text;
-webkit-text-fill-color:transparent;
}

.offer-content p{
font-size:17px;
color:#555;
line-height:1.8;
margin-bottom:30px;
}

.pricing-box{margin-bottom:30px;}

.old-price{
text-decoration:line-through;
color:#888;
font-size:22px;
}

.new-price{
font-size:70px;
font-weight:800;
line-height:1;
background:linear-gradient(135deg,#1b60f9,#d503f8);
-webkit-background-clip:text;
-webkit-text-fill-color:transparent;
}

.price-note{
margin-top:10px;
color:#555;
font-size:14px;
}

.enroll-btn{
display:inline-block;
padding:18px 38px;
border-radius:100px;
background:linear-gradient(135deg,#1b60f9,#d503f8);
color:#fff;
text-decoration:none;
font-weight:700;
transition:.3s;
}

.enroll-btn:hover{transform:translateY(-3px);}

.offer-image img{
width:100%;
display:block;
border-radius:20px;
filter:drop-shadow(0 20px 40px rgba(0,0,0,.15));
}

/* =========================
   PRICING SECTION
========================= */
/* .pricing-section{
padding:120px 0;
background:#f8f8fc;
} */

.pricing-section{
width:100%;
background:
linear-gradient(rgba(0,0,0,0.55),rgba(0,0,0,0.55)),
url('../images/training.jpg');
background-size:cover;
background-position:center;
background-repeat:no-repeat;
padding:120px 0;

}



.pricing-header{
text-align:center;
max-width:850px;
margin:0 auto 70px;
}

.pricing-header h2{
font-size:52px;
line-height:1.1;
color:#fff;
margin-bottom:20px;
font-weight:800;
}

.pricing-header h2 span{
background:linear-gradient(135deg,#1b60f9,#d503f8);
-webkit-background-clip:text;
-webkit-text-fill-color:transparent;
}

.pricing-header p{
color:#fff;
font-size:17px;
line-height:1.8;
}

.pricing-grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:35px;
align-items:center;
}

.program-card{
background:#fff;
border-radius:30px;
padding:40px; 
position:relative;
box-shadow:0 20px 50px rgba(0,0,0,.08);
transition:.4s ease;
}

@media (max-width: 768px) {
    .program-card {
        padding: 7px;
        border-radius: 10px;
    }
}

.program-card:hover{transform:translateY(-8px);}

.featured{
background:#070014;
color:#fff;
transform:scale(1.05);
border:2px solid #8f46ff;
box-shadow:0 20px 70px rgba(123,45,255,.25);
}

.popular-badge{
position:absolute;
top:-15px;
right:30px;
background:linear-gradient(135deg,#ff7a00,#ff3dbb);
color:#fff;
padding:10px 18px;
border-radius:50px;
font-size:12px;
font-weight:700;
}

.program-label{
display:inline-block;
background:#f2e8ff;
color:#7b2dff;
padding:8px 14px;
border-radius:50px;
font-size:12px;
font-weight:700;
margin-bottom:20px;
}

.program-card span {
    background: linear-gradient(135deg, #1b60f9 0%, #d503f8 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.program-card h3{
font-size:26px;
margin-bottom:20px;
line-height:1.3;
font-weight:700;
}

.price{
font-size:56px;
font-weight:800;
margin-bottom:5px;
}

.featured .price{
background:linear-gradient(135deg,#1b60f9,#d503f8);
-webkit-background-clip:text;
-webkit-text-fill-color:transparent;
}

.featured .price-note{color:#c6c6c6;}

.program-card ul{
list-style:none;
padding:0;
margin:0 0 30px;
}

.program-card ul li{
margin-bottom:14px;
padding-left:28px;
position:relative;
line-height:1.7;
font-size:15px;
}

.program-card ul li::before{
content:"✓";
position:absolute;
left:0;
color:#7b2dff;
font-weight:700;
}

.featured ul li::before{color:#ff68c5;}

.bonus-box{
background:#fff5eb;
border-radius:20px;
padding:18px;
margin-bottom:25px;
font-weight:700;
font-size:14px;
}

.bonus-box span{
display:block;
margin-top:8px;
font-weight:500;
}

.dark{background:rgba(255,255,255,.08);}

.program-card .btn-primary,
.program-card .btn-gradient{
display:flex!important;
width:100%!important;
text-align:center;
text-decoration:none;
padding:18px;
border-radius:100px;
font-size:16px;
font-weight:700;
justify-content:center;
transition:.3s;
}

.program-card .btn-primary{
background:linear-gradient(135deg,#ff7a00,#ff3dbb);
color:#fff;
}

.program-card .btn-gradient{
background:linear-gradient(135deg,#1b60f9,#d503f8);
color:#fff;
}

.program-card .btn-primary:hover,
.program-card .btn-gradient:hover{transform:translateY(-3px);}

.registration-offer{
margin-top:80px;
background:#fff;
border-radius:30px;
padding:45px;
text-align:center;
box-shadow:0 15px 40px rgba(0,0,0,.08);
}

.registration-offer h3{
font-size:30px;
margin-bottom:25px;
font-weight:700;
}

.offer-list{
display:flex;
justify-content:center;
gap:40px;
flex-wrap:wrap;
margin-bottom:20px;
}

.offer-list span{font-weight:600;font-size:15px;}

.offer-value{
font-size:20px;
font-weight:800;
background:linear-gradient(135deg,#1b60f9,#d503f8);
-webkit-background-clip:text;
-webkit-text-fill-color:transparent;
}

/* =========================
   TRAINERS SECTION
========================= */
.trainers-section{
padding:100px 0;
background:#fff;
}



.trainers-header{
text-align:center;
max-width:700px;
margin:0 auto 60px;
}

.trainers-header h2{
font-size:44px;
font-weight:800;
color:#111;
margin-bottom:14px;
line-height:1.2;
}

.trainers-header h2 span{
background:linear-gradient(135deg,#1b60f9,#d503f8);
-webkit-background-clip:text;
-webkit-text-fill-color:transparent;
}

.trainers-header p{
font-size:16px;
color:#666;
line-height:1.7;
}

.trainers-grid{
display:grid;
grid-template-columns:repeat(4,1fr);
gap:28px;
}

.trainer-card{
background:#f8f8fc;
border-radius:24px;
overflow:hidden;
transition:.4s ease;
border:1px solid rgba(0,0,0,.06);
}

.trainer-card:hover{
transform:translateY(-8px);
box-shadow:0 20px 50px rgba(123,45,255,.1);
border-color:#c4a0ff;
}

.trainer-avatar{
background:linear-gradient(135deg,#1b60f9,#d503f8);
height:130px;
display:flex;
align-items:center;
justify-content:center;
}


.trainers-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(350px,1fr));
    gap:40px;
}

.modern-card{
    background:#ffffff;
    border-radius:40px;
    overflow:hidden;
    position:relative;
    padding-bottom:30px;
    box-shadow:0 15px 40px rgba(0,0,0,0.08);
    transition:all .4s ease;
}

.modern-card:hover{
    transform:translateY(-8px);
    box-shadow:0 20px 60px rgba(0,0,0,0.15);
}

.trainer-gradient{
    height:220px;
    background:linear-gradient(
        135deg,
        #2458ff 0%,
        #5a42f5 50%,
        #c128ff 100%
    );
}

.trainer-photo{
    margin-top:-170px;
    text-align:center;
    position:relative;
    z-index:2;
}

.trainer-photo img{
    width:400px;
    height:auto;
    object-fit:cover;
    background:#fff;
}

.modern-card .trainer-info{
    padding:5px 20px 10px;
}

.modern-card .trainer-info h4{
   font-size: 18px;
    font-weight: 600;
    color: #111;
    margin-bottom: 5px;
}


.modern-card .trainer-role{
    display:block;
    color:#6d3df2;
    font-size:15px;
    font-weight:700;
    letter-spacing:1px;
    margin-bottom:0px;
}

.modern-card .trainer-info p{
    color:#555;
    font-size:14px;
    line-height:1.8;
}


/* =========================
   TESTIMONIALS SECTION
========================= */
.testimonials-section{
padding:100px 0;
background:linear-gradient(135deg,#0d0020 0%,#0a0518 50%,#010113 100%);
}

.testimonials-header{
text-align:center;
max-width:650px;
margin:0 auto 60px;
}

.testimonials-header h2{
font-size:44px;
font-weight:800;
color:#fff;
margin-bottom:14px;
}

.testimonials-header h2 span{
background:linear-gradient(135deg,#1b60f9,#d503f8);
-webkit-background-clip:text;
-webkit-text-fill-color:transparent;
}

.testimonials-header p{
color:#aaa;
font-size:16px;
line-height:1.7;
}

.testimonials-header .section-tag{
border-color:rgba(182,148,255,.4);
color:#b694ff;
background:rgba(255,255,255,.05);
}

.testimonials-grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:28px;
}

.testimonial-card{
background:rgba(255,255,255,.05);
border:1px solid rgba(255,255,255,.08);
border-radius:24px;
padding:32px 28px;
transition:.4s ease;
}

.testimonial-card:hover{
transform:translateY(-6px);
background:rgba(255,255,255,.08);
border-color:rgba(123,45,255,.4);
}

.testimonial-stars{
display:flex;
gap:4px;
margin-bottom:18px;
}

.testimonial-stars i{
color:#FF7A00;
font-size:16px;
}

.testimonial-card p{
color:#ccc;
font-size:15px;
line-height:1.8;
margin-bottom:24px;
font-style:italic;
}

.testimonial-author{
display:flex;
align-items:center;
gap:14px;
}

.author-avatar{
width:46px;
height:46px;
border-radius:50%;
background:linear-gradient(135deg,#1b60f9,#d503f8);
display:flex;
align-items:center;
justify-content:center;
flex-shrink:0;
}

.author-avatar i{
color:rgba(255,255,255,.5);
font-size:20px;
}

.testimonial-author strong{
display:block;
color:#fff;
font-size:15px;
font-weight:700;
}

.testimonial-author span{
display:block;
color:#888;
font-size:13px;
margin-top:2px;
}

/* =========================
   FAQ SECTION
========================= */
.faq-section{
padding:100px 0;
background:#000;
}

.faq-section .container{
max-width:900px;
margin:auto;
}

.faq-title{
font-family:'Inter',sans-serif;
font-size:46px;
font-weight:800;
color:#fff;
text-align:center;
margin-bottom:50px;
line-height:1.2;
}

.faq-title span{
background:linear-gradient(135deg,#1b60f9,#d503f8);
-webkit-background-clip:text;
-webkit-text-fill-color:transparent;
}

.faq-item{
background:#fff;
border-radius:20px;
margin-bottom:16px;
overflow:hidden;
box-shadow:0 6px 20px rgba(0,0,0,.06);
}

.faq-question{
width:100%;
border:none;
background:#fff;
padding:24px 30px;
text-align:left;
font-size:18px;
font-weight:600;
color:#111;
cursor:pointer;
position:relative;
font-family:'Inter',sans-serif;
}

.faq-question::after{
content:"+";
position:absolute;
right:30px;
top:50%;
transform:translateY(-50%);
font-size:26px;
font-weight:700;
color:#7B2DFF;
}

.faq-item.active .faq-question::after{content:"−";}

.faq-answer{
max-height:0;
overflow:hidden;
transition:.4s ease;
padding:0 30px;
color:#555;
line-height:1.8;
font-size:15px;
}

.faq-item.active .faq-answer{
max-height:300px;
padding:0 30px 25px;
}

/* =========================
   CTA SECTION
========================= */
.cta{
width:100%;
background:
linear-gradient(rgba(0,0,0,0.55),rgba(0,0,0,0.55)),
url('../images/training.jpg');
background-size:cover;
background-position:center;
background-repeat:no-repeat;
padding:100px 0;
text-align:center;
}






.cta h2{
font-size:48px;
font-weight:800;
color:#fff;
margin-bottom:40px;
line-height:1.2;
}

/* =========================
   CONTACT / FORM SECTION  (FIXED)
========================= */
.contact{
padding:100px 0;
background:#f8f8fc;
}

.contact-wrapper{
display:grid;
grid-template-columns:1fr 1.6fr;
gap:60px;
align-items:start;
}

.contact-info{
padding-top:10px;
}

.contact-info h2{
font-size:42px;
font-weight:800;
color:#111;
margin:14px 0 16px;
line-height:1.2;
}

.contact-info h2 span{
background:linear-gradient(135deg,#1b60f9,#d503f8);
-webkit-background-clip:text;
-webkit-text-fill-color:transparent;
}

.contact-info>p{
font-size:16px;
color:#666;
line-height:1.7;
margin-bottom:36px;
}

.contact-details{
display:flex;
flex-direction:column;
gap:16px;
}

.contact-detail-item{
display:flex;
align-items:center;
gap:14px;
color:#444;
font-size:15px;
}

.contact-detail-item i{
width:40px;
height:40px;
background:linear-gradient(135deg,#1b60f9,#d503f8);
border-radius:10px;
display:flex;
align-items:center;
justify-content:center;
color:#fff;
font-size:16px;
flex-shrink:0;
}

/* Form box */
.contact-form-box{
background:#fff;
border-radius:28px;
padding:44px 40px;
box-shadow:0 20px 60px rgba(0,0,0,.08);
}

.contact-form{
display:flex;
flex-direction:column;
gap:20px;
}

.form-row{
display:grid;
grid-template-columns:1fr 1fr;
gap:20px;
}

.form-group{
display:flex;
flex-direction:column;
gap:8px;
}

.form-group.full-width{
grid-column:1/-1;
}

.form-group label{
font-size:13px;
font-weight:600;
color:#444;
letter-spacing:.3px;
}

.form-group input,
.form-group select,
.form-group textarea{
width:100%;
height:52px;
padding:0 18px;
border-radius:12px;
border:1.5px solid #e5e5e5;
font-size:15px;
font-family:'Inter',sans-serif;
color:#222;
background:#fafafa;
transition:.2s;
outline:none;
}

.form-group textarea{
height:120px;
padding:14px 18px;
resize:vertical;
}

.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus{
border-color:#7b2dff;
background:#fff;
box-shadow:0 0 0 3px rgba(123,45,255,.08);
}

.submit-btn{
width:100%;
padding:18px;
border-radius:100px;
background:linear-gradient(135deg,#1b60f9,#d503f8);
color:#fff;
border:none;
font-size:17px;
font-weight:700;
font-family:'Inter',sans-serif;
cursor:pointer;
display:flex;
align-items:center;
justify-content:center;
gap:10px;
transition:.3s;
}

.submit-btn:hover{
transform:translateY(-3px);
box-shadow:0 12px 30px rgba(27,96,249,.3);
}



 ========================
     FOOTER CSS
======================= 
.footer {
  background: #000;
  padding:36px 20px 28px;
  text-align: center;
}

.footer-links-bar {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 6px 4px;
  margin-bottom: 24px;
}

.footer-links-bar a {
  color: #cccccc;
  text-decoration: none;
  font-size: 14px;
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  transition: color 0.2s;
  padding: 2px 4px;
}

.footer-links-bar a:hover {
  color: #c502d3;
}

.footer-links-bar .divider {
  color: #555555;
  font-size: 14px;
  user-select: none;
}

.footer-social {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  margin-bottom: 24px;
}

.footer-social .social-btn {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: #2e2e2e;
  border: 1px solid #3a3a3a;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #ffffff;
  font-size: 17px;
  text-decoration: none;
  transition: background 0.2s, border-color 0.2s, transform 0.2s;
}

.footer-social .social-btn:hover {
  background: linear-gradient(135deg,#1b60f9 0%,#d503f8 100%);
  border-color: #555;
  transform: translateY(-2px);
}

.footer-copy {
  color: #888888;
  font-size: 13px;
  font-family: 'Inter', sans-serif;
  text-align: center;
}

/* =========================
   RESPONSIVE
========================= */
@media(max-width:1100px){
.trainers-grid{grid-template-columns:repeat(3,1fr);}
}

@media(max-width:991px){

.future-grid{grid-template-columns:1fr;gap:40px;}
.feature-grid{grid-template-columns:repeat(2,1fr);}
.pricing-grid{grid-template-columns:1fr;}
.featured{transform:none;}
.offer-wrapper{grid-template-columns:1fr;text-align:center;}
.offer-image{max-width:320px;margin:auto;}
.trainers-grid{grid-template-columns:repeat(2,1fr);}
.testimonials-grid{grid-template-columns:repeat(2,1fr);}
.contact-wrapper{grid-template-columns:1fr;}
.contact-info{padding-top:0;}
.curriculum-grid{grid-template-columns:repeat(2,1fr);}
.hero h1{font-size:52px;}
.pricing-header h2{font-size:40px;}
.camera-image{position:relative;right:auto;margin:30px auto 0;width:180px;}
.section-title{font-size:28px;}

}

@media(max-width:768px){
.trainers-grid{grid-template-columns:repeat(2,1fr);}
.testimonials-grid{grid-template-columns:1fr;}
.form-row{grid-template-columns:1fr;}
.contact-form-box{padding:30px 24px;}
.cta h2{font-size:36px;}
}

@media(max-width:576px){
.learn-card{width:calc(50% - 10px);}
.curriculum-grid{grid-template-columns:1fr;}
.feature-grid{grid-template-columns:1fr 1fr;gap:12px;}
.trainers-grid{grid-template-columns:1fr;}
.testimonials-grid{grid-template-columns:1fr;}
.hero h1{font-size:42px;}
.faq-title{font-size:34px;}
.trainers-header h2,.testimonials-header h2{font-size:34px;}
.contact-info h2{font-size:32px;}
}






/* ===== Curriculum Section Background ===== */
.curriculum-section {
    position: relative;
    background: url('../images/bcg.jpg') no-repeat center top / cover;
    padding: 100px 20px 110px;
    overflow: hidden;
}

/* Reuses the site-wide .section-header / h2 / h2 span rules defined above
   for the heading — no section-specific override needed here. */

/* ===== Program Cards =====
   Namespaced as .plan-card (not .program-card) to avoid colliding with the
   unrelated .program-card used in the pricing section further down the page. */
.program-cards-wrapper {
    position: relative;
    z-index: 2;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: flex-start;
    gap: 36px;
    margin-top: 64px;
}

.plan-card {
    width: 380px;
    max-width: 100%;
    background: linear-gradient(180deg, #17141c 0%, #0b0a0e 100%);
    border-radius: 22px;
    padding: 34px 30px 30px;
    position: relative;
    font-family: 'Inter', sans-serif;
}

.plan-card.theme-orange { border: 1px solid rgba(255,122,26,0.35); box-shadow: 0 0 60px -20px rgba(255,122,26,0.25); }
.plan-card.theme-purple { border: 1px solid rgba(168,85,247,0.35); box-shadow: 0 0 60px -20px rgba(168,85,247,0.28); }

.plan-card .card-top {
    display: flex;
    align-items: center;
    gap: 18px;
    margin-bottom: 22px;
}

.card-icon-circle {
    width: 62px;
    height: 62px;
    min-width: 62px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    color: #fff;
}

.theme-orange .card-icon-circle { background: radial-gradient(circle at 35% 30%, #ff9a44, #e0530a); box-shadow: 0 0 0 6px rgba(255,122,26,0.12), 0 0 25px rgba(255,122,26,0.5); }
.theme-purple .card-icon-circle { background: radial-gradient(circle at 35% 30%, #c084fc, #7c1fd6); box-shadow: 0 0 0 6px rgba(168,85,247,0.12), 0 0 25px rgba(168,85,247,0.5); }

.card-top-text .eyebrow {
    display: block;
    font-family: 'Inter', sans-serif;
    font-weight: 700;
    letter-spacing: 1px;
    font-size: 13px;
    color: #fff;
    margin-bottom: 2px;
}

.card-top-text .plan-name {
    font-family: 'Bebas Neue', sans-serif;
    font-size: 30px;
    letter-spacing: 1px;
    line-height: 1;
}

.theme-orange .plan-name { color: #ff7a1a; }
.theme-purple .plan-name { color: #a855f7; }

.plan-badge {
    display: inline-block;
    padding: 8px 20px;
    border-radius: 30px;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.5px;
    color: #fff;
    margin-bottom: 22px;
}

.theme-orange .plan-badge { background: linear-gradient(90deg,#ff9a44,#e0530a); }
.theme-purple .plan-badge { background: linear-gradient(90deg,#c084fc,#7c1fd6); }

.card-divider {
    height: 1px;
    background: rgba(255,255,255,0.12);
    margin-bottom: 22px;
}

.card-price-row {
    display: flex;
    align-items: center;
    gap: 22px;
    margin-bottom: 26px;
}

.card-price {
    text-align: center;
}

.card-price .amount {
    font-family: 'Bebas Neue', sans-serif;
    font-size: 30px;
    color: #fff;
    display: flex;
    align-items: baseline;
    gap: 2px;
}

.card-price .amount .rupee { font-size: 20px; opacity: 0.85; }
.card-price .only-label { font-size: 11px; color: #9a95a3; letter-spacing: 1px; }

.price-vdivider {
    width: 1px;
    align-self: stretch;
    background: rgba(255,255,255,0.15);
}

.card-duration {
    flex: 1;
}

.card-duration .duration-head {
    display: flex;
    align-items: center;
    gap: 8px;
    font-weight: 700;
    color: #fff;
    font-size: 15px;
    margin-bottom: 6px;
}

.theme-orange .duration-head i { color: #ff7a1a; }
.theme-purple .duration-head i { color: #a855f7; }

.card-duration .duration-sub {
    font-size: 13px;
    color: #b6b1bd;
    line-height: 1.5;
}

.plan-card .bonus-box {
    color: #222;
}

.plan-card .bonus-box span {
    color: #6d28d9;
}

.bonus-row {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    margin-bottom: 18px;
}

.bonus-row .bonus-box {
    width: 100%;
    margin-bottom: 0;
}

.bonus-book-img {
    height: auto;
    max-height: 110px;
    width: auto;
    max-width: 160px;
    border-radius: 6px;
    box-shadow: 0 10px 25px rgba(0,0,0,0.4);
}

@media (max-width: 480px) {
    .bonus-book-img {
        max-width: 130px;
    }
}

.admission-box {
    border: 1px solid rgba(255,255,255,0.18);
    border-radius: 14px;
    padding: 20px 16px;
    text-align: center;
    margin-bottom: 18px;
}

.card-price-row .admission-box {
    flex: 1.4;
    margin-bottom: 0;
}

.admission-box i {
    font-size: 22px;
    color: #fff;
    margin-bottom: 8px;
}

.admission-box p {
    font-size: 13px;
    color: #cfc9d6;
    margin: 0;
    line-height: 1.5;
}

.admission-box strong { display: block; color: #fff; font-size: 14px; letter-spacing: 0.5px; margin-top: 2px; }

.card-cta {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: 100%;
    padding: 15px 20px;
    border-radius: 12px;
    border: none;
    font-family: 'Inter', sans-serif;
    font-weight: 700;
    font-size: 14px;
    letter-spacing: 0.5px;
    color: #fff;
    text-decoration: none;
    margin-bottom: 14px;
    transition: transform 0.2s ease, opacity 0.2s ease;
}

.card-cta:hover { transform: translateY(-2px); opacity: 0.92; }

.theme-orange .card-cta { background: linear-gradient(90deg,#ff9a44,#e0530a); }
.theme-purple .card-cta { background: linear-gradient(90deg,#c084fc,#7c1fd6); }

.card-cta-secondary {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: 100%;
    padding: 14px 20px;
    border-radius: 12px;
    border: 1px solid rgba(255,255,255,0.25);
    background: transparent;
    font-family: 'Inter', sans-serif;
    font-weight: 600;
    font-size: 14px;
    color: #fff;
    text-decoration: none;
    transition: background 0.2s ease;
}

.card-cta-secondary:hover { background: rgba(255,255,255,0.07); }

@media (max-width: 480px) {
    .section-header h2 { font-size: 32px; }
    .plan-card { padding: 28px 22px 24px; }
    .card-price-row { flex-wrap: wrap; }
    .card-price-row .admission-box { flex: 1 1 100%; }
}
/* ============================================================
   STUDENT SHOWREEL  +  VIMEO LIGHTBOX  +  CURRICULUM MODAL
   (added block — self-contained, matches site palette)
============================================================ */

.showreel{
    background:
        radial-gradient(1000px 500px at 15% 0%, rgba(123,45,255,.18), transparent 60%),
        radial-gradient(900px 500px at 90% 100%, rgba(255,62,201,.14), transparent 60%),
        #0a0a10;
    padding:90px 0;
}
.showreel .section-header h2{ color:#fff; }
.showreel .section-header p{ color:#b9b9c6; font-size:17px; margin-top:12px; }
.showreel-sub{
    display:block; text-align:center; letter-spacing:3px; font-size:13px;
    font-weight:700; color:#c084fc; text-transform:uppercase; margin-bottom:14px;
}

.showreel-grid{
    display:grid;
    grid-template-columns:repeat(4, 1fr);
    gap:22px;
    margin-top:10px;
}
.video-card{
    background:#14141d;
    border:1px solid rgba(255,255,255,.07);
    border-radius:16px;
    overflow:hidden;
    cursor:pointer;
    transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.video-card:hover{
    transform:translateY(-6px);
    border-color:rgba(192,132,252,.5);
    box-shadow:0 16px 40px rgba(0,0,0,.45);
}
.video-thumb{
    position:relative;
    aspect-ratio:16/9;
    overflow:hidden;
}
.video-thumb img{
    width:100%; height:100%; object-fit:cover; display:block;
    transition:transform .35s ease, filter .35s ease;
    filter:brightness(.82);
}
.video-card:hover .video-thumb img{ transform:scale(1.06); filter:brightness(1); }
.video-play{
    position:absolute; inset:0; display:flex; align-items:center; justify-content:center;
}
.video-play span{
    width:64px; height:64px; border-radius:50%;
    background:linear-gradient(90deg,#FF7A00,#FF3EC9);
    display:flex; align-items:center; justify-content:center;
    color:#fff; font-size:22px; padding-left:4px;
    box-shadow:0 8px 24px rgba(0,0,0,.4);
    transition:transform .25s ease;
}
.video-card:hover .video-play span{ transform:scale(1.12); }
.video-meta{ padding:16px 18px 18px; }
.video-meta h4{
    color:#fff; font-size:16px; font-weight:600; margin:0 0 4px;
    font-family:'Inter',sans-serif;
}
.video-meta p{ color:#8a8a99; font-size:13px; margin:0; }

.showreel-actions{ text-align:center; margin-top:44px; }
.showreel-actions .btn-primary{ display:inline-block; }

/* Vimeo lightbox */
.vlightbox{
    position:fixed; inset:0; z-index:2000;
    background:rgba(0,0,0,.88);
    display:none; align-items:center; justify-content:center;
    padding:24px;
}
.vlightbox.open{ display:flex; }
.vlightbox-inner{
    position:relative; width:100%; max-width:960px;
    aspect-ratio:16/9;
    background:#000; border-radius:12px; overflow:hidden;
    box-shadow:0 20px 60px rgba(0,0,0,.6);
}
.vlightbox-inner iframe{ width:100%; height:100%; border:0; display:block; }
.vlightbox-close{
    position:absolute; top:-14px; right:-14px;
    width:44px; height:44px; border-radius:50%;
    background:#fff; color:#111; border:0; cursor:pointer;
    font-size:20px; line-height:44px; text-align:center;
    box-shadow:0 6px 18px rgba(0,0,0,.4);
}
.vlightbox-close:hover{ background:#FF3EC9; color:#fff; }

/* Curriculum "register to receive" modal */
.curr-modal{
    position:fixed; inset:0; z-index:2000;
    background:rgba(0,0,0,.72);
    display:none; align-items:center; justify-content:center; padding:24px;
}
.curr-modal.open{ display:flex; }
.curr-modal-box{
    background:#fff; border-radius:18px; max-width:440px; width:100%;
    padding:34px 30px; text-align:center; position:relative;
    box-shadow:0 24px 60px rgba(0,0,0,.35);
}
.curr-modal-icon{
    width:64px; height:64px; border-radius:50%;
    background:linear-gradient(90deg,#FF7A00,#FF3EC9);
    color:#fff; font-size:26px;
    display:flex; align-items:center; justify-content:center;
    margin:0 auto 18px;
}
.curr-modal-box h3{
    font-family:'Bebas Neue',sans-serif; letter-spacing:.5px;
    font-size:28px; color:#111; margin:0 0 10px;
}
.curr-modal-box p{ color:#555; font-size:15px; line-height:1.6; margin:0 0 22px; }
.curr-modal-box .btn-primary{ display:inline-block; }
.curr-modal-close{
    position:absolute; top:14px; right:16px;
    background:none; border:0; font-size:22px; color:#999; cursor:pointer;
}
.curr-modal-close:hover{ color:#111; }

/* Responsive */
@media (max-width:1000px){
    .showreel-grid{ grid-template-columns:repeat(2, 1fr); }
}
@media (max-width:560px){
    .showreel{ padding:64px 0; }
    .showreel-grid{ grid-template-columns:1fr; gap:18px; }
    .video-play span{ width:56px; height:56px; font-size:20px; }
    .vlightbox-close{ top:-6px; right:-6px; width:40px; height:40px; line-height:40px; }
    .curr-modal-box{ padding:28px 22px; }
}

/* =========================
   NAV DROPDOWN (Courses)
========================= */
.nav-item{ position:relative; padding-bottom:16px; margin-bottom:-16px; }
.nav-item > a{ display:inline-flex; align-items:center; gap:5px; }
.nav-item > a::after{
    content:'▾'; font-size:11px; opacity:.7; transition:transform .2s ease;
}
.nav-item:hover > a::after{ transform:rotate(180deg); }
.nav-dropdown{
    position:absolute; top:calc(100% + 2px); left:50%; transform:translateX(-50%);
    background:#14141d; border:1px solid rgba(255,255,255,.1); border-radius:12px;
    min-width:200px; padding:8px; box-shadow:0 16px 40px rgba(0,0,0,.5);
    opacity:0; visibility:hidden; pointer-events:none;
    transition:opacity .18s ease, transform .18s ease;
}
.nav-item:hover .nav-dropdown{
    opacity:1; visibility:visible; pointer-events:auto; transform:translateX(-50%) translateY(0);
}
.nav-dropdown a{
    display:block; padding:10px 14px; border-radius:8px; font-size:14px;
    color:#fff; text-decoration:none; white-space:nowrap;
}
.nav-dropdown a:hover{ background:rgba(192,132,252,.12); color:#c084fc; }
.logo a{ display:block; }

/* =========================
   NOW PLAYING (inline video, replaces the old modal popup)
========================= */
.now-playing{ display:none; margin-bottom:36px; }
.now-playing.active{ display:block; }
.now-playing-inner{
    position:relative; width:100%; max-width:980px; margin:0 auto;
    aspect-ratio:16/9; background:#000; border-radius:16px; overflow:hidden;
    box-shadow:0 20px 60px rgba(0,0,0,.55);
}
.now-playing-inner iframe{ width:100%; height:100%; border:0; display:block; }
.now-playing-close{
    position:absolute; top:-16px; right:calc(50% - 490px + 16px);
    width:40px; height:40px; border-radius:50%;
    background:#fff; color:#111; border:0; cursor:pointer;
    font-size:18px; box-shadow:0 6px 18px rgba(0,0,0,.4); z-index:5;
}
.now-playing-close:hover{ background:#FF3EC9; color:#fff; }
@media (max-width:1020px){
    .now-playing-close{ right:8px; top:8px; }
}

/* =========================
   MOBILE NAV — hamburger + slide-down panel
========================= */
.nav-hamburger{
    display:none;
    flex-direction:column;
    justify-content:center;
    gap:5px;
    width:40px; height:40px;
    background:transparent; border:0; cursor:pointer;
    padding:0;
}
.nav-hamburger span{
    display:block; width:26px; height:2px; background:#fff;
    transition:transform .25s ease, opacity .25s ease;
}
.nav-hamburger.is-active span:nth-child(1){ transform:translateY(7px) rotate(45deg); }
.nav-hamburger.is-active span:nth-child(2){ opacity:0; }
.nav-hamburger.is-active span:nth-child(3){ transform:translateY(-7px) rotate(-45deg); }

.nav-mobile-cta{ display:none; }

@media(max-width:991px){
    .nav-hamburger{ display:flex; }
    .nav-desktop-cta{ display:none; }

    .nav{
        display:flex;
        flex-direction:column;
        gap:0;
        position:fixed;
        top:0; right:0;
        width:min(320px, 85vw);
        height:100vh;
        background:#0a0a10;
        padding:90px 24px 30px;
        overflow-y:auto;
        box-shadow:-16px 0 40px rgba(0,0,0,.5);
        transform:translateX(100%);
        transition:transform .3s ease;
        z-index:999;
    }
    .nav.nav-open{ transform:translateX(0); }

    .nav a{
        padding:14px 4px;
        border-bottom:1px solid rgba(255,255,255,.08);
        width:100%;
    }
    .nav-item{ width:100%; }
    .nav-item > a{ justify-content:space-between; width:100%; }

    /* On mobile, dropdowns expand inline below the tapped link
       instead of the desktop hover-popover. */
    .nav-dropdown{
        position:static;
        transform:none;
        display:none;
        opacity:1; visibility:visible; pointer-events:auto;
        box-shadow:none; border:0; border-radius:0;
        background:rgba(255,255,255,.03);
        min-width:0; width:100%;
        margin-top:0;
        padding:0 0 0 16px;
    }
    .nav-item.nav-item-open .nav-dropdown{ display:block; }
    .nav-item.nav-item-open > a::after{ transform:rotate(180deg); }

    .nav-mobile-cta{
        display:block;
        text-align:center;
        margin-top:18px;
    }
}

body.nav-scroll-lock{ overflow:hidden; }
