/* Lightpeak — Homepage Modular Sections */

/* ─────────────────────────────────────────────────────────────
   §15  HOMEPAGE MODULES (services, proof, industries, cta-band)
   ───────────────────────────────────────────────────────────── */

/* ── Section 4: Services quick-nav ───────────────────────────── */
.services {
  padding-block: var(--space-section-vertical);
  color: var(--color-text-on-dark);
}

.services__eyebrow {
  margin-bottom: var(--space-scale-4);
  color: var(--color-text-accent);
}

.services__headline {
  font-size: var(--font-size-heading-h2);
  line-height: var(--line-height-heading-h2);
  letter-spacing: var(--tracking-heading);
  font-weight: var(--font-weight-semibold);
  margin-bottom: var(--space-scale-4);
  color: var(--color-text-on-dark);
}

.services__subhead {
  font-size: var(--font-size-body);
  line-height: var(--line-height-body);
  color: var(--color-text-secondary-inverse);
  max-width: 100%;
  width: 100%;
  margin-bottom: var(--space-scale-10);
  opacity: 0.95;
}

.services__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-scale-4);
}

.services__card {
  display: flex;
  flex-direction: column;
  gap: var(--space-scale-3);
  padding: var(--space-scale-6);
  border: none !important;
  border-radius: var(--radius-scale-lg);
  background: var(--color-navy-card);
  color: #FFFFFF;
  text-decoration: none !important;
  box-sizing: border-box;
  min-width: 0;
  box-shadow: 0 4px 18px -2px rgba(0, 0, 0, 0.35), 0 2px 6px -1px rgba(0, 0, 0, 0.2);
  transition: transform var(--motion-duration-fast) var(--motion-easing), box-shadow var(--motion-duration-fast) var(--motion-easing), background-color var(--motion-duration-fast) var(--motion-easing);
}

.services__card,
.services__card:hover,
.services__card:focus,
.services__card:active,
.services__card:visited {
  text-decoration: none !important;
}

.services__card *,
.services__card:hover *,
.services__card:focus * {
  text-decoration: none !important;
}

.services .services__card--anchor {
  background: var(--color-navy-gradient);
  color: var(--color-text-on-dark);
  border: none !important;
  box-shadow: 0 8px 28px -3px rgba(0, 0, 0, 0.45), 0 3px 10px -1px rgba(0, 0, 0, 0.25);
}

.services__card:hover,
.services__card:focus-visible {
  transform: translateY(-4px);
  box-shadow: 0 16px 36px -4px rgba(0, 0, 0, 0.55), 0 6px 14px -2px rgba(0, 0, 0, 0.3);
  border: none !important;
}

.services__card--anchor:hover,
.services__card--anchor:focus-visible {
  transform: translateY(-4px);
  box-shadow: 0 22px 48px -4px rgba(0, 0, 0, 0.65), 0 8px 20px -2px rgba(0, 0, 0, 0.35);
  border: none !important;
}

.services__card:focus-visible {
  outline: var(--focus-ring-width) solid var(--focus-ring-color);
  outline-offset: 2px;
}

.services__card-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: var(--space-scale-1);
}

.services__card-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border-radius: var(--radius-scale-md);
  background: #253055;
  color: var(--color-text-accent);
  border: none;
  transition: background var(--motion-duration-fast) var(--motion-easing), color var(--motion-duration-fast) var(--motion-easing);
}

.services__card:hover .services__card-icon {
  background: #2c3966;
  color: var(--color-text-accent);
}

.services__card--anchor .services__card-icon {
  background: #2c3966;
  color: var(--color-text-accent);
}

.services__card-number {
  font-size: var(--font-size-small);
  color: var(--color-text-secondary-inverse);
  opacity: 0.7;
}

.services__card--anchor .services__card-number {
  color: var(--color-text-accent);
  opacity: 1;
}

.services__card-title {
  font-size: 1.1875rem;
  line-height: 1.35;
  font-weight: var(--font-weight-semibold);
  color: #FFFFFF;
  overflow-wrap: break-word;
  word-break: normal;
  hyphens: auto;
}

.services__card--anchor .services__card-title {
  font-size: var(--font-size-heading-h3);
  line-height: 1.3;
}

.services__card-desc {
  font-size: var(--font-size-small);
  line-height: 1.55;
  color: #D9D9D9;
  overflow-wrap: break-word;
  hyphens: auto;
}

.services__card--anchor .services__card-desc {
  font-size: var(--font-size-body);
  line-height: 1.6;
  color: var(--color-text-secondary-inverse);
}

.services__card-tags {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-scale-2);
  margin-top: var(--space-scale-2);
  margin-bottom: var(--space-scale-2);
}

.services__card-tag {
  display: inline-flex;
  align-items: center;
  padding: 4px 10px;
  font-size: var(--font-size-caption);
  font-weight: var(--font-weight-semibold);
  line-height: 1.2;
  color: #FFFFFF;
  background: #273359;
  border: none;
  border-radius: var(--radius-scale-full);
  white-space: nowrap;
}

.services__card-link {
  display: inline-flex;
  align-items: center;
  gap: var(--space-scale-2);
  margin-top: auto;
  padding-top: var(--space-scale-4);
  font-size: var(--font-size-caption);
  font-weight: var(--font-weight-semibold);
  line-height: 1.35;
  color: #0EC1F6;
  text-decoration: none !important;
  overflow-wrap: break-word;
  hyphens: auto;
  transition: color var(--motion-duration-fast) var(--motion-easing);
}

.services__card:hover .services__card-link {
  color: #5ee2ff;
}

.services__card--anchor .services__card-link {
  color: var(--color-text-accent);
}

.services__card-link svg {
  flex: 0 0 14px;
  width: 14px;
  height: 14px;
}

/* ── Section 5: Proof points ─────────────────────────────────── */
.proof {
  padding-block: var(--space-section-vertical);
}

.proof__eyebrow {
  margin-bottom: var(--space-scale-4);
  color: var(--color-text-accent);
}

.proof__headline {
  font-size: var(--font-size-heading-h2);
  line-height: var(--line-height-heading-h2);
  letter-spacing: var(--tracking-heading);
  font-weight: var(--font-weight-semibold);
  margin-bottom: var(--space-scale-4);
}

.proof__subhead {
  font-size: var(--font-size-body);
  line-height: var(--line-height-body);
  color: var(--color-text-secondary);
  max-width: 100%;
  width: 100%;
  margin-bottom: var(--space-scale-10);
}

.proof__grid {
  display: flex;
  flex-direction: column;
  gap: var(--space-scale-6);
}

.proof__item--anchor {
  padding: var(--space-scale-8);
  border: none !important;
  border-radius: var(--radius-scale-lg);
  background: var(--color-surface-card);
  box-shadow: 0 6px 24px -2px rgba(0, 0, 0, 0.08), 0 2px 8px -1px rgba(0, 0, 0, 0.04);
}

.section--dark .proof__item--anchor {
  background: var(--color-navy-gradient);
  box-shadow: 0 8px 28px -3px rgba(0, 0, 0, 0.45), 0 3px 10px -1px rgba(0, 0, 0, 0.25);
}

.proof__anchor-top {
  display: flex;
  align-items: center;
  gap: var(--space-scale-4);
  margin-bottom: var(--space-scale-2);
}

