:root{--navy:#002B5C;--blue:#005A91;--cyan:#008FC5;--slate:#66727C;--ink:#10273C;--muted:#587080;--soft:#F4F6F7;--white:#FFFFFF;--coral:#D96845;--green:#4A8B69;--line:#DCE5EA;--shadow:0 18px 50px rgba(0,43,92,.10);--radius:22px;--max:1220px;}*{box-sizing:border-box;}html{scroll-behavior:smooth;}body{margin:0;font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;color:var(--ink);background:#fff;line-height:1.6;-webkit-font-smoothing:antialiased;}img{display:block;max-width:100%;}a{color:inherit;}button,input,select,textarea{font:inherit;}.container{width:min(calc(100% - 40px),var(--max));margin-inline:auto;}.section{padding:100px 0;}.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;}.skip-link{position:fixed;left:16px;top:10px;z-index:9999;transform:translateY(-200%);background:#fff;padding:10px 14px;border-radius:8px;}.skip-link:focus{transform:none;}h1,h2,h3,p{margin-top:0;}h1,h2,h3{line-height:1.08;letter-spacing:-.035em;}h1{font-size:clamp(3.1rem,7.2vw,6.8rem);max-width:970px;margin-bottom:28px;}h2{font-size:clamp(2.2rem,4.6vw,4.5rem);margin-bottom:22px;}h3{font-size:1.45rem;}p{color:var(--muted);}.eyebrow{margin:0 0 24px;text-transform:uppercase;letter-spacing:.14em;font-size:.74rem;font-weight:850;color:var(--cyan);}.eyebrow::after{content:"";display:block;width:44px;height:3px;margin-top:11px;background:var(--coral);border-radius:2px;}.eyebrow.light{color:#8FDBF4;}.section-head{display:grid;grid-template-columns:1.2fr .7fr;gap:70px;align-items:end;margin-bottom:44px;}.section-head>p{font-size:1.04rem;margin-bottom:8px;}.site-header{position:sticky;top:0;z-index:1000;background:rgba(0,43,92,.98);border-bottom:1px solid rgba(255,255,255,.10);box-shadow:0 6px 22px rgba(0,20,45,.18);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);}.header-inner{height:82px;display:flex;align-items:center;justify-content:space-between;gap:28px;}.brand img{width:230px;height:auto;}.site-header .brand img{filter:none;}.main-nav{display:flex;align-items:center;gap:29px;font-size:.86rem;font-weight:750;}.main-nav a{color:rgba(255,255,255,.88);text-decoration:none;white-space:nowrap;}.main-nav a:not(.nav-cta):hover{color:#8FDBF4;}.nav-cta{padding:11px 17px;border-radius:999px;background:var(--coral);color:#fff;}.nav-toggle{display:none;border:0;background:none;padding:8px;}.nav-toggle span:not(.sr-only){display:block;width:25px;height:2px;margin:5px;background:#fff;}.hero{position:relative;min-height:780px;display:flex;align-items:center;overflow:hidden;background:var(--navy);}.hero-bg,.hero-shade{position:absolute;inset:0;}.hero-bg img{width:100%;height:100%;object-fit:cover;}.hero-shade{background:linear-gradient(
      90deg,
      rgba(0,24,52,.84) 0%,
      rgba(0,30,64,.72) 28%,
      rgba(0,43,92,.46) 45%,
      rgba(0,43,92,.18) 60%,
      rgba(0,43,92,.04) 73%,
      transparent 86%
    ),
    linear-gradient(
      0deg,
      rgba(0,25,52,.18) 0%,
      transparent 38%
    );}.hero-bg img{width:100%;height:100%;object-fit:cover;filter:saturate(1.08)
    contrast(1.04);transform:scale(1.01);}.hero-copy h1{text-shadow:0 2px 14px rgba(0,20,45,.28);}.hero-copy .hero-lead{text-shadow:0 1px 8px rgba(0,20,45,.22);}.hero-inner{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:50px;align-items:end;padding:105px 0 90px;}.hero-copy{color:#fff;}.hero h1 span{color:#7FD8F0;}.hero-lead{font-size:clamp(1.08rem,1.6vw,1.34rem);max-width:810px;color:rgba(255, 255, 255, 0.836);}.hero-lead strong{color:#fff;}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:36px;}.btn{border:0;border-radius:999px;padding:14px 22px;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;font-weight:850;cursor:pointer;transition:.2s ease;}.btn:hover{transform:translateY(-2px);}.btn-primary{background:#fff;color:var(--navy);}.btn-ghost{border:1px solid rgba(255,255,255,.5);color:#fff;background:rgba(255,255,255,.08);}.btn-coral{background:var(--coral);color:#fff;}.btn-secondary{border:1px solid var(--navy);background:#fff;color:var(--navy);}.btn-secondary:hover{background:var(--soft);}.mini-label{display:block;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;font-weight:850;color:#80D7F1;}.hero-contour{position:absolute;right:-8%;bottom:-150px;width:650px;height:420px;border:1px solid rgba(255,255,255,.12);border-radius:50%;transform:rotate(-10deg);box-shadow:0 0 0 32px rgba(255,255,255,.03),0 0 0 64px rgba(255,255,255,.025),0 0 0 96px rgba(255,255,255,.02);}.btn-arrow{margin-left:8px;transition:transform .2s ease;}.btn:hover .btn-arrow{transform:translateX(4px);}.proof-strip{position:relative;z-index:5;margin-top:-34px;background:transparent;}.proof-grid{display:grid;grid-template-columns:repeat(4,1fr);overflow:hidden;border:1px solid rgba(0,43,92,.10);border-radius:16px;background:rgba(255,255,255,.96);box-shadow:0 18px 45px rgba(0,43,92,.10);}.proof-grid article{position:relative;display:grid;grid-template-columns:28px minmax(0,1fr);gap:13px;align-items:start;padding:25px 24px;border-right:1px solid #E1E8EC;}.proof-grid article:last-child{border-right:0;}.proof-grid strong{display:block;margin-bottom:5px;color:var(--navy);font-size:.88rem;font-weight:850;line-height:1.25;}.proof-grid article div > span{display:block;color:var(--slate);font-size:.72rem;line-height:1.45;}.proof-grid article::before{content:"";position:absolute;top:10px;left:24px;width:34px;height:3px;background:var(--coral);border-radius:2px;}.audience-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}.audience-card{display:flex;flex-direction:column;padding:30px;border:1px solid var(--line);border-radius:20px;background:#fff;transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;}.audience-card:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:#C8D8E1;}.audience-card h3{font-size:1.15rem;line-height:1.2;margin-bottom:15px;}.audience-card p{font-size:.87rem;line-height:1.65;margin-bottom:20px;}.audience-card a{font-weight:850;font-size:.82rem;text-decoration:none;color:var(--blue);transition:color .2s ease;}.audience-card a:hover{color:var(--cyan);}.audience-icon{display:grid;place-items:center;width:58px;height:58px;border-radius:17px;margin-bottom:25px;flex:0 0 auto;transition:transform .25s ease, background-color .25s ease;}.audience-card:hover .audience-icon{transform:translateY(-2px) scale(1.04);}.audience-icon svg{width:27px;height:27px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}.audience-icon-public{color:#002B5C;background:#E7EEF5;border:1px solid #CFDBE7;}.audience-icon-exploitant{color:#008FC5;background:#E5F5FA;border:1px solid #C7E8F2;}.audience-icon-agriculture{color:#4A8B69;background:#EAF3ED;border:1px solid #D3E5D8;}.audience-icon-industrie{color:#596A75;background:#EEF1F3;border:1px solid #DCE2E5;}.audience-icon-be{color:#005A91;background:#E7F0F6;border:1px solid #CEDFEA;}.audience-icon-entreprise{color:#D96845;background:#FBEDE8;border:1px solid #F2D4CA;}.audience-icon-developpement{color:#6972A8;background:#EEF0F8;border:1px solid #DADDEE;}.audience-tags{margin-top:auto;padding-top:16px;padding-bottom:18px;border-top:1px solid var(--line);color:var(--slate);font-size:.70rem;font-weight:750;line-height:1.55;}.contact{padding:95px 0;background:linear-gradient(135deg,#001E40,var(--navy));color:#fff;}.contact-grid{display:grid;grid-template-columns:1fr .8fr;gap:100px;align-items:start;}.contact-copy h2{color:#fff;}.contact-copy p:last-child{color:rgba(255,255,255,.68);font-size:1.06rem;max-width:650px;}.contact-card{background:#fff;color:var(--ink);padding:32px;border-radius:22px;box-shadow:0 30px 70px rgba(0,0,0,.2);}.contact-card .mini-label{color:var(--coral);}.contact-main{display:block;color:var(--navy);font-size:1.45rem;font-weight:900;text-decoration:none;margin:10px 0 5px;word-break:break-word;}.contact-phone{display:block;color:var(--cyan);font-weight:800;text-decoration:none;margin-bottom:5px;}.contact-card>span:not(.mini-label){font-size:.75rem;color:var(--slate);}.quick-form{margin-top:25px;padding-top:22px;border-top:1px solid var(--line);}.quick-form label{display:block;font-size:.78rem;font-weight:800;color:var(--navy);margin:14px 0;}.quick-form small{display:block;margin-top:10px;color:#7B8991;font-size:.68rem;}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;}.quick-form input,.quick-form select,.quick-form textarea{width:100%;margin-top:7px;border:1px solid #CBD8DF;border-radius:10px;padding:12px 13px;background:#fff;color:var(--ink);outline:none;transition:border-color .2s ease, box-shadow .2s ease;}.quick-form input:focus,.quick-form select:focus,.quick-form textarea:focus{border-color:var(--cyan);box-shadow:0 0 0 3px rgba(0,143,197,.10);}.quick-form textarea{resize:vertical;min-height:145px;}.form-submit{margin-top:20px;}.form-help{margin:10px 0 0;font-size:.72rem;color:var(--slate);}.form-help strong{color:var(--navy);}.form-honeypot{position:absolute !important;left:-9999px !important;width:1px;height:1px;overflow:hidden;}.form-status{display:none;margin-top:20px;padding:14px 16px;border-radius:10px;font-size:.86rem;font-weight:700;}.form-status.success{display:block;background:#EAF5EE;color:#35694C;border:1px solid #CDE4D6;}.form-status.error{display:block;background:#FCEDEA;color:#9C442F;border:1px solid #F0CFC6;}.site-footer{background:#00162F;color:#fff;padding:28px 0;}.footer-brand img{width:205px;}.reveal{opacity:1;transform:none;}.js .reveal{opacity:0;transform:translateY(18px);transition:opacity .55s ease,transform .55s ease;}.js .reveal.visible{opacity:1;transform:none;}@media (max-width:1050px){.main-nav{gap:18px;}.hero-inner{grid-template-columns:1fr;}.audience-grid{grid-template-columns:1fr 1fr;}.contact-grid{gap:55px;}}@media (max-width:860px){.section{padding:78px 0;}.nav-toggle{display:block;}.main-nav{display:none;position:absolute;left:20px;right:20px;top:75px;padding:18px;background:var(--navy);border:1px solid rgba(255,255,255,.12);border-radius:16px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch;}.main-nav.open{display:flex;}.main-nav a{padding:8px;}.nav-cta{text-align:center;}.section-head,.contact-grid{grid-template-columns:1fr;gap:38px;}.proof-grid{grid-template-columns:1fr 1fr;}.proof-grid article{border-bottom:1px solid var(--line);}}@media (max-width:860px){.proof-strip{margin-top:-20px;}.proof-grid{grid-template-columns:1fr 1fr;}.proof-grid article{border-bottom:1px solid #E1E8EC;}.proof-grid article:nth-child(2){border-right:0;}.proof-grid article:nth-child(3),.proof-grid article:nth-child(4){border-bottom:0;}}@media (max-width:620px){.proof-strip{margin-top:0;background:#fff;}.proof-grid{grid-template-columns:1fr;border:0;border-radius:0;box-shadow:none;}.proof-grid article{grid-template-columns:28px minmax(0,1fr);padding:20px 0;border-right:0;border-bottom:1px solid var(--line);}.proof-grid article:last-child{border-bottom:0;}.proof-grid article::before{left:0;}}@media (max-width:620px){.container{width:min(calc(100% - 28px),var(--max));}.header-inner{height:70px;}.brand img{width:190px;}.hero{min-height:700px;}.hero-inner{padding:80px 0 60px;}h1{font-size:clamp(2.75rem,13vw,4.3rem);}.audience-grid{grid-template-columns:1fr;}.audience-card{padding:25px;}.audience-card p{min-height:auto;}.form-row{grid-template-columns:1fr;}.contact-card{padding:24px;}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto;}*{transition:none !important;}.js .reveal{opacity:1;transform:none;}}.about-actions{display:flex;gap:18px;margin-top:32px;}@media (max-width:1050px){.about-actions{flex-direction:column;}}@media (max-width:520px){.about-actions{gap:10px;}}.expertises-link{display:inline-flex;align-items:center;gap:12px;width:max-content;margin-top:18px;padding-bottom:3px;border-bottom:2px solid var(--accent);color:var(--accent);font-size:.86rem;font-weight:850;text-decoration:none;}.expertises-link span{font-size:1.25rem;transition:transform .2s ease;}.expertises-link:hover span{transform:translateX(5px);}.interventions{position:relative;padding:105px 0;overflow:hidden;background:#F8FBFC;}.interventions-head{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(380px,.75fr);gap:80px;align-items:end;margin-bottom:52px;}.interventions-head h2{max-width:720px;margin:0;color:var(--navy);font-size:clamp(2.8rem,4.5vw,4.7rem);line-height:1;letter-spacing:-.045em;}.interventions-intro{max-width:560px;margin:0 0 5px;color:var(--muted);font-size:1rem;line-height:1.65;}.interventions-intro strong{color:var(--ink);}.interventions-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;}.intervention-card{position:relative;display:flex;flex-direction:column;min-height:330px;padding:30px 30px 27px;border:1px solid #DCE7EC;border-radius:16px;background:#fff;box-shadow:0 8px 25px rgba(0,43,92,.035);transition:transform .22s ease,
    box-shadow .22s ease,
    border-color .22s ease;}.intervention-card:hover{transform:translateY(-4px);border-color:#C7D9E2;box-shadow:0 18px 40px rgba(0,43,92,.08);}.intervention-card::before{content:"";position:absolute;top:12px;left:30px;width:38px;height:3px;border-radius:3px;background:var(--coral);}.intervention-card-top{display:flex;align-items:center;gap:13px;margin-bottom:22px;}.intervention-number{display:grid;place-items:center;width:43px;height:43px;flex:0 0 43px;border-radius:50%;background:#E7F4F9;color:var(--cyan);font-size:.80rem;font-weight:900;}.intervention-verb{color:var(--cyan);font-size:.67rem;font-weight:900;letter-spacing:.11em;text-transform:uppercase;}.intervention-card h3{margin:0 0 13px;color:var(--navy);font-size:1.28rem;font-weight:850;line-height:1.15;letter-spacing:-.025em;}.intervention-purpose{margin:0 0 25px;color:#49677B;font-size:.87rem;line-height:1.55;}.intervention-services{margin-top:auto;padding-top:17px;border-top:1px solid #E2E9ED;}.intervention-services > span{display:block;margin-bottom:8px;color:var(--slate);font-size:.62rem;font-weight:900;letter-spacing:.11em;text-transform:uppercase;}.intervention-services p{margin:0;color:#607685;font-size:.70rem;font-weight:650;line-height:1.6;letter-spacing:.015em;}.intervention-card-featured{grid-column:1 / -1;display:grid;grid-template-columns:.78fr .9fr 1.35fr;gap:42px;min-height:0;align-items:center;padding:28px 34px;border-color:#CFE1E9;background:linear-gradient(
      100deg,
      #FFFFFF 0%,
      #F4FAFC 100%
    );}.intervention-card-featured::before{width:52px;}.intervention-card-featured .intervention-card-top{margin-bottom:13px;}.intervention-card-featured h3{margin:0;font-size:1.45rem;}.intervention-card-featured .intervention-purpose{margin:0;}.intervention-card-featured .intervention-services{margin:0;padding:0 0 0 30px;border-top:0;border-left:1px solid #DCE7EC;}@media (max-width:1050px){.interventions-head{grid-template-columns:1fr 1fr;gap:45px;}.interventions-grid{grid-template-columns:1fr 1fr;}.intervention-card-featured{grid-column:1 / -1;grid-template-columns:1fr 1fr;}.intervention-card-featured .intervention-services{grid-column:1 / -1;padding:20px 0 0;border-left:0;border-top:1px solid #DCE7EC;}}@media (max-width:760px){.interventions{padding:75px 0;}.interventions-head{grid-template-columns:1fr;gap:25px;margin-bottom:38px;}.interventions-head h2{font-size:clamp(2.6rem,11vw,4rem);}.interventions-grid{grid-template-columns:1fr;}.intervention-card{min-height:0;padding:27px 24px 25px;}.intervention-card-featured{grid-column:auto;display:flex;flex-direction:column;align-items:stretch;gap:0;}.intervention-card-featured .intervention-purpose{margin-bottom:25px;}.intervention-card-featured .intervention-services{padding:17px 0 0;border-top:1px solid #DCE7EC;}}.references-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;}.reference-card{position:relative;display:flex;flex-direction:column;min-height:445px;padding:34px 28px 27px;border:1px solid #DCE7EC;border-radius:16px;background:#fff;box-shadow:0 8px 25px rgba(0,43,92,.035);transition:transform .22s ease,
    box-shadow .22s ease,
    border-color .22s ease;}.reference-card:hover{transform:translateY(-4px);border-color:#C6DAE4;box-shadow:0 18px 40px rgba(0,43,92,.075);}.reference-card::before{content:"";position:absolute;top:14px;left:28px;width:38px;height:3px;border-radius:3px;background:var(--coral);}.reference-card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin:11px 0 21px;}.reference-card-top span{color:var(--cyan);font-size:.64rem;font-weight:900;line-height:1.4;letter-spacing:.085em;text-transform:uppercase;}.reference-card-top small{flex:0 0 auto;color:var(--slate);font-size:.68rem;font-weight:750;}.reference-card h3{margin:0 0 7px;color:var(--navy);font-size:1.42rem;font-weight:850;line-height:1.12;letter-spacing:-.025em;}.reference-subtitle{margin:0 0 17px;color:#315A76;font-size:.79rem;font-weight:750;line-height:1.45;}.reference-description{margin:0 0 24px;color:#587083;font-size:.82rem;line-height:1.6;}.reference-data{margin-top:auto;padding:15px 16px;border-radius:10px;background:#F3F8FA;border:1px solid #E1EBEF;}.reference-data strong{display:block;margin-bottom:4px;color:var(--navy);font-size:1rem;font-weight:850;line-height:1.2;}.reference-data span{display:block;color:#66808F;font-size:.69rem;line-height:1.45;}.reference-role{margin-top:16px;padding-top:15px;border-top:1px solid #E3EAEE;}.reference-role > span{display:block;margin-bottom:6px;color:var(--coral);font-size:.61rem;font-weight:900;letter-spacing:.10em;text-transform:uppercase;}.reference-role p{margin:0;color:#516B7D;font-size:.70rem;font-weight:650;line-height:1.55;}@media (max-width:1080px){.references-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}@media (max-width:760px){.references-grid{grid-template-columns:1fr;}.reference-card{min-height:0;padding:32px 24px 25px;}.reference-card::before{left:24px;}}.references-page{background:#fff;}.references-page-hero{padding:150px 0 65px;background:#F8FBFC;border-bottom:1px solid #E2EBEF;}.references-page-hero-inner{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.75fr);gap:80px;align-items:end;}.references-page-hero h1{max-width:760px;margin:0;color:var(--navy);font-size:clamp(3rem,5vw,5rem);line-height:.98;letter-spacing:-.05em;}.references-page-hero-text{max-width:550px;margin:0 0 5px;}.references-page-hero-text p{margin:0 0 14px;color:var(--slate);font-size:.98rem;line-height:1.65;}.references-page-hero-text p:last-child{margin-bottom:0;}.references-page-hero-text strong{color:var(--navy);}.references-page-hero .eyebrow{position:relative;margin-bottom:32px;}.references-page-hero .eyebrow::after{content:"";position:absolute;left:0;bottom:-14px;width:40px;height:3px;border-radius:3px;background:var(--coral);}.references-page-content{padding:70px 0 110px;}.references-page-content .references-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;}.references-page-content .reference-card{min-height:445px;}.references-page-content .reference-card::before{top:14px;}@media (max-width:1080px){.references-page-hero-inner{grid-template-columns:1fr 1fr;gap:45px;}.references-page-content .references-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}@media (max-width:760px){.references-page-hero{padding:120px 0 50px;}.references-page-hero-inner{grid-template-columns:1fr;gap:28px;}.references-page-hero h1{font-size:clamp(2.6rem,12vw,4rem);}.references-page-content{padding:50px 0 75px;}.references-page-content .references-grid{grid-template-columns:1fr;}.references-page-content .reference-card{min-height:0;}}.header-inner{position:relative;}.main-nav{gap:21px;}.main-nav a[aria-current="page"]{color:var(--cyan);}.main-nav a[aria-current="page"]:not(.nav-cta){position:relative;}.main-nav a[aria-current="page"]:not(.nav-cta)::after{content:"";position:absolute;left:0;right:0;bottom:-8px;height:2px;border-radius:2px;background:var(--coral);}.nav-cta{margin-left:16px;padding:12px 19px;background:var(--coral);box-shadow:0 8px 20px rgba(217,104,69,.20);}.nav-cta:hover{background:#C95E3D;transform:translateY(-1px);}.nav-cta[aria-current="page"]{color:#fff;}.intervention-card[id],.reference-card[id],.audience-card[id]{scroll-margin-top:110px;}.home-page .hero{min-height:700px;}.home-page .hero-inner{padding:92px 0 82px;}.home-page .hero-lead{max-width:760px;}.home-section-head{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(330px,.72fr);gap:70px;align-items:end;margin-bottom:38px;}.home-section-head h2{max-width:760px;margin:0;color:var(--navy);font-size:clamp(2.45rem,4vw,4rem);line-height:1;letter-spacing:-.045em;}.home-section-head > div:last-child{max-width:540px;}.home-section-head > div:last-child p{margin:0 0 15px;color:var(--muted);font-size:.92rem;line-height:1.6;}.home-section-head-dark h2{color:#fff;}.home-section-head-dark > div:last-child p{color:rgba(255,255,255,.68);}.text-link{display:inline-flex;align-items:center;gap:9px;color:var(--blue);font-size:.84rem;font-weight:850;text-decoration:none;}.text-link span{transition:transform .2s ease;}.text-link:hover span{transform:translateX(4px);}.home-expertises{padding:88px 0 94px;background:#fff;}.home-expertise-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;}.home-expertise-card{display:block;overflow:hidden;border:1px solid #DCE6EB;border-radius:18px;background:#fff;box-shadow:0 8px 28px rgba(0,43,92,.045);text-decoration:none;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;}.home-expertise-card:hover{transform:translateY(-5px);border-color:#C7D9E2;box-shadow:0 18px 42px rgba(0,43,92,.09);}.home-expertise-photo{height:190px;overflow:hidden;background:#DCE8ED;}.home-expertise-photo img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease;}.home-expertise-card:hover .home-expertise-photo img{transform:scale(1.025);}.home-expertise-body{padding:25px 27px 26px;}.home-expertise-body h3{margin:0 0 8px;color:var(--navy);font-size:1.62rem;font-weight:850;line-height:1.08;letter-spacing:-.03em;}.home-expertise-body p{min-height:48px;margin:0 0 19px;color:#85939D;font-size:.85rem;font-weight:650;line-height:1.5;}.home-card-link{display:inline-flex;gap:8px;align-items:center;color:var(--blue);font-size:.78rem;font-weight:850;}.home-card-link b{font-size:1rem;transition:transform .2s ease;}.home-expertise-card:hover .home-card-link b{transform:translateX(4px);}.home-interventions{padding:82px 0 88px;background:var(--navy);}.home-references{padding:88px 0 92px;background:#fff;overflow:hidden;}.home-carousel{position:relative;}.home-carousel-actions{display:flex;justify-content:flex-end;gap:8px;margin:-4px 0 14px;}.carousel-button{width:42px;height:42px;display:grid;place-items:center;border:1px solid #D5E1E7;border-radius:50%;background:#fff;color:var(--navy);font-size:1.1rem;cursor:pointer;transition:.2s ease;}.carousel-button:hover:not(:disabled){background:var(--navy);border-color:var(--navy);color:#fff;}.carousel-button:disabled{opacity:.3;cursor:default;}.home-reference-track{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(300px,32%);gap:14px;overflow-x:auto;padding:2px 2px 14px;scroll-snap-type:x mandatory;scroll-behavior:smooth;overscroll-behavior-inline:contain;scrollbar-width:thin;scrollbar-color:#C5D8E1 transparent;}.home-reference-card{position:relative;min-height:270px;display:flex;flex-direction:column;padding:27px 25px 24px;border:1px solid #DCE7EC;border-radius:16px;background:#F9FCFD;text-decoration:none;scroll-snap-align:start;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;}.home-reference-card::before{content:"";position:absolute;top:13px;left:25px;width:36px;height:3px;border-radius:3px;background:var(--coral);}.home-reference-card:hover{transform:translateY(-3px);border-color:#C6DAE4;box-shadow:0 16px 34px rgba(0,43,92,.07);}.home-reference-card > span{margin:5px 70px 21px 0;color:var(--cyan);font-size:.61rem;font-weight:900;letter-spacing:.08em;line-height:1.4;text-transform:uppercase;}.home-reference-card small{position:absolute;right:25px;top:26px;color:var(--slate);font-size:.66rem;font-weight:750;}.home-reference-card h3{margin:0 0 8px;color:var(--navy);font-size:1.28rem;line-height:1.13;}.home-reference-card p{margin:0 0 22px;color:#6B7E8B;font-size:.78rem;line-height:1.55;}.home-reference-card strong{margin-top:auto;padding-top:15px;border-top:1px solid #DCE7EC;color:var(--navy);font-size:.93rem;}.home-audiences{padding:68px 0;background:linear-gradient(110deg,#0A3A68 0%,#002B5C 100%);color:#fff;}.home-audiences-inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,.9fr);gap:70px;align-items:center;}.home-audiences h2{max-width:680px;margin:0;color:#fff;font-size:clamp(2.25rem,3.8vw,3.7rem);line-height:1;}.home-audience-side{display:grid;gap:20px;justify-items:start;}.home-audience-tags{display:flex;flex-wrap:wrap;gap:8px;}.home-audience-tags span{padding:7px 10px;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(255,255,255,.06);color:rgba(255,255,255,.82);font-size:.69rem;font-weight:700;}.home-about{padding:86px 0 90px;background:#fff;}.home-about-grid{display:grid;grid-template-columns:minmax(320px,.72fr) minmax(0,1.28fr);gap:68px;align-items:center;}.home-about-photo{position:relative;height:330px;overflow:hidden;border-radius:20px;background:#DCECF2;}.home-about-photo img{width:100%;height:100%;object-fit:cover;}.home-about-badge{position:absolute;left:22px;bottom:22px;display:flex;align-items:baseline;gap:10px;padding:14px 17px;border-radius:12px;background:rgba(255,255,255,.92);box-shadow:0 10px 28px rgba(0,43,92,.12);}.home-about-badge strong{color:var(--navy);font-size:2rem;line-height:1;}.home-about-badge span{color:var(--slate);font-size:.72rem;font-weight:800;}.home-about-copy h2{max-width:760px;margin:0 0 20px;color:var(--navy);font-size:clamp(2.35rem,4vw,4rem);line-height:1.02;letter-spacing:-.045em;}.home-about-copy > p:not(.eyebrow){max-width:700px;margin-bottom:24px;font-size:.94rem;line-height:1.65;}.home-contact-cta{padding:72px 0;background:#001E40;color:#fff;}.home-contact-cta-inner{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:70px;align-items:center;}.home-contact-cta h2{max-width:760px;margin:0 0 12px;color:#fff;font-size:clamp(2.35rem,4vw,3.9rem);line-height:1.02;}.home-contact-cta p:not(.eyebrow){margin:0;color:rgba(255,255,255,.66);}.home-contact-actions{display:grid;justify-items:start;gap:8px;min-width:245px;}.home-contact-actions > a:not(.btn){color:rgba(255,255,255,.72);font-size:.78rem;text-decoration:none;}.home-contact-actions > a:not(.btn):hover{color:#fff;}.audience-page .audience-page-content{padding:92px 0 105px;background:linear-gradient(155deg,#001E40 0%,#002B5C 34%,#F7FAFB 34.1%,#F7FAFB 100%);}.audience-page .section-head{margin-bottom:54px;}.audience-page .section-head h2{color:#fff;max-width:720px;}.audience-page .section-head > p{color:rgba(255,255,255,.72);max-width:590px;}.audience-page .eyebrow{color:#8FDBF4;}.audience-page .audience-grid{gap:15px;}.audience-page .audience-card{border-radius:16px;box-shadow:0 8px 24px rgba(0,43,92,.05);}.audience-page .audience-card p{font-size:.82rem;line-height:1.6;}.audience-page .audience-card:target{outline:3px solid rgba(0,143,197,.22);outline-offset:4px;}.contact-page .contact{min-height:calc(100vh - 82px - 110px);display:flex;align-items:center;padding:82px 0 95px;}@media (max-width:1120px){.nav-toggle{display:block;}.main-nav{display:none;position:absolute;left:20px;right:20px;top:75px;padding:18px;background:var(--navy);border:1px solid rgba(255,255,255,.12);border-radius:16px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch;gap:3px;}.main-nav.open{display:flex;}.main-nav a{padding:8px;}.nav-cta{margin:7px 0 0;text-align:center;}.main-nav a[aria-current="page"]:not(.nav-cta)::after{display:none;}}@media (max-width:980px){.home-section-head,.home-audiences-inner,.home-about-grid,.home-contact-cta-inner{grid-template-columns:1fr;gap:32px;}.home-expertise-grid{grid-template-columns:1fr 1fr;}.home-expertise-card:last-child{grid-column:1 / -1;}.home-reference-track{grid-auto-columns:minmax(300px,48%);}.home-audiences-inner{grid-template-columns:1fr;}.home-about-photo{height:360px;}.home-contact-actions{min-width:0;}}@media (max-width:620px){.home-page .hero{min-height:650px;}.home-page .hero-inner{padding:72px 0 58px;}.home-expertises,.home-interventions,.home-references,.home-about{padding:68px 0;}.home-expertise-grid{grid-template-columns:1fr;}.home-expertise-card:last-child{grid-column:auto;}.home-expertise-photo{height:175px;}.home-expertise-body p{min-height:0;}.home-reference-track{grid-auto-columns:84%;}.home-carousel-actions{display:none;}.home-audiences{padding:60px 0;}.home-about-photo{height:300px;}.home-contact-cta{padding:62px 0;}.audience-page .audience-page-content{padding:70px 0;background:linear-gradient(155deg,#001E40 0%,#002B5C 20%,#F7FAFB 20.1%,#F7FAFB 100%);}.audience-page .section-head{grid-template-columns:1fr;gap:20px;}}@media (prefers-reduced-motion:reduce){.home-reference-track{scroll-behavior:auto;}}:root{--navy-deep:#001E40;--navy-panel:#063A68;--navy-panel-2:#0A416F;--text-on-navy:#F7FBFF;--muted-on-navy:rgba(255,255,255,.70);--line-on-navy:rgba(255,255,255,.15);}body{background:var(--navy);}.home-page .proof-strip,.home-page .home-expertises,.home-page .home-interventions,.home-page .home-references,.home-page .home-audiences,.home-page .home-about,.home-page .home-contact-cta,.content-page .interventions,.references-page .references-page-hero,.references-page .references-page-content,.audience-page .audience-page-content,.contact-page .contact,.privacy-page .privacy-hero,.privacy-page .privacy-content{background:var(--navy) !important;color:var(--text-on-navy);}.home-page .home-interventions,.home-page .home-audiences,.home-page .home-contact-cta,.contact-page .contact,.privacy-page .privacy-hero{background:linear-gradient(135deg,var(--navy-deep) 0%,var(--navy) 100%) !important;}.home-page section h2,.home-page section h3,.content-page main h1,.content-page main h2,.content-page main h3,.references-page main h1,.references-page main h2,.references-page main h3,.audience-page main h1,.audience-page main h2,.audience-page main h3,.contact-page main h1,.contact-page main h2,.privacy-page main h1,.privacy-page main h2{color:#fff;}.home-page section p,.content-page main p,.references-page main p,.audience-page main p,.contact-page .contact-copy p,.privacy-page main p{color:var(--muted-on-navy);}.home-page .eyebrow,.content-page .eyebrow,.references-page .eyebrow,.audience-page .eyebrow,.privacy-page .eyebrow{color:#8FDBF4;}.proof-strip{margin-top:-34px;background:transparent !important;}.proof-grid{background:rgba(4,52,94,.96);border-color:var(--line-on-navy);box-shadow:0 20px 50px rgba(0,15,35,.24);}.proof-grid article{border-color:var(--line-on-navy);}.proof-grid strong{color:#fff;}.proof-grid article div > span{color:var(--muted-on-navy);}.home-section-head h2,.home-about-copy h2{color:#fff;}.home-section-head > div:last-child p,.home-about-copy > p:not(.eyebrow){color:var(--muted-on-navy);}.text-link{color:#8FDBF4;}.text-link:hover{color:#fff;}.home-expertise-card{background:var(--navy-panel);border-color:var(--line-on-navy);box-shadow:0 12px 32px rgba(0,18,42,.18);}.home-expertise-card:hover{border-color:rgba(143,219,244,.42);box-shadow:0 20px 44px rgba(0,18,42,.28);}.home-expertise-body h3{color:#fff;}.home-expertise-body p{color:var(--muted-on-navy);}.home-card-link{color:#8FDBF4;}.home-reference-card{background:var(--navy-panel);border-color:var(--line-on-navy);box-shadow:0 10px 28px rgba(0,18,42,.18);}.home-reference-card:hover{border-color:rgba(143,219,244,.40);}.home-reference-card h3,.home-reference-card strong{color:#fff;}.home-reference-card > span{color:#8FDBF4;}.home-reference-card small,.home-reference-card p{color:var(--muted-on-navy);}.home-reference-card strong{border-color:var(--line-on-navy);}.home-carousel-actions button{background:rgba(255,255,255,.08);border-color:var(--line-on-navy);color:#fff;}.home-carousel-actions button:hover{background:rgba(255,255,255,.14);}.home-audience-tags span{border-color:var(--line-on-navy);background:rgba(255,255,255,.06);color:rgba(255,255,255,.86);}.home-about-badge{background:rgba(0,43,92,.92);border:1px solid rgba(255,255,255,.18);}.home-about-badge strong{color:#fff;}.home-about-badge span{color:rgba(255,255,255,.70);}.home-page .btn-secondary{color:#fff;background:transparent;border-color:rgba(255,255,255,.55);}.home-page .btn-secondary:hover{background:rgba(255,255,255,.08);}.interventions-head h2,.references-page-hero h1{color:#fff;}.interventions-intro,.references-page-hero-text p{color:var(--muted-on-navy);}.references-page-hero-text strong{color:#fff;}.intervention-card,.reference-card,.audience-page .audience-card{background:var(--navy-panel);border-color:var(--line-on-navy);box-shadow:0 10px 30px rgba(0,18,42,.20);}.intervention-card:hover,.reference-card:hover,.audience-page .audience-card:hover{border-color:rgba(143,219,244,.38);box-shadow:0 20px 45px rgba(0,18,42,.28);}.intervention-card h3,.reference-card h3,.reference-data strong,.audience-page .audience-card h3{color:#fff;}.intervention-purpose,.intervention-services p,.reference-subtitle,.reference-description,.reference-data span,.reference-role p,.audience-page .audience-card p,.audience-page .audience-tags{color:var(--muted-on-navy);}.intervention-verb,.reference-card-top span,.reference-role > span,.audience-page .audience-card a{color:#8FDBF4 !important;}.intervention-services,.reference-role,.audience-page .audience-tags{border-color:var(--line-on-navy);}.intervention-number{background:rgba(143,219,244,.12);color:#8FDBF4;}.intervention-card-featured{background:linear-gradient(105deg,var(--navy-panel) 0%,var(--navy-panel-2) 100%);border-color:var(--line-on-navy);}.intervention-card-featured .intervention-services{border-color:var(--line-on-navy);}.reference-data{background:rgba(255,255,255,.055);border-color:var(--line-on-navy);}.references-page-hero{border-color:var(--line-on-navy);}.audience-page .audience-page-content{background:linear-gradient(145deg,var(--navy-deep) 0%,var(--navy) 40%,#063A68 100%) !important;}.audience-page .section-head > p{color:var(--muted-on-navy);}.site-footer{padding:0;background:#00162F;color:#fff;border-top:1px solid rgba(255,255,255,.10);}.footer-main{display:grid;grid-template-columns:minmax(250px,.78fr) minmax(0,1.45fr);gap:80px;padding-top:48px;padding-bottom:38px;align-items:start;}.footer-identity .footer-brand{display:inline-block;margin-bottom:17px;}.footer-identity .footer-brand img{width:205px;height:auto;}.footer-identity p{margin:0 0 3px;color:#fff;font-size:.86rem;font-weight:800;}.footer-identity > span{display:block;color:rgba(255,255,255,.52);font-size:.70rem;line-height:1.5;}.footer-sitemap{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px;}.footer-column{display:grid;align-content:start;gap:7px;}.footer-column strong{margin-bottom:8px;color:#8FDBF4;font-size:.69rem;font-weight:900;letter-spacing:.10em;text-transform:uppercase;}.footer-column a{width:max-content;max-width:100%;color:rgba(255,255,255,.73);font-size:.76rem;line-height:1.45;text-decoration:none;transition:color .2s ease,transform .2s ease;}.footer-column a:hover{color:#fff;transform:translateX(2px);}.footer-bottom{min-height:52px;display:flex;align-items:center;gap:26px;flex-wrap:wrap;padding-top:14px;padding-bottom:14px;border-top:1px solid rgba(255,255,255,.10);color:rgba(255,255,255,.48);font-size:.67rem;}.footer-bottom span:nth-child(2){margin-right:auto;}.footer-bottom a{color:rgba(255,255,255,.63);text-decoration:none;}.footer-bottom a:hover{color:#fff;}.privacy-hero{padding:105px 0 70px;}.privacy-hero-inner{max-width:900px;}.privacy-hero h1{margin:0 0 25px;max-width:850px;font-size:clamp(3rem,5.5vw,5.4rem);line-height:.98;letter-spacing:-.05em;}.privacy-hero h1 span{color:#8FDBF4;}.privacy-hero p:last-child{max-width:760px;font-size:1rem;line-height:1.7;}.privacy-content{padding:0 0 105px;}.privacy-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;}.privacy-card{position:relative;padding:30px 31px 31px;border:1px solid var(--line-on-navy);border-radius:16px;background:var(--navy-panel);box-shadow:0 10px 28px rgba(0,18,42,.18);}.privacy-number{display:block;margin-bottom:18px;color:#8FDBF4;font-size:.69rem;font-weight:900;letter-spacing:.10em;}.privacy-card h2{margin:0 0 16px;font-size:1.35rem;letter-spacing:-.025em;}.privacy-card p{margin:0 0 12px;font-size:.86rem;line-height:1.65;}.privacy-card p:last-child{margin-bottom:0;}.privacy-card a{color:#8FDBF4;text-decoration:none;border-bottom:1px solid rgba(143,219,244,.35);}.privacy-card a:hover{color:#fff;border-color:#fff;}.privacy-card strong{color:#fff;}.privacy-update{padding-top:8px;color:rgba(255,255,255,.48) !important;font-size:.72rem !important;}@media (max-width:900px){.footer-main{grid-template-columns:1fr;gap:34px;}.footer-sitemap{grid-template-columns:repeat(3,1fr);}.privacy-grid{grid-template-columns:1fr;}}@media (max-width:620px){.footer-main{padding-top:38px;padding-bottom:30px;}.footer-sitemap{grid-template-columns:1fr 1fr;gap:30px 24px;}.footer-contact-links{grid-column:1 / -1;}.footer-bottom{display:grid;gap:5px;}.footer-bottom span:nth-child(2){margin-right:0;}.privacy-hero{padding:72px 0 50px;}.privacy-content{padding-bottom:72px;}.privacy-card{padding:25px 24px;}}.about-local-hero{position:relative;padding:100px 0 105px;overflow:hidden;background:linear-gradient(135deg,var(--navy-deep) 0%,var(--navy) 52%,#063A68 100%);color:#fff;}.about-local-grid{display:grid;grid-template-columns:minmax(340px,.78fr) minmax(0,1.22fr);gap:76px;align-items:center;}.about-local-visual{position:relative;min-height:650px;overflow:hidden;border:1px solid rgba(255,255,255,.14);border-radius:24px;background:#0A416F;box-shadow:0 26px 60px rgba(0,18,42,.28);}.about-local-visual > img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center center;}.about-local-metrics{position:absolute;z-index:2;left:28px;right:28px;bottom:28px;display:grid;grid-template-columns:1.25fr .75fr;gap:10px;}.about-local-metric{min-height:115px;display:flex;flex-direction:column;justify-content:flex-end;padding:18px 19px;border:1px solid rgba(255,255,255,.18);border-radius:13px;background:rgba(0,43,92,.72);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);}.about-local-metric-primary{background:rgba(255,255,255,.93);}.about-local-metric strong{display:block;margin-bottom:6px;color:#fff;font-size:2.15rem;font-weight:900;line-height:.95;letter-spacing:-.05em;}.about-local-metric span{color:rgba(255,255,255,.72);font-size:.72rem;font-weight:750;line-height:1.42;}.about-local-metric-primary strong{color:var(--navy);font-size:2.75rem;}.about-local-metric-primary span{color:#526D7D;}.about-local-content{max-width:820px;}.about-local-content h1{max-width:820px;margin:0 0 30px;color:#fff;font-size:clamp(3.1rem,5.1vw,5.35rem);line-height:.98;letter-spacing:-.052em;}.about-local-content h1 span{display:block;margin-top:6px;color:#8FDBF4;}.about-local-content > p:not(.eyebrow){max-width:790px;margin:0 0 17px;color:rgba(255,255,255,.70);font-size:.94rem;line-height:1.72;}.about-local-content > p strong{color:#fff;}.about-local-content .about-local-lead{color:rgba(255,255,255,.90) !important;font-size:1.04rem !important;}.ecosystem-section{padding:95px 0 105px;background:var(--navy);color:#fff;}.ecosystem-head{max-width:880px;margin-bottom:52px;}.ecosystem-head .eyebrow{color:#8FDBF4;}.ecosystem-head h2{max-width:820px;margin:0 0 20px;color:#fff;font-size:clamp(2.5rem,4.5vw,4.6rem);font-weight:850;line-height:1;letter-spacing:-.045em;}.ecosystem-head > p:last-child{max-width:760px;margin:0;color:rgba(255,255,255,.72);font-size:.98rem;line-height:1.7;}.ecosystem-groups{display:grid;gap:0;}.ecosystem-group{margin-top:46px;}.ecosystem-group + .ecosystem-group{margin-top:60px;padding-top:48px;border-top:1px solid rgba(255,255,255,.12);}.ecosystem-group-head{display:block;width:100%;max-width:820px;margin:0 0 30px;}.ecosystem-group-head > div{display:block;width:100%;min-width:0;}.ecosystem-group-head h3{width:100%;max-width:760px;margin:0 0 8px;color:#fff;font-size:1.45rem;font-weight:850;line-height:1.2;letter-spacing:-.025em;}.ecosystem-group-head p{width:100%;max-width:720px;margin:0;color:rgba(255,255,255,.62);font-size:.83rem;line-height:1.6;}.ecosystem-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;align-items:stretch;}.ecosystem-card{position:relative;min-width:0;min-height:186px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:14px 12px 13px;overflow:hidden;border:1px solid rgba(0,43,92,.09);border-radius:14px;background:#fff;color:var(--navy);text-decoration:none;box-shadow:0 9px 26px rgba(0,18,42,.16);transition:transform .22s ease,
    box-shadow .22s ease,
    border-color .22s ease;}@media (hover:hover){.ecosystem-card:hover{transform:translateY(-4px);border-color:rgba(0,143,197,.32);box-shadow:0 18px 38px rgba(0,18,42,.24);}}.ecosystem-logo{width:100%;height:122px;display:flex;align-items:center;justify-content:center;margin:0 0 8px;overflow:visible;}.ecosystem-logo img{display:block;width:100%;height:100%;max-width:none;max-height:none;object-fit:contain;transform:scale(1.35);transform-origin:center;transition:transform .25s ease;}@media (hover:hover){.ecosystem-card:hover .ecosystem-logo img{transform:scale(1.22);}}.ecosystem-card strong,.ecosystem-card > span{display:block;width:100%;margin:0;color:var(--navy);font-size:.72rem;font-weight:850;line-height:1.3;text-align:center;letter-spacing:0;}.ecosystem-card small{display:block;margin-top:4px;color:#71828D;font-size:.62rem;font-weight:600;line-height:1.35;text-align:center;}.ecosystem-disclaimer{max-width:900px;margin:30px 0 0;padding-top:20px;border-top:1px solid rgba(255,255,255,.10);color:rgba(255,255,255,.46);font-size:.66rem;line-height:1.6;}@media (max-width:1100px){.ecosystem-grid{grid-template-columns:repeat(4,minmax(0,1fr));}}@media (max-width:850px){.ecosystem-section{padding:75px 0 85px;}.ecosystem-head{margin-bottom:40px;}.ecosystem-grid{grid-template-columns:repeat(3,minmax(0,1fr));}.ecosystem-card{min-height:174px;}.ecosystem-logo{height:108px;}}@media (max-width:620px){.ecosystem-section{padding:68px 0 72px;}.ecosystem-head h2{font-size:clamp(2.35rem,11vw,3.7rem);}.ecosystem-group{margin-top:38px;}.ecosystem-group-head{margin-bottom:22px;}.ecosystem-group-head h3{font-size:1.18rem;}.ecosystem-group-head p{font-size:.78rem;}.ecosystem-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}.ecosystem-card{min-height:154px;padding:11px 9px 11px;border-radius:12px;}.ecosystem-logo{height:96px;margin-bottom:7px;}.ecosystem-logo img{transform:scale(1.14);}.ecosystem-card strong,.ecosystem-card > span{font-size:.66rem;}}@media (max-width:390px){.ecosystem-card{min-height:146px;}.ecosystem-logo{height:88px;}}.references-filters{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 14px;}.filter-chip{display:inline-flex;align-items:center;gap:8px;padding:9px 16px;border:1px solid #B9C9D3;border-radius:999px;background:#fff;color:#002B5C;font:inherit;font-size:.9rem;font-weight:600;cursor:pointer;transition:background .2s,color .2s,border-color .2s;}.filter-chip span{font-size:.78rem;font-weight:500;color:#587080;}.filter-chip:hover{border-color:#002B5C;}.filter-chip:focus-visible{outline:3px solid #008FC5;outline-offset:2px;}.filter-chip.is-active{background:#002B5C;border-color:#002B5C;color:#fff;}.filter-chip.is-active span{color:rgba(255,255,255,.75);}.references-count{margin:0 0 26px;color:#587080;font-size:.85rem;}.reference-card[hidden]{display:none !important;}.expertises-link-secondary{margin-top:12px;opacity:.85;}.expertises-link-secondary:hover,.expertises-link-secondary:focus-visible{opacity:1;}.home-page .proof-grid article{display:block;padding:25px 24px;}.home-page .proof-grid article > div{width:100%;}.home-page .home-expertise-photo{position:relative;}.home-page .home-expertise-icon{position:absolute;top:14px;right:14px;z-index:2;width:62px;height:62px;display:grid;place-items:center;padding:4px;overflow:hidden;border:1px solid rgba(0,43,92,.10);border-radius:50%;background:#fff;box-shadow:0 7px 20px rgba(0,30,64,.18);transition:transform .22s ease, box-shadow .22s ease;}.home-page .home-expertise-icon img{width:100%;height:100%;display:block;object-fit:contain;border-radius:50%;}.home-page .home-expertise-card:hover .home-expertise-icon{transform:translateY(-2px);box-shadow:0 10px 24px rgba(0,30,64,.24);}.home-page .home-audience-side{display:block;}.home-page .home-audience-tags{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;width:100%;max-width:610px;}.home-page .home-audience-tags a{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 13px;border:1px solid rgba(255,255,255,.18);border-radius:11px;background:rgba(255,255,255,.055);color:rgba(255,255,255,.86);font-size:.72rem;font-weight:750;line-height:1.3;text-decoration:none;transition:transform .2s ease,
    background .2s ease,
    border-color .2s ease;}.home-page .home-audience-tags a:hover{transform:translateY(-2px);border-color:rgba(143,219,244,.48);background:rgba(255,255,255,.10);color:#fff;}.home-page .home-audience-tags a b{flex:0 0 auto;color:#7FD8F0;font-size:.95rem;transition:transform .2s ease;}.home-page .home-audience-tags a:hover b{transform:translateX(3px);}@media (max-width:620px){.home-page .proof-grid article{padding:20px 0;}.home-page .home-expertise-icon{top:11px;right:11px;width:54px;height:54px;}.home-page .home-audience-tags{grid-template-columns:1fr;}}.about-local-metrics{top:28px;bottom:auto;}.about-local-metric{justify-content:flex-start;}.why-section{position:relative;overflow:hidden;padding:96px 0 104px;border-top:1px solid rgba(255,255,255,.08);background:linear-gradient(135deg,var(--navy-deep) 0%,var(--navy) 100%);color:#fff;}.why-topo{position:absolute;right:-60px;top:0;width:700px;height:100%;pointer-events:none;}.why-topo path{fill:none;stroke:rgba(127,216,240,.14);stroke-width:1.5;}.why-grid{position:relative;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:72px;align-items:center;}.why-copy{display:flex;flex-direction:column;gap:28px;}.about-page .why-section h2{max-width:none;margin:0;color:#fff;font-size:clamp(2.1rem,3.3vw,2.9rem);font-weight:800;line-height:1.07;letter-spacing:-.03em;}.about-page .why-section .why-chain-title{margin:0 0 18px;color:#7FD8F0;font-size:1rem;font-weight:600;}.why-chain{position:relative;display:grid;gap:16px;margin:0;padding:0;list-style:none;}.why-chain::before{content:"";position:absolute;left:9px;top:10px;bottom:10px;width:2px;background:var(--coral);opacity:.55;}.why-chain li{position:relative;display:flex;align-items:center;gap:18px;color:rgba(255,255,255,.92);font-size:1.06rem;}.why-chain li::before{content:"";flex:none;width:20px;height:20px;box-sizing:border-box;border-radius:50%;border:2px solid var(--coral);background:var(--navy-deep);}.why-chain li:last-child::before{background:var(--coral);}.why-cards{display:grid;grid-template-columns:1fr 1fr;gap:20px;}.why-card{min-height:250px;box-sizing:border-box;padding:30px 28px;border:1px solid rgba(255,255,255,.14);border-radius:18px;background:rgba(255,255,255,.06);}.why-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(127,216,240,.35);border-radius:50%;background:rgba(127,216,240,.12);}.why-icon svg{width:24px;height:24px;fill:none;stroke:#7FD8F0;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;}.about-page .why-card h3{margin:22px 0 10px;color:#fff;font-size:1.4rem;font-weight:700;}.about-page .why-card p{margin:0;color:rgba(255,255,255,.78);font-size:1rem;line-height:1.55;}@media (max-width:1000px){.why-grid{grid-template-columns:1fr;gap:48px;}}@media (max-width:640px){.why-section{padding:68px 0 74px;}.why-cards{grid-template-columns:1fr;}.why-card{min-height:0;}.why-topo{display:none;}}@media (min-width:1101px){.ecosystem-card strong{font-size:.82rem;}.ecosystem-card small{font-size:.7rem;}}.ecosystem-card small{color:#4F6675;}.ecosystem-card:focus-visible{outline:3px solid #7FD8F0;outline-offset:3px;}.ecosystem-disclaimer{color:rgba(255,255,255,.7);font-size:.75rem;}.audience-icon svg{width:34px;height:34px;stroke-width:2.3;}.audience-icon svg .d{fill:currentColor;fill-opacity:.16;}.audience-icon svg .dot{fill:currentColor;stroke:none;}.home-page .home-outline-link{display:inline-flex;align-items:center;gap:10px;margin-top:16px;padding:11px 20px;border:1.5px solid rgba(143,219,244,.55);border-radius:999px;color:#8FDBF4;font-size:.85rem;font-weight:800;text-decoration:none;transition:background .2s ease,border-color .2s ease,color .2s ease;}.home-page .home-outline-link:hover,.home-page .home-outline-link:focus-visible{background:rgba(255,255,255,.09);border-color:#8FDBF4;color:#fff;}.home-page .home-journey{padding:30px 26px 26px;border:1px solid rgba(255,255,255,.16);border-radius:18px;background:#fff;color:var(--navy);box-shadow:0 18px 42px rgba(0,18,42,.18);}.home-journey-phases{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));}.home-page .home-journey-tab{position:relative;min-width:0;display:flex;flex-direction:column;align-items:center;padding:0 12px 4px;border:0;background:transparent;text-align:center;font:inherit;color:inherit;cursor:pointer;}.home-page .home-journey-tab:not(:last-child)::after{content:"";position:absolute;z-index:0;top:33px;left:calc(50% + 38px);width:calc(100% - 76px);height:1px;background:#C9D8DF;}.home-journey-icon{position:relative;z-index:1;width:66px;height:66px;display:grid;place-items:center;margin:0 auto 16px;border:1.5px solid #0A6EA6;border-radius:50%;background:#fff;box-shadow:0 5px 14px rgba(0,43,92,.08);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease,background .2s ease;}.home-journey-icon img{width:34px;height:34px;object-fit:contain;}.home-journey-tab:hover .home-journey-icon{transform:scale(1.05);}.home-journey-tab[aria-selected="true"] .home-journey-icon{border-color:var(--navy);background:#EEF6FA;box-shadow:0 0 0 5px rgba(0,143,197,.16);}.home-page .home-journey-meta{display:block;margin:0 0 8px;color:#0A6EA6;font-size:.68rem;font-weight:900;line-height:1.3;letter-spacing:.07em;text-transform:uppercase;}.home-page .home-journey-tab strong{display:block;max-width:168px;margin:0 auto;padding-bottom:5px;color:var(--navy);font-size:.92rem;font-weight:850;line-height:1.3;border-bottom:2px solid transparent;}.home-journey-tab[aria-selected="true"] strong{border-bottom-color:var(--coral);}.home-journey-extra{display:flex;align-items:center;flex-wrap:wrap;gap:12px 18px;margin-top:22px;padding-top:20px;border-top:1px dashed #C9D8DF;}.home-journey-extra-label{color:#4F6675;font-size:.74rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;}.home-journey-pills{display:flex;flex-wrap:wrap;gap:10px;}.home-page .home-journey-pill{display:inline-flex;align-items:center;gap:10px;padding:6px 18px 6px 6px;border:1.5px solid #C9D8DF;border-radius:999px;background:#fff;color:var(--navy);font:inherit;font-size:.86rem;font-weight:850;cursor:pointer;transition:border-color .2s ease,background .2s ease;}.home-journey-pill-icon{width:36px;height:36px;display:grid;place-items:center;border-radius:50%;background:#EEF6FA;}.home-journey-pill-icon img{width:22px;height:22px;object-fit:contain;}.home-journey-pill:hover{border-color:#0A6EA6;}.home-journey-pill[aria-selected="true"]{border-color:var(--coral);background:#FDF3EF;}.home-journey-panels{margin-top:22px;}.home-journey-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:40px;min-height:196px;padding:28px 32px;border-radius:14px;background:#F0F6F9;}.home-journey-panel[hidden]{display:none;}.home-page .home-journey-kicker{margin:0 0 10px;color:#0A6EA6;font-size:.7rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;}.home-page .home-journey-panel h3{margin:0 0 10px;color:var(--navy);font-size:1.3rem;font-weight:850;line-height:1.2;}.home-page .home-journey-panel-main > p:not(.home-journey-kicker){margin:0 0 16px;color:#3E5566;font-size:.92rem;line-height:1.6;}.home-page .home-journey-more{color:var(--navy);font-size:.85rem;font-weight:850;text-decoration:underline;text-underline-offset:4px;}.home-page .home-journey-more:hover{color:#0A6EA6;}.home-journey-panel-services ul{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;}.home-journey-panel-services li{padding:6px 13px;border:1px solid #CFDDE5;border-radius:999px;background:#fff;color:#33495A;font-size:.8rem;font-weight:600;line-height:1.35;}.home-journey-tab:focus-visible,.home-journey-pill:focus-visible{outline:3px solid #008FC5;outline-offset:3px;border-radius:12px;}@media (max-width:900px){.home-page .home-journey{padding:22px 16px 18px;}.home-journey-phases{grid-template-columns:1fr;gap:6px;}.home-page .home-journey-tab{flex-direction:row;flex-wrap:wrap;align-items:center;text-align:left;padding:8px 6px;column-gap:14px;}.home-page .home-journey-tab:not(:last-child)::after{display:none;}.home-journey-icon{width:52px;height:52px;margin:0;flex:none;}.home-journey-icon img{width:28px;height:28px;}.home-page .home-journey-meta{flex:1 0 calc(100% - 70px);margin:0 0 2px;}.home-page .home-journey-tab strong{margin:0 0 0 66px;max-width:none;flex:1 0 calc(100% - 66px);border-bottom:0;padding:0;}.home-journey-panel{grid-template-columns:1fr;gap:22px;padding:22px 20px;}}.about-inline-link{color:var(--cyan);font-weight:800;text-decoration:none;border-bottom:1px solid rgba(0,143,197,.45);transition:color .2s ease,
    border-color .2s ease;}.about-inline-link:hover{color:var(--coral);border-bottom-color:var(--coral);}.about-local-grid{display:grid;grid-template-columns:minmax(340px,.82fr) minmax(0,1.18fr);column-gap:72px;row-gap:0;align-items:stretch;}.about-local-content{display:contents;}.about-local-content > .eyebrow{grid-column:1 / -1;grid-row:1;margin:0 0 14px;}.about-local-content > h1{grid-column:1 / -1;grid-row:2;width:100%;max-width:none;margin:0 0 48px;color:#fff;font-size:clamp(3.2rem,5vw,5.4rem);font-weight:850;line-height:.98;letter-spacing:-.052em;}.about-local-content > h1 span{display:inline;margin:0;color:#8FDBF4;}.about-local-visual{grid-column:1;grid-row:3 / 9;position:relative;align-self:stretch;width:100%;height:100%;min-height:0;overflow:hidden;border:1px solid rgba(255,255,255,.14);border-radius:24px;background:#0A416F;box-shadow:0 26px 60px rgba(0,18,42,.28);}.about-local-visual > img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:center center;}.about-local-content > p:not(.eyebrow){grid-column:2;width:100%;max-width:none;margin:0 0 17px;color:rgba(255,255,255,.72);font-size:.94rem;line-height:1.72;}.about-local-content > .about-local-lead{color:rgba(255,255,255,.92);font-size:1.04rem;}.about-local-content > p strong{color:#fff;}.about-local-content > .about-signature{margin-top:8px;margin-bottom:0;padding-top:18px;border-top:1px solid rgba(255,255,255,.15);color:rgba(255,255,255,.82);}.about-actions{grid-column:1 / -1;display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:14px;width:100%;margin-top:38px;}@media (max-width:900px){.about-local-grid{grid-template-columns:1fr;column-gap:0;}.about-local-content > .eyebrow{grid-column:1;grid-row:1;}.about-local-content > h1{grid-column:1;grid-row:2;margin-bottom:32px;font-size:clamp(2.8rem,8vw,4.3rem);}.about-local-visual{grid-column:1;grid-row:3;height:520px;min-height:520px;margin-bottom:34px;}.about-local-content > p:not(.eyebrow){grid-column:1;}.about-actions{grid-column:1;margin-top:30px;}}@media (max-width:620px){.about-local-content > h1{margin-bottom:26px;font-size:clamp(2.5rem,11vw,3.6rem);}.about-local-visual{height:420px;min-height:420px;border-radius:18px;}.about-local-metrics{left:16px;right:16px;bottom:16px;}.about-actions{flex-direction:column;}}:root{--button-radius:999px;--button-min-height:48px;}.btn{min-height:var(--button-min-height);gap:8px;line-height:1.2;}.btn:focus-visible,.nav-cta:focus-visible,.home-outline-link:focus-visible,.carousel-button:focus-visible{outline:3px solid #8FDBF4;outline-offset:3px;}.references-note{max-width:72ch;margin:40px auto 0;font-size:.875rem;line-height:1.6;color:#5B6B7F;text-align:center;}.form-botcheck{display:none!important;}.about-actions .btn{min-width:260px;}@media(max-width:620px){.about-actions .btn{width:100%;min-width:0;}}


/* ============================================================
   ACCUEIL — HERO
   L'image et son voile restent alignés sur la largeur du site.
   Le fond navy de la section reste pleine largeur.
   ============================================================ */

.home-page .hero{
  position:relative;
  isolation:isolate;
  background:var(--navy);
}

.home-page .hero-bg,
.home-page .hero-shade{
  position:absolute;
  top:0;
  bottom:0;
  left:50%;
  right:auto;
  width:min(calc(100% - 40px),var(--max));
  transform:translateX(-50%);
}

.home-page .hero-bg{
  overflow:hidden;
}

.home-page .hero-bg img{
  display:block;
  width:100%;
  height:100%;
  max-width:none;
  object-fit:cover;
  object-position:center center;
}

.home-page .hero-shade{
  pointer-events:none;
}

.home-page .hero-inner{
  width:min(calc(100% - 40px),var(--max));
  margin-inline:auto;
}

@media(max-width:620px){

  .home-page .hero-bg,
  .home-page .hero-shade,
  .home-page .hero-inner{
    width:min(calc(100% - 28px),var(--max));
  }

}


/* ============================================================
   ACCUEIL — INTERVENTIONS / PRIORITÉS + PARCOURS
   Appui technique et Optimisation passent avant Comprendre → Réaliser.
   Les SVG utilisés sont les fichiers source déjà présents dans
   assets/images/icons/.
   ============================================================ */

.home-page .home-journey{
  padding:26px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:18px;
  background:
    linear-gradient(145deg,rgba(255,255,255,.065),rgba(255,255,255,.035));
  color:#fff;
  box-shadow:0 18px 42px rgba(0,18,42,.20);
}

.home-page .home-journey-priority{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin:0 0 28px;
  padding:0 0 28px;
  border-top:0;
  border-bottom:1px solid rgba(255,255,255,.14);
}

.home-page .home-journey-priority .home-journey-pills{
  display:contents;
}

.home-page .home-journey-priority .home-journey-pill{
  position:relative;
  width:100%;
  min-height:92px;
  display:grid;
  grid-template-columns:54px minmax(0,1fr);
  gap:15px;
  align-items:center;
  padding:18px 20px;
  border:1px solid rgba(143,219,244,.20);
  border-radius:15px;
  background:rgba(255,255,255,.055);
  color:#fff;
  text-align:left;
  box-shadow:none;
}

.home-page .home-journey-priority .home-journey-pill::before{
  content:"";
  position:absolute;
  top:12px;
  left:20px;
  width:38px;
  height:3px;
  border-radius:3px;
  background:var(--coral);
}

.home-page .home-journey-priority .home-journey-pill:nth-child(2)::before{
  background:var(--cyan);
}

.home-page .home-journey-priority .home-journey-pill:hover{
  border-color:rgba(143,219,244,.46);
  background:rgba(255,255,255,.09);
}

.home-page .home-journey-priority .home-journey-pill[aria-selected="true"]{
  border-color:rgba(143,219,244,.60);
  background:rgba(0,143,197,.12);
}

.home-page .home-journey-priority .home-journey-pill-icon{
  width:50px;
  height:50px;
  display:grid;
  place-items:center;
  border:1px solid rgba(143,219,244,.28);
  border-radius:50%;
  background:rgba(0,143,197,.12);
}

.home-page .home-journey-priority .home-journey-pill-icon img{
  width:27px;
  height:27px;
  object-fit:contain;
}

.home-page .home-journey-priority .home-journey-pill > span:last-child{
  color:#fff;
  font-size:.91rem;
  font-weight:850;
  line-height:1.3;
}

.home-page .home-journey-phases{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  margin:0;
}

.home-page .home-journey-tab{
  color:#fff;
}

.home-page .home-journey-tab:not(:last-child)::after{
  background:rgba(255,255,255,.20);
}

.home-page .home-journey-icon{
  border-color:rgba(143,219,244,.45);
  background:rgba(255,255,255,.06);
  box-shadow:none;
}

.home-page .home-journey-tab[aria-selected="true"] .home-journey-icon{
  border-color:#8FDBF4;
  background:rgba(0,143,197,.15);
  box-shadow:0 0 0 5px rgba(0,143,197,.10);
}

.home-page .home-journey-meta{
  color:#8FDBF4;
}

.home-page .home-journey-tab strong{
  color:#fff;
}

.home-page .home-journey-panels{
  margin-top:24px;
}

.home-page .home-journey-panel{
  grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);
  min-height:196px;
  padding:28px 32px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:14px;
  background:rgba(255,255,255,.055);
}

