

/* ═══════════════════════════════════
   FAQ SECTION
═══════════════════════════════════ */
.faq-sec {
  max-width: 1240px;
  margin: 0 auto;
  padding: 56px 56px 72px;
}

.faq-sec__kicker {
  display: block;
  font-size: 10px;
  font-weight: 400;
  letter-spacing: 4px;
  text-transform: uppercase;
  color: var(--copper);
  margin-bottom: 12px;
}

.faq-sec__title {
  font-family: var(--font-body,'Playfair Display', serif);
  font-size: 22px;
  font-weight: 400;
  color: var(--indigo);
  margin-bottom: 32px;
}

.faq-accordion {
  display: flex;
  flex-direction: column;
  border-top: 1px solid var(--border);
}

.faq-item {
  border-bottom: 1px solid var(--border);
}

.faq-question {
  padding: 18px 48px 18px 0;
  font-family: 'DM Sans', sans-serif;
  font-size: 15px;
  font-weight: 500;
  color: var(--indigo);
  cursor: pointer;
  position: relative;
  user-select: none;
  transition: color 0.2s;
  line-height: 1.5;
}

.faq-question::after {
  content: '';
  position: absolute;
  right: 4px;
  top: 50%;
  width: 8px; height: 8px;
  border-right: 1.5px solid var(--text-muted);
  border-bottom: 1.5px solid var(--text-muted);
  transform: translateY(-70%) rotate(45deg);
  transform-origin: center;
  transition: transform 0.25s var(--ease), border-color 0.2s;
}

.faq-item.is-open .faq-question {
  color: var(--copper);
}

.faq-item.is-open .faq-question::after {
  transform: translateY(-30%) rotate(-135deg);
  border-color: var(--copper);
}

.faq-answer {
  font-size: 15px;
  font-weight: 300;
  color: var(--text-mid);
  line-height: 1.85;
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.35s var(--ease), padding 0.25s var(--ease);
  padding: 0;
  max-width: 780px;
}

.faq-item.is-open .faq-answer {
  max-height: 400px;
  padding-bottom: 20px;
}

/* responsive desc + faq */
@media (max-width: 860px) {
  .cs__flex,
  .faq-sec { padding-left: 16px; padding-right: 16px; }
  .cs__description { padding-left: 20px; }
}
