/* CEOPS SRL - www.ceops.be - Feuille de style unique */
:root{
  --olive:#5F6E3B;
  --olive-deep:#333F0D;
  --olive-mid:#465421;
  --chrome:#C9CCCC;
  --kaki-light:#F2F5E8;
  --anthracite:#1F1F1F;
  --grey:#555F6D;
  --white:#FFFFFF;
  --max:1180px;
  --header-h:118px;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:var(--header-h);-webkit-text-size-adjust:100%}
body{margin:0;font-family:"Roboto",Arial,Helvetica,sans-serif;color:var(--anthracite);line-height:1.6;font-size:16px;background:var(--white)}
img{max-width:100%;height:auto;display:block}
h1,h2,h3,h4{font-family:"Barlow Condensed","Arial Narrow",sans-serif;color:var(--olive-deep);font-weight:700;letter-spacing:-.5px;line-height:1.15;margin:0 0 .6em}
h1{font-size:clamp(1.6rem,2.6vw,2.2rem)}
h2{font-size:clamp(1.7rem,3.5vw,2.4rem);color:var(--olive)}
h3{font-size:clamp(1.2rem,2.5vw,1.5rem)}
h4{font-size:1.05rem;color:var(--olive-deep)}
p{margin:0 0 1em}
ul,ol{margin:0 0 1em;padding-left:1.25em}
li{margin-bottom:.35em}
a{color:var(--olive);text-decoration:none;border-bottom:1px solid var(--chrome);transition:.15s}
a:hover{color:var(--olive-deep);border-bottom-color:var(--olive)}
a.no-underline,nav a,.btn,.brand,.lang-switch a,.footer-col a,.legal-toc a,.back-home,.legal-toc,.no-b{border-bottom:none}
a.no-underline:hover,nav a:hover,.footer-col a:hover{border-bottom:none}
.container{max-width:var(--max);margin:0 auto;padding:0 20px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* HEADER */
.site-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.98);backdrop-filter:blur(6px);border-bottom:1px solid var(--chrome);height:var(--header-h);display:flex;align-items:center}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;max-width:var(--max);margin:0 auto;padding:0 20px}
.brand{display:flex;align-items:center;gap:10px}
.brand img{height:86px;width:auto}
.brand-text{font-family:"Barlow Condensed",sans-serif;font-weight:700;font-size:1.35rem;color:var(--olive-deep);letter-spacing:.5px}
.main-nav{display:flex;align-items:center;gap:18px;flex-wrap:nowrap}
.main-nav a{font-family:"Barlow Condensed",sans-serif;font-weight:500;text-transform:uppercase;letter-spacing:.8px;color:var(--olive-deep);font-size:.82rem;padding:6px 2px;white-space:nowrap}
.main-nav a:hover{color:var(--olive)}
.header-right{display:flex;align-items:center;gap:16px}
.lang-switch{display:flex;gap:6px;font-family:"Barlow Condensed",sans-serif;font-weight:500;letter-spacing:1px;text-transform:uppercase;font-size:.9rem}
.main-nav .lang-switch-mobile{display:none}
.lang-switch a{color:var(--grey);padding:4px 6px}
.lang-switch a.active{color:var(--olive-deep);font-weight:700}
.lang-switch a:hover{color:var(--olive)}
.btn{display:inline-block;background:var(--olive);color:var(--white)!important;padding:12px 22px;font-family:"Barlow Condensed",sans-serif;font-weight:500;text-transform:uppercase;letter-spacing:1px;border-radius:3px;border:1px solid var(--olive);cursor:pointer;font-size:.95rem;transition:.15s}
.btn:hover{background:var(--olive-deep);border-color:var(--olive-deep);color:var(--white)!important}
.btn.btn-ghost{background:transparent;color:var(--olive)!important;border:1px solid var(--olive)}
.btn.btn-ghost:hover{background:var(--olive);color:var(--white)!important}
.btn-sm{padding:8px 14px;font-size:.85rem}

