/* Fifth-pass browser acceptance overrides. Loaded after styles.css. */

body.reference-page:is(.reference-process, .reference-design, .reference-sample, .reference-low-moq, .reference-private-label, .reference-packaging, .reference-costs, .reference-materials, .reference-quality, .reference-oem, .reference-company) .page-hero {
  padding-top: 0 !important;
}

body.reference-page:is(.reference-process, .reference-design, .reference-sample, .reference-low-moq, .reference-private-label, .reference-packaging, .reference-costs, .reference-materials, .reference-quality, .reference-oem, .reference-company) .page-hero h1 {
  font-weight: 700 !important;
}

body.reference-page:is(.reference-private-label, .reference-packaging) {
  background: #fff !important;
}

body.reference-page:is(.reference-private-label, .reference-packaging) main {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background: #fff !important;
}

body.reference-page:is(.reference-private-label, .reference-packaging) main > section:not(.page-hero):not([data-r5-flat-private="true"]) {
  display: none !important;
}

body.reference-page:is(.reference-private-label, .reference-packaging) .page-hero {
  display: block !important;
  padding: 50px 0 24px !important;
}

body.reference-page.reference-inner:is(.reference-private-label, .reference-packaging) main > .page-hero {
  padding-block: 80px 24px !important;
}

body.reference-page.reference-inner:is(.reference-private-label, .reference-packaging) #main > .page-hero {
  padding-top: 80px !important;
  padding-block-start: 80px !important;
}

body.reference-page:is(.reference-private-label, .reference-packaging) .page-hero > .container,
body.reference-page:is(.reference-private-label, .reference-packaging) .reference-flat-article > .container {
  width: min(calc(100% - 40px), 1104px) !important;
  max-width: none !important;
  margin-inline: auto !important;
}

body.reference-page:is(.reference-private-label, .reference-packaging) .page-hero h1 {
  margin: 0 0 22px !important;
  font-size: 36px !important;
  line-height: 1.35 !important;
  font-weight: 700 !important;
  text-align: center !important;
}

body.reference-page.reference-inner:is(.reference-private-label, .reference-packaging) .page-hero .page-hero-grid .page-hero-media {
  display: block !important;
  width: 1104px !important;
  inline-size: 1104px !important;
  max-width: 100% !important;
  margin: 0 auto 24px !important;
  justify-self: stretch !important;
}

body.reference-page.reference-inner:is(.reference-private-label, .reference-packaging) #main > .page-hero .page-hero-media {
  width: 1104px !important;
  inline-size: 1104px !important;
  max-width: 100% !important;
  max-inline-size: 100% !important;
}

body.reference-page:is(.reference-private-label, .reference-packaging) .page-hero-media img {
  display: block;
  width: 100% !important;
  height: auto !important;
  object-fit: contain !important;
}

body.reference-page:is(.reference-private-label, .reference-packaging) .page-hero-grid > div:first-child > p:not(.eyebrow) {
  margin: 0 0 18px !important;
  font-size: 15px;
  line-height: 1.7;
}

body.reference-page:is(.reference-private-label, .reference-packaging) .reference-flat-article {
  display: block !important;
  padding: 0 0 54px !important;
  background: #fff !important;
}

body.reference-page:is(.reference-private-label, .reference-packaging) .reference-flat-article :is(p, li, td, th) {
  font-size: 16px;
  line-height: 1.72;
}

body.reference-page:is(.reference-private-label, .reference-packaging) .reference-flat-article p {
  margin: 0 0 18px;
}

body.reference-page:is(.reference-private-label, .reference-packaging) .reference-flat-article hr {
  height: 1px;
  margin: 32px 0 26px;
  border: 0;
  background: #e7e7e7;
}

body.reference-page:is(.reference-private-label, .reference-packaging) .reference-flat-article h2 {
  margin: 0 0 14px;
  font-size: 30px !important;
  line-height: 1.3;
}

body.reference-page:is(.reference-private-label, .reference-packaging) .reference-flat-article h3 {
  margin: 18px 0 6px;
  font-size: 24px !important;
  line-height: 1.3;
}

body.reference-page:is(.reference-private-label, .reference-packaging) .reference-flat-article :is(ul, ol) {
  margin: 0 0 18px;
  padding-left: 24px;
}

body.reference-page:is(.reference-private-label, .reference-packaging) .reference-flat-article img {
  display: block;
  width: min(100%, 1000px) !important;
  height: auto !important;
  margin: 18px auto 20px;
  object-fit: contain !important;
}

body.reference-page:is(.reference-private-label, .reference-packaging) .reference-flat-article img[width="750"] {
  width: min(100%, 750px) !important;
}

body.reference-page:is(.reference-private-label, .reference-packaging) .reference-flat-article .decision-table-wrap {
  margin: 18px 0 20px;
}

body.reference-page:is(.reference-private-label, .reference-packaging) .reference-flat-article .private-includes-list li { margin-bottom: 41px; }
body.reference-page:is(.reference-private-label, .reference-packaging) .reference-flat-article .private-model-table :is(th, td) { padding-block: 23px !important; }
body.reference-page:is(.reference-private-label, .reference-packaging) .reference-flat-article .private-suitability-list li { margin-bottom: 17px; }
body.reference-page:is(.reference-private-label, .reference-packaging) .reference-flat-article .private-buyer-input-list li { margin-bottom: 7px; }
body.reference-page:is(.reference-private-label, .reference-packaging) .reference-flat-article .private-products-list li { margin-bottom: 14px; }
body.reference-page:is(.reference-private-label, .reference-packaging) .reference-flat-article .private-custom-option { margin-bottom: 66px; }
body.reference-page:is(.reference-private-label, .reference-packaging) .reference-flat-article .private-moq-list li { margin-bottom: 44px; }
body.reference-page:is(.reference-private-label, .reference-packaging) .reference-flat-article .private-production-table :is(th, td) { padding-block: 16px !important; }
body.reference-page:is(.reference-private-label, .reference-packaging) .reference-flat-article .private-sampling-list li { margin-bottom: 39px; }
body.reference-page:is(.reference-private-label, .reference-packaging) .reference-flat-article .private-bulk-list li { margin-bottom: 38px; }
body.reference-page:is(.reference-private-label, .reference-packaging) .reference-flat-article .private-packaging-list li { margin-bottom: 24px; }
body.reference-page:is(.reference-private-label, .reference-packaging) .reference-flat-article .private-compliance-list li { margin-bottom: 50px; }
body.reference-page:is(.reference-private-label, .reference-packaging) .reference-flat-article .private-process-list li { margin-bottom: 10px; }
body.reference-page:is(.reference-private-label, .reference-packaging) .reference-flat-article .private-buyer-questions li { margin-bottom: 19px; }
body.reference-page:is(.reference-private-label, .reference-packaging) .reference-flat-article .private-faq-answer { margin-bottom: 62px; }

@media (max-width: 760px) {
  body.reference-page:is(.reference-private-label, .reference-packaging) .page-hero > .container,
  body.reference-page:is(.reference-private-label, .reference-packaging) .reference-flat-article > .container {
    width: min(calc(100% - 32px), 1104px) !important;
  }

  body.reference-page:is(.reference-private-label, .reference-packaging) .page-hero h1 {
    font-size: 30px !important;
  }

  body.reference-page:is(.reference-private-label, .reference-packaging) .reference-flat-article h2 {
    font-size: 25px !important;
  }

  body.reference-page:is(.reference-private-label, .reference-packaging) .reference-flat-article h3 {
    font-size: 21px !important;
  }
}

/* The legacy inner-page selector carries several :not() clauses and otherwise
   wins the important alignment declaration.  Reference content pages use a
   centred H1; contact remains the deliberate image-left/contact-right case. */
body.reference-page.reference-inner:not(.reference-contact):not(.reference-legal):not(.reference-faq):not(.reference-exhibitions)
  #main > .page-hero h1 {
  margin-inline: auto !important;
  text-align: center !important;
}

/* Design, sampling and low-MOQ pages use the reference article canvas and
   preserve the complete intrinsic media ratios. */
