/* UFO History Files — case-file / declassified document aesthetic
   Palette: night-file navy #16213B, aged paper #EDE6D6, redaction red #A8402E,
   brass accent #9C7C3C, ink #26241E
*/

@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@600;700;800&family=Special+Elite&family=Source+Sans+3:wght@400;500;600;700&display=swap');

:root{
  --navy:#16213B;
  --navy-dark:#0E1526;
  --paper:#EDE6D6;
  --paper-light:#F6F1E6;
  --ink:#26241E;
  --redact:#A8402E;
  --brass:#9C7C3C;
  --line:#C9BFA6;
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font-family:'Source Sans 3', system-ui, sans-serif;
  font-size:18px;
  line-height:1.7;
}

a{color:var(--redact);}
a:hover{color:var(--navy);}
a:focus-visible, button:focus-visible{outline:3px solid var(--brass); outline-offset:2px;}

img{max-width:100%; height:auto; display:block;}

.wrap{max-width:820px; margin:0 auto; padding:0 20px;}

/* ---------- Header ---------- */
header.site-header{
  background:var(--navy);
  color:var(--paper-light);
  border-bottom:6px solid var(--redact);
}
.header-inner{
  max-width:1000px; margin:0 auto; padding:18px 20px;
  display:flex; align-items:center; justify-content:space-between; gap:16px; flex-wrap:wrap;
}
.brand{
  font-family:'Playfair Display', serif;
  font-weight:800; font-size:26px; color:var(--paper-light); text-decoration:none;
  letter-spacing:0.5px;
}
.brand span{color:var(--brass);}
nav.main-nav ul{
  list-style:none; display:flex; gap:22px; margin:0; padding:0; flex-wrap:wrap;
}
nav.main-nav a{
  color:var(--paper-light); text-decoration:none; font-weight:600; font-size:15px;
  text-transform:uppercase; letter-spacing:0.6px; border-bottom:2px solid transparent;
}
nav.main-nav a:hover{border-bottom-color:var(--brass); color:var(--paper-light);}

/* ---------- Case stamp / eyebrow ---------- */
.case-stamp{
  display:inline-block;
  font-family:'Special Elite', monospace;
  color:var(--redact);
  border:2px solid var(--redact);
  padding:4px 12px;
  font-size:13px;
  letter-spacing:2px;
  text-transform:uppercase;
  transform:rotate(-1.5deg);
  margin-bottom:18px;
  background:rgba(168,64,46,0.05);
}

/* ---------- Hero ---------- */
.page-hero{
  max-width:1000px; margin:0 auto; padding:46px 20px 10px;
}
h1{
  font-family:'Playfair Display', serif;
  font-weight:800;
  font-size:clamp(30px,4.4vw,46px);
  line-height:1.15;
  margin:0 0 14px;
  color:var(--navy);
}
.meta-line{
  font-family:'Special Elite', monospace;
  color:var(--brass);
  font-size:14px;
  letter-spacing:1px;
  margin-bottom:6px;
}
.dek{font-size:20px; color:#4a4636; max-width:700px;}

/* ---------- Article body ---------- */
main{max-width:800px; margin:0 auto; padding:10px 20px 60px;}
article h2{
  font-family:'Playfair Display', serif;
  font-weight:700;
  font-size:28px;
  color:var(--navy);
  margin:44px 0 14px;
  padding-bottom:8px;
  border-bottom:3px solid var(--line);
}
article h3{
  font-family:'Playfair Display', serif;
  font-weight:700;
  font-size:21px;
  color:var(--redact);
  margin:28px 0 10px;
}
article p{margin:0 0 18px;}
article ul, article ol{margin:0 0 18px; padding-left:26px;}
article li{margin-bottom:8px;}
article strong{color:var(--navy);}
blockquote{
  border-left:4px solid var(--brass);
  background:var(--paper-light);
  margin:24px 0;
  padding:14px 20px;
  font-style:italic;
  color:#3a3728;
}

figure{margin:26px 0;}
figure img{
  border:1px solid var(--line);
  background:var(--paper-light);
  padding:6px;
}
figcaption{
  font-family:'Special Elite', monospace;
  font-size:13px;
  color:var(--brass);
  margin-top:6px;
}

.disclosure-note{
  background:var(--paper-light);
  border:1px dashed var(--brass);
  padding:14px 18px;
  font-size:15px;
  color:#4a4636;
  margin:26px 0;
}

.external-source{
  margin:30px 0;
  padding:14px 18px;
  background:#fff;
  border:1px solid var(--line);
  font-size:15px;
}

/* ---------- Related / silo box ---------- */
.related-box{
  margin:46px 0 10px;
  padding:22px;
  background:var(--navy);
  color:var(--paper-light);
}
.related-box h2{
  color:var(--paper-light);
  border-bottom:2px solid var(--brass);
  font-size:22px;
  margin-top:0;
}
.related-box ul{list-style:none; padding:0; margin:0; display:grid; gap:10px;}
.related-box a{color:var(--paper-light); text-decoration:none; font-weight:600;}
.related-box a:hover{color:var(--brass);}
.related-box a::before{content:"→ "; color:var(--brass);}

/* ---------- Cards (index page) ---------- */
.silo-title{
  font-family:'Special Elite', monospace;
  color:var(--redact);
  letter-spacing:1.5px;
  text-transform:uppercase;
  font-size:15px;
  margin:44px 0 14px;
}
.card-grid{
  display:grid; grid-template-columns:repeat(auto-fill, minmax(230px,1fr)); gap:16px;
}
.card{
  background:#fff; border:1px solid var(--line); padding:16px; text-decoration:none; color:var(--ink);
  display:block;
}
.card:hover{border-color:var(--redact);}
.card h3{margin:0 0 8px; font-size:17px; color:var(--navy); font-family:'Playfair Display',serif;}
.card p{margin:0; font-size:14px; color:#5a5646;}

/* ---------- Footer ---------- */
footer.site-footer{
  background:var(--navy-dark);
  color:#b9b6a8;
  padding:36px 20px;
  margin-top:60px;
  font-size:14px;
}
.footer-inner{max-width:1000px; margin:0 auto; display:flex; justify-content:space-between; gap:20px; flex-wrap:wrap;}
.footer-inner nav ul{list-style:none; display:flex; gap:18px; padding:0; margin:0; flex-wrap:wrap;}
.footer-inner a{color:#d8d4c4; text-decoration:none;}
.footer-inner a:hover{color:#fff;}

/* ---------- Static pages ---------- */
.static-page main{max-width:760px;}
.static-page h2{font-size:24px;}

@media (max-width:640px){
  body{font-size:16.5px;}
  .header-inner{flex-direction:column; align-items:flex-start;}
}
