/* ============================================================
   CODED CLOUDS — PREMIUM WHITE / LIGHT ENTERPRISE DESIGN SYSTEM
   Always Crisp White & Light Slate | High-Contrast Typography
   Single Accent #2563EB (Royal Tech Blue) | High-Visibility Logos
   ============================================================ */

/* ============================================================
   1. GOOGLE FONT — INTER
   ============================================================ */
@import url('https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,300;0,14..32,400;0,14..32,500;0,14..32,600;0,14..32,700;0,14..32,800;0,14..32,900;1,14..32,400&display=swap');

/* ============================================================
   2. DESIGN TOKENS — LIGHT ENTERPRISE (Forces Crisp White Mode)
   ============================================================ */
:root,
[data-theme="light"] {
  /* Crisp White & Subtle Slate Surfaces */
  --bg-primary:     #FFFFFF;
  --bg-secondary:   #F8FAFC;
  --bg-card:        #FFFFFF;
  --bg-input:       #F1F5F9;
  --bg-navbar:      #FFFFFF;
  --bg-footer:      #0B1220;

  /* High-Contrast Typography */
  --text-primary:   #0F172A;
  --text-secondary: #334155;
  --text-muted:     #64748B;
  --text-white:     #FFFFFF;
  --text-dark:      #0F172A;

  /* Clean Crisp Borders */
  --border-color:         #E2E8F0;
  --border-subtle:        #E2E8F0;
  --border-light:         #F1F5F9;
  --border-dark:          #CBD5E1;

  /* Accent — Single Tech Royal Blue */
  --accent:               #2563EB;
  --accent-hover:         #1D4ED8;
  --accent-glow:          rgba(37, 99, 235, 0.14);
  --accent-glow-soft:     rgba(37, 99, 235, 0.06);
  --accent-blue:          #2563EB;
  --accent-cyan:          #2563EB;
  --accent-purple:        #2563EB;
  --theme-cyan:           #2563EB;
  --theme-blue:           #2563EB;
  --theme-purple:         #2563EB;
  --theme-navy:           #0F172A;
  --theme-accent-glow:    rgba(37, 99, 235, 0.08);

  /* Status */
  --success:              #16A34A;

  /* Soft Ambient Shadows */
  --shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.05);
  --shadow-md: 0 4px 16px rgba(0, 0, 0, 0.06);
  --shadow-lg: 0 8px 30px rgba(0, 0, 0, 0.08);
  --shadow-xl: 0 16px 48px rgba(0, 0, 0, 0.10);

  /* Gradients */
  --gradient-hero:      linear-gradient(180deg, rgba(11, 18, 32, 0.75) 0%, rgba(11, 18, 32, 0.92) 100%);
  --gradient-btn:       linear-gradient(135deg, #2563EB 0%, #1D4ED8 100%);
  --gradient-btn-hover: linear-gradient(135deg, #1D4ED8 0%, #1E40AF 100%);
  --gradient-text:      linear-gradient(135deg, #0F172A 0%, #2563EB 100%);

  /* Radii */
  --radius-sm:  6px;
  --radius-md:  10px;
  --radius-lg:  14px;
  --radius-xl:  18px;
  --radius-xxl: 24px;
}

[data-theme="dark"] {
  /* Premium Executive Navy Blue Theme */
  --bg-primary:     #0B1220;
  --bg-secondary:   #0E172A;
  --bg-card:        #111C35;
  --bg-input:       #132040;
  --bg-navbar:      #0B1220;
  --bg-footer:      #0B1220;

  /* High-Contrast Typography */
  --text-primary:   #FFFFFF;
  --text-secondary: #CBD5E1;
  --text-muted:     #94A3B8;
  --text-white:     #FFFFFF;
  --text-dark:      #FFFFFF;

  /* Clean Navy Borders */
  --border-color:         #1E2D52;
  --border-subtle:        #192746;
  --border-light:         #253763;
  --border-dark:          #101B30;

  /* Accent */
  --accent:               #38bdf8;
  --accent-hover:         #0284c7;
  --accent-glow:          rgba(56, 189, 248, 0.2);
  --accent-glow-soft:     rgba(56, 189, 248, 0.08);
  --accent-blue:          #38bdf8;
  --accent-cyan:          #38bdf8;
  --accent-purple:        #818cf8;
  --theme-cyan:           #38bdf8;
  --theme-blue:           #38bdf8;
  --theme-purple:         #818cf8;
  --theme-navy:           #0B1220;
  --theme-accent-glow:    rgba(56, 189, 248, 0.15);

  /* Status */
  --success:              #22c55e;

  /* Navy Ambient Shadows */
  --shadow-sm: 0 1px 3px rgba(4, 9, 20, 0.35);
  --shadow-md: 0 4px 16px rgba(4, 9, 20, 0.45);
  --shadow-lg: 0 8px 30px rgba(4, 9, 20, 0.55);
  --shadow-xl: 0 16px 48px rgba(4, 9, 20, 0.65);

  /* Gradients */
  --gradient-hero:      linear-gradient(180deg, rgba(11, 18, 32, 0.85) 0%, rgba(11, 18, 32, 0.98) 100%);
  --gradient-btn:       linear-gradient(135deg, #2563EB 0%, #1D4ED8 100%);
  --gradient-btn-hover: linear-gradient(135deg, #1D4ED8 0%, #1E40AF 100%);
  --gradient-text:      linear-gradient(135deg, #FFFFFF 0%, #38bdf8 100%);

  /* Radii */
  --radius-sm:  6px;
  --radius-md:  10px;
  --radius-lg:  14px;
  --radius-xl:  18px;
  --radius-xxl: 24px;
}

/* ============================================================
   3. GLOBAL BASE RESET
   ============================================================ */
*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
  background-color: var(--bg-primary, #FFFFFF) !important;
  color: var(--text-primary, #0F172A) !important;
  overflow-x: hidden;
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Ensure sections have scroll margin so fixed navbar doesn't cover titles */
section, [id] {
  scroll-margin-top: 100px !important;
}

/* Section Background Alternations */
section {
  background-color: var(--bg-primary, #FFFFFF) !important;
  position: relative;
}

/* Headings base */
h1, h2, h3, h4, h5, h6 {
  font-family: 'Inter', sans-serif !important;
  color: var(--text-primary, #0F172A) !important;
  letter-spacing: -0.02em;
}

p {
  color: var(--text-secondary, #334155) !important;
  line-height: 1.7;
}

/* Dark Theme Overrides for Core Elements */
[data-theme="dark"] body {
  background-color: #0B1220 !important;
  color: #FFFFFF !important;
}

[data-theme="dark"] section {
  background-color: #0B1220 !important;
}

[data-theme="dark"] h1,
[data-theme="dark"] h2,
[data-theme="dark"] h3,
[data-theme="dark"] h4,
[data-theme="dark"] h5,
[data-theme="dark"] h6 {
  color: #FFFFFF !important;
}

[data-theme="dark"] p {
  color: #CBD5E1 !important;
}

[data-theme="dark"] .navbar {
  background: #0B1220 !important;
  border-bottom: 1px solid #1E2D52 !important;
  box-shadow: 0 2px 16px rgba(4, 9, 20, 0.45) !important;
}

[data-theme="dark"] .navbar.cc-scrolled {
  background: rgba(11, 18, 32, 0.97) !important;
  border-bottom: 1px solid #1E2D52 !important;
}

[data-theme="dark"] .mission-vision-section,
[data-theme="dark"] .client-section,
[data-theme="dark"] .enterprise-section,
[data-theme="dark"] .achievements-merged,
[data-theme="dark"] .corporate-ventures-section,
[data-theme="dark"] .industries-section-dark,
[data-theme="dark"] .careers-section,
[data-theme="dark"] .offices-section,
[data-theme="dark"] .faq-section {
  background: #0B1220 !important;
  border-color: #1E2D52 !important;
}

[data-theme="dark"] .mv-card,
[data-theme="dark"] .enterprise-card,
[data-theme="dark"] .partner-card,
[data-theme="dark"] .industry-card-dark,
[data-theme="dark"] .office-card,
[data-theme="dark"] .trust-card-ultra,
[data-theme="dark"] .leader-card-item,
[data-theme="dark"] .highlight-card,
[data-theme="dark"] .contact-card-frame,
[data-theme="dark"] .faq-item {
  background: #111C35 !important;
  border-color: #1E2D52 !important;
  box-shadow: 0 4px 20px rgba(4, 9, 20, 0.35) !important;
  color: #FFFFFF !important;
}

[data-theme="dark"] .mv-card:hover,
[data-theme="dark"] .enterprise-card:hover,
[data-theme="dark"] .partner-card:hover,
[data-theme="dark"] .industry-card-dark:hover,
[data-theme="dark"] .office-card:hover,
[data-theme="dark"] .trust-card-ultra:hover,
[data-theme="dark"] .leader-card-item:hover,
[data-theme="dark"] .highlight-card:hover {
  background: #172547 !important;
  border-color: #38bdf8 !important;
  box-shadow: 0 12px 30px rgba(56, 189, 248, 0.15) !important;
}

[data-theme="dark"] .mv-card h3,
[data-theme="dark"] .enterprise-card h3,
[data-theme="dark"] .partner-card h3,
[data-theme="dark"] .industry-card-dark h3,
[data-theme="dark"] .office-card h3,
[data-theme="dark"] .trust-card-ultra h3,
[data-theme="dark"] .leader-card-item h3,
[data-theme="dark"] .office-title,
[data-theme="dark"] .leader-name {
  color: #FFFFFF !important;
}

[data-theme="dark"] .mv-card p,
[data-theme="dark"] .enterprise-card p,
[data-theme="dark"] .partner-card p,
[data-theme="dark"] .industry-card-dark p,
[data-theme="dark"] .office-card p,
[data-theme="dark"] .trust-card-ultra p,
[data-theme="dark"] .leader-card-item p,
[data-theme="dark"] .enterprise-checklist li,
[data-theme="dark"] .highlight-card p {
  color: #CBD5E1 !important;
}

[data-theme="dark"] .marquee-pill {
  background: #111C35 !important;
  border-color: #1E2D52 !important;
  color: #FFFFFF !important;
}

[data-theme="dark"] .marquee-pill:hover {
  background: #172547 !important;
  border-color: #38bdf8 !important;
  color: #38bdf8 !important;
}

[data-theme="dark"] .slider-wrapper::before {
  background: linear-gradient(to right, #0B1220, transparent) !important;
}

[data-theme="dark"] .slider-wrapper::after {
  background: linear-gradient(to left, #0B1220, transparent) !important;
}

[data-theme="dark"] .theme-toggle-btn {
  border-color: #253763 !important;
  color: #38bdf8 !important;
  background: rgba(56, 189, 248, 0.1) !important;
}

[data-theme="dark"] .sidebar-trigger-btn {
  border-color: #253763 !important;
  color: #FFFFFF !important;
}

[data-theme="dark"] .sidebar-trigger-btn span,
[data-theme="dark"] .sidebar-trigger-btn i {
  color: #FFFFFF !important;
}

[data-theme="dark"] .cc-circle-lang-btn {
  border-color: #253763 !important;
  background: #111C35 !important;
  color: #FFFFFF !important;
}

[data-theme="dark"] .stat-label {
  color: #FFFFFF !important;
}

[data-theme="dark"] .stat-desc {
  color: #94A3B8 !important;
}

[data-theme="dark"] .track-record-divider {
  border-color: #1E2D52 !important;
}

[data-theme="dark"] .office-btn {
  background: #132040 !important;
  border-color: #3b82f6 !important;
  color: #38bdf8 !important;
}

[data-theme="dark"] .office-btn:hover {
  background: #2563eb !important;
  color: #ffffff !important;
}

[data-theme="dark"] .faq-question {
  background: #111C35 !important;
  color: #FFFFFF !important;
}

[data-theme="dark"] .faq-question:hover {
  color: #38bdf8 !important;
}

[data-theme="dark"] .faq-answer {
  background: #111C35 !important;
  color: #CBD5E1 !important;
}

[data-theme="dark"] .rating-card-frame {
  background: #111C35 !important;
  border-color: #1E2D52 !important;
  color: #FFFFFF !important;
}

[data-theme="dark"] .contact-section {
  background: #0B1220 !important;
}

[data-theme="dark"] .contact-card-frame {
  background: #111C35 !important;
  border-color: #1E2D52 !important;
}

[data-theme="dark"] .contact-form .form-control,
[data-theme="dark"] .contact-form input,
[data-theme="dark"] .contact-form select,
[data-theme="dark"] .contact-form textarea {
  background: #132040 !important;
  border-color: #1E2D52 !important;
  color: #FFFFFF !important;
}

[data-theme="dark"] .contact-form .form-control:focus,
[data-theme="dark"] .contact-form input:focus,
[data-theme="dark"] .contact-form textarea:focus {
  background: #172547 !important;
  border-color: #38bdf8 !important;
  color: #FFFFFF !important;
}

[data-theme="dark"] .contact-form label {
  color: #CBD5E1 !important;
}

[data-theme="dark"] .cc-lang-dropdown-menu {
  background: #111C35 !important;
  border-color: #1E2D52 !important;
  box-shadow: 0 10px 30px rgba(4, 9, 20, 0.6) !important;
}

[data-theme="dark"] .cc-lang-item {
  color: #FFFFFF !important;
}

[data-theme="dark"] .cc-lang-item:hover {
  background: #172547 !important;
  color: #38bdf8 !important;
}

[data-theme="dark"] .pro-footer {
  background: #0B1220 !important;
}

/* Selection */
::selection {
  background-color: #2563EB;
  color: #FFFFFF;
}

/* Global Eyebrow Badge */
.eyebrow-label,
.enterprise-badge,
.section-badge,
.value-badge {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: #2563EB !important;
  background: #EFF6FF !important;
  border: 1px solid rgba(37, 99, 235, 0.22) !important;
  padding: 6px 16px !important;
  border-radius: 9999px !important;
  margin-bottom: 16px !important;
}

.highlight-text {
  background: var(--gradient-text) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  color: #2563EB !important;
}

/* ============================================================
   4. SCROLL FADE-UP ANIMATION SYSTEM
   ============================================================ */
.cc-fade-up {
  opacity: 0;
  transform: translateY(24px);
  transition: opacity 0.65s cubic-bezier(0.16, 1, 0.3, 1),
              transform 0.65s cubic-bezier(0.16, 1, 0.3, 1);
  will-change: opacity, transform;
}

.cc-fade-up.cc-visible {
  opacity: 1 !important;
  transform: translateY(0) !important;
}

/* ============================================================
   5. NAVBAR — SLEEK HIGH-TRUST EXECUTIVE HEADER
   ============================================================ */
.navbar {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  background: #ffffff !important;
  min-height: 72px !important;
  padding: 12px 0 !important;
  border-bottom: 1px solid #f0f0f0 !important;
  box-shadow: 0 2px 16px rgba(0, 0, 0, 0.08) !important;
  z-index: 1050 !important;
  transition: background 0.3s ease, box-shadow 0.3s ease !important;
}

.navbar.cc-scrolled {
  background: rgba(255, 255, 255, 0.97) !important;
  backdrop-filter: blur(14px) !important;
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.10) !important;
}

.logo-img {
  height: 44px !important;
  width: auto !important;
  object-fit: contain !important;
}

/* Navbar Buttons */
.e-nav-talk-btn {
  background: #0284c7 !important;
  color: #FFFFFF !important;
  border: 1px solid #0284c7 !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  padding: 8px 20px !important;
  border-radius: 8px !important;
  box-shadow: 0 2px 10px rgba(2, 132, 199, 0.25) !important;
  transition: all 0.25s ease !important;
}

.e-nav-talk-btn:hover {
  background: #0369a1 !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 4px 14px rgba(37, 99, 235, 0.45) !important;
  color: #FFFFFF !important;
}

.sidebar-trigger-btn {
  background: transparent !important;
  border: 1.5px solid #d1d5db !important;
  color: #111827 !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: 0.06em !important;
  padding: 8px 16px !important;
  border-radius: 8px !important;
  transition: all 0.2s ease !important;
}

.sidebar-trigger-btn span,
.sidebar-trigger-btn i {
  color: #111827 !important;
}

.sidebar-trigger-btn:hover {
  background: #0284c7 !important;
  border-color: #0284c7 !important;
  color: #ffffff !important;
}

.theme-toggle-btn {
  display: flex !important;
  background: transparent !important;
  border: 1.5px solid #e4e4e7 !important;
  color: #52525b !important;
  width: 40px !important;
  height: 40px !important;
  border-radius: 50% !important;
  align-items: center !important;
  justify-content: center !important;
}

.theme-toggle-btn:hover {
  border-color: #0284c7 !important;
  color: #0284c7 !important;
  background: rgba(2, 132, 199, 0.06) !important;
}

/* ============================================================
   6. HERO SECTION
   ============================================================ */
.hero-section-ultra {
  padding-top: 130px !important;
  padding-bottom: 90px !important;
  position: relative !important;
  background-color: #0B1220 !important;
  min-height: 85vh !important;
  display: flex !important;
  align-items: center !important;
}

.hero-content-ultra {
  position: relative !important;
  z-index: 5 !important;
  max-width: 920px !important;
}

.hero-title-ultra {
  font-size: clamp(34px, 5.5vw, 68px) !important;
  font-weight: 800 !important;
  line-height: 1.1 !important;
  color: #FFFFFF !important;
  letter-spacing: -0.025em !important;
  margin: 16px 0 20px 0 !important;
}

.text-gradient-ultra {
  background: var(--gradient-text) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

.hero-description-ultra {
  font-size: clamp(16px, 2vw, 20px) !important;
  line-height: 1.6 !important;
  color: #E2E8F0 !important;
  max-width: 740px !important;
  margin-bottom: 32px !important;
}

/* Hero subtitle — force white so it's always visible on dark hero bg */
.hero-sub-ultra {
  color: rgba(255, 255, 255, 0.88) !important;
}

/* Hero CTAs */
.hero-actions-ultra .btn-primary-ultra {
  background: #0284c7 !important;
  color: #FFFFFF !important;
  border: 1px solid #0284c7 !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  padding: 13px 30px !important;
  border-radius: 10px !important;
  box-shadow: 0 4px 18px rgba(37, 99, 235, 0.4) !important;
  transition: all 0.25s ease !important;
}

.hero-actions-ultra .btn-primary-ultra:hover {
  background: #0369a1 !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 24px rgba(37, 99, 235, 0.5) !important;
}

.hero-actions-ultra .btn-outline-ultra {
  background: rgba(255, 255, 255, 0.08) !important;
  border: 1px solid rgba(255, 255, 255, 0.25) !important;
  color: #FFFFFF !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  padding: 13px 28px !important;
  border-radius: 10px !important;
  backdrop-filter: blur(8px) !important;
  transition: all 0.25s ease !important;
}

.hero-actions-ultra .btn-outline-ultra:hover {
  background: rgba(255, 255, 255, 0.16) !important;
  border-color: #FFFFFF !important;
  color: #FFFFFF !important;
}

/* Hero Trust Pills */
.hero-trust-ultra {
  margin-top: 48px !important;
}

.trust-card-ultra {
  background: rgba(255, 255, 255, 0.07) !important;
  border: 1px solid rgba(255, 255, 255, 0.14) !important;
  border-radius: 12px !important;
  backdrop-filter: blur(12px) !important;
  padding: 16px 20px !important;
  color: #FFFFFF !important;
}

.trust-card-ultra h4 {
  color: #FFFFFF !important;
  font-weight: 700 !important;
  font-size: 20px !important;
  margin-bottom: 4px !important;
}

.trust-card-ultra p {
  color: #CBD5E1 !important;
  font-size: 13px !important;
  margin: 0 !important;
}

/* ============================================================
   7. SERVICE MARQUEE STRIP
   ============================================================ */
.service-marquee-strip {
  background: #F8FAFC !important;
  border-top: 1px solid #E2E8F0 !important;
  border-bottom: 1px solid #E2E8F0 !important;
  padding: 16px 0 !important;
  overflow: hidden !important;
  position: relative !important;
  z-index: 10 !important;
}

.marquee-track {
  display: flex !important;
  align-items: center !important;
  gap: 16px !important;
  width: max-content !important;
  animation: marquee-scroll 42s linear infinite !important;
}

.marquee-track:hover {
  animation-play-state: paused !important;
}

@keyframes marquee-scroll {
  0%   { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

.marquee-pill {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  background: #FFFFFF !important;
  border: 1px solid #E2E8F0 !important;
  color: #0F172A !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  padding: 8px 18px !important;
  border-radius: 9999px !important;
  white-space: nowrap !important;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.04) !important;
  transition: all 0.25s ease !important;
}

.marquee-pill i {
  color: #2563EB !important;
  font-size: 13px !important;
}

.marquee-pill:hover {
  border-color: #2563EB !important;
  background: #EFF6FF !important;
  color: #2563EB !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 4px 12px rgba(37, 99, 235, 0.12) !important;
}

/* ============================================================
   8. MISSION, VISION, VALUES SECTION
   ============================================================ */
.mission-vision-section {
  background: #FFFFFF !important;
  padding: 90px 0 !important;
}

.section-header h2 {
  font-size: clamp(26px, 3.6vw, 42px) !important;
  font-weight: 800 !important;
  color: #0F172A !important;
  margin-bottom: 16px !important;
}

.mv-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)) !important;
  gap: 28px !important;
  margin-top: 48px !important;
}

.mv-card {
  background: #FFFFFF !important;
  border: 1px solid #E2E8F0 !important;
  border-top: 3px solid #2563EB !important;
  border-radius: 16px !important;
  padding: 36px 30px !important;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05) !important;
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
  position: relative !important;
}

.mv-card:hover {
  transform: translateY(-6px) !important;
  box-shadow: 0 16px 36px rgba(37, 99, 235, 0.10) !important;
  border-color: #BFDBFE !important;
}

.mv-icon {
  width: 52px !important;
  height: 52px !important;
  background: #EFF6FF !important;
  border: 1px solid rgba(37, 99, 235, 0.2) !important;
  border-radius: 12px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #2563EB !important;
  margin-bottom: 22px !important;
}

.mv-card h3 {
  font-size: 20px !important;
  font-weight: 700 !important;
  color: #0F172A !important;
  margin-bottom: 6px !important;
}

.mv-card h6 {
  font-size: 13px !important;
  font-weight: 700 !important;
  color: #2563EB !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  margin-bottom: 14px !important;
}

.mv-card p {
  font-size: 15px !important;
  line-height: 1.65 !important;
  color: #475569 !important;
  margin: 0 !important;
}

/* ============================================================
   9. CLIENT LOGOS MARQUEE — 100% VISIBLE & SHARP
   ============================================================ */
.client-section {
  background: #F8FAFC !important;
  padding: 85px 0 !important;
  border-top: 1px solid #E2E8F0 !important;
  border-bottom: 1px solid #E2E8F0 !important;
}

.client-header {
  text-align: center !important;
  margin-bottom: 48px !important;
}

.client-header h2 {
  font-size: clamp(24px, 3.5vw, 40px) !important;
  font-weight: 800 !important;
  color: #0F172A !important;
  margin-bottom: 12px !important;
}

.client-header p {
  font-size: 16px !important;
  color: #475569 !important;
  max-width: 680px !important;
  margin: 0 auto !important;
}

.slider-wrapper {
  overflow: hidden !important;
  position: relative !important;
  padding: 10px 0 !important;
}

.slider-wrapper::before,
.slider-wrapper::after {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  width: 90px;
  z-index: 2;
  pointer-events: none;
}

.slider-wrapper::before {
  left: 0;
  background: linear-gradient(to right, #F8FAFC, transparent) !important;
}

.slider-wrapper::after {
  right: 0;
  background: linear-gradient(to left, #F8FAFC, transparent) !important;
}

.logo-track {
  display: flex !important;
  align-items: center !important;
  gap: 28px !important;
  width: max-content !important;
  animation: logo-scroll 45s linear infinite !important;
}

.logo-track:hover {
  animation-play-state: paused !important;
}

@keyframes logo-scroll {
  0%   { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

/* White Crisp Logo Box - High Contrast & 100% Legibility */
.logo-card {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  padding: 8px 16px !important;
  flex-shrink: 0 !important;
  box-shadow: none !important;
  transition: all 0.25s ease !important;
  min-width: 120px !important;
  height: 70px !important;
}

.logo-card:hover {
  border-color: transparent !important;
  box-shadow: none !important;
  transform: translateY(-2px) !important;
}

.logo-card img {
  height: 40px !important;
  width: auto !important;
  max-width: 120px !important;
  object-fit: contain !important;
  filter: none !important;
  opacity: 1 !important;
  display: block !important;
  transition: transform 0.25s ease !important;
}

.logo-card:hover img {
  transform: scale(1.08) !important;
}

/* ============================================================
   10. ENTERPRISE PARTNERSHIP — 4 PILLAR CARDS
   ============================================================ */
.enterprise-section {
  background: #FFFFFF !important;
  padding: 95px 0 !important;
}

.enterprise-header {
  text-align: center !important;
  margin-bottom: 56px !important;
}

.enterprise-header h2 {
  font-size: clamp(26px, 3.8vw, 44px) !important;
  font-weight: 800 !important;
  color: #0F172A !important;
}

.enterprise-header p {
  font-size: 16px !important;
  color: #475569 !important;
  max-width: 720px !important;
  margin: 14px auto 0 auto !important;
}

.enterprise-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)) !important;
  gap: 28px !important;
}

.enterprise-card {
  background: #FFFFFF !important;
  border: 1px solid #E2E8F0 !important;
  border-radius: 16px !important;
  padding: 34px 28px !important;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05) !important;
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
  position: relative !important;
}

.enterprise-card:hover {
  transform: translateY(-6px) !important;
  border-color: #BFDBFE !important;
  box-shadow: 0 16px 36px rgba(37, 99, 235, 0.10) !important;
}

.enterprise-number {
  font-size: 13px !important;
  font-weight: 800 !important;
  color: #2563EB !important;
  background: #EFF6FF !important;
  border: 1px solid rgba(37, 99, 235, 0.2) !important;
  display: inline-block !important;
  padding: 4px 12px !important;
  border-radius: 8px !important;
  margin-bottom: 18px !important;
}

.enterprise-card h3 {
  font-size: 20px !important;
  font-weight: 700 !important;
  color: #0F172A !important;
  margin-bottom: 12px !important;
}

.enterprise-card p {
  font-size: 14px !important;
  color: #475569 !important;
  line-height: 1.65 !important;
  margin-bottom: 20px !important;
}

.enterprise-checklist {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

.enterprise-checklist li {
  display: flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
  font-size: 14px !important;
  color: #334155 !important;
  margin-bottom: 10px !important;
}

.enterprise-checklist li i,
.enterprise-checklist li svg {
  color: #2563EB !important;
  flex-shrink: 0 !important;
  margin-top: 3px !important;
}

/* ============================================================
   11. TRACK RECORD / STATS SECTION
   ============================================================ */
.achievements-merged {
  background: #F8FAFC !important;
  border-top: 1px solid #E2E8F0 !important;
  border-bottom: 1px solid #E2E8F0 !important;
  padding: 75px 0 !important;
}

.stat-item {
  text-align: center !important;
  padding: 16px !important;
}

.stat-number,
.counter {
  font-size: clamp(38px, 4.5vw, 60px) !important;
  font-weight: 800 !important;
  color: #2563EB !important;
  line-height: 1 !important;
  letter-spacing: -0.03em !important;
  margin-bottom: 10px !important;
  display: block !important;
}

.stat-label {
  font-size: 16px !important;
  font-weight: 700 !important;
  color: #0F172A !important;
  margin-bottom: 6px !important;
}

.stat-desc {
  font-size: 13px !important;
  color: #64748B !important;
  margin: 0 !important;
}

.track-record-divider {
  border-color: #E2E8F0 !important;
}

/* ============================================================
   12. VENTURES & STRATEGIC PARTNERS SECTION
   ============================================================ */
.corporate-ventures-section {
  background: #FFFFFF !important;
  padding: 95px 0 !important;
}

.ventures-header {
  text-align: center !important;
  margin-bottom: 56px !important;
}

.ventures-header h2 {
  font-size: clamp(26px, 3.8vw, 44px) !important;
  font-weight: 800 !important;
  color: #0F172A !important;
}

.partners-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)) !important;
  gap: 28px !important;
}

.partner-card {
  background: #FFFFFF !important;
  border: 1px solid #E2E8F0 !important;
  border-radius: 16px !important;
  padding: 34px !important;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05) !important;
  transition: all 0.3s ease !important;
}

.partner-card:hover {
  transform: translateY(-5px) !important;
  border-color: #BFDBFE !important;
  box-shadow: 0 16px 36px rgba(37, 99, 235, 0.10) !important;
}

.partner-card h3 {
  font-size: 20px !important;
  font-weight: 700 !important;
  color: #0F172A !important;
}

.partner-card p {
  color: #475569 !important;
  font-size: 14px !important;
  line-height: 1.65 !important;
}

.partner-logo-img {
  max-height: 48px !important;
  object-fit: contain !important;
  filter: none !important;
  opacity: 1 !important;
}

/* ============================================================
   13. SERVICES GRID — WHAT WE BUILD
   ============================================================ */
.services-section-dark,
.services-section {
  background: #F8FAFC !important;
  padding: 95px 0 !important;
  border-top: 1px solid #E2E8F0 !important;
}

.services-header {
  text-align: center !important;
  margin-bottom: 56px !important;
}

.services-header h2 {
  font-size: clamp(26px, 3.8vw, 44px) !important;
  font-weight: 800 !important;
  color: #0F172A !important;
}

.services-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)) !important;
  gap: 26px !important;
}

.service-card {
  background: #FFFFFF !important;
  border: 1px solid #E2E8F0 !important;
  border-radius: 16px !important;
  padding: 32px 28px !important;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05) !important;
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
  display: flex !important;
  flex-direction: column !important;
}

.service-card:hover {
  transform: translateY(-6px) !important;
  border-color: #2563EB !important;
  box-shadow: 0 16px 36px rgba(37, 99, 235, 0.12) !important;
}

.service-icon-wrap {
  width: 52px !important;
  height: 52px !important;
  background: #EFF6FF !important;
  border: 1px solid rgba(37, 99, 235, 0.2) !important;
  border-radius: 12px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #2563EB !important;
  font-size: 22px !important;
  margin-bottom: 22px !important;
}

.service-card h3 {
  font-size: 19px !important;
  font-weight: 700 !important;
  color: #0F172A !important;
  margin-bottom: 12px !important;
}

.service-card p {
  font-size: 14px !important;
  line-height: 1.65 !important;
  color: #475569 !important;
  flex-grow: 1 !important;
  margin-bottom: 20px !important;
}

.service-link {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  color: #2563EB !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  transition: gap 0.2s ease !important;
}

.service-link:hover {
  gap: 10px !important;
  color: #1D4ED8 !important;
}

/* ============================================================
   14. INDUSTRIES SECTION
   ============================================================ */
.industries-section-dark {
  background: var(--bg-primary, #FFFFFF) !important;
  padding: 95px 0 !important;
}

.industries-header-dark {
  text-align: center !important;
  margin-bottom: 56px !important;
}

.industries-header-dark h2 {
  font-size: clamp(26px, 3.8vw, 44px) !important;
  font-weight: 800 !important;
  color: var(--text-primary, #0F172A) !important;
}

.industries-grid-dark {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)) !important;
  gap: 26px !important;
}

/* Hide extra cards by default — shown via JS toggle */
.hidden-card-dark {
  display: none !important;
}

/* When grid has show-all, show the extra hidden cards */
#industriesGridDark.show-all .hidden-card-dark {
  display: flex !important;
  flex-direction: column !important;
}

.industry-card-dark {
  background: var(--bg-card, #FFFFFF) !important;
  border: 1px solid var(--border-color, #E2E8F0) !important;
  border-radius: 16px !important;
  padding: 30px !important;
  box-shadow: var(--shadow-md, 0 4px 20px rgba(0, 0, 0, 0.05)) !important;
  transition: all 0.3s ease !important;
  display: flex !important;
  flex-direction: column !important;
  text-decoration: none !important;
}

.industry-card-dark:hover {
  transform: translateY(-5px) !important;
  border-color: var(--accent, #2563EB) !important;
  box-shadow: 0 16px 36px rgba(37, 99, 235, 0.10) !important;
}

.industry-card-dark h3 {
  font-size: 18px !important;
  font-weight: 700 !important;
  color: var(--text-primary, #0F172A) !important;
  margin: 14px 0 10px 0 !important;
}

.industry-card-dark p {
  font-size: 14px !important;
  color: var(--text-secondary, #475569) !important;
  margin: 0 !important;
}

.industry-cta-dark {
  margin-top: 45px !important;
  text-align: center !important;
}

.btn-explore-dark {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 12px !important;
  padding: 14px 40px !important;
  font-size: 0.85rem !important;
  font-weight: 800 !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
  color: #FFFFFF !important;
  background: #2563EB !important;
  border: 2px solid #2563EB !important;
  border-radius: 50px !important;
  cursor: pointer !important;
  transition: all 0.3s ease !important;
  position: relative !important;
  overflow: hidden !important;
  box-shadow: 0 4px 18px rgba(37, 99, 235, 0.3) !important;
  text-decoration: none !important;
}

.btn-explore-dark span,
.btn-explore-dark i,
.btn-explore-dark #btnTextDark,
.btn-explore-dark #btnIconDark {
  color: #FFFFFF !important;
  display: inline-block !important;
}

.btn-explore-dark:hover {
  background: #1D4ED8 !important;
  border-color: #1D4ED8 !important;
  color: #FFFFFF !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 25px rgba(37, 99, 235, 0.45) !important;
}

.btn-explore-dark:hover i {
  transform: translateX(4px) !important;
}

[data-theme="dark"] .btn-explore-dark {
  background: #2563EB !important;
  border-color: #2563EB !important;
  color: #FFFFFF !important;
  box-shadow: 0 6px 20px rgba(37, 99, 235, 0.4) !important;
}

[data-theme="dark"] .btn-explore-dark:hover {
  background: #3B82F6 !important;
  border-color: #3B82F6 !important;
}

/* ============================================================
   15. CAREERS SECTION
   ============================================================ */
.careers-section {
  background: #F8FAFC !important;
  padding: 95px 0 !important;
  border-top: 1px solid #E2E8F0 !important;
}

.careers-left h2 {
  font-size: clamp(26px, 3.8vw, 44px) !important;
  font-weight: 800 !important;
  color: #0F172A !important;
  margin-bottom: 18px !important;
}

.careers-left p {
  font-size: 16px !important;
  color: #475569 !important;
  line-height: 1.7 !important;
}

.highlight-card {
  background: #FFFFFF !important;
  border: 1px solid #E2E8F0 !important;
  border-radius: 16px !important;
  padding: 24px !important;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05) !important;
  margin-bottom: 20px !important;
}

.highlight-card h4 {
  color: #0F172A !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  margin-bottom: 8px !important;
}

.highlight-card p {
  color: #475569 !important;
  font-size: 14px !important;
  margin: 0 !important;
}

/* ============================================================
   16. LEADERSHIP SECTION
   ============================================================ */
.leaders-section {
  background: #FFFFFF !important;
  padding: 95px 0 !important;
}

.leaders-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)) !important;
  gap: 28px !important;
}

.leader-card-item {
  background: #FFFFFF !important;
  border: 1px solid #E2E8F0 !important;
  border-radius: 16px !important;
  padding: 32px !important;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05) !important;
  transition: all 0.3s ease !important;
}

