/* FAQ and Contact: independent layout, no legacy site-wide cascade. */
.support-page { margin:0; color:var(--xe-ink); background:white; font:400 17px/1.7 var(--xe-font); -webkit-font-smoothing:antialiased; }
.support-page a { color:inherit; }
.support-page img { display:block; max-width:100%; height:auto; }
.support-page .wrap { width:min(100%,var(--xe-max)); margin-inline:auto; padding-inline:var(--xe-gutter); }
.support-page :is(h1,h2,h3,p) { margin:0; }
.support-page :is(h1,h2,h3,p,a,summary,label) { overflow-wrap:anywhere; }
.support-page :is(h1,h2,h3) { font-weight:600; }
.support-page h3 { font-size:1.375rem; line-height:1.35; }
.support-page .eyebrow { display:block; text-transform:uppercase; }
.support-page .lead { margin-top:24px; }
.support-page .btn { display:inline-flex; justify-content:center; align-items:center; min-height:50px; padding:13px 22px; border:1px solid transparent; border-radius:6px; font:600 1rem/1.4 var(--xe-font); cursor:pointer; text-align:center; text-decoration:none; }
.support-page .btn-primary:hover { background:#ac0044; border-color:#ac0044; }
.support-page button:disabled { cursor:wait; }
.support-page .section-head { max-width:880px; margin-bottom:40px; }
.support-page .section-head h2 { margin-top:16px; }
/* Native details work without scripting; JavaScript only selects a category. */
.support-page .faq-layout { display:grid; grid-template-columns:260px minmax(0,1fr); gap:64px; align-items:start; }
.support-page .faq-categories { position:sticky; top:calc(var(--xe-header) + 28px); display:grid; }
.support-page .faq-categories button { display:grid; grid-template-columns:34px minmax(0,1fr); gap:4px 0; min-height:82px; padding:16px; text-align:left; }
.support-page .faq-categories button small { grid-column:2; }
.support-page .faq-category-select { display:none; }
.support-page .faq-category-panel > header { margin-bottom:24px; }
.support-page .faq-category-panel > header h2 { margin-top:14px; }
.support-page .faq-item summary { position:relative; list-style:none; cursor:pointer; }
.support-page .faq-item summary::-webkit-details-marker { display:none; }
.support-page .faq-item summary::after { content:'+'; position:absolute; top:22px; right:4px; font:500 1.5rem/1.4 var(--xe-font); color:var(--xe-blue); }
.support-page .faq-item[open] summary::after { content:'−'; }
.support-page .faq-contact-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-items:start; }
.support-page .faq-contact-grid h2 { margin-top:16px; }
.has-js .support-page .faq-category-panel:not(.is-active) { display:none; }
html:not(.has-js) .support-page .faq-layout { grid-template-columns:minmax(0,1fr); }
html:not(.has-js) .support-page .faq-category-panel + .faq-category-panel { margin-top:48px; }
/* Keep the form contract intact: only presentation changes here. */
.support-page .contact-main-grid { display:grid; align-items:start; }
.support-page .contact-copy h1 { margin-top:20px; }
.support-page .contact-copy > p + p { margin-top:16px; }
.support-page .contact-reasons { border-top:1px solid var(--xe-line); }
.support-page .contact-reasons p { display:grid; grid-template-columns:30px minmax(0,1fr); gap:4px 12px; padding:20px 0; border-bottom:1px solid var(--xe-line); }
.support-page .contact-reasons p > span { grid-row:1 / 3; }
.support-page .contact-sales-form { display:grid; gap:18px; min-width:0; }
.support-page .contact-form-head { margin-bottom:10px; }
.support-page .contact-form-head h2 { margin-top:8px; }
.support-page .contact-form-head p { margin-top:8px; }
.support-page .contact-fields-row { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.support-page .field { display:grid; gap:7px; min-width:0; }
.support-page .field :is(input,select,textarea) { width:100%; }
.support-page .field textarea { resize:vertical; }
.support-page .consent { display:flex; align-items:start; gap:12px; line-height:1.65; }
.support-page .consent input { flex:0 0 auto; width:20px; height:20px; margin:3px 0 0; accent-color:var(--xe-blue); }
.support-page .contact-sales-form > .btn { width:fit-content; min-width:180px; }
.support-page .form-trap { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.support-page .form-message { margin:0; line-height:1.65; }
.support-page .form-message.success { color:#17603c; font-weight:600; }
.support-page .form-message.error { color:#a12b2b; font-weight:600; }
.support-page .contact-next-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px; border-top:1px solid var(--xe-line); }
.support-page .contact-next-grid article { padding-top:28px; }
.support-page .contact-next-grid article > span { font-size:.875rem; }
.support-page .contact-next-grid h3 { margin-top:14px; }
.support-page .contact-next-grid p { margin-top:14px; }
@media (max-width:920px) {
  .support-page .faq-layout { grid-template-columns:minmax(0,1fr); }
  .support-page .faq-categories { display:none; }
  .support-page .faq-category-select { display:grid; gap:8px; margin-bottom:32px; }
  .support-page .faq-category-select label { font-size:1rem; font-weight:500; }
  .support-page .faq-category-select select { width:100%; min-height:50px; padding:12px; border:1px solid #9daeca; border-radius:6px; background:white; color:var(--xe-ink); }
}
@media (max-width:700px) {
  .support-page .contact-next-grid { grid-template-columns:minmax(0,1fr); gap:24px; }
  .support-page .contact-next-grid article + article { border-top:1px solid var(--xe-line); }
  .support-page .contact-sales-form > .btn { width:100%; min-width:0; }
}
