/* ════════════════════════════════════════════════
   Kinema Pulse — couche production
   (accessibilité, formulaire, pages légales)
   Le design des pages vit dans leur <style> respectif.
════════════════════════════════════════════════ */

/* Lien d'évitement */
.skip-link{position:absolute;left:-9999px;top:0;z-index:1000;background:#171717;color:#fff;
  padding:10px 18px;font-family:'Barlow',sans-serif;font-size:14px}
.skip-link:focus{left:0}

/* Focus clavier visible */
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{
  outline:3px solid #FD1843;outline-offset:2px}

/* Puces de service = vraies cases à cocher */
.kp-chip input{position:absolute;opacity:0;width:0;height:0}
.kp-chip:has(input:checked){background:#FD1843;border-color:#FD1843;color:#fff}
.kp-chip:focus-within{outline:3px solid #FD1843;outline-offset:2px}

/* Messages du formulaire + pot de miel anti-spam */
.form-msg{display:none}
.form-msg.ok{display:block;color:#0E2A20;font-weight:600}
.form-msg.err{display:block;color:#FD1843;font-weight:600}
.hp-field{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}

/* Pages légales */
.legal-wrap{max-width:760px;margin:0 auto;padding:clamp(48px,6vw,88px) clamp(20px,5vw,60px) 80px}
.legal-wrap h1{font-family:'Playfair Display',serif;font-weight:800;font-size:clamp(34px,5vw,54px);
  line-height:1.05;letter-spacing:-.02em;margin:0 0 10px;color:#171717}
.legal-wrap .legal-date{font-size:13px;color:rgba(23,23,23,.5);margin-bottom:36px}
.legal-wrap h2{font-family:'Playfair Display',serif;font-weight:700;font-size:clamp(20px,2.6vw,28px);
  margin:34px 0 10px;color:#171717}
.legal-wrap p,.legal-wrap li{font-size:15.5px;line-height:1.75;color:rgba(23,23,23,.7);margin:0 0 12px}
.legal-wrap ul{padding-left:22px;margin:0 0 12px}
.legal-wrap a{color:#FD1843;text-decoration:underline}
.legal-wrap strong{color:#171717}
