:root {
  --rs-v105-ink: #111;
  --rs-v105-muted: #686868;
  --rs-v105-line: #e7e7e4;
  --rs-v105-paper: #fff;
  --rs-v105-soft: #f7f7f4;
  --rs-v105-gold: #cda45f;
  --rs-v105-shell: 1280px;
  --rs-v105-header: 76px;
  --rs-v105-radius: 0;
  --rs-v105-font: "Helvetica Neue", Arial, sans-serif;
}

html { overflow-x: hidden; }
body,
body.rB,
body.rB .rs-service-hub-v1,
body.rB .rs-pdp-v1,
body.rB .rs-transaction-v1,
body.rB .rs-policy-v1 {
  font-family: var(--rs-v105-font) !important;
  color: var(--rs-v105-ink) !important;
  letter-spacing: 0 !important;
}

body.rB header.topbar.rs-global-header-v105,
body.rB header.topbar.rs-global-header-v105.rs-commerce-header-v101 {
  position: sticky !important;
  inset: 0 0 auto !important;
  z-index: 100 !important;
  min-height: var(--rs-v105-header) !important;
  height: var(--rs-v105-header) !important;
  background: rgba(255,255,255,.98) !important;
  border-bottom: 1px solid var(--rs-v105-line) !important;
  backdrop-filter: blur(14px) !important;
  box-shadow: none !important;
}

body.rB header.topbar.rs-global-header-v105 > .rs-shell,
body.rB header.topbar.rs-global-header-v105.rs-commerce-header-v101 > .rs-shell {
  width: min(var(--rs-v105-shell), calc(100% - 48px)) !important;
  height: var(--rs-v105-header) !important;
  min-height: var(--rs-v105-header) !important;
  margin: 0 auto !important;
  display: grid !important;
  grid-template-columns: 168px minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 24px !important;
  padding: 0 !important;
}

body.rB header.topbar.rs-global-header-v105 .logo {
  width: 168px !important;
  height: 48px !important;
  margin: 0 !important;
  background-size: contain !important;
  background-position: right center !important;
}

body.rB .rs-nav {
  height: var(--rs-v105-header) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 20px !important;
  font-size: 12px !important;
  font-weight: 750 !important;
  white-space: nowrap !important;
}

body.rB .rs-nav a,
body.rB .rs-hn a,
body.rB .rs-ha > a,
body.rB .rs-ha > button,
body.rB .rs-lang {
  min-height: 44px !important;
  padding-inline: 6px !important;
  border-radius: 0 !important;
}

body.rB .rs-ha { gap: 6px !important; }
body.rB .rs-hs {
  width: 210px !important;
  height: 40px !important;
  border: 0 !important;
  border-bottom: 1px solid #bdbdb8 !important;
  border-radius: 0 !important;
}
body.rB .rs-hs input { height: 40px !important; font-size: 12px !important; }
body.rB .rs-hs button,
body.rB .rs-ht { min-width: 44px !important; height: 40px !important; background: transparent !important; }
body.rB .rs-lang { border: 0 !important; }

body.rB .rs-shell,
body.rB .rs-commerce-v1__shell,
body.rB .rs-service-hub-v1__shell {
  width: min(var(--rs-v105-shell), calc(100% - 48px)) !important;
}

body.rB .rs-hero {
  min-height: 520px !important;
  height: min(66svh, 680px) !important;
}
body.rB .rs-hero-copy { bottom: 56px !important; }
body.rB .rs-hero-copy .rs-shell { grid-template-columns: minmax(0, 680px) minmax(240px, 380px) !important; }
body.rB h1 { font-size: clamp(44px, 5vw, 76px) !important; line-height: 1.05 !important; }
body.rB .rs-kicker { margin-bottom: 18px !important; font-size: 12px !important; }
body.rB .rs-hero-side { font-size: 15px !important; line-height: 1.7 !important; }

body.rB .rs-intro,
body.rB .rs-section,
body.rB .rs-commerce-v1__section,
body.rB .rs-company,
body.rB .rs-cta { padding-block: 64px !important; }
body.rB .rs-intro h2,
body.rB .rs-head h2,
body.rB .rs-commerce-v1__head h2,
body.rB .rs-cta h2,
body.rB .rs-company h2 { font-size: clamp(32px, 3.4vw, 54px) !important; }
body.rB .rs-intro p,
body.rB .rs-head p,
body.rB .rs-commerce-v1__head p,
body.rB .rs-cta p,
body.rB .rs-company p { font-size: 15px !important; line-height: 1.75 !important; }

