/* AI NIIGATA content styles 02/10 */
.ain-content-hero-grid {
  z-index: -3;
  opacity: 0.22;
  background-image:
    linear-gradient(rgba(143, 228, 238, 0.15) 1px, transparent 1px),
    linear-gradient(90deg, rgba(143, 228, 238, 0.12) 1px, transparent 1px);
  background-size: 76px 76px;
  mask-image: linear-gradient(90deg, transparent 0%, #000 52%, #000 100%);
}

.ain-content-hero-glow {
  z-index: -2;
  left: auto;
  top: 6%;
  right: -8%;
  width: 54vw;
  height: 54vw;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(143, 228, 238, 0.24), rgba(251, 215, 132, 0.08) 36%, transparent 68%);
  filter: blur(10px);
}

@keyframes ainHeroDrift {
  from { transform: scale(1.035) translate3d(0, 0, 0); }
  to { transform: scale(1.08) translate3d(-1.2%, -0.8%, 0); }
}

.ain-content-hero .header {
  opacity: 1;
  animation: none;
}

.ain-content-hero-inner {
  position: relative;
  z-index: 3;
  width: min(1180px, calc(100% - 112px));
  margin: 0 auto;
  padding: 220px 0 150px;
}

.ain-content-hero-inner .kicker {
  margin: 0 0 22px;
  color: var(--ain-gold);
  font-size: 13px;
  font-weight: 900;
  letter-spacing: 0.22em;
  text-transform: uppercase;
}

.ain-content-hero-inner h1 {
  max-width: 920px;
  margin: 0;
  font-family: Georgia, "Times New Roman", "Yu Mincho", serif;
  font-size: clamp(54px, 7.8vw, 112px);
  font-weight: 500;
  line-height: 1.03;
  letter-spacing: -0.045em;
  text-wrap: balance;
}

.ain-content-hero-intro {
  max-width: 720px;
  margin: 30px 0 0;
  color: rgba(255, 255, 255, 0.78);
  font-size: clamp(16px, 1.55vw, 21px);
  line-height: 1.95;
}

.ain-content-hero-count {
  position: absolute;
  right: 0;
  bottom: 132px;
  display: flex;
  align-items: baseline;
  gap: 12px;
  margin: 0;
  color: rgba(255, 255, 255, 0.58);
}
