:root{--bg: oklch(.165 .012 265);--bg-2: oklch(.205 .014 265);--surface: oklch(.235 .015 265);--surface-2: oklch(.275 .016 265);--border: oklch(.33 .016 265);--border-strong: oklch(.44 .02 265);--text: oklch(.95 .008 265);--text-muted: oklch(.74 .013 265);--text-faint: oklch(.7 .013 265);--immigration: oklch(.72 .18 25);--police: oklch(.74 .13 245);--money: oklch(.78 .15 152);--taxes: oklch(.83 .13 90);--laws: oklch(.76 .15 305);--immigration-bg: oklch(.66 .2 25 / .16);--police-bg: oklch(.68 .15 245 / .16);--money-bg: oklch(.72 .16 152 / .16);--taxes-bg: oklch(.8 .13 85 / .16);--laws-bg: oklch(.69 .17 305 / .16);--cov-full: oklch(.74 .13 165);--cov-standard: oklch(.8 .12 85);--cov-basic: var(--text-faint);--accent: oklch(.78 .07 230);--danger: oklch(.66 .2 25);--focus: oklch(.82 .1 230);--font-sans: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono: ui-monospace, "Cascadia Code", "SF Mono", "Segoe UI Mono", Menlo, Consolas, monospace;--t-xs: .75rem;--t-sm: .875rem;--t-base: 1rem;--t-md: 1.18rem;--t-lg: 1.5rem;--t-xl: 1.95rem;--t-2xl: 2.5rem;--t-3xl: clamp(2.4rem, 6vw, 3.6rem);--s-1: .25rem;--s-2: .5rem;--s-3: .75rem;--s-4: 1rem;--s-5: 1.5rem;--s-6: 2rem;--s-7: 3rem;--s-8: 4.5rem;--radius: 10px;--radius-sm: 7px;--radius-pill: 999px;--shadow: 0 1px 2px oklch(0 0 0 / .4), 0 6px 20px oklch(0 0 0 / .28);--rail: 2px;--maxw: 64rem;--ease: cubic-bezier(.22, 1, .36, 1)}@media(prefers-color-scheme:light){:root{--bg: oklch(.97 .006 265);--bg-2: oklch(.945 .008 265);--surface: oklch(.995 .003 265);--surface-2: oklch(.965 .006 265);--border: oklch(.88 .01 265);--border-strong: oklch(.78 .014 265);--text: oklch(.24 .02 265);--text-muted: oklch(.44 .018 265);--text-faint: oklch(.56 .016 265);--immigration: oklch(.55 .21 27);--police: oklch(.52 .17 250);--money: oklch(.52 .15 155);--taxes: oklch(.58 .14 75);--laws: oklch(.52 .19 305);--immigration-bg: oklch(.55 .21 27 / .12);--police-bg: oklch(.52 .17 250 / .12);--money-bg: oklch(.52 .15 155 / .12);--taxes-bg: oklch(.58 .14 75 / .12);--laws-bg: oklch(.52 .19 305 / .12);--cov-full: oklch(.5 .14 165);--cov-standard: oklch(.56 .13 75);--accent: oklch(.5 .12 245);--focus: oklch(.55 .14 245);--shadow: 0 1px 2px oklch(.4 .02 265 / .12), 0 6px 18px oklch(.4 .02 265 / .12)}}*,*:before,*:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:var(--t-base);line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:3px}button{font:inherit;color:inherit;cursor:pointer}input,select{font:inherit;color:inherit}.shell{min-height:100dvh;display:flex;flex-direction:column}.topbar{position:sticky;top:0;z-index:30;display:flex;align-items:center;padding:var(--s-3) var(--s-5);background:color-mix(in oklab,var(--bg) 86%,transparent);backdrop-filter:blur(8px);border-bottom:1px solid var(--border)}.brand{display:inline-flex;align-items:center;gap:var(--s-3);color:var(--text);font-weight:700;letter-spacing:-.02em}.brand:hover{text-decoration:none}.brand__dots{display:inline-flex;gap:3px}.brand__dots i{width:9px;height:9px;border-radius:50%;display:block}.brand__dot--immigration{background:var(--immigration)}.brand__dot--police{background:var(--police)}.brand__dot--money{background:var(--money)}.brand__dot--taxes{background:var(--taxes)}.brand__dot--laws{background:var(--laws)}.brand__name{font-size:var(--t-md)}.content{flex:1;width:100%;min-width:0;max-width:var(--maxw);margin-inline:auto;padding:var(--s-6) var(--s-5) var(--s-8)}.hero__title,.chain__title{overflow-wrap:break-word}.sitefoot{border-top:1px solid var(--border);padding:var(--s-5);color:var(--text-faint);font-size:var(--t-sm);text-align:center;max-width:var(--maxw);margin-inline:auto}.landing{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--s-8)}.hero{padding-top:var(--s-6)}.hero__title{font-size:var(--t-3xl);line-height:1.02;letter-spacing:-.035em;font-weight:800;max-width:16ch}.hero__tag{margin-top:var(--s-4);font-size:var(--t-md);color:var(--text-muted);max-width:52ch}.lookup{margin-top:var(--s-6);display:flex;gap:var(--s-3);max-width:34rem;min-width:0}.lookup__input{flex:1;min-width:0;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);padding:var(--s-4);font-size:var(--t-md);font-family:var(--font-mono);letter-spacing:.02em}.lookup__input::placeholder{color:var(--text-faint)}.lookup__message{margin-top:var(--s-3);color:var(--cov-standard);font-size:var(--t-sm);max-width:40rem}.linklike{margin-top:var(--s-4);background:none;border:none;padding:0;color:var(--accent);text-decoration:underline;font-size:var(--t-sm)}.btn{display:inline-flex;align-items:center;gap:var(--s-2);background:var(--text);color:var(--bg);border:1px solid transparent;border-radius:var(--radius);padding:var(--s-3) var(--s-5);font-weight:650;white-space:nowrap;transition:opacity .18s var(--ease)}.btn:hover{text-decoration:none;opacity:.88}.btn:disabled{opacity:.5;cursor:default}.btn--go{font-size:var(--t-md)}.identity__head{font-size:var(--t-lg);font-weight:700;letter-spacing:-.02em;margin-bottom:var(--s-4)}.legend{list-style:none;padding:0;display:grid;gap:var(--s-3);grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr))}.legend__item{display:grid;grid-template-columns:auto auto 1fr;align-items:center;gap:var(--s-3);padding:var(--s-4);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.legend__swatch{width:14px;height:14px;border-radius:4px}.legend__icon{color:var(--text)}.legend__label{font-weight:650}.legend__blurb{grid-column:1 / -1;color:var(--text-muted);font-size:var(--t-sm)}.legend__item--immigration .legend__swatch{background:var(--immigration)}.legend__item--immigration .legend__icon{color:var(--immigration)}.legend__item--police .legend__swatch{background:var(--police)}.legend__item--police .legend__icon{color:var(--police)}.legend__item--money .legend__swatch{background:var(--money)}.legend__item--money .legend__icon{color:var(--money)}.legend__item--taxes .legend__swatch{background:var(--taxes)}.legend__item--taxes .legend__icon{color:var(--taxes)}.legend__item--laws .legend__swatch{background:var(--laws)}.legend__item--laws .legend__icon{color:var(--laws)}.picker{margin-top:var(--s-5);padding:var(--s-5);background:var(--bg-2);border:1px solid var(--border);border-radius:var(--radius)}.picker__hint{color:var(--text-muted);font-size:var(--t-sm);margin-bottom:var(--s-4)}.picker__row{display:flex;flex-wrap:wrap;gap:var(--s-3);align-items:end}.picker__row label{display:grid;gap:var(--s-2);font-size:var(--t-sm);color:var(--text-muted)}.picker__row select{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-sm);padding:var(--s-3);min-width:11rem}.picker__row select:disabled{opacity:.5}.chain__top{position:sticky;top:49px;z-index:20;background:color-mix(in oklab,var(--bg) 90%,transparent);backdrop-filter:blur(8px);padding:var(--s-4) 0 var(--s-3);margin-bottom:var(--s-5);border-bottom:1px solid var(--border)}.crumbs{display:flex;flex-wrap:wrap;gap:var(--s-2);font-size:var(--t-sm);color:var(--text-faint);font-family:var(--font-mono)}.crumbs [aria-current]{color:var(--text-muted)}.chain__title{font-size:var(--t-2xl);font-weight:800;letter-spacing:-.03em;margin:var(--s-2) 0 var(--s-4)}.chain__controls{display:flex;flex-wrap:wrap;gap:var(--s-3);align-items:center;justify-content:space-between}.chain__hint{margin-top:var(--s-3);font-size:var(--t-sm);color:var(--text-muted)}.chain__foot{margin-top:var(--s-7);padding-top:var(--s-5);border-top:1px solid var(--border);color:var(--text-muted);font-size:var(--t-sm)}.chain__foot a,.tier__note a,.card__note a,.lookup__message a{text-decoration:underline}.chipbar{display:flex;flex-wrap:wrap;gap:var(--s-2)}.chip{display:inline-flex;align-items:center;gap:var(--s-2);border:1px solid var(--border-strong);background:var(--surface);color:var(--text-muted);border-radius:var(--radius-pill);padding:var(--s-2) var(--s-3);font-size:var(--t-sm);font-weight:600;line-height:1;transition:background .16s var(--ease),color .16s var(--ease),border-color .16s var(--ease)}.chip--small{font-size:var(--t-xs);padding:4px var(--s-2)}button.chip:hover{border-color:var(--text-faint)}.chip--all.chip--active{background:var(--text);color:var(--bg);border-color:var(--text)}.chip--immigration{color:var(--immigration)}.chip--immigration.chip--active{background:var(--immigration-bg);border-color:var(--immigration)}.chip--police{color:var(--police)}.chip--police.chip--active{background:var(--police-bg);border-color:var(--police)}.chip--money{color:var(--money)}.chip--money.chip--active{background:var(--money-bg);border-color:var(--money)}.chip--taxes{color:var(--taxes)}.chip--taxes.chip--active{background:var(--taxes-bg);border-color:var(--taxes)}.chip--laws{color:var(--laws)}.chip--laws.chip--active{background:var(--laws-bg);border-color:var(--laws)}.card__chips .chip{background:var(--surface-2);border-color:transparent}.viewtoggle{display:inline-flex;border:1px solid var(--border-strong);border-radius:var(--radius-pill);overflow:hidden}.viewtoggle button{background:var(--surface);border:none;padding:var(--s-2) var(--s-4);font-size:var(--t-sm);font-weight:600;color:var(--text-muted)}.viewtoggle button.is-active{background:var(--surface-2);color:var(--text)}.spine{position:relative}.tier{position:relative;min-width:0;padding-left:2.6rem;padding-bottom:var(--s-6)}.tier__rail{position:absolute;left:10px;top:10px;bottom:-2px;width:var(--rail);background:var(--border-strong)}.tier:last-child .tier__rail{bottom:auto;height:calc(100% - 10px)}.tier:before{content:"";position:absolute;left:3px;top:5px;width:16px;height:16px;border-radius:50%;background:var(--bg);border:2px solid var(--accent);z-index:1}.tier__head{display:flex;align-items:center;gap:var(--s-3);margin-bottom:var(--s-4)}.tier__label{font-size:var(--t-md);font-weight:700;letter-spacing:-.01em}.tier__note{color:var(--text-muted);font-size:var(--t-sm);margin-bottom:var(--s-3);max-width:60ch}.tier__website{font-size:var(--t-sm);margin-bottom:var(--s-3)}.tier__empty{color:var(--text-faint);font-size:var(--t-sm);font-style:italic}.tier__cards{display:grid;gap:var(--s-4);grid-template-columns:repeat(auto-fill,minmax(min(100%,22rem),1fr))}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:var(--s-5);box-shadow:var(--shadow);display:flex;flex-direction:column;gap:var(--s-3);min-width:0}.card__head{display:flex;justify-content:space-between;align-items:start;gap:var(--s-3)}.card__person{font-size:var(--t-md);font-weight:700;letter-spacing:-.01em}.card__person--office{font-size:var(--t-base)}.card__office{color:var(--text-muted);font-size:var(--t-sm);margin-top:2px}.card__party{color:var(--text-faint)}.card__selection{font-size:var(--t-sm);color:var(--text-muted)}.card__chips{display:flex;flex-wrap:wrap;gap:var(--s-2)}.card__note{font-size:var(--t-sm);color:var(--text-muted);background:var(--bg-2);border-radius:var(--radius-sm);padding:var(--s-2) var(--s-3)}.card__contacts{display:flex;flex-wrap:wrap;gap:var(--s-2) var(--s-4)}.contact{display:inline-flex;align-items:center;gap:var(--s-2);font-size:var(--t-sm);font-weight:600}.card__offices{list-style:none;padding:0;display:grid;gap:var(--s-3);border-top:1px solid var(--border);padding-top:var(--s-3)}.office{display:grid;gap:3px}.office__label{display:inline-flex;align-items:center;gap:var(--s-2);font-size:var(--t-sm);font-weight:650}.office__address{font-family:var(--font-mono);font-size:var(--t-xs);color:var(--text-muted);line-height:1.45;overflow-wrap:anywhere}.office__links{display:flex;flex-wrap:wrap;gap:var(--s-2) var(--s-4);font-size:var(--t-sm)}.office__links a{display:inline-flex;align-items:center;gap:4px}.office__toggle{background:none;border:none;padding:0;color:var(--accent);text-decoration:underline;font-size:var(--t-sm)}.card__foot{display:flex;justify-content:space-between;align-items:center;gap:var(--s-3);flex-wrap:wrap;border-top:1px solid var(--border);padding-top:var(--s-3);font-size:var(--t-xs)}.card__verified{font-family:var(--font-mono);color:var(--text-faint)}.card__correction{color:var(--text-faint)}.fact{display:inline-flex;align-items:center;font-size:var(--t-xs);font-weight:650;padding:4px var(--s-2);border-radius:var(--radius-pill)}.fact--287g{background:var(--immigration-bg);color:var(--immigration);border:1px solid var(--immigration)}.coverage{font-size:var(--t-xs);font-weight:700;letter-spacing:.02em;text-transform:uppercase;padding:3px var(--s-2);border-radius:var(--radius-sm);white-space:nowrap;border:1px solid currentColor}.coverage--full{color:var(--cov-full)}.coverage--standard{color:var(--cov-standard)}.coverage--basic{color:var(--cov-basic)}.orgchart__hint{color:var(--text-muted);font-size:var(--t-sm);margin-bottom:var(--s-4)}.org{border-left:1px solid var(--border);margin-left:var(--s-3);padding-left:var(--s-4)}.org__summary{font-weight:700;padding:var(--s-2) 0;display:flex;align-items:center;gap:var(--s-3)}.org__count{font-family:var(--font-mono);font-size:var(--t-xs);color:var(--text-faint);border:1px solid var(--border);border-radius:var(--radius-pill);padding:1px var(--s-2)}.org__body{padding:var(--s-2) 0 var(--s-3);display:grid;gap:var(--s-3)}.org__record{background:var(--bg-2);border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--s-2) var(--s-3)}.org__record-summary{display:flex;flex-wrap:wrap;gap:var(--s-2) var(--s-3);align-items:baseline}.org__record-office{font-weight:600;font-size:var(--t-sm)}.org__record-person{color:var(--text-muted);font-size:var(--t-sm)}.org__record[open] .org__record-summary{margin-bottom:var(--s-3)}.state{display:grid;gap:var(--s-4);justify-items:start;padding-top:var(--s-6)}.state--loading{color:var(--text-faint)}@keyframes rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.tier{animation:rise .4s var(--ease) both}.tier:nth-child(2){animation-delay:.05s}.tier:nth-child(3){animation-delay:.1s}.tier:nth-child(4){animation-delay:.15s}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}@media(max-width:38rem){.content{padding:var(--s-5) var(--s-4) var(--s-7)}.lookup{flex-direction:column}.chain__controls{align-items:stretch}.card__head{flex-direction:column}.card__head .coverage{align-self:start}}
