/* ============================================================
   lefelin — Page « À propos » (design éditorial Crème/Ocre)
   Scopé sous .lf-aboutpg — autoportant (n'a pas besoin de body.lefelin).
   Palette & typo alignées sur le design Sérénité / blog v2.
   ============================================================ */
.lf-aboutpg{
  --page:#faf5eb; --beige:#f1e8d8; --card:#ffffff;
  --ink:#2b2218; --sub:#8a7c64;
  --line:#e7dcc7; --line2:#e1d5bd;
  --accent:#b07a3c; --accent-soft:#f1e4cf; --accent-ink:#fff8ee;
  --warm:#f6efe1; --beige-deep:#e4d6bb;
  --serif:'Fraunces',Georgia,serif;
  --sans:'Manrope',system-ui,-apple-system,sans-serif;
  --max:1180px;
  font-family:var(--sans);
  background:var(--page);
  color:var(--ink);
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
.lf-aboutpg *{box-sizing:border-box;}
.lf-aboutpg img{display:block;max-width:100%;}
.lf-aboutpg a{color:inherit;text-decoration:none;}
.lf-aboutpg button{font-family:inherit;cursor:pointer;}

.lf-aboutpg .wrap{max-width:var(--max);margin:0 auto;padding:0 32px;}

/* ---------- atoms ---------- */
.lf-aboutpg .eyebrow{display:inline-flex;align-items:center;gap:9px;font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--accent);font-weight:700;}
.lf-aboutpg .eyebrow::before{content:"";width:22px;height:1.5px;background:var(--accent);}
.lf-aboutpg .eyebrow.center{justify-content:center;}
.lf-aboutpg .eyebrow.center::after{content:"";width:22px;height:1.5px;background:var(--accent);}

