:root{
--primary:#ff7a00;
--green:#1b5e20;
--dark:#0d1b2a;
}

body{
font-family:'Montserrat',sans-serif;
margin:0;
transition:0.4s;
background:#ffffff;
color:#111;
overflow-x:hidden;
scroll-behavior:smooth;
}

/* Section Dot Navigation */
.section-dots{
position:fixed;
right:20px;
top:50%;
transform:translateY(-50%);
display:flex;
flex-direction:column;
gap:12px;
z-index:999;
}

.section-dot{
width:10px;
height:10px;
border-radius:50%;
background:rgba(255,255,255,0.45);
border:2px solid rgba(255,255,255,0.6);
transition:0.25s;
display:block;
}

.section-dot.active{
background:#1abc9c;
border-color:#1abc9c;
transform:scale(1.2);
}

.section-dot:hover{
background:#1abc9c;
border-color:#1abc9c;
}

@media(max-width:768px){
.section-dots{
right:10px;
}
.section-dot{
width:8px;
height:8px;
}
}

body.dark{
background:#0d1b2a;
color:white;
}

/* NEWS TICKER */
.ticker{
background:var(--primary);
color:white;
padding:8px 0;
overflow:hidden;
white-space:nowrap;
font-weight:600;
}
.ticker span{
display:inline-block;
padding-left:100%;
animation:ticker 20s linear infinite;
}
@keyframes ticker{
0%{transform:translateX(0);}
100%{transform:translateX(-100%);}
}

