/* Solutek-inspired presentation for the existing secondary routes.
   Keep the original route content, form hooks and portal redirect unchanged. */
body:not(.home-solutek) main {
  --secondary-radius: 24px;
  --secondary-ink: #0b0b0d;
}
body:not(.home-solutek) main h1,
body:not(.home-solutek) main h2,
body:not(.home-solutek) main h3 { letter-spacing: -.045em; }
body:not(.home-solutek) main h1 { line-height: 1.08; }
body:not(.home-solutek) main h2 { line-height: 1.12; }
body:not(.home-solutek) main .eyebrow { letter-spacing: .12em; }
body:not(.home-solutek) main .eyebrow::before { border-radius: 50%; }
body:not(.home-solutek) main .breadcrumb { padding-block: 22px; font-size: 12px; }
body:not(.home-solutek) main .btn { border-radius: 9px; min-height: 52px; }
body:not(.home-solutek) main .section { padding-block: 92px; }
body:not(.home-solutek) main > section.dark {
  margin-inline: 20px;
  border-radius: var(--secondary-radius);
  background: var(--secondary-ink);
  overflow: clip;
}
body:not(.home-solutek) main > section.dark > .wrap {
  width: min(calc(100% - 80px), 1240px);
}
body:not(.home-solutek) main .detail-hero { padding-block: 66px; }
body:not(.home-solutek) main .detail-grid { gap: 66px; }
body:not(.home-solutek) main .detail-hero h1 { font-size: clamp(2.6rem, 4.6vw, 4.4rem); }
body:not(.home-solutek) main .detail-hero .lead { font-size: 17px; }
body:not(.home-solutek) main .detail-hero .service-visual {
  border-radius: 20px !important;
  border: 1px solid #ffffff36;
  background: #0b0b0d;
}
body:not(.home-solutek) main > section.dark > .page-heading {
  max-width: 1240px;
  padding-block: 66px;
}
body:not(.home-solutek) main .page-heading h1 { max-width: 900px; }
body:not(.home-solutek) main .page-heading .lead { max-width: 740px; }
body:not(.home-solutek) main > .page-heading {
  max-width: 1240px;
  padding: 46px 0 65px;
}
body:not(.home-solutek) main .subnav { border-bottom: 1px solid #0b0b0d20; }
body:not(.home-solutek) main .subnav .wrap { gap: 36px; padding-block: 24px; }
body:not(.home-solutek) main .subnav a { padding: 4px 0; text-underline-offset: 6px; }
body:not(.home-solutek) main .subnav a:hover { color: #a34200; }
body:not(.home-solutek) main .feature-grid {
  border: 0;
  gap: 20px;
  margin-top: 45px;
}
body:not(.home-solutek) main .feature {
  border: 1px solid #0b0b0d24;
  border-radius: 17px;
  padding: 31px;
}
body:not(.home-solutek) main .feature-index {
  display: grid;
  place-items: center;
  width: 37px;
  height: 37px;
  border-radius: 10px;
  background: #ff6a00;
  color: #0b0b0d;
  font-weight: 800;
}
body:not(.home-solutek) main .feature h3 { font-size: 21px; }
body:not(.home-solutek) main .work-grid { gap: 70px; }
body:not(.home-solutek) main .steps { border-top: 0; }
body:not(.home-solutek) main .step { grid-template-columns: 44px 1fr; gap: 20px; }
body:not(.home-solutek) main .step:first-child { padding-top: 0; }
body:not(.home-solutek) main .step::before {
  border: 1px solid #ff6a00;
  color: #ff6a00;
  border-radius: 50%;
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  padding: 0;
}
body:not(.home-solutek) main .scope-block { padding-block: 34px; }
body:not(.home-solutek) main .related {
  border: 1px solid #ffffff4a;
  border-radius: 17px;
  padding: 29px;
  transition: border-color .2s, transform .2s;
}
body:not(.home-solutek) main .related:hover { border-color: #ff6a00; box-shadow: none; transform: translateY(-3px); }
body:not(.home-solutek) main .related > .arrow { color: #ff6a00; }
body:not(.home-solutek) main .directory-grid { gap: 28px; }
body:not(.home-solutek) main .directory-card { border: 1px solid #0b0b0d24; border-radius: 22px; }
body:not(.home-solutek) main .directory-card .service-visual { background: #0b0b0d; }
body:not(.home-solutek) main .directory-copy { padding: 33px; }
body:not(.home-solutek) main .directory-card:nth-child(4n+2) .directory-copy,
body:not(.home-solutek) main .directory-card:nth-child(4n+3) .directory-copy { background: #fff; color: #0b0b0d; }
body:not(.home-solutek) main .about-picture { border-radius: 22px; }
body:not(.home-solutek) main .value { border-color: #ffffff40; padding-block: 26px; }
body:not(.home-solutek) main .faq-list { border-top: 0; }
body:not(.home-solutek) main details.faq { border-bottom: 1px solid #0b0b0d29; }
body:not(.home-solutek) main .faq summary { padding-block: 24px; }
body:not(.home-solutek) main .faq[open] summary { color: #a34200; }
body:not(.home-solutek) main .cta-band {
  margin: 0 20px 20px;
  padding-block: 60px;
  border-radius: var(--secondary-radius);
}
body:not(.home-solutek) main .cta-band .wrap { width: min(calc(100% - 80px),1240px); }
body:not(.home-solutek) main .form-layout { gap: 70px; padding-bottom: 85px; }
body:not(.home-solutek) main .form-panel { border: 1px solid #0b0b0d26; padding: 36px; border-radius: 22px; }
body:not(.home-solutek) main .form-panel h2 { font-size: 27px; }
body:not(.home-solutek) main .preview-note { border-radius: 0 8px 8px 0; }
body:not(.home-solutek) main .field input,
body:not(.home-solutek) main .field select,
body:not(.home-solutek) main .field textarea { border-color: #0b0b0d50; border-radius: 8px; padding: 13px; }
body:not(.home-solutek) main .form-result { border-color: #0b0b0d30; border-radius: 13px; }
body:not(.home-solutek) main .contact-box { background: #0b0b0d; border-radius: 18px; border-left: 0; padding: 30px; }
body:not(.home-solutek) main .scan-layout { gap: 64px; }
body:not(.home-solutek) main .scan-item { border-color: #ffffff40; }
body:not(.home-solutek) main .scan-layout .form-panel { box-shadow: 0 16px 45px #0002; }
body:not(.home-solutek) main .privacy-copy { max-width: 820px; }
body:not(.home-solutek) main .privacy-copy section + section { padding-top: 32px; margin-top: 32px; border-top: 1px solid #0b0b0d20; }
body:not(.home-solutek) main .portal-card { border-radius: 24px; }
body:not(.home-solutek) main .portal-lock { border-radius: 14px; }
@media (max-width: 1100px) {
  body:not(.home-solutek) main .detail-grid,
  body:not(.home-solutek) main .work-grid,
  body:not(.home-solutek) main .form-layout,
  body:not(.home-solutek) main .scan-layout { gap: 38px; }
  body:not(.home-solutek) main > section.dark > .wrap,
  body:not(.home-solutek) main .cta-band .wrap { width: calc(100% - 48px); }
}
@media (max-width: 850px) {
  body:not(.home-solutek) main .section { padding-block: 70px; }
  body:not(.home-solutek) main .detail-grid { grid-template-columns: 1fr; gap: 40px; }
  body:not(.home-solutek) main .detail-hero .service-visual { width: 100%; max-width: 620px; }
  body:not(.home-solutek) main .detail-hero .lead { max-width: 640px; }
  body:not(.home-solutek) main .detail-hero { padding-block: 48px; }
  body:not(.home-solutek) main > section.dark > .page-heading { padding-block: 48px; }
  body:not(.home-solutek) main .form-layout,
  body:not(.home-solutek) main .scan-layout { grid-template-columns: 1fr; gap: 38px; }
  body:not(.home-solutek) main .form-panel { padding: 30px; }
  body:not(.home-solutek) main .field-row { grid-template-columns: 1fr 1fr; gap: 18px; }
  body:not(.home-solutek) main .cta-band { padding-block: 45px; }
}
@media (max-width: 620px) {
  body:not(.home-solutek) main { --secondary-radius: 19px; }
  body:not(.home-solutek) main > section.dark { margin-inline: 10px; }
  body:not(.home-solutek) main > section.dark > .wrap,
  body:not(.home-solutek) main .cta-band .wrap { width: calc(100% - 36px); }
  body:not(.home-solutek) main .breadcrumb { padding-block: 18px; }
  body:not(.home-solutek) main .section { padding-block: 56px; }
  body:not(.home-solutek) main .detail-hero { padding-block: 38px; }
  body:not(.home-solutek) main .detail-hero h1 { font-size: clamp(2.25rem, 9vw, 3rem); }
  body:not(.home-solutek) main .detail-hero .lead { font-size: 15px; }
  body:not(.home-solutek) main > section.dark > .page-heading { padding-block: 38px; }
  body:not(.home-solutek) main > .page-heading { padding-block: 28px 40px; }
  body:not(.home-solutek) main .page-heading h1 { font-size: 2.5rem; }
  body:not(.home-solutek) main .subnav .wrap { gap: 24px; padding-block: 20px; }
  body:not(.home-solutek) main .feature-grid { gap: 14px; }
  body:not(.home-solutek) main .feature { padding: 26px; }
  body:not(.home-solutek) main .directory-copy { padding: 26px; }
  body:not(.home-solutek) main .form-layout { padding-bottom: 60px; }
  body:not(.home-solutek) main .form-panel { padding: 24px 20px; border-radius: 17px; }
  body:not(.home-solutek) main .form-panel h2 { font-size: 23px; }
  body:not(.home-solutek) main .field-row { grid-template-columns: 1fr; gap: 0; }
  body:not(.home-solutek) main .cta-band { margin: 0 10px 10px; padding-block: 36px; }
  body:not(.home-solutek) main .cta-band .wrap { align-items: flex-start; }
  body:not(.home-solutek) main .related { padding: 25px; }
  body:not(.home-solutek) main .step { gap: 15px; }
}
@media (prefers-reduced-motion: reduce) {
  body:not(.home-solutek) main .related { transition: none; }
}
