@font-face{
  font-family:'Inter';
  font-style:normal;font-weight:300 700;font-display:swap;
  src:url('../webfonts/inter-latin.woff2') format('woff2');
}
@font-face{
  font-family:'Newsreader';
  font-style:normal;font-weight:400 600;font-display:swap;
  src:url('../webfonts/newsreader-latin.woff2') format('woff2');
}
@font-face{
  font-family:'Newsreader';
  font-style:italic;font-weight:400 600;font-display:swap;
  src:url('../webfonts/newsreader-italic-latin.woff2') format('woff2');
}

:root{

  --core-oxford:#0b2c4d;
  --core-oxford-2:#0c1c3b;
  --core-primary:#7dcde8;
  --core-primary-dark:#2170e2;
  --core-aqua:#e6edfb;
  --core-aqua-pale:#c9ddf2;
  --core-back:#eef5fb;
  --core-panel:#fdfffe;
  --core-foreground:#0f192c;
  --core-foreground-2:#31465a;
  --core-muted:#5d6c80;
  --core-rule:#e4eaf5;
  --core-rule-2:#d8e1f1;
  --core-primary-pale:#e9f4fd;
  --core-valid:#319f62; --core-valid-wash:#e6f7ee; --core-valid-border:#c3e5d0;
  --core-error:#c05231;   --core-error-wash:#f5ede8;   --core-error-border:#ebcdc1;
  --core-star:#f4a822;

  --core-sp-1:4px; --core-sp-2:8px; --core-sp-3:12px; --core-sp-4:16px; --core-sp-6:24px;
  --core-sp-8:32px; --core-sp-10:40px; --core-sp-12:48px; --core-sp-16:64px;

  --core-r-sm:12px; --core-r-md:16px; --core-r-lg:22px; --core-r-xl:28px; --core-r-2xl:40px; --core-r-pill:999px;

  --core-elev-sm:0 4px 14px rgba(13,38,81,.08);
  --core-elev-md:0 18px 44px rgba(13,38,81,.12);
  --core-elev-lg:0 30px 70px rgba(13,38,81,.17);

  --core-face:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --core-headline:'Newsreader','Iowan Old Style',Georgia,serif;
  --core-font-accent:'Newsreader','Iowan Old Style',Georgia,serif;
  --core-wrap:1200px;
  --core-gap:clamp(16px,4vw,44px);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:76px;overflow-x:hidden;scrollbar-gutter:stable}
body{line-height:1.62;overflow-x:hidden;font-family:var(--core-face);background:var(--core-back);
  margin:0;color:var(--core-foreground);font-size:16.5px;-webkit-font-smoothing:antialiased}
img{display:block;width:100%;height:auto}
a{color:inherit;text-decoration:none}
button{font-family:inherit}
h1,h2{line-height:1.08;font-family:var(--core-headline);font-weight:450;letter-spacing:-.015em;margin:0;font-optical-sizing:auto}
h3{margin:0;font-family:var(--core-face);font-weight:700;line-height:1.25;letter-spacing:-.005em}
::selection{background:var(--core-primary);color:var(--core-oxford)}
:focus-visible{outline:3px solid var(--core-primary-dark);outline-offset:2px;border-radius:4px}

.vue-banniere{position:relative;color:#fdfffe;
  background:var(--core-oxford);
  background-image:linear-gradient(rgba(11,31,60,.84),rgba(10,24,55,.91)),var(--hero-img,linear-gradient(120deg,var(--core-oxford-2),var(--core-oxford)));background-size:cover;background-position:center}
