/* =================================== */
/* ACCESSIBLE COLOR THEMES (STQC SAFE) */
/* =================================== */
/* ===================================== */
/* CORE DESIGN TOKENS                   */
/* ===================================== */

:root{
  --bg-color: #ffffff;
  --text-color: #1a1a1a;

  --primary-color: #0A3C7D;
  --accent-color: #F57C00;

  --secondary-color: #f4f6f8;

  --card-bg: #ffffff;
  --panel-bg: #f9fafb;
  --strip-bg: #f1f6fb;

  --border-color: #e0e0e0;

  --danger-bg: #b30000;

  --shadow-soft: 0 2px 8px rgba(0,0,0,0.08);
  --shadow-strong: 0 10px 24px rgba(0,0,0,0.15);
  
  --space-xs:8px;
  --space-sm:16px;
  --space-md:24px;
  --space-lg:48px;

  /* Status tokens */
  --info-bg: #e3f2fd;
  --info-text: #1565c0;

  --success-bg: #e8f5e9;
  --success-text: #2e7d32;

  --warning-bg: #fff3e0;
  --warning-text: #ef6c00;

  --error-bg: #ffebee;
  --error-text: #c62828;

}

/* Apply globally */
body{
  background: var(--bg-color);
  color: var(--text-color);
}

.section{
  background: var(--bg-color);
}

.btn-primary{
  background: var(--primary-color);
}


/* ========== BASE RESET ========== */
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  font-family: "Segoe UI", Arial, sans-serif;
  line-height:1.6;
}
img{max-width:100%}
a{text-decoration:none;color:var(--primary-color);}
a:focus,button:focus{
  outline:3px solid var(--accent-color);
  outline-offset:2px;
}

