/* ============================================================
   RTG — Univers HPA / Solution Camping
   ============================================================ */

body.rtg-hpa {
  --rtg-bg: #fff5ee;
  --rtg-surface: #ffffff;
  --rtg-text: #171717;
  --rtg-text-muted: rgba(23, 23, 23, 0.72);
  --rtg-line: rgba(23, 23, 23, 0.08);
  --rtg-cta-1: #7c95a3;
  --rtg-cta-2: #9b79a3;
  --rtg-header-height: 90px;

  background: var(--rtg-bg);
  color: var(--rtg-text);
}

body.rtg-hpa #main,
body.rtg-hpa main,
body.rtg-hpa .page-wrapper,
body.rtg-hpa .elementor-location-header,
body.rtg-hpa .elementor-location-footer {
  position: relative;
  background: transparent;
}

body.rtg-hpa .rtg-section {
  background: transparent;
}

body.rtg-hpa .rtg-section .elementor-heading-title,
body.rtg-hpa .rtg-section p,
body.rtg-hpa .rtg-section li,
body.rtg-hpa .rtg-section a {
  color: inherit;
}

body.rtg-hpa .rtg-eyebrow .elementor-heading-title {
  font-size: 14px;
  line-height: 1;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--rtg-text-muted);
}

body.rtg-hpa .rtg-display .elementor-heading-title {
  font-size: clamp(40px, 6vw, 88px);
  max-width: 11ch;
}

body.rtg-hpa .rtg-lead p {
  font-size: clamp(18px, 2vw, 21px);
  line-height: 1.5;
  color: var(--rtg-text-muted);
  max-width: 38ch;
}

body.rtg-hpa .rtg-btn-primary .elementor-button {
  background: var(--rtg-cta-1);
  color: #ffffff;
}

body.rtg-hpa .rtg-btn-primary .elementor-button:hover {
  background: color-mix(in srgb, var(--rtg-cta-1) 88%, #000000 12%);
  color: #ffffff;
}

body.rtg-hpa .rtg-btn-secondary .elementor-button {
  background: transparent;
  color: var(--rtg-text);
  border-color: rgba(23, 23, 23, 0.14);
}

body.rtg-hpa .rtg-btn-secondary .elementor-button:hover {
  border-color: rgba(23, 23, 23, 0.34);
  color: var(--rtg-text);
}

body.rtg-hpa .rtg-card {
  border-color: var(--rtg-line);
  background: var(--rtg-surface);
}

body.rtg-hpa .rtg-card--soft {
  border-radius: 24px;
  box-shadow: 0 18px 60px rgba(23, 23, 23, 0.06);
}

body.rtg-hpa .rtg-price-card {
  border: 1px solid var(--rtg-line);
  border-radius: 28px;
  background: var(--rtg-surface);
  padding: clamp(24px, 3vw, 40px);
}

body.rtg-hpa .rtg-price-card--featured {
  border-color: color-mix(in srgb, var(--rtg-cta-1) 45%, transparent);
  box-shadow: 0 24px 80px rgba(124, 149, 163, 0.16);
}

body.rtg-hpa .rtg-faq-item {
  border-top: 1px solid var(--rtg-line);
  padding-top: 24px;
  padding-bottom: 24px;
}

@media (max-width: 767px) {
  body.rtg-hpa .rtg-display .elementor-heading-title {
    font-size: clamp(42px, 13vw, 64px);
  }
}
