/* ============================================
   AU ITC — Stylesheet
   ============================================ */

:root {
  /* Core brand — Sovereign Gold on Deep Midnight */
  --color-primary: #0a0a0a;
  --color-primary-light: #141414;
  --color-accent: #d4af37;
  --color-accent-bright: #ffd700;
  --color-accent-hover: #c9a227;
  --color-green: #2d5a3d;
  --color-green-bright: #34d399;
  --color-teal: #2dd4bf;
  --color-teal-glow: rgba(45, 212, 191, 0.35);
  --color-green-btn: #1f7a4d;
  --color-green-btn-hover: #26a366;

  /* Icon system — consistent green across all pages */
  --color-icon: var(--color-green-bright);
  --color-icon-hover: #4ade80;
  --color-icon-soft: rgba(52, 211, 153, 0.12);
  --color-icon-border: rgba(52, 211, 153, 0.35);
  --color-icon-glow: rgba(52, 211, 153, 0.4);
  --icon-glow: 0 0 24px rgba(52, 211, 153, 0.15);

  /* Typography & UI */
  --color-text: #1e293b;
  --color-text-muted: #64748b;
  --color-text-light: #94a3b8;
  --color-text-on-dark: #e8e8e8;
  --color-text-muted-on-dark: rgba(255, 255, 255, 0.72);
  --color-bg: #ffffff;
  --color-bg-muted: #0f0f0f;
  --color-bg-dark: #000000;
  --color-border: rgba(212, 175, 55, 0.2);
  --color-white: #ffffff;

  /* Section backgrounds — Sovereign Spectrum palette */
  --color-bg-sovereign: #000000;
  --color-bg-ecosystem: #050505;
  --color-bg-industries: #030303;
  --color-bg-innovations: #0a0a0a;
  --color-bg-innovations-alt: #050505;
  --color-bg-investment: #000000;
  --color-bg-contact: #050505;
  --color-bg-footer: #000000;

  /* Accent glows for section transitions */
  --color-glow-gold: rgba(212, 175, 55, 0.12);
  --color-glow-teal: rgba(45, 212, 191, 0.08);
  --color-glow-green: rgba(52, 211, 153, 0.06);

  /* Premium effects */
  --gold-border: rgba(212, 175, 55, 0.35);
  --gold-glow: 0 0 24px rgba(212, 175, 55, 0.15);
  --teal-glow: 0 0 32px rgba(45, 212, 191, 0.12);

  --font-sans: 'Inter', system-ui, -apple-system, sans-serif;
  --font-display: 'Cinzel', 'Playfair Display', Georgia, serif;
  --font-serif: 'Playfair Display', Georgia, serif;

  --shadow-sm: 0 1px 3px rgba(12, 35, 64, 0.08);
  --shadow-md: 0 4px 20px rgba(12, 35, 64, 0.1);
  --shadow-lg: 0 10px 40px rgba(12, 35, 64, 0.15);

  --radius-sm: 6px;
  --radius-md: 12px;
  --radius-lg: 20px;

  --transition: 0.3s ease;
  --header-height: 80px;
}

/* Reset */
*, *::before, *::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html {
  scroll-behavior: smooth;
  scroll-padding-top: var(--header-height);
}

body {
  font-family: var(--font-sans);
  font-size: 16px;
  line-height: 1.6;
  color: var(--color-text-on-dark);
  background: var(--color-bg-dark);
  overflow-x: hidden;
}

img {
  max-width: 100%;
  height: auto;
  display: block;
}

a {
  color: inherit;
  text-decoration: none;
  transition: color var(--transition);
}

ul {
  list-style: none;
}

button, input, select, textarea {
  font: inherit;
  border: none;
  outline: none;
}

.container {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 24px;
}

/* Typography */
.section-label {
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--color-accent);
  margin-bottom: 12px;
}

.section-label--light {
  color: var(--color-accent);
}

.section-title {
  font-family: var(--font-display);
  font-size: clamp(1.75rem, 4vw, 2.5rem);
  font-weight: 700;
  line-height: 1.2;
  color: var(--color-white);
  margin-bottom: 16px;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.section-title em {
  font-style: normal;
  font-weight: inherit;
  color: inherit;
}

/* Full-width banner-style section titles */
.section-title:has(> em:only-child) {
  font-size: clamp(1rem, 1.8vw, 1.5rem);
  line-height: 1.4;
  margin-bottom: clamp(32px, 4vw, 48px);
}

.section-title:has(> em:only-child) em {
  letter-spacing: 0.05em;
}

.section-title--light {
  color: var(--color-white);
}

.section-title--light em {
  color: inherit;
}

/* Section-level CTA titles — match section-title styling */
.about-page-cta__title,
.ecosystem-page-cta__title,
.industries-page-cta__title,
.innovations-page-cta__title,
.investment-page-partner__title,
.partner-page-cta__title,
.contact-page-cta__title,
.resources-page-cta__title,
.team-page-cta__title {
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.about-page-cta__title em,
.ecosystem-page-cta__title em,
.industries-page-cta__title em,
.innovations-page-cta__title em,
.investment-page-partner__title em,
.partner-page-cta__title em,
.contact-page-cta__title em,
.resources-page-cta__title em,
.team-page-cta__title em {
  font-style: normal;
  font-weight: inherit;
  color: inherit;
}

.section-desc {
  font-size: 1.0625rem;
  color: var(--color-text-muted-on-dark);
  max-width: 600px;
}

.section-desc--light {
  color: var(--color-text-light);
}

.section-desc--center {
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}

/* Core Pillars — AUITC · AUITB · RBC */
.core-pillars {
  position: relative;
  scroll-margin-top: calc(var(--header-height) + 56px);
  background:
    radial-gradient(ellipse 80% 50% at 50% 0%, rgba(201, 162, 39, 0.1) 0%, transparent 55%),
    linear-gradient(180deg, var(--color-bg-innovations-alt) 0%, var(--color-bg-innovations) 100%);
}

.core-pillars--dark {
  background:
    radial-gradient(ellipse 70% 45% at 50% 0%, var(--color-glow-gold) 0%, transparent 55%),
    linear-gradient(180deg, #0d1a2e 0%, var(--color-bg-sovereign) 100%);
  color: var(--color-white);
}

.core-pillars--compact {
  padding-top: clamp(48px, 6vw, 64px);
  padding-bottom: clamp(48px, 6vw, 64px);
}

.core-pillars__intro {
  max-width: 720px;
  margin: 0 auto 40px;
  text-align: center;
  font-size: clamp(0.9375rem, 1.1vw, 1.0625rem);
  line-height: 1.75;
  color: var(--color-text-muted);
}

.core-pillars--dark .core-pillars__intro {
  color: rgba(255, 255, 255, 0.72);
}

.core-pillars__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(20px, 2.5vw, 28px);
}

.core-pillar-card {
  display: flex;
  flex-direction: column;
  background: var(--color-white);
  border: 1px solid var(--color-border);
  border-radius: 18px;
  overflow: hidden;
  box-shadow: var(--shadow-md);
  transition: transform 0.4s ease, box-shadow 0.4s ease, border-color 0.4s ease;
}

.core-pillar-card:hover {
  transform: translateY(-8px);
  box-shadow: 0 24px 56px rgba(12, 35, 64, 0.14);
}

.core-pillar-card--auitc:hover { border-color: rgba(201, 162, 39, 0.45); }
.core-pillar-card--auitb:hover { border-color: rgba(74, 222, 128, 0.4); }
.core-pillar-card--rbc:hover { border-color: rgba(45, 212, 191, 0.4); }

.core-pillar-card__visual {
  position: relative;
  aspect-ratio: 16 / 9;
  overflow: hidden;
}

.core-pillar-card__visual img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transition: transform 0.6s ease;
}

.core-pillar-card:hover .core-pillar-card__visual img {
  transform: scale(1.06);
}

.core-pillar-card__visual::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 40%, rgba(11, 22, 40, 0.75) 100%);
}

.core-pillar-card__badge {
  position: absolute;
  top: 16px;
  left: 16px;
  z-index: 1;
  padding: 8px 14px;
  font-family: var(--font-display);
  font-size: 1.125rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  color: var(--color-primary);
  background: var(--color-green-bright);
  border-radius: 8px;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.2);
}

.core-pillar-card--auitb .core-pillar-card__badge,
.core-pillar-card--rbc .core-pillar-card__badge {
  background: var(--color-green-bright);
  color: var(--color-primary);
}

.core-pillar-card__body {
  display: flex;
  flex-direction: column;
  flex: 1;
  padding: clamp(24px, 3vw, 28px);
}

.core-pillar-card__body::before {
  content: '';
  display: block;
  width: 48px;
  height: 3px;
  margin-bottom: 16px;
  border-radius: 2px;
  background: linear-gradient(90deg, var(--color-accent), transparent);
}

.core-pillar-card--auitb .core-pillar-card__body::before {
  background: linear-gradient(90deg, var(--color-green-bright), transparent);
}

.core-pillar-card--rbc .core-pillar-card__body::before {
  background: linear-gradient(90deg, #2dd4bf, transparent);
}

.core-pillar-card__name {
  font-family: var(--font-display);
  font-size: clamp(1rem, 1.3vw, 1.125rem);
  font-weight: 700;
  line-height: 1.35;
  color: var(--color-primary);
  margin-bottom: 12px;
}

.core-pillar-card__desc {
  flex: 1;
  font-size: clamp(0.875rem, 1vw, 0.9375rem);
  line-height: 1.7;
  color: var(--color-text-muted);
}

#core-pillar-auitc,
#core-pillar-auitb,
#core-pillar-rbc {
  scroll-margin-top: calc(var(--header-height) + 56px);
}

.core-pillars--dark .core-pillar-card {
  background: rgba(255, 255, 255, 0.04);
  border-color: rgba(255, 255, 255, 0.1);
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.2);
}

.core-pillars--dark .core-pillar-card__name {
  color: var(--color-white);
}

.core-pillars--dark .core-pillar-card__desc {
  color: rgba(255, 255, 255, 0.72);
}

.core-pillars--compact .core-pillar-card__visual {
  aspect-ratio: 21 / 9;
}

.core-pillars__connector {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(12px, 2vw, 24px);
  margin-top: clamp(32px, 4vw, 48px);
  padding: clamp(20px, 2.5vw, 28px);
  background: rgba(11, 22, 40, 0.04);
  border: 1px solid var(--color-border);
  border-radius: 14px;
}

.core-pillars--dark .core-pillars__connector {
  background: rgba(255, 255, 255, 0.04);
  border-color: rgba(255, 255, 255, 0.1);
}

.core-pillars__connector-item {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 0.8125rem;
  font-weight: 600;
  color: var(--color-green-bright);
}

.core-pillars--dark .core-pillars__connector-item {
  color: var(--color-green-bright);
  font-weight: 700;
  letter-spacing: 0.04em;
}

.section--dark .core-pillars__connector-item {
  color: var(--color-green-bright);
  font-weight: 700;
  letter-spacing: 0.04em;
}

.section--dark .core-pillars__connector {
  background: rgba(255, 255, 255, 0.04);
  border-color: rgba(255, 255, 255, 0.12);
}

.core-pillars__connector-dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: var(--color-green-bright);
  box-shadow: 0 0 0 3px rgba(74, 222, 128, 0.2);
}

.core-pillars__connector-line {
  flex: 1;
  max-width: 80px;
  height: 2px;
  background: linear-gradient(90deg, var(--color-accent), var(--color-green-bright), #2dd4bf);
  opacity: 0.5;
}

.core-pillars-triad {
  position: relative;
  width: 100%;
  aspect-ratio: 1;
  max-width: 300px;
  margin: 0 auto;
}

.core-pillars-triad__ring {
  position: absolute;
  inset: 12%;
  border: 2px dashed rgba(201, 162, 39, 0.35);
  border-radius: 50%;
}

.core-pillars-triad__node {
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 12px 18px;
  font-family: var(--font-display);
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  color: var(--color-white);
  background: rgba(11, 22, 40, 0.9);
  border: 2px solid rgba(201, 162, 39, 0.45);
  border-radius: 12px;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.3);
}

.core-pillars-triad__node--auitc {
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  border-color: rgba(201, 162, 39, 0.6);
  color: var(--color-accent);
}

.core-pillars-triad__node--auitb {
  bottom: 8%;
  left: 0;
  border-color: rgba(74, 222, 128, 0.5);
  color: var(--color-green-bright);
}

.core-pillars-triad__node--rbc {
  bottom: 8%;
  right: 0;
  border-color: rgba(45, 212, 191, 0.5);
  color: #2dd4bf;
}

@media (max-width: 1024px) {
  .core-pillars__grid {
    grid-template-columns: 1fr;
    max-width: 520px;
    margin: 0 auto;
  }

  .core-pillars__connector {
    flex-direction: column;
    text-align: center;
    gap: 16px;
  }

  .core-pillars__connector-item {
    font-size: 0.875rem;
  }

  .core-pillars__connector-line {
    width: 2px;
    max-width: none;
    height: 24px;
    background: linear-gradient(180deg, var(--color-accent), var(--color-green-bright), #2dd4bf);
  }
}

@media (prefers-reduced-motion: reduce) {
  .core-pillar-card,
  .core-pillar-card__visual img {
    transition: none;
  }

  .core-pillar-card:hover .core-pillar-card__visual img {
    transform: none;
  }
}

.section-header {
  margin-bottom: 48px;
}

.section-header--center {
  text-align: center;
}

.section-header--center .section-desc {
  margin: 0 auto;
}

.section-header:not(:has(.section-desc)) {
  margin-bottom: 0;
}

.section {
  padding: 100px 0;
  position: relative;
}

.section--dark {
  background: var(--color-bg-dark);
  color: var(--color-white);
}

.section--light {
  background:
    radial-gradient(ellipse 80% 50% at 50% 0%, var(--color-glow-gold) 0%, transparent 55%),
    linear-gradient(180deg, #080808 0%, #0a0a0a 50%, #050505 100%);
  color: var(--color-text-on-dark);
}

.section--light .section-title {
  color: var(--color-white);
}

.section--light .section-desc {
  color: var(--color-text-muted-on-dark);
}

.section--muted {
  background: var(--color-bg-muted);
}

/* Buttons */
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 12px 28px;
  font-size: 0.9375rem;
  font-weight: 600;
  border-radius: var(--radius-sm);
  cursor: pointer;
  transition: all var(--transition);
  white-space: nowrap;
}

.btn--primary {
  background: var(--color-accent);
  color: var(--color-primary);
}

.btn--primary:hover {
  background: var(--color-accent-hover);
  transform: translateY(-2px);
  box-shadow: var(--shadow-md);
}

.btn--outline {
  background: transparent;
  color: var(--color-white);
  border: 2px solid rgba(255, 255, 255, 0.4);
}

.btn--outline:hover {
  border-color: var(--color-white);
  background: rgba(255, 255, 255, 0.1);
}

.btn--outline-light {
  background: transparent;
  color: var(--color-white);
  border: 2px solid rgba(201, 162, 39, 0.5);
}

.btn--outline-light:hover {
  border-color: var(--color-accent);
  background: rgba(201, 162, 39, 0.1);
  color: var(--color-white);
}

.btn--accent {
  background: var(--color-accent);
  color: var(--color-primary);
}

.btn--accent:hover {
  background: var(--color-accent-hover);
  transform: translateY(-2px);
}

.btn--lg {
  padding: 16px 36px;
  font-size: 1rem;
}

.btn--sm {
  padding: 8px 20px;
  font-size: 0.875rem;
}

.btn--full {
  width: 100%;
}

/* Top Bar */
.top-bar {
  background: var(--color-primary);
  color: rgba(255, 255, 255, 0.8);
  font-size: 0.8125rem;
  padding: 8px 0;
}

.top-bar__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.top-bar__contact {
  display: flex;
  gap: 24px;
}

.top-bar__contact a {
  display: flex;
  align-items: center;
  gap: 6px;
}

.top-bar__contact a:hover {
  color: var(--color-icon);
}

.top-bar__social {
  display: flex;
  gap: 16px;
}

.top-bar__social a {
  color: rgba(255, 255, 255, 0.72);
  transition: color var(--transition);
}

.top-bar__social a:hover {
  color: var(--color-icon);
}

/* Header */
.header {
  position: sticky;
  top: 0;
  z-index: 1000;
  background: var(--color-white);
  box-shadow: var(--shadow-sm);
  transition: box-shadow var(--transition);
}

.header.scrolled {
  box-shadow: var(--shadow-md);
}

.header__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: var(--header-height);
  gap: 32px;
}

.logo {
  display: flex;
  align-items: center;
  flex-shrink: 0;
}

.logo img {
  display: block;
  height: 48px;
  width: auto;
  object-fit: contain;
}

.logo--footer img {
  height: 40px;
}

.nav__list {
  display: flex;
  gap: 4px;
}

.nav__link {
  padding: 8px 12px;
  font-size: 0.875rem;
  font-weight: 500;
  color: var(--color-text);
  border-radius: var(--radius-sm);
  transition: all var(--transition);
}

.nav__link:hover {
  color: var(--color-primary);
  background: var(--color-bg-muted);
}

.nav__link.active {
  color: var(--color-accent);
  background: rgba(201, 162, 39, 0.12);
  font-weight: 600;
  box-shadow: inset 0 -2px 0 var(--color-accent);
}

.nav__link.active:hover {
  color: var(--color-accent);
  background: rgba(201, 162, 39, 0.18);
}

.header__cta {
  flex-shrink: 0;
  padding: 10px 20px;
  font-size: 0.875rem;
}

.section-anchor {
  display: block;
  position: relative;
  top: calc(-1 * var(--header-height));
  visibility: hidden;
}

.menu-toggle {
  display: none;
  flex-direction: column;
  gap: 5px;
  background: none;
  cursor: pointer;
  padding: 4px;
}

.menu-toggle span {
  display: block;
  width: 24px;
  height: 2px;
  background: var(--color-primary);
  transition: all var(--transition);
}

.menu-toggle.active span:nth-child(1) {
  transform: rotate(45deg) translate(5px, 5px);
}

.menu-toggle.active span:nth-child(2) {
  opacity: 0;
}

.menu-toggle.active span:nth-child(3) {
  transform: rotate(-45deg) translate(5px, -5px);
}

/* Hero */
.hero {
  position: relative;
  min-height: 100vh;
  min-height: 100dvh;
  display: flex;
  align-items: center;
  overflow: hidden;
  isolation: isolate;
  color: var(--color-white);
}

/* Inner page hero banner */
.page-hero {
  position: relative;
  padding: calc(var(--header-height) + 56px) 0 clamp(56px, 7vw, 80px);
  color: var(--color-white);
  overflow: hidden;
}

.page-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  pointer-events: none;
}

.page-hero .container {
  position: relative;
  z-index: 1;
}

.page-hero__label {
  display: inline-block;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--color-accent);
  margin-bottom: 12px;
}

.page-hero__title {
  font-family: var(--font-display);
  font-size: clamp(2rem, 4.5vw, 3rem);
  font-weight: 700;
  line-height: 1.15;
  margin-bottom: 16px;
  letter-spacing: -0.02em;
}

.page-hero__title em {
  font-style: italic;
  color: var(--color-accent);
}

.page-hero__desc {
  max-width: 640px;
  font-size: clamp(0.9375rem, 1.2vw, 1.0625rem);
  line-height: 1.75;
  color: rgba(255, 255, 255, 0.78);
}

.page-hero--about {
  background:
    radial-gradient(ellipse 80% 50% at 50% 0%, var(--color-glow-gold) 0%, transparent 55%),
    linear-gradient(180deg, #080f1a 0%, var(--color-bg-sovereign) 100%);
}

.page-hero--about::before {
  background: radial-gradient(ellipse 60% 40% at 100% 100%, var(--color-glow-teal) 0%, transparent 60%);
}

.page-hero--ecosystem {
  background:
    radial-gradient(ellipse 70% 45% at 0% 50%, var(--color-glow-teal) 0%, transparent 55%),
    linear-gradient(180deg, #0d1a2e 0%, var(--color-bg-ecosystem) 100%);
}

.page-hero--industries {
  background:
    radial-gradient(ellipse 65% 50% at 100% 0%, var(--color-glow-green) 0%, transparent 50%),
    linear-gradient(180deg, #0a1526 0%, var(--color-bg-industries) 100%);
}

.page-hero--innovations {
  background:
    radial-gradient(ellipse 90% 60% at 50% 0%, rgba(255, 255, 255, 0.9) 0%, transparent 70%),
    linear-gradient(180deg, var(--color-bg-innovations-alt) 0%, var(--color-bg-innovations) 100%);
  color: var(--color-text);
}

.page-hero--innovations .page-hero__desc {
  color: var(--color-text-muted);
}

.page-hero--investment {
  background:
    radial-gradient(ellipse 80% 55% at 20% 100%, var(--color-glow-gold) 0%, transparent 55%),
    linear-gradient(180deg, #081220 0%, var(--color-bg-investment) 100%);
}

.section--page-top {
  padding-top: clamp(64px, 8vw, 88px);
}

.section--page-bottom {
  padding-bottom: clamp(80px, 10vw, 120px);
}

.page-hero + .section {
  padding-top: clamp(48px, 6vw, 80px);
}

/* Slideshow */
.hero__slideshow {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.hero__slide {
  position: absolute;
  inset: 0;
  opacity: 0;
  transition: opacity 1.4s cubic-bezier(0.4, 0, 0.2, 1);
  will-change: opacity;
}

.hero__slide--active {
  opacity: 1;
  z-index: 1;
}

.hero__slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.06);
  transition: transform 8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.hero__slide--active img {
  transform: scale(1);
}

.hero__overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(180deg, rgba(5, 9, 16, 0.35) 0%, rgba(5, 9, 16, 0.15) 40%, rgba(11, 22, 40, 0.75) 100%),
    linear-gradient(105deg, rgba(7, 13, 22, 0.88) 0%, rgba(11, 22, 40, 0.72) 48%, rgba(14, 30, 52, 0.55) 100%);
}

.hero__progress {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: rgba(255, 255, 255, 0.12);
  z-index: 3;
}

.hero__progress-bar {
  display: block;
  height: 100%;
  width: 0%;
  background: linear-gradient(90deg, var(--color-green-bright), var(--color-accent));
  transition: width 0.1s linear;
}

/* Layout — content aligned left */
.hero__layout {
  position: relative;
  z-index: 2;
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  gap: 40px;
  padding: calc(var(--header-height) + 48px) 24px 64px;
  min-height: 100vh;
  min-height: 100dvh;
}

.hero__content {
  width: 100%;
  max-width: 680px;
  text-align: left;
  animation: heroFadeIn 1s cubic-bezier(0.22, 1, 0.36, 1) 0.2s both;
}

@keyframes heroFadeIn {
  from {
    opacity: 0;
    transform: translateX(-32px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

.hero__title {
  font-family: var(--font-display);
  font-size: clamp(2rem, 4vw, 3.25rem);
  font-weight: 700;
  line-height: 1.1;
  color: var(--color-white);
  margin-bottom: 4px;
  letter-spacing: -0.02em;
}

.hero__subtitle {
  font-size: clamp(1rem, 2vw, 1.25rem);
  font-weight: 600;
  line-height: 1.4;
  margin-bottom: 8px;
  letter-spacing: 0.01em;
}

.hero__subtitle--gold {
  font-family: var(--font-display);
  font-size: clamp(1.75rem, 3.8vw, 3rem);
  font-weight: 700;
  line-height: 1.12;
  color: var(--color-accent);
  margin-bottom: 12px;
  letter-spacing: -0.02em;
}

.hero__subtitle--green {
  color: var(--color-green-bright);
  margin-bottom: 20px;
}

.hero__desc {
  font-size: clamp(0.9375rem, 1.5vw, 1.0625rem);
  color: rgba(255, 255, 255, 0.88);
  line-height: 1.75;
  margin-bottom: 32px;
  max-width: 560px;
}

/* Hero CTA Buttons */
.hero__actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: 14px;
}

.hero__btn {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  padding: 14px 28px;
  font-size: 0.9375rem;
  font-weight: 600;
  border-radius: var(--radius-sm);
  cursor: pointer;
  transition: all 0.35s cubic-bezier(0.4, 0, 0.2, 1);
  white-space: nowrap;
  border: 1px solid transparent;
}

.hero__btn svg {
  flex-shrink: 0;
  transition: transform 0.35s ease;
}

.hero__btn--green {
  background: linear-gradient(135deg, var(--color-green-btn) 0%, var(--color-green) 100%);
  color: var(--color-white);
  box-shadow: 0 4px 24px rgba(31, 122, 77, 0.35);
}

.hero__btn--green:hover {
  background: linear-gradient(135deg, var(--color-green-btn-hover) 0%, #358f5c 100%);
  transform: translateY(-2px);
  box-shadow: 0 8px 32px rgba(31, 122, 77, 0.45);
}

.hero__btn--green:hover svg {
  transform: translateX(4px);
}

.hero__btn--gold {
  background: linear-gradient(135deg, var(--color-accent) 0%, #dbb84a 100%);
  color: var(--color-primary);
  box-shadow: 0 4px 24px rgba(201, 162, 39, 0.3);
}

.hero__btn--gold:hover {
  background: linear-gradient(135deg, #dbb84a 0%, var(--color-accent) 100%);
  transform: translateY(-2px);
  box-shadow: 0 8px 32px rgba(201, 162, 39, 0.4);
}

.hero__btn--gold:hover svg {
  transform: translateY(2px);
}

/* Stats Row */
.hero__stats {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: clamp(10px, 1.2vw, 14px);
  width: 100%;
  padding-top: 8px;
  border-top: 1px solid rgba(255, 255, 255, 0.12);
  animation: heroFadeIn 1s cubic-bezier(0.22, 1, 0.36, 1) 0.35s both;
}

.hero__stat {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  min-width: 0;
  padding: clamp(12px, 1.2vw, 16px);
  background: rgba(255, 255, 255, 0.06);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: var(--radius-md);
  transition: all 0.35s ease;
}

.hero__stat:hover {
  background: rgba(255, 255, 255, 0.1);
  border-color: rgba(201, 162, 39, 0.25);
  transform: translateY(-2px);
}

.hero__stat-icon {
  flex-shrink: 0;
  width: 40px;
  height: 40px;
  border-radius: var(--radius-sm);
  overflow: hidden;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}

.hero__stat-icon img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.hero__stat-data {
  flex: 1;
  min-width: 0;
  text-align: left;
}

.hero__stat-value {
  display: block;
  font-family: var(--font-sans);
  font-size: clamp(0.8125rem, 1.15vw, 1.25rem);
  font-weight: 700;
  color: var(--color-white);
  line-height: 1.15;
  margin-bottom: 4px;
  word-break: break-word;
}

.hero__stat--wide .hero__stat-value {
  font-size: clamp(0.6875rem, 0.95vw, 0.9375rem);
  letter-spacing: -0.02em;
}

.hero__stat--wide .hero__stat-label {
  font-size: clamp(0.5625rem, 0.75vw, 0.625rem);
}

.hero__stat-label {
  display: block;
  font-size: clamp(0.625rem, 0.85vw, 0.6875rem);
  font-weight: 500;
  color: rgba(255, 255, 255, 0.65);
  line-height: 1.35;
  letter-spacing: 0.01em;
}

@media (max-width: 1280px) {
  .hero__stats {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 768px) {
  .hero__stats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .hero__stat-icon {
    width: 36px;
    height: 36px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .hero__slide {
    transition: none;
  }

  .hero__slide img {
    transition: none;
    transform: none;
  }

  .hero__content {
    animation: none;
  }

  .hero__stat {
    transition: none;
  }

  .hero__btn {
    transition: none;
  }
}

/* About */
.about {
  background:
    radial-gradient(ellipse 80% 50% at 50% 0%, var(--color-glow-gold) 0%, transparent 55%),
    linear-gradient(180deg, #080f1a 0%, var(--color-bg-sovereign) 8%, var(--color-bg-sovereign) 92%, #0d1a2e 100%);
  color: var(--color-white);
  overflow: hidden;
  position: relative;
}

.about::before {
  content: '';
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse 60% 40% at 100% 100%, var(--color-glow-teal) 0%, transparent 60%);
  pointer-events: none;
}

.about__row--top {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-auto-rows: 1fr;
  align-items: stretch;
  gap: clamp(16px, 2vw, 24px);
  margin-bottom: clamp(48px, 6vw, 80px);
}

.about__row--bottom {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(24px, 3vw, 36px);
}

/* Shared card — horizontal, premium */
.about__card {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: auto;
  padding: clamp(20px, 2.5vw, 28px);
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: var(--radius-md);
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.18);
  transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1),
              box-shadow 0.4s ease,
              border-color 0.4s ease,
              background 0.4s ease;
  overflow: hidden;
}

.about__card::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(201, 162, 39, 0.04) 0%, transparent 60%);
  opacity: 0;
  transition: opacity 0.4s ease;
  pointer-events: none;
}

.about__card:hover {
  transform: translateY(-5px);
  border-color: rgba(201, 162, 39, 0.22);
  background: rgba(255, 255, 255, 0.07);
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.28);
}

.about__card:hover::before {
  opacity: 1;
}

/* Column 1 — Introduction */
.about__card--intro {
  justify-content: flex-start;
}

.about__label {
  display: block;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--color-accent);
  margin-bottom: 10px;
}

.about__headline {
  font-family: var(--font-display);
  font-size: clamp(1rem, 1.4vw, 1.3125rem);
  font-weight: 700;
  line-height: 1.3;
  color: var(--color-white);
  margin-bottom: 10px;
  letter-spacing: -0.02em;
}

.about__intro-text {
  font-size: clamp(0.75rem, 0.95vw, 0.8125rem);
  line-height: 1.65;
  color: rgba(255, 255, 255, 0.82);
}

/* Columns 2 & 3 — Mission / Vision */
.about__card--pillar {
  justify-content: flex-start;
  align-items: stretch;
}

.about__pillar-row {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  width: 100%;
}

.about__pillar-icon {
  flex-shrink: 0;
  width: 44px;
  height: 44px;
  border-radius: var(--radius-sm);
  object-fit: cover;
  margin-top: 2px;
}

.about__pillar-content {
  flex: 1;
  min-width: 0;
}

.about__pillar-title {
  font-size: 1rem;
  font-weight: 700;
  color: var(--color-accent);
  line-height: 1.25;
  margin-bottom: 8px;
}

.about__pillar-text {
  font-size: clamp(0.75rem, 0.9vw, 0.8125rem);
  line-height: 1.6;
  color: rgba(255, 255, 255, 0.78);
}

/* Column 4 — Africa Map Image */
.about__card--map {
  padding: 0;
  display: block;
  position: relative;
  overflow: hidden;
  min-height: 100%;
  height: 100%;
  align-self: stretch;
  background: rgba(255, 255, 255, 0.03);
}

.about__map-img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  padding: clamp(16px, 3vw, 28px);
  transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}

.about__card--map:hover .about__map-img {
  transform: scale(1.04);
}

/* Row 2 — Feature cards */
.about__feature {
  display: flex;
  flex-direction: column;
  border-radius: var(--radius-md);
  overflow: hidden;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.08);
  transition: transform 0.4s ease, border-color 0.4s ease, box-shadow 0.4s ease;
}

.about__feature:hover {
  transform: translateY(-6px);
  border-color: rgba(201, 162, 39, 0.25);
  box-shadow: 0 16px 48px rgba(0, 0, 0, 0.25);
}

.about__feature-image {
  aspect-ratio: 16 / 10;
  overflow: hidden;
}

.about__feature-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transition: transform 0.6s cubic-bezier(0.4, 0, 0.2, 1);
}

.about__feature:hover .about__feature-image img {
  transform: scale(1.06);
}

.about__feature-title {
  padding: 20px 20px 0;
  font-size: clamp(0.9375rem, 1.2vw, 1.125rem);
  font-weight: 700;
  color: var(--color-accent);
  line-height: 1.35;
}

.about__feature-text {
  padding: 10px 20px 24px;
  font-size: clamp(0.8125rem, 1vw, 0.9375rem);
  line-height: 1.65;
  color: rgba(255, 255, 255, 0.78);
}

/* About Page — premium layout */
.about-page {
  overflow-x: hidden;
}

.about-page-hero {
  position: relative;
  min-height: clamp(520px, 75vh, 680px);
  display: flex;
  flex-direction: column;
  align-items: stretch;
  padding: calc(var(--header-height) + 48px) 0 clamp(32px, 4vw, 48px);
  color: var(--color-white);
  overflow: hidden;
}

.about-page-hero__bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.about-page-hero__bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.about-page-hero__overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(180deg, rgba(5, 9, 16, 0.55) 0%, rgba(11, 22, 40, 0.88) 100%),
    linear-gradient(105deg, rgba(7, 13, 22, 0.92) 0%, rgba(11, 22, 40, 0.75) 55%, rgba(14, 30, 52, 0.5) 100%);
}