body.reference-page.reference-inner:is(.reference-design, .reference-sample, .reference-low-moq) #main > .page-hero {
  padding: 0 0 24px !important;
}

body.reference-page.reference-inner:is(.reference-design, .reference-sample) #main > .page-hero h1 {
  margin-bottom: 75px !important;
}

body.reference-page.reference-inner.reference-low-moq #main > .page-hero h1 {
  width: min(100%, 800px);
  margin: 0 auto 24px !important;
}

body.reference-page.reference-design main > section:not(.page-hero):not([data-r5-design-article="true"]) {
  display: none !important;
}

body.reference-page.reference-design .page-hero :is(.breadcrumb, .eyebrow, .hero-lede, .hero-actions) {
  display: none !important;
}

body.reference-page.reference-design .page-hero-grid {
  display: block !important;
}

body.reference-page.reference-design .page-hero h1 {
  text-align: center !important;
}

body.reference-page.reference-design .page-hero-media {
  display: block !important;
  width: min(100%, 1000px) !important;
  margin: 0 auto !important;
}

body.reference-page.reference-design .page-hero-media img {
  display: block;
  width: 100% !important;
  height: auto !important;
  object-fit: contain !important;
}

body.reference-page.reference-design .reference-design-article {
  display: block !important;
  padding: 34px 0 54px !important;
  background: #fff !important;
}

body.reference-page.reference-design .reference-design-article > .container {
  width: min(calc(100% - 40px), 1104px) !important;
  max-width: none !important;
  margin-inline: auto !important;
}

body.reference-page.reference-design .reference-design-article :is(p, li) {
  font-size: 15px;
  line-height: 1.72;
}

body.reference-page.reference-design .reference-design-article p {
  margin: 0 0 18px;
}

body.reference-page.reference-design .reference-design-article .design-intro {
  margin-bottom: 359px;
}

body.reference-page.reference-design .reference-design-article hr {
  height: 1px;
  margin: 30px 0 31px;
  border: 0;
  background: #d9d9d9;
}

body.reference-page.reference-design .reference-design-article h2 {
  margin: 0 0 20px;
  font-size: 30px !important;
  line-height: 1.3;
}

body.reference-page.reference-design .reference-design-article h3 {
  margin: 21px 0 6px;
  font-size: 21px !important;
  line-height: 1.35;
}

body.reference-page.reference-design .reference-design-article :is(ul, ol) {
  margin: 18px 0 24px;
  padding-left: 24px;
}

body.reference-page.reference-design .reference-design-article img {
  display: block;
  width: min(100%, 1000px) !important;
  height: auto !important;
  margin: 30px auto 34px;
  object-fit: contain !important;
}

body.reference-page.reference-sample main > section:not(.page-hero):not([data-r5-sample-article="true"]) {
  display: none !important;
}

body.reference-page.reference-sample .page-hero :is(.breadcrumb, .eyebrow, .hero-lede, .hero-actions) {
  display: none !important;
}

body.reference-page.reference-sample .page-hero-grid {
  display: block !important;
}

body.reference-page.reference-sample .page-hero h1 {
  text-align: center !important;
}

body.reference-page.reference-sample .page-hero-media {
  display: block !important;
  width: min(100%, 1000px) !important;
  margin: 0 auto !important;
}

body.reference-page.reference-sample .page-hero-media img {
  display: block;
  width: 100% !important;
  height: auto !important;
  object-fit: contain !important;
}

body.reference-page.reference-sample .reference-sample-article {
  display: block !important;
  padding: 34px 0 54px !important;
  background: #fff !important;
}

body.reference-page.reference-sample .reference-sample-article > .container {
  width: min(calc(100% - 40px), 1104px) !important;
  max-width: none !important;
  margin-inline: auto !important;
}

body.reference-page.reference-sample .reference-sample-article :is(p, li) {
  font-size: 15px;
  line-height: 1.72;
}

body.reference-page.reference-sample .reference-sample-article p {
  margin: 0 0 18px;
}

body.reference-page.reference-sample .reference-sample-article .design-intro {
  margin-bottom: 359px;
}

body.reference-page.reference-sample .reference-sample-article hr {
  height: 1px;
  margin: 30px 0 31px;
  border: 0;
  background: #d9d9d9;
}

body.reference-page.reference-sample .reference-sample-article h2 {
  margin: 0 0 20px;
  font-size: 30px !important;
  line-height: 1.3;
}

body.reference-page.reference-sample .reference-sample-article h3 {
  margin: 21px 0 6px;
  font-size: 21px !important;
  line-height: 1.35;
}

body.reference-page.reference-sample .reference-sample-article :is(ul, ol) {
  margin: 18px 0 24px;
  padding-left: 24px;
}

body.reference-page.reference-sample .reference-sample-article img {
  display: block;
  width: min(100%, 1000px) !important;
  height: auto !important;
  margin: 30px auto 34px;
  object-fit: contain !important;
}

body.reference-page:is(.reference-design, .reference-sample) :is(.reference-design-article, .reference-sample-article) .design-product-list {
  padding-bottom: 93px;
}

body.reference-page:is(.reference-design, .reference-sample) :is(.reference-design-article, .reference-sample-article) .design-product-list li {
  margin-bottom: 30px;
}

body.reference-page:is(.reference-design, .reference-sample) :is(.reference-design-article, .reference-sample-article) .design-material-list li {
  margin-bottom: 25px;
}

body.reference-page:is(.reference-design, .reference-sample) :is(.reference-design-article, .reference-sample-article) .design-artwork-list {
  padding-bottom: 120px;
}

body.reference-page:is(.reference-design, .reference-sample) :is(.reference-design-article, .reference-sample-article) .design-artwork-list li {
  margin-bottom: 25px;
}

body.reference-page:is(.reference-design, .reference-sample) :is(.reference-design-article, .reference-sample-article) .design-techpack-list li,
body.reference-page:is(.reference-design, .reference-sample) :is(.reference-design-article, .reference-sample-article) .design-sample-list li {
  margin-bottom: 22px;
}

body.reference-page:is(.reference-design, .reference-sample) :is(.reference-design-article, .reference-sample-article) .design-sample-list {
  padding-bottom: 80px;
}

body.reference-page:is(.reference-design, .reference-sample) :is(.reference-design-article, .reference-sample-article) .design-idea-list {
  padding-bottom: 120px;
}

body.reference-page:is(.reference-design, .reference-sample) :is(.reference-design-article, .reference-sample-article) h3 + p {
  margin-bottom: 67px;
}

/* The current certificate reference opens with the six complete published
   documents, then continues as a plain article with no decorative QC detour. */
body.reference-page.reference-quality {
  background: #fff !important;
}

body.reference-page.reference-quality main {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background: #fff !important;
}

body.reference-page.reference-quality main > section:not(.page-hero):not([data-r5-quality-article="true"]) {
  display: none !important;
}

body.reference-page.reference-quality .page-hero {
  display: block !important;
  padding: 50px 0 24px !important;
}

body.reference-page.reference-quality #main > .page-hero {
  padding-top: 40px !important;
  padding-block-start: 40px !important;
}

body.reference-page.reference-quality .page-hero > .container,
body.reference-page.reference-quality .reference-quality-article > .container {
  width: min(calc(100% - 40px), 1200px) !important;
  max-width: none !important;
  margin-inline: auto !important;
}

body.reference-page.reference-quality .page-hero-grid {
  display: block !important;
}

body.reference-page.reference-inner.reference-quality #main > .page-hero .page-hero-grid > div:first-child {
  display: block !important;
}

body.reference-page.reference-quality .page-hero :is(.breadcrumb, .eyebrow, .hero-actions, .page-hero-media) {
  display: none !important;
}

body.reference-page.reference-inner.reference-quality #main > .page-hero .page-hero-grid > .page-hero-media {
  display: none !important;
}

body.reference-page.reference-quality .page-hero h1 {
  margin: 0 auto 20px !important;
  font-size: 36px !important;
  line-height: 1.35 !important;
  text-align: center !important;
}

body.reference-page.reference-quality .page-hero .hero-lede {
  max-width: 1160px;
  margin: 0 auto !important;
  font-size: 16px;
  line-height: 1.7;
  text-align: center;
}