.proof__anchor-metric {
  display: flex;
  align-items: baseline;
  gap: 16px;
  flex-wrap: wrap;
}

.proof__anchor-number {
  font-size: var(--font-size-display);
  line-height: 1;
  font-weight: var(--font-weight-bold);
  color: var(--color-text-primary);
  letter-spacing: -0.02em;
}

.section--dark .proof__anchor-number {
  color: #FFFFFF;
}

.proof__anchor-label {
  font-size: 15px;
  font-weight: var(--font-weight-bold);
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--color-text-secondary);
  align-self: center;
}

.section--dark .proof__anchor-label {
  color: var(--color-text-secondary-inverse);
}

.proof__anchor-context {
  font-size: var(--font-size-body);
  color: var(--color-text-secondary);
  line-height: var(--line-height-body);
}

.section--dark .proof__anchor-context {
  color: var(--color-text-secondary-inverse);
}

.proof__subgrid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-scale-6);
}

@media (min-width: 768px) {
  .proof__subgrid {
    grid-template-columns: repeat(3, 1fr);
  }
}

.proof__card {
  display: flex;
  flex-direction: column;
  gap: var(--space-scale-2);
  padding: var(--space-scale-6);
  border: none !important;
  border-radius: var(--radius-scale-lg);
  background: var(--color-surface-card);
  box-shadow: 0 4px 18px -2px rgba(0, 0, 0, 0.08), 0 2px 6px -1px rgba(0, 0, 0, 0.04);
  transition: transform var(--motion-duration-fast) var(--motion-easing), box-shadow var(--motion-duration-fast) var(--motion-easing), background-color var(--motion-duration-fast) var(--motion-easing);
}

.proof__card:hover {
  transform: translateY(-4px);
  box-shadow: 0 14px 32px -4px rgba(0, 0, 0, 0.12), 0 4px 12px -2px rgba(0, 0, 0, 0.06);
}

.section--dark .proof__card {
  background: var(--color-navy-card);
  border: none !important;
  box-shadow: 0 4px 18px -2px rgba(0, 0, 0, 0.35), 0 2px 6px -1px rgba(0, 0, 0, 0.2);
}

.section--dark .proof__card:hover {
  transform: translateY(-4px);
  background: var(--color-navy-card-hover);
  box-shadow: 0 16px 36px -4px rgba(0, 0, 0, 0.55), 0 6px 14px -2px rgba(0, 0, 0, 0.3);
}

.proof__card-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: var(--space-scale-2);
}

.proof__icon-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: var(--radius-scale-md);
  background: rgba(14, 193, 246, 0.1);
  color: var(--color-text-accent);
}

.proof__icon-badge svg {
  width: 20px;
  height: 20px;
}

.proof__live-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 10px;
  border-radius: var(--radius-scale-pill);
  background: rgba(11, 170, 92, 0.12);
  color: var(--color-semantic-success);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.proof__live-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--color-semantic-success);
  animation: live-pulse 2s infinite;
}

@keyframes live-pulse {
  0%, 100% { opacity: 1; transform: scale(1); }
  50% { opacity: 0.4; transform: scale(0.85); }
}

.proof__number {
  font-size: 20px;
  line-height: 1.2;
  font-weight: var(--font-weight-bold);
  color: var(--color-text-primary);
  margin-top: var(--space-scale-1);
}

@media (min-width: 768px) {
  .proof__number {
    font-size: 24px;
  }
}

.section--dark .proof__number {
  color: #FFFFFF;
}

.proof__label {
  font-size: var(--font-size-caption);
  line-height: var(--line-height-caption);
  font-weight: var(--font-weight-semibold);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--color-text-secondary);
}

.section--dark .proof__label {
  color: var(--color-text-secondary-inverse);
}

.proof__context {
  font-size: var(--font-size-small);
  line-height: var(--line-height-body);
  color: var(--color-text-secondary);
  margin-top: var(--space-scale-1);
}

.section--dark .proof__context {
  color: var(--color-text-secondary-inverse);
}

.proof__risk {
  display: flex;
  flex-direction: column;
  gap: var(--space-scale-2);
  margin-top: var(--space-scale-6);
  padding: var(--space-scale-6) var(--space-scale-8);
  border: none !important;
  background: var(--color-surface-card);
  border-radius: var(--radius-scale-lg);
  box-shadow: 0 4px 18px -2px rgba(0, 0, 0, 0.08), 0 2px 6px -1px rgba(0, 0, 0, 0.04);
}

.section--dark .proof__risk {
  background: var(--color-navy-card);
  border: none !important;
  box-shadow: 0 4px 18px -2px rgba(0, 0, 0, 0.35), 0 2px 6px -1px rgba(0, 0, 0, 0.2);
}

.proof__risk-header {
  display: flex;
  align-items: center;
  gap: var(--space-scale-3);
}

.proof__risk-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: var(--radius-scale-md);
  background: rgba(240, 78, 44, 0.1);
  color: var(--color-warmth-accent);
}

.proof__risk-metric {
  display: flex;
  align-items: baseline;
  gap: var(--space-scale-3);
}

.proof__risk-number {
  font-size: var(--font-size-heading-h2);
  line-height: 1;
  font-weight: var(--font-weight-bold);
  color: var(--color-warmth-accent);
}

.proof__risk-label {
  font-size: var(--font-size-caption);
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-weight: var(--font-weight-semibold);
  color: var(--color-text-primary);
}

.section--dark .proof__risk-label {
  color: #FFFFFF;
}

.proof__risk-context {
  font-size: var(--font-size-body);
  line-height: var(--line-height-body);
  color: var(--color-text-secondary);
}

.section--dark .proof__risk-context {
  color: var(--color-text-secondary-inverse);
}

.proof__seasonal {
  margin-top: var(--space-scale-12);
  padding-top: var(--space-scale-6);
  border-top: var(--border-width-hairline) solid var(--color-border-light);
  font-size: var(--font-size-body);
  font-weight: var(--font-weight-semibold);
  color: var(--color-text-primary);
}

.stat-counter-bar__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  gap: var(--space-scale-6);
  width: 100%;
}

.stat-counter-bar__item {
  display: flex;
  flex-direction: column;
  gap: var(--space-scale-1);
}

.stat-counter-bar__number {
  font-size: var(--font-size-heading-h2);
  line-height: 1.1;
  font-weight: var(--font-weight-bold);
  color: var(--color-text-accent);
}

.stat-counter-bar__label {
  font-size: var(--font-size-caption, 0.8125rem);
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--color-text-secondary);
}

.numbered-cards__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-scale-6);
}

@media (min-width: 768px) {
  .numbered-cards__grid {
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  }
}

.numbered-card {
  display: flex;
  flex-direction: column;
  gap: var(--space-scale-4);
  padding: var(--space-scale-8);
  background: var(--color-surface-card);
  border: none !important;
  border-radius: var(--radius-scale-lg);
  box-shadow: var(--shadow-card);
  transition: transform var(--motion-duration-fast) var(--motion-easing), box-shadow var(--motion-duration-fast) var(--motion-easing);
  min-width: 0;
}

.numbered-card:hover {
  transform: translateY(-4px);
  box-shadow: var(--shadow-card-hover);
}

