.collapse {
  --radius-box: 0;
  &:not(td, tr, colgroup) {
    visibility: revert-layer;
  }
  @layer daisyui.l1.l2.l3 {
    display: grid;
    position: relative;
    overflow: hidden;
    border-radius: var(--radius-box, 1rem);
    width: 100%;
    grid-template-rows: max-content 0fr;
    grid-template-columns: minmax(0, 1fr);
    isolation: isolate;
    @media (prefers-reduced-motion: no-preference) {
      transition: grid-template-rows 0.2s;
    }
    > input:is([type="checkbox"], [type="radio"]) {
      grid-column-start: 1;
      grid-row-start: 1;
      appearance: none;
      opacity: 0;
      z-index: 1;
      width: 100%;
      padding: 1rem;
      padding-inline-end: 3rem;
      min-height: 1lh;
      transition: background-color 0.2s ease-out;
    }
    &:is( [open], [tabindex]:focus:not(.collapse-close), [tabindex]:focus-within:not(.collapse-close) ), &:not(.collapse-close):has(> input:is([type="checkbox"], [type="radio"]):checked) {
      grid-template-rows: max-content 1fr;
    }
    &:is( [open], [tabindex]:focus:not(.collapse-close), [tabindex]:focus-within:not(.collapse-close) ) > .collapse-content, &:not(.collapse-close) > :where(input:is([type="checkbox"], [type="radio"]):checked ~ .collapse-content) {
      content-visibility: visible;
      min-height: fit-content;
      @supports not (content-visibility: visible) {
        visibility: visible;
      }
    }
    &:focus-visible, &:has(> input:is([type="checkbox"], [type="radio"]):focus-visible), &:has(summary:focus-visible) {
      outline-color: var(--color-base-content);
      outline-style: solid;
      outline-width: 2px;
      outline-offset: 2px;
    }
    &:not(.collapse-close) {
      > input[type="checkbox"], > input[type="radio"]:not(:checked), > .collapse-title {
        cursor: pointer;
      }
    }
    &[tabindex]:focus:not(.collapse-close, .collapse[open]), &[tabindex]:focus-within:not(.collapse-close, .collapse[open]) {
      > .collapse-title {
        cursor: unset;
      }
    }
    &:is( [open], [tabindex]:focus:not(.collapse-close), [tabindex]:focus-within:not(.collapse-close) ) > :where(.collapse-content), &:not(.collapse-close) > :where(input:is([type="checkbox"], [type="radio"]):checked ~ .collapse-content) {
      padding-bottom: 1rem;
    }
  }
  @layer daisyui.l1.l2 {
    &:is([open]) {
      &.collapse-arrow {
        > .collapse-title:after {
          @media (prefers-reduced-motion: no-preference) {
            transform: translateY(-50%) rotate(225deg);
          }
        }
      }
    }
    &.collapse-open {
      &.collapse-arrow {
        > .collapse-title:after {
          @media (prefers-reduced-motion: no-preference) {
            transform: translateY(-50%) rotate(225deg);
          }
        }
      }
      &.collapse-plus {
        > .collapse-title:after {
          --tw-content: "−";
          content: var(--tw-content);
        }
      }
    }
    &[tabindex].collapse-arrow:focus:not(.collapse-close), &.collapse-arrow[tabindex]:focus-within:not(.collapse-close) {
      > .collapse-title:after {
        transform: translateY(-50%) rotate(225deg);
      }
    }
    &.collapse-arrow:not(.collapse-close) {
      > input:is([type="checkbox"], [type="radio"]):checked ~ .collapse-title:after {
        transform: translateY(-50%) rotate(225deg);
      }
    }
    &[open] {
      &.collapse-plus {
        > .collapse-title:after {
          --tw-content: "−";
          content: var(--tw-content);
        }
      }
    }
    &[tabindex].collapse-plus:focus:not(.collapse-close) {
      > .collapse-title:after {
        --tw-content: "−";
        content: var(--tw-content);
      }
    }
    &.collapse-plus:not(.collapse-close) {
      > input:is([type="checkbox"], [type="radio"]):checked ~ .collapse-title:after {
        --tw-content: "−";
        content: var(--tw-content);
      }
    }
  }
  &:is(details) {
    @layer daisyui.l1.l2.l3 {
      width: 100%;
      @media (prefers-reduced-motion: no-preference) {
        &::details-content {
          transition: content-visibility 0.2s allow-discrete, visibility 0.2s allow-discrete, padding 0.2s ease-out, background-color 0.2s ease-out, height 0.2s;
          height: 0;
          interpolate-size: allow-keywords;
        }
        &:where([open])::details-content {
          height: auto;
        }
      }
      & summary {
        position: relative;
        display: block;
        &::-webkit-details-marker {
          display: none;
        }
      }
      & > .collapse-content {
        content-visibility: visible;
      }
    }
  }
  &:is(details) summary {
    @layer daisyui.l1.l2.l3 {
      outline: none;
    }
  }
}
.collapse-content {
  @layer daisyui.l1.l2.l3 {
    grid-column-start: 1;
    grid-row-start: 1;
  }
  @layer daisyui.l1.l2.l3 {
    content-visibility: hidden;
    grid-column-start: 1;
    grid-row-start: 2;
    min-height: 0;
    padding-left: 1rem;
    padding-right: 1rem;
    cursor: unset;
    @supports not (content-visibility: hidden) {
      visibility: hidden;
    }
    @media (prefers-reduced-motion: no-preference) {
      transition: content-visibility 0.2s allow-discrete, visibility 0.2s allow-discrete, padding 0.2s ease-out, background-color 0.2s ease-out;
    }
  }
}
.collapse {
  visibility: collapse;
}
.collapse-title {
  @layer daisyui.l1.l2.l3 {
    grid-column-start: 1;
    grid-row-start: 1;
  }
  @layer daisyui.l1.l2.l3 {
    position: relative;
    width: 100%;
    padding: 1rem;
    padding-inline-end: 3rem;
    min-height: 1lh;
    transition: background-color 0.2s ease-out;
  }
}
.collapse-plus {
  @layer daisyui.l1.l2 {
    > .collapse-title:after {
      position: absolute;
      display: block;
      height: 0.5rem;
      width: 0.5rem;
      @media (prefers-reduced-motion: no-preference) {
        transition-property: all;
        transition-duration: 300ms;
        transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
      }
      top: 0.9rem;
      inset-inline-end: 1.4rem;
      --tw-content: "+";
      content: var(--tw-content);
      pointer-events: none;
    }
  }
}
/* Custom */
.faqs {
  .collapse-title {  
    &:before,
    &:after {
      background-color: #98003b;
      right: 0;
      top: 1.5rem;
      height: 1px;
      width: 24px;
      content: '';
      position: absolute;
      transition: transform .3s ease;
      transform-origin: center;
    }
    &:before {     
      transform: rotate(90deg); 
    }
  }
  .collapse {
    &.collapse-plus:not(.collapse-close) {
      & > input:is([type="checkbox"], [type="radio"]):checked ~ .collapse-title {
        &::before {
          transform: rotate(0deg); 
        }
        &::after {
          transform: rotate(180deg); 
        }
      }
    }
  }
}


.faq-section {
  .form-primary {
    background: #281a1c;
    border-radius: 4px;
    padding: 2rem;
    h3 {
      color: #fff;
    }
  }
  .hsfc-Step__Content {
    padding: 0 !important;
  }
  [data-hsfc-id="Renderer"] .hsfc-FieldLabel {
    color: #fff !important;
  }
  [data-hsfc-id="Renderer"] .hsfc-TextInput,
  [data-hsfc-id="Renderer"] .hsfc-TextareaInput {
    background: #281a1c;
    border: 2px solid #fff;
    border-radius: 0 !important;
    color: #fff;
  }
  [data-hsfc-id="Renderer"] .hsfc-TextareaInput::placeholder {
    color: #fff;
  }
  [data-hsfc-id="Renderer"] .hsfc-Button {
    background: #fff;
    border-radius: 0;
    color: rgb(40,26,28);
    width: 100%;
  }
}