.alx-faq-page {
  background: var(--alx-white);
  padding: clamp(24px, 3.2vw, 43px) 0 0;
}

.alx-faq-container {
  width: min(calc(100% - clamp(42px, 13vw, 248px)), 1660px);
  margin-inline: auto;
}

.alx-faq-breadcrumb {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 20px;
  color: #a3a3a3;
  font-family: "Bebas Neue", "Plus Jakarta Sans", sans-serif;
  font-size: 10px;
  letter-spacing: .052em;
  line-height: 1;
  text-transform: uppercase;
}

.alx-faq-breadcrumb a {
  position: relative;
  color: #8e8e8e;
  transition: color var(--alx-fast);
}

.alx-faq-breadcrumb a::after {
  position: absolute;
  right: 0;
  bottom: -2px;
  left: 0;
  height: 1px;
  background: currentColor;
  opacity: .6;
  content: "";
}

.alx-faq-breadcrumb a:hover,
.alx-faq-breadcrumb a:focus-visible { color: var(--alx-black); }

.alx-faq-hero h1 {
  margin: 0;
  color: var(--alx-black);
  font-family: "Bebas Neue", "Plus Jakarta Sans", sans-serif;
  font-size: clamp(58px, 5.15vw, 82px);
  font-weight: 400;
  letter-spacing: -.01em;
  line-height: .9;
}

.alx-faq-layout {
  display: grid;
  grid-template-columns: minmax(260px, 315px) minmax(0, 1fr);
  gap: clamp(118px, 18.3vw, 348px);
  margin-top: clamp(64px, 6.6vw, 88px);
}

.alx-faq-prompt {
  position: sticky;
  top: calc(var(--alx-alert-h) + var(--alx-header-h) + 28px);
  align-self: start;
}

.alx-faq-prompt h2 {
  max-width: 300px;
  margin: 0;
  color: var(--alx-black);
  font-family: "Bebas Neue", "Plus Jakarta Sans", sans-serif;
  font-size: clamp(26px, 2.02vw, 34px);
  font-weight: 400;
  letter-spacing: -.015em;
  line-height: .92;
  text-transform: uppercase;
}

.alx-faq-prompt p {
  margin: 15px 0 0;
  color: #6a6a6a;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.55;
}

.alx-faq-groups {
  display: grid;
  gap: clamp(56px, 5.05vw, 70px);
}

.alx-faq-group h2 {
  margin: 0 0 23px;
  color: var(--alx-black);
  font-family: "Bebas Neue", "Plus Jakarta Sans", sans-serif;
  font-size: clamp(29px, 2.3vw, 40px);
  font-weight: 400;
  letter-spacing: -.012em;
  line-height: 1;
  text-transform: uppercase;
}

.alx-faq-item {
  border-top: 1px solid #dedede;
}

.alx-faq-item:last-child { border-bottom: 1px solid #dedede; }

.alx-faq-question {
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr);
  align-items: center;
  gap: 22px;
  width: 100%;
  min-height: 59px;
  padding: 0;
  border: 0;
  color: var(--alx-black);
  background: transparent;
  font-family: "Bebas Neue", "Plus Jakarta Sans", sans-serif;
  font-size: 14px;
  font-weight: 400;
  letter-spacing: .012em;
  line-height: 1;
  text-align: left;
  text-transform: uppercase;
  cursor: pointer;
}

.alx-faq-question span:last-child {
  padding-top: 2px;
}

.alx-faq-toggle {
  position: relative;
  display: inline-grid;
  place-items: center;
  width: 14px;
  height: 14px;
  border: 1px solid #cfcfcf;
  border-radius: 50%;
  background: #fafafa;
  transition: background var(--alx-fast), border-color var(--alx-fast), transform var(--alx-fast);
}

.alx-faq-toggle::before,
.alx-faq-toggle::after {
  position: absolute;
  width: 5px;
  height: 1.5px;
  border-radius: 999px;
  background: #8c8c8c;
  content: "";
  transition: background var(--alx-fast), transform var(--alx-fast);
}

.alx-faq-toggle::after { transform: rotate(90deg); }

.alx-faq-item.is-open .alx-faq-toggle {
  border-color: #5a5199;
  background: #5a5199;
}

.alx-faq-item.is-open .alx-faq-toggle::before,
.alx-faq-item.is-open .alx-faq-toggle::after { background: var(--alx-white); }
.alx-faq-item.is-open .alx-faq-toggle::after { transform: rotate(0deg); }

.alx-faq-question:hover .alx-faq-toggle,
.alx-faq-question:focus-visible .alx-faq-toggle { transform: scale(1.08); }

.alx-faq-answer {
  padding: 0 0 23px 40px;
  color: #5f5f5f;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.78;
}

.alx-faq-answer p {
  max-width: 980px;
  margin: 0;
}

.alx-faq-divider {
  height: 8px;
  margin-top: clamp(96px, 9vw, 130px);
  background: #f3f3f3;
}