.section--dark .numbered-card {
  background: var(--color-navy-card);
  border: none !important;
  box-shadow: var(--shadow-card-dark);
}

.section--dark .numbered-card:hover {
  transform: translateY(-4px);
  background: var(--color-navy-card-hover);
  box-shadow: var(--shadow-card-dark-hover);
}

.section--dark .numbered-card__num {
  color: var(--color-text-accent);
}

.section--dark .numbered-card__step-label,
.section--dark .numbered-card__tag {
  background: rgba(255, 255, 255, 0.08);
  color: rgba(255, 255, 255, 0.7);
}

.section--dark .numbered-card__title {
  color: #FFFFFF;
}

.section--dark .numbered-card__desc {
  color: var(--color-text-secondary-inverse);
}

.section--dark .numbered-card__benefit,
.section--dark .numbered-card__highlight {
  color: #34D399;
}

.numbered-card__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-scale-4);
  margin-bottom: var(--space-scale-2);
}

.numbered-card__num {
  font-size: var(--font-size-heading-h3);
  font-weight: var(--font-weight-bold);
  color: var(--color-text-accent);
  line-height: 1;
}

.numbered-card__step-label,
.numbered-card__tag {
  font-size: var(--font-size-caption, 0.75rem);
  text-transform: uppercase;
  color: var(--color-text-secondary);
  background: rgba(0, 0, 0, 0.04);
  padding: 4px 8px;
  border-radius: var(--radius-scale-sm);
}

.numbered-card__title {
  font-size: var(--font-size-heading-h4);
  font-weight: var(--font-weight-semibold);
  line-height: 1.3;
  color: var(--color-text-primary);
  margin: 0;
}

.numbered-card__desc {
  font-size: var(--font-size-body);
  line-height: var(--line-height-body);
  color: var(--color-text-secondary);
  margin: 0;
}

.numbered-card__benefit,
.numbered-card__highlight {
  font-size: var(--font-size-small);
  font-weight: 600;
  color: #10B981;
  margin-top: auto;
  padding-top: var(--space-scale-2);
}

.faq-section {
  padding-block: var(--space-section-vertical);
}

.faq-eyebrow {
  text-align: start;
  margin-inline: 0;
  margin-bottom: var(--space-scale-3);
  color: var(--color-text-accent);
}

.faq-headline {
  text-align: start;
  margin-inline: 0;
  font-family: var(--font-family-display);
  font-size: var(--font-size-heading-h2);
  line-height: var(--line-height-heading-h2);
  font-weight: var(--font-weight-semibold);
  letter-spacing: var(--tracking-heading);
  margin-bottom: var(--space-scale-4);
  color: var(--color-text-primary);
}

.faq-subhead {
  text-align: start;
  margin-inline: 0;
  color: var(--color-text-secondary);
  max-width: var(--layout-prose-max);
  margin-bottom: var(--space-scale-6);
}

.proof__faq,
.pulse__faq,
.pricing__faq,
.pricing__faq-list,
.cluster-faq__list,
.industry-faq__list,
.comparison-faq__list,
.city-faq__list,
.faq-list {
  display: flex;
  flex-direction: column;
  width: 100%;
  max-width: var(--faq-max-width);
  margin-inline: auto;
  margin-top: var(--space-scale-10);
  gap: var(--faq-gap);
}

.pulse__faq-heading,
.pricing__faq-heading {
  text-align: center;
  font-family: var(--font-family-display);
  font-size: var(--font-size-heading-h2);
  line-height: var(--line-height-heading-h2);
  font-weight: var(--font-weight-semibold);
  letter-spacing: var(--tracking-heading);
  margin-bottom: var(--space-scale-6);
  color: var(--color-text-primary);
}

.cluster-faq__headline,
.industry-faq__headline,
.comparison-faq__headline,
.city-faq__headline {
  text-align: start;
  margin-inline: 0;
  font-family: var(--font-family-display);
  font-size: var(--font-size-heading-h2);
  line-height: var(--line-height-heading-h2);
  font-weight: var(--font-weight-semibold);
  letter-spacing: var(--tracking-heading);
  margin-bottom: var(--space-scale-4);
  color: var(--color-text-primary);
}

.cluster-faq__eyebrow,
.industry-faq__eyebrow,
.comparison-faq__eyebrow,
.city-faq__eyebrow {
  text-align: start;
  margin-inline: 0;
  margin-bottom: var(--space-scale-3);
  color: var(--color-text-accent);
}

.section--dark .pulse__faq-heading,
.section--dark .pricing__faq-heading,
.section--dark .cluster-faq__headline,
.section--dark .industry-faq__headline,
.section--dark .comparison-faq__headline,
.section--dark .city-faq__headline,
.section--dark .faq-headline,
:root[data-theme='dark'] .pulse__faq-heading,
:root[data-theme='dark'] .pricing__faq-heading,
:root[data-theme='dark'] .cluster-faq__headline,
:root[data-theme='dark'] .industry-faq__headline,
:root[data-theme='dark'] .comparison-faq__headline,
:root[data-theme='dark'] .city-faq__headline,
:root[data-theme='dark'] .faq-headline {
  color: #FFFFFF;
}

.proof__faq-item,
.pulse__faq-item,
.pricing__faq-item,
.cluster-faq__item,
.industry-faq__item,
.comparison-faq__item,
.city-faq__item,
.faq-item {
  background: var(--color-surface-card);
  border: 1px solid var(--color-card-border);
  border-radius: var(--faq-radius);
  padding: var(--faq-card-padding);
  box-shadow: 0 2px 8px -2px rgba(0, 0, 0, 0.03);
  transition: border-color var(--motion-duration-fast) ease, box-shadow var(--motion-duration-fast) ease, background var(--motion-duration-fast) ease;
}

@media (max-width: 640px) {
  .proof__faq-item,
  .pulse__faq-item,
  .pricing__faq-item,
  .cluster-faq__item,
  .industry-faq__item,
  .comparison-faq__item,
  .city-faq__item,
  .faq-item {
    padding: var(--faq-card-padding-mobile);
  }
}

.proof__faq-item:hover,
.pulse__faq-item:hover,
.pricing__faq-item:hover,
.cluster-faq__item:hover,
.industry-faq__item:hover,
.comparison-faq__item:hover,
.city-faq__item:hover,
.faq-item:hover {
  border-color: var(--color-brand-primary);
}

.proof__faq-item[open],
.pulse__faq-item[open],
.pricing__faq-item[open],
.cluster-faq__item[open],
.industry-faq__item[open],
.comparison-faq__item[open],
.city-faq__item[open],
.faq-item[open] {
  border-color: var(--color-brand-primary);
  box-shadow: 0 4px 16px -2px rgba(14, 193, 246, 0.12);
}

