/* Header */
.header {
  background: rgba(255, 255, 255, 0.9);
  backdrop-filter: blur(8px);
  border-bottom: 1px solid #e5e7eb;
  position: sticky;
  top: 0;
  z-index: 50;
}
.header .logo {
  display:flex; align-items:center; gap:8px;
  font-weight:700; font-size:1.25rem; letter-spacing:-.02em; color:#1f2937;
}
.header nav a { color:#374151; font-size:.875rem; text-decoration:none; transition:color .2s ease; }
.header nav a:hover { color:#2563eb; }
.header .cta { background:#2563eb; color:#fff; padding:.5rem 1rem; border-radius:.75rem; font-weight:500; transition:background .2s, box-shadow .2s; }
.header .cta:hover { background:#1d4ed8; box-shadow:0 4px 12px rgba(0,0,0,.1); }

/* Namespaced Footer */
.nv-footer { display:block !important; position:relative; z-index:1; border-top:1px solid #e5e7eb; background:#f9fafb; padding:2rem 1rem; font-size:.875rem; color:#6b7280; clear:both; }
.nv-footer-content { display:flex; flex-direction:column; gap:1rem; }
@media (min-width:768px){ .nv-footer-content{ flex-direction:row; justify-content:space-between; align-items:center; } }
.nv-footer-brand { display:flex; align-items:center; gap:.5rem; font-weight:600; color:#374151; }
.nv-footer-nav { display:flex; gap:1.5rem; }
.nv-footer-nav a { color:#374151; text-decoration:none; transition:color .2s; }
.nv-footer-nav a:hover { color:#2563eb; }

/* Prevent overlay */
section, header { position:relative; z-index:0; }

/* Novacertis brand colors */
:root {
  --novacertis-green: #16a34a;
  --novacertis-dark: #1f2937;
}

/* Headings */
h1, h2 { color: var(--novacertis-green); }
h3 { color: var(--novacertis-dark); }
