﻿:root {
  /* Material table */
  --ilas-material-font-size: 8px;
  --ilas-material-line-height: 1.15;
  --ilas-material-spacing-top: 9.3px;
  --ilas-material-cell-padding-y: 1.3px;
  --ilas-material-cell-padding-x: 4px;

  /* Product description */
  --ilas-description-font-size: 10px;
  --ilas-description-line-height: 1.38;
  --ilas-description-paragraph-spacing: 6.7px;
  --ilas-description-spacing-top: 9.3px;
  --ilas-description-spacing-bottom: 12px;

  /* Fallback paragraph block */
  --ilas-paragraph-font-size: 10px;
  --ilas-paragraph-line-height: 1.38;
  --ilas-paragraph-spacing-top: 9.3px;
  --ilas-paragraph-spacing-bottom: 12px;

  /* Pictograms */
  --ilas-pictogram-size: 20px;
  --ilas-pictogram-gap: 4px;
  --ilas-pictogram-spacing-bottom: 9.3px;

  /* Parts table */
  --ilas-parts-spacing-top: 9.3px;
  --ilas-parts-font-size: 7.2px;
  --ilas-parts-cell-font-size: 9px;
  --ilas-parts-header-font-size: 6.5px;
  --ilas-parts-cell-padding-y: 1.3px;
  --ilas-parts-cell-padding-x: 1.5px;

  /* Footer */
  --ilas-footer-font-size: 8px;
  --ilas-footer-logo-height: 26px;      /* logo height */
  --ilas-footer-divider-gap: 7px;       /* divider to content */
  --ilas-footer-drop: 14px;             /* shift toward page bottom */
  --ilas-footer-divider-color: #000;
}

.sheet-u-p-absolute {
  position: absolute;
}

.sheet-product-logo.dw-mod {
  height: 49px;
}

.sheet-header-title.dw-mod {
  text-transform: uppercase;
}

.sheet-product-title.dw-mod {
  margin-top: 0;
  text-transform: uppercase;
  border-bottom: 0 solid #535353;
  width: 100%;
  font-weight: 400;
  font-size: 18.7px;
  line-height: 1.15;
  height: auto;
}

.sheet-row__col--10 {
  width: 65%;
}

/* Material table */
.sheet-product-fields.dw-mod {
  margin-top: var(--ilas-material-spacing-top) !important;
  margin-bottom: 0 !important;
  width: 100% !important;
  table-layout: auto !important;
  border-collapse: collapse !important;
}

.sheet-product-fields__header,
.sheet-product-fields__header.dw-mod,
.sheet-product-fields__header.dw-mod td {
  display: none !important;
}

.sheet-product-fields__row.dw-mod td {
  padding: var(--ilas-material-cell-padding-y) var(--ilas-material-cell-padding-x) !important;
  font-size: var(--ilas-material-font-size) !important;
  line-height: var(--ilas-material-line-height) !important;
  vertical-align: top !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
}

.sheet-product-fields__row.dw-mod td:first-child {
  width: 1% !important;
  white-space: nowrap !important;
  font-weight: 700 !important;
  padding-right: 5.3px !important;
}

.sheet-product-fields__row.dw-mod td:last-child {
  width: auto !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
  font-weight: 400 !important;
}

/* Pictograms */
.sheet-product-section__Symbols {
  margin-bottom: var(--ilas-pictogram-spacing-bottom);
  width: 100%;
  display: grid;
  grid-template-columns: repeat(6, var(--ilas-pictogram-size));
  grid-auto-rows: var(--ilas-pictogram-size);
  gap: var(--ilas-pictogram-gap);
  height: auto;
  align-content: start;
}

.sheet-product-section__Symbols img {
  width: var(--ilas-pictogram-size);
  height: var(--ilas-pictogram-size);
  object-fit: contain;
  display: block;
}

/* Product description, actual publication block */
div[data-item-type="publication_product_description"] .dwp-paragraph-text,
div[data-item-type="publication_product_description"] .dwp-paragraph-text *,
div[data-item-type="publication_product_description"] .dwp-flow,
div[data-item-type="publication_product_description"] .dwp-flow * {
  --dwp-font-size: var(--ilas-description-font-size) !important;
  font-size: var(--ilas-description-font-size) !important;
  line-height: var(--ilas-description-line-height) !important;
}

