/*====================================================

100X LEADERSHIP TRANSFORMATION PROGRAMME
LeaderX.in

Author : Gopi Krishan Bali
Version : 1.0

======================================================*/


/*=========================================
GOOGLE FONTS
==========================================*/

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&family=Manrope:wght@300;400;500;600;700;800&display=swap');


/*=========================================
ROOT VARIABLES
==========================================*/

:root{

--primary:#0F3D91;
--primary-dark:#082C6C;
--secondary:#FF8C00;
--secondary-light:#F6B13D;

--gold:#D4AF37;

--text:#1A1A1A;
--text-light:#666666;

--white:#FFFFFF;

--bg:#FAFBFD;

--border:#E8ECF3;

--shadow:0 15px 45px rgba(15,61,145,.08);

--radius:20px;

--transition:.35s ease;

--container:1280px;

}



/*=========================================
RESET
==========================================*/

*{

margin:0;
padding:0;
box-sizing:border-box;

}

html{

scroll-behavior:smooth;

}

body{

font-family:'Inter',sans-serif;

font-size:16px;

line-height:1.7;

color:var(--text);

background:#fff;

overflow-x:hidden;

}


img{

max-width:100%;

display:block;

}


a{

text-decoration:none;

transition:var(--transition);

}


ul{

list-style:none;

}


.container{

width:92%;

max-width:var(--container);

margin:auto;

}



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

.section{

padding:110px 0;

}


.section-title{

text-align:center;

margin-bottom:70px;

}


.section-title h2{

font-size:48px;

font-weight:800;

color:var(--primary);

margin-top:10px;

margin-bottom:20px;

}


.section-title p{

max-width:760px;

margin:auto;

color:var(--text-light);

font-size:20px;

}


.eyebrow{

display:inline-block;

padding:10px 22px;

border-radius:100px;

background:#EEF4FF;

color:var(--primary);

font-weight:700;

letter-spacing:2px;

font-size:13px;

}



/*=========================================
BUTTONS
==========================================*/

.btn-primary{

display:inline-flex;

align-items:center;

justify-content:center;

padding:18px 36px;

background:linear-gradient(135deg,
var(--secondary),
var(--gold));

color:#fff;

font-weight:700;

border-radius:60px;

box-shadow:0 10px 25px rgba(255,140,0,.25);

transition:.4s;

}


.btn-primary:hover{

transform:translateY(-5px);

box-shadow:0 25px 45px rgba(255,140,0,.35);

}


.btn-secondary{

display:inline-flex;

align-items:center;

justify-content:center;

padding:18px 36px;

border-radius:60px;

border:2px solid var(--primary);

color:var(--primary);

font-weight:700;

background:#fff;

}


.btn-secondary:hover{

background:var(--primary);

color:#fff;

}



/*=========================================
HEADER
==========================================*/

.header{

position:fixed;

top:0;

left:0;

width:100%;

background:rgba(255,255,255,.96);

backdrop-filter:blur(20px);

box-shadow:0 5px 25px rgba(0,0,0,.05);

z-index:9999;

}


.header .container{

display:flex;

justify-content:space-between;

align-items:center;

height:85px;

}


.logo{

display:flex;

align-items:center;

gap:12px;

}


.logo img{

width:46px;

}


.logo span{

font-size:24px;

font-weight:800;

color:var(--primary);

font-family:'Manrope',sans-serif;

}


nav ul{

display:flex;

gap:40px;

}


nav a{

font-weight:600;

color:var(--text);

}


nav a:hover{

color:var(--secondary);

}



/*=========================================
HERO
==========================================*/

.hero{

padding-top:180px;

padding-bottom:100px;

background:#fff;

}


.hero-grid{

display:grid;

grid-template-columns:1fr 1fr;

align-items:center;

gap:70px;

}


.badge{

display:inline-block;

padding:12px 24px;

background:#EEF5FF;

border-radius:100px;

font-weight:700;

color:var(--primary);

margin-bottom:30px;

}


.hero h1{

font-size:68px;

font-weight:900;

line-height:1.08;

margin-bottom:25px;

font-family:'Manrope',sans-serif;

}


.hero h1 span{

color:var(--secondary);

}


.hero h2{

font-size:34px;

font-weight:700;

color:var(--primary);

margin-bottom:28px;

}


.hero p{

font-size:21px;

color:var(--text-light);

margin-bottom:40px;

max-width:650px;

}


.hero-buttons{

display:flex;

gap:18px;

margin-bottom:50px;

}


.launch-card{

display:flex;

justify-content:space-between;

padding:30px;

border-radius:20px;

background:#fff;

box-shadow:var(--shadow);

border:1px solid var(--border);

}


