:root{--ink:#142f3a;--muted:#5c6a6d;--paper:#faf9f5;--sand:#eddfc5;--line:#dedfd8}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}img{max-width:100%;display:block}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #b58b40;outline-offset:5px}.wrap{width:min(1280px,calc(100% - 96px));margin:auto}.skip{position:fixed;top:-100px;z-index:100;background:white;padding:16px}.skip:focus{top:0}header{height:92px;background:var(--paper);position:sticky;top:0;z-index:30;border-bottom:1px solid var(--line)}.nav{display:flex;align-items:center;justify-content:space-between;height:100%;gap:28px}.brand{display:flex;align-items:center;gap:13px;white-space:nowrap}.monogram{font:italic 44px Georgia,serif;letter-spacing:-5px;padding-right:5px}.brand strong{font:23px Georgia,serif}.brand small{display:block;font-size:9px;letter-spacing:2px;margin-top:7px}.nav nav{display:flex;gap:25px;font-size:13px}.nav nav a:hover,.text-link:hover,footer a:hover{color:#8b682d}.nav-end{display:flex;align-items:center;gap:26px}.nav-end img,footer img{object-fit:contain;height:auto;width:62px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;min-height:50px;padding:16px 23px;background:var(--ink);color:#fff;font-size:13px;font-weight:600;border:1px solid transparent;border-radius:4px;transition:background .2s,transform .2s}.button:hover{background:#254a56;transform:translateY(-2px)}.button span{font-size:20px;font-weight:400}.sand{background:var(--sand);color:var(--ink);min-height:60px;padding:18px 26px;font-size:15px}.sand:hover{background:#f8edd9}.menu-toggle{display:none}.hero{position:relative;background:var(--ink);color:white;min-height:690px;overflow:hidden}.slides,.hero-shade,.slide{position:absolute;inset:0;width:100%;height:100%}.slide{object-fit:cover;object-position:center 44%;opacity:0;transition:opacity 1.25s ease}.slide.active{opacity:1}.hero-shade{background:linear-gradient(90deg,rgba(10,30,40,.9) 0%,rgba(10,30,40,.73) 36%,rgba(10,30,40,.15) 76%),linear-gradient(0deg,rgba(10,30,40,.65),transparent 35%)}.hero-inner{position:relative;padding-top:82px;padding-bottom:27px}.hero-copy{max-width:700px}.eyebrow{font-size:10px;font-weight:600;letter-spacing:2px;line-height:1.7;margin:0 0 25px}.light{color:#d8e1dd}.eyebrow.light span{display:inline-block;width:7px;height:7px;border-radius:50%;background:#ddc79e;margin-right:10px}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-1.8px}h1{font-size:60px;line-height:1.12;margin:0 0 25px}h1 em,h2 em{font-weight:400;color:#8a7451}h1 em,.contact h2 em{color:var(--sand)}.hero-lead{font-size:16px;line-height:1.8;max-width:480px;color:#e4e8e7;margin:0 0 27px}.hero-note{font-size:11px;color:#e0e5e4;margin:16px 0 0}.hero-note span{margin:0 10px}.hero-bottom{display:flex;justify-content:space-between;align-items:end;margin-top:58px;gap:25px}.discover{font-size:9px;letter-spacing:2px;display:flex;align-items:center;gap:20px}.discover span{font-size:24px}.photo-caption{display:flex;align-items:center;gap:14px;font-size:13px}.photo-caption small{display:block;font-size:8px;letter-spacing:2px;color:#d2dddf;margin-bottom:6px}.pin{font-size:25px;color:var(--sand)}.slide-controls{display:flex;align-items:center;gap:8px;margin-left:18px}.slide-controls[hidden]{display:none}.slide-controls button{width:35px;height:35px;border:1px solid #ffffff55;color:white;background:#142f3a33;border-radius:50%;font-size:17px}.slide-controls button:hover{background:#ffffff33}#slide-count{font-size:10px;letter-spacing:1px;min-width:48px;text-align:center}.assurances{background:#fff;border-bottom:1px solid var(--line)}.assurance-grid{display:grid;grid-template-columns:1fr 1.15fr 1fr;padding:29px 0;gap:35px}.assurance-grid>div{display:flex;align-items:center;gap:17px}.assurance-grid>div+div{border-left:1px solid var(--line);padding-left:32px}.seal{font-size:27px;font-weight:400;color:#967b50}.assurance-grid p{margin:0}.assurance-grid strong{display:block;font-size:13px;font-weight:500}.assurance-grid small{display:block;margin-top:7px;color:var(--muted);font-size:11px}.section{padding:100px 0}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:65px;margin-bottom:42px}.section-heading>p{max-width:380px;line-height:1.8;font-size:14px;color:var(--muted);margin-bottom:6px}h2{font-size:43px;line-height:1.16;margin:0}h3{font-weight:500}p{line-height:1.75}.district-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:25px}.district{grid-column:span 2;min-width:0;background:white;border:1px solid var(--line);border-radius:5px;overflow:hidden}.district:nth-child(4),.district:nth-child(5){grid-column:span 3}.district-photo{height:232px;position:relative;overflow:hidden}.district:nth-child(4) .district-photo,.district:nth-child(5) .district-photo{height:240px}.district-photo img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.district:hover .district-photo img{transform:scale(1.035)}.district-number{position:absolute;left:17px;top:16px;border:1px solid #fff9;color:white;background:#142f3a66;border-radius:50%;height:30px;width:30px;display:grid;place-items:center;font-size:10px}.district-body{padding:24px}.district-sub{font-size:9px;letter-spacing:1.6px;text-transform:uppercase;margin:0 0 9px;color:#687367}.district h3{font:28px Georgia,serif;margin:0 0 14px;letter-spacing:-.6px}.district-body>p:not(.district-sub){color:var(--muted);font-size:13px;line-height:1.8;margin:0 0 22px}.district-body a{border-top:1px solid var(--line);padding-top:16px;display:flex;justify-content:space-between;font-size:11px;font-weight:600}.district-foot{font-size:12px;text-align:center;margin:28px 0 0;color:var(--muted)}.district-foot a{color:var(--ink);text-decoration:underline;text-underline-offset:4px}.approach{background:#eceee8}.approach-grid{display:grid;grid-template-columns:1fr 1fr;gap:125px;align-items:center}.approach h2{font-size:51px}.muted{color:var(--muted);font-size:14px;max-width:405px;margin:25px 0}.text-link{font-size:12px;text-decoration:underline;text-underline-offset:6px;line-height:2}.text-link span{margin-left:24px}.analysis-list article{display:flex;gap:28px;border-bottom:1px solid #cbd2ca;padding:30px 0}.analysis-list article:first-child{padding-top:0}.analysis-list article>span{font:italic 23px Georgia,serif;color:#8a7451}.analysis-list h3{font:24px Georgia,serif;margin:0 0 10px}.analysis-list p{font-size:13px;color:var(--muted);margin:0;max-width:380px}.time-badge{text-align:right}.time-badge strong{font:43px Georgia,serif;display:block;color:#8a7451}.time-badge span{display:block;font-size:11px;margin-top:10px;color:var(--muted)}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:58px}.step-no{display:flex;gap:20px;align-items:center;font:32px Georgia,serif;color:#8a7451;margin-bottom:25px}.step-no i{height:1px;background:var(--line);flex:1}.steps .eyebrow{font-size:9px;letter-spacing:1.3px;margin-bottom:14px}.steps h3{font:24px/1.3 Georgia,serif;margin:0 0 15px}.steps p:last-child{font-size:13px;color:var(--muted)}.about{background:#f0ede5}.about-grid{display:grid;grid-template-columns: .88fr 1fr;gap:95px;align-items:center}.portrait-frame{position:relative;background:white;border-radius:5px;overflow:hidden}.portrait-frame>img{width:100%;height:570px;object-fit:cover;object-position:center 20%}.portrait-caption{position:absolute;bottom:0;padding:55px 30px 27px;width:100%;color:white;background:linear-gradient(transparent,#142f3aee)}.portrait-caption span{font:27px Georgia,serif}.portrait-caption small{display:block;font-size:11px;margin-top:8px}.about-copy>p{font-size:13px;color:var(--muted)}.about-copy>.eyebrow{font-size:10px;color:var(--ink)}.about-copy .intro{font-size:17px;line-height:1.7;color:var(--ink);margin-top:25px}.commitments{list-style:none;padding:0;margin:25px 0}.commitments li{display:flex;gap:18px;margin:19px 0}.commitments li>span{font-size:25px;color:#8a7451;width:24px;flex-shrink:0}.commitments strong{font-size:13px;font-weight:600}.commitments p{font-size:12px;line-height:1.6;color:var(--muted);margin:6px 0 0}.faq-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:95px}.faq-grid>div>p:last-child{font-size:13px;color:var(--muted);margin-top:30px}details{border-bottom:1px solid var(--line)}summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:20px;padding:23px 0;font-size:14px;line-height:1.6}summary::-webkit-details-marker{display:none}summary span{font-size:21px;color:#8a7451}details[open] summary span{transform:rotate(45deg)}details p{font-size:13px;color:var(--muted);margin:0 30px 24px 0}.contact{background:var(--ink);color:white;position:relative}.contact-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:100px;align-items:center}.contact h2{font-size:48px}.contact-grid>div>p:not(.eyebrow){color:#d4dedf;font-size:14px;max-width:450px;margin:25px 0}.contact-grid .small-note{font-size:10px!important;margin:15px 0 0!important}.contact-card{border:1px solid #ffffff30;padding:35px;border-radius:5px}.contact-card .eyebrow{font-size:9px;letter-spacing:1.5px;margin-bottom:24px}.phone{font:30px Georgia,serif;display:flex;justify-content:space-between}.email{display:inline-block;font-size:13px;margin-top:17px;text-decoration:underline;text-underline-offset:5px;overflow-wrap:anywhere}.contact-person{display:flex;align-items:center;gap:15px;border-top:1px solid #ffffff30;margin-top:30px;padding-top:25px}.contact-person img{width:52px;height:52px;object-fit:cover;object-position:center 25%;border-radius:50%}.contact-person strong{font-size:13px;font-weight:400}.contact-person small{display:block;font-size:10px;color:#c8d3d5;margin-top:8px}footer{background:#f8f7f2;padding:38px 0 25px}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-bottom:28px}.footer-top>p{font:italic 16px Georgia,serif;color:var(--muted)}.footer-bottom{border-top:1px solid var(--line);padding-top:22px;display:flex;justify-content:space-between;gap:25px;color:var(--muted);font-size:9px;line-height:1.8}.footer-bottom>div{display:flex;gap:24px}.mobile-bar{display:none}.legal{max-width:900px;padding-top:60px;padding-bottom:70px}.legal h1{font-size:45px;margin-top:40px}.legal h2{font-size:27px;margin-top:35px}.legal p,.legal li{font-size:15px;line-height:1.8}.legal a{text-decoration:underline;text-underline-offset:4px}.legal article{padding:22px 0;border-bottom:1px solid var(--line)}.legal article img{width:240px;border-radius:4px;margin:20px 0}.legal article h2{margin-top:0}.legal article p{overflow-wrap:anywhere}
@media(min-width:1600px){.hero{min-height:770px}.hero-inner{padding-top:115px}.hero-bottom{margin-top:78px}}
@media(max-width:1150px){.wrap{width:calc(100% - 64px)}.nav nav{gap:17px;font-size:12px}.nav-end{gap:18px}.nav-end img{display:none}.nav{gap:15px}h1{font-size:54px}.section{padding:80px 0}.approach-grid,.about-grid,.faq-grid,.contact-grid{gap:55px}.district h3{font-size:25px}.district-body{padding:20px}.assurance-grid{gap:15px}.assurance-grid>div+div{padding-left:20px}.assurance-grid strong{font-size:12px}.hero-bottom{margin-top:65px}}
@media(max-width:850px){header{height:78px}.wrap{width:calc(100% - 44px)}.brand strong{font-size:20px}.brand small{font-size:8px;letter-spacing:1.5px}.monogram{font-size:37px}.nav-end>.button{display:none}.nav-end img{display:block;width:48px}.menu-toggle{display:block;background:none;border:1px solid var(--line);border-radius:4px;width:42px;height:42px;color:var(--ink);font-size:22px}.nav nav{display:none;position:absolute;top:77px;left:0;right:0;background:var(--paper);padding:23px;border-bottom:1px solid var(--line);box-shadow:0 10px 18px #142f3a11;flex-direction:column;gap:0;font-size:15px}.nav nav.open{display:flex}.nav nav a{padding:12px}.hero{min-height:690px}.hero-inner{padding-top:65px}.hero-shade{background:linear-gradient(90deg,#0a1e28dd,#0a1e2850),linear-gradient(0deg,#0a1e28cc,transparent 55%)}h1{font-size:52px}.hero-copy{max-width:630px}.hero-bottom{margin-top:64px}.discover{display:none}.photo-caption{width:100%;justify-content:start}.slide-controls{margin-left:auto}.assurance-grid{grid-template-columns:1fr;gap:22px;padding:30px 0}.assurance-grid>div+div{padding-left:0;border:0}.assurance-grid>div{gap:18px}.assurance-grid strong{font-size:13px}.seal{width:30px;text-align:center}.section-heading{display:block}.section-heading>p{max-width:100%;margin-top:22px}.district-grid{grid-template-columns:repeat(2,1fr);gap:20px}.district,.district:nth-child(4),.district:nth-child(5){grid-column:span 1}.district:last-child{grid-column:span 2}.approach-grid{gap:40px}.approach h2{font-size:41px}.analysis-list h3{font-size:21px}.analysis-list article{gap:16px}.time-badge{text-align:left;margin-top:28px}.time-badge strong{font-size:34px}.steps{gap:25px}.steps h3{font-size:21px}.about-grid{gap:35px}.portrait-frame>img{height:590px}.faq-grid{grid-template-columns:1fr;gap:15px}.contact-grid{grid-template-columns:1fr;gap:40px}.contact-card{max-width:480px}.footer-top>p{display:none}.footer-bottom{flex-direction:column;gap:10px}.mobile-bar{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:40;background:#faf9f5f5;backdrop-filter:blur(10px);border-top:1px solid var(--line);padding:10px 22px calc(10px + env(safe-area-inset-bottom));align-items:center;gap:20px}.mobile-bar>a:first-child{font-size:13px;padding:15px 12px}.mobile-bar .button{flex:1}body{padding-bottom:80px}}
@media(max-width:580px){.wrap{width:calc(100% - 40px)}.nav{gap:10px}.nav-end{gap:12px}.brand{gap:9px}.brand strong{font-size:18px}.brand small{font-size:7px}.monogram{font-size:34px}.nav-end img{width:42px}.hero{min-height:695px}.hero-inner{padding-top:46px;padding-bottom:24px}.hero .eyebrow{font-size:8px;letter-spacing:1.5px;max-width:270px;margin-bottom:25px}.hero .eyebrow span{display:none}h1{font-size:clamp(35px,9.2vw,49px);line-height:1.17;letter-spacing:-1.25px}.hero-lead{font-size:14px;line-height:1.75;max-width:345px;margin-top:25px}.hero .sand{font-size:13px;gap:12px;width:100%;padding:16px 18px;min-height:56px}.hero-note{font-size:9px;line-height:1.8}.hero-note span{margin:0 4px}.hero-bottom{margin-top:48px}.photo-caption{flex-wrap:wrap;gap:10px}.photo-caption>div:not(.slide-controls){font-size:12px}.photo-caption small{font-size:7px}.pin{font-size:23px}.slide-controls{gap:5px;margin-left:auto}.slide-controls button{width:30px;height:30px;font-size:14px}#slide-count{display:none}.assurance-grid{gap:20px}.section{padding:65px 0}h2{font-size:35px;letter-spacing:-1px}.eyebrow{font-size:8px;letter-spacing:1.5px;margin-bottom:18px}.section-heading{margin-bottom:30px}.section-heading>p{font-size:13px}.district-grid{grid-template-columns:1fr;gap:23px}.district,.district:nth-child(4),.district:nth-child(5){grid-column:span 1}.district-photo,.district:nth-child(4) .district-photo,.district:nth-child(5) .district-photo{height:228px}.district-body{padding:24px}.district h3{font-size:28px}.district-foot{text-align:left;line-height:1.9;font-size:11px}.approach-grid{grid-template-columns:1fr;gap:40px}.approach h2{font-size:40px}.analysis-list article{padding:25px 0;gap:23px}.analysis-list h3{font-size:23px}.steps{grid-template-columns:1fr;gap:28px;margin-top:40px}.steps p:last-child{margin-bottom:0}.steps h3{font-size:25px}.step-no{margin-bottom:20px}.about-grid{grid-template-columns:1fr;gap:35px}.portrait-frame>img{height:430px;object-position:center 17%}.about-copy .intro{font-size:16px}.faq-grid{gap:12px}.faq-grid>div>p:last-child{margin-top:20px;font-size:12px}summary{font-size:13px}.contact h2{font-size:37px}.contact-card{padding:25px}.phone{font-size:27px}.contact .sand{font-size:12px;width:100%;gap:10px;padding:16px}.contact .eyebrow{font-size:8px}.footer-top .brand strong{font-size:18px}.footer-top .brand small{font-size:7px}.footer-bottom>div{gap:20px}.legal h1{font-size:35px}.legal h2{font-size:25px}.legal{padding-top:35px}.mobile-bar{padding-left:20px;padding-right:20px;gap:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.button:hover,.district:hover img{transform:none}}

/* V4.1 — lisibilité renforcée sans modifier la hiérarchie visuelle */
.hero-lead{font-size:18px}
.hero-note{font-size:14px;line-height:1.6}
.discover{font-size:12px}
.photo-caption{font-size:16px}
.photo-caption small{font-size:12px}
.assurance-grid strong{font-size:16px}
.assurance-grid small{font-size:16px;line-height:1.55}
.section-heading>p{font-size:17px;line-height:1.7}
.district-sub{font-size:14px;line-height:1.5}
.district-body>p:not(.district-sub){font-size:17px;line-height:1.7}
.district-body a{font-size:16px}
.district-foot{font-size:16px;line-height:1.65}
.muted{font-size:17px;line-height:1.7}
.text-link{font-size:16px}
.analysis-list p{font-size:17px;line-height:1.65}
.time-badge span{font-size:16px;line-height:1.55}
.steps .eyebrow{font-size:14px;line-height:1.5}
.steps p:last-child{font-size:17px;line-height:1.65}
.about-copy>p{font-size:17px;line-height:1.7}
.about-copy>.eyebrow{font-size:14px}
.about-copy .intro{font-size:19px;line-height:1.7}
.commitments strong{font-size:16px}
.commitments p{font-size:16px;line-height:1.65}
.faq-grid>div>p:last-child{font-size:16px;line-height:1.65}
summary{font-size:17px}
details p{font-size:16px;line-height:1.65}
.contact-grid>div>p:not(.eyebrow){font-size:17px;line-height:1.65}
.contact-grid .small-note{font-size:14px!important;line-height:1.6}
.contact-card .eyebrow{font-size:14px}
.email{font-size:16px}
.contact-person strong{font-size:16px}
.contact-person small{font-size:14px}
.footer-bottom{font-size:13px}

@media(max-width:580px){
  .hero .eyebrow{font-size:12px;line-height:1.5}
  .hero-lead{font-size:17px;line-height:1.7}
  .hero .sand{font-size:16px}
  .hero-note{font-size:13px}
  .photo-caption>div:not(.slide-controls){font-size:16px}
  .photo-caption small{font-size:12px}
  .section-heading>p{font-size:17px}
  .district-foot{font-size:16px}
  .about-copy .intro{font-size:18px}
  .faq-grid>div>p:last-child{font-size:16px}
  summary{font-size:16px}
  .contact .sand{font-size:16px}
  .contact .eyebrow{font-size:12px}
  .mobile-bar>a:first-child{font-size:16px}
}
