:root {
  --central-faq-blue: #1464f6;
  --central-faq-navy: #041a3a;
  --central-faq-text: #071733;
  --central-faq-muted: #66758f;
  --central-faq-line: #dce5f2;
  --central-faq-soft: #f2f7ff;
}

.central-faq-hero,
.central-faq-browser { box-sizing: border-box; font-family: inherit; color: var(--central-faq-text); }
.central-faq-hero *, .central-faq-browser * { box-sizing: border-box; }
.central-faq-hero [hidden], .central-faq-browser [hidden] { display:none!important; }
.central-faq-hero .screen-reader-text { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }
.central-faq-icon { width: 1.5em; height: 1.5em; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; flex: 0 0 auto; }

.central-faq-hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  min-height: 310px;
  display: grid;
  align-items: center;
  padding: clamp(36px, 6vw, 70px) clamp(24px, 6vw, 76px);
  color: #fff;
  background-color: var(--central-faq-navy);
  background-image: var(--central-faq-hero-image);
  background-position: center;
  background-size: cover;
}
.central-faq-hero__content { width:min(1120px,78%); }
.central-faq-eyebrow { margin:0 0 7px; color:#35a2ff; font-size:14px; font-weight:800; letter-spacing:.12em; }
.central-faq-hero h1 { margin:0; color:#fff; font-size:clamp(38px,5.6vw,64px); line-height:1.02; font-weight:800; letter-spacing:-.035em; }
.central-faq-hero h1 span { color:#1680ff; }
.central-faq-hero__subtitle { margin:9px 0 20px; font-size:clamp(16px,2vw,20px); color:rgba(255,255,255,.94); }
.central-faq-search { height:56px; display:flex; align-items:center; gap:12px; padding:0 17px; border-radius:11px; background:#fff; box-shadow:0 12px 34px rgba(0,0,0,.2); color:#122646; }
.central-faq-search .central-faq-icon { width:25px; height:25px; }
.central-faq-search input { width:100%; min-width:0; height:100%; padding:0; border:0!important; outline:0!important; box-shadow:none!important; background:transparent!important; color:#122646; font:inherit; }
.central-faq-search input::placeholder { color:#8490a5; opacity:1; }
.central-faq-search button { appearance:none; flex:0 0 34px; display:grid; place-items:center; width:34px!important; min-width:34px!important; max-width:34px; height:34px; min-height:34px; margin:0; padding:0!important; border:0; border-radius:50%; box-shadow:none; background:#edf4ff; color:#315886; font-family:inherit; font-size:20px; font-weight:700; line-height:1; text-transform:none; cursor:pointer; }
.central-faq-popular { display:flex; flex-wrap:nowrap; align-items:center; gap:9px; margin-top:18px; font-size:13px; }
.central-faq-popular strong { margin-right:4px; }
.central-faq-popular button { border:1px solid rgba(255,255,255,.38); border-radius:999px; padding:8px 16px; color:#fff; background:rgba(8,61,125,.52); font:inherit; cursor:pointer; transition:.2s ease; }
.central-faq-popular button:hover,.central-faq-popular button:focus-visible { border-color:#72baff; background:#0f65cf; transform:translateY(-1px); }

.central-faq-browser { padding:20px 0; }
.central-faq-categories { display:grid; grid-template-columns:repeat(10,minmax(112px,1fr)); padding:12px; margin-bottom:18px; border:1px solid var(--central-faq-line); border-radius:16px; background:#fff; box-shadow:0 7px 24px rgba(25,58,101,.05); overflow-x:auto; }
.central-faq-category { appearance:none; position:relative; width:100%; min-width:112px!important; min-height:96px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:9px; margin:0; padding:8px!important; border:0; border-right:1px solid #e3e9f2; border-radius:0; background:#fff; box-shadow:none; color:var(--central-faq-text); font-family:inherit; font-size:13px; font-weight:600; line-height:1.25; text-align:center; text-transform:none; cursor:pointer; }
.central-faq-category:last-child { border-right:0; }
.central-faq-category .central-faq-icon { width:30px; height:30px; color:var(--central-faq-blue); stroke-width:2; }
.central-faq-category > span { display:flex; min-height:2.5em; align-items:center; justify-content:center; white-space:nowrap; line-height:1.25; }
.central-faq-category::after { content:""; position:absolute; height:3px; left:12px; right:12px; bottom:0; border-radius:3px; background:transparent; }
.central-faq-category.is-active { border-radius:9px; background:#edf5ff; color:#0a1c39; font-weight:700; }
.central-faq-category.is-active::after { background:var(--central-faq-blue); }

.central-faq-results { margin:0 0 13px; padding:12px 16px; border-radius:10px; background:#edf5ff; color:#174c9b; font-weight:700; }
.central-faq-group { padding:clamp(18px,3vw,30px); border:1px solid var(--central-faq-line); border-radius:16px; background:#fff; box-shadow:0 9px 30px rgba(24,57,99,.05); }
.central-faq-group > header { display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:16px; margin-bottom:18px; }
.central-faq-group > header > .central-faq-icon { width:48px; height:48px; color:var(--central-faq-blue); stroke-width:1.9; }
.central-faq-group h2 { margin:0; color:var(--central-faq-text); font-size:clamp(24px,3vw,32px); line-height:1.15; font-weight:800; letter-spacing:-.025em; }
.central-faq-group header p { margin:4px 0 0; color:var(--central-faq-muted); }
.central-faq-count { justify-self:end; padding:9px 17px; border-radius:999px; background:#e8f2ff; color:#145ed8; font-size:13px; font-weight:600; white-space:nowrap; }
.central-faq-count b { font-weight:inherit; }
.central-faq-items { display:grid; gap:7px; }
.central-faq-item { border:1px solid var(--central-faq-line); border-radius:9px; background:#fff; overflow:hidden; }
.central-faq-item[open] { border-color:#d3e3fa; background:linear-gradient(105deg,#f2f7ff,#eaf3ff); }
.central-faq-item summary { min-height:47px; display:flex; align-items:center; justify-content:space-between; gap:16px; margin:0; padding:11px 17px; cursor:pointer; list-style:none; color:#091a36; background:transparent; font-weight:700; }
.central-faq-item summary::-webkit-details-marker { display:none; }
.central-faq-item summary .central-faq-icon { width:18px; height:18px; transition:transform .2s ease; }
.central-faq-item[open] summary .central-faq-icon { transform:rotate(180deg); color:var(--central-faq-blue); }
.central-faq-answer { margin:0 14px 12px; padding:14px 17px; border-radius:8px; background:rgba(218,233,253,.66); color:#3a4d69; line-height:1.55; }
.central-faq-answer > :first-child { margin-top:0; }
.central-faq-answer > :last-child { margin-bottom:0; }
.central-faq-no-results { padding:60px 20px; border:1px dashed #cfdced; border-radius:16px; text-align:center; color:var(--central-faq-muted); }
.central-faq-no-results .central-faq-icon { width:42px; height:42px; color:var(--central-faq-blue); }
.central-faq-no-results h3 { margin:12px 0 3px; color:var(--central-faq-text); }
.central-faq-no-results p { margin:0; }
.central-faq-empty { padding:24px; border:1px solid var(--central-faq-line); border-radius:12px; background:#fff; }

@media (max-width: 900px) {
  .central-faq-hero__content { width:100%; }
  .central-faq-popular { flex-wrap:wrap; }
  .central-faq-categories { grid-template-columns:repeat(10,112px); }
  .central-faq-category { min-width:112px!important; }
  .central-faq-group > header { grid-template-columns:auto 1fr; }
  .central-faq-count { grid-column:1/-1; width:max-content; }
}
@media (max-width: 600px) {
  .central-faq-hero { min-height:390px; padding:36px 20px; }
  .central-faq-search { height:54px; }
  .central-faq-popular { gap:7px; }
  .central-faq-popular strong { width:100%; }
  .central-faq-popular button { padding:7px 12px; }
  .central-faq-browser { padding-top:12px; }
  .central-faq-categories { margin-inline:-4px; padding:8px; border-radius:12px; }
  .central-faq-category { min-height:82px; font-size:12px; }
  .central-faq-category .central-faq-icon { width:25px; height:25px; }
  .central-faq-group { padding:18px 12px; border-radius:12px; }
  .central-faq-group > header { gap:11px; }
  .central-faq-group > header > .central-faq-icon { width:38px; height:38px; }
  .central-faq-item summary { padding:12px; font-size:14px; }
  .central-faq-answer { margin:0 8px 8px; padding:12px; font-size:14px; }
}

@media (prefers-reduced-motion: reduce) {
  .central-faq-category,.central-faq-item summary .central-faq-icon,.central-faq-popular button { transition:none; }
  html:focus-within { scroll-behavior:auto; }
}

