/* Prépa GPX — rythme et mouvement, candidat du 30 octobre 2026.
   À charger après design.css et guides.css. Aucun changement de contenu. */
:where(.gpx-refresh,.gpx-guide-v3,.gpx-library){
  --gpx-ref-blue:#000091;--gpx-ref-ink:#161632;--gpx-ref-red:#a90011;
  --gpx-ref-pale:#f4f5ff;--gpx-ref-line:#dcdff1;
  --gpx-ref-ease:cubic-bezier(.2,.7,.2,1);
}
:where(.gpx-refresh,.gpx-guide-v3,.gpx-library) *,
:where(.gpx-refresh,.gpx-guide-v3,.gpx-library) *::before,
:where(.gpx-refresh,.gpx-guide-v3,.gpx-library) *::after{box-sizing:border-box}
.gpx-refresh .gr-inner{width:min(100% - 64px,1192px);max-width:1192px;padding:0;margin-inline:auto;min-width:0}
.gpx-refresh .gr-section{padding-block:clamp(56px,7vw,100px)}
.gpx-refresh :where(.gr-eyebrow){font-size:12px;line-height:1.5;font-weight:750;letter-spacing:.11em;text-transform:uppercase;margin:0 0 16px}
.gpx-refresh .gr-eyebrow{color:var(--gpx-ref-red)}
.gpx-refresh .gr-dates-strip .gr-eyebrow,.gpx-refresh .gr-team-contact .gr-eyebrow{color:#fff}
.gpx-refresh :where(h2){font-size:clamp(28px,3.4vw,44px);line-height:1.15;letter-spacing:-.035em;text-wrap:balance}
.gpx-refresh :where(h3){line-height:1.3;letter-spacing:-.015em}
.gpx-refresh :where(p){line-height:1.75}
.gpx-refresh :where(.gr-team-intro,.gr-team-method,.gr-photo-split,.gr-resource-layout)>*{min-width:0}

/* Le rouge de lecture doit aussi rester lisible sur le fond lavande du menu actif. */
#masthead .elementor-235 .elementor-nav-menu--main :is(.elementor-item,.elementor-sub-item):is(.elementor-item-active,[aria-current="page"],:hover,:focus-visible){color:#a90011}
#masthead .elementor-235 .elementor-nav-menu--dropdown a:is(.elementor-item,.elementor-sub-item):is(.elementor-item-active,.highlighted,[aria-current="page"],:hover,:focus,:focus-visible){background-color:#e3e3fd;color:#a90011}

/* Un héros contrasté commun aux guides et à la bibliothèque. */
.gpx-ed:is(.gpx-guide-v3,.gpx-library)>.gpx-hero{
  position:relative;isolation:isolate;background:linear-gradient(115deg,#000070 0%,#000091 64%,#1414b8 100%);
  color:#fff;padding-block:clamp(48px,7vw,88px);border:0;
}
.gpx-ed:is(.gpx-guide-v3,.gpx-library)>.gpx-hero::before{
  content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;
  background:linear-gradient(126deg,transparent 62%,#ffffff08 62%,#ffffff08 74%,transparent 74%);
}
.gpx-ed:is(.gpx-guide-v3,.gpx-library)>.gpx-hero::after,
.gpx-refresh .gr-team-hero::after{
  content:"";display:block;position:absolute;left:0;bottom:0;width:100%;height:5px;
  background:linear-gradient(90deg,#000091 0 58%,#fff 58% 79%,#e1000f 79% 100%);pointer-events:none;
}
.gpx-ed:is(.gpx-guide-v3,.gpx-library)>.gpx-hero h1{color:#fff;max-width:1000px;font-size:clamp(34px,4.7vw,62px);line-height:1.08;letter-spacing:-.045em;text-wrap:balance}
.gpx-ed:is(.gpx-guide-v3,.gpx-library)>.gpx-hero .gpx-lead{color:#f1f1ff;max-width:850px;font-size:clamp(17px,1.8vw,21px);line-height:1.65}
.gpx-ed:is(.gpx-guide-v3,.gpx-library)>.gpx-hero :is(.gpx-kicker,.gpx-kicker a,.gpx-guide-date){color:#dedfff}
.gpx-ed:is(.gpx-guide-v3,.gpx-library)>.gpx-hero a:hover{color:#fff}

/* Accueil et tarifs : typographie plus franche, repère tricolore, surfaces distinctes. */
.acc1 .acc1-in{max-width:1080px}
.acc1 .acc1-in h1{font-size:clamp(36px,4.9vw,64px);line-height:1.06;letter-spacing:-.045em}
.acc1 .acc1-sub{max-width:760px;font-size:clamp(17px,1.7vw,20px);line-height:1.7;color:#f0f0ff}
.st1 .st1-hero h1{font-size:clamp(36px,4.7vw,60px);line-height:1.08;letter-spacing:-.04em}
.acc1 .acc1-hero::after,.st1 .st1-hero::after{content:"";display:block;height:5px;width:144px;margin:30px auto 0;background:linear-gradient(90deg,#5d5de8 0 33.333%,#fff 33.333% 66.666%,#e1000f 66.666% 100%)}
.st1 .st1-hero::after{margin-left:0}
.gpx-refresh .gr-offers{background:#f1f2fb}
.gpx-refresh .gr-offer-grid{gap:24px}
.gpx-refresh .gr-offer{box-shadow:0 12px 34px #0000500b;border-top:4px solid #000091}
.gpx-refresh .gr-offer-live{border-top-color:#e1000f}
.gpx-refresh .gr-offer-platform{border-color:#d9dcef;border-top-color:#000091}
.gpx-refresh .gr-dates-strip{box-shadow:inset 0 -4px 0 #e1000f}
.gpx-refresh .gr-resources{background:#f1f2fb}
.gpx-refresh .gr-resource-list{display:grid;gap:10px;border-top:0}
.gpx-refresh .gr-resource-list a{padding:20px 22px;border:1px solid #dcdff1;background:#fff;box-shadow:0 4px 16px #00005005}
.gpx-refresh .gr-resource-list a:hover{padding-left:22px;background:#e8eafe}
.gpx-refresh .gr-experience>strong{white-space:nowrap;flex-shrink:0}
body.home section.gpx-ed{padding-block:clamp(40px,5vw,64px)}
.gpx-refresh .gr-stage-dates{background:#f3f4fd;padding-block:48px;border-block:1px solid #dcdff1}
.gpx-refresh .gr-stage-date-list>p{background:#fff;border:1px solid #dde0f0;border-left:3px solid #e1000f;margin:0 0 12px;padding:16px 20px}
.t4a .t4a-card,.t4b .t4b-card{box-shadow:0 8px 28px #0000500b!important;transform:none!important;transition:none!important}
.t4a .t4a-card::before,.t4b .t4b-card::before{content:"";position:absolute;left:-1px;right:-1px;top:-1px;height:4px;background:#000091!important;pointer-events:none}
.t4a .t4a-card-pop::before,.t4b .t4b-card-pop::before{background:#e1000f!important}
/* Tarifs uniquement : retirer les marges héritées de 40 px dans chaque élément du CTA,
   puis l'empilement margin/padding du widget et de son conteneur Elementor. */
body.page-id-1125 .t4c{margin-bottom:0!important}
body.page-id-1125 .t4c-cta{padding:48px 32px!important;margin-bottom:0!important}
body.page-id-1125 .t4c-cta :is(.t4c-in,.t4c-btns,.t4c-btn,.t4c-btn svg){margin-bottom:0!important}
body.page-id-1125 .elementor-1125 .elementor-element.elementor-element-da8f5ca{margin-bottom:0;padding-bottom:0}
body.page-id-1125 .elementor-1125 .elementor-element.elementor-element-2b469c2{--padding-bottom:24px;padding-bottom:24px}
body.page-id-1125 .gpx-ed>section#paiement{padding-top:32px}

/* Équipe : une vraie grille de méthode et des espacements stables. */
.gpx-refresh .gr-team-hero{position:relative;background:var(--gpx-ref-pale);padding-block:clamp(48px,6vw,80px)}
.gpx-refresh .gr-team-intro{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(32px,5vw,70px);align-items:center}
.gpx-refresh .gr-team-intro h1{font-size:clamp(36px,4.6vw,60px);line-height:1.07;letter-spacing:-.045em;color:var(--gpx-ref-blue);text-wrap:balance;margin:0 0 24px}
.gpx-refresh .gr-team-intro .gr-lead{font-size:clamp(17px,1.7vw,20px);color:#36364d;margin-bottom:28px}
.gpx-refresh .gr-photo{position:relative;margin:0;min-width:0;isolation:isolate;overflow:visible}
.gpx-refresh .gr-photo::after{content:"";position:absolute;z-index:-1;inset:14px -14px -14px 14px;border:1px solid #bcbce9;background:#e8e9ff;pointer-events:none}
.gpx-refresh .gr-photo img{display:block;width:100%;height:auto;max-width:100%;object-fit:cover;box-shadow:0 14px 36px #00005012}
.gpx-refresh .gr-team-main{height:auto}
.gpx-refresh .gr-team-main img{aspect-ratio:3/2}
.gpx-refresh .gr-photo-split>.gr-photo,.gpx-refresh .gr-team-ways .gr-photo{height:auto}
.gpx-refresh .gr-photo-split>.gr-photo img{aspect-ratio:4/5}
.gpx-refresh .gr-team-credentials{background:#fff;color:#45455f;border-bottom:1px solid var(--gpx-ref-line);padding-block:26px}
.gpx-refresh .gr-team-credentials>.gr-inner{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.gpx-refresh .gr-team-credentials p{margin:0;padding:0 24px;display:flex;align-items:center;gap:16px;border-left:2px solid var(--gpx-ref-line);font-size:14px;color:#45455f}
.gpx-refresh .gr-team-credentials span{color:#45455f}
.gpx-refresh .gr-team-credentials :is(strong,b){display:block;color:var(--gpx-ref-blue);font-size:18px;line-height:1.3}
.gpx-refresh .gr-team-credentials strong{font-size:38px;letter-spacing:-.05em}
.gpx-refresh .gr-team-method{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:clamp(32px,6vw,80px);align-items:start}
.gpx-refresh .gr-team-method>div:first-child{max-width:540px}
.gpx-refresh .gr-team-method h2{margin:0 0 24px;color:var(--gpx-ref-ink)}
.gpx-refresh .gr-method-list{display:grid;grid-template-columns:minmax(0,1fr);gap:18px;counter-reset:gpx-method;min-width:0;border:0}
.gpx-refresh .gr-method-list article{position:relative;counter-increment:gpx-method;padding:28px 28px 26px 76px;border:1px solid var(--gpx-ref-line);border-top:3px solid var(--gpx-ref-blue);background:#fff;box-shadow:0 8px 24px #00005007}
.gpx-refresh .gr-method-list article::before{content:counter(gpx-method,decimal-leading-zero);position:absolute;left:24px;top:27px;color:var(--gpx-ref-red);font-size:16px;font-weight:750;line-height:1.5;font-variant-numeric:tabular-nums}
.gpx-refresh .gr-method-list h3{margin:0 0 10px;font-size:21px;color:var(--gpx-ref-blue)}
.gpx-refresh .gr-method-list p{margin:0;font-size:16px;color:#39394d}
.gpx-refresh .gr-team-ways{background:var(--gpx-ref-pale)}
.gpx-refresh .gr-photo-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(36px,6vw,80px);align-items:start}
.gpx-refresh .gr-photo-copy h2{margin:0 0 28px}
.gpx-refresh .gr-way{padding:22px 0;border-top:1px solid #cdd1ec}
.gpx-refresh .gr-way h3{font-size:20px;color:var(--gpx-ref-blue);margin:0 0 8px}
.gpx-refresh .gr-way p{margin:0 0 10px}
.gpx-refresh .gr-team-contact{padding-block:clamp(52px,6vw,84px);background:#000091;color:#fff}
.gpx-refresh .gr-team-contact>.gr-inner{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(32px,6vw,80px);align-items:start}
.gpx-refresh .gr-team-contact :is(h2,h3,.gr-eyebrow){color:#fff}
.gpx-refresh .gr-team-contact p{color:#ececff}
.gpx-refresh .gr-team-contact aside{padding:28px;border:1px solid #ffffff40;background:#ffffff09}
.gpx-refresh .gr-team-contact aside a{color:#fff;text-underline-offset:4px}
.gpx-refresh .gr-team-contact h2{margin-top:0}
.gpx-refresh .gr-team-contact aside h3{margin-top:0;font-size:19px}
.gpx-refresh .gpx-team-guidance{padding-block:44px;background:#f4f5ff;color:#30304b;border-bottom:1px solid var(--gpx-ref-line)}
.gpx-refresh .gpx-team-guidance h2{font-size:26px;color:var(--gpx-ref-blue);margin-top:0}

/* Rythme des ressources et de la lecture, sans mouvement du corps des guides. */
.gpx-ed .gpx-wrap.gpx-guide-layout{padding-top:42px;padding-bottom:60px}
.gpx-library .gpx-library-grid{gap:24px;padding-bottom:56px}
.gpx-library .gpx-library-group{position:relative;padding:30px;background:linear-gradient(145deg,#fff,#fafaff);border:1px solid var(--gpx-ref-line);border-top:4px solid var(--gpx-ref-blue);box-shadow:0 8px 30px #00005008}
.gpx-library .gpx-library-group:nth-child(3n){border-top-color:var(--gpx-ref-red)}
.gpx-library .gpx-library-group a{padding-block:14px;text-underline-offset:5px}
.gpx-library .gpx-library-group a:hover{background:#f1f2ff}
.gpx-guide-v3 .gpx-guide-toc{border:1px solid #e0e2f3;border-left:4px solid #000091;background:#f4f5ff;box-shadow:0 6px 22px #00005006}
.gpx-guide-v3 .gpx-guide-toc a{display:inline}
.gpx-guide-v3 .gpx-guide-body{color:#212135}
.gpx-guide-v3 .gpx-guide-body h2{padding-top:16px;border-top:1px solid #e0e2f0;color:#000091}
.gpx-guide-v3 .gpx-guide-body h3{color:#212135}
.gpx-guide-v3 .gpx-guide-body :is(th,td){overflow-wrap:normal;word-break:normal;hyphens:none}
.gpx-guide-v3 .gpx-guide-body :is(th,td) a{overflow-wrap:anywhere}
.gpx-guide-v3 .gpx-guide-body summary{padding-right:48px}
.gpx-guide-v3 .gpx-guide-related{background:#f1f2ff}
.gpx-guide-v3 .gpx-guide-related a{display:inline}

/* Interactions courtes ; aucun rebond ni déplacement d'un contrôle de formulaire. */
.gpx-refresh :is(.gr-btn,.gr-text-link) span[aria-hidden="true"]{display:inline-block;transition:transform 180ms var(--gpx-ref-ease)}
.gpx-refresh :is(.gr-btn,.gr-text-link):is(:hover,:focus-visible) span[aria-hidden="true"]{transform:translate(3px,-3px)}
.gpx-refresh :is(.gr-btn,.gr-text-link):focus-visible{outline:3px solid #e1000f;outline-offset:5px}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  .gpx-library .gpx-library-group,.gpx-refresh .gr-method-list article{transition:transform 220ms var(--gpx-ref-ease),box-shadow 220ms var(--gpx-ref-ease)}
  .gpx-library .gpx-library-group:hover,.gpx-refresh .gr-method-list article:hover{transform:translateY(-4px);box-shadow:0 14px 32px #00005012}
}
@media(max-width:980px){
  .gpx-refresh .gr-team-credentials>.gr-inner{gap:16px}
  .gpx-refresh .gr-team-credentials p{display:block;padding-inline:18px}
  .gpx-refresh .gr-team-credentials :is(strong,b){margin-bottom:8px}
}
@media(max-width:800px){
  .gpx-refresh .gr-inner{width:min(100% - 40px,680px)}
  .gpx-refresh :is(.gr-team-intro,.gr-team-method,.gr-photo-split,.gr-team-contact>.gr-inner){grid-template-columns:minmax(0,1fr)}
  .gpx-refresh .gr-team-intro{gap:32px}
  .gpx-refresh .gr-team-method>div:first-child{max-width:none}
  .gpx-refresh .gr-photo{margin-right:10px}
  .gpx-refresh .gr-photo::after{inset:10px -10px -10px 10px}
  .gpx-refresh .gr-photo-split>.gr-photo img{aspect-ratio:16/10}
  .gpx-refresh .gr-team-main{max-width:600px}
  .gpx-refresh .gr-team-credentials p{font-size:13px;padding-inline:12px}
  .gpx-refresh .gr-team-credentials b{font-size:16px}
}
@media(max-width:767px){
  body.home .elementor-element-b9abcd8{background-color:#000070!important}
}
@media(max-width:600px){
  .gpx-ed .gpx-wrap.gpx-guide-layout{padding-top:26px;padding-bottom:40px}
}
@media(max-width:540px){
  .gpx-refresh .gr-inner{width:calc(100% - 36px)}
  .gpx-refresh .gr-team-credentials>.gr-inner{grid-template-columns:minmax(0,1fr);gap:0}
  .gpx-refresh .gr-team-credentials p{display:flex;padding:18px 0;border-left:0;border-bottom:1px solid #e0e2f3;gap:18px;font-size:14px}
  .gpx-refresh .gr-team-credentials p:last-child{border-bottom:0}
  .gpx-refresh .gr-team-credentials :is(strong,b){margin:0;min-width:112px;max-width:112px}
  .gpx-refresh .gr-team-credentials strong{font-size:32px}
  .gpx-refresh .gr-method-list article{padding:24px 22px 24px 62px}
  .gpx-refresh .gr-method-list article::before{left:20px;top:25px}
  .gpx-refresh .gr-method-list h3{font-size:19px}
  .gpx-refresh .gr-team-contact aside{padding:22px}
  .gpx-library .gpx-library-group{padding:24px}
  body.page-id-1125 .t4c-cta{padding:36px 20px!important}
}
@media(prefers-reduced-motion:reduce){
  .gpx-refresh :is(.gr-btn,.gr-text-link) span[aria-hidden="true"],
  .gpx-library .gpx-library-group,.gpx-refresh .gr-method-list article{transition:none;transform:none}
}
