@import url('https://fonts.googleapis.com/css2?family=Newsreader:ital,opsz,wght@0,6..72,400;0,6..72,600;1,6..72,500&family=Work+Sans:wght@400;500;600&display=swap');

:root{
  --paper: #EFEAE0;
  --paper-raised: #F7F3EA;
  --ink: #24261F;
  --ink-soft: #55584A;
  --accent: #1F5C55;
  --accent-soft: #DDE6DA;
  --rule: #C9C2AE;
}

*{ box-sizing: border-box; }

body{
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font-family:'Work Sans', sans-serif;
  line-height:1.65;
}

a{ color:var(--accent); }

.site-header{
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:20px 32px;
  border-bottom:1px solid var(--rule);
}
.site-header .brand{
  font-family:'Newsreader', serif;
  font-size:1.3rem;
  font-style:italic;
  color:var(--ink);
  text-decoration:none;
  letter-spacing:0.01em;
}
.site-header nav a{
  color:var(--ink-soft);
  text-decoration:none;
  font-size:0.9rem;
  border-bottom:1px solid var(--rule);
}

.hero{
  max-width:640px;
  margin:64px auto 40px;
  padding:0 24px;
  text-align:center;
}
.eyebrow{
  text-transform:uppercase;
  letter-spacing:0.14em;
  font-size:0.75rem;
  color:var(--accent);
  font-weight:600;
  margin-bottom:14px;
}
.hero h1{
  font-family:'Newsreader', serif;
  font-size:2.6rem;
  font-weight:600;
  margin:0 0 14px;
  line-height:1.15;
}
.hero .sub{
  color:var(--ink-soft);
  font-size:1.05rem;
  margin:0;
}

.grid{
  max-width:900px;
  margin:0 auto 80px;
  padding:0 24px;
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(250px,1fr));
  gap:18px;
}
.card{
  display:block;
  background:var(--paper-raised);
  border:1px solid var(--rule);
  border-left:4px solid var(--accent);
  border-radius:2px;
  padding:22px 22px 20px;
  text-decoration:none;
  color:var(--ink);
  transition:transform 0.15s ease, box-shadow 0.15s ease;
}
.card:hover{
  transform:translateY(-2px);
  box-shadow:0 8px 20px rgba(36,38,31,0.08);
}
.card h2{
  font-family:'Newsreader', serif;
  font-size:1.2rem;
  font-weight:600;
  margin:0 0 8px;
  line-height:1.3;
}
.card p{
  margin:0;
  font-size:0.9rem;
  color:var(--ink-soft);
}

.article{
  max-width:640px;
  margin:0 auto;
  padding:56px 24px 90px;
}
.article h1{
  font-family:'Newsreader', serif;
  font-size:2.1rem;
  font-weight:600;
  line-height:1.2;
  margin:0 0 28px;
}
.article h2{
  font-family:'Newsreader', serif;
  font-size:1.35rem;
  font-weight:600;
  margin:40px 0 12px;
  padding-top:16px;
  border-top:1px solid var(--rule);
}
.article p, .article li{
  font-size:1.02rem;
  color:var(--ink);
}
.article ul, .article ol{
  padding-left:22px;
}
.article table{
  width:100%;
  border-collapse:collapse;
  margin:20px 0;
  font-size:0.92rem;
}
.article th, .article td{
  border:1px solid var(--rule);
  padding:8px 12px;
  text-align:left;
}
.article th{
  background:var(--accent-soft);
  font-weight:600;
}
.article a{
  font-weight:500;
}
.article a[href*="/go/"]{
  display:inline-block;
  margin-top:8px;
  padding:10px 20px;
  background:var(--accent);
  color:#fff;
  border-radius:3px;
  text-decoration:none;
  font-weight:500;
}
.article em{
  color:var(--ink-soft);
  font-style:italic;
  font-size:0.85rem;
}

.site-footer{
  text-align:center;
  padding:30px 24px;
  color:var(--ink-soft);
  font-size:0.82rem;
  border-top:1px solid var(--rule);
}