.about-page-hero__inner {
  position: relative;
  z-index: 2;
  flex: 1;
  display: grid;
  grid-template-columns: 1fr minmax(260px, 380px);
  gap: clamp(32px, 5vw, 64px);
  align-items: center;
}

.about-page-hero__label {
  display: inline-block;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--color-accent);
  margin-bottom: 14px;
}

.about-page-hero__title {
  font-family: var(--font-display);
  font-size: clamp(2.25rem, 5vw, 3.5rem);
  font-weight: 700;
  line-height: 1.1;
  margin-bottom: 20px;
  letter-spacing: -0.02em;
}

.about-page-hero__title em {
  font-style: italic;
  color: var(--color-accent);
}

.about-page-hero__desc {
  font-size: clamp(1rem, 1.3vw, 1.125rem);
  line-height: 1.75;
  color: rgba(255, 255, 255, 0.82);
  margin-bottom: 28px;
  max-width: 540px;
}

.about-page-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
}

.about-page-hero__card {
  padding: clamp(20px, 2.5vw, 28px);
  background: rgba(255, 255, 255, 0.06);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border: 1px solid rgba(201, 162, 39, 0.3);
  border-radius: 16px;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.35);
}

.about-page-hero__map {
  width: 100%;
  height: auto;
  object-fit: contain;
  object-position: center;
  margin-bottom: 16px;
  filter: drop-shadow(0 8px 24px rgba(201, 162, 39, 0.15));
}

.about-page .hero__stat-value {
  color: var(--color-accent);
}

.about-page-hero__card-caption {
  font-size: 0.8125rem;
  line-height: 1.6;
  color: rgba(255, 255, 255, 0.65);
  text-align: center;
}

.about-page-stats {
  position: relative;
  z-index: 2;
  width: 100%;
  margin-top: clamp(28px, 4vw, 48px);
}

.about-page-stats .hero__stats {
  animation: none;
  padding-top: clamp(20px, 3vw, 28px);
}

.about-page-highlights {
  background:
    radial-gradient(ellipse 70% 45% at 50% 0%, rgba(201, 162, 39, 0.08) 0%, transparent 55%),
    linear-gradient(180deg, var(--color-bg-innovations-alt) 0%, var(--color-bg-innovations) 100%);
  color: var(--color-text);
}

.about-page-highlights__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(20px, 2.5vw, 28px);
}

.about-page-highlight {
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: clamp(240px, 28vw, 280px);
  padding: clamp(28px, 3vw, 36px) clamp(24px, 2.5vw, 28px);
  background: var(--color-white);
  border: 1px solid var(--color-border);
  border-radius: 16px;
  box-shadow: var(--shadow-sm);
  overflow: hidden;
  transition: transform 0.4s ease, box-shadow 0.4s ease, border-color 0.4s ease;
}

.about-page-highlight::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: linear-gradient(90deg, var(--color-accent), var(--color-green-bright));
  opacity: 0.85;
}

.about-page-highlight:hover {
  transform: translateY(-6px);
  box-shadow: 0 20px 48px rgba(12, 35, 64, 0.12);
  border-color: rgba(201, 162, 39, 0.35);
}

.about-page-highlight--featured {
  background:
    linear-gradient(160deg, rgba(11, 22, 40, 0.02) 0%, rgba(201, 162, 39, 0.04) 100%),
    var(--color-white);
}

.about-page-highlight__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 56px;
  height: 56px;
  margin-bottom: 20px;
  border-radius: 14px;
  background: linear-gradient(145deg, rgba(52, 211, 153, 0.14) 0%, rgba(52, 211, 153, 0.08) 100%);
  color: var(--color-icon);
  border: 1px solid var(--color-icon-border);
  box-shadow: 0 4px 16px rgba(52, 211, 153, 0.1);
}

.about-page-highlight__number {
  position: absolute;
  top: 20px;
  right: 24px;
  font-family: var(--font-display);
  font-size: clamp(2rem, 3vw, 2.75rem);
  font-weight: 700;
  line-height: 1;
  color: var(--color-accent);
  opacity: 0.28;
  pointer-events: none;
  user-select: none;
}

.about-page-highlight__title {
  flex: 1;
  font-family: var(--font-display);
  font-size: clamp(1.0625rem, 1.4vw, 1.25rem);
  font-weight: 700;
  line-height: 1.35;
  color: var(--color-primary);
  letter-spacing: -0.01em;
}

.about-page-highlight__accent {
  width: 40px;
  height: 3px;
  margin-top: 20px;
  border-radius: 2px;
  background: linear-gradient(90deg, var(--color-accent), transparent);
}

.about-page-mv {
  background:
    radial-gradient(ellipse 80% 50% at 50% 0%, var(--color-glow-gold) 0%, transparent 55%),
    linear-gradient(180deg, var(--color-bg-sovereign) 0%, #0d1a2e 100%);
  color: var(--color-white);
  position: relative;
}

.about-page-mv__grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: clamp(24px, 3vw, 32px);
}

.about-page-mv-card {
  position: relative;
  padding: clamp(32px, 4vw, 44px);
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 16px;
  transition: transform 0.4s ease, border-color 0.4s ease, box-shadow 0.4s ease;
  overflow: hidden;
}

.about-page-mv-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: linear-gradient(90deg, var(--color-accent), var(--color-green-bright));
  opacity: 0.8;
}

.about-page-mv-card:hover {
  transform: translateY(-6px);
  border-color: rgba(201, 162, 39, 0.35);
  box-shadow: 0 20px 56px rgba(0, 0, 0, 0.3);
}

.about-page-mv-card__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 56px;
  height: 56px;
  margin-bottom: 20px;
  border-radius: 14px;
  background: rgba(45, 90, 61, 0.35);
  color: var(--color-green-bright);
  border: 1px solid rgba(74, 222, 128, 0.25);
}

.about-page-mv-card__icon--vision {
  background: var(--color-icon-soft);
  color: var(--color-icon);
  border-color: var(--color-icon-border);
}

.about-page-mv-card__title {
  font-family: var(--font-display);
  font-size: clamp(1.375rem, 2vw, 1.625rem);
  font-weight: 700;
  color: var(--color-accent);
  margin-bottom: 14px;
}

.about-page-mv-card__text {
  font-size: clamp(0.9375rem, 1.1vw, 1.0625rem);
  line-height: 1.75;
  color: rgba(255, 255, 255, 0.78);
}

.about-page-values {
  background: var(--color-bg-innovations);
}

.about-page-values__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: clamp(16px, 2vw, 24px);
}

.about-page-value {
  padding: clamp(24px, 3vw, 32px) clamp(20px, 2.5vw, 24px);
  background: var(--color-white);
  border: 1px solid var(--color-border);
  border-radius: 14px;
  box-shadow: var(--shadow-sm);
  transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;
}

.about-page-value:hover {
  transform: translateY(-4px);
  box-shadow: var(--shadow-md);
  border-color: rgba(201, 162, 39, 0.35);
}

.about-page-value__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  margin-bottom: 16px;
  border-radius: 12px;
  background: var(--color-icon-soft);
  color: var(--color-icon);
}

.about-page-value__title {
  font-size: 1.0625rem;
  font-weight: 700;
  color: var(--color-primary);
  margin-bottom: 8px;
}

.about-page-value__desc {
  font-size: 0.875rem;
  line-height: 1.65;
  color: var(--color-text-muted);
}

.about-page-entities {
  background:
    radial-gradient(ellipse 60% 40% at 100% 100%, var(--color-glow-teal) 0%, transparent 60%),
    linear-gradient(180deg, #0d1a2e 0%, var(--color-bg-sovereign) 100%);
  color: var(--color-white);
}

.about-page-entities__grid {
  display: flex;
  flex-direction: column;
  gap: clamp(20px, 2.5vw, 28px);
}

.about-page-entity {
  display: grid;
  grid-template-columns: minmax(200px, 280px) 1fr;
  gap: 0;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 16px;
  overflow: hidden;
  transition: transform 0.4s ease, border-color 0.4s ease, box-shadow 0.4s ease;
}

.about-page-entity:hover {
  transform: translateX(6px);
  border-color: rgba(201, 162, 39, 0.3);
  box-shadow: 0 16px 48px rgba(0, 0, 0, 0.25);
}

.about-page-entity__media {
  position: relative;
  min-height: 200px;
  overflow: hidden;
}

.about-page-entity__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transition: transform 0.6s ease;
}

.about-page-entity:hover .about-page-entity__media img {
  transform: scale(1.05);
}

.about-page-entity__tag {
  position: absolute;
  top: 16px;
  left: 16px;
  padding: 6px 12px;
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--color-primary);
  background: var(--color-accent);
  border-radius: 6px;
}

.about-page-entity__body {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: clamp(24px, 3vw, 36px);
}

.about-page-entity__title {
  font-family: var(--font-display);
  font-size: clamp(1.125rem, 1.5vw, 1.375rem);
  font-weight: 700;
  color: var(--color-accent);
  line-height: 1.35;
  margin-bottom: 12px;
}

.about-page-entity__text {
  font-size: clamp(0.875rem, 1vw, 0.9375rem);
  line-height: 1.7;
  color: rgba(255, 255, 255, 0.75);
}

.about-page-cta {
  background:
    radial-gradient(ellipse 70% 50% at 50% 100%, var(--color-glow-gold) 0%, transparent 55%),
    linear-gradient(180deg, var(--color-bg-sovereign) 0%, var(--color-bg-investment) 100%);
  padding: clamp(64px, 8vw, 96px) 0;
  color: var(--color-white);
}

.about-page-cta__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 32px;
  padding: clamp(36px, 4vw, 48px);
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(201, 162, 39, 0.3);
  border-radius: 20px;
}

.about-page-cta__title {
  font-family: var(--font-display);
  font-size: clamp(1.5rem, 3vw, 2rem);
  font-weight: 700;
  line-height: 1.25;
  margin-bottom: 10px;
}


.about-page-cta__desc {
  font-size: clamp(0.9375rem, 1.1vw, 1.0625rem);
  line-height: 1.7;
  color: rgba(255, 255, 255, 0.72);
  max-width: 520px;
}

.about-page-cta__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  flex-shrink: 0;
}

@media (max-width: 1024px) {
  .about-page-hero__inner {
    grid-template-columns: 1fr;
  }

  .about-page-hero__visual {
    max-width: 400px;
  }

  .about-page-highlights__grid {
    grid-template-columns: 1fr;
  }

  .about-page-mv__grid {
    grid-template-columns: 1fr;
  }

  .about-page-values__grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .about-page-entity {
    grid-template-columns: 1fr;
  }

  .about-page-entity__media {
    min-height: 220px;
  }
}

@media (max-width: 640px) {
  .about-page-hero {
    min-height: auto;
  }

  .about-page-stats {
    margin-top: 24px;
  }

  .about-page-values__grid {
    grid-template-columns: 1fr;
  }

  .about-page-cta__inner {
    flex-direction: column;
    text-align: center;
  }

  .about-page-cta__actions {
    justify-content: center;
    width: 100%;
  }

  .about-page-cta__actions .btn {
    flex: 1 1 auto;
    min-width: 140px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .about-page-mv-card,
  .about-page-value,
  .about-page-entity,
  .about-page-highlight,
  .about__card,
  .about__feature,
  .service-card,
  .industry-card,
  .innovation-card,
  .workflow-step,
  .benefit-card {
    transition: none;
  }

  .about-page-entity:hover .about-page-entity__media img,
  .about__card--map:hover .about__map-img,
  .service-card:hover .service-card__image img,
  .industry-card:hover .industry-card__icon img,
  .innovation-card:hover .innovation-card__bg img {
    transform: none;
  }
}

/* Ecosystem Page — premium layout */
.ecosystem-page {
  --ecosystem-subnav-height: 52px;
}

.ecosystem-page .section[id],
.ecosystem-page #core-pillars {
  scroll-margin-top: calc(var(--header-height) + var(--ecosystem-subnav-height));
}

.industries-page {
  --industries-subnav-height: 52px;
}

.innovations-page {
  --innovations-subnav-height: 52px;
}

.investment-page {
  --investment-subnav-height: 52px;
}

.industries-page .section[id] {
  scroll-margin-top: calc(var(--header-height) + var(--industries-subnav-height));
}

.innovations-page .section[id] {
  scroll-margin-top: calc(var(--header-height) + var(--innovations-subnav-height));
}

.investment-page .section[id],
.investment-page .investment-page-partner {
  scroll-margin-top: calc(var(--header-height) + var(--investment-subnav-height));
}

.partner-page {
  --partner-subnav-height: 52px;
}

.partner-page .section[id] {
  scroll-margin-top: calc(var(--header-height) + var(--partner-subnav-height));
}

.ecosystem-page-hero {
  position: relative;
  min-height: clamp(520px, 75vh, 680px);
  display: flex;
  flex-direction: column;
  align-items: stretch;
  padding: calc(var(--header-height) + 48px) 0 clamp(32px, 4vw, 48px);
  color: var(--color-white);
  overflow: hidden;
}

.ecosystem-page-hero__bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.ecosystem-page-hero__bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.ecosystem-page-hero__overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(180deg, rgba(5, 9, 16, 0.5) 0%, rgba(14, 30, 52, 0.9) 100%),
    linear-gradient(105deg, rgba(7, 13, 22, 0.88) 0%, rgba(14, 30, 52, 0.72) 55%, rgba(45, 212, 191, 0.08) 100%);
}

.ecosystem-page-hero__inner {
  position: relative;
  z-index: 2;
  flex: 1;
  display: grid;
  grid-template-columns: 1fr minmax(260px, 340px);
  gap: clamp(32px, 5vw, 64px);
  align-items: center;
}

.ecosystem-page-hero__label {
  display: inline-block;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--color-accent);
  margin-bottom: 14px;
}

.ecosystem-page-hero__title {
  font-family: var(--font-display);
  font-size: clamp(2.25rem, 5vw, 3.5rem);
  font-weight: 700;
  line-height: 1.1;
  margin-bottom: 20px;
  letter-spacing: -0.02em;
  color: var(--color-white);
}

.ecosystem-page-hero__title em {
  font-style: italic;
  color: var(--color-white);
}

.ecosystem-page-hero__desc {
  font-size: clamp(1rem, 1.3vw, 1.125rem);
  line-height: 1.75;
  color: rgba(255, 255, 255, 0.82);
  margin-bottom: 28px;
  max-width: 540px;
}

.ecosystem-page-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
}

.ecosystem-page-hero__diagram {
  position: relative;
  width: 100%;
  aspect-ratio: 1;
  max-width: 320px;
  margin: 0 auto;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(201, 162, 39, 0.25);
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.35);
}

.ecosystem-page-hero__node {
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 8px 12px;
  font-size: 0.6875rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.85);
  background: rgba(11, 22, 40, 0.85);
  border: 1px solid rgba(201, 162, 39, 0.3);
  border-radius: 999px;
  white-space: nowrap;
}

.ecosystem-page-hero__node--center {
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  padding: 14px 20px;
  font-family: var(--font-display);
  font-size: 1rem;
  font-weight: 700;
  color: var(--color-accent);
  background: rgba(11, 22, 40, 0.95);
  border-color: rgba(201, 162, 39, 0.5);
  box-shadow: 0 0 32px rgba(201, 162, 39, 0.15);
}

.ecosystem-page-hero__node:nth-child(2) { top: 4%; left: 50%; transform: translateX(-50%); }
.ecosystem-page-hero__node:nth-child(3) { top: 22%; right: 0; }
.ecosystem-page-hero__node:nth-child(4) { bottom: 22%; right: 0; }
.ecosystem-page-hero__node:nth-child(5) { bottom: 4%; left: 50%; transform: translateX(-50%); }
.ecosystem-page-hero__node:nth-child(6) { bottom: 22%; left: 0; }
.ecosystem-page-hero__node:nth-child(7) { top: 22%; left: 0; }

.ecosystem-page-hero__caption {
  margin-top: 20px;
  font-size: 0.8125rem;
  line-height: 1.6;
  color: rgba(255, 255, 255, 0.65);
  text-align: center;
}

.ecosystem-page-hero__metrics {
  position: relative;
  z-index: 2;
  width: 100%;
  margin-top: clamp(28px, 4vw, 48px);
  padding-top: clamp(20px, 3vw, 28px);
  border-top: 1px solid rgba(255, 255, 255, 0.12);
}

.ecosystem-page-hero__metrics-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(12px, 1.5vw, 16px);
  list-style: none;
  padding: 0;
  margin: 0;
}

.ecosystem-page-metric {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-height: 96px;
  padding: clamp(16px, 2vw, 24px) clamp(12px, 1.5vw, 16px);
  text-align: center;
  background: linear-gradient(160deg, rgba(14, 28, 51, 0.95) 0%, rgba(21, 40, 69, 0.92) 100%);
  border: 1px solid rgba(201, 162, 39, 0.35);
  border-radius: 14px;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.28);
  transition: transform 0.35s ease, border-color 0.35s ease;
}

.ecosystem-page-metric:hover {
  transform: translateY(-3px);
  border-color: rgba(201, 162, 39, 0.55);
}

.ecosystem-page-metric__value {
  font-family: var(--font-display);
  font-size: clamp(1.375rem, 2.2vw, 1.875rem);
  font-weight: 700;
  color: var(--color-accent);
  line-height: 1.15;
}

.ecosystem-page-metric__label {
  font-size: clamp(0.6875rem, 0.9vw, 0.8125rem);
  font-weight: 500;
  color: rgba(255, 255, 255, 0.78);
  line-height: 1.35;
}

.ecosystem-page-nav,
.industries-page-nav,
.innovations-page-nav,
.investment-page-nav,
.partner-page-nav,
.team-page-nav,
.page-subnav {
  position: -webkit-sticky;
  position: sticky;
  top: var(--header-height);
  z-index: 999;
  width: 100%;
  background: rgba(255, 255, 255, 0.97);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border-bottom: 1px solid var(--color-border);
  box-shadow: 0 4px 24px rgba(12, 35, 64, 0.06);
  transition: box-shadow 0.25s ease, background 0.25s ease;
}

.ecosystem-page-nav.is-stuck,
.industries-page-nav.is-stuck,
.innovations-page-nav.is-stuck,
.investment-page-nav.is-stuck,
.partner-page-nav.is-stuck,
.team-page-nav.is-stuck,
.page-subnav.is-stuck {
  box-shadow: 0 6px 32px rgba(12, 35, 64, 0.12);
  background: rgba(255, 255, 255, 0.99);
}

.ecosystem-page-nav__inner,
.page-subnav__inner {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: nowrap;
  gap: 4px;
  padding: 12px 0;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}

.ecosystem-page-nav__inner::-webkit-scrollbar,
.page-subnav__inner::-webkit-scrollbar {
  display: none;
}

.ecosystem-page-nav__link,
.page-subnav__link {
  flex-shrink: 0;
  padding: 8px 16px;
  font-size: 0.8125rem;
  font-weight: 600;
  color: var(--color-text-muted);
  border-radius: 999px;
  transition: color 0.25s ease, background 0.25s ease;
}

.ecosystem-page-nav__link:hover,
.ecosystem-page-nav__link.active,
.page-subnav__link:hover,
.page-subnav__link.active {
  color: var(--color-primary);
  background: rgba(201, 162, 39, 0.12);
}

.ecosystem-page-nav__link.active,
.page-subnav__link.active {
  color: var(--color-accent);
  box-shadow: inset 0 -2px 0 var(--color-accent);
  border-radius: var(--radius-sm);
}

.ecosystem-page-overview {
  background:
    radial-gradient(ellipse 70% 45% at 50% 0%, rgba(201, 162, 39, 0.08) 0%, transparent 55%),
    linear-gradient(180deg, var(--color-bg-innovations-alt) 0%, var(--color-bg-innovations) 100%);
}

.ecosystem-page-overview__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: clamp(40px, 6vw, 72px);
  align-items: center;
}

.ecosystem-page-overview__text {
  font-size: clamp(0.9375rem, 1.1vw, 1.0625rem);
  line-height: 1.75;
  color: var(--color-text-muted);
  margin-bottom: 24px;
}

.ecosystem-page-overview__list {
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.ecosystem-page-overview__list li {
  position: relative;
  padding-left: 24px;
  font-size: 0.9375rem;
  font-weight: 500;
  color: rgba(255, 255, 255, 0.82);
  line-height: 1.5;
}

.ecosystem-page-overview__list li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0.55em;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--color-icon);
  box-shadow: 0 0 0 3px rgba(52, 211, 153, 0.2);
}

.ecosystem-page-overview__card {
  border-radius: 16px;
  overflow: hidden;
  background: var(--color-white);
  border: 1px solid var(--color-border);
  box-shadow: var(--shadow-md);
}

.ecosystem-page-overview__card img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
}

.ecosystem-page-overview__card-body {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 20px 24px;
}

.ecosystem-page-overview__card-body strong {
  font-size: 1rem;
  font-weight: 700;
  color: var(--color-primary);
}

.ecosystem-page-overview__card-body span {
  font-size: 0.8125rem;
  line-height: 1.5;
  color: var(--color-text-muted);
}

.ecosystem-page-pillars {
  position: relative;
  background:
    radial-gradient(ellipse 70% 45% at 0% 50%, var(--color-glow-teal) 0%, transparent 55%),
    linear-gradient(180deg, #0d1a2e 0%, var(--color-bg-ecosystem) 10%, var(--color-bg-ecosystem) 90%, #0a1526 100%);
}

.ecosystem-page-pillars::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(201, 162, 39, 0.15), transparent);
  pointer-events: none;
}

.ecosystem-page-workflow {
  background: var(--color-bg-innovations);
}

.ecosystem-page-workflow__panel {
  padding: clamp(32px, 4vw, 48px);
  background:
    radial-gradient(ellipse 80% 50% at 50% 0%, var(--color-glow-gold) 0%, transparent 55%),
    linear-gradient(180deg, #0d1a2e 0%, var(--color-bg-ecosystem) 100%);
  border: 1px solid rgba(201, 162, 39, 0.2);
  border-radius: 20px;
  box-shadow: 0 24px 64px rgba(12, 35, 64, 0.15);
}

.ecosystem-page-workflow .ecosystem-workflow {
  margin-top: 0;
  padding-top: 0;
  border-top: none;
}

/* Ecosystem Workflow — interactive pipeline visualization */
.ecosystem-workflow-viz {
  display: flex;
  flex-direction: column;
  gap: clamp(28px, 4vw, 40px);
}

.ecosystem-workflow-viz__track-wrap {
  position: relative;
  padding: 0 clamp(8px, 2vw, 24px);
}

.ecosystem-workflow-viz__track-line {
  position: absolute;
  top: 28px;
  left: clamp(8px, 2vw, 24px);
  right: clamp(8px, 2vw, 24px);
  height: 3px;
  background: rgba(255, 255, 255, 0.1);
  border-radius: 999px;
  overflow: hidden;
  z-index: 0;
}

.ecosystem-workflow-viz__track-progress {
  display: block;
  height: 100%;
  width: 0%;
  background: linear-gradient(90deg, var(--color-green-bright), var(--color-accent), #2dd4bf);
  border-radius: 999px;
  transition: width 0.55s cubic-bezier(0.4, 0, 0.2, 1);
}

.ecosystem-workflow-viz__track {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: clamp(8px, 1.5vw, 16px);
}

.ecosystem-workflow-viz__node {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  padding: 0;
  background: none;
  border: none;
  cursor: pointer;
  color: rgba(255, 255, 255, 0.55);
  transition: color 0.3s ease, transform 0.3s ease;
}

.ecosystem-workflow-viz__node:hover {
  color: rgba(255, 255, 255, 0.85);
  transform: translateY(-2px);
}

.ecosystem-workflow-viz__node.is-active {
  color: var(--color-white);
}

.ecosystem-workflow-viz__node-ring {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.04);
  border: 2px solid rgba(255, 255, 255, 0.15);
  transition: border-color 0.35s ease, box-shadow 0.35s ease, background 0.35s ease;
}

.ecosystem-workflow-viz__node.is-active .ecosystem-workflow-viz__node-ring {
  border-color: var(--color-icon);
  background: var(--color-icon-soft);
  box-shadow: 0 0 0 4px rgba(52, 211, 153, 0.15), 0 8px 24px rgba(0, 0, 0, 0.25);
}

.ecosystem-workflow-viz__node:nth-child(2).is-active .ecosystem-workflow-viz__node-ring {
  border-color: #2dd4bf;
  background: rgba(45, 212, 191, 0.1);
  box-shadow: 0 0 0 4px rgba(45, 212, 191, 0.12), 0 8px 24px rgba(0, 0, 0, 0.25);
}

.ecosystem-workflow-viz__node:nth-child(3).is-active .ecosystem-workflow-viz__node-ring {
  border-color: var(--color-green-bright);
  background: rgba(74, 222, 128, 0.1);
  box-shadow: 0 0 0 4px rgba(74, 222, 128, 0.12), 0 8px 24px rgba(0, 0, 0, 0.25);
}

.ecosystem-workflow-viz__node-num {
  font-family: var(--font-display);
  font-size: 0.8125rem;
  font-weight: 700;
  line-height: 1;
}

.ecosystem-workflow-viz__node-label {
  font-size: 0.6875rem;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  text-align: center;
  line-height: 1.3;
}

.ecosystem-workflow-viz__stage {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  min-height: 280px;
}

.ecosystem-workflow-viz__hub {
  position: absolute;
  top: 50%;
  right: clamp(16px, 4vw, 48px);
  transform: translateY(-50%);
  width: clamp(120px, 18vw, 180px);
  height: clamp(120px, 18vw, 180px);
  pointer-events: none;
  opacity: 0.35;
}

.ecosystem-workflow-viz__hub-core {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 2;
  padding: 10px 16px;
  font-family: var(--font-display);
  font-size: 0.875rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  color: var(--color-accent);
  background: rgba(201, 162, 39, 0.1);
  border: 1px solid rgba(201, 162, 39, 0.35);
  border-radius: 999px;
}

.ecosystem-workflow-viz__hub-orbit {
  position: absolute;
  inset: 0;
  border: 1px dashed rgba(201, 162, 39, 0.25);
  border-radius: 50%;
}

.ecosystem-workflow-viz__hub-orbit--2 {
  inset: 15%;
  border-color: rgba(74, 222, 128, 0.2);
}

.ecosystem-workflow-viz__panel {
  position: relative;
  z-index: 1;
  max-width: min(100%, 640px);
  padding: clamp(28px, 4vw, 40px);
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 16px;
  backdrop-filter: blur(12px);
  opacity: 0;
  transform: translateY(12px);
  transition: opacity 0.4s ease, transform 0.4s ease;
  pointer-events: none;
}

.ecosystem-workflow-viz__panel.is-active {
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}

.ecosystem-workflow-viz__panel[hidden] {
  display: none;
}

.ecosystem-workflow-viz__panel.is-active[hidden] {
  display: block;
}

.ecosystem-workflow-viz__panel-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 64px;
  height: 64px;
  margin-bottom: 20px;
  border-radius: 14px;
}

.ecosystem-workflow-viz__panel-icon--power {
  color: var(--color-green-bright);
  background: rgba(74, 222, 128, 0.12);
}

.ecosystem-workflow-viz__panel-icon--data {
  color: #2dd4bf;
  background: rgba(45, 212, 191, 0.12);
}

.ecosystem-workflow-viz__panel-icon--finance {
  color: var(--color-accent);
  background: rgba(201, 162, 39, 0.12);
}

.ecosystem-workflow-viz__panel-icon--mobility {
  color: var(--color-green-bright);
  background: rgba(74, 222, 128, 0.12);
}

.ecosystem-workflow-viz__panel-icon--fez {
  color: var(--color-accent);
  background: rgba(201, 162, 39, 0.12);
}

.ecosystem-workflow-viz__panel-icon--jobs {
  color: #2dd4bf;
  background: rgba(45, 212, 191, 0.12);
}

.ecosystem-workflow-viz__panel-step {
  display: block;
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--color-accent);
  margin-bottom: 10px;
}

.ecosystem-workflow-viz__panel-title {
  font-family: var(--font-display);
  font-size: clamp(1.375rem, 2.5vw, 1.75rem);
  font-weight: 700;
  color: var(--color-white);
  line-height: 1.25;
  margin-bottom: 12px;
}

.ecosystem-workflow-viz__panel-desc {
  font-size: clamp(0.9375rem, 1.2vw, 1.0625rem);
  line-height: 1.7;
  color: rgba(255, 255, 255, 0.72);
  margin-bottom: 20px;
}

.ecosystem-workflow-viz__panel-next {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 14px;
  font-size: 0.75rem;
  font-weight: 600;
  color: rgba(255, 255, 255, 0.65);
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 999px;
}

.ecosystem-workflow-viz__controls {
  position: absolute;
  bottom: clamp(20px, 3vw, 28px);
  right: clamp(20px, 3vw, 28px);
  z-index: 2;
  display: flex;
  align-items: center;
  gap: 8px;
}

.ecosystem-workflow-viz__ctrl {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  padding: 0;
  color: rgba(255, 255, 255, 0.75);
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 10px;
  cursor: pointer;
  transition: background 0.25s ease, border-color 0.25s ease, color 0.25s ease;
}

.ecosystem-workflow-viz__ctrl:hover {
  color: var(--color-white);
  background: rgba(201, 162, 39, 0.15);
  border-color: rgba(201, 162, 39, 0.35);
}

.ecosystem-workflow-viz__ctrl--play.is-paused .ecosystem-workflow-viz__icon-pause {
  display: none;
}

.ecosystem-workflow-viz__ctrl--play.is-paused .ecosystem-workflow-viz__icon-play {
  display: block !important;
}

@media (max-width: 900px) {
  .ecosystem-workflow-viz__track {
    display: flex;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    gap: 12px;
    padding-bottom: 8px;
    scrollbar-width: none;
  }

  .ecosystem-workflow-viz__track::-webkit-scrollbar {
    display: none;
  }

  .ecosystem-workflow-viz__node {
    flex: 0 0 auto;
    min-width: 72px;
    scroll-snap-align: center;
  }

  .ecosystem-workflow-viz__track-line {
    display: none;
  }

  .ecosystem-workflow-viz__hub {
    display: none;
  }

  .ecosystem-workflow-viz__stage {
    min-height: auto;
  }

  .ecosystem-workflow-viz__panel {
    max-width: none;
  }

  .ecosystem-workflow-viz__controls {
    position: static;
    justify-content: center;
    margin-top: 16px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .ecosystem-workflow-viz__panel,
  .ecosystem-workflow-viz__track-progress,
  .ecosystem-workflow-viz__node {
    transition: none;
  }
}

.ecosystem-page-benefits {
  background:
    radial-gradient(ellipse 70% 45% at 50% 100%, rgba(201, 162, 39, 0.06) 0%, transparent 55%),
    linear-gradient(180deg, var(--color-bg-innovations) 0%, var(--color-bg-innovations-alt) 100%);
}

.ecosystem-page-benefits__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(16px, 2vw, 24px);
}

.ecosystem-page-benefit {
  padding: clamp(24px, 3vw, 32px) clamp(20px, 2.5vw, 24px);
  background: var(--color-white);
  border: 1px solid var(--color-border);
  border-radius: 14px;
  box-shadow: var(--shadow-sm);
  transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;
}