.home-page .home-journey-kicker{
  color:#8FDBF4;
}

.home-page .home-journey-panel h3{
  color:#fff;
}

.home-page .home-journey-panel-main > p:not(.home-journey-kicker){
  color:rgba(255,255,255,.72);
}

.home-page .home-journey-more{
  color:#8FDBF4;
}

.home-page .home-journey-more:hover{
  color:#fff;
}

.home-page .home-journey-panel-services li{
  border-color:rgba(255,255,255,.15);
  background:rgba(255,255,255,.065);
  color:rgba(255,255,255,.82);
}

@media(max-width:900px){

  .home-page .home-journey-priority{
    grid-template-columns:1fr;
  }

  .home-page .home-journey-phases{
    grid-template-columns:1fr;
    gap:6px;
  }

  .home-page .home-journey-tab{
    flex-direction:row;
    flex-wrap:wrap;
    align-items:center;
    text-align:left;
    padding:8px 6px;
    column-gap:14px;
  }

  .home-page .home-journey-tab:not(:last-child)::after{
    display:none;
  }

}


/* ============================================================
   ACCUEIL — POUR QUI ? / VERSION COHÉRENTE AVEC pour-qui.html
   Les 7 pictogrammes sont les SVG inline EXACTS de pour-qui.html.
   ============================================================ */

