/* --- GIGW 3.0 Design Constants (Minimum 4.5:1 Color Contrast Ratio) --- */
:root {
    --primary-color: #490b1a;    /* Compliant Dark Red */
    --text-color: #1a1a1a;       /* Near Black for readability */
    --textw-color: #FFFFFF;       /* Near Black for readability     --accent-color: #d9531e;*/
    --bg-color: #ffffff;
    --light-bg: #f4f6f9;
    --accent-color: #1A365D;	
    --font-base: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
	--heading-color: #cc3200; /* Compliant deep reddish-orange */
}
/* --- Force Root Layout Containers to Expand Edge-to-Edge --- */
html, body {
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
    overflow-x: hidden; /* Prevents unwanted horizontal scrollbars across desktop environments */
}
html {
 // scroll-behavior: smooth;
}
/* Global & Reset Baseline * { box-sizing: border-box; margin: 0; padding: 0; }*/
blockquote {widht:100%; margin:0px;}
body {
    font-family: var(--font-base);
    color: var(--text-color);
    background-color: var(--bg-color);
    line-height: 1.5; /* WCAG Success Criterion 1.4.12 */
    font-size: 1rem;
    transition: background-color 0.2s, color 0.2s;
}
.headingtitle{
text-decoration:none;
color:var(--heading-color);
}
.ullimarginleft {
    margin-left: 50px;
}
.mandatediv ul li{
margin-left:3%;
}
.cecmain_content a{
text-decoration:none;
}
.responseMessage{
margin-top: 10px;
font-weight: bold;
}
.cecmain_content a:hover{
color: var(--accent-color);
}
.logohylink{
text-decoration:none;
color:var(--primary-color);
}
.container {
    width: 90%;
   // max-width: 1200px;
    margin: 0 auto;
}

