.gip-home{
    --gip-green:#1DA638;
    --gip-green-dark:#123232;
    --gip-green-light:#00A9AF;
    --gip-accent:#00A9AF;
    --gip-width:1280px;
    --gip-ink:#16372b;
    --gip-muted:#5e746b;
    --gip-soft:#f1f7f3;
    --gip-line:rgba(18,50,50,.11);
    --gip-shadow:0 26px 70px rgba(18,50,50,.13);
    --gip-shadow-soft:0 16px 42px rgba(18,50,50,.09);
    width:100%;
    color:var(--gip-ink);
    font-family:inherit;
    font-size:16px;
    line-height:1.65;
    overflow:visible;
}
.gip-home,.gip-home *,.gip-home *::before,.gip-home *::after{box-sizing:border-box}
.gip-home :where(h1,h2,h3,p,ul,figure,blockquote){margin-top:0}
.gip-home :where(h1,h2,h3){color:var(--gip-green-dark);font-family:inherit;font-weight:850;letter-spacing:-.035em;line-height:1.08}
.gip-home h1{font-size:clamp(3.1rem,6vw,6.25rem)}
.gip-home h2{margin-bottom:20px;font-size:clamp(2.15rem,4vw,4.35rem)}
.gip-home h3{font-size:clamp(1.22rem,1.75vw,1.62rem)}
.gip-home p{margin-bottom:20px;color:var(--gip-muted)}
.gip-home a,
.gip-home a:link,
.gip-home a:visited,
.gip-home a:hover,
.gip-home a:focus,
.gip-home a:focus-visible,
.gip-home a:active{text-decoration:none!important}
.gip-home .gip-ri{display:inline-block;width:1.25em;height:1.25em;fill:currentColor;stroke:none;vertical-align:-.16em}
.gip-home img{max-width:100%;height:auto}
.gip-home__bleed{position:relative;width:100vw;max-width:none;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}
.gip-home__inner{position:relative;z-index:2;width:min(calc(100% - 44px),var(--gip-width));margin:0 auto}
.gip-home__section{position:relative;padding:clamp(74px,8vw,122px) 0;overflow:hidden}
.gip-home__section--soft{background:
    radial-gradient(circle at 8% 0%,rgba(0,169,175,.13),transparent 360px),
    linear-gradient(180deg,#f8fbf9,#edf5f0)}
.gip-home__section--media{isolation:isolate;background:#f5f9f6}
.gip-home__section--media::before{content:"";position:absolute;z-index:-2;inset:-18px;background:
    linear-gradient(90deg,rgba(245,249,246,.98),rgba(245,249,246,.92) 48%,rgba(245,249,246,.78)),
    var(--gip-section-image);background-position:center,center;background-repeat:no-repeat;background-size:cover;filter:saturate(.8)}
.gip-home__section--media::after{content:"";position:absolute;z-index:-1;inset:0;background:
    radial-gradient(circle at 10% 12%,rgba(0,169,175,.11),transparent 290px),
    radial-gradient(circle at 92% 86%,rgba(29,166,56,.1),transparent 360px)}
.gip-home__eyebrow{display:inline-flex;align-items:center;gap:9px;margin-bottom:15px;color:var(--gip-green);font-size:.75rem;font-weight:850;letter-spacing:.14em;text-transform:uppercase}
.gip-home__eyebrow::before{content:"";width:34px;height:3px;border-radius:999px;background:linear-gradient(90deg,var(--gip-green),var(--gip-green-light))}
.gip-home__eyebrow--light{color:rgba(255,255,255,.92)}
.gip-home__eyebrow--light::before{background:linear-gradient(90deg,var(--gip-green-light),#fff)}
.gip-home__lead{font-size:clamp(1.06rem,1.35vw,1.26rem);font-weight:680;line-height:1.55}
.gip-home__section-head{max-width:870px;margin:0 auto clamp(42px,5vw,68px);text-align:center}
.gip-home__section-head--left{max-width:840px;margin-left:0;text-align:left}
.gip-home__section-head p{font-size:clamp(1.02rem,1.25vw,1.16rem)}
.gip-home__actions{display:flex;flex-wrap:wrap;gap:13px;margin-top:28px}
.gip-home__button{display:inline-flex;align-items:center;justify-content:center;gap:11px;min-height:54px;padding:14px 22px;border:1px solid transparent;border-radius:999px;font-size:.94rem;font-weight:820;line-height:1.2;transition:transform .25s ease,box-shadow .25s ease,background .25s ease,color .25s ease,border-color .25s ease}
.gip-home__button svg{width:19px;height:19px;transition:transform .25s ease}
.gip-home__button:hover{transform:translateY(-2px)}
.gip-home__button:hover svg{transform:translateX(4px)}
.gip-home__button--accent{background:var(--gip-accent);color:#fff;box-shadow:0 14px 32px rgba(0,169,175,.3)}
.gip-home__button--accent:hover{background:#fff;color:var(--gip-green-dark)}
.gip-home__button--green{background:linear-gradient(135deg,var(--gip-green-dark),var(--gip-green));color:#fff;box-shadow:0 14px 32px rgba(29,166,56,.2)}
.gip-home__button--green:hover{color:#fff;box-shadow:0 18px 38px rgba(29,166,56,.3)}
.gip-home__button--light{background:#fff;color:var(--gip-green-dark);box-shadow:0 14px 32px rgba(0,0,0,.13)}
.gip-home__button--light:hover{background:var(--gip-green-light);color:var(--gip-green-dark)}
.gip-home__button--ghost{border-color:rgba(255,255,255,.45);background:rgba(255,255,255,.08);color:#fff;backdrop-filter:blur(9px)}
.gip-home__button--ghost:hover{border-color:#fff;background:#fff;color:var(--gip-green-dark)}
.gip-home__button--outline{border-color:rgba(18,50,50,.2);background:transparent;color:var(--gip-green-dark)}
.gip-home__button--outline:hover{border-color:var(--gip-green);background:#fff}
.gip-home__button--glass{border-color:rgba(255,255,255,.35);background:linear-gradient(135deg,rgba(29,166,56,.88),rgba(0,169,175,.78));box-shadow:0 16px 38px rgba(7,45,39,.25);backdrop-filter:blur(15px) saturate(1.2)}
.gip-home__button--glass:hover{background:linear-gradient(135deg,var(--gip-green),var(--gip-green-light));box-shadow:0 20px 45px rgba(7,45,39,.31)}
.gip-home__icon{display:inline-grid;place-items:center;flex:0 0 auto;width:56px;height:56px;border-radius:18px;background:linear-gradient(145deg,var(--gip-green),var(--gip-green-light));color:#fff;box-shadow:0 12px 30px rgba(29,166,56,.18)}
.gip-home__icon svg{width:27px;height:27px}
.gip-home__section-action{display:flex;justify-content:center;margin-top:42px}
.gip-home__empty{padding:34px;border:1px dashed rgba(18,50,50,.22);border-radius:22px;background:rgba(255,255,255,.7);color:var(--gip-muted);text-align:center}

/* Carte de l’application Android : le lien couvre toute la carte. */
.gip-home__app{padding:46px 0 12px;background:#f7faf8}
.gip-home__app-card{position:relative;display:grid;grid-template-columns:minmax(210px,.7fr) minmax(0,1.4fr);align-items:center;gap:clamp(24px,4vw,60px);padding:28px clamp(26px,5vw,64px);overflow:hidden;border:1px solid rgba(0,137,132,.18);border-radius:32px;background:radial-gradient(ellipse at 10% 80%,rgba(29,166,56,.15),transparent 46%),linear-gradient(120deg,rgba(255,255,255,.95),rgba(225,246,241,.91) 58%,rgba(217,244,247,.92));box-shadow:0 18px 52px rgba(18,50,50,.09),inset 0 1px 0 #fff;color:var(--gip-green-dark);isolation:isolate;transition:border-color .2s ease,box-shadow .2s ease}
.gip-home__app-card:hover{border-color:rgba(0,137,132,.4);box-shadow:0 22px 58px rgba(18,50,50,.13);color:var(--gip-green-dark)}
.gip-home__app-card:focus-visible{outline:3px solid #08746f;outline-offset:5px}
.gip-home__app-visual{display:flex;align-items:center;justify-content:center;min-width:0}
.gip-home__app-visual img{display:block;width:100%;max-width:280px;height:auto;object-fit:contain;filter:drop-shadow(0 12px 16px rgba(13,71,45,.12))}
.gip-home__app-copy{min-width:0}
.gip-home__app-copy .gip-home__eyebrow{margin-bottom:10px}
.gip-home .gip-home__app-copy h2{margin:0 0 14px;font-size:clamp(28px,3.1vw,42px);line-height:1.13;text-wrap:balance;color:var(--gip-green-dark)}
.gip-home .gip-home__app-copy p{max-width:630px;margin:0 0 14px;font-size:16px;line-height:1.65;color:#3c625b}
.gip-home__app-platform{display:block;font-size:13px;font-weight:700;color:#3c625b}
.gip-home__app-badge{display:inline-flex;padding:16px;margin:0 0 0 -16px;line-height:0}
.gip-home__app-badge img{display:block!important;width:200px!important;max-width:100%!important;height:auto!important;aspect-ratio:478/142;object-fit:contain;border-radius:0!important;filter:none!important;box-shadow:none!important}
@media(max-width:760px){.gip-home__app{padding:28px 0 6px}.gip-home__app-card{grid-template-columns:minmax(150px,.65fr) minmax(0,1fr);gap:20px;padding:24px}.gip-home__app-visual img{max-width:220px}.gip-home .gip-home__app-copy h2{font-size:29px}}
@media(max-width:540px){.gip-home__app-card{grid-template-columns:1fr;gap:16px;padding:24px 22px;text-align:center;border-radius:26px}.gip-home__app-visual img{max-width:210px}.gip-home__app-copy .gip-home__eyebrow{font-size:10px;letter-spacing:.1em}.gip-home .gip-home__app-copy h2{font-size:28px}.gip-home .gip-home__app-copy p{font-size:15px}.gip-home__app-badge{margin:0}.gip-home__app-badge img{width:190px!important}}
@media(prefers-reduced-motion:reduce){.gip-home__app-card{transition:none}}

/* Hero */
.gip-home__hero{min-height:clamp(720px,82vh,920px);padding:clamp(98px,10vw,150px) 0 160px;overflow:hidden;isolation:isolate;background:linear-gradient(125deg,var(--gip-green-dark),var(--gip-green))}
.gip-home__hero-media{position:absolute;z-index:-5;inset:calc(var(--gip-hero-blur)*-2);overflow:hidden;background:var(--gip-green-dark)}
.gip-home__hero-media video,.gip-home__hero-media picture,.gip-home__hero-media img{display:block;width:100%;height:100%}
.gip-home__hero-media video,.gip-home__hero-media img{object-fit:cover;object-position:center;filter:blur(var(--gip-hero-blur)) saturate(.92);transform:scale(1.045);animation:gipHomeHero 18s ease-in-out infinite alternate}
.gip-home__hero::before{content:"";position:absolute;z-index:-4;inset:0;background:
    linear-gradient(94deg,rgba(10,42,31,var(--gip-hero-overlay)) 0%,rgba(13,71,45,calc(var(--gip-hero-overlay)*.94)) 40%,rgba(29,166,56,calc(var(--gip-hero-overlay)*.52)) 72%,rgba(11,50,37,.34) 100%),
    radial-gradient(circle at 82% 16%,rgba(0,169,175,.3),transparent 310px)}
.gip-home__hero::after{content:"";position:absolute;z-index:-3;right:-180px;bottom:-360px;width:760px;height:760px;border:1px solid rgba(255,255,255,.12);border-radius:50%;box-shadow:0 0 0 90px rgba(255,255,255,.025),0 0 0 180px rgba(255,255,255,.018)}
.gip-home__hero-grid{display:grid;grid-template-columns:minmax(0,1.14fr) minmax(360px,.72fr);align-items:center;gap:clamp(40px,5.5vw,88px)}
.gip-home__hero-copy{max-width:820px}
.gip-home__hero h1{margin:0 0 24px;color:#fff;text-wrap:balance;text-shadow:0 10px 38px rgba(0,0,0,.18)}
.gip-home__hero-lead{max-width:760px;margin:0;color:rgba(255,255,255,.88)!important;font-size:clamp(1.12rem,1.55vw,1.38rem);line-height:1.56}
.gip-home__hero-panel{position:relative;padding:34px;border:1px solid rgba(255,255,255,.26);border-radius:34px;background:linear-gradient(145deg,rgba(255,255,255,.19),rgba(6,55,47,.38));box-shadow:0 30px 80px rgba(0,0,0,.24);color:#fff;backdrop-filter:blur(22px) saturate(1.16);overflow:hidden}
.gip-home__hero-panel::before{content:"";position:absolute;right:-60px;top:-80px;width:190px;height:190px;border-radius:50%;background:rgba(0,169,175,.18);filter:blur(2px)}
.gip-home__hero-logo{position:relative;display:block;width:100%;max-width:320px;max-height:95px;margin:0 0 25px;object-fit:contain;object-position:left center;filter:drop-shadow(0 8px 20px rgba(0,0,0,.15))}
.gip-home__hero-panel h2{position:relative;margin-bottom:11px;color:#fff;font-size:clamp(1.5rem,2.2vw,2.25rem)}
.gip-home__hero-panel>p{position:relative;color:rgba(255,255,255,.79)}
.gip-home__check-list{display:grid;gap:11px;margin:20px 0 0;padding:0;list-style:none}
.gip-home__check-list li{display:grid;grid-template-columns:23px 1fr;gap:11px;align-items:start;color:inherit;font-weight:690;line-height:1.45}
.gip-home__check-list li>svg{width:23px;height:23px;padding:4px;border-radius:50%;background:var(--gip-green-light);color:var(--gip-green-dark);stroke-width:2.4}
.gip-home__project-menu li{display:block}
.gip-home__project-menu a{display:grid;grid-template-columns:23px minmax(0,1fr) 18px;gap:11px;align-items:center;padding:9px 11px;border:1px solid transparent;border-radius:14px;color:#fff;transition:background .2s ease,border-color .2s ease,transform .2s ease}
.gip-home__project-menu a:hover{border-color:rgba(255,255,255,.2);background:rgba(255,255,255,.12);transform:translateX(4px)}
.gip-home__project-menu a>svg:first-child{width:23px;height:23px;padding:4px;border-radius:50%;background:var(--gip-green-light);color:var(--gip-green-dark)}
.gip-home__project-menu a>svg:last-child{width:18px;height:18px}
.gip-home__scroll{position:absolute;z-index:7;left:50%;bottom:84px;display:grid;place-items:center;width:34px;height:54px;border:1px solid rgba(255,255,255,.72);border-radius:999px;background:rgba(255,255,255,.08);box-shadow:0 10px 28px rgba(0,0,0,.15);transform:translateX(-50%);backdrop-filter:blur(10px)}
.gip-home__scroll span{width:5px;height:9px;border-radius:99px;background:#fff;animation:gipHomeScroll 1.8s ease-in-out infinite}
@keyframes gipHomeHero{to{transform:scale(1.1) translate3d(-1%,1%,0)}}
@keyframes gipHomeScroll{0%,100%{transform:translateY(-7px);opacity:.35}50%{transform:translateY(8px);opacity:1}}

/* Accès rapides */
.gip-home__quick{z-index:6;margin-top:-58px;background:transparent}
.gip-home__quick-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid rgba(255,255,255,.82);border-radius:28px;background:rgba(255,255,255,.84);box-shadow:0 28px 74px rgba(18,50,50,.18);backdrop-filter:blur(24px) saturate(1.12);overflow:hidden}
.gip-home__quick-card{position:relative;display:grid;grid-template-columns:50px minmax(0,1fr) 24px;gap:14px;align-items:center;min-height:132px;padding:24px 20px;color:var(--gip-green-dark);transition:background .25s ease,transform .25s ease}
.gip-home__quick-card+.gip-home__quick-card{border-left:1px solid var(--gip-line)}
.gip-home__quick-card::after{content:"";position:absolute;right:0;bottom:0;left:0;height:4px;background:linear-gradient(90deg,var(--gip-green),var(--gip-green-light));transform:scaleX(0);transform-origin:left;transition:transform .25s ease}
.gip-home__quick-card:hover{z-index:2;background:#fff;transform:translateY(-4px)}
.gip-home__quick-card:hover::after{transform:scaleX(1)}
.gip-home__quick-card .gip-home__icon{width:50px;height:50px;border-radius:16px}
.gip-home__quick-card .gip-home__icon svg{width:24px;height:24px}
.gip-home__quick-copy{display:grid;gap:3px}
.gip-home__quick-copy strong{font-size:1rem;line-height:1.25}
.gip-home__quick-copy small{color:var(--gip-muted);font-size:.78rem;line-height:1.35}
.gip-home__quick-arrow{display:grid;place-items:center;color:var(--gip-green)}
.gip-home__quick-arrow svg{width:20px}

/* Formations */
.gip-home__section--formations{padding-top:clamp(64px,6vw,88px)}
.gip-home__shortcode--formations{position:relative}
.gip-home__shortcode--formations :where(.greta-home-carousel-v2,.greta-home-carousel){margin-top:0}
.gip-home__slider-shell{position:relative}
.gip-home__slider-nav{position:absolute;right:0;top:-73px;display:flex;gap:9px}
.gip-home__slider-nav button{display:grid;place-items:center;width:45px;height:45px;padding:0;border:1px solid rgba(18,50,50,.16);border-radius:50%;background:#fff;color:var(--gip-green-dark);cursor:pointer;transition:.2s ease}
.gip-home__slider-nav button:first-child svg{transform:rotate(180deg)}
.gip-home__slider-nav button:hover{border-color:var(--gip-green);background:var(--gip-green);color:#fff}
.gip-home__formation-track{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(300px,calc((100% - 72px)/4));gap:24px;padding:8px 5px 22px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:inline mandatory;scrollbar-width:none}
.gip-home__formation-track::-webkit-scrollbar{display:none}
.gip-home__formation-card{display:flex;flex-direction:column;min-height:100%;border:1px solid rgba(18,50,50,.08);border-radius:25px;background:#fff;box-shadow:var(--gip-shadow-soft);scroll-snap-align:start;overflow:hidden;transition:transform .25s ease,box-shadow .25s ease}
.gip-home__formation-card:hover{transform:translateY(-7px);box-shadow:var(--gip-shadow)}
.gip-home__formation-media{position:relative;display:block;aspect-ratio:1.42;background:linear-gradient(135deg,var(--gip-green-dark),var(--gip-green));overflow:hidden}
.gip-home__formation-media img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.gip-home__formation-card:hover .gip-home__formation-media img{transform:scale(1.055)}
.gip-home__formation-placeholder{display:grid;place-items:center;width:100%;height:100%;color:rgba(255,255,255,.65)}
.gip-home__formation-placeholder svg{width:76px;height:76px}
.gip-home__formation-sector{position:absolute;left:16px;bottom:14px;max-width:calc(100% - 32px);padding:7px 10px;border-radius:999px;background:rgba(18,50,50,.84);color:#fff;font-size:.67rem;font-weight:800;line-height:1.2;backdrop-filter:blur(8px)}
.gip-home__formation-body{display:flex;flex:1;flex-direction:column;padding:23px}
.gip-home__formation-level{align-self:flex-start;margin-bottom:10px;padding:5px 9px;border-radius:99px;background:rgba(0,169,175,.17);color:var(--gip-green-dark);font-size:.69rem;font-weight:800}
.gip-home__formation-body h3{margin-bottom:10px;font-size:1.2rem;line-height:1.2}
.gip-home__formation-body h3 a{color:inherit}
.gip-home__formation-body p{margin-bottom:20px;font-size:.89rem;line-height:1.55}
.gip-home__text-link{display:inline-flex;align-items:center;gap:8px;margin-top:auto;color:var(--gip-green);font-size:.85rem;font-weight:820}
.gip-home__text-link svg{width:18px;height:18px;transition:transform .2s ease}
.gip-home__text-link:hover{color:var(--gip-green-dark)}
.gip-home__text-link:hover svg{transform:translateX(4px)}

/* VAE */
.gip-home__section--vae{padding-top:26px;background:linear-gradient(180deg,#edf5f0,#fff)}
.gip-home__vae-card{position:relative;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(350px,.72fr);gap:clamp(34px,5vw,74px);align-items:center;padding:clamp(34px,5vw,70px);border:1px solid rgba(255,255,255,.88);border-radius:40px;background:
    radial-gradient(circle at 92% 10%,rgba(0,169,175,.24),transparent 320px),
    linear-gradient(145deg,rgba(255,255,255,.93),rgba(242,250,247,.74));
    box-shadow:var(--gip-shadow);backdrop-filter:blur(20px);overflow:hidden}
.gip-home__vae-card::before{content:"";position:absolute;right:-110px;bottom:-170px;width:420px;height:420px;border:1px solid rgba(29,166,56,.14);border-radius:50%;box-shadow:0 0 0 54px rgba(0,169,175,.035)}
.gip-home__vae-copy{position:relative;z-index:2}
.gip-home__vae-copy h2{max-width:800px}
.gip-home__vae-points{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px;margin:28px 0 0;padding:0;list-style:none}
.gip-home__vae-points li{display:flex;gap:10px;align-items:flex-start;color:var(--gip-green-dark);font-size:.9rem;font-weight:760}
.gip-home__vae-points svg{flex:0 0 auto;width:22px;height:22px;padding:4px;border-radius:50%;background:rgba(29,166,56,.13);color:var(--gip-green)}
.gip-home__vae-visual{position:relative;display:grid;place-items:center;min-height:470px;border:1px solid rgba(255,255,255,.62);border-radius:34px;background:linear-gradient(150deg,var(--gip-green),var(--gip-green-light));box-shadow:0 28px 65px rgba(18,50,50,.22);overflow:hidden}
.gip-home__vae-visual::before{content:"";position:absolute;inset:20px;border:1px solid rgba(255,255,255,.26);border-radius:26px}
.gip-home__vae-visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.22;mix-blend-mode:multiply}
.gip-home__vae-diploma{position:relative;z-index:2;display:grid;place-items:center;width:148px;height:148px;border:1px solid rgba(255,255,255,.55);border-radius:42px;background:rgba(255,255,255,.24);color:#fff;box-shadow:0 22px 55px rgba(18,50,50,.18);backdrop-filter:blur(18px);transform:rotate(-4deg)}
.gip-home__vae-diploma svg{width:76px;height:76px}
.gip-home__vae-pill{position:absolute;z-index:3;left:26px;top:28px;padding:9px 14px;border:1px solid rgba(255,255,255,.48);border-radius:999px;background:rgba(255,255,255,.84);color:var(--gip-green-dark);font-size:.74rem;font-weight:850;box-shadow:0 12px 28px rgba(18,50,50,.15);backdrop-filter:blur(12px)}
.gip-home__vae-pill--2{right:24px;top:44%;left:auto}.gip-home__vae-pill--3{top:auto;bottom:28px;left:42px}

/* Présentation */
.gip-home__frame{padding:clamp(30px,4.5vw,68px);border:1px solid rgba(255,255,255,.8);border-radius:42px;background:linear-gradient(145deg,rgba(255,255,255,.93),rgba(255,255,255,.76));box-shadow:var(--gip-shadow);backdrop-filter:blur(16px)}
.gip-home__split{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(340px,.92fr);gap:clamp(36px,5vw,78px);align-items:center}
.gip-home__copy>p:last-of-type{margin-bottom:28px}
.gip-home__illustration{position:relative;min-height:500px;margin:0;border-radius:34px;background:linear-gradient(135deg,var(--gip-green-dark),var(--gip-green));box-shadow:var(--gip-shadow);overflow:hidden}
.gip-home__illustration::before{content:"";position:absolute;z-index:1;inset:0;border:1px solid rgba(255,255,255,.35);border-radius:inherit;box-shadow:inset 0 0 0 11px rgba(255,255,255,.08)}
.gip-home__illustration img{display:block;width:100%;height:100%;min-height:500px;object-fit:cover}
.gip-home__feature-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:50px}
.gip-home__feature{padding:25px 21px;border:1px solid rgba(18,50,50,.08);border-radius:22px;background:rgba(255,255,255,.72);box-shadow:0 10px 30px rgba(18,50,50,.06)}
.gip-home__feature .gip-home__icon{width:48px;height:48px;margin-bottom:18px;border-radius:15px}
.gip-home__feature .gip-home__icon svg{width:23px;height:23px}
.gip-home__feature h3{margin-bottom:8px;font-size:1.08rem}
.gip-home__feature p{margin:0;font-size:.84rem;line-height:1.52}

/* Filières */
.gip-home__section--filieres{background:
    radial-gradient(circle at 92% 10%,rgba(0,169,175,.12),transparent 350px),
    #fff}
.gip-home__filieres{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:245px;gap:18px}
.gip-home__filiere{position:relative;display:block;border-radius:28px;color:#fff;box-shadow:var(--gip-shadow-soft);overflow:hidden}
.gip-home__filiere--1{grid-column:span 7;grid-row:span 2}
.gip-home__filiere--2{grid-column:span 5}
.gip-home__filiere--3{grid-column:span 5}
.gip-home__filiere--4{grid-column:span 5}
.gip-home__filiere--5{grid-column:span 7}
.gip-home__filiere img{width:100%;height:100%;object-fit:cover;transition:transform .75s cubic-bezier(.2,.75,.2,1)}
.gip-home__filiere-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,28,20,.03) 20%,rgba(7,38,26,.9) 100%)}
.gip-home__filiere::after{content:"";position:absolute;inset:0;border:1px solid rgba(255,255,255,.25);border-radius:inherit;box-shadow:inset 0 0 0 0 rgba(0,169,175,.35);transition:box-shadow .3s ease}
.gip-home__filiere-content{position:absolute;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:flex-start;padding:28px}
.gip-home__filiere-content strong{max-width:690px;font-size:clamp(1.4rem,2.3vw,2.35rem);font-weight:850;letter-spacing:-.035em;line-height:1.08;text-shadow:0 3px 22px rgba(0,0,0,.32)}
.gip-home__filiere-content small{max-width:670px;max-height:0;margin-top:0;color:rgba(255,255,255,.84);font-size:.88rem;line-height:1.5;opacity:0;overflow:hidden;transform:translateY(8px);transition:.32s ease}
.gip-home__filiere-content em{display:flex;align-items:center;gap:8px;margin-top:13px;color:var(--gip-green-light);font-size:.78rem;font-style:normal;font-weight:820;text-transform:uppercase;letter-spacing:.07em}
.gip-home__filiere-content em svg{width:18px}
.gip-home__filiere:hover img{transform:scale(1.06)}
.gip-home__filiere:hover::after{box-shadow:inset 0 0 0 5px rgba(0,169,175,.5)}
.gip-home__filiere:hover small{max-height:80px;margin-top:10px;opacity:1;transform:none}

/* Réseau */
.gip-home__section--network{background:
    radial-gradient(circle at 90% 12%,rgba(0,169,175,.2),transparent 330px),
    linear-gradient(135deg,#eff8f3,#e7f5f3)}
.gip-home__section--network::before{display:none}
.gip-home__section--network::after{background:
    radial-gradient(circle at 10% 86%,rgba(29,166,56,.12),transparent 350px),
    linear-gradient(115deg,transparent 0 61%,rgba(255,255,255,.52) 61% 62%,transparent 62%)}
.gip-home__network-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,.92fr);gap:clamp(34px,5vw,72px);align-items:center;padding:clamp(38px,5.5vw,76px);border:1px solid rgba(255,255,255,.92);border-radius:40px;background:linear-gradient(145deg,rgba(255,255,255,.88),rgba(255,255,255,.58));box-shadow:var(--gip-shadow);backdrop-filter:blur(22px) saturate(1.1)}
.gip-home__network-intro h2{max-width:760px}
.gip-home__network-action{margin-top:34px}
.gip-home__network-benefits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.gip-home__network-benefit{display:flex;flex-direction:column;min-height:190px;padding:24px;border:1px solid rgba(18,50,50,.08);border-radius:24px;background:rgba(255,255,255,.78);box-shadow:0 14px 34px rgba(18,50,50,.07);transition:transform .25s ease,border-color .25s ease}
.gip-home__network-benefit:hover{border-color:rgba(0,169,175,.38);transform:translateY(-5px)}
.gip-home__network-benefit .gip-home__icon{width:48px;height:48px;margin-bottom:22px;border-radius:15px}
.gip-home__network-benefit .gip-home__icon svg{width:23px;height:23px}
.gip-home__network-benefit strong{color:var(--gip-green-dark);font-size:.96rem;line-height:1.45}

/* Carte */
.gip-home__section--map{background:
    linear-gradient(180deg,#f7faf8,#fff),
    #fff}
.gip-home__map-head{margin-bottom:45px}
.gip-home__map-head>div:first-child{max-width:820px}
.gip-home__map-head h2{margin-bottom:15px}
.gip-home__map-head p{margin:0}
.gip-home__map-embed{min-height:430px;border:1px solid rgba(18,50,50,.09);border-radius:32px;background:#fff;box-shadow:var(--gip-shadow);overflow:hidden}
.gip-home__map-embed :where(.greta-map-shell,.greta-map-wrap){margin:0!important}
.gip-home__map-unavailable{display:flex;align-items:center;justify-content:center;gap:18px;min-height:220px;padding:34px;border:1px dashed rgba(18,50,50,.2);border-radius:30px;background:rgba(255,255,255,.75);color:var(--gip-green-dark);text-align:left}
.gip-home__map-unavailable>svg{flex:0 0 auto;width:46px;height:46px;color:var(--gip-green)}
.gip-home__map-unavailable div{display:grid;gap:5px}.gip-home__map-unavailable strong{font-size:1.1rem}.gip-home__map-unavailable span{color:var(--gip-muted);font-size:.9rem}

/* Chiffres */
.gip-home__stats{padding:clamp(76px,8vw,114px) 0;background:
    radial-gradient(circle at 90% 12%,rgba(255,255,255,.18),transparent 330px),
    radial-gradient(circle at 5% 94%,rgba(0,169,175,.28),transparent 300px),
    linear-gradient(125deg,#178d34,var(--gip-green) 52%,#009da2);color:#fff;overflow:hidden}
.gip-home__stats::before{content:"";position:absolute;right:-210px;top:-320px;width:680px;height:680px;border:1px solid rgba(255,255,255,.16);border-radius:50%;box-shadow:0 0 0 80px rgba(255,255,255,.04),0 0 0 160px rgba(255,255,255,.025)}
.gip-home__stats-orb{position:absolute;border-radius:50%;filter:blur(2px);pointer-events:none;animation:gipHomeFloat 8s ease-in-out infinite}
.gip-home__stats-orb--1{left:7%;top:18%;width:74px;height:74px;background:rgba(255,255,255,.13)}
.gip-home__stats-orb--2{right:14%;bottom:9%;width:110px;height:110px;border:1px solid rgba(255,255,255,.24);animation-delay:-3s}
@keyframes gipHomeFloat{50%{transform:translate3d(0,-18px,0) scale(1.04)}}
.gip-home__stats-head{max-width:780px;margin:0 auto 52px;text-align:center}
.gip-home__stats h2{color:#fff}.gip-home__stats p{color:rgba(255,255,255,.8)}
.gip-home__stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.gip-home__stat{display:flex;flex-direction:column;align-items:flex-start;min-height:265px;padding:28px;border:1px solid rgba(255,255,255,.28);border-radius:28px;background:linear-gradient(145deg,rgba(255,255,255,.2),rgba(255,255,255,.09));text-align:left;box-shadow:0 18px 46px rgba(18,50,50,.12);backdrop-filter:blur(16px)}
.gip-home__stat-icon{display:grid;place-items:center;width:48px;height:48px;margin-bottom:24px;border-radius:15px;background:rgba(255,255,255,.2);color:#fff}.gip-home__stat-icon svg{width:24px;height:24px}
.gip-home__stat strong{display:block;color:#fff;font-size:clamp(2.5rem,4.2vw,4.6rem);font-weight:900;letter-spacing:-.06em;line-height:1}
.gip-home__stat h3{margin:14px 0 8px;color:#fff;font-size:1.08rem;letter-spacing:-.02em}
.gip-home__stat p{margin:0;color:rgba(255,255,255,.78);font-size:.82rem;line-height:1.5}

/* EKONEA */
.gip-home__section--ekonea::before{background:
    linear-gradient(90deg,rgba(245,249,246,.97),rgba(245,249,246,.89)),
    var(--gip-section-image)}
.gip-home__ekonea-hero{display:grid;grid-template-columns:minmax(330px,.7fr) minmax(0,1.3fr);gap:clamp(36px,6vw,86px);align-items:center;margin-bottom:42px;padding:clamp(32px,5vw,68px);border:1px solid rgba(255,255,255,.9);border-radius:40px;background:linear-gradient(145deg,rgba(255,255,255,.91),rgba(236,248,243,.7));box-shadow:var(--gip-shadow);backdrop-filter:blur(18px)}
.gip-home__ekonea-brand{display:grid;place-items:center;gap:20px;min-height:370px;padding:34px;border:1px solid rgba(255,255,255,.78);border-radius:32px;background:
    radial-gradient(circle at 20% 12%,rgba(0,169,175,.28),transparent 210px),
    linear-gradient(145deg,rgba(29,166,56,.12),rgba(255,255,255,.7));text-align:center}
.gip-home__ekonea-brand img{width:min(360px,90%);max-height:145px;object-fit:contain}
.gip-home__ekonea-brand>span:last-child{max-width:390px;color:var(--gip-green-dark);font-size:.79rem;font-weight:820;letter-spacing:.05em;text-transform:uppercase}
.gip-home__ekonea-leaf{display:grid;place-items:center;width:62px;height:62px;border-radius:20px;background:linear-gradient(145deg,var(--gip-green),var(--gip-green-light));color:#fff;box-shadow:0 15px 36px rgba(29,166,56,.2)}.gip-home__ekonea-leaf svg{width:31px;height:31px}
.gip-home__ekonea-copy h2{max-width:780px}
.gip-home__ekonea-points{display:grid;gap:11px;margin:25px 0 0;padding:0;list-style:none}
.gip-home__ekonea-points li{display:flex;gap:10px;align-items:flex-start;color:var(--gip-green-dark);font-size:.9rem;font-weight:750}.gip-home__ekonea-points svg{flex:0 0 auto;width:22px;height:22px;padding:4px;border-radius:50%;background:rgba(0,169,175,.14);color:var(--gip-green-light)}
.gip-home__ekonea-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.gip-home__ekonea-card{display:flex;flex-direction:column;min-height:260px;padding:27px 24px;border:1px solid rgba(18,50,50,.09);border-radius:25px;background:rgba(255,255,255,.84);box-shadow:var(--gip-shadow-soft);backdrop-filter:blur(12px);transition:transform .25s ease,box-shadow .25s ease}
.gip-home__ekonea-card:hover{transform:translateY(-6px);box-shadow:var(--gip-shadow)}
.gip-home__ekonea-card .gip-home__icon{width:49px;height:49px;margin-bottom:22px;border-radius:15px}.gip-home__ekonea-card .gip-home__icon svg{width:24px;height:24px}
.gip-home__ekonea-card h3{margin-bottom:11px;font-size:1.12rem}.gip-home__ekonea-card p{margin:0;font-size:.87rem;line-height:1.56}

/* Témoignages */
.gip-home__section--testimonials{background:
    radial-gradient(circle at 10% 0%,rgba(0,169,175,.12),transparent 340px),
    linear-gradient(180deg,#fff,#f5f9f6)}
.gip-home__testimonial-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.gip-home__testimonial{position:relative;display:flex;flex-direction:column;min-height:370px;margin:0;padding:34px;border:1px solid rgba(18,50,50,.09);border-radius:28px;background:linear-gradient(145deg,#fff,rgba(242,249,246,.86));box-shadow:var(--gip-shadow-soft)}
.gip-home__testimonial-top{display:flex;align-items:center;justify-content:space-between;gap:16px;color:var(--gip-green);font-size:.7rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase}
.gip-home__testimonial-top svg{width:38px;height:38px;color:rgba(0,169,175,.23)}
.gip-home__testimonial blockquote{position:relative;margin:25px 0 32px;color:var(--gip-green-dark);font-size:1.02rem;font-weight:650;line-height:1.65}
.gip-home__testimonial figcaption{display:flex;align-items:center;gap:13px;margin-top:auto}
.gip-home__testimonial figcaption img{width:56px;height:56px;border:3px solid rgba(0,169,175,.35);border-radius:50%;object-fit:cover}
.gip-home__testimonial-avatar{display:grid!important;place-items:center;width:56px;height:56px;flex:0 0 auto;border:3px solid rgba(0,169,175,.28);border-radius:50%;background:linear-gradient(145deg,var(--gip-green),var(--gip-green-light));color:#fff;font-size:.83rem;font-weight:900;letter-spacing:.04em}
.gip-home__testimonial figcaption>span:last-child{display:grid}.gip-home__testimonial figcaption strong{color:var(--gip-green-dark)}.gip-home__testimonial figcaption small{color:var(--gip-muted);font-size:.76rem}.gip-home__testimonial figcaption em{margin-top:2px;color:var(--gip-green);font-size:.68rem;font-style:normal;font-weight:750}
.gip-home__testimonial-note{display:flex;align-items:center;justify-content:center;gap:9px;margin:30px 0 0!important;color:var(--gip-muted)!important;font-size:.76rem!important;text-align:center}.gip-home__testimonial-note svg{width:18px;height:18px;color:var(--gip-green)}

/* Actualités */
.gip-home__section--news{background:#fff}
.gip-home__shortcode--news{width:100%}
.gip-home__shortcode--news :where(.gip-home-news,.gip-actualites-home){margin:0}
.gip-home__news-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.gip-home__news-card{display:flex;flex-direction:column;border:1px solid rgba(18,50,50,.08);border-radius:27px;background:#fff;box-shadow:var(--gip-shadow-soft);overflow:hidden;transition:.25s ease}
.gip-home__news-card:hover{transform:translateY(-6px);box-shadow:var(--gip-shadow)}
.gip-home__news-media{display:block;aspect-ratio:1.6;background:linear-gradient(135deg,var(--gip-green-dark),var(--gip-green));overflow:hidden}
.gip-home__news-media img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.gip-home__news-card:hover .gip-home__news-media img{transform:scale(1.055)}
.gip-home__news-media>span{display:grid;place-items:center;width:100%;height:100%;color:rgba(255,255,255,.6)}
.gip-home__news-media>span svg{width:70px;height:70px}
.gip-home__news-body{display:flex;flex:1;flex-direction:column;padding:26px}
.gip-home__news-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:13px;color:var(--gip-muted);font-size:.69rem;font-weight:750;text-transform:uppercase;letter-spacing:.05em}
.gip-home__news-meta span{padding:5px 8px;border-radius:99px;background:rgba(0,169,175,.16);color:var(--gip-green-dark)}
.gip-home__news-body h3{margin-bottom:11px;font-size:1.23rem;line-height:1.25}
.gip-home__news-body h3 a{color:inherit}.gip-home__news-body p{font-size:.88rem;line-height:1.55}

/* Publics */
.gip-home__section--audiences{background:
    linear-gradient(140deg,rgba(18,50,50,.98),rgba(0,121,67,.96)),
    var(--gip-green-dark);color:#fff}
.gip-home__section--audiences .gip-home__section-head h2{color:#fff}
.gip-home__section--audiences .gip-home__eyebrow{color:var(--gip-green-light)}
.gip-home__section--audiences .gip-home__eyebrow::before{background:var(--gip-green-light)}
.gip-home__audience-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.gip-home__audience{display:flex;flex-direction:column;min-height:430px;padding:35px;border:1px solid rgba(255,255,255,.16);border-radius:30px;background:linear-gradient(180deg,rgba(255,255,255,.11),rgba(255,255,255,.055));backdrop-filter:blur(10px);transition:.25s ease}
.gip-home__audience:hover{border-color:rgba(0,169,175,.65);transform:translateY(-6px)}
.gip-home__audience .gip-home__icon{margin-bottom:25px;background:var(--gip-green-light);color:var(--gip-green-dark);box-shadow:none}
.gip-home__audience-kicker{margin-bottom:9px;color:var(--gip-green-light);font-size:.72rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}
.gip-home__audience h3{margin-bottom:20px;color:#fff;font-size:1.55rem}
.gip-home__audience ul{display:grid;gap:11px;margin:0 0 28px;padding:0;list-style:none}
.gip-home__audience li{position:relative;padding-left:22px;color:rgba(255,255,255,.79);font-size:.89rem}
.gip-home__audience li::before{content:"";position:absolute;left:0;top:.65em;width:8px;height:8px;border-radius:50%;background:var(--gip-green-light)}
.gip-home__audience>a{display:flex;align-items:center;gap:8px;margin-top:auto;color:#fff;font-size:.88rem;font-weight:820}
.gip-home__audience>a svg{width:19px}

/* Forpro */
.gip-home__forpro{padding:58px 0;background:
    radial-gradient(circle at 8% 20%,rgba(0,169,175,.22),transparent 260px),
    linear-gradient(105deg,#0b3024,#08683f);color:#fff;overflow:hidden}
.gip-home__forpro-inner{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:36px;align-items:center}
.gip-home__forpro-inner>img{width:min(220px,19vw);max-height:85px;object-fit:contain}
.gip-home__forpro h2{margin-bottom:8px;color:#fff;font-size:clamp(1.7rem,2.8vw,2.75rem)}
.gip-home__forpro p{max-width:770px;margin:0;color:rgba(255,255,255,.75)}
.gip-home__forpro .gip-home__eyebrow{margin-bottom:7px}

/* Contact */
.gip-home__section--contact::before{background:
    linear-gradient(90deg,rgba(244,249,246,.97),rgba(244,249,246,.88)),
    var(--gip-section-image)}
.gip-home__contact-shell{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(330px,.72fr);gap:26px;align-items:start}
.gip-home__contact-main{padding:clamp(30px,4vw,58px);border:1px solid rgba(18,50,50,.09);border-radius:34px;background:rgba(255,255,255,.91);box-shadow:var(--gip-shadow);backdrop-filter:blur(15px)}
.gip-home__contact-main h2{font-size:clamp(2rem,3.6vw,3.7rem)}
.gip-home__contact-side{position:sticky;top:120px;padding:36px;border-radius:32px;background:linear-gradient(150deg,var(--gip-green-dark),var(--gip-green));box-shadow:var(--gip-shadow);color:#fff;overflow:hidden}
.gip-home__contact-side::before{content:"";position:absolute;right:-60px;top:-60px;width:180px;height:180px;border-radius:50%;background:rgba(0,169,175,.2)}
.gip-home__contact-side>img{display:block;width:calc(100% + 72px);max-width:none;height:220px;margin:-36px -36px 28px;object-fit:cover}
.gip-home__contact-side .gip-home__icon{position:relative;margin-bottom:23px;background:var(--gip-green-light);color:var(--gip-green-dark)}
.gip-home__contact-side h3{position:relative;color:#fff;font-size:1.65rem}
.gip-home__contact-side p{position:relative;color:rgba(255,255,255,.78)}
.gip-home__contact-side>a:not(.gip-home__button){position:relative;display:block;margin-top:8px;color:#fff;font-weight:760;word-break:break-word}
.gip-home__contact-side .gip-home__actions{position:relative}
.gip-home__contact-side .gip-home__button{width:100%}
.gip-home__form{margin-top:30px}
.gip-home__form :where(input[type=text],input[type=email],input[type=tel],input[type=url],input[type=number],select,textarea){width:100%!important;min-height:50px!important;padding:11px 13px!important;border:1px solid rgba(18,50,50,.18)!important;border-radius:10px!important;background:#fff!important;box-shadow:none!important}
.gip-home__form textarea{min-height:130px!important}
.gip-home__form :where(input,select,textarea):focus{border-color:var(--gip-green)!important;box-shadow:0 0 0 3px rgba(29,166,56,.12)!important}
.gip-home__form button[type=submit],.gip-home__form input[type=submit]{min-height:52px!important;padding:13px 24px!important;border:0!important;border-radius:999px!important;background:linear-gradient(135deg,var(--gip-green-dark),var(--gip-green))!important;color:#fff!important;font-weight:820!important}

/* Animations */
.gip-home [data-gip-reveal]{opacity:0;transform:translateY(22px);transition:opacity .72s ease,transform .72s cubic-bezier(.2,.75,.2,1)}
.gip-home [data-gip-reveal].is-visible{opacity:1;transform:none}
.gip-home__quick-card:nth-child(2),.gip-home__feature:nth-child(2),.gip-home__ekonea-card:nth-child(2),.gip-home__stat:nth-child(2){transition-delay:.07s}
.gip-home__quick-card:nth-child(3),.gip-home__feature:nth-child(3),.gip-home__ekonea-card:nth-child(3),.gip-home__stat:nth-child(3){transition-delay:.14s}
.gip-home__quick-card:nth-child(4),.gip-home__feature:nth-child(4),.gip-home__ekonea-card:nth-child(4),.gip-home__stat:nth-child(4){transition-delay:.21s}

/* Elementor / thème */
body.gip-accueil-active{overflow-x:clip}
body.gip-accueil-active .entry-content>.gip-home{margin-top:0}
body.gip-accueil-active .elementor-widget-shortcode>.elementor-widget-container,
body.gip-accueil-active .elementor-widget-text-editor>.elementor-widget-container{overflow:visible}
body.gip-accueil-active .elementor-widget-shortcode .gip-home p:last-child{margin-bottom:20px}

@media(max-width:1180px){
    .gip-home__quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .gip-home__quick-card:nth-child(3){border-left:0;border-top:1px solid var(--gip-line)}
    .gip-home__quick-card:nth-child(4){border-top:1px solid var(--gip-line)}
    .gip-home__formation-track{grid-auto-columns:minmax(300px,calc((100% - 48px)/3))}
    .gip-home__feature-grid,.gip-home__ekonea-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:1024px){
    .gip-home__hero{min-height:auto;padding:110px 0 160px}
    .gip-home__hero-grid,.gip-home__split,.gip-home__vae-card,.gip-home__network-card,.gip-home__ekonea-hero,.gip-home__contact-shell{grid-template-columns:1fr}
    .gip-home__hero-panel{max-width:720px}
    .gip-home__vae-visual{min-height:390px}
    .gip-home__illustration{min-height:430px}.gip-home__illustration img{min-height:430px}
    .gip-home__filiere--1{grid-column:span 7}.gip-home__filiere--2,.gip-home__filiere--3{grid-column:span 5}.gip-home__filiere--4{grid-column:span 5}.gip-home__filiere--5{grid-column:span 7}
    .gip-home__stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .gip-home__ekonea-brand{min-height:300px}
    .gip-home__contact-side{position:relative;top:auto}
}
@media(max-width:850px){
    .gip-home__section{padding:70px 0}
    .gip-home__formation-track{grid-auto-columns:minmax(290px,calc((100% - 24px)/2))}
    .gip-home__filieres{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:300px}
    .gip-home__filiere--1,.gip-home__filiere--2,.gip-home__filiere--3,.gip-home__filiere--4{grid-column:span 1;grid-row:span 1}
    .gip-home__filiere--5{grid-column:1/-1;grid-row:span 1}
    .gip-home__testimonial-grid,.gip-home__news-grid,.gip-home__audience-grid{grid-template-columns:1fr}
    .gip-home__testimonial,.gip-home__audience{min-height:0}
    .gip-home__forpro-inner{grid-template-columns:1fr;text-align:center;justify-items:center}.gip-home__forpro p{max-width:700px}
    .gip-home__forpro-inner>img{width:min(260px,60vw)}
}
@media(max-width:680px){
    .gip-home__inner{width:min(calc(100% - 28px),var(--gip-width))}
    .gip-home h1{font-size:clamp(2.75rem,14vw,4.4rem)}
    .gip-home h2{font-size:clamp(2rem,10vw,3.15rem)}
    .gip-home__hero{padding:82px 0 145px}
    .gip-home__hero::after{right:-360px}
    .gip-home__hero-grid{gap:34px}
    .gip-home__hero-panel{padding:25px;border-radius:26px}
    .gip-home__hero-logo{max-height:75px}
    .gip-home__actions{flex-direction:column;align-items:stretch}.gip-home__button{width:100%}
    .gip-home__scroll{bottom:78px}
    .gip-home__quick{margin-top:-48px}
    .gip-home__quick-grid{grid-template-columns:1fr;border-radius:23px}
    .gip-home__quick-card{min-height:106px;padding:18px}
    .gip-home__quick-card+.gip-home__quick-card{border-top:1px solid var(--gip-line);border-left:0}
    .gip-home__slider-nav{position:relative;top:auto;justify-content:flex-end;margin:-28px 0 14px}
    .gip-home__formation-track{grid-auto-columns:minmax(278px,86vw)}
    .gip-home__vae-card{padding:24px;border-radius:28px}.gip-home__vae-points{grid-template-columns:1fr}.gip-home__vae-visual{min-height:330px;border-radius:25px}
    .gip-home__vae-diploma{width:112px;height:112px;border-radius:32px}.gip-home__vae-diploma svg{width:58px;height:58px}
    .gip-home__frame{padding:22px;border-radius:28px}
    .gip-home__illustration,.gip-home__illustration img{min-height:340px}
    .gip-home__feature-grid,.gip-home__ekonea-grid,.gip-home__network-benefits,.gip-home__stats-grid{grid-template-columns:1fr}
    .gip-home__feature,.gip-home__ekonea-card{min-height:0}
    .gip-home__filieres{display:grid;grid-template-columns:1fr;grid-auto-rows:350px}
    .gip-home__filiere--1,.gip-home__filiere--2,.gip-home__filiere--3,.gip-home__filiere--4,.gip-home__filiere--5{grid-column:1;grid-row:span 1}
    .gip-home__filiere-content{padding:23px}.gip-home__filiere-content small{max-height:100px;margin-top:9px;opacity:1;transform:none}
    .gip-home__network-card{padding:28px;border-radius:28px}.gip-home__network-benefit{min-height:0}
    .gip-home__ekonea-hero{padding:24px;border-radius:28px}.gip-home__ekonea-brand{min-height:260px;padding:24px;border-radius:24px}
    .gip-home__testimonial{padding:27px}
    .gip-home__contact-main,.gip-home__contact-side{padding:26px;border-radius:26px}
    .gip-home__contact-side>img{width:calc(100% + 52px);height:190px;margin:-26px -26px 25px}
}
@media(max-width:420px){
    .gip-home__hero-panel{padding:22px}
    .gip-home__quick-card{grid-template-columns:47px minmax(0,1fr) 20px}
    .gip-home__quick-card .gip-home__icon{width:47px;height:47px}
    .gip-home__formation-track{grid-auto-columns:88vw}
    .gip-home__map-unavailable{align-items:flex-start;flex-direction:column}
}
@media(prefers-reduced-motion:reduce){
    .gip-home *,.gip-home *::before,.gip-home *::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
    .gip-home [data-gip-reveal]{opacity:1;transform:none}
}

/* ==========================================================================
   Direction visuelle 1.2
   Vert dominant, turquoise secondaire, davantage de photos et aucun grand
   dégradé vert sombre / vert électrique.
   ========================================================================== */
.gip-home{
    --gip-ink:#173b2c;
    --gip-muted:#587067;
    --gip-soft:#f3f9f5;
    --gip-line:rgba(23,59,44,.1);
    --gip-shadow:0 28px 72px rgba(23,59,44,.12);
    --gip-shadow-soft:0 15px 40px rgba(23,59,44,.08);
    font-size:17px;
}
.gip-home p{font-size:1rem;line-height:1.7}
.gip-home a:hover{color:inherit}
.gip-home__section{padding:clamp(82px,8vw,124px) 0}
.gip-home__eyebrow::before{background:linear-gradient(90deg,var(--gip-green) 0 72%,var(--gip-green-light))}
.gip-home__button--green{
    border-color:var(--gip-green);
    background:var(--gip-green);
    color:#fff;
    box-shadow:0 14px 32px rgba(29,166,56,.22);
}
.gip-home__button--green:hover{
    border-color:#168d30;
    background:#168d30;
    color:#fff;
    box-shadow:0 18px 38px rgba(29,166,56,.28);
}
.gip-home__button--outline{border-color:rgba(29,166,56,.42);background:#fff;color:var(--gip-green)}
.gip-home__button--outline:hover{border-color:var(--gip-green);background:#eef9f0;color:#137d2b}
.gip-home__button--glass{
    background:linear-gradient(135deg,var(--gip-green),var(--gip-green-light));
    color:#fff;
}
.gip-home__button--glass:hover{background:linear-gradient(135deg,#168d30,var(--gip-green));color:#fff}
.gip-home__icon{
    background:var(--gip-green);
    color:#fff;
    box-shadow:0 12px 28px rgba(29,166,56,.2);
}
.gip-home__formation-media,
.gip-home__news-media,
.gip-home__illustration{background:#dcefe1}
.gip-home__contact-side,
.gip-home__form button[type=submit],
.gip-home__form input[type=submit]{background:var(--gip-green)!important}

/* Hero et cheminement */
.gip-home__hero-logo{
    width:min(100%,330px);
    margin:0 auto 26px;
    object-position:center;
}
.gip-home__hero-panel::before{background:linear-gradient(135deg,rgba(29,166,56,.22),rgba(0,169,175,.14))}
.gip-home__project-menu a:hover{
    border-color:transparent;
    background:rgba(255,255,255,.14);
    color:#fff!important;
}
.gip-home__project-menu a>svg:first-child{
    background:var(--gip-green);
    color:#fff;
}
.gip-home__project-menu a:hover>svg:first-child{background:#fff;color:var(--gip-green)}
.gip-home__quick{
    margin-top:-58px;
    padding-bottom:36px;
    background:linear-gradient(180deg,transparent 0 58px,#f3f9f5 58px 100%);
}
.gip-home__quick-card .gip-home__icon{background:var(--gip-green);color:#fff}
.gip-home__quick-card:hover{background:#fbfefc;color:var(--gip-ink)}
.gip-home__quick-card:hover::after{background:linear-gradient(90deg,var(--gip-green),var(--gip-green-light))}

/* Formations : scène de carrousel plus dense et plus éditoriale */
.gip-home__section--formations{
    margin-top:-1px;
    padding-top:clamp(42px,5vw,68px);
    background:
        radial-gradient(circle at 92% 8%,rgba(0,169,175,.09),transparent 340px),
        #f3f9f5;
}
.gip-home__formations-headline{
    display:grid;
    grid-template-columns:minmax(0,1.15fr) minmax(300px,.62fr);
    gap:clamp(28px,5vw,72px);
    align-items:end;
    margin-bottom:40px;
}
.gip-home__formations-headline .gip-home__section-head{margin-bottom:0}
.gip-home__formations-badges{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}
.gip-home__formations-badges span{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:9px 13px;
    border:1px solid rgba(29,166,56,.18);
    border-radius:999px;
    background:rgba(255,255,255,.86);
    color:var(--gip-ink);
    font-size:.8rem;
    font-weight:760;
    box-shadow:0 8px 22px rgba(23,59,44,.05);
}
.gip-home__formations-badges svg{width:17px;height:17px;color:var(--gip-green)}
.gip-home__carousel-stage{
    position:relative;
    padding:clamp(20px,3vw,34px);
    border:1px solid rgba(29,166,56,.11);
    border-radius:34px;
    background:
        linear-gradient(135deg,rgba(255,255,255,.96),rgba(246,252,248,.92)),
        #fff;
    box-shadow:var(--gip-shadow);
    overflow:hidden;
}
.gip-home__carousel-stage::before{
    content:"";
    position:absolute;
    right:-85px;
    top:-115px;
    width:280px;
    height:280px;
    border:1px solid rgba(29,166,56,.11);
    border-radius:50%;
    box-shadow:0 0 0 42px rgba(0,169,175,.025);
    pointer-events:none;
}
.gip-home__shortcode--formations :where(.greta-home-carousel-v2,.greta-home-carousel){position:relative;margin:0!important}
.gip-home__shortcode--formations :where(a:hover,a:focus){color:inherit!important}
.gip-home__shortcode--formations :where(.greta-home-carousel-v2 article,.greta-home-carousel article){
    border-color:rgba(29,166,56,.1)!important;
    box-shadow:0 14px 34px rgba(23,59,44,.09)!important;
}
.gip-home__shortcode--formations :where(.greta-home-carousel-v2 article:hover,.greta-home-carousel article:hover){
    border-color:rgba(29,166,56,.2)!important;
    box-shadow:0 22px 48px rgba(23,59,44,.13)!important;
}

/* VAE : introduction + véritables échantillons */
.gip-home__section--vae{
    padding-top:clamp(76px,7vw,108px);
    background:
        radial-gradient(circle at 8% 22%,rgba(29,166,56,.08),transparent 320px),
        #fff;
}
.gip-home__vae-card{
    grid-template-columns:minmax(0,1.05fr) minmax(390px,.8fr);
    align-items:stretch;
    padding:clamp(34px,4.5vw,62px);
    border-color:rgba(29,166,56,.11);
    background:#f7fcf8;
}
.gip-home__vae-card::before{background:rgba(29,166,56,.02);box-shadow:0 0 0 54px rgba(0,169,175,.02)}
.gip-home__vae-copy{align-self:center}
.gip-home__vae-visual{
    position:relative;
    display:block;
    min-height:470px;
    margin:0;
    border:0;
    border-radius:32px;
    background:#dcefe1;
    box-shadow:0 22px 55px rgba(23,59,44,.16);
    overflow:hidden;
}
.gip-home__vae-visual::before{display:none}
.gip-home__vae-visual::after{
    content:"";
    position:absolute;
    inset:35% 0 0;
    background:linear-gradient(180deg,transparent,rgba(8,54,32,.78));
}
.gip-home__vae-visual img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    opacity:1;
    mix-blend-mode:normal;
}
.gip-home__vae-visual figcaption{
    position:absolute;
    z-index:2;
    right:26px;
    bottom:26px;
    left:26px;
    display:grid;
    grid-template-columns:52px 1fr;
    gap:2px 13px;
    align-items:center;
    padding:17px;
    border:1px solid rgba(255,255,255,.46);
    border-radius:20px;
    background:rgba(255,255,255,.88);
    box-shadow:0 15px 36px rgba(9,48,29,.18);
    backdrop-filter:blur(14px);
}
.gip-home__vae-visual figcaption>span{
    grid-row:1/3;
    display:grid;
    place-items:center;
    width:52px;
    height:52px;
    border-radius:15px;
    background:var(--gip-green);
    color:#fff;
}
.gip-home__vae-visual figcaption>span svg{width:26px;height:26px}
.gip-home__vae-visual figcaption strong{color:var(--gip-ink);font-size:1rem;line-height:1.2}
.gip-home__vae-visual figcaption small{color:var(--gip-muted);font-size:.76rem;line-height:1.35}
.gip-home__vae-showcase{
    margin-top:28px;
    padding:clamp(24px,3.3vw,40px);
    border:1px solid rgba(29,166,56,.1);
    border-radius:34px;
    background:#fff;
    box-shadow:var(--gip-shadow-soft);
}
.gip-home__vae-showcase-head{
    display:flex;
    align-items:end;
    justify-content:space-between;
    gap:25px;
    margin-bottom:24px;
}
.gip-home__vae-showcase-head span{color:var(--gip-green);font-size:.75rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}
.gip-home__vae-showcase-head strong{max-width:720px;color:var(--gip-ink);font-size:clamp(1.35rem,2vw,2rem);line-height:1.22;text-align:right}
.gip-home__vae-offers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.gip-home__vae-offer{
    display:flex;
    min-width:0;
    flex-direction:column;
    border:1px solid rgba(23,59,44,.09);
    border-radius:24px;
    background:#fbfefc;
    color:var(--gip-ink);
    box-shadow:0 12px 30px rgba(23,59,44,.07);
    overflow:hidden;
    transition:transform .28s ease,box-shadow .28s ease;
}
.gip-home__vae-offer:hover{color:var(--gip-ink)!important;transform:translateY(-6px);box-shadow:0 20px 45px rgba(23,59,44,.12)}
.gip-home__vae-offer-media{position:relative;display:block;height:168px;background:#dcefe1;overflow:hidden}
.gip-home__vae-offer-media img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.gip-home__vae-offer:hover .gip-home__vae-offer-media img{transform:scale(1.055)}
.gip-home__vae-offer-media>span{
    position:absolute;
    left:16px;
    top:16px;
    padding:6px 10px;
    border-radius:999px;
    background:var(--gip-green);
    color:#fff;
    font-size:.67rem;
    font-weight:850;
    letter-spacing:.08em;
}
.gip-home__vae-offer-body{display:flex;flex:1;flex-direction:column;padding:21px}
.gip-home__vae-offer-body>small{margin-bottom:8px;color:var(--gip-green);font-size:.71rem;font-weight:820;text-transform:uppercase;letter-spacing:.06em}
.gip-home__vae-offer-body>strong{font-size:1.12rem;line-height:1.3}
.gip-home__vae-offer-body>em{margin:12px 0 20px;color:var(--gip-muted);font-size:.78rem;font-style:normal;line-height:1.45}
.gip-home__vae-offer-body>span{display:flex;align-items:center;gap:7px;margin-top:auto;color:var(--gip-green);font-size:.8rem;font-weight:820}
.gip-home__vae-offer-body>span svg{width:17px;height:17px}

/* Expertise et filières */
.gip-home__frame{border-color:rgba(29,166,56,.1);background:rgba(255,255,255,.94)}
.gip-home__feature{border-color:rgba(29,166,56,.1);background:#fff}
.gip-home__feature .gip-home__icon{background:var(--gip-green);color:#fff}
.gip-home__feature p{font-size:.9rem}
.gip-home__filiere,
.gip-home__filiere:visited,
.gip-home__filiere:hover,
.gip-home__filiere:focus{color:#fff!important}
.gip-home__filiere::after{border-color:rgba(255,255,255,.3);box-shadow:none}
.gip-home__filiere:hover::after{box-shadow:inset 0 -6px 0 var(--gip-green)}
.gip-home__filiere:hover .gip-home__filiere-overlay{
    background:linear-gradient(180deg,rgba(29,166,56,.08) 10%,rgba(8,49,28,.88) 100%);
}
.gip-home__filiere-content strong,
.gip-home__filiere:hover .gip-home__filiere-content strong{color:#fff!important}
.gip-home__filiere-content em,
.gip-home__filiere:hover .gip-home__filiere-content em{color:#fff!important}

/* Réseau : une vraie photo et une composition plus vivante */
.gip-home__section--network{
    background:
        radial-gradient(circle at 92% 10%,rgba(0,169,175,.09),transparent 350px),
        linear-gradient(180deg,#eef8f1,#f8fcf9);
}
.gip-home__network-card{
    grid-template-columns:minmax(0,1.05fr) minmax(330px,.72fr);
    gap:clamp(28px,4vw,56px);
    padding:clamp(36px,5vw,68px);
    border-color:rgba(29,166,56,.11);
    background:rgba(255,255,255,.92);
}
.gip-home__network-media{
    position:relative;
    min-height:390px;
    margin:0;
    border-radius:30px;
    background:#dcefe1;
    box-shadow:0 20px 50px rgba(23,59,44,.14);
    overflow:hidden;
}
.gip-home__network-media::after{
    content:"";
    position:absolute;
    inset:45% 0 0;
    background:linear-gradient(180deg,transparent,rgba(9,55,31,.78));
}
.gip-home__network-media img{display:block;width:100%;height:100%;min-height:390px;object-fit:cover}
.gip-home__network-media figcaption{
    position:absolute;
    z-index:2;
    right:24px;
    bottom:22px;
    left:24px;
    display:grid;
    color:#fff;
}
.gip-home__network-media figcaption strong{font-size:1.25rem}
.gip-home__network-media figcaption span{color:rgba(255,255,255,.82);font-size:.82rem}
.gip-home__network-benefits{
    grid-column:1/-1;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:14px;
}
.gip-home__network-benefit{
    min-height:178px;
    padding:23px;
    border-color:rgba(29,166,56,.1);
    background:#f8fcf9;
}
.gip-home__network-benefit:hover{border-color:rgba(29,166,56,.18);box-shadow:0 15px 34px rgba(23,59,44,.08)}
.gip-home__network-benefit .gip-home__icon{background:var(--gip-green)}
.gip-home__network-benefit strong{font-size:.92rem}

/* Chiffres : vert lumineux, sans départ vert sombre */
.gip-home__stats{
    background:
        radial-gradient(circle at 90% 12%,rgba(0,169,175,.27),transparent 340px),
        radial-gradient(circle at 6% 95%,rgba(255,255,255,.13),transparent 300px),
        var(--gip-green);
}
.gip-home__stat{background:rgba(255,255,255,.14)}
.gip-home__stat-icon{background:#fff;color:var(--gip-green)}
.gip-home__stat p{font-size:.88rem}

/* EKONEA : logo seul et cartes en mosaïque */
.gip-home__section--ekonea::before{
    background:
        linear-gradient(90deg,rgba(247,252,248,.96),rgba(247,252,248,.9)),
        var(--gip-section-image);
}
.gip-home__ekonea-hero{
    grid-template-columns:minmax(330px,.72fr) minmax(0,1.28fr);
    border-color:rgba(29,166,56,.1);
    background:rgba(255,255,255,.92);
}
.gip-home__ekonea-brand{
    position:relative;
    min-height:310px;
    padding:44px;
    border-color:rgba(29,166,56,.12);
    background:
        radial-gradient(circle at 16% 12%,rgba(0,169,175,.1),transparent 190px),
        linear-gradient(145deg,#f0faF2,#fff);
    overflow:hidden;
}
.gip-home__ekonea-brand::after{
    content:"";
    position:absolute;
    right:-70px;
    bottom:-90px;
    width:220px;
    height:220px;
    border:1px solid rgba(29,166,56,.12);
    border-radius:50%;
    box-shadow:0 0 0 35px rgba(29,166,56,.025);
}
.gip-home__ekonea-brand img{position:relative;z-index:2;width:min(390px,92%);max-height:170px}
.gip-home__ekonea-brand>span:last-child{position:relative;z-index:2}
.gip-home__ekonea-points svg{background:rgba(29,166,56,.12);color:var(--gip-green)}
.gip-home__ekonea-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.gip-home__ekonea-card{
    position:relative;
    display:grid;
    grid-template-columns:62px 1fr;
    grid-template-rows:auto 1fr;
    gap:6px 18px;
    min-height:0;
    padding:27px;
    border-color:rgba(29,166,56,.1);
    background:#fff;
    overflow:hidden;
}
.gip-home__ekonea-card:nth-child(1),
.gip-home__ekonea-card:nth-child(4){background:#eff9f1}
.gip-home__ekonea-card::after{
    content:"";
    position:absolute;
    right:-35px;
    bottom:-45px;
    width:110px;
    height:110px;
    border-radius:50%;
    background:rgba(29,166,56,.045);
}
.gip-home__ekonea-card .gip-home__icon{
    grid-row:1/3;
    width:62px;
    height:62px;
    margin:0;
    border-radius:19px;
    background:var(--gip-green);
}
.gip-home__ekonea-card h3{margin:3px 0 4px;font-size:1.15rem}
.gip-home__ekonea-card p{margin:0;font-size:.92rem}

/* Témoignages : retour des avatars créés pour le site */
.gip-home__testimonial{
    min-height:410px;
    padding:38px;
    border-color:rgba(29,166,56,.11);
    background:#fff;
    overflow:hidden;
}
.gip-home__testimonial::before{
    content:"";
    position:absolute;
    top:0;
    right:0;
    left:0;
    height:6px;
    background:linear-gradient(90deg,var(--gip-green) 0 82%,var(--gip-green-light));
}
.gip-home__testimonial-top svg{color:rgba(29,166,56,.18)}
.gip-home__testimonial blockquote{font-size:1.04rem;line-height:1.72}
.gip-home__testimonial figcaption{gap:17px}
.gip-home__testimonial figcaption img,
.gip-home__testimonial-avatar{
    width:82px;
    height:82px;
    border:4px solid #fff;
    box-shadow:0 10px 28px rgba(23,59,44,.18);
}
.gip-home__testimonial figcaption strong{font-size:1.02rem}
.gip-home__testimonial figcaption small{font-size:.82rem}
.gip-home__testimonial figcaption em{font-size:.74rem}

/* Publics : cartes claires et illustrées */
.gip-home__section--audiences{
    background:
        radial-gradient(circle at 92% 5%,rgba(0,169,175,.1),transparent 370px),
        linear-gradient(180deg,#eef8f1,#fff);
    color:var(--gip-ink);
}
.gip-home__section--audiences .gip-home__section-head h2{color:var(--gip-ink)}
.gip-home__section--audiences .gip-home__section-head p{color:var(--gip-muted)}
.gip-home__section--audiences .gip-home__eyebrow{color:var(--gip-green)}
.gip-home__section--audiences .gip-home__eyebrow::before{background:linear-gradient(90deg,var(--gip-green),var(--gip-green-light))}
.gip-home__audience{
    min-height:0;
    padding:0;
    border-color:rgba(29,166,56,.1);
    background:#fff;
    color:var(--gip-ink);
    box-shadow:var(--gip-shadow-soft);
    overflow:hidden;
}
.gip-home__audience:hover{border-color:rgba(29,166,56,.1);box-shadow:var(--gip-shadow);transform:translateY(-6px)}
.gip-home__audience-media{position:relative;height:220px;background:#dcefe1;overflow:hidden}
.gip-home__audience-media::after{
    content:"";
    position:absolute;
    inset:45% 0 0;
    background:linear-gradient(180deg,transparent,rgba(10,52,31,.46));
}
.gip-home__audience-media img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .65s ease}
.gip-home__audience:hover .gip-home__audience-media img{transform:scale(1.055)}
.gip-home__audience .gip-home__icon{
    position:absolute;
    z-index:2;
    left:28px;
    bottom:22px;
    margin:0;
    background:var(--gip-green);
    color:#fff;
    box-shadow:0 12px 28px rgba(8,56,29,.22);
}
.gip-home__audience-body{display:flex;flex:1;flex-direction:column;padding:29px}
.gip-home__audience-kicker{color:var(--gip-green)}
.gip-home__audience h3{color:var(--gip-ink);font-size:1.48rem}
.gip-home__audience li{color:var(--gip-muted);font-size:.92rem}
.gip-home__audience li::before{background:var(--gip-green)}
.gip-home__audience>a,
.gip-home__audience-body>a{
    display:flex;
    align-items:center;
    gap:8px;
    margin-top:auto;
    color:var(--gip-green)!important;
    font-size:.9rem;
    font-weight:830;
}

/* FORPRO reste coloré, sans passage par un vert presque noir */
.gip-home__forpro{
    background:
        radial-gradient(circle at 8% 20%,rgba(255,255,255,.15),transparent 260px),
        linear-gradient(105deg,var(--gip-green) 0 78%,var(--gip-green-light));
}
.gip-home__forpro .gip-home__button--light:hover{background:#eef9f0;color:var(--gip-green)}

@media(max-width:1180px){
    .gip-home__network-benefits{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:1024px){
    .gip-home__formations-headline{grid-template-columns:1fr}
    .gip-home__formations-badges{justify-content:flex-start}
    .gip-home__vae-card,.gip-home__network-card,.gip-home__ekonea-hero{grid-template-columns:1fr}
    .gip-home__network-media{min-height:360px}
}
@media(max-width:850px){
    .gip-home__vae-offers{grid-template-columns:1fr}
    .gip-home__vae-offer{display:grid;grid-template-columns:230px 1fr}
    .gip-home__vae-offer-media{height:100%;min-height:210px}
}
@media(max-width:680px){
    .gip-home{font-size:16.5px}
    .gip-home__quick{padding-bottom:26px}
    .gip-home__carousel-stage{padding:15px;border-radius:26px}
    .gip-home__vae-card{padding:24px}
    .gip-home__vae-visual{min-height:360px}
    .gip-home__vae-showcase{padding:20px;border-radius:27px}
    .gip-home__vae-showcase-head{align-items:flex-start;flex-direction:column}
    .gip-home__vae-showcase-head strong{text-align:left}
    .gip-home__vae-offer{display:flex}
    .gip-home__vae-offer-media{height:178px;min-height:0}
    .gip-home__network-media,.gip-home__network-media img{min-height:310px}
    .gip-home__network-benefits,.gip-home__ekonea-grid{grid-template-columns:1fr}
    .gip-home__network-benefit{min-height:0}
    .gip-home__ekonea-brand{min-height:240px;padding:28px}
    .gip-home__ekonea-card{grid-template-columns:54px 1fr;padding:23px}
    .gip-home__ekonea-card .gip-home__icon{width:54px;height:54px}
    .gip-home__testimonial{min-height:0;padding:29px}
    .gip-home__testimonial figcaption img,.gip-home__testimonial-avatar{width:72px;height:72px}
    .gip-home__audience-media{height:205px}
}

/* ==========================================================================
   Direction visuelle 1.3
   Bento éditorial, titres surlignés, cheminement continu et carrousels sobres.
   ========================================================================== */
.gip-home__highlight-title mark{
    position:relative;
    z-index:0;
    display:inline;
    padding:0 .08em;
    background:none;
    color:inherit;
    white-space:normal;
}
.gip-home__highlight-title mark::before{
    content:"";
    position:absolute;
    z-index:-1;
    right:-.05em;
    bottom:.07em;
    left:-.05em;
    height:.32em;
    border-radius:.22em;
    background:linear-gradient(90deg,rgba(29,166,56,.28),rgba(0,169,175,.13));
    transform:rotate(-1deg);
}

/* Le fond commence sous le hero sur toute la largeur ; seul le pavé remonte. */
.gip-home__quick{
    margin-top:0;
    padding:0 0 26px;
    background:#f3f9f5;
}
.gip-home__quick-grid{
    margin-bottom:-58px;
    transform:translateY(-58px);
}

/* Introduction formations en vraie composition bento. */
.gip-home__formations-headline{
    grid-template-columns:minmax(0,1.28fr) minmax(330px,.72fr);
    align-items:stretch;
    gap:20px;
}
.gip-home__formations-intro{
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    min-height:360px;
    padding:clamp(32px,4vw,56px);
    border:1px solid rgba(29,166,56,.11);
    border-radius:36px;
    background:rgba(255,255,255,.94);
    box-shadow:0 16px 42px rgba(23,59,44,.07);
}
.gip-home__formations-intro .gip-home__section-head{max-width:890px}
.gip-home__formations-intro .gip-home__section-head h2{
    max-width:820px;
    font-size:clamp(2.7rem,5vw,5.45rem);
    line-height:.98;
}
.gip-home__formations-intro .gip-home__section-head p{max-width:720px}
.gip-home__formations-intro .gip-home__formations-badges{
    justify-content:flex-start;
    margin-top:28px;
}
.gip-home__formations-bento{
    position:relative;
    display:flex;
    min-height:360px;
    flex-direction:column;
    justify-content:flex-start;
    padding:clamp(28px,3vw,42px);
    border-radius:36px;
    background:
        radial-gradient(circle at 92% 7%,rgba(0,169,175,.28),transparent 180px),
        var(--gip-green);
    color:#fff;
    box-shadow:0 20px 52px rgba(29,166,56,.18);
    isolation:isolate;
    overflow:hidden;
}
.gip-home__formations-bento::before{
    content:"";
    position:absolute;
    z-index:-1;
    right:-90px;
    bottom:-125px;
    width:310px;
    height:310px;
    border:1px solid rgba(255,255,255,.22);
    border-radius:50%;
    box-shadow:0 0 0 42px rgba(255,255,255,.045);
}
.gip-home__formations-bento-copy{position:relative;z-index:2;max-width:310px}
.gip-home__formations-bento strong{
    display:block;
    color:#fff;
    font-size:clamp(1.55rem,2.6vw,2.7rem);
    font-weight:860;
    letter-spacing:-.04em;
    line-height:1;
}
.gip-home__formations-bento strong span{font-size:1.34em}
.gip-home__formations-bento p{
    max-width:290px;
    margin:18px 0 0;
    color:rgba(255,255,255,.84);
    font-size:.91rem;
    line-height:1.52;
}
.gip-home__formations-bento img{
    position:absolute;
    z-index:1;
    right:-4%;
    bottom:-7%;
    width:min(72%,320px);
    max-height:265px;
    object-fit:contain;
    object-position:right bottom;
    filter:drop-shadow(0 20px 30px rgba(8,63,29,.2));
}
.gip-home__carousel-stage{
    margin-top:24px;
    box-shadow:none;
}
.gip-home__shortcode--formations :where(article,[class*="card"]){
    box-shadow:0 10px 28px rgba(23,59,44,.075)!important;
}
.gip-home__shortcode--formations :where(article,[class*="card"]):hover{
    box-shadow:0 10px 28px rgba(23,59,44,.075)!important;
}
.gip-home__shortcode--formations :where(a:hover,a:focus){
    box-shadow:none!important;
}

/* Le catalogue VAE est alimenté par offres_vae et devient un vrai carrousel. */
.gip-home__vae-showcase{
    position:relative;
    overflow:hidden;
}
.gip-home__vae-showcase-head strong{
    font-size:clamp(1.55rem,2.7vw,2.65rem);
    letter-spacing:-.035em;
}
.gip-home__vae-slider{
    position:relative;
    padding-top:62px;
}
.gip-home__vae-nav{
    top:0;
    right:0;
}
.gip-home__vae-offers{
    display:grid;
    grid-auto-flow:column;
    grid-auto-columns:calc((100% - 36px)/3);
    grid-template-columns:none;
    gap:18px;
    padding:4px 3px 16px;
    overflow-x:auto;
    overscroll-behavior-inline:contain;
    scroll-behavior:smooth;
    scroll-snap-type:inline mandatory;
    scrollbar-width:none;
}
.gip-home__vae-offers::-webkit-scrollbar{display:none}
.gip-home__vae-offer{
    display:flex;
    grid-template-columns:none;
    flex-direction:column;
    min-height:100%;
    scroll-snap-align:start;
}
.gip-home__vae-offer-media{height:190px;min-height:0}
.gip-home__vae-offer:hover{
    transform:translateY(-3px);
    box-shadow:0 14px 34px rgba(23,59,44,.1);
}
.gip-home__vae-offer-media>.gip-home__vae-badge{
    position:absolute;
    z-index:2;
    top:16px;
    left:16px;
    display:inline-flex;
    width:auto;
    height:auto;
    padding:6px 10px;
    border-radius:999px;
    background:var(--gip-green);
    color:#fff;
    font-size:.67rem;
    font-weight:850;
    letter-spacing:.08em;
}
.gip-home__vae-offer-media>.gip-home__vae-offer-placeholder{
    position:absolute;
    inset:0;
    display:grid;
    place-items:center;
    width:auto;
    height:auto;
    padding:0;
    border-radius:0;
    background:linear-gradient(145deg,#e9f7ed,#d9f0e1);
    color:var(--gip-green);
    font-size:2rem;
    font-style:normal;
    font-weight:900;
    letter-spacing:normal;
}
.gip-home__vae-offer-placeholder svg{width:62px;height:62px}

/* Le logo officiel est traité comme un élément de marque, pas comme une icône. */
.gip-home__forpro{
    padding:46px 0;
    background:
        radial-gradient(circle at 92% 15%,rgba(0,169,175,.22),transparent 260px),
        linear-gradient(110deg,#1da638,#35ad57);
}
.gip-home__forpro-inner{
    grid-template-columns:minmax(240px,300px) minmax(0,1fr) auto;
    gap:clamp(28px,4vw,54px);
}
.gip-home__forpro-logo{
    display:grid;
    place-items:center;
    min-height:116px;
    padding:18px 22px;
    border:1px solid rgba(255,255,255,.72);
    border-radius:25px;
    background:rgba(255,255,255,.96);
    box-shadow:0 18px 46px rgba(10,65,29,.16);
}
.gip-home__forpro-logo img{
    display:block;
    width:100%;
    max-height:78px;
    object-fit:contain;
}
.gip-home__forpro-copy{max-width:820px}
.gip-home__forpro h2{
    max-width:820px;
    font-size:clamp(2rem,3.6vw,3.65rem);
    line-height:1;
}
.gip-home__forpro p{font-size:1rem}

@media(max-width:1024px){
    .gip-home__formations-headline{grid-template-columns:1fr}
    .gip-home__formations-bento{min-height:290px}
    .gip-home__formations-bento-copy{max-width:52%}
    .gip-home__vae-offers{grid-auto-columns:calc((100% - 18px)/2)}
    .gip-home__forpro-inner{grid-template-columns:minmax(220px,280px) 1fr}
    .gip-home__forpro-inner>.gip-home__button{grid-column:1/-1}
}
@media(max-width:680px){
    .gip-home__quick{padding-bottom:20px}
    .gip-home__quick-grid{margin-bottom:-36px;transform:translateY(-36px)}
    .gip-home__formations-intro{min-height:0;padding:27px;border-radius:28px}
    .gip-home__formations-intro .gip-home__section-head h2{font-size:clamp(2.35rem,12vw,3.65rem)}
    .gip-home__formations-bento{min-height:315px;border-radius:28px}
    .gip-home__formations-bento-copy{max-width:74%}
    .gip-home__formations-bento img{right:-8%;width:70%;max-height:205px}
    .gip-home__vae-slider{padding-top:58px}
    .gip-home__vae-offers{grid-auto-columns:86%}
    .gip-home__vae-offer-media{height:178px}
    .gip-home__forpro-inner{grid-template-columns:1fr}
    .gip-home__forpro-logo{width:min(100%,330px)}
    .gip-home__forpro-inner>.gip-home__button{grid-column:auto}
}

/* ==========================================================================
   Direction visuelle 1.4
   Cartes aléatoires cohérentes, surlignages complets et survols lisibles.
   ========================================================================== */

/* Le surlignage suit toute la largeur du mot, y compris en fin de ligne. */
.gip-home__highlight-title mark{
    position:relative;
    z-index:auto;
    display:inline;
    padding:0 .055em;
    border-radius:0;
    background:
        linear-gradient(90deg,rgba(29,166,56,.28),rgba(0,169,175,.14))
        0 92% / 100% .34em no-repeat;
    color:inherit;
    -webkit-box-decoration-break:clone;
    box-decoration-break:clone;
}
.gip-home__highlight-title mark::before{display:none}
.gip-home__highlight-title--hero mark{
    background:
        linear-gradient(90deg,rgba(29,166,56,.86),rgba(0,169,175,.52))
        0 92% / 100% .34em no-repeat;
    color:#fff;
}

/* Survols : le texte conserve toujours son contraste et le vert s’éclaircit. */
.gip-home__button--green:hover,
.gip-home__button--green:focus-visible,
.gip-home__section--ekonea .gip-home__button--green:hover,
.gip-home__section--ekonea .gip-home__button--green:focus-visible{
    border-color:#24b943;
    background:#24b943;
    color:#fff!important;
    box-shadow:0 18px 38px rgba(29,166,56,.25);
}
.gip-home__button--outline{
    border-width:2px;
    border-color:rgba(29,166,56,.42);
    background:#fff;
    color:var(--gip-green)!important;
}
.gip-home__button--outline:hover,
.gip-home__button--outline:focus-visible{
    border-color:var(--gip-green);
    background:#edf9ef;
    color:#168d30!important;
}
.gip-home__button--light:hover,
.gip-home__button--light:focus-visible{
    background:#f2fbf4;
    color:#168d30!important;
}
.gip-home :where(.gip-home__formation-card,.gip-home__vae-offer,.gip-home__filiere,.gip-home__audience,.gip-home__testimonial) a:hover,
.gip-home :where(.gip-home__formation-card,.gip-home__vae-offer,.gip-home__filiere,.gip-home__audience,.gip-home__testimonial) a:focus{
    text-decoration:none;
}

/* Formations : même langage de cartes que le catalogue VAE. */
.gip-home__section--formations{
    padding-top:clamp(68px,6.5vw,96px);
    background:
        radial-gradient(circle at 94% 10%,rgba(0,169,175,.07),transparent 330px),
        #f3f9f5;
}
.gip-home__formations-headline{
    grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);
    align-items:end;
    gap:clamp(28px,5vw,72px);
    margin-bottom:30px;
}
.gip-home__formations-headline .gip-home__section-head{margin-bottom:0}
.gip-home__formations-headline .gip-home__section-head h2{
    max-width:930px;
    font-size:clamp(2.85rem,5vw,5.5rem);
    line-height:.99;
}
.gip-home__formations-badges{justify-content:flex-end}
.gip-home__formation-showcase{
    position:relative;
    padding:clamp(24px,3.3vw,40px);
    border:1px solid rgba(29,166,56,.1);
    border-radius:34px;
    background:#fff;
    box-shadow:var(--gip-shadow-soft);
    overflow:hidden;
}
.gip-home__formation-showcase-head{
    display:flex;
    align-items:end;
    justify-content:space-between;
    gap:25px;
    margin-bottom:24px;
}
.gip-home__formation-showcase-head>span{
    color:var(--gip-green);
    font-size:.75rem;
    font-weight:850;
    letter-spacing:.12em;
    text-transform:uppercase;
}
.gip-home__formation-showcase-head>strong{
    max-width:720px;
    color:var(--gip-ink);
    font-size:clamp(1.55rem,2.7vw,2.65rem);
    font-weight:850;
    letter-spacing:-.035em;
    line-height:1.15;
    text-align:right;
}
.gip-home__formation-slider{position:relative;padding-top:62px}
.gip-home__formation-nav{top:0;right:0}
.gip-home__formation-track{
    display:grid;
    grid-auto-flow:column;
    grid-auto-columns:calc((100% - 36px)/3);
    grid-template-columns:none;
    gap:18px;
    padding:4px 3px 16px;
    overflow-x:auto;
    overscroll-behavior-inline:contain;
    scroll-behavior:smooth;
    scroll-snap-type:inline mandatory;
    scrollbar-width:none;
}
.gip-home__formation-track::-webkit-scrollbar{display:none}
.gip-home__formation-card{
    min-width:0;
    border-color:rgba(23,59,44,.09);
    border-radius:24px;
    background:#fbfefc;
    color:var(--gip-ink);
    box-shadow:0 12px 30px rgba(23,59,44,.07);
    scroll-snap-align:start;
    transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease;
}
.gip-home__formation-card:hover{
    border-color:rgba(29,166,56,.18);
    color:var(--gip-ink)!important;
    transform:translateY(-3px);
    box-shadow:0 14px 34px rgba(23,59,44,.1);
}
.gip-home__formation-media{height:190px;aspect-ratio:auto;background:#dcefe1}
.gip-home__formation-media img{display:block;width:100%;height:100%!important;object-fit:cover;object-position:center}
.gip-home__formation-sector{
    top:16px;
    bottom:auto;
    background:var(--gip-green);
    color:#fff!important;
}
.gip-home__formation-placeholder{
    display:grid;
    place-items:center;
    width:100%;
    height:100%;
    color:var(--gip-green);
    font-size:1.1rem;
    font-weight:850;
}
.gip-home__formation-body{padding:21px}
.gip-home__formation-level{
    margin-bottom:9px;
    background:#edf9ef;
    color:#168d30;
}
.gip-home__formation-body h3{font-size:1.13rem;line-height:1.3}
.gip-home__formation-body h3 a,
.gip-home__formation-body h3 a:hover,
.gip-home__formation-body h3 a:focus{color:var(--gip-ink)!important}
.gip-home__formation-body p{margin:0 0 20px;color:var(--gip-muted)!important;font-size:.8rem;line-height:1.5}
.gip-home__formation-card .gip-home__text-link{
    align-self:flex-start;
    min-height:38px;
    padding:8px 13px;
    border:1px solid rgba(29,166,56,.2);
    border-radius:999px;
    background:#edf9ef;
    color:#168d30!important;
    font-size:.78rem;
}
.gip-home__formation-card .gip-home__text-link:hover,
.gip-home__formation-card .gip-home__text-link:focus-visible{
    border-color:var(--gip-green);
    background:var(--gip-green);
    color:#fff!important;
}
.gip-home__formation-card .gip-home__text-link b{font-size:1.1em}

/* La photo VAE couvre réellement toute la tuile et reste centrée. */
.gip-home__vae-visual{
    min-height:520px;
    background:#dcefe1;
}
.gip-home__vae-visual img{
    display:block;
    width:100%;
    height:100%!important;
    object-fit:cover!important;
    object-position:center center!important;
    opacity:1!important;
    mix-blend-mode:normal!important;
}
.gip-home__vae-offer,
.gip-home__vae-offer:hover,
.gip-home__vae-offer:focus{color:var(--gip-ink)!important}
.gip-home__vae-offer-body>small{color:var(--gip-green)!important}
.gip-home__vae-offer-body>strong{color:var(--gip-ink)!important}
.gip-home__vae-offer-body>em{color:var(--gip-muted)!important}
.gip-home__vae-offer-body>span{
    align-self:flex-start;
    min-height:38px;
    padding:8px 13px;
    border:1px solid rgba(29,166,56,.22);
    border-radius:999px;
    background:#edf9ef;
    color:#168d30!important;
    font-size:.8rem;
    font-weight:850;
    transition:background .2s ease,color .2s ease,border-color .2s ease;
}
.gip-home__vae-offer:hover .gip-home__vae-offer-body>span,
.gip-home__vae-offer:focus-visible .gip-home__vae-offer-body>span{
    border-color:var(--gip-green);
    background:var(--gip-green);
    color:#fff!important;
}
.gip-home__vae-offer-body>span b{font-size:1.12em}

/* Les photos des filières sont des calques de couverture sans interstice. */
.gip-home__filiere{isolation:isolate;background:#123b28}
.gip-home__filiere>img{
    position:absolute;
    z-index:0;
    inset:0;
    display:block;
    width:100%;
    height:100%!important;
    max-width:none;
    object-fit:cover!important;
    object-position:center center;
}
.gip-home__filiere-overlay{z-index:1}
.gip-home__filiere-content{z-index:2}
.gip-home__filiere::after{z-index:3;pointer-events:none}
.gip-home__filiere:hover,
.gip-home__filiere:focus-visible,
.gip-home__filiere:hover :where(strong,small,em),
.gip-home__filiere:focus-visible :where(strong,small,em){color:#fff!important}

/* Le véritable logo FORPRO dispose de sa respiration institutionnelle. */
.gip-home__forpro-logo{
    min-height:132px;
    padding:24px 30px;
    border-color:rgba(255,255,255,.9);
    border-radius:22px;
    background:#fff;
}
.gip-home__forpro-logo img{
    width:100%;
    max-height:88px;
    object-fit:contain;
    object-position:center;
}

/* ==========================================================================
   Correctif 1.4.1
   Le thème et Elementor ne doivent jamais recolorer les liens actifs en rose.
   ========================================================================== */
.gip-home__slider-nav button:is(:hover,:focus,:focus-visible,:active){
    border-color:var(--gip-green)!important;
    background:var(--gip-green)!important;
    color:#fff!important;
}
.gip-home__slider-nav button:focus-visible{
    outline:3px solid rgba(29,166,56,.24);
    outline-offset:3px;
    box-shadow:none!important;
}
.gip-home__project-menu a:is(:visited,:hover,:focus,:active),
.gip-home__filiere:is(:visited,:hover,:focus,:active){
    color:#fff!important;
}
.gip-home__quick-card:is(:visited,:hover,:focus,:active),
.gip-home__formation-media:is(:visited,:hover,:focus,:active),
.gip-home__formation-body h3 a:is(:visited,:hover,:focus,:active),
.gip-home__vae-offer:is(:visited,:hover,:focus,:active),
.gip-home__news-body h3 a:is(:visited,:hover,:focus,:active){
    color:var(--gip-ink)!important;
}
.gip-home__text-link:is(:visited,:focus,:active){
    color:#168d30!important;
}
.gip-home__formation-card .gip-home__text-link:is(:hover,:focus-visible,:active),
.gip-home__vae-offer:is(:hover,:focus-visible,:active) .gip-home__vae-offer-body>span{
    border-color:var(--gip-green)!important;
    background:var(--gip-green)!important;
    color:#fff!important;
}
.gip-home__button--green:is(:visited,:hover,:focus,:active),
.gip-home__button--glass:is(:visited,:hover,:focus,:active){
    color:#fff!important;
}
.gip-home__button--accent:visited,
.gip-home__button--ghost:visited{color:#fff!important}
.gip-home__button--accent:is(:hover,:focus){
    background:#fff!important;
    color:var(--gip-green-dark)!important;
}
.gip-home__button--ghost:is(:hover,:focus){
    border-color:#fff!important;
    background:#fff!important;
    color:var(--gip-green-dark)!important;
}
.gip-home__button--accent:active,
.gip-home__button--ghost:active{
    border-color:var(--gip-green)!important;
    background:var(--gip-green)!important;
    color:#fff!important;
}
.gip-home__button--outline:is(:visited,:hover,:focus,:active),
.gip-home__button--light:is(:visited,:hover,:focus,:active){
    color:#168d30!important;
}
.gip-home__audience>a:is(:visited,:hover,:focus,:active){
    color:var(--gip-green)!important;
}
.gip-home__contact-side>a:not(.gip-home__button):is(:visited,:hover,:focus,:active){
    color:#fff!important;
}

/* Sélections équitables et accompagnées par Gippi. */
.gip-home__formation-showcase-head,
.gip-home__vae-showcase-head{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(300px,420px);
    align-items:center;
    gap:clamp(24px,4vw,52px);
}
.gip-home__selection-title{display:grid;gap:9px;align-content:center}
.gip-home__selection-title>span{
    color:var(--gip-green)!important;
    font-size:.75rem!important;
    font-weight:850!important;
    letter-spacing:.12em!important;
    line-height:1.25;
    text-transform:uppercase;
}
.gip-home__selection-title>strong{
    max-width:760px!important;
    color:var(--gip-ink)!important;
    font-size:clamp(1.55rem,2.7vw,2.65rem)!important;
    font-weight:850;
    letter-spacing:-.035em!important;
    line-height:1.12!important;
    text-align:left!important;
}
.gip-home__selection-mascot{
    position:relative;
    display:grid;
    grid-template-columns:112px minmax(0,1fr);
    align-items:center;
    min-height:126px;
    padding:10px 16px 10px 0;
    border:1px solid rgba(29,166,56,.12);
    border-radius:26px;
    background:linear-gradient(135deg,#edf9ef,#f8fcf9);
}
.gip-home__selection-mascot--vae{
    border-color:rgba(0,169,175,.16);
    background:linear-gradient(135deg,#e9f9f8,#f8fcfb);
}
.gip-home__selection-mascot img{
    display:block;
    width:122px;
    height:122px!important;
    max-width:none;
    margin-left:-8px;
    object-fit:contain;
    filter:drop-shadow(0 12px 14px rgba(18,50,50,.14));
}
.gip-home__selection-mascot p{
    position:relative;
    margin:0;
    padding:12px 14px;
    border:1px solid rgba(18,50,50,.08);
    border-radius:17px;
    background:#fff;
    color:var(--gip-ink)!important;
    font-size:.86rem;
    font-weight:720;
    line-height:1.4;
    box-shadow:0 8px 22px rgba(23,59,44,.07);
}
.gip-home__selection-mascot p::before{
    content:"";
    position:absolute;
    top:50%;
    left:-7px;
    width:12px;
    height:12px;
    border-bottom:1px solid rgba(18,50,50,.08);
    border-left:1px solid rgba(18,50,50,.08);
    background:#fff;
    transform:translateY(-50%) rotate(45deg);
}
.gip-home__slider-toolbar{
    position:absolute;
    z-index:3;
    top:0;
    right:0;
    left:0;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
}
.gip-home__slider-toolbar .gip-home__slider-nav{
    position:static!important;
    margin:0!important;
}
.gip-home__slider-toolbar .gip-home__slider-nav:only-child{margin-left:auto!important}
.gip-home__refresh-button{
    display:inline-flex;
    align-items:center;
    gap:9px;
    min-height:45px;
    padding:9px 16px;
    border:1px solid rgba(29,166,56,.2);
    border-radius:999px;
    background:#edf9ef;
    color:#168d30;
    font:inherit;
    font-size:.82rem;
    font-weight:850;
    line-height:1.2;
    cursor:pointer;
    transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease;
}
.gip-home__refresh-button svg{width:18px;height:18px;transition:transform .35s ease}
.gip-home__refresh-button:hover,
.gip-home__refresh-button:focus-visible{
    border-color:var(--gip-green);
    background:var(--gip-green);
    color:#fff;
    transform:translateY(-1px);
}
.gip-home__refresh-button:hover svg,
.gip-home__refresh-button:focus-visible svg{transform:rotate(135deg)}
.gip-home__refresh-button:focus-visible{outline:3px solid rgba(0,169,175,.28);outline-offset:3px}
.gip-home__sr-only{
    position:absolute!important;
    width:1px!important;
    height:1px!important;
    padding:0!important;
    margin:-1px!important;
    overflow:hidden!important;
    clip:rect(0,0,0,0)!important;
    white-space:nowrap!important;
    border:0!important;
}

@media(max-width:1024px){
    .gip-home__formations-headline{grid-template-columns:1fr}
    .gip-home__formations-badges{justify-content:flex-start}
    .gip-home__formation-track{grid-auto-columns:calc((100% - 18px)/2)}
    .gip-home__vae-visual{min-height:480px}
    .gip-home__formation-showcase-head,
    .gip-home__vae-showcase-head{grid-template-columns:1fr}
    .gip-home__selection-mascot{max-width:520px}
}
@media(max-width:680px){
    .gip-home__formations-headline .gip-home__section-head h2{font-size:clamp(2.35rem,12vw,3.65rem)}
    .gip-home__formation-showcase{padding:20px;border-radius:27px}
    .gip-home__formation-showcase-head,
    .gip-home__vae-showcase-head{display:grid;gap:18px}
    .gip-home__selection-mascot{grid-template-columns:88px minmax(0,1fr);min-height:102px;border-radius:22px}
    .gip-home__selection-mascot img{width:96px;height:96px!important;margin-left:-5px}
    .gip-home__selection-mascot p{padding:10px 12px;font-size:.78rem}
    .gip-home__formation-slider{padding-top:58px}
    .gip-home__formation-track{grid-auto-columns:86%}
    .gip-home__formation-media{height:178px}
    .gip-home__vae-visual{min-height:410px}
    .gip-home__forpro-logo{min-height:112px;padding:20px 24px}
}
@media(max-width:420px){
    .gip-home__refresh-button{max-width:178px;padding-inline:12px;font-size:.74rem}
    .gip-home__slider-nav button{width:41px;height:41px}
}

/* ========================================================================== 
   Direction visuelle 1.5.2
   Signature de titre, actions glassmorphism et responsive des carrousels.
   ========================================================================== */

.gip-home__hero-title-lockup{
    display:grid;
    grid-template-columns:clamp(52px,4.7vw,76px) minmax(0,1fr);
    align-items:center;
    gap:clamp(14px,2vw,24px);
    max-width:860px;
    margin:0 0 24px;
}
.gip-home__hero-title-lockup .gip-home__highlight-title--hero{
    margin:0;
    font-size:clamp(2.65rem,4.25vw,4.65rem);
    line-height:.95;
    letter-spacing:-.055em;
}
.gip-home__hero-title-line{
    display:block;
    white-space:nowrap;
}
.gip-home__hero-title-decor{
    display:block;
    width:100%;
    height:auto!important;
    max-height:none;
    object-fit:contain;
    filter:drop-shadow(0 10px 22px rgba(0,0,0,.16));
}

.gip-home button.gip-home__refresh-button{
    width:auto!important;
    min-height:52px;
    display:inline-grid;
    grid-template-columns:40px auto;
    align-items:center;
    column-gap:12px;
    padding:5px 19px 5px 6px;
    border:1px solid rgba(29,166,56,.3)!important;
    border-radius:999px;
    background:linear-gradient(135deg,rgba(255,255,255,.92),rgba(229,248,234,.74))!important;
    color:#176c31!important;
    -webkit-backdrop-filter:blur(16px) saturate(1.35);
    backdrop-filter:blur(16px) saturate(1.35);
    box-shadow:0 12px 30px rgba(17,86,43,.12),inset 0 1px 0 rgba(255,255,255,.94)!important;
    font-size:.84rem;
    white-space:nowrap;
}
.gip-home__refresh-icon{
    width:40px;
    height:40px;
    display:grid;
    place-items:center;
    border:1px solid rgba(29,166,56,.16);
    border-radius:50%;
    background:linear-gradient(135deg,rgba(29,166,56,.17),rgba(0,169,175,.14));
    color:#168d30;
    transition:background .25s ease,color .25s ease,transform .25s ease;
}
.gip-home button.gip-home__refresh-button .gip-home__refresh-icon svg{
    width:20px;
    height:20px;
    display:block;
    color:currentColor!important;
    fill:currentColor;
}
.gip-home__refresh-label{
    min-height:40px;
    display:flex;
    align-items:center;
    line-height:1.15;
}
.gip-home button.gip-home__refresh-button:is(:hover,:focus-visible){
    border-color:rgba(29,166,56,.48)!important;
    background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(215,244,223,.88))!important;
    color:#115b28!important;
    box-shadow:0 16px 36px rgba(17,86,43,.16),inset 0 1px 0 #fff!important;
}
.gip-home button.gip-home__refresh-button:is(:hover,:focus-visible) .gip-home__refresh-icon{
    background:linear-gradient(135deg,var(--gip-green),#19a881);
    color:#fff;
}
.gip-home button.gip-home__refresh-button:active{
    transform:translateY(0);
}

@media(max-width:680px){
    .gip-home__hero-title-lockup{
        grid-template-columns:clamp(34px,10vw,46px) minmax(0,1fr);
        gap:clamp(11px,3.5vw,16px);
    }
    .gip-home__hero-title-lockup .gip-home__highlight-title--hero{
        font-size:clamp(1.82rem,8.1vw,2.7rem);
        line-height:.98;
    }
    .gip-home button.gip-home__refresh-button{
        width:auto!important;
        min-height:48px;
        grid-template-columns:36px auto;
        column-gap:10px;
        padding:5px 15px 5px 6px;
        font-size:.76rem;
    }
    .gip-home__refresh-icon{width:36px;height:36px}
    .gip-home__refresh-label{min-height:36px}
}

@media(max-width:420px){
    .gip-home__formation-slider,
    .gip-home__vae-slider{padding-top:0}
    .gip-home__slider-toolbar{
        position:relative;
        flex-direction:column;
        align-items:stretch;
        margin-bottom:16px;
    }
    .gip-home__slider-toolbar .gip-home__slider-nav{align-self:flex-end}
    .gip-home button.gip-home__refresh-button{
        width:100%!important;
        max-width:none;
        grid-template-columns:36px minmax(0,1fr);
        white-space:normal;
    }
}

/* ==========================================================================
   Référencement éditorial 1.6.0
   Contenu sémantique visible, utile aux visiteurs comme aux moteurs.
   ========================================================================== */

.gip-home__section--seo-hub{
    position:relative;
    padding-block:clamp(72px,8vw,118px);
    background:
        radial-gradient(circle at 92% 12%,rgba(0,169,175,.1),transparent 28%),
        linear-gradient(180deg,#fff 0%,#f3faf5 100%);
}
.gip-home__seo-hub-head{
    max-width:900px;
    margin:0 auto clamp(34px,4vw,54px);
    text-align:center;
}
.gip-home__seo-hub-head h2,
.gip-home__faq-head h2{
    margin:10px 0 16px;
    color:var(--gip-green-dark);
    font-size:clamp(2.1rem,4vw,4rem);
    line-height:1.02;
    letter-spacing:-.045em;
}
.gip-home__seo-hub-head p,
.gip-home__faq-head>p{
    margin:0;
    color:#526a62;
    font-size:clamp(1rem,1.4vw,1.16rem);
    line-height:1.75;
}
.gip-home__seo-hub-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:20px;
}
.gip-home__seo-hub-card{
    display:flex;
    flex-direction:column;
    min-height:100%;
    padding:clamp(24px,3vw,36px);
    border:1px solid rgba(18,50,50,.09);
    border-radius:28px;
    background:rgba(255,255,255,.84);
    box-shadow:0 18px 50px rgba(18,50,50,.08);
    -webkit-backdrop-filter:blur(14px);
    backdrop-filter:blur(14px);
}
.gip-home__seo-hub-card-head{
    display:flex;
    align-items:center;
    gap:15px;
    margin-bottom:19px;
}
.gip-home__seo-hub-card-head .gip-home__icon{
    flex:0 0 48px;
    width:48px;
    height:48px;
    display:grid;
    place-items:center;
    border-radius:16px;
    background:linear-gradient(135deg,rgba(29,166,56,.14),rgba(0,169,175,.12));
    color:var(--gip-green);
}
.gip-home__seo-hub-card-head .gip-home__icon svg{width:23px;height:23px}
.gip-home__seo-hub-card h3{
    margin:0;
    color:var(--gip-green-dark);
    font-size:clamp(1.2rem,1.8vw,1.55rem);
    line-height:1.2;
}
.gip-home__seo-hub-card ul{
    display:grid;
    gap:11px;
    margin:0 0 25px;
    padding:0;
    list-style:none;
}
.gip-home__seo-hub-card li{
    display:grid;
    grid-template-columns:20px minmax(0,1fr);
    align-items:start;
    gap:10px;
    color:#405850;
    font-size:.97rem;
    line-height:1.5;
}
.gip-home__seo-hub-card li svg{
    width:19px;
    height:19px;
    margin-top:2px;
    color:var(--gip-green);
}
.gip-home__seo-hub-card .gip-home__text-link{margin-top:auto;align-self:flex-start}
.gip-home__seo-identity{
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    gap:8px 28px;
    margin-top:28px;
    padding:18px 22px;
    border:1px solid rgba(29,166,56,.14);
    border-radius:18px;
    background:rgba(255,255,255,.68);
    color:#526a62;
    font-size:.87rem;
    line-height:1.55;
}
.gip-home__seo-identity p{margin:0}
.gip-home__seo-identity strong{color:var(--gip-green-dark)}
.gip-home__seo-identity a{color:#16772e;text-decoration-thickness:1px;text-underline-offset:3px}

.gip-home__section--faq{
    padding-block:clamp(72px,8vw,116px);
    background:#eef6f1;
}
.gip-home__faq-layout{
    display:grid;
    grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);
    align-items:start;
    gap:clamp(34px,6vw,86px);
}
.gip-home__faq-head{
    position:sticky;
    top:110px;
}
.gip-home__faq-head .gip-home__button{margin-top:28px}
.gip-home__faq-list{display:grid;gap:12px}
.gip-home__faq-item{
    border:1px solid rgba(18,50,50,.1);
    border-radius:20px;
    background:rgba(255,255,255,.9);
    box-shadow:0 12px 34px rgba(18,50,50,.06);
    overflow:hidden;
}
.gip-home__faq-item summary{
    display:grid;
    grid-template-columns:minmax(0,1fr) 38px;
    align-items:center;
    gap:18px;
    min-height:76px;
    padding:17px 18px 17px 24px;
    color:var(--gip-green-dark);
    font-size:1rem;
    font-weight:820;
    line-height:1.35;
    cursor:pointer;
    list-style:none;
}
.gip-home__faq-item summary::-webkit-details-marker{display:none}
.gip-home__faq-item summary:focus-visible{outline:3px solid rgba(0,169,175,.28);outline-offset:-3px}
.gip-home__faq-toggle{
    width:38px;
    height:38px;
    display:grid;
    place-items:center;
    border-radius:50%;
    background:rgba(29,166,56,.1);
    color:var(--gip-green);
    transition:transform .25s ease,background .25s ease,color .25s ease;
}
.gip-home__faq-toggle svg{width:18px;height:18px;transform:rotate(90deg)}
.gip-home__faq-item[open] .gip-home__faq-toggle{
    background:var(--gip-green);
    color:#fff;
    transform:rotate(180deg);
}
.gip-home__faq-answer{padding:0 72px 22px 24px}
.gip-home__faq-answer p{margin:0;color:#526a62;font-size:.96rem;line-height:1.72}

@media(max-width:900px){
    .gip-home__faq-layout{grid-template-columns:1fr}
    .gip-home__faq-head{position:static;max-width:760px}
}

@media(max-width:680px){
    .gip-home__seo-hub-grid{grid-template-columns:1fr}
    .gip-home__seo-hub-card{border-radius:22px}
    .gip-home__seo-identity{display:grid;justify-content:stretch;text-align:left}
    .gip-home__faq-item summary{grid-template-columns:minmax(0,1fr) 34px;min-height:68px;padding:15px 14px 15px 18px;font-size:.94rem}
    .gip-home__faq-toggle{width:34px;height:34px}
    .gip-home__faq-answer{padding:0 18px 19px}
}
