/* ============================================================
   BEAVER BUILDER → THEME LAYER (Emerald Green palette)
   Site-wide defaults so any Beaver Builder content matches the site design
   out of the box. Scoped to .fl-builder-content; NO !important, loaded late,
   so per-module Builder settings still win. Tokens mirror css/global.css :root.
   ============================================================ */
.fl-builder-content {
  --ink: #12241b; --ink-soft: #41504a; --muted: #5c6b62;
  --line: #e7e4da; --line-2: #d5ddd6;
  --brand: #1f6f47; --brand-600: #0f3b2b;
  --r-btn: 9px;
  --sans: 'Figtree', system-ui, sans-serif;
  --serif: 'Cormorant Garamond', Georgia, serif;
}

.fl-builder-content .fl-heading,
.fl-builder-content .fl-heading .fl-heading-text {
  font-family: var(--serif); color: var(--ink); font-weight: 700; letter-spacing: 0; line-height: 1.1;
}
.fl-builder-content .fl-rich-text,
.fl-builder-content .fl-rich-text p,
.fl-builder-content .fl-rich-text li { font-family: var(--sans); color: var(--ink-soft); font-size: 18px; line-height: 1.7; }
.fl-builder-content .fl-rich-text a { color: var(--brand); font-weight: 600; text-decoration: none; }
.fl-builder-content .fl-rich-text a:hover { color: var(--brand-600); text-decoration: underline; }
/* Footer rich-text links follow the footer palette, not the brand link color. */
.fl-builder-content .eg-footer .fl-rich-text a { color: #ffffff; font-weight: 500; }
.fl-builder-content .eg-footer .fl-rich-text a:hover { color: var(--green-light, #7fd39a); text-decoration: none; }
.fl-builder-content .eg-footer .fl-rich-text .eg-footer__legal a { color: inherit; text-decoration: underline; text-underline-offset: 3px; }
.fl-builder-content .eg-footer .fl-rich-text .eg-footer__legal a:hover { color: #ffffff; }

.fl-builder-content .fl-button-wrap a.fl-button {
  display: inline-flex; align-items: center; gap: 10px;
  background: var(--brand);
  border: 1px solid transparent; border-radius: var(--r-btn);
  padding: 15px 26px; font-family: var(--sans); font-weight: 600; font-size: 17px; letter-spacing: 0;
  transition: background .2s ease;
}
.fl-builder-content .fl-button-wrap a.fl-button:hover { background: var(--brand-600); }
.fl-builder-content a.fl-button .fl-button-text,
.fl-builder-content a.fl-button .fl-button-icon { color: #fff; }

.fl-builder-content .fl-separator { border-top-color: var(--line); }

.fl-builder-content input[type="text"],
.fl-builder-content input[type="email"],
.fl-builder-content input[type="tel"],
.fl-builder-content input[type="url"],
.fl-builder-content textarea,
.fl-builder-content select {
  font-family: var(--sans); font-size: 17px; color: var(--ink); background: var(--surface, #fff);
  border: 1.5px solid var(--line-2); border-radius: 8px; padding: 13px 14px;
  transition: border-color .15s, box-shadow .15s;
}
.fl-builder-content input:focus, .fl-builder-content textarea:focus, .fl-builder-content select:focus {
  outline: none; border-color: var(--brand); box-shadow: 0 0 0 4px rgba(31,111,71,.15);
}
