/*
 * FAQ page (/faq/): a narrow column of intro text and an accordion under a
 * rule, then .yb-cta-split, a big photo beside a yellow call-to-action card.
 *
 *   <section class="yb-cta-split yb-container">
 *     <img class="yb-cta-split__photo" …>
 *     <div class="yb-cta-split__card">
 *       <div class="yb-cta-split__top"><p class="yb-tag">…</p><span class="yb-icon yb-icon--asterisk"></span></div>
 *       <h2>…</h2>
 *       <p><a class="yb-button" href="…">…</a></p>
 *     </div>
 *   </section>
 */
.yb-faq {
  max-width: calc(var(--yb-width-content) + 2 * var(--yb-gutter));
  margin-bottom: 110px;
}

.yb-faq::before {
  content: "";
  display: block;
  margin-bottom: 60px;
  border-top: 1px solid var(--yb-color-border);
}

.yb-faq > p,
.yb-faq > .yb-accordion {
  max-width: 630px;
  margin-inline: auto;
}

.yb-faq > p {
  margin-block: 0 12px;
  font-size: 15px;
  line-height: 1.5;
}

.yb-faq summary {
  font-size: 17px;
}

/* The page title wraps onto two lines like the old page's. */
.yb-page-hero:has(+ .yb-faq) h1 {
  max-width: 560px;
}

.yb-faq > .yb-accordion {
  margin-top: 30px;
}

.yb-cta-split {
  display: grid;
  grid-template-columns: 747fr 373fr;
  gap: 20px;
  margin-bottom: 110px;
}

.yb-cta-split__photo {
  width: 100%;
  height: 100%;
  min-height: 780px;
  border-radius: var(--yb-radius-panel);
  object-fit: cover;
}

.yb-cta-split__card {
  display: flex;
  flex-direction: column;
  padding: 30px;
  border-radius: var(--yb-radius-panel);
  background: var(--yb-color-accent);
}

.yb-cta-split__top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  margin-bottom: 25px;
}

.yb-cta-split__top .yb-tag {
  font-size: 9px;
}

.yb-cta-split__top .yb-icon {
  margin: 0 10px 0 0;
  color: var(--yb-color-primary);
  font-size: 26px;
}

.yb-cta-split__card h2 {
  margin: 0;
  color: var(--yb-color-primary);
  font-size: 46px;
  font-weight: 400;
  line-height: 1.25;
  letter-spacing: 0;
}

.yb-cta-split__card > p:last-child {
  margin: auto 0 0;
  padding-top: 30px;
}

@media (max-width: 1024px) {
  .yb-cta-split {
    grid-template-columns: 1fr 1fr;
  }

  /* Tablet, as live: the photo is as tall as the card (about 400 px). */
  .yb-faq,
  .yb-cta-split {
    margin-bottom: 60px;
  }

  .yb-cta-split__photo {
    min-height: 400px;
  }

  .yb-cta-split__card h2 {
    font-size: 34px;
  }

  .yb-cta-split__card > p:last-child {
    padding-top: 40px;
  }
}

@media (max-width: 767px) {
  .yb-faq::before {
    margin-bottom: 40px;
  }

  .yb-cta-split {
    grid-template-columns: 1fr;
  }

  .yb-cta-split__photo {
    min-height: 0;
    aspect-ratio: 1;
  }

  .yb-cta-split__card {
    min-height: 420px;
  }
}
