.project-context,
.project-model-intro {
  box-sizing: border-box;
  border: 1px solid var(--line, rgba(128,128,128,.35));
  border-radius: 16px;
  background: var(--glass, rgba(128,128,128,.06));
  padding: clamp(18px, 3.4vw, 36px);
  text-align: start;
  min-width: 0;
}
.project-context {
  margin-block: clamp(16px, 3vw, 42px);
  scroll-margin-top: 100px;
}
.project-context h2,
.project-model-intro h3 {
  margin: 0 0 1rem;
  letter-spacing: -.025em;
  line-height: 1.2;
  overflow-wrap: anywhere;
}
.project-context h2 {font-size: clamp(1.4rem, 3.3vw, 2.1rem);}
.project-context-points {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: clamp(20px, 4vw, 48px);
  row-gap: 1rem;
  margin: 0;
}
.project-context-points > div {border-top: 1px solid var(--line, rgba(128,128,128,.32)); padding-top: .72rem;}
.project-context-points dt {font-weight: 700; line-height: 1.35;}
.project-context-points dd {margin: .32rem 0 0; line-height: 1.55; overflow-wrap: anywhere;}
.project-context-value {
  border-inline-start: 3px solid var(--accent, #ad855d);
  padding: .25rem 0 .25rem 1rem;
  margin-top: 1.4rem;
}
.project-context-value h3 {margin: 0; font-size: 1rem; line-height: 1.35;}
.project-context-value p {margin: .35rem 0 0; line-height: 1.45;}
.project-context-value .project-context-range {font-size: clamp(1.34rem, 3vw, 1.95rem); font-weight: 700;}
.project-context-value .project-context-note {font-size: .9em;}
.project-context-refs {display: flex; gap: .4rem 1rem; flex-wrap: wrap; margin: 1rem 0 0; font-size: .88em;}
.project-context-refs a,
.project-model-market a {text-decoration: underline; text-underline-offset: .18em;}
.project-model-intro {margin: 1rem 0 1.5rem; grid-column: 1 / -1;}
.project-model-intro h3 {margin-bottom: .4rem; font-size: clamp(1.08rem, 2vw, 1.4rem);}
.project-model-intro p {margin: .45rem 0 .8rem;}
.project-model-intro details {border-top: 1px solid var(--line, rgba(128,128,128,.32));}
.project-model-intro summary {cursor: pointer; font-weight: 650; padding: .64rem 0; line-height: 1.35;}
.project-model-intro .project-context-points {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  padding-bottom: 1rem;
  font-size: .95em;
}
.project-model-intro .project-context-points > div {border: 0; padding-top: .2rem;}
.project-model-intro .project-model-market,
.project-report-context .project-model-market {margin: 1rem 0 0;}
.project-report-context {margin-block: 1.4rem;}
.project-report-context .project-context-points {grid-template-columns: 1fr;}
@media (max-width: 680px) {
  .project-context .project-context-points,
  .project-model-intro .project-context-points {grid-template-columns: 1fr;}
}
