.page-faq{
  --faq-hair:rgba(143,167,156,.26);
  --faq-hair-2:rgba(143,167,156,.14);
  display:block;
  padding-bottom:clamp(32px,6vw,72px);
}

.page-faq .faq-head{
  display:grid;
  gap:16px;
  padding:clamp(16px,4vw,36px) 0 clamp(22px,4vw,40px);
}

.page-faq .faq-h1{
  margin:0;
  font-family:var(--k-font-display);
  font-weight:900;
  font-size:clamp(31px,7.2vw,61px);
  line-height:1.04;
  letter-spacing:-.02em;
}

.page-faq .faq-lede{
  margin:0;
  max-width:42ch;
  font-size:16px;
  line-height:1.85;
  color:var(--k-muted);
}

.page-faq .faq-jumpwrap{
  margin-top:8px;
}

.page-faq .faq-jump{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:2px;
  padding:2px;
  background:var(--k-black);
  border:2px solid var(--k-black);
  box-shadow:var(--k-shadow-2);
}

.page-faq .faq-jump__a{
  display:flex;
  flex-direction:column;
  gap:4px;
  padding:12px 12px 14px;
  background:var(--k-ink-2);
  color:var(--k-paper);
  text-decoration:none;
  border-top:2px solid transparent;
  transition:background .18s var(--k-ease),color .18s var(--k-ease),transform .18s var(--k-ease);
}

.page-faq .faq-jump__a:hover,
.page-faq .faq-jump__a:focus-visible{
  background:var(--k-mint);
  color:var(--k-black);
  border-top-color:var(--k-black);
  transform:translateY(-2px);
}

.page-faq .faq-jump__a:focus-visible{
  outline:2px solid var(--k-mint);
  outline-offset:2px;
}

.page-faq .faq-jump__no{
  font-family:var(--k-font-mono);
  font-size:13px;
  letter-spacing:.06em;
  color:var(--k-mint);
}

.page-faq .faq-jump__a:hover .faq-jump__no,
.page-faq .faq-jump__a:focus-visible .faq-jump__no{
  color:var(--k-black);
}

.page-faq .faq-jump__lb{
  font-family:var(--k-font-display);
  font-weight:700;
  font-size:15px;
  line-height:1.25;
  letter-spacing:-.01em;
}

.page-faq .faq-shell{
  display:grid;
  gap:clamp(20px,4vw,32px);
  margin-top:clamp(24px,5vw,48px);
}

.page-faq .faq-flow{
  display:grid;
  gap:clamp(16px,3vw,26px);
  min-width:0;
}

.page-faq .faq-sec{
  min-width:0;
  background:var(--k-ink-2);
  border:2px solid var(--k-black);
  box-shadow:var(--k-shadow-2);
  padding:clamp(16px,4vw,28px);
}

.page-faq .faq-sec--last{
  background:var(--k-ink-3);
  border-color:var(--k-mint-dark);
}

.page-faq .faq-sec__head{
  display:flex;
  align-items:baseline;
  gap:12px;
  padding-bottom:10px;
  border-bottom:2px solid var(--k-black);
}

.page-faq .faq-sec__no{
  font-family:var(--k-font-mono);
  font-size:clamp(20px,4vw,25px);
  color:var(--k-mint);
  line-height:1;
}

.page-faq .faq-sec__ttl{
  margin:0;
  font-family:var(--k-font-display);
  font-weight:800;
  font-size:clamp(20px,3.6vw,31px);
  line-height:1.15;
  letter-spacing:-.02em;
}

.page-faq .faq-sec__lede{
  margin:14px 0 18px;
  font-size:15px;
  line-height:1.85;
  color:var(--k-muted);
  max-width:60ch;
}

.page-faq .faq-item{
  border-top:1px solid var(--faq-hair);
}

.page-faq .faq-item summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:14px 2px;
  cursor:pointer;
  list-style:none;
  transition:transform .18s var(--k-ease),background .18s var(--k-ease);
}

.page-faq .faq-item summary::-webkit-details-marker{ display:none; }

.page-faq .faq-item summary:hover{
  transform:translateY(-2px);
  background:rgba(59,240,176,.06);
}

.page-faq .faq-item summary:focus-visible{
  outline:2px solid var(--k-mint);
  outline-offset:2px;
}

.page-faq .faq-q{
  margin:0;
  font-family:var(--k-font-display);
  font-weight:700;
  font-size:16px;
  line-height:1.4;
  letter-spacing:-.01em;
  color:var(--k-paper);
}

