/* Evergreen Fit : maquette « Claude Design » (convertie en HTML statique le 11/10/2026) */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 500 900;
  font-stretch: 75% 100%;
  font-display: swap;
  src: url("fonts/archivo.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Figtree';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/figtree.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Figtree';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("fonts/figtree.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Figtree';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("fonts/figtree.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Figtree';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("fonts/figtree.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Fraunces';
  font-style: italic;
  font-weight: 300 500;
  font-display: swap;
  src: url("fonts/fraunces-italic.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
body{margin:0;background:#0A2219}
a{color:inherit}a:hover{color:inherit}
.ef{container:ef/inline-size;--night:#0A2219;--night2:#0F2D22;--deep:#061710;--sapin:#055136;--sapin2:#06633F;--pousse:#8CC63F;--pousse2:#A0D65A;--feuille:#669A38;--ecorce:#F3EFE6;--ecorce2:#EAE4D7;--line:#D6CDBA;--encre:#13201A;--encre2:#44534A;--c80:rgba(243,239,230,.82);--c65:rgba(243,239,230,.66);--c20:rgba(243,239,230,.2);--c10:rgba(243,239,230,.1);--fd:'Archivo','Arial Narrow',sans-serif;--ft:'Figtree','Segoe UI',system-ui,sans-serif;--fs:'Fraunces',Georgia,serif;position:relative;min-height:100vh;display:flex;flex-direction:column;overflow-x:clip;background:var(--night);color:var(--encre);font-family:var(--ft);font-size:18px;line-height:1.6;-webkit-font-smoothing:antialiased}
.ef *,.ef *::before,.ef *::after{box-sizing:border-box}
.ef :where(h1,h2,h3,p,ul,ol,li,figure,blockquote,fieldset,legend){margin:0;padding:0}
.ef :where(ul,ol){list-style:none}
.ef img{display:block;max-width:100%}
.ef a{text-decoration:none}
.ef :where(button,input,textarea){font:inherit;color:inherit}
.ef ::selection{background:var(--pousse);color:var(--night)}
.ef :focus-visible{outline:3px solid var(--pousse);outline-offset:3px;border-radius:4px}
.ef .ef-light :focus-visible,.ef .ef-form :focus-visible{outline-color:var(--sapin)}

/* trame */
.ef-wrap{width:100%;max-width:1440px;margin-inline:auto;padding-inline:64px}
.ef-sec{position:relative;padding-block:144px}
.ef-dark{background:var(--night);color:var(--ecorce)}
.ef-light{background:var(--ecorce);color:var(--encre)}
.ef-alt{background:var(--ecorce2)}
.ef-ico{width:20px;height:20px;flex:none;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.ef-ri{width:22px;height:22px;flex:none;fill:none;stroke:currentColor;stroke-width:1.5}
.ef-ri circle:first-child{fill:currentColor;stroke:none}
.ef-rings{fill:none;stroke:currentColor;stroke-width:1.1}
.ef-rings .k{stroke-width:2.4}

/* typo */
.ef-display{font-family:var(--fd);font-stretch:75%;font-weight:900;text-transform:uppercase;line-height:.9;letter-spacing:-.004em;text-wrap:balance}
.ef-h2{font-size:clamp(44px,7.4cqi,108px)}
.ef-h2--md{font-size:clamp(44px,5.6cqi,84px)}
.ef-light .ef-display{color:var(--sapin)}
.ef-kicker{display:flex;align-items:center;gap:12px;font-family:var(--ft);font-size:13px;font-weight:600;line-height:1.3;letter-spacing:.16em;text-transform:uppercase;color:var(--sapin)}
.ef-dark .ef-kicker,.ef-why .ef-kicker{color:var(--pousse)}
.ef-hl{color:var(--pousse)}

/* étiquettes « à valider » (réglage Maquette) */
.ef-val{display:none}
.ef--val .ef-val{display:inline-flex;align-items:center;min-height:24px;padding:3px 10px;border:1px dashed currentColor;border-radius:999px;font-family:var(--ft);font-size:11px;font-weight:700;font-style:normal;line-height:1.2;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;vertical-align:middle;color:#7A5200;background:rgba(242,193,78,.24)}
.ef--val .ef-dark .ef-val,.ef--val .ef-why .ef-val{color:#F2C14E;background:rgba(242,193,78,.1)}
.ef--val .ef-dark .ef-form .ef-val{color:#7A5200;background:rgba(242,193,78,.24)}

/* boutons */
.ef-btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:60px;padding:0 28px 0 30px;border:0;border-radius:999px;background:var(--pousse);color:var(--night);font-family:var(--ft);font-size:17px;font-weight:700;line-height:1.15;letter-spacing:.005em;white-space:nowrap;cursor:pointer;transition:background .25s,transform .25s,box-shadow .25s}
.ef-btn .ef-ico{transition:transform .25s}
.ef-btn:hover{background:var(--pousse2);color:var(--night);transform:translateY(-1px);box-shadow:0 14px 34px -14px rgba(140,198,63,.7)}
.ef-btn:hover .ef-arr{transform:translateX(4px)}
.ef-btn--ghost{background:transparent;color:var(--ecorce);box-shadow:inset 0 0 0 1.5px rgba(243,239,230,.38)}
.ef-btn--ghost .ef-ico{color:var(--pousse)}
.ef-btn--ghost:hover{background:rgba(243,239,230,.06);color:var(--ecorce);box-shadow:inset 0 0 0 1.5px var(--ecorce)}
.ef-btn--sm{min-height:48px;padding:0 22px;font-size:15px}
.ef-btn--block{width:100%}

/* en-tête */
.ef-head{position:sticky;top:0;z-index:50;background:rgba(10,34,25,.9);-webkit-backdrop-filter:blur(16px) saturate(140%);backdrop-filter:blur(16px) saturate(140%);border-bottom:1px solid var(--c10);color:var(--ecorce)}
.ef-head__in{display:flex;align-items:center;gap:40px;height:88px}
.ef-logo{display:flex;align-items:center;flex:none}
.ef-logo img{height:60px;width:auto}
.ef-nav{display:flex;align-items:center;gap:36px;margin-left:auto}
.ef-nav a{position:relative;padding:10px 0;font-size:15px;font-weight:500;color:var(--c80);transition:color .2s}
.ef-nav a::after{content:"";position:absolute;left:0;right:0;bottom:4px;height:2px;border-radius:2px;background:var(--pousse);transform:scaleX(0);transform-origin:left;transition:transform .3s}
.ef-nav a:hover{color:var(--ecorce)}
.ef-nav a:hover::after{transform:scaleX(1)}
.ef-head__act{display:flex;align-items:center;gap:22px}
.ef-head__tel{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:44px;font-size:15px;font-weight:600;white-space:nowrap;font-variant-numeric:tabular-nums;color:var(--ecorce)}
.ef-head__tel .ef-ico{width:18px;height:18px;color:var(--pousse)}
.ef-head__tel:hover{color:var(--pousse)}
.ef-menu{display:none}
.ef-menu summary{display:grid;place-items:center;width:46px;height:46px;border-radius:999px;box-shadow:inset 0 0 0 1.5px var(--c20);list-style:none;cursor:pointer;color:var(--ecorce)}
.ef-menu summary::-webkit-details-marker{display:none}
.ef-menu[open] summary{background:var(--ecorce);color:var(--night)}
.ef-menu__panel{position:absolute;left:0;right:0;top:100%;display:flex;flex-direction:column;padding:8px 20px 24px;background:var(--night);border-bottom:1px solid var(--c10)}
.ef-menu__panel a:not(.ef-btn){padding:14px 0;border-bottom:1px solid var(--c10);font-family:var(--fd);font-stretch:80%;font-weight:800;font-size:28px;line-height:1.1;text-transform:uppercase}
.ef-menu__panel .ef-btn{margin-top:20px}

/* hero */
.ef-hero{position:relative;overflow:hidden;padding-block:80px 120px}
.ef-hero__rings{position:absolute;width:1240px;height:1240px;right:-380px;top:-300px;color:var(--pousse);opacity:.16;pointer-events:none}
.ef-hero__grid{position:relative;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:80px;align-items:end}
.ef-eyebrow{display:flex;align-items:center;gap:14px;font-family:var(--ft);font-size:13px;font-weight:600;line-height:1.45;letter-spacing:.12em;text-transform:uppercase;color:var(--pousse)}
.ef-hero__title{margin-top:32px;font-size:clamp(52px,8.6cqi,128px);color:var(--ecorce)}
.ef-hero__lead{margin-top:36px;max-width:540px;font-size:19px;line-height:1.6;color:var(--c80)}
.ef-ctas{display:flex;flex-wrap:wrap;gap:14px;margin-top:44px}
.ef-hero__media{position:relative}
.ef-hero__frame{aspect-ratio:4/5;overflow:hidden;border-radius:240px 6px 6px 6px;background:var(--night2)}
.ef-hero__frame img{width:100%;height:100%;object-fit:cover;object-position:64% 50%}
.ef-seal{position:absolute;left:-84px;bottom:56px;width:168px;height:168px;border-radius:50%;background:var(--night);color:var(--ecorce);box-shadow:0 0 0 1px var(--c10),0 24px 60px -20px rgba(0,0,0,.65)}
.ef-seal svg{display:block;width:100%;height:100%}
.ef-seal text{font-family:var(--ft);font-size:12.5px;font-weight:600;letter-spacing:.05em;fill:currentColor}
.ef-seal .r{fill:none;stroke:var(--pousse);stroke-width:1.3}
.ef-seal .d{fill:var(--pousse)}
.ef-seal__spin{transform-box:view-box;transform-origin:50% 50%}

/* bandeau */
.ef-band{background:var(--pousse);color:var(--night)}
.ef-band__list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.ef-band__list li{display:flex;align-items:center;gap:14px;padding:30px 28px;font-family:var(--fd);font-stretch:80%;font-weight:800;font-size:20px;line-height:1.08;text-transform:uppercase}
.ef-band__list li+li{border-left:1px solid rgba(10,34,25,.24)}
.ef-band__list li:first-child{padding-left:0}
.ef-band__list li:last-child{padding-right:0}
.ef-band .ef-ri{width:28px;height:28px}

/* histoire */
.ef-story{overflow:clip}
.ef-story__rings{position:absolute;width:1100px;height:1100px;left:-560px;top:180px;color:var(--pousse);opacity:.08;pointer-events:none}
.ef-story__top{display:flex;align-items:center;flex-wrap:wrap;gap:16px}
.ef-story__quote{position:relative;margin-top:44px;max-width:1180px;font-family:var(--fs);font-style:italic;font-weight:300;font-size:clamp(38px,5.8cqi,86px);line-height:1.04;letter-spacing:-.015em;color:var(--ecorce);text-wrap:balance}
.ef-story__quote em{color:var(--pousse)}
.ef-story__grid{position:relative;display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:112px;margin-top:96px;align-items:start}
.ef-ph{position:relative;aspect-ratio:4/5;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:24px;border-radius:6px 6px 6px 200px;background:var(--night2);text-align:center;box-shadow:inset 0 0 0 1px var(--c10)}
.ef-ph svg{position:absolute;inset:0;width:100%;height:100%;color:var(--pousse);opacity:.14}
.ef-ph__t{position:relative;font-family:var(--fd);font-stretch:80%;font-weight:800;font-size:24px;line-height:1.1;letter-spacing:.02em;text-transform:uppercase;color:var(--ecorce)}
.ef-ph__s{position:relative;font-size:14px;color:var(--c65)}
.ef-story__cap{display:flex;flex-direction:column;gap:2px;margin-top:20px;padding-top:18px;border-top:1px solid var(--c20)}
.ef-story__cap strong{font-family:var(--fd);font-stretch:80%;font-weight:800;font-size:22px;line-height:1.2;letter-spacing:.02em;text-transform:uppercase}
.ef-story__cap span{font-size:15px;color:var(--c65)}
.ef-chapters{position:relative;display:flex;flex-direction:column;gap:64px;padding-top:8px}
.ef-chapters::before{content:"";position:absolute;left:39.5px;top:48px;bottom:48px;width:1px;background:var(--c20)}
.ef-ch{position:relative;display:grid;grid-template-columns:80px minmax(0,1fr);gap:40px}
.ef-ch__mark{position:relative;width:80px;height:80px;display:grid;place-items:center;border-radius:50%;background:var(--night)}
.ef-ch__mark svg{position:absolute;inset:0;width:100%;height:100%;fill:none;stroke:var(--pousse);stroke-width:1.5}
.ef-ch__mark svg .o{stroke:var(--c20);stroke-dasharray:2 4}
.ef-ch__n{position:relative;font-family:var(--fd);font-stretch:75%;font-weight:900;font-size:22px;line-height:1;color:var(--pousse)}
.ef-ch__t{padding-top:14px;font-family:var(--fd);font-stretch:75%;font-weight:900;font-size:clamp(34px,3.4cqi,52px);line-height:.9;text-transform:uppercase;color:var(--ecorce)}
.ef-ch__b p{margin-top:16px;max-width:560px;font-size:20px;line-height:1.6;color:var(--c80)}

/* méthode */
.ef-method__head{padding-bottom:48px}
.ef-pillars{border-bottom:1px solid var(--line)}
.ef-pillar{display:grid;grid-template-columns:96px minmax(0,1.55fr) minmax(0,1fr);gap:48px;align-items:center;padding-block:48px;border-top:1px solid var(--line)}
.ef-pillar__n{display:grid;place-items:center;width:64px;height:64px;border-radius:50%;box-shadow:inset 0 0 0 1.5px var(--sapin);font-family:var(--fd);font-stretch:75%;font-weight:900;font-size:22px;color:var(--sapin);transition:background .3s,color .3s,box-shadow .3s}
.ef-pillar:hover .ef-pillar__n{background:var(--pousse);color:var(--night);box-shadow:inset 0 0 0 1.5px var(--pousse)}
.ef-pillar__t{font-size:clamp(44px,6.2cqi,92px)}
.ef-pillar__d{max-width:440px;font-size:19px;line-height:1.6;color:var(--encre2)}

/* exergue */
.ef-exergue{position:relative;overflow:clip;padding-block:128px;background:var(--sapin);color:var(--ecorce)}
.ef-exergue__rings{position:absolute;width:900px;height:900px;right:-240px;top:50%;margin-top:-450px;color:var(--pousse);opacity:.2;pointer-events:none}
.ef-exergue blockquote{position:relative}
.ef-exergue__a{display:block;max-width:1100px;font-family:var(--fd);font-stretch:75%;font-weight:900;font-size:clamp(44px,7.2cqi,104px);line-height:.92;text-transform:uppercase;text-wrap:balance}
.ef-nw{white-space:nowrap}
.ef-exergue__a em{font-style:normal;color:var(--pousse)}
.ef-exergue__b{display:block;margin-top:36px;font-family:var(--fs);font-style:italic;font-weight:300;font-size:clamp(28px,3.2cqi,46px);line-height:1.2;color:var(--c80)}

/* programmes */
.ef-progs__head{margin-bottom:64px}
.ef-sup{position:relative;top:.3em;margin-left:.18em;vertical-align:top;font-family:var(--ft);font-stretch:100%;font-size:.22em;font-weight:600;letter-spacing:0;color:var(--sapin)}
.ef-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.ef-card{position:relative;overflow:hidden;display:flex;flex-direction:column;min-height:440px;padding:48px 48px 40px;border-radius:6px;background:var(--night);color:var(--ecorce);transition:border-radius .6s cubic-bezier(.2,.7,.2,1),transform .4s}
.ef-card:hover{border-radius:96px 6px 6px 6px;transform:translateY(-4px)}
.ef-card__rings{position:absolute;width:560px;height:560px;right:-280px;top:-280px;color:var(--pousse);opacity:.16;fill:none;stroke:currentColor;stroke-width:1.2;pointer-events:none;transition:opacity .4s,transform .8s}
.ef-card:hover .ef-card__rings{opacity:.32;transform:scale(1.06)}
.ef-card__n{position:relative;font-family:var(--fd);font-stretch:75%;font-weight:900;font-size:64px;line-height:.8;color:var(--pousse)}
.ef-card__t{position:relative;margin-top:auto;padding-top:72px;max-width:460px;font-family:var(--fd);font-stretch:80%;font-weight:800;font-size:clamp(32px,3cqi,44px);line-height:.95;text-transform:uppercase}
.ef-card__d{position:relative;margin-top:18px;max-width:500px;font-size:18px;line-height:1.6;color:var(--c80)}
.ef-card__link{position:relative;display:inline-flex;align-items:center;gap:10px;align-self:flex-start;min-height:44px;margin-top:24px;border-bottom:1.5px solid transparent;font-size:16px;font-weight:600;color:var(--pousse);transition:border-color .2s,gap .2s}
.ef-card__link:hover{border-color:var(--pousse);gap:14px;color:var(--pousse)}
.ef-help{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:24px 36px;margin-top:20px;padding:36px 44px;border-radius:6px;background:var(--ecorce2)}
.ef-help .ef-ri{width:56px;height:56px;color:var(--sapin);stroke-width:1.2}
.ef-help__q{font-family:var(--fd);font-stretch:80%;font-weight:800;font-size:28px;line-height:1;text-transform:uppercase;color:var(--sapin)}
.ef-help__a{margin-top:8px;font-size:18px;line-height:1.5;color:var(--encre2)}

/* parcours */
.ef-process{overflow:clip}
.ef-process__head{display:flex;align-items:flex-end;flex-wrap:wrap;gap:16px 24px;margin-bottom:88px}
.ef-steps-wrap{position:relative;view-timeline-name:--efsteps}
.ef-steps{position:relative;z-index:1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px}
.ef-step{display:flex;flex-direction:column;align-items:flex-start}
.ef-step__ring{position:relative;flex:none;width:168px;height:168px;display:grid;place-items:center}
.ef-step__ring svg{position:absolute;inset:0;width:100%;height:100%}
.ef-step__ring .m{fill:var(--night)}
.ef-step__ring .on{fill:none;stroke:var(--pousse);stroke-width:1.6}
.ef-step__ring .off{fill:none;stroke:var(--c20);stroke-width:1;stroke-dasharray:2 5}
.ef-step__n{position:relative;font-family:var(--fd);font-stretch:75%;font-weight:900;font-size:30px;line-height:1;color:var(--pousse)}
.ef-step--go .ef-step__ring .m{fill:var(--pousse)}
.ef-step--go .ef-step__ring .on{stroke:var(--night)}
.ef-step--go .ef-step__ring .off{stroke:rgba(10,34,25,.4)}
.ef-step--go .ef-step__n{color:var(--night)}
.ef-step__txt{margin-top:32px}
.ef-step__t{max-width:280px;font-family:var(--fd);font-stretch:80%;font-weight:800;font-size:clamp(24px,2.1cqi,30px);line-height:1;text-transform:uppercase;color:var(--ecorce)}
.ef-step__cta{display:inline-flex;align-items:center;gap:10px;min-height:44px;margin-top:12px;font-size:16px;font-weight:600;color:var(--pousse)}
.ef-step__cta:hover{color:var(--pousse2)}
.ef-step__cta:hover .ef-arr{transform:translateX(4px)}
.ef-step__cta .ef-arr{transition:transform .25s}
.ef-steps__line{position:absolute;left:84px;right:calc((100% - 96px) / 4 - 84px);top:83px;height:2px;background:var(--c10);pointer-events:none}
.ef-steps__line span{display:block;width:100%;height:100%;background:var(--pousse);transform-origin:left center}

/* pourquoi evergreen */
.ef-why{position:relative;overflow:clip;isolation:isolate;padding-block:160px;background:var(--night);color:var(--ecorce)}
.ef-why__bg{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:50% 30%}
.ef-why::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(10,34,25,.52) 0%,rgba(10,34,25,.74) 45%,rgba(10,34,25,.96) 100%)}
.ef-why__lead{margin-top:48px;font-family:var(--fs);font-style:italic;font-weight:300;font-size:clamp(26px,2.6cqi,38px);line-height:1.2;color:var(--c80)}
.ef-why__words{display:flex;flex-direction:column;margin-top:20px}
.ef-why__w{font-size:clamp(48px,8.4cqi,124px)}
.ef-why__w:first-child{color:var(--pousse)}
.ef-why__w:nth-child(2){padding-left:8.33%}
.ef-why__w:nth-child(3){padding-left:16.66%}
.ef-roles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;margin-top:112px}
.ef-role{padding-top:28px;border-top:1px solid var(--c20)}
.ef-role__not{display:block;font-size:17px;line-height:1.5;color:var(--c65)}
.ef-role__but{display:block;margin-top:10px;font-family:var(--fs);font-style:italic;font-weight:400;font-size:clamp(26px,2.3cqi,33px);line-height:1.18;color:var(--ecorce)}

/* zone */
.ef-zone__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:80px;align-items:center;margin-top:64px}
.ef-zone__lead{max-width:520px;font-size:20px;line-height:1.6;color:var(--encre2)}
.ef-zone__lead .ef-val{margin-left:8px}
.ef-towns{margin-top:40px;border-top:1px solid var(--line)}
.ef-towns li{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-block:18px;border-bottom:1px solid var(--line);font-family:var(--fd);font-stretch:80%;font-weight:800;font-size:clamp(24px,2.3cqi,32px);line-height:1.05;text-transform:uppercase;color:var(--sapin)}
.ef-towns small{flex:none;font-family:var(--ft);font-stretch:100%;font-size:12px;font-weight:600;letter-spacing:.12em;line-height:1.3;color:var(--encre2)}
.ef-map{position:relative;overflow:hidden;aspect-ratio:600/520;border-radius:6px;background:var(--ecorce2)}
.ef-map svg{display:block;width:100%;height:100%}
.ef-map .rg{fill:none;stroke:var(--sapin);stroke-opacity:.3;stroke-width:1.2}
.ef-map .rg-o{stroke-dasharray:3 6}
.ef-map .agglo{fill:var(--pousse);fill-opacity:.38}
.ef-map .pt{fill:var(--sapin)}
.ef-map .hq{fill:var(--pousse);stroke:var(--sapin);stroke-width:3}
.ef-map .route{fill:none;stroke:var(--sapin);stroke-width:2;stroke-dasharray:1 7;stroke-linecap:round}
.ef-map text{paint-order:stroke;stroke:var(--ecorce2);stroke-width:6px;stroke-linejoin:round}
.ef-map .lb{font-family:var(--ft);font-size:16px;font-weight:600;fill:var(--encre)}
.ef-map .lb-b{font-family:var(--fd);font-stretch:80%;font-size:24px;font-weight:800;fill:var(--sapin)}
.ef-map .lb-s{font-family:var(--ft);font-size:13px;font-weight:500;fill:var(--encre2)}
.ef-map .reg{font-family:var(--ft);font-size:13px;font-weight:600;letter-spacing:.42em;fill:var(--sapin)}
.ef-map .nord{fill:none;stroke:var(--sapin);stroke-width:1.5}

/* faq */
.ef-faq__grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:96px;align-items:start}
.ef-faq__head .ef-val{margin-top:20px}
.ef-faq__aside{margin-top:36px;font-size:18px;line-height:1.5;color:var(--encre2)}
.ef-faq__aside a{display:inline-flex;align-items:center;gap:10px;min-height:44px;margin-top:6px;border-bottom:1.5px solid var(--sapin);font-weight:700;white-space:nowrap;color:var(--sapin)}
.ef-faq__aside a .ef-ico{width:18px;height:18px}
.ef-q{border-bottom:1px solid var(--line)}
.ef-q:first-child{border-top:1px solid var(--line)}
.ef-q summary{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:26px;list-style:none;cursor:pointer;font-size:22px;font-weight:600;line-height:1.3;color:var(--encre)}
.ef-q summary::-webkit-details-marker{display:none}
.ef-q__i{position:relative;flex:none;width:44px;height:44px;border-radius:50%;box-shadow:inset 0 0 0 1.5px var(--sapin);color:var(--sapin);transition:background .2s,color .2s}
.ef-q__i::before,.ef-q__i::after{content:"";position:absolute;left:50%;top:50%;width:16px;height:2px;margin:-1px 0 0 -8px;border-radius:2px;background:currentColor;transition:transform .3s}
.ef-q__i::after{transform:rotate(90deg)}
.ef-q[open] .ef-q__i::after{transform:rotate(0deg)}
.ef-q summary:hover .ef-q__i,.ef-q[open] .ef-q__i{background:var(--sapin);color:var(--ecorce)}
.ef-q__a{max-width:640px;padding-bottom:30px;font-size:18px;line-height:1.65;color:var(--encre2)}
.ef-q__a a{font-weight:700;color:var(--sapin);text-decoration:underline;text-underline-offset:3px}

/* contact */
.ef-contact{overflow:clip}
.ef-contact__rings{position:absolute;width:1200px;height:1200px;left:-600px;bottom:-660px;color:var(--pousse);opacity:.1;pointer-events:none}
.ef-contact__grid{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:96px;align-items:start}
.ef-contact h2{margin-top:28px}
.ef-contact__lead{margin-top:32px;max-width:460px;font-size:19px;line-height:1.6;color:var(--c80)}
.ef-contact__lead .ef-val{margin-left:8px}
.ef-bigtel{display:inline-flex;flex-direction:column;gap:8px;margin-top:48px}
.ef-bigtel__l{font-size:13px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--c65)}
.ef-bigtel__n{padding-bottom:8px;font-family:var(--fd);font-stretch:75%;font-weight:900;font-size:clamp(48px,5.4cqi,80px);line-height:.95;white-space:nowrap;font-variant-numeric:tabular-nums;color:var(--pousse);background:linear-gradient(var(--pousse),var(--pousse)) left bottom/0 3px no-repeat;transition:background-size .4s}
.ef-bigtel:hover .ef-bigtel__n{background-size:100% 3px}
.ef-contact__meta{display:flex;flex-direction:column;gap:6px;margin-top:44px;padding-top:24px;border-top:1px solid var(--c20)}
.ef-contact__meta li{display:flex;align-items:center;gap:12px;min-height:44px;font-size:16px;color:var(--c80)}
.ef-contact__meta .ef-ico{color:var(--pousse)}
.ef-contact__meta a:hover{color:var(--pousse)}
.ef-form{position:relative;display:flex;flex-direction:column;gap:24px;padding:48px;border-radius:8px;background:var(--ecorce);color:var(--encre);box-shadow:0 40px 80px -40px rgba(0,0,0,.65)}
.ef-form__t{font-family:var(--fd);font-stretch:80%;font-weight:800;font-size:30px;line-height:1;text-transform:uppercase;color:var(--sapin)}
.ef-field{display:flex;flex-direction:column;gap:8px;min-width:0}
.ef-field label,.ef-goals legend{font-size:14px;font-weight:600;line-height:1.3;color:var(--encre)}
.ef-opt{font-weight:400;color:var(--encre2)}
.ef-input{width:100%;min-height:58px;padding:14px 18px;border:1.5px solid #CEC4B0;border-radius:10px;background:#FBF9F4;font-size:17px;line-height:1.4;color:var(--encre);transition:border-color .2s,box-shadow .2s}
.ef-input::placeholder{color:#69736C}
.ef-input:hover{border-color:#B3A88F}
.ef .ef-input:focus,.ef .ef-input:focus-visible{outline:none;border-color:var(--sapin);box-shadow:0 0 0 4px rgba(140,198,63,.55)}
textarea.ef-input{min-height:116px;resize:vertical}
.ef-goals{min-width:0;padding:0;margin:0;border:0}
.ef-goals legend{margin-bottom:10px}
.ef-chips{display:flex;flex-wrap:wrap;gap:10px}
.ef-chip{position:relative;display:inline-flex}
.ef-chip input{position:absolute;opacity:0;width:1px;height:1px;margin:0}
.ef-chip span{display:inline-flex;align-items:center;min-height:46px;padding:0 18px;border:1.5px solid #CEC4B0;border-radius:999px;background:#FBF9F4;font-size:15px;font-weight:500;line-height:1.2;cursor:pointer;transition:background .2s,border-color .2s,color .2s}
.ef-chip span:hover{border-color:var(--sapin)}
.ef-chip input:checked+span{background:var(--sapin);border-color:var(--sapin);color:var(--ecorce)}
.ef-chip input:focus-visible+span{box-shadow:0 0 0 4px rgba(140,198,63,.6)}
.ef-form__legal{font-size:13px;line-height:1.5;color:var(--encre2)}
.ef-form__legal .ef-val{margin-left:6px}
.ef-form__done{display:flex;flex-direction:column;align-items:flex-start;gap:16px;padding-block:32px}
.ef-form__done .ef-ri{width:64px;height:64px;color:var(--sapin);stroke-width:1.2}
.ef-form__done p{font-size:18px;color:var(--encre2)}

/* pied de page */
.ef-foot{flex:1 0 auto;display:flex;flex-direction:column;overflow:hidden;padding-top:96px;background:var(--deep);color:var(--ecorce)}
.ef-foot__grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,1fr);gap:48px}
.ef-foot__brand img{height:120px;width:auto}
.ef-foot__brand p{margin-top:24px;max-width:340px;font-size:15px;line-height:1.6;color:var(--c65)}
.ef-foot__h{margin-bottom:14px;font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--pousse)}
.ef-foot__list{display:flex;flex-direction:column}
.ef-foot__list a,.ef-foot__list span{display:inline-flex;align-items:center;gap:10px;min-height:44px;font-size:16px;color:var(--c80)}
.ef-foot__list .ef-ico{width:18px;height:18px;color:var(--pousse)}
.ef-foot__list a:hover{color:var(--pousse)}
.ef-foot__legal{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 32px;margin-top:64px;padding-block:22px;border-top:1px solid var(--c10);font-size:14px;color:var(--c65)}
.ef-foot__legal a{text-decoration:underline;text-underline-offset:3px}
.ef-foot__legal a:hover{color:var(--ecorce)}
.ef-foot__giant{margin-top:auto;padding-top:24px;font-family:var(--fd);font-stretch:75%;font-weight:900;font-size:13.2cqi;line-height:.86;letter-spacing:-.01em;text-transform:uppercase;text-align:center;white-space:nowrap;color:var(--sapin);padding-bottom:clamp(20px,2.6cqi,40px)}

/* barre d'appel mobile */
.ef-mbar{display:none}

/* responsive (requêtes de conteneur : la page s'adapte à la largeur du cadre) */
@container ef (max-width:1180px){
  .ef-wrap{padding-inline:48px}
  .ef-nav{gap:26px}
}
@container ef (max-width:1080px){
  .ef-nav{display:none}
  .ef-head__act{margin-left:auto}
  .ef-menu{display:block}
}
@container ef (max-width:960px){
  .ef-wrap{padding-inline:40px}
  .ef-sec{padding-block:112px}
  .ef-hero__grid{grid-template-columns:minmax(0,1fr);gap:72px}
  .ef-hero__frame{aspect-ratio:16/11;border-radius:160px 6px 6px 6px}
  .ef-seal{left:auto;right:24px;bottom:auto;top:-64px;width:136px;height:136px}
  .ef-band__list{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ef-band__list li,.ef-band__list li:first-child,.ef-band__list li:last-child{padding:22px 20px}
  .ef-band__list li:nth-child(odd){padding-left:0;border-left:0}
  .ef-band__list li:nth-child(n+3){border-top:1px solid rgba(10,34,25,.24)}
  .ef-story__grid{grid-template-columns:minmax(0,1fr);gap:72px}
  .ef-story__photo{max-width:520px}
  .ef-pillar{grid-template-columns:64px minmax(0,1fr);gap:20px 28px;padding-block:36px}
  .ef-pillar__d{grid-column:2}
  .ef-cards{grid-template-columns:minmax(0,1fr)}
  .ef-help{grid-template-columns:auto minmax(0,1fr)}
  .ef-help .ef-btn{grid-column:1 / -1;justify-self:start}
  .ef-steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:56px 32px}
  .ef-steps__line{display:none}
  .ef-roles{grid-template-columns:minmax(0,1fr);gap:32px;margin-top:80px}
  .ef-zone__grid{grid-template-columns:minmax(0,1fr);gap:56px}
  .ef-faq__grid{grid-template-columns:minmax(0,1fr);gap:48px}
  .ef-contact__grid{grid-template-columns:minmax(0,1fr);gap:64px}
  .ef-foot__grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .ef-foot__brand{grid-column:1 / -1}
}
@container ef (max-width:640px){
  .ef-wrap{padding-inline:20px}
  .ef-sec{padding-block:80px}
  .ef-h2,.ef-h2--md{font-size:11.5cqi}
  .ef-kicker{font-size:12px;letter-spacing:.14em}
  .ef-head__in{height:68px;gap:12px}
  .ef-logo img{height:46px}
  .ef-head__act{gap:10px}
  .ef-head__tel{width:46px;height:46px;border-radius:999px;box-shadow:inset 0 0 0 1.5px var(--c20)}
  .ef-head__tel span{display:none}
  .ef-head__cta{display:none}
  .ef-hero{padding-block:40px 64px}
  .ef-hero__rings{width:680px;height:680px;right:-330px;top:-140px}
  .ef-eyebrow{gap:10px;font-size:12px;letter-spacing:.12em}
  .ef-hero__title{margin-top:22px;font-size:15cqi}
  .ef-hero__lead{margin-top:24px;font-size:17px}
  .ef-ctas{flex-direction:column;margin-top:32px}
  .ef-ctas .ef-btn{width:100%}
  .ef-hero__grid{gap:56px}
  .ef-hero__frame{aspect-ratio:1/1.05;border-radius:120px 6px 6px 6px}
  .ef-seal{right:12px;top:-52px;width:112px;height:112px}
  .ef-band__list li,.ef-band__list li:first-child,.ef-band__list li:last-child{gap:10px;padding:18px 12px;font-size:16px}
  .ef-band__list li:nth-child(odd){padding-left:0}
  .ef-band .ef-ri{width:22px;height:22px}
  .ef-story__rings{width:760px;height:760px;left:-420px;top:360px}
  .ef-story__quote{margin-top:28px;font-size:10.6cqi}
  .ef-story__grid{margin-top:48px;gap:56px}
  .ef-ph{border-radius:6px 6px 6px 120px}
  .ef-chapters{gap:44px}
  .ef-chapters::before{left:27.5px;top:36px;bottom:36px}
  .ef-ch{grid-template-columns:56px minmax(0,1fr);gap:20px}
  .ef-ch__mark{width:56px;height:56px}
  .ef-ch__n{font-size:17px}
  .ef-ch__t{padding-top:10px;font-size:34px}
  .ef-ch__b p{margin-top:10px;font-size:17px}
  .ef-method__head{padding-bottom:32px}
  .ef-pillar{grid-template-columns:minmax(0,1fr);gap:16px;padding-block:32px}
  .ef-pillar__d{grid-column:auto;font-size:17px}
  .ef-pillar__n{width:48px;height:48px;font-size:18px}
  .ef-pillar__t{font-size:11.5cqi}
  .ef-exergue{padding-block:88px}
  .ef-exergue__rings{width:560px;height:560px;right:-280px;margin-top:-280px}
  .ef-exergue__a{font-size:11.5cqi}
  .ef-exergue__b{margin-top:24px;font-size:26px}
  .ef-progs__head{margin-bottom:40px}
  .ef-card{min-height:0;padding:32px 28px 28px}
  .ef-card__rings{width:420px;height:420px;right:-210px;top:-210px}
  .ef-card__n{font-size:52px}
  .ef-card__t{padding-top:56px;font-size:32px}
  .ef-card__d{font-size:17px}
  .ef-help{grid-template-columns:minmax(0,1fr);padding:28px 24px;gap:18px}
  .ef-help .ef-ri{width:44px;height:44px}
  .ef-help__q{font-size:26px}
  .ef-help__a{font-size:17px}
  .ef-help .ef-btn{width:100%;padding:0 18px;font-size:15px}
  .ef-process__head{margin-bottom:48px}
  .ef-steps{grid-template-columns:minmax(0,1fr);gap:28px}
  .ef-step{flex-direction:row;align-items:center;gap:20px}
  .ef-step__ring{width:96px;height:96px}
  .ef-step__n{font-size:22px}
  .ef-step__txt{margin-top:0}
  .ef-step__t{font-size:24px}
  .ef-step__cta{margin-top:4px}
  .ef-steps__line{display:block;left:47px;right:auto;top:48px;bottom:48px;width:2px;height:auto}
  .ef-steps__line span{transform-origin:center top}
  .ef-why{padding-block:96px}
  .ef-why__lead{margin-top:32px;font-size:24px}
  .ef-why__w{font-size:12.5cqi}
  .ef-why__w:nth-child(2),.ef-why__w:nth-child(3){padding-left:0}
  .ef-roles{margin-top:56px;gap:28px}
  .ef-role__but{font-size:26px}
  .ef-zone__grid{margin-top:40px;gap:44px}
  .ef-zone__lead{font-size:17px}
  .ef-towns li{font-size:24px;padding-block:16px}
  .ef-towns small{font-size:11px;letter-spacing:.08em}
  .ef-q summary{font-size:19px;padding-block:22px;gap:16px}
  .ef-q__a{font-size:17px}
  .ef-faq__aside{margin-top:24px;font-size:17px}
  .ef-contact__lead{font-size:17px}
  .ef-bigtel{margin-top:36px}
  .ef-bigtel__n{font-size:15.5cqi}
  .ef-form{padding:28px 22px;gap:22px}
  .ef-form__t{font-size:26px}
  .ef-foot{padding-top:64px}
  .ef-foot__grid{grid-template-columns:minmax(0,1fr);gap:36px}
  .ef-foot__brand img{height:96px}
  .ef-foot__legal{margin-top:48px}
  .ef-map .lb{font-size:24px}
  .ef-map .lb-b{font-size:32px}
  .ef-map .lb-s{font-size:20px}
  .ef-map .reg{font-size:18px}
  .ef-mbar{position:sticky;bottom:0;z-index:60;display:flex;gap:10px;padding:12px 16px;background:rgba(10,34,25,.95);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid var(--c10)}
  .ef-mbar__tel{display:inline-flex;align-items:center;justify-content:center;gap:8px;flex:none;min-height:54px;padding:0 20px;border-radius:999px;box-shadow:inset 0 0 0 1.5px rgba(243,239,230,.38);font-size:16px;font-weight:700;color:var(--ecorce)}
  .ef-mbar__tel .ef-ico{color:var(--pousse)}
  .ef-mbar .ef-btn{flex:1;min-height:54px;padding:0 20px;font-size:16px}
}

/* mouvement (sobre, désactivé si « réduire les animations ») */
@keyframes ef-draw{to{stroke-dashoffset:0}}
@keyframes ef-spin{to{transform:rotate(360deg)}}
@keyframes ef-rise{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}
@keyframes ef-growx{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes ef-growy{from{transform:scaleY(0)}to{transform:scaleY(1)}}
@media (prefers-reduced-motion:no-preference){
  .ef-rings--draw path{stroke-dasharray:1;stroke-dashoffset:1;animation:ef-draw 2.2s cubic-bezier(.6,.05,.2,1) forwards}
  .ef-rings--draw path:nth-child(3n+2){animation-delay:.12s}
  .ef-rings--draw path:nth-child(3n){animation-delay:.24s}
  .ef-seal__spin{animation:ef-spin 60s linear infinite}
  @supports (animation-timeline:view()){
    .ef-rv{animation:ef-rise linear both;animation-timeline:view();animation-range:entry 0% entry 90%}
    .ef-steps__line span{animation:ef-growx linear both;animation-timeline:--efsteps;animation-range:entry 40% entry 100%}
    @container ef (max-width:640px){
      .ef-steps__line span{animation-name:ef-growy}
    }
  }
}

/* ===== Ajouts Lion Digital (11/10/2026) : « Pour qui », objectifs, photos ===== */
.ef-fit__grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:112px;align-items:center}
.ef-fit__media{overflow:hidden;aspect-ratio:4/5;border-radius:6px 240px 6px 6px;background:var(--night2)}
.ef-fit__media img{width:100%;height:100%;object-fit:cover;object-position:40% 45%}
.ef-fit__copy .ef-h2--md{margin-top:28px}
.ef-checks{display:grid;gap:16px;margin-top:36px}
.ef-checks li{display:grid;grid-template-columns:28px minmax(0,1fr);gap:14px;align-items:start;font-size:19px;font-weight:500;line-height:1.45;color:var(--ecorce)}
.ef-checks .ef-ri{width:24px;height:24px;margin-top:1px;color:var(--pousse)}
.ef-goals__label{margin-top:48px;font-family:var(--fd);font-stretch:80%;font-weight:800;font-size:28px;line-height:1;text-transform:uppercase;color:var(--pousse)}
.ef-goalbtns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:20px}
.ef-goalbtn{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:60px;padding:0 8px 0 24px;border-radius:999px;box-shadow:inset 0 0 0 1.5px rgba(243,239,230,.38);font-size:16px;font-weight:700;color:var(--ecorce);text-decoration:none;transition:background .25s,box-shadow .25s,transform .16s}
.ef-goalbtn__i{display:grid;place-items:center;width:44px;height:44px;flex:none;border-radius:50%;background:var(--pousse);color:var(--night);transition:transform .25s}
.ef-goalbtn__i .ef-ico{width:18px;height:18px}
.ef-goalbtn:active{transform:scale(.97)}
@media (hover:hover) and (pointer:fine){
  .ef-goalbtn:hover{background:rgba(243,239,230,.06);box-shadow:inset 0 0 0 1.5px var(--ecorce);color:var(--ecorce)}
  .ef-goalbtn:hover .ef-goalbtn__i{transform:translateX(3px)}
}
/* Portrait réel de Gabriel dans « Mon histoire » */
.ef-ph--photo{padding:0;justify-content:flex-start;background:radial-gradient(80% 70% at 50% 30%,#0B6343 0%,var(--sapin) 72%)}
.ef-ph--photo svg{opacity:.3}
.ef-ph--photo img{position:absolute;left:50%;top:8%;width:84%;max-width:none;height:auto;transform:translateX(-50%);filter:drop-shadow(0 24px 24px rgba(6,23,16,.3))}
/* Photo dans la carte Nutrition */
.ef-card--photo{isolation:isolate}
.ef-card__bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:40% 30%;transition:transform .8s}
.ef-card__shade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(10,34,25,.97) 30%,rgba(10,34,25,.62) 64%,rgba(10,34,25,.25))}
@media (hover:hover) and (pointer:fine){ .ef-card--photo:hover .ef-card__bg{transform:scale(1.04)} }
/* Formulaire */
.ef-hp{position:absolute;left:-9999px}
.ef-form__legal a{color:var(--sapin);text-decoration:underline;text-underline-offset:3px}
.ef-chip span.is-set{animation:ef-set 900ms cubic-bezier(.23,1,.32,1)}
@keyframes ef-set{from{box-shadow:0 0 0 0 rgba(140,198,63,.8)}to{box-shadow:0 0 0 14px rgba(140,198,63,0)}}
.ef{scroll-padding-top:96px}
html{scroll-padding-top:96px;scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){ html{scroll-behavior:auto} .ef-chip span.is-set{animation:none} }
@container ef (max-width:960px){
  .ef-fit__grid{grid-template-columns:minmax(0,1fr);gap:56px}
  .ef-fit__media{aspect-ratio:16/11;max-width:640px;border-radius:6px 160px 6px 6px}
}
@container ef (max-width:640px){
  .ef-fit__media{aspect-ratio:4/3;border-radius:6px 96px 6px 6px}
  .ef-checks li{font-size:17px}
  .ef-goals__label{margin-top:40px;font-size:24px}
  .ef-goalbtns{grid-template-columns:minmax(0,1fr)}
  .ef-goalbtn{min-height:58px}
}
