html,body{margin:0;padding:0;max-width:100%;overflow-x:clip}*,*::before,*::after{box-sizing:border-box}.core-skip{position:fixed;left:12px;top:12px;z-index:99999;padding:10px 14px;background:#fff;color:#0a0a0a;border:2px solid #F15922;border-radius:8px;font:700 14px/1.2 Inter,system-ui,sans-serif;text-decoration:none;transform:translateY(-180%)}.core-skip:focus{transform:none}:where(a,button,input,textarea,select,summary):focus-visible{outline:3px solid #F15922;outline-offset:3px}@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}


/* Shared layout safeguards. Embedded by responsive_layout.py for portable exports. */
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
:where(main, section, article, form, details, figure, nav) { min-width: 0; }
:where(h1, h2, h3, h4, p, li, dd, summary, label, a) { overflow-wrap: anywhere; }
:where(img, video, iframe) { max-width: 100%; }
:where(img, video) { height: auto; }
:where(button, input, select, textarea, summary, a) { touch-action: manipulation; }
:where(a, button, input, select, textarea, summary):focus-visible {
  outline: 3px solid #f15922; outline-offset: 3px;
}
#softscotch-service-page :is(.btn, .rel__links a) {
  max-width: 100%; min-height: 44px; white-space: normal; text-align: center;
}
#softscotch-service-page :is(.b29__copy, .fee, .fee__col, .pfinal, .pbill, .pbill__col, .rep, .repgrid, .sov__card, .sov__grid, .tpanel__grid) { min-width: 0; }
#softscotch-service-page :is(.pfinal, .pfinal__inner, .pfinal__actions) { flex-wrap: wrap; }
#softscotch-service-page :is(.b29__form input, .faq2__search, select, textarea) { font-size: 16px; }
#softscotch-service-page :is(.scope__cell p, .problem__card p, .rep p, .faq2__a, .lane p, .sys__card p, .eng__card p) { font-size: 16px; line-height: 1.65; }
#softscotch-service-page .ss-managed-mockup :is(select, input) { font-size: 16px; }
#softscotch-service-page :is(.csl__arw, .faq2__cat) { min-height: 44px; }
#softscotch-service-page .csl__arw { min-width: 44px; }
/* Reusable blocks: grid/flex children must be allowed to shrink to their cell. */
:is([class^="ss-b"], [class^="ss-ct"], [class^="ss-faq"], [class^="ss-pp"], [class^="ss-ty"], [class^="ss-cr"], [class^="ss-hw"]) { min-width: 0; }
:is([class^="ss-b"], .ss-ct, .ss-faq, .ss-pp, .ss-ty, .ss-cr, .ss-hw) :is(input:not([type="checkbox"]):not([type="radio"]), select, textarea) { font-size: 16px; max-width: 100%; }
:is([class^="ss-b"], .ss-ct, .ss-faq, .ss-pp, .ss-ty, .ss-cr, .ss-hw) :is(button, summary, [class*="__btn"], [class*="__cat"]) { min-height: 44px; }
:is([class^="ss-b"], .ss-ct, .ss-faq, .ss-pp, .ss-ty, .ss-cr, .ss-hw) :is(button, [class*="__btn"]) { max-width: 100%; white-space: normal; }
.ss-b01__h1 em { white-space: normal; }
.ss-b24__table thead th.is-featured::after {
  position: static; display: block; transform: none;
  width: fit-content; max-width: 100%; margin: 8px auto 0; line-height: 1.4;
}
.ss-b24__tab { box-sizing: border-box; min-height: 44px; }
.ss-b24__table-wrap { overflow-x: auto; scrollbar-width: thin; }
@media (max-width: 1000px) {
  .ss-b24__tabs { flex-wrap: wrap; }
  .ss-b24__table { min-width: 960px; }
}
.ss-b28__outcome { flex-wrap: wrap; }
.ss-b28__outcome > * { min-width: 0; max-width: 100%; }
.ss-b28__outcome-h, .ss-b28__outcome-d { overflow-wrap: anywhere; }
.ss-b28__outcome-stats { min-width: 0; }
.responsive-audit-table { max-width: 100%; overflow-x: auto; scrollbar-width: thin; }
.responsive-audit-table table { min-width: 560px; }
.table-shell { overflow-x: auto; }
body:has(.menu-grid), body:has(.responsive-audit-table) { box-sizing: border-box; }
/* Industry pages. */
[data-industry-layout] :is(input, select, textarea, .faq-search) { font-size: 16px; }
#industry-faq-search, #softscotch-faq-search, #sstw-q, #ssck-hub-x8vewm-q { font-size: 16px; }
#sstw-hub-a9x #sstw-q, #ssck-hub-x8vewm #ssck-hub-x8vewm-q { font-size: 16px; min-height: 44px; }
.search, .filters select { font-size: 16px; min-height: 44px; }
body:has(.layout) :is(main select, main input, main textarea) { font-size: 16px; min-height: 44px; }
body:has(.layout) main :is(button, .action, .outline) { min-height: 44px; white-space: normal; }
.softscotch-cta-shimmer-btn {
  box-sizing: border-box; min-width: 0; max-width: 100%;
  white-space: normal; overflow-wrap: anywhere;
  font-size: clamp(28px, 4vw, 50px); padding-inline: clamp(16px, 4vw, 64px);
}
@media (max-width: 720px) {
  .container:has(> .stepper) { width: 100%; max-width: 100%; margin: 0; padding: 0; }
  .stepper .step { width: 100%; min-width: 0; margin: 0; }
  .stepper .label { overflow-wrap: anywhere; }
}
@media (max-width: 767px) {
  .controls { position: static; }
  .softscotch-cta-shimmer-btn { width: 100%; font-size: clamp(26px, 7.5vw, 36px); padding: 24px 16px; }
}
[data-industry-layout] :is(.btn, .faq-rail button) { min-height: 44px; max-width: 100%; white-space: normal; }
[data-industry-layout] :is(.card p, .depth-card p, .intent-card > p, .faq-list details p) { font-size: 16px; line-height: 1.65; }
/* Menus retain the full link inventory at every width. */
[class^="sftch-mn-"] { box-sizing: border-box; min-width: 0; }
.sftch-mn-link { min-height: 44px; }
.ssx-menu-social a { width: 44px; height: 44px; }
.ssx-menu-sub > summary { min-height: 44px; }
@media (max-width: 1100px) {
  :is(.sftch-mn-services-wrap, .sftch-mn-seo-wrap, .sftch-mn-ads-wrap, .sftch-mn-email-wrap, .sftch-mn-content-wrap, .sftch-mn-web-wrap, .sftch-mn-res-wrap, .sftch-mn-ind-wrap) { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
  .sftch-mn-col { margin-right: 0; }
}
@media (max-width: 767px) {
  body:has(.menu-grid), body:has(.responsive-audit-table) { padding: 20px 16px; }
  #softscotch-service-page h1 { font-size: clamp(30px, 8.5vw, 43px); }
  #softscotch-service-page h2 { font-size: clamp(26px, 7vw, 34px); line-height: 1.18; }
  #softscotch-service-page .tools { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  #softscotch-service-page .pfactors__grid { grid-template-columns: 1fr; }
  #softscotch-service-page .tl__node { max-width: calc(100vw - 36px); }
  #softscotch-service-page .csl__slide { min-width: 0; }
  #softscotch-service-page .ss-managed-mockup .rp-heading { flex-wrap: wrap; }
  :is(.sftch-mn-services-wrap, .sftch-mn-seo-wrap, .sftch-mn-ads-wrap, .sftch-mn-email-wrap, .sftch-mn-content-wrap, .sftch-mn-web-wrap, .sftch-mn-res-wrap, .sftch-mn-ind-wrap) { grid-template-columns: 1fr; gap: 24px; }
  .sftch-mn-col { padding-right: 0; border-right: 0; }
  .sftch-mn-footer { flex-wrap: wrap; gap: 16px; }
  .menu-grid { grid-template-columns: 1fr; padding: 18px; }
  .gap-item { grid-template-columns: 1fr; }
  .ss-b17__cols { gap: 24px 16px; }
  .ss-b24__tabs, .ss-b10__tabs { flex-wrap: wrap; }
}
@media (max-width: 480px) {
  .ss-b01__h1 { font-size: clamp(30px, 8.5vw, 36px); }
  .ss-b17__cols { grid-template-columns: 1fr; }
  .ss-b28__outcome { padding: 24px 18px; }
  .ss-b28__outcome > div { flex: 1 1 100%; }
  .ss-b08__channel { padding: 14px 10px; gap: 10px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  :is([class^="ss-b"], [class^="sftch-mn"], .ssx-mobile-nav) *,
  :is([class^="ss-b"], [class^="sftch-mn"], .ssx-mobile-nav) *::before,
  :is([class^="ss-b"], [class^="sftch-mn"], .ssx-mobile-nav) *::after { animation: none !important; transition: none !important; }
}

