:root {
  color-scheme: light dark;
  --red: #E3101C;
  --red-deep: #CC0000;
  --paper: #FFFFFF;
  --paper-alt: #F1F1F1;
  --ink: #141414;
  --muted: #57585A;
  --line: #D8D8D8;
  --line-strong: #B9B9B9;
  --seal-brown: #402723;
  --max: 1240px;
  --pad: clamp(22px, 4vw, 64px);
  --section: clamp(72px, 9vw, 132px);
  --display: clamp(44px, 7vw, 92px);
  --h1: clamp(40px, 5.6vw, 76px);
  --h2: clamp(30px, 3.4vw, 48px);
  --h3: clamp(21px, 2vw, 30px);
  --body-lg: clamp(18px, 1.6vw, 22px);
  --body: 16px;
  --small: 13px;
  --font: Arial, Helvetica, sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: var(--paper);
  color: var(--ink);
  font-family: var(--font);
  font-size: var(--body);
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
img { display: block; width: 100%; height: auto; }
a { color: inherit; text-decoration: none; }
button, input, textarea, select { font: inherit; }
button { cursor: pointer; }

.container { width: min(calc(100% - (var(--pad) * 2)), var(--max)); margin-inline: auto; }
.section { padding-block: var(--section); }
.section--alt { background: var(--paper-alt); }
.section--dark { background: var(--ink); color: var(--paper); }
.section--brown { background: var(--seal-brown); color: var(--paper); }
.eyebrow { margin: 0 0 12px; color: var(--muted); font-size: var(--small); font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.section-title { margin: 0 0 22px; color: var(--red); font-size: var(--h2); line-height: 1.06; font-weight: 900; letter-spacing: -.03em; }
.section-lead { max-width: 760px; margin: 0; color: var(--muted); font-size: var(--body-lg); }
.section--dark .section-lead, .section--brown .section-lead { color: #D8D8D8; }
.kicker { font-size: var(--small); font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }

.site-header { position: absolute; inset: 0 0 auto; z-index: 20; color: #FFFFFF; }
.site-header__inner { min-height: 92px; display: flex; align-items: center; justify-content: space-between; gap: 28px; }
.brand { font-size: 22px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.site-nav { display: flex; align-items: center; gap: clamp(18px, 2.5vw, 34px); }
.site-nav__link { position: relative; font-size: 14px; font-weight: 800; }
.site-nav__link::after { content: ""; position: absolute; left: 0; right: 100%; bottom: -8px; height: 2px; background: var(--red); transition: right .2s ease; }
.site-nav__link:hover::after, .site-nav__link.is-active::after { right: 0; }
.nav-toggle { display: none; background: transparent; border: 1px solid currentColor; color: inherit; padding: 9px 12px; border-radius: 0; }

.btn { display: inline-flex; min-height: 48px; align-items: center; justify-content: center; padding: 12px 22px; border: 2px solid var(--red); border-radius: 0; background: var(--red); color: #FFFFFF; font-weight: 900; line-height: 1.2; transition: background .2s ease, color .2s ease, border-color .2s ease; }
.btn:hover { background: var(--red-deep); border-color: var(--red-deep); }
.btn--ghost { background: transparent; color: inherit; border-color: currentColor; }
.btn--ghost:hover { color: #FFFFFF; background: var(--red); border-color: var(--red); }
.btn--dark { background: var(--ink); border-color: var(--ink); }
.btn--text { min-height: auto; padding: 0 0 5px; background: transparent; color: var(--ink); border-width: 0 0 2px; border-color: var(--red); }
.btn--text:hover { background: transparent; color: var(--red); }

.hero { position: relative; min-height: 760px; display: grid; align-items: end; overflow: hidden; background: var(--ink); color: #FFFFFF; }
.hero__media { position: absolute; inset: 0; }
.hero__media img { width: 100%; height: 100%; object-fit: cover; }
.hero__scrim { position: absolute; inset: 0; background: rgba(20,20,20,.60); }
.hero__content { position: relative; z-index: 2; padding-top: 160px; padding-bottom: clamp(84px, 10vw, 140px); }
.hero__title { max-width: 980px; margin: 0; font-size: var(--h1); line-height: .98; font-weight: 900; letter-spacing: -.045em; }
.hero__meta { margin: 26px 0 0; font-size: var(--body-lg); color: #E7E7E7; }
.hero__actions { margin-top: 34px; display: flex; gap: 12px; flex-wrap: wrap; }

.page-hero { min-height: 430px; display: grid; align-items: end; position: relative; background: var(--ink); color: #FFFFFF; overflow: hidden; }
.page-hero__media { position: absolute; inset: 0; }
.page-hero__media img { height: 100%; object-fit: cover; }
.page-hero__scrim { position: absolute; inset: 0; background: rgba(20,20,20,.64); }
.page-hero__content { position: relative; z-index: 1; padding-top: 150px; padding-bottom: 70px; }
.page-hero__title { max-width: 920px; margin: 0; font-size: var(--h1); line-height: 1; font-weight: 900; letter-spacing: -.04em; }
.page-hero__lead { max-width: 760px; margin: 20px 0 0; font-size: var(--body-lg); color: #E1E1E1; }
.hero__content .eyebrow, .page-hero__content .eyebrow { color: #FFFFFF; }

.proof-strip { background: var(--paper); border-bottom: 1px solid var(--line); }
.proof-strip__grid { display: grid; grid-template-columns: repeat(4, 1fr); }
.proof-item { min-height: 132px; padding: 28px 26px; display: grid; grid-template-columns: 34px 1fr; gap: 15px; align-items: center; border-right: 1px solid var(--line); }
.proof-item:last-child { border-right: 0; }
.proof-item__mark { width: 26px; height: 26px; border: 2px solid var(--ink); position: relative; }
.proof-item__mark::after { content: ""; position: absolute; left: 5px; right: 5px; top: 11px; height: 2px; background: var(--red); }
.proof-item strong { display: block; font-size: 18px; line-height: 1.25; }
.proof-item span { color: var(--muted); font-size: 13px; }

.part-search { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 0; margin-top: 34px; border-bottom: 3px solid var(--ink); }
.part-search input { width: 100%; min-height: 66px; border: 0; border-radius: 0; background: transparent; color: var(--ink); padding: 12px 2px; outline: none; font-size: clamp(19px, 2vw, 26px); }
.part-search input::placeholder { color: #8A8A8A; }
.part-search .btn { min-width: 210px; }

.category-grid { margin-top: 46px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 2px; background: var(--line); }
.category-card { background: var(--paper); }
.category-card__media { aspect-ratio: 4 / 3; overflow: hidden; background: var(--paper-alt); }
.category-card__media img,
/* 2026-08-18 Claude Code 加的一行：关于页"车间与产线"用同一个卡片网格放视频，
   这里只是让 <video> 沿用 <img> 已有的填充方式，没有引入新的视觉决定。
   要改这块的样子，请 ChatGPT 直接接手这条规则。 */
.category-card__media video { width: 100%; height: 100%; object-fit: cover; display: block; background: #141414; }
.category-card__body { padding: 30px; }
.category-card__title { margin: 0 0 10px; font-size: var(--h3); line-height: 1.1; font-weight: 900; }
.category-card__body p { margin: 0 0 22px; color: var(--muted); }

.zigzag { display: grid; gap: 0; }
.zigzag-row { min-height: 520px; display: grid; grid-template-columns: 1fr 1fr; }
.zigzag-row:nth-child(even) .zigzag-row__media { order: 2; }
.zigzag-row__media { min-height: 440px; background: var(--paper-alt); }
.zigzag-row__media img { width: 100%; height: 100%; object-fit: cover; }
.zigzag-row__copy { display: flex; align-items: center; padding: clamp(44px, 7vw, 92px); }
.zigzag-row__copy > div { max-width: 540px; }
.zigzag-row__copy h3 { margin: 0 0 18px; font-size: clamp(30px, 3.6vw, 50px); line-height: 1.02; font-weight: 900; letter-spacing: -.035em; }
.zigzag-row__copy p { margin: 0; color: var(--muted); font-size: var(--body-lg); }

.commitment { display: grid; grid-template-columns: .9fr 1.1fr; gap: clamp(46px, 7vw, 90px); align-items: start; }
.commitment__points { margin-top: 34px; display: grid; gap: 20px; }
.commitment-point { padding-top: 20px; border-top: 1px solid #3A3A3A; }
.commitment-point strong { display: block; font-size: 20px; }
.commitment-point p { margin: 6px 0 0; color: #C8C8C8; }

.quote-form { background: var(--paper); color: var(--ink); padding: clamp(28px, 4vw, 48px); }
.form-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 20px 22px; }
.field { display: grid; gap: 8px; }
.field--full { grid-column: 1 / -1; }
.field label { font-size: 13px; font-weight: 800; }
.field input, .field textarea, .field select { width: 100%; border: 0; border-bottom: 2px solid var(--line-strong); border-radius: 0; background: transparent; color: var(--ink); padding: 12px 0; outline: none; }
.field input:focus, .field textarea:focus, .field select:focus { border-bottom-color: var(--red); }
.field textarea { min-height: 120px; resize: vertical; }
.form-note { margin: 18px 0 0; color: var(--muted); font-size: 13px; }

.certificate-grid { margin-top: 42px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 26px; }
.certificate-card { background: var(--paper-alt); padding: 18px; }
.certificate-card__media { aspect-ratio: 4 / 3; background: #DCDCDC; overflow: hidden; }
.certificate-card__media img { width: 100%; height: 100%; object-fit: cover; }
.certificate-card__caption { margin: 14px 0 0; font-weight: 800; }
.metric-callout { margin-top: 34px; padding-top: 26px; border-top: 1px solid var(--line); display: flex; align-items: baseline; justify-content: space-between; gap: 24px; }
.metric-callout__number { color: var(--red); font-size: clamp(32px, 4vw, 56px); line-height: 1; font-weight: 900; }

.blog-grid { margin-top: 44px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 34px; }
.blog-card { display: grid; gap: 18px; }
.blog-card__media { aspect-ratio: 16 / 10; overflow: hidden; background: var(--paper-alt); }
.blog-card__media img { width: 100%; height: 100%; object-fit: cover; }
.blog-card__meta { color: var(--muted); font-size: 13px; }
.blog-card__title { margin: 0; font-size: clamp(22px, 2vw, 28px); line-height: 1.15; font-weight: 900; }
.blog-card__excerpt { margin: 0; color: var(--muted); }

.final-cta { background: var(--ink); color: #FFFFFF; }
.final-cta__inner { display: grid; grid-template-columns: 1fr auto; gap: 36px; align-items: center; }
.final-cta h2 { margin: 0; max-width: 820px; color: var(--red); font-size: var(--h2); line-height: 1.04; font-weight: 900; }
.final-cta p { margin: 14px 0 0; max-width: 720px; color: #CFCFCF; }

.site-footer { background: #0D0D0D; color: #FFFFFF; padding: 64px 0 28px; }
.site-footer__grid { display: grid; grid-template-columns: 1.3fr 1fr 1fr; gap: 54px; }
.site-footer h3 { margin: 0 0 16px; font-size: 16px; }
.site-footer p, .site-footer a { color: #BFBFBF; }
.site-footer__links { display: grid; gap: 10px; }
.site-footer__bottom { margin-top: 48px; padding-top: 24px; border-top: 1px solid #2A2A2A; color: #8F8F8F; font-size: 13px; }

.timeline { margin-top: 48px; border-top: 2px solid var(--ink); }
.timeline-item { display: grid; grid-template-columns: 180px 1fr; gap: 34px; padding: 30px 0; border-bottom: 1px solid var(--line); }
.timeline-item__year { color: var(--red); font-size: 28px; font-weight: 900; }
.timeline-item h3 { margin: 0 0 8px; font-size: 24px; }
.timeline-item p { margin: 0; color: var(--muted); }

.split-feature { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(46px, 7vw, 90px); align-items: center; }
.split-feature__media { min-height: 520px; background: var(--paper-alt); }
.split-feature__media img { width: 100%; height: 100%; object-fit: cover; }
.split-feature__copy h2 { margin: 0 0 20px; color: var(--red); font-size: var(--h2); line-height: 1.06; }
.split-feature__copy p { color: var(--muted); }
.stats-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 2px; background: var(--line); margin-top: 34px; }
.stat { background: var(--paper); padding: 26px; }
.stat strong { display: block; color: var(--red); font-size: 34px; line-height: 1; }
.stat span { display: block; margin-top: 8px; color: var(--muted); }

.product-family-grid { margin-top: 42px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px; }
.product-family { border-top: 4px solid var(--ink); padding-top: 20px; }
.product-family__media { margin-top: 20px; aspect-ratio: 4 / 3; overflow: hidden; background: var(--paper-alt); }
.product-family__media img { width: 100%; height: 100%; object-fit: cover; }
.product-family h3 { margin: 0; font-size: 28px; }
.product-family p { color: var(--muted); }

.vehicle-entry { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; background: var(--line); margin-top: 40px; }
.vehicle-entry a { min-height: 112px; padding: 24px; display: flex; align-items: end; background: var(--paper); font-weight: 900; }
.vehicle-entry a:hover { color: var(--red); }

.part-list { margin-top: 36px; border-top: 2px solid var(--ink); }
.part-row { display: grid; grid-template-columns: minmax(180px,.8fr) 1.2fr auto; gap: 28px; align-items: center; padding: 22px 0; border-bottom: 1px solid var(--line); }
.part-row__number { font-size: 20px; font-weight: 900; }
.part-row__meta { color: var(--muted); }
.part-row .btn { min-width: 150px; }

.blog-list { display: grid; gap: 0; margin-top: 44px; border-top: 2px solid var(--ink); }
.blog-list-item { display: grid; grid-template-columns: 240px 1fr auto; gap: 34px; padding: 30px 0; border-bottom: 1px solid var(--line); align-items: center; }
.blog-list-item__media { aspect-ratio: 16 / 10; overflow: hidden; background: var(--paper-alt); }
.blog-list-item__media img { width: 100%; height: 100%; object-fit: cover; }
.blog-list-item h2 { margin: 0 0 10px; color: var(--ink); font-size: clamp(24px, 2.8vw, 38px); line-height: 1.08; }
.blog-list-item p { margin: 0; color: var(--muted); }
.article { max-width: 860px; margin-inline: auto; }
.article__meta { color: var(--muted); margin-bottom: 26px; }
.article__media { margin: 34px 0; background: var(--paper-alt); }
.article__body { font-size: 18px; line-height: 1.85; }
.article__body h2 { margin: 56px 0 18px; color: var(--red); font-size: 34px; line-height: 1.1; }
.article__body h3 { margin: 34px 0 14px; font-size: 26px; }
.article__body p { color: #3E3E3E; }
.article__body table { width: 100%; border-collapse: collapse; margin: 30px 0; }
.article__body th, .article__body td { text-align: left; padding: 14px 12px; border-bottom: 1px solid var(--line); }
.article__body th { border-top: 2px solid var(--red); }
.related-parts { margin-top: 70px; padding-top: 34px; border-top: 2px solid var(--ink); }

.contact-layout { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(300px, .85fr); gap: clamp(42px, 7vw, 92px); align-items: start; }
.contact-trust { display: grid; gap: 0; border-top: 2px solid var(--ink); }
.contact-trust__item { padding: 22px 0; border-bottom: 1px solid var(--line); font-weight: 800; }
.contact-details { margin-top: 34px; color: var(--muted); }
.faq-list { margin-top: 40px; border-top: 2px solid var(--ink); }
.faq-item { padding: 26px 0; border-bottom: 1px solid var(--line); }
.faq-item h3 { margin: 0 0 8px; font-size: 21px; }
.faq-item p { margin: 0; color: var(--muted); }

@media (max-width: 980px) {
  .site-nav { display: none; }
  .nav-toggle { display: inline-flex; }

  body[data-nav-open] { overflow: hidden; }
  body[data-nav-open] .site-nav {
    display: flex;
    position: fixed;
    inset: 0;
    z-index: 30;
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
    gap: 0;
    padding: 104px var(--pad) 32px;
    background: #141414;
    color: #FFFFFF;
    overflow-y: auto;
  }
  body[data-nav-open] .site-nav__link {
    display: flex;
    min-height: 52px;
    align-items: center;
    border-bottom: 1px solid #343434;
  }
  body[data-nav-open] .site-nav__link::after { bottom: 0; }
  body[data-nav-open] .site-nav .btn {
    width: 100%;
    min-height: 52px;
    margin-top: 18px;
  }
  body[data-nav-open] .brand,
  body[data-nav-open] .nav-toggle {
    position: relative;
    z-index: 31;
    color: #FFFFFF;
  }
  .proof-strip__grid { grid-template-columns: repeat(2, 1fr); }
  .proof-item:nth-child(2) { border-right: 0; }
  .proof-item:nth-child(-n+2) { border-bottom: 1px solid var(--line); }
  .category-grid, .product-family-grid, .blog-grid, .certificate-grid { grid-template-columns: 1fr 1fr; }
  .zigzag-row, .commitment, .split-feature, .contact-layout { grid-template-columns: 1fr; }
  .zigzag-row:nth-child(even) .zigzag-row__media { order: 0; }
  .final-cta__inner { grid-template-columns: 1fr; }
  .site-footer__grid { grid-template-columns: 1fr 1fr; }
  .vehicle-entry { grid-template-columns: repeat(2,1fr); }
  .blog-list-item { grid-template-columns: 200px 1fr; }
  .blog-list-item .btn { grid-column: 2; justify-self: start; }
}

@media (max-width: 680px) {
  :root { --pad: 20px; --section: 70px; }
  .site-header__inner { min-height: 74px; }
  .hero { min-height: 680px; }
  .hero__content { padding-top: 130px; padding-bottom: 72px; }
  .hero__title, .page-hero__title { line-height: 1.02; }
  .hero__actions, .final-cta__inner .btn { width: 100%; }
  .hero__actions .btn { width: 100%; }
  .proof-strip__grid, .category-grid, .product-family-grid, .blog-grid, .certificate-grid, .stats-grid { grid-template-columns: 1fr; }
  .proof-item { border-right: 0; border-bottom: 1px solid var(--line); }
  .part-search { grid-template-columns: 1fr; border-bottom: 0; gap: 12px; }
  .part-search input { border-bottom: 3px solid var(--ink); }
  .part-search .btn { width: 100%; }
  .zigzag-row { min-height: 0; }
  .zigzag-row__media { min-height: 320px; }
  .zigzag-row__copy { padding: 44px var(--pad); }
  .form-grid { grid-template-columns: 1fr; }
  .field--full { grid-column: auto; }
  .metric-callout { align-items: flex-start; flex-direction: column; }
  .timeline-item { grid-template-columns: 1fr; gap: 8px; }
  .split-feature__media { min-height: 340px; }
  .vehicle-entry { grid-template-columns: 1fr; }
  .part-row { grid-template-columns: 1fr; gap: 8px; }
  .part-row .btn { width: 100%; margin-top: 8px; }
  .blog-list-item { grid-template-columns: 1fr; }
  .blog-list-item .btn { grid-column: auto; }
  .site-footer__grid { grid-template-columns: 1fr; }
}

@media (prefers-color-scheme: dark) {
  :root {
    --paper: #171717;
    --paper-alt: #202020;
    --ink: #F2F2F2;
    --muted: #B9B9B9;
    --line: #343434;
    --line-strong: #565656;
  }
  body { background: var(--paper); color: var(--ink); }
  .site-header { color: #FFFFFF; }
  .section--dark, .final-cta { background: #0B0B0B; }
  .quote-form { background: #F5F5F5; color: #141414; }
  .quote-form .field input, .quote-form .field textarea, .quote-form .field select { color: #141414; }
  .quote-form .form-note { color: #57585A; }
  .article__body p { color: #D0D0D0; }
  .proof-item__mark { border-color: var(--ink); }
}

/* ==========================================================
   Directory layer: catalogue / cross reference / quality / FAQ / part pages
   Appended to the approved marketing stylesheet. Existing marketing rules above
   are intentionally left unchanged.
   ========================================================== */

/* Directory page foundations */
body.page-part,
body.page-catalog,
body.page-cross,
body.page-quality,
body.page-faq {
  background: var(--paper);
  color: var(--ink);
}

.page-part .wrap,
.page-catalog .wrap,
.page-cross .wrap,
.page-quality .wrap,
.page-faq .wrap {
  width: min(calc(100% - (var(--pad) * 2)), var(--max));
  margin-inline: auto;
}

.page-part .narrow,
.page-catalog .narrow,
.page-cross .narrow,
.page-quality .narrow,
.page-faq .narrow {
  max-width: 900px;
}

.page-part .muted,
.page-catalog .muted,
.page-cross .muted,
.page-quality .muted,
.page-faq .muted {
  color: var(--muted);
}

.page-part h1,
.page-part h2,
.page-part h3,
.page-part p,
.page-catalog h1,
.page-catalog h2,
.page-catalog h3,
.page-catalog p,
.page-cross h1,
.page-cross h2,
.page-cross h3,
.page-cross p,
.page-quality h1,
.page-quality h2,
.page-quality h3,
.page-quality p,
.page-faq h1,
.page-faq h2,
.page-faq h3,
.page-faq p {
  margin-top: 0;
}

.page-part h1,
.page-catalog h1,
.page-cross h1,
.page-quality h1,
.page-faq h1 {
  margin-bottom: 0;
  font-size: clamp(38px, 5vw, 68px);
  line-height: 1;
  font-weight: 900;
  letter-spacing: -.04em;
}

.page-part h2,
.page-catalog h2,
.page-cross h2,
.page-quality h2,
.page-faq h2 {
  margin-bottom: 0;
  color: var(--red);
  font-size: clamp(28px, 3.2vw, 44px);
  line-height: 1.08;
  font-weight: 900;
  letter-spacing: -.03em;
}

.page-part h3,
.page-catalog h3,
.page-cross h3,
.page-quality h3,
.page-faq h3 {
  margin-bottom: 0;
  font-size: 18px;
  line-height: 1.25;
  font-weight: 900;
  letter-spacing: -.01em;
}

.page-part .lede,
.page-catalog .lede,
.page-cross .lede,
.page-quality .lede,
.page-faq .lede {
  max-width: 780px;
  margin-bottom: 0;
  color: var(--muted);
  font-size: 17px;
  line-height: 1.7;
}

.page-part .section-kicker,
.page-catalog .section-kicker,
.page-cross .section-kicker,
.page-quality .section-kicker,
.page-faq .section-kicker {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 12px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.page-part .section-kicker::before,
.page-catalog .section-kicker::before,
.page-cross .section-kicker::before,
.page-quality .section-kicker::before,
.page-faq .section-kicker::before {
  content: "";
  width: 24px;
  height: 3px;
  flex: 0 0 24px;
  background: var(--red);
}

/* Directory header: same hard-edge red / black language as marketing layer */
.page-part header.site,
.page-catalog header.site,
.page-cross header.site,
.page-quality header.site,
.page-faq header.site {
  position: sticky;
  top: 0;
  z-index: 40;
  background: #141414;
  color: #FFFFFF;
  border-bottom: 1px solid #333333;
}

.page-part header.site .wrap,
.page-catalog header.site .wrap,
.page-cross header.site .wrap,
.page-quality header.site .wrap,
.page-faq header.site .wrap {
  min-height: 76px;
  display: flex;
  align-items: center;
  gap: 32px;
}

.page-part .logo,
.page-catalog .logo,
.page-cross .logo,
.page-quality .logo,
.page-faq .logo {
  display: inline-flex;
  align-items: baseline;
  gap: 6px;
  flex: 0 0 auto;
  color: #FFFFFF;
  font-size: 21px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.page-part .logo span,
.page-catalog .logo span,
.page-cross .logo span,
.page-quality .logo span,
.page-faq .logo span {
  color: var(--red);
}

.page-part .logo small,
.page-catalog .logo small,
.page-cross .logo small,
.page-quality .logo small,
.page-faq .logo small {
  display: none;
}

.page-part nav.main,
.page-catalog nav.main,
.page-cross nav.main,
.page-quality nav.main,
.page-faq nav.main {
  margin-left: auto;
  display: flex;
  align-items: center;
  gap: clamp(16px, 2vw, 30px);
  white-space: nowrap;
}

.page-part nav.main a,
.page-catalog nav.main a,
.page-cross nav.main a,
.page-quality nav.main a,
.page-faq nav.main a {
  position: relative;
  padding: 27px 0 24px;
  color: #D8D8D8;
  font-size: 13px;
  font-weight: 800;
}

.page-part nav.main a:hover,
.page-part nav.main a[aria-current="page"],
.page-catalog nav.main a:hover,
.page-catalog nav.main a[aria-current="page"],
.page-cross nav.main a:hover,
.page-cross nav.main a[aria-current="page"],
.page-quality nav.main a:hover,
.page-quality nav.main a[aria-current="page"],
.page-faq nav.main a:hover,
.page-faq nav.main a[aria-current="page"] {
  color: #FFFFFF;
}

.page-part nav.main a:not(.nav-quote)::after,
.page-catalog nav.main a:not(.nav-quote)::after,
.page-cross nav.main a:not(.nav-quote)::after,
.page-quality nav.main a:not(.nav-quote)::after,
.page-faq nav.main a:not(.nav-quote)::after {
  content: "";
  position: absolute;
  left: 0;
  right: 100%;
  bottom: 16px;
  height: 2px;
  background: var(--red);
  transition: right .2s ease;
}

.page-part nav.main a:hover::after,
.page-part nav.main a[aria-current="page"]::after,
.page-catalog nav.main a:hover::after,
.page-catalog nav.main a[aria-current="page"]::after,
.page-cross nav.main a:hover::after,
.page-cross nav.main a[aria-current="page"]::after,
.page-quality nav.main a:hover::after,
.page-quality nav.main a[aria-current="page"]::after,
.page-faq nav.main a:hover::after,
.page-faq nav.main a[aria-current="page"]::after {
  right: 0;
}

.page-part .nav-quote,
.page-catalog .nav-quote,
.page-cross .nav-quote,
.page-quality .nav-quote,
.page-faq .nav-quote {
  padding: 10px 16px !important;
  background: var(--red);
  border: 2px solid var(--red);
  color: #FFFFFF !important;
}

.page-part .nav-quote:hover,
.page-catalog .nav-quote:hover,
.page-cross .nav-quote:hover,
.page-quality .nav-quote:hover,
.page-faq .nav-quote:hover {
  background: var(--red-deep);
  border-color: var(--red-deep);
}

/* Shared directory content rhythm */
.page-part .content-section,
.page-catalog .content-section,
.page-cross .content-section,
.page-quality .content-section,
.page-faq .content-section {
  padding: clamp(62px, 7vw, 96px) 0;
  border-bottom: 1px solid var(--line);
  background: var(--paper);
}

.page-part .content-section:nth-of-type(even),
.page-quality .content-section:nth-of-type(even) {
  background: var(--paper-alt);
}

.page-part .section-head,
.page-quality .section-head {
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(320px, 1.1fr);
  gap: clamp(30px, 5vw, 70px);
  align-items: end;
  margin-bottom: 34px;
}

.page-part .section-head .lede,
.page-quality .section-head .lede {
  font-size: 15px;
}

/* Narrow directory hero. This intentionally overrides the marketing .hero only inside page-* scopes. */
.page-catalog .hero,
.page-cross .hero,
.page-quality .hero,
.page-faq .hero {
  min-height: 0;
  display: block;
  align-items: initial;
  overflow: visible;
  padding: clamp(58px, 7vw, 92px) 0 clamp(48px, 6vw, 76px);
  background: #141414;
  color: #FFFFFF;
}

.page-catalog .hero h1,
.page-cross .hero h1,
.page-quality .hero h1,
.page-faq .hero h1 {
  max-width: 980px;
  color: #FFFFFF;
}

.page-catalog .hero .lede,
.page-cross .hero .lede,
.page-quality .hero .lede,
.page-faq .hero .lede {
  margin-top: 18px;
  color: #D8D8D8;
}

.page-catalog .hero .section-kicker,
.page-cross .hero .section-kicker,
.page-quality .hero .section-kicker,
.page-faq .hero .section-kicker {
  color: #D8D8D8;
}

.page-catalog .hero-trust,
.page-cross .hero-trust,
.page-quality .hero-trust {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-top: 34px;
  border-top: 1px solid #4A4A4A;
  border-bottom: 1px solid #4A4A4A;
}

.page-catalog .hero-trust span,
.page-cross .hero-trust span,
.page-quality .hero-trust span {
  min-width: 0;
  padding: 17px 20px;
  color: #C8C8C8;
  font-size: 12px;
  line-height: 1.4;
}

.page-catalog .hero-trust span + span,
.page-cross .hero-trust span + span,
.page-quality .hero-trust span + span {
  border-left: 1px solid #4A4A4A;
}

.page-catalog .hero-trust strong,
.page-cross .hero-trust strong,
.page-quality .hero-trust strong {
  display: block;
  margin-bottom: 2px;
  color: #FFFFFF;
  font-size: 20px;
  line-height: 1.15;
  font-weight: 900;
}

/* Part page */
.page-part .part-hero {
  background: var(--paper);
}

.page-part .part-head {
  padding: clamp(44px, 5vw, 70px) 0 clamp(34px, 4vw, 54px);
}

.page-part .breadcrumbs {
  margin: 0 0 22px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 700;
}

.page-part .breadcrumbs a {
  border-bottom: 1px solid var(--line-strong);
}

.page-part .breadcrumbs a:hover {
  color: var(--red);
  border-color: var(--red);
}

.page-part .part-head h1 {
  margin: 4px 0 0;
  color: var(--ink);
  font-size: clamp(42px, 5.2vw, 72px);
}

.page-part .part-head h1 .pn {
  color: var(--red);
}

.page-part .part-title-sub {
  max-width: 920px;
  margin: 12px 0 0;
  font-size: clamp(20px, 2.1vw, 28px);
  line-height: 1.3;
  font-weight: 800;
}

.page-part .part-head .lede {
  margin-top: 16px;
}

.page-part .part-stage {
  width: min(calc(100% - (var(--pad) * 2)), var(--max));
  margin-inline: auto;
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(360px, .9fr);
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  background: var(--paper);
}

.page-part .product-visual {
  position: relative;
  min-height: 520px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  margin: 0;
  background: var(--paper-alt);
}

.page-part .product-visual img {
  width: min(86%, 720px);
  max-height: 500px;
  object-fit: contain;
}

.page-part .product-visual img:not(:first-of-type) {
  display: none;
}

.page-part .product-visual figcaption {
  position: absolute;
  left: 18px;
  bottom: 14px;
  color: var(--muted);
  font-size: 11px;
  font-weight: 700;
}

.page-part .part-data {
  display: flex;
  flex-direction: column;
  padding: clamp(28px, 3.5vw, 46px);
  border-left: 1px solid var(--line);
}

.page-part .trust-rail {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-bottom: 30px;
  border-top: 3px solid var(--red);
  border-bottom: 1px solid var(--line);
}

.page-part .trust-rail div {
  padding: 14px 12px 14px 0;
}

.page-part .trust-rail div + div {
  padding-left: 12px;
  border-left: 1px solid var(--line);
}

.page-part .trust-rail strong {
  display: block;
  font-size: 12px;
  font-weight: 900;
}

.page-part .trust-rail span {
  display: block;
  margin-top: 3px;
  color: var(--muted);
  font-size: 11px;
}

.page-part .data-title {
  margin: 0 0 10px;
  color: var(--red);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.page-part .facts {
  margin: 0;
  padding: 0;
  list-style: none;
  border-top: 1px solid var(--line);
}

.page-part .facts li {
  display: grid;
  grid-template-columns: 132px minmax(0, 1fr);
  gap: 16px;
  padding: 10px 0;
  border-bottom: 1px solid var(--line);
}

.page-part .facts b {
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}

.page-part .facts span {
  min-width: 0;
  font-size: 13px;
  overflow-wrap: anywhere;
}

.page-part .part-data .btn {
  align-self: flex-start;
  margin-top: 28px;
}

/* Part numbers: visible, selectable, copy-friendly, system monospace only */
.page-part .pn,
.page-catalog .pn,
.page-cross .pn,
.page-quality .pn,
.page-faq .pn {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-weight: 800;
  letter-spacing: .01em;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

/* Tables and procurement tools */
.page-part .tblwrap,
.page-catalog .tblwrap,
.page-cross .tblwrap,
.page-quality .tblwrap,
.page-faq .tblwrap {
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  border: 1px solid var(--line);
  background: var(--paper);
}

.page-part .tblwrap table,
.page-catalog .tblwrap table,
.page-cross .tblwrap table,
.page-quality .tblwrap table,
.page-faq .tblwrap table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  font-size: 13px;
  line-height: 1.45;
}

.page-part .tblwrap th,
.page-part .tblwrap td,
.page-catalog .tblwrap th,
.page-catalog .tblwrap td,
.page-cross .tblwrap th,
.page-cross .tblwrap td,
.page-quality .tblwrap th,
.page-quality .tblwrap td,
.page-faq .tblwrap th,
.page-faq .tblwrap td {
  padding: 12px 14px;
  border-bottom: 1px solid var(--line);
  text-align: left;
  vertical-align: top;
}

.page-part .tblwrap th,
.page-catalog .tblwrap th,
.page-cross .tblwrap th,
.page-quality .tblwrap th,
.page-faq .tblwrap th {
  border-top: 3px solid var(--red);
  background: var(--paper-alt);
  color: var(--ink);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .09em;
  text-transform: uppercase;
  white-space: nowrap;
}

.page-part .tblwrap tbody tr:nth-child(even) td,
.page-catalog .tblwrap tbody tr:nth-child(even) td,
.page-cross .tblwrap tbody tr:nth-child(even) td,
.page-quality .tblwrap tbody tr:nth-child(even) td,
.page-faq .tblwrap tbody tr:nth-child(even) td {
  background: var(--paper-alt);
}

.page-part .tblwrap tbody tr:hover td,
.page-catalog .tblwrap tbody tr:hover td,
.page-cross .tblwrap tbody tr:hover td,
.page-quality .tblwrap tbody tr:hover td,
.page-faq .tblwrap tbody tr:hover td {
  background: rgba(227, 16, 28, .07);
}

.page-part .cross-table,
.page-cross .cross-table {
  min-width: 720px;
}

.page-catalog .catalog-table {
  min-width: 980px;
}

.page-part .cross-table a,
.page-cross .cross-table a,
.page-catalog .catalog-table a {
  font-weight: 900;
}

.page-part .cross-table a:hover,
.page-cross .cross-table a:hover,
.page-catalog .catalog-table a:hover {
  color: var(--red);
}

.page-part .brandtag,
.page-cross .brandtag {
  display: inline-block;
  min-width: 88px;
  color: var(--muted);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.page-part .key td,
.page-cross .key td {
  background: rgba(227, 16, 28, .08) !important;
}

.page-part .key td:first-child,
.page-cross .key td:first-child {
  box-shadow: inset 4px 0 0 var(--red);
}

.page-part .key .pn,
.page-cross .key .pn {
  color: var(--red);
}

.page-catalog .tool-summary,
.page-cross .tool-summary {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  margin: 0 0 12px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 700;
}

/* Catalogue */
.page-catalog .catalog-controls {
  display: grid;
  grid-template-columns: minmax(300px, 420px) minmax(0, 1fr);
  gap: 24px;
  align-items: end;
  margin-top: 30px;
}

.page-catalog .catalog-controls label,
.page-cross .hero-tools label {
  display: block;
  margin: 0 0 8px;
  color: #D8D8D8;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .04em;
}

.page-catalog .catalog-controls input,
.page-cross .searchbox input {
  width: 100%;
  min-height: 50px;
  border: 2px solid #6A6A6A;
  border-radius: 0;
  outline: 0;
  background: #FFFFFF;
  color: #141414;
  padding: 11px 14px;
}

.page-catalog .catalog-controls input:focus,
.page-cross .searchbox input:focus {
  border-color: var(--red);
}

.page-catalog .catalog-filter {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 7px;
}

.page-catalog .catalog-filter button {
  min-height: 34px;
  padding: 7px 10px;
  border: 1px solid #6A6A6A;
  border-radius: 0;
  background: transparent;
  color: #E8E8E8;
  font-size: 11px;
  font-weight: 800;
  line-height: 1.2;
}

.page-catalog .catalog-filter button:hover,
.page-catalog .catalog-filter button[aria-pressed="true"] {
  border-color: var(--red);
  background: var(--red);
  color: #FFFFFF;
}

.page-catalog .catalog-app span {
  display: none;
}

.page-catalog .catalog-app span:first-child {
  display: block;
}

.page-catalog .product-cell {
  display: flex;
  align-items: center;
  gap: 14px;
  min-width: 315px;
}

.page-catalog .catalog-thumb {
  width: 54px;
  height: 46px;
  flex: 0 0 54px;
  display: block;
  border: 1px solid var(--line);
  border-left: 4px solid var(--red);
  background: var(--paper-alt);
}

.page-catalog .product-cell small {
  display: block;
  max-width: 390px;
  margin-top: 3px;
  color: var(--muted);
  font-size: 11px;
  line-height: 1.4;
}

.page-catalog .dimline {
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}

/* Cross-reference search */
.page-cross .hero-tools {
  max-width: 980px;
  margin-top: 28px;
}

.page-cross .searchbox {
  max-width: 720px;
}

.page-cross .filterbar {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 14px;
}

.page-cross .filterbar button {
  min-height: 32px;
  padding: 6px 9px;
  border: 1px solid #686868;
  border-radius: 0;
  background: transparent;
  color: #D8D8D8;
  font-size: 10px;
  font-weight: 800;
}

.page-cross .filterbar button:hover,
.page-cross .filterbar button[aria-pressed="true"] {
  border-color: var(--red);
  background: var(--red);
  color: #FFFFFF;
}

.page-cross .statline {
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
  margin-top: 24px;
}

.page-cross .statline div {
  display: flex;
  align-items: baseline;
  gap: 7px;
  color: #C8C8C8;
  font-size: 12px;
}

.page-cross .statline strong {
  color: #FFFFFF;
  font-size: 20px;
  font-weight: 900;
}

/* Evidence blocks */
.page-part .evidence-grid,
.page-quality .evidence-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-top: 3px solid var(--red);
}

.page-part .evidence-item,
.page-quality .evidence-item {
  padding: 24px 24px 10px 0;
}

.page-part .evidence-item + .evidence-item,
.page-quality .evidence-item + .evidence-item {
  padding-left: 24px;
  border-left: 1px solid var(--line);
}

.page-part .evidence-item h3,
.page-quality .evidence-item h3 {
  margin-bottom: 8px;
}

.page-part .evidence-item p,
.page-quality .evidence-item p {
  margin-bottom: 0;
  color: var(--muted);
  font-size: 13px;
}

.page-part .evidence-item p + p,
.page-quality .evidence-item p + p {
  margin-top: 12px;
}

.page-part .evidence-item a,
.page-quality .evidence-item a {
  color: var(--red);
  font-weight: 900;
  border-bottom: 1px solid var(--red);
}

.page-part .factory-proof,
.page-quality .factory-proof {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(360px, .95fr);
  margin-top: 36px;
  border: 1px solid var(--line);
  background: var(--paper);
}

.page-part .factory-proof figure,
.page-quality .factory-proof figure {
  min-height: 330px;
  margin: 0;
  background: var(--paper-alt);
  border-right: 1px solid var(--line);
}

.page-part .factory-copy,
.page-quality .factory-copy {
  padding: clamp(30px, 4vw, 50px);
}

.page-part .factory-copy h3,
.page-quality .factory-copy h3 {
  font-size: clamp(24px, 2.5vw, 34px);
}

.page-part .factory-copy p,
.page-quality .factory-copy p {
  margin: 12px 0 0;
  color: var(--muted);
}

.page-part .factory-numbers,
.page-quality .factory-numbers {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-top: 26px;
  border-top: 1px solid var(--line);
}

.page-part .factory-numbers div,
.page-quality .factory-numbers div {
  padding: 15px 12px 14px 0;
  border-bottom: 1px solid var(--line);
}

.page-part .factory-numbers div:nth-child(even),
.page-quality .factory-numbers div:nth-child(even) {
  padding-left: 18px;
  border-left: 1px solid var(--line);
}

.page-part .factory-numbers strong,
.page-quality .factory-numbers strong {
  display: block;
  color: var(--red);
  font-size: 24px;
  line-height: 1.1;
  font-weight: 900;
}

.page-part .factory-numbers span,
.page-quality .factory-numbers span {
  display: block;
  margin-top: 4px;
  color: var(--muted);
  font-size: 11px;
}

/* Quality */
.page-quality .quality-lead {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(360px, .8fr);
  gap: clamp(36px, 5vw, 70px);
}

.page-quality .quality-facts {
  border-top: 3px solid var(--red);
}

.page-quality .quality-facts div {
  display: grid;
  grid-template-columns: 150px minmax(0, 1fr);
  gap: 18px;
  padding: 13px 0;
  border-bottom: 1px solid var(--line);
}

.page-quality .quality-facts strong {
  font-size: 12px;
  font-weight: 900;
}

.page-quality .quality-facts span {
  color: var(--muted);
  font-size: 13px;
}

.page-quality .process {
  border-top: 3px solid var(--red);
  counter-reset: directory-step;
}

.page-quality .process-row {
  counter-increment: directory-step;
  display: grid;
  grid-template-columns: 58px 210px minmax(0, 1fr);
  gap: 24px;
  padding: 20px 0;
  border-bottom: 1px solid var(--line);
}

.page-quality .process-row::before {
  content: "0" counter(directory-step);
  color: var(--red);
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: 12px;
  font-weight: 900;
}

.page-quality .process-row h3 {
  font-size: 15px;
}

.page-quality .process-row p {
  margin-bottom: 0;
  color: var(--muted);
  font-size: 13px;
}

/* FAQ */
.page-faq .qa,
.page-part .qa {
  padding: 22px 0;
  border-top: 1px solid var(--line);
}

.page-faq .qa:first-of-type,
.page-part .qa:first-of-type {
  margin-top: 28px;
}

.page-faq .qa:last-of-type,
.page-part .qa:last-of-type {
  border-bottom: 1px solid var(--line);
}

.page-faq .qa h3,
.page-part .qa h3 {
  font-size: 17px;
}

.page-faq .qa p,
.page-part .qa p {
  max-width: 850px;
  margin: 8px 0 0;
  color: var(--muted);
  font-size: 14px;
  line-height: 1.75;
}

/* CTA */
.page-part .cta,
.page-catalog .cta,
.page-cross .cta,
.page-quality .cta,
.page-faq .cta {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 30px;
  align-items: center;
  margin-top: 54px;
  padding: clamp(26px, 3.5vw, 42px);
  border-left: 5px solid var(--red);
  background: #141414;
  color: #FFFFFF;
}

.page-part .cta h2,
.page-catalog .cta h2,
.page-cross .cta h2,
.page-quality .cta h2,
.page-faq .cta h2 {
  color: #FFFFFF;
  font-size: clamp(25px, 2.8vw, 38px);
}

.page-part .cta p,
.page-catalog .cta p,
.page-cross .cta p,
.page-quality .cta p,
.page-faq .cta p {
  max-width: 760px;
  margin: 8px 0 0;
  color: #CFCFCF;
  font-size: 13px;
}

/* Directory footer */
.page-part footer.site,
.page-catalog footer.site,
.page-cross footer.site,
.page-quality footer.site,
.page-faq footer.site {
  margin-top: 0;
  background: #141414;
  color: #FFFFFF;
  border-top: 1px solid #333333;
}

.page-part footer.site .wrap,
.page-catalog footer.site .wrap,
.page-cross footer.site .wrap,
.page-quality footer.site .wrap,
.page-faq footer.site .wrap {
  padding-top: 38px;
  padding-bottom: 46px;
}

.page-part .footer-grid,
.page-catalog .footer-grid,
.page-cross .footer-grid,
.page-quality .footer-grid,
.page-faq .footer-grid {
  display: grid;
  grid-template-columns: 1.35fr .65fr;
  gap: 48px;
}

.page-part footer.site strong,
.page-catalog footer.site strong,
.page-cross footer.site strong,
.page-quality footer.site strong,
.page-faq footer.site strong {
  font-weight: 900;
}

.page-part footer.site p,
.page-catalog footer.site p,
.page-cross footer.site p,
.page-quality footer.site p,
.page-faq footer.site p {
  margin: 8px 0 0;
  color: #AFAFAF;
  font-size: 11px;
}

.page-part .footer-links,
.page-catalog .footer-links,
.page-cross .footer-links,
.page-quality .footer-links,
.page-faq .footer-links {
  display: flex;
  flex-wrap: wrap;
  align-content: flex-start;
  justify-content: flex-end;
  gap: 16px;
}

.page-part .footer-links a,
.page-catalog .footer-links a,
.page-cross .footer-links a,
.page-quality .footer-links a,
.page-faq .footer-links a {
  color: #D8D8D8;
  font-size: 11px;
  font-weight: 800;
}

.page-part .footer-links a:hover,
.page-catalog .footer-links a:hover,
.page-cross .footer-links a:hover,
.page-quality .footer-links a:hover,
.page-faq .footer-links a:hover {
  color: #FFFFFF;
  text-decoration: underline;
  text-decoration-color: var(--red);
  text-underline-offset: 4px;
}

/* Directory responsive */
@media (max-width: 1020px) {
  .page-part .part-stage,
  .page-part .factory-proof,
  .page-quality .factory-proof,
  .page-quality .quality-lead {
    grid-template-columns: 1fr;
  }

  .page-part .part-data {
    border-left: 0;
    border-top: 1px solid var(--line);
  }

  .page-part .factory-proof figure,
  .page-quality .factory-proof figure {
    min-height: 220px;
    border-right: 0;
    border-bottom: 1px solid var(--line);
  }

  .page-part .evidence-grid,
  .page-quality .evidence-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .page-part .evidence-item:nth-child(3),
  .page-quality .evidence-item:nth-child(3) {
    padding-left: 0;
    border-left: 0;
    border-top: 1px solid var(--line);
  }

  .page-part .evidence-item:nth-child(4),
  .page-quality .evidence-item:nth-child(4) {
    border-top: 1px solid var(--line);
  }

  .page-catalog .catalog-controls {
    grid-template-columns: 1fr;
    align-items: start;
  }

  .page-catalog .catalog-filter {
    justify-content: flex-start;
  }
}

@media (max-width: 760px) {
  .page-part header.site .wrap,
  .page-catalog header.site .wrap,
  .page-cross header.site .wrap,
  .page-quality header.site .wrap,
  .page-faq header.site .wrap {
    min-height: 0;
    flex-wrap: wrap;
    gap: 8px;
    padding-top: 11px;
    padding-bottom: 9px;
  }

  .page-part nav.main,
  .page-catalog nav.main,
  .page-cross nav.main,
  .page-quality nav.main,
  .page-faq nav.main {
    order: 2;
    width: 100%;
    gap: 20px;
    overflow-x: auto;
    scrollbar-width: none;
  }

  .page-part nav.main::-webkit-scrollbar,
  .page-catalog nav.main::-webkit-scrollbar,
  .page-cross nav.main::-webkit-scrollbar,
  .page-quality nav.main::-webkit-scrollbar,
  .page-faq nav.main::-webkit-scrollbar {
    display: none;
  }

  .page-part nav.main a,
  .page-catalog nav.main a,
  .page-cross nav.main a,
  .page-quality nav.main a,
  .page-faq nav.main a {
    padding: 5px 0 9px;
    font-size: 12px;
  }

  .page-part nav.main a:not(.nav-quote)::after,
  .page-catalog nav.main a:not(.nav-quote)::after,
  .page-cross nav.main a:not(.nav-quote)::after,
  .page-quality nav.main a:not(.nav-quote)::after,
  .page-faq nav.main a:not(.nav-quote)::after {
    bottom: 3px;
  }

  .page-part .nav-quote,
  .page-catalog .nav-quote,
  .page-cross .nav-quote,
  .page-quality .nav-quote,
  .page-faq .nav-quote {
    padding: 6px 9px !important;
  }

  .page-catalog .hero,
  .page-cross .hero,
  .page-quality .hero,
  .page-faq .hero {
    min-height: 0;
    padding: 46px 0 40px;
  }

  .page-catalog .hero-trust,
  .page-cross .hero-trust,
  .page-quality .hero-trust {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .page-catalog .hero-trust span + span,
  .page-cross .hero-trust span + span,
  .page-quality .hero-trust span + span {
    border-left: 0;
  }

  .page-catalog .hero-trust span:nth-child(even),
  .page-cross .hero-trust span:nth-child(even),
  .page-quality .hero-trust span:nth-child(even) {
    border-left: 1px solid #4A4A4A;
  }

  .page-catalog .hero-trust span:nth-child(n+3),
  .page-cross .hero-trust span:nth-child(n+3),
  .page-quality .hero-trust span:nth-child(n+3) {
    border-top: 1px solid #4A4A4A;
  }

  .page-part .part-head {
    padding-top: 36px;
  }

  .page-part .section-head,
  .page-quality .section-head {
    grid-template-columns: 1fr;
    gap: 12px;
    align-items: start;
  }

  .page-part .product-visual {
    min-height: 350px;
  }

  .page-part .trust-rail {
    grid-template-columns: 1fr;
  }

  .page-part .trust-rail div + div {
    padding-left: 0;
    border-left: 0;
    border-top: 1px solid var(--line);
  }

  .page-part .facts li {
    grid-template-columns: 112px minmax(0, 1fr);
  }

  .page-part .evidence-grid,
  .page-quality .evidence-grid {
    grid-template-columns: 1fr;
  }

  .page-part .evidence-item,
  .page-part .evidence-item + .evidence-item,
  .page-part .evidence-item:nth-child(3),
  .page-part .evidence-item:nth-child(4),
  .page-quality .evidence-item,
  .page-quality .evidence-item + .evidence-item,
  .page-quality .evidence-item:nth-child(3),
  .page-quality .evidence-item:nth-child(4) {
    padding: 19px 0;
    border-left: 0;
    border-top: 1px solid var(--line);
  }

  .page-quality .quality-facts div {
    grid-template-columns: 125px minmax(0, 1fr);
  }

  .page-quality .process-row {
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 14px;
  }

  .page-quality .process-row p {
    grid-column: 2;
  }

  .page-catalog .tool-summary,
  .page-cross .tool-summary {
    flex-direction: column;
    gap: 4px;
  }

  .page-part .tblwrap,
  .page-catalog .tblwrap,
  .page-cross .tblwrap {
    margin-inline: calc(var(--pad) * -1);
    width: calc(100% + (var(--pad) * 2));
    border-left: 0;
    border-right: 0;
  }

  .page-part .cross-table {
    min-width: 680px;
  }

  .page-cross .cross-table {
    min-width: 760px;
  }

  .page-catalog .catalog-table {
    min-width: 920px;
  }

  .page-catalog .catalog-filter,
  .page-cross .filterbar {
    gap: 6px;
  }

  .page-catalog .catalog-filter button,
  .page-cross .filterbar button {
    font-size: 10px;
  }

  .page-part .cta,
  .page-catalog .cta,
  .page-cross .cta,
  .page-quality .cta,
  .page-faq .cta {
    grid-template-columns: 1fr;
  }

  .page-part .footer-grid,
  .page-catalog .footer-grid,
  .page-cross .footer-grid,
  .page-quality .footer-grid,
  .page-faq .footer-grid {
    grid-template-columns: 1fr;
  }

  .page-part .footer-links,
  .page-catalog .footer-links,
  .page-cross .footer-links,
  .page-quality .footer-links,
  .page-faq .footer-links {
    justify-content: flex-start;
  }
}

@media (max-width: 430px) {
  .page-part .part-data {
    padding: 24px 20px;
  }

  .page-part .part-data .btn,
  .page-part .cta .btn,
  .page-catalog .cta .btn,
  .page-cross .cta .btn,
  .page-quality .cta .btn,
  .page-faq .cta .btn {
    width: 100%;
  }

  .page-part .factory-copy,
  .page-quality .factory-copy {
    padding: 26px 22px;
  }

  .page-part .factory-numbers,
  .page-quality .factory-numbers {
    grid-template-columns: 1fr;
  }

  .page-part .factory-numbers div:nth-child(even),
  .page-quality .factory-numbers div:nth-child(even) {
    padding-left: 0;
    border-left: 0;
  }
}

@media (prefers-color-scheme: dark) {
  .page-part .catalog-thumb,
  .page-catalog .catalog-thumb,
  .page-cross .catalog-thumb,
  .page-quality .catalog-thumb,
  .page-faq .catalog-thumb {
    border-color: var(--line);
  }

  .page-part .tblwrap tbody tr:hover td,
  .page-catalog .tblwrap tbody tr:hover td,
  .page-cross .tblwrap tbody tr:hover td,
  .page-quality .tblwrap tbody tr:hover td,
  .page-faq .tblwrap tbody tr:hover td {
    background: rgba(227, 16, 28, .14);
  }

  .page-part .key td,
  .page-cross .key td {
    background: rgba(227, 16, 28, .16) !important;
  }
}

