.solutions-page{background:var(--bg)}
.solutions-hero{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--gutter);align-items:end;min-height:48vh;padding-top:clamp(64px,7vw,112px);padding-bottom:clamp(46px,5vw,76px)}
.solutions-hero__title{grid-column:1/span 6}.solutions-hero__copy{grid-column:7/-1;max-width:650px}
.solutions-hero__copy .lead{font-size:clamp(17px,1.25vw,21px);line-height:1.7;word-break:keep-all}
.solutions-hero__copy .copy{margin-top:22px;max-width:620px;word-break:keep-all}
.solutions-intro{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--gutter);padding-top:clamp(58px,6vw,96px);padding-bottom:clamp(58px,6vw,96px);border-top:1px solid var(--line)}
.solutions-intro>div:first-child{grid-column:1/span 5}.solutions-intro>div:last-child{grid-column:7/-1;max-width:670px}
.solutions-intro h2{max-width:11ch;margin:0;font-size:clamp(32px,3.2vw,52px);font-weight:500;line-height:1.08;letter-spacing:-.05em}
.solutions-list{border-top:1px solid var(--ink)}

/* Number and title share one visual axis. */
.solution-row{display:grid;grid-template-columns:minmax(280px,.85fr) minmax(0,1.35fr);grid-template-rows:auto auto;column-gap:clamp(56px,7vw,130px);row-gap:clamp(20px,2vw,30px);padding:clamp(38px,4vw,62px) 0;border-bottom:1px solid var(--line);align-items:start}
.solution-row__number{grid-column:1;grid-row:1;display:block;color:#888;font-size:11px;line-height:1;letter-spacing:.04em}
.solution-row__title{grid-column:1;grid-row:2;align-self:start}
.solution-row__title h2{max-width:14ch;margin:0;font-size:clamp(24px,2vw,32px);font-weight:500;line-height:1.18;letter-spacing:-.04em;word-break:keep-all;text-wrap:balance}
.solution-row__title p{margin:12px 0 0;color:#777;font-size:11px;line-height:1.6;letter-spacing:.01em}
.solution-row__body{grid-column:2;grid-row:2;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(190px,.8fr);gap:clamp(28px,3vw,54px);align-items:start}
.solution-row__body>p{margin:0;max-width:620px;font-size:14px;line-height:1.85;word-break:keep-all;text-wrap:pretty}
.solution-row__deliverables{display:grid;gap:7px;align-content:start;margin:0;padding:0;list-style:none;color:#676767;font-size:11.5px;line-height:1.5}
.solution-row__deliverables li{position:relative;padding-left:13px}.solution-row__deliverables li::before{position:absolute;left:0;top:.68em;width:4px;height:4px;border-radius:50%;background:#111;content:''}

.solutions-note{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--gutter);padding-top:clamp(70px,7vw,112px);padding-bottom:clamp(70px,7vw,112px);border-top:1px solid var(--line)}
.solutions-note>div:first-child{grid-column:1/span 5}.solutions-note>div:last-child{grid-column:7/-1;max-width:680px}.solutions-note h2{margin:0;font-size:clamp(30px,3vw,48px);font-weight:500;line-height:1.1;letter-spacing:-.05em}.solutions-note p{word-break:keep-all}

@media(max-width:1100px){
  .solution-row{grid-template-columns:minmax(230px,.8fr) minmax(0,1.25fr);column-gap:clamp(36px,5vw,72px)}
  .solution-row__body{grid-template-columns:1fr}
}
@media(max-width:980px){
  .solutions-hero__title{grid-column:1/span 5}.solutions-hero__copy{grid-column:6/-1}
}
@media(max-width:760px){
  .solutions-hero,.solutions-intro,.solutions-note{grid-template-columns:1fr}
  .solutions-hero{min-height:auto;padding-top:48px;gap:30px}
  .solutions-hero__title,.solutions-hero__copy,.solutions-intro>div:first-child,.solutions-intro>div:last-child,.solutions-note>div:first-child,.solutions-note>div:last-child{grid-column:1}
  .solutions-intro,.solutions-note{gap:28px}
  .solution-row{display:grid;grid-template-columns:1fr;grid-template-rows:auto;gap:0;padding:32px 0}
  .solution-row__number,.solution-row__title,.solution-row__body{grid-column:1;grid-row:auto}
  .solution-row__number{margin-bottom:22px}
  .solution-row__title{margin-bottom:26px}
  .solution-row__title h2{max-width:none;font-size:24px}
  .solution-row__body{gap:20px}
  .solution-row__body>p{font-size:13.5px;line-height:1.78}
}
