:root{--blue:#075ed7;--deep:#06143d;--green:#169437;--green2:#62c944;--sky:#eaf5ff;--mint:#effbef;--line:#dce8f5;--muted:#63769b;--white:#fff;--shadow:0 14px 36px rgba(6,44,99,.10);--radius:18px;--max:1240px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--deep);font-family:Inter,Arial,Helvetica,sans-serif;background:#fff;line-height:1.45}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button,input,select,textarea{font:inherit}.skip{position:fixed;left:12px;top:-60px;z-index:100;background:#fff;padding:10px 16px;border-radius:8px;box-shadow:var(--shadow)}.skip:focus{top:12px}.container{width:min(var(--max),calc(100% - 40px));margin:auto}.site-header{height:84px;background:rgba(255,255,255,.96);position:sticky;top:0;z-index:30;box-shadow:0 1px 18px rgba(12,44,81,.08);backdrop-filter:blur(12px)}.nav-wrap{height:100%;display:flex;align-items:center;gap:34px}.brand{display:flex;align-items:center;min-width:255px}.brand img{width:64px;height:64px;object-fit:contain;border-radius:10px}.brand-copy{font-weight:950;line-height:.88;margin-left:7px;letter-spacing:-1px;font-size:24px;color:#0754b5}.brand-copy span{display:block;color:#168b2e;font-size:16px;letter-spacing:.5px}.nav{display:flex;align-items:center;justify-content:center;gap:4px;flex:1}.nav a{padding:30px 10px 25px;font-size:14px;color:#344e7d;border-bottom:3px solid transparent;transition:.2s}.nav a:hover,.nav a.active{color:var(--blue);border-color:var(--blue)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border:0;border-radius:10px;padding:14px 22px;font-weight:850;cursor:pointer;transition:transform .2s,box-shadow .2s,background .2s}.btn:hover{transform:translateY(-2px);box-shadow:0 10px 22px rgba(9,69,140,.18)}.btn-primary{background:linear-gradient(135deg,#16a13a,#087724);color:#fff}.btn-outline{background:#fff;color:var(--blue);border:2px solid var(--blue)}.nav-cta{white-space:nowrap}.menu-btn{display:none;background:none;border:0;font-size:28px;color:var(--deep)}.hero{min-height:460px;position:relative;display:flex;align-items:center;background-position:center;background-size:cover;overflow:hidden}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.99) 0%,rgba(255,255,255,.96) 30%,rgba(255,255,255,.55) 49%,rgba(255,255,255,.02) 73%)}.hero:after{content:"";position:absolute;inset:auto 0 0;height:70px;background:linear-gradient(transparent,rgba(255,255,255,.3))}.hero-content{position:relative;z-index:2;width:min(570px,53%);padding:48px 0}.eyebrow{font-weight:800;font-size:13px;letter-spacing:4px;text-transform:uppercase;color:#4e6794;margin:0 0 12px}.hero h1{font-size:clamp(42px,5vw,66px);line-height:.95;letter-spacing:-3.4px;margin:0 0 18px;font-weight:950}.accent-blue{color:var(--blue)}.accent-green{color:var(--green)}.hero p{font-size:18px;color:#4d628a;max-width:540px;margin:0 0 24px}.actions{display:flex;flex-wrap:wrap;gap:14px}.hero-home{background-image:url('assets/hero-main.png')}.hero-entreprises{background-image:url('assets/hero-business.png')}.hero-collectivites{background-image:url('assets/hero-community.png')}.hero-particuliers{background-image:url('assets/hero-private.png')}.hero-solutions{background-image:url('assets/hero-main.png')}.hero-implantations{background-image:url('assets/hero-locations.png')}.hero-engagements{background-image:url('assets/hero-commitments.png')}.hero-contact{background-image:url('assets/hero-main.png')}.section{padding:34px 0}.section.soft{background:linear-gradient(180deg,#f7fbff,#fff)}.section.green-soft{background:linear-gradient(180deg,#f6fff4,#fff)}.section-head{display:flex;align-items:end;justify-content:space-between;gap:34px;margin-bottom:18px}.section-head h2{font-weight:950;font-size:clamp(31px,4vw,44px);line-height:1;margin:0;letter-spacing:-2.2px}.section-head p{color:var(--muted);max-width:560px;margin:0 0 3px}.text-link{color:var(--blue);font-weight:800;white-space:nowrap}.audiences{margin-top:18px}.grid{display:grid;gap:14px}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}.grid-5{grid-template-columns:repeat(5,1fr)}.grid-6{grid-template-columns:repeat(6,1fr)}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 8px 26px rgba(22,63,112,.06);overflow:hidden;transition:transform .22s,box-shadow .22s}.card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.card-body{padding:18px}.card h3{margin:0 0 6px;font-size:18px;line-height:1.15}.card p{margin:0;color:var(--muted);font-size:14px}.card-media{height:148px;width:100%;object-fit:cover}.card.blue{background:#f1f8ff}.card.green{background:#f2fbef}.icon-card{display:flex;gap:14px;align-items:flex-start;padding:20px}.icon{flex:0 0 58px;width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#d9edff;color:#0754b5;font-size:28px;font-weight:900}.green .icon,.icon.green{background:#dff7d9;color:#118531}.tile-link{display:block}.tile-link .arrow{margin-left:auto;width:32px;height:32px;border:1px solid #91b9ef;border-radius:50%;display:grid;place-items:center;color:var(--blue)}.service-card .card-media{height:135px}.service-card .card-body{min-height:135px}.service-card .meta{display:flex;align-items:center;gap:9px;color:var(--green);font-size:23px;margin-bottom:8px}.service-card .meta strong{color:var(--deep);font-size:15px}.steps{counter-reset:step}.step{position:relative;padding:20px 18px 20px 72px;min-height:120px}.step:before{counter-increment:step;content:counter(step);position:absolute;left:18px;top:20px;width:38px;height:38px;border-radius:50%;background:var(--blue);color:#fff;display:grid;place-items:center;font-size:19px;font-weight:900}.step:nth-child(even):before{background:var(--green)}.step h3{font-size:15px}.feature-band{padding:28px;border-radius:22px;background:linear-gradient(100deg,#043d9c,#0870bd 46%,#13954a);color:#fff;position:relative;overflow:hidden}.feature-band:after{content:"↻";position:absolute;right:30px;top:-44px;font-size:190px;opacity:.13}.feature-band h2{font-size:32px;margin:0 0 3px}.feature-band p{margin:0;opacity:.9}.feature-band .inner{display:flex;align-items:center;justify-content:space-between;gap:28px;position:relative;z-index:2}.locations{grid-template-columns:1fr 1fr}.location{display:grid;grid-template-columns:45% 55%}.location .card-media{height:100%;min-height:270px}.ticks{padding:0;margin:14px 0 18px;list-style:none}.ticks li{margin:7px 0;color:#526889}.ticks li:before{content:"✓";color:var(--green);font-weight:900;margin-right:9px}.map-card{min-height:330px;display:grid;place-items:center;background:radial-gradient(circle at 50% 35%,#f8fdff,#d9ecff);position:relative}.map-shape{width:220px;height:250px;background:linear-gradient(135deg,#53c85e 0 49%,#42a6ed 50%);clip-path:polygon(35% 0,72% 8%,92% 31%,79% 56%,94% 82%,62% 100%,33% 89%,11% 64%,17% 39%,5% 16%);display:grid;place-items:center;color:#fff;font-weight:900;text-align:center;font-size:24px;text-shadow:0 2px 5px rgba(0,0,0,.2)}.tag-row{display:flex;flex-wrap:wrap;gap:12px}.tag{padding:12px 16px;border:1px solid var(--line);background:#fff;border-radius:12px;font-weight:800;color:#315386}.split{display:grid;grid-template-columns:1.2fr .8fr;gap:18px}.contact-form,.contact-info{padding:24px}.contact-form h2,.contact-info h2{font-size:34px;line-height:1;margin:0 0 8px;letter-spacing:-1.6px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:18px}.field{display:flex;flex-direction:column;gap:6px}.field.full{grid-column:1/-1}.field label{font-weight:800;font-size:13px}.field input,.field select,.field textarea{border:1px solid #b9cae0;border-radius:8px;padding:12px;color:#183364;background:#fff}.field input:focus,.field select:focus,.field textarea:focus{outline:3px solid rgba(0,97,242,.15);border-color:var(--blue)}.field textarea{min-height:120px;resize:vertical}.contact-item{display:flex;align-items:center;gap:16px;padding:18px;border-radius:14px;background:#eef9ef;margin:12px 0}.contact-item.blue{background:#eef7ff}.contact-item strong{display:block;font-size:19px;color:#0843ad}.faq{border:1px solid var(--line);border-radius:12px;background:#fff;overflow:hidden}.faq button{width:100%;padding:16px 18px;background:#fff;border:0;display:flex;justify-content:space-between;text-align:left;font-weight:850;color:var(--deep);cursor:pointer}.faq .answer{display:none;padding:0 18px 17px;color:var(--muted)}.faq.open .answer{display:block}.faq.open button span{transform:rotate(45deg)}.site-footer{margin-top:26px;border-top:1px solid var(--line);background:#f9fbfe}.footer-main{display:grid;grid-template-columns:1.2fr .8fr 1fr 1fr;gap:32px;padding:34px 0}.footer-brand .brand{margin-bottom:12px}.footer-brand p,.footer-col a,.footer-col p{font-size:13px;color:#526889}.footer-col h3{font-size:14px;margin:0 0 12px}.footer-col a{display:block;padding:3px 0}.footer-col a:hover{color:var(--blue)}.footer-bottom{border-top:1px solid var(--line);padding:13px 0;color:#6d7c99;font-size:12px}.footer-bottom .container{display:flex;justify-content:space-between;gap:20px}.toast{position:fixed;right:20px;bottom:20px;z-index:50;background:#073f9d;color:#fff;padding:15px 20px;border-radius:12px;box-shadow:var(--shadow);transform:translateY(120px);opacity:0;transition:.3s}.toast.show{transform:none;opacity:1}.reveal{opacity:0;transform:translateY(18px);transition:.6s}.reveal.visible{opacity:1;transform:none}
@media(max-width:1050px){.brand{min-width:auto}.brand-copy{display:none}.nav-wrap{gap:15px}.nav a{font-size:12px;padding-inline:7px}.grid-6{grid-template-columns:repeat(3,1fr)}.grid-5{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(2,1fr)}.hero-content{width:62%}.hero h1{font-size:52px}.footer-main{grid-template-columns:1fr 1fr}.location{grid-template-columns:1fr}.location .card-media{height:210px;min-height:0}}
@media(max-width:760px){.container{width:min(100% - 28px,var(--max))}.site-header{height:72px}.brand img{width:52px;height:52px}.brand-copy{display:block;font-size:18px}.brand-copy span{font-size:12px}.menu-btn{display:block;margin-left:auto}.nav-cta{display:none}.nav{position:fixed;left:0;right:0;top:72px;background:#fff;display:none;flex-direction:column;align-items:stretch;padding:10px 18px 20px;box-shadow:0 15px 24px rgba(6,29,63,.12)}.nav.open{display:flex}.nav a{font-size:16px;padding:12px;border:0;border-radius:8px}.nav a.active{background:#eef6ff}.hero{min-height:590px;background-position:66% center;align-items:flex-end}.hero:before{background:linear-gradient(0deg,rgba(255,255,255,.99) 0%,rgba(255,255,255,.96) 48%,rgba(255,255,255,.15) 78%)}.hero-content{width:100%;padding:220px 0 32px}.hero h1{font-size:42px;letter-spacing:-2.4px}.hero p{font-size:16px}.section{padding:28px 0}.section-head{display:block}.section-head h2{font-size:34px}.section-head p{margin-top:10px}.grid-3,.grid-4,.grid-5,.grid-6,.locations,.split{grid-template-columns:1fr}.service-grid{grid-template-columns:repeat(2,1fr)}.feature-band .inner{align-items:flex-start;flex-direction:column}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.footer-main{grid-template-columns:1fr}.footer-bottom .container{display:block}.location{grid-template-columns:1fr}.actions .btn{width:100%}}
@media(max-width:470px){.brand-copy{display:none}.service-grid{grid-template-columns:1fr}.hero h1{font-size:37px}.icon-card{padding:16px}.card-body{padding:15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}.reveal{opacity:1;transform:none}}
