@media (max-width: 980px) {
  body { font-size: 15px; }
  .site-nav { display: none; }
  .header-cta { margin-left: auto; }
  .menu-button { display: block; }
  .hero,.subhero { min-height: auto; grid-template-columns: 1fr; gap: 50px; padding-top: 130px; }
  .hero__frame { width: min(90%,540px); margin-left: 0; }
  .subhero__symbol { width: 250px; margin-left: 0; }
  .subhero__photo { width: min(90%,540px); }
  .gateways,.happiness,.principles,.service-flow,.service-promise,.beta-facts,.partner-promises,.beta-terms,.join,.founder,.build-way,.company { grid-template-columns: 1fr; }
  .gateway-grid,.promise-grid { max-width: 820px; }
  .faq,.note-box { grid-column: 1; }
  .belief { grid-template-columns: 120px 1fr; }
  .belief > p:last-child { grid-column: 2; }
  .first-step { grid-template-columns: 1fr; align-items: start; }
  .principle-line { grid-column: 1; }
  .first-step .button { width: max-content; }
  .build-grid { grid-template-columns: 1fr; }
  .build-grid article + article { border-left: 0; border-top: 1px solid var(--line); }
}
@media (max-width: 720px) {
  h1 { font-size: clamp(2.65rem,13vw,4.3rem); }
  h2 { font-size: clamp(1.85rem,9vw,3.25rem); }
  .header-inner { min-height: 72px; padding-inline: 20px; }
  .brand-mark { width: 132px; height: 43px; }
  .brand-mark img { width: 212px; margin-top: -46px; margin-left: -38px; }
  .header-cta { display: none; }
  .section { padding-top: 82px; padding-bottom: 82px; }
  .hero,.subhero { padding-top: 115px; padding-bottom: 75px; }
  .principle-line { grid-template-columns: 1fr; }
  .principle-line span { padding: 16px 0; border-right: 0; border-bottom: 1px solid var(--line); }
  .principle-line span:last-child { border-bottom: 0; }
  .gateway-grid,.promise-grid { grid-template-columns: 1fr; }
  .gateway + .gateway,.promise-grid article + article { border-left: 0; border-top: 1px solid var(--line); }
  .gateway { min-height: 330px; }
  .closing { grid-template-columns: 1fr; text-align: center; }
  .closing__symbol { margin: auto; }
  .belief { grid-template-columns: 1fr; gap: 12px; }
  .belief > p:last-child { grid-column: 1; }
  .lens { grid-template-columns: 1fr; }
  .lens__controls { border-right: 0; border-bottom: 1px solid var(--line); }
  .lens__answer { min-height: 250px; padding: 30px; }
  .situation { grid-template-columns: 45px 1fr; }
  .situation p { grid-column: 2; }
  .step { padding-left: 75px; }
  .step > span { width: 49px; height: 49px; }
  .steps::before { left: 24px; }
  .promise-list article { grid-template-columns: 45px 1fr; }
  .promise-list p { grid-column: 2; }
  .facts div,.terms div,.company__profile div { grid-template-columns: 1fr; gap: 4px; }
  .footer-inner { grid-template-columns: 1fr; }
  .footer-bottom { flex-direction: column; gap: 6px; }
  .actions { align-items: stretch; flex-direction: column; }
  .actions .button { width: 100%; }
  .actions .text-link { width: max-content; }
}
@media (hover: none), (pointer: coarse) { .pointer-light { display: none; } }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *,*::before,*::after { animation-duration: .01ms!important; animation-iteration-count: 1!important; transition-duration: .01ms!important; scroll-behavior: auto!important; }
  .js .reveal { opacity: 1; transform: none; }
  .pointer-light { display: none; }
}