/* Feature row — 2 colonnes texte/image (avec variante reverse). + Philosophy block. */
.feature {
  display: grid;
  grid-template-columns: 1.05fr 1fr;
  gap: var(--gap-xl);
  align-items: start;
}
.feature--reverse { grid-template-columns: 1fr 1.05fr; }
.feature--reverse .feature__media { order: -1; }

.feature__media {
  position: relative;
  border-radius: var(--radius-l);
  overflow: hidden;
}
.feature__media img {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
}
/* Page Voile : afficher le plan d'aménagement non rogné */
.feature__media--contain {
  background: var(--bg-soft);
}
.feature__media--contain img {
  aspect-ratio: auto;
  height: auto;
  object-fit: contain;
}

.feature__caption {
  position: absolute;
  left: 1rem;
  bottom: 1rem;
  padding: 0.4em 0.8em;
  background: rgba(255, 255, 255, 0.94);
  border-radius: 999px;
  font-family: var(--font-display);
  font-size: 0.78rem;
  color: var(--marine);
  font-weight: 700;
}
.feature__body p:first-of-type {
  font-size: 1.08rem;
  color: var(--ink-2);
}

/* Philosophy block (full width centré, page Voile) */
.philosophy {
  max-width: 780px;
  margin: 0 auto;
  text-align: left;
}
.philosophy h2 { margin-top: 0.4rem; }
.philosophy p:first-of-type {
  font-size: 1.08rem;
  color: var(--ink-2);
}

@media (max-width: 920px) {
  .feature,
  .feature--reverse {
    grid-template-columns: 1fr;
    gap: var(--gap-m);
  }
  .feature--reverse .feature__media { order: 0; }
}