.section--dark .proof__faq-item,
.section--dark .pulse__faq-item,
.section--dark .pricing__faq-item,
.section--dark .cluster-faq__item,
.section--dark .industry-faq__item,
.section--dark .comparison-faq__item,
.section--dark .city-faq__item,
.section--dark .faq-item,
:root[data-theme='dark'] .proof__faq-item,
:root[data-theme='dark'] .pulse__faq-item,
:root[data-theme='dark'] .pricing__faq-item,
:root[data-theme='dark'] .cluster-faq__item,
:root[data-theme='dark'] .industry-faq__item,
:root[data-theme='dark'] .comparison-faq__item,
:root[data-theme='dark'] .city-faq__item,
:root[data-theme='dark'] .faq-item {
  background: var(--color-navy-card);
  border-color: var(--color-navy-border);
  box-shadow: inset 0 1px 0 0 rgba(255, 255, 255, 0.08), 0 4px 16px -2px rgba(0, 0, 0, 0.25);
}

.section--dark .proof__faq-item[open],
.section--dark .pulse__faq-item[open],
.section--dark .pricing__faq-item[open],
.section--dark .cluster-faq__item[open],
.section--dark .industry-faq__item[open],
.section--dark .comparison-faq__item[open],
.section--dark .city-faq__item[open],
.section--dark .faq-item[open],
:root[data-theme='dark'] .proof__faq-item[open],
:root[data-theme='dark'] .pulse__faq-item[open],
:root[data-theme='dark'] .pricing__faq-item[open],
:root[data-theme='dark'] .cluster-faq__item[open],
:root[data-theme='dark'] .industry-faq__item[open],
:root[data-theme='dark'] .comparison-faq__item[open],
:root[data-theme='dark'] .city-faq__item[open],
:root[data-theme='dark'] .faq-item[open] {
  border-color: var(--color-brand-primary);
  box-shadow: inset 0 1px 0 0 rgba(255, 255, 255, 0.12), 0 0 16px rgba(14, 193, 246, 0.2);
}

.proof__faq-question,
.pulse__faq-question,
.pricing__faq-question,
.cluster-faq__question,
.industry-faq__question,
.comparison-faq__question,
.city-faq__question,
.faq-question {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-scale-4);
  padding: 0;
  font-family: var(--font-family-body);
  font-size: var(--faq-font-size-q);
  font-weight: var(--font-weight-semibold);
  line-height: var(--line-height-body);
  color: var(--color-text-primary);
  cursor: pointer;
  list-style: none;
  user-select: none;
  transition: color var(--motion-duration-fast) ease;
}

.proof__faq-question::-webkit-details-marker,
.pulse__faq-question::-webkit-details-marker,
.pricing__faq-question::-webkit-details-marker,
.cluster-faq__question::-webkit-details-marker,
.industry-faq__question::-webkit-details-marker,
.comparison-faq__question::-webkit-details-marker,
.city-faq__question::-webkit-details-marker,
.faq-question::-webkit-details-marker {
  display: none;
}

.proof__faq-question::marker,
.pulse__faq-question::marker,
.pricing__faq-question::marker,
.cluster-faq__question::marker,
.industry-faq__question::marker,
.comparison-faq__question::marker,
.city-faq__question::marker,
.faq-question::marker {
  display: none;
}

.proof__faq-question:hover,
.pulse__faq-question:hover,
.pricing__faq-question:hover,
.cluster-faq__question:hover,
.industry-faq__question:hover,
.comparison-faq__question:hover,
.city-faq__question:hover,
.faq-question:hover {
  color: var(--color-text-accent);
}

.section--dark .proof__faq-question,
.section--dark .pulse__faq-question,
.section--dark .pricing__faq-question,
.section--dark .cluster-faq__question,
.section--dark .industry-faq__question,
.section--dark .comparison-faq__question,
.section--dark .city-faq__question,
.section--dark .faq-question,
:root[data-theme='dark'] .proof__faq-question,
:root[data-theme='dark'] .pulse__faq-question,
:root[data-theme='dark'] .pricing__faq-question,
:root[data-theme='dark'] .cluster-faq__question,
:root[data-theme='dark'] .industry-faq__question,
:root[data-theme='dark'] .comparison-faq__question,
:root[data-theme='dark'] .city-faq__question,
:root[data-theme='dark'] .faq-question {
  color: #FFFFFF;
}

.proof__faq-chevron,
.pulse__faq-chevron,
.pricing__faq-chevron,
.cluster-faq__chevron,
.industry-faq__chevron,
.comparison-faq__chevron,
.city-faq__chevron,
.faq-chevron {
  width: 20px;
  height: 20px;
  flex-shrink: 0;
  color: var(--color-text-secondary);
  transition: transform var(--motion-duration-base) var(--motion-easing), color var(--motion-duration-fast) ease;
}

.proof__faq-item[open] > .proof__faq-question > .proof__faq-chevron,
.pulse__faq-item[open] > .pulse__faq-question > .pulse__faq-chevron,
.pricing__faq-item[open] > .pricing__faq-question > .pricing__faq-chevron,
.cluster-faq__item[open] > .cluster-faq__question > .cluster-faq__chevron,
.industry-faq__item[open] > .industry-faq__question > .industry-faq__chevron,
.comparison-faq__item[open] > .comparison-faq__question > .comparison-faq__chevron,
.city-faq__item[open] > .city-faq__question > .city-faq__chevron,
.faq-item[open] > .faq-question > .faq-chevron {
  transform: rotate(180deg);
  color: var(--color-text-accent);
}

.proof__faq-answer,
.pulse__faq-answer,
.pricing__faq-answer,
.cluster-faq__answer,
.industry-faq__answer,
.comparison-faq__answer,
.city-faq__answer,
.faq-answer {
  font-size: var(--faq-font-size-a);
  line-height: var(--line-height-body);
  color: var(--color-text-secondary);
  padding-top: var(--space-scale-3);
  margin: 0;
}

.section--dark .proof__faq-answer,
.section--dark .pulse__faq-answer,
.section--dark .pricing__faq-answer,
.section--dark .cluster-faq__answer,
.section--dark .industry-faq__answer,
.section--dark .comparison-faq__answer,
.section--dark .city-faq__answer,
.section--dark .faq-answer,
:root[data-theme='dark'] .proof__faq-answer,
:root[data-theme='dark'] .pulse__faq-answer,
:root[data-theme='dark'] .pricing__faq-answer,
:root[data-theme='dark'] .cluster-faq__answer,
:root[data-theme='dark'] .industry-faq__answer,
:root[data-theme='dark'] .comparison-faq__answer,
:root[data-theme='dark'] .city-faq__answer,
:root[data-theme='dark'] .faq-answer {
  color: var(--color-text-secondary-inverse);
}

.cluster-faq__bridge,
.industry-faq__bridge,
.faq-bridge {
  text-align: center;
  margin-top: var(--space-scale-8);
  margin-inline: auto;
  width: 100%;
  max-width: var(--faq-max-width, 860px);
  font-size: var(--font-size-body);
  color: var(--color-text-secondary);
}

.cluster-faq__bridge-link,
.industry-faq__bridge-link,
.faq-bridge-link {
  color: var(--color-text-link);
  font-weight: var(--font-weight-semibold);
  text-decoration: none;
  margin-left: var(--space-scale-2);
}

.cluster-faq__bridge-link:hover,
.industry-faq__bridge-link:hover,
.faq-bridge-link:hover {
  text-decoration: underline;
  color: var(--color-text-link);
}

/* ═════════════════════════════════════════════════════════════
   GALLERY NAV BUTTONS — shared between card carousels
   ═════════════════════════════════════════════════════════════ */

