:root {
  --yellow: #ffd43b;
}

/* Reduce the headline so the first viewport feels calmer and more premium. */
.hero h1 {
  font-size: clamp(32px, 3.8vw, 50px);
  line-height: 1.08;
  letter-spacing: -0.045em;
  margin-top: 16px;
}

.hero .eyebrow {
  flex-wrap: nowrap;
  white-space: nowrap;
  margin-bottom: 8px;
}

.eyebrow {
  flex-wrap: nowrap;
  white-space: nowrap;
  justify-content: flex-start;
}

.eyebrow [data-i18n] {
  min-width: max-content;
}

.section h2,
.contact h2 {
  font-size: clamp(29px, 3.5vw, 44px);
}

.card h3 {
  font-size: 17px;
}

.card-featured h3,
.card-featured p,
.card-featured a {
  color: #ffffff !important;
}

.card-featured .card-number {
  color: var(--yellow) !important;
}

.statement p {
  font-size: clamp(28px, 3.5vw, 46px);
}

/* A quiet world map sits behind the globe to make the global focus explicit. */
.world-map {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  color: #1677ff;
  opacity: 0.15;
  transform: scale(1.05);
  pointer-events: none;
}

.map-land {
  opacity: 0.65;
}

.map-grid {
  stroke: #1677ff;
  stroke-width: 1.2;
  opacity: 0.7;
}

.hero-art::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(115deg, transparent 30%, #ffd43b12 72%, #1677ff08);
  pointer-events: none;
}

.globe,
.orbit,
.art-label {
  z-index: 1;
}

.globe-dot,
.dot-one,
.dot-two {
  background: var(--yellow);
  box-shadow: 0 0 0 7px #ffd43b44;
}

/* Turn the three floating labels into clean triangular wayfinding markers. */
.art-label {
  width: auto;
  min-width: 122px;
  height: auto;
  padding: 11px 25px 11px 14px;
  background: #ffffff;
  clip-path: polygon(0 0, calc(100% - 10px) 0, 100% 50%, calc(100% - 10px) 100%, 0 100%);
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
  gap: 10px;
  text-align: left;
  box-shadow: 0 8px 18px #0b1f3a14;
}

.art-label span {
  white-space: nowrap;
}

.art-label strong {
  line-height: 1;
}

.label-one {
  top: 58px;
  left: 28px;
}

.label-two {
  top: 112px;
  right: 0;
}

.label-three {
  bottom: 60px;
  right: 28px;
}

.neural-network {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  transform: rotate(-10deg);
  opacity: 0.78;
}

.globe-dot {
  z-index: 3;
}

.neural-links {
  fill: none;
  stroke: #b9d8ff;
  stroke-width: 1.4;
  stroke-linecap: round;
  stroke-dasharray: 2 4;
}

.neural-nodes {
  fill: #ffffff;
  stroke: #ffd43b;
  stroke-width: 1.5;
}
