.internal-hero {
  position: relative;
  min-height: 58svh;
  display: flex;
  align-items: center;
  overflow: hidden;
  background: #050505;
  color: #fff;
}

.internal-hero::before {
  content: "";
  position: absolute;
  z-index: 1;
  inset: 0;
  background:
    linear-gradient(90deg,rgba(5,7,8,.96) 0%,rgba(8,13,16,.78) 38%,rgba(8,13,16,.24) 68%,rgba(5,7,8,.48) 100%),
    linear-gradient(0deg,#050505 0%,transparent 34%,rgba(5,7,8,.24) 100%);
}

.internal-hero .hero-grid {
  position: relative;
  z-index: 2;
  display: block;
  width: min(100% - 64px,1420px);
  margin-inline: auto;
  padding: 158px 0 96px;
}

.internal-hero .hero-media,
.internal-hero .hero-scan,
.internal-hero .capital-map {
  position: absolute;
  inset: 0;
}

.internal-hero .hero-media {
  z-index: 0;
  background-image: url("/assets-v2/hero-credentials/credentials-01.jpg");
  background-position: center;
  background-size: cover;
  filter: saturate(.86) contrast(1.04) brightness(.82);
  transform: scale(1.045);
  transition: background-image .8s ease,transform 12s linear,background-position 1.2s cubic-bezier(.22,1,.36,1);
  will-change: transform;
}

.internal-hero.is-alive .hero-media { transform: scale(1.11); }

.internal-hero .capital-map {
  z-index: 1;
  width: 100%;
  height: 100%;
  opacity: .66;
  pointer-events: none;
}

.internal-hero .hero-scan {
  z-index: 1;
  left: 66%;
  width: 1px;
  background: linear-gradient(transparent,rgba(138,255,189,.7),transparent);
  box-shadow: 0 0 28px rgba(38,154,121,.5);
  opacity: 0;
  animation: internalHeroScan 7s ease-in-out infinite;
  pointer-events: none;
}

@keyframes internalHeroScan {
  0%,100% { transform: translateX(-18vw); opacity: 0; }
  12%,88% { opacity: .82; }
  50% { transform: translateX(24vw); }
}

.internal-hero .hero-kicker {
  margin: 0 0 34px;
  color: #269a79;
  font-size: 13px;
  font-weight: 500;
  letter-spacing: .34em;
  text-transform: uppercase;
}

.internal-hero h1 {
  max-width: 1040px;
  margin: 0;
  color: #fff;
  font-size: clamp(3rem,5.2vw,6.9rem);
  font-weight: 700;
  letter-spacing: -.055em;
  line-height: .95;
  text-wrap: balance;
}

@media (max-width:1100px) {
  .internal-hero { min-height: 62svh; }
  .internal-hero .hero-grid { padding: 132px 0 82px; }
}

@media (max-width:760px) {
  .internal-hero { min-height: 58svh; }
  .internal-hero .hero-grid {
    width: min(100% - 28px,1420px);
    padding: 120px 0 70px;
  }
  .internal-hero h1 { font-size: clamp(2.7rem,14vw,4.2rem); }
}

@media (prefers-reduced-motion:reduce) {
  .internal-hero .hero-media { transform: none; }
  .internal-hero .hero-scan { display: none; }
}
