/* ===== UNIFIED SITE DESIGN SYSTEM & HEADER COLOR FAMILY ===== */
:root {
  --header-bg: #EEF3F5;
  --paper: #EEF3F5;
  --paper-2: #E4ECF0;
  --bg-ice: #EEF3F5;
  --bg-slate: #E4ECF0;
  --line: #D0DCE2;
  --charcoal: #183240;
  --charcoal-2: #122630;
  --steel: #4A606E;
  --ink: #122630;
  --crimson: #C41E3A;
  --crimson-dark: #8f1529;
}

header{
  position:sticky;
  top:0;
  z-index:1000;
  background:rgba(238,243,245,.96) !important;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  border-bottom:1px solid #D0DCE2 !important;
}
nav{
  max-width:1180px;
  margin:0 auto;
  padding:14px 32px;
  display:flex;
  align-items:center;
  justify-content:space-between;
}
.brand{
  display:flex;
  align-items:center;
  text-decoration:none;
  color:var(--charcoal, #183240);
}
.brand-logo-img{
  height:52px;
  width:auto;
  max-height:60px;
  object-fit:contain;
  display:block;
  transition:transform 0.2s ease;
}
.navlinks{
  display:flex;
  align-items:center;
  gap:26px;
  font-size:14px;
  font-weight:500;
  font-family:'IBM Plex Sans', sans-serif;
}
.navlinks > a{
  position:relative;
  padding:6px 0;
  color:var(--charcoal, #183240);
  opacity:.75;
  transition:all .2s ease;
  display:inline-flex;
  align-items:center;
  text-decoration:none;
  white-space:nowrap;
}
.navlinks > a.active, .navlinks > a:hover{
  opacity:1;
  color:var(--crimson, #C41E3A);
}
.nav-cta{
  font-family:'IBM Plex Mono', monospace !important;
  font-size:12px !important;
  letter-spacing:.06em !important;
  background:#C41E3A !important;
  color:#ffffff !important;
  padding:11px 18px !important;
  border-radius:2px !important;
  text-decoration:none !important;
  white-space:nowrap !important;
  transition:background .2s ease !important;
  display:inline-flex !important;
  align-items:center !important;
  gap:6px !important;
  box-sizing:border-box !important;
}
.nav-cta:hover{
  background:#8f1529 !important;
  color:#ffffff !important;
}
.nav-cta.nav-cta-dark{
  background:#000000 !important;
  color:#ffffff !important;
}
.nav-cta.nav-cta-dark:hover{
  background:#8F1529 !important;
}
.nav-cta.nav-cta-secondary{
  background:#3B424D !important;
  color:#ffffff !important;
}
.nav-cta.nav-cta-secondary:hover{
  background:#8F1529 !important;
}

/* Nav Dropdown */
.nav-dropdown{
  position:relative;
  display:inline-flex;
  align-items:center;
}
.nav-dropdown > a{
  position:relative;
  padding:6px 0;
  color:var(--charcoal, #183240);
  opacity:.75;
  transition:all .2s ease;
  display:inline-flex;
  align-items:center;
  gap:4px;
  text-decoration:none;
  white-space:nowrap;
}
.nav-dropdown:hover > a, .nav-dropdown > a.active{
  opacity:1;
  color:var(--crimson, #C41E3A);
}
.nav-dropdown .arrow{
  font-size:10px;
  margin-left:3px;
  transition:transform 0.2s ease;
}
.nav-dropdown:hover .arrow{
  transform:rotate(180deg);
}
.dropdown-menu{
  position:absolute;
  top:calc(100% + 8px);
  left:-10px;
  min-width:285px;
  background:#183240;
  border:1px solid #284A5C;
  border-radius:4px;
  padding:8px 0;
  box-shadow:0 14px 32px rgba(0,0,0,0.38);
  opacity:0;
  visibility:hidden;
  transform:translateY(6px);
  transition:all 0.2s ease;
  z-index:2000;
}
.dropdown-menu::before{
  content:'';
  position:absolute;
  top:-12px;
  left:0;
  width:100%;
  height:12px;
  background:transparent;
}
.nav-dropdown:hover .dropdown-menu{
  opacity:1;
  visibility:visible;
  transform:translateY(0);
}
.dropdown-menu a{
  display:block;
  padding:10px 18px;
  font-size:13.5px;
  color:#D8E6F0 !important;
  text-decoration:none;
  transition:all 0.15s ease;
  border-bottom:1px solid rgba(255,255,255,0.05);
  opacity:1 !important;
  white-space:nowrap;
}
.dropdown-menu a:last-child{
  border-bottom:none;
}
.dropdown-menu a:hover{
  background:var(--crimson, #C41E3A);
  color:#ffffff !important;
  padding-left:22px;
}

/* Wide 2-Column Dropdown Menu for 14+ Industries */
.dropdown-menu.dropdown-menu-wide{
  min-width: 560px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2px 4px;
  padding: 10px;
}
.dropdown-menu.dropdown-menu-wide a{
  font-size: 12.8px;
  padding: 8px 12px;
  border-bottom: 1px solid rgba(255,255,255,0.04);
}
.dropdown-menu.dropdown-menu-wide a.header-link{
  grid-column: 1 / -1;
  font-weight: 700;
  color: var(--crimson, #C41E3A) !important;
  font-size: 13.5px;
  border-bottom: 1px solid rgba(255,255,255,0.12);
  margin-bottom: 4px;
}

/* ===== MOBILE MENU BUTTON & DRAWER ===== */
.mobile-toggle-btn{
  display:none;
  background:transparent;
  border:none;
  cursor:pointer;
  padding:8px;
  color:var(--charcoal, #183240);
  z-index:1001;
}
.mobile-toggle-btn svg{
  width:28px;
  height:28px;
  display:block;
  fill:currentColor;
}

/* Hide mobile overlay and drawer completely on desktop */
.mobile-overlay{
  display:none !important;
  position:fixed;
  inset:0;
  background:rgba(0,0,0,0.65);
  backdrop-filter:blur(4px);
  z-index:9998;
  opacity:0;
  visibility:hidden;
  transition:all 0.3s ease;
}

.mobile-drawer{
  display:none !important;
  position:fixed;
  top:0;
  right:0;
  width:320px;
  max-width:85vw;
  height:100vh;
  background:#183240;
  color:#E0DDD5;
  z-index:9999;
  padding:24px 20px 40px;
  flex-direction:column;
  overflow-y:auto;
  box-shadow:-8px 0 28px rgba(0,0,0,0.5);
  transform:translateX(100%);
  transition:transform 0.35s cubic-bezier(0.16, 1, 0.3, 1);
}

.mobile-drawer-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding-bottom:16px;
  border-bottom:1px solid #284A5C;
  margin-bottom:20px;
}
.mobile-drawer-title{
  font-family:'Space Grotesk', sans-serif;
  font-size:18px;
  font-weight:700;
  color:#ffffff;
}
.mobile-drawer-title span{
  color:#C41E3A;
}
.mobile-close-btn{
  background:transparent;
  border:none;
  color:#9E9B92;
  font-size:24px;
  cursor:pointer;
  line-height:1;
  padding:4px 8px;
  transition:color 0.2s ease;
}
.mobile-close-btn:hover{
  color:#ffffff;
}

.mobile-nav-list{
  display:flex;
  flex-direction:column;
  gap:12px;
  margin-bottom:24px;
}
.mobile-nav-list a{
  color:#E0DDD5;
  text-decoration:none;
  font-size:15px;
  font-weight:500;
  padding:8px 0;
  border-bottom:1px solid rgba(255,255,255,0.06);
  transition:color 0.2s ease;
}
.mobile-nav-list a:hover, .mobile-nav-list a.active{
  color:#C41E3A;
  padding-left:6px;
}
.mobile-accordion{
  border-bottom:1px solid rgba(255,255,255,0.06);
}
.mobile-accordion summary{
  color:#E0DDD5;
  font-size:15px;
  font-weight:500;
  padding:8px 0;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:space-between;
  list-style:none;
}
.mobile-accordion summary::-webkit-details-marker{
  display:none;
}
.mobile-sub-menu{
  padding:6px 0 12px 14px;
  display:flex;
  flex-direction:column;
  gap:8px;
}
.mobile-sub-menu a{
  font-size:13.5px;
  color:#A8A499;
  border-bottom:none;
  padding:4px 0;
}
.mobile-sub-menu a:hover{
  color:#ffffff;
}

/* Active states when opened on mobile */
@media(max-width:980px){
  nav{padding:12px 20px;}
  .navlinks{display:none;}
  .nav-cta{display:none !important;}
  .mobile-toggle-btn{display:flex;align-items:center;}
  .mobile-overlay{display:block !important;}
  .mobile-drawer{display:flex !important;}
}

.mobile-overlay.active{
  opacity:1;
  visibility:visible;
}
.mobile-drawer.active{
  transform:translateX(0);
}

/* ===== UNIFIED FOOTER STYLES WITH UPRIGHT AHMEDABAD SKYLINE BACKGROUND ===== */
footer{
  position:relative !important;
  background-color:#0B1C26 !important;
  background-image:linear-gradient(180deg, rgba(11, 28, 38, 0.85) 0%, rgba(7, 18, 25, 0.88) 100%), url('../img/ahmedabad-skyline.jpg') !important;
  background-size:cover !important;
  background-position:center top !important;
  background-repeat:no-repeat !important;
  color:#CBD5E1 !important;
  padding:72px 0 36px !important;
  border-top:3px solid #C41E3A !important;
  font-size:14px !important;
  line-height:1.6 !important;
  margin-top:60px !important;
}
.footer-grid{
  display:grid !important;
  grid-template-columns:1.4fr 1fr 1fr 1.2fr !important;
  gap:44px !important;
  margin-bottom:48px !important;
}
.footer-col h4{
  font-family:'Space Grotesk', sans-serif !important;
  font-size:16px !important;
  font-weight:700 !important;
  color:#FFFFFF !important;
  margin-bottom:18px !important;
  letter-spacing:0.02em !important;
}
.footer-col h4::after{
  content:'' !important;
  display:block !important;
  width:24px !important;
  height:2px !important;
  background:#C41E3A !important;
  margin-top:6px !important;
}
.footer-brand{
  font-family:'Space Grotesk', sans-serif !important;
  font-size:22px !important;
  font-weight:700 !important;
  color:#FFFFFF !important;
  letter-spacing:-0.02em !important;
  margin-bottom:4px !important;
}
.footer-brand span{
  color:#C41E3A !important;
}
.footer-tagline{
  font-family:'IBM Plex Mono', monospace !important;
  font-size:11.5px !important;
  color:#E8A9B4 !important;
  letter-spacing:0.06em !important;
  text-transform:uppercase !important;
  margin-bottom:14px !important;
  display:block !important;
}
.footer-desc{
  font-size:13.5px !important;
  color:#94A3B8 !important;
  line-height:1.65 !important;
  margin-bottom:16px !important;
}
.footer-contact-item{
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  font-size:13.5px !important;
  margin-bottom:8px !important;
  color:#CBD5E1 !important;
}
.footer-contact-item a{
  color:#FFFFFF !important;
  text-decoration:none !important;
  transition:color 0.2s ease !important;
}
.footer-contact-item a:hover{
  color:#C41E3A !important;
}
.footer-links{
  list-style:none !important;
  display:flex !important;
  flex-direction:column !important;
  gap:10px !important;
  padding:0 !important;
  margin:0 !important;
}
.footer-links a{
  color:#CBD5E1 !important;
  font-size:13.5px !important;
  text-decoration:none !important;
  transition:all 0.2s ease !important;
  display:inline-block !important;
}
.footer-links a:hover{
  color:#FFFFFF !important;
  transform:translateX(4px) !important;
}
.footer-bottom{
  padding-top:28px !important;
  border-top:1px solid rgba(255, 255, 255, 0.12) !important;
  display:flex !important;
  justify-content:space-between !important;
  align-items:center !important;
  flex-wrap:wrap !important;
  gap:16px !important;
  font-size:12.5px !important;
  color:#94A3B8 !important;
}
.footer-bottom-links{
  display:flex !important;
  gap:20px !important;
}
.footer-bottom-links a{
  color:#94A3B8 !important;
  text-decoration:none !important;
  transition:color 0.2s ease !important;
}
.footer-bottom-links a:hover{
  color:#C41E3A !important;
}

@media(max-width:820px){
  .footer-grid{grid-template-columns:1fr 1fr !important;}
}
@media(max-width:540px){
  .footer-grid{grid-template-columns:1fr !important;}
}

/* ===== UNIFIED FOUNDERS SECTION STYLES ===== */
section.dark{
  background:#183240 !important;
  color:#F5F3EC !important;
  padding:80px 0 !important;
}
.eyebrow.on-dark{
  color:#E8A9B4 !important;
}
.eyebrow.on-dark::before{
  background:#E8A9B4 !important;
}
.founders-grid{
  display:grid !important;
  grid-template-columns:repeat(3, 1fr) !important;
  gap:24px !important;
  background:transparent !important;
  border:none !important;
  margin-top:36px !important;
  border-radius:0 !important;
  overflow:visible !important;
}
.founder{
  background:#ffffff !important;
  border:1px solid #D0DCE2 !important;
  border-radius:6px !important;
  padding:34px 28px !important;
  color:#122630 !important;
  box-shadow:0 12px 28px rgba(18,38,48,0.15) !important;
  transition:transform 0.25s ease, box-shadow 0.25s ease !important;
}
.founder:hover{
  transform:translateY(-4px) !important;
  box-shadow:0 18px 36px rgba(18,38,48,0.25) !important;
}
.founder .avatar{
  width:64px !important;
  height:64px !important;
  border:2px solid #C41E3A !important;
  border-radius:50% !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  font-family:'Space Grotesk', sans-serif !important;
  font-weight:700 !important;
  color:#C41E3A !important;
  font-size:20px !important;
  margin-bottom:20px !important;
  background:#FFF5F5 !important;
}
.founder h4{
  color:#122630 !important;
  font-size:20px !important;
  font-weight:700 !important;
  margin-bottom:4px !important;
  font-family:'Space Grotesk', sans-serif !important;
}
.founder .role{
  font-family:'IBM Plex Mono', monospace !important;
  color:#C41E3A !important;
  font-size:11.5px !important;
  font-weight:600 !important;
  text-transform:uppercase !important;
  letter-spacing:.06em !important;
  margin-bottom:16px !important;
  display:block !important;
}
.founder p{
  font-size:14px !important;
  color:#4A606E !important;
  line-height:1.65 !important;
}
@media(max-width:980px){
  .founders-grid{grid-template-columns:1fr !important;}
}

/* ===== UNIFIED INNER PAGES FULL SECTION BACKGROUNDS (HEADER COLOR FAMILY) ===== */
.page-hero,
header + section,
section.hero,
section.page-hero {
  background: linear-gradient(180deg, #E4ECF0 0%, #EEF3F5 100%) !important;
  border-bottom: 1px solid #D0DCE2 !important;
}

.wide-process-sec,
section.alt-bg,
section.light-alt,
.specs-sec-alt {
  background: #E4ECF0 !important;
  border-top: 1px solid #D0DCE2 !important;
  border-bottom: 1px solid #D0DCE2 !important;
}

.faq-sec,
.services-sec,
.solutions-sec,
.industries-sec,
.about-sec,
.contact-sec,
.founders-sec,
.why-sec,
.clients-sec {
  background: #EEF3F5 !important;
}

.tag-pill {
  background: #E4ECF0 !important;
  border: 1px solid #D0DCE2 !important;
  color: #122630 !important;
}

/* ===== UNIFIED WHITE CARD STYLES ACROSS ALL SECTIONS ===== */
.st-item,
.sp-item,
.p-card,
.card-box,
.pillar,
.founder,
.apart-pillar,
.philo-block,
.mission-card,
.service-block,
.solution-card,
.client-card {
  background: #FFFFFF !important;
  border: 1px solid #D0DCE2 !important;
  border-radius: 6px !important;
  color: #122630 !important;
  box-shadow: 0 4px 16px rgba(18, 38, 48, 0.08) !important;
}

.st-item,
.sp-item {
  border-left: 3px solid #C41E3A !important;
  padding: 16px 20px !important;
}

.st-item strong,
.st-item h4,
.st-item h3,
.sp-item strong,
.sp-item h4,
.sp-item h3 {
  color: #122630 !important;
  font-family: 'Space Grotesk', sans-serif !important;
  font-weight: 700 !important;
  display: block !important;
  margin-bottom: 4px !important;
}

.st-item span,
.st-item p,
.sp-item span,
.sp-item p {
  color: #4A606E !important;
  font-size: 13.5px !important;
  line-height: 1.55 !important;
}

