:root {
  --rhs-bg: #fff;
  --rhs-surface: #f6f8fc;
  --rhs-text: #10213a;
  --rhs-muted: #607089;
  --rhs-primary: #2563eb;
  --rhs-accent: #0891b2;
  --rhs-width: 1420px;
  --rhs-radius: 14px;
}

body {
  font-size: 15px;
  line-height: 1.65;
}

.rhsh-section,
.rhsh-hero,
.rhsh-site-header,
.rhsh-site-footer {
  background-color: var(--rhsh-bg, #fff);
}

.rhs-job-detail { padding: 48px 0 70px; }
.rhs-job-breadcrumb { display:flex;gap:9px;align-items:center;margin-bottom:22px;color:var(--rhsh-muted,var(--rhs-muted));font-size:13px; }
.rhs-job-breadcrumb a { text-decoration:none; }
.rhs-job-detail-head { display:grid;grid-template-columns:82px minmax(0,1fr) auto;gap:22px;align-items:center;padding:30px;border:1px solid #dfe5ef;border-radius:var(--rhsh-radius,var(--rhs-radius));background:var(--rhsh-surface,var(--rhs-surface)); }
.rhs-job-company-logo { width:82px;height:82px;display:grid;place-items:center;overflow:hidden;border:1px solid #dfe5ef;border-radius:15px;background:#fff; }
.rhs-job-company-logo img { width:100%;height:100%;object-fit:contain; }
.rhs-job-company-logo span { color:var(--rhsh-primary,var(--rhs-primary));font-size:24px;font-weight:800; }
.rhs-job-tags { display:flex;gap:7px;flex-wrap:wrap; }
.rhs-job-tags span { padding:5px 9px;border-radius:999px;background:#eaf1ff;color:var(--rhsh-primary,var(--rhs-primary));font-size:11px;font-weight:800; }
.rhs-job-detail-head h1 { margin:8px 0;font-size:clamp(32px,4vw,50px);line-height:1.05; }
.rhs-job-detail-head p { margin:0;color:var(--rhsh-muted,var(--rhs-muted)); }
.rhs-job-apply { display:inline-flex;justify-content:center;padding:13px 18px;border-radius:10px;background:var(--rhsh-primary,var(--rhs-primary));color:#fff!important;text-decoration:none;font-weight:800; }
.rhs-job-detail-grid { display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:24px;margin-top:24px;align-items:start; }
.rhs-job-description,.rhs-job-summary { padding:30px;border:1px solid #dfe5ef;border-radius:var(--rhsh-radius,var(--rhs-radius));background:#fff; }
.rhs-job-description h2,.rhs-job-summary h2 { margin-top:0; }
.rhs-job-description p,.rhs-job-description li,.rhs-job-summary p { color:var(--rhsh-muted,var(--rhs-muted)); }
.rhs-job-summary dl { margin:0 0 22px; }
.rhs-job-summary dl div { padding:12px 0;border-bottom:1px solid #e8edf4; }
.rhs-job-summary dt { color:var(--rhsh-muted,var(--rhs-muted));font-size:11px;text-transform:uppercase;letter-spacing:.08em; }
.rhs-job-summary dd { margin:3px 0 0;color:var(--rhsh-text,var(--rhs-text));font-weight:700; }
.rhs-job-summary .rhs-job-apply { width:100%; }
.rhs-job-summary > p { font-size:12px;line-height:1.5; }
@media(max-width:900px){.rhs-job-detail-head{grid-template-columns:70px 1fr}.rhs-job-detail-head>.rhs-job-apply{grid-column:2}.rhs-job-detail-grid{grid-template-columns:1fr}.rhs-job-company-logo{width:70px;height:70px}}
@media(max-width:580px){.rhs-job-detail-head{grid-template-columns:1fr;padding:22px}.rhs-job-detail-head>.rhs-job-apply{grid-column:auto}.rhs-job-description,.rhs-job-summary{padding:22px}}

.rhsh-section {
  padding: 62px 0;
}

.rhsh-section:nth-of-type(even) {
  background: color-mix(in srgb, var(--rhsh-surface, #f6f8fc) 70%, #fff);
}

.rhsh-section h2 {
  font-size: clamp(28px, 3.2vw, 44px);
}

.rhsh-section-head {
  margin-bottom: 28px;
}

.rhsh-hero {
  min-height: 610px;
  padding: 78px 0 58px;
}

.rhsh-hero-inner {
  gap: 48px;
}

.rhsh-hero h1 {
  max-width: 820px;
  font-size: clamp(42px, 5.1vw, 70px);
  line-height: 1.02;
}

.rhsh-hero-copy > p {
  font-size: clamp(16px, 1.5vw, 19px);
}

.rhsh-search-wrap,
.rhsh-card,
.rhsh-viewer-shell,
.rhsh-parts-panel,
.rhsh-form-card,
.rhsh-community-cta,
.rhsh-products ul.products li.product {
  box-shadow: 0 12px 35px rgba(16, 33, 58, 0.07);
}

.rhsh-chip-grid {
  gap: 11px;
}

.rhsh-chip-grid a {
  min-height: 76px;
  padding: 14px;
}

.rhsh-card-grid {
  gap: 16px;
}

.rhsh-card-image,
.rhsh-card-placeholder {
  height: 180px;
}

.rhsh-card-body {
  padding: 18px;
}

.rhsh-card h3 {
  font-size: 20px;
}

.rhsh-viewer-shell,
.rhsh-viewer-shell model-viewer {
  min-height: 500px;
  height: 500px;
}

.rhsh-form-layout {
  gap: 40px;
}

.rhsh-form-copy h2 {
  font-size: clamp(32px, 4vw, 50px);
}

.rhsh-form-card {
  padding: 26px;
}

.rhsh-site-header {
  background: rgba(255, 255, 255, 0.96);
}

body.home .rhsh-site-header {
  background: linear-gradient(180deg, rgba(3,13,28,.78), rgba(3,13,28,.08));
}

@media (max-width: 980px) {
  body.home .rhsh-site-nav.is-open { background:#fff; border-radius:0 0 14px 14px; }
  body.home .rhsh-site-nav.is-open a { color:var(--rhsh-text); text-shadow:none; }
}

.rhsh-site-header > .rhsh-container {
  min-height: 68px;
}

.rhsh-site-footer {
  padding: 54px 0 22px;
  background: var(--rhsh-surface, #f6f8fc);
}

.rhs-content,
.rhs-archive {
  padding: 60px 0;
}

.rhs-content h1,
.rhs-archive h1 {
  font-size: clamp(36px, 4.5vw, 60px);
}

.rhs-loop {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.rhs-loop-card > a {
  height: 180px;
}

.rhs-loop-body {
  padding: 18px;
}

.rhs-loop-body h2 {
  font-size: 20px;
}

@media (max-width: 1180px) {
  .rhs-loop { grid-template-columns: repeat(3, 1fr); }
}

@media (max-width: 900px) {
  .rhs-loop { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 680px) {
  .rhs-loop { grid-template-columns: 1fr; }
  .rhsh-section { padding: 48px 0; }
  .rhsh-hero { padding: 66px 0 48px; }
}