.gallery-nav__btn {
  flex: 0 0 auto;
  width: 40px;
  height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: var(--border-width-hairline) solid var(--color-border-light);
  border-radius: var(--radius-scale-full);
  background: var(--color-surface-card);
  color: var(--color-text-secondary);
  cursor: pointer;
  transition: border-color var(--motion-duration-fast) var(--motion-easing),
              color var(--motion-duration-fast) var(--motion-easing);
}

.gallery-nav__btn:hover,
.gallery-nav__btn:focus-visible {
  border-color: var(--color-brand-primary);
  color: var(--color-text-accent);
}

.gallery-nav__btn:focus-visible {
  outline: var(--focus-ring-width) solid var(--focus-ring-color);
  outline-offset: var(--focus-ring-offset);
}

.gallery-nav__btn[disabled],
.gallery-nav__btn[tabindex="-1"] {
  opacity: var(--opacity-level-disabled);
  pointer-events: none;
}

.industries__nav {
  display: flex;
  gap: var(--space-scale-2);
  flex-shrink: 0;
}

/* ── Section 6: Industries teaser ────────────────────────────── */
.industries {
  padding-block: var(--space-section-vertical);
}

.industries__eyebrow {
  margin-bottom: var(--space-scale-4);
  color: var(--color-text-accent);
}

.industries__headline {
  font-size: var(--font-size-heading-h2);
  line-height: var(--line-height-heading-h2);
  letter-spacing: var(--tracking-heading);
  font-weight: var(--font-weight-semibold);
  margin-bottom: var(--space-scale-4);
}

.industries__header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--space-scale-6);
  margin-bottom: var(--space-scale-10);
}

.industries__header-text {
  flex: 1 1 auto;
  max-width: none;
  min-width: 0;
}

.industries__subhead {
  font-size: var(--font-size-body);
  line-height: var(--line-height-body);
  color: var(--color-text-secondary);
  max-width: 100%;
  width: 100%;
  margin-bottom: var(--space-scale-10);
}

.industries__gallery {
  display: flex;
  gap: var(--space-scale-4);
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  -ms-overflow-style: none;
  padding-block: var(--space-scale-2);
  scroll-padding-left: 0;
}

.industries__gallery::-webkit-scrollbar {
  display: none;
}

.industries__card {
  flex: 0 0 80%;
  max-width: 360px;
  scroll-snap-align: start;
  display: flex;
  flex-direction: column;
  border-radius: var(--radius-scale-lg);
  overflow: hidden;
  background: var(--color-surface-card);
  color: var(--color-text-primary);
  text-decoration: none !important;
  transition: transform var(--motion-duration-fast) var(--motion-easing);
  border: var(--border-width-hairline) solid var(--color-card-border);
}

.industries__card,
.industries__card:hover,
.industries__card:focus,
.industries__card:active,
.industries__card:visited {
  text-decoration: none !important;
}

.industries__card *,
.industries__card:hover *,
.industries__card:focus * {
  text-decoration: none !important;
}

.industries__card:hover {
  transform: translateY(-2px);
}

.industries__card:focus-visible {
  outline: var(--focus-ring-width) solid var(--focus-ring-color);
  outline-offset: var(--focus-ring-offset);
}

.industries__card-image {
  position: relative;
  width: 100%;
  aspect-ratio: 4 / 3;
  overflow: hidden;
}

.industries__card-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.industries__card-placeholder {
  width: 100%;
  height: 100%;
}

.industries__card-placeholder svg {
  display: block;
  width: 100%;
  height: 100%;
}

.industries__card-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(0,0,0,0.6) 0%, transparent 50%);
  pointer-events: none;
}

.industries__card-content {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  gap: var(--space-scale-2);
  padding: var(--card-padding-compact);
}

.industries__card-industry {
  font-size: var(--font-size-caption);
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-weight: var(--font-weight-semibold);
  color: var(--color-text-secondary);
}

.industries__card-title {
  font-size: var(--font-size-heading-h3);
  line-height: var(--line-height-heading-h3);
  font-weight: var(--font-weight-semibold);
}

.industries__card-clients {
  font-size: var(--font-size-small);
  color: var(--color-text-secondary);
}

.industries__card-value {
  font-size: var(--font-size-body);
  line-height: var(--line-height-body);
  color: var(--color-text-secondary);
}

.industries__card-link {
  display: inline-flex;
  align-items: center;
  gap: var(--space-scale-2);
  margin-top: auto;
  padding-top: var(--space-scale-3);
  font-size: var(--font-size-small);
  font-weight: var(--font-weight-semibold);
  color: var(--color-brand-secondary);
}

.industries__card-link svg {
  flex: 0 0 16px;
  width: 16px;
  height: 16px;
  transition: transform var(--motion-duration-fast) ease;
}

.industries__card:hover .industries__card-link svg {
  transform: translateX(4px);
}

.section--dark .industries__headline,
:root[data-theme='dark'] .industries__headline {
  color: #FFFFFF;
}

.section--dark .industries__subhead,
:root[data-theme='dark'] .industries__subhead {
  color: var(--color-text-secondary-inverse);
}

.section--dark .industries__eyebrow,
:root[data-theme='dark'] .industries__eyebrow {
  color: var(--color-text-accent);
}

.section--dark .gallery-nav__btn,
:root[data-theme='dark'] .gallery-nav__btn {
  background: var(--color-navy-card);
  border-color: var(--color-navy-border);
  color: var(--color-text-secondary-inverse);
}

.section--dark .gallery-nav__btn:hover,
.section--dark .gallery-nav__btn:focus-visible,
:root[data-theme='dark'] .gallery-nav__btn:hover,
:root[data-theme='dark'] .gallery-nav__btn:focus-visible {
  border-color: var(--color-brand-primary);
  color: var(--color-text-accent);
  background: rgba(14, 193, 246, 0.1);
}

.section--dark .industries__card,
:root[data-theme='dark'] .industries__card {
  background: var(--color-navy-card) !important;
  border: 1px solid var(--color-navy-border) !important;
  box-shadow: none !important;
  color: #FFFFFF !important;
}

.section--dark .industries__card:hover,
:root[data-theme='dark'] .industries__card:hover {
  border-color: var(--color-brand-primary) !important;
  transform: translateY(-2px);
  box-shadow: none !important;
}

.section--dark .industries__card-image,
:root[data-theme='dark'] .industries__card-image {
  border-bottom: 1px solid var(--color-navy-border);
}

.section--dark .industries__card-overlay,
:root[data-theme='dark'] .industries__card-overlay {
  background: linear-gradient(to top, rgba(0, 0, 0, 0.5) 0%, transparent 50%);
}

.section--dark .industries__card-industry,
:root[data-theme='dark'] .industries__card-industry {
  color: var(--color-text-accent) !important;
  font-size: var(--font-size-caption);
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-weight: 700;
}

.section--dark .industries__card-title,
:root[data-theme='dark'] .industries__card-title {
  color: #FFFFFF !important;
  font-size: var(--font-size-heading-h3);
  font-weight: var(--font-weight-semibold);
  line-height: var(--line-height-heading-h3);
}

