/* ==========================================================================
   Final CTA + footer (Phase 6)
   Calm: one optional MOVE. entrance (SLIDE → LOCK), no pinning, no parallax.
   ========================================================================== */

.cta {
  position: relative;
  padding-block: 96px 120px;
  border-top: 1px solid var(--line);
  background: var(--white);
}
.cta__grid { display: grid; grid-template-columns: minmax(0, 1fr); }

.cta__eyebrow { color: var(--muted); font-size: 11px; }
.cta__title {
  margin-top: 24px;
  color: var(--ink);
  font-size: clamp(36px, 12.4vw, 104px);   /* SOMETHING fits 360px */
  font-weight: 900;
  font-stretch: var(--stretch-display);
  letter-spacing: -0.055em;
  line-height: 0.86;
  text-transform: uppercase;
}
.cta__line { display: block; }
@media (min-width: 1024px) { .cta__line { white-space: nowrap; } }
.cta__line--clip { overflow: hidden; padding-block: 0.02em; margin-block: -0.02em; }
.cta__move { display: inline-block; color: var(--mas-red); }

.cta__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 16px 32px;
  margin-top: 40px;
}
.cta__action--text {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 44px;
  color: var(--ink);
  font-size: 12px;
  font-weight: 700;
  font-stretch: var(--stretch-ui);
  letter-spacing: 0.12em;
  text-transform: uppercase;
  text-decoration: none;
  border-bottom: 1px solid var(--ink);
}
a.cta__action--text:hover { color: var(--mas-red); border-color: var(--mas-red); }

/* ---- Footer ---- */
.site-footer {
  border-top: 1px solid var(--line);
  background: var(--white);
}
.site-footer__inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 14px;
  padding-block: 40px 48px;
}
.site-footer__mark { width: 112px; height: auto; }
.site-footer__tag { color: var(--ink); font-size: 10.5px; }
.site-footer__copy { color: var(--muted); font-size: 12px; }

@media (min-width: 1024px) {
  .cta { padding-block: calc(200 * var(--u)) calc(220 * var(--u)); }
  .cta__title { margin-top: calc(32 * var(--u)); font-size: calc(108 * var(--u)); }   /* MAKE SOMETHING on one line */
  .cta__actions { margin-top: calc(64 * var(--u)); }
  .site-footer__inner {
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: calc(48 * var(--u));
    padding-block: calc(44 * var(--u));
  }
  .site-footer__mark { width: calc(140 * var(--u)); min-width: 112px; }
  .site-footer__copy { justify-self: end; }
}

/* MOVE. entrance: pre-state only while the motion scripts run (never with
   reduced motion or without JS), set once when the headline enters. */
.motion-ready .cta__move { transform: translateX(-104%); transition: transform 720ms var(--ease-mech); }
.motion-ready .cta.is-in .cta__move { transform: none; }

@media (prefers-reduced-motion: reduce) {
  .cta__move { transform: none !important; transition: none !important; }
}
