/* ═══════════════════════════════════════════════════════
   HILDÉLIA CONSULTING — etablissements.css
   Styles spécifiques à la page Consulting EHPAD
   ═══════════════════════════════════════════════════════ */

/* ── HERO ────────────────────────────────────────────── */
#hero {
  min-height: calc(100vh - var(--nav-h));
  padding-top: var(--nav-h);
  background: var(--ink);
  display: grid;
  grid-template-columns: 1.1fr 1fr;
  position: relative;
  overflow: hidden;
}
#hero::before {
  content: '';
  position: absolute; bottom: -200px; right: -150px;
  width: 600px; height: 600px; border-radius: 50%;
  background: radial-gradient(circle, rgba(196,147,90,.15) 0%, transparent 65%);
  pointer-events: none;
}
#hero::after {
  content: '';
  position: absolute; top: -100px; left: 50%;
  width: 300px; height: 300px; border-radius: 50%;
  background: radial-gradient(circle, rgba(107,158,138,.1) 0%, transparent 65%);
  pointer-events: none;
}

.hero__content {
  display: flex; flex-direction: column; justify-content: center;
  padding: 6rem 4rem 6rem 5vw;
  position: relative; z-index: 1;
}

.back-link {
  display: inline-flex; align-items: center; gap: .5rem;
  font-size: .78rem; color: rgba(250,247,242,.45);
  letter-spacing: .06em; margin-bottom: 2.5rem;
  transition: color .2s, gap .2s;
}
.back-link:hover { color: var(--gold-light); gap: .8rem; }

.page-badge {
  display: inline-flex; align-items: center; gap: .6rem;
  background: var(--gold); color: #fff;
  padding: .4rem 1rem;
  font-size: .7rem; font-weight: 500; letter-spacing: .12em;
  text-transform: uppercase; width: fit-content;
  margin-bottom: 1.5rem;
}

.hero__content h1 {
  font-family: 'Cormorant Garamond', serif;
  font-size: clamp(2.8rem, 3.5vw, 4.2rem);
  font-weight: 300; line-height: 1.1;
  color: var(--cream); margin-bottom: 1.5rem;
}
.hero__content h1 em { font-style: italic; color: var(--gold-light); }

.hero__lead {
  font-size: 1.02rem; color: rgba(250,247,242,.6);
  font-weight: 300; max-width: 440px; margin-bottom: 2.5rem;
}

.hero__btns { display: flex; gap: 1rem; flex-wrap: wrap; }

/* Hero right — KPIs */
.hero__kpis {
  display: flex; flex-direction: column; justify-content: center;
  padding: 4rem 5vw 4rem 2rem;
  gap: 0;
}
.kpi-card {
  padding: 2rem;
  border-bottom: 1px solid rgba(255,255,255,.07);
}
.kpi-card:last-child { border-bottom: none; }
.kpi-card__num {
  font-family: 'Cormorant Garamond', serif;
  font-size: 2.5rem; font-weight: 300;
  color: var(--gold-light); line-height: 1;
  margin-bottom: .3rem;
}
.kpi-card__label { font-size: .82rem; color: rgba(250,247,242,.5); font-weight: 300; }

/* ── PROBLÈMES ────────────────────────────────────────── */
#problems { background: var(--cream); }

.problems-grid {
  display: grid; grid-template-columns: 1fr 1fr;
  gap: 1.2rem; margin-top: 3rem;
}
.problem-card {
  padding: 2rem; background: var(--white);
  border-left: 3px solid var(--gold-pale);
  transition: border-color .25s;
}
.problem-card:hover { border-color: var(--gold); }
.problem-card__icon { font-size: 1.4rem; margin-bottom: .8rem; }
.problem-card h3 {
  font-family: 'Cormorant Garamond', serif;
  font-size: 1.15rem; font-weight: 600; margin-bottom: .6rem;
}
.problem-card p { font-size: .87rem; color: var(--muted); font-weight: 300; line-height: 1.65; }

/* ── SERVICES ─────────────────────────────────────────── */
#services { background: var(--white); }

.svc-row {
  display: grid; grid-template-columns: 280px 1fr;
  border: 1.5px solid var(--border);
  margin-bottom: 1.5rem;
  transition: box-shadow .25s;
}
.svc-row:hover { box-shadow: 0 8px 32px rgba(196,147,90,.1); }

