/* Helix Ultimate error page fixes */
html.error-page,
html.error-page body {
  background-color: transparent !important;
}

/* Remove the top/bottom padding that creates the white space */
html.error-page body {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  margin: 0 !important;

  /* Force the background image to start at the top */
  background-position: 50% 0% !important;
  background-size: cover !important;
  background-repeat: no-repeat !important;
}

/* Let the background show full height */
html.error-page body {
  min-height: 100vh !important;
}

/* If Helix flex-centering is causing weird cropping, neutralize it */
html.error-page body {
  display: block !important;
}
/* ===== Helix error page: remove the white wrapper ===== */
html.error-page,
html.error-page body{
  height: 100% !important;
  min-height: 100vh !important;
  background-color: transparent !important;
}

/* Helix puts everything inside .container — make it transparent and full width */
html.error-page body .container{
  background: transparent !important;
  background-color: transparent !important;
  max-width: 100% !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* Remove any white "module chrome" Helix adds */
html.error-page body .error-modules,
html.error-page body .sp-module,
html.error-page body .sp-module-content{
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* Hide the Helix module title that shows "404" */
html.error-page body .sp-module-title{
  display: none !important;
}

/* OPTIONAL: hide Helix default error header/logo/button (so only your SPPB page shows) */
html.error-page body .error-logo,
html.error-page body .error-code,
html.error-page body .error-message,
html.error-page body a.btn{
  display: none !important;
}

/* Guardian service-page system, 2026-11-06. Scoped to expanded service content. */
.guardian-service-content{--gs-ink:#173954;--gs-blue:#075b94;--gs-line:#d6e5ef;--gs-light:#f2f7fb;width:100%;max-width:1100px;margin-inline:auto;color:#24384b;font-size:17px;line-height:1.75;text-align:left;overflow-wrap:anywhere}
.sppb-row:has(> [class*="sppb-col-"] .guardian-service-content):not(:has(.sppb-row .guardian-service-content)){max-width:1100px;margin-left:auto;margin-right:auto}
.sppb-row:has(> [class*="sppb-col-"] .guardian-service-content):not(:has(.sppb-row .guardian-service-content))>[class*="sppb-col-"]{flex:0 0 100%!important;width:100%!important;max-width:100%!important}
.guardian-service-content :is(h2,h3,h4){color:var(--gs-ink);font-weight:700;line-height:1.3;letter-spacing:-.012em;scroll-margin-top:110px}
.guardian-service-content h2{font-size:clamp(27px,2.6vw,34px);margin:48px 0 18px}
.guardian-service-content h3{font-size:clamp(21px,2vw,25px);margin:30px 0 14px}
.guardian-service-content p{margin:0 0 18px}.guardian-service-content li{margin-bottom:10px}.guardian-service-content ul,.guardian-service-content ol{padding-left:24px;margin:0 0 22px}
.guardian-service-content a{color:var(--gs-blue);text-decoration:underline;text-underline-offset:3px}.guardian-service-content a:hover{color:#043d65}
.guardian-service-content .gs-service-lead{font-size:20px;line-height:1.65;color:var(--gs-ink);max-width:85ch}
.guardian-service-content .gs-service-toc{display:flex;flex-wrap:wrap;gap:9px;margin:26px 0 36px;padding:18px;border:1px solid var(--gs-line);border-radius:12px;background:#fff}
.guardian-service-content .gs-service-toc a{display:inline-flex;align-items:center;min-height:44px;padding:8px 12px;border-radius:7px;background:var(--gs-light);font-size:15px;font-weight:600;text-decoration:none}
.guardian-service-content .gs-service-grid,.guardian-service-content .gs-service-faq-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start;margin:24px 0 32px}
.guardian-service-content .gs-service-card{padding:26px;border:1px solid var(--gs-line);border-radius:14px;background:var(--gs-light)}
.guardian-service-content .gs-service-card h3{margin-top:0}.guardian-service-content .gs-service-card p:last-child{margin-bottom:0}
.guardian-service-content .gs-service-faq-group>h3{margin-top:0;padding-bottom:12px;border-bottom:2px solid #83b5d6}
.guardian-service-content details.gs-service-faq-item{margin:0 0 12px;border:1px solid var(--gs-line);border-radius:10px;background:white;overflow:hidden}
.guardian-service-content details.gs-service-faq-item[open]{background:var(--gs-light)}
.guardian-service-content details.gs-service-faq-item summary{padding:18px 20px;min-height:56px;color:var(--gs-ink);font-weight:700;font-size:17px;line-height:1.45;cursor:pointer;list-style-position:inside}
.guardian-service-content details.gs-service-faq-item summary::marker{color:var(--gs-blue)}
.guardian-service-content .gs-service-answer{padding:0 22px 18px}.guardian-service-content .gs-service-answer p{margin:10px 0 0}
.guardian-service-content .gs-service-cta{padding:32px;margin:38px 0;border-radius:16px;background:#103f63;color:#fff}
.guardian-service-content .gs-service-cta :is(h2,h3){color:#fff;margin-top:0}.guardian-service-content .gs-service-cta p{color:#fff}
.guardian-service-content .gs-service-button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 22px;border-radius:7px;background:var(--gs-blue);color:#fff!important;font-weight:700;text-align:center;text-decoration:none;line-height:1.4}
.guardian-service-content .gs-service-button:hover{background:#034774}.guardian-service-content .gs-service-cta .gs-service-button{background:#fff;color:#103f63!important}
.guardian-service-content :is(a,summary):focus-visible{outline:3px solid #147fae;outline-offset:4px}
.guardian-service-content .gs-service-note{padding:18px 22px;border-left:4px solid #76aace;background:var(--gs-light);font-size:16px}
@media(max-width:767px){.guardian-service-content{font-size:16px;line-height:1.7}.guardian-service-content .gs-service-lead{font-size:18px}.guardian-service-content .gs-service-grid,.guardian-service-content .gs-service-faq-grid{grid-template-columns:minmax(0,1fr);gap:20px}.guardian-service-content .gs-service-card,.guardian-service-content .gs-service-cta{padding:22px}.guardian-service-content .gs-service-toc{padding:12px}.guardian-service-content details.gs-service-faq-item summary{padding:17px 16px}.guardian-service-content .gs-service-answer{padding:0 18px 18px}.guardian-service-content h2{margin-top:36px}}

/* Guardian design inquiry: readable controls and complete action labels. */
#webform4792126000009849144 .zcwf_col_lab,#webform4792126000009849144 .zcwf_col_fld{float:none!important;width:100%;text-align:left;margin:0;padding:0}
#webform4792126000009849144 .zcwf_col_lab{margin-bottom:6px}
#webform4792126000009849144 .zcwf_row{margin:0 0 18px}
#crmWebToEntityForm #webform4792126000009849144 input[type="text"],#crmWebToEntityForm #webform4792126000009849144 input[type="email"],#crmWebToEntityForm #webform4792126000009849144 input[type="tel"],#crmWebToEntityForm #webform4792126000009849144 textarea,#crmWebToEntityForm #webform4792126000009849144 select{width:100%;min-height:46px;padding:10px 12px;background:#fff!important;color:#173f68!important;border:1px solid #a9bfce!important;border-radius:5px;float:none;font-size:16px;line-height:1.4}
#crmWebToEntityForm #webform4792126000009849144 textarea{min-height:110px}
#crmWebToEntityForm #webform4792126000009849144 input::placeholder,#crmWebToEntityForm #webform4792126000009849144 textarea::placeholder{color:#546a7c!important;opacity:1}
#webform4792126000009849144 .zcwf_button,#webform4792126000009849144 .zcwf_call_button{max-width:none;min-height:48px;padding:12px 16px;margin:8px 8px 0 0;white-space:normal;text-overflow:clip;vertical-align:middle}
#webform4792126000009849144 :is(input,textarea,select,a):focus-visible{outline:3px solid #ffd36b;outline-offset:3px}

/* Keep shared service content readable across light and dark page sections. */
.guardian-service-content{box-sizing:border-box;padding:clamp(20px,3vw,40px);border:1px solid #d6e5ef;border-radius:14px;background:#fff;color:#24384b}
.guardian-service-content>section:first-child>h2:first-child,.guardian-service-content>h2:first-child{margin-top:0}