.leader-card-item:hover {
  transform: translateY(-5px) !important;
  border-color: #BFDBFE !important;
  box-shadow: 0 16px 36px rgba(37, 99, 235, 0.10) !important;
}

.leader-name {
  font-size: 19px !important;
  font-weight: 700 !important;
  color: #0F172A !important;
  margin-bottom: 4px !important;
}

.leader-role {
  font-size: 13px !important;
  font-weight: 700 !important;
  color: #2563EB !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  margin-bottom: 14px !important;
}

.leader-bio {
  font-size: 14px !important;
  color: #475569 !important;
  line-height: 1.65 !important;
}

/* ============================================================
   17. FAQ & RATING SECTION
   ============================================================ */
.faq-rating-section {
  background: #F8FAFC !important;
  padding: 95px 0 !important;
  border-top: 1px solid #E2E8F0 !important;
}

.faq-item {
  background: #FFFFFF !important;
  border: 1px solid #E2E8F0 !important;
  border-radius: 14px !important;
  margin-bottom: 14px !important;
  overflow: hidden !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04) !important;
  transition: border-color 0.25s ease !important;
}

.faq-question {
  background: #FFFFFF !important;
  color: #0F172A !important;
  font-weight: 700 !important;
  font-size: 16px !important;
  padding: 20px 24px !important;
  border: none !important;
  width: 100% !important;
  text-align: left !important;
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  cursor: pointer !important;
}