.home-page .home-audiences{
  position:relative;
  overflow:hidden;
  padding:78px 0 84px;
  background:
    radial-gradient(circle at 84% 12%,rgba(0,143,197,.11),transparent 27%),
    linear-gradient(115deg,#001E40 0%,#002B5C 58%,#063A68 100%) !important;
  color:#fff;
}

.home-page .home-audiences::after{
  content:"";
  position:absolute;
  right:-210px;
  top:-270px;
  width:590px;
  height:590px;
  border:1px solid rgba(143,219,244,.07);
  border-radius:50%;
  box-shadow:
    0 0 0 68px rgba(143,219,244,.015),
    0 0 0 136px rgba(143,219,244,.010);
  pointer-events:none;
}

.home-page .home-audiences-inner{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(0,.78fr) minmax(540px,1.22fr);
  gap:72px;
  align-items:center;
}

.home-page .home-audiences-copy{
  max-width:520px;
}

.home-page .home-audiences .eyebrow{
  margin:0 0 24px;
  color:#8FDBF4;
  font-size:.80rem;
  font-weight:900;
  letter-spacing:.17em;
}

.home-page .home-audiences h2{
  max-width:520px;
  margin:0 0 22px;
  color:#fff;
  font-size:clamp(2.7rem,4.4vw,4.55rem);
  font-weight:850;
  line-height:.98;
  letter-spacing:-.045em;
}

.home-page .home-audiences-lead{
  max-width:510px;
  margin:0;
  color:rgba(255,255,255,.72) !important;
  font-size:.91rem;
  line-height:1.65;
}

/* ------------------------------------------------------------
   GRILLE
   ------------------------------------------------------------ */

.home-page .home-audience-cards{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}

.home-page .home-audience-card{
  position:relative;
  min-width:0;
  min-height:92px;
  display:grid;
  grid-template-columns:58px minmax(0,1fr) 24px;
  gap:14px;
  align-items:center;
  padding:14px 15px;
  overflow:hidden;
  border:1px solid rgba(143,219,244,.20);
  border-radius:14px;
  background:rgba(255,255,255,.065);
  color:#fff;
  text-decoration:none;
  box-shadow:0 9px 24px rgba(0,18,42,.13);
  transition:
    transform .20s ease,
    background .20s ease,
    border-color .20s ease,
    box-shadow .20s ease;
}

.home-page .home-audience-card-wide{
  grid-column:1 / -1;
}

/* Petit accent à l'intérieur du cadre */
.home-page .home-audience-card::before{
  content:"";
  position:absolute;
  top:10px;
  left:15px;
  width:34px;
  height:3px;
  border-radius:3px;
  background:var(--cyan);
}

.home-page .home-audience-card:nth-child(even)::before{
  background:var(--coral);
}

/* ------------------------------------------------------------
   ICONES
   On garde exactement les classes et SVG de pour-qui.html :
   .audience-icon-public, -exploitant, -agriculture, etc.
   ------------------------------------------------------------ */

.home-page .home-audience-card .audience-icon{
  width:52px;
  height:52px;
  margin:0;
  border-radius:14px;
  flex:0 0 52px;
}

.home-page .home-audience-card .audience-icon svg{
  width:30px;
  height:30px;
  stroke-width:2.15;
}

/* ------------------------------------------------------------
   TEXTE
   ------------------------------------------------------------ */

.home-page .home-audience-text{
  min-width:0;
}

.home-page .home-audience-text strong{
  display:block;
  margin:0 0 4px;
  color:#fff;
  font-size:.92rem;
  font-weight:850;
  line-height:1.2;
}

.home-page .home-audience-text small{
  display:block;
  color:rgba(255,255,255,.67);
  font-size:.68rem;
  font-weight:600;
  line-height:1.35;
}

/* ------------------------------------------------------------
   FLÈCHE
   ------------------------------------------------------------ */

.home-page .home-audience-arrow{
  justify-self:end;
  color:#8FDBF4;
  font-size:1rem;
  font-weight:700;
  line-height:1;
  transition:
    transform .20s ease,
    color .20s ease;
}

/* ------------------------------------------------------------
   HOVER / FOCUS
   ------------------------------------------------------------ */

.home-page .home-audience-card:hover{
  transform:translateY(-3px);
  border-color:rgba(143,219,244,.48);
  background:rgba(255,255,255,.105);
  box-shadow:0 16px 34px rgba(0,18,42,.21);
}

.home-page .home-audience-card:hover .home-audience-arrow{
  transform:translateX(4px);
  color:#fff;
}

.home-page .home-audience-card:hover .audience-icon{
  transform:translateY(-1px) scale(1.035);
}

.home-page .home-audience-card:focus-visible{
  outline:3px solid #8FDBF4;
  outline-offset:3px;
}

.home-page .home-audience-card:focus-visible .home-audience-arrow{
  transform:translateX(4px);
}

/* ------------------------------------------------------------
   RESPONSIVE
   ------------------------------------------------------------ */

@media(max-width:980px){

  .home-page .home-audiences-inner{
    grid-template-columns:1fr;
    gap:36px;
  }

  .home-page .home-audiences-copy,
  .home-page .home-audiences h2,
  .home-page .home-audiences-lead{
    max-width:760px;
  }

}

@media(max-width:680px){

  .home-page .home-audiences{
    padding:62px 0 66px;
  }

  .home-page .home-audience-cards{
    grid-template-columns:1fr;
  }

  .home-page .home-audience-card-wide{
    grid-column:auto;
  }

  .home-page .home-audience-card{
    min-height:84px;
    grid-template-columns:50px minmax(0,1fr) 22px;
    gap:12px;
    padding:13px 14px;
  }

  .home-page .home-audience-card::before{
    left:14px;
  }

  .home-page .home-audience-card .audience-icon{
    width:44px;
    height:44px;
    border-radius:12px;
  }

  .home-page .home-audience-card .audience-icon svg{
    width:26px;
    height:26px;
  }

  .home-page .home-audiences h2{
    font-size:clamp(2.55rem,12vw,3.8rem);
  }

}


/* ============================================================
   ACCUEIL — POUR QUI ? / CLIENT PRINCIPAL : COLLECTIVITÉS
   Collectivités en carte principale pleine largeur en tête.
   ============================================================ */

.home-page .home-audience-card-featured{
  min-height:112px;
  grid-template-columns:66px minmax(0,1fr) 30px;
  padding:18px 20px;
  border-color:rgba(143,219,244,.38);
  background:
    linear-gradient(
      100deg,
      rgba(0,143,197,.16) 0%,
      rgba(255,255,255,.085) 55%,
      rgba(255,255,255,.055) 100%
    );
}

.home-page .home-audience-card-featured::before{
  left:20px;
  width:44px;
  background:var(--coral);
}

.home-page .home-audience-card-featured .audience-icon{
  width:60px;
  height:60px;
  flex-basis:60px;
  border-radius:16px;
}

.home-page .home-audience-card-featured .audience-icon svg{
  width:34px;
  height:34px;
}

.home-page .home-audience-card-featured .home-audience-text strong{
  font-size:1.05rem;
}

.home-page .home-audience-card-featured .home-audience-text small{
  font-size:.72rem;
  color:rgba(255,255,255,.72);
}

.home-page .home-audience-card-featured .home-audience-arrow{
  font-size:1.15rem;
}

@media(max-width:680px){

  .home-page .home-audience-card-featured{
    min-height:94px;
    grid-template-columns:52px minmax(0,1fr) 24px;
    padding:15px 14px;
  }

  .home-page .home-audience-card-featured::before{
    left:14px;
    width:36px;
  }

  .home-page .home-audience-card-featured .audience-icon{
    width:46px;
    height:46px;
    border-radius:13px;
  }

  .home-page .home-audience-card-featured .audience-icon svg{
    width:28px;
    height:28px;
  }

}


/* ============================================================
   ACCUEIL — INTERVENTIONS / SVG EN BLANC
   Cible uniquement les pictogrammes du parcours Interventions.
   ============================================================ */

.home-page .home-journey-icon img,
.home-page .home-journey-pill-icon img{
  filter:brightness(0) invert(1);
  opacity:1;
}


/* ============================================================
   LISIBILITÉ — TEXTES SUR FONDS NAVY
   Les textes secondaires gris/transparents passent en blanc.
   Les accents cyan/corail sont conservés.
   ============================================================ */

:root{
  --text-on-navy:#FFFFFF;
  --muted-on-navy:#FFFFFF;
}

/* HERO */
.home-page .hero-lead,
.home-page .hero-lead strong{
  color:#fff !important;
}

/* BANDEAU DE PREUVES */
.home-page .proof-grid strong,
.home-page .proof-grid article div > span{
  color:#fff !important;
}

/* TITRES / INTRODUCTION DES SECTIONS SOMBRES */
.home-page .home-section-head-dark > div:last-child p,
.home-page .home-interventions .home-section-head > div:last-child p,
.home-page .home-audiences-lead,
.home-page .home-contact-cta p:not(.eyebrow){
  color:#fff !important;
}

/* EXPERTISES ACCUEIL : les cartes sont désormais navy */
.home-page .home-expertise-body p{
  color:#fff !important;
}

/* RÉFÉRENCES ACCUEIL */
.home-page .home-reference-card small,
.home-page .home-reference-card p{
  color:#fff !important;
}

/* POUR QUI ? ACCUEIL */
.home-page .home-audience-text small{
  color:#fff !important;
}

/* À PROPOS ACCUEIL */
.home-page .home-about-copy > p:not(.eyebrow),
.home-page .home-about-badge span{
  color:#fff !important;
}

/* INTERVENTIONS ACCUEIL */
.home-page .home-journey-panel-main > p:not(.home-journey-kicker),
.home-page .home-journey-panel-services li{
  color:#fff !important;
}

/* FOOTER */
.site-footer .footer-identity > span,
.site-footer .footer-column a,
.site-footer .footer-bottom,
.site-footer .footer-bottom a{
  color:#fff !important;
}

/* PAGES SOMBRES PILOTÉES PAR style.css */
.content-page main p,
.references-page main p,
.audience-page main p,
.contact-page .contact-copy p,
.privacy-page main p{
  color:#fff;
}

.references-page .references-page-hero-text p,
.references-page .reference-subtitle,
.references-page .reference-description,
.references-page .reference-data span,
.references-page .reference-role p{
  color:#fff !important;
}

.audience-page .section-head > p,
.audience-page .audience-card p,
.audience-page .audience-tags{
  color:#fff !important;
}

.privacy-page .privacy-card p,
.privacy-page .privacy-update{
  color:#fff !important;
}


/* ============================================================
   CHARTE CTA / LIENS — ACCUEIL
   1. Demande de contact = bouton corail plein
   2. Navigation vers une autre section/page = corail +
      fond blanc très transparent
   ============================================================ */

/* ------------------------------------------------------------
   1. CTA CONTACT : CORAIL PLEIN
   ------------------------------------------------------------ */

.home-page a.btn[href^="contact.html"],
.home-page a.btn[href^="/contact.html"],
.home-page .home-contact-cta a.btn,
.home-page .nav-cta{
  border:1.5px solid var(--coral) !important;
  background:var(--coral) !important;
  color:#fff !important;
  box-shadow:0 8px 20px rgba(217,104,69,.18);
}

.home-page a.btn[href^="contact.html"]:hover,
.home-page a.btn[href^="/contact.html"]:hover,
.home-page .home-contact-cta a.btn:hover,
.home-page .nav-cta:hover{
  border-color:#C95E3D !important;
  background:#C95E3D !important;
  color:#fff !important;
}


/* ------------------------------------------------------------
   2. LIENS VERS LES AUTRES PAGES / SECTIONS
   Corail + léger fond blanc transparent
   ------------------------------------------------------------ */

/* Hero : Découvrir les expertises */
.home-page .hero-actions a.btn:not([href^="contact.html"]):not([href^="/contact.html"]),

/* Liens de tête de section :
   Explorer les expertises / Voir toutes les références */
.home-page .home-section-head .text-link,

/* Voir toutes les interventions */
.home-page .home-outline-link{
  min-height:44px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;

  width:max-content;
  margin-top:12px;
  padding:10px 18px;

  border:1.5px solid rgba(217,104,69,.82) !important;
  border-radius:999px;

  background:rgba(255,255,255,.065) !important;
  color:#F08A68 !important;

  font-size:.82rem;
  font-weight:850;
  line-height:1.2;
  text-decoration:none !important;

  box-shadow:none;

  transition:
    transform .2s ease,
    background .2s ease,
    border-color .2s ease,
    color .2s ease;
}

.home-page .hero-actions a.btn:not([href^="contact.html"]):not([href^="/contact.html"]):hover,
.home-page .home-section-head .text-link:hover,
.home-page .home-outline-link:hover{
  transform:translateY(-2px);
  border-color:var(--coral) !important;
  background:rgba(255,255,255,.11) !important;
  color:#FF9A77 !important;
}


/* Flèches : cohérence corail */
.home-page .hero-actions a.btn:not([href^="contact.html"]) .btn-arrow,
.home-page .home-section-head .text-link span,
.home-page .home-outline-link span{
  color:inherit;
}


/* ------------------------------------------------------------
   3. LIENS "DÉCOUVRIR" DANS LES CARTES
   On conserve un traitement plus discret, mais en corail.
   ------------------------------------------------------------ */

.home-page .home-card-link,
.home-page .home-reference-card > strong{
  color:#F08A68 !important;
}

.home-page .home-card-link:hover{
  color:#FF9A77 !important;
}


/* ------------------------------------------------------------
   4. FOCUS CLAVIER
   ------------------------------------------------------------ */

.home-page a.btn[href^="contact.html"]:focus-visible,
.home-page .hero-actions a.btn:not([href^="contact.html"]):focus-visible,
.home-page .home-section-head .text-link:focus-visible,
.home-page .home-outline-link:focus-visible{
  outline:3px solid #FF9A77;
  outline-offset:3px;
}


/* ============================================================
   CHARTE CTA / LIENS — CORRECTION COULEURS
   Contact = corail plein
   Liens vers autres sections/pages = cyan
   ============================================================ */

/* CONTACT : reste corail plein */
.home-page a.btn[href^="contact.html"],
.home-page a.btn[href^="/contact.html"],
.home-page .home-contact-cta a.btn,
.home-page .nav-cta{
  border-color:var(--coral) !important;
  background:var(--coral) !important;
  color:#fff !important;
}

/* LIENS VERS AUTRES SECTIONS / PAGES : CYAN */
.home-page .hero-actions a.btn:not([href^="contact.html"]):not([href^="/contact.html"]),
.home-page .home-section-head .text-link,
.home-page .home-outline-link{
  border-color:rgba(127,216,240,.72) !important;
  background:rgba(255,255,255,.065) !important;
  color:#8FDBF4 !important;
}

.home-page .hero-actions a.btn:not([href^="contact.html"]):not([href^="/contact.html"]):hover,
.home-page .home-section-head .text-link:hover,
.home-page .home-outline-link:hover{
  border-color:#8FDBF4 !important;
  background:rgba(255,255,255,.11) !important;
  color:#B8EDFA !important;
}

/* Liens discrets dans les cartes */
.home-page .home-card-link,
.home-page .home-reference-card > strong{
  color:#8FDBF4 !important;
}

.home-page .home-card-link:hover{
  color:#B8EDFA !important;
}

/* Focus clavier */
.home-page .hero-actions a.btn:not([href^="contact.html"]):focus-visible,
.home-page .home-section-head .text-link:focus-visible,
.home-page .home-outline-link:focus-visible{
  outline:3px solid #8FDBF4;
  outline-offset:3px;
}


/* ============================================================
   ACCUEIL — RÉFÉRENCES / PHOTOS DE FOND
   Les fichiers sont attendus dans assets/images/references/.
   Chaque carte définit --ref-image directement dans index.html.
   ============================================================ */

.home-page .home-reference-card{
  position:relative;
  isolation:isolate;
  overflow:hidden;

  background:
    linear-gradient(
      180deg,
      rgba(0,30,64,.28) 0%,
      rgba(0,30,64,.48) 38%,
      rgba(0,30,64,.86) 100%
    ),
    var(--ref-image) var(--ref-position,center) / cover no-repeat;

  border-color:rgba(255,255,255,.18);
  box-shadow:0 14px 34px rgba(0,18,42,.24);
}

/* voile complémentaire pour garantir la lecture quelle que soit la photo */
.home-page .home-reference-card::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background:
    linear-gradient(
      90deg,
      rgba(0,43,92,.18) 0%,
      transparent 55%
    );
}