.alx-support-section {
  margin-top: clamp(61px, 5.8vw, 82px);
  text-align: center;
}

.alx-support-section h2 {
  margin: 0 0 clamp(39px, 4.1vw, 60px);
  color: var(--alx-black);
  font-family: "Bebas Neue", "Plus Jakarta Sans", sans-serif;
  font-size: clamp(54px, 5.25vw, 82px);
  font-weight: 400;
  letter-spacing: -.012em;
  line-height: .92;
  text-transform: uppercase;
}

.alx-support-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  min-height: 157px;
}

.alx-support-card {
  display: grid;
  justify-items: center;
  align-content: start;
  padding: 0 clamp(24px, 4.8vw, 70px);
  color: #4f4f4f;
}

.alx-support-card + .alx-support-card {
  border-left: 1px solid #dedede;
}

.alx-support-card i {
  margin-bottom: 22px;
  color: var(--alx-black);
  font-size: 44px;
  font-weight: 400;
  line-height: 1;
}

.alx-support-card h3 {
  margin: 0;
  color: var(--alx-black);
  font-family: "Bebas Neue", "Plus Jakarta Sans", sans-serif;
  font-size: clamp(29px, 2.35vw, 38px);
  font-weight: 400;
  letter-spacing: -.01em;
  line-height: 1;
  text-transform: uppercase;
}

.alx-support-card p,
.alx-support-card a,
.alx-support-card span {
  margin: 15px 0 0;
  color: #737373;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.7;
}

.alx-support-card a {
  max-width: 420px;
  transition: color var(--alx-fast);
}

.alx-support-card a:hover,
.alx-support-card a:focus-visible { color: var(--alx-black); }

.alx-newsletter--faq {
  margin-top: clamp(76px, 7.8vw, 104px);
  margin-bottom: 17px;
  min-height: clamp(248px, 26.4vw, 318px);
}

.alx-newsletter--faq h2 {
  font-size: clamp(52px, 5.08vw, 76px);
}

@media (max-width: 1280px) {
  .alx-faq-layout {
    grid-template-columns: minmax(248px, 300px) minmax(0, 1fr);
    gap: clamp(70px, 8.8vw, 118px);
  }
}

@media (max-width: 940px) {
  .alx-faq-container {
    width: min(calc(100% - 42px), 760px);
  }

  .alx-faq-layout {
    grid-template-columns: 1fr;
    gap: 42px;
    margin-top: 52px;
  }

  .alx-faq-prompt {
    position: static;
  }

  .alx-faq-prompt h2 { max-width: 520px; }

  .alx-support-grid {
    grid-template-columns: 1fr;
    gap: 34px;
  }

  .alx-support-card + .alx-support-card {
    padding-top: 34px;
    border-top: 1px solid #dedede;
    border-left: 0;
  }
}

@media (max-width: 620px) {
  .alx-faq-page { padding-top: 22px; }

  .alx-faq-hero h1 { font-size: 58px; }

  .alx-faq-breadcrumb { margin-bottom: 16px; }

  .alx-faq-question {
    gap: 14px;
    min-height: 56px;
    font-size: 13px;
  }

  .alx-faq-answer {
    padding-left: 32px;
    font-size: 11px;
  }

  .alx-faq-groups { gap: 45px; }

  .alx-faq-divider { margin-top: 70px; }

  .alx-support-section h2 { font-size: 54px; }

  .alx-newsletter--faq {
    min-height: 228px;
    margin-top: 58px;
  }
}

/* FAQ typography refinements */
.alx-faq-breadcrumb {
  font-size: 13px;
  letter-spacing: .055em;
}

.alx-faq-hero h1 {
  font-size: clamp(72px, 6.6vw, 112px);
  line-height: .86;
}

.alx-faq-prompt h2 {
  max-width: 430px;
  font-size: clamp(38px, 3.25vw, 56px);
  line-height: .9;
}

.alx-faq-prompt p {
  margin-top: 20px;
  font-size: 16px;
  line-height: 1.55;
}

.alx-faq-group h2 {
  margin-bottom: 31px;
  font-size: clamp(42px, 3.55vw, 58px);
}

.alx-faq-question {
  grid-template-columns: 24px minmax(0, 1fr);
  gap: 26px;
  min-height: 76px;
  font-size: 19px;
  letter-spacing: .01em;
}

.alx-faq-toggle {
  width: 18px;
  height: 18px;
}

.alx-faq-toggle::before,
.alx-faq-toggle::after {
  width: 7px;
  height: 2px;
}

.alx-faq-answer {
  padding: 0 0 31px 50px;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.72;
}

.alx-faq-answer p {
  max-width: 1120px;
}

.alx-support-card p,
.alx-support-card a,
.alx-support-card span {
  font-size: 15px;
}