.section--dark .industries__card-clients,
:root[data-theme='dark'] .industries__card-clients {
  color: rgba(255, 255, 255, 0.7) !important;
  font-size: var(--font-size-small);
}

.section--dark .industries__card-value,
:root[data-theme='dark'] .industries__card-value {
  color: var(--color-text-secondary-inverse) !important;
  font-size: var(--font-size-body);
  line-height: var(--line-height-body);
}

.section--dark .industries__card-link,
:root[data-theme='dark'] .industries__card-link {
  color: var(--color-text-accent) !important;
  font-size: var(--font-size-small);
  font-weight: var(--font-weight-semibold);
}

.case-proof {
  padding-block: var(--space-section-vertical);
}

.case-proof__header {
  margin-bottom: var(--space-scale-8);
}

.case-proof__eyebrow {
  margin-bottom: var(--space-scale-3);
  color: var(--color-text-accent);
}

.section--dark .case-proof__eyebrow,
:root[data-theme='dark'] .case-proof__eyebrow {
  color: var(--color-text-accent);
}

.case-proof__headline {
  font-size: var(--font-size-heading-h2);
  line-height: var(--line-height-heading-h2);
  letter-spacing: var(--tracking-heading);
  font-weight: var(--font-weight-semibold);
  margin-bottom: 0;
}

.section--dark .case-proof__headline,
:root[data-theme='dark'] .case-proof__headline {
  color: #FFFFFF;
}

.case-proof__subhead {
  font-size: var(--font-size-body);
  line-height: var(--line-height-body);
  color: var(--color-text-secondary);
  max-width: var(--layout-prose-max);
  margin-top: var(--space-scale-2);
}

.section--dark .case-proof__subhead,
:root[data-theme='dark'] .case-proof__subhead {
  color: var(--color-text-secondary-inverse);
}

.case-proof__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-scale-10);
  align-items: start;
}

@media (min-width: 1024px) {
  .case-proof__grid {
    grid-template-columns: 5fr 7fr;
    gap: var(--space-scale-12);
    align-items: stretch;
  }
}

.case-proof__sidebar {
  display: flex;
  flex-direction: column;
  gap: var(--space-scale-6);
  height: 100%;
}

.case-proof__grid--text {
  grid-template-columns: 1fr;
}

.case-proof__facts > .card-grid {
  margin-top: 0;
}

.case-proof__facts .content-card__body:last-child,
.case-proof__facts .content-card__text:last-child {
  margin-bottom: 0;
}

/* Image-free evidence is a full-width story, not an empty image column. */
.case-proof--facts .case-proof__header {
  margin-bottom: var(--space-scale-6);
}

.case-proof--facts .case-proof__grid,
.case-proof--evidence-first .case-proof__grid {
  gap: var(--space-scale-6) var(--space-scale-12);
  align-items: start;
}

.case-proof--facts .case-proof__grid {
  grid-template-columns: minmax(0, 1fr);
}

.case-proof--facts .case-proof__summary {
  max-width: var(--layout-subhead-max);
}

.case-proof__action {
  align-self: start;
}

@media (min-width: 1024px) {
  .case-proof--evidence-first .case-proof__grid {
    grid-template-rows: auto 1fr;
  }

  .case-proof--evidence-first .case-proof__slider-area {
    grid-column: 2;
    grid-row: 1 / span 2;
  }

  .case-proof--evidence-first .case-proof__action {
    grid-column: 1;
    grid-row: 2;
    align-self: end;
  }

  .case-proof__sidebar > .case-proof__link {
    margin-top: auto;
  }
}

.case-proof__summary {
  font-size: var(--font-size-body);
  line-height: var(--line-height-body);
  color: var(--color-text-secondary);
  max-width: var(--layout-prose-max);
  margin: 0;
}

.section--dark .case-proof__summary,
:root[data-theme='dark'] .case-proof__summary {
  color: var(--color-text-secondary-inverse);
}

.case-proof__highlights {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--space-scale-3);
  margin-top: 0;
  width: 100%;
}

@media (min-width: 1024px) {
  .case-proof__highlights {
    margin-top: auto;
  }
}

@media (max-width: 480px) {
  .case-proof__highlights {
    grid-template-columns: 1fr;
  }
}

.case-proof__stat-card,
.case-proof__highlight {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  gap: var(--space-scale-1);
  padding: var(--space-scale-4) var(--space-scale-4);
  border-radius: var(--radius-scale-md);
  background: var(--color-surface-secondary);
  border: none !important;
  height: 100%;
}

.section--dark .case-proof__stat-card,
.section--dark .case-proof__highlight,
:root[data-theme='dark'] .case-proof__stat-card,
:root[data-theme='dark'] .case-proof__highlight {
  background: var(--color-navy-card);
  border: none !important;
}

.case-proof__stat-num,
.case-proof__highlight-title {
  font-size: var(--font-size-heading-h1);
  font-weight: var(--font-weight-bold);
  line-height: 1.1;
  color: var(--color-text-primary);
  letter-spacing: -0.02em;
}

.section--dark .case-proof__stat-num,
.section--dark .case-proof__highlight-title,
:root[data-theme='dark'] .case-proof__stat-num,
:root[data-theme='dark'] .case-proof__highlight-title {
  color: #FFFFFF;
}

.case-proof__stat-label,
.case-proof__highlight-desc {
  font-size: var(--font-size-small);
  line-height: 1.35;
  color: var(--color-text-secondary);
  margin-top: auto;
}

.section--dark .case-proof__stat-label,
.section--dark .case-proof__highlight-desc,
:root[data-theme='dark'] .case-proof__stat-label,
:root[data-theme='dark'] .case-proof__highlight-desc {
  color: var(--color-text-secondary-inverse);
}

.case-proof__link {
  align-self: flex-start;
  margin-top: 0;
}

.case-proof__slider-area {
  display: flex;
  flex-direction: column;
}

.case-proof .ba-slider {
  margin: 0;
  max-width: none;
}

.case-proof__pulse-visual,
.case-proof__single-visual {
  width: 100%;
  margin: 0;
}

.case-proof__pulse-area .pulse__browser {
  width: 100%;
}

.case-proof__single-visual {
  background: transparent;
}

.case-proof__single-frame {
  overflow: hidden;
  border: 1px solid var(--color-border-light);
  border-radius: var(--radius-scale-lg);
  background: var(--color-surface-primary);
  box-shadow: var(--shadow-level-dropdown);
}

.case-proof__single-frame img {
  display: block;
  width: 100%;
  height: auto;
}

.case-proof__visual-caption {
  padding: var(--space-scale-4) var(--space-scale-6);
  color: var(--color-text-secondary);
  font-size: var(--font-size-small);
  line-height: var(--line-height-small);
  text-align: center;
}

.pulse-banner,
.cluster-pulse,
.industry-pulse {
  position: relative;
  overflow: hidden;
  padding-block: var(--space-section-vertical);
  background: var(--color-navy);
  color: var(--color-text-on-dark);
}

.pulse-banner__bg,
.cluster-pulse__bg,
.industry-pulse__bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.pulse-banner__bg-video,
.cluster-pulse__bg-video,
.industry-pulse__bg-video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.pulse-banner__bg-video--mobile,
.cluster-pulse__bg-video--mobile,
.industry-pulse__bg-video--mobile {
  display: block;
}

