.support-page { font-family: "Avenir Next", "Segoe UI", sans-serif; }
.support-page .brand, .support-page h1, .support-page h2 { font-family: Georgia, serif; }
.support-page .brand span { display: inline-block; font: 400 .75rem "Avenir Next", sans-serif; margin-left: .5rem; color: var(--muted); }
.support-page .page-hero { padding: clamp(2.5rem, 6vw, 5rem) 0 2.8rem; max-width: 52rem; }
.support-page h1 { font-size: clamp(2.5rem, 6vw, 4.8rem); line-height: 1.08; letter-spacing: -.04em; margin: .8rem 0 1.4rem; }
.support-page h2 { font-size: 1.65rem; line-height: 1.25; margin: .5rem 0 1rem; }
.support-page p, .support-page li { line-height: 1.65; }
.support-page a:not(.brand):not(.cta-button):not(.back-link):not(.skip-link) { text-decoration: underline; text-underline-offset: .2em; }
.support-grid { display: grid; grid-template-columns: minmax(0, 1.65fr) minmax(0, 1fr); gap: clamp(1.5rem, 4vw, 3.5rem); align-items: start; }
.support-card { padding: clamp(1.25rem, 3vw, 2.5rem); background: var(--surface-strong); border: 1px solid #d9dfdc; border-radius: 1.2rem; box-shadow: var(--shadow); }
.support-card > p, .support-sidebar p, .support-sidebar li, .privacy-section p { color: #495861; }
.support-page fieldset { border: 0; padding: 0; margin: 1.5rem 0 0; min-width: 0; }
.field-row { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 1rem; }
.field { margin-bottom: 1.25rem; min-width: 0; }
.field label { display: block; margin-bottom: .5rem; font-weight: 600; font-size: .95rem; }
.optional { color: #596771; font-size: .8rem; font-weight: 400; }
.support-page input, .support-page select, .support-page textarea { display: block; width: 100%; border: 1px solid #7b898a; border-radius: .4rem; background: #fff; color: var(--text); padding: .8rem; font: inherit; font-size: 1rem; min-height: 48px; }
.support-page textarea { resize: vertical; }
.support-page input::placeholder { color: #66737b; opacity: 1; }
.field-help { font-size: .85rem; color: #495861; margin: 0 0 .7rem; }
.support-page .cta-button { border: 0; cursor: pointer; font: 600 1rem "Avenir Next", sans-serif; border-radius: .5rem; min-height: 48px; gap: .8rem; background: #285d60; color: #fff; margin-top: .6rem; }
.support-page button:disabled { opacity: .6; cursor: wait; }
.support-page :focus-visible { outline: 3px solid #246166; outline-offset: 4px; }
.support-page [hidden] { display: none !important; }
.spam-trap, .sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
.form-status { margin: 1rem 0 0; font-size: .95rem; overflow-wrap: anywhere; }
.form-status[data-state="error"] { color: #8d2828; border-left: 3px solid #8d2828; padding-left: .8rem; }
.form-status[data-state="success"] { color: #285d60; border-left: 3px solid #285d60; padding-left: .8rem; }
.retry-button { background: none; border: 1px solid #285d60; border-radius: .4rem; color: #285d60; min-height: 44px; padding: .5rem 1rem; margin-top: .75rem; font: inherit; cursor: pointer; }
.support-sidebar section { padding: .4rem 0 1.4rem; margin-bottom: 1.3rem; border-bottom: 1px solid #cfd8d4; }
.support-sidebar ul { padding-left: 1.3rem; }
.support-sidebar li { margin-bottom: .5rem; }
.email-link { font-weight: 600; color: #285d60; overflow-wrap: anywhere; }
.privacy-section { margin-top: 3rem; padding-top: 2rem; border-top: 1px solid #cfd8d4; max-width: 52rem; scroll-margin-top: 7rem; }
.support-footer { display: flex; gap: 1.5rem; flex-wrap: wrap; align-items: center; justify-content: center; padding: 1rem; border-top: 1px solid #cfd8d4; font-size: .85rem; }
.skip-link { position: fixed; top: -100px; left: 1rem; padding: 1rem; background: #fff; z-index: 100; }
.skip-link:focus { top: .5rem; }
@media (max-width: 760px) { .support-grid { grid-template-columns: 1fr; } .support-sidebar { padding: 0 .4rem; } }
@media (max-width: 480px) { .field-row { grid-template-columns: 1fr; gap: 0; } .support-page .brand span { display: block; margin: .25rem 0 0; } .support-page .site-header { gap: .6rem; } .support-page .back-link { font-size: .85rem; } .support-page .cta-button { width: 100%; justify-content: center; } }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } *, *::before, *::after { transition: none !important; } }
.support-page h1, .support-page h2 { max-width: none; }
.support-page .site-header { flex-direction: row; align-items: center; }
.support-page .site-header .back-link { margin: 0; }
