/*
 * This is a manifest file that'll be compiled into application.css.
 *
 * With Propshaft, assets are served efficiently without preprocessing steps. You can still include
 * application-wide styles in this file, but keep in mind that CSS precedence will follow the standard
 * cascading order, meaning styles declared later in the document or manifest will override earlier ones,
 * depending on specificity.
 *
 * Consider organizing styles into separate files for maintainability.
 */

:root {
  /* Brand colours (from your tree: dark green + light green) */
  --brand-dark: #3f5a34; /* deep olive green */
  --brand-light: #a7be6b; /* soft leaf green */
  --brand-tint: #eef4e7; /* very light green background tint */

  /* Bootstrap variable overrides */
  --bs-primary: var(--brand-dark);
  --bs-secondary: var(--brand-light);
  --bs-link-color: var(--brand-dark);
  --bs-link-hover-color: #2f4427;
}

html, body {
  font-family: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, "Apple Color Emoji", "Segoe UI Emoji";
  color: #2a2a2a;
}

/* Headings use friendlier Nunito Sans to echo cooperative calmness */
h1, h2, h3, h4, h5, h6, .display-1, .display-2, .display-3, .display-4, .display-5, .display-6 {
  font-family: "Nunito Sans", "Inter", system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  letter-spacing: .2px;
}

/* Type scale for clarity and empathy */
h1, .display-5 { font-weight: 700; }
h2 { font-weight: 700; }
h3 { font-weight: 700; }
.lead { color: #3a3a3a; }

/* Layout rhythm reminiscent of Co‑op clarity */
main > section { scroll-margin-top: 80px; }
.container { max-width: 1040px; }
.rounded { border-radius: .6rem !important; }
.btn { border-radius: .6rem; }

/* Navbar */
.navbar {
  border-color: rgba(0,0,0,.06) !important;
}
.navbar .navbar-brand {
  color: var(--brand-dark);
}
.navbar .nav-link {
  color: #4a4a4a;
}
.navbar .nav-link:hover, .navbar .nav-link.active {
  color: var(--brand-dark);
}
.navbar .btn.btn-success { background-color: var(--brand-light); border-color: var(--brand-light); color: #24341e; }
.navbar .btn.btn-success:hover { background-color: #9ab65b; border-color: #9ab65b; color: #1e2b18; }

/* Buttons */
.btn-primary {
  background-color: var(--brand-dark);
  border-color: var(--brand-dark);
}
.btn-primary:hover {
  background-color: #334c2b;
  border-color: #334c2b;
}
.btn-outline-secondary {
  color: var(--brand-dark);
  border-color: var(--brand-dark);
}
.btn-outline-secondary:hover {
  background-color: var(--brand-dark);
  border-color: var(--brand-dark);
  color: #fff;
}

/* Gentle card elevations */
.shadow-sm { box-shadow: 0 .125rem .5rem rgba(0,0,0,.06) !important; }

/* Panels and sections */
section.bg-light { background-color: var(--brand-tint) !important; }
.card-clean { background: #fff; border: 1px solid rgba(0,0,0,.06); border-radius: .8rem; padding: 1.25rem; }
.badge-brand { background-color: var(--brand-light); color: #22311c; }

/* Empathetic text tones */
.text-soft { color: #555; }
h1, h2, h3 { color: #2d3b27; }

/* Memorial page - calm, wiki-like layout */
.memorial-header { border-bottom: 1px solid rgba(0,0,0,.08); padding-bottom: .75rem; margin-bottom: 1.25rem; }
.memorial-content { line-height: 1.75; font-size: 1.05rem; }
.memorial-infobox { background: #fff; border: 1px solid rgba(0,0,0,.08); border-radius: .6rem; }
.memorial-infobox .title { background: var(--brand-light); color: #22311c; font-weight: 700; padding: .5rem .75rem; border-top-left-radius: .6rem; border-top-right-radius: .6rem; }
.memorial-infobox .body { padding: .75rem; }
.memorial-quote { border-left: 4px solid var(--brand-light); padding-left: 1rem; color: #4e4e4e; font-style: italic; }


/* Footer */
footer { color: #666; }

