/* Custom site styles to harmonize with new dark/teal backgrounds */
:root{
  --edc-accent: #22d3ee; /* cyan */
  --edc-accent-2: #06b6d4; /* darker cyan */
  --edc-dark: #0b1220; /* deep navy */
  --edc-dark-2: #101a2e; /* slightly lighter */
  --edc-muted: #94a3b8; /* slate */
  --edc-light: #e6f1fa;
}

/* Navbar tweaks for dark header */
#mainNav{
  background: rgba(8,14,26,0.55);
  backdrop-filter: saturate(120%) blur(6px);
  -webkit-backdrop-filter: saturate(120%) blur(6px);
}
#mainNav .navbar-brand{ color: var(--edc-light); font-weight: 700; }
#mainNav .nav-link{ color: #c6d2e3; }
#mainNav .nav-link.active, #mainNav .nav-link:focus, #mainNav .nav-link:hover{ color: var(--edc-accent); }

/* Header text contrast */
.masthead .brand-heading{ color: var(--edc-light); text-shadow: 0 2px 16px rgba(0,0,0,.35); }
.masthead .intro-text{ color: #cbd5e1; }

/* Primary button restyle (Contact Us) */
.btn-primary{
  --bs-btn-color: #07131e;
  --bs-btn-bg: var(--edc-accent);
  --bs-btn-border-color: var(--edc-accent);
  --bs-btn-hover-bg: var(--edc-accent-2);
  --bs-btn-hover-border-color: var(--edc-accent-2);
  --bs-btn-active-bg: var(--edc-accent-2);
  --bs-btn-active-border-color: var(--edc-accent-2);
  --bs-btn-disabled-bg: var(--edc-accent);
  --bs-btn-disabled-border-color: var(--edc-accent);
  color: #07131e !important;
  border-width: 0;
  border-radius: 999px;
  box-shadow: 0 8px 24px rgba(34, 211, 238, .25), 0 2px 6px rgba(0,0,0,.2);
  padding-left: 1.25rem; padding-right: 1.25rem;
}
.btn-primary .fa{ margin-right: .4rem; }
.btn-primary:hover, .btn-primary:focus{ color: #031018 !important; box-shadow: 0 10px 28px rgba(6, 182, 212, .3), 0 3px 8px rgba(0,0,0,.25); }
.btn-primary:focus{ outline: 2px solid rgba(34, 211, 238, .6); outline-offset: 2px; }

/* Circle scroll button accent */
.btn-circle{ color: var(--edc-accent) !important; border-color: var(--edc-accent) !important; }
.btn-circle:hover{ color: #07131e !important; background: var(--edc-accent) !important; }

/* Services icons accent */
#services .fa{ color: var(--edc-accent); text-shadow: 0 4px 14px rgba(34,211,238,.25); }

/* Align service titles across columns by giving icons equal height and bottom alignment */
#services i.fa.fa-4x{
  display: inline-flex;           /* allow vertical alignment control */
  height: 88px;                   /* equal visual box for different glyph metrics */
  align-items: flex-end;          /* align glyph bottoms to the same baseline */
  justify-content: center;
  width: 100%;                    /* keep centering consistent within text-center */
}

/* Footer */
footer{ background: var(--edc-dark-2); color: var(--edc-muted); padding: 2rem 0; }
footer p{ margin: 0; }

/* Content section default text color on dark bgs */
.content-section{ color: #e2e8f0; }
#about{ background: #0e1627; }
#contact{ background: #0e1627; }

/* Links */
.content-section a{ color: var(--edc-accent); }
.content-section a:hover{ color: var(--edc-accent-2); }


/* Normalize Services headings height so paragraphs align regardless of line wraps */
#services h4{
  line-height: 1.25;            /* predictable line stacking */
  min-height: 2.5em;            /* reserve space for up to two lines */
  margin-bottom: .5rem;         /* tighten gap before paragraph for consistency */
}
