@import"https://fonts.googleapis.com/css2?family=Source+Serif+4:opsz,wght@8..60,400;8..60,500;8..60,600;8..60,700&family=IBM+Plex+Sans:wght@400;500;600;700&family=IBM+Plex+Mono:wght@400;500;600&display=swap";:root{--font-display: "Source Serif 4", ui-serif, Georgia, serif;--font-body: "IBM Plex Sans", ui-sans-serif, system-ui, sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, monospace;--ink-950: #0a1420;--ink-900: #0a2540;--ink-700: #1f3d61;--gold-300: #e0c47a;--gold-500: #c9a449;--gold-700: #8a6f24;--paper-50: #fdfcf9;--paper-100: #fafaf7;--paper-200: #f3f1ea;--paper-300: #e8e3d4;--char-500: #57564f;--char-400: #76746a;--char-300: #a3a097;--pos: #1f6a3f;--neg: #a73b2a;--bg: var(--paper-100);--bg-soft: var(--paper-200);--bg-card: var(--paper-50);--fg: var(--ink-900);--fg-muted: var(--char-500);--fg-faint: var(--char-400);--link: var(--ink-900);--link-hover: var(--gold-700);--accent: var(--gold-500);--rule: rgba(10, 37, 64, .12);--rule-strong: rgba(10, 37, 64, .22);--max-w: 1080px;--max-w-narrow: 880px}@media(prefers-color-scheme:dark){:root{--bg: #15110a;--bg-soft: #1d1810;--bg-card: #1a160e;--fg: #f3e9d2;--fg-muted: #b4a98c;--fg-faint: #786e54;--link: #f3e9d2;--link-hover: var(--gold-300);--rule: rgba(243, 233, 210, .12);--rule-strong: rgba(243, 233, 210, .24)}}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;font-family:var(--font-body);font-size:16px;line-height:1.6;color:var(--fg);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}img,svg{max-width:100%;display:block}a{color:var(--link);text-decoration:none}a:hover{color:var(--link-hover);text-decoration:underline;text-underline-offset:2px}h1,h2,h3,h4{font-family:var(--font-display);font-weight:600;letter-spacing:-.01em;line-height:1.2;color:var(--fg);margin:0}h1{font-size:clamp(2rem,1.4rem + 2vw,3.2rem);letter-spacing:-.02em;line-height:1.05}h2{font-size:1.6rem}h3{font-size:1.15rem}p{margin:0 0 .75em}strong{font-weight:600}em{font-style:italic}.mono,code,kbd{font-family:var(--font-mono)}.tnum{font-variant-numeric:tabular-nums}.sr,.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.breadcrumbs{font-family:var(--font-body);font-size:.85rem;color:var(--fg-muted);margin-bottom:1.25rem}.breadcrumbs a{color:var(--fg-muted)}.breadcrumbs a:hover{color:var(--link-hover)}.breadcrumbs span{margin:0 .5rem;color:var(--accent)}.breadcrumbs [aria-current=page]{margin:0;color:var(--fg);font-weight:500}.intro,.narrative{background:transparent;border-left:2px solid var(--accent);padding:.25rem 0 .25rem 1.25rem;margin:1.5rem 0;font-family:var(--font-display);font-size:1.1rem;line-height:1.6;color:var(--fg);max-width:70ch}.intro p,.narrative p{margin:0 0 .65em}.intro p:last-child,.narrative p:last-child{margin-bottom:0}.narrative>p:first-of-type:first-letter{font-family:var(--font-display);float:left;font-size:3.6em;line-height:.85;font-weight:600;padding-right:.08em;padding-top:.08em;color:var(--fg)}article section{margin:2.5rem 0}article section>h2{display:flex;align-items:baseline;gap:1rem;font-family:var(--font-display);font-weight:600;font-size:1.5rem;letter-spacing:-.01em;padding-bottom:.5rem;margin-bottom:1rem;border-bottom:1px solid var(--rule-strong)}article section>h3{margin:1rem 0 .5rem;font-size:1rem;font-family:var(--font-display);font-weight:600}.sub{color:var(--fg-muted);margin:-.25rem 0 1rem;font-family:var(--font-display);font-style:italic;font-size:.95rem}.grid{list-style:none;padding:0;margin:.5rem 0 0;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:0 2rem}.grid li{display:flex;justify-content:space-between;align-items:baseline;padding:.55rem 0;border-bottom:1px solid var(--rule);font-family:var(--font-display);font-size:1rem;font-weight:500}.grid li a{color:var(--fg)}.grid li a:hover{color:var(--link-hover)}.grid .n{font-family:var(--font-mono);font-size:.78rem;color:var(--fg-muted);font-variant-numeric:tabular-nums;white-space:nowrap;padding-left:.75rem}.popular{list-style:none;padding:0;columns:2;column-gap:3rem;counter-reset:pop}.popular li{padding:.6rem 0;border-bottom:1px solid var(--rule);break-inside:avoid;font-family:var(--font-display);font-size:1.02rem;position:relative;counter-increment:pop}.popular li:before{content:counter(pop,decimal-leading-zero);color:var(--accent);font-style:italic;font-size:.9rem;margin-right:.6em;font-variant-numeric:tabular-nums}.popular li a{color:var(--fg);font-weight:500}.popular li a:hover{color:var(--link-hover)}.popular .city{color:var(--fg-muted);font-family:var(--font-body);font-size:.85rem;font-weight:400}@media(max-width:640px){.popular{columns:1}}.region-list{list-style:none;padding:0;margin:.5rem 0 0;columns:3;column-gap:2rem}.region-list li{padding:.4rem 0;border-bottom:1px solid var(--rule);break-inside:avoid;font-family:var(--font-display);font-size:1rem}.region-list li a{color:var(--fg);font-weight:500}.region-list .n{color:var(--fg-muted);font-family:var(--font-mono);font-size:.78rem;font-variant-numeric:tabular-nums;margin-left:.4rem}@media(max-width:800px){.region-list{columns:2}}@media(max-width:480px){.region-list{columns:1}}.searchbar{display:flex;align-items:stretch;gap:0;max-width:640px;margin:0 auto;border:1px solid var(--ink-900);background:var(--bg-card)}.searchbar input{flex:1;min-width:0;border:0;outline:0;background:transparent;padding:.85rem 1rem;font-family:var(--font-body);font-size:1rem;color:var(--fg)}.searchbar input::placeholder{color:var(--fg-faint)}.searchbar button{border:0;cursor:pointer;padding:0 1.6rem;background:var(--ink-900);color:var(--paper-100);font-family:var(--font-body);font-size:.82rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;box-shadow:inset 0 -2px 0 var(--accent)}.searchbar button:hover{background:var(--ink-700)}.btn,.pagination a{display:inline-block;padding:.5rem 1rem;font-family:var(--font-body);font-size:.85rem;font-weight:500;letter-spacing:.02em;color:var(--fg);background:transparent;border:0;border-bottom:1px solid var(--rule-strong);cursor:pointer}.btn:hover,.pagination a:hover{color:var(--link-hover);text-decoration:none;border-color:var(--accent)}.btn-primary{background:var(--ink-900);color:var(--paper-100);border:0;box-shadow:inset 0 -2px 0 var(--accent);padding:.6rem 1.2rem;font-size:.82rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase}.btn-primary:hover{background:var(--ink-700);color:var(--paper-100)}.home{max-width:var(--max-w);margin:0 auto;padding:2.5rem 1.5rem 0}.home .hero{text-align:center;padding:2rem 0 3rem;max-width:760px;margin:0 auto}.home .hero h1{font-family:var(--font-display);font-weight:600;font-size:clamp(2.6rem,1.4rem + 4vw,4.6rem);line-height:1;letter-spacing:-.025em;margin:.5rem 0}.home .hero h1 em{font-style:italic;font-weight:400}.home .hero .tagline{font-family:var(--font-display);font-style:italic;font-size:1.2rem;color:var(--fg-muted);margin:1rem 0 1.5rem;line-height:1.45}.home .hero .tagline strong{color:var(--fg);font-style:normal;font-weight:600}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));border-top:1px solid var(--rule-strong);border-bottom:1px solid var(--rule-strong);margin:3rem 0}.stats>div{padding:1.4rem 0;text-align:center;border-left:1px solid var(--rule)}.stats>div:first-child{border-left:0}.stats dt{font-family:var(--font-body);font-size:.7rem;text-transform:uppercase;letter-spacing:.18em;color:var(--fg-muted);margin-top:.25rem}.stats dd{margin:0;font-family:var(--font-display);font-weight:500;font-size:2.2rem;letter-spacing:-.01em;font-variant-numeric:tabular-nums}.company{max-width:var(--max-w);margin:0 auto;padding:2rem 1.5rem 0}.company .header{padding-bottom:1.75rem;border-bottom:2px solid var(--ink-900);margin-bottom:1.5rem}.company .header h1{font-family:var(--font-display);font-weight:600;font-size:clamp(2rem,1.2rem + 3vw,3.6rem);letter-spacing:-.02em;line-height:1.02;margin:0 0 1rem}.company .header-meta{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:1rem 1.5rem;margin:0;padding:0}.company .header-meta div{display:flex;flex-direction:column}.company .header-meta dt{font-family:var(--font-body);font-size:.7rem;text-transform:uppercase;letter-spacing:.18em;color:var(--fg-muted);font-weight:600}.company .header-meta dd{margin:.25rem 0 0;font-family:var(--font-body);font-size:.95rem;font-weight:500}.company .header-meta dd:first-of-type{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.company .address p,.company .industry p{margin:.5rem 0}.company .business-desc{font-family:var(--font-display);font-style:italic;font-size:1.05rem;color:var(--fg);background:var(--bg-soft);border-left:2px solid var(--accent);padding:.75rem 1.25rem;margin:1rem 0;max-width:70ch;white-space:pre-line}.financials .table-wrap{overflow-x:auto;margin:0 -.25rem}.financials table{width:100%;border-collapse:collapse;font-family:var(--font-body);font-size:.9rem}.financials thead tr{border-bottom:1px solid var(--ink-900)}.financials th{text-align:left;padding:.6rem .75rem .6rem 0;font-family:var(--font-body);font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.16em;color:var(--fg-muted);background:transparent}.financials th.num{text-align:right;padding-right:0;padding-left:.75rem}.financials tbody tr{border-bottom:1px solid var(--rule)}.financials tbody tr:first-child{background:var(--bg-soft)}.financials tbody tr:first-child td{font-weight:600}.financials td{padding:.7rem .75rem .7rem 0;font-family:var(--font-mono);font-size:.85rem;font-variant-numeric:tabular-nums}.financials td:first-child{font-family:var(--font-display);font-size:1rem;font-weight:500}.financials td.num{text-align:right;padding-right:0;padding-left:.75rem}.financials .note{font-family:var(--font-display);font-style:italic;font-size:.85rem;color:var(--fg-muted);margin:.5rem 0 0}.financials .sparkline{margin:1.75rem 0 0;padding:1rem 0 0;border-top:1px solid var(--rule)}.financials .sparkline figcaption{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:.5rem}.financials .sparkline figcaption .label{font-family:var(--font-body);font-size:.7rem;text-transform:uppercase;letter-spacing:.18em;color:var(--fg-muted);font-weight:600}.financials .sparkline figcaption .legend{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--font-body);font-size:.78rem;color:var(--fg)}.financials .sparkline figcaption .swatch{display:inline-block;width:14px;height:2px;margin-right:.3rem;vertical-align:middle}.financials .sparkline figcaption .swatch.revenue{background:var(--ink-900)}.financials .sparkline figcaption .swatch.profit{background:var(--accent);background-image:linear-gradient(to right,var(--accent) 4px,transparent 4px,transparent 7px,var(--accent) 7px);background-size:7px 100%}.financials .sparkline figcaption .cagr{font-family:var(--font-display);font-style:italic;font-size:.9rem;color:var(--fg-muted)}.financials .sparkline svg{width:100%;height:auto;display:block;max-height:240px}.officers .officer-list{list-style:none;padding:0;margin:0}.officers .officer-list li{display:grid;grid-template-columns:1fr auto auto;align-items:baseline;gap:1rem;padding:.65rem 0;border-bottom:1px solid var(--rule)}.officers .officer-list li a{font-family:var(--font-display);font-size:1.05rem;font-weight:500;color:var(--fg)}.officers .officer-list li a:hover{color:var(--link-hover)}.officers .byear{font-family:var(--font-display);font-style:italic;font-size:.9rem;color:var(--fg-muted)}.officers .role{font-family:var(--font-body);font-size:.85rem;font-weight:500;color:var(--fg)}.officers .from{font-family:var(--font-mono);font-size:.78rem;color:var(--fg-muted);font-variant-numeric:tabular-nums}.officers details.former{margin-top:1rem;font-family:var(--font-body);font-size:.9rem}.officers details.former summary{cursor:pointer;color:var(--fg-muted);font-size:.85rem;text-transform:uppercase;letter-spacing:.12em;font-weight:600}.officers details.former summary:hover{color:var(--link-hover)}.related ul{list-style:none;padding:0;margin:0;columns:2;column-gap:2.5rem}.related li{padding:.45rem 0;border-bottom:1px solid var(--rule);break-inside:avoid;font-family:var(--font-display);font-size:.98rem;font-weight:500}.related li a{color:var(--fg)}.related li a:hover{color:var(--link-hover)}.related .city,.related .rev{color:var(--fg-muted);font-family:var(--font-body);font-size:.82rem;font-weight:400}.related .rev{font-family:var(--font-mono);font-variant-numeric:tabular-nums}@media(max-width:640px){.related ul{columns:1}}.hub{max-width:var(--max-w);margin:0 auto;padding:2rem 1.5rem 0}.hub h1{font-family:var(--font-display);font-weight:600;font-size:clamp(1.8rem,1.2rem + 2.4vw,3rem);letter-spacing:-.02em;line-height:1.05;margin:0 0 .4rem;padding-bottom:1.5rem;border-bottom:2px solid var(--ink-900)}.hub .sni-meta{font-family:var(--font-body);font-size:.85rem;text-transform:uppercase;letter-spacing:.16em;color:var(--fg-muted);margin:-1rem 0 1.5rem}.hub .sub-hubs{margin:2rem 0}.company-list{list-style:none;padding:0;margin:1rem 0 0;counter-reset:cl 0}.company-list[start]{counter-reset:cl calc(var(--start, 1) - 1)}.company-list li{display:grid;grid-template-columns:2.5rem 1fr auto;align-items:baseline;gap:.75rem;padding:.7rem 0;border-bottom:1px solid var(--rule);counter-increment:cl}.company-list li:before{content:counter(cl,decimal-leading-zero);font-family:var(--font-mono);font-size:.75rem;font-variant-numeric:tabular-nums;color:var(--fg-faint);align-self:baseline}.company-list li .name{font-family:var(--font-display);font-size:1.05rem;font-weight:500;color:var(--fg)}.company-list li .name:hover{color:var(--link-hover)}.company-list li .city,.company-list li .sni,.company-list li .rev,.company-list li .emp{font-family:var(--font-body);font-size:.82rem;color:var(--fg-muted)}.company-list li .rev{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.company-list li>:nth-child(2){grid-column:2 / -1}.pagination{display:flex;gap:1rem;justify-content:space-between;align-items:center;margin:2rem 0 0;padding-top:1rem;border-top:1px solid var(--rule)}.pagination .ofx{font-family:var(--font-display);font-style:italic;font-size:.9rem;color:var(--fg-muted)}.search{max-width:var(--max-w-narrow);margin:0 auto;padding:2rem 1.5rem 0}.search h1{font-family:var(--font-display);font-weight:600;font-size:clamp(1.8rem,1rem + 2.6vw,2.8rem);letter-spacing:-.02em;line-height:1.05;margin:0 0 .5rem}.search .meta{font-family:var(--font-display);font-style:italic;color:var(--fg-muted);font-size:1rem;margin:.5rem 0 1.5rem}.search .hint{font-family:var(--font-display);font-style:italic;color:var(--fg-muted);margin-top:1rem}.search .hits{list-style:none;padding:0;margin:1.5rem 0 0;border-top:1px solid var(--rule-strong)}.search .hits li{padding:1rem 0;border-bottom:1px solid var(--rule)}.search .hits .name{font-family:var(--font-display);font-size:1.25rem;font-weight:500;letter-spacing:-.01em;color:var(--fg)}.search .hits .name:hover{color:var(--link-hover)}.search .hits .orgnr{font-family:var(--font-mono);font-size:.82rem;font-variant-numeric:tabular-nums;color:var(--fg);font-weight:400}.search .hits .city,.search .hits .sni{font-family:var(--font-body);font-size:.85rem;color:var(--fg-muted)}.person{max-width:var(--max-w-narrow);margin:0 auto;padding:2rem 1.5rem 0}.person h1{font-family:var(--font-display);font-weight:600;font-size:clamp(2rem,1.2rem + 2.6vw,3.2rem);letter-spacing:-.02em;line-height:1.05;padding-bottom:1.5rem;border-bottom:2px solid var(--ink-900);margin-bottom:1rem}.person h1 .byear{font-family:var(--font-display);font-style:italic;font-weight:400;color:var(--fg-muted);font-size:.6em;margin-left:.4em}.person .summary{font-family:var(--font-display);font-style:italic;font-size:1.1rem;color:var(--fg-muted);margin:0 0 2rem}.person .role-list{list-style:none;padding:0;margin:0}.person .role-list li{padding:.8rem 0;border-bottom:1px solid var(--rule)}.person .role-list .company{font-family:var(--font-display);font-size:1.1rem;font-weight:500;color:var(--fg)}.person .role-list .company:hover{color:var(--link-hover)}.person .role-list .orgnr{font-family:var(--font-mono);font-size:.82rem;font-variant-numeric:tabular-nums;color:var(--fg-muted)}.person .role-list .role{font-family:var(--font-body);font-size:.95rem;color:var(--fg);font-weight:500;display:inline-block;margin-top:.25rem}.person .role-list .from,.person .role-list .period{font-family:var(--font-mono);font-size:.78rem;font-variant-numeric:tabular-nums;color:var(--fg-muted)}.site-footer{margin-top:5rem;padding:2.5rem 1.5rem 1.5rem;background:var(--bg-soft);border-top:1px solid var(--rule-strong);font-family:var(--font-body)}.site-footer .footer-inner{max-width:var(--max-w);margin:0 auto;display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:2.5rem}.site-footer .brand{font-family:var(--font-display);font-size:1.2rem;font-weight:600;letter-spacing:-.01em;margin:0 0 .4rem}.site-footer .blurb{font-size:.85rem;color:var(--fg-muted);max-width:28ch;margin:0;line-height:1.55}.site-footer nav h2{font-family:var(--font-body);font-size:.7rem;text-transform:uppercase;letter-spacing:.22em;color:var(--fg-muted);font-weight:600;margin:0 0 .85rem}.site-footer ul{list-style:none;padding:0;margin:0}.site-footer li{padding:.25rem 0;font-size:.9rem}.site-footer a{color:var(--fg)}.site-footer a:hover{color:var(--link-hover)}.site-footer .footer-bottom{max-width:var(--max-w);margin:2.5rem auto 0;padding-top:1rem;border-top:1px solid var(--rule);font-size:.78rem;color:var(--fg-faint);display:flex;justify-content:space-between;align-items:center;gap:1rem}.site-footer .footer-bottom .motto{font-family:var(--font-display);font-style:italic;font-size:.85rem}@media(max-width:720px){.site-footer .footer-inner{grid-template-columns:1fr 1fr;gap:1.5rem}.site-footer .footer-bottom{flex-direction:column;align-items:flex-start}}.site-header{border-bottom:1px solid var(--rule-strong);background:var(--bg)}.site-header .top{max-width:var(--max-w);margin:0 auto;padding:.6rem 1.5rem;display:flex;justify-content:space-between;align-items:center;font-family:var(--font-body);font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:var(--fg-muted)}.site-header .top .right{display:flex;gap:1.5rem}.site-header .main{max-width:var(--max-w);margin:0 auto;padding:1.1rem 1.5rem;border-top:1px solid var(--rule);display:flex;justify-content:space-between;align-items:center;gap:1.5rem}.site-header .brand{font-family:var(--font-display);font-weight:600;font-size:1.6rem;letter-spacing:-.01em;color:var(--fg);display:inline-flex;align-items:center;gap:.6rem}.site-header .brand .mark{width:32px;height:32px;border:.5px solid var(--fg);border-radius:50%;display:inline-flex;align-items:center;justify-content:center;position:relative;font-family:var(--font-display);font-style:italic;font-weight:700;font-size:1rem}.site-header .brand .mark:after{content:"";position:absolute;inset:3px;border:.5px solid var(--accent);border-radius:50%}.site-header nav{display:flex;gap:1.5rem;font-family:var(--font-body);font-size:.9rem;font-weight:500}.site-header nav a{color:var(--fg)}.site-header nav a:hover{color:var(--link-hover)}@media(max-width:640px){.site-header .top,.site-header .main{padding-left:1rem;padding-right:1rem}.site-header .top .right .secondary{display:none}.site-header nav{display:none}}@media print{body{background:#fff;color:#000}.site-header,.site-footer{display:none}a{color:#000;text-decoration:none}.accent{color:#000}}
