@import url('https://fonts.googleapis.com/css2?family=Public+Sans:wght@400;500;600;700&display=swap');

*, *::before, *::after{ box-sizing: border-box; }
html{ scroll-behavior: smooth; }
body{
  margin: 0;
  background: #161616;
  color: #FFFFFF;
  font-family: 'Public Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
}
a{ color: inherit; }
img{ max-width: 100%; display: block; }

:root{

  --fond:        #161616;
  --entete:      #1E1E1E;
  --bordure:     #3A3A3A;
  --bordure-douce: rgba(255,255,255,.08);
  --accent:      #8B8CF7;
  --accent-fonce:#6A6BEA;
  --accent-fonce-hover:#5B5CDB;
  --blanc:       #FFFFFF;
  --gris-clair:  #C7C7C7;
  --gris-moyen:  #9A9A9A;
  --gris-fonce:  #6E6E6E;

  --f-body: 'Public Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Arial, sans-serif;

  --topbar-h: 80px;
  --navbar-h: 52px;
  --nav-total: calc(var(--topbar-h) + var(--navbar-h));
  --ease: cubic-bezier(.4,0,.2,1);
}

@media (prefers-reduced-motion: reduce){
  *{ animation-duration: .001ms !important; animation-iteration-count: 1 !important; transition-duration: .001ms !important; scroll-behavior: auto !important; }
}

.agora-header{
  position: fixed;
  inset: 0 0 auto 0;
  z-index: 1000;
  background: var(--entete);
  opacity: 0;
  transform: translateY(-8px);
  animation: headerIn .4s var(--ease) forwards;
}
@keyframes headerIn{ to{ opacity: 1; transform: translateY(0); } }
.agora-header.is-scrolled{ box-shadow: 0 4px 14px rgba(0,0,0,.35); }

.agora-header,
.agora-mobile-panel{
  text-transform: uppercase;
}
.agora-header .agora-mega__desc,
.agora-mobile-panel .agora-mega__desc{
  text-transform: none;
}
.agora-brand__title{ letter-spacing: .01em; }
.agora-brand__subtitle{ letter-spacing: .02em; }
.agora-link{ letter-spacing: .01em; }
.agora-mega__nom{ letter-spacing: .01em; }

.agora-topbar{
  height: var(--topbar-h);
  border-bottom: 1px solid var(--bordure-douce);
}
.agora-topbar__inner{
  max-width: 1360px;
  height: 100%;
  margin: 0 auto;
  padding: 0 clamp(16px, 4vw, 40px);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}

.agora-brand{
  display: flex;
  align-items: center;
  gap: 16px;
  text-decoration: none;
  color: var(--blanc);
  min-width: 0;
}
.agora-brand__mark{
  height: 52px;
  width: 52px;
  object-fit: contain;
  flex-shrink: 0;
}
.agora-brand__text{ display: flex; flex-direction: column; line-height: 1.28; min-width: 0; }
.agora-brand__title{
  font-family: var(--f-body);
  font-weight: 700;
  font-size: 17px;
  color: var(--blanc);
}
.agora-brand__subtitle{
  font-family: var(--f-body);
  font-weight: 400;
  font-size: 13px;
  color: var(--gris-clair);
  margin-top: 2px;
}

.agora-topbar__actions{ display: flex; align-items: center; gap: 12px; flex-shrink: 0; }

