.problem.turning-point {
  max-width: none;
  margin: 0;
  padding: 82px clamp(24px, 4vw, 88px) 36px;
  background: #f8f7f2;
}
.turning-point .section-kicker {
  padding-bottom: 20px;
  margin-bottom: 40px;
  border-bottom: 1px solid #d7dcd0;
}
.turning-point .section-number { font-size: 16px; letter-spacing: 1.2px; color: #58634d; }
.turning-point-aside { color: #7b8670; font-size: 12px; letter-spacing: 1px; }
.turning-point .problem-heading { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 50px; align-items: center; }
.turning-point .problem-heading h2 { font-size: clamp(46px, 4.7vw, 72px); letter-spacing: -.035em; line-height: 1.06; }
.turning-point .problem-heading h2 em { color: #3454c6; }
.turning-point .problem-heading > p { margin: 0; padding: 0 0 0 24px; border-left: 2px solid #b4c4ed; font-size: 17px; line-height: 1.75; color: #69745f; }
.turning-point .problem-heading strong { color: #343e2d; font-weight: 500; }
.turning-point .problem-cards { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; border: 0; margin-top: 48px; }
.turning-point .problem-cards article,
.turning-point .problem-cards article + article {
  padding: 25px 26px 29px;
  border: 1px solid #dce1d6;
  border-radius: 12px;
  background: #fdfcf8;
  overflow: hidden;
}
.turning-point .problem-cards .break-card { background: linear-gradient(145deg, #fdfcf8 30%, #f6f0e8); }
.turning-point .problem-cards .context-card { background: linear-gradient(145deg, #fdfcf8 30%, #edf0f6); }
.turning-point .problem-cards .uncertainty-card { background: linear-gradient(145deg, #fdfcf8 30%, #eef1e6); }
.problem-card-label { display: flex; align-items: center; gap: 11px; font-size: 11px; letter-spacing: .8px; color: #727e65; }
.turning-point .card-index { position: static; font-size: 12px; color: #4a5740; }
.turning-visual { height: 178px; position: relative; margin: 15px 0 26px; display: flex; justify-content: center; align-items: center; }
.problem-card-copy { position: relative; border-top: 1px solid #dfe3d7; padding-top: 23px; }
.turning-point .problem-cards h3 { font-size: clamp(26px, 2vw, 34px); line-height: 1.14; letter-spacing: -.4px; margin: 0 0 13px; }
.turning-point .problem-cards p { max-width: 380px; font-size: 16px; line-height: 1.75; color: #69745f; }
.feature-paper { position: relative; width: 138px; padding: 15px 12px 11px; border: 1px solid #d0dbef; border-radius: 7px; background: #f3f6fe; box-shadow: 0 9px 15px #4a5b7310; z-index: 1; }
.paper-caption { display: block; font-size: 9px; letter-spacing: .6px; color: #7c8fae; margin-bottom: 11px; }
.feature-paper b { display: flex; align-items: center; justify-content: space-between; gap: 6px; font-size: 12px; color: #5e73a5; font-weight: 500; white-space: nowrap; }
.feature-paper b i { font-style: normal; font-size: 14px; }
.paper-line { display: block; height: 4px; border-radius: 2px; background: #d7e1f6; margin-top: 13px; width: 85%; }
.paper-line.short { width: 58%; margin-top: 6px; }
.paper-status { display: block; font-size: 10px; color: #7a8eaf; margin-top: 13px; }
.new-feature { transform: rotate(-7deg) translate(-5px, -7px); }
.old-feature { transform: rotate(6deg) translate(5px, 12px); border-color: #e0cbb8; background: #fcf7ef; }
.old-feature .paper-caption { color: #b09a82; }
.old-feature b { color: #9f7d59; }
.old-feature .paper-line { background: #eadcc8; }
.old-feature .paper-status { color: #a68661; }
.old-feature .paper-status i { display: inline-grid; place-items: center; width: 11px; height: 11px; margin-right: 3px; border-radius: 50%; background: #eadcc4; font-style: normal; }
.change-connector { position: absolute; width: 62px; top: 52%; border-top: 1px dashed #bdc4b4; }
.context-paper { position: absolute; width: 216px; border: 1px solid #d3dace; border-radius: 7px; padding: 15px 17px; background: #f1f3eb; box-shadow: 0 7px 13px #5265440b; }
.context-paper > span:not(.memo-dot) { display: block; font-family: var(--serif); font-size: 21px; color: #89967b; }
.memo-dot { display: block; width: 6px; height: 6px; border-radius: 50%; background: #a1ae92; margin-bottom: 12px; }
.memo-line { display: block; height: 3px; width: 80%; background: #d6ddcb; border-radius: 2px; margin-top: 11px; }
.memo-line.short { width: 50%; margin-top: 6px; }
.past-context { transform: translate(-14px, -13px) rotate(-7deg); }
.next-context { transform: translate(15px, 18px) rotate(5deg); background: #fffefa; border-color: #d7ddec; }
.next-context > span:not(.memo-dot) { color: #5f6c8a; }
.next-context .memo-dot { background: #93a8d5; }
.next-context .memo-line { background: #dce2f0; }
.context-paper b { position: absolute; right: 14px; bottom: 12px; font-size: 9px; font-weight: 400; color: #8293b0; }
.context-paper .paper-caption { margin-bottom: 9px; color: #8a997a; }
.past-context > span:not(.memo-dot) { color: #6b7f57; }
.intent-change { background: #fff9ee; border-color: #e2d4bd; }
.intent-change > span:not(.memo-dot), .intent-change b { color: #a08860; }
.intent-change .paper-caption { color: #af9b78; }
.intent-change .memo-line { background: #e9dec9; }
.growth-project { width: 248px; padding: 15px 14px 22px; border: 1px solid #d6dfcb; background: #f5f8ee; border-radius: 7px; transform: translate(-10px, -14px) rotate(-4deg); box-shadow: 0 8px 16px #596a4210; }
.growth-caption { display: block; font-size: 9px; letter-spacing: .7px; color: #8e9c7f; margin-bottom: 13px; }
.growth-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 7px; }
.growth-grid span { padding: 10px 4px; text-align: center; font-size: 9px; color: #81936b; border: 1px solid #dce5d1; border-radius: 4px; background: #fcfdf8; white-space: nowrap; }
.rebuild-note { position: absolute; width: 160px; padding: 13px 16px; background: #fffaf2; border: 1px solid #e5d7bd; border-radius: 6px; transform: rotate(5deg); right: 10px; bottom: 2px; box-shadow: 0 8px 16px #8b754619; }
.rebuild-caption { display: block; color: #af9c7c; font-size: 8px; letter-spacing: .4px; }
.rebuild-question { display: block; font-family: var(--serif); font-size: 27px; color: #9a805a; margin-top: 7px; }
.rebuild-line { display: block; margin-top: 9px; width: 65%; height: 3px; border-radius: 2px; background: #ebdfca; }
.confidence-paper { width: 250px; border: 1px solid #d8dfca; background: #fcfdf7; border-radius: 7px; box-shadow: 0 7px 17px #596a4210; padding: 13px 14px 6px; transform: rotate(-2deg); }
.confidence-paper-top { display: flex; justify-content: space-between; align-items: center; color: #6d7f5f; font-size: 11px; padding-bottom: 12px; border-bottom: 1px solid #e4e9da; }
.confidence-paper-top i { font-style: normal; letter-spacing: 2px; font-size: 6px; color: #a7b39b; }
.confidence-item { display: flex; align-items: center; gap: 8px; padding: 10px 0; font-size: 12px; color: #6c7c5e; }
.confidence-check { display: inline-grid; place-items: center; width: 17px; height: 17px; border-radius: 50%; background: #e6eddc; color: #839a68; font-size: 9px; flex-shrink: 0; }
.confidence-item i { font-style: normal; font-size: 10px; color: #879675; margin-left: auto; }
.confidence-item.uncertain { border-top: 1px dashed #dedfcd; color: #a08e69; }
.uncertain .confidence-check { background: #f0eadc; color: #aa946d; }
.uncertain i { color: #b4a27e; }
.turning-point-close { display: block; text-align: center; padding: 38px 0 0; margin-top: 34px; border-top: 0; }
.turning-point-close p { max-width: 1000px; margin: 0 auto; font-family: var(--serif); font-size: clamp(28px, 2.7vw, 38px); line-height: 1.25; letter-spacing: -.3px; color: #48523f; }
.turning-point-close em { color: #3e5bc1; margin-left: 10px; }
@media (min-width: 1700px) {
  .turning-point .problem-cards article,
  .turning-point .problem-cards article + article { padding: 29px 36px 35px; }
  .turning-point .problem-cards p { font-size: 16px; }
  .turning-visual { height: 210px; }
}
@media (max-width: 1080px) {
  .turning-point .problem-heading { gap: 25px; }
  .turning-point .problem-heading h2 { font-size: 48px; }
  .turning-point .problem-heading > p { font-size: 16px; padding-left: 17px; }
  .turning-point .problem-cards { gap: 13px; }
  .turning-point .problem-cards article,
  .turning-point .problem-cards article + article { padding: 22px 18px 25px; }
  .problem-card-label { font-size: 10px; letter-spacing: .5px; gap: 8px; }
  .feature-paper { width: 118px; padding: 12px 9px; }
  .feature-paper b { font-size: 11px; }
  .context-paper { width: 185px; }
  .context-paper > span:not(.memo-dot) { font-size: 20px; }
  .confidence-paper { width: 220px; }
  .confidence-item { font-size: 11px; gap: 6px; }
}
@media (max-width: 760px) {
  .problem.turning-point { padding: 48px 20px 28px; }
  .turning-point .section-kicker { margin-bottom: 27px; padding-bottom: 17px; }
  .turning-point .section-number { font-size: 13px; letter-spacing: 1px; }
  .turning-point-aside { display: none; }
  .turning-point .problem-heading { display: block; }
  .turning-point .problem-heading h2 { font-size: clamp(36px, 10vw, 48px); line-height: 1.08; }
  .turning-point .problem-heading > p { margin-top: 25px; padding-left: 17px; font-size: 15px; line-height: 1.75; }
  .turning-point .problem-cards { grid-template-columns: 1fr; gap: 16px; margin-top: 30px; }
  .turning-point .problem-cards article,
  .turning-point .problem-cards article + article { padding: 22px 24px 26px; min-height: 0; }
  .problem-card-label { font-size: 11px; letter-spacing: .6px; }
  .turning-visual { height: 173px; margin: 12px 0 23px; }
  .feature-paper { width: 130px; }
  .feature-paper b { font-size: 12px; }
  .context-paper { width: 210px; }
  .context-paper > span:not(.memo-dot) { font-size: 20px; }
  .confidence-paper { width: 250px; }
  .confidence-item { font-size: 12px; }
  .turning-point .problem-cards h3 { font-size: 28px; line-height: 1.13; }
  .turning-point .problem-cards p { font-size: 15px; line-height: 1.75; }
  .problem-card-copy { padding-top: 22px; }
  .turning-point-close { margin-top: 26px; padding-top: 30px; }
  .turning-point-close p { font-size: 28px; line-height: 1.2; }
  .turning-point-close em { display: block; margin: 4px 0 0; }
}
