
:root{
  --ink:#111612;
  --ink2:#181e19;
  --paper:#efe6cf;
  --paper2:#d8ccb0;
  --rust:#a35b36;
  --green:#789553;
  --muted:#9f987f;
  --line:rgba(239,230,207,.18);
  --max:1160px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;background:var(--ink);color:var(--paper);
  font-family:Arial,Helvetica,sans-serif;line-height:1.58;
}
a{color:inherit}
img{max-width:100%;display:block}
.wrap{width:min(calc(100% - 36px),var(--max));margin:auto}
header{
  position:sticky;top:0;z-index:50;
  background:rgba(17,22,18,.96);
  backdrop-filter:blur(8px);
  border-bottom:1px solid var(--line);
}
.nav{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:10px 0}
.brand{display:flex;align-items:center;gap:11px;text-decoration:none}
.brand img{width:52px;height:52px;object-fit:cover;border-radius:50%;border:1px solid rgba(239,230,207,.32)}
.brand strong{font-family:Georgia,serif;letter-spacing:2px;font-size:15px}
.brand small{display:block;letter-spacing:4px;color:var(--muted);font-size:9px}
nav{display:flex;gap:20px;align-items:center}
nav a{text-decoration:none;text-transform:uppercase;letter-spacing:2px;font-size:11px;color:var(--paper2)}
nav a:hover{color:#fff}
.menu-label{display:none;color:var(--muted);font-size:10px;letter-spacing:2px}
.hero{
  min-height:76vh;display:grid;align-items:center;
  background:
    linear-gradient(90deg,rgba(17,22,18,.98) 0%,rgba(17,22,18,.80) 48%,rgba(17,22,18,.28) 100%),
    url("assets/sego-barrier-panel-wide.jpg") center/cover no-repeat;
  border-bottom:1px solid var(--line);
}
.hero-grid{display:grid;grid-template-columns:minmax(0,650px) 1fr;gap:30px;align-items:center}
.kicker,.eyebrow{text-transform:uppercase;letter-spacing:3px;font-size:11px;color:var(--green);font-weight:700}
h1,h2,h3{font-family:Georgia,"Times New Roman",serif;line-height:1.02;margin:.25em 0}
h1{font-size:clamp(58px,10vw,118px);letter-spacing:-4px}
h2{font-size:clamp(34px,5vw,60px);letter-spacing:-1px}
h3{font-size:25px}
.hero p{max-width:640px;font-size:19px;color:var(--paper2)}
.rule{height:4px;width:76px;background:var(--rust);margin:22px 0}
.cta,.button{
  display:inline-block;text-decoration:none;text-transform:uppercase;
  letter-spacing:2px;font-size:11px;font-weight:700;
  border:1px solid var(--paper2);padding:13px 16px;margin:8px 8px 0 0;
}
.cta:hover,.button:hover{background:var(--paper);color:var(--ink)}
.button.primary{background:var(--rust);border-color:var(--rust);color:#fff}
.section{padding:82px 0;border-bottom:1px solid var(--line)}
.section.alt{background:var(--ink2)}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:46px}
.card{
  border:1px solid var(--line);background:rgba(239,230,207,.025);
  padding:25px;
}
.card p,.lede{color:var(--paper2)}
.stamp{
  display:inline-block;border:1px solid var(--rust);color:var(--rust);
  padding:5px 9px;text-transform:uppercase;font-size:10px;letter-spacing:2px;
  transform:rotate(-1deg)
}
.latest{
  display:grid;grid-template-columns:1.05fr .95fr;gap:0;
  border:1px solid var(--line);overflow:hidden;background:#0d110e
}
.latest img{width:100%;height:100%;min-height:430px;object-fit:cover}
.latest-copy{padding:40px}
.meta{display:flex;flex-wrap:wrap;gap:8px 16px;color:var(--muted);font-size:11px;letter-spacing:1px;text-transform:uppercase}
.archive-row{
  display:grid;grid-template-columns:80px 1fr auto;gap:22px;align-items:center;
  padding:25px 0;border-top:1px solid var(--line);text-decoration:none
}
.archive-row:last-child{border-bottom:1px solid var(--line)}
.archive-no{font-family:Georgia,serif;font-size:34px;color:var(--rust)}
.archive-row strong{font-family:Georgia,serif;font-size:24px}
.archive-row small{color:var(--muted);text-transform:uppercase;letter-spacing:2px}
.quote{
  border-left:4px solid var(--green);padding:5px 0 5px 24px;
  font-family:Georgia,serif;font-size:clamp(25px,3.4vw,38px);line-height:1.2
}
footer{padding:46px 0;color:var(--muted);font-size:12px}
.footer-grid{display:flex;justify-content:space-between;gap:30px;align-items:center}
.footer-mark{display:flex;align-items:center;gap:12px}
.footer-mark img{width:62px;height:62px;border-radius:50%;object-fit:cover}

/* report */
.report-hero{
  min-height:73vh;display:grid;align-items:end;
  background:
    linear-gradient(0deg,rgba(17,22,18,.98),rgba(17,22,18,.18) 68%),
    url("../assets/sego-ghost-figures-wide.jpg") center/cover no-repeat;
  border-bottom:1px solid var(--line)
}
.report-hero .inner{padding:90px 0 54px}
.report-hero h1{font-size:clamp(50px,8vw,92px)}
.report-layout{display:grid;grid-template-columns:220px minmax(0,720px) 1fr;gap:44px;align-items:start}
.report-aside{position:sticky;top:94px;font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:1.5px}
.report-aside div{padding:7px 0;border-bottom:1px solid var(--line)}
.article p{font-family:Georgia,serif;font-size:19px;color:#e3d9c2}
.article h2{margin-top:1.4em}
.article h3{margin-top:1.6em;color:var(--paper)}
.article .drop:first-letter{float:left;font-family:Georgia,serif;font-size:70px;line-height:.75;padding:8px 10px 0 0;color:var(--rust)}
.field-note{
  margin:34px 0;border:1px solid var(--line);border-left:5px solid var(--green);
  padding:20px 22px;background:rgba(120,149,83,.06)
}
.field-note strong{display:block;text-transform:uppercase;letter-spacing:2px;font-size:11px;color:var(--green);margin-bottom:8px}
.figure{margin:38px 0}
.figure img{width:100%;max-height:720px;object-fit:cover;border:1px solid var(--line)}
.figure figcaption{font-size:11px;letter-spacing:1px;text-transform:uppercase;color:var(--muted);padding-top:9px}
.figure-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:36px 0}
.figure-grid figure{margin:0}
.figure-grid img{aspect-ratio:4/3;object-fit:cover;width:100%;border:1px solid var(--line)}
.figure-grid figcaption{font-size:10px;color:var(--muted);padding-top:7px;text-transform:uppercase;letter-spacing:1px}
.disposition{
  margin:50px 0;padding:28px;border:2px solid var(--rust);
  background:rgba(163,91,54,.07)
}
.disposition h3{text-transform:uppercase;letter-spacing:2px;color:var(--rust);font-family:Arial,sans-serif;font-size:14px}
.status-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.status-grid div{border-top:1px solid var(--line);padding:10px 0}
.status-grid small{display:block;color:var(--muted);text-transform:uppercase;letter-spacing:1px}
.sources{font-size:13px;color:var(--muted)}
.sources a{color:var(--paper2)}
.center{text-align:center}

@media(max-width:850px){
  nav{display:none}.menu-label{display:block}
  .hero{min-height:68vh;background-position:60% center}
  .hero-grid,.grid-2,.latest,.report-layout{grid-template-columns:1fr}
  h1{letter-spacing:-2px}
  .latest img{min-height:300px}
  .report-aside{position:static;display:grid;grid-template-columns:1fr 1fr;gap:0 14px}
  .figure-grid{grid-template-columns:1fr}
  .footer-grid{display:block}
}
@media(max-width:520px){
  .wrap{width:min(calc(100% - 28px),var(--max))}
  .section{padding:62px 0}
  .hero p{font-size:17px}
  .latest-copy{padding:25px}
  .archive-row{grid-template-columns:58px 1fr}
  .archive-row .arrow{display:none}
  .status-grid{grid-template-columns:1fr}
}

/* field library + contact */
.library-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}
.resource-card{border:1px solid var(--line);padding:26px;background:rgba(239,230,207,.025)}
.resource-card h3{margin-top:0}
.resource-list{margin:0;padding-left:20px;color:var(--paper2)}
.resource-list li{margin:9px 0}
.resource-list em{color:var(--paper)}
.contact-box{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.contact-link{display:block;border:1px solid var(--line);padding:22px;text-decoration:none}
.contact-link:hover{border-color:var(--green);background:rgba(120,149,83,.06)}
.contact-link small{display:block;color:var(--muted);text-transform:uppercase;letter-spacing:2px;margin-bottom:6px}
.contact-link strong{overflow-wrap:anywhere}
.method{font-family:Georgia,serif;font-size:22px}
@media(max-width:850px){.library-grid,.contact-box{grid-template-columns:1fr}}

/* v2.2 introduction + case files */
.classification-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:30px}
.class-card{border:1px solid var(--line);padding:22px;background:rgba(239,230,207,.025)}
.class-card span{display:block;font-family:Georgia,serif;font-size:26px;margin-bottom:4px}
.class-card strong{display:block;text-transform:uppercase;letter-spacing:1.4px;font-size:10px;margin-bottom:10px;color:var(--paper2)}
.class-card p{color:var(--muted);margin:0;font-size:14px}
.class-card.documented{border-top:4px solid #789553}.class-card.documented span{color:#9bb476}
.class-card.plausible{border-top:4px solid #9b8656}.class-card.plausible span{color:#baa36c}
.class-card.disputed{border-top:4px solid #a35b36}.class-card.disputed span{color:#c57b55}
.class-card.speculative{border-top:4px solid #77756d}.class-card.speculative span{color:#aaa69b}
.method-callout{margin:34px 0 0;border-top:1px solid var(--line);padding-top:22px;font-family:Georgia,serif;font-size:22px;color:var(--paper2)}
.case-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:32px 0}
.case-card{display:block;text-decoration:none;border:1px solid var(--line);padding:28px;min-height:270px;background:linear-gradient(145deg,rgba(239,230,207,.035),rgba(239,230,207,.012));transition:.2s ease}
.case-card:hover{transform:translateY(-3px);border-color:rgba(120,149,83,.65);background:rgba(120,149,83,.06)}
.case-card small{display:block;color:var(--green);text-transform:uppercase;letter-spacing:2px;margin-bottom:22px}
.case-card h3{font-size:34px;margin-bottom:14px}
.case-card p{color:var(--paper2);min-height:86px}
.case-card span{color:var(--rust);text-transform:uppercase;letter-spacing:2px;font-size:10px;font-weight:700}
.case-card.active{border-top:4px solid var(--green)}
.case-card.field{border-top:4px solid var(--rust)}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.small-quote{font-size:clamp(22px,3vw,32px)}
.intro-hero,.case-hero{background:radial-gradient(circle at 82% 25%,rgba(120,149,83,.11),transparent 28%),linear-gradient(180deg,#121713,#0f140f)}
.archive-cases{margin-top:44px}
@media(max-width:950px){.classification-grid{grid-template-columns:1fr 1fr}.case-grid{grid-template-columns:1fr 1fr}.grid-3{grid-template-columns:1fr}}
@media(max-width:620px){.classification-grid,.case-grid{grid-template-columns:1fr}.case-card{min-height:0}.case-card p{min-height:0}}