/* l'accent corail reste visible */
.home-page .home-reference-card::before{
  z-index:2;
}

/* textes sur image */
.home-page .home-reference-card > span{
  position:relative;
  z-index:1;
  color:#8FDBF4 !important;
  text-shadow:0 1px 6px rgba(0,20,45,.55);
}

.home-page .home-reference-card small,
.home-page .home-reference-card h3,
.home-page .home-reference-card p,
.home-page .home-reference-card strong{
  position:relative;
  z-index:1;
  color:#fff !important;
  text-shadow:0 1px 8px rgba(0,20,45,.55);
}

.home-page .home-reference-card strong{
  border-top-color:rgba(255,255,255,.24);
}

.home-page .home-reference-card:hover{
  border-color:rgba(143,219,244,.48);
  box-shadow:0 20px 44px rgba(0,18,42,.32);
  transform:translateY(-4px);
}

/* petite remontée de contraste au survol */
.home-page .home-reference-card:hover{
  background:
    linear-gradient(
      180deg,
      rgba(0,30,64,.20) 0%,
      rgba(0,30,64,.42) 38%,
      rgba(0,30,64,.82) 100%
    ),
    var(--ref-image) var(--ref-position,center) / cover no-repeat;
}


/* ============================================================
   CHARTE CTA / LIENS — CORRECTION BOUTON À PROPOS
   "Découvrir le parcours" = lien vers une autre page :
   cyan + fond blanc très transparent.
   ============================================================ */