.svc-row__num {
  background: var(--gold-pale);
  padding: 2.5rem 2rem;
  display: flex; flex-direction: column; justify-content: center;
  border-right: 1.5px solid var(--border);
}
.svc-row__num .num {
  font-family: 'Cormorant Garamond', serif;
  font-size: 3.5rem; font-weight: 300;
  color: var(--gold-light); line-height: 1;
  margin-bottom: .5rem;
}
.svc-row__title {
  font-family: 'Cormorant Garamond', serif;
  font-size: 1.05rem; font-weight: 600;
  color: var(--ink); line-height: 1.3;
}

.svc-row__body { padding: 2.5rem; }
.svc-row__body > p { font-size: .92rem; color: var(--muted); font-weight: 300; margin-bottom: 1.2rem; }

.tag-list { display: flex; flex-wrap: wrap; gap: .5rem; }

/* ── MÉTHODE ──────────────────────────────────────────── */
#methode { background: var(--gold-pale); }

.methode-grid {
  display: grid; grid-template-columns: repeat(3, 1fr);
  gap: 2rem; margin-top: 3rem;
}
.methode-card { background: var(--white); padding: 2.5rem; }
.methode-card__step {
  font-family: 'Cormorant Garamond', serif;
  font-size: 1rem; font-weight: 600;
  color: var(--gold); letter-spacing: .08em;
  margin-bottom: 1rem;
}
.methode-card h3 {
  font-family: 'Cormorant Garamond', serif;
  font-size: 1.25rem; font-weight: 400; margin-bottom: .8rem;
}
.methode-card p { font-size: .87rem; color: var(--muted); font-weight: 300; line-height: 1.65; }

/* ── RÉSULTATS ────────────────────────────────────────── */
#resultats {
  background: var(--ink);
  padding: 6rem 5vw;
}

.resultats__inner {
  max-width: 1180px; margin: 0 auto;
  display: grid; grid-template-columns: 1fr 1fr;
  gap: 5rem; align-items: center;
}

.resultats__text .section-label         { color: var(--gold-light); }
.resultats__text .section-label::before { background: var(--gold); }
.resultats__text .display               { color: var(--cream); }
.resultats__text > p { color: rgba(250,247,242,.55); font-weight: 300; font-size: .95rem; }

.resultats__list { list-style: none; margin-top: 2rem; }
.resultats__list li {
  font-size: .92rem; color: rgba(250,247,242,.75);
  padding: .65rem 0; border-bottom: 1px solid rgba(255,255,255,.07);
  font-weight: 300; display: flex; align-items: flex-start; gap: .8rem;
}
.resultats__list li::before { content: '✦'; color: var(--gold); font-size: .65rem; flex-shrink: 0; margin-top: .25rem; }

.resultats__quote {
  background: rgba(255,255,255,.04);
  border: 1px solid rgba(255,255,255,.08);
  padding: 3rem;
}
.rq__text {
  font-family: 'Cormorant Garamond', serif;
  font-size: 1.3rem; font-style: italic;
  color: var(--cream); line-height: 1.6;
  margin-bottom: 1.5rem;
}
.rq__text::before { content: '"'; color: var(--gold); font-size: 2.5rem; line-height: 0; vertical-align: -.5rem; margin-right: .2rem; }
.rq__author { font-size: .8rem; color: rgba(250,247,242,.45); letter-spacing: .06em; }
.rq__role   { font-size: .75rem; color: var(--gold); margin-top: .2rem; }

/* ── CONTACT ──────────────────────────────────────────── */
#contact { background: var(--white); }

.contact__layout {
  display: grid; grid-template-columns: 1fr 1fr;
  gap: 5rem; align-items: start;
}
.contact__form-wrap { background: var(--gold-pale); padding: 3rem; }
.contact__form-wrap .form-group input:focus,
.contact__form-wrap .form-group select:focus,
.contact__form-wrap .form-group textarea:focus { border-color: var(--gold); }

/* ── RESPONSIVE ───────────────────────────────────────── */
@media (max-width: 900px) {
  #hero                   { grid-template-columns: 1fr; }
  .hero__kpis             { display: none; }
  .hero__content          { padding: 4rem 6vw; }
  .problems-grid          { grid-template-columns: 1fr; }
  .svc-row                { grid-template-columns: 1fr; }
  .svc-row__num           { border-right: none; border-bottom: 1.5px solid var(--border); }
  .methode-grid           { grid-template-columns: 1fr; }
  .resultats__inner       { grid-template-columns: 1fr; gap: 3rem; }
  .contact__layout        { grid-template-columns: 1fr; gap: 3rem; }
}
