@font-face{font-family:Montserrat;src:url('assets/montserrat.ttf') format('truetype');font-weight:400;font-display:swap}@font-face{font-family:Montserrat;src:url('assets/montserrat-bold.ttf') format('truetype');font-weight:700 900;font-display:swap}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;font-family:Montserrat,Arial,sans-serif;color:#0B2545;background:#fff;line-height:1.65}a{color:inherit;text-underline-offset:4px}a:focus-visible,summary:focus-visible{outline:3px solid #13866f;outline-offset:5px}.wrap{max-width:1180px;margin:auto;padding-left:36px;padding-right:36px}header{min-height:105px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{text-decoration:none;font-size:21px;font-weight:800;letter-spacing:1px;line-height:1.25}.brand span{display:block;font-size:13px;letter-spacing:5px;color:#117c68}nav{display:flex;align-items:center;gap:30px;font-size:13px}nav a{text-decoration:none}.phone{font-weight:700;border:1px solid #d9e2e8;padding:12px 18px;border-radius:6px}.hero{display:grid;grid-template-columns:1fr 1fr;max-width:1440px;margin:auto;background:#f2f6f7}.hero-copy{padding:60px 42px 64px max(36px,calc((100vw - 1108px)/2))}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:700;color:#117c68;margin:0 0 17px}h1,h2,h3{line-height:1.15;letter-spacing:-1.3px;margin:0 0 22px}h1{font-size:clamp(34px,3.7vw,54px);font-weight:800}h1 span{color:#117c68}h2{font-size:36px}h3{font-size:24px;letter-spacing:-.5px}.lead{font-size:16px;max-width:450px;margin-bottom:27px}.actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.btn{display:inline-flex;align-items:center;justify-content:center;gap:18px;border-radius:6px;padding:16px 20px;background:#1ABC9C;color:#0B2545;font-weight:700;text-decoration:none;font-size:13px;border:1px solid #1ABC9C;line-height:1.5}.btn:hover{background:#16aa8c}.outline{background:transparent;border-color:#b7c8d1}.outline:hover{background:#e5f2ef}.fine{font-size:11px;color:#526374;line-height:1.7}.hero .fine{margin-top:22px}.hero-photo{position:relative;min-height:560px}.hero-photo img{width:100%;height:100%;position:absolute;object-fit:cover}.photo-label{position:absolute;bottom:32px;left:32px;right:32px;padding:22px;background:#0b2545e8;color:#fff;font-size:11px;letter-spacing:2px}.photo-label span{display:block;font-size:18px;letter-spacing:0;margin-top:4px}.strip{background:#0B2545;color:#fff}.strip-inner{display:flex;justify-content:space-between;padding-top:22px;padding-bottom:22px;font-size:12px}.strip span:before{content:'✓';color:#1ABC9C;margin-right:13px}.section{padding-top:80px;padding-bottom:80px}.projects{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:32px}.card{padding:36px;border:1px solid #dce5ea;border-radius:10px}.featured{border-top:4px solid #1ABC9C;background:#f5faf9}.number{display:block;font-size:11px;letter-spacing:2px;margin-bottom:22px;color:#526374}.card p{font-size:14px}.text-link{font-weight:700;font-size:13px}.card .fine{font-size:11px;margin-bottom:0}.tariff{background:#0B2545;color:white}.tariff .eyebrow{color:#1ABC9C}.section-head{display:grid;grid-template-columns:1.2fr 1fr;gap:70px;align-items:center}.section-head>p{font-size:14px;color:#c7d5e0}.prices{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #446077;border-bottom:1px solid #446077;margin-top:28px}.prices>div{padding:28px 30px;border-right:1px solid #446077}.prices>div:first-child{padding-left:0}.prices>div:last-child{border:0}.prices span{font-size:10px;letter-spacing:2px;color:#c7d5e0}.prices p{font-size:12px;margin:14px 0 0}.prices strong{display:block;font-size:46px;line-height:1.2;letter-spacing:-2px}.supplement{color:#1ABC9C;font-weight:700}.conditions{font-size:12px;max-width:860px;color:#d0dce5;margin-bottom:25px}.diagnostics{display:grid;grid-template-columns:1fr 1fr;gap:70px}.diagnostics>div>p{font-size:14px}.facts details{border-bottom:1px solid #dce5ea;padding:18px 0}.facts details:first-child{padding-top:0}summary{font-size:14px;font-weight:700;cursor:pointer}.facts details p{font-size:13px;color:#526374}.secondary{background:#edf5f3;padding:50px 0}.secondary-inner{display:flex;align-items:center;justify-content:space-between;gap:40px}.secondary h2{font-size:28px}.secondary p{font-size:13px;max-width:590px}.contact h2{font-size:40px}.contact>p{font-size:14px}.contact .actions{margin-top:28px;gap:24px}footer{border-top:1px solid #dce5ea;font-size:12px;padding:30px 0}.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:24px}footer span{font-size:10px;color:#526374}footer a{margin-left:25px}.skip{position:absolute;left:15px;top:-100px;background:white;padding:10px;z-index:10}.skip:focus{top:12px}.mobile-contact{display:none}.legal{max-width:850px;min-height:70vh}.legal h1{font-size:38px}.legal h2{font-size:23px;margin-top:32px}.notice{padding:20px;background:#fff3d8;border-left:4px solid #ab791f;font-size:14px}@media(max-width:850px){.wrap{padding-left:24px;padding-right:24px}header{min-height:88px}nav{gap:12px}nav>a:not(.phone){display:none}.hero-copy{padding:40px 24px}.hero-photo{min-height:470px}.hero{grid-template-columns:1fr 1fr}h1{font-size:36px}h2{font-size:30px}.diagnostics{gap:32px}.section-head{gap:30px}.secondary-inner{display:block}.secondary .btn{margin-top:15px}.card{padding:26px}.btn{font-size:12px;padding:14px}.prices strong{font-size:36px}}@media(max-width:600px){header{gap:10px}.brand{font-size:17px}.brand span{font-size:10px;letter-spacing:4px}.phone{font-size:11px;padding:10px}.hero{display:flex;flex-direction:column}.hero-copy{padding:38px 24px}h1{font-size:39px}.hero-photo{min-height:280px}.photo-label{bottom:20px;left:24px;right:24px;padding:14px}.photo-label span{font-size:15px}.hero .actions{align-items:stretch;flex-direction:column}.strip-inner{gap:16px;flex-wrap:wrap;font-size:10px;padding-top:18px;padding-bottom:18px}.strip span:before{margin-right:6px}.section{padding-top:50px;padding-bottom:50px}.projects,.section-head,.diagnostics{grid-template-columns:1fr;gap:24px}h2,.contact h2{font-size:29px}.prices>div{padding:22px 10px}.prices strong{font-size:29px;letter-spacing:-1px}.prices span{font-size:8px;letter-spacing:.6px}.prices p{font-size:10px}.section-head>p{margin-top:0}.footer-inner{display:block}footer a{display:inline-block;margin:10px 20px 0 0}body{padding-bottom:62px}.mobile-contact{display:flex;position:fixed;bottom:0;left:0;right:0;background:#fff;border-top:1px solid #dce5ea;z-index:5}.mobile-contact a{width:50%;text-align:center;padding:17px 10px;font-size:12px;font-weight:700;text-decoration:none}.mobile-contact a:last-child{background:#1ABC9C}.legal h1{font-size:30px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.dpe-offer{margin:28px 0;padding:26px;border:1px solid #446077;border-radius:8px}.dpe-offer h3{font-size:24px;letter-spacing:-.5px;margin-bottom:12px}.dpe-offer p{font-size:12px;color:#d0dce5}.dpe-offer .outline{color:white}.dpe-offer .outline:hover{color:#0B2545}

