
:root{
  --bg:#070806;
  --bg-2:#10120f;
  --panel:#151711;
  --ink:#17170f;
  --paper:#e7dfc2;
  --paper-2:#d6cba8;
  --paper-line:#b9af91;
  --cream:#ece4c6;
  --muted:#b7ae91;
  --olive:#858064;
  --red:#8e2020;
  --gold:#b7aa78;
  --border:#4d4938;
  --shadow:0 24px 60px rgba(0,0,0,.48);
  --serif:Georgia,"Times New Roman",serif;
  --mono:"Courier New",Courier,monospace;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  color:var(--cream);
  background:
    radial-gradient(circle at 10% -10%,rgba(255,255,255,.05),transparent 35%),
    linear-gradient(rgba(255,255,255,.012),rgba(255,255,255,.012)),
    var(--bg);
  font-family:var(--serif);
  line-height:1.6;
}
img{max-width:100%;display:block}
a{color:inherit}
button,input,select,textarea{font:inherit}
.container{width:min(1180px,92%);margin:auto}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* header */
.site-header{
  position:sticky;top:0;z-index:30;
  background:rgba(6,7,6,.94);
  backdrop-filter:blur(12px);
  border-bottom:1px solid rgba(183,170,120,.28);
}
.navbar{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none}
.brand img{width:56px;height:56px;object-fit:contain}
.brand-name{font:700 .98rem var(--mono);letter-spacing:.12em;text-transform:uppercase}
.nav-links{display:flex;align-items:center;gap:22px}
.nav-links a{font:700 .78rem var(--mono);letter-spacing:.12em;text-transform:uppercase;text-decoration:none;color:#d7cfb1}
.nav-links a:hover,.nav-links a[aria-current="page"]{color:white}
.nav-toggle{display:none;background:none;border:1px solid var(--border);color:var(--cream);padding:8px 10px}

/* hero */
.hero{
  position:relative;
  overflow:hidden;
  min-height:88vh;
  display:grid;
  align-items:center;
  border-bottom:1px solid var(--border);
  background:
    linear-gradient(90deg,rgba(5,6,5,.96),rgba(5,6,5,.58) 52%,rgba(5,6,5,.82)),
    radial-gradient(circle at 72% 30%,#3b4038,#10130f 38%,#070806 68%);
}
.hero:after{
  content:"";position:absolute;inset:0;pointer-events:none;opacity:.2;
  background-image:
    linear-gradient(rgba(255,255,255,.02) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.02) 1px,transparent 1px);
  background-size:36px 36px;
}
.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.05fr .95fr;gap:50px;align-items:center;padding:90px 0}
.eyebrow{font:700 .76rem var(--mono);letter-spacing:.22em;text-transform:uppercase;color:var(--gold)}
.hero h1{font-size:clamp(3rem,7vw,6.2rem);line-height:.93;margin:.2em 0;text-transform:uppercase;letter-spacing:.01em}
.hero p{font-size:1.12rem;color:#c8bea0;max-width:650px}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  min-height:46px;padding:0 18px;border:1px solid var(--gold);
  text-decoration:none;text-transform:uppercase;letter-spacing:.11em;
  font:700 .76rem var(--mono);transition:.2s ease;
}
.btn-primary{background:var(--cream);color:#111;border-color:var(--cream)}
.btn:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(0,0,0,.3)}
.hero-logo-wrap{position:relative}
.hero-logo{width:min(520px,100%);margin:auto;filter:drop-shadow(0 28px 44px rgba(0,0,0,.65))}
.evidence-tag{
  position:absolute;right:4%;bottom:4%;background:var(--paper);color:var(--ink);
  padding:12px 15px;border:1px solid #8c8265;box-shadow:0 14px 30px rgba(0,0,0,.35);
  font:700 .78rem var(--mono);transform:rotate(-3deg)
}

/* common sections */
.section{padding:84px 0}
.section-dark{background:#0c0e0b}
.section-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:28px}
.section-heading h2{font-size:clamp(2rem,4vw,3.4rem);line-height:1;margin:0;text-transform:uppercase}
.section-heading p{max-width:620px;color:var(--muted);margin:0}
.kicker{display:block;font:700 .72rem var(--mono);letter-spacing:.19em;color:var(--gold);text-transform:uppercase;margin-bottom:10px}
.rule{height:1px;background:linear-gradient(90deg,var(--gold),transparent);margin:16px 0 30px}

