/* v1.9.30 — capacity button and homepage Q&A only. */
.eko-booking .eko-spec-button {
  display: inline-flex; align-items: center; justify-content: center;
  min-height: 44px; padding: 6px 0; margin: -6px 0;
  border: 0; background: transparent; color: #dd141f;
  font-size: 12px !important; font-weight: 500; line-height: 1.5;
  cursor: pointer; -webkit-tap-highlight-color: transparent;
}
.eko-booking .eko-spec-button > span {
  display: block; padding: 4px 14px; border: 1px solid #dd141f;
  border-radius: 999px; background: #fff;
  transition: background-color .15s ease;
}
.eko-booking .eko-spec-button:active > span { background: #fff0f1; }
.eko-booking .eko-spec-button:focus-visible { outline: 2px solid #dd141f; outline-offset: 3px; }
@media (hover: hover) {
  .eko-booking .eko-spec-button:hover > span { background: #fff0f1; }
}

.eko-home #faq { padding: 44px 0 56px; }
.eko-home #faq .eko-faq-heading,
.eko-home #faq .eko-faq-list { max-width: 900px; margin-right: auto; margin-left: auto; }
.eko-home #faq .eko-faq-heading { margin-bottom: 24px; }
.eko-home #faq .eko-faq-heading h2 {
  margin: 0; font-size: 28px; font-weight: 700; line-height: 1.3;
  letter-spacing: normal; color: var(--primary-color, #dd141f); text-align: left;
}
.eko-home #faq .eko-faq-item { border-bottom: 1px solid #e8e8e8; }
.eko-home #faq .eko-faq-item:first-child { border-top: 1px solid #e8e8e8; }
.eko-home #faq .eko-faq-question { margin: 0; font: inherit; }
.eko-home #faq .eko-faq-toggle {
  width: 100%; min-height: 56px; display: flex; align-items: center; gap: 16px;
  justify-content: space-between; padding: 16px 0; border: 0; border-radius: 0;
  box-shadow: none; background: transparent; color: #25282d; font-family: inherit;
  font-size: 14px; font-weight: 600; line-height: 1.55; text-align: left;
  white-space: normal; cursor: pointer; -webkit-tap-highlight-color: transparent;
  transition: color .2s ease;
}
.eko-home #faq .eko-faq-toggle[aria-expanded="true"] { color: #dd141f; }
.eko-home #faq .eko-faq-toggle:focus-visible { outline: 2px solid #dd141f; outline-offset: 4px; }
.eko-home #faq .eko-faq-symbol {
  position: relative; display: block; flex: 0 0 20px; width: 20px; height: 20px;
  align-self: flex-start; margin-top: 1px; color: #dd141f;
}
.eko-home #faq .eko-faq-symbol::before,
.eko-home #faq .eko-faq-symbol::after {
  content: ""; position: absolute; left: 3px; top: 9px;
  width: 14px; height: 1.5px; border-radius: 1px; background: currentColor;
}
.eko-home #faq .eko-faq-symbol::after { transform: rotate(90deg); transition: transform .2s ease, opacity .2s ease; }
.eko-home #faq .eko-faq-toggle[aria-expanded="true"] .eko-faq-symbol::after { transform: rotate(0); opacity: 0; }
.eko-home #faq .eko-faq-answer {
  display: grid; grid-template-rows: 0fr; visibility: hidden;
  transition: grid-template-rows .2s ease, visibility .2s step-end;
}
.eko-home #faq .eko-faq-item.is-open .eko-faq-answer {
  grid-template-rows: 1fr; visibility: visible;
  transition: grid-template-rows .2s ease, visibility 0s;
}
.eko-home #faq .eko-faq-answer-inner { overflow: hidden; min-height: 0; }
.eko-home #faq .eko-faq-answer p {
  margin: 0; padding: 0 36px 18px 0; color: #62666d;
  font-size: 14px; font-weight: 400; line-height: 1.65;
}
@media (max-width: 991.98px) {
  .eko-home #faq { padding: 28px 20px 40px; }
  .eko-home #faq > .container { max-width: none; padding: 0; }
  .eko-home #faq .eko-faq-heading { margin-bottom: 20px; }
  .eko-home #faq .eko-faq-heading h2 { font-size: 22px; font-weight: 600; line-height: 1.35; }
}
@media (prefers-reduced-motion: reduce) {
  .eko-booking .eko-spec-button > span,
  .eko-home #faq .eko-faq-toggle,
  .eko-home #faq .eko-faq-symbol::after,
  .eko-home #faq .eko-faq-answer,
  .eko-home #faq .eko-faq-item.is-open .eko-faq-answer { transition: none; }
}
