/* Shared styling for the standalone legal pages. Mirrors the homepage palette
   (navy #081D33, champagne gold #D4AF37, rose gold #E6B08C) without depending
   on the Design Component runtime, so these pages render even if support.js
   fails: a legal notice must always be reachable. */

*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{
  background:#081D33;
  color:rgba(244,241,237,.86);
  font-family:'Montserrat','SF Pro Display',-apple-system,BlinkMacSystemFont,'Helvetica Neue',sans-serif;
  font-size:15.5px;line-height:1.75;font-weight:300;
  -webkit-font-smoothing:antialiased;
}
a{color:#E6B08C;text-decoration:none;border-bottom:1px solid rgba(230,176,140,.35);transition:.25s}
a:hover{color:#F0C9AE;border-bottom-color:#F0C9AE}

.legal-head{border-bottom:1px solid rgba(230,176,140,.16);padding:26px 24px}
.legal-head-inner{max-width:820px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:20px}
.legal-head img{height:46px;width:auto;display:block}
.legal-head a{border:none}
.legal-back{font-size:12.5px;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap}

main{max-width:820px;margin:0 auto;padding:64px 24px 80px}
h1{
  font-size:clamp(30px,5vw,42px);font-weight:500;color:#fff;
  letter-spacing:-.02em;line-height:1.15;margin-bottom:10px;
}
.legal-updated{font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;color:rgba(230,176,140,.75);margin-bottom:14px}
.legal-rule{width:64px;height:1px;background:rgba(230,176,140,.55);margin:0 0 46px}

h2{
  font-size:19px;font-weight:600;color:#fff;letter-spacing:-.01em;
  margin:44px 0 14px;padding-top:26px;border-top:1px solid rgba(230,176,140,.14);
}
h2:first-of-type{border-top:none;padding-top:0;margin-top:0}
p{margin-bottom:14px}
p:last-child{margin-bottom:0}
strong{color:#fff;font-weight:500}
address{font-style:normal;line-height:1.85}

/* Fields Sabrina still has to confirm. Deliberately visible: an unfilled legal
   notice must look unfilled rather than pass for complete. */
.todo{
  color:#F0C9AE;background:rgba(230,176,140,.12);
  border:1px dashed rgba(230,176,140,.45);border-radius:5px;
  padding:1px 7px;font-size:.92em;white-space:nowrap;
}

.legal-note{
  margin-top:34px;padding:18px 22px;border-radius:12px;
  background:rgba(230,176,140,.06);border:1px solid rgba(230,176,140,.22);
  font-size:14px;line-height:1.7;
}

footer{border-top:1px solid rgba(230,176,140,.16);padding:34px 24px 54px;margin-top:20px}
.legal-foot-inner{max-width:820px;margin:0 auto;display:flex;flex-wrap:wrap;gap:10px 22px;align-items:center;font-size:13px;color:rgba(184,158,142,.75)}
.legal-foot-inner a{border:none}

@media (max-width:600px){
  main{padding:44px 20px 60px}
  .legal-head-inner{flex-direction:column;align-items:flex-start;gap:12px}
}

/* Numbered sections coming from the source documents */
h2 .legal-num{color:rgba(230,176,140,.65);margin-right:.4em;font-weight:400}

ul{margin:0 0 14px;padding-left:0;list-style:none}
li{position:relative;padding-left:20px;margin-bottom:9px}
li::before{content:"";position:absolute;left:2px;top:11px;width:5px;height:5px;border-radius:50%;background:rgba(230,176,140,.7)}
li:last-child{margin-bottom:0}

/* Editor identity table */
.legal-table{width:100%;border-collapse:collapse;margin-bottom:16px;font-size:14.5px}
.legal-table th{
  text-align:left;font-weight:500;color:#fff;background:rgba(230,176,140,.10);
  padding:11px 14px;border-bottom:1px solid rgba(230,176,140,.20);
  font-size:12px;letter-spacing:.1em;text-transform:uppercase;
}
.legal-table td{padding:11px 14px;border-bottom:1px solid rgba(230,176,140,.12);vertical-align:top}
.legal-table td:first-child{color:rgba(244,241,237,.62);width:34%;white-space:nowrap}
.legal-table tr:last-child td{border-bottom:none}
@media (max-width:600px){
  .legal-table,.legal-table tbody,.legal-table tr,.legal-table td{display:block;width:100%}
  .legal-table thead{display:none}
  .legal-table td{padding:4px 0;border:none;white-space:normal}
  .legal-table td:first-child{width:auto;padding-top:12px;font-size:12px;letter-spacing:.08em;text-transform:uppercase}
  .legal-table tr{border-bottom:1px solid rgba(230,176,140,.12);padding-bottom:10px;margin-bottom:10px}
}

/* Cible tactile du retour : 22px de haut ne suffit pas au pouce. */
@media (max-width:1090px), (pointer:coarse){
  /* Liens isolés : retour, pied de page et cellules de coordonnées.
     Les liens insérés au fil d'une phrase restent tels quels, l'exception
     « lien dans le texte » de la règle WCAG 2.5.8 les dispense du minimum. */
  .legal-back{display:inline-block;padding:11px 0}
  .legal-foot-inner a{display:inline-block;padding:10px 0}
  td > a:only-child{display:inline-block;padding:11px 0}
}
