/* ===== TripTea — Часто задавані питання block ============================
   Figma desktop node: 710:42696 (1920 - Main)  →  section 1920 padding 80 395
   Figma mobile  node: 744:49896 (390 - main)   →  section 390 padding 40 24
*/

.tt-faq {
  background: #FFFFFF;
  padding: 80px 0;
  box-sizing: border-box;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-feature-settings: "case", "cpsp";
  color: #2B2B2B;
}

/* Break out of bootstrap .container so the white section bg fills the full
   viewport (matches Figma desktop frame width=1920). Content stays centred
   inside .tt-faq__inner at min(1130, 100% − 32) wide. */
.tt-faq--breakout {
  position: relative;
  width: 100vw;
  max-width: 100vw;
  left: 50%;
  transform: translateX(-50%);
}

.tt-faq *, .tt-faq *::before, .tt-faq *::after {
  box-sizing: border-box;
}

/* Inner = Figma's centred 1130-wide content column (1920 − 2×395 padding).
   On smaller viewports it caps at 100% − 32 gutters. */
.tt-faq__inner {
  width: min(1130px, 100% - 32px);
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 48px;
}

/* ===== Head ============================================================== */

.tt-faq__head {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
}

.tt-faq__title {
  margin: 0;
  font-family: 'Poppins', sans-serif;
  font-weight: 800;
  font-size: 36px;
  line-height: 120%;
  color: #4A3426;
  text-align: center;
}

.tt-faq__subtitle {
  margin: 0;
  font-family: 'Poppins', sans-serif;
  font-weight: 400;
  font-size: 14px;
  line-height: 150%;
  color: #6B6B6B;
  text-align: center;
}

/* ===== List ============================================================== */

.tt-faq__list {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

/* Each Q&A card. <details>/<summary> for native expand/collapse + JS for
   single-open behaviour and the .tt-faq-card--open colour-state class. */
.tt-faq-card {
  border: 1px solid #EAEAEA;
  border-radius: 24px;
  padding: 24px 24px 25px;
  background: #FFFFFF;
  transition: border-color 0.2s ease;
}

.tt-faq-card[open],
.tt-faq-card--open {
  border-color: #E7D7C8; /* Figma Secondary/Warm Sand — active state */
}

/* Hide the default disclosure marker — we render our own SVG. */
.tt-faq-card > summary { list-style: none; cursor: pointer; }
.tt-faq-card > summary::-webkit-details-marker { display: none; }

.tt-faq-card__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  user-select: none;
}

.tt-faq-card__question {
  font-family: 'Poppins', sans-serif;
  font-weight: 700;
  font-size: 16px;
  line-height: 140%;
  color: #4A3426; /* Dark Tea — closed/inactive */
  transition: color 0.2s ease;
}

.tt-faq-card[open] .tt-faq-card__question,
.tt-faq-card--open .tt-faq-card__question {
  color: #8B5E3C; /* Tea Brown — active */
}

.tt-faq-card__icon {
  flex: 0 0 24px;
  width: 24px;
  height: 24px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  /* Figma closed-state chevron stroke: Neutral/Medium Gray. */
  color: #6B6B6B;
  transition: transform 0.2s ease, color 0.2s ease;
}
.tt-faq-card[open] .tt-faq-card__icon,
.tt-faq-card--open .tt-faq-card__icon {
  /* Open-state: stroke becomes Tea Brown and the chevron flips to point up. */
  transform: rotate(180deg);
  color: #8B5E3C;
}

.tt-faq-card__answer {
  margin: 24px 0 0;
  font-family: 'Poppins', sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 150%;
  color: #6B6B6B;
  /* Figma fixed width 950 on desktop is just the text-frame width; in our
     fluid card the answer fills full width which reads better on real content. */
}

/* ===== Mobile (Figma 390-main, node 744:49896) =========================== */
@media (max-width: 768px) {
  .tt-faq {
    padding: 40px 0;
  }
  .tt-faq__inner {
    width: 100%;
    padding: 0 24px;
    gap: 40px; /* Figma layout_OQ7DYV — column gap 40 head→list */
  }

  /* Mobile head uses H3 (Bold 28) not H2 (ExtraBold 36). */
  .tt-faq__title {
    font-weight: 700;
    font-size: 28px;
    line-height: 120%;
  }

  .tt-faq-card {
    padding: 24px 24px 25px;
    border-radius: 24px;
  }

  .tt-faq-card__answer {
    margin-top: 24px;
  }
}
