
:root{--bg:#f7f4ee;--card:#ffffff;--ink:#232323;--muted:#6b6258;--line:#ded6ca;--accent:#6f4e37;--accent2:#9a7652;--soft:#f1eadf;--blue:#eef3f6;--gold:#f8f0df;}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Georgia,'Times New Roman',serif;line-height:1.6;font-size:18px}a{color:#6a3f22;text-decoration:none}a:hover{text-decoration:underline}.container{max-width:1080px;margin:0 auto;padding:0 24px}.site-header{background:#fffdf8;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}.header-grid{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 24px}.brand{font-weight:700;letter-spacing:.02em}.nav{display:flex;gap:14px;flex-wrap:wrap;font-size:15px}.nav a{color:#4e4037}.site-footer{border-top:1px solid var(--line);margin-top:48px;padding:24px 0;color:var(--muted);font-size:14px}.hero{display:grid;grid-template-columns:280px 1fr;gap:44px;align-items:center;padding:52px 0}.portrait{width:260px;height:260px;object-fit:cover;border-radius:50%;border:8px solid #fff;box-shadow:0 8px 28px rgba(0,0,0,.12)}.eyebrow{text-transform:uppercase;letter-spacing:.13em;color:var(--accent2);font-size:13px;font-weight:bold}h1{font-size:44px;line-height:1.1;margin:10px 0 16px}h2{font-size:28px;margin-top:0}h3{font-size:22px;margin-bottom:6px}.subtitle{font-size:24px;color:var(--muted);margin-top:-8px}.lead{font-size:21px;color:#3c332d}.card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:30px;margin:24px 0;box-shadow:0 8px 24px rgba(70,50,30,.06)}.button-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.button{display:inline-block;padding:10px 15px;border-radius:999px;background:var(--accent);color:white}.button.secondary{background:#fff;border:1px solid var(--line);color:var(--accent)}.themes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.theme{background:var(--soft);padding:16px;border-radius:14px}.link-list li{margin:10px 0}.vision-box,.question-box,.snapshot-box{background:var(--gold);border-left:5px solid var(--accent2);padding:18px 20px;border-radius:12px;margin:22px 0}.question-box{background:#f4efe7}.snapshot-box{background:var(--blue)}.note{color:var(--muted);font-size:15px}.graph{display:flex;flex-direction:column;align-items:center;gap:8px;margin:28px auto;max-width:720px}.graph-node{width:100%;background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px 22px;text-align:center;box-shadow:0 6px 18px rgba(0,0,0,.05)}.graph-node strong{display:block;font-size:20px}.graph-node small{display:block;color:var(--muted);margin-top:6px}.graph-node.object{background:#fbf8ef;border-color:#d9c59e}.graph-node.muted{background:#f4f4f4}.graph-node.current{background:#f0f5f0;border-color:#b8c9b8}.date{display:block;color:var(--accent2);font-size:13px;text-transform:uppercase;letter-spacing:.11em;font-weight:700;margin-bottom:4px}.arrow{color:var(--accent2);font-size:28px}.page-grid{display:grid;grid-template-columns:260px 1fr;gap:24px}.side-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;height:max-content;position:sticky;top:85px}.side-card ul{padding-left:18px;margin:8px 0}.section-label{color:var(--accent2);font-weight:bold}.milestone-title{font-size:38px}.quote{font-style:italic;color:#4b4038;border-left:4px solid var(--line);padding-left:18px}.table{width:100%;border-collapse:collapse}.table td,.table th{border-bottom:1px solid var(--line);padding:10px;text-align:left}@media(max-width:800px){.hero{grid-template-columns:1fr;text-align:center}.portrait{margin:auto}.themes,.page-grid{grid-template-columns:1fr}.side-card{position:static}.header-grid{display:block}.nav{margin-top:10px}h1{font-size:34px}}


/* Development Snapshot v6 additions */
.question-box {
  border-left: 5px solid #7a5c2e;
  background: #fff8ea;
  padding: 1rem 1.25rem;
  margin: 1.25rem 0;
  font-size: 1.05rem;
}
.snapshot-box {
  border-left: 5px solid #365f7c;
  background: #eef6fb;
  padding: 1rem 1.25rem;
  margin: 1.25rem 0;
  font-size: 1.05rem;
}
.vision-box {
  background: #f5f1e8;
  border: 1px solid #d8c9ab;
  padding: 1.1rem 1.3rem;
  margin: 1.25rem 0;
}
.quote {
  font-style: italic;
  font-size: 1.05rem;
  color: #3b3b3b;
}


/* v7.4 additions: dedicated milestone page for F1 geometry */
.milestone-link {
  display: block;
  text-decoration: none;
  color: inherit;
}
.milestone-link:hover .milestone-title,
.milestone-link:hover h3 {
  text-decoration: underline;
}
.math-display-question {
  margin: 1.2rem 0;
  padding: 1rem 1.25rem;
  border-left: 5px solid #7a5c2e;
  background: #fff8ea;
  font-size: 1.05rem;
}
.reference-list li {
  margin-bottom: 0.55rem;
}
