/* ================================================================
   Vandeto Map · mod-grid-takeover v1.0.0 (VDM 2.36.0)
   Grilles de la plateforme — vue liste, pied de grille, états.
   S'appuie sur carousel.css (cards, grille, carrousel, cellule +
   cœur Favoris). Sobre : filets fins, un seul accent, aucune ombre
   décorative. Images en object-fit:cover, ratio fixe, jamais de bande.
   ================================================================ */

.vdm-gt{--gt-ink:#11151c;--gt-mute:#6b7079;--gt-line:#ececee;--gt-accent:#ff1700;--gt-accent-text:#e31400;margin:0 0 8px;}
.vdm-gt-head{justify-content:flex-end;flex-wrap:wrap;margin-bottom:14px;}

/* Le thème posait height:1000px + overflow:auto sur sa grille (défilement
   dans une boîte). Nos blocs défilent avec la page : on neutralise toute
   règle héritée qui viserait le conteneur des résultats. */
#adforest-ajax-results .vdm-gt .vdm-crs-grid{height:auto;max-height:none;overflow:visible;}

/* ── Vue liste ─────────────────────────────────────────────── */
.vdm-gt--list .vdm-crs-grid{gap:12px;}
.vdm-gt--list .vdm-crs-grid .vdm-card{flex-direction:row;align-items:stretch;border-radius:14px;}
.vdm-gt--list .vdm-crs-grid .vdm-card-media{flex:0 0 clamp(128px,34%,300px);width:auto;padding-top:0;aspect-ratio:4/3;align-self:flex-start;}
.vdm-gt--list .vdm-crs-grid .vdm-card-body{padding:14px 52px 14px 18px;gap:6px;justify-content:center;min-width:0;}
.vdm-gt--list .vdm-crs-grid .vdm-card-title{font-size:15px;line-height:1.35;-webkit-line-clamp:2;}
.vdm-gt--list .vdm-crs-grid .vdm-card-price{font-size:17px;}
.vdm-gt--list .vdm-crs-grid .vdm-card-loc{font-size:12px;}
.vdm-gt--list .vdm-crs-grid .vdm-card-cta{margin-top:6px;padding-top:0;}
.vdm-gt--list .vdm-crs-grid .vdm-card-dots{bottom:10px;}
.vdm-gt--list .vdm-crs-grid .vdm-card-cat{max-width:calc(100% - 16px);}
.vdm-gt--list .vdm-cell .vdm-fav{top:10px;right:10px;}

@media(max-width:600px){
  .vdm-gt--list .vdm-crs-grid{gap:10px;}
  .vdm-gt--list .vdm-crs-grid .vdm-card-media{flex-basis:38%;aspect-ratio:1/1;}
  .vdm-gt--list .vdm-crs-grid .vdm-card-body{padding:10px 44px 10px 12px;gap:4px;}
  .vdm-gt--list .vdm-crs-grid .vdm-card-title{font-size:13px;}
  .vdm-gt--list .vdm-crs-grid .vdm-card-price{font-size:15px;}
  .vdm-gt--list .vdm-crs-grid .vdm-card-cta{display:none;}
  .vdm-gt--list .vdm-cell .vdm-fav{top:8px;right:8px;}
  /* Vignette étroite : l'étiquette de catégorie chevauchait le badge
     de confiance. La confiance prime ; la catégorie est déjà le
     contexte de la page de résultats. */
  .vdm-gt--list .vdm-crs-grid .vdm-card-cat{display:none;}
}

/* Badges du corps sur une seule ligne (cards étroites, mobile). */
.vdm-gt .vdm-price-badge,.vdm-gt .vdm-orc-chip--inline{white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis;}

/* ── Pied : lot suivant ────────────────────────────────────── */
.vdm-gt-more{display:flex;flex-direction:column;align-items:center;gap:10px;min-height:56px;margin-top:22px;}
.vdm-gt-more [hidden]{display:none !important;}
.vdm-gt-more-btn{appearance:none;display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 26px;font:inherit;font-size:13.5px;font-weight:700;letter-spacing:-.005em;color:var(--gt-ink);background:#fff;border:1px solid #dcdde0;border-radius:999px;cursor:pointer;transition:border-color .18s ease,color .18s ease;}
.vdm-gt-more-btn:hover{border-color:var(--gt-ink);}
.vdm-gt-more-btn:focus-visible{outline:2px solid var(--gt-ink);outline-offset:2px;}
.vdm-gt-more-btn[disabled]{opacity:.5;cursor:wait;}
.vdm-gt-end{margin:0;font-size:12.5px;color:var(--gt-mute);letter-spacing:.01em;}

/* ── Pagination (classes du thème conservées pour la recherche AJAX) ── */
.vdm-gt-pages{margin-top:26px;}
.vdm-gt-pages .pagination{justify-content:center;flex-wrap:wrap;gap:6px;}
.vdm-gt-pages .page-link svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;display:block;}

/* ── État vide ─────────────────────────────────────────────── */
.vdm-gt-empty{display:flex;flex-direction:column;align-items:center;text-align:center;padding:56px 16px;border:1px solid var(--gt-line, #ececee);border-radius:16px;background:#fff;}
.vdm-gt-empty svg{width:44px;height:44px;fill:none;stroke:#c9cbd0;stroke-width:2;stroke-linecap:round;margin-bottom:14px;}
.vdm-gt-empty-t{margin:0 0 4px;font-size:15px;font-weight:700;color:#11151c;}
.vdm-gt-empty-s{margin:0;font-size:13px;color:#6b7079;}

/* ── Bloc Promotion ────────────────────────────────────────── */
.vdm-gt-promo-section .vdm-gt{margin-bottom:28px;}

/* ── Widgets AdForest Elementor repris ─────────────────────── */
.vdm-gt-elementor .adt-ads-top-box{margin-bottom:16px;}

/* ── Toast ─────────────────────────────────────────────────── */
.vdm-gt-toast{position:fixed;left:50%;bottom:24px;z-index:99999;display:flex;align-items:center;gap:14px;max-width:calc(100% - 32px);padding:12px 18px;font-size:13px;font-weight:600;line-height:1.4;color:#fff;background:#11151c;border-radius:12px;box-shadow:0 10px 30px rgba(17,21,28,.22);opacity:0;pointer-events:none;transform:translate(-50%,8px);transition:opacity .2s ease,transform .2s ease;}
.vdm-gt-toast.is-on{opacity:1;pointer-events:auto;transform:translate(-50%,0);}
.vdm-gt-toast a{color:#ffc220;font-weight:700;text-decoration:none;white-space:nowrap;}
.vdm-gt-toast a:hover{text-decoration:underline;}
@media(prefers-reduced-motion:reduce){.vdm-gt-toast{transition:none;}}