.home-page .home-about .btn-secondary{
  min-height:44px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;

  width:max-content;
  padding:10px 18px;

  border:1.5px solid rgba(127,216,240,.72) !important;
  border-radius:999px;

  background:rgba(255,255,255,.065) !important;
  color:#8FDBF4 !important;

  font-weight:850;
  text-decoration:none !important;

  box-shadow:none !important;

  transition:
    transform .2s ease,
    background .2s ease,
    border-color .2s ease,
    color .2s ease;
}

.home-page .home-about .btn-secondary:hover{
  transform:translateY(-2px);
  border-color:#8FDBF4 !important;
  background:rgba(255,255,255,.11) !important;
  color:#B8EDFA !important;
}

.home-page .home-about .btn-secondary .btn-arrow{
  color:inherit;
}

.home-page .home-about .btn-secondary:focus-visible{
  outline:3px solid #8FDBF4;
  outline-offset:3px;
}


/* ============================================================
   ACCUEIL — RÉFÉRENCES / CORRECTION DÉFINITIVE DES PHOTOS
   Les images sont désormais de vrais <img> dans les cartes.
   Plus de variable CSS --ref-image.
   ============================================================ */

.home-page .home-reference-card{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  min-height:300px;
  padding:29px 25px 24px;

  border:1px solid rgba(255,255,255,.18);
  border-radius:16px;
  background:#002B5C !important;

  color:#fff;
  box-shadow:0 14px 34px rgba(0,18,42,.24);
}

