
    :root {
      --na-accent:       #2563eb;
      --na-accent-dark:  #1d4ed8;
      --na-accent-text:  #1e40af;
      --na-accent-light: rgba(37,99,235,0.09);
      --na-geo:          #047857;
      --na-geo-dark:     #065f46;
      --na-geo-light:    rgba(4,120,87,0.12);
      --na-text:         #0f172a;
      --na-muted:        #475569;
      --na-bg:           #ffffff;
      --na-bg-alt:       #f8fafc;
      --na-bg-dark:      #0f172a;
      --na-border:       #e2e8f0;
      --na-shadow:       0 2px 16px rgba(0,0,0,0.08);
      --na-radius:       10px;
    }
    *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
    html { scroll-behavior: smooth; }
    body {
      font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Arial, sans-serif;
      color: var(--na-text);
      background: var(--na-bg);
      line-height: 1.65;
      overflow-x: hidden;
    }
    a { color: var(--na-accent-text); text-decoration: underline; }
    a:hover { color: var(--na-accent-dark); }
    img { max-width: 100%; display: block; }

    /* ── Skip link ── */
    .na-skip {
      position: absolute; left: 16px; top: -60px;
      background: var(--na-accent); color: #fff;
      padding: 10px 16px; border-radius: 6px;
      z-index: 9999; font-weight: 700;
      transition: top 0.15s; text-decoration: none;
    }
    .na-skip:focus { top: 8px; }

    /* ── Container ── */
    .na-container {
      max-width: 1200px;
      margin: 0 auto;
      padding: 0 24px;
    }

    /* ── Header — dark with brand + nav ── */
    .na-header {
      position: sticky; top: 0; z-index: 100;
      background: var(--na-bg-dark);
      box-shadow: 0 2px 12px rgba(0,0,0,0.25);
    }
    .na-header__inner {
      display: flex; align-items: center;
      justify-content: space-between; gap: 16px;
      min-height: 68px;
    }
    .na-logo {
      display: flex; align-items: center; gap: 10px;
      font-size: 1.12rem; font-weight: 800;
      color: #fff; text-decoration: none;
      white-space: nowrap; flex-shrink: 0;
    }
    .na-logo:hover { color: #93c5fd; text-decoration: none; }
    .na-logo__badge {
      display: inline-flex; align-items: center;
      padding: 2px 8px; border-radius: 4px;
      background: var(--na-geo); color: #fff;
      font-size: 0.62rem; font-weight: 700;
      letter-spacing: 0.07em; text-transform: uppercase;
    }
    .na-nav {
      display: flex; align-items: center; gap: 2px;
      flex-wrap: wrap;
    }
    .na-nav__link {
      padding: 7px 11px;
      font-size: 0.77rem; font-weight: 700;
      letter-spacing: 0.06em; text-transform: uppercase;
      color: #cbd5e1; border-radius: 6px;
      transition: color 0.15s, background 0.15s;
      text-decoration: none;
    }
    .na-nav__link:hover {
      color: #fff;
      background: rgba(255,255,255,0.08);
      text-decoration: none;
    }
    .na-header__cta {
      white-space: nowrap;
      padding: 9px 20px;
      background: var(--na-accent);
      color: #fff; border-radius: 999px;
      font-weight: 700; font-size: 0.87rem;
      text-decoration: none; flex-shrink: 0;
    }
    .na-header__cta:hover {
      background: var(--na-accent-dark);
      color: #fff; text-decoration: none;
    }
    /* Hamburger button (hidden on desktop) */
    .na-nav-toggle {
      display: none;
      flex-direction: column; justify-content: center; gap: 5px;
      width: 36px; height: 36px; padding: 4px;
      background: none; border: none; cursor: pointer; flex-shrink: 0;
    }
    .na-nav-toggle span {
      display: block; width: 22px; height: 2px;
      background: #cbd5e1; border-radius: 2px;
      transition: transform 0.2s, opacity 0.2s;
    }
    /* Mobile drawer nav */
    .na-nav-drawer {
      display: none;
      position: absolute; top: 68px; left: 0; right: 0;
      background: #0f172a;
      border-top: 1px solid rgba(255,255,255,0.08);
      padding: 12px 16px 20px;
      flex-direction: column; gap: 2px;
      z-index: 99;
    }
    .na-nav-drawer.is-open { display: flex; }
    .na-nav-drawer .na-nav__link {
      padding: 10px 14px;
      font-size: 0.85rem;
      border-radius: 8px;
    }
    .na-nav-drawer .na-nav__link--toggle {
      width: 100%;
      border: 0;
      background: none;
      font: inherit;
      text-align: left;
      color: inherit;
      justify-content: space-between;
      cursor: pointer;
    }

    /* ── Nav dropdowns ── */
    .na-nav__item {
      position: relative;
      display: inline-flex;
      align-items: center;
    }
    .na-nav__link--parent {
      display: inline-flex; align-items: center; gap: 4px;
      cursor: default; user-select: none;
    }
    .na-nav__link--parent::after {
      content: '▾'; font-size: 0.7em; opacity: 0.55;
    }
    .na-nav__dropdown {
      display: none;
      position: absolute; top: 100%; left: 0;
      background: #0f172a;
      border: 1px solid rgba(255,255,255,0.12);
      border-radius: 8px;
      min-width: 230px; max-height: 380px;
      overflow-y: auto;
      padding: 4px 0 6px;
      z-index: 200;
      box-shadow: 0 8px 32px rgba(0,0,0,0.55);
    }
    .na-nav__item:hover .na-nav__dropdown,
    .na-nav__item:focus-within .na-nav__dropdown { display: block; }
    .na-nav__dropdown a {
      display: block; padding: 9px 16px;
      font-size: 0.78rem; font-weight: 600;
      color: #cbd5e1; text-decoration: none;
      letter-spacing: 0.03em;
      white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
    }
    .na-nav__dropdown a:hover { background: rgba(255,255,255,0.08); color: #fff; }
    /* Mobile sub-nav */
    .na-nav__subnav {
      display: none; flex-direction: column;
      padding: 2px 0 6px 20px;
    }
    .na-nav-drawer .na-nav__item { display: block; }
    .na-nav-drawer .na-nav__item.is-open .na-nav__subnav { display: flex; }
    .na-nav__subnav a {
      padding: 6px 14px; font-size: 0.79rem; font-weight: 600;
      color: #94a3b8; border-radius: 6px;
      text-decoration: none; letter-spacing: 0.03em;
    }
    .na-nav__subnav a:hover { color: #fff; background: rgba(255,255,255,0.07); }
    .na-nav-drawer .na-nav__item.is-open .na-nav__link--parent::after { transform: rotate(180deg); }

    /* ── Hero ── */
    .na-hero {
      background: linear-gradient(135deg, #0f172a 0%, #1e3a5f 60%, #0f172a 100%);
      color: #fff;
      padding: 80px 0 88px;
      text-align: center;
      position: relative;
      overflow: hidden;
    }
    .na-hero::before {
      content: '';
      position: absolute; inset: 0;
      background: radial-gradient(ellipse 80% 60% at 50% 0%, rgba(37,99,235,0.18) 0%, transparent 70%);
      pointer-events: none;
    }
    .na-hero__inner { position: relative; z-index: 1; }
    .na-hero__layout,
    .na-mini-hero__layout {
      display: grid; gap: 32px; align-items: center;
    }
    .na-hero__layout--media,
    .na-mini-hero__layout--media {
      grid-template-columns: minmax(0,1.1fr) minmax(280px,0.9fr);
      text-align: left;
    }
    .na-hero__copy--centered { max-width: 860px; margin: 0 auto; }
    .na-hero__eyebrow {
      font-size: 0.85rem; font-weight: 700;
      color: #93c5fd; letter-spacing: 0.12em;
      text-transform: uppercase; margin-bottom: 14px;
    }
    .na-hero h1 {
      font-size: clamp(2.1rem, 4.5vw, 3.6rem);
      font-weight: 800; line-height: 1.1;
      margin-bottom: 18px;
      max-width: 880px; margin-left: auto; margin-right: auto;
    }
    .na-hero__desc {
      font-size: 1.08rem; color: #dbeafe;
      max-width: 680px; margin: 0 auto 14px;
      line-height: 1.65;
    }
    .na-hero__rating {
      font-size: 0.95rem; color: #fde68a; font-weight: 600;
      margin: 0 auto 16px; letter-spacing: 0.01em;
    }
    .na-cta-group {
      display: flex; gap: 14px;
      justify-content: center; flex-wrap: wrap;
    }
    .na-hero__layout--media .na-cta-group { justify-content: flex-start; }
    .na-btn {
      display: inline-flex; align-items: center;
      padding: 14px 30px; border-radius: 999px;
      font-weight: 700; font-size: 1rem;
      text-decoration: none;
      transition: opacity 0.15s, transform 0.12s;
    }
    .na-btn:hover { opacity: 0.88; transform: translateY(-1px); text-decoration: none; }
    .na-btn--primary { background: var(--na-accent); color: #fff; }
    .na-btn--secondary { background: rgba(255,255,255,0.14); color: #fff; border: 2px solid rgba(255,255,255,0.42); }
    .na-btn--secondary:hover { color: #fff; }
    .na-btn--sm {
      display: inline-flex; align-items: center;
      padding: 9px 20px; border-radius: 999px;
      font-weight: 700; font-size: 0.88rem;
      background: var(--na-accent); color: #fff;
      text-decoration: none;
    }
    .na-btn--sm:hover { opacity: 0.88; text-decoration: none; color: #fff; }
    .na-btn--geo { background: var(--na-geo); color: #fff; }
    .na-btn--geo:hover { opacity: 0.88; text-decoration: none; color: #fff; }

    /* ── Mini hero (inner pages) ── */
    .na-mini-hero {
      background: linear-gradient(135deg, #0f172a 0%, #1e3a5f 100%);
      color: #fff; padding: 52px 0 60px;
    }
    .na-mini-hero__eyebrow {
      font-size: 0.78rem; font-weight: 700;
      color: #93c5fd; letter-spacing: 0.1em;
      text-transform: uppercase; margin-bottom: 10px;
    }
    .na-mini-hero h1 {
      font-size: clamp(1.6rem, 3.5vw, 2.6rem);
      font-weight: 800; line-height: 1.15;
      margin-bottom: 14px;
    }
    .na-mini-hero__copy--centered { max-width: 860px; margin: 0 auto; text-align: center; }
    .na-mini-hero p { color: #dbeafe; font-size: 1.02rem; max-width: 680px; margin-bottom: 24px; }
    .na-breadcrumb-removed {
      display: flex; align-items: center; gap: 8px;
      font-size: 0.83rem; color: #bfdbfe;
      margin-bottom: 16px; flex-wrap: wrap;
    }
    .na-breadcrumb a { color: #bfdbfe; text-decoration: none; }
    .na-breadcrumb a:hover { color: #dbeafe; text-decoration: underline; }
    .na-breadcrumb span { color: #cbd5e1; }

    /* ── Image frame ── */
    .na-image-frame {
      background: rgba(255,255,255,0.07);
      border: 1px solid rgba(255,255,255,0.12);
      border-radius: 18px; padding: 10px;
      box-shadow: 0 20px 48px rgba(0,0,0,0.28);
    }
    .na-image-frame img {
      width: 100%; aspect-ratio: 4 / 3;
      object-fit: cover; border-radius: 12px;
    }
    .na-hero-media .na-image-frame { }

    /* ── Sections ── */
    .na-section { padding: 72px 0; }
    .na-section--alt { background: var(--na-bg-alt); }
    .na-section__header { text-align: center; margin-bottom: 48px; }
    .na-eyebrow {
      display: inline-block;
      font-size: 0.72rem; font-weight: 700;
      letter-spacing: 0.12em; text-transform: uppercase;
      color: var(--na-accent-text); margin-bottom: 10px;
    }
    .na-section__header h2 {
      font-size: clamp(1.5rem, 3vw, 2.2rem);
      font-weight: 800; color: var(--na-text);
      line-height: 1.2; margin-bottom: 14px;
    }
    .na-section__header p {
      color: var(--na-muted); font-size: 1.05rem;
      max-width: 680px; margin: 0 auto;
    }
    .na-section__prose {
      max-width: 760px;
      margin: 0 auto 24px;
      text-align: left;
    }
    .na-section__prose p:last-child { margin-bottom: 0; }
    .na-sep {
      width: 48px; height: 4px;
      background: var(--na-accent);
      border-radius: 2px; margin: 12px auto 18px;
    }
    .na-accent-text { color: var(--na-accent-text); }
    .na-geo-text    { color: var(--na-geo); }

    /* ── Coverage grid (states / cities) ── */
    .na-coverage {
      display: grid;
      grid-template-columns: repeat(5, 1fr);
      gap: 10px;
      max-width: 900px;
      margin: 0 auto;
    }
    .na-coverage-link {
      display: flex; align-items: center; gap: 8px;
      padding: 10px 14px; border-radius: 8px;
      border: 1.5px solid var(--na-border);
      background: var(--na-bg);
      color: var(--na-text); font-size: 0.9rem;
      font-weight: 600; text-decoration: none;
      transition: border-color 0.15s, background 0.15s, color 0.15s;
    }
    .na-coverage-link:hover {
      border-color: var(--na-geo);
      background: var(--na-geo-light);
      color: var(--na-geo-dark);
      text-decoration: none;
    }
    .na-coverage-link::before {
      content: '📍';
      font-size: 0.85rem;
      flex-shrink: 0;
    }
    .na-disclosure {
      margin-top: 16px;
    }
    .na-disclosure__summary {
      display: inline-flex;
      align-items: center;
      gap: 10px;
      padding: 10px 16px;
      border-radius: 999px;
      border: 1px solid var(--na-border);
      background: var(--na-bg);
      color: var(--na-text);
      cursor: pointer;
      font-weight: 700;
      list-style: none;
    }
    .na-disclosure__summary::-webkit-details-marker { display: none; }
    .na-disclosure__summary::after {
      content: '+';
      font-size: 1rem;
      line-height: 1;
    }
    .na-disclosure[open] .na-disclosure__summary::after { content: '−'; }
    .na-disclosure__meta {
      color: var(--na-muted);
      font-size: 0.84rem;
      font-weight: 600;
    }
    .na-disclosure__panel { margin-top: 14px; }

    /* ── Service cards ── */
    .na-cards {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 20px;
    }
    .na-card {
      background: var(--na-bg);
      border: 1.5px solid var(--na-border);
      border-radius: var(--na-radius);
      box-shadow: var(--na-shadow);
      overflow: hidden;
      transition: box-shadow 0.2s, transform 0.15s;
    }
    .na-card:hover { box-shadow: 0 8px 32px rgba(0,0,0,0.13); transform: translateY(-2px); }
    .na-card__head {
      padding: 16px 20px; background: var(--na-accent);
      font-weight: 700; font-size: 1.02rem; color: #fff;
    }
    .na-card__head a { color: inherit; text-decoration: none; }
    .na-card__head a:hover { text-decoration: underline; }
    .na-card__body { padding: 16px 20px; }
    .na-card__desc { color: var(--na-muted); font-size: 0.95rem; margin-bottom: 14px; }

    /* ── About / Why us — full-width band ── */
    .na-about-band {
      background: linear-gradient(135deg, #0f172a 0%, #1e3a5f 100%);
      padding: 80px 0;
    }
    .na-about {
      display: grid;
      grid-template-columns: 1fr 1.4fr;
      gap: 56px; align-items: center;
    }
    .na-about__visual {
      border-radius: 16px; overflow: hidden;
      background: rgba(255,255,255,0.07);
      border: 1px solid rgba(255,255,255,0.12);
      font-size: 5rem; text-align: center;
      padding: 32px 0;
    }
    .na-about__visual img { width: 100%; object-fit: cover; border-radius: 12px; }
    .na-about__content .na-eyebrow { color: #93c5fd; }
    .na-about__content h2 { color: #fff; }
    .na-about__content .na-sep { background: var(--na-geo); margin-left: 0; }
    .na-about__content .na-prose p,
    .na-about__content .na-prose li,
    .na-about__content .na-prose strong { color: #cbd5e1; }
    .na-about__content .na-prose a { color: #93c5fd; }
    .na-reasons { list-style: none; display: flex; flex-direction: column; gap: 12px; margin-top: 20px; }
    .na-reason { display: flex; gap: 12px; }
    .na-reason__num {
      width: 28px; height: 28px; flex-shrink: 0;
      border-radius: 50%;
      background: var(--na-geo); color: #fff;
      font-size: 0.8rem; font-weight: 700;
      display: flex; align-items: center; justify-content: center;
      margin-top: 2px;
    }
    .na-reason__text { font-size: 0.95rem; color: #dbeafe; }

    /* ── Blog tips ── */
    .na-tips {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(280px, 340px));
      gap: 20px;
      justify-content: center;
    }
    .na-tip {
      display: block; padding: 24px;
      background: var(--na-bg);
      border: 1.5px solid var(--na-border);
      border-radius: var(--na-radius);
      text-decoration: none; color: var(--na-text);
      transition: border-color 0.15s, box-shadow 0.15s;
    }
    .na-tip:hover { border-color: var(--na-accent); box-shadow: var(--na-shadow); text-decoration: none; }
    .na-tip__eyebrow { font-size: 0.72rem; font-weight: 700; color: var(--na-accent-text); text-transform: uppercase; letter-spacing: 0.1em; margin-bottom: 8px; }
    .na-tip h3 { font-size: 1.02rem; font-weight: 700; margin-bottom: 8px; }
    .na-tip p  { font-size: 0.9rem; color: var(--na-muted); }

    /* ── FAQs ── */
    .na-faqs { display: flex; flex-direction: column; gap: 12px; max-width: 840px; margin: 0 auto; }
    .na-faq { background: var(--na-bg); border: 1.5px solid var(--na-border); border-radius: var(--na-radius); overflow: hidden; }
    .na-faq > summary { list-style: none; }
    .na-faq > summary::-webkit-details-marker { display: none; }
    .na-faq__q { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 16px 20px; font-weight: 700; font-size: 1rem; color: var(--na-text); background: var(--na-bg-alt); cursor: pointer; user-select: none; }
    .na-faq__q::after { content: '+'; font-size: 1.3rem; font-weight: 400; flex-shrink: 0; transition: transform 0.2s; }
    .na-faq[open] .na-faq__q::after { content: '−'; }
    .na-faq__a { padding: 14px 20px; font-size: 0.95rem; color: var(--na-muted); border-top: 1px solid var(--na-border); }

    /* ── CTA strip ── */
    .na-cta-strip {
      background: linear-gradient(135deg, #1e3a5f 0%, #0f172a 100%);
      padding: 64px 0; text-align: center; color: #fff;
    }
    .na-cta-strip h2 { font-size: clamp(1.4rem,2.8vw,2.1rem); font-weight: 800; margin-bottom: 12px; }
    .na-cta-strip p  { color: #dbeafe; margin-bottom: 28px; font-size: 1.05rem; }
    .na-cta-strip__prose {
      max-width: 760px;
      margin: 0 auto 28px;
      text-align: center;
    }
    .na-cta-strip .na-prose p,
    .na-cta-strip .na-prose li,
    .na-cta-strip .na-prose strong { color: #e2e8f0; }
    .na-cta-strip .na-prose a { color: #bfdbfe; }
    .na-cta-strip__prose p:last-child { margin-bottom: 0; }

    /* ── Contact grid ── */
    .na-contact-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 24px; max-width: 1100px; margin: 0 auto; }
    .na-contact-item { text-align: center; padding: 28px; background: var(--na-bg); border: 1.5px solid var(--na-border); border-radius: var(--na-radius); }
    .na-contact-item__icon { font-size: 2rem; margin-bottom: 10px; }
    .na-contact-item h3 { font-size: 1rem; font-weight: 700; margin-bottom: 6px; }
    .na-contact-item a { color: var(--na-accent-text); }
    .na-contact-item a[href^="mailto:"] {
      display: inline-block;
      max-width: 100%;
      overflow-wrap: anywhere;
      word-break: break-word;
    }
    .na-map {
      margin-top: 36px;
      border-radius: var(--na-radius);
      overflow: hidden;
      border: 1px solid var(--na-border);
      box-shadow: var(--na-shadow);
    }
    .na-map iframe { display: block; width: 100%; height: 380px; border: 0; }

    /* ── Trust badges ── */
    .na-trust-section { padding: 36px 0; background: var(--na-bg); border-top: 1.5px solid var(--na-border); border-bottom: 1.5px solid var(--na-border); }
    .na-trust-badges { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 20px; }
    .na-trust-badge { text-align: center; padding: 24px 20px; background: var(--na-surface); border: 1.5px solid var(--na-border); border-radius: var(--na-radius); }
    .na-trust-badge__icon { font-size: 2rem; margin-bottom: 10px; }
    .na-trust-badge__title { font-size: 0.95rem; font-weight: 700; margin-bottom: 8px; color: var(--na-heading); margin-top: 0; }
    .na-trust-badge p { font-size: 0.88rem; color: var(--na-muted); margin: 0; line-height: 1.5; }
    .na-trust-badge p a { color: var(--na-accent-text); }

    /* ── Hero image frame ── */
    .na-hero__media { border-radius: 12px; overflow: hidden; }
    .na-hero__img { width: 100%; height: auto; display: block; aspect-ratio: 4/3; object-fit: cover; }

    /* ── Quote form ── */
    .na-quote-form { max-width: 760px; margin: 0 auto; }
    .na-quote-form__grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 16px; margin-bottom: 20px; }
    .na-form-group { display: flex; flex-direction: column; gap: 6px; }
    .na-form-group--full { grid-column: 1 / -1; }
    .na-form-group label { font-size: 0.85rem; font-weight: 600; color: var(--na-heading); }
    .na-form-group input,
    .na-form-group select,
    .na-form-group textarea { padding: 10px 14px; border: 1.5px solid var(--na-border); border-radius: 8px; font-size: 0.9rem; color: var(--na-text); background: var(--na-bg); outline: none; transition: border-color 0.15s; font-family: inherit; }
    .na-form-group input:focus,
    .na-form-group select:focus,
    .na-form-group textarea:focus { border-color: var(--na-accent-text); box-shadow: 0 0 0 3px rgba(59,130,246,0.12); }
    .na-btn--submit { width: 100%; margin-top: 8px; font-size: 1rem; padding: 14px 28px; }
    .na-form-disclaimer { font-size: 0.78rem; color: var(--na-muted); margin-top: 12px; text-align: center; }

    /* ── Footer disclaimer ── */
    .na-footer__disclaimer { font-size: 0.78rem; color: #94a3b8; margin-top: 10px; line-height: 1.6; max-width: 720px; }

    /* ── Inner page ── */
    .na-page { padding: 48px 0 64px; }
    .na-page__inner { display: grid; grid-template-columns: 1fr; gap: 40px; }
    .na-article h1 { font-size: clamp(1.5rem,3vw,2.2rem); font-weight: 800; margin-bottom: 20px; }
    .na-article { max-width: 860px; }
    .na-prose h1,
    .na-prose h2,
    .na-prose h3 { margin: 1.4em 0 0.5em; font-weight: 700; }
    .na-prose h2 { font-size: 1.35rem; }
    .na-prose h3 { font-size: 1.12rem; }
    .na-prose p  { margin-bottom: 1em; color: var(--na-muted); }
    .na-prose ul,
    .na-prose ol { padding-left: 1.4em; margin-bottom: 1em; }
    .na-prose li { margin-bottom: 0.35em; }
    .na-prose a  { color: var(--na-accent-text); }
    /* ── Prose tables ── */
    .na-prose table {
      width: 100%;
      border-collapse: collapse;
      margin: 1.2em 0 1.6em;
      font-size: 0.92rem;
      overflow-x: auto;
      display: block;
    }
    .na-prose thead th {
      background: var(--na-accent);
      color: #fff;
      padding: 10px 14px;
      text-align: left;
      font-weight: 700;
      white-space: nowrap;
    }
    .na-prose tbody td {
      padding: 9px 14px;
      border-bottom: 1px solid var(--na-border);
      color: var(--na-muted);
      vertical-align: top;
    }
    .na-prose tbody tr:nth-child(even) td { background: var(--na-bg-alt); }
    .na-prose tbody tr:hover td { background: var(--na-accent-light); }
    @media (max-width: 640px) {
      .na-prose table { font-size: 0.82rem; }
      .na-prose thead th,
      .na-prose tbody td { padding: 7px 10px; }
    }
    .na-blog-list { display: flex; flex-direction: column; gap: 14px; margin-top: 24px; }
    .na-blog-item { display: block; padding: 18px 22px; background: var(--na-bg); border: 1.5px solid var(--na-border); border-radius: var(--na-radius); text-decoration: none; color: var(--na-text); transition: border-color 0.15s; }
    .na-blog-item:hover { border-color: var(--na-accent); text-decoration: none; }
    .na-blog-item h3 { font-size: 1rem; font-weight: 700; margin-bottom: 6px; }
    .na-blog-item p  { font-size: 0.88rem; color: var(--na-muted); }

    /* ── Content sections (state/city page body) ── */
    .na-content-section { margin-bottom: 32px; }
    .na-content-section h2 { font-size: 1.4rem; font-weight: 800; margin-bottom: 10px; color: var(--na-text); }

    /* ── Split layout (image + content alternating) ── */
    .na-split {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 56px;
      align-items: center;
      padding: 64px 0;
      border-bottom: 1px solid var(--na-border);
    }
    .na-split:last-child { border-bottom: none; }
    .na-split--reversed .na-split__image { order: 2; }
    .na-split--reversed .na-split__content { order: 1; }
    .na-split__image {
      border-radius: 16px;
      overflow: hidden;
      background: var(--na-accent-light);
      aspect-ratio: 4 / 3;
      display: flex;
      align-items: center;
      justify-content: center;
    }
    .na-split__image img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      display: block;
    }
    .na-split__image--placeholder {
      font-size: 4rem;
      color: var(--na-accent);
      opacity: 0.35;
    }
    .na-split__content h2 {
      font-size: clamp(1.25rem, 2.5vw, 1.75rem);
      font-weight: 800;
      color: var(--na-text);
      margin-bottom: 16px;
      line-height: 1.2;
    }
    .na-split__content .na-split__eyebrow {
      display: inline-block;
      font-size: 0.7rem;
      font-weight: 700;
      letter-spacing: 0.12em;
      text-transform: uppercase;
      color: var(--na-accent-text);
      margin-bottom: 8px;
    }
    .na-split__sep {
      width: 36px;
      height: 3px;
      background: var(--na-accent);
      border-radius: 2px;
      margin-bottom: 18px;
    }
    .na-split__content .na-prose {
      color: var(--na-muted);
    }
    .na-split__content .na-prose h2 { display: none; }
    .na-split__content .na-prose h3 { font-size: 1rem; font-weight: 700; margin: 1em 0 0.4em; }
    .na-split__content .na-prose p  { margin-bottom: 0.85em; }
    .na-split__content .na-prose ul,
    .na-split__content .na-prose ol { padding-left: 1.3em; margin-bottom: 0.85em; }
    .na-split__content .na-prose li { margin-bottom: 0.3em; }
    .na-split__content .na-prose blockquote {
      border-left: 3px solid var(--na-accent);
      padding: 10px 14px;
      margin: 1em 0;
      background: var(--na-accent-light);
      border-radius: 0 8px 8px 0;
      color: var(--na-muted);
      font-style: italic;
    }
    /* Section with split children — no extra top/bottom padding */
    .na-section--splits { padding: 0; }
    /* Full-width prose sections (no image available) */
    .na-full-section {
      padding: 48px 0 40px;
      border-bottom: 1px solid var(--na-border);
    }
    .na-full-section:last-child { border-bottom: none; }
    .na-full-section--centered {
      text-align: center;
    }
    .na-full-section--centered .na-full-section__heading {
      margin-left: auto;
      margin-right: auto;
    }
    .na-full-section--centered .na-full-section__sep {
      margin-left: auto;
      margin-right: auto;
    }
    .na-full-section--centered .na-prose {
      max-width: 840px;
      margin-left: auto;
      margin-right: auto;
    }
    .na-full-section__heading {
      font-size: clamp(1.25rem, 2.5vw, 1.75rem);
      font-weight: 800;
      color: var(--na-text);
      margin-bottom: 6px;
    }
    .na-full-section__sep {
      width: 36px; height: 3px;
      background: var(--na-accent);
      border-radius: 2px;
      margin-bottom: 18px;
    }
    .na-full-section .na-prose h2 { display: none; }
    @media (max-width: 820px) {
      .na-split {
        grid-template-columns: 1fr;
        gap: 28px;
        padding: 48px 0;
      }
      .na-split--reversed .na-split__image { order: 0; }
      .na-split--reversed .na-split__content { order: 0; }
      .na-split__image { aspect-ratio: 16 / 9; }
    }

    /* ── Image gallery ── */
    .na-gallery { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px,1fr)); gap: 16px; margin-top: 24px; }
    .na-gallery figure { margin: 0; border-radius: var(--na-radius); overflow: hidden; }
    .na-gallery img { width: 100%; aspect-ratio: 4/3; object-fit: cover; }

    /* ── Footer ── */
    .na-footer {
      background: #060d18;
      color: #cbd5e1;
      padding: 56px 0 24px;
    }
    .na-footer__summary {
      font-size: 0.88rem;
      color: #cbd5e1;
      margin-bottom: 28px;
    }
    .na-footer__summary a {
      color: #93c5fd;
      text-decoration: underline;
    }
    .na-footer__summary a:hover { color: #dbeafe; }
    .na-footer__grid {
      display: grid;
      grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
      gap: 32px 24px;
      margin-bottom: 40px;
    }
    .na-footer__col-title {
      font-size: 0.72rem; font-weight: 700;
      letter-spacing: 0.1em; text-transform: uppercase;
      color: #e2e8f0; margin-bottom: 14px; margin-top: 0;
    }
    .na-footer__col a {
      display: block; font-size: 0.88rem;
      color: #cbd5e1; text-decoration: none;
      margin-bottom: 7px;
      transition: color 0.12s;
    }
    .na-footer__col a:hover { color: #dbeafe; text-decoration: none; }
    .na-footer__meta {
      border-top: 1px solid #1e293b;
      padding-top: 20px;
      font-size: 0.82rem; color: #94a3b8;
    }
    .na-footer__meta a { color: #93c5fd; text-decoration: none; }
    .na-footer__meta a:hover { text-decoration: underline; }
    .na-footer__brand { font-size: 1rem; font-weight: 800; color: #e2e8f0; margin-bottom: 6px; }

    /* ── FAB ── */
    .na-fab {
      position: fixed; bottom: 24px; right: 24px;
      width: 56px; height: 56px; border-radius: 50%;
      background: var(--na-accent);
      color: #fff; display: flex; align-items: center; justify-content: center;
      box-shadow: 0 4px 20px rgba(37,99,235,0.4);
      text-decoration: none; transition: background 0.15s, transform 0.15s;
      z-index: 200;
    }
    .na-fab:hover { background: var(--na-accent-dark); transform: scale(1.05); text-decoration: none; color: #fff; }

    /* ── Responsive ── */
    @media (max-width: 900px) {
      .na-about { grid-template-columns: 1fr; gap: 32px; }
      .na-about__visual { display: none; }
      .na-hero__layout--media,
      .na-mini-hero__layout--media { grid-template-columns: 1fr; }
      .na-hero-media { display: none; }
      .na-nav { display: none; }
      .na-nav-toggle { display: flex; }
      .na-header__cta { display: none; }
      .na-coverage { grid-template-columns: repeat(3, 1fr); }
      .na-cards { grid-template-columns: repeat(2, 1fr); }
    }
    @media (max-width: 640px) {
      .na-container { padding: 0 16px; }
      .na-section { padding: 48px 0; }
      .na-about-band { padding: 56px 0; }
      .na-hero { padding: 56px 0 64px; }
      .na-header__inner { height: 58px; }
      .na-nav-drawer { top: 58px; }
      .na-coverage { grid-template-columns: repeat(2, 1fr); }
      .na-tips { grid-template-columns: 1fr; }
      .na-cards { grid-template-columns: 1fr; }
      .na-contact-grid { grid-template-columns: 1fr; }
      .na-faqs { max-width: 100%; }
      .na-cta-strip { padding: 48px 0; }
      .na-btn { padding: 12px 22px; font-size: 0.92rem; }
      .na-mini-hero { padding: 36px 0 44px; }
    }
    @media (max-width: 400px) {
      .na-hero h1 { font-size: 1.8rem; }
      .na-cta-group { flex-direction: column; align-items: stretch; }
      .na-btn { text-align: center; justify-content: center; }
    }
    @media (min-width: 1600px) {
      .na-container { max-width: 1440px; }
    }
  