.volti-page { --case-surface: #eef5f1; }
.volti-page .volti-intro { grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: center; gap: clamp(24px,4.5vw,64px); }
.volti-intro .case-figure { margin: 0; }
.volti-intro .case-copy { margin-top: 22px; max-width: 39ch; }
.volti-intro .text-link, .volti-open-page { margin-top: 24px; }
.volti-open-page { background: transparent; border: 0; border-bottom: 1px solid var(--ink); }
.volti-open-page .icon-ui { width: 20px; height: 20px; }
.volti-section + .volti-section, .volti-end { border-top: 1px solid var(--line); }
.volti-page .case-image-button { background: #fff; }
.volti-page .case-image-button img { transform: none; }
.volti-balanced-pair { display: grid; grid-template-columns: 1.595fr 1fr; gap: clamp(20px,3vw,36px); margin-top: 44px; align-items: start; }
.volti-balanced-pair .case-figure, .volti-mobile-grid .case-figure { margin: 0; }
.volti-subheading { margin-top: clamp(60px,8vw,104px); }
.volti-subheading h3 { font-size: clamp(26px,2.7vw,36px); line-height: 1.18; letter-spacing: -.04em; }
.volti-wide { max-width: 1000px; margin-inline: auto; }
.volti-mobile-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: clamp(20px,3vw,36px); max-width: 1000px; margin: 44px auto 0; }
.volti-mobile-grid .case-image-button { aspect-ratio: 360 / 640; display: flex; align-items: flex-start; }
.volti-mobile-grid img { height: 100%; object-fit: contain; object-position: top; }
.volti-icon-board { list-style: none; padding: clamp(28px,4vw,56px); margin: 44px 0 0; display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 40px 24px; border: 1px solid var(--case-line); border-radius: 18px; }
.volti-icon-board li { display: flex; flex-direction: column; align-items: center; gap: 14px; text-align: center; }
.volti-icon-board img { display: block; width: 100px; max-width: 100%; height: 60px; object-fit: contain; }
.volti-icon-board span { font-size: 12px; line-height: 1.5; color: var(--muted); }
.volti-pattern { margin-top: 48px; }
.volti-pattern .case-image-button { background: #071426; border: 0; }
.volti-page .image-dialog:not(.is-zoomed) .dialog-stage > img { width: 100%; max-height: none; }
.volti-end { padding-block: 36px 64px; }
.volti-end .case-end { margin-top: 0; }
@media(max-width:760px) {
 .volti-page .volti-intro { grid-template-columns: 1fr; gap: 30px; }
 .volti-balanced-pair { grid-template-columns: 1fr; gap: 36px; margin-top: 28px; }
 .volti-mobile-grid { grid-template-columns: minmax(0,1fr); max-width: 360px; gap: 32px; margin-top: 28px; }
 .volti-mobile-grid .case-image-button { aspect-ratio: auto; }
 .volti-mobile-grid img { height: auto; }
 .volti-icon-board { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 30px 18px; margin-top: 28px; border-radius: 12px; }
 .volti-end { padding-block: 30px 48px; }
}
