/* Jonction — pages légales, bandeau cookies (thème sombre) */
mark.todo{background:rgba(251,191,36,.14);color:#FCD34D;border:1px dashed rgba(251,191,36,.55);border-radius:6px;padding:1px 6px;font-weight:600;font-size:.95em}
.legal{max-width:860px}
.legal h2{scroll-margin-top:90px}
.legal h3{color:#fff;font-size:1.15rem;margin-top:26px}
.legal dl{display:grid;grid-template-columns:minmax(170px,240px) 1fr;gap:8px 18px;margin:16px 0;padding:18px 20px;background:var(--glass,rgba(16,30,62,.55));border:1px solid var(--line,rgba(148,184,232,.16));border-radius:14px}
.legal dt{color:var(--muted,#A9B9CF);font-size:.9rem}
.legal dd{margin:0;color:#E3EBF7}
.legal table{width:100%;border-collapse:collapse;margin:16px 0;font-size:.92rem}
.legal th,.legal td{border:1px solid var(--line,rgba(148,184,232,.16));padding:10px 12px;text-align:left;vertical-align:top;color:#C9D6E8}
.legal th{background:rgba(22,40,80,.62);color:#fff}
.legal .table-wrap{overflow-x:auto}
.legal .updated{color:var(--muted,#A9B9CF);font-size:.88rem}
.legal-toc{display:flex;flex-wrap:wrap;gap:8px 16px;margin:10px 0 0;padding:0;list-style:none;font-size:.9rem}
@media (max-width:640px){.legal dl{grid-template-columns:1fr}.legal dt{margin-top:6px}}
/* liens légaux du pied de page */
.footer-legal{display:flex;flex-wrap:wrap;gap:6px 20px;margin-top:30px;font-size:.86rem}
.footer-legal a{color:#C3D2E6!important}
.footer-legal button{background:none;border:0;padding:0;color:#C3D2E6;font-size:inherit;text-decoration:none}
.footer-legal button:hover{text-decoration:underline;color:#fff}
/* mention RGPD formulaire */
.rgpd-info{font-size:.82rem;color:var(--muted,#A9B9CF);margin:6px 0 14px;line-height:1.55}
/* bandeau de consentement */
.cc-banner{position:fixed;left:16px;right:16px;bottom:16px;z-index:9999;max-width:760px;margin:0 auto;background:rgba(9,17,36,.97);border:1px solid rgba(148,184,232,.28);border-radius:18px;box-shadow:0 24px 60px rgba(0,0,0,.6);padding:22px 24px;color:#E3EBF7;font-size:.92rem;line-height:1.55;backdrop-filter:blur(10px)}
.cc-banner h2{margin:0 0 8px;font-size:1.1rem;color:#fff}
.cc-banner p{margin:0 0 12px;color:#C9D6E8}
.cc-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
.cc-btn{flex:1 1 150px;padding:12px 16px;border-radius:12px;font-weight:700;font-size:.92rem;border:1px solid rgba(148,184,232,.4);background:rgba(255,255,255,.06);color:#fff;cursor:pointer;transition:background .2s,border-color .2s}
.cc-btn:hover{background:rgba(255,255,255,.12);border-color:rgba(34,211,238,.6)}
.cc-btn.cc-link{flex:0 1 auto;background:none;border-color:transparent;text-decoration:underline;color:#7CC4FF}
.cc-panel{margin-top:12px;border-top:1px solid rgba(148,184,232,.16);padding-top:12px}
.cc-cat{display:flex;gap:12px;align-items:flex-start;padding:8px 0}
.cc-cat input{margin-top:5px;accent-color:#22D3EE;width:18px;height:18px}
.cc-cat strong{color:#fff}
.cc-cat small{display:block;color:#A9B9CF}
.booking-consent{padding:24px}
.booking-consent .cc-actions .button{margin-top:0}
@media (max-width:560px){.cc-banner{left:8px;right:8px;bottom:8px;padding:18px}.cc-btn{flex:1 1 100%}}
