:root{--teal:#276b6d;--teal-dark:#174e50;--sea:#70bdb2;--cream:#fbf1e1;--sand:#f3dfbd;--sun:#f1bd57;--ink:#173f41;--white:#fffdf9;--line:rgba(39,107,109,.18);--shadow:0 24px 70px rgba(23,78,80,.14)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--white);color:var(--ink);font:16px/1.65 system-ui,-apple-system,"Segoe UI",sans-serif}button,a{font:inherit}a{color:inherit}:focus-visible{outline:3px solid var(--sun);outline-offset:4px}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.skip-link{position:absolute;left:-999px}.skip-link:focus{left:1rem;top:1rem;background:white;color:var(--ink);padding:.75rem;z-index:999}.site-header{height:90px;display:flex;align-items:center;justify-content:space-between;max-width:1200px;margin:auto;padding:0 32px;position:sticky;top:0;left:0;z-index:2;}.brand img{display:block;width:min(430px,44vw);height:auto}.site-header nav{display:flex;align-items:center;gap:24px}.site-header nav>a{text-decoration:none;font-size:.92rem}.button{border:0;border-radius:100px;background:var(--teal);color:white;padding:14px 24px;font-weight:750;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;text-align:center;text-decoration:none;transition:.2s transform,.2s background}.button:hover{transform:translateY(-2px);background:var(--teal-dark);color:var(--white)}.button:disabled{opacity:.65}.button-small{padding:10px 18px}.button-ghost{background:transparent;color:var(--teal);border:1px solid var(--line)}.hero{min-height:650px;background:var(--cream);display:grid;grid-template-columns:1.1fr .9fr;align-items:center;padding:80px max(32px,calc((100vw - 1136px)/2));overflow:hidden}.hero-copy{max-width:650px;position:relative;z-index:1}.eyebrow{margin:0 0 12px;text-transform:uppercase;letter-spacing:.14em;font-size:.75rem;font-weight:800;color:var(--teal)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(3rem,6vw,5.5rem);line-height:.98;letter-spacing:-.055em;margin-bottom:28px}h2{font-size:clamp(2rem,4vw,3.5rem);line-height:1.05;letter-spacing:-.04em}.lead{font-size:1.22rem;max-width:590px}.hero-actions{display:flex;gap:12px;margin:34px 0 24px;align-items:baseline;}.microcopy{font-size:.82rem;max-width:560px;opacity:.7}.hero-mark{position:relative;display:grid;place-items:center}.hero-mark:before{content:"";position:absolute;width:480px;height:480px;border-radius:50%;background:var(--sun);opacity:.38}.hero-mark img{position:relative;width:min(420px,38vw);filter:drop-shadow(0 25px 40px rgba(23,78,80,.12))}.schedule{background:var(--teal);color:white;padding:70px max(32px,calc((100vw - 1136px)/2));display:grid;grid-template-columns:.7fr 1.3fr;gap:60px}.schedule .eyebrow{color:var(--sand)}.schedule h2{margin:0}.schedule-details{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.schedule-details p{margin:0;padding-left:20px;border-left:1px solid rgba(255,255,255,.3)}.schedule-details strong,.schedule-details span{display:block}.schedule-details span{font-size:.9rem;opacity:.72}.section{max-width:1200px;margin:auto;padding:110px 32px}.section-heading{max-width:660px;margin-bottom:54px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{border:1px solid var(--line);border-radius:24px;padding:30px;min-height:300px;display:flex;flex-direction:column}.card h3{font-size:1.45rem;margin-top:28px}.card a{margin-top:auto;color:var(--teal);font-weight:750}.card-number{color:#a56b00;font-weight:800}.faq{display:grid;grid-template-columns:.75fr 1.25fr;gap:70px}.faq-list details{border-top:1px solid var(--line);padding:22px 0}.faq-list details:last-child{border-bottom:1px solid var(--line)}summary{cursor:pointer;font-weight:750;font-size:1.12rem;list-style:none;display:flex;justify-content:space-between}summary:after{content:"+";color:var(--teal);font-size:1.4rem}details[open] summary:after{content:"−"}.faq-list p{margin:14px 40px 0 0;opacity:.78}.cta{margin:30px max(20px,calc((100vw - 1200px)/2));padding:64px;background:var(--teal);color:white;border-radius:32px;display:flex;justify-content:space-between;align-items:end;gap:30px}.cta h2{max-width:700px;margin:0}.cta .eyebrow{color:var(--sand)}.button-light{background:var(--cream);color:var(--teal);flex:none}footer{max-width:1200px;margin:auto;padding:60px 32px;display:flex;justify-content:space-between;align-items:end;border-top:1px solid var(--line)}footer img{width:330px;height:auto}footer div{text-align:right;font-size:.85rem}footer p{margin:0}.notice-backdrop{position:fixed;inset:0;background:rgba(10,42,43,.55);backdrop-filter:blur(5px);z-index:100;display:grid;place-items:center;padding:20px}.notice{width:min(560px,100%);background:var(--white);border-radius:28px;padding:42px;box-shadow:var(--shadow);position:relative;border-top:8px solid var(--teal)}.notice-warning{border-color:var(--sun)}.notice-urgent{border-color:#b64b45}.notice-close{position:absolute;right:18px;top:14px;border:0;background:transparent;font-size:2rem;cursor:pointer;color:var(--teal)}.notice-message{margin-bottom:24px}.notice h2{font-size:2rem}
@media(max-width:900px){.site-header nav>a{display:none}.hero{grid-template-columns:1fr;min-height:auto;padding-top:64px}.hero-mark{display:none}.schedule,.faq{grid-template-columns:1fr}.schedule-details{grid-template-columns:1fr}.cards{grid-template-columns:1fr}.card{min-height:220px}.cta{align-items:start;flex-direction:column}.brand img{width:min(430px,55vw)}}
@media(max-width:600px){.site-header{height:74px;padding:0 18px}.brand img{width:190px}.site-header nav{gap:0}.button-small{font-size:.78rem;padding:9px 12px}.hero{padding:58px 20px}.hero-actions{flex-direction:column;align-items:stretch}h1{font-size:3.2rem}.schedule{padding:54px 20px}.section{padding:80px 20px}.cta{padding:40px 24px;margin:20px;border-radius:24px}footer{padding:42px 20px;align-items:start;gap:30px;flex-direction:column}footer img{width:260px}footer div{text-align:left}.notice{padding:34px 24px}}
.legal{max-width:860px}.legal h1{font-size:clamp(2.7rem,6vw,4.7rem);margin-bottom:60px}.legal h2{font-size:1.65rem;margin-top:48px}.legal p{color:#415f60}.legal em{display:block;background:var(--cream);padding:22px;border-radius:14px}
.site-header{max-width:none;margin:0;background:var(--cream);padding-left:max(32px,calc((100vw - 1136px)/2));padding-right:max(32px,calc((100vw - 1136px)/2))}
.site-header .brand{display:flex;align-items:center;height:100%}.site-header .brand img{width:min(320px,38vw);max-height:64px;object-fit:contain}
footer{max-width:none;margin:0;background:var(--cream);padding-left:max(32px,calc((100vw - 1136px)/2));padding-right:max(32px,calc((100vw - 1136px)/2))}
@media(max-width:600px){.site-header{padding-left:18px;padding-right:18px}.site-header .brand img{width:170px;max-height:52px}footer{padding-left:20px;padding-right:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.button:hover{transform:none}}
.hero{background:var(--sun)}.hero-mark{width:min(350px,38vw);aspect-ratio:1;border-radius:50%;overflow:hidden;background:var(--cream);justify-self:center}.hero-mark:before{display:none}.hero-mark img{width:87.5%;height:auto;max-height:177px;object-fit:contain;filter:none}.rdv-action{display:inline-flex;flex-direction:column;align-items:center;gap:5px}.rdv-note{color:var(--teal);font-size:.68rem;font-weight:750;line-height:1.2;text-align:center;white-space:nowrap}.cta .rdv-note{color:var(--cream)}.hero-actions .rdv-action{align-items:stretch}
#horaires {scroll-margin-top: 90px;}

/* Contrastes renforcés selon les seuils WCAG AA signalés par Lighthouse. */
.hero .eyebrow,.hero .rdv-note,.microcopy,.button-ghost{color:var(--teal-dark)}
.microcopy{opacity:1}
.button-ghost{border-color:rgba(23,78,80,.38)}
.schedule-details span{opacity:.88}
.card-number{color:#815300}
