.spc-rfq-panel {
  --spc-ink: #17232d;
  --spc-muted: #53616c;
  --spc-accent: #145a7a;
  --spc-accent-dark: #0c4058;
  --spc-paper: #ffffff;
  --spc-soft: #eef6f9;
  --spc-line: #d8e2e7;
  background: var(--spc-paper);
  border: 1px solid var(--spc-line);
  border-radius: 18px;
  box-shadow: 0 14px 42px rgba(20, 55, 72, 0.1);
  color: var(--spc-ink);
  margin: 2rem auto;
  max-width: 980px;
  overflow: hidden;
}

.spc-rfq-panel__header {
  background: var(--spc-soft);
  border-bottom: 1px solid var(--spc-line);
  padding: clamp(1.25rem, 3vw, 2.25rem);
  position: static !important;
}

.spc-rfq-panel__header h2 {
  color: var(--spc-ink);
  font-size: clamp(1.65rem, 3.2vw, 2.4rem);
  line-height: 1.12;
  margin: 0 0 0.65rem;
}

.spc-rfq-panel__header p {
  color: var(--spc-muted);
  font-size: 1.05rem;
  margin: 0;
  max-width: 70ch;
}

.spc-rfq-panel__header .spc-rfq-panel__attachment {
  font-size: 0.95rem;
  margin-top: 0.75rem;
}

.spc-rfq-panel__attachment a {
  color: var(--spc-accent);
  font-weight: 700;
}

.spc-rfq-panel__form {
  padding: clamp(1.25rem, 3vw, 2.25rem);
}

.spc-rfq-panel .wpforms-field-label {
  color: var(--spc-ink);
  font-weight: 650;
}

.spc-rfq-panel input:not([type="checkbox"]):not([type="radio"]),
.spc-rfq-panel select,
.spc-rfq-panel textarea {
  border: 1px solid #9eacb5;
  border-radius: 8px;
  min-height: 46px;
}

.spc-rfq-panel input:focus,
.spc-rfq-panel select:focus,
.spc-rfq-panel textarea:focus {
  border-color: var(--spc-accent);
  box-shadow: 0 0 0 3px rgba(20, 90, 122, 0.16);
  outline: none;
}

.spc-rfq-panel button[type="submit"] {
  background: var(--spc-accent);
  border: 0;
  border-radius: 9px;
  color: #fff;
  cursor: pointer;
  font-size: 1rem;
  font-weight: 750;
  min-height: 48px;
  padding: 0.75rem 1.35rem;
}

.spc-rfq-panel button[type="submit"]:hover,
.spc-rfq-panel button[type="submit"]:focus-visible {
  background: var(--spc-accent-dark);
}

.spc-config-error {
  border-left: 4px solid #b42318;
  color: #7a271a;
  padding: 0.75rem 1rem;
}

.spc-geo-article {
  --spc-ink: #17232d;
  --spc-muted: #53616c;
  --spc-accent: #145a7a;
  --spc-accent-dark: #0c4058;
  --spc-soft: #eef6f9;
  --spc-line: #d8e2e7;
  color: var(--spc-ink);
  margin: clamp(2.5rem, 6vw, 5rem) auto;
  max-width: 1120px;
  padding: 0 clamp(1rem, 3vw, 2rem);
}

.spc-geo-article--standalone {
  margin-top: 0;
  padding-top: max(
    calc(var(--spc-fixed-header-height, 0px) + clamp(1.25rem, 3vw, 2.5rem)),
    10rem
  );
}

.spc-geo-article h1,
.spc-geo-article h2,
.spc-geo-article h3,
.spc-geo-article h4 {
  color: var(--spc-ink);
  line-height: 1.2;
  scroll-margin-top: calc(var(--spc-fixed-header-height, 110px) + 1rem);
}

.spc-geo-article h1 {
  font-size: clamp(2rem, 4.8vw, 3.8rem);
  max-width: 22ch;
}

.spc-geo-article h2 {
  font-size: clamp(1.8rem, 3.4vw, 2.8rem);
  margin-top: 2.8rem;
}

.spc-geo-article h3 {
  font-size: clamp(1.4rem, 2.5vw, 2rem);
  margin-top: 2.25rem;
}