.ecosystem-page-benefit:hover {
  transform: translateY(-4px);
  box-shadow: var(--shadow-md);
  border-color: rgba(201, 162, 39, 0.35);
}

.ecosystem-page-benefit__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  margin-bottom: 16px;
  border-radius: 12px;
  background: var(--color-icon-soft);
  color: var(--color-icon);
}

.ecosystem-page-benefit__title {
  font-size: 1.0625rem;
  font-weight: 700;
  color: var(--color-primary);
  margin-bottom: 8px;
}

.ecosystem-page-benefit__desc {
  font-size: 0.875rem;
  line-height: 1.65;
  color: var(--color-text-muted);
}

.ecosystem-page-impact {
  background:
    radial-gradient(ellipse 60% 40% at 100% 100%, var(--color-glow-teal) 0%, transparent 60%),
    linear-gradient(180deg, #0a1526 0%, var(--color-bg-ecosystem) 100%);
}

.ecosystem-page-impact__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(16px, 2vw, 24px);
}

.ecosystem-page-impact-card {
  text-align: center;
  padding: clamp(28px, 3vw, 36px) clamp(20px, 2.5vw, 24px);
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(201, 162, 39, 0.25);
  border-radius: 16px;
  transition: transform 0.35s ease, border-color 0.35s ease;
}

.ecosystem-page-impact-card:hover {
  transform: translateY(-4px);
  border-color: rgba(201, 162, 39, 0.45);
}

.ecosystem-page-impact-card__value {
  display: block;
  font-family: var(--font-display);
  font-size: clamp(1.375rem, 2.2vw, 1.75rem);
  font-weight: 700;
  color: var(--color-accent);
  line-height: 1.2;
  margin-bottom: 8px;
}

.ecosystem-page-impact-card__label {
  display: block;
  font-size: clamp(0.75rem, 0.9vw, 0.8125rem);
  font-weight: 500;
  color: rgba(255, 255, 255, 0.72);
  line-height: 1.4;
}

.ecosystem-page-cta {
  background:
    radial-gradient(ellipse 70% 50% at 50% 100%, var(--color-glow-gold) 0%, transparent 55%),
    linear-gradient(180deg, var(--color-bg-ecosystem) 0%, var(--color-bg-sovereign) 100%);
  padding: clamp(64px, 8vw, 96px) 0;
  color: var(--color-white);
}

.ecosystem-page-cta__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 32px;
  padding: clamp(36px, 4vw, 48px);
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(201, 162, 39, 0.3);
  border-radius: 20px;
}

.ecosystem-page-cta__title {
  font-family: var(--font-display);
  font-size: clamp(1.5rem, 3vw, 2rem);
  font-weight: 700;
  line-height: 1.25;
  margin-bottom: 10px;
}


.ecosystem-page-cta__desc {
  font-size: clamp(0.9375rem, 1.1vw, 1.0625rem);
  line-height: 1.7;
  color: rgba(255, 255, 255, 0.72);
  max-width: 520px;
}

.ecosystem-page-cta__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  flex-shrink: 0;
}

@media (max-width: 1024px) {
  .ecosystem-page-hero__inner {
    grid-template-columns: 1fr;
  }

  .ecosystem-page-hero__metrics-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .ecosystem-page-overview__grid {
    grid-template-columns: 1fr;
  }

  .ecosystem-page-overview__visual {
    order: -1;
  }

  .ecosystem-page-benefits__grid,
  .ecosystem-page-impact__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .ecosystem-page-hero {
    min-height: auto;
  }

  .ecosystem-page-hero__metrics {
    margin-top: 24px;
  }

  .ecosystem-page-nav__link {
    padding: 8px 12px;
    font-size: 0.75rem;
  }

  .ecosystem-page-benefits__grid,
  .ecosystem-page-impact__grid {
    grid-template-columns: 1fr;
  }

  .ecosystem-page-cta__inner {
    flex-direction: column;
    text-align: center;
  }

  .ecosystem-page-cta__actions {
    justify-content: center;
    width: 100%;
  }

  .ecosystem-page-cta__actions .btn {
    flex: 1 1 auto;
    min-width: 140px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .ecosystem-page-metric,
  .ecosystem-page-benefit,
  .ecosystem-page-impact-card {
    transition: none;
  }
}

/* Industries Page — premium layout */
.industries-page-hero {
  position: relative;
  min-height: clamp(520px, 75vh, 680px);
  display: flex;
  flex-direction: column;
  align-items: stretch;
  padding: calc(var(--header-height) + 48px) 0 clamp(32px, 4vw, 48px);
  color: var(--color-white);
  overflow: hidden;
}

.industries-page-hero__bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.industries-page-hero__bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.industries-page-hero__overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(180deg, rgba(5, 9, 16, 0.5) 0%, rgba(10, 21, 38, 0.92) 100%),
    linear-gradient(105deg, rgba(7, 13, 22, 0.88) 0%, rgba(10, 21, 38, 0.75) 55%, rgba(45, 90, 61, 0.12) 100%);
}

.industries-page-hero__inner {
  position: relative;
  z-index: 2;
  flex: 1;
  display: grid;
  grid-template-columns: 1fr minmax(260px, 340px);
  gap: clamp(32px, 5vw, 64px);
  align-items: center;
}

.industries-page-hero__label {
  display: inline-block;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--color-accent);
  margin-bottom: 14px;
}

.industries-page-hero__title {
  font-family: var(--font-display);
  font-size: clamp(2.25rem, 5vw, 3.5rem);
  font-weight: 700;
  line-height: 1.1;
  margin-bottom: 20px;
  letter-spacing: -0.02em;
}

.industries-page-hero__title em {
  font-style: italic;
  color: var(--color-green-bright);
}

.industries-page-hero__desc {
  font-size: clamp(1rem, 1.3vw, 1.125rem);
  line-height: 1.75;
  color: rgba(255, 255, 255, 0.82);
  margin-bottom: 28px;
  max-width: 540px;
}

.industries-page-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
}

.industries-page-hero__stat-stack {
  display: flex;
  flex-direction: column;
  gap: 12px;
  width: 100%;
  max-width: 320px;
  margin: 0 auto;
}

.industries-page-hero__stat-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 20px;
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(74, 222, 128, 0.25);
  border-radius: 12px;
  backdrop-filter: blur(12px);
}

.industries-page-hero__stat-item strong {
  font-family: var(--font-display);
  font-size: 1.25rem;
  font-weight: 700;
  color: var(--color-green-bright);
}

.industries-page-hero__stat-item span {
  font-size: 0.75rem;
  font-weight: 500;
  color: rgba(255, 255, 255, 0.7);
  text-align: right;
}

.industries-page-hero__caption {
  margin-top: 20px;
  font-size: 0.8125rem;
  line-height: 1.6;
  color: rgba(255, 255, 255, 0.65);
  text-align: center;
}

.industries-page-hero__metrics {
  position: relative;
  z-index: 2;
  width: 100%;
  margin-top: clamp(28px, 4vw, 48px);
  padding-top: clamp(20px, 3vw, 28px);
  border-top: 1px solid rgba(255, 255, 255, 0.12);
}

.industries-page-hero__metrics-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(12px, 1.5vw, 16px);
  list-style: none;
  padding: 0;
  margin: 0;
}

.industries-page-metric {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-height: 96px;
  padding: clamp(16px, 2vw, 24px) clamp(12px, 1.5vw, 16px);
  text-align: center;
  background: linear-gradient(160deg, rgba(14, 28, 51, 0.95) 0%, rgba(21, 40, 69, 0.92) 100%);
  border: 1px solid rgba(74, 222, 128, 0.3);
  border-radius: 14px;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.28);
  transition: transform 0.35s ease, border-color 0.35s ease;
}

.industries-page-metric:hover {
  transform: translateY(-3px);
  border-color: rgba(74, 222, 128, 0.5);
}

.industries-page-metric__value {
  font-family: var(--font-display);
  font-size: clamp(1.375rem, 2.2vw, 1.875rem);
  font-weight: 700;
  color: var(--color-green-bright);
  line-height: 1.15;
}

.industries-page-metric__label {
  font-size: clamp(0.6875rem, 0.9vw, 0.8125rem);
  font-weight: 500;
  color: rgba(255, 255, 255, 0.78);
  line-height: 1.35;
}

.industries-page-overview {
  background:
    radial-gradient(ellipse 70% 45% at 50% 0%, rgba(74, 222, 128, 0.08) 0%, transparent 55%),
    linear-gradient(180deg, var(--color-bg-innovations-alt) 0%, var(--color-bg-innovations) 100%);
}

.industries-page-overview__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: clamp(40px, 6vw, 72px);
  align-items: center;
}

.industries-page-overview__text {
  font-size: clamp(0.9375rem, 1.1vw, 1.0625rem);
  line-height: 1.75;
  color: var(--color-text-muted);
  margin-bottom: 24px;
}

.industries-page-overview__pillars {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px;
}

.industries-page-overview__pillar {
  padding: 8px 16px;
  font-size: 0.8125rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  color: var(--color-primary);
  background: rgba(201, 162, 39, 0.12);
  border: 1px solid rgba(201, 162, 39, 0.25);
  border-radius: 999px;
  transition: background 0.25s ease, border-color 0.25s ease;
}

.industries-page-overview__pillar:hover {
  background: rgba(201, 162, 39, 0.2);
  border-color: rgba(201, 162, 39, 0.45);
}

.industries-page-overview__pillar-sep {
  width: 24px;
  height: 2px;
  background: linear-gradient(90deg, var(--color-accent), var(--color-green-bright));
  opacity: 0.5;
}

.industries-page-overview__card {
  border-radius: 16px;
  overflow: hidden;
  background: var(--color-white);
  border: 1px solid var(--color-border);
  box-shadow: var(--shadow-md);
}

.industries-page-overview__card img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
}

.industries-page-overview__card-body {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 20px 24px;
}

.industries-page-overview__card-body strong {
  font-size: 1rem;
  font-weight: 700;
  color: var(--color-primary);
}

.industries-page-overview__card-body span {
  font-size: 0.8125rem;
  line-height: 1.5;
  color: var(--color-text-muted);
}

.industries-page-framework {
  background: var(--color-bg-innovations);
}

.industries-page-framework__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(16px, 2vw, 24px);
}

.industries-page-framework-card {
  padding: clamp(24px, 3vw, 32px) clamp(20px, 2.5vw, 24px);
  background: var(--color-white);
  border: 1px solid var(--color-border);
  border-radius: 14px;
  box-shadow: var(--shadow-sm);
  transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;
}

.industries-page-framework-card:hover {
  transform: translateY(-4px);
  box-shadow: var(--shadow-md);
  border-color: rgba(201, 162, 39, 0.35);
}

.industries-page-framework-card__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  margin-bottom: 16px;
  border-radius: 12px;
  background: var(--color-icon-soft);
  color: var(--color-icon);
}

.industries-page-framework-card__title {
  font-size: 1.0625rem;
  font-weight: 700;
  color: var(--color-primary);
  margin-bottom: 8px;
}

.industries-page-framework-card__desc {
  font-size: 0.875rem;
  line-height: 1.65;
  color: var(--color-text-muted);
}

.industries-page-sectors {
  background:
    radial-gradient(ellipse 65% 50% at 100% 0%, var(--color-glow-green) 0%, transparent 50%),
    linear-gradient(180deg, #0a1526 0%, var(--color-bg-industries) 12%, var(--color-bg-industries) 88%, #081220 100%);
}

.industries-page-sectors__list {
  display: flex;
  flex-direction: column;
  gap: clamp(24px, 3vw, 32px);
}

.industries-page-sector {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr);
  gap: 0;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 18px;
  overflow: hidden;
  transition: transform 0.4s ease, border-color 0.4s ease, box-shadow 0.4s ease;
}

.industries-page-sector:hover {
  border-color: rgba(201, 162, 39, 0.3);
  box-shadow: 0 20px 56px rgba(0, 0, 0, 0.25);
}

.industries-page-sector--reverse {
  direction: rtl;
}

.industries-page-sector--reverse > * {
  direction: ltr;
}

.industries-page-sector__media {
  position: relative;
  min-height: 280px;
  overflow: hidden;
}

.industries-page-sector__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transition: transform 0.6s ease;
}

.industries-page-sector:hover .industries-page-sector__media img {
  transform: scale(1.05);
}

.industries-page-sector__index {
  position: absolute;
  top: 20px;
  left: 20px;
  z-index: 1;
  padding: 6px 12px;
  font-family: var(--font-display);
  font-size: 0.875rem;
  font-weight: 700;
  color: var(--color-primary);
  background: var(--color-accent);
  border-radius: 6px;
}

.industries-page-sector__body {
  display: flex;
  flex-direction: column;
  padding: clamp(28px, 3.5vw, 40px);
}

.industries-page-sector__title {
  font-family: var(--font-display);
  font-size: clamp(1.25rem, 1.8vw, 1.5rem);
  font-weight: 700;
  color: var(--color-accent);
  line-height: 1.3;
  margin-bottom: 8px;
}

.industries-page-sector__summary {
  font-size: 0.875rem;
  font-weight: 500;
  color: rgba(255, 255, 255, 0.55);
  margin-bottom: 24px;
  padding-bottom: 20px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.industries-page-sector__details {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(16px, 2vw, 20px);
}

.industries-page-sector__detail-label {
  display: block;
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--color-green-bright);
  margin-bottom: 6px;
}

.industries-page-sector__detail p {
  font-size: clamp(0.8125rem, 1vw, 0.875rem);
  line-height: 1.65;
  color: rgba(255, 255, 255, 0.72);
}

.industries-page-impact {
  background:
    radial-gradient(ellipse 60% 40% at 0% 100%, var(--color-glow-teal) 0%, transparent 60%),
    linear-gradient(180deg, #081220 0%, var(--color-bg-industries) 100%);
}

.industries-page-impact__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(16px, 2vw, 24px);
}

.industries-page-impact-card {
  text-align: center;
  padding: clamp(28px, 3vw, 36px) clamp(20px, 2.5vw, 24px);
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(74, 222, 128, 0.25);
  border-radius: 16px;
  transition: transform 0.35s ease, border-color 0.35s ease;
}

.industries-page-impact-card:hover {
  transform: translateY(-4px);
  border-color: rgba(74, 222, 128, 0.45);
}

.industries-page-impact-card__value {
  display: block;
  font-family: var(--font-display);
  font-size: clamp(1.375rem, 2.2vw, 1.75rem);
  font-weight: 700;
  color: var(--color-green-bright);
  line-height: 1.2;
  margin-bottom: 8px;
}

.industries-page-impact-card__label {
  display: block;
  font-size: clamp(0.75rem, 0.9vw, 0.8125rem);
  font-weight: 500;
  color: rgba(255, 255, 255, 0.72);
  line-height: 1.4;
}

.industries-page-cta {
  background:
    radial-gradient(ellipse 70% 50% at 50% 100%, rgba(74, 222, 128, 0.08) 0%, transparent 55%),
    linear-gradient(180deg, var(--color-bg-industries) 0%, var(--color-bg-sovereign) 100%);
  padding: clamp(64px, 8vw, 96px) 0;
  color: var(--color-white);
}

.industries-page-cta__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 32px;
  padding: clamp(36px, 4vw, 48px);
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(74, 222, 128, 0.25);
  border-radius: 20px;
}

.industries-page-cta__title {
  font-family: var(--font-display);
  font-size: clamp(1.5rem, 3vw, 2rem);
  font-weight: 700;
  line-height: 1.25;
  margin-bottom: 10px;
}

.industries-page-cta__desc {
  font-size: clamp(0.9375rem, 1.1vw, 1.0625rem);
  line-height: 1.7;
  color: rgba(255, 255, 255, 0.72);
  max-width: 520px;
}

.industries-page-cta__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  flex-shrink: 0;
}

@media (max-width: 1024px) {
  .industries-page-hero__inner {
    grid-template-columns: 1fr;
  }

  .industries-page-hero__metrics-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .industries-page-overview__grid {
    grid-template-columns: 1fr;
  }

  .industries-page-overview__visual {
    order: -1;
  }

  .industries-page-framework__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .industries-page-sector,
  .industries-page-sector--reverse {
    grid-template-columns: 1fr;
    direction: ltr;
  }

  .industries-page-sector__media {
    min-height: 220px;
  }

  .industries-page-impact__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .industries-page-hero {
    min-height: auto;
  }

  .industries-page-hero__metrics {
    margin-top: 24px;
  }

  .industries-page-framework__grid {
    grid-template-columns: 1fr;
  }

  .industries-page-sector__details {
    grid-template-columns: 1fr;
  }

  .industries-page-impact__grid {
    grid-template-columns: 1fr;
  }

  .industries-page-cta__inner {
    flex-direction: column;
    text-align: center;
  }

  .industries-page-cta__actions {
    justify-content: center;
    width: 100%;
  }

  .industries-page-cta__actions .btn {
    flex: 1 1 auto;
    min-width: 140px;
  }

  .ecosystem-page-nav__link,
  .page-subnav__link {
    padding: 8px 12px;
    font-size: 0.75rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  .industries-page-metric,
  .industries-page-framework-card,
  .industries-page-sector,
  .industries-page-impact-card {
    transition: none;
  }

  .industries-page-sector:hover .industries-page-sector__media img {
    transform: none;
  }
}

/* Innovations Page — premium layout */
.innovations-page-hero {
  position: relative;
  min-height: clamp(520px, 75vh, 680px);
  display: flex;
  flex-direction: column;
  align-items: stretch;
  padding: calc(var(--header-height) + 48px) 0 clamp(32px, 4vw, 48px);
  color: var(--color-white);
  overflow: hidden;
}

.innovations-page-hero__bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.innovations-page-hero__bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.innovations-page-hero__overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(180deg, rgba(5, 9, 16, 0.5) 0%, rgba(10, 21, 38, 0.92) 100%),
    linear-gradient(105deg, rgba(7, 13, 22, 0.88) 0%, rgba(10, 21, 38, 0.75) 55%, rgba(201, 162, 39, 0.1) 100%);
}

.innovations-page-hero__inner {
  position: relative;
  z-index: 2;
  flex: 1;
  display: grid;
  grid-template-columns: 1fr minmax(260px, 340px);
  gap: clamp(32px, 5vw, 64px);
  align-items: center;
}

.innovations-page-hero__label {
  display: inline-block;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--color-accent);
  margin-bottom: 14px;
}

.innovations-page-hero__title {
  font-family: var(--font-display);
  font-size: clamp(2.25rem, 5vw, 3.5rem);
  font-weight: 700;
  line-height: 1.1;
  margin-bottom: 20px;
  letter-spacing: -0.02em;
}

.innovations-page-hero__title em {
  font-style: italic;
  color: var(--color-accent);
}

.innovations-page-hero__desc {
  font-size: clamp(1rem, 1.3vw, 1.125rem);
  line-height: 1.75;
  color: rgba(255, 255, 255, 0.82);
  margin-bottom: 28px;
  max-width: 540px;
}

.innovations-page-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
}

.innovations-page-hero__stat-stack {
  display: flex;
  flex-direction: column;
  gap: 12px;
  width: 100%;
  max-width: 320px;
  margin: 0 auto;
}

.innovations-page-hero__stat-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 20px;
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(201, 162, 39, 0.3);
  border-radius: 12px;
  backdrop-filter: blur(12px);
}

.innovations-page-hero__stat-item strong {
  font-family: var(--font-display);
  font-size: 1.25rem;
  font-weight: 700;
  color: var(--color-accent);
}

.innovations-page-hero__stat-item span {
  font-size: 0.75rem;
  font-weight: 500;
  color: rgba(255, 255, 255, 0.7);
  text-align: right;
}

.innovations-page-hero__caption {
  margin-top: 20px;
  font-size: 0.8125rem;
  line-height: 1.6;
  color: rgba(255, 255, 255, 0.65);
  text-align: center;
}

.innovations-page-hero__metrics {
  position: relative;
  z-index: 2;
  width: 100%;
  margin-top: clamp(28px, 4vw, 48px);
  padding-top: clamp(20px, 3vw, 28px);
  border-top: 1px solid rgba(255, 255, 255, 0.12);
}

.innovations-page-hero__metrics-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(12px, 1.5vw, 16px);
  list-style: none;
  padding: 0;
  margin: 0;
}

.innovations-page-metric {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-height: 96px;
  padding: clamp(16px, 2vw, 24px) clamp(12px, 1.5vw, 16px);
  text-align: center;
  background: linear-gradient(160deg, rgba(14, 28, 51, 0.95) 0%, rgba(21, 40, 69, 0.92) 100%);
  border: 1px solid rgba(201, 162, 39, 0.35);
  border-radius: 14px;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.28);
  transition: transform 0.35s ease, border-color 0.35s ease;
}

.innovations-page-metric:hover {
  transform: translateY(-3px);
  border-color: rgba(201, 162, 39, 0.55);
}

.innovations-page-metric__value {
  font-family: var(--font-display);
  font-size: clamp(1.375rem, 2.2vw, 1.875rem);
  font-weight: 700;
  color: var(--color-accent);
  line-height: 1.15;
}

.innovations-page-metric__label {
  font-size: clamp(0.6875rem, 0.9vw, 0.8125rem);
  font-weight: 500;
  color: rgba(255, 255, 255, 0.78);
  line-height: 1.35;
}

.innovations-page-overview {
  background:
    radial-gradient(ellipse 70% 45% at 50% 0%, rgba(201, 162, 39, 0.08) 0%, transparent 55%),
    linear-gradient(180deg, var(--color-bg-innovations-alt) 0%, var(--color-bg-innovations) 100%);
}

.innovations-page-overview__grid {
  display: grid;
  grid-template-columns: 1fr minmax(280px, 420px);
  gap: clamp(32px, 5vw, 64px);
  align-items: center;
}

.innovations-page-overview__text {
  font-size: clamp(1rem, 1.2vw, 1.0625rem);
  line-height: 1.75;
  color: var(--color-text-muted);
  margin-bottom: 28px;
}

.innovations-page-overview__highlights {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.innovations-page-overview__highlights li {
  padding: 16px 20px;
  background: var(--color-white);
  border: 1px solid var(--color-border);
  border-radius: 12px;
  border-left: 3px solid var(--color-accent);
  box-shadow: 0 4px 20px rgba(12, 35, 64, 0.06);
}

.innovations-page-overview__highlights strong {
  display: block;
  font-size: 0.9375rem;
  font-weight: 700;
  color: var(--color-primary);
  margin-bottom: 4px;
}

.innovations-page-overview__highlights span {
  font-size: 0.875rem;
  line-height: 1.6;
  color: var(--color-text-muted);
}

.innovations-page-overview__card {
  border-radius: 16px;
  overflow: hidden;
  background: var(--color-white);
  border: 1px solid var(--color-border);
  box-shadow: 0 12px 40px rgba(12, 35, 64, 0.1);
}

.innovations-page-overview__card img {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
}

.innovations-page-overview__card-body {
  padding: 20px 24px;
}

.innovations-page-overview__card-body strong {
  display: block;
  font-size: 1rem;
  font-weight: 700;
  color: var(--color-primary);
  margin-bottom: 6px;
}

.innovations-page-overview__card-body span {
  font-size: 0.875rem;
  line-height: 1.6;
  color: var(--color-text-muted);
}

.innovations-page-foundation__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(20px, 2.5vw, 28px);
}

.innovations-page-foundation-card {
  display: flex;
  flex-direction: column;
  padding: clamp(24px, 3vw, 32px);
  background: var(--color-white);
  border: 1px solid var(--color-border);
  border-radius: 16px;
  box-shadow: 0 4px 24px rgba(12, 35, 64, 0.06);
  transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;
}

.innovations-page-foundation-card:hover {
  transform: translateY(-4px);
  border-color: rgba(201, 162, 39, 0.35);
  box-shadow: 0 12px 40px rgba(12, 35, 64, 0.1);
}

.innovations-page-foundation-card__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 52px;
  height: 52px;
  margin-bottom: 18px;
  color: var(--color-icon);
  background: var(--color-icon-soft);
  border-radius: 12px;
}

.innovations-page-foundation-card__title {
  font-family: var(--font-display);
  font-size: 1.25rem;
  font-weight: 700;
  color: var(--color-primary);
  margin-bottom: 10px;
}

.innovations-page-foundation-card__desc {
  flex: 1;
  font-size: 0.9375rem;
  line-height: 1.7;
  color: var(--color-text-muted);
  margin-bottom: 16px;
}

.innovations-page-foundation-card__link {
  font-size: 0.8125rem;
  font-weight: 600;
  color: var(--color-accent);
  transition: color 0.25s ease;
}

.innovations-page-foundation-card__link:hover {
  color: var(--color-primary);
}

.innovations-page-platforms__list {
  display: flex;
  flex-direction: column;
  gap: clamp(28px, 4vw, 40px);
}

.innovations-page-platform {
  display: grid;
  grid-template-columns: minmax(280px, 1fr) 1.2fr;
  gap: 0;
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 20px;
  overflow: hidden;
  transition: border-color 0.35s ease, box-shadow 0.35s ease;
}

.innovations-page-platform:hover {
  border-color: rgba(201, 162, 39, 0.3);
  box-shadow: 0 16px 48px rgba(0, 0, 0, 0.25);
}

.innovations-page-platform--reverse {
  grid-template-columns: 1.2fr minmax(280px, 1fr);
}

.innovations-page-platform--reverse .innovations-page-platform__media {
  order: 2;
}

.innovations-page-platform__media {
  position: relative;
  min-height: 320px;
  overflow: hidden;
}

.innovations-page-platform__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transition: transform 0.6s ease;
}

.innovations-page-platform:hover .innovations-page-platform__media img {
  transform: scale(1.05);
}

.innovations-page-platform__badge {
  position: absolute;
  top: 20px;
  right: 20px;
  z-index: 1;
  padding: 6px 14px;
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--color-primary);
  background: var(--color-accent);
  border-radius: 999px;
}

.innovations-page-platform__body {
  padding: clamp(28px, 3.5vw, 40px);
  display: flex;
  flex-direction: column;
}

.innovations-page-platform__index {
  display: inline-block;
  font-family: var(--font-display);
  font-size: 0.8125rem;
  font-weight: 700;
  color: var(--color-accent);
  margin-bottom: 8px;
}

.innovations-page-platform__title {
  font-family: var(--font-display);
  font-size: clamp(1.375rem, 2.5vw, 1.75rem);
  font-weight: 700;
  color: var(--color-white);
  margin-bottom: 12px;
  line-height: 1.25;
}

.innovations-page-platform__summary {
  font-size: 0.9375rem;
  line-height: 1.7;
  color: rgba(255, 255, 255, 0.72);
  margin-bottom: 24px;
  padding-bottom: 20px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.innovations-page-platform__details {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  margin-bottom: 24px;
}

.innovations-page-platform__detail-label {
  display: block;
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--color-accent);
  margin-bottom: 6px;
}

.innovations-page-platform__detail p {
  font-size: 0.8125rem;
  line-height: 1.65;
  color: rgba(255, 255, 255, 0.65);
  margin: 0;
}

.innovations-page-platform__btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  align-self: flex-start;
  margin-top: auto;
  padding: 10px 18px;
  font-size: 0.8125rem;
  font-weight: 600;
  color: var(--color-primary);
  background: var(--color-accent);
  border-radius: 8px;
  transition: background 0.25s ease, transform 0.25s ease;
}

.innovations-page-platform__btn:hover {
  background: #d4b84a;
  transform: translateX(4px);
}

.innovations-page-platform__btn svg {
  transition: transform 0.25s ease;
}

.innovations-page-platform__btn:hover svg {
  transform: translateX(3px);
}

.innovations-page-research {
  background:
    radial-gradient(ellipse 60% 40% at 100% 0%, rgba(45, 212, 191, 0.06) 0%, transparent 55%),
    linear-gradient(180deg, var(--color-bg-innovations) 0%, var(--color-bg-innovations-alt) 100%);
}

.innovations-page-research__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(20px, 2.5vw, 24px);
}

.innovations-page-research-card {
  display: flex;
  flex-direction: column;
  padding: clamp(24px, 3vw, 28px);
  background: var(--color-white);
  border: 1px solid var(--color-border);
  border-radius: 16px;
  box-shadow: 0 4px 20px rgba(12, 35, 64, 0.05);
  transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;
}

.innovations-page-research-card:hover {
  transform: translateY(-4px);
  border-color: rgba(201, 162, 39, 0.3);
  box-shadow: 0 12px 36px rgba(12, 35, 64, 0.1);
}

.innovations-page-research-card__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  margin-bottom: 16px;
  color: var(--color-icon);
  background: var(--color-icon-soft);
  border-radius: 10px;
}

.innovations-page-research-card__title {
  font-size: 1.0625rem;
  font-weight: 700;
  color: var(--color-primary);
  margin-bottom: 10px;
  line-height: 1.35;
}

.innovations-page-research-card__desc {
  flex: 1;
  font-size: 0.875rem;
  line-height: 1.65;
  color: var(--color-text-muted);
  margin-bottom: 16px;
}

.innovations-page-research-card__tag {
  align-self: flex-start;
  padding: 4px 10px;
  font-size: 0.6875rem;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--color-accent);
  background: rgba(201, 162, 39, 0.1);
  border-radius: 999px;
}

.innovations-page-pipeline__track {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(16px, 2vw, 24px);
  position: relative;
}

.innovations-page-pipeline__track::before {
  content: '';
  position: absolute;
  top: 36px;
  left: 12%;
  right: 12%;
  height: 2px;
  background: linear-gradient(90deg, var(--color-accent), rgba(201, 162, 39, 0.2));
  z-index: 0;
}

.innovations-page-pipeline-step {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: clamp(20px, 2.5vw, 28px) clamp(12px, 1.5vw, 16px);
  background: var(--color-white);
  border: 1px solid var(--color-border);
  border-radius: 16px;
  box-shadow: 0 4px 20px rgba(12, 35, 64, 0.05);
  transition: transform 0.35s ease, box-shadow 0.35s ease;
}

.innovations-page-pipeline-step:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 36px rgba(12, 35, 64, 0.1);
}

.innovations-page-pipeline-step__num {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  margin-bottom: 16px;
  font-family: var(--font-display);
  font-size: 1rem;
  font-weight: 700;
  color: var(--color-primary);
  background: var(--color-accent);
  border-radius: 50%;
  box-shadow: 0 4px 16px rgba(201, 162, 39, 0.35);
}

.innovations-page-pipeline-step__title {
  font-size: 1.0625rem;
  font-weight: 700;
  color: var(--color-primary);
  margin-bottom: 8px;
}

.innovations-page-pipeline-step__desc {
  font-size: 0.8125rem;
  line-height: 1.65;
  color: var(--color-text-muted);
  margin: 0;
}

.innovations-page-impact__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(16px, 2vw, 24px);
}

.innovations-page-impact-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 120px;
  padding: clamp(24px, 3vw, 32px);
  text-align: center;
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(201, 162, 39, 0.25);
  border-radius: 16px;
  transition: transform 0.35s ease, border-color 0.35s ease;
}

.innovations-page-impact-card:hover {
  transform: translateY(-3px);
  border-color: rgba(201, 162, 39, 0.45);
}

.innovations-page-impact-card__value {
  font-family: var(--font-display);
  font-size: clamp(1.75rem, 3vw, 2.25rem);
  font-weight: 700;
  color: var(--color-accent);
  line-height: 1.1;
}

.innovations-page-impact-card__label {
  font-size: 0.8125rem;
  font-weight: 500;
  color: rgba(255, 255, 255, 0.72);
  line-height: 1.4;
}

.innovations-page-cta {
  padding: clamp(48px, 6vw, 72px) 0;
  background:
    linear-gradient(135deg, rgba(10, 21, 38, 0.98) 0%, rgba(14, 30, 52, 0.95) 100%);
  border-top: 1px solid rgba(201, 162, 39, 0.2);
}

.innovations-page-cta__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: clamp(24px, 4vw, 48px);
  padding: clamp(32px, 4vw, 48px);
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(201, 162, 39, 0.25);
  border-radius: 20px;
}

