:root{
  --canvas:#ffffff; --tint:#f4f6f6; --footer:#f7f8f8;
  --ink:#222222; --utility:#5a5f63; --accent:#33628c;
  --rule:#d8dcde; --charcoal:#2e2e2e;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;background:var(--canvas);color:var(--ink);
  font:400 16px/1.62 Lato,Arial,Helvetica,sans-serif;
}
img{max-width:100%;height:auto;display:block}
a{color:var(--accent)}
a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.skip{position:absolute;left:-9999px;top:0;background:#fff;color:var(--accent);padding:10px 14px;z-index:20}
.skip:focus{left:8px;top:8px}
.shell{max-width:1040px;margin:0 auto;padding:0 24px}

/* 1. nav strip above header */
.nav-strip{background:var(--charcoal)}
.nav-strip ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap}
.nav-strip a{
  display:block;color:#f2f4f5;text-decoration:none;
  font-size:12px;letter-spacing:.08em;text-transform:uppercase;
  padding:14px 16px;line-height:1.2;min-height:44px;
}
.nav-strip a:hover,.nav-strip a[aria-current="page"]{background:#1e1e1e;color:#fff}

/* 2. wordmark band */
.wordmark-band{background:#fff;border-bottom:1px solid var(--rule)}
.wordmark-band .shell{
  min-height:78px;display:flex;align-items:center;justify-content:space-between;
  gap:24px;padding-top:14px;padding-bottom:14px;
}
.wordmark-band img{width:268px}
.wordmark-band .tagline{
  font:italic 16px/1.4 Georgia,'Times New Roman',serif;color:var(--utility);
  margin:0;text-align:right;max-width:320px;
}

/* 3. proposition band */
.prop-band{background:var(--tint);border-bottom:1px solid var(--rule);padding:44px 0 40px}
.prop-band h1{
  margin:0 0 14px;font:500 40px/1.16 Oswald,'Arial Narrow',Arial,sans-serif;
  letter-spacing:.01em;max-width:14em;
}
.prop-band p{margin:0 0 16px;font-size:17px;max-width:64ch}
.prop-band .more{font-size:14px}

/* grid */
.grid{display:grid;grid-template-columns:1fr 300px;gap:40px;padding:40px 0 8px}
.content{min-width:0;max-width:660px}
.content p{max-width:66ch}
h2{font:500 26px/1.25 Oswald,'Arial Narrow',Arial,sans-serif;margin:0 0 14px}
h3{font:500 22px/1.3 Oswald,'Arial Narrow',Arial,sans-serif;margin:0 0 8px}

/* partition-edge motif */
.edge{position:relative;padding-left:14px}
.edge::before{content:"";position:absolute;left:0;top:.15em;bottom:.15em;width:4px;background:var(--accent)}

/* 5. numbered capability rows */
.cap-rows{margin:34px 0 0;border-top:1px solid var(--rule)}
.cap-row{border-bottom:1px solid var(--rule);padding:22px 0;display:flex;gap:20px;align-items:flex-start}
.cap-num{
  font:500 34px/1 Oswald,'Arial Narrow',Arial,sans-serif;color:var(--accent);
  flex:0 0 auto;padding-left:12px;position:relative;
}
.cap-num::before{content:"";position:absolute;left:0;top:2px;bottom:2px;width:4px;background:var(--accent)}
.cap-row .body{min-width:0}
.cap-row p{margin:0 0 8px}
.cap-row .go{font-size:14px}

/* 6. rail */
.rail{min-width:0}
.rail-widget{background:#fff;border:1px solid var(--rule);padding:16px 18px;margin:0 0 20px}
.rail-widget h2{
  font:500 13px/1.3 Oswald,'Arial Narrow',Arial,sans-serif;
  letter-spacing:.1em;text-transform:uppercase;margin:0 0 12px;
}
.rail-widget ul{margin:0;padding:0 0 0 16px}
.rail-widget li{margin:0 0 8px;font-size:14px}
.rail-widget p{margin:0 0 10px;font-size:14px}
.pullquote{font:italic 16px/1.5 Georgia,'Times New Roman',serif;color:#333;margin:0 0 10px}
.rail-widget .stamp{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--utility)}

/* 7. updates band */
.updates{background:var(--tint);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);padding:34px 0;margin-top:28px}
.updates h2{margin-bottom:18px}
.update-list{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.update-entry .stamp{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--utility);margin:0 0 6px}
.update-entry h3{font-size:19px;margin:0 0 6px}
.update-entry p{margin:0 0 8px;font-size:15px}

/* 8. footer */
.site-footer{background:var(--footer);border-top:1px solid var(--rule);padding:34px 0 0;margin-top:0}
.footer-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;padding-bottom:26px}
.footer-cols h2{font:500 13px/1.3 Oswald,'Arial Narrow',Arial,sans-serif;letter-spacing:.1em;text-transform:uppercase;margin:0 0 12px}
.footer-cols ul{list-style:none;margin:0;padding:0}
.footer-cols li{margin:0 0 8px;font-size:14px}
.footer-cols p{margin:0 0 10px;font-size:14px;color:var(--utility)}
.credit{border-top:1px solid var(--rule);text-align:center;padding:16px 0 26px;font-size:12px;letter-spacing:.06em;color:var(--utility)}

/* inner pages */
.page-head{padding:34px 0 0}
.page-head h1{font:500 30px/1.2 Oswald,'Arial Narrow',Arial,sans-serif;margin:0 0 14px;padding-bottom:14px;border-bottom:1px solid var(--rule)}
.numbered{counter-reset:sub}
.numbered h2{counter-increment:sub;margin-top:34px;position:relative;padding-left:58px}
.numbered h2::before{
  content:counter(sub,decimal-leading-zero);position:absolute;left:14px;top:0;
  width:auto;height:auto;background:none;color:var(--accent);font-weight:500;
}
.numbered h2::after{content:"";position:absolute;left:0;top:.14em;bottom:.14em;width:4px;background:var(--accent)}
.qa{margin:0}
.qa dt{font:500 19px/1.35 Oswald,'Arial Narrow',Arial,sans-serif;margin:24px 0 8px}
.qa dd{margin:0 0 4px;max-width:66ch}
.rowlist{list-style:none;margin:24px 0 0;padding:0;border-top:1px solid var(--rule)}
.rowlist li{border-bottom:1px solid var(--rule);padding:16px 0 16px 14px;position:relative}
.rowlist li::before{content:"";position:absolute;left:0;top:18px;bottom:18px;width:4px;background:var(--accent)}
.rowlist .cap{display:block;font:500 18px/1.35 Oswald,'Arial Narrow',Arial,sans-serif;margin-bottom:4px}
.rowlist .note{font-size:14px;color:var(--utility)}
.related{margin:34px 0 0;padding:18px 0 0;border-top:1px solid var(--rule);font-size:14px}
.related a{margin-right:14px}
.idx{list-style:none;margin:22px 0 0;padding:0}
.idx li{padding:14px 0;border-bottom:1px solid var(--rule)}
.idx .lbl{font:500 19px/1.3 Oswald,'Arial Narrow',Arial,sans-serif;display:block}
.idx .dsc{font-size:14px;color:var(--utility)}

@media (max-width:860px){
  .grid{grid-template-columns:1fr;gap:0;padding-top:28px}
  .rail{margin-top:30px}
  .prop-band h1{font-size:30px}
  .prop-band p{font-size:16px}
  .update-list{grid-template-columns:1fr}
  .wordmark-band .shell{flex-direction:column;align-items:flex-start;gap:8px}
  .wordmark-band .tagline{text-align:left;font-size:14px}
  .cap-row{flex-direction:column;gap:6px}
  .cap-num{font-size:28px}
}
@media (max-width:560px){
  .footer-cols{grid-template-columns:1fr;gap:24px}
  .wordmark-band img{width:230px}
  .prop-band h1{font-size:27px}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *{animation:none!important;transition:none!important}
}