.spc-geo-article h4 {
  font-size: clamp(1.15rem, 2vw, 1.45rem);
  margin-top: 1.75rem;
}

.spc-geo-article p,
.spc-geo-article li,
.spc-geo-article td,
.spc-geo-article th {
  font-size: 1.03rem;
  line-height: 1.7;
}

.spc-geo-article > p:first-of-type {
  color: var(--spc-muted);
  font-size: clamp(1.08rem, 1.8vw, 1.28rem);
  max-width: 78ch;
}

.spc-geo-article ul,
.spc-geo-article ol {
  padding-left: 1.4rem;
}

.spc-table-wrap {
  border: 1px solid var(--spc-line);
  border-radius: 14px;
  margin: 1.5rem 0 2rem;
  overflow-x: auto;
}

.spc-geo-article table {
  border-collapse: collapse;
  margin: 0;
  min-width: 680px;
  width: 100%;
}

.spc-geo-article th,
.spc-geo-article td {
  border-bottom: 1px solid var(--spc-line);
  padding: 0.85rem 1rem;
  text-align: left;
  vertical-align: top;
}

.spc-geo-article th {
  background: var(--spc-soft);
  font-weight: 750;
}

.spc-geo-article tbody tr:last-child td {
  border-bottom: 0;
}

.spc-inline-cta-row {
  margin-top: 1.5rem;
}

.spc-inline-cta {
  align-items: center;
  background: var(--spc-accent);
  border-radius: 9px;
  color: #fff;
  display: inline-flex;
  font-weight: 750;
  justify-content: center;
  min-height: 50px;
  padding: 0.75rem 1.35rem;
  text-decoration: none;
}

.spc-inline-cta:hover,
.spc-inline-cta:focus-visible {
  background: var(--spc-accent-dark);
  color: #fff;
}

.spc-sticky-rfq {
  display: none;
}