.faq-question:hover {
  color: #2563EB !important;
}

.faq-answer {
  padding: 0 24px 20px 24px !important;
  color: #475569 !important;
  font-size: 15px !important;
  line-height: 1.65 !important;
}

.rating-card-frame {
  background: #FFFFFF !important;
  border: 1px solid #E2E8F0 !important;
  border-radius: 18px !important;
  padding: 36px !important;
  box-shadow: 0 6px 24px rgba(0, 0, 0, 0.06) !important;
}

.rating-number-badge {
  font-size: 48px !important;
  font-weight: 800 !important;
  color: #2563EB !important;
}

/* ============================================================
   18. CONTACT SECTION
   ============================================================ */
.contact-section {
  background: #FFFFFF !important;
  padding: 95px 0 !important;
}

.contact-card-frame {
  background: #FFFFFF !important;
  border: 1px solid #E2E8F0 !important;
  border-radius: 20px !important;
  padding: clamp(28px, 4vw, 52px) !important;
  box-shadow: 0 16px 48px rgba(0, 0, 0, 0.06) !important;
}

.contact-form .form-control,
.contact-form input,
.contact-form select,
.contact-form textarea {
  background: #F8FAFC !important;
  border: 1px solid #CBD5E1 !important;
  color: #0F172A !important;
  border-radius: 10px !important;
  padding: 12px 16px !important;
  font-size: 15px !important;
  transition: all 0.2s ease !important;
}

