.faq-hero{
  padding-block:var(--vm-space-5) var(--vm-space-6);
  background:var(--vm-white);
  color:var(--vm-ink);
}

.faq-hero-copy{
  max-width:920px;
  margin-inline:auto;
}

.faq-hero-copy .c-kicker{
  align-self:center;
}

.faq-hero-copy h1{
  max-width:900px;
  margin:var(--vm-space-1) auto 0;
  font-size:clamp(2.25rem,4.5vw,3.75rem);
  line-height:1.16;
}

.faq-hero-lead{
  max-width:760px;
  margin:var(--vm-space-2) auto 0;
  color:var(--vm-muted);
  font-size:var(--vm-text-lg);
}

.faq-hero-actions{
  display:flex;
  flex-wrap:wrap;
}

.faq-hero-copy.vm-center .faq-hero-actions{
  justify-content:center;
  gap:var(--vm-space-1);
  margin-top:var(--vm-space-3);
}

.faq-answer-map{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  margin-top:var(--vm-space-5);
  border-radius:var(--vm-radius-lg);
  overflow:hidden;
  background:var(--vm-ink);
  color:var(--vm-white);
  box-shadow:var(--vm-shadow);
}

.faq-answer-map-item{
  min-width:0;
  display:flex;
  align-items:center;
  gap:var(--vm-space-2);
  padding:var(--vm-space-3);
  border-right:1px solid var(--vm-line-dark);
}

.faq-answer-map-item:last-child{
  border-right:0;
}

.faq-answer-map-item strong{
  flex:none;
  color:var(--vm-acid);
  font-size:clamp(1.8rem,4cqi,2.7rem);
  line-height:1;
  font-variant-numeric:tabular-nums;
}

.faq-answer-map-item span{
  min-width:0;
  display:grid;
  gap:.4rem;
  color:var(--vm-white);
  font-family:var(--vm-heading);
  font-weight:750;
  line-height:1.3;
  overflow-wrap:anywhere;
}

.faq-answer-map-item small{
  color:#b7cdd1;
  font-family:var(--vm-body);
  font-weight:500;
}

.faq-section{
  color:var(--vm-ink);
}

.faq-heading-stack{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:var(--vm-space-1);
  min-width:0;
}

.faq-heading-stack .c-kicker{
  width:fit-content;
  max-width:100%;
  align-self:flex-start;
}

.qa-list{
  background:var(--vm-white);
  color:var(--vm-ink);
}

.qa-list details{
  background:var(--vm-white);
  color:var(--vm-ink);
}

.qa-list details > div{
  padding-top:var(--vm-space-2);
  border-top:1px solid var(--vm-line);
  color:var(--vm-muted);
}

.qa-list details > div p{
  max-width:84ch;
  color:inherit;
}

.faq-section-ice{
  background:var(--vm-ice);
  color:var(--vm-ink);
}

.faq-section-ice .c-section-head p{
  color:var(--vm-muted);
}

.faq-section-ice .qa-list,
.faq-section-ice .qa-list details{
  background:var(--vm-ice);
  color:var(--vm-ink);
}

.faq-section-ice .qa-list details > div{
  border-color:var(--vm-line);
  color:var(--vm-muted);
}

.faq-billing-layout{
  display:grid;
  grid-template-columns:minmax(0,1.55fr) minmax(280px,.75fr);
  gap:var(--vm-space-4);
  align-items:stretch;
}

.faq-price-note{
  min-width:0;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  padding:var(--vm-space-4);
  border-radius:var(--vm-radius-md);
  background:var(--vm-acid);
  color:var(--vm-ink);
}

.faq-price-note .c-badge{
  width:fit-content;
  max-width:100%;
  align-self:flex-start;
}

.faq-price-note h3{
  margin-top:var(--vm-space-2);
  color:var(--vm-ink);
}

.faq-price-note p{
  margin-top:var(--vm-space-1);
  color:var(--vm-ink-2);
}

.faq-price-note .c-keyrows{
  width:100%;
}

.faq-price-note .c-keyrow{
  border-color:color-mix(in srgb,var(--vm-ink) 16%,transparent);
}

.faq-card-action{
  width:100%;
  margin-top:var(--vm-space-3);
}

.faq-region-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr));
  gap:var(--vm-space-3);
  align-items:start;
}

