/* Example week */
.training-block {
  padding-top: clamp(112px, 13vw, 196px);
  padding-bottom: clamp(126px, 15vw, 224px);
  color: var(--ink);
  background: var(--ice);
}
.training-block-heading {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(280px, 0.55fr);
  gap: clamp(34px, 8vw, 140px);
  align-items: end;
}
.training-block-heading h2 {
  max-width: 850px;
  font-size: var(--display-size);
  line-height: 0.98;
  letter-spacing: -0.052em;
  font-weight: 420;
}
.training-block-heading > p:last-child {
  max-width: 510px;
  color: var(--muted);
  font-size: var(--body-copy-size);
  line-height: 1.45;
  letter-spacing: -0.018em;
}
.week-strip {
  margin-top: clamp(100px, 12vw, 176px);
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  gap: 4px;
}
.week-strip article {
  min-height: 230px;
  padding: 17px;
  display: flex;
  flex-direction: column;
  border: 0;
  border-radius: var(--card-radius);
  background: var(--surface-soft);
}
.week-strip article.is-training {
  background: var(--surface-strong);
}
.week-strip article.is-rest {
  opacity: 0.56;
}
.week-strip span {
  color: var(--quiet);
  font-size: 9px;
  letter-spacing: 0.075em;
  text-transform: uppercase;
}
.week-strip .is-training span {
  color: var(--muted);
}
.week-strip .is-training small {
  color: var(--muted);
}
.week-strip strong {
  margin-top: auto;
  font-size: 17px;
  line-height: 1.05;
  letter-spacing: -0.025em;
  font-weight: 430;
}
.week-strip small {
  margin-top: 8px;
  color: var(--quiet);
  font-size: 9px;
  line-height: 1.35;
}
.block-summary {
  margin-top: 4px;
  display: grid;
  grid-template-columns: repeat(3, 1fr) minmax(280px, 1.45fr);
  gap: 3px;
}
.block-summary > div,
.block-summary > p {
  min-height: 110px;
  padding: 17px;
  border-radius: var(--card-radius);
  background: var(--surface-soft);
}
.block-summary > div {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.block-summary span {
  font-size: 30px;
  line-height: 1;
  letter-spacing: -0.04em;
}
.block-summary small {
  color: var(--quiet);
  font-size: 9px;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}
.block-summary > p {
  display: flex;
  align-items: flex-end;
  color: var(--muted);
  font-size: 11px;
  line-height: 1.45;
}