.launch-card span{

display:block;

font-size:14px;

color:var(--text-light);

margin-bottom:8px;

}


.launch-card h3{

font-size:28px;

color:var(--primary);

font-weight:800;

}


.hero-image{

position:relative;

}


.hero-image img{

width:100%;

animation:float 5s ease-in-out infinite;

}



/*=========================================
STATS
==========================================*/

.stats{

padding:70px 0;

background:var(--bg);

}


.stats .container{

display:grid;

grid-template-columns:repeat(6,1fr);

gap:25px;

}


.stat{

background:#fff;

padding:35px;

border-radius:20px;

text-align:center;

box-shadow:var(--shadow);

transition:.35s;

}


.stat:hover{

transform:translateY(-8px);

}


.stat h2{

font-size:46px;

font-weight:800;

color:var(--secondary);

margin-bottom:10px;

}


.stat p{

font-size:16px;

font-weight:600;

color:var(--text-light);

}

/*==========================================================
ABOUT SECTION
==========================================================*/

.about{

background:#FFFFFF;

position:relative;

overflow:hidden;

}

.about::before{

content:"";

position:absolute;

width:500px;
height:500px;

background:radial-gradient(circle,
rgba(15,61,145,.05),
transparent 70%);

top:-220px;
right:-180px;

}

.about-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:35px;

margin-top:70px;

}

.about-card{

background:#fff;

padding:45px;

border-radius:24px;

border:1px solid #EDF2F7;

box-shadow:0 15px 40px rgba(0,0,0,.05);

transition:.45s;

position:relative;

overflow:hidden;

}

.about-card::after{

content:"";

position:absolute;

left:0;
top:0;

width:6px;
height:100%;

background:linear-gradient(
180deg,
var(--secondary),
var(--gold));

transform:scaleY(0);

transition:.45s;

transform-origin:top;

}

.about-card:hover{

transform:translateY(-12px);

box-shadow:0 30px 60px rgba(15,61,145,.12);

}

.about-card:hover::after{

transform:scaleY(1);

}

.about-card .icon{

width:85px;
height:85px;

border-radius:24px;

display:flex;

align-items:center;

justify-content:center;

background:#EEF5FF;

font-size:36px;

color:var(--primary);

margin-bottom:28px;

transition:.4s;

}

.about-card:hover .icon{

background:linear-gradient(
135deg,
var(--primary),
#2E7BFF);

color:#fff;

transform:rotate(-8deg);

}

.about-card h3{

font-size:28px;

font-weight:800;

margin-bottom:18px;

color:var(--primary);

}

.about-card p{

font-size:17px;

line-height:1.8;

color:#666;

}



/*==========================================================
WHY PROGRAM
==========================================================*/

.why-program{

background:#FAFBFD;

}

.feature-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:35px;

margin-top:60px;

}

.feature{

background:#fff;

padding:45px;

border-radius:25px;

text-align:left;

transition:.4s;

border:1px solid #EDF2F7;

position:relative;

overflow:hidden;

}

.feature:hover{

transform:translateY(-10px);

box-shadow:0 30px 70px rgba(15,61,145,.08);

}

.feature::before{

content:"";

position:absolute;

top:0;
left:0;

height:5px;

width:0;

background:linear-gradient(
90deg,
var(--secondary),
var(--gold));

transition:.5s;

}

.feature:hover::before{

width:100%;

}

.feature i{

font-size:46px;

margin-bottom:25px;

color:var(--secondary);

transition:.4s;

}

.feature:hover i{

color:var(--primary);

transform:scale(1.1);

}

.feature h3{

font-size:26px;

font-weight:800;

margin-bottom:18px;

color:var(--primary);

}

.feature p{

font-size:17px;

color:#666;

line-height:1.8;

}



/*==========================================================
AUDIENCE
==========================================================*/

.audience{

background:#FFFFFF;

}

.audience-grid{

display:grid;

grid-template-columns:repeat(4,1fr);

gap:28px;

margin-top:60px;

}

.audience-card{

padding:35px;

background:#fff;

border-radius:20px;

border:1px solid #EDF2F7;

text-align:center;

font-size:18px;

font-weight:700;

transition:.4s;

cursor:pointer;

box-shadow:0 10px 25px rgba(0,0,0,.04);

}

.audience-card i{

display:block;

font-size:42px;

margin-bottom:18px;

color:var(--secondary);

transition:.4s;

}

