/* =========================
   BRAND SYSTEM
   ========================= */

:root {
  --farm-green: #2f5d3a;
  --farm-green-dark: #24472d;
  --farm-beige: #f4efe6;
}


/* =========================
   PAGE BACKGROUND (CONSISTENT BASE)
   ========================= */

body {
  background: var(--farm-beige) !important;
  color: var(--farm-green) !important;
}

/* unify all main containers */
.container,
.attendease-block {
  background: var(--farm-beige) !important;
}


/* =========================
   FIX HEADER OVERLAP (CLEAN VERSION)
   ========================= */

/* Make header smaller + stable */
.navbar,
.attendease-portal-style-nav {
  min-height: 100px !important;
  height: 100px !important;
  background: #2f5d3a !important;
  z-index: 9999 !important;
  position: fixed !important;
  top: 0;
  left: 0;
  right: 0;
}

/* Scale logo down proportionally */
.attendease-left-nav-logo {
  max-height: 80px !important;
  height: auto !important;
}

/* Keep logo vertically centered */
.navbar-brand {
  height: 100px !important;
  display: flex !important;
  align-items: center !important;
}

/* PUSH PAGE CONTENT BELOW HEADER (critical fix) */
body {
  padding-top: 110px !important;
}

/* =========================
   HERO IMAGE (DARK GREEN OVERLAY ONLY)
   ========================= */

.attendease-block-hero {
  position: relative;
}

/* keep image size intact — only color treatment */
.attendease-block-hero-filter::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(36, 71, 45, 0.35);
}


/* =========================
   IMAGE + TEXT ALIGNMENT (CENTER BALANCE)
   ========================= */

.attendease-block-image-feature .row {
  display: flex !important;
  align-items: center !important;
}

/* prevents awkward float separation */
.bl-image,
.bl-content {
  float: none !important;
}


/* =========================
   SPACING SYSTEM (KEY FIX)
   ========================= */

.attendease-block {
  margin-bottom: 10px !important;
}

.attendease-block-spacer div {
  height: 10px !important;
}


/* =========================
   REGISTRATION (MATCH PAGE SYSTEM)
   ========================= */

.attendease-registration-form .attendease-block-content {
  background: var(--farm-beige) !important;
  border: 1px solid rgba(47, 93, 58, 0.2) !important;
  box-shadow: none !important;
}


/* =========================
   SYSTEM ALERT FIX ("NOT AVAILABLE")
   ========================= */

.alert,
.alert-warning,
.attendease-registration-choose-pass {
  background: var(--farm-beige) !important;
  border: 1px solid rgba(47, 93, 58, 0.25) !important;
  color: var(--farm-green) !important;
}


/* =========================
   TEXT COLOR CONSISTENCY (SAFE VERSION)
   ========================= */

h1, h2, h3, h4 {
  color: var(--farm-green) !important;
}

p, span {
  color: var(--farm-green) !important;
}


/* =========================
   BUTTON SYSTEM
   ========================= */

.btn-primary {
  background: var(--farm-green) !important;
  color: var(--farm-beige) !important;
  border: none !important;
}

.btn-primary:hover {
  background: var(--farm-green-dark) !important;
}
/* =========================
   FIX HEADER OVERLAP ISSUE
   ========================= */

/* push ALL page content below header */
body {
  padding-top: 200px !important;
}

/* ensure header stays above content */
.navbar,
.attendease-portal-style-nav {
  position: fixed !important;
  top: 0;
  left: 0;
  right: 0;
  z-index: 9999 !important;
}

/* compensate for fixed header space */
.container {
  margin-top: 40 !important;
}

/* restore proper image + text row behavior */
.attendease-block-image-feature .row {
  display: flex !important;
  align-items: center !important;
}

/* IMPORTANT: keep text column active */
.bl-content {
  display: block !important;
  float: none !important;
  width: 100% !important;
}