:root{color-scheme:light;font-family:-apple-system,BlinkMacSystemFont,"Helvetica Neue",Helvetica,Arial,sans-serif;font-synthesis:none;-webkit-font-smoothing:antialiased;color:#254e70;background:#f5f5f2}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100svh;display:flex;flex-direction:column;background:#f5f5f2}header,footer{width:min(1160px,calc(100% - 112px));margin-inline:auto}header{height:94px;display:flex;align-items:center}header a{display:block;margin-left:-11px;line-height:0;outline-offset:4px;border-radius:6px}header svg{width:240px;height:auto;display:block}a:focus-visible{outline:2px solid #254e70}main{flex:1;display:grid;place-items:center;padding:60px 32px 100px}h1{margin:0;font-size:clamp(40px,5vw,80px);line-height:1.13;letter-spacing:-.055em;font-weight:600;text-align:center}h1 > span{display:block;color:#254e70}h1 > span+span{color:#487b9b;margin-top:6px}@supports(background-clip:text){h1 > span{background:linear-gradient(110deg,#11212d 0%,#254e70 55%,#487b9b 100%);background-clip:text;-webkit-background-clip:text;color:transparent}h1 > span+span{color:transparent;background-image:linear-gradient(110deg,#254e70 0%,#487b9b 55%,#4a5c6a 100%)}}.mobile{display:none}footer{height:72px;font-size:11px;color:#4a5c6a;display:flex;align-items:center}@media(max-width:760px){header,footer{width:calc(100% - 40px)}header{height:84px}header a{margin-left:-8px}main{padding:50px 20px 84px}h1{font-size:clamp(31px,9.74vw,52px);line-height:1.09;letter-spacing:-.05em}.mobile{display:block}h1 > span+span{margin-top:20px}footer{height:64px;font-size:10px}}@media(prefers-contrast:more){h1 > span,h1 > span+span{background:none;color:#11212d}footer{color:#253745}}

.headline-line{position:relative;isolation:isolate;overflow:clip}
.shine-window{position:absolute;inset:0;display:block;pointer-events:none;opacity:0;mask-image:linear-gradient(105deg,transparent 29%,#000 46%,#000 54%,transparent 71%);-webkit-mask-image:linear-gradient(105deg,transparent 29%,#000 46%,#000 54%,transparent 71%);animation:light-pass 8s linear .7s infinite}
.shine-text{display:block;color:rgba(255,255,255,.75);animation:light-counterpass 8s linear .7s infinite}
.headline-line + .headline-line .shine-window,.headline-line + .headline-line .shine-text{animation-delay:.95s}
@keyframes light-pass{0%,8%{transform:translateX(-85%);opacity:0}12%{opacity:1}41%{opacity:1}45%,100%{transform:translateX(85%);opacity:0}}
@keyframes light-counterpass{0%,8%{transform:translateX(85%)}45%,100%{transform:translateX(-85%)}}

@media(prefers-reduced-motion:reduce){.shine-window{display:none}.shine-window,.shine-text{animation:none}}
@media(prefers-contrast:more){.shine-window{display:none}}

/* Footer bleu : dimensions et contenu conservés. */
footer{width:100%;margin-inline:0;padding-inline:max(56px,calc((100% - 1160px)/2));background:#254e70;color:#e5ebed}@media(max-width:760px){footer{padding-inline:20px}}

footer{gap:14px}.footer-logo{display:block;width:132px;height:auto;margin-left:-6px}footer small{font-size:11px;letter-spacing:.015em}@media(max-width:760px){footer{gap:12px}.footer-logo{width:120px}footer small{font-size:10px}}


/* Lien des mentions légales dans le pied de page */
footer a{color:inherit;font-size:11px;letter-spacing:.015em;text-decoration:none;margin-left:auto;border-radius:4px;outline-offset:3px}footer a:hover{text-decoration:underline;text-underline-offset:3px}footer a:focus-visible{outline:2px solid #e5ebed}@media(max-width:760px){footer a{font-size:10px}}

/* Page des mentions légales */
main.legal{display:block;place-items:normal;padding:40px 0 96px;width:min(720px,calc(100% - 112px));margin-inline:auto}
.legal h1{text-align:left;font-size:clamp(34px,4vw,48px);letter-spacing:-.04em;line-height:1.1;margin:0 0 40px;color:#11212d}
.legal h2{font-size:17px;font-weight:600;letter-spacing:-.01em;color:#11212d;margin:36px 0 10px}
.legal p{font-size:16px;line-height:1.6;color:#253745;margin:0}
.legal p+p{margin-top:10px}
.legal a{color:#254e70;text-underline-offset:3px}
.legal .maj{margin-top:48px;font-size:13px;color:#4a5c6a}
@media(max-width:760px){main.legal{width:calc(100% - 40px);padding:24px 0 72px}.legal h1{margin-bottom:28px}.legal p{font-size:15px}}


/* Symbole ramené à 1,5 fois la hauteur des lettres (3 novembre 2026) */
header svg{width:226.1px}.footer-logo{width:124.4px}@media(max-width:760px){.footer-logo{width:113.1px}}
