/* ===== PAGE PRESTATIONS ===== */

.prest-hero {
  background: url('images/bg-floral.jpg') center center / cover no-repeat;
  min-height: 42vh;
  display: flex; align-items: center; justify-content: center;
  text-align: center; position: relative; overflow: hidden; padding: 80px 40px 60px;
}
.prest-hero-overlay {
  position: absolute; inset: 0; background: rgba(255,255,255,0.25);
}
.prest-hero-content { position: relative; z-index: 2; }
.prest-hero-sub {
  font-family: var(--font-serif); font-size: 1.1rem; font-style: italic;
  color: var(--sage-dark); margin-top: 16px;
  text-shadow: 0 1px 6px rgba(255,255,255,0.8);
}

/* Intro */
.prest-intro {
  background: var(--cream);
  padding: 50px 48px 30px;
  text-align: center;
}
.prest-intro-inner {
  max-width: 750px; margin: 0 auto;
}
.prest-intro p {
  font-family: var(--font-serif); font-size: 1.1rem;
  color: var(--gray); line-height: 1.9; font-style: italic;
}

/* Section 3 formules */
.prest-section {
  background: url('images/bg-sections.jpg') center center / cover no-repeat;
  background-color: var(--cream);
  padding: 60px 48px 90px;
}
.prest-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 28px;
  max-width: 1150px;
  margin: 0 auto;
  align-items: stretch;
}

/* Carte prestation */
.prest-card {
  background: rgba(255,255,255,0.92);
  backdrop-filter: blur(8px);
  border-radius: 22px;
  padding: 40px 32px;
  box-shadow: 0 4px 30px rgba(107,143,134,0.12);
  border: 1px solid rgba(143,173,163,0.2);
  position: relative; overflow: hidden;
  transition: transform 0.4s, box-shadow 0.4s;
  display: flex; flex-direction: column; gap: 16px;
  height: 100%;
}
.prest-card::before {
  content: '';
  position: absolute; top: 0; left: 0; right: 0; height: 4px;
  background: linear-gradient(90deg, var(--sage-light), var(--gold-light), var(--sage-light));
}
.prest-card:hover { transform: translateY(-4px); box-shadow: 0 16px 50px rgba(107,143,134,0.2); }

.prest-card-featured {
  border-color: rgba(201,168,76,0.35);
  box-shadow: 0 8px 40px rgba(201,168,76,0.15);
}
.prest-card-featured::before {
  background: linear-gradient(90deg, var(--gold-light), var(--gold), var(--gold-light));
}

.prest-card-badge {
  position: absolute; top: 20px; right: 20px;
  background: var(--gold); color: white;
  font-family: var(--font-sans); font-size: 0.6rem;
  letter-spacing: 0.1em; text-transform: uppercase;
  padding: 4px 12px; border-radius: 20px;
}
.prest-card-number {
  font-family: var(--font-sans); font-size: 0.65rem;
  letter-spacing: 0.3em; color: var(--gold); font-weight: 700;
}
.prest-card-icon {
  width: 72px; height: 72px; border-radius: 50%;
  background: linear-gradient(135deg, var(--sage-bg), rgba(201,168,76,0.08));
  border: 1.5px solid var(--gold-light);
  display: flex; align-items: center; justify-content: center;
}
.prest-card-title {
  font-family: var(--font-cursive); font-size: 2rem;
  color: var(--gold); line-height: 1.2;
}
.prest-card-divider {
  width: 50px; height: 2px;
  background: linear-gradient(to right, var(--gold), transparent);
}
.prest-card-question {
  font-family: var(--font-serif); font-size: 1rem;
  color: var(--sage-dark); line-height: 1.7;
}
.prest-card-text {
  font-family: var(--font-serif); font-size: 0.95rem;
  color: var(--gray); line-height: 1.8;
}
.prest-card-features {
  display: flex; flex-direction: column; gap: 8px;
  padding: 16px; background: var(--sage-bg);
  border-radius: 12px; margin-top: 4px;
}
.prest-feature {
  font-family: var(--font-sans); font-size: 0.8rem;
  color: var(--sage-dark); letter-spacing: 0.05em;
}
.prest-card-btn {
  display: block; margin-top: auto; width: 100%; text-align: center;
  padding: 12px 28px; border-radius: 30px;
  border: 1.5px solid var(--sage);
  font-family: var(--font-sans); font-size: 0.75rem;
  letter-spacing: 0.15em; text-transform: uppercase;
  color: var(--sage-dark); text-decoration: none;
  transition: all 0.3s; text-align: center;
}
.prest-card-btn:hover { background: var(--sage); color: white; }
.prest-card-btn-gold {
  background: var(--gold); border-color: var(--gold); color: white;
}
.prest-card-btn-gold:hover { background: var(--gold-dark); border-color: var(--gold-dark); color: white; }

/* CTA final */
.prest-cta {
  background: url('images/bg-sections.jpg') center center / cover no-repeat;
  background-color: var(--sage-dark);
  padding: 90px 48px;
  text-align: center;
  position: relative;
}
.prest-cta-overlay {
  position: absolute; inset: 0; background: rgba(107,143,134,0.55);
}
.prest-cta-inner { position: relative; z-index: 1; }
.prest-cta-title {
  font-family: var(--font-cursive); font-size: clamp(2.2rem, 4vw, 3.5rem);
  color: white; margin-bottom: 16px;
  text-shadow: 0 2px 16px rgba(0,0,0,0.2);
}
.prest-cta-sub {
  font-family: var(--font-serif); font-size: 1.05rem; font-style: italic;
  color: rgba(255,255,255,0.85); margin-bottom: 36px;
}

@media (max-width: 768px) {
  .prest-grid { grid-template-columns: 1fr; }
  .prest-card-featured { transform: none; }
  .prest-section { padding: 40px 20px 60px; }
}

  .prest-card-img-wrap {
    width: 100%;
    display: flex; align-items: center; justify-content: center;
    padding: 10px 0 0;
  }
  .prest-card-img {
    width: 85%; max-width: 280px; height: auto; object-fit: contain;
    filter: drop-shadow(0 4px 16px rgba(107,143,134,0.15));
    transition: transform 0.4s;
  }
  .prest-card:hover .prest-card-img { transform: scale(1.04); }
  .prest-card-body {
    display: flex; flex-direction: column; gap: 14px; padding-top: 8px;
  }