/* ==========================================================================
   Site 02 — Criminal Defense SEO Dictionary
   bestcriminaldefenseseocompany.com
   Identity: oxblood + bone, slab headings, alphabet rail, two-column entries.
   Deliberately unlike site 01: no left contents rail, no record blocks,
   a fixed alphabet spine and dictionary-style hanging indents instead.
   ========================================================================== */
:root{
  --ink:#2A1A17; --oxblood:#7B2D26; --oxblood-d:#5A1F1A; --brass:#A8802C;
  --bone:#FAF6EF; --bone-2:#F1EADD; --rule:#DCD0BE; --rule-2:#EBE2D3;
  --text:#241E1A; --text-2:#5A5049; --link:#7B2D26; --link-v:#4A3B6B;
  --slab:"Bookman Old Style","Bitstream Charter",Charter,Cambria,Georgia,serif;
  --body:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;
  --sans:"Gill Sans","Gill Sans MT",Frutiger,Univers,Calibri,system-ui,sans-serif;
  --wrap:1180px;
}
*,*::before,*::after{box-sizing:border-box}
body{margin:0;background:var(--bone);color:var(--text);font-family:var(--body);
  font-size:17.5px;line-height:1.6}
a{color:var(--link);text-decoration:underline;text-underline-offset:2px;text-decoration-thickness:.5px}
a:visited{color:var(--link-v)}
a:hover{background:#F0DFD3}
/* A URL set as text, not a link: the agency's own domain is cited by address.
   Dictionary idiom, so it takes the small-caps treatment used for headwords. */
.plainurl{font-family:var(--sans);font-size:.9em;letter-spacing:.01em;
  color:var(--text-2);border-bottom:1px dotted var(--rule-2);white-space:nowrap}
h1,h2,h3,h4{font-family:var(--slab);font-weight:700;line-height:1.18;color:var(--ink);margin:0 0 .45em}
h1{font-size:2.6rem;letter-spacing:-.015em}
h2{font-size:1.5rem;margin-top:1.9em;color:var(--oxblood-d);
  border-bottom:1px solid var(--rule);padding-bottom:.2em}
h3{font-size:1.18rem;margin-top:1.5em}
h4{font-size:1rem;margin-top:1.2em;font-variant:small-caps;letter-spacing:.05em}
p{margin:0 0 1.05em}
.skip-link{position:absolute;left:-9999px}
.skip-link:focus{left:8px;top:8px;background:var(--oxblood);color:#fff;padding:8px 14px;z-index:99}
.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* ---------- masthead: centred, dictionary title page ---------- */
.masthead{background:var(--oxblood);color:#F7EDE4;text-align:center;
  border-bottom:6px double var(--brass)}
.masthead__inner{max-width:var(--wrap);margin:0 auto;padding:22px 20px 18px}
.wordmark{display:inline-block;text-decoration:none;color:inherit}
.wordmark:hover{background:none}
.wordmark__name{display:block;font-family:var(--slab);font-size:1.7rem;font-weight:700;
  letter-spacing:.01em;line-height:1.1}
.wordmark__name .tld{color:#E8C98A;font-weight:400}
.wordmark__tag{display:block;font-family:var(--sans);font-size:11.5px;letter-spacing:.24em;
  text-transform:uppercase;margin-top:7px;color:#E4C9BC}
.masthead__meta{margin:12px 0 0;font-family:var(--sans);font-size:11.5px;letter-spacing:.06em;
  color:#E4C9BC}
.masthead__meta b{color:#fff}

/* ---------- alphabet spine ---------- */
.spine{background:var(--bone-2);border-bottom:1px solid var(--rule);
  position:sticky;top:0;z-index:20}
.spine__inner{max-width:var(--wrap);margin:0 auto;padding:7px 20px;display:flex;
  gap:2px;flex-wrap:wrap;justify-content:center;font-family:var(--sans);font-size:12.5px}
.spine a{display:inline-block;min-width:22px;text-align:center;padding:2px 5px;
  text-decoration:none;color:var(--oxblood-d);font-weight:700;border:1px solid transparent}
.spine a:hover{border-color:var(--rule);background:#fff}
.spine__sep{width:100%;height:0}

/* ---------- nav ---------- */
.navbar{background:var(--ink);}
.navbar__inner{max-width:var(--wrap);margin:0 auto;padding:0 20px}
.navbar ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;justify-content:center}
.navbar a{display:block;padding:9px 16px;color:#EFE4D8;font-family:var(--sans);font-size:12px;
  letter-spacing:.13em;text-transform:uppercase;text-decoration:none}
.navbar a:hover,.navbar a[aria-current]{background:var(--oxblood);color:#fff}

/* ---------- headword block (signature element) ---------- */
.headword{max-width:var(--wrap);margin:0 auto;padding:30px 20px 0}
.headword__kicker{font-family:var(--sans);font-size:11px;letter-spacing:.2em;text-transform:uppercase;
  color:var(--brass);font-weight:700;margin:0 0 .6em}
.headword h1{margin-bottom:.2em}
.pron{font-family:var(--sans);font-size:13.5px;color:var(--text-2);margin:0 0 .9em;
  letter-spacing:.02em}
.pron b{color:var(--oxblood-d);font-weight:700}
.headword .lead{font-size:1.14rem;color:var(--text-2);max-width:66ch;margin-bottom:1em}
.headword .lead strong{color:var(--ink)}
.headword__rule{border:0;border-top:3px double var(--rule);margin:0 0 4px}

/* ---------- two-column body ---------- */
.sheet{max-width:var(--wrap);margin:0 auto;padding:20px 20px 44px}
.cols{column-count:2;column-gap:40px;column-rule:1px solid var(--rule-2)}
.cols>*{break-inside:avoid-column}
.cols h2,.cols h3{break-after:avoid-column}
.nocols{column-count:1}
@media (max-width:900px){.cols{column-count:1}}

/* ---------- sense list (numbered definitions) ---------- */
.senses{list-style:none;counter-reset:s;margin:0 0 22px;padding:0}
.senses li{counter-increment:s;position:relative;padding-left:2.1em;margin-bottom:.85em}
.senses li::before{content:counter(s);position:absolute;left:0;top:.05em;
  font-family:var(--sans);font-size:11px;font-weight:700;color:#fff;background:var(--oxblood);
  width:1.5em;height:1.5em;line-height:1.5em;text-align:center;border-radius:50%}
.senses b{color:var(--oxblood-d)}

/* ---------- callouts ---------- */
.gloss{border:1px solid var(--rule);border-left:5px solid var(--brass);background:#fff;
  padding:13px 16px;margin:0 0 22px;font-size:.97rem}
.gloss--disclosure{border-left-color:var(--oxblood)}
.gloss__t{font-family:var(--sans);font-size:11px;letter-spacing:.14em;text-transform:uppercase;
  font-weight:700;color:var(--oxblood-d);margin:0 0 .45em}
.gloss p:last-child{margin-bottom:0}
.quotebox{border-top:3px double var(--rule);border-bottom:3px double var(--rule);
  padding:14px 0;margin:0 0 22px;font-size:1.06rem;color:var(--text-2);font-style:italic}

/* ---------- tables ---------- */
.tablewrap{overflow-x:auto;margin:0 0 24px;border:1px solid var(--rule);background:#fff}
table{border-collapse:collapse;width:100%;font-size:.92rem;min-width:500px}
caption{caption-side:top;text-align:left;font-family:var(--sans);font-size:11.5px;color:var(--text-2);
  padding:9px 12px;background:var(--bone-2);border-bottom:1px solid var(--rule)}
th,td{padding:9px 12px;text-align:left;border-bottom:1px solid var(--rule-2);vertical-align:top}
thead th{background:var(--ink);color:#F0E5D9;font-family:var(--sans);font-size:11px;
  letter-spacing:.09em;text-transform:uppercase;border-bottom:0}
tbody tr:nth-child(even){background:var(--bone)}
td.num{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:700;color:var(--oxblood-d)}

/* ---------- A–Z entries ---------- */
.azgroup{margin:0 0 26px}
.azgroup__letter{font-family:var(--slab);font-size:2.1rem;color:#fff;background:var(--oxblood);
  width:1.5em;height:1.5em;line-height:1.5em;text-align:center;margin:0 0 .4em;
  scroll-margin-top:52px}
.entrylist{margin:0}
.entrylist dt{font-weight:700;color:var(--oxblood-d);margin-top:.95em;font-family:var(--slab);
  scroll-margin-top:52px}
.entrylist dd{margin:.15em 0 0 1.3em;text-indent:-1.3em;padding-left:1.3em;color:var(--text-2)}
ul.plain{list-style:none;padding:0}
ul.plain li{padding-left:1.2em;position:relative;margin-bottom:.5em}
ul.plain li::before{content:"\203A";position:absolute;left:0;color:var(--brass);font-weight:700}
.seealso{font-family:var(--sans);font-size:12.5px;background:var(--bone-2);
  border:1px solid var(--rule);padding:11px 14px;margin:0 0 22px}
.seealso b{color:var(--oxblood-d);letter-spacing:.06em;text-transform:uppercase;font-size:11px}
time{font-variant-numeric:tabular-nums}

/* ---------- footer ---------- */
.sitefoot{background:var(--ink);color:#CBBCAF;margin-top:30px;border-top:6px double var(--brass);
  font-family:var(--sans);font-size:12.5px}
.sitefoot__inner{max-width:var(--wrap);margin:0 auto;padding:28px 20px 18px}
.sitefoot h2{color:#fff;font-size:1.05rem;border:0;margin:0 0 .5em}
.sitefoot a{color:#E0B9A8;text-decoration:none}
.sitefoot a:hover{color:#fff;text-decoration:underline;background:none}
.footgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:20px;
  margin:20px 0 0;padding-top:18px;border-top:1px solid #45332E}
.footcol p{font-family:var(--sans);font-size:11px;letter-spacing:.13em;text-transform:uppercase;
  color:#E8C98A;margin:0 0 .6em;font-weight:700}
.footcol ul{list-style:none;margin:0;padding:0}
.footcol li{margin-bottom:.35em;line-height:1.4}
.sitefoot__legal{margin:20px 0 0;padding-top:14px;border-top:1px solid #45332E;font-size:11.5px;
  color:#A6958A;line-height:1.6}

@media (max-width:700px){
  h1{font-size:1.9rem}
  .spine{position:static}
  .masthead__inner{padding:16px 16px 14px}
}
@media print{.spine,.navbar{display:none}body{background:#fff;font-size:11pt}.cols{column-count:2}}
