/* ===== IMMO SECTION — Bloc-type CSS (chargé dynamiquement) ===== */

/* Reveal animations for immo columns */
.reveal-from-left,
.reveal-from-right {
  overflow: hidden;
}

.reveal-from-left > .immo-col-inner {
  transform: translateX(-110%);
  transition: transform 1.4s cubic-bezier(0.16, 1, 0.3, 1) 0.15s;
}

.reveal-from-left.visible > .immo-col-inner {
  transform: translateX(0);
}

.reveal-from-right > .immo-col-inner {
  transform: translateX(110%);
  transition: transform 1.4s cubic-bezier(0.16, 1, 0.3, 1) 0.15s;
}

.reveal-from-right.visible > .immo-col-inner {
  transform: translateX(0);
}

/* ===== IMMO SECTION ===== */
.immo-section {
  padding: 10rem 6rem;
  position: relative;
  overflow: hidden;
  background-color: rgb(32, 52, 84);
  transition: background-color 0.15s linear;
}

.immo-section__inner {
  max-width: 1200px;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}

.immo-section__watermark {
  position: absolute;
  top: -0.1em;
  right: 0;
  font-family: 'Plaax Ney', sans-serif;
  font-size: clamp(3.5rem, 8vw, 8rem);
  font-weight: 900;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.1);
  white-space: nowrap;
  pointer-events: none;
  letter-spacing: 0.05em;
  line-height: 1;
  text-align: right;
  z-index: 0;
}

.immo-section__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  margin-top: 4rem;
  margin-bottom: 4rem;
}

.immo-section__col {
  line-height: 1.9;
  color: var(--text-muted);
}

.immo-section__col--left {
  border-left: 2px solid var(--accent);
  padding: 0 2rem;
}

.immo-section__col--right {
  border-left: 2px solid var(--abenex-orange);
  padding-left: 2rem;
}

.immo-section__col p {
  margin-bottom: 1.5rem;
}

.immo-section__divider {
  width: 60px;
  height: 2px;
  background: linear-gradient(to right, var(--accent), var(--abenex-orange));
  margin: 1.5rem 0;
}

/* ===== PILIERS ===== */
.immo-piliers {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 1.5rem;
  margin-top: 2rem;
}

.immo-pilier {
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 0;
  padding: 1.5rem;
  transition: border-color 0.3s ease;
}

.immo-pilier:hover {
  border-color: var(--accent);
}

.immo-pilier__number {
  display: block;
  font-size: 1.5rem;
  font-weight: 700;
  color: var(--accent);
  letter-spacing: 0.1em;
  margin-bottom: 0.75rem;
}

.immo-pilier__text {
  color: var(--text-muted);
  line-height: 1.7;
  font-size: 0.95rem;
}

/* ===== RESPONSIVE ===== */
@media (max-width: 1024px) {
  .immo-section {
    padding: 6rem 2rem;
  }

  .immo-section__grid {
    grid-template-columns: 1fr;
    gap: 3rem;
  }

  .immo-section__col--right {
    text-align: left;
    border-right: none;
    border-left: 2px solid var(--abenex-orange);
    padding-right: 0;
    padding-left: 2rem;
  }
}

@media (max-width: 768px) {
  .immo-piliers {
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem;
  }
}

@media (max-width: 480px) {
  .immo-piliers {
    grid-template-columns: 1fr;
  }
}