/* HAMBURGER */
.hamburger{display:none;background:none;border:0;padding:8px;cursor:pointer;width:44px;height:44px}
.hamburger span{display:block;width:24px;height:2px;background:var(--olive-deep);margin:5px auto;transition:.2s}
.hamburger[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.hamburger[aria-expanded="true"] span:nth-child(2){opacity:0}
.hamburger[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* HERO */
.hero{background:linear-gradient(180deg,var(--kaki-light) 0%,var(--white) 100%);padding:60px 0 40px}
.hero .container{text-align:left}
.hero .container{text-align:left}
.hero h1{color:var(--olive-deep);max-width:100%;text-align:left}
.hero .lead{font-size:1.15rem;color:var(--anthracite);max-width:100%;text-align:justify;text-align-last:left;hyphens:auto;-webkit-hyphens:auto;line-height:1.55}
.hero .baseline{text-align:left}
.hero-cta{display:flex;flex-wrap:wrap;gap:14px;margin-top:26px;justify-content:center}
.pillars-band{background:var(--white);border-top:1px solid var(--chrome);border-bottom:1px solid var(--chrome);padding:32px 0;margin-top:40px}
.pillars-band .grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;align-items:stretch}
.pillar-summary h3{color:var(--olive-deep);font-size:1.1rem;text-transform:uppercase;letter-spacing:1px;margin-bottom:8px;border-left:3px solid var(--olive);padding-left:10px}
.pillar-summary p{color:var(--grey);margin:0}

/* SECTIONS */
section{padding:70px 0}
section.alt{background:var(--kaki-light)}
.section-head{margin-bottom:36px;max-width:100%}
.section-head p{color:var(--grey);font-size:1.05rem;max-width:100%;text-align:justify;text-align-last:left;hyphens:auto;-webkit-hyphens:auto}
.grid-cards{display:grid;gap:20px;grid-template-columns:repeat(4,1fr);align-items:stretch}
@media (max-width: 900px){.grid-cards{grid-template-columns:repeat(2,1fr)}}
@media (max-width: 500px){.grid-cards{grid-template-columns:1fr}}
.card{background:var(--white);border-top:2px solid var(--olive);padding:22px;box-shadow:0 1px 3px rgba(0,0,0,.04)}
.card h3{color:var(--olive);font-size:1.1rem;margin-bottom:8px}
.card p{color:var(--grey);margin:0}
.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;margin-top:30px;background:var(--olive);color:var(--white);padding:26px;border-radius:4px}
.facts .fact strong{display:block;font-family:"Barlow Condensed",sans-serif;font-size:1.6rem;font-weight:700;letter-spacing:.5px}
.facts .fact span{color:var(--kaki-light);font-size:.95rem}

/* ACTIVITIES / PILIERS */
.piliers{display:grid;grid-template-columns:1fr;gap:48px;align-items:start;position:relative}
.piliers::before{display:none;content:none}
.pilier{padding:0 8px}
.pilier-head{border-bottom:2px solid var(--olive);padding-bottom:10px;margin-bottom:20px}
.pilier-head .tag{display:inline-block;font-family:"Barlow Condensed",sans-serif;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:var(--white);background:var(--olive);padding:4px 10px;font-size:.8rem;border-radius:2px}
.pilier-head h3{color:var(--olive-deep);margin:10px 0 4px;font-size:1.5rem}
.pilier-head p{color:var(--grey);margin:0;font-style:italic}
details.service{background:var(--white);border-left:3px solid var(--olive);margin-bottom:10px;padding:0}
details.service > summary{list-style:none;cursor:pointer;padding:14px 18px;font-family:"Barlow Condensed",sans-serif;font-weight:600;color:var(--olive-deep);font-size:1.1rem;position:relative;user-select:none}
details.service > summary::-webkit-details-marker{display:none}
details.service > summary::after{content:"+";position:absolute;right:18px;top:50%;transform:translateY(-50%);font-size:1.4rem;color:var(--olive);transition:.15s}
details.service[open] > summary::after{content:"–"}
.service-body{padding:0 18px 18px}
.service-body em{color:var(--grey);display:block;margin-bottom:10px}
.service-body ul{margin:0 0 12px;padding-left:1.2em}
.service-body li{color:var(--anthracite)}
.service-cta{display:inline-block;font-family:"Barlow Condensed",sans-serif;text-transform:uppercase;letter-spacing:1px;color:var(--olive);border-bottom:1px solid var(--olive);font-size:.9rem;padding:2px 0;margin-top:6px}
.service-cta:hover{color:var(--olive-deep);border-bottom-color:var(--olive-deep)}

