.csd-service-hero{--csd-overlay-left:#030a15;--csd-overlay-right:#030a15;--csd-overlay-strength:.62;position:relative;isolation:isolate;min-height:510px;padding:48px 52px 30px;display:flex;flex-direction:column;justify-content:space-between;background-color:#06101d;background-size:cover;background-position:center center;color:#fff;box-sizing:border-box;overflow:hidden}
.csd-service-hero *{box-sizing:border-box}.csd-service-hero:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,var(--csd-overlay-left) 0%,transparent 85%),linear-gradient(0deg,var(--csd-overlay-right) 0%,transparent 38%);opacity:var(--csd-overlay-strength)}
.csd-service-main{flex:1;display:flex;align-items:center;min-width:0;padding:12px 0 34px}.csd-service-copy{max-width:660px;min-width:0}:where(.csd-service-title){font-family:inherit;font-size:clamp(35px,4.1vw,67px);line-height:1.14;font-weight:800;letter-spacing:-.035em;color:#fff;margin:0 0 18px}.csd-service-highlight{color:#ff2337}.csd-service-description{color:#e9eef8;font-size:clamp(15px,1.35vw,21px);line-height:1.55;margin:0 0 26px;max-width:660px}.csd-service-actions{display:flex;align-items:center;flex-wrap:wrap;gap:16px}.csd-service-button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:55px;padding:15px 28px;border-radius:9px;color:#fff!important;font-size:16px;font-weight:750;text-decoration:none!important;line-height:1.2;transition:filter .2s,transform .2s}.csd-service-button:hover{filter:brightness(1.1);transform:translateY(-1px)}.csd-service-button-icon{display:inline-flex;align-items:center;justify-content:center;font-size:21px}.csd-service-button-icon svg{width:1em;height:1em;fill:currentColor}.csd-service-quote{background-color:#ff2337}.csd-service-wa{background-color:#00b84f}
.csd-service-features{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:0;background-color:#050c18;padding:20px 8px;min-width:0}.csd-service-feature{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center;min-width:0;padding:4px 12px;color:#fff;text-decoration:none!important;line-height:1.35}.csd-service-feature:not(:first-child){border-left:1px solid #435062}.csd-service-icon{display:flex;align-items:center;justify-content:center;color:#fff;font-size:32px;min-height:36px}.csd-service-icon svg{height:32px;width:32px;fill:currentColor}.csd-service-feature-label{font-size:14px;font-weight:650;color:inherit}.csd-service-feature:hover{color:#fff}
@media(max-width:1024px){.csd-service-hero{padding:36px 28px 24px}.csd-service-features{padding:16px 4px}.csd-service-feature{padding:4px 6px}.csd-service-feature-label{font-size:12px}}
@media(max-width:767px){.csd-service-hero{min-height:570px;padding:32px 18px 18px;background-position:60% center}.csd-service-main{align-items:center;padding:15px 0 28px}:where(.csd-service-title){margin-bottom:12px}.csd-service-description{font-size:15px;margin-bottom:20px}.csd-service-actions{gap:9px}.csd-service-button{font-size:13px;min-height:46px;padding:12px 14px;gap:7px}.csd-service-button-icon{font-size:17px}.csd-service-features{grid-template-columns:repeat(3,minmax(0,1fr));gap:0;padding:12px 2px}.csd-service-feature{padding:12px 5px;gap:7px}.csd-service-feature:nth-child(3n+1){border-left:0}.csd-service-feature:nth-child(n+4){border-top:1px solid #435062}.csd-service-icon{font-size:25px;min-height:28px}.csd-service-icon svg{height:25px;width:25px}.csd-service-feature-label{font-size:11px}}
@media(max-width:370px){.csd-service-hero{padding:26px 12px 12px}.csd-service-button{padding:10px 11px;font-size:12px}}


/* v2.2: ONLY image and overlay bleed to viewport; widget/content stay in parent width. */
.elementor-widget-csd_service_hero .csd-service-hero{
  width:100%;max-width:100%;margin:0;
  background-image:none!important;background-color:transparent!important;
  overflow:visible;
}
.elementor-widget-csd_service_hero .csd-service-hero::after{
  content:"";position:absolute;top:0;bottom:0;
  left:50%;width:100vw;transform:translateX(-50%);
  background-color:#06101d;background-image:var(--csd-hero-image,none);
  background-position:inherit;background-size:cover;background-repeat:no-repeat;
  z-index:-2;pointer-events:none;
}
.elementor-widget-csd_service_hero .csd-service-hero::before{
  left:50%;right:auto;width:100vw;transform:translateX(-50%);
  z-index:-1;
}

/* Additional AC page widgets: respect Elementor container width */
.csd-ac-signs{background:#fff;padding:30px 0 36px;color:#121924}.csd-ac-signs h2{font-size:29px;line-height:1.25;font-weight:800;margin:0 0 22px}.csd-ac-sign-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:13px}.csd-ac-sign-card{min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:12px;background:#fff;border:1px solid #e9edf3;border-radius:9px;padding:22px 8px 18px;color:#18202c;text-decoration:none;box-shadow:0 3px 13px #17213a0a}.csd-ac-sign-icon{font-size:29px;color:#ff263e;line-height:1}.csd-ac-sign-icon svg{width:29px;height:29px;fill:currentColor}.csd-ac-sign-label{font-size:13px;font-weight:700;line-height:1.4}.csd-ac-onsite{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:310px;background:#f5f7fa;padding:30px 36px 0;color:#303744;overflow:hidden}.csd-ac-onsite-content{flex:1;min-width:0;padding-bottom:28px;z-index:1}.csd-ac-onsite h2{font-size:33px;line-height:1.2;font-weight:800;margin:0 0 3px;color:#111827}.csd-ac-onsite-subtitle{font-size:18px;font-weight:600;margin:0 0 23px}.csd-ac-onsite-benefits{display:grid;gap:12px;margin-bottom:23px}.csd-ac-onsite-benefit{display:flex;align-items:center;gap:11px;font-size:15px}.csd-ac-onsite-check{display:inline-flex;color:#ff263e;font-size:17px}.csd-ac-onsite-check svg{width:17px;height:17px;fill:currentColor}.csd-ac-onsite-button{display:inline-flex;gap:12px;align-items:center;justify-content:center;background:#ff263e;color:#fff!important;border-radius:6px;padding:13px 22px;font-weight:700;text-decoration:none!important;font-size:14px}.csd-ac-onsite-visual{width:49%;align-self:stretch;display:flex;align-items:flex-end;justify-content:center;min-width:0}.csd-ac-onsite-visual img{width:100%;height:auto;max-height:360px;object-fit:contain;object-position:bottom center}.csd-ac-onsite-image-placeholder{align-self:center;padding:30px 12px;text-align:center;color:#64748b;border:2px dashed #cbd5e1;border-radius:8px;font-size:13px}
@media(max-width:767px){.csd-ac-signs{padding:24px 0}.csd-ac-signs h2{font-size:23px}.csd-ac-sign-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.csd-ac-sign-card{padding:16px 5px;gap:8px}.csd-ac-sign-label{font-size:11px}.csd-ac-sign-icon{font-size:24px}.csd-ac-sign-icon svg{width:24px;height:24px}.csd-ac-onsite{padding:24px 18px 0;gap:10px;flex-direction:column;align-items:stretch}.csd-ac-onsite h2{font-size:26px}.csd-ac-onsite-subtitle{font-size:15px}.csd-ac-onsite-benefit{font-size:13px}.csd-ac-onsite-content{padding-bottom:10px}.csd-ac-onsite-visual{width:100%!important;max-height:260px}.csd-ac-onsite-visual img{max-height:260px}}

/* v2.4 granular editable item additions */
.csd-service-item-image,.csd-sign-item-image{width:1em;height:1em;object-fit:contain;display:block}
.csd-service-feature-description,.csd-ac-sign-item-description{display:block;font-size:11px;line-height:1.4;opacity:.85;text-align:center}
.csd-ac-sign-description{margin:0 0 15px}
.csd-benefit-description{display:block;font-size:12px;opacity:.8;margin-top:3px}
.csd-ac-onsite{background-size:cover;background-position:center}

/* Standalone reorderable icons widget */
.csd-standalone-section{padding:25px 15px;background:#071323;color:#fff;box-sizing:border-box}
.csd-standalone-section *{box-sizing:border-box}
.csd-standalone-heading{text-align:center;color:inherit;margin:0 0 22px}
.csd-standalone-icons{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}
.csd-standalone-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;text-align:center;padding:16px 8px;color:inherit;text-decoration:none!important;min-width:0;transition:background .2s}
.csd-standalone-icon{display:flex;align-items:center;justify-content:center;font-size:30px;color:#fff}
.csd-standalone-icon svg,.csd-standalone-icon img{width:30px;height:30px;object-fit:contain;fill:currentColor}
.csd-standalone-label{font-size:13px;font-weight:600;line-height:1.4}
.csd-standalone-description{font-size:12px;opacity:.8}
@media(max-width:767px){.csd-standalone-icons{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* v2.6 full-bleed section BACKGROUNDS ONLY. Layout follows the Elementor parent. */
.elementor-widget-csd_service_hero .csd-service-hero::after{background-position:var(--csd-bg-position,center center)}
.elementor-widget-csd_ac_signs .csd-ac-signs,
.elementor-widget-csd_service_icons_standalone .csd-standalone-section,
.elementor-widget-csd_ac_onsite .csd-ac-onsite{position:relative;isolation:isolate;overflow:visible}
.elementor-widget-csd_ac_signs .csd-ac-signs::before,
.elementor-widget-csd_service_icons_standalone .csd-standalone-section::before,
.elementor-widget-csd_ac_onsite .csd-ac-onsite::before{
 content:"";position:absolute;top:0;bottom:0;left:50%;width:100vw;
 transform:translateX(-50%);background:inherit;z-index:-1;pointer-events:none;
}
.elementor-widget-csd_ac_onsite .csd-ac-onsite{background-position:center;background-size:cover}
.elementor-widget-csd_ac_onsite .csd-ac-onsite::before{background-position:center;background-size:cover}
/* Maintain clean content bounds with user-controlled Elementor container sizing. */
.elementor-widget-csd_service_hero,.elementor-widget-csd_ac_signs,
.elementor-widget-csd_service_icons_standalone,.elementor-widget-csd_ac_onsite{max-width:100%}

/* v2.7 Hero is only background, title, description, and two buttons. */
.elementor-widget-csd_service_hero .csd-service-hero{justify-content:center}
.elementor-widget-csd_service_hero .csd-service-main{padding:0;flex:0 1 auto}
.elementor-widget-csd_service_hero .csd-service-hero::after{background-position:var(--csd-bg-position,center center)}