.spc-discovery-card {
  --spc-discovery-ink: #17232d;
  --spc-discovery-accent: #145a7a;
  align-items: center;
  background: linear-gradient(135deg, #eef6f9 0%, #ffffff 100%);
  border: 1px solid #d8e2e7;
  border-radius: 16px;
  box-shadow: 0 10px 30px rgba(20, 55, 72, 0.08);
  color: var(--spc-discovery-ink);
  display: grid;
  gap: 1.5rem;
  grid-template-columns: minmax(0, 1fr) auto;
  margin: clamp(2.5rem, 6vw, 5rem) auto;
  max-width: 1120px;
  padding: clamp(1.25rem, 3vw, 2rem);
}

.spc-discovery-card__eyebrow {
  color: var(--spc-discovery-accent);
  font-size: 0.82rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  margin: 0 0 0.45rem;
  text-transform: uppercase;
}

.spc-discovery-card h2 {
  color: var(--spc-discovery-ink);
  font-size: clamp(1.45rem, 2.5vw, 2.1rem);
  line-height: 1.2;
  margin: 0 0 0.65rem;
}

.spc-discovery-card__copy > p:last-child {
  color: #53616c;
  line-height: 1.65;
  margin: 0;
  max-width: 72ch;
}

.spc-discovery-card__action {
  margin: 0;
}

.spc-discovery-card__action a {
  align-items: center;
  background: var(--spc-discovery-accent);
  border-radius: 9px;
  box-sizing: border-box;
  color: #fff;
  display: inline-flex;
  font-weight: 750;
  justify-content: center;
  min-height: 50px;
  padding: 0.75rem 1.25rem;
  text-align: center;
  text-decoration: none;
}

.spc-discovery-card__action a:hover,
.spc-discovery-card__action a:focus-visible {
  background: #0c4058;
  color: #fff;
}

.spc-footer-discovery {
  background: #17232d;
  border-top: 1px solid rgba(255, 255, 255, 0.12);
  box-sizing: border-box;
  padding: 0.85rem clamp(1rem, 4vw, 3rem);
  text-align: center;
  width: 100%;
}

.spc-footer-discovery a {
  color: #fff;
  font-size: 0.95rem;
  font-weight: 700;
  text-decoration: none;
}

.spc-footer-discovery a:hover,
.spc-footer-discovery a:focus-visible {
  color: #77b8d3;
  text-decoration: underline;
}

.spc-quality-hero {
  background:
    linear-gradient(90deg, rgba(10, 25, 53, 0.94) 0%, rgba(13, 43, 69, 0.84) 52%, rgba(13, 43, 69, 0.48) 100%),
    url("https://spcenter.pl/wp-content/uploads/2026/01/high-quality-shot-peening-2.jpg") center 44% / cover no-repeat;
  box-sizing: border-box;
  color: #fff;
  min-height: clamp(400px, 36vw, 560px);
  padding: max(calc(var(--spc-fixed-header-height, 110px) + 3rem), 9.5rem) clamp(1rem, 5vw, 5rem) clamp(3rem, 5vw, 3.75rem);
  bottom: auto !important;
  left: auto !important;
  position: relative !important;
  right: auto !important;
  top: auto !important;
  width: 100%;
  z-index: 0 !important;
}

.spc-quality-hero__inner {
  margin: 0 auto;
  max-width: 1440px;
}

.spc-quality-breadcrumb {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  font-size: 0.9rem;
  gap: 0.55rem;
  margin-bottom: 1.35rem;
}

.spc-quality-breadcrumb,
.spc-quality-breadcrumb a {
  color: rgba(255, 255, 255, 0.85);
}

.spc-quality-breadcrumb a:hover,
.spc-quality-breadcrumb a:focus-visible {
  color: #fff;
  text-decoration: underline;
}

.spc-quality-hero__eyebrow {
  color: #72c8ec;
  font-size: 0.84rem;
  font-weight: 800;
  letter-spacing: 0.1em;
  margin: 0 0 0.8rem;
  text-transform: uppercase;
}

.spc-quality-hero h1 {
  color: #fff;
  font-size: clamp(2.35rem, 4.25vw, 3.9rem);
  letter-spacing: -0.025em;
  line-height: 1.04;
  margin: 0;
  max-width: 26ch;
}

.spc-quality-hero__body {
  color: rgba(255, 255, 255, 0.9);
  font-size: clamp(1.05rem, 1.55vw, 1.3rem);
  line-height: 1.6;
  margin: 1.25rem 0 0;
  max-width: 66ch;
}

.spc-quality-hero__action {
  margin: 1.75rem 0 0;
}

.spc-quality-hero__action a {
  align-items: center;
  background: #1599d2;
  border-radius: 999px;
  color: #fff;
  display: inline-flex;
  font-weight: 750;
  justify-content: center;
  min-height: 50px;
  padding: 0.75rem 1.4rem;
  text-decoration: none;
}

.spc-quality-hero__action a:hover,
.spc-quality-hero__action a:focus-visible {
  background: #0f78a5;
  color: #fff;
}

.spc-quality-layout {
  align-items: start;
  display: grid;
  gap: clamp(2rem, 4vw, 4.5rem);
  grid-template-columns: minmax(240px, 290px) minmax(0, 1fr);
  margin: 0 auto;
  max-width: 1440px;
  padding: clamp(2.25rem, 5vw, 5rem) clamp(1rem, 4vw, 3rem);
}

.spc-quality-sidebar {
  align-self: start;
  position: sticky;
  top: calc(var(--spc-fixed-header-height, 110px) + 1.25rem);
}

.spc-quality-sidebar__disclosure {
  background: #fff;
  border: 1px solid #d8e2e7;
  border-radius: 14px;
  box-shadow: 0 10px 30px rgba(20, 55, 72, 0.08);
  overflow: hidden;
}

.spc-quality-sidebar__disclosure > summary {
  background: #eef6f9;
  color: #17232d;
  cursor: pointer;
  display: none;
  font-weight: 800;
  list-style-position: inside;
  padding: 1rem 1.1rem;
}

.spc-quality-sidebar__body {
  padding: 1rem;
}

.spc-quality-family-nav ul,
.spc-quality-toc ol {
  list-style: none;
  margin: 0;
  padding: 0;
}

.spc-quality-family-nav li + li,
.spc-quality-toc li + li {
  margin-top: 0.35rem;
}

.spc-quality-family-nav a,
.spc-quality-toc a {
  border-left: 3px solid transparent;
  color: #34424d;
  display: block;
  font-size: 0.94rem;
  line-height: 1.35;
  padding: 0.65rem 0.75rem;
  text-decoration: none;
}

.spc-quality-family-nav a:hover,
.spc-quality-family-nav a:focus-visible,
.spc-quality-toc a:hover,
.spc-quality-toc a:focus-visible {
  background: #f5fafc;
  color: #0c4058;
}

.spc-quality-family-nav a[aria-current="page"] {
  background: #e8f4f9;
  border-left-color: #1599d2;
  color: #0c4058;
  font-weight: 750;
}

.spc-quality-toc {
  border-top: 1px solid #d8e2e7;
  margin-top: 1rem;
  padding-top: 1rem;
}

.spc-quality-toc h2 {
  color: #17232d;
  font-size: 0.8rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  margin: 0 0 0.5rem;
  text-transform: uppercase;
}

.spc-quality-toc a.is-active {
  border-left-color: #1599d2;
  color: #0c4058;
  font-weight: 750;
}

.spc-quality-main {
  min-width: 0;
}

.spc-quality-main .spc-geo-article--standalone {
  margin: 0;
  max-width: 100%;
  padding: 0 !important;
}

.spc-quality-main .spc-geo-article--standalone > p:first-of-type {
  margin-top: 0;
}

.spc-quality-main [id] {
  scroll-margin-top: calc(var(--spc-fixed-header-height, 110px) + 1.5rem);
}

.spc-quality-certificate-link {
  margin: 1.25rem 0 2rem;
}

.spc-quality-certificate-link a {
  align-items: center;
  border: 1px solid #145a7a;
  border-radius: 9px;
  color: #145a7a;
  display: inline-flex;
  font-weight: 750;
  gap: 0.5rem;
  min-height: 46px;
  padding: 0.6rem 1rem;
  text-decoration: none;
}

.spc-quality-certificate-link a:hover,
.spc-quality-certificate-link a:focus-visible {
  background: #145a7a;
  color: #fff;
}

@media (min-width: 768px) and (max-width: 1024px) {
  .spc-geo-article--standalone {
    padding-top: max(
      calc(var(--spc-fixed-header-height, 0px) + 1.5rem),
      20rem
    );
  }
}

@media (max-width: 1024px) {
  .spc-quality-hero {
    min-height: 0;
    padding: max(calc(var(--spc-fixed-header-height, 110px) + 3rem), 10rem) 1.25rem 3.5rem;
  }

  .spc-quality-layout {
    display: block;
    padding-top: 1.5rem;
  }

  .spc-quality-sidebar {
    margin-bottom: 2rem;
    position: static;
  }

  .spc-quality-sidebar__disclosure > summary {
    display: block;
  }
}

@media (max-width: 767px) {
	.spc-quality-hero h1 {
		font-size: clamp(2.15rem, 11vw, 3.25rem);
	}

	.spc-quality-hero__action a {
		width: 100%;
	}

	.spc-discovery-card {
		display: block;
		margin-left: 1rem;
		margin-right: 1rem;
	}

	.spc-discovery-card__action {
		margin-top: 1.25rem;
	}

	.spc-discovery-card__action a {
		width: 100%;
	}

  .spc-geo-article--standalone {
    padding-top: max(
      calc(var(--spc-fixed-header-height, 0px) + 1.25rem),
      10rem
    );
  }

  body.spc-has-sticky-rfq {
    padding-bottom: 76px;
  }

  .spc-sticky-rfq {
    background: rgba(255, 255, 255, 0.96);
    border-top: 1px solid var(--spc-line, #d8e2e7);
    bottom: 0;
    display: block;
    left: 0;
    padding: 10px max(12px, env(safe-area-inset-right)) calc(10px + env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left));
    position: fixed;
    right: 0;
    z-index: 9990;
  }

  .spc-sticky-rfq__button {
    align-items: center;
    background: #145a7a;
    border-radius: 9px;
    color: #fff;
    display: flex;
    font-size: 1rem;
    font-weight: 750;
    justify-content: center;
    min-height: 50px;
    text-align: center;
    text-decoration: none;
  }

  .spc-sticky-rfq__button:focus-visible {
    outline: 3px solid #77b8d3;
    outline-offset: 2px;
  }
}

@media (prefers-reduced-motion: reduce) {
  html:focus-within {
    scroll-behavior: auto;
  }
}
