/* Feuille de style partagée des pages légales — charte CIDFL « Marine & Or » */
:root{
  --marine:#1B2B5E;--nuit:#101D42;--or:#D9952B;--or-sombre:#8F5E0C;--champagne:#F0CE8A;
  --ivoire:#F9F5EC;--rouge:#D02C2A;--encre:#25335f;
  --f-titre:"Oswald",sans-serif;--f-edito:"Playfair Display",serif;--f-corps:"Nunito Sans",sans-serif;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--f-corps);font-size:16.5px;line-height:1.7;color:var(--encre);background:var(--ivoire);-webkit-font-smoothing:antialiased}
a{color:var(--or-sombre);text-underline-offset:2px}
a:hover{color:var(--marine)}
:focus-visible{outline:2px solid var(--or);outline-offset:3px;border-radius:2px}
.wrap{width:min(820px,92vw);margin-inline:auto}
.skip{position:fixed;left:12px;top:-60px;z-index:50;background:var(--marine);color:#fff;padding:.6rem 1rem;border-radius:4px;transition:top .2s}
.skip:focus{top:12px}
/* header */
header.lg{background:linear-gradient(160deg,var(--marine),var(--nuit));color:#fff;padding:1.1rem 0}
header.lg .wrap{display:flex;align-items:center;gap:.7rem}
header.lg .emblem{width:42px;height:42px;flex:none}
header.lg .wordmark{font-family:var(--f-titre);font-weight:700;font-size:1.4rem;letter-spacing:.04em;color:#fff;text-decoration:none}
header.lg .idot{color:var(--rouge)}
header.lg small{display:block;font-family:var(--f-titre);font-weight:400;font-size:.54rem;letter-spacing:.16em;text-transform:uppercase;color:var(--champagne);margin-top:.2rem}
header.lg .back{margin-left:auto;font-family:var(--f-titre);letter-spacing:.09em;text-transform:uppercase;font-size:.78rem;color:var(--champagne);text-decoration:none;border:1px solid rgba(240,206,138,.5);padding:.55rem 1.1rem;border-radius:999px;transition:background .25s,color .25s}
header.lg .back:hover{background:var(--or);color:var(--nuit);border-color:var(--or)}
/* hero titre */
.lg-hero{background:linear-gradient(180deg,var(--marine),#22356e);color:#fff;padding:clamp(2.5rem,6vw,4rem) 0}
.lg-hero .eyebrow{font-family:var(--f-titre);font-weight:500;letter-spacing:.2em;text-transform:uppercase;font-size:.78rem;color:var(--champagne);margin-bottom:.8rem}
.lg-hero h1{font-family:var(--f-titre);font-weight:600;text-transform:uppercase;letter-spacing:.02em;line-height:1.1;font-size:clamp(1.9rem,5vw,2.8rem);color:#fff}
.lg-hero p{margin-top:1rem;max-width:44rem;color:#D8D3C4}
/* corps */
main.lg{padding:clamp(2.5rem,6vw,4.5rem) 0 4rem}
main.lg section{margin-bottom:2.6rem}
main.lg h2{font-family:var(--f-titre);font-weight:600;text-transform:uppercase;letter-spacing:.03em;font-size:1.25rem;color:var(--marine);margin-bottom:.9rem;display:flex;align-items:center;gap:.7rem}
main.lg h2::before{content:"";width:22px;height:2px;background:linear-gradient(90deg,var(--or),var(--champagne));border-radius:2px;flex:none}
main.lg h3{font-family:var(--f-titre);font-weight:600;text-transform:uppercase;letter-spacing:.03em;font-size:.95rem;color:var(--or-sombre);margin:1.4rem 0 .5rem}
main.lg p{margin-bottom:.9rem}
main.lg ul{margin:.4rem 0 1rem 1.3rem}
main.lg li{margin-bottom:.45rem}
main.lg .card{background:#fff;border:1px solid rgba(27,43,94,.1);border-left:3px solid var(--or);padding:1.4rem 1.6rem;box-shadow:0 14px 40px -24px rgba(16,29,66,.4)}
main.lg .todo{color:var(--or-sombre);font-weight:700;background:rgba(240,206,138,.28);padding:0 .3rem;border-radius:3px}
main.lg .updated{font-size:.85rem;color:#77719f;font-style:italic;margin-top:2.5rem}
/* footer */
footer.lg{background:var(--nuit);color:#C8C3B2;padding:2.2rem 0;font-size:.88rem}
footer.lg .wrap{display:flex;flex-wrap:wrap;gap:.6rem 1.6rem;align-items:center;justify-content:center;text-align:center}
footer.lg a{color:var(--champagne);text-decoration:none}
footer.lg a:hover{color:var(--or)}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
