/* app/assets/stylesheets/immo/base.css */

/* ── Reset & base ── */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

#immo-page {
  font-family: 'DM Sans', sans-serif;
  background: #f5f0e8;
  color: #1e1e1e;
  line-height: 1.6;
  padding-bottom: 2rem;

  /* ── Tokens ── */
  --cream:      #f5f0e8;
  --sand:       #e8dfc8;
  --clay:       #c4956a;
  --terracotta: #b5622e;
  --charcoal:   #1a1a1a;
  --warm-gray:  #6b6560;
  --white:      #fdfaf5;
}

/* ── Utilitaires ── */
#immo-page .immo-label {
  font-size: .7rem;
  font-weight: 500;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--clay);
  margin-bottom: 10px;
}

#immo-page h2 {
  font-family: 'Playfair Display', serif;
  font-size: clamp(1.8rem, 3.5vw, 2.8rem);
  line-height: 1.2;
  color: #1e1e1e;
  margin-bottom: 40px;
}

#immo-page section {
  padding: 80px 6vw;
  max-width: 1100px;
  margin: 0 auto;
}

/* ── Responsive global ── */
@media (max-width: 700px) {
  #immo-page .intro-grid  { grid-template-columns: 1fr; }
  #immo-page .brs-grid    { grid-template-columns: 1fr; }
  #immo-page .residence,
  #immo-page .brs-box,
  #immo-page .contact     { padding: 40px 24px; margin: 0 16px 48px; }
  #immo-page section      { padding: 60px 5vw; }
}
