/* Company pages and the A–Z directory. Builds on landing.css (shared header, footer, buttons). */
.company-main{padding:34px 0 40px}
.company-nav{display:flex;align-items:center;gap:18px}
.company-nav>a:not(.header-cta){color:#cbd8ff;font-size:.84rem;font-weight:800}
.crumbs{margin:0 0 26px;color:#8293a4;font-size:.76rem}
.crumbs a{color:#cbd8ff}
.company-main h1{max-width:none;margin:0;text-align:left;font-size:clamp(2.2rem,5.6vw,4.4rem);line-height:1.02;overflow-wrap:anywhere}
.company-lede{max-width:760px;margin:20px 0 0;color:var(--muted);font-size:1.04rem;line-height:1.7}
.company-muted{color:#8f9fb0;font-size:.82rem;line-height:1.6}
.company-card{margin:34px 0 0;padding:26px;border:1px solid var(--line);border-radius:20px;background:linear-gradient(145deg,rgba(23,30,39,.94),rgba(10,13,18,.96));box-shadow:var(--shadow)}
.company-card.dem{border-color:rgba(49,92,255,.45)}
.company-card.rep{border-color:rgba(190,30,45,.5)}
.company-card.mixed{border-color:rgba(122,91,191,.55)}
.card-lean{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-family:Sora,sans-serif;font-size:1.05rem;font-weight:700}
.lean-dot{display:inline-block;flex:0 0 auto;width:12px;height:12px;border:2px solid #f4f0df;border-radius:50%;background:#56616d}
.lean-dot.dem{background:var(--blue-deep)}.lean-dot.rep{background:var(--red)}.lean-dot.mixed{background:#683c86}
.share-bar{display:flex;height:14px;margin:18px 0;overflow:hidden;border-radius:999px;background:rgba(255,255,255,.08)}
.share-bar i{display:block;height:100%}
.share-bar .dem{background:var(--blue)}.share-bar .rep{background:var(--red)}
.share-figures{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.share-figures div{display:grid;gap:4px;padding:14px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.025)}
.share-figures span{color:#8f9fb0;font-size:.72rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.share-figures strong{font-family:Sora,sans-serif;font-size:1.8rem;letter-spacing:-.04em}
.share-figures b{color:#d6e0ee;font-size:.9rem}
.share-figures .dem strong{color:#8399ff}.share-figures .rep strong{color:#ff7380}
.company-note,.company-notice{margin:18px 0 0;color:#aab8c8;font-size:.82rem;line-height:1.6}
.company-notice{margin-top:34px;padding:16px 18px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.025)}
.company-notice a,.company-section a:not(.button){color:#cbd8ff;text-decoration:underline;text-underline-offset:3px}
.company-columns{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}
.company-section{padding:24px;border:1px solid var(--line);border-radius:18px;background:rgba(12,16,22,.86)}
.company-section h2{margin:0 0 12px;font-size:1.25rem;letter-spacing:-.03em}
.company-section p{margin:0 0 12px;color:#c6d1dc;font-size:.9rem;line-height:1.65}
.company-section .button{margin-top:6px}
.plain-list{margin:0;padding-left:18px;color:#c6d1dc;font-size:.88rem;line-height:1.65}
.plain-list li+li{margin-top:8px}
.recipient-list{display:grid;gap:8px;margin:0;padding:0;list-style:none}
.recipient-list li{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;font-size:.84rem}
.recipient-list a{min-width:0;overflow-wrap:anywhere}
.recipient-list b{color:#d6e0ee;white-space:nowrap}
.party-tag{padding:3px 7px;border-radius:6px;background:rgba(255,255,255,.08);font-size:.66rem;font-weight:800}
.party-tag.dem{background:rgba(49,92,255,.28);color:#c7d3ff}.party-tag.rep{background:rgba(190,30,45,.32);color:#ffd0d4}
.company-pager{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:26px;font-size:.84rem;font-weight:800}
.company-pager a{color:#cbd8ff}
.directory-stats,.real-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;margin:30px 0 0;overflow:hidden;border:1px solid var(--line);border-radius:18px;background:var(--line)}
.directory-stats div,.real-stats div{margin:0;padding:18px 20px;background:#0c1016}
.directory-stats dt,.real-stats dt{color:#8f9fb0;font-size:.72rem;font-weight:800;line-height:1.4}
.directory-stats dd,.real-stats dd{margin:6px 0 0;font-family:Sora,sans-serif;font-size:1.35rem;font-weight:700;letter-spacing:-.03em}
.stat-dem,.list-split .dem{color:#8399ff;font-style:normal}.stat-rep,.list-split .rep{color:#ff7380;font-style:normal}.stat-mixed{color:#b48ad6}
.directory-tools{display:grid;gap:8px;max-width:520px;margin:30px 0 0}
.directory-tools label{font-size:.8rem;font-weight:800}
.directory-tools input{min-height:48px;padding:0 16px;border:1px solid var(--line);border-radius:12px;background:#0c1016;color:var(--ink);font:600 1rem Manrope,sans-serif}
.directory-tools input:focus-visible{outline:2px solid var(--blue);outline-offset:2px}
.directory-tools p{margin:0;min-height:1.3em}
.letter-jump{display:flex;flex-wrap:wrap;gap:6px;margin:18px 0 6px}
.letter-jump a{display:grid;min-width:34px;min-height:34px;place-items:center;border:1px solid var(--line);border-radius:8px;color:#cbd8ff;font-size:.8rem;font-weight:800}
.letter-group{margin-top:26px}
.letter-group[hidden],.letter-jump[hidden],.company-list li[hidden]{display:none}
.letter-group h2{margin:0 0 10px;font-size:1.4rem}
.company-list{display:grid;grid-template-columns:repeat(2,1fr);gap:6px 16px;margin:0;padding:0;list-style:none}
.company-list a{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:10px;min-height:44px;padding:8px 12px;border:1px solid var(--line);border-radius:10px;background:rgba(255,255,255,.02);font-size:.86rem}
.company-list a:hover,.company-list a:focus-visible{border-color:rgba(203,216,255,.45);outline:none}
.list-name{min-width:0;overflow:hidden;font-weight:700;text-overflow:ellipsis;white-space:nowrap}
.list-split,.list-total{color:#8f9fb0;font-size:.76rem;font-weight:700;white-space:nowrap}
@media(max-width:760px){
  .company-main{padding:20px 0 28px}
  .company-nav{gap:12px}
  .company-card,.company-section{padding:18px}
  .share-figures{grid-template-columns:1fr 1fr}
  .share-figures div:last-child{grid-column:1/-1}
  .share-figures strong{font-size:1.45rem}
  .company-columns,.company-list{grid-template-columns:1fr}
  .directory-stats,.real-stats{grid-template-columns:1fr 1fr}
  .company-list a{grid-template-columns:auto 1fr auto}
  .list-total{display:none}
  .recipient-list li{grid-template-columns:auto 1fr;}
  .recipient-list b{grid-column:2}
}
.stat-note{display:block;margin-top:8px;color:#8f9fb0;font-family:Manrope,sans-serif;font-size:.72rem;font-weight:600;letter-spacing:0;line-height:1.45}
.stats-scope{margin:12px 0 0;color:#8f9fb0;font-size:.86rem}.stats-scope a{color:#cbd8ff}