.faq-region-card{
  min-width:0;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:var(--vm-space-1);
  padding:var(--vm-space-3);
  border-radius:var(--vm-radius-md);
  background:var(--vm-ice);
  color:var(--vm-ink);
}

.faq-region-code{
  width:fit-content;
  max-width:100%;
  align-self:flex-start;
  padding:.45rem .7rem;
  border-radius:999px;
  background:var(--vm-acid);
  color:var(--vm-ink);
  font-size:var(--vm-text-xs);
  font-weight:800;
  line-height:1;
}

.faq-region-card h3{
  color:var(--vm-ink);
}

.faq-region-card p{
  color:var(--vm-muted);
}

.faq-followup-list{
  margin-top:var(--vm-space-4);
}

.faq-payment-section{
  background:var(--vm-ink);
  color:var(--vm-white);
}

.faq-section-head-dark h2{
  color:var(--vm-white);
}

.faq-section-head-dark p{
  color:#b7cdd1;
}

.faq-kicker-dark,
.faq-badge-dark{
  background:var(--vm-acid);
  color:var(--vm-ink);
}

.faq-kicker-dark::before{
  background:var(--vm-ink);
}

.faq-payment-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:var(--vm-space-3);
  align-items:start;
  margin-bottom:var(--vm-space-4);
}

.faq-payment-card{
  min-width:0;
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:var(--vm-space-2);
  padding:var(--vm-space-3);
  border-radius:var(--vm-radius-md);
  background:var(--vm-ink-2);
  color:var(--vm-white);
}

.faq-payment-card > svg{
  width:1.5rem;
  height:1.5rem;
  color:var(--vm-acid);
}

.faq-payment-card > div{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:var(--vm-space-1);
}

.faq-payment-card h3{
  color:var(--vm-white);
}

.faq-payment-card p{
  color:#b7cdd1;
}

.qa-list-dark{
  background:var(--vm-ink);
  color:var(--vm-white);
}

.qa-list-dark details{
  border-color:var(--vm-line-dark);
  background:var(--vm-ink);
  color:var(--vm-white);
}

.qa-list-dark details:last-child{
  border-color:var(--vm-line-dark);
}

.qa-list-dark summary{
  color:var(--vm-white);
}

.qa-list-dark summary::after{
  border-color:var(--vm-acid);
}

.qa-list-dark details > div{
  border-color:var(--vm-line-dark);
  color:#b7cdd1;
}

.faq-connection-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:var(--vm-space-3);
  align-items:start;
}

.faq-connection-card{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}

.faq-card-icon{
  width:2rem;
  height:2rem;
  margin-bottom:var(--vm-space-2);
  color:var(--vm-lime-paper);
}

.c-card-dark .faq-card-icon{
  color:var(--vm-acid);
}

.faq-connection-card .c-badge{
  width:fit-content;
  max-width:100%;
  align-self:flex-start;
}

.faq-connection-card h3{
  margin-top:var(--vm-space-2);
}

.faq-connection-card p{
  margin-top:var(--vm-space-1);
  color:var(--vm-muted);
}

.faq-connection-card ul{
  margin:var(--vm-space-2) 0 0;
  padding-left:1.2rem;
}

.faq-connection-card li + li{
  margin-top:var(--vm-space-1);
}

.c-card-dark.faq-connection-card{
  background:var(--vm-ink);
  color:var(--vm-white);
}

.c-card-dark.faq-connection-card h3{
  color:var(--vm-white);
}

.c-card-dark.faq-connection-card p,
.c-card-dark.faq-connection-card li{
  color:#b7cdd1;
}

.faq-connection-note{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:var(--vm-space-2);
  margin-top:var(--vm-space-4);
  padding:var(--vm-space-3);
  border-radius:var(--vm-radius-md);
  background:var(--vm-ice);
  color:var(--vm-ink);
}

.faq-connection-note svg{
  width:1.25rem;
  height:1.25rem;
  margin-top:.2rem;
  color:var(--vm-lime-paper);
}

.faq-connection-note p{
  color:var(--vm-ink-2);
}

.faq-security-steps{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:var(--vm-space-3);
  align-items:start;
}

.faq-security-step{
  min-width:0;
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:var(--vm-space-2);
  padding:var(--vm-space-3);
  border-radius:var(--vm-radius-md);
  background:var(--vm-ice);
  color:var(--vm-ink);
}