/* HERO */
.hero-slider{
position:relative;
}
.heroSwiper{
height:90vh;
}
.heroSwiper .swiper-wrapper,
.heroSwiper .swiper-slide{
height:100%;
}
.hero-slide{
display:flex;
align-items:center;
justify-content:center;
}
.hero-pagination .swiper-pagination-bullet{
background:rgba(255,255,255,0.6);
opacity:1;
}
.hero-pagination .swiper-pagination-bullet-active{
background:#ffffff;
}
.hero{
position:relative;
height:90vh;
display:flex;
align-items:center;
justify-content:center;
background:linear-gradient(90deg,#ff7a00,#1b5e20);
color:white;
overflow:hidden;
}
.hero-alt{
background:linear-gradient(90deg,#1b5e20,#0d1b2a);
}
.hero-content{
position:relative;
z-index:1;
text-align:center;
width:100%;
height:100%;
}
.hero h1{
font-size:60px;
font-weight:900;
}

.hero-text p{
font-size:18px;
opacity:0.9;
}

.hero-right{
height:100%;
padding-right:0;
padding-top:0;
padding-bottom:0;
}

.hero-left{
height:100%;
padding-left:600px;
padding-top:0px;
padding-bottom:0px;
}

.hero-media{
position:relative;
display: block;
width:100%;
height:clamp(320px,50vh,520px);
padding:0;
border-radius:26px;
overflow:hidden;
}

.hero-media-bleed{
width:calc(100% + (100vw - 100%) / 2);
margin-right:calc(-1 * (100vw - 100%) / 2);
height:100%;
border-radius:0;
background:transparent;
border:none;
box-shadow:none;
}

.hero-media-bleed-left{
width:calc(100% + (100vw - 100%) / 2);
margin-left:calc(-1 * (100vw - 100%) / 2);
height:100%;
border-radius:0;
background:transparent;
border:none;
box-shadow:none;
}

.hero-media::before{
content:"";
position:absolute;
inset:-16px;
border-radius:32px;
z-index:-1;
}

.hero-image{

height:100%;
max-width:none;
max-height:none;
object-fit:cover;
border-radius:0;
object-position:center top;
}

@keyframes typing{
from{width:0}
to{width:100%}
}

@media(max-width:768px){
.heroSwiper{
height:auto;
}
.hero{
height:auto;
padding:80px 0;
}
.hero h1{
font-size:38px;
}
.hero-text p{
font-size:16px;
}
.hero-image{
height:100%;
}
.hero-media{
height:320px;
}
.hero-media-bleed{
width:100%;
margin-right:0;
height:320px;
border-radius:18px;
background:rgba(255,255,255,0.08);
box-shadow:0 20px 60px rgba(0,0,0,0.28);
}
.hero-media-bleed-left{
width:100%;
margin-left:0;
height:320px;
border-radius:18px;
background:rgba(255,255,255,0.08);
box-shadow:0 20px 60px rgba(0,0,0,0.28);
}
}

/* MAP */
.map-section{
padding:80px 0;
text-align:center;
}
.map svg path{
fill:#ddd;
transition:0.3s;
cursor:pointer;
}
.map svg path.active{
fill:var(--primary);
animation:pulse 1.5s infinite;
}
@keyframes pulse{
0%{opacity:1;}
50%{opacity:0.6;}
100%{opacity:1;}
}

/* COUNTERS */
.counter-section{
padding:80px 0;
background:#f5f5f5;
text-align:center;
}
.counter{
font-size:50px;
font-weight:900;
color:var(--primary);
}

/* ================= LEADERS CAROUSEL ================= */


.leader-slide{
display:flex;
flex-direction:column;
justify-content:flex-end;
height:700px;
padding:0;
color:white;
position:relative;
background:linear-gradient(180deg,#6f8fb3,#4d6f94);
transition:0.4s;
overflow:hidden;
}

.leader-slide::before{
content:"";
position:absolute;
bottom:0;
left:0;
width:100%;
height:50%;
background:linear-gradient(to top, rgba(0,0,0,0.7), transparent);
z-index:1;
}

.leader-content{
text-align:center;
position:absolute;
bottom:20px;
width:100%;
z-index:2;
padding:0 15px;
}

.leader-content h3{
font-weight:800;
font-size:20px;
margin-bottom:5px;
}

.leader-content p{
font-weight:600;
opacity:0.9;
font-size:14px;
}

.leader-image{
width:100%;
height:100%;
position:absolute;
top:0;
left:0;
}

.leader-image img{
width:100%;
height:700px;
object-fit:cover;
filter:contrast(1.1);
display:block;
}

/* ================= SIMPLE 4 COLUMN LAYOUT ================= */

.leaders-carousel-section{
background:#5f7ea3;
position:relative;
overflow:hidden;
padding:0px 0px 0px 0px;
}

/* Navigation Arrows - Top Right */
.leaders-carousel-section .swiper-button-next,
.leaders-carousel-section .swiper-button-prev{
color:white;
background:rgba(255,255,255,0.2);
width:45px;
height:45px;
border-radius:50%;
top:20px;
margin-top: 10px;
}

.leaders-carousel-section .swiper-button-next{
right:20px;
}

.leaders-carousel-section .swiper-button-prev{
right:80px;
left:auto;
}

.leaders-carousel-section .swiper-button-next:hover,
.leaders-carousel-section .swiper-button-prev:hover{
background:rgba(255,255,255,0.4);
}

.leaders-carousel-section .swiper-button-next::after,
.leaders-carousel-section .swiper-button-prev::after{
font-size:20px;
font-weight:bold;
}

.leaders-bottom-text{
position:absolute;
bottom:80px;
left:30px;
font-size:60px;
font-weight:900;
color:white;
opacity:0.15;
letter-spacing:2px;
z-index:1;
}

/* Responsive */
@media(max-width:768px){
.leader-content h3{
font-size:16px;
}
.leader-content p{
font-size:12px;
}
.leaders-bottom-text{
font-size:28px;
}
.leaders-carousel-section .swiper-button-next,
.leaders-carousel-section .swiper-button-prev{
width:35px;
height:35px;
top:15px;
}
.leaders-carousel-section .swiper-button-prev{
right:60px;
}
.leaders-carousel-section .swiper-button-next::after,
.leaders-carousel-section .swiper-button-prev::after{
font-size:16px;
}
}



/* ================= PREMIUM ELECTION RESULTS ================= */

.results-premium{
padding:120px 0;
background:linear-gradient(to left,#0b3d2e,#000);
color:white;
}

.results-title{
font-size:48px;
font-weight:900;
letter-spacing:1px;
}

.results-subtitle{
color:#f1c40f;
font-weight:600;
}

.result-card{
background:rgba(255,255,255,0.08);
backdrop-filter:blur(15px);
padding:30px;
border-radius:20px;
box-shadow:0 20px 50px rgba(0,0,0,0.6);
position:relative;
}

.result-header{
display:flex;
justify-content:space-between;
align-items:center;
}

.result-header h4{
font-weight:700;
}

.result-header h3{
font-weight:900;
color:#f1c40f;
}

/* Progress Bar */
.progress-bar-wrapper{
width:100%;
height:14px;
background:rgba(255,255,255,0.1);
border-radius:10px;
margin-top:15px;
overflow:hidden;
}

.progress-bar-fill{
height:100%;
width:0%;
background:linear-gradient(90deg,#1abc9c,#16a085);
border-radius:10px;
transition:2s ease;
}

.progress-bar-fill.secondary{
background:linear-gradient(90deg,#f1c40f,#f39c12);
}

.percentage{
position:absolute;
right:30px;
bottom:25px;
font-weight:700;
color:#1abc9c;
}

/* Right Card */
.results-visual-card{
background:rgba(255,255,255,0.08);
backdrop-filter:blur(15px);
padding:50px;
border-radius:20px;
text-align:center;
box-shadow:0 20px 50px rgba(0,0,0,0.6);
}

.majority-badge{
display:inline-block;
margin-top:20px;
padding:10px 25px;
background:linear-gradient(90deg,#f1c40f,#e67e22);
border-radius:30px;
font-weight:800;
color:black;
}

/* Responsive */
@media(max-width:768px){
.results-title{
font-size:32px;
}
}


/* PRESS GRID */
.press{
padding:80px 0;
background:#f5f5f5;
}
.press-card{
background:white;
padding:20px;
border-radius:15px;
box-shadow:0 10px 30px rgba(0,0,0,0.1);
transition:0.3s;
}
.press-card:hover{
transform:translateY(-10px);
}

/* SCROLL ANIMATION */
.reveal{
opacity:0;
transform:translateY(40px);
transition:1s;
}
.reveal.active{
opacity:1;
transform:translateY(0);
}

/* COPYRIGHT SECTION */

footer{
background:#0d1b2a;
color:white;
padding:20px 20px;
text-align:center;
}

/* ===== PREMIUM FOOTER ===== */
.site-footer{
background:#1b223f;
color:#cfd3ff;
padding:80px 0 30px;
}

.site-footer h4{
color:#ff7a00;
font-weight:700;
margin-bottom:20px;
}

.site-footer ul{
list-style:none;
padding:0;
}

.site-footer ul li{
margin-bottom:8px;
}

.site-footer ul li a{
color:#cfd3ff;
text-decoration:none;
font-size:14px;
transition:0.3s;
}

.site-footer ul li a:hover{
color:white;
padding-left:5px;
}

.footer-btn{
display:block;
width:100%;
padding:10px;
margin-bottom:10px;
border-radius:6px;
font-weight:600;
text-align:center;
color:white;
text-decoration:none;
}

.btn-green{background:#38b2ac;}
.btn-purple{background:#6b21a8;}
.btn-orange{background:#f97316;}
.btn-blue{background:#0284c7;}

.footer-bottom{
border-top:1px solid rgba(255,255,255,0.1);
margin-top:50px;
padding-top:20px;
font-size:14px;
display:flex;
justify-content:space-between;
flex-wrap:wrap;
}

.footer-bottom a{
color:#cfd3ff;
text-decoration:none;
margin-right:15px;
}

.social-icons i{
background:rgba(255,255,255,0.1);
padding:10px;
border-radius:50%;
margin-left:10px;
}

/* ================= FOOTPRINTS SECTION ================= */

/* ===== Background Blur Overlay Upgrade ===== */

.footprints-section{
position:relative;
padding:120px 0;
background:url('https://images.unsplash.com/photo-1584448097764-374f81551427?q=80&w=1974') center/cover no-repeat;
overflow:hidden;
}

.footprints-overlay{
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
background:rgba(255,165,0,0.80);
backdrop-filter:blur(8px);        /* ✨ BLUR EFFECT */
-webkit-backdrop-filter:blur(8px);
z-index:0;
}


.footprints-section .container{
position:relative;
z-index:1;
}

.footprints-title{
font-size:70px;
font-weight:900;
color:#1b223f;
letter-spacing:2px;
}

.footprints-subtitle{
font-weight:700;
margin-top:15px;
color:#1b223f;
}

.footprint-stats{
display:flex;
gap:80px;
}

.footprint-stats h5{
font-weight:700;
color:#1b223f;
}

.footprint-stats h2{
font-size:48px;
font-weight:900;
color:#1b223f;
}

.india-map{
max-width:420px;
filter:brightness(0) saturate(100%) invert(34%) sepia(94%) saturate(4532%) hue-rotate(357deg) brightness(102%) contrast(104%);
animation:mapFloat 4s ease-in-out infinite;
}

/* Leaflet Map Container */
#indiaMap{
height:500px;
width:100%;
border-radius:10px;
}
@media(max-width:991px){
#indiaMap{
height:400px;
}
}
@media(max-width:576px){
#indiaMap{
height:320px;
border-radius:8px;
}
}

.leaflet-container{
    background:transparent;
}

/* ===== Map Pin Marker ===== */
.map-pin {
    position: relative;
    width: 20px;
    height: 20px;
    background: #e53935;
    border: 3px solid #ffffff;
    border-radius: 50% 50% 50% 0;
    transform: rotate(-45deg);
    box-shadow: 0 2px 8px rgba(0,0,0,0.4);
    animation: pinPulse 2s ease-in-out infinite;
}
.map-pin::after {
    content: '';
    position: absolute;
    bottom: -8px;
    left: 50%;
    transform: translateX(-50%) rotate(45deg);
    width: 0;
    height: 0;
}
.map-pin-dot {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 6px;
    height: 6px;
    background: #fff;
    border-radius: 50%;
    transform: translate(-50%, -50%);
}
@keyframes pinPulse {
    0%   { box-shadow: 0 2px 8px rgba(0,0,0,0.4), 0 0 0 0 rgba(229,57,53,0.6); }
    70%  { box-shadow: 0 2px 8px rgba(0,0,0,0.4), 0 0 0 12px rgba(229,57,53,0); }
    100% { box-shadow: 0 2px 8px rgba(0,0,0,0.4), 0 0 0 0 rgba(229,57,53,0); }
}
.leaflet-popup-content-wrapper {
    border-radius: 8px;
    border-top: 3px solid #1b5e20;
    box-shadow: 0 4px 16px rgba(0,0,0,0.2);
}

/* Floating animation */
@keyframes mapFloat{
0%{transform:translateY(0px);}
50%{transform:translateY(-10px);}
100%{transform:translateY(0px);}
}

/* Responsive */
@media(max-width:768px){
.footprints-title{
font-size:40px;
}
.footprint-stats{
flex-direction:column;
gap:20px;
}
.footprints-section{
padding:60px 0;
}
.col-md-8.col-12.text-center.mt-4{
margin-top:30px !important;
padding:0 10px;
}
}
/* ===== Scroll Reveal Animation ===== */

.reveal{
opacity:0;
transform:translateY(60px);
transition:all 1s ease;
}

.reveal.active{
opacity:1;
transform:translateY(0);
}

/* ================= INSPIRATION SECTION ================= */
.align-items-center
{
margin: auto;
}
.inspiration-section{
position:relative;
height:100vh;
overflow:hidden;
}

.inspiration-slide{
position:relative;
height:100vh;
display:flex;
align-items:center;
background: linear-gradient(135deg, #0d3d2e 0%, #1b5e20 100%);
}

/* Left Image Column */
.inspiration-image-col{
display:flex;
align-items:center;
justify-content:center;
padding:40px;
min-height:100vh;
}

.inspiration-image{
width:100%;
height:100%;
object-fit:contain;
max-height:500px;
}

/* Right Content Column */
.inspiration-content-col{
display:flex;
align-items:center;
justify-content:center;
padding:80px;
/*
background:rgba(11, 61, 46, 0.85);*/
min-height:100vh;
}

.inspiration-content{
position:relative;
z-index:2;
color:white;
max-width:550px;
}

.inspiration-content h1{
font-size:70px;
font-weight:900;
letter-spacing:2px;
}

.inspiration-content h3{
font-weight:700;
margin-top:20px;
}

.inspiration-content p{
font-size:18px;
margin-top:10px;
}

.btn-inspire{
display:inline-block;
margin-top:25px;
padding:10px 20px;
border:1px solid white;
color:white;
text-decoration:none;
transition:0.3s;
}

.btn-inspire:hover{
background:white;
color:#0b3d2e;
}

/* Pagination Styling */
.swiper-pagination-bullet{
background:white;
opacity:0.5;
}

.swiper-pagination-bullet-active{
background:#0b3d2e;
opacity:1;
}

/* Responsive */
@media(max-width:768px){
.inspiration-content h1{
font-size:40px;
}

.inspiration-image-col{
padding:20px;
min-height:auto;
max-height:300px;
}

.inspiration-content-col{
padding:30px 20px;
min-height:auto;
}

.inspiration-image{
max-height:250px;
}
}
/* TEXT ANIMATION */
.animate-text{
opacity:0;
transform:translateY(40px);
transition:all 0.8s ease;
}

.animate-text.active{
opacity:1;
transform:translateY(0);
}

/* Mobile Stack Layout */
@media(max-width:576px){
.inspiration-image-col{
min-height:250px;
}

.inspiration-content-col{
min-height:auto;
padding:25px 15px;
}

.inspiration-content h1{
font-size:32px;
}

.inspiration-content h3{
font-size:18px;
}

.inspiration-content p{
font-size:14px;
}
}

/* SLIDE COUNTER */
.slide-counter{
position:absolute;
bottom:30px;
right:40px;
color:white;
font-size:18px;
font-weight:700;
z-index:5;
}

/* PARALLAX EFFECT */
.inspiration-slide{
background-attachment:fixed;
background-size:cover;
background-position:center;
}



/* Responsive */
@media(max-width:768px){
.join-content h1{
font-size:38px;
}
.join-image{
margin-bottom:40px;
}
}


/* ================= KISAN JOIN SECTION ================= */

.join-kisan-section{
position:relative;
padding:0;
background:linear-gradient(135deg,#0b3d2e,#06251c);
overflow:hidden;
min-height:100vh;
display:flex;
align-items:stretch;
}

.join-overlay{
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
background:url('https://images.unsplash.com/photo-1589923188900-85dae523342b?q=80&w=1920') center/cover no-repeat;
opacity:0.08;
z-index:0;
}

.join-kisan-section .container{
position:relative;
z-index:2;
}

.glass-card {
    padding-left: 50px;
}

.join-image{
border-radius:0;
box-shadow:none;
transition:0.4s;
display:block;
}

.join-image:hover{
transform:none;
}

.join-content h1{
font-size:60px;
font-weight:900;
letter-spacing:2px;
}

.join-content p{
opacity:0.85;
}

.join-buttons a{
display:inline-block;
padding:12px 22px;
margin:10px 10px 0 0;
text-decoration:none;
font-weight:700;
border-radius:6px;
transition:0.3s;
}

/* Buttons */

.btn-volunteer{
background:#1abc9c;
color:white;
}

.btn-volunteer:hover{
background:#16a085;
}

.btn-member{
background:#f1c40f;
color:black;
}

.btn-member:hover{
background:#d4ac0d;
}

.btn-donate{
background:#e67e22;
color:white;
}

.btn-donate:hover{
background:#ca6f1e;
}


/* Responsive */
@media(max-width:768px){
.join-content h1{
font-size:38px;
}
.join-image{
margin-bottom:40px;
}
}

.p-0{
	padding: 20px !important;
}



/* ================= PREMIUM PRESS SECTION ================= */

.press-premium-section{
padding:120px 0;
background:linear-gradient(135deg,#0b3d2e,#000);
color:white;
}

.press-header h2{
font-size:48px;
font-weight:900;
}

.press-header h4{
color:#f1c40f;
margin-top:10px;
}

.press-filters{
margin-top:20px;
}

.filter-btn{
background:transparent;
border:1px solid #1abc9c;
color:#1abc9c;
padding:8px 18px;
margin:5px;
border-radius:20px;
transition:0.3s;
}

.filter-btn.active,
.filter-btn:hover{
background:#1abc9c;
color:black;
}

.press-card{
background:rgba(255,255,255,0.08);
backdrop-filter:blur(15px);
border-radius:20px;
overflow:hidden;
transition:0.4s;
box-shadow:0 20px 40px rgba(0,0,0,0.5);
}

.press-card:hover{
transform:translateY(-10px);
}

.press-card img{
width:100%;
height:300px;
object-fit:cover;
}

.press-info{
padding:20px;
}

.tag{
font-size:12px;
color:#1abc9c;
font-weight:700;
}

.view-btn{
margin-top:10px;
background:linear-gradient(90deg,#1abc9c,#16a085);
border:none;
padding:8px 15px;
color:white;
border-radius:8px;
}

.view-btn:hover{
box-shadow:0 0 15px #1abc9c;
}

/* Premium Gallery Grid */
.premium-gallery{
display:grid;
grid-template-columns:repeat(4, 1fr);
grid-auto-rows:200px;
gap:15px;
margin-top:40px;
}

.gallery-box{
position:relative;
overflow:hidden;
border-radius:15px;
cursor:pointer;
transition:all 0.4s ease;
box-shadow:0 10px 30px rgba(0,0,0,0.3);
}

.gallery-box img{
width:100%;
height:100%;
object-fit:cover;
transition:transform 0.5s ease;
}

.gallery-box:hover img{
transform:scale(1.1);
}

.gallery-overlay{
position:absolute;
bottom:0;
left:0;
right:0;
background:linear-gradient(to top, rgba(0,0,0,0.9), transparent);
color:white;
padding:20px;
transform:translateY(100%);
transition:transform 0.4s ease;
}

.gallery-box:hover .gallery-overlay{
transform:translateY(0);
}

.gallery-overlay h4{
font-size:18px;
font-weight:700;
margin:0 0 5px 0;
}

.gallery-overlay p{
font-size:13px;
margin:0;
opacity:0.8;
}

/* Different Sizes */
/*.gallery-box.large{
grid-column:span 2;
grid-row:span 2;
}

.gallery-box.tall{
grid-row:span 2;
}

.gallery-box.wide{
grid-column:span 2;
}*/

.gallery-box.medium{
grid-column:span 1;
grid-row:span 1;
}

/* Responsive Gallery */
@media(max-width:992px){
.premium-gallery{
grid-template-columns:repeat(2, 1fr);
grid-auto-rows:180px;
}
.gallery-box.large{
grid-column:span 2;
grid-row:span 2;
}
.gallery-box.wide{
grid-column:span 2;
}
}

@media(max-width:576px){
.premium-gallery{
grid-template-columns:1fr;
grid-auto-rows:250px;
}
.gallery-box.large,
.gallery-box.tall,
.gallery-box.wide,
.gallery-box.medium{
grid-column:span 1;
grid-row:span 1;
}
}

/* Nav bar */

.navbar .nav-link{
color:white;
position:relative;
margin:0 10px;
transition:0.3s;
}

.navbar .nav-link::after{
content:"";
position:absolute;
bottom:0;
left:0;
width:0%;
height:2px;
background:#1abc9c;
transition:0.3s;
}

.navbar .nav-link:hover::after,
.navbar .nav-link.active::after{
width:100%;
}

.navbar .nav-link:hover{
color:#1abc9c;
}

.bg-dark{
        --bs-bg-opacity: 1;
    background-color: #1b2340 !important;
}

/* Map Ralated Css */ 