.page-faq .faq-tri{
  flex:none;
  width:0;
  height:0;
  border-left:8px solid var(--k-mint);
  border-top:6px solid transparent;
  border-bottom:6px solid transparent;
  transition:transform .18s var(--k-ease);
}

.page-faq .faq-item[open] .faq-tri{
  transform:rotate(90deg);
}

.page-faq .faq-body{
  display:grid;
  gap:16px;
  padding:2px 0 20px;
}

.page-faq .faq-symp{
  border-left:3px solid var(--k-mint-dark);
  padding-left:12px;
}

.page-faq .faq-symp p{
  margin:0 0 8px;
  font-size:14px;
  line-height:1.75;
  color:var(--k-muted);
}

.page-faq .faq-symp p:last-child{ margin-bottom:0; }

.page-faq .faq-symp__t{
  font-family:var(--k-font-mono);
  font-size:12px;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--k-blue);
  margin-bottom:6px;
}

.page-faq .faq-hint{
  font-size:14px;
  line-height:1.75;
  color:var(--k-muted);
}

.page-faq .faq-symp .faq-hint{
  color:var(--k-mint-dark);
}

.page-faq .faq-cols{
  min-width:0;
}

.page-faq .faq-steps{
  list-style:none;
  counter-reset:faqstep;
  margin:0;
  padding:0;
  display:grid;
  gap:10px;
}

.page-faq .faq-steps li{
  counter-increment:faqstep;
  display:grid;
  grid-template-columns:26px minmax(0,1fr);
  gap:10px;
  align-items:start;
  font-size:15px;
  line-height:1.75;
}

.page-faq .faq-steps li::before{
  content:counter(faqstep);
  width:26px;
  height:26px;
  border:2px solid var(--k-mint);
  border-radius:50%;
  display:grid;
  place-items:center;
  font-family:var(--k-font-mono);
  font-size:12px;
  color:var(--k-mint);
  line-height:1;
}

.page-faq .faq-checklist{
  display:grid;
  gap:0;
}

.page-faq .faq-check{
  display:grid;
  grid-template-columns:20px minmax(0,1fr);
  gap:10px;
  align-items:start;
  padding:10px 0;
  border-bottom:1px dashed var(--faq-hair);
  font-size:15px;
  line-height:1.7;
  cursor:pointer;
}

.page-faq .faq-check:last-child{ border-bottom:0; }

.page-faq .faq-check input{
  appearance:none;
  -webkit-appearance:none;
  width:18px;
  height:18px;
  margin:3px 0 0;
  border:2px solid var(--k-mint);
  background:transparent;
  cursor:pointer;
}

.page-faq .faq-check input:checked{
  background:var(--k-mint);
  box-shadow:inset 0 0 0 2px var(--k-ink-2);
}

.page-faq .faq-check input:focus-visible{
  outline:2px solid var(--k-mint);
  outline-offset:2px;
}

.page-faq .faq-check input:checked + span{
  color:var(--k-muted);
  text-decoration:line-through;
}

.page-faq .faq-check b{
  color:var(--k-blue);
  font-weight:700;
}

.page-faq .faq-alert{
  margin:14px 0 0;
  padding:10px 12px;
  border-left:3px solid var(--k-alert);
  background:rgba(217,85,47,.1);
  font-size:14px;
  line-height:1.7;
  color:var(--k-paper);
}

.page-faq .faq-more{
  margin:14px 0 0;
  font-size:14px;
}

.page-faq .faq-more a{
  color:var(--k-mint);
  text-decoration:none;
  border-bottom:1px solid rgba(59,240,176,.45);
}

.page-faq .faq-more a:hover{
  border-bottom-color:var(--k-mint);
}

.page-faq .faq-more a:focus-visible{
  outline:2px solid var(--k-mint);
  outline-offset:2px;
}

.page-faq .faq-fig{
  margin:0 0 18px;
  border:2px solid var(--k-black);
  box-shadow:var(--k-shadow-1);
  overflow:hidden;
  background:var(--k-ink-3);
}

.page-faq .faq-fig img{
  display:block;
  width:100%;
  max-width:100%;
  height:auto;
  object-fit:cover;
}

.page-faq .faq-fig .k-figure__cap{
  display:block;
  padding:9px 12px;
  border-top:2px solid var(--k-black);
  font-size:13px;
  line-height:1.6;
  color:var(--k-muted);
}