/* APPROACH */
.approach-steps{counter-reset:step;display:grid;grid-template-columns:repeat(4,1fr);gap:20px;align-items:stretch}
@media (max-width: 900px){.approach-steps{grid-template-columns:repeat(2,1fr)}}
@media (max-width: 500px){.approach-steps{grid-template-columns:1fr}}
.step{background:var(--white);border-top:2px solid var(--olive);padding:22px}
.step .num{font-family:"Barlow Condensed",sans-serif;color:var(--olive);font-weight:700;font-size:1.6rem;display:block;margin-bottom:4px}
.step h3{color:var(--olive-deep);font-size:1.1rem;margin-bottom:6px}
.step p{color:var(--grey);margin:0}

/* SECTORS */
.sectors-list{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
@media (max-width: 900px){.sectors-list{grid-template-columns:repeat(2,1fr)}}
@media (max-width: 500px){.sectors-list{grid-template-columns:1fr}}
.sectors-list li{background:var(--white);border-left:3px solid var(--olive);padding:14px 16px;color:var(--anthracite);font-weight:500}

/* FAQ */
.faq details{background:var(--white);border-top:1px solid var(--chrome);padding:16px 8px}
.faq details:last-child{border-bottom:1px solid var(--chrome)}
.faq summary{list-style:none;cursor:pointer;font-family:"Barlow Condensed",sans-serif;color:var(--olive-deep);font-weight:600;font-size:1.15rem;position:relative;padding-right:32px;user-select:none}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:8px;top:0;font-size:1.3rem;color:var(--olive);transition:.15s}
.faq details[open] summary::after{content:"–"}
.faq .answer{padding-top:10px;color:var(--anthracite)}

/* CONTACT */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}
.contact-card{background:var(--white);border-top:2px solid var(--olive);padding:24px}
.contact-card h3{color:var(--olive-deep);margin-bottom:12px}
.contact-card p{margin:.3em 0}
.contact-card .contact-cta{margin-top:14px}
.map iframe{width:100%;height:340px;border:0;border-top:2px solid var(--olive)}