.date-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:34px}
.date-grid article{padding:24px 20px;border:1px solid #446077;border-radius:8px;min-height:190px}
.date-grid article span{display:block;color:#1ABC9C;font-size:10px;font-weight:700;letter-spacing:1px;line-height:1.5;margin-bottom:18px}
.date-grid article strong{font-size:20px}
.date-grid article p{font-size:12px;color:#d0dce5;line-height:1.65}
.tariff .conditions{max-width:none}
.strip-inner span:nth-child(2){color:#1ABC9C}
@media(max-width:600px){.date-grid{grid-template-columns:1fr}.date-grid article{min-height:auto;padding:20px}.date-grid article span{margin-bottom:10px}}

.date-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:34px}
.date-grid article{padding:24px 20px;border:1px solid #446077;border-radius:8px;min-height:190px}
.date-grid article span{display:block;color:#1ABC9C;font-size:10px;font-weight:700;letter-spacing:1px;line-height:1.5;margin-bottom:18px}
.date-grid article strong{font-size:20px}
.date-grid article p{font-size:12px;color:#d0dce5;line-height:1.65}
.tariff .conditions{max-width:none}
.strip-inner span:nth-child(2){color:#1ABC9C}
@media(max-width:600px){.date-grid{grid-template-columns:1fr}.date-grid article{min-height:auto;padding:20px}.date-grid article span{margin-bottom:10px}}

.date-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:34px}
.date-grid article{padding:24px 20px;border:1px solid #446077;border-radius:8px;min-height:190px}
.date-grid article span{display:block;color:#1ABC9C;font-size:10px;font-weight:700;letter-spacing:1px;line-height:1.5;margin-bottom:18px}
.date-grid article strong{font-size:20px}
.date-grid article p{font-size:12px;color:#d0dce5;line-height:1.65}
.tariff .conditions{max-width:none}
.strip-inner span:nth-child(2){color:#1ABC9C}
@media(max-width:600px){.date-grid{grid-template-columns:1fr}.date-grid article{min-height:auto;padding:20px}.date-grid article span{margin-bottom:10px}}

/* Logo de marque validé par le client */
.site-logo{display:block;width:clamp(180px,23vw,280px);height:auto;max-height:none;object-fit:contain}.brand{display:inline-flex;align-items:center;min-width:0}.hero-copy{padding-top:52px;padding-bottom:54px}.section{padding-top:68px;padding-bottom:68px}@media(max-width:600px){.site-logo{width:min(210px,48vw);max-height:none}.hero-copy{padding-top:34px;padding-bottom:38px}.section{padding-top:44px;padding-bottom:44px}}

/* Parcours et offres commerciales */
.choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:28px}.choice{display:flex;flex-direction:column;gap:14px;min-height:190px;padding:28px 30px;border:1px solid #dce5ea;border-radius:10px;background:#f7fafb;text-decoration:none;transition:transform .18s ease,border-color .18s ease}.choice:hover{transform:translateY(-2px);border-color:#1ABC9C}.choice-primary{background:#edf8f5;border:2px solid #1ABC9C}.choice strong{font-size:clamp(22px,2.5vw,30px);line-height:1.2;letter-spacing:-.6px}.choice>span:last-child{font-size:14px}.choice-note{margin-top:18px}.offers-title{margin:30px 0 18px}.dpe-offer{display:flex;justify-content:space-between;align-items:center;gap:22px;margin:22px 0 30px;padding:24px 28px;background:#1ABC9C;color:#0B2545;border:0}.dpe-offer h3{font-size:clamp(21px,2.3vw,27px);margin:0 0 8px}.dpe-offer p{margin:0 0 4px;color:#0B2545}.dpe-offer .outline{border-color:#0B2545;color:#0B2545;white-space:nowrap}.dpe-offer .outline:hover{background:#0B2545;color:white}.offer-kicker{font-size:10px!important;letter-spacing:1.7px;font-weight:800}.offer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:22px 0}.offer-card{background:white;color:#0B2545;border-radius:10px;padding:24px 23px;display:flex;flex-direction:column;align-items:flex-start;box-shadow:0 10px 30px #00162a28}.offer-highlight{outline:2px solid #1ABC9C}.offer-number{font-size:10px;letter-spacing:1px;font-weight:700;color:#117c68;min-height:28px}.offer-card h3{font-size:20px;letter-spacing:-.5px;margin:12px 0 16px;min-height:48px}.offer-price{font-size:40px;line-height:1.1;letter-spacing:-1.7px}.offer-price small{display:block;font-size:10px;letter-spacing:.5px;font-weight:700;text-transform:uppercase;margin-bottom:4px}.offer-card ul{padding-left:20px;margin:18px 0;line-height:1.8;font-size:13px}.offer-card li::marker{color:#16aa8c}.offer-link{margin-top:auto;font-weight:700;font-size:13px;color:#117c68}.offer-conditions{font-size:12px;max-width:940px;color:#d0dce5;line-height:1.7;margin:20px 0}.dates .section-head{margin-bottom:28px}.dates .section-head>p{color:#526374}.dates .date-grid article{border-color:#dce5ea;background:#f6f9fa}.dates .date-grid article span{color:#117c68}.dates .date-grid article p{color:#526374}.dates .fine{margin-top:20px}
@media(max-width:850px){.offer-grid{grid-template-columns:1fr}.offer-card h3{min-height:auto}.offer-card{padding:24px}.choice{padding:24px}.dpe-offer{align-items:flex-start;flex-direction:column}}
@media(max-width:600px){.choice-grid{grid-template-columns:1fr;gap:14px}.choice{min-height:156px}.dpe-offer{padding:20px}.offer-price{font-size:36px}.offer-card h3{font-size:19px}.offer-card ul{margin:14px 0}}

/* Sales packages: visible photo bands, clearer labels and direct conversion buttons. */
.offer-card{padding:0;overflow:hidden}
.offer-visual{height:178px;width:100%;display:flex;align-items:flex-end;padding:20px 22px;background-size:cover;background-position:center;position:relative;isolation:isolate}
.offer-visual::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#0b254512 5%,#0b2545d9 100%)}
.offer-visual span{font-size:27px;line-height:1.1;letter-spacing:1px;font-weight:800;color:#fff;text-shadow:0 2px 9px #00162a88}
.offer-visual-1{background-image:url("https://images.unsplash.com/photo-1758448617677-2f8bebc56d9e?auto=format&fit=crop&w=1200&q=82")}
.offer-visual-2{background-image:url("https://images.unsplash.com/photo-1780686616260-2944a28024e1?auto=format&fit=crop&w=1200&q=82")}
.offer-visual-3{background-image:url("https://images.unsplash.com/photo-1762419371724-62026e913a70?auto=format&fit=crop&w=1200&q=82")}
.offer-content{padding:23px;display:flex;flex-direction:column;align-items:flex-start;flex:1;width:100%}
.offer-content h3{margin:0 0 16px;min-height:72px}
.offer-price{margin-top:auto}
.offer-link{margin-top:20px;width:100%;justify-content:space-between;color:#0B2545;text-decoration:none;font-size:14px;padding:15px 17px}
.offer-card ul{width:100%}
@media(max-width:600px){.offer-card{padding:0}.offer-visual{height:160px;padding:18px}.offer-visual span{font-size:25px}.offer-content{padding:22px}.offer-content h3{min-height:0}}
/* Centered price labels on each package photo. */
.offer-visual{height:210px;align-items:center;justify-content:center;text-align:center;padding:20px}
.offer-visual::before{background:linear-gradient(180deg,#0b25454d 0%,#0b2545b8 100%)}
.offer-visual-copy{display:flex;flex-direction:column;align-items:center;gap:10px;max-width:100%}
.offer-visual-name{display:inline-block;padding:6px 12px;border-radius:4px;background:#1ABC9C;color:#0B2545;font-size:14px;line-height:1.2;letter-spacing:2px;font-weight:800}
.offer-visual-price{font-size:36px;line-height:1.05;letter-spacing:-1px;font-weight:800;color:#fff;text-shadow:0 2px 12px #00162a9c}
.offer-visual-2{background-image:url("https://images.unsplash.com/photo-1769801345316-d8ad2a54a9af?auto=format&fit=crop&fm=jpg&ixlib=rb-4.1.0&q=82&w=1200")}
@media(max-width:600px){.offer-visual{height:180px}.offer-visual-name{font-size:13px}.offer-visual-price{font-size:32px}}
/* Larger, clearer diagnostic checklist with a compact checked-box icon. */
.offer-card ul{list-style:none;padding:0;margin:20px 0;font-family:Arial,sans-serif;font-size:15px;font-weight:600;line-height:1.75;color:#263c52}
.offer-card li{display:flex;align-items:flex-start;gap:10px;margin:8px 0}
.offer-card li::before{content:"✓";display:inline-grid;place-items:center;flex:0 0 20px;width:20px;height:20px;margin-top:1px;border:0;border-radius:5px;background:#25D366;color:#fff;font-family:Arial,sans-serif;font-size:14px;font-weight:700;line-height:1}
/* Clear sales-offer grouping, shared diagnostic rows, and aligned action buttons. */
.offers-title{text-align:center;margin:8px 0 22px;font-size:24px}
.offer-card li:not(.diagnostic-spacer){white-space:nowrap;font-size:14px}
.offer-card li.diagnostic-spacer{height:26px;min-height:26px;list-style:none}
.offer-card li.diagnostic-spacer::before{content:none}
.offer-content .offer-link{margin-top:auto}
@media(max-width:850px){.offer-card li:not(.diagnostic-spacer){white-space:normal}}

/* Link to the ministry directory, without using the State's protected brand block. */
.certification-link{display:inline-flex;align-items:center;gap:10px;margin-top:17px;padding:17px 15px 12px;border:1px solid #cbd9df;border-radius:8px;background:linear-gradient(90deg,#173a70 0 33.33%,#fff 33.33% 66.66%,#e34249 66.66% 100%) top/100% 5px no-repeat,linear-gradient(90deg,#173a70 0 33.33%,#fff 33.33% 66.66%,#e34249 66.66% 100%) bottom/100% 5px no-repeat,#fff;text-decoration:none;color:#0B2545;font-size:13px;font-weight:700;box-shadow:0 5px 18px #0b25450d;transition:border-color .18s,transform .18s}
.certification-link:hover,.certification-link:focus-visible{border-color:#1ABC9C;transform:translateY(-1px)}
.certification-link span{color:#117c68;font-size:16px}
@media(max-width:600px){.certification-link{margin-top:13px;padding:11px 12px;font-size:12px}}