.faq-step-index{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:2.5rem;
  height:2.5rem;
  border-radius:50%;
  background:var(--vm-acid);
  color:var(--vm-ink);
  font-size:var(--vm-text-xs);
  font-weight:800;
  line-height:1;
}

.faq-security-step > div{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:var(--vm-space-1);
}

.faq-security-step h3{
  color:var(--vm-ink);
}

.faq-security-step p{
  color:var(--vm-muted);
}

.faq-glossary-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:var(--vm-space-3);
  margin:0;
}

.faq-glossary-item{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:var(--vm-space-1);
  padding:var(--vm-space-3);
  border-radius:var(--vm-radius-md);
  background:var(--vm-white);
  color:var(--vm-ink);
}

.faq-glossary-item dt{
  color:var(--vm-ink);
  font-family:var(--vm-heading);
  font-size:var(--vm-text-lg);
  letter-spacing:-.02em;
}

.faq-glossary-item dd{
  color:var(--vm-muted);
  font-size:var(--vm-text-md);
  line-height:var(--vm-leading-copy);
}

.faq-close-section{
  padding-top:var(--vm-space-5);
  padding-bottom:var(--vm-space-4);
  background:var(--vm-white);
  color:var(--vm-ink);
}

.faq-close-copy{
  min-width:0;
  max-width:700px;
}

.faq-close-copy .c-badge{
  width:fit-content;
  max-width:100%;
  align-self:flex-start;
}

.faq-close-copy h2{
  margin-top:var(--vm-space-2);
  color:var(--vm-white);
  font-size:clamp(1.8rem,3vw,2.7rem);
}

.faq-close-copy p{
  color:#b7cdd1;
}

.faq-close-actions{
  min-width:min(100%,240px);
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:var(--vm-space-1);
}

.faq-close-actions .c-btn{
  width:100%;
}

.faq-close-actions .c-btn-ghost{
  border-color:color-mix(in srgb,var(--vm-white) 38%,transparent);
  color:var(--vm-white);
}

.faq-close-actions .c-btn-ghost:hover{
  background:color-mix(in srgb,var(--vm-white) 10%,transparent);
}

@media(max-width:64rem){
  .faq-answer-map{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .faq-answer-map-item:nth-child(2){
    border-right:0;
  }

  .faq-answer-map-item:nth-child(-n+2){
    border-bottom:1px solid var(--vm-line-dark);
  }

  .faq-billing-layout{
    grid-template-columns:1fr;
  }

  .faq-price-note{
    padding:var(--vm-space-3);
  }
}

@media(max-width:44rem){
  .faq-hero{
    padding-block:var(--vm-space-4) var(--vm-space-5);
  }

  .faq-hero-copy h1{
    font-size:clamp(2.15rem,11vw,3.2rem);
  }

  .faq-hero-lead{
    font-size:var(--vm-text-md);
  }

  .faq-hero-actions{
    width:100%;
  }

  .faq-answer-map{
    grid-template-columns:1fr;
    margin-top:var(--vm-space-4);
  }

  .faq-answer-map-item,
  .faq-answer-map-item:nth-child(2){
    border-right:0;
    border-bottom:1px solid var(--vm-line-dark);
  }

  .faq-answer-map-item:last-child{
    border-bottom:0;
  }

  .faq-payment-grid,
  .faq-connection-grid,
  .faq-security-steps,
  .faq-glossary-grid{
    grid-template-columns:1fr;
  }

  .faq-payment-card,
  .faq-security-step{
    grid-template-columns:1fr;
  }

  .faq-payment-card > svg{
    margin-bottom:var(--vm-space-1);
  }

  .faq-step-index{
    margin-bottom:var(--vm-space-1);
  }

  .qa-list summary{
    padding-right:2rem;
  }

  .qa-list details > div{
    padding-right:0;
  }

  .faq-close-actions{
    width:100%;
    min-width:0;
  }
}

@media(max-width:24.375rem){
  .faq-region-card,
  .faq-payment-card,
  .faq-security-step,
  .faq-glossary-item{
    padding:var(--vm-space-2);
  }

  .faq-answer-map-item{
    align-items:flex-start;
    flex-direction:column;
  }
}