div[data-item-type="publication_product_description"] .dwp-paragraph-text,
div[data-item-type="publication_product_description"] .dwp-flow {
  margin-top: var(--ilas-description-spacing-top) !important;
  margin-bottom: var(--ilas-description-spacing-bottom) !important;
}

div[data-item-type="publication_product_description"] .dwp-paragraph-text p,
div[data-item-type="publication_product_description"] .dwp-flow p {
  margin-top: 0 !important;
  margin-bottom: var(--ilas-description-paragraph-spacing) !important;
}

div[data-item-type="publication_product_description"] .dwp-paragraph-text p:last-child,
div[data-item-type="publication_product_description"] .dwp-flow p:last-child {
  margin-bottom: 0 !important;
}

div[data-item-type="publication_product_description"] .dwp-paragraph-text strong,
div[data-item-type="publication_product_description"] .dwp-paragraph-text b,
div[data-item-type="publication_product_description"] .dwp-flow strong,
div[data-item-type="publication_product_description"] .dwp-flow b {
  --dwp-font-size: var(--ilas-description-font-size) !important;
  font-size: var(--ilas-description-font-size) !important;
  line-height: var(--ilas-description-line-height) !important;
  font-weight: 700 !important;
}

/* Fallback paragraph block */
.sheet-product-long-description.dw-mod {
  margin-top: var(--ilas-paragraph-spacing-top) !important;
  margin-bottom: var(--ilas-paragraph-spacing-bottom) !important;
  padding-top: 0 !important;
  font-weight: 400 !important;
}

.sheet-product-long-description.dw-mod,
.sheet-product-long-description.dw-mod *,
.sheet-product-long-description.dw-mod .dwp-paragraph-text,
.sheet-product-long-description.dw-mod .dwp-paragraph-text *,
.sheet-product-long-description.dw-mod p,
.sheet-product-long-description.dw-mod span,
.sheet-product-long-description.dw-mod div,
.sheet-product-long-description.dw-mod li,
.sheet-product-long-description.dw-mod ul,
.sheet-product-long-description.dw-mod ol,
.sheet-product-long-description.dw-mod a,
.sheet-product-long-description.dw-mod strong,
.sheet-product-long-description.dw-mod em,
.sheet-product-long-description.dw-mod b {
  --dwp-font-size: var(--ilas-paragraph-font-size) !important;
  font-size: var(--ilas-paragraph-font-size) !important;
  line-height: var(--ilas-paragraph-line-height) !important;
}

.sheet-product-long-description.dw-mod p,
.sheet-product-long-description.dw-mod li {
  margin-top: 0 !important;
  margin-bottom: 6.7px !important;
}

.sheet-product-long-description.dw-mod p:last-child,
.sheet-product-long-description.dw-mod li:last-child {
  margin-bottom: 0 !important;
}

.sheet-product--imagepadding {
  height: 10px;
}

/* Parts table wrapper */
.sheet-product-propertyTable-wrapper {
  margin-top: var(--ilas-parts-spacing-top);
  min-height: 0;
  height: auto;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  position: relative;
  overflow: visible;
}

.sheet-product-propertyTable-container {
  position: static;
  bottom: auto;
  width: auto;
  max-width: 100%;
  overflow: visible;
}

/* Header layout */
.sheet-header-left.dw-mod {
  width: 10%;
}

.sheet-header-center.dw-mod {
  width: 80%;
}

.sheet-header-right.dw-mod {
  width: 10%;
}

.sheet-table-fill {
  background-color: #C3C800;
  height: 800px;
}

/* Parts table */
.sheet-product-partTitle {
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 0;
  margin-top: 0;
}

.sheet-product-partSubTitle {
  font-size: 8px;
  font-weight: 700;
  margin-bottom: 9.3px;
}

.sheet-product-propertytable {
  border-collapse: separate;
  border-spacing: 0;
  width: auto;
  max-width: 100%;
  align-self: flex-start;
  bottom: 0;
  margin-top: 0;
  font-size: var(--ilas-parts-font-size);
  table-layout: auto;
  border: 0 solid #000;
  white-space: nowrap;
}

