.sm-services.sm-services{--sm-services-accent:#e63323;display:grid;grid-template-columns:repeat(var(--sm-services-columns,3),minmax(0,1fr));gap:16px;margin:0;padding:0;list-style:none;color:inherit}
.sm-services .sm-services__item{list-style:none;margin:0;padding:0;min-width:0}
.sm-services .sm-services__link{box-sizing:border-box;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px;border:1px solid #dedede;border-radius:8px;padding:23px;min-height:115px;height:100%;color:inherit;text-decoration:none}
.sm-services .sm-services__title{display:block;font-family:inherit;font-size:18px;font-weight:600;line-height:1.4;overflow-wrap:anywhere}
.sm-services .sm-services__summary{display:block;color:#6c6c6c;font-size:15px;line-height:1.6;margin-top:6px;overflow-wrap:anywhere}
.sm-services .sm-services__arrow{font-size:26px;line-height:1;color:var(--sm-services-accent)}
.sm-services .sm-services__link:hover{background:#faf9f7;color:#242424}
.sm-services .sm-services__link:focus-visible{outline:2px solid var(--sm-services-accent);outline-offset:3px}
@media(max-width:1024px){.sm-services.sm-services{grid-template-columns:repeat(min(2,var(--sm-services-columns,3)),minmax(0,1fr))}}
@media(max-width:767px){.sm-services.sm-services{grid-template-columns:minmax(0,1fr)}.sm-services .sm-services__link{padding:21px;gap:16px}}

/* Backgrounds fill the native shell; Impeka containers own content width and gutters. */
#sm-service-content.sm-service-page{width:100%;max-width:none;margin:0;padding:0}
.sm-service-page>article,.sm-service-page .sm-solution{margin:0;padding:0}
/* Standard WPBakery rows already sit inside the service page container. */
.sm-service-page .sm-service-builder-content > .grve-row-section.grve-fullwidth-background > .grve-container {
 width: 100%;
 max-width: none;
}
.sm-service-page .sm-service-container{box-sizing:border-box;width:calc(100% - 48px);max-width:1240px;margin-inline:auto}
.sm-service-page .sm-solution__hero{padding:calc(60px + var(--sm-service-header-space,0px)) 0 60px;min-height:300px}
.sm-service-page .sm-solution__hero--image{min-height:calc(380px + var(--sm-service-header-space,0px))}
.sm-service-page .sm-solution__hero>.grve-container,.sm-service-page .sm-solution__hero>.sm-service-container{position:relative;z-index:1;margin-inline:auto}
.sm-service-page .sm-solution__intro{padding:40px 0;margin-inline:auto}
.sm-service-page .sm-solution__intro p{max-width:850px;margin-inline:auto}
.sm-service-page .sm-solution__cards,.sm-service-page .sm-solution__form,.sm-service-page .sm-solution__form-notice{margin-inline:auto}
.sm-service-page .sm-solution__form{max-width:none}
.sm-service-page .sm-solution__contact{display:block;padding:40px 0}
.sm-service-page .sm-service-contact-inner{display:grid;grid-template-columns:1.4fr 1fr;gap:30px;align-items:center;margin-inline:auto}
@media(max-width:767px){.sm-service-page .sm-solution__hero{padding-top:calc(40px + var(--sm-service-header-space,0px));padding-bottom:40px}.sm-service-page .sm-solution__hero--image{min-height:calc(320px + var(--sm-service-header-space,0px))}.sm-service-page .sm-solution__intro{padding-block:28px}.sm-service-page .sm-solution__contact{padding-block:30px}.sm-service-page .sm-service-contact-inner{grid-template-columns:minmax(0,1fr);gap:22px}}

.sm-service-page .sm-service-contact-inner:before,.sm-service-page .sm-service-contact-inner:after{content:none}

/* Service pages: clearer reading order, distinct information cards and a visible next step. */
.sm-service-page .sm-solution__hero--image{min-height:calc(430px + var(--sm-service-header-space,0px))}
.sm-service-page .sm-solution__title{max-width:22ch;font-size:clamp(38px,4.2vw,62px);line-height:1.12;letter-spacing:normal;text-wrap:balance}
.sm-service-page .sm-solution__rule{width:96px;margin:24px 0}
.sm-service-page .sm-solution__subtitle{font-size:18px;max-width:620px;line-height:1.7}
.sm-service-page .sm-service-hero-action{margin-top:26px}
.sm-service-page .sm-solution__intro{padding:80px 0}
.sm-service-page .sm-solution__intro p{font-size:19px;line-height:1.8;max-width:780px}
.sm-service-page .sm-solution__cards{gap:24px;padding-bottom:80px}
.sm-service-page .sm-solution__card--text{box-sizing:border-box;background:#faf9f7;border:1px solid #e6e2dc;border-radius:4px;padding:28px}
.sm-service-page .sm-solution__card--text .sm-solution__card-title{font-size:26px;line-height:1.3;letter-spacing:normal;margin:0 0 14px}
.sm-service-page .sm-solution__card--text .sm-solution__label{margin:0 0 12px}
.sm-service-page .sm-solution__description{font-size:16px;line-height:1.75}
.sm-service-page .sm-solution__form{box-sizing:border-box;padding:48px 0 16px;margin-bottom:56px;border:0;border-top:1px solid #e6e2dc;border-radius:0}
.sm-service-page .sm-solution__form>h2{font-size:36px;line-height:1.2;margin-bottom:30px}
.sm-service-page .sm-solution__form,.sm-service-page .sm-solution__contact{scroll-margin-top:calc(120px + var(--sm-service-header-space,0px))}
.sm-service-page .sm-solution__contact{padding-block:56px;color:#fff}
.sm-service-page .sm-solution__contact-title{font-size:36px;line-height:1.2;max-width:650px}
.sm-service-page .sm-solution__contact p{font-size:16px;line-height:1.8;max-width:560px}
.sm-service-page .sm-solution__actions{gap:8px;justify-self:end;align-items:stretch;text-align:center}
@media(max-width:1024px){.sm-service-page .sm-solution__card--text{padding:22px}.sm-service-page .sm-solution__card--text .sm-solution__card-title{font-size:clamp(21px,2.35vw,24px)}}
@media(max-width:767px){.sm-service-page .sm-solution__hero--image{min-height:calc(360px + var(--sm-service-header-space,0px))}.sm-service-page .sm-solution__title{font-size:clamp(34px,8vw,40px);letter-spacing:normal}.sm-service-page .sm-solution__subtitle{font-size:16px}.sm-service-page .sm-solution__intro{padding:48px 0}.sm-service-page .sm-solution__intro p{font-size:17px;line-height:1.8}.sm-service-page .sm-solution__cards{gap:16px;padding-bottom:48px}.sm-service-page .sm-solution__card--text,.sm-service-page .sm-solution__card--text:last-child{padding:24px;border:1px solid #e6e2dc}.sm-service-page .sm-solution__card--text .sm-solution__card-title{font-size:26px}.sm-service-page .sm-solution__form{padding:32px 0 8px;margin-bottom:36px}.sm-service-page .sm-solution__form>h2,.sm-service-page .sm-solution__contact-title{font-size:29px}.sm-service-page .sm-solution__contact{padding-block:36px}.sm-service-page .sm-solution__actions{justify-self:start}}

@media(min-width:768px) and (max-width:960px){.sm-service-page .sm-solution__cards{grid-template-columns:repeat(2,minmax(0,1fr))}.sm-service-page .sm-solution__card--text:last-child:nth-child(odd){grid-column:1/-1}}

/* Adapt to narrow megamenu columns as well as the viewport. */
.sm-service-megamenu{container-type:inline-size;min-width:0}
@container(max-width:700px){.sm-service-megamenu .sm-services{grid-template-columns:repeat(min(2,var(--sm-services-columns,3)),minmax(0,1fr))}.sm-services .sm-services__link{padding:20px;gap:16px}.sm-services .sm-services__title{font-size:17px}}
@container(max-width:420px){.sm-service-megamenu .sm-services{grid-template-columns:minmax(0,1fr)}}

.sm-service-megamenu .sm-services__summary{font-size:14px}

.sm-service-page .sm-solution__phone:hover{color:inherit;text-decoration:underline}

.sm-service-page .sm-solution__intro,.sm-service-page .sm-solution__cards,.sm-service-page .sm-solution__form,.sm-service-page .sm-solution__hero:not(.sm-solution__hero--image){color:#000}

.sm-service-page .sm-solution__phone{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:4px 8px;min-height:44px;font-family:inherit;font-weight:600;font-size:17px;line-height:1.4}
.sm-service-page .sm-service-phone-label{font-size:14px;font-weight:400}
.sm-service-page .sm-service-phone-number{white-space:nowrap}
.sm-service-page .sm-solution__actions>.grve-btn{margin:0}

.sm-service-page .sm-service-extra-info{max-width:850px;margin:0 auto 56px;color:#000;font-size:16px;line-height:1.8;overflow-wrap:anywhere}
.sm-service-page .sm-service-extra-info>:first-child{margin-top:0}
.sm-service-page .sm-service-extra-info>:last-child{margin-bottom:0}
.sm-service-page .sm-service-extra-info img{max-width:100%;height:auto}
@media(max-width:767px){.sm-service-page .sm-service-extra-info{margin-bottom:36px}}

.sm-service-page .sm-service-extra-info h2{font-size:clamp(26px,3vw,32px);line-height:1.3;margin:0 0 20px}
.sm-service-page .sm-service-extra-info h3{font-size:24px;line-height:1.35;margin:28px 0 16px}
.sm-service-page .sm-service-extra-info p,.sm-service-page .sm-service-extra-info ul,.sm-service-page .sm-service-extra-info ol{margin-bottom:20px}
.sm-service-page .sm-service-extra-info>:last-child{margin-bottom:0}