/* ========== UTILITIES ========== */
.container{max-width:1200px;margin:auto;padding:0 16px}
.section{padding:48px 0;}
h2{font-size:28px;margin-bottom:16px}
h3{font-size:20px;margin-bottom:8px}
.btn{
  display:inline-block;
  padding:12px 20px;
  border-radius:4px;
  transition:.3s;
}
.btn-primary{background:var(--primary-color);color:#fff}
.btn-primary:hover{background:#062b5a;transform:translateY(-2px)}
.badge{background:var(--accent-color);color:#fff;padding:2px 6px;font-size:12px}


/* ========== HEADER ========== */
header{
  position:sticky;
  top:0;
  background:var(--card-bg);
  z-index:19;
  border-bottom:2px solid var(--primary-color);
}
.header-grid{
  display:grid;
  grid-template-columns:70px 1fr;
  gap:16px;
  padding:16px 0
}

/* ========== HERO ========== */
.hero{
  background:linear-gradient(
    135deg,
    var(--strip-bg),
    var(--card-bg)
  );

  padding: 0
}
.hero h1{font-size:36px}
.hero p{max-width:600px;margin:12px 0 20px}

/* ========== QUICK ACTIONS ========== */
.quick-actions{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:24px
}
.action-card{
  border:1px solid var(--border-color);
  padding:24px;
  border-radius:8px;
  transition:.3s;
  background:var(--card-bg);
}
.action-card:hover{
  transform:translateY(-6px);
  box-shadow:0 8px 20px rgba(0,0,0,.1)
}

/* ========== STATS ========== */
.stat{font-size:32px;font-weight:bold}

.stats {
    text-align:center;
}

.stats-grid {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 16px;  /* slightly reduced */
}

.stats-grid > div {
    padding: 0px !important;
}

.stat-card {
    background: rgba(255,255,255,0.08);
    padding: 22px 15px;   /* reduced from 35px */
    border-radius: 12px;
    text-align: center;
    color: #fff;
    transition: 0.3s ease;
    min-height: 110px;   /* control height */
}

.stat-number {
    font-size: 32px;   /* reduced from 42px */
    font-weight: 700;
    line-height: 1.1;
}

.stat-label {
    margin-top: 6px;
    font-size: 14px;   /* reduced */
    opacity: 0.9;
}

@media (max-width: 1200px) {
    .stats-grid {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 768px) {
    .stats-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 480px) {
    .stats-grid {
        grid-template-columns: 1fr;
    }
}


/* ========== COMPONENTS ========== */
.cards{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
  gap:24px
}
.card{
  border:1px solid var(--border-color);
  padding:16px;
  border-radius:8px;
  transition:.3s
}
.card:hover{
  transform:translateY(-4px);
  box-shadow:0 6px 16px rgba(0,0,0,.08)
}

/* ========== ELIGIBILITY STEPS ========== */
.steps{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(200px,1fr));
  gap:24px
}
.step{
  background:var(--secondary-color);
  padding:24px;
  border-radius:8px
}

/* ========== NEWS ========== */
.news li{
  margin-bottom:12px
}

/* Section-level background (kept as approved) */
.updates-media-section {
    background: var(--panel-bg);   /* or gradient / light grey already approved */
}

/* ========== LEADERSHIP ========== */
.leadership{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(200px,1fr));
  gap:24px
}
.leader{
  background:var(--secondary-color);
  padding:24px;
  text-align:center;
  border-radius:8px
}

@media(min-width:768px){
  .whatsnew-grid{
    grid-template-columns:1.1fr .9fr
  }
}

.news-date{
  display:block;
  font-size:13px;
  color:rgba(0,0,0,.6)
}

.impact-avatar{
  width:52px;
  height:52px;
  border-radius:50%;
  background:var(--primary-color);
  color: #fff;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:20px;
  flex-shrink:0
}

/* ================= IMPACT STORIES ================= */
.impact-stories{
  background:var(--card-bg);
  border-left:4px solid var(--primary-color);
  padding:14px;
}

.impact-rotator{
  position:relative;
  min-height:120px;
}

.impact-item{
  position:absolute;
  inset:0;
  opacity:0;
  transition:opacity 1.2s ease;
}

.impact-item.active{
  position:relative;
  opacity:1;
}

/* ========== PM VIKAS INFOGRAPHIC FLOW ========== */

.vikas-flow{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:center;
  gap:16px;
  margin:40px 0
}

.flow-step{
  width:180px;
  padding:20px;
  border-radius:10px;
  text-align:center;
  color:var(--text-color);
  transition:.3s
}

.flow-step:hover{
  transform:translateY(-6px)
}

.flow-step .icon{
  font-size:32px;
  display:block;
  margin-bottom:8px
}

.flow-step p{
  font-size:14px;
  margin-top:6px
}

.flow-arrow{
  font-size:28px;
  color:#999
}

/* COLOR PALETTE (GOV-SAFE) */
.color-1{background:#1976D2}
.color-2{background:#2E7D32}
.color-3{background:#EF6C00}
.color-4{background:#6A1B9A}
.color-5{background:#455A64}

/* ELIGIBILITY */
.vikas-eligibility{
  text-align:center;
  margin-top:32px
}

.eligibility-tags{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:12px;
  margin-top:12px
}

.eligibility-tags span{
  background:var(--secondary-color);
  border:1px solid var(--border-color);
  padding:8px 14px;
  border-radius:20px;
  font-size:14px
}

/* ACTIONS */
.vikas-actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:16px;
  margin-top:32px
}

.btn-outline{
  border:1px solid var(--primary-color);
  color: var(--primary-color);
  background:var(--card-bg);
}



/* ========== FOOTER ========== */
footer{
  background:var(--secondary-color);
  font-size:14px
}
footer ul{list-style:none;margin-bottom:16px}
footer li{margin-bottom:8px}

/* ========== ANIMATION ==========
.reveal{opacity:0;transform:translateY(40px);transition:.6s}
.reveal.active{opacity:1;transform:none} */

/* ============================================= */
/* MODERN CLEAN DROPDOWN STYLE                  */
/* ============================================= */

.dropdown-menu{
  border:none;
  border-radius:10px;
  padding:8px;
  margin-top:0;
  box-shadow:var(--shadow-strong);;
  background:var(--card-bg);
  min-width:220px;
}

.dropdown-item{
  border-radius:6px;
  padding:8px 14px;
  font-size:14px;
  transition:all .2s ease;
}

.dropdown-item:hover{
  background:var(--panel-bg);
  padding-left:18px;
}


/* ===== ADD-ON: ABOUT US ===== */
.about-addon{
  background:var(--panel-bg);
  border:1px solid var(--border-color);
  border-radius:8px;
  padding:24px;
}

/* ===== ADD-ON: THOUGHT OF THE DAY ===== */
.thought-addon{
  background:var(--strip-bg);
  text-align:center;
  font-style:italic;
}
.thought-addon small{
  display:block;
  margin-top:8px;
  font-size:14px;
  color:rgba(0,0,0,.6);
}

/* ===== ADD-ON: MEDIA ===== */
.media-addon-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:var(--space-md);
}
.media-addon-card{
  border:1px solid var(--border-color);
  padding:var(--space-md);
  text-align:center;
  border-radius:8px;
  background:var(--card-bg);
}


/* ===== ADD-ON: LEADERSHIP + MEDIA COMBINED ===== */
.leadership-media-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:32px;
}
@media(min-width:992px){
  .leadership-media-grid{
    grid-template-columns:1fr 1fr;
    align-items:flex-start;
  }
}

/* LEADERSHIP PANEL */
.leadership-panel{
  background:var(--secondary-color);
  border:1px solid var(--border-color);
  border-radius:8px;
  height:100%;
}
.leadership-panel .leader{
  margin-bottom:16px;
}

.media-tabs{
  display:flex;
  gap:8px;
  margin-bottom:16px;
  flex-wrap:wrap;
}
.media-tabs button{
  border:1px solid var(--primary-color);
  background:var(--card-bg);
  padding:8px 14px;
  cursor:pointer;
}
.media-tabs button.active{
  background:var(--primary-color);
  color:var(--text-color);
}
.media-tab-content{
  display:none;
}
.media-tab-content.active{
  display:block;
}
.media-item{
  padding:12px;
  border-bottom:1px solid var(--border-color);
  font-size:14px;
}
.media-item:last-child{
  border-bottom:none;
}

.footer-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:var(--space-md);
  padding:40px 0;
}

@media(min-width:768px){
  .footer-grid{
    grid-template-columns:2fr 1fr 1fr;
  }
}

.footer-section h4{
  font-size:16px;
  margin-bottom:12px;
}
.footer-section ul{
  list-style:none;
}
.footer-section li{
  margin-bottom:8px;
}

.footer-bottom{
  border-top:1px solid rgba(255,255,255,.3);
  padding:16px 0;
  font-size:13px;
  text-align:center;
}

/* ===== ADD-ON: ABOUT + THOUGHT COMPACT BLOCK ===== */
.about-thought-wrap{
  display:grid;
  grid-template-columns:1fr;
  gap:32px;
}

@media(min-width:992px){
  .about-thought-wrap{
    grid-template-columns:2fr 1fr;
    align-items:stretch;
  }
}

/* ABOUT PANEL */
.about-compact{
  background:var(--panel-bg);
  border:1px solid var(--border-color);
  border-radius:8px;
  height:100%;
}

/* THOUGHT PANEL */
.thought-compact{
  background:var(--strip-bg);
  border:1px solid #cfd8dc;
  border-radius:8px;
  padding:18px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  text-align:center;
  font-style:italic;
}

.thought-compact small{
  margin-top:12px;
  font-size:14px;
  color:rgba(0,0,0,.6);
}



/* ========================================================= */
/* MEDIA PHOTO CAROUSEL (BOOTSTRAP SAFE)                     */
/* ========================================================= */

.carousel-control-prev,
.carousel-control-next{
  width:8%;
}

.carousel-control-prev-icon,
.carousel-control-next-icon{
  background-color:rgba(0,0,0,0.6);
  border-radius:50%;
}

/* ========================================================= */
/* MEDIA SECTION – CONSISTENT 3D THEME                       */
/* ========================================================= */

.media-panel{
  background:var(--secondary-color);
  border-radius:14px;
  box-shadow:
    var(--shadow-soft),
    inset 0 1px 0 rgba(255,255,255,0.9);
}

.media-panel .media-tabs{
  background:var(--card-bg);
  border-radius:10px;
  box-shadow:0 2px 6px rgba(0,0,0,0.08);
}

.media-tab-content{
  background:var(--card-bg);
  border-radius:10px;
  padding:16px;
  box-shadow:0 2px 6px rgba(0,0,0,0.08);
}

/* ========================================================= */
/* STATS SECTION – SUBTLE 3D ELEVATION                       */
/* ========================================================= */

.stats{
  background: var(--primary-color);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.15),
    var(--shadow-soft);
  color: #fff;
}

.stats-grid > div{
  background:rgba(255,255,255,0.08);
  border-radius:10px;
  padding:20px 12px;
  box-shadow:0 4px 10px rgba(0,0,0,0.2);
}

/* Separate carousel from footer */
#govLinksCarousel {
  margin-bottom: 0;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}

/* ===================== */
/* GOV FOOTER – REDESIGN */
/* ===================== */

.gov-footer{
  background: var(--secondary-color);
  border-top: 4px solid var(--primary-color);
  font-size: 14px;
  color: var(--text-color);
  margin-top: 0 !important;
  padding-top: 0 !important;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

/* MAIN GRID */
.footer-main-grid{
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 40px;
  padding: 32px 0;
}

/* BRAND */
.footer-brand h4{
  font-size: 16px;
  margin-bottom: 10px;
  color: var(--primary-color);
}

.footer-brand p{
  color:var(--text-color);
  line-height: 1.6;
  max-width: 520px;
}

/* LINKS */
.footer-links h5,
.footer-compliance h5{
  font-size: 15px;
  margin-bottom: 12px;
  color: var(--text-color);
}

.footer-links ul,
.footer-compliance ul{
  list-style: none;
  padding: 0;
  margin: 0;
}

.footer-links li{
  margin-bottom: 8px;
}

.footer-links a{
  color: var(--primary-color);
  text-decoration: none;
}

.footer-links a:hover{
  text-decoration: underline;
}

.footer-links-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;   /* two equal columns */
    gap: 0px 0px;                     /* small vertical gap */
}

.footer-link-item {
    font-size: 14px;
    color:var(--text-color);
    text-decoration: none;
    padding: 2px 0;
    display: block;
}

.footer-link-item:hover {
    text-decoration: underline;
}

@media (max-width: 768px) {
    .footer-links-grid {
        grid-template-columns: 1fr;
    }
}

/* COMPLIANCE */
.compliance-list li{
  margin-bottom: 8px;
  color: var(--text-color);
}

/* BOTTOM STRIP */
.footer-bottom{
  border-top: 1px solid #cfd8dc;
  padding: 8px 0 10px;
  text-align: center;
  font-size: 13px;
  color: var(--text-color);
}

.footer-bottom p{
  margin: 6px 0;
}

.footer-bottom strong{
  color: var(--primary-color);
}

.last-updated{
  margin-top: 8px;
  font-size: 13px;
  color: rgba(0,0,0,.6);
}

/* RESPONSIVE */
@media (max-width: 992px){
  .footer-main-grid{
    grid-template-columns: 1fr;
    gap:var(--space-md);
  }

  .footer-brand p{
    max-width: 100%;
  }
}


/* ================= GOV LINKS BASE ================= */

#govLinksSection{
  background:linear-gradient(180deg,#2b333a,#1f262c);
  padding:28px 16px;
}

.gov-links-wrapper{
  max-width:1200px;
  margin:auto;
}

.gov-links-list{
  list-style:none;
  margin:0;
  padding:18px;
  display:flex;
  gap:18px;
  background:linear-gradient(180deg,#263238,#1e272d);
  border-radius:14px;
  box-shadow:var(--shadow-soft);
}

/* Logo tile */
.gov-links-list li{
  background:linear-gradient(180deg,#37474f,#263238);
  border-radius:12px;
  padding:14px 18px;
  box-shadow: var(--shadow-soft);
}

/* Logo image */
.gov-links-list img{
  max-height:56px;
  display:block;
  margin:auto;
}

/* ================= DESKTOP ================= */
/* Show all 6 at once */
@media (min-width:992px){
  .gov-links-list{
    justify-content:center;
    flex-wrap:nowrap;
  }
  .gov-links-list li{
    flex:0 0 16.66%;
    text-align:center;
  }
}

/* ================= MOBILE ================= */
/* Swipe carousel */
@media (max-width:991px){
  .gov-links-list{
    overflow-x:auto;
    scroll-snap-type:x mandatory;
    -webkit-overflow-scrolling:touch;
  }
  .gov-links-list::-webkit-scrollbar{
    display:none;
  }
  .gov-links-list li{
    flex:0 0 auto;
    scroll-snap-align:center;
  }
}

/* Small mobile */
@media (max-width:576px){
  .gov-links-list img{
    max-height:42px;
  }
}

/* DESKTOP GRID */
.gov-links-grid{
  display:grid;
  grid-template-columns:repeat(6,1fr);
  gap:var(--space-md);
  list-style:none;
  background:linear-gradient(180deg,#263238,#1e272d);
  border-radius:16px;
}

.gov-links-grid li{
  background:#37474f;
  border-radius:12px;
  padding:16px;
  display:flex;
  align-items:center;
  justify-content:center;
}

.gov-links-grid img{
  max-height:56px;
}

/* MOBILE TILE */
.gov-logo-tile{
  background:#37474f;
  border-radius:14px;
  padding:24px;
  display:flex;
  justify-content:center;
}
/* ===================================================== */
/* GOV LINKS – DARK 3D BACKGROUND (DESKTOP + MOBILE)     */
/* ===================================================== */

.gov-links-3d-wrap{
  background:linear-gradient(180deg,#2b333a,#1f262c);
  padding: 10px !important;
  padding-top: 30px !important;
}

.gov-links-grid{
  padding-bottom: 0;
}

/* LOGO TILE */
.gov-links-grid li,
.gov-logo-tile{
  background:linear-gradient(180deg,#37474f,#263238);
  border-radius:14px;
  display:flex;
  align-items:center;
  justify-content:center;
  box-shadow:
    var(--shadow-soft),
    inset 0 1px 0 rgba(255,255,255,0.08);
}

/* LOGO */
.gov-links-grid img,
.gov-logo-tile img{
  max-height:56px;
  width:auto;
}

/* HOVER (DESKTOP ONLY) */
@media (hover:hover){
  .gov-links-grid li:hover{
    transform:translateY(-3px);
    box-shadow: var(--shadow-soft);
  }
}

/* ========================================================= */
/* GOVERNMENT HEADER – ALIGNMENT + 3D AUTHORITY LOOK         */
/* ========================================================= */

/* Top strip */
.gov-strip{
  background:var(--panel-bg);
  border-bottom:1px solid #d0d7de;
  font-size:14px;
  position:relative;   /* IMPORTANT */
  z-index:auto;
}

.gov-strip-inner{
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:6px 0;
}

.gov-tools button{
  margin-right:4px;
  border:1px solid #999;
  background:var(--card-bg);
  padding:2px 6px;
  cursor:pointer;
}

/* Main header */
.gov-header{
  position:sticky;
  top:0;
  z-index:10;
  background:var(--card-bg);
  background:linear-gradient(180deg,#ffffff,#f1f4f8);
  box-shadow:
    0 6px 16px rgba(0,0,0,0.12),
    inset 0 1px 0 rgba(255,255,255,0.9);
}

/* ========================================================= */
/* GOV HEADER – INDIA.GOV.IN ALIGNMENT                       */
/* ========================================================= */

.gov-header-inner{
  display:flex;
  align-items:center;
  gap:22px;
  padding:16px 0;
}

.gov-emblem img{
  height:72px;
  width:auto;
}

.gov-title h1{
  font-size:32px;
  font-weight:700;
  margin:0;
  color:var(--text-color);
}

.gov-title h1 span{
  color: var(--primary-color);
}

.gov-title p{
  margin-top:4px;
  font-size:15px;
  color:rgba(0,0,0,.6);
  font-weight:500;
}


/* Responsive */
@media(max-width:768px){
  .gov-header-inner{
    flex-direction:column;
    align-items:flex-start;
  }

  .gov-title h1{
    font-size:26px;
  }

  .gov-emblem img{
    height:64px;
  }
}

/* ========================================================= */
/* HEADER SHADOW – ONLY ON SCROLL                            */
/* ========================================================= */

.gov-header{
  transition:box-shadow .3s ease;
}

.gov-header.scrolled{
  box-shadow:
    0 10px 22px rgba(0,0,0,0.18),
    inset 0 1px 0 rgba(255,255,255,0.85);
}

/* ========================================================= */
/* PRINT + ACCESSIBILITY (GIGW COMPLIANT)                   */
/* ========================================================= */

/* Print */
@media print{
  .navbar,
  .gov-strip{
    display:none !important;
  }

  .gov-header{
    box-shadow:none !important;
    background:var(--card-bg);
  }

  body{
    color:#000;
  }
}

/* Focus visibility */
a:focus-visible,
button:focus-visible{
  outline:3px solid var(--accent-color);
  outline-offset:3px;
}

/* Reduce motion for accessibility */
@media (prefers-reduced-motion: reduce){
  *{
    animation:none !important;
    transition:none !important;
  }
}

/* ========================================================= */
/* HEADER TOOLS (LANGUAGE + ACCESSIBILITY)                   */
/* ========================================================= */

.gov-tools{
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom:6px;
  font-size:14px;
}

.gov-tools a{
  color: var(--primary-color);
  font-weight:500;
}

.gov-tools a:hover{
  text-decoration:underline;
}

/* Container */
.whats-new-box {
    background:var(--card-bg);
    min-height: 220px;
    border-radius: 12px;
}

.news-window {
    min-height: 210px;
    overflow-y: auto;
}


/* Title styling */
.news-title {
    font-size: 18px;
    line-height: 1.6;
    color: var(--primary-color);
}

/* NEW badge */
.badge-new {
    display: inline-block;
    background:var(--accent-color);
    color:#fff;
    font-size: 12px;
    font-weight: 600;
    padding: 3px 8px;
    border-radius: 20px;
    margin-right: 8px;
}


/* Fade animation */
.news-row.fade-out {
    opacity: 0;
}
/* ============================= */
/* DROPDOWN IDENTIFIER – FIXED   */
/* ============================= */

/* Prevent separator from appearing on dropdown parents */
.navbar-nav .dropdown::after{
  display:none !important;
}


/* ===================================== */
/* REMOVE BOOTSTRAP DROPDOWN TRIANGLE    */
/* ===================================== */

.navbar .dropdown-toggle::after{
  display:none !important;
  content:none !important;
  bottom:4px;        /* was 6px – reduces overlap */
}

/* Clean alignment */
.navbar .dropdown-toggle{
  padding-right:10px;
  display:inline-block;
  white-space:nowrap;
}

/* ================================================= */
/* STICKY SITE HEADER (NOT GOV STRIP)                */
/* ================================================= */

.site-header{
  position:sticky;
  top:0;
  background:var(--card-bg);
  z-index:10;
  border-bottom:1px solid #e0e0e0;
}

.header-flex{
  display:flex;
  align-items:center;
  gap:20px;
  padding:16px 0;
}

.header-emblem img{
  height:80px;
}

.header-title-wrap{
  flex:1;
}

.site-header h1{
  font-size:25px;
  margin:4px 0;
  font-weight:700;
  color:var(--text-color);
}

.scheme-short{
  font-weight:600;
}

.ministry-name{
  font-size:16px;
  color:var(--text-color);
  margin-bottom: 0px !important;
}

/* ========================================= */
/* HEADER ACCESSIBILITY TOOLS – RIGHT SIDE   */
/* ========================================= */

.header-tools{
  display:flex;
  align-items:center;
  gap:8px;
  font-size:14px;

  margin-left:auto;        /* PUSH TO RIGHT */
  justify-content:flex-end;
}

/* Font buttons compact */
.font-btn{
  background:var(--card-bg);
  border:1px solid #bbb;
  padding:2px 6px;
  font-size:12px;
  line-height:1;
}

/* On scroll – slightly tighter */
.site-header.scrolled .font-btn{
  padding:1px 5px;
  font-size:11px;
}


.font-btn:hover{
  background:var(--primary-color);
  color:var(--text-color);
}

.lang-switch a{
  font-weight:500;
  color: var(--primary-color);
}

.accessibility-link{
  border:1px solid var(--primary-color);
  padding:2px 6px;
  border-radius:4px;
  font-size:13px;
}
@media print{
  .header-tools,
  .navbar,
  .gov-strip{
    display:none;
  }
}

/* ============================================ */
/* HEADER TOOLS – HIDDEN INITIALLY               */
/* ============================================ */

.header-title-wrap{
  position:relative; /* anchor */
}

/* Tools container */
.header-tools-scroll{
  position:absolute;
  right:0;
  top:0;
  display:flex;
  align-items:center;
  gap:10px;

  opacity:0;
  visibility:hidden;
  transform:translateY(-6px);
  transition:all .3s ease;

  pointer-events:none;
}

/* Visible ONLY after scroll */
.site-header.scrolled .header-tools-scroll{
  opacity:1;
  visibility:visible;
  transform:translateY(0);
  pointer-events:auto;
}

/* ===== MENU SEPARATOR | (DESKTOP ONLY) ===== */
@media (min-width:992px){

  .navbar-nav .nav-item{
    position:relative;
  }

  .navbar-nav .nav-item:not(:last-child)::after{
    content:"";
    position:absolute;
    right:-2px;
    top:50%;
    transform:translateY(-50%);
    color:rgba(255,255,255,0.6);
    font-size:14px;
    pointer-events:none;
  }

  /* Extra spacing so text doesn't touch | */
  .navbar-nav .nav-link{
    padding-right:10px;
    padding-left:10px;
  }
}
/* ========================================= */
/* LOGIN DROPDOWN – BLOCK STYLE (NO MODAL)   */
/* ========================================= */

/* Individual login option */
.login-menu .dropdown-item{
  display:flex;
  gap:12px;
  align-items:flex-start;
  padding:12px 14px;
  border-radius:8px;
  white-space:normal;
}

/* Hover & focus */
.login-menu .dropdown-item:hover,
.login-menu .dropdown-item:focus{
  background:var(--panel-bg);
}

/* Icon */
.login-icon{
  font-size:22px;
  line-height:1;
  margin-top:2px;
}

/* Text */
.login-menu strong{
  font-size:15px;
  color: var(--primary-color);
}

.login-menu small{
  font-size:13px;
  color:rgba(0,0,0,.6);
}

/* Mobile full width */
@media (max-width:576px){
  .login-dropdown .dropdown-menu{
    min-width:100%;
  }
}

.login-dropdown .dropdown-menu,
.register-dropdown .dropdown-menu{
  min-width:320px;
  padding:8px;
  border-radius:10px;
  border:1px solid #d0d7de;
  box-shadow:0 12px 28px rgba(0,0,0,0.18);
}

/* Leadership panel */
.leaders-list {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.leader-card {
    display: flex;
    align-items: center;
    gap: 12px;
    background:var(--panel-bg);
    padding: 10px;
    border-radius: 6px;
}

.leader-img img {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    object-fit: cover;
}

.leader-info strong {
    display: block;
    font-size: 14px;
    color: var(--primary-color);
}

.leader-info small {
    font-size: 12px;
    color: rgba(0,0,0,.6);
}

/* ================= MEDIA PHOTO CAROUSEL (FINAL) ================= */
.media-carousel{
  aspect-ratio:16/9;
  max-height:420px;
  background:#000;
  margin-bottom:20px;
}

.media-carousel .carousel-inner,
.media-carousel .carousel-item{
  height:100%;
}

.media-photo-img{
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
  background:#000;
}

/* ================= THOUGHT STRIP ================= */
.thought-strip{
  background:var(--strip-bg);
  border-top:1px solid #dbe5f0;
  border-bottom:1px solid #dbe5f0;
  padding:10px 0;
}

.thought-strip-inner{
  position:relative;
}

.thought-item{
  position:absolute;
  inset:0;
  opacity:0;
  transition:opacity 1.2s ease;
  text-align:center;
  color: var(--primary-color);
}

.thought-item.active{
  position:relative;
  opacity:1;
}

/* Active thought only takes space */
.thought-item.active {
    position: relative;
    opacity: 1;
}

/* Quote text */
.thought-item p {
    margin: 0;
    font-size: 1.05rem;
    line-height: 1.4;
}

/* Author */
.thought-item small {
    display: block;
    margin-top: 6px;
    font-size: 0.95rem;
    font-weight: 600;
}
/* IMPORTANT NEWS STRIP */
.important-news-strip {
    background:var(--danger-bg); /* Govt red */
    color: #fff;
    padding: 6px 0;
    font-weight: 600;
    position: relative;
    z-index: 99;
}

.important-news-inner {
    display: flex;
    align-items: center;
    gap: 12px;
}

.important-label {
    background:var(--card-bg);
    color: var(--danger-bg);
    padding: 4px 10px;
    font-size: 0.8rem;
    border-radius: 3px;
    white-space: nowrap;
}

.important-news-marquee {
    overflow: hidden;
    white-space: nowrap;
    flex: 1;
}

@media (prefers-reduced-motion: reduce){
  .important-news-marquee a{
    animation:none;
    padding-left:0;
  }
}

.important-news-marquee a {
    display: inline-block;
    padding-left: 100%;
    animation: scroll-left 18s linear infinite;
    color:#fff;
    text-decoration: none;
}

@keyframes scroll-left {
    0% { transform: translateX(0); }
    100% { transform: translateX(-100%); }
}

/* Pause on hover (accessibility) */
.important-news-marquee a:hover {
    animation-play-state: paused;
    text-decoration: underline;
}

.updates-media-grid {
    display: grid;
    grid-template-columns: 1.1fr 0.9fr;
    gap:var(--space-md);
}

/* UPDATES */
.news-list li,
.press-list li {
    margin-bottom: 8px;
    font-size: 0.95rem;
}

/* IMPACT STORIES */
.impact-stories {
    background:var(--card-bg);
    border-left: 4px solid var(--primary-color);
    padding: 14px;
}

.impact-rotator {
    position: relative;
    min-height: 120px;
}

.impact-item {
    position: absolute;
    inset: 0;
    opacity: 0;
    transition: opacity 1.2s ease-in-out;
}

.impact-item.active {
    position: relative;
    opacity: 1;
}

.impact-text {
    font-size: 0.95rem;
    color: var(--text-color);
    margin: 0 0 8px 0;
}

.impact-author strong {
    color: var(--primary-color);
    font-size: 0.9rem;
}

.impact-author small {
    font-size: 0.8rem;
    color:var(--text-color);
    opacity:.7;
}

/* LIST */
.news-list-vertical {
    list-style: circle;
    margin: 0;
}

.gov-header{
  position: sticky;
  top: 0;
}

.site-header.scrolled .header-tools{
  gap:6px;
}

.site-header.scrolled .accessibility-link{
  padding:1px 4px;
  font-size:12px;
}


/* ================= NAVBAR (FINAL CANONICAL) ================= */
.navbar{
  position:relative;
  top: auto;
  z-index:9;
  background: var(--primary-color) !important;
  min-height:48px;
  padding:0;
}

.navbar-nav .nav-link{
  color: #fff;
  padding:10px 18px;
  font-size:15px;
  font-weight:500;
  position:relative;
}

/* underline */
.navbar-nav .nav-link::after{
  content:"";
  position:absolute;
  left:18px;
  bottom:6px;
  width:0;
  height:2px;
  background:var(--accent-color);
  transition:width .3s ease;
}

.navbar-nav .nav-link:hover::after,
.navbar-nav .nav-link.active::after{
  width:calc(100% - 36px);
}

/* ========================================= */
/* HEADER COMPACT MODE ON SCROLL              */
/* ========================================= */

/* Smooth transition */
.site-header,
.header-emblem img,
.site-header h1,
.ministry-name,
.navbar{
  transition: all 0.3s ease;
}

/* Compact header */
.site-header.scrolled{
  padding: 4px 0;
}

/* Emblem shrink */
.site-header.scrolled .header-emblem img{
  height: 56px;
}

/* Title shrink */
.site-header.scrolled h1{
  font-size: 20px;
  margin: 2px 0;
}

/* Ministry text shrink */
.site-header.scrolled .ministry-name{
  font-size: 13px;
}

/* Navbar compact */
.site-header.scrolled + .navbar,
.gov-header.scrolled .navbar{
  min-height: 40px;
}

/* Reduce internal padding on scroll */
.site-header.scrolled .header-flex{
  padding: 6px 0;
}

/* Navbar link spacing */
.site-header.scrolled + .navbar .nav-link,
.gov-header.scrolled .navbar .nav-link{
  padding: 8px 16px;
  font-size: 14px;
}

/* ========================================= */
/* TEXT STRIPS – COMPACT ON SCROLL            */
/* ========================================= */

/* Smooth transition */
.important-news-strip,
.thought-strip{
  transition: padding 0.3s ease, font-size 0.3s ease;
}

body.scrolled .important-news-strip{
  padding: 2px 0;
  font-size: 0.85rem;
}

body.scrolled .important-news-strip .important-label{
  padding: 2px 8px;
  font-size: 0.7rem;
}

body.scrolled .thought-strip{
  padding: 4px 0;
}

body.scrolled .thought-strip p{
  font-size: 0.9rem;
}


/* THOUGHT strip compact */
.gov-header.scrolled ~ .thought-strip{
  padding: 4px 0;
}

.gov-header.scrolled ~ .thought-strip p{
  font-size: 0.9rem;
  line-height: 1.3;
}

.gov-header.scrolled ~ .thought-strip small{
  font-size: 0.8rem;
}

/* ===================================================== */
/* MOBILE FIX: UPDATES + MEDIA LAYOUT                    */
/* ===================================================== */

@media (max-width: 767px){

  /* Stack layout */
  .updates-media-grid{
    grid-template-columns: 1fr !important;
    gap: 20px;
  }

  /* Ensure proper order */
  .whats-new-box{
    order: 1;
  }

  .media-impact-panel{
    order: 2;
  }

  .impact-stories{
    order: 3;
    margin-top: 12px;
  }

  /* Media carousel should NOT force height */
  .media-carousel{
    height: auto;
    min-height: 240px;
  }

  .media-carousel .carousel-inner,
  .media-carousel .carousel-item{
    height: auto;
  }

  /* News text readability */
  .news-row{
    font-size: 0.95rem;
  }

  /* Section heading spacing */
  .updates-media-section h2{
    font-size: 22px;
    margin-bottom: 12px;
  }

  .updates-media-section h3{
    font-size: 18px;
    margin-bottom: 10px;
  }
}

/* ================= INNER PAGE ================= */

/* Banner */
.inner-hero{
  height: 120px;
  background-size: cover;
  background-position: center;
  position: relative;
}

.inner-hero-overlay{
  position:absolute;
  inset:0;
  background:linear-gradient(
    rgba(0,0,0,0.55),
    rgba(0,0,0,0.35)
  );
  display:flex;
  align-items:center;
}

.inner-title{
  color: #fff;
  font-size:28px;
  font-weight:700;
  margin:0;
}

/* Breadcrumb */
.inner-breadcrumb{
  background:var(--panel-bg);
  border-bottom:1px solid #e0e6ed;
  padding:10px 0;
}

.inner-breadcrumb .breadcrumb{
  background:none;
  padding:0;
  margin:0;
  font-size:14px;
}

.inner-breadcrumb a{
  color: var(--primary-color);
  font-weight:500;
}

.content-card{
  background:var(--card-bg);
  border:1px solid var(--border-color);
  border-radius:8px;
  box-shadow:var(--shadow-soft);
}

/* CMS content safety */
.content-card img{
  max-width:100%;
  height:auto;
}

.content-card table{
  width:100%;
  border-collapse:collapse;
}

.content-card table td,
.content-card table th{
  border:1px solid var(--border-color);
  padding:8px;
}

/* Mobile */
@media(max-width:768px){
  .inner-hero{
    height: 160px;
  }

  .inner-title{
    font-size:22px;
  }

  .content-card{
    padding:16px;
  }
}

/* ================= INNER PAGE – FORMS ================= */

.page-sub-title{
  font-size:20px;
  font-weight:600;
  margin-bottom:12px;
  color: var(--primary-color);
}

.grievance-card{
  max-width:820px;
  margin:auto;
}

.grievance-card .form-label{
  font-weight:600;
  font-size:14px;
}

.grievance-card .form-control{
  height:44px;
  font-size:14px;
}

@media(max-width:768px){
  .page-sub-title{
    font-size:18px;
  }
}
/* ================= GRIEVANCE DETAILS ================= */

.grievance-card{
  max-width:900px;
  margin:auto;
}

.grievance-table th{
  width:35%;
  background:var(--panel-bg);
  font-weight:600;
  font-size:14px;
}

.grievance-table td{
  font-size:14px;
}

/* Status badges */
.status-badge{
  display:inline-block;
  padding:4px 10px;
  border-radius:12px;
  font-size:13px;
  font-weight:600;
}

.status-registered{
  background:var(--info-bg);
  color:var(--info-text);
}

.status-resolved{
  background:var(--success-bg);
  color:var(--success-text);
}

.status-progress{
  background:var(--warning-bg);
  color:var(--warning-text);
}

.status-unknown{
  background:var(--error-bg);
  color:var(--error-text);
}

@media(max-width:768px){
  .grievance-table th{
    width:45%;
  }
}

.footer-meta {
    display: flex;
    gap: 20px;
    flex-wrap: wrap;
}

.meta-item {
    display: flex;
    flex-direction: column;
    font-size: 14px;
}

.meta-item i {
    margin-bottom: 4px;
}

.login-menu .dropdown-item{
    padding:16px;
    border-radius:12px;
}

.login-menu .dropdown-item:hover{
    background:#e9eef5;
}


/* ========================================= */
/* LEADERSHIP + THOUGHT INTEGRATION          */
/* ========================================= */

.leadership-thought{
    margin-top:10px;
    padding-top:10px;
    border-top:1px solid #dbe3ee;
    text-align:center;
    position:relative;
}

/* Label */
.leadership-quote-label{
    font-size:14px;
    font-weight:600;
    letter-spacing:.5px;
    color: var(--primary-color);
    margin-bottom:10px;
    text-transform:uppercase;
}

/* Quote container */
.leadership-quote-item{
    display:none;
    font-style:italic;
    font-size:0.95rem;
    line-height:1.6;
    color:var(--text-color);
    max-width:320px;
    margin:0 auto;
    position:relative;
    padding:0 10px;
}

/* Decorative quotes */
.leadership-quote-item::before{
    content:"❝";
    font-size:32px;
    color: var(--primary-color);
    opacity:.15;
    position:absolute;
    left:0;
    top:-10px;
}

.leadership-quote-item::after{
    content:"❞";
    font-size:32px;
    color: var(--primary-color);
    opacity:.15;
    position:absolute;
    right:0;
    bottom:-10px;
}

.leadership-quote-item.active{
    display:block;
}

.about-compact,
.media-panel,
.whats-new-box,
.content-card,
.leadership-panel{
  padding:24px;
}

.bhashini-plugin-container svg {
  height: 25px !important;
  width: auto !important;
  display: block;
}


/* 🌙 Dark Mode */
.theme-dark{
  --bg-color: #121212;
  --text-color: #ffffff;

  --primary-color: #000000;
  --accent-color: #ffcc00;

  --secondary-color: #1e1e1e;

  --card-bg: #1a1a1a;
  --panel-bg: #1e1e1e;
  --strip-bg: #1a1a1a;

  --border-color: #333333;

  --danger-bg: #ff4444;

  --shadow-soft: none;
  --shadow-strong: none;
}

/* 🟡 High Contrast Yellow */
.theme-yellow{
  --bg-color: #000000;
  --text-color: #ffff00;

  --primary-color: #ffff00;
  --accent-color: #ffff00;

  --secondary-color: #111111;

  --card-bg: #000000;
  --panel-bg: #000000;
  --strip-bg: #000000;

  --border-color: #ffff00;

  --danger-bg: #ff0000;

  --shadow-soft: none;
  --shadow-strong: none;
}

.theme-yellow .navbar-nav .nav-link{
  color:#000;
}

.theme-yellow .navbar{
  background:#ffff00 !important;
}

.theme-yellow .navbar-nav .nav-link::after{
  background:#000;
}


/* 🔵 Blue Contrast */
.theme-blue{
  --bg-color: #eaf3ff;
  --text-color: #002244;

  --primary-color: #003366;
  --accent-color: #ff6600;

  --secondary-color: #d6e6ff;

  --card-bg: #ffffff;
  --panel-bg: #f4f9ff;
  --strip-bg: #ddeeff;

  --border-color: #aaccee;
}


.color-switcher{
  padding: 5px;
}

.color-btn{
  width: 18px;
  height: 18px;
  border: none;
  cursor: pointer;
  border-radius: 4px;
}

.default{ background: linear-gradient(45deg,#0A3C7D,#F57C00); }
.dark{ background:#000; }
.yellow{ background:#ffff00; }
.blue{ background:#003366; }
