/* Progress: page composition; shared tokens, type, navigation and controls. */
.progress-hero{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);
  align-items:center;gap:clamp(32px,6vw,96px);
  background:radial-gradient(ellipse at 100% 0,rgba(16,169,183,.1),transparent 65%)}
.progress-hero .lead{max-width:49ch}
.progress-thread{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;
  margin-top:32px;font-family:var(--disp);font-size:16px;text-transform:uppercase}
.progress-thread span{color:var(--cyan-hi)}
.progress-topics{display:flex;flex-wrap:wrap;gap:0 28px;padding-block:12px;
  border-block:1px solid var(--line)}
.progress-topics a{display:flex;align-items:center;min-height:44px;font-size:14px;text-decoration:none}
.progress-topics a:hover{color:var(--cyan-hi);text-decoration:underline}
.progress-split,.progress-next{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
  align-items:center;gap:clamp(32px,5vw,80px);border-bottom:1px solid var(--line)}
.progress-split h2,.progress-photos h2,.progress-next h2{font-size:clamp(30px,3vw,44px);line-height:1.15}
.progress-split .text-link{margin-top:20px}
.progress-split .progress-list{margin:0}
.progress-list>div:first-child{border-top:0}
.progress-exercise{background:var(--panel)}
.progress-detail{min-width:0;padding-left:24px;border-left:2px solid var(--cyan)}
.progress-detail h3{font-size:25px;line-height:1.3}
.progress-detail p:not(.kicker){margin-top:16px;color:#D3DEE5;font-size:15px;max-width:52ch}
.progress-page .progress-note{margin-top:20px;color:var(--muted);font-size:14px;max-width:55ch}
.records-detail{border-color:#52636f}
.progress-measurements{align-items:start}
.measurement-fields dt{font-size:20px}
.progress-photos{border-top:0}
.progress-page .coach-section h2{font-size:clamp(30px,3vw,44px);line-height:1.15}
.progress-page .coach-copy>h3:first-child{margin-top:0}
.progress-page .coach-copy .text-link{margin-top:16px}
.privacy-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
  gap:clamp(28px,5vw,80px);margin-top:32px}
.privacy-columns article{min-width:0;border-top:1px solid var(--line);padding-top:20px}
.privacy-columns h3{font-size:24px;line-height:1.3}
.privacy-columns p{font-size:15px;color:var(--muted);max-width:52ch;margin-top:14px}
.progress-privacy>.text-link{margin-top:20px}
.progress-next{border-top:1px solid var(--line);align-items:start;background:var(--panel)}
.progress-next .text-link{margin-top:24px}
.progress-return{list-style:none;padding:0;margin:0;counter-reset:return}
.progress-return li{position:relative;counter-increment:return;
  padding:0 0 24px 52px;border-left:1px solid var(--line);margin-left:15px}
.progress-return li:last-child{padding-bottom:0;border-left-color:transparent}
.progress-return li::before{content:'0' counter(return);position:absolute;left:-16px;top:0;
  width:32px;background:var(--panel);color:var(--cyan-hi);font-family:var(--disp);font-size:20px}
.progress-return h3{font-size:23px;line-height:1.3}
.progress-return p{margin-top:6px;font-size:14px;color:var(--muted);max-width:43ch}
@media (max-width:900px){
  .progress-hero{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:28px}
  .progress-split,.progress-next{grid-template-columns:1fr;gap:28px}
  .progress-photos{grid-template-columns:1fr;gap:28px}
  .progress-photos .product-media{order:0}
  .progress-detail{max-width:650px}
  .progress-list dd{max-width:60ch}
}
@media (max-width:600px){
  .progress-hero{grid-template-columns:1fr}
  .progress-topics{display:grid;grid-template-columns:1fr;gap:0;padding-block:12px}
  .progress-thread{font-size:15px;gap:6px 10px;margin-top:24px}
  .privacy-columns{grid-template-columns:1fr;gap:24px;margin-top:24px}
  .progress-detail{padding-left:18px}
  .progress-return li{padding-left:40px}
  .progress-return h3{font-size:22px}
}
