:root{--deep:#173c58;--blue:#285c7c;--cream:#f1eee9;--ink:#353638;--muted:#747775;--border:#d4d7d5}html{scroll-padding-top:0}.content-section{padding:65px clamp(30px,6.2vw,118px) 85px;scroll-margin-top:0}.section-top{display:flex;justify-content:space-between;gap:25px;padding-bottom:22px;border-bottom:1px solid var(--border);font-size:10px;font-weight:500;letter-spacing:.16em;color:var(--blue)}.section-top span:last-child{color:#878b8d;font-size:9px}.content-section h2{font-family:'Libre Baskerville',Georgia,serif;font-size:clamp(32px,3.7vw,58px);font-weight:400;letter-spacing:-.055em;line-height:1.24;margin:0}.content-section h2 em{color:var(--blue);font-weight:400}.section-kicker{color:var(--blue);font-size:10px;letter-spacing:.19em;margin:0 0 25px}.company{background:#f8f7f4}.company-layout{display:grid;grid-template-columns:46% 1fr;gap:clamp(30px,6vw,95px);align-items:center;margin-top:55px}.company-visual{position:relative;min-width:0;height:580px;max-height:68vh;background:#d9d7d2}.company-visual>img{width:100%;height:100%;object-fit:cover;object-position:center}.photo-caption{position:absolute;bottom:18px;left:20px;right:15px;color:white;font-size:8px;letter-spacing:.14em;text-shadow:0 2px 4px #000;background:#173c58bd;padding:12px 15px;width:fit-content}.company-copy>p:not(.section-kicker){font-size:14px;line-height:1.9;color:#707375;margin:22px 0}.company-copy>.company-lead{font-size:17px!important;color:#424e56!important;line-height:1.7!important;margin-top:28px!important}.editorial-link{display:flex;gap:24px;width:fit-content;align-items:center;border-bottom:1px solid #688499;padding:5px 0 10px;color:var(--blue);font-size:12px;margin-top:25px}.company-signature{margin-top:37px;border-left:2px solid #8fa9ba;padding-left:18px}.company-signature>span{font-size:10px;font-weight:600;letter-spacing:.16em;color:var(--deep)}.company-signature small{display:block;font-family:Georgia,serif;font-style:italic;font-size:16px;color:#7a858a;margin-top:7px}.techniques{background:#e9eceb}.tech-heading{display:flex;justify-content:space-between;gap:40px;align-items:flex-end;margin:50px 0 45px}.tech-heading>p{max-width:300px;color:#6e777c;line-height:1.9;font-size:14px;margin:0}.tech-layout{display:grid;grid-template-columns:46% 1fr;gap:clamp(30px,5vw,80px);align-items:start}.tech-visual{position:sticky;top:30px}.tech-visual>img{width:100%;height:460px;object-fit:cover;display:block}.tech-visual>p{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--blue);margin:16px 0 0}.tech-list{border-top:1px solid #b9c4c8}.tech-detail{border-bottom:1px solid #b9c4c8}.tech-detail summary{display:flex;gap:17px;align-items:center;list-style:none;padding:27px 0;cursor:pointer;color:#304756;font-size:16px;line-height:1.4}.tech-detail summary::-webkit-details-marker{display:none}.tech-index{font-size:10px;letter-spacing:.06em;color:#7a929f;align-self:center}.detail-sign{margin-left:auto;font-size:24px;font-weight:400;color:var(--blue)}.tech-detail[open] .detail-sign{transform:rotate(45deg)}.tech-description{padding:0 18px 28px 32px}.tech-description p{font-size:13px;line-height:1.85;color:#667379;margin:0 0 20px}.tech-description a{font-size:11px;color:var(--blue);border-bottom:1px solid #a9b9c2;padding-bottom:5px}.portfolio{background:#f8f7f4}.portfolio-heading{display:flex;justify-content:space-between;gap:40px;align-items:flex-end;margin:50px 0 40px}.portfolio-intro>p{font-size:13px;line-height:1.9;color:#71797e;margin:0 0 24px}.portfolio-filters{display:flex;flex-wrap:wrap;gap:6px}.portfolio-filters button{font-size:10px;padding:9px 12px;color:#546773;border:1px solid #cbd4d8;background:none;cursor:pointer}.portfolio-filters button.selected{background:var(--blue);border-color:var(--blue);color:white}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 20px}.gallery-item{display:block;border:0;background:none;color:inherit;text-align:left;padding:0;cursor:pointer;min-width:0}.gallery-item .gallery-crop{height:310px;background:#d8d9d5;overflow:hidden;position:relative}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .4s;display:block}.gallery-item:hover img{transform:scale(1.04)}.gallery-item .gallery-open{position:absolute;right:12px;bottom:12px;width:34px;height:34px;display:grid;place-items:center;background:#f4f1e9ef;color:var(--blue);font-size:20px}.gallery-item .gallery-caption{display:flex;justify-content:space-between;gap:8px;font-size:10px;line-height:1.5;color:#6b7a84;padding:13px 0 0}.gallery-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:35px}.gallery-bottom p{font-size:11px;color:#859096}.outline-button{padding:14px 19px;font-size:11px;background:none;border:1px solid #a7bbc6;color:var(--blue);cursor:pointer}.outline-button span{font-size:17px;padding-left:25px}.outline-button[hidden]{display:none}.videos{margin-top:50px;padding-top:25px;border-top:1px solid #d0d6d8}.videos>summary{cursor:pointer;color:var(--blue);font-size:14px;padding:5px 0;list-style:none;display:flex;justify-content:space-between}.video-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:25px}.video-grid video{width:100%;max-height:500px;background:#142c3b}.contact-section{background:var(--deep);color:#f3f2ee}.contact-section .section-top{color:#b2cadd;border-color:#ffffff35}.contact-section .section-top span:last-child{color:#a4bdca}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:clamp(35px,7vw,110px);margin-top:60px}.contact-section .section-kicker{color:#9abbd1;font-size:9px}.contact-section h2 em{color:#b5d2e6}.contact-copy>p:not(.section-kicker){font-size:13px;line-height:1.9;color:#bdd0dc;max-width:380px;margin:25px 0}.contact-phone{display:flex;align-items:center;justify-content:space-between;gap:25px;color:white;font-size:clamp(21px,2.1vw,32px);font-weight:400;letter-spacing:-.03em;border-bottom:1px solid #ffffff45;padding:15px 0;max-width:380px}.contact-email{display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:12px;padding-top:20px;max-width:380px;overflow-wrap:anywhere}.contact-copy>.contact-address{font-size:11px!important;line-height:1.8!important;margin-top:38px!important;color:#a4bdca!important}.contact-message{align-self:start;background:#214b69;padding:32px}.contact-message h3{font-family:'Libre Baskerville',Georgia,serif;font-size:20px;line-height:1.4;font-weight:400;margin:0 0 14px}.contact-message>p{font-size:12px;line-height:1.7;color:#c0d0dc;margin:0 0 24px}.contact-message form{display:flex;flex-direction:column;gap:10px}.contact-message label{font-size:11px;margin-top:6px}.contact-message input,.contact-message select,.contact-message textarea{width:100%;border:1px solid #91aab655;background:#173e5a;color:#fff;font:inherit;font-size:12px;padding:13px;border-radius:0}.contact-message input::placeholder,.contact-message textarea::placeholder{color:#a9c0cf}.contact-message select{appearance:auto}.contact-message textarea{resize:vertical;min-height:100px}.send-button{display:flex;justify-content:space-between;gap:18px;width:100%;padding:16px 18px;color:#234f6d;background:#eff1ed;border:0;font-size:12px;font-weight:500;margin-top:10px;cursor:pointer}.form-note{font-size:10px!important;line-height:1.8!important;color:#aac2d1!important;margin:6px 0 0}.site-footer{padding:35px clamp(30px,6.2vw,118px) 25px;background:#f1f0ed}.footer-main{display:flex;justify-content:space-between;align-items:center;gap:25px;padding-bottom:30px}.footer-main>a:first-child{display:flex;align-items:center;gap:15px;color:var(--blue);font-size:11px;letter-spacing:.12em}.footer-main img{object-fit:contain;mix-blend-mode:multiply}.footer-main small{display:block;font-size:7px;margin-top:7px;letter-spacing:.08em}.footer-main>span{font-size:9px;letter-spacing:.12em;color:#7a878f}.footer-main>a:last-child{font-size:10px;color:#6e7d87}.footer-bottom{border-top:1px solid #d2d9dd;padding-top:20px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:20px;font-size:9px;color:#7a858d}.lightbox{border:0;background:#102b3e;color:#fff;width:min(1200px,96vw);max-width:96vw;max-height:95svh;padding:20px}.lightbox::backdrop{background:#06131cef}.lightbox-header{display:flex;align-items:center;justify-content:space-between;gap:25px}.lightbox-header p{font-size:12px;margin:0}.lightbox-header button{color:white;background:none;border:0;font-size:30px;cursor:pointer}.lightbox-picture{display:grid;grid-template-columns:40px 1fr 40px;align-items:center;gap:15px;margin-top:10px}.lightbox-picture img{display:block;max-width:100%;height:72svh;object-fit:contain;margin:auto}.lightbox-picture button{border:1px solid #ffffff50;color:white;background:none;width:38px;height:45px;font-size:24px;cursor:pointer}#lightbox-counter{text-align:center;color:#adc3d1;font-size:11px;margin:15px 0 0}body.gallery-open{overflow:hidden}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #769bb8;outline-offset:5px}.contact-message input:focus,.contact-message textarea:focus,.contact-message select:focus{outline:2px solid #aacde7;outline-offset:3px}.info-page{max-width:900px;margin:auto;padding:60px 35px;color:#3e505a;line-height:1.9}.info-page h1{font-family:Georgia,serif;font-size:38px;font-weight:400}.info-page h2{font-size:20px;margin-top:35px}.info-page p{font-size:14px}.info-page a{text-decoration:underline;color:var(--blue)}@media(min-width:1600px){.gallery-item .gallery-crop{height:390px}}@media(max-width:1150px){.company-layout{grid-template-columns:43% 1fr;gap:35px}.tech-layout{grid-template-columns:43% 1fr;gap:30px}.tech-detail summary{font-size:14px}.gallery-item .gallery-crop{height:250px}.contact-layout{gap:30px}.contact-message{padding:25px}.portfolio-heading{display:block}.portfolio-intro{margin-top:25px}.company-visual{height:520px}}@media(max-width:850px){.content-section{padding:45px 30px 60px}.section-top span:last-child{display:none}.company-layout{grid-template-columns:1fr;gap:35px;margin-top:35px}.company-visual{height:370px;max-height:none}.company-visual>img{object-position:50% 60%}.company-copy h2{font-size:38px}.company-signature{margin-top:25px}.tech-heading{display:block;margin-top:35px}.tech-heading>p{max-width:none;margin-top:25px}.tech-layout{grid-template-columns:1fr}.tech-visual{position:static}.tech-visual>img{height:330px}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-item .gallery-crop{height:250px}.contact-layout{grid-template-columns:1fr;gap:35px}.footer-main{flex-wrap:wrap}.footer-main>span{display:none}.site-footer{padding:30px}.lightbox{padding:12px}.lightbox-picture{grid-template-columns:28px 1fr 28px;gap:5px}.lightbox-picture button{width:28px;height:40px;font-size:18px}.lightbox-picture img{height:65svh}}@media(max-width:580px){.content-section{padding:35px 20px 45px}.section-top{font-size:8px;letter-spacing:.08em;padding-bottom:18px}.content-section h2{font-size:31px}.company-layout{margin-top:28px}.company-visual{height:290px}.photo-caption{font-size:7px;padding:9px;left:10px;bottom:10px}.company-copy>.company-lead{font-size:15px!important}.company-copy>p:not(.section-kicker){font-size:13px}.tech-heading{margin:28px 0}.tech-visual>img{height:270px}.tech-detail summary{font-size:13px;gap:10px;padding:22px 0}.tech-index{font-size:9px}.tech-description{padding-left:22px;padding-right:0}.gallery-grid{gap:20px 10px}.gallery-item .gallery-crop{height:185px}.gallery-item .gallery-caption{font-size:8px}.gallery-item .gallery-open{width:27px;height:27px;font-size:16px;right:7px;bottom:7px}.portfolio-heading{margin:30px 0}.portfolio-filters{gap:5px}.portfolio-filters button{font-size:9px;padding:8px}.gallery-bottom{align-items:flex-start;flex-direction:column;gap:8px}.gallery-bottom p{font-size:10px}.outline-button{width:100%;text-align:left;display:flex;justify-content:space-between}.videos>summary{font-size:12px}.video-grid{grid-template-columns:1fr}.contact-layout{margin-top:35px}.contact-message{padding:20px 16px}.contact-message h3{font-size:17px}.contact-phone{font-size:23px}.contact-email{font-size:11px}.footer-main>a:first-child{font-size:9px;gap:9px}.footer-main>a:last-child{font-size:9px}.footer-main{gap:20px}.site-footer{padding:25px 20px}.footer-bottom{gap:12px;flex-direction:column}.lightbox-header p{font-size:10px}.lightbox-picture img{height:60svh}.info-page{padding:30px 25px}.info-page h1{font-size:31px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.service-list{padding-left:20px;line-height:1.8}.company-copy h3{font-size:18px;margin-top:28px}.pose-cards{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:40px}.pose-cards article{background:#f7f6f2;padding:30px}.pose-cards h3{font:400 25px/1.4 'Libre Baskerville',serif}.pose-cards p{font-size:15px;line-height:1.8}.pose-diagram{width:100%;height:auto}.diagram-note{font-size:12px;line-height:1.6;opacity:.75;margin-top:22px}.gallery-section{margin-top:45px}.gallery-section h3{font:400 28px/1.4 'Libre Baskerville',serif}.gallery-section>.outline-button{margin-top:24px}.technique-badge{position:absolute;bottom:12px;left:12px;background:#173c58;color:white;padding:8px 12px;font-size:12px}.gallery-crop{position:relative}.legal-shell{max-width:850px;margin:auto;padding:45px 25px 80px;font-family:'DM Sans',Arial,sans-serif;line-height:1.8;color:#353638}.legal-shell h1{font:400 36px/1.3 Georgia,serif;margin:45px 0 30px}.legal-shell h2{font-size:20px;margin-top:32px}.legal-shell a{text-decoration:underline;color:#285c7c}.legal-nav{display:flex;flex-wrap:wrap;gap:22px}.legal-shell{background:#f1eee9}body:has(.legal-shell){margin:0;background:#f1eee9}@media(max-width:900px){.pose-cards{grid-template-columns:1fr}.pose-cards article{padding:24px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Entreprise : implantation et prestations */
.company-introduction{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:end;margin:50px 0 40px}.company-introduction p{font-size:14px;line-height:1.9;color:#65737b}.company-introduction .company-lead{font-size:17px;color:#344e60}.world-panel{background:#eaf0f2;border:1px solid #d6e0e4;padding:30px 32px 22px;overflow:hidden}.world-panel-heading{display:flex;justify-content:space-between;align-items:center;gap:20px}.world-panel-heading h3{font:400 28px/1.3 Georgia,serif;color:#173c58;margin:12px 0}.world-panel-heading .section-kicker{font-size:9px}.world-panel-heading p{font-size:10px;color:#6d828e;letter-spacing:.05em}.world-svg{display:block;width:100%;height:auto;margin:15px auto 0}.map-pin{transition:opacity .2s}.map-pin.is-selected circle:first-child{r:14;opacity:.24}.map-pin.is-selected circle:last-of-type{r:5;fill:#ae7641}.map-bottom{display:flex;justify-content:space-between;gap:20px;padding:12px 0 20px;border-bottom:1px solid #c7d4dc;color:#285c7c;font-size:12px}.map-bottom small{font-size:9px;max-width:200px;line-height:1.6;color:#71838d}.country-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.country-list button{cursor:pointer;border:1px solid #bfd0da;color:#365b72;background:transparent;padding:8px 12px;font:inherit;font-size:11px}.country-list button:hover,.country-list button[aria-pressed=true]{background:#285c7c;color:white;border-color:#285c7c}.map-credit{display:block;text-align:right;font-size:8px;color:#7c8d96;margin-top:18px}.services-heading{display:flex;justify-content:space-between;align-items:end;gap:25px;margin:55px 0 28px}.services-heading .section-kicker{margin-bottom:15px}.services-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid #bfcbd2;border-left:1px solid #bfcbd2}.service-card{display:flex;gap:18px;padding:28px 22px;border-bottom:1px solid #bfcbd2;border-right:1px solid #bfcbd2;min-width:0}.service-number{font-size:10px;color:#7794a6;padding-top:5px}.service-card h3{margin:0 0 14px;font-size:17px;font-weight:500;line-height:1.45;color:#234f6c}.service-card p{font-size:12px;line-height:1.85;color:#758088;margin:0}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.form-row label{display:block;margin-bottom:10px}.form-note a{text-decoration:underline}.form-trap{display:none!important}@media(max-width:1150px){.services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.company-introduction{gap:30px}}@media(max-width:850px){.company-introduction{grid-template-columns:1fr;gap:16px;margin-top:30px}.world-panel{padding:24px 20px}.world-panel-heading{display:block}.world-panel-heading p{line-height:1.7}.services-heading{display:block}.services-heading .editorial-link{margin-top:18px}.map-bottom{flex-direction:column;gap:8px}.map-bottom small{max-width:none}}@media(max-width:580px){.services-grid{grid-template-columns:1fr}.service-card{padding:24px 18px}.world-panel{padding:20px 12px}.world-panel-heading h3{font-size:24px}.country-list{gap:6px}.country-list button{font-size:10px;padding:7px 9px}.world-svg{width:160%;max-width:none;margin-left:-30%}.form-row{grid-template-columns:1fr}.company-introduction .company-lead{font-size:15px}}

/* Carte et prestations intégrées à la présentation de l’entreprise. */
.company-editorial{display:grid;grid-template-columns:43% minmax(0,1fr);gap:clamp(35px,5vw,80px);align-items:stretch;margin-top:48px}.company-atlas{position:relative;isolation:isolate;min-height:530px;display:flex;align-items:flex-start;padding-top:30px}.atlas-decoration{position:absolute;inset:80px -55px 0 -70px;z-index:-1;overflow:hidden;opacity:.64;pointer-events:none}.atlas-decoration .world-svg{width:180%;max-width:none;height:auto;margin:80px 0 0 -37%;transform:rotate(-8deg)}.atlas-decoration use{fill:#d3dfe4;stroke:#f8f7f4}.atlas-decoration rect{opacity:.26}.atlas-decoration .map-pin{opacity:.48}.atlas-heading{position:relative;z-index:1}.atlas-heading h2{font-size:clamp(32px,3.4vw,53px);line-height:1.28}.atlas-signature{display:block;font-size:9px;letter-spacing:.22em;color:#7892a3;margin-top:32px}.company-description{position:relative;z-index:1}.company-description>p{font-size:14px;line-height:1.85;color:#738089;margin:0 0 20px}.company-description>.company-lead{font-size:17px;color:#3f5360;line-height:1.75}.company-services{display:grid;grid-template-columns:1fr 1fr;column-gap:25px;margin:28px 0 0;border-top:1px solid #cad4da}.company-service{padding:20px 0;border-bottom:1px solid #d9dfe2;min-width:0}.company-service dt{font-size:13px;font-weight:500;line-height:1.5;color:#285c7c;display:flex;gap:11px}.company-service dt span{font-size:9px;color:#91a6b3;padding-top:3px;font-weight:400}.company-service dd{margin:8px 0 0 24px;font-size:11px;line-height:1.8;color:#79868e}.company-description .editorial-link{font-size:11px;margin-top:26px}.company-integrated{overflow:hidden}@media(max-width:1100px){.company-editorial{grid-template-columns:40% minmax(0,1fr);gap:30px}.company-services{column-gap:18px}.company-service dt{font-size:12px}}@media(max-width:850px){.company-editorial{grid-template-columns:1fr;gap:5px;margin-top:25px}.company-atlas{min-height:230px;padding-top:15px}.atlas-decoration{inset:-20px -45px -60px 10%;opacity:.55}.atlas-decoration .world-svg{width:110%;margin:0;transform:rotate(-8deg)}.atlas-heading h2{font-size:36px}.atlas-signature{margin-top:23px}.company-description{padding-top:18px}.company-services{column-gap:25px}.company-service dt{font-size:13px}}@media(max-width:580px){.company-atlas{min-height:225px}.atlas-heading h2{font-size:30px}.atlas-decoration{inset:25px -100px -30px 0}.atlas-decoration .world-svg{width:140%;margin-left:-20%}.company-description>.company-lead{font-size:15px}.company-description>p{font-size:13px}.company-services{grid-template-columns:1fr;gap:0;margin-top:22px}.company-service{padding:16px 0}.company-service dd{margin-top:4px}.company-service dt{font-size:13px}}

/* Une seule composition, avec le fond cartographique partagé. */
.company-integrated{position:relative;isolation:isolate}.company-editorial{display:block;position:static;max-width:1020px;margin:48px auto 0}.company-atlas{position:static;display:block;min-height:0;padding-top:0;isolation:auto}.atlas-heading{max-width:none}.atlas-heading h2{font-size:clamp(34px,3.5vw,55px)}.atlas-heading h2 br{display:none}.atlas-heading h2 em{margin-left:.16em}.atlas-signature{display:none}.atlas-decoration{inset:100px -20px 0;opacity:.22;z-index:-1;overflow:hidden}.atlas-decoration .world-svg{width:100%;height:100%;margin:0;transform:none;object-fit:cover}.atlas-decoration use{fill:#bdcfd8;stroke:#f8f7f4}.atlas-decoration rect{opacity:.13}.atlas-decoration .map-pin{opacity:.6}.company-description{padding-top:24px;max-width:none}.company-description>p{max-width:750px}.company-description>.company-lead{font-size:17px}.company-services{grid-template-columns:repeat(3,minmax(0,1fr));column-gap:35px;margin-top:32px;border-top-color:#cbd6dc}.company-service{padding:22px 0;border-bottom-color:#d4dee4}.company-service dt{font-size:14px}.company-service dd{font-size:12px;color:#667782}.company-description .editorial-link{margin-top:28px}.gallery-item .gallery-caption{display:none}.gallery-grid{row-gap:20px}@media(max-width:1000px){.company-services{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:25px}}@media(max-width:580px){.company-editorial{margin-top:30px}.atlas-heading h2{font-size:31px}.atlas-heading h2 br{display:block}.atlas-heading h2 em{margin-left:0}.company-description{padding-top:20px}.company-description>.company-lead{font-size:15px}.company-services{grid-template-columns:1fr;gap:0;margin-top:25px}.company-service{padding:17px 0}.atlas-decoration{inset:100px -150px 0;opacity:.18}.atlas-decoration .world-svg{width:100%;height:100%;margin:0}.gallery-grid{row-gap:10px}}


#form-status{font-size:12px;line-height:1.8;margin:8px 0 0;color:#c8dbe8}#form-status:empty{display:none}#form-status[data-state="success"]{color:#d4f0db}#form-status[data-state="error"]{color:#ffe0d0}.send-button:disabled{opacity:.7;cursor:wait}