.contact-form .form-control:focus,
.contact-form input:focus,
.contact-form textarea:focus {
  background: #FFFFFF !important;
  border-color: #2563EB !important;
  box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.15) !important;
  color: #0F172A !important;
  outline: none !important;
}

.contact-form label {
  color: #334155 !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  margin-bottom: 6px !important;
}

.contact-submit-btn {
  background: #0284c7 !important;
  color: #FFFFFF !important;
  border: none !important;
  padding: 14px 32px !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  border-radius: 10px !important;
  box-shadow: 0 4px 16px rgba(37, 99, 235, 0.35) !important;
  transition: all 0.25s ease !important;
}

.contact-submit-btn:hover {
  background: #0369a1 !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 22px rgba(37, 99, 235, 0.45) !important;
  color: #FFFFFF !important;
}

/* ============================================================
   19. GLOBAL OFFICES SECTION
   ============================================================ */
.global-offices-section {
  background: #F8FAFC !important;
  padding: 95px 0 !important;
  border-top: 1px solid #E2E8F0 !important;
}

.offices-header {
  text-align: center !important;
  margin-bottom: 56px !important;
}

.offices-header h2 {
  font-size: clamp(26px, 3.8vw, 44px) !important;
  font-weight: 800 !important;
  color: #0F172A !important;
}

