/* Customer help, using the same white surfaces and typography as the calculators. */
.faq-page { --surface:#fff; --card:#fff; --text:#171716; --text-muted:#535b64; --text-dim:#626b75; --border:#dce0e4; --border-md:#bfc5cb; --accent:#171716; background:#fff; }
.faq-page main { max-width:1560px; margin:80px auto 0; padding:0 clamp(24px,3.6vw,64px); }
.faq-page main [hidden] { display:none !important; }
.faq-page main :focus-visible { outline:2px solid #42677d; outline-offset:5px; }
.faq-page .faq-eyebrow { font:400 10px/1.6 'Share Tech Mono',monospace; letter-spacing:.16em; text-transform:uppercase; color:var(--text-dim); }
.faq-hero { position:relative; isolation:isolate; padding:64px 0 45px; }
.faq-hero::before { content:''; position:absolute; inset:0; z-index:-1; pointer-events:none; background:radial-gradient(rgba(20,26,34,.13) 1.2px,transparent 1.2px) 0 0 / 24px 24px; mask-image:radial-gradient(ellipse 70% 75% at 65% 30%,#000 15%,transparent 80%); }
.faq-hero-grid { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr); align-items:end; gap:70px; margin-top:24px; }
.faq-page .faq-title { font:400 clamp(50px,6vw,88px)/1.02 Inter,sans-serif; letter-spacing:-.06em; }
.faq-intro { max-width:400px; padding-bottom:7px; }
.faq-intro p { font-size:16px; line-height:1.8; color:var(--text-muted); }
.faq-intro a { display:inline-flex; align-items:center; gap:30px; margin-top:22px; padding-bottom:5px; color:var(--text); text-decoration:none; border-bottom:1px solid var(--border-md); font-size:13px; }
.faq-search-area { margin-top:42px; }
.faq-search-area label { display:block; margin-bottom:10px; font-size:12px; color:var(--text-muted); }
.faq-search-box { display:flex; align-items:center; gap:18px; border:1px solid var(--border-md); background:#fff; padding:0 22px; }
.faq-search-box:focus-within { outline:2px solid #42677d; outline-offset:2px; }
.faq-search-box svg { width:22px; height:22px; flex:none; color:var(--text-muted); }
.faq-search-box input { min-width:0; flex:1; width:100%; height:66px; padding:0; border:0; background:transparent; font:400 17px Inter,sans-serif; color:var(--text); }
.faq-page .faq-search-box input:focus-visible { outline:none; }
.faq-search-box input::-webkit-search-cancel-button { display:none; }
.faq-clear { min-height:44px; padding:0 6px; border:0; background:none; font:400 12px Inter,sans-serif; color:var(--text); text-decoration:underline; text-underline-offset:4px; cursor:pointer; }
.faq-quick { display:flex; flex-wrap:wrap; align-items:center; gap:8px 24px; margin-top:12px; font-size:12px; }
.faq-quick>span { color:var(--text-muted); }
.faq-quick a { display:inline-flex; align-items:center; gap:12px; min-height:36px; color:var(--text); text-decoration:none; }
.faq-quick a:hover { text-decoration:underline; text-underline-offset:4px; }
.faq-workspace { display:grid; grid-template-columns:235px minmax(0,1fr); gap:clamp(35px,5vw,80px); border-top:1px solid var(--border); padding:40px 0 90px; }
.faq-sidebar { position:sticky; top:110px; align-self:start; }
.faq-topics { display:flex; flex-direction:column; gap:4px; margin-top:19px; }
.faq-topic { display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:46px; padding:10px 12px; border-left:2px solid transparent; color:var(--text-muted); font-size:13px; text-decoration:none; }
.faq-topic span { color:var(--text-dim); font:400 11px 'Share Tech Mono',monospace; }
.faq-topic:hover { background:#f6f7f8; color:var(--text); }
.faq-topic[aria-current] { border-left-color:var(--text); background:#f3f5f6; color:var(--text); }
.faq-sidebar-help { margin-top:30px; padding:24px 12px 0; border-top:1px solid var(--border); }
.faq-sidebar-help p { font-size:12px; line-height:1.8; color:var(--text-muted); }
.faq-sidebar-help a { display:inline-block; margin-top:13px; color:var(--text); font-size:12px; text-underline-offset:4px; }
.faq-content { min-width:0; }
.faq-results-bar { display:flex; justify-content:space-between; align-items:center; gap:20px; min-height:40px; margin-bottom:27px; font-size:12px; color:var(--text-muted); }
.faq-expand { flex:none; min-height:44px; border:0; background:none; color:var(--text); font:400 12px Inter,sans-serif; text-decoration:underline; text-underline-offset:4px; cursor:pointer; }
.faq-section { margin-bottom:48px; scroll-margin-top:110px; }
.faq-section-head { display:flex; align-items:baseline; gap:16px; margin-bottom:9px; padding-bottom:20px; border-bottom:1px solid var(--border-md); }
.faq-section-number { font:400 11px 'Share Tech Mono',monospace; color:var(--text-dim); }
.faq-section-title { font:400 clamp(25px,2.4vw,34px)/1.2 Inter,sans-serif; letter-spacing:-.04em; }
.faq-item { border-bottom:1px solid var(--border); scroll-margin-top:112px; }
.faq-q-h { font:inherit; }
.faq-q { display:flex; align-items:center; justify-content:space-between; gap:25px; width:100%; padding:23px 0; border:0; background:#fff; color:var(--text); font:400 16px/1.5 Inter,sans-serif; text-align:left; cursor:pointer; }
.faq-q:hover>span:first-child { text-decoration:underline; text-underline-offset:4px; }
.faq-q-icon { display:grid; place-items:center; width:25px; height:25px; flex:none; font:300 22px/1 Inter,sans-serif; color:var(--text-muted); }
.faq-q[aria-expanded="true"] .faq-q-icon { background:var(--text); color:#fff; }
.faq-a-inner { max-width:760px; padding:0 50px 25px 0; font:400 14px/1.85 Inter,sans-serif; color:var(--text-muted); }
.faq-a-inner p+p,.faq-a-inner ul+p,.faq-a-inner ol+p { margin-top:12px; }
.faq-a-inner ul,.faq-a-inner ol { padding-left:20px; margin:10px 0; }
.faq-a-inner li+li { margin-top:5px; }
.faq-a-inner strong { color:var(--text); font-weight:500; }
.faq-a-inner a { color:var(--text); text-decoration:underline; text-underline-offset:3px; }
.faq-empty { padding:42px; border:1px solid var(--border); margin-bottom:32px; }
.faq-empty h2 { font:400 28px/1.2 Inter,sans-serif; letter-spacing:-.03em; margin-bottom:14px; }
.faq-empty p { color:var(--text-muted); font-size:14px; line-height:1.8; margin-bottom:18px; }
.faq-support { display:grid; grid-template-columns:1fr auto; gap:35px; align-items:center; margin-top:55px; padding:32px; background:#fff; border:1px solid var(--border-md); }
.faq-support h2 { font:400 clamp(25px,2.5vw,35px)/1.2 Inter,sans-serif; letter-spacing:-.035em; margin-bottom:14px; }
.faq-support p { max-width:520px; font-size:13px; line-height:1.8; color:var(--text-muted); }
.faq-support-links { display:flex; flex-direction:column; align-items:flex-start; gap:16px; }
.faq-support-links a { color:var(--text); font-size:12px; text-underline-offset:4px; }
.faq-support-links .faq-primary { display:inline-flex; align-items:center; gap:25px; min-height:48px; padding:14px 20px; background:var(--text); color:#fff; text-decoration:none; }
@media(max-width:1050px) {
  .faq-hero-grid { gap:35px; }
  .faq-workspace { grid-template-columns:205px minmax(0,1fr); gap:35px; }
  .faq-support { grid-template-columns:1fr; }
  .faq-support-links { flex-direction:row; flex-wrap:wrap; align-items:center; gap:20px; }
}
@media(max-width:800px) {
  .faq-hero { padding-top:45px; }
  .faq-hero-grid { grid-template-columns:1fr; gap:25px; }
  .faq-intro { max-width:560px; }
  .faq-intro a { margin-top:14px; }
  .faq-workspace { grid-template-columns:1fr; gap:25px; padding-top:28px; }
  .faq-sidebar { position:static; }
  .faq-workspace.is-searching .faq-sidebar { display:none; }
  .faq-topics { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:5px 12px; margin-top:12px; }
  .faq-topic { padding-left:10px; }
  .faq-sidebar-help { display:none; }
  .faq-results-bar { border-top:1px solid var(--border); padding-top:18px; }
  .faq-workspace.is-searching .faq-results-bar { border-top:0; padding-top:0; }
  .faq-a-inner { padding-right:10px; }
}
@media(max-width:480px) {
  .faq-page main { margin-top:70px; }
  .faq-page .faq-title { font-size:44px; }
  .faq-search-area { margin-top:28px; }
  .faq-search-box { gap:10px; padding-inline:14px; }
  .faq-search-box input { font-size:16px; height:60px; }
  .faq-quick { gap:4px 18px; }
  .faq-quick>span { width:100%; }
  .faq-topic { font-size:12px; }
  .faq-q { font-size:15px; gap:12px; padding-block:21px; }
  .faq-support,.faq-empty { padding:24px; }
}
@media(prefers-reduced-motion:reduce) { html:has(.faq-page) { scroll-behavior:auto; } }
@media print {
  .faq-page main { margin:0; }
  .faq-hero { padding-top:0; }
  .faq-hero::before,.faq-sidebar,.faq-search-area,.faq-results-bar,.faq-support { display:none; }
  .faq-workspace { display:block; }
  .faq-page main .faq-item[hidden],.faq-page main .faq-section[hidden],.faq-page main .faq-a[hidden] { display:block !important; }
  .faq-q-icon { display:none; }
  .faq-item { break-inside:avoid; }
}
