/* A sharp brand lock-up: the supplied emblem moves, the wordmark stays planted. */
.homepage .hero-grid {
  grid-template-columns: minmax(0, 1.3fr) minmax(250px, .6fr);
  gap: clamp(28px, 4vw, 64px);
}

.hero-emblem {
  position: relative;
  z-index: 2;
  width: min(125%, 420px);
  justify-self: center;
  display: grid;
  justify-items: center;
  pointer-events: none;
}

.hero-emblem::before {
  content: '';
  position: absolute;
  z-index: -1;
  width: 78%;
  aspect-ratio: 1;
  top: 3%;
  left: 11%;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 105, 0, .2), rgba(230, 62, 0, .07) 48%, transparent 70%);
  filter: blur(24px);
}

.hero-emblem::after {
  content: '';
  position: absolute;
  z-index: -1;
  left: 24%;
  right: 24%;
  top: 68%;
  height: 5%;
  border-radius: 50%;
  background: rgba(0, 0, 0, .72);
  box-shadow: 0 -4px 24px rgba(255, 99, 0, .12);
  filter: blur(12px);
}

.hero-emblem-motion {
  position: relative;
  top: -5%;
  width: 86%;
  aspect-ratio: 1;
  transform-style: preserve-3d;
  animation: hero-emblem-presence 6.8s cubic-bezier(.45, .05, .55, .95) infinite alternate;
  will-change: transform;
}

.hero-emblem-crop {
  position: absolute;
  inset: 0;
  overflow: hidden;
}

.hero-emblem-art {
  position: absolute;
  inset: 1%;
  width: 98%;
  height: 98%;
  object-fit: contain;
  image-rendering: auto;
  filter: drop-shadow(7px 15px 16px rgba(0, 0, 0, .58));
}

.hero-emblem-wordmark {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: baseline;
  justify-content: center;
  gap: .22em;
  margin-top: clamp(6px, .8vw, 12px);
  font: 600 clamp(28px, 2.7vw, 40px)/1 var(--display);
  letter-spacing: .045em;
  text-transform: uppercase;
  white-space: nowrap;
  text-shadow: 0 8px 24px rgba(0, 0, 0, .55);
}

.hero-emblem-wordmark .word-flow { color: var(--yellow); }
.hero-emblem-wordmark .word-forge { color: #f3f4f1; }

@keyframes hero-emblem-presence {
  0% {
    transform: perspective(900px) translate3d(0, -.8%, 0) rotateX(2deg) rotateY(-12deg) rotateZ(-1.2deg);
  }
  50% {
    transform: perspective(900px) translate3d(0, -3.8%, 10px) rotateX(-1deg) rotateY(4deg) rotateZ(.4deg);
  }
  100% {
    transform: perspective(900px) translate3d(0, -1.2%, 0) rotateX(1deg) rotateY(12deg) rotateZ(1.2deg);
  }
}

@media (max-width: 900px) {
  .homepage .hero-grid {
    grid-template-columns: minmax(0, 1fr) minmax(165px, .34fr);
    gap: 18px;
  }
  .hero-emblem { width: min(130%, 280px); }
  .hero-emblem-wordmark { font-size: clamp(22px, 3.2vw, 29px); }
}

@media (max-width: 650px) {
  .homepage .hero-grid { display: block; position: relative; }
  .homepage .hero-copy { position: relative; z-index: 3; }
  .hero-emblem { width: min(66vw, 250px); margin: 22px auto -8px; }
  .hero-emblem-wordmark { margin-top: 6px; font-size: clamp(23px, 7vw, 30px); }
}

@media (prefers-reduced-motion: reduce) {
  .hero-emblem-motion { animation: none; transform: none; }
}

html[data-motion-paused="true"] .hero-emblem-motion {
  animation-play-state: paused;
}