body.reference-page.reference-quality .reference-quality-article {
  display: block !important;
  padding: 44px 0 54px !important;
  background: #fff !important;
}

body.reference-page.reference-quality .quality-cert-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 42px 8px !important;
  margin: 0 0 244px;
}

body.reference-page.reference-quality .quality-cert-grid figure {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  min-height: 442px;
  margin: 0;
  padding: 10px 12px 14px;
  border: 2px solid #bd1d61;
  background: #fff;
}

body.reference-page.reference-quality .quality-cert-grid img {
  display: block;
  width: min(100%, 300px) !important;
  height: auto !important;
  max-height: 381px;
  object-fit: contain !important;
}

body.reference-page.reference-quality .quality-cert-grid figcaption {
  margin-top: 8px;
  color: #111;
  font-size: 20px;
  line-height: 1.25;
  font-weight: 700;
  text-align: center;
}

body.reference-page.reference-quality .reference-quality-article :is(p, li, td, th) {
  font-size: 15px;
  line-height: 1.72;
}

body.reference-page.reference-quality .reference-quality-article p {
  margin: 0 0 24px;
}

body.reference-page.reference-quality .reference-quality-article hr {
  height: 1px;
  margin: 30px 0 31px;
  border: 0;
  background: #d9d9d9;
}

body.reference-page.reference-quality .reference-quality-article h2 {
  margin: 0 0 20px;
  font-size: 30px !important;
  line-height: 1.3;
}

body.reference-page.reference-quality .reference-quality-article h3 {
  margin: 21px 0 6px;
  font-size: 21px !important;
  line-height: 1.35;
}

body.reference-page.reference-quality .reference-quality-article .decision-table-wrap {
  margin: 22px 0 30px;
}

body.reference-page.reference-quality .reference-quality-article .decision-table :is(th, td) {
  padding-block: 7px !important;
}

body.reference-page.reference-quality .reference-quality-article h3 + p {
  margin-bottom: 59px;
}

body.reference-page.reference-quality .reference-quality-article .quality-compliance-tail { margin-bottom: 98px; }
body.reference-page.reference-quality .reference-quality-article .quality-timing-tail { margin-bottom: 119px; }
body.reference-page.reference-quality .reference-quality-article .quality-support-tail { margin-bottom: 36px; }
body.reference-page.reference-quality .reference-quality-article .quality-related-tail { margin-bottom: 44px; }

/* Homepage: the reference is a single vertical document.  Its opening factory
   media is one horizontal strip, followed by evidence, facts, partner/product
   sections and the combined one-stop/process sequence. */
body.reference-page.reference-home main {
  display: grid !important;
  grid-template-columns: minmax(0, 5fr) minmax(0, 7fr) !important;
  column-gap: 20px !important;
  justify-content: center !important;
}

body.reference-page.reference-home #main .home-banner {
  width: 100% !important;
  max-width: none !important;
  justify-self: center !important;
}

body.reference-page.reference-home .home-banner { grid-column: 1 / -1 !important; grid-row: 1 !important; }
body.reference-page.reference-home .home-market-fit { grid-column: 1 !important; grid-row: 2 !important; }
body.reference-page.reference-home .home-video-section { grid-column: 2 !important; grid-row: 2 !important; }
body.reference-page.reference-home [aria-labelledby="factory-gallery-title"] { grid-column: 1 / -1 !important; grid-row: 3 !important; }
body.reference-page.reference-home [aria-labelledby="certificate-gallery-title"] { grid-column: 1 / -1 !important; grid-row: 4 !important; }
body.reference-page.reference-home .hero-facts { grid-column: 1 / -1 !important; grid-row: 5 !important; }
body.reference-page.reference-home .home-services { grid-column: 1 / -1 !important; grid-row: 6 !important; }
body.reference-page.reference-home [aria-labelledby="partner-reference-title"] { grid-column: 1 / -1 !important; grid-row: 7 !important; }
body.reference-page.reference-home [aria-labelledby="product-reference-title"] { grid-column: 1 / -1 !important; grid-row: 8 !important; }
body.reference-page.reference-home .factory-section { grid-column: 1 / -1 !important; grid-row: 9 !important; }
body.reference-page.reference-home [aria-labelledby="one-stop-title"] { grid-column: 1 / -1 !important; grid-row: 10 !important; }
body.reference-page.reference-home [aria-labelledby="process-gallery-title"] { grid-column: 1 / -1 !important; grid-row: 11 !important; }
body.reference-page.reference-home [aria-labelledby="yarn-gallery-title"] { grid-column: 1 / -1 !important; grid-row: 12 !important; }
body.reference-page.reference-home [aria-labelledby="technique-gallery-title"] { grid-column: 1 / -1 !important; grid-row: 13 !important; }
body.reference-page.reference-home [aria-labelledby="exhibition-home-title"] { grid-column: 1 / -1 !important; grid-row: 14 !important; }
body.reference-page.reference-home [aria-labelledby="buyer-visits-title"] { grid-column: 1 / -1 !important; grid-row: 15 !important; }
body.reference-page.reference-home [aria-labelledby="community-title"] { grid-column: 1 / -1 !important; grid-row: 16 !important; }
body.reference-page.reference-home .home-faq { grid-column: 1 / -1 !important; grid-row: 17 !important; }

body.reference-page.reference-home .home-video-section {
  display: block !important;
  width: 100% !important;
  padding: 20px 0 24px !important;
  background: #000 !important;
}

body.reference-page.reference-home #main > .home-video-section {
  display: block !important;
  grid-column: 2 !important;
  grid-row: 2 !important;
}

body.reference-page.reference-home .home-video-section > .container,
body.reference-page.reference-home .home-video-layout,
body.reference-page.reference-home .home-video-player {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  height: 100% !important;
}

body.reference-page.reference-home .home-video-section :is(.home-section-heading, .home-video-transcript) {
  display: none !important;
}

body.reference-page.reference-home .home-video-player .youtube-embed-shell {
  width: 100% !important;
  min-height: 385px !important;
  height: 400px !important;
  background: #000 !important;
}

body.reference-page.reference-home .home-video-section {
  height: 400px !important;
  padding: 0 !important;
  align-self: start !important;
}

body.reference-page.reference-home .home-video-player .youtube-embed-shell > img {
  display: none !important;
}

body.reference-page.reference-home .home-video-player .youtube-consent {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  padding: 0 !important;
  background: transparent !important;
}

body.reference-page.reference-home .home-video-player .youtube-consent > :not(.youtube-load-button) {
  display: none !important;
}

body.reference-page.reference-home .home-video-player .youtube-load-button {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  padding: 0 !important;
  border: 0 !important;
  color: transparent !important;
  background: transparent !important;
}

body.reference-page.reference-home .home-market-fit {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  padding: 20px 0 24px !important;
}

body.reference-page.reference-home .home-market-fit-heading,
body.reference-page.reference-home .home-market-fit-answer {
  display: block !important;
}

body.reference-page.reference-home .home-market-fit-heading .eyebrow,
body.reference-page.reference-home .home-market-fit-answer .text-link {
  display: none !important;
}

body.reference-page.reference-home .home-market-fit-answer ul {
  margin-block: 10px !important;
}

body.reference-page.reference-home .home-market-fit-answer li {
  margin-bottom: 3px !important;
  font-size: 14px !important;
  line-height: 1.38 !important;
}

body.reference-page.reference-home [aria-labelledby="factory-gallery-title"] {
  padding-block: 28px 34px !important;
}

body.reference-page.reference-home #main > [aria-labelledby="factory-gallery-title"] {
  padding-block: 0 !important;
}

body.reference-page.reference-home [aria-labelledby="factory-gallery-title"] .reference-media-heading {
  display: none !important;
}

body.reference-page.reference-home [aria-labelledby="factory-gallery-title"] .reference-horizontal-gallery {
  display: grid !important;
  grid-template-columns: none !important;
  grid-auto-flow: column !important;
  grid-auto-columns: 289px !important;
  gap: 0 !important;
  overflow: hidden !important;
}

body.reference-page.reference-home [aria-labelledby="factory-gallery-title"] .reference-horizontal-gallery figure {
  width: 289px !important;
  min-width: 0 !important;
  margin: 0 !important;
}

