/* GANTRY5 DEVELOPMENT MODE ENABLED.
 *
 * WARNING: This file is automatically generated by Gantry5. Any modifications to this file will be lost!
 *
 * For more information on modifying CSS, please read:
 *
 * http://docs.gantry.org/gantry5/configure/styles
 * http://docs.gantry.org/gantry5/tutorials/adding-a-custom-style-sheet
 */

@charset "UTF-8";
/* VB Automobiles — custom.scss réorganisé le 31/10/2026 */
.emission {
  padding: 0px;
  line-height: 1.6;
  background: 0px 0px;
  color: red;
  position: relative;
  z-index: 0;
}
.customlabelavispk {
  margin: 20px;
  font-family: Brush Script MT, sans-serif;
  font-size: 180%;
  font-style: italic;
  color: #AC1E44;
}
.customtitredesc {
  font-size: 180%;
  color: #2AB0A7;
}
.customtitre {
  font-size: 250%;
  color: #2AB0A7;
}
.customsoustitre {
  margin: 20px;
  font-size: 180%;
  color: #2AB0A7;
}
.car-titre {
  margin: 0;
  font-size: 1.25rem;
  font-weight: 700;
}
.car-version {
  margin-top: 4px;
  color: #687582;
  font-size: 0.95rem;
}
.car-badge-nouveau {
  display: inline-block;
  margin-top: 8px;
  padding: 4px 10px;
  border-radius: 4px;
  background: #198754;
  color: #fff;
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
}
.car-prix-normal, .car-prix-demande {
  font-size: 1.6rem;
  font-weight: 700;
}
.car-prix-promo {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.car-prix-promo del {
  color: #888;
  font-size: 1rem;
}
.car-prix-promo strong {
  color: #c62828;
  font-size: 1.6rem;
}
.car-badge-vendu, .car-badge-reserve {
  display: inline-block;
  padding: 5px 12px;
  border-radius: 4px;
  font-size: 0.85rem;
  font-weight: 700;
}
.car-badge-vendu {
  background: #666;
  color: white;
}
.car-badge-reserve {
  background: #e6a23c;
  color: #222;
}
/* =========================================
   VB-GROUP - CARACTÉRISTIQUES TECHNIQUES
   Groupe Fabrik 14
   ========================================= */
/* Transformer le groupe en grille de 2 colonnes */
.fabrikDetails #group14 {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 30px;
  row-gap: 12px;
}
/* Le titre occupe toute la largeur */
.fabrikDetails #group14 > legend {
  grid-column: 1 / -1;
}
/* Supprimer les lignes intermédiaires de Fabrik */
.fabrikDetails #group14 > .row {
  display: contents !important;
}
/* Les éléments deviennent des cellules de la grille */
.fabrikDetails #group14 .fabrikElementContainer {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
}
/* Masquer complètement les éléments vides */
.fabrikDetails #group14 .fabrikElementContainer.fabrikDataEmpty {
  display: none !important;
}
/* Affichage sur mobile */
@media (max-width: 767px) {
  .fabrikDetails #group14 {
    grid-template-columns: 1fr;
  }
}
/* =========================================
   VB-GROUP - CATALOGUE VEHICULES
   ========================================= */
