:root {
  --navy-950: #07111f;
  --navy-900: #0b1f35;
  --navy-800: #12385d;
  --navy-panel: #0b2943;
  --navy-panel-strong: #0c2038;
  --navy-panel-blue: #12365a;
  --navy-panel-teal: #0f3d5f;
  --blue-primary: #1769e0;
  --blue-hover: #0f56b3;
  --blue-data: #2f80ed;
  --blue-soft: #eaf3ff;
  --green-primary: #12864f;
  --green-live: #22c55e;
  --green-hover: #0f6f42;
  --green-soft: #e8f8ef;
  --green-ink: #0b6f43;
  --green-lift: #86efac;
  --green-pale: #bbf7d0;
  --cyan-data: #06b6d4;
  --orange-warning: #f97316;
  --red-exception: #ef4444;
  --violet-data: #7c3aed;
  --surface-page: #eef3f8;
  --surface-section: #f7fafc;
  --surface-clean: #f7fbfa;
  --surface-cool: #eef5f9;
  --surface-card: #ffffff;
  --surface: var(--surface-card);
  --surface-soft: var(--surface-page);
  --border: #d7e1ec;
  --text-primary: #111827;
  --text-secondary: #334155;
  --text-muted: #64748b;
  --text-subtle: #475569;
  --text-tertiary: var(--text-muted);
  --navy: var(--navy-800);
  --navy-deep: var(--navy-950);
  --blue: var(--blue-primary);
  --green: var(--green-primary);
  --summit-green: var(--green-primary);
  --summit-green-bright: var(--green-live);
  --summit-green-hover: var(--green-hover);
  --amber: var(--orange-warning);
  --red: var(--red-exception);
  --chart-green: var(--green-live);
  --chart-orange: var(--orange-warning);
  --chart-orange-strong: #ea580c;
  --chart-blue: var(--blue-primary);
  --chart-cyan: var(--cyan-data);
  --chart-violet: var(--violet-data);
  --amber-soft: #fed7aa;
  --ink: var(--text-primary);
  --muted: var(--text-secondary);
  --line: var(--border);
  --paper: var(--surface);
  --soft: var(--surface-soft);
  --shadow: 0 14px 34px rgba(7, 17, 31, 0.12);
  --radius: 8px;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  overflow-x: hidden;
  background: var(--paper);
  color: var(--ink);
  font-size: 16px;
  line-height: 1.6;
}

a {
  color: inherit;
  text-decoration: none;
}

p,
h1,
h2,
h3 {
  margin-top: 0;
}

p {
  color: var(--muted);
}

h1,
h2,
h3 {
  color: var(--navy);
  line-height: 1.12;
}

h1 {
  max-width: 880px;
  margin-bottom: 1.25rem;
  font-size: 4rem;
}

h2 {
  margin-bottom: 1rem;
  font-size: 2rem;
}

h3 {
  margin-bottom: 0.7rem;
  font-size: 1.1rem;
}

ul {
  margin: 0;
  padding: 0;
}

li {
  list-style: none;
}

.container {
  width: min(1160px, calc(100% - 32px));
  margin-inline: auto;
}

.narrow {
  width: min(920px, calc(100% - 32px));
}

.section {
  padding: 82px 0;
}

.section-tight {
  padding: 58px 0;
}

.section-compact {
  padding: 48px 0;
}

.case-intro-section {
  padding: 42px 0 10px;
}

.featured-case-section {
  padding: 18px 0 52px;
}

.case-metrics-section {
  padding: 52px 0;
}

.section-muted {
  background: var(--soft);
}

.section-dark {
  background: var(--navy-deep);
  color: white;
}

.section-dark h2,
.section-dark h3 {
  color: white;
}

.section-dark p {
  color: rgba(255, 255, 255, 0.76);
}

.skip-link {
  position: fixed;
  top: 12px;
  left: 12px;
  z-index: 100;
  transform: translateY(-140%);
  border-radius: var(--radius);
  background: var(--navy);
  color: white;
  padding: 0.7rem 1rem;
}

.skip-link:focus {
  transform: translateY(0);
}

.site-header {
  position: sticky;
  top: 0;
  z-index: 50;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  background:
    linear-gradient(90deg, var(--blue), var(--green)) top / 100% 3px no-repeat,
    rgba(7, 17, 31, 0.98);
  backdrop-filter: blur(12px);
}

.nav-shell {
  display: flex;
  min-height: 76px;
  align-items: center;
  justify-content: space-between;
  gap: 1.5rem;
}

.brand {
  display: inline-flex;
  min-width: max-content;
  align-items: center;
  gap: 0.78rem;
}

.brand-mark {
  display: grid;
  width: 42px;
  height: 42px;
  place-items: center;
  border-radius: var(--radius);
  background: linear-gradient(135deg, var(--blue), var(--green));
  color: white;
  font-weight: 850;
  letter-spacing: 0;
}

.brand-logo-frame {
  display: grid;
  width: 58px;
  height: 48px;
  flex: 0 0 auto;
  place-items: center;
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: var(--radius);
  background: white;
  box-shadow: 0 10px 22px rgba(0, 0, 0, 0.18);
  padding: 4px 5px;
}

.brand-logo-frame img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.brand strong,
.brand small {
  display: block;
}

.brand strong {
  color: white;
  line-height: 1.1;
}

.brand small {
  color: rgba(255, 255, 255, 0.72);
  font-size: 0.78rem;
}

.site-nav {
  display: flex;
  align-items: center;
  gap: 0.25rem;
}

.site-nav a {
  border-radius: var(--radius);
  color: rgba(255, 255, 255, 0.82);
  font-size: 0.94rem;
  font-weight: 700;
  padding: 0.62rem 0.76rem;
}

.site-nav a:hover,
.site-nav a:focus,
.site-nav a[aria-current="page"] {
  background: rgba(255, 255, 255, 0.12);
  color: white;
}

.site-nav .nav-cta {
  margin-left: 0.35rem;
  background: var(--blue);
  box-shadow: 0 10px 22px rgba(23, 105, 224, 0.22);
  color: white;
}

.site-nav .nav-cta:hover,
.site-nav .nav-cta:focus,
.site-nav .nav-cta[aria-current="page"] {
  background: var(--blue-hover);
  color: white;
}

.menu-toggle {
  display: none;
  width: 44px;
  height: 44px;
  border: 1px solid rgba(255, 255, 255, 0.22);
  border-radius: var(--radius);
  background: rgba(255, 255, 255, 0.05);
}

.menu-toggle span:not(.sr-only) {
  display: block;
  width: 18px;
  height: 2px;
  margin: 4px auto;
  background: white;
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.hero {
  position: relative;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  background:
    linear-gradient(90deg, rgba(7, 17, 31, 0.96), rgba(7, 17, 31, 0.76)),
    url("hero-field-ops.png") center / cover no-repeat,
    var(--navy-deep);
}

.hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(255, 255, 255, 0.08) 1px, transparent 1px),
    linear-gradient(rgba(255, 255, 255, 0.08) 1px, transparent 1px);
  background-size: 72px 72px;
  opacity: 0.08;
  pointer-events: none;
}

.hero > .container {
  position: relative;
}

.hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(420px, 0.82fr);
  align-items: center;
  gap: 48px;
}

.hero-copy {
  min-width: 0;
}

.hero h1 {
  color: white;
}

.hero-subtitle,
.page-hero p,
.lead {
  max-width: 760px;
  color: var(--text-subtle);
  font-size: 1.12rem;
}

.hero .hero-subtitle {
  color: rgba(255, 255, 255, 0.82);
}

.eyebrow {
  margin-bottom: 0.82rem;
  color: var(--green);
  font-size: 0.78rem;
  font-weight: 850;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.hero .eyebrow,
.section-dark .eyebrow {
  color: var(--summit-green-bright);
}

.button-row {
  display: flex;
  flex-wrap: wrap;
  gap: 0.85rem;
  margin-top: 2rem;
}

.button {
  display: inline-flex;
  min-height: 48px;
  max-width: 100%;
  align-items: center;
  justify-content: center;
  border: 1px solid transparent;
  border-radius: var(--radius);
  cursor: pointer;
  font: inherit;
  font-weight: 800;
  line-height: 1.22;
  padding: 0.75rem 1rem;
  text-align: center;
  transition: transform 160ms ease, box-shadow 160ms ease, background 160ms ease;
  white-space: normal;
}

.button:hover,
.button:focus {
  transform: translateY(-1px);
}

.button-primary {
  border-color: var(--blue);
  background: var(--blue);
  box-shadow: 0 14px 26px rgba(23, 105, 224, 0.24);
  color: white;
}

.button-primary:hover,
.button-primary:focus {
  background: var(--blue-hover);
}

.button-secondary {
  border-color: rgba(255, 255, 255, 0.34);
  background: rgba(255, 255, 255, 0.07);
  color: white;
}

.button-light {
  background: white;
  color: var(--navy);
}

.button-outline {
  border-color: rgba(255, 255, 255, 0.44);
  background: transparent;
  color: white;
}

.button-quiet {
  border-color: var(--line);
  background: white;
  color: var(--navy);
}

.floating-whatsapp {
  position: fixed;
  right: calc(20px + env(safe-area-inset-right));
  bottom: calc(20px + env(safe-area-inset-bottom));
  z-index: 70;
  display: inline-flex;
  min-height: 54px;
  align-items: center;
  gap: 0.6rem;
  border: 1px solid rgba(255, 255, 255, 0.28);
  border-radius: 999px;
  background: var(--green);
  box-shadow: 0 16px 34px rgba(34, 197, 94, 0.34);
  color: white;
  font-weight: 850;
  padding: 0.78rem 1.05rem;
  transition: transform 160ms ease, box-shadow 160ms ease, background 160ms ease;
}

.floating-whatsapp:hover,
.floating-whatsapp:focus {
  background: var(--summit-green-hover);
  box-shadow: 0 20px 40px rgba(34, 197, 94, 0.42);
  transform: translateY(-2px);
}

.floating-whatsapp:focus-visible {
  outline: 3px solid rgba(34, 197, 94, 0.55);
  outline-offset: 4px;
}

.floating-whatsapp-icon {
  width: 1.4rem;
  height: 1.4rem;
  flex: 0 0 auto;
  fill: currentColor;
}

.hero-proof {
  display: flex;
  flex-wrap: wrap;
  gap: 0.6rem;
  margin-top: 1.5rem;
}

.hero-proof span,
.tag-row span,
.pill-list span {
  border: 1px solid rgba(34, 197, 94, 0.28);
  border-radius: 999px;
  background: var(--green-soft);
  color: var(--green-ink);
  font-size: 0.78rem;
  font-weight: 800;
  padding: 0.3rem 0.65rem;
}

.hero-proof span {
  border-color: rgba(255, 255, 255, 0.22);
  background: rgba(255, 255, 255, 0.08);
  color: white;
}

.hero-image-card {
  position: relative;
  min-width: 0;
  overflow: hidden;
  margin: 0;
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: var(--radius);
  box-shadow: 0 28px 70px rgba(0, 0, 0, 0.42);
}

.hero-image-card::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(180deg, transparent 38%, rgba(7, 17, 31, 0.72) 100%),
    linear-gradient(90deg, rgba(7, 17, 31, 0.22), transparent 42%);
}

.hero-image-card img {
  display: block;
  width: 100%;
  aspect-ratio: 1 / 0.82;
  filter: brightness(1.12) contrast(1.1) saturate(1.12);
  object-fit: cover;
  object-position: center;
}

.hero-image-card figcaption {
  position: absolute;
  right: 1rem;
  bottom: 1rem;
  left: 1rem;
  z-index: 2;
  display: grid;
  gap: 0.35rem;
  color: white;
}

.hero-image-card figcaption span {
  width: fit-content;
  border: 1px solid rgba(255, 255, 255, 0.22);
  border-radius: 999px;
  background: rgba(34, 197, 94, 0.22);
  color: var(--green-pale);
  font-size: 0.78rem;
  font-weight: 850;
  padding: 0.28rem 0.65rem;
}

.hero-image-card figcaption strong {
  max-width: 420px;
  font-size: 1.12rem;
  line-height: 1.24;
}

.executive-hero {
  padding: 70px 0 66px;
  background:
    radial-gradient(circle at 82% 22%, rgba(23, 105, 224, 0.28), transparent 30%),
    radial-gradient(circle at 72% 78%, rgba(34, 197, 94, 0.2), transparent 28%),
    linear-gradient(90deg, rgba(7, 17, 31, 0.99), rgba(7, 17, 31, 0.88)),
    var(--navy-deep);
}

.executive-hero .hero-grid {
  grid-template-columns: minmax(0, 1.08fr) minmax(420px, 0.72fr);
  gap: 44px;
}

.executive-hero h1 {
  max-width: 800px;
  letter-spacing: 0;
}

.executive-hero h1 span {
  display: block;
}

.button-text {
  min-height: 48px;
  border-color: transparent;
  background: transparent;
  color: white;
  padding-inline: 0.35rem;
}

.button-text:hover,
.button-text:focus {
  box-shadow: none;
}

.executive-hero-card figcaption strong {
  max-width: 500px;
}

.hero-platform-visual {
  position: relative;
  display: grid;
  min-width: 0;
  gap: 0.78rem;
  overflow: hidden;
  margin: 0;
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: var(--radius);
  background:
    linear-gradient(90deg, rgba(255, 255, 255, 0.055) 1px, transparent 1px),
    linear-gradient(rgba(255, 255, 255, 0.055) 1px, transparent 1px),
    linear-gradient(145deg, var(--navy-deep), var(--navy) 56%, var(--navy-panel));
  background-size: 34px 34px, 34px 34px, auto;
  box-shadow: 0 28px 70px rgba(0, 0, 0, 0.36);
  color: white;
  padding: 1rem;
}

.photo-platform-visual {
  position: relative;
  display: grid;
  min-height: 520px;
  overflow: hidden;
  margin: 0;
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: var(--radius);
  background: var(--navy-deep);
  box-shadow: 0 28px 70px rgba(0, 0, 0, 0.36);
  color: white;
  isolation: isolate;
}