body.reference-page.reference-home [aria-labelledby="factory-gallery-title"] .reference-horizontal-gallery img {
  display: block;
  width: 289px !important;
  height: auto !important;
  object-fit: contain !important;
}

body.reference-page.reference-home [aria-labelledby="factory-gallery-title"] .reference-horizontal-gallery figcaption,
body.reference-page.reference-home [aria-labelledby="process-gallery-title"] .reference-media-heading {
  display: none !important;
}

body.reference-page.reference-home [aria-labelledby="certificate-gallery-title"] .reference-media-grid {
  grid-template-columns: repeat(4, minmax(0, 300px)) !important;
  gap: 20px !important;
  justify-content: center !important;
}

body.reference-page.reference-home #main > [aria-labelledby="certificate-gallery-title"] {
  padding-block: 34px 44px !important;
}

body.reference-page.reference-home [aria-labelledby="certificate-gallery-title"] > .container {
  width: min(calc(100% - 5px), 1260px) !important;
  max-width: none !important;
}

body.reference-page.reference-home [aria-labelledby="certificate-gallery-title"] .reference-media-heading {
  margin-bottom: 20px !important;
}

body.reference-page.reference-home [aria-labelledby="certificate-gallery-title"] .reference-media-heading :is(.eyebrow, p) {
  display: none !important;
}

body.reference-page.reference-home [aria-labelledby="certificate-gallery-title"] .reference-media-grid figure {
  margin: 0 !important;
}

body.reference-page.reference-home [aria-labelledby="certificate-gallery-title"] .reference-media-grid img {
  display: block !important;
  width: 300px !important;
  max-width: 100% !important;
  height: auto !important;
  object-fit: contain !important;
}

body.reference-page.reference-home [aria-labelledby="certificate-gallery-title"] .reference-media-grid figcaption,
body.reference-page.reference-home [aria-labelledby="certificate-gallery-title"] .reference-media-note {
  display: none !important;
}

body.reference-page.reference-home .hero-facts {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}

body.reference-page.reference-home .hero-facts > h2 {
  grid-column: 1 / -1 !important;
  margin: 0 0 24px !important;
  text-align: center !important;
}

body.reference-page.reference-home [aria-labelledby="process-gallery-title"] {
  padding-top: 0 !important;
}

body.reference-page.reference-home .factory-section {
  margin: 0 !important;
}

/* FAQ and legal documents retain their German copy but use the reference's
   edge-to-edge article width and compact vertical rhythm. */
body.reference-page.reference-faq .page-hero {
  padding: 20px 0 4px !important;
}

body.reference-page.reference-faq main > .page-hero .container,
body.reference-page.reference-faq main > .section .container {
  width: calc(100% - 20px) !important;
  max-width: none !important;
}

body.reference-page.reference-faq .page-hero h1 {
  margin-bottom: 4px !important;
}

body.reference-page.reference-faq main > .section {
  padding-top: 6px !important;
}

body.reference-page.reference-faq .faq-topic + .faq-topic {
  margin-top: 22px !important;
}

body.reference-page.reference-exhibitions .page-hero {
  padding: 20px 0 14px !important;
}

body.reference-page.reference-exhibitions .page-hero-grid {
  display: block !important;
}

body.reference-page.reference-exhibitions .page-hero-media {
  display: none !important;
}

body.reference-page.reference-exhibitions .page-hero > .container,
body.reference-page.reference-exhibitions .reference-exhibition-video > .container,
body.reference-page.reference-exhibitions .reference-source-strip > .container,
body.reference-page.reference-exhibitions main > .section > .container {
  width: calc(100% - 20px) !important;
  max-width: none !important;
}

body.reference-page.reference-exhibitions .page-hero h1 {
  margin-bottom: 14px !important;
  font-size: 36px !important;
}

body.reference-page.reference-exhibitions .page-hero .hero-lede {
  max-width: 1200px;
  margin-inline: auto !important;
  font-size: 16px;
  line-height: 1.55;
  margin-block: 0 !important;
}

body.reference-page.reference-exhibitions .reference-exhibition-video {
  padding: 12px 0 18px !important;
}

body.reference-page.reference-inner.reference-exhibitions main > .reference-exhibition-video {
  padding-block: 12px 18px !important;
}

body.reference-page.reference-exhibitions .reference-exhibition-lead-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 710px) minmax(0, 506px) !important;
  gap: 20px !important;
  align-items: start !important;
}

body.reference-page.reference-exhibitions .reference-exhibition-lead-grid .youtube-embed-shell {
  width: 710px !important;
  max-width: 100% !important;
  height: 400px !important;
  aspect-ratio: auto !important;
  background: #000 !important;
}

body.reference-page.reference-exhibitions .reference-exhibition-lead-grid .youtube-embed-shell > img {
  display: none !important;
}

body.reference-page.reference-exhibitions .reference-exhibition-lead-grid .youtube-consent {
  position: absolute;
  inset: 0;
  display: block !important;
  padding: 0 !important;
  background: transparent !important;
}

body.reference-page.reference-exhibitions .reference-exhibition-lead-grid .youtube-consent > :not(.youtube-load-button) {
  display: none !important;
}

body.reference-page.reference-exhibitions .reference-exhibition-lead-grid .youtube-load-button {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  padding: 0;
  border: 0;
  color: transparent;
  background: transparent;
  cursor: pointer;
}

body.reference-page.reference-exhibitions .reference-exhibition-lead-grid > figure {
  position: relative !important;
  width: 506px !important;
  max-width: 100% !important;
  height: 412px !important;
  margin: 0 !important;
  overflow: hidden !important;
}

body.reference-page.reference-exhibitions .reference-exhibition-lead-grid > figure img {
  display: block;
  width: 506px !important;
  max-width: 100% !important;
  height: auto !important;
  object-fit: contain !important;
}

body.reference-page.reference-exhibitions .reference-exhibition-lead-grid > figure figcaption {
  position: absolute !important;
  inset: auto 0 0 !important;
  margin: 0 !important;
  padding: 8px 10px !important;
  background: rgba(255, 255, 255, .9) !important;
  text-align: center !important;
}

body.reference-page.reference-exhibitions .reference-source-strip {
  padding: 0 0 18px !important;
}

body.reference-page.reference-inner.reference-exhibitions main > .reference-source-strip {
  padding-block: 0 18px !important;
}

body.reference-page.reference-exhibitions .reference-exhibition-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 20px !important;
}

body.reference-page.reference-exhibitions .reference-exhibition-grid figure {
  margin: 0 !important;
}

body.reference-page.reference-exhibitions .reference-exhibition-grid img {
  display: block;
  width: 100% !important;
  height: auto !important;
  object-fit: contain !important;
}

body.reference-page.reference-exhibitions .reference-exhibition-grid figcaption {
  display: none !important;
}

body.reference-page.reference-exhibitions .meeting-prep-list li {
  padding-block: 0 !important;
}