/* FOOTER */
.site-footer{background:var(--olive-deep);color:var(--white);padding:48px 0 24px;margin-top:0}
.site-footer a{color:var(--kaki-light);border-bottom:none}
.site-footer a:hover{color:var(--white)}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:30px}
.footer-col h4{color:var(--white);font-family:"Barlow Condensed",sans-serif;text-transform:uppercase;letter-spacing:1px;font-size:1rem;margin-bottom:14px;border-bottom:1px solid rgba(201,204,204,.3);padding-bottom:8px}
.footer-col ul{list-style:none;padding:0;margin:0}
.footer-col li{margin-bottom:8px}
.footer-col p{color:#dfe4d2;font-size:.9rem;margin:.3em 0}
.footer-brand img{height:56px;margin-bottom:12px;background:rgba(255,255,255,.06);padding:6px;border-radius:2px}
.footer-baseline{font-family:"Barlow Condensed",sans-serif;letter-spacing:1px;color:var(--chrome);text-transform:uppercase;font-size:.9rem;margin-bottom:10px}
.footer-bottom{border-top:1px solid rgba(201,204,204,.2);margin-top:30px;padding-top:16px;text-align:center;color:var(--chrome);font-size:.85rem}

/* LEGAL PAGES */
.legal-page{padding:40px 0 60px}
.back-home{display:inline-block;font-family:"Barlow Condensed",sans-serif;text-transform:uppercase;letter-spacing:1px;color:var(--olive);margin-bottom:20px;font-size:.9rem}
.back-home:hover{color:var(--olive-deep)}
.legal-page h1{color:var(--olive-deep);font-size:clamp(1.8rem,4vw,2.6rem);margin-bottom:24px}
.legal-page h2{color:var(--olive);font-size:1.5rem;margin-top:32px;margin-bottom:12px}
.legal-page h3{color:var(--olive-deep);font-size:1.15rem;margin-top:24px;margin-bottom:10px}
.legal-page p, .legal-page li{color:var(--anthracite)}
.legal-toc{background:var(--kaki-light);border-left:3px solid var(--olive);padding:18px 22px;margin:20px 0 30px}
.legal-toc h2{margin:0 0 10px;font-size:1.15rem;color:var(--olive-deep)}
.legal-toc ol{margin:0;padding-left:1.3em}
.legal-toc a{color:var(--olive-deep);border-bottom:1px dotted var(--chrome)}
.legal-toc a:hover{color:var(--olive);border-bottom-color:var(--olive)}
.legal-page .lang-note{background:#fff6d6;border-left:3px solid #c9a227;padding:12px 16px;font-size:.95rem;color:#5c4a10;margin-bottom:24px}

/* MOBILE STICKY */
.mobile-cta{display:none !important}
.mobile-cta a{color:var(--white);text-decoration:none;border-bottom:0;display:block}

/* BACK TO TOP */
.back-to-top{position:fixed;right:18px;bottom:80px;width:44px;height:44px;background:var(--olive);color:var(--white);border-radius:50%;display:none;align-items:center;justify-content:center;cursor:pointer;border:0;font-size:20px;font-family:"Barlow Condensed",sans-serif;z-index:80;box-shadow:0 2px 8px rgba(0,0,0,.15)}
.back-to-top.visible{display:flex}

/* COOKIE BANNER */
.cookie-banner{position:fixed;bottom:0;left:0;right:0;background:var(--olive-deep);color:var(--white);padding:18px 20px;z-index:150;display:none;box-shadow:0 -2px 8px rgba(0,0,0,.15)}
.cookie-banner.visible{display:block}
.cookie-banner-inner{max-width:var(--max);margin:0 auto;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px}
.cookie-banner p{margin:0;font-size:.9rem;flex:1 1 400px;color:#f0efe6}
.cookie-banner p a{color:var(--chrome);border-bottom:1px solid var(--chrome)}
.cookie-buttons{display:flex;gap:10px}
.cookie-buttons button{cursor:pointer;font-family:"Barlow Condensed",sans-serif;text-transform:uppercase;letter-spacing:1px;padding:10px 18px;border:0;border-radius:3px;font-size:.9rem;font-weight:500}
.cookie-buttons .btn-accept{background:var(--olive);color:var(--white)}
.cookie-buttons .btn-accept:hover{background:var(--kaki-light);color:var(--olive-deep)}
.cookie-buttons .btn-refuse{background:transparent;color:var(--white);border:1px solid var(--chrome)}
.cookie-buttons .btn-refuse:hover{background:var(--chrome);color:var(--olive-deep)}

/* RESPONSIVE */
@media (max-width:900px){
  .hamburger{display:block}
  .main-nav{position:fixed;top:var(--header-h);left:0;right:0;background:var(--white);flex-direction:column;align-items:flex-start;gap:0;padding:20px;box-shadow:0 6px 12px rgba(0,0,0,.08);transform:translateY(-120%);transition:transform .25s;max-height:calc(100vh - var(--header-h));overflow-y:auto;border-top:1px solid var(--chrome)}
  .main-nav.open{transform:translateY(0)}
  .main-nav a{padding:12px 0;width:100%;border-bottom:1px solid var(--chrome)}
  .main-nav .lang-switch-mobile{display:flex;gap:10px;padding:12px 0;border-bottom:1px solid var(--chrome);width:100%}
  .header-right .lang-switch{display:flex;gap:4px;font-size:.75rem}
  .header-right .lang-switch a{padding:4px 3px;letter-spacing:.5px}
  .header-right .btn:not(.hamburger){display:none}
  .hero{padding:40px 0 24px}
  .pillars-band .grid,.piliers,.contact-grid,.footer-grid{grid-template-columns:1fr}
  .piliers::before{display:none}
  .footer-grid{gap:24px}
  section{padding:50px 0}
  .back-to-top{bottom:20px}
}
@media (max-width:480px){
  .brand-text{display:none}
  .hero h1{font-size:2rem}
  .hero .lead{font-size:1rem}
}


/* === Patch corporate sobre === */
:root { --khaki: var(--olive); --khaki-deep: var(--olive-deep); --khaki-mid: var(--olive-mid); --sand: var(--kaki-light); --border-warm: #E4E7D8; }

body { color: #1F1F1F; }

/* Sections plus aérées, moins de saturation */
section { padding: 5rem 0; }
section.alt { background: var(--sand); }

.section-head { margin-bottom: 2rem; }
.section-head h2 { color: #1F1F1F; font-weight: 700; letter-spacing: -0.5px; }
.section-head p { color: #555F6D; }

/* Cartes services : bloc alignés, discret, corporate */
.services-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  margin-top: 1.5rem;
  align-items: stretch;
}
@media (max-width: 900px){.services-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width: 500px){.services-grid{grid-template-columns:1fr}}
.services-grid .service {
  background: #FFFFFF;
  border: 1px solid var(--border-warm);
  border-radius: 3px;
  padding: 24px 26px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  transition: border-color .2s ease;
  min-height: 340px;
  text-align: justify;
  hyphens: auto;
  -webkit-hyphens: auto;
}
.services-grid .service:hover { border-color: #5F6E3B; }
.services-grid .service h4 {
  font-family: "Barlow Condensed", "Arial Narrow", sans-serif;
  font-weight: 600;
  color: #1F1F1F;
  font-size: 19px;
  margin: 0;
  letter-spacing: -0.2px;
  line-height: 1.25;
  padding-bottom: 8px;
  border-bottom: 1px solid var(--border-warm);
}
.services-grid .service em {
  color: #555F6D;
  font-size: 13.5px;
  line-height: 1.55;
  font-style: italic;
  display: block;
}
.services-grid .service ul {
  margin: 0;
  padding-left: 18px;
  color: #1F1F1F;
}
.services-grid .service ul li {
  font-size: 13.5px;
  line-height: 1.6;
  margin-bottom: 4px;
}
.services-grid .service ul li::marker { color: var(--khaki); }
.services-grid .service .service-cta {
  color: var(--khaki);
  font-family: "Barlow Condensed", sans-serif;
  text-transform: uppercase;
  letter-spacing: 1px;
  font-size: 12px;
  font-weight: 500;
  text-decoration: none;
  align-self: flex-start;
  margin-top: 6px;
  border: 0;
  border-bottom: 1px solid var(--khaki);
  padding-bottom: 2px;
}
.services-grid .service .service-cta:hover {
  color: var(--khaki-deep);
  border-bottom-color: var(--khaki-deep);
}
.services-grid .service p {
  margin: 0;
  color: #555F6D;
  font-size: 13px;
  line-height: 1.6;
}

/* Résumé de piliers (2 blocs en tête d'Activités) — même style compact */
.pillars-summary {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 20px;
  margin-top: 1.25rem;
  align-items: stretch;
}
.pillar-summary {
  background: #FFFFFF;
  border: 1px solid var(--border-warm);
  border-radius: 3px;
  padding: 20px 24px;
}
.pillar-summary h3 {
  font-family: "Barlow Condensed", sans-serif;
  color: #1F1F1F;
  font-size: 21px;
  font-weight: 700;
  margin: 0 0 6px 0;
  letter-spacing: -0.3px;
}
.pillar-summary p {
  color: #555F6D;
  font-size: 13.5px;
  line-height: 1.55;
  margin: 0;
}

.pilier { margin-top: 2.25rem; }
.pilier-head { margin-bottom: 8px; }
.pilier-head h3 {
  font-family: "Barlow Condensed", sans-serif;
  color: #1F1F1F;
  font-size: 24px;
  font-weight: 700;
  margin: 0 0 6px 0;
  letter-spacing: -0.4px;
  border-left: 3px solid var(--khaki);
  padding-left: 12px;
}
.pilier-head p { color: #555F6D; margin: 0 0 6px 0; font-size: 14px; padding-left: 15px; }

/* Cartes "grid-cards" (valeurs À propos) — même sobriété */
.grid-cards {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 16px;
}
.grid-cards .card {
  background: #FFFFFF;
  border: 1px solid var(--border-warm);
  border-radius: 3px;
  padding: 18px 20px;
}
.grid-cards .card h3 {
  color: #1F1F1F;
  font-size: 16px;
  margin: 0 0 6px 0;
  font-family: "Barlow Condensed", sans-serif;
  font-weight: 700;
  letter-spacing: -0.2px;
}
.grid-cards .card p { color: #555F6D; font-size: 13.5px; margin: 0; line-height: 1.55; }

/* Approche : 4 blocs alignés */
.approach-steps {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 20px;
  margin-top: 1.5rem;
}
.approach-steps .step {
  background: #FFFFFF;
  border: 1px solid var(--border-warm);
  border-radius: 3px;
  padding: 20px 22px;
}
.approach-steps .step .num {
  color: var(--khaki);
  font-family: "Barlow Condensed", sans-serif;
  font-weight: 700;
  font-size: 22px;
  display: block;
  margin-bottom: 4px;
}
.approach-steps .step h3 {
  color: #1F1F1F;
  font-family: "Barlow Condensed", sans-serif;
  font-size: 18px;
  font-weight: 700;
  margin: 0 0 6px 0;
}
.approach-steps .step p { color: #555F6D; font-size: 13.5px; margin: 0; line-height: 1.55; }

/* Boutons plus corporate */
.btn {
  background: var(--khaki);
  color: #FFF;
  padding: 12px 24px;
  font-family: "Barlow Condensed", sans-serif;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 1px;
  border-radius: 2px;
  border: 1px solid var(--khaki);
  transition: background .2s;
}
.btn:hover { background: var(--khaki-deep); border-color: var(--khaki-deep); }
.btn-sm { padding: 8px 18px; font-size: 13px; }

/* Header : logo seul */
.site-header { border-bottom: 1px solid var(--border-warm); }
.site-header .brand img { display: block; height: 86px; width: auto; }
.site-header .brand-text { display: none !important; }
.main-nav a { color: #1F1F1F; font-family: "Barlow Condensed", sans-serif; text-transform: uppercase; letter-spacing: 1px; font-size: 12.5px; font-weight: 500; }
.main-nav a:hover, .main-nav a.active { color: var(--khaki); }
.lang-switch a { color: #555F6D; font-family: "Barlow Condensed", sans-serif; font-size: 12px; letter-spacing: 1px; padding: 0 4px; }
.lang-switch a.active { color: #1F1F1F; font-weight: 700; }

/* Footer : sobre, sans logo/slogan */
.site-footer { background: #5F6E3B; color: #F2F5E8; padding: 3rem 0 1.5rem; }
.site-footer .footer-brand img { display: none !important; }
.site-footer .footer-baseline { display: none !important; }
.site-footer h4 { color: #F2F5E8; font-family: "Barlow Condensed", sans-serif; text-transform: uppercase; letter-spacing: 1px; font-size: 13px; margin-bottom: 10px; font-weight: 600; }
.site-footer a { color: #C9CCCC; text-decoration: none; border-bottom: none; font-size: 13px; }
.site-footer a:hover { color: #FFF; }
.site-footer .footer-brand p { color: #C9CCCC; font-size: 13px; line-height: 1.6; margin: 0 0 8px 0; }
.site-footer ul { padding: 0; margin: 0; list-style: none; }
.site-footer li { margin-bottom: 5px; }
.site-footer .footer-bottom { border-top: 1px solid rgba(255,255,255,.25); margin-top: 2rem; padding-top: 1rem; font-size: 12px; color: #F2F5E8; text-align: center; }

/* Cacher blocs devenus obsolètes */
.tag { display: none !important; }
.facts { display: none !important; }

/* Hero : le slogan (baseline anglaise) reste ici */
.hero .baseline { color: var(--khaki); font-style: italic; font-size: 14px; letter-spacing: 0.5px; margin: 8px 0 12px; }
.hero h1 { color: #1F1F1F; font-family: "Barlow Condensed", sans-serif; font-weight: 700; letter-spacing: -0.8px; }

/* === Justification texte + blocs carrés uniformes === */
.grid-cards .card p,
.pillar-summary p,
.pilier-head p,
.services-grid .service p,
.services-grid .service em,
.services-grid .service ul li,
.approach-steps .step p,
.pilier > p {
  text-align: justify;
  hyphens: auto;
  -webkit-hyphens: auto;
}

/* Cartes valeurs uniformes en hauteur */
.grid-cards .card { min-height: 140px; display: flex; flex-direction: column; }
.grid-cards .card p { flex: 1; }

/* Étapes approche uniformes */
.approach-steps .step { min-height: 170px; display: flex; flex-direction: column; }

/* Pilier summaries alignées */
.pillar-summary { min-height: 140px; display: flex; flex-direction: column; }

/* Bloc unique de Pilier 2 : occupe toute la largeur pour ne pas paraître orphelin */
#pilier-fourniture .services-grid { grid-template-columns: 1fr; }
#pilier-fourniture .services-grid .service { min-height: 260px; }

/* Assurer que l'em (italique) et la liste tiennent bien dans le bloc */
.services-grid .service em { margin-bottom: 4px; }

/* Retirer toute ligne verticale résiduelle */
.piliers::before, .piliers::after { display: none !important; content: none !important; }