.photo-platform-visual > img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  filter: brightness(1.14) contrast(1.12) saturate(1.12);
  object-fit: cover;
}

.photo-platform-overlay {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(7, 17, 31, 0.04), rgba(7, 17, 31, 0.66)),
    linear-gradient(90deg, rgba(7, 17, 31, 0.46), rgba(7, 17, 31, 0.08));
  z-index: 1;
}

.photo-platform-interface {
  position: relative;
  z-index: 2;
  align-self: end;
  display: grid;
  gap: 0.78rem;
  padding: 1rem;
}

.photo-platform-interface .hero-platform-toolbar,
.photo-platform-interface .hero-platform-grid div,
.photo-platform-interface .hero-platform-list,
.photo-platform-interface .operational-image-pane {
  background: rgba(7, 17, 31, 0.66);
  backdrop-filter: blur(14px);
}

.executive-photo-presentation {
  grid-template-rows: auto 1fr auto;
  min-height: 500px;
  border-color: rgba(134, 239, 172, 0.18);
}

.executive-photo-presentation > img {
  opacity: 1;
  object-position: center;
  transform: scale(1.01);
}

.executive-photo-presentation .photo-platform-overlay {
  background:
    linear-gradient(180deg, rgba(7, 17, 31, 0.04), rgba(7, 17, 31, 0.54)),
    linear-gradient(90deg, rgba(7, 17, 31, 0.42), rgba(7, 17, 31, 0.04) 58%);
}

.executive-photo-caption {
  position: relative;
  z-index: 2;
  align-self: start;
  display: grid;
  gap: 0.38rem;
  max-width: 340px;
  margin: 1.1rem;
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: var(--radius);
  background: rgba(7, 17, 31, 0.56);
  backdrop-filter: blur(14px);
  padding: 0.9rem;
}

.executive-photo-caption span,
.executive-digital-layer span {
  color: var(--green-lift);
  font-size: 0.72rem;
  font-weight: 850;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.executive-photo-caption strong {
  color: white;
  font-size: 1.08rem;
  line-height: 1.28;
}

.executive-digital-layer {
  position: relative;
  z-index: 2;
  align-self: end;
  display: grid;
  gap: 0.8rem;
  margin: auto 1.1rem 1.1rem;
  border: 1px solid rgba(134, 239, 172, 0.2);
  border-radius: var(--radius);
  background:
    linear-gradient(90deg, rgba(255, 255, 255, 0.055) 1px, transparent 1px),
    linear-gradient(rgba(255, 255, 255, 0.055) 1px, transparent 1px),
    rgba(7, 17, 31, 0.72);
  background-size: 30px 30px, 30px 30px, auto;
  backdrop-filter: blur(16px);
  padding: 0.95rem;
}

.executive-digital-layer strong {
  display: block;
  margin-top: 0.22rem;
  color: white;
  font-size: 1rem;
  line-height: 1.25;
}

.executive-layer-flow {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.5rem;
}

.executive-layer-flow span {
  display: block;
  border: 1px solid rgba(255, 255, 255, 0.13);
  border-radius: calc(var(--radius) - 2px);
  background: rgba(255, 255, 255, 0.08);
  color: rgba(255, 255, 255, 0.76);
  font-size: 0.68rem;
  letter-spacing: 0;
  line-height: 1.22;
  padding: 0.58rem;
  text-transform: none;
}

.hero-platform-visual::after {
  position: absolute;
  right: -18%;
  bottom: -28%;
  width: 260px;
  height: 260px;
  border-radius: 999px;
  background: rgba(34, 197, 94, 0.13);
  filter: blur(34px);
  content: "";
}

.hero-platform-toolbar,
.hero-platform-grid,
.hero-platform-body,
.hero-platform-footer {
  position: relative;
  z-index: 1;
}

.hero-platform-toolbar {
  display: flex;
  min-height: 66px;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  border: 1px solid rgba(255, 255, 255, 0.13);
  border-radius: var(--radius);
  background: rgba(255, 255, 255, 0.08);
  padding: 0.85rem 0.95rem;
}

.hero-platform-toolbar span {
  color: var(--green-lift);
  font-size: 0.74rem;
  font-weight: 850;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.hero-platform-toolbar strong {
  display: block;
  margin-top: 0.18rem;
  color: white;
  font-size: 0.98rem;
}

.hero-platform-toolbar small {
  border: 1px solid rgba(134, 239, 172, 0.24);
  border-radius: 999px;
  background: rgba(34, 197, 94, 0.12);
  color: var(--green-pale);
  font-weight: 820;
  padding: 0.36rem 0.62rem;
  white-space: nowrap;
}

.hero-platform-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.62rem;
}

.hero-platform-grid div,
.hero-platform-list div {
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: var(--radius);
  background: rgba(255, 255, 255, 0.07);
  padding: 0.68rem;
}

.hero-platform-grid span,
.hero-platform-list span {
  display: block;
  color: rgba(255, 255, 255, 0.74);
  font-size: 0.72rem;
  font-weight: 760;
  line-height: 1.25;
}

.hero-platform-grid strong,
.hero-platform-list strong {
  display: block;
  height: 8px;
  margin-top: 0.56rem;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--summit-green-bright), rgba(255, 255, 255, 0.16));
}

.hero-platform-body {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(155px, 0.58fr);
  gap: 0.68rem;
  min-height: 196px;
}

.hero-platform-list,
.operational-image-pane {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: var(--radius);
  background: rgba(255, 255, 255, 0.06);
}

.operational-image-pane {
  min-height: 100%;
  margin: 0;
  isolation: isolate;
}

.operational-image-pane img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  filter: brightness(1.16) contrast(1.14) saturate(1.14);
  object-fit: cover;
  opacity: 0.88;
  transform: scale(1.02);
}

.operational-image-pane::after {
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(180deg, rgba(7, 17, 31, 0.03), rgba(7, 17, 31, 0.52)),
    linear-gradient(90deg, rgba(7, 17, 31, 0.18), transparent);
  content: "";
}

.operational-image-pane figcaption {
  position: absolute;
  left: 0.72rem;
  bottom: 0.68rem;
  z-index: 2;
  width: fit-content;
  border: 1px solid rgba(134, 239, 172, 0.22);
  border-radius: 999px;
  background: rgba(7, 17, 31, 0.64);
  color: var(--green-pale);
  font-size: 0.68rem;
  font-weight: 850;
  letter-spacing: 0.04em;
  padding: 0.32rem 0.5rem;
  text-transform: uppercase;
}

.hero-platform-list {
  display: grid;
  gap: 0.58rem;
  padding: 0.68rem;
}

.hero-platform-footer {
  display: flex;
  flex-wrap: wrap;
  gap: 0.48rem;
}

.hero-platform-footer span {
  border: 1px solid rgba(255, 255, 255, 0.13);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.08);
  color: white;
  font-size: 0.76rem;
  font-weight: 800;
  padding: 0.32rem 0.58rem;
}

.executive-proof-section {
  border-bottom: 1px solid var(--line);
  background:
    linear-gradient(180deg, var(--surface-section) 0, white 84px),
    white;
}

.executive-proof-header {
  display: grid;
  grid-template-columns: minmax(260px, 0.62fr) minmax(0, 1fr);
  gap: 2rem;
  align-items: end;
  margin-bottom: 1.4rem;
}

.executive-proof-header h2,
.platform-intro h2,
.intelligence-copy h2,
.why-layout h2,
.about-executive h2 {
  font-size: 2.05rem;
  line-height: 1.14;
}

.executive-proof-header p {
  max-width: 650px;
  margin-bottom: 0;
  color: var(--text-subtle);
  font-size: 1.08rem;
}

.executive-proof-header p span {
  display: block;
  margin-top: 0.44rem;
  color: var(--muted);
  font-size: 0.96rem;
  line-height: 1.48;
}

.metric-context-note {
  max-width: 760px;
  margin: 0.68rem 0 0;
  color: var(--text-tertiary);
  font-size: 0.78rem;
  font-weight: 680;
  line-height: 1.45;
}

.executive-metric-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 0.85rem;
}

.executive-metric-card {
  min-height: 112px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background:
    linear-gradient(180deg, rgba(233, 243, 251, 0.72), white 72%),
    white;
  padding: 0.95rem 1.05rem;
}

.executive-metric-card strong {
  display: block;
  margin-bottom: 0.44rem;
  color: var(--navy);
  font-size: 2rem;
  line-height: 1;
}

.executive-metric-card span {
  display: block;
  color: var(--text-subtle);
  font-size: 0.92rem;
  font-weight: 760;
  line-height: 1.32;
}

.platform-intro {
  display: grid;
  grid-template-columns: minmax(280px, 0.88fr) minmax(0, 1fr);
  gap: 2rem;
  align-items: start;
  margin-bottom: 1.45rem;
}

.platform-intro .eyebrow {
  grid-column: 1 / -1;
  margin-bottom: -0.6rem;
}

.platform-intro h2 {
  max-width: 640px;
  text-transform: uppercase;
}

.platform-intro p {
  max-width: 680px;
  margin-bottom: 0;
  color: var(--text-subtle);
  font-size: 1.05rem;
}

.platform-capability-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.95rem;
}

.platform-capability-card {
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: white;
  padding: 1.2rem;
}

.platform-capability-card h3 {
  font-size: 1.06rem;
}

.platform-capability-card p {
  margin-bottom: 0;
}

.regional-section {
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  background: white;
}

.regional-panel {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 300px 250px;
  gap: 2.4rem;
  align-items: center;
}

.regional-panel h2 {
  font-size: 2rem;
}

.regional-panel p {
  max-width: 760px;
  margin-bottom: 0;
  font-size: 1.05rem;
}

.regional-statement {
  display: grid;
  gap: 0.25rem;
  border-left: 4px solid var(--green);
  padding-left: 1.1rem;
}

.regional-photo-preview {
  position: relative;
  min-height: 260px;
  overflow: hidden;
  margin: 0;
  border: 1px solid rgba(7, 17, 31, 0.14);
  border-radius: var(--radius);
  background: var(--navy-deep);
  box-shadow: 0 18px 44px rgba(7, 17, 31, 0.16);
}

.regional-photo-preview img,
.intelligence-photo-preview img {
  width: 100%;
  height: 100%;
  filter: brightness(1.13) contrast(1.12) saturate(1.12);
  object-fit: cover;
}

.regional-photo-preview img {
  position: absolute;
  inset: 0;
}

.regional-photo-preview figcaption {
  position: absolute;
  inset: auto 0 0;
  display: grid;
  gap: 0.35rem;
  background: linear-gradient(180deg, transparent, rgba(7, 17, 31, 0.74) 32%);
  color: white;
  padding: 4.5rem 1rem 1rem;
}

.regional-photo-preview figcaption span,
.intelligence-photo-preview figcaption {
  color: var(--green-lift);
  font-size: 0.72rem;
  font-weight: 850;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.regional-photo-preview figcaption strong {
  color: white;
  font-size: 0.95rem;
  line-height: 1.25;
}

.regional-statement strong,
.regional-statement span {
  color: var(--navy);
  font-size: 1.1rem;
  font-weight: 850;
  line-height: 1.25;
}

.regional-statement span {
  color: var(--blue);
}

.intelligence-layout {
  display: grid;
  grid-template-columns: minmax(0, 0.82fr) minmax(420px, 1fr);
  gap: 2.4rem;
  align-items: center;
}

.intelligence-copy p {
  max-width: 720px;
}

.intelligence-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem;
  margin-top: 1.25rem;
}

.intelligence-list span,
.executive-screen-footer span {
  border: 1px solid rgba(23, 105, 224, 0.22);
  border-radius: 999px;
  background: var(--blue-soft);
  color: var(--navy);
  font-size: 0.78rem;
  font-weight: 800;
  padding: 0.34rem 0.62rem;
}

.executive-intelligence-visual {
  display: grid;
  gap: 0.85rem;
  overflow: hidden;
  margin: 0;
  border: 1px solid rgba(7, 17, 31, 0.2);
  border-radius: var(--radius);
  background:
    linear-gradient(90deg, rgba(255, 255, 255, 0.055) 1px, transparent 1px),
    linear-gradient(rgba(255, 255, 255, 0.055) 1px, transparent 1px),
    linear-gradient(145deg, var(--navy-deep), var(--navy) 58%, var(--navy-panel));
  background-size: 34px 34px, 34px 34px, auto;
  box-shadow: 0 22px 48px rgba(7, 17, 31, 0.18);
  color: white;
  padding: 1rem;
}

.intelligence-photo-preview {
  position: relative;
  overflow: hidden;
  min-height: 150px;
  margin: 0;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: var(--radius);
  background: rgba(255, 255, 255, 0.06);
}

.intelligence-photo-preview::after {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(7, 17, 31, 0.03), rgba(7, 17, 31, 0.5));
  content: "";
}

.intelligence-photo-preview figcaption {
  position: absolute;
  left: 0.85rem;
  bottom: 0.75rem;
  z-index: 1;
}

.executive-screen-toolbar {
  display: flex;
  min-height: 70px;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  border: 1px solid rgba(255, 255, 255, 0.13);
  border-radius: var(--radius);
  background: rgba(255, 255, 255, 0.08);
  padding: 0.9rem 1rem;
}

.executive-screen-toolbar span {
  color: var(--green-lift);
  font-size: 0.76rem;
  font-weight: 850;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.executive-screen-toolbar strong {
  display: block;
  margin-top: 0.2rem;
  color: white;
}

.executive-screen-toolbar small {
  border: 1px solid rgba(134, 239, 172, 0.22);
  border-radius: 999px;
  background: rgba(34, 197, 94, 0.12);
  color: var(--green-pale);
  font-weight: 820;
  padding: 0.38rem 0.65rem;
  white-space: nowrap;
}

.executive-screen-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0.65rem;
}

.executive-screen-grid div,
.executive-table-view div {
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: var(--radius);
  background: rgba(255, 255, 255, 0.07);
  padding: 0.78rem;
}

