.home-page #contact.contact-stage {
  --contact-scene-size:clamp(320px,25vw,400px);
  position:relative;
  isolation:isolate;
  display:grid;
  align-items:center;
  min-height:var(--contact-scene-size);
  padding-block:0 24px;
}
.home-page #learning { padding-bottom:96px; }
.home-page #contact .contact-card.is-wide { padding:32px; }
.home-page #contact .contact-card.is-wide h2 { font-size:clamp(28px,2.4vw,34px); line-height:1.14; }
.home-page #contact .contact-card.is-wide .contact-eyes { width:184px; flex-basis:184px; }
.home-page #contact-landing { position:relative; z-index:1; min-width:0; }
.contact-wheel-frame { position:absolute; z-index:0; inset:0; overflow:clip; pointer-events:none; }
.contact-wheel {
  position:absolute;
  z-index:0;
  left:50%;
  top:calc(50% - 12px);
  translate:-50% -50%;
  width:calc(var(--contact-scene-size) - 40px);
  aspect-ratio:1;
  color:var(--ink);
  opacity:0;
  pointer-events:none;
  user-select:none;
  overflow:clip;
  transition:opacity 240ms ease;
}
.contact-stage[data-wheel-ready="true"] .contact-wheel { opacity:.16; }
.contact-wheel-rotor {
  display:block;
  width:100%;
  height:100%;
  fill:currentColor;
  transform-origin:center;
  animation:contact-wheel-spin 24s linear infinite;
  animation-play-state:paused;
}
.contact-wheel text { font-family:var(--font-body); font-size:76px; font-weight:800; }
.contact-stage[data-wheel-active="true"] .contact-wheel-rotor { animation-play-state:running; }
@keyframes contact-wheel-spin { to { transform:rotate(360deg); } }
@media (max-width:900px) {
  .home-page #learning { padding-bottom:64px; }
  .home-page #contact.contact-stage { --contact-scene-size:360px; }
  .home-page #contact .contact-card.is-wide { padding:24px; }
  .home-page #contact .contact-card.is-wide h2 { font-size:24px; }
  .home-page #contact .contact-card.is-wide .contact-eyes { width:80px; flex-basis:80px; }
  .contact-wheel { width:330px; }
}
@media (prefers-reduced-motion:reduce) {
  .contact-wheel { transition:none; }
  .contact-wheel-rotor { animation:none; }
}
