/* Service detail presentation and shared accordion treatment */
.service-page .page-hero{padding:26px 0 64px!important}.service-breadcrumb{display:flex;gap:12px;align-items:center;font-size:12px;color:#b9d3d0;margin-bottom:38px;flex-wrap:wrap}.service-breadcrumb a{color:#fff}.service-page .page-hero-grid{grid-template-columns:1.2fr .8fr;gap:70px;align-items:center}.service-page .page-hero h1{font-size:clamp(38px,4.6vw,66px)!important;line-height:1.08!important;letter-spacing:-.045em!important;max-width:780px}.service-page .page-hero-grid>div:first-child>p:not(.eyebrow){font-size:17px;line-height:1.75;max-width:620px;color:#d2dfde;margin-top:24px}.service-page .page-hero-image{height:290px;border-radius:3px!important;box-shadow:14px 14px 0 #ffffff0a!important}.service-page .page-hero:after{display:none}.service-page .single-service{display:grid;grid-template-columns:250px minmax(0,1fr);gap:85px;padding:80px 0 100px;align-items:start}.service-page .single-service>aside{position:sticky;top:30px;align-self:start}.back-to-services{font-size:13px;color:#387c7c;display:inline-block;margin-bottom:30px}.service-local-nav{border-top:1px solid #d5e0dc;padding-top:25px}.service-local-nav .eyebrow{font-size:10px;margin-bottom:18px}.service-local-nav a{display:block;padding:12px 15px;border-left:2px solid transparent;line-height:1.5;font-size:13px;color:#687c7a;transition:background .18s,color .18s}.service-local-nav a:hover{background:#f0f4f1;color:#244a47}.service-local-nav a[aria-current]{border-color:#387c7c;background:#eaf0ed;color:#244a47;font-weight:600}.service-help{background:#edf2ef;padding:25px;margin-top:30px}.service-help h3{font-size:23px;line-height:1.3;margin:14px 0 22px;color:#244a47}.service-help a{display:flex;align-items:center;justify-content:space-between;font-size:12px;font-weight:600;color:#387c7c}.service-help .eyebrow{font-size:9px}.service-page .single-service-copy{min-width:0;max-width:800px}.service-overview{margin-bottom:55px;padding-bottom:42px;border-bottom:1px solid #d5e0dc}.service-overview h2{font-size:clamp(28px,3vw,40px)!important;line-height:1.2!important;letter-spacing:-.035em;margin:0 0 25px!important;max-width:600px}.service-page .service-overview p:not(.eyebrow){font-size:16px!important;font-weight:400!important;line-height:1.9!important;max-width:70ch;color:#607472;margin:0 0 20px}.service-page .service-overview p:last-child{margin-bottom:0}.service-faq-heading{font-size:29px!important;line-height:1.25!important;letter-spacing:-.025em;margin:0 0 25px!important}.service-page .service-faq-list{margin:0 0 38px;max-width:none}.service-page .single-service-copy>.button{margin-top:16px!important}.service-page .next-service{padding:42px 0!important}.service-page .next-service h2{font-size:30px!important}
.polished-faq{border:1px solid #d4dfdb!important;background:transparent;margin:0 0 12px!important;padding:0!important;transition:background .22s,border-color .22s,box-shadow .22s;border-radius:3px}.polished-faq summary{list-style:none!important;cursor:pointer;display:grid!important;grid-template-columns:26px minmax(0,1fr) 32px;gap:14px;align-items:center;padding:22px 23px!important;font-size:16px!important;line-height:1.5!important;color:#244a47;font-weight:500!important;user-select:none}.polished-faq summary::-webkit-details-marker{display:none}.polished-faq summary::before,.polished-faq summary::after{display:none!important}.polished-faq summary>svg{display:none}.faq-number{font-size:10px;color:#70918c;font-weight:500;align-self:center;letter-spacing:.05em}.faq-toggle{display:flex!important;position:relative;width:30px;height:30px;border:1px solid #9cb8b2;border-radius:50%;transition:transform .25s,background .25s}.faq-toggle:before,.faq-toggle:after{content:'';position:absolute;background:#387c7c;left:9px;top:14px;width:10px;height:1px;transition:transform .25s}.faq-toggle:after{transform:rotate(90deg)}.polished-faq:hover{border-color:#80a7a0!important;background:#f1f6f3}.polished-faq summary:focus-visible{outline:2px solid #387c7c;outline-offset:4px;border-radius:3px}.polished-faq[open]{background:#edf3ef;box-shadow:0 5px 18px #214b4510;border-color:#9bb9b0!important}.polished-faq[open] .faq-toggle{background:#387c7c;border-color:#387c7c}.polished-faq[open] .faq-toggle:before,.polished-faq[open] .faq-toggle:after{background:white}.polished-faq[open] .faq-toggle:after{transform:rotate(0)}.faq-answer{padding:0 70px 26px 63px;animation:answer-in .28s ease-out}.faq-answer p{font-size:15px!important;line-height:1.85!important;margin:0!important;max-width:68ch;color:#607472;white-space:normal!important}.home-faq-polished{border:0!important}.home-faq-polished .polished-faq summary{font-size:16px!important}.home-faq-polished .polished-faq[open]{background:#fff}.home-faq-polished .polished-faq{margin-bottom:12px!important}.home-faq-polished .faq-answer{padding-top:0!important}.polished-faq .faq-question{min-width:0}@keyframes answer-in{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.faq-answer{animation:none}.polished-faq,.faq-toggle,.faq-toggle:after{transition:none}}
@media(max-width:950px){.service-page .single-service{grid-template-columns:200px minmax(0,1fr);gap:40px}.service-page .page-hero-grid{gap:35px}.service-page .page-hero-image{height:240px}.polished-faq summary{padding:19px 18px!important;gap:10px;grid-template-columns:20px minmax(0,1fr) 28px}.faq-toggle{width:28px;height:28px}.faq-toggle:before,.faq-toggle:after{left:8px;top:13px}.faq-answer{padding:0 56px 24px 48px}}
@media(max-width:700px){.service-page .page-hero-grid{grid-template-columns:1fr;gap:30px}.service-page .page-hero h1{font-size:40px!important}.service-page .page-hero-image{height:200px}.service-page .page-hero{padding-bottom:40px!important}.service-breadcrumb{margin-bottom:28px}.service-page .single-service{grid-template-columns:1fr;padding:40px 0 60px;gap:25px}.service-page .single-service>aside{position:static}.service-local-nav,.service-help{display:none}.back-to-services{margin:0}.service-overview{margin-bottom:35px;padding-bottom:30px}.service-page .service-overview p:not(.eyebrow){font-size:15px!important;line-height:1.8!important}.polished-faq summary{font-size:15px!important;padding:18px 14px!important;grid-template-columns:minmax(0,1fr) 28px;gap:12px}.faq-number{display:none}.faq-answer{padding:0 20px 22px 14px}.home-faq-polished .polished-faq summary{font-size:15px!important}.service-page .next-service h2{font-size:25px!important}}
.portrait-placeholder{position:relative;display:block;overflow:hidden}.portrait-placeholder img{width:100%;height:100%;object-fit:cover;display:block}.portrait-placeholder small{position:absolute;bottom:20px;left:50%;transform:translateX(-50%);padding:8px 13px;background:#f8faf6e8;color:#426c67;font-size:10px;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap}
.service-page .service-overview p,.polished-faq summary,.polished-faq summary span,.polished-faq .faq-answer p{font-family:var(--font-geist-sans),Geist,Arial,sans-serif!important}.polished-faq .faq-question{font-size:inherit!important;letter-spacing:normal!important;line-height:inherit!important}.polished-faq .faq-number{font-size:10px!important}.service-page .service-overview .service-lead{max-width:none!important}
