/* ProcessServerFortWorth.com — built to the recorded design doctrine.
   Source: /root/projects/astro/best-practices/STYLING.md + kdwraps336/design/TOKENS.md
   HARD RULES: border-radius 2px (never pills) · shadows SOLID with ZERO blur ·
   accent is a BLOCK BACKGROUND carrying DARK text, never a ground for white text ·
   ink padding >=24px to the glyphs · body contrast AAA 7:1.
   🔴 Palette below is a legal-sector PLACEHOLDER pending owner approval of the design. */
:root{
  /* 🔴 PALETTE TAKEN FROM karenhsmith.com (2026-08-28, owner direction).
     Her site is the sister property; these are HER measured values, not a
     re-derivation. Muted bronze + navy + cream, serif display, sans body.
     Earlier PSFW used a bright gold #c9a227 on a dark header - that was the
     counselfirmnearme system, NOT hers, and read far too loud. */
  --navy:#0a2540; --navy-deep:#06182b;
  --accent:#b08d57;            /* --legal-gold */
  --accent-bright:#c9a961;     /* --legal-gold-bright */
  --paper:#faf7f0;             /* --legal-cream */
  --paper-deep:#f3eddc;        /* --legal-cream-deep */
  --ink:#232323; --muted:#5a5a5a; --line:#d9d0b8;
  /* aliases the kit's component CSS expects */
  --dark:var(--navy); --card-bg:#ffffff; --on-dark:#faf7f0; --on-dark-muted:#cfc6b4;
  --accent-shadow:#8c6f42; --accent-ink:#0a2540; --link:#0a2540;
  --line-dark:#123; --muted-strong:#3d3d3d;
  --max:1120px; --wrap:1120px; --wrap-pad:22px; --sec-y:56px;
  --shadow-btn:4px 4px 0 0 var(--accent-shadow);
  --shadow-card:7px 7px 0 0 rgba(10,37,64,.10);
  --sans:'Source Sans 3',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  --display:'Libre Baskerville',Georgia,serif;
}
*{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 var(--sans)}
.wrap{max-width:var(--max);margin:0 auto;padding:0 24px}

/* header/footer carry a 6px accent rule — doctrine */
header{background:var(--dark);color:var(--on-dark);border-bottom:6px solid var(--accent)}
header a{color:var(--on-dark)}
footer{background:var(--dark);color:var(--on-dark-muted);border-top:6px solid var(--accent);
  padding:40px 0;margin-top:64px}
footer a{color:var(--on-dark)}

h1{font-family:var(--display);font-size:clamp(30px,4.4vw,46px);line-height:1.12;margin:0 0 12px}
h2{font-family:var(--display);font-size:clamp(23px,2.8vw,31px);line-height:1.2;margin:44px 0 12px}
h3{font-size:20px;margin:26px 0 8px}
p{margin:0 0 16px;max-width:70ch}
a{color:var(--link)}

/* cards: hard edge, solid offset shadow, 5px accent left edge, 26px ink padding */
.card{background:var(--card-bg);border:1px solid var(--line);border-left:5px solid var(--accent);
  border-radius:2px;padding:26px;box-shadow:var(--shadow-card);margin:0 0 22px}

/* buttons: 2px radius, solid shadow, DARK ink on the accent block */
.btn{display:inline-block;background:var(--accent);color:var(--accent-ink);
  border:1px solid var(--accent-shadow);border-radius:2px;
  padding:14px 26px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;
  text-decoration:none;box-shadow:var(--shadow-btn)}
.btn:hover{transform:translate(1px,1px);box-shadow:3px 3px 0 0 var(--accent-shadow)}

nav ul{list-style:none;display:flex;gap:22px;margin:0;padding:18px 0;flex-wrap:wrap}
nav a{text-decoration:none;font-weight:700;letter-spacing:.04em}
main{padding:34px 0 8px}
.lede{font-size:20px;color:var(--muted-strong);max-width:66ch}

/* horizontal-content patterns: content stays in the initial HTML, reachable by a control */
details{border:1px solid var(--line);border-left:5px solid var(--accent);border-radius:2px;
  background:var(--card-bg);padding:20px 26px;margin:0 0 14px}
summary{cursor:pointer;font-weight:800}

/* ---- SECTION RHYTHM (added 2026-08-28) --------------------------------
   The owner's verdict was "skyscraper article". 9 H2s with uniform margins
   and one continuous ground gives the eye nowhere to rest. Each H2 now opens
   a band with real vertical space; every other band gets a white ground.
   NO new heading tags - the Cora gate asserts the counts. */
main .wrap > h2 { margin-top: 0; }
main .wrap { padding-top: 8px; }
.sec { padding: var(--sec-y) 0; }
.sec-alt { background: var(--card-bg); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.sec > .wrap > :first-child { margin-top: 0; }
