/* Service section rhythm and semantic step infographic. */
.sl-page #result.sl-section { padding-block:32px 20px; }
.sl-page #result .sl-section-head { margin-bottom:20px; }
.sl-page #result .sl-check-list { margin:0; }
.sl-page #result + #faq.sl-section { padding-top:28px; }
.sl-page .sl-works:empty { display:none; }
.sl-page .sl-process.sl-process--cards { grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; max-width:980px; margin-inline:auto; }
.sl-page .sl-process--cards > li { position:relative; display:flex; flex-direction:column; align-items:flex-start; justify-content:flex-start; aspect-ratio:1; min-width:0; padding:24px; border:1px solid #dedede; border-radius:16px; background:#fff; }
.sl-page .sl-process--cards .sl-step-top { display:flex; align-items:center; justify-content:space-between; width:100%; margin-bottom:26px; }
.sl-page .sl-process--cards .sl-step-number { color:#995000; font-size:13px; font-weight:700; letter-spacing:.05em; }
.sl-page .sl-process--cards .sl-step-icon { display:grid; place-items:center; width:64px; height:64px; border-radius:16px; color:#995000; background:#fff0df; }
.sl-page .sl-process--cards svg { width:30px; height:30px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.sl-page .sl-process--cards h3 { max-width:100%; font-size:20px; line-height:1.25; margin:0 0 12px; }
.sl-page .sl-process--cards p { max-width:100%; font-size:14px; line-height:1.6; }
@media(max-width:1000px) { .sl-page .sl-process.sl-process--cards { grid-template-columns:repeat(2,minmax(0,1fr)); max-width:680px; } }
@media(max-width:600px) {
    .sl-page .sl-process.sl-process--cards { gap:16px; grid-template-columns:minmax(0,1fr); max-width:400px; }
    .sl-page .sl-process--cards > li { padding:20px; }
    .sl-page .sl-process--cards .sl-step-top { margin-bottom:20px; }
    .sl-page .sl-process--cards .sl-step-icon { width:52px; height:52px; }
    .sl-page .sl-process--cards h3 { font-size:20px; }
    .sl-page .sl-process--cards p { font-size:15px; }
    .sl-page #result.sl-section { padding-block:28px 16px; }
    .sl-page #result + #faq.sl-section { padding-top:24px; }
}