.offices-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)) !important;
  gap: 28px !important;
}

.office-card {
  background: #FFFFFF !important;
  border: 1px solid #E2E8F0 !important;
  border-radius: 16px !important;
  padding: 34px 28px !important;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05) !important;
  transition: all 0.3s ease !important;
}

.office-card:hover {
  transform: translateY(-5px) !important;
  border-color: #BFDBFE !important;
  box-shadow: 0 16px 36px rgba(37, 99, 235, 0.10) !important;
}

.office-card h3 {
  font-size: 20px !important;
  font-weight: 700 !important;
  color: #0F172A !important;
  margin-bottom: 8px !important;
}

.office-card p {
  color: #475569 !important;
  font-size: 14px !important;
  line-height: 1.65 !important;
}

.office-btn {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  background: #EFF6FF !important;
  border: 1px solid rgba(37, 99, 235, 0.25) !important;
  color: #2563EB !important;
  font-weight: 600 !important;
  font-size: 13px !important;
  padding: 8px 18px !important;
  border-radius: 8px !important;
  text-decoration: none !important;
  transition: all 0.2s ease !important;
}

.office-btn:hover {
  background: #2563EB !important;
  color: #FFFFFF !important;
  border-color: #2563EB !important;
}

/* ============================================================
   20. FOOTER — EXECUTIVE NAVY BLUE
   ============================================================ */
