.sm-case-detail__main-photo { display:block; width:100%; aspect-ratio:3/2; margin:0 0 36px; padding:0; overflow:hidden; border-radius:14px; background:transparent; }
.sm-case-detail__main-photo img { display:block; width:100%; max-width:none; height:100%; object-fit:cover; object-position:center center; }
.sm-case-detail__main-photo--position-top img { object-position:center top; }
.sm-case-detail__main-photo--position-center img { object-position:center center; }
.sm-case-detail__main-photo--position-bottom img { object-position:center bottom; }
.sm-case-detail__section { margin:0 0 48px; }
.sm-case-detail__section > h2 { margin:0 0 22px; padding:0 0 12px 16px; border-left:5px solid var(--sm-color-primary,#087b48); border-bottom:1px solid #cddbd3; color:#073e2c; font-size:clamp(24px,2.4vw,32px); line-height:1.4; }
.sm-case-detail__section p { color:#111; font-size:16px; line-height:1.9; }
.sm-case-detail__facts { margin:0; border-top:1px solid #d8e0db; }
.sm-case-detail__facts > div { display:grid; grid-template-columns:minmax(120px,30%) 1fr; border-bottom:1px solid #d8e0db; }
.sm-case-detail__facts dt,.sm-case-detail__facts dd { margin:0; min-width:0; padding:14px 16px; font-size:16px; line-height:1.65; overflow-wrap:anywhere; word-break:break-word; }
.sm-case-detail__facts dt { background:#edf6f0; color:#073e2c; font-weight:700; }
.sm-case-detail__comparison { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.sm-case-detail__comparison figure,.sm-case-detail__photo-card { margin:0; }
.sm-case-detail__comparison figcaption { display:inline-block; margin:0 0 8px; padding:5px 12px; background:#087b48; color:#fff; font-weight:700; }
.sm-case-detail__comparison img { display:block; width:100%; aspect-ratio:3/2; height:auto; object-fit:cover; border-radius:10px; }
.sm-case-detail__photo-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; align-items:stretch; }
.sm-case-detail__photo-card { display:flex; flex-direction:column; min-width:0; padding:0; border:1px solid #d8e0db; border-radius:4px; background:#fff; overflow:hidden; }
.sm-case-detail__photo-media { width:100%; aspect-ratio:3/2; overflow:hidden; background:transparent; flex:0 0 auto; }
.sm-case-detail__photo-media img { display:block; width:100%; max-width:none; height:100%; object-fit:cover; object-position:center center; }
.sm-case-detail__photo-card figcaption { flex:1 1 auto; padding:12px 14px; color:#222; font-size:15px; line-height:1.7; overflow-wrap:anywhere; }
@media (max-width:767px) {
    .sm-case-detail__main-photo { margin-bottom:28px; border-radius:10px; }
    .sm-case-detail__section { margin-bottom:38px; }
    .sm-case-detail__comparison,.sm-case-detail__photo-grid { grid-template-columns:1fr; }
    .sm-case-detail__facts > div { grid-template-columns:110px minmax(0,1fr); }
    .sm-case-detail__facts dt,.sm-case-detail__facts dd { padding:12px 10px; font-size:15px; overflow-wrap:anywhere; }
}