.audience-card:hover{

transform:translateY(-10px);

background:linear-gradient(
135deg,
var(--primary),
#1A65D6);

color:#fff;

}

.audience-card:hover i{

color:#FFD66B;

transform:scale(1.15);

}



/*==========================================================
LEADERSHIP JOURNEY
==========================================================*/

.journey{

background:#FAFBFD;

position:relative;

overflow:hidden;

}

.timeline{

display:flex;

justify-content:space-between;

align-items:flex-start;

margin-top:80px;

gap:15px;

position:relative;

}

.timeline::before{

content:"";

position:absolute;

top:42px;

left:0;

right:0;

height:5px;

background:#DCE8FF;

z-index:0;

}

.step{

flex:1;

position:relative;

z-index:5;

text-align:center;

}

.number{

width:85px;

height:85px;

margin:auto;

border-radius:50%;

background:linear-gradient(
135deg,
var(--secondary),
var(--gold));

color:#fff;

display:flex;

align-items:center;

justify-content:center;

font-size:34px;

font-weight:800;

box-shadow:0 15px 40px rgba(255,140,0,.25);

margin-bottom:25px;

transition:.4s;

}

.step:hover .number{

transform:scale(1.08);

}

.step h3{

font-size:24px;

font-weight:800;

margin-bottom:15px;

color:var(--primary);

}

.step p{

font-size:16px;

color:#666;

line-height:1.8;

}

.arrow{

display:flex;

align-items:center;

justify-content:center;

padding-top:30px;

font-size:22px;

color:#B8C6DD;

}



/*==========================================================
PREMIUM HOVER EFFECTS
==========================================================*/

.glass{

background:rgba(255,255,255,.65);

backdrop-filter:blur(18px);

border:1px solid rgba(255,255,255,.35);

border-radius:25px;

box-shadow:0 20px 45px rgba(0,0,0,.05);

}

.hover-rise{

transition:.4s;

}

.hover-rise:hover{

transform:translateY(-12px);

}

.shadow-xl{

box-shadow:0 25px 60px rgba(15,61,145,.08);

}

.round-xl{

border-radius:24px;

}



/*==========================================================
SECTION DIVIDER
==========================================================*/

.wave-divider{

width:100%;

overflow:hidden;

line-height:0;

}

.wave-divider svg{

display:block;

width:100%;

height:90px;

}

/*==========================================================
PROGRAMME SECTION
==========================================================*/

.programme{
    background:#ffffff;
}

.programme-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:30px;
    margin-top:60px;
}

.module-card{
    background:#ffffff;
    border:1px solid var(--border);
    border-radius:24px;
    padding:40px;
    box-shadow:var(--shadow);
    transition:var(--transition);
    position:relative;
    overflow:hidden;
}

.module-card::before{
    content:"";
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:5px;
    background:linear-gradient(90deg,var(--secondary),var(--gold));
}

.module-card:hover{
    transform:translateY(-10px);
}

.week{
    display:inline-block;
    padding:8px 18px;
    background:#EEF5FF;
    color:var(--primary);
    border-radius:50px;
    font-size:13px;
    font-weight:700;
    margin-bottom:18px;
}

.module-card h3{
    color:var(--primary);
    font-size:26px;
    margin-bottom:15px;
}

.module-card p{
    color:#666;
    line-height:1.8;
}


/*==========================================================
ROADMAP
==========================================================*/

.roadmap{
    background:#FAFBFD;
}

.roadmap-wrapper{
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-top:70px;
    flex-wrap:wrap;
    gap:20px;
}

.roadmap-step{
    flex:1;
    min-width:180px;
    text-align:center;
}

.road-icon{
    width:90px;
    height:90px;
    margin:auto;
    border-radius:50%;
    background:linear-gradient(135deg,var(--primary),#3578ff);
    display:flex;
    justify-content:center;
    align-items:center;
    color:#fff;
    font-size:36px;
    margin-bottom:20px;
    transition:.35s;
}

.roadmap-step:hover .road-icon{
    transform:scale(1.08);
}

.connector{
    height:4px;
    background:#D9E4F8;
    flex:0.5;
}


/*==========================================================
FOUNDER
==========================================================*/

.founder{
    background:#ffffff;
}

.founder-grid{
    display:grid;
    grid-template-columns:420px 1fr;
    gap:70px;
    align-items:center;
}

.founder-image img{
    width:100%;
    border-radius:24px;
    box-shadow:0 25px 70px rgba(0,0,0,.12);
}

.founder-content h2{
    color:var(--primary);
    font-size:42px;
    line-height:1.25;
    margin:20px 0;
}

.founder-content p{
    color:#666;
    font-size:18px;
    line-height:1.9;
    margin-bottom:22px;
}

.designation{
    color:var(--secondary);
    font-weight:700;
}


/*==========================================================
CITIES
==========================================================*/

.cities{
    background:#FAFBFD;
}

.city-grid{
    display:grid;
    grid-template-columns:repeat(5,1fr);
    gap:25px;
    margin-top:50px;
}

.city-card{
    background:#fff;
    padding:35px;
    text-align:center;
    border-radius:20px;
    box-shadow:var(--shadow);
    transition:.35s;
}

.city-card i{
    font-size:40px;
    color:var(--secondary);
    margin-bottom:15px;
}

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


/*==========================================================
TIMELINE
==========================================================*/

.launch-timeline{
    background:#ffffff;
}

.timeline-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:30px;
    margin-top:60px;
}

