/* SFR 10-Year OPORD site — styled to Blake's App Chrome Standard (sfr-app-chrome).
   Navy header bar + wordmark + app label · pale ground · white content sheet · navy footer. */
@import url("https://fonts.googleapis.com/css2?family=Figtree:wght@300;400;500;600;700&family=Montserrat:wght@500;600;700;800&display=swap");

:root{
  /* Brand palette — locked (sfr-app-core) */
  --sfr-navy:#1E2A3B; --sfr-honey:#EAB33F; --sfr-pale:#F1ECBE;
  --sfr-white:#FFFFFF; --sfr-ink:#1E2A3B;
  --sfr-navy-600:#34465f;
  --sfr-line:rgba(30,42,59,.14);
  --sfr-pale-edge:#d8d2a0;
  --sfr-good:#1B7F3B; --sfr-warn:#B7791F; --sfr-bad:#C2310E;
  --sfr-font-display:"VV Ruby Sans","Montserrat",system-ui,-apple-system,"Segoe UI",sans-serif;
  --sfr-font-body:"Figtree",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --sfr-shadow:0 10px 30px rgba(30,42,59,.10);
  --sfr-sheet-shadow:0 0 60px rgba(30,42,59,.12);
}
*{box-sizing:border-box}
body{margin:0;background:var(--sfr-pale);color:var(--sfr-ink);font-family:var(--sfr-font-body);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}
a{color:var(--sfr-navy)}
.w{display:contents}