/* vraie photo de fond */
.home-page .home-reference-card > .home-reference-bg{
  position:absolute;
  z-index:-3;
  inset:0;

  display:block;
  width:100%;
  height:100%;

  object-fit:cover;
  object-position:center;

  opacity:1;
  transform:scale(1.001);
  transition:transform .45s ease;
}

/* voile navy pour garantir la lisibilité */
.home-page .home-reference-card::after{
  content:"";
  position:absolute;
  z-index:-2;
  inset:0;
  pointer-events:none;

  background:
    linear-gradient(
      180deg,
      rgba(0,30,64,.35) 0%,
      rgba(0,30,64,.55) 40%,
      rgba(0,30,64,.93) 100%
    );
}

/* trait corail */
.home-page .home-reference-card::before{
  content:"";
  position:absolute;
  z-index:3;

  top:13px;
  left:25px;

  width:36px;
  height:3px;

  border-radius:3px;
  background:var(--coral);
}

/* catégorie + année : plus de chevauchement */
.home-page .home-reference-top{
  position:relative;
  z-index:2;

  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;

  min-height:42px;
  margin:6px 0 18px;
}

.home-page .home-reference-top > span{
  margin:0;
  max-width:75%;

  color:#8FDBF4 !important;

  font-size:.61rem;
  font-weight:900;
  line-height:1.4;
  letter-spacing:.08em;
  text-transform:uppercase;

  text-shadow:0 1px 6px rgba(0,20,45,.65);
}