.innovations-page-cta__title {
  font-family: var(--font-display);
  font-size: clamp(1.5rem, 3vw, 2rem);
  font-weight: 700;
  line-height: 1.25;
  color: var(--color-white);
  margin-bottom: 10px;
}

.innovations-page-cta__desc {
  font-size: clamp(0.9375rem, 1.1vw, 1.0625rem);
  line-height: 1.7;
  color: rgba(255, 255, 255, 0.72);
  max-width: 520px;
}

.innovations-page-cta__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  flex-shrink: 0;
}

@media (max-width: 1024px) {
  .innovations-page-hero__inner {
    grid-template-columns: 1fr;
  }

  .innovations-page-hero__metrics-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .innovations-page-overview__grid {
    grid-template-columns: 1fr;
  }

  .innovations-page-overview__visual {
    order: -1;
  }

  .innovations-page-foundation__grid {
    grid-template-columns: 1fr;
  }

  .innovations-page-platform,
  .innovations-page-platform--reverse {
    grid-template-columns: 1fr;
  }

  .innovations-page-platform--reverse .innovations-page-platform__media {
    order: 0;
  }

  .innovations-page-platform__media {
    min-height: 240px;
  }

  .innovations-page-research__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .innovations-page-pipeline__track {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .innovations-page-pipeline__track::before {
    display: none;
  }

  .innovations-page-impact__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .innovations-page-hero {
    min-height: auto;
  }

  .innovations-page-hero__metrics {
    margin-top: 24px;
  }

  .innovations-page-platform__details {
    grid-template-columns: 1fr;
  }

  .innovations-page-research__grid {
    grid-template-columns: 1fr;
  }

  .innovations-page-pipeline__track {
    grid-template-columns: 1fr;
  }

  .innovations-page-impact__grid {
    grid-template-columns: 1fr;
  }

  .innovations-page-cta__inner {
    flex-direction: column;
    text-align: center;
  }

  .innovations-page-cta__actions {
    justify-content: center;
    width: 100%;
  }

  .innovations-page-cta__actions .btn {
    flex: 1 1 auto;
    min-width: 140px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .innovations-page-metric,
  .innovations-page-foundation-card,
  .innovations-page-platform,
  .innovations-page-research-card,
  .innovations-page-pipeline-step,
  .innovations-page-impact-card {
    transition: none;
  }

  .innovations-page-platform:hover .innovations-page-platform__media img {
    transform: none;
  }
}

/* Investment Page — premium layout */
.investment-page-hero {
  position: relative;
  min-height: clamp(520px, 75vh, 680px);
  display: flex;
  flex-direction: column;
  align-items: stretch;
  padding: calc(var(--header-height) + 48px) 0 clamp(32px, 4vw, 48px);
  color: var(--color-white);
  overflow: hidden;
}

.investment-page-hero__bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.investment-page-hero__bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.investment-page-hero__overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(180deg, rgba(5, 9, 16, 0.55) 0%, rgba(7, 13, 20, 0.94) 100%),
    linear-gradient(105deg, rgba(7, 13, 22, 0.9) 0%, rgba(12, 35, 64, 0.78) 55%, rgba(201, 162, 39, 0.12) 100%);
}

.investment-page-hero__inner {
  position: relative;
  z-index: 2;
  flex: 1;
  display: grid;
  grid-template-columns: 1fr minmax(260px, 340px);
  gap: clamp(32px, 5vw, 64px);
  align-items: center;
}

.investment-page-hero__label {
  display: inline-block;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--color-accent);
  margin-bottom: 14px;
}

.investment-page-hero__title {
  font-family: var(--font-display);
  font-size: clamp(2.25rem, 5vw, 3.5rem);
  font-weight: 700;
  line-height: 1.1;
  margin-bottom: 20px;
  letter-spacing: -0.02em;
}

.investment-page-hero__title em {
  font-style: italic;
  color: var(--color-accent);
}

.investment-page-hero__desc {
  font-size: clamp(1rem, 1.3vw, 1.125rem);
  line-height: 1.75;
  color: rgba(255, 255, 255, 0.82);
  margin-bottom: 28px;
  max-width: 540px;
}

.investment-page-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
}

.investment-page-hero__stat-stack {
  display: flex;
  flex-direction: column;
  gap: 12px;
  width: 100%;
  max-width: 320px;
  margin: 0 auto;
}

.investment-page-hero__stat-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 20px;
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(201, 162, 39, 0.35);
  border-radius: 12px;
  backdrop-filter: blur(12px);
}

.investment-page-hero__stat-item strong {
  font-family: var(--font-display);
  font-size: 1.25rem;
  font-weight: 700;
  color: var(--color-accent);
}

.investment-page-hero__stat-item span {
  font-size: 0.75rem;
  font-weight: 500;
  color: rgba(255, 255, 255, 0.7);
  text-align: right;
}

.investment-page-hero__caption {
  margin-top: 20px;
  font-size: 0.8125rem;
  line-height: 1.6;
  color: rgba(255, 255, 255, 0.65);
  text-align: center;
}

.investment-page-hero__metrics {
  position: relative;
  z-index: 2;
  width: 100%;
  margin-top: clamp(28px, 4vw, 48px);
  padding-top: clamp(20px, 3vw, 28px);
  border-top: 1px solid rgba(255, 255, 255, 0.12);
}

.investment-page-hero__metrics-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(12px, 1.5vw, 16px);
  list-style: none;
  padding: 0;
  margin: 0;
}

.investment-page-metric {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-height: 96px;
  padding: clamp(16px, 2vw, 24px) clamp(12px, 1.5vw, 16px);
  text-align: center;
  background: linear-gradient(160deg, rgba(14, 28, 51, 0.95) 0%, rgba(21, 40, 69, 0.92) 100%);
  border: 1px solid rgba(201, 162, 39, 0.35);
  border-radius: 14px;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.28);
  transition: transform 0.35s ease, border-color 0.35s ease;
}

.investment-page-metric:hover {
  transform: translateY(-3px);
  border-color: rgba(201, 162, 39, 0.55);
}

.investment-page-metric__value {
  font-family: var(--font-display);
  font-size: clamp(1.375rem, 2.2vw, 1.875rem);
  font-weight: 700;
  color: var(--color-accent);
  line-height: 1.15;
}

.investment-page-metric__label {
  font-size: clamp(0.6875rem, 0.9vw, 0.8125rem);
  font-weight: 500;
  color: rgba(255, 255, 255, 0.78);
  line-height: 1.35;
}

.investment-page-overview {
  background:
    radial-gradient(ellipse 70% 45% at 50% 0%, rgba(201, 162, 39, 0.08) 0%, transparent 55%),
    linear-gradient(180deg, var(--color-bg-innovations-alt) 0%, var(--color-bg-innovations) 100%);
}

.investment-page-overview__grid {
  display: grid;
  grid-template-columns: 1fr minmax(280px, 420px);
  gap: clamp(32px, 5vw, 64px);
  align-items: center;
}

.investment-page-overview__text {
  font-size: clamp(1rem, 1.2vw, 1.0625rem);
  line-height: 1.75;
  color: var(--color-text-muted);
  margin-bottom: 24px;
}

.investment-page-overview__pillars {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px;
}

.investment-page-overview__pillar {
  padding: 8px 18px;
  font-size: 0.8125rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  color: var(--color-primary);
  background: var(--color-white);
  border: 1px solid var(--color-border);
  border-radius: 999px;
  transition: border-color 0.25s ease, background 0.25s ease, color 0.25s ease;
}

.investment-page-overview__pillar:hover {
  color: var(--color-accent);
  border-color: rgba(201, 162, 39, 0.45);
  background: rgba(201, 162, 39, 0.08);
}

.investment-page-overview__pillar-sep {
  width: 24px;
  height: 2px;
  background: linear-gradient(90deg, var(--color-accent), rgba(201, 162, 39, 0.2));
  border-radius: 1px;
}

.investment-page-overview__card {
  border-radius: 16px;
  overflow: hidden;
  background: var(--color-white);
  border: 1px solid var(--color-border);
  box-shadow: 0 12px 40px rgba(12, 35, 64, 0.1);
}

.investment-page-overview__card img {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
}

.investment-page-overview__card-body {
  padding: 20px 24px;
}

.investment-page-overview__card-body strong {
  display: block;
  font-size: 1rem;
  font-weight: 700;
  color: var(--color-primary);
  margin-bottom: 6px;
}

.investment-page-overview__card-body span {
  font-size: 0.875rem;
  line-height: 1.6;
  color: var(--color-text-muted);
}

.investment-page-sectors__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(20px, 2.5vw, 24px);
}

.investment-page-sector-card {
  display: flex;
  flex-direction: column;
  padding: clamp(24px, 3vw, 28px);
  background: var(--color-white);
  border: 1px solid var(--color-border);
  border-radius: 16px;
  box-shadow: 0 4px 20px rgba(12, 35, 64, 0.05);
  transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;
}

.investment-page-sector-card:hover {
  transform: translateY(-4px);
  border-color: rgba(201, 162, 39, 0.3);
  box-shadow: 0 12px 36px rgba(12, 35, 64, 0.1);
}

.investment-page-sector-card__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  margin-bottom: 16px;
  color: var(--color-icon);
  background: var(--color-icon-soft);
  border-radius: 10px;
}

.investment-page-sector-card__title {
  font-size: 1.0625rem;
  font-weight: 700;
  color: var(--color-primary);
  margin-bottom: 10px;
  line-height: 1.35;
}

.investment-page-sector-card__desc {
  flex: 1;
  font-size: 0.875rem;
  line-height: 1.65;
  color: var(--color-text-muted);
  margin-bottom: 16px;
}

.investment-page-sector-card__link {
  font-size: 0.8125rem;
  font-weight: 600;
  color: var(--color-accent);
  transition: color 0.25s ease;
}

.investment-page-sector-card__link:hover {
  color: var(--color-primary);
}

.investment-page-models {
  background:
    radial-gradient(ellipse 70% 45% at 0% 50%, var(--color-glow-teal) 0%, transparent 55%),
    linear-gradient(180deg, #0d1a2e 0%, var(--color-bg-ecosystem) 10%, var(--color-bg-ecosystem) 90%, #0a1526 100%);
}

.investment-page-models__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(20px, 2.5vw, 24px);
}

.investment-page-model-card {
  position: relative;
  display: flex;
  flex-direction: column;
  padding: clamp(28px, 3.5vw, 36px);
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 20px;
  transition: transform 0.35s ease, border-color 0.35s ease, box-shadow 0.35s ease;
}

.investment-page-model-card:hover {
  transform: translateY(-4px);
  border-color: rgba(201, 162, 39, 0.35);
  box-shadow: 0 16px 48px rgba(0, 0, 0, 0.25);
}

.investment-page-model-card__num {
  display: inline-block;
  font-family: var(--font-display);
  font-size: 0.8125rem;
  font-weight: 700;
  color: var(--color-accent);
  margin-bottom: 12px;
}

.investment-page-model-card__title {
  font-family: var(--font-display);
  font-size: clamp(1.125rem, 2vw, 1.375rem);
  font-weight: 700;
  color: var(--color-white);
  margin-bottom: 12px;
  line-height: 1.3;
}

.investment-page-model-card__desc {
  font-size: 0.9375rem;
  line-height: 1.7;
  color: rgba(255, 255, 255, 0.72);
  margin-bottom: 20px;
}

.investment-page-model-card__list {
  list-style: none;
  padding: 0;
  margin: 0;
  margin-top: auto;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.investment-page-model-card__list li {
  position: relative;
  padding-left: 18px;
  font-size: 0.8125rem;
  line-height: 1.5;
  color: rgba(255, 255, 255, 0.6);
}

.investment-page-model-card__list li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0.55em;
  width: 6px;
  height: 6px;
  background: var(--color-icon);
  border-radius: 50%;
}

.investment-page-benefits__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(16px, 2vw, 20px);
}

.investment-page-benefit {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  padding: clamp(20px, 2.5vw, 24px);
  background: var(--color-white);
  border: 1px solid var(--color-border);
  border-radius: 16px;
  box-shadow: 0 4px 20px rgba(12, 35, 64, 0.05);
  transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;
}

.investment-page-benefit:hover {
  transform: translateY(-3px);
  border-color: rgba(201, 162, 39, 0.3);
  box-shadow: 0 12px 36px rgba(12, 35, 64, 0.1);
}

.investment-page-benefit__icon {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 52px;
  height: 52px;
  color: var(--color-icon);
  background: var(--color-icon-soft);
  border-radius: 12px;
}

.investment-page-benefit__icon svg {
  width: 28px;
  height: 28px;
}

.investment-page-benefit__title {
  font-size: 0.9375rem;
  font-weight: 700;
  color: var(--color-primary);
  margin-bottom: 6px;
  line-height: 1.35;
}

.investment-page-benefit__desc {
  font-size: 0.8125rem;
  line-height: 1.65;
  color: var(--color-text-muted);
  margin: 0;
}

.investment-page-hubs__layout {
  display: grid;
  grid-template-columns: 1fr minmax(260px, 320px);
  gap: clamp(24px, 4vw, 40px);
  align-items: start;
}

.investment-page-hubs__map {
  border-radius: 16px;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.1);
  margin-bottom: 24px;
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.25);
}

.investment-page-hubs__map img {
  width: 100%;
  height: auto;
  display: block;
}

.investment-page-hubs__list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  list-style: none;
  padding: 0;
  margin: 0;
}

.investment-page-hub {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 14px 16px;
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(201, 162, 39, 0.2);
  border-radius: 12px;
  transition: border-color 0.25s ease, background 0.25s ease;
}

.investment-page-hub:hover {
  border-color: rgba(201, 162, 39, 0.4);
  background: rgba(255, 255, 255, 0.06);
}

.investment-page-hub__name {
  font-size: 0.875rem;
  font-weight: 700;
  color: var(--color-accent);
}

.investment-page-hub__desc {
  font-size: 0.75rem;
  line-height: 1.5;
  color: rgba(255, 255, 255, 0.65);
}

.investment-page-hubs__sidebar {
  padding: clamp(24px, 3vw, 32px);
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(201, 162, 39, 0.25);
  border-radius: 16px;
}

.investment-page-hubs__sidebar-title {
  font-family: var(--font-display);
  font-size: 1.125rem;
  font-weight: 700;
  color: var(--color-white);
  margin-bottom: 14px;
}

.investment-page-hubs__sidebar p {
  font-size: 0.9375rem;
  line-height: 1.75;
  color: rgba(255, 255, 255, 0.72);
  margin-bottom: 20px;
}

.investment-page-hubs__flow {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  padding: 14px 16px;
  background: rgba(201, 162, 39, 0.08);
  border: 1px solid rgba(201, 162, 39, 0.2);
  border-radius: 10px;
}

.investment-page-hubs__flow span {
  font-size: 0.8125rem;
  font-weight: 600;
  color: var(--color-accent);
}

.investment-page-hubs__flow svg {
  color: rgba(255, 255, 255, 0.4);
  flex-shrink: 0;
}

.investment-page-value {
  background:
    radial-gradient(ellipse 60% 40% at 50% 100%, rgba(201, 162, 39, 0.08) 0%, transparent 55%),
    linear-gradient(180deg, var(--color-bg-innovations) 0%, var(--color-bg-innovations-alt) 100%);
}

.investment-page-value__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(16px, 2vw, 24px);
}

.investment-page-value-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 120px;
  padding: clamp(24px, 3vw, 32px);
  text-align: center;
  background: var(--color-white);
  border: 1px solid var(--color-border);
  border-radius: 16px;
  box-shadow: 0 4px 20px rgba(12, 35, 64, 0.06);
  transition: transform 0.35s ease, border-color 0.35s ease, box-shadow 0.35s ease;
}

.investment-page-value-card:hover {
  transform: translateY(-3px);
  border-color: rgba(201, 162, 39, 0.35);
  box-shadow: 0 12px 36px rgba(12, 35, 64, 0.1);
}

.investment-page-value-card__value {
  font-family: var(--font-display);
  font-size: clamp(1.75rem, 3vw, 2.25rem);
  font-weight: 700;
  color: var(--color-accent);
  line-height: 1.1;
}

.investment-page-value-card__label {
  font-size: 0.8125rem;
  font-weight: 500;
  color: var(--color-text-muted);
  line-height: 1.4;
}

.investment-page-partner {
  padding: clamp(48px, 6vw, 72px) 0;
  background:
    linear-gradient(135deg, rgba(7, 13, 20, 0.98) 0%, rgba(12, 35, 64, 0.95) 100%);
  border-top: 1px solid rgba(201, 162, 39, 0.2);
}

.investment-page-partner__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: clamp(24px, 4vw, 48px);
  padding: clamp(32px, 4vw, 48px);
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(201, 162, 39, 0.25);
  border-radius: 20px;
}

.investment-page-partner__label {
  display: inline-block;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--color-accent);
  margin-bottom: 12px;
}

.investment-page-partner__title {
  font-family: var(--font-display);
  font-size: clamp(1.5rem, 3vw, 2rem);
  font-weight: 700;
  line-height: 1.25;
  color: var(--color-white);
  margin-bottom: 12px;
}

.investment-page-partner__desc {
  font-size: clamp(0.9375rem, 1.1vw, 1.0625rem);
  line-height: 1.7;
  color: rgba(255, 255, 255, 0.72);
  max-width: 560px;
  margin-bottom: 24px;
}

.investment-page-partner__contacts {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.investment-page-partner__contacts li {
  display: flex;
  align-items: flex-start;
  gap: 12px;
}

.investment-page-partner__contacts svg {
  flex-shrink: 0;
  margin-top: 2px;
  color: var(--color-accent);
}

.investment-page-partner__contacts strong {
  display: block;
  font-size: 0.8125rem;
  font-weight: 700;
  color: var(--color-white);
  margin-bottom: 2px;
}

.investment-page-partner__contacts span,
.investment-page-partner__contacts a {
  font-size: 0.8125rem;
  line-height: 1.5;
  color: rgba(255, 255, 255, 0.65);
}

.investment-page-partner__contacts a:hover {
  color: var(--color-accent);
}

.investment-page-partner__actions {
  display: flex;
  flex-direction: column;
  gap: 14px;
  flex-shrink: 0;
}

@media (max-width: 1024px) {
  .investment-page-hero__inner {
    grid-template-columns: 1fr;
  }

  .investment-page-hero__metrics-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .investment-page-overview__grid {
    grid-template-columns: 1fr;
  }

  .investment-page-overview__visual {
    order: -1;
  }

  .investment-page-sectors__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .investment-page-models__grid {
    grid-template-columns: 1fr;
  }

  .investment-page-hubs__layout {
    grid-template-columns: 1fr;
  }

  .investment-page-value__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .investment-page-partner__inner {
    flex-direction: column;
    align-items: stretch;
  }

  .investment-page-partner__actions {
    flex-direction: row;
    flex-wrap: wrap;
  }
}

@media (max-width: 640px) {
  .investment-page-hero {
    min-height: auto;
  }

  .investment-page-hero__metrics {
    margin-top: 24px;
  }

  .investment-page-sectors__grid {
    grid-template-columns: 1fr;
  }

  .investment-page-benefits__grid {
    grid-template-columns: 1fr;
  }

  .investment-page-hubs__list {
    grid-template-columns: 1fr;
  }

  .investment-page-value__grid {
    grid-template-columns: 1fr;
  }

  .investment-page-partner__actions {
    flex-direction: column;
    width: 100%;
  }

  .investment-page-partner__actions .btn {
    width: 100%;
    text-align: center;
  }
}

@media (prefers-reduced-motion: reduce) {
  .investment-page-metric,
  .investment-page-sector-card,
  .investment-page-model-card,
  .investment-page-benefit,
  .investment-page-value-card {
    transition: none;
  }
}

/* Partner Page — premium layout */
.partner-page-hero {
  position: relative;
  min-height: clamp(520px, 75vh, 680px);
  display: flex;
  flex-direction: column;
  align-items: stretch;
  padding: calc(var(--header-height) + 48px) 0 clamp(32px, 4vw, 48px);
  color: var(--color-white);
  overflow: hidden;
}

.partner-page-hero__bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.partner-page-hero__bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.partner-page-hero__overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(180deg, rgba(5, 9, 16, 0.5) 0%, rgba(10, 21, 38, 0.92) 100%),
    linear-gradient(105deg, rgba(7, 13, 22, 0.88) 0%, rgba(14, 30, 52, 0.75) 55%, rgba(74, 222, 128, 0.1) 100%);
}

.partner-page-hero__inner {
  position: relative;
  z-index: 2;
  flex: 1;
  display: grid;
  grid-template-columns: 1fr minmax(260px, 340px);
  gap: clamp(32px, 5vw, 64px);
  align-items: center;
}

.partner-page-hero__label {
  display: inline-block;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--color-accent);
  margin-bottom: 14px;
}

.partner-page-hero__title {
  font-family: var(--font-display);
  font-size: clamp(2.25rem, 5vw, 3.75rem);
  font-weight: 700;
  line-height: 1.1;
  margin-bottom: 20px;
  letter-spacing: -0.02em;
}

.partner-page-hero__title em {
  font-style: italic;
  color: var(--color-green-bright);
}

.partner-page-hero__desc {
  font-size: clamp(1rem, 1.3vw, 1.125rem);
  line-height: 1.75;
  color: rgba(255, 255, 255, 0.82);
  margin-bottom: 28px;
  max-width: 540px;
}

.partner-page-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
}

.partner-page-hero__stat-stack {
  display: flex;
  flex-direction: column;
  gap: 12px;
  width: 100%;
  max-width: 320px;
  margin: 0 auto;
}

.partner-page-hero__stat-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 20px;
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(74, 222, 128, 0.3);
  border-radius: 12px;
  backdrop-filter: blur(12px);
}

.partner-page-hero__stat-item strong {
  font-family: var(--font-display);
  font-size: 1.25rem;
  font-weight: 700;
  color: var(--color-green-bright);
}

.partner-page-hero__stat-item span {
  font-size: 0.75rem;
  font-weight: 500;
  color: rgba(255, 255, 255, 0.7);
  text-align: right;
}

.partner-page-hero__caption {
  margin-top: 20px;
  font-size: 0.8125rem;
  line-height: 1.6;
  color: rgba(255, 255, 255, 0.65);
  text-align: center;
}

.partner-page-hero__metrics {
  position: relative;
  z-index: 2;
  width: 100%;
  margin-top: clamp(28px, 4vw, 48px);
  padding-top: clamp(20px, 3vw, 28px);
  border-top: 1px solid rgba(255, 255, 255, 0.12);
}

.partner-page-hero__metrics-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(12px, 1.5vw, 16px);
  list-style: none;
  padding: 0;
  margin: 0;
}

.partner-page-metric {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-height: 96px;
  padding: clamp(16px, 2vw, 24px) clamp(12px, 1.5vw, 16px);
  text-align: center;
  background: linear-gradient(160deg, rgba(14, 28, 51, 0.95) 0%, rgba(21, 40, 69, 0.92) 100%);
  border: 1px solid rgba(74, 222, 128, 0.3);
  border-radius: 14px;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.28);
  transition: transform 0.35s ease, border-color 0.35s ease;
}

.partner-page-metric:hover {
  transform: translateY(-3px);
  border-color: rgba(74, 222, 128, 0.5);
}

.partner-page-metric__value {
  font-family: var(--font-display);
  font-size: clamp(1.375rem, 2.2vw, 1.875rem);
  font-weight: 700;
  color: var(--color-green-bright);
  line-height: 1.15;
}

.partner-page-metric__label {
  font-size: clamp(0.6875rem, 0.9vw, 0.8125rem);
  font-weight: 500;
  color: rgba(255, 255, 255, 0.78);
  line-height: 1.35;
}

.partner-page-why {
  background:
    radial-gradient(ellipse 70% 45% at 50% 0%, rgba(74, 222, 128, 0.08) 0%, transparent 55%),
    linear-gradient(180deg, var(--color-bg-innovations-alt) 0%, var(--color-bg-innovations) 100%);
}

.partner-page-why__grid {
  display: grid;
  grid-template-columns: 1fr minmax(280px, 420px);
  gap: clamp(32px, 5vw, 64px);
  align-items: center;
}

.partner-page-why__text {
  font-size: clamp(1rem, 1.2vw, 1.0625rem);
  line-height: 1.75;
  color: var(--color-text-muted);
  margin-bottom: 28px;
}

.partner-page-why__list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.partner-page-why__list li {
  padding: 16px 20px;
  background: var(--color-white);
  border: 1px solid var(--color-border);
  border-radius: 12px;
  border-left: 3px solid var(--color-green-bright);
  box-shadow: 0 4px 20px rgba(12, 35, 64, 0.06);
}

.partner-page-why__list strong {
  display: block;
  font-size: 0.9375rem;
  font-weight: 700;
  color: var(--color-primary);
  margin-bottom: 4px;
}

.partner-page-why__list span {
  font-size: 0.875rem;
  line-height: 1.6;
  color: var(--color-text-muted);
}

.partner-page-why__card {
  border-radius: 16px;
  overflow: hidden;
  background: var(--color-white);
  border: 1px solid var(--color-border);
  box-shadow: 0 12px 40px rgba(12, 35, 64, 0.1);
}

.partner-page-why__card img {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
}

.partner-page-why__card-body {
  padding: 20px 24px;
}

.partner-page-why__card-body strong {
  display: block;
  font-size: 1rem;
  font-weight: 700;
  color: var(--color-primary);
  margin-bottom: 6px;
}

.partner-page-why__card-body span {
  font-size: 0.875rem;
  line-height: 1.6;
  color: var(--color-text-muted);
}

.partner-page-opportunities__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(20px, 2.5vw, 24px);
}

.partner-page-opportunity {
  display: flex;
  flex-direction: column;
  padding: clamp(24px, 3vw, 28px);
  background: var(--color-white);
  border: 1px solid var(--color-border);
  border-radius: 16px;
  box-shadow: 0 4px 20px rgba(12, 35, 64, 0.05);
  transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;
}

.partner-page-opportunity:hover {
  transform: translateY(-4px);
  border-color: rgba(74, 222, 128, 0.35);
  box-shadow: 0 12px 36px rgba(12, 35, 64, 0.1);
}

.partner-page-opportunity__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 52px;
  height: 52px;
  margin-bottom: 16px;
  color: var(--color-green-bright);
  background: rgba(74, 222, 128, 0.1);
  border-radius: 12px;
}

.partner-page-opportunity__title {
  font-size: 1.0625rem;
  font-weight: 700;
  color: var(--color-primary);
  margin-bottom: 10px;
  line-height: 1.35;
}

.partner-page-opportunity__desc {
  font-size: 0.875rem;
  line-height: 1.65;
  color: var(--color-text-muted);
  margin: 0;
}

.partner-page-benefits {
  background:
    radial-gradient(ellipse 60% 40% at 100% 0%, rgba(201, 162, 39, 0.06) 0%, transparent 55%),
    linear-gradient(180deg, var(--color-bg-innovations) 0%, var(--color-bg-innovations-alt) 100%);
}

.partner-page-benefits__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(16px, 2vw, 20px);
}

.partner-page-benefit {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: clamp(24px, 3vw, 28px);
  background: var(--color-white);
  border: 1px solid var(--color-border);
  border-radius: 16px;
  box-shadow: 0 4px 20px rgba(12, 35, 64, 0.05);
  transition: transform 0.35s ease, border-color 0.35s ease, box-shadow 0.35s ease;
}

.partner-page-benefit:hover {
  transform: translateY(-4px);
  border-color: rgba(201, 162, 39, 0.35);
  box-shadow: 0 12px 36px rgba(12, 35, 64, 0.1);
}

.partner-page-benefit__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 56px;
  height: 56px;
  margin-bottom: 16px;
  color: var(--color-green-bright);
  background: rgba(52, 211, 153, 0.12);
  border-radius: 14px;
}

.partner-page-benefit__icon svg {
  width: 28px;
  height: 28px;
}

.partner-page-benefit__title {
  font-size: 0.9375rem;
  font-weight: 700;
  color: var(--color-primary);
  margin-bottom: 8px;
  line-height: 1.35;
}

.partner-page-benefit__desc {
  font-size: 0.8125rem;
  line-height: 1.65;
  color: var(--color-text-muted);
  margin: 0;
}

.partner-page-process__track {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: clamp(12px, 1.5vw, 16px);
  position: relative;
}

.partner-page-process__track::before {
  content: '';
  position: absolute;
  top: 36px;
  left: 8%;
  right: 8%;
  height: 2px;
  background: linear-gradient(90deg, var(--color-green-bright), rgba(74, 222, 128, 0.2));
  z-index: 0;
}

.partner-page-process-step {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: clamp(20px, 2.5vw, 24px) clamp(10px, 1.2vw, 14px);
  background: var(--color-white);
  border: 1px solid var(--color-border);
  border-radius: 16px;
  box-shadow: 0 4px 20px rgba(12, 35, 64, 0.05);
  transition: transform 0.35s ease, box-shadow 0.35s ease;
}

.partner-page-process-step:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 36px rgba(12, 35, 64, 0.1);
}

.partner-page-process-step__num {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  margin-bottom: 14px;
  font-family: var(--font-display);
  font-size: 1rem;
  font-weight: 700;
  color: var(--color-primary);
  background: var(--color-green-bright);
  border-radius: 50%;
  box-shadow: 0 4px 16px rgba(74, 222, 128, 0.35);
}

.partner-page-process-step__title {
  font-size: 0.9375rem;
  font-weight: 700;
  color: var(--color-primary);
  margin-bottom: 8px;
  line-height: 1.3;
}

.partner-page-process-step__desc {
  font-size: 0.75rem;
  line-height: 1.6;
  color: var(--color-text-muted);
  margin: 0;
}

.partner-page-partners__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(16px, 2vw, 20px);
}

.partner-page-partner-type {
  padding: clamp(24px, 3vw, 28px);
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 16px;
  transition: transform 0.35s ease, border-color 0.35s ease;
}

.partner-page-partner-type:hover {
  transform: translateY(-4px);
  border-color: rgba(201, 162, 39, 0.35);
}

.partner-page-partner-type__label {
  display: inline-block;
  padding: 4px 10px;
  margin-bottom: 12px;
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--color-accent);
  background: rgba(201, 162, 39, 0.12);
  border-radius: 999px;
}

.partner-page-partner-type__title {
  font-family: var(--font-display);
  font-size: 1.125rem;
  font-weight: 700;
  color: var(--color-white);
  margin-bottom: 10px;
  line-height: 1.3;
}

.partner-page-partner-type__desc {
  font-size: 0.8125rem;
  line-height: 1.65;
  color: rgba(255, 255, 255, 0.65);
  margin: 0;
}

.partner-page-impact__stories {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(20px, 2.5vw, 24px);
  margin-bottom: clamp(28px, 4vw, 40px);
}

.partner-page-story {
  padding: clamp(28px, 3.5vw, 36px);
  background: var(--color-white);
  border: 1px solid var(--color-border);
  border-radius: 16px;
  box-shadow: 0 4px 20px rgba(12, 35, 64, 0.05);
  transition: transform 0.35s ease, border-color 0.35s ease;
}

.partner-page-story:hover {
  transform: translateY(-4px);
  border-color: rgba(74, 222, 128, 0.35);
}

.partner-page-story--featured {
  border-color: rgba(74, 222, 128, 0.4);
  background: linear-gradient(160deg, rgba(74, 222, 128, 0.06) 0%, var(--color-white) 100%);
}

.partner-page-story__value {
  display: block;
  font-family: var(--font-display);
  font-size: clamp(1.75rem, 3vw, 2.25rem);
  font-weight: 700;
  color: var(--color-green-bright);
  margin-bottom: 10px;
  line-height: 1.1;
}

.partner-page-story__title {
  font-size: 1.0625rem;
  font-weight: 700;
  color: var(--color-primary);
  margin-bottom: 10px;
  line-height: 1.35;
}

.partner-page-story__desc {
  font-size: 0.875rem;
  line-height: 1.65;
  color: var(--color-text-muted);
  margin: 0;
}

