/* ==========================================================================
   single-realisation.css
   ========================================================================== */


/* ---- Hero centré ---- */

.hero-realisation-single.center-content .container {
  text-align: center !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  padding-top: 70px;
}

.hero-realisation-single .breadcrumb {
  justify-content: center !important;
}

.hero-realisation-single .eyebrow {
  color: rgba(255, 255, 255, 0.75) !important;
  justify-content: center !important;
}

.hero-realisation-single .eyebrow::before {
  display: none !important;
}

.hero-realisation-single h2 {
      color: var(--blue-deep) !important;
  max-width: 24ch !important;
}

.realisation-badges {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  gap: 0.6rem !important;
  margin-top: var(--space-2) !important;
}

.realisation-badges .badge {
  background: rgba(255, 255, 255, 0.16) !important;
  color: var(--blue-deep) !important;
  border: 1px solid rgba(255, 255, 255, 0.3) !important;
}


/* ---- Galerie de photos du chantier ---- */

.realisation-gallery {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: var(--space-3) !important;
}


.realisation-gallery .wp-block-gallery,
.realisation-gallery .blocks-gallery-grid {
  grid-column: 1 / -1 !important;
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: var(--space-3) !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}


.realisation-gallery figure,
.realisation-gallery .wp-block-image,
.realisation-gallery .blocks-gallery-item {
  margin: 0 !important;
  width: auto !important;
}


.realisation-gallery img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  border-radius: var(--radius-m) !important;
  aspect-ratio: 4 / 3 !important;
  transition: transform 0.5s var(--ease) !important;
}


.realisation-gallery figure:hover img {
  transform: scale(1.03) !important;
}


.realisation-gallery figcaption {
  display: none !important;
}


/* ---- Responsive galerie ---- */

@media (max-width: 900px) {

  .realisation-gallery,
  .realisation-gallery .wp-block-gallery,
  .realisation-gallery .blocks-gallery-grid {
    grid-template-columns: repeat(2, 1fr) !important;
  }

}


@media (max-width: 560px) {

  .realisation-gallery,
  .realisation-gallery .wp-block-gallery,
  .realisation-gallery .blocks-gallery-grid {
    grid-template-columns: 1fr !important;
  }

}


/* ---- Lightbox plein écran ---- */

.lightbox {
  position: fixed !important;
  inset: 0 !important;
  z-index: 2000 !important;
  background: rgba(10, 15, 25, 0.94) !important;
  display: none !important;
  align-items: center !important;
  justify-content: center !important;
  padding: var(--space-4) !important;
}


.lightbox.open {
  display: flex !important;
}


.lightbox-content {
  max-width: 90vw !important;
  max-height: 84vh !important;
  text-align: center !important;
}


.lightbox-content img {
  max-width: 90vw !important;
  max-height: 74vh !important;
  border-radius: var(--radius-s) !important;
  margin-inline: auto !important;
}


.lightbox-caption {
  color: #fff !important;
  margin-top: var(--space-2) !important;
  font-weight: 600 !important;
}


.lightbox-close,
.lightbox-prev,
.lightbox-next {
  position: absolute !important;
  color: #fff !important;
  width: 48px !important;
  height: 48px !important;
  border-radius: 50% !important;
  background: rgba(255, 255, 255, 0.1) !important;
  border: 1px solid rgba(255, 255, 255, 0.2) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  transition: background 0.3s var(--ease) !important;
}


.lightbox-close:hover,
.lightbox-prev:hover,
.lightbox-next:hover {
  background: rgba(255, 255, 255, 0.22) !important;
}


.lightbox-close {
  top: var(--space-3) !important;
  right: var(--space-3) !important;
}


.lightbox-prev {
  left: var(--space-3) !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
}


.lightbox-next {
  right: var(--space-3) !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
}


.lightbox-close svg,
.lightbox-prev svg,
.lightbox-next svg {
  width: 22px !important;
  height: 22px !important;
}


@media (max-width: 700px) {

  .lightbox-prev,
  .lightbox-next {
    width: 40px !important;
    height: 40px !important;
  }

}


.realisation-retours {
	display: flex !important;
	justify-content: center !important;
	align-items: center !important;
	gap: 1rem !important;
	margin-top: var(--space-3) !important;
	flex-wrap: wrap !important;
}


/* Bouton retour accueil */
.realisation-retours .btn-secondary {
	background: transparent !important;
	color: var(--blue-deep) !important;
	border: 1px solid var(--blue-deep) !important;
	border-radius: 25px !important;
	padding: .75rem 1.5rem !important;
	font-weight: 600 !important;
	text-decoration: none !important;
	transition: all .3s ease !important;
}


/* Hover retour accueil */
.realisation-retours .btn-secondary:hover {
	background: var(--blue-deep) !important;
	color: #fff !important;
	transform: translateY(-2px) !important;
}


/* Bouton réalisations */
.realisation-retours .btn-primary {
  background: var(--blue-deep) !important;
	color: var(--white) !important;
	border: 1px solid var(--blue-primary) !important;
	border-radius: 25px !important;
	padding: .75rem 1.5rem !important;
	font-weight: 600 !important;
	text-decoration: none !important;
	transition: all .3s ease !important;
}


/* Hover réalisations */
.realisation-retours .btn-primary:hover {
  background: var(--blue-primary) !important;
	color: #fff !important;
	transform: translateY(-2px) !important;
}


/* Mobile */
@media (max-width: 560px) {

	.realisation-retours {
		flex-direction: column !important;
		width: 100% !important;
	}

	.realisation-retours .btn {
		width: 100% !important;
		text-align: center !important;
	}

}