/* Shared service-page layout, scoped away from city/product/editor pages. */
.service-detail-page{--service-copy:#3e4b61}.service-detail-page .section{padding-block:76px}.service-detail-page .service-detail-hero{padding-block:34px 66px}.service-detail-page .service-hero-layout{gap:64px;align-items:center}.service-detail-page .service-detail-hero h1{font-weight:600;line-height:1.18;font-size:clamp(36px,4.2vw,56px)}.service-detail-page .service-detail-hero p{font-size:18px;line-height:1.8;color:var(--service-copy)}.service-detail-page .eyebrow{font-size:11px;line-height:1.6;letter-spacing:.1em}.service-detail-page .service-jumpbar{border-block:1px solid #e3e9f4;background:#fff}.service-detail-page .service-jumpbar>.container{gap:24px;padding-block:18px;overflow-x:auto}.service-detail-page .service-jumpbar a{font-size:12px;white-space:nowrap}.service-detail-page .plan-path strong{font-size:14px;line-height:1.6}.service-detail-page .plan-path small{font-size:12px;line-height:1.7}.service-detail-page .plan-board-top,.service-detail-page .plan-board-note{font-size:11px;line-height:1.7}.service-overview-heading{max-width:860px;margin-bottom:28px}.service-overview-heading h2{font-size:clamp(29px,3vw,39px);line-height:1.35;font-weight:600}.service-detail-page .service-overview .prose{background:none;border:0;border-radius:0;padding:0;box-shadow:none;max-width:none}.service-detail-page .service-overview-intro{max-width:920px!important;margin-bottom:38px}.service-detail-page .service-overview-intro p{margin-bottom:20px}.service-chapter-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.service-chapter{position:relative;padding:30px;border:1px solid #dfe7f3;border-radius:18px;background:linear-gradient(135deg,#fbfcff,#f5f7ff)}.service-chapter-number{display:inline-grid;place-items:center;width:39px;height:39px;border-radius:11px;background:#e8edff;color:var(--blue);font-size:13px;font-weight:600;margin-bottom:20px}.service-detail-page .service-chapter h3{font-size:23px;line-height:1.4;font-weight:600;letter-spacing:-.025em;margin-bottom:16px}.service-detail-page .service-chapter .prose p{font-size:16px;line-height:1.85;margin:0 0 14px;color:var(--service-copy)}.service-chapter .prose p:last-child{margin-bottom:0}.service-chapter a{color:var(--blue);text-decoration:underline;text-underline-offset:3px}.service-detail-page .service-content-block{background:#f7f9fe;border-top:1px solid #e8edf6}.service-detail-page .service-content-block .section-heading{max-width:800px;margin-bottom:32px}.service-detail-page .section-heading h2{font-size:clamp(28px,3vw,37px);line-height:1.35;font-weight:600}.service-detail-page .service-detail-grid{gap:24px}.service-detail-page .service-detail-grid.four-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.service-detail-page .service-detail-grid article{padding:30px;border-radius:16px}.service-detail-page .service-detail-grid h3{font-size:20px;line-height:1.45;font-weight:600}.service-detail-page .service-detail-grid p{font-size:16px;line-height:1.85}.service-detail-page .service-faq-layout{gap:64px;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}.service-detail-page .service-faq h2{font-size:32px;line-height:1.4}.service-detail-page .service-faq .faq{padding:22px 24px;border-radius:12px}.service-detail-page .service-faq .faq summary,.service-detail-page .service-faq .faq p{font-size:16px;line-height:1.8}.service-detail-page .service-callout>.container{gap:30px;padding-block:44px}.service-detail-page .service-callout .button{flex-shrink:0;color:#fff}.service-detail-page .related-services .reference-service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.service-detail-page .service-scope-note,.service-detail-page .service-quiet-link{font-size:13px}
@media(max-width:900px){.service-detail-page .service-hero-layout{gap:32px}.service-detail-page .service-faq-layout{grid-template-columns:1fr;gap:26px}.service-detail-page .related-services .reference-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.service-detail-page .section{padding-block:52px}.service-detail-page .service-hero-layout{grid-template-columns:1fr}.service-detail-page .service-detail-hero{padding-block:20px 45px}.service-detail-page .service-detail-hero h1{font-size:36px}.service-detail-page .service-detail-hero p{font-size:17px}.service-chapter-grid,.service-detail-page .service-detail-grid.four-columns,.service-detail-page .service-detail-grid{grid-template-columns:1fr}.service-chapter,.service-detail-page .service-detail-grid article{padding:25px}.service-detail-page .service-chapter h3{font-size:22px}.service-detail-page .service-overview-intro p{font-size:17px}.service-detail-page .related-services .reference-service-grid{grid-template-columns:1fr}.service-detail-page .service-callout>.container{flex-direction:column;align-items:flex-start}.service-detail-page .service-faq h2{font-size:28px}}

.service-detail-page .service-scope-points{padding-left:20px;margin:16px 0 0;color:var(--service-copy);font-size:16px;line-height:1.85}.service-scope-points li{padding-left:4px;margin-bottom:9px}.service-scope-points li::marker{color:var(--blue)}.service-detail-page .service-detail-grid article:hover .service-scope-points{color:inherit}

.service-detail-page .service-scope-grid{grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:600px){.service-detail-page .service-scope-grid{grid-template-columns:1fr}}

.service-problems{background:#f6f8fd}.service-problem-list{display:grid;gap:22px}.service-problem-pair{display:grid;grid-template-columns:1fr 1fr;border:1px solid #dee6f4;border-radius:18px;overflow:hidden;background:#fff;box-shadow:0 8px 26px #19376106}.service-problem-description,.service-problem-response{padding:30px}.service-problem-response{background:linear-gradient(135deg,#f0f5ff,#f8f5ff);border-left:1px solid #e0e7f4;display:flex;flex-direction:column;justify-content:center}.service-problem-label{font-size:11px;font-weight:600;letter-spacing:.1em;color:var(--blue);display:block;margin-bottom:14px}.service-detail-page .service-problem-pair h3{font-size:23px;line-height:1.4;letter-spacing:-.025em}.service-detail-page .service-problem-pair p{font-size:17px;line-height:1.85;color:var(--service-copy);margin-bottom:0}.service-detail-page .service-problem-response p{margin-top:0}.service-chapter-grid:has(>.service-chapter:only-child){grid-template-columns:1fr}.service-detail-page .service-content-block .align-left{max-width:960px;margin-inline:0;text-align:left}.service-detail-page .service-content-block .align-left .prose{max-width:880px}.service-detail-page .service-content-block .align-left p{font-size:18px;line-height:1.85}.service-detail-page .service-overview-heading h2{max-width:900px}.service-detail-page .service-jumpbar a{text-transform:none}.service-detail-page .service-problem-pair a{color:var(--blue)}
@media(max-width:650px){.service-problem-pair{grid-template-columns:1fr}.service-problem-description,.service-problem-response{padding:24px}.service-problem-response{border-left:0;border-top:1px solid #e0e7f4}.service-detail-page .service-problem-pair h3{font-size:22px}.service-detail-page .service-problem-pair p{font-size:16px}}

/* Let service content use the same complete container as surrounding sections. */
body.page-kind-service .service-detail-page .service-overview-intro,body.page-kind-service .service-detail-page .service-overview-heading,body.page-kind-service .service-detail-page .service-overview-heading h2,body.page-kind-service .service-detail-page .service-content-block .align-left,body.page-kind-service .service-detail-page .service-content-block .align-left .prose{max-width:none!important;width:100%;margin-inline:0}body.page-kind-service .service-overview-intro a,body.page-kind-service .service-content-block .prose a{color:var(--blue);text-decoration:underline;text-underline-offset:3px}
