/* ===== Theme: Antique Romain — 🏛️ classique, antique, structuré ===== */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;600;700;900&family=Lora:wght@400;600;700;900&family=Source+Sans+3:wght@400;600;700;900&display=swap');

:root {
  --radius-card: 6px;
  --radius-button: 6px;
  --r: 6px;
  --r-lg: 6px;
  --r-full: 6px;
}

body, p, .text {
  font-family: 'Source Sans 3', sans-serif;
}

h1, h2, h3, h4, h5, .hero h1, .cluster-hero h1, .badge {
  font-family: 'Cormorant Garamond', 'Lora', serif;
  font-weight: 700;
  letter-spacing: -0.01em;
}

.hero, .hero-photo, .cluster-hero {
  background: linear-gradient(180deg, #1E40AF 0%, #2563EB 50%, #1E3A8A 100%) !important;
  position: relative;
}
.hero::after, .cluster-hero::after {
  content: '';
  position: absolute;
  inset: 0;
  background: repeating-linear-gradient(0deg, transparent, transparent 80px, rgba(255,255,255,.04) 80px, rgba(255,255,255,.04) 82px);
  pointer-events: none;
  z-index: 0;
}
.hero > *, .cluster-hero > * { position: relative; z-index: 1; }

.card, .feature-card, .ra-card, .region-card {
  border-radius: 6px !important;
  box-shadow: 0 2px 0 #1E40AF, 0 4px 8px rgba(30,64,175,.15) !important;
  border: 1px solid #93C5FD; border-top: 4px solid #2563EB !important;
  transition: transform .2s, box-shadow .2s;
}
.card:hover, .feature-card:hover, .ra-card:hover, .region-card:hover {
  transform: translateY(-4px);
}

.btn-primary, .btn-cta, .header-cta, button[type="submit"], .a54-sticky-cta-bar a {
  border-radius: 6px !important;
}

section.hero, section.cluster-hero {
  background-image: linear-gradient(180deg, transparent calc(100% - 1px), #DBEAFE 1px); padding-bottom: 60px;
}
