#faq { text-align: center; }
#faq .section-head { max-width: 46rem; margin-inline: auto; }
.faq { max-width: 46rem; }
#faq .faq { margin-inline: auto; text-align: left; }
.faq details { border-bottom: 1px solid var(--line); }
.faq summary {
  list-style: none;
  cursor: pointer;
  display: flex; align-items: center; justify-content: space-between; gap: 1rem;
  padding: 1.5rem 0;
  font-family: var(--display);
  font-weight: 600;
  font-size: 1.45rem;
  transition: color 0.3s;
}
.faq summary::-webkit-details-marker { display: none; }
.faq summary:hover { color: var(--ink); }
.faq-icon {
  position: relative;
  width: 0.85rem; height: 0.85rem; flex: none;
}
.faq-icon::before, .faq-icon::after {
  content: "";
  position: absolute; inset: 0; margin: auto;
  background: var(--ink-dim);
  transition: transform 0.35s var(--ease);
}
.faq-icon::before { width: 100%; height: 1px; }
.faq-icon::after { width: 1px; height: 100%; }
.faq details.is-open .faq-icon::after { transform: rotate(90deg); }
.faq details p {
  color: var(--ink-dim);
  font-size: 0.95rem;
  max-width: 40em;
  padding: 0 0 1.7rem;
  overflow: hidden;
}

.section-contact {
  text-align: center;
  padding-top: clamp(5rem, 10vw, 8rem);
  padding-bottom: clamp(5rem, 10vw, 8rem);
}
.contact-title {
  font-size: clamp(2.4rem, 6vw, 5.25rem);
  margin-bottom: clamp(1.25rem, 2.5vw, 1.8rem);
}
.contact-title span { display: block; }
.contact-sub {
  color: var(--ink-dim);
  max-width: 30em;
  margin: 0 auto 3rem;
}
.contact-handle {
  margin-top: 2rem;
  color: var(--ink-faint);
  letter-spacing: 0.08em;
  font-size: 0.85rem;
}
.contact-handle a { color: inherit; text-decoration: none; }
.contact-handle a:hover { color: var(--ink); }

.site-footer {
  border-top: 1px solid var(--line);
  padding: 2rem clamp(1.25rem, 4vw, 3rem);
  display: flex; flex-wrap: wrap; justify-content: center; gap: 0.9rem;
  color: var(--ink-faint);
  font-size: 0.8rem;
  letter-spacing: 0.08em;
  text-align: center;
}

.footer-link { color: var(--ink-faint); text-decoration: underline; text-underline-offset: 0.2em; }
.footer-link:hover { color: var(--ink-dim); }
