/* ==========================================================================
   Site 04 — Ranking Observatory
   bestseocompanyforcriminaldefenselawfirms.net
   Identity: slate + amber on near-black, monospace data, dashboard tiles.
   Deliberately unlike 01/02/03: a dark instrument panel, stat tiles, wide
   data tables, and a horizontal section switcher instead of a contents rail.
   ========================================================================== */
:root{
  --bg:#101418; --bg-2:#171C22; --bg-3:#1E252C; --line:#2A333C; --line-2:#39444F;
  --ink:#E8EDF2; --ink-2:#9AA9B7; --ink-3:#6B7C8B;
  --amber:#E9A13B; --amber-d:#B87A22; --cyan:#4FB8C9; --green:#5FBF8B; --red:#D9694F;
  --link:#7CC7D6; --link-v:#B79BD4;
  --mono:"SF Mono",Menlo,Consolas,"Roboto Mono","Liberation Mono",monospace;
  --sans:"Inter","Helvetica Neue",Helvetica,Arial,system-ui,sans-serif;
  --wrap:1360px;
}
*,*::before,*::after{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);
  font-size:16px;line-height:1.62;-webkit-font-smoothing:antialiased}
a{color:var(--link);text-decoration:none;border-bottom:1px solid rgba(124,199,214,.35)}
a:visited{color:var(--link-v);border-bottom-color:rgba(183,155,212,.35)}
a:hover{border-bottom-color:currentColor;background:rgba(124,199,214,.08)}
.plainurl{font-family:var(--mono);font-size:.86em;color:var(--ink-2);
  border-bottom:1px dotted var(--line-2);white-space:nowrap}