@media (max-width: 620px) {
  .alx-faq-breadcrumb { font-size: 11px; }
  .alx-faq-hero h1 { font-size: 64px; }
  .alx-faq-prompt h2 { font-size: 34px; }
  .alx-faq-prompt p { font-size: 14px; }
  .alx-faq-group h2 { font-size: 38px; }
  .alx-faq-question {
    grid-template-columns: 20px minmax(0, 1fr);
    gap: 14px;
    min-height: 64px;
    font-size: 16px;
  }
  .alx-faq-toggle {
    width: 16px;
    height: 16px;
  }
  .alx-faq-answer {
    padding-left: 34px;
    font-size: 14px;
  }
  .alx-support-card p,
  .alx-support-card a,
  .alx-support-card span { font-size: 13px; }
}

/* Requested FAQ typography increase */
.alx-faq-breadcrumb {
  font-size: 15px;
}

.alx-faq-hero h1 {
  font-size: clamp(82px, 7.2vw, 126px);
}

.alx-faq-prompt h2 {
  max-width: 500px;
  font-size: clamp(44px, 3.65vw, 66px);
}

.alx-faq-prompt p {
  font-size: 18px;
}

.alx-faq-group h2 {
  font-size: clamp(50px, 4.05vw, 70px);
}

.alx-faq-question {
  grid-template-columns: 26px minmax(0, 1fr);
  min-height: 84px;
  font-size: 22px;
}

.alx-faq-toggle {
  width: 20px;
  height: 20px;
}

.alx-faq-answer {
  padding-left: 54px;
  font-size: 18px;
  line-height: 1.72;
}

.alx-support-card p,
.alx-support-card a,
.alx-support-card span {
  font-size: 17px;
}

@media (max-width: 620px) {
  .alx-faq-breadcrumb { font-size: 12px; }
  .alx-faq-hero h1 { font-size: 70px; }
  .alx-faq-prompt h2 { font-size: 38px; }
  .alx-faq-prompt p { font-size: 15px; }
  .alx-faq-group h2 { font-size: 42px; }
  .alx-faq-question {
    min-height: 70px;
    font-size: 18px;
  }
  .alx-faq-answer {
    padding-left: 34px;
    font-size: 15px;
  }
  .alx-support-card p,
  .alx-support-card a,
  .alx-support-card span { font-size: 14px; }
}

/* Final FAQ sizing requested */
@media (min-width: 941px) {
  .alx-faq-layout {
    grid-template-columns: minmax(460px, 415px) minmax(0, 1fr);
    gap: clamp(88px, 7.8vw, 150px);
  }
}

.alx-faq-breadcrumb { font-size: 16px; }
.alx-faq-hero h1 { font-size: clamp(90px, 7.8vw, 138px); }
.alx-faq-prompt h2 { font-size: clamp(48px, 3.95vw, 74px); }
.alx-faq-prompt p { font-size: 19px; }
.alx-faq-group h2 { font-size: clamp(54px, 4.35vw, 78px); }
.alx-faq-question { font-size: 24px; min-height: 90px; }
.alx-faq-answer { font-size: 19px; line-height: 1.74; }
.alx-support-section { margin-bottom: 40px; }
.alx-support-card p,
.alx-support-card a,
.alx-support-card span { font-size: 18px; }

@media (max-width: 620px) {
  .alx-faq-question { font-size: 19px; }
  .alx-faq-answer { font-size: 16px; }
}

/* Requested color correction */
.alx-faq-prompt h2,
#alx-faq-prompt-title {
  color: #050505 !important;
}

/* v1.3.2 FAQ column, color, and accordion icon refinements */
.alx-faq-prompt h2,
#alx-faq-prompt-title {
  color: #050505 !important;
  max-width: 100% !important;
}

@media (min-width: 941px) {
  .alx-faq-layout {
    grid-template-columns: minmax(440px, 540px) minmax(0, 1fr) !important;
    gap: clamp(70px, 7vw, 132px) !important;
  }
}

.alx-faq-toggle {
  width: 28px !important;
  height: 28px !important;
  border-width: 2px !important;
  flex: 0 0 28px !important;
}

.alx-faq-toggle::before,
.alx-faq-toggle::after {
  width: 11px !important;
  height: 2px !important;
}


/* v1.4.1 FAQ prompt title split and hard black color */
.alx-faq-prompt-kicker {
  margin: 0 0 12px;
  color: #050505 !important;
  background: none !important;
  -webkit-background-clip: border-box !important;
  background-clip: border-box !important;
  -webkit-text-fill-color: #050505 !important;
  font-family: "Bebas Neue", "Plus Jakarta Sans", sans-serif;
  font-size: clamp(18px, 1.35vw, 26px) !important;
  font-weight: 400;
  letter-spacing: .10em;
  line-height: 1;
  text-transform: uppercase;
}
.alx-faq-prompt h2,
#alx-faq-prompt-title {
  color: #050505 !important;
  background: none !important;
  -webkit-background-clip: border-box !important;
  background-clip: border-box !important;
  -webkit-text-fill-color: #050505 !important;
}
.alx-faq-prompt p:not(.alx-faq-prompt-kicker) {
  color: #6a6a6a !important;
  background: none !important;
  -webkit-text-fill-color: #6a6a6a !important;
}
