/* --------------------------------------------------------------------------
   Service positioning (2026-09-26): engagement steps, platform early access
   and the footer note. Same tokens and card treatment as styles.css.
   -------------------------------------------------------------------------- */

.engagement{background:#efede7}
.engage-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.engage-step{display:flex;flex-direction:column;min-height:290px;padding:34px;border-radius:16px;background:var(--paper);box-shadow:0 12px 34px rgba(16,25,38,.045)}
.engage-step span{font-size:12px;color:var(--terra-dark)}
.engage-step h3{margin:46px 0 14px;font-size:24px;font-weight:500;letter-spacing:-.025em}
.engage-step p{margin:0;color:var(--body);font-size:14px;line-height:1.65}

.platform-access{padding:clamp(72px,8vw,112px) 0;background:linear-gradient(145deg,#e7ebe3,#dce3d9)}
.platform-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(48px,8vw,120px);align-items:end}
.platform-grid .eyebrow{margin-bottom:24px}
.platform-grid h2{max-width:14ch;margin:0;font-size:clamp(34px,4.2vw,56px);font-weight:500;line-height:1.05;letter-spacing:-.048em;text-wrap:balance}
.platform-copy>p{max-width:52ch;margin:0 0 22px;color:var(--body);font-size:17px;line-height:1.65}
.platform-copy .text-link span{transition:transform .2s ease}.platform-copy .text-link:hover span{transform:translateX(3px)}

.footer-note{padding-top:22px}
.footer-note p{max-width:92ch;margin:0;color:#818d98;font-size:12px;line-height:1.6}

@media(max-width:1050px){.engage-grid{grid-template-columns:1fr 1fr}.engage-step{min-height:250px}}
@media(max-width:760px){
  .engage-grid{grid-template-columns:1fr;gap:12px}.engage-step{min-height:auto;padding:28px}.engage-step h3{margin-top:30px}
  .platform-grid{grid-template-columns:1fr;gap:28px}
}

/* Mobile and tablet comfort: the longer service nav labels wrap on tablets, so the menu button runs to 960px;
   touch targets reach 44px without changing the layout; the smallest labels are raised to 11px on phones. */
section[id]{scroll-margin-top:12px}
.site-nav a{white-space:nowrap}
@media(max-width:960px){
  .site-header{flex-wrap:wrap}
  .menu-toggle{display:flex;min-height:44px}
  .site-nav{display:none;width:100%;flex-direction:column;align-items:flex-start;gap:0;padding:12px}
  .site-nav.is-open{display:flex}
  .site-nav a{width:100%;padding:14px}
  .nav-cta{border:0;border-radius:14px;background:#eceae4;margin-top:8px}
  .brand{padding-block:8px;margin-block:-8px}
  .footer-links a{padding:12px 0}
}
@media(max-width:760px){
  .signal-grid span,.signal-grid small,.mini-rec span,.mini-rec small,.fragility-list b,.footer-bottom{font-size:11px}
}
