@charset "UTF-8";
.overview-hero { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(0,.85fr); gap:70px; align-items:center; padding-block:72px 62px; }
.overview-hero h1 { font-size:clamp(37px,4.5vw,61px); letter-spacing:-2px; font-weight:550; line-height:1.3; margin-bottom:25px; }
.overview-hero h1 span { color:var(--teal); }
.overview-position { font-size:18px; color:var(--teal); margin-bottom:17px; }
.overview-lead { max-width:680px; font-size:14px; line-height:1.95; color:var(--muted); }
.overview-actions { display:flex; gap:12px; flex-wrap:wrap; margin-top:27px; }
.overview-note { font-size:11px; color:var(--muted); margin:18px 0 0; }
.overview-map { margin:0; padding:28px; border-radius:19px; background:var(--navy); color:var(--paper-bright); box-shadow:0 20px 45px #12333717; }
.overview-map > p { font-size:10px; letter-spacing:1.4px; color:#afc29d; margin-bottom:22px; }
.overview-map ol { list-style:none; padding:0; margin:0; }
.overview-map li { display:grid; grid-template-columns:28px minmax(0,1fr); gap:13px; padding-block:15px; border-top:1px solid #3d5758; }
.overview-map li > span { color:var(--lime); font-size:11px; padding-top:4px; }
.overview-map h2 { font-size:18px; font-weight:500; margin-bottom:4px; }
.overview-map li p { color:#9eb4a8; font-size:11px; margin:0; }
.overview-map figcaption { border-top:1px solid #3d5758; padding-top:17px; font-size:10px; color:#b7c8ad; }
.overview-update { border-block:1px solid var(--line); padding:18px 0; }
.overview-update .wrap { display:flex; gap:24px; align-items:baseline; }
.overview-update span { white-space:nowrap; color:var(--teal); font-size:11px; }
.overview-update p { margin:0; color:var(--muted); font-size:12px; }
.overview-route { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:0; list-style:none; padding:0; margin:0; border:1px solid #c8d1bf; border-radius:12px; overflow:hidden; }
.overview-route li { padding:23px; border-right:1px solid #c8d1bf; }
.overview-route li:last-child { border:0; }
.overview-route span { font-size:10px; color:var(--teal); }
.overview-route h3 { font-size:17px; line-height:1.5; font-weight:550; margin-block:12px 9px; }
.overview-route p { font-size:12px; color:var(--muted); min-height:61px; margin-bottom:15px; }
.overview-route a { font-size:12px; color:var(--teal); }
.overview-question { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:50px; }
.overview-question blockquote { margin:0; padding:25px 28px; border-left:3px solid #b2c96e; background:#e6edda; font-size:23px; line-height:1.7; letter-spacing:-.4px; }
.overview-copy p { color:var(--muted); font-size:13px; line-height:1.95; }
.overview-flow { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; margin-top:35px; }
.overview-flow article { border-top:1px solid #afc2a4; padding-top:17px; min-width:0; }
.overview-flow .overview-step { font-size:10px; color:var(--teal); }
.overview-flow h3 { font-size:18px; line-height:1.5; font-weight:550; margin-block:12px; }
.overview-flow p { color:var(--muted); font-size:12px; }
.overview-small-note { font-size:11px; color:var(--muted); margin:24px 0 0; }
.overview-layers { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.overview-layer { display:flex; flex-direction:column; min-width:0; border:1px solid #cbd4c2; background:var(--paper-bright); border-radius:12px; padding:25px; }
.overview-layer-label { font-size:10px; color:var(--teal); letter-spacing:.4px; }
.overview-layer h3 { font-size:22px; font-weight:550; line-height:1.5; margin-block:14px 19px; }
.overview-layer dl { margin:0 0 20px; }
.overview-layer dl > div { padding-block:12px; border-top:1px solid #dde3d5; }
.overview-layer dt { font-size:10px; color:var(--teal); margin-bottom:5px; }
.overview-layer dd { margin:0; font-size:12px; color:var(--muted); line-height:1.9; }
.overview-layer a { font-size:11px; color:var(--teal); margin-top:auto; }
.overview-table-wrap { max-width:100%; overflow-x:auto; border:1px solid #c3cfb5; border-radius:9px; }
.overview-table { width:100%; min-width:700px; border-collapse:collapse; text-align:left; font-size:12px; }
.overview-table caption { text-align:left; padding:18px 19px; background:#e5ecd9; color:#4d6850; font-size:11px; }
.overview-table th,.overview-table td { padding:15px 18px; border-bottom:1px solid #d4dfc7; }
.overview-table th { font-size:11px; font-weight:550; color:#46644b; }
.overview-table td { color:#50664e; }
.overview-table td:not(:first-child),.overview-table th:not(:first-child) { text-align:center; }
.overview-table tbody tr:last-child td { border-bottom:0; }
.overview-table .overview-infeasible { background:#f0e7d9; }
.overview-table .overview-counterexample { background:#e7eddf; }
.overview-table .overview-counterexample td:nth-child(4) { color:#8c5131; }
.overview-verdict { display:grid; grid-template-columns:150px minmax(0,1fr); gap:25px; margin-top:26px; padding:27px; background:var(--navy); color:#e1ebd8; border-radius:11px; }
.overview-verdict-number { font-size:42px; color:var(--lime); line-height:1.3; letter-spacing:-1.5px; }
.overview-verdict-number small { display:block; color:#a9c098; font-size:10px; letter-spacing:0; margin-top:7px; }
.overview-verdict h3 { font-size:20px; font-weight:500; margin-bottom:12px; }
.overview-verdict p { color:#a6bca9; font-size:12px; margin-bottom:0; line-height:1.95; }
.overview-findings { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:30px; margin-top:28px; }
.overview-findings article { border-left:2px solid #a7bc92; padding-left:20px; }
.overview-findings h3 { font-size:17px; font-weight:550; }
.overview-findings p { font-size:12px; color:var(--muted); margin-bottom:0; }
.overview-contribution { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:45px; }
.overview-contribution article { min-width:0; }
.overview-contribution h3 { font-size:23px; font-weight:550; line-height:1.5; }
.overview-contribution p { font-size:13px; color:var(--muted); }
.overview-checklist { padding-left:18px; margin-bottom:0; }
.overview-checklist li { padding-block:7px; font-size:12px; color:var(--muted); }
.overview-faq { max-width:940px; }
.overview-faq details { border:0; border-top:1px solid #c4cfb8; border-radius:0; padding:0; background:transparent; margin:0; }
.overview-faq details:last-child { border-bottom:1px solid #c4cfb8; }
.overview-faq summary { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:22px 0; cursor:pointer; font-size:17px; list-style:none; font-weight:500; }
.overview-faq summary::-webkit-details-marker { display:none; }
.overview-faq summary::after { content:"＋"; color:var(--teal); font-size:18px; flex-shrink:0; }
.overview-faq details[open] summary::after { content:"−"; }
.overview-faq details p { max-width:790px; padding:0 26px 23px 0; margin:0; color:var(--muted); font-size:13px; line-height:1.95; }
.overview-next { background:var(--navy); color:var(--paper-bright); }
.overview-next .section-kicker { color:var(--lime); }
.overview-next .section-desc,.overview-next .overview-small-note { color:#a3b8aa; }
.overview-next .overview-flow article { border-color:#47625a; }
.overview-next .overview-flow .overview-step { color:#b7cf8a; }
.overview-next .overview-flow p { color:#a3b8aa; }
.overview-downloads { display:flex; gap:12px 24px; flex-wrap:wrap; margin-top:30px; }
.overview-downloads a { font-size:12px; color:var(--teal); }
.overview-entry { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); gap:35px; align-items:center; padding-block:24px 46px; border-top:1px solid var(--line); }
.overview-entry h2 { margin-bottom:13px; font-size:25px; font-weight:550; letter-spacing:-.6px; }
.overview-entry p { margin-bottom:0; font-size:12px; color:var(--muted); }
.overview-entry-links { display:flex; flex-wrap:wrap; gap:13px 25px; }
.overview-entry-links a { color:var(--teal); font-size:12px; }
@media(max-width:1000px) {
  .overview-hero { gap:35px; }
  .overview-route { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .overview-route li:nth-child(2) { border-right:0; }
  .overview-route li:nth-child(-n+2) { border-bottom:1px solid #c8d1bf; }
  .overview-layers { grid-template-columns:minmax(0,1fr); }
  .overview-layer { padding:27px; }
  .overview-layer dl { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
  .overview-layer h3 { font-size:23px; }
}
@media(max-width:850px) {
  .site-header .nav-link[href="overview.html"] { display:inline; font-size:11px; }
}
@media(max-width:720px) {
  .overview-hero { grid-template-columns:minmax(0,1fr); padding-block:43px; gap:32px; }
  .overview-hero h1 { font-size:39px; letter-spacing:-1.5px; }
  .overview-position { font-size:16px; }
  .overview-lead { font-size:13px; }
  .overview-map { padding:23px; }
  .overview-question,.overview-contribution,.overview-findings,.overview-entry { grid-template-columns:minmax(0,1fr); gap:25px; }
  .overview-question blockquote { font-size:21px; padding:22px; }
  .overview-flow { grid-template-columns:repeat(2,minmax(0,1fr)); gap:23px; }
  .overview-update .wrap { display:block; }
  .overview-update span { display:block; margin-bottom:7px; }
  .overview-verdict { grid-template-columns:minmax(0,1fr); gap:19px; padding:23px; }
  .overview-verdict-number small { display:inline; margin-left:12px; }
  .overview-route li { padding:20px; }
  .overview-route p { min-height:0; }
  .overview-layer dl { display:block; }
  .overview-layer { padding:23px; }
  .overview-faq summary { font-size:16px; }
  .overview-entry { padding-block:25px 33px; }
}
@media(max-width:650px) {
  .homepage .site-header .nav-link[href="scheduling.html"] { display:none; }
  .site-header .nav-link[href="overview.html"] { display:inline; font-size:11px; }
  .overview-page .site-header .nav { gap:13px; }
  .overview-page .site-header .nav-cta { padding:9px 11px; font-size:11px; }
  .overview-page .site-header .nav-link[href="#evidence-map"] { display:none; }
}
@media(max-width:380px) {
  .overview-hero h1 { font-size:34px; }
  .overview-actions .button { width:100%; }
  .overview-flow,.overview-route { grid-template-columns:minmax(0,1fr); }
  .overview-route li { border-right:0; border-bottom:1px solid #c8d1bf; }
  .overview-route li:last-child { border:0; }
  .overview-verdict-number small { display:block; margin-left:0; }
}
