/* Overview page */
.hero{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(28px,5vw,72px);align-items:center;padding-block:clamp(40px,7vw,88px) clamp(40px,6vw,72px)}
.hero h1{font-stretch:66%;font-weight:800;font-size:clamp(2.6rem,6.4vw,5rem);line-height:.96;letter-spacing:-.012em;max-width:13ch}
.lede{font-size:1.15rem;color:var(--muted);max-width:52ch;margin-top:24px}
.hero-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.resume{margin-top:16px;font-size:.95rem}

.clock{background:var(--sheet);border:1px solid var(--line);border-top:6px solid var(--accent);border-radius:4px 4px 6px 6px;padding:24px clamp(20px,3vw,28px)}
.clock h2{font-stretch:80%;font-size:1.3rem;margin-bottom:16px}
.clock label{display:block;font-weight:600;font-size:.92rem;margin-bottom:6px}
.clock input{font:inherit;font-size:1rem;padding:10px 12px;border:1.5px solid var(--line);border-radius:4px;background:var(--paper);color:var(--ink);width:100%;max-width:240px}
.clock-lead{margin-top:20px;color:var(--muted);font-size:.95rem}
.clock-date{font-family:var(--display);font-stretch:70%;font-weight:800;font-size:clamp(2rem,4.4vw,2.9rem);line-height:1.1;margin-top:2px}
.clock-left{font-weight:600;margin-top:6px;font-size:.95rem}
.clock-more{display:grid;grid-template-columns:auto minmax(0,1fr);gap:6px 14px;margin:20px 0 0;padding-top:16px;border-top:1px solid var(--line);font-size:.88rem}
.clock-more dt{font-weight:600;white-space:nowrap}
.clock-more dd{margin:0;color:var(--muted)}
.clock-note{font-size:.8rem;color:var(--muted);margin-top:16px}

.band{background:var(--sheet);border-block:1px solid var(--line);padding-block:clamp(40px,6vw,64px)}
.sec-title{font-stretch:75%;font-weight:800;font-size:clamp(1.7rem,3.4vw,2.4rem)}
.outcome-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(20px,4vw,48px);margin-top:28px}
.outcome-grid h3{font-stretch:82%;font-size:1.3rem;margin-bottom:8px}
.outcome-grid p{color:var(--muted)}

#modules{padding-block:clamp(48px,7vw,80px) 0}
.sec-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:end;gap:8px 32px;margin-bottom:28px}
.sec-head p{color:var(--muted);max-width:46ch}
.units{display:flex;flex-direction:column;border-top:2px solid var(--ink)}
.unit{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:16px 32px;padding-block:22px;border-bottom:1px solid var(--line)}
.unit-no{color:var(--muted);font-size:.9rem}
.unit-head h3{font-stretch:78%;font-size:1.5rem;margin-top:2px}
.unit-min{color:var(--muted);font-size:.9rem;margin-top:6px}
.unit-mods{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.unit-mods a{display:grid;grid-template-columns:2.4rem minmax(0,1fr) auto;gap:12px;align-items:baseline;padding:9px 8px;border-radius:4px;color:var(--ink);text-decoration:none}
.unit-mods a:hover{background:var(--sheet)}
.unit-mods a:hover .mod-title{text-decoration:underline;text-underline-offset:.18em}
.mod-no{color:var(--muted);font-size:.9rem}
.mod-title{font-weight:500}
.mod-min{color:var(--muted);font-size:.88rem}
.unit-mods li.done .mod-min{color:var(--good);font-weight:600}

.who{padding-block:clamp(48px,7vw,80px) 0}
.who-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(20px,4vw,48px);margin-top:28px}
.who-grid h3{font-stretch:82%;font-size:1.3rem;margin-bottom:8px}
.who-grid p{color:var(--muted)}
.facts{background:var(--accent-soft);padding:20px 22px;border-radius:4px}
.facts ul{margin:0;padding-left:1.1rem;display:flex;flex-direction:column;gap:6px}

@media (max-width:900px){
  .hero{grid-template-columns:1fr}
  .outcome-grid,.who-grid{grid-template-columns:1fr}
  .unit{grid-template-columns:1fr}
}