.footer, footer, .pro-footer {
  background: #0B1220 !important;
  color: #94A3B8 !important;
  padding: 70px 0 25px 0 !important;
  border-top: 1px solid rgba(255, 255, 255, 0.1) !important;
  position: relative !important;
}

.footer h5, footer h5,
.footer h4, footer h4,
.footer-title {
  color: #FFFFFF !important;
  font-weight: 700 !important;
  font-size: 15px !important;
  letter-spacing: 0.03em !important;
  margin-bottom: 20px !important;
  position: relative !important;
}

.footer-title::after {
  content: '' !important;
  position: absolute !important;
  left: 0 !important;
  bottom: -7px !important;
  width: 24px !important;
  height: 2px !important;
  background-color: #38BDF8 !important;
  border-radius: 2px !important;
}

.footer-desc {
  color: #94A3B8 !important;
  font-size: 13.5px !important;
  line-height: 1.65 !important;
  margin: 16px 0 22px 0 !important;
}

.footer p, footer p {
  color: #94A3B8 !important;
  font-size: 13.5px !important;
}

.footer a, footer a,
.footer-links a {
  color: #CBD5E1 !important;
  font-size: 13.5px !important;
  text-decoration: none !important;
  transition: all 0.2s ease !important;
}

.footer a:hover, footer a:hover,
.footer-links a:hover {
  color: #38BDF8 !important;
  transform: translateX(4px) !important;
}

.footer-contact {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 0 16px 0 !important;
}

