/* Photography for the existing light service design. */
.hero--service{background:linear-gradient(120deg,#fafaf4 5%,#f0f5ec 100%);overflow:hidden}
.hero--service .hero__grid{grid-template-columns:minmax(0,1.04fr) minmax(0,1fr);gap:48px;align-items:center;padding-block:48px 60px}
.hero--service .hero__copy{min-width:0}
.hero--service h1{font-size:clamp(35px,3.8vw,54px);line-height:1.1;letter-spacing:-1.8px;margin-top:0}
.hero--service .hero__lead{max-width:570px;font-size:17px}
.hero--service .hero__buttons .button{padding-inline:19px;font-size:15px}
.service-visual{position:relative;min-width:0;margin:0;padding:0 0 18px;isolation:isolate}
.service-visual:before{content:"";position:absolute;inset:20px -20px -1px 26px;background:#dfeadc;border-radius:28px 28px 82px 28px;z-index:-1}
.service-visual__image{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;object-position:center;border-radius:25px 25px 72px 25px;box-shadow:0 18px 45px #264f3810}
.service-visual__note{position:absolute;bottom:0;left:18px;right:26px;display:flex;align-items:center;gap:12px;padding:17px 18px;background:#fffffff5;border:1px solid #e4ebdf;border-radius:15px;box-shadow:0 10px 28px #21423312;backdrop-filter:blur(10px)}
.service-visual__check{display:grid;place-items:center;flex-shrink:0;width:38px;height:38px;background:#eaf2e6;color:#2c6654;border-radius:50%}
.service-visual__check svg{width:21px;height:21px}
.service-visual__note strong{display:block;font-size:15px;line-height:1.35;font-weight:600;color:#233e34}
.service-visual__note small{display:block;font-size:11px;line-height:1.5;color:#65766b;margin-top:3px}
.service-visual__credit{position:absolute;right:17px;top:12px;font-size:9px;line-height:1.4;padding:4px 7px;border-radius:6px;background:#ffffffe0;color:#566a5e}
.cards--home{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.service-card{display:block;padding:0;overflow:hidden;border-radius:19px;background:#fff}
.service-card img.service-card__image{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;transition:transform .35s ease}
.service-card:hover img.service-card__image{transform:scale(1.025)}
.service-card__icon{position:absolute;top:14px;left:14px;width:36px;height:36px;border:1px solid #ffffff80;border-radius:11px;background:#fffffff0;box-shadow:0 3px 12px #243d3010}
.service-card__icon>.icon{width:22px;height:22px}
.service-card__body{display:block;padding:22px 24px 24px;min-height:164px}
.service-card h3{font-size:19px;line-height:1.3;font-weight:600;letter-spacing:-.35px;margin:0;padding-right:8px}
.service-card p{font-size:14px;line-height:1.55;margin-top:8px;max-width:290px}
.service-card__more{display:inline-block;font-size:12px;margin-top:16px}
.service-card__arrow{top:auto;bottom:21px;right:20px;transform:none;display:grid;place-items:center;width:31px;height:31px;border-radius:50%;background:#edf4e9;color:#2e6a55;font-size:20px}
@media(max-width:1100px){.hero--service .hero__grid{gap:28px}.hero--service h1{font-size:40px}.service-visual__note{left:10px;right:12px;padding:14px}.service-visual__note strong{font-size:13px}.service-visual__note small{font-size:10px}}
@media(max-width:1000px){.cards--home{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}}
@media(max-width:700px){
 .hero--service .hero__grid{grid-template-columns:minmax(0,1fr);gap:0;padding-block:25px 34px}
 .hero--service .hero__copy{display:contents}
 .hero--service .hero__copy>.eyebrow{order:0;margin-bottom:12px;font-size:10px;letter-spacing:.09em}
 .hero--service .city-label,.hero--service .city-picker{order:0;margin-bottom:12px;font-size:14px}
 .hero--service h1{order:1;font-size:clamp(30px,7.9vw,40px);line-height:1.12;letter-spacing:-1.1px;margin:0 0 22px}
 .hero--service .service-visual{order:2;padding-bottom:17px;margin:0 0 6px}
 .hero--service .hero__lead{order:3;font-size:15px;line-height:1.65;margin-top:20px}
 .hero--service .hero__buttons{order:4;margin-top:22px;gap:10px}
 .hero--service .hero__buttons .button{min-height:51px;font-size:14px;padding:13px 16px}
 .service-visual:before{inset:12px -9px 0 13px;border-radius:19px 19px 52px 19px}
 .service-visual__image{aspect-ratio:3/2;border-radius:19px 19px 49px 19px}
 .service-visual__note{left:11px;right:18px;gap:9px;padding:11px 12px;border-radius:12px}
 .service-visual__check{width:30px;height:30px}.service-visual__check svg{width:17px;height:17px}
 .service-visual__note strong{font-size:12px}.service-visual__note small{font-size:9px;margin-top:1px}
 .service-visual__credit{right:12px;top:9px;font-size:8px;padding:3px 6px}
}
@media(max-width:600px){
 .cards--home{grid-template-columns:minmax(0,1fr);gap:20px}
 .service-card{border-radius:17px}.service-card__body{padding:20px 22px 22px;min-height:146px}
 .service-card h3{font-size:19px}.service-card p{font-size:14px;margin-top:7px;max-width:calc(100% - 20px)}
 .service-card img.service-card__image{aspect-ratio:16/9}
 .service-card__more{display:inline-block;margin-top:15px;font-size:12px}.service-card__arrow{right:21px;bottom:19px}
}
@media(prefers-reduced-motion:reduce){.service-card img.service-card__image{transition:none}.service-card:hover img.service-card__image{transform:none}}
