/* ════════════════════════════════════════════════════════════════════
   FAQ partagée (accueil, vidéo, photo, communication) · préfixe dv-faq
   Palette : #090510 #9667E0 #D4BBFC #EBD9FC #F2EBFB #FBFAFF #FFFFFF
   Les questions sont de vrais <details> : les réponses sont dans le HTML,
   donc lues par Google et par ses réponses IA, même quand elles sont repliées.
   ════════════════════════════════════════════════════════════════════ */
.dv-faq{
  position:relative;
  padding:clamp(76px, 11vh, 130px) 0;
  background:#FFFFFF;
  color:#090510;
  font-family:'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Arial, sans-serif;
}
.dv-faq__wrap{ width:min(860px, 92%); margin-inline:auto; }
.dv-faq__head{ text-align:center; margin-bottom:clamp(34px, 5vh, 52px); }
.dv-faq__kicker{
  display:block; margin:0 0 14px;
  font-size:13px; font-weight:700; letter-spacing:.16em; text-transform:uppercase;
  color:#9667E0;
}
.dv-faq__title{
  margin:0; font-weight:800; letter-spacing:-.035em; line-height:1.06;
  font-size:clamp(32px, 4.2vw, 52px); color:#090510;
  text-wrap:balance;
}
.dv-faq__intro{
  margin:18px auto 0; max-width:56ch;
  font-size:clamp(16px, 1.5vw, 18px); line-height:1.65; color:rgba(9,5,16,.62);
}

.dv-faq__list{ border-top:1px solid rgba(9,5,16,.12); }
.dv-faq__item{ border-bottom:1px solid rgba(9,5,16,.12); }
.dv-faq__item > summary{
  list-style:none; cursor:pointer;
  display:flex; align-items:center; justify-content:space-between; gap:20px;
  padding:22px 2px;
}
.dv-faq__item > summary::-webkit-details-marker{ display:none; }
.dv-faq__item > summary::marker{ content:""; }
.dv-faq__item > summary:focus-visible{ outline:2px solid #9667E0; outline-offset:4px; border-radius:10px; }
.dv-faq__q{
  margin:0;
  font-size:clamp(17px, 1.7vw, 20px); font-weight:700; letter-spacing:-.02em; line-height:1.35;
  color:#090510;
}
.dv-faq__icon{
  flex:none; width:34px; height:34px; border-radius:50%;
  display:grid; place-items:center;
  background:#F2EBFB; color:#9667E0;
  transition:transform .3s cubic-bezier(.22,.61,.36,1), background .3s ease, color .3s ease;
}
.dv-faq__icon svg{ width:14px; height:14px; }
.dv-faq__item > summary:hover .dv-faq__icon{ background:#EBD9FC; }
.dv-faq__item[open] .dv-faq__icon{ transform:rotate(45deg); background:#9667E0; color:#FFFFFF; }

.dv-faq__a{ padding:0 2px 24px; }
.dv-faq__a p{
  margin:0; max-width:68ch;
  font-size:16.5px; line-height:1.7; color:rgba(9,5,16,.66);
}
.dv-faq__a p + p{ margin-top:12px; }
.dv-faq__a a{ color:#9667E0; font-weight:600; text-decoration:underline; text-underline-offset:3px; }
.dv-faq__a a:hover{ color:#090510; }

@media (max-width: 640px){
  .dv-faq{ padding:64px 0; }
  .dv-faq__item > summary{ padding:18px 0; }
  .dv-faq__icon{ width:30px; height:30px; }
  .dv-faq__a{ padding:0 0 20px; }
  .dv-faq__a p{ font-size:15.5px; }
}
@media (prefers-reduced-motion: reduce){
  .dv-faq__icon{ transition:none; }
}
