/* Page Lead-ADNS (/lead-adns), maquette « nuit et or » du 25/10/2026.
   Décisions d'Antoine du 25/10 : palette nuit et or (la même que celle prévue pour l'Acquisition B2B, famille « acquisition ») ;
   le sombre reste rare : haut de page, une bande de preuve, appel final ; le reste de la page est clair ; le jaune soleil
   #FFDA1A n'est qu'un accent (bouton, nœud de la frise, pastille). Se charge après ad-gipco-v3.css, limitée à main.ld
   (et à l'en-tête posé sur sa photo). Gabarits : A scène d'objets (définition, canaux, fichier), B détail photographique
   (livraison), frise (mission), bande de preuve sombre (ancienneté des outils).
   Jetons : encre #0c1320, nuit #131c2e, neige #f6f5f1, sable #ebe8df, filet #dcd8cc, gris #5f6966 (5,2:1 sur neige, 4,6:1 sur
   sable), or sur clair #7a5a0e (5,2:1 sur sable), or sur nuit #e0b95a (9,1:1), gris sur nuit #b0b8c6, aplat clair #e8ecf1. */

main.ld { --gp-encre:#0c1320; --gp-nuit:#131c2e; --gp-neige:#f6f5f1; --gp-sable:#ebe8df; --gp-filet:#dcd8cc; --gp-texte:#0c1320;
          --gp-doux:#444b57; --gp-discret:#5f6966;
          --ld-or:#7a5a0e; --ld-or-nuit:#e0b95a; --ld-clair:#e8ecf1; --ld-doux-nuit:#b0b8c6; --ld-ombre:12,19,32; --ld-ok:#0f7a47; --ld-ok-fond:#e5f4ec; }

/* ---------- en-tête posé sur la photo, menu ouvert ---------- */
body:has(main.ld) .ad-entete { --ad-fond:#0c1320; }
body:has(main.ld) .ad-entete:has(.ad-menu[open]) { background:#0c1320; }

main.ld .gp-sec { padding:clamp(56px,8vw,120px) 0; }
main.ld h2 { font-size:clamp(30px,3.9vw,54px); line-height:1; }

/* ---------- haut de page : photo d'ambiance, une seule fiche ---------- */
/* 25/10 : le héros passe de 880 à 740 px (bande sombre vide de 200 px sous le plateau, retirée à la demande d'Antoine). Le bord
   du plateau est à 976 px dans l'image source ; il est posé à 700 px du haut du héros, quelle que soit la largeur (1 280 à 1 920 et plus). */
main.ld .gp-hero { height:740px; background:var(--gp-encre); }
main.ld .gp-photo { background-image:url(/images/lead-v1/heros-1920.webp); background-position:100% min(0px, calc(700px - 50.83vw)); }
main.ld .gp-voile { background:linear-gradient(90deg,rgba(var(--ld-ombre),.55),rgba(var(--ld-ombre),.22) 38%,rgba(var(--ld-ombre),0) 54%),
                                 linear-gradient(180deg,rgba(var(--ld-ombre),.5),rgba(var(--ld-ombre),0) 16%,rgba(var(--ld-ombre),0) 72%,rgba(var(--ld-ombre),.5) 100%); }
main.ld .gp-hero h1 { font-size:clamp(38px,3.6vw,52px); line-height:1; }
main.ld .gp-hero__t { width:min(640px,48%); }
main.ld .gp-hero .gp-sur { color:var(--ld-or-nuit); }
main.ld .gp-hero .gp-chap { color:rgba(255,255,255,.86); }
main.ld .gp-hero .gp-chap2 { color:rgba(255,255,255,.74); }
main.ld .ld-cta { display:flex; flex-wrap:wrap; align-items:center; gap:6px 28px; margin-top:36px; }
main.ld .ld-cta .gp-btn { margin-top:0; }
main.ld .ld-lien2 { display:inline-block; padding:10px 0; line-height:24px; color:#fff; font-size:15px; font-weight:500; text-decoration:underline; text-decoration-color:rgba(255,218,26,.75); text-underline-offset:5px; }
main.ld .ld-lien2:focus-visible { outline:3px solid #fff; outline-offset:3px; }
/* la fiche se pose sur la table, entre le texte et la personne (jamais sur elle) ; coordonnées relatives à .gp-w */
@media (min-width: 1280px) {
  main.ld .gp-hero__scene { top:300px; left:calc(632px - .01vw); right:auto; width:min(26.5vw,440px); transform:none; }
}
/* en dessous de 1 280 px la place entre le texte et la personne manque : la fiche passe sous le texte */
@media (max-width: 1279px) {
  main.ld .gp-hero { height:auto; padding-bottom:56px; }
  main.ld .gp-photo, main.ld .gp-voile { bottom:auto; height:640px; }
  main.ld .gp-voile { background:linear-gradient(180deg,rgba(var(--ld-ombre),.5) 0%,rgba(var(--ld-ombre),.1) 24%,rgba(var(--ld-ombre),.55) 56%,rgba(var(--ld-ombre),1) 100%); }
  main.ld .gp-hero__in { padding-top:270px; }
  main.ld .gp-hero__t { width:auto; max-width:640px; }
  main.ld .gp-hero__scene { position:relative; top:auto; left:auto; right:auto; width:auto; max-width:460px; margin:44px 0 0; transform:none; }
}
/* [25/10/2026] Antoine (sur iPhone) : « l'illustration hero est mauvaise ». La reprise du carré heros-900 (celui
   du bureau, recadré pour la carte du haut de page) laissait, une fois re-coupée à droite sur 390 px, surtout
   un pan de mur vide avec le sujet minuscule dans un coin, et le bureau mangé par le voile opaque du bas.
   Recadrage dédié, plus serré sur le sujet et son bureau, depuis la même source (heros-f.png) :
   images/lead-v1/heros-mobile.webp (586 × 874), avec `cover` au lieu du calcul hauteur fixe + position 100 %. */
@media (max-width: 760px) { main.ld .gp-photo { background-image:url(/images/lead-v1/heros-mobile.webp); background-position:68% 0; background-size:cover; } }
@media (max-width: 640px) {
  main.ld .gp-hero h1 { font-size:32px; }
  main.ld .gp-hero__in { padding-top:280px; }
  main.ld .ld-cta { display:block; margin-top:26px; }
  main.ld .gp-btn { width:100%; text-align:center; }
  main.ld .ld-lien2 { display:block; text-align:center; margin-top:8px; }
}
@media (max-width: 360px) { main.ld .gp-hero h1 { font-size:27px; } main.ld h2 { font-size:28px; } }

/* ---------- objets : échelle en em dans un cadre de requête de conteneur ---------- */
main.ld .ld-obj { container-type:inline-size; width:100%; text-align:left; color:var(--gp-texte); font-family:var(--gp-corps); }
main.ld .ld-in { --ld-b:max(13px,min(calc(100cqw / var(--ld-w,24)),16px)); font-size:var(--ld-b); line-height:1.35; padding:1.1em 1.2em 1.2em; border-radius:.9em; position:relative; }
main.ld .ld-in b { font-weight:600; }
main.ld .ld-papier .ld-in { background:#fff; box-shadow:0 0 0 1px rgba(var(--ld-ombre),.08),-6px 14px 28px -14px rgba(var(--ld-ombre),.32),-18px 36px 60px -34px rgba(var(--ld-ombre),.3); }
main.ld .ld-hd { display:flex; justify-content:space-between; align-items:center; gap:.8em; margin-bottom:.85em; }
main.ld .ld-hd b { display:flex; align-items:center; gap:.55em; font:600 1em/1.2 var(--gp-titre); letter-spacing:-.01em; }
main.ld .ld-hd b i { flex:none; width:1.9em; height:1.9em; border-radius:.55em; background:var(--gp-encre); color:#fff; display:grid; place-items:center; font-size:.9em; }
main.ld .ld-pill { display:inline-flex; align-items:center; gap:.35em; padding:.28em .7em; border-radius:99px; font-size:.86em; font-weight:600; white-space:nowrap; }
main.ld .ld-pill--ok { background:var(--ld-ok-fond); color:var(--ld-ok); }
main.ld .ld-pill--att { background:#fff3c4; color:#5c4400; }
main.ld .ld-id { display:grid; gap:.15em; margin-bottom:.5em; }
main.ld .ld-id b { font:600 1.28em/1.2 var(--gp-titre); letter-spacing:-.015em; overflow-wrap:anywhere; }
main.ld .ld-id span { font-size:.9em; color:var(--gp-doux); overflow-wrap:anywhere; }
main.ld .ld-kv { margin:0; }
main.ld .ld-kv > div { display:grid; grid-template-columns:5.6em minmax(0,1fr); gap:.6em; padding:.5em 0; border-top:1px solid #e7e4dc; font-size:.92em; }
main.ld .ld-kv dt { color:var(--gp-discret); font-size:.92em; }
main.ld .ld-kv dd { margin:0; font-weight:500; overflow-wrap:anywhere; }
main.ld .ld-besoin { margin-top:.7em; padding:.8em .95em; border-radius:.6em; background:#f3f1ea; }
main.ld .ld-besoin span { display:block; font-size:.84em; color:var(--gp-discret); margin-bottom:.25em; }
main.ld .ld-besoin p { font-size:.95em; line-height:1.4; margin:0; }
main.ld .ld-ctl { display:flex; flex-wrap:wrap; gap:.45em 1em; margin:.95em 0 0; padding:.85em 0 0; border-top:1px solid #e7e4dc; list-style:none; font-size:.9em; font-weight:600; }
main.ld .ld-ctl li { display:flex; align-items:center; gap:.4em; }
main.ld .ld-ctl i { color:var(--ld-ok); font-size:1.15em; }

/* verre teinté sur la photo (fiche du haut de page) */
main.ld .ld-fiche .ld-in { background:rgba(19,28,46,.86); color:#fff; padding:1.3em 1.4em 1.4em; border-radius:1em;
  box-shadow:0 0 0 1px rgba(255,255,255,.16),0 2px 4px rgba(0,0,0,.2),-10px 26px 50px -16px rgba(0,0,0,.65),-30px 60px 100px -34px rgba(0,0,0,.6);
  -webkit-backdrop-filter:blur(14px); backdrop-filter:blur(14px); }
main.ld .ld-fiche .ld-hd b i { background:var(--ld-or-nuit); color:var(--gp-encre); }
main.ld .ld-fiche .ld-pill--ok { background:rgba(111,214,161,.16); color:#8de6b6; }
main.ld .ld-fiche .ld-id span { color:var(--ld-doux-nuit); }
main.ld .ld-fiche .ld-kv > div { border-top-color:rgba(255,255,255,.14); }
main.ld .ld-fiche .ld-kv dt { color:var(--ld-doux-nuit); }
main.ld .ld-fiche .ld-besoin { background:rgba(255,255,255,.08); }
main.ld .ld-fiche .ld-besoin span { color:var(--ld-doux-nuit); }
main.ld .ld-fiche .ld-ctl { border-top-color:rgba(255,255,255,.14); }
main.ld .ld-fiche .ld-ctl i { color:#6fd6a1; }

/* ---------- gabarit A : scène d'objets sur aplat clair ---------- */
main.ld .pan.ld-clair { aspect-ratio:auto; overflow:hidden; border-radius:14px; display:grid; place-items:center; padding:clamp(18px,3vw,40px);
  background:radial-gradient(ellipse 70% 80% at 92% 0%,rgba(255,255,255,.95),rgba(255,255,255,0) 60%),var(--ld-clair); box-shadow:inset 0 0 0 1px rgba(var(--ld-ombre),.08); }
main.ld .gp-sable .pan.ld-clair { background:radial-gradient(ellipse 70% 80% at 92% 0%,rgba(255,255,255,.9),rgba(255,255,255,0) 60%),#f1f3f6; }
main.ld .pan.ld-clair .ld-obj { max-width:480px; }

/* définition : quatre objets en progression, le dernier seul mis en valeur */
main.ld .ld-prog { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:clamp(18px,2.4vw,36px); margin:clamp(40px,6vw,72px) 0 0; padding:0; list-style:none; }
main.ld .ld-prog__c { display:flex; flex-direction:column; position:relative; }
main.ld .ld-prog__o { position:relative; flex:none; min-height:clamp(230px,21vw,290px); display:grid; place-items:center; padding:clamp(12px,1.4vw,20px); margin-bottom:26px; border-radius:14px;
  background:radial-gradient(ellipse 70% 80% at 92% 0%,rgba(255,255,255,.9),rgba(255,255,255,0) 60%),#eef0f3; box-shadow:inset 0 0 0 1px rgba(var(--ld-ombre),.07); }
main.ld .ld-prog__o .ld-obj { max-width:300px; }
main.ld .ld-prog__c:not(:last-child) .ld-prog__o::after { content:""; position:absolute; top:50%; left:100%; width:clamp(18px,2.4vw,36px); border-top:2px dotted rgba(var(--ld-ombre),.4); }
main.ld .ld-prog__c--lead .ld-prog__o { background:radial-gradient(ellipse 80% 70% at 90% 0%,#fff,rgba(255,255,255,0) 62%),#e4e8ee; box-shadow:inset 0 0 0 1.5px rgba(var(--ld-ombre),.55); }
main.ld .ld-prog__c--lead .ld-prog__o::before { content:""; position:absolute; left:-6px; top:calc(50% - 6px); width:12px; height:12px; border-radius:50%; background:var(--gp-soleil); box-shadow:0 0 0 4px rgba(255,218,26,.28),inset 0 0 0 1px rgba(var(--ld-ombre),.25); z-index:2; }
main.ld .ld-prog__c--lead .ld-papier .ld-in { box-shadow:0 0 0 1px rgba(var(--ld-ombre),.12),-8px 18px 34px -14px rgba(var(--ld-ombre),.45),-22px 40px 70px -34px rgba(var(--ld-ombre),.4); }
main.ld .ld-prog__c:not(.ld-prog__c--lead) .ld-papier .ld-in { box-shadow:0 0 0 1px rgba(var(--ld-ombre),.07),-3px 8px 16px -10px rgba(var(--ld-ombre),.22); }
main.ld .ld-rub { font:600 clamp(19px,1.7vw,22px)/1.25 var(--gp-titre); letter-spacing:-.015em; }
main.ld .ld-prog__c p:not(.ld-rub) { margin-top:10px; font-size:15.5px; line-height:1.6; color:var(--gp-doux); }
main.ld .ld-prog__c--lead .ld-rub { display:flex; align-items:center; gap:10px; }
main.ld .ld-prog__c--lead .ld-rub::after { content:""; flex:none; width:10px; height:10px; border-radius:50%; background:var(--gp-soleil); box-shadow:inset 0 0 0 1px rgba(17,17,18,.22); }
main.ld .ld-prog__c--lead p:not(.ld-rub) { color:var(--gp-texte); }

/* objets de la définition */
main.ld .ld-th, main.ld .ld-tr { display:grid; grid-template-columns:minmax(0,1.3fr) minmax(0,1fr); gap:.6em; padding:.55em .15em; border-top:1px solid #e7e4dc; font-size:.9em; }
main.ld .ld-th { border-top:0; color:var(--gp-discret); font-size:.84em; font-weight:600; }
main.ld .ld-tr span { overflow-wrap:anywhere; }
main.ld .ld-tr--ghost { color:var(--gp-discret); }
main.ld .ld-tr--sub { border-top:0; padding-top:0; margin-top:-.35em; font-size:.82em; color:var(--gp-discret); }
main.ld .ld-th--3, main.ld .ld-tr--3 { grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) minmax(0,.7fr); }
main.ld .ld-ad { display:flex; flex-wrap:wrap; gap:.4em .6em; align-items:center; font-size:.84em; color:var(--gp-discret); }
main.ld .ld-ad__tag { padding:.05em .45em; border-radius:.35em; box-shadow:inset 0 0 0 1px var(--gp-discret); font-weight:600; color:var(--gp-doux); }
main.ld .ld-ad__t { display:block; margin-top:.6em; font:600 1.15em/1.25 var(--gp-titre); letter-spacing:-.01em; }
main.ld .ld-ad__d { margin:.4em 0 0; font-size:.92em; color:var(--gp-doux); }
main.ld .ld-clic { display:flex; align-items:center; gap:.55em; margin-top:1em; padding-top:.8em; border-top:1px dashed #cfcabb; font-size:.92em; font-weight:600; }
main.ld .ld-clic i { display:grid; place-items:center; width:2em; height:2em; border-radius:50%; background:var(--gp-encre); color:#fff; font-size:.9em; }
main.ld .ld-champs { margin:0; }
main.ld .ld-champs > div { padding:.55em 0; border-top:1px solid #e7e4dc; }
main.ld .ld-champs dt { color:var(--gp-discret); font-size:.84em; }
main.ld .ld-champs dd { margin:.1em 0 0; font-weight:500; overflow-wrap:anywhere; }

/* canaux */
main.ld .ld-canaux { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); grid-template-rows:repeat(5,auto); column-gap:clamp(32px,5vw,72px); row-gap:0; margin-top:clamp(40px,6vw,64px); }
main.ld .ld-canal { display:grid; grid-row:span 5; grid-template-rows:subgrid; align-content:start; }
main.ld .ld-canal .pan { margin-bottom:28px; }
main.ld .ld-canal h3 { font-size:clamp(22px,2vw,26px); line-height:1.2; }
main.ld .ld-etiq { justify-self:start; align-self:start; margin-top:12px; padding:.3em .85em; border-radius:99px; background:#fff; box-shadow:inset 0 0 0 1px var(--gp-filet); font-size:13.5px; font-weight:600; color:var(--gp-doux); }
main.ld .ld-canal p:not(.ld-etiq) { margin-top:14px; font-size:16px; line-height:1.65; color:var(--gp-doux); }
main.ld .ld-lien { display:inline-block; padding:10px 0; line-height:24px; margin-top:6px; color:var(--gp-texte); font-weight:600; font-size:15.5px; text-decoration:underline; text-decoration-color:var(--ld-or); text-decoration-thickness:1.5px; text-underline-offset:5px; }
main.ld .ld-lien:focus-visible { outline:2px solid var(--gp-encre); outline-offset:3px; }
@media (hover:hover) { main.ld .ld-lien:hover { text-decoration-color:var(--gp-encre); } }
main.ld .ld-canal .ld-lien { justify-self:start; }
main.ld .ld-lien i { margin-left:.35em; vertical-align:-.12em; }
main.ld .ld-mel__de { display:grid; gap:.1em; padding:.6em 0; border-top:1px solid #e7e4dc; }
main.ld .ld-mel__de span { font-size:.88em; color:var(--gp-discret); }
main.ld .ld-mel__obj { margin:.2em 0 0; font-weight:600; }
main.ld .ld-mel__txt { margin:.5em 0 0; font-size:.95em; line-height:1.5; color:var(--gp-doux); }
main.ld .ld-nav .ld-in { padding:0; overflow:hidden; }
main.ld .ld-chrome { display:flex; align-items:center; gap:.4em; padding:.7em .9em; background:#eef0f3; border-bottom:1px solid #dfe3e8; }
main.ld .ld-chrome i { width:.62em; height:.62em; border-radius:50%; background:#c5cbd4; }
main.ld .ld-chrome span { margin-left:.6em; padding:.2em .8em; border-radius:.4em; background:#fff; font-size:.84em; color:var(--gp-discret); overflow-wrap:anywhere; }
main.ld .ld-page { padding:1.3em 1.4em 1.5em; }
main.ld .ld-page__t { display:block; font:600 1.4em/1.15 var(--gp-titre); letter-spacing:-.02em; }
main.ld .ld-page__d { margin:.4em 0 .6em; font-size:.92em; color:var(--gp-doux); }
main.ld .ld-champ { display:flex; align-items:center; min-height:2.4em; margin-top:.55em; padding:0 .8em; border:1.5px solid #bfc5cf; border-radius:.5em; font-size:.88em; color:var(--gp-discret); }
main.ld .ld-champ--haut { align-items:flex-start; min-height:3.6em; padding-top:.6em; padding-bottom:.6em; }   /* [25/10/2026] passe Impeccable : texte de « Votre besoin » qui pouvait toucher le bas du champ sans marge symétrique */
main.ld .ld-bouton { display:inline-flex; margin-top:1em; padding:.7em 1.15em; border-radius:.6em; background:var(--gp-soleil); color:#111; font-weight:600; font-size:.92em; }

/* ---------- mission : la frise ---------- */
main.ld .ld-frise { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:0 clamp(14px,2vw,28px); margin:clamp(40px,6vw,72px) 0 0; padding:0; list-style:none; counter-reset:etape; }
main.ld .ld-frise li { position:relative; padding-top:62px; counter-increment:etape; }
main.ld .ld-frise li::before { content:counter(etape); position:absolute; left:0; top:0; width:42px; height:42px; border-radius:50%; background:#fff; box-shadow:inset 0 0 0 1.5px var(--gp-encre); display:grid; place-items:center; font:600 16px var(--gp-titre); font-variant-numeric:tabular-nums; z-index:1; }
main.ld .ld-frise li::after { content:""; position:absolute; top:20px; left:54px; right:calc(-1 * clamp(14px,2vw,28px) + 12px); border-top:2px dotted rgba(var(--ld-ombre),.4); }
main.ld .ld-frise li:last-child::after { display:none; }
main.ld .ld-frise__cle::before { background:var(--gp-soleil) !important; box-shadow:inset 0 0 0 1.5px var(--gp-encre), 0 0 0 5px rgba(255,218,26,.28) !important; }
main.ld .ld-frise p:not(.ld-rub) { margin-top:10px; font-size:15px; line-height:1.6; color:var(--gp-doux); }
@media (max-width: 1099px) {
  main.ld .ld-frise { grid-template-columns:repeat(3,minmax(0,1fr)); row-gap:48px; }
  main.ld .ld-frise li:nth-child(3n)::after { display:none; }
}
@media (max-width: 640px) {
  main.ld .ld-frise { grid-template-columns:minmax(0,1fr); row-gap:0; }
  main.ld .ld-frise li { padding:0 0 32px 64px; min-height:42px; }
  main.ld .ld-frise li::after { display:block !important; top:50px; bottom:6px; left:20px; right:auto; border-top:0; border-left:2px dotted rgba(var(--ld-ombre),.4); }
  main.ld .ld-frise li:last-child::after { display:none !important; }
  main.ld .ld-frise .ld-rub { padding-top:8px; }
}

/* ---------- livraison : gabarit B, détail photographique et un seul objet ---------- */
main.ld .ld-cas { margin-top:0; }
main.ld .ld-coches { margin:30px 0 4px; padding:0; list-style:none; display:grid; gap:12px; }
main.ld .ld-coches li { position:relative; padding-left:26px; font-size:17px; line-height:1.55; font-weight:500; color:var(--gp-texte); }
main.ld .ld-coches li::before { content:""; position:absolute; left:2px; top:.62em; width:10px; height:10px; border-radius:50%; background:var(--ld-or); }
main.ld .gp-cas__t h2 + p, main.ld .ld-coches + p { margin-top:18px; }
main.ld .pan.ld-photo { aspect-ratio:612 / 600; background:var(--gp-encre); border-radius:14px; }
main.ld .ld-photo .ld-ph { position:absolute; inset:0; }
main.ld .ld-photo .ld-ph > img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:40% 50%; }
main.ld .ld-photo .ld-ph::after { content:""; position:absolute; inset:0; pointer-events:none; background:linear-gradient(200deg,rgba(var(--ld-ombre),0) 40%,rgba(var(--ld-ombre),.4) 100%); }
main.ld .ld-photo .ld-ph__obj { position:absolute; z-index:2; right:6%; top:6%; width:min(310px,58%); }
main.ld .ld-photo .ld-papier .ld-in { box-shadow:0 0 0 1px rgba(0,0,0,.06),-10px 22px 44px -14px rgba(0,0,0,.55),-30px 50px 100px -30px rgba(0,0,0,.5); }
main.ld .ld-liste-ctl { list-style:none; margin:0; padding:0; }
main.ld .ld-liste-ctl li { display:grid; grid-template-columns:1.7em minmax(0,1fr) auto; align-items:center; gap:.3em .4em; padding:.55em 0; border-top:1px solid #e7e4dc; font-size:.95em; }
main.ld .ld-liste-ctl i { color:var(--ld-ok); font-size:1.2em; }
main.ld .ld-liste-ctl em { font-style:normal; color:var(--gp-discret); font-size:.9em; }
main.ld .ld-res { display:flex; justify-content:space-between; align-items:center; gap:.8em; margin-top:.3em; padding-top:.8em; border-top:1px solid #e7e4dc; font-weight:600; }
main.ld .ld-filtres { display:flex; flex-wrap:wrap; gap:.4em; margin-bottom:.8em; }
main.ld .ld-filtres span { padding:.25em .8em; border-radius:99px; box-shadow:inset 0 0 0 1px #bfc5cf; font-size:.86em; color:var(--gp-doux); }

/* ---------- cadre ---------- */
main.ld .ld-h2c { max-width:16em; }
main.ld .ld-cadre { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(24px,4vw,56px); margin:clamp(36px,5vw,60px) 0 0; padding:0; list-style:none; }
main.ld .ld-cadre li { padding-top:26px; border-top:1px solid #cfcabb; font-size:16.5px; line-height:1.62; color:#2c3340; }
main.ld .ld-cadre__i { display:grid; place-items:center; width:46px; height:46px; margin-bottom:18px; border-radius:50%; box-shadow:inset 0 0 0 1.5px var(--ld-or); color:var(--ld-or); font-size:19px; }

/* ---------- outils : trois cartes, puis la bande de preuve sombre ---------- */
main.ld .ld-outils { padding-bottom:0; }
main.ld .ld-cartes { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(14px,2vw,24px); margin-top:clamp(36px,5vw,64px); }
main.ld .ld-carte { display:flex; flex-direction:column; gap:10px; padding:clamp(22px,2.4vw,30px); border-radius:16px; background:#fff; box-shadow:0 0 0 1px rgba(var(--ld-ombre),.08),-6px 14px 28px -18px rgba(var(--ld-ombre),.3); }
main.ld .ld-carte__i { display:grid; place-items:center; width:46px; height:46px; margin-bottom:10px; border-radius:12px; background:var(--gp-encre); color:var(--ld-or-nuit); font-size:20px; }
main.ld .ld-prod { font:600 clamp(20px,1.8vw,23px)/1.2 var(--gp-titre); letter-spacing:-.015em; color:var(--gp-texte); }
main.ld .ld-carte p:not(.ld-prod) { font-size:15.5px; line-height:1.6; color:var(--gp-doux); }
main.ld .ld-carte .ld-lien { margin-top:auto; align-self:flex-start; }
main.ld .ld-bande { margin-top:clamp(48px,7vw,96px); padding:clamp(44px,6vw,80px) 0; background:var(--gp-encre); color:#fff; }
main.ld .ld-hist { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:clamp(28px,6vw,96px); }
main.ld .ld-hist > span { display:grid; align-content:start; gap:.1em; }
main.ld .ld-hist__b { padding-left:clamp(24px,5vw,80px); border-left:1px solid rgba(255,255,255,.18); }
main.ld .ld-hist__d { font-size:15px; color:var(--ld-doux-nuit); }
main.ld .ld-hist b { font:600 clamp(64px,9vw,128px)/.9 var(--gp-titre); letter-spacing:-.05em; font-variant-numeric:tabular-nums; color:var(--ld-or-nuit); }
main.ld .ld-vir { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; }
main.ld .ld-hist__s { margin-top:14px; font-size:clamp(16px,1.4vw,19px); line-height:1.5; color:rgba(255,255,255,.9); max-width:24em; }

/* ---------- questions ---------- */
main.ld .ld-faq { display:grid; grid-template-columns:minmax(0,420fr) minmax(0,700fr); column-gap:var(--gp-gap); align-items:start; }
main.ld .ld-faq h2 { font-size:clamp(30px,3.3vw,46px); line-height:1.02; }
main.ld .ld-faq__l { border-top:1px solid #cfcabb; }
main.ld .ld-faq__l details { border-bottom:1px solid #cfcabb; }
main.ld .ld-faq__l summary { list-style:none; cursor:pointer; display:block; position:relative; min-height:44px; padding:20px 36px 20px 0; font:600 17px/1.4 var(--gp-titre); color:var(--gp-texte); }
main.ld .ld-faq__l summary::-webkit-details-marker { display:none; }
main.ld .ld-faq__l summary::after { content:""; position:absolute; right:0; top:27px; width:12px; height:12px; background:linear-gradient(currentColor,currentColor) center/12px 1.5px no-repeat,linear-gradient(currentColor,currentColor) center/1.5px 12px no-repeat; color:var(--gp-discret); }
main.ld .ld-faq__l details[open] summary::after { background:linear-gradient(currentColor,currentColor) center/12px 1.5px no-repeat; color:var(--gp-texte); }
main.ld .ld-faq__l summary:focus-visible { outline:2px solid var(--gp-encre); outline-offset:2px; }
main.ld .ld-faq__l p { max-width:42em; padding:0 36px 22px 0; font-size:15.5px; line-height:1.65; color:var(--gp-doux); }

/* ---------- appel final ---------- */
main.ld .gp-fin { background:var(--gp-encre); min-height:600px; }
main.ld .gp-photo--fin { background-image:url(/images/lead-v1/fin-1600.webp); background-position:30% 50%; transform:none; filter:none; }
main.ld .gp-voile--fin { background:linear-gradient(90deg,rgba(var(--ld-ombre),.1),rgba(var(--ld-ombre),.5) 45%,rgba(var(--ld-ombre),.85) 100%); }
main.ld .gp-fin h2 { font-size:clamp(32px,3.8vw,54px); }
main.ld .gp-fin p { color:rgba(255,255,255,.86); }
main.ld .ld-tel { margin-top:22px !important; font-size:16px !important; }
main.ld .ld-tel a { display:inline-flex; align-items:center; min-height:44px; color:#fff; font-weight:600; text-decoration:underline; text-decoration-color:rgba(255,218,26,.75); text-underline-offset:5px; }
main.ld .ld-tel a:focus-visible { outline:3px solid #fff; outline-offset:3px; }

/* ---------- tablette et téléphone ---------- */
@media (max-width: 1023px) {
  main.ld .ld-prog { grid-template-columns:repeat(2,minmax(0,1fr)); row-gap:44px; }
  main.ld .ld-prog__c .ld-prog__o::after { display:none !important; }
  main.ld .ld-prog__c--lead .ld-prog__o::before { display:none; }
  main.ld .ld-canaux, main.ld .ld-faq, main.ld .ld-cadre, main.ld .ld-cartes { grid-template-columns:minmax(0,1fr); }
  main.ld .ld-faq__l { margin-top:28px; }
  main.ld .ld-cadre li { padding-top:22px; }
  main.ld .ld-cas { row-gap:32px; }
  main.ld .pan.ld-photo { width:100%; max-width:612px; }
  main.ld .gp-fin { min-height:0; }
}
@media (max-width: 760px) {
  main.ld .gp-voile--fin { background:linear-gradient(180deg,rgba(var(--ld-ombre),.2),rgba(var(--ld-ombre),.92) 50%); }
  main.ld .gp-photo--fin { background-image:url(/images/lead-v1/fin-900.webp); background-position:30% 0; background-size:auto 420px; }
  main.ld .gp-fin__in { padding-block:260px 56px; }
  main.ld .ld-hist { grid-template-columns:minmax(0,1fr); gap:32px; }
  main.ld .ld-hist__b { padding-left:0; border-left:0; padding-top:28px; border-top:1px solid rgba(255,255,255,.18); }
}
@media (max-width: 640px) {
  main.ld .ld-prog { grid-template-columns:minmax(0,1fr); row-gap:0; }
  main.ld .ld-prog__c { padding-bottom:34px; }
  main.ld .ld-prog__c:not(:last-child)::after { content:""; position:absolute; left:50%; bottom:0; height:34px; border-left:2px dotted rgba(var(--ld-ombre),.4); }
  main.ld .ld-prog__c--lead::before { content:""; position:absolute; left:calc(50% - 6px); top:-6px; width:12px; height:12px; border-radius:50%; background:var(--gp-soleil); box-shadow:0 0 0 4px rgba(255,218,26,.28),inset 0 0 0 1px rgba(var(--ld-ombre),.25); z-index:2; }
  main.ld .ld-prog__o { min-height:0; padding:18px 14px; }
  main.ld .pan.ld-photo { aspect-ratio:auto; display:flex; flex-direction:column; }
  main.ld .ld-photo .ld-ph { position:relative; inset:auto; width:100%; aspect-ratio:4 / 3; min-height:240px; flex:none; }
  main.ld .ld-photo .ld-ph__obj { position:relative; right:auto; top:auto; width:auto; margin:-56px 16px 18px; }
  main.ld .gp-fin__in { padding-block:250px 56px; }
}
main.ld .ld-tr--un { grid-template-columns:minmax(0,1fr); }
/* titre du haut de page : les groupes insécables du build produisaient « clients » seul sur sa ligne */
main.ld .gp-hero h1 .ad-groupe { white-space:normal; }

@media (max-width: 640px) { main.ld .gp-hero__in { padding-top:330px; } }

/* cartes à lien : survol sur toute la carte (le lien est étendu, .carte-lien du socle) */
@media (hover:hover) { main.ld .ld-carte.carte-lien { transition: box-shadow .18s ease, transform .18s ease; } main.ld .ld-carte.carte-lien:hover { transform: translateY(-2px); } }
@media (prefers-reduced-motion: reduce) { main.ld .ld-carte.carte-lien { transition: none; } main.ld .ld-carte.carte-lien:hover { transform: none; } }