@media (max-width: 760px) {
  body.reference-page:is(.reference-design, .reference-sample, .reference-low-moq) .page-hero > .container,
  body.reference-page:is(.reference-design, .reference-sample, .reference-low-moq) main > section > .container,
  body.reference-page.reference-quality .page-hero > .container,
  body.reference-page.reference-quality .reference-quality-article > .container {
    width: calc(100% - 32px) !important;
  }

  body.reference-page.reference-inner:is(.reference-design, .reference-sample, .reference-low-moq) #main > .page-hero h1 {
    margin-bottom: 34px !important;
    font-size: 30px !important;
    line-height: 1.3 !important;
  }

  body.reference-page:is(.reference-design, .reference-sample, .reference-low-moq) :is(.reference-design-article, .reference-sample-article, .reference-low-article) h2,
  body.reference-page.reference-quality .reference-quality-article h2 {
    font-size: 25px !important;
  }

  body.reference-page:is(.reference-design, .reference-sample, .reference-low-moq) :is(.reference-design-article, .reference-sample-article, .reference-low-article) h3,
  body.reference-page.reference-quality .reference-quality-article h3 {
    font-size: 21px !important;
  }

  body.reference-page.reference-quality .page-hero {
    padding: 26px 0 18px !important;
  }

  body.reference-page.reference-quality .page-hero h1 {
    font-size: 30px !important;
  }

  body.reference-page.reference-quality .quality-cert-grid {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 22px !important;
  }

  body.reference-page.reference-home .home-market-fit {
    grid-column: 1 !important;
    grid-row: 2 !important;
    width: calc(100% - 32px) !important;
    margin-inline: auto !important;
    padding-block: 28px !important;
  }

  body.reference-page.reference-home main {
    grid-template-columns: minmax(0, 1fr) !important;
    column-gap: 0 !important;
  }

  body.reference-page.reference-home .home-video-section {
    grid-column: 1 !important;
    grid-row: 3 !important;
    min-height: 230px !important;
  }

  body.reference-page.reference-home [aria-labelledby="factory-gallery-title"] { grid-row: 4 !important; }
  body.reference-page.reference-home [aria-labelledby="certificate-gallery-title"] { grid-row: 5 !important; }
  body.reference-page.reference-home .hero-facts { grid-row: 6 !important; }
  body.reference-page.reference-home .home-services { grid-row: 7 !important; }
  body.reference-page.reference-home [aria-labelledby="partner-reference-title"] { grid-row: 8 !important; }
  body.reference-page.reference-home [aria-labelledby="product-reference-title"] { grid-row: 9 !important; }
  body.reference-page.reference-home .factory-section { grid-row: 10 !important; }
  body.reference-page.reference-home [aria-labelledby="one-stop-title"] { grid-row: 11 !important; }
  body.reference-page.reference-home [aria-labelledby="process-gallery-title"] { grid-row: 12 !important; }
  body.reference-page.reference-home [aria-labelledby="yarn-gallery-title"] { grid-row: 13 !important; }
  body.reference-page.reference-home [aria-labelledby="technique-gallery-title"] { grid-row: 14 !important; }
  body.reference-page.reference-home [aria-labelledby="exhibition-home-title"] { grid-row: 15 !important; }
  body.reference-page.reference-home [aria-labelledby="buyer-visits-title"] { grid-row: 16 !important; }
  body.reference-page.reference-home [aria-labelledby="community-title"] { grid-row: 17 !important; }
  body.reference-page.reference-home .home-faq { grid-row: 18 !important; }

  body.reference-page.reference-home [aria-labelledby="certificate-gallery-title"] .reference-media-grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body.reference-page.reference-home [aria-labelledby="factory-gallery-title"] .reference-horizontal-gallery {
    grid-auto-columns: min(289px, calc(100vw - 32px)) !important;
  }

  body.reference-page.reference-home [aria-labelledby="factory-gallery-title"] .reference-horizontal-gallery figure,
  body.reference-page.reference-home [aria-labelledby="factory-gallery-title"] .reference-horizontal-gallery img {
    width: min(289px, calc(100vw - 32px)) !important;
  }

  body.reference-page:is(.reference-oem, .reference-costs, .reference-materials) [aria-labelledby="service-proof-title"] .reference-alternating-row,
  body.reference-page:is(.reference-costs, .reference-materials) [data-r5-reference-copy="oem-proof"] .reference-alternating-row {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 18px !important;
  }

  body.reference-page:is(.reference-oem, .reference-costs, .reference-materials) [aria-labelledby="service-proof-title"] .reference-alternating-row > :is(img, div),
  body.reference-page:is(.reference-costs, .reference-materials) [data-r5-reference-copy="oem-proof"] .reference-alternating-row > :is(img, div) {
    grid-column: 1 !important;
  }

  body.reference-page.reference-inner.reference-process #main > .page-hero,
  body.reference-page.reference-process main > #ablauf {
    padding-top: 32px !important;
  }

  body.reference-page.reference-process #ablauf .stage {
    min-height: 0 !important;
  }

  body.reference-page.reference-exhibitions .reference-exhibition-lead-grid,
  body.reference-page.reference-exhibitions .reference-exhibition-grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body.reference-page.reference-exhibitions .reference-exhibition-lead-grid .youtube-embed-shell {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 16 / 9 !important;
  }

  body.reference-page.reference-exhibitions .reference-exhibition-lead-grid > figure,
  body.reference-page.reference-exhibitions .reference-exhibition-lead-grid > figure img {
    width: 100% !important;
  }
}

body.reference-page.reference-low-moq main {
  display: flex !important;
  flex-direction: column;
}

body.reference-page.reference-low-moq main > .page-hero { order: 0; }
body.reference-page.reference-low-moq main > #moq { order: 1; }
body.reference-page.reference-low-moq main > #bestellmodell { order: 2; }
body.reference-page.reference-low-moq main > .ink-section { order: 3; }
body.reference-page.reference-low-moq main > section:has(.decision-table) { order: 4; }
body.reference-page.reference-low-moq main > [data-r5-reference-copy="low-moq-cert"] { order: 5; }
body.reference-page.reference-low-moq main > [data-r5-inline-media="low-moq-review"] { order: 6; }
body.reference-page.reference-low-moq main > section:last-of-type { order: 7; }

body.reference-page.reference-low-moq main > .metric-band,
body.reference-page.reference-low-moq main > .section.section-tight:has(.related-grid) {
  display: none !important;
}

body.reference-page.reference-low-moq main > section:not(.page-hero) {
  background: #fff !important;
}

body.reference-page.reference-low-moq main > section > .container {
  width: min(calc(100% - 40px), 1104px) !important;
  max-width: none !important;
  margin-inline: auto !important;
}

body.reference-page.reference-low-moq main > #moq {
  padding-top: 34px !important;
}

body.reference-page.reference-low-moq main > #moq .section-head .eyebrow,
body.reference-page.reference-low-moq main > section:not(.page-hero) .eyebrow {
  display: none !important;
}

body.reference-page.reference-low-moq [data-r5-low-samples="true"] {
  width: min(100%, 1000px);
  margin: 22px auto 26px;
}

body.reference-page.reference-low-moq [data-r5-low-samples="true"] img,
body.reference-page.reference-low-moq [data-r5-inline-media="low-moq-review"] img {
  display: block;
  width: 100% !important;
  height: auto !important;
  object-fit: contain !important;
}

body.reference-page.reference-low-moq [data-r5-low-samples="true"] figcaption,
body.reference-page.reference-low-moq [data-r5-inline-media="low-moq-review"] figcaption {
  display: none !important;
}

body.reference-page.reference-low-moq [data-r5-reference-copy="low-moq-cert"] .reference-media-heading p,
body.reference-page.reference-low-moq [data-r5-reference-copy="low-moq-cert"] .reference-media-heading .eyebrow {
  display: none !important;
}

body.reference-page.reference-low-moq [data-r5-reference-copy="low-moq-cert"] img {
  display: block;
  width: min(100%, 750px) !important;
  max-height: none !important;
  height: auto !important;
  margin: 18px auto 0;
  object-fit: contain !important;
}

body.reference-page.reference-low-moq .spec-grid {
  display: block !important;
}

body.reference-page.reference-low-moq .spec-card {
  display: grid !important;
  grid-template-columns: 42px minmax(0, 1fr) !important;
  gap: 0 16px !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 14px 0 !important;
  border: 0 !important;
  border-bottom: 1px solid #ececec !important;
  background: #fff !important;
  box-shadow: none !important;
}

body.reference-page.reference-low-moq .spec-card .index-no {
  grid-column: 1;
  grid-row: 1 / span 2;
}

body.reference-page.reference-low-moq .spec-card :is(h3, p) {
  grid-column: 2;
  margin: 0 0 5px;
}

body.reference-page.reference-low-moq main > section:not(.page-hero):not([data-r5-low-article="true"]) {
  display: none !important;
}

body.reference-page.reference-low-moq .page-hero {
  padding-bottom: 0 !important;
}

body.reference-page.reference-low-moq .page-hero :is(.breadcrumb, .eyebrow, .hero-lede, .hero-actions) {
  display: none !important;
}

body.reference-page.reference-low-moq .page-hero-grid {
  display: block !important;
}

