/* Charte du 6 octobre 2026. Every selector is restricted to the existing Rennes guide. */
body.page-id-4442 #epicu-city-guide {
  --r2-ink: #2b2b2b;
  --r2-accent: #e84920;
  --r2-line: #e4e4e4;
  --r2-meta: #7a7a7a;
}

/* Adjacent half-spaces give 96 px desktop / 48 px mobile, without inner padding. */
body.page-id-4442 #epicu-city-guide .r2-section { padding: 48px 24px; }
body.page-id-4442 #epicu-city-guide .r2-section > .e-con-inner { padding: 0; }
body.page-id-4442 #epicu-city-guide .r2-hero { padding-top: 24px; padding-bottom: 32px; }
body.page-id-4442 #epicu-city-guide .r2-univers { padding-top: 0; padding-bottom: 0; }

/* Keep the user's title and the approved font sizes. The city stays orange. */
body.page-id-4442 #epicu-city-guide .r2-hero-title .elementor-heading-title {
  font-family: Poppins, sans-serif;
  font-size: 56px;
  font-weight: 700;
  letter-spacing: -.025em;
  text-transform: none;
}
body.page-id-4442 #epicu-city-guide .r2-hero-title .ep-accent { color: #e84920; }
body.page-id-4442 #epicu-city-guide .elementor-post__title a,
body.page-id-4442 #epicu-city-guide .elementor-post__title a::first-letter {
  text-transform: none;
}
body.page-id-4442 #epicu-city-guide .elementor-post__title,
body.page-id-4442 #epicu-city-guide .elementor-post__title a,
body.page-id-4442 #epicu-city-guide .r2-guide-card h3 {
  font: 700 20px/1.3 Poppins, sans-serif;
  letter-spacing: -.025em;
  word-break: normal;
}

/* Universe colours are markers, never a replacement for readable body text. */
body.page-id-4442 #epicu-city-guide #food,
body.page-id-4442 #epicu-city-guide .r2-nav-food { --r2-category-accent: #e84920; }
body.page-id-4442 #epicu-city-guide #shop,
body.page-id-4442 #epicu-city-guide .r2-nav-shop { --r2-category-accent: #6d2239; }
body.page-id-4442 #epicu-city-guide #travel,
body.page-id-4442 #epicu-city-guide .r2-nav-travel { --r2-category-accent: #94a424; }
body.page-id-4442 #epicu-city-guide #fun,
body.page-id-4442 #epicu-city-guide .r2-nav-fun { --r2-category-accent: #e4253f; }
body.page-id-4442 #epicu-city-guide #beauty,
body.page-id-4442 #epicu-city-guide .r2-nav-beauty { --r2-category-accent: #5575b8; }
body.page-id-4442 #epicu-city-guide .r2-hero-kicker .elementor-heading-title,
body.page-id-4442 #epicu-city-guide .r2-category-label .elementor-heading-title,
body.page-id-4442 #epicu-city-guide .ep-kicker .elementor-heading-title {
  color: var(--r2-category-accent, #e84920);
  font: 600 12px/1.5 Montserrat, sans-serif;
  letter-spacing: 0;
}
body.page-id-4442 #epicu-city-guide .r2-hero-kicker .elementor-heading-title::before,
body.page-id-4442 #epicu-city-guide .r2-category-label .elementor-heading-title::before,
body.page-id-4442 #epicu-city-guide .ep-kicker .elementor-heading-title::before { content: none; }
/* Every category label uses the same unboxed treatment. */
body.page-id-4442 #epicu-city-guide .r2-category-label .elementor-heading-title {
  padding: 0;
  border-radius: 0;
  background: none;
}
/* Nearby-city links use the light variant approved on 6 October. */
body.page-id-4442 #epicu-city-guide .elementor-element-149b86cd .elementor-button {
  background: #fff;
  color: #2b2b2b;
  border-color: #2b2b2b;
}
body.page-id-4442 #epicu-city-guide .elementor-element-149b86cd .elementor-button:hover,
body.page-id-4442 #epicu-city-guide .elementor-element-149b86cd .elementor-button:focus-visible {
  background: #2b2b2b;
  color: #fff;
}
/* One decorative colour marker per address card. */
body.page-id-4442 #epicu-city-guide .r2-category .elementor-post__text::before {
  content: "";
  display: block;
  flex: 0 0 8px;
  width: 8px;
  height: 8px;
  margin-bottom: 12px;
  border-radius: 50%;
  background: var(--r2-category-accent);
}

body.page-id-4442 #epicu-city-guide .r2-hero-intro p {
  font: italic 300 16px/1.55 Montserrat, sans-serif;
}
body.page-id-4442 #epicu-city-guide .r2-photo-caption .elementor-heading-title,
body.page-id-4442 #epicu-city-guide .r2-photo-caption p {
  font: italic 300 15px/1.55 Montserrat, sans-serif;
}
body.page-id-4442 #epicu-city-guide .r2-guide-card figcaption {
  font: italic 300 15px/1.55 Montserrat, sans-serif;
}
body.page-id-4442 #epicu-city-guide .r2-breadcrumb,
body.page-id-4442 #epicu-city-guide .r2-carousel-position,
body.page-id-4442 #epicu-city-guide .r2-carousel-toolbar p > span,
body.page-id-4442 #epicu-city-guide .r2-city-stat small {
  color: var(--r2-meta);
  font-weight: 500;
}
body.page-id-4442 #epicu-city-guide .r2-guide-eyebrow { color: #e84920; }

/* Geometric stroke icons keep the existing buttons, labels and native handlers. */
body.page-id-4442 #epicu-city-guide .epicu-rcf-icon,
body.page-id-4442 #epicu-city-guide .epicu-rcf-icon path {
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 2 !important;
  stroke-linecap: round;
  stroke-linejoin: round;
}
body.page-id-4442 #epicu-city-guide .epicu-rcf-icon {
  display: block;
  width: 20px;
  height: 20px;
  flex: none;
}
body.page-id-4442 #epicu-city-guide .r2-carousel-arrow .epicu-rcf-icon { width: 24px; height: 24px; }

@media (max-width: 767px) {
  body.page-id-4442 #epicu-city-guide .r2-section { padding: 24px; }
  body.page-id-4442 #epicu-city-guide .r2-hero { padding-top: 20px; padding-bottom: 24px; }
  body.page-id-4442 #epicu-city-guide .r2-univers { padding-top: 0; padding-bottom: 0; }
  body.page-id-4442 #epicu-city-guide .r2-hero-title .elementor-heading-title { font-size: 32px; }
  body.page-id-4442 #epicu-city-guide .elementor-post__title,
  body.page-id-4442 #epicu-city-guide .elementor-post__title a,
  body.page-id-4442 #epicu-city-guide .r2-guide-card h3 { font-size: 16px; }
  body.page-id-4442 #epicu-city-guide .r2-hero-kicker .elementor-heading-title,
  body.page-id-4442 #epicu-city-guide .r2-category-label .elementor-heading-title,
  body.page-id-4442 #epicu-city-guide .ep-kicker .elementor-heading-title { font-size: 11px; }
  body.page-id-4442 #epicu-city-guide .r2-hero-intro p,
  body.page-id-4442 #epicu-city-guide .r2-photo-caption .elementor-heading-title,
  body.page-id-4442 #epicu-city-guide .r2-photo-caption p,
  body.page-id-4442 #epicu-city-guide .r2-guide-card figcaption { font-size: 13px; }
}