.vb-vehicles {
  width: 100%;
}
.vb-vehicles .vb-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 28px;
  margin: 25px 0;
}
/* CARTE */
.vb-vehicles .vb-card {
  background: #fff;
  border: 1px solid #e5e8eb;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
  transition: transform 0.25s, box-shadow 0.25s;
}
.vb-vehicles .vb-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.13);
}
/* PHOTO */
.vb-vehicles .vb-card-image {
  position: relative;
  display: block;
  overflow: hidden;
}
.vb-vehicles .vb-card-image img {
  display: block;
  width: 100%;
  aspect-ratio: 1.6;
  object-fit: cover;
  transition: transform 0.35s;
}
.vb-vehicles .vb-card:hover img {
  transform: scale(1.04);
}
/* BADGES */
.vb-vehicles .vb-card-badges {
  position: absolute;
  top: 14px;
  left: 14px;
  display: flex;
  gap: 7px;
}
.vb-vehicles .vb-badge {
  display: inline-block;
  padding: 6px 12px;
  border-radius: 5px;
  background: #17465e;
  color: #fff;
  font-size: 12px;
  font-weight: 600;
}
.vb-vehicles .vb-sold {
  background: #bc3d3d;
}
/* CONTENU */
.vb-vehicles .vb-card-body {
  padding: 22px;
}
.vb-vehicles .vb-card-body h3 {
  margin: 0 0 7px;
  font-size: 21px;
  font-weight: 700;
  line-height: 1.35;
}
.vb-vehicles .vb-card-body h3 a {
  color: #173d50;
  text-decoration: none;
}
.vb-vehicles .vb-version {
  color: #77838c;
  font-size: 14px;
  margin: 0 0 18px;
}
/* PRIX ET BOUTON */
.vb-vehicles .vb-card-foot {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}
.vb-vehicles .vb-price {
  font-size: 22px;
  font-weight: 700;
  color: #173d50;
}
.vb-vehicles .vb-price-note {
  font-size: 15px;
  color: #a04444;
}
.vb-vehicles .vb-more {
  display: inline-block;
  padding: 11px 17px;
  background: #173d50;
  color: #fff !important;
  border-radius: 6px;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none !important;
}
.vb-vehicles .vb-more:hover {
  background: #34647d;
  color: #fff !important;
}
/* TABLETTE */
@media (max-width: 1024px) {
  .vb-vehicles .vb-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
/* MOBILE */
@media (max-width: 640px) {
  .vb-vehicles .vb-grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  .vb-vehicles .vb-card-body {
    padding: 18px;
  }
}
/* Badge Nouveau - Vert pomme */
.vb-badge.vb-new {
  background: #8BC34A !important;
  color: #ffffff !important;
  border: none;
}
/* =========================================
   VB-GROUP - CARACTERISTIQUES DES CARTES
   ========================================= */
.vb-vehicles .vb-card .vb-facts {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  column-gap: 12px !important;
  row-gap: 9px !important;
  margin: 14px 0 !important;
}
.vb-vehicles .vb-card .vb-facts .vb-fact {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: flex-start !important;
  flex-wrap: nowrap !important;
  gap: 7px !important;
  min-width: 0;
  margin: 0 !important;
  padding: 0 !important;
}
.vb-vehicles .vb-card .vb-facts .vb-fact i {
  display: inline-block !important;
  width: 16px !important;
  min-width: 16px !important;
  flex: 0 0 16px !important;
  text-align: center;
  font-size: 13px !important;
  line-height: 1 !important;
  color: #3d6483;
}
.vb-vehicles .vb-card .vb-facts .vb-fact > span {
  display: inline !important;
  width: auto !important;
  font-size: 12px !important;
  line-height: 1.4 !important;
  white-space: nowrap;
  margin: 0 !important;
  padding: 0 !important;
}
/* Prix et bouton alignés horizontalement */
.vb-vehicles .vb-card .vb-card-foot {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 10px !important;
  margin-top: auto;
}
.vb-vehicles .vb-card .vb-card-foot .vb-more {
  flex-shrink: 0;
}
/* ========================================
   VB-GROUP - GALERIE FICHE VEHICULE
   ======================================== */
.vb-detail-gallery {
  width: 100%;
  margin: 25px 0 35px;
}
.vb-gallery-main {
  width: 100%;
  background: #f1f3f5;
  border-radius: 12px;
  overflow: hidden;
}
.vb-gallery-main img {
  display: block;
  width: 100%;
  height: 480px;
  object-fit: contain;
}
/* Miniatures */
.vb-gallery-thumbnails {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 10px;
  margin-top: 12px;
}
.vb-gallery-thumb {
  display: block;
  padding: 0;
  border: 2px solid transparent;
  border-radius: 8px;
  overflow: hidden;
  background: #f1f3f5;
  cursor: pointer;
}
.vb-gallery-thumb img {
  display: block;
  width: 100%;
  height: 85px;
  object-fit: cover;
}
.vb-gallery-thumb.is-active {
  border-color: #3d6483;
}
.vb-gallery-thumb:hover {
  border-color: #3d6483;
  opacity: 0.85;
}
/* Tablette */
@media (max-width: 900px) {
  .vb-gallery-main img {
    height: 380px;
  }
  .vb-gallery-thumbnails {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}
/* Smartphone */
@media (max-width: 600px) {
  .vb-gallery-main img {
    height: 260px;
  }
  .vb-gallery-thumbnails {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 7px;
  }
  .vb-gallery-thumb img {
    height: 70px;
  }
}
/* =========================================
   VB-GROUP - FICHE DETAILLEE
   CARACTERISTIQUES
   ========================================= */
.vb-vehicles .vb-detail .vb-specs {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin: 20px 0 35px;
}
.vb-vehicles .vb-detail .vb-specs > div {
  background: #f4f6f8;
  border: 1px solid #e6ebef;
  border-radius: 8px;
  padding: 14px 16px;
  min-width: 0;
}
.vb-vehicles .vb-detail .vb-specs dt {
  font-size: 12px;
  font-weight: 500;
  color: #6c7884;
  margin-bottom: 5px;
}
.vb-vehicles .vb-detail .vb-specs dd {
  margin: 0;
  font-size: 15px;
  font-weight: 600;
  color: #173f54;
}
/* Tablette */
@media (max-width: 900px) {
  .vb-vehicles .vb-detail .vb-specs {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
/* Smartphone */
@media (max-width: 600px) {
  .vb-vehicles .vb-detail .vb-specs {
    grid-template-columns: 1fr;
  }
}
/* VB-GROUP - Miniatures sans déformation */
.vb-vehicles .vb-detail .vb-gallery-thumb {
  aspect-ratio: 1.3333333333;
  height: auto !important;
  background: #f1f3f5;
}
.vb-vehicles .vb-detail .vb-gallery-thumb img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  aspect-ratio: 1.3333333333;
  object-fit: contain !important;
  object-position: center;
}
/* VB-GROUP - Icônes caractéristiques */
.vb-vehicles .vb-detail .vb-specs dt {
  display: flex;
  align-items: center;
  gap: 8px;
}
.vb-vehicles .vb-detail .vb-specs dt i {
  display: inline-block;
  width: 17px;
  min-width: 17px;
  color: #3d6483;
  font-size: 14px;
  text-align: center;
}
.vb-vehicles .vb-detail .vb-specs dd {
  padding-left: 25px;
}
/* VB-GROUP - Description du véhicule */
.vb-vehicles .vb-detail-description {
  margin: 30px 0 35px;
}
.vb-vehicles .vb-description {
  background: #f4f6f8;
  border-left: 4px solid #3d6483;
  border-radius: 0 10px 10px 0;
  padding: 20px 25px;
  color: #405463;
  font-size: 15px;
  font-style: italic;
  line-height: 1.8;
}
/* =========================================
   VB-GROUP - EQUIPEMENTS FICHE VEHICULE
   ========================================= */
.vb-vehicles .vb-detail .vb-equipments {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
  margin: 20px 0 40px;
  align-items: start;
}
.vb-vehicles .vb-detail .vb-equipments section {
  background: #f4f6f8;
  border: 1px solid #e6ebef;
  border-radius: 10px;
  padding: 20px;
  min-width: 0;
}
.vb-vehicles .vb-detail .vb-equipments h3 {
  color: #173f54;
  font-size: 18px;
  font-weight: 600;
  margin: 0 0 15px;
  padding-bottom: 10px;
  border-bottom: 1px solid #dce3e9;
}
.vb-vehicles .vb-detail .vb-equipments ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 9px 15px;
}
.vb-vehicles .vb-detail .vb-equipments li {
  position: relative;
  padding-left: 20px;
  font-size: 13px;
  line-height: 1.5;
  color: #405463;
  overflow-wrap: anywhere;
}
.vb-vehicles .vb-detail .vb-equipments li::before {
  content: "✓";
  position: absolute;
  left: 0;
  top: 0;
  color: #75a843;
  font-weight: 700;
}
/* Tablette */
@media (max-width: 900px) {
  .vb-vehicles .vb-detail .vb-equipments {
    grid-template-columns: 1fr;
  }
}
/* Smartphone */
@media (max-width: 600px) {
  .vb-vehicles .vb-detail .vb-equipments ul {
    grid-template-columns: 1fr;
  }
  .vb-vehicles .vb-detail .vb-equipments section {
    padding: 16px;
  }
}
/* ============================================================
   VB AUTOMOBILES — ACCUEIL / HERO
   Le catalogue et les fiches véhicules ci-dessus sont conservés.
   ============================================================ */
/* Section Gantry qui contient uniquement la bannière HTML */
#g-hero {
  background: #203656;
  overflow: hidden;
}
/* Éviter les marges de particule autour de la bannière.
   Le centrage reste géré par Gantry. */
#g-hero .g-content {
  margin-top: 0;
  margin-bottom: 0;
}
.vb-hero {
  position: relative;
  display: flex;
  align-items: center;
  box-sizing: border-box;
  isolation: isolate;
  width: 100%;
  min-height: 500px;
  padding: clamp(48px, 5vw, 86px) clamp(28px, 6vw, 90px);
  overflow: hidden;
  color: #fff;
  background-color: #09273d;
  background-image: linear-gradient(90deg, rgba(3, 29, 48, 0.97) 0%, rgba(3, 29, 48, 0.88) 28%, rgba(3, 29, 48, 0.58) 52%, rgba(3, 29, 48, 0.08) 100%), url('../../../../images/garage-accueil.png');
  background-position: center, center 52%;
  background-size: cover;
  background-repeat: no-repeat;
}
.vb-hero .vb-hero-content {
  position: relative;
  z-index: 1;
  flex: 0 1 640px;
  width: 100%;
  max-width: 640px;
  min-width: 0;
  margin: 0;
  padding: 0;
  color: #fff;
}
.vb-hero .vb-hero-label {
  display: block;
  color: #5ce1df;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.13em;
  line-height: 1.6;
  text-transform: uppercase;
}
.vb-hero .vb-hero-content h1 {
  max-width: 640px;
  margin: 19px 0 22px;
  color: #fff;
  font-size: clamp(32px, 3.5vw, 54px);
  font-weight: 750;
  line-height: 1.12;
  letter-spacing: -0.025em;
  text-wrap: balance;
}
.vb-hero .vb-hero-content p {
  max-width: 555px;
  margin: 0;
  color: #eef5fa;
  font-size: clamp(15px, 1.2vw, 17px);
  line-height: 1.75;
}
.vb-hero .vb-hero-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 14px;
  margin-top: 30px;
}
.vb-hero .vb-hero-actions a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 12px 22px;
  border: 1px solid transparent;
  border-radius: 7px;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.4;
  text-align: center;
  text-decoration: none;
  transition: background-color 0.2s ease, border-color 0.2s ease, transform 0.2s ease;
}
.vb-hero .vb-hero-btn {
  background: #0bb7bb;
  color: #fff;
}
.vb-hero .vb-hero-btn:hover, .vb-hero .vb-hero-btn:focus-visible {
  background: #07979d;
  color: #fff;
  transform: translateY(-2px);
}
.vb-hero .vb-hero-btn-outline {
  border-color: rgba(255, 255, 255, 0.9) !important;
  background: rgba(0, 21, 37, 0.18);
  color: #fff;
}
.vb-hero .vb-hero-btn-outline:hover, .vb-hero .vb-hero-btn-outline:focus-visible {
  background: rgba(255, 255, 255, 0.15);
  color: #fff;
}
/* Tablette */
@media (max-width: 900px) {
  .vb-hero {
    min-height: 450px;
    padding: 48px 6%;
    background-position: center, 60% center;
  }
}
/* Mobile : dimensions stables, texte lisible et boutons accessibles */
@media (max-width: 600px) {
  .vb-hero {
    min-height: 490px;
    padding: 38px 24px 44px;
    align-items: center;
    background-image: linear-gradient(90deg, rgba(3, 29, 48, 0.94) 0%, rgba(3, 29, 48, 0.79) 64%, rgba(3, 29, 48, 0.48) 100%), url('../../../../images/garage-accueil.png');
    background-position: center, 60% center;
  }
  .vb-hero .vb-hero-label {
    font-size: 10px;
    letter-spacing: 0.09em;
  }
  .vb-hero .vb-hero-content h1 {
    margin: 15px 0 17px;
    font-size: clamp(29px, 8vw, 36px);
  }
  .vb-hero .vb-hero-content p {
    font-size: 14px;
    line-height: 1.6;
  }
  .vb-hero .vb-hero-actions {
    flex-direction: column;
    align-items: stretch;
    gap: 10px;
    margin-top: 24px;
  }
  .vb-hero .vb-hero-actions a {
    width: 100%;
    box-sizing: border-box;
    white-space: normal;
  }
}
@media (prefers-reduced-motion: reduce) {
  .vb-hero .vb-hero-actions a {
    transition: none;
  }
}
/* VB AUTOMOBILES - HERO PLEINE LARGEUR */
#g-hero {
  padding: 0 !important;
  margin: 0 !important;
}
#g-hero .g-container, #g-hero .g-grid, #g-hero .g-block, #g-hero .g-content {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
}
#g-hero .vb-hero {
  width: 100%;
  min-height: 540px;
  background-position: center center;
}
/* VB AUTOMOBILES - CADRAGE DE LA BANNIÈRE */
@media (min-width: 901px) {
  #g-hero .vb-hero {
    min-height: 650px;
    background-position: center 65%;
  }
}
/* =========================================
   VB AUTOMOBILES - VAGUE HERO
   ========================================= */