h1,h2,h3,h4{font-family:var(--sans);font-weight:600;line-height:1.24;color:#fff;margin:0 0 .5em}
h1{font-size:2.05rem;letter-spacing:-.018em}
h2{font-size:1.16rem;margin-top:2.2em;color:var(--amber);text-transform:uppercase;
  letter-spacing:.1em;font-size:.9rem;padding-bottom:.5em;border-bottom:1px solid var(--line)}
h3{font-size:1.02rem;margin-top:1.6em;color:var(--ink)}
p,ul,ol{margin:0 0 1.05em}
.skip-link{position:absolute;left:-9999px}
.skip-link:focus{left:8px;top:8px;background:var(--amber);color:#101418;padding:8px 14px;z-index:99}
.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* --------------------------------------------------------------- statusbar */
.statusbar{background:#0A0D10;border-bottom:1px solid var(--line);font-family:var(--mono);
  font-size:.72rem;color:var(--ink-3)}
.statusbar__inner{max-width:var(--wrap);margin:0 auto;padding:7px 22px;
  display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between}
.statusbar b{color:var(--amber);font-weight:600}
.statusbar .ok{color:var(--green)}

/* --------------------------------------------------------------- masthead */
.masthead{background:var(--bg-2);border-bottom:1px solid var(--line)}
.masthead__inner{max-width:var(--wrap);margin:0 auto;padding:18px 22px;
  display:flex;flex-wrap:wrap;gap:18px;align-items:center;justify-content:space-between}
.wordmark{color:#fff;border:none;display:flex;align-items:center;gap:13px}
.wordmark:hover{background:none;border:none}
.wordmark__dot{width:11px;height:11px;border-radius:50%;background:var(--amber);
  box-shadow:0 0 0 4px rgba(233,161,59,.16);flex:none}
.wordmark__name{display:block;font-size:1.06rem;font-weight:600;letter-spacing:-.005em}
.wordmark__name .tld{color:var(--amber)}
.wordmark__tag{display:block;font-family:var(--mono);font-size:.7rem;color:var(--ink-3);
  text-transform:uppercase;letter-spacing:.18em;margin-top:3px}
.masthead__meta{margin:0;font-family:var(--mono);font-size:.72rem;color:var(--ink-3);
  text-align:right;line-height:1.6}
.masthead__meta b{color:var(--ink-2);font-weight:400}

/* --------------------------------------------------------------- switcher */
.switcher{background:var(--bg);border-bottom:1px solid var(--line)}
.switcher__inner{max-width:var(--wrap);margin:0 auto;padding:0 22px;display:flex;overflow-x:auto}
.switcher a{display:block;padding:12px 16px;font-family:var(--mono);font-size:.73rem;
  color:var(--ink-3);border:none;border-bottom:2px solid transparent;white-space:nowrap;
  text-transform:uppercase;letter-spacing:.09em}
.switcher a:hover{color:var(--ink);background:var(--bg-2)}
.switcher a[aria-current]{color:var(--amber);border-bottom-color:var(--amber);background:var(--bg-2)}

/* --------------------------------------------------------------- pagehead */
.pagehead{background:var(--bg-2);border-bottom:1px solid var(--line)}
.pagehead__inner{max-width:var(--wrap);margin:0 auto;padding:28px 22px 24px}
.pagehead__eyebrow{margin:0 0 7px;font-family:var(--mono);font-size:.71rem;color:var(--amber);
  text-transform:uppercase;letter-spacing:.16em}
.pagehead h1{margin:0 0 .4em;max-width:22ch}
.lead{font-size:1.06rem;color:var(--ink-2);margin:0;max-width:70ch}
.lead strong{color:#fff;font-weight:600}
.pagehead__stamp{margin:16px 0 0;font-family:var(--mono);font-size:.71rem;color:var(--ink-3);
  border-top:1px solid var(--line);padding-top:11px}

/* --------------------------------------------------------------- tiles */
.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(158px,1fr));gap:12px;margin:0 0 26px}
.tile{background:var(--bg-2);border:1px solid var(--line);padding:14px 15px}
.tile__k{margin:0 0 6px;font-family:var(--mono);font-size:.65rem;color:var(--ink-3);
  text-transform:uppercase;letter-spacing:.12em;line-height:1.4}
.tile__v{margin:0;font-family:var(--mono);font-size:1.55rem;font-weight:600;color:var(--amber);
  line-height:1.1}
.tile__v.up{color:var(--green)}
.tile__v.flat{color:var(--ink-2)}
.tile__n{margin:6px 0 0;font-size:.76rem;color:var(--ink-3);line-height:1.45}

/* --------------------------------------------------------------- shell */
.shell{max-width:var(--wrap);margin:0 auto;padding:0 22px;
  display:grid;grid-template-columns:236px minmax(0,1fr);gap:40px;align-items:start}
.main{padding:28px 0 60px;min-width:0}
.main>h2:first-of-type{margin-top:0}

/* --------------------------------------------------------------- rail */
.rail{position:sticky;top:12px;padding:26px 0 40px;font-size:.83rem}
.rail__t{margin:0 0 9px;font-family:var(--mono);font-size:.66rem;color:var(--ink-3);
  text-transform:uppercase;letter-spacing:.15em}
.rail__g{margin:0 0 15px}
.rail__g>p{margin:0 0 5px;font-family:var(--mono);font-size:.68rem;color:var(--amber);
  text-transform:uppercase;letter-spacing:.1em}
.rail__g ul{list-style:none;margin:0;padding:0 0 0 1px}
.rail__g li{margin:0 0 2px;line-height:1.4}
.rail__g a{color:var(--ink-2);border:none;display:block;padding:2px 0 2px 10px;
  border-left:1px solid var(--line)}
.rail__g a:hover{color:#fff;border-left-color:var(--ink-3);background:var(--bg-2)}
.rail__g a[aria-current]{color:var(--amber);border-left-color:var(--amber)}
.rail__note{margin:16px 0 0;padding:11px 12px;background:var(--bg-2);border:1px solid var(--line);
  border-left:2px solid var(--amber);font-size:.77rem;color:var(--ink-2);line-height:1.5}

/* --------------------------------------------------------------- blocks */
.tablewrap{overflow-x:auto;margin:0 0 22px;border:1px solid var(--line)}
table{border-collapse:collapse;width:100%;font-size:.86rem;background:var(--bg-2)}
caption{text-align:left;padding:11px 13px;font-size:.79rem;color:var(--ink-2);background:var(--bg-3);
  border-bottom:1px solid var(--line);font-family:var(--sans)}
th,td{padding:8px 13px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
th{background:var(--bg-3);font-family:var(--mono);font-weight:500;font-size:.72rem;
  text-transform:uppercase;letter-spacing:.07em;color:var(--ink-3)}
td{font-variant-numeric:tabular-nums}
tbody tr:last-child td{border-bottom:none}
tbody tr:hover td{background:var(--bg-3)}
.num{font-family:var(--mono);color:var(--amber)}
.num.up{color:var(--green)}
.readout{margin:0 0 22px;padding:15px 17px;background:var(--bg-2);border:1px solid var(--line);
  border-left:3px solid var(--cyan)}
.readout--warn{border-left-color:var(--red)}
.readout--disclosure{border-left-color:var(--ink-3)}
.readout__t{margin:0 0 .4em;font-family:var(--mono);font-size:.69rem;text-transform:uppercase;
  letter-spacing:.13em;color:var(--cyan)}
.readout--warn .readout__t{color:var(--red)}
.readout--disclosure .readout__t{color:var(--ink-3)}
.readout p:last-child{margin-bottom:0}
.bars{list-style:none;margin:0 0 22px;padding:0;font-family:var(--mono);font-size:.82rem}
.bars li{display:grid;grid-template-columns:minmax(120px,1.4fr) 1fr 62px;gap:11px;
  align-items:center;margin:0 0 7px}
.bars span:first-child{color:var(--ink-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bars .track{background:var(--bg-3);height:15px;position:relative;border:1px solid var(--line)}
.bars .fill{position:absolute;left:0;top:0;bottom:0;background:var(--amber);opacity:.85}
.bars .val{text-align:right;color:var(--amber)}
.seealso{margin:26px 0 0;padding:14px 16px;background:var(--bg-2);border:1px solid var(--line);
  font-size:.88rem}
.seealso b{display:block;font-family:var(--mono);font-size:.68rem;text-transform:uppercase;
  letter-spacing:.13em;color:var(--ink-3);margin-bottom:6px}

/* --------------------------------------------------------------- footer */
.sitefoot{background:#0A0D10;border-top:1px solid var(--line);font-size:.86rem;color:var(--ink-2)}
.sitefoot__inner{max-width:var(--wrap);margin:0 auto;padding:36px 22px 28px}
.sitefoot h2{color:#fff;font-size:1.12rem;margin:0 0 .5em;text-transform:none;letter-spacing:0;
  border:none;padding:0}
.footgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(172px,1fr));gap:20px;margin:22px 0}
.footcol p{margin:0 0 7px;font-family:var(--mono);font-size:.67rem;color:var(--amber);
  text-transform:uppercase;letter-spacing:.11em}
.footcol ul{list-style:none;margin:0;padding:0;font-size:.81rem}
.footcol li{margin:0 0 3px;line-height:1.45}
.footcol a{color:var(--ink-2);border:none}
.footcol a:hover{color:#fff}
.sitefoot__legal{font-family:var(--mono);font-size:.71rem;color:var(--ink-3);
  border-top:1px solid var(--line);padding-top:15px;margin:8px 0 0;line-height:1.75}

@media (max-width:1000px){
  .shell{grid-template-columns:1fr;gap:0}
  .rail{position:static;order:2;border-top:1px solid var(--line);padding-top:22px}
  .rail__g{display:inline-block;vertical-align:top;width:min(100%,270px);margin-right:16px}
}
@media (max-width:640px){
  h1{font-size:1.6rem}
  .bars li{grid-template-columns:1fr 58px;gap:8px}
  .bars .track{display:none}
}
