/* Service overview cards share the site's existing content width. */
.fsv-surface{background:linear-gradient(140deg,#f4f2ee,#f8f7f4);padding:50px 0 1px}
body[data-page=services] .fsh-wave path{fill:#f4f2ee}
.fsv-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:stretch;scroll-margin-top:110px}
.fsv-card{display:flex;flex-direction:column;min-width:0;padding:12px 12px 22px;border:1px solid #fff;border-radius:20px;background:#fffefa;box-shadow:0 11px 30px #574b3c08}
.fsv-photo{display:block;position:relative;aspect-ratio:1.42;overflow:hidden;border-radius:12px;background:#e9eee9;text-decoration:none}
.fsv-photo img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .45s ease}
.fsv-card:last-child img{object-position:75% center}
.fsv-photo:hover img{transform:scale(1.035)}
.fsv-photo>span{position:absolute;top:13px;left:13px;display:grid;place-items:center;width:39px;height:35px;color:#fff;background:#174b3edb;border:1px solid #ffffff45;border-radius:7px;font:700 15px/1 Arial,sans-serif;backdrop-filter:blur(8px)}
.fsv-kicker{font-size:12px;line-height:1.6;color:#ff6123;margin:22px 13px 11px;font-weight:700}
.fsv-card h2{font-size:24px;font-weight:700;letter-spacing:-.055em;line-height:1.4;min-height:0;margin:0 13px 12px;word-break:keep-all;text-wrap:balance;color:#173f39}
.fsv-card>p:not(.fsv-kicker){font-size:13px;line-height:1.85;color:#7e9188;min-height:3.7em;margin:0 13px;word-break:keep-all}
.fsv-card ol{list-style:none;display:grid;gap:9px;padding:19px 0 0;margin:19px 13px 23px;border-top:1px solid #dfe7df;color:#355f53}
.fsv-card ol li{display:grid;grid-template-columns:26px 24px minmax(0,1fr);gap:13px;align-items:center;font-size:12px;line-height:1.7;min-height:27px}
.fsv-step-number{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#e0e7dc;font:600 12px/1 Arial,sans-serif;color:#375d4f}
.fsv-card ol svg{display:block;width:21px;height:23px;color:#315f52}
.fsv-card>div{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:auto 13px 0}
.fsv-card>div>a{display:flex;align-items:center;justify-content:center;min-height:46px;padding:12px 10px;border:1px solid #b9cbc0;border-radius:8px;color:#315d50;text-decoration:none;font-size:12px;font-weight:600;line-height:1.6;transition:background .2s}
.fsv-card>div>a:first-child:hover{background:#f0f5ed}
.fsv-card>div>a:last-child{background:#ff672b;border-color:#ff672b;color:#fff}
.fsv-card>div>a:last-child:hover{background:#ed571e;border-color:#ed571e}
.fsv-note{display:flex;align-items:center;justify-content:space-between;gap:30px;background:#edf2e9;padding:32px 35px;border:1px solid #e3e9df;border-radius:12px;margin:45px 0 65px}
.fsv-note h2{font-size:23px;line-height:1.4;letter-spacing:-.04em;margin:0 0 11px}
.fsv-note p{font-size:13px;line-height:1.8;color:#819584;margin:0;word-break:keep-all}
.fsv-note .fsp-button{font-size:12px}
@media(max-width:1100px){.fsv-grid{gap:17px}.fsv-card{padding:10px 10px 19px;border-radius:17px}.fsv-photo{border-radius:10px}.fsv-card h2{font-size:21px;margin-inline:9px}.fsv-kicker{margin-inline:9px;font-size:11px}.fsv-card>p:not(.fsv-kicker){margin-inline:9px;font-size:12px}.fsv-card ol{margin-inline:9px}.fsv-card ol li{gap:9px;font-size:11px}.fsv-card>div{margin-inline:9px;gap:8px}.fsv-card>div>a{font-size:11px;padding:11px 7px}}
@media(max-width:800px){.fsv-grid{grid-template-columns:1fr;gap:25px;max-width:570px;margin:auto}.fsv-surface{padding-top:33px}.fsv-card{padding:12px 12px 23px;border-radius:19px}.fsv-photo{aspect-ratio:1.6;border-radius:12px}.fsv-photo>span{width:38px;height:34px;font-size:14px}.fsv-kicker{font-size:12px;margin:22px 12px 10px}.fsv-card h2{font-size:25px;min-height:0;margin:0 12px 13px;text-wrap:pretty}.fsv-card>p:not(.fsv-kicker){font-size:13px;min-height:0;margin-inline:12px}.fsv-card ol{margin:21px 12px 24px;gap:9px}.fsv-card ol li{font-size:13px;gap:14px}.fsv-card>div{margin-inline:12px;gap:12px}.fsv-card>div>a{font-size:12px;min-height:48px}.fsv-note{max-width:570px;margin:30px auto 45px;align-items:flex-start;flex-direction:column;gap:22px;padding:26px}.fsv-note h2{font-size:22px}.fsv-note p{font-size:12px}}
@media(max-width:380px){.fsv-card h2{font-size:22px}.fsv-card>p:not(.fsv-kicker){font-size:12px}.fsv-card ol li{font-size:12px}.fsv-card>div{gap:8px}.fsv-card>div>a{font-size:11px;padding-inline:6px}}
@media(prefers-reduced-motion:reduce){.fsv-photo img,.fsv-card>div>a{transition:none}}
