/* FAQs */

.program-faq-wrap {
  margin-bottom: 45px;
}

.srec_pc_wrap.pdop_program_category_wrapper {
  margin-bottom: 2vw;
}

.program_faq_section .accordion {
  --bs-accordion-btn-icon: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="34" height="34" viewBox="0 0 34 34" fill="none"><mask id="mask0_4349_56785" style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="34" height="34"><rect width="34" height="34" fill="%23D9D9D9"/></mask><g mask="url(%23mask0_4349_56785)"><path d="M15.9375 23.7305H18.0625V18.0638H23.7292V15.9388H18.0625V10.2721H15.9375V15.9388H10.2708V18.0638H15.9375V23.7305ZM17.0025 30.4596C15.141 30.4596 13.3913 30.1064 11.7534 29.4C10.1155 28.6935 8.69077 27.7348 7.47928 26.5238C6.2678 25.3128 5.30859 23.8887 4.60168 22.2515C3.895 20.6143 3.54166 18.865 3.54166 17.0038C3.54166 15.1423 3.89488 13.3926 4.60132 11.7547C5.30777 10.1168 6.2665 8.69208 7.47751 7.48059C8.68852 6.26911 10.1126 5.30991 11.7498 4.60299C13.387 3.89631 15.1362 3.54297 16.9975 3.54297C18.859 3.54297 20.6087 3.89619 22.2466 4.60263C23.8845 5.30908 25.3092 6.26781 26.5207 7.47882C27.7322 8.68984 28.6914 10.1139 29.3983 11.7511C30.105 13.3883 30.4583 15.1376 30.4583 16.9988C30.4583 18.8603 30.1051 20.61 29.3987 22.2479C28.6922 23.8858 27.7335 25.3105 26.5225 26.522C25.3115 27.7335 23.8874 28.6927 22.2502 29.3996C20.613 30.1063 18.8637 30.4596 17.0025 30.4596ZM17 28.3346C20.1639 28.3346 22.8437 27.2367 25.0396 25.0409C27.2354 22.8451 28.3333 20.1652 28.3333 17.0013C28.3333 13.8374 27.2354 11.1576 25.0396 8.96172C22.8437 6.76589 20.1639 5.66797 17 5.66797C13.8361 5.66797 11.1562 6.76589 8.96041 8.96172C6.76457 11.1576 5.66666 13.8374 5.66666 17.0013C5.66666 20.1652 6.76457 22.8451 8.96041 25.0409C11.1562 27.2367 13.8361 28.3346 17 28.3346Z" fill="%23009AD0"/></g></svg>');
  --bs-accordion-btn-active-icon: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="34" height="34" viewBox="0 0 34 34" fill="none"><mask id="mask0_4349_56805" style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="34" height="34"><rect width="34" height="34" fill="%23D9D9D9"/></mask><g mask="url(%23mask0_4349_56805)"><path d="M10.2708 18.0638H23.7292V15.9388H10.2708V18.0638ZM17.0025 30.4596C15.141 30.4596 13.3913 30.1064 11.7534 29.4C10.1155 28.6935 8.69077 27.7348 7.47928 26.5238C6.2678 25.3128 5.30859 23.8887 4.60168 22.2515C3.895 20.6143 3.54166 18.865 3.54166 17.0038C3.54166 15.1423 3.89488 13.3926 4.60132 11.7547C5.30777 10.1168 6.2665 8.69208 7.47751 7.48059C8.68852 6.26911 10.1126 5.30991 11.7498 4.60299C13.387 3.89631 15.1362 3.54297 16.9975 3.54297C18.859 3.54297 20.6087 3.89619 22.2466 4.60263C23.8845 5.30908 25.3092 6.26781 26.5207 7.47882C27.7322 8.68984 28.6914 10.1139 29.3983 11.7511C30.105 13.3883 30.4583 15.1376 30.4583 16.9988C30.4583 18.8603 30.1051 20.61 29.3987 22.2479C28.6922 23.8858 27.7335 25.3105 26.5225 26.522C25.3115 27.7335 23.8874 28.6927 22.2502 29.3996C20.613 30.1063 18.8637 30.4596 17.0025 30.4596ZM17 28.3346C20.1639 28.3346 22.8437 27.2367 25.0396 25.0409C27.2354 22.8451 28.3333 20.1652 28.3333 17.0013C28.3333 13.8374 27.2354 11.1576 25.0396 8.96172C22.8437 6.76589 20.1639 5.66797 17 5.66797C13.8361 5.66797 11.1562 6.76589 8.96041 8.96172C6.76457 11.1576 5.66666 13.8374 5.66666 17.0013C5.66666 20.1652 6.76457 22.8451 8.96041 25.0409C11.1562 27.2367 13.8361 28.3346 17 28.3346Z" fill="%23009AD0"/></g></svg>');
  --bs-accordion-btn-icon-width: 34px;
  display: grid;
  gap: 20px;
}

