/* Public organization pages (/nonprofits/...), built by scripts/build-org-pages.py.
   Uses the site's own variables from styles.css; nothing here is page-specific. */
.op-hero .op-crumbs{font-size:0.85rem;margin-bottom:14px;color:rgba(255,255,255,0.75);}
.op-hero .op-crumbs a{color:rgba(255,255,255,0.9);text-decoration:underline;text-underline-offset:2px;}
.op-hero .op-meta{color:rgba(255,255,255,0.85);max-width:720px;margin:0 0 20px;}
.op-hero .overline{color:var(--gold);}
.op-actions{display:flex;flex-wrap:wrap;gap:12px;}
.op-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start;}
@media (max-width:860px){.op-grid{grid-template-columns:1fr;}}
.op-card{background:var(--white);border:1px solid var(--blue-xlight);border-radius:var(--radius-lg);padding:24px;box-shadow:var(--shadow-sm);min-width:0;}
.op-card h2{font-size:1.35rem;margin:0 0 10px;color:var(--text-primary);}
.op-lead{color:var(--text-body);margin:0 0 16px;}
.op-sub{font-size:0.8rem;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:var(--text-muted);margin:0 0 8px;}
.op-donors{list-style:none;margin:0 0 18px;padding:0;}
.op-donors li{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:4px 14px;align-items:baseline;padding:10px 0;border-top:1px solid var(--blue-xlight);}
.op-donors li:first-child{border-top:0;}
.op-dn{font-weight:600;color:var(--text-primary);overflow-wrap:anywhere;}
.op-da{font-weight:700;font-variant-numeric:tabular-nums;}
.op-dy{color:var(--text-muted);font-size:0.85rem;font-variant-numeric:tabular-nums;}
@media (max-width:520px){.op-donors li{grid-template-columns:1fr auto;}.op-dy{grid-column:1/-1;}}
.op-lock{background:var(--blue-xlight);border-radius:var(--radius);padding:16px;}
.op-lock p{margin:0 0 12px;color:var(--text-body);}
.op-table-wrap{overflow-x:auto;}
.op-table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums;}
.op-table th,.op-table td{padding:8px 10px;text-align:right;border-bottom:1px solid var(--blue-xlight);}
.op-table th:first-child,.op-table td:first-child{text-align:left;}
.op-table thead tr{background:transparent;}
.op-table thead th{font-size:0.78rem;color:var(--text-muted);font-weight:700;text-transform:none;letter-spacing:0;padding:8px 10px;}
.op-note{color:var(--text-muted);font-size:0.9rem;margin:12px 0 0;}
.op-about{color:var(--text-muted);font-size:0.9rem;max-width:760px;}
.op-about p{margin:0 0 8px;}
.op-states,.op-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:6px 24px;}
.op-states li,.op-list li{padding:6px 0;border-bottom:1px solid var(--blue-xlight);display:flex;justify-content:space-between;gap:12px;min-width:0;}
.op-states span,.op-list span{color:var(--text-muted);font-size:0.85rem;white-space:nowrap;}
.op-list a{overflow-wrap:anywhere;}
@media (max-width:520px){
  .op-card{padding:18px 14px;}
  .op-table th,.op-table td{padding:8px 4px;font-size:0.88rem;}
  .op-table thead th{font-size:0.72rem;padding:6px 4px;}
}
.op-more h2{font-size:1.2rem;margin:0 0 12px;color:var(--text-primary);}
.op-all{margin:14px 0 0;font-size:0.95rem;}
