/* Industry single pages: each category supplies its own image and CMS body. */
body.sw-industry-single-page { background:#fff; }

/* Keep the shared transparent navigation over the category image, like other single pages. */
body.sw-site:not(.sw-home-rebuild).sw-industry-single-page .sw-industry-single-image-hero {
  display:block;
  min-height:0!important;
  height:auto;
  margin:0;
  overflow:hidden;
  align-items:initial;
  background:#202a30;
}
body.sw-site:not(.sw-home-rebuild).sw-industry-single-page .sw-industry-single-image-hero > img {
  position:relative;
  inset:auto;
  display:block;
  width:100%;
  height:auto;
  object-fit:contain;
  object-position:center;
}
body.sw-site:not(.sw-home-rebuild).sw-industry-single-page .sw-industry-single-image-hero .sw-visual-page-overlay {
  background:linear-gradient(90deg,rgba(14,18,20,.52),rgba(14,18,20,.16) 72%,rgba(14,18,20,.08));
}
.sw-industry-single-shell { width:min(1600px,calc(100% - 48px)); margin:0 auto; }
.sw-industry-single-intro { padding:30px 0 54px; background:#f6f7f8; }
.sw-industry-single-intro .sw-breadcrumbs { margin:0 0 38px; }
.sw-industry-single-heading { max-width:1040px; margin:0 auto 38px; text-align:center; }
.sw-industry-single-eyebrow { margin:0 0 14px; color:#bd1820; font-size:12px; font-weight:700; letter-spacing:.14em; line-height:1.5; }
.sw-industry-single-heading h1 { margin:0 auto 20px; color:#202a30; font-size:clamp(38px,5vw,68px); font-weight:700; line-height:1.08; }
.sw-industry-single-lead { max-width:850px; margin:0 auto 26px; color:#5f696f; font-size:18px; line-height:1.75; }
.sw-industry-single-button { display:inline-flex; min-height:52px; align-items:center; justify-content:center; gap:12px; padding:14px 23px; border:1px solid #b9141c; border-radius:4px; background:#b9141c; color:#fff; font-size:14px; font-weight:700; text-decoration:none; transition:background .2s ease,color .2s ease,border-color .2s ease; }
.sw-industry-single-button:hover { border-color:#8f1017; background:#8f1017; color:#fff; }
.sw-industry-single-image { margin:0; overflow:hidden; border-radius:12px; background:#e9ecee; }
.sw-industry-single-image img { display:block; width:100%; height:auto; object-fit:contain; }
.sw-industry-single-content { padding:76px 0 92px; }
.sw-industry-single-copy { max-width:1080px; margin:0 auto; color:#424a50; font-size:17px; line-height:1.8; overflow-wrap:anywhere; }
.sw-industry-single-copy > *:first-child { margin-top:0; }
.sw-industry-single-copy h2 { margin:42px 0 16px; color:#202a30; font-size:clamp(28px,3vw,38px); font-weight:700; line-height:1.2; }
.sw-industry-single-copy h3 { margin:32px 0 12px; color:#263238; font-size:23px; font-weight:700; line-height:1.3; }
.sw-industry-single-copy p { margin:0 0 18px; }
.sw-industry-single-copy ul,.sw-industry-single-copy ol { margin:0 0 24px; padding-left:1.4em; }
.sw-industry-single-copy li { margin:0 0 9px; padding-left:4px; }
.sw-industry-single-copy a { color:#ae171e; text-decoration:underline; text-underline-offset:3px; }
.sw-industry-single-cta { padding:68px 0; background:#a50f17; color:#fff; }
.sw-industry-single-cta-inner { display:flex; align-items:center; justify-content:space-between; gap:42px; }
.sw-industry-single-cta h2 { max-width:780px; margin:0 0 14px; color:#fff; font-size:clamp(30px,3.4vw,46px); line-height:1.15; }
.sw-industry-single-cta p:not(.sw-industry-single-eyebrow) { max-width:730px; margin:0; color:rgba(255,255,255,.84); font-size:16px; line-height:1.7; }
.sw-industry-single-cta .sw-industry-single-eyebrow { color:#ffd7d9; }
.sw-industry-single-button-light { flex:0 0 auto; border-color:rgba(255,255,255,.68); background:transparent; color:#fff; }
.sw-industry-single-button-light:hover { border-color:#fff; background:#fff; color:#9f1118; }
@media (max-width:900px) {
  .sw-industry-single-cta-inner { align-items:flex-start; flex-direction:column; }
}
@media (max-width:767px) {
  .sw-industry-single-shell { width:calc(100% - 32px); }
  .sw-industry-single-intro { padding:22px 0 34px; }
  .sw-industry-single-intro .sw-breadcrumbs { margin-bottom:28px; }
  .sw-industry-single-heading { margin-bottom:26px; text-align:left; }
  .sw-industry-single-eyebrow { margin-bottom:10px; font-size:11px; }
  .sw-industry-single-heading h1 { margin-bottom:14px; font-size:36px; line-height:1.12; }
  .sw-industry-single-lead { margin:0 0 20px; font-size:16px; line-height:1.65; }
  .sw-industry-single-image { border-radius:9px; }
  .sw-industry-single-image img { width:100%; height:auto; }
  .sw-industry-single-content { padding:48px 0 58px; }
  .sw-industry-single-copy { font-size:16px; line-height:1.75; }
  .sw-industry-single-copy h2 { margin-top:34px; font-size:29px; }
  .sw-industry-single-copy h3 { margin-top:26px; font-size:21px; }
  .sw-industry-single-cta { padding:54px 0; }
  .sw-industry-single-cta h2 { font-size:32px; }
  .sw-industry-single-cta .sw-industry-single-button { width:100%; }
}
@media (prefers-reduced-motion:reduce) {
  .sw-industry-single-page * { scroll-behavior:auto!important; transition:none!important; animation:none!important; }
}