.lf-aboutpg .btn{display:inline-flex;align-items:center;gap:10px;background:var(--accent);color:var(--accent-ink);font-weight:700;font-size:15px;padding:14px 26px;border-radius:11px;border:none;box-shadow:0 14px 30px -18px rgba(176,122,60,.9);transition:background .25s,transform .3s cubic-bezier(.2,.7,.2,1),box-shadow .3s;}
.lf-aboutpg .btn:hover{background:#9c6730;transform:translateY(-2px);}
.lf-aboutpg .btn svg{stroke:var(--accent-ink);transition:transform .25s;}
.lf-aboutpg .btn:hover svg{transform:translateX(3px);}
.lf-aboutpg .btn-ghost{display:inline-flex;align-items:center;gap:10px;background:transparent;color:var(--ink);font-weight:700;font-size:15px;padding:14px 24px;border-radius:11px;border:1.5px solid var(--line2);transition:border-color .25s,color .25s;}
.lf-aboutpg .btn-ghost:hover{border-color:var(--accent);color:var(--accent);}

.lf-aboutpg .sec-head{text-align:center;max-width:660px;margin:0 auto 52px;}
.lf-aboutpg .sec-head .eyebrow{margin-bottom:16px;}
.lf-aboutpg .sec-head h2{font-family:var(--serif);font-weight:400;font-size:clamp(30px,4vw,44px);line-height:1.12;letter-spacing:-.01em;margin:0;color:var(--ink);text-wrap:balance;}

.lf-aboutpg .block{padding:90px 0;}
.lf-aboutpg .bg-beige{background:var(--beige);}

/* ===== hero ===== */
.lf-aboutpg .crumb{display:flex;align-items:center;gap:9px;font-size:12.5px;font-weight:600;color:var(--sub);margin-bottom:26px;}
.lf-aboutpg .crumb a:hover{color:var(--accent);}
.lf-aboutpg .crumb svg{stroke:#c3b59a;}
.lf-aboutpg .hero{position:relative;overflow:hidden;padding:58px 0 34px;}
.lf-aboutpg .hero-blob{position:absolute;top:-150px;right:-130px;width:480px;height:480px;border-radius:50%;background:radial-gradient(circle,rgba(176,122,60,.10),transparent 68%);pointer-events:none;}
.lf-aboutpg .hero-inner{display:grid;grid-template-columns:1.05fr .95fr;gap:60px;align-items:stretch;}
.lf-aboutpg .hero h1{font-family:var(--serif);font-weight:400;font-size:clamp(40px,5.4vw,62px);line-height:1.05;letter-spacing:-.015em;margin:22px 0 0;color:var(--ink);text-wrap:balance;}
.lf-aboutpg .hero h1 em{font-style:italic;color:var(--accent);}
.lf-aboutpg .hero .lead{font-size:18.5px;color:#5a4f3e;line-height:1.75;margin:26px 0 34px;max-width:50ch;}
.lf-aboutpg .hero .lead b,.lf-aboutpg .hero .lead strong{color:var(--ink);font-weight:700;}
.lf-aboutpg .hero-cta{display:flex;flex-wrap:wrap;gap:14px;}
.lf-aboutpg .hero-media{position:relative;min-height:440px;}
.lf-aboutpg .hero-media .frame{position:absolute;inset:0;border-radius:22px;overflow:hidden;border:1px solid var(--line);box-shadow:0 40px 80px -52px rgba(60,46,28,.55);}
.lf-aboutpg .hero-media .frame img{width:100%;height:100%;object-fit:cover;}
.lf-aboutpg .photo-badge{position:absolute;display:flex;align-items:center;gap:12px;background:rgba(255,255,255,.94);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.6);border-radius:0 16px 0 22px;padding:13px 18px 13px 16px;box-shadow:0 18px 40px -24px rgba(40,30,16,.5);}
.lf-aboutpg .photo-badge.bl{left:0;bottom:0;}
.lf-aboutpg .photo-badge.tl{left:0;bottom:0;}
.lf-aboutpg .photo-badge .ic{width:40px;height:40px;border-radius:11px;background:var(--accent-soft);display:grid;place-items:center;flex-shrink:0;}
.lf-aboutpg .photo-badge .ic svg{stroke:var(--accent);}
.lf-aboutpg .photo-badge b{display:block;font-size:13.5px;color:var(--ink);font-weight:700;line-height:1.2;}
.lf-aboutpg .photo-badge span{font-size:12px;color:var(--sub);}
.lf-aboutpg .photo-badge.tl .yr{font-family:var(--serif);font-weight:500;font-size:24px;color:var(--accent);line-height:1;}
.lf-aboutpg .photo-badge.tl .yk{font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--sub);font-weight:700;margin-top:3px;display:block;}
@media(max-width:900px){.lf-aboutpg .hero-inner{grid-template-columns:1fr;gap:44px;}.lf-aboutpg .hero-media{aspect-ratio:4/5;min-height:0;}}

/* ===== mani-head (en-têtes de section éditoriaux) ===== */
.lf-aboutpg .mani-head{display:flex;align-items:baseline;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line2);padding-bottom:18px;margin-bottom:6px;}
.lf-aboutpg .mani-head h2{font-family:var(--serif);font-weight:400;font-size:clamp(26px,3.6vw,40px);margin:0;letter-spacing:-.01em;color:var(--ink);}
.lf-aboutpg .mani-head span{font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--sub);font-weight:700;white-space:nowrap;}
@media(max-width:860px){.lf-aboutpg .mani-head{flex-direction:column;align-items:flex-start;gap:8px;}}