.pulse-banner__bg-video--desktop,
.cluster-pulse__bg-video--desktop,
.industry-pulse__bg-video--desktop {
  display: none;
}

.pulse-banner__bg-overlay,
.cluster-pulse__bg-overlay,
.industry-pulse__bg-overlay {
  position: absolute;
  inset: 0;
  background: var(--overlay-video-mobile);
}

@media (min-width: 768px) {
  .pulse-banner__bg-overlay,
  .cluster-pulse__bg-overlay,
  .industry-pulse__bg-overlay {
    background: var(--overlay-video-desktop);
  }

  .pulse-banner__bg-video--mobile,
  .cluster-pulse__bg-video--mobile,
  .industry-pulse__bg-video--mobile {
    display: none;
  }

  .pulse-banner__bg-video--desktop,
  .cluster-pulse__bg-video--desktop,
  .industry-pulse__bg-video--desktop {
    display: block;
  }
}

.pulse-banner__inner,
.cluster-pulse__inner,
.industry-pulse__inner {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: var(--space-scale-10);
}

.pulse-banner__text,
.cluster-pulse__text,
.industry-pulse__text {
  display: flex;
  flex-direction: column;
  gap: var(--space-scale-4);
  max-width: var(--layout-prose-max);
}

.pulse-banner__eyebrow,
.cluster-pulse__eyebrow,
.industry-pulse__eyebrow {
  color: var(--color-text-accent);
}

.pulse-banner__copy,
.cluster-pulse__copy,
.industry-pulse__copy {
  font-size: var(--font-size-heading-h3);
  line-height: var(--line-height-body);
  font-weight: var(--font-weight-semibold);
  color: var(--color-text-on-dark);
}

.pulse-banner__headline {
  color: var(--color-text-on-dark);
  margin: 0;
}

.pulse-banner__headline + .pulse-banner__copy {
  font-size: var(--font-size-body);
  font-weight: var(--font-weight-regular);
}

.pulse-banner__link,
.cluster-pulse__link,
.industry-pulse__link {
  display: inline-flex;
  align-items: center;
  gap: var(--space-scale-2);
  font-size: var(--font-size-small);
  font-weight: var(--font-weight-semibold);
  color: var(--color-text-accent);
  text-decoration: none;
}

.pulse-banner__link:hover,
.cluster-pulse__link:hover,
.industry-pulse__link:hover {
  text-decoration: underline;
}

.pulse-banner__link svg,
.cluster-pulse__link svg,
.industry-pulse__link svg {
  flex: 0 0 16px;
}

@media (prefers-reduced-motion: reduce) {
  .pulse-banner__bg-video,
  .cluster-pulse__bg-video,
  .industry-pulse__bg-video {
    display: none;
  }
}

/* Reusable lead/highlights + long-form copy layout. */
.split-prose__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-scale-8);
  align-items: start;
}

@media (min-width: 1024px) {
  .split-prose__grid {
    grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
    gap: var(--space-scale-12);
  }
}

.split-prose__lead {
  display: flex;
  flex-direction: column;
}

.split-prose__eyebrow {
  margin-bottom: var(--space-scale-2);
}

.split-prose__headline {
  max-width: var(--layout-headline-max, 840px);
  margin: 0 0 var(--space-scale-6);
  color: var(--color-text-primary);
  font-size: var(--font-size-heading-h2);
  line-height: var(--line-height-heading-h2);
  letter-spacing: var(--tracking-heading);
  font-weight: var(--font-weight-semibold);
}

.split-prose__highlights {
  display: flex;
  flex-direction: column;
  gap: var(--space-scale-3);
  margin: 0;
  padding: 0;
  list-style: none;
}

.split-prose__highlight-item {
  display: flex;
  align-items: flex-start;
  gap: var(--space-scale-3);
  color: var(--color-text-primary);
  font-size: var(--font-size-body);
  line-height: var(--line-height-body);
  font-weight: var(--font-weight-medium, 500);
}

.split-prose__highlight-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 24px;
  width: 24px;
  height: 24px;
  margin-top: 2px;
  border-radius: var(--radius-scale-full);
  background: rgba(14, 193, 246, 0.12);
  color: var(--color-text-accent);
}

.split-prose__highlight-icon svg {
  width: 14px;
  height: 14px;
}

.split-prose__prose {
  width: 100%;
  max-width: var(--layout-subhead-max, 720px);
  color: var(--color-text-secondary);
  font-size: var(--font-size-body);
  line-height: 1.75;
}

.split-prose__prose p {
  max-width: 100%;
  margin-bottom: var(--space-scale-5);
}

.split-prose__prose p:last-child {
  margin-bottom: 0;
}

.split-prose__prose strong {
  color: var(--color-text-primary);
  font-weight: var(--font-weight-semibold);
}

/* Opt-in solution layout: introduction first, benefits with distinct labels. */
.split-prose__grid--benefits .split-prose__highlights {
  gap: var(--space-scale-6);
}

.split-prose__highlight-label {
  display: block;
  margin-bottom: var(--space-scale-2);
  font-weight: var(--font-weight-semibold);
}

.split-prose__grid--benefits .split-prose__highlight-text {
  color: var(--color-text-secondary);
  font-weight: var(--font-weight-regular);
}

@media (min-width: 1024px) {
  .split-prose__grid--benefits {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    align-items: center;
  }
}

/* Header spacing belongs to this section, independent of card-grid margins. */
.industry-verification__header {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-scale-2);
  margin-bottom: var(--space-scale-8);
}

.industry-verification__header > :is(p, h2) {
  margin: 0;
}

.industry-verification__header > h2 + p {
  margin-top: var(--space-scale-2);
}

.section--dark .split-prose__headline,
.section--dark .split-prose__highlight-item,
.section--dark .split-prose__prose strong {
  color: var(--color-text-on-dark);
}

.section--dark .split-prose__prose {
  color: var(--color-text-secondary-inverse);
}

/* ═════════════════════════════════════════════════════════════
   OBJECTION HANDLING (Section 4A)
   3-column fear/answer pairs. Per home.md §4A. Mobile-first.
   ═════════════════════════════════════════════════════════════ */

.objections {
  padding-block: var(--space-section-vertical);
}

.objections__eyebrow {
  margin-bottom: var(--space-scale-4);
  color: var(--color-text-accent);
}

.objections__headline {
  font-size: var(--font-size-heading-h2);
  line-height: var(--line-height-heading-h2);
  letter-spacing: var(--tracking-heading);
  font-weight: var(--font-weight-semibold);
  margin-bottom: var(--space-scale-10);
}

/* ── Section 7: Final CTA band ─────────────────────────────────── */
.cta-band {
  padding-block: var(--space-section-vertical);
  color: var(--color-text-on-dark);
}

.cta-band__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  max-width: 100%;
  margin-inline: auto;
}

@media (min-width: 768px) {
  .cta-band__inner {
    max-width: 1000px;
  }
}

.cta-band__eyebrow {
  margin-bottom: var(--space-scale-4);
  color: var(--color-text-accent);
}

.cta-band__headline {
  font-size: var(--font-size-heading-h2);
  line-height: var(--line-height-heading-h2);
  letter-spacing: var(--tracking-heading);
  font-weight: var(--font-weight-semibold);
  margin-bottom: var(--space-scale-4);
  color: var(--color-text-on-dark);
  max-width: var(--layout-prose-max);
}

