@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#102633;--muted:#63747e;--aqua:#aee1d4;--paper:#f6f6f2;--line:#d9e2e2}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:96px}body{margin:0;font-family:'DM Sans',Arial,sans-serif;color:var(--ink);background:#fff}a{color:inherit;text-decoration:none}img{display:block;width:100%;height:100%;object-fit:cover}p{line-height:1.7}h1,h2,h3{font-family:Manrope,Arial,sans-serif;letter-spacing:-.055em;line-height:1.12}.container{width:min(1370px,calc(100% - 9vw));margin:auto}.demo-notice{min-height:34px;padding:8px 4.5vw;background:#102633;color:#d6e8ec;display:flex;justify-content:space-between;gap:18px;align-items:center;font:700 10px 'DM Sans',sans-serif;letter-spacing:.11em}.demo-notice a{color:#fff;text-decoration:underline;text-underline-offset:3px;letter-spacing:0}.site-header{position:sticky;top:0;background:rgba(255,255,255,.97);backdrop-filter:blur(14px);border-bottom:1px solid #e8eeee;z-index:20}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:86px}.logo{display:flex;align-items:center;gap:12px;flex-shrink:0}.symbol{background:#173a45;color:#fff;width:47px;height:47px;display:grid;place-items:center;border-radius:13px;font:800 25px Manrope,Arial,sans-serif;letter-spacing:-.1em}.symbol span{color:var(--aqua)}.logo b{display:block;font:800 21px Manrope,sans-serif;letter-spacing:-.06em}.logo small{display:block;font-size:9px;letter-spacing:.13em;font-weight:700;color:#7b8990;margin-top:4px}.main-nav{display:flex;align-items:center;gap:clamp(12px,2.2vw,31px);font-weight:700;font-size:13px}.main-nav>a:hover,.nav-dropdown>a:hover{color:#16736a}.nav-dropdown{position:relative;padding:24px 0}.dropdown-panel{display:none;position:absolute;top:100%;left:-28px;min-width:250px;background:#fff;box-shadow:0 17px 50px #09233322;border:1px solid #e2eaea;border-radius:12px;padding:10px}.nav-dropdown:hover .dropdown-panel,.nav-dropdown:focus-within .dropdown-panel{display:grid}.dropdown-panel a{padding:10px 13px;border-radius:6px}.dropdown-panel a:hover{background:#edf7f3}.header-cta,.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:26px;font-weight:800;font-size:13px;white-space:nowrap}.header-cta{background:#153947;border-radius:8px;color:#fff;padding:15px 17px}.header-cta:hover,.btn-main:hover{background:#286b65;color:#fff}.btn{min-height:55px;padding:16px 22px;border-radius:8px}.btn-main{background:#153947;color:#fff}.btn-quiet{border:1px solid #bfcdcf;color:#183c47}.btn-quiet:hover{background:#eaf3f1}.btn-light{background:#e5f4ef;color:#133542}.btn-light:hover{background:#fff}.overline{font:800 11px 'DM Sans',sans-serif;letter-spacing:.16em;text-transform:uppercase;color:#327970}.accent-rule{display:inline-block;width:27px;height:2px;background:#5ab9a7;vertical-align:middle;margin-right:10px}.hero{background:#f5f6f3}.hero-grid{display:grid;grid-template-columns:1fr .98fr;gap:7%;min-height:630px;align-items:center;padding:55px 0}.hero-copy{padding:30px 0}.hero h1{font-size:clamp(47px,5.2vw,85px);font-weight:700;max-width:750px;margin:24px 0}.hero h1 em,.final-cta em{font-style:normal;color:#379587}.hero-copy>p{font-size:18px;color:#5c6b73;max-width:560px}.hero-actions{display:flex;gap:13px;flex-wrap:wrap;margin:29px 0 31px}.hero-micro{font-size:12px;font-weight:700;color:#68777d}.hero-micro span{margin:0 10px;color:#a6b7ba}.hero-photo{position:relative;height:560px;border-radius:3px 95px 3px 3px;overflow:hidden;background:#dde5e4}.hero-photo img{transition:transform .6s}.hero-photo:hover img{transform:scale(1.025)}.photo-label{position:absolute;bottom:23px;left:23px;right:23px;background:#fff;padding:18px 22px;display:flex;justify-content:space-between;gap:12px;font-size:12px;font-weight:800;letter-spacing:.09em}.photo-label span{color:#75868b}.service-index{padding:105px 0 115px}.section-intro{display:grid;grid-template-columns:1.05fr 1fr;align-items:end;gap:70px;margin-bottom:38px}.section-intro h2,.split-copy h2,.teaser-inner h2,.detail-grid h2,.zone-grid h2{font-size:clamp(40px,4.4vw,65px);margin:15px 0}.section-intro h2 em{font-style:normal;color:#368b80}.section-intro>p{font-size:17px;color:#5b6d75;max-width:450px}.index-line{display:grid;grid-template-columns:54px 1.2fr 1.05fr 30px;gap:18px;align-items:center;border-top:1px solid #d4dfde;padding:24px 4px;transition:padding .2s,background .2s}.index-line:last-child{border-bottom:1px solid #d4dfde}.index-line:hover{padding-left:16px;background:#f3f8f6}.index-num{color:#4b958b;font-weight:800;font-size:12px}.index-title{font:700 clamp(18px,2.1vw,28px) Manrope,sans-serif;letter-spacing:-.04em}.index-desc{color:#62727a;font-size:14px}.index-arrow{font-size:23px;color:#287e73}.editorial-split{display:grid;grid-template-columns:1fr 1fr;background:#12303c;color:white;min-height:530px}.split-photo{min-height:520px}.split-copy{padding:80px clamp(30px,8vw,135px);align-self:center}.split-copy .overline{color:#a2dbcd}.split-copy h2{color:white}.split-copy p{color:#c0d0d7;font-size:17px;max-width:530px}.link-arrow{display:inline-flex;margin-top:20px;padding:0 0 10px;border-bottom:1px solid #b2d8d1;color:#c8f1e4;font-weight:800}.project-teaser{padding:98px 0;background:#f4f7f5}.teaser-inner{display:grid;grid-template-columns:1.1fr .85fr auto;align-items:center;gap:42px}.teaser-inner p{color:#65767b}.final-cta{background:#0d2936;color:#fff;padding:74px 0}.final-inner{display:flex;align-items:center;justify-content:space-between;gap:36px}.final-inner .overline{color:#aee1d4}.final-inner h2{font-size:clamp(36px,4.1vw,62px);margin:15px 0 0}.inner-hero{background:#f4f7f5}.inner-grid{display:grid;grid-template-columns:1fr .9fr;align-items:center;gap:8%;padding:62px 0}.inner-copy h1{font-size:clamp(45px,4.8vw,75px);margin:23px 0}.inner-copy>p{font-size:18px;color:#607179;margin-bottom:28px}.inner-image{height:480px;border-radius:4px 75px 4px 4px;overflow:hidden}.detail-section{padding:100px 0}.detail-grid{display:grid;grid-template-columns:.9fr 1fr;gap:9%}.detail-grid>div>p{font-size:17px;color:#61747b}.detail-steps{margin-top:35px}.detail-steps>div{display:grid;grid-template-columns:40px 1fr;gap:18px;border-top:1px solid #d7e2e0;padding:22px 0}.detail-steps b{color:#479c8e}.detail-steps strong{font-size:19px}.detail-steps p{font-size:14px;color:#61747b;margin:7px 0}.related{background:#f6f8f6;padding:80px 0}.related h2{font-size:45px}.related-list{display:grid;grid-template-columns:1fr 1fr;gap:0 36px}.related-list a{padding:21px 0;border-top:1px solid #d0dddb;display:flex;justify-content:space-between;gap:20px}.related-list a:hover{color:#2b8176}.intro-band{background:#f2f6f4;padding:95px 0}.intro-band h1{font-size:clamp(43px,5vw,78px);max-width:950px;margin:23px 0}.intro-band p{max-width:750px;font-size:18px;color:#60747b}.gallery{padding:75px 0 110px}.gallery-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:30px}.gallery figure{margin:0;min-width:0}.gallery img{height:350px;border-radius:4px;object-fit:cover}.gallery .gallery-main{grid-column:span 2}.gallery .gallery-main img{height:520px}.gallery figcaption{padding:17px 0;display:flex;flex-direction:column;gap:5px}.gallery figcaption b{font:700 19px Manrope,sans-serif}.gallery figcaption span{font-size:12px;color:#7a898d}.zones{padding:100px 0}.zone-grid{display:grid;grid-template-columns:1fr 1fr;gap:13%}.zone-grid p{color:#60747b}.zone-list{display:grid;gap:0}.zone-list span{border-bottom:1px solid #dae4e2;padding:17px 0;font-weight:700}.contact-layout{padding:110px 0}.contact-grid{display:grid;grid-template-columns:1fr .9fr;gap:12%}.contact-grid h2{font-size:48px}.contact-items>div{display:flex;align-items:center;gap:20px;padding:18px 0;border-bottom:1px solid #d9e3e2}.contact-items b{color:#368f82}.demo-contact{background:#eef5f2;padding:44px;border-radius:8px}.demo-contact h3{font-size:34px}.demo-contact p{color:#63777b;margin-bottom:28px}.footer{background:#091c27;color:#d3dfe0;padding:55px 0}.footer-inner{display:flex;justify-content:space-between;gap:55px}.footer-logo{font:800 25px Manrope,sans-serif;letter-spacing:-.06em;color:white}.footer-logo span{color:#a5dac9}.footer p{max-width:540px;font-size:12px;color:#9cafb5}.footer-inner>div:last-child{display:flex;gap:20px;align-items:flex-start;font-size:12px}.footer a:hover{color:#c9f4e6}@media(max-width:1200px){.main-nav{gap:12px;font-size:12px}.header-cta{padding:13px;font-size:12px}.logo b{font-size:18px}.hero-photo{height:480px}.teaser-inner{grid-template-columns:1fr 1fr}.teaser-inner .btn{grid-column:1 / -1;justify-self:start}}@media(max-width:960px){.header-inner{flex-wrap:wrap;padding:16px 0}.main-nav{order:3;width:100%;justify-content:space-between;overflow-x:auto;white-space:nowrap}.hero-grid,.inner-grid,.section-intro,.detail-grid,.zone-grid,.contact-grid{grid-template-columns:1fr}.hero-grid{gap:30px}.hero-photo{height:450px}.hero-copy{padding:0}.editorial-split{grid-template-columns:1fr}.split-photo{min-height:380px}.split-copy{padding:60px 6vw}.index-line{grid-template-columns:34px 1.2fr 1fr 26px}.teaser-inner{grid-template-columns:1fr}.footer-inner{flex-direction:column}.header-cta{margin-left:auto}}@media(max-width:600px){.container{width:calc(100% - 36px)}.demo-notice{font-size:9px;flex-direction:column;align-items:flex-start}.header-inner{gap:13px}.main-nav{gap:18px}.nav-dropdown{padding:10px 0}.dropdown-panel{position:fixed;left:4vw;top:130px;width:92vw}.header-cta{width:100%;justify-content:center}.logo b{font-size:18px}.hero-grid,.inner-grid{padding:40px 0}.hero h1{font-size:43px}.hero-photo{height:360px;border-radius:3px 50px 3px 3px}.hero-actions{flex-direction:column;align-items:stretch}.hero-actions .btn{width:100%}.hero-micro{line-height:1.8}.service-index,.detail-section,.zones,.contact-layout{padding:68px 0}.index-line{grid-template-columns:26px 1fr 22px;gap:11px}.index-desc{grid-column:2;grid-row:2}.index-arrow{grid-column:3;grid-row:1}.index-title{font-size:20px}.split-photo{min-height:275px}.section-intro h2,.split-copy h2,.teaser-inner h2{font-size:39px}.final-inner{align-items:flex-start;flex-direction:column}.inner-image{height:320px}.related-list,.gallery-grid{grid-template-columns:1fr}.gallery .gallery-main{grid-column:auto}.gallery .gallery-main img,.gallery img{height:280px}.intro-band{padding:65px 0}.contact-grid h2{font-size:36px}.demo-contact{padding:28px}.footer-inner>div:last-child{flex-direction:column}}