body.reference-page.reference-low-moq .page-hero-media {
  display: block !important;
  width: min(100%, 1000px) !important;
  margin: 0 auto !important;
}

body.reference-page.reference-low-moq .page-hero-media img {
  display: block;
  width: 100% !important;
  height: auto !important;
  object-fit: contain !important;
}

body.reference-page.reference-low-moq .reference-low-article {
  display: block !important;
  padding: 34px 0 54px !important;
  background: #fff !important;
}

body.reference-page.reference-low-moq .reference-low-article > .container {
  width: min(calc(100% - 40px), 1104px) !important;
  max-width: none !important;
  margin-inline: auto !important;
}

body.reference-page.reference-low-moq .reference-low-article :is(p, li, td, th) {
  font-size: 15px;
  line-height: 1.72;
}

body.reference-page.reference-low-moq .reference-low-article p {
  margin: 0 0 18px;
}

body.reference-page.reference-low-moq .reference-low-article .low-intro {
  margin-bottom: 105px;
}

body.reference-page.reference-low-moq .reference-low-article hr {
  height: 1px;
  margin: 30px 0 31px;
  border: 0;
  background: #d9d9d9;
}

body.reference-page.reference-low-moq .reference-low-article h2 {
  margin: 0 0 20px;
  font-size: 30px !important;
  line-height: 1.3;
}

body.reference-page.reference-low-moq .reference-low-article h3 {
  margin: 21px 0 6px;
  font-size: 21px !important;
  line-height: 1.35;
}

body.reference-page.reference-low-moq .reference-low-article :is(ul, ol) {
  margin: 18px 0 24px;
  padding-left: 24px;
}

body.reference-page.reference-low-moq .reference-low-article img {
  display: block;
  width: min(100%, 1000px) !important;
  height: auto !important;
  margin: 30px auto 34px;
  object-fit: contain !important;
}

body.reference-page.reference-low-moq .reference-low-article img.low-certificate {
  width: min(100%, 750px) !important;
}

body.reference-page.reference-low-moq .reference-low-article .decision-table-wrap {
  margin: 22px 0 30px;
}

body.reference-page.reference-low-moq .reference-low-article .low-product-details {
  padding-bottom: 40px;
}

body.reference-page.reference-low-moq .reference-low-article .low-product-details li {
  margin-bottom: 20px;
}

body.reference-page.reference-low-moq .reference-low-article .low-affects-list {
  padding-bottom: 30px;
}

body.reference-page.reference-low-moq .reference-low-article .low-affects-list li {
  margin-bottom: 18px;
}

body.reference-page.reference-low-moq .reference-low-article .low-quality-list {
  padding-bottom: 2px;
}

body.reference-page.reference-low-moq .reference-low-article .low-quality-list li {
  margin-bottom: 8px;
}

body.reference-page.reference-low-moq .reference-low-article .low-cert-list {
  padding-bottom: 38px;
}

body.reference-page.reference-low-moq .reference-low-article .low-cert-list li {
  margin-bottom: 35px;
}

body.reference-page.reference-low-moq .reference-low-article h3 + p {
  margin-bottom: 48px;
}

/* Custom service uses fixed 589px image-left rows like the reference page. */
body.reference-page:is(.reference-oem, .reference-costs, .reference-materials) [aria-labelledby="service-proof-title"] > .container,
body.reference-page:is(.reference-costs, .reference-materials) [data-r5-reference-copy="oem-proof"] > .container {
  width: min(calc(100% - 20px), 1244px) !important;
  max-width: none !important;
}

body.reference-page:is(.reference-oem, .reference-costs, .reference-materials) [aria-labelledby="service-proof-title"] .reference-alternating-row,
body.reference-page:is(.reference-costs, .reference-materials) [data-r5-reference-copy="oem-proof"] .reference-alternating-row {
  grid-template-columns: minmax(0, 589px) minmax(0, 1fr) !important;
  gap: 34px !important;
}

body.reference-page:is(.reference-oem, .reference-costs, .reference-materials) [aria-labelledby="service-proof-title"] .reference-alternating-row > img,
body.reference-page:is(.reference-costs, .reference-materials) [data-r5-reference-copy="oem-proof"] .reference-alternating-row > img {
  grid-column: 1 !important;
  width: 589px !important;
  max-width: 100% !important;
}

body.reference-page:is(.reference-oem, .reference-costs, .reference-materials) [aria-labelledby="service-proof-title"] .reference-alternating-row > div > p:last-child,
body.reference-page:is(.reference-costs, .reference-materials) [data-r5-reference-copy="oem-proof"] .reference-alternating-row > div > p:last-child {
  grid-column: 2 !important;
}

body.reference-page:is(.reference-oem, .reference-costs, .reference-materials) [aria-labelledby="service-proof-title"] .reference-alternating-row h2,
body.reference-page:is(.reference-costs, .reference-materials) [data-r5-reference-copy="oem-proof"] .reference-alternating-row h2 {
  font-weight: 700 !important;
}

/* Company page: the reference uses one timeline, an 8-person grid, five
   image-left service rows, a 6x2 process grid, four documents and a two-column
   environment gallery. */
body.reference-page.reference-company main > :is(.company-facts, .company-identity, #betriebsprofil, #nachhaltigkeit-besuch) {
  display: none !important;
}

body.reference-page.reference-company .company-story-section > .container > .section-head {
  display: none !important;
}

body.reference-page.reference-company .company-story-section {
  padding: 26px 0 40px !important;
}

body.reference-page.reference-company .company-timeline > li {
  min-height: 220px;
}

body.reference-page.reference-company .team-functions-section {
  padding: 38px 0 44px !important;
}

body.reference-page.reference-company .team-functions-section .section-head {
  margin-bottom: 26px !important;
}

body.reference-page.reference-company .team-functions-section .section-head .eyebrow,
body.reference-page.reference-company .team-functions-section .section-head > p,
body.reference-page.reference-company .team-functions-section .source-status-note,
body.reference-page.reference-company .team-function-grid article > span,
body.reference-page.reference-company .team-function-grid article > .team-member-keyword,
body.reference-page.reference-company .team-function-grid article > p:not(.team-member-name) {
  display: none !important;
}

body.reference-page.reference-company .team-function-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 34px 36px !important;
}

body.reference-page.reference-company .team-function-grid article {
  min-height: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: #fff !important;
  box-shadow: none !important;
}

body.reference-page.reference-company .team-function-grid article img {
  display: block;
  width: 100% !important;
  height: auto !important;
  margin: 0 0 10px;
  object-fit: contain !important;
}

body.reference-page.reference-company .team-member-name {
  display: block !important;
  margin: 0 0 3px;
  font-weight: 700;
}

body.reference-page.reference-company [data-r5-company-service="true"] {
  padding: 40px 0 26px !important;
}

body.reference-page.reference-company [data-r5-company-service="true"] .reference-media-heading {
  margin: 0 0 28px !important;
}

body.reference-page.reference-company [data-r5-company-service="true"] .reference-media-heading :is(.eyebrow, p) {
  display: none !important;
}

body.reference-page.reference-company [data-r5-company-service="true"] .reference-alternating-list {
  display: block !important;
}

body.reference-page.reference-company [data-r5-company-service="true"] .reference-alternating-row {
  display: grid !important;
  grid-template-columns: minmax(0, 589px) minmax(0, 1fr) !important;
  gap: 34px !important;
  align-items: center !important;
  margin: 0 0 60px !important;
  padding: 0 !important;
}

body.reference-page.reference-company [data-r5-company-service="true"] .reference-alternating-row:last-child {
  margin-bottom: 0 !important;
}

body.reference-page.reference-company [data-r5-company-service="true"] .reference-alternating-row > img {
  grid-column: 1 !important;
  width: 589px !important;
  max-width: 100% !important;
  height: auto !important;
  object-fit: contain !important;
}

body.reference-page.reference-company [data-r5-company-service="true"] .reference-alternating-row > div {
  grid-column: 2 !important;
}

body.reference-page.reference-company [data-r5-company-service="true"] .reference-alternating-row > div .eyebrow {
  display: none !important;
}