.executive-screen-grid span,
.executive-table-view span {
  display: block;
  color: rgba(255, 255, 255, 0.72);
  font-size: 0.72rem;
  font-weight: 760;
  line-height: 1.25;
}

.executive-screen-grid strong,
.executive-table-view strong {
  display: block;
  height: 8px;
  margin-top: 0.62rem;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--summit-green-bright), rgba(255, 255, 255, 0.16));
}

.executive-screen-body {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(180px, 0.62fr);
  gap: 0.75rem;
  min-height: 240px;
}

.executive-table-view {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: var(--radius);
  background: rgba(255, 255, 255, 0.06);
}

.executive-table-view {
  display: grid;
  gap: 0.6rem;
  padding: 0.75rem;
}

.executive-screen-footer {
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem;
}

.executive-screen-footer span {
  border-color: rgba(255, 255, 255, 0.13);
  background: rgba(255, 255, 255, 0.08);
  color: white;
}

.why-layout {
  display: grid;
  grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.15fr);
  gap: 2.4rem;
  align-items: start;
}

.why-pillar-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0.9rem;
}

.why-pillar-grid article {
  min-height: 190px;
  border: 1px solid rgba(255, 255, 255, 0.13);
  border-radius: var(--radius);
  background: rgba(255, 255, 255, 0.06);
  padding: 1.15rem;
}

.why-pillar-grid h3,
.why-pillar-grid p {
  color: white;
}

.why-pillar-grid p {
  margin-bottom: 0;
  color: rgba(255, 255, 255, 0.74);
}

.about-executive {
  display: grid;
  grid-template-columns: 260px minmax(0, 1fr);
  gap: 2rem;
  align-items: start;
}

.about-executive .eyebrow {
  margin-bottom: 0;
}

.about-executive h2 {
  max-width: 920px;
  margin-bottom: 0.9rem;
}

.about-executive p {
  max-width: 760px;
  margin-bottom: 0;
  font-size: 1.05rem;
}

.section-intro {
  max-width: 760px;
  margin-bottom: 1.6rem;
}

.section-intro h2,
.service-context h2 {
  font-size: 1.78rem;
  line-height: 1.2;
}

.layer-grid,
.card-grid,
.credibility-grid,
.industry-grid,
.process-grid {
  display: grid;
  gap: 1rem;
}

.layer-grid {
  grid-template-columns: repeat(3, 1fr);
}

.card-grid.four {
  grid-template-columns: repeat(4, 1fr);
}

.card-grid.two {
  grid-template-columns: repeat(2, 1fr);
}

.layer-card,
.solution-card,
.industry-card,
.panel,
.contact-form,
.contact-panel {
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: white;
}

.layer-card,
.solution-card,
.industry-card,
.panel {
  padding: 1.35rem;
}

.layer-card span,
.process-grid span {
  display: block;
  margin-bottom: 0.45rem;
  color: var(--amber);
  font-size: 0.78rem;
  font-weight: 850;
}

.layer-card p,
.solution-card p,
.industry-card p {
  margin-bottom: 0;
}

.icon-badge {
  display: grid;
  width: 44px;
  height: 44px;
  place-items: center;
  margin-bottom: 1.1rem;
  border-radius: var(--radius);
  background: var(--blue-soft);
  color: var(--blue);
  font-size: 0.74rem;
  font-weight: 850;
}

.solution-card ul,
.feature-list {
  display: grid;
  gap: 0.5rem;
  margin-top: 1rem;
}

.solution-card li,
.feature-list li {
  position: relative;
  padding-left: 1rem;
  color: var(--muted);
}

.solution-card li::before,
.feature-list li::before {
  content: "";
  position: absolute;
  top: 0.72em;
  left: 0;
  width: 5px;
  height: 5px;
  border-radius: 999px;
  background: var(--amber);
}

.section-action {
  margin-top: 1.4rem;
}

.spotlight {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 0.75fr);
  gap: 2rem;
  align-items: start;
}

.spotlight-panel {
  border-radius: var(--radius);
  background: var(--navy);
  color: white;
  padding: 1.4rem;
}

.spotlight-panel h3 {
  color: white;
}

.spotlight-panel .feature-list {
  background: rgba(255, 255, 255, 0.06);
  border-radius: var(--radius);
  padding: 1rem;
}

.spotlight-panel .feature-list li {
  color: rgba(255, 255, 255, 0.78);
}

.credibility-layout {
  display: grid;
  grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr);
  gap: 2rem;
  align-items: start;
}

.credibility-grid {
  grid-template-columns: repeat(2, 1fr);
}

.credibility-grid article {
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: var(--radius);
  background: rgba(255, 255, 255, 0.06);
  padding: 1.15rem;
}

.credibility-grid p {
  margin-bottom: 0;
}

.industry-strip {
  display: flex;
  flex-wrap: wrap;
  gap: 0.7rem;
}

.industry-strip a {
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: white;
  color: var(--navy);
  font-weight: 800;
  padding: 0.72rem 0.9rem;
}

.page-hero {
  border-bottom: 1px solid var(--line);
  background:
    linear-gradient(90deg, rgba(233, 243, 251, 0.95), rgba(246, 248, 251, 0.95)),
    linear-gradient(90deg, rgba(7, 17, 31, 0.08) 1px, transparent 1px);
  background-size: auto, 72px 72px;
  padding: 46px 0;
}

.page-hero .narrow {
  display: grid;
  grid-template-columns: minmax(260px, 0.72fr) minmax(0, 1fr);
  align-items: end;
  gap: 0.4rem 56px;
  width: min(1160px, calc(100% - 32px));
}

.page-hero .eyebrow {
  grid-column: 1 / -1;
  margin-bottom: 0;
}

.page-hero h1 {
  max-width: 620px;
  margin-bottom: 0;
  font-size: 2.55rem;
}

.page-hero p:last-child {
  max-width: 740px;
  margin-bottom: 0;
}

.media-split,
.split {
  display: grid;
  grid-template-columns: minmax(0, 0.92fr) minmax(360px, 1fr);
  gap: 2rem;
  align-items: center;
}

.split {
  align-items: start;
  gap: 56px;
}

.service-context {
  max-width: 840px;
  border-left: 4px solid var(--green);
  padding-left: 1.25rem;
}

.visual-card {
  position: relative;
  overflow: hidden;
  margin: 0;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: white;
  box-shadow: 0 16px 34px rgba(7, 17, 31, 0.1);
}

.visual-card img {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 10;
  filter: brightness(1.12) contrast(1.11) saturate(1.12);
  object-fit: cover;
}

.visual-card figcaption {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  background: linear-gradient(180deg, transparent, rgba(7, 17, 31, 0.76));
  color: white;
  font-size: 0.92rem;
  font-weight: 760;
  line-height: 1.35;
  padding: 1rem;
}

.case-intro {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(320px, 1fr);
  gap: 2rem;
  align-items: start;
  border-bottom: 1px solid var(--line);
  padding-bottom: 1.4rem;
}

.case-intro .lead {
  margin-bottom: 0;
  color: var(--navy);
  font-size: 1.28rem;
  font-weight: 760;
  line-height: 1.32;
}

.case-intro p:last-child {
  margin-bottom: 0;
}

.featured-case {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(360px, 0.95fr);
  gap: 2rem;
  align-items: stretch;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: white;
  box-shadow: 0 18px 42px rgba(7, 17, 31, 0.1);
  padding: 1.4rem;
}

.featured-case-copy {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  padding: 1rem;
}

.featured-case-copy h2 {
  max-width: 760px;
  font-size: 2.1rem;
  line-height: 1.12;
}

.featured-case-copy p {
  max-width: 780px;
}

.outcome-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.65rem;
  margin-top: 1.1rem;
}

.outcome-grid span {
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: var(--soft);
  color: var(--text-subtle);
  font-size: 0.9rem;
  font-weight: 760;
  padding: 0.72rem 0.8rem;
}

.case-dashboard {
  position: relative;
  min-height: 560px;
  overflow: hidden;
  border-radius: var(--radius);
  background:
    radial-gradient(circle at 12% 18%, rgba(34, 197, 94, 0.22), transparent 28%),
    radial-gradient(circle at 88% 12%, rgba(249, 115, 22, 0.16), transparent 24%),
    radial-gradient(circle at 78% 86%, rgba(23, 105, 224, 0.3), transparent 28%),
    linear-gradient(145deg, var(--navy-950), var(--navy-panel-strong) 52%, var(--navy-deep));
  color: white;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.13), 0 28px 60px rgba(7, 17, 31, 0.28);
  padding: 1.05rem;
}

.case-dashboard::before {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(255, 255, 255, 0.055) 1px, transparent 1px),
    linear-gradient(rgba(255, 255, 255, 0.055) 1px, transparent 1px);
  background-size: 34px 34px;
  content: "";
  opacity: 0.62;
}

.case-dashboard::after {
  position: absolute;
  inset: auto -20% -34% 18%;
  height: 220px;
  border-radius: 999px;
  background: rgba(34, 197, 94, 0.16);
  filter: blur(48px);
  content: "";
}

.dashboard-toolbar,
.command-grid,
.command-kpis {
  position: relative;
  z-index: 1;
}

.dashboard-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  min-height: 66px;
  border: 1px solid rgba(255, 255, 255, 0.13);
  border-radius: var(--radius);
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.13), rgba(255, 255, 255, 0.055));
  box-shadow: 0 16px 38px rgba(0, 0, 0, 0.18);
  padding: 0.9rem 1rem;
}

.dashboard-toolbar span,
.widget-head span,
.map-heading span {
  color: var(--green-lift);
  font-size: 0.78rem;
  font-weight: 850;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.dashboard-toolbar strong,
.widget-head strong,
.map-heading strong {
  display: block;
  margin-top: 0.16rem;
  color: white;
  font-size: 0.98rem;
}

.dashboard-status {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  border: 1px solid rgba(134, 239, 172, 0.22);
  border-radius: 999px;
  background: rgba(34, 197, 94, 0.12);
  color: rgba(255, 255, 255, 0.86);
  font-size: 0.82rem;
  font-weight: 800;
  padding: 0.42rem 0.7rem;
  white-space: nowrap;
}

.dashboard-status span {
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: var(--summit-green-bright);
  box-shadow: 0 0 0 5px rgba(34, 197, 94, 0.14);
}

.command-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(220px, 0.82fr);
  gap: 0.85rem;
  margin-top: 0.85rem;
}

.command-map,
.command-side > div,
.command-kpis div {
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: var(--radius);
  background: linear-gradient(145deg, rgba(255, 255, 255, 0.115), rgba(255, 255, 255, 0.045));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.command-map {
  position: relative;
  min-height: 334px;
  overflow: hidden;
  padding: 0.85rem;
}

.command-map::before {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(120deg, rgba(34, 197, 94, 0.16), transparent 42%),
    radial-gradient(circle at 54% 48%, rgba(23, 105, 224, 0.2), transparent 34%);
  content: "";
}

.map-heading {
  position: relative;
  z-index: 2;
}

.territory-svg {
  position: absolute;
  inset: 36px 0 0;
  width: 100%;
  height: calc(100% - 34px);
}

.geo-shape {
  fill: rgba(23, 105, 224, 0.08);
  stroke: rgba(134, 239, 172, 0.22);
  stroke-width: 1.4;
}

.shape-two {
  fill: none;
  stroke: rgba(255, 255, 255, 0.18);
  stroke-dasharray: 4 8;
}

.geo-route {
  fill: none;
  stroke-linecap: round;
  stroke-width: 4;
}

.route-a {
  stroke: var(--summit-green-bright);
}

.route-b {
  stroke: rgba(249, 115, 22, 0.92);
}

.route-c {
  stroke: rgba(47, 128, 237, 0.9);
}

.asset-marker {
  fill: var(--navy-deep);
  stroke: white;
  stroke-width: 4;
}

.marker-one,
.marker-three {
  fill: var(--amber);
}

.marker-two,
.marker-five {
  fill: var(--green);
}

.marker-four {
  fill: var(--blue);
}

.map-float-card,
.route-compliance {
  position: absolute;
  z-index: 2;
  border-radius: var(--radius);
  background: rgba(7, 17, 31, 0.78);
  box-shadow: 0 16px 28px rgba(0, 0, 0, 0.2);
  backdrop-filter: blur(12px);
  padding: 0.8rem;
}

.map-float-card {
  right: 0.85rem;
  bottom: 0.85rem;
  min-width: 154px;
}

.map-float-card span,
.route-compliance span,
.command-kpis span {
  display: block;
  color: rgba(255, 255, 255, 0.68);
  font-size: 0.72rem;
  font-weight: 820;
  letter-spacing: 0.02em;
}

.map-float-card strong,
.route-compliance strong,
.command-kpis strong {
  display: block;
  color: white;
  font-size: 1.35rem;
  line-height: 1.05;
}

.map-float-card small {
  color: var(--green-lift);
  font-size: 0.72rem;
  font-weight: 760;
}

.route-compliance {
  left: 0.85rem;
  bottom: 0.85rem;
}

.command-side {
  display: grid;
  gap: 0.85rem;
}

.queue-card,
.trend-card,
.feed-card {
  padding: 0.85rem;
}

.queue-row {
  display: flex;
  justify-content: space-between;
  gap: 0.7rem;
  margin-top: 0.66rem;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  color: rgba(255, 255, 255, 0.74);
  font-size: 0.78rem;
  font-weight: 720;
  padding-top: 0.58rem;
}

.queue-row strong {
  color: white;
}

.trend-card svg {
  display: block;
  width: 100%;
  margin-top: 0.6rem;
}

.trend-area {
  fill: rgba(34, 197, 94, 0.18);
}

.trend-line {
  fill: none;
  stroke: var(--summit-green-bright);
  stroke-linecap: round;
  stroke-width: 4;
}

.feed-card {
  position: relative;
  padding-left: 2rem;
}

.feed-dot {
  position: absolute;
  top: 1rem;
  left: 0.8rem;
  width: 9px;
  height: 9px;
  border-radius: 999px;
  background: var(--amber);
  box-shadow: 0 0 0 6px rgba(249, 115, 22, 0.12);
}

.feed-card p {
  margin-bottom: 0.1rem;
  color: white;
  font-size: 0.85rem;
  font-weight: 780;
}

.feed-card small {
  color: rgba(255, 255, 255, 0.64);
  font-size: 0.74rem;
}

.command-kpis {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0.75rem;
  margin-top: 0.85rem;
}

.command-kpis div {
  padding: 0.85rem;
}

.metric-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 0.9rem;
}