.partner-page-impact__metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(16px, 2vw, 20px);
}

.partner-page-impact-metric {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-height: 96px;
  padding: 20px;
  text-align: center;
  background: var(--color-white);
  border: 1px solid var(--color-border);
  border-radius: 14px;
  box-shadow: 0 4px 16px rgba(12, 35, 64, 0.05);
  transition: transform 0.35s ease, border-color 0.35s ease;
}

.partner-page-impact-metric:hover {
  transform: translateY(-3px);
  border-color: rgba(201, 162, 39, 0.35);
}

.partner-page-impact-metric strong {
  font-family: var(--font-display);
  font-size: 1.5rem;
  font-weight: 700;
  color: var(--color-accent);
}

.partner-page-impact-metric span {
  font-size: 0.75rem;
  font-weight: 500;
  color: var(--color-text-muted);
}

.partner-page-faq__list {
  max-width: 760px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.partner-page-faq__item {
  background: var(--color-white);
  border: 1px solid var(--color-border);
  border-radius: 12px;
  overflow: hidden;
  transition: border-color 0.25s ease, box-shadow 0.25s ease;
}

.partner-page-faq__item[open] {
  border-color: rgba(74, 222, 128, 0.4);
  box-shadow: 0 8px 24px rgba(12, 35, 64, 0.08);
}

.partner-page-faq__question {
  padding: 18px 48px 18px 20px;
  font-size: 0.9375rem;
  font-weight: 600;
  color: var(--color-primary);
  cursor: pointer;
  list-style: none;
  position: relative;
  transition: color 0.25s ease;
}

.partner-page-faq__question::-webkit-details-marker {
  display: none;
}

.partner-page-faq__question::after {
  content: '+';
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 1.25rem;
  font-weight: 400;
  color: var(--color-green-bright);
  transition: transform 0.25s ease;
}

.partner-page-faq__item[open] .partner-page-faq__question::after {
  content: '−';
}

.partner-page-faq__question:hover {
  color: var(--color-green-bright);
}

.partner-page-faq__answer {
  padding: 0 20px 18px;
  font-size: 0.875rem;
  line-height: 1.7;
  color: var(--color-text-muted);
  margin: 0;
}

.partner-page-inquiry {
  background:
    radial-gradient(ellipse 70% 45% at 0% 50%, rgba(201, 162, 39, 0.06) 0%, transparent 55%),
    linear-gradient(180deg, var(--color-bg-innovations-alt) 0%, var(--color-bg-innovations) 100%);
}

.partner-page-inquiry__grid {
  display: grid;
  grid-template-columns: 1fr minmax(320px, 480px);
  gap: clamp(32px, 5vw, 64px);
  align-items: start;
}

.partner-page-inquiry__info p {
  font-size: 1rem;
  line-height: 1.75;
  color: var(--color-text-muted);
  margin-bottom: 28px;
}

.partner-page-inquiry__contacts {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.partner-page-inquiry__contacts li {
  display: flex;
  align-items: flex-start;
  gap: 12px;
}

.partner-page-inquiry__contacts svg {
  flex-shrink: 0;
  margin-top: 2px;
  color: var(--color-accent);
}

.partner-page-inquiry__contacts strong {
  display: block;
  font-size: 0.8125rem;
  font-weight: 700;
  color: var(--color-primary);
  margin-bottom: 2px;
}

.partner-page-inquiry__contacts span,
.partner-page-inquiry__contacts a {
  font-size: 0.8125rem;
  line-height: 1.5;
  color: var(--color-text-muted);
}

.partner-page-inquiry__contacts a:hover {
  color: var(--color-accent);
}

.partner-page-inquiry__form {
  margin: 0;
}

.partner-page-cta {
  padding: clamp(48px, 6vw, 72px) 0;
  background:
    linear-gradient(135deg, rgba(10, 21, 38, 0.98) 0%, rgba(14, 30, 52, 0.95) 100%);
  border-top: 1px solid rgba(74, 222, 128, 0.2);
}

.partner-page-cta__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: clamp(24px, 4vw, 48px);
  padding: clamp(32px, 4vw, 48px);
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(74, 222, 128, 0.25);
  border-radius: 20px;
}

.partner-page-cta__title {
  font-family: var(--font-display);
  font-size: clamp(1.5rem, 3vw, 2rem);
  font-weight: 700;
  line-height: 1.25;
  color: var(--color-white);
  margin-bottom: 10px;
}

.partner-page-cta__desc {
  font-size: clamp(0.9375rem, 1.1vw, 1.0625rem);
  line-height: 1.7;
  color: rgba(255, 255, 255, 0.72);
  max-width: 560px;
}

.partner-page-cta__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  flex-shrink: 0;
}

/* Charity & Social Impact */
.partner-page-charity {
  background:
    radial-gradient(ellipse 80% 50% at 50% 0%, rgba(201, 162, 39, 0.06) 0%, transparent 55%),
    linear-gradient(180deg, #f8fafc 0%, var(--color-bg-muted) 100%);
}

.partner-page-charity__intro {
  max-width: 780px;
  margin: 0 auto clamp(32px, 4vw, 48px);
  font-size: clamp(1rem, 1.15vw, 1.0625rem);
  line-height: 1.75;
  color: var(--color-text-muted);
  text-align: center;
}

.partner-page-charity__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(20px, 2.5vw, 28px);
}

.partner-page-charity__stats {
  margin-top: clamp(48px, 6vw, 72px);
  padding: clamp(40px, 5vw, 56px) 0;
  background:
    linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-light) 100%);
  border-block: 1px solid rgba(201, 162, 39, 0.2);
}

.partner-page-charity__stats-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(16px, 2vw, 24px);
}

.partner-page-charity-stat {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: clamp(24px, 3vw, 28px) clamp(16px, 2vw, 20px);
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 16px;
  backdrop-filter: blur(8px);
  transition: transform 0.35s ease, border-color 0.35s ease, background 0.35s ease;
}

.partner-page-charity-stat:hover {
  transform: translateY(-4px);
  background: rgba(255, 255, 255, 0.1);
  border-color: rgba(201, 162, 39, 0.4);
}

.partner-page-charity-stat__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  margin-bottom: 14px;
  color: var(--color-green-bright);
  background: rgba(52, 211, 153, 0.15);
  border-radius: 12px;
}

.partner-page-charity-stat__value {
  font-family: var(--font-display);
  font-size: clamp(1.75rem, 3vw, 2.25rem);
  font-weight: 700;
  line-height: 1.1;
  color: var(--color-white);
  margin-bottom: 6px;
}

.partner-page-charity-stat__label {
  font-size: 0.8125rem;
  font-weight: 500;
  letter-spacing: 0.02em;
  color: rgba(255, 255, 255, 0.72);
}

.partner-page-charity__cta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: clamp(24px, 4vw, 48px);
  margin-top: clamp(48px, 6vw, 64px);
  padding: clamp(32px, 4vw, 48px);
  background:
    linear-gradient(135deg, rgba(12, 35, 64, 0.97) 0%, rgba(26, 58, 92, 0.95) 100%);
  border: 1px solid rgba(201, 162, 39, 0.3);
  border-radius: 20px;
  box-shadow: 0 12px 40px rgba(12, 35, 64, 0.15);
}

.partner-page-charity__cta-title {
  font-family: var(--font-display);
  font-size: clamp(1.375rem, 2.5vw, 1.75rem);
  font-weight: 700;
  line-height: 1.25;
  color: var(--color-white);
  margin-bottom: 10px;
}

.partner-page-charity__cta-title em {
  font-style: normal;
  color: var(--color-accent);
}

.partner-page-charity__cta-desc {
  font-size: clamp(0.9375rem, 1.1vw, 1.0625rem);
  line-height: 1.7;
  color: rgba(255, 255, 255, 0.75);
  max-width: 560px;
  margin: 0;
}

.partner-page-charity__cta-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  flex-shrink: 0;
}

.partner-page-charity__cta-actions .btn--outline {
  color: var(--color-white);
  border-color: rgba(255, 255, 255, 0.45);
}

.partner-page-charity__cta-actions .btn--outline:hover {
  color: var(--color-primary);
  background: var(--color-white);
  border-color: var(--color-white);
}

@media (max-width: 1024px) {
  .partner-page-hero__inner {
    grid-template-columns: 1fr;
  }

  .partner-page-hero__metrics-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .partner-page-why__grid {
    grid-template-columns: 1fr;
  }

  .partner-page-why__visual {
    order: -1;
  }

  .partner-page-opportunities__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .partner-page-benefits__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .partner-page-process__track {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .partner-page-process__track::before {
    display: none;
  }

  .partner-page-partners__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .partner-page-impact__stories {
    grid-template-columns: 1fr;
  }

  .partner-page-impact__metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .partner-page-inquiry__grid {
    grid-template-columns: 1fr;
  }

  .partner-page-cta__inner {
    flex-direction: column;
    text-align: center;
  }

  .partner-page-cta__actions {
    justify-content: center;
  }

  .partner-page-charity__stats-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .partner-page-charity__cta {
    flex-direction: column;
    text-align: center;
  }

  .partner-page-charity__cta-actions {
    justify-content: center;
  }
}

@media (max-width: 640px) {
  .partner-page-hero {
    min-height: auto;
  }

  .partner-page-hero__metrics {
    margin-top: 24px;
  }

  .partner-page-opportunities__grid,
  .partner-page-benefits__grid {
    grid-template-columns: 1fr;
  }

  .partner-page-process__track {
    grid-template-columns: 1fr;
  }

  .partner-page-partners__grid {
    grid-template-columns: 1fr;
  }

  .partner-page-impact__metrics {
    grid-template-columns: 1fr;
  }

  .partner-page-cta__actions {
    flex-direction: column;
    width: 100%;
  }

  .partner-page-cta__actions .btn {
    width: 100%;
    text-align: center;
  }

  .partner-page-charity__grid,
  .partner-page-charity__stats-grid {
    grid-template-columns: 1fr;
  }

  .partner-page-charity__cta-actions {
    flex-direction: column;
    width: 100%;
  }

  .partner-page-charity__cta-actions .btn {
    width: 100%;
    text-align: center;
  }
}

@media (prefers-reduced-motion: reduce) {
  .partner-page-metric,
  .partner-page-opportunity,
  .partner-page-benefit,
  .partner-page-process-step,
  .partner-page-partner-type,
  .partner-page-story,
  .partner-page-impact-metric,
  .partner-page-charity-stat,
  .strategic-partner-card {
    transition: none;
  }
}

/* Services / Ecosystem */
.services {
  background:
    radial-gradient(ellipse 70% 45% at 0% 50%, var(--color-glow-teal) 0%, transparent 55%),
    linear-gradient(180deg, #0d1a2e 0%, var(--color-bg-ecosystem) 10%, var(--color-bg-ecosystem) 90%, #0a1526 100%);
}

.services::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(201, 162, 39, 0.15), transparent);
  pointer-events: none;
}

.services__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(20px, 2.5vw, 28px);
}

.service-card {
  display: flex;
  flex-direction: column;
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: var(--radius-md);
  overflow: hidden;
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.18);
  transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1),
              box-shadow 0.4s ease,
              border-color 0.4s ease;
}

.service-card:hover {
  transform: translateY(-6px);
  border-color: rgba(201, 162, 39, 0.25);
  box-shadow: 0 16px 48px rgba(0, 0, 0, 0.3);
}

.service-card__image {
  aspect-ratio: 16 / 10;
  overflow: hidden;
}

.service-card__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transition: transform 0.6s cubic-bezier(0.4, 0, 0.2, 1);
}

.service-card:hover .service-card__image img {
  transform: scale(1.06);
}

.service-card__body {
  padding: clamp(20px, 2.5vw, 24px);
  flex: 1;
  display: flex;
  flex-direction: column;
}

.service-card__heading {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 0.4em;
  margin-bottom: 12px;
  font-size: clamp(0.875rem, 1.15vw, 1rem);
  font-weight: 600;
  line-height: 1.35;
}

.service-card__number {
  font-family: var(--font-display);
  font-weight: 700;
  color: var(--color-accent);
  letter-spacing: 0.02em;
  flex-shrink: 0;
}

.service-card__title-text {
  color: var(--color-white);
  min-width: 0;
}

.service-card__desc {
  font-size: clamp(0.8125rem, 1vw, 0.875rem);
  line-height: 1.65;
  color: rgba(255, 255, 255, 0.72);
}

.service-card__read-more {
  align-self: flex-start;
  margin-top: auto;
  padding: 10px 18px;
  font-size: 0.8125rem;
  font-weight: 600;
  color: var(--color-green-bright);
  background: transparent;
  border: 1px solid rgba(74, 222, 128, 0.45);
  border-radius: 999px;
  cursor: pointer;
  transition: background 0.25s ease, color 0.25s ease, border-color 0.25s ease, transform 0.25s ease;
}

.service-card__read-more:hover {
  background: var(--color-green-bright);
  color: var(--color-primary);
  border-color: var(--color-green-bright);
  transform: translateY(-1px);
}

/* Ecosystem Workflow */
.ecosystem-workflow {
  margin-top: clamp(64px, 8vw, 96px);
  padding-top: clamp(48px, 6vw, 64px);
  border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.ecosystem-workflow__header {
  text-align: center;
  max-width: 720px;
  margin: 0 auto clamp(32px, 4vw, 48px);
}

.ecosystem-workflow__title {
  font-family: var(--font-display);
  font-size: clamp(1.375rem, 2.2vw, 1.875rem);
  font-weight: 700;
  color: var(--color-white);
  line-height: 1.25;
  margin-bottom: 0;
}

.ecosystem-workflow__intro {
  font-size: clamp(0.9375rem, 1.2vw, 1.0625rem);
  line-height: 1.7;
  color: rgba(255, 255, 255, 0.72);
}

.ecosystem-workflow__track {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 0;
  width: 100%;
  max-width: min(100%, 440px);
  margin: 0 auto;
}

.workflow-step {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  flex: none;
  width: 100%;
  min-width: 0;
  max-width: 100%;
  padding: 16px 14px;
  background: rgba(255, 255, 255, 0.04);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 16px;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.12),
              inset 0 1px 0 rgba(255, 255, 255, 0.05);
  transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1),
              box-shadow 0.35s ease,
              border-color 0.35s ease;
}

.workflow-step:hover {
  transform: translateY(-5px);
  border-color: rgba(201, 162, 39, 0.35);
  box-shadow: 0 12px 32px rgba(0, 0, 0, 0.22),
              0 0 0 1px rgba(201, 162, 39, 0.1);
}

.workflow-step__icon {
  flex-shrink: 0;
  width: 44px;
  height: 44px;
  border-radius: 10px;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.1);
}

.workflow-step__icon img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.workflow-step__content {
  flex: 1;
  min-width: 0;
}

.workflow-step__title {
  font-size: clamp(0.75rem, 0.95vw, 0.8125rem);
  font-weight: 700;
  color: var(--color-accent);
  line-height: 1.35;
  margin-bottom: 4px;
  word-break: break-word;
}

.workflow-step__desc {
  font-size: clamp(0.625rem, 0.8vw, 0.6875rem);
  line-height: 1.5;
  color: rgba(255, 255, 255, 0.6);
}

.workflow-arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: none;
  align-self: center;
  width: 32px;
  height: 28px;
  color: var(--color-icon);
  opacity: 0.75;
  transform: rotate(90deg);
  transition: opacity 0.3s ease, color 0.3s ease;
}

.workflow-arrow svg {
  display: block;
  width: 20px;
  height: 20px;
}

.ecosystem-workflow__track:hover .workflow-arrow {
  opacity: 0.95;
}

/* Desktop — single-row grid: step → arrow → step → … */
@media (min-width: 1200px) {
  .ecosystem-workflow__track {
    display: grid;
    grid-template-columns:
      minmax(0, 1fr) min-content
      minmax(0, 1fr) min-content
      minmax(0, 1fr) min-content
      minmax(0, 1fr) min-content
      minmax(0, 1fr) min-content
      minmax(0, 1fr);
    grid-template-rows: auto;
    align-items: center;
    justify-items: stretch;
    column-gap: clamp(4px, 0.6vw, 10px);
    row-gap: 0;
    max-width: none;
    margin: 0;
  }

  .workflow-step {
    grid-row: 1;
    width: 100%;
  }

  .workflow-arrow {
    grid-row: 1;
    width: 24px;
    height: auto;
    padding: 0 2px;
    transform: none;
    align-self: center;
    justify-self: center;
  }
}

/* Tablet — slightly wider vertical flow */
@media (min-width: 768px) and (max-width: 1199px) {
  .ecosystem-workflow__track {
    max-width: min(100%, 520px);
  }
}

/* Industries */
.industries {
  background:
    radial-gradient(ellipse 65% 50% at 100% 0%, var(--color-glow-green) 0%, transparent 50%),
    linear-gradient(180deg, #0a1526 0%, var(--color-bg-industries) 12%, var(--color-bg-industries) 88%, #081220 100%);
}

.industries::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(45, 212, 191, 0.12), transparent);
  pointer-events: none;
}

.industries__grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: clamp(14px, 1.5vw, 20px);
}

.industry-card {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 14px 16px;
  background: rgba(255, 255, 255, 0.04);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 18px;
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.12),
              inset 0 1px 0 rgba(255, 255, 255, 0.06);
  transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1),
              box-shadow 0.35s ease,
              border-color 0.35s ease,
              background 0.35s ease;
}

.industry-card:hover {
  transform: translateY(-6px);
  background: rgba(255, 255, 255, 0.07);
  border-color: rgba(201, 162, 39, 0.45);
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.22),
              0 0 0 1px rgba(201, 162, 39, 0.12),
              inset 0 1px 0 rgba(255, 255, 255, 0.1);
}

.industry-card__icon {
  flex-shrink: 0;
  width: 48px;
  height: 48px;
  border-radius: 12px;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.1);
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.15);
}

.industry-card__icon img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1);
}

.industry-card:hover .industry-card__icon img {
  transform: scale(1.1);
}

.industry-card__content {
  flex: 1;
  min-width: 0;
}

.industry-card__title {
  font-size: clamp(0.8125rem, 0.95vw, 0.875rem);
  font-weight: 700;
  color: var(--color-white);
  line-height: 1.35;
  margin-bottom: 4px;
  word-break: break-word;
}

.industry-card__desc {
  font-size: clamp(0.6875rem, 0.8vw, 0.75rem);
  line-height: 1.5;
  color: rgba(255, 255, 255, 0.55);
}

/* Investment & Geographic Focus */
.investment {
  background:
    radial-gradient(ellipse 80% 55% at 20% 100%, var(--color-glow-gold) 0%, transparent 55%),
    radial-gradient(ellipse 60% 40% at 90% 20%, var(--color-glow-teal) 0%, transparent 50%),
    linear-gradient(180deg, #081220 0%, var(--color-bg-investment) 10%, var(--color-bg-investment) 90%, #050910 100%);
  padding: clamp(64px, 8vw, 100px) 0;
}

.investment::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(201, 162, 39, 0.2), transparent);
  pointer-events: none;
}

.investment__layout {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr);
  gap: clamp(16px, 2vw, 24px);
  align-items: stretch;
}

.investment-panel__title {
  font-family: var(--font-sans);
  font-size: clamp(0.6875rem, 1vw, 0.8125rem);
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--color-accent);
  margin-bottom: clamp(16px, 2vw, 24px);
  padding-bottom: 12px;
  border-bottom: 1px solid rgba(201, 162, 39, 0.25);
}

.geo-focus,
.investment-benefits {
  background: rgba(255, 255, 255, 0.02);
  border: 1px solid rgba(201, 162, 39, 0.35);
  border-radius: 14px;
  padding: clamp(20px, 2.5vw, 28px);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04),
              0 8px 32px rgba(0, 0, 0, 0.35);
}

.geo-focus__body {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(140px, 200px);
  gap: clamp(16px, 2vw, 24px);
  align-items: stretch;
}

.geo-focus__main {
  display: flex;
  flex-direction: column;
  gap: clamp(16px, 2vw, 20px);
  min-width: 0;
}

.geo-focus__map {
  width: 100%;
  border-radius: 10px;
  overflow: hidden;
  background: rgba(5, 8, 16, 0.95);
  border: 1px solid rgba(201, 162, 39, 0.15);
}

.geo-focus__map-img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
  object-position: center;
}

.geo-focus__hubs {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(10px, 1.2vw, 14px);
  list-style: none;
}

.geo-hub {
  padding: clamp(10px, 1.2vw, 12px);
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(201, 162, 39, 0.2);
  border-radius: 8px;
}

.geo-hub__name {
  display: block;
  font-size: clamp(0.625rem, 0.8vw, 0.6875rem);
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--color-accent);
  line-height: 1.25;
  margin-bottom: 4px;
}

.geo-hub__desc {
  display: block;
  font-size: clamp(0.5625rem, 0.7vw, 0.625rem);
  line-height: 1.5;
  color: rgba(255, 255, 255, 0.55);
}

.geo-hub--burundi {
  border-color: rgba(201, 162, 39, 0.45);
  background: rgba(201, 162, 39, 0.06);
}

.geo-hub--burundi .geo-hub__name {
  color: #e8c547;
}

.geo-focus__sidebar {
  position: relative;
  padding-left: clamp(16px, 2vw, 20px);
  border-left: 1px solid rgba(201, 162, 39, 0.35);
  display: flex;
  align-items: center;
}

.geo-focus__sidebar p {
  font-size: clamp(0.6875rem, 0.85vw, 0.8125rem);
  line-height: 1.75;
  color: rgba(255, 255, 255, 0.62);
}

.investment-benefits {
  display: flex;
  flex-direction: column;
}

.investment-benefits__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(10px, 1.2vw, 14px);
  flex: 1;
  align-content: start;
}

@media (min-width: 769px) {
  .investment-benefits__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .benefit-card {
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
  }

  .benefit-card__icon {
    width: 32px;
    height: 32px;
  }
}

.benefit-card {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: clamp(12px, 1.5vw, 16px);
  background: rgba(255, 255, 255, 0.02);
  border: 1px solid rgba(201, 162, 39, 0.28);
  border-radius: 10px;
  transition: border-color 0.35s ease, background 0.35s ease, transform 0.35s ease;
}

.benefit-card:hover {
  background: rgba(201, 162, 39, 0.06);
  border-color: rgba(201, 162, 39, 0.5);
  transform: translateY(-2px);
}

.benefit-card__icon {
  flex-shrink: 0;
  width: 36px;
  height: 36px;
  color: var(--color-icon);
  filter: drop-shadow(0 0 6px var(--color-icon-glow));
}

.benefit-card__icon svg {
  width: 100%;
  height: 100%;
}

.benefit-card__content {
  min-width: 0;
}

.benefit-card__title {
  font-size: clamp(0.6875rem, 0.85vw, 0.8125rem);
  font-weight: 700;
  color: var(--color-accent);
  line-height: 1.35;
  margin-bottom: 4px;
}

.benefit-card__desc {
  font-size: clamp(0.625rem, 0.75vw, 0.6875rem);
  line-height: 1.55;
  color: rgba(255, 255, 255, 0.55);
}

@media (max-width: 1100px) {
  .investment__layout {
    grid-template-columns: 1fr;
  }

  .geo-focus__body {
    grid-template-columns: 1fr;
  }

  .geo-focus__sidebar {
    padding-left: 0;
    padding-top: 16px;
    border-left: none;
    border-top: 1px solid rgba(201, 162, 39, 0.35);
  }
}

@media (max-width: 768px) {
  .geo-focus__hubs {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .investment-benefits__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .benefit-card {
    flex-direction: row;
    align-items: flex-start;
    gap: 12px;
  }

  .benefit-card__icon {
    width: 36px;
    height: 36px;
  }
}

@media (max-width: 640px) {
  .investment-benefits__grid {
    grid-template-columns: 1fr;
  }

  .geo-focus__hubs {
    grid-template-columns: 1fr;
  }
}

/* Innovations */
.innovations {
  background:
    radial-gradient(ellipse 90% 60% at 50% 0%, rgba(255, 255, 255, 0.9) 0%, transparent 70%),
    linear-gradient(180deg, var(--color-bg-innovations-alt) 0%, var(--color-bg-innovations) 15%, var(--color-bg-innovations) 85%, #e8edf3 100%);
  color: var(--color-text);
  padding: clamp(48px, 6vw, 72px) 0;
}

.innovations::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(12, 35, 64, 0.08), transparent);
  pointer-events: none;
}


.innovations__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(20px, 2.5vw, 28px);
}

/* Homepage innovations carousel */
.innovations-carousel {
  position: relative;
  margin-top: clamp(16px, 2vw, 24px);
}

.innovations-carousel__viewport {
  overflow: hidden;
  border-radius: 16px;
}

.innovations-carousel__track {
  display: flex;
  transition: transform 0.55s cubic-bezier(0.4, 0, 0.2, 1);
  will-change: transform;
}

.innovations-carousel__track .innovation-card {
  flex: 0 0 auto;
  min-width: 0;
  margin: 0;
}

.innovations-carousel__nav {
  position: absolute;
  top: 50%;
  z-index: 3;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border: 1px solid rgba(12, 35, 64, 0.12);
  border-radius: 50%;
  background: var(--color-white);
  color: var(--color-primary);
  box-shadow: var(--shadow-md);
  cursor: pointer;
  transform: translateY(-50%);
  transition: background 0.25s ease, color 0.25s ease, border-color 0.25s ease, opacity 0.25s ease;
}

.innovations-carousel__nav:hover:not(:disabled) {
  background: var(--color-primary);
  color: var(--color-accent);
  border-color: var(--color-primary);
}

.innovations-carousel__nav:disabled {
  opacity: 0.35;
  cursor: not-allowed;
}

.innovations-carousel__nav--prev {
  left: -14px;
}

.innovations-carousel__nav--next {
  right: -14px;
}

.innovations-carousel__dots {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 14px;
}

.innovations-carousel__dot {
  width: 10px;
  height: 10px;
  padding: 0;
  border: none;
  border-radius: 50%;
  background: rgba(12, 35, 64, 0.18);
  cursor: pointer;
  transition: transform 0.25s ease, background 0.25s ease;
}

.innovations-carousel__dot.is-active {
  background: var(--color-primary);
  transform: scale(1.15);
}

.innovations-carousel__footer {
  display: flex;
  justify-content: center;
  margin-top: clamp(20px, 3vw, 28px);
}

.innovation-card--compact {
  min-height: 220px;
}

.innovation-card--compact .innovation-card__content {
  min-height: 220px;
  padding: clamp(14px, 2vw, 20px);
  justify-content: flex-end;
}

.innovation-card--compact .innovation-card__overlay {
  background: linear-gradient(
    180deg,
    rgba(12, 35, 64, 0.2) 0%,
    rgba(12, 35, 64, 0.55) 40%,
    rgba(12, 35, 64, 0.92) 100%
  );
}

.innovation-card--compact .innovation-card__title {
  font-size: clamp(0.9375rem, 1.35vw, 1.125rem);
  margin-bottom: 6px;
}

.innovation-card--compact .innovation-card__desc {
  font-size: 0.75rem;
  line-height: 1.5;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

@media (max-width: 768px) {
  .innovations-carousel__nav--prev {
    left: 4px;
  }

  .innovations-carousel__nav--next {
    right: 4px;
  }
}

.innovation-card {
  position: relative;
  min-height: 480px;
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 8px 32px rgba(12, 35, 64, 0.15);
  transition: box-shadow 0.45s ease, transform 0.45s cubic-bezier(0.4, 0, 0.2, 1);
}

.innovation-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 20px 56px rgba(12, 35, 64, 0.25);
}

.innovation-card.innovation-card--compact {
  min-height: 220px;
}

.innovations-carousel .innovation-card:hover {
  transform: translateY(-2px);
}

.innovation-card__bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.innovation-card__bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transition: transform 0.7s cubic-bezier(0.4, 0, 0.2, 1);
}

.innovation-card:hover .innovation-card__bg img {
  transform: scale(1.08);
}

.innovation-card__overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(
    180deg,
    rgba(12, 35, 64, 0.35) 0%,
    rgba(12, 35, 64, 0.65) 45%,
    rgba(12, 35, 64, 0.92) 100%
  );
  transition: background 0.45s ease;
}

.innovation-card:hover .innovation-card__overlay {
  background: linear-gradient(
    180deg,
    rgba(12, 35, 64, 0.45) 0%,
    rgba(12, 35, 64, 0.72) 45%,
    rgba(12, 35, 64, 0.95) 100%
  );
}

.innovation-card__content {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  height: 100%;
  min-height: 480px;
  padding: clamp(28px, 4vw, 40px);
}

.innovation-card--center .innovation-card__content {
  align-items: center;
  justify-content: center;
  text-align: center;
}

.innovation-card--right .innovation-card__content {
  align-items: flex-end;
  justify-content: center;
  text-align: right;
}

.innovation-card__title {
  font-family: var(--font-display);
  font-size: clamp(1.125rem, 1.8vw, 1.5rem);
  font-weight: 700;
  color: var(--color-white);
  line-height: 1.3;
  margin-bottom: 14px;
  letter-spacing: -0.01em;
}

.innovation-card--right .innovation-card__title,
.innovation-card--right .innovation-card__desc {
  max-width: min(100%, 340px);
}

.innovation-card__desc {
  font-size: clamp(0.8125rem, 1vw, 0.9375rem);
  line-height: 1.65;
  color: rgba(255, 255, 255, 0.82);
  margin-bottom: 24px;
  max-width: 320px;
}

.innovation-card--center .innovation-card__desc {
  max-width: 300px;
}

.innovation-card__btn {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 12px 24px;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--color-white);
  background: rgba(255, 255, 255, 0.12);
  border: 1px solid rgba(255, 255, 255, 0.25);
  border-radius: var(--radius-sm);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  transition: all 0.35s cubic-bezier(0.4, 0, 0.2, 1);
}

.innovation-card__btn svg {
  flex-shrink: 0;
  transition: transform 0.35s ease;
}

.innovation-card__btn:hover {
  background: var(--color-accent);
  border-color: var(--color-accent);
  color: var(--color-primary);
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(201, 162, 39, 0.35);
}

.innovation-card__btn:hover svg {
  transform: translateX(4px);
}

/* Contact */
.contact {
  background:
    radial-gradient(ellipse 70% 50% at 50% 100%, rgba(201, 162, 39, 0.04) 0%, transparent 55%),
    linear-gradient(180deg, #e8edf3 0%, var(--color-bg-contact) 8%, var(--color-bg-contact) 100%);
}

.contact::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(12, 35, 64, 0.06), transparent);
  pointer-events: none;
}

.contact__grid {
  display: grid;
  grid-template-columns: 1fr 1.2fr;
  gap: 64px;
  align-items: start;
}

.contact__info p {
  color: var(--color-text-muted);
  margin-bottom: 32px;
  line-height: 1.8;
}

.contact__details {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.contact__details li {
  display: flex;
  gap: 16px;
  align-items: flex-start;
}

.contact__details svg {
  flex-shrink: 0;
  color: var(--color-accent);
  margin-top: 2px;
}

.contact__details strong {
  display: block;
  font-size: 0.9375rem;
  color: var(--color-primary);
  margin-bottom: 2px;
}

.contact__details span {
  font-size: 0.9375rem;
  color: var(--color-text-muted);
}

.contact__form {
  background: var(--color-bg-muted);
  padding: 40px;
  border-radius: var(--radius-md);
}

.form-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}

.form-group {
  margin-bottom: 20px;
}

.form-group label {
  display: block;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--color-primary);
  margin-bottom: 6px;
}

.form-group input,
.form-group select,
.form-group textarea {
  width: 100%;
  padding: 12px 16px;
  background: var(--color-white);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  color: var(--color-text);
  transition: border-color var(--transition);
}

.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus {
  border-color: var(--color-accent);
}

.form-group input::placeholder,
.form-group textarea::placeholder {
  color: var(--color-text-light);
}

.form-group textarea {
  resize: vertical;
  min-height: 120px;
}

.form-feedback {
  margin-top: 12px;
  font-size: 0.875rem;
  font-weight: 500;
  min-height: 1.25em;
}

