


.heros-simple{
  position:relative; overflow:hidden;
  padding:123px 0 84px;
  background:linear-gradient(180deg,#FFFFFF 0%,#FAFBFC 100%);
}
.heros-simple .boite{ position:relative; z-index:2; }

.heros-simple h1{
  font-size:clamp(34px,5vw,72px); font-weight:700; line-height:1.081; color:var(--nuit); max-width:786px;
}
.heros-simple .chapo{ margin-top:70px; font-size:20px; line-height:1.21; color:#0B172E; max-width:556px; }
.heros-simple .actions{ display:flex; gap:16px; flex-wrap:wrap; margin-top:44px; }
.heros-simple .actions .btn{ height:54px; padding:0 20px; border-radius:27px 6px 6px 27px; font-size:14px; }
.heros-simple .maillage{ position:absolute; inset:0; z-index:0; opacity:.85; }


.cand-heros{ background:linear-gradient(120deg,#F7F4FA 0%,#F2F5FB 55%,#EDF3FA 100%); }
.cand-heros .cand-photo{
  position:absolute; right:0; top:0; bottom:0; width:58%;
  z-index:1; pointer-events:none;
}
.cand-heros .cand-photo img{
  width:100%; height:100%; object-fit:cover; object-position:center right;
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 26%);
          mask-image:linear-gradient(90deg,transparent 0%,#000 26%);
}
.cand-heros .boite{ z-index:2; }
.cand-heros h1,
.cand-heros .chapo{ max-width:540px; }
@media (max-width:900px){
  
  .cand-heros .cand-photo{ display:none; }
}


.gabarit-legal .heros-simple{ text-align:center; }
.gabarit-legal .heros-simple h1{ max-width:1166px; margin:0 auto; }
.gabarit-legal .heros-simple .chapo{
  margin:34px auto 0; max-width:780px; font-size:22px; line-height:1.4; color:var(--corps);
}

.gabarit-legal .texte-corps{ max-width:none; }.gabarit-legal .texte-corps > *:not(.maj),.gabarit-legal .texte-corps > :where(.vv-w) > *:not(.maj){ max-width:820px; }
.gabarit-legal .texte-corps .maj{
  text-align:center; margin:0 0 46px; font-size:20px; color:var(--sourdine);
}



.gabarit-ressources .boite{ max-width:1440px; padding:0 51px; }
.res-heros{ display:grid; grid-template-columns:minmax(0,.665fr) minmax(0,1.335fr); align-items:stretch; }
.res-heros .texte{ position:relative; z-index:2; }

.res-heros .texte{ display:flex; align-items:flex-start; padding:36px 40px 40px max(32px, calc((100vw - 1440px) / 2 + 102px)); }.res-heros .texte > div,.res-heros .texte > :where(.vv-w) > div{ width:100%; }

.res-heros h1{ font-size:clamp(36px,5vw,72px); font-weight:700; line-height:1.081; color:var(--nuit); white-space:nowrap; }
.res-heros h1 em{ font-style:normal; color:#FE2977; }
.res-heros p{ margin-top:65px; font-size:20px; line-height:1.21; color:var(--corps); max-width:506px; }
.res-vague{
  position:relative; min-height:413px; overflow:hidden;
  
  background:#fff;
}
.res-vague canvas{ position:absolute; inset:0; width:100%; height:100%; }
.res-vague img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; }

.res-vague canvas[hidden]{ display:none; }

.res-vague img[hidden]{ display:none; }

.res-filtres{
  border-bottom:1px solid var(--ligne); background:#fff;
  position:sticky; top:84px; z-index:40; 
}

.res-filtres .boite{ display:flex; align-items:center; gap:0; flex-wrap:nowrap; overflow-x:auto; scrollbar-width:none; padding:14px 42px 14px 68px; }
.res-filtres .boite::-webkit-scrollbar{ display:none; }
.res-filtres button svg{ width:17px; height:17px; flex:none; }
.res-filtres button{
  display:inline-flex; align-items:center; gap:7px; flex:none;
  font-family:'Satoshi',sans-serif; font-weight:700; font-size:16px; line-height:1.35;
  padding:9px 8px; border-radius:999px; color:#0B172E; white-space:nowrap;
}
.res-filtres button[aria-pressed="true"]{ background:var(--nuit); color:#fff; }
.res-filtres .sep{ flex:none; width:1px; height:22px; background:var(--ligne); margin:0 6px; }
.res-filtres .pastille{ width:11px; height:11px; border-radius:50%; flex:none; }
.res-filtres .pastille.rose{ background:#FE2977; }
.res-filtres .pastille.teal{ background:#028D9D; }
.res-filtres .pastille.bleu{ background:#0161D8; }

.res-barre{ display:flex; align-items:center; justify-content:space-between; gap:20px; padding:8px 0; flex-wrap:wrap; }:where(.vv-w):has(> .res-barre) + .res-barre,.res-barre + .res-barre,.res-barre + :where(.vv-w) > .res-barre,:where(.vv-w):has(> .res-barre) + :where(.vv-w) > .res-barre{ padding-top:24px; }
.res-recherche{
  width:min(554px,100%); border:1px solid var(--ligne); border-radius:999px;
  padding:15px 24px; font:inherit; color:var(--ink); background:#fff;
}
.res-compte{ font-size:16px; line-height:1.21; color:#4A5568; }
.res-tri{ font-size:16px; line-height:1.21; color:#4A5568; }
.res-tri b{ font-family:'Satoshi',sans-serif; color:var(--ink); }

.res-corps{ display:grid; grid-template-columns:minmax(0,1fr) 310px; gap:23px; padding:26px 0 70px; align-items:start; }
.res-grille{ display:grid; grid-template-columns:repeat(3,1fr); gap:19px; }
.res-carte[hidden]{ display:none; }
.res-carte{
  background:#fff; border-radius:18px; overflow:hidden; display:flex; flex-direction:column;
  box-shadow:var(--ombre-carte);
}
.res-carte .visuel{ aspect-ratio:16/9; background:#EEF1F6 center/cover no-repeat; }
.res-carte .corps{ padding:20px 22px 24px; display:flex; flex-direction:column; gap:9px; flex:1; }
.res-carte .type{
  font-family:'Satoshi',sans-serif; font-weight:700; font-size:13px; letter-spacing:.09em;
  text-transform:uppercase; color:var(--ink); display:inline-flex; align-items:center; gap:8px;
}
.res-carte .type i{ width:11px; height:11px; border-radius:50%; display:inline-block; }
.res-carte h3{ font-size:16.5px; font-weight:700; line-height:1.32; }
.res-carte p{ font-size:14.5px; color:var(--corps); } 
.res-carte .duree{ margin-top:auto; font-size:13.5px; color:#667085; display:flex; align-items:center; gap:7px; }
.res-carte .duree svg, .res-aside .item .duree svg{ width:15px; height:15px; flex:none; }
.res-aside .item .duree{ display:flex; align-items:center; gap:6px; }

.res-aside{
  background:linear-gradient(180deg,#FCFDFE 0%,#F4F6FA 100%);
  border-radius:20px; padding:26px 24px; box-shadow:var(--ombre-carte);
  position:sticky; top:180px;
}
.res-aside h2{ font-size:21px; font-weight:700; margin-bottom:18px; }
.res-aside .item{ display:grid; grid-template-columns:96px 1fr auto; gap:14px; align-items:start; padding:14px 0; }
.res-aside .item .vign{ aspect-ratio:4/3; border-radius:10px; background:#E7EBF1 center/cover no-repeat; }
.res-aside .item .type{ font-family:'Satoshi',sans-serif; font-weight:700; font-size:13px; letter-spacing:.08em; text-transform:uppercase; }
.res-aside .item h3{ font-size:14.5px; font-weight:600; line-height:1.35; margin-top:4px; }
.res-aside .item .duree{ font-size:13px; color:#667085; margin-top:6px; }
.res-aside .item .rang{ font-family:'Satoshi',sans-serif; font-weight:500; font-size:23px; color:var(--ink); }


.infolettre{ padding:20px 0 84px; }
.infolettre .carte{
  position:relative; overflow:hidden; border-radius:26px; padding:52px 56px;
  background:linear-gradient(100deg,#FCE7F1 0%,#F1F0FB 44%,#E6F4FB 74%,#E6F7F5 100%);
  display:grid; grid-template-columns:minmax(0,1fr) minmax(0,.9fr); gap:36px; align-items:center;
}
.infolettre canvas{ position:absolute; inset:0; width:100%; height:100%; opacity:.75; }.infolettre .carte > div,.infolettre .carte > :where(.vv-w) > div{ position:relative; z-index:1; }
.infolettre h2{ font-size:clamp(26px,3vw,34px); font-weight:700; }
.infolettre h2 span{ color:#8B7BD8; }
.infolettre h2 em{ font-style:normal; color:#FE2977; }
.infolettre p{ margin-top:12px; font-size:16.5px; color:var(--corps); }
.infolettre form{ display:flex; gap:0; background:#fff; border-radius:999px; padding:6px; box-shadow:var(--ombre-carte); }
.infolettre input[type=email]{ flex:1; border:0; padding:14px 22px; font:inherit; border-radius:999px; }
.infolettre input[type=email]:focus{ outline:2px solid var(--accent); }
.infolettre .mentions{ margin-top:14px; font-size:13.5px; color:var(--sourdine); }
.info-retour{ margin:0 0 12px; padding:12px 16px; border-radius:12px; font-size:15px; }
.info-retour.ok{ background:#E4F4F0; color:#0E7C63; }
.info-retour.erreur{ background:#FDECE8; color:#B0321E; }
.infolettre .mentions label{ display:flex; gap:9px; align-items:flex-start; }



.art-entete{ padding:11px 32px 8px; }
.retour{ display:inline-flex; align-items:center; gap:14px; font-family:'Satoshi',sans-serif; font-weight:700; font-size:20px; line-height:1.35; color:#0B172E; }
.retour::before{ content:"\2190"; font-size:23px; }
.art-entete h1{ margin-top:15px; font-size:clamp(32px,5vw,72px); font-weight:700; line-height:1.081; color:#0B172E; max-width:1179px; }
.art-meta{ margin-top:32px; display:flex; align-items:center; gap:20px; font-family:'Satoshi',sans-serif; font-weight:400; font-size:20px; line-height:1.35; color:#0B172E; }
.art-meta b{ font-family:'Satoshi',sans-serif; font-weight:700; color:#0B172E; }
.art-meta .sep{ width:1px; height:24px; background:var(--ligne); }
.art-image{ margin-top:30px; aspect-ratio:1280/560; border-radius:18px; overflow:hidden; background:var(--accent-voile) center/cover no-repeat; }
.art-chapo{ margin-top:34px; font-size:17.5px; color:var(--corps); }

.art-corps{ display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:52px; padding:44px 32px 60px; align-items:start; }
.art-texte h2{ font-size:26px; font-weight:700; margin:38px 0 16px; }
.art-texte h2 .num{ color:var(--accent); }
.art-texte h3{ font-size:20px; font-weight:700; margin:26px 0 12px; }
.art-texte p{ margin:0 0 18px; font-size:17px; }
.art-texte ul{ margin:0 0 20px; padding-left:0; }
.art-texte ul li{ position:relative; padding-left:26px; margin-bottom:9px; font-size:17px; }
.art-texte ul li::before{ content:""; position:absolute; left:0; top:10px; width:9px; height:9px; border-radius:50%; background:var(--accent); }
.art-aide{
  display:inline-flex; align-items:center; gap:12px; margin-top:16px;
  font-size:16.5px; color:var(--ink);
}
.art-aide a{ color:var(--accent); font-weight:600; }

.art-aside{ position:sticky; top:130px; display:flex; flex-direction:column; gap:26px; }
.sommaire{ background:linear-gradient(180deg,#FCFDFE 0%,#F4F6FA 100%); border-radius:18px; padding:24px 22px; box-shadow:var(--ombre-carte); }
.sommaire h2{ font-size:19px; font-weight:700; margin-bottom:14px; }
.sommaire a{ display:flex; gap:11px; padding:9px 0 9px 12px; font-size:15px; color:var(--corps); border-left:3px solid transparent; }
.sommaire a b{ color:var(--accent); font-family:'Satoshi',sans-serif; }
.sommaire a.actif{ border-left-color:var(--accent); color:var(--ink); font-weight:600; }
.lies{ border-top:2px solid var(--accent); padding-top:18px; }
.lies h2{ font-size:15px; font-weight:700; margin-bottom:12px; border-left:3px solid var(--accent); padding-left:10px; }
.lies .item{ display:grid; grid-template-columns:56px 1fr; gap:12px; padding:9px 0; }
.lies .item .vign{ aspect-ratio:1; border-radius:8px; background:#E7EBF1 center/cover no-repeat; }
.lies .item p{ font-size:13px; line-height:1.35; }
.lies .item small{ font-size:12.5px; color:#667085; }


.metiers-grille{ display:grid; grid-template-columns:repeat(3,1fr); gap:28px; padding:10px 0 80px; }
.carte-metier{
  display:flex; flex-direction:column; border-radius:22px; overflow:hidden; background:#fff;
  box-shadow:var(--ombre-carte); transition:transform .18s ease, box-shadow .18s ease;
}
.carte-metier:hover{ transform:translateY(-4px); box-shadow:0 30px 60px -34px rgba(11,23,46,.4); }
.carte-metier .photo{ aspect-ratio:16/10; background:center/cover no-repeat; display:block; }
.carte-metier.rose .photo{ background-color:#FFF1F6; background-image:linear-gradient(150deg,#FFD9E8 0%,#F7F9FC 70%); }
.carte-metier.teal .photo{ background-color:#EFF7F6; background-image:linear-gradient(150deg,#CFEAE8 0%,#F7F9FC 70%); }
.carte-metier.bleu .photo{ background-color:#F1F5FD; background-image:linear-gradient(150deg,#D5E1F7 0%,#F7F9FC 70%); }
.carte-metier .corps{ padding:24px 26px 28px; display:flex; flex-direction:column; gap:10px; flex:1; }
.carte-metier h2{ font-size:21px; font-weight:700; }
.carte-metier p{ font-size:15.5px; color:var(--corps); }
.carte-metier .aller{ margin-top:auto; font-family:'Satoshi',sans-serif; font-weight:700; font-size:14.5px; }
.carte-metier .aller::after{ content:" \2192"; }
.carte-metier.rose .aller, .carte-metier.rose h2 span{ color:#FE2977; }
.carte-metier.teal .aller, .carte-metier.teal h2 span{ color:#028D9D; }
.carte-metier.bleu .aller, .carte-metier.bleu h2 span{ color:#0161D8; }




.ct-heros{ position:relative; overflow:hidden; padding:88px 0 392px; text-align:center; }
.ct-heros .vague-fond{
  position:absolute; left:0; right:0; bottom:-30%; width:100%; height:auto;
  z-index:0; pointer-events:none; opacity:.9;
  -webkit-mask-image:linear-gradient(180deg,transparent 0%,#000 42%);
          mask-image:linear-gradient(180deg,transparent 0%,#000 42%);
}
.ct-heros .boite{ position:relative; z-index:1; }
.ct-heros h1{ font-size:clamp(32px,5vw,72px); font-weight:700; line-height:1.081; color:#0B172E; max-width:1166px; margin:0 auto; }
.ct-heros h1 .degrade,
.ct-cote h2 .degrade{ background-image:linear-gradient(180deg,#D11883 0%,#674FC5 100%); }
.ct-heros .chapo{ margin:57px auto 0; max-width:780px; font-size:20px; font-weight:600; line-height:1.21; color:#101828; }

.ct-grille{ display:grid; grid-template-columns:minmax(0,.72fr) minmax(0,1fr); gap:56px; align-items:start; padding-bottom:70px; }
.ct-cote h2{ font-size:clamp(26px,5vw,72px); font-weight:700; line-height:1.081; color:#0B172E; }
.ct-cote .intro{ margin-top:24px; font-size:20px; line-height:1.21; color:#0B172E; max-width:352px; }
.ct-promesses{ margin-top:44px; display:flex; flex-direction:column; gap:30px; }
.ct-promesses li{ display:flex; align-items:center; gap:22px; }
.ct-promesses .ico{
  flex:none; width:74px; height:74px; border-radius:50%; background:#fff;
  display:flex; align-items:center; justify-content:center;
  box-shadow:0 16px 34px -22px rgba(11,23,46,.34);
}
.ct-promesses .ico svg{ width:34px; height:34px; }
.ct-promesses .ico img{ display:block; width:42px; height:42px; object-fit:contain; }

.ct-promesses .ico.rose{ color:var(--rose); }
.ct-promesses .ico.teal{ color:var(--teal); }
.ct-promesses .ico.bleu{ color:var(--bleu); }
.ct-promesses b{ font-family:'Satoshi',sans-serif; font-weight:700; font-size:18px; color:var(--ink); line-height:1.3; }

.ct-promesses b.rose{ color:var(--rose); }
.ct-promesses b.teal{ color:var(--teal); }
.ct-promesses b.bleu{ color:var(--bleu); }
.ct-direct{ margin-top:44px; padding-top:34px; border-top:1px solid var(--ligne); }

.ct-direct{
  
  background-image:linear-gradient(180deg,#FF0066 26%,#3D65E0 100%);
  -webkit-background-clip:text; background-clip:text;
}
.ct-direct .tel a,
.ct-direct .mail a{ color:transparent; }
.ct-direct .tel a{ font-family:'Satoshi',sans-serif; font-weight:700; font-size:clamp(26px,2.7vw,34px); }
.ct-direct .mail{ margin-top:12px; }
.ct-direct .mail a{ font-family:'Satoshi',sans-serif; font-weight:700; font-size:19px; }

.ct-carte{
  background:#fff; border-radius:26px; padding:40px 38px 44px;
  box-shadow:0 34px 78px -44px rgba(11,23,46,.34);
}
.ct-titre{ font-family:'Satoshi',sans-serif; font-weight:700; font-size:clamp(22px,2.2vw,29px); color:var(--nuit); margin-bottom:30px; }

.ct-retour{ margin:-10px 0 24px; padding:14px 18px; border-radius:12px; font-size:15.5px; line-height:1.45; }
.ct-retour.ok{ background:#E4F4F0; color:#0E7C63; }
.ct-retour.erreur{ background:#FDECE8; color:#B0321E; }

.ct-form-intro{ margin:-14px 0 26px; font-size:15.5px; line-height:1.5; color:var(--corps); }
.ct-bloc{ border:0; padding:0; margin:0 0 30px; }
.ct-bloc legend{
  display:flex; align-items:center; gap:12px; width:100%; padding:0; margin-bottom:16px;
  font-family:'Satoshi',sans-serif; font-weight:700; font-size:20px; color:var(--nuit);
}

.ct-facultatif{
  margin-left:auto; padding:7px 15px; border-radius:999px;
  background:#F1F4F9; color:var(--sourdine);
  font-family:'Inter',sans-serif; font-weight:600; font-size:12px;
  letter-spacing:.06em; text-transform:uppercase;
}
.ct-bloc-intro{ margin:-6px 0 18px; font-size:14.5px; line-height:1.5; color:var(--corps); }
.ct-duo{ display:grid; grid-template-columns:1fr 1fr; gap:14px; }.ct-bloc > input,.ct-bloc > :where(.vv-w) > input,.ct-bloc > select,.ct-bloc > :where(.vv-w) > select,.ct-duo > input,.ct-duo > :where(.vv-w) > input{
  display:block; width:100%; margin-bottom:14px;
  border:1px solid var(--ligne); border-radius:12px; padding:15px 18px;
  font:inherit; font-size:15.5px; color:var(--ink); background:#FBFCFE;
}.ct-duo > input,.ct-duo > :where(.vv-w) > input{ margin-bottom:0; }
.ct-duo{ margin-bottom:14px; }
.ct-bloc select{
  appearance:none; cursor:pointer; padding-right:44px;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath fill='none' stroke='%235B76B8' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round' d='M1 1.5 6 6.5l5-5'/%3E%3C/svg%3E");
  background-repeat:no-repeat; background-position:right 18px center; background-size:12px 8px;
}

.ct-form ::placeholder{ color:#7A879C; opacity:1; }
.ct-form select:invalid,
.ct-form select:has(option[value=""]:checked){ color:#7A879C; }
.ct-form input:focus,
.ct-form select:focus,
.ct-form textarea:focus{ outline:2px solid var(--accent); border-color:transparent; }
.ct-form textarea{
  width:100%; min-height:132px; resize:vertical;
  border:1px solid var(--ligne); border-radius:12px; padding:15px 18px;
  font:inherit; font-size:15.5px; color:var(--ink); background:#FBFCFE; line-height:1.5;
}
.ct-form .btn{ margin-top:4px; padding:18px 34px; font-size:17px; }
.ct-consent{ display:flex; align-items:flex-start; gap:12px; margin-top:24px; font-size:14px; line-height:1.45; color:var(--corps); }
.ct-consent input{ margin-top:3px; width:17px; height:17px; flex:none; }
.ct-rgpd{ margin-top:16px; font-size:14px; line-height:1.45; color:var(--corps); }
.ct-rgpd a{ color:var(--accent); text-decoration:underline; }

.ct-mains{ padding:0 0 90px; }
.ct-mains .carte{
  background:linear-gradient(180deg,#FDFDFE 0%,#F5F7FB 100%);
  border-radius:26px; padding:48px 40px 54px; text-align:center;
  box-shadow:0 26px 60px -44px rgba(11,23,46,.3);
}
.ct-mains h2{ font-size:clamp(24px,2.7vw,36px); font-weight:700; color:var(--nuit); margin-bottom:40px; }
.ct-univers{ display:grid; grid-template-columns:repeat(3,1fr); }.ct-univers > div,.ct-univers > :where(.vv-w) > div{
  padding:0 16px; border-left:1px solid var(--ligne);
  display:flex; align-items:center; gap:14px; text-align:left;
}.ct-univers > div:first-child,.ct-univers > :where(.vv-w:first-child) > div:first-child{ border-left:0; }
.ct-univers .logo{ flex:none; margin:0; }
.ct-univers .logo img{ display:block; width:52px; height:52px; object-fit:contain; }
.ct-univers .nom{ font-family:'Satoshi',sans-serif; font-weight:700; font-size:clamp(14px,1.42vw,19px); text-transform:uppercase; letter-spacing:.01em; white-space:nowrap; }
.ct-univers .nom.rose{ color:var(--rose); }
.ct-univers .nom.teal{ color:var(--teal); }
.ct-univers .nom.bleu{ color:var(--bleu); }.ct-univers > div > :where(.vv-w):has(> p) + :where(.vv-w) > p,.ct-univers > div > :where(.vv-w):has(> p) + p,.ct-univers > div > p + :where(.vv-w) > p,.ct-univers > div > p + p,.ct-univers > div > :where(.vv-w) > :where(.vv-w):has(> p) + p,.ct-univers > div > :where(.vv-w) > p + p,.ct-univers > div > :where(.vv-w) > :where(.vv-w):has(> p) + :where(.vv-w) > p,.ct-univers > div > :where(.vv-w) > p + :where(.vv-w) > p,.ct-univers > :where(.vv-w) > div > p + :where(.vv-w) > p,.ct-univers > :where(.vv-w) > div > p + p,.ct-univers > :where(.vv-w) > div > :where(.vv-w):has(> p) + :where(.vv-w) > p,.ct-univers > :where(.vv-w) > div > :where(.vv-w):has(> p) + p,.ct-univers > :where(.vv-w) > div > :where(.vv-w) > p + :where(.vv-w) > p,.ct-univers > :where(.vv-w) > div > :where(.vv-w) > :where(.vv-w):has(> p) + p,.ct-univers > :where(.vv-w) > div > :where(.vv-w) > p + p,.ct-univers > :where(.vv-w) > div > :where(.vv-w) > :where(.vv-w):has(> p) + :where(.vv-w) > p{ margin-top:16px; font-size:16.5px; line-height:1.4; color:var(--ink); }

.bloc-info{
  background:linear-gradient(180deg,#FCFDFE 0%,#F4F6FA 100%);
  border-radius:20px; padding:26px 26px 28px; box-shadow:var(--ombre-carte);
}
.bloc-info h2{ font-size:19px; font-weight:700; margin-bottom:12px; }
.bloc-info p, .bloc-info a{ font-size:15.5px; color:var(--corps); }
.bloc-info .gros{ font-family:'Satoshi',sans-serif; font-weight:700; font-size:21px; color:var(--ink); }


.ct-rdv{ padding:0 0 70px; scroll-margin-top:100px; }
.ct-rdv .carte{
  background:#fff; border-radius:26px; padding:44px 40px 40px; text-align:center;
  box-shadow:0 26px 60px -44px rgba(11,23,46,.3);
}
.ct-rdv .h2{ margin-bottom:14px; }
.ct-rdv .intro{ max-width:620px; margin:0 auto 30px; font-size:17px; line-height:1.5; color:var(--corps); }
.ct-rdv iframe{ display:block; width:100%; height:700px; border:0; border-radius:18px; background:#fff; }


.texte-corps{ max-width:820px; padding-bottom:80px; }
.texte-corps h2{ font-size:26px; font-weight:700; margin:36px 0 14px; }
.texte-corps h3{ font-size:20px; font-weight:700; margin:26px 0 10px; }
.texte-corps p{ margin:0 0 16px; font-size:17px; }
.texte-corps ul{ margin:0 0 18px; }
.texte-corps ul li{ position:relative; padding-left:26px; margin-bottom:8px; font-size:17px; }
.texte-corps ul li::before{ content:""; position:absolute; left:0; top:10px; width:8px; height:8px; border-radius:50%; background:var(--accent); }
.texte-corps table{ width:100%; border-collapse:collapse; margin:0 0 22px; font-size:16px; }
.texte-corps th, .texte-corps td{ border:1px solid var(--ligne); padding:12px 14px; text-align:left; }
.texte-corps th{ background:var(--brume); font-family:'Satoshi',sans-serif; }




.gabarit-cortexia{ --accent:#A787D0; --accent-vif:#B2A1DF; --accent-voile:#F3EDFA; }

.ia-heros{ position:relative; overflow:hidden; padding:52px 0 74px;
  background:linear-gradient(31deg,#DCCBF2 0%,#C9AAF2 22%,#D4C7E5 66%,#EEE4FB 98%); }

.ia-heros-grille{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.02fr); gap:38px; align-items:start; }
.ia-heros{ padding-top:210px; }
@media (max-width:1080px){ .ia-heros{ padding-top:34px; } }
.ia-heros h1{ font-size:clamp(34px,4.2vw,58px); font-weight:700; line-height:1.06; color:#fff;
  font-family:'Satoshi',sans-serif; }
.ia-heros .chapo{ margin-top:26px; font-size:20px; line-height:1.2; color:#A787D0; font-weight:600; max-width:32em; }
.ia-heros .actions{ display:flex; gap:16px; margin-top:32px; flex-wrap:wrap; }

.ia-heros .actions .btn{ height:51px; padding:0 26px; border-radius:24px; font-size:16px; }
.ia-heros .actions .btn-contour{ height:49px; }



.ia-heros .visuel{ margin-left:-26px; margin-right:-75px; }
.ia-heros .visuel img{ width:100%; height:auto; display:block;
  border-radius:14px; box-shadow:0 30px 70px -34px rgba(11,23,46,.34); }

.ia-etapes{ padding:70px 0 78px; }
.ia-etapes .h2{ text-align:center; margin-bottom:48px; }
.ia-etapes-grille{ display:grid; grid-template-columns:repeat(3,1fr); gap:56px; align-items:start; }
.ia-etape .rang{
  display:flex; align-items:center; gap:14px;
  font-family:'Satoshi',sans-serif; font-weight:700; font-size:19px; color:var(--nuit);
  margin-bottom:26px;
}
.ia-etape .rang span{
  flex:none; width:52px; height:52px; border-radius:50%;
  border:1.6px solid var(--accent); color:var(--accent);
  display:flex; align-items:center; justify-content:center;
  font-size:24px; font-weight:700;
}
.ia-etape .carte{
  position:relative; background:#fff; border-radius:20px; padding:26px 24px; min-height:300px;
  box-shadow:0 24px 54px -34px rgba(11,23,46,.3);
}

.ia-etape .rang span::after{
  content:""; position:absolute; margin-top:78px; width:1.6px; height:44px; background:var(--accent);
}.ia-etapes-grille > .ia-etape + :where(.vv-w) > .ia-etape .carte::before,.ia-etapes-grille > :where(.vv-w):has(> .ia-etape) + :where(.vv-w) > .ia-etape .carte::before,.ia-etapes-grille > .ia-etape + .ia-etape .carte::before,.ia-etapes-grille > :where(.vv-w):has(> .ia-etape) + .ia-etape .carte::before,.ia-etapes-grille > :where(.vv-w) > :where(.vv-w):has(> .ia-etape) + .ia-etape .carte::before,.ia-etapes-grille > :where(.vv-w) > .ia-etape + :where(.vv-w) > .ia-etape .carte::before,.ia-etapes-grille > :where(.vv-w) > :where(.vv-w):has(> .ia-etape) + :where(.vv-w) > .ia-etape .carte::before,.ia-etapes-grille > :where(.vv-w) > .ia-etape + .ia-etape .carte::before{
  content:""; position:absolute; left:-40px; top:50%; width:24px; height:1.6px; background:var(--accent);
}.ia-etapes-grille > :where(.vv-w):has(> .ia-etape) + .ia-etape .carte::after,.ia-etapes-grille > .ia-etape + .ia-etape .carte::after,.ia-etapes-grille > .ia-etape + :where(.vv-w) > .ia-etape .carte::after,.ia-etapes-grille > :where(.vv-w):has(> .ia-etape) + :where(.vv-w) > .ia-etape .carte::after,.ia-etapes-grille > :where(.vv-w) > :where(.vv-w):has(> .ia-etape) + .ia-etape .carte::after,.ia-etapes-grille > :where(.vv-w) > .ia-etape + :where(.vv-w) > .ia-etape .carte::after,.ia-etapes-grille > :where(.vv-w) > :where(.vv-w):has(> .ia-etape) + :where(.vv-w) > .ia-etape .carte::after,.ia-etapes-grille > :where(.vv-w) > .ia-etape + .ia-etape .carte::after{
  content:""; position:absolute; left:-20px; top:50%; width:8px; height:8px; margin-top:-3.2px;
  border-radius:50%; background:var(--accent);
}
.ia-etape:first-child .carte{ display:flex; align-items:center; justify-content:center; }
.ia-etape .formats{ display:flex; gap:14px; justify-content:center; width:100%; }

.ia-etape .fichier{ flex:none; display:flex; align-items:center; justify-content:center; }
.ia-etape .fichier img{ display:block; width:76px; height:76px; object-fit:contain; }
.ia-etape .ia-libelle{ font-family:'Satoshi',sans-serif; font-weight:700; font-size:17px; color:var(--ink); margin-top:14px; }
.ia-etape .ia-valeur{
  margin-top:10px; padding:14px 16px; border-radius:10px; background:#F5F7FB;
  display:flex; align-items:center; justify-content:space-between; gap:12px;
  font-size:15px; color:var(--corps);
}
.ia-etape .chevron{
  width:9px; height:9px; border-right:1.8px solid #9AA6BC; border-bottom:1.8px solid #9AA6BC;
  transform:rotate(45deg) translateY(-3px);
}
.ia-etape .jauge{ display:flex; gap:5px; }
.ia-etape .jauge i{ width:22px; height:11px; border-radius:2px; background:#DDE3ED; display:block; }
.ia-etape .jauge i.on{ background:#0161D8; }
.ia-etape .question{ font-family:'Satoshi',sans-serif; font-weight:700; font-size:16.5px; line-height:1.35; color:var(--ink); }
.ia-etape .reponses{ margin-top:18px; display:flex; flex-direction:column; gap:8px; }
.ia-etape .reponses li{
  display:flex; align-items:center; gap:12px; padding:9px 12px; border-radius:9px;
  font-size:15px; color:var(--corps);
}
.ia-etape .reponses li b{
  flex:none; width:26px; height:26px; border-radius:50%; background:#F0F3F8; color:var(--corps);
  display:flex; align-items:center; justify-content:center; font-weight:600; font-size:13.5px;
}
.ia-etape .reponses li.juste{ background:#E4F4F0; color:#0E7C63; }
.ia-etape .reponses li.juste b{ background:#CDEBE2; color:#0E7C63; }

.ia-exigences{ padding:16px 0 78px; }
.ia-exigences-grille{ display:grid; grid-template-columns:minmax(0,.62fr) minmax(0,1fr); gap:40px; align-items:center; }
.ia-exigences h2{ font-size:clamp(24px,2.3vw,32px); font-weight:700; color:var(--nuit); line-height:1.194; }
.ia-exigences .mentions{ display:flex; flex-direction:column; gap:26px; }

.ia-exigences .mentions li{ font-family:'Satoshi',sans-serif; font-weight:700; font-size:clamp(19px,2vw,26px); }
.ia-exigences .mentions li:nth-child(1){ margin-left:2%; }
.ia-exigences .mentions li:nth-child(2){ margin-left:8%; }
.ia-exigences .mentions li:nth-child(3){ margin-left:0; }
.ia-exigences .mentions li:nth-child(4){ margin-left:4%; }
.ia-exigences .mentions .bleu{ color:#0161D8; }
.ia-exigences .mentions .teal{ color:#028D9D; }
.ia-exigences .mentions .violet{ color:#B2A1DF; }
.ia-exigences .mentions .rose{ color:#FE2977; }

.ia-partage{ background:var(--brume); padding:70px 0; }
.ia-partage-grille{ display:grid; grid-template-columns:minmax(0,1.28fr) minmax(0,1fr); gap:52px; align-items:center; }
.carte-biblio{ background:#fff; border-radius:18px; padding:26px 28px 30px; box-shadow:0 26px 60px -38px rgba(11,23,46,.32); }
.carte-biblio .entete{ display:flex; align-items:center; gap:12px; padding-bottom:18px; border-bottom:1px solid var(--ligne); }
.carte-biblio .titre{ font-family:'Satoshi',sans-serif; font-weight:700; font-size:19px; margin-right:auto; }
.carte-biblio .btn-mini{ background:var(--accent); color:#fff; border-radius:9px; padding:9px 16px; font-size:14px; font-weight:600; }
.carte-biblio .btn-mini.rond{ padding:9px 12px; }
.carte-biblio table{ width:100%; border-collapse:collapse; margin-top:8px; }
.carte-biblio th{ text-align:left; font-family:'Satoshi',sans-serif; font-weight:700; font-size:15px; color:var(--ink); padding:14px 8px; }
.carte-biblio td{ padding:14px 8px; font-family:'Satoshi',sans-serif; font-weight:700; font-size:15px; color:var(--ink); }
.carte-biblio .barre{ display:block; width:140px; height:14px; border-radius:7px; background:#EDEFF3; }
.carte-biblio .etat{ display:inline-block; padding:8px 18px; border-radius:8px; font-size:14.5px; font-weight:700; }
.carte-biblio .etat.relire{ background:#FDECE8; color:#D2563F; border:1px solid #F3C3B6; }
.carte-biblio .etat.validee{ background:#E4F4F0; color:#0E7C63; border:1px solid #BEE3D8; }
.carte-biblio .etat.partagee{ background:#E8EEFA; color:#0161D8; border:1px solid #C3D2EE; }
.ia-partage .texte{ text-align:right; }
.ia-partage .texte h2{ font-size:clamp(24px,2.3vw,32px); font-weight:700; line-height:1.194; color:var(--nuit); }
.ia-partage .texte p{ margin-top:20px; font-size:16.5px; line-height:1.5; color:var(--corps); }


.ia-atouts{
  display:flex; justify-content:center; gap:32px; flex-wrap:wrap;
  padding:46px 0 0;
}
.ia-atouts li{ display:flex; align-items:center; gap:0; }
.ia-atouts .ico{
  flex:none; width:82px; height:82px; display:flex; align-items:center; justify-content:center;
  color:var(--accent);
}
.ia-atouts .ico svg{ width:52px; height:52px; }
.ia-atouts b{
  font-family:'Satoshi',sans-serif; font-weight:700; font-size:24px; line-height:1.35;
  color:#101828;
}


.ia-credits{ padding:76px 0 82px; }
.ia-credits .carte{
  margin:0 -20px; border-radius:8px; padding:34px 44px;
  background:linear-gradient(61deg,#DCCBF2 0%,#C9AAF2 22%,#D4C7E5 66%,#EEE4FB 98%);
  display:grid; grid-template-columns:minmax(0,266px) 2px 171px minmax(0,1fr);
  gap:38px; align-items:center; min-height:265px;
}
.ia-credits .titre{
  font-family:'Satoshi',sans-serif; font-weight:700; font-size:32px; line-height:1.35; color:#fff;
}
.ia-credits .titre em{ font-style:normal; color:#FE2977; }
.ia-credits .mention{ margin-top:24px; font-size:20px; line-height:1.2; font-weight:600; color:#fff; }

.ia-credits .sep{ width:2px; height:188px; background:#D9D9D9; border-radius:2px; justify-self:center; }
.ia-credits .anneau{ position:relative; width:171px; height:171px; justify-self:center; }
.ia-credits .anneau svg{ position:absolute; inset:0; width:100%; height:100%; }
.ia-credits .compteur{
  position:absolute; inset:0; display:flex; flex-direction:column;
  align-items:center; justify-content:center; text-align:center;
  font-family:'Satoshi',sans-serif; font-weight:700; font-size:32px; line-height:1.15; color:#fff;
}
.ia-credits .droite{ display:flex; flex-direction:column; align-items:flex-end; gap:26px; }
.ia-credits .paliers{ display:flex; align-items:flex-end; gap:58px; }
.ia-credits .paliers li{ display:flex; flex-direction:column; align-items:center; gap:10px; color:#fff; }
.ia-credits .paliers .ico{ width:77px; height:77px; display:flex; align-items:flex-end; justify-content:center; }
.ia-credits .paliers .ico svg{ width:100%; height:auto; }
.ia-credits .paliers span{ font-size:16px; font-weight:600; line-height:1.2; text-align:center; max-width:131px; }

.ia-credits .btn-plan{
  min-width:263px; height:59px; border-radius:24px; border:3px solid #A787D0; background:#fff;
  color:#A787D0; font-family:'Satoshi',sans-serif; font-weight:700; font-size:20px; line-height:1.35;
  display:inline-flex; align-items:center; justify-content:center;
}
.ia-credits .btn-plan:hover{ background:#A787D0; color:#fff; }

.cortex-atouts{ display:grid; grid-template-columns:repeat(4,1fr); gap:24px; padding:12px 0 78px; }
.atout{
  background:#fff; border-radius:20px; padding:28px 26px 30px; box-shadow:var(--ombre-carte);
  display:flex; flex-direction:column; gap:12px;
}
.atout .ico{
  width:52px; height:52px; border-radius:16px; display:flex; align-items:center; justify-content:center;
  background:linear-gradient(150deg,#FFE3EF,#DEE8FB); color:#B24AD6;
}
.atout .ico svg{ width:28px; height:28px; }
.atout h2{ font-size:19px; font-weight:700; }
.atout p{ font-size:15.5px; color:var(--corps); }
.cortex-ecran-bloc{ display:grid; grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr); gap:44px; align-items:center; padding:0 0 84px; }
.cortex-ecran-bloc .visuel{ aspect-ratio:1100/716; border-radius:20px; background:#F3F5FA center/cover no-repeat; box-shadow:var(--ombre-carte); }



.cand-blocs{ display:grid; grid-template-columns:repeat(3,1fr); gap:26px; padding:6px 0 40px; }
.cand-bloc{
  background:linear-gradient(180deg,#FDFDFE 0%,#F4F6FA 100%); border-radius:20px;
  padding:28px 28px 30px; box-shadow:var(--ombre-carte); display:flex; flex-direction:column; gap:12px;
  transition:transform .15s ease, box-shadow .15s ease;
}
.cand-bloc:hover{ transform:translateY(-2px); box-shadow:0 22px 50px -26px rgba(11,23,46,.36), 0 2px 6px rgba(11,23,46,.05); }
.cand-bloc .ico{ width:50px; height:50px; color:var(--accent); }
.cand-bloc h2{ font-size:19px; font-weight:700; }
.cand-bloc p{ font-size:15.5px; color:var(--corps); }
.cand-bloc .lien{
  margin-top:auto; padding-top:8px; display:inline-flex; align-items:center; gap:8px;
  font-family:'Satoshi',sans-serif; font-weight:700; font-size:14.5px; color:var(--accent);
}
.cand-bloc .lien::after{ content:"\2192"; display:inline-block; transition:transform .2s ease; }
.cand-bloc:hover .lien::after{ transform:translateX(3px); }


.cand-section{ padding:44px 0; scroll-margin-top:100px; }.cand-section > .boite > .surtitre,.cand-section > .boite > :where(.vv-w) > .surtitre,.cand-section > :where(.vv-w) > .boite > .surtitre,.cand-section > :where(.vv-w) > .boite > :where(.vv-w) > .surtitre,.cand-section > .boite > .h2,.cand-section > .boite > :where(.vv-w) > .h2,.cand-section > :where(.vv-w) > .boite > .h2,.cand-section > :where(.vv-w) > .boite > :where(.vv-w) > .h2,.cand-section > .boite > .cand-intro,.cand-section > .boite > :where(.vv-w) > .cand-intro,.cand-section > :where(.vv-w) > .boite > .cand-intro,.cand-section > :where(.vv-w) > .boite > :where(.vv-w) > .cand-intro,.cand-titre-blocs{ text-align:center; }.cand-section > .boite > .surtitre,.cand-section > .boite > :where(.vv-w) > .surtitre,.cand-section > :where(.vv-w) > .boite > .surtitre,.cand-section > :where(.vv-w) > .boite > :where(.vv-w) > .surtitre{ display:block; }.cand-section > .boite > .cand-intro,.cand-section > .boite > :where(.vv-w) > .cand-intro,.cand-section > :where(.vv-w) > .boite > .cand-intro,.cand-section > :where(.vv-w) > .boite > :where(.vv-w) > .cand-intro{ margin-left:auto; margin-right:auto; }:where(.vv-w):has(> .cand-section) + :where(.vv-w) > .cand-section,.cand-section + .cand-section,:where(.vv-w):has(> .cand-section) + .cand-section,.cand-section + :where(.vv-w) > .cand-section{ border-top:1px solid var(--ligne); }
.cand-section .h2{ margin-bottom:22px; }
.cand-intro{ max-width:640px; font-size:17px; color:var(--corps); margin-bottom:28px; }
.sol-faq{ scroll-margin-top:100px; }


.cand-checks{ display:grid; grid-template-columns:1fr 1fr; gap:14px 40px; max-width:1000px; }
.cand-checks li{ display:flex; align-items:flex-start; gap:14px; font-size:16.5px; color:var(--ink); }

.cand-checks .case{
  flex:none; width:22px; height:22px; margin-top:3px; border-radius:6px;
  border:1.6px solid var(--accent);
  background:var(--accent) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E") center/13px no-repeat;
}


.cand-titre-blocs{ margin:34px 0 22px; }
.cand-etapes{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:34px; }
.cand-etape .num{
  width:34px; height:34px; margin-bottom:12px; border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  font-family:'Satoshi',sans-serif; font-weight:700; font-size:17px;
  color:#fff; background:var(--accent);
}
.cand-etape h3{ font-size:18px; font-weight:700; margin-bottom:14px; }
.cand-etape .cand-checks{ grid-template-columns:minmax(0,1fr); gap:16px; }
.cand-etape .cand-checks li{ font-size:15.5px; }
.cand-etape .cand-checks b{ display:block; font-weight:700; color:var(--ink); margin-bottom:3px; }
.cand-etape .cand-checks span span{ color:var(--corps); }
.cand-checklist-action{ margin-top:34px; }
.cand-avertissement{
  max-width:820px; margin:30px auto 0; font-size:14.5px; color:var(--corps);
}


.cand-colonnes{ display:grid; grid-template-columns:repeat(3,1fr); gap:34px; }
.cand-colonnes h3{ font-size:18px; font-weight:700; margin-bottom:10px; }
.cand-colonnes p{ font-size:16px; color:var(--corps); }


.cand-texte{ max-width:760px; display:flex; flex-direction:column; gap:16px; }
.cand-texte p{ font-size:16.5px; color:var(--corps); }
.cand-lien{
  align-self:flex-start; margin-top:6px; display:inline-flex; align-items:center; gap:8px;
  font-family:'Satoshi',sans-serif; font-weight:700; font-size:15px; color:var(--accent);
}
.cand-lien::after{ content:"\2192"; display:inline-block; transition:transform .2s ease; }
.cand-lien:hover::after{ transform:translateX(3px); }


.cand-choix{ display:flex; align-items:center; gap:14px; flex-wrap:wrap; margin-bottom:26px; font-size:17px; color:var(--ink); }
.cand-choix select{
  font:inherit; font-family:'Satoshi',sans-serif; font-weight:700; font-size:16px; color:var(--ink);
  min-width:220px; height:48px; padding:0 44px 0 18px; border-radius:24px;
  border:1.6px solid #D8DEE8; background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230B172E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") right 16px center/16px no-repeat;
  appearance:none; cursor:pointer;
}
.cand-choix select:focus{ outline:2px solid var(--accent); outline-offset:2px; }
.cand-centre{
  background:linear-gradient(180deg,#FDFDFE 0%,#F4F6FA 100%); border-radius:20px;
  padding:30px 32px 32px; box-shadow:var(--ombre-carte);
  
  display:grid; grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);
  gap:26px 30px; align-items:start;
}
.cand-centre:not(:has(.cand-plan)){ display:block; }

.cand-centre[hidden]{ display:none; }
.cand-plan{
  grid-row:1 / span 2; border-radius:16px; overflow:hidden;
  background:var(--accent-voile); aspect-ratio:818 / 460; min-height:260px;
  
  min-width:0; max-width:100%;
}
.cand-plan iframe{ display:block; width:100%; max-width:100%; height:100%; border:0; }.cand-centre + .cand-centre,.cand-centre + :where(.vv-w) > .cand-centre,:where(.vv-w):has(> .cand-centre) + :where(.vv-w) > .cand-centre,:where(.vv-w):has(> .cand-centre) + .cand-centre{ margin-top:22px; }
.cand-centre-tete{ display:flex; align-items:center; justify-content:space-between; gap:24px; flex-wrap:wrap; }
.cand-centre h3{ font-size:20px; font-weight:700; margin-bottom:6px; }
.cand-centre .adresse{ font-size:16px; color:var(--corps); }
.cand-centre .a-completer{ font-size:13.5px; color:var(--sourdine); font-style:italic; }
.cand-centre .btn{ padding:14px 22px; font-size:14.5px; }

.cand-itineraires{ display:flex; align-items:center; gap:18px; flex-wrap:wrap; }
.cand-itineraires .lien-plan{
  font-size:14.5px; font-weight:600; color:var(--accent);
  border-bottom:1px solid currentColor; padding-bottom:1px;
}
.cand-itineraires .lien-plan:hover{ color:var(--ink); }

.cand-acces{ margin:0; padding:0; list-style:none; display:flex; flex-direction:column; gap:8px; }
.cand-acces li{ position:relative; padding-left:18px; font-size:15.5px; line-height:1.45; color:var(--corps); }
.cand-acces li::before{
  content:""; position:absolute; left:0; top:.62em;
  width:7px; height:7px; border-radius:50%; background:var(--rose);
}

.cand-avis{
  margin-top:20px; padding:14px 18px; border-radius:12px;
  background:var(--accent-voile); color:var(--ink);
  font-size:15px; line-height:1.45;
}
.cand-marge{ margin-top:22px; font-size:14.5px; line-height:1.45; color:var(--sourdine); }

.cand-centre-infos{
  display:grid; grid-template-columns:1fr 1fr; gap:32px;
  margin-top:26px; padding-top:24px; border-top:1px solid var(--ligne);
}
.cand-centre h4{ font-size:15.5px; font-weight:700; margin-bottom:8px; }
.cand-centre-infos p{ font-size:15.5px; color:var(--corps); }



.cand-alentours{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:48px; }

.cand-groupe{ position:relative; text-align:center; min-width:0; }
.cand-groupe .ic{ margin:0 auto 8px; }

.cand-visuel{ margin:0 0 18px; border-radius:18px; overflow:hidden; }
.cand-visuel img{ display:block; width:100%; height:auto; aspect-ratio:555 / 274; object-fit:cover; }
.cand-groupe-action{ margin-top:16px; }

.cand-recherche{
  display:flex; gap:12px; max-width:700px; margin:0 auto 38px; flex-wrap:wrap;
}
.cand-recherche .cand-lieu{
  flex:1 1 320px; min-width:0; padding:15px 20px; font:inherit; font-size:16px;
  color:var(--ink); background:#fff; border:1.4px solid var(--ligne); border-radius:999px;
}
.cand-recherche .cand-lieu::placeholder{ color:var(--sourdine); }
.cand-recherche .cand-lieu:focus-visible{ outline:2px solid var(--accent); outline-offset:2px; }
.cand-recherche .btn{ flex:none; }
.cand-groupe .ic img{ display:block; width:88px; height:88px; object-fit:contain; margin:0 auto; }
.cand-groupe h3{ font-family:'Satoshi',sans-serif; font-weight:700; font-size:26px; color:var(--nuit); }
.cand-groupe .accroche{ margin:10px auto 22px; max-width:340px; font-size:16px; line-height:1.4; color:var(--corps); }
.cand-groupe .piste{
  display:flex; overflow-x:auto; scroll-snap-type:x mandatory;
  scroll-behavior:smooth; padding:8px 0 20px; margin-top:-8px;
  scrollbar-width:none; -webkit-overflow-scrolling:touch;
}
.cand-groupe .piste::-webkit-scrollbar{ display:none; }
.cand-groupe .piste:focus-visible{ outline:2px solid var(--accent); outline-offset:4px; border-radius:18px; }

.cand-carte{
  flex:none; width:100%; scroll-snap-align:start; text-align:left;
  background:#fff; border-radius:18px; box-shadow:var(--ombre-carte);
  padding:24px 24px 26px; display:flex; flex-direction:column; gap:10px; min-height:168px;
}
.cand-carte h4{ font-family:'Satoshi',sans-serif; font-size:17px; font-weight:700; color:var(--ink); }
.cand-carte p{ font-size:15px; color:var(--corps); }
.cand-carte .detail{ margin-top:auto; padding-top:6px; font-size:13.5px; color:var(--sourdine); }
.cand-groupe .fleches{ display:flex; gap:12px; justify-content:center; margin-top:4px; }
.cand-groupe .fleches button{
  width:44px; height:44px; border-radius:50%; background:#fff; border:1.6px solid var(--ligne);
  display:flex; align-items:center; justify-content:center; font-size:20px; line-height:1; color:var(--ink);
  box-shadow:0 2px 6px rgba(11,23,46,.05);
  transition:border-color .15s ease, transform .15s ease, opacity .15s ease;
}
.cand-groupe .fleches button:hover{ border-color:var(--nuit); transform:translateY(-1px); }
.cand-groupe .fleches button:disabled{ opacity:.35; cursor:default; transform:none; border-color:var(--ligne); }
.cand-groupe .fleches button:focus-visible{ outline:2px solid var(--accent); outline-offset:2px; }
.cand-partenaires{ margin-top:34px; text-align:center; font-size:14.5px; color:var(--sourdine); }


@media (max-width:1080px){
  .res-heros{ grid-template-columns:1fr; }
  .res-heros .texte{ padding:56px 0 36px; }
  .res-heros h1{ white-space:normal; }
  .res-vague{ min-height:240px; }
  .res-filtres{ position:static; }
  .res-corps{ grid-template-columns:1fr; }
  .res-grille{ grid-template-columns:1fr 1fr; }
  .res-aside{ position:static; }
  .art-corps{ grid-template-columns:1fr; }
  .art-aside{ position:static; }
  .metiers-grille{ grid-template-columns:1fr 1fr; }
  
  .ct-grille{ grid-template-columns:1fr; gap:32px; }
  .ct-cote,
  .ct-carte{ min-width:0; }
  
  .ct-carte{ padding:26px 20px 30px; }
  .ct-duo{ grid-template-columns:1fr; }
  .ct-bloc legend{ flex-wrap:wrap; font-size:18px; }
  .ct-facultatif{ margin-left:0; }
  .ct-heros h1,
  .ct-cote h2{ font-size:clamp(30px,8vw,44px); }
  .ct-univers{ grid-template-columns:1fr; }
  .ct-heros{ padding:34px 0 60px; }
  .ct-mains .carte{ padding:32px 22px 36px; }
  .infolettre .carte{ grid-template-columns:1fr; padding:34px 26px; }
  
  .infolettre h2{ font-size:24px; }
  .infolettre h2 br{ display:none; }
  
  .infolettre form{ flex-direction:column; gap:8px; border-radius:22px; padding:8px; }
  .infolettre input[type=email], .infolettre form .btn{ width:100%; }
  
  .ia-heros-grille{ grid-template-columns:1fr; }
  .ia-heros .visuel{ margin-right:0; }
  .ia-etapes-grille{ grid-template-columns:1fr; gap:34px; }
  .ia-exigences-grille{ grid-template-columns:1fr; }
  .ia-partage-grille{ grid-template-columns:1fr; }
  .ia-partage .texte{ text-align:left; }
  .carte-biblio{ overflow-x:auto; }
  .ia-atouts{ gap:18px; }
  .ia-credits{ padding:44px 0; }
  .ia-credits .carte{ grid-template-columns:1fr; margin:0; padding:28px 22px; min-height:0; gap:24px; }
  .ia-credits .sep{ display:none; }
  .ia-credits .anneau{ justify-self:start; }
  .ia-credits .droite{ align-items:flex-start; }
  .ia-credits .paliers{ gap:26px; flex-wrap:wrap; }
  .cortex-atouts{ grid-template-columns:1fr 1fr; }
  .cortex-ecran-bloc{ grid-template-columns:1fr; }
  .cand-blocs{ grid-template-columns:1fr; }
  .cand-section{ padding:36px 0; }
  .cand-checks{ grid-template-columns:1fr; }
  .cand-etapes{ grid-template-columns:minmax(0,1fr); gap:30px; }
  .cand-colonnes{ grid-template-columns:1fr; gap:24px; }
  .cand-choix{ align-items:stretch; flex-direction:column; gap:10px; }
  .cand-choix select{ width:100%; }
  .cand-centre{ padding:24px 22px 26px; grid-template-columns:minmax(0,1fr); }
  .cand-plan{ grid-row:auto; min-height:220px; }
  .cand-centre-infos{ grid-template-columns:1fr; gap:20px; }
  .cand-alentours{ grid-template-columns:minmax(0,1fr); gap:40px; }
  .cand-recherche{ margin-bottom:30px; }
  .cand-recherche .btn{ flex:1 1 100%; }
  .ct-rdv .carte{ padding:32px 22px 36px; }
  .ct-rdv iframe{ height:640px; }
}
@media (max-width:640px){
  .res-grille{ grid-template-columns:1fr; }
  .metiers-grille{ grid-template-columns:1fr; }
  .cortex-atouts{ grid-template-columns:1fr; }
  .formulaire{ padding:26px 22px; }
  .formulaire .duo{ grid-template-columns:1fr; }
}


.art-suite{ max-width:1180px; margin:0 auto; padding:0 24px 60px; }
.art-suite-lien{
  display:flex; flex-direction:column; gap:6px; padding:26px 30px;
  border-top:2px solid var(--accent); border-radius:0 0 18px 18px;
  background:linear-gradient(180deg,#FFFFFF 0%,#F4F6FA 100%);
}
.art-suite-lien span{ font-size:13px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:var(--accent); }
.art-suite-lien b{ font-family:'Satoshi',sans-serif; font-size:22px; line-height:1.3; color:var(--ink); }
.art-suite-lien:hover b{ color:var(--accent); }
@media (max-width:760px){
  .art-suite{ padding:0 16px 40px; }
  .art-suite-lien{ padding:20px 18px; }
  .art-suite-lien b{ font-size:19px; }
}


@media (min-width:1100px){
  
  
  .ia-heros{ min-height:868px; padding:210px 0 0; background:linear-gradient(33deg,#DCCBF2 11.4%,#C9AAF2 28.7%,#D4C7E5 63.1%,#EEE4FB 88.4%); }
  .ia-heros-grille{ grid-template-columns:600px 710px; gap:9px; }
  .ia-heros h1{ font-size:72px; line-height:1.08; max-width:600px; }
  .ia-heros .chapo{ margin-top:42px; font-size:20px; line-height:24px; max-width:607px; }
  .ia-heros .actions{ margin-top:50px; gap:12px; }
  .ia-heros .actions .btn{ font-size:14px; padding:0 25px; }
  .ia-heros .visuel{ margin:0; }
  
  .ia-etapes{ padding:77px 0 0; }
  .ia-etapes .h2{ font-size:32px; line-height:43px; margin-bottom:42px; }
  .ia-etapes-grille{ grid-template-columns:repeat(3,374px); gap:69px; margin-left:-14px; }
  .ia-etape .rang{ height:59px; margin-bottom:48px; }
  .ia-etape .carte{ width:374px; min-height:305px; border-radius:28px; border:.5px solid rgba(184,202,233,.34); }
  
  .ia-exigences{ padding:154px 0 0; position:relative; }
  .ia-exigences::before{ content:""; position:absolute; left:-597px; top:-222px; width:1059px; height:706px; background:url('../img/cortexia/bulle.webp') center/contain no-repeat; z-index:0; pointer-events:none; }
  .ia-exigences-grille{ position:relative; z-index:1; grid-template-columns:269px 431px 614px; gap:0 36px; margin-left:-1px; align-items:start; }
  .ia-exigences h2{ font-size:32px; line-height:43px; margin:0; }
  .ia-exigences .mentions{ gap:0; margin-top:11px; text-align:right; }
  .ia-exigences .mentions li{ font-size:24px; line-height:32px; margin-left:0 !important; }
  .ia-exigences .mentions li:nth-child(2){ margin-top:32px; }
  .ia-exigences .mentions li:nth-child(3){ margin-top:78px; }
  .ia-exigences .mentions li:nth-child(4){ margin-top:43px; }
  .ia-exigences .mentions .bleu{ color:rgba(55,105,193,.77); }
  .ia-exigences .mentions .teal{ color:rgba(7,144,140,.77); }
  .ia-exigences .mentions .violet{ color:#B2A1DF; }
  .ia-exigences .mentions .rose{ color:rgba(255,0,102,.77); }
  .ia-exigences .flux{ margin-top:-26px; }
  .ia-exigences .flux img{ display:block; width:614px; height:345px; }
  
  .ia-partage{ background:rgba(55,105,193,.02); margin-top:-11px; padding:157px 0 79px; }
  .ia-partage-grille{ grid-template-columns:938px 350px; gap:0; margin-left:-42px; align-items:start; }
  .carte-biblio{ min-height:445px; border-radius:21px; padding:43px 24px 45px 43px; box-shadow:none; }
  .carte-biblio .entete{ padding-bottom:22px; }
  .carte-biblio .titre{ font-size:22px; line-height:29px; }
  .carte-biblio .btn-mini{ height:46px; display:inline-flex; align-items:center; font-size:18px; padding:0 24px; border-radius:9px; }
  .carte-biblio .btn-mini.rond{ padding:0 14px; }
  .carte-biblio table{ margin-top:16px; }
  .carte-biblio th{ font-size:18px; line-height:24px; padding:0 8px 35px 0; }
  .carte-biblio td{ font-size:20px; line-height:24px; padding:19px 8px 19px 0; height:84px; box-sizing:border-box; }
  .carte-biblio th:first-child, .carte-biblio td:first-child{ width:319px; }
  .carte-biblio th:nth-child(2), .carte-biblio td:nth-child(2){ width:217px; }
  .carte-biblio th:nth-child(3), .carte-biblio td:nth-child(3){ width:183px; }
  .carte-biblio .barre{ width:282px; height:30px; border-radius:15px; }
  .carte-biblio .etat{ height:46px; width:159px; display:inline-flex; align-items:center; justify-content:center; padding:0; font-size:20px; }
  .ia-partage .texte{ padding-top:27px; }
  .ia-partage .texte h2{ font-size:32px; line-height:43px; }
  .ia-partage .texte p{ font-size:20px; line-height:24px; margin-top:47px; width:302px; margin-left:auto; }.ia-partage .texte :where(.vv-w):has(> p) + :where(.vv-w) > p,.ia-partage .texte :where(.vv-w):has(> p) + p,.ia-partage .texte p + p,.ia-partage .texte p + :where(.vv-w) > p{ margin-top:24px; }
  
  .ia-atouts-bande{ margin-top:-65px; padding:0; position:relative; z-index:1; }
  .ia-atouts{ justify-content:flex-start; gap:31px; padding:0; margin-left:142px; }
  .ia-atouts .ico img{ display:block; width:82px; height:82px; }
  
  .ia-credits{ padding:35px 0 85px; }
  .ia-credits .carte{ margin:0 -22px 0 -42px; min-height:265px; padding:43px 40px 0 88px; grid-template-columns:266px 2px 185px minmax(0,1fr); column-gap:70px; align-items:start; }
  .ia-credits .titre{ margin-top:26px; line-height:43px; text-align:center; }
  .ia-credits .mention{ margin-top:27px; text-align:center; }
  .ia-credits .sep{ height:188px; }
  .ia-credits .anneau{ width:185px; height:171px; }
  .ia-credits .droite{ gap:0; margin-top:-9px; }
  .ia-credits .btn-plan{ margin-right:103px; }
  
  .gabarit-cortexia .appel{ padding:20px 0 10px; }
  .gabarit-cortexia .carte-appel{ grid-template-columns:minmax(0,1fr); gap:0; min-height:326px; padding:39px 52px 32px 502px; overflow:visible; }
  .gabarit-cortexia .carte-appel .visuel.bulle{ position:absolute; left:-289px; top:-16px; width:1013px; height:525px; border-radius:0; background:none; aspect-ratio:auto; z-index:0; pointer-events:none; }
  .gabarit-cortexia .carte-appel .visuel.bulle img{ width:100%; height:100%; display:block; }.gabarit-cortexia .carte-appel > div:not(.visuel),.gabarit-cortexia .carte-appel > :where(.vv-w) > div:not(.visuel){ position:relative; z-index:1; }
  .gabarit-cortexia .carte-appel h2{ font-size:32px; line-height:43px; margin:0; max-width:692px; }
  .gabarit-cortexia .carte-appel p:not(.surtitre){ font-size:20px; line-height:24px; margin:23px 0 0; max-width:610px; }
  .gabarit-cortexia .carte-appel .btn{ margin-top:23px; height:51px; padding:0 25px; font-size:14px; }
  .gabarit-cortexia .pied{ padding:15px 0 51px; border-top:0; }
  .gabarit-cortexia .pied .boite{ grid-template-columns:376px 347px 283px minmax(180px,1fr); padding:0 0 0 84px; }

  
  
  .ct-heros{ padding:83px 0 261px; }
  .ct-heros .vague-fond{ left:-274px; right:auto; bottom:auto; top:-4px; width:1881px; height:709px; object-fit:cover; object-position:0 -127px; opacity:.8; -webkit-mask-image:none; mask-image:none; }
  .ct-heros .chapo{ margin-top:49px; line-height:24px; }
  .ct-grille{ position:relative; grid-template-columns:573px 937px; gap:0; margin-left:12px; padding:0 0 55px; }
  .ct-grille::before{ content:""; position:absolute; left:50%; transform:translateX(-50%); width:100vw; top:0; height:1368px; background:rgba(245,245,245,.3); z-index:-1; }
  .ct-grille::after{ content:""; position:absolute; left:-15px; top:700px; width:1283px; height:330px; background:url('../img/pages/ligne-contact.svg') 0 0/100% 100% no-repeat; z-index:0; pointer-events:none; }
  .ct-cote{ position:relative; z-index:1; padding-top:116px; }
  .ct-cote h2{ font-size:72px; line-height:1.081; }
  .ct-cote .intro{ margin-top:44px; line-height:24px; }
  .ct-promesses{ margin-top:76px; gap:21px; }
  .ct-promesses .ico{ width:109px; height:109px; background:transparent; box-shadow:none; border:.5px solid rgba(184,202,233,.34); }
  .ct-promesses .ico img{ width:69px; height:69px; }
  .ct-promesses b{ line-height:22px; }
  .ct-direct{ margin-top:182px; padding-top:0; border-top:0; margin-left:30px; }
  .ct-direct .tel a{ font-size:36px; line-height:45px; }
  .ct-direct .mail{ margin-top:0; }
  .ct-direct .mail a{ font-size:24px; line-height:45px; }
  
  .ct-carte{ position:relative; z-index:1; margin-top:90px; width:937px; min-height:1307px; padding:47px 235px 25px 57px; border-radius:26px 26px 157px 157px; border:.5px solid rgba(255,165,201,.34); box-shadow:0 4px 4px rgba(0,0,0,.25); }
  .ct-titre{ font-size:36px; line-height:49px; margin-bottom:17px; }
  .ct-form-intro{ margin:0 0 45px; font-size:20px; font-weight:500; line-height:24px; }
  .ct-bloc{ margin:0; }
  .ct-bloc legend{ font-size:24px; line-height:32px; margin-bottom:32px; }:where(.vv-w):has(> .ct-bloc) + .ct-bloc,.ct-bloc + :where(.vv-w) > .ct-bloc,.ct-bloc + .ct-bloc,:where(.vv-w):has(> .ct-bloc) + :where(.vv-w) > .ct-bloc{ margin-top:80px; }.ct-bloc + :where(.vv-w) > .ct-bloc legend,.ct-bloc + .ct-bloc legend,:where(.vv-w):has(> .ct-bloc) + .ct-bloc legend,:where(.vv-w):has(> .ct-bloc) + :where(.vv-w) > .ct-bloc legend{ margin-bottom:11px; }
  .ct-bloc-intro{ margin:0 0 23px; font-size:20px; font-weight:500; line-height:24px; }
  .ct-facultatif{ width:131px; height:40px; display:inline-flex; align-items:center; justify-content:center; font-size:14px; border-radius:27px; background:#f2f2f2; color:#444; margin-left:12px; vertical-align:middle; }
  .ct-duo{ gap:17px; margin-bottom:9px; }.ct-bloc > input,.ct-bloc > :where(.vv-w) > input,.ct-bloc > select,.ct-bloc > :where(.vv-w) > select,.ct-duo > input,.ct-duo > :where(.vv-w) > input{ height:53px; border:1px solid #d9d9d9; border-radius:11px; font-size:20px; font-family:'Satoshi',sans-serif; font-weight:500; padding-left:17px; }.ct-bloc > input,.ct-bloc > :where(.vv-w) > input,.ct-bloc > select,.ct-bloc > :where(.vv-w) > select{ margin-bottom:9px; }.ct-bloc > input,.ct-bloc > :where(.vv-w) > input,.ct-bloc > select,.ct-bloc > :where(.vv-w) > select,.ct-duo > input,.ct-duo > :where(.vv-w) > input{ padding-top:0; padding-bottom:0; line-height:51px; }:where(.vv-w):has(> .ct-bloc) + :where(.vv-w) > .ct-bloc > select,:where(.vv-w):has(> .ct-bloc) + .ct-bloc > select,.ct-bloc + :where(.vv-w) > .ct-bloc > select,.ct-bloc + .ct-bloc > select,:where(.vv-w):has(> .ct-bloc) + :where(.vv-w) > .ct-bloc > :where(.vv-w) > select,.ct-bloc + :where(.vv-w) > .ct-bloc > :where(.vv-w) > select,:where(.vv-w):has(> .ct-bloc) + .ct-bloc > :where(.vv-w) > select,.ct-bloc + .ct-bloc > :where(.vv-w) > select{ margin-bottom:10px; }
  .ct-form ::placeholder, .ct-form select:invalid, .ct-form select:has(option[value=""]:checked){ color:#bcbcbc; }
  .ct-form textarea{ height:91px; border:1px solid #d9d9d9; border-radius:11px; font-size:20px; font-family:'Satoshi',sans-serif; font-weight:500; padding:12px 17px; }
  .ct-form .btn{ margin-top:15px; width:356px; height:54px; padding:0; border-radius:27px; background:#1a2232; font-size:24px; }
  .ct-consent{ margin-top:16px; gap:9px; font-size:16px; font-weight:500; line-height:15px; }
  .ct-consent input{ width:19px; height:19px; margin-top:0; border-radius:3px; }
  .ct-rgpd{ margin-top:15px; font-size:16px; font-weight:500; line-height:15px; padding-left:28px; }
  .ct-rgpd a{ color:#2d73ff; text-decoration:underline dotted; }
  
  .ct-mains{ padding:0 0 16px; }
  .ct-mains .carte{ margin-left:2px; width:1255px; min-height:370px; padding:43px 0 0; border-radius:28px; background:#fff; border:.5px solid rgba(255,165,201,.34); box-shadow:0 4px 4px rgba(0,0,0,.25); }
  .ct-mains h2{ font-size:36px; line-height:49px; margin-bottom:98px; }
  .ct-univers{ grid-template-columns:429px 362px minmax(0,1fr); margin-left:-12px; position:relative; }.ct-univers > div,.ct-univers > :where(.vv-w) > div{ position:relative; padding:0 0 0 204px; border:0; display:block; text-align:left; min-height:140px; }.ct-univers > div:nth-child(2),.ct-univers > :where(.vv-w:nth-child(2)) > div:nth-child(2){ padding-left:200px; }.ct-univers > div:nth-child(3),.ct-univers > :where(.vv-w:nth-child(3)) > div:nth-child(3){ padding-left:200px; }
  .ct-univers .logo{ position:absolute; left:0; top:-75px; width:281px; height:211px; }.ct-univers > div:nth-child(2) .logo,.ct-univers > :where(.vv-w:nth-child(2)) > div:nth-child(2) .logo{ top:-67px; }.ct-univers > div:nth-child(3) .logo,.ct-univers > :where(.vv-w:nth-child(3)) > div:nth-child(3) .logo{ top:-68px; }
  .ct-univers .logo img{ width:281px; height:211px; }
  .ct-univers .nom{ font-size:24px; line-height:32px; letter-spacing:0; }
  .ct-univers .nom.rose{ color:#f06; } .ct-univers .nom.teal{ color:#07908c; } .ct-univers .nom.bleu{ color:#3769c1; }.ct-univers > div > :where(.vv-w):has(> p) + :where(.vv-w) > p,.ct-univers > div > :where(.vv-w):has(> p) + p,.ct-univers > div > p + :where(.vv-w) > p,.ct-univers > div > p + p,.ct-univers > div > :where(.vv-w) > :where(.vv-w):has(> p) + p,.ct-univers > div > :where(.vv-w) > p + p,.ct-univers > div > :where(.vv-w) > :where(.vv-w):has(> p) + :where(.vv-w) > p,.ct-univers > div > :where(.vv-w) > p + :where(.vv-w) > p,.ct-univers > :where(.vv-w) > div > p + :where(.vv-w) > p,.ct-univers > :where(.vv-w) > div > p + p,.ct-univers > :where(.vv-w) > div > :where(.vv-w):has(> p) + :where(.vv-w) > p,.ct-univers > :where(.vv-w) > div > :where(.vv-w):has(> p) + p,.ct-univers > :where(.vv-w) > div > :where(.vv-w) > p + :where(.vv-w) > p,.ct-univers > :where(.vv-w) > div > :where(.vv-w) > :where(.vv-w):has(> p) + p,.ct-univers > :where(.vv-w) > div > :where(.vv-w) > p + p,.ct-univers > :where(.vv-w) > div > :where(.vv-w) > :where(.vv-w):has(> p) + :where(.vv-w) > p{ margin-top:5px; font-size:20px; font-weight:500; line-height:24px; max-width:229px; }.ct-univers > div:first-child > :where(.vv-w):has(> p) + :where(.vv-w) > p,.ct-univers > div:first-child > p + :where(.vv-w) > p,.ct-univers > div:first-child > :where(.vv-w):has(> p) + p,.ct-univers > div:first-child > p + p,.ct-univers > div:first-child > :where(.vv-w) > :where(.vv-w):has(> p) + :where(.vv-w) > p,.ct-univers > div:first-child > :where(.vv-w) > p + p,.ct-univers > div:first-child > :where(.vv-w) > :where(.vv-w):has(> p) + p,.ct-univers > div:first-child > :where(.vv-w) > p + :where(.vv-w) > p,.ct-univers > :where(.vv-w:first-child) > div:first-child > :where(.vv-w):has(> p) + p,.ct-univers > :where(.vv-w:first-child) > div:first-child > p + p,.ct-univers > :where(.vv-w:first-child) > div:first-child > :where(.vv-w):has(> p) + :where(.vv-w) > p,.ct-univers > :where(.vv-w:first-child) > div:first-child > p + :where(.vv-w) > p,.ct-univers > :where(.vv-w:first-child) > div:first-child > :where(.vv-w) > p + :where(.vv-w) > p,.ct-univers > :where(.vv-w:first-child) > div:first-child > :where(.vv-w) > :where(.vv-w):has(> p) + :where(.vv-w) > p,.ct-univers > :where(.vv-w:first-child) > div:first-child > :where(.vv-w) > p + p,.ct-univers > :where(.vv-w:first-child) > div:first-child > :where(.vv-w) > :where(.vv-w):has(> p) + p{ margin-top:17px; }
  .ct-univers::before, .ct-univers::after{ content:""; position:absolute; top:-31px; width:1px; height:136px; background:#e5e7eb; }
  .ct-univers::before{ left:501px; } .ct-univers::after{ left:869px; }
  .gabarit-contact .pied{ padding:15px 0 51px; border-top:0; }
  .gabarit-contact .pied .boite{ grid-template-columns:376px 347px 283px minmax(180px,1fr); padding:0 0 0 73px; }
}
@media (min-width:1100px){
  
  .ia-heros .chapo{ margin-top:25px; }
  .ia-heros .actions .btn-contour{ background:transparent; border:2px solid #A787D0; color:#A787D0; height:49px; padding:0 24px; }
  .ia-heros .actions .btn-contour:hover{ background:#A787D0; border-color:#A787D0; color:#fff; }
  .ia-etape .formats{ gap:29px; justify-content:flex-start; padding-left:16px; }
  .ia-etape .fichier{ position:relative; width:97px; height:130px; flex-direction:column; justify-content:flex-start; padding-top:10px; background:url('../img/cortexia/fichier-fond.svg') center/100% 100% no-repeat; }
  .ia-etape .fichier img{ width:92px; height:92px; }
  .ia-etape .fichier::after{ content:attr(data-libelle); position:absolute; left:0; right:0; top:83px; text-align:center; font-family:'Inter',sans-serif; font-weight:700; font-size:20px; line-height:24px; }
  .ia-etape .fichier.pdf::after{ color:#ff1105; }
  .ia-etape .fichier.docx::after{ color:#0b3898; }
  .ia-etape .fichier.pptx::after{ color:#d64f13; }
  .ia-etape:first-child .carte{ align-items:flex-start; padding-top:69px; }
  .ia-exigences{ padding-top:142px; }
  .ia-partage{ margin-top:-38px; }
  .carte-biblio{ padding-bottom:27px; }
  .carte-biblio th{ padding-bottom:19px; }
  .carte-biblio td{ height:88px; padding:21px 8px 21px 0; }
  .ia-credits .carte{ margin:0 2px 0 -42px; }
  .gabarit-cortexia .carte-appel .btn{ min-width:334px; }
  
  .ct-heros .vague-fond{ max-width:none; }
  .ct-form textarea{ height:91px; min-height:0; }
  .ct-univers .logo{ width:108px; height:108px; left:83px; top:-23px; }.ct-univers > div:nth-child(2) .logo,.ct-univers > :where(.vv-w:nth-child(2)) > div:nth-child(2) .logo{ top:-15px; }.ct-univers > div:nth-child(3) .logo,.ct-univers > :where(.vv-w:nth-child(3)) > div:nth-child(3) .logo{ top:-16px; }
  .ct-univers .logo img{ width:108px; height:108px; object-fit:contain; }
}
@media (min-width:1100px){
  .ia-etape .formats{ padding-left:0; margin-left:-9px; }
  .carte-biblio table{ margin-top:0; }
}


@media (min-width:1100px){
  
  
  .res-heros{ grid-template-columns:560px minmax(0,1fr); }
  .res-heros p{ margin-top:41px; max-width:506px; line-height:24px; }
  .res-filtres .boite{ padding-top:14px; padding-bottom:9px; }
  .res-recherche{ width:556px; height:46px; margin-left:-1px; }:where(.vv-w):has(> .res-barre) + .res-barre,.res-barre + .res-barre,.res-barre + :where(.vv-w) > .res-barre,:where(.vv-w):has(> .res-barre) + :where(.vv-w) > .res-barre{ padding-top:24px; }
  
  .res-corps{ grid-template-columns:1040px 313px; gap:19px; margin-left:-9px; padding:26px 0 54px; }
  .res-grille{ grid-template-columns:repeat(3,334px); gap:22px 19px; }
  .res-carte{ min-height:318px; border-radius:18px; }
  .res-carte .visuel{ aspect-ratio:334/140; }
  .res-carte .corps{ padding:28px 18px 16px; gap:0; }
  .res-carte .type{ margin-bottom:7px; font-size:13px; line-height:20px; }
  .res-carte h3{ font-size:16px; line-height:20px; margin-bottom:3px; }
  .res-carte p{ font-size:14px; line-height:18px; }
  
  .res-carte .duree{ margin-top:auto; padding-top:10px; font-size:13px; line-height:18px; }
  .res-aside{ margin-top:80px; padding:38px 12px 30px 16px; border-radius:18px; }
  .res-aside h2{ font-size:20px; line-height:27px; margin-bottom:12px; }
  .res-aside .item{ grid-template-columns:97px 1fr auto; gap:8px; padding:0 0 24px; }
  .res-aside .item .vign{ aspect-ratio:97/90; border-radius:10px; }
  .res-aside .item .type{ font-size:13px; line-height:20px; }
  .res-aside .item h3{ font-size:15px; line-height:20px; margin-top:2px; }
  .res-aside .item .duree{ font-size:13px; margin-top:8px; }
  .res-aside .item .rang{ font-size:22px; line-height:27px; }
  
  .gabarit-ressources .infolettre, .gabarit-article .infolettre{ padding:0 0 16px; }
  .infolettre .carte{ min-height:219px; margin:0 -9px; padding:42px 48px 24px; border-radius:26px; grid-template-columns:minmax(0,1fr) 590px; gap:0; align-items:start; }
  .gabarit-article .infolettre .carte{ margin:0 -32px 0 -57px; }
  .infolettre h2{ font-size:32px; line-height:43px; }
  .infolettre p{ margin-top:8px; font-size:20px; line-height:24px; max-width:506px; }
  .infolettre form{ padding:0; box-shadow:none; background:transparent; gap:0; max-width:590px; }
  .infolettre input[type=email]{ height:46px; padding:0 28px; border:1px solid #D9D9D9; border-radius:23px 0 0 23px; font-size:16px; }
  .infolettre .btn{ height:46px; padding:0 34px; border-radius:0 23px 23px 0; font-size:16px; }
  .infolettre .mentions{ margin-top:10px; font-size:16px; line-height:18px; padding-left:28px; }
  .res-aside{ position:static; }

  
  
  .art-entete{ padding:9px 32px 0; }
  .art-entete h1{ font-size:72px; line-height:1.08; }
  .art-meta{ margin-top:32px; }
  .art-image{ width:1227px; aspect-ratio:1227/488; margin-top:28px; border-radius:20px; }
  .art-chapo{ margin-top:28px; max-width:1129px; font-family:'Inter',sans-serif; font-size:20px; line-height:24px; color:#0B172E; }
  .art-corps{ grid-template-columns:986px 249px; gap:30px; padding:81px 32px 14px; }
  .art-texte h2{ font-size:32px; line-height:43px; margin:38px 0 16px 24px; }
  .art-texte h2:first-child{ margin-top:0; }
  .art-texte h3{ margin-left:38px; }
  .art-texte p, .art-texte ul{ margin-left:38px; font-family:'Inter',sans-serif; font-size:20px; line-height:24px; color:#0B172E; }
  .art-texte ul li{ font-size:20px; line-height:24px; }
  .art-aide{ margin-left:38px; font-size:20px; line-height:24px; }
  .art-aside{ margin-top:-14px; position:static; }
  .sommaire{ width:249px; padding:25px 10px 24px 51px; border-radius:22px; }
  .sommaire h2{ font-size:20px; line-height:25px; margin-bottom:13px; margin-left:-12px; }
  .sommaire a{ padding:6px 0 6px 12px; font-size:16px; line-height:20px; }

  
  
  .cand-heros{ padding:84px 0 121px; }
  .cand-heros h1{ font-size:72px; line-height:1.08; max-width:566px; }
  .cand-heros .chapo{ margin-top:43px; max-width:556px; line-height:24px; }
  .cand-heros .actions{ margin-top:67px; gap:12px; }
  .cand-heros .actions .btn{ height:51px; padding:0 24px; border-radius:24px; font-size:14px; }
  .cand-heros .actions .btn-nuit{ background:var(--degrade-accent,linear-gradient(144deg,#746DFF 0%,#325DEA 63%)); border-color:transparent; }
  .cand-heros .actions .btn-contour{ height:49px; background:transparent; border:2px solid #325EE2; color:#325EE2; }
  .cand-heros .actions .btn-contour:hover{ background:#325EE2; border-color:#325EE2; color:#fff; }
  .cand-heros .cand-photo{ left:303px; right:auto; top:25px; bottom:auto; width:1140px; height:641px; }
  .cand-heros .cand-photo img{ height:641px; }
  
  .cand-titre-blocs{ font-size:48px; line-height:59px; margin:36px 0 40px; }.cand-section > .boite > .h2,.cand-section > .boite > :where(.vv-w) > .h2,.cand-section > :where(.vv-w) > .boite > .h2,.cand-section > :where(.vv-w) > .boite > :where(.vv-w) > .h2{ font-size:48px; line-height:59px; }
  .cand-section .h2{ margin-bottom:22px; }.cand-section > .boite > .cand-intro,.cand-section > .boite > :where(.vv-w) > .cand-intro,.cand-section > :where(.vv-w) > .boite > .cand-intro,.cand-section > :where(.vv-w) > .boite > :where(.vv-w) > .cand-intro{ font-family:'Inter',sans-serif; font-size:20px; line-height:24px; max-width:577px; }
  
  .cand-etapes{ gap:0; }
  .cand-etape{ padding:0 30px; }:where(.vv-w):has(> .cand-etape) + :where(.vv-w) > .cand-etape,:where(.vv-w):has(> .cand-etape) + .cand-etape,.cand-etape + .cand-etape,.cand-etape + :where(.vv-w) > .cand-etape{ border-left:1px solid var(--ligne); }
  .cand-etape .num{ width:49px; height:49px; font-size:26px; }
  .cand-etape h3{ font-size:20px; line-height:27px; }
  .cand-etape .cand-checks li{ font-size:18px; }
  .cand-checklist-action{ text-align:center; }
  .cand-checklist-action .btn{ height:49px; padding:0 24px; border-radius:24px; font-size:14px; }
  
  
  .cand-centre{ grid-template-columns:554px 554px; gap:20px 30px; background:transparent; box-shadow:none; padding:0; justify-content:center; }
  .cand-plan{ aspect-ratio:554/458; border-radius:24px; }
  .cand-centre-tete, .cand-centre-infos{ background:#fff; border-radius:24px 24px 0 0; padding:29px 38px 0; margin:0; }
  .cand-centre-infos{ border-radius:0 0 24px 24px; padding:20px 38px 40px; border-top:0; grid-template-columns:1fr; gap:24px; }
  .cand-centre-tete{ display:block; }
  .cand-centre h3{ font-size:32px; line-height:41px; margin-bottom:8px; }
  .cand-centre .adresse{ font-size:20px; line-height:22px; }
  .cand-itineraires{ margin-top:22px; }
  .cand-centre .btn{ height:51px; padding:0 24px; border-radius:24px; font-size:14px; }
  .cand-centre h4{ font-size:18px; line-height:22px; }
  .cand-acces li{ font-size:18px; line-height:22px; }
  .cand-marge{ grid-column:1; font-size:20px; line-height:24px; color:var(--ink); margin-top:0; }
  .cand-avis{ grid-column:1 / -1; }
  .cand-recherche{ max-width:700px; gap:0; margin-bottom:32px; }
  .cand-recherche .cand-lieu{ height:51px; border-radius:26px 0 0 26px; padding:0 34px; }
  .cand-recherche .btn{ height:51px; border-radius:0 26px 26px 0; padding:0 28px; }
  .cand-alentours{ grid-template-columns:554px 554px; gap:84px; justify-content:center; }
  .cand-groupe{ background:#fff; border-radius:24px; overflow:hidden; padding-bottom:26px; }
  .cand-visuel{ border-radius:0; margin:0 0 18px; }
  .cand-visuel img{ aspect-ratio:554/274; }
  .cand-groupe h3{ font-size:32px; line-height:41px; }
  .cand-groupe .accroche{ font-size:20px; line-height:22px; max-width:223px; }
  .cand-groupe .piste, .cand-groupe .fleches{ padding-left:24px; padding-right:24px; }
  .cand-partenaires{ margin-top:36px; font-size:20px; line-height:24px; text-align:center; }
  
  .gabarit-candidats .sol-faq{ padding:74px 0 40px; }
  .gabarit-candidats .sol-faq .surtitre{ margin-bottom:21px; }
  .gabarit-candidats .sol-faq h2{ font-size:32px; line-height:43px; margin-bottom:59px; }
  .gabarit-candidats .faq-liste{ gap:14.4px; }.gabarit-candidats .faq-item > button,.gabarit-candidats .faq-item > :where(.vv-w) > button{ min-height:93.6px; }
  .cand-avertissement{ max-width:987px; margin-top:40px; font-size:20px; line-height:24px; text-align:center; }
  .gabarit-candidats .appel{ padding:76px 0 16px; }
  .gabarit-candidats .appel .carte-appel{ min-height:293px; padding-top:20px; padding-bottom:20px; }
  .gabarit-candidats .appel .carte-appel .visuel{ width:266px; height:266px; }
  .gabarit-candidats .appel .carte-appel .surtitre{ display:none; }
  .gabarit-candidats .appel .carte-appel h2{ font-size:32px; line-height:43px; margin:0; }
  .gabarit-candidats .appel .carte-appel p:not(.surtitre){ font-size:20px; line-height:24px; margin:23px 0 0; }
  .gabarit-candidats .appel .carte-appel .btn{ margin-top:35px; height:51px; padding:0 24px; border-radius:24px; font-size:14px; }
  .gabarit-ressources .pied, .gabarit-article .pied, .gabarit-candidats .pied{ padding:15px 0 51px; border-top:0; }
  .gabarit-ressources .pied .boite, .gabarit-article .pied .boite, .gabarit-candidats .pied .boite{ grid-template-columns:376px 347px 283px minmax(180px,1fr); padding:0 0 0 28px; }
  .gabarit-candidats .pied .boite{ padding-left:101px; }
  
  .gabarit-ressources .pied .boite, .gabarit-article .pied .boite{ max-width:1308px; padding-right:0; }
}
@media (min-width:1100px){
  
  .res-heros p{ margin-top:65px; }:where(.vv-w):has(> .res-barre) + .res-barre,.res-barre + .res-barre,.res-barre + :where(.vv-w) > .res-barre,:where(.vv-w):has(> .res-barre) + :where(.vv-w) > .res-barre{ padding-top:40px; }
  .res-corps{ padding-top:20px; }
  .art-corps{ padding-top:32px; }
  .art-aside{ margin-top:72px; }
  .cand-centre{ gap:20px 84px; }
}
@media (min-width:1100px){
  
  .cand-groupe{ border-radius:24px; }
  .gabarit-candidats .cand-groupe .accroche{ margin-bottom:16px; }
  
  .infolettre .mentions{ max-width:500px; font-size:16px; }
}


@media (min-width:1100px){
  .gabarit-legal .heros-simple{ padding:126px 0 0; min-height:478px; background:linear-gradient(185deg,rgba(255,255,255,0) 52%,rgba(246,246,246,.78) 61%,#F4F3F4 70%); }
  .gabarit-legal .heros-simple h1{ font-size:72px; line-height:78px; }
  .gabarit-legal .heros-simple .chapo{ margin-top:41px; font-family:'Inter',sans-serif; font-weight:600; font-size:20px; line-height:24px; color:#101828; }
  .gabarit-legal .texte-corps{ max-width:none; padding:0; }.gabarit-legal .texte-corps > *:not(.maj),.gabarit-legal .texte-corps > :where(.vv-w) > *:not(.maj){ max-width:1139px; margin-left:-22px; }
  .gabarit-legal .texte-corps .maj{ margin:-78px 0 101px; font-family:'Inter',sans-serif; font-weight:600; font-size:20px; line-height:24px; color:#101828; }
  .gabarit-politique .texte-corps .maj{ margin-bottom:89px; }
  .gabarit-legal .texte-corps h2{ font-family:'Satoshi',sans-serif; font-size:36px; line-height:44px; margin:24px 0 24px -22px; }
  .gabarit-legal .texte-corps h2:first-of-type{ margin-top:0; }
  .gabarit-legal .texte-corps p, .gabarit-legal .texte-corps li{ font-family:'Inter',sans-serif; font-size:20px; line-height:24px; color:#0B172E; }
  .gabarit-legal .texte-corps p{ margin:0 0 24px -22px; }
  .gabarit-legal .texte-corps ul{ margin:0 0 24px 8px; padding-left:30px; list-style:disc; }
  .gabarit-legal .texte-corps li{ margin:0; padding:0; }
  .gabarit-legal .texte-corps li::before{ content:none; }
  .gabarit-legal .appel{ display:none; }
  .gabarit-legal main{ padding-bottom:49px; }
  .gabarit-legal .pied{ padding:15px 0 51px; border-top:0; }
  .gabarit-legal .pied .boite{ grid-template-columns:376px 347px 283px minmax(180px,1fr); padding:0 0 0 28px; }
}
@media (min-width:1100px){
  
  .gabarit-politique .texte-corps{ position:relative; }
  .gabarit-politique .texte-corps h2:first-of-type{ margin-top:97px; }
  .gabarit-politique .texte-corps h2:first-of-type::before{ content:""; position:absolute; left:-50px; right:-45px; top:0; bottom:0; margin-top:calc(var(--carte-haut,0px)); background:#EDEEEF; border-radius:28px; z-index:-1; }
}
@media (min-width:1100px){
  
  .gabarit-politique .texte-corps{ isolation:isolate; }
  .gabarit-politique .texte-corps h2:first-of-type::before{ top:-38px; bottom:-40px; }
}


.cand-carte .photo{ margin:-2px 0 10px; border-radius:12px; overflow:hidden; }
.cand-carte .photo img{ display:block; width:100%; height:auto; aspect-ratio:16 / 9; object-fit:cover; }
.cand-carte[hidden]{ display:none; }


.cd-degrade{ background-image:linear-gradient(162deg,#FF57A0 36.5%,#5F74FA 93.9%); -webkit-background-clip:text; background-clip:text; color:transparent; }
.cd-titre{ font-family:'Satoshi',sans-serif; font-weight:700; font-size:clamp(30px,4vw,48px); line-height:1.23; color:#0B172E; text-align:center; margin:0; }
.cd-intro{ font-family:'Inter',sans-serif; font-size:20px; line-height:24px; color:#0B172E; text-align:center; max-width:577px; margin:22px auto 0; }
.cd .cd-btn-plein{ height:51px; padding:0 24px; border-radius:24px; font-family:'Satoshi',sans-serif; font-size:14px; font-weight:700; color:#FEFEFE; background:linear-gradient(172.9deg,#746DFF 9.88%,#325DEA 63.2%); border:1px solid #746DFF; box-shadow:none; }
.cd .cd-btn-plein:hover{ background:linear-gradient(172.9deg,#8A84FF 9.88%,#3D69F0 63.2%); color:#fff; }
.cd .cd-btn-contour{ height:49px; padding:0 24px; border-radius:24px; font-family:'Satoshi',sans-serif; font-size:14px; font-weight:700; color:#325EE2; background:transparent; border:2px solid #746DFF; box-shadow:none; }
.cd .cd-btn-contour:hover{ background:#746DFF; border-color:#746DFF; color:#fff; }
.cd .cd-btn-contour.fleche::after{
  content:""; flex:none; width:25px; height:25px; margin-left:10px;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 25 25' fill='none' stroke='%23325EE2' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4.5 12.5h16M13.8 6.2l6.7 6.3-6.7 6.3'/%3E%3C/svg%3E") center/contain no-repeat;
}
.cd .cd-btn-contour.fleche:hover::after{ background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 25 25' fill='none' stroke='white' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4.5 12.5h16M13.8 6.2l6.7 6.3-6.7 6.3'/%3E%3C/svg%3E"); }


.cd-besoin{ padding:36px 0 0; }
.cd-cartes{ list-style:none; margin:40px auto 0; padding:0; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px; justify-content:center; }
.cd-cartes a{
  position:relative; display:block; height:241px; background:#fff; color:#0B172E; text-decoration:none;
  border:.5px solid rgba(255,165,201,.34); border-radius:28px; box-shadow:0 4px 4px rgba(0,0,0,.25);
  transition:transform .15s ease, box-shadow .15s ease;
}
.cd-cartes a:hover{ transform:translateY(-3px); box-shadow:0 8px 12px rgba(0,0,0,.18); }
.cd-cartes .picto{ position:absolute; left:50%; top:-24px; width:229px; height:229px; transform:translateX(-50%); object-fit:contain; }
.cd-cartes .picto.petit{ width:205px; height:205px; top:2px; }

.cd-cartes .picto.lit{ width:187px; height:187px; top:11px; left:calc(50% - 47px); }.cd-cartes :where(.vv-w):has(> .picto.lit) + :where(.vv-w) > .picto.petit,.cd-cartes .picto.lit + .picto.petit,.cd-cartes :where(.vv-w):has(> .picto.lit) + .picto.petit,.cd-cartes .picto.lit + :where(.vv-w) > .picto.petit{ left:calc(50% + 46px); }
.cd-cartes span{ position:absolute; left:0; right:0; top:157px; padding:0 18px; text-align:center; font-family:'Satoshi',sans-serif; font-weight:700; font-size:20px; line-height:27px; }


.cd-jour{ padding:59px 0 56px; scroll-margin-top:100px; }
.cd-moments{ display:grid; grid-template-columns:minmax(0,1fr); gap:36px; margin:60px 0 0; }
.cd-moment .tete{ display:flex; align-items:center; gap:9px; margin:0; }
.cd-moment .num{
  flex:none; width:49px; height:49px; border-radius:50%; background:rgba(116,109,255,.2); box-shadow:0 4px 4px rgba(0,0,0,.25);
  display:flex; align-items:center; justify-content:center; font-family:'Inter',sans-serif; font-weight:900; font-size:32px; line-height:1; color:#fff;
}
.cd-moment .nom{ font-family:'Satoshi',sans-serif; font-weight:700; font-size:20px; line-height:27px; color:#0B172E; }
.cd-moment ul{ list-style:none; margin:23px 0 0; padding:0; display:flex; flex-direction:column; gap:24px; }
.cd-moment li{ display:flex; align-items:center; gap:9px; font-family:'Inter',sans-serif; font-size:20px; line-height:24px; color:#0B172E; }
.cd-moment .coche{
  flex:none; width:20px; height:19px; border:1px solid #101828; border-radius:28px; box-shadow:0 12px 40px -12px rgba(0,0,0,.08);
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' fill='none' stroke='%23101828' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1.2 6.4l3.2 3.2L10.8 2.6'/%3E%3C/svg%3E") center/12px no-repeat;
}
.cd-action{ margin:47px 0 0; text-align:center; }


.cd-acces, .cd-autour{ scroll-margin-top:100px; }
.cd-panneau{ border-radius:28px; box-shadow:0 4px 4px rgba(0,0,0,.25); padding:36px 20px 32px; }
.cd-panneau.blanc{ background:#fff; border:1px solid rgba(116,109,255,.2); }
.cd-panneau.lilas{ background:rgba(116,109,255,.2); margin-top:40px; }
.cd-choix{ position:relative; max-width:376px; height:51px; margin:25px auto 0; }
.cd-choix label{
  position:absolute; left:36px; top:-11px; padding:0 4px; background:#fff;
  font-family:'Satoshi',sans-serif; font-weight:700; font-size:16px; line-height:22px; color:#325EE2;
}
.cd-choix select{
  width:100%; height:100%; appearance:none; cursor:pointer; border:1px solid #D9D9D9; border-radius:33px;
  padding:6px 60px 0 36px; font-family:'Satoshi',sans-serif; font-weight:500; font-size:16px; color:#101828;
  background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23325EE2' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") right 24px center/24px no-repeat;
}
.cd-choix select:focus-visible{ outline:2px solid #325EE2; outline-offset:2px; }
.cd-centre{ display:grid; grid-template-columns:minmax(0,1fr); gap:24px; margin-top:30px; align-items:start; }
.cd-centre[hidden]{ display:none; }
.cd-plan{ width:100%; aspect-ratio:554/458; border-radius:28px; overflow:hidden; background:#EEF1FD; }
.cd-plan iframe{ display:block; width:100%; height:100%; border:0; }
.cd-fiche{
  background:#fff; border:.5px solid rgba(255,165,201,.34); border-radius:28px; box-shadow:0 4px 4px rgba(0,0,0,.25);
  padding:29px 28px 41px;
}
.cd-fiche h3{ font-family:'Satoshi',sans-serif; font-weight:700; font-size:30px; line-height:41px; color:#0B172E; text-shadow:0 4px 4px rgba(0,0,0,.25); margin:0; }
.cd-fiche .adresse{ margin:22px 0 0; font-family:'Inter',sans-serif; font-size:18px; line-height:22px; color:#101828; }
.cd-fiche-action{ margin:23px 0 0; }
.cd-pli{ border-top:1px solid #E4E7EE; margin-top:26px; padding:0 0 0 45px; }:where(.vv-w):has(> .cd-pli) + .cd-pli,.cd-pli + .cd-pli,:where(.vv-w):has(> .cd-pli) + :where(.vv-w) > .cd-pli,.cd-pli + :where(.vv-w) > .cd-pli{ margin-top:20px; }
.cd-pli summary{
  list-style:none; cursor:pointer; position:relative; padding:20px 40px 0 0;
  font-family:'Inter',sans-serif; font-weight:600; font-size:18px; line-height:22px; color:#101828;
}
.cd-pli summary::-webkit-details-marker{ display:none; }
.cd-pli[open] summary{ color:#325EE2; }
.cd-pli summary::after{
  content:""; position:absolute; right:0; top:19px; width:24px; height:24px; transition:transform .2s ease;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23101828' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") center/contain no-repeat;
}
.cd-pli[open] summary::after{ transform:rotate(180deg); }
.cd-pli ul{ list-style:none; margin:12px 0 0; padding:0; display:flex; flex-direction:column; gap:11px; }
.cd-pli li{ font-family:'Inter',sans-serif; font-size:18px; line-height:22px; color:#101828; }
.cd-pli li b{ font-weight:600; }
.cd-fiche-action2{ margin:24px 0 0; }
.cd-avis{ margin:20px 0 0; padding:14px 18px; border-radius:12px; background:#EEF1FD; color:#0B172E; font-size:15px; line-height:1.45; }
.cd-marge{ margin:0; font-family:'Inter',sans-serif; font-weight:600; font-size:20px; line-height:24px; color:#0B172E; }

.cd-recherche{ position:relative; max-width:556px; height:51px; margin:25px auto 0; }
.cd-recherche .cand-lieu{
  width:100%; height:100%; border:1px solid #D9D9D9; border-radius:33px; background:#fff;
  padding:0 140px 0 34px; font-family:'Satoshi',sans-serif; font-weight:500; font-size:13px; color:#101828;
}
.cd-recherche .cand-lieu::placeholder{ color:#D9D9D9; }
.cd-recherche .cand-lieu:focus-visible{ outline:2px solid #325EE2; outline-offset:2px; }
.cd-recherche .btn{ position:absolute; right:0; top:0; }
.cd-groupes{ display:grid; grid-template-columns:minmax(0,1fr); gap:40px; margin-top:32px; align-items:start; }
.cd-groupe{ min-width:0; }
.cd-carte{
  background:#fff; border:.5px solid rgba(255,165,201,.34); border-radius:28px; box-shadow:0 4px 4px rgba(0,0,0,.25);
  overflow:hidden; min-height:458px; padding-bottom:7px; min-width:0;
}

.cd-groupe .piste{ display:flex; overflow-x:auto; scroll-snap-type:x mandatory; scroll-behavior:smooth; scrollbar-width:none; -webkit-overflow-scrolling:touch; padding:0 0 6px; margin-bottom:-6px; }
.cd-groupe .piste::-webkit-scrollbar{ display:none; }
.cd-groupe .piste:focus-visible{ outline:2px solid #325EE2; outline-offset:4px; border-radius:28px; }
.cd-groupe .piste .cd-carte{ flex:none; width:100%; scroll-snap-align:start; }
.cd-groupe .fleches{ display:flex; gap:12px; justify-content:center; margin-top:14px; }
.cd-groupe .fleches button{
  width:44px; height:44px; border-radius:50%; background:#fff; border:1.6px solid #D8DEE8; color:#0B172E;
  display:flex; align-items:center; justify-content:center; font-size:20px; line-height:1;
  transition:border-color .15s ease, transform .15s ease, opacity .15s ease;
}
.cd-groupe .fleches button:hover{ border-color:#325EE2; transform:translateY(-1px); }
.cd-groupe .fleches button:disabled{ opacity:.35; cursor:default; transform:none; }
.cd-tous{ margin:14px 0 0; text-align:center; }
.cd-tous a{ font-family:'Satoshi',sans-serif; font-weight:700; font-size:14px; color:#325EE2; }
.cd-tous a::after{ content:"\2192"; margin-left:6px; }
.cd-detail{ margin:10px 0 0; font-size:14px; color:var(--sourdine); }
.cd-photo{ display:block; }
.cd-photo img{ display:block; width:100%; height:274px; object-fit:cover; }
.cd-groupe-corps{ display:grid; grid-template-columns:97px minmax(0,1fr); gap:0 40px; padding:17px 24px 0 24px; align-items:start; }
.cd-rond{ position:relative; display:block; width:97px; height:97px; border-radius:50%; background:rgba(116,109,255,.2); box-shadow:0 4px 4px rgba(0,0,0,.25); }
.cd-rond img{ position:absolute; left:50%; top:50%; width:160px; height:160px; transform:translate(-50%,-50%); }
.cd-groupe-texte h3{ font-family:'Satoshi',sans-serif; font-weight:700; font-size:30px; line-height:41px; color:#0B172E; text-shadow:0 4px 4px rgba(0,0,0,.25); margin:-6px 0 0; text-align:left; }
.cd-groupe-texte .accroche{ margin:22px 0 0; max-width:250px; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; font-family:'Inter',sans-serif; font-weight:500; font-size:18px; line-height:22px; color:#101828; }
.cd-groupe-texte .cand-groupe-action{ margin:10px 0 0; }
.cd-adresses{ padding:20px 24px 14px; }
.cd-adresses .piste{ display:flex; overflow-x:auto; scroll-snap-type:x mandatory; scroll-behavior:smooth; scrollbar-width:none; -webkit-overflow-scrolling:touch; }
.cd-adresses .piste::-webkit-scrollbar{ display:none; }
.cd-adresses .piste:focus-visible{ outline:2px solid #325EE2; outline-offset:4px; border-radius:18px; }
.cd-adresses .cand-carte{
  flex:none; width:100%; scroll-snap-align:start; text-align:left; background:#F3F4F8; border-radius:18px; box-shadow:none;
  padding:20px 22px; display:flex; flex-direction:column; gap:8px; min-height:0;
}
.cd-adresses .cand-carte h4{ font-family:'Satoshi',sans-serif; font-size:18px; font-weight:700; color:#0B172E; }
.cd-adresses .cand-carte p{ font-size:15.5px; color:var(--corps); }
.cd-adresses .fleches{ display:flex; gap:12px; justify-content:center; margin-top:12px; }
.cd-adresses .fleches button{
  width:44px; height:44px; border-radius:50%; background:#fff; border:1.6px solid #D8DEE8; color:#0B172E;
  display:flex; align-items:center; justify-content:center; font-size:20px; line-height:1;
  transition:border-color .15s ease, transform .15s ease, opacity .15s ease;
}
.cd-adresses .fleches button:hover{ border-color:#325EE2; transform:translateY(-1px); }
.cd-adresses .fleches button:disabled{ opacity:.35; cursor:default; transform:none; }
.cd-autour .cand-partenaires{ margin:54px 0 0; text-align:center; font-family:'Inter',sans-serif; font-size:20px; line-height:24px; color:#0B172E; }


.gabarit-candidats .sol-faq h2 .accent{ color:transparent; }
.gabarit-candidats .cd-appel .carte-appel .vague{ display:none; }
.cd-illu{ position:relative; width:266px; height:266px; margin:0 auto; }
.cd-illu::before{ content:""; position:absolute; left:-17px; top:24px; width:255px; height:242px; border-radius:50%; background:rgba(116,109,255,.2); box-shadow:0 4px 4px rgba(0,0,0,.25); }

body.gabarit-candidats .appel .carte-appel .cd-illu{ background:transparent; }
.cd-illu picture, .cd-illu img{ position:relative; display:block; width:266px; height:266px; }

@media (min-width:1100px){
  .cd-besoin .cd-cartes{ grid-template-columns:repeat(4,292px); margin-top:96px; }
  .cd-moments{ grid-template-columns:360px 314px 429px; gap:0; margin:109px 0 0 112px; }:where(.vv-w):has(> .cd-moment) + .cd-moment,.cd-moment + .cd-moment,:where(.vv-w):has(> .cd-moment) + :where(.vv-w) > .cd-moment,.cd-moment + :where(.vv-w) > .cd-moment{ border-left:1px solid #D6DAE3; }
  .cd-moment:nth-child(2){ padding-left:50px; }
  .cd-moment:nth-child(3){ padding-left:86px; }
  .cd-acces .boite, .cd-autour .boite{ max-width:1302px; padding:0; }
  .cd-panneau{ padding:45px 60px 40px 50px; }
  .cd-panneau.lilas{ margin-top:56px; padding-bottom:28px; }
  .cd-centre{ grid-template-columns:554px 554px; gap:24px 84px; }
  .cd-centre .cd-fiche{ grid-row:1 / span 2; grid-column:2; }
  .cd-centre .cd-marge{ grid-column:1; }
  .cd-plan{ width:554px; height:458px; aspect-ratio:auto; }
  .cd-fiche{ padding:29px 38px 41px; }
  .cd-fiche .cd-btn-plein{ min-width:197px; }
  .cd-groupes{ grid-template-columns:554px 554px; gap:84px; }
  .cd-groupe-corps{ gap:0 79px; padding:17px 30px 0 40px; }
  .cd-adresses{ padding:20px 40px 14px; }
  .cd-autour .cd-recherche .btn{ min-width:125px; }
  .gabarit-candidats .sol-faq{ padding:119px 0 0; }
  .gabarit-candidats .cd-appel{ padding:68px 0 0; }
  .gabarit-candidats .cd-appel .boite{ max-width:1293px; padding:0; }
  .gabarit-candidats .cd-appel .carte-appel{
    min-height:306px; margin:0; padding:21px 40px 19px 40px; background:rgba(55,105,193,.02); border-radius:17px; box-shadow:none;
    display:grid; grid-template-columns:266px minmax(0,1fr); gap:0 140px; align-items:start;
  }
  .cd-illu{ margin:0; }
  .gabarit-candidats .cd-appel .carte-appel h2{ margin:50px 0 0; font-size:32px; line-height:43px; }
  .gabarit-candidats .cd-appel .carte-appel p:not(.surtitre){ margin:23px 0 0; font-size:20px; line-height:24px; color:#0B172E; }
  .gabarit-candidats .cd-appel .carte-appel .btn{ margin-top:35px; }
}
@media (max-width:1099px){
  .cd-moment .tete{ justify-content:flex-start; }
  .cd-fiche h3, .cd-groupe-texte h3{ font-size:24px; line-height:32px; }
  .cd-groupe-corps{ grid-template-columns:97px minmax(0,1fr); gap:0 20px; }
  .cd-groupe-texte .accroche{ max-width:none; }
  .cd-recherche .cand-lieu{ padding-right:130px; }
  .gabarit-candidats .cd-appel .carte-appel{ background:rgba(55,105,193,.02); border-radius:17px; box-shadow:none; }
}
@media (max-width:640px){
  .cd-cartes{ grid-template-columns:minmax(0,1fr); }
  .cd-cartes a{ height:220px; }
  .cd-cartes .picto{ width:190px; height:190px; top:-14px; }
  .cd-cartes .picto.petit{ width:170px; height:170px; top:8px; }
  .cd-cartes span{ top:150px; }
  .cd-groupe-corps{ grid-template-columns:minmax(0,1fr); }
  .cd-rond{ margin-bottom:8px; }
  .cd-recherche{ height:auto; }
  .cd-recherche .cand-lieu{ height:51px; padding-right:34px; }
  .cd-recherche .btn{ position:static; width:100%; margin-top:10px; }
}


.cand-heros{ background:#FEFEFE; }
.cand-heros .maillage{ display:none; }
.cand-heros .cand-photo img{ -webkit-mask-image:none; mask-image:none; }
.cand-heros .cand-photo::after{
  content:""; position:absolute; inset:0 auto 0 -364px; width:1434px;
  background:linear-gradient(91.5deg,#fff 53.6%,rgba(255,255,255,.61) 63.7%,rgba(115,115,115,0) 82.3%);
}
.cd-cartes span{ left:50%; right:auto; width:114px; padding:0; transform:translateX(-50%); }
.cd-cartes li:nth-child(3) span{ width:171px; }
.cd-cartes li:nth-child(4) span{ width:100px; }
.gabarit-candidats .faq-item .plus{ width:50px; height:50px; border-radius:50%; background:rgba(116,109,255,.2); color:#325EE2; font-family:'Inter',sans-serif; font-weight:700; font-size:40px; line-height:1; display:flex; align-items:center; justify-content:center; }
@media (min-width:1100px){
  .gabarit-candidats .pied{ padding-top:67px; }
}


.cd-carte.cand-carte .cd-groupe-corps{ padding-top:14px; gap:0 40px; }
.cd-carte.cand-carte .cd-groupe-texte h3{ font-size:22px; line-height:28px; margin-top:0; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.cd-carte.cand-carte .cd-groupe-texte .accroche{ margin-top:10px; -webkit-line-clamp:2; }
.cd-carte.cand-carte .cd-groupe-texte .cand-groupe-action{ margin-top:8px; }
.cd-carte{ min-height:458px; }
.cd-tous{ display:none; }


.cd-carte.cand-carte{ display:block; padding:0 0 7px; gap:0; background:#fff; border-radius:28px; box-shadow:0 4px 4px rgba(0,0,0,.25); text-align:left; }
.cd-carte.cand-carte .cd-photo{ margin:0; }
.cd-carte.cand-carte .cd-groupe-texte p{ font-size:18px; color:#101828; }


.gabarit-contact main{ overflow-x:clip; }
.gabarit-contact .ct-heros{ overflow-x:clip; }


.gabarit-cortexia .ia-heros .actions .btn-accent{ background:linear-gradient(180deg,#CFBCE8 0%,#9F5AD7 48%,#7300C7 100%); border:0; color:#fff; box-shadow:0 6px 14px -6px rgba(80,0,140,.45); }
.gabarit-cortexia .ia-heros .actions .btn-accent:hover{ background:linear-gradient(180deg,#D6C6EC 0%,#A868DB 45%,#8214D4 100%); }



.gabarit-legal .texte-corps .maj{ position:relative; z-index:3; }

.art-texte h2 .num{ color:inherit; }
@media (min-width:1100px){
  .lies{ width:249px; margin-top:22px; border-top:0; padding:20px 16px 18px 20px; background:#fff; border-radius:22px; box-shadow:var(--ombre-carte); }
  .lies h2{ border-left:0; padding-left:0; font-size:16px; line-height:20px; }
  .lies .item{ grid-template-columns:44px 1fr; gap:10px; padding:8px 0; }
  .lies .item .vign{ border-radius:6px; }
  .lies .item p{ font-size:12.5px; line-height:1.3; }
  .lies .item small{ font-size:11.5px; }
}
@media (min-width:1100px){
  
  .sommaire h2{ font-size:22px; line-height:28px; margin-bottom:10px; }
  .sommaire a{ font-family:'Satoshi',sans-serif; font-size:20px; line-height:24px; padding:15px 0 15px 12px; gap:10px; }
  .sommaire a b{ font-weight:700; }
}


@media (min-width:1100px){
  
  .ia-etape .rang{ font-family:'Inter',sans-serif; font-weight:700; font-size:20px; color:#101828; }
  .ia-etape .rang span{ width:59px; height:59px; border:1.6px solid #0161D8; color:#0161D8; font-size:32px; font-weight:900; }.ia-etape .rang span::after,.ia-etapes-grille > .ia-etape + :where(.vv-w) > .ia-etape .carte::before,.ia-etapes-grille > :where(.vv-w):has(> .ia-etape) + :where(.vv-w) > .ia-etape .carte::before,.ia-etapes-grille > .ia-etape + .ia-etape .carte::before,.ia-etapes-grille > :where(.vv-w):has(> .ia-etape) + .ia-etape .carte::before,.ia-etapes-grille > :where(.vv-w) > :where(.vv-w):has(> .ia-etape) + .ia-etape .carte::before,.ia-etapes-grille > :where(.vv-w) > .ia-etape + :where(.vv-w) > .ia-etape .carte::before,.ia-etapes-grille > :where(.vv-w) > :where(.vv-w):has(> .ia-etape) + :where(.vv-w) > .ia-etape .carte::before,.ia-etapes-grille > :where(.vv-w) > .ia-etape + .ia-etape .carte::before,.ia-etapes-grille > :where(.vv-w):has(> .ia-etape) + .ia-etape .carte::after,.ia-etapes-grille > .ia-etape + .ia-etape .carte::after,.ia-etapes-grille > .ia-etape + :where(.vv-w) > .ia-etape .carte::after,.ia-etapes-grille > :where(.vv-w):has(> .ia-etape) + :where(.vv-w) > .ia-etape .carte::after,.ia-etapes-grille > :where(.vv-w) > :where(.vv-w):has(> .ia-etape) + .ia-etape .carte::after,.ia-etapes-grille > :where(.vv-w) > .ia-etape + :where(.vv-w) > .ia-etape .carte::after,.ia-etapes-grille > :where(.vv-w) > :where(.vv-w):has(> .ia-etape) + :where(.vv-w) > .ia-etape .carte::after,.ia-etapes-grille > :where(.vv-w) > .ia-etape + .ia-etape .carte::after{ background:#0161D8; }
  
  .ia-etape:nth-child(2) .carte{ padding-left:18px; padding-right:17px; }
  .ia-etape .ia-libelle{ font-family:'Inter',sans-serif; font-weight:500; font-size:18px; color:#0B172E; }
  .ia-etape .ia-valeur{ height:46px; padding:0 18px; background:#fff; border:1px solid rgba(11,23,46,.14); border-radius:8px; font-family:'Satoshi',sans-serif; font-weight:500; font-size:13px; color:#101828; }
  
  .ia-etape .question{ font-family:'Inter',sans-serif; font-weight:600; font-size:18px; line-height:22px; max-width:320px; color:#0B172E; }
  .ia-etape .reponses{ margin-top:10px; gap:0; margin-left:-4px; }
  .ia-etape .reponses li{ height:39px; width:284px; padding:0 6px; gap:8px; border-radius:8px; font-family:'Satoshi',sans-serif; font-weight:500; font-size:13px; color:#101828; }
  .ia-etape .reponses li b{ width:27px; height:27px; background:#fff; border:1px solid #D9D9D9; color:#101828; font-weight:500; font-size:13px; }
  .ia-etape .reponses li.juste{ background:#BCDFDE; color:#101828; }
  .ia-etape .reponses li.juste b{ background:#fff; color:#028D9D; }
  
  .carte-biblio .titre{ font-family:'Montserrat','Satoshi',sans-serif; font-weight:700; font-size:24px; color:#1E1E1E; }
  .carte-biblio th, .carte-biblio td{ font-family:'Montserrat','Satoshi',sans-serif; font-weight:600; font-size:20px; color:#101828; }
  .carte-biblio .btn-mini{ background:#3769C1; font-family:'Montserrat','Inter',sans-serif; font-weight:600; }
  
  .ia-credits .compteur .n{ font-size:48px; line-height:1; display:block; margin-bottom:6px; }
  .ia-credits .paliers .ico{ width:64px; height:60px; align-items:center; }
  .ia-credits .paliers .ico img{ display:block; width:100%; height:100%; object-fit:contain; }
  .ia-credits .paliers li{ gap:8px; }
  .ia-credits .paliers li:nth-child(1) span{ width:92px; }
  .ia-credits .paliers li:nth-child(2) span, .ia-credits .paliers li:nth-child(3) span{ width:131px; }
  .ia-credits .carte{ position:relative; }
  .ia-credits .sep-2{ position:absolute; left:1089px; top:38px; width:2px; height:188px; }
  
  .gabarit-cortexia .carte-appel{ overflow:hidden; background:#FAFBFC; min-height:340px; }
  body.gabarit-cortexia .appel .carte-appel .visuel{ background:none; }
  .gabarit-cortexia .carte-appel .btn{ font-size:20px; }
}
@media (min-width:1100px){
  
  .ia-exigences{ padding-top:154px; }
  .ia-exigences-grille{ margin-left:auto; grid-template-columns:269px 395px 614px; gap:0 36px; }
  .ia-partage-grille{ margin-left:auto; grid-template-columns:938px minmax(0,1fr); }
  .carte-biblio{ margin-left:-42px; width:938px; }
  
  .ia-etape:nth-child(3) .carte{ padding-top:36px; }.ia-etape .ia-libelle + :where(.vv-w):has(> .ia-valeur) + .ia-libelle,.ia-etape .ia-libelle + .ia-valeur + .ia-libelle,.ia-etape .ia-libelle + .ia-valeur + :where(.vv-w) > .ia-libelle,.ia-etape :where(.vv-w):has(> .ia-libelle) + .ia-valeur + .ia-libelle,.ia-etape .ia-libelle + :where(.vv-w):has(> .ia-valeur) + :where(.vv-w) > .ia-libelle,.ia-etape :where(.vv-w):has(> .ia-libelle) + :where(.vv-w) > .ia-valeur + .ia-libelle,.ia-etape .ia-libelle + :where(.vv-w) > .ia-valeur + .ia-libelle{ margin-top:30px; }
  
  .ia-credits .paliers{ align-items:flex-start; }
  .ia-credits .paliers span:not(.ico){ height:38px; display:flex; align-items:center; justify-content:center; }
  .ia-credits .droite{ margin-top:-8px; }
  .ia-credits .btn-plan{ margin-top:25px; }
  
  .ia-credits .sep-2{ top:43px; height:94px; }
  
  .gabarit-cortexia .appel{ padding-top:5px; }
  .gabarit-cortexia .carte-appel{ margin-left:-51px; width:1293px; }
}
@media (min-width:1100px){
  
  .carte-biblio th{ padding:16px 8px 3px 0; }
  .carte-biblio th:nth-child(3), .carte-biblio td:nth-child(3){ text-align:center; }
  .carte-biblio .btn-mini{ width:156px; justify-content:center; padding:0; font-size:20px; }
  .carte-biblio .btn-mini.rond{ width:52px; }
  .ia-etape .fichier img{ width:92px; height:92px; }
}


@media (min-width:1100px){
  
  .gabarit-candidats .cd-panneau.blanc{ position:relative; height:846px; box-sizing:border-box; }
  .gabarit-candidats .cd-marge{ position:absolute; left:15px; top:869px; margin:0; }
  .gabarit-candidats .cd-panneau.lilas{ margin-top:192px; height:846px; box-sizing:border-box; overflow:visible; }
  .gabarit-candidats .cand-partenaires{ margin-top:-5px; }
  .gabarit-candidats .sol-faq{ padding-top:119px; padding-bottom:23px; }
  .gabarit-candidats .appel{ padding:44px 0 61px; }
  
  .gabarit-contact .ct-grille{ max-width:none; width:1332px; margin:0 0 0 calc(50% - 610px); grid-template-columns:573px 759px; gap:0; padding-bottom:38px; }
  .gabarit-contact .ct-grille::after{ left:-113px; }
  .gabarit-contact .ct-mains .carte{ padding-top:60px; }
  .gabarit-contact .ct-carte{ margin-top:90px; width:937px; padding-right:235px; }
  .gabarit-contact .ct-mains .carte{ width:1239px; margin-left:calc(50% - 610px); }.gabarit-contact .ct-univers > div > p + :where(.vv-w) > p,.gabarit-contact .ct-univers > div > p + p,.gabarit-contact .ct-univers > div > :where(.vv-w):has(> p) + :where(.vv-w) > p,.gabarit-contact .ct-univers > div > :where(.vv-w):has(> p) + p,.gabarit-contact .ct-univers > div > :where(.vv-w) > :where(.vv-w):has(> p) + :where(.vv-w) > p,.gabarit-contact .ct-univers > div > :where(.vv-w) > p + p,.gabarit-contact .ct-univers > div > :where(.vv-w) > p + :where(.vv-w) > p,.gabarit-contact .ct-univers > div > :where(.vv-w) > :where(.vv-w):has(> p) + p,.gabarit-contact .ct-univers > :where(.vv-w) > div > p + p,.gabarit-contact .ct-univers > :where(.vv-w) > div > p + :where(.vv-w) > p,.gabarit-contact .ct-univers > :where(.vv-w) > div > :where(.vv-w):has(> p) + p,.gabarit-contact .ct-univers > :where(.vv-w) > div > :where(.vv-w):has(> p) + :where(.vv-w) > p,.gabarit-contact .ct-univers > :where(.vv-w) > div > :where(.vv-w) > :where(.vv-w):has(> p) + p,.gabarit-contact .ct-univers > :where(.vv-w) > div > :where(.vv-w) > p + :where(.vv-w) > p,.gabarit-contact .ct-univers > :where(.vv-w) > div > :where(.vv-w) > :where(.vv-w):has(> p) + :where(.vv-w) > p,.gabarit-contact .ct-univers > :where(.vv-w) > div > :where(.vv-w) > p + p{ font-size:16px; line-height:1.3; }
}
@media (min-width:1100px){
  
  .gabarit-contact .ct-univers > div{ gap:12px; }.gabarit-contact .ct-univers > div > div,.gabarit-contact .ct-univers > div > :where(.vv-w) > div,.gabarit-contact .ct-univers > :where(.vv-w) > div > div,.gabarit-contact .ct-univers > :where(.vv-w) > div > :where(.vv-w) > div,.gabarit-contact .ct-univers > div > p + :where(.vv-w) > p,.gabarit-contact .ct-univers > div > p + p,.gabarit-contact .ct-univers > div > :where(.vv-w):has(> p) + :where(.vv-w) > p,.gabarit-contact .ct-univers > div > :where(.vv-w):has(> p) + p,.gabarit-contact .ct-univers > div > :where(.vv-w) > :where(.vv-w):has(> p) + :where(.vv-w) > p,.gabarit-contact .ct-univers > div > :where(.vv-w) > p + p,.gabarit-contact .ct-univers > div > :where(.vv-w) > p + :where(.vv-w) > p,.gabarit-contact .ct-univers > div > :where(.vv-w) > :where(.vv-w):has(> p) + p,.gabarit-contact .ct-univers > :where(.vv-w) > div > p + p,.gabarit-contact .ct-univers > :where(.vv-w) > div > p + :where(.vv-w) > p,.gabarit-contact .ct-univers > :where(.vv-w) > div > :where(.vv-w):has(> p) + p,.gabarit-contact .ct-univers > :where(.vv-w) > div > :where(.vv-w):has(> p) + :where(.vv-w) > p,.gabarit-contact .ct-univers > :where(.vv-w) > div > :where(.vv-w) > :where(.vv-w):has(> p) + p,.gabarit-contact .ct-univers > :where(.vv-w) > div > :where(.vv-w) > p + :where(.vv-w) > p,.gabarit-contact .ct-univers > :where(.vv-w) > div > :where(.vv-w) > :where(.vv-w):has(> p) + :where(.vv-w) > p,.gabarit-contact .ct-univers > :where(.vv-w) > div > :where(.vv-w) > p + p{ max-width:none; min-width:0; flex:1 1 auto; width:auto; }.gabarit-contact .ct-univers > div > p + :where(.vv-w) > p,.gabarit-contact .ct-univers > div > p + p,.gabarit-contact .ct-univers > div > :where(.vv-w):has(> p) + :where(.vv-w) > p,.gabarit-contact .ct-univers > div > :where(.vv-w):has(> p) + p,.gabarit-contact .ct-univers > div > :where(.vv-w) > :where(.vv-w):has(> p) + :where(.vv-w) > p,.gabarit-contact .ct-univers > div > :where(.vv-w) > p + p,.gabarit-contact .ct-univers > div > :where(.vv-w) > p + :where(.vv-w) > p,.gabarit-contact .ct-univers > div > :where(.vv-w) > :where(.vv-w):has(> p) + p,.gabarit-contact .ct-univers > :where(.vv-w) > div > p + p,.gabarit-contact .ct-univers > :where(.vv-w) > div > p + :where(.vv-w) > p,.gabarit-contact .ct-univers > :where(.vv-w) > div > :where(.vv-w):has(> p) + p,.gabarit-contact .ct-univers > :where(.vv-w) > div > :where(.vv-w):has(> p) + :where(.vv-w) > p,.gabarit-contact .ct-univers > :where(.vv-w) > div > :where(.vv-w) > :where(.vv-w):has(> p) + p,.gabarit-contact .ct-univers > :where(.vv-w) > div > :where(.vv-w) > p + :where(.vv-w) > p,.gabarit-contact .ct-univers > :where(.vv-w) > div > :where(.vv-w) > :where(.vv-w):has(> p) + :where(.vv-w) > p,.gabarit-contact .ct-univers > :where(.vv-w) > div > :where(.vv-w) > p + p{ font-size:16.5px; line-height:1.3; margin-top:8px; }
}
@media (min-width:1100px){
  
  .gabarit-contact .ct-univers > div > div{ width:229px; }.gabarit-contact .ct-univers > div > div > p + p,.gabarit-contact .ct-univers > div > div > p + :where(.vv-w) > p,.gabarit-contact .ct-univers > div > div > :where(.vv-w):has(> p) + :where(.vv-w) > p,.gabarit-contact .ct-univers > div > div > :where(.vv-w):has(> p) + p,.gabarit-contact .ct-univers > div > div > :where(.vv-w) > :where(.vv-w):has(> p) + p,.gabarit-contact .ct-univers > div > div > :where(.vv-w) > p + p,.gabarit-contact .ct-univers > div > div > :where(.vv-w) > p + :where(.vv-w) > p,.gabarit-contact .ct-univers > div > div > :where(.vv-w) > :where(.vv-w):has(> p) + :where(.vv-w) > p,.gabarit-contact .ct-univers > div > :where(.vv-w) > div > p + p,.gabarit-contact .ct-univers > div > :where(.vv-w) > div > :where(.vv-w):has(> p) + :where(.vv-w) > p,.gabarit-contact .ct-univers > div > :where(.vv-w) > div > :where(.vv-w):has(> p) + p,.gabarit-contact .ct-univers > div > :where(.vv-w) > div > p + :where(.vv-w) > p,.gabarit-contact .ct-univers > div > :where(.vv-w) > div > :where(.vv-w) > :where(.vv-w):has(> p) + :where(.vv-w) > p,.gabarit-contact .ct-univers > div > :where(.vv-w) > div > :where(.vv-w) > p + :where(.vv-w) > p,.gabarit-contact .ct-univers > div > :where(.vv-w) > div > :where(.vv-w) > :where(.vv-w):has(> p) + p,.gabarit-contact .ct-univers > div > :where(.vv-w) > div > :where(.vv-w) > p + p,.gabarit-contact .ct-univers > :where(.vv-w) > div > div > :where(.vv-w):has(> p) + :where(.vv-w) > p,.gabarit-contact .ct-univers > :where(.vv-w) > div > div > p + p,.gabarit-contact .ct-univers > :where(.vv-w) > div > div > :where(.vv-w):has(> p) + p,.gabarit-contact .ct-univers > :where(.vv-w) > div > div > p + :where(.vv-w) > p,.gabarit-contact .ct-univers > :where(.vv-w) > div > div > :where(.vv-w) > p + :where(.vv-w) > p,.gabarit-contact .ct-univers > :where(.vv-w) > div > div > :where(.vv-w) > :where(.vv-w):has(> p) + :where(.vv-w) > p,.gabarit-contact .ct-univers > :where(.vv-w) > div > div > :where(.vv-w) > :where(.vv-w):has(> p) + p,.gabarit-contact .ct-univers > :where(.vv-w) > div > div > :where(.vv-w) > p + p,.gabarit-contact .ct-univers > :where(.vv-w) > div > :where(.vv-w) > div > p + :where(.vv-w) > p,.gabarit-contact .ct-univers > :where(.vv-w) > div > :where(.vv-w) > div > p + p,.gabarit-contact .ct-univers > :where(.vv-w) > div > :where(.vv-w) > div > :where(.vv-w):has(> p) + p,.gabarit-contact .ct-univers > :where(.vv-w) > div > :where(.vv-w) > div > :where(.vv-w):has(> p) + :where(.vv-w) > p,.gabarit-contact .ct-univers > :where(.vv-w) > div > :where(.vv-w) > div > :where(.vv-w) > :where(.vv-w):has(> p) + :where(.vv-w) > p,.gabarit-contact .ct-univers > :where(.vv-w) > div > :where(.vv-w) > div > :where(.vv-w) > p + :where(.vv-w) > p,.gabarit-contact .ct-univers > :where(.vv-w) > div > :where(.vv-w) > div > :where(.vv-w) > :where(.vv-w):has(> p) + p,.gabarit-contact .ct-univers > :where(.vv-w) > div > :where(.vv-w) > div > :where(.vv-w) > p + p{ font-size:20px; font-weight:500; line-height:24px; }
}.ct-consent + :where(.vv-w) > .ct-consent,:where(.vv-w):has(> .ct-consent) + .ct-consent,.ct-consent + .ct-consent,:where(.vv-w):has(> .ct-consent) + :where(.vv-w) > .ct-consent{ margin-top:10px; }


@media (min-width:1100px){
  .gabarit-cortexia .carte-appel .visuel.bulle{ overflow:hidden; }
  .gabarit-cortexia .carte-appel .visuel.bulle img{
    position:absolute; left:0; top:-34.48%; width:104.54%; height:134.48%; max-width:none;
  }
}
.gabarit-cortexia .carte-appel .visuel.bulle img{ object-fit:cover; }

.ia-credits .anneau svg{ overflow:visible; }


.gabarit-metiers .appel .carte-appel .visuel{ background:#E7EEFB; }
.gabarit-metiers .appel .btn{ font-size:20px; font-weight:700; }



@media (min-width:1100px){
  .cand-heros .cand-photo{ left:max(223px, calc(50% - 417px)); right:0; width:auto; }
  .cand-heros .cand-photo img{ width:100%; object-position:center center; }
}


.cd-carte.cand-carte .cd-groupe-corps{ padding-top:17px; }
.cd-carte.cand-carte .cd-groupe-texte h3{ line-height:41px; margin-top:-6px; }
.cd-carte.cand-carte .cd-groupe-texte .accroche{ margin-top:22px; }
.cd-groupe-texte .cand-groupe-action,
.cd-carte.cand-carte .cd-groupe-texte .cand-groupe-action{ margin-top:10px; font-size:0; line-height:0; }



@media (min-width:1100px){
  .ct-heros .vague-fond{ left:calc(50% - 911px); }
}

.ct-heros h1 .degrade,
.ct-cote h2 .degrade{ font-size:1.111em; }
.ct-heros h1 .degrade{ background-image:linear-gradient(180deg,rgba(255,0,102,.74) 0%,rgba(61,101,224,.74) 85%) !important; }
.ct-cote h2 .degrade{ background-image:linear-gradient(180deg,rgba(208,24,131,.74) 0%,rgba(106,78,196,.74) 100%) !important; }

@media (min-width:1100px){
  .ct-carte,
  .ct-mains .carte{ border-color:rgba(11,23,46,.10); }
}

.ct-form input:focus,
.ct-form select:focus,
.ct-form textarea:focus{ outline:2px solid #746DFF; border-color:transparent; }


.gabarit-cortexia main{ overflow-x:clip; }
@media (min-width:1100px) and (max-width:1139px){ .gabarit-cortexia main{ zoom:0.76; } }
@media (min-width:1140px) and (max-width:1179px){ .gabarit-cortexia main{ zoom:0.79; } }
@media (min-width:1180px) and (max-width:1219px){ .gabarit-cortexia main{ zoom:0.81; } }
@media (min-width:1220px) and (max-width:1259px){ .gabarit-cortexia main{ zoom:0.84; } }
@media (min-width:1260px) and (max-width:1299px){ .gabarit-cortexia main{ zoom:0.87; } }
@media (min-width:1300px) and (max-width:1339px){ .gabarit-cortexia main{ zoom:0.9; } }
@media (min-width:1340px) and (max-width:1379px){ .gabarit-cortexia main{ zoom:0.93; } }
@media (min-width:1380px) and (max-width:1419px){ .gabarit-cortexia main{ zoom:0.95; } }
@media (min-width:1420px) and (max-width:1439px){ .gabarit-cortexia main{ zoom:0.98; } }


@media (min-width:1100px) and (max-width:1439px){
  .res-corps{ grid-template-columns:minmax(0,1fr) 313px; margin-left:0; }
  .res-grille{ grid-template-columns:repeat(3,minmax(0,1fr)); }
  .res-filtres .boite{ flex-wrap:wrap; row-gap:8px; overflow-x:visible; padding-left:32px; padding-right:32px; }
}
@media (min-width:1100px) and (max-width:1279px){
  .res-grille{ grid-template-columns:repeat(2,minmax(0,1fr)); }
}


@media (min-width:1100px) and (max-width:1139px){ .gabarit-candidats main{ zoom:0.87; } }
@media (min-width:1140px) and (max-width:1179px){ .gabarit-candidats main{ zoom:0.9; } }
@media (min-width:1180px) and (max-width:1219px){ .gabarit-candidats main{ zoom:0.93; } }
@media (min-width:1220px) and (max-width:1259px){ .gabarit-candidats main{ zoom:0.96; } }


@media (min-width:1100px){
  .gabarit-politique .texte-corps h2:first-of-type::before{
    left:calc(-1 * min(50px, max(0px, (100vw - 100%) / 2 - 12px)));
    right:calc(-1 * min(45px, max(0px, (100vw - 100%) / 2 - 12px)));
  }
}

@media (min-width:1100px) and (max-width:1439px){
  .gabarit-legal .texte-corps > *:not(.maj),
  .gabarit-legal .texte-corps h2,
  .gabarit-legal .texte-corps p{ margin-left:0; }
  .gabarit-politique .texte-corps h2:first-of-type::before{
    left:calc(-1 * min(28px, max(0px, (100vw - 100%) / 2 - 12px)));
    right:calc(-1 * min(28px, max(0px, (100vw - 100%) / 2 - 12px)));
  }
}


.res-vague.nuit{ background:#05050c; }


.res-vague .vague-video,
.res-vague .vague-fixe{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; }
.res-vague .vague-video{ z-index:1; }
@media (prefers-reduced-motion:reduce){ .res-vague .vague-video{ display:none; } }


.cd-groupe-texte .cand-groupe-action .btn{ margin-top:0; }
.cd-groupe-texte h3, .cd-carte.cand-carte .cd-groupe-texte h3{ font-size:26px; line-height:41px; }
@media (max-width:640px){ .cd-groupe-texte h3, .cd-carte.cand-carte .cd-groupe-texte h3{ font-size:22px; line-height:30px; } }



.ia-credits .compteur br{ display:none; }
@media (min-width:1100px){
  
  .ia-exigences::before{ left:calc(max(0px, (100% - 1440px) / 2) - 499px); }
  
  .ia-exigences{ padding-bottom:48px; }
  
  .ia-etape .formats{ justify-content:center !important; gap:20px !important; padding-left:0 !important; margin-left:0 !important; }
  
  .gabarit-cortexia .carte-appel .visuel.bulle img{ transform:scale(.88); transform-origin:52% 46%; }
}



.cd-degrade{ background-image:linear-gradient(173.59deg,#E05DAE 0%,#5F74FA 100%) !important; }


.gabarit-candidats .cd-cartes a,
.gabarit-candidats .cd-fiche,
.gabarit-candidats .cd-carte{ border-color:rgba(50,94,226,.30); }


.cd-autour .cd-btn-contour.fleche::after{ content:none; display:none; }
.cd-autour .cd-groupe[data-carrousel]{ position:relative; }.cd-autour .cd-groupe[data-carrousel] > .fleches,.cd-autour .cd-groupe[data-carrousel] > :where(.vv-w) > .fleches{ position:absolute; right:24px; bottom:26px; margin:0; z-index:2; }.cd-autour .cd-groupe[data-carrousel] > .fleches button,.cd-autour .cd-groupe[data-carrousel] > :where(.vv-w) > .fleches button{ width:40px; height:40px; }


@media (min-width:1100px){
  
  .gabarit-contact .ct-grille::after{ left:0; width:1170px; }

  
  .gabarit-contact .ct-mains .carte{ padding-top:72px; padding-bottom:64px; min-height:0; }
  .gabarit-contact .ct-mains h2{ margin-bottom:72px; }

  
  .ct-heros .vague-fond{
    --vw:max(1881px, calc(100vw + 160px));
    width:var(--vw); max-width:none; left:calc(50% - var(--vw) * .4843); right:auto;
    -webkit-mask-image:linear-gradient(180deg, transparent 0%, #000 42%), linear-gradient(90deg, transparent 0, #000 9%, #000 91%, transparent 100%);
            mask-image:linear-gradient(180deg, transparent 0%, #000 42%), linear-gradient(90deg, transparent 0, #000 9%, #000 91%, transparent 100%);
    -webkit-mask-composite:source-in; mask-composite:intersect;
  }
}

.ct-heros .chapo{ max-width:750px; }




.res-heros h1 em,
.infolettre h2 .degrade-suite{
  font-style:normal; background-image:linear-gradient(173.59deg,#E05DAE 0%,#5F74FA 100%) !important;
  -webkit-background-clip:text; background-clip:text; color:transparent; -webkit-text-fill-color:transparent;
  padding-bottom:.16em; margin-bottom:-.16em;
}

.res-filtres button[aria-pressed="true"]{ background:linear-gradient(114deg,#746DFF 0%,#325DEA 63.5%) !important; color:#fff !important; border-color:transparent !important; }
.infolettre .btn, .infolettre .btn.btn-nuit{ background:linear-gradient(114deg,#746DFF 0%,#325DEA 63.5%) !important; color:#fff !important; border-color:transparent !important; }
.infolettre .btn:hover{ filter:brightness(1.08); }
.infolettre .carte{ background:linear-gradient(100deg,#F3F2FF 0%,#ECEFFE 50%,#EAF1FC 100%) !important; }
.infolettre canvas{ opacity:.55; }

.info-retour.erreur{ background:transparent !important; color:#D0021B !important; padding-left:0 !important; padding-right:0 !important; }

.res-carte{ position:relative; cursor:pointer; transition:transform .2s ease, box-shadow .2s ease; }
.res-carte h3 a::after{ content:""; position:absolute; inset:0; z-index:1; }
.res-carte:hover{ transform:translateY(-3px); box-shadow:0 14px 30px -18px rgba(11,23,46,.35); }
.res-carte:hover h3 a{ text-decoration:underline; text-underline-offset:3px; }

@media (min-width:1100px){
  .res-heros{ grid-template-columns:calc(560px + max(0px, (100vw - 1440px) / 2)) minmax(0,1fr) !important; }
}

.cd-resultat{ margin:18px auto 0; text-align:center; font-weight:600; color:#325EE2; }


.res-v1 .res-heros{ position:relative; overflow:hidden; }
.res-v1 .res-sphere{ position:relative; min-height:240px; overflow:hidden; }
.res-v1 .res-sphere img{ position:absolute; width:130%; max-width:none; right:-24%; top:-38%; mix-blend-mode:multiply; }
@media (min-width:1100px){
  .res-v1 .res-heros{ min-height:470px; }
  .res-v1 .res-sphere img{ width:min(860px, 64vw); right:max(-120px, calc((100vw - 1440px) / 2 - 120px)); top:-250px; }
}
.infolettre.avec-sphere .carte{ overflow:hidden; }
.infolettre.avec-sphere canvas{ display:none; }
.infolettre.avec-sphere .info-sphere{ position:absolute; z-index:0; pointer-events:none; mix-blend-mode:multiply; opacity:.9;
  width:560px; max-width:none; right:-60px; top:50%; transform:translateY(-52%); }
@media (max-width:1099px){ .infolettre.avec-sphere .info-sphere{ width:360px; right:-120px; opacity:.5; } }




.ct-heros h1 .degrade,
.ct-cote h2 .degrade,
.ct-direct .tel a,
.ct-direct .mail a{
  background-image:linear-gradient(173.59deg,#E05DAE 0%,#5F74FA 100%) !important;
  -webkit-background-clip:text; background-clip:text; color:transparent; -webkit-text-fill-color:transparent;
}

.ct-case-manquante{ margin-top:8px; color:#D0021B; font-size:15px; }
.ct-obligatoire a, .diag-obligatoire a{ color:inherit; text-decoration:underline; }


@media (max-width:1080px){
  .gabarit-ressources .boite{ padding-left:32px; padding-right:32px; }
  .gabarit-ressources .res-filtres .boite{ padding-left:32px; padding-right:32px; }
  .res-heros .texte{ padding:40px 32px 20px !important; }
  .res-heros p{ margin-top:24px !important; }
}
@media (max-width:640px){
  .gabarit-ressources .boite,
  .gabarit-ressources .res-filtres .boite{ padding-left:20px; padding-right:20px; }
  .res-heros .texte{ padding:32px 20px 12px !important; }
}


@media (max-width:640px){
  .carte-biblio{ padding:20px 16px 22px; }
  .carte-biblio th:nth-child(4), .carte-biblio td:nth-child(4){ display:none; }
  .carte-biblio th, .carte-biblio td{ padding:10px 5px; font-size:14px; }.carte-biblio td:first-child > *,.carte-biblio td:first-child > :where(.vv-w) > *{ max-width:100%; }
  .carte-biblio table{ table-layout:fixed; }
  .cd-autour .cd-groupe[data-carrousel] .cd-carte{ padding-bottom:66px; }.cd-autour .cd-groupe[data-carrousel] > .fleches,.cd-autour .cd-groupe[data-carrousel] > :where(.vv-w) > .fleches{ right:auto; left:50%; transform:translateX(-50%); bottom:20px; }
}

@media (max-width:640px){
  .carte-biblio td, .carte-biblio th{ overflow-wrap:anywhere; hyphens:auto; }
  .carte-biblio td:nth-child(2){ font-size:13px; }
}
@media (min-width:1100px) and (max-width:1439px){
  .gabarit-article .infolettre .carte{ margin-left:0 !important; margin-right:0 !important; }
}

@media (max-width:1099px){
  .ia-credits .sep, .ia-credits .sep-2{ display:none !important; }
  .ia-credits .anneau{ justify-self:center; }
  .ia-credits .paliers{ display:grid !important; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px !important; width:100%; align-items:start; }
  .ia-credits .paliers li{ gap:8px; }
  .ia-credits .paliers .ico{ width:56px !important; height:56px !important; align-items:center; }
  .ia-credits .paliers .ico img{ display:block; width:100%; height:100%; object-fit:contain; }
  .ia-credits .paliers span:not(.ico){ width:auto !important; max-width:none; height:auto !important; font-size:14px; }
  .ia-credits .droite{ align-items:center !important; gap:22px !important; margin-top:0 !important; }
}
@media (max-width:1099px){
  
  .ia-credits .carte{ grid-template-columns:minmax(0,1fr) !important; }.ia-credits .carte > *,.ia-credits .carte > :where(.vv-w) > *{ min-width:0; }
}
@media (max-width:400px){
  .ia-credits .titre{ font-size:26px !important; line-height:1.2; }
  .ia-credits .mention{ font-size:17px; }
  .ia-credits .btn-plan{ font-size:16px; padding-left:18px; padding-right:18px; }
}


@media (min-width:1100px){
  
  .gabarit-candidats .cd-panneau.blanc,
  .gabarit-candidats .cd-panneau.lilas{ height:auto !important; min-height:846px; padding-bottom:48px !important; }
  .gabarit-candidats .cand-partenaires{ margin-top:28px !important; }
  
  .gabarit-contact .ct-carte{ padding-left:76px !important; padding-bottom:72px !important; }
}

@media (min-width:1100px){
  .gabarit-contact .ct-consent{ line-height:21px !important; gap:12px !important; }
  .gabarit-contact .ct-consent input{ margin-top:1px !important; }.gabarit-contact :where(.vv-w):has(> .ct-consent) + :where(.vv-w) > .ct-consent,.gabarit-contact .ct-consent + .ct-consent,.gabarit-contact .ct-consent + :where(.vv-w) > .ct-consent,.gabarit-contact :where(.vv-w):has(> .ct-consent) + .ct-consent{ margin-top:12px !important; }
}
@media (max-width:1099px){
  .gabarit-contact .ct-consent input{ margin-top:2px !important; }
}.cd-autour .cd-groupe[data-carrousel] > .fleches,.cd-autour .cd-groupe[data-carrousel] > :where(.vv-w) > .fleches{ bottom:12px; }
@media (min-width:641px) and (max-width:1099.98px){
  .cd-autour .cd-groupe[data-carrousel] > .fleches{ bottom:20px; }
}
@media (max-width:640px){
  .cd-autour .cd-groupe[data-carrousel] > .fleches{ bottom:20px; }
}


.gabarit-candidats .surtitre{ background-image:none !important; -webkit-text-fill-color:currentColor; color:#325EE2 !important; }
.gabarit-candidats h2 .cd-degrade{ background-image:linear-gradient(to bottom right,#FA58A3 -20%,#5F74FA 90%) !important; }


@media (min-width:1100px){
  .ia-exigences::before{ top:-102px; }
}


.gabarit-metiers .appel .carte-appel .visuel img[src*="rond-groupe"]{ width:118%; height:auto; max-width:none; flex:none; }
@media (max-width:640px){ .gabarit-metiers .appel .carte-appel .visuel img[src*="rond-groupe"]{ width:104%; } }


@media (min-width:1100px){
  .infolettre .btn{ border-radius:23px; margin-left:-23px; position:relative; z-index:1; font-weight:500; }
  .infolettre input[type=email]{ padding-right:46px; }
}


@media (min-width:1100px){
  .ia-exigences{ z-index:2; }
}


@media (min-width:1100px){
  .ct-heros .vague-fond{
    object-position:0 calc(-127px - (var(--vw) - 1881px) * 687 / 1881);
  }
}


.ct-info-legale{ margin:10px 0 0 31px; font-size:13px; line-height:18px; color:#667085; }


@media (max-width:389.98px){
  .ia-credits .paliers span:not(.ico){ font-size:12.5px !important; overflow-wrap:anywhere; hyphens:auto; }
  .ia-credits .paliers{ gap:8px !important; }
}


@media (min-width:1100px){
  .ia-exigences .mentions li{ position:relative; }
  .ia-exigences .mentions li:nth-child(1){ top:-15px; }
  .ia-exigences .mentions li:nth-child(2){ top:-11px; }
  .ia-exigences .mentions li:nth-child(3){ top:1px; }
  .ia-exigences .mentions li:nth-child(4){ top:5px; }
  
  .ia-exigences .flux{ margin-left:-56px; position:relative; z-index:0; top:3px; } 
  .ia-exigences .mentions{ position:relative; z-index:1; }
}


@media (min-width:1100px){
  html body.gabarit-contact .ct-carte{ width:666px; padding-right:44px !important; }
}


@media (max-width:640px){
  .gabarit-cortexia .ia-heros{ padding-bottom:0; }
  .gabarit-cortexia .ia-heros h1{ font-size:34px; line-height:1.1; }
  .gabarit-cortexia .ia-heros .chapo{ color:#5B2E9E; font-size:17px; line-height:1.4; margin-top:18px; }
  .gabarit-cortexia .ia-heros .actions{ margin-top:24px; gap:12px; }
  .gabarit-cortexia .ia-heros .visuel{ margin:28px 0 0; }
  .gabarit-cortexia .ia-heros .visuel img{ border-radius:12px 12px 0 0; box-shadow:none; }

  .gabarit-cortexia .ia-etapes{ padding:48px 0 40px; }
  .gabarit-cortexia .ia-etapes .h2{ font-size:26px; margin-bottom:28px; }
  .gabarit-cortexia .ia-etapes-grille{ gap:28px; }
  .gabarit-cortexia .ia-etape .carte{ min-height:0 !important; padding:22px 20px; width:auto !important; }
  .gabarit-cortexia .ia-etape:first-child .carte{ padding:26px 20px; }
  .gabarit-cortexia .ia-etape .fichier img{ width:60px; height:60px; }
  .gabarit-cortexia .ia-etape .rang span::after{ height:28px; margin-top:62px; }

  .gabarit-cortexia .ia-exigences{ padding:36px 0 24px !important; }
  .gabarit-cortexia .ia-exigences::before{ display:none; }
  .gabarit-cortexia .ia-exigences h2{ font-size:26px; }
  .gabarit-cortexia .ia-exigences .mentions{ gap:14px; margin-top:20px; }
  .gabarit-cortexia .ia-exigences .mentions li{ margin-left:0 !important; font-size:19px; }
  .gabarit-cortexia .ia-exigences .flux{ margin:24px auto 0 !important; width:100%; top:0 !important; left:0 !important; }
  .gabarit-cortexia .ia-exigences .flux img{ width:100% !important; height:auto !important; }

  .gabarit-cortexia .ia-partage{ padding:40px 0 32px; }
  .gabarit-cortexia .carte-biblio{ padding:18px 16px 20px; }
  .gabarit-cortexia .carte-biblio th, .gabarit-cortexia .carte-biblio td{ font-size:13px !important; line-height:18px !important; padding:10px 4px 10px 0 !important; height:auto !important; hyphens:manual; -webkit-hyphens:manual; }
  .gabarit-cortexia .carte-biblio .etat{ padding:6px 10px; font-size:12.5px; white-space:nowrap; }
  .gabarit-cortexia .carte-biblio .barre{ width:64px; }
  .gabarit-cortexia .ia-partage .texte{ padding-top:24px; }
  .gabarit-cortexia .ia-partage .texte h2{ font-size:26px; line-height:1.2; }
  .gabarit-cortexia .ia-partage .texte p{ width:auto; margin:14px 0 0; font-size:16px; line-height:1.5; }

  .gabarit-cortexia .ia-atouts-bande{ margin-top:0; padding:8px 0 0; }
  .gabarit-cortexia .ia-atouts{ flex-direction:column; align-items:stretch; gap:6px; padding:24px 0 0; }
  .gabarit-cortexia .ia-atouts li{ justify-content:flex-start; gap:12px; width:100%; }
  .gabarit-cortexia .ia-atouts .ico{ width:56px; height:56px; }
  .gabarit-cortexia .ia-atouts .ico img{ width:44px; height:44px; }
  .gabarit-cortexia .ia-atouts b{ font-size:19px; }

  .gabarit-cortexia .ia-credits{ padding:36px 0; }
  .gabarit-cortexia .ia-credits .carte{ padding:26px 20px 28px; text-align:center; }
  .gabarit-cortexia .ia-credits .titre{ font-size:22px !important; line-height:1.25; margin-top:0; }
  .gabarit-cortexia .ia-credits .mention{ margin-top:10px; font-size:16px; }
  .gabarit-cortexia .ia-credits .anneau{ justify-self:center; width:150px; height:150px; margin:0 auto; }
  .gabarit-cortexia .ia-credits .droite{ align-items:center; }
  .gabarit-cortexia .ia-credits .paliers{ justify-content:center; gap:18px; }
  .gabarit-cortexia .ia-credits .btn-plan{ margin:22px 0 0 !important; }
}
@media (max-width:640px){
  .gabarit-cortexia .carte-biblio .entete{ gap:8px; padding-bottom:12px; }
  .gabarit-cortexia .carte-biblio .titre{ font-size:16px; line-height:1.2; }
  .gabarit-cortexia .carte-biblio .btn-mini{ white-space:nowrap; padding:7px 10px; font-size:13px; }
}


.res-aside h2 .res-aside-bascule{ all:unset; cursor:default; display:flex; align-items:center; justify-content:space-between; width:100%; font:inherit; color:inherit; }
.res-aside h2 .chevron{ display:none; width:10px; height:10px; border-right:2px solid #0B172E; border-bottom:2px solid #0B172E; transform:rotate(45deg); transition:transform .2s ease; margin-right:4px; }
@media (max-width:1080px){
  .res-aside h2 .res-aside-bascule{ cursor:pointer; }
  .res-aside h2 .chevron{ display:block; }
  .res-aside[data-replie="1"] .res-aside-liste{ display:none; }
  .res-aside[data-replie="1"] h2{ margin-bottom:0; }
  .res-aside[data-replie="1"] h2 .chevron{ transform:rotate(-45deg); }
}.cd-autour .cd-groupe[data-carrousel] > .fleches,.cd-autour .cd-groupe[data-carrousel] > :where(.vv-w) > .fleches{ bottom:22px; align-items:center; }.cd-autour .cd-groupe[data-carrousel] > .fleches button,.cd-autour .cd-groupe[data-carrousel] > :where(.vv-w) > .fleches button{ width:44px; height:44px; }


.res-filtres-mobile, .res-carte .lire-res, .ct-lib, .ct-champs-oblig, .ct-plier{ display:none; }
@media (max-width:640px){
  
  .gabarit-ressources .res-filtres, .gabarit-ressources .res-barre:has(.res-recherche){ display:none; }
  .res-filtres-mobile{ display:block; padding:6px 0 0; }
  .res-filtres-mobile .boite{ display:flex; flex-direction:column; gap:12px; }
  .res-filtres-mobile .titre{ font-family:'Satoshi',sans-serif; font-weight:700; font-size:18px; color:var(--ink); }
  .res-filtres-mobile .champ-recherche{ position:relative; }
  .res-filtres-mobile .champ-recherche svg{ position:absolute; left:16px; top:50%; transform:translateY(-50%); width:18px; height:18px; color:#667085; pointer-events:none; }
  .res-filtres-mobile input{ width:100%; height:54px; border:1px solid var(--ligne); border-radius:16px; padding:0 16px 0 44px; font:inherit; font-size:16px; color:var(--ink); background:#fff; }
  
  .res-filtres-mobile .duo{ display:flex; flex-direction:column; gap:10px; }.res-filtres-mobile .duo > label,.res-filtres-mobile .duo > :where(.vv-w) > label{ display:grid; grid-template-columns:86px minmax(0,1fr); align-items:center; gap:10px; font-size:14px; font-weight:700; color:#4A5568; }
  .res-filtres-mobile .select{ position:relative; display:block; }
  .res-filtres-mobile select{ width:100%; height:50px; appearance:none; -webkit-appearance:none; border:1px solid var(--ligne); border-radius:16px; padding:0 38px 0 16px; font:inherit; font-family:'Satoshi',sans-serif; font-weight:700; font-size:16px; color:var(--ink); background:#fff; text-overflow:ellipsis; }
  .res-filtres-mobile .select::after{ content:""; position:absolute; right:18px; top:50%; width:9px; height:9px; border-right:2px solid var(--ink); border-bottom:2px solid var(--ink); transform:translateY(-70%) rotate(45deg); pointer-events:none; }
  .res-filtres-mobile input:focus, .res-filtres-mobile select:focus{ outline:2px solid #746DFF; border-color:transparent; }.gabarit-ressources .res-barre + :where(.vv-w) > .res-barre,.gabarit-ressources :where(.vv-w):has(> .res-barre) + :where(.vv-w) > .res-barre,.gabarit-ressources .res-barre + .res-barre,.gabarit-ressources :where(.vv-w):has(> .res-barre) + .res-barre{ padding-top:22px; }
  
  .gabarit-ressources .res-corps{ padding-top:6px; }
  .gabarit-ressources .res-grille{ display:flex; flex-direction:column; gap:0; }
  .gabarit-ressources .res-carte{ background:none; border-radius:0; box-shadow:none !important; border-bottom:1px solid var(--ligne); padding:22px 0 24px; transform:none !important; min-height:0; overflow:visible; }
  .gabarit-ressources .res-carte:first-child{ padding-top:8px; }
  .gabarit-ressources .res-carte .visuel{ aspect-ratio:16/9; border-radius:14px; }
  .gabarit-ressources .res-carte .corps{ padding:16px 0 0; display:grid; grid-template-columns:minmax(0,1fr) auto; gap:8px 12px; align-items:baseline; }
  .gabarit-ressources .res-carte .type{ grid-column:1; grid-row:1; margin:0; font-size:13px; }
  .gabarit-ressources .res-carte .type i{ display:none; }
  .gabarit-ressources .res-carte[data-univers="rose"] .type{ color:#FE2977; }
  .gabarit-ressources .res-carte[data-univers="teal"] .type{ color:#028D9D; }
  .gabarit-ressources .res-carte[data-univers="bleu"] .type{ color:#0161D8; }
  .gabarit-ressources .res-carte .duree{ grid-column:2; grid-row:1; margin:0; padding:0; font-size:14px; }
  .gabarit-ressources .res-carte .duree svg{ display:none; }
  .gabarit-ressources .res-carte h3{ grid-column:1 / -1; font-size:21px; line-height:1.25; margin:2px 0 0; }.gabarit-ressources .res-carte .corps > p:not(.type):not(.duree):not(.lire-res),.gabarit-ressources .res-carte .corps > :where(.vv-w) > p:not(.type):not(.duree):not(.lire-res){ grid-column:1 / -1; font-size:16px; line-height:1.45; color:#4A5568; margin:0; }
  .gabarit-ressources .res-carte .lire-res{ display:block; grid-column:1 / -1; margin-top:4px; font-family:'Satoshi',sans-serif; font-weight:700; font-size:16px; color:var(--accent); }
  
  .gabarit-contact .ct-heros{ padding:18px 0 22px; }
  .gabarit-contact .ct-heros h1{ font-size:30px; line-height:1.12; }
  .gabarit-contact .ct-heros .chapo{ margin-top:16px; font-size:16px; font-weight:500; line-height:1.45; color:#4A5568; }
  .gabarit-contact .ct-grille{ gap:28px; padding-bottom:40px; }
  .gabarit-contact .ct-carte{ order:1; padding:22px 18px 26px; }
  .gabarit-contact .ct-cote{ order:2; }
  .gabarit-contact .ct-cote h2{ font-size:28px; }
  .gabarit-contact .ct-cote .intro{ margin-top:14px; font-size:16px; line-height:1.45; }
  .gabarit-contact .ct-promesses{ margin-top:24px; gap:18px; }
  .gabarit-contact .ct-direct{ margin-top:26px; padding-top:22px; }
  .gabarit-contact .ct-titre{ font-size:22px; margin-bottom:14px; }
  .gabarit-contact .ct-form-intro{ display:none; }
  .gabarit-contact .ct-bloc legend{ font-size:20px; margin-bottom:6px; }
  .gabarit-contact .ct-champs-oblig{ display:block; margin:0 0 18px; font-size:14px; color:#667085; }
  .gabarit-contact .ct-lib{ display:block; margin:0 0 8px; font-family:'Satoshi',sans-serif; font-weight:700; font-size:16px; color:var(--ink); }
  .gabarit-contact .ct-lib .ct-fac{ font-family:'Inter',sans-serif; font-weight:400; font-size:14px; color:#667085; }.gabarit-contact .ct-bloc > input,.gabarit-contact .ct-bloc > :where(.vv-w) > input,.gabarit-contact .ct-bloc > select,.gabarit-contact .ct-bloc > :where(.vv-w) > select,.gabarit-contact .ct-duo > input,.gabarit-contact .ct-duo > :where(.vv-w) > input{ margin-bottom:20px; padding:16px 16px; border-radius:14px; font-size:16px; background:#fff; }
  .gabarit-contact .ct-bloc input::placeholder{ color:transparent; }
  .gabarit-contact .ct-duo{ grid-template-columns:1fr 1fr; grid-template-rows:auto auto; grid-auto-flow:column; column-gap:14px; row-gap:0; margin-bottom:20px; }.gabarit-contact .ct-duo > input,.gabarit-contact .ct-duo > :where(.vv-w) > input{ margin-bottom:0; }
  .gabarit-contact .ct-pliable{ margin-bottom:26px; }
  .gabarit-contact .ct-pliable legend, .gabarit-contact .ct-pliable .ct-bloc-intro{ display:none; }
  .gabarit-contact .ct-plier{ display:grid; grid-template-columns:1fr auto; column-gap:14px; align-items:center; width:100%; padding:18px 20px; border:1px solid var(--ligne); border-radius:16px; background:#F7F9FC; text-align:left; cursor:pointer; font:inherit; color:var(--ink); }
  .gabarit-contact .ct-plier b{ font-family:'Satoshi',sans-serif; font-weight:700; font-size:18px; }
  .gabarit-contact .ct-plier span{ grid-column:1; font-size:14.5px; color:#667085; margin-top:2px; }
  .gabarit-contact .ct-plier .chevron{ grid-column:2; grid-row:1 / 3; width:10px; height:10px; border-right:2px solid var(--ink); border-bottom:2px solid var(--ink); transform:rotate(45deg); transition:transform .2s; }
  .gabarit-contact .ct-pliable.ouvert .ct-plier{ margin-bottom:18px; }
  .gabarit-contact .ct-pliable.ouvert .ct-plier .chevron{ transform:rotate(-135deg); }.gabarit-contact .ct-pliable:not(.ouvert) > :not(legend):not(.ct-plier),.gabarit-contact .ct-pliable:not(.ouvert) > :where(.vv-w) > :not(legend):not(.ct-plier){ display:none; }
  
  .gabarit-contact .ct-form{ display:flex; flex-direction:column; }
  .gabarit-contact .ct-form .ct-consent{ order:1; }
  .gabarit-contact .ct-form .ct-info-legale{ order:2; }
  .gabarit-contact .ct-form .btn{ order:3; margin-top:22px; }
  .gabarit-contact .ct-form .ct-case-manquante{ order:4; }
  .gabarit-contact .ct-form .btn{ display:flex; justify-content:center; align-items:center; width:100%; height:58px; padding:0 20px; border-radius:999px; background:#325EE2; border-color:#325EE2; color:#fff; font-size:17px; }
  .gabarit-contact .ct-form .btn::after{ content:"\2192"; margin-left:8px; }
  .gabarit-contact .ct-consent{ margin-top:4px; font-size:15px; line-height:1.5; }
  .gabarit-contact .ct-info-legale{ margin-left:0; }
  .gabarit-contact .ct-mains{ padding-bottom:40px; }
}


@media (max-width:640px){
  html body.gabarit-cortexia .carte-appel{ position:relative; overflow:hidden; text-align:left; padding:28px 22px 26px; }
  html body.gabarit-cortexia .carte-appel .visuel.bulle{ position:absolute; right:-56px; top:-48px; width:230px; height:230px; max-width:none; margin:0; background:none; border-radius:0; aspect-ratio:auto; z-index:0; pointer-events:none; }
  html body.gabarit-cortexia .carte-appel .visuel.bulle img{ width:100%; height:100%; object-fit:contain; display:block; }
  html body.gabarit-cortexia .carte-appel h2{ position:relative; z-index:1; padding-right:96px; font-size:24px; text-align:left; }
  html body.gabarit-cortexia .carte-appel p, html body.gabarit-cortexia .carte-appel .surtitre{ position:relative; z-index:1; text-align:left; }
  html body.gabarit-cortexia .carte-appel .btn{ position:relative; z-index:1; width:100%; display:flex; justify-content:center; }
}


@media (max-width:640px){
  
  html body.gabarit-candidats .cand-heros{ padding-top:0; }
  html body.gabarit-candidats .cand-heros .cand-photo{ display:block; position:relative; inset:auto; width:100%; height:210px; margin:0; }
  html body.gabarit-candidats .cand-heros .cand-photo img{ width:100%; height:100%; object-fit:cover; object-position:center 35%; display:block; }
  html body.gabarit-candidats .cand-heros .cand-photo::after{ content:""; position:absolute; inset:0; background:linear-gradient(180deg, rgba(43,47,60,.25) 0%, rgba(43,47,60,.08) 50%, #fff 100%); }
  html body.gabarit-candidats .cand-heros .boite{ padding-top:8px; }
  html body.gabarit-candidats .cand-heros h1{ font-size:30px; line-height:1.12; }
  html body.gabarit-candidats .cand-heros .chapo{ font-size:16px; line-height:1.45; margin-top:14px; }
  
  html body.gabarit-candidats .cand-heros .actions{ display:flex; flex-direction:column; gap:10px; }
  html body.gabarit-candidats .cand-heros .actions .btn{ width:100%; justify-content:center; height:52px; }
  
  html body.gabarit-candidats .cd-besoin .cd-cartes{ grid-template-columns:1fr 1fr; gap:12px; margin-top:24px; }
  html body.gabarit-candidats .cd-cartes a{ height:156px; border-radius:20px; }
  html body.gabarit-candidats .cd-cartes .picto{ width:118px; height:118px; top:-8px; }
  html body.gabarit-candidats .cd-cartes .picto.petit{ width:104px; height:104px; top:4px; }
  html body.gabarit-candidats .cd-cartes .picto.lit{ width:92px; height:92px; top:10px; left:calc(50% - 26px); }html body.gabarit-candidats .cd-cartes .picto.lit + :where(.vv-w) > .picto.petit,html body.gabarit-candidats .cd-cartes .picto.lit + .picto.petit,html body.gabarit-candidats .cd-cartes :where(.vv-w):has(> .picto.lit) + :where(.vv-w) > .picto.petit,html body.gabarit-candidats .cd-cartes :where(.vv-w):has(> .picto.lit) + .picto.petit{ width:92px; height:92px; top:10px; left:calc(50% + 26px); }
  html body.gabarit-candidats .cd-cartes span{ top:102px; left:6px; right:6px; width:auto; transform:none; padding:0; font-size:14.5px; line-height:1.2; }
  
  html body.gabarit-candidats .cd-titre{ font-size:26px; line-height:1.2; }
  html body.gabarit-candidats .cd-intro{ font-size:16px; line-height:1.45; margin-top:14px; }
  html body.gabarit-candidats .cd-moments{ gap:22px; margin-top:28px; }
  html body.gabarit-candidats .cd-moment li{ font-size:16px; line-height:1.4; gap:0; }
  html body.gabarit-candidats .cd-moment li .coche{ display:none; }
  html body.gabarit-candidats .cd-moment ul{ padding-left:0; }
  
  html body.gabarit-candidats .cd-marge{ font-size:14px; font-weight:500; line-height:1.4; color:#4A5568; text-align:center; }
  
  html body.gabarit-candidats .cd-autour .cd-rond{ display:none; }
  
  html body.gabarit-candidats .cd-centre:not([hidden]){ display:flex; flex-direction:column; gap:16px; }
  html body.gabarit-candidats .cd-centre .cd-plan, html body.gabarit-candidats .cd-centre .cd-fiche{ width:100%; }
  html body.gabarit-candidats .cd-fiche{ text-align:center; padding:24px 20px; }
  html body.gabarit-candidats .cd-fiche-action .btn, html body.gabarit-candidats .cd-fiche-action2 .btn{ margin:0 auto; }
  html body.gabarit-candidats .cd-pli summary{ justify-content:center; }
  
  html body.gabarit-candidats .cd-autour .cand-partenaires{ margin-top:10px !important; font-size:13px; line-height:1.3; color:#667085; }
  
  html body.gabarit-candidats .cand-avertissement{ display:none; }
  
  html body.gabarit-candidats .cd-fiche-action2 .btn{ white-space:nowrap; font-size:13.5px; padding:0 16px; }
}


@media (max-width:640px){
  
  html body[class] .res-filtres-mobile select, html body[class] .res-filtres-mobile input{ border:1.5px solid #DCE2F5; box-shadow:0 2px 8px rgba(50,94,226,.08); }
  html body[class] .res-filtres-mobile .select::after{ width:10px; height:10px; border-width:0 2.5px 2.5px 0; border-color:#325EE2; border-radius:1px; right:17px; }
  html body[class] .res-filtres-mobile .champ-recherche svg{ color:#325EE2; }
  
  html body.gabarit-ressources .res-vague{ min-height:200px; background:url('../img/pages/vague-ressources-mobile.webp') center / cover no-repeat; }
  html body.gabarit-ressources .res-vague .vague-fixe, html body.gabarit-ressources .res-vague canvas, html body.gabarit-ressources .res-vague video{ display:none; }
  
  html body[class] .infolettre .carte{ padding:26px 20px 22px; }
  html body[class] .infolettre h2{ font-size:22px; line-height:1.25; }html body[class] .infolettre h2 + :where(.vv-w) > p,html body[class] .infolettre h2 + p,html body[class] .infolettre :where(.vv-w):has(> h2) + :where(.vv-w) > p,html body[class] .infolettre :where(.vv-w):has(> h2) + p{ display:none; }
  html body[class] .infolettre form{ background:none; box-shadow:none; padding:0; gap:10px; margin-top:16px; }
  html body[class] .infolettre input[type=email]{ height:52px; background:#fff; border:1px solid var(--ligne); border-radius:999px; padding:0 18px; box-shadow:var(--ombre-carte); }
  html body[class] .infolettre form .btn{ width:100%; height:52px; }
  html body[class] .infolettre .mentions{ margin-top:10px; }
  html body[class] .infolettre .mentions label{ font-size:13px; color:#667085; }
  html body[class] .infolettre .mentions p{ margin-top:4px; font-size:13px; line-height:1.4; color:#667085; }
  
  html body.gabarit-contact .ct-heros{ padding:18px 0 150px; background:url('../img/pages/vague-contact-mobile.webp') center bottom -10px / 820px auto no-repeat; }
  html body.gabarit-contact .ct-heros .vague-fond{ display:none; }
  html body.gabarit-contact .ct-grille{ margin-top:-92px; position:relative; z-index:1; }
  html body.gabarit-contact .ct-carte{ background:rgba(255,255,255,.96); }
  
  html body.gabarit-contact .ct-info-legale{ margin:6px 0 0 29px; font-family:inherit; font-size:13.5px; line-height:1.4; color:#4A5568; }
  
  html body.gabarit-contact .ct-cote h2, html body.gabarit-contact .ct-cote .intro{ display:none; }
  html body.gabarit-contact .ct-promesses{ margin-top:8px; gap:16px; align-items:center; }
  html body.gabarit-contact .ct-promesses li{ justify-content:center; width:100%; max-width:300px; gap:16px; }
  html body.gabarit-contact .ct-promesses b{ text-align:left; min-width:170px; }
  html body.gabarit-contact .ct-direct{ text-align:center; }
  
  html body.gabarit-contact .ct-mains{ display:none; }
}


@media (max-width:640px){
  html body.gabarit-cortexia .ia-exigences{ position:relative; overflow:hidden; }
  html body.gabarit-cortexia .ia-exigences::before{ display:block; content:""; position:absolute; left:auto; right:-120px; top:-30px; width:300px; height:300px; background:url('../img/cortexia/bulle.webp') center/contain no-repeat; z-index:0; opacity:.95; pointer-events:none; }
  html body.gabarit-cortexia .ia-exigences-grille{ position:relative; z-index:1; }
}


@media (max-width:640px){
  html body.gabarit-cortexia .ia-exigences::before{ display:none; }
  html body.gabarit-cortexia .ia-exigences .flux{ display:none; }
  html body.gabarit-cortexia .ia-exigences .mentions{ position:relative; }
  html body.gabarit-cortexia .ia-exigences .mentions::after{ content:""; position:absolute; right:-104px; top:50%; width:210px; height:210px; transform:translateY(-50%); background:url('../img/cortexia/bulle.webp') center/contain no-repeat; z-index:-1; opacity:.95; pointer-events:none; }
}


@media (max-width:640px){
  
  html body.gabarit-cortexia .ia-exigences{ overflow:hidden; }
  html body.gabarit-cortexia .ia-exigences .mentions::after{ width:780px; height:520px; right:-365px; opacity:1; }
  
  html body.gabarit-candidats .cand-heros .boite{ position:relative; z-index:1; margin-top:-112px; text-align:left; }
  html body.gabarit-candidats .cand-heros h1, html body.gabarit-candidats .cand-heros .chapo{ text-align:left; }
  
  html body.gabarit-candidats .cd-groupes .btn{ width:100%; display:flex; justify-content:center; }
  
  html body.gabarit-candidats .cd-appel{ padding-top:0 !important; }
  html body.gabarit-candidats .sol-faq{ padding-bottom:24px !important; }
  
  html body.gabarit-candidats .cd-appel .carte-appel h2{ white-space:nowrap; font-size:21px; }
  
  html body[class] .infolettre input[type=email]{ flex:0 0 auto; }
  
  html body.gabarit-contact .ct-heros{ padding-bottom:220px; background-size:900px auto; background-position:center bottom 10px; }
}


@media (max-width:640px){
  
  html body .cand-heros{ padding-bottom:23px; }
  
  html body[class] .cd-fiche .cd-pli{ padding-left:0; }
  html body[class] .cd-fiche .cd-pli summary{ padding-left:40px; }
  
  html body[class] .infolettre .carte{ row-gap:14px; }
  html body[class] .infolettre form{ margin-top:0; }
  html body[class] .infolettre input[type=email]{ height:46px; }
  
  html body.gabarit-contact .ct-heros{ background-position:center bottom 70px; }
}

/* 13/10 soir (retours de Sarah, ordinateur) */
/* Icônes lit et couverts : l'image était bridée à 97 px de large par un max-width:100% hérité, donc écrasée (97 × 160). */
html body .cd-rond img{ max-width:none !important; width:160px !important; height:160px !important; }
@media (min-width:1100px){
  /* « Prévoyez une marge… » : remontée juste sous le plan (fin du plan à 738 px dans la carte) au lieu de coller au bas de l'encadré. */
  html body.gabarit-candidats .cd-marge{ top:766px; }
}

/* 14/10 : tableaux et bouton d'appel des ressources (guides, études, cas clients de Sarah). */
.art-texte table{ width:100%; border-collapse:collapse; margin:8px 0 26px; font-size:16px; line-height:1.45; color:#0B172E; }
.art-texte th, .art-texte td{ text-align:left; vertical-align:top; padding:12px 14px; border-bottom:1px solid #E4E7EC; }
.art-texte thead th{ background:#F2F4F7; font-weight:700; border-bottom:2px solid #D0D5DD; }
.art-texte tbody tr:nth-child(even) td{ background:#FAFBFC; }
.art-texte td:first-child{ font-weight:600; }
.art-texte p.art-cta{ margin-top:22px; margin-bottom:34px; }
.art-texte p.art-cta a{ display:inline-block; text-decoration:none; }
@media (min-width:1100px){
  .art-texte table{ margin-left:38px; width:calc(100% - 38px); font-size:17px; }
}
@media (max-width:700px){
  .art-texte table{ display:block; overflow-x:auto; font-size:15px; }
  .art-texte th, .art-texte td{ min-width:140px; }
}

/* 15/10 (Sarah) : titres d'articles plus petits ; sommaire plus discret et articles liés plus
   lisibles sur ordinateur ; sur mobile, le sommaire passe au-dessus du texte et les articles
   liés restent en bas. */
.art-entete h1{ font-size:clamp(28px,4.4vw,52px); line-height:1.12; }
@media (min-width:1100px){
  .art-entete h1{ font-size:52px; line-height:1.12; }
  .sommaire{ padding:20px 10px 18px 40px; }
  .sommaire h2{ font-size:18px; line-height:23px; margin-bottom:8px; }
  .sommaire a{ font-size:15px; line-height:20px; padding:7px 0 7px 12px; }
  .lies{ padding:22px 18px 20px 22px; }
  .lies h2{ font-size:18px; line-height:23px; margin-bottom:6px; }
  .lies .item{ grid-template-columns:64px 1fr; gap:12px; padding:10px 0; }
  .lies .item p{ font-size:14.5px; line-height:1.35; }
  .lies .item small{ font-size:12.5px; }
}
@media (max-width:1099px){
  .art-corps .art-aside{ display:contents; }
  .art-corps .sommaire{ order:-1; margin-bottom:8px; }
  .art-corps .lies{ order:1; }
}

/* 15/10 (Sarah) : sous-titres d'articles un peu plus petits sur mobile. */
@media (max-width:1099px){
  .art-texte h2{ font-size:21px; line-height:1.3; margin:30px 0 12px; }
  .art-texte h3{ font-size:18px; line-height:1.35; }
}

/* 15/10 (Sarah) : un clic dans le sommaire amène sur le titre de la partie, pas sous l'en-tête fixe. */
.art-texte h2[id], .art-texte h3[id]{ scroll-margin-top:120px; }
@media (max-width:1099px){ .art-texte h2[id], .art-texte h3[id]{ scroll-margin-top:96px; } }