.home-page .home-reference-top > small{
  position:static !important;
  flex:0 0 auto;

  margin:0;

  color:#fff !important;
  font-size:.66rem;
  font-weight:800;
  line-height:1.4;

  text-shadow:0 1px 6px rgba(0,20,45,.65);
}

.home-page .home-reference-card h3,
.home-page .home-reference-card p,
.home-page .home-reference-card > strong{
  position:relative;
  z-index:2;
}

.home-page .home-reference-card h3{
  margin:0 0 9px;
  color:#fff !important;
  font-size:1.30rem;
  line-height:1.13;
  text-shadow:0 2px 9px rgba(0,20,45,.65);
}

.home-page .home-reference-card p{
  margin:0 0 22px;
  color:#fff !important;
  font-size:.78rem;
  line-height:1.55;
  text-shadow:0 1px 7px rgba(0,20,45,.70);
}

.home-page .home-reference-card > strong{
  margin-top:auto;
  padding-top:15px;

  border-top:1px solid rgba(255,255,255,.28);

  color:#fff !important;
  font-size:.88rem;
  line-height:1.45;

  text-shadow:0 1px 7px rgba(0,20,45,.70);
}

/* neutralise les anciens positionnements éventuels */
.home-page .home-reference-card > small{
  position:static !important;
}