.form-feedback.success {
  color: var(--color-green);
}

.form-feedback.error {
  color: #dc2626;
}

/* Footer */
.footer {
  background:
    radial-gradient(ellipse at 20% 0%, rgba(201, 162, 39, 0.05) 0%, transparent 50%),
    radial-gradient(ellipse at 80% 100%, rgba(26, 74, 92, 0.1) 0%, transparent 45%),
    linear-gradient(180deg, #050910 0%, var(--color-bg-footer) 100%);
  color: rgba(255, 255, 255, 0.78);
  padding: clamp(48px, 6vw, 72px) 0 0;
}

.footer__main {
  display: grid;
  grid-template-columns: minmax(240px, 1.45fr) repeat(3, minmax(0, 1fr));
  gap: clamp(24px, 3vw, 40px);
  align-items: start;
  padding-bottom: clamp(32px, 4vw, 48px);
  border-bottom: 1px solid rgba(201, 162, 39, 0.2);
}

.footer__col {
  padding: 0;
  border-left: none;
}

.footer__col:not(.footer__brand) {
  padding-top: 4px;
}

.footer__brand {
  padding-right: clamp(8px, 2vw, 24px);
}

.footer__logo {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 18px;
}

.footer__logo-emblem {
  width: 64px;
  height: 64px;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
  border: 1px solid rgba(201, 162, 39, 0.3);
}

.footer__logo-text {
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.footer__logo-name {
  font-family: var(--font-display);
  font-size: 1.625rem;
  font-weight: 700;
  color: var(--color-accent);
  line-height: 1.1;
  letter-spacing: 0.02em;
}

.footer__logo-sub {
  font-size: 0.5625rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--color-accent);
  line-height: 1.35;
  max-width: 180px;
}

.footer__tagline {
  font-size: clamp(0.75rem, 0.9vw, 0.8125rem);
  line-height: 1.75;
  color: rgba(255, 255, 255, 0.72);
  margin-bottom: 22px;
  max-width: 380px;
}

.footer__social {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.footer__social a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid var(--color-icon-border);
  color: var(--color-icon);
  transition: background 0.3s ease, border-color 0.3s ease, transform 0.3s ease, color 0.3s ease;
}

.footer__social a:hover {
  background: var(--color-icon-soft);
  border-color: rgba(52, 211, 153, 0.55);
  color: var(--color-icon-hover);
  transform: translateY(-2px);
}

.footer__heading {
  font-size: clamp(0.6875rem, 0.85vw, 0.75rem);
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--color-accent);
  margin-bottom: clamp(16px, 2vw, 20px);
}

.footer__links ul,
.footer__pillars ul {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.footer__links a,
.footer__pillars a {
  font-size: clamp(0.75rem, 0.85vw, 0.8125rem);
  color: rgba(255, 255, 255, 0.72);
  transition: color 0.3s ease;
}

.footer__links a:hover,
.footer__pillars a:hover {
  color: var(--color-accent);
}

.footer__contact-list {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.footer__contact-list li {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  font-size: clamp(0.75rem, 0.85vw, 0.8125rem);
  line-height: 1.55;
  color: rgba(255, 255, 255, 0.72);
}

.footer__contact-list a {
  color: rgba(255, 255, 255, 0.72);
  transition: color 0.3s ease;
}

.footer__contact-list a:hover {
  color: var(--color-accent);
}

.footer__contact-icon {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  margin-top: 2px;
  color: var(--color-icon);
}

.footer__bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 12px 24px;
  padding: clamp(16px, 2vw, 22px) 0;
  font-size: clamp(0.6875rem, 0.8vw, 0.75rem);
  color: rgba(255, 255, 255, 0.55);
}

.footer__legal {
  display: flex;
  align-items: center;
  gap: 10px;
}

.footer__legal a {
  color: rgba(255, 255, 255, 0.55);
  transition: color 0.3s ease;
}

.footer__legal a:hover {
  color: var(--color-accent);
}

.footer__legal-sep {
  color: rgba(255, 255, 255, 0.3);
  font-size: 0.75rem;
}

/* Back to Top */
.back-to-top {
  position: fixed;
  bottom: 32px;
  right: 32px;
  width: 48px;
  height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--color-icon);
  color: var(--color-primary);
  border-radius: 50%;
  cursor: pointer;
  box-shadow: var(--shadow-md);
  opacity: 0;
  visibility: hidden;
  transform: translateY(16px);
  transition: all var(--transition);
  z-index: 999;
}

.back-to-top.visible {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.back-to-top:hover {
  background: var(--color-green-btn-hover);
  transform: translateY(-2px);
}

/* Animations */
.fade-in {
  opacity: 0;
  transform: translateY(24px);
  transition: opacity 0.6s ease, transform 0.6s ease;
}

.fade-in.visible {
  opacity: 1;
  transform: translateY(0);
}

.header__cta-mobile {
  display: none;
}

/* Responsive */
@media (max-width: 1100px) {
  .nav__link {
    padding: 8px 10px;
    font-size: 0.8125rem;
  }

  .header__cta {
    padding: 10px 16px;
    font-size: 0.8125rem;
  }
}

@media (max-width: 1200px) {
  .industries__grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media (max-width: 1024px) {
  .about__row--top {
    grid-template-columns: repeat(2, 1fr);
  }

  .services__grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .innovations__grid {
    grid-template-columns: 1fr 1fr;
  }

  .innovations__grid .innovation-card:last-child {
    grid-column: span 2;
    max-width: 560px;
    margin: 0 auto;
    width: 100%;
  }

  .footer__main {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: clamp(28px, 4vw, 36px);
  }

  .footer__brand {
    grid-column: 1 / -1;
    padding-right: 0;
  }
}

@media (max-width: 768px) {
  .top-bar__contact {
    display: none;
  }

  .nav {
    position: fixed;
    top: var(--header-height);
    left: 0;
    right: 0;
    background: var(--color-white);
    padding: 24px;
    box-shadow: var(--shadow-md);
    transform: translateY(-120%);
    opacity: 0;
    visibility: hidden;
    transition: all var(--transition);
  }

  .nav.open {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }

  .nav__list {
    flex-direction: column;
    gap: 4px;
  }

  .nav__link {
    display: block;
    padding: 12px 16px;
  }

  .header__cta {
    display: none;
  }

  .header__cta-mobile {
    display: none;
    margin-top: 16px;
    width: 100%;
  }

  .nav.open .header__cta-mobile {
    display: flex;
  }

  .menu-toggle {
    display: flex;
  }

  .about__row--top {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .about__card {
    min-height: auto;
  }

  .about__card--map {
    min-height: 200px;
  }

  .about__row--bottom {
    grid-template-columns: 1fr;
    gap: 24px;
  }

  .services__grid {
    grid-template-columns: 1fr;
  }

  .industries__grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .innovations__grid {
    grid-template-columns: 1fr;
  }

  .innovations__grid .innovation-card:last-child {
    grid-column: span 1;
    max-width: 100%;
  }

  .innovation-card,
  .innovation-card__content {
    min-height: 420px;
  }

  .contact__grid {
    grid-template-columns: 1fr;
    gap: 40px;
  }

  .form-row {
    grid-template-columns: 1fr;
  }

  .footer__main {
    grid-template-columns: 1fr;
    gap: 0;
  }

  .footer__col {
    padding: 0 0 24px;
    border-bottom: 1px solid rgba(201, 162, 39, 0.15);
  }

  .footer__col:last-of-type {
    border-bottom: none;
    padding-bottom: 0;
  }

  .footer__tagline {
    max-width: none;
  }

  .footer__bottom {
    flex-direction: column;
    gap: 16px;
    text-align: center;
  }

  .section {
    padding: 64px 0;
  }
}

@media (max-width: 480px) {
  .hero__overlay {
    background: linear-gradient(
      180deg,
      rgba(12, 35, 64, 0.9) 0%,
      rgba(12, 35, 64, 0.75) 50%,
      rgba(12, 35, 64, 0.92) 100%
    );
  }

  .hero__layout {
    gap: 32px;
    padding-bottom: 48px;
  }

  .hero__actions {
    flex-direction: column;
    align-items: stretch;
  }

  .hero__btn {
    justify-content: center;
    width: 100%;
  }

  .hero__stat {
    min-width: 0;
  }

  .hero__stats {
    grid-template-columns: 1fr;
  }

  .industries__grid {
    grid-template-columns: 1fr;
  }

  .contact__form {
    padding: 24px;
  }
}

/* Contact Page — premium layout */
.contact-page-hero {
  position: relative;
  min-height: clamp(520px, 75vh, 680px);
  display: flex;
  flex-direction: column;
  align-items: stretch;
  padding: calc(var(--header-height) + 48px) 0 clamp(32px, 4vw, 48px);
  color: var(--color-white);
  overflow: hidden;
}

.contact-page-hero__bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.contact-page-hero__bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.contact-page-hero__overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(180deg, rgba(5, 9, 16, 0.5) 0%, rgba(10, 21, 38, 0.92) 100%),
    linear-gradient(105deg, rgba(7, 13, 22, 0.88) 0%, rgba(14, 30, 52, 0.75) 55%, rgba(201, 162, 39, 0.12) 100%);
}

.contact-page-hero__inner {
  position: relative;
  z-index: 2;
  flex: 1;
  display: grid;
  grid-template-columns: 1fr minmax(260px, 340px);
  gap: clamp(32px, 5vw, 64px);
  align-items: center;
}

.contact-page-hero__label {
  display: inline-block;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--color-accent);
  margin-bottom: 14px;
}

.contact-page-hero__title {
  font-family: var(--font-display);
  font-size: clamp(2.25rem, 5vw, 3.75rem);
  font-weight: 700;
  line-height: 1.1;
  margin-bottom: 20px;
  letter-spacing: -0.02em;
}

.contact-page-hero__title em {
  font-style: italic;
  color: var(--color-green-bright);
}

.contact-page-hero__desc {
  font-size: clamp(1rem, 1.3vw, 1.125rem);
  line-height: 1.75;
  color: rgba(255, 255, 255, 0.82);
  margin-bottom: 28px;
  max-width: 540px;
}

.contact-page-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
}

.contact-page-hero__card {
  padding: 28px 24px;
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(201, 162, 39, 0.35);
  border-radius: 16px;
  backdrop-filter: blur(12px);
  max-width: 320px;
  margin: 0 auto;
}

.contact-page-hero__card-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 56px;
  height: 56px;
  border-radius: 12px;
  background: rgba(201, 162, 39, 0.15);
  color: var(--color-accent);
  margin-bottom: 16px;
}

.contact-page-hero__card strong {
  display: block;
  font-family: var(--font-display);
  font-size: 1.125rem;
  font-weight: 700;
  color: var(--color-white);
  margin-bottom: 8px;
  line-height: 1.35;
}

.contact-page-hero__card span {
  font-size: 0.875rem;
  color: rgba(255, 255, 255, 0.68);
  line-height: 1.6;
}

.contact-page-hero__metrics {
  position: relative;
  z-index: 2;
  margin-top: auto;
  padding-top: clamp(24px, 4vw, 40px);
  border-top: 1px solid rgba(255, 255, 255, 0.08);
}

.contact-page-hero__metrics-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: clamp(16px, 3vw, 32px);
  list-style: none;
  padding: 0;
  margin: 0;
}

.contact-page-metric {
  text-align: center;
}

.contact-page-metric__value {
  display: block;
  font-family: var(--font-display);
  font-size: clamp(1.5rem, 3vw, 2rem);
  font-weight: 700;
  color: var(--color-accent);
  margin-bottom: 4px;
}

.contact-page-metric__label {
  font-size: 0.75rem;
  font-weight: 500;
  color: rgba(255, 255, 255, 0.65);
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.contact-page-info__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
  margin-top: 48px;
}

.contact-page-info-card {
  padding: 28px 24px;
  background: var(--color-bg-muted);
  border: 1px solid rgba(12, 35, 64, 0.06);
  border-radius: var(--radius-md);
  transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;
}

.contact-page-info-card:hover {
  transform: translateY(-4px);
  box-shadow: var(--shadow-md);
  border-color: rgba(201, 162, 39, 0.25);
}

.contact-page-info-card__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  border-radius: 12px;
  background: var(--color-icon-soft);
  color: var(--color-icon);
  margin-bottom: 16px;
}

.contact-page-info-card__title {
  font-family: var(--font-display);
  font-size: 1.125rem;
  font-weight: 700;
  color: var(--color-primary);
  margin-bottom: 8px;
}

.contact-page-info-card__text {
  font-size: 0.9375rem;
  color: var(--color-text);
  line-height: 1.6;
  margin-bottom: 8px;
}

.contact-page-info-card__text a {
  color: var(--color-primary);
  font-weight: 600;
  transition: color 0.2s ease;
}

.contact-page-info-card__text a:hover {
  color: var(--color-accent);
}

.contact-page-info-card__meta {
  font-size: 0.8125rem;
  color: var(--color-text-muted);
}

.contact-page-info__hubs {
  margin-top: 32px;
  padding: 20px 24px;
  text-align: center;
  background: linear-gradient(135deg, rgba(12, 35, 64, 0.04) 0%, rgba(201, 162, 39, 0.08) 100%);
  border-radius: var(--radius-md);
  border: 1px solid rgba(201, 162, 39, 0.15);
  font-size: 0.9375rem;
  color: var(--color-text-muted);
}

.contact-page-info__hubs strong {
  color: var(--color-primary);
  margin-right: 8px;
}

.contact-page-form__grid {
  display: grid;
  grid-template-columns: 1fr 1.15fr;
  gap: clamp(40px, 6vw, 72px);
  align-items: start;
}

.contact-page-form__desc {
  color: rgba(255, 255, 255, 0.72);
  line-height: 1.8;
  margin-bottom: 28px;
  max-width: 440px;
}

.contact-page-form__highlights {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.contact-page-form__highlights li {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  font-size: 0.9375rem;
  color: rgba(255, 255, 255, 0.78);
  line-height: 1.55;
}

.contact-page-form__highlights svg {
  flex-shrink: 0;
  color: var(--color-green-bright);
  margin-top: 2px;
}

.contact-page-form__form {
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: var(--radius-md);
  padding: clamp(28px, 4vw, 40px);
}

.contact-page-form__form .form-group label {
  color: rgba(255, 255, 255, 0.9);
}

.contact-page-form__form .form-group input,
.contact-page-form__form .form-group select,
.contact-page-form__form .form-group textarea {
  background: rgba(255, 255, 255, 0.06);
  border-color: rgba(255, 255, 255, 0.12);
  color: var(--color-white);
}

.contact-page-form__form .form-group input::placeholder,
.contact-page-form__form .form-group textarea::placeholder {
  color: rgba(255, 255, 255, 0.35);
}

.contact-page-form__form .form-group select option {
  background: var(--color-primary);
  color: var(--color-white);
}

.contact-page-map__layout {
  display: grid;
  grid-template-columns: 1.4fr 1fr;
  gap: 32px;
  margin-top: 48px;
  align-items: stretch;
}

.contact-page-map__embed {
  min-height: 420px;
  border-radius: var(--radius-md);
  overflow: hidden;
  border: 1px solid rgba(12, 35, 64, 0.08);
  box-shadow: var(--shadow-md);
}

.contact-page-map__embed iframe {
  display: block;
  min-height: 420px;
}

.contact-page-map__sidebar {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.contact-page-map__office {
  padding: 24px;
  background: var(--color-bg-muted);
  border-radius: var(--radius-md);
  border: 1px solid rgba(12, 35, 64, 0.06);
}

.contact-page-map__office h3 {
  font-family: var(--font-display);
  font-size: 1.0625rem;
  font-weight: 700;
  color: var(--color-primary);
  margin-bottom: 8px;
}

.contact-page-map__office p {
  font-size: 0.9375rem;
  color: var(--color-text-muted);
  line-height: 1.6;
  margin-bottom: 12px;
}

.contact-page-map__link {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--color-accent);
  transition: color 0.2s ease;
}

.contact-page-map__link:hover {
  color: var(--color-primary);
}

.contact-page-social__inner {
  display: grid;
  grid-template-columns: 1fr 1.2fr;
  gap: clamp(32px, 5vw, 64px);
  align-items: center;
}

.contact-page-social__desc {
  color: var(--color-text-muted);
  line-height: 1.8;
  max-width: 420px;
}

.contact-page-social__links {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
}

.contact-page-social__link {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 24px 16px;
  background: var(--color-white);
  border: 1px solid rgba(12, 35, 64, 0.08);
  border-radius: var(--radius-md);
  color: var(--color-primary);
  font-size: 0.8125rem;
  font-weight: 600;
  transition: transform 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease, color 0.3s ease;
}

.contact-page-social__link svg {
  color: var(--color-accent);
  transition: transform 0.3s ease, color 0.3s ease;
}

.contact-page-social__link:hover {
  transform: translateY(-4px);
  border-color: rgba(201, 162, 39, 0.35);
  box-shadow: var(--shadow-md);
  color: var(--color-accent);
}

.contact-page-social__link:hover svg {
  transform: scale(1.1);
  color: var(--color-primary);
}

.contact-page-faq__list {
  max-width: 800px;
  margin: 48px auto 0;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.contact-page-faq__item {
  background: var(--color-bg-muted);
  border: 1px solid rgba(12, 35, 64, 0.06);
  border-radius: var(--radius-md);
  overflow: hidden;
  transition: border-color 0.25s ease, box-shadow 0.25s ease;
}

.contact-page-faq__item[open] {
  border-color: rgba(201, 162, 39, 0.3);
  box-shadow: var(--shadow-sm);
}

.contact-page-faq__question {
  padding: 20px 24px;
  font-size: 1rem;
  font-weight: 600;
  color: white;
  cursor: pointer;
  list-style: none;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.contact-page-faq__question::-webkit-details-marker {
  display: none;
}

.contact-page-faq__question::after {
  content: '+';
  flex-shrink: 0;
  width: 28px;
  height: 28px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: rgba(12, 35, 64, 0.06);
  color: var(--color-accent);
  font-size: 1.25rem;
  font-weight: 400;
  transition: transform 0.25s ease, background 0.25s ease;
}

.contact-page-faq__item[open] .contact-page-faq__question::after {
  content: '−';
  background: rgba(201, 162, 39, 0.15);
}

.contact-page-faq__question:hover {
  color: var(--color-accent);
}

.contact-page-faq__answer {
  padding: 0 24px 20px;
  font-size: 0.9375rem;
  color: white;
  line-height: 1.75;
}

.contact-page-faq__answer a {
  color: var(--color-accent);
  font-weight: 600;
}

.contact-page-faq__answer a:hover {
  text-decoration: underline;
}

.contact-page-cta {
  padding: clamp(64px, 8vw, 96px) 0;
  background:
    linear-gradient(135deg, rgba(12, 35, 64, 0.97) 0%, rgba(7, 13, 22, 0.98) 100%),
    url('https://images.unsplash.com/photo-1451187580459-43490279c0fa?w=1920&q=30') center / cover no-repeat;
  color: var(--color-white);
}

.contact-page-cta__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: clamp(24px, 4vw, 48px);
  flex-wrap: wrap;
}

.contact-page-cta__title {
  font-family: var(--font-display);
  font-size: clamp(1.75rem, 3.5vw, 2.5rem);
  font-weight: 700;
  line-height: 1.2;
  margin-bottom: 12px;
  max-width: 560px;
}

.contact-page-cta__desc {
  font-size: 1rem;
  color: rgba(255, 255, 255, 0.75);
  line-height: 1.7;
  max-width: 520px;
}

.contact-page-cta__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  flex-shrink: 0;
}

.contact-page-channels__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
  margin-top: 48px;
}

.contact-page-channel {
  padding: 28px 24px;
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: var(--radius-md);
  transition: transform 0.35s ease, border-color 0.35s ease;
}

.contact-page-channel:hover {
  transform: translateY(-4px);
  border-color: rgba(201, 162, 39, 0.35);
}

.contact-page-channel__badge {
  display: inline-block;
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  padding: 4px 10px;
  border-radius: 999px;
  background: rgba(74, 222, 128, 0.15);
  color: var(--color-green-bright);
  margin-bottom: 14px;
}

.contact-page-channel__badge--gold {
  background: var(--color-icon-soft);
  color: var(--color-icon);
}

.contact-page-channel__badge--green {
  background: rgba(74, 222, 128, 0.2);
  color: var(--color-green-bright);
}

.contact-page-channel__title {
  font-family: var(--font-display);
  font-size: 1.125rem;
  font-weight: 700;
  color: var(--color-white);
  margin-bottom: 10px;
}

.contact-page-channel__text {
  font-size: 0.875rem;
  color: rgba(255, 255, 255, 0.68);
  line-height: 1.65;
  margin-bottom: 16px;
}

.contact-page-channel__link {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--color-accent);
  transition: color 0.2s ease;
}

.contact-page-channel__link:hover {
  color: var(--color-green-bright);
}

.home-contact-teaser {
  background: linear-gradient(180deg, var(--color-bg-muted) 0%, var(--color-white) 100%);
  text-align: center;
}

.home-contact-teaser__inner {
  max-width: 640px;
  margin: 0 auto;
}

.home-contact-teaser__desc {
  color: var(--color-text-muted);
  line-height: 1.8;
  margin-bottom: 28px;
}

.home-contact-teaser__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  justify-content: center;
}

@media (max-width: 1024px) {
  .contact-page-hero__inner {
    grid-template-columns: 1fr;
  }

  .contact-page-hero__metrics-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .contact-page-info__grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .contact-page-form__grid {
    grid-template-columns: 1fr;
  }

  .contact-page-map__layout {
    grid-template-columns: 1fr;
  }

  .contact-page-social__inner {
    grid-template-columns: 1fr;
  }

  .contact-page-social__links {
    grid-template-columns: repeat(5, 1fr);
  }

  .contact-page-channels__grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .contact-page-cta__inner {
    flex-direction: column;
    text-align: center;
  }

  .contact-page-cta__actions {
    justify-content: center;
  }
}

@media (max-width: 640px) {
  .contact-page-hero {
    min-height: auto;
  }

  .contact-page-hero__metrics {
    padding-top: 24px;
  }

  .contact-page-info__grid {
    grid-template-columns: 1fr;
  }

  .contact-page-social__links {
    grid-template-columns: repeat(2, 1fr);
  }

  .contact-page-channels__grid {
    grid-template-columns: 1fr;
  }

  .contact-page-cta__actions {
    flex-direction: column;
    width: 100%;
  }

  .contact-page-cta__actions .btn {
    width: 100%;
  }

  .home-contact-teaser__actions {
    flex-direction: column;
    align-items: stretch;
  }

  .home-contact-teaser__actions .btn {
    width: 100%;
  }
}

/* Home — Next Generation Energy Platform */
.home-energy-platform__header {
  max-width: 760px;
  margin: 0 auto 48px;
  text-align: center;
}

.home-energy-platform__grid {
  display: grid;
  grid-template-columns: 1.1fr 1fr;
  gap: clamp(32px, 5vw, 56px);
  align-items: start;
  margin-bottom: 40px;
}

.home-energy-platform__lead {
  font-size: 1rem;
  line-height: 1.8;
  color: var(--color-text-muted);
  margin-bottom: 24px;
}

.home-energy-platform__lead strong {
  color: var(--color-primary);
}

.home-energy-platform__features {
  list-style: none;
  padding: 0;
  margin: 0 0 28px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.home-energy-platform__features li {
  position: relative;
  padding-left: 22px;
  font-size: 0.9375rem;
  line-height: 1.65;
  color: var(--color-text);
}

.home-energy-platform__features li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0.55em;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--color-icon);
}

.home-energy-platform__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.home-energy-platform__partner {
  margin-top: 20px;
  font-size: 0.8125rem;
  color: var(--color-text-muted);
  line-height: 1.6;
  max-width: 520px;
}

.home-energy-platform__metrics {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px;
}

.home-energy-platform__metric {
  padding: 24px 20px;
  background: var(--color-white);
  border: 1px solid rgba(12, 35, 64, 0.08);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-sm);
  transition: transform 0.3s ease, border-color 0.3s ease;
}

.home-energy-platform__metric:hover {
  transform: translateY(-3px);
  border-color: rgba(201, 162, 39, 0.3);
}

.home-energy-platform__metric strong {
  display: block;
  font-family: var(--font-display);
  font-size: 1.375rem;
  font-weight: 700;
  color: var(--color-primary);
  margin-bottom: 6px;
}

.home-energy-platform__metric span {
  font-size: 0.8125rem;
  color: var(--color-text-muted);
  line-height: 1.5;
}

.home-energy-platform__models {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}

.home-energy-platform__model {
  padding: 28px 24px;
  background: linear-gradient(135deg, rgba(12, 35, 64, 0.04) 0%, rgba(201, 162, 39, 0.08) 100%);
  border: 1px solid rgba(201, 162, 39, 0.15);
  border-radius: var(--radius-md);
}

.home-energy-platform__model-label {
  display: inline-block;
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--color-accent);
  margin-bottom: 10px;
}

.home-energy-platform__model h3 {
  font-family: var(--font-display);
  font-size: 1.125rem;
  font-weight: 700;
  color: var(--color-white);
  margin-bottom: 10px;
}

.home-energy-platform__model p {
  font-size: 0.875rem;
  line-height: 1.7;
  color: var(--color-text-muted-on-dark);
}

/* About — Burundi Masterplan */
.about-page-masterplan__grid {
  display: grid;
  grid-template-columns: 1.15fr 1fr;
  gap: clamp(32px, 5vw, 56px);
  align-items: center;
}

.about-page-masterplan__text {
  color: rgba(255, 255, 255, 0.78);
  line-height: 1.8;
  margin-bottom: 24px;
  max-width: 560px;
}

.about-page-masterplan__list {
  list-style: none;
  padding: 0;
  margin: 0 0 28px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.about-page-masterplan__list li {
  position: relative;
  padding-left: 22px;
  font-size: 0.9375rem;
  color: rgba(255, 255, 255, 0.82);
  line-height: 1.6;
}

.about-page-masterplan__list li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0.55em;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--color-green-bright);
}

.about-page-masterplan__card {
  padding: 32px 28px;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(201, 162, 39, 0.3);
  border-radius: var(--radius-md);
  backdrop-filter: blur(8px);
}

.about-page-masterplan__badge {
  display: inline-block;
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--color-accent);
  margin-bottom: 12px;
}

.about-page-masterplan__card strong {
  display: block;
  font-family: var(--font-display);
  font-size: 1.5rem;
  font-weight: 700;
  color: var(--color-white);
  margin-bottom: 10px;
}

.about-page-masterplan__card > p {
  font-size: 0.9375rem;
  color: rgba(255, 255, 255, 0.72);
  line-height: 1.7;
  margin-bottom: 24px;
}

.about-page-masterplan__stats {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}

.about-page-masterplan__stats div {
  padding: 16px;
  background: rgba(255, 255, 255, 0.04);
  border-radius: 12px;
  border: 1px solid rgba(255, 255, 255, 0.08);
}

.about-page-masterplan__stats strong {
  display: block;
  font-family: var(--font-display);
  font-size: 1.25rem;
  color: var(--color-accent);
  margin-bottom: 4px;
}

.about-page-masterplan__stats span {
  font-size: 0.75rem;
  color: rgba(255, 255, 255, 0.65);
}

@media (max-width: 1024px) {
  .home-energy-platform__grid,
  .home-energy-platform__models,
  .about-page-masterplan__grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px) {
  .home-energy-platform__metrics {
    grid-template-columns: 1fr;
  }

  .home-energy-platform__actions {
    flex-direction: column;
  }

  .home-energy-platform__actions .btn {
    width: 100%;
  }
}

/* Strategic Partners Showcase */
.strategic-partners {
  position: relative;
  overflow: hidden;
}

.strategic-partners::before {
  content: '';
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse 50% 40% at 50% 0%, rgba(201, 162, 39, 0.08) 0%, transparent 70%);
  pointer-events: none;
}

.strategic-partners__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(20px, 2.5vw, 28px);
  margin-top: 48px;
  align-items: stretch;
}

/* Homepage strategic partners — premium 3D arena carousel */
.partners-arena {
  position: relative;
  margin-top: clamp(32px, 4vw, 48px);
}

.partners-arena__fx {
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 0;
}

.partners-arena__aurora {
  position: absolute;
  inset: -8% -4%;
  background:
    radial-gradient(ellipse 55% 45% at 50% 18%, rgba(212, 175, 55, 0.16) 0%, transparent 68%),
    radial-gradient(ellipse 40% 30% at 20% 60%, rgba(80, 140, 255, 0.06) 0%, transparent 70%),
    radial-gradient(ellipse 40% 30% at 80% 55%, rgba(212, 175, 55, 0.08) 0%, transparent 70%);
  filter: blur(8px);
  animation: partnersAurora 14s ease-in-out infinite alternate;
}

.partners-arena__floor {
  position: absolute;
  left: 50%;
  bottom: 14%;
  width: min(92vw, 820px);
  height: clamp(56px, 10vw, 120px);
  transform: translateX(-50%) rotateX(78deg);
  border-radius: 50%;
  background: radial-gradient(ellipse, rgba(212, 175, 55, 0.22) 0%, transparent 72%);
  filter: blur(14px);
}

.partners-arena__scan {
  position: absolute;
  left: 50%;
  top: 42%;
  width: min(88vw, 760px);
  height: 1px;
  transform: translateX(-50%);
  background: linear-gradient(90deg, transparent, rgba(212, 175, 55, 0.35), transparent);
  opacity: 0.35;
  animation: partnersScan 5s ease-in-out infinite;
}

@keyframes partnersAurora {
  from { transform: scale(1) translateY(0); opacity: 0.85; }
  to { transform: scale(1.04) translateY(-8px); opacity: 1; }
}

@keyframes partnersScan {
  0%, 100% { opacity: 0.15; transform: translateX(-50%) scaleX(0.82); }
  50% { opacity: 0.45; transform: translateX(-50%) scaleX(1); }
}

.partners-arena__stage {
  position: relative;
  z-index: 1;
  height: clamp(620px, 62vw, 760px);
  perspective: clamp(1200px, 130vw, 2000px);
  perspective-origin: 50% 40%;
  touch-action: none;
  cursor: grab;
  user-select: none;
}

.partners-arena__stage.is-dragging {
  cursor: grabbing;
}

.partners-arena__spotlight {
  position: absolute;
  left: 50%;
  top: 46%;
  z-index: 4;
  width: min(92vw, 420px);
  transform: translate(-50%, -50%);
  pointer-events: none;
}

.partners-arena__spotlight-halo {
  position: absolute;
  inset: -18% -14%;
  border-radius: 28px;
  background: radial-gradient(circle, rgba(212, 175, 55, 0.14) 0%, transparent 68%);
  filter: blur(16px);
  animation: partnersHaloPulse 4s ease-in-out infinite;
}

.partners-arena__spotlight-frame {
  position: absolute;
  inset: -10px;
  border-radius: 26px;
  border: 1px solid rgba(212, 175, 55, 0.22);
  box-shadow:
    inset 0 0 40px rgba(212, 175, 55, 0.06),
    0 0 60px rgba(212, 175, 55, 0.08);
  pointer-events: none;
}

@keyframes partnersHaloPulse {
  0%, 100% { opacity: 0.7; transform: scale(0.98); }
  50% { opacity: 1; transform: scale(1); }
}

.partners-arena__panels {
  position: relative;
  display: grid;
  pointer-events: auto;
}

.partners-arena__panel {
  grid-area: 1 / 1;
  opacity: 0;
  transform: scale(0.92) translateY(18px);
  filter: blur(4px) brightness(0.88);
  pointer-events: none;
  transition:
    opacity 0.65s cubic-bezier(0.4, 0, 0.2, 1),
    transform 0.65s cubic-bezier(0.4, 0, 0.2, 1),
    filter 0.65s ease;
  min-height: clamp(420px, 44vw, 500px);
  box-shadow:
    0 32px 88px rgba(0, 0, 0, 0.5),
    0 0 64px rgba(212, 175, 55, 0.12);
}

