/* faq.css — isolated styles for the FAQ fragment */

.faq { background: #f7f9fc; border-top: 1px solid #e7edf1; padding: 48px 0; }

.faq-head { margin-bottom: 18px; }
.faq-title { margin: 0; font-size: 1.6rem; letter-spacing: .2px; color: var(--ink, #0e2431); }
.faq-sub { margin: 6px 0 0; font-size: .9rem; color: var(--muted, #6b7e8a); }

.faq-grid {
  display: grid;
  grid-template-columns: 1.2fr 1fr;  /* image : accordion */
  gap: 22px;
  align-items: start;
}

.faq-figure { margin: 0; }
.faq-figure img {
  width: 100%;
  height: auto;
  border-radius: 14px;
  box-shadow: 0 10px 22px rgba(0,0,0,.06);
  object-fit: cover;
}

/* Accordion */
.faq-accordion details {
  background: #fff;
  border: 1px solid #e7edf1;
  border-radius: 12px;
  margin-bottom: 10px;
  overflow: hidden;
}

.faq-accordion summary {
  list-style: none;
  cursor: pointer;
  padding: 14px 44px 14px 16px;
  font-weight: 700;
  color: var(--ink, #0e2431);
  position: relative;
}

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

/* plus / minus icon */
.faq-accordion summary::after {
  content: "+";
  position: absolute;
  right: 14px; top: 50%;
  transform: translateY(-50%);
  font-size: 1.2rem;
  color: var(--ink-2, #3a5060);
}
.faq-accordion details[open] summary::after { content: "–"; }

.faq-accordion p {
  margin: 0;
  padding: 0 16px 14px 16px;
  color: var(--ink-2, #3a5060);
  line-height: 1.45;
}

/* Responsive */
@media (max-width: 960px){
  .faq-grid { grid-template-columns: 1fr; }
}
