/* Weber Valley Documentary Archive */
:root {
  --navy:       #1a2a4a;
  --navy-lt:    #243557;
  --gold:       #c8a84b;
  --red:        #8b1c1c;
  --bg:         #f5f3ee;
  --card-bg:    #ffffff;
  --text:       #1e1e1e;
  --muted:      #555;
  --border:     #d4cfc6;
  --max-w:      1100px;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
body{font-family:Georgia,'Times New Roman',serif;background:var(--bg);color:var(--text);line-height:1.7;font-size:16px}
a{color:var(--navy);text-decoration:underline}
a:hover{color:var(--gold)}

/* NAV */
header{background:var(--navy);border-bottom:3px solid var(--gold);position:sticky;top:0;z-index:100}
.nav-inner{max-width:var(--max-w);margin:0 auto;padding:0 1.25rem;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.5rem;min-height:54px}
.nav-brand{color:var(--gold);font-size:1rem;font-weight:bold;text-decoration:none;letter-spacing:.03em;white-space:nowrap}
nav ul{list-style:none;display:flex;flex-wrap:wrap}
nav ul li a{color:#ccd6f6;text-decoration:none;font-family:Arial,sans-serif;font-size:.75rem;padding:.4rem .6rem;display:block;letter-spacing:.04em;text-transform:uppercase}
nav ul li a:hover,nav ul li a.active{color:var(--gold)}

/* ANCHOR BAR */
.anchor-bar{background:var(--red);color:#fff;padding:1rem 1.5rem;text-align:center;font-size:.95rem;line-height:1.5}
.anchor-bar strong{color:#ffd070}

/* HERO */
.hero{background:var(--navy-lt);color:#fff;padding:3.5rem 1.5rem 3rem;text-align:center}
.hero h1{font-size:clamp(1.5rem,4vw,2.4rem);color:var(--gold);margin-bottom:.75rem;letter-spacing:.02em}
.hero .sub{font-size:1rem;color:#b8c8e8;max-width:700px;margin:0 auto 1.5rem}
.hero-cta{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}

/* BUTTONS */
.btn{display:inline-block;padding:.6rem 1.3rem;border-radius:3px;text-decoration:none;font-family:Arial,sans-serif;font-size:.82rem;font-weight:bold;letter-spacing:.05em;text-transform:uppercase;transition:background .15s}
.btn-primary{background:var(--gold);color:var(--navy)}
.btn-primary:hover{background:#d9b85a;color:var(--navy)}
.btn-outline{border:2px solid var(--gold);color:var(--gold);background:transparent}
.btn-outline:hover{background:var(--gold);color:var(--navy)}

/* STATS */
.stats-strip{background:var(--navy);color:#fff;display:flex;justify-content:center;gap:3rem;padding:1.2rem 1.5rem;flex-wrap:wrap;text-align:center}
.stat-num{font-size:2rem;font-weight:bold;color:var(--gold);display:block}
.stat-lbl{font-size:.75rem;color:#aab;letter-spacing:.08em;text-transform:uppercase}

/* LAYOUT */
.page-wrap{max-width:var(--max-w);margin:0 auto;padding:2.5rem 1.5rem 4rem}
.page-title{font-size:1.7rem;color:var(--navy);border-bottom:2px solid var(--gold);padding-bottom:.5rem;margin-bottom:1.5rem}
.section-h{font-size:1.15rem;color:var(--navy);margin:2rem 0 .75rem;border-left:4px solid var(--gold);padding-left:.75rem}

/* DISCLAIMER */
.disclaimer{background:#fff8e1;border:1px solid #c9a200;padding:.9rem 1.1rem;font-size:.82rem;color:#5a4500;border-radius:2px;margin-bottom:1.75rem;font-family:Arial,sans-serif}
.disclaimer strong{color:#3a2e00}

/* CARDS */
.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:1.2rem;margin-top:.75rem}
.card{background:var(--card-bg);border:1px solid var(--border);border-top:3px solid var(--navy);padding:1.2rem;border-radius:2px}
.card h3{font-size:1rem;color:var(--navy);margin-bottom:.35rem}
.card p{font-size:.87rem;color:var(--muted)}
.card-link{display:inline-block;margin-top:.7rem;font-size:.78rem;font-family:Arial,sans-serif;text-decoration:none;color:var(--navy);font-weight:bold;text-transform:uppercase;letter-spacing:.05em}
.card-link:hover{color:var(--red)}

/* FEATURED EXHIBITS */
.feat-box{background:#eef0f5;border:1px solid var(--border);padding:1.5rem;margin-top:2rem;border-radius:2px}
.feat-box h2{font-size:1.1rem;color:var(--navy);margin-bottom:1rem}
.feat-item{display:flex;gap:1rem;align-items:flex-start;padding:.7rem 0;border-bottom:1px solid var(--border)}
.feat-item:last-child{border-bottom:none}
.etag{background:var(--red);color:#fff;font-size:.67rem;font-family:Arial,sans-serif;padding:.18rem .4rem;text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;border-radius:2px;margin-top:.15rem;flex-shrink:0}
.etag.key{background:#2a5c2a}
.feat-desc{font-size:.87rem}
.feat-desc a{font-weight:bold}
.feat-desc p{color:var(--muted);font-size:.81rem;margin-top:.2rem}

/* TIMELINE */
.timeline{position:relative;padding-left:2rem;margin-top:1rem}
.timeline::before{content:'';position:absolute;left:8px;top:0;bottom:0;width:2px;background:var(--border)}
.tl-item{position:relative;margin-bottom:2rem}
.tl-dot{position:absolute;left:-2rem;top:.3rem;width:14px;height:14px;border-radius:50%;background:var(--navy);border:2px solid var(--gold)}
.tl-item.flag .tl-dot{background:var(--red);border-color:#c43030}
.tl-date{font-size:.76rem;font-family:Arial,sans-serif;color:var(--gold);font-weight:bold;letter-spacing:.06em;text-transform:uppercase}
.tl-item h3{font-size:.97rem;color:var(--navy);margin:.2rem 0 .3rem}
.tl-item p{font-size:.86rem;color:var(--muted)}
.tl-src{font-size:.76rem;margin-top:.35rem}

/* FACT / UNKNOWN BLOCKS */
.fact{background:#f0f5ff;border-left:4px solid var(--navy);padding:.85rem 1.1rem;margin-bottom:.9rem;font-size:.88rem}
.fact .flbl{font-family:Arial,sans-serif;font-size:.7rem;text-transform:uppercase;letter-spacing:.07em;color:var(--navy);font-weight:bold;margin-bottom:.25rem}
.fact.unk{background:#fff8e8;border-color:var(--gold)}
.fact.unk .flbl{color:#8a6800}

/* CONTRADICTIONS */
.contra{background:#fff8f8;border-left:4px solid var(--red);padding:1rem 1.2rem;margin-bottom:1.2rem;border-radius:0 2px 2px 0}
.contra h3{font-size:.97rem;color:var(--red);margin-bottom:.4rem}
.contra p{font-size:.86rem;color:var(--muted)}
.contra .csrc{font-size:.76rem;margin-top:.4rem}

/* TABLE */
.data-table{width:100%;border-collapse:collapse;font-size:.87rem;margin-top:.75rem}
.data-table th{background:var(--navy);color:var(--gold);padding:.5rem .7rem;text-align:left;font-family:Arial,sans-serif;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em}
.data-table td{padding:.48rem .7rem;border-bottom:1px solid var(--border);vertical-align:top}
.data-table tr:nth-child(even) td{background:#f0ede8}
.data-table td a{word-break:break-word}

/* FILTER BAR */
.filter-bar{display:flex;gap:.75rem;flex-wrap:wrap;margin-bottom:1rem;align-items:center}
.filter-bar input{flex:1;min-width:220px;padding:.48rem .7rem;border:1px solid var(--border);font-size:.87rem;border-radius:2px;font-family:Arial,sans-serif}
.filter-bar select{padding:.48rem .7rem;border:1px solid var(--border);font-size:.87rem;border-radius:2px;font-family:Arial,sans-serif;background:#fff}
#ex-count{font-size:.8rem;color:var(--muted);font-family:Arial,sans-serif}
.cat-badge{font-size:.72rem;font-family:Arial,sans-serif;background:var(--navy);color:#fff;padding:.12rem .38rem;border-radius:2px;white-space:nowrap}
.cat-badge.key{background:#2a5c2a}
.cat-badge.pra{background:#5a3080}
.tbl-wrap{overflow-x:auto}

/* FOOTER */
footer{background:var(--navy);color:#8899bb;text-align:center;padding:1.5rem;font-family:Arial,sans-serif;font-size:.76rem;line-height:1.65}
footer a{color:#aab}
.footer-disc{max-width:780px;margin:.5rem auto 0;font-size:.73rem;color:#7a8899}

/* RESPONSIVE */
@media(max-width:640px){
  .stats-strip{gap:1.5rem}
  .nav-inner{flex-direction:column;align-items:flex-start;padding:.5rem 1rem}
  nav ul li a{padding:.35rem .45rem}
}
