/* Pages juridiques de Myra (confidentialite, conditions, sous-traitance, mentions). */
:root{
  --ink:#F7F2F4; --panel:#FFFCFD; --line:#EAD9DF; --line-soft:#F0E4E9;
  --text:#3A1424; --body:#4A2A36; --muted:#7A5A66; --muted-2:#9A7F89; --accent:#8E2A4F; --accent-2:#A8436A; --ok:#2F8A5B; --warn:#B7791F;
  color-scheme:light;
}
*{ box-sizing:border-box; }
html{ scroll-behavior:smooth; scroll-padding-top:84px; }
@media (prefers-reduced-motion: reduce){ html{ scroll-behavior:auto; } }
body{ margin:0; color:var(--text); font:16px/1.7 'Manrope',ui-sans-serif,system-ui,sans-serif; -webkit-font-smoothing:antialiased; overflow-x:hidden;
  background:radial-gradient(760px 420px at 85% -10%, rgba(142,42,79,0.128), transparent 60%), var(--ink); background-attachment:fixed; }
a{ color:var(--accent-2); }
::selection{ background:var(--accent); color:#fff; }

.nav{ position:sticky; top:0; z-index:20; background:rgba(255,255,255,0.78); backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px); border-bottom:1px solid var(--line-soft); }
.nav .in{ max-width:1120px; margin:0 auto; padding:0 24px; height:64px; display:flex; align-items:center; justify-content:space-between; gap:12px; }
.brand{ display:flex; align-items:center; gap:9px; font-family:'Fraunces',serif; font-weight:600; font-size:19px; color:var(--text); text-decoration:none; }
.brand i{ width:24px; height:24px; border-radius:8px; background:var(--accent); color:#fff; display:grid; place-items:center; font:800 13px 'Manrope',sans-serif; font-style:normal; flex:none; }
.nav .links{ display:flex; gap:4px; overflow-x:auto; scrollbar-width:none; }
.nav .links a{ color:var(--muted); text-decoration:none; font-size:13.5px; font-weight:700; padding:7px 12px; border-radius:999px; white-space:nowrap; }
.nav .links a:hover{ color:var(--text); }
.nav .links a.on{ color:var(--text); background:rgba(142,42,79,0.112); box-shadow:inset 0 0 0 1px rgba(142,42,79,0.32); }
@media (max-width:760px){ .nav .in{ height:auto; flex-wrap:wrap; padding:12px 16px; } .nav .links{ flex-basis:100%; } }

.layout{ max-width:1120px; margin:0 auto; padding:44px 24px 96px; display:grid; grid-template-columns:240px minmax(0,1fr); gap:56px; align-items:start; }
@media (max-width:900px){ .layout{ grid-template-columns:minmax(0,1fr); gap:24px; padding:28px 16px 72px; } .toc{ display:none; } }
.toc{ position:sticky; top:96px; font-size:13.5px; }
.toc b{ display:block; font-size:11.5px; letter-spacing:.12em; text-transform:uppercase; color:var(--muted-2); margin-bottom:10px; }
.toc a{ display:block; color:var(--muted); text-decoration:none; padding:5px 0 5px 12px; border-left:2px solid var(--line-soft); }
.toc a:hover{ color:var(--text); border-left-color:var(--accent); }

.eyebrow{ display:inline-flex; align-items:center; gap:8px; font:700 13px 'Manrope',sans-serif; color:var(--accent); background:var(--panel); border:1px solid var(--line); border-radius:999px; padding:5px 12px; }
.eyebrow::before{ content:none; }
h1,h2,h3{ font-family:'Fraunces',Georgia,serif; font-weight:500; letter-spacing:-.01em; color:var(--text); text-wrap:balance; }
h1{ font-size:clamp(30px,4.2vw,44px); line-height:1.1; margin:0; }
h1 em{ font-style:normal; color:var(--accent); }
.updated{ font-size:13.5px; color:var(--muted); margin:12px 0 0; }
h2{ font-size:23px; margin:52px 0 14px; padding-top:8px; }
h3{ font-size:17px; margin:26px 0 8px; }
p, li, td{ color:var(--body); font-size:15.5px; }
p{ margin:0 0 12px; }
ul,ol{ padding-left:22px; margin:0 0 12px; }
li{ margin-bottom:7px; }
strong{ color:var(--text); }

.summary{ margin-top:28px; border:1px solid rgba(142,42,79,0.24); background:linear-gradient(135deg,rgba(142,42,79,0.096),rgba(142,42,79,0.028)); border-radius:20px; padding:22px 24px; }
.summary h2{ margin:0 0 12px; font-size:19px; padding:0; }
.summary ul{ list-style:none; padding:0; margin:0; display:grid; gap:10px; }
.summary li{ display:flex; gap:12px; margin:0; }
.summary li::before{ content:"✓"; flex:none; width:22px; height:22px; border-radius:50%; display:grid; place-items:center; font-size:12px; font-weight:800; background:rgba(47,138,91,.16); color:var(--ok); margin-top:2px; }

.draft{ margin-top:22px; display:flex; gap:12px; padding:14px 18px; border-radius:14px; border:1px solid rgba(183,121,31,.35); background:rgba(183,121,31,.07); font-size:14px; color:#7A4B0E; }
.todo{ background:rgba(183,121,31,.16); color:#7A4B0E; border-radius:6px; padding:1px 6px; font-weight:700; }

.table{ overflow-x:auto; margin:14px 0 18px; border:1px solid var(--line); border-radius:16px; }
table{ width:100%; border-collapse:collapse; min-width:620px; }
th{ text-align:left; font-size:12px; letter-spacing:.06em; text-transform:uppercase; color:var(--muted-2); font-weight:800; padding:12px 14px; background:rgba(58,20,36,0.03); border-bottom:1px solid var(--line); }
td{ padding:12px 14px; border-top:1px solid var(--line-soft); vertical-align:top; font-size:14.5px; }
tr:first-child td{ border-top:none; }
td b{ color:var(--text); }

.card{ border:1px solid var(--line); background:linear-gradient(180deg,rgba(255,252,253,0.9),rgba(255,252,253,0.9)); border-radius:18px; padding:20px 22px; margin:14px 0 18px; }
.copybox{ position:relative; }
.copybox pre{ white-space:pre-wrap; font-family:'Manrope',sans-serif; font-size:14px; line-height:1.65; color:var(--body); background:rgba(255,255,255,0.7); border:1px solid var(--line); border-radius:14px; padding:18px 18px 18px; margin:0; }
.btn{ display:inline-flex; align-items:center; gap:8px; border:none; cursor:pointer; font:inherit; font-weight:800; font-size:13.5px; padding:9px 16px; border-radius:999px; background:var(--accent); color:#fff; text-decoration:none; }
.copybox .btn{ margin-top:10px; }

footer.legal{ border-top:1px solid var(--line-soft); padding:26px 24px 40px; text-align:center; font-size:13px; color:var(--muted-2); }
footer.legal a{ color:var(--muted); margin:0 8px; text-decoration:none; }
footer.legal a:hover{ color:var(--text); }

main{ min-width:0; }