body.reference-page.reference-company [data-r5-company-service="true"] .reference-alternating-row :is(h2, h3) {
  margin: 0 0 12px !important;
}

body.reference-page.reference-company [aria-labelledby="company-process-title"] {
  padding: 34px 0 38px !important;
}

body.reference-page.reference-company [aria-labelledby="company-process-title"] .reference-media-heading :is(.eyebrow, p),
body.reference-page.reference-company [aria-labelledby="company-certificate-title"] .reference-media-heading {
  display: none !important;
}

body.reference-page.reference-company [aria-labelledby="company-process-title"] .reference-horizontal-gallery {
  display: grid !important;
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  grid-auto-flow: row !important;
  grid-auto-columns: unset !important;
  gap: 16px 10px !important;
  overflow: visible !important;
}

body.reference-page.reference-company [aria-labelledby="company-process-title"] .reference-horizontal-gallery figure {
  min-width: 0 !important;
  margin: 0 !important;
}

body.reference-page.reference-company [aria-labelledby="company-process-title"] .reference-horizontal-gallery img {
  display: block;
  width: 100% !important;
  height: auto !important;
  object-fit: contain !important;
}

body.reference-page.reference-company .compliance-section {
  padding: 34px 0 22px !important;
}

body.reference-page.reference-company .compliance-section .compliance-grid {
  display: block !important;
}

body.reference-page.reference-company .compliance-section .document-check-card,
body.reference-page.reference-company .compliance-section .eyebrow {
  display: none !important;
}

body.reference-page.reference-company [aria-labelledby="company-certificate-title"] {
  padding: 0 0 38px !important;
}

body.reference-page.reference-company [aria-labelledby="company-certificate-title"] .reference-media-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 8px !important;
}

body.reference-page.reference-company [aria-labelledby="company-certificate-title"] img {
  display: block;
  width: 100% !important;
  height: auto !important;
  object-fit: contain !important;
}

body.reference-page.reference-company [aria-labelledby="company-environment-title"] {
  padding: 34px 0 40px !important;
}

body.reference-page.reference-company [aria-labelledby="company-environment-title"] .reference-media-heading :is(.eyebrow, p) {
  display: none !important;
}

body.reference-page.reference-company [aria-labelledby="company-environment-title"] .reference-media-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 20px !important;
}

body.reference-page.reference-company [aria-labelledby="company-environment-title"] .reference-media-grid figure {
  margin: 0 !important;
}

body.reference-page.reference-company [aria-labelledby="company-environment-title"] .reference-media-grid img {
  display: block;
  width: 100% !important;
  height: auto !important;
  object-fit: contain !important;
}

@media (max-width: 760px) {
  body.reference-page.reference-company .team-function-grid,
  body.reference-page.reference-company [aria-labelledby="company-process-title"] .reference-horizontal-gallery,
  body.reference-page.reference-company [aria-labelledby="company-certificate-title"] .reference-media-grid,
  body.reference-page.reference-company [aria-labelledby="company-environment-title"] .reference-media-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body.reference-page.reference-company [data-r5-company-service="true"] .reference-alternating-row {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 20px !important;
  }

  body.reference-page.reference-company [data-r5-company-service="true"] .reference-alternating-row > :is(img, div) {
    grid-column: 1 !important;
  }
}

@media (max-width: 560px) {
  body.reference-page.reference-company .team-function-grid {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 28px !important;
  }

  body.reference-page.reference-company .team-function-grid article,
  body.reference-page.reference-company .team-function-grid article > strong {
    min-width: 0 !important;
    overflow-wrap: anywhere;
    hyphens: auto;
  }
}

/* Production article: intro/table first, then one process image, eight plain
   steps, followed by the two remaining full-width reference images. */
body.reference-page.reference-process .page-hero {
  padding: 50px 0 20px !important;
}

body.reference-page.reference-inner.reference-process #main > .page-hero {
  padding: 0 0 20px !important;
}

body.reference-page.reference-process .page-hero > .container,
body.reference-page.reference-process main > section > .container {
  width: min(calc(100% - 40px), 1104px) !important;
  max-width: none !important;
  margin-inline: auto !important;
}

body.reference-page.reference-process .page-hero-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  gap: 0 !important;
}

body.reference-page.reference-process .page-hero-grid > div:first-child {
  display: contents !important;
}

body.reference-page.reference-process .page-hero :is(.breadcrumb, .eyebrow, .hero-actions, .guide-meta),
body.reference-page.reference-process .page-hero .page-hero-media {
  display: none !important;
}

body.reference-page.reference-inner.reference-process #main > .page-hero .page-hero-media {
  display: none !important;
}

body.reference-page.reference-process .page-hero h1 {
  order: 1;
  margin: 0 0 22px !important;
  font-size: 36px !important;
  line-height: 1.35 !important;
  font-weight: 700 !important;
  text-align: center !important;
}

body.reference-page.reference-process .page-hero .hero-lede {
  order: 2;
  margin: 0 0 18px !important;
  font-size: 15px;
  line-height: 1.72;
}

body.reference-page.reference-process .production-intro-extra {
  order: 2;
}

body.reference-page.reference-process .production-intro-extra p {
  margin: 0 0 18px !important;
  font-size: 15px;
  line-height: 1.72;
}

body.reference-page.reference-process .production-summary-table {
  order: 3;
  margin: 0 !important;
}

body.reference-page.reference-process main > #ablauf {
  padding: 94px 0 38px !important;
}

body.reference-page.reference-process #ablauf > .container,
body.reference-page.reference-process #ablauf .section-head,
body.reference-page.reference-process #ablauf .section-head > div {
  display: flex !important;
  flex-direction: column !important;
}

body.reference-page.reference-process #ablauf .section-head,
body.reference-page.reference-process #ablauf .section-head > div {
  display: contents !important;
}

body.reference-page.reference-process #ablauf .section-head .eyebrow {
  display: none !important;
}

body.reference-page.reference-process #ablauf h2 {
  order: 1;
  margin: 0 0 57px !important;
}

body.reference-page.reference-process #ablauf .reference-inline-figure {
  order: 2;
  width: min(100%, 1000px) !important;
  margin: 0 auto 22px !important;
}

body.reference-page.reference-process #ablauf .section-head > p {
  display: none !important;
}

body.reference-page.reference-process #ablauf .stage-list {
  order: 4;
  display: block !important;
  margin-top: 10px;
}

body.reference-page.reference-process #ablauf .stage {
  display: grid !important;
  grid-template-columns: 44px minmax(0, 1fr) !important;
  gap: 18px !important;
  min-height: 251px !important;
  margin: 0 !important;
  padding: 18px 0 !important;
  border: 0 !important;
  border-bottom: 1px solid #ececec !important;
  background: #fff !important;
  box-shadow: none !important;
}

body.reference-page.reference-process #main #ablauf .stage > .index-no {
  grid-column: 1 !important;
  grid-row: 1 !important;
}

body.reference-page.reference-process #main #ablauf .stage > div {
  grid-column: 2 !important;
  grid-row: 1 !important;
}

body.reference-page.reference-process #ablauf .stage h3 {
  margin: 0 0 7px;
}

body.reference-page.reference-process #ablauf .stage p {
  margin: 0;
}

body.reference-page.reference-process main > .production-photo-process,
body.reference-page.reference-process main > .production-video-section {
  display: none !important;
}

body.reference-page.reference-process .production-reference-flow {
  display: block !important;
  padding: 0 0 44px !important;
  background: #fff !important;
}

body.reference-page.reference-process .production-reference-flow hr {
  height: 1px;
  margin: 24px 0 18px;
  border: 0;
  background: #e7e7e7;
}

body.reference-page.reference-process .production-reference-flow h2 {
  margin: 0 0 14px;
}

body.reference-page.reference-process .production-reference-flow h3 {
  margin: 18px 0 6px;
}

body.reference-page.reference-process .production-reference-flow :is(p, li) {
  font-size: 15px;
  line-height: 1.72;
}

body.reference-page.reference-process .production-reference-flow img {
  display: block;
  width: min(100%, 1000px) !important;
  height: auto !important;
  margin: 18px auto 20px;
  object-fit: contain !important;
}