/* V1.86 : lisibilité clavier et détails métiers */
:where(a,button):focus-visible{outline:3px solid #247b70;outline-offset:4px}
.detail-disclaimer{margin-top:28px;padding-top:16px;border-top:1px solid #dbe5e2;font-size:12px!important;line-height:1.6!important;color:#687d80!important}
@media(max-width:600px){.nav-dropdown:focus-within .dropdown-panel{display:grid}.dropdown-panel{max-height:65vh;overflow-y:auto}.detail-grid h2{font-size:36px}}

/* V1.87 — Galerie éditoriale : trois univers, aucune fausse réalisation */
.gallery-heading{padding-bottom:65px}.gallery-heading strong{color:#274d54}.gallery-summary{display:flex;gap:12px 26px;flex-wrap:wrap;margin-top:34px;font-size:12px;font-weight:800;color:#456a67}.gallery-summary span{border-top:2px solid #6ca79b;padding-top:12px}.portfolio{padding:82px 0 108px;background:#fff}.portfolio-feature{display:grid;grid-template-columns:1.16fr .84fr;gap:clamp(35px,5vw,90px);align-items:center}.portfolio-image{position:relative;min-height:0;background:linear-gradient(135deg,#dce7e2,#b4cdcd);overflow:hidden}.portfolio-feature .portfolio-image{aspect-ratio:4/4.4}.portfolio-image img{width:100%;height:100%;object-fit:cover}.photo-tag{position:absolute;left:17px;bottom:17px;background:#f7faf8;color:#25463f;padding:10px 12px;font-size:10px;font-weight:800;letter-spacing:.09em}.portfolio-story h2,.method-layout h2{font-size:clamp(37px,4vw,64px);margin:15px 0 25px}.portfolio-story>p{font-size:17px;color:#576e76}.portfolio-story dl{margin:30px 0}.portfolio-story dl>div{padding:15px 0;border-top:1px solid #d6e2df}.portfolio-story dt{font-weight:800;font-size:12px;letter-spacing:.08em;text-transform:uppercase}.portfolio-story dd{margin:7px 0 0;color:#5b6f74;font-size:14px;line-height:1.6}.portfolio-link{display:inline-flex;gap:28px;align-items:center;border-bottom:1px solid #2c7f72;padding:0 0 11px;color:#195e59;font-weight:800;font-size:13px}.portfolio-link:hover{color:#092a2b}.portfolio-pair{display:grid;grid-template-columns:1fr 1fr;gap:clamp(22px,4vw,64px);margin-top:95px}.portfolio-small .portfolio-image{aspect-ratio:1.35/1}.portfolio-small-copy{padding:28px 0 0}.portfolio-small h3{font-size:clamp(26px,2.7vw,38px);margin:12px 0}.portfolio-small p{color:#60747b;max-width:520px}.portfolio-method{background:#eaf3ef;padding:88px 0}.method-layout{display:grid;grid-template-columns:1fr .82fr;gap:11%}.method-layout p{font-size:17px;color:#526b70}.method-layout .btn{margin-top:20px}.image-unavailable{opacity:0}.portfolio-image:has(.image-unavailable)::before{content:'Photographie indisponible';position:absolute;inset:0;display:grid;place-items:center;text-align:center;color:#3f6e68;font-size:13px;font-weight:800;padding:20px}.portfolio-image:has(.image-unavailable) .photo-tag{z-index:1}@media(max-width:900px){.portfolio-feature,.method-layout{grid-template-columns:1fr}.portfolio-feature .portfolio-image{aspect-ratio:1.5/1}.portfolio-pair{margin-top:65px}}@media(max-width:600px){.portfolio{padding:55px 0}.portfolio-pair{grid-template-columns:1fr;gap:55px}.portfolio-feature .portfolio-image{aspect-ratio:1.1/1}.portfolio-method{padding:60px 0}.gallery-summary{display:grid;gap:8px}.gallery-summary span{padding-top:8px}.portfolio-story h2{font-size:36px}}

/* V1.89 — menu réellement utilisable au toucher, au clavier et au clic */
.nav-dropdown{position:relative;cursor:default}
.nav-dropdown summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:6px;color:inherit;user-select:none}
.nav-dropdown summary::-webkit-details-marker{display:none}
.nav-dropdown summary::marker{content:''}
.nav-dropdown[open] summary{color:#16736a}
.nav-dropdown[open] summary span{transform:rotate(180deg)}
.nav-dropdown summary span{display:inline-block;transition:transform .2s}
.nav-dropdown .dropdown-panel{display:none;z-index:100}
.nav-dropdown[open] .dropdown-panel{display:grid}
.nav-dropdown summary:focus-visible{outline:3px solid #247b70;outline-offset:5px}
@media (hover:hover) and (pointer:fine){.nav-dropdown:hover .dropdown-panel:not(:empty){display:grid}}
@media(max-width:960px){
 .main-nav{overflow:visible;flex-wrap:wrap;row-gap:6px;white-space:normal}
 .nav-dropdown .dropdown-panel{position:absolute;top:100%;left:0;width:min(86vw,320px);max-height:50vh;overflow-y:auto}
}
@media(max-width:600px){
 .main-nav{justify-content:flex-start;gap:15px 22px}
 .nav-dropdown{padding:0}
 .nav-dropdown .dropdown-panel{position:absolute;top:100%;left:-20px;width:min(90vw,320px);max-height:55vh}
}
@media(hover:none){.nav-dropdown:hover:not([open]) .dropdown-panel{display:none}}

/* V1.94 — Galerie éditoriale et études de cas fictives */
.portfolio-v194 .case-lead{font-size:clamp(18px,1.55vw,23px);line-height:1.55;color:#203c41;font-weight:500;margin-bottom:25px}.portfolio-v194 .portfolio-story dl>div{padding:20px 0}.portfolio-v194 .portfolio-story dt{color:#247568}.portfolio-v194 .portfolio-pair{margin-top:30px}.portfolio-v194 .portfolio-small-copy p{font-size:15px;line-height:1.85}.portfolio-v194 .portfolio-small-copy p strong{color:#244d4b}.portfolio-v194 .case-divider{display:flex;justify-content:space-between;gap:20px;align-items:center;margin:96px 0 30px;padding:15px 0;border-top:1px solid #c9dbd6;border-bottom:1px solid #c9dbd6;font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#315a59}.portfolio-v194 .photo-tag{max-width:calc(100% - 34px);font-size:10px;line-height:1.4}.portfolio-v194 .portfolio-feature .portfolio-image img{display:block}.portfolio-v194 .portfolio-small .portfolio-image img{display:block}@media(max-width:600px){.portfolio-v194 .case-divider{margin:60px 0 26px;font-size:10px}.portfolio-v194 .portfolio-small-copy{padding-top:24px}}