.timeline-card{
    background:#fff;
    border-left:6px solid var(--secondary);
    border-radius:18px;
    padding:35px;
    box-shadow:var(--shadow);
}

.timeline-card h4{
    color:var(--primary);
    margin-bottom:10px;
}


/*==========================================================
LEARNING
==========================================================*/

.learning{
    background:#FAFBFD;
}

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

.learning-card{
    background:#fff;
    text-align:center;
    padding:45px;
    border-radius:22px;
    box-shadow:var(--shadow);
    transition:.35s;
}

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

.learning-card i{
    font-size:48px;
    color:var(--primary);
    margin-bottom:20px;
}


/*==========================================================
BENEFITS
==========================================================*/

.benefits{
    background:#ffffff;
}

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

.benefit-card{
    background:#fff;
    border-radius:22px;
    padding:40px;
    text-align:center;
    box-shadow:var(--shadow);
    transition:.35s;
}

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

.benefit-card i{
    font-size:46px;
    color:var(--secondary);
    margin-bottom:18px;
}


/*==========================================================
REGISTRATION FORM
==========================================================*/

.registration{
    background:#F8FAFD;
}

#registrationForm{
    max-width:980px;
    margin:60px auto 0;
    background:#fff;
    padding:55px;
    border-radius:28px;
    box-shadow:0 30px 80px rgba(0,0,0,.08);
}

.form-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:25px;
}

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

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

.form-group label{
    margin-bottom:10px;
    font-weight:600;
    color:var(--primary);
}

.form-group input,
.form-group select,
.form-group textarea{
    padding:16px 18px;
    border:1px solid #DCE5F2;
    border-radius:12px;
    font-size:16px;
    transition:.3s;
}

.form-group input:focus,
.form-group textarea:focus,
.form-group select:focus{
    border-color:var(--secondary);
    outline:none;
    box-shadow:0 0 0 4px rgba(255,140,0,.15);
}

.checkbox{
    display:flex;
    align-items:center;
    gap:12px;
}

.text-center{
    text-align:center;
    margin-top:35px;
}


/*==========================================================
FAQ
==========================================================*/

.faq{
    background:#ffffff;
}

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

.faq-item{
    background:#fff;
    border-radius:16px;
    margin-bottom:18px;
    box-shadow:var(--shadow);
    overflow:hidden;
}

.faq-question{
    width:100%;
    padding:24px;
    background:#fff;
    border:none;
    text-align:left;
    font-size:18px;
    font-weight:700;
    cursor:pointer;
    color:var(--primary);
}

.faq-answer{
    display:none;
    padding:0 24px 24px;
    color:#666;
    line-height:1.8;
}


/*==========================================================
FINAL CTA
==========================================================*/

.final-cta{
    background:linear-gradient(135deg,var(--primary),#1D5BD7);
    color:#fff;
    text-align:center;
}

.final-cta h2{
    font-size:52px;
    margin-bottom:20px;
}

.final-cta p{
    font-size:20px;
    max-width:700px;
    margin:0 auto 40px;
    opacity:.95;
}


/*==========================================================
FOOTER
==========================================================*/

footer{
    background:#081B3A;
    color:#fff;
    padding:70px 0 30px;
}

.footer-grid{
    display:grid;
    grid-template-columns:2fr 1fr 1fr 1fr;
    gap:40px;
    margin-bottom:40px;
}

.footer-logo{
    width:70px;
    margin-bottom:20px;
}

footer h4{
    margin-bottom:20px;
    color:#FFD66B;
}

footer ul{
    padding:0;
}

footer li{
    margin-bottom:12px;
}

footer a{
    color:#D8E2F5;
}

footer a:hover{
    color:#FFD66B;
}

.social{
    display:flex;
    gap:15px;
    margin-top:15px;
}

.social a{
    width:42px;
    height:42px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    background:rgba(255,255,255,.08);
    transition:.3s;
}

.social a:hover{
    background:var(--secondary);
    color:#fff;
}

footer hr{
    border:none;
    border-top:1px solid rgba(255,255,255,.15);
    margin:35px 0;
}

.copyright{
    text-align:center;
    color:#B8C7E6;
    font-size:15px;
}