:root {
  --navy: #0a2540;
  --navy-light: #0f3460;
  --teal: #00b4a0;
  --teal-dark: #008f7f;
}
html { scroll-behavior: smooth; }
body { font-family: 'Inter', system-ui, sans-serif; color: #1e293b; line-height: 1.6; }
.nmls-bar { background: var(--navy); color: white; font-size: 0.75rem; padding: 0.35rem 1rem; text-align: center; }
.nmls-bar a { color: #7dd3fc; text-decoration: underline; }
.site-header { background: white; border-bottom: 1px solid #e2e8f0; position: sticky; top: 0; z-index: 50; box-shadow: 0 1px 3px rgba(0,0,0,0.05); }
.logo-text { font-weight: 800; font-size: 1.5rem; letter-spacing: -0.03em; color: var(--navy); }
.logo-text span { color: var(--teal); }
.btn-primary { background: var(--teal); color: white; font-weight: 600; padding: 0.75rem 1.5rem; border-radius: 0.5rem; transition: all 0.2s; display: inline-flex; align-items: center; gap: 0.5rem; text-decoration: none; }
.btn-primary:hover { background: var(--teal-dark); transform: translateY(-1px); }
.btn-outline { border: 2px solid var(--navy); color: var(--navy); font-weight: 600; padding: 0.7rem 1.4rem; border-radius: 0.5rem; transition: all 0.2s; text-decoration: none; display: inline-flex; }
.btn-outline:hover { background: var(--navy); color: white; }
.card { background: white; border-radius: 1rem; border: 1px solid #e2e8f0; box-shadow: 0 4px 6px -1px rgba(0,0,0,0.05); }
.hero { background: linear-gradient(135deg, #0a2540 0%, #0f3460 50%, #134e4a 100%); color: white; position: relative; overflow: hidden; }
.trust-badge { display: inline-flex; align-items: center; gap: 0.5rem; background: rgba(255,255,255,0.1); padding: 0.5rem 1rem; border-radius: 9999px; font-size: 0.875rem; }
.site-footer { background: var(--navy); color: #cbd5e1; font-size: 0.875rem; }
.site-footer a { color: #94a3b8; }
.site-footer a:hover { color: white; }
.footer-legal { border-top: 1px solid #1e3a5f; font-size: 0.75rem; color: #64748b; padding-top: 1.5rem; margin-top: 1.5rem; }
.calc-input { width: 100%; padding: 0.75rem 1rem; border: 1px solid #cbd5e1; border-radius: 0.5rem; font-size: 1rem; }
.calc-input:focus { outline: none; border-color: var(--teal); box-shadow: 0 0 0 3px rgba(0,180,160,0.2); }
.section-pad { padding: 4rem 1rem; }
@media (min-width: 768px) { .section-pad { padding: 5rem 2rem; } }
.accordion-btn { width: 100%; text-align: left; padding: 1.25rem 0; font-weight: 600; display: flex; justify-content: space-between; background: none; border: none; border-bottom: 1px solid #e2e8f0; cursor: pointer; color: var(--navy); }
.accordion-content { max-height: 0; overflow: hidden; transition: max-height 0.3s ease; }
.accordion-content.open { max-height: 400px; }
.ehl-footer { display: flex; align-items: center; gap: 0.75rem; margin: 1rem 0; }
.prose-es p { margin-bottom: 1rem; color: #334155; }
.prose-es h2 { color: var(--navy); font-size: 1.5rem; font-weight: 700; margin: 2rem 0 0.75rem; }
.prose-es ul { list-style: disc; padding-left: 1.5rem; margin-bottom: 1rem; }
.prose-es li { margin-bottom: 0.4rem; color: #334155; }