/* cards */
.three-col{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.info-card{
  background:linear-gradient(180deg,#171a15,#10120f);
  border:1px solid var(--border);padding:28px;position:relative;overflow:hidden;
}
.info-card:before{content:"";position:absolute;left:0;top:0;width:5px;height:100%;background:var(--gold);opacity:.65}
.info-card h3{font-size:1.3rem;text-transform:uppercase;margin:.1em 0 .5em}
.info-card p{color:#bdb496;margin:0}
.icon-mark{font:700 1.8rem var(--mono);color:var(--gold);margin-bottom:14px}

/* case cards */
.case-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.case-card{
  position:relative;color:var(--ink);min-height:330px;
  padding:30px 28px 26px 58px;
  background:
    linear-gradient(90deg,transparent 42px,rgba(142,32,32,.38) 43px,transparent 44px),
    repeating-linear-gradient(var(--paper) 0,var(--paper) 30px,var(--paper-line) 31px);
  border:1px solid #a69a79;box-shadow:var(--shadow);transform:rotate(-.25deg);
  transition:.2s ease;
}
.case-card:nth-child(even){transform:rotate(.35deg)}
.case-card:hover{transform:translateY(-5px) rotate(0)}
.case-card:before{
  content:"";position:absolute;left:14px;top:14px;bottom:14px;width:14px;
  background:radial-gradient(circle,#79725d 0 3px,transparent 4px) center 0/14px 38px repeat-y
}
.case-number{font:700 .78rem var(--mono);text-transform:uppercase;letter-spacing:.06em}
.case-status{
  display:inline-block;margin:12px 0;border:3px solid var(--red);color:var(--red);
  padding:4px 9px;font:700 .78rem var(--mono);transform:rotate(-2deg)
}
.case-card h3{font:700 1.45rem var(--mono);text-transform:uppercase;line-height:1.15;margin:.5em 0}
.case-card p{margin:.5em 0}
.case-card a{font:700 .82rem var(--mono);text-transform:uppercase}
.case-tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}
.case-tag{border:1px solid #6f684f;padding:2px 7px;font:.72rem var(--mono)}

/* archive */
.archive-hero{padding:78px 0 36px;background:linear-gradient(#0d100d,#090a08)}
.filter-bar{
  display:grid;grid-template-columns:1.4fr .8fr .8fr;gap:12px;
  padding:18px;background:#11130f;border:1px solid var(--border);margin:28px 0 34px
}
.filter-bar input,.filter-bar select{
  width:100%;background:#090a08;color:var(--cream);border:1px solid #595441;padding:12px
}

/* dossier */
.dossier-wrap{padding:58px 0 90px}
.dossier{
  max-width:1050px;margin:auto;position:relative;color:var(--ink);
  padding:56px 64px 72px 96px;
  background:
    linear-gradient(90deg,transparent 69px,rgba(142,32,32,.38) 70px,transparent 71px),
    repeating-linear-gradient(var(--paper) 0,var(--paper) 31px,var(--paper-line) 32px);
  border:1px solid #aaa07f;box-shadow:0 35px 85px rgba(0,0,0,.68);
}
.dossier:before{
  content:"";position:absolute;left:24px;top:18px;bottom:18px;width:18px;
  background:radial-gradient(circle,#77705a 0 4px,transparent 5px) center 0/18px 42px repeat-y
}
.dossier-top{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;border-bottom:3px double #383529;padding-bottom:16px}
.dossier h1{font:700 clamp(2rem,5vw,3.6rem) var(--mono);line-height:1;text-transform:uppercase;margin:.2em 0}
.dossier-stamp{border:4px solid var(--red);color:var(--red);padding:7px 11px;font:700 .86rem var(--mono);transform:rotate(-4deg)}
.meta-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:6px 28px;font:.9rem var(--mono);margin-top:18px}
.file-section{margin-top:34px}
.file-section h2{font:700 1.1rem var(--mono);text-transform:uppercase;border-bottom:1px solid #3a372b;padding-bottom:5px}
.timeline{border-left:3px solid #7b7358;margin-left:7px;padding-left:22px}
.timeline p{margin:0 0 16px}
.exhibits{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}
.exhibit{
  min-height:190px;background:#20221d;color:#e9e1c5;border:10px solid #f4edd5;
  display:grid;place-items:center;text-align:center;padding:14px;
  box-shadow:0 6px 12px rgba(0,0,0,.35);font:700 .8rem var(--mono)
}
.data-table{width:100%;border-collapse:collapse;font:.86rem var(--mono)}
.data-table th,.data-table td{border-bottom:1px solid #77705b;padding:8px;text-align:left}

/* about/contact */
.split{display:grid;grid-template-columns:1fr 1fr;gap:34px;align-items:start}
.paper-note{
  color:var(--ink);padding:30px 34px 34px 54px;
  background:
    linear-gradient(90deg,transparent 37px,rgba(142,32,32,.35) 38px,transparent 39px),
    repeating-linear-gradient(var(--paper) 0,var(--paper) 30px,var(--paper-line) 31px);
  box-shadow:var(--shadow)
}
.form-card{background:#11130f;border:1px solid var(--border);padding:28px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.form-card label{display:block;font:700 .76rem var(--mono);text-transform:uppercase;letter-spacing:.08em;margin-bottom:6px}
.form-card input,.form-card textarea,.form-card select{
  width:100%;background:#080907;color:var(--cream);border:1px solid #5d5844;padding:12px
}
.form-card textarea{min-height:150px;resize:vertical}
.full{grid-column:1/-1}

/* footer */
.site-footer{border-top:1px solid var(--border);background:#080907;padding:36px 0}
.footer-grid{display:grid;grid-template-columns:1.3fr .7fr .7fr;gap:28px}
.footer-grid p,.footer-grid a{color:#aaa184}
.footer-links{display:flex;flex-direction:column;gap:8px}
.footer-note{border-top:1px solid #343225;margin-top:28px;padding-top:20px;color:#827b65;font-size:.86rem}

/* responsive */
@media(max-width:900px){
  .hero-grid,.split{grid-template-columns:1fr}
  .hero-logo-wrap{max-width:520px;margin:auto}
  .three-col,.case-grid{grid-template-columns:1fr 1fr}
  .filter-bar{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr}
}
@media(max-width:700px){
  .nav-toggle{display:block}
  .nav-links{display:none;position:absolute;top:76px;left:0;right:0;background:#090a08;padding:20px;flex-direction:column;border-bottom:1px solid var(--border)}
  .nav-links.open{display:flex}
  .three-col,.case-grid,.exhibits,.form-grid,.meta-grid{grid-template-columns:1fr}
  .hero{min-height:auto}
  .hero-grid{padding:60px 0}
  .dossier{padding:40px 24px 52px 58px}
  .dossier-top{flex-direction:column}
  .section{padding:64px 0}
}