body.reference-page.reference-process .production-reference-flow :is(ul, ol) {
  margin: 0 0 20px;
  padding-left: 24px;
}

body.reference-page.reference-process main > :is(.ink-section, .control-grid, .section-tight:not([data-r5-production-split])) {
  display: none !important;
}

body.reference-page.reference-process main > section:has(> .container.control-grid) {
  display: none !important;
}

body.reference-page.reference-process main > .ink-section,
body.reference-page.reference-process main > section:has(> .container.control-grid),
body.reference-page.reference-process main > .section-tight:last-of-type {
  display: block !important;
}

body.reference-page.reference-process main > .ink-section,
body.reference-page.reference-process main > section:has(> .container.control-grid) {
  padding: 34px 0 !important;
  background: #fff !important;
}

body.reference-page.reference-process main > .ink-section .evidence-split,
body.reference-page.reference-process main > section:has(> .container.control-grid) .control-grid {
  display: block !important;
}

body.reference-page.reference-process main > .ink-section :is(.eyebrow, figure),
body.reference-page.reference-process main > section:has(> .container.control-grid) .eyebrow {
  display: none !important;
}

body.reference-page.reference-process main > section:has(> .container.control-grid) .control-list {
  margin-top: 22px;
}

body.reference-page.reference-process main > .ink-section,
body.reference-page.reference-process main > section:has(> .container.control-grid),
body.reference-page.reference-process main > .section-tight:last-of-type {
  display: none !important;
}

body.reference-page.reference-process .production-followup {
  display: block !important;
}

body.reference-page.reference-process .production-reference-flow h3 + p {
  margin-bottom: 48px !important;
}

@media (max-width: 760px) {
  body.reference-page.reference-process .page-hero,
  body.reference-page.reference-process main > #ablauf {
    padding-top: 32px !important;
  }

  body.reference-page.reference-process .page-hero > .container,
  body.reference-page.reference-process main > section > .container {
    width: min(calc(100% - 32px), 1104px) !important;
  }
}

/* Contact follows the reference image-left/contact-right composition and
   continues as one full-width message form. */
body.reference-page.reference-contact main {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background: #fff !important;
}

body.reference-page.reference-contact .page-hero {
  padding: 0 0 18px !important;
}

body.reference-page.reference-contact .page-hero > .container,
body.reference-page.reference-contact main > .section > .container {
  width: calc(100% - 40px) !important;
  max-width: none !important;
  margin-inline: auto !important;
}

body.reference-page.reference-contact .page-hero-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 592px) minmax(0, 1fr) !important;
  gap: 38px !important;
  align-items: start !important;
}

body.reference-page.reference-contact .page-hero-grid > .page-hero-media {
  grid-column: 1;
  grid-row: 1;
  width: 592px !important;
  max-width: 100% !important;
  margin: 0 !important;
}

body.reference-page.reference-contact .page-hero-grid > .page-hero-media img {
  display: block;
  width: 592px !important;
  max-width: 100% !important;
  height: auto !important;
  object-fit: contain !important;
}

body.reference-page.reference-contact .page-hero-grid > div:first-child {
  grid-column: 2;
  grid-row: 1;
  padding-top: 88px !important;
}

body.reference-page.reference-contact .page-hero :is(.breadcrumb, .eyebrow) {
  display: none !important;
}

body.reference-page.reference-contact .page-hero h1 {
  margin: 0 0 20px !important;
  font-size: 25px !important;
  line-height: 1.35 !important;
  font-weight: 700 !important;
}

body.reference-page.reference-contact .page-hero .hero-lede {
  margin: 0 0 18px !important;
  font-size: 15px;
  line-height: 1.65;
}

body.reference-page.reference-contact .contact-reference-details p {
  margin: 0 0 7px;
  font-size: 15px;
  line-height: 1.5;
}

body.reference-page.reference-contact main > .section {
  padding: 0 0 46px !important;
}

body.reference-page.reference-contact .inquiry-layout {
  display: block !important;
}

body.reference-page.reference-contact .inquiry-aside,
body.reference-page.reference-contact .form-template-note,
body.reference-page.reference-contact .inquiry-form .form-section-title,
body.reference-page.reference-contact .inquiry-form .form-required-note {
  display: none !important;
}

body.reference-page.reference-contact .contact-form-intro {
  display: block;
  margin: 0 0 24px;
}

body.reference-page.reference-contact .contact-form-intro p {
  margin: 0 0 16px;
  font-size: 15px;
  line-height: 1.7;
}

body.reference-page.reference-contact .inquiry-form {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  box-shadow: none !important;
}

body.reference-page.reference-contact .inquiry-form .form-grid {
  grid-template-columns: minmax(0, 1fr) !important;
  gap: 16px !important;
}

body.reference-page.reference-contact .inquiry-form .field {
  grid-column: 1 !important;
}

@media (max-width: 760px) {
  body.reference-page.reference-contact .page-hero > .container,
  body.reference-page.reference-contact main > .section > .container {
    width: calc(100% - 32px) !important;
  }

  body.reference-page.reference-contact .page-hero-grid {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 24px !important;
  }

  body.reference-page.reference-contact .page-hero-grid > .page-hero-media,
  body.reference-page.reference-contact .page-hero-grid > div:first-child {
    grid-column: 1;
  }

  body.reference-page.reference-contact .page-hero-grid > .page-hero-media {
    grid-row: 1;
  }

  body.reference-page.reference-contact .page-hero-grid > div:first-child {
    grid-row: 2;
    padding-top: 0 !important;
  }
}

/* Final mobile acceptance overrides.  Desktop parity rules above intentionally
   use explicit grid columns; repeat the mobile contract after them so those
   desktop declarations cannot create implicit off-canvas columns. */
@media (max-width: 760px) {
  body.reference-page :is(h1, h2, h3, h4) {
    hyphens: manual !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
  }

  body.reference-page.reference-home #main {
    grid-template-columns: minmax(0, 1fr) !important;
    column-gap: 0 !important;
  }

  body.reference-page.reference-home #main > .home-banner {
    grid-column: 1 !important;
    grid-row: 1 !important;
    width: 100% !important;
  }

  body.reference-page.reference-home #main > .home-market-fit {
    grid-column: 1 !important;
    grid-row: 2 !important;
  }

  body.reference-page.reference-home #main > .home-video-section {
    grid-column: 1 !important;
    grid-row: 3 !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    height: auto !important;
    padding: 0 !important;
  }

  body.reference-page.reference-home #main > .home-video-section .home-video-player {
    grid-column: 1 !important;
    grid-row: auto !important;
    width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body.reference-page.reference-home #main > .home-video-section .youtube-embed-shell {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    height: auto !important;
    aspect-ratio: 16 / 9 !important;
  }

  body.reference-page:is(.reference-oem, .reference-costs, .reference-materials)
    :is([aria-labelledby="service-proof-title"], [data-r5-reference-copy="oem-proof"])
    .reference-alternating-list {
    display: block !important;
    min-width: 0 !important;
  }

  body.reference-page:is(.reference-oem, .reference-costs, .reference-materials)
    :is([aria-labelledby="service-proof-title"], [data-r5-reference-copy="oem-proof"])
    .reference-alternating-row {
    grid-template-columns: minmax(0, 1fr) !important;
    grid-auto-columns: minmax(0, 1fr) !important;
    gap: 18px !important;
    min-width: 0 !important;
  }

  body.reference-page:is(.reference-oem, .reference-costs, .reference-materials)
    :is([aria-labelledby="service-proof-title"], [data-r5-reference-copy="oem-proof"])
    .reference-alternating-row > img,
  body.reference-page:is(.reference-oem, .reference-costs, .reference-materials)
    :is([aria-labelledby="service-proof-title"], [data-r5-reference-copy="oem-proof"])
    .reference-alternating-row:nth-child(even) > img,
  body.reference-page:is(.reference-oem, .reference-costs, .reference-materials)
    :is([aria-labelledby="service-proof-title"], [data-r5-reference-copy="oem-proof"])
    .reference-alternating-row > div > p:last-child {
    grid-column: 1 !important;
    grid-row: auto !important;
    min-width: 0 !important;
  }
}
