/* ═══════════════════════════════════════════════════════════════════════
   GOOGLE FONTS IMPORT
   ═══════════════════════════════════════════════════════════════════════ */
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;600;700;800&family=Poppins:wght@300;400;500;600;700;800&family=Inter:wght@300;400;500;600;700&display=swap');

/* ═══════════════════════════════════════════════════════════════════════
   ROOT VARIABLES — lines 10–55
   ═══════════════════════════════════════════════════════════════════════ */
:root {
  --primary:        #C0392B;
  --primary-dark:   #922B21;
  --primary-deeper: #641E16;
  --primary-light:  #E74C3C;
  --secondary:      #E8A020;
  --secondary-dark: #C07800;
  --accent:         #F5C842;
  --accent-light:   #FDEAA8;

  --bg:             #FAFAFA;
  --bg-warm:        #FFF8F7;
  --bg-dark:        #F2EDEC;
  --dark:           #111111;
  --dark-2:         #1E1010;
  --dark-3:         #3A2828;
  --gray:           #6B6060;
  --gray-light:     #B0A8A8;
  --white:          #FFFFFF;

  --border:         rgba(192,57,43,0.09);
  --border-light:   rgba(0,0,0,0.06);

  /* 3D-style layered shadows */
  --shadow-sm:  0 1px 2px rgba(0,0,0,0.04), 0 4px 12px rgba(146,43,33,0.07);
  --shadow-md:  0 2px 4px rgba(0,0,0,0.05), 0 8px 28px rgba(146,43,33,0.11), 0 1px 0 rgba(255,255,255,0.8) inset;
  --shadow-lg:  0 4px 8px rgba(0,0,0,0.06), 0 20px 56px rgba(100,30,22,0.16), 0 1px 0 rgba(255,255,255,0.7) inset;
  --shadow-xl:  0 8px 16px rgba(0,0,0,0.08), 0 32px 80px rgba(20,8,10,0.20);
  --shadow-3d:  0 1px 0 rgba(255,255,255,0.85) inset,
                0 -2px 0 rgba(0,0,0,0.08) inset,
                2px 0 0 rgba(255,255,255,0.40) inset,
                -2px 0 0 rgba(0,0,0,0.05) inset,
                0 6px 18px rgba(146,43,33,0.12),
                0 12px 32px rgba(0,0,0,0.08),
                0 3px 0 rgba(146,43,33,0.18);

  --gradient-main:   linear-gradient(135deg, #7B241C 0%, #C0392B 55%, #E74C3C 100%);
  --gradient-dark:   linear-gradient(160deg, #0D0606 0%, #1A0B0B 50%, #280E0E 100%);
  --gradient-card:   linear-gradient(160deg, #FFFFFF 0%, #FFF9F8 60%, #FFF3F1 100%);
  --gradient-gold:   linear-gradient(135deg, #C07800 0%, #E8A020 50%, #F5C842 100%);

  /* Hero: left-dark vignette — right side shows image naturally */
  --gradient-hero:   linear-gradient(
                       100deg,
                       rgba(5,2,2,0.78) 0%,
                       rgba(5,2,2,0.55) 35%,
                       rgba(5,2,2,0.22) 65%,
                       rgba(5,2,2,0.08) 100%
                     );

  --transition:      0.28s ease;
  --transition-slow: 0.50s ease;
  --radius:          12px;
  --radius-lg:       18px;
  --radius-xl:       28px;
  --nav-height:      68px;
}

/* ═══════════════════════════════════════════════════════════════════════
   RESET & BASE — lines 57–75
   ═══════════════════════════════════════════════════════════════════════ */
*, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; font-size:16px; }

body::before {
  content: "";
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100vw;
  height: 100vh;
  background: url('../images/logos/gtss-logo.png') center/400px no-repeat;
  opacity: 0.08;
  z-index: -1;
  pointer-events: none;
}
body {
  background-color: #f2fcf2 !important;
  font-family:'Inter','Poppins',sans-serif;
  background:var(--bg);
  color:var(--dark);
  line-height:1.7;
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeSpeed;
}
img { max-width:100%; height:auto; display:block; }
a { color:var(--primary); text-decoration:none; transition:color var(--transition); }
a:hover { color:var(--secondary); }
ul { list-style:none; }
/* ═══════════════════════════════════════════════════════════════════════
   PAGE LOADER — lines 77–100
   ═══════════════════════════════════════════════════════════════════════ */
#page-loader {
  position:fixed; top:0; left:0; width:100vw; height:100vh; overflow:hidden; box-sizing:border-box;
  background:var(--dark);
  z-index:99999;
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  transition:opacity 0.45s ease, visibility 0.45s ease;
}
#page-loader.hidden { opacity:0; visibility:hidden; pointer-events:none; }

.loader-inner {
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  gap:20px; text-align:center; width:100%; max-width:100vw; padding:0 20px; box-sizing:border-box;
}
.loader-logo-img {
  height:90px; width:90px;
  object-fit:contain;
  border-radius:50%;
  background:rgba(255,255,255,0.06);
  padding:10px;
  animation:loaderPulse 2s ease-in-out infinite;
  display:block; margin:0 auto;
}
.loader-title {
  font-family:'Playfair Display',serif;
  font-size:2.4rem; font-weight:800; letter-spacing:6px; margin-right:-6px;
  background:var(--gradient-main);
  -webkit-background-clip:text; -webkit-text-fill-color:transparent;
  background-clip:text;
}
.loader-subtitle {
  font-family:'Poppins',sans-serif;
  font-size:0.72rem; color:rgba(255,255,255,0.38);
  letter-spacing:2px; text-transform:uppercase; margin-right:-2px; line-height:1.6;
}
.loader-bar {
  width:180px; height:2px;
  background:rgba(255,255,255,0.08); border-radius:99px; overflow:hidden;
}
.loader-bar-fill {
  height:100%; background:var(--gradient-main); border-radius:99px;
  animation:loaderProgress 2.2s ease forwards;
}
@keyframes loaderPulse { 0%,100%{transform:scale(1);opacity:0.9;} 50%{transform:scale(1.04);opacity:1;} }
@keyframes loaderProgress { 0%{width:0;} 100%{width:100%;} }

/* ═══════════════════════════════════════════════════════════════════════
   ANNOUNCEMENT BAR — lines 102–120
   ═══════════════════════════════════════════════════════════════════════ */
.announcement-bar {
  background:#0E0808; padding:9px 0; overflow:hidden;
  border-bottom:1px solid rgba(192,57,43,0.10);
}
.marquee-wrap { display:flex; overflow:hidden; white-space:nowrap; }
.marquee-content {
  display:inline-flex; align-items:center; gap:60px;
  animation:marqueeScroll 30s linear infinite; white-space:nowrap;
}
.announcement-bar:hover .marquee-content { animation-play-state:paused; }
@keyframes marqueeScroll { 0%{transform:translateX(0);} 100%{transform:translateX(-50%);} }
.marquee-item {
  display:inline-flex; align-items:center; gap:10px;
  font-family:'Poppins',sans-serif; font-size:0.78rem; color:rgba(255,255,255,0.68);
}
.marquee-item a { color:var(--accent); font-weight:600; }
.marquee-item a:hover { text-decoration:underline; color:var(--accent); }
.marquee-dot { width:4px; height:4px; background:var(--primary); border-radius:50%; flex-shrink:0; }
.marquee-tag {
  background:var(--gradient-main); color:var(--white);
  font-size:0.58rem; font-weight:700; letter-spacing:1px;
  text-transform:uppercase; padding:2px 8px; border-radius:99px;
}

/* ═══════════════════════════════════════════════════════════════════════
   SITE HEADER — lines 122–150
   ═══════════════════════════════════════════════════════════════════════ */
.site-header {
  background:linear-gradient(180deg, #FFFFFF 0%, #FEF5F3 100%);
  padding:13px 0;
  border-bottom:1px solid rgba(192,57,43,0.12);
  position:relative;
}
.site-header::after {
  content:''; position:absolute; bottom:0; left:0; right:0;
  height:2px; background:var(--gradient-main);
}
.site-header-inner {
  max-width:1440px; margin:0 auto; padding:0 24px;
  display:flex; align-items:center; justify-content:space-between; gap:16px;
}
.header-logos { display:flex; align-items:center; gap:12px; flex-shrink:0; }
.header-logo-link img {
  height:48px; max-height:52px; width:auto; max-width:120px;
  transition:transform var(--transition); object-fit:contain;
}
.header-logo-link:hover img { transform:scale(1.05); }
.header-divider { width:1px; height:40px; background:rgba(192,57,43,0.14); flex-shrink:0; }
.header-center { text-align:center; flex:1; padding:0 16px; }
.header-conf-name {
  font-family:'Playfair Display',serif;
  font-size:clamp(1.4rem,3.5vw,2.4rem); font-weight:800;
  color:var(--primary-dark); line-height:1.1; margin-bottom:3px;
}
.header-conf-name span { color:var(--secondary); }
.header-conf-full {
  font-family:'Inter',sans-serif;
  font-size:clamp(0.70rem,1.8vw,0.88rem); font-weight:500; color:var(--dark-3); margin-bottom:2px;
}
.header-conf-dates {
  font-family:'Poppins',sans-serif;
  font-size:clamp(0.75rem,1.8vw,0.92rem); font-weight:700; color:var(--primary);
}
.header-conf-venue {
  font-family:'Inter',sans-serif;
  font-size:clamp(0.65rem,1.5vw,0.80rem); color:var(--gray); margin-top:1px;
}

/* ═══════════════════════════════════════════════════════════════════════
   NAVBAR — lines 152–220
   ═══════════════════════════════════════════════════════════════════════ */
.gtss-navbar {
  position:sticky; top:0; z-index:9000;
  background:rgba(10,4,4,0.97);
  border-bottom:1px solid rgba(192,57,43,0.14);
  box-shadow:0 2px 16px rgba(0,0,0,0.40);
  transition:background var(--transition);
}
.navbar-inner {
  display:flex; align-items:center; justify-content:space-between;
  height:var(--nav-height); padding:0 24px; max-width:1440px; margin:0 auto;
}
.navbar-brand-wrap { flex: 0 0 auto; display: flex; justify-content: flex-start; }
.nav-action-wrap { flex: 0 0 auto; display: flex; justify-content: flex-end; align-items: center; gap: 15px; }
/* Navbar Centering Fixes */

.navbar-brand-gtss { display:flex; align-items:center; gap:12px; text-decoration:none; flex-shrink:0; }
.navbar-brand-gtss img { height:40px; width:auto; border-radius:6px; }
.brand-text { display:flex; flex-direction:column; }
.brand-name {
  font-family:'Playfair Display',serif; font-size:1.12rem; font-weight:700;
  color:var(--white); line-height:1.1; letter-spacing:1px;
}
.brand-tagline {
  font-size:0.57rem; color:var(--accent); letter-spacing:1.5px;
  text-transform:uppercase; font-weight:500; font-family:'Poppins',sans-serif;
}
.nav-menu { flex: 1; display:flex; align-items:center; justify-content:center; gap:1px; margin:0; padding:0 6px; list-style:none; }
.nav-menu > li { position:relative; }
.nav-menu > li > a,
.nav-menu > li > .nav-dropdown-trigger {
  font-family:'Poppins',sans-serif; font-size:0.77rem; font-weight:500;
  color:rgba(255,255,255,0.78); padding:7px 9px; border-radius:8px;
  text-decoration:none; display:flex; align-items:center; gap:4px;
  cursor:pointer; background:none; border:none; white-space:nowrap;
  transition:color var(--transition), background var(--transition);
}
.nav-menu > li > a:hover,
.nav-menu > li > .nav-dropdown-trigger:hover,
.nav-menu > li > a.active { color:var(--accent); background:rgba(245,200,66,0.06); }
.nav-dropdown {
  position:absolute; top:calc(100% + 8px); left:0;
  background:rgba(12,5,5,0.98);
  border:1px solid rgba(192,57,43,0.14); border-radius:var(--radius);
  min-width:215px; padding:8px 0;
  box-shadow:0 8px 32px rgba(0,0,0,0.45);
  opacity:0; visibility:hidden; transform:translateY(-6px);
  transition:opacity var(--transition), transform var(--transition), visibility var(--transition);
  pointer-events:none;
}
.nav-menu > li:hover .nav-dropdown,
.nav-menu > li:focus-within .nav-dropdown {
  opacity:1; visibility:visible; transform:translateY(0); pointer-events:all;
}
.nav-dropdown a {
  display:block; padding:10px 20px;
  font-family:'Poppins',sans-serif; font-size:0.78rem;
  color:rgba(255,255,255,0.62); text-decoration:none;
  border-left:2px solid transparent;
  transition:color var(--transition), border-color var(--transition), padding var(--transition);
}
.nav-dropdown a:hover { color:var(--accent); border-left-color:var(--accent); padding-left:24px; }
.dropdown-arrow { font-size:0.58rem; transition:transform var(--transition); display:inline-block; }
.nav-menu > li:hover .dropdown-arrow { transform:rotate(180deg); }
.nav-btn {
  background:var(--gradient-main) !important; color:var(--white) !important;
  border-radius:8px !important; font-weight:700 !important; padding:7px 16px !important;
  box-shadow:0 4px 14px rgba(192,57,43,0.38) !important;
}
.nav-btn:hover {
  transform:translateY(-1px) !important;
  box-shadow:0 7px 22px rgba(192,57,43,0.52) !important;
  color:var(--white) !important; background:var(--gradient-main) !important;
}
.navbar-toggler-gtss {
  display:none; background:none; border:1px solid rgba(255,255,255,0.10);
  border-radius:8px; width:44px; height:44px;
  align-items:center; justify-content:center; cursor:pointer;
  flex-direction:column; gap:5px; padding:8px; flex-shrink:0;
}
.toggler-bar { width:22px; height:2px; background:var(--white); border-radius:2px; transition:transform var(--transition), opacity var(--transition); transform-origin:center; }
.navbar-toggler-gtss.active .toggler-bar:nth-child(1) { transform:translateY(7px) rotate(45deg); }
.navbar-toggler-gtss.active .toggler-bar:nth-child(2) { opacity:0; transform:scaleX(0); }
.navbar-toggler-gtss.active .toggler-bar:nth-child(3) { transform:translateY(-7px) rotate(-45deg); }
.mobile-nav {
  display:none; position:absolute; top:100%; left:0; right:0;
  background:rgba(10,4,4,0.98);
  border-bottom:1px solid rgba(192,57,43,0.10); padding:12px;
  z-index:8999; max-height:calc(100vh - var(--nav-height)); overflow-y:auto;
  opacity:0; transform:translateY(-8px); transition:opacity var(--transition), transform var(--transition);
}
.mobile-nav.open { opacity:1; transform:translateY(0); }
.mobile-nav-links { list-style:none; margin:0; padding:0; }
.mobile-nav-links > li { border-bottom:1px solid rgba(255,255,255,0.04); }
.mobile-nav-links > li:last-child { border-bottom:none; }
.mobile-nav-links a,
.mobile-dropdown-btn {
  display:flex; width:100%; text-align:left; padding:13px 16px;
  font-family:'Poppins',sans-serif; font-size:0.86rem; font-weight:500;
  color:rgba(255,255,255,0.78); background:none; border:none; cursor:pointer;
  text-decoration:none; align-items:center; justify-content:space-between;
  transition:color var(--transition), padding var(--transition);
}
.mobile-nav-links a:hover, .mobile-dropdown-btn:hover { color:var(--accent); padding-left:22px; }
.mobile-dropdown-content { display:none; padding-left:16px; }
.mobile-dropdown-content.open { display:block; }
.mobile-dropdown-content a {
  font-size:0.78rem; color:rgba(255,255,255,0.48); padding:10px 16px;
  border-left:2px solid rgba(232,160,32,0.20); display:block;
}
.mobile-dropdown-content a:hover { color:var(--accent); border-left-color:var(--accent); }

/* design and Developed by MeAdarshMishra for MMMUT GTSS 2027 under the guidance of Dr. Ashish Srivastava */

/* ═══════════════════════════════════════════════════════════════════════
   HERO SECTION — lines 222–298
   ═══════════════════════════════════════════════════════════════════════ */
.hero-section {
  position:relative; min-height:100vh;
  display:flex; align-items:center; overflow:hidden; background:#0D0606;
}
.hero-bg {
  position:absolute; inset:0; z-index:0;
  background-size:cover; background-position:center;
  transition:opacity 1.0s ease;
}
/* Subtle dark vignette — image shows naturally, only darkened on left for text */
.hero-overlay {
  /* Designed and developed by - MeAdarshMishra - github */
  position:absolute; inset:0; z-index:1;
  background:var(--gradient-hero);
}
/* Bottom vignette for scroll indicator */
.hero-overlay::after {
  content:''; position:absolute; bottom:0; left:0; right:0; height:160px;
  background:linear-gradient(to top, rgba(5,2,2,0.70) 0%, transparent 100%);
}
.hero-shape { position:absolute; z-index:2; border-radius:50%; animation:shapeFloat 14s ease-in-out infinite; }
.hero-shape-1 { width:500px; height:500px; background:radial-gradient(circle, rgba(192,57,43,0.07) 0%, transparent 70%); top:-200px; right:-180px; animation-delay:0s; }
.hero-shape-2 { width:280px; height:280px; background:radial-gradient(circle, rgba(232,160,32,0.06) 0%, transparent 70%); bottom:0; left:-60px; animation-delay:5s; }
@keyframes shapeFloat { 0%,100%{transform:translateY(0);} 50%{transform:translateY(-24px);} }
.hero-content {
  position:relative; z-index:10; width:100%; max-width:960px;
  margin:0 auto; padding:140px 40px 100px; text-align:center;
}
.hero-badge {
  display:inline-flex; align-items:center; gap:8px;
  background:rgba(255,255,255,0.06);
  border:1px solid rgba(255,255,255,0.12); border-radius:99px;
  padding:8px 22px; font-family:'Poppins',sans-serif;
  font-size:0.70rem; font-weight:600; color:rgba(255,255,255,0.78);
  letter-spacing:2px; text-transform:uppercase; margin-right:-2px; line-height:1.6; margin-bottom:28px;
  animation:fadeInDown 0.7s ease both;
}
.badge-dot { width:6px; height:6px; background:var(--accent); border-radius:50%; animation:badgePulse 1.6s ease infinite; }
@keyframes badgePulse { 0%,100%{transform:scale(1);opacity:1;} 50%{transform:scale(1.5);opacity:0.5;} }
.hero-title {
  font-family:'Playfair Display',serif;
  font-size:clamp(2.8rem,8vw,5.4rem); font-weight:800; color:var(--white);
  line-height:1.05; margin-bottom:18px;
  animation:fadeInUp 0.7s ease 0.1s both;
  text-shadow:0 3px 24px rgba(0,0,0,0.55);
}
.hero-title .gradient-text {
  color: #ffffff;
}
.hero-subtitle {
  font-family:'Poppins',sans-serif;
  font-size:clamp(1rem,3vw,1.30rem); font-weight:400;
  color:rgba(255,255,255,0.84); max-width:640px; margin:0 auto 36px;
  animation:fadeInUp 0.7s ease 0.18s both; line-height:1.6;
}
.hero-meta { display:flex; flex-wrap:wrap; justify-content:center; gap:12px; margin-bottom:44px; animation:fadeInUp 0.7s ease 0.26s both; }
.hero-meta-item {
  display:flex; align-items:center; gap:8px;
  background:rgba(255,255,255,0.07);
  border:1px solid rgba(255,255,255,0.12); border-radius:99px;
  padding:9px 20px; color:rgba(255,255,255,0.88);
  font-family:'Poppins',sans-serif; font-size:0.82rem; font-weight:500;
}
.hero-meta-item i { color:var(--accent); font-size:0.88rem; }
.hero-actions { display:flex; flex-wrap:wrap; justify-content:center; gap:14px; animation:fadeInUp 0.7s ease 0.34s both; }
.btn-hero-primary {
  display:inline-flex; align-items:center; gap:10px;
  background:var(--gradient-main); color:var(--white);
  font-family:'Poppins',sans-serif; font-size:0.92rem; font-weight:700;
  padding:15px 34px; border-radius:var(--radius); border:none; cursor:pointer;
  text-decoration:none; box-shadow:0 6px 28px rgba(192,57,43,0.42);
  transition:transform var(--transition), box-shadow var(--transition);
}
.btn-hero-primary:hover { transform:translateY(-3px); box-shadow:0 14px 40px rgba(192,57,43,0.58); color:var(--white); }
.btn-hero-secondary {
  display:inline-flex; align-items:center; gap:10px;
  background:rgba(255,255,255,0.08);
  color:var(--white); font-family:'Poppins',sans-serif;
  font-size:0.92rem; font-weight:600; padding:15px 34px;
  border-radius:var(--radius); border:1px solid rgba(255,255,255,0.22);
  cursor:pointer; text-decoration:none;
  transition:background var(--transition), transform var(--transition);
}
.btn-hero-secondary:hover { background:rgba(255,255,255,0.15); color:var(--white); transform:translateY(-3px); }
.hero-scroll-indicator {
  position:absolute; bottom:32px; left:50%; transform:translateX(-50%);
  z-index:10; display:flex; flex-direction:column; align-items:center; gap:8px;
  animation:fadeIn 1s ease 1s both;
}
.hero-scroll-indicator span { font-family:'Poppins',sans-serif; font-size:0.58rem; color:rgba(255,255,255,0.30); letter-spacing:2px; text-transform:uppercase; margin-right:-2px; line-height:1.6; }
.scroll-mouse { width:20px; height:32px; border:2px solid rgba(255,255,255,0.20); border-radius:10px; display:flex; align-items:flex-start; justify-content:center; padding-top:4px; }
.scroll-wheel { width:2px; height:8px; background:rgba(255,255,255,0.45); border-radius:2px; animation:scrollWheel 1.5s ease infinite; }
@keyframes scrollWheel { 0%{transform:translateY(0);opacity:1;} 100%{transform:translateY(10px);opacity:0;} }
.hero-nav-controls { position:absolute; bottom:36px; right:36px; z-index:10; display:flex; gap:8px; }
.hero-dot-btn { width:8px; height:8px; border-radius:99px; background:rgba(255,255,255,0.25); border:none; cursor:pointer; transition:width var(--transition), background var(--transition); padding:0; }
.hero-dot-btn.active, .hero-dot-btn:hover { background:var(--accent); width:24px; }

/* ═══════════════════════════════════════════════════════════════════════
   SECTION UTILITIES — lines 300–322
   ═══════════════════════════════════════════════════════════════════════ */
.section { padding:80px 0; }
.section-sm { padding:50px 0; }
.section-lg { padding:100px 0; }
.container-gtss { max-width:1200px; margin:0 auto; padding:0 24px; }
.section-header { text-align:center; margin-bottom:56px; }
.section-eyebrow {
  display:inline-flex; align-items:center; gap:8px;
  font-family:'Poppins',sans-serif; font-size:0.70rem; font-weight:700;
  color:var(--primary); letter-spacing:2.5px; text-transform:uppercase; margin-bottom:12px;
}
.section-eyebrow::before, .section-eyebrow::after { content:''; display:block; width:28px; height:1px; background:var(--primary); opacity:0.4; }
.section-title {
  font-family:'Playfair Display',serif;
  font-size:clamp(1.8rem,5vw,2.8rem); font-weight:700;
  color:var(--dark); line-height:1.2; margin-bottom:14px;
}
.section-title span { color:var(--primary); }
.section-subtitle { font-family:'Inter',sans-serif; font-size:1rem; color:var(--gray); max-width:580px; margin:0 auto; line-height:1.7; }
.section-divider { width:56px; height:3px; background:var(--gradient-main); border-radius:99px; margin:16px auto 0; }

/* ═══════════════════════════════════════════════════════════════════════
   3D CARDS — lines 324–370
   Card system with professional depth and lift effect.
   ═══════════════════════════════════════════════════════════════════════ */
.card-gtss {
  background:var(--gradient-card);
  border:1px solid rgba(0,0,0,0.07);
  border-bottom:3px solid rgba(192,57,43,0.20);
  border-radius:var(--radius-lg);
  padding:32px;
  box-shadow:var(--shadow-3d);
  transition:transform 0.32s cubic-bezier(0.34,1.56,0.64,1), box-shadow 0.32s ease;
  position:relative; overflow:hidden;
}
.card-gtss::before {
  content:''; position:absolute; top:0; left:0; right:0; height:3px;
  background:var(--gradient-main);
  border-radius:var(--radius-lg) var(--radius-lg) 0 0;
}
.card-gtss::after {
  content:''; position:absolute; inset:0; border-radius:inherit;
  background:linear-gradient(135deg, rgba(255,255,255,0.08) 0%, transparent 50%);
  pointer-events:none;
}
.card-gtss:hover {
  transform:translateY(-10px) scale(1.012);
  box-shadow:
    0 1px 0 rgba(255,255,255,0.85) inset,
    0 22px 50px rgba(100,30,22,0.18),
    0 8px 20px rgba(0,0,0,0.10),
    0 3px 0 rgba(146,43,33,0.25);
}
.card-icon {
  width:54px; height:54px; background:var(--gradient-main);
  border-radius:var(--radius); display:flex; align-items:center; justify-content:center;
  margin-bottom:20px;
  box-shadow:0 4px 16px rgba(192,57,43,0.30), 0 1px 0 rgba(255,255,255,0.3) inset;
}
.card-icon i { font-size:1.25rem; color:var(--white); }
.card-title { font-family:'Playfair Display',serif; font-size:1.18rem; font-weight:700; color:var(--dark); margin-bottom:10px; }
.card-text { font-family:'Inter',sans-serif; font-size:0.87rem; color:var(--gray); line-height:1.7; }

/* ═══════════════════════════════════════════════════════════════════════
   ABOUT SECTION — lines 372–400
   ═══════════════════════════════════════════════════════════════════════ */
.about-section { background:var(--white); }
.about-text { font-family:'Inter',sans-serif; font-size:0.97rem; color:var(--dark-3); line-height:1.85; text-align:justify; margin-bottom:18px; }
.about-highlight {
  background:linear-gradient(135deg, #FFF2F0, #FFF8F7);
  border-left:4px solid var(--primary);
  border-radius:0 var(--radius) var(--radius) 0;
  padding:20px 24px; margin:20px 0;
}
.about-highlight h4 { font-family:'Poppins',sans-serif; font-size:0.86rem; font-weight:700; color:var(--primary); margin-bottom:7px; text-transform:uppercase; letter-spacing:1px; }
.about-highlight p { font-size:0.87rem; color:var(--dark-3); line-height:1.7; }
.about-ieee-notice {
  display:flex; align-items:flex-start; gap:14px; background:var(--bg);
  border-radius:var(--radius); padding:18px 22px; border:1px solid var(--border); margin-top:18px;
}
.about-ieee-notice i { color:var(--secondary); font-size:1.2rem; flex-shrink:0; margin-top:2px; }
.about-ieee-notice p { font-family:'Inter',sans-serif; font-size:0.87rem; color:var(--dark-3); line-height:1.6; }

/* ═══════════════════════════════════════════════════════════════════════
   STATS SECTION — lines 402–428
   ═══════════════════════════════════════════════════════════════════════ */
.stats-section { background:var(--dark); padding:64px 0; position:relative; overflow:hidden; }
.stats-section::before {
  content:''; position:absolute; inset:0;
  background:linear-gradient(135deg, rgba(100,30,22,0.98) 0%, rgba(146,43,33,0.88) 50%, rgba(192,57,43,0.68) 100%);
  z-index:0;
}
.stats-grid { display:grid; grid-template-columns:repeat(4,1fr); position:relative; z-index:1; }
.stat-item { text-align:center; padding:44px 20px; border-right:1px solid rgba(255,255,255,0.06); }
.stat-item:last-child { border-right:none; }
.stat-icon { font-size:1.9rem; color:rgba(245,200,66,0.50); margin-bottom:12px; }
.stat-value {
  font-family:'Playfair Display',serif; font-size:3rem; font-weight:800;
  line-height:1; margin-bottom:8px;
  background:var(--gradient-gold);
  -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text;
}
.stat-label { font-family:'Poppins',sans-serif; font-size:0.68rem; font-weight:500; color:rgba(255,255,255,0.40); letter-spacing:2px; text-transform:uppercase; margin-right:-2px; line-height:1.6; }

/* ═══════════════════════════════════════════════════════════════════════
   DATES SIDEBAR — lines 430–468
   ═══════════════════════════════════════════════════════════════════════ */
.dates-sidebar {
  background:var(--white); border-radius:var(--radius-lg); overflow:hidden;
  box-shadow:var(--shadow-3d); border:1px solid rgba(192,57,43,0.14);
  border-bottom:3px solid rgba(192,57,43,0.22);
}
.dates-sidebar-header { background:var(--gradient-main); padding:20px 24px; }
.dates-sidebar-header h3 { font-family:'Playfair Display',serif; font-size:1.25rem; font-weight:700; color:var(--white); margin:0; display:flex; align-items:center; gap:10px; }
.dates-list { padding:8px 0; }
.date-row { display:flex; align-items:flex-start; padding:14px 20px; border-bottom:1px solid var(--border); gap:14px; transition:background var(--transition); }
.date-row:last-child { border-bottom:none; }
.date-row:hover { background:#FFF5F2; }
.date-row-icon { width:34px; height:34px; background:rgba(192,57,43,0.07); border-radius:8px; display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.date-row-icon i { color:var(--primary); font-size:0.83rem; }
.date-row-info p { font-family:'Inter',sans-serif; font-size:0.86rem; font-weight:500; color:var(--dark); margin-bottom:2px; line-height:1.4; }
.date-row-info span { font-family:'Poppins',sans-serif; font-size:0.80rem; font-weight:700; color:var(--primary); }
.dates-sidebar-cta { padding:16px 20px; }
.dates-sidebar-cta a {
  display:flex; align-items:center; justify-content:center; gap:8px;
  background:var(--gradient-main); color:var(--white);
  font-family:'Poppins',sans-serif; font-size:0.84rem; font-weight:600;
  padding:11px 18px; border-radius:var(--radius); text-decoration:none;
  box-shadow:0 4px 14px rgba(192,57,43,0.28);
  transition:transform var(--transition), box-shadow var(--transition);
}
.dates-sidebar-cta a:hover { transform:translateY(-2px); box-shadow:0 8px 24px rgba(192,57,43,0.40); color:var(--white); }

/* ═══════════════════════════════════════════════════════════════════════
   PUBLISHING SIDEBAR — lines 470–492
   ═══════════════════════════════════════════════════════════════════════ */
.publishing-card {
  background:var(--white); border-radius:var(--radius-lg); overflow:hidden;
  box-shadow:var(--shadow-md); border:1px solid var(--border); margin-bottom:22px;
}
.publishing-card-header { background:var(--gradient-main); padding:16px 22px; }
.publishing-card-header h3 { font-family:'Playfair Display',serif; font-size:1.05rem; font-weight:700; color:var(--white); margin:0; }
.publishing-card-body { padding:22px; text-align:center; }
.publishing-card-body p { font-family:'Inter',sans-serif; font-size:0.86rem; color:var(--gray); margin-bottom:18px; line-height:1.6; }
.publishing-logos { display:flex; flex-direction:column; align-items:center; gap:14px; }
.publishing-logos img { max-height:50px; width:auto; object-fit:contain; }
.publishing-logos .pub-sep { font-family:'Poppins',sans-serif; font-size:0.66rem; color:var(--gray-light); letter-spacing:1px; text-transform:uppercase; }

/* ═══════════════════════════════════════════════════════════════════════
   COUNTDOWN — lines 494–524
   ═══════════════════════════════════════════════════════════════════════ */
.countdown-section { background:var(--gradient-dark); padding:52px 0 56px; position:relative; overflow:hidden; }
.countdown-section::before {
  content:''; position:absolute; inset:0;
  background:radial-gradient(ellipse at 25% 50%, rgba(192,57,43,0.14) 0%, transparent 55%),
             radial-gradient(ellipse at 75% 50%, rgba(232,160,32,0.06) 0%, transparent 55%);
  pointer-events:none;
}
.countdown-label-top { font-family:'Poppins',sans-serif; font-size:0.64rem; font-weight:700; color:rgba(255,255,255,0.30); letter-spacing:3px; text-transform:uppercase; text-align:center; margin-bottom:8px; }
.countdown-title { font-family:'Playfair Display',serif; font-size:clamp(1.1rem,2.5vw,1.55rem); font-weight:600; color:rgba(255,255,255,0.88); text-align:center; margin-bottom:30px; letter-spacing:0.2px; }
.countdown-grid { display:flex; flex-wrap:wrap; justify-content:center; align-items:center; gap:14px; position:relative; z-index:2; width:100%; max-width:580px; margin:0 auto; }
.countdown-item {
  background:rgba(255,255,255,0.04);
  border:1px solid rgba(192,57,43,0.18); border-radius:var(--radius-lg);
  padding:22px 18px; text-align:center;
  flex:1; min-width:110px; max-width:130px;
  box-shadow:0 3px 0 rgba(192,57,43,0.20), 0 6px 20px rgba(0,0,0,0.20);
  transition:transform var(--transition), background var(--transition);
  position:relative; overflow:hidden;
}
.countdown-item::before { content:''; position:absolute; top:0; left:0; right:0; height:2px; background:var(--gradient-main); }
.countdown-item:hover { background:rgba(192,57,43,0.07); transform:translateY(-4px); }
.countdown-number {
  font-family:'Playfair Display',serif; font-size:2.8rem; font-weight:800;
  line-height:1; display:block;
  background:var(--gradient-main);
  -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text;
}
.countdown-unit { font-family:'Poppins',sans-serif; font-size:0.62rem; font-weight:600; color:rgba(255,255,255,0.38); letter-spacing:2px; text-transform:uppercase; margin-right:-2px; line-height:1.6; display:block; margin-top:7px; }
.countdown-colon { font-family:'Playfair Display',serif; font-size:2.2rem; color:rgba(192,57,43,0.30); align-self:center; line-height:1; margin:0 -6px; animation:blink 1s step-end infinite; padding-bottom:14px; }
@keyframes blink { 0%,100%{opacity:1;} 50%{opacity:0.15;} }

/* ═══════════════════════════════════════════════════════════════════════
   TRACK CARDS — lines 526–562
   3D lift with professional header + topic list.
   ═══════════════════════════════════════════════════════════════════════ */
.track-card {
  background:var(--white);
  border-radius:var(--radius-lg); overflow:hidden;
  border:1px solid rgba(0,0,0,0.07);
  border-bottom:4px solid rgba(192,57,43,0.25);
  box-shadow:
    0 1px 0 rgba(255,255,255,0.90) inset,
    0 4px 10px rgba(0,0,0,0.06),
    0 8px 28px rgba(146,43,33,0.09),
    0 2px 0 rgba(146,43,33,0.15);
  transition:transform 0.32s cubic-bezier(0.34,1.56,0.64,1), box-shadow 0.32s ease;
  height:100%;
}
.track-card:hover {
  transform:translateY(-10px) scale(1.012);
  box-shadow:
    0 1px 0 rgba(255,255,255,0.90) inset,
    0 22px 50px rgba(100,30,22,0.18),
    0 8px 20px rgba(0,0,0,0.10),
    0 4px 0 rgba(146,43,33,0.28);
}
.track-card-header {
  background:var(--gradient-main); padding:22px 24px;
  position:relative; overflow:hidden; min-height:86px;
  display:flex; flex-direction:column; justify-content:flex-end;
}
.track-card-header::after {
  content:''; position:absolute; right:-28px; top:-28px;
  width:110px; height:110px; background:rgba(255,255,255,0.04); border-radius:50%;
}
.track-number-label { font-family:'Poppins',sans-serif; font-size:0.60rem; font-weight:600; color:rgba(255,255,255,0.42); letter-spacing:2px; text-transform:uppercase; margin-right:-2px; line-height:1.6; margin-bottom:4px; position:relative; z-index:1; }
.track-card-title { font-family:'Playfair Display',serif; font-size:1.07rem; font-weight:700; color:var(--white); line-height:1.3; position:relative; z-index:1; }
.track-card-body { padding:20px 24px; }
.track-topics-list { list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:7px; }
.track-topics-list li { display:flex; align-items:flex-start; gap:10px; font-family:'Inter',sans-serif; font-size:0.84rem; color:var(--dark-3); line-height:1.5; }
.track-topics-list li::before { content:''; width:5px; height:5px; background:var(--primary); border-radius:50%; margin-top:8px; flex-shrink:0; }

/* ═══════════════════════════════════════════════════════════════════════
   COMMITTEE SECTION — lines 564–612
   ═══════════════════════════════════════════════════════════════════════ */
.committee-section { background:var(--white); }
.committee-group { margin-bottom:52px; }
.committee-group-heading {
  font-family:'Poppins',sans-serif; font-size:0.70rem; font-weight:700;
  color:var(--primary); letter-spacing:2.5px; text-transform:uppercase;
  margin-bottom:18px; padding-bottom:10px;
  border-bottom:2px solid rgba(192,57,43,0.10);
  display:flex; align-items:center; gap:10px;
}
.committee-grid { display:flex; flex-wrap:wrap; justify-content:center; gap:20px; }
.committee-item {
  flex: 1 1 320px; max-width: 450px;
  background: #ffffff;
  border: 1px solid rgba(0,0,0,0.08);
  border-left: 4px solid var(--primary);
  border-radius: var(--radius); 
  padding: 28px 24px;
  transition: transform 0.3s cubic-bezier(0.34,1.56,0.64,1), box-shadow 0.3s ease;
  display: flex; align-items: center; gap: 24px;
  box-shadow: 0 4px 15px rgba(0,0,0,0.03);
}
.committee-item:hover {
  transform: translateY(-5px);
  box-shadow: 0 15px 35px rgba(100,30,22,0.12), 0 5px 15px rgba(0,0,0,0.06);
  border-left-color: var(--accent);
}
.committee-avatar {
  width: 90px; height: 90px; border-radius: 50%;
  background: var(--gradient-main);
  display: flex; align-items: center; justify-content: center; flex-shrink: 0;
  font-family: 'Poppins', sans-serif; font-size: 1.2rem; font-weight: 700; color: var(--white);
  overflow: hidden;
  box-shadow: 0 4px 12px rgba(192,57,43,0.25);
  border: 3px solid #ffffff;
}
.committee-avatar img { width: 100%; height: 100%; object-fit: cover; }
.committee-info h4 { font-family: 'Poppins', sans-serif; font-size: 1.1rem; font-weight: 700; color: var(--dark); margin-bottom: 8px; line-height: 1.3; }
.committee-info p { font-family: 'Inter', sans-serif; font-size: 0.85rem; color: var(--gray); line-height: 1.5; margin-bottom: 0; }
.patron-item {
  background:linear-gradient(145deg, #FFFFFF, #FFF9F8);
  border:1px solid rgba(0,0,0,0.06); border-radius:var(--radius);
  padding:15px 18px; display:flex; align-items:center; gap:12px;
  margin-bottom:10px; transition:transform var(--transition), box-shadow var(--transition);
  box-shadow:0 2px 8px rgba(0,0,0,0.05);
}
.patron-item:hover { transform:translateY(-2px); box-shadow:0 6px 20px rgba(100,30,22,0.12); }
.patron-item::before { content:''; width:3px; height:34px; background:var(--gradient-main); border-radius:2px; flex-shrink:0; }
.patron-item p { font-family:'Inter',sans-serif; font-size:0.89rem; color:var(--dark-3); line-height:1.5; }

/* ═══════════════════════════════════════════════════════════════════════
   SPEAKER CARDS — lines 614–642
   ═══════════════════════════════════════════════════════════════════════ */
.speaker-card {
  background:var(--white); border-radius:var(--radius-lg); overflow:hidden;
  border:1px solid rgba(0,0,0,0.07); border-bottom:3px solid rgba(192,57,43,0.20);
  box-shadow:var(--shadow-3d);
  transition:transform 0.32s cubic-bezier(0.34,1.56,0.64,1), box-shadow 0.32s ease;
  text-align:center;
}
.speaker-card:hover {
  transform:translateY(-10px) scale(1.012);
  box-shadow:0 1px 0 rgba(255,255,255,0.85) inset, 0 22px 50px rgba(100,30,22,0.18), 0 4px 0 rgba(146,43,33,0.25);
}
.speaker-img-wrap { width:100%; aspect-ratio:1; overflow:hidden; background:var(--bg-dark); position:relative; }
.speaker-img-wrap img { width:100%; height:100%; object-fit:cover; object-position:top; transition:transform var(--transition-slow); }
.speaker-card:hover .speaker-img-wrap img { transform:scale(1.06); }
.speaker-info { padding:20px 16px; }
.speaker-name { font-family:'Playfair Display',serif; font-size:1.04rem; font-weight:700; color:var(--dark); margin-bottom:4px; }
.speaker-role { font-family:'Poppins',sans-serif; font-size:0.68rem; font-weight:600; color:var(--primary); text-transform:uppercase; letter-spacing:1px; margin-bottom:6px; }
.speaker-org { font-family:'Inter',sans-serif; font-size:0.79rem; color:var(--gray); line-height:1.4; }

/* ═══════════════════════════════════════════════════════════════════════
   SUBMISSION STEPS — lines 644–672
   ═══════════════════════════════════════════════════════════════════════ */
.submission-step {
  background:linear-gradient(145deg, #FFFFFF, #FFF9F8);
  border-radius:var(--radius-lg); padding:26px;
  border:1px solid rgba(0,0,0,0.07); border-bottom:3px solid rgba(192,57,43,0.18);
  display:flex; gap:18px; align-items:flex-start;
  box-shadow:var(--shadow-md);
  transition:transform 0.28s cubic-bezier(0.34,1.56,0.64,1), box-shadow 0.28s ease;
  margin-bottom:16px;
}
.submission-step:hover {
  transform:translateX(8px) translateY(-3px);
  box-shadow:0 14px 36px rgba(100,30,22,0.15), 0 4px 10px rgba(0,0,0,0.08);
}
.step-num {
  width:46px; height:46px; background:var(--gradient-main); border-radius:50%;
  display:flex; align-items:center; justify-content:center; flex-shrink:0;
  font-family:'Playfair Display',serif; font-size:1.1rem; font-weight:700; color:var(--white);
  box-shadow:0 4px 14px rgba(192,57,43,0.32);
}
.step-content h4 { font-family:'Poppins',sans-serif; font-size:0.94rem; font-weight:600; color:var(--dark); margin-bottom:5px; }
.step-content p { font-family:'Inter',sans-serif; font-size:0.86rem; color:var(--gray); line-height:1.6; }

/* ═══════════════════════════════════════════════════════════════════════
   CTA BOX — lines 674–694
   ═══════════════════════════════════════════════════════════════════════ */
.cta-box {
  background:var(--gradient-main); border-radius:var(--radius-xl);
  padding:52px 44px; text-align:center; position:relative; overflow:hidden;
  box-shadow:0 8px 0 rgba(100,30,22,0.40), 0 16px 48px rgba(100,30,22,0.25);
}
.cta-box::before { content:''; position:absolute; right:-80px; top:-80px; width:280px; height:280px; background:rgba(255,255,255,0.04); border-radius:50%; }
.cta-box::after { content:''; position:absolute; left:-60px; bottom:-60px; width:200px; height:200px; background:rgba(255,255,255,0.03); border-radius:50%; }
.cta-box h3 { font-family:'Playfair Display',serif; font-size:1.9rem; font-weight:700; color:var(--white); margin-bottom:10px; position:relative; z-index:1; }
.cta-box p { font-family:'Inter',sans-serif; font-size:0.93rem; color:rgba(255,255,255,0.76); margin-bottom:28px; max-width:470px; margin-left:auto; margin-right:auto; position:relative; z-index:1; }

/* ═══════════════════════════════════════════════════════════════════════
   CONTACT CARDS — lines 696–720
   ═══════════════════════════════════════════════════════════════════════ */
.contact-card {
  background:linear-gradient(145deg, #FFFFFF, #FFF9F8);
  border-radius:var(--radius-xl); padding:34px;
  border:1px solid rgba(0,0,0,0.07); border-bottom:3px solid rgba(192,57,43,0.20);
  box-shadow:var(--shadow-3d); text-align:center;
  transition:transform 0.32s cubic-bezier(0.34,1.56,0.64,1), box-shadow 0.32s ease;
  height:100%;
}
.contact-card:hover {
  transform:translateY(-8px);
  box-shadow:0 1px 0 rgba(255,255,255,0.85) inset, 0 18px 44px rgba(100,30,22,0.16), 0 3px 0 rgba(146,43,33,0.22);
}
.contact-icon-wrap { width:66px; height:66px; background:linear-gradient(135deg, #FFF0EE, #FDDDD8); border-radius:50%; display:flex; align-items:center; justify-content:center; margin:0 auto 16px; }
.contact-icon-wrap i { font-size:1.65rem; color:var(--primary); }
.contact-card h3 { font-family:'Poppins',sans-serif; font-size:1.08rem; font-weight:700; color:var(--dark); margin-bottom:12px; }
.contact-card p { font-family:'Inter',sans-serif; font-size:0.89rem; color:var(--dark-3); line-height:1.6; }
.contact-card a { color:var(--primary); font-weight:600; }
.contact-card a:hover { color:var(--secondary); }

/* ═══════════════════════════════════════════════════════════════════════
   TIMELINE — lines 722–758
   ═══════════════════════════════════════════════════════════════════════ */
.timeline { position:relative; padding:20px 0; max-width:800px; margin:0 auto; }
.timeline::before { content:''; position:absolute; left:50%; top:0; bottom:0; width:2px; background:linear-gradient(180deg, var(--primary-dark), var(--primary), var(--secondary)); transform:translateX(-50%); border-radius:2px; }
.timeline-item { display:flex; align-items:center; margin-bottom:34px; position:relative; }
.timeline-item:nth-child(odd) { flex-direction:row; padding-right:calc(50% + 34px); text-align:right; }
.timeline-item:nth-child(even) { flex-direction:row-reverse; padding-left:calc(50% + 34px); text-align:left; }
.timeline-dot {
  position:absolute; left:50%; transform:translateX(-50%);
  width:42px; height:42px; background:var(--gradient-main); border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  box-shadow:0 4px 16px rgba(192,57,43,0.32), 0 1px 0 rgba(255,255,255,0.3) inset;
  z-index:2; flex-shrink:0;
}
.timeline-dot i { color:var(--white); font-size:0.90rem; }
.timeline-content {
  background:linear-gradient(145deg, #FFFFFF, #FFF9F8);
  border-radius:var(--radius); padding:16px 20px;
  border:1px solid rgba(0,0,0,0.07); border-bottom:3px solid rgba(192,57,43,0.18);
  box-shadow:var(--shadow-md); width:100%;
  transition:transform var(--transition), box-shadow var(--transition);
}
.timeline-content:hover { transform:translateY(-3px); box-shadow:0 12px 32px rgba(100,30,22,0.14); }
.timeline-date-text { font-family:'Poppins',sans-serif; font-size:0.84rem; font-weight:700; color:var(--primary); margin-bottom:2px; }
.timeline-event-title { font-family:'Inter',sans-serif; font-size:0.93rem; font-weight:600; color:var(--dark); }
.timeline-tag { display:inline-block; padding:3px 10px; border-radius:99px; font-size:0.63rem; font-weight:600; letter-spacing:1px; text-transform:uppercase; margin-top:6px; }
.tag-deadline { background:rgba(192,57,43,0.08); color:var(--primary); }
.tag-notice { background:rgba(232,160,32,0.10); color:var(--secondary-dark); }
.tag-event { background:rgba(245,200,66,0.12); color:#8B6914; }

/* ═══════════════════════════════════════════════════════════════════════
   LOCAL INFO CARDS — lines 760–790
   ═══════════════════════════════════════════════════════════════════════ */
.local-card {
  background:linear-gradient(145deg, #FFFFFF, #FFF9F8);
  border-radius:var(--radius-lg); overflow:hidden;
  border:1px solid rgba(0,0,0,0.07); border-bottom:3px solid rgba(192,57,43,0.18);
  box-shadow:var(--shadow-md);
  transition:transform 0.28s cubic-bezier(0.34,1.56,0.64,1), box-shadow 0.28s ease;
  height:100%;
}
.local-card:hover { transform:translateY(-6px); box-shadow:0 16px 40px rgba(100,30,22,0.14), 0 4px 0 rgba(146,43,33,0.22); }
.local-card-body { padding:22px 24px; }
.local-card-body h4 { font-family:'Poppins',sans-serif; font-size:0.94rem; font-weight:600; color:var(--dark); margin-bottom:8px; display:flex; align-items:center; gap:8px; }
.local-card-body h4 i { color:var(--primary); }
.local-card-body p { font-family:'Inter',sans-serif; font-size:0.84rem; color:var(--gray); line-height:1.6; margin-bottom:12px; }
.local-card-body a { font-family:'Poppins',sans-serif; font-size:0.79rem; font-weight:600; color:var(--primary); }
.local-card-body a:hover { color:var(--secondary); }
.transport-item {
  background:linear-gradient(145deg, #FFFFFF, #FFF9F8);
  border:1px solid rgba(0,0,0,0.07); border-bottom:3px solid rgba(192,57,43,0.18);
  border-radius:var(--radius); padding:22px 18px; text-align:center;
  box-shadow:var(--shadow-sm);
  transition:transform 0.28s cubic-bezier(0.34,1.56,0.64,1), box-shadow 0.28s ease;
}
.transport-item:hover { transform:translateY(-5px); box-shadow:0 14px 36px rgba(100,30,22,0.14); }
.transport-item .transport-icon { font-size:2.4rem; margin-bottom:10px; }
.transport-item h4 { font-family:'Poppins',sans-serif; font-size:0.93rem; font-weight:600; color:var(--dark); margin-bottom:5px; }
.transport-item p { font-family:'Inter',sans-serif; font-size:0.81rem; color:var(--gray); line-height:1.5; }

/* ═══════════════════════════════════════════════════════════════════════
   BREADCRUMB — lines 792–812
   ═══════════════════════════════════════════════════════════════════════ */
.breadcrumb-section {
  background:var(--gradient-dark); padding:52px 0 48px; position:relative; overflow:hidden;
}
.breadcrumb-section::before {
  content:''; position:absolute; inset:0;
  background:radial-gradient(ellipse at 30% 50%, rgba(192,57,43,0.18) 0%, transparent 60%);
}
.breadcrumb-inner { position:relative; z-index:2; text-align:center; max-width:1200px; margin:0 auto; padding:0 24px; }
.breadcrumb-title { font-family:'Playfair Display',serif; font-size:clamp(2rem,5vw,3rem); font-weight:800; color:var(--white); margin-bottom:12px; text-shadow:0 3px 16px rgba(0,0,0,0.40); }
.breadcrumb-nav { display:flex; justify-content:center; align-items:center; gap:8px; flex-wrap:wrap; }
.breadcrumb-nav a { font-family:'Poppins',sans-serif; font-size:0.79rem; color:rgba(255,255,255,0.44); text-decoration:none; transition:color var(--transition); }
.breadcrumb-nav a:hover { color:var(--accent); }
.breadcrumb-sep { color:rgba(255,255,255,0.20); font-size:0.68rem; }
.breadcrumb-current { font-family:'Poppins',sans-serif; font-size:0.79rem; color:var(--accent); font-weight:600; }

/* ═══════════════════════════════════════════════════════════════════════
   FOOTER — lines 814–880
   ═══════════════════════════════════════════════════════════════════════ */
.site-footer { background:#0C0606; padding:60px 0 0; position:relative; overflow:hidden; }
.site-footer::before { content:''; position:absolute; top:0; left:0; right:0; height:3px; background:var(--gradient-main); }
.footer-grid {
  display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:44px;
  padding-bottom:44px; position:relative; z-index:1;
}

/* Footer brand — GTSS logo */
.footer-brand-logo {
  height:72px; width:72px;
  object-fit:contain; border-radius:50%;
  background:rgba(255,255,255,0.06);
  padding:8px;
  margin-bottom:14px; display:block;
}
.footer-brand h3 { font-family:'Playfair Display',serif; font-size:1.25rem; font-weight:700; color:var(--white); margin-bottom:6px; }
.footer-brand p { font-family:'Inter',sans-serif; font-size:0.81rem; color:rgba(255,255,255,0.35); line-height:1.7; margin-bottom:18px; }
.footer-social { display:flex; gap:8px; }
.footer-social a {
  width:34px; height:34px; background:rgba(255,255,255,0.04);
  border:1px solid rgba(255,255,255,0.06); border-radius:8px;
  display:flex; align-items:center; justify-content:center;
  color:rgba(255,255,255,0.36); font-size:0.81rem; text-decoration:none;
  transition:background var(--transition), border-color var(--transition), transform var(--transition);
}
.footer-social a:hover { background:var(--gradient-main); border-color:transparent; color:var(--white); transform:translateY(-3px); }
.footer-col h4 {
  font-family:'Poppins',sans-serif; font-size:0.70rem; font-weight:700;
  color:rgba(255,255,255,0.86); letter-spacing:1.5px; text-transform:uppercase;
  margin-bottom:16px; padding-bottom:10px; border-bottom:1px solid rgba(255,255,255,0.05);
}
.footer-links { display:flex; flex-direction:column; gap:9px; list-style:none; padding:0; margin:0; }
.footer-links a { font-family:'Inter',sans-serif; font-size:0.81rem; color:rgba(255,255,255,0.36); text-decoration:none; display:flex; align-items:center; gap:6px; transition:color var(--transition), padding var(--transition); }
.footer-links a:hover { color:var(--accent); padding-left:4px; }
.footer-links a::before { content:'›'; color:var(--primary); font-size:0.93rem; }
.footer-contact-item { display:flex; gap:10px; margin-bottom:11px; align-items:flex-start; }
.footer-contact-item i { color:var(--primary-light); font-size:0.81rem; margin-top:3px; flex-shrink:0; }
.footer-contact-item span, .footer-contact-item a { font-family:'Inter',sans-serif; font-size:0.79rem; color:rgba(255,255,255,0.35); line-height:1.5; }
.footer-contact-item a:hover { color:var(--accent); }
.footer-bottom {
  border-top:1px solid rgba(255,255,255,0.05); padding:16px 0;
  display:flex; align-items:center; justify-content:center;
  flex-wrap:wrap; gap:8px; position:relative; z-index:1; text-align:center;
}
.footer-bottom p { font-family:'Inter',sans-serif; font-size:0.76rem; color:rgba(255,255,255,0.20); }

/* ═══════════════════════════════════════════════════════════════════════
   SPONSORS SECTION — lines 882–898
   ═══════════════════════════════════════════════════════════════════════ */
.sponsors-section { background:var(--white); padding:36px 0 34px; border-top:2px solid rgba(192,57,43,0.10); border-bottom:2px solid rgba(192,57,43,0.06); }
.sponsors-label { font-family:'Poppins',sans-serif; font-size:0.65rem; font-weight:700; color:var(--gray-light); letter-spacing:2.5px; text-transform:uppercase; text-align:center; margin-bottom:28px; }
.sponsors-grid { display:flex; flex-wrap:wrap; justify-content:center; align-items:center; gap:20px 40px; max-width:860px; margin:0 auto; }
.sponsor-logo { height:58px; width:auto; max-width:140px; object-fit:contain; opacity:0.65; transition:opacity var(--transition), transform var(--transition); filter:grayscale(15%); }
.sponsor-logo:hover { opacity:1; transform:scale(1.10); filter:grayscale(0%); }

/* ═══════════════════════════════════════════════════════════════════════
   BUTTON SYSTEM — lines 900–924
   ═══════════════════════════════════════════════════════════════════════ */
.btn-primary-gtss {
  display:inline-flex; align-items:center; gap:8px;
  background:var(--gradient-main); color:var(--white);
  font-family:'Poppins',sans-serif; font-size:0.85rem; font-weight:600;
  padding:12px 26px; border-radius:var(--radius); border:none; cursor:pointer;
  text-decoration:none;
  box-shadow:0 4px 0 rgba(100,30,22,0.40), 0 6px 20px rgba(192,57,43,0.28);
  transition:transform var(--transition), box-shadow var(--transition);
}
.btn-primary-gtss:hover { transform:translateY(-3px); box-shadow:0 4px 0 rgba(100,30,22,0.40), 0 12px 30px rgba(192,57,43,0.42); color:var(--white); }
.btn-primary-gtss:active { transform:translateY(1px); box-shadow:0 2px 0 rgba(100,30,22,0.40), 0 4px 12px rgba(192,57,43,0.28); }
.btn-secondary-gtss {
  display:inline-flex; align-items:center; gap:8px; background:transparent;
  color:var(--primary); font-family:'Poppins',sans-serif; font-size:0.85rem; font-weight:600;
  padding:11px 26px; border-radius:var(--radius); border:2px solid var(--primary);
  cursor:pointer; text-decoration:none; transition:background var(--transition), color var(--transition), transform var(--transition);
}
.btn-secondary-gtss:hover { background:var(--gradient-main); color:var(--white); border-color:transparent; transform:translateY(-3px); }
.btn-white-gtss {
  display:inline-flex; align-items:center; gap:8px; background:var(--white);
  color:var(--primary); font-family:'Poppins',sans-serif; font-size:0.85rem; font-weight:700;
  padding:12px 26px; border-radius:var(--radius); border:none; cursor:pointer;
  text-decoration:none; box-shadow:0 3px 0 rgba(0,0,0,0.12), 0 6px 18px rgba(0,0,0,0.10);
  transition:transform var(--transition), box-shadow var(--transition);
}
.btn-white-gtss:hover { transform:translateY(-3px); box-shadow:0 3px 0 rgba(0,0,0,0.12), 0 10px 26px rgba(0,0,0,0.16); color:var(--primary); }

/* ═══════════════════════════════════════════════════════════════════════
   BACK TO TOP — lines 926–938
   ═══════════════════════════════════════════════════════════════════════ */
.back-to-top {
  position:fixed; bottom:28px; right:28px; width:44px; height:44px;
  background:var(--gradient-main); color:var(--white); border:none; border-radius:50%;
  display:flex; align-items:center; justify-content:center; font-size:0.93rem;
  cursor:pointer; box-shadow:0 4px 0 rgba(100,30,22,0.40), 0 8px 24px rgba(192,57,43,0.38);
  z-index:8000; opacity:0; transform:translateY(16px);
  transition:opacity var(--transition), transform var(--transition), box-shadow var(--transition);
  text-decoration:none;
}
.back-to-top.visible { opacity:1; transform:translateY(0); }
.back-to-top:hover { transform:translateY(-3px); box-shadow:0 4px 0 rgba(100,30,22,0.40), 0 14px 32px rgba(192,57,43,0.52); color:var(--white); }

/* ═══════════════════════════════════════════════════════════════════════
   SCHEDULE TABLE — lines 940–958
   ═══════════════════════════════════════════════════════════════════════ */
.schedule-table-wrap {
  background:var(--white); border-radius:var(--radius-lg); overflow-x:auto; -webkit-overflow-scrolling:touch;
  box-shadow:var(--shadow-3d); border:1px solid rgba(0,0,0,0.07);
  border-bottom:4px solid rgba(192,57,43,0.22);
}
.schedule-table { width:100%; border-collapse:collapse; min-width:500px; }
.schedule-table th { background:var(--gradient-main); color:var(--white); padding:13px 17px; font-family:'Poppins',sans-serif; font-size:0.79rem; font-weight:600; text-align:left; }
.schedule-table td { padding:12px 17px; font-family:'Inter',sans-serif; font-size:0.85rem; color:var(--dark-3); border-bottom:1px solid var(--border); }
.schedule-table tr:last-child td { border-bottom:none; }
.schedule-table tr:hover td { background:#FFF5F2; }
.schedule-time { font-weight:700; color:var(--primary); white-space:nowrap; font-family:'Poppins',sans-serif; }

/* ═══════════════════════════════════════════════════════════════════════
   MAP & ACK BOX — lines 960–980
   ═══════════════════════════════════════════════════════════════════════ */
.map-embed { border-radius:var(--radius-lg); overflow:hidden; box-shadow:var(--shadow-md); border:2px solid var(--border); }
.map-embed iframe { width:100%; height:420px; border:none; display:block; }
.ack-box { background:linear-gradient(135deg, #FFF5F2, #FFF9F8); border:1px solid rgba(192,57,43,0.10); border-radius:var(--radius-lg); padding:26px 30px; display:flex; gap:16px; align-items:flex-start; }
.ack-box i { font-size:1.4rem; color:var(--secondary); flex-shrink:0; }
.ack-box p { font-family:'Inter',sans-serif; font-size:0.89rem; color:var(--dark-3); line-height:1.7; }
.ack-box a { color:var(--primary); font-weight:600; text-decoration:underline; }

/* ═══════════════════════════════════════════════════════════════════════
   MMMUT ABOUT STATS — lines 982–996
   ═══════════════════════════════════════════════════════════════════════ */
.mmmut-highlight-box { background:linear-gradient(135deg, #FFF5F2, #FFFAF9); border-radius:var(--radius-xl); padding:38px; border:1px solid rgba(192,57,43,0.10); margin-bottom:30px; }
.mmmut-stat-item { text-align:center; padding:22px 14px; }
.mmmut-stat-value { font-family:'Playfair Display',serif; font-size:2.4rem; font-weight:800; color:var(--primary); margin-bottom:4px; }
.mmmut-stat-label { font-family:'Poppins',sans-serif; font-size:0.70rem; font-weight:600; color:var(--gray); text-transform:uppercase; letter-spacing:1.5px; }

/* ═══════════════════════════════════════════════════════════════════════
   ANIMATIONS — lines 998–1014
   ═══════════════════════════════════════════════════════════════════════ */
@keyframes fadeIn { from{opacity:0;} to{opacity:1;} }
@keyframes fadeInUp { from{opacity:0;transform:translateY(24px);} to{opacity:1;transform:translateY(0);} }
@keyframes fadeInDown { from{opacity:0;transform:translateY(-16px);} to{opacity:1;transform:translateY(0);} }
@keyframes fadeInLeft { from{opacity:0;transform:translateX(-24px);} to{opacity:1;transform:translateX(0);} }
@keyframes fadeInRight { from{opacity:0;transform:translateX(24px);} to{opacity:1;transform:translateX(0);} }
.text-gradient { background:var(--gradient-main); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; }

/* ═══════════════════════════════════════════════════════════════════════
   GRID HELPERS — lines 1016–1022
   ═══════════════════════════════════════════════════════════════════════ */
.grid-2 { display:grid; grid-template-columns:repeat(2,1fr); gap:26px; }
.grid-3 { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.grid-4 { display:grid; grid-template-columns:repeat(4,1fr); gap:18px; }
.grid-auto { display:grid; grid-template-columns:repeat(auto-fill, minmax(270px,1fr)); gap:20px; }

/* ═══════════════════════════════════════════════════════════════════════
   RESPONSIVE — lines 1024–1080
   ═══════════════════════════════════════════════════════════════════════ */
@media (max-width:1300px) {
  .nav-menu > li > a,
  .nav-menu > li > .nav-dropdown-trigger {
    font-size: 0.72rem;
    padding: 6px 6px;
  }
}
@media (max-width:1150px) {
  .navbar-inner { padding: 0 14px; }
  .nav-menu { gap: 0; padding: 0 4px; }
  .nav-menu > li > a,
  .nav-menu > li > .nav-dropdown-trigger {
    font-size: 0.68rem;
    padding: 5px 4px;
  }
  .brand-name { font-size: 1rem; }
  .nav-btn {
    padding: 6px 12px !important;
    font-size: 0.75rem !important;
  }
}
@media (max-width:1200px) {
  .footer-grid { grid-template-columns:1fr 1fr; gap:28px; }
  .stats-grid { grid-template-columns:repeat(2,1fr); }
  .stat-item:nth-child(even) { border-right:none; }
  .stat-item { border-bottom:1px solid rgba(255,255,255,0.06); }
}
@media (max-width:992px) {
  :root { --nav-height:62px; }
  .nav-menu { display:none !important; }
  .navbar-toggler-gtss { display:flex; }

  .nav-action-wrap .nav-btn { display: none !important; }
  .nav-action-wrap { gap: 0; flex: 0 0 auto; }
  .navbar-brand-wrap { flex: 1; }

  .mobile-nav { display:block; }
  .site-header { padding:10px 0; }
  .site-header-inner { flex-direction:column; text-align:center; gap:8px; }
  .header-logos { justify-content:center; gap:10px; }
  .header-logo-link img { height:40px; }
  .header-divider { display:none; }
  .header-center { width:100%; padding:0 10px; }
  .timeline::before { display:none; }
  .timeline-item { flex-direction:column !important; padding:0 !important; text-align:left !important; margin-bottom:14px; }
  .timeline-item:nth-child(odd) { text-align:left !important; }
  .timeline-dot { position:static; transform:none; margin-bottom:10px; }
  .grid-2 { grid-template-columns:1fr; }
  .grid-3 { grid-template-columns:repeat(2,1fr); }
  .grid-4 { grid-template-columns:repeat(2,1fr); }
  .footer-grid { grid-template-columns:1fr; }
  .cta-box { padding:32px 22px; }
}
@media (max-width:768px) {
  .section { padding:46px 0; }
  .section-lg { padding:58px 0; }
  .container-gtss { padding:0 16px; }
  .hero-content { padding:110px 18px 70px; }
  .hero-actions { flex-direction:column; align-items:center; }
  .btn-hero-primary, .btn-hero-secondary { width:100%; max-width:295px; justify-content:center; }
  .stats-grid { grid-template-columns:repeat(2,1fr); }
  .grid-3, .grid-4 { grid-template-columns:1fr; }
  .footer-bottom { flex-direction:column; text-align:center; }
  .committee-grid { grid-template-columns:1fr; }
  .hero-nav-controls { right:14px; bottom:14px; }
}
@media (max-width:480px) {
  .countdown-item { padding:16px 12px; min-width:72px; }
  .countdown-number { font-size:2.3rem; }
  .hero-meta { gap:7px; }
  .hero-meta-item { font-size:0.73rem; padding:7px 13px; }
  .header-logo-link img { height:32px; }
}

@media (max-width: 576px) {
  .loader-title { font-size: 1.8rem; letter-spacing: 4px; margin-right: -4px; }
  .loader-subtitle { font-size: 0.6rem; letter-spacing: 1px; margin-right: -1px; white-space: normal; word-wrap: break-word; }
  .loader-logo-img { height: 75px; width: 75px; }
}


/* Make all standard sections transparent so body background and watermark show through */
section.section {
    background-color: transparent !important;
    background: transparent !important;
}


/* Match site header to light green background without making it transparent (to hide watermark) */
.site-header {
    background: #f2fcf2 !important;
}

/* ═══════════════════════════════════════════════════════════════════════
   REGISTRATION PAGE STYLES
   ═══════════════════════════════════════════════════════════════════════ */
.registration-table-wrap {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  margin-bottom: 40px;
}
.registration-fees-table {
  width: 100%;
  border-collapse: collapse;
  background: var(--white);
  box-shadow: 0 10px 30px rgba(0,0,0,0.05);
  border-radius: 12px;
  overflow: hidden;
  min-width: 580px;
}
.registration-fees-table thead tr {
  background: var(--primary);
  color: var(--white);
  text-align: left;
}
.registration-fees-table th {
  padding: 18px 24px;
  font-family: 'Inter', sans-serif;
  font-size: 1.05rem;
  font-weight: 600;
}
.registration-fees-table td {
  padding: 18px 24px;
  font-family: 'Inter', sans-serif;
  color: var(--dark-3);
  border-bottom: 1px solid #eee;
}
.registration-fees-table tr:last-child td {
  border-bottom: none;
}
.registration-fees-table .col-category {
  font-weight: 500;
  color: var(--dark);
}
.registration-fees-table .row-alt {
  background: #fafafa;
}

/* Bank Account Details Card */
.bank-details-wrap {
  margin-bottom: 48px;
}
.bank-details-card {
  background: var(--gradient-card, #ffffff);
  border: 1px solid rgba(0,0,0,0.07);
  border-bottom: 3px solid rgba(192,57,43,0.20);
  border-radius: 16px;
  padding: 32px;
  box-shadow: var(--shadow-3d, 0 8px 24px rgba(0,0,0,0.06));
  position: relative;
  overflow: hidden;
}
.bank-details-bar {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
  background: var(--gradient-main, linear-gradient(135deg, #7B241C, #C0392B));
}
.bank-details-header {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 8px;
}
.bank-details-icon {
  width: 48px;
  height: 48px;
  background: var(--gradient-main, #C0392B);
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--white);
  font-size: 1.3rem;
  box-shadow: 0 4px 14px rgba(192,57,43,0.3);
  flex-shrink: 0;
}
.bank-details-title {
  font-family: 'Playfair Display', serif;
  font-size: 1.5rem;
  font-weight: 700;
  color: var(--dark, #111);
  margin: 0;
}
.bank-details-subtitle {
  font-family: 'Inter', sans-serif;
  font-size: 0.88rem;
  color: var(--gray, #666);
  margin: 3px 0 0;
}
.bank-details-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 16px;
  margin-top: 24px;
}
.bank-detail-item {
  background: var(--white);
  border: 1px solid rgba(192,57,43,0.10);
  border-radius: 10px;
  padding: 16px 20px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.03);
}
.bank-detail-label {
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 1px;
  color: var(--primary, #C0392B);
  font-weight: 700;
  margin-bottom: 4px;
}
.bank-detail-val {
  font-family: 'Inter', sans-serif;
  font-size: 0.95rem;
  font-weight: 600;
  color: var(--dark, #111);
}
.bank-detail-val.val-code {
  font-size: 1.05rem;
  font-weight: 700;
  letter-spacing: 0.5px;
}
.registration-cards-grid {
  margin-top: 48px;
}
.registration-notes-wrap {
  margin-top: 40px;
}
.registration-notes-list {
  margin: 0 0 0 25px;
  padding: 0;
  line-height: 1.8;
}
.text-primary-link {
  color: var(--primary);
  font-weight: 600;
}