#g-hero {
  position: relative;
  overflow: hidden;
}
/* Liseré turquoise */
#g-hero::before {
  content: "";
  position: absolute;
  z-index: 5;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100px;
  background: #14b8b5;
  clip-path: polygon(0 45%, 10% 38%, 20% 40%, 30% 50%, 40% 65%, 50% 75%, 60% 80%, 70% 76%, 80% 65%, 90% 48%, 100% 30%, 100% 100%, 0 100%);
  pointer-events: none;
}
/* Surface claire du catalogue */
#g-hero::after {
  content: "";
  position: absolute;
  z-index: 6;
  left: 0;
  bottom: -1px;
  width: 100%;
  height: 100px;
  background: #f3f5f8;
  clip-path: polygon(0 51%, 10% 44%, 20% 46%, 30% 56%, 40% 71%, 50% 81%, 60% 86%, 70% 82%, 80% 71%, 90% 54%, 100% 36%, 100% 100%, 0 100%);
  pointer-events: none;
}
@media (max-width: 767px) {
  #g-hero::before, #g-hero::after {
    height: 45px;
  }
}
/* =========================================
   VB AUTOMOBILES - CONTACT FICHE VÉHICULE
   ========================================= */
.vb-contact-vehicle {
  margin: 50px 0 35px;
  padding: 45px 30px;
  background: linear-gradient(135deg, #173d50 0%, #243f60 100%);
  border-radius: 14px;
  text-align: center;
  color: #fff;
}
.vb-contact-vehicle-content {
  max-width: 700px;
  margin: 0 auto;
}
.vb-contact-label {
  display: block;
  color: #5ed5d0;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 2px;
  margin-bottom: 14px;
}
.vb-contact-vehicle h2 {
  color: #fff;
  font-size: clamp(24px, 3vw, 32px);
  font-weight: 700;
  line-height: 1.3;
  margin: 0 0 18px;
}
.vb-contact-price {
  margin-bottom: 20px;
  font-size: 28px;
  font-weight: 700;
  color: #fff;
}
.vb-contact-price strong {
  color: #fff;
}
.vb-contact-price del {
  color: #b9c8d4;
  font-size: 18px;
  margin-right: 10px;
}
.vb-contact-vehicle p {
  color: #e1e9ef;
  font-size: 16px;
  line-height: 1.7;
  margin: 0 auto 28px;
}
.vb-contact-phone {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 16px 30px;
  background: #14b8b5;
  color: #fff !important;
  border-radius: 8px;
  font-size: 20px;
  font-weight: 700;
  text-decoration: none !important;
  transition: background 0.2s, transform 0.2s;
}
.vb-contact-phone:hover {
  background: #0c9996;
  transform: translateY(-2px);
  color: #fff !important;
}
@media (max-width: 600px) {
  .vb-contact-vehicle {
    padding: 35px 20px;
    margin: 35px 0;
  }
  .vb-contact-phone {
    width: 100%;
    box-sizing: border-box;
    font-size: 18px;
    padding: 15px;
  }
}
/*# sourceMappingURL=custom_12.css.map */