.metric-card {
  min-height: 150px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: white;
  box-shadow: 0 12px 26px rgba(7, 17, 31, 0.08);
  padding: 1.1rem;
}

.metric-card strong {
  display: block;
  margin-bottom: 0.55rem;
  color: var(--navy);
  font-size: 1.65rem;
  line-height: 1.05;
}

.metric-card span {
  color: var(--text-subtle);
  font-size: 0.92rem;
  font-weight: 720;
  line-height: 1.35;
}

.support-case-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1rem;
}

.support-case-card {
  display: flex;
  min-height: 100%;
  flex-direction: column;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: white;
  box-shadow: 0 12px 28px rgba(7, 17, 31, 0.08);
  padding: 1.1rem;
}

.support-visual {
  position: relative;
  min-height: 190px;
  overflow: hidden;
  margin-bottom: 1.1rem;
  border-radius: var(--radius);
  background:
    linear-gradient(90deg, rgba(255, 255, 255, 0.09) 1px, transparent 1px),
    linear-gradient(rgba(255, 255, 255, 0.09) 1px, transparent 1px),
    linear-gradient(145deg, var(--navy-deep), var(--navy-panel-blue));
  background-size: 26px 26px, 26px 26px, auto;
  color: white;
}

.support-visual::before {
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 18% 22%, rgba(34, 197, 94, 0.18), transparent 30%),
    radial-gradient(circle at 84% 18%, rgba(249, 115, 22, 0.16), transparent 26%);
  content: "";
}

.mini-map-layer,
.asset-register,
.mini-qr,
.phone-mockup,
.activity-timeline,
.report-screen,
.alert-chip {
  position: absolute;
  z-index: 1;
}

.mini-map-layer {
  inset: 0.8rem;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: var(--radius);
  background: rgba(255, 255, 255, 0.045);
}

.geo-fence {
  position: absolute;
  top: 32px;
  left: 54px;
  width: 138px;
  height: 82px;
  border: 1px dashed rgba(134, 239, 172, 0.72);
  border-radius: 52% 48% 58% 42%;
  transform: rotate(-10deg);
}

.asset-pin {
  position: absolute;
  width: 12px;
  height: 12px;
  border: 3px solid white;
  border-radius: 999px;
  background: var(--green);
}

.pin-a {
  top: 46px;
  left: 70px;
}

.pin-b {
  top: 94px;
  left: 164px;
  background: var(--amber);
}

.pin-c {
  right: 48px;
  bottom: 45px;
  background: var(--blue);
}

.asset-route {
  position: absolute;
  top: 86px;
  left: 84px;
  width: 176px;
  height: 4px;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--green), var(--amber), var(--blue));
  transform: rotate(16deg);
}

.asset-register {
  right: 0.85rem;
  bottom: 0.85rem;
  display: grid;
  gap: 0.32rem;
  width: 158px;
  border: 1px solid rgba(255, 255, 255, 0.13);
  border-radius: var(--radius);
  background: rgba(7, 17, 31, 0.78);
  padding: 0.7rem;
}

.asset-register strong,
.phone-mockup strong {
  color: white;
  font-size: 0.78rem;
}

.asset-register span,
.check-row,
.report-table span {
  color: rgba(255, 255, 255, 0.68);
  font-size: 0.68rem;
  font-weight: 720;
}

.mini-qr {
  top: 1rem;
  left: 1rem;
  display: grid;
  width: 52px;
  height: 52px;
  grid-template-columns: repeat(3, 1fr);
  gap: 4px;
  border-radius: 6px;
  background: white;
  padding: 6px;
}

.mini-qr span {
  border-radius: 2px;
  background: var(--navy);
}

.mini-qr span:nth-child(2),
.mini-qr span:nth-child(5) {
  background: var(--green);
}

.field-visual {
  background:
    radial-gradient(circle at 76% 24%, rgba(249, 115, 22, 0.18), transparent 24%),
    linear-gradient(145deg, var(--navy-panel), var(--navy-panel-teal) 58%, var(--navy-deep));
}

.phone-mockup {
  top: 0.85rem;
  bottom: 0.85rem;
  left: 1rem;
  width: 142px;
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 18px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.14), rgba(255, 255, 255, 0.06));
  box-shadow: 14px 16px 34px rgba(0, 0, 0, 0.2);
  padding: 0.74rem;
}

.phone-top {
  width: 42px;
  height: 4px;
  margin: 0 auto 0.58rem;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.42);
}

.form-line {
  display: block;
  width: 66%;
  height: 8px;
  margin-top: 0.56rem;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.22);
}

.form-line.wide {
  width: 100%;
}

.photo-evidence {
  display: grid;
  height: 44px;
  place-items: center;
  margin: 0.68rem 0;
  border: 1px dashed rgba(134, 239, 172, 0.5);
  border-radius: 6px;
  color: rgba(255, 255, 255, 0.74);
  font-size: 0.66rem;
  font-weight: 780;
}

.check-row {
  display: flex;
  align-items: center;
  gap: 0.3rem;
  margin-top: 0.38rem;
}

.check-row span {
  width: 7px;
  height: 7px;
  border-radius: 999px;
  background: var(--summit-green-bright);
}

.activity-timeline {
  top: 1.6rem;
  right: 1rem;
  display: grid;
  gap: 0.62rem;
  width: 112px;
}

.activity-timeline span {
  height: 32px;
  border: 1px solid rgba(255, 255, 255, 0.13);
  border-radius: 7px;
  background: rgba(255, 255, 255, 0.08);
}

.activity-timeline span:nth-child(2) {
  width: 82%;
  justify-self: end;
}

.activity-timeline span:nth-child(3) {
  width: 68%;
}

.reporting-visual {
  background:
    radial-gradient(circle at 20% 80%, rgba(34, 197, 94, 0.18), transparent 28%),
    linear-gradient(145deg, var(--navy-deep), var(--navy));
}

.report-screen {
  inset: 0.85rem;
  display: grid;
  grid-template-rows: auto 1fr auto;
  gap: 0.62rem;
  border: 1px solid rgba(255, 255, 255, 0.13);
  border-radius: var(--radius);
  background: rgba(255, 255, 255, 0.055);
  padding: 0.72rem;
}

.report-kpis {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0.42rem;
}

.report-kpis span {
  border-radius: 6px;
  background: rgba(255, 255, 255, 0.1);
  color: rgba(255, 255, 255, 0.72);
  font-size: 0.61rem;
  font-weight: 820;
  line-height: 1.2;
  padding: 0.42rem;
}

.report-chart {
  display: flex;
  align-items: end;
  gap: 0.38rem;
  border-radius: 6px;
  background: rgba(7, 17, 31, 0.36);
  padding: 0.5rem;
}

.report-chart span {
  flex: 1;
  border-radius: 5px 5px 0 0;
  background: linear-gradient(180deg, var(--summit-green-bright), var(--blue));
}

.report-table {
  display: grid;
  gap: 0.38rem;
}

.report-table span {
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  padding-top: 0.32rem;
}

.alert-chip {
  right: 1.3rem;
  bottom: 1.25rem;
  border: 1px solid rgba(249, 115, 22, 0.32);
  border-radius: 999px;
  background: rgba(249, 115, 22, 0.14);
  color: var(--amber-soft);
  font-size: 0.68rem;
  font-weight: 850;
  padding: 0.35rem 0.55rem;
}

.support-case-card h3 {
  font-size: 1.15rem;
}

.support-case-card p {
  margin-bottom: 1rem;
}

.support-case-card ul {
  display: grid;
  gap: 0.45rem;
  margin-top: auto;
}

.support-case-card li,
.feature-list li {
  position: relative;
  color: var(--text-subtle);
  font-size: 0.92rem;
  font-weight: 650;
  padding-left: 1rem;
}

.support-case-card li::before,
.feature-list li::before {
  position: absolute;
  top: 0.62em;
  left: 0;
  width: 6px;
  height: 6px;
  border-radius: 999px;
  background: var(--green);
  content: "";
}

.case-detail-hero {
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  background:
    linear-gradient(90deg, rgba(7, 17, 31, 0.98), rgba(7, 17, 31, 0.9)),
    var(--navy-deep);
}

.case-detail-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.02fr) minmax(420px, 0.82fr);
  gap: 3rem;
  align-items: center;
}

.case-detail-hero-copy h1 {
  max-width: 780px;
  color: white;
  font-size: clamp(2.55rem, 6vw, 5.25rem);
  line-height: 0.98;
}

.case-detail-hero-copy p {
  max-width: 760px;
  color: rgba(255, 255, 255, 0.8);
  font-size: 1.1rem;
}

.client-identifier {
  display: inline-flex;
  margin: 1.2rem 0 1.1rem;
  border: 1px solid rgba(134, 239, 172, 0.24);
  border-radius: 999px;
  background: rgba(34, 197, 94, 0.14);
  color: var(--green-pale);
  font-weight: 850;
  padding: 0.45rem 0.82rem;
}

.case-operational-photo {
  position: relative;
  overflow: hidden;
  min-height: 520px;
  margin: 0;
  border: 1px solid rgba(134, 239, 172, 0.18);
  border-radius: var(--radius);
  background: var(--navy-deep);
  box-shadow: 0 28px 70px rgba(0, 0, 0, 0.34);
}

.case-operational-photo img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  filter: brightness(1.14) contrast(1.12) saturate(1.12);
  object-fit: cover;
}

.case-operational-photo::after {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(7, 17, 31, 0.03), rgba(7, 17, 31, 0.6)),
    linear-gradient(90deg, rgba(7, 17, 31, 0.24), transparent);
  content: "";
}

.case-operational-photo figcaption {
  position: absolute;
  right: 1rem;
  bottom: 1rem;
  left: 1rem;
  z-index: 1;
  display: grid;
  gap: 0.34rem;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: var(--radius);
  background: rgba(7, 17, 31, 0.66);
  backdrop-filter: blur(14px);
  padding: 0.92rem;
}

.case-operational-photo figcaption span {
  color: var(--green-lift);
  font-size: 0.72rem;
  font-weight: 850;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.case-operational-photo figcaption strong {
  color: white;
  font-size: 1.02rem;
  line-height: 1.28;
}

.case-section-heading {
  display: grid;
  gap: 0.5rem;
  max-width: 860px;
  margin-bottom: 1.4rem;
}

.case-section-heading h2 {
  max-width: 860px;
  font-size: 2rem;
  line-height: 1.14;
}

.case-section-heading-dark h2 {
  color: white;
}

.case-section-heading-dark {
  color: rgba(255, 255, 255, 0.76);
}

.case-footprint-section {
  background:
    linear-gradient(180deg, rgba(233, 243, 251, 0.72), white 42%),
    white;
}

.case-footprint-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 0.8rem;
}

.case-footprint-grid article {
  min-height: 126px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: white;
  box-shadow: 0 12px 28px rgba(7, 17, 31, 0.08);
  padding: 1rem;
}

.case-footprint-grid strong {
  display: block;
  margin-bottom: 0.48rem;
  color: var(--navy);
  font-size: 2.2rem;
  line-height: 1;
}

.case-footprint-grid span {
  color: var(--text-subtle);
  font-weight: 780;
}

.case-secondary-metric {
  display: inline-flex;
  align-items: baseline;
  gap: 0.6rem;
  margin-top: 0.95rem;
  border: 1px solid rgba(34, 197, 94, 0.22);
  border-radius: 999px;
  background: rgba(34, 197, 94, 0.06);
  color: var(--navy);
  padding: 0.5rem 0.82rem;
}

.case-secondary-metric strong {
  font-size: 1.24rem;
}

.case-secondary-metric span {
  font-weight: 800;
}

.case-two-column,
.case-asset-layout,
.case-intelligence-layout {
  display: grid;
  grid-template-columns: minmax(0, 0.82fr) minmax(360px, 1fr);
  gap: 2.4rem;
  align-items: start;
}

.case-two-column h2,
.case-asset-layout h2,
.case-intelligence-layout h2,
.case-repeatable h2 {
  font-size: 2rem;
  line-height: 1.14;
}

.case-chip-panel,
.case-evidence-list,
.case-implementation-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.62rem;
}

.case-chip-panel span,
.case-evidence-list span,
.case-implementation-grid span {
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: white;
  color: var(--text-subtle);
  font-size: 0.9rem;
  font-weight: 760;
  padding: 0.72rem 0.8rem;
}

.case-evidence-list {
  border: 1px solid rgba(7, 17, 31, 0.12);
  border-radius: var(--radius);
  background: linear-gradient(180deg, rgba(246, 248, 251, 0.86), white);
  padding: 1rem;
}

.case-evidence-list-light {
  background: var(--soft);
}

.case-model-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0.85rem;
}

.case-model-grid article {
  min-height: 206px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: var(--radius);
  background:
    linear-gradient(90deg, rgba(255, 255, 255, 0.05) 1px, transparent 1px),
    linear-gradient(rgba(255, 255, 255, 0.05) 1px, transparent 1px),
    rgba(255, 255, 255, 0.06);
  background-size: 30px 30px;
  color: rgba(255, 255, 255, 0.76);
  padding: 1rem;
}

.case-model-grid span {
  color: var(--green-lift);
  font-weight: 850;
}

.case-model-grid h3 {
  margin: 0.7rem 0 0.55rem;
  color: white;
}

.case-flow-strip {
  display: flex;
  flex-wrap: wrap;
  gap: 0.54rem;
  margin-top: 1rem;
}

.case-flow-strip span {
  border: 1px solid rgba(134, 239, 172, 0.2);
  border-radius: 999px;
  background: rgba(34, 197, 94, 0.12);
  color: var(--green-pale);
  font-size: 0.8rem;
  font-weight: 800;
  padding: 0.42rem 0.65rem;
}

