/* ROSH canonical design system v378: separated by surface; baseline v374 CSS convergence. */
/* ROSH Unified Experience / first convergence pass
   Scope: customer-facing presentation. No inventory, reservation, checkout,
   authentication, product state, or marketplace authority changes.
   Loaded after legacy design layers; preserve visible keyboard focus. */
:root {
  --rux-ink:#16242c;
  --rux-muted:#475e6b;
  --rux-blue:#205d7c;
  --rux-deep:#0d2636;
  --rux-light:#f7f9f8;
  --rux-line:#e1e9ec;
  --rux-focus:#167da8;
  --rux-width:1140px;
  --rux-radius:12px;
  /* ROSH 3.1 semantic interaction aliases; no extra override stylesheet. */
  --rosh-action-focus:var(--rux-focus);
  --rosh-action-radius:var(--rux-radius);
  --rosh-space-control:8px;
  --rosh-space-section:24px;
  --rosh-text-secondary:var(--rux-muted);
  --rosh-content-max:var(--rux-width);
}
/* Layout convergence: one page rhythm and readable content density. */
html[data-rosh-theme] body.rosh-x003 main .x003-masthead .wrap,
html[data-rosh-theme] body.rosh-x009-catalog main .x003-masthead .wrap {
  padding-block:clamp(28px,3.4vw,46px)!important;
}
html[data-rosh-theme] body.rosh-x003 main .x003-masthead h1,
html[data-rosh-theme] body.rosh-x009-catalog main .x003-masthead h1 {
  font-size:clamp(40px,4.5vw,61px)!important;
  line-height:1.02!important;
  margin:8px 0 10px!important;
}
html[data-rosh-theme] body.rosh-x003 main .x003-masthead p:last-child,
html[data-rosh-theme] body.rosh-x009-catalog main .x003-masthead p:last-child {
  max-width:740px!important;line-height:1.52!important;margin-bottom:0!important;
  color:var(--rux-muted)!important;font-size:14px!important;
}
html[data-rosh-theme] body.rosh-x003 main :is(.section,.x003-home-routing,.x003-split),
html[data-rosh-theme] body.rosh-x009-catalog main :is(.section,.x003-home-routing,.x003-split) {
  padding-block:clamp(28px,4vw,55px)!important;
}
html[data-rosh-theme] body.rosh-x003 main :is(.x003-split,.x003-home-routing,.rosh-business-pathways) h2,
html[data-rosh-theme] body.rosh-x009-catalog main #catalog h2 {
  font-size:clamp(30px,3.7vw,48px)!important;line-height:1.07!important;
  letter-spacing:-.025em!important;
}
html[data-rosh-theme] body main :is(.x003-eyebrow,.kicker,.ri-mini-eyebrow) {
  font-size:11px!important;letter-spacing:.09em!important;
}
html[data-rosh-theme] body main :is(.x003-split,.rosh-business-pathways,.x003-home-routing) p {
  line-height:1.56!important;
}
/* Consistent invisible ornamental frames, not invisible interactive focus. */
html[data-rosh-theme] body.rosh-x003 main :is(.rosh-route-card,.purchasing-card) {
  border-color:transparent!important;
}
html[data-rosh-theme] body main :is(button,a,input,select,textarea,summary):focus-visible {
  outline:3px solid var(--rux-focus)!important;outline-offset:3px!important;
}
html[data-rosh-theme] body main :is(.data-state,[role=status]) {
  overflow-wrap:anywhere;
}
@media(max-width:780px) {
  html[data-rosh-theme] body.rosh-x009-catalog main #catalog .catalog-tools {
    grid-template-columns:minmax(0,1fr)!important;
  }
  html[data-rosh-theme] body.rosh-x009-catalog main #catalog .catalog-advanced-filters {
    width:100%!important;
  }
  html[data-rosh-theme] body.rosh-x009-catalog main #catalog .catalog-filter-fields {
    position:static!important;width:100%!important;
    grid-template-columns:minmax(0,1fr)!important;
    box-shadow:none!important;
  }
  html[data-rosh-theme] body.rosh-x009-catalog main #catalog .catalog-controls {
    width:100%!important;margin:0!important;
  }
  html[data-rosh-theme] body.rosh-x003 main section.wholesale {
    padding-block:30px!important;
  }
  html[data-rosh-theme] body.rosh-x003 main .x003-split {
    gap:22px!important;
  }
  html[data-rosh-theme] body.rosh-intelligence-page main#rosh-intelligence .ri-conversation-header {
    padding-inline:13px!important;
  }
  html[data-rosh-theme] body.rosh-intelligence-page main#rosh-intelligence .ri-chat {
    padding-inline:13px!important;
  }
}
@media(prefers-reduced-motion:reduce) {
  html[data-rosh-theme] body main :is(a,button,summary) {transition:none!important;}
}