/* ===== LIGNON : gabarit des pages de liste (lgnl) ===== */
/* Fichier : wp-content/themes/lignon/assets/css/lgn-listing.css */

.lgnl{color:#1a1a1d}
.lgnl *{box-sizing:border-box}
.lgnl a{text-decoration:none;color:inherit}
.lgnl-wrap{max-width:1360px;margin:0 auto;padding:0 24px 64px}

/* Fil d'Ariane + titre */
.lgnl-bc{display:flex;flex-wrap:wrap;gap:6px;font-size:12.5px;color:#9a9994;padding:20px 0 10px}
.lgnl-bc a{color:#77766f}.lgnl-bc a:hover{color:#1a1a1d}.lgnl-bc .is-current{color:#1a1a1d;font-weight:600}
.lgnl-hero{max-width:900px;padding:8px 0 30px}
.lgnl-hero h1{margin:0 0 8px;font-size:36px;line-height:1.12;font-weight:800;letter-spacing:-.02em;color:#1a1a1d}
.lgnl-count{margin:0 0 16px;font-size:14.5px;color:#55544e}.lgnl-count b{color:#1a1a1d}
/* Description courte : 3 lignes, "Lire la suite" pour tout afficher */
.lgnl-desc{position:relative;font-size:15px;line-height:1.65;color:#55544e}
.lgnl-desc-in p{margin:0 0 10px}
.lgnl-desc-in *{text-align:left!important}
.lgnl-desc-in img{max-width:100%;height:auto;border-radius:var(--lgn-r,8px);margin:8px 0}
.lgnl-desc-in h2,.lgnl-desc-in h3{font-size:18px;color:#1a1a1d;margin:16px 0 8px}
.lgnl-desc.is-clamped{max-height:4.95em;overflow:hidden}
.lgnl-desc.is-clamped img,.lgnl-desc.is-clamped figure{display:none}
.lgnl-desc.is-clamped::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1.8em;background:linear-gradient(rgba(255,255,255,0),#fff)}
.lgnl-desc-more{margin-top:6px;padding:0;border:0;background:none;font:inherit;font-size:14px;font-weight:700;color:#1a1a1d;text-decoration:underline;cursor:pointer}
.lgnl-desc-more[hidden]{display:none}

/* Grille de cartes */
.lgnl-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 22px}
.lgnl-card{display:flex;flex-direction:column;border:1px solid #ebebeb;border-radius:var(--lgn-r,8px);overflow:hidden;background:#fff;transition:box-shadow .2s,transform .2s}
.lgnl-card:hover{box-shadow:0 14px 34px rgba(0,0,0,.09);transform:translateY(-2px)}
.lgnl-img{position:relative;aspect-ratio:4/3;background:#f1f1f1;overflow:hidden}
.lgnl-img img{position:absolute;inset:0;width:100%!important;height:100%!important;max-width:none!important;object-fit:cover;margin:0!important;transition:transform .4s ease}
.lgnl-card:hover .lgnl-img img{transform:scale(1.03)}
.lgnl-noimg{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;color:#9a9994}
.lgnl-badges{position:absolute;top:12px;left:12px;right:12px;z-index:1;display:flex;flex-wrap:wrap;gap:6px;pointer-events:none}
.lgnl-badge--tva{background:#1a1a1d!important;color:#fff!important}
.lgnl-badge{display:inline-block;background:#fff;color:#1a1a1d;font-size:11.5px;font-weight:700;padding:5px 10px;border-radius:var(--lgn-r,8px);box-shadow:0 1px 4px rgba(0,0,0,.12)}
.lgnl-photos{position:absolute;bottom:10px;left:10px;z-index:1;background:rgba(0,0,0,.6);color:#fff;font-size:11.5px;font-weight:600;padding:4px 8px;border-radius:var(--lgn-r,8px)}
.lgnl-body{display:flex;flex-direction:column;flex:1;padding:16px 18px 18px}
.lgnl-t{margin:0;font-size:16px;font-weight:700;line-height:1.3}
.lgnl-s{margin:4px 0 0;font-size:13px;color:#77766f;line-height:1.45}
.lgnl-specs{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.lgnl-specs li{font-size:12px;font-weight:600;color:#55544e;background:#f1f1f1;border-radius:var(--lgn-r,8px);padding:4px 8px;margin:0}
.lgnl-foot{margin-top:auto;display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding-top:14px;margin-top:16px;border-top:1px solid #ebebeb}
.lgnl-p{font-size:21px;font-weight:800;letter-spacing:-.01em}
.lgnl-loc{font-size:12.5px;color:#77766f}

/* Vehicules vendus */
.lgnl-card.is-sold .lgnl-img img{filter:grayscale(1);opacity:.85}
.lgnl-card.is-sold .lgnl-badge{background:#1a1a1d;color:#fff}
.lgnl-card.is-sold .lgnl-p{font-size:16px;color:#77766f}

/* Encart "Vous ne trouvez pas le bon modele ?" */
.lgnl-cta{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:30px;padding:26px 30px;border-radius:var(--lgn-r,8px);background:#1a1a1d;color:#fff}
.lgnl-cta p{margin:0;font-size:14px;color:#c9c9c9;max-width:560px}
.lgnl-cta-t{font-size:20px!important;font-weight:800;color:#fff!important;margin:0 0 6px!important}
.lgnl-cta-b{display:flex;gap:10px;flex:0 0 auto}
.lgnl-btn{display:inline-flex;align-items:center;justify-content:center;padding:13px 18px;border-radius:var(--lgn-r,8px);background:#fff;color:#1a1a1d!important;font-weight:700;font-size:14px}
.lgnl-btn2{display:inline-flex;align-items:center;justify-content:center;padding:12px 18px;border-radius:var(--lgn-r,8px);border:1px solid currentColor;font-weight:700;font-size:14px;background:transparent;cursor:pointer}
.lgnl-cta .lgnl-btn2{color:#fff!important}
.lgnl-btn-dark{display:inline-flex;padding:12px 18px;border-radius:var(--lgn-r,8px);background:#1a1a1d;color:#fff!important;font-weight:700;font-size:14px}

/* Aucun resultat */
.lgnl-empty{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:22px}
.lgnl-empty-box{padding:28px;border:1px solid #ebebeb;border-radius:var(--lgn-r,8px)}
.lgnl-empty-box.is-grey{background:#f6f6f6;border-color:#f6f6f6}
.lgnl-empty-box .lgnl-cta-t{color:#1a1a1d!important}
.lgnl-empty-box p{color:#55544e;font-size:14.5px;line-height:1.6;margin:0 0 18px}

/* Voir plus */
.lgnl-more{display:flex;flex-direction:column;align-items:center;gap:12px;padding:44px 0 10px;font-size:13.5px;color:#77766f}
.lgnl-more p{margin:0}
.lgnl-progress{width:220px;height:3px;background:#e2e2e2;border-radius:3px;overflow:hidden}
.lgnl-progress span{display:block;height:100%;background:#1a1a1d;transition:width .3s}
.lgnl-more-btn{color:#1a1a1d!important;min-width:240px}
.lgnl-more-btn:hover{background:#1a1a1d;color:#fff!important}
.lgnl-more-btn.is-loading{opacity:.6;pointer-events:none}

/* A decouvrir aussi : tuiles avec la photo du dernier vehicule */
.lgnl-related{margin-top:64px}
.lgnl-related-t{margin:0 0 18px;font-size:24px;font-weight:800;letter-spacing:-.01em;color:#1a1a1d}
.lgnl-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.lgnl-tile{display:flex;flex-direction:column;border:1px solid #ebebeb;border-radius:var(--lgn-r,8px);overflow:hidden;background:#fff;color:#1a1a1d!important;transition:box-shadow .2s,transform .2s}
.lgnl-tile:hover{box-shadow:0 12px 30px rgba(0,0,0,.08);transform:translateY(-2px)}
.lgnl-tile-img{position:relative;display:block;aspect-ratio:4/3;overflow:hidden;background:#f1f1f1}
.lgnl-tile-img img{position:absolute;inset:0;width:100%!important;height:100%!important;max-width:none!important;object-fit:cover;margin:0!important;transition:transform .45s ease}
.lgnl-tile:hover .lgnl-tile-img img{transform:scale(1.05)}
.lgnl-tile-txt{display:flex;flex-direction:column;gap:3px;padding:14px 16px 16px}
.lgnl-tile-name{font-size:17px;font-weight:800;line-height:1.2}
.lgnl-tile-n{font-size:13px;font-weight:600;color:#77766f}

/* Description longue (bas de page) */
.lgnl-seo{max-width:820px;margin:64px auto 0;padding-top:44px;border-top:1px solid #ebebeb}
.lgnl-seo-content{font-size:15.5px;line-height:1.75;color:#55544e}
.lgnl-seo-content h2{font-size:26px;line-height:1.25;color:#1a1a1d;margin:32px 0 12px;font-weight:800}
.lgnl-seo-content h2:first-child{margin-top:0}
.lgnl-seo-content h3{font-size:19px;color:#1a1a1d;margin:26px 0 10px;font-weight:700}
.lgnl-seo-content a{color:#1a1a1d;text-decoration:underline}
.lgnl-seo-content img{max-width:100%;height:auto;border-radius:var(--lgn-r,8px)}
.lgnl-seo-content table{width:100%;border-collapse:collapse;font-size:14px;margin:18px 0}
.lgnl-seo-content th,.lgnl-seo-content td{padding:10px 12px;border-bottom:1px solid #ebebeb;text-align:left}

@media (max-width:1099px){
  .lgnl-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .lgnl-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:767px){
  .lgnl-wrap{padding:0 16px 40px}
  .lgnl-grid{grid-template-columns:1fr;gap:18px}
  .lgnl-hero{padding-bottom:20px}
  .lgnl-hero h1{font-size:26px}
  .lgnl-desc{font-size:14.5px}
  .lgnl-tiles{gap:10px}
  .lgnl-tile-name{font-size:15px}
  .lgnl-related-t{font-size:20px}
  .lgnl-cta{flex-direction:column;align-items:flex-start;padding:22px}
  .lgnl-cta-b{flex-direction:column;width:100%}
  .lgnl-empty{grid-template-columns:1fr}
  .lgnl-seo{margin-top:40px;padding-top:32px}
}

/* Description longue : meme rendu sur PC que sur mobile.
   Le style.css du theme applique ses propres tailles / alignements aux titres et paragraphes sur grand ecran :
   on les neutralise ici (selecteurs #lgnl + !important) pour garder la mise en forme du gabarit. */
#lgnl .lgnl-seo-content,
#lgnl .lgnl-seo-content p,
#lgnl .lgnl-seo-content li{font-size:16px!important;line-height:1.75!important;color:#55544e!important;text-align:left!important;font-weight:400!important;letter-spacing:0!important;text-transform:none!important}
#lgnl .lgnl-seo-content p{margin:0 0 16px!important;max-width:none!important}
#lgnl .lgnl-seo-content h2{font-size:26px!important;line-height:1.25!important;font-weight:800!important;color:#1a1a1d!important;text-align:left!important;text-transform:none!important;letter-spacing:-.01em!important;margin:40px 0 14px!important;padding:0!important}
#lgnl .lgnl-seo-content h2:first-child{margin-top:0!important}
#lgnl .lgnl-seo-content h3{font-size:19px!important;line-height:1.3!important;font-weight:700!important;color:#1a1a1d!important;text-align:left!important;text-transform:none!important;letter-spacing:0!important;margin:28px 0 10px!important;padding:0!important}
#lgnl .lgnl-seo-content h4{font-size:16px!important;font-weight:700!important;color:#1a1a1d!important;text-align:left!important;margin:22px 0 8px!important}
#lgnl .lgnl-seo-content ul,#lgnl .lgnl-seo-content ol{margin:0 0 18px!important;padding-left:22px!important;list-style-position:outside!important}
#lgnl .lgnl-seo-content ul{list-style-type:disc!important}
#lgnl .lgnl-seo-content ol{list-style-type:decimal!important}
#lgnl .lgnl-seo-content li{margin:0 0 6px!important;padding:0!important;display:list-item!important}
#lgnl .lgnl-seo-content strong,#lgnl .lgnl-seo-content b{font-weight:700!important;color:#1a1a1d!important}
#lgnl .lgnl-seo-content a{color:#1a1a1d!important;text-decoration:underline!important;text-underline-offset:2px}
#lgnl .lgnl-seo-content img{display:block;max-width:100%!important;height:auto!important;margin:18px 0!important;border-radius:var(--lgn-r,8px);float:none!important}

/* Description longue repliee : 1 a 2 paragraphes visibles, "Lire la suite" pour le reste (texte complet dans le HTML pour Google) */
#lgnl .lgnl-seo-content.is-clamped{position:relative;max-height:22em;overflow:hidden}
#lgnl .lgnl-seo-content.is-clamped::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2.5em;background:linear-gradient(rgba(255,255,255,0),#fff)}
.lgnl-seo-more{display:inline-flex;align-items:center;gap:6px;margin-top:14px;padding:11px 18px;border:1px solid #1a1a1d;border-radius:var(--lgn-r,8px);background:#fff;color:#1a1a1d;font:inherit;font-size:14px;font-weight:700;cursor:pointer}
.lgnl-seo-more:hover{background:#1a1a1d;color:#fff}
.lgnl-seo-more[hidden]{display:none}