/* ===== CHROME HEADER — navy bar, wordmark + app label, uppercase nav ===== */
.app-header{position:sticky;top:0;z-index:50;background:var(--sfr-navy);color:#fff;box-shadow:0 2px 14px rgba(0,0,0,.18)}
.app-header__inner{max-width:1180px;margin:0 auto;padding:12px 24px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.app-header__brand{display:flex;align-items:center;gap:14px;text-decoration:none;color:inherit;flex:none;min-width:0}
.app-wordmark{height:30px;width:auto;display:block;flex:none}
.app-label{font-family:var(--sfr-font-display);text-transform:uppercase;font-size:1.08rem;font-weight:700;color:#fff;letter-spacing:.05em;padding-left:16px;border-left:1px solid rgba(255,255,255,.28);white-space:nowrap}
.app-header__right{display:flex;align-items:center;gap:22px;min-width:0}
.app-nav{display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.app-nav a{font-family:var(--sfr-font-display);text-transform:uppercase;color:rgba(255,255,255,.80);font-size:.86rem;font-weight:600;letter-spacing:.06em;text-decoration:none;transition:color .12s;white-space:nowrap}
.app-nav a:hover{color:var(--sfr-honey)}
.app-nav a.is-active{color:var(--sfr-honey)}
@media(max-width:900px){
  .app-header__inner{flex-wrap:wrap;padding:10px 16px;gap:10px}
  .app-wordmark{height:24px}
  .app-header__right{width:100%;gap:14px}
  .app-nav{gap:12px;font-size:.78rem;overflow-x:auto;flex-wrap:nowrap;width:100%;padding-bottom:2px}
}

/* ===== CONTENT SHEET — white on the pale ground ===== */
.pg{max-width:1080px;margin:0 auto;background:var(--sfr-white);box-shadow:var(--sfr-sheet-shadow);padding:0 44px 70px}
@media(max-width:700px){.pg{padding:0 20px 50px}}

/* Masthead inside the sheet */
.mast{border-bottom:3px solid var(--sfr-honey);padding:44px 0 26px}
.k{font-family:var(--sfr-font-display);text-transform:uppercase;font-weight:800;font-size:.72rem;letter-spacing:.16em;color:var(--sfr-honey);margin:0 0 14px;display:block}
h1{font-family:var(--sfr-font-display);text-transform:uppercase;font-weight:700;font-size:clamp(26px,4.6vw,44px);line-height:1.08;letter-spacing:.05em;margin:0 0 12px;color:var(--sfr-navy);text-wrap:balance}
h1 .a{color:var(--sfr-honey)}
.dek{font-size:17px;max-width:68ch;color:var(--sfr-navy);opacity:.85;margin:0}
.meta{display:flex;flex-wrap:wrap;gap:8px 26px;margin-top:20px;font-family:var(--sfr-font-body);font-size:13px;color:var(--sfr-navy-600)}
.meta b{color:var(--sfr-navy);font-weight:700}

/* Mission block — pale-yellow highlight with honey rule */
.mission{margin:34px 0;background:var(--sfr-pale);color:var(--sfr-ink);border-left:6px solid var(--sfr-honey);padding:24px 28px}
.mission .k{color:var(--sfr-warn)}
.mission p{margin:0;font-size:19px;font-weight:650;line-height:1.45;text-wrap:pretty}

/* Sections */
.sec{margin:48px 0 0;scroll-margin-top:76px}
.par{display:flex;align-items:baseline;gap:14px;border-bottom:2px solid var(--sfr-line);padding-bottom:8px;margin-bottom:6px}
.par .n{font-family:var(--sfr-font-display);font-size:13px;color:var(--sfr-honey);font-weight:800;letter-spacing:.06em}
.par h2{font-family:var(--sfr-font-display);text-transform:uppercase;font-size:21px;letter-spacing:.05em;font-weight:700;color:var(--sfr-navy);margin:0}
.lead{color:var(--sfr-navy-600);max-width:72ch;margin:8px 0 18px;font-size:15px}
h3{font-family:var(--sfr-font-display);text-transform:uppercase;font-size:13.5px;letter-spacing:.09em;color:var(--sfr-honey);margin:26px 0 10px;font-weight:800}
h3 b,.par h2 b{color:inherit}

/* Tables — navy header row, white body, brand lines */
.tsc{overflow-x:auto;border:1px solid var(--sfr-line);border-radius:8px;margin-bottom:8px}
table{border-collapse:collapse;width:100%;min-width:640px;font-size:14px}
th{background:var(--sfr-navy);font-family:var(--sfr-font-display);text-transform:uppercase;font-size:10.5px;letter-spacing:.1em;color:rgba(255,255,255,.92);text-align:left;padding:10px 13px;font-weight:700}
td{padding:10px 13px;border-bottom:1px solid var(--sfr-line);color:var(--sfr-ink);vertical-align:top;background:var(--sfr-white)}
tr:last-child td{border-bottom:0}
td.hd{color:var(--sfr-navy);font-weight:700;white-space:nowrap}
td.wrap{white-space:normal}
td b,td strong{color:var(--sfr-navy)}
.num{font-variant-numeric:tabular-nums}
.dot{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:8px}
.g,.dg{background:var(--sfr-good)} .y,.dy{background:var(--sfr-warn)} .r,.dr{background:var(--sfr-bad)}

/* Callouts / intent */
.callout,.intent{background:var(--sfr-pale);border:1px solid var(--sfr-pale-edge);border-left:4px solid var(--sfr-honey);border-radius:8px;padding:16px 20px;margin:14px 0}
.callout p,.intent p{margin:0;font-size:15px;color:var(--sfr-ink)}
.callout b,.intent b{color:var(--sfr-navy)}

/* In-page jump bar (Full Plan) */
nav.jump{display:flex;gap:6px;overflow-x:auto;padding:14px 0 4px}
nav.jump a{font-family:var(--sfr-font-display);text-transform:uppercase;font-size:11px;letter-spacing:.07em;font-weight:700;color:var(--sfr-navy);text-decoration:none;white-space:nowrap;padding:6px 12px;border:1px solid var(--sfr-navy);border-radius:999px}
nav.jump a:hover{background:var(--sfr-honey);border-color:var(--sfr-honey)}

/* legacy nav.site (should be replaced by chrome header; keep harmless fallback) */
nav.site{display:none}

/* Deep links on the overview */
a.deep{font-family:var(--sfr-font-body);font-size:12px;letter-spacing:.02em;font-weight:700;margin-left:10px;white-space:nowrap;color:var(--sfr-navy);text-transform:none}
a.deep:hover{color:var(--sfr-warn)}

/* Sheet footer line */
.foot{margin-top:56px;border-top:2px solid var(--sfr-line);padding-top:16px;font-family:var(--sfr-font-body);font-size:13px;color:var(--sfr-navy-600);line-height:1.8}
.foot b{color:var(--sfr-honey);font-family:var(--sfr-font-display);text-transform:uppercase;letter-spacing:.06em}

/* ===== CHROME FOOTER — navy, centered wordmark ===== */
.app-footer{background:var(--sfr-navy);color:rgba(255,255,255,.8);text-align:center;padding:40px 24px;margin-top:0}
.app-footer__mark{height:26px;width:auto;margin:0 auto 14px;display:block}
.app-footer__meta{font-family:var(--sfr-font-display);text-transform:uppercase;font-size:.72rem;font-weight:700;letter-spacing:.08em;color:rgba(255,255,255,.55)}

@media(prefers-reduced-motion:reduce){.app-nav a{transition:none}}
