/* ==========================================================================
   Shared FAQ — one visual for phone, photography, tools, and gear
   Existing class names are aliases so older pages do not need a rewrite.
   --------------------------------------------------------------------------
   Accordion:  .faq-list > details.faq-item > summary.faq-question + .faq-answer
               .guide-faq > details.guide-faq__item > summary.guide-faq__q + .guide-faq__a
               .aurora-faq / .dof-faq (same pattern, *-item / *-q / *-a)
   New pages should use .faq-list / .faq-item.
   ========================================================================== */

.faq-list,
.guide-faq,
.aurora-faq,
.dof-faq {
  border-top: 1px solid var(--color-gray-200);
}

.faq-item,
.guide-faq__item,
.aurora-faq-item,
.dof-faq-item {
  background: none;
  border: 0;
  border-bottom: 1px solid var(--color-gray-200);
  border-radius: 0;
  overflow: visible;
}

.faq-question,
.guide-faq__q,
.aurora-faq-q,
.dof-faq-q {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-4);
  margin: 0;
  padding: var(--space-5) 0;
  list-style: none;
  cursor: pointer;
  font-size: var(--text-lg);
  font-weight: var(--font-weight-semibold);
  color: var(--color-black);
  background: none;
}

.faq-question::-webkit-details-marker,
.guide-faq__q::-webkit-details-marker,
.aurora-faq-q::-webkit-details-marker,
.dof-faq-q::-webkit-details-marker {
  display: none;
}

.faq-question::after,
.guide-faq__q::after,
.aurora-faq-q::after,
.dof-faq-q::after {
  content: '+';
  flex-shrink: 0;
  font-size: var(--text-xl);
  font-weight: var(--font-weight-normal);
  color: var(--color-gray-400);
  line-height: 1;
}

.faq-item[open] .faq-question::after,
.guide-faq__item[open] .guide-faq__q::after,
.aurora-faq-item[open] .aurora-faq-q::after,
.dof-faq-item[open] .dof-faq-q::after {
  content: '−';
}

.guide-faq__icon {
  display: none;
}

.faq-answer,
.guide-faq__a,
.aurora-faq-a,
.dof-faq-a {
  max-width: 68ch;
  margin: 0;
  padding: 0 0 var(--space-5);
  font-size: var(--text-base);
  line-height: var(--leading-relaxed);
  color: var(--color-gray-600);
}

.faq-answer p,
.guide-faq__a p,
.aurora-faq-a p,
.dof-faq-a p {
  margin: 0;
}

.faq-answer a,
.guide-faq__a a,
.aurora-faq-a a,
.dof-faq-a a {
  color: var(--color-black);
  font-weight: var(--font-weight-semibold);
}

.faq-question:hover,
.guide-faq__q:hover,
.aurora-faq-q:hover,
.dof-faq-q:hover {
  background: none;
}

body.night-vision .faq-list,
body.night-vision .guide-faq,
body.night-vision .aurora-faq,
body.night-vision .dof-faq,
body.night-vision .faq-item,
body.night-vision .guide-faq__item,
body.night-vision .aurora-faq-item,
body.night-vision .dof-faq-item {
  border-color: var(--nv-border);
}

body.night-vision .faq-question,
body.night-vision .guide-faq__q,
body.night-vision .aurora-faq-q,
body.night-vision .dof-faq-q {
  color: var(--nv-text);
}

body.night-vision .faq-question::after,
body.night-vision .guide-faq__q::after,
body.night-vision .aurora-faq-q::after,
body.night-vision .dof-faq-q::after {
  color: var(--nv-text-muted);
}

body.night-vision .faq-answer,
body.night-vision .guide-faq__a,
body.night-vision .aurora-faq-a,
body.night-vision .dof-faq-a {
  color: var(--nv-text-muted);
}

body.night-vision .faq-answer a,
body.night-vision .guide-faq__a a,
body.night-vision .aurora-faq-a a,
body.night-vision .dof-faq-a a {
  color: var(--nv-text);
}
