:root {
  --spc-shared-hero-image: url("https://spcenter.pl/wp-content/uploads/2026/01/high-quality-shot-peening-2.jpg");
  --spc-shared-hero-overlay: linear-gradient(90deg, rgba(10, 25, 53, .94) 0%, rgba(13, 43, 69, .84) 52%, rgba(13, 43, 69, .48) 100%);
  --spc-shared-hero-content-inset: max(clamp(1rem, 5vw, 5rem), calc((100% - 1440px) / 2));
}

/* Keep every desktop submenu above page heroes and cards. */
body .wp-site-blocks > header.wp-block-template-part,
body .wp-site-blocks > header.wp-block-template-part > * {
  z-index: 1000 !important;
}
body .wp-site-blocks > header.wp-block-template-part .wp-block-navigation__responsive-container,
body .wp-site-blocks > header.wp-block-template-part .wp-block-navigation__submenu-container {
  z-index: 1001 !important;
}

/* Quality-family heroes: keep useful content only and align its baseline
   and left edge to the Industries reference grid. */
body .spc-quality-hero .spc-quality-breadcrumb {
  display: none !important;
}
body .spc-quality-hero {
  box-sizing: border-box !important;
  margin-inline: 0 !important;
  transform: none !important;
  width: 100% !important;
}
@media (min-width: 1025px) {
  body .sp-outsourcing,
  body .wp-site-blocks main .sp-outsourcing {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  body .sp-outsourcing > .sp-intro {
    margin-left: 0 !important;
    margin-right: 0 !important;
    width: 100% !important;
  }
  body .spc-quality-hero {
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    padding-bottom: 36px !important;
    padding-left: var(--spc-shared-hero-content-inset) !important;
    padding-right: var(--spc-shared-hero-content-inset) !important;
    padding-top: 184px !important;
  }
  body .spc-quality-hero .spc-quality-hero__inner {
    margin: 0 !important;
    max-width: 1440px !important;
    width: 100% !important;
  }
  body .spc-quality-hero .spc-quality-hero__eyebrow {
    line-height: 1.7 !important;
    margin: 0 0 .8rem !important;
  }
}

/* Outsourcing family landing pages. */
body .entry-content > .sp-outsourcing { margin-block-start: 0 !important; }
body .sp-outsourcing,
body .wp-site-blocks main .sp-outsourcing {
  margin-inline: 0 !important;
  max-width: none !important;
  padding-top: 0 !important;
  width: 100% !important;
}
body .sp-outsourcing > .sp-content-layout {
  margin-inline: auto !important;
  max-width: 1440px !important;
  width: 100% !important;
}
body .sp-outsourcing > .sp-intro {
  background: var(--spc-shared-hero-overlay), var(--spc-shared-hero-image) center 44% / cover no-repeat;
  border: 0 !important;
  box-sizing: border-box;
  color: #fff;
  display: flex !important;
  flex-direction: column !important;
  height: 560px;
  justify-content: flex-start !important;
  margin: 0 -48px !important;
  max-height: 560px;
  max-width: none !important;
  min-height: 560px;
  overflow: hidden;
  padding: 184px var(--spc-shared-hero-content-inset) 36px !important;
  position: relative !important;
  width: calc(100% + 96px) !important;
  z-index: 0 !important;
}
body .sp-outsourcing > .sp-intro .sp-eyebrow {
  color: #72c8ec;
  font-size: .84rem;
  font-weight: 800;
  letter-spacing: .1em;
  line-height: 1.7;
  margin: 0 0 .8rem;
  text-transform: uppercase;
}
body .sp-outsourcing > .sp-intro h1 {
  color: #fff !important;
  font-size: clamp(2.2rem, 3.4vw, 3.4rem);
  letter-spacing: -.025em;
  line-height: 1.04;
  margin: 0;
  max-width: 26ch;
}
body .sp-outsourcing > .sp-intro .sp-lead,
body .sp-outsourcing > .sp-intro > p:not(.sp-eyebrow):not(.sp-review) {
  color: rgba(255,255,255,.9) !important;
  font-size: clamp(1rem, 1.25vw, 1.08rem);
  line-height: 1.45;
  margin: .8rem 0 0;
  max-width: 66ch;
}
body .sp-outsourcing > .sp-intro .sp-review {
  border-top: 1px solid rgba(255,255,255,.24);
  color: rgba(255,255,255,.78) !important;
  display: none !important;
  font-size: .82rem;
  line-height: 1.4;
  margin: .7rem 0 0;
  max-width: 74ch;
  padding-top: .7rem;
}
body .sp-outsourcing > .sp-intro .sp-review strong { color: #fff; }

/* Knowledge-base hub pages generated by the navigation module. */
body .entry-content > .sp-kb-hub { margin-block-start: 0 !important; }
body.sp-kb-hub-page .sp-kb-hub {
  margin-inline: 0 !important;
  padding-top: 0 !important;
  width: 100% !important;
}
body.sp-kb-hub-page .sp-kb-hub-header {
  background: var(--spc-shared-hero-overlay), var(--spc-shared-hero-image) center 44% / cover no-repeat;
  box-sizing: border-box;
  color: #fff;
  height: 560px;
  margin-left: 0 !important;
  max-height: 560px;
  max-width: none !important;
  min-height: 560px;
  overflow: hidden;
  padding: 184px var(--spc-shared-hero-content-inset) 36px !important;
  position: relative !important;
  width: 100% !important;
  z-index: 0 !important;
}
body.sp-kb-hub-page .sp-kb-hub-header::before {
  color: #72c8ec;
  display: block;
  font-size: .84rem;
  font-weight: 800;
  letter-spacing: .1em;
  line-height: 1.7;
  margin: 0 0 .8rem;
  text-transform: uppercase;
}
html:lang(pl) body.sp-kb-hub-page .sp-kb-hub-header::before { content: "Baza wiedzy technicznej"; }
html:lang(en) body.sp-kb-hub-page .sp-kb-hub-header::before { content: "Technical knowledge base"; }
html:lang(de) body.sp-kb-hub-page .sp-kb-hub-header::before { content: "Technische Wissensdatenbank"; }
html:lang(sv) body.sp-kb-hub-page .sp-kb-hub-header::before { content: "Teknisk kunskapsbas"; }
html:lang(cs) body.sp-kb-hub-page .sp-kb-hub-header::before { content: "Technická znalostní báze"; }
html:lang(sk) body.sp-kb-hub-page .sp-kb-hub-header::before { content: "Technická znalostná báza"; }
body.sp-kb-hub-page .sp-kb-hub-header h1 {
  color: #fff !important;
  font-size: clamp(2.2rem, 3.4vw, 3.4rem);
  letter-spacing: -.025em;
  line-height: 1.04;
  margin: 0;
  max-width: 26ch;
}
body.sp-kb-hub-page .sp-kb-hub-header p {
  color: rgba(255,255,255,.9) !important;
  font-size: clamp(1rem, 1.25vw, 1.08rem);
  line-height: 1.5;
  margin: .8rem 0 0;
  max-width: 66ch;
}
body.sp-kb-hub-page .sp-kb-hub-grid {
  margin: clamp(2.25rem, 4vw, 3.5rem) auto 0 !important;
  max-width: 1180px;
  width: min(1180px, calc(100% - 32px));
}

@media (max-width: 1024px) {
  body .sp-outsourcing > .sp-intro,
  body.sp-kb-hub-page .sp-kb-hub-header {
    height: auto;
    max-height: none;
    min-height: 0;
    overflow: visible;
    padding: 160px 20px 56px !important;
  }
}

@media (max-width: 700px) {
  body .sp-outsourcing,
  body .wp-site-blocks main .sp-outsourcing {
    padding-left: 16px !important;
    padding-right: 16px !important;
    padding-top: 0 !important;
  }
  body .sp-outsourcing > .sp-intro {
    margin-left: -16px !important;
    margin-right: -16px !important;
    padding: 136px 20px 44px !important;
    width: calc(100% + 32px) !important;
  }
  body.sp-kb-hub-page .sp-kb-hub-header { padding: 136px 20px 44px !important; }
  body .sp-outsourcing > .sp-intro h1,
  body.sp-kb-hub-page .sp-kb-hub-header h1 {
    font-size: clamp(2.15rem, 11vw, 3.25rem);
  }
}
