/* ================================================================
   Verogusto Hero Slider — style.css
   Toutes les règles visuelles du widget sont ici.
   Les valeurs dynamiques (couleurs, tailles, images…) arrivent
   via des CSS custom properties posées en style="" dans le HTML.
   ================================================================ */

/* ── Polices custom ─────────────────────────────────────────────── */
@font-face {
  font-family: "Garland";
  src: url("/wp-content/fonts/Garland.otf") format("opentype");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Headliner No. 45";
  src:
    url("/wp-content/fonts/headliner.woff2") format("woff2"),
    url("/wp-content/fonts/headliner.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

/* ── Wrapper principal ──────────────────────────────────────────── */
.vgs-wrapper {
  position: relative;
  width: 100%;
  overflow: hidden;
}

/* ── Track ──────────────────────────────────────────────────────── */
.vgs-track {
  display: flex;
  transition: transform 0.7s ease;
}

/* ── Slide ──────────────────────────────────────────────────────── */
.vgs-slide {
  min-width: 100%;
  height: 100vh;
  background-image: var(--vgs-bg-d);
  background-position: var(--vgs-bg-pos, center center);
  background-size: cover;
  background-repeat: no-repeat;
  display: flex;
  align-items: var(--vgs-valign, center);
  overflow: hidden;
  position: relative;
}

/* ── Container ──────────────────────────────────────────────────── */
.vgs-container {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
  display: flex;
  align-items: inherit;
  height: 100%;
  box-sizing: border-box;
}

/* ── Contenu (image déco + texte) ───────────────────────────────── */
.vgs-content {
  position: relative;
  z-index: 2;
  width: var(--vgs-w, 50%);
  flex-shrink: 0;
  max-width: 100%;
  margin-top: var(--vgs-mt, 0px);
  padding-top: var(--vgs-pt-d, 0px);
  padding-bottom: var(--vgs-pb-d, 0px);
  display: flex;
  flex-direction: var(--vgs-flex-dir, row);
  gap: var(--vgs-gap, 32px);
}

/* ── Bloc texte ─────────────────────────────────────────────────── */
.vgs-text-block {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
}

/* ── Sous-titre ─────────────────────────────────────────────────── */
.vgs-subtitle {
  font-family: "Headliner No. 45", sans-serif;
  font-weight: normal;
  line-height: 1;
  display: block;
  font-size: var(--vgs-sub-size-d, 52px);
  color: var(--vgs-sub-color, #ffffff);
  margin-left: var(--vgs-sub-ml, 0px);
  margin-bottom: var(--vgs-sub-mb, 0px);
}

/* ── Titre principal ────────────────────────────────────────────── */
.vgs-title {
  font-family: "Garland", cursive;
  font-weight: normal;
  line-height: 0.85;
  display: block;
  margin: 0;
  font-size: var(--vgs-title-size-d, 160px);
  color: var(--vgs-title-color, #ffffff);
  margin-top: var(--vgs-title-mt, 0px);
}

/* ── Features ───────────────────────────────────────────────────── */
.vgs-features {
  list-style: none;
  padding: 0;
  margin: 0;
  margin-top: var(--vgs-desc-mt, 25px);
}

.vgs-features li {
  font-family: Montserrat, sans-serif;
  font-weight: 300;
  line-height: 1.8;
  font-size: var(--vgs-desc-size, 18px);
  color: var(--vgs-desc-color, #ffffff);
}

/* ── Bouton ─────────────────────────────────────────────────────── */
.vgs-btn-wrap {
  margin-top: var(--vgs-btn-mt, 25px);
}

/* ── Image décorative ───────────────────────────────────────────── */
.vgs-slide-image-wrap {
  width: var(--vgs-img-w, 45%);
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
  transform: translateY(var(--vgs-img-off, 0px));
}

.vgs-slide-image-wrap img {
  width: 100%;
  max-height: var(--vgs-img-maxh, 80vh);
  object-fit: var(--vgs-img-fit, contain);
  display: block;
}

.vgs-slide-image-slogan {
  font-family: Montserrat, sans-serif;
  font-weight: 500;
  line-height: 1.4;
  text-align: center;
  font-size: var(--vgs-slogan-size, 14px);
  color: var(--vgs-slogan-color, #ffffff);
}

/* ── Flèches ────────────────────────────────────────────────────── */
.vgs-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 999;
  background: rgba(0, 0, 0, 0.35);
  border: none;
  color: #fff;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  font-size: 22px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background 0.3s;
  pointer-events: auto !important;
}

.vgs-arrow:hover {
  background: rgba(0, 0, 0, 0.6);
}
.vgs-prev {
  left: 20px;
}
.vgs-next {
  right: 20px;
}

/* ── Dots ───────────────────────────────────────────────────────── */
.vgs-dots {
  position: absolute;
  bottom: 18px;
  width: 100%;
  display: flex;
  justify-content: center;
  gap: 8px;
  z-index: 10;
}

.vgs-dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.5);
  cursor: pointer;
  border: none;
  transition:
    background 0.3s,
    transform 0.3s;
  pointer-events: auto !important;
}

.vgs-dot.active {
  background: #fff;
  transform: scale(1.3);
}

/* ── Tablette ≤ 1024px ──────────────────────────────────────────── */
@media (max-width: 1024px) {
  .vgs-slide {
    background-image: var(--vgs-bg-t);
  }
  .vgs-content {
    padding-top: var(--vgs-pt-t, 0px);
    padding-bottom: var(--vgs-pb-t, 0px);
  }
  .vgs-subtitle {
    font-size: var(--vgs-sub-size-t, 36px);
    margin-left: 0;
  }
  .vgs-title {
    font-size: var(--vgs-title-size-t, 104px);
  }
  .vgs-content {
    width: 100%;
    align-items: center;
  }
  .vgs-container {
    align-items: self-start;
    padding-top: 115px;
  }
}

/* ── Mobile ≤ 767px ─────────────────────────────────────────────── */
@media (max-width: 767px) {
  .vgs-slide {
    background-image: var(--vgs-bg-m);
    background-position: top center !important;
  }
  .vgs-container {
    justify-content: center;
  }
  .vgs-content {
    width: 100% !important;
    flex-direction: var(--vgs-flex-dir-m, column) !important;
    align-items: center !important;
    gap: 12px;
    padding-top: var(--vgs-pt-m, 80px);
    padding-bottom: var(--vgs-pb-m, 0px);
  }
  .vgs-text-block {
    text-align: center !important;
    align-items: center !important;
    margin-bottom: 90px;
  }
  .vgs-subtitle {
    font-size: var(--vgs-sub-size-m, 28px);
    margin-left: 0 !important;
    margin-bottom: 10px !important;
  }
  .vgs-title {
    font-size: var(--vgs-title-size-m, 80px);
  }
  .vgs-features li {
    font-size: 16px !important;
  }
  .vgs-slide-image-wrap {
    width: var(--vgs-img-w-m, 70%) !important;
  }
  .vgs-slide-image-wrap img {
    max-height: 30vh;
  }
  .vgs-container {
    align-items: self-start;
    padding-top: 0;
  }


}
@media only screen and (max-width: 1024px) {
  .vgs-slide-image-wrap img {
    display: none !important;
  }
  .vgs-text-block {
    text-align: center;
  }
}
