
/* ---- Service page template ---- */
.svc-hero{height:100vh;min-height:720px;max-height:1100px}
.svc-hero .poster{object-position:center center;filter:none}
.svc-hero::after{display:none}
.svc-hero .hero-left{color:var(--espresso);max-width:560px!important}
.svc-hero h1{color:#193579}
.svc-hero .lede{color:#2E3A55!important;text-shadow:none!important}
.svc-hero .crumbs,.svc-hero .crumbs a{color:#193579}
.svc-hero .crumbs span:last-child{color:var(--smoke)}
.svc-hero .hero-copy{align-items:center;padding-bottom:170px}
.svc-hero .hero-left{max-width:720px}
.svc-hero h1{font-size:clamp(40px,4vw,64px);text-shadow:none!important}
.svc-hero .lede{max-width:470px}
.crumbs{display:flex;flex-wrap:wrap;gap:8px;font-size:15px;font-weight:500;letter-spacing:.04em;color:rgba(255,255,255,.85)}
.crumbs a{color:#fff;text-decoration:none}.crumbs a:hover{text-decoration:underline;text-underline-offset:4px}
.sec-head{max-width:860px;margin:0 auto 48px;text-align:center}
.sec-head h2{margin:0;font-family:var(--serif);font-weight:500;font-size:clamp(30px,2.9vw,46px);line-height:1.1;letter-spacing:-.02em;color:#193579;text-wrap:balance}
.sec-head p{margin:18px 0 0;font-size:19.5px;line-height:1.65;color:var(--smoke)}
.svc-inline-ctas{margin-top:28px}
.inc{background:var(--plaster)}
.inc-in,.homes-in,.how-in{padding-block:96px;padding-left:max(var(--gutter),env(safe-area-inset-left,0px));padding-right:max(var(--gutter),env(safe-area-inset-right,0px))}
.inc-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.inc-card{background:#fff;border-radius:14px;padding:30px 26px;border-top:4px solid #193579;box-shadow:0 10px 28px rgba(25,53,121,.07)}
.inc-card h3{margin:0 0 18px;font-family:var(--serif);font-weight:600;font-size:21px;line-height:1.25;color:#193579}
.inc-card ul{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.inc-card li{display:grid;grid-template-columns:22px 1fr;gap:10px;align-items:start;font-size:16.5px;line-height:1.5;color:var(--smoke)}
.inc-card li svg{width:20px;height:20px;color:#193579;margin-top:2px}
.inc-card li a{color:#193579;font-weight:600;text-decoration:none}.inc-card li a:hover{text-decoration:underline;text-underline-offset:4px}
.homes{background:#fff}
.homes-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:16px}
.homes-grid li{display:grid;justify-items:center;gap:16px;text-align:center;padding:30px 14px;border:1px solid #E2E6EE;border-radius:14px;transition:border-color .2s,box-shadow .2s,transform .2s}
.homes-grid li:hover{border-color:#193579;box-shadow:0 12px 28px rgba(25,53,121,.12);transform:translateY(-3px)}
.homes-grid svg{width:58px;height:58px;fill:none;stroke:#193579;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.homes-grid span{font-size:17px;font-weight:600;line-height:1.35;color:#193579}
.homes-cta{display:flex;justify-content:center;margin-top:40px}
.how{background:#193579;color:#fff}
.how .sec-head h2{color:#fff}
.how-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;counter-reset:none}
.how-steps li{padding:34px 30px;border-radius:14px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16)}
.how-steps .num{display:block;font-family:var(--serif);font-size:44px;font-weight:600;line-height:1;color:#fff;opacity:.9}
.how-steps h3{margin:18px 0 10px;font-family:var(--serif);font-weight:600;font-size:23px;color:#fff}
.how-steps p{margin:0;font-size:17.5px;line-height:1.6;color:rgba(255,255,255,.85)}
.why-list{list-style:none;margin:26px 0 0;padding:0;display:grid;gap:22px}
.why-list li{padding-left:22px;border-left:3px solid #193579}
.why-list h3{margin:0 0 6px;font-family:var(--serif);font-weight:600;font-size:22px;color:#193579}
.why-list p{margin:0;font-size:18px;line-height:1.6;color:var(--smoke)}
.quote::before{background-image:url(../../img/svc-quote-sf.webp)!important}
.close-cta::before{background-image:url(../../img/svc-cta-sf.webp)!important;background-position:center 70%!important}
@media (max-width:1100px){.inc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.homes-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:760px){.svc-hero .poster{object-position:12% center}.inc-in,.homes-in,.how-in{padding-block:72px}.inc-grid,.how-steps{grid-template-columns:1fr}.homes-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sec-head{margin-bottom:32px}.svc-hero{height:auto;min-height:820px}.svc-hero .hero-copy{padding-bottom:150px}}

.homes-strip{padding-top:40px}
.homes-strip .trust-in{padding-bottom:40px}
.hs-label{color:#fff!important;margin:0 0 4px!important;text-align:center}
.homes-strip .ti.hm{grid-template-columns:auto;justify-items:center;text-align:center;row-gap:12px}
.homes-strip .ti.hm svg{grid-row:auto;width:46px;height:46px}
.homes-strip .ti.hm h3{white-space:normal;text-align:center;font-size:16px;max-width:150px}
.zz-list{margin:18px 0 0;padding-left:22px;display:grid;gap:8px;font-size:19.5px;line-height:1.55;color:var(--smoke)}
.zz-list li::marker{color:#193579}
.zz-sub{margin:26px 0 0;font-family:var(--serif);font-weight:600;font-size:23px;color:#193579}
.zz-sub+p{margin-top:6px!important}
.svc-rows .zz-copy p a{color:#193579;font-weight:600;text-underline-offset:4px}
.rvs-head{margin-bottom:36px!important}
@media (min-width:901px){.zz-list{font-size:20px}}

/* ---- Contact page ---- */
.svc-hero .poster{object-position:center center}
.quote::before{background-image:url(../../img/contact-quote.webp)!important}
.close-cta::before{background-image:url(../../img/contact-cta.webp)!important}
.quote-phone+.quote-phone{margin-top:6px}
