/* axiant-v2-chrome.css - GENERATED by scripts/build-chrome-css.py.
   Header, mobile menu and footer only, for pages that keep the pre-v2
   stylesheet for their body. Tokens are declared on the chrome roots,
   not :root, so they cannot reach the rest of the page. */
.utility,.header,.mobile-menu,.footer{
/* --- color ------------------------------------------------------------ */
  --navy-900:#0a1830;
  --navy-800:#0d1f3c;   /* brand navy - theme-color, fixed */
  --navy-700:#16304f;
  --navy-600:#1e3a5f;   /* the site's existing --accent-dark */
  --navy-100:#dbeafe;

  /* Accent is the site's existing --accent-color, not a new colour. */
  --accent:#2d7fb8;
  --accent-600:#1f5f8d;
  --accent-100:#e8f1f8;

  --ink:#1a1a1a;        /* was --text-primary   */
  --body:#4a4a4a;       /* was --text-secondary */
  --muted:#666666;      /* was --text-tertiary  */

  --surface:#ffffff;
  --ground:#f0f4f8;     /* from --bg-primary */
  --ground-2:#e8f0f6;
  --line:#e2e8f0;
  --line-strong:rgba(45,127,184,.28);

  /* footer surface - the footer is the one dark region with its own
     text ramp, so it gets tokens instead of six literals sprinkled
     through two separate blocks. */
  --footer-bg:var(--navy-900);
  --footer-text:#9fb0c6;
  --footer-muted:#7f92ab;
  --footer-head:#ffffff;
  --footer-line:rgba(255,255,255,.10);
  --footer-chip:rgba(255,255,255,.05);
  --footer-chip-line:rgba(255,255,255,.12);
  --footer-chip-hover:rgba(45,127,184,.18);

  /* payment estimator - a small instrument, so it gets its own surface ramp */
  --calc-bg:#0c1c33;
  --calc-face:#13284a;
  --calc-line:rgba(255,255,255,.10);
  --calc-display:#071324;
  --calc-digit:#7fd4ff;
  --calc-label:#8fa6c4;
  --calc-text:#e6eef8;

  /* --- spacing scale ---------------------------------------------------- */
  --s1:4px;  --s2:8px;  --s3:12px; --s4:16px; --s5:24px;
  --s6:32px; --s7:48px; --s8:64px; --s9:96px; --s10:128px;

  /* --- type scale ------------------------------------------------------- */
  --t-xs:12px; --t-sm:14px; --t-base:16px; --t-md:18px;
  --t-lg:21px; --t-xl:27px; --t-2xl:34px; --t-3xl:56px;

  /* --- radius / shadow / motion ----------------------------------------- */
  --r-sm:4px; --r-md:8px; --r-lg:14px;
  --sh-1:0 1px 2px rgba(15,26,39,.06), 0 1px 3px rgba(15,26,39,.08);
  --sh-2:0 4px 12px rgba(15,26,39,.08), 0 2px 4px rgba(15,26,39,.05);
  --sh-3:0 24px 48px -12px rgba(8,20,38,.35), 0 8px 16px -8px rgba(8,20,38,.2);
  --ease:cubic-bezier(.2,.6,.3,1);
  --dur:180ms;

  --container:1200px;
--accent-color:var(--accent);
  --accent-dark:var(--navy-600);
  --text-primary:#1a1a1a;     /* = --ink,  literal to avoid a cycle */
  --text-secondary:#4a4a4a;   /* = --body, literal to avoid a cycle */
  --text-tertiary:var(--muted);
  --border-color:#e2e8f0;     /* = --line, literal to avoid a cycle */
  --bg-card:var(--surface);
  --bg-secondary:var(--ground);
  --bg-nav:var(--surface);}
.utility{background:var(--navy-900);color:#c3d0e2;font-size:var(--t-sm)}
.utility .container{display:flex;align-items:center;justify-content:center;
  gap:var(--s3) var(--s5);min-height:42px;flex-wrap:wrap;text-align:center;}
.utility-facts{display:flex;gap:var(--s3) var(--s5);flex-wrap:wrap;align-items:center;justify-content:center}
.utility-facts span{display:inline-flex;align-items:center;gap:var(--s2)}
.utility a{color:#fff;text-decoration:none;font-weight:700}
.utility a:hover{color:var(--accent)}
.dot{width:4px;height:4px;border-radius:50%;background:var(--accent);flex:none}
.utility-sep{width:1px;height:14px;background:rgba(255,255,255,.22);flex:none}
.header{position:sticky;top:0;z-index:50;background:var(--surface);
  border-bottom:1px solid var(--line);
  box-shadow:0 1px 0 rgba(15,26,39,.03);}
.header-bar{max-width:1640px;margin:0 auto;padding-inline:var(--s7);
  display:flex;align-items:center;gap:var(--s6);
  min-height:84px;}
.header-bar > .nav{margin-left:auto;align-items:center}
.header .nav .btn{margin-left:var(--s4);align-self:center;margin-block:0}
.brand{flex:none;display:flex;align-items:center;margin-right:auto}
.brand img{height:50px;width:auto}
.nav{display:flex;align-items:center;gap:var(--s6);
  font-size:15px;font-weight:600;}
.nav a:not(.btn){color:var(--ink);text-decoration:none;padding:var(--s2) 0;
  border-bottom:2px solid transparent;letter-spacing:-.005em;
  transition:color var(--dur) var(--ease),border-color var(--dur) var(--ease);}
.nav a:not(.btn):hover{color:var(--accent);border-bottom-color:var(--accent)}
.nav .btn-primary{font-size:15px;font-weight:700;letter-spacing:.01em;
  padding:var(--s3) var(--s5);border-radius:var(--r-md);}
.nav-toggle{display:none}
.footer{background:var(--footer-bg);color:var(--footer-text);font-size:var(--t-sm)}
.footer .container{max-width:var(--container);margin-inline:auto;
  padding-inline:var(--s5);padding-block:var(--s8) var(--s6)}
.footer .btn{width:auto;margin-block:0}
.footer a{text-decoration:none;transition:color var(--dur) var(--ease)}
.footer a:hover{color:var(--accent)}
.footer-brand{display:flex;flex-wrap:wrap;gap:var(--s5);
  align-items:center;justify-content:space-between;
  padding-bottom:var(--s6);
  border-bottom:1px solid var(--footer-line);}
.footer-brand img{height:40px;width:auto}
.footer-brand-contact{display:flex;align-items:center;gap:var(--s6);flex-wrap:wrap}
.footer-top{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));
  gap:var(--s6) var(--s5);
  padding-block:var(--s7);
  border-bottom:1px solid var(--footer-line);}
