:root {
    --nm-green: #0a322a;
    --nm-navy: #0f2238;
    --nm-gold: #c08212;
    --nm-cream: #fffefc;
    --nm-white: #ffffff;
    --nm-muted: rgba(15, 34, 56, 0.72);
    --nm-border: rgba(10, 50, 42, 0.14);
    --nm-shadow: 0 12px 32px rgba(15, 34, 56, 0.08);
    --nm-radius: 8px;
}

html { scroll-behavior: smooth; }
body {
    background: var(--nm-cream);
    color: var(--nm-navy);
    font-family: Inter, system-ui, -apple-system, "Segoe UI", sans-serif;
}
h1, h2, h3, h4 {
    color: var(--nm-navy);
    font-family: Georgia, "Times New Roman", serif;
    font-weight: 700;
}
a { color: var(--nm-green); text-decoration: none; }
a:hover { color: #061f1a; text-decoration: underline; }
a:focus-visible, button:focus-visible, .btn:focus-visible, .nav-link:focus-visible {
    outline: 3px solid #0f62fe;
    outline-offset: 3px;
}
.skip-link {
    background: #fff;
    border: 2px solid var(--nm-green);
    border-radius: var(--nm-radius);
    color: var(--nm-navy);
    left: 1rem;
    padding: .75rem 1rem;
    position: absolute;
    top: 1rem;
    transform: translateY(-200%);
    z-index: 2000;
}
.skip-link:focus { transform: translateY(0); }
.navbar {
    background: var(--nm-cream) !important;
    border-bottom: 1px solid rgba(10, 50, 42, .1);
}
.navbar .navbar-brand img { display: block; height: 84px; width: auto; }
.navbar .nav-link, .navbar .navbar-brand { color: var(--nm-navy); font-weight: 600; }
.navbar .nav-link:hover, .navbar .nav-link.active { color: var(--nm-green); }
.dropdown-menu {
    background: #fff;
    border: 1px solid var(--nm-border);
    border-radius: var(--nm-radius);
    box-shadow: var(--nm-shadow);
    padding: .6rem;
}
.dropdown-item { border-radius: 5px; color: var(--nm-navy); padding: .55rem .75rem; }
.dropdown-item:hover { background: rgba(10, 50, 42, .07); color: var(--nm-green); text-decoration: none; }
.btn { border-radius: var(--nm-radius); font-weight: 700; }
.btn-primary { background: var(--nm-green); border-color: var(--nm-green); }
.btn-primary:hover { background: #06251f; border-color: #06251f; }
.breadcrumb { font-size: .88rem; margin-bottom: 1.75rem; }
.breadcrumb-item + .breadcrumb-item::before { color: rgba(255,255,255,.55); }
.breadcrumb a, .breadcrumb-item.active { color: rgba(255,255,255,.78); }

.seo-hero {
    background: var(--nm-green);
    color: #fff;
    overflow: hidden;
    padding: 70px 0;
    position: relative;
}
.seo-hero::after {
    background: radial-gradient(circle, rgba(192,130,18,.16), transparent 66%);
    content: "";
    height: 520px;
    pointer-events: none;
    position: absolute;
    right: -130px;
    top: -180px;
    width: 520px;
}
.seo-hero__grid {
    align-items: center;
    display: grid;
    gap: clamp(2rem, 5vw, 5rem);
    grid-template-columns: minmax(0, 1.08fr) minmax(320px, .72fr);
    position: relative;
    z-index: 1;
}
.seo-hero__kicker {
    color: #e0b65e;
    font-size: .8rem;
    font-weight: 800;
    letter-spacing: .14em;
    margin-bottom: 1rem;
    text-transform: uppercase;
}
.seo-hero h1 {
    color: #fff;
    font-size: clamp(2.65rem, 5vw, 4.7rem);
    line-height: 1.03;
    margin-bottom: 1.35rem;
}
.seo-hero__lead { color: rgba(255,255,255,.88); font-size: 1.22rem; line-height: 1.65; max-width: 760px; }
.seo-hero__note { color: rgba(255,255,255,.7); max-width: 680px; }
.seo-hero .btn-primary { background: var(--nm-gold); border-color: var(--nm-gold); color: var(--nm-navy); }
.seo-hero .btn-primary:hover { background: #d0962d; border-color: #d0962d; }
.seo-hero .btn-outline-light:hover { color: var(--nm-navy); }
.seo-hero__media {
    background: rgba(255,255,255,.08);
    border: 1px solid rgba(255,255,255,.18);
    border-radius: 22px;
    box-shadow: 0 24px 60px rgba(0,0,0,.22);
    overflow: hidden;
    padding: .75rem;
}
.seo-hero__media img { aspect-ratio: 4 / 3; border-radius: 14px; display: block; height: auto; object-fit: cover; width: 100%; }
.seo-hero__signal {
    align-items: center;
    background: #fff;
    border-radius: 12px;
    color: var(--nm-navy);
    display: flex;
    gap: .75rem;
    margin: -2.2rem 1rem 0;
    padding: .9rem 1rem;
    position: relative;
}
.seo-hero__signal i { color: #16833f; font-size: 1.2rem; }

.seo-section { padding: 76px 0; }
.seo-section--white { background: #fff; }
.seo-section--soft { background: #f7f8f6; }
.seo-section[id] { scroll-margin-top: 112px; }
.seo-section__intro { max-width: 790px; }
.seo-section__intro--center { margin-inline: auto; text-align: center; }
.seo-section h2 { font-size: clamp(2rem, 3vw, 3rem); line-height: 1.12; margin-bottom: 1rem; }
.seo-section h2::after {
    background: var(--nm-gold);
    content: "";
    display: block;
    height: 2px;
    margin-top: .8rem;
    width: 48px;
}
.seo-section__intro--center h2::after { margin-inline: auto; }
.seo-section p { color: var(--nm-muted); font-size: 1.02rem; line-height: 1.75; }
.seo-section__body { max-width: 820px; }
.seo-section__body p:last-child { margin-bottom: 0; }
.seo-grid { display: grid; gap: 1.25rem; margin-top: 2rem; }
.seo-grid--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.seo-grid--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.seo-card {
    background: #fff;
    border: 1px solid var(--nm-border);
    border-radius: var(--nm-radius);
    box-shadow: var(--nm-shadow);
    padding: 1.6rem;
}
.seo-card__number, .seo-card__icon {
    align-items: center;
    background: rgba(10,50,42,.09);
    border-radius: 999px;
    color: var(--nm-green);
    display: inline-flex;
    font-weight: 800;
    height: 42px;
    justify-content: center;
    margin-bottom: 1rem;
    width: 42px;
}
.seo-card h3 { font-size: 1.3rem; }
.seo-card p:last-child { margin-bottom: 0; }
.seo-open-list { border-top: 1px solid var(--nm-border); margin-top: 2rem; }
.seo-open-list__item { border-bottom: 1px solid var(--nm-border); padding: 1.4rem 0; }
.seo-open-list__item h3 { font-size: 1.25rem; }
.seo-comparison { display: grid; gap: 2rem; grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 2rem; }
.seo-comparison__item { border-left: 3px solid rgba(15,34,56,.18); padding: .2rem 0 .2rem 1.5rem; }
.seo-comparison__item:last-child { border-left-color: var(--nm-gold); }
.seo-comparison__label { color: var(--nm-muted); font-size: .76rem; font-weight: 800; letter-spacing: .09em; text-transform: uppercase; }
.seo-checklist { columns: 2; gap: 2rem; list-style: none; margin: 2rem 0 0; padding: 0; }
.seo-checklist li { break-inside: avoid; color: var(--nm-muted); line-height: 1.6; margin-bottom: 1rem; padding-left: 1.8rem; position: relative; }
.seo-checklist i { color: var(--nm-gold); left: 0; position: absolute; top: .15rem; }
.seo-callout { background: var(--nm-navy); border-radius: var(--nm-radius); color: #fff; padding: clamp(2rem, 5vw, 3.5rem); }
.seo-callout h2, .seo-callout h3 { color: #fff; }
.seo-callout p { color: rgba(255,255,255,.78); }
.seo-callout a:not(.btn) { color: #efd18d; }
.related-links { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 1.5rem; }
.related-links a { background: #fff; border: 1px solid var(--nm-border); border-radius: var(--nm-radius); padding: .75rem 1rem; }
.related-links a:hover { border-color: var(--nm-gold); text-decoration: none; }
.accordion { border-top: 1px solid var(--nm-border); }
.accordion-item { border-color: var(--nm-border); }
.accordion-button { color: var(--nm-navy); font-family: Inter, sans-serif; font-weight: 700; }
.accordion-button:not(.collapsed) { background: rgba(10,50,42,.07); color: var(--nm-green); }
.accordion-button:focus { box-shadow: none; }
.accordion-body { color: var(--nm-muted); line-height: 1.7; }
.final-cta { background: var(--nm-green); border-radius: var(--nm-radius); color: #fff; display: grid; gap: 2rem; grid-template-columns: 1fr auto; padding: clamp(2rem, 5vw, 3.2rem); }
.final-cta h2 { color: #fff; }
.final-cta p { color: rgba(255,255,255,.78); margin-bottom: 0; }
.final-cta__actions { align-items: center; display: flex; }
.final-cta .btn { background: #fff; color: var(--nm-navy); }
.site-footer { background: var(--nm-green); color: rgba(255,255,255,.8); }
.site-footer a { color: rgba(255,255,255,.86); }
.site-footer__grid { display: grid; gap: 2rem; grid-template-columns: 1.15fr repeat(3, 1fr); }
.site-footer__brand img { background: #fff; border-radius: var(--nm-radius); display: block; height: 72px; margin-bottom: 1rem; padding: .35rem; width: auto; }
.site-footer__heading { color: #fff; font-size: .8rem; font-weight: 800; letter-spacing: .08em; margin-bottom: .8rem; text-transform: uppercase; }
.site-footer__links { display: grid; gap: .5rem; }

@media (max-width: 991.98px) {
    .seo-hero__grid { grid-template-columns: 1fr; }
    .seo-hero__media { max-width: 620px; }
    .seo-grid--3 { grid-template-columns: 1fr; }
}
@media (max-width: 767.98px) {
    .navbar .navbar-brand img { height: 76px; }
    .seo-hero { padding: 52px 0; }
    .seo-hero h1 { font-size: clamp(2.5rem, 12vw, 3.55rem); }
    .seo-hero__grid, .seo-grid--2, .seo-comparison, .final-cta, .site-footer__grid { grid-template-columns: 1fr; }
    .seo-section { padding: 60px 0; }
    .seo-checklist { columns: 1; }
    .final-cta__actions { align-items: flex-start; }
}
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; }
}
