@media(max-width:640px){
html.is-domaines,
  html[data-responsive-mode].is-domaines,
  html[data-responsive-mode="compact"].is-domaines,
  html[data-responsive-mode="mobile"].is-domaines,
  body.is-domaines,
  html.is-domaines body.is-domaines,
  html[data-responsive-mode].is-domaines body.is-domaines,
  html[data-responsive-mode="compact"].is-domaines body.is-domaines,
  html[data-responsive-mode="mobile"].is-domaines body.is-domaines{scroll-snap-type:y mandatory!important;
    scroll-padding-top:0!important;
    overscroll-behavior-y:auto!important;
    overflow-y:auto!important;
    scrollbar-width:none!important;}
html.is-domaines::-webkit-scrollbar,
  body.is-domaines::-webkit-scrollbar,
  html.is-domaines body.is-domaines::-webkit-scrollbar{width:0!important;
    height:0!important;
    display:none!important;}
body.is-domaines{--mobile-section-title-gap:12px;
    --mobile-section-title-gap-compact:8px;
    --mobile-section-title-top:calc(var(--header-height,78px) + var(--mobile-section-title-gap));
    background:#17324d!important;}
body.is-domaines .header,
  body.is-domaines.mobile-header-hidden .header,
  body.is-domaines.mobile-header-revealed .header,
  body.is-contact .header,
  body.is-contact.mobile-header-hidden .header,
  body.is-contact.mobile-header-revealed .header,
  body.is-member .header,
  body.is-member.mobile-header-hidden .header,
  body.is-member.mobile-header-revealed .header,
  body.is-about .header,
  body.is-about.mobile-header-hidden .header,
  body.is-about.mobile-header-revealed .header,
  body.is-tools > .header,
  body.is-tools.mobile-header-hidden > .header,
  body.is-tools.mobile-header-revealed > .header{position:fixed!important;
    top:0!important;
    left:0!important;
    right:0!important;
    z-index:90!important;
    transform:none!important;
    opacity:1!important;
    pointer-events:auto!important;
    background:transparent!important;
    border-bottom-color:transparent!important;
    box-shadow:none!important;
    backdrop-filter:none!important;}
body.is-domaines .header .brandLogo,
  body.is-domaines.mobile-header-hidden .header .brandLogo,
  body.is-domaines.mobile-header-revealed .header .brandLogo,
  body.is-contact .header .brandLogo,
  body.is-contact.mobile-header-hidden .header .brandLogo,
  body.is-contact.mobile-header-revealed .header .brandLogo,
  body.is-member .header .brandLogo,
  body.is-member.mobile-header-hidden .header .brandLogo,
  body.is-member.mobile-header-revealed .header .brandLogo,
  body.is-publications .header .brandLogo,
  body.is-about .header .brandLogo,
  body.is-about.mobile-header-hidden .header .brandLogo,
  body.is-about.mobile-header-revealed .header .brandLogo{content:url("../images/logo-fnam-white-text.png")!important;
    background:transparent!important;
    box-shadow:none!important;
    filter:drop-shadow(0 8px 22px rgba(3,18,31,.26))!important;}
body.is-domaines .menuBtn,
  body.is-domaines.mobile-header-hidden .menuBtn,
  body.is-domaines.mobile-header-revealed .menuBtn,
  body.is-contact .menuBtn,
  body.is-contact.mobile-header-hidden .menuBtn,
  body.is-contact.mobile-header-revealed .menuBtn,
  body.is-member .menuBtn,
  body.is-member.mobile-header-hidden .menuBtn,
  body.is-member.mobile-header-revealed .menuBtn,
  body.is-publications .menuBtn,
  body.is-home.home-hero-transparent-header .menuBtn,
  body.is-home.home-hero-transparent-header.mobile-header-hidden .menuBtn,
  body.is-home.home-hero-transparent-header.mobile-header-revealed .menuBtn,
  body.is-about .menuBtn,
  body.is-about.mobile-header-hidden .menuBtn,
  body.is-about.mobile-header-revealed .menuBtn{background:rgba(3,18,31,.34)!important;
    border-color:rgba(251,247,241,.34)!important;
    color:#FBF7F1!important;
    box-shadow:0 10px 24px rgba(3,18,31,.18)!important;
    backdrop-filter:blur(12px)!important;}
body.is-domaines #main > .domainesHero.domainesSnapBlock,
  body[data-responsive-mode].is-domaines #main > .domainesHero.domainesSnapBlock,
  body[data-responsive-mode="compact"].is-domaines #main > .domainesHero.domainesSnapBlock,
  body[data-responsive-mode="mobile"].is-domaines #main > .domainesHero.domainesSnapBlock{box-sizing:border-box!important;
    min-height:var(--mobile-vh,100svh)!important;
    height:var(--mobile-vh,100svh)!important;
    max-height:var(--mobile-vh,100svh)!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
    display:block!important;
    scroll-snap-align:start!important;
    scroll-snap-stop:always!important;
    scroll-margin-top:0!important;
    background:
      linear-gradient(180deg,rgba(11,42,74,.92),rgba(50,97,145,.94)),
      linear-gradient(135deg,#17324d,#326191)!important;}
body.is-domaines .domainesHeroInner,
  body[data-responsive-mode].is-domaines .domainesHeroInner,
  body[data-responsive-mode="compact"].is-domaines .domainesHeroInner,
  body[data-responsive-mode="mobile"].is-domaines .domainesHeroInner{box-sizing:border-box!important;
    width:100%!important;
    max-width:100%!important;
    min-height:var(--mobile-vh,100svh)!important;
    height:var(--mobile-vh,100svh)!important;
    margin:0!important;
    padding:var(--mobile-section-title-top) 18px 20px!important;
    display:grid!important;
    grid-template-rows:auto auto auto minmax(0,1fr)!important;
    align-content:start!important;
    gap:0!important;}
body.is-domaines .domainesHero .eyebrow{display:inline-flex!important;
    align-items:center!important;
    gap:8px!important;
    width:fit-content!important;
    margin:0 0 8px!important;
    color:#70b4be!important;
    font-family:var(--font-sans,"DM Sans",Arial,sans-serif)!important;
    font-size:.68rem!important;
    line-height:1.1!important;
    font-weight:900!important;
    letter-spacing:.13em!important;
    text-transform:uppercase!important;}
body.is-domaines .domainesHero .eyebrow:before{content:""!important;
    flex:0 0 auto!important;
    display:block!important;
    width:28px!important;
    height:2px!important;
    background:#be3c3f!important;}
body.is-domaines .domainesHero h1{position:relative!important;
    width:fit-content!important;
    max-width:100%!important;
    margin:0 0 14px!important;
    padding:0 0 16px!important;
    color:#FBF8F1!important;
    font-family:var(--font-sans,"DM Sans",Arial,sans-serif)!important;
    font-size:1.9rem!important;
    line-height:1.04!important;
    font-weight:700!important;
    letter-spacing:0!important;
    text-wrap:balance!important;}
body.is-domaines .domainesHero h1:after{content:""!important;
    position:absolute!important;
    left:0!important;
    bottom:0!important;
    display:block!important;
    width:100%!important;
    height:3px!important;
    border-radius:3px!important;
    background:#be3c3f!important;}
body.is-domaines .domainesHero p{max-width:none!important;
    margin:0!important;
    color:rgba(251,248,241,.9)!important;
    font-family:var(--font-sans,"DM Sans",Arial,sans-serif)!important;
    font-size:.86rem!important;
    line-height:1.34!important;
    font-weight:560!important;
    letter-spacing:0!important;}
body.is-domaines .domainesNav{display:grid!important;
    grid-template-columns:1fr!important;
    align-self:start!important;
    gap:8px!important;
    width:100%!important;
    margin:16px 0 0!important;}
html.is-domaines body.is-domaines #main > .domainesHero .domainesNav > a.domainesNavCard,
  body.is-domaines .domainesNav > a.domainesNavCard{box-sizing:border-box!important;
    width:100%!important;
    min-width:0!important;
    min-height:42px!important;
    height:42px!important;
    padding:0 12px!important;
    display:grid!important;
    grid-template-columns:auto auto minmax(0,1fr)!important;
    gap:9px!important;
    align-items:center!important;
    align-content:center!important;
    border-radius:var(--r-4,10px)!important;
    text-decoration:none!important;
    box-shadow:
      inset 0 0 0 1px rgba(251,248,241,.10),
      0 12px 24px rgba(7,28,51,.12)!important;}
body.is-domaines .domainesNav > a.domainesNavCard:before{content:""!important;
    width:5px!important;
    height:5px!important;
    border-radius:999px!important;
    background:rgba(251,248,241,.82)!important;
    grid-column:2!important;
    grid-row:1!important;}
body.is-domaines .domainesNavIndex{grid-column:1!important;
    grid-row:1!important;
    color:rgba(251,248,241,.84)!important;
    font-family:var(--font-sans,"DM Sans",Arial,sans-serif)!important;
    font-size:.72rem!important;
    line-height:1!important;
    font-weight:900!important;
    letter-spacing:.08em!important;}
body.is-domaines .domainesNav a strong{grid-column:3!important;
    grid-row:1!important;
    display:block!important;
    min-width:0!important;
    margin:0!important;
    color:#FBF8F1!important;
    font-family:var(--font-sans,"DM Sans",Arial,sans-serif)!important;
    font-size:0!important;
    line-height:1!important;
    font-weight:850!important;
    letter-spacing:0!important;
    text-shadow:none!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;}
body.is-domaines .domainesNav a strong:after{content:attr(data-mobile-label)!important;
    font-size:.91rem!important;
    line-height:1!important;}
body.is-domaines .domainesNav a p,
  body.is-domaines .domainesNav a em{display:none!important;}
body.is-domaines #main > .domainesDetail.domainesSnapBlock,
  body[data-responsive-mode].is-domaines #main > .domainesDetail.domainesSnapBlock,
  body[data-responsive-mode="compact"].is-domaines #main > .domainesDetail.domainesSnapBlock,
  body[data-responsive-mode="mobile"].is-domaines #main > .domainesDetail.domainesSnapBlock{min-height:var(--mobile-vh,100svh)!important;
    height:auto!important;
    scroll-snap-align:start!important;
    scroll-snap-stop:always!important;
    scroll-margin-top:0!important;}
}
@media(max-width:640px) and (max-height:700px){
body.is-domaines{--mobile-section-title-top:calc(var(--header-height,78px) + var(--mobile-section-title-gap-compact,8px));}
body.is-domaines .domainesHero .eyebrow{margin-bottom:6px!important;
    font-size:.63rem!important;}
body.is-domaines .domainesHero h1{margin-bottom:10px!important;
    padding-bottom:13px!important;
    font-size:1.7rem!important;}
body.is-domaines .domainesHero p{font-size:.8rem!important;
    line-height:1.26!important;}
body.is-domaines .domainesNav{gap:7px!important;
    margin-top:12px!important;}
html.is-domaines body.is-domaines #main > .domainesHero .domainesNav > a.domainesNavCard,
  body.is-domaines .domainesNav > a.domainesNavCard{min-height:38px!important;
    height:38px!important;}
body.is-domaines .domainesNav a strong:after{font-size:.82rem!important;}
}
@media(max-width:640px) and (min-height:760px){
body.is-domaines .domainesHero p{font-size:.92rem!important;
    line-height:1.43!important;}
body.is-domaines .domainesNav{gap:10px!important;
    margin-top:26px!important;}
html.is-domaines body.is-domaines #main > .domainesHero .domainesNav > a.domainesNavCard,
  body.is-domaines .domainesNav > a.domainesNavCard{min-height:50px!important;
    height:50px!important;
    padding-inline:14px!important;}
body.is-domaines .domainesNavIndex{font-size:.76rem!important;}
body.is-domaines .domainesNav a strong:after{font-size:.98rem!important;}
}
@media(max-width:640px) and (min-height:880px){
body.is-domaines .domainesHero p{font-size:.96rem!important;
    line-height:1.48!important;}
body.is-domaines .domainesNav{gap:12px!important;
    margin-top:34px!important;}
html.is-domaines body.is-domaines #main > .domainesHero .domainesNav > a.domainesNavCard,
  body.is-domaines .domainesNav > a.domainesNavCard{min-height:54px!important;
    height:54px!important;}
}
@media(max-width:640px) and (min-height:760px){
body.is-domaines .domainesHero p{font-size:.92rem!important;
    line-height:1.43!important;}
body.is-domaines .domainesNav{gap:10px!important;
    margin-top:26px!important;}
html.is-domaines body.is-domaines #main > .domainesHero .domainesNav > a.domainesNavCard,
  body.is-domaines .domainesNav > a.domainesNavCard{min-height:50px!important;
    height:50px!important;
    padding-inline:14px!important;}
body.is-domaines .domainesNavIndex{font-size:.76rem!important;}
body.is-domaines .domainesNav a strong:after{font-size:.98rem!important;}
}
@media(max-width:640px) and (min-height:880px){
body.is-domaines .domainesHero p{font-size:.96rem!important;
    line-height:1.48!important;}
body.is-domaines .domainesNav{gap:12px!important;
    margin-top:34px!important;}
html.is-domaines body.is-domaines #main > .domainesHero .domainesNav > a.domainesNavCard,
  body.is-domaines .domainesNav > a.domainesNavCard{min-height:54px!important;
    height:54px!important;}
}
html.is-domaines{scroll-snap-type:y mandatory;
  scroll-padding-top:0;}
body.is-domaines{--domaines-fixed-header:104px;
  --domaines-frame:100svh;
  background:#071c33;}
body.is-domaines .footer{scroll-snap-align:start;}
body.is-domaines #main > .domainesSnapBlock{min-height:var(--domaines-frame)!important;
  height:var(--domaines-frame)!important;
  padding-block:0!important;
  display:grid!important;
  align-items:stretch!important;
  overflow:hidden;
  scroll-snap-align:start;
  scroll-snap-stop:always;
  scroll-margin-top:0;}
.domainesHero{color:#FBF7F1;
  background:
    linear-gradient(135deg,rgba(7,28,51,.92),rgba(50,97,145,.84)),
    url("../images/hero-fallback.jpg") center/cover no-repeat;}
.domainesHeroInner{width:min(1440px,calc(100vw - clamp(36px,7vw,112px)))!important;
  height:100%;
  min-height:0;
  display:grid;
  align-content:center;
  gap:clamp(16px,2.4svh,28px);
  padding-top:calc(var(--domaines-fixed-header) + clamp(4px,1.4svh,18px));
  padding-bottom:clamp(22px,4svh,46px);}
.domainesHero .eyebrow{color:#70b4be;}
.domainesHero h1{max-width:1080px;
  margin:0;
  color:#FBF7F1;
  font-size:clamp(2.6rem,min(6vw,10svh),6.2rem);
  line-height:.94;}
.domainesHero p{max-width:920px;
  margin:0;
  color:rgba(251,247,241,.9)!important;
  font-size:clamp(1rem,1.55vw,1.28rem);}
.domainesNav{display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:clamp(10px,1.2vw,14px);
  margin-top:clamp(6px,1.4svh,16px);}
.domainesNav a{display:grid;
  align-content:space-between;
  min-height:clamp(150px,20svh,210px);
  padding:clamp(12px,1.5svh,16px);
  text-decoration:none;
  color:#FBF7F1;
  border:1px solid rgba(112,180,190,.58);
  border-radius:18px;
  background:rgba(251,247,241,.10);
  backdrop-filter:blur(10px);
  font-weight:900;
  line-height:1.18;}
.domainesNav a span,
.domainesNavIndex{color:#70b4be;
  font-size:.78rem;
  letter-spacing:.12em;}
.domainesNav a strong{display:block;
  margin-top:clamp(8px,1svh,12px);
  color:inherit;
  font-size:clamp(1rem,1.12vw,1.22rem);
  line-height:1.12;
  letter-spacing:0;
  font-weight:900;}
.domainesNav a p{margin:clamp(8px,1.2svh,12px) 0 0;
  color:rgba(251,248,241,.86);
  font-size:clamp(.72rem,.74vw,.82rem);
  line-height:1.28;
  font-weight:540;}
.domainesNav a em{display:block;
  margin-top:clamp(12px,1.6svh,18px);
  color:#FBF7F1;
  font-style:normal;
  font-size:.82rem;
  line-height:1;
  font-weight:900;}
.domainesNav a em:after{content:" →";}
.domainesNav a:hover,
.domainesNav a:focus-visible,
.domainesNav a.active{background:rgba(251,247,241,.9);
  color:#326191;
  outline:none;}
.domainesDetail{--domain-accent:#70b4be;
  position:relative;
  overflow:hidden;
  color:#FBF7F1;
  background:#071c33;}
.domaines-social{--domain-accent:#be3c3f}
.domaines-developpement-durable{--domain-accent:#5d9f91}
.domaines-technique{--domain-accent:#70b4be}
.domaines-economie{--domain-accent:#326191}
.domaines-outremer{--domain-accent:#B8872C}
.domainesVideo{position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
  transform:scale(1.035);
  filter:saturate(.98) contrast(1.04);}
.domainesShade{position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,rgba(7,28,51,.78) 0%,rgba(7,28,51,.56) 34%,rgba(7,28,51,.18) 70%,rgba(7,28,51,.30) 100%),
    radial-gradient(circle at 18% 28%,rgba(112,180,190,.24),transparent 34%);}
.domaines-social .domainesShade{background:linear-gradient(90deg,rgba(7,28,51,.78) 0%,rgba(7,28,51,.56) 34%,rgba(7,28,51,.18) 70%,rgba(7,28,51,.30) 100%),radial-gradient(circle at 18% 28%,rgba(190,60,63,.24),transparent 34%)}
.domaines-developpement-durable .domainesShade{background:linear-gradient(90deg,rgba(7,28,51,.78) 0%,rgba(7,28,51,.56) 34%,rgba(7,28,51,.18) 70%,rgba(7,28,51,.30) 100%),radial-gradient(circle at 18% 28%,rgba(93,159,145,.26),transparent 34%)}
.domaines-technique .domainesShade{background:linear-gradient(90deg,rgba(7,28,51,.78) 0%,rgba(7,28,51,.56) 34%,rgba(7,28,51,.18) 70%,rgba(7,28,51,.30) 100%),radial-gradient(circle at 18% 28%,rgba(112,180,190,.26),transparent 34%)}
.domaines-economie .domainesShade{background:linear-gradient(90deg,rgba(7,28,51,.78) 0%,rgba(7,28,51,.56) 34%,rgba(7,28,51,.18) 70%,rgba(7,28,51,.30) 100%),radial-gradient(circle at 18% 28%,rgba(50,97,145,.28),transparent 34%)}
.domaines-outremer .domainesShade{background:linear-gradient(90deg,rgba(7,28,51,.78) 0%,rgba(7,28,51,.56) 34%,rgba(7,28,51,.18) 70%,rgba(7,28,51,.30) 100%),radial-gradient(circle at 18% 28%,rgba(184,135,44,.26),transparent 34%)}
.domainesSectionLayout{position:relative;
  z-index:2;
  width:min(1480px,calc(100vw - clamp(36px,7vw,112px)))!important;
  height:100%;
  max-height:100%;
  min-height:0;
  margin-inline:auto;
  display:grid;
  grid-template-columns:minmax(190px,260px) minmax(0,760px) minmax(220px,1fr);
  gap:clamp(22px,2.4vw,40px);
  align-items:center;
  padding-top:calc(var(--domaines-fixed-header) + clamp(10px,2svh,24px));
  padding-bottom:clamp(18px,3svh,36px);}
.domainesSectionIndex{align-self:center;
  color:rgba(251,247,241,.58);
  font-size:clamp(4.8rem,min(9.2vw,15svh),9rem);
  font-weight:900;
  line-height:.78;
  text-align:right;
  letter-spacing:0;
  pointer-events:none;}
.domainesCopy{max-width:760px;
  max-height:calc(100svh - var(--domaines-fixed-header) - clamp(52px,7svh,78px));
  padding:clamp(20px,2.3vw,30px);
  border:1px solid rgba(251,247,241,.38);
  border-left:5px solid var(--domain-accent);
  border-radius:22px;
  background:rgba(251,247,241,.82);
  color:#326191;
  box-shadow:0 28px 80px rgba(0,0,0,.24);
  backdrop-filter:blur(16px);}
.domainesCopy .eyebrow{color:#326191;}
.domainesCopy .eyebrow:before{background:var(--domain-accent);}
.domainesCopy h2{max-width:700px;
  margin:8px 0 10px;
  color:#0B2A4A;
  font-size:clamp(1.86rem,min(3.15vw,5.6svh),3.3rem);
  line-height:1;
  letter-spacing:0;}
.domainesLead{max-width:700px;
  margin:0 0 14px;
  color:#326191;
  font-size:clamp(.94rem,min(1.08vw,2svh),1.08rem);
  font-weight:800;
  line-height:1.35;}
.domainesText{display:grid;
  gap:7px;}
.domainesText p{margin:0;
  color:#3a6da0;
  font-size:clamp(.84rem,min(.9vw,1.68svh),.96rem);
  line-height:1.42;}
.domainesBottom{display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:10px;
  margin-top:14px;
  align-items:start;}
.domainesFocus{padding:13px 15px;
  border-radius:16px;
  background:rgba(112,180,190,.16);}
.domainesFocus h3{margin:0 0 6px;
  color:#0B2A4A;
  font-size:.82rem;
  text-transform:uppercase;
  letter-spacing:.1em;}
.domainesFocus ul{margin:0;
  padding-left:18px;
  color:#326191;
  columns:2;
  column-gap:24px;
  font-size:clamp(.82rem,min(.86vw,1.55svh),.92rem);
  line-height:1.32;}
.domainesFocus li+li{margin-top:3px;}
.domainesNote{margin:0;
  padding:13px 15px;
  border-left:4px solid var(--domain-accent);
  border-radius:14px;
  background:rgba(251,247,241,.74);
  color:#326191;
  font-weight:700;
  font-size:clamp(.82rem,min(.86vw,1.55svh),.92rem);
  line-height:1.36;}
.domaines-developpement-durable .domainesCopy{padding:clamp(18px,2.05vw,26px);}
.domaines-developpement-durable .domainesCopy h2{font-size:clamp(1.72rem,min(2.85vw,5.05svh),3rem);
  margin-bottom:8px;}
.domaines-developpement-durable .domainesLead{margin-bottom:12px;}
.domaines-developpement-durable .domainesText{gap:6px;}
.domaines-developpement-durable .domainesText p{line-height:1.36;}
.domaines-developpement-durable .domainesBottom{gap:8px;
  margin-top:12px;}
.domaines-developpement-durable .domainesFocus,
.domaines-developpement-durable .domainesNote{padding:11px 14px;}
@media(max-width:1180px){
.domainesNav{grid-template-columns:repeat(3,minmax(0,1fr));}
.domainesSectionLayout{grid-template-columns:minmax(170px,210px) minmax(0,680px) minmax(80px,1fr);}
.domainesSectionIndex{font-size:clamp(4rem,8.2vw,7rem)}
}
@media(max-width:900px){
html.is-domaines{scroll-snap-type:none;}
body.is-domaines{--domaines-fixed-header:82px;}
body.is-domaines #main > .domainesSnapBlock{min-height:auto;
    height:auto!important;
    overflow:visible;
    scroll-snap-align:none;}
body.is-domaines #main > .domainesDetail{overflow:hidden;}
.domainesHero{min-height:calc(100svh - var(--header-height,104px));}
.domainesNav,
  .domainesBottom{grid-template-columns:1fr;}
.domainesSectionLayout{grid-template-columns:1fr;
    height:auto;
    padding-block:42px;}
.domainesSectionIndex{font-size:3rem;
    text-align:left;}
.domainesCopy{max-width:none;
    max-height:none;
    padding:22px;}
}
@media(max-width:620px){
.domainesHero h1{font-size:clamp(2.3rem,13vw,3.5rem);}
.domainesNav a{min-height:0;}
.domainesDetail{padding:34px 0;}
.domainesCopy h2{font-size:clamp(1.8rem,10vw,2.7rem);}
}
.header :where(a,button):focus-visible,
.footer :where(a,button):focus-visible,
.hero :where(a,button):focus-visible,
.domainesDetail :where(a,button,summary):focus-visible,
.homeDomainsImmersive :where(a,button):focus-visible{box-shadow:0 0 0 5px rgba(7,28,51,.36)!important;}
html[data-responsive-mode="compact"].is-home,
html[data-responsive-mode="compact"].is-domaines,
html[data-responsive-mode="compact"].is-about,
html[data-responsive-mode="compact"].is-publications,
html[data-responsive-mode="mobile"].is-home,
html[data-responsive-mode="mobile"].is-domaines,
html[data-responsive-mode="mobile"].is-about,
html[data-responsive-mode="mobile"].is-publications{scroll-snap-type:none!important;
  scroll-padding-top:var(--header-height,104px)!important;}
body[data-responsive-mode="compact"].is-home #main > .home-snap-block,
body[data-responsive-mode="mobile"].is-home #main > .home-snap-block,
body[data-responsive-mode="compact"].is-domaines #main > .domainesSnapBlock,
body[data-responsive-mode="mobile"].is-domaines #main > .domainesSnapBlock,
body[data-responsive-mode="compact"].is-publications #main > .publicationSection,
body[data-responsive-mode="mobile"].is-publications #main > .publicationSection{height:auto!important;
  min-height:0!important;
  overflow:visible!important;
  scroll-snap-align:none!important;
  scroll-snap-stop:normal!important;}
body[data-responsive-mode="compact"] .heroVideoReal,
body[data-responsive-mode="compact"] .homeDomainsVideo,
body[data-responsive-mode="compact"] .domainesVideo,
body[data-responsive-mode="mobile"] .heroVideoReal,
body[data-responsive-mode="mobile"] .homeDomainsVideo,
body[data-responsive-mode="mobile"] .domainesVideo{transform:none!important;}
body[data-responsive-mode="compact"].is-domaines #main > .domainesDetail,
body[data-responsive-mode="mobile"].is-domaines #main > .domainesDetail{overflow:hidden!important;}
body[data-responsive-mode="compact"].is-domaines .domainesHeroInner,
body[data-responsive-mode="mobile"].is-domaines .domainesHeroInner{height:auto!important;
  min-height:calc(100svh - var(--header-height,104px))!important;}
body[data-responsive-mode="compact"].is-domaines .domainesSectionLayout,
body[data-responsive-mode="mobile"].is-domaines .domainesSectionLayout{height:auto!important;
  max-height:none!important;
  min-height:0!important;
  padding-top:calc(var(--domaines-fixed-header,104px) + clamp(24px,4vw,44px))!important;
  padding-bottom:clamp(42px,6vw,72px)!important;}
body[data-responsive-mode="compact"].is-domaines .domainesCopy,
body[data-responsive-mode="mobile"].is-domaines .domainesCopy{max-height:none!important;
  overflow:visible!important;}
body.is-domaines .header .brandLogo{background:transparent;
  box-shadow:none;}
body.is-snap-page #main > :where(.home-snap-block,.domainesSnapBlock,.tools-snap-block){min-height:var(--snap-frame)!important;
  height:var(--snap-frame)!important;
  padding-block:0!important;
  scroll-snap-align:start!important;
  scroll-snap-stop:always!important;
  scroll-margin-top:0!important;
  overflow:hidden;}
@media(max-width:900px){
body.is-snap-page #main > :where(.home-snap-block,.domainesSnapBlock,.tools-snap-block){min-height:auto!important;
    height:auto!important;
    overflow:visible;
    scroll-snap-align:none!important;
    scroll-snap-stop:normal!important;}
}
html.is-domaines body.is-domaines #main > .domainesHero .domainesNav > a.domainesNavCard{--domain-nav-solid:#1E7482;
  --domain-nav-hover:#248C9D;
  --domain-nav-accent:#70b4be;
  color:#FBF7F1!important;
  border-color:rgba(251,248,241,.24)!important;
  background:
    linear-gradient(180deg,rgba(251,248,241,.10) 0%,rgba(11,42,74,.08) 100%),
    var(--domain-nav-solid)!important;
  background-color:var(--domain-nav-solid)!important;
  opacity:1!important;
  filter:none!important;
  mix-blend-mode:normal!important;
  backdrop-filter:none!important;
  box-shadow:
    inset 0 0 0 1px rgba(251,248,241,.10),
    inset 0 -42px 70px rgba(11,42,74,.16),
    0 18px 38px rgba(7,28,51,.20)!important;}
html.is-domaines body.is-domaines #main > .domainesHero .domainesNav > a.domainesNavCard.active{color:#FBF7F1!important;
  border-color:var(--domain-nav-accent)!important;
  background:
    linear-gradient(180deg,rgba(251,248,241,.12) 0%,rgba(11,42,74,.08) 100%),
    var(--domain-nav-solid)!important;
  background-color:var(--domain-nav-solid)!important;
  box-shadow:
    inset 0 0 0 1px rgba(251,248,241,.18),
    inset 0 -42px 70px rgba(11,42,74,.18),
    0 18px 38px rgba(7,28,51,.20)!important;}
html.is-domaines body.is-domaines #main > .domainesHero .domainesNav > a.domainesNavCard:hover,
html.is-domaines body.is-domaines #main > .domainesHero .domainesNav > a.domainesNavCard:focus-visible,
html.is-domaines body.is-domaines #main > .domainesHero .domainesNav > a.domainesNavCard.active:hover,
html.is-domaines body.is-domaines #main > .domainesHero .domainesNav > a.domainesNavCard.active:focus-visible{color:#FBF7F1!important;
  border-color:var(--domain-nav-accent)!important;
  background:
    linear-gradient(180deg,rgba(251,248,241,.14) 0%,rgba(11,42,74,.06) 100%),
    var(--domain-nav-hover)!important;
  background-color:var(--domain-nav-hover)!important;}
html.is-domaines body.is-domaines #main > .domainesHero .domainesNav > a.domainesNavCard span{color:rgba(251,248,241,.82)!important;}
html.is-domaines body.is-domaines #main > .domainesHero .domainesNav > a.domainesNavCard strong,
html.is-domaines body.is-domaines #main > .domainesHero .domainesNav > a.domainesNavCard p,
html.is-domaines body.is-domaines #main > .domainesHero .domainesNav > a.domainesNavCard em{color:#FBF7F1!important;
  text-shadow:0 1px 2px rgba(7,28,51,.22)!important;}
html.is-domaines body.is-domaines #main > .domainesHero .domainesNav > a.domainesNavCard--social{--domain-nav-solid:#8B403F;
  --domain-nav-hover:#A04A48;
  --domain-nav-accent:#C77165;}
html.is-domaines body.is-domaines #main > .domainesHero .domainesNav > a.domainesNavCard--developpement-durable{--domain-nav-solid:#2F7451;
  --domain-nav-hover:#37875E;
  --domain-nav-accent:#5D9B75;}
html.is-domaines body.is-domaines #main > .domainesHero .domainesNav > a.domainesNavCard--technique{--domain-nav-solid:#70B4BE;
  --domain-nav-hover:#4E96A2;
  --domain-nav-accent:#70b4be;}
html.is-domaines body.is-domaines #main > .domainesHero .domainesNav > a.domainesNavCard--economie{--domain-nav-solid:#326191;
  --domain-nav-hover:#3A70A6;
  --domain-nav-accent:#5092b6;}
html.is-domaines body.is-domaines #main > .domainesHero .domainesNav > a.domainesNavCard--outremer{--domain-nav-solid:#9A7024;
  --domain-nav-hover:#B38229;
  --domain-nav-accent:#C3922F;}
@media(max-width:640px){
html.is-domaines,
  html[data-responsive-mode].is-domaines,
  html[data-responsive-mode="compact"].is-domaines,
  html[data-responsive-mode="mobile"].is-domaines,
  body.is-domaines,
  html.is-domaines body.is-domaines,
  html[data-responsive-mode].is-domaines body.is-domaines,
  html[data-responsive-mode="compact"].is-domaines body.is-domaines,
  html[data-responsive-mode="mobile"].is-domaines body.is-domaines{scroll-snap-type:y mandatory!important;
    scroll-padding-top:0!important;
    overflow-y:auto!important;
    overscroll-behavior-y:auto!important;
    scrollbar-width:none!important;}
body.is-domaines{--mobile-section-title-gap:12px;
    --mobile-section-title-gap-compact:8px;
    --mobile-section-title-top:calc(var(--header-height,78px) + var(--mobile-section-title-gap));
    background:#17324d!important;}
body.is-domaines .header,
  body.is-domaines.mobile-header-hidden .header,
  body.is-domaines.mobile-header-revealed .header{position:fixed!important;
    z-index:90!important;
    transform:none!important;
    opacity:1!important;
    pointer-events:auto!important;
    background:transparent!important;
    border-bottom-color:transparent!important;
    box-shadow:none!important;
    backdrop-filter:none!important;}
body.is-domaines .header .brandLogo{content:url("../images/logo-fnam-white-text.png")!important;
    background:transparent!important;
    box-shadow:none!important;
    filter:drop-shadow(0 8px 22px rgba(3,18,31,.26))!important;}
body.is-domaines .menuBtn{background:rgba(3,18,31,.34)!important;
    border-color:rgba(251,247,241,.34)!important;
    color:#FBF7F1!important;
    box-shadow:0 10px 24px rgba(3,18,31,.18)!important;
    backdrop-filter:blur(12px)!important;}
body.is-domaines #main > .domainesHero.domainesSnapBlock,
  body[data-responsive-mode].is-domaines #main > .domainesHero.domainesSnapBlock,
  body[data-responsive-mode="compact"].is-domaines #main > .domainesHero.domainesSnapBlock,
  body[data-responsive-mode="mobile"].is-domaines #main > .domainesHero.domainesSnapBlock{min-height:var(--mobile-vh,100svh)!important;
    height:var(--mobile-vh,100svh)!important;
    max-height:var(--mobile-vh,100svh)!important;
    padding:0!important;
    display:block!important;
    overflow:hidden!important;
    scroll-snap-align:start!important;
    scroll-snap-stop:always!important;
    scroll-margin-top:0!important;
    background:
      linear-gradient(180deg,rgba(11,42,74,.92),rgba(50,97,145,.94)),
      linear-gradient(135deg,#17324d,#326191)!important;}
body.is-domaines .domainesHeroInner,
  body[data-responsive-mode].is-domaines .domainesHeroInner,
  body[data-responsive-mode="compact"].is-domaines .domainesHeroInner,
  body[data-responsive-mode="mobile"].is-domaines .domainesHeroInner{box-sizing:border-box!important;
    width:100%!important;
    max-width:100%!important;
    min-height:var(--mobile-vh,100svh)!important;
    height:var(--mobile-vh,100svh)!important;
    margin:0!important;
    padding:var(--mobile-section-title-top) 18px 20px!important;
    display:grid!important;
    grid-template-rows:auto auto auto minmax(0,1fr)!important;
    align-content:start!important;
    gap:0!important;}
body.is-domaines .domainesHero .eyebrow{display:block!important;
    margin:0 0 8px!important;
    color:#70b4be!important;
    font-family:var(--font-sans,"DM Sans",Arial,sans-serif)!important;
    font-size:.68rem!important;
    line-height:1.1!important;
    font-weight:900!important;
    letter-spacing:.13em!important;
    text-transform:uppercase!important;}
body.is-domaines .domainesHero h1{position:relative!important;
    width:fit-content!important;
    max-width:100%!important;
    margin:0 0 14px!important;
    padding:0 0 16px!important;
    color:#FBF8F1!important;
    font-family:var(--font-sans,"DM Sans",Arial,sans-serif)!important;
    font-size:1.9rem!important;
    line-height:1.04!important;
    font-weight:700!important;
    letter-spacing:0!important;
    text-wrap:balance!important;}
body.is-domaines .domainesHero h1:after{content:""!important;
    position:absolute!important;
    left:0!important;
    bottom:0!important;
    width:100%!important;
    height:3px!important;
    border-radius:3px!important;
    background:#be3c3f!important;}
body.is-domaines .domainesHero p{max-width:none!important;
    margin:0!important;
    color:rgba(251,248,241,.9)!important;
    font-family:var(--font-sans,"DM Sans",Arial,sans-serif)!important;
    font-size:.86rem!important;
    line-height:1.34!important;
    font-weight:560!important;
    letter-spacing:0!important;}
body.is-domaines .domainesNav{display:grid!important;
    grid-template-columns:1fr!important;
    align-self:start!important;
    gap:8px!important;
    width:100%!important;
    margin:16px 0 0!important;}
html.is-domaines body.is-domaines #main > .domainesHero .domainesNav > a.domainesNavCard,
  body.is-domaines .domainesNav > a.domainesNavCard{min-height:42px!important;
    height:42px!important;
    padding:0 12px!important;
    display:grid!important;
    grid-template-columns:auto auto minmax(0,1fr)!important;
    gap:9px!important;
    align-items:center!important;
    align-content:center!important;
    border-radius:var(--r-4,10px)!important;
    text-decoration:none!important;}
body.is-domaines .domainesNav > a.domainesNavCard:before{content:""!important;
    width:5px!important;
    height:5px!important;
    border-radius:999px!important;
    background:rgba(251,248,241,.82)!important;
    grid-column:2!important;
    grid-row:1!important;}
body.is-domaines .domainesNavIndex{grid-column:1!important;
    grid-row:1!important;
    color:rgba(251,248,241,.84)!important;
    font-size:.72rem!important;
    line-height:1!important;
    font-weight:900!important;
    letter-spacing:.08em!important;}
body.is-domaines .domainesNav a strong{grid-column:3!important;
    grid-row:1!important;
    min-width:0!important;
    margin:0!important;
    font-size:0!important;
    line-height:1!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;}
body.is-domaines .domainesNav a strong:after{content:attr(data-mobile-label)!important;
    color:#FBF8F1!important;
    font-size:.91rem!important;
    line-height:1!important;
    font-weight:850!important;}
body.is-domaines .domainesNav a p,
  body.is-domaines .domainesNav a em{display:none!important;}
}
@media(max-width:640px) and (max-height:700px){
body.is-domaines{--mobile-section-title-top:calc(var(--header-height,78px) + var(--mobile-section-title-gap-compact,8px));}
body.is-domaines .domainesHero .eyebrow{margin-bottom:6px!important;
    font-size:.63rem!important;}
body.is-domaines .domainesHero h1{margin-bottom:10px!important;
    padding-bottom:13px!important;
    font-size:1.7rem!important;}
body.is-domaines .domainesHero p{font-size:.8rem!important;
    line-height:1.26!important;}
body.is-domaines .domainesNav{gap:7px!important;
    margin-top:12px!important;}
html.is-domaines body.is-domaines #main > .domainesHero .domainesNav > a.domainesNavCard,
  body.is-domaines .domainesNav > a.domainesNavCard{min-height:38px!important;
    height:38px!important;}
body.is-domaines .domainesNav a strong:after{font-size:.82rem!important;}
}
@media(max-width:900px){
html.footer-scroll-free,
  html.footer-scroll-free.is-home,
  html.footer-scroll-free.is-about,
  html.footer-scroll-free.is-domaines,
  html.footer-scroll-free.is-publications,
  html.footer-scroll-free.is-tools,
  html.footer-scroll-free.is-snap-page,
  html.footer-scroll-free body.footer-scroll-free,
  html.footer-scroll-free.is-tools body.is-tools,
  html.footer-scroll-free.is-snap-page body.is-snap-page{scroll-snap-type:none!important;
    overscroll-behavior-y:auto!important;}
}
body[data-responsive-mode="immersive"].is-domaines .domainesSectionLayout{grid-template-columns:minmax(190px,260px) minmax(0,960px) minmax(140px,1fr)!important;}
body[data-responsive-mode="immersive"].is-domaines .domainesCopy{max-width:960px!important;
  max-height:calc(100svh - var(--domaines-fixed-header) - clamp(38px,5svh,58px))!important;}
body[data-responsive-mode="immersive"].is-domaines .domainesCopy h2,
body[data-responsive-mode="immersive"].is-domaines .domainesLead,
body[data-responsive-mode="immersive"].is-domaines .domainesText p{max-width:900px!important;}