.sheet-product-propertytable > tbody > tr > td {
  width: auto;
  vertical-align: top;
  padding: var(--ilas-parts-cell-padding-y) var(--ilas-parts-cell-padding-x);
  background-color: transparent;
  border: none;
  min-width: 0;
  white-space: nowrap;
}

/* 1px divider between main columns */
.sheet-product-propertytable > tbody > tr > td + td {
  border-left: 1px solid #000;
}

.sheet-product-propertytable > tbody > tr > td:first-child {
  padding-left: 1.5px;
}

.sheet-product-propertytable > tbody > tr > td:last-child {
  padding-right: 1.5px;
}

.sheet-product-titleDesc {
  height: 305px;
}

table.sheet-product-fields-column1,
table.sheet-product-fields-column0 {
  border-collapse: collapse;
  width: auto;
  table-layout: auto;
}

table.sheet-product-fields-column1 tr,
table.sheet-product-fields-column0 tr {
  border-bottom: none;
}

table.sheet-product-fields-column1 tr td,
table.sheet-product-fields-column0 tr td {
  padding: 1.3px 1.5px;
  vertical-align: top;
  font-size: var(--ilas-parts-cell-font-size);
  line-height: 1.08;
  white-space: nowrap;
  word-break: normal;
  overflow-wrap: normal;
  hyphens: none;
  border: none;
  background-color: transparent;
  color: #000;
}

table.sheet-product-fields-column1 thead tr,
table.sheet-product-fields-column0 thead tr {
  background-color: transparent;
  color: #000;
  height: auto;
}

table.sheet-product-fields-column1 thead td,
table.sheet-product-fields-column0 thead td {
  border: none;
  background-color: transparent;
  color: #000;
  font-weight: 700;
  padding: 0 1.5px 2.7px 1.5px;
  vertical-align: bottom;
  white-space: nowrap;
  word-break: normal;
  overflow-wrap: normal;
  hyphens: none;
}

.ilas-table-header {
  padding: 0 1.5px 2.7px 1.5px;
  font-size: var(--ilas-parts-header-font-size);
  line-height: 1.08;
  white-space: nowrap;
  word-break: normal;
  overflow-wrap: normal;
  hyphens: none;
  background-color: transparent;
  color: #000;
  font-weight: 700;
}

table.sheet-product-fields-column1 td:first-child,
table.sheet-product-fields-column0 td:first-child {
  white-space: nowrap;
  width: 1%;
  padding-right: 2.5px;
  vertical-align: top;
}

table.sheet-product-fields-column1 td:last-child,
table.sheet-product-fields-column0 td:last-child {
  width: auto;
  white-space: nowrap;
  word-break: normal;
  overflow-wrap: normal;
  hyphens: none;
}

.sheet-product-propertytable-column-cell1 {
  background-color: transparent;
}

/* Footer */
.sheet-footer-container {
  display: grid !important;
  grid-template-columns: minmax(160px, 1fr) auto minmax(190px, 1fr);
  width: 100%;
  max-width: 100%;
  gap: 10.7px;
  overflow: visible !important;

  /* band collapsed to content height so the divider sits just
     above the text rather than 48px above it */
  min-height: 0 !important;
  margin-top: 0 !important;
  padding-top: var(--ilas-footer-divider-gap) !important;
  border-top: 1px solid var(--ilas-footer-divider-color) !important;

  /* all three cells share a centreline */
  align-items: center !important;

  /* shift down without affecting the flow above */
  position: relative;
  top: var(--ilas-footer-drop);
}