/* ===== values — bandeau éditorial (filets fins) ===== */
.lf-aboutpg .values{display:grid;grid-template-columns:repeat(4,1fr);gap:0;}
.lf-aboutpg .values.cols-3{grid-template-columns:repeat(3,1fr);}
.lf-aboutpg .vitem{padding:4px 34px;border-left:1px solid var(--line2);}
.lf-aboutpg .vitem:first-child{padding-left:0;border-left:none;}
.lf-aboutpg .vitem .vn{display:flex;align-items:center;gap:12px;font-family:var(--serif);font-size:13.5px;color:var(--accent);letter-spacing:.06em;margin-bottom:13px;}
.lf-aboutpg .vitem .vn::after{content:"";flex:1;height:1px;background:var(--line2);}
.lf-aboutpg .vitem .ic{margin-bottom:11px;color:var(--accent);display:block;}
.lf-aboutpg .vitem .ic svg{stroke:var(--accent);width:25px;height:25px;}
.lf-aboutpg .vitem h3{font-family:var(--serif);font-weight:500;font-size:18px;margin:0 0 8px;color:var(--ink);line-height:1.2;}
.lf-aboutpg .vitem p{font-size:13.5px;line-height:1.65;color:var(--sub);margin:0;}
@media(max-width:860px){
  .lf-aboutpg .values,.lf-aboutpg .values.cols-3{grid-template-columns:1fr 1fr;}
  .lf-aboutpg .vitem{padding:28px 28px;border-left:1px solid var(--line2);border-top:1px solid var(--line2);}
  .lf-aboutpg .vitem:nth-child(-n+2){border-top:none;}
  .lf-aboutpg .vitem:nth-child(odd){border-left:none;padding-left:0;}
}
@media(max-width:480px){
  .lf-aboutpg .values,.lf-aboutpg .values.cols-3{grid-template-columns:1fr;}
  .lf-aboutpg .vitem{border-left:none;padding:26px 0;border-top:1px solid var(--line2);}
  .lf-aboutpg .vitem:first-child{padding-top:4px;border-top:none;}
}

