/* Bandeau non bloquant et preferences, dans les teintes du site. */
.cookie-banner[hidden]{display:none}
.cookie-banner{position:fixed;inset:auto 16px 16px;z-index:200;display:flex;align-items:center;gap:24px;max-height:calc(100dvh - 32px);overflow:auto;background:#120b06;border:1px solid #f3974a55;padding:20px 24px;box-shadow:0 8px 32px #0006}
.cookie-banner>div:first-child{flex:1;min-width:0}
.cookie-banner h2,.cookie-settings h2{font-size:calc(22px * var(--text-scale,1));font-weight:500;line-height:1.2;margin:0 0 10px}
.cookie-banner p,.cookie-settings p{font-size:calc(15px * var(--text-scale,1));line-height:1.55;margin:0}
.cookie-actions{display:flex;flex-wrap:wrap;gap:10px}
.cookie-actions button{flex:1;min-width:130px;min-height:44px;padding:10px 14px;background:#4a2c17;border:1px solid #916340;border-radius:2px;color:#fff!important;font-size:calc(15px * var(--text-scale,1));cursor:pointer}
.cookie-actions button:hover{background:#604026}
.cookie-banner a,.cookie-settings a{text-decoration:underline;text-underline-offset:3px}
.cookie-settings{width:min(640px,calc(100% - 32px));max-height:calc(100dvh - 32px);padding:24px;background:#120b06;border:1px solid #f3974a55;border-radius:2px;overflow:auto}
.cookie-settings::backdrop{background:#000a}
.cookie-settings form{display:block}
.cookie-settings .cookie-category{display:block;margin:20px 0;padding:16px 0;border-top:1px solid #f3974a33}
.cookie-settings h3{font-size:calc(18px * var(--text-scale,1));font-weight:500;margin:0 0 8px}
.cookie-settings .cookie-option{display:flex;gap:14px;align-items:flex-start;font-size:calc(16px * var(--text-scale,1));line-height:1.5;cursor:pointer}
.cookie-option input{flex:none;width:22px;height:22px;min-height:0;margin:3px 0;accent-color:#f3974a}
.cookie-option span span{display:block;margin-top:8px;font-size:calc(15px * var(--text-scale,1))}
.cookie-settings .cookie-actions{margin-top:22px}
.cookie-manage{font:inherit;color:inherit;background:transparent;border:0;padding:7px 0;text-decoration:underline;text-underline-offset:4px;cursor:pointer}
.legal-page>.cookie-manage{display:block;margin-top:28px}
.cookie-banner :focus-visible,.cookie-settings :focus-visible,.cookie-manage:focus-visible{outline:2px solid #f3974a;outline-offset:4px}
@media(max-width:1000px){.cookie-banner{flex-direction:column;align-items:stretch;gap:16px}.cookie-actions button{flex:1 1 140px}}
@media(max-width:600px){.cookie-banner{inset:auto 10px 10px;padding:16px;max-height:calc(100dvh - 20px)}.cookie-settings{padding:18px}.cookie-actions button{min-width:0}}
/* Panneau compact a gauche, coordonne aux popups du site. */
.cookie-banner{inset:auto auto 20px 20px;width:min(420px,calc(100vw - 40px));box-sizing:border-box;flex-direction:column;align-items:stretch;gap:18px;padding:22px;background:#120b06;border:1px solid #fde6d126;border-radius:2px;box-shadow:0 12px 36px #0005}
.cookie-banner h2{font-size:calc(21px * var(--text-scale,1));margin-bottom:10px}
.cookie-banner p{font-size:calc(14px * var(--text-scale,1))}
.cookie-banner .cookie-actions{gap:8px}
.cookie-banner .cookie-actions button{flex:1 1 140px;min-width:0;background:#1b120b;border-color:#fde6d130;font-size:calc(14px * var(--text-scale,1))}
.cookie-banner .cookie-actions button:hover{background:#281a10;border-color:#fde6d160}
.cookie-settings{width:min(520px,calc(100% - 32px));background:#120b06;border-color:#fde6d126;box-shadow:0 12px 36px #0005}
.cookie-settings .cookie-actions button{background:#1b120b;border-color:#fde6d130}
.cookie-settings .cookie-actions button:hover{background:#281a10;border-color:#fde6d160}
.legal-brand{display:block;width:clamp(160px,18vw,240px);max-width:75%;margin-bottom:28px}
.legal-brand img{display:block;width:100%;height:auto}
@media(max-width:600px){.cookie-banner{inset:auto auto 10px 10px;width:calc(100vw - 20px);padding:18px;gap:16px}}
/* Navigation commune au bas des pages administratives. */
.legal-bottom-nav{display:flex;align-items:center;flex-wrap:wrap;gap:10px 26px;border-top:1px solid #f3974a33;margin-top:36px;padding-top:20px;font-size:calc(16px * var(--text-scale,1))}
.legal-bottom-nav>a,.legal-bottom-nav>.cookie-manage{display:inline-flex;align-items:center;min-height:44px;padding:7px 0;line-height:1.4}
.legal-bottom-nav [aria-current=page]{text-decoration:none;opacity:.7}
@media(max-width:600px){.legal-bottom-nav{align-items:flex-start;flex-direction:column;gap:4px}}
/* Liens administratifs rapproches du contenu. */
.legal-bottom-nav{margin-top:18px;padding-top:10px;column-gap:26px;row-gap:4px}
.legal-page>p:last-of-type{margin-bottom:10px}