.faq-section {
  padding-top: var(--faq-section-padding-top-desktop, var(--site-space-0));
  padding-bottom: var(--faq-section-padding-bottom-desktop,
      var(--site-space-100));
}

.faq-section__grid {
  display: grid;
  grid-template-columns: 1fr 1.3fr;
  gap: var(--site-space-80);
  align-items: start;
}

.faq-section--list-only .faq-section__grid {
  grid-template-columns: 1fr;
  gap: var(--site-space-0);
}

/* Left Column Styling */
.faq-section__content-col {
  position: sticky;
  top: 120px;
}

.faq-section__label {
  display: block;
  font-family: var(--font-satoshi);
  font-size: var(--site-font-size-xs);
  font-weight: 700;
  letter-spacing: 0.1em;
  color: var(--Primary-Rust);
  text-transform: uppercase;
  margin-bottom: var(--site-space-10);
}

.faq-section__title {
  font-family: var(--font-satoshi);
  font-size: var(--site-font-size-46);
  font-weight: 500;
  color: var(--Text-Dark);
  margin-bottom: var(--site-space-20);
  line-height: 126.087%;
  letter-spacing: -0.46px;
}

.faq-section__description {
  font-family: var(--font-space-grotesk);
  font-size: var(--site-font-size-base);
  line-height: 133.333%;
  color: var(--Text-Light);
  margin-bottom: var(--site-space-20);
  font-weight: 400;
  font-style: normal;
}

/* Right Column: Accordion */
.faq-section__list {
  display: flex;
  flex-direction: column;
  gap: var(--site-space-20);
}

.faq-item {
  /*background-color: rgba(255, 255, 255, 0.45);
  border: 1px solid rgba(142, 74, 39, 0.08);
  border-radius: var(--site-radius-sm);*/
  background-color: var(--Card-BG);
  border: 1px solid var(--Card-Border);
  border-radius: var(--site-space-12);
  padding: var(--site-space-0) var(--site-space-20);
  transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
  -webkit-tap-highlight-color: transparent;
}

.faq-item[open] {
  /* background-color: var(--White);
  border-color: rgba(142, 74, 39, 0.15);
  box-shadow: 0 12px 30px rgba(43, 34, 30, 0.04); */
}

.faq-item summary {
  display: flex;
  justify-content: space-between;
  align-items: center;
  cursor: pointer;
  list-style: none;
  /* Hide default summary marker */
  padding: var(--site-space-20) var(--site-space-0);
  font-family: var(--font-satoshi);
  font-size: var(--site-font-size-lg);
  font-weight: 500;
  line-height: 1.3;
  color: var(--Text-Dark);
  user-select: none;
  transition: color 0.25s ease;
  -webkit-tap-highlight-color: transparent;
  outline: none;
  box-shadow: none;
}

.faq-item:focus,
.faq-item:focus-visible,
.faq-item summary:focus,
.faq-item summary:focus-visible {
  outline: none;
  box-shadow: none;
}

/* Hide default marker in Safari and other browsers */
.faq-item summary::-webkit-details-marker {
  display: none;
}

.faq-item summary::marker {
  display: none;
}

.faq-item summary:hover {
  color: var(--Primary-Rust);
}

.faq-item summary::after {
  content: "";
  display: inline-block;
  width: 24px;
  height: 24px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%238E4A27' stroke-width='1.5'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M12 4.5v15m7.5-7.5h-15'/%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  transition: transform 0.2s ease;
  flex-shrink: 0;
  margin-left: var(--site-space-20);
}

/* Dynamic Close Symbol */
.faq-item[open] summary::after {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%238E4A27' stroke-width='1.5'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M6 18 18 6M6 6l12 12'/%3E%3C/svg%3E");
}

.faq-item__content {
  font-family: var(--font-space-grotesk);
  font-size: var(--site-font-size-sm);
  line-height: 1.6;
  color: var(--Subtext);
  padding-bottom: var(--site-space-20);
  /* border-top: 1px solid rgba(142, 74, 39, 0.06);
  padding-top: var(--site-space-20); */
}

.faq-item__content a {
  text-decoration-line: underline;
  text-decoration-style: solid;
  text-decoration-skip-ink: auto;
  text-decoration-thickness: auto;
  text-underline-offset: auto;
  text-underline-position: from-font;
}

.faq-item__content p {
  margin-bottom: var(--site-space-12);
}

.faq-item__content p:last-child {
  margin-bottom: var(--site-space-0);
}

.faq-item__content ul,
.faq-item__content ol {
  margin-left: var(--site-space-20);
  margin-bottom: var(--site-space-12);
}

.faq-item__content li {
  margin-bottom: var(--site-space-6);
}

.faq-section__empty {
  padding: var(--site-space-48) var(--site-space-0);
  font-family: var(--font-space-grotesk);
  color: var(--Text-Light);
  border: 1px dashed var(--Border-Color);
  border-radius: var(--site-radius-content);
}

@media (max-width: 1024px) {
  .faq-section__grid {
    gap: var(--site-space-40);
  }

  .faq-section__title {
    font-size: var(--site-font-size-42);
  }
}

@media (min-width: 769px) {
  .for-mobile {
    display: none !important;
  }

  .page-level .faq-section__grid {
    grid-template-columns: 1fr 1.73fr;
  }
}

@media (max-width: 768px) {
  .faq-section {
    padding-top: var(--faq-section-padding-top-mobile, var(--site-space-60));
    padding-bottom: var(--faq-section-padding-bottom-mobile,
        var(--site-space-20));
  }

  .faq-section__grid {
    grid-template-columns: 1fr;
    gap: var(--site-space-40);
  }

  .faq-section__content-col {
    position: static;
    text-align: center;
  }

  .faq-section__title {
    font-size: var(--site-font-size-32);
    margin-bottom: var(--site-space-16);
    line-height: 131.25%;
    letter-spacing: -0.32px;
  }

  .faq-section__description {
    font-size: var(--site-font-size-sm);
    line-height: 137.5%;
    /* margin-bottom: var(--site-space-28); */
  }

  .faq-item {
    padding: var(--site-space-0) var(--site-space-20);
    border-radius: var(--site-radius-md);
  }

  .faq-item summary {
    font-size: var(--site-font-size-md);
    padding: var(--site-space-20) var(--site-space-0);
  }

  .faq-item__content {
    font-size: var(--site-font-size-sm);
    padding-bottom: var(--site-space-20);
    padding-top: var(--site-space-16);
  }

  .faq-section {
    position: relative;
  }

  .faq-section::before {
    content: "";
    position: absolute;
    top: 0px;
    width: calc(100% - 36px);
    height: 1px;
    background: #e2d8d2;
    margin: auto;
    left: 0;
    right: 0px;
  }

  .for-desk {
    display: none !important;
  }

  .faq-section .for-mobile {
    display: inline-flex;
    width: max-content;
    margin: auto;
  }
}