/* ===== story split ===== */
.lf-aboutpg .split{display:grid;grid-template-columns:1fr 1.05fr;gap:60px;align-items:center;}
.lf-aboutpg .split .media{position:relative;border-radius:22px;overflow:hidden;border:1px solid var(--line);box-shadow:0 34px 70px -48px rgba(60,46,28,.55);}
.lf-aboutpg .split .media img{width:100%;aspect-ratio:4/5;object-fit:cover;}
.lf-aboutpg .split .copy h2{font-family:var(--serif);font-weight:400;font-size:clamp(28px,3.6vw,42px);line-height:1.12;margin:18px 0 22px;color:var(--ink);letter-spacing:-.01em;text-wrap:balance;}
.lf-aboutpg .split .copy p{font-size:16.5px;color:#5a4f3e;line-height:1.78;margin:0 0 18px;}
.lf-aboutpg .split .copy p b,.lf-aboutpg .split .copy p strong{color:var(--ink);font-weight:700;}
.lf-aboutpg .story-quote{margin:28px 0 0;padding:22px 26px;background:var(--warm);border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:14px;}
.lf-aboutpg .story-quote p{font-family:var(--serif);font-style:italic;font-size:18px;line-height:1.55;color:var(--ink);margin:0;}
@media(max-width:860px){.lf-aboutpg .split{grid-template-columns:1fr;gap:38px;}.lf-aboutpg .split .media{max-width:480px;}}

/* ===== grille d'évaluation / catégories (.mrow) ===== */
.lf-aboutpg .mrow{display:grid;grid-template-columns:90px 1fr 1.4fr;gap:30px;align-items:start;padding:30px 18px;border-bottom:1px solid var(--line2);border-radius:14px;will-change:transform;transition:background .5s cubic-bezier(.22,.61,.36,1),box-shadow .5s cubic-bezier(.22,.61,.36,1),transform .5s cubic-bezier(.22,.61,.36,1);}
.lf-aboutpg .mrow:hover{background:var(--warm);box-shadow:0 16px 36px -26px rgba(60,46,28,.55);transform:translateX(10px);}
/* .mrow porte aussi .rv (reveal) dont la transition écrasait celle du hover → on la rétablit ici, plus spécifique */
.lf-aboutpg .mrow.rv{transition:opacity .6s cubic-bezier(.2,.7,.2,1),background .5s cubic-bezier(.22,.61,.36,1),box-shadow .5s cubic-bezier(.22,.61,.36,1),transform .5s cubic-bezier(.22,.61,.36,1);}
.lf-aboutpg .mrow .n{font-family:var(--serif);font-weight:400;font-size:34px;color:var(--accent);line-height:1;transition:transform .5s cubic-bezier(.22,.61,.36,1);}
.lf-aboutpg .mrow:hover .n{transform:translateX(4px);}
.lf-aboutpg .mrow h3{font-family:var(--serif);font-weight:500;font-size:21px;margin:0;line-height:1.2;color:var(--ink);}
.lf-aboutpg .mrow p{margin:0;font-size:15px;line-height:1.7;color:var(--sub);}
@media(max-width:860px){
  .lf-aboutpg .mrow{grid-template-columns:54px 1fr;gap:14px 22px;}
  .lf-aboutpg .mrow p{grid-column:2;}
}
.lf-aboutpg .cat-cta{text-align:center;margin-top:46px;}

/* ===== faq — cartes (même animation que le reste du site, cf. lf-faq__*) ===== */
.lf-aboutpg .faq-wrap{max-width:800px;margin:0 auto;}
.lf-aboutpg .faq{display:grid;gap:14px;}
.lf-aboutpg .qa{background:var(--card);border:1px solid var(--line);border-radius:18px;transition:border-color .35s ease,box-shadow .35s ease,transform .25s ease;}
.lf-aboutpg .qa:hover{transform:translateY(-2px);}
.lf-aboutpg .qa.open{border-color:var(--accent);box-shadow:0 18px 40px -26px rgba(60,46,28,.5);}
.lf-aboutpg .qa .q{width:100%;display:flex;align-items:center;gap:16px;background:none;border:none;cursor:pointer;font-family:var(--serif);font-weight:500;font-size:clamp(17px,2vw,20px);color:var(--ink);text-align:left;padding:20px 22px;line-height:1.35;letter-spacing:-.01em;}
.lf-aboutpg .qa .q .pm{position:relative;margin-left:auto;flex-shrink:0;width:30px;height:30px;border-radius:999px;background:var(--accent-soft);transition:background .35s ease,transform .42s cubic-bezier(.4,0,.2,1);}
.lf-aboutpg .qa .q .pm::before,.lf-aboutpg .qa .q .pm::after{content:"";position:absolute;left:50%;top:50%;width:12px;height:1.8px;border-radius:2px;background:var(--accent);transform:translate(-50%,-50%);transition:background .3s;}
.lf-aboutpg .qa .q .pm::after{transform:translate(-50%,-50%) rotate(90deg);}
.lf-aboutpg .qa.open .q .pm{background:var(--accent);transform:rotate(135deg);}
.lf-aboutpg .qa.open .q .pm::before,.lf-aboutpg .qa.open .q .pm::after{background:var(--accent-ink);}
.lf-aboutpg .qa .a{display:grid;grid-template-rows:0fr;transition:grid-template-rows .42s cubic-bezier(.4,0,.2,1);}
.lf-aboutpg .qa.open .a{grid-template-rows:1fr;}
.lf-aboutpg .qa .a .inner{overflow:hidden;}
.lf-aboutpg .qa .a p{margin:0;padding:0 22px 22px 22px;font-size:15px;line-height:1.75;color:var(--sub);}
/* sans JS : réponses visibles */
.lf-aboutpg .faq:not(.faq--ready) .qa .a{grid-template-rows:1fr;}
.lf-aboutpg .faq:not(.faq--ready) .qa .q .pm{display:none;}

/* ===== cta — panneau image premium ===== */
.lf-aboutpg .cta{position:relative;border-radius:28px;overflow:hidden;min-height:440px;display:flex;align-items:center;box-shadow:0 40px 90px -56px rgba(60,46,28,.6);}
.lf-aboutpg .cta img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.lf-aboutpg .cta::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(28,20,11,.88) 0%,rgba(28,20,11,.64) 44%,rgba(28,20,11,.12) 100%);}
.lf-aboutpg .cta .inner{position:relative;z-index:2;max-width:560px;padding:58px 62px;color:#fff;}
.lf-aboutpg .cta .inner .eyebrow{color:#f0d9b4;}
.lf-aboutpg .cta .inner .eyebrow::before{background:#f0d9b4;}
.lf-aboutpg .cta h2{font-family:var(--serif);font-weight:400;font-size:clamp(30px,4vw,48px);margin:18px 0 16px;color:#fff;line-height:1.06;text-wrap:balance;}
.lf-aboutpg .cta p{font-size:16.5px;color:#ecdfca;margin:0 0 32px;line-height:1.75;max-width:44ch;}
.lf-aboutpg .cta .btn{background:#fff;color:var(--ink);}
.lf-aboutpg .cta .btn:hover{background:#f5ead4;}
.lf-aboutpg .cta .btn svg{stroke:var(--ink);}
@media(max-width:620px){.lf-aboutpg .cta{min-height:0;}.lf-aboutpg .cta .inner{padding:44px 28px;}.lf-aboutpg .cta::after{background:linear-gradient(0deg,rgba(28,20,11,.92),rgba(28,20,11,.55));}}

/* ===== reveal au scroll ===== */
.lf-aboutpg .rv{opacity:0;transform:translateY(28px);transition:opacity .75s cubic-bezier(.2,.7,.2,1),transform .75s cubic-bezier(.2,.7,.2,1);will-change:opacity,transform;}
.lf-aboutpg .rv.rv-in{opacity:1;transform:none;}
@media(prefers-reduced-motion:reduce){
  .lf-aboutpg .rv,.lf-aboutpg .rv.rv-in{opacity:1!important;transform:none!important;}
  .lf-aboutpg *{animation:none!important;transition:none!important;}
}

/* Pas de bande blanche entre la dernière section et le footer : le <main>
   Minimog a un padding-bottom (fond transparent → blanc du body visible).
   Neutralisé uniquement pour nos templates (classe de suffixe sur le body). */
body.lf-about main,
body.lf-faq main,
body.lf-contact main,
body.template-policy main {
  padding-bottom: 0 !important;
}

/* ===== Instagram — grille native (l'app Instafeed étant vide) ===== */
.lf-aboutpg .insta{padding-top:0;}
.lf-aboutpg .insta-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:34px;}
.lf-aboutpg .insta-head .eyebrow{margin-bottom:10px;}
.lf-aboutpg .insta-head h2{font-family:var(--serif);font-weight:400;font-size:clamp(26px,3.4vw,40px);margin:0;color:var(--ink);letter-spacing:-.01em;}
.lf-aboutpg .insta-follow{display:inline-flex;align-items:center;gap:9px;font-size:14px;font-weight:700;color:#fff;background:var(--accent);padding:13px 22px;border-radius:99px;white-space:nowrap;box-shadow:0 14px 30px -18px rgba(176,122,60,.9);transition:background .2s,transform .2s;}
.lf-aboutpg .insta-follow:hover{background:#9c6730;transform:translateY(-2px);}
.lf-aboutpg .insta-follow svg{stroke:#fff;}
.lf-aboutpg .insta-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;}
.lf-aboutpg .insta-grid a{position:relative;border-radius:14px;overflow:hidden;aspect-ratio:1/1;border:1px solid var(--line);}
.lf-aboutpg .insta-grid img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1);}
.lf-aboutpg .insta-grid a:hover img{transform:scale(1.1);}
.lf-aboutpg .insta-grid a::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(28,20,11,.55),rgba(28,20,11,.04) 60%);opacity:0;transition:opacity .35s;}
.lf-aboutpg .insta-grid a:hover::after{opacity:1;}
.lf-aboutpg .insta-grid .igico{position:absolute;left:50%;top:50%;transform:translate(-50%,-42%) scale(.78);opacity:0;color:#fff;z-index:2;transition:opacity .35s,transform .4s cubic-bezier(.2,.7,.2,1);}
.lf-aboutpg .insta-grid a:hover .igico{opacity:1;transform:translate(-50%,-50%) scale(1);}
@media(max-width:860px){.lf-aboutpg .insta-grid{grid-template-columns:repeat(3,1fr);}}
@media(max-width:480px){.lf-aboutpg .insta-grid{grid-template-columns:repeat(2,1fr);}.lf-aboutpg .insta-head{flex-direction:column;align-items:flex-start;}}