.case-accordion-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0.85rem;
}

.case-detail-card {
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: white;
  box-shadow: 0 12px 26px rgba(7, 17, 31, 0.08);
  padding: 0.95rem;
}

.case-detail-card summary {
  cursor: pointer;
  list-style: none;
}

.case-detail-card summary::-webkit-details-marker {
  display: none;
}

.case-detail-card summary h3 {
  margin-bottom: 0;
  font-size: 1rem;
}

.case-detail-card p {
  margin-top: 0.72rem;
  margin-bottom: 0;
}

.case-detail-card summary:focus-visible {
  outline: 3px solid rgba(23, 105, 224, 0.28);
  outline-offset: 4px;
}

.case-network-grid,
.case-dual-capability {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1rem;
}

.case-dual-capability {
  grid-template-columns: repeat(2, 1fr);
}

.case-network-grid article,
.case-dual-capability article {
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: white;
  box-shadow: 0 12px 28px rgba(7, 17, 31, 0.08);
  padding: 1.1rem;
}

.case-network-grid h3,
.case-dual-capability h2 {
  font-size: 1.18rem;
}

.case-network-grid ul,
.case-dual-capability ul {
  display: grid;
  gap: 0.48rem;
  margin-top: 1rem;
}

.case-network-grid li,
.case-dual-capability li {
  position: relative;
  color: var(--text-subtle);
  font-size: 0.92rem;
  font-weight: 650;
  padding-left: 1rem;
}

.case-network-grid li::before,
.case-dual-capability li::before {
  position: absolute;
  top: 0.62em;
  left: 0;
  width: 6px;
  height: 6px;
  border-radius: 999px;
  background: var(--green);
  content: "";
}

.case-intelligence-layout {
  align-items: center;
}

.case-intelligence-layout h2 {
  color: white;
}

.case-intelligence-layout p {
  color: rgba(255, 255, 255, 0.76);
}

.case-bi-visual {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(134, 239, 172, 0.16);
  border-radius: var(--radius);
  background:
    linear-gradient(90deg, rgba(255, 255, 255, 0.045) 1px, transparent 1px),
    linear-gradient(rgba(255, 255, 255, 0.045) 1px, transparent 1px),
    linear-gradient(145deg, rgba(11, 39, 60, 0.96), rgba(13, 72, 78, 0.78));
  background-size: 30px 30px, 30px 30px, auto;
  color: white;
  padding: 1rem;
}

.case-bi-toolbar {
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: var(--radius);
  background: rgba(255, 255, 255, 0.07);
  padding: 0.75rem;
}

.case-bi-toolbar span,
.case-bi-card span {
  color: var(--green-lift);
  font-size: 0.7rem;
  font-weight: 850;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.case-bi-toolbar strong {
  display: block;
  margin-top: 0.2rem;
  color: white;
}

.case-bi-grid {
  display: grid;
  grid-template-columns: 0.62fr 1fr;
  gap: 0.65rem;
  margin-top: 0.65rem;
}

.case-bi-card {
  display: grid;
  gap: 0.52rem;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: var(--radius);
  background: rgba(255, 255, 255, 0.07);
  padding: 0.75rem;
}

.case-bi-card strong {
  color: white;
  font-size: 1.25rem;
}

.case-bi-wide {
  grid-column: 1 / -1;
}

.case-implementation-grid {
  grid-template-columns: repeat(5, 1fr);
}

.case-repeatable {
  max-width: 900px;
}

.case-feature-actions {
  margin-top: 1.2rem;
}

.case-mobile-detail-list {
  display: none;
}

.industry-grid {
  grid-template-columns: repeat(3, 1fr);
}

.industry-card span {
  display: inline-block;
  width: 10px;
  height: 10px;
  margin-bottom: 1rem;
  border-radius: 999px;
  background: var(--green);
}

.industry-card h2 {
  font-size: 1.2rem;
  line-height: 1.22;
}

.industry-hero {
  background:
    linear-gradient(90deg, rgba(7, 17, 31, 0.98), rgba(7, 17, 31, 0.9)),
    var(--navy-deep);
}

.industry-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 0.96fr) minmax(420px, 0.84fr);
  gap: 3rem;
  align-items: center;
}

.industry-hero-copy h1 {
  max-width: 820px;
  color: white;
  font-size: clamp(2.45rem, 5.2vw, 4.85rem);
  line-height: 1;
}

.industry-hero-copy p {
  max-width: 720px;
  color: rgba(255, 255, 255, 0.78);
  font-size: 1.08rem;
}

.industry-hero-visual {
  position: relative;
  overflow: hidden;
  min-height: 500px;
  margin: 0;
  border: 1px solid rgba(134, 239, 172, 0.18);
  border-radius: var(--radius);
  background: var(--navy-deep);
  box-shadow: 0 28px 70px rgba(0, 0, 0, 0.34);
}

.industry-hero-visual img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  filter: brightness(1.14) contrast(1.12) saturate(1.12);
  object-fit: cover;
}

.industry-hero-visual::after {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(7, 17, 31, 0.03), rgba(7, 17, 31, 0.6)),
    linear-gradient(90deg, rgba(7, 17, 31, 0.26), transparent);
  content: "";
}

.industry-hero-visual figcaption {
  position: absolute;
  right: 1rem;
  bottom: 1rem;
  left: 1rem;
  z-index: 1;
  display: grid;
  gap: 0.34rem;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: var(--radius);
  background: rgba(7, 17, 31, 0.68);
  backdrop-filter: blur(14px);
  padding: 0.92rem;
}

.industry-hero-visual figcaption span,
.industry-status,
.industry-block strong,
.industry-mobile-block h3 {
  color: var(--green-lift);
  font-size: 0.72rem;
  font-weight: 850;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.industry-hero-visual figcaption strong {
  color: white;
  font-size: 1.02rem;
  line-height: 1.28;
}

.industry-view-grid,
.industry-proven-grid {
  display: grid;
  grid-template-columns: minmax(0, 0.86fr) minmax(360px, 1fr);
  gap: 2.4rem;
  align-items: start;
}

.industry-view-grid h2,
.industry-proven-grid h2 {
  font-size: 2rem;
  line-height: 1.14;
}

.industry-theme-grid,
.industry-proven-points {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.62rem;
}

.industry-theme-grid span,
.industry-proven-points span {
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: white;
  color: var(--text-subtle);
  font-size: 0.9rem;
  font-weight: 760;
  padding: 0.72rem 0.8rem;
}

.industry-proven-section h2,
.industry-proven-section h3 {
  color: white;
}

.industry-proven-panel {
  border: 1px solid rgba(134, 239, 172, 0.16);
  border-radius: var(--radius);
  background:
    linear-gradient(90deg, rgba(255, 255, 255, 0.045) 1px, transparent 1px),
    linear-gradient(rgba(255, 255, 255, 0.045) 1px, transparent 1px),
    rgba(255, 255, 255, 0.06);
  background-size: 30px 30px;
  padding: 1rem;
}

.industry-status {
  display: inline-flex;
  width: fit-content;
  border: 1px solid rgba(23, 105, 224, 0.18);
  border-radius: 999px;
  background: rgba(23, 105, 224, 0.08);
  color: var(--blue);
  padding: 0.34rem 0.58rem;
}

.section-dark .industry-status,
.industry-status.proven {
  border-color: rgba(134, 239, 172, 0.22);
  background: rgba(34, 197, 94, 0.14);
  color: var(--green-pale);
}

.section-dark .industry-proven-points span {
  border-color: rgba(255, 255, 255, 0.14);
  background: rgba(255, 255, 255, 0.07);
  color: rgba(255, 255, 255, 0.88);
}

.industry-framework-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}

.industry-block {
  display: grid;
  gap: 0.9rem;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: white;
  box-shadow: 0 12px 28px rgba(7, 17, 31, 0.08);
  padding: 1.1rem;
}

.industry-block-head {
  display: grid;
  gap: 0.7rem;
}

.industry-block h3 {
  margin: 0;
  font-size: 1.18rem;
}

.industry-block p {
  margin: 0;
}

.industry-block-columns {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.9rem;
}

.industry-block ul,
.industry-mobile-block ul {
  display: grid;
  gap: 0.42rem;
  margin-top: 0.6rem;
}

.industry-block li,
.industry-mobile-block li {
  position: relative;
  color: var(--text-subtle);
  font-size: 0.9rem;
  font-weight: 650;
  padding-left: 0.95rem;
}

.industry-block li::before,
.industry-mobile-block li::before {
  position: absolute;
  top: 0.62em;
  left: 0;
  width: 6px;
  height: 6px;
  border-radius: 999px;
  background: var(--green);
  content: "";
}

.industry-link {
  margin: 0;
}

.industry-link a {
  color: var(--blue);
  font-weight: 850;
}

.industry-mobile-accordion {
  display: none;
}

.industry-capability-strip,
.industry-discovery-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.85rem;
}

.industry-capability-strip article,
.industry-discovery-grid article {
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: white;
  box-shadow: 0 12px 26px rgba(7, 17, 31, 0.07);
  padding: 1rem;
}

.industry-capability-strip h3,
.industry-discovery-grid h3 {
  font-size: 1rem;
}

.industry-discovery-grid span {
  color: var(--green);
  font-weight: 850;
}

.process-grid {
  grid-template-columns: repeat(5, 1fr);
}

.process-grid article {
  border-top: 3px solid var(--green);
  border-radius: var(--radius);
  background: white;
  padding: 1rem;
}

.process-grid p {
  margin-bottom: 0;
  font-size: 0.94rem;
}

.about-aside {
  display: grid;
  gap: 1rem;
}

.trust-hero {
  background:
    radial-gradient(circle at 18% 12%, rgba(34, 197, 94, 0.16), transparent 34%),
    linear-gradient(135deg, var(--surface-clean) 0%, var(--surface-cool) 100%);
}

.trust-hero-grid,
.trust-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(320px, 0.78fr);
  gap: 2rem;
  align-items: center;
}

.trust-hero-copy h1,
.trust-grid h2 {
  max-width: 760px;
}

.trust-hero-visual .visual-card {
  margin: 0;
  box-shadow: 0 22px 54px rgba(7, 17, 31, 0.18);
}

.trust-info-panel {
  border: 1px solid rgba(34, 197, 94, 0.2);
  border-radius: var(--radius);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.92), rgba(242, 248, 247, 0.94)),
    white;
  box-shadow: 0 16px 36px rgba(15, 34, 54, 0.08);
  padding: 1.35rem;
}

.trust-info-panel h2,
.trust-info-panel h3 {
  margin-bottom: 0.55rem;
}

.trust-info-panel p:last-child,
.trust-card p:last-child {
  margin-bottom: 0;
}

.trust-card-grid {
  display: grid;
  gap: 1rem;
}

.trust-card-grid.compact {
  grid-template-columns: repeat(3, 1fr);
}

.trust-card-grid.mini {
  grid-template-columns: repeat(2, 1fr);
}

.trust-card {
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: white;
  padding: 1.15rem;
}

.trust-card.inverted {
  border-color: rgba(255, 255, 255, 0.14);
  background: rgba(255, 255, 255, 0.06);
  color: white;
}

.trust-card-icon {
  display: grid;
  width: 42px;
  height: 42px;
  place-items: center;
  margin-bottom: 0.85rem;
  border-radius: var(--radius);
  background: var(--green-soft);
  color: var(--green-ink);
  font-size: 0.74rem;
  font-weight: 850;
}

.trust-check-list {
  display: grid;
  gap: 0.65rem;
}

.trust-check-list span {
  position: relative;
  border: 1px solid rgba(34, 197, 94, 0.18);
  border-radius: var(--radius);
  background: white;
  color: var(--navy);
  font-weight: 800;
  padding: 0.82rem 0.95rem 0.82rem 2.25rem;
}

.trust-check-list span::before {
  content: "";
  position: absolute;
  top: 1.18rem;
  left: 1rem;
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: var(--green);
  box-shadow: 0 0 0 5px rgba(34, 197, 94, 0.12);
}

.trust-step-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1rem;
}

.trust-step-grid article,
.approach-architecture {
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: var(--radius);
  background: rgba(255, 255, 255, 0.06);
  padding: 1.25rem;
}

.trust-step-grid.light article {
  border-color: var(--line);
  background: white;
}

.trust-step-grid span,
.approach-architecture span {
  display: block;
  margin-bottom: 0.55rem;
  color: var(--amber);
  font-size: 0.78rem;
  font-weight: 850;
}

.trust-step-grid.light span {
  color: var(--green);
}

.trust-note {
  max-width: 820px;
  margin: 1rem 0 0;
  color: var(--muted);
  font-size: 0.95rem;
}

.approach-architecture {
  display: grid;
  gap: 0.75rem;
  background:
    linear-gradient(135deg, rgba(7, 17, 31, 0.94), rgba(13, 50, 72, 0.94)),
    var(--navy);
  box-shadow: 0 22px 54px rgba(7, 17, 31, 0.18);
}

.approach-architecture div {
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: var(--radius);
  background: rgba(255, 255, 255, 0.07);
  color: white;
  padding: 0.9rem 1rem;
}

.company-fact-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.85rem;
}

.company-fact-grid article {
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: white;
  padding: 1rem;
}

.company-fact-grid span {
  display: block;
  margin-bottom: 0.45rem;
  color: var(--muted);
  font-size: 0.75rem;
  font-weight: 850;
  text-transform: uppercase;
}

.company-fact-grid strong {
  color: var(--navy);
  line-height: 1.35;
}

.contact-hero-grid {
  grid-template-columns: minmax(0, 0.95fr) minmax(300px, 0.62fr);
}

.contact-route-list {
  display: grid;
  gap: 0.85rem;
}

.pill-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.7rem;
}

.contact-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 380px;
  gap: 1.2rem;
}

.contact-form,
.contact-panel {
  padding: 1.4rem;
}

.contact-panel h2,
.panel h2 {
  font-size: 1.35rem;
}

.contact-panel .visual-card {
  margin: 0.9rem 0 1.2rem;
  box-shadow: none;
}

