/* V32: image-led service pages, from introduction through questions. */
.visual-service{background:#eaf6ef}
.visual-service .inner-hero{background:linear-gradient(125deg,#e5f3e9,#d5e9df);padding:28px 0}
.service-intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:center}
.visual-service .inner-hero h1{font-size:clamp(28px,3vw,39px);line-height:1.16;margin:14px 0 18px;letter-spacing:-1px}
.visual-service .inner-hero p{font-size:16px;line-height:1.65;margin:0;max-width:520px}
.service-intro-art{position:relative;margin:0;padding-bottom:14px}
.service-intro-art img{display:block;width:100%;height:280px;object-fit:cover;border-radius:20px 55px 20px 20px}
.service-intro-art figcaption{position:absolute;bottom:0;left:16px;background:#fff0ca;padding:9px 16px;border-radius:9px;color:#385b50;font-size:12px;box-shadow:0 5px 15px #204e3915}
.visual-service .section{padding-top:32px;padding-bottom:32px}
.visual-service .section h2{font-size:27px;line-height:1.2;letter-spacing:-.5px}
.planning-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:32px;align-items:center}
.planning-layout figure{margin:0}
.planning-layout figure img{width:100%;height:320px;object-fit:cover;border-radius:32px 14px 32px 14px;display:block}
.planning-points{display:grid;gap:12px}
.planning-points .card{background:transparent;box-shadow:none;border:0;border-left:3px solid #b7994e;border-radius:0;padding:0 0 0 16px}
.planning-points h3{font-size:17px;margin:0 0 5px}.planning-points p{font-size:14px;line-height:1.6;margin:0}
.visual-service .nest-section{background:#e3ede1}
.process-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:32px;align-items:center}
.process-layout>img{display:block;width:100%;height:300px;object-fit:cover;border-radius:18px}
.process-layout .steps{display:grid;grid-template-columns:1fr;gap:12px}
.process-layout .steps article{padding:0 0 10px;background:transparent;border:0;border-bottom:1px solid #c4d7c4;border-radius:0}
.process-layout .steps h3{font-size:17px;margin:3px 0}.process-layout .steps p{font-size:14px;line-height:1.6;margin:0}.process-layout .process-label{font-size:11px}
.visual-service .visual-faq{background:transparent}
.visual-service .visual-faq .wrap{max-width:1140px}
.faq-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:36px;padding:24px;background:#edf5eb;border:1px solid #c8ddce;border-radius:22px;align-items:center}
.faq-art img{display:block;width:100%;height:190px;object-fit:contain;border-radius:14px;margin-bottom:18px;background:#e5f2e9}
.faq-art .eyebrow{font-size:10px;letter-spacing:1.2px}.visual-service .faq-art h2{font-size:25px;margin:10px 0 12px;max-width:340px}.faq-art .text-link{font-size:13px}
.faq-answers{min-width:0}.faq-answers>h3{font-size:18px;margin:0 0 15px;line-height:1.35}
.visual-service .faq-answers details{background:#fbfcf4;border:1px solid #d5dfcc;border-radius:10px;margin:9px 0;padding:0 15px}
.visual-service .faq-answers summary{padding:15px 0;font-size:14px;line-height:1.45;cursor:pointer}
.visual-service .faq-answers details p{font-size:14px;line-height:1.6;margin:0 0 15px}
.visual-service .cta{display:grid;grid-template-columns:110px 1fr auto;align-items:center;gap:20px;padding:22px;background:#d8eadd;border:1px solid #bfd6c5;border-radius:18px}
.service-cta-art{width:110px;height:85px;object-fit:cover;border-radius:12px}.visual-service .cta h2{font-size:24px;margin:0 0 8px}.visual-service .cta p{font-size:14px;margin:0}
@media(max-width:850px){.service-intro-grid,.planning-layout,.process-layout{gap:22px}.service-intro-art img{height:240px}.faq-layout{gap:20px}.visual-service .cta{grid-template-columns:85px 1fr}.service-cta-art{width:85px}.visual-service .cta .btn{grid-column:2;justify-self:start}}
@media(max-width:650px){.service-intro-grid,.planning-layout,.process-layout,.faq-layout{grid-template-columns:1fr}.visual-service .inner-hero{padding:22px 0}.service-intro-art img{height:220px}.planning-layout figure img,.process-layout>img{height:210px}.visual-service .section{padding-top:24px;padding-bottom:24px}.faq-layout{padding:18px}.faq-art img{height:160px;max-width:280px;margin:0 auto 14px}.visual-service .faq-art h2{max-width:none}.visual-service .cta{grid-template-columns:70px 1fr;padding:18px;gap:14px}.service-cta-art{width:70px;height:70px}.visual-service .cta h2{font-size:21px}}
