.support-hero { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(0, 1fr); align-items: center; gap: 70px; padding-block: 64px 80px; }
.support-hero h1 { font-size: clamp(38px, 4.5vw, 62px); line-height: 1.06; margin-bottom: 24px; }
.support-lead { font-size: clamp(21px, 2vw, 26px); line-height: 1.4; letter-spacing: -.02em; margin-bottom: 20px; }
.support-intro { font-size: 18px; color: var(--muted); line-height: 1.65; }
.support-photo { width: 100%; max-width: 370px; justify-self: end; }
.support-photo img { width: 100%; height: auto; border-radius: 16px; }
.support-cta { margin-top: 28px; }
.support-cta-note { font-size: 14px; line-height: 1.55; color: var(--muted); max-width: 560px; margin-top: 16px; }
.support-cta .button, .support-form-panel .button { max-width: 100%; text-align: center; }
.support-section { padding-block: 88px; }
.support-section h2 { font-size: clamp(32px, 3.6vw, 48px); line-height: 1.1; }
.support-section-head { max-width: 760px; margin-bottom: 40px; }
.support-section-head .eyebrow { margin-bottom: 18px; }
.support-section-head > p:last-child:not(.eyebrow) { margin-top: 24px; font-size: 20px; color: var(--muted); line-height: 1.55; }
.support-surface { background: var(--surface); }
.support-cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
.support-cards article { background: #fff; padding: 30px; border-radius: 24px; }
.support-cards h3, .support-outcomes h3, .support-process h3 { font-size: 24px; line-height: 1.2; margin-bottom: 18px; }
.support-cards p, .support-outcomes p { color: var(--muted); font-size: 17px; line-height: 1.65; }
.support-explanation { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.25fr); gap: 9%; }
.support-prose { font-size: 20px; line-height: 1.65; }
.support-prose p + p { margin-top: 24px; }
.support-prose .support-cta-note { font-size: 14px; }
.support-dark { background: #1d1d1f; color: #f5f5f7; }
.support-dark .eyebrow { color: #a1a1a6; }
.support-process { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 42px 60px; }
.support-process li { display: grid; grid-template-columns: 52px minmax(0, 1fr); gap: 22px; border-top: 1px solid #424245; padding-top: 30px; }
.support-process li > span { color: #70b9ff; font-size: 36px; line-height: 1.15; font-weight: 600; letter-spacing: -.04em; }
.support-process p { font-size: 17px; line-height: 1.65; color: #c7c7cc; }
.support-outcomes { display: grid; grid-template-columns: 1fr 1fr; gap: 40px 70px; }
.support-outcomes article { border-top: 1px solid var(--line); padding-top: 26px; }
.support-boundary { margin-top: 38px; padding-top: 25px; border-top: 1px solid var(--line); color: var(--muted); font-size: 16px; max-width: 820px; }
.support-faq { display: grid; grid-template-columns: .8fr 1.2fr; gap: 8%; }
.support-faq .faq-list summary { font-size: 18px; line-height: 1.4; }
.support-faq .faq-list p { font-size: 17px; }
.support-form-layout { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); align-items: start; gap: 8%; }
.support-form-layout h2 { margin-bottom: 24px; }
.support-form-panel { background: #fff; margin-top: 0; }
.support-form-panel fieldset { margin: 0; }
.support-form-panel label:first-of-type { margin-top: 0; }
.support-form-panel textarea { resize: vertical; min-height: 132px; }
.support-form-panel .application-success h3 { font-size: 30px; margin-bottom: 22px; }
.support-form-panel .application-success p { color: var(--muted); }
.support-form-panel a:not(.button) { color: var(--accent); overflow-wrap: anywhere; }
.support-form-panel .field-hint { font-size: 13px; }
.visually-hidden { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
body[data-page="support"] .section, body[data-page="support"] .reviews-section { padding-block: 80px; }
body[data-page="support"] .reviews-section { background: var(--surface); }
body[data-page="support"] .section-head { margin-bottom: 36px; }
body[data-page="support"] .section-head h2 { font-size: clamp(32px, 3.6vw, 48px); }
.thanks-intro, .thanks-bonus { max-width: 820px; }
.thanks-intro h1 { font-size: clamp(38px, 5vw, 62px); margin-bottom: 28px; }
.thanks-intro .button { margin-top: 28px; max-width: 100%; }
.thanks-fallback { margin-top: 28px; font-size: 16px; }
.thanks-fallback summary { cursor: pointer; }
.thanks-fallback textarea { margin-block: 20px 12px; }
.thanks-fallback a, .thanks-bonus .inline-link { color: var(--accent); }
.thanks-bonus h2 { margin-bottom: 28px; }
.bonus-steps { list-style: none; counter-reset: bonus; margin: 36px 0 0; padding: 0; }
.bonus-steps li { counter-increment: bonus; border-top: 1px solid var(--line); padding: 26px 0; }
.bonus-steps h3 { font-size: 23px; margin-bottom: 14px; }
.bonus-steps h3::before { content: counter(bonus) ". "; color: var(--accent); }
.bonus-steps p { color: var(--muted); font-size: 18px; }
@media (max-width: 1000px) {
  .support-hero { gap: 38px; }
  .support-cards { gap: 16px; }
  .support-cards article { padding: 24px; }
  .support-process { gap: 34px; }
  .support-process li { grid-template-columns: 40px minmax(0, 1fr); gap: 18px; }
  .support-form-layout { gap: 5%; }
}
@media (max-width: 740px) {
  .support-hero { grid-template-columns: 1fr; padding-block: 40px 56px; gap: 36px; }
  .support-hero-copy { max-width: 560px; }
  .support-hero h1 { font-size: clamp(32px, 8.6vw, 44px); overflow-wrap: anywhere; }
  .support-hero .eyebrow { font-size: 14px; }
  .support-intro { font-size: 17px; }
  .support-photo { max-width: 330px; justify-self: center; }
  .support-section { padding-block: 56px; }
  .support-section h2 { font-size: 32px; }
  .support-section h2 br { display: none; }
  .support-section-head { margin-bottom: 28px; }
  .support-section-head > p:last-child:not(.eyebrow) { font-size: 18px; }
  .support-cards, .support-process, .support-outcomes, .support-explanation, .support-faq, .support-form-layout { grid-template-columns: 1fr; gap: 28px; }
  .support-cards { gap: 16px; }
  .support-cards h3, .support-outcomes h3, .support-process h3 { font-size: 23px; }
  .support-prose { font-size: 18px; }
  .support-process li { padding-top: 26px; }
  .support-process li > span { font-size: 30px; }
  .support-cta .button { font-size: 16px; padding: 14px 20px; }
  .support-cta-note { font-size: 13px; }
  .support-form-panel { padding: 26px 22px; }
  .support-form-panel .checkbox-row { font-size: 13px; }
  body[data-page="support"] .section, body[data-page="support"] .reviews-section { padding-block: 56px; }
}