.vue-banniere .zone{padding-block:clamp(88px,9vw,110px) clamp(40px,6vw,64px)}
.vue-banniere h1{font-family:var(--core-headline);font-size:clamp(32px,4.5vw,48px);font-weight:450;margin:8px 0;font-optical-sizing:auto;letter-spacing:-.015em}
.vue-banniere .zone>p{max-width:640px;color:rgba(225,234,253,.84);font-size:17.5px}
.vue-banniere-demande .zone{padding-bottom:clamp(48px,7vw,72px)}
.vue-banniere-demande .banniere-blocs{margin-top:var(--core-sp-4)}
.atout{font-weight:500;display:flex;background:rgba(253,255,254,.11);gap:11px;border:1px solid rgba(253,255,254,.17);font-size:15px;
  align-items:center;border-radius:14px;color:#fdfffe;backdrop-filter:blur(6px);padding:13px 15px}
.atout i{border-radius:50%;width:24px;color:var(--core-oxford);height:24px;font-style:normal;background:var(--core-primary);
  place-items:center;font-size:13px;font-weight:800;display:grid;flex:none}
.principal-nav .bouton{margin-left:8px}
.parcours{margin:0;padding:12px 0 24px;flex-wrap:wrap;font-size:13px;color:rgba(225,234,253,.79);list-style:none;align-items:center;display:flex}
.parcours li+li::before{margin-inline:6px;opacity:.6;content:"\203A"}
.parcours a{color:rgba(225,234,253,.79)}
.parcours a:hover{color:#fdfffe}
.parcours li:last-child{color:#fdfffe;font-weight:600}
.avis-niveau{gap:14px;display:flex;align-items:center;border-left:1px solid var(--core-rule);padding-left:26px}
.marqueur svg,.societe-lieu svg{width:16px;height:16px}
.ouvrage-bande{gap:20px;scrollbar-width:none;overflow-x:auto;scroll-snap-type:x mandatory;
  padding-bottom:8px;display:flex}
.ouvrage-bande::-webkit-scrollbar{display:none}
.ouvrage-cellule{scroll-snap-align:start;background:var(--core-aqua);position:relative;
  border-radius:var(--core-r-xl);box-shadow:var(--core-elev-md);border:1px solid var(--core-rule);overflow:hidden;
  margin:0;flex:0 0 clamp(280px,42%,440px)}
.ouvrage-cellule .cadre{aspect-ratio:4/3;width:100%;object-fit:cover}
.ouvrage-cellule figcaption{position:absolute;left:0;color:#fdfffe;padding:26px 18px 16px;font-weight:600;
  right:0;bottom:0;background:linear-gradient(180deg,transparent,rgba(7,21,46,.8));font-size:15px}
.avis-mention{font-size:13px;color:var(--core-foreground-2)}
.avis-mention strong{font-family:var(--core-headline);font-weight:500;font-size:16px;color:var(--core-foreground)}
.avis-a{color:var(--core-foreground-2)}
.surligne{font-family:var(--core-font-accent);font-style:italic;color:var(--core-primary-dark);font-weight:400}
.bloc-tete{text-align:center;margin:0 auto clamp(32px,5vw,52px);max-width:680px}
.bloc-tete .intitule-2{margin-top:14px}
.bloc-tete .chapo{margin-top:16px}

.incitation-encart{text-align:center;border-radius:var(--core-r-2xl);
  background:linear-gradient(120deg,var(--core-oxford),var(--core-oxford-2));overflow:hidden;padding:clamp(44px,6vw,76px);position:relative}
.incitation-motif{position:absolute;background:radial-gradient(circle,rgba(125,205,232,.3),transparent 70%);top:-40px;pointer-events:none;height:240px;border-radius:50%;
  width:240px;right:-40px}
.incitation-texte{max-width:640px;margin:0 auto;position:relative}
.incitation-texte .intitule-2{color:#fdfffe}
.incitation-texte p{margin:18px 0 32px;font-size:18px;color:rgba(225,234,253,.8)}
.incitation-texte .bouton{margin-top:0}
.label{padding:5px 11px;border-radius:var(--core-r-pill);align-items:center;border:1px solid transparent;display:inline-flex;
  flex:none;font-weight:700;gap:6px;font-size:12px}
.label .voyant{line-height:1;font-size:10px}
.label-dispo{color:var(--core-valid);border-color:var(--core-valid-border);background:var(--core-valid-wash)}
.label-inactif{color:var(--core-error);background:var(--core-error-wash);border-color:var(--core-error-border)}

.ouvrage-entete{margin-bottom:36px;display:flex;flex-wrap:wrap;gap:16px;
  justify-content:space-between;align-items:flex-end}
.ouvrage-entete .intitule-2{margin-top:14px}
.ouvrage-nav{gap:10px;display:flex}
.service-encart{border:1px solid var(--core-rule);box-shadow:var(--core-elev-sm);gap:16px;
  transition:transform .2s,box-shadow .2s;background:var(--core-panel);border-radius:var(--core-r-xl);display:flex;padding:32px;
  flex-direction:column}
.service-encart:hover{transform:translateY(-4px);box-shadow:var(--core-elev-md)}
.service-encart .icone-pave{width:56px;height:56px;border-radius:16px;background:var(--core-primary-pale)}
.service-encart .icone-pave svg{height:26px;width:26px}
.service-encart h3{font-size:21px}
.service-encart>p{margin:0;flex:1;color:var(--core-foreground-2);font-size:15.5px}
.service-encart-phare{color:#fdfffe;border-color:var(--core-oxford);background:var(--core-oxford)}
.service-encart-phare h3{color:#fdfffe;font-family:var(--core-headline);font-weight:450;font-size:26px;letter-spacing:-.015em}
.service-encart-phare>p{color:rgba(225,234,253,.8)}
.service-encart-phare .icone-pave{color:var(--core-primary);background:rgba(125,205,232,.19)}

.devis-encart{box-shadow:var(--core-elev-lg);color:var(--core-foreground);padding:30px;
  border-radius:var(--core-r-xl);background:var(--core-panel);border:1px solid var(--core-rule)}
.devis-encart .intitule-2{font-size:27px;margin:12px 0 4px}
.devis-encart .second{color:var(--core-foreground-2);font-size:15px;margin:0 0 20px}
.devis-encart .mention{color:var(--core-primary-dark)}
.devis-cadre{min-height:520px;border:0;width:100%;border-radius:var(--core-r-md);background:var(--core-aqua)}
.banniere-libelle{text-shadow:0 2px 30px rgba(2,13,32,.42);font-family:var(--core-headline);font-weight:450;line-height:1.02;
  font-optical-sizing:auto;letter-spacing:-.025em;font-size:clamp(40px,6.2vw,70px);margin-top:22px;
  color:#fdfffe}
.banniere-chapo{font-size:clamp(16px,2.1vw,20px);margin-top:22px;max-width:520px;color:rgba(225,234,253,.91)}
.banniere-boutons{align-items:center;flex-wrap:wrap;margin-top:30px;gap:16px;display:flex}
.nav-bouton{box-shadow:var(--core-elev-sm);width:52px;cursor:pointer;display:grid;height:52px;
  background:var(--core-panel);border-radius:50%;place-items:center;color:var(--core-foreground);border:1px solid var(--core-rule);font-size:20px}
.nav-bouton:hover{color:#fdfffe;border-color:var(--core-oxford);background:var(--core-oxford)}
.nav-bouton svg{height:20px;width:20px}
.pave{padding-block:clamp(52px,7.5vw,100px)}
.pave-alt{background:var(--core-panel)}
.panneau-mobile{transition:transform .3s cubic-bezier(.4,0,.2,1),visibility .3s;overflow-y:auto;width:min(320px,86vw);visibility:hidden;display:flex;top:0;
  background:var(--core-panel);height:100%;box-shadow:var(--core-elev-lg);
  z-index:1100;flex-direction:column;
  right:0;
  padding:84px 22px 22px;transform:translateX(100%);position:fixed}
.panneau-mobile.ouvert{visibility:visible;transform:translateX(0)}
.panneau-mobile nav{flex-direction:column;display:flex}
.panneau-mobile a:not(.bouton){color:var(--core-foreground);padding:15px 2px;border-bottom:1px solid var(--core-rule);font-weight:600;font-size:16px}
.panneau-mobile a:not(.bouton):hover{color:var(--core-primary-dark)}
.panneau-mobile a.bouton{margin-top:var(--core-sp-6);justify-content:center}
.tete{border-radius:50%;height:38px;background:var(--core-aqua);width:38px;border:2px solid var(--core-panel);object-fit:cover}
.tete+.tete{margin-left:-12px}
.tete-suite{place-items:center;width:38px;border:2px solid var(--core-panel);margin-left:-12px;
  font-size:12px;background:var(--core-oxford);border-radius:50%;display:grid;color:#fdfffe;height:38px;font-weight:700}
.brillants{display:inline-flex;gap:2px;color:var(--core-star)}
.brillants svg,.brillant{width:16px;fill:var(--core-star);height:16px}
.tetes{display:flex}
.ok-liste{display:grid;list-style:none;margin:0;gap:10px;padding:0}
.ok-liste li{color:var(--core-foreground-2);display:flex;font-size:14.5px;align-items:center;gap:10px}
.ok-liste li::before{font-weight:800;color:var(--core-primary-dark);content:"\2713";flex:none;font-size:13px}
.societe-encart{box-shadow:var(--core-elev-sm);border:1px solid var(--core-rule);transition:box-shadow .2s,transform .2s;gap:16px;
  padding:20px;align-items:flex-start;display:flex;background:var(--core-panel);
  border-radius:var(--core-r-lg)}
.societe-encart:hover{box-shadow:var(--core-elev-md);transform:translateY(-3px)}
.societe-logo{line-height:1;height:60px;border-radius:16px;overflow:hidden;color:#fdfffe;font-family:var(--core-headline);font-weight:600;
  place-items:center;position:relative;width:60px;
  background:linear-gradient(150deg,var(--core-oxford),var(--core-primary-dark));flex:none;font-size:22px;display:grid}
.societe-logo::after{background:linear-gradient(150deg,rgba(253,255,254,.23),transparent 62%);content:"";position:absolute;inset:0}
.societe-ref{gap:8px;display:flex;flex:1;min-width:0;flex-direction:column}
.societe-entete{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}
.societe-entete h3{line-height:1.25;font-size:17px}

.stats-blocs{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;text-align:center}

.banniere .surligne{color:var(--core-primary)}

.guide{gap:clamp(32px,5vw,60px);display:grid;grid-template-columns:1fr 1fr;align-items:center}
.guide-texte .intitule-2{margin-top:16px}
.guide-texte>p{margin:18px 0 0;font-size:17px;color:var(--core-foreground-2)}
.guide-second{margin-top:16px}
.zone-texte{color:var(--core-foreground);font-size:15.5px;border:1px solid var(--core-rule-2);padding:14px 15px;
  font-family:inherit;border-radius:14px;background:var(--core-panel);width:100%}
.zone-texte:focus{box-shadow:0 0 0 3px rgba(33,112,226,.19);border-color:var(--core-primary-dark);outline:none}

.jalons-blocs{grid-template-columns:repeat(4,1fr);gap:22px;display:grid}
.stat-index{line-height:1;letter-spacing:-.02em;font-family:var(--core-headline);
  color:var(--core-oxford);font-weight:450;font-optical-sizing:auto;font-size:clamp(36px,5vw,56px)}
.stat-texte{color:var(--core-foreground-2);margin-top:10px;font-size:15px}
.service-encart-phare .ok-liste li::before{color:var(--core-primary)}
.service-encart-phare .ok-liste li{color:rgba(225,234,253,.8)}
.signature{letter-spacing:-.015em;gap:12px;display:inline-flex;
  font-family:var(--core-headline);font-weight:500;font-size:22px;color:var(--core-foreground);align-items:center}
.signature-logo{flex:none;background:linear-gradient(150deg,var(--core-primary-dark),var(--core-primary));display:inline-grid;place-items:center;
  height:42px;box-shadow:0 8px 18px rgba(33,112,226,.3);position:relative;border-radius:13px;width:42px}
.signature-logo::after{display:none}

.societes-blocs{grid-template-columns:repeat(2,1fr);display:grid;gap:18px}
.nav-a{transition:background .18s,color .18s;padding:10px 15px;color:var(--core-foreground);font-weight:550;font-size:15.5px;border-radius:var(--core-r-pill)}
.nav-a:hover{background:var(--core-primary-pale);color:var(--core-primary-dark)}
.endroit-encart{background:var(--core-aqua);box-shadow:var(--core-elev-md);position:relative;border-radius:var(--core-r-xl);
  aspect-ratio:4/3;border:1px solid var(--core-rule);overflow:hidden}
.endroit-encart iframe{position:absolute;display:block;border:0;width:100%;height:100%;inset:0}
.endroit-encart.charge .endroit-cadre-vide{display:none}
.endroit-attente{cursor:pointer}
.endroit-cadre-vide{background:linear-gradient(135deg,#e5effc,#dce6f8);text-align:center;gap:14px;font-weight:700;color:var(--core-foreground);position:absolute;
  flex-direction:column;display:flex;width:100%;align-items:center;justify-content:center;inset:0;
  border:0;cursor:pointer;height:100%;font-size:17px;padding:24px}
.endroit-marqueur{border-radius:50% 50% 50% 4px;width:56px;box-shadow:var(--core-elev-md);display:grid;transform:rotate(-45deg);background:var(--core-oxford);
  place-items:center;height:56px}
.endroit-marqueur::after{content:"";background:var(--core-primary);width:16px;height:16px;border-radius:50%}
.endroit-cadre-vide p{font-size:14px;font-weight:500;color:var(--core-foreground-2);max-width:260px;margin:0}

.principal-tete{position:fixed;background:rgba(238,245,251,.8);top:0;border-bottom:1px solid var(--core-rule);backdrop-filter:blur(14px);
  left:0;right:0;
  z-index:100}
.principal-tete-corps{padding-block:14px;display:flex;align-items:center;gap:24px}
.famille{margin-top:-3px;font-size:13px;color:var(--core-foreground-2)}

.banniere{background:var(--core-oxford);background-image:linear-gradient(100deg,rgba(10,24,55,.92),rgba(11,31,60,.8) 42%,rgba(11,44,77,.51) 100%),var(--hero-img,linear-gradient(120deg,#143963,#0c1c3b));
  background-size:cover;
  color:#fdfffe;position:relative;background-position:center}
.banniere-corps{padding-block:clamp(88px,11vw,120px) clamp(120px,16vw,190px)}
.banniere-blocs{gap:48px;align-items:center;display:grid;grid-template-columns:1.1fr .9fr}
.banniere-texte{max-width:640px}
.banniere .mention,.label-pastille{font-weight:650;background:rgba(253,255,254,.09);color:#fdfffe;box-shadow:none;
  border-radius:var(--core-r-pill);text-transform:uppercase;display:inline-flex;
  font-size:12.5px;backdrop-filter:blur(6px);letter-spacing:.06em;border:1px solid rgba(253,255,254,.24);gap:8px;padding:8px 15px;align-items:center}
.niveau{align-items:center;flex-wrap:wrap;gap:8px;display:flex}
.niveau .index{font-weight:700;font-size:14px}
.niveau .total{color:var(--core-muted);font-size:13px}
.mention{letter-spacing:.14em;font-weight:700;font-size:12.5px;
  color:var(--core-primary-dark);gap:9px;align-items:center;
  text-transform:uppercase;display:inline-flex}
.mention::before{width:8px;height:8px;border-radius:50%;background:var(--core-primary-dark);
  flex:none;content:""}

.zone{margin:0 auto;padding-inline:var(--core-gap);max-width:var(--core-wrap)}
.niveau{gap:6px;display:flex;align-items:center}
.icone-pave{width:48px;place-items:center;height:48px;display:grid;background:var(--core-primary-pale);
  color:var(--core-primary-dark);border-radius:14px;flex:none}
.icone-pave svg{height:23px;width:23px}
.label-pastille::before{background:var(--core-primary);width:9px;height:9px;content:"";border-radius:50%}

.donnees{display:grid;gap:clamp(20px,3vw,28px)}
.jalon-encart{position:relative;background:var(--core-panel);border:1px solid var(--core-rule);border-radius:var(--core-r-xl);
  box-shadow:var(--core-elev-sm);padding:30px 28px}
.jalon-encart:not(:last-child)::after{width:30px;z-index:1;content:"";background:var(--core-rule-2);height:2px;right:-15px;top:56px;position:absolute}
.jalon-index{font-family:var(--core-headline);margin-bottom:20px;place-items:center;background:var(--core-primary-pale);
  display:grid;height:56px;font-weight:500;width:56px;border-radius:16px;color:var(--core-primary-dark);font-size:20px}
.jalon-libelle{font-family:var(--core-face);margin:0 0 8px;font-weight:700;font-size:19px}
.jalon-texte{font-size:14.5px;color:var(--core-foreground-2);margin:0}
.nav-voile{background:rgba(7,21,46,.51);position:fixed;z-index:1090;visibility:hidden;inset:0;transition:opacity .25s,visibility .25s;opacity:0}
.nav-voile.ouvert{opacity:1;visibility:visible}
.banniere-atouts{gap:12px;display:grid;padding:0;list-style:none;margin-top:38px;
  max-width:520px;grid-template-columns:1fr 1fr}
.pourquoi-liste{padding:0;display:grid;margin:26px 0 0;list-style:none;gap:13px}
.pourquoi-liste li{align-items:flex-start;gap:12px;display:flex;font-weight:500}
.pourquoi-liste li::before{color:#fdfffe;font-size:12px;height:22px;display:grid;flex:none;background:var(--core-primary-dark);
  place-items:center;content:"\2713";margin-top:2px;font-weight:800;border-radius:7px;width:22px}
.principal-nav{margin-left:auto;display:flex;gap:4px;align-items:center}

.bascule{gap:5px;display:none;top:16px;padding:6px;flex-direction:column;cursor:pointer;border:none;position:fixed;background:none;z-index:1105;right:18px}
.bascule span{width:26px;height:3px;transition:transform .3s ease,opacity .3s ease;display:block;background:var(--core-foreground);border-radius:2px}
.bascule.ouvert span:nth-child(1){transform:rotate(45deg) translate(7px,7px)}
.bascule.ouvert span:nth-child(2){opacity:0}
.bascule.ouvert span:nth-child(3){transform:rotate(-45deg) translate(7px,-7px)}

.avis-bandeau{align-items:center;box-shadow:var(--core-elev-lg);z-index:10;background:var(--core-panel);
  padding:28px 30px;margin-top:-96px;position:relative;
  display:grid;gap:26px;border-radius:var(--core-r-xl);grid-template-columns:repeat(3,1fr) auto;border:1px solid var(--core-rule)}
.avis-cellule{align-items:flex-start;display:flex;gap:15px}
.avis-cellule>div>strong{line-height:1.25;font-weight:700;font-size:16px;display:block}
.avis-cellule>div>span{font-size:14px;margin-top:3px;display:block;color:var(--core-foreground-2)}

.bouton{transition:background .18s,color .18s,transform .18s,box-shadow .18s;border-radius:var(--core-r-pill);cursor:pointer;white-space:nowrap;
  display:inline-flex;align-items:center;font-weight:650;
  border:1px solid transparent;gap:10px;min-height:54px;justify-content:center;
  padding:15px 26px;font-size:15.5px}
.bouton svg{height:18px;width:18px}
.bouton:hover{transform:translateY(-2px)}
.bouton-mini{font-size:14px;min-height:0;padding:10px 18px}
.bouton-xl{font-size:16.5px;min-height:60px;padding:18px 32px}
.bouton-plein{width:100%}
.bouton-action{box-shadow:0 10px 24px rgba(11,44,77,.23);background:var(--core-oxford);color:#fdfffe}
.bouton-action:hover{color:#fdfffe;box-shadow:0 16px 32px rgba(11,44,77,.3);background:var(--core-oxford-2)}
.bouton-surligne{background:var(--core-primary-dark);color:#fdfffe;box-shadow:0 10px 24px rgba(33,112,226,.31)}
.bouton-surligne:hover{background:#145fc3;color:#fdfffe}
.bouton-doux{color:var(--core-foreground);border-color:var(--core-rule);background:var(--core-panel)}
.bouton-doux:hover{background:var(--core-aqua)}
.bouton-negatif{background:var(--core-oxford);color:#fdfffe}
.bouton-negatif:hover{background:var(--core-oxford-2)}
.bouton-pale{background:var(--core-panel);color:var(--core-oxford)}
.bouton-pale:hover{background:var(--core-aqua)}
.brillants .brillant{opacity:.28}.brillants .brillant.on{opacity:1}
.societe-lieu{font-size:14px;color:var(--core-foreground-2);display:flex;align-items:flex-start;gap:8px}
.societe-lieu .marqueur{margin-top:2px;flex:none}

.services-blocs{gap:22px;grid-template-columns:repeat(3,1fr);display:grid}
.chapo{color:var(--core-foreground-2);font-size:clamp(16px,2vw,19px)}
.lecture-a{gap:10px;align-items:center;display:inline-flex;font-weight:650;color:#fdfffe;font-size:16px}
.lecture-a:hover{color:var(--core-primary)}
.lecture-a .lecture{display:inline-flex;border-radius:50%;align-items:center;height:46px;
  justify-content:center;background:rgba(253,255,254,.12);border:1px solid rgba(253,255,254,.32);transition:background .18s,transform .18s;
  width:46px}
.lecture-a:hover .lecture{transform:scale(1.06);background:rgba(253,255,254,.23)}
.lecture-a .lecture::after{height:0;margin-left:3px;border-left:10px solid #fdfffe;border-top:7px solid transparent;
  content:"";width:0;border-bottom:7px solid transparent}
.intitule-2{letter-spacing:-.015em;font-family:var(--core-headline);line-height:1.08;
  font-weight:450;font-optical-sizing:auto;font-size:clamp(28px,4.2vw,48px);margin:0}
@media(min-width:1024px){.donnees{grid-template-columns:1.05fr .95fr;gap:32px;align-items:start}}
.droits{text-align:center;margin-top:38px;font-size:13px;
  border-top:1px solid rgba(253,255,254,.12);padding-top:22px;color:rgba(225,234,253,.72)}

.rapide-incitation{box-shadow:var(--core-elev-lg);border:1px solid var(--core-rule);width:min(330px,calc(100vw - 40px));z-index:90;background:var(--core-panel);
  position:fixed;border-radius:var(--core-r-lg);padding:22px 24px;
  right:20px;bottom:20px;transition:transform .3s,opacity .3s}
.rapide-incitation[hidden]{display:none}
.rapide-incitation::after{inset:0;border-radius:inherit;pointer-events:none;content:"";position:absolute;animation:floatPulse 2.4s infinite}
.rapide-quitter{top:10px;font-size:20px;line-height:1;position:absolute;right:12px;cursor:pointer;
  border:0;color:var(--core-muted);background:none}
.rapide-libelle{font-weight:700;font-size:16.5px;margin:0 26px 6px 0;font-family:var(--core-headline);font-weight:500}
.rapide-texte{color:var(--core-foreground-2);margin:0 0 14px;font-size:14px}
.rapide-onglet{border-radius:50% 50% 50% 8px;cursor:pointer;background:var(--core-oxford);right:20px;width:62px;
  box-shadow:var(--core-elev-lg);bottom:20px;
  border:0;position:fixed;height:62px;animation:floatPulse 2.4s infinite;justify-content:center;color:var(--core-primary);align-items:center;
  display:none;z-index:89}
.rapide-onglet svg{width:27px;display:block;height:27px}
.rapide-onglet:hover{animation-play-state:paused;transform:scale(1.05)}

.principal-bas-page .bouton-action{color:var(--core-oxford);background:var(--core-primary)}
.principal-bas-page .bouton-action:hover{background:#a6e0f0;color:var(--core-oxford)}
.bas-page-blocs{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.1fr;gap:34px}
.bas-page-signature{align-items:center;font-family:var(--core-headline);gap:12px;font-weight:500;
  display:inline-flex;font-size:21px;color:#fdfffe}
.bas-page-signature .signature-logo{background:linear-gradient(150deg,var(--core-primary),var(--core-primary-dark))}
.bas-page-signature .signature-logo::after{background:var(--core-oxford)}
.bas-page-col>p{font-size:14.5px;color:rgba(225,234,253,.72);margin:14px 0 0}
.bas-page-libelle{font-weight:700;font-size:13px;text-transform:uppercase;font-family:var(--core-face);letter-spacing:.1em;color:#fdfffe;margin-bottom:16px}
.bas-page-nav{display:grid;margin:0;gap:11px;padding:0;list-style:none}
.bas-page-nav a{color:rgba(225,234,253,.79);font-size:14.5px}
.bas-page-nav a:hover{color:var(--core-primary)}
.bas-page-col .bouton{margin-top:14px}
.donnees-infos{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin:0;gap:14px;display:grid}
.donnees-municipal{display:grid;padding:24px;border:1px solid var(--core-rule);
  gap:12px;background:var(--core-panel);align-content:start;border-radius:var(--core-r-lg)}
.donnees-municipal h3{font-size:18px;margin:0 0 2px}
.planning{font-size:14px;display:grid;gap:5px;color:var(--core-foreground-2);padding-left:28px}

.principal-bas-page{padding-block:clamp(52px,6vw,76px) 28px;color:rgba(225,234,253,.72);background:var(--core-oxford)}
.municipal-entree{margin:0;color:var(--core-foreground-2);display:flex;gap:10px;font-size:15px;align-items:flex-start}
.municipal-entree a{color:var(--core-primary-dark);font-weight:600}
.municipal-entree .marqueur{margin-top:1px;flex:none;color:var(--core-muted)}
.municipal-entree svg{width:18px;height:18px}

.alentours{gap:32px;flex-direction:column;display:flex}
.alentours-bloc h2{font-size:21px;margin-bottom:14px}
.alentours-nav{gap:8px 18px;flex-wrap:wrap;display:flex}
.alentours-nav a{text-decoration:underline}
.heure{gap:16px;justify-content:space-between;max-width:320px;display:flex}
.heure strong{color:var(--core-foreground);font-weight:600}
.info{align-items:center;display:flex;background:var(--core-panel);border:1px solid var(--core-rule);padding:15px 16px;
  border-radius:var(--core-r-md);gap:12px}
.info-icone{background:var(--core-primary-pale);place-items:center;height:42px;color:var(--core-primary-dark);border-radius:12px;flex:none;width:42px;display:grid}
.info-icone svg{height:20px;width:20px}
.info-texte dt{font-size:12.5px;margin-bottom:3px;color:var(--core-muted)}
.info-texte dd{line-height:1.15;font-weight:700;margin:0;font-size:16px}
@keyframes floatPulse{0%,100%{box-shadow:0 0 0 0 rgba(33,112,226,.45)}50%{box-shadow:0 0 0 12px rgba(33,112,226,0)}}

.redac{max-width:760px;margin:0 auto}
.redac h2{letter-spacing:-.015em;margin:34px 0 12px;font-family:var(--core-headline);font-weight:450;font-size:clamp(23px,3vw,31px)}
.redac p{margin:14px 0;color:var(--core-foreground-2)}
.redac ul{color:var(--core-foreground-2);padding-left:20px}
.redac a:not(.bouton){color:var(--core-primary-dark);text-decoration:underline}
.tableau-mention{font-size:13px;color:var(--core-muted);font-style:italic}
.conseils-cellule{margin-bottom:12px;border:1px solid var(--core-rule);border-radius:var(--core-r-md);overflow:hidden;background:var(--core-panel)}
.conseils-cellule summary{font-weight:650;font-size:16.5px;justify-content:space-between;display:flex;
  gap:16px;list-style:none;align-items:center;cursor:pointer;padding:20px 24px}
.conseils-cellule summary::-webkit-details-marker{display:none}
.conseils-cellule summary::after{color:var(--core-primary-dark);font-size:24px;content:"+";font-weight:400}
.conseils-cellule[open] summary::after{content:"\2013"}
.conseils-rep{overflow:hidden;transition:height .36s cubic-bezier(.4,0,.2,1)}
.conseils-rep-corps{padding:0 24px 20px;color:var(--core-foreground-2)}
.demande{max-width:620px;gap:16px;display:grid}
.demande-cellule{gap:6px;display:grid}
.demande-cellule label{font-weight:600;font-size:14px}
.demande-cellule textarea.zone-texte{min-height:150px;resize:vertical}
.demande-mention{border-radius:var(--core-r-md);font-size:14px;padding:14px 16px}
.demande-mention-on{color:var(--core-valid);border:1px solid var(--core-valid-border);background:var(--core-valid-wash)}
.demande-mention-inactif{border:1px solid var(--core-error-border);color:var(--core-error);background:var(--core-error-wash)}

.guide-pave h1{margin-bottom:16px;font-family:var(--core-headline);font-weight:450;font-size:clamp(29px,4vw,42px);letter-spacing:-.015em}
.guide-pave h2{margin:32px 0 12px;letter-spacing:-.015em;font-family:var(--core-headline);font-weight:450;font-size:clamp(21px,2.6vw,27px)}
.guide-pave p,.guide-pave li{color:var(--core-foreground-2)}
.guide-pave ul{padding-left:20px}
.guide-pave .tableau-cadre{overflow-x:auto;margin:18px 0}
.guide-pave table{width:100%;border-collapse:collapse;font-size:15px}
.guide-pave th,.guide-pave td{border:1px solid var(--core-rule);text-align:left;padding:12px 14px}
.guide-pave thead th{font-weight:700;background:var(--core-aqua)}

.chercher-demande{max-width:520px;flex-wrap:wrap;display:flex;gap:12px}
.chercher-demande .zone-texte{flex:1;min-width:200px}
.chercher-total{color:var(--core-foreground-2);margin:20px 0}

.guide-conseils{width:100%;margin:0 auto;max-width:820px}
.guide-conseils h2,.guide-conseils .intitule-2{text-align:center;margin:0 0 26px}

.principal-guide{flex-direction:column;display:flex}
.principal-guide .guide-pave{order:1}
.principal-guide .guide-conseils{order:2}

@media(max-width:1023px){
  .services-blocs,.societes-blocs,.jalons-blocs,.stats-blocs{grid-template-columns:repeat(2,1fr)}
  .bas-page-blocs{grid-template-columns:1fr 1fr}
  .jalon-encart:not(:last-child)::after{display:none}
}
@media(max-width:860px){
  .principal-nav{display:none}
  .bascule{display:flex}
  .banniere-blocs{grid-template-columns:1fr;gap:32px}
  .banniere-blocs>div:last-child{order:-1}
  .guide{grid-template-columns:1fr}
  .avis-bandeau{grid-template-columns:1fr 1fr}
  .avis-niveau{grid-column:1/-1;padding-left:0;border-left:0;border-top:1px solid var(--core-rule);padding-top:18px}
}
@media(max-width:520px){
  .services-blocs,.societes-blocs,.jalons-blocs,.avis-bandeau{grid-template-columns:1fr}
  .stats-blocs{grid-template-columns:1fr 1fr}
  .bas-page-blocs{grid-template-columns:1fr}
  .banniere-atouts{grid-template-columns:1fr}
  .avis-niveau{justify-content:flex-start}
}
@media(prefers-reduced-motion:reduce){
  *{animation-duration:.001ms!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
}

.reste-popup{z-index:1200;background:rgba(12,21,40,.53);display:none;padding:20px;backdrop-filter:blur(3px);align-items:center;justify-content:center;position:fixed;inset:0}
.reste-popup.charge{display:flex}
.reste-popup-encart{border-radius:var(--core-r-2xl);box-shadow:var(--core-elev-lg);grid-template-columns:.8fr 1fr;position:relative;width:100%;color:var(--core-foreground);max-width:860px;background:var(--core-panel);overflow:hidden;display:grid}
.reste-popup-panneau{padding:clamp(28px,4vw,44px);background:linear-gradient(160deg,var(--core-oxford),var(--core-oxford-2));flex-direction:column;overflow:hidden;color:#fdfffe;position:relative;justify-content:center;display:flex}
.reste-popup-panneau::after{width:86%;content:"";border-radius:50%;border:20px solid rgba(253,255,254,.08);right:-28%;position:absolute;bottom:-28%;height:86%}
.reste-popup-index{position:relative;font-family:var(--core-headline);color:var(--core-primary);font-weight:700;font-size:clamp(64px,9vw,104px);line-height:.85}
.reste-popup-panneau p{font-size:17px;font-weight:600;max-width:190px;margin-top:12px;position:relative}
.reste-popup-principal{padding:clamp(28px,4vw,48px);position:relative}
.reste-popup-principal .mention{margin-bottom:14px}
.reste-popup-principal .intitule-2{font-size:clamp(25px,3.2vw,37px)}
.reste-popup-principal .chapo{margin-top:12px}
.reste-popup-principal .ok-liste{margin-top:20px;gap:12px}
.reste-popup-principal .ok-liste li{font-size:15px}
.reste-popup-principal .bouton{margin-top:24px}
.reste-popup-quitter{font-size:20px;line-height:1;top:16px;position:absolute;background:var(--core-panel);place-items:center;border-radius:50%;height:42px;color:var(--core-muted);width:42px;display:grid;border:1px solid var(--core-rule);right:16px;cursor:pointer}
.reste-popup-refuser{background:none;display:block;text-decoration:underline;margin:14px auto 0;border:0;cursor:pointer;color:var(--core-muted);font-size:13.5px}
@media(max-width:640px){.reste-popup{display:none!important}}

.incitation-encart{overflow:hidden;position:relative}.incitation-encart::before{position:absolute;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='32'%3E%3Cg fill='none' stroke='%23ffffff' stroke-opacity='0.10' stroke-width='2'%3E%3Cpath d='M0 22 Q 20 8 40 22 T 80 22 T 120 22 T 160 22'/%3E%3Cpath d='M0 10 Q 20 -4 40 10 T 80 10 T 120 10 T 160 10' stroke-opacity='0.05'/%3E%3C/g%3E%3C/svg%3E") repeat;pointer-events:none;content:"";opacity:.6;inset:0;z-index:0}.incitation-encart>.incitation-texte{position:relative;z-index:1}
