/* Optional summary: Epson/Mikuni/Shinmei approved; new articles can supply it. */
.case-company-profile:has(+ .case-summary) { margin-bottom:24px; }
.case-summary { margin:0 0 52px; padding:28px 32px 30px; background:#fff; border:1px solid #d3dfd5; border-radius:4px; scroll-margin-top:96px; }
.case-summary>h2 { margin:0 0 24px; font-size:20px; font-weight:600; line-height:1.6; color:var(--deep); }
.case-summary-grid { display:grid; grid-template-columns:1fr 1fr; gap:32px; }
.case-summary-grid>div { min-width:0; }
.case-summary h3 { font-size:14px; font-weight:600; line-height:1.7; margin:0 0 12px; }
.case-summary-before h3 { color:var(--muted); }
.case-summary-after h3 { color:#087e61; }
.case-summary-points { margin:0; padding-left:1.2em; font-size:15px; line-height:1.9; color:#354f43; overflow-wrap:anywhere; }
.case-summary-points li { padding-left:3px; }
.case-summary-points li+li { margin-top:10px; }
.case-summary-before li::marker { color:#7c9285; }
.case-summary-after li::marker { color:#087e61; }
.case-summary-after { padding-left:32px; border-left:1px solid #dce5dc; }
.case-summary-outcomes { display:grid; grid-template-columns:minmax(0,1fr); gap:10px; margin:20px 0 0; }
.case-summary-outcome { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:8px 16px; margin:0; padding:14px 16px; background:#eef5e9; border-radius:3px; }
.case-summary-outcome dt { font-size:12px; line-height:1.7; color:#354f43; }
.case-summary-outcome dd { display:flex; align-items:baseline; gap:8px; margin:0; color:#087e61; white-space:nowrap; }
.case-summary-outcome strong { font-family:Arial,sans-serif; font-size:36px; line-height:1; font-weight:500; letter-spacing:-.04em; }
.case-summary-outcome strong span { font-size:19px; margin-left:3px; letter-spacing:0; }
.case-summary-outcome dd>span { font-size:14px; font-weight:500; }

/* Design-review context lives outside the reusable summary component. */
.case-summary-preview .case-company-profile { margin-bottom:24px; scroll-margin-top:96px; }
.case-summary-preview-note { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:8px 20px; margin:0 0 12px; color:var(--muted); font-size:11px; line-height:1.8; }
.case-summary-preview-note a { text-underline-offset:3px; }
@media (max-width:980px) {
 .case-summary { padding:26px; margin-bottom:36px; }
 .case-summary-grid { gap:24px; }
 .case-summary-after { padding-left:24px; }
}
@media (max-width:700px) {
 .case-summary { padding:22px 20px; margin-bottom:28px; scroll-margin-top:84px; }
 .case-summary>h2 { font-size:19px; margin-bottom:22px; }
 .case-summary-grid { display:block; }
 .case-summary-after { margin-top:22px; padding:22px 0 0; border-left:0; border-top:1px solid #dce5dc; }
 .case-summary h3 { margin-bottom:8px; }
 .case-summary-points { font-size:14px; }
 .case-summary-outcomes { margin-top:20px; }
 .case-summary-preview .case-company-profile { scroll-margin-top:84px; }
}
@media (max-width:380px) {
 .case-summary-outcome dt { flex-basis:100%; }
 .case-summary-outcome dd { margin-right:auto; }
}
@media print {
 .case-summary-preview-note { display:none; }
 .case-summary { break-inside:avoid; }
}