/* GIGW 3.0: Permanently Visible Skip Link */
.skip-link {
    display: inline-block;
    position: relative;
    background: var(--accent-color, #d9531e);
    color: #ffffff !important;
    padding: 0px 10px 0px 10px;
    text-decoration: none;
    font-weight: bold;
    font-size: 0.9rem;
    border-radius: 4px;
    margin: 10px;
    z-index: 9999;
}

.skip-link:focus {
    outline: 3px solid #ffbf47;
    outline-offset: 2px;
}

/* Keyboard Focus Ring Overrides (GIGW Explicit Visibility Rule) */
a:focus, button:focus, [tabindex="-1"]:focus {
    outline: 3px solid #ffbf47;
    outline-offset: 2px;
}

/* Accessibility Toolbar */
.accessibility-bar {
 display: grid;
//  grid-template-columns: 63% 21% 15%; /* Force 1 full-width column on mobile */
  grid-template-columns: 65% 35%; /* Force 1 full-width column on mobile */
  gap: 12px;                  /* Generates even space between top and bottom blocks */
  padding: 8px 8px;          /* Clean side padding for mobile screens */
  background-color: #490b1a;
  text-align: center;       /* Perfectly centers left and right components vertically */
}
.accessibility-bar a{
	text-decoration:none;
	color:#000;
	white-space: nowrap; 
}
.accessibility-bar a:hover{
	text-decoration:none;
	size:+1;
}
.goindhd{
  color: var(--bg-color, #FFFFFF); 
  display: flex;
  flex-direction: column;     /* Breaks text and time into two clean rows on narrow screens */
  gap: 4px;
  align-items: center;
  flex-direction: row;     
}
.toolbar-flex {
     display: flex;
  justify-content: center;
  color: #FFFFFF;
  width: 100%;
}
.accessibility-bar button{
    background: #490b1a;
    color: #fff;
    border: 1px solid #490b1a;
    cursor: pointer;
    font-size: 0.85rem;
    margin-right: 5px;
	padding:5px;
    margin: 5px;
}
.theme-buttons{
background-color:#000000;
}
/* Header & Identity */
.site-header {
    background: var(--bg-color);
    border-bottom: 3px solid var(--primary-color);
    padding: 15px 0;
    min-height: 207px;
}
.header-flex {
  /*display: flex;*/
    justify-content: space-between;
    align-items: center;
}
.logobottomline{
border-bottom: 1px solid var(--primary-color);
margin: -24px 0px 0px -100px;
width: 112%;
}
.logo-area {
    display: flex;
    align-items: center;
    gap: 5px;
	color:#490b1a;
}
.ceclogoimage{
  width: 182px;
  height: 100px;
  aspect-ratio: 182 / 100;
  display: block; /* Prevents inline alignment shifts */
}
.emblem-placeholder { font-size: 2.5rem; }
.site-title h1 { font-size: 1.4rem; color: var(--primary-color); }
.site-title p { font-size: 0.9rem; color: #555; }

/* Navigation Infrastructure */
.nav-links {
display: inline-flex;
list-style: none;
font-size:1.2em;
flex-wrap: wrap;
margin: 15px 0px 15px 15%;
}
.nav-links li{
	margin:0px 40px 0px 40px;
}
.submenu li{
	margin:0px 0px 0px 0px;
}
.nav-links a {
    color: var(--text-color);
    text-decoration: none;
    font-weight: 600;
    padding: 8px 0;
}
.nav-links a:hover {
    border-bottom: 3px solid var(--primary-color);
    color: var(--primary-color);
}
.menu-toggle { display: none; } /* Hidden on PC/Laptop */

/* Hero Banner */
.hero-section {
    background-color: var(--light-bg);
    padding: 60px 0;
    text-align: center;
}
.hero-section h2 { font-size: 2.2rem; color: var(--primary-color); margin-bottom: 15px; }
.hero-section p { font-size: 1.2rem; margin-bottom: 25px; max-width: 700px; margin-inline: auto; }
.btn-primary {
    display: inline-block;
    background-color: var(--primary-color);
    color: white;
    padding: 12px 24px;
    text-decoration: none;
    font-weight: bold;
    border-radius: 4px;
}

/* Responsive Grid Layout */
.services-grid { padding: 0px 0px 50px 0px; }
.cecservices-grid {
   	padding: 50px 0px 0px 0px;
    background-color: var(--light-bg);
    justify-items: center;
	}
.cecfcontainer{
    background: #fff;
    border: 1px solid #ddd;
    border-radius: 6px;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.05);
    width: 90%;
  }
.cecglancenumber{
    text-align: center;
    font-size: 28px;
    font-weight: 800;
    color: #f3f3f3;
    paint-order: stroke fill;
    letter-spacing: 0px;
    MARGIN: 0PX AUTO;
    background-color: #490b1a;
	padding: 8px;
}
.aboutcectxt{
	padding: 10px 20px 10px 20px;
    text-align: justify;
	line-height: 40px;
}
.section-title { text-align: center; margin-bottom: 35px; color: var(--primary-color); }
.grid-layout {
    display: grid;
    grid-template-columns: repeat(6, 1fr); /* 6 Columns on PC/Laptop */
	box-shadow: 0px 1px 11px 2px #ccc;
	text-align: center;
	gap: 2px;
}
.card {
    background: #fff;
    border: 1px solid #ddd;
    padding: 25px;
    border-radius: 6px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.05);
}
.card h3 { margin-bottom: 12px; color: var(--primary-color); }
.card p { margin-bottom: 20px; color: #000; }
.card-link { color: var(--accent-color); font-weight: bold; text-decoration: none; }
.card-link:hover { color:#0056B3; }
.latestgrid-layout{
    display: grid;
    grid-template-columns: 33% 33% 34%;
	box-shadow: 0px 1px 11px 2px #ccc;
	text-align: left;
	gap: 10px;
}
.latestcard {
    background: #fff;
    border: 1px solid #ddd;
    padding: 25px 25px 10px 25px;
    border-radius: 6px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.05);
}
.latestcard h3 { margin-bottom: 12px; color: var(--primary-color); }
.latestcard p { margin-bottom: 20px; margin-top: 20px; color: #444; //border-bottom:2px ridge #490b1a2e; }
.latestcard-link { color: var(--accent-color); font-weight: bold; text-decoration: none; }
.latestbtn{
    color: var(--primary-color);
    padding: 3px 24px;
    text-decoration: none;
    font-weight: bold;
    border-radius: 4px;
    font-size: 0.8rem;
}
.latestbtn:hover{
    color: var(--accent-color);
}
.latesthddiv{
	display: grid;
	grid-template-columns: repeat(2, 1fr); /* 2 Columns on PC/Laptop */
	border-bottom:2px ridge #490b1a2e;	
}
.latestbtndiv{
	text-align:right;
}
.showreeltitle{
color:#000000;
text-align:center;
font-weight:bold;
}
.showreelvd{
width:95%;
border:2px solid #000000;
}
.aboutshowreelvd{
width:500px;
}
/* Footer background-color:#490b1a;*/
.site-footer { background-color:#000;  color: #fff; padding: 0px; font-size: 0.9rem; margin-top: 0px; box-shadow: 0 2px 5px rgba(0,0,0,0.05);}
.footer-flex {justify-content: space-between; flex-wrap: wrap; gap: 20px; border-bottom:2px ridge #fff;}
.footer-links {border-right:3px ridge #e4cfcf42; margin-bottom:0px}
.footer-links-right {padding: 0px 10px 10px 15px; margin-bottom:30px; justify-items: center;}
.footer-ceclinks {justify-items: center; padding: 10px 10px 10px 15px;}
.footer-links ul { list-style: none; margin: 0px 0px 0px -35px;}
.footer-links a { color: #ccc; text-decoration: none; display: block; margin-bottom: 10px; }
.footer-blinks { margin-bottom: 20px; }
.footer-blinks a { color: #ccc; text-decoration: none; margin: 20px; }
.footer-links a:hover { color: #fff; text-decoration: underline; }
.footer-blinks a:hover { color: #fff; text-decoration: underline; }
.footerupper-grid { display:grid; grid-template-columns:40% 16% 17% 28%; gap:20px;}
.footerlogo-area {display:grid; grid-template-columns:55% 45%; gap:20px; border-right:3px ridge #e4cfcf42;}
.footer-meta {display:grid; grid-template-columns:50% 50%; gap:20px; margin:20px;}
.footer-blinks{text-align: end;}
.socialmediaul {
  display: flex;       /* Forces items into a single line */
  flex-direction: row; /* Aligns them side by side */
  gap: 12px;           /* Creates equal breathing room between each logo */
  list-style: none;    /* Removes default bullet points */
  padding: 15px;          /* Removes default browser list indentation */
  margin: 0;           /* Resets default browser outer margins */
  align-items: center; /* Vertically centers icons if their heights vary slightly */
}
/* Control the size of your social media logos */
.socialmediaul img {
  width: 32px;         /* Perfect standard size for footer social icons */
  height: auto;        /* Keeps icons from stretching distortion */
  display: block;      /* Clears baseline alignment gaps */
  transition: transform 0.2s ease; /* Adds a smooth animation hint */
}
/* Subtle modern hover effect */
.socialmediaul a:hover img {
  transform: scale(1.15); /* Slightly scales up the logo when mouse hovers over it */
}
.copyright-content{
margin:0px 0px 0px 15px;
}
/* CEc logo are  */
.cecshorttitle{
font-size: 4em;
color: #490b1a;
font-weight: bold;
font-family: fantasy;
border-right:1px solid #490b1a;
max-height: 100px;
}
.cecshorttitlevr{
border-right:1px solid #490b1a;
}
.cectitle{
font-weight:bold;
justify-self: left;
}
.cectitlespan{
font-weight:normal;
}
/* End CEc logo are */
.navigationdiv{
margin:20px 0px 20px 0px;
padding:5px 5px 5px 5px;
color:#cc3200;
}
.navigationdiv a{
font-weight:bold;
color:#cc3200;
text-decoration:none;
}
.navigationdiv a:hover{
    color: var(--accent-color);
}
.cecmain_content{
text-align:justify;
padding:20px;
font-size:16px;
line-height:2;
}
.videodirmessage{
float:right;
padding:10px 20px 0px 35px;
}
.submenuleftdiv{
padding:0px 20px 20px 10px;
margin:45px 0px 45px 0px;
text-align:center;
}
.submenuleftdiv ul li{
display:inline-block;
}
.submenuleftdiv ul li a:hover{
font-size:18px;
color:#333333;
//color:#000000; Main Menu Color Trivendra
font-weight:bold;
text-decoration:none;
padding:0px;
margin:0px;
}
.submenuleftdiv ul li a:visited{
font-size:18px;
//color:#000000;
color:#333333;
font-weight:bold;
text-decoration:none;
padding:0px;
margin:0px;
}
/* Latest section */
.latestsection{
	border-bottom:2px ridge #490b1a2e;
	display: grid;	
}
.latestsection a{
text-decoration:none;
color:#000000;
}
.latestsection a:hover{
  color: var(--accent-color);
}
.latestsection a:focus{
outline:none;
}
.latestsectionimg{
float:left;
margin: 0px 15px 15px 5px;
border: 2px #d1d1d18c solid;
padding: 8px;
}
.datelatest1{
margin: 10px 0px 0px 0px;
color:#444;
}
/* Upcoming section */
.upcomingsection{
	border-bottom:2px ridge #490b1a2e;
	display: grid;	
}
.upcomingsection a{
text-decoration:none;
color:#000000;
}
.upcomingsection a:hover{
  color: var(--accent-color);
}
.upcomingsection a:focus{
outline:none;
}
.upcomingsectionimg{
float:left;
margin: 0px 15px 15px 5px;
}
.dateupcoming{
margin: 0px 10px 12px 10px;
color:#ffffff;
background-color:#490b1a;
float:left;
width:25%;
text-align:center;
padding:12px 5px 12px 5px;
}
.upcomingdate{
color:#FFFFFF;
font-size:30px;
font-weight:bold;
}
.placeupcoming{
margin: 10px 0px 0px 0px;
color:#444;
}
/*Media Section */
/* Latest section */
.mediastsection{
border-bottom:2px ridge #490b1a2e;
padding-bottom: 10px;
text-align:justify;
}
.mediasectionimg{
float:left;
margin: 0px 15px 0px 5px;
}
.mediabtn{
    color: var(--primary-color);
    padding: 3px 24px;
    text-decoration: none;
    font-weight: bold;
    border-radius: 4px;
    font-size: 0.8rem;
}
.mediabtn:hover{
    color: var(--accent-color);
}
.mediabtndiv{
	text-align:right;
	padding: 8px;
}
/*Section  number of users */
.numbergrid-layout{
    display: grid;
    grid-template-columns: repeat(4, 1fr); /* 5 Columns on PC/Laptop */
	box-shadow: 0px 1px 11px 2px #ccc;
	text-align: center;
	gap: 2px;
	background-color:#490b1a;
}
.numbercard {    
    border: 1px solid #ddd;
    padding: 25px;
    border-radius: 6px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.05);
}
.numbercard h3 { margin-bottom: 12px; color: var(--textw-color); }
.numbercard-link { color: var(--accent-color); font-weight: bold; text-decoration: none; }
.numbercardbtn{
    color: var(--primary-color);
    padding: 3px 24px;
    text-decoration: none;
    font-weight: bold;
    border-radius: 4px;
    font-size: 0.8rem;
}
.numbercardbtn:hover{
    color: var(--accent-color);
}
.plusdiv{
	font-size: 2rem;
    font-weight: 800;
    color: #ffff00;
    margin: 0;
    line-height: 1;
}
   /* 1. Register a custom CSS property to hold the number */
        @property --num {
            syntax: '<integer>';
            initial-value: 0;
            inherits: false;
        }
		 @property --thousands {
            syntax: '<integer>';
            initial-value: 0;
            inherits: false;
        }
        @property --hundreds {
            syntax: '<integer>';
            initial-value: 0;
            inherits: false;
        }
		@property --lakh-value {
            syntax: '<integer>';
            initial-value: 0;
            inherits: false;
        }
        /* 2. Configure the animation on the counter element */
        .coursecounter-number {
            font-size: 2rem;
            font-weight: 800;
            color: #ffff00;
            margin: 0;
            line-height: 1;
            
            /* Animate the --num variable from 0 to target over 2.5 seconds */
            animation: coursecountUp 2.5s cubic-bezier(0.1, 0.8, 0.2, 1) forwards;
            
            /* Link the CSS variable to a counter name */
            counter-reset: current-value var(--num);
        }

        /* 3. Display the counter value as text using a pseudo-element */
        .coursecounter-number::after {
            content: counter(current-value);
        }

        /* 4. Define the keyframes to change the number value */
        @keyframes coursecountUp {
            from {
                --num: 0;
            }
            to {
                --num: 1885; /* Change this to your final number */
            }
        }
/*DTH conter */
 /* 2. Configure the animation on the counter element */
        .dthcounter-number {
            font-size: 2rem;
            font-weight: 800;
            color: #ffff00;
            margin: 0;
            line-height: 1;
            
            /* Animate the --num variable from 0 to target over 2.5 seconds */
            animation: dthcountUp 2.5s cubic-bezier(0.1, 0.8, 0.2, 1) forwards;
            
            /* Link the CSS variable to a counter name */
            counter-reset: current-value var(--num);
        }

        /* 3. Display the counter value as text using a pseudo-element */
        .dthcounter-number::after {
            content: counter(current-value);
        }

        /* 4. Define the keyframes to change the number value */
        @keyframes dthcountUp {
            from {
                --num: 0;
            }
            to {
                --num: 7; /* Change this to your final number */
            }
        }
/*emmrc conter */
 /* 2. Configure the animation on the counter element */
        .emmrccounter-number {
            font-size: 2rem;
            font-weight: 800;
            color: #ffff00;
            margin: 0;
            line-height: 1;
            
            /* Animate the --num variable from 0 to target over 2.5 seconds */
            animation: emmrccountUp 2.5s cubic-bezier(0.1, 0.8, 0.2, 1) forwards;
            
            /* Link the CSS variable to a counter name */
            counter-reset: current-value var(--num);
        }

        /* 3. Display the counter value as text using a pseudo-element */
        .emmrccounter-number::after {
            content: counter(current-value);
        }

        /* 4. Define the keyframes to change the number value */
        @keyframes emmrccountUp {
            from {
                --num: 0;
            }
            to {
                --num: 20; /* Change this to your final number */
            }
        }	
/*enroll conter */
 /* 4. Configure the animation on the counter element */
        .enrollcounter-number {
            font-size: 2rem;
            font-weight: 800;
            color: #ffff00;
            margin: 0;
            line-height: 1;            
            /* Animate the --num variable from 0 to target over 2.5 seconds */
            animation: enrollcountUp 2.5s cubic-bezier(0.1, 0.8, 0.2, 1) forwards;
            /* Map the CSS variables to separate counters */
			counter-reset: lakh-counter var(--lakh-value);
        }
		.enrollcounter-number::before {
            /* Hardcodes the '1.' prefix before the moving digits */
            content: "44.";
        }

        /* 3. Display the counter value as text using a pseudo-element */
        .enrollcounter-number::after {
			 /* Displays the two-digit moving value, followed by the text labels */
            /* 'decimal-leading-zero' handles cases where the count passes through .01 to .09 */
            content: counter(lakh-counter, decimal-leading-zero) " Lakh +";
        }
        /* 4. Define the keyframes to change the number value */
        @keyframes enrollcountUp {
           from {
                --lakh-value: 0;
            }
            to {
                --lakh-value: 16;
            }
        }		
/*certi conter */
 /* 5. Configure the animation on the counter element */
        .certicounter-number {
            font-size: 2rem;
            font-weight: 800;
            color: #ffff00;
            margin: 0;
            line-height: 1;            
            /* Animate the --num variable from 0 to target over 2.5 seconds */
            animation: certicountUp 2.5s cubic-bezier(0.1, 0.8, 0.2, 1) forwards;
            /* Map the CSS variables to separate counters */
			counter-reset: lakh-counter var(--lakh-value);
        }
		.certicounter-number::before {
            /* Hardcodes the '1.' prefix before the moving digits */
            content: "1.";
        }

        /* 3. Display the counter value as text using a pseudo-element */
        .certicounter-number::after {
			 /* Displays the two-digit moving value, followed by the text labels */
            /* 'decimal-leading-zero' handles cases where the count passes through .01 to .09 */
            content: counter(lakh-counter, decimal-leading-zero) " Lakh +";
        }
        /* 4. Define the keyframes to change the number value */
        @keyframes certicountUp {
           from {
                --lakh-value: 0;
            }
            to {
                --lakh-value: 63;
            }
        }	
							
/*Section  Connect of users */
.connectgrid-layout{
    display: grid;
    grid-template-columns: repeat(3, 1fr); /* 3 Columns on PC/Laptop */	
	box-shadow: 0px 1px 11px 2px #ccc;
	gap: 3%;
	width: 90%;
    margin-left: 5%;
}
.connectcard {	       
	background-color:#142c48;
	display:flex;
	text-align:left;
}
.connectcardtxt{	    
    padding:25px 0px 0px 25px;   
	text-align:left;
}
.connectcard h3 { margin-bottom: 12px; color: var(--textw-color); }
.connectcard p { margin-bottom: 20px; margin-top: 20px; color: #fff; }
.connectcard-link { color: var(--accent-color); font-weight: bold; text-decoration: none; }
.connectsectionimg{
float:right;
margin:0px;
}
/* 2 */
.connectcard2 {	       
	background-color:#142c48;
	display:flex;
	text-align:left;
}
.connectcardtxt2{	    
    padding:25px 0px 0px 25px;   
	text-align:left;
}
.connectcard2 h3 { margin-bottom: 12px; color: var(--textw-color); }
.connectcard2 p { margin-bottom: 20px; margin-top: 20px; color: #fff; }
.connectcard-link2 { color: var(--accent-color); font-weight: bold; text-decoration: none; }
.connectsectionimg2{
float:right;
margin:0px 0px 0px 5px;
}
/* 3 */
.connectcard3 {	       
	background-color:#142c48;
	display:flex;
	text-align:left;
}
.connectcardtxt3{	    
    padding:25px 0px 0px 25px;   
	text-align:left;
}
.connectcard3 h3 { margin-bottom: 12px; color: var(--textw-color); }
.connectcard3 p { margin-bottom: 20px; margin-top: 20px; color: #fff; }
.connectcard-link3 { color: var(--accent-color); font-weight: bold; text-decoration: none; }
.connectsectionimg3{
float:right;
margin:0px;
}
/* End 3 */
/*Contact Us page*/
.capitalSwayam{
FONT-FAMILY: cursive;
font-size:24px;
}
/* End 3 */
.emmrclist{
padding:50px 0px 0px 0px;
line-height:50px;
}
.maincontentw{
padding:50px 0px 0px 0px;
line-height:50px;
}
.gcfirstrow{
background-color:#87bdd83d;
font-weight:bold;
}
.gcsecondrow{
background-color:#cfe0e8;
font-weight:bold;
}
.mapimg{
text-align:center;
}
.mapimg img{
//width:100%;
}
.maincontentw{
text-align:justify;
padding:20px;
}
.addressicon{
float:left;
padding:10px;
}
.footer-links input{
margin: 10px 0px 10px 0px;
height: 50px;
padding: 10px;
}
.centered-divcontainer{
    text-align: center; /* For centering inline elements */
    /* OR */
    display: flex;
    justify-content: center; /* For robust modern centering */
}
/* Add these classes to handle your new div structural layout */
.dynamic-flex-list {
  display: flex;
  flex-direction: column;
  gap: 5px; /* Mimics cellspacing="5" */
  width: 100%;
}

.hr-row {
  padding: 4px; /* Mimics cellpadding="4" */
  text-align: center;
  font-size: 0.95em;
}

.footnote {
  padding-top: 10px;
  line-height: 1.4;
}

/* Human resources code structure */
.hrncontent{
display: grid;
  grid-template-columns: repeat(3, 1fr); /* 3 equal columns for line 2 */
  gap: 15px;  
  /* CRITICAL FIXES FOR CENTERING THE LAYOUT */
  max-width: 60%;                      /* Limits width so it doesn't stretch edge-to-edge */
  margin: 0 auto;                        /* Pushes the entire layout into the exact center of the page */
}
.hrncontent img{
float:left;
}
/* 2. Grid Positioning */
.hrncontent > div:first-child {
  grid-column: span 3;                   /* Forces Div 1 to take the full first line */
  padding-bottom: 20px;
}

/* 3. Centering Content INSIDE Every Div */
.hrncontent > div {
  display: flex;  
  padding-bottom: 20px;  
}  
.hrtxt{
font-size:14px;
padding:10px 0px 0px 15px;
overflow:auto;
}
.hrtr1{
background-color:#e8e8e833;
}
.scrolltablehr{
line-height: 36px;
}
.scrolltablehm{
overflow-x: auto;
padding-bottom: 0px;
max-height: 300px;
}
.hrfirstw{
width:95%;
}
.hrfirstwinner{
box-shadow:0px 1px 11px 2px #ccc;
height:192px;
width:100%;
background-color:#fff;
display:grid; 
grid-template-columns:30% 70%;
}
.hrfirstinner{
text-align:center;
box-shadow:0px 1px 11px 2px #ccc;
min-height:460px;
width:275px;
background-color:#fff;
}
.hrsecondinner{
text-align:center;
box-shadow:0px 1px 11px 2px #ccc;
min-height:460px;
width:275px;
background-color:#fff;
}
.hrthirdinner{
text-align:center;
box-shadow:0px 1px 11px 2px #ccc;
min-height:460px;
width:275px;
background-color:#fff;
}
.hrthirdrinner{
text-align:center;
box-shadow:0px 1px 11px 2px #ccc;
min-height:460px;
width:275px;
background-color:#fff;
}
.hrfourthinner{
text-align:center;
box-shadow:0px 1px 11px 2px #ccc;
min-height:460px;
width:275px;
background-color:#fff;
}
.hrfifthinner{
text-align:center;
box-shadow:0px 1px 11px 2px #ccc;
min-height:460px;
width:275px;
background-color:#fff;
}
.headingdivhr{
width:275px;
background-color:var(--primary-color);
padding:15px 0px 15px 0px;
color:#fff;
font-size:1.2em;
font-family: georgia, "Lucida Bright", "DejaVu Serif", serif;
}
.headingdivdir{
width:275px;
background-color:var(--primary-color);
padding:7px 0px 7px 0px;
color:#fff;
font-size:1.2em;
text-align:center;
position:absolute;
margin:140px 0px 0px 0px;
font-family: georgia, "Lucida Bright", "DejaVu Serif", serif;
}
#orgChart{
width:100%
}
/* --- MOBILE RESPONSIVE ADAPTABILITY DOWNGRADES --- */

/* Small Laptops and Large Tablets */
@media (max-width: 1200px) {
    .carousel-track { height: 400px; } /* Scales canvas aspect down cleanly */
    .slide img { object-fit: cover; } /* Protects images from looking overly squeezed on medium devices */
}

@media (max-width: 992px) {
    .carousel-track { height: 320px; }
    .slide-caption h2 { font-size: 1.6rem; }
    .slide-caption p { font-size: 1.05rem; }
}

/* Mobile Devices (Smartphones) */
@media (max-width: 768px) {
	 .imgdirmessage {float:none; margin:0px 0px 0px -62px;}
    .slider-wrapper { 
        width: 100%; 
        left: 0; 
        right: 0; 
        margin: 0; 
        overflow: visible;
    }
	.logobottomline{
	display:none;
	}	
    .carousel-track { height: auto; display: flex; flex-direction: column; }
    .slide { position: relative; display: none; }
    .slide.active { display: block; }
    .slide img { height: 220px; object-fit: cover; } /* Fixed viewport layout crops on narrow phone displays */
    
    /* Separates overlay caption to scroll freely below mobile image */
    .slide-caption {
        position: relative;
        background: #111111;
        padding: 15px;
    }
    .carousel-controls { top: auto; right: 15px; }
}
.homeicon{
}
.homeicon img {
    width: 100% !important;
    height: 100% !important;
    display: block !important;
    object-fit: fill;       /* Stretches the image pixels edge-to-edge across wide PC screens */
}
/* Base CSS Flex and Grid Structural Layout for GIGW 3.0 */
.main-upper-container {
    width: 100%;
    box-sizing: border-box;
    padding: 15px;
}
.content-layout-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    margin-bottom: 30px;
}
.initiatives-column {
    flex: 0 0 78%;
}
.director-column {
    flex: 0 0 20%;
}
.strip-card {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 15px;
    padding: 15px;
}
.grid-4-columns {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
    gap: 20px;
    padding: 20px 0;
}
.social-media-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 15px;
    width: 70%;
    margin: 0 auto;
}
.social-card {
    text-align: center;
    padding: 10px;
}

/* Fallback adjustments for narrower displays */
@media (max-width: 992px) {
    .initiatives-column, .director-column, .social-media-grid {
        flex: 0 0 100%;
        width: 100%;
    }
    .strip-card {
        flex-direction: column;
    }
	.containersearch{float: none; margin: 0px 0px 0px 0px;}
}


/* Container styling to position buttons relative to the list */
.moocsawareouteronline{
//width: 70%;
margin-top: 40px;
padding: 0px 0px 0px 0px;
}
.scroller-containeronline {
    position: relative;
    align-items: center;
}
/* Horizontal scrolling wrapper */
.moocsawareonline {
    width: 100%;
    scrollbar-width: none; /* Firefox */
	margin: 15px 15px 15px 15px;
	text-align: center;
	border-top: 1px solid #faba5b;
	border-bottom: 1px solid #faba5b;
	box-shadow: 1px -2px 14px #dbdbdb;
}
.moocsaware::-webkit-scrollbar {
    display: none; /* Chrome/Safari */
}
.moocsaware-triggeronline:hover img{
cursor: pointer;
transform: scale(1.1); /* Increases size by 20% */
opacity: 150%;
}
.moocsaware-triggeronline img {
    height: 300px;
    width: auto;
	padding:15px;
}
.moocsawarehdonline{
font-size:30px;
font-weight:bolder;
text-align:center;
padding-top:20px;
padding-bottom:20px;
letter-spacing: 3px;
word-spacing: 3px;
text-decoration: underline;
color: coral;
text-shadow: -1px 0 black, 0 1px black, 1px 0 black, 0 -1px black;
}

/* 1. MOOC Hide the horizontal scrollbar and establish bounds */
.swayammoccstripbgtbl{
border-collapse: separate;
width:100%;
border-spacing: 0 30px;
margin-top:-30px;
}
.swayammoccstripbg td{
border-top:2px solid #0276c0;
border-bottom:2px solid #0276c0;
}

.swayammoccstripbg{
 box-shadow: 0px 1px 11px 2px #ccc;
}
.moocmarquee-container {
  overflow: hidden;
  width: 100%;
  display: flex;
  max-width:initial;
  padding: 10px 0px 0px 0px;  
  margin-bottom: 100px;
}
/* 2. Position the dual groups side-by-side */
.moocmarquee-track {
  display: flex;
  animation: moocscrollMarquee 15s linear infinite; /* Name of Keyframes  between separate images */
  gap: 40px; /* Space between separate images */
}
.moocmarquee-track img {
  height: 250px; /* Control image scaling */
  width: auto;
  flex-shrink: 0;
  object-fit: contain;
}
/* 4. Pause the scroller when someone hovers over it */
.moocmarquee-container:hover .moocmarquee-track {
  animation-play-state: paused;
}
/* 5. The infinite math magic */
@keyframes moocscrollMarquee {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%); /* Moves exactly one full group length left */
  }
}
/* Mooc End */
.pdf-download-link {
  text-align: center;
  margin-top: 15px;
}
.pdf-download-link a {
  display: inline-block;
  padding: 10px 20px;
  background-color: #0056b3; /* Use your official Gov theme color */
  color: #fff;
  text-decoration: none;
  border-radius: 5px;
  font-weight: bold;
}
/* Container framework */
.pdf-container {
  width: 100%;
  max-width: 1200px;
  height: 150vh;
  margin: 20px auto;
  position: relative;
  border-radius: 8px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
  overflow: hidden;
  background-color: #f5f5f5;
}

.pdf-scroll-wrapper {
  width: 100%;
  height: 100%;
  overflow-y: auto;
  overflow-x: hidden;
  -webkit-overflow-scrolling: touch; 
}

.pdf-scroll-wrapper iframe {
  width: 100%;
  height: 100%;
  border: none;
  display: block;
}

/* Hide mobile fallback by default on desktop */
.mobile-pdf-fallback {
  display: none;
  text-align: center;
  padding: 40px 20px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
}

.fallback-btn {
  display: inline-block;
  background-color: #0000FF;
  color: white;
  padding: 12px 24px;
  text-decoration: none;
  border-radius: 4px;
  font-weight: bold;
  margin-top: 15px;
  box-shadow: 0 2px 5px rgba(0,0,0,0.2);
}

.pdf-download-link {
  text-align: center;
  margin: 15px 0;
}
/* Mobile Adjustments */
@media (max-width: 768px) {
  .pdf-container {
    height: auto; /* Let it shrink to fit the fallback button */
    min-height: 250px;
    margin: 10px 0;
  }

  /* Hide the broken iframe wrapper on mobile */
  .pdf-scroll-wrapper {
    display: none;
  }

  /* Show the clean mobile fallback button instead */
  .mobile-pdf-fallback {
    display: block;
  }
  .containersearch{float: none; margin: 0px 0px 0px 0px;}
}
#head_title{
color: #134077;
font-size: 18px;
font-weight:bold;
letter-spacing:1px;
margin: 0px 0px 20px 0px;
position: relative;
text-align: center;
border-bottom:1px solid #dddddd;
}
.projectscontent{
width:100%;
text-align:justify;
line-height:2;
display:FLEX;
justify-content: center;
}
/*cec moocs page design*/
.moocfirst{
text-align:center;
width:315px;
height:700px;
position:relative;
float:left;
}
.moocfirstinner{
text-align:center;
box-shadow:0px 1px 11px 2px #ccc;
min-height:660px;
width:275px;
background-color:#fff;
}
.moocsecond{
text-align:center;
width:315px;
height:700px;
position:relative;
float:left;
}
.moocsecondinner{
text-align:center;
box-shadow:0px 1px 11px 2px #ccc;
min-height:660px;
width:275px;
background-color:#fff;
}
.moocthird{
text-align:center;
width:315px;
height:700px;
position:relative;
float:left;
}
.moocthirdinner{
text-align:center;
box-shadow:0px 1px 11px 2px #ccc;
min-height:660px;
width:275px;
background-color:#fff;
}
.moocfourth{
text-align:center;
width:315px;
height:700px;
position:relative;
float:left;
}
.moocfourthinner{
text-align:center;
box-shadow:0px 1px 11px 2px #ccc;
min-height:660px;
width:275px;
background-color:#fff;
}
.headingdivmooc{
width:275px;
background-color:var(--primary-color);
padding:10px 0px 10px 0px;
color:#fff;
font-size:18px;
margin-top: -10px;
}
.mooctxt{
font-size:14px;
padding:0px 0px 0px 0px;
overflow:auto;
max-height:460px;
}
.tableborder{
border-bottom:2px #9ac6ff solid;
border-top:2px #9ac6ff solid;
background-color:#F2F4F7;
padding:5px;
text-align:left;
vertical-align:middle;
}
.coursetype{
font-weight:bold;
background-color:#000000;
color:#FFFFFF;
padding:5px 15px 5px 15px;
}
.lispan{
color: #e4e4ef;
vertical-align: middle;
font-weight: bold;
background-color: #08176f;
border-radius: 90%;
margin: 10px;
padding: 0px 5px 0px 5px;
}
.projectscontent a{
text-decoration:none;
cursor:pointer;
color:#0000FF;
font-weight:600;
}
.projectscontent table{
cursor:auto;
}
.ctdiv{
cursor:pointer;
font-weight:bold;
}
.cdivdiv{display:none;}
/*Governance*/
#governance li{
font-size:18px;
padding-top:13px;
}
#menugov a:hover li{
font-size:18px;
padding-top:13px;
}
#menugov a li{
height:50px; width:200px; text-align:center; padding-top:15px;
}
a li{
height:40px; width:200px; text-align:center; padding-top:10px; font-size:16px; font-weight:100;
}
#innermenugov a:hover li{
font-size:18px;
padding-top:8px;
}
#gcouncil li{
font-size:18px;
padding-top:8px;
}
.gcouncilmaincontent{
  display: flex;
  flex-direction: column;   /* Stacks content vertically */
  justify-content: center;  /* Centers content vertically */
  align-items: center;      /* Centers content horizontally */
  text-align: center;       /* Ensures text paragraphs are centered */  
}
.middlelinetable{
padding-left:10px;
border-right: 3px #99004e solid;
}
.gcimage {
width: 100px;
box-shadow: -3px 3px 5px grey;
}
.lefttable {
 margin: 10px 50px 10px 0px;
}
.gcbimage {
width: 150px;
box-shadow: -5px 5px 5px grey;
margin: 5px;
}
 /* Base Reset & Styling */
    .gc-container {
      max-width: 85%;
      margin: 0 auto;
      font-family: Arial, sans-serif;
      color: #333;
    }

    /* Headings */
    .gc-main-title {
      font-size: 22px;
      font-weight: bold;
      text-align: center;
      letter-spacing: 2px;
      margin-bottom: 50px;
    }

    .gc-sub-title {
      font-weight: bold;
      text-align: center;
      letter-spacing: 5px;
      margin: 40px 0;
	 font-size: 1.3em;	
	 color: #99004e;
    }

    /* Hero / Leader Cards (President & Member-Secretary) */
    .gc-leader-section {
      border-top: 8px solid #99004e;
      border-bottom: 8px solid #99004e;
      padding: 15px 0;
      margin-bottom: 40px;
      display: flex;
      justify-content: center;
    }

    .gc-leader-card {
      display: flex;
      align-items: center;
      gap: 20px;
      width: 60%;
    }

    .gc-leader-card img {
      width: 120px;
      height: auto;
      border-radius: 4px;
      display: block;
      margin: 0 auto;
    }

    .gc-leader-info {
      text-align: left;
      line-height: 1.5;
    }

    /* Responsive Grid for Members */
    .gc-members-grid {
      display: grid;
      grid-template-columns: 1fr 1fr;
      column-gap: 40px;
      row-gap: 30px;
      margin-bottom: 40px;
    }

    /* Individual Profile Row Structure */
    .gc-member-card {
      display: flex;
      align-items: center;
      gap: 20px;
      padding-bottom: 20px;
      border-bottom: 1px dashed #ddd; /* Subtle separating line between rows */
    }

    .gc-member-card img {
      width: 100px;
      height: auto;
      border-radius: 4px;
    }

    /* Left column cards - Align text right, image left */
    .gc-card-left {
      justify-content: flex-end;
      text-align: right;
	  border-right: 3px #99004e solid;    
	  padding-right: 40px;
    }

    /* Right column cards - Align text left, image right */
    .gc-card-right {
      justify-content: flex-start;
      text-align: left;
    }
#innermenugov{
    display: grid;
    grid-template-columns: repeat(4, 1fr); /* 6 Columns on PC/Laptop */
	box-shadow: 0px 1px 11px 2px #ccc;
	text-align: center;
	gap: 2px;
	width:70%;
    margin: 0 auto;
}
#innermenugov .card {
    background: #fff;
    border: 1px solid #ddd;
    padding: 25px;
    border-radius: 6px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.05);
    background-color: var(--primary-color);	
}
#innermenugov .card a{ color: var(--textw-color); font-weight: bold; text-decoration: none;}
#innermenugov .card a:hover { color:var(--primary-color);}
#innermenugov .card:hover { color:var(--primary-color); background-color: #fff;}
#innermenugov .card:hover a{ color:var(--primary-color); background-color: #fff;}
#innermenugov .card a:active { color:var(--primary-color); color:#000000;}
.bottomline{
border-bottom:5px #490b1a solid;
width:10%;
margin:20px 0px 50px 45%;
}
.rtipadded-cell{
text-align:center;
}
.rtipadded-cell table, tr, td{
padding-left: 20px;
}
.preresimg{float: right; padding: 5px 0px 0px 25px;}
.reworkvidiv{
text-align:justify;
}
.imgdirmessage{
float:left;
margin: -40px 40px 4px 0px;
}
.maincontent{
text-align:justify;
padding:20px;
font-size:19px;
line-height:2;
}
.dirname{
margin-top:8px;
font-size:16px;
font-weight:bold;
text-align:left;
margin-right:18px;
}
.dirnamespan{
color:#ea5b52;
}
.profilepic{
float: left;
margin: 10px 20px 0px 0px;
}
.stufaqs{
display: grid;
grid-template-columns: 40% 60%;
}
.stufaqs div{
border-top: 1px solid #333;
border-left: 1px solid #333;
padding:10px 10px 10px 20px;
}
.stufaqs .rightdiv{
border-right: 1px solid #333;
}
.stufaqs .downleftdiv{
border-bottom: 1px solid #333;
}
.stufaqs .downrightdiv{
border-bottom: 1px solid #333;
border-right: 1px solid #333;
}
.languageclr a{
color:#fff;
}
.textsizefont{
color:#000;
border: 1px solid #cccccc;
border-radius: 4px;
}
.containersearch{
   float: right;
   margin: 0px 0px 0px 0px;
   align-content: center;
}
.searchinput{
	font-size:16px;
	padding:10px;
}
.containersearch button{
    font-size: 18px;
    padding: 10px;
    background-color: #003366;
    font-weight: bold;
	border-radius: 7px;
}
.slide-caption a{
color:#ffff00;
text-decoration:none;
font-size: 26px;
font-weight: 500;
font-style: italic;
}
.slide-caption a:hover{
color:#ecf5a6;
text-decoration:none
font-weight:bold;
}
.sectiontitle{
	width:100%;
	text-align: right;
	padding: 8px;
}
.sectiontitle a{
	vertical-align:middle;
}
.upcomingsectiontitle{
	width:100%;
	text-align: right;
	color:var(--primary-color);
	font-weight:500;
    padding: 8px;
}
.upcomingsectiontitle:hover{
	width:100%;
	text-align: right;
	color:var(--accent-color);
	font-weight:500;
}
.fpgraphhyper{
display:flex;
justify-content:center;
gap:5px;
margin-top:1%;
}
.fpgraphhyper div a{
padding: 5px 10px 5px 10px;
text-align: center;
color: #FFFFFF;
background-color: var(--primary-color);
text-decoration: none;
font-size: 1.2em;
font-weight: 500;
}
.fpgraphhyper div a:hover{
color:#CCCCCC;
}
.hcgmoocmarquee-track {
  //animation: moocscrollMarquee 15s linear infinite; /* Name of Keyframes  between separate images */
  gap: 40px; /* Space between separate images */
}
.hcgmoocmarquee-track img {
  height: 250px; /* Control image scaling */
  width: auto;
  flex-shrink: 0;
  object-fit: contain;
}
.hcghiddenimg{
display:none;
}
#initialimg1{
display:inline-grid;
}
.hcghomediv{
	display: grid;
	grid-template-columns: 10% 80% 10%;
    justify-items: center;
}
.mooccsectionview{
width:100%;
text-align:end;
}
.mooccsectionview a{
	width:100%;
	text-align: right;
	color:var(--primary-color);
	font-weight:500;
}
.mooccsectionview a:hover{
	width:100%;
	text-align: right;
	color:var(--accent-color);
	font-weight:500;
}
.glancenumber{
    text-align: center;
    font-size: 35px;
    font-weight: 800;
    color: #ffff00;
    -webkit-text-stroke: 5px #7b1802;
    paint-order: stroke fill;
    letter-spacing: 5px;
    MARGIN: 0PX AUTO;
}
.explorelinkmoocs{
	-webkit-text-stroke: 3px #9e050e;
    paint-order: stroke fill;
    letter-spacing: 3px;
    MARGIN: 0PX AUTO;
}
.txtupcoming{
	margin:0px;
}