/* Restrained landing motion — progressive enhancement only. Content stays visible without JS. */
:root {
  --dur-press: 120ms;
  --dur-reveal: 300ms;
  --dur-hero: 700ms;
  --ease-out-expo: cubic-bezier(0.19, 1, 0.22, 1);
  --ease-out-quart: cubic-bezier(0.165, 0.84, 0.44, 1);
}

/* Press feedback — transform only, immediate focus unchanged in landing.css */
.intro-contact,
.secondary-contact,
.site-header .nav-contact,
.planning-next a,
.contact {
  transition: transform var(--dur-press) cubic-bezier(.25,.46,.45,.94), background-color 150ms ease;
}

.intro-contact:active,
.secondary-contact:active,
.site-header .nav-contact:active,
.planning-next a:active,
.contact:active {
  transform: scale(0.98);
}

/* Hover: arrow children only, fine-pointer devices */
@media (hover: hover) and (pointer: fine) {
  .intro-contact span[aria-hidden="true"],
  .secondary-contact span[aria-hidden="true"],
  .planning-next a span[aria-hidden="true"],
  .contact span[aria-hidden="true"] {
    display: inline-block;
    transition: transform 150ms ease;
  }

  .intro-contact:hover span[aria-hidden="true"],
  .secondary-contact:hover span[aria-hidden="true"],
  .planning-next a:hover span[aria-hidden="true"],
  .contact:hover span[aria-hidden="true"] {
    transform: translateX(3px);
  }
}

/* Desktop sticky planning heading — enabled via JS when layout has room */
@media (min-width: 651px) {
  .planning.planning--sticky .planning-heading {
    position: sticky;
    top: 88px;
    align-self: start;
  }
}

@media (prefers-reduced-motion: reduce) {
  .intro-contact,
  .secondary-contact,
  .site-header .nav-contact,
  .planning-next a,
  .contact,
  .intro-contact span[aria-hidden="true"],
  .secondary-contact span[aria-hidden="true"],
  .planning-next a span[aria-hidden="true"],
  .contact span[aria-hidden="true"] {
    transition: none !important;
  }

  .intro-contact:active,
  .secondary-contact:active,
  .site-header .nav-contact:active,
  .planning-next a:active,
  .contact:active {
    transform: none;
  }
}

.identity h1 > span{display:inline-block}
.identity h1 > .hero-line{color:var(--ink)}
