/* Supporting pages share the homepage's fonts, palette and restrained geometry. */
.support-header { border-bottom:1px solid var(--rule); }
.support-hero .eyebrow { flex-wrap:wrap; gap:4px 12px; }
.support-hero .eyebrow .accent { white-space:nowrap; }
.support-hero { display:grid; grid-template-columns:1.3fr 1fr; gap:64px; align-items:end; padding-block:66px 72px; }
.support-hero h1 { font-family:var(--display); font-weight:700; font-size:clamp(4rem,7.8vw,7.5rem); line-height:.92; letter-spacing:-.015em; margin-top:28px; }
.support-intro { color:var(--muted); max-width:35ch; font-size:1rem; padding-bottom:6px; }
.support-layout { display:grid; grid-template-columns:minmax(200px,.8fr) minmax(0,2fr); gap:clamp(40px,7vw,104px); padding-block:64px 96px; }
.support-sidebar { min-width:0; align-self:start; }
.support-sidebar nav { border-top:1px solid #c6c6bf; }
.support-sidebar nav>p { color:#62625a; padding:22px 0 16px; }
.support-sidebar nav>a { display:flex; justify-content:space-between; align-items:center; gap:16px; min-height:52px; border-bottom:1px solid #d0cfc7; font-size:.875rem; }
.support-sidebar nav>a span { color:#6a695f; }
.support-sidebar nav>a:hover,.support-sidebar nav>a[aria-current] { color:#923e30; }
.support-sidebar nav>a[aria-current] { font-weight:700; }
.sidebar-note { margin-top:36px; color:#5a5952; font-size:.8125rem; }
.sidebar-note a { display:inline-block; margin-top:8px; text-decoration:underline; text-underline-offset:4px; overflow-wrap:anywhere; }
.support-content { min-width:0; max-width:760px; }
.support-content h2 { font-size:clamp(1.5rem,2.3vw,2.05rem); font-weight:500; letter-spacing:-.04em; line-height:1.3; margin:0 0 22px; }
.support-content p,.support-content li { color:#53534c; font-size:.9375rem; line-height:1.85; }
.support-content p+p { margin-top:18px; }
.support-content .eyebrow { font-size:.75rem; letter-spacing:.09em; margin-bottom:20px; }
.support-content a:not(.text-link) { text-decoration:underline; text-underline-offset:4px; text-decoration-thickness:1px; overflow-wrap:anywhere; }
.support-content a:hover { color:#923e30; }
.support-content .text-link { margin-top:24px; max-width:100%; overflow-wrap:anywhere; }
.support-content ul { padding-left:22px; margin-block:18px; }
.support-content li { margin-bottom:12px; padding-left:5px; }
.support-content li::marker { color:#9f4535; }
.policy-meta { display:flex; justify-content:space-between; flex-wrap:wrap; gap:12px 20px; padding-bottom:24px; border-bottom:1px solid #c6c6bf; color:#62625a; }
.policy-meta .eyebrow { margin:0; line-height:1.5; }
.policy-meta .status-dot { background:#9f4535; }
.policy-section { border-top:1px solid #c6c6bf; padding-top:36px; margin-top:40px; }
.provider-details { margin-block:24px; border-block:1px solid #c6c6bf; }
.provider-details summary { display:flex; align-items:center; justify-content:space-between; gap:20px; min-height:56px; padding-block:14px; font-size:.875rem; font-weight:600; cursor:pointer; list-style:none; }
.provider-details summary::-webkit-details-marker { display:none; }
.provider-details summary::after { content:'+'; flex:none; font-size:1.3rem; color:#923e30; }
.provider-details[open] summary::after { content:'−'; }
.provider-details summary:focus-visible { outline:2px solid #923e30; outline-offset:4px; }
.provider-details ul { padding-right:8px; }
.first-section { margin-top:0; border-top:0; padding-top:32px; }
.support-endnote { display:flex; flex-wrap:wrap; justify-content:space-between; gap:12px 24px; border-top:1px solid #c6c6bf; padding-top:28px; margin-top:40px; }
.support-endnote p,.support-endnote a { font-size:.8125rem; }
.contact-opening h2 { font-size:clamp(1.8rem,3vw,2.6rem); }
.contact-form-section { border-top:1px solid #c6c6bf; padding-top:36px; margin-top:40px; }
.contact-form-section h2 { margin-bottom:10px; }
.support-content .form-intro { margin-bottom:28px; }
.contact-fields { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
#contact-form label { font-size:.8125rem; margin:0 0 9px; }
#contact-form input,#contact-form select,#contact-form textarea { display:block; width:100%; min-width:0; border:1px solid #919087; border-radius:0; padding:14px; background:transparent; color:var(--ink); font:inherit; font-size:1rem; margin:0 0 24px; min-height:52px; }
#contact-form select { padding-right:28px; }
#contact-form textarea { resize:vertical; min-height:160px; margin-bottom:10px; }
#contact-form input:focus-visible,#contact-form select:focus-visible,#contact-form textarea:focus-visible { outline:2px solid #923e30; outline-offset:3px; }
#contact-form [aria-invalid=true] { border-color:#923e30; }
#contact-form .field-help { font-size:.75rem; line-height:1.75; margin:12px 0 24px; }
#contact-form .contact-status { font-size:.875rem; color:#923e30; margin:16px 0; }
#contact-form .contact-status:empty { display:none; }
#contact-form .contact-status.success { color:#315331; }
#contact-challenge { margin-top:20px; }
#contact-submit { margin-top:20px; background:var(--ink); color:var(--paper); min-width:220px; }
#contact-submit:hover { background:#34342f; }
.light-surface a:focus-visible { outline-color:#923e30; }
@media(max-width:900px) {
  .support-hero { gap:32px; padding-block:44px 52px; }
  .support-layout { grid-template-columns:190px minmax(0,1fr); gap:36px; padding-block:44px 64px; }
  .contact-fields { grid-template-columns:1fr; gap:0; }
}
@media(max-width:700px) {
  .support-hero { grid-template-columns:1fr; gap:24px; padding-block:32px 42px; }
  .support-hero h1 { font-size:clamp(3.25rem,12.8vw,5.6rem); margin-top:22px; }
  .support-intro { font-size:.9375rem; max-width:40ch; }
  .support-layout { grid-template-columns:1fr; gap:40px; padding-block:28px 52px; }
  .support-sidebar nav { display:grid; grid-template-columns:1fr 1fr; gap:0 22px; }
  .support-sidebar nav>p { grid-column:1 / -1; padding-block:15px 8px; }
  .support-sidebar nav>a { font-size:.75rem; min-height:52px; gap:8px; }
  .sidebar-note { display:none; }
  .support-content h2 { font-size:1.6rem; }
  .policy-section { margin-top:32px; padding-top:30px; }
  .first-section { margin-top:0; }
  .support-content .text-link { gap:16px; font-size:.8125rem; }
  #contact-submit { width:100%; }
  .contact-opening h2 { font-size:1.85rem; }
}
