/* CSS service only: retain Semstar's layout, with restrained charcoal accents. */
.css-service {--blue:#414b48;--blue-bright:#414b48;--line:#dfe2e1;}
.css-service main {background:#f8f8f8;}
.css-service .header-cta,.css-service .button-light,.css-service .button-blue {background:#414b48;border-color:#414b48;color:#fff;}
.css-service .header-cta:hover,.css-service .button-light:hover,.css-service .button-blue:hover {background:#303936;border-color:#303936;}
.css-service.clean-design main :is(a,.eyebrow) {color:#414b48!important;}
.css-service.clean-design main .button {color:#fff!important;}
.css-service a:not(.button) {text-underline-offset:4px;}
.css-service :focus-visible {outline:3px solid #65756c;outline-offset:4px;}
.css-service .field :is(input,select):focus {border-color:#414b48;box-shadow:0 0 0 3px #414b4826;}
.css-service .hero {padding:58px 0;}
.css-service .hero-grid {align-items:start;}
.css-service .hero h1 {font-size:clamp(32px,3.2vw,44px);line-height:1.2;}
.css-service .hero-proof {box-shadow:none;}
.css-service .css-advantage h2 {font-size:30px;line-height:1.25;margin:22px 0;letter-spacing:-.02em;}
.css-service .css-advantage p {font-size:16px;line-height:1.65;}
.css-service .css-panel-note {border-top:1px solid #dfe2e1;padding-top:22px;margin-top:24px;}
.css-section {padding:0 0 52px;scroll-margin-top:100px;}
.css-section > .shell {border-top:1px solid #dfe2e1;padding-top:44px;}
.css-section h2 {font-size:clamp(26px,2.5vw,34px);line-height:1.25;letter-spacing:-.02em;margin:0 0 24px;}
.css-section p {font-size:17px;line-height:1.7;}
.css-process {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;list-style:none;padding:0;margin:30px 0 0;}
.css-process h3 {font-size:21px;line-height:1.3;margin:0 0 12px;}
.css-process p {font-size:16px;margin:0;}
.css-faq details {border-bottom:1px solid #d9dcdf;padding:0;}
.css-faq summary {font-weight:700;font-size:17px;padding:22px 0;cursor:pointer;}
.css-faq details p {max-width:900px;margin:0 0 24px;}
.css-service .contact-grid {grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:54px;}
.css-service .review-form {background:#fff;padding:28px;}
.css-service .form-note {font-size:12px;line-height:1.6;}
.css-service .form-note a {text-decoration:underline;}
.css-service .field label span {font-weight:400;}
.css-service .primary-nav {gap:14px;}
.css-service .primary-nav a {font-size:11px;}
@media(max-width:1100px){.css-service .primary-nav a{font-size:16px;}}
@media(max-width:720px){
 .css-service .hero {padding:32px 0 38px;}
 .css-service .hero h1 {font-size:34px;}
 .css-service .css-advantage h2 {font-size:27px;}
 .css-section {padding-bottom:36px;}
 .css-section > .shell {padding-top:32px;}
 .css-process,.css-service .contact-grid {grid-template-columns:1fr;gap:28px;}
 .css-service .review-form {padding:22px;}
}