.sheet-footer-left,
.sheet-footer-center,
.sheet-footer-right {
  min-width: 0;
  font-size: var(--ilas-footer-font-size) !important;
  line-height: 1 !important;
  white-space: nowrap;
  overflow: visible !important;
  align-self: center !important;
  min-height: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.sheet-footer-left {
  text-align: left;
  justify-self: start;
}

.sheet-footer-center {
  text-align: center;
  justify-self: center;
}

.sheet-footer-right {
  text-align: right;
  justify-self: end;
  min-width: 186.7px;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  overflow: visible !important;
}

.sheet-footr-printDate,
.sheet-footer-printDate {
  display: inline-block;
  margin: 0;
  font-size: var(--ilas-footer-font-size) !important;
  line-height: 1 !important;
  color: #b7bcc1;
  white-space: nowrap;
}

.sheet-footer-indexCode {
  display: inline-block;
  margin: 0;
  font-size: var(--ilas-footer-font-size) !important;
  line-height: 1 !important;
  white-space: nowrap;
}

/* Kill any old pseudo-logo/hide rules */
.sheet-footer-container::after {
  content: none !important;
  display: none !important;
}

.sheet-footer-logo,
.sheet-footer-right img.sheet-footer-logo,
.sheet-footer-right .sheet-footer-logo {
  display: block !important;
  width: auto !important;
  height: var(--ilas-footer-logo-height) !important;
  max-height: var(--ilas-footer-logo-height) !important;
  max-width: 173.3px !important;
  object-fit: contain !important;
  opacity: 1 !important;
  visibility: visible !important;
  align-self: center !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  vertical-align: middle !important;
}

/* Family table */
.sheet-familytable-header {
    /* was #000 with white text; the template emits <th> cells whose colour stayed dark,
       so the row printed as a solid black bar */
    background-color: transparent;
    color: #000;
}

.sheet-familytable-header td,
.sheet-familytable-header th {
    padding: 2.7px 1.5px;
    font-size: 9px;
    font-weight: 700;
}

/* The column rules come from .sheet-product-propertytable > tbody > tr > td + td,
   which never reaches the <thead> row - repeat them here so the vertical lines
   run the full height of the table, like the parts tables */
.sheet-familytable-header th + th,
.sheet-familytable-header td + td {
    border-left: 1px solid #000;
}

.sheet-familytable-row td {
    padding: 2.7px;
    font-size: 9px;
}

.sheet-container__content__drawingpage {
  width: 466px;
  margin: 0 auto;
  height: 100%;
  transform: translateY(25%);
}

.sheet-row__col--2 {
  width: 17%;
  float: left;
}

/* Utilities */
.u-text-no-break {
  white-space: nowrap;
}

/* Hard override for DynamicWeb publication paragraph text */
html body.dwp-body.a4-portrait .dwp-main .dwp-paragraph-text,
html body.dwp-body.a4-portrait .dwp-main .dwp-paragraph-text *,
html body.dwp-body.a4-portrait .dwp-main .dwp-flow,
html body.dwp-body.a4-portrait .dwp-main .dwp-flow * {
  --dwp-font-size: 10px !important;
  font-size: 10px !important;
  line-height: 1.38 !important;
}

/* Extra direct paragraph targeting */
html body.dwp-body.a4-portrait .dwp-main .dwp-paragraph-text p,
html body.dwp-body.a4-portrait .dwp-main .dwp-paragraph-text p *,
html body.dwp-body.a4-portrait .dwp-main p {
  --dwp-font-size: 10px !important;
  font-size: 10px !important;
  line-height: 1.38 !important;
}

/* =============================================================
   Parts table — stop it overflowing the page width

   The base rules put white-space:nowrap on every cell, so a long
   description (V-MAX's "Zinc die cast, black texture powder
   coated") forces the table wider than the page and the last
   column is clipped mid-word.

   Codes stay on one line. Descriptions and headers may wrap.
   ============================================================= */

.sheet-product-propertytable {
  width: 100% !important;
  max-width: 100% !important;
}

table.sheet-product-fields-column0,
table.sheet-product-fields-column1 {
  width: 100% !important;
  max-width: 100% !important;
}

table.sheet-product-fields-column0 td:first-child,
table.sheet-product-fields-column1 td:first-child {
  white-space: nowrap !important;
  width: 1% !important;
}

table.sheet-product-fields-column0 td:last-child,
table.sheet-product-fields-column1 td:last-child {
  white-space: normal !important;
  overflow-wrap: break-word !important;
  word-break: normal !important;
  hyphens: none !important;
}

.ilas-table-header,
table.sheet-product-fields-column0 thead td,
table.sheet-product-fields-column1 thead td {
  white-space: normal !important;
  overflow-wrap: break-word !important;
}