.program_faq_section h3,
.program_faq_heading h3 {
  font-size: var(--h5-size);
  font-weight: var(--fw-bold);
  margin-bottom: 10px;
}

.program_faq_section p {
  color: var(--program-body-text);
  margin-bottom: 0;
}

.program_faq_section .accordion-button p {
  margin-bottom: 0;
}

.program_faq_section
  .accordion-flush
  > :is(.accordion-item, .accordion-item:first-child) {
  border: 1px solid var(--color-secondary);
  border-radius: 30px;
  background-color: #fff7e7;
  overflow: hidden;
  transition: 300ms ease-in-out;
}

.program_faq_section .accordion-flush > .accordion-item.active {
  box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.16);
}

.program_faq_section .accordion-flush > .accordion-item:not(.active):hover {
  border-color: #ffeece;
}

.program_faq_section .accordion-flush > .accordion-item > .accordion-header {
  margin-bottom: 0;
}

.program_faq_section
  .accordion-flush
  > .accordion-item
  > .accordion-header
  :is(.accordion-button, .accordion-button.collapsed) {
  font-weight: 600;
  font-size: var(--body-base);
  color: var(--color-black);
  padding-block: 10px;
  padding-inline: 20px;
  box-shadow: none;
  gap: 7px;
  background-color: #fff7e7;
  display: flex;
}

.program_faq_section
  .accordion-flush
  > .accordion-item:not(.active)
  > .accordion-header
  :is(.accordion-button, .accordion-button.collapsed):hover {
  background-color: #ffeece;
}

.program_faq_section
  .accordion-flush
  > .accordion-item
  > .accordion-header
  .accordion-button:not(.collapsed) {
  border: 0;
}

.program_faq_section .accordion-flush > .accordion-item > .accordion-collapse {
  border: 0px;
}

.program_faq_section
  .accordion-flush
  > .accordion-item
  > .accordion-collapse
  .accordion-body {
  padding-top: 15px;
  font-size: var(--body-base);
  color: var(--color-black);
  padding-bottom: 15px;
  padding-inline: 20px;
}

.faq-section-spacing {
  padding-block: 45px;
  /* max-width: 900px; */
  margin: 0 auto;
}

.faq-section-spacing .program_faq_section {
  margin: 0;
}

.faq-section-spacing .program_faq_heading p {
  /* text-align: center; */
  margin-bottom: 35px;
  /* max-width: 900px;
  margin-inline: auto; */
}

.faq-section-spacing .program_faq_heading h3 {
  color: var(--color-black);
  font-weight: var(--fw-bold);
  font-family: var(--font-family-figtree);
  font-size: var(--h3-2-size);
  /* text-align: center; */
}

.pdop-faqs-template .filter-group {
  max-height: 250px;
  overflow-y: auto;
}

/* ── Tag filter buttons ─────────────────────────────────────────── */

.filter-header-btn {
  background-color: var(--color-accent-green);
  color: var(--color-black);
  padding: 10px 20px;
  border-radius: 50px;
  font-weight: var(--fw-medium);
  display: flex;
  align-items: center;
  gap: 10px;
  /* margin-top: 45px; */
}

.tag-filters,
.faq-search-wrap {
  /* display: flex;
  flex-wrap: wrap; */
  gap: 8px;
  margin-top: 12px;
}

.filter-grid-header {
  /* align-items: start; */
  column-gap: 30px;
  row-gap: 10px;
}

.faq-search-wrap .rs-search-icon {
  position: absolute;
  right: 10px;
  bottom: 11px;
}

.filter-grid-header p {
  margin-bottom: 10px;
  font-weight: 500;
}

