/* Styles partagés pour les pages légales — Barbara Care */
:root{
  --blue:#0066CC; --blue-light:#E6F2FF;
  --green:#00A86B; --orange:#FF6B35; --orange-dark:#E85A2B;
  --gray-50:#F5F5F5; --gray-200:#E0E0E0; --gray-600:#666666; --ink:#1A1A1A; --white:#FFFFFF;
}
*{ margin:0; padding:0; box-sizing:border-box; }
html{ scroll-behavior:smooth; }
body{
  font-family:'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Helvetica Neue', sans-serif;
  color:var(--gray-600); line-height:1.7; background:var(--white); -webkit-font-smoothing:antialiased;
}
h1,h2,h3{ font-family:'Montserrat','Georgia',serif; font-weight:700; color:var(--ink); }

/* Header */
header{
  position:sticky; top:0; width:100%; height:80px; background:var(--white);
  box-shadow:0 2px 8px rgba(0,0,0,0.08); z-index:100; display:flex; align-items:center;
  padding:0 40px; justify-content:space-between;
}
.logo{ font-family:'Montserrat',serif; font-size:28px; font-weight:700; color:var(--blue); }
.logo a{ color:inherit; text-decoration:none; }
.btn{
  background:var(--orange); color:#fff; border:none; padding:12px 24px; border-radius:6px;
  font-family:'Inter',sans-serif; font-weight:600; font-size:14px; letter-spacing:.5px;
  cursor:pointer; text-decoration:none; transition:background .3s;
}
.btn:hover{ background:var(--orange-dark); }

/* Content */
main{ max-width:820px; margin:0 auto; padding:56px 24px 80px; }
main .back{ display:inline-block; margin-bottom:24px; color:var(--blue); font-size:14px; font-weight:600; text-decoration:none; }
main .back:hover{ color:var(--orange); }
main h1{ font-size:38px; color:var(--blue); margin-bottom:8px; }
main .updated{ font-size:13px; color:#999; margin-bottom:40px; }
main h2{ font-size:22px; color:var(--ink); margin:40px 0 14px; padding-bottom:8px; border-bottom:2px solid var(--blue-light); }
main h3{ font-size:17px; color:var(--ink); margin:24px 0 8px; }
main p{ margin-bottom:14px; }
main ul{ margin:0 0 16px 22px; }
main li{ margin-bottom:8px; }
main a{ color:var(--blue); }
main a:hover{ color:var(--orange); }
.todo{ background:#FFF6E9; border-left:3px solid var(--orange); padding:2px 8px; border-radius:3px; color:#8a5200; font-weight:600; font-size:.95em; }
.card-note{ background:var(--blue-light); border-radius:10px; padding:20px 24px; margin:24px 0; font-size:14px; }

/* Footer */
footer{ background:var(--ink); color:#fff; padding:40px 24px; text-align:center; }
footer .brand{ font-family:'Montserrat',serif; font-size:18px; font-weight:700; margin-bottom:12px; }
footer nav{ display:flex; gap:20px; justify-content:center; flex-wrap:wrap; margin-bottom:20px; }
footer nav a{ color:#fff; opacity:.8; font-size:14px; text-decoration:none; }
footer nav a:hover{ color:var(--orange); opacity:1; }
footer .legal{ border-top:1px solid rgba(255,255,255,.1); padding-top:20px; font-size:12px; color:rgba(255,255,255,.6); max-width:820px; margin:0 auto; }

@media (max-width:768px){
  header{ padding:0 16px; height:64px; }
  .logo{ font-size:22px; }
  .btn{ padding:10px 16px; font-size:13px; }
  main{ padding:36px 16px 60px; }
  main h1{ font-size:30px; }
}
