@font-face { font-family: 'Inter'; font-style: normal; font-weight: 400; font-display: optional; src: url(/assets/fonts/Inter-400.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Inter'; font-style: normal; font-weight: 700; font-display: optional; src: url(/assets/fonts/Inter-700.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Source Serif 4'; font-style: normal; font-weight: 600; font-display: optional; src: url(/assets/fonts/SourceSerif4-600.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }

/* Metric-matched fallbacks. Without these the swap from the system font to the
   webfont reflows the page: measured CLS was 0.19 on the operator ranking and
   0.14 on the national hub, both over the 0.1 target. The overrides make the
   fallback occupy almost exactly the same space, so the swap is invisible. */
@font-face{font-family:"Inter Fallback";src:local("Arial"),local("Helvetica"),local("Liberation Sans");
  size-adjust:107%;ascent-override:90%;descent-override:22.4%;line-gap-override:0%}
@font-face{font-family:"Source Serif Fallback";src:local("Times New Roman"),local("Liberation Serif"),local("Georgia");
  size-adjust:103.5%;ascent-override:95%;descent-override:31%;line-gap-override:0%}

/* WhoOwnsCare design system.
   Institutional healthcare intelligence: financial-research typography, flat
   data presentation, restrained chrome. The data is the visual. */
*,*::before,*::after{box-sizing:border-box}
:root{
  /* brand */
  --navy:#0B1F33; --slate-blue:#284B63; --teal:#1F7A78;
  --emerald:#2E7D5B; --gold:#C9A44C;
  /* surfaces */
  --paper:#F7F5EF; --white:#FFFFFF; --mist:#EEF2F3;
  /* text */
  --ink:#17212B; --slate:#52616B; --line:#D5DDE1;
  /* status */
  --verified:#287A55; --probable:#B7791F; --distress:#B84A3A;
  --high-distress:#8F2D2D; --contracting:#B8622F; --neutral:#667680;
  --info:#3273A8;
  --serif:"Source Serif 4","Source Serif Fallback",Georgia,"Times New Roman",serif;
  --sans:Inter,"Inter Fallback",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;
  --shell:1360px; --read:800px;
}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);
  font-family:var(--sans);font-size:17px;line-height:1.62;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img{max-width:100%;height:auto}
a{color:var(--teal);text-underline-offset:2px}
a:hover{color:var(--navy)}
:focus-visible{outline:2px solid var(--teal);outline-offset:2px}
.skip{position:absolute;left:-9999px;top:0;background:var(--navy);color:#fff;
  padding:10px 16px;z-index:99;text-decoration:none}
.skip:focus{left:8px;top:8px}
.wrap{max-width:var(--shell);margin:0 auto;padding:0 24px}
.read{max-width:var(--read)}

/* ---------- header / nav ---------- */
header.site{background:var(--navy);border-bottom:3px solid var(--gold)}
header.site .wrap{display:flex;align-items:center;justify-content:space-between;
  gap:20px;padding-top:14px;padding-bottom:14px;flex-wrap:wrap}
.logo{font-family:var(--serif);font-weight:600;font-size:21px;letter-spacing:-.01em;
  text-decoration:none;color:#fff}
.logo span{color:var(--gold)}
nav.primary{display:flex;flex-wrap:wrap;gap:2px}
nav.primary a{font-size:14.5px;text-decoration:none;color:#C7D3DD;
  padding:7px 11px;border-radius:5px;white-space:nowrap}
nav.primary a:hover{color:#fff;background:rgba(255,255,255,.09)}
nav.primary a[aria-current="true"]{color:#fff;background:rgba(201,164,76,.18)}

/* ---------- layout ---------- */
main{padding:30px 0 64px;display:block}
.crumb{font-size:13.5px;color:var(--slate);margin:0 0 14px}
.crumb a{color:var(--slate);text-decoration:none}
.crumb a:hover{color:var(--teal);text-decoration:underline}

/* ---------- typography ---------- */
h1{font-family:var(--serif);font-size:clamp(34px,4.4vw,52px);font-weight:600;
  line-height:1.08;letter-spacing:-.015em;margin:0 0 14px;color:var(--navy);
  max-width:22ch}
h2{font-family:var(--serif);font-size:clamp(26px,2.6vw,32px);font-weight:600;
  line-height:1.18;letter-spacing:-.01em;margin:46px 0 10px;color:var(--navy)}
h3{font-family:var(--sans);font-size:21px;font-weight:700;line-height:1.3;
  margin:30px 0 7px;color:var(--navy)}
p{margin:0 0 15px;max-width:78ch}
p.lede{font-size:19px;line-height:1.6;color:var(--ink);margin:0 0 20px;max-width:74ch}
p.lede strong{color:var(--navy)}
p.note{font-size:14.5px;color:var(--slate);max-width:82ch}
.mute,.plain{color:var(--slate)}
.kicker{font-family:var(--sans);font-size:12px;font-weight:700;letter-spacing:.1em;
  text-transform:uppercase;color:var(--teal);margin:0 0 8px}

/* ---------- direct answer ---------- */
.answer{background:var(--white);border:1px solid var(--line);
  border-left:4px solid var(--teal);border-radius:6px;padding:20px 22px;
  margin:0 0 26px;max-width:82ch}
.answer p{font-size:18px;line-height:1.6;margin:0 0 10px}
.answer p:last-child{margin-bottom:0}
.answer strong{color:var(--navy);font-weight:700}

/* ---------- metrics ---------- */
.stats,.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(158px,1fr));
  gap:0;margin:26px 0;border-top:1px solid var(--line);
  border-bottom:1px solid var(--line)}
.stat,.kpi{padding:16px 20px 15px;border-right:1px solid var(--line)}
.stat:last-child,.kpi:last-child{border-right:0}
.stat .k,.kpi .k{font-size:11px;font-weight:700;letter-spacing:.09em;
  text-transform:uppercase;color:var(--slate)}
.stat .v,.kpi .v{font-family:var(--sans);font-size:31px;font-weight:700;
  letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:var(--navy);
  line-height:1.12;margin-top:3px}
.stat .d,.kpi .d{font-size:13px;color:var(--slate);margin-top:2px}

/* ---------- tables ---------- */
.tablewrap{overflow-x:auto;margin:16px 0;border:1px solid var(--line);
  border-radius:6px;background:var(--white)}
table{width:100%;border-collapse:collapse;font-size:14.5px;
  font-variant-numeric:tabular-nums;background:var(--white)}
.tablewrap>table{border:0;border-radius:0;margin:0}
thead th{position:sticky;top:0;z-index:1;background:var(--mist);
  text-align:left;font-size:12px;font-weight:700;letter-spacing:.05em;
  text-transform:uppercase;color:var(--navy);padding:11px 13px;
  border-bottom:1px solid var(--line);white-space:nowrap}
tbody td{padding:11px 13px;border-bottom:1px solid var(--line);vertical-align:top}
tbody tr:last-child td{border-bottom:0}
tbody tr:nth-child(even){background:#FBFCFC}
tbody tr:hover{background:var(--mist)}
td.num,th.num{text-align:right;font-variant-numeric:tabular-nums}
tbody td a{color:var(--navy);text-decoration:none;font-weight:700}
tbody td a:hover{color:var(--teal);text-decoration:underline}
table.kv td:first-child{color:var(--slate);width:34%;white-space:nowrap}
table.kv td:last-child{color:var(--ink);font-weight:700}

/* ---------- badges ---------- */
.tag{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.05em;
  text-transform:uppercase;padding:2px 7px;border-radius:4px;
  border:1px solid currentColor;white-space:nowrap;vertical-align:middle}
.tag.verified{color:var(--verified)}
.tag.probable{color:var(--probable)}
.tag.unresolved{color:var(--neutral)}
.tag.structural{color:var(--info)}
.tag.pe{color:var(--slate-blue)}
.tag.reit{color:var(--gold)}
.tag.distress{color:var(--distress)}
.tag.expanding{color:var(--emerald)}
.tag.contracting{color:var(--contracting)}

/* ---------- ownership graph ---------- */
.tree{background:var(--white);border:1px solid var(--line);border-radius:6px;
  padding:18px 20px;margin:14px 0;font-size:15px;line-height:1.85}
.tree .lbl{font-size:11px;font-weight:700;letter-spacing:.09em;
  text-transform:uppercase;color:var(--slate);margin-top:9px}
.tree .lbl:first-child{margin-top:0}
.tree a{color:var(--navy);font-weight:600}
.tree .prop{color:var(--gold)}
.tree .svc{color:var(--neutral)}

/* ---------- source / provenance ---------- */
.src,.sources{background:var(--mist);border:1px solid var(--line);border-radius:6px;
  padding:16px 18px;margin:26px 0 0;font-size:14px;color:var(--slate)}
.src a,.sources a{color:var(--slate-blue)}
.vintage{display:flex;flex-wrap:wrap;gap:6px 22px;font-size:13px;
  color:var(--slate);margin:0 0 18px;padding:9px 0;
  border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.vintage b{color:var(--navy);font-weight:700}

/* ---------- commercial ---------- */
.paywall{background:var(--white);border:1px solid var(--line);
  border-top:3px solid var(--gold);border-radius:6px;padding:22px 24px;margin:26px 0}
.paywall h3{margin-top:0;font-family:var(--serif);font-size:23px;font-weight:700}
a.buy{display:inline-block;background:var(--navy);color:#fff;text-decoration:none;
  font-weight:700;font-size:15px;padding:11px 20px;border-radius:5px;
  border:1px solid var(--navy)}
a.buy:hover{background:var(--slate-blue);border-color:var(--slate-blue);color:#fff}
.buy-note{font-size:13px;color:var(--slate);margin-top:9px}

/* ---------- cards / columns ---------- */
.cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:22px}
.card{background:var(--white);border:1px solid var(--line);border-radius:6px;
  padding:18px 20px}
.card h3{margin-top:0}

/* ---------- footer ---------- */
footer.site{background:var(--navy);color:#B9C6D2;margin-top:60px;
  padding:44px 0 30px;font-size:14.5px}
footer.site .wrap{display:grid;
  grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:28px}
footer.site h4{font-family:var(--sans);font-size:11.5px;font-weight:700;
  letter-spacing:.11em;text-transform:uppercase;color:var(--gold);margin:0 0 11px}
footer.site ul{list-style:none;margin:0;padding:0}
footer.site li{margin-bottom:7px}
footer.site a{color:#C7D3DD;text-decoration:none}
footer.site a:hover{color:#fff;text-decoration:underline}
.legal{border-top:1px solid rgba(255,255,255,.15);margin-top:34px;padding-top:20px;
  font-size:13px;color:#8FA0AE;max-width:none}
.legal p{max-width:none;margin:0 0 8px}
.legal a{color:#B9C6D2}

/* ---------- responsive ---------- */
@media (max-width:900px){
  body{font-size:16px}
  .wrap{padding:0 16px}
  h2{margin-top:36px}
  .stats,.kpis{grid-template-columns:repeat(auto-fit,minmax(132px,1fr))}
  .stat,.kpi{padding:13px 14px}
  .stat .v,.kpi .v{font-size:26px}
  nav.primary{gap:0}
  nav.primary a{padding:6px 8px;font-size:13.5px}
  table{font-size:13.5px}
  thead th,tbody td{padding:9px 10px}
}
@media print{header.site,footer.site,.paywall{display:none}}