.faq-header-filter {
  border-radius: 20px;
  background: #eaf1f3;
  padding: 24px 29px;
  margin-bottom: 30px;
}

.faq-header-filter .clear-filters {
  color: var(--color-primary);
}

.faq-search-input {
  border-radius: 10px !important;
  border: 1px solid #bfbfbf !important;
  background: #fff;
  min-width: 255px;
  padding-right: 30px !important;
  padding-left: 15px !important;
  padding-block: 6px !important;
}

.faq-search-input:focus {
  outline: 0;
  border-color: var(--color-primary) !important;
  box-shadow: 0 0 0 3px rgba(43, 60, 115, 0.12) !important;
  outline-offset: 0px;
}

.faq-tag-btn {
  display: inline-flex;
  align-items: center;
  padding: 8px 14px;
  border-radius: 40px;
  background: #fff;
  border: solid 1px var(--color-white);
  color: var(--color-black);
  font-weight: var(--fw-medium);
  font-size: 15px;
  line-height: 1.4;
  cursor: pointer;
  transition:
    background 0.18s,
    color 0.18s,
    border-color 0.18s;
  line-height: 1.4;
}

.faq-tag-btn:hover {
  background: #fff;
  color: var(--color-black);
  border-color: var(--color-black);
}

/* Selected state (aria-checked="true") */
.faq-tag-btn.is-active,
.faq-tag-btn[aria-checked="true"] {
  background: #fff;
  color: var(--color-black);
  border-color: var(--color-black);
}

/* Visible keyboard focus ring — do NOT suppress this */
.faq-tag-btn:focus-visible {
  outline: 3px solid #009ad0;
  outline-offset: 2px;
}

/* ── Search button ──────────────────────────────────────────────── */
/* .faq-filter-actions {
  margin-top: 45px;
} */

/* .faq-search-btn {
  padding: 9px 28px;
  background: #009ad0;
  color: #fff;
  border: none;
  border-radius: 4px;
  font-size: 0.9375rem;
  font-weight: 600;
  cursor: pointer;
  transition: background 0.18s;
} */

.faq-search-btn:hover {
  background: #007aaa;
}

.faq-search-btn:focus-visible {
  outline: 3px solid #002d72;
  outline-offset: 2px;
}

/* ── Hidden FAQ items ───────────────────────────────────────────── */
.accordion-item[hidden] {
  display: none;
}

.pdop-faq-section .fs-mobile-panel__body {
  background-color: #ecf0f8;
}

.no_results_found_msg h3 {
  margin-block: 16px 10px;
  color: var(--color-black);
  font-size: clamp(20px, 1.6vw, 26px);
  font-weight: 900;
  text-transform: uppercase;
}

@media (max-width: 768px) {
  .program_faq_section
    .accordion-flush
    > .accordion-item
    > .accordion-header
    svg {
    min-width: 16px;
  }
  .program_faq_section .accordion {
    --bs-accordion-btn-icon-width: 26px;
  }
  .faq-header-filter {
    display: none;
  }
  .faq-search-input {
    padding-right: 15px !important;
  }
}

.program_faq_section p a {
  display: inline-flex;
  flex-direction: row-reverse;
  gap: 4px;
  align-items: center;
}
.link-icon {
  border-radius: 17px;
  background: #c5f0ff;
  padding: 6px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 25px;
  height: 25px;
  flex-shrink: 0;
}
.link-icon svg {
  display: block;
  flex-shrink: 0;
}
.park-rules-page-sections .accordion-body p {
  margin-bottom: 30px;
  display: flex;
  gap: 10px;
  /* padding-left: 20px; */
  /* border-left: 3px solid#E2DDF0; */
}
.park-rules-page-sections
  .program_faq_section
  .accordion-flush
  > .accordion-item
  > .accordion-header
  :is(.accordion-button, .accordion-button.collapsed) {
  background-color: #f4f0ff;
}
.park-rules-page-sections
  .program_faq_section
  .accordion-flush
  > :is(.accordion-item, .accordion-item:first-child) {
  border: 1px solid #f4f0ff;
  background-color: #f4f0ff;
}
.park-rules-page-sections
  .program_faq_section
  .accordion-flush
  > .accordion-item:not(.active)
  > .accordion-header
  :is(.accordion-button, .accordion-button.collapsed):hover {
  background-color: #e2ddf0;
}