/* hover */
.home-page .home-reference-card:hover{
  transform:translateY(-4px);
  border-color:rgba(143,219,244,.48);
  background:#002B5C !important;
  box-shadow:0 20px 44px rgba(0,18,42,.34);
}

.home-page .home-reference-card:hover > .home-reference-bg{
  transform:scale(1.035);
}

@media(max-width:700px){
  .home-page .home-reference-card{
    min-height:280px;
  }

  .home-page .home-reference-top > span{
    max-width:72%;
  }
}

/* ============================================================
   FINALISATION 2026-10-16 — confiance, LinkedIn, 404
   ============================================================ */
.about-page .about-actions{flex-wrap:wrap;}

.references-proof{
  margin:0 0 34px;
  padding:28px;
  border:1px solid rgba(0,143,197,.22);
  border-radius:18px;
  background:linear-gradient(145deg,rgba(0,43,92,.98),rgba(0,67,112,.94));
  color:#fff;
}
.references-proof-head{max-width:780px;margin-bottom:22px;}
.references-proof-head h2{margin:.2rem 0 .55rem;color:#fff;}
.references-proof-head p:not(.eyebrow){margin:0;color:#fff;opacity:.9;}
.references-proof-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;}
.references-proof-grid article{
  padding:18px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:14px;
  background:rgba(255,255,255,.055);
}
.references-proof-grid strong{display:block;color:#fff;font-size:1.45rem;line-height:1.08;margin-bottom:8px;}
.references-proof-grid span{display:block;color:#fff;font-size:.76rem;line-height:1.45;}

.error-page{min-height:100vh;background:var(--navy);color:#fff;}
.error-main{min-height:66vh;display:grid;place-items:center;padding:80px 0;}
.error-card{max-width:760px;text-align:center;margin:auto;}
.error-code{display:block;color:var(--cyan);font-weight:900;font-size:clamp(4.5rem,12vw,9rem);line-height:.85;letter-spacing:-.06em;}
.error-card h1{color:#fff;font-size:clamp(2rem,5vw,3.6rem);margin:18px 0 14px;}
.error-card p{color:#fff;max-width:620px;margin:0 auto 26px;line-height:1.65;}
.error-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;}

@media(max-width:900px){.references-proof-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:560px){.references-proof-grid{grid-template-columns:1fr;}.references-proof{padding:22px 18px;}}

