/* Mobile choreography is intentionally independent of the approved desktop layout. */
.testimonials__indicator { display:none; }
@media (max-width:767px) {
  :root { --mobile-header-height:68px; scroll-padding-top:calc(var(--mobile-header-height) + env(safe-area-inset-top) + 20px); }
  [id] { scroll-margin-top:calc(var(--mobile-header-height) + env(safe-area-inset-top) + 20px); }
  .site-header { height:calc(var(--mobile-header-height) + env(safe-area-inset-top)); padding:calc(10px + env(safe-area-inset-top)) 16px 10px; }
  .menu-toggle { width:auto; min-width:70px; min-height:44px; padding:8px 4px; }
  .floating-assistant { left:auto; right:16px; bottom:calc(16px + env(safe-area-inset-bottom)); translate:none; width:54px; height:54px; box-shadow:0 0 0 9px color-mix(in srgb,var(--brand-gradient-start) 5.5%,transparent),0 12px 30px rgba(114,62,31,.38); }

  .hero { height:145svh; min-height:0; }
  .hero__layout { padding-top:calc(var(--mobile-header-height) + env(safe-area-inset-top) + 24px); }
  .hero__copy { margin-top:0; }
  .hero__copy h1 { font-size:clamp(2.8rem,12vw,4rem); }
  .voice-orb { margin-top:12svh; }

  .trust-orbit { height:175svh; min-height:0; }
  .trust-orbit h2 { width:calc(100vw - 40px); font-size:clamp(2rem,8vw,2.55rem); }
  .trust-orbit__logos span { font-size:.8rem; opacity:.18; }
  .trust-orbit__logos span:nth-child(n+5):not(:nth-child(7)) { display:none; }
  .trust-orbit__logos span:nth-child(4) { display:none; }
  .trust-orbit__logos span:nth-child(1) { left:8%; top:16%; }
  .trust-orbit__logos span:nth-child(2) { left:60%; top:18%; }
  .trust-orbit__logos span:nth-child(3) { left:10%; top:79%; }
  .trust-orbit__logos span:nth-child(7) { left:63%; top:81%; }

  .feature-theatre, .feature-theatre__sticky { height:100svh; min-height:0; }
  .feature-card { top:49%; width:min(calc(100vw - 32px),400px); }
  .feature-card__caption { padding:1rem .45rem 0; }
  .feature-card__caption > p { font-size:.75rem; }
  .feature-card__caption h3 { font-size:clamp(1.35rem,6vw,1.7rem); line-height:1.1; }
  .feature-card__caption div { font-size:1rem; line-height:1.5; }
  .mini-ui { font-size:.7rem; }

  .process-comparison { padding-bottom:calc(5rem + env(safe-area-inset-bottom)); }
  .lead-workflow { padding-top:calc(var(--mobile-header-height) + env(safe-area-inset-top) + 32px); }
  .lead-workflow__flow { margin-top:2rem; }
  .lead-workflow__flow article { min-height:0; }

  .testimonials { height:auto; min-height:0; display:block; overflow:visible; padding:calc(var(--mobile-header-height) + env(safe-area-inset-top) + 28px) 0 5rem; }
  .testimonials__viewport { position:relative; height:auto; min-height:0; display:block; overflow:visible; padding:0; }
  .testimonials__header h2 { font-size:clamp(2.25rem,10vw,2.9rem); }
  .testimonials__header p { font-size:1rem; line-height:1.5; }
  .testimonials__indicator { display:block; margin-top:1.25rem; color:var(--brand-muted); font-size:.75rem; letter-spacing:.16em; }
  .testimonial-track { box-sizing:border-box; width:100%; max-width:100%; margin:1.5rem 0 0; padding:0 20px 12px; gap:12px; transform:none!important; will-change:auto; overflow-x:auto; overflow-y:hidden; scroll-snap-type:x mandatory; scroll-padding-inline:20px; overscroll-behavior-inline:contain; -webkit-overflow-scrolling:touch; }
  .testimonial-card { flex:0 0 86vw; width:86vw; min-height:380px; padding:1.5rem; scroll-snap-align:start; }
  .scenario-card__copy { font-size:1rem; line-height:1.5; }

  .industry-wheel { touch-action:pan-y pinch-zoom; }
  .industry-disc, .industry-disc__segments, .industry-segment, .industry-segment__content, .industry-disc__hub { pointer-events:none; }
  .industry-wheel__controls { bottom:calc(88px + env(safe-area-inset-bottom)); padding-inline:16px; }
  .industry-wheel__controls button { pointer-events:auto; min-width:110px; min-height:44px; padding:10px 0; font-size:.85rem; }
  .industry-card__icon { width:48px; height:48px; }
  .industry-segment h3 { font-size:.8rem; }
}

@media (max-width:767px) and (prefers-reduced-motion:reduce) {
  .testimonial-track { scroll-behavior:auto; }
}
