.faq-wrapper {
  background: #f6f8fc;
}

.faq-hero {
  position: relative;
  min-height: 220px;
  background: url("https://lh3.googleusercontent.com/p/AF1QipMWxQ_SF-5ffTSV5xqbKSrldy2UaBNN2_cV9-z5=s680-w680-h510-rw") center/cover no-repeat;
  display: grid;
  align-items: center;
}

.faq-hero-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(120deg, rgba(15, 38, 75, 0.78), rgba(15, 38, 75, 0.45));
}

.faq-hero-content {
  position: relative;
  color: #fff;
  display: grid;
  gap: 0.4rem;
  padding: clamp(1.8rem, 4vw, 2.6rem) 0;
}

.faq-list-section {
  padding: 3.2rem 0 4rem;
}

.faq-list details {
  background: #fff;
  border: 1px solid #d7e4f5;
  border-radius: 8px;
  margin-bottom: 0.9rem;
  overflow: hidden;
  box-shadow: var(--shadow-sm);
}

.faq-list summary {
  padding: 0.9rem 1.1rem;
  cursor: pointer;
  font-weight: 700;
  list-style: none;
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: #0f264b;
  font-size: 1rem;
}

.faq-list summary::-webkit-details-marker {
  display: none;
}

.faq-list summary::after {
  content: "+";
  color: #e7b000;
  font-size: 1.1rem;
  font-weight: 800;
  margin-left: 1rem;
}

.faq-list details[open] summary::after {
  content: "–";
}

.faq-list details p {
  padding: 0 1.1rem 1rem;
  margin: 0;
  color: #3f4c5a;
  line-height: 1.5;
}

.faq-list details:not([open]) p {
  display: none;
}

.faq-list details[open] {
  background: #f4f8ff;
  border-color: #b7d0f3;
}

@media (max-width: 900px) {
  .faq-hero {
    min-height: 200px;
  }
}