.agora-cta{
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  height: 44px;
  padding: 0 8px;
  font-family: var(--f-body);
  font-size: 14px;
  font-weight: 600;
  color: var(--blanc);
  text-decoration: none;
  background: linear-gradient(135deg, var(--accent-fonce), #4C4DC4);
  border-radius: 999px;
  flex-shrink: 0;
  box-shadow: 0 2px 10px rgba(107,108,234,.25);
  transition: box-shadow .25s var(--ease), transform .2s var(--ease), background .25s var(--ease);
}
.agora-cta:hover, .agora-cta:focus-visible{
  background: linear-gradient(135deg, var(--accent-fonce-hover), #43449f);
  box-shadow: 0 4px 16px rgba(107,108,234,.4);
  transform: translateY(-1px);
}
.agora-cta:active{ transform: translateY(0); }
.agora-cta:focus-visible{ outline: 2px solid var(--accent); outline-offset: 2px; }

.agora-cta__icon{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: rgba(255,255,255,.16);
  flex-shrink: 0;
}
.agora-cta__icon svg{ width: 15px; height: 15px; }
.agora-cta__text{ white-space: nowrap; }
.agora-cta__arrow{
  width: 13px; height: 13px;
  margin-right: 6px;
  flex-shrink: 0;
  opacity: .8;
  transition: transform .25s var(--ease);
}
.agora-cta:hover .agora-cta__arrow{ transform: translateX(3px); }

.agora-navbar{
  height: var(--navbar-h);
  border-bottom: 1px solid var(--bordure-douce);
}
.agora-navbar__inner{
  max-width: 1360px;
  height: 100%;
  margin: 0 auto;
  padding: 0 clamp(16px, 4vw, 40px);
  display: flex;
  align-items: stretch;
}

.agora-links{
  display: flex;
  align-items: stretch;
  gap: 4px;
  list-style: none;
  margin: 0; padding: 0;
}
.agora-links > li{ position: relative; display: flex; }

.agora-link{
  display: inline-flex;
  align-items: center;
  gap: 7px;
  height: 100%;
  padding: 0 16px;
  font-family: var(--f-body);
  font-size: 14.5px;
  font-weight: 500;
  color: var(--blanc);
  text-decoration: none;
  background: transparent;
  border: none;
  cursor: pointer;
  position: relative;
  transition: color .2s var(--ease), background .2s var(--ease);
}
.agora-link:hover, .agora-link:focus-visible{ background: rgba(255,255,255,.06); }
.agora-link:focus-visible{ outline: 2px solid var(--accent); outline-offset: -2px; }

.agora-link::after{
  content:"";
  position: absolute;
  left: 0; right: 0; bottom: 0;
  height: 3px;
  background: var(--accent);
  transform: scaleX(0);
  transition: transform .2s var(--ease);
  transform-origin: center;
}
.agora-link:hover::after,
.agora-link[aria-expanded="true"]::after,
.agora-link[aria-current="page"]::after{ transform: scaleX(1); }
.agora-link[aria-current="page"]{ color: var(--blanc); }

.agora-link--home{ padding: 0 18px; }
.agora-link--home svg{ width: 19px; height: 19px; }

.agora-link__chevron{
  width: 11px; height: 11px;
  transition: transform .2s var(--ease);
  flex-shrink: 0;
}
.agora-link[aria-expanded="true"] .agora-link__chevron{ transform: rotate(180deg); }

.agora-mega{
  position: absolute;
  top: 100%;
  left: 0;
  width: min(680px, 92vw);
  background: var(--entete);
  border: 1px solid var(--bordure);
  border-top: none;
  box-shadow: 0 16px 32px rgba(0,0,0,.4);
  padding: 8px;
  opacity: 0;
  visibility: hidden;
  transform: translateY(-4px);
  pointer-events: none;
  transition: opacity .18s var(--ease), transform .18s var(--ease), visibility .18s;
}
.agora-links > li.is-open .agora-mega{
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0);
}
.agora-mega__grid{
  display: grid;
  grid-template-columns: repeat(2, 1fr);
}
.agora-mega__item{
  display: flex;
  flex-direction: column;
  gap: 3px;
  padding: 12px 14px;
  text-decoration: none;
  border-left: 3px solid transparent;
  transition: background .18s var(--ease), border-color .18s var(--ease);
}
.agora-mega__item:hover, .agora-mega__item:focus-visible{
  background: rgba(255,255,255,.05);
  border-left-color: var(--accent);
}
.agora-mega__sigle{
  font-family: var(--f-body);
  font-size: 14px;
  font-weight: 700;
  color: var(--accent);
}
.agora-mega__nom{
  font-family: var(--f-body);
  font-size: 12.5px;
  line-height: 1.4;
  color: var(--gris-clair);
}
.agora-mega__foot{
  margin-top: 4px;
  padding: 12px 14px 8px;
  border-top: 1px solid var(--bordure-douce);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
.agora-mega__foot p{
  margin: 0;
  font-family: var(--f-body);
  font-size: 12px;
  color: var(--gris-moyen);
}
.agora-mega__foot a{
  font-family: var(--f-body);
  font-size: 13px;
  font-weight: 600;
  color: var(--accent);
  text-decoration: none;
}
.agora-mega__foot a:hover{ text-decoration: underline; }

.agora-mega--list{ width: min(360px, 92vw); }
.agora-mega__col{ display: flex; flex-direction: column; }
.agora-mega__row{
  display: flex;
  flex-direction: column;
  gap: 3px;
  padding: 12px 14px;
  text-decoration: none;
  border-left: 3px solid transparent;
  transition: background .18s var(--ease), border-color .18s var(--ease);
}
.agora-mega__row:hover, .agora-mega__row:focus-visible{
  background: rgba(255,255,255,.05);
  border-left-color: var(--accent);
}
.agora-mega__row .agora-mega__nom{ color: var(--blanc); font-weight: 600; }
.agora-mega__desc{
  font-family: var(--f-body);
  font-size: 12.5px;
  line-height: 1.4;
  color: var(--gris-clair);
}

.agora-links__spacer{ flex: 1 1 auto; }

.agora-link--recrute{
  color: var(--accent);
  font-weight: 700;
}
.agora-link--recrute svg{ width: 16px; height: 16px; flex-shrink: 0; }
.agora-link--recrute::after{ background: var(--accent); }

@media (max-width: 1180px){
  .agora-link{ padding: 0 11px; font-size: 13.5px; }
  .agora-link--home{ padding: 0 14px; }
}

.agora-burger{
  display: none;
  width: 42px; height: 42px;
  border-radius: 6px;
  border: 1px solid var(--bordure);
  background: transparent;
  position: relative;
  cursor: pointer;
  flex-shrink: 0;
}
.agora-burger span{
  position: absolute; left: 10px; right: 10px; height: 2px;
  background: var(--blanc);
  transition: transform .25s var(--ease), opacity .25s var(--ease), top .25s var(--ease);
}
.agora-burger span:nth-child(1){ top: 14px; }
.agora-burger span:nth-child(2){ top: 20px; }
.agora-burger span:nth-child(3){ top: 26px; }
.agora-burger.is-active span:nth-child(1){ top: 20px; transform: rotate(45deg); }
.agora-burger.is-active span:nth-child(2){ opacity: 0; }
.agora-burger.is-active span:nth-child(3){ top: 20px; transform: rotate(-45deg); }

.agora-overlay{
  position: fixed; inset: 0;
  background: rgba(0,0,0,.55);
  opacity: 0; visibility: hidden;
  transition: opacity .25s var(--ease), visibility .25s;
  z-index: 998;
}
.agora-overlay.is-open{ opacity: 1; visibility: visible; }

@media (max-width: 960px){
  .agora-navbar{ display: none; }

  .agora-cta--topbar{ display: none; }

  .agora-mobile-panel{
    position: fixed;
    top: 0; right: 0;
    height: 100vh;
    width: min(360px, 86vw);
    background: var(--entete);
    border-left: 1px solid var(--bordure);
    display: flex;
    flex-direction: column;
    padding: calc(var(--topbar-h) + 12px) 18px 24px;
    transform: translateX(100%);
    transition: transform .35s var(--ease);
    z-index: 999;
    overflow-y: auto;
  }
  .agora-mobile-panel.is-open{ transform: translateX(0); }

  .agora-mobile-panel .agora-cta--mobile{
    width: 100%;
    justify-content: center;
    margin-bottom: 18px;
  }

  .agora-mobile-panel .agora-links{ flex-direction: column; gap: 10px; }
  .agora-mobile-panel .agora-links > li{ display: block; }

  .agora-mobile-panel .agora-link{
    width: 100%;
    height: 50px;
    justify-content: space-between;
    padding: 0 14px;
    border: 1px solid var(--bordure-douce);
    background: rgba(255,255,255,.02);
  }
  .agora-mobile-panel .agora-link::after{ display: none; }
  .agora-mobile-panel .agora-link--home{ display: none; }
  .agora-mobile-panel .agora-links__spacer{ display: none; }

  .agora-mobile-panel li.has-dropdown{
    border: 1px solid var(--bordure-douce);
    background: rgba(255,255,255,.015);
  }
  .agora-mobile-panel li.has-dropdown .agora-link{
    border: none;
    background: transparent;
  }
  .agora-mobile-panel li.has-dropdown.is-open{
    border-color: var(--bordure);
    background: rgba(255,255,255,.03);
  }
  .agora-mobile-panel li.has-dropdown.is-open > .agora-link{
    color: var(--accent);
    border-bottom: 1px solid var(--bordure-douce);
  }

  .agora-mobile-panel .agora-link--recrute{
    background: rgba(139,140,247,.1);
    border: 1px solid rgba(139,140,247,.25);
    margin-top: 4px;
  }

  .agora-mobile-panel .agora-mega{
    position: static;
    width: auto;
    box-shadow: none;
    border: none;
    background: rgba(0,0,0,.18);
    padding: 6px 6px 10px;
    display: none;
    opacity: 1; visibility: visible; pointer-events: auto; transform: none;
  }
  .agora-mobile-panel li.is-open .agora-mega{ display: block; }
  .agora-mobile-panel .agora-mega__grid{ grid-template-columns: 1fr; gap: 2px; }
  .agora-mobile-panel .agora-mega__item,
  .agora-mobile-panel .agora-mega__row{
    padding: 12px;
    border-left: none;
    border-bottom: 1px solid var(--bordure-douce);
  }
  .agora-mobile-panel .agora-mega__grid > a:last-child,
  .agora-mobile-panel .agora-mega__col > a:last-child{ border-bottom: none; }
  .agora-mobile-panel .agora-mega__item:hover, .agora-mobile-panel .agora-mega__item:focus-visible,
  .agora-mobile-panel .agora-mega__row:hover, .agora-mobile-panel .agora-mega__row:focus-visible{
    background: rgba(255,255,255,.05);
    border-left: 3px solid var(--accent);
    padding-left: 9px;
  }
  .agora-mobile-panel .agora-mega__foot{
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
    margin-top: 4px;
    padding: 12px 12px 4px;
  }
  .agora-mobile-panel .agora-mega--list{ width: auto; }

  .agora-burger{ display: block; }
}

@media (max-width: 480px){
  .agora-brand__subtitle{ display: none; }
  .agora-brand__title{ font-size: 15px; }
  .agora-brand__mark{ height: 42px; width: 42px; }
  .agora-topbar__inner, .agora-navbar__inner{ padding: 0 14px; }
}

.agora-header-spacer{ height: var(--nav-total); }
@media (max-width: 960px){
  .agora-header-spacer{ height: var(--topbar-h); }
}

.agora-section-title{
  font-family: var(--f-body);
  font-weight: 700;
  font-size: clamp(20px, 2.4vw, 26px);
  letter-spacing: .04em;
  text-transform: uppercase;
  margin: 0;
  color: var(--blanc);
}

.agora-btn-outline{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  height: 44px;
  padding: 0 20px;
  border-radius: 999px;
  border: 1.5px solid var(--accent);
  color: var(--accent);
  background: transparent;
  font-family: var(--f-body);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .03em;
  text-decoration: none;
  cursor: pointer;
  flex-shrink: 0;
  white-space: nowrap;
  transition: background .2s var(--ease), color .2s var(--ease);
}
.agora-btn-outline:hover{ background: var(--accent); color: #161616; }
.agora-btn-outline--light{ border-color: rgba(255,255,255,.7); color: var(--blanc); }
.agora-btn-outline--light:hover{ background: var(--blanc); color: var(--accent-fonce); }
.agora-btn-outline svg, .agora-btn-solid svg{ width: 17px; height: 17px; flex-shrink: 0; }

.agora-btn-solid{
  display: inline-flex;
  align-items: center;
  gap: 9px;
  height: 46px;
  padding: 0 22px;
  border-radius: 999px;
  border: none;
  background: var(--blanc);
  color: var(--accent-fonce);
  font-family: var(--f-body);
  font-size: 13.5px;
  font-weight: 700;
  cursor: pointer;
  transition: transform .2s var(--ease), box-shadow .2s var(--ease);
}
.agora-btn-solid:hover{ transform: translateY(-1px); box-shadow: 0 8px 20px rgba(0,0,0,.25); }

.agora-hero-intro{
  max-width: 1020px;
  margin: 0 auto;
  padding: 96px 24px 76px;
  text-align: left;
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 48px;
  position: relative;
  background:
    radial-gradient(ellipse 65% 55% at 50% 0%, rgba(139,140,247,.22), transparent 72%),
    radial-gradient(ellipse 40% 30% at 50% 100%, rgba(139,140,247,.06), transparent 75%);
}
.agora-hero-intro::before{
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  width: 120px;
  height: 2px;
  transform: translateX(-50%);
  background: linear-gradient(90deg, transparent, var(--accent), transparent);
  opacity: .7;
}
.agora-hero-intro__logo-wrap{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  padding: 22px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(139,140,247,.25), rgba(139,140,247,0) 72%);
}
.agora-hero-intro__logo{
  height: 168px;
  width: 168px;
  margin-bottom: 0;
  filter: drop-shadow(0 0 22px rgba(139,140,247,.45));
}
.agora-hero-intro__content{
  flex: 1 1 auto;
  min-width: 0;
}
.agora-hero-intro__eyebrow{
  display: inline-block;
  font-family: var(--f-body);
  color: var(--accent);
  letter-spacing: .14em;
  text-transform: uppercase;
  font-size: 12px;
  font-weight: 700;
  margin: 0 0 16px;
  padding: 6px 14px;
  border: 1px solid rgba(139,140,247,.35);
  border-radius: 999px;
  background: rgba(139,140,247,.08);
}
.agora-hero-intro__title{
  font-family: var(--f-body);
  font-weight: 700;
  font-size: clamp(24px, 4vw, 34px);
  line-height: 1.35;
  margin: 0 0 20px;
  color: var(--blanc);
}
.agora-hero-intro__title span{ color: var(--accent); }
.agora-hero-intro__lead{
  color: var(--gris-clair);
  font-size: 15.5px;
  line-height: 1.7;
  margin: 0;
  max-width: 620px;
}

@media (max-width: 700px){
  .agora-hero-intro{
    flex-direction: column;
    text-align: center;
    align-items: center;
    gap: 24px;
  }
  .agora-hero-intro__content{ display: flex; flex-direction: column; align-items: center; }
}

.agora-contact{
  padding: 72px 24px 96px;
  background: #271c6e;
}
.agora-contact__inner{ max-width: 1180px; margin: 0 auto; }
.agora-contact__inner > .agora-section-title{ margin-bottom: 28px; }

.agora-contact__grid{
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}
.agora-contact__card{
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
  padding: 28px 26px 26px;
  background: rgba(10,8,26,.55);
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 4px;
  border-bottom: 3px solid transparent;
  text-decoration: none;
  color: var(--blanc);
  transition: border-color .2s var(--ease), transform .2s var(--ease), background .2s var(--ease);
}
.agora-contact__card:hover{
  border-color: rgba(255,255,255,.2);
  border-bottom-color: var(--accent);
  transform: translateY(-3px);
  background: rgba(10,8,26,.72);
}
.agora-contact__icon{
  width: 46px; height: 46px;
  border-radius: 4px;
  background: rgba(139,140,247,.18);
  color: var(--accent);
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.agora-contact__icon svg{ width: 24px; height: 24px; }
.agora-contact__card h3{
  margin: 4px 0 0;
  font-family: var(--f-body);
  font-size: 17px;
  font-weight: 700;
}
.agora-contact__card p{
  margin: 0;
  color: var(--gris-clair);
  font-size: 13.5px;
  line-height: 1.65;
  flex: 1 1 auto;
}
.agora-contact__more{
  font-family: var(--f-body);
  font-size: 13px;
  font-weight: 700;
  color: var(--accent);
}
.agora-actus{ padding: 0 24px 96px; }
.agora-actus__inner{ max-width: 1180px; margin: 0 auto; }
.agora-actus__head{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 28px;
  flex-wrap: wrap;
}
.agora-actus__grid{
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}
.agora-actu-card{
  display: flex;
  flex-direction: column;
  text-decoration: none;
  color: var(--blanc);
  background: var(--entete);
  border: 1px solid var(--bordure);
  border-radius: 0;
  overflow: hidden;
  transition: border-color .2s var(--ease), transform .2s var(--ease);
}
.agora-actu-card:hover .agora-actu-card__cover{ transform: scale(1.04); }
.agora-actu-card__cover{
  height: 160px;
  display: block;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  transition: transform .35s var(--ease);
}
.agora-actu-card__cover--3{ background-image: linear-gradient(135deg, #6A6BEA, #8B8CF7); }
.agora-actu-card__cover--custom{ background-color: var(--bordure); }
.agora-actu-card__tag{
  margin: 16px 20px 0;
  align-self: flex-start;
  font-family: var(--f-body);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
  color: var(--accent);
  background: rgba(139,140,247,.12);
  padding: 4px 10px;
  border-radius: 999px;
}
.agora-actu-card h3{
  margin: 12px 20px 0;
  font-family: var(--f-body);
  font-size: 15.5px;
  font-weight: 700;
  line-height: 1.45;
}
.agora-actu-card__date{
  margin: 12px 20px 18px;
  font-size: 12px;
  color: var(--gris-moyen);
}

.agora-cta-band{
  position: relative;
  isolation: isolate;
  background-image:
    linear-gradient(135deg, rgba(106,107,234,.92), rgba(76,77,196,.94)),
    url('../img/banners/banner-egtulle-02.png');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  padding: 72px 24px;
  overflow: hidden;
}
.agora-cta-band__inner{ position: relative; z-index: 1; max-width: 680px; margin: 0 auto; text-align: center; }
.agora-cta-band__eyebrow{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--blanc);
  background: rgba(255,255,255,.14);
  border: 1px solid rgba(255,255,255,.3);
  padding: 6px 14px;
  border-radius: 999px;
  margin-bottom: 18px;
}
.agora-cta-band__inner h2{
  margin: 0 0 12px;
  font-family: var(--f-body);
  font-weight: 700;
  font-size: clamp(24px, 3.4vw, 30px);
  color: var(--blanc);
}
.agora-cta-band__inner p{
  margin: 0 0 30px;
  color: rgba(255,255,255,.88);
  font-size: 15px;
}
.agora-cta-band__actions{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 14px;
}
.agora-cta-band__meta{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px 24px;
  margin-top: 32px;
  padding-top: 28px;
  border-top: 1px solid rgba(255,255,255,.18);
}
.agora-cta-band__meta-item{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  font-weight: 600;
  color: rgba(255,255,255,.92);
}
.agora-cta-band__meta-item svg{ width: 16px; height: 16px; flex-shrink: 0; }

@media (max-width: 860px){
  .agora-contact__grid, .agora-actus__grid{ grid-template-columns: 1fr; }
}

.agora-disclaimer{
  position: fixed;
  inset: 0;
  z-index: 2000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px;
}
.agora-disclaimer[hidden]{ display: none; }
.agora-disclaimer__backdrop{
  position: absolute;
  inset: 0;
  background: rgba(10,10,12,.72);
  backdrop-filter: blur(3px);
}
.agora-disclaimer__box{
  position: relative;
  width: min(560px, 100%);
  max-height: 88vh;
  overflow-y: auto;
  background: var(--entete);
  border: 1px solid var(--bordure);
  border-top: 3px solid var(--accent);
  border-radius: 0;
  padding: 36px 32px 28px;
  box-shadow: 0 24px 60px rgba(0,0,0,.5);
  opacity: 0;
  transform: translateY(14px) scale(.98);
  animation: disclaimerIn .35s var(--ease) forwards;
}
@keyframes disclaimerIn{ to{ opacity: 1; transform: translateY(0) scale(1); } }
.agora-disclaimer__close{
  position: absolute;
  top: 16px; right: 16px;
  width: 34px; height: 34px;
  border-radius: 50%;
  border: 1px solid var(--bordure);
  background: transparent;
  color: var(--gris-clair);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: background .2s var(--ease), color .2s var(--ease);
}
.agora-disclaimer__close:hover{ background: rgba(255,255,255,.08); color: var(--blanc); }
.agora-disclaimer__close svg{ width: 15px; height: 15px; }

.agora-disclaimer__badge{
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-family: var(--f-body);
  font-size: 11.5px;
  font-weight: 700;
  letter-spacing: .05em;
  text-transform: uppercase;
  color: #F5B95B;
  background: rgba(245,185,91,.12);
  border: 1px solid rgba(245,185,91,.3);
  padding: 6px 12px;
  border-radius: 999px;
  margin-bottom: 18px;
}
.agora-disclaimer__title{
  font-family: var(--f-body);
  font-weight: 700;
  font-size: 24px;
  margin: 0 0 14px;
  padding-right: 24px;
}
.agora-disclaimer__text{
  font-family: var(--f-body);
  font-size: 14.5px;
  line-height: 1.7;
  color: var(--gris-clair);
  margin: 0 0 14px;
}
.agora-disclaimer__text strong{ color: var(--blanc); font-weight: 600; }

.agora-disclaimer__check{
  display: flex;
  align-items: center;
  gap: 10px;
  font-family: var(--f-body);
  font-size: 13.5px;
  color: var(--gris-clair);
  margin: 18px 0 22px;
  cursor: pointer;
  user-select: none;
}
.agora-disclaimer__check input{
  width: 18px; height: 18px;
  accent-color: var(--accent-fonce);
  cursor: pointer;
}

.agora-disclaimer__actions{ display: flex; justify-content: flex-end; }
.agora-disclaimer__confirm{
  width: 100%;
  justify-content: center;
  height: 52px;
  padding: 0 22px;
  font-size: 14.5px;
  letter-spacing: .01em;
  border-radius: 8px;
  background: linear-gradient(135deg, var(--accent-fonce), #4C4DC4);
  box-shadow: 0 8px 22px rgba(107,108,234,.35);
}
.agora-disclaimer__confirm:hover, .agora-disclaimer__confirm:focus-visible{
  background: linear-gradient(135deg, var(--accent-fonce-hover), #43449f);
  box-shadow: 0 12px 30px rgba(107,108,234,.5);
  transform: translateY(-2px);
}
.agora-disclaimer__confirm .agora-cta__icon{ display: none; }
.agora-disclaimer__confirm .agora-cta__text{ flex: 1 1 auto; }
.agora-disclaimer__confirm .agora-cta__arrow{ margin-right: 0; width: 15px; height: 15px; opacity: 1; }

.agora-disclaimer-tab{
  position: fixed;
  left: 18px;
  bottom: 18px;
  z-index: 500;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  height: 34px;
  padding: 0 14px;
  font-family: var(--f-body);
  font-size: 12px;
  font-weight: 600;
  color: var(--gris-clair);
  background: rgba(30,30,30,.9);
  border: 1px solid var(--bordure);
  border-radius: 999px;
  cursor: pointer;
  transition: color .2s var(--ease), border-color .2s var(--ease);
}
.agora-disclaimer-tab:hover{ color: var(--blanc); border-color: var(--gris-fonce); }
.agora-disclaimer-tab svg{ width: 15px; height: 15px; color: #F5B95B; flex-shrink: 0; }

@media (max-width: 480px){
  .agora-disclaimer__box{ padding: 28px 20px 22px; }
  .agora-disclaimer__title{ font-size: 21px; }
  .agora-disclaimer-tab span{ display: none; }
  .agora-disclaimer-tab{ padding: 0 10px; }
}

.agora-chat{
  position: fixed;
  right: 20px;
  bottom: 20px;
  z-index: 900;
  font-family: var(--f-body);
}

.agora-chat__bubble{
  display: inline-flex;
  align-items: center;
  gap: 12px;
  height: 62px;
  padding: 0 20px 0 16px;
  border-radius: 999px;
  border: none;
  cursor: pointer;
  background: linear-gradient(135deg, var(--accent-fonce), #4C4DC4);
  color: var(--blanc);
  box-shadow: 0 10px 28px rgba(0,0,0,.4);
  transition: transform .2s var(--ease), box-shadow .2s var(--ease);
}
.agora-chat__bubble:hover{ transform: translateY(-2px); box-shadow: 0 14px 34px rgba(0,0,0,.48); }
.agora-chat.is-open .agora-chat__bubble{ display: none; }

.agora-chat__bubble-icon{
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px; height: 34px;
  border-radius: 50%;
  background: rgba(255,255,255,.16);
  flex-shrink: 0;
}
.agora-chat__bubble-icon svg{ width: 18px; height: 18px; }
.agora-chat__bubble-dot{
  position: absolute;
  right: -2px; bottom: -2px;
  width: 12px; height: 12px;
  border-radius: 50%;
  background: #43D17A;
  border: 2px solid #2f2fb0;
}

.agora-chat__badge{
  position: absolute;
  top: -6px; right: -6px;
  min-width: 19px;
  height: 19px;
  padding: 0 4px;
  border-radius: 999px;
  background: #E5484D;
  color: var(--blanc);
  font-size: 11px;
  font-weight: 700;
  line-height: 19px;
  text-align: center;
  border: 2px solid var(--entete);
}
.agora-chat__badge[hidden]{ display: none; }
.agora-chat__bubble-text{ display: flex; flex-direction: column; align-items: flex-start; gap: 1px; }
.agora-chat__bubble-text strong{ font-size: 13.5px; font-weight: 700; }
.agora-chat__bubble-text span{ font-size: 12px; opacity: .88; }

.agora-chat__panel{
  width: min(360px, 92vw);
  height: min(520px, 74vh);
  display: flex;
  flex-direction: column;
  background: var(--entete);
  border: 1px solid var(--bordure);
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 20px 50px rgba(0,0,0,.5);
  opacity: 0;
  transform: translateY(14px) scale(.98);
  animation: chatIn .25s var(--ease) forwards;
}

.agora-chat__panel[hidden]{ display: none; }
@keyframes chatIn{ to{ opacity: 1; transform: translateY(0) scale(1); } }

.agora-chat__header{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 16px 16px 14px;
  background: linear-gradient(135deg, var(--accent-fonce), #4C4DC4);
  flex-shrink: 0;
}
.agora-chat__header-title{ margin: 0; font-size: 14.5px; font-weight: 700; color: var(--blanc); }
.agora-chat__header-sub{ margin: 2px 0 0; font-size: 12px; color: rgba(255,255,255,.85); }
.agora-chat__header-actions{ display: flex; align-items: center; gap: 6px; flex-shrink: 0; }
.agora-chat__icon-btn{
  width: 30px; height: 30px;
  border-radius: 50%;
  border: none;
  background: rgba(255,255,255,.16);
  color: var(--blanc);
  display: inline-flex; align-items: center; justify-content: center;
  cursor: pointer;
  flex-shrink: 0;
  transition: background .2s var(--ease);
}
.agora-chat__icon-btn svg{ width: 14px; height: 14px; }
.agora-chat__icon-btn:hover{ background: rgba(255,255,255,.28); }

.agora-chat__agent{
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 16px;
  border-bottom: 1px solid var(--bordure-douce);
  background: rgba(255,255,255,.02);
  flex-shrink: 0;
}
.agora-chat__agent[hidden]{ display: none; }
.agora-chat__avatar{
  width: 38px; height: 38px;
  border-radius: 50%;
  background: var(--accent-fonce);
  color: var(--blanc);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 13px;
  font-weight: 700;
  flex-shrink: 0;
}
.agora-chat__agent-info{ flex: 1 1 auto; min-width: 0; }
.agora-chat__agent-relation{ margin: 0; font-size: 11px; color: var(--gris-moyen); }
.agora-chat__agent-name{
  margin: 1px 0 0;
  font-size: 13.5px;
  font-weight: 700;
  color: var(--blanc);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.agora-chat__status{
  width: 11px; height: 11px;
  border-radius: 50%;
  flex-shrink: 0;
  border: 2px solid var(--entete);
}
.agora-chat__status--vert{ background: #43D17A; }
.agora-chat__status--jaune{ background: #F5B95B; }
.agora-chat__status--gris{ background: #6E6E6E; }

.agora-chat__body{
  flex: 1 1 auto;
  overflow-y: auto;
  padding: 16px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.agora-chat__system{
  align-self: center;
  font-size: 12px;
  color: var(--gris-moyen);
  background: rgba(255,255,255,.05);
  padding: 6px 12px;
  border-radius: 999px;
}
.agora-chat__msg{ display: flex; gap: 8px; max-width: 88%; }
.agora-chat__msg--in{ align-self: flex-start; }
.agora-chat__msg--out{ align-self: flex-end; flex-direction: row-reverse; }

.agora-chat__msg-avatar{
  width: 26px; height: 26px;
  border-radius: 50%;
  background: var(--accent-fonce);
  color: var(--blanc);
  font-size: 10.5px;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  margin-top: 2px;
}
.agora-chat__msg-content{ display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.agora-chat__msg-meta{
  font-size: 11px;
  color: var(--gris-moyen);
  padding: 0 4px;
}
.agora-chat__msg-bubble{
  font-size: 13.5px;
  line-height: 1.5;
  padding: 9px 13px;
  border-radius: 14px;
  word-wrap: break-word;
}
.agora-chat__msg--in .agora-chat__msg-bubble{
  background: rgba(255,255,255,.07);
  color: var(--blanc);
  border-bottom-left-radius: 4px;
}
.agora-chat__msg--out .agora-chat__msg-bubble{
  background: var(--accent-fonce);
  color: var(--blanc);
  border-bottom-right-radius: 4px;
}
.agora-chat__msg--out .agora-chat__msg-meta{ text-align: right; }

.agora-chat__composer{
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 12px;
  border-top: 1px solid var(--bordure-douce);
  flex-shrink: 0;
}
.agora-chat__composer input{
  flex: 1 1 auto;
  height: 40px;
  padding: 0 14px;
  border-radius: 999px;
  border: 1px solid var(--bordure);
  background: rgba(255,255,255,.04);
  color: var(--blanc);
  font-family: var(--f-body);
  font-size: 13.5px;
}
.agora-chat__composer input::placeholder{ color: var(--gris-fonce); }
.agora-chat__composer input:focus{ outline: none; border-color: var(--accent); }
.agora-chat__composer button{
  width: 40px; height: 40px;
  border-radius: 50%;
  border: none;
  background: var(--accent-fonce);
  color: var(--blanc);
  display: inline-flex; align-items: center; justify-content: center;
  cursor: pointer;
  flex-shrink: 0;
  transition: background .2s var(--ease);
}
.agora-chat__composer button:hover{ background: var(--accent-fonce-hover); }
.agora-chat__composer button svg{ width: 16px; height: 16px; }

@media (max-width: 480px){
  .agora-chat{ right: 12px; bottom: 12px; }
  .agora-chat__bubble-text{ display: none; }
  .agora-chat__bubble{ width: 62px; padding: 0; justify-content: center; }
  .agora-chat__panel{ width: 94vw; height: 78vh; }
}

.agora-footer{ background: #101010; border-top: 1px solid var(--bordure-douce); }
.agora-footer__inner{
  max-width: 1360px;
  margin: 0 auto;
  padding: 0 clamp(16px, 4vw, 40px);
}
.agora-footer__top .agora-footer__inner{
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
  gap: 32px;
  padding-top: 44px;
  padding-bottom: 32px;
}
.agora-footer__gov-title{
  margin: 0 0 6px;
  font-family: var(--f-body);
  font-weight: 700;
  font-size: 16px;
  line-height: 1.3;
  color: var(--blanc);
}
.agora-footer__devise{
  margin: 0;
  font-family: var(--f-body);
  font-size: 11.5px;
  letter-spacing: .04em;
  color: var(--gris-moyen);
}
.agora-footer__gov-links{
  display: flex;
  flex-wrap: wrap;
  gap: 10px 22px;
}
.agora-footer__gov-links a{
  font-family: var(--f-body);
  font-size: 13px;
  color: var(--gris-clair);
  text-decoration: none;
}
.agora-footer__gov-links a:hover{ color: var(--accent); text-decoration: underline; }

.agora-footer__bottom{ border-top: 1px solid var(--bordure-douce); }
.agora-footer__legal{ padding: 22px clamp(16px, 4vw, 40px) 32px; }
.agora-footer__legal-list{
  list-style: none;
  margin: 0 0 16px;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 8px 20px;
}
.agora-footer__legal-list a,
.agora-footer__link-btn{
  font-family: var(--f-body);
  font-size: 12.5px;
  color: var(--gris-clair);
  text-decoration: none;
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
}
.agora-footer__legal-list a:hover,
.agora-footer__link-btn:hover{ color: var(--accent); text-decoration: underline; }
.agora-footer__copy{
  margin: 0;
  font-family: var(--f-body);
  font-size: 11.5px;
  color: var(--gris-fonce);
  line-height: 1.7;
}
.agora-footer__copy strong{ color: var(--gris-moyen); font-weight: 600; }

@media (max-width: 640px){
  .agora-footer__top .agora-footer__inner{ flex-direction: column; gap: 24px; }
}

.agora-contact__card,
.agora-actu-card,
.agora-mega,
.agora-chat__panel{
  contain: content;
}
.agora-actu-card__cover{
  contain-intrinsic-size: 160px;
}

@media (max-width: 600px){
  .agora-cta-band{ padding: 56px 18px; }
  .agora-cta-band__meta{ gap: 10px 16px; }
  .agora-hero-intro{ padding: 64px 18px 56px; }
}

@media (max-width: 380px){
  .agora-topbar__inner, .agora-navbar__inner{ padding: 0 12px; }
  .agora-disclaimer__box{ padding: 24px 16px 18px; }
  .agora-btn-outline, .agora-btn-solid{ width: 100%; justify-content: center; }
  .agora-cta-band__actions{ flex-direction: column; align-items: stretch; }
}

@media (hover: none) and (pointer: coarse){
  .agora-contact__card:hover,
  .agora-actu-card:hover{ transform: none; }
}



/* ---------- Actualité — page de détail (view.php) ---------- */

.agora-article-hero{
  position: relative;
  isolation: isolate;
  min-height: 360px;
  display: flex;
  align-items: flex-end;
  padding: 168px 24px 48px;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  overflow: hidden;
}
.agora-article-hero--fallback{
  background-image: linear-gradient(135deg, #6A6BEA, #8B8CF7);
}
.agora-article-hero__overlay{
  position: absolute;
  inset: 0;
  z-index: 0;
  background:
    linear-gradient(180deg, rgba(22,22,22,.2) 0%, rgba(22,22,22,.55) 45%, rgba(22,22,22,.96) 100%),
    radial-gradient(ellipse 55% 60% at 10% 100%, rgba(139,140,247,.35), transparent 70%);
}
.agora-article-hero__inner{
  position: relative;
  z-index: 1;
  max-width: 860px;
  width: 100%;
  margin: 0 auto;
}
.agora-article-hero__path{
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 18px;
  font-family: var(--f-body);
  font-size: 12.5px;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--gris-clair);
}
.agora-article-hero__path a{ color: var(--gris-clair); text-decoration: none; transition: color .2s var(--ease); }
.agora-article-hero__path a:hover{ color: var(--blanc); }
.agora-article-hero__path span{ color: var(--accent); }
.agora-article-hero__sep{ color: var(--gris-fonce); }
.agora-article-hero__tag{
  display: inline-block;
  margin: 0 0 16px;
  padding: 6px 14px;
  font-family: var(--f-body);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: var(--blanc);
  background: rgba(139,140,247,.18);
  border: 1px solid rgba(139,140,247,.4);
  border-radius: 999px;
}
.agora-article-hero__title{
  margin: 0;
  max-width: 820px;
  font-family: var(--f-body);
  font-weight: 700;
  font-size: clamp(24px, 4vw, 38px);
  line-height: 1.3;
  color: var(--blanc);
  text-shadow: 0 2px 18px rgba(0,0,0,.4);
}

.agora-article{ padding: 56px 24px 40px; }
.agora-article__inner{ max-width: 760px; margin: 0 auto; }

.agora-article__meta{
  display: flex;
  align-items: center;
  gap: 14px;
  padding-bottom: 28px;
  margin-bottom: 28px;
  border-bottom: 1px solid var(--bordure-douce);
  flex-wrap: wrap;
}
.agora-article__meta-avatar{
  width: 52px;
  height: 52px;
  border-radius: 50%;
  object-fit: cover;
  border: 1px solid var(--bordure);
  flex-shrink: 0;
}
.agora-article__meta-info{ min-width: 0; }
.agora-article__meta-nom{
  margin: 0;
  font-family: var(--f-body);
  font-size: 14.5px;
  font-weight: 700;
  color: var(--blanc);
}
.agora-article__meta-fonction{
  margin: 2px 0 0;
  font-size: 12.5px;
  color: var(--gris-moyen);
}
.agora-article__meta-date{
  display: flex;
  align-items: center;
  gap: 6px;
  margin-left: auto;
  font-size: 12.5px;
  color: var(--gris-moyen);
  white-space: nowrap;
}
.agora-article__meta-date svg{ width: 16px; height: 16px; flex-shrink: 0; color: var(--accent); }

.agora-article__chapo{
  margin: 0 0 28px;
  font-family: var(--f-body);
  font-size: 18px;
  font-weight: 600;
  line-height: 1.6;
  color: var(--blanc);
}

.agora-article__body p{
  margin: 0 0 20px;
  font-size: 15.5px;
  line-height: 1.85;
  color: var(--gris-clair);
}
.agora-article__body p:last-child{ margin-bottom: 0; }

.agora-article__foot{
  margin-top: 40px;
  padding-top: 28px;
  border-top: 1px solid var(--bordure-douce);
}

.agora-article-notfound{
  padding: 168px 24px 120px;
  text-align: center;
}
.agora-article-notfound__inner{ max-width: 480px; margin: 0 auto; }
.agora-article-notfound__eyebrow{
  margin: 0 0 12px;
  font-family: var(--f-body);
  font-size: 12.5px;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--accent);
}
.agora-article-notfound h1{
  margin: 0 0 14px;
  font-family: var(--f-body);
  font-size: clamp(22px, 4vw, 30px);
  color: var(--blanc);
}
.agora-article-notfound p{
  margin: 0 0 28px;
  color: var(--gris-clair);
  font-size: 15px;
  line-height: 1.7;
}

@media (max-width: 600px){
  .agora-article-hero{ padding: 140px 18px 40px; min-height: 300px; }
  .agora-article{ padding: 40px 18px 24px; }
  .agora-article__meta-date{ margin-left: 0; width: 100%; }
}

.agora-page{ padding: 0 24px 100px; }
.agora-page__inner{ max-width: 1020px; margin: 0 auto; }

.agora-page-intro{
  max-width: 760px;
  margin: 0 auto 56px;
  text-align: center;
}
.agora-page-intro__eyebrow{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--accent);
  background: rgba(139,140,247,.12);
  border: 1px solid rgba(139,140,247,.3);
  padding: 6px 14px;
  border-radius: 999px;
  margin-bottom: 18px;
}
.agora-page-intro p{
  color: var(--gris-clair);
  font-size: 15.5px;
  line-height: 1.7;
  margin: 0;
}

.agora-page-nav{
  display: flex;
  justify-content: center;
  gap: 10px;
  flex-wrap: wrap;
  margin: 0 auto 64px;
}
.agora-page-nav a{
  display: inline-flex;
  align-items: center;
  height: 42px;
  padding: 0 20px;
  border-radius: 999px;
  border: 1.5px solid var(--bordure);
  color: var(--gris-clair);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .03em;
  text-decoration: none;
  transition: border-color .2s var(--ease), color .2s var(--ease), background .2s var(--ease);
}
.agora-page-nav a:hover{ border-color: var(--accent); color: var(--blanc); }
.agora-page-nav a[aria-current="page"]{
  background: var(--accent);
  border-color: var(--accent);
  color: #161616;
}

.agora-page-section{ margin-bottom: 64px; }
.agora-page-section__head{ margin-bottom: 28px; max-width: 760px; }
.agora-page-section__head p{
  color: var(--gris-clair);
  font-size: 14.5px;
  line-height: 1.7;
  margin: 10px 0 0;
}
.agora-page-section__tag{
  display: inline-block;
  font-size: 11.5px;
  font-weight: 700;
  letter-spacing: .05em;
  text-transform: uppercase;
  color: var(--accent);
  margin-bottom: 10px;
}

.agora-page-block{
  background: var(--entete);
  border: 1px solid var(--bordure);
  border-radius: 4px;
  padding: 28px 26px;
}
.agora-page-block + .agora-page-block{ margin-top: 16px; }
.agora-page-block h3{
  margin: 0 0 10px;
  font-family: var(--f-body);
  font-size: 16px;
  font-weight: 700;
  color: var(--blanc);
}
.agora-page-block p{
  margin: 0;
  color: var(--gris-clair);
  font-size: 14px;
  line-height: 1.7;
}

.agora-page-grid{
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px;
}
.agora-page-grid--3{ grid-template-columns: repeat(3, 1fr); }

.agora-page-card{
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 26px 24px;
  background: var(--entete);
  border: 1px solid var(--bordure);
  border-radius: 4px;
  border-bottom: 3px solid transparent;
  transition: border-color .2s var(--ease), transform .2s var(--ease), background .2s var(--ease);
}
.agora-page-card:hover{
  border-color: rgba(255,255,255,.2);
  border-bottom-color: var(--accent);
  transform: translateY(-3px);
}
.agora-page-card__icon{
  width: 46px; height: 46px;
  border-radius: 4px;
  background: rgba(139,140,247,.18);
  color: var(--accent);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.agora-page-card__icon svg{ width: 24px; height: 24px; }
.agora-page-card h3{
  margin: 0;
  font-family: var(--f-body);
  font-size: 16px;
  font-weight: 700;
  color: var(--blanc);
}
.agora-page-card p{
  margin: 0;
  color: var(--gris-clair);
  font-size: 13.5px;
  line-height: 1.65;
}

.agora-page-stats{
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
  margin-bottom: 64px;
}
.agora-page-stat{
  text-align: center;
  padding: 26px 16px;
  background: rgba(139,140,247,.08);
  border: 1px solid rgba(139,140,247,.2);
  border-radius: 4px;
}
.agora-page-stat__num{
  display: block;
  font-family: var(--f-body);
  font-weight: 700;
  font-size: clamp(24px, 3vw, 32px);
  color: var(--accent);
  margin-bottom: 6px;
}
.agora-page-stat__label{
  display: block;
  font-size: 12px;
  color: var(--gris-clair);
  letter-spacing: .02em;
}

.agora-page-timeline{
  position: relative;
  padding-left: 28px;
  border-left: 2px solid var(--bordure);
}
.agora-page-timeline__item{ position: relative; padding-bottom: 32px; }
.agora-page-timeline__item:last-child{ padding-bottom: 0; }
.agora-page-timeline__item::before{
  content: '';
  position: absolute;
  left: -34px;
  top: 4px;
  width: 11px;
  height: 11px;
  border-radius: 50%;
  background: var(--accent);
  box-shadow: 0 0 0 3px rgba(139,140,247,.25);
}
.agora-page-timeline__year{
  display: block;
  font-family: var(--f-body);
  font-weight: 700;
  font-size: 14px;
  color: var(--accent);
  margin-bottom: 4px;
}
.agora-page-timeline__item h3{
  margin: 0 0 6px;
  font-size: 15.5px;
  font-weight: 700;
  color: var(--blanc);
}
.agora-page-timeline__item p{
  margin: 0;
  font-size: 13.5px;
  line-height: 1.65;
  color: var(--gris-clair);
}

.agora-page-org{
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
}
.agora-page-org__level{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 14px;
  width: 100%;
}
.agora-page-org__node{
  flex: 1 1 220px;
  max-width: 280px;
  text-align: center;
  padding: 18px 16px;
  background: var(--entete);
  border: 1px solid var(--bordure);
  border-radius: 4px;
}
.agora-page-org__node--top{
  background: var(--accent);
  border-color: var(--accent);
  color: #161616;
  max-width: 320px;
}
.agora-page-org__node--top .agora-page-org__sigle,
.agora-page-org__node--top .agora-page-org__nom{ color: #161616; }
.agora-page-org__sigle{
  display: block;
  font-family: var(--f-body);
  font-weight: 700;
  font-size: 15px;
  color: var(--blanc);
  margin-bottom: 4px;
}
.agora-page-org__nom{
  display: block;
  font-size: 12px;
  color: var(--gris-clair);
  line-height: 1.5;
}
.agora-page-org__connector{
  width: 2px;
  height: 24px;
  background: var(--bordure);
}

.agora-page-list{
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.agora-page-list li{
  display: flex;
  gap: 12px;
  align-items: flex-start;
  padding: 16px 18px;
  background: var(--entete);
  border: 1px solid var(--bordure);
  border-radius: 4px;
  color: var(--gris-clair);
  font-size: 14px;
  line-height: 1.65;
}
.agora-page-list li strong{ color: var(--blanc); }
.agora-page-list__bullet{
  flex-shrink: 0;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: rgba(139,140,247,.18);
  color: var(--accent);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-top: 1px;
}
.agora-page-list__bullet svg{ width: 12px; height: 12px; }

@media (max-width: 860px){
  .agora-page-grid,
  .agora-page-grid--3{ grid-template-columns: 1fr; }
  .agora-page-stats{ grid-template-columns: repeat(2, 1fr); }
  .agora-page-org__level{ flex-direction: column; align-items: center; }
  .agora-page-org__node{ max-width: 100%; width: 100%; }
}


.agora-ecole-hero{
  position: relative;
  isolation: isolate;
  min-height: 440px;
  display: flex;
  align-items: flex-end;
  padding: 168px 24px 56px;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  overflow: hidden;
}
.agora-ecole-hero::before{
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background:
    linear-gradient(180deg, rgba(22,22,22,.25) 0%, rgba(22,22,22,.55) 45%, rgba(22,22,22,.96) 100%),
    radial-gradient(ellipse 55% 60% at 10% 100%, rgba(139,140,247,.35), transparent 70%);
}
.agora-ecole-hero__inner{
  position: relative;
  z-index: 1;
  max-width: 1180px;
  width: 100%;
  margin: 0 auto;
}
.agora-ecole-hero__path{
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 18px;
  font-family: var(--f-body);
  font-size: 12.5px;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--gris-clair);
}
.agora-ecole-hero__path a{ color: var(--gris-clair); text-decoration: none; transition: color .2s var(--ease); }
.agora-ecole-hero__path a:hover{ color: var(--blanc); }
.agora-ecole-hero__path span{ color: var(--accent); }
.agora-ecole-hero__path .agora-ecole-hero__sep{ color: var(--gris-fonce); }
.agora-ecole-hero__sigle{
  display: inline-block;
  margin: 0 0 16px;
  padding: 6px 14px;
  font-family: var(--f-body);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: var(--blanc);
  background: rgba(139,140,247,.18);
  border: 1px solid rgba(139,140,247,.4);
  border-radius: 999px;
}
.agora-ecole-hero__title{
  margin: 0;
  max-width: 900px;
  font-family: var(--f-body);
  font-weight: 700;
  font-size: clamp(28px, 5.2vw, 50px);
  line-height: 1.2;
  color: var(--blanc);
  text-shadow: 0 2px 18px rgba(0,0,0,.4);
}
.agora-ecole-hero__subtitle{
  margin: 14px 0 0;
  max-width: 640px;
  font-size: 15.5px;
  line-height: 1.7;
  color: var(--gris-clair);
}


.agora-ecole-presentation{ padding: 88px 24px; }
.agora-ecole-presentation__inner{
  max-width: 1180px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1.05fr 1fr;
  gap: 56px;
  align-items: center;
}
.agora-ecole-presentation__text .agora-section-title{ margin-bottom: 20px; }
.agora-ecole-presentation__text p{
  margin: 0 0 16px;
  color: var(--gris-clair);
  font-size: 15px;
  line-height: 1.75;
}
.agora-ecole-presentation__text p:last-child{ margin-bottom: 0; }

.agora-video-frame{
  position: relative;
  padding-top: 56.25%;
  border-radius: 4px;
  overflow: hidden;
  background: #000;
  border: 1px solid var(--bordure);
  box-shadow: 0 20px 50px rgba(0,0,0,.35);
}
.agora-video-frame iframe,
.agora-video-frame video{
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.agora-formations{ padding: 0 24px 96px; }
.agora-formations__inner{ max-width: 1180px; margin: 0 auto; }
.agora-formations__inner > .agora-section-title{ margin-bottom: 8px; }
.agora-formations__intro{
  margin: 0 0 32px;
  max-width: 720px;
  color: var(--gris-clair);
  font-size: 14.5px;
  line-height: 1.7;
}
.agora-formation-card{
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
}
.agora-formation-card__duree{
  font-size: 12px;
  color: var(--gris-moyen);
}
.agora-formation-card__diplome{
  display: inline-flex;
  align-items: center;
  gap: 6px;
  align-self: flex-start;
  margin-top: 2px;
  padding: 5px 12px;
  font-family: var(--f-body);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
  color: #161616;
  background: var(--accent);
  border-radius: 999px;
}


.agora-chef{ padding: 0 24px 100px; }
.agora-chef__inner{
  max-width: 1020px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 200px 1fr;
  gap: 44px;
  align-items: center;
  padding: 44px;
  background: var(--entete);
  border: 1px solid var(--bordure);
  border-radius: 4px;
}
.agora-chef__photo-wrap{
  display: flex;
  justify-content: center;
  flex-shrink: 0;
}
.agora-chef__photo{
  width: 190px;
  height: 190px;
  object-fit: cover;
  border-radius: 50%;
  border: 3px solid var(--accent);
  box-shadow: 0 0 0 6px rgba(139,140,247,.12);
}
.agora-chef__eyebrow{
  display: inline-block;
  margin: 0 0 14px;
  font-family: var(--f-body);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--accent);
}
.agora-chef__nom{
  margin: 0;
  font-family: var(--f-body);
  font-size: 21px;
  font-weight: 700;
  color: var(--blanc);
}
.agora-chef__fonction{
  margin: 4px 0 0;
  font-size: 13.5px;
  color: var(--gris-clair);
}
.agora-chef__message{
  position: relative;
  margin: 20px 0 0;
  padding-left: 20px;
  border-left: 3px solid var(--accent);
  color: var(--gris-clair);
  font-size: 14.5px;
  font-style: italic;
  line-height: 1.75;
}
.agora-chef__signature{
  margin: 16px 0 0 20px;
  font-weight: 700;
  color: var(--blanc);
  font-style: normal;
}

@media (max-width: 900px){
  .agora-ecole-presentation__inner{ grid-template-columns: 1fr; gap: 36px; }
}

@media (max-width: 700px){
  .agora-ecole-hero{ padding: 148px 18px 44px; min-height: 380px; }
  .agora-chef__inner{ grid-template-columns: 1fr; text-align: center; padding: 32px 24px; }
  .agora-chef__photo-wrap{ justify-content: center; }
  .agora-chef__message{ text-align: left; }
  .agora-formations, .agora-ecole-presentation{ padding-top: 56px; padding-bottom: 56px; }
}

@media (max-width: 600px){
  .agora-ecole-hero__path{ font-size: 11px; }
}

.agora-recrut-intro{ padding: 40px 24px 88px; }
.agora-recrut-intro__inner{
  max-width: 1280px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 360px;
  gap: 32px;
  align-items: start;
}
.agora-recrut-intro__main{ min-width: 0; }

.agora-recrut-hero{
  position: relative;
  isolation: isolate;
  min-height: 420px;
  border-radius: 8px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  border: 1px solid var(--bordure);
}
.agora-recrut-hero::before{
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background:
    linear-gradient(180deg, rgba(22,22,22,.15) 0%, rgba(22,22,22,.55) 55%, rgba(22,22,22,.92) 100%);
}
.agora-recrut-hero__overlay{
  position: relative;
  z-index: 1;
  max-width: 560px;
  width: calc(100% - 48px);
  margin: 32px 24px;
  padding: 30px 32px 32px;
  text-align: center;
  background: rgba(20,18,32,.72);
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 6px;
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
}
.agora-recrut-hero__tag{
  display: inline-block;
  margin: 0 0 18px;
  padding: 6px 16px;
  border-radius: 999px;
  background: var(--accent);
  color: #161616;
  font-family: var(--f-body);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.agora-recrut-hero__titre{
  margin: 0 0 14px;
  font-family: var(--f-body);
  font-weight: 700;
  font-size: clamp(19px, 2.6vw, 25px);
  line-height: 1.4;
  color: var(--blanc);
}
.agora-recrut-hero__texte{
  margin: 0 0 26px;
  color: var(--gris-clair);
  font-size: 14.5px;
  line-height: 1.6;
}
.agora-recrut-hero__overlay .agora-btn-solid{ margin: 0 auto; }

.agora-recrut-metiers-grid{
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
  margin-top: 20px;
}
.agora-recrut-metier-card{
  position: relative;
  display: flex;
  flex-direction: column;
  text-decoration: none;
  background: var(--entete);
  border: 1px solid var(--bordure);
  border-radius: 6px;
  border-bottom: 3px solid transparent;
  overflow: hidden;
  transition: border-color .2s var(--ease), transform .2s var(--ease);
}
.agora-recrut-metier-card:hover{
  border-color: rgba(255,255,255,.2);
  border-bottom-color: var(--accent);
  transform: translateY(-3px);
}
.agora-recrut-metier-card:hover .agora-recrut-metier-card__arrow{
  background: var(--accent);
  color: #161616;
}
.agora-recrut-metier-card__cover{
  height: 132px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: rgba(255,255,255,.85);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  position: relative;
  transition: background-size .35s var(--ease);
}
.agora-recrut-metier-card:hover .agora-recrut-metier-card__cover--photo{
  background-size: 108%;
}
.agora-recrut-metier-card__cover svg{ width: 34px; height: 34px; position: relative; z-index: 1; }
.agora-recrut-metier-card--1 .agora-recrut-metier-card__cover{ background-color: #6A6BEA; background-image: linear-gradient(135deg, #6A6BEA, #8B8CF7); }
.agora-recrut-metier-card--2 .agora-recrut-metier-card__cover{ background-color: #4C4DC4; background-image: linear-gradient(135deg, #4C4DC4, #6A6BEA); }
.agora-recrut-metier-card--3 .agora-recrut-metier-card__cover{ background-color: #3A3AA0; background-image: linear-gradient(135deg, #3A3AA0, #6A6BEA); }

.agora-recrut-metier-card__cover--photo{
  background-blend-mode: normal;
}
.agora-recrut-metier-card__cover--photo::after{
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(22,22,22,0) 40%, rgba(22,22,22,.55) 100%);
}
.agora-recrut-metier-card:hover .agora-recrut-metier-card__cover--photo{
  filter: saturate(1.05);
}
.agora-recrut-metier-card__cover--photo img{ display: none; } 
.agora-recrut-metier-card__body{
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 18px 20px 44px;
  flex: 1 1 auto;
}
.agora-recrut-metier-card__tag{
  color: var(--gris-moyen);
  font-size: 12.5px;
}
.agora-recrut-metier-card__nom{
  color: var(--accent);
  font-family: var(--f-body);
  font-size: 16px;
  font-weight: 700;
  line-height: 1.35;
}
.agora-recrut-metier-card__arrow{
  position: absolute;
  right: 16px;
  bottom: 16px;
  width: 32px;
  height: 32px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  border: 1.5px solid var(--bordure);
  color: var(--blanc);
  transition: background .2s var(--ease), color .2s var(--ease);
}
.agora-recrut-metier-card__arrow svg{ width: 15px; height: 15px; }

.agora-recrut-timeline{
  align-self: start;
  position: sticky;
  top: calc(var(--nav-total) + 24px);
  background: var(--entete);
  border: 1px solid var(--bordure);
  border-radius: 6px;
  padding: 22px 22px 6px;
  max-height: calc(100vh - var(--nav-total) - 48px);
  overflow-y: auto;
}
.agora-recrut-timeline__head{ margin-bottom: 6px; }
.agora-recrut-timeline__head h2{
  margin: 0;
  font-family: var(--f-body);
  font-weight: 700;
  font-size: 15px;
  letter-spacing: .03em;
  text-transform: uppercase;
  color: var(--blanc);
}
.agora-recrut-timeline__list{
  list-style: none;
  margin: 0;
  padding: 0;
}
.agora-recrut-timeline__item{
  position: relative;
  display: flex;
  gap: 16px;
  padding: 18px 0;
  border-top: 1px solid var(--bordure-douce);
}
.agora-recrut-timeline__item:first-child{ border-top: none; }
.agora-recrut-timeline__date{
  flex-shrink: 0;
  width: 46px;
  display: flex;
  flex-direction: column;
  align-items: center;
  color: var(--blanc);
}
.agora-recrut-timeline__jour{
  font-family: var(--f-body);
  font-weight: 700;
  font-size: 22px;
  line-height: 1.1;
}
.agora-recrut-timeline__mois{
  font-size: 12px;
  color: var(--gris-moyen);
  text-transform: lowercase;
}
.agora-recrut-timeline__icon{
  width: 15px;
  height: 15px;
  margin-top: 6px;
  color: var(--accent);
}
.agora-recrut-timeline__content{
  display: flex;
  flex-direction: column;
  gap: 8px;
  min-width: 0;
}
.agora-recrut-timeline__pill{
  align-self: flex-start;
  padding: 3px 10px;
  border-radius: 999px;
  background: rgba(139,140,247,.16);
  color: var(--accent);
  font-family: var(--f-body);
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.agora-recrut-timeline__texte{
  color: var(--gris-clair);
  font-size: 13.5px;
  line-height: 1.6;
}
.agora-recrut-timeline__texte strong{ color: var(--blanc); }
.agora-recrut-timeline__lien{
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: var(--accent);
  font-size: 13px;
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 2px;
  transition: color .2s var(--ease);
}
.agora-recrut-timeline__lien svg{ width: 13px; height: 13px; flex-shrink: 0; }
.agora-recrut-timeline__lien:hover{ color: var(--blanc); }

.agora-recrut-timeline::-webkit-scrollbar{ width: 6px; }
.agora-recrut-timeline::-webkit-scrollbar-thumb{ background: var(--bordure); border-radius: 999px; }

.agora-recrut-stats{
  padding: 64px 24px;
  background: var(--entete);
  border-top: 1px solid var(--bordure-douce);
  border-bottom: 1px solid var(--bordure-douce);
}
.agora-recrut-stats__inner{
  max-width: 1180px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
  text-align: center;
}
.agora-recrut-stat{
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
}
.agora-recrut-stat__valeur{
  font-family: var(--f-body);
  font-weight: 700;
  font-size: clamp(30px, 4vw, 42px);
  color: var(--accent);
  letter-spacing: .01em;
}
.agora-recrut-stat__label{
  max-width: 220px;
  color: var(--gris-clair);
  font-size: 13px;
  line-height: 1.55;
}

.agora-recrut-ambassadeurs{
  position: relative;
  isolation: isolate;
  background-image:
    linear-gradient(135deg, rgba(20,18,40,.94), rgba(30,26,60,.9)),
    url('../img/banners/banner-egtulle-02.png');
  background-size: cover;
  background-position: center;
  padding: 80px 24px;
  overflow: hidden;
}
.agora-recrut-ambassadeurs__inner{ max-width: 1180px; margin: 0 auto; }
.agora-recrut-ambassadeurs__content{ max-width: 560px; }
.agora-recrut-ambassadeurs__eyebrow{
  display: inline-block;
  margin-bottom: 16px;
  padding: 6px 14px;
  border-radius: 999px;
  background: rgba(139,140,247,.14);
  border: 1px solid rgba(139,140,247,.35);
  color: var(--accent);
  font-family: var(--f-body);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.agora-recrut-ambassadeurs__content h2{
  margin: 0 0 14px;
  font-family: var(--f-body);
  font-weight: 700;
  font-size: clamp(22px, 3vw, 28px);
  color: var(--blanc);
}
.agora-recrut-ambassadeurs__content p{
  margin: 0 0 28px;
  color: var(--gris-clair);
  font-size: 15px;
  line-height: 1.7;
}

.agora-recrut-aide{ padding: 88px 24px 104px; text-align: center; }
.agora-recrut-aide__inner{
  max-width: 520px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.agora-recrut-aide__icon{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 56px;
  height: 56px;
  margin-bottom: 20px;
  border-radius: 50%;
  background: rgba(139,140,247,.14);
  color: var(--accent);
}
.agora-recrut-aide__icon svg{ width: 28px; height: 28px; }
.agora-recrut-aide h2{
  margin: 0 0 10px;
  font-family: var(--f-body);
  font-weight: 700;
  font-size: clamp(20px, 2.6vw, 25px);
  color: var(--blanc);
}
.agora-recrut-aide p{
  margin: 0 0 28px;
  color: var(--gris-clair);
  font-size: 14.5px;
  line-height: 1.65;
}

@media (max-width: 1080px){
  .agora-recrut-intro__inner{ grid-template-columns: minmax(0, 1fr) 320px; gap: 24px; }
}

@media (max-width: 900px){
  .agora-recrut-intro__inner{ grid-template-columns: 1fr; }
  .agora-recrut-timeline{
    position: static;
    max-height: none;
    overflow-y: visible;
  }
  .agora-recrut-stats__inner{ grid-template-columns: repeat(2, 1fr); gap: 32px 20px; }
  .agora-recrut-ambassadeurs__content{ max-width: 100%; text-align: center; margin: 0 auto; }
  .agora-recrut-ambassadeurs__content .agora-btn-outline{ margin: 0 auto; }
}

@media (max-width: 720px){
  .agora-recrut-metiers-grid{ grid-template-columns: 1fr; }
  .agora-recrut-hero{ min-height: 360px; }
  .agora-recrut-hero__overlay{ margin: 24px 16px; padding: 24px 22px 26px; }
}

@media (max-width: 640px){
  .agora-recrut-intro{ padding: 24px 18px 64px; }
  .agora-recrut-aide{ padding-left: 18px; padding-right: 18px; }
  .agora-recrut-stats__inner{ grid-template-columns: 1fr; }
}

/* ============================================================
   TROUVER MA GENDARMERIE
   ============================================================ */

.sr-only{
  position: absolute;
  width: 1px; height: 1px;
  padding: 0; margin: -1px;
  overflow: hidden;
  clip: rect(0,0,0,0);
  white-space: nowrap;
  border: 0;
}

.agora-find-hero{ padding: 56px 24px 40px; }
.agora-find-hero__inner{ max-width: 1180px; margin: 0 auto; }

.agora-find-breadcrumb{
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  font-size: 12.5px;
  color: var(--gris-fonce);
  margin-bottom: 22px;
}
.agora-find-breadcrumb a{ color: var(--gris-clair); text-decoration: none; transition: color .2s var(--ease); }
.agora-find-breadcrumb a:hover{ color: var(--blanc); }
.agora-find-breadcrumb span[aria-current]{ color: var(--accent); }

.agora-find-hero__title{
  font-family: var(--f-body);
  font-weight: 700;
  font-size: clamp(28px, 4vw, 40px);
  color: var(--blanc);
  margin: 0 0 16px;
}
.agora-find-hero__lead{
  color: var(--gris-clair);
  font-size: 15px;
  line-height: 1.7;
  max-width: 640px;
  margin: 0;
}

.agora-find{ padding: 8px 24px 100px; }
.agora-find__inner{ max-width: 1180px; margin: 0 auto; }
.agora-find__layout{
  display: grid;
  grid-template-columns: 1fr 340px;
  gap: 28px;
  align-items: start;
}
.agora-find__main{ display: flex; flex-direction: column; gap: 24px; min-width: 0; }

.agora-find-search__title{
  margin: 0 0 8px;
  font-family: var(--f-body);
  font-size: 18px;
  font-weight: 700;
  color: var(--blanc);
}
.agora-find-search__desc{
  margin: 0 0 22px;
  color: var(--gris-clair);
  font-size: 14px;
  line-height: 1.65;
  max-width: 520px;
}
.agora-find-search__form{ display: flex; gap: 10px; }
.agora-find-search__form input{
  flex: 1 1 auto;
  min-width: 0;
  height: 52px;
  padding: 0 18px;
  border-radius: 4px;
  border: 1.5px solid var(--bordure);
  background: #161616;
  color: var(--blanc);
  font-family: var(--f-body);
  font-size: 14.5px;
}
.agora-find-search__form input::placeholder{ color: var(--gris-fonce); }
.agora-find-search__form input:focus{ outline: none; border-color: var(--accent); }
.agora-find-search__form button{
  width: 52px; height: 52px;
  flex-shrink: 0;
  border: none;
  border-radius: 4px;
  background: var(--accent-fonce);
  color: var(--blanc);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: background .2s var(--ease);
}
.agora-find-search__form button:hover{ background: var(--accent-fonce-hover); }
.agora-find-search__form button svg{ width: 19px; height: 19px; }

.agora-find-results{ margin-top: 22px; display: flex; flex-direction: column; gap: 14px; }
.agora-find-results[hidden]{ display: none; }
.agora-find-result{
  padding: 24px;
  border: 1px solid var(--bordure);
  border-radius: 4px;
  background: #1c1c1c;
}
.agora-find-result__nom{
  margin: 0 0 10px;
  font-family: var(--f-body);
  font-size: 16px;
  font-weight: 700;
  color: var(--accent);
}
.agora-find-result__adresse{ margin: 0; color: var(--blanc); font-size: 14px; line-height: 1.65; }
.agora-find-result__tel{
  display: inline-block;
  margin-top: 14px;
  color: var(--blanc);
  font-weight: 700;
  font-size: 14.5px;
  text-decoration: underline;
}
.agora-find-result__tel:hover{ color: var(--accent); }
.agora-find-result__note{ margin: 2px 0 0; color: var(--gris-moyen); font-size: 12.5px; }
.agora-find-result__actions{ display: flex; flex-wrap: wrap; gap: 10px; margin-top: 18px; }
.agora-find-result__hours{
  margin-top: 16px;
  padding-top: 16px;
  border-top: 1px solid var(--bordure-douce);
  color: var(--gris-clair);
  font-size: 13px;
  line-height: 1.7;
}
.agora-find-result__hours[hidden]{ display: none; }

.agora-find-results__count{
  margin: 0 0 2px;
  color: var(--gris-moyen);
  font-size: 12.5px;
  letter-spacing: .02em;
  text-transform: uppercase;
  font-weight: 700;
}
.agora-find-results__more{ align-self: flex-start; }

.agora-find-empty{
  padding: 20px 22px;
  border: 1px dashed var(--bordure);
  border-radius: 4px;
  color: var(--gris-clair);
  font-size: 14px;
  line-height: 1.65;
}

.agora-find-map__toggle{
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 20px 24px;
  background: var(--entete);
  border: 1px solid var(--bordure);
  border-radius: 4px;
  color: var(--blanc);
  font-family: var(--f-body);
  font-size: 15px;
  font-weight: 700;
  cursor: pointer;
  transition: border-color .2s var(--ease);
}
.agora-find-map__toggle:hover{ border-color: rgba(255,255,255,.25); }
.agora-find-map__toggle svg{ width: 13px; height: 13px; flex-shrink: 0; transition: transform .2s var(--ease); }
.agora-find-map__toggle[aria-expanded="true"] svg{ transform: rotate(180deg); }
.agora-find-map__panel{ margin-top: 14px; }
.agora-find-map__panel[hidden]{ display: none; }

.agora-find-help{
  display: flex;
  gap: 18px;
  align-items: flex-start;
  padding: 26px;
  background: var(--entete);
  border: 1px solid var(--bordure);
  border-left: 3px solid var(--accent);
  border-radius: 4px;
}
.agora-find-help__icon{
  flex-shrink: 0;
  width: 32px; height: 32px;
  border-radius: 50%;
  background: rgba(139,140,247,.18);
  color: var(--accent);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-family: var(--f-body);
  font-weight: 700;
  font-size: 15px;
}
.agora-find-help h3{ margin: 0 0 8px; font-family: var(--f-body); font-size: 16px; font-weight: 700; color: var(--blanc); }
.agora-find-help p{ margin: 0 0 18px; color: var(--gris-clair); font-size: 14px; line-height: 1.6; }
.agora-find-help .agora-btn-solid svg{ width: 14px; height: 14px; }

.agora-find__side{ display: flex; flex-direction: column; }

.agora-find-sidebar-block{
  padding: 24px;
  background: var(--entete);
  border: 1px solid var(--bordure);
  border-radius: 4px;
  margin-bottom: 20px;
}
.agora-find-sidebar-block:last-child{ margin-bottom: 0; }
.agora-find-sidebar-block h2{
  margin: 0 0 16px;
  font-family: var(--f-body);
  font-size: 15px;
  font-weight: 700;
  color: var(--blanc);
}

.agora-find-sidebar-links{ list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; }
.agora-find-sidebar-links li + li{ border-top: 1px solid var(--bordure-douce); }
.agora-find-sidebar-links a,
.agora-find-sidebar-links button{
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  padding: 12px 0;
  background: none;
  border: none;
  color: var(--accent);
  font-family: var(--f-body);
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
  text-align: left;
  cursor: pointer;
  transition: color .2s var(--ease);
}
.agora-find-sidebar-links a:hover,
.agora-find-sidebar-links button:hover{ color: var(--blanc); }
.agora-find-sidebar-links svg{ width: 17px; height: 17px; flex-shrink: 0; }
.agora-find-sidebar-links .agora-find-ext{ width: 12px; height: 12px; margin-left: auto; opacity: .7; }

.agora-find-numbers{ list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 12px; }
.agora-find-numbers li{
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 14px;
  font-size: 13.5px;
  color: var(--gris-clair);
  line-height: 1.5;
}
.agora-find-numbers a{ flex-shrink: 0; color: var(--blanc); font-weight: 700; text-decoration: underline; transition: color .2s var(--ease); }
.agora-find-numbers a:hover{ color: var(--accent); }

@media (max-width: 900px){
  .agora-find__layout{ grid-template-columns: 1fr; }
  .agora-find-search__form{ flex-direction: column; }
  .agora-find-search__form button{ width: 100%; }
}

.ms-urgence{
  position: relative;
  z-index: 1100;
  background: #4A1414;
  border-bottom: 1px solid rgba(255,255,255,.1);
}
.ms-urgence__inner{
  max-width: 1360px;
  margin: 0 auto;
  padding: 12px clamp(16px, 4vw, 40px);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
}
.ms-urgence__text{
  margin: 0;
  display: flex;
  align-items: center;
  gap: 8px;
  color: var(--blanc);
  font-size: 13.5px;
  line-height: 1.5;
  text-align: center;
}
.ms-urgence__icon{ width: 17px; height: 17px; color: #F0A5A5; flex-shrink: 0; }
.ms-urgence__text a{ color: var(--blanc); font-weight: 700; text-decoration: underline; }
.ms-urgence__text a:hover{ color: #F0A5A5; }
.ms-urgence__text a svg{ width: 12px; height: 12px; display: inline; vertical-align: -1px; margin-left: 2px; }
.ms-urgence__close{
  flex-shrink: 0;
  width: 28px;
  height: 28px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: none;
  border-radius: 50%;
  background: transparent;
  color: var(--gris-clair);
  cursor: pointer;
  transition: background .2s var(--ease), color .2s var(--ease);
}
.ms-urgence__close:hover{ background: rgba(255,255,255,.1); color: var(--blanc); }
.ms-urgence__close svg{ width: 14px; height: 14px; }
.ms-urgence[hidden]{ display: none; }

.ms-main{ padding-top: var(--nav-total); }

.ms-hero{ padding: 40px 24px; background: var(--fond); }
.ms-hero__inner{
  max-width: 1180px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1.4fr 1fr;
  gap: 28px;
  align-items: stretch;
}

.ms-hero__media{
  position: relative;
  border-radius: 6px;
  overflow: hidden;
  min-height: 420px;
  background: #0e0e0e;
}
.ms-hero__media img{
  width: 100%;
  height: 100%;
  min-height: 420px;
  object-fit: cover;
}

.ms-hero__panel{
  background: var(--entete);
  border: 1px solid var(--bordure-douce);
  border-radius: 6px;
  padding: 32px;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.ms-hero__title{
  margin: 0;
  font-family: var(--f-body);
  font-size: 26px;
  font-weight: 700;
  color: var(--blanc);
  line-height: 1.25;
}

.ms-hero__mineurs{
  margin: 0 0 4px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  font-size: 12.5px;
  font-weight: 700;
  letter-spacing: .03em;
  text-transform: uppercase;
  color: var(--gris-clair);
}
.ms-hero__mineurs-link{
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: var(--accent);
  text-decoration: none;
  font-weight: 700;
}
.ms-hero__mineurs-link:hover{ color: var(--blanc); }
.ms-hero__mineurs-link svg{ width: 15px; height: 15px; flex-shrink: 0; }
.ms-hero__mineurs-link .ms-arrow{ width: 13px; height: 13px; transition: transform .2s var(--ease); }
.ms-hero__mineurs-link:hover .ms-arrow{ transform: translateX(3px); }

.ms-service-card{
  display: flex;
  align-items: flex-start;
  gap: 16px;
  padding: 20px;
  border: 1px solid var(--bordure-douce);
  border-radius: 6px;
  background: rgba(255,255,255,.02);
  text-decoration: none;
  color: inherit;
  transition: border-color .2s var(--ease), background .2s var(--ease), transform .2s var(--ease);
}
.ms-service-card:hover{
  border-color: var(--accent);
  background: rgba(139,140,247,.08);
  transform: translateY(-1px);
}
.ms-service-card__icon{
  position: relative;
  flex-shrink: 0;
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--blanc);
}
.ms-service-card__icon svg{ width: 30px; height: 30px; }
.ms-service-card__body{ display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.ms-service-card__title{
  font-family: var(--f-body);
  font-size: 16px;
  font-weight: 700;
  color: var(--accent);
}
.ms-service-card:hover .ms-service-card__title{ color: var(--blanc); }
.ms-service-card__desc{ font-size: 13px; line-height: 1.55; color: var(--gris-clair); }

.ms-below{ padding: 12px 24px 100px; background: var(--fond); }
.ms-below__inner{
  max-width: 1180px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 28px;
  align-items: start;
}

.ms-plainte{
  padding: 32px;
  border-left: 4px solid var(--accent);
  background: var(--entete);
  border-radius: 0 6px 6px 0;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.ms-plainte__title{
  margin: 0;
  font-family: var(--f-body);
  font-size: 19px;
  font-weight: 700;
  color: var(--blanc);
}
.ms-plainte__text{ margin: 0; color: var(--gris-clair); font-size: 14.5px; line-height: 1.65; }
.ms-plainte__text strong{ color: var(--blanc); }
.ms-plainte .agora-btn-outline{ align-self: flex-start; }

.ms-clics__title{
  margin: 0 0 16px;
  font-family: var(--f-body);
  font-size: 19px;
  font-weight: 700;
  color: var(--blanc);
}
.ms-clics__list{
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.ms-clics__list a{
  display: inline-flex;
  align-items: center;
  height: 40px;
  padding: 0 18px;
  border-radius: 999px;
  border: 1px solid var(--bordure-douce);
  background: var(--entete);
  color: var(--gris-clair);
  font-size: 13px;
  font-weight: 600;
  text-decoration: none;
  white-space: nowrap;
  transition: border-color .2s var(--ease), color .2s var(--ease), background .2s var(--ease);
}
.ms-clics__list a:hover{
  border-color: var(--accent);
  color: var(--blanc);
  background: rgba(139,140,247,.1);
}

@media (max-width: 900px){
  .ms-hero__inner{ grid-template-columns: 1fr; }
  .ms-hero__media{ min-height: 260px; }
  .ms-hero__media img{ min-height: 260px; }
  .ms-below__inner{ grid-template-columns: 1fr; }
}

@media (max-width: 560px){
  .ms-urgence__inner{ flex-wrap: wrap; }
  .ms-hero__panel{ padding: 24px; }
  .ms-hero__title{ font-size: 22px; }
  .ms-clics__list a{ width: 100%; justify-content: center; }
}


.agora-partners{
  position: relative;
  padding: 88px 24px 96px;
}

.agora-partners__inner{
  max-width: 1180px;
  margin: 0 auto;
  text-align: center;
}

.agora-partners__eyebrow{
  display: inline-block;
  font-family: var(--f-body);
  color: var(--accent);
  letter-spacing: .14em;
  text-transform: uppercase;
  font-size: 12px;
  font-weight: 700;
  margin: 0 0 16px;
  padding: 6px 14px;
  border-radius: 999px;
  background: rgba(139,140,247,.08);
  opacity: 0;
  transform: translateY(10px);
  animation: agoraPartnersFadeUp .6s var(--ease) forwards;
}

.agora-partners__title{
  font-family: var(--f-body);
  font-weight: 700;
  font-size: clamp(24px, 4vw, 32px);
  line-height: 1.3;
  margin: 0 0 14px;
  color: var(--blanc);
  opacity: 0;
  transform: translateY(10px);
  animation: agoraPartnersFadeUp .6s var(--ease) .08s forwards;
}

.agora-partners__lead{
  color: var(--gris-clair);
  font-size: 15.5px;
  line-height: 1.7;
  margin: 0 auto 52px;
  max-width: 560px;
  opacity: 0;
  transform: translateY(10px);
  animation: agoraPartnersFadeUp .6s var(--ease) .16s forwards;
}

.agora-partners__grid{
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: center;
  gap: 36px 40px;
}

.agora-partners__item{
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  width: 128px;
  border: none;
  background: none;
  padding: 0;
  cursor: pointer;
  font-family: var(--f-body);
  opacity: 0;
  transform: translateY(16px);
  animation: agoraPartnersFadeUp .6s var(--ease) forwards;
}

.agora-partners__logo-wrap{
  position: relative;
  width: 92px;
  height: 92px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: radial-gradient(circle, rgba(139,140,247,.22), rgba(139,140,247,0) 72%);
  border: 1px solid var(--bordure-douce);
  transition: transform .32s var(--ease), border-color .32s var(--ease), box-shadow .32s var(--ease);
}

.agora-partners__logo-wrap::after{
  content: "";
  position: absolute;
  inset: -6px;
  border-radius: 50%;
  border: 1px solid rgba(139,140,247,0);
  transition: border-color .32s var(--ease), transform .32s var(--ease);
}

.agora-partners__logo{
  width: 56px;
  height: 56px;
  object-fit: contain;
  border-radius: 50%;
  filter: drop-shadow(0 0 10px rgba(139,140,247,.25));
  transition: transform .32s var(--ease);
}

.agora-partners__item:hover .agora-partners__logo-wrap,
.agora-partners__item:focus-visible .agora-partners__logo-wrap{
  transform: translateY(-6px);
  border-color: rgba(139,140,247,.55);
  box-shadow: 0 14px 30px rgba(139,140,247,.28);
}

.agora-partners__item:hover .agora-partners__logo-wrap::after,
.agora-partners__item:focus-visible .agora-partners__logo-wrap::after{
  border-color: rgba(139,140,247,.35);
  transform: scale(1.06);
}

.agora-partners__item:hover .agora-partners__logo,
.agora-partners__item:focus-visible .agora-partners__logo{
  transform: scale(1.08);
}

.agora-partners__item:active .agora-partners__logo-wrap{
  transform: translateY(-2px) scale(.97);
}

.agora-partners__item:focus-visible{
  outline: none;
}
.agora-partners__item:focus-visible .agora-partners__logo-wrap{
  box-shadow: 0 0 0 3px rgba(139,140,247,.45), 0 14px 30px rgba(139,140,247,.28);
}

.agora-partners__name{
  font-size: 13.5px;
  font-weight: 600;
  color: var(--gris-clair);
  text-align: center;
  line-height: 1.3;
  transition: color .25s var(--ease);
}

.agora-partners__item:hover .agora-partners__name,
.agora-partners__item:focus-visible .agora-partners__name{
  color: var(--blanc);
}

@keyframes agoraPartnersFadeUp{
  to{ opacity: 1; transform: translateY(0); }
}

.agora-partners__overlay{
  position: fixed;
  inset: 0;
  background: rgba(10,10,12,.7);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  z-index: 1200;
  opacity: 0;
  transition: opacity .28s var(--ease);
}
.agora-partners__overlay.is-open{ opacity: 1; }
.agora-partners__overlay[hidden]{ display: none; }

.agora-partners__modal{
  position: fixed;
  top: 50%;
  left: 50%;
  z-index: 1300;
  width: min(440px, calc(100vw - 40px));
  max-height: calc(100vh - 48px);
  overflow-y: auto;
  background: var(--entete);
  border: 1px solid var(--bordure-douce);
  border-radius: 20px;
  padding: 32px 28px 28px;
  box-shadow: 0 30px 70px rgba(0,0,0,.55);
  transform: translate(-50%, -46%) scale(.94);
  opacity: 0;
  transition: transform .3s var(--ease), opacity .3s var(--ease);
}
.agora-partners__modal.is-open{
  transform: translate(-50%, -50%) scale(1);
  opacity: 1;
}
.agora-partners__modal[hidden]{ display: none; }

.agora-partners__modal-close{
  position: absolute;
  top: 16px;
  right: 16px;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  border: 1px solid var(--bordure-douce);
  background: rgba(255,255,255,.03);
  color: var(--gris-clair);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: background .25s var(--ease), color .25s var(--ease), transform .25s var(--ease);
}
.agora-partners__modal-close svg{ width: 16px; height: 16px; }
.agora-partners__modal-close:hover{
  background: rgba(139,140,247,.15);
  color: var(--blanc);
  transform: rotate(90deg);
}

.agora-partners__modal-head{
  display: flex;
  align-items: center;
  gap: 16px;
  margin: 0 0 18px;
}

.agora-partners__modal-logo-wrap{
  flex-shrink: 0;
  width: 64px;
  height: 64px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: radial-gradient(circle, rgba(139,140,247,.25), rgba(139,140,247,0) 72%);
  border: 1px solid var(--bordure-douce);
}

.agora-partners__modal-logo{
  width: 40px;
  height: 40px;
  object-fit: contain;
  border-radius: 50%;
}

.agora-partners__modal-headtext{ min-width: 0; }

.agora-partners__modal-title{
  font-family: var(--f-body);
  font-size: 19px;
  font-weight: 700;
  color: var(--blanc);
  margin: 0 0 4px;
}

.agora-partners__modal-since{
  font-family: var(--f-body);
  font-size: 12.5px;
  font-weight: 600;
  letter-spacing: .04em;
  text-transform: uppercase;
  color: var(--accent);
  margin: 0;
}

.agora-partners__modal-desc{
  color: var(--gris-clair);
  font-size: 14.5px;
  line-height: 1.7;
  margin: 0 0 24px;
}

.agora-partners__modal-discord{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: 100%;
  height: 46px;
  font-family: var(--f-body);
  font-size: 14px;
  font-weight: 700;
  color: var(--blanc);
  text-decoration: none;
  background: linear-gradient(135deg, var(--accent-fonce), #4C4DC4);
  border-radius: 999px;
  box-shadow: 0 2px 10px rgba(107,108,234,.25);
  transition: box-shadow .25s var(--ease), transform .2s var(--ease), background .25s var(--ease);
}
.agora-partners__modal-discord svg{ width: 18px; height: 18px; }
.agora-partners__modal-discord:hover{
  background: linear-gradient(135deg, var(--accent-fonce-hover), #4348B8);
  box-shadow: 0 8px 20px rgba(107,108,234,.4);
  transform: translateY(-1px);
}

body.agora-partners-lock{ overflow: hidden; }

@media (prefers-reduced-motion: reduce){
  .agora-partners__eyebrow,
  .agora-partners__title,
  .agora-partners__lead,
  .agora-partners__item{
    animation: none;
    opacity: 1;
    transform: none;
  }
  .agora-partners__logo-wrap,
  .agora-partners__logo,
  .agora-partners__modal,
  .agora-partners__overlay,
  .agora-partners__modal-close,
  .agora-partners__modal-discord{
    transition: none;
  }
}

@media (max-width: 640px){
  .agora-partners{ padding: 64px 18px 72px; }
  .agora-partners__grid{ gap: 28px 24px; }
  .agora-partners__item{ width: 100px; }
  .agora-partners__logo-wrap{ width: 78px; height: 78px; }
  .agora-partners__logo{ width: 46px; height: 46px; }
  .agora-partners__modal{ padding: 26px 20px 22px; border-radius: 16px; }
}