.footer-contact li {
  display: flex !important;
  align-items: flex-start !important;
  gap: 12px !important;
  margin-bottom: 12px !important;
  font-size: 13px !important;
  color: #CBD5E1 !important;
  line-height: 1.5 !important;
}

.footer-contact i {
  color: #38BDF8 !important;
  font-size: 13px !important;
  width: 28px !important;
  height: 28px !important;
  background: rgba(56, 189, 248, 0.12) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 6px !important;
  flex-shrink: 0 !important;
  margin-top: 2px !important;
}

.footer-social {
  display: flex !important;
  gap: 10px !important;
  margin-top: 18px !important;
}

.footer-social a,
.footer-social-icon {
  width: 38px !important;
  height: 38px !important;
  background: rgba(255, 255, 255, 0.06) !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
  border-radius: 8px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #F8FAFC !important;
  transition: all 0.25s ease !important;
  font-size: 14px !important;
  text-decoration: none !important;
  margin-right: 0 !important;
}

.footer-social a:hover,
.footer-social-icon:hover {
  background: #2563EB !important;
  color: #FFFFFF !important;
  border-color: #2563EB !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 4px 14px rgba(37, 99, 235, 0.4) !important;
}

.compact-map-box {
  width: 100% !important;
  height: 140px !important;
  border-radius: 10px !important;
  overflow: hidden !important;
  border: 1px solid rgba(255, 255, 255, 0.15) !important;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.35) !important;
  margin-top: 14px !important;
  transition: all 0.3s ease !important;
}

.compact-map-box:hover {
  border-color: #38BDF8 !important;
  box-shadow: 0 8px 25px rgba(56, 189, 248, 0.25) !important;
}

.compact-map-box iframe {
  width: 100% !important;
  height: 100% !important;
  border: 0 !important;
  display: block !important;
}

.footer-bottom {
  border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
  padding-top: 22px !important;
  margin-top: 40px !important;
  text-align: center !important;
  color: #94A3B8 !important;
  font-size: 13px !important;
}

.footer-bottom p {
  color: #94A3B8 !important;
  font-size: 13px !important;
  margin: 0 !important;
}

.footer-bottom strong {
  color: #FFFFFF !important;
  font-weight: 700 !important;
}

.show-more-btn {
  background: transparent !important;
  border: none !important;
  color: #38BDF8 !important;
  font-size: 12.5px !important;
  font-weight: 600 !important;
  padding: 4px 0 !important;
  margin-top: 6px !important;
  cursor: pointer !important;
  display: flex !important;
  align-items: center !important;
  gap: 4px !important;
  transition: all 0.2s ease !important;
}

.show-more-btn:hover {
  opacity: 0.8 !important;
  transform: translateY(1px) !important;
}

/* Dark Mode Footer */
[data-theme="dark"] .footer,
[data-theme="dark"] footer,
[data-theme="dark"] .pro-footer {
  background: #060A12 !important;
  border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
  color: #a1a1aa !important;
}

[data-theme="dark"] .footer h5,
[data-theme="dark"] footer h5,
[data-theme="dark"] .footer h4,
[data-theme="dark"] footer h4,
[data-theme="dark"] .footer-title {
  color: #ffffff !important;
}

[data-theme="dark"] .footer-title::after {
  background-color: #0284c7 !important;
}

[data-theme="dark"] .footer-desc,
[data-theme="dark"] .footer p,
[data-theme="dark"] footer p {
  color: #a1a1aa !important;
}

[data-theme="dark"] .footer a,
[data-theme="dark"] footer a,
[data-theme="dark"] .footer-links a {
  color: #a1a1aa !important;
}

[data-theme="dark"] .footer a:hover,
[data-theme="dark"] footer a:hover,
[data-theme="dark"] .footer-links a:hover {
  color: #38bdf8 !important;
}

[data-theme="dark"] .footer-contact li {
  color: #a1a1aa !important;
}

[data-theme="dark"] .footer-contact i {
  color: #38bdf8 !important;
  background: rgba(56, 189, 248, 0.1) !important;
}

[data-theme="dark"] .footer-social a,
[data-theme="dark"] .footer-social-icon {
  background: rgba(255, 255, 255, 0.05) !important;
  border: 1px solid #27272a !important;
  color: #fafafa !important;
}

[data-theme="dark"] .footer-social a:hover,
[data-theme="dark"] .footer-social-icon:hover {
  background: #0284c7 !important;
  color: #ffffff !important;
  border-color: #0284c7 !important;
}

[data-theme="dark"] .compact-map-box {
  border-color: #27272a !important;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.3) !important;
}

[data-theme="dark"] .footer-bottom {
  border-top-color: #27272a !important;
  color: #71717a !important;
}

[data-theme="dark"] .footer-bottom strong {
  color: #fafafa !important;
}

/* ============================================================
   21. FLOATING SCROLL TO TOP BUTTON
   ============================================================ */
.cc-scroll-top {
  position: fixed !important;
  bottom: 30px !important;
  right: 30px !important;
  width: 46px !important;
  height: 46px !important;
  background: #FFFFFF !important;
  border: 1px solid #CBD5E1 !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #2563EB !important;
  font-size: 15px !important;
  cursor: pointer !important;
  z-index: 999 !important;
  opacity: 0 !important;
  transform: translateY(12px) !important;
  transition: all 0.25s ease !important;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12) !important;
}

.cc-scroll-top.visible {
  opacity: 1 !important;
  transform: translateY(0) !important;
}

.cc-scroll-top:hover {
  background: #2563EB !important;
  border-color: #2563EB !important;
  color: #FFFFFF !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 20px rgba(37, 99, 235, 0.35) !important;
}

/* ============================================================
   22. OFFCANVAS SIDEBAR NAVIGATION
   ============================================================ */
.offcanvas {
  background: #0d0d12 !important;
  color: #ffffff !important;
}

.offcanvas-header {
  border-bottom: 1px solid rgba(255,255,255,0.08) !important;
}

.offcanvas-title {
  color: #ffffff !important;
  font-weight: 700 !important;
}

.btn-close {
  filter: invert(1) !important;
}

.offcanvas-body a {
  color: rgba(255, 255, 255, 0.8) !important;
}

.offcanvas-body a:hover {
  color: #38bdf8 !important;
}

/* Sidebar nav links — dark background, white text */
.sidebar-nav-link {
  background: transparent !important;
  color: rgba(255, 255, 255, 0.82) !important;
  font-size: 0.82rem !important;
  font-weight: 700 !important;
  letter-spacing: 1px !important;
  padding: 12px 10px !important;
  border-radius: 8px !important;
  transition: all 0.2s ease !important;
  width: 100% !important;
  text-align: left !important;
  display: flex !important;
  align-items: center !important;
  border: none !important;
}

.sidebar-nav-link:hover,
.sidebar-nav-link:focus {
  background: rgba(255,255,255,0.07) !important;
  color: #38bdf8 !important;
}

.sidebar-nav-link i {
  color: #0284c7 !important;
}

/* ============================================================
   23. WHATSAPP BUTTON (Keep accessible)
   ============================================================ */
.whatsapp-btn,
.whatsapp-float,
[class*="whatsapp"] {
  z-index: 1040 !important;
}

