:root {
  --ep-navy: #0B1D3D;
  --ep-green: #0F6B3D;
  --ep-ink: #111827;
  --ep-muted: #667085;
  --ep-line: #D9E1E8;
  --ep-paper: #FFFFFF;
  --ep-soft: #F5F7F8;
  --ep-serif: "Cormorant Garamond", Georgia, serif;
  --ep-sans: "Inter", Arial, sans-serif;
  --ep-radius: 8px;
  --ep-shadow: 0 10px 30px rgba(11, 29, 61, 0.08);
}

html { scroll-behavior: smooth; }
body {
  color: var(--ep-ink);
  background: var(--ep-paper);
  font-family: var(--ep-sans);
}

h1, h2, h3, h4, h5, h6,
.ep-serif {
  font-family: var(--ep-serif);
  color: var(--ep-navy);
}

.ep-kicker {
  color: var(--ep-green);
  font-family: var(--ep-sans);
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.ep-rule {
  height: 1px;
  background: var(--ep-line);
}

.ep-card {
  background: var(--ep-paper);
  border: 1px solid var(--ep-line);
  border-radius: var(--ep-radius);
  box-shadow: var(--ep-shadow);
  overflow: hidden;
}

.ep-btn,
.elementor a.ep-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .5rem;
  padding: .78rem 1.2rem;
  border-radius: 4px;
  background: var(--ep-green);
  color: #fff;
  font-family: var(--ep-sans);
  font-weight: 600;
  text-decoration: none;
  transition: transform .2s ease, background-color .2s ease;
}

.ep-btn:hover,
.elementor a.ep-btn:hover {
  background: var(--ep-navy);
  color: #fff;
  transform: translateY(-1px);
}

.ep-link {
  color: var(--ep-green);
  font-weight: 600;
}

.ep-link:hover { color: var(--ep-navy); }

.ep-section {
  padding-block: clamp(52px, 7vw, 96px);
}

.ep-container {
  width: min(1200px, calc(100% - 40px));
  margin-inline: auto;
}

@media (max-width: 767px) {
  .ep-container { width: min(100% - 28px, 1200px); }
}
