/* Pictogrammes vectoriels et ouvertures photographiques — 0.3.0 */
.insitu-service-icon{display:block;width:72px;height:72px;object-fit:contain;flex:none}
.insitu-hero-icon{width:82px;height:82px;margin:0 0 24px}
.insitu-card-icon{width:60px;height:60px;margin:0 0 26px}
.insitu-editorial-photo{margin:0;min-width:0}
.insitu-editorial-photo img{display:block;width:100%;height:auto;object-fit:cover}
.insitu-editorial-photo figcaption{font-size:10px;line-height:1.5;letter-spacing:.04em;color:#7b737a;margin-top:10px}
.insitu-visual-intro>.wrap{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(0,1fr);column-gap:65px;align-items:start}
.insitu-visual-intro>.wrap>*{grid-column:1;min-width:0}
.insitu-visual-intro>.wrap>.insitu-opening-photo{grid-column:2;grid-row:1 / span 9;align-self:center}
.insitu-opening-photo img{aspect-ratio:4/5;max-height:570px;object-fit:cover}
.insitu-visual-intro h1{font-size:clamp(34px,3.5vw,52px);line-height:1.12;margin-bottom:22px}
.insitu-visual-intro .insitu-breadcrumb{margin-bottom:26px}
.insitu-visual-intro .eyebrow{margin-top:5px;margin-bottom:22px}
.insitu-visual-intro .insitu-document-deck{font-size:17px}
.insitu-route-photo{max-width:100%;margin:35px 0 45px}
.insitu-route-photo img{aspect-ratio:21/8;max-height:380px;object-position:center 55%}
/* Les liens du menu gardent la même hiérarchie sur toutes les pages. */
.insitu-primary-nav{font-size:12px}
.insitu-primary-nav .wp-block-navigation__container{gap:20px}
@media(max-width:1100px){.insitu-visual-intro>.wrap{column-gap:35px}.insitu-primary-nav .wp-block-navigation__container{gap:12px}.insitu-primary-nav{font-size:11px}}
@media(max-width:850px){.insitu-visual-intro>.wrap{display:block}.insitu-visual-intro h1{font-size:39px}.insitu-opening-photo{margin-top:32px;max-width:100%}.insitu-opening-photo img{aspect-ratio:16/9;max-height:none}.insitu-hero-icon{width:65px;height:65px;margin-bottom:20px}.insitu-route-photo img{aspect-ratio:16/9}.insitu-primary-nav .wp-block-navigation__container{gap:16px}}
@media(max-width:480px){.insitu-visual-intro h1{font-size:34px}.insitu-visual-intro .insitu-document-deck{font-size:16px}.insitu-card-icon{width:50px;height:50px}.insitu-opening-photo img{aspect-ratio:4/3}.insitu-editorial-photo figcaption{font-size:9px}}
@media print{.insitu-opening-photo,.insitu-route-photo{display:none}.insitu-visual-intro>.wrap{display:block}.insitu-hero-icon{width:45px;height:45px}}
/* Une ouverture plus compacte lorsqu'il n'y a pas de pictogramme de mission. */
.insitu-visual-intro:not(:has(.insitu-hero-icon)) .insitu-opening-photo img{aspect-ratio:4/3;max-height:380px}
.insitu-page-intro.insitu-visual-intro h1{color:var(--plum)}
.insitu-color-bruit{--diagnostic-color:#9caaaf}.insitu-accent-bruit{border-top-color:#9caaaf}
@media(max-width:1000px){
 .insitu-primary-nav.wp-block-navigation .wp-block-navigation__responsive-container:not(.is-menu-open){display:none}
 .insitu-primary-nav.wp-block-navigation .wp-block-navigation__responsive-container-open{display:flex;align-items:center;justify-content:center;background:transparent;border:0;padding:12px;cursor:pointer}
 .insitu-primary-nav .wp-block-navigation__responsive-container.is-menu-open{display:flex;position:fixed;inset:0;padding:45px 30px;background:#fff}
 .insitu-primary-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container{align-items:flex-start;flex-direction:column;gap:15px;font-size:18px}
}

/* 0.5.4 — titres sans sous-titre et ouvertures plus courtes */
.insitu-document-hero{padding-top:24px!important;padding-bottom:24px!important}.insitu-document-deck{display:none}.insitu-visual-intro>.wrap{column-gap:36px;align-items:center}.insitu-visual-intro h1{margin-bottom:12px}.insitu-visual-intro .insitu-breadcrumb{margin-bottom:12px}.insitu-visual-intro .eyebrow{margin-bottom:10px}.insitu-hero-icon{width:56px;height:56px;margin-bottom:14px}.insitu-opening-photo img{aspect-ratio:16/7;max-height:210px}.insitu-opening-photo figcaption{margin-top:5px}.insitu-doc-grid{padding-top:28px}.insitu-document-contact{padding:24px 0;margin-top:30px}.insitu-document-contact .wrap>p{margin:0}.contact-content .eyebrow{display:none}.contact-content h2{font-size:32px;line-height:1.2}.insitu-form{margin-top:12px}@media(max-width:850px){.insitu-opening-photo{margin-top:20px}.insitu-opening-photo img{aspect-ratio:16/7;max-height:180px}.insitu-document-hero h1{font-size:32px}.insitu-doc-grid{padding-top:20px}}