.cta-band__pillar {
  font-size: var(--font-size-small);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--color-text-accent);
  margin-bottom: var(--space-scale-6);
}

.cta-band__subhead {
  font-size: var(--font-size-body);
  line-height: var(--line-height-body);
  color: var(--color-text-secondary-inverse);
  max-width: 100%;
  width: 100%;
  margin-bottom: var(--space-scale-8);
}

.cta-band__action-group {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-scale-3);
  margin-bottom: 0;
}

@media (min-width: 768px) {
  .cta-band__action-group {
    flex-direction: row;
    justify-content: center;
  }
}

.cta-band__action {
  display: inline-flex;
  justify-content: center;
}

.cta-band__secondary {
  display: inline-flex;
  justify-content: center;
}

/* ── Tablet 768px ────────────────────────────────────────────── */
@media (min-width: 768px) {
  .services__subhead,
  .proof__subhead,
  .industries__subhead,
  .cta-band__subhead {
    max-width: var(--layout-subhead-max, 720px);
  }

  .services__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--space-scale-4);
  }

  .services__card--anchor {
    grid-column: auto;
  }

  .services__card--large {
    grid-column: span 2;
  }

  .industries__card,


.cta-band__headline {
    font-size: var(--font-size-heading-h1);
    line-height: var(--line-height-heading-h1);
  }

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

/* ── Desktop 1024px ──────────────────────────────────────────── */
@media (min-width: 1024px) {
  .services__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--space-scale-4);
    align-items: stretch;
  }

  .services__card--anchor {
    grid-column: span 2;
    grid-row: span 2;
  }

  .services__card--large {
    grid-column: span 2;
  }

  .industries__card,


  .cta-band__headline {
    font-size: var(--font-size-display);
    line-height: var(--line-height-display);
  }
}

/* ── Wide 1440px ───────────────────────────────────────────────── */
@media (min-width: 1440px) {
  .services__card {
    padding: var(--card-padding);
  }

  .industries__card,

}

/* ═════════════════════════════════════════════════════════════
   SERVICE CLUSTER PAGES
   Template: service-cluster.html.twig
   Pages: /leistungen/sichern/, /leistungen/aktivieren/,
         /leistungen/kontrollieren/, /leistungen/auswerten/
   Source: /workspace/Lightpeak/lightpeak-web-plan/03-content/services.md §2
   Mobile-first. Light sections default, dark hero + dark Pulse + dark CTA.
   Reuses: .cta-band, .button, .eyebrow, .container, .section--light/--dark.
   ═════════════════════════════════════════════════════════════ */

.pulse__browser-dot--close { background: var(--color-semantic-error); }
.pulse__browser-dot--minimize { background: var(--color-semantic-warning); }
.pulse__browser-dot--expand { background: var(--color-semantic-success); }
.pulse__vbar-fill { height: var(--chart-percent, 0%); }
.pulse__hbar-fill { width: var(--chart-percent, 0%); }

/* Supporting copy for the editable Pulse process and illustrative dashboard. */
.pulse__example-note,
.pulse__notes {
  font-size: var(--font-size-small);
  color: var(--color-text-secondary);
}

.pulse__example-note {
  margin-top: var(--space-scale-4);
  margin-bottom: 0;
}

.pulse__notes {
  margin-top: var(--space-scale-8);
  max-width: var(--layout-subhead-max, 720px);
}

.pulse__notes p {
  margin: 0;
}

.pulse__notes p + p {
  margin-top: var(--space-scale-4);
}

/* Size mobile previews to the active panel. From tablet widths, reserve the
   tallest panel's space to keep the layout stable when switching tabs. */
.pulse__browser {
  min-width: 0;
}

.pulse__card {
  display: grid;
  min-height: 0;
  overflow: visible;
}

.pulse__panel {
  display: none;
  position: relative;
  inset: auto;
  grid-area: 1 / 1;
  min-width: 0;
  visibility: hidden;
  overflow: visible;
}

.pulse__panel.is-visible {
  display: flex;
  visibility: visible;
}

@media (min-width: 768px) {
  .pulse__panel {
    display: flex;
  }
}

.pulse__card-toolbar-left {
  flex-wrap: wrap;
  min-width: 0;
}

.pulse__card-toolbar-right {
  flex-shrink: 0;
}

.pulse__stat-label {
  overflow-wrap: anywhere;
}

.pulse__status-row {
  flex-wrap: wrap;
}

.hero__headline-highlight {
  display: block;
  color: var(--color-text-accent);
  text-wrap: balance;
}

.clients.clients--compact {
  padding-top: var(--space-scale-8);
  /* Adjacent light sections share this gap: the following section has no
     top padding. Keep the compact intro, but preserve the section rhythm. */
  padding-bottom: var(--space-section-vertical);
}

.clients--compact .clients__heading {
  margin-bottom: var(--space-scale-4);
  font-size: var(--font-size-body);
}

.clients__note {
  margin: var(--space-scale-4) auto 0;
  max-width: var(--layout-subhead-max, 720px);
  text-align: center;
  font-size: var(--font-size-caption);
  color: var(--color-text-secondary);
}

/* Keep the dashboard readable before there is room for two columns. */
.pulse__layout {
  flex-direction: column;
  align-items: stretch;
}

.pulse__steps {
  gap: var(--space-scale-8);
}

.pulse__step-item {
  opacity: 1;
  font-family: var(--font-family-body);
}

.pulse__step-item:not(:last-child)::after {
  bottom: calc(-1 * var(--space-scale-8));
}

.pulse__step-name {
  font-size: var(--font-size-heading-h3);
  line-height: var(--line-height-heading-h3);
}

.pulse__step-desc {
  font-size: var(--font-size-body);
  line-height: var(--line-height-body);
}

.pulse__step-item:focus-visible {
  outline: var(--focus-ring-width) solid var(--focus-ring-color);
  outline-offset: var(--focus-ring-offset);
  border-radius: var(--radius-scale-sm);
}

/* Use the existing industry image cards in a wrapping editorial grid.
   Carousel consumers retain their original scroll-snap behaviour. */
.industries--grid .industries__subhead,
.industries--grid .card-grid {
  margin-bottom: 0;
  margin-top: 0;
}

.industries__gallery--grid {
  overflow: visible;
  scroll-snap-type: none;
}

.industries__gallery--grid .industries__card {
  max-width: none;
  min-width: 0;
}

@media (min-width: 1024px) {
  .pulse__layout {
    flex-direction: row;
    align-items: stretch;
  }

  /* Distribute spare height between steps, keeping the final step at the
     preview's bottom edge. Content still sets the minimum height. */
  .pulse__steps > .pulse__step-item:not(:last-child) {
    flex: 1 0 auto;
  }

  .pulse__layout > .pulse__browser {
    align-self: flex-start;
  }
}

.pricing-models__action-bar { margin-top: var(--space-scale-10); }

.legal-document__content a,
.article-content a:not(.button),
.faq-answer a:not(.button) {
  color: var(--color-text-link);
  text-decoration: underline;
  text-underline-offset: 2px;
}
