/* La Fée Clochette — accueil « Arc-en-ciel doux » (23 septembre 2026).
   Habillage du template Framer d'origine : couleurs, formes et décor uniquement.
   Chargé après enhancements.css, pages.css et arc-en-ciel.css, sur l'accueil seulement.
   Le décor passe par des pseudo-éléments (fonds SVG), donc hors de l'arbre d'accessibilité. */

:root, body {
  --token-3ec9de4d-64e8-44e4-b12e-0f27d31508c2: #FFFFFF !important;
  --token-53fcfb0f-4009-420e-b17a-11de66f67e03: #33382E !important;
  --token-f6cd56a1-9799-47ca-b9a6-fd5edf4ef50e: #33382E !important;
  --token-164ebb64-97d1-4305-928d-d5c727094187: #5F6157 !important;
  --token-9370f109-8104-4c7c-80a6-eb3c216bcc67: #5C7234 !important;
  --lfc-ink: #33382E;
  --s: url(../svg/etoile-sauge.svg);
  --b: url(../svg/etoile-bleu.svg);
  --y: url(../svg/etoile-beurre.svg);
  --p: url(../svg/etoile-peche.svg);
  --si: url(../svg/etincelle-sauge.svg);
  --bi: url(../svg/etincelle-bleu.svg);
  --yi: url(../svg/etincelle-beurre.svg);
  --pi: url(../svg/etincelle-peche.svg);
  --grain: url(../images/grain-papier.png);
  --lfc-ombre-carte: 0 22px 40px -28px rgba(92, 72, 48, .42), 0 2px 8px -3px rgba(92, 72, 48, .10);
}
html, body { background: #FFFFFF !important; }
body { color: var(--lfc-texte); }
.framer-mkkbob, .framer-1vwt240, .framer-z3334f, .framer-mg1pnh, .framer-1nnyp7c,
.framer-537hc2, .framer-jv2b8j, #main section.framer-LQRuW { background-color: #FFFFFF !important; }
h1.framer-text, h2.framer-text, h3.framer-text { --framer-text-color: #33382E !important; color: #33382E; }

/* ---------- Boutons et liens ---------- */
/* Content buttons only: the header and the menu belong to the menu work (vendor/lfc/menu/). */
section a.framer-womO9, .lfc-home-intro .lfc-button {
  --token-953b778d-cfb0-4377-8cd6-d0a469fbcaa6: #EBA9CF !important;
  background-color: #EBA9CF !important;
  background-image: none !important;
  color: #33382E !important;
  box-shadow: inset 0 2px 3px rgba(255, 255, 255, .45), inset 0 -3px 0 rgba(190, 100, 150, .16),
    0 12px 22px -12px rgba(200, 110, 160, .75) !important;
}
section a.framer-womO9:hover, .lfc-home-intro .lfc-button:hover { background-color: #E297C2 !important; }
section a.framer-womO9 .framer-text { --framer-text-color: #33382E !important; }
section a.framer-womO9 [data-framer-name="Line"] { background-color: #33382E !important; }
.lfc-home-intro .lfc-button { min-height: 62px; padding: 13px 26px; gap: 26px; font-size: 17px; }
.lfc-text-link, .lfc-home-extra .lfc-text-link {
  color: #33382E !important;
  text-decoration: underline;
  text-decoration-color: #A9C9E1 !important;
  text-decoration-thickness: 2px;
  text-underline-offset: 7px;
}
.lfc-text-link:hover { text-decoration-color: #33382E !important; }
.lfc-home-section-link .lfc-text-link { font-size: 17px; font-weight: 500; }

/* ---------- Surtitres ---------- */
.lfc-home-overline, .lfc-home-extra .lfc-eyebrow, .lfc-editorial .lfc-eyebrow { color: #5C7234 !important; }
.lfc-home-overline { font-size: 13px; letter-spacing: .14em; margin-bottom: 10px; }


/* ---------- Hero : galets, fée, arc-en-ciel, étoiles ---------- */
.framer-mkkbob { position: relative !important; overflow: visible !important; isolation: isolate; z-index: 1; }
.framer-mkkbob::before, .framer-mkkbob::after {
  content: ""; position: absolute; top: 0; height: 700px; pointer-events: none; z-index: -1; background-repeat: no-repeat;
}
.framer-mkkbob h1 { color: #33382E !important; }
.lfc-home-intro { color: #5F6157 !important; }
.framer-19aiaap {
  z-index: 2; border-radius: 40px !important;
  box-shadow: 0 0 34px 22px rgba(255, 255, 255, .92), 0 30px 60px -30px rgba(92, 72, 48, .40) !important;
}
.lfc-home-caption { color: #6B6E63; }
.lfc-home-locations a { color: #33382E; border-bottom: 2px solid #C9D5AE; font-size: 15px; }
@media (min-width: 810px) {
  .lfc-home-locations { gap: 14px !important; padding: 40px 24px 10px !important; }
  .lfc-home-locations a {
    display: inline-flex; align-items: center; gap: 10px; padding: 11px 18px 11px 14px;
    background: #FFFFFF; border: 1px solid #E6E1D6; border-radius: 999px; box-shadow: 0 10px 20px -16px rgba(92, 72, 48, .5);
  }
  .lfc-home-locations a::before { content: ""; flex: 0 0 22px; height: 22px; background: var(--s) center / contain no-repeat; }
  .lfc-home-locations a:nth-child(2)::before { background-image: var(--b); }
  .lfc-home-locations a:nth-child(3)::before { background-image: var(--y); }
  .lfc-home-locations a:nth-child(4)::before { background-image: var(--p); }
}

/* ---------- Étoiles après les titres ---------- */
.framer-1pbbh9u h2::after, .framer-1yt2gy5 h2::after, .framer-ymxe9q h2::after,
.framer-191rjcx h2::after, .framer-1kkee86 h2::after, .lfc-home-journal .lfc-section-heading h2::after,
.lfc-editorial .lfc-rich h3::after {
  content: ""; display: inline-block; width: .64em; height: .64em; margin-left: .3em; vertical-align: .08em;
  background: var(--y) center / contain no-repeat;
}
.framer-1pbbh9u h2::after, .framer-1yt2gy5 h2::after, .framer-ymxe9q h2::after, .lfc-editorial .lfc-rich h3::after {
  width: 1.15em; height: .9em; margin-left: .22em; vertical-align: -.02em;
  background-image: url(../svg/titre-etoile-traits-beurre.svg);
}
.framer-ymxe9q h2::after { background-image: url(../svg/titre-etoile-traits-bleu.svg); }

/* ---------- Tout commence par un lien : cartes organiques ---------- */
.framer-1vlmshw > div { --c: #EDF1E3; --a: #B7C98F; --t: url(../svg/onglet-sauge.svg); }
.framer-1vlmshw > .framer-b79n20-container { --c: #E7F1F9; --a: #A9C9E1; --t: url(../svg/onglet-bleu.svg); }
.framer-1vlmshw > .framer-ahdnk3-container { --c: #FDF6E5; --a: #F3D48C; --t: url(../svg/onglet-beurre.svg); }
.framer-1vlmshw > .framer-1mhuiwi-container { --c: #F9E6F0; --a: #E6A6CB; --t: url(../svg/onglet-peche.svg); }
.framer-1vlmshw > div::before {
  content: ""; position: absolute; z-index: 3; left: 12px; top: -14px; width: 54px; height: 54px;
  background: var(--t) center / contain no-repeat; pointer-events: none;
}
.framer-1vlmshw .framer-K2dlN {
  background-color: var(--c) !important; background-image: var(--grain) !important; background-size: 256px !important;
  border-radius: 34px 46px 38px 42px / 40px 36px 46px 36px !important;
  box-shadow: var(--lfc-ombre-carte) !important;
}
.framer-1vlmshw .framer-K2dlN::before {
  content: ""; position: absolute; left: 12px; right: 12px; bottom: 12px; height: 46%;
  background: color-mix(in srgb, var(--c) 72%, var(--a)); opacity: .55;
  border-radius: 48% 52% 30px 34px / 34% 40% 30px 30px;
}
.framer-1vlmshw .framer-1pm1d65-container { display: none !important; }

/* ---------- Illustrations en pâte à modeler : entières, détourées, sans masque ni filtre ---------- */
.lfc-has-art { -webkit-mask: none !important; mask: none !important; mix-blend-mode: normal !important; overflow: visible !important; }
.lfc-has-art > :not(.lfc-clay-art) { visibility: hidden !important; }
.lfc-clay-art { position: absolute; z-index: 1; inset: 0; width: 100%; height: 100%; object-fit: contain !important; object-position: 50% 100%; pointer-events: none; }
.framer-537hc2 .lfc-clay-art { object-position: 50% 50%; }
.lfc-pathways .lfc-image-frame, .lfc-pathways .lfc-image-frame img { mix-blend-mode: normal !important; background: transparent !important; }

/* ---------- Nou la Fée ---------- */
.framer-z3334f { position: relative; isolation: isolate; overflow: visible !important; z-index: 3 !important; }
.framer-gootlz { position: relative; }
.framer-41z8dm { border-radius: 40px 56px 40px 44px !important; box-shadow: 0 30px 50px -30px rgba(92, 72, 48, .35); }
.framer-41z8dm > .lfc-home-photo { border-radius: inherit !important; }
.lfc-story-overline { text-align: left !important; margin: 0 0 12px !important; }
.framer-z3334f a.framer-womO9 { padding: 0 38px 0 40px !important; height: 70px !important; gap: 30px !important; }
.framer-z3334f .framer-1b6e9ey-container { width: auto !important; height: auto !important; }
.framer-z3334f a.framer-womO9 .framer-1urt7q-container { display: none !important; }
.framer-z3334f a.framer-womO9::after {
  content: ""; width: 22px; height: 22px; order: 3; background: url(../svg/fleche.svg) center / contain no-repeat;
}
.framer-z3334f a.framer-womO9 p.framer-text { --framer-font-size: 19px !important; font-size: 19px !important; font-weight: 600 !important; }
.lfc-medaillon-photo {
  position: absolute; z-index: 4; margin: 0; border-radius: 50%; background: #FFFFFF; border: 7px solid #F6DFA2;
  box-shadow: 0 20px 40px -24px rgba(92, 72, 48, .45);
  display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 4px; padding: 0 26px;
  font: 400 15px/1.3 'LFC Inclusive', sans-serif; color: #5F6157; text-align: center;
}
.lfc-medaillon-photo::before {
  content: ""; width: 110px; height: 34px; margin-bottom: 2px;
  background: var(--y) 0 14px / 20px no-repeat, var(--p) 44px 0 / 22px no-repeat, var(--y) 88px 12px / 16px no-repeat;
}
.lfc-medaillon-photo strong { font: 500 22px/1.1 'LFC Baloo', sans-serif; color: #33382E; }

/* ---------- Nos micro-crèches : carrousel ---------- */
.framer-mg1pnh { --c: #EDF1E3; --a: #B7C98F; }
.framer-mg1pnh .framer-slideshow button {
  background: #FFFFFF !important; box-shadow: 0 10px 24px -12px rgba(92, 72, 48, .45) !important; border-radius: 50% !important;
}

.framer-mg1pnh li { --c: #EDF1E3; --t: url(../svg/onglet-sauge.svg); }
.framer-mg1pnh li:nth-child(4n+1) { --c: #FDF6E5; --t: url(../svg/onglet-beurre.svg); }
.framer-mg1pnh li:nth-child(4n+2) { --c: #F9E6F0; --t: url(../svg/onglet-peche.svg); }
.framer-mg1pnh li:nth-child(4n+4) { --c: #E7F1F9; --t: url(../svg/onglet-bleu.svg); }
.framer-mg1pnh li > div > div { position: relative; }
.framer-mg1pnh li > div > div::before {
  content: ""; position: absolute; z-index: 3; left: 20px; top: -10px; width: 64px; height: 64px;
  background: var(--t) center / contain no-repeat; pointer-events: none;
}
.framer-mg1pnh a.framer-5i5ft {
  background-color: var(--c) !important; background-image: var(--grain) !important; background-size: 256px !important;
  border-radius: 38px 50px 42px 46px / 44px 40px 50px 40px !important;
  box-shadow: var(--lfc-ombre-carte) !important;
}
.framer-mg1pnh .framer-1r2i0xt { padding-top: 26px; }
.framer-mg1pnh .framer-15lu9nx { margin-left: 0; box-shadow: 0 6px 14px -10px rgba(92, 72, 48, .4); }
.framer-mg1pnh p.framer-text { --framer-text-color: #5F6157 !important; }
.framer-mg1pnh .framer-15lu9nx p.framer-text { --framer-text-color: #33382E !important; font-size: 18px !important; }
.framer-9kosce { background: #FBF8F2 !important; }
.framer-9kosce [data-framer-name="Time"], .framer-9kosce [data-framer-name="Content"] {
  background: #FFFFFF !important; box-shadow: 0 16px 34px -26px rgba(92, 72, 48, .45);
}
.framer-9kosce [data-framer-name="Content"] { border-radius: 30px 38px 32px 36px !important; }
.framer-jt1m8h { display: none !important; }
.framer-9kosce p.framer-text { --framer-text-color: #5F6157 !important; }
.framer-9kosce [data-framer-name="Time"] p.framer-text { --framer-text-color: #33382E !important; }
.lfc-home-pathways .lfc-section-heading p { font-size: 18px; color: #5F6157; }
.lfc-home-pathways .lfc-eyebrow { font-size: 13px !important; }
.lfc-home-pathways .lfc-eyebrow::before {
  content: ""; display: inline-block; width: 50px; height: 44px; margin: -18px 10px -12px -62px; vertical-align: middle;
  background: var(--y) 0 12px / 32px no-repeat, url(../svg/traits.svg) 26px -2px / 24px no-repeat;
}
.lfc-pathways > a {
  --c: #E7F1F9; --a: #A9C9E1; --t: url(../svg/onglet-bleu.svg);
  position: relative; overflow: visible;
  background-color: var(--c) !important; background-image: var(--grain); background-size: 256px;
  border-radius: 36px 46px 40px 44px / 42px 38px 48px 38px !important;
  box-shadow: var(--lfc-ombre-carte);
}
.lfc-pathways > a:nth-child(2) { --c: #FDF6E5; --a: #F3D48C; --t: url(../svg/onglet-beurre.svg); }
.lfc-pathways > a:nth-child(3) { --c: #F9E6F0; --a: #E6A6CB; --t: url(../svg/onglet-peche.svg); }
.lfc-pathways > a::before {
  content: ""; position: absolute; z-index: 3; left: 30px; top: -12px; width: 60px; height: 60px;
  background: var(--t) center / contain no-repeat; pointer-events: none;
}
.lfc-pathways .lfc-image-frame img { width: 100% !important; height: 100% !important; object-fit: contain !important; }
.lfc-pathways h3 { color: #33382E; }
.lfc-pathways p { color: #5F6157; }

/* ---------- Chaque personne compte ---------- */
.framer-7n1ozn > div { --c: #EDF1E3; --t: url(../svg/onglet-sauge.svg); position: relative; overflow: visible !important; }
.framer-7n1ozn > .framer-1tjog8v { --c: #F9E6F0; --t: url(../svg/onglet-peche.svg); }
.framer-7n1ozn > .framer-1tpjked { --c: #E7F1F9; --t: url(../svg/onglet-bleu.svg); }
.framer-1qvhph0, .framer-1tjog8v, .framer-1tpjked {
  background-color: var(--c) !important; background-image: var(--grain) !important; background-size: 256px !important;
  border-radius: 36px 48px 40px 44px / 44px 38px 48px 38px !important;
  box-shadow: var(--lfc-ombre-carte);
}
.framer-7n1ozn > div::before {
  content: ""; position: absolute; z-index: 3; left: 22px; top: -14px; width: 58px; height: 58px;
  background: var(--t) center / contain no-repeat; pointer-events: none;
}
.framer-1nnyp7c .framer-oj5a6y, .framer-1nnyp7c .framer-6v2ebq, .framer-1nnyp7c .framer-1kiiwo2 { display: none !important; }
.framer-1nnyp7c .lfc-home-photo { margin: 28px 28px 0; width: calc(100% - 56px) !important; border-radius: 26px !important; }
.framer-1nnyp7c .framer-a0o0de, .framer-1nnyp7c .framer-v0jtob, .framer-1nnyp7c .framer-ip34v5 { align-items: flex-start !important; }
.framer-1nnyp7c [data-framer-name="Teacher Name & Designation"] > div { position: relative !important; left: auto !important; }
.framer-7n1ozn h2.framer-text { --framer-font-size: 28px !important; font-size: 28px !important; text-align: left; }
.framer-1nnyp7c p.framer-text { --framer-text-color: #5F6157 !important; }
.framer-1nnyp7c [data-framer-name="Teacher Name & Designation"] p.framer-text { --framer-text-color: #33382E !important; --framer-font-size: 17px !important; font-size: 17px !important; font-weight: 500 !important; }
.framer-7n1ozn [data-framer-name="Teacher Name & Designation"] { align-content: flex-start !important; justify-content: flex-start !important; }
.framer-7n1ozn .framer-text { --framer-text-alignment: left !important; text-align: left !important; }
.framer-7n1ozn [data-framer-name="Our team Frame"] > div:last-child p.framer-text { --framer-font-size: 17px !important; font-size: 17px !important; line-height: 1.6 !important; }
.framer-15b6yz6 {
  background: #F8E3A3; border-radius: 999px; padding: 7px 20px 7px 48px; position: relative; margin: 6px 0 4px;
  box-shadow: 0 6px 12px -8px rgba(160, 120, 40, .5);
}
.framer-15b6yz6 p.framer-text { font-weight: 600 !important; --framer-font-size: 16px !important; font-size: 16px !important; }
.framer-15b6yz6::before {
  content: ""; position: absolute; left: 16px; top: 50%; width: 20px; height: 20px; transform: translateY(-52%);
  background: url(../svg/icone-tasse.svg) center / contain no-repeat; left: 18px; width: 22px; height: 22px;
}

/* ---------- Une place pour chacun ---------- */
.framer-537hc2 .framer-l5pule { position: relative; }
.framer-1j6c08w-container { position: relative; isolation: isolate; }

.framer-63ruy4 { display: flex !important; flex-wrap: nowrap !important; gap: 26px !important; }
.framer-63ruy4 > div { position: relative !important; left: auto !important; top: auto !important; width: auto !important; padding-top: 50px; }
.framer-63ruy4 > div::before {
  content: ""; position: absolute; left: 0; top: 0; width: 34px; height: 34px; background: var(--s) center / contain no-repeat;
}
.framer-63ruy4 > div:nth-child(2)::before { background-image: var(--y); }
.framer-63ruy4 > div:nth-child(3)::before { background-image: var(--p); }
.framer-63ruy4 > div { --c: #EDF1E3; background: var(--c); border-radius: 26px 32px 28px 30px / 30px 26px 32px 28px; }
.framer-63ruy4 > div:nth-child(2) { --c: #FDF6E5; }
.framer-63ruy4 > div:nth-child(3) { --c: #F9E6F0; }
.framer-63ruy4 .framer-1i2m29g-container p {
  font-family: 'LFC Baloo', sans-serif !important; font-weight: 600 !important; letter-spacing: -.02em; line-height: 1 !important; color: #33382E !important;
}
.framer-63ruy4 .framer-10iy8ug p.framer-text { --framer-text-color: #4A4C43 !important; font-weight: 500 !important; }
.framer-537hc2 p.framer-text { --framer-text-color: #5F6157 !important; }
.framer-537hc2 .framer-1i2m29g-container p { color: #33382E !important; }
.lfc-home-journal .lfc-card-grid { gap: 30px; }
.lfc-home-journal .lfc-card {
  --t: url(../svg/onglet-sauge.svg);
  position: relative; overflow: visible; border: 0; background: #FFFFFF;
  background-image: var(--grain); background-size: 256px;
  border-radius: 34px 44px 38px 42px / 40px 36px 44px 36px;
  box-shadow: 0 24px 44px -26px rgba(92, 72, 48, .38), 0 2px 8px -3px rgba(92, 72, 48, .08);
}
.lfc-home-journal .lfc-card:nth-child(2) { --t: url(../svg/onglet-bleu.svg); }
.lfc-home-journal .lfc-card:nth-child(3) { --t: url(../svg/onglet-beurre.svg); }
.lfc-home-journal .lfc-card::before {
  content: ""; position: absolute; z-index: 3; left: 6px; top: -18px; width: 64px; height: 64px;
  background: var(--t) center / contain no-repeat; pointer-events: none;
}
.lfc-home-journal .lfc-card .lfc-picture { overflow: hidden; border-radius: 34px 44px 30px 30px / 40px 36px 30px 30px; }
.lfc-home-journal .lfc-card .lfc-eyebrow { font-size: 13px !important; color: #5C7234 !important; }
.lfc-home-journal .lfc-card h3 { color: #33382E; }
.lfc-home-journal .lfc-card p { color: #5F6157; }
.lfc-home-journal .lfc-card-bottom { font-size: 16px; color: #5F6157; }
.lfc-home-journal .lfc-card-bottom > span:last-child {
  width: 60px; height: 60px; background: #EBA9CF !important; color: transparent; overflow: hidden;
  box-shadow: 0 10px 18px -10px rgba(200, 110, 160, .8);
  background-image: url(../svg/fleche.svg) !important; background-position: center !important; background-size: 24px !important; background-repeat: no-repeat !important;
}
.lfc-mot-fee { color: #A2477F; }

/* ---------- FAQ ---------- */
.framer-jv2b8j [data-framer-name="Question"] {
  background: #FBF8F2 !important; border-radius: 22px !important; position: relative; overflow: hidden;
  box-shadow: inset 7px 0 0 var(--filet, #B7C98F);
}
.framer-efcLC > div:nth-child(4n+3) { --filet: #A9C9E1; }
.framer-efcLC > div:nth-child(4n+4) { --filet: #F3D48C; }
.framer-efcLC > div:nth-child(4n+5) { --filet: #E6A6CB; }
.framer-81cp7-container { width: min(1100px, calc(100vw - 60px)) !important; max-width: none !important; }
.framer-jv2b8j [data-framer-name="Question"] p.framer-text { padding-left: 12px; }
.framer-jv2b8j [data-framer-name="Icon"] {
  width: 50px !important; height: 50px !important; margin: -13px -6px -13px 0; border-radius: 50% !important;
  background: #EBA9CF url(../svg/plus.svg) center / 24px no-repeat !important; transform: none !important;
  box-shadow: 0 8px 16px -10px rgba(200, 110, 160, .8);
}
.framer-jv2b8j [data-framer-name="Icon"] > * { display: none !important; }
.framer-jv2b8j .framer-v-syym6d [data-framer-name="Icon"] { background-image: url(../svg/moins.svg) !important; }
.framer-jv2b8j [data-framer-name="Answer"] p.framer-text { --framer-text-color: #5F6157 !important; padding-left: 36px; }

/* ---------- Et si on se rencontrait ? ---------- */
#main section.framer-LQRuW .framer-1y0ndzf {
  background: transparent !important; overflow: visible !important; isolation: isolate;
}
#main section.framer-LQRuW .framer-1y0ndzf::before {
  content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none;
  background: url(../svg/bandeau-contact.svg) center / 100% 100% no-repeat;
  filter: drop-shadow(0 24px 34px rgba(92, 72, 48, .12));
}
#main section.framer-LQRuW .framer-eljb13-container, #main section.framer-LQRuW .framer-dqgo6c { display: none !important; }
#main section.framer-LQRuW .framer-6tpv0e { background: transparent !important; }
#main section.framer-LQRuW a.framer-womO9 { height: 70px !important; padding: 0 38px 0 30px !important; }
#main section.framer-LQRuW .framer-duzzao-container { width: auto !important; height: auto !important; }
#main section.framer-LQRuW a.framer-womO9 p.framer-text { --framer-font-size: 19px !important; font-size: 19px !important; font-weight: 600 !important; }
.lfc-editorial > div > .lfc-picture img { mix-blend-mode: multiply; }
.lfc-editorial .lfc-image-frame { background: transparent !important; }
.lfc-editorial .lfc-rich h3::after { width: 1.5em !important; height: 1.15em !important; vertical-align: -.2em !important; }
.lfc-editorial .lfc-text-link { font-size: 17px; }
.lfc-editorial h2, .lfc-editorial h3 { color: #33382E; }
.lfc-editorial .lfc-rich { color: #5F6157; }
.lfc-editorial .lfc-rich ul { list-style: none; padding-left: 0; }
.lfc-editorial .lfc-rich li { position: relative; padding-left: 48px; }
.lfc-editorial .lfc-rich li::before {
  content: ""; position: absolute; left: 2px; top: .45em; width: 24px; height: 24px; background: var(--s) center / contain no-repeat;
}
.lfc-editorial .lfc-rich li:nth-child(2)::before { background-image: var(--b); }
.lfc-editorial .lfc-rich li:nth-child(3)::before { background-image: var(--p); }
.lfc-editorial .lfc-text-link { font-weight: 600; }
.lfc-site-footer {
  max-width: none; padding-left: max(40px, calc((100% - 1200px) / 2)); padding-right: max(40px, calc((100% - 1200px) / 2));
  background: #FBF8F2; position: relative; color: #5F6157;
}
.lfc-site-footer::before {
  content: ""; position: absolute; left: max(40px, calc((100% - 1320px) / 2)); right: max(170px, calc((100% - 1320px) / 2 + 115px)); top: -3px; height: 6px;
  background: url(../svg/ligne-quatre-couleurs.svg) center / 100% 100% no-repeat;
}
.lfc-site-footer::after {
  content: ""; position: absolute; right: max(40px, calc((100% - 1320px) / 2 - 50px)); top: -30px; width: 100px; height: 60px; pointer-events: none;
  background: var(--s) 8px 22px / 26px no-repeat, var(--y) 36px 0 / 18px no-repeat, var(--p) 62px 14px / 24px no-repeat;
}
.lfc-site-footer h2 { color: #33382E; }
.lfc-site-footer a { color: #5F6157; }

/* ---------- Nos micro-crèches : cartes de lieux (maquette v3 validée par Tom) ---------- */
.framer-191rjcx h2::after { content: none !important; }
.framer-mg1pnh a.framer-5i5ft[data-place] {
  --c: #E4EDD6; --arc: #EEF4E6;
  background: var(--c) !important; background-image: none !important;
  border-radius: 28px !important; overflow: hidden !important; box-shadow: 0 24px 40px -28px rgba(120, 90, 50, .45), 0 3px 10px -4px rgba(120, 90, 50, .12) !important;
}
.framer-mg1pnh a.framer-5i5ft[data-place] > :not(.lfc-place) { visibility: hidden !important; }
.framer-mg1pnh li > div > div::before { content: none !important; }
.framer-mg1pnh a.framer-5i5ft[data-place="saint-gilles"] { --c: #DCEBF7; --arc: #E8F2FA; }
.framer-mg1pnh a.framer-5i5ft[data-place="etang-sale"] { --c: #F6DAB8; --arc: rgba(255, 246, 232, .5); background: #F6DAB8 url(../images/bois-clair.webp) 0 0 / 280px 280px !important; }
.framer-mg1pnh a.framer-5i5ft[data-place="saint-pierre"] { --c: #F9E6F0; --arc: #FCF1F6; }
.lfc-place { position: absolute; inset: 0; display: flex; flex-direction: column; padding: 16px 16px 20px; font-family: 'LFC Inclusive', sans-serif; color: #5F6157; }
.lfc-place__arch {
  position: relative; flex: 0 0 auto; height: 64%; border-radius: 170px 170px 26px 26px / 150px 150px 26px 26px;
  background: var(--arc); display: flex; align-items: flex-end; justify-content: center; overflow: visible;
}
.lfc-place__arch img { width: 100%; height: 88%; object-fit: contain; object-position: 50% 100%; margin-bottom: 4%; }
.lfc-place__pill {
  position: absolute; left: 22px; top: 34px; display: inline-flex; align-items: center; gap: 7px; padding: 7px 14px 7px 11px;
  background: #FFFFFF; border-radius: 999px; box-shadow: 0 6px 14px -10px rgba(92, 72, 48, .5);
  font: 500 16px/1.2 'LFC Inclusive', sans-serif; color: #33382E; white-space: nowrap;
}
.lfc-place__pill::before { content: ""; width: 16px; height: 16px; background: url(../svg/icone-repere.svg) center / contain no-repeat; }
.lfc-place__body { display: flex; flex-direction: column; gap: 10px; padding: 18px 10px 0 12px; }
.lfc-place__title { display: flex; align-items: center; flex-wrap: wrap; gap: 6px 12px; font: 500 38px/1.06 'LFC Baloo', sans-serif; letter-spacing: -.02em; color: #33382E; }
.lfc-place__tag { padding: 5px 13px; background: #FFFFFF; border-radius: 999px; font: 500 14px/1.2 'LFC Inclusive', sans-serif; letter-spacing: 0; color: #33382E; }
.lfc-place__text { font-size: 18px; line-height: 1.5; max-width: 330px; padding-right: 30px; }
.lfc-place__go {
  position: absolute; right: 24px; bottom: 24px; width: 44px; height: 44px; border-radius: 50%;
  background: #FFFFFF url(../svg/fleche-olive.svg) center / 22px no-repeat; box-shadow: 0 10px 20px -12px rgba(92, 72, 48, .55);
}
.framer-mg1pnh a[data-place="etang-sale"] .lfc-place { color: #4A4C43; } /* AA on the darkest wood grain */
.framer-mg1pnh a.framer-5i5ft[data-place]:focus-visible { outline: 3px solid #A9C9E1; outline-offset: 4px; }
/* Flat cards as on the mockup: the slideshow keeps its sliding track, not the 3D tilt of each slide. */
.framer-mg1pnh ul > li > div { transform: none !important; }
@media (min-width: 1200px) {
  .framer-mg1pnh ul { gap: 18px !important; }
  .framer-mg1pnh ul > li > div { width: 376px !important; height: 714px !important; }
  .framer-mg1pnh li > div > div, .framer-mg1pnh li > div > div > div { width: 100% !important; height: 100% !important; }
  .framer-mg1pnh .framer-1qj02o4-container, .framer-mg1pnh .framer-GGfpN, .framer-mg1pnh .framer-9afkdl-container { height: 714px !important; }
  .framer-mg1pnh ul > li > div a.framer-5i5ft { height: 100% !important; }
  .framer-mg1pnh .framer-13iypgy { height: auto !important; gap: 34px !important; }
  .framer-mg1pnh .lfc-home-section-link { padding-top: 32px !important; }
}

@media (min-width: 768px) and (max-width: 1199.98px) {
  .framer-mg1pnh ul > li > div { height: 460px !important; }
  .framer-mg1pnh li > div > div, .framer-mg1pnh li > div > div > div, .framer-mg1pnh ul > li > div a.framer-5i5ft { height: 100% !important; }
  .framer-mg1pnh .framer-1qj02o4-container, .framer-mg1pnh .framer-GGfpN, .framer-mg1pnh [class*="-container"] > .framer-GGfpN > div { height: 470px !important; }
  .lfc-place__title { font-size: 28px; }
  .lfc-place__text { font-size: 15px; }
  .lfc-place__pill { font-size: 13px; left: 16px; top: 24px; }
}

/* ========== Géométrie relevée sur la maquette desktop (1440 px) ========== */
@media (min-width: 1200px) {
  .framer-mkkbob::before {
    left: 0; width: 400px;
    background-image: url(../images/fee-logo-400.webp), var(--y), var(--y), var(--si), var(--bi), var(--y), var(--s), url(../svg/maquette-hero-gauche.svg);
    background-position: 151px 111px, 306px 146px, 330px 136px, 359px 124px, 266px 299px, 174px 356px, 286px 439px, 0 100px;
    background-size: 151px auto, 18px, 21px, 27px, 27px, 42px, 33px, 300px 600px;
  }
  .framer-mkkbob::after {
    right: 0; width: 400px;
    background-image: var(--yi), var(--b), var(--s), var(--pi), url(../svg/maquette-hero-droite.svg);
    background-position: 49px 181px, 235px 164px, 147px 247px, 105px 379px, 0 100px;
    background-size: 28px, 47px, 42px, 26px, 400px 600px;
  }
  .framer-1vwt240 { padding-top: 44px !important; }
  .framer-1rtd71r { gap: 34px !important; }
  .framer-1vlmshw { width: min(1350px, calc(100vw - 60px)) !important; height: 394px !important; gap: 14px !important; }
  /* The template fans the cards out (rotate); the mockup keeps them straight. The fade-in stays. */
  .framer-1vlmshw > div { flex: 1 1 0 !important; height: 100% !important; transform: none !important; }
  .framer-1vlmshw .framer-K2dlN { padding-top: 54px !important; padding-left: 34px !important; }
  .framer-1vlmshw .framer-16lm8xn {
    left: 10px !important; right: 10px !important; width: auto !important; top: auto !important; bottom: 0 !important; height: 236px !important;
  }
  .framer-1vlmshw .framer-b9nfxh-container { width: 100% !important; height: 100% !important; }
  .framer-1vlmshw h2.framer-text { font-size: 24px !important; }
  .framer-1vlmshw p.framer-text { --framer-text-color: #5F6157 !important; font-size: 15px !important; }
  .framer-z3334f .framer-41z8dm { height: 584px !important; }
  .framer-z3334f .framer-gootlz { height: auto !important; min-height: 584px; }
  .framer-z3334f h2.framer-text { --framer-font-size: 92px !important; font-size: 92px !important; }
  .framer-z3334f .framer-edfrm0 p.framer-text { --framer-font-size: 21px !important; font-size: 21px !important; line-height: 1.65 !important; }
  .framer-z3334f .framer-460wpl { padding-top: 110px !important; width: 624px !important; max-width: 624px !important; }
  .framer-z3334f::before {
    content: ""; position: absolute; z-index: -1; left: 0; top: 300px; width: 260px; height: 360px; pointer-events: none;
    background: url(../svg/arc-histoire.svg) 0 0 / 260px 360px no-repeat;
  }
  .framer-gootlz::after {
    content: ""; position: absolute; inset: 0; pointer-events: none;
    background-image: var(--y), var(--y), var(--b), var(--s);
    background-repeat: no-repeat;
    background-position: 868px 92px, 1193px 82px, 1283px 148px, 1234px 196px;
    background-size: 38px, 62px, 38px, 38px;
  }
  .lfc-medaillon-photo { left: 440px; top: 430px; width: 230px; height: 230px; }
  /* ---------- Les petits rituels ---------- */
  .framer-9kosce { padding-top: 70px !important; padding-bottom: 110px !important; background: #FBF8F2 !important; position: relative; isolation: isolate; overflow: visible !important; }
  .framer-9kosce::before {
    content: ""; position: absolute; z-index: -1; right: 0; top: -60px; width: 260px; height: 560px; pointer-events: none;
    background: url(../svg/arc-en-ciel-rituels.svg) right top / 260px 560px no-repeat;
  }
  .framer-9kosce::after {
    content: ""; position: absolute; z-index: 1; inset: 0; pointer-events: none;
    background-image: var(--b), var(--y), var(--pi);
    background-repeat: no-repeat;
    background-position: 96px calc(100% - 132px), 150px calc(100% - 90px), 1340px 578px;
    background-size: 40px, 32px, 28px;
  }
  .framer-1q6rbv2 { gap: 64px !important; }
  .framer-cuom0g { gap: 40px !important; }
  /* No isolation here: an isolated stacking context stops the Framer WebGL reveal of the illustrations. */
  .framer-cuom0g { width: 1165px !important; max-width: calc(100vw - 80px); }
  .framer-cuom0g > div { z-index: 1; }
  .framer-cuom0g::before {
    content: ""; position: absolute; z-index: 0; left: 135px; top: 60px; bottom: -40px; border-left: 2px dashed #D3C7B7;
  }
  .framer-cuom0g > div { height: auto !important; width: 100% !important; gap: 79px !important; justify-content: flex-start !important; }
  .framer-cuom0g > div::after {
    content: ""; position: absolute; left: 119px; top: 124px; width: 34px; height: 34px; pointer-events: none;
    background: var(--s) center / contain no-repeat;
  }
  .framer-cuom0g > div:nth-child(3)::after { background-image: var(--b); }
  .framer-cuom0g > div:nth-child(4)::after { background-image: var(--y); }
  .framer-cuom0g > div:nth-child(5)::after { background-image: var(--p); top: 132px; }
  .framer-9kosce [data-framer-name="Time"] { width: 273px !important; flex: 0 0 273px !important; border-radius: 32px !important; }
  .framer-9kosce [data-framer-name="Time"] p.framer-text { --framer-font-size: 21px !important; font-size: 21px !important; }
  .framer-9kosce [data-framer-name="Content"] {
    flex: 1 1 0 !important; width: auto !important; height: auto !important; min-height: 215px; justify-content: flex-start !important; padding-left: 41px !important;
  }
  .framer-9kosce [data-framer-name="Content"] > div[class$="-container"] { width: 470px !important; height: auto !important; }
  .framer-9kosce [data-framer-name="Content"] h2.framer-text { --framer-font-size: 29px !important; font-size: 29px !important; }
  .framer-9kosce [data-framer-name="Content"] p.framer-text { --framer-font-size: 17px !important; font-size: 17px !important; line-height: 1.6 !important; }
  .framer-9kosce [data-framer-name="Image Wrapper"] { left: auto !important; right: 18px !important; top: 12px !important; bottom: 12px !important; width: 210px !important; height: auto !important; transform: none !important; }
  .framer-nkcn3s::before {
    content: ""; position: absolute; z-index: 2; right: 236px; top: 30px; width: 46px; height: 46px; pointer-events: none;
    background: url(../svg/lune.svg) center / contain no-repeat;
  }
  /* ---------- Le quotidien se raconte ---------- */
  .lfc-home-pathways { position: relative; max-width: 1380px !important; padding-left: 124px !important; padding-right: 70px !important; padding-top: 40px !important; padding-bottom: 40px !important; }
  /* Pebbles sit on the screen edge, not on the edge of the centred box: no white strip on wide screens. */
  .lfc-home-pathways::after {
    content: ""; position: absolute; right: calc((100% - 100vw) / 2); top: -40px; width: clamp(70px, 5.4vw, 110px); height: 520px; pointer-events: none;
    background: url(../svg/bord-galets-droite.svg) right top / 100% auto no-repeat;
  }
  .lfc-home-pathways .lfc-section-heading h2 { font-size: 54px !important; line-height: 1.08 !important; }
  .lfc-pathways { margin: 0 0 0 -44px; gap: 22px !important; }
  .lfc-pathways h3 { font-size: 31px !important; }
  .lfc-pathways p { font-size: 17px !important; }
  .lfc-pathways > a > div { padding: 6px 42px 40px !important; }
  .lfc-pathways .lfc-picture {
    max-width: none !important; width: auto !important; margin: 46px 34px 26px !important; padding: 8px;
    border-radius: 40px 44px 38px 46px; background: color-mix(in srgb, var(--c) 78%, var(--a));
  }
  .lfc-pathways .lfc-image-frame { max-width: 270px; margin: auto; aspect-ratio: 1.3 !important; background: transparent !important; }
  .framer-1nnyp7c { padding-top: 120px !important; overflow: visible !important; }
  .framer-1ohf3bg, .framer-7n1ozn { overflow: visible !important; }
  .framer-1nnyp7c .lfc-home-section-link { padding-top: 38px; }
  .framer-7n1ozn [data-framer-name="Our team Frame"] { padding: 22px 44px 34px !important; }
  .framer-7n1ozn > div { min-height: 596px !important; }
  .framer-1ohf3bg { gap: 34px !important; }
  .framer-1j6c08w-container::before {
    content: ""; position: absolute; z-index: -1; left: -70px; top: -96px; width: 640px; height: 400px; pointer-events: none;
    background: url(../svg/arc-en-ciel.svg) 0 0 / 640px auto no-repeat;
  }
  .framer-1j6c08w-container::after {
    content: ""; position: absolute; z-index: 2; inset: 0; pointer-events: none;
    background-image: var(--y), var(--b), var(--s), var(--y);
    background-repeat: no-repeat;
    background-position: 466px -40px, 500px 30px, 540px 130px, 6px 440px;
    background-size: 44px, 48px, 32px, 44px;
  }
  .framer-537hc2 .framer-r5ihjm { width: 500px !important; }
  .framer-537hc2 .framer-r5ihjm p.framer-text { --framer-font-size: 19px !important; font-size: 19px !important; line-height: 1.6 !important; }
  .framer-537hc2 .framer-1v2im2w { justify-content: flex-start !important; gap: 34px !important; }
  .framer-537hc2 .framer-l5pule { align-items: flex-start !important; }
  .framer-537hc2 .framer-1v2im2w { align-items: flex-start !important; padding-top: 0 !important; }
  .framer-63ruy4 { gap: 16px !important; padding-top: 14px; width: 580px !important; max-width: calc(100vw - 740px); align-items: stretch !important; }
  .framer-63ruy4 > div { flex: 1 1 0 !important; min-width: 0; padding: 64px 20px 22px !important; }
  .framer-63ruy4 > div::before { left: 20px; top: 22px; width: 30px; height: 30px; }
  .framer-63ruy4 .framer-1i2m29g-container { height: auto !important; }
  .framer-63ruy4 .framer-B81zj, .framer-63ruy4 .framer-10iy8ug { width: 100% !important; height: auto !important; white-space: normal !important; }
  .framer-63ruy4 .framer-10iy8ug p.framer-text { white-space: normal !important; }
  .framer-63ruy4 .framer-1i2m29g-container p { font-size: 58px !important; }
  .framer-63ruy4 .framer-10iy8ug p.framer-text { --framer-font-size: 14.5px !important; font-size: 14.5px !important; line-height: 1.4 !important; margin-top: 8px; }
  .framer-537hc2 { padding-top: 150px !important; padding-bottom: 150px !important; overflow: visible !important; }
  /* ---------- Journal ---------- */
  .lfc-home-journal { position: relative; max-width: 1400px !important; padding-left: 118px !important; padding-right: 94px !important; }
  .lfc-home-journal::before, .lfc-home-journal::after {
    content: ""; position: absolute; top: 60px; width: 60px; height: 820px; pointer-events: none; background-repeat: no-repeat;
  }
  .lfc-home-journal::before { left: calc((100% - 100vw) / 2); width: clamp(60px, 4.6vw, 96px); background-image: url(../svg/bord-galets-gauche.svg); background-size: 100% auto; }
  .lfc-home-journal::after {
    right: calc((100% - 100vw) / 2); width: calc(100px + clamp(60px, 4.6vw, 96px)); background-image: var(--s), var(--pi), url(../svg/bord-galets-droite.svg);
    background-position: 0 0, 70px 70px, right 150px; background-size: 42px, 30px, clamp(60px, 4.6vw, 96px) auto;
  }
  .lfc-home-journal .lfc-section-heading h2 { font-size: 62px !important; line-height: 1.05 !important; }
  .lfc-home-journal .lfc-card-grid { margin-left: -22px; }
  .lfc-home-journal .lfc-card h3 { font-size: 31px !important; }
  .lfc-home-journal .lfc-card p { font-size: 17px !important; }
  .lfc-home-journal .lfc-card > div { padding: 30px 30px 20px !important; }
  .framer-jv2b8j { padding-top: 140px !important; }
  .framer-jv2b8j [data-framer-name="Question"] { padding-top: 22px !important; padding-bottom: 22px !important; }
  /* Room under the card so its drop shadow shows in full before « Pour aller plus loin ». */
  #main section.framer-LQRuW { padding-top: 40px !important; padding-bottom: 90px !important; overflow: visible !important; }
  .framer-jv2b8j [data-framer-name="Question"] p.framer-text { --framer-font-size: 22px !important; font-size: 22px !important; }
  .framer-jv2b8j [data-framer-name="Answer"] p.framer-text { --framer-font-size: 18px !important; font-size: 18px !important; }
  #main section.framer-LQRuW .framer-1y0ndzf::after {
    content: ""; position: absolute; inset: 0; z-index: 0; pointer-events: none;
    background-image: url(../svg/titre-etoile-traits-beurre.svg), var(--s), var(--b), var(--s), var(--p);
    background-repeat: no-repeat;
    background-position: 466px 128px, 796px 116px, 594px 322px, 478px 400px, 676px 420px;
    background-size: 118px 92px, 36px, 40px, 48px, 40px;
  }
  #main section.framer-LQRuW .framer-6tpv0e img { mix-blend-mode: multiply; transform: scale(1.3) translate(10px, -20px); }
  /* ---------- Pour aller plus loin + pied de page ---------- */
  .lfc-editorial { padding-top: 64px !important; padding-bottom: 76px !important; background: #FFFFFF; max-width: 1440px !important; padding-left: 118px !important; padding-right: 118px !important; }
  .lfc-editorial h2 { font-size: 42px !important; }
  .lfc-editorial > .lfc-rich { font-size: 17px !important; }
  .lfc-editorial > div > .lfc-picture { max-width: 250px !important; margin-top: 30px !important; }
}



/* Largeurs desktop intermédiaires : les étincelles de droite restent hors du titre et du texte. */
@media (min-width: 1200px) and (max-width: 1439.98px) {
  .framer-mkkbob::after { background-position: 190px 150px, 235px 164px, 160px 262px, 190px 470px, 0 100px; }
  .framer-mkkbob::before { background-position: 151px 111px, 306px 146px, 330px 136px, 359px 124px, 226px 299px, 150px 346px, 250px 470px, 0 100px; }
}

/* ========== Tablette et mobile : décor réduit, jamais sur le texte ========== */
@media (max-width: 1199.98px) {
  .lfc-medaillon-photo { display: none; }
  .framer-mkkbob::before, .framer-mkkbob::after {
    content: ""; position: absolute; pointer-events: none; z-index: -1; background-repeat: no-repeat;
  }
  .framer-mkkbob::before {
    left: 0; top: 72px; width: 110px; height: 300px;
    background-image: url(../images/fee-logo-400.webp), url(../svg/maquette-hero-gauche.svg);
    background-position: -8px -4px, 0 24px;
    background-size: 68px auto, 90px 180px;
  }
  .framer-mkkbob::after {
    right: 0; top: auto; bottom: -60px; width: 110px; height: 190px;
    background: url(../svg/maquette-hero-droite.svg) 0 0 / 110px 165px no-repeat;
  }
  .framer-mkkbob .framer-lnomnm { position: relative; z-index: 1; }
  .framer-9kosce { position: relative; isolation: isolate; overflow: hidden !important; }
  .framer-mg1pnh .lfc-home-section-link { padding-top: 76px; }
  .framer-63ruy4 { flex-wrap: wrap !important; justify-content: flex-start !important; gap: 16px !important; height: auto !important; }
  .framer-63ruy4 > div { padding: 52px 18px 18px !important; min-width: 150px; }
  .framer-63ruy4 > div::before { left: 18px; top: 16px; width: 26px; height: 26px; }
  .framer-1j6c08w-container::before {
    content: ""; position: absolute; z-index: -1; left: -6%; top: -6%; width: 70%; aspect-ratio: 600 / 330; pointer-events: none;
    background: url(../svg/arc-en-ciel.svg) 0 0 / contain no-repeat;
  }
  .lfc-home-pathways .lfc-eyebrow::before { margin-left: 0; }
  .lfc-pathways .lfc-picture { border-radius: 30px; background: color-mix(in srgb, var(--c) 78%, var(--a)); }
  .lfc-home-journal .lfc-card .lfc-picture { border-radius: 30px 36px 26px 26px; }
}
@media (min-width: 768px) and (max-width: 1199.98px) {
  .framer-mkkbob::before {
    top: 96px; width: 190px; height: 420px;
    background-image: url(../images/fee-logo-400.webp), var(--y), url(../svg/maquette-hero-gauche.svg);
    background-position: 1px -1px, 110px 4px, 0 40px; background-size: 102px auto, 18px, 140px 280px;
  }
  .framer-mkkbob::after { width: 170px; height: 290px; bottom: -150px; background-size: 170px 255px; }
  .framer-9kosce::before {
    content: ""; position: absolute; z-index: -1; right: 0; top: 0; width: 130px; height: 280px; pointer-events: none;
    background: url(../svg/arc-en-ciel-rituels.svg) right top / 130px auto no-repeat;
  }
}
@media (max-width: 767.98px) {
  #main section.framer-LQRuW .framer-1y0ndzf::before {
    background: #FCF1D8; border-radius: 36px 48px 40px 44px / 44px 38px 48px 38px;
  }
  .framer-1vlmshw > div::before, .framer-7n1ozn > div::before { width: 48px; height: 48px; left: 14px; top: -12px; }
  .framer-jv2b8j [data-framer-name="Icon"] { width: 44px !important; height: 44px !important; flex: 0 0 44px; }
}

/* ========== Mobile « Arc-en-ciel doux » (maquette 390 px validée par Tom, 23 septembre) ==========
   Gouttières 20 px, ~56 px entre sections, cartes rayon 24 px, espacement 12 px, cibles ≥ 44 px.
   L'en-tête et le menu relèvent de vendor/lfc/menu/ : rien ici. */
.lfc-swipe-dots { display: none; }
@media (max-width: 809.98px) {
  :root { --m: url(../svg/mobile/); }
  .lfc-swipe-dots { display: flex; justify-content: center; gap: 10px; margin: 18px 0 0; }
  .lfc-swipe-dots span { width: 9px; height: 9px; border-radius: 50%; background: #E4E1D8; transition: background .2s; }
  .lfc-swipe-dots span.is-active { background: #8FA66A; }
  .framer-mg1pnh .lfc-home-section-link > .lfc-swipe-dots { margin: 0 0 20px; }
  h2.framer-styles-preset-ek4tc { --framer-font-size: 32px !important; font-size: 32px !important; line-height: 1.12 !important; }

  /* ---------- Hero ---------- */
  .framer-mkkbob { padding: 172px 20px 24px !important; }
  .framer-mkkbob::before {
    left: 0; top: 76px; width: 130px; height: 190px;
    background-image: url(../images/fee-logo-400.webp), var(--y), var(--s), url(../svg/mobile/hero-galet-gauche.svg);
    background-position: 18px 2px, 94px 34px, 112px 18px, 0 20px;
    background-size: 76px auto, 13px, 12px, 32px 80px;
  }
  .framer-mkkbob::after {
    right: 0; top: 60px; bottom: auto; width: 60px; height: 520px;
    background-image: var(--b), var(--pi), url(../svg/mobile/hero-arc-droite.svg);
    background-position: 22px 76px, 12px 112px, right 330px;
    background-size: 22px, 14px, 36px 104px;
  }
  .lfc-home-overline { font-size: 11.5px; letter-spacing: .16em; margin-bottom: 8px; }
  .framer-mkkbob h1 { font-size: 46px !important; line-height: 1.02 !important; }
  .framer-mkkbob .framer-lnomnm { gap: 10px !important; }
  .lfc-home-intro { padding: 0 !important; font-size: 17px !important; line-height: 1.5 !important; margin-top: 4px; }
  .lfc-home-intro .lfc-actions { gap: 14px !important; margin-top: 22px; padding: 0 22px; align-items: stretch !important; }
  .lfc-home-intro .lfc-button { width: 100%; min-height: 54px; justify-content: center; gap: 16px; font-size: 18px; }
  .lfc-home-intro .lfc-text-link { align-self: center; font-size: 16px; }
  .framer-19aiaap { width: calc(100% - 40px) !important; height: auto !important; aspect-ratio: 350 / 284; border-radius: 24px !important; }
  .framer-19aiaap .framer-1twhhlg { border-radius: 24px; overflow: hidden; }
  .lfc-home-caption { font-size: 11px; margin-top: 10px; }
  .lfc-home-locations { display: grid !important; grid-template-columns: 1fr 1fr; gap: 12px !important; padding: 28px 20px 0 !important; }
  .lfc-home-locations a {
    display: flex; align-items: center; gap: 10px; min-height: 60px; padding: 8px 14px 8px 12px;
    background: #FFFFFF; border: 1px solid #E6E1D6; border-radius: 18px; font-size: 14px; line-height: 1.3; text-align: left;
    box-shadow: 0 8px 18px -16px rgba(92, 72, 48, .5);
  }
  .lfc-home-locations a::before { content: ""; flex: 0 0 22px; height: 22px; background: var(--s) center / contain no-repeat; }
  .lfc-home-locations a:nth-child(2)::before { background-image: var(--b); }
  .lfc-home-locations a:nth-child(3)::before { background-image: var(--y); }
  .lfc-home-locations a:nth-child(4)::before { background-image: var(--p); }
  .lfc-home-locations a span { margin-left: auto; }

  /* ---------- Tout commence par un lien ---------- */
  .framer-1vwt240 { padding: 56px 20px 0 !important; position: relative; }
  .framer-1vwt240::after {
    content: ""; position: absolute; right: 0; top: 190px; width: 20px; height: 560px; pointer-events: none;
    background: url(../svg/mobile/galets-droite.svg) right top / 20px auto repeat-y;
  }
  .framer-1rtd71r { gap: 36px !important; }
  .framer-1pbbh9u h2 { padding: 0 30px; }
  .framer-1vlmshw { gap: 24px !important; }
  .framer-1vlmshw > div { height: 140px !important; transform: none !important; }
  .framer-1vlmshw .framer-K2dlN { height: 140px !important; padding: 12px 18px 12px 158px !important; align-items: center !important; border-radius: 24px !important; overflow: hidden !important; }
  .framer-1vlmshw .framer-K2dlN::before { left: 12px; right: auto; top: 12px; bottom: 12px; width: 132px; height: auto; border-radius: 20px; opacity: .8; }
  .framer-1vlmshw .framer-16lm8xn { left: 14px !important; top: 14px !important; right: auto !important; bottom: auto !important; width: 128px !important; height: 112px !important; }
  .framer-1vlmshw .framer-b9nfxh-container { width: 100% !important; height: 100% !important; }
  .framer-1vlmshw h2.framer-text { --framer-font-size: 18px !important; font-size: 18px !important; line-height: 1.2 !important; }
  .framer-1vlmshw p.framer-text { --framer-font-size: 12.5px !important; font-size: 12.5px !important; line-height: 1.45 !important; }
  .framer-1vlmshw .framer-44thdn-container { width: 100% !important; }
  .framer-1vlmshw > div::before { width: 40px; height: 40px; left: 12px; top: -10px; }

  /* ---------- Nou la Fée ---------- */
  .framer-z3334f { padding: 56px 20px 0 !important; }
  .framer-z3334f::before {
    content: ""; position: absolute; z-index: 0; left: 0; top: 150px; width: 24px; height: 150px; pointer-events: none;
    background: url(../svg/mobile/arc-histoire.svg) right center / auto 150px no-repeat;
  }
  .framer-z3334f .framer-gootlz { gap: 30px !important; }
  .framer-z3334f .framer-41z8dm { width: calc(100% - 44px) !important; height: auto !important; aspect-ratio: 306 / 248; align-self: center; border-radius: 24px !important; }
  .lfc-medaillon-photo {
    display: flex; left: calc(50% + 46px); top: calc((100vw - 84px) * 248 / 306 - 78px); width: 154px; height: 154px;
    border-width: 5px; padding: 0 14px; gap: 2px; font-size: 12px; line-height: 1.25;
  }
  .lfc-medaillon-photo::before { width: 70px; height: 20px; margin-bottom: 0; background-size: 12px, 14px, 10px; background-position: 0 8px, 28px 0, 56px 7px; }
  .lfc-medaillon-photo strong { font-size: 16px; }
  .framer-z3334f .framer-460wpl { padding: 0 22px !important; gap: 22px !important; }
  .framer-z3334f .framer-117u2g3 { gap: 8px !important; }
  .lfc-story-overline::after { content: ""; display: inline-block; width: 18px; height: 18px; margin-left: 8px; vertical-align: -4px; background: var(--y) center / contain no-repeat; }
  .framer-z3334f h2.framer-text { --framer-font-size: 44px !important; font-size: 44px !important; }
  .framer-z3334f .framer-edfrm0 p.framer-text { --framer-font-size: 15px !important; font-size: 15px !important; line-height: 1.5 !important; }
  .framer-z3334f a.framer-womO9 { height: 52px !important; padding: 0 28px !important; gap: 26px !important; }
  .framer-z3334f a.framer-womO9 .framer-1urt7q-container { display: none !important; }
  .framer-z3334f a.framer-womO9::after { content: ""; width: 20px; height: 20px; order: 3; background: url(../svg/fleche.svg) center / contain no-repeat; }
  .framer-z3334f a.framer-womO9 p.framer-text { --framer-font-size: 17px !important; font-size: 17px !important; font-weight: 600 !important; }
  .framer-z3334f .framer-1b6e9ey-container { width: auto !important; height: auto !important; }

  /* ---------- Nos micro-crèches ---------- */
  /* Phone variant of the Framer slideshow only (the tablet variant keeps its own layout). */
  @media (max-width: 767.98px) {
    .framer-mg1pnh { padding: 56px 20px 0 !important; }
    .framer-mg1pnh .framer-13iypgy { gap: 22px !important; height: auto !important; }
    .framer-mg1pnh .framer-191rjcx { align-self: flex-start; }
    .framer-mg1pnh .framer-191rjcx h2 { text-align: left !important; --framer-text-alignment: left !important; font-size: 30px !important; --framer-font-size: 30px !important; }
    .framer-mg1pnh .framer-191rjcx h2::after { width: 22px; height: 22px; }
    /* Framer's phone slideshow moves by the width of its frame: a 262 px frame + visible overflow lets the next card peek. */
    .framer-mg1pnh .framer-1qj02o4-container { height: 330px !important; width: 262px !important; align-self: flex-start; }
    .framer-mg1pnh .framer-1qj02o4-container > div, .framer-mg1pnh .framer-ekbsx-container { height: 100% !important; }
    .framer-mg1pnh li > div { width: 262px !important; height: 318px !important; }
    .framer-mg1pnh li > div > div, .framer-mg1pnh li > div > div > div { height: 100% !important; }
    .framer-mg1pnh a.framer-5i5ft { height: 100% !important; border-radius: 24px !important; overflow: hidden !important; }
    .framer-mg1pnh li > div > div::before { width: 44px; height: 44px; left: 10px; top: -8px; }
    .framer-mg1pnh .framer-1r2i0xt { padding: 22px 20px 0 !important; gap: 12px !important; height: auto !important; }
    .framer-mg1pnh .framer-15lu9nx { margin-left: 30px; padding: 6px 14px !important; height: auto !important; }
    .framer-mg1pnh .framer-15lu9nx p.framer-text { --framer-font-size: 13px !important; font-size: 13px !important; }
    .framer-mg1pnh .framer-iz4n09 { gap: 6px !important; height: auto !important; }
    .framer-mg1pnh h3.framer-text { --framer-font-size: 22px !important; font-size: 22px !important; line-height: 1.12 !important; }
    .framer-mg1pnh .framer-1ab54dy p.framer-text { --framer-font-size: 12.5px !important; font-size: 12.5px !important; line-height: 1.5 !important; }
    .lfc-place { padding: 10px 10px 14px; }
    .lfc-place__arch { height: 54%; }
    .lfc-place__pill { left: 14px; top: 22px; font-size: 12.5px; padding: 5px 11px 5px 9px; gap: 5px; }
    .lfc-place__pill::before { width: 13px; height: 13px; }
    .lfc-place__body { gap: 6px; padding: 12px 8px 0 8px; }
    .lfc-place__title { font-size: 23px; gap: 4px 8px; }
    .lfc-place__tag { font-size: 12px; padding: 4px 10px; }
    .lfc-place__text { font-size: 13.5px; line-height: 1.45; padding-right: 46px; }
    .lfc-place__go { right: 16px; bottom: 16px; }
    .framer-mg1pnh .framer-136b85g-container { position: absolute !important; left: 0 !important; right: 0 !important; bottom: 0 !important; top: auto !important; width: 100% !important; height: 128px !important; transform: none !important; }
    .framer-mg1pnh fieldset > div { top: -64px !important; bottom: auto !important; left: auto !important; right: calc(302px - 100vw) !important; width: auto !important; height: 44px !important; gap: 10px !important; justify-content: flex-end !important; }
    .framer-mg1pnh fieldset button { width: 44px !important; height: 44px !important; }
    .framer-mg1pnh fieldset button img { width: 44px !important; height: 44px !important; }
    .framer-mg1pnh .lfc-home-section-link { padding: 4px 0 0 !important; }
    .framer-mg1pnh .lfc-home-section-link .lfc-swipe-dots { margin: 0 0 22px; }
  }

  /* ---------- Les petits rituels ---------- */
  .framer-9kosce { padding: 56px 20px 56px !important; overflow: hidden !important; margin-top: 56px; }
  .framer-9kosce::before {
    content: ""; position: absolute; z-index: 0; right: 0; top: 0; width: 64px; height: 120px; pointer-events: none;
    background: url(../svg/mobile/arc-rituels.svg) right top / auto 120px no-repeat;
  }
  .framer-1q6rbv2 { gap: 28px !important; }
  .framer-cuom0g { gap: 34px !important; padding-top: 14px !important; }
  .framer-cuom0g::before { content: ""; position: absolute; z-index: 0; left: 12px; top: 10px; bottom: 10px; border-left: 2px dashed #D3C7B7; }
  .framer-cuom0g > div {
    position: relative !important; z-index: 1; margin-left: 38px; width: calc(100% - 38px) !important; gap: 10px !important; padding: 30px 18px 20px 20px !important;
    background: #FFFFFF; border-radius: 24px; box-shadow: 0 14px 30px -24px rgba(92, 72, 48, .45); height: auto !important;
    align-items: flex-start !important; overflow: visible !important;
  }
  .framer-cuom0g > div::after { content: ""; position: absolute; left: -40px; top: 26px; width: 26px; height: 26px; background: var(--s) center / contain no-repeat; }
  /* Below 1200 px the template drops the first child: the four steps are children 1 to 4. */
  .framer-cuom0g > div:nth-child(2)::after { background-image: var(--b); }
  .framer-cuom0g > div:nth-child(3)::after { background-image: var(--y); }
  .framer-cuom0g > div:nth-child(4)::after { background-image: var(--p); }
  .framer-9kosce [data-framer-name="Time"] {
    width: auto !important; height: auto !important; padding: 6px 15px !important; background: #E9EEDC !important; border-radius: 999px !important;
    position: absolute !important; left: 18px; top: -15px; z-index: 2; box-shadow: 0 6px 14px -10px rgba(92, 72, 48, .45) !important;
  }
  .framer-9kosce [data-framer-name="Time"] > div { width: auto !important; }
  .framer-9kosce [data-framer-name="Time"] p.framer-text { --framer-font-size: 13px !important; font-size: 13px !important; white-space: nowrap; --framer-text-color: #3E4A2A !important; }
  .framer-9kosce [data-framer-name="Content"] {
    position: relative; width: 100% !important; height: auto !important; min-height: 104px; padding: 0 96px 0 0 !important; background: transparent !important; box-shadow: none !important; border-radius: 0 !important;
  }
  .framer-9kosce [data-framer-name="Content"] > div[class$="-container"] { width: 100% !important; height: auto !important; }
  .framer-9kosce [data-framer-name="Content"] .framer-ZPcLF, .framer-9kosce [data-framer-name="Content"] .framer-1yku3l1, .framer-9kosce [data-framer-name="Content"] .framer-zig3nr { width: 100% !important; }
  .framer-9kosce [data-framer-name="Content"] h2.framer-text { --framer-font-size: 18px !important; font-size: 18px !important; line-height: 1.2 !important; }
  .framer-9kosce [data-framer-name="Content"] p.framer-text { --framer-font-size: 12.5px !important; font-size: 12.5px !important; line-height: 1.5 !important; }
  .framer-9kosce [data-framer-name="Image Wrapper"] {
    position: absolute !important; left: auto !important; right: 0 !important; top: auto !important; bottom: 0 !important; width: 90px !important; height: 84px !important; transform: none !important;
  }
  .framer-9kosce [data-framer-name="Image Wrapper"] > div { width: 100% !important; height: 100% !important; }
  .framer-nkcn3s::before { content: ""; position: absolute; z-index: 2; right: 8px; top: -34px; width: 26px; height: 26px; pointer-events: none; background: url(../svg/lune.svg) center / contain no-repeat; }

  /* ---------- Le quotidien se raconte ---------- */
  .lfc-home-pathways { padding: 56px 20px 0 !important; position: relative; }
  .lfc-home-pathways::after { content: ""; position: absolute; right: 0; top: 40px; width: 20px; height: 220px; pointer-events: none; background: url(../svg/mobile/galets-droite.svg) right top / 20px auto no-repeat; }
  .lfc-home-pathways .lfc-section-heading { display: block; margin-bottom: 26px; }
  .lfc-home-pathways .lfc-eyebrow { font-size: 11.5px !important; padding-left: 38px; position: relative; }
  .lfc-home-pathways .lfc-eyebrow::before { position: absolute; left: 0; top: -14px; margin: 0; width: 34px; height: 30px; background-size: 22px, 16px; background-position: 0 10px, 18px 0; }
  .lfc-home-pathways h2 { font-size: 31px !important; line-height: 1.08 !important; margin-bottom: 12px !important; }
  .lfc-home-pathways .lfc-section-heading p { font-size: 16px; line-height: 1.5; margin: 0; }
  .lfc-pathways { display: grid !important; grid-template-columns: 1fr !important; gap: 24px !important; margin: 0 !important; }
  .lfc-pathways > a { display: grid !important; grid-template-columns: 128px 1fr; align-items: center; gap: 0 14px; padding: 12px; min-height: 150px; border-radius: 24px !important; }
  .lfc-pathways > a::before { width: 40px; height: 40px; left: 12px; top: -10px; }
  .lfc-pathways .lfc-picture { margin: 0 !important; padding: 6px !important; border-radius: 20px !important; max-width: none !important; width: 128px !important; height: 124px; display: flex; align-items: center; }
  .lfc-pathways .lfc-image-frame { max-width: none; width: 100%; aspect-ratio: 1.1 !important; }
  .lfc-pathways > a > div { padding: 0 !important; }
  .lfc-pathways h3 { font-size: 19px !important; line-height: 1.15 !important; margin: 0 0 6px !important; }
  .lfc-pathways p { font-size: 13.5px !important; line-height: 1.45 !important; margin: 0 0 8px !important; }
  .lfc-pathways .lfc-text-link { font-size: 14px; }

  /* ---------- Rangées à glisser (scroll-snap) ---------- */
  .lfc-swipe {
    display: flex !important; flex-direction: row !important; flex-wrap: nowrap !important; align-items: stretch !important; justify-content: flex-start !important;
    gap: 12px !important; overflow-x: auto !important; overflow-y: hidden !important; scroll-snap-type: x mandatory; scroll-padding-inline: 20px;
    margin: 0 -20px !important; padding: 18px 20px 14px !important; width: calc(100% + 40px) !important; height: auto !important;
    scrollbar-width: none; overscroll-behavior-x: contain;
  }
  .lfc-swipe::-webkit-scrollbar { display: none; }
  .lfc-swipe > * { flex: 0 0 272px !important; width: 272px !important; scroll-snap-align: start; }
  .lfc-swipe:focus-visible { outline: 3px solid #A9C9E1; outline-offset: -3px; }

  /* ---------- Chaque personne compte ---------- */
  .framer-1nnyp7c { padding: 56px 20px 0 !important; }
  .framer-1ohf3bg { gap: 14px !important; height: auto !important; }
  .framer-1yt2gy5 h2 { font-size: 30px !important; --framer-font-size: 30px !important; }
  .framer-1yt2gy5 h2::after { display: block; margin: 6px auto 0; width: 40px; height: 30px; }
  .framer-7n1ozn > div { min-height: 0 !important; height: auto !important; padding: 0 !important; border-radius: 24px !important; }
  .framer-7n1ozn > div::before { width: 40px; height: 40px; left: 12px; top: -10px; }
  .framer-1nnyp7c .lfc-home-photo { margin: 18px 16px 0 !important; width: calc(100% - 32px) !important; height: auto !important; flex: 0 0 auto !important; aspect-ratio: 4 / 3; border-radius: 18px !important; }
  .framer-7n1ozn [data-framer-name="Our team Frame"] { padding: 16px 20px 22px !important; }
  .framer-7n1ozn h2.framer-text { --framer-font-size: 23px !important; font-size: 23px !important; }
  .framer-7n1ozn [data-framer-name="Our team Frame"] > div:last-child p.framer-text { --framer-font-size: 14.5px !important; font-size: 14.5px !important; line-height: 1.5 !important; }
  .framer-1nnyp7c [data-framer-name="Teacher Name & Designation"] p.framer-text { --framer-font-size: 15px !important; font-size: 15px !important; }
  .framer-15b6yz6 { padding: 5px 14px 5px 40px; }
  .framer-15b6yz6 p.framer-text { --framer-font-size: 14px !important; font-size: 14px !important; }
  .framer-15b6yz6::before { left: 14px; width: 18px; height: 18px; }
  .framer-1nnyp7c .lfc-home-section-link { padding-top: 22px; }

  /* ---------- Une place pour chacun ---------- */
  .framer-537hc2 { padding: 56px 20px 0 !important; }
  .framer-537hc2 .framer-l5pule { flex-direction: column !important; align-items: center !important; gap: 18px !important; height: auto !important; }
  .framer-537hc2 .framer-1j6c08w-container { order: -1 !important; width: 240px !important; height: 200px !important; margin-top: 10px; align-self: center !important; transform: none !important; }
  .framer-1j6c08w-container::before { left: -30px; top: -14px; width: 300px; height: 180px; aspect-ratio: auto; background: url(../svg/mobile/arc-chacun.svg) center top / 300px auto no-repeat; }
  .framer-1j6c08w-container::after {
    content: ""; position: absolute; z-index: 2; inset: 0; pointer-events: none;
    background-image: var(--s), var(--y), var(--b); background-repeat: no-repeat;
    background-position: 0 44px, 16px 96px, 212px 120px; background-size: 24px, 15px, 24px;
  }
  .framer-537hc2 .framer-1j6c08w-container > div { position: relative !important; width: 100% !important; height: 170px !important; margin-top: 30px !important; }
  .framer-537hc2 .framer-1v2im2w { align-items: center !important; gap: 26px !important; transform: none !important; }
  .framer-537hc2 .framer-rks5cm { align-items: center !important; gap: 10px !important; }
  .framer-537hc2 h2.framer-text { --framer-font-size: 40px !important; font-size: 40px !important; text-align: center !important; --framer-text-alignment: center !important; line-height: 1.02 !important; }
  .framer-537hc2 .framer-avezc4, .framer-537hc2 .framer-c11y5x { width: 280px !important; }
  .framer-537hc2 .framer-r5ihjm { width: 100% !important; }
  .framer-537hc2 .framer-r5ihjm p.framer-text { text-align: center !important; --framer-text-alignment: center !important; font-size: 15px !important; --framer-font-size: 15px !important; line-height: 1.45 !important; }
  .framer-63ruy4 { flex-wrap: nowrap !important; justify-content: space-between !important; gap: 10px !important; width: 100% !important; }
  .framer-63ruy4 > div:nth-child(2) .framer-10iy8ug p.framer-text { white-space: nowrap !important; }
  .framer-63ruy4 > div:nth-child(2) { flex-grow: 1.45 !important; }
  .framer-63ruy4 > div { flex: 1 1 0 !important; width: auto !important; min-width: 0; padding: 46px 6px 14px !important; display: flex !important; justify-content: center; border-radius: 20px 24px 22px 24px; }
  .framer-63ruy4 > div::before { left: 50%; top: 14px; margin-left: -12px; width: 24px; height: 24px; }
  .framer-63ruy4 .framer-B81zj { align-items: center !important; width: 100% !important; height: auto !important; }
  .framer-63ruy4 .framer-1i2m29g-container p { font-size: 40px !important; }
  .framer-63ruy4 .framer-1i2m29g-container { height: 44px !important; }
  .framer-63ruy4 .framer-10iy8ug { width: 100% !important; }
  .framer-63ruy4 .framer-10iy8ug p.framer-text { text-align: center !important; --framer-text-alignment: center !important; font-size: 12.5px !important; --framer-font-size: 12.5px !important; line-height: 1.35 !important; white-space: normal !important; }

  /* ---------- Journal ---------- */
  .lfc-home-journal { padding: 56px 20px 0 !important; position: relative; }
  .lfc-home-journal::before { content: ""; position: absolute; left: 0; top: 70px; width: 18px; height: 150px; pointer-events: none; background: url(../svg/mobile/galets-gauche.svg) left top / 18px auto no-repeat; }
  .lfc-home-journal .lfc-section-heading { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; margin-bottom: 4px; }
  .lfc-home-journal .lfc-section-heading h2 { font-size: 31px !important; line-height: 1.08 !important; margin: 0 !important; }
  .lfc-home-journal .lfc-section-heading > .lfc-text-link { align-self: center; font-size: 15px; }
  .lfc-home-journal .lfc-card-grid.lfc-swipe > .lfc-card { display: flex !important; grid-column: auto !important; border-radius: 24px; }
  .lfc-home-journal .lfc-card::before { width: 44px; height: 44px; left: 4px; top: -12px; }
  .lfc-home-journal .lfc-card .lfc-picture { border-radius: 22px 22px 18px 18px; margin: 10px 10px 0; overflow: hidden; }
  .lfc-home-journal .lfc-card .lfc-image-frame { aspect-ratio: 1.4; }
  .lfc-home-journal .lfc-card > div { padding: 16px 20px 16px !important; }
  .lfc-home-journal .lfc-card h3 { font-size: 21px !important; margin-bottom: 8px !important; }
  .lfc-home-journal .lfc-card p { font-size: 14px !important; margin-bottom: 12px !important; }
  .lfc-home-journal .lfc-card .lfc-eyebrow { font-size: 11px !important; margin-bottom: 8px !important; }
  .lfc-home-journal .lfc-card-bottom { font-size: 14px; padding-top: 12px; }
  .lfc-home-journal .lfc-card-bottom > span:last-child { width: 46px; height: 46px; }

  /* ---------- FAQ ---------- */
  .framer-jv2b8j { padding: 56px 20px 0 !important; }
  .framer-ymxe9q h2 { font-size: 38px !important; --framer-font-size: 38px !important; padding: 0 36px; }
  .framer-wez8cq { gap: 28px !important; }
  .framer-81cp7-container { width: 100% !important; }
  .framer-efcLC { gap: 16px !important; }
  .framer-jv2b8j .framer-KOI4q { background: #FBF8F2; border-radius: 18px; box-shadow: inset 6px 0 0 var(--filet, #B7C98F); gap: 0 !important; }
  .framer-jv2b8j [data-framer-name="Question"] { min-height: 68px; padding: 20px 16px 20px 26px !important; border-radius: 18px !important; gap: 12px !important; align-items: center !important; background: transparent !important; box-shadow: none !important; }
  .framer-jv2b8j [data-framer-name="Answer"] { padding-bottom: 18px; }
  .framer-jv2b8j [data-framer-name="Question"] p.framer-text { --framer-font-size: 17px !important; font-size: 17px !important; line-height: 1.4 !important; padding-left: 0; }
  .framer-jv2b8j [data-framer-name="Icon"] { width: 36px !important; height: 36px !important; flex: 0 0 36px; margin: 0 !important; background-size: 20px !important; }
  .framer-jv2b8j [data-framer-name="Answer"] p.framer-text { --framer-font-size: 15px !important; font-size: 15px !important; line-height: 1.55 !important; padding-left: 26px; padding-right: 16px; }
  .framer-jv2b8j .lfc-home-section-link { padding-top: 20px; }

  /* ---------- Et si on se rencontrait ? ---------- */
  #main section.framer-LQRuW { padding: 56px 20px 0 !important; }
  #main section.framer-LQRuW .framer-1y0ndzf { height: auto !important; min-height: 372px; padding: 34px 26px 0 !important; overflow: hidden !important; border-radius: 28px !important; }
  #main section.framer-LQRuW .framer-1y0ndzf::before {
    background: url(../svg/mobile/arc-contact.svg) right bottom / 310px auto no-repeat, #FCF1D8 !important; border-radius: 28px; filter: none;
    box-shadow: 0 20px 34px -26px rgba(92, 72, 48, .35);
  }
  #main section.framer-LQRuW .framer-1y0ndzf::after {
    content: ""; position: absolute; inset: 0; z-index: 0; pointer-events: none;
    background-image: url(../svg/titre-etoile-traits-beurre.svg), var(--b), var(--s), var(--p);
    background-repeat: no-repeat; background-position: 206px 36px, 96px 222px, 40px 262px, 70px 300px; background-size: 58px 46px, 24px, 24px, 22px;
  }
  #main section.framer-LQRuW .framer-odg14y { gap: 20px !important; align-items: flex-start !important; width: 100% !important; transform: none !important; }
  #main section.framer-LQRuW h2.framer-text { --framer-font-size: 38px !important; font-size: 38px !important; text-align: left !important; --framer-text-alignment: left !important; }
  #main section.framer-LQRuW .framer-n8thfc, #main section.framer-LQRuW .framer-68br2j { width: 230px !important; }
  #main section.framer-LQRuW a.framer-womO9 { height: 48px !important; padding: 0 24px 0 20px !important; }
  #main section.framer-LQRuW a.framer-womO9 p.framer-text { --framer-font-size: 16px !important; font-size: 16px !important; }
  #main section.framer-LQRuW .framer-vtq6j0 { position: relative !important; width: 290px !important; max-width: 100%; height: 250px !important; margin: 0 -18px 0 auto; transform: none !important; }
  #main section.framer-LQRuW .framer-6tpv0e { inset: 0 !important; width: 100% !important; height: 100% !important; transform: none !important; background: transparent !important; }
  #main section.framer-LQRuW .framer-6tpv0e img { object-fit: contain !important; transform: none !important; mix-blend-mode: normal; }
  #main section.framer-LQRuW .framer-kuOaB { display: none !important; }

  /* ---------- Pour aller plus loin ---------- */
  .lfc-editorial { padding: 30px 20px 56px !important; gap: 18px !important; }
  .lfc-editorial h2 { font-size: 28px !important; line-height: 1.12 !important; margin-bottom: 0 !important; }
  .lfc-editorial > .lfc-rich { font-size: 14.5px !important; line-height: 1.55 !important; }
  .lfc-editorial .lfc-rich h3 { font-size: 23px !important; margin: 24px 0 12px !important; }
  .lfc-editorial .lfc-rich li { padding-left: 40px; }
  .lfc-editorial .lfc-rich li::before { width: 22px; height: 22px; top: .2em; }
  .lfc-editorial .lfc-rich p:has(> .lfc-text-link) { margin-bottom: 12px; }

  /* ---------- Pied de page ---------- */
  .lfc-site-footer { grid-template-columns: 1fr 1fr !important; gap: 26px 18px !important; padding: 44px 26px 28px !important; font-size: 15px !important; }
  .lfc-site-footer::before { left: 24px; right: 72px; top: 24px; }
  .lfc-site-footer::after { right: 12px; top: 6px; width: 64px; height: 44px; background: var(--s) 0 22px / 20px no-repeat, var(--y) 22px 4px / 14px no-repeat, var(--p) 38px 16px / 18px no-repeat; }
  .lfc-site-footer .lfc-footer-brand { grid-column: 1 / -1; }
  .lfc-site-footer h2 { font-size: 21px !important; margin-bottom: 12px !important; }
  .lfc-site-footer > div:last-of-type { grid-column: 1 / -1; }
  .lfc-site-footer .lfc-text-link {
    display: inline-flex !important; margin-top: 12px; min-height: 52px; padding: 0 28px; border-radius: 999px; gap: 14px;
    background: #EBA9CF; text-decoration: none !important; font-size: 17px; box-shadow: 0 12px 22px -12px rgba(200, 110, 160, .75);
  }
}

@media (prefers-reduced-motion: reduce) {
  section a.framer-womO9, .lfc-home-intro .lfc-button { transition: none !important; }
  .lfc-swipe { scroll-behavior: auto; }
  .lfc-swipe-dots span { transition: none; }
}
