:root { --nc-ink:#18212b; --nc-muted:#5f6b76; --nc-line:#dfe4e8; --nc-soft:#f6f7f8; --nc-accent:#315c4b; --nc-accent-soft:#edf4f1; }
html { scroll-behavior:smooth; }
body { color:var(--nc-ink); background:#fff; }
a { color:var(--nc-accent); }
.navbar-brand { letter-spacing:-.02em; }
.nav-link { color:#4f5b66; }
.nav-link:hover,.nav-link:focus { color:var(--nc-ink); }
.hero { padding:7rem 0 5rem; }
.eyebrow { color:var(--nc-accent); font-size:.78rem; font-weight:700; letter-spacing:.09em; text-transform:uppercase; }
.display-title { max-width:900px; font-size:clamp(2.7rem,7vw,5.5rem); line-height:.98; letter-spacing:-.055em; }
.hero-copy { max-width:760px; color:var(--nc-muted); font-size:1.2rem; }
.quiet-panel { background:var(--nc-soft); border:1px solid var(--nc-line); border-radius:1rem; }
.status-dot { width:.62rem; height:.62rem; border-radius:50%; background:var(--nc-accent); display:inline-block; margin-right:.5rem; }
.section-pad { padding:5rem 0; }
.section-heading { max-width:760px; }
.section-heading h2 { letter-spacing:-.035em; }
.section-heading p { color:var(--nc-muted); }
.feature { height:100%; border-top:2px solid var(--nc-ink); padding-top:1.25rem; }
.feature p,.small-copy { color:var(--nc-muted); }
.number { width:2.3rem; height:2.3rem; border-radius:50%; display:inline-flex; align-items:center; justify-content:center; background:var(--nc-accent-soft); color:var(--nc-accent); font-weight:700; flex:0 0 auto; }
.decision-row { padding:1rem 0; border-bottom:1px solid var(--nc-line); }
.decision-row:last-child { border-bottom:0; }
.quote-line { border-left:3px solid var(--nc-accent); padding-left:1.25rem; font-size:clamp(1.35rem,2.6vw,2rem); letter-spacing:-.025em; }
.security-item { padding:1rem 0; border-bottom:1px solid var(--nc-line); }
.security-item:last-child { border-bottom:0; }
.badge-soft { color:var(--nc-accent); background:var(--nc-accent-soft); border:1px solid #d6e4de; }
.cta { background:var(--nc-ink); color:#fff; border-radius:1.1rem; }
.cta p { color:#cbd2d8; }
footer { border-top:1px solid var(--nc-line); color:var(--nc-muted); }
@media (max-width:767.98px) { .hero { padding:4.5rem 0 3rem; } .section-pad { padding:3.5rem 0; } }
