:root{--navy:#112f4e;--blue:#005ea8;--blue-dark:#1a4480;--cyan:#00bde3;--red:#b50909;--gold:#ffbe2e;--ink:#1b1b1b;--muted:#565c65;--line:#dfe1e2;--green:#2e7044}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"Source Sans Pro","Public Sans","Segoe UI",Arial,sans-serif;color:var(--ink);background:#f7f9fb;line-height:1.55}.skip{position:absolute;left:-999px}.skip:focus{left:1rem;top:1rem;background:#fff;border:3px solid var(--gold);padding:.8rem;z-index:1000}.usa-banner{background:#f1f1f1;border-bottom:1px solid #c9c9c9;font-size:.9rem}.banner-inner{max-width:1320px;margin:auto;padding:.55rem 2rem;display:flex;gap:.65rem;align-items:center}.banner-inner p{margin:0}.flag-dot{width:18px;height:18px;border-radius:50%;background:linear-gradient(135deg,var(--blue) 0 45%,#fff 45% 55%,var(--red) 55%);box-shadow:0 0 0 1px #aaa}.masthead{background:#fff;border-bottom:1px solid var(--line)}.masthead-inner{max-width:1320px;margin:auto;padding:1.35rem 2rem;display:flex;justify-content:space-between;gap:2rem;align-items:center}.agency-lockup{display:flex;gap:1rem;align-items:center}.agency-seal{width:76px;height:76px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at center,#fff 0 36%,var(--blue) 37% 55%,var(--navy) 56%);border:3px solid var(--gold);color:#fff;font-weight:900;letter-spacing:.04em;box-shadow:0 2px 8px rgba(0,0,0,.15)}.agency-seal span{background:var(--navy);border-radius:999px;padding:.3rem .38rem}.small-caps,.eyebrow{margin:0 0 .25rem;text-transform:uppercase;letter-spacing:.1em;color:var(--blue-dark);font-weight:800;font-size:.78rem}h1,h2,h3{line-height:1.15;margin:.1rem 0 .75rem}h1{font-size:clamp(1.8rem,3.5vw,3.2rem);letter-spacing:-.03em;color:var(--navy)}h2{font-size:clamp(1.6rem,3vw,2.45rem);letter-spacing:-.025em;color:var(--navy)}h3{font-size:1.2rem;color:var(--navy)}.tagline{margin:.2rem 0 0;color:var(--muted);font-weight:600}.site-search{min-width:320px}.site-search label{display:block;font-weight:800;margin-bottom:.35rem}.site-search div{display:flex}.site-search input{flex:1;border:2px solid #565c65;border-right:0;padding:.7rem;font-size:1rem}.site-search button{border:2px solid var(--blue);background:var(--blue);color:#fff;font-weight:800;padding:.7rem 1rem;cursor:pointer}.nav-bar{background:var(--navy);border-bottom:4px solid var(--cyan);position:sticky;top:52px;z-index:150}.nav-inner{max-width:1320px;margin:auto;display:flex;flex-wrap:wrap;padding:0 2rem}.nav-inner a{color:#fff;text-decoration:none;font-weight:800;padding:1rem .95rem;border-left:1px solid rgba(255,255,255,.12)}.nav-inner a:hover,.nav-inner a:focus{background:var(--blue)}.layout{max-width:1320px;margin:auto;display:grid;grid-template-columns:260px minmax(0,1fr);gap:1.5rem;padding:1.5rem 2rem}.side-nav{align-self:start;position:sticky;top:120px;background:#fff;border:1px solid var(--line);padding:1rem}.side-title{font-weight:900;margin:0 0 .7rem;color:var(--navy)}.side-nav a{display:block;padding:.55rem .45rem;border-top:1px solid var(--line);color:var(--blue-dark);font-weight:700;text-decoration:none}.side-nav a:hover{background:#f0f7ff}.hero-card,.panel{background:#fff;border:1px solid var(--line);box-shadow:0 1px 3px rgba(0,0,0,.08);margin-bottom:1.25rem}.hero-card{border-top:8px solid var(--blue);padding:clamp(1.25rem,3vw,2.25rem)}.breadcrumb{font-size:.9rem;color:var(--muted);margin-bottom:1rem}.lede{font-size:1.25rem;max-width:76ch}.notice{border-left:6px solid var(--gold);background:#fff7d7;padding:1rem;margin:1rem 0;font-size:1.05rem}.cta-row{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:1rem}.button{display:inline-block;padding:.75rem 1rem;text-decoration:none;font-weight:900;border-radius:2px}.button.primary{background:var(--blue);color:#fff}.button.secondary{border:2px solid var(--blue);color:var(--blue);background:#fff}.panel{padding:clamp(1.1rem,2.5vw,2rem)}.section-head{display:flex;justify-content:space-between;gap:1rem;align-items:end;flex-wrap:wrap}.updated{font-weight:800;color:var(--muted)}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin:1rem 0 1.5rem}.metric-grid article{border:1px solid var(--line);border-top:5px solid var(--blue);padding:1rem;background:#fbfcfd}.metric-grid span{display:block;font-weight:900;color:var(--muted);font-size:.9rem}.metric-grid strong{display:block;font-size:2.35rem;color:var(--navy);line-height:1.1;margin:.2rem 0}.metric-grid p{margin:.3rem 0 0}.bars{display:grid;gap:.55rem;max-width:900px}.bar-row{display:grid;grid-template-columns:150px minmax(150px,1fr) 45px;gap:.75rem;align-items:center}.bar-row span{font-weight:800}.bar-track{height:18px;background:#e6eef8;border:1px solid #c7d7ea;overflow:hidden}.bar{height:100%;background:linear-gradient(90deg,var(--blue),var(--cyan))}.content-columns{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}.definition-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin:1rem 0}.definition-grid article{border:1px solid var(--line);border-left:5px solid var(--blue);padding:1rem;background:#fbfcfd}.method{background:#f4f7fb}.process{list-style:none;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.75rem;padding:0;margin:1rem 0 0;counter-reset:step}.process li{border:1px solid var(--line);background:#fff;padding:1rem;min-height:120px}.process li:before{counter-increment:step;content:counter(step);display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--navy);color:#fff;font-weight:900;margin-bottom:.6rem}.process strong{display:block;color:var(--navy)}.process span{display:block;color:var(--muted)}.filters{display:flex;gap:.45rem;flex-wrap:wrap}.filters button{border:2px solid var(--blue);background:#fff;color:var(--blue);font-weight:900;padding:.55rem .75rem;cursor:pointer}.filters button.active,.filters button:hover{background:var(--blue);color:#fff}.database-note{font-weight:800;color:var(--muted)}.results-count{background:#eef7ff;border-left:5px solid var(--blue);padding:.7rem 1rem;font-weight:900;margin-bottom:1rem}.case-grid{display:grid;grid-template-columns:1fr;gap:.8rem}.case-card{border:1px solid var(--line);border-left:6px solid var(--blue);padding:1rem;background:#fff;display:grid;grid-template-columns:150px minmax(0,1fr);gap:.75rem 1rem}.case-card.hidden{display:none}.case-date{font-weight:900;color:var(--red);grid-row:1/span 3}.case-card h3{margin:0;color:var(--navy)}.quote{font-weight:800;margin:.1rem 0 .5rem}dl{display:grid;grid-template-columns:130px minmax(0,1fr);gap:.35rem .75rem;margin:0}dt{font-weight:900;color:#333}dd{margin:0;color:#3c4043}.badge{display:inline-block;background:#e7f6ec;color:#193d27;border:1px solid #b7dfc2;border-radius:2px;padding:.1rem .4rem;font-weight:900}.alert{border-left:8px solid var(--red);background:#fff8f8}.downloads{border-top:5px solid var(--green)}.download-box{background:#f2f7f4;border-left:6px solid var(--green);padding:1rem}code{background:#f0f0f0;padding:.1rem .25rem}.footer{background:#1b1b1b;color:#e6e6e6;padding:2rem;display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media(max-width:1000px){.masthead-inner,.agency-lockup,.content-columns{display:block}.site-search{min-width:0;margin-top:1rem}.layout{grid-template-columns:1fr;padding:1rem}.side-nav{position:static}.metric-grid,.definition-grid,.process{grid-template-columns:1fr 1fr}}@media(max-width:650px){.banner-inner,.masthead-inner,.nav-inner{padding-left:1rem;padding-right:1rem}.nav-inner a{flex:1 1 50%}.metric-grid,.definition-grid,.process,.footer{grid-template-columns:1fr}.case-card{grid-template-columns:1fr}.case-date{grid-row:auto}dl{grid-template-columns:1fr}.bar-row{grid-template-columns:105px 1fr 30px}}

/* Portfolio top bar — only sticky site chrome */
.integrated-nav {
  position: sticky;
  top: 0;
  z-index: 200;
  background: #112f4e;
  border-bottom: 1px solid rgba(255,255,255,0.14);
}
.integrated-nav-inner {
  max-width: 1320px;
  margin: 0 auto;
  padding: 0 1.25rem;
  min-height: 52px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}
.integrated-nav .brand {
  color: #fff;
  font-weight: 800;
  text-decoration: none;
  letter-spacing: 0.02em;
  font-size: 1.05rem;
  white-space: nowrap;
}
.integrated-nav .brand span.phi {
  color: #ffbe2e;
  margin-left: 0.15rem;
}
.integrated-nav-links {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: center;
  gap: 0.15rem;
}
.integrated-nav-links li {
  display: block;
  margin: 0;
  padding: 0;
  list-style: none;
}
.integrated-nav-links a {
  display: block;
  color: rgba(255,255,255,0.88);
  text-decoration: none;
  font-weight: 700;
  font-size: 0.9rem;
  padding: 0.55rem 0.75rem;
  border-radius: 4px;
  white-space: nowrap;
}
.integrated-nav-links a:hover,
.integrated-nav-links a[aria-current="page"] {
  color: #fff;
  background: rgba(255,255,255,0.14);
}

/* Section nav sits UNDER portfolio bar — not competing at top:0 */
.nav-bar {
  position: sticky;
  top: 52px;
  z-index: 150;
  background: var(--navy);
  border-bottom: 4px solid var(--cyan);
}
.side-nav {
  top: 120px;
}

@media (max-width: 700px) {
  .integrated-nav-inner {
    flex-wrap: wrap;
    padding: 0.45rem 0.85rem;
    min-height: 0;
  }
  .integrated-nav-links {
    flex-wrap: wrap;
    width: 100%;
  }
  .integrated-nav-links a {
    font-size: 0.82rem;
    padding: 0.4rem 0.55rem;
  }
  .nav-bar {
    top: 0; /* on small screens portfolio bar may wrap; section bar uses normal flow sticky */
    position: relative;
  }
}