.partners-arena__panel.is-active {
  opacity: 1;
  transform: scale(1) translateY(0);
  filter: none;
  pointer-events: auto;
  z-index: 2;
  border-color: rgba(212, 175, 55, 0.55);
}

.partners-arena__panel.is-active::before {
  opacity: 1;
}

/* Arena spotlight cards — dark glass premium (no white logo slab) */
.partners-arena__panel.strategic-partner-card {
  background:
    linear-gradient(168deg, rgba(28, 44, 68, 0.96) 0%, rgba(14, 24, 40, 0.98) 52%, rgba(8, 14, 26, 1) 100%);
  border-color: rgba(212, 175, 55, 0.26);
  box-shadow:
    0 32px 88px rgba(0, 0, 0, 0.5),
    0 0 64px rgba(212, 175, 55, 0.1),
    inset 0 1px 0 rgba(255, 255, 255, 0.07);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
}

.partners-arena__panel.is-active.strategic-partner-card {
  border-color: rgba(212, 175, 55, 0.48);
  box-shadow:
    0 36px 96px rgba(0, 0, 0, 0.55),
    0 0 72px rgba(212, 175, 55, 0.16),
    inset 0 1px 0 rgba(255, 255, 255, 0.09);
}

.partners-arena__panel .strategic-partner-card__media {
  padding-bottom: 4px;
}

.partners-arena__panel .strategic-partner-card__logo {
  background:
    radial-gradient(ellipse 78% 68% at 50% 42%, rgba(255, 255, 255, 0.1) 0%, transparent 68%),
    linear-gradient(155deg, rgba(255, 255, 255, 0.06) 0%, rgba(212, 175, 55, 0.05) 42%, rgba(4, 10, 20, 0.55) 100%);
  border: 1px solid rgba(212, 175, 55, 0.22);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.08),
    inset 0 -16px 32px rgba(0, 0, 0, 0.22),
    0 10px 28px rgba(0, 0, 0, 0.28);
}

.partners-arena__panel.is-active .strategic-partner-card__logo {
  border-color: rgba(212, 175, 55, 0.34);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.1),
    inset 0 -16px 32px rgba(0, 0, 0, 0.2),
    0 12px 36px rgba(0, 0, 0, 0.32),
    0 0 28px rgba(212, 175, 55, 0.08);
}

.partners-arena__panel .strategic-partner-card__body {
  border-top: 1px solid rgba(212, 175, 55, 0.12);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.02) 0%, transparent 100%);
}

.partners-arena__panel .strategic-partner-card__category {
  color: #f0dfa0;
  background: rgba(212, 175, 55, 0.14);
  border-color: rgba(212, 175, 55, 0.34);
}

.partners-arena__panel .strategic-partner-card__name {
  color: #ffffff;
  text-shadow: 0 2px 16px rgba(0, 0, 0, 0.35);
}

.partners-arena__panel .strategic-partner-card__desc {
  color: rgba(255, 255, 255, 0.86);
  -webkit-line-clamp: 5;
}

.partners-arena__panel .strategic-partner-card__link {
  color: var(--color-accent-bright);
  border-top-color: rgba(212, 175, 55, 0.22);
}

.partners-arena__panel .strategic-partner-card__link:hover {
  color: #f5e6b8;
}

.partners-arena__panel.strategic-partner-card:hover .strategic-partner-card__logo {
  border-color: rgba(212, 175, 55, 0.38);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.1),
    0 14px 40px rgba(0, 0, 0, 0.34),
    0 0 24px rgba(212, 175, 55, 0.1);
}

.partners-arena__orbit {
  position: absolute;
  inset: 0;
  z-index: 2;
  transform-style: preserve-3d;
}

.partners-arena__orbit-ring {
  position: absolute;
  left: 50%;
  top: 52%;
  border-radius: 50%;
  border: 1px solid rgba(212, 175, 55, 0.14);
  transform: translate(-50%, -50%) rotateX(68deg);
  pointer-events: none;
}

.partners-arena__orbit-ring--outer {
  width: clamp(340px, 72vw, 680px);
  height: clamp(340px, 72vw, 680px);
  animation: partnersRingSpin 48s linear infinite;
}

.partners-arena__orbit-ring--inner {
  width: clamp(280px, 58vw, 560px);
  height: clamp(280px, 58vw, 560px);
  border-color: rgba(212, 175, 55, 0.08);
  animation: partnersRingSpin 32s linear infinite reverse;
}

@keyframes partnersRingSpin {
  to { transform: translate(-50%, -50%) rotateX(68deg) rotateZ(360deg); }
}

.partners-arena__orbit-track {
  position: absolute;
  inset: 0;
  transform-style: preserve-3d;
  will-change: transform;
}

.partners-arena__node {
  position: absolute;
  left: 50%;
  top: 52%;
  width: clamp(64px, 7vw, 84px);
  height: clamp(64px, 7vw, 84px);
  margin-left: calc(clamp(64px, 7vw, 84px) / -2);
  margin-top: calc(clamp(64px, 7vw, 84px) / -2);
  padding: 0;
  border: none;
  background: transparent;
  transform-style: preserve-3d;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
}

.partners-arena__node-shell {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background: linear-gradient(145deg, rgba(255, 255, 255, 0.14), rgba(0, 0, 0, 0.35));
  border: 1px solid rgba(212, 175, 55, 0.28);
  box-shadow:
    0 8px 32px rgba(0, 0, 0, 0.35),
    inset 0 1px 0 rgba(255, 255, 255, 0.12);
  overflow: hidden;
  transform-style: preserve-3d;
  transition: border-color 0.35s ease, box-shadow 0.35s ease;
  -webkit-box-reflect: below 6px linear-gradient(to bottom, transparent, rgba(212, 175, 55, 0.12) 40%, transparent 75%);
}

.partners-arena__node.is-front .partners-arena__node-shell {
  border-color: rgba(212, 175, 55, 0.72);
  box-shadow:
    0 12px 40px rgba(0, 0, 0, 0.42),
    0 0 32px rgba(212, 175, 55, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.18);
}

.partners-arena__node-ring {
  position: absolute;
  inset: -4px;
  border-radius: 50%;
  border: 1px solid rgba(212, 175, 55, 0.45);
  opacity: 0;
  transform: scale(0.92);
  transition: opacity 0.35s ease, transform 0.35s ease;
  pointer-events: none;
}

.partners-arena__node.is-front .partners-arena__node-ring {
  opacity: 1;
  transform: scale(1);
  animation: partnersNodePulse 2.4s ease-in-out infinite;
}

@keyframes partnersNodePulse {
  0%, 100% { box-shadow: 0 0 0 0 rgba(212, 175, 55, 0.35); }
  50% { box-shadow: 0 0 0 8px rgba(212, 175, 55, 0); }
}

.partners-arena__node-shell img {
  display: block;
  width: 72%;
  height: 72%;
  object-fit: contain;
  object-position: center;
  pointer-events: none;
}

.partners-arena__toolbar {
  position: relative;
  z-index: 3;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(16px, 3vw, 28px);
  margin-top: clamp(16px, 2vw, 24px);
}

.partners-arena__arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.06);
  color: var(--color-white);
  cursor: pointer;
  transition: background 0.25s ease, border-color 0.25s ease, transform 0.25s ease, color 0.25s ease;
}

.partners-arena__arrow:hover {
  background: var(--color-icon);
  border-color: var(--color-icon);
  color: var(--color-primary);
  transform: scale(1.06);
}

.partners-arena__status {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  min-width: min(100%, 280px);
}

.partners-arena__counter {
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: rgba(212, 175, 55, 0.75);
}

.partners-arena__live-name {
  font-family: var(--font-display, 'Cinzel', serif);
  font-size: clamp(1rem, 2vw, 1.25rem);
  font-weight: 700;
  letter-spacing: 0.06em;
  color: var(--color-white);
  text-align: center;
  transition: opacity 0.35s ease, transform 0.35s ease;
}

.partners-arena__live-name.is-changing {
  opacity: 0;
  transform: translateY(6px);
}

.partners-arena__dots {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
}

.partners-arena__dot {
  width: 8px;
  height: 8px;
  padding: 0;
  border: none;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.22);
  cursor: pointer;
  transition: transform 0.25s ease, background 0.25s ease, box-shadow 0.25s ease;
}

.partners-arena__dot.is-active {
  background: var(--color-accent);
  transform: scale(1.35);
  box-shadow: 0 0 12px rgba(212, 175, 55, 0.5);
}

.partners-arena__hint {
  margin: 12px 0 0;
  text-align: center;
  font-size: 0.68rem;
  font-weight: 600;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.38);
}

.partners-arena__hint-mobile {
  display: none;
}

.partners-arena:hover .partners-arena__orbit-ring {
  animation-play-state: paused;
}

@media (max-width: 768px) {
  .partners-arena__stage {
    height: clamp(580px, 145vw, 680px);
    perspective: clamp(900px, 150vw, 1200px);
  }

  .partners-arena__spotlight {
    width: min(92vw, 360px);
    top: 44%;
  }

  .partners-arena__panel {
    min-height: clamp(400px, 118vw, 480px);
  }

  .partners-arena__hint-desktop {
    display: none;
  }

  .partners-arena__hint-mobile {
    display: inline;
  }
}

@media (prefers-reduced-motion: reduce) {
  .partners-arena__aurora,
  .partners-arena__scan,
  .partners-arena__spotlight-halo,
  .partners-arena__orbit-ring,
  .partners-arena__node-ring {
    animation: none !important;
  }
}

.home-carousel__viewport {
  overflow: hidden;
}

.home-carousel__track {
  display: flex;
  align-items: stretch;
  transition: transform 0.55s cubic-bezier(0.4, 0, 0.2, 1);
  will-change: transform;
}

.home-carousel__track .home-carousel__slide {
  flex: 0 0 auto;
  min-width: 0;
}

.home-carousel__nav {
  position: absolute;
  top: 50%;
  z-index: 3;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border: 1px solid rgba(12, 35, 64, 0.12);
  border-radius: 50%;
  background: var(--color-white);
  color: var(--color-primary);
  box-shadow: var(--shadow-md);
  cursor: pointer;
  transform: translateY(-50%);
  transition: background 0.25s ease, color 0.25s ease, border-color 0.25s ease, opacity 0.25s ease;
}

.home-carousel__nav:hover:not(:disabled) {
  background: var(--color-primary);
  color: var(--color-icon);
  border-color: var(--color-primary);
}

.home-carousel__nav:disabled {
  opacity: 0.35;
  cursor: not-allowed;
}

.home-carousel__nav--prev {
  left: -14px;
}

.home-carousel__nav--next {
  right: -14px;
}

.home-carousel__nav--dark {
  border-color: rgba(255, 255, 255, 0.15);
  background: rgba(255, 255, 255, 0.08);
  color: var(--color-white);
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.25);
}

.home-carousel__nav--dark:hover:not(:disabled) {
  background: var(--color-accent);
  color: var(--color-primary);
  border-color: var(--color-accent);
}

.home-carousel__dots {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 20px;
}

.home-carousel__dot {
  width: 10px;
  height: 10px;
  padding: 0;
  border: none;
  border-radius: 50%;
  background: rgba(12, 35, 64, 0.18);
  cursor: pointer;
  transition: transform 0.25s ease, background 0.25s ease;
}

.home-carousel__dot.is-active {
  background: var(--color-primary);
  transform: scale(1.15);
}

.home-carousel__dots--light .home-carousel__dot {
  background: rgba(255, 255, 255, 0.25);
}

.home-carousel__dots--light .home-carousel__dot.is-active {
  background: var(--color-accent);
}

@media (max-width: 768px) {
  .home-carousel__nav--prev {
    left: 4px;
  }

  .home-carousel__nav--next {
    right: 4px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .innovations-carousel__track,
  .home-carousel__track {
    transition: none;
  }
}

/* Premium partner cards — shared by partner.html grid & index.html arena */
.partners-arena__panel.strategic-partner-card,
.home-carousel__track .strategic-partner-card {
  height: auto;
  min-height: clamp(420px, 40vw, 500px);
}

.strategic-partner-card {
  position: relative;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border-radius: 20px;
  border: 1px solid rgba(212, 175, 55, 0.2);
  background:
    linear-gradient(165deg, rgba(255, 255, 255, 0.07) 0%, rgba(0, 0, 0, 0.42) 100%);
  box-shadow:
    0 4px 24px rgba(0, 0, 0, 0.22),
    inset 0 1px 0 rgba(255, 255, 255, 0.06);
  transition:
    transform 0.45s cubic-bezier(0.4, 0, 0.2, 1),
    border-color 0.45s ease,
    box-shadow 0.45s ease;
}

.strategic-partner-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: linear-gradient(90deg, transparent, var(--color-accent-bright), transparent);
  opacity: 0;
  transition: opacity 0.45s ease;
  z-index: 1;
}

.strategic-partner-card:hover {
  transform: translateY(-8px);
  border-color: rgba(212, 175, 55, 0.48);
  box-shadow:
    0 24px 64px rgba(0, 0, 0, 0.38),
    0 0 40px rgba(212, 175, 55, 0.1);
}

.partners-arena__panel.strategic-partner-card:hover {
  transform: scale(1) translateY(-6px);
  filter: none;
}

.strategic-partner-card:hover::before {
  opacity: 1;
}

.strategic-partner-card__media {
  flex-shrink: 0;
  padding: clamp(20px, 2.5vw, 28px) clamp(20px, 2.5vw, 28px) 0;
}

.strategic-partner-card__logo {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: clamp(168px, 18vw, 210px);
  padding: clamp(24px, 3vw, 36px);
  background: #ffffff;
  border-radius: 16px;
  border: 1px solid rgba(212, 175, 55, 0.14);
  box-shadow: 0 2px 20px rgba(0, 0, 0, 0.1);
  transition: border-color 0.45s ease, box-shadow 0.45s ease;
}

.strategic-partner-card:hover .strategic-partner-card__logo {
  border-color: rgba(212, 175, 55, 0.32);
  box-shadow: 0 8px 36px rgba(0, 0, 0, 0.14);
}

.strategic-partner-card__logo--wide {
  min-height: clamp(180px, 19vw, 220px);
  padding: clamp(20px, 2.5vw, 28px) clamp(28px, 3vw, 40px);
}

.strategic-partner-card__logo img {
  display: block;
  max-width: 100%;
  max-height: clamp(108px, 12vw, 148px);
  width: auto;
  height: auto;
  object-fit: contain;
  object-position: center;
  transition: transform 0.55s cubic-bezier(0.4, 0, 0.2, 1);
}

.strategic-partner-card__logo--wide img {
  max-height: clamp(120px, 13vw, 160px);
  max-width: 92%;
}

.strategic-partner-card:hover .strategic-partner-card__logo img {
  transform: scale(1.05);
}

.strategic-partner-card__body {
  display: flex;
  flex-direction: column;
  flex: 1;
  padding: clamp(20px, 2.5vw, 28px);
  min-height: 0;
}

.strategic-partner-card__category {
  display: inline-flex;
  align-self: flex-start;
  padding: 5px 12px;
  font-size: 0.625rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--color-accent-bright);
  background: rgba(212, 175, 55, 0.1);
  border: 1px solid rgba(212, 175, 55, 0.28);
  border-radius: 999px;
  margin-bottom: 14px;
}

.strategic-partner-card__name {
  font-family: var(--font-display);
  font-size: clamp(1.125rem, 1.5vw, 1.3125rem);
  font-weight: 700;
  color: var(--color-white);
  margin-bottom: 12px;
  line-height: 1.3;
  letter-spacing: 0.01em;
}

.strategic-partner-card__desc {
  flex: 1;
  font-size: clamp(0.8125rem, 0.95vw, 0.875rem);
  line-height: 1.75;
  color: rgba(255, 255, 255, 0.72);
  margin-bottom: 0;
  display: -webkit-box;
  -webkit-line-clamp: 6;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.strategic-partner-card__link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: auto;
  padding-top: 20px;
  font-size: 0.8125rem;
  font-weight: 600;
  color: var(--color-accent);
  border-top: 1px solid rgba(212, 175, 55, 0.15);
  transition: color 0.3s ease, gap 0.3s ease;
}

.strategic-partner-card__link:hover {
  color: var(--color-accent-bright);
  gap: 12px;
}

.strategic-partner-card__link svg {
  flex-shrink: 0;
  color: var(--color-icon);
  transition: transform 0.3s ease, color 0.3s ease;
}

.strategic-partner-card__link:hover svg {
  color: var(--color-icon-hover);
  transform: translate(2px, -2px);
}

/* Featured / charity variant — horizontal layout on light sections */
.strategic-partner-card--featured {
  display: grid;
  grid-template-columns: minmax(260px, 360px) minmax(0, 1fr);
  grid-template-rows: auto;
  min-height: clamp(320px, 36vw, 400px);
  max-width: 960px;
  margin: 0 auto;
}

.strategic-partner-card--featured .strategic-partner-card__media {
  display: flex;
  align-items: center;
  padding: clamp(24px, 3vw, 32px);
}

.strategic-partner-card--featured .strategic-partner-card__logo {
  width: 100%;
  min-height: clamp(220px, 28vw, 300px);
}

.strategic-partner-card--featured .strategic-partner-card__logo img {
  max-height: clamp(180px, 22vw, 240px);
}

.strategic-partner-card--featured .strategic-partner-card__body {
  justify-content: center;
  padding: clamp(28px, 3.5vw, 40px);
  border-left: 1px solid rgba(212, 175, 55, 0.12);
}

.strategic-partner-card--featured .strategic-partner-card__desc {
  -webkit-line-clamp: unset;
  display: block;
  overflow: visible;
}

.strategic-partner-card--light {
  background: linear-gradient(165deg, #ffffff 0%, #f8f6f0 100%);
  border-color: rgba(212, 175, 55, 0.22);
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.08);
}

.strategic-partner-card--light:hover {
  box-shadow: 0 20px 56px rgba(0, 0, 0, 0.12), 0 0 32px rgba(212, 175, 55, 0.08);
}

.strategic-partner-card--light .strategic-partner-card__name {
  color: #0a0a0a;
}

.strategic-partner-card--light .strategic-partner-card__desc {
  color: #64748b;
}

.strategic-partner-card--light .strategic-partner-card__link {
  border-top-color: rgba(212, 175, 55, 0.2);
}

.strategic-partners__footer {
  margin-top: 48px;
  padding-top: 40px;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  text-align: center;
}

.strategic-partners__footer p {
  font-size: 1rem;
  color: rgba(255, 255, 255, 0.75);
  margin-bottom: 20px;
}

@media (max-width: 1024px) {
  .strategic-partners__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 768px) {
  .strategic-partner-card--featured {
    grid-template-columns: 1fr;
    min-height: auto;
  }

  .strategic-partner-card--featured .strategic-partner-card__body {
    border-left: none;
    border-top: 1px solid rgba(212, 175, 55, 0.12);
  }

  .partners-arena__panel.strategic-partner-card,
  .home-carousel__track .strategic-partner-card {
    min-height: clamp(400px, 115vw, 480px);
  }
}

@media (max-width: 640px) {
  .strategic-partners__grid {
    grid-template-columns: 1fr;
  }

  .strategic-partner-card__logo {
    min-height: 150px;
    padding: 20px;
  }

  .strategic-partner-card__logo img {
    max-height: 120px;
  }
}

/* Home — Market Intelligence */
.home-market-intel__header {
  max-width: 760px;
  margin: 0 auto 40px;
  text-align: center;
}

.home-market-intel__metrics {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
  margin-bottom: 48px;
}

.home-market-intel__metric {
  padding: 28px 20px;
  text-align: center;
  background: var(--color-bg-muted);
  border: 1px solid rgba(12, 35, 64, 0.06);
  border-radius: var(--radius-md);
  transition: transform 0.3s ease, border-color 0.3s ease;
}

.home-market-intel__metric:hover {
  transform: translateY(-4px);
  border-color: rgba(201, 162, 39, 0.25);
}

.home-market-intel__metric strong {
  display: block;
  font-family: var(--font-display);
  font-size: clamp(1.25rem, 2.5vw, 1.75rem);
  font-weight: 700;
  color: var(--color-primary);
  margin-bottom: 8px;
}

.home-market-intel__metric span {
  font-size: 0.8125rem;
  color: var(--color-text-muted);
  line-height: 1.5;
}

.home-market-intel__framework {
  padding: clamp(32px, 4vw, 48px);
  background: linear-gradient(135deg, rgba(12, 35, 64, 0.04) 0%, rgba(201, 162, 39, 0.06) 100%);
  border: 1px solid rgba(201, 162, 39, 0.12);
  border-radius: var(--radius-md);
}

.home-market-intel__framework-title {
  font-family: var(--font-display);
  font-size: 1.375rem;
  font-weight: 700;
  text-align: center;
  color: var(--color-white);
  margin-bottom: 32px;
}

.home-market-intel__cycle {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
  margin-bottom: 32px;
}

.home-market-intel__step {
  padding: 24px 20px;
  background: var(--color-white);
  border-radius: 12px;
  border: 1px solid rgba(12, 35, 64, 0.06);
  text-align: center;
}

.home-market-intel__step-label {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: var(--color-icon-soft);
  color: var(--color-icon);
  font-size: 0.75rem;
  font-weight: 700;
  margin-bottom: 12px;
}

.home-market-intel__step h4 {
  font-family: var(--font-display);
  font-size: 1.125rem;
  font-weight: 700;
  color: var(--color-primary);
  margin-bottom: 8px;
}

.home-market-intel__step p {
  font-size: 0.8125rem;
  color: var(--color-text-muted);
  line-height: 1.65;
}

.home-market-intel__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  justify-content: center;
}

/* Resources Page */
.resources-page-hero {
  position: relative;
  min-height: clamp(320px, 45vh, 420px);
  display: flex;
  align-items: center;
  padding: calc(var(--header-height) + 48px) 0 48px;
  color: var(--color-white);
  overflow: hidden;
}

.resources-page-hero__bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.resources-page-hero__bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.resources-page-hero__overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(105deg, rgba(7, 13, 22, 0.92) 0%, rgba(14, 30, 52, 0.85) 100%);
}

.resources-page-hero__inner {
  position: relative;
  z-index: 2;
}

.resources-page-hero__label {
  display: inline-block;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--color-accent);
  margin-bottom: 12px;
}

.resources-page-hero__title {
  font-family: var(--font-display);
  font-size: clamp(2rem, 4vw, 3rem);
  font-weight: 700;
  line-height: 1.15;
  margin-bottom: 16px;
}

.resources-page-hero__title em {
  font-style: italic;
  color: var(--color-green-bright);
}

.resources-page-hero__desc {
  font-size: 1.0625rem;
  line-height: 1.75;
  color: rgba(255, 255, 255, 0.78);
  max-width: 640px;
}

.resources-page-stats {
  display: flex;
  justify-content: center;
  gap: clamp(24px, 4vw, 48px);
  flex-wrap: wrap;
  margin-top: 32px;
}

.resources-page-stat {
  text-align: center;
}

.resources-page-stat strong {
  display: block;
  font-family: var(--font-display);
  font-size: 2rem;
  font-weight: 700;
  color: var(--color-accent);
  margin-bottom: 4px;
}

.resources-page-stat span {
  font-size: 0.8125rem;
  color: var(--color-text-muted);
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

.resources-page-library__header {
  margin-bottom: 32px;
}

.resources-page-library__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
}

.resources-page-library__grid--single {
  grid-template-columns: 1fr;
  max-width: 720px;
}

.resource-card {
  display: flex;
  flex-direction: column;
  padding: clamp(24px, 3vw, 32px);
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: var(--radius-md);
  transition: transform 0.35s ease, border-color 0.35s ease;
}

.section:not(.section--dark) .resource-card {
  background: var(--color-bg-muted);
  border-color: rgba(12, 35, 64, 0.06);
}

.resource-card:hover {
  transform: translateY(-4px);
  border-color: rgba(201, 162, 39, 0.35);
}

.resource-card--featured {
  max-width: 100%;
}

.resource-card__type {
  display: inline-block;
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--color-accent);
  margin-bottom: 12px;
}

.resource-card__title {
  font-family: var(--font-display);
  font-size: 1.25rem;
  font-weight: 700;
  color: var(--color-primary);
  margin-bottom: 12px;
  line-height: 1.35;
}

.section--dark .resource-card__title {
  color: var(--color-white);
}

.resource-card__desc {
  flex: 1;
  font-size: 0.875rem;
  line-height: 1.7;
  color: var(--color-text-muted);
  margin-bottom: 16px;
}

.section--dark .resource-card__desc {
  color: rgba(255, 255, 255, 0.72);
}

.resource-card__highlights {
  list-style: none;
  padding: 0;
  margin: 0 0 20px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.resource-card__highlights li {
  font-size: 0.8125rem;
  color: rgba(255, 255, 255, 0.68);
  padding-left: 16px;
  position: relative;
}

.resource-card__highlights li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0.5em;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--color-green-bright);
}

.resource-card__btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: auto;
  padding: 10px 18px;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--color-primary);
  background: var(--color-white);
  border: 1px solid rgba(12, 35, 64, 0.1);
  border-radius: 8px;
  transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease;
  width: fit-content;
}

.section--dark .resource-card__btn {
  background: rgba(255, 255, 255, 0.08);
  color: var(--color-green-bright);
  border-color: rgba(255, 255, 255, 0.12);
}

.resource-card__btn:hover {
  background: var(--color-accent);
  color: var(--color-primary);
  border-color: var(--color-accent);
}

.resources-page-cta {
  padding: clamp(64px, 8vw, 96px) 0;
  background: linear-gradient(135deg, rgba(12, 35, 64, 0.97) 0%, rgba(7, 13, 22, 0.98) 100%);
  color: var(--color-white);
  text-align: center;
}

.resources-page-cta__title {
  font-family: var(--font-display);
  font-size: clamp(1.75rem, 3vw, 2.25rem);
  font-weight: 700;
  margin-bottom: 12px;
}

.resources-page-cta__desc {
  color: rgba(255, 255, 255, 0.75);
  margin-bottom: 28px;
  max-width: 520px;
  margin-left: auto;
  margin-right: auto;
}

.resources-page-cta__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  justify-content: center;
}

@media (max-width: 1024px) {
  .home-market-intel__metrics,
  .home-market-intel__cycle {
    grid-template-columns: repeat(2, 1fr);
  }

  .resources-page-library__grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px) {
  .home-market-intel__metrics,
  .home-market-intel__cycle {
    grid-template-columns: 1fr;
  }

  .home-market-intel__actions,
  .resources-page-cta__actions {
    flex-direction: column;
    align-items: stretch;
  }

  .home-market-intel__actions .btn,
  .resources-page-cta__actions .btn {
    width: 100%;
  }
}

/* ============================================
   Team Page
   ============================================ */

.team-page {
  --team-subnav-height: 52px;
}

.team-page .section[id],
.team-page-cta {
  scroll-margin-top: calc(var(--header-height) + var(--team-subnav-height));
}

.team-page-hero {
  position: relative;
  min-height: clamp(520px, 75vh, 680px);
  display: flex;
  flex-direction: column;
  align-items: stretch;
  padding: calc(var(--header-height) + 48px) 0 clamp(32px, 4vw, 48px);
  color: var(--color-white);
  overflow: hidden;
}

.team-page-hero__bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.team-page-hero__bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 20%;
}

.team-page-hero__overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(180deg, rgba(5, 9, 16, 0.45) 0%, rgba(10, 21, 38, 0.94) 100%),
    linear-gradient(105deg, rgba(7, 13, 22, 0.9) 0%, rgba(14, 30, 52, 0.78) 55%, rgba(201, 162, 39, 0.14) 100%);
}

.team-page-hero__inner {
  position: relative;
  z-index: 2;
  flex: 1;
  display: grid;
  grid-template-columns: 1fr minmax(260px, 340px);
  gap: clamp(32px, 5vw, 64px);
  align-items: center;
}

.team-page-hero__label {
  display: inline-block;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--color-accent);
  margin-bottom: 14px;
}

.team-page-hero__title {
  font-family: var(--font-display);
  font-size: clamp(2.25rem, 5vw, 3.75rem);
  font-weight: 700;
  line-height: 1.1;
  margin-bottom: 20px;
  letter-spacing: -0.02em;
}

.team-page-hero__title em {
  font-style: italic;
  color: var(--color-green-bright);
}

.team-page-hero__desc {
  font-size: clamp(1rem, 1.3vw, 1.125rem);
  line-height: 1.75;
  color: rgba(255, 255, 255, 0.82);
  max-width: 540px;
}

.team-page-hero__card {
  padding: 28px 24px;
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(201, 162, 39, 0.35);
  border-radius: 16px;
  backdrop-filter: blur(12px);
  max-width: 320px;
  margin: 0 auto;
}

.team-page-hero__card-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 56px;
  height: 56px;
  border-radius: 12px;
  background: rgba(201, 162, 39, 0.15);
  color: var(--color-accent);
  margin-bottom: 16px;
}

.team-page-hero__card strong {
  display: block;
  font-family: var(--font-display);
  font-size: 1.125rem;
  font-weight: 700;
  color: var(--color-white);
  margin-bottom: 8px;
  line-height: 1.35;
}

.team-page-hero__card span {
  font-size: 0.875rem;
  color: rgba(255, 255, 255, 0.68);
  line-height: 1.6;
}

.team-page-hero__metrics {
  position: relative;
  z-index: 2;
  margin-top: auto;
  padding-top: clamp(24px, 4vw, 40px);
  border-top: 1px solid rgba(255, 255, 255, 0.08);
}

.team-page-hero__metrics-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: clamp(16px, 3vw, 32px);
  list-style: none;
  padding: 0;
  margin: 0;
}

.team-page-metric {
  text-align: center;
}

.team-page-metric__value {
  display: block;
  font-family: var(--font-display);
  font-size: clamp(1.5rem, 3vw, 2rem);
  font-weight: 700;
  color: var(--color-accent);
  margin-bottom: 4px;
}

.team-page-metric__label {
  font-size: 0.75rem;
  font-weight: 500;
  color: rgba(255, 255, 255, 0.65);
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.team-page-intro {
  background:
    radial-gradient(ellipse 70% 45% at 50% 0%, rgba(201, 162, 39, 0.06) 0%, transparent 55%),
    var(--color-bg);
}

.team-page-intro__layout {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
  gap: clamp(40px, 5vw, 72px);
  align-items: center;
}

.team-page-intro__lead {
  font-size: 1.0625rem;
  line-height: 1.8;
  color: var(--color-text);
  margin-bottom: 16px;
}

.team-page-intro__text {
  font-size: 0.9375rem;
  line-height: 1.75;
  color: var(--color-text-muted);
  margin-bottom: 28px;
}

.team-page-intro__highlights {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 18px;
}

.team-page-intro__highlights li {
  padding: 20px 22px;
  background: var(--color-bg-muted);
  border: 1px solid rgba(12, 35, 64, 0.06);
  border-left: 3px solid var(--color-accent);
  border-radius: var(--radius-md);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.team-page-intro__highlights li:hover {
  transform: translateX(4px);
  box-shadow: var(--shadow-sm);
}

.team-page-intro__highlights strong {
  display: block;
  font-size: 0.9375rem;
  font-weight: 700;
  color: var(--color-primary);
  margin-bottom: 6px;
}

.team-page-intro__highlights span {
  font-size: 0.875rem;
  line-height: 1.65;
  color: var(--color-text-muted);
}

.team-page-intro__image-wrap {
  position: relative;
  border-radius: var(--radius-lg);
  overflow: hidden;
  box-shadow: var(--shadow-lg);
  aspect-ratio: 4 / 3;
}

.team-page-intro__image-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.6s ease;
}

.team-page-intro__image-wrap:hover img {
  transform: scale(1.04);
}

.team-page-intro__stat-panel {
  margin-top: 20px;
  padding: 22px 24px;
  background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-light) 100%);
  border-radius: var(--radius-md);
  color: var(--color-white);
}

.team-page-intro__stat-panel strong {
  display: block;
  font-family: var(--font-display);
  font-size: 1.75rem;
  font-weight: 700;
  color: var(--color-accent);
  margin-bottom: 8px;
}