@media (max-width: 768px) {
  .hero-section-ultra {
    padding-top: 110px !important;
    padding-bottom: 60px !important;
  }
  .cc-scroll-top {
    bottom: 20px !important;
    right: 20px !important;
  }
}

/* ============================================================
   24. DARK THEME — COMPLETE VISIBILITY & CONTRAST OVERRIDES
   ============================================================ */

/* Headings and Titles - Crystal Clear White (#FFFFFF) */
[data-theme="dark"] .main-title,
[data-theme="dark"] .section-header h2,
[data-theme="dark"] .section-header h2.main-title,
[data-theme="dark"] .client-header h2,
[data-theme="dark"] .enterprise-header h2,
[data-theme="dark"] .ventures-header h2,
[data-theme="dark"] .services-header h2,
[data-theme="dark"] .industries-header-dark h2,
[data-theme="dark"] .careers-left h2,
[data-theme="dark"] .offices-header h2,
[data-theme="dark"] .leaders-header h2,
[data-theme="dark"] .faq-rating-header h2,
[data-theme="dark"] .hero-title-ultra,
[data-theme="dark"] .column-title,
[data-theme="dark"] .card-title,
[data-theme="dark"] .rating-title,
[data-theme="dark"] .highlight-card h4,
[data-theme="dark"] .mv-card h3,
[data-theme="dark"] .enterprise-card h3,
[data-theme="dark"] .partner-card h3,
[data-theme="dark"] .service-card h3,
[data-theme="dark"] .industry-card-dark h3,
[data-theme="dark"] .industry-title-dark,
[data-theme="dark"] .office-card h3,
[data-theme="dark"] .office-title,
[data-theme="dark"] .leader-name,
[data-theme="dark"] .trust-card-ultra h3,
[data-theme="dark"] .stat-label,
[data-theme="dark"] .faq-question p,
[data-theme="dark"] h1,
[data-theme="dark"] h2,
[data-theme="dark"] h3,
[data-theme="dark"] h4,
[data-theme="dark"] h5,
[data-theme="dark"] h6 {
  color: #FFFFFF !important;
}

/* Gradient and Highlighted Accents */
[data-theme="dark"] .gradient-text {
  background: linear-gradient(135deg, #38bdf8 0%, #60a5fa 100%) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  color: #38bdf8 !important;
}

[data-theme="dark"] .highlight-text {
  background: linear-gradient(135deg, #38bdf8 0%, #60a5fa 100%) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  color: #38bdf8 !important;
}

/* Subtitles, Paragraphs, and Body Text - Readable Light Slate (#CBD5E1) */
[data-theme="dark"] .section-subtitle,
[data-theme="dark"] .rating-subtitle,
[data-theme="dark"] .client-header p,
[data-theme="dark"] .enterprise-header p,
[data-theme="dark"] .ventures-header p,
[data-theme="dark"] .services-header p,
[data-theme="dark"] .industries-header-dark p,
[data-theme="dark"] .industries-sub-desc,
[data-theme="dark"] .careers-left p,
[data-theme="dark"] .offices-header p,
[data-theme="dark"] .leaders-header p,
[data-theme="dark"] .faq-rating-header p,
[data-theme="dark"] .mv-card p,
[data-theme="dark"] .enterprise-card p,
[data-theme="dark"] .partner-card p,
[data-theme="dark"] .service-card p,
[data-theme="dark"] .industry-card-dark p,
[data-theme="dark"] .industry-desc-dark,
[data-theme="dark"] .office-card p,
[data-theme="dark"] .leader-bio,
[data-theme="dark"] .faq-answer,
[data-theme="dark"] .answer-content,
[data-theme="dark"] .highlight-card p,
[data-theme="dark"] .enterprise-checklist li,
[data-theme="dark"] .stat-desc,
[data-theme="dark"] p {
  color: #CBD5E1 !important;
}

/* Section Backgrounds */
[data-theme="dark"] .feedback-faq-section,
[data-theme="dark"] .faq-rating-section,
[data-theme="dark"] .client-section,
[data-theme="dark"] .mission-vision-section,
[data-theme="dark"] .enterprise-section,
[data-theme="dark"] .corporate-ventures-section,
[data-theme="dark"] .achievements-merged,
[data-theme="dark"] .careers-section,
[data-theme="dark"] .offices-section,
[data-theme="dark"] .leaders-section,
[data-theme="dark"] .contact-section,
[data-theme="dark"] .industries-section-dark {
  background: #0B1220 !important;
  border-color: #1E2D52 !important;
}

/* Cards & Surface Containers */
[data-theme="dark"] .glass-card,
[data-theme="dark"] .faq-card-wrapper,
[data-theme="dark"] .feedback-card-wrapper,
[data-theme="dark"] .modern-rating-card,
[data-theme="dark"] .rating-card-frame,
[data-theme="dark"] .contact-card-frame,
[data-theme="dark"] .highlight-card,
[data-theme="dark"] .mv-card,
[data-theme="dark"] .enterprise-card,
[data-theme="dark"] .partner-card,
[data-theme="dark"] .service-card,
[data-theme="dark"] .industry-card-dark,
[data-theme="dark"] .office-card,
[data-theme="dark"] .leader-card-item {
  background: #111C35 !important;
  border: 1px solid #1E2D52 !important;
  box-shadow: 0 4px 20px rgba(4, 9, 20, 0.45) !important;
}

[data-theme="dark"] .faq-item {
  background: #132040 !important;
  border: 1px solid #1E2D52 !important;
}

[data-theme="dark"] .faq-item:hover {
  background: #172547 !important;
  border-color: #38bdf8 !important;
}

[data-theme="dark"] .icon-box {
  background: #132040 !important;
  border-color: #1E2D52 !important;
}

[data-theme="dark"] .icon-pill {
  background: rgba(56, 189, 248, 0.12) !important;
  color: #38bdf8 !important;
  border: 1px solid rgba(56, 189, 248, 0.25) !important;
}

[data-theme="dark"] .rating-pill {
  background: #132040 !important;
  border-color: #1E2D52 !important;
  color: #38bdf8 !important;
}

[data-theme="dark"] .badge,
[data-theme="dark"] .eyebrow-label,
[data-theme="dark"] .enterprise-badge,
[data-theme="dark"] .section-badge,
[data-theme="dark"] .value-badge {
  background: rgba(56, 189, 248, 0.12) !important;
  border: 1px solid rgba(56, 189, 248, 0.25) !important;
  color: #38bdf8 !important;
}

[data-theme="dark"] .q-num {
  background: rgba(56, 189, 248, 0.15) !important;
  color: #38bdf8 !important;
}

/* ===== LANGUAGE DROPDOWN — force flag + name both visible ===== */
.cc-lang-dropdown-item {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 10px 16px !important;
  width: 100% !important;
}

.cc-lang-item-flag {
  display: inline-flex !important;
  flex-shrink: 0 !important;
  font-size: 18px !important;
  width: 28px !important;
  height: 28px !important;
  align-items: center !important;
  justify-content: center !important;
}

.cc-lang-item-name {
  display: inline-block !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  color: #1e293b !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

[data-theme="dark"] .cc-lang-item-name {
  color: #f1f5f9 !important;
}

.cc-lang-dropdown-menu {
  width: 200px !important;
  min-width: 200px !important;
}