.page-faq .faq-side{
  min-width:0;
  background:var(--k-ink-3);
  border:2px solid var(--k-black);
  box-shadow:var(--k-shadow-3);
  padding:18px;
  display:grid;
  gap:12px;
  align-content:start;
}

.page-faq .faq-side__tag{
  margin:0;
  font-family:var(--k-font-mono);
  font-size:11px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--k-amber);
}

.page-faq .faq-side__ttl{
  margin:0;
  font-family:var(--k-font-display);
  font-weight:800;
  font-size:var(--k-fs-25);
  line-height:1.15;
  letter-spacing:-.02em;
}

.page-faq .faq-side__rows{
  display:grid;
  gap:0;
  border-top:1px solid var(--faq-hair);
}

.page-faq .faq-side__row{
  display:flex;
  justify-content:space-between;
  align-items:baseline;
  gap:10px;
  padding:8px 0;
  border-bottom:1px solid var(--faq-hair-2);
  font-size:13px;
  color:var(--k-muted);
}

.page-faq .faq-mono{
  font-family:var(--k-font-mono);
  font-size:13px;
  color:var(--k-paper);
  letter-spacing:-.01em;
}

.page-faq .faq-side__block{
  display:grid;
  gap:2px;
  padding:10px 12px;
  border-left:3px solid var(--k-mint);
  background:rgba(59,240,176,.06);
}

.page-faq .faq-side__k{
  margin:6px 0 0;
  font-size:12px;
  letter-spacing:.06em;
  color:var(--k-muted);
}

.page-faq .faq-side__k:first-child{ margin-top:0; }

.page-faq .faq-side__v{
  margin:0;
  font-size:13px;
  word-break:break-all;
}

.page-faq .faq-side__note{
  margin:0;
  font-size:13px;
  line-height:1.7;
  color:var(--k-muted);
}

.page-faq .faq-side__cta{
  display:block;
  padding:11px 14px;
  background:var(--k-mint);
  color:var(--k-black);
  text-align:center;
  text-decoration:none;
  font-family:var(--k-font-display);
  font-weight:700;
  font-size:15px;
  letter-spacing:-.01em;
  border:2px solid var(--k-black);
  box-shadow:var(--k-shadow-1);
  transition:transform .18s var(--k-ease),box-shadow .18s var(--k-ease);
}

.page-faq .faq-side__cta:hover{
  transform:translateY(-2px);
  box-shadow:var(--k-shadow-2);
}

.page-faq .faq-side__cta:focus-visible{
  outline:2px solid var(--k-mint);
  outline-offset:3px;
}

.page-faq .faq-side__link{
  display:block;
  text-align:center;
  font-size:13px;
  color:var(--k-blue);
  text-decoration:none;
  border-bottom:1px solid rgba(127,211,232,.4);
  padding-bottom:2px;
  justify-self:center;
}

.page-faq .faq-side__link:hover{
  border-bottom-color:var(--k-blue);
}

.page-faq .faq-side__link:focus-visible{
  outline:2px solid var(--k-mint);
  outline-offset:3px;
}

@media (min-width:520px){
  .page-faq .faq-jump{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .page-faq .faq-sec__lede{
    font-size:16px;
  }
}

@media (min-width:720px){
  .page-faq .faq-body{
    grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);
    gap:clamp(18px,3vw,28px);
    align-items:start;
  }
  .page-faq .faq-body--single{
    grid-template-columns:minmax(0,1fr);
  }
  .page-faq .faq-fig--side{
    width:min(340px,52%);
    margin-left:auto;
    margin-top:8px;
  }
  .page-faq .faq-sec:nth-child(even){
    margin-left:clamp(0px,1.6vw,18px);
  }
}

@media (min-width:1000px){
  .page-faq .faq-jump{
    grid-template-columns:repeat(6,minmax(0,1fr));
  }
  .page-faq .faq-shell{
    grid-template-columns:minmax(0,1fr) 300px;
    align-items:start;
  }
  .page-faq .faq-side{
    position:sticky;
    top:20px;
  }
}

@media (prefers-reduced-motion:reduce){
  .page-faq .faq-jump__a,
  .page-faq .faq-item summary,
  .page-faq .faq-tri,
  .page-faq .faq-side__cta{
    transition:none;
  }
  .page-faq .faq-jump__a:hover,
  .page-faq .faq-item summary:hover,
  .page-faq .faq-side__cta:hover{
    transform:none;
  }
}
<<<END>>>
