.support {
  padding: 105px max(22px, calc((100vw - 1100px) / 2));
  display: grid;
  grid-template-columns: .85fr 1.15fr;
  gap: 72px;
  align-items: start;
  background: #fff;
}
.support-heading { position: sticky; top: 36px; }
.support-heading h2 { margin: 0; font-size: clamp(33px, 4vw, 49px); line-height: 1.18; letter-spacing: -.035em; }
.support-heading > p:not(.eyebrow) { color: var(--muted); font-size: 16px; line-height: 1.8; }
.support-button {
  display: inline-block;
  margin: 12px 0 8px;
  padding: 15px 19px;
  border-radius: 13px;
  color: #fff;
  background: #653b8c;
  font-weight: 750;
  line-height: 1.4;
  box-shadow: 0 12px 28px rgba(86, 48, 105, .18);
}
.support-button:hover { background: #512c75; }
.support-button:focus-visible, .button:focus-visible, a:focus-visible, summary:focus-visible { outline: 3px solid rgba(132, 80, 231, .42); outline-offset: 3px; }
.support-note { font-size: 13px !important; }
.faq { border-top: 1px solid var(--line); }
.faq details { border-bottom: 1px solid var(--line); }
.faq summary { padding: 25px 42px 25px 0; position: relative; cursor: pointer; font-size: 18px; font-weight: 750; list-style: none; }
.faq summary::-webkit-details-marker { display: none; }
.faq summary::after { content: "+"; position: absolute; right: 4px; color: var(--purple); font-size: 24px; font-weight: 400; }
.faq details[open] summary::after { content: "−"; }
.faq details p { margin: -6px 42px 24px 0; color: var(--muted); font-size: 15px; line-height: 1.8; }
@media (max-width: 900px) {
  .support { grid-template-columns: 1fr; gap: 44px; }
  .support-heading { position: static; }
}
@media (max-width: 620px) {
  .support { padding: 75px 20px; }
  .support-button { width: 100%; text-align: center; overflow-wrap: anywhere; }
  .faq summary { font-size: 16px; }
  .footer-links { flex-wrap: wrap; justify-content: center; }
}