.team-page-intro__stat-panel span {
  font-size: 0.875rem;
  line-height: 1.6;
  color: rgba(255, 255, 255, 0.78);
}

.team-page-leadership {
  background: var(--color-bg-sovereign);
  color: var(--color-white);
}

.team-page-leadership__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(24px, 3vw, 32px);
  margin-top: 48px;
}

.team-leader-card {
  display: grid;
  grid-template-columns: minmax(180px, 220px) minmax(0, 1fr);
  gap: 0;
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(201, 162, 39, 0.18);
  border-radius: var(--radius-lg);
  overflow: hidden;
  transition: transform 0.4s ease, border-color 0.4s ease, box-shadow 0.4s ease;
}

.team-leader-card:hover {
  transform: translateY(-6px);
  border-color: rgba(201, 162, 39, 0.45);
  box-shadow: 0 20px 48px rgba(0, 0, 0, 0.35);
}

.team-leader-card__photo {
  position: relative;
  overflow: hidden;
  min-height: 280px;
}

.team-leader-card__photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
  transition: transform 0.6s ease;
}

.team-leader-card:hover .team-leader-card__photo img {
  transform: scale(1.06);
}

.team-leader-card__photo-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 40%, rgba(5, 9, 16, 0.5) 100%);
  pointer-events: none;
}

.team-leader-card__body {
  padding: clamp(24px, 3vw, 32px);
  display: flex;
  flex-direction: column;
}

.team-leader-card__badge {
  display: inline-block;
  align-self: flex-start;
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--color-accent);
  background: rgba(201, 162, 39, 0.12);
  padding: 5px 12px;
  border-radius: 999px;
  margin-bottom: 12px;
}

.team-leader-card__name {
  font-family: var(--font-display);
  font-size: clamp(1.25rem, 2vw, 1.5rem);
  font-weight: 700;
  color: var(--color-white);
  margin-bottom: 4px;
  line-height: 1.25;
}

.team-leader-card__role {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--color-green-bright);
  margin-bottom: 14px;
}

.team-leader-card__bio {
  font-size: 0.875rem;
  line-height: 1.7;
  color: rgba(255, 255, 255, 0.72);
  margin-bottom: 18px;
  flex: 1;
}

.team-leader-card__contact {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 0.8125rem;
  color: var(--color-accent);
  margin-bottom: 14px;
  transition: color 0.25s ease;
}

.team-leader-card__contact:hover {
  color: var(--color-green-bright);
}

.team-page-members {
  background: var(--color-bg-innovations);
}

.team-page-members__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(20px, 2.5vw, 28px);
  margin-top: 48px;
}

.team-profile-card {
  background: var(--color-white);
  border: 1px solid rgba(12, 35, 64, 0.08);
  border-radius: var(--radius-lg);
  overflow: hidden;
  box-shadow: var(--shadow-sm);
  transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;
}

.team-profile-card:hover {
  transform: translateY(-8px);
  box-shadow: var(--shadow-lg);
  border-color: rgba(201, 162, 39, 0.3);
}

.team-profile-card__photo {
  position: relative;
  aspect-ratio: 4 / 4.5;
  overflow: hidden;
}

.team-profile-card__photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
  transition: transform 0.5s ease;
}

.team-profile-card:hover .team-profile-card__photo img {
  transform: scale(1.05);
}

.team-profile-card__photo::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 55%, rgba(12, 35, 64, 0.15) 100%);
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.35s ease;
}

.team-profile-card:hover .team-profile-card__photo::after {
  opacity: 1;
}

.team-profile-card__body {
  padding: 22px 24px 26px;
}

.team-profile-card__name {
  font-family: var(--font-display);
  font-size: 1.125rem;
  font-weight: 700;
  color: var(--color-primary);
  margin-bottom: 4px;
  line-height: 1.3;
}

.team-profile-card__role {
  font-size: 0.8125rem;
  font-weight: 600;
  color: var(--color-accent);
  margin-bottom: 12px;
}

.team-profile-card__bio {
  font-size: 0.8125rem;
  line-height: 1.65;
  color: var(--color-text-muted);
  margin-bottom: 16px;
}

.team-profile-card__contact {
  display: block;
  font-size: 0.75rem;
  color: var(--color-primary-light);
  margin-bottom: 14px;
  transition: color 0.25s ease;
}

.team-profile-card__contact:hover {
  color: var(--color-accent);
}

.team-profile-card__social {
  display: flex;
  align-items: center;
  gap: 10px;
}

.team-profile-card__social a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: var(--color-bg-muted);
  color: var(--color-primary);
  transition: background 0.25s ease, color 0.25s ease, transform 0.25s ease;
}

.team-profile-card__social a:hover {
  background: var(--color-primary);
  color: var(--color-accent);
  transform: translateY(-2px);
}

.team-page-values {
  background:
    radial-gradient(ellipse 80% 50% at 50% 0%, rgba(201, 162, 39, 0.08) 0%, transparent 55%),
    var(--color-bg-sovereign);
}

.team-page-values__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(16px, 2vw, 24px);
  margin-top: 48px;
  margin-bottom: clamp(48px, 6vw, 72px);
}

.team-page-value {
  padding: clamp(24px, 3vw, 32px);
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: var(--radius-md);
  transition: transform 0.35s ease, border-color 0.35s ease, background 0.35s ease;
}

.team-page-value:hover {
  transform: translateY(-4px);
  border-color: rgba(201, 162, 39, 0.35);
  background: rgba(255, 255, 255, 0.06);
}

.team-page-value__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 52px;
  height: 52px;
  border-radius: 12px;
  background: var(--color-icon-soft);
  color: var(--color-icon);
  margin-bottom: 18px;
}

.team-page-value__title {
  font-family: var(--font-display);
  font-size: 1.0625rem;
  font-weight: 700;
  color: var(--color-white);
  margin-bottom: 10px;
  line-height: 1.3;
}

.team-page-value__desc {
  font-size: 0.8125rem;
  line-height: 1.65;
  color: rgba(255, 255, 255, 0.68);
  margin: 0;
}

.team-page-expertise__heading {
  font-family: var(--font-display);
  font-size: clamp(1.375rem, 2.5vw, 1.75rem);
  font-weight: 700;
  color: var(--color-white);
  text-align: center;
  margin-bottom: 32px;
}

.team-page-expertise__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(16px, 2vw, 24px);
}

.team-page-expertise-card {
  padding: 24px 22px;
  background: linear-gradient(160deg, rgba(201, 162, 39, 0.08) 0%, rgba(255, 255, 255, 0.03) 100%);
  border: 1px solid rgba(201, 162, 39, 0.15);
  border-radius: var(--radius-md);
  transition: transform 0.35s ease, border-color 0.35s ease;
}

.team-page-expertise-card:hover {
  transform: translateY(-4px);
  border-color: rgba(74, 222, 128, 0.35);
}

.team-page-expertise-card__label {
  display: block;
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  color: var(--color-green-bright);
  margin-bottom: 10px;
}

.team-page-expertise-card__title {
  font-size: 1rem;
  font-weight: 700;
  color: var(--color-white);
  margin-bottom: 8px;
  line-height: 1.35;
}

.team-page-expertise-card__desc {
  font-size: 0.8125rem;
  line-height: 1.65;
  color: rgba(255, 255, 255, 0.65);
  margin: 0;
}

.team-page-cta {
  padding: clamp(64px, 8vw, 96px) 0;
  background:
    linear-gradient(135deg, var(--color-primary) 0%, #0a1628 50%, var(--color-primary-light) 100%);
  color: var(--color-white);
}

.team-page-cta__inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: clamp(32px, 5vw, 64px);
  align-items: center;
}

.team-page-cta__title {
  font-family: var(--font-display);
  font-size: clamp(1.75rem, 3.5vw, 2.5rem);
  font-weight: 700;
  line-height: 1.2;
  margin-bottom: 14px;
}

.team-page-cta__desc {
  font-size: 1rem;
  line-height: 1.75;
  color: rgba(255, 255, 255, 0.78);
  max-width: 560px;
  margin: 0;
}

.team-page-cta__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
}

@media (max-width: 1200px) {
  .team-page-leadership__grid {
    grid-template-columns: 1fr;
  }

  .team-page-members__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .team-page-values__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 900px) {
  .team-page-hero__inner {
    grid-template-columns: 1fr;
  }

  .team-page-hero__metrics-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .team-page-intro__layout {
    grid-template-columns: 1fr;
  }

  .team-leader-card {
    grid-template-columns: 1fr;
  }

  .team-leader-card__photo {
    min-height: 260px;
    max-height: 320px;
  }

  .team-page-expertise__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .team-page-cta__inner {
    grid-template-columns: 1fr;
    text-align: center;
  }

  .team-page-cta__desc {
    max-width: none;
  }

  .team-page-cta__actions {
    justify-content: center;
  }
}

@media (max-width: 640px) {
  .team-page-hero {
    min-height: auto;
  }

  .team-page-members__grid,
  .team-page-expertise__grid,
  .team-page-values__grid {
    grid-template-columns: 1fr;
  }

  .team-page-cta__actions {
    flex-direction: column;
    align-items: stretch;
  }

  .team-page-cta__actions .btn {
    width: 100%;
  }
}

/* Service detail modal */
.service-modal {
  position: fixed;
  inset: 0;
  z-index: 10000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}

.service-modal.is-open {
  opacity: 1;
  visibility: visible;
}

.service-modal__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(5, 9, 16, 0.72);
  backdrop-filter: blur(6px);
}

.service-modal__dialog {
  position: relative;
  z-index: 1;
  width: min(920px, 100%);
  max-height: min(90vh, 820px);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  background: var(--color-white);
  border-radius: var(--radius-lg);
  box-shadow: 0 24px 64px rgba(0, 0, 0, 0.35);
  transform: translateY(16px) scale(0.98);
  transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1);
}

.service-modal.is-open .service-modal__dialog {
  transform: translateY(0) scale(1);
}

.service-modal__close {
  position: absolute;
  top: 16px;
  right: 16px;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border: none;
  border-radius: 50%;
  background: rgba(12, 35, 64, 0.08);
  color: var(--color-primary);
  cursor: pointer;
  transition: background 0.25s ease, color 0.25s ease;
}

.service-modal__close:hover {
  background: var(--color-primary);
  color: var(--color-white);
}

.service-modal__layout {
  display: grid;
  grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr);
  align-items: stretch;
  min-height: 0;
  overflow: auto;
}

.service-modal__media {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 240px;
  max-height: min(52vh, 420px);
  padding: clamp(16px, 2.5vw, 24px);
  background:
    linear-gradient(180deg, rgba(12, 35, 64, 0.04) 0%, rgba(12, 35, 64, 0.08) 100%),
    var(--color-bg-muted);
  overflow: hidden;
}

.service-modal__media img {
  display: block;
  width: auto;
  max-width: 100%;
  height: auto;
  max-height: min(46vh, 360px);
  object-fit: contain;
  object-position: center;
  border-radius: 10px;
  box-shadow: 0 8px 28px rgba(12, 35, 64, 0.12);
}

.service-modal__body {
  padding: clamp(24px, 3vw, 36px);
  overflow-y: auto;
}

.service-modal__number {
  display: inline-block;
  font-family: var(--font-display);
  font-size: 0.875rem;
  font-weight: 700;
  color: var(--color-accent);
  margin-bottom: 10px;
}

.service-modal__title {
  font-family: var(--font-display);
  font-size: clamp(1.25rem, 2.5vw, 1.625rem);
  font-weight: 700;
  color: var(--color-primary);
  line-height: 1.25;
  margin-bottom: 12px;
}

.service-modal__summary {
  font-size: 0.9375rem;
  line-height: 1.7;
  color: var(--color-text-muted);
  margin-bottom: 18px;
}

.service-modal__details {
  list-style: none;
  padding: 0;
  margin: 0 0 24px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.service-modal__details li {
  position: relative;
  padding-left: 18px;
  font-size: 0.875rem;
  line-height: 1.65;
  color: var(--color-text);
}

.service-modal__details li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0.55em;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--color-green-bright);
}

@media (max-width: 768px) {
  .service-modal__layout {
    grid-template-columns: 1fr;
  }

  .service-modal__media {
    min-height: 200px;
    max-height: min(40vh, 280px);
    padding: 16px;
  }

  .service-modal__media img {
    max-height: min(36vh, 240px);
  }

  .service-modal__body {
    max-height: none;
  }
}

/* ============================================
   Premium Sovereign Refinements
   ============================================ */

/* Green line icons */
.gold-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--color-icon);
  filter: drop-shadow(0 0 8px var(--color-icon-glow));
}

.gold-icon svg {
  width: 100%;
  height: 100%;
}

.gold-icon--circle {
  width: 52px;
  height: 52px;
  border-radius: 50%;
  border: 1px solid var(--color-icon-border);
  background: var(--color-icon-soft);
  flex-shrink: 0;
}

/* Sovereign header */
.header--sovereign {
  background: rgba(0, 0, 0, 0.72);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border-bottom: 1px solid rgba(212, 175, 55, 0.12);
  box-shadow: none;
}

.header--sovereign.scrolled {
  background: rgba(0, 0, 0, 0.92);
  box-shadow: 0 4px 32px rgba(0, 0, 0, 0.5);
}

.header--sovereign .nav__link {
  color: rgba(255, 255, 255, 0.82);
}

.header--sovereign .nav__link:hover {
  color: var(--color-accent-bright);
  background: rgba(212, 175, 55, 0.08);
}

.header--sovereign .nav__link.active {
  color: var(--color-accent-bright);
  background: rgba(212, 175, 55, 0.12);
  box-shadow: inset 0 -2px 0 var(--color-accent);
}

.header--sovereign .menu-toggle span {
  background: var(--color-accent);
}

.btn--outline-gold {
  background: transparent;
  color: var(--color-accent);
  border: 1px solid var(--color-accent);
  padding: 10px 20px;
  font-size: 0.875rem;
}

.btn--outline-gold:hover {
  background: rgba(212, 175, 55, 0.12);
  color: var(--color-accent-bright);
  border-color: var(--color-accent-bright);
  transform: translateY(-2px);
  box-shadow: var(--gold-glow);
}

/* Top bar — deep midnight */
.top-bar {
  background: #000000;
  border-bottom: 1px solid rgba(212, 175, 55, 0.1);
}

/* Hero — split layout */
.hero__grid-pattern {
  position: absolute;
  inset: 0;
  z-index: 1;
  opacity: 0.35;
  background-image:
    radial-gradient(circle at 20% 30%, var(--color-teal-glow) 0%, transparent 25%),
    radial-gradient(circle at 80% 70%, rgba(212, 175, 55, 0.08) 0%, transparent 30%),
    linear-gradient(rgba(45, 212, 191, 0.03) 1px, transparent 1px),
    linear-gradient(90deg, rgba(45, 212, 191, 0.03) 1px, transparent 1px);
  background-size: auto, auto, 48px 48px, 48px 48px;
  pointer-events: none;
}

.hero__overlay {
  background:
    linear-gradient(180deg, rgba(0, 0, 0, 0.55) 0%, rgba(0, 0, 0, 0.35) 45%, rgba(0, 0, 0, 0.88) 100%),
    linear-gradient(105deg, rgba(0, 0, 0, 0.85) 0%, rgba(0, 0, 0, 0.65) 50%, rgba(0, 0, 0, 0.45) 100%);
}

.hero__main {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 420px);
  gap: clamp(32px, 5vw, 64px);
  align-items: center;
  width: 100%;
}

.hero__eyebrow {
  font-size: 0.6875rem;
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--color-accent);
  margin-bottom: 16px;
}

.hero__title {
  font-family: var(--font-display);
  font-size: clamp(2rem, 4.5vw, 3.5rem);
  line-height: 1.08;
  margin-bottom: 16px;
}

.hero__title-accent {
  display: block;
  color: var(--color-accent-bright);
  text-shadow: 0 0 40px rgba(212, 175, 55, 0.25);
}

.hero__subtitle--green {
  font-size: clamp(0.9375rem, 1.5vw, 1.125rem);
  font-weight: 600;
  color: var(--color-green-bright);
  letter-spacing: 0.02em;
}

.hero__btn--outline {
  background: transparent;
  color: var(--color-accent);
  border: 1px solid var(--color-accent);
}

.hero__btn--outline:hover {
  background: rgba(212, 175, 55, 0.1);
  border-color: var(--color-accent-bright);
  color: var(--color-accent-bright);
  transform: translateY(-2px);
  box-shadow: var(--gold-glow);
}

.hero__btn--gold {
  background: linear-gradient(135deg, var(--color-accent) 0%, var(--color-accent-bright) 100%);
  color: #000;
  font-weight: 700;
}

/* Hero visual video */
.hero__visual {
  position: relative;
  aspect-ratio: 1;
  max-width: 420px;
  justify-self: end;
  width: 100%;
  overflow: visible;
}

.hero__visual-frame {
  position: absolute;
  inset: 0;
}

.hero__visual-rings {
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
}

.hero__visual-ring {
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  border-radius: 50%;
  aspect-ratio: 1;
}

.hero__visual-ring--outer {
  width: 112%;
  height: 112%;
  border: 1px dashed rgba(45, 212, 191, 0.45);
  animation: heroVisualRingSpin 22s linear infinite;
}

.hero__visual-ring--mid {
  width: 104%;
  height: 104%;
  border: 2px solid rgba(212, 175, 55, 0.35);
  box-shadow:
    0 0 24px rgba(212, 175, 55, 0.12),
    inset 0 0 24px rgba(212, 175, 55, 0.06);
  animation: heroVisualRingSpin 14s linear infinite reverse;
}

.hero__visual-ring--inner {
  width: 98%;
  height: 98%;
  border: 2px solid transparent;
  border-top-color: rgba(212, 175, 55, 0.75);
  border-right-color: rgba(45, 212, 191, 0.45);
  border-bottom-color: rgba(212, 175, 55, 0.25);
  animation: heroVisualRingSpin 9s linear infinite, heroVisualRingPulse 3.5s ease-in-out infinite;
}

.hero__visual-orbit {
  position: absolute;
  inset: -4%;
  animation: heroVisualRingSpin 16s linear infinite;
}

.hero__visual-orbit-dot {
  position: absolute;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--color-accent-bright);
  box-shadow: 0 0 12px rgba(212, 175, 55, 0.8);
}

.hero__visual-orbit-dot--1 {
  top: 0;
  left: 50%;
  translate: -50% 0;
}

.hero__visual-orbit-dot--2 {
  bottom: 8%;
  left: 6%;
  background: var(--color-teal);
  box-shadow: 0 0 12px rgba(45, 212, 191, 0.8);
}

.hero__visual-orbit-dot--3 {
  bottom: 12%;
  right: 4%;
  width: 6px;
  height: 6px;
}

@keyframes heroVisualRingSpin {
  from { rotate: 0deg; }
  to { rotate: 360deg; }
}

@keyframes heroVisualRingPulse {
  0%, 100% { opacity: 0.65; scale: 1; }
  50% { opacity: 1; scale: 1.02; }
}

.hero__visual-video {
  position: absolute;
  inset: 6%;
  z-index: 1;
  border-radius: 50%;
  overflow: hidden;
  box-shadow:
    0 0 40px rgba(212, 175, 55, 0.18),
    0 12px 40px rgba(0, 0, 0, 0.45);
}

.hero__visual-video video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
}

/* Stats — icon above number */
.hero__stats {
  border-top: 1px solid rgba(212, 175, 55, 0.2);
  padding-top: clamp(20px, 3vw, 32px);
  gap: clamp(12px, 1.5vw, 20px);
}

.hero__stat {
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 8px;
  padding: clamp(16px, 2vw, 24px) clamp(10px, 1.2vw, 16px);
  background: rgba(0, 0, 0, 0.5);
  border: 1px solid rgba(212, 175, 55, 0.18);
}

.hero__stat:hover {
  border-color: rgba(212, 175, 55, 0.45);
  background: rgba(212, 175, 55, 0.06);
  box-shadow: var(--gold-glow);
}

.hero__stat-icon {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: var(--color-icon-soft);
  border: 1px solid var(--color-icon-border);
  overflow: visible;
  box-shadow: none;
}

.hero__stat-value {
  font-family: var(--font-display);
  font-size: clamp(1rem, 1.4vw, 1.375rem);
  color: var(--color-accent-bright);
  margin-bottom: 0;
}

.hero__stat-label {
  color: rgba(255, 255, 255, 0.6);
  font-size: clamp(0.625rem, 0.8vw, 0.75rem);
}

/* About pillar icons */
.about__pillar-icon.gold-icon--circle {
  margin-top: 0;
}

.about__card {
  border-color: rgba(212, 175, 55, 0.15);
}

.about__card--map {
  border: 1px solid rgba(212, 175, 55, 0.25);
  box-shadow: var(--teal-glow), inset 0 0 40px rgba(45, 212, 191, 0.05);
}

/* Service cards — gold frame */
.service-card {
  border-color: rgba(212, 175, 55, 0.2);
  background: rgba(0, 0, 0, 0.4);
}

.service-card:hover {
  border-color: rgba(212, 175, 55, 0.5);
  box-shadow: var(--gold-glow), 0 16px 48px rgba(0, 0, 0, 0.4);
}

.service-card__read-more {
  color: var(--color-accent);
  border-color: rgba(212, 175, 55, 0.45);
}

.service-card__read-more:hover {
  background: var(--color-accent);
  color: #000;
  border-color: var(--color-accent);
}

/* Industries — vertical icon grid */
.industry-card {
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: clamp(20px, 2.5vw, 28px) clamp(14px, 1.5vw, 18px);
  background: rgba(0, 0, 0, 0.35);
  border-color: rgba(212, 175, 55, 0.15);
  border-radius: var(--radius-md);
}

.industry-card__icon {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  border: 1px solid var(--color-icon-border);
  background: var(--color-icon-soft);
  overflow: visible;
  box-shadow: none;
  margin-bottom: 4px;
}

.industry-card__icon img {
  display: none;
}

.industry-card__content {
  width: 100%;
}

.industry-card__title {
  font-size: clamp(0.75rem, 0.9vw, 0.8125rem);
  margin-bottom: 6px;
}

.industry-card__desc {
  font-size: clamp(0.625rem, 0.75vw, 0.6875rem);
}

/* Featured innovations — horizontal cards */
.innovations {
  background:
    radial-gradient(ellipse 70% 50% at 50% 0%, var(--color-glow-gold) 0%, transparent 55%),
    linear-gradient(180deg, #000 0%, #050505 50%, #000 100%);
  color: var(--color-text-on-dark);
}

.innovations-featured {
  display: flex;
  flex-direction: column;
  gap: clamp(16px, 2vw, 24px);
  margin-bottom: clamp(40px, 5vw, 56px);
}

.innovation-featured {
  display: grid;
  grid-template-columns: minmax(200px, 340px) minmax(0, 1fr);
  gap: 0;
  border: 1px solid rgba(212, 175, 55, 0.25);
  border-radius: var(--radius-md);
  overflow: hidden;
  background: rgba(0, 0, 0, 0.5);
  transition: border-color 0.35s ease, box-shadow 0.35s ease, transform 0.35s ease;
}

.innovation-featured:hover {
  border-color: rgba(212, 175, 55, 0.5);
  box-shadow: var(--gold-glow);
  transform: translateY(-3px);
}

.innovation-featured__media {
  aspect-ratio: 16 / 10;
  overflow: hidden;
}

.innovation-featured__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.6s ease;
}

.innovation-featured:hover .innovation-featured__media img {
  transform: scale(1.05);
}

.innovation-featured__body {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: clamp(24px, 3vw, 36px);
  border-left: 1px solid rgba(212, 175, 55, 0.15);
}

.innovation-featured__title {
  font-family: var(--font-display);
  font-size: clamp(1.125rem, 1.8vw, 1.375rem);
  font-weight: 700;
  color: var(--color-accent-bright);
  margin-bottom: 12px;
  line-height: 1.25;
}

.innovation-featured__desc {
  font-size: clamp(0.875rem, 1vw, 0.9375rem);
  line-height: 1.7;
  color: rgba(255, 255, 255, 0.72);
  margin-bottom: 20px;
}

.innovation-featured__btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  align-self: flex-start;
  padding: 10px 20px;
  font-size: 0.8125rem;
  font-weight: 600;
  color: var(--color-accent);
  border: 1px solid rgba(212, 175, 55, 0.45);
  border-radius: var(--radius-sm);
  transition: all 0.3s ease;
}

.innovation-featured__btn:hover {
  background: rgba(212, 175, 55, 0.12);
  border-color: var(--color-accent-bright);
  color: var(--color-accent-bright);
}

.innovations-carousel-label {
  text-align: center;
  margin-bottom: 16px;
}

.innovations-carousel-label span {
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.45);
}

.innovations-carousel__nav {
  background: rgba(0, 0, 0, 0.8);
  border-color: rgba(212, 175, 55, 0.3);
  color: var(--color-accent);
}

.innovations-carousel__nav:hover:not(:disabled) {
  background: var(--color-accent);
  color: #000;
  border-color: var(--color-accent);
}

.innovations-carousel__dot {
  background: rgba(212, 175, 55, 0.25);
}

.innovations-carousel__dot.is-active {
  background: var(--color-accent);
}

.innovation-card--compact .innovation-card__overlay {
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.75) 100%);
}

/* Footer seal */
.footer__seal {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  padding: clamp(32px, 4vw, 48px) 0;
  border-bottom: 1px solid rgba(212, 175, 55, 0.15);
}

.footer__seal-img {
  width: clamp(80px, 10vw, 120px);
  height: auto;
  border-radius: 50%;
  border: 2px solid rgba(212, 175, 55, 0.4);
  box-shadow: 0 0 32px rgba(212, 175, 55, 0.2);
}

.footer__seal-tagline {
  font-family: var(--font-display);
  font-size: clamp(0.875rem, 1.2vw, 1.0625rem);
  font-weight: 600;
  letter-spacing: 0.06em;
  color: var(--color-accent);
  text-align: center;
}

/* Geo map glow */
.geo-focus__map {
  box-shadow: var(--teal-glow), inset 0 0 60px rgba(45, 212, 191, 0.05);
}

.geo-focus__map-img {
  filter: brightness(0.85) contrast(1.1);
}

/* Core pillars enhancement */
.core-pillar-card {
  border: 1px solid rgba(212, 175, 55, 0.2);
}

.core-pillar-card:hover {
  border-color: rgba(212, 175, 55, 0.45);
  box-shadow: var(--gold-glow);
}

/* Home contact teaser */
.home-contact-teaser {
  background:
    radial-gradient(ellipse 60% 50% at 50% 100%, var(--color-glow-gold) 0%, transparent 55%),
    #000;
  color: var(--color-text-on-dark);
}

.home-contact-teaser .section-title {
  color: var(--color-white);
}

/* Responsive hero */
@media (max-width: 1024px) {
  .hero__main {
    grid-template-columns: 1fr;
  }

  .hero__visual {
    max-width: 320px;
    justify-self: center;
    order: -1;
  }

  .hero__content {
    max-width: none;
    text-align: center;
  }

  .hero__actions {
    justify-content: center;
  }

  .hero__desc {
    margin-left: auto;
    margin-right: auto;
  }
}

@media (max-width: 768px) {
  .innovation-featured {
    grid-template-columns: 1fr;
  }

  .innovation-featured__body {
    border-left: none;
    border-top: 1px solid rgba(212, 175, 55, 0.15);
  }

  .industries__grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

/* Core pillars & home sections — dark sovereign text */
.core-pillars {
  background:
    radial-gradient(ellipse 80% 50% at 50% 0%, var(--color-glow-gold) 0%, transparent 55%),
    linear-gradient(180deg, #050505 0%, #000 100%);
  color: var(--color-text-on-dark);
}

.core-pillars .section-title,
.home-energy-platform .section-title,
.home-market-intel .section-title {
  color: var(--color-white);
}

.core-pillars .section-desc,
.home-energy-platform .section-desc,
.home-market-intel .section-desc {
  color: var(--color-text-muted-on-dark);
}

.home-energy-platform .home-energy-platform__lead,
.home-energy-platform .home-energy-platform__features li,
.home-energy-platform .home-energy-platform__partner {
  color: var(--color-text-muted-on-dark);
}

.home-energy-platform .home-energy-platform__lead strong {
  color: var(--color-accent-bright);
}

.home-energy-platform__metric {
  background: rgba(0, 0, 0, 0.4);
  border: 1px solid rgba(212, 175, 55, 0.2);
}

.home-energy-platform__metric strong {
  color: var(--color-accent-bright);
}

.home-energy-platform__model {
  background: rgba(0, 0, 0, 0.35);
  border: 1px solid rgba(212, 175, 55, 0.15);
}

.home-energy-platform__model h3 {
  color: var(--color-white);
}

.home-energy-platform__model p {
  color: var(--color-text-muted-on-dark);
}

.home-market-intel {
  background:
    radial-gradient(ellipse 70% 45% at 50% 0%, var(--color-glow-gold) 0%, transparent 55%),
    #000;
  color: var(--color-text-on-dark);
}

.home-market-intel__metric {
  background: rgba(0, 0, 0, 0.4);
  border: 1px solid rgba(212, 175, 55, 0.2);
}

.home-market-intel__metric strong {
  color: var(--color-accent-bright);
}

.home-market-intel__framework {
  background: rgba(0, 0, 0, 0.35);
  border: 1px solid rgba(212, 175, 55, 0.15);
}

.home-market-intel__framework-title {
  color: var(--color-white);
}

.home-market-intel__step {
  background: rgba(212, 175, 55, 0.04);
  border: 1px solid rgba(212, 175, 55, 0.12);
}

.home-market-intel__step h4 {
  color: var(--color-accent);
}

.home-market-intel__step p {
  color: var(--color-text-muted-on-dark);
}

.page-hero--innovations {
  background:
    radial-gradient(ellipse 70% 50% at 50% 0%, var(--color-glow-gold) 0%, transparent 55%),
    linear-gradient(180deg, #080808 0%, #000 100%);
  color: var(--color-text-on-dark);
}

.page-hero--innovations .page-hero__desc {
  color: var(--color-text-muted-on-dark);
}

.about-page-highlight,
.investment-page-metric,
.contact-page-info__card,
.partner-page-benefit,
.resources-page-card {
  color: var(--color-text);
}

@media (prefers-reduced-motion: reduce) {
  .hero__visual-ring,
  .hero__visual-ring--inner,
  .hero__visual-orbit {
    animation: none;
  }

  .hero__visual-ring--inner {
    opacity: 0.85;
    scale: 1;
  }
}

/* ============================================
   Site-wide Green Icons
   ============================================ */

[class*="__icon"]:not(.workflow-step__icon),
.partner-page-charity-stat__icon,
.home-market-intel__step-label {
  color: var(--color-icon);
}

.top-bar__contact a svg {
  color: inherit;
}

.header__cta svg,
.btn--outline-gold svg,
.btn--outline svg,
.btn--outline-gold:hover svg,
.btn--outline:hover svg,
.service-card__read-more svg,
.innovation-card__btn svg,
.innovations-page-platform__btn svg,
.hero__btn:not(.hero__btn--green):not(.hero__btn--gold) svg,
.ecosystem-workflow-viz__ctrl svg,
.service-modal__close svg,
.partners-arena__dot svg {
  color: var(--color-icon);
}

.btn--primary svg,
.btn--primary:hover svg,
.hero__btn--green svg,
.hero__btn--green:hover svg {
  color: currentColor;
}

.header__cta:hover svg,
.service-card__read-more:hover svg,
.innovation-card__btn:hover svg,
.innovations-page-platform__btn:hover svg {
  color: var(--color-icon-hover);
}

.partners-arena__arrow {
  color: var(--color-icon);
}

.partners-arena__arrow:hover {
  color: var(--color-primary);
}

.home-carousel__nav--dark:hover:not(:disabled) {
  color: var(--color-icon);
}

.contact-page-channel__badge svg,
.contact-page-info-card__icon svg,
.about__pillar-icon svg,
.hero__stat-icon svg {
  color: inherit;
}