.contact-panel .visual-card figcaption {
  font-size: 0.84rem;
}

.contact-form {
  display: grid;
  gap: 1rem;
}

label {
  display: grid;
  gap: 0.4rem;
  color: var(--navy);
  font-weight: 800;
}

input,
select,
textarea {
  width: 100%;
  border: 1px solid var(--border);
  border-radius: var(--radius);
  color: var(--ink);
  font: inherit;
  padding: 0.8rem 0.9rem;
}

input:focus,
select:focus,
textarea:focus {
  border-color: var(--green);
  outline: 3px solid rgba(34, 197, 94, 0.18);
}

select {
  background: white;
}

.form-note {
  margin: 0;
  font-size: 0.9rem;
}

.form-status {
  min-height: 1.4em;
  margin: 0;
  color: var(--navy);
  font-size: 0.92rem;
  font-weight: 760;
}

.form-honey {
  position: absolute;
  left: -9999px;
  width: 1px;
  height: 1px;
  opacity: 0;
  pointer-events: none;
}

.contact-whatsapp {
  width: 100%;
  margin-top: 0.25rem;
}

.request-demo-section {
  background:
    linear-gradient(180deg, rgba(246, 248, 251, 0.75), white 52%),
    var(--paper);
}

.request-demo-shell {
  display: grid;
  grid-template-columns: minmax(260px, 0.72fr) minmax(0, 1.28fr);
  gap: 1.4rem;
  align-items: start;
  max-width: 1080px;
}

.request-demo-intro {
  border-left: 4px solid var(--green);
  padding-left: 1.25rem;
}

.request-demo-intro h2 {
  font-size: 1.78rem;
  line-height: 1.2;
}

.request-demo-points {
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem;
  margin-top: 1.2rem;
}

.request-demo-points span {
  border: 1px solid rgba(34, 197, 94, 0.28);
  border-radius: 999px;
  background: var(--green-soft);
  color: var(--green-ink);
  font-size: 0.78rem;
  font-weight: 800;
  padding: 0.34rem 0.68rem;
}

.request-demo-form {
  box-shadow: 0 16px 38px rgba(7, 17, 31, 0.1);
}

.request-demo-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}

.form-span {
  grid-column: 1 / -1;
}

.cta-section {
  padding: 44px 0 82px;
}

.cta-box {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
  border-radius: var(--radius);
  background:
    linear-gradient(135deg, rgba(7, 17, 31, 0.96), rgba(7, 17, 31, 0.98)),
    var(--navy);
  color: white;
  padding: 2.35rem;
}

.cta-box > div:first-child {
  max-width: 720px;
}

.cta-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 0.75rem;
}

.sdl-hero {
  overflow: hidden;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  background:
    radial-gradient(circle at 76% 30%, rgba(23, 105, 224, 0.24), transparent 34%),
    linear-gradient(145deg, var(--navy-deep), var(--navy) 58%, var(--navy-panel));
  color: white;
  padding: 72px 0 68px;
}

.sdl-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 0.95fr) minmax(420px, 0.72fr);
  gap: 4rem;
  align-items: center;
}

.sdl-hero h1 {
  max-width: 820px;
  color: white;
  font-size: clamp(3rem, 5vw, 5.4rem);
  line-height: 1.02;
}

.sdl-hero h1 span {
  display: block;
}

.sdl-hero .hero-subtitle {
  max-width: 760px;
  color: rgba(255, 255, 255, 0.84);
  font-size: 1.14rem;
}

.sdl-hero-secondary {
  max-width: 620px;
  margin-top: 1rem;
  margin-bottom: 0;
  color: var(--green-pale);
  font-weight: 800;
}

.sdl-platform-visual {
  width: min(100%, 540px);
  justify-self: end;
}

.sdl-section-split {
  display: grid;
  grid-template-columns: minmax(0, 0.78fr) minmax(0, 1fr);
  gap: 2.4rem;
  align-items: start;
  margin-bottom: 1.6rem;
}

.sdl-section-split h2 {
  max-width: 760px;
  font-size: 2.15rem;
}

.sdl-section-split p {
  max-width: 760px;
  margin-bottom: 0;
  color: var(--text-subtle);
  font-size: 1.05rem;
}

.sdl-section-split p + p {
  margin-top: 0.8rem;
}

.sdl-challenge {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(360px, 0.7fr);
  gap: 3rem;
  align-items: center;
}

.sdl-challenge h2,
.sdl-growth-grid h2,
.sdl-regional-grid h2 {
  font-size: 2rem;
}

.sdl-challenge strong,
.sdl-growth-grid strong {
  display: block;
  margin-top: 1.1rem;
  color: var(--navy);
  font-size: 1.05rem;
}

.sdl-environment-grid,
.sdl-config-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.7rem;
}

.sdl-environment-grid span,
.sdl-config-grid span,
.sdl-flow span,
.sdl-lifecycle span,
.sdl-growth-steps li {
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: white;
  color: var(--navy);
  font-size: 0.88rem;
  font-weight: 800;
  padding: 0.72rem 0.8rem;
}

.sdl-environment-grid span:nth-child(4n + 1),
.sdl-config-grid span:nth-child(4n + 1) {
  border-color: rgba(34, 197, 94, 0.22);
  background: rgba(34, 197, 94, 0.06);
}

.sdl-model {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.9rem;
}

.sdl-model article {
  position: relative;
  min-height: 168px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: white;
  padding: 1.05rem;
}

.sdl-model article:not(:last-child)::after {
  position: absolute;
  top: 50%;
  right: -0.67rem;
  width: 0.45rem;
  height: 0.45rem;
  border-top: 2px solid var(--green);
  border-right: 2px solid var(--green);
  transform: translateY(-50%) rotate(45deg);
  content: "";
}

.sdl-model span,
.sdl-capability-topline,
.sdl-interface-header span {
  color: var(--green);
  font-size: 0.74rem;
  font-weight: 850;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.sdl-model h3 {
  margin-top: 0.62rem;
  font-size: 1.1rem;
}

.sdl-model p {
  margin-bottom: 0;
}

.sdl-flow {
  display: flex;
  flex-wrap: wrap;
  gap: 0.62rem;
  margin-top: 1rem;
}

.sdl-capability-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.95rem;
}

.sdl-capability-card {
  display: grid;
  align-content: start;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: white;
  padding: 1rem;
}

.sdl-capability-card summary {
  display: grid;
  gap: 0.72rem;
  cursor: default;
  list-style: none;
}

.sdl-capability-card summary::-webkit-details-marker {
  display: none;
}

.sdl-capability-card summary::after {
  display: none;
  justify-self: start;
  border: 1px solid rgba(23, 105, 224, 0.18);
  border-radius: 999px;
  background: var(--blue-soft);
  color: var(--navy);
  content: "View capability";
  font-size: 0.74rem;
  font-weight: 850;
  padding: 0.32rem 0.54rem;
}

.sdl-capability-card[open] summary::after {
  content: "Capability details";
}

.sdl-capability-card summary:focus-visible {
  outline: 3px solid rgba(23, 105, 224, 0.3);
  outline-offset: 4px;
}

.sdl-capability-card.is-featured {
  border-color: rgba(34, 197, 94, 0.3);
  background:
    linear-gradient(180deg, rgba(233, 249, 244, 0.72), white 42%),
    white;
  box-shadow: 0 18px 44px rgba(7, 17, 31, 0.08);
}

.sdl-capability-card h3 {
  font-size: 1.12rem;
}

.sdl-capability-card p,
.sdl-capability-card li {
  color: var(--text-secondary);
  font-size: 0.9rem;
  line-height: 1.48;
}

.sdl-capability-card p,
.sdl-capability-card ul {
  margin-bottom: 0;
}

.sdl-capability-detail {
  display: grid;
  gap: 0.75rem;
  margin-top: 0.75rem;
  border-top: 1px solid var(--line);
  padding-top: 0.75rem;
}

.sdl-capability-card ul {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.38rem 0.8rem;
  padding-left: 1.05rem;
}

.sdl-capability-card strong {
  display: block;
  color: var(--navy);
  font-size: 0.92rem;
  line-height: 1.4;
}

.sdl-lifecycle {
  display: flex;
  flex-wrap: wrap;
  gap: 0.42rem;
}

.sdl-lifecycle span {
  border-color: rgba(23, 105, 224, 0.18);
  background: var(--blue-soft);
  font-size: 0.72rem;
  padding: 0.34rem 0.5rem;
}

.sdl-intelligence-section .sdl-section-split h2 {
  color: white;
}

.sdl-intelligence-section .sdl-section-split p {
  color: rgba(255, 255, 255, 0.76);
}

.sdl-interface-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.95rem;
}

.sdl-interface-view {
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: var(--radius);
  background:
    linear-gradient(90deg, rgba(255, 255, 255, 0.05) 1px, transparent 1px),
    linear-gradient(rgba(255, 255, 255, 0.05) 1px, transparent 1px),
    rgba(255, 255, 255, 0.06);
  background-size: 34px 34px;
  padding: 1rem;
}

.sdl-interface-header {
  min-height: 92px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: var(--radius);
  background: rgba(255, 255, 255, 0.07);
  padding: 0.9rem;
}

.sdl-interface-header strong {
  display: block;
  margin-top: 0.38rem;
  color: white;
  font-size: 1rem;
  line-height: 1.35;
}

.sdl-interface-body {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(130px, 0.58fr);
  gap: 0.7rem;
  margin-top: 0.7rem;
}

.sdl-interface-body .operational-image-pane,
.sdl-interface-body .dashboard-visual-pane {
  min-height: 210px;
}

.dashboard-visual-pane {
  position: relative;
  overflow: hidden;
  display: grid;
  align-content: stretch;
  gap: 0.75rem;
  min-height: 100%;
  margin: 0;
  border: 1px solid rgba(134, 239, 172, 0.16);
  border-radius: var(--radius);
  background:
    linear-gradient(90deg, rgba(255, 255, 255, 0.045) 1px, transparent 1px),
    linear-gradient(rgba(255, 255, 255, 0.045) 1px, transparent 1px),
    linear-gradient(145deg, rgba(11, 39, 60, 0.96), rgba(13, 72, 78, 0.78));
  background-size: 28px 28px, 28px 28px, auto;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1);
  padding: 0.78rem;
}

.dashboard-visual-pane::before {
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(34, 197, 94, 0.16), transparent 48%, rgba(51, 166, 214, 0.12));
  content: "";
  pointer-events: none;
}

.dashboard-visual-pane > * {
  position: relative;
  z-index: 1;
}

.dashboard-pane-topline {
  display: grid;
  gap: 0.3rem;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: calc(var(--radius) - 4px);
  background: rgba(255, 255, 255, 0.07);
  padding: 0.58rem 0.64rem;
}

.dashboard-pane-topline span,
.dashboard-visual-pane figcaption {
  color: var(--green-pale);
  font-size: 0.66rem;
  font-weight: 850;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.dashboard-pane-topline strong {
  color: white;
  font-size: 0.9rem;
  line-height: 1.25;
}

.dashboard-pane-topline small {
  color: rgba(255, 255, 255, 0.6);
  font-size: 0.62rem;
  font-weight: 720;
  line-height: 1.25;
}

.dashboard-pane-panels {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(82px, 0.48fr);
  gap: 0.44rem;
}

.dashboard-pane-panels-lower {
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1fr);
}

.dashboard-mini-panel {
  overflow: hidden;
  min-width: 0;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: calc(var(--radius) - 5px);
  background: rgba(255, 255, 255, 0.07);
  padding: 0.5rem;
}

.dashboard-panel-heading {
  display: grid;
  gap: 0.08rem;
  margin-bottom: 0.42rem;
}

.dashboard-panel-heading span,
.dashboard-coverage-panel span {
  color: white;
  font-size: 0.65rem;
  font-weight: 850;
}

.dashboard-panel-heading small {
  color: rgba(255, 255, 255, 0.62);
  font-size: 0.56rem;
  font-weight: 760;
}

.territory-bars {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  align-items: end;
  gap: 0.24rem;
  min-height: 52px;
  padding-top: 0.18rem;
}

.territory-bar {
  position: relative;
  display: block;
  align-self: end;
  min-height: 18px;
  border-radius: 5px 5px 2px 2px;
  background: rgba(209, 217, 226, 0.46);
}

.territory-bar i {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  display: block;
  border-radius: 5px 5px 2px 2px;
  background: var(--chart-green);
}

.territory-bar.bar-one {
  height: 50px;
}

.territory-bar.bar-one i {
  height: 34%;
}

.territory-bar.bar-two {
  height: 38px;
}

.territory-bar.bar-two i {
  height: 52%;
}

.territory-bar.bar-three {
  height: 46px;
}

.territory-bar.bar-three i {
  height: 44%;
}

.territory-bar.bar-four {
  height: 31px;
}

.territory-bar.bar-four i {
  height: 66%;
}

.territory-bar.bar-five {
  height: 25px;
}

.territory-bar.bar-five i {
  height: 58%;
}

.dashboard-coverage-panel {
  display: grid;
  place-items: center;
  gap: 0.2rem;
}

.coverage-ring {
  display: grid;
  place-items: center;
  width: 58px;
  height: 58px;
  border-radius: 50%;
  background:
    radial-gradient(circle, rgba(13, 31, 52, 0.96) 0 48%, transparent 50%),
    conic-gradient(var(--chart-green) 0 70deg, rgba(209, 217, 226, 0.46) 70deg 360deg);
}

.coverage-ring strong {
  color: white;
  font-size: 0.8rem;
  line-height: 1;
}

.coverage-ring small {
  color: rgba(255, 255, 255, 0.58);
  font-size: 0.48rem;
  font-weight: 780;
  margin-top: -0.3rem;
}

.trend-sparkline {
  display: block;
  width: 100%;
  height: 54px;
}

.trend-fill {
  fill: rgba(255, 127, 17, 0.13);
}

.trend-line-one,
.trend-line-two {
  fill: none;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 3.2;
}

.trend-line-one {
  stroke: var(--chart-orange);
}

