@font-face{font-family:'Nunito Sans';src:url('nunito-sans-v19-latin-regular.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}:root{--bg:#F8F9FA;--bg-white:#FFF;--bg-light:#FFF;--bg-mid:#F4F5F7;--text:#1B1B1B;--text-light:#4B4B4D;--title:#000;--accent:#0D4C46;--accent-light:#8ED4C9;--amber:#C1A26C;--panel:#FFF;--panel-border:#E1E2E3;--stroke:#D8D9DA;--shadow:0 3px 12px rgba(0,0,0,.04);--panel-deep:#0B3A36;--panel-deep-grad:linear-gradient(180deg,#0E4742 0%,#0A3532 100%);--panel-deep-text:#E9F3F1;--panel-deep-sub:#CFE6E2;--hero-height:480px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:"Nunito Sans",system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;background:var(--bg);line-height:1.75;color:var(--text)}img{max-width:100%;height:auto;display:block}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}strong{color:var(--amber)}.member .tagline strong,.member .tagline strong i{color:var(--accent)!important}#contact strong{color:#fff!important}#contact .cta strong{color:var(--amber)!important}.menu-toggle{display:none}nav button{display:inherit}.nav{position:sticky;top:0;z-index:50;background:var(--accent);padding:10px 0}.nav .wrap{max-width:1180px;margin:0 auto;padding:0 20px;display:flex;justify-content:center;gap:30px}.nav a{color:#FFF;font-weight:600;padding:8px 12px;border-radius:6px;transition:.25s}.nav a:hover,.nav a[data-active=true]{background:rgba(255,255,255,.14)}.logo{width:150px}#accueil.hero{position:relative;padding:0;height:var(--hero-height);overflow:hidden}#accueil.hero img{position:fixed;top:0;left:0;width:100%;height:var(--hero-height);object-fit:cover;object-position:center top;z-index:-1}#accueil.hero::after{content:"";position:fixed;top:var(--hero-height);left:0;right:0;height:3px;background:linear-gradient(90deg,transparent,var(--amber),transparent);opacity:.95;z-index:0}.section-1{background:var(--bg-white)}.section-2{background:var(--bg-light)}.section-3{background:var(--bg-white)}.section-4{background:var(--bg-mid)}.section-5{background:var(--bg-white)}.section-6{background:var(--bg-light)}.section-7{background:var(--bg-white)}.intro,.panel{max-width:1180px;margin:36px auto;padding:32px;border-radius:14px;background:var(--panel);border:1px solid var(--panel-border);box-shadow:var(--shadow);position:relative;overflow:hidden;z-index:2}.panel::before{content:"";position:absolute;top:0;left:0;width:100%;height:3px;background:var(--accent);border-radius:14px 14px 0 0}.intro::after,.panel::after{content:"";position:absolute;left:26px;right:26px;bottom:-14px;height:1px;background:linear-gradient(90deg,transparent,rgba(193,162,108,.28),transparent)}.panel[aria-label="À qui nous nous adressons"],.panel[aria-label="Notre singularité"],#intervention.panel,#domaines.panel{background:var(--panel-deep-grad);border-color:rgba(255,255,255,.08)}.panel[aria-label="À qui nous nous adressons"] h2,.panel[aria-label="Notre singularité"] h2,#intervention.panel h2,#domaines.panel h2{color:#FFF;border-bottom-color:rgba(255,255,255,.28)}.panel[aria-label="À qui nous nous adressons"] p,.panel[aria-label="Notre singularité"] p,#intervention.panel p,#domaines.panel>p{color:var(--panel-deep-sub)}.panel[aria-label="À qui nous nous adressons"] .bullet-list li,.panel[aria-label="Notre singularité"] .bullet-list li,#intervention.panel .bullet-list li{color:var(--panel-deep-sub)}.panel[aria-label="À qui nous nous adressons"] .bullet-list li::before,.panel[aria-label="Notre singularité"] .bullet-list li::before,#intervention.panel .bullet-list li::before{color:#EAF7F4}#domaines .card{background:#FFF;border:1px solid var(--panel-border);box-shadow:var(--shadow)}.site-title h1{font-family:"EB Garamond",serif;font-size:2.7rem;color:var(--accent)}.site-title .tagline{margin-top:10px;font-weight:700;font-size:1.05rem;color:var(--amber)}.intro .tagline strong{font-size:1.34rem;letter-spacing:.015em;line-height:1.45;color:var(--accent);display:inline-block;padding:6px 0 6px 14px;border-left:4px solid var(--amber)}h2{color:var(--accent);font-size:2rem;margin-bottom:16px;font-family:"EB Garamond",serif;font-variant:small-caps;letter-spacing:.03em;display:inline-block;padding-bottom:10px;border-bottom:2px solid var(--amber)}h3{color:var(--title);font-size:1.2rem;margin:12px 0 8px}p{color:var(--text-light);margin-bottom:10px}.bullet-list,.approach-list{list-style:none}.bullet-list li,.approach-list li{position:relative;padding-left:26px;margin:8px 0;color:var(--text-light)}.bullet-list li::before{content:"\25b8";position:absolute;left:6px;color:var(--accent)}.approach-list li::before{content:"";width:14px;height:14px;position:absolute;left:6px;top:.45em;background:var(--accent);border-radius:4px}.columns{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.card{background:#FFF;border:1px solid var(--panel-border);border-radius:12px;padding:24px;transition:.25s;display:flex;flex-direction:column;box-shadow:var(--shadow)}.card:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(0,0,0,.06)}.card:nth-child(even){background:rgba(193,162,108,.04)}.service-card{text-align:center}.service-card .service-img{display:block;width:auto;max-width:100%;margin:10px auto 14px;border-radius:10px}.service-card h3{margin-top:6px;margin-bottom:6px}.service-card p{margin-left:auto;margin-right:auto;max-width:30em}.domaines-grid .service-illustration,.domaines-grid img{width:72%;max-width:420px;max-height:240px;margin:6px auto 14px;border-radius:10px;object-fit:contain;padding-bottom:10px;border-bottom:1px solid rgba(13,76,70,.15)}.domaines-grid .card h3{text-align:center;color:var(--title)}.service-icon{margin-top:auto;display:flex;justify-content:center;padding-top:8px}.service-icon .icon-wrap{width:46px;height:46px;border-radius:12px;background:rgba(13,76,70,.10);border:1px solid rgba(13,76,70,.25);display:grid;place-items:center;cursor:pointer;user-select:none;outline:0;transition:transform .15s ease}.service-icon .icon-wrap:hover,.service-icon .icon-wrap:focus{transform:scale(1.06);box-shadow:0 0 0 3px rgba(13,76,70,.20);border-radius:12px}.team{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}.member{background:var(--panel);border:1px solid var(--panel-border);border-radius:12px;padding:24px;transition:.25s;box-shadow:var(--shadow)}.member:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(0,0,0,.06)}.member img{border-radius:12px;margin-bottom:10px}.member .tagline{color:var(--accent);font-weight:700;margin-bottom:6px}.section-image{width:76%;max-width:560px;max-height:320px;margin:10px auto 0;border-radius:12px;object-fit:contain}.intro .brand{display:flex;align-items:center;gap:40px;justify-content:flex-start}.intro .brand .logo{flex:0 0 auto}.intro .site-title{flex:1;text-align:left}#contact{width:100%;background:var(--accent);padding:40px 0;margin:0;position:relative}#contact::before{content:"";position:absolute;top:0;left:0;right:0;height:8px;background:var(--amber)}#contact .panel{background:var(--accent);border:none;box-shadow:none;max-width:1180px;margin:auto}#contact .panel::before{display:none}#contact h2{color:#FFF;border-bottom:1px solid rgba(255,255,255,.18);padding-bottom:8px;margin-bottom:16px}#contact .cta{background:#FFF;color:var(--text);border-radius:14px 14px 0 0;padding:18px 22px;margin:18px auto 0;max-width:900px;box-shadow:var(--shadow);text-align:center}#contact .cta p{color:var(--text)!important}#contact .cta+p{background:#FFF;color:var(--text);border-radius:0 0 14px 14px;padding:10px 22px 16px;margin:0 auto 22px;max-width:900px;box-shadow:var(--shadow);text-align:center}#contact .cta+p a{color:var(--accent);font-weight:600}#contact p{color:#E7F3F0}#contact a{color:#D0F0EA;font-weight:600}.footer{width:100%;text-align:center;margin:30px auto 0}.legal p{margin:2px 0;font-size:.85rem;color:#E7F3F0}.reveal{opacity:0;transform:translateY(12px) scale(.98)}.reveal.in{opacity:1;transform:none;transition:.7s}.drop{margin-top:8px}.drop>summary{cursor:pointer;font-weight:700;list-style:none;user-select:none;outline:0}.drop>summary::-webkit-details-marker{display:none}.drop>summary::after{content:"\25be";margin-left:6px}.drop[open]>summary::after{content:"\25b4"}.lnk{color:var(--accent);font-weight:700;text-decoration:underline}.lnk:hover,.lnk:focus{text-decoration:none;box-shadow:0 0 0 3px rgba(13,76,70,.25);border-radius:6px}.service-card .svc-desc{display:none}.service-icon .icon-wrap{cursor:pointer;user-select:none;outline:0;transition:transform .15s ease}.service-icon .icon-wrap:hover,.service-icon .icon-wrap:focus{transform:scale(1.06);box-shadow:0 0 0 3px rgba(13,76,70,.20);border-radius:12px}#domaines details.drop>summary{text-align:center;width:100%;display:block}@media(max-width:992px){#accueil.hero img{position:static;width:100%;height:auto;object-fit:initial;object-position:initial;z-index:0}#accueil.hero::after{position:absolute;top:auto;bottom:0}.nav .wrap{padding:0 14px;gap:12px;justify-content:space-between;align-items:center;position:relative}.menu-toggle{display:flex;align-items:center;gap:8px;color:#FFF;background:transparent;border:1px solid rgba(255,255,255,.28);padding:8px 12px;border-radius:8px;font-weight:700;line-height:1;cursor:pointer}.menu-toggle svg{width:22px;height:22px}.nav .links{display:none;position:absolute;top:100%;left:0;right:0;background:var(--accent);padding:8px 10px 12px;border-bottom:1px solid rgba(255,255,255,.18);box-shadow:0 10px 18px rgba(0,0,0,.12);z-index:60}.nav .links a{display:block;padding:12px 10px;margin:2px 0;border-radius:8px;color:#FFF;font-weight:700}.nav .links a:hover,.nav .links a[data-active="true"]{background:rgba(255,255,255,.14);text-decoration:none}.menu-toggle[aria-expanded="true"]+.links{display:block}.intro .brand{flex-direction:column;gap:16px;align-items:flex-start}.logo{width:130px}body{line-height:1.95}h2{font-size:1.85rem}h3{font-size:1.1rem}p{font-size:1.02rem}.intro,.panel{padding:22px 18px;margin:28px auto}.site-title h1{font-size:2.2rem}.site-title .tagline{font-size:1rem}.intro .tagline strong{font-size:1.12rem;padding:6px 0 6px 12px;border-left-width:3px}.columns{grid-template-columns:1fr;gap:16px}.card{padding:20px}.panel+.panel{margin-top:22px}.service-card p{max-width:26em}.domaines-grid .service-illustration,.domaines-grid img{width:82%;max-width:320px;max-height:200px}.section-image{width:92%;max-width:520px;max-height:300px}.team{gap:16px}.bullet-list li,.approach-list li{padding-left:22px}.bullet-list li::before,.approach-list li::before{left:4px}.service-card .service-img{max-width:92%}}@media(min-width:769px) and (max-width:1200px){.columns{grid-template-columns:repeat(2,1fr)}.domaines-grid .service-illustration,.domaines-grid img{width:76%;max-width:360px;max-height:220px}}@media(max-width:360px){.nav .wrap{gap:8px}.nav .links a{padding:12px 8px}h2{font-size:1.7rem}.intro,.panel{padding:20px 16px}.card{padding:18px}}@media (max-width:992px){#accueil.hero{height:auto;min-height:0;padding:0;overflow:hidden;border-bottom:0 solid transparent}#accueil.hero img{position:static;display:block;width:100%;height:auto;object-fit:cover;object-position:center top}#accueil.hero::after{position:static;display:block;content:"";width:100%;height:3px;background:linear-gradient(90deg,transparent,var(--amber),transparent);opacity:.95}}.nav a:focus{outline:3px solid rgba(255,255,255,.45);outline-offset:2px}@media (max-width:992px){.nav.open .links{display:block}}

/* Mobile refinements (EN): narrower width for service descriptions */
@media (max-width: 992px), (pointer:coarse) {
  .service-card p.svc-desc { max-width: 22em; margin-left:auto; margin-right:auto; }
}
@media (max-width: 480px) {
  .service-card p.svc-desc { max-width: 20em; }
}
