:root{--green:#2563eb;--dark:#172b4d;--wine:#4757a8;--muted:#64748b;--paper:#f4f7fc;--line:#dce4f0;--topbar-text:#cad7ee;--shadow-ink:#172b4d0b;--button-shadow:#2563eb14;--outline:#c8d5ec;--menu-shadow:#172b4d1a;--orbit:#2563eb0c;--board-border:#cfdaef;--board-bg:#e8eef9;--board-shadow:#dbe5f566;--card-shadow:#172b4d0c;--hover-border:#9db5df;--gradient-start:#f7f9fd;--gradient-end:#eaf0fc;--dashed-border:#b7c8e4;--contact-eyebrow:#c4d8ff;--contact-text:#c7d4ec;--light-button:#e0ebff;--emblem-border:#cdd9ee;--emblem-number:#2563eb10;--emblem-grid:#2563eb07;--service-check:#94a9cd;--process-line:#ccd8ed;--link-line:#a5b8d8;--bs-primary:var(--green);--bs-primary-rgb:37,99,235;}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--dark);font-family:Arial,Helvetica,sans-serif;line-height:1.6;background:#fff}a{color:inherit;text-decoration:none}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--wine);outline-offset:5px}svg{width:26px;height:26px;flex-shrink:0}.skip{position:fixed;top:-100px;left:15px;padding:15px;background:#fff;z-index:100}.skip:focus{top:12px}.container{max-width:1180px}.topbar{background:var(--dark);color:var(--topbar-text);font-size:11px;letter-spacing:.3px}.topbar .container{display:flex;align-items:center;justify-content:space-between;padding-top:9px;padding-bottom:9px}.topbar a{color:white;font-weight:600}.site-header{position:sticky;top:0;background:#ffffffed;backdrop-filter:blur(16px);border-bottom:1px solid var(--line);z-index:30;transition:box-shadow .3s}.site-header.scrolled{box-shadow:0 5px 30px var(--shadow-ink)}.navbar{min-height:88px}.brand{display:flex;align-items:center;gap:11px;font-size:17px;font-weight:800;letter-spacing:1.1px;color:var(--dark)}.brand img{object-fit:contain;border-radius:50%;background:white}.brand small{display:block;font-size:9px;letter-spacing:3.9px;color:var(--wine);margin-top:2px}.nav-link{font-size:13px;font-weight:600;color:var(--muted)}.nav-link:hover,.nav-link.active{color:var(--green)}.btn{border-radius:6px;padding:15px 22px;font-size:13px;font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:20px;transition:transform .2s,background .2s,box-shadow .2s}.btn:hover{transform:translateY(-2px)}.btn-primary{--bs-btn-bg:var(--green);--bs-btn-border-color:var(--green);--bs-btn-hover-bg:var(--dark);--bs-btn-hover-border-color:var(--dark);--bs-btn-active-bg:var(--dark);--bs-btn-active-border-color:var(--dark);--bs-btn-disabled-bg:var(--green);--bs-btn-disabled-border-color:var(--green);color:white;box-shadow:0 6px 14px var(--button-shadow)}.btn-outline-primary{--bs-btn-color:var(--dark);--bs-btn-border-color:var(--outline);--bs-btn-hover-bg:var(--green);--bs-btn-hover-border-color:var(--green);--bs-btn-active-bg:var(--green);--bs-btn-active-border-color:var(--green)}.nav-cta{padding:11px 17px;font-size:12px}.nav-poles{position:relative}.nav-poles summary{list-style:none;cursor:pointer;padding:8px;font-size:13px;font-weight:600;color:var(--muted);display:flex;align-items:center;gap:10px}.nav-poles summary::-webkit-details-marker{display:none}.nav-poles[open] summary{color:var(--green)}.poles-menu{position:absolute;top:45px;right:0;width:310px;background:white;padding:10px;border-radius:10px;border:1px solid var(--line);box-shadow:0 18px 50px var(--menu-shadow)}.poles-menu a{display:flex;align-items:center;gap:12px;padding:12px;border-radius:5px;font-size:12px}.poles-menu a:hover,.poles-menu a[aria-current]{background:var(--paper);color:var(--green)}.poles-menu svg{width:21px;height:21px;color:var(--green)}.hero{padding:83px 0 77px;background:var(--paper);position:relative;overflow:hidden}.hero .container{position:relative;z-index:1}.eyebrow{font-size:10px;letter-spacing:2.1px;font-weight:700;color:var(--green);margin:0 0 23px}h1{font-size:clamp(42px,4.7vw,65px);line-height:1.1;font-weight:700;letter-spacing:-2.5px;margin:0 0 26px}h1 em,h2 em{font-family:Georgia,serif;font-weight:400;color:var(--green)}.hero-description{font-size:16px;line-height:1.85;color:var(--muted);max-width:560px;margin-bottom:28px}.hero-actions{display:flex;flex-wrap:wrap;gap:13px}.hero-note{display:flex;align-items:center;gap:10px;font-size:11px;color:var(--muted);margin-top:34px}.dot{height:7px;width:7px;background:var(--wine);border-radius:50%;flex-shrink:0}.hero-orbit{position:absolute;width:750px;height:750px;border:1px solid var(--orbit);border-radius:50%;right:-220px;top:-240px;pointer-events:none}.hero-board{border:1px solid var(--board-border);background:var(--board-bg);padding:25px;border-radius:15px;box-shadow:12px 13px 0 var(--board-shadow);position:relative}.board-heading{display:flex;justify-content:space-between;align-items:center;font-size:9px;letter-spacing:1.5px;font-weight:700}.board-status{padding:5px 9px;background:#fff9;border-radius:4px;font-size:8px;color:var(--green)}.brand-center{display:flex;align-items:center;gap:20px;margin:25px 0}.brand-center img{border-radius:50%;object-fit:contain;background:white}.brand-center span{font-size:14px;line-height:1.7;color:var(--muted)}.brand-center strong{font-size:18px;color:var(--dark);font-weight:600}.board-links{display:grid;gap:6px}.board-links a{display:flex;align-items:center;gap:12px;background:#ffffffb3;padding:11px 13px;border-radius:5px;font-size:12px;font-weight:600;transition:transform .2s,background .2s}.board-links a:hover{transform:translateX(4px);background:white}.board-links svg{width:20px;height:20px;color:var(--green)}.board-links a>span:last-child{margin-left:auto;font-size:16px;color:var(--wine)}.board-footer{font-size:8px;letter-spacing:1.6px;color:var(--muted);margin-top:20px}.promise-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:24px 0}.promise-strip .container{display:flex;justify-content:space-between;gap:15px}.promise-strip span{font-size:10px;letter-spacing:1px;color:var(--wine)}.promise-strip b{font-size:12px;font-weight:500;color:var(--dark);letter-spacing:0;margin-left:17px}.section{padding:85px 0}h2{font-size:clamp(32px,3.3vw,43px);font-weight:700;letter-spacing:-1.3px;line-height:1.15;margin:0}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:30px}.section-heading>p{font-size:14px;line-height:1.8;color:var(--muted);margin:0}h3{font-size:21px;line-height:1.3;letter-spacing:-.5px;font-weight:600}.pole-card{display:flex;flex-direction:column;height:100%;border:1px solid var(--line);background:white;border-radius:10px;padding:28px;color:var(--dark);transition:transform .3s,box-shadow .3s,border-color .3s}.pole-card:hover{transform:translateY(-6px);box-shadow:0 15px 38px var(--card-shadow);border-color:var(--hover-border)}.pole-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:28px}.service-icon{width:49px;height:49px;border-radius:12px;display:grid;place-items:center;background:var(--paper);color:var(--green)}.pole-number{font-size:9px;letter-spacing:1.3px;color:var(--muted)}.pole-card h3{margin-bottom:12px}.pole-card p{font-size:13px;line-height:1.8;color:var(--muted);margin-bottom:22px;max-width:550px}.card-services{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:26px}.card-services span{padding:5px 8px;background:var(--paper);border-radius:4px;font-size:10px;color:var(--muted)}.card-bottom{border-top:1px solid var(--line);padding-top:18px;display:flex;align-items:center;justify-content:space-between;font-size:12px;font-weight:600;margin-top:auto}.card-bottom>span{font-size:19px;color:var(--green);transition:transform .2s}.pole-card:hover .card-bottom>span{transform:translate(3px,-3px)}.wide-card{background:linear-gradient(120deg,var(--gradient-start),var(--gradient-end))}.help-card{height:100%;border-radius:10px;padding:32px;border:1px dashed var(--dashed-border);background:var(--paper);display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.help-card .eyebrow{font-size:9px}.help-card h3{font-size:25px}.help-card p{font-size:13px;color:var(--muted);line-height:1.8;margin:12px 0 20px}.about-section{background:var(--paper)}.about-description{font-size:14px;line-height:1.9;color:var(--muted);margin-top:25px}blockquote{border-left:3px solid var(--wine);padding-left:22px;font-family:Georgia,serif;font-style:italic;font-size:24px;line-height:1.6;margin:32px 0 0}blockquote>span{font-family:Arial,sans-serif;display:block;font-style:normal;font-size:9px;letter-spacing:2px;color:var(--wine);margin-top:15px}.purpose{padding:30px;background:white;border:1px solid var(--line);border-radius:9px;margin-bottom:20px}.purpose>span{font-size:9px;letter-spacing:1.5px;color:var(--wine);font-weight:600}.purpose h3{margin:16px 0 14px}.purpose p{font-size:14px;line-height:1.85;color:var(--muted);margin:0}.contact-panel{background:var(--dark);color:white;border-radius:12px;padding:52px;display:grid;grid-template-columns:1.4fr 1fr;gap:45px;position:relative;overflow:hidden}.contact-panel .eyebrow{color:var(--contact-eyebrow)}.contact-panel h2{font-size:clamp(29px,3vw,39px)}.contact-panel p{font-size:14px;line-height:1.8;color:var(--contact-text);margin:22px 0;max-width:450px}.btn-light{background:var(--light-button);border-color:var(--light-button);color:var(--dark)}.contact-side{border-left:1px solid #ffffff22;align-self:center;padding-left:45px}.contact-side>span:first-child{font-size:9px;letter-spacing:2px;display:block;color:var(--contact-text);margin-bottom:13px}.contact-side>a{font-size:clamp(20px,2.2vw,29px);font-weight:600;white-space:nowrap}.contact-side p{margin-top:7px}.contact-monogram{font-size:95px;line-height:1;font-weight:800;letter-spacing:-7px;color:#ffffff13;display:block}.site-footer{padding:55px 0 0;background:var(--paper);border-top:1px solid var(--line)}.footer-intro{max-width:340px;font-size:13px;color:var(--muted);line-height:1.8;margin-top:20px}.site-footer h2{font-size:12px;letter-spacing:.3px;margin-bottom:19px}.site-footer ul{list-style:none;padding:0;margin:0}.site-footer li{margin-bottom:8px}.site-footer li a,.site-footer .col-lg-3>a{font-size:12px;color:var(--muted);transition:color .2s}.site-footer a:hover{color:var(--green)}.site-footer .col-lg-3>a{display:block;margin-bottom:12px}.site-footer .col-lg-3 .footer-whatsapp{color:var(--green)}.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:40px;padding:23px 0;border-top:1px solid var(--line);font-size:10px;color:var(--muted)}.footer-bottom p{margin:0}.detail-hero{background:var(--paper);padding:24px 0 65px}.breadcrumb-nav{display:flex;flex-wrap:wrap;gap:12px;font-size:11px;color:var(--muted);margin-bottom:45px}.breadcrumb-nav a:hover{color:var(--green)}.detail-hero h1{font-size:clamp(38px,4.2vw,58px)}.detail-hero .eyebrow{font-size:9px}.detail-emblem{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:315px;border-radius:14px;border:1px solid var(--emblem-border);background:var(--board-bg);overflow:hidden}.detail-emblem>svg{width:105px;height:105px;stroke-width:1;color:var(--green);position:relative;z-index:1}.emblem-number{font-size:150px;line-height:1;font-weight:800;letter-spacing:-10px;position:absolute;bottom:-10px;right:15px;color:var(--emblem-number)}.emblem-label{font-size:11px;letter-spacing:1px;margin-top:28px;position:relative}.emblem-grid{position:absolute;inset:0;background-image:linear-gradient(var(--emblem-grid) 1px,transparent 1px),linear-gradient(90deg,var(--emblem-grid) 1px,transparent 1px);background-size:28px 28px}.services-intro{position:sticky;top:125px}.services-intro>p:not(.eyebrow){font-size:14px;line-height:1.8;color:var(--muted);margin:24px 0}.objective{border-left:3px solid var(--wine);padding:20px;background:var(--paper);margin-top:27px}.objective>span{font-size:9px;letter-spacing:1.5px;font-weight:700;color:var(--wine)}.objective p{font-size:14px;line-height:1.8;margin:10px 0 0}.service-item{border:1px solid var(--line);border-radius:8px;padding:24px;height:100%;min-height:155px;position:relative;transition:border-color .2s,transform .2s;background:white}.service-item:hover{border-color:var(--hover-border);transform:translateY(-3px)}.service-item>span:first-child{font-size:10px;letter-spacing:1px;color:var(--wine)}.service-item h3{font-size:17px;margin:18px 14px 0 0;line-height:1.5;letter-spacing:-.2px}.service-check{position:absolute;right:17px;top:19px;color:var(--service-check)}.process-section,.campaign-section{background:var(--paper)}.process-card{padding:25px 0 10px;border-top:1px solid var(--process-line)}.process-card>span{font-family:Georgia,serif;font-size:30px;color:var(--wine);display:block;margin-bottom:20px}.process-card h3{font-size:19px}.process-card p{font-size:13px;color:var(--muted);line-height:1.8;margin:15px 0 0}.campaign-image{display:block;width:100%;height:auto;border-radius:12px;border:1px solid var(--line)}.other-poles{padding:0 0 80px}.other-poles h2{font-size:30px}.text-link{font-size:12px;color:var(--green);border-bottom:1px solid var(--link-line);padding-bottom:6px}.other-links{display:grid;grid-template-columns:repeat(2,1fr);gap:15px;margin-top:30px}.other-links a{padding:18px 20px;display:flex;align-items:center;gap:14px;border:1px solid var(--line);border-radius:6px;font-size:13px;transition:background .2s}.other-links a:hover{background:var(--paper)}.other-links svg{color:var(--green)}.other-links a>span:last-child{margin-left:auto;color:var(--wine)}.hero-enter{animation:rise-in .8s cubic-bezier(.2,.6,.3,1) both}.hero-enter:nth-child(2){animation-delay:.1s}.hero-enter:nth-child(3){animation-delay:.2s}.hero-enter:nth-child(4){animation-delay:.3s}.hero-enter:nth-child(5){animation-delay:.4s}.hero-board.hero-enter,.detail-emblem.hero-enter{animation-delay:.2s}.reveal{transition:opacity .65s ease,translate .65s ease}.reveal.is-pending{opacity:0;translate:0 24px}.reveal.is-visible{opacity:1;translate:0 0}@keyframes rise-in{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media(max-width:1199px){.navbar-nav{gap:8px!important}.nav-cta{font-size:11px;padding:11px 13px}.hero{padding:65px 0}.hero-board{padding:20px}}@media(max-width:991px){.navbar{min-height:78px}.navbar-collapse{padding:15px 0}.navbar-nav>li{margin:4px 0}.nav-poles summary{padding:8px 0}.poles-menu{position:static;width:100%;box-shadow:none;margin:6px 0}.hero{padding:55px 0}.hero-board{max-width:550px;margin:auto}.section{padding:65px 0}.contact-panel{padding:35px;gap:30px}.contact-side{padding-left:30px}.detail-emblem{min-height:235px;max-width:450px;margin:auto}.services-intro{position:static}.detail-hero{padding-bottom:50px}.breadcrumb-nav{margin-bottom:35px}.other-poles{padding-bottom:60px}}@media(max-width:575px){.container{padding-left:22px;padding-right:22px}.topbar{font-size:9px}.topbar .container{gap:10px}.brand{font-size:15px}.brand img{width:43px;height:43px}.brand small{font-size:8px;letter-spacing:3.7px}h1{font-size:40px;letter-spacing:-1.7px}.hero .eyebrow{font-size:8px;letter-spacing:1.3px}.hero-description{font-size:14px}.hero-actions{gap:10px}.btn{font-size:12px;padding:13px 17px;gap:12px}.hero-board{box-shadow:6px 7px 0 var(--board-shadow)}.board-heading{font-size:8px;letter-spacing:.9px}.brand-center{gap:15px}.brand-center img{width:85px;height:85px}.brand-center strong{font-size:16px}.board-links a{font-size:11px}.promise-strip .container{flex-direction:column;gap:12px}.promise-strip{padding:20px 0}.promise-strip b{font-size:11px;margin-left:14px}.section{padding:52px 0}.section-heading{display:block}.section-heading>p{margin-top:20px;font-size:13px}h2{font-size:33px}.pole-card{padding:25px}.pole-card-top{margin-bottom:22px}.contact-panel{grid-template-columns:1fr;padding:30px 25px;gap:30px}.contact-side{border-left:0;border-top:1px solid #ffffff22;padding:25px 0 0}.contact-side>a{font-size:23px}.contact-monogram{position:absolute;right:25px;bottom:25px;font-size:65px}.contact-panel h2{font-size:29px}.footer-bottom{flex-direction:column;align-items:flex-start;gap:8px}.site-footer{padding-top:40px}.detail-hero h1{font-size:37px;letter-spacing:-1.5px}.breadcrumb-nav{font-size:10px;gap:8px}.detail-emblem{min-height:210px}.detail-emblem>svg{height:80px;width:80px}.other-links{grid-template-columns:1fr}.other-poles .text-link{display:inline-block;margin-top:20px}.purpose{padding:24px}.service-item{min-height:125px}.service-item h3{font-size:16px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.reveal.is-pending{opacity:1;translate:none}.btn:hover,.pole-card:hover,.board-links a:hover,.service-item:hover{transform:none}}


/* Le pôle environnement conserve sa palette d’origine. */
.theme-environnement,
a[href="environnement.html"]{--green:#226d63;--dark:#163e37;--wine:#945352;--muted:#677a72;--paper:#f4f7f2;--line:#dde6dd;--topbar-text:#c6d8cf;--shadow-ink:#163e370b;--button-shadow:#226d6314;--outline:#c8d6ca;--menu-shadow:#163e371a;--orbit:#226d630c;--board-border:#d5e0d2;--board-bg:#e8eee3;--board-shadow:#dfe7d866;--card-shadow:#163e370c;--hover-border:#a6c0ac;--gradient-start:#f7f9f5;--gradient-end:#edf2e8;--dashed-border:#bacabc;--contact-eyebrow:#c3d9b2;--contact-text:#c4d2cb;--light-button:#e0eccf;--emblem-border:#ceddce;--emblem-number:#226d6310;--emblem-grid:#226d6307;--service-check:#9bb0a0;--process-line:#ccd9cc;--link-line:#a8bca9;--bs-primary:var(--green);--bs-primary-rgb:34,109,99;}
:is(.pole-card,.board-links a,.poles-menu a,.other-links a)[href="environnement.html"]{color:var(--dark)}

/* Arrière-plan technologique de la bannière d’accueil. */
.home-page .hero {
  isolation: isolate;
  background:
    radial-gradient(ellipse at 12% 8%, #2563eb38 0%, transparent 52%),
    radial-gradient(ellipse at 91% 85%, #387bf036 0%, transparent 45%),
    linear-gradient(115deg, #101e39 0%, #172e54 52%, #204b82 100%);
  color: #ffffff;
}
.home-page .hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background-image:
    linear-gradient(#c5d9ff0c 1px, transparent 1px),
    linear-gradient(90deg, #c5d9ff0c 1px, transparent 1px);
  background-size: 64px 64px;
  mask-image: linear-gradient(90deg, transparent, #000 72%);
}
.home-page .hero::after {
  content: "";
  position: absolute;
  width: 620px;
  height: 620px;
  border: 1px solid #b3d1ff1f;
  border-radius: 50%;
  right: -210px;
  bottom: -380px;
  z-index: -1;
  pointer-events: none;
  box-shadow: 0 0 0 64px #b3d1ff05, 0 0 0 128px #b3d1ff04;
}
.home-page .hero .eyebrow,
.home-page .hero h1 em { color: #a7caff; }
.home-page .hero-description { color: #d0dcf0; }
.home-page .hero-note { color: #c0d1ec; }
.home-page .hero-note .dot { background: #a7caff; }
.home-page .hero .hero-actions .btn-primary {
  --bs-btn-bg: #2563eb;
  --bs-btn-border-color: #2563eb;
  --bs-btn-hover-bg: #1d4ed8;
  --bs-btn-hover-border-color: #1d4ed8;
  --bs-btn-active-bg: #1d4ed8;
  --bs-btn-active-border-color: #1d4ed8;
  box-shadow: 0 8px 22px #00000024;
}
.home-page .hero .hero-actions .btn-outline-primary {
  --bs-btn-color: #ffffff;
  --bs-btn-border-color: #a9c5ef80;
  --bs-btn-hover-color: #ffffff;
  --bs-btn-hover-bg: #ffffff14;
  --bs-btn-hover-border-color: #b8d2fb;
  --bs-btn-active-bg: #ffffff20;
  --bs-btn-active-border-color: #b8d2fb;
}
.home-page .hero-board {
  color: var(--dark);
  border-color: #ffffff75;
  background: #edf3fd;
  box-shadow: 12px 13px 0 #8ebcff14, 0 22px 55px #060d2229;
}
.home-page .hero-orbit {
  border-color: #c4dbff1c;
  width: 780px;
  height: 780px;
}
@media (max-width: 575px) {
  .home-page .hero::before { background-size: 44px 44px; }
  .home-page .hero-board {
    box-shadow: 6px 7px 0 #8ebcff14, 0 12px 28px #060d2220;
  }
}


/* Adresse de l’établissement et accès à la navigation. */
.contact-location{border-top:1px solid #ffffff26;padding-top:20px;margin:24px 0;position:relative;z-index:1}
.address-label{display:block;font-size:9px;font-weight:600;letter-spacing:2px;color:var(--contact-text);margin-bottom:12px}
.contact-location address{font-size:13px;line-height:1.9;font-style:normal;margin:0 0 17px;color:#fff}
.location-actions{display:flex;flex-wrap:wrap;gap:10px}
.location-actions a{display:inline-flex;align-items:center;font-size:11px;font-weight:600;line-height:1.5;border:1px solid #ffffff40;background:#ffffff08;color:#fff;border-radius:5px;padding:9px 11px;transition:background .2s,border-color .2s}
.location-actions a:hover{background:#ffffff18;border-color:#ffffff85}
.footer-address{font-size:12px;font-style:normal;color:var(--muted);line-height:1.9;margin:18px 0 11px}
.site-footer .col-lg-3 .footer-map{color:var(--green)}
.contact-monogram{pointer-events:none}
@media(max-width:575px){.contact-location{margin-bottom:0}.contact-side .contact-monogram{opacity:.4}.location-actions a{font-size:11px}}