.trend-line-two {
  stroke: var(--chart-green);
  stroke-dasharray: 5 5;
}

.rank-bars {
  display: grid;
  gap: 0.3rem;
  padding-top: 0.1rem;
}

.rank-bars span {
  overflow: hidden;
  display: block;
  height: 8px;
  border-radius: 999px;
  background: rgba(209, 217, 226, 0.3);
}

.rank-bars i {
  display: block;
  height: 100%;
  border-radius: inherit;
}

.rank-one i {
  width: 92%;
  background: var(--chart-orange-strong);
}

.rank-two i {
  width: 74%;
  background: var(--chart-blue);
}

.rank-three i {
  width: 58%;
  background: var(--chart-violet);
}

.dashboard-visual-pane figcaption {
  width: fit-content;
  border: 1px solid rgba(134, 239, 172, 0.22);
  border-radius: 999px;
  background: rgba(7, 17, 31, 0.5);
  padding: 0.32rem 0.5rem;
}

.sdl-interface-rows {
  display: grid;
  gap: 0.55rem;
}

.sdl-interface-rows span {
  display: grid;
  align-content: center;
  min-height: 58px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: var(--radius);
  background: rgba(255, 255, 255, 0.07);
  color: rgba(255, 255, 255, 0.76);
  font-size: 0.78rem;
  font-weight: 800;
  padding: 0.7rem;
}

.sdl-interface-rows strong {
  display: block;
  height: 7px;
  margin-top: 0.55rem;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--summit-green-bright), rgba(255, 255, 255, 0.16));
}

.sdl-proof-section {
  border-bottom: 1px solid var(--line);
}

.sdl-proof-section .sdl-section-split {
  align-items: end;
}

.sdl-secondary-proof {
  display: inline-flex;
  align-items: baseline;
  gap: 0.6rem;
  margin-top: 0.95rem;
  border: 1px solid rgba(34, 197, 94, 0.22);
  border-radius: 999px;
  background: rgba(34, 197, 94, 0.06);
  color: var(--navy);
  padding: 0.5rem 0.82rem;
}

.sdl-secondary-proof strong {
  font-size: 1.25rem;
}

.sdl-secondary-proof span {
  font-weight: 800;
}

.metric-context-note-center {
  margin: 0.62rem 0 0;
  color: var(--muted);
}

.sdl-regional-grid,
.sdl-growth-grid {
  display: grid;
  grid-template-columns: minmax(0, 0.86fr) minmax(360px, 0.74fr);
  gap: 2.6rem;
  align-items: start;
}

.sdl-regional-grid .regional-statement {
  margin-top: 1.2rem;
}

.sdl-growth-steps {
  display: grid;
  gap: 0.62rem;
  list-style: none;
  margin: 0;
  padding: 0;
}

.sdl-growth-steps li {
  counter-increment: growth-step;
}

.sdl-growth-steps li::before {
  color: var(--green);
  content: counter(growth-step, decimal-leading-zero) " ";
}

.cta-box h2,
.cta-box p {
  color: white;
}

.cta-box h2 {
  font-size: 1.7rem;
}

.cta-box p {
  margin-bottom: 0;
  opacity: 0.83;
}

.site-footer {
  background: var(--navy-deep);
  color: white;
  padding: 52px 0 28px;
}

.site-footer p,
.site-footer a,
.site-footer small,
.site-footer h2 {
  color: rgba(255, 255, 255, 0.78);
}

.footer-grid {
  display: grid;
  grid-template-columns: 1.25fr 0.65fr 0.95fr 0.72fr;
  gap: 2rem;
}

.footer-brand .brand-logo-frame {
  box-shadow: none;
}

.footer-brand strong {
  color: white;
}

.site-footer h2 {
  margin-bottom: 0.8rem;
  font-size: 1rem;
}

.site-footer li + li {
  margin-top: 0.45rem;
}

.footer-bottom {
  margin-top: 2rem;
  border-top: 1px solid rgba(255, 255, 255, 0.14);
  color: rgba(255, 255, 255, 0.64);
  font-size: 0.9rem;
  padding-top: 1.2rem;
}

@media (max-width: 1020px) {
  .card-grid.four,
  .process-grid,
  .sdl-model,
  .executive-metric-grid,
  .sdl-capability-grid,
  .executive-screen-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .why-pillar-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 940px) {
  .menu-toggle {
    display: inline-block;
  }

  .executive-hero {
    padding: 54px 0 52px;
  }

  .executive-hero h1 {
    font-size: 3.35rem;
  }

  .executive-hero .button-row {
    margin-top: 1.65rem;
  }

  .site-nav {
    position: absolute;
    top: 76px;
    right: 16px;
    left: 16px;
    display: none;
    flex-direction: column;
    align-items: stretch;
    border: 1px solid var(--line);
    border-radius: var(--radius);
    background: white;
    box-shadow: var(--shadow);
    padding: 0.5rem;
  }

  .site-nav a {
    color: var(--navy);
  }

  .site-nav .nav-cta {
    margin-left: 0;
    text-align: center;
  }

  .site-nav a:hover,
  .site-nav a:focus,
  .site-nav a[aria-current="page"] {
    background: var(--blue-soft);
    color: var(--navy);
  }

  .site-nav .nav-cta,
  .site-nav .nav-cta:hover,
  .site-nav .nav-cta:focus,
  .site-nav .nav-cta[aria-current="page"] {
    background: var(--blue);
    color: white;
  }

  .site-nav.is-open {
    display: flex;
  }

  .hero-grid,
  .executive-hero .hero-grid,
  .sdl-hero-grid,
  .case-detail-hero-grid,
  .industry-hero-grid,
  .layer-grid,
  .spotlight,
  .credibility-layout,
  .media-split,
  .split,
  .trust-hero-grid,
  .trust-grid,
  .sdl-challenge,
  .sdl-section-split,
  .sdl-regional-grid,
  .sdl-growth-grid,
  .case-intro,
  .featured-case,
  .contact-grid,
  .request-demo-shell,
  .executive-proof-header,
  .platform-intro,
  .regional-panel,
  .intelligence-layout,
  .why-layout,
  .about-executive {
    grid-template-columns: 1fr;
  }

  .case-two-column,
  .case-asset-layout,
  .case-intelligence-layout,
  .industry-view-grid,
  .industry-proven-grid,
  .trust-step-grid {
    grid-template-columns: 1fr;
  }

  .card-grid.two,
  .credibility-grid,
  .industry-grid,
  .support-case-grid,
  .case-model-grid,
  .case-network-grid,
  .case-accordion-grid,
  .industry-capability-strip,
  .industry-discovery-grid,
  .trust-card-grid.compact {
    grid-template-columns: repeat(2, 1fr);
  }

  .metric-grid,
  .case-footprint-grid,
  .case-implementation-grid {
    grid-template-columns: repeat(3, 1fr);
  }

  .case-operational-photo {
    min-height: 420px;
  }

  .industry-hero-visual {
    min-height: 420px;
  }

  .regional-statement {
    max-width: 420px;
  }

  .executive-screen-body {
    grid-template-columns: 1fr;
  }

  .sdl-platform-visual {
    justify-self: start;
  }

  .sdl-interface-grid {
    grid-template-columns: 1fr;
  }

  .hero-platform-body {
    min-height: 170px;
  }

  .executive-screen-body .operational-image-pane {
    min-height: 230px;
  }

  .hero-platform-body .operational-image-pane {
    min-height: 170px;
  }

  .hero-platform-footer {
    display: none;
  }

  .case-dashboard {
    min-height: 560px;
  }

  .command-grid {
    grid-template-columns: minmax(0, 1fr) minmax(220px, 0.72fr);
  }

  .command-map {
    min-height: 330px;
  }

  .footer-grid {
    grid-template-columns: 1fr 1fr;
  }

  .page-hero .narrow {
    grid-template-columns: 1fr;
    align-items: start;
  }
}