.footer h4{color:var(--footer-head);font-size:var(--t-sm);margin:0 0 var(--s3);letter-spacing:.02em}
.footer ul{list-style:none;margin:0;padding:0}
.footer li a{display:inline-block;padding-block:var(--s2);line-height:1.35}
.footer-bottom{padding-top:var(--s5);display:grid;gap:var(--s2);
  font-size:var(--t-xs);color:var(--footer-muted);}
.mobile-menu{position:fixed;inset:0;z-index:100;
  display:flex;justify-content:flex-end;
  background:rgba(10,22,40,.55);}
.mobile-menu[hidden]{display:none}
.mobile-menu-panel{width:min(21rem,86vw);height:100%;overflow-y:auto;
  background:var(--surface);
  display:flex;flex-direction:column;gap:var(--s5);
  padding:var(--s5) var(--s5) var(--s7);
  box-shadow:-14px 0 34px rgba(10,22,40,.20);}
.mobile-menu-head{display:flex;align-items:center;justify-content:space-between;gap:var(--s4)}
.mobile-menu-head img{display:block;height:34px;width:auto}
.mobile-menu-close{display:grid;place-items:center;flex:0 0 auto;width:42px;height:42px;
  border:1px solid var(--line);border-radius:var(--r-md);
  background:var(--surface);color:var(--ink);cursor:pointer;}
.mobile-menu-close:hover{border-color:var(--accent);color:var(--accent)}
.mobile-menu nav{display:flex;flex-direction:column}
.mobile-menu nav a{display:block;padding:var(--s4) 0;min-height:48px;   /* a real tap target */
  font-size:var(--t-md);font-weight:600;line-height:1.4;
  color:var(--ink);text-decoration:none;border-bottom:1px solid var(--line);}
.mobile-menu nav a:hover, .mobile-menu nav a:focus-visible{color:var(--accent)}
.mobile-menu .btn{width:100%;justify-content:center}
.mobile-menu-call{font-size:var(--t-sm);color:var(--muted);margin:0;text-align:center;}
.mobile-menu-call a{color:var(--accent);font-weight:600}
.utility ` rules, .header ` rules, .mobile-menu ` rules, .footer ` rules, .utility including the
   ones inside the old sheet's media queries, .header including the
   ones inside the old sheet's media queries, .mobile-menu including the
   ones inside the old sheet's media queries, .footer including the
   ones inside the old sheet's media queries, .utility without needing !important. */
body > header.header, .header without needing !important. */
body > header.header, .mobile-menu without needing !important. */
body > header.header, .footer without needing !important. */
body > header.header{padding:0;margin:0;border-radius:0;max-width:none;min-height:0;
  background-image:none;text-align:left;}
header.header::before, header.header::after{content:none}
.footer{padding:0;margin:0;border-radius:0;max-width:none}
.utility{padding:0;margin:0}
.mobile-menu nav{padding:0;margin:0;background:none}
@media (max-width:1000px){
.footer-top{grid-template-columns:repeat(2,minmax(0,1fr))}
.nav{display:none}
.nav-toggle{display:inline-flex;margin-left:auto;background:none;border:1px solid var(--line-strong);
    border-radius:var(--r-md);padding:var(--s3);cursor:pointer;color:var(--navy-800);}
}
@media (max-width:680px){
.utility{font-size:var(--t-xs)}
.utility .container{justify-content:center;min-height:38px;padding-block:var(--s2);gap:var(--s3)}
.utility-facts > :not(.u-keep){display:none}
.header-bar{min-height:66px;padding-inline:var(--s4)}
.brand img{height:36px}
.footer-top{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s6) var(--s4)}
.footer-brand{flex-direction:column;align-items:flex-start}
}
@media (prefers-reduced-motion:no-preference){
.mobile-menu[data-open="true"] .mobile-menu-panel{animation:menu-slide-in var(--dur) var(--ease);}
}
@media (min-width:1001px){
.mobile-menu{display:none}
}
