/* California production scope
   Shared chrome and fallback directory templates. The approved parole model is
   deliberately excluded in layout.php and remains byte-for-byte independent. */
@font-face{font-family:'CA Tanker';font-style:normal;font-weight:400;font-display:swap;src:url('/assets/tanker-400.woff2') format('woff2')}
@font-face{font-family:'CA Plein';font-style:normal;font-weight:500;font-display:swap;src:url('/assets/plein-500.woff2') format('woff2')}
@font-face{font-family:'CA Plein';font-style:normal;font-weight:700;font-display:swap;src:url('/assets/plein-700.woff2') format('woff2')}
@font-face{font-family:'CA Atkinson';font-style:normal;font-weight:400 700;font-display:swap;src:url('/assets/fonts/atkinson-0.woff2') format('woff2')}

.state-scope-california{
  --ca-navy:#061a38;--ca-navy-2:#0b2d5b;--ca-blue:#0878db;--ca-cyan:#56c2ff;
  --ca-orange:#c64a10;--ca-gold:#f3aa3d;--ca-ink:#09182f;--ca-copy:#40536b;
  --ca-muted:#68798b;--ca-line:#cad7e4;--ca-ice:#edf5fb;--ca-paper:#f7f4ed;--ca-white:#fff;
  --header-active:var(--ca-gold);font-family:'CA Atkinson',Arial,sans-serif;overflow-x:hidden
}
.state-scope-california::before{display:none}
.state-scope-california .site-header{position:relative;z-index:50;min-height:76px;margin:0;border:0;background:var(--ca-navy);color:#fff}
.state-scope-california .site-header__inner{width:min(1260px,calc(100% - 48px));max-width:none;min-height:76px;margin:auto;grid-template-columns:170px 1fr auto}
.state-scope-california .site-brand,.state-scope-california .site-brand strong{color:#fff;font-family:'CA Plein',Arial,sans-serif}
.state-scope-california .site-brand strong{color:var(--ca-gold);font-size:.72rem}
.state-scope-california .site-nav a{color:#fff;border-radius:0;font-family:'CA Atkinson',Arial,sans-serif}
.state-scope-california .site-nav a:hover,.state-scope-california .site-nav a:focus-visible{color:var(--ca-gold);text-decoration:none}.state-scope-california .site-nav a[aria-current="page"]{background:transparent;color:var(--ca-gold);box-shadow:none;text-decoration:none}
.state-scope-california .site-menu summary{border-color:rgba(255,255,255,.65)}.state-scope-california .site-menu summary span{background:#fff}
.state-scope-california .site-menu nav{background:var(--ca-navy);border-color:#36516d}.state-scope-california .site-menu nav a{color:#fff}.state-scope-california .site-menu nav a[aria-current="page"]{border-left-color:transparent;background:transparent;color:var(--ca-gold)}
.state-scope-california .site-footer{margin:0;border:0;background:var(--ca-navy);color:#d7e6f6}.state-scope-california .site-footer__inner{width:min(1260px,calc(100% - 48px));max-width:none}.state-scope-california .site-footer a,.state-scope-california .site-footer p,.state-scope-california .site-footer small{color:#d7e6f6}
.state-scope-california :focus-visible{outline:3px solid var(--ca-gold);outline-offset:3px}

/* Template-generated California facility and city pages. */
.state-scope-california.page-facility,.state-scope-california.page-city_hub,.state-scope-california.page-county_hub:not(.county-san-diego){margin:0;background:#fff;color:var(--ca-ink)}
.state-scope-california.page-facility .wrap,.state-scope-california.page-city_hub .wrap,.state-scope-california.page-county_hub:not(.county-san-diego) .wrap{width:100%;max-width:none;margin:0;padding:0;border-radius:0;background:#fff;overflow:hidden}
.state-scope-california .ca-record-hero{position:relative;isolation:isolate;margin:0;background:var(--ca-navy);color:#fff;border-left:9px solid var(--ca-orange);overflow:hidden}
.state-scope-california .ca-record-hero__image{position:absolute!important;z-index:-3!important;inset:0;display:block;max-width:none!important;width:100%!important;height:100%!important;object-fit:cover;object-position:center}
.state-scope-california .ca-record-hero__shade{position:absolute!important;z-index:-2!important;inset:0;display:block;max-width:none!important;background:linear-gradient(90deg,rgba(6,26,56,.98) 0%,rgba(6,26,56,.9) 39%,rgba(6,26,56,.48) 68%,rgba(6,26,56,.2) 100%),linear-gradient(0deg,rgba(6,26,56,.62),transparent 55%)}
.state-scope-california .ca-record-hero::after{content:"CALIFORNIA / VERIFIED DIRECTORY";position:absolute;z-index:-1;right:-.03em;bottom:-.15em;color:rgba(255,255,255,.035);font:400 clamp(6rem,14vw,13rem)/.75 'CA Tanker','Arial Narrow',sans-serif;white-space:nowrap}
.state-scope-california .ca-record-hero__inner{width:min(1260px,calc(100% - 48px));margin:auto;padding:44px 0 76px}
.state-scope-california .ca-record-hero .crumbs{margin:0 0 56px;padding:0;border:0;background:transparent;color:#abc2da;font-size:.75rem}.state-scope-california .ca-record-hero .crumbs a{color:#d9e8f7}.state-scope-california .ca-record-hero .crumbs span{color:#fff}
.state-scope-california .ca-record-hero .record-label{margin:0 0 18px;color:var(--ca-cyan);font:700 .7rem 'CA Atkinson',Arial,sans-serif;letter-spacing:.16em;text-transform:uppercase}
.state-scope-california .ca-record-hero h1{max-width:980px;margin:0;color:#fff;font:400 clamp(4rem,7vw,7rem)/.82 'CA Tanker','Arial Narrow',sans-serif;letter-spacing:.01em;text-transform:uppercase;text-wrap:balance}
.state-scope-california .ca-record-hero .summary{max-width:760px;margin:28px 0 0;color:#e0ebf6;font-size:1.08rem;line-height:1.63}
.state-scope-california .ca-record-hero .prov{max-width:840px;margin:18px 0 0;color:#b8ccdf;font-size:.86rem;line-height:1.55}.state-scope-california .ca-record-hero .prov a{color:#8bd3ff;font-weight:700}.state-scope-california .ca-record-hero .source-line{padding:18px 0 0;border:0;border-top:1px solid rgba(255,255,255,.2);border-radius:0;background:transparent;box-shadow:none}
.state-scope-california .ca-record-hero .north{max-width:900px;margin:30px 0 0;padding:20px 22px;border:0;border-left:7px solid var(--ca-orange);border-radius:0;background:rgba(255,255,255,.08);color:#fff}.state-scope-california .ca-record-hero .north>b{font-family:'CA Plein',Arial,sans-serif}.state-scope-california .ca-record-hero .north .prov{margin-top:8px}.state-scope-california .ca-record-hero .north.closed{border-left-color:var(--ca-gold)}
.state-scope-california .ca-record-body{width:min(1260px,calc(100% - 48px));margin:auto;padding:78px 0 92px}.state-scope-california .ca-record-body h2{margin:68px 0 19px;padding-top:22px;border-top:6px solid var(--ca-navy);color:var(--ca-ink);font:700 clamp(1.55rem,2.5vw,2.35rem)/1.05 'CA Plein',Arial,sans-serif;letter-spacing:-.035em}.state-scope-california .ca-record-body>h2:first-child{margin-top:0}.state-scope-california .ca-record-body h3{font-family:'CA Plein',Arial,sans-serif}.state-scope-california .ca-record-body p{max-width:76ch;color:var(--ca-copy);line-height:1.65}.state-scope-california .ca-record-body a{color:#075fae;text-underline-offset:3px}.state-scope-california .ca-record-body table{width:100%;margin:0;border-collapse:collapse;border-top:1px solid #9fb1c2;background:#fff}.state-scope-california .ca-record-body :is(td,th){padding:17px 15px;border:0;border-bottom:1px solid var(--ca-line);text-align:left;vertical-align:top}.state-scope-california .ca-record-body th{background:var(--ca-ice);font-family:'CA Plein',Arial,sans-serif}.state-scope-california .ca-record-body td:first-child{width:26%;color:var(--ca-muted);font-size:.82rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.state-scope-california .ca-record-body .pending-block,.state-scope-california .ca-record-body .facility-next{margin:25px 0;padding:26px 28px;border:0;border-left:8px solid var(--ca-orange);border-radius:0;background:var(--ca-ice)}.state-scope-california .ca-record-body .facility-next h2{margin:0;padding:0;border:0}.state-scope-california .ca-record-body .facility-next nav{display:flex;flex-wrap:wrap;gap:10px 25px;margin-top:18px}.state-scope-california .ca-record-body ul{margin:0;padding:0;list-style:none;border-top:1px solid #a9b9c8}.state-scope-california .ca-record-body li{padding:17px 14px;border-bottom:1px solid var(--ca-line)}.state-scope-california .ca-record-body>footer{margin:78px 0 0;padding:24px 0 0;border-top:1px solid var(--ca-line);color:var(--ca-muted);font-size:.82rem;line-height:1.55}

/* Reusable California county fallback. San Diego has its own approved model. */
.state-scope-california.page-county_hub:not(.county-san-diego) .answer{position:relative;isolation:isolate;margin:0;padding:86px max(24px,calc((100vw - 1260px)/2)) 94px;border:0;border-left:9px solid var(--ca-orange);border-radius:0;background:var(--ca-navy);color:#fff;overflow:hidden}.state-scope-california.page-county_hub:not(.county-san-diego) .answer::after{content:"COUNTY / CUSTODY / CALIFORNIA";position:absolute;z-index:-1;right:-.03em;bottom:-.15em;color:rgba(255,255,255,.045);font:400 clamp(6rem,14vw,13rem)/.75 'CA Tanker','Arial Narrow',sans-serif;white-space:nowrap}.state-scope-california.page-county_hub:not(.county-san-diego) .answer>*{position:relative;z-index:1;max-width:900px}.state-scope-california.page-county_hub:not(.county-san-diego) .answer .ca-record-hero__image,.state-scope-california.page-county_hub:not(.county-san-diego) .answer .ca-record-hero__shade{position:absolute;max-width:none}.state-scope-california.page-county_hub:not(.county-san-diego) .answer .eyebrow{margin-bottom:18px;color:var(--ca-cyan);font-size:.7rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.state-scope-california.page-county_hub:not(.county-san-diego) .answer h1{max-width:860px;margin:0;color:#fff;font:700 clamp(3.4rem,5.7vw,6rem)/.91 'CA Plein',Arial,sans-serif;letter-spacing:-.055em;text-transform:none;text-wrap:balance}.state-scope-california.page-county_hub:not(.county-san-diego) .answer h1 .county-name--orange{color:#ff8128}.state-scope-california.page-county_hub:not(.county-san-diego) .answer .lede{max-width:760px;margin:28px 0 0;color:#d9e8f6;font-size:1.08rem;line-height:1.65}
.state-scope-california.page-county_hub:not(.county-san-diego) .wrap> :not(.answer){width:min(1260px,calc(100% - 48px));margin-left:auto;margin-right:auto}.state-scope-california.page-county_hub:not(.county-san-diego) .county-official{margin-top:36px;padding:20px 22px;border-left:8px solid var(--ca-orange);background:var(--ca-ice)}.state-scope-california.page-county_hub:not(.county-san-diego) .county-official a{color:var(--ca-blue);font-weight:700}.state-scope-california.page-county_hub:not(.county-san-diego) .wrap>h2{margin-top:76px;padding-top:22px;border-top:6px solid var(--ca-navy);font:700 clamp(1.7rem,3vw,2.8rem)/1.05 'CA Plein',Arial,sans-serif}.state-scope-california.page-county_hub:not(.county-san-diego) .itinerary{padding:0;list-style:none;border-top:1px solid #9fb1c2;counter-reset:route}.state-scope-california.page-county_hub:not(.county-san-diego) .itinerary li{counter-increment:route;display:block;padding:23px 20px 23px 76px;border-bottom:1px solid var(--ca-line);position:relative}.state-scope-california.page-county_hub:not(.county-san-diego) .itinerary li::before{content:counter(route,decimal-leading-zero);position:absolute;left:15px;top:22px;color:var(--ca-blue);font:400 2rem 'CA Tanker','Arial Narrow',sans-serif}.state-scope-california.page-county_hub:not(.county-san-diego) .itinerary h3{margin:0;font-family:'CA Plein',Arial,sans-serif}.state-scope-california.page-county_hub:not(.county-san-diego) .target{color:var(--ca-blue);font-weight:700}.state-scope-california.page-county_hub:not(.county-san-diego) .holding{padding:0;list-style:none;border-top:5px solid var(--ca-blue)}.state-scope-california.page-county_hub:not(.county-san-diego) .holding li{display:grid;grid-template-columns:minmax(220px,1fr) minmax(210px,.7fr) auto;gap:25px;padding:22px 12px;border-bottom:1px solid var(--ca-line)}.state-scope-california.page-county_hub:not(.county-san-diego) .holding .name{font-family:'CA Plein',Arial,sans-serif;font-weight:700}.state-scope-california.page-county_hub:not(.county-san-diego) :is(.gap,.alert,.statewide,.county-parole){margin-top:35px;padding:26px 28px;border:0;border-left:8px solid var(--ca-orange);border-radius:0;background:var(--ca-ice)}.state-scope-california.page-county_hub:not(.county-san-diego) .statewide h2,.state-scope-california.page-county_hub:not(.county-san-diego) .county-parole h2{margin-top:0;font-family:'CA Plein',Arial,sans-serif}.state-scope-california.page-county_hub:not(.county-san-diego) .links{display:flex;flex-wrap:wrap;gap:10px 24px}.state-scope-california.page-county_hub:not(.county-san-diego) .wrap>footer{margin-top:80px;margin-bottom:70px;padding-top:24px;border-top:1px solid var(--ca-line);color:var(--ca-muted);font-size:.83rem}

@media(max-width:820px){.state-scope-california .site-header__inner{width:calc(100% - 36px)}.state-scope-california .ca-record-hero__inner,.state-scope-california .ca-record-body{width:calc(100% - 36px)}.state-scope-california .ca-record-hero h1{font-size:clamp(3.2rem,13vw,5rem)}.state-scope-california.page-county_hub:not(.county-san-diego) .answer h1{font-size:clamp(2.65rem,11.5vw,4.4rem)}.state-scope-california.page-county_hub:not(.county-san-diego) .holding li{grid-template-columns:1fr}.state-scope-california .ca-record-body table{display:block;overflow-x:auto}}
@media(max-width:560px){.state-scope-california .site-header__inner,.state-scope-california .site-footer__inner{width:calc(100% - 28px)}.state-scope-california .ca-record-hero__inner{padding:34px 0 58px}.state-scope-california .ca-record-hero .crumbs{margin-bottom:42px;overflow-x:auto;white-space:nowrap}.state-scope-california .ca-record-body{width:calc(100% - 36px);padding:58px 0 72px}.state-scope-california .ca-record-body :is(td,th){padding:14px 10px}.state-scope-california .ca-record-body td:first-child{width:34%}.state-scope-california.page-county_hub:not(.county-san-diego) .answer{padding:66px 18px 72px}.state-scope-california.page-county_hub:not(.county-san-diego) .wrap> :not(.answer){width:calc(100% - 36px)}}

@media(prefers-reduced-motion:reduce){.state-scope-california *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* ==FPD-BLOCK-START== */
/* ── facility hero photograph ───────────────────────────────────────────────
   A giant translucent word set over an aerial photograph reads as a printing
   fault rather than as a design, so the watermark stands down when there is a
   photo behind it. The image itself is styled by .ca-record-hero__image, which
   already existed. */
/* Two classes deep so it outranks the per-composition watermarks in
   california-facility-types.css ("CDCR / STATE / INSTITUTION" and friends),
   which are .state-scope-california.facility-composition-* .ca-record-hero::after.
   Equal specificity, and this sheet loads last. */
.state-scope-california .ca-record-hero.ca-record-hero--photo::after{content:none}

/* site.css forces `background:var(--j411-navy)!important` on every breadcrumb
   trail. On a flat navy hero that is invisible; over a photograph it becomes a
   solid bar 1260px wide and 15px tall floating across the image — navy on navy
   hid the bug until the day there was something behind it.

   The county hubs deliberately run a FULL-BLEED navy band above their hero photo,
   which reads as a band. This is the content-width remnant of that idea, which
   reads as a mistake. Only the record hero with a photo is changed; !important is
   required to beat !important. */
.state-scope-california .ca-record-hero--photo .crumbs{
  background:transparent!important;
  text-shadow:0 1px 3px rgba(6,26,56,.95)}

/* PRE-EXISTING, and not limited to pages with a photo: site.css sets
   `.source-line b{color:var(--ink)}` — #0f172a — and the California record hero
   is dark navy, so "Where this record came from." has been rendering at roughly
   1.3:1 against its background on every California facility page. Invisible text
   is broken text. */
.state-scope-california .ca-record-hero .source-line b{color:#fff}

/* ── state-prison depth (.fpd) ──────────────────────────────────────────────
   Appended to california-shared.css, which is the last sheet a California
   facility page loads. Everything is scoped to .ca-record-body so it cannot
   reach the county hubs, and it leans on the tokens already defined above
   rather than introducing a second palette.

   The base rules in this file already style h2/h3/p/table/ul/li inside
   .ca-record-body. What follows only handles the shapes those rules do not
   know about: place cards, caveat callouts, and the figures table.          */

/* ── Contact block ──────────────────────────────────────────────────────────
   Contact and Facility details are the same shape on purpose: one grid, one
   left column, one rhythm. The first attempt gave the phone a dark navy slab
   and the address a bordered card, which put three visual languages in one
   block and set a heavy panel directly under an already-dark hero. The phone
   takes its weight from type instead. */
.state-scope-california .ca-record-body .fx-tel{
  display:inline-block;
  color:var(--ca-ink);font:400 clamp(1.6rem,2.8vw,2.15rem)/1 'CA Tanker','Arial Narrow',sans-serif;
  letter-spacing:.01em;text-decoration:none;
  border-bottom:3px solid var(--ca-blue)}
.state-scope-california .ca-record-body .fx-tel:hover,
.state-scope-california .ca-record-body .fx-tel:focus{
  color:var(--ca-blue)}
.state-scope-california .ca-record-body .fx-kv address{
  font-style:normal;color:var(--ca-ink);line-height:1.5}
.state-scope-california .ca-record-body .fx-inline-action{
  display:inline-block;margin-top:7px;font-size:.9rem;font-weight:700}
/* The phone is the one row that gets extra air, because it is the one row
   someone acts on while still standing in a car park. */
.state-scope-california .ca-record-body .fx-kv--contact>div:first-child{
  padding-top:19px;padding-bottom:19px}

/* ── Key/value pairs, replacing the two stacked tables ────────────────────── */
.state-scope-california .ca-record-body .fx-kv{
  max-width:none;margin:0 0 10px;padding:0;border-top:1px solid #9fb1c2}
.state-scope-california .ca-record-body .fx-kv>div{
  display:grid;grid-template-columns:minmax(150px,20%) 1fr;gap:0 24px;
  padding:15px 15px;border-bottom:1px solid var(--ca-line)}
.state-scope-california .ca-record-body .fx-kv dt{
  margin:0;color:var(--ca-muted);font-size:.78rem;font-weight:700;
  text-transform:uppercase;letter-spacing:.06em;line-height:1.5}
.state-scope-california .ca-record-body .fx-kv dd{
  margin:0;color:var(--ca-ink);line-height:1.55}
.state-scope-california .ca-record-body .fx-kv dd .prov{margin:5px 0 0;font-size:.82rem}

/* ── Capacity band ─────────────────────────────────────────────────────────
   The overcrowding figure is the most striking fact about most institutions, so
   it leads rather than sitting in a table row. Dark, because it is a reading of
   the place rather than a field, and it needs to be separable at a glance from
   the reference rows beneath it. */
.state-scope-california .ca-record-body .fx-cap{
  margin:0 0 2px;padding:30px 34px 26px;
  border-left:8px solid var(--ca-gold);background:var(--ca-navy);color:#fff}
.state-scope-california .ca-record-body .fx-cap__eyebrow{
  margin:0;color:rgba(255,255,255,.5);
  font:700 .68rem 'CA Atkinson',Arial,sans-serif;
  text-transform:uppercase;letter-spacing:.16em}
.state-scope-california .ca-record-body .fx-cap__head{
  display:flex;flex-wrap:wrap;align-items:flex-end;gap:8px 18px;margin-top:14px}
.state-scope-california .ca-record-body .fx-cap__big{
  color:#fff;font:400 clamp(3rem,6vw,3.9rem)/.9 'CA Tanker','Arial Narrow',sans-serif;
  letter-spacing:.01em}
.state-scope-california .ca-record-body .fx-cap__say{
  max-width:44ch;padding-bottom:5px;
  color:rgba(255,255,255,.78);font-size:.92rem;line-height:1.45}

/* Track spans the larger of capacity and population; the gold tick marks the
   design figure, so the segment past it IS the overcrowding. */
.state-scope-california .ca-record-body .fx-cap__track{
  position:relative;height:16px;margin-top:20px;background:rgba(255,255,255,.12)}
.state-scope-california .ca-record-body .fx-cap__within{
  position:absolute;inset:0 auto 0 0;background:#41628f}
.state-scope-california .ca-record-body .fx-cap__over{
  position:absolute;top:0;bottom:0;background:var(--ca-gold)}
.state-scope-california .ca-record-body .fx-cap__tick{
  position:absolute;top:-6px;width:2px;height:28px;background:#fff}
.state-scope-california .ca-record-body .fx-cap__ends{
  display:flex;justify-content:space-between;gap:16px;margin-top:12px;
  color:rgba(255,255,255,.6);font-size:.76rem}
.state-scope-california .ca-record-body .fx-cap__prov{
  max-width:none;margin:10px 0 0;color:rgba(255,255,255,.45);font-size:.74rem}

/* ── Fact strip ───────────────────────────────────────────────────────────── */
.state-scope-california .ca-record-body .fx-strip{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));
  border:1px solid var(--ca-line);border-top:0}
.state-scope-california .ca-record-body .fx-strip>div{
  padding:16px 20px;border-right:1px solid var(--ca-line)}
.state-scope-california .ca-record-body .fx-strip>div:last-child{border-right:0}
.state-scope-california .ca-record-body .fx-strip--wide>div{border-right:0}
.state-scope-california .ca-record-body .fx-strip__k{
  display:block;color:var(--ca-muted);font-size:.74rem;font-weight:700;
  text-transform:uppercase;letter-spacing:.06em}
.state-scope-california .ca-record-body .fx-strip__v{
  display:flex;align-items:center;gap:7px;margin-top:5px;
  color:var(--ca-ink);font-family:'CA Plein',Arial,sans-serif;font-size:1rem}
.state-scope-california .ca-record-body .fx-dot{
  width:8px;height:8px;border-radius:50%;background:var(--ca-gold)}
.state-scope-california .ca-record-body .fx-dot--closed{background:var(--ca-muted)}
.state-scope-california .ca-record-body .fx-details__prov{margin-top:14px}

/* ── The custody-level split ──────────────────────────────────────────────
   "Security level: Maximum" is the authorised ceiling. This is who is actually
   held here, which is the question being asked. One stacked bar rather than a
   row of bars: the point is the proportion between levels, and a single bar
   states that where five separate bars make you compare lengths yourself. */
.state-scope-california .ca-record-body .fx-mixblock{margin:30px 0 0}
.state-scope-california .ca-record-body .fx-mixblock h3{
  margin:0;color:var(--ca-ink);
  font:700 1.06rem/1.3 'CA Plein',Arial,sans-serif}
.state-scope-california .ca-record-body .fx-mixblock__lead{
  max-width:62ch;margin:7px 0 0;color:var(--ca-copy);font-size:.95rem;line-height:1.6}
.state-scope-california .ca-record-body .fx-stack{
  display:flex;height:34px;margin:18px 0 0;border:1px solid var(--ca-line);overflow:hidden}
.state-scope-california .ca-record-body .fx-stack span{display:block;height:100%}
.state-scope-california .ca-record-body ul.fx-legend{
  display:flex;flex-wrap:wrap;gap:9px 24px;
  max-width:none;margin:15px 0 0;padding:0;border:0;list-style:none}
.state-scope-california .ca-record-body ul.fx-legend li{
  display:flex;align-items:center;gap:7px;padding:0;border:0;font-size:.86rem}
.state-scope-california .ca-record-body ul.fx-legend i{
  width:11px;height:11px;border:1px solid rgba(6,26,56,.18)}
.state-scope-california .ca-record-body .fx-legend__k{color:var(--ca-copy)}
.state-scope-california .ca-record-body ul.fx-legend b{
  color:var(--ca-ink);font-variant-numeric:tabular-nums}
.state-scope-california .ca-record-body .fx-legend__pct{
  color:var(--ca-muted);font-size:.82rem;font-variant-numeric:tabular-nums}

@media (max-width:640px){
  .state-scope-california .ca-record-body .fx-kv>div{grid-template-columns:1fr;gap:4px}
  .state-scope-california .ca-record-body .fx-cap{padding:24px 20px 20px}
  .state-scope-california .ca-record-body .fx-cap__say{padding-bottom:0}
  /* Stacked into one column the cells need a rule BETWEEN them, not down their
     right edge, where it doubles up with the container border. */
  .state-scope-california .ca-record-body .fx-strip>div{
    border-right:0;border-bottom:1px solid var(--ca-line)}
  .state-scope-california .ca-record-body .fx-strip>div:last-child{border-bottom:0}
}

/* Contents. The page runs to roughly 18,000px — about thirty screens — and every
   section had an id that nothing pointed at. Sticky on a desktop where there is
   room beside the text; a plain block on a phone, where a sticky bar would eat
   the reading area it exists to serve. */
.state-scope-california .ca-record-body .fpd-toc{
  margin:0 0 8px;padding:22px 26px;
  border-left:8px solid var(--ca-blue);background:var(--ca-ice)}
.state-scope-california .ca-record-body .fpd-toc h2{
  margin:0 0 12px;padding:0;border:0;
  color:var(--ca-muted);font:700 .78rem/1.3 'CA Plein',Arial,sans-serif;
  text-transform:uppercase;letter-spacing:.1em}
.state-scope-california .ca-record-body .fpd-toc ol{
  display:flex;flex-wrap:wrap;gap:8px 26px;
  max-width:none;margin:0;padding:0;border:0;list-style:none;counter-reset:toc}
.state-scope-california .ca-record-body .fpd-toc li{
  counter-increment:toc;padding:0;border:0}
.state-scope-california .ca-record-body .fpd-toc li::before{
  content:counter(toc,decimal-leading-zero);
  margin-right:.45em;
  color:var(--ca-blue);font:400 .8rem 'CA Tanker','Arial Narrow',sans-serif}
.state-scope-california .ca-record-body .fpd-toc a{
  color:var(--ca-ink);font-weight:700;text-decoration:none;
  border-bottom:2px solid transparent}
.state-scope-california .ca-record-body .fpd-toc a:hover,
.state-scope-california .ca-record-body .fpd-toc a:focus{
  border-bottom-color:var(--ca-blue)}

/* Anchored sections need somewhere to land: without this the sticky site header
   covers the heading you just jumped to. */
.state-scope-california .ca-record-body .fpd{margin:0;scroll-margin-top:86px}
.state-scope-california .ca-record-body .fpd h3{
  margin:38px 0 10px;color:var(--ca-ink);
  font:700 clamp(1.06rem,1.5vw,1.28rem)/1.25 'CA Plein',Arial,sans-serif;
  letter-spacing:-.012em}
.state-scope-california .ca-record-body .fpd h3+p{margin-top:0}
.state-scope-california .ca-record-body .fpd p{margin:0 0 11px}
.state-scope-california .ca-record-body .fpd p>b{color:var(--ca-ink)}

/* A caveat is not decoration: it is the sentence that stops someone driving
   ninety minutes for a visit that is not happening. Given weight, not a
   footnote. A warning is the same thing with money attached. */
.state-scope-california .ca-record-body .fpd-caveat,
.state-scope-california .ca-record-body .fpd-warn{
  margin:14px 0;padding:13px 17px;border-left:5px solid var(--ca-blue);
  background:var(--ca-ice);color:var(--ca-ink);line-height:1.6}
.state-scope-california .ca-record-body .fpd-warn{
  border-left-color:var(--ca-orange);background:#fdf1ea}

/* Sub-label above a place list, e.g. "Fast food in Jackson". */
.state-scope-california .ca-record-body .fpd-sub{
  margin:26px 0 8px;color:var(--ca-muted);
  font:700 .78rem/1.3 'CA Plein',Arial,sans-serif;
  text-transform:uppercase;letter-spacing:.08em}

/* Place cards. Wide enough for an address on one line at desktop, stacked on
   a phone. The border-top/li rules from .ca-record-body ul are overridden --
   a bordered strip reads as a table, and these are destinations. */
/* max-width:none is load-bearing: a rule further up the cascade caps lists at
   the 76ch reading measure, which is right for prose and wrong for a card grid
   -- it was forcing two columns into 746px of a 1260px band. */
.state-scope-california .ca-record-body .fpd-places{
  display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(288px,1fr));
  max-width:none;margin:0 0 22px;padding:0;border:0;list-style:none}
.state-scope-california .ca-record-body .fpd-places li{
  display:flex;flex-direction:column;gap:3px;
  padding:15px 17px;border:1px solid var(--ca-line);border-radius:3px;
  background:var(--ca-white)}
.state-scope-california .ca-record-body .fpd-places b{
  color:var(--ca-ink);font-family:'CA Plein',Arial,sans-serif;font-size:1.02rem}
.state-scope-california .ca-record-body .fpd-places__addr{
  color:var(--ca-copy);font-size:.9rem;line-height:1.45}
.state-scope-california .ca-record-body .fpd-places__line{
  color:var(--ca-muted);font-size:.9rem}
.state-scope-california .ca-record-body .fpd-places__line a{font-weight:700}
.state-scope-california .ca-record-body .fpd-places__more{
  margin-top:5px;color:var(--ca-copy);font-size:.86rem;line-height:1.5}
.state-scope-california .ca-record-body .fpd-places__note{
  margin-top:5px;padding-left:11px;border-left:3px solid var(--ca-gold);
  color:var(--ca-ink);font-size:.86rem;line-height:1.5}

/* Plain bullets, used only when a record has the flat visitation list rather
   than the labelled access_logistics schedule. */
.state-scope-california .ca-record-body .fpd-bullets{
  margin:0 0 16px;padding:0;border-top:1px solid var(--ca-line);list-style:none}
.state-scope-california .ca-record-body .fpd-bullets li{
  padding:11px 2px;border-bottom:1px solid var(--ca-line);line-height:1.55}

/* Small key/value tables: switchboard numbers, postal address. */
.state-scope-california .ca-record-body :is(.fpd-contact,.fpd-mail){
  width:auto;min-width:min(100%,470px);margin:0 0 18px}
.state-scope-california .ca-record-body :is(.fpd-contact,.fpd-mail) td{padding:12px 14px}

/* The figures table. The first column is a measure name and must read as
   prose, so the uppercase treatment .ca-record-body gives td:first-child is
   undone here. Figures are tabular and right-aligned so the eye can compare
   them down the column; the period sits beside every one of them because the
   rows come from two documents with two different dates. */
/* Capped rather than full-width: at 1260px a two-column table strands the figure
   a screen-width away from the measure it belongs to, and the eye has to travel
   the whole line to pair them. */
.state-scope-california .ca-record-body .fpd-stats{
  width:auto;min-width:min(100%,520px);max-width:min(100%,760px);margin:0 0 20px}
.state-scope-california .ca-record-body .fpd-stats td:first-child{
  width:auto;color:var(--ca-ink);font-size:.96rem;font-weight:400;
  text-transform:none;letter-spacing:normal}
.state-scope-california .ca-record-body .fpd-stats th{
  color:var(--ca-muted);font-size:.75rem;font-weight:700;
  text-transform:uppercase;letter-spacing:.07em}
.state-scope-california .ca-record-body .fpd-stats :is(td,th).fpd-num{
  width:22%;text-align:right;font-variant-numeric:tabular-nums;
  font-weight:700;color:var(--ca-ink);white-space:nowrap}
.state-scope-california .ca-record-body .fpd-stats th.fpd-num{font-weight:700}
.state-scope-california .ca-record-body .fpd-stats :is(td,th).fpd-period{
  width:26%;color:var(--ca-muted);font-size:.84rem;white-space:nowrap}
/* The reporting period, hoisted into the group heading when every measure in
   the group shares it. Set apart from the heading so it reads as a date stamp
   rather than part of the title. */
.state-scope-california .ca-record-body .fpd h3 .fpd-asof{
  color:var(--ca-muted);font-family:Arial,sans-serif;font-size:.8rem;
  font-weight:400;letter-spacing:.02em;white-space:nowrap}

/* Column widths for the nearby-facilities table, moved out of inline `style`
   attributes in tail.php so they are overridable and not repeated per row. */
.state-scope-california .ca-record-body .facility-nearby th:nth-child(2){width:22%}
.state-scope-california .ca-record-body .facility-nearby th:nth-child(3){width:24%}
.state-scope-california .ca-record-body .facility-nearby th:nth-child(4){width:18%}

/* Link out to the official page a band was written from. */
.state-scope-california .ca-record-body .fpd-src{
  margin:0 0 15px;font-size:.88rem}
.state-scope-california .ca-record-body .fpd-src a{font-weight:700}

/* .prov is defined for a dark band further up this file; on the white record
   body it needs an ink colour or it disappears. */
.state-scope-california .ca-record-body .prov{color:var(--ca-muted)}

@media (max-width:640px){
  .state-scope-california .ca-record-body .fpd-places{grid-template-columns:1fr}
  .state-scope-california .ca-record-body .fpd-stats :is(td,th).fpd-period{
    width:auto;font-size:.78rem}
  .state-scope-california .ca-record-body .fpd-stats :is(td,th).fpd-num{width:auto}
}
/* ==FPD-BLOCK-END== */