@media (max-width: 640px) {
  .container,
  .narrow {
    width: min(100% - 24px, 1160px);
  }

  .section {
    padding: 38px 0;
  }

  .executive-hero {
    padding: 34px 0 36px;
  }

  .executive-hero .hero-grid {
    gap: 28px;
  }

  h1 {
    font-size: 2rem;
    line-height: 1.16;
  }

  .executive-hero h1 {
    font-size: 2rem;
  }

  h2 {
    font-size: 1.55rem;
  }

  .eyebrow {
    font-size: 0.72rem;
    letter-spacing: 0.05em;
  }

  .brand small {
    display: none;
  }

  .brand-logo-frame {
    width: 52px;
    height: 42px;
    padding: 4px;
  }

  .hero .hero-subtitle {
    font-size: 1.02rem;
    line-height: 1.56;
  }

  .card-grid.two,
  .card-grid.four,
  .credibility-grid,
  .industry-grid,
  .process-grid,
  .metric-grid,
  .case-footprint-grid,
  .case-model-grid,
  .case-network-grid,
  .case-dual-capability,
  .case-accordion-grid,
  .case-chip-panel,
  .case-evidence-list,
  .case-implementation-grid,
  .sdl-model,
  .executive-metric-grid,
  .platform-capability-grid,
  .sdl-capability-grid,
  .sdl-environment-grid,
  .sdl-config-grid,
  .executive-screen-grid,
  .support-case-grid,
  .footer-grid,
  .request-demo-form-grid {
    grid-template-columns: 1fr;
  }

  .trust-hero {
    padding: 34px 0;
  }

  .trust-hero-grid,
  .trust-grid {
    gap: 1rem;
  }

  .trust-card-grid.compact,
  .trust-card-grid.mini,
  .trust-step-grid,
  .company-fact-grid {
    grid-template-columns: 1fr;
  }

  .trust-info-panel,
  .trust-card,
  .trust-step-grid article,
  .approach-architecture,
  .company-fact-grid article,
  .contact-form,
  .contact-panel {
    padding: 1rem;
  }

  .trust-check-list span {
    padding: 0.72rem 0.85rem 0.72rem 2rem;
  }

  .trust-check-list span::before {
    top: 1.06rem;
    left: 0.82rem;
  }

  .case-detail-hero {
    padding: 30px 0 34px;
  }

  .case-detail-hero-copy h1 {
    font-size: 2.08rem;
    line-height: 1.08;
  }

  .case-detail-hero-copy p {
    font-size: 0.96rem;
    line-height: 1.52;
  }

  .case-operational-photo {
    min-height: 300px;
  }

  .industry-hero {
    padding: 30px 0 34px;
  }

  .industry-hero-copy h1 {
    font-size: 2rem;
    line-height: 1.08;
  }

  .industry-hero-copy p {
    font-size: 0.96rem;
    line-height: 1.52;
  }

  .industry-hero-visual {
    min-height: 300px;
  }

  .industry-hero-visual figcaption {
    padding: 0.72rem;
  }

  .industry-view-grid h2,
  .industry-proven-grid h2 {
    font-size: 1.35rem;
  }

  .industry-theme-grid,
  .industry-proven-points,
  .industry-capability-strip,
  .industry-discovery-grid {
    grid-template-columns: 1fr;
    gap: 0.5rem;
  }

  .industry-theme-grid span,
  .industry-proven-points span,
  .industry-capability-strip article,
  .industry-discovery-grid article {
    padding: 0.72rem;
  }

  .industry-framework-grid {
    display: none;
  }

  .industry-mobile-accordion {
    display: grid;
    gap: 0.62rem;
  }

  .industry-mobile-block {
    border: 1px solid var(--line);
    border-radius: var(--radius);
    background: white;
    box-shadow: 0 10px 22px rgba(7, 17, 31, 0.07);
    padding: 0.78rem;
  }

  .industry-mobile-block summary {
    display: grid;
    gap: 0.55rem;
    cursor: pointer;
    list-style: none;
  }

  .industry-mobile-block summary::-webkit-details-marker {
    display: none;
  }

  .industry-mobile-block summary strong {
    color: var(--navy);
    font-size: 1rem;
    line-height: 1.16;
  }

  .industry-mobile-block p {
    margin: 0.7rem 0;
    font-size: 0.88rem;
  }

  .industry-mobile-block h3 {
    margin: 0.72rem 0 0;
  }

  .industry-mobile-block li {
    font-size: 0.8rem;
  }

  .case-section-heading h2,
  .case-two-column h2,
  .case-asset-layout h2,
  .case-intelligence-layout h2,
  .case-repeatable h2 {
    font-size: 1.35rem;
  }

  .case-section-heading {
    margin-bottom: 1rem;
  }

  .case-footprint-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.58rem;
  }

  .case-footprint-grid article {
    min-height: 88px;
    padding: 0.82rem;
  }

  .case-footprint-grid strong {
    font-size: 1.58rem;
    margin-bottom: 0.32rem;
  }

  .case-footprint-grid span,
  .case-secondary-metric,
  .metric-context-note {
    font-size: 0.78rem;
  }

  .case-chip-panel,
  .case-evidence-list,
  .case-implementation-grid {
    gap: 0.46rem;
  }

  .case-chip-panel span,
  .case-evidence-list span,
  .case-implementation-grid span {
    padding: 0.58rem 0.68rem;
    font-size: 0.8rem;
  }

  .case-model-grid {
    gap: 0.62rem;
  }

  .case-model-grid article {
    min-height: 0;
    padding: 0.82rem;
  }

  .case-model-grid h3 {
    margin: 0.48rem 0 0.38rem;
  }

  .case-flow-strip {
    gap: 0.38rem;
  }

  .case-flow-strip span {
    padding: 0.34rem 0.58rem;
    font-size: 0.72rem;
  }

  .case-detail-card {
    padding: 0.72rem;
  }

  .case-detail-card:not([open]) p {
    display: none;
  }

  .case-detail-card summary h3 {
    font-size: 0.92rem;
  }

  .case-network-grid.case-desktop-detail-grid,
  .case-evidence-list.case-desktop-detail-grid,
  .case-implementation-grid.case-desktop-detail-grid,
  .case-dual-capability .case-desktop-detail-list,
  .case-desktop-detail-list {
    display: none;
  }

  .case-mobile-detail-list {
    display: grid;
    gap: 0.5rem;
  }

  .case-mobile-detail-card {
    border: 1px solid var(--line);
    border-radius: var(--radius);
    background: white;
    box-shadow: 0 10px 22px rgba(7, 17, 31, 0.06);
    padding: 0.68rem 0.76rem;
  }

  .case-mobile-detail-card summary {
    cursor: pointer;
    list-style: none;
  }

  .case-mobile-detail-card summary::-webkit-details-marker {
    display: none;
  }

  .case-mobile-detail-card summary span {
    color: var(--navy);
    font-size: 0.86rem;
    font-weight: 850;
  }

  .case-mobile-detail-card ul {
    display: grid;
    gap: 0.36rem;
    margin-top: 0.62rem;
  }

  .case-mobile-detail-card li {
    position: relative;
    color: var(--text-subtle);
    font-size: 0.8rem;
    font-weight: 650;
    padding-left: 0.88rem;
  }

  .case-mobile-detail-card li::before {
    position: absolute;
    top: 0.62em;
    left: 0;
    width: 5px;
    height: 5px;
    border-radius: 999px;
    background: var(--green);
    content: "";
  }

  .case-dual-capability article {
    padding: 0.86rem;
  }

  .case-dual-capability h2 {
    font-size: 1rem;
    line-height: 1.18;
  }

  .case-dual-capability p {
    margin-bottom: 0.65rem;
  }

  .case-flow-strip {
    display: grid;
  }

  .case-bi-visual {
    padding: 0.72rem;
  }

  .case-bi-grid {
    grid-template-columns: 1fr;
    gap: 0.5rem;
  }

  .case-bi-wide {
    grid-column: auto;
  }

  .case-bi-card,
  .case-bi-toolbar {
    padding: 0.62rem;
  }

  .hero-proof {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .hero-proof span {
    text-align: center;
  }

  .hero-image-card img {
    aspect-ratio: 1 / 0.9;
  }

  .hero-image-card figcaption strong {
    font-size: 1rem;
  }

  .hero-platform-visual {
    gap: 0.62rem;
    padding: 0.78rem;
  }

  .hero-platform-toolbar {
    min-height: 62px;
    gap: 0.5rem;
    padding: 0.72rem;
  }

  .hero-platform-toolbar small {
    font-size: 0.72rem;
    padding: 0.32rem 0.54rem;
  }

  .hero-platform-grid {
    gap: 0.5rem;
  }

  .hero-platform-grid div,
  .hero-platform-list div {
    padding: 0.58rem;
  }

  .hero-platform-body {
    grid-template-columns: minmax(0, 1fr) minmax(132px, 0.74fr);
    gap: 0.5rem;
    min-height: 154px;
  }

  .hero-platform-body .operational-image-pane {
    min-height: 154px;
  }

  .hero-platform-list {
    gap: 0.45rem;
    padding: 0.55rem;
  }

  .hero-platform-list span,
  .hero-platform-grid span {
    font-size: 0.68rem;
  }

  .hero-platform-footer {
    display: none;
  }

  .executive-layer-flow {
    grid-template-columns: 1fr;
  }

  .executive-photo-presentation {
    min-height: 420px;
  }

  .sdl-hero {
    padding: 34px 0 38px;
  }

  .sdl-hero h1 {
    font-size: 2.25rem;
  }

  .sdl-hero .hero-subtitle {
    font-size: 1.02rem;
  }

  .sdl-section-split h2,
  .sdl-challenge h2,
  .sdl-growth-grid h2,
  .sdl-regional-grid h2 {
    font-size: 1.48rem;
  }

  .sdl-model article {
    min-height: auto;
  }

  .sdl-model article:not(:last-child)::after {
    display: none;
  }

  .sdl-flow {
    display: grid;
  }

  .sdl-capability-card ul {
    grid-template-columns: 1fr;
  }

  .sdl-capability-card {
    padding: 0.9rem;
  }

  .sdl-capability-card summary {
    cursor: pointer;
    gap: 0.54rem;
  }

  .sdl-capability-card summary::after {
    display: block;
  }

  .sdl-capability-card:not([open]) summary {
    gap: 0.46rem;
  }

  .sdl-capability-card:not([open]) summary p {
    margin-bottom: 0;
  }

  .sdl-capability-card:not([open]) summary strong {
    display: none;
  }

  .sdl-capability-detail {
    gap: 0.58rem;
    margin-top: 0.58rem;
    padding-top: 0.58rem;
  }

  .sdl-interface-body {
    grid-template-columns: 1fr;
  }

  .sdl-interface-body .operational-image-pane,
  .sdl-interface-body .dashboard-visual-pane {
    min-height: 190px;
  }

  .sdl-secondary-proof {
    width: 100%;
    justify-content: center;
  }

  .button {
    width: 100%;
  }

  .button-text {
    justify-content: center;
    padding-inline: 1rem;
  }

  .button-row,
  .cta-actions {
    display: grid;
    justify-content: stretch;
  }

  .button-row {
    margin-top: 1.45rem;
  }

  .floating-whatsapp {
    display: none;
  }

  .page-hero {
    padding: 30px 0;
  }

  .page-hero h1 {
    font-size: 1.85rem;
  }

  .page-hero p:last-child {
    font-size: 1rem;
  }

  .section-intro h2,
  .service-context h2,
  .featured-case-copy h2,
  .cta-box h2,
  .executive-proof-header h2,
  .platform-intro h2,
  .intelligence-copy h2,
  .why-layout h2,
  .about-executive h2 {
    font-size: 1.35rem;
  }

  .executive-metric-card {
    min-height: 104px;
  }

  .executive-metric-card strong {
    font-size: 1.72rem;
  }

  .platform-capability-card,
  .why-pillar-grid article {
    min-height: auto;
  }

  .executive-screen-toolbar {
    display: grid;
  }

  .executive-screen-toolbar small {
    justify-self: start;
  }

  .case-intro,
  .featured-case {
    gap: 1rem;
  }

  .featured-case,
  .featured-case-copy,
  .spotlight-panel,
  .cta-box {
    padding: 1.2rem;
  }

  .case-dashboard {
    min-height: auto;
    padding: 0.8rem;
  }

  .dashboard-toolbar {
    display: grid;
    gap: 0.75rem;
  }

  .dashboard-status {
    justify-self: start;
  }

  .command-grid {
    grid-template-columns: 1fr;
  }

  .command-kpis,
  .outcome-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .command-map {
    min-height: 300px;
  }

  .command-side {
    grid-template-columns: 1fr;
  }

  .territory-svg {
    inset: 44px 0 0;
  }

  .map-float-card,
  .route-compliance {
    padding: 0.65rem;
  }

  .map-float-card {
    min-width: 132px;
  }

  .support-visual {
    min-height: 176px;
  }

  .phone-mockup {
    width: 128px;
  }

  .activity-timeline {
    width: 96px;
  }

  .visual-card figcaption {
    position: static;
    background: var(--navy-deep);
  }

  .cta-box {
    align-items: stretch;
    flex-direction: column;
  }
}

/* Genesis Phase 1: scoped components inherit Colour Calibration V2 tokens. */
.genesis-home-hero h1 { max-width: 15ch; text-wrap: balance; }
.genesis-section-heading { max-width: 760px; margin-bottom: 32px; }
.genesis-section-heading h2 { max-width: 24ch; }
.genesis-section-heading p:last-child { color: var(--text-secondary); }
.genesis-introduction { background: var(--surface-page); }
.genesis-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.genesis-grid-four { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.genesis-card { min-width: 0; padding: 28px; background: var(--surface-card); border: 1px solid var(--border); border-top: 3px solid var(--blue-primary); border-radius: var(--radius); }
.genesis-card h3 { font-size: 1.2rem; line-height: 1.3; }
.genesis-card > p:last-child { color: var(--text-secondary); margin-bottom: 0; }
.genesis-section-action { display: flex; align-items: center; gap: 24px; margin-top: 28px; }
.genesis-section-action p { max-width: 55ch; margin: 0; font-size: .9rem; color: var(--text-secondary); }
.genesis-hero-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 52px; align-items: center; }
.genesis-hero h1 { color: white; font-size: clamp(2.25rem, 4vw, 3.5rem); line-height: 1.12; letter-spacing: -.035em; }
.genesis-hero p, .genesis-future p { color: #d7e1ec; }
.genesis-hero .eyebrow, .genesis-future .eyebrow { color: var(--green-lift); }
.genesis-hero .genesis-lead { font-size: 1.22rem; color: white; }
.genesis-map { margin: 0; min-width: 0; padding: 28px; border: 1px solid #426078; border-radius: var(--radius); background: var(--navy-panel); }
.genesis-map-heading { display: grid; gap: 10px; margin-bottom: 24px; }
.genesis-map-heading > strong { font-size: 1.35rem; color: white; }
.genesis-status { display: block; font-size: .75rem; letter-spacing: .07em; text-transform: uppercase; font-weight: 750; color: var(--blue-hover); margin-bottom: 12px; }
.genesis-map .genesis-status, .genesis-future .genesis-status { color: var(--green-lift); }
.genesis-map-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.genesis-map-grid span { padding: 14px 12px; border: 1px solid #426078; border-radius: 5px; color: white; font-size: .9rem; }
.genesis-map-core { display: grid; gap: 6px; margin-top: 22px; padding: 23px 16px; text-align: center; background: var(--navy-950); border: 1px solid var(--blue-data); border-top: 3px solid var(--blue-data); border-radius: 5px; }
.genesis-map-core span { color: var(--green-lift); font-weight: 700; }
.genesis-map-core strong { color: white; font-size: 1.35rem; }
.genesis-map-core small { color: #d7e1ec; }
.genesis-map-outcome { padding: 18px 0; text-align: center; color: white; border-bottom: 1px solid #426078; }
.genesis-map figcaption { padding-top: 16px; color: #d7e1ec; font-size: .8rem; }
.genesis-two-column { display: grid; grid-template-columns: 1fr 1fr; gap: 52px; align-items: start; }
.genesis-text-link { display: inline-block; color: var(--blue-hover); font-weight: 700; text-underline-offset: 4px; text-decoration: underline; }
.genesis-evidence { display: flex; gap: 28px; align-items: center; justify-content: space-between; margin: 32px 0 24px; padding: 28px; background: white; border-left: 3px solid var(--green-primary); }
.genesis-evidence p { max-width: 68ch; margin-bottom: 0; }
.genesis-evidence .button { flex-shrink: 0; }
.genesis-future-list { display: grid; gap: 24px; }
.genesis-future-list article { border-bottom: 1px solid #426078; padding-bottom: 18px; }
.genesis-future h2, .genesis-future h3 { color: white; }
.genesis-future-list h3 { margin-bottom: 10px; }
.genesis-future-list p { margin-bottom: 0; }
.genesis-cta { background: var(--surface-section); }
.genesis-cta .button-row { align-self: center; }
.genesis-hero *, .genesis-two-column > * { min-width: 0; }
@media (max-width: 1020px) {
  .genesis-grid-four { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .genesis-hero-grid, .genesis-two-column { gap: 28px; }
}
@media (max-width: 940px) {
  .genesis-hero-grid, .genesis-two-column { grid-template-columns: 1fr; }
  .genesis-map { max-width: 650px; width: 100%; }
  .genesis-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .genesis-evidence { align-items: flex-start; flex-direction: column; }
}
@media (max-width: 640px) {
  .genesis-grid { grid-template-columns: 1fr; }
  .genesis-card, .genesis-map, .genesis-evidence { padding: 22px; }
  .genesis-section-action { flex-direction: column; align-items: flex-start; gap: 16px; }
  .genesis-home-hero h1 { max-width: 18ch; }
  .genesis-hero .button-row { align-items: stretch; }
}

/* Executive review: retain the architecture card, refine its hierarchy. */
.genesis-map-heading { margin-bottom: 16px; }
.genesis-map-heading > strong, .genesis-map-outcome > strong { text-transform: uppercase; font-size: .85rem; letter-spacing: .08em; }
.genesis-map-arrow { text-align: center; color: var(--green-lift); font-size: 1.25rem; line-height: 1; padding: 12px 0; }
.genesis-map-core { margin-top: 0; }
.genesis-map-outcome { display: grid; gap: 10px; padding-top: 4px; }
.genesis-map figcaption { display: grid; gap: 6px; text-align: center; }
.genesis-map figcaption strong { color: var(--green-lift); font-size: .75rem; text-transform: uppercase; letter-spacing: .08em; }

/* Final executive review: Homepage mobile rhythm; shared header unchanged. */
@media (max-width: 640px) {
  .genesis-home-hero { padding: 40px 0; }
  .genesis-home-hero h1 { font-size: 2.25rem; line-height: 1.12; max-width: 18ch; letter-spacing: -.035em; margin-bottom: 24px; }
  .genesis-home-hero .hero-subtitle { font-size: 1.0625rem; line-height: 1.65; margin-bottom: 0; }
  .genesis-home-hero .button-row { margin-top: 28px; gap: 14px; }
  .genesis-home-hero .hero-grid { gap: 32px; }
}

/* Phase 2: scoped implementation journey; approved shared design remains unchanged. */
.phase2-journey { display: flex; flex-wrap: wrap; gap: 12px; padding: 0; margin: 28px 0; list-style: none; }
.phase2-journey li { padding: 14px 18px; border: 1px solid var(--border); border-radius: 12px; font-weight: 700; }
.phase2-journey li:not(:last-child)::after { content: " →"; margin-left: 12px; }
@media (max-width: 600px) { .phase2-journey { flex-direction: column; } .phase2-journey li:not(:last-child)::after { content: " ↓"; } }

@media (min-width: 1024px) { .phase2-case-hero h1 { font-size: clamp(3rem, 4.4vw, 4rem); } }

/* Phase 3 Home orchestration treatment. */
.home-solution-pill-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-top: 28px; }
.home-solution-pill-grid span { padding: 18px 20px; border: 1px solid var(--border); border-radius: 12px; background: var(--surface); font-weight: 700; color: var(--ink); }
@media (max-width: 700px) { .home-solution-pill-grid { grid-template-columns: 1fr; } }