body.rB .rs-route-grid { grid-template-columns: repeat(4, minmax(0, 1fr)) !important; gap: 16px !important; }
body.rB .rs-route-card { min-height: 420px !important; padding: 24px !important; }
body.rB .rs-commerce-v1__product { flex-basis: calc((100% - 48px) / 4) !important; }
body.rB .rs-commerce-v1__product-media { aspect-ratio: 4 / 5 !important; }
body.rB .rs-commerce-v1__product-body { padding: 14px 12px 16px !important; }
body.rB .rs-commerce-v1__product h3 { min-height: 42px !important; font-size: 13px !important; }
body.rB .rs-commerce-v1__campaign-slide { min-height: 520px !important; }

body.rB .rs-pdp-v1,
body.rB .rs-transaction-v1,
body.rB .rs-policy-v1 { background: var(--rs-v105-paper) !important; }
body.rB .rs-pdp-v1__breadcrumb,
body.rB .rs-transaction-v1__breadcrumb,
body.rB .rs-policy-v1__breadcrumb { margin-top: 0 !important; }
body.rB .rs-pdp-v1__head,
body.rB .rs-transaction-v1__head,
body.rB .rs-policy-v1__head { min-height: 0 !important; padding-block: 42px !important; }

body.rB .rs-service-hub-v1__help { grid-template-columns: 1.4fr repeat(3, 1fr) !important; }
body.rB .rs-service-hub-v1__help-title,
body.rB .rs-service-hub-v1__contact { min-height: 116px !important; padding: 22px !important; }
body.rB .rs-service-hub-v1__footer {
  grid-template-columns: 1.2fr repeat(3, minmax(140px, 1fr)) !important;
  gap: 30px !important;
  padding-block: 48px 38px !important;
}
body.rB .rs-service-hub-v1__newsletter { display: none !important; }
body.rB .rs-service-hub-v1__links { gap: 4px !important; }
body.rB .rs-service-hub-v1__links a { min-height: 36px !important; }
body.rB .rs-service-hub-v1__legal { min-height: 64px !important; }

body.rB .rs-support-dock-v37,
body.rB .rs-support-actions-v1,
body.rB [data-rs-duplicate-service="true"],
body.rB .rs-commerce-v1__section--soft { display: none !important; }

@media (max-width: 1180px) {
  :root { --rs-v105-header: 68px; }
  body.rB header.topbar.rs-global-header-v105 > .rs-shell { width: calc(100% - 28px) !important; height: var(--rs-v105-header) !important; min-height: var(--rs-v105-header) !important; grid-template-columns: 142px 1fr auto !important; gap: 12px !important; }
  body.rB header.topbar.rs-global-header-v105 .logo { width: 142px !important; height: 40px !important; }
  body.rB .rs-nav,
  body.rB .rs-hs,
  body.rB .rs-hl { display: none !important; }
  body.rB .rs-ht { display: inline-flex !important; }
  body.rB .rs-route-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  body.rB .rs-commerce-v1__product { flex-basis: calc((100% - 16px) / 2) !important; }
}

@media (max-width: 620px) {
  body.rB .rs-shell,
  body.rB .rs-commerce-v1__shell,
  body.rB .rs-service-hub-v1__shell { width: calc(100% - 24px) !important; }
  body.rB header.topbar.rs-global-header-v105 > .rs-shell { width: calc(100% - 20px) !important; grid-template-columns: 128px minmax(0, 1fr) auto !important; }
  body.rB header.topbar.rs-global-header-v105 .logo { width: 128px !important; height: 38px !important; }
  body.rB .rs-hero { min-height: 520px !important; height: 68svh !important; }
  body.rB .rs-hero-copy { bottom: 42px !important; }
  body.rB .rs-hero-copy .rs-shell { display: block !important; }
  body.rB .rs-hero-side { margin-top: 16px !important; max-width: 90% !important; }
  body.rB h1 { font-size: clamp(38px, 12vw, 56px) !important; }
  body.rB .rs-intro,
  body.rB .rs-section,
  body.rB .rs-commerce-v1__section,
  body.rB .rs-company,
  body.rB .rs-cta { padding-block: 44px !important; }
  body.rB .rs-route-grid { grid-template-columns: 1fr 1fr !important; gap: 10px !important; }
  body.rB .rs-route-card { min-height: 310px !important; padding: 16px !important; }
  body.rB .rs-route-card strong { font-size: 21px !important; }
  body.rB .rs-commerce-v1__product { flex-basis: calc((100% - 10px) / 2) !important; }
  body.rB .rs-commerce-v1__rail { gap: 10px !important; }
  body.rB .rs-commerce-v1__campaign-slide { grid-template-columns: 1fr !important; min-height: 0 !important; }
  body.rB .rs-commerce-v1__campaign-media { aspect-ratio: 4 / 3 !important; }
  body.rB .rs-service-hub-v1__help,
  body.rB .rs-service-hub-v1__footer { grid-template-columns: 1fr !important; }
  body.rB .rs-service-hub-v1__help-title,
  body.rB .rs-service-hub-v1__contact { min-height: 0 !important; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; transition-duration: .01ms !important; }
}
