/* ==============================================
   FAQ SECTION
   ============================================== */
.faq {
  padding: var(--section-spacing-desktop) 0;
}
.faq-wrapper {
  width: calc(100% - 48px);
  max-width: 1000px;
  margin: 0 auto;
}
.faq-eyebrow {
  display: flex;
  justify-content: center;
}
.faq-wrapper h2 {
  text-align: center;
  margin-bottom: 48px;
}
.faq-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.faq-item {
  background: white;
  border: 2px solid var(--border);
  border-radius: var(--radius-md);
  overflow: hidden;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.03);
  transition: all var(--transition);
}
.faq-item:hover {
  border-color: var(--brand-orange);
}
.faq-trigger {
  width: 100%;
  padding: 24px 28px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: none;
  border: none;
  cursor: pointer;
  font-size: 1.0625rem;
  font-weight: 600;
  color: var(--text);
  text-align: left;
  font-family: var(--font-primary);
  transition: all var(--transition);
}
.faq-trigger:hover {
  background-color: var(--brand-orange-tint);
  color: var(--brand-rust);
}
.faq-trigger:focus-visible {
  outline: 2px solid var(--brand-orange);
  outline-offset: -2px;
}
.faq-trigger i {
  color: var(--brand-orange);
  transition: transform var(--transition);
  flex-shrink: 0;
  font-size: 1.25rem;
  margin-left: 16px;
}
.faq-trigger[aria-expanded="true"] {
  background-color: rgba(243, 146, 1, 0.05);
}
.faq-trigger[aria-expanded="true"] i {
  transform: rotate(45deg);
}
.faq-content {
  /* Top padding so the answer clears the divider; jQuery animates the height, so no
       keyframe here — the two fought and produced the snap. */
  padding: 20px 28px 24px;
  background: transparent;
  border-top: 1px solid var(--border);
}
@keyframes slideDown {
  from {
    opacity: 0;
    max-height: 0;
  }
  to {
    opacity: 1;
    max-height: 500px;
  }
}
.faq-content p {
  margin: 0;
}
/* An answer can be a map. The old site pasted the embed straight into the accordion at
   whatever size the editor's iframe attribute happened to say, so it sat in the corner of
   an otherwise empty card with the padding showing all round it. Full width of the card it
   opens in, at the proportion the map block uses. */
.faq-content iframe {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 10;
  border: 0;
  border-radius: var(--radius-md);
}
@media (max-width: 768px) {
  .faq {
    padding: var(--section-spacing-mobile) 0;
  }
  .faq-wrapper h2 {
    margin-bottom: 32px;
  }
  .faq-trigger {
    padding: 20px 16px;
  }
}
/* The block renders a plain .eyebrow; the design centres it above the heading. */
.faq-wrapper > .eyebrow {
  display: block;
  text-align: center;
  margin-bottom: 10px;
}
/* Heading level is a field, so match any level rather than h2 alone. */
.faq-wrapper > :is(h2, h3, h4) {
  text-align: center;
  margin-bottom: 48px;
}
/* The intro now comes from the page's own copy above its questions, and belongs with the
   heading it was written under rather than ranged left beneath a centred one. Its box is
   already centred in utilities.less; this centres the lines inside it. */
.faq-wrapper > .section-intro {
  text-align: center;
  /* The 620px cap keeps a ranged-left intro to a readable measure under a heading that
       starts at the same edge. Centred under a centred heading the cap does the opposite:
       it draws a narrow column down the middle of a much wider block, and the intro stops
       looking like it belongs to the questions beneath it. */
  max-width: 100%;
}
/*# sourceMappingURL=style.css.map */
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3N0eWxlLmxlc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBSUE7RUFDSSxTQUFTLGdDQUFUOztBQUdKO0VBQ0ksT0FBTyxpQkFBUDtFQUNBLGlCQUFBO0VBQ0EsY0FBQTs7QUFHSjtFQUNJLGFBQUE7RUFDQSx1QkFBQTs7QUFHSixZQUFhO0VBQ1Qsa0JBQUE7RUFDQSxtQkFBQTs7QUFHSjtFQUNJLGFBQUE7RUFDQSxzQkFBQTtFQUNBLFNBQUE7O0FBR0o7RUFDSSxpQkFBQTtFQUNBLGtCQUFrQixhQUFsQjtFQUNBLGVBQWUsZ0JBQWY7RUFDQSxnQkFBQTtFQUNBLHlDQUFBO0VBQ0EsZ0JBQWdCLGlCQUFoQjs7QUFHSixTQUFTO0VBQ0wsY0FBYyxtQkFBZDs7QUFHSjtFQUNJLFdBQUE7RUFDQSxrQkFBQTtFQUNBLGFBQUE7RUFDQSw4QkFBQTtFQUNBLG1CQUFBO0VBQ0EsZ0JBQUE7RUFDQSxZQUFBO0VBQ0EsZUFBQTtFQUNBLG9CQUFBO0VBQ0EsZ0JBQUE7RUFDQSxPQUFPLFdBQVA7RUFDQSxnQkFBQTtFQUNBLGFBQWEsbUJBQWI7RUFDQSxnQkFBZ0IsaUJBQWhCOztBQUdKLFlBQVk7RUFDUixrQkFBa0Isd0JBQWxCO0VBQ0EsT0FBTyxpQkFBUDs7QUFHSixZQUFZO0VBQ1IsbUJBQW1CLG1CQUFuQjtFQUNBLG9CQUFBOztBQUdKLFlBQWE7RUFDVCxPQUFPLG1CQUFQO0VBQ0Esc0JBQXNCLGlCQUF0QjtFQUNBLGNBQUE7RUFDQSxrQkFBQTtFQUNBLGlCQUFBOztBQUdKLFlBQVk7RUFDUix5Q0FBQTs7QUFHSixZQUFZLHNCQUF1QjtFQUMvQixXQUFXLGFBQVg7O0FBR0o7OztFQUdJLHVCQUFBO0VBQ0EsdUJBQUE7RUFDQSxzQkFBc0IsYUFBdEI7O0FBR0o7RUFDSTtJQUFPLFVBQUE7SUFBWSxhQUFBOztFQUNuQjtJQUFLLFVBQUE7SUFBWSxpQkFBQTs7O0FBR3JCLFlBQWE7RUFDVCxTQUFBOzs7Ozs7QUFPSixZQUFhO0VBQ1QsY0FBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0VBQ0EscUJBQUE7RUFDQSxTQUFBO0VBQ0EsZUFBZSxnQkFBZjs7QUFHSixRQUEwQjtFQUN0QjtJQUFPLFNBQVMsK0JBQVQ7O0VBQ1AsWUFBYTtJQUFLLG1CQUFBOztFQUNsQjtJQUFlLGtCQUFBOzs7O0FBSW5CLFlBQWE7RUFDVCxjQUFBO0VBQ0Esa0JBQUE7RUFDQSxtQkFBQTs7O0FBSUosWUFBYSxNQUFLO0VBQ2Qsa0JBQUE7RUFDQSxtQkFBQTs7Ozs7QUFNSixZQUFhO0VBQ1Qsa0JBQUE7Ozs7O0VBTUEsZUFBQSIsImZpbGUiOiJmYXEvc3R5bGUuY3NzIiwic291cmNlc0NvbnRlbnQiOltdfQ== */
