
.project-index{scroll-margin-top:0!important}
.project-map-panel .marker.has-project-page{--symbol-ink:#FB6500;color:#FB6500;border-color:#FB6500}
.project-map-panel .marker.has-project-page.scale-s{background:#FB6500;color:#fff}
.project-map-panel .marker.no-project-page{--symbol-ink:#014FC2;color:#014FC2;border-color:#014FC2}
.project-map-panel .marker.no-project-page.scale-s{background:#014FC2;color:#fff}
.project-map-panel .marker.category-active{--symbol-ink:#3E461E!important;color:#3E461E!important;border-color:#3E461E!important;background:#fff}
.project-map-panel .marker.category-active.scale-s{background:#3E461E!important;color:#fff!important}
.map-size-filter{display:flex;width:100%;align-items:center;gap:9px;margin:8px 0;padding:0;border:0;background:transparent;text-align:left;font:inherit;color:#3E461E}
.map-size-filter .scale-icon{color:#3E461E!important;border-color:#3E461E!important;--symbol-ink:#3E461E}
.map-size-filter .scale-icon.s{background:#3E461E!important;color:#fff!important}
.map-size-filter[aria-pressed=true]{background:#3E461E18;text-decoration:underline;text-underline-offset:3px}
.indexed-linked.category-active,.indexed-unlinked.category-active,.indexed-linked.category-active a{color:#3E461E;background:#3E461E12}
#index-region{max-width:150px}
#champs-disciplinaires .discipline-cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:28px 18px}
#champs-disciplinaires .archive-frame{height:auto;aspect-ratio:3/4;max-height:254px}
#champs-disciplinaires .archive-photo{width:min(100%,190px)}
.discipline-contact{align-self:center;border:1px solid #FB6500;padding:20px;color:#FB6500;font:17px/1.5 Arial,sans-serif}
.discipline-contact a{display:block;color:#FB6500;text-decoration:underline;text-underline-offset:4px}
@media(max-width:700px){#champs-disciplinaires .discipline-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.discipline-contact{font-size:15px;padding:14px}}
@media(min-width:701px){.desktop-atlas-zoom{position:absolute;right:25px;bottom:65px;display:flex;gap:8px;z-index:15}.desktop-atlas-zoom button{width:36px;height:36px;border:1px solid #014FC2;background:#fff;color:#014FC2;font:24px Arial;cursor:pointer}.desktop-atlas-zoom button:hover{color:#FB6500;border-color:#FB6500}svg.art.desktop{transform-origin:center;will-change:auto;touch-action:none}}
@media(max-width:700px){.desktop-atlas-zoom{display:none}}
svg.art{shape-rendering:geometricPrecision;filter:none!important}

/* Identical desktop navigation coordinates across all pages. */
@media(min-width:701px){
 body .site-logo,body .discipline-header .site-logo,body.project-map-with-index>.site-logo{position:fixed!important;left:22px!important;top:25px!important;width:190px!important;margin:0!important;z-index:50!important}
 body .site-rail,body .map-site-rail,body.home-legend-test .legend{position:fixed!important;left:22px!important;top:115px!important;width:205px!important;transform:none!important;margin:0!important;padding:0!important;z-index:45!important;background:transparent!important}
 body .site-nav,body .legend-nav{margin:0!important;gap:9px!important}
 body .site-nav .nav-label,body .legend-nav .nav-label{font:13px/1.3 Arial,Helvetica,sans-serif!important;padding:10px 12px!important}
 body .discipline-header{background:transparent!important;border:0!important;box-shadow:none!important;background-image:none!important}
 body.home-legend-test>.site-logo{background:#fff!important}
 body.home-legend-test .site-logo img{mix-blend-mode:normal!important}
 body.home-legend-test .site-nav .nav-label.current-page{background:linear-gradient(#FB650018,#FB650018),#fff!important}
 .desktop-atlas-zoom button{border-radius:50%;border-color:#FB6500!important;color:#FB6500!important;background:#fff!important}
}
.mobile-atlas-zoom button{border-radius:50%!important;border-color:#FB6500!important;color:#FB6500!important;background:#fff!important}
.home-legend-test .test-hotspot>button{font-size:15px!important;font-weight:400!important}
.category-project-rail a.project-box{color:#FB6500!important;border-color:#FB650044!important;background:linear-gradient(#FB650014,#FB650014),#fff!important}
.category-project-rail a.project-box:hover,.category-project-rail a.project-box:focus-visible{color:#FB6500!important;border-color:#FB6500!important;background:linear-gradient(#FB650026,#FB650026),#fff!important}
.philosophy-images figcaption{text-align:center}

/* A fixed white masthead keeps every logo above scrolling content. */
@media(min-width:701px){
 body::after{content:"";position:fixed;top:0;left:0;right:0;height:108px;background:#fff;border-bottom:1px solid #014FC21a;z-index:48;pointer-events:none}
 body .site-logo{z-index:51!important;background:#fff!important}
 body .shared-awards,body .awards,body .discipline-header .shared-awards{position:fixed!important;right:22px!important;top:18px!important;z-index:51!important;background:#fff!important;margin:0!important}
 body .shared-awards img,body .awards img{height:48px!important;width:auto!important;max-width:65px!important;object-fit:contain}
 body .shared-awards .award span,body .awards .award span{font-size:12px!important}
 body.with-site-rail>main{padding-top:132px!important}
 .project-index{scroll-margin-top:108px!important}
 body:has(.contact-card) .contact-card{position:fixed!important;left:auto!important;right:25px!important;top:135px!important;bottom:auto!important;width:330px!important;max-height:calc(100vh - 160px)!important;background:#fff!important}
 body:has(.contact-card) #ecosystem-toggle{width:100%;text-align:left;background:#fff;border:1px solid #014FC244;color:#014FC2;cursor:pointer;font:13px/1.3 Arial;padding:10px 12px}
 body:has(.contact-card) .ecosystem-point.visible{pointer-events:auto!important;cursor:pointer}
 body:has(.contact-card) #ecosystem-popup{position:absolute!important;z-index:30!important;background:#fff!important;pointer-events:auto!important;display:block}
 body:has(.contact-card) #ecosystem-popup[hidden]{display:none!important}
}
.project-map-panel .marker.has-project-page{--symbol-ink:#014FC2;color:#014FC2;border-color:#014FC2}
.project-map-panel .marker.has-project-page.scale-s{background:#014FC2;color:#fff}
.project-map-panel .marker.no-project-page{--symbol-ink:#858b85!important;color:#858b85!important;border-color:#858b85!important}
.project-map-panel .marker.no-project-page.scale-s{background:#858b85!important;color:#fff!important}
.project-map-panel .marker.has-project-page:is(:hover,:focus-visible,[aria-expanded=true]){--symbol-ink:#FB6500;color:#FB6500;border-color:#FB6500}
.project-map-panel .marker.has-project-page.scale-s:is(:hover,:focus-visible,[aria-expanded=true]){background:#FB6500;color:#fff}
.project-map-panel .marker.category-active{--symbol-ink:#3E461E!important;color:#3E461E!important;border-color:#3E461E!important}
.project-map-panel .marker.category-active.scale-s{background:#3E461E!important;color:#fff!important}
.project-map-panel #mg-popup{color:#014FC2}
.project-map-panel #mg-popup.unlinked-popup,.project-map-panel #mg-popup.unlinked-popup *{color:#858b85!important}
.map-scale-label{display:flex;align-items:center;gap:9px;color:#3E461E}
.map-scale-label .scale-icon{color:#3E461E;border-color:#3E461E;--symbol-ink:#3E461E}
.map-scale-label .scale-icon.s{background:#3E461E;color:#fff}
@media(min-width:701px){body .discipline-header{z-index:50!important;pointer-events:none}body .discipline-header a{pointer-events:auto}body .site-logo,body .shared-awards,body .awards{pointer-events:auto}.project-map-panel #mg-popup{z-index:46!important;max-height:calc(100vh - 125px)!important}}

@media(min-width:701px){
 body::after{background-color:#fff;background-image:linear-gradient(#014FC215 .55px,transparent .55px),linear-gradient(90deg,#014FC215 .55px,transparent .55px);background-size:28px 28px}
 body .shared-awards,body .awards,body .discipline-header .shared-awards{background:transparent!important}
 .project-map-panel #mg-popup{z-index:75!important}
 body .portal-legend,body .test-tooltip,body #ecosystem-popup{z-index:80!important}
 .desktop-atlas-zoom{z-index:70!important}
}
.map-category-filters .site-scale,.map-category-filters .map-scale-label{color:#014FC2!important}
.map-category-filters .map-scale-label .scale-icon{color:#014FC2!important;border-color:#014FC2!important;--symbol-ink:#014FC2!important;background:#fff!important}
.map-category-filters .map-scale-label .scale-icon.s{color:#fff!important;background:#014FC2!important}

@media(min-width:701px){
 body.ecosystem-active .contact-card{opacity:1!important;visibility:visible!important;pointer-events:auto!important;display:block!important;z-index:35!important}
 body:has(.contact-card) .ecosystem-points{z-index:25!important;pointer-events:none!important}
 body:has(.contact-card) .ecosystem-point.visible{pointer-events:auto!important}
 body:has(.contact-card) #ecosystem-popup{position:fixed!important;z-index:85!important;visibility:visible!important;opacity:1!important}
 .project-map-panel #mg-map{top:108px!important;bottom:0!important;height:calc(100% - 108px)!important}
}

@media(min-width:701px){
 body:has(.contact-card) .ecosystem-lines{z-index:3!important}
 body:has(.contact-card) .ecosystem-points{z-index:4!important}
 body:has(.contact-card) #mg-markers{z-index:6!important}
 body:has(.contact-card) .office-marker{z-index:7!important;isolation:isolate;background:#fff!important}
 body:has(.contact-card) .office-marker img{position:relative;z-index:8;mix-blend-mode:normal}
 body:has(.contact-card) .office-address{z-index:9!important}
 body:has(.contact-card) .ecosystem-point{transition:none!important}
 body:has(.contact-card) .ecosystem-point:hover{transform:translate(-50%,-50%) scale(1)!important}
 #ecosystem-name-tooltip{position:fixed;z-index:100;max-width:260px;padding:10px 14px;background:#fff;border:1px solid #014FC244;font:14px/1.4 Arial,sans-serif;pointer-events:none}
 #ecosystem-name-tooltip[hidden]{display:none!important}
}
@media(max-width:700px){#ecosystem-name-tooltip{display:none!important}}

@media(min-width:701px){
 body:has(.contact-card) #mg-map{left:250px!important;right:0!important;top:108px!important;bottom:0!important;width:calc(100% - 250px)!important;height:calc(100vh - 108px)!important}
 body:has(.contact-card) #mg-scene,body:has(.contact-card) .ecosystem-point,body:has(.contact-card) .ecosystem-lines line{animation:none!important;transition:none!important}
}

@media(min-width:701px){
 body.home-legend-test>main{margin-top:108px!important;height:calc(100svh - 108px)!important;min-height:0!important}
 body.home-legend-test svg.art.desktop{height:calc(100svh - 108px)!important}
}

.department-marker{color:#858b85!important;border-color:#858b85!important;--symbol-ink:#858b85!important}
.department-marker.scale-s{background:#858b85!important;color:#fff!important}
.department-marker .department-tooltip{color:#858b85!important;border-color:#858b8544!important;background:#fff!important}
.department-marker.department-linked{color:#014FC2!important;border-color:#014FC2!important;--symbol-ink:#014FC2!important}
.department-marker.department-linked.scale-s{background:#014FC2!important;color:#fff!important}
.department-marker.current,.department-marker.department-linked:is(:hover,:focus-visible){color:#FB6500!important;border-color:#FB6500!important;--symbol-ink:#FB6500!important}
.department-marker.current.scale-s,.department-marker.department-linked.scale-s:is(:hover,:focus-visible){background:#FB6500!important;color:#fff!important}
.department-marker.department-linked .department-tooltip{color:#FB6500!important;border-color:#FB650044!important;background:linear-gradient(#FB650010,#FB650010),#fff!important}

@media(min-width:701px){
 body.with-discipline-header .discipline-tabs{position:absolute!important;left:240px!important;right:120px!important;top:18px!important;height:72px;max-width:none;width:auto;display:flex;align-items:center;gap:6px;margin:0!important;padding:4px!important;overflow-x:auto;}
 body.with-discipline-header .discipline-tabs .discipline-tab{flex:1 1 0;min-width:105px;white-space:normal;font-size:12px;line-height:1.25;padding:9px 6px;}
}

/* Atlas grid stays at the masthead's 28px spacing, including during zoom. */
body.home-legend-test{background-color:#fff;background-image:linear-gradient(#014FC215 .55px,transparent .55px),linear-gradient(90deg,#014FC215 .55px,transparent .55px);background-size:28px 28px;}
@media(min-width:701px){
 body:has(.contact-card)::before{content:"";position:fixed;inset:0 auto 0 0;width:250px;background:#e9f0fa;background-image:linear-gradient(#014FC215 .55px,transparent .55px),linear-gradient(90deg,#014FC215 .55px,transparent .55px);background-size:28px 28px;z-index:7;pointer-events:none;}
 body:has(.contact-card) .map-site-rail,body:has(.contact-card) .map-site-rail .site-nav{background:transparent!important;}
}
