.elementor-42680 .elementor-element.elementor-element-6a731e53{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;--padding-top:0px;--padding-bottom:50px;--padding-left:0px;--padding-right:0px;}.elementor-42680 .elementor-element.elementor-element-fdcbe6f{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-42680 .elementor-element.elementor-element-6d39fed{--display:grid;--e-con-grid-template-columns:repeat(2, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;--justify-items:center;--align-items:center;--margin-top:50px;--margin-bottom:60px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-42680 .elementor-element.elementor-element-f0898b2{width:var( --container-widget-width, 100% );max-width:100%;--container-widget-width:100%;--container-widget-flex-grow:0;}.elementor-42680 .elementor-element.elementor-element-f0898b2.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-42680 .elementor-element.elementor-element-f0898b2 img{width:36%;}.elementor-42680 .elementor-element.elementor-element-392e071{--display:flex;}.elementor-42680 .elementor-element.elementor-element-bf21f92{width:var( --container-widget-width, 100% );max-width:100%;--container-widget-width:100%;--container-widget-flex-grow:0;}.elementor-42680 .elementor-element.elementor-element-f51aab8 > .elementor-widget-container{padding:0px 0px 0px 0px;}.elementor-42680 .elementor-element.elementor-element-f51aab8 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:last-child){padding-block-end:calc(10px/2);}.elementor-42680 .elementor-element.elementor-element-f51aab8 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:first-child){margin-block-start:calc(10px/2);}.elementor-42680 .elementor-element.elementor-element-f51aab8 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item{margin-inline:calc(10px/2);}.elementor-42680 .elementor-element.elementor-element-f51aab8 .elementor-icon-list-items.elementor-inline-items{margin-inline:calc(-10px/2);}.elementor-42680 .elementor-element.elementor-element-f51aab8 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after{inset-inline-end:calc(-10px/2);}.elementor-42680 .elementor-element.elementor-element-f51aab8 .elementor-icon-list-icon i{color:var( --e-global-color-be13655 );transition:color 0.3s;}.elementor-42680 .elementor-element.elementor-element-f51aab8 .elementor-icon-list-icon svg{fill:var( --e-global-color-be13655 );transition:fill 0.3s;}.elementor-42680 .elementor-element.elementor-element-f51aab8{--e-icon-list-icon-size:14px;--icon-vertical-offset:0px;}.elementor-42680 .elementor-element.elementor-element-f51aab8 .elementor-icon-list-text{color:var( --e-global-color-text );transition:color 0.3s;}.elementor-42680 .elementor-element.elementor-element-cf4fa35{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--border-radius:20px 20px 20px 20px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:30px;--padding-left:0px;--padding-right:0px;}.elementor-42680 .elementor-element.elementor-element-d15e8d3{width:100%;max-width:100%;text-align:center;}.elementor-42680 .elementor-element.elementor-element-d15e8d3 > .elementor-widget-container{background-color:var( --e-global-color-text );margin:0px 0px 0px 0px;padding:10px 10px 10px 10px;}.elementor-42680 .elementor-element.elementor-element-d15e8d3 .elementor-heading-title{color:var( --e-global-color-f539929 );}.elementor-42680 .elementor-element.elementor-element-2cfd89e > .elementor-widget-container{margin:0px 0px 50px 0px;}.elementor-42680 .elementor-element.elementor-element-c03ccb8{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--border-radius:20px 20px 20px 20px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:30px;--padding-left:0px;--padding-right:0px;}.elementor-42680 .elementor-element.elementor-element-9d240c9{width:100%;max-width:100%;text-align:center;}.elementor-42680 .elementor-element.elementor-element-9d240c9 > .elementor-widget-container{background-color:var( --e-global-color-text );margin:0px 0px 0px 0px;padding:10px 10px 10px 10px;}.elementor-42680 .elementor-element.elementor-element-9d240c9 .elementor-heading-title{color:var( --e-global-color-f539929 );}.elementor-42680 .elementor-element.elementor-element-1d01751{--display:grid;--e-con-grid-template-columns:repeat(2, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--gap:50px 50px;--row-gap:50px;--column-gap:50px;--grid-auto-flow:row;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-42680 .elementor-element.elementor-element-1d01751.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-42680 .elementor-element.elementor-element-9d25323 > .elementor-widget-container{padding:0px 0px 0px 0px;}.elementor-42680 .elementor-element.elementor-element-f895215 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-42680 .elementor-element.elementor-element-f895215{text-align:center;}.elementor-42680 .elementor-element.elementor-element-f895215 .elementor-heading-title{color:var( --e-global-color-text );}.elementor-42680 .elementor-element.elementor-element-32ca4ba > .elementor-widget-container{margin:0% 0% 0% 0%;}.elementor-42680 .elementor-element.elementor-element-036f308{text-align:center;}.elementor-42680 .elementor-element.elementor-element-e535125 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-42680 .elementor-element.elementor-element-e535125{text-align:center;}.elementor-42680 .elementor-element.elementor-element-e535125 .elementor-heading-title{color:var( --e-global-color-text );}.elementor-42680 .elementor-element.elementor-element-6cf91d6 > .elementor-widget-container{margin:0px 0px 30px 0px;padding:0px 0px 0px 0px;}.elementor-42680 .elementor-element.elementor-element-6cf91d6{text-align:center;}.elementor-42680 .elementor-element.elementor-element-6cf91d6 .elementor-heading-title{color:var( --e-global-color-text );}.elementor-42680 .elementor-element.elementor-element-d044309{--display:grid;--e-con-grid-template-columns:repeat(2, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;--margin-top:0px;--margin-bottom:50px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-42680 .elementor-element.elementor-element-16c483d{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--border-radius:20px 20px 20px 20px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:30px;--padding-left:0px;--padding-right:0px;}.elementor-42680 .elementor-element.elementor-element-79fd15b{width:100%;max-width:100%;text-align:center;}.elementor-42680 .elementor-element.elementor-element-79fd15b > .elementor-widget-container{background-color:var( --e-global-color-text );margin:0px 0px 0px 0px;padding:10px 10px 10px 10px;}.elementor-42680 .elementor-element.elementor-element-79fd15b .elementor-heading-title{color:var( --e-global-color-f539929 );}.elementor-42680 .elementor-element.elementor-element-4ebdb51{--display:grid;--e-con-grid-template-columns:repeat(2, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--gap:50px 50px;--row-gap:50px;--column-gap:50px;--grid-auto-flow:row;}.elementor-42680 .elementor-element.elementor-element-977d455 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-42680 .elementor-element.elementor-element-977d455{text-align:center;}.elementor-42680 .elementor-element.elementor-element-977d455 .elementor-heading-title{color:var( --e-global-color-text );}.elementor-42680 .elementor-element.elementor-element-787a02f > .elementor-widget-container{margin:0% 0% -2% 0%;}.elementor-42680 .elementor-element.elementor-element-92f3601{text-align:center;}.elementor-42680 .elementor-element.elementor-element-9e89585 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-42680 .elementor-element.elementor-element-9e89585{text-align:center;}.elementor-42680 .elementor-element.elementor-element-9e89585 .elementor-heading-title{color:var( --e-global-color-text );}.elementor-42680 .elementor-element.elementor-element-73b18a8{text-align:center;}.elementor-42680 .elementor-element.elementor-element-4733fe1 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-42680 .elementor-element.elementor-element-4733fe1{text-align:center;}.elementor-42680 .elementor-element.elementor-element-4733fe1 .elementor-heading-title{color:var( --e-global-color-text );}.elementor-42680 .elementor-element.elementor-element-10b3cb3{--display:grid;--e-con-grid-template-columns:repeat(2, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;--padding-top:0px;--padding-bottom:50px;--padding-left:0px;--padding-right:0px;}.elementor-42680 .elementor-element.elementor-element-262d0a1 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-42680 .elementor-element.elementor-element-262d0a1{text-align:center;}.elementor-42680 .elementor-element.elementor-element-262d0a1 .elementor-heading-title{color:var( --e-global-color-text );}.elementor-42680 .elementor-element.elementor-element-3205e1d{--display:grid;--e-con-grid-template-columns:repeat(2, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-42680 .elementor-element.elementor-element-0214bc5 img{width:50%;}.elementor-42680 .elementor-element.elementor-element-ea026a5.elementor-element{--align-self:center;}.elementor-42680 .elementor-element.elementor-element-d535d0b{--display:flex;}.elementor-42680 .elementor-element.elementor-element-fec27db{text-align:center;}@media(max-width:1200px){.elementor-42680 .elementor-element.elementor-element-6a731e53{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-42680 .elementor-element.elementor-element-6d39fed{--grid-auto-flow:row;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-42680 .elementor-element.elementor-element-f0898b2 img{width:65%;}.elementor-42680 .elementor-element.elementor-element-cf4fa35{--margin-top:10px;--margin-bottom:10px;--margin-left:10px;--margin-right:10px;--padding-top:20px;--padding-bottom:20px;--padding-left:10px;--padding-right:10px;}.elementor-42680 .elementor-element.elementor-element-d15e8d3 .elementor-heading-title{font-size:20px;}.elementor-42680 .elementor-element.elementor-element-2cfd89e > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-42680 .elementor-element.elementor-element-c03ccb8{--padding-top:0px;--padding-bottom:20px;--padding-left:10px;--padding-right:10px;}.elementor-42680 .elementor-element.elementor-element-9d240c9 .elementor-heading-title{font-size:20px;}.elementor-42680 .elementor-element.elementor-element-1d01751{--grid-auto-flow:row;--padding-top:0px;--padding-bottom:50px;--padding-left:0px;--padding-right:0px;}.elementor-42680 .elementor-element.elementor-element-f895215 .elementor-heading-title{font-size:20px;}.elementor-42680 .elementor-element.elementor-element-32ca4ba > .elementor-widget-container{margin:1% 1% 1% 1%;}.elementor-42680 .elementor-element.elementor-element-e535125 .elementor-heading-title{font-size:20px;}.elementor-42680 .elementor-element.elementor-element-6cf91d6 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-42680 .elementor-element.elementor-element-6cf91d6 .elementor-heading-title{font-size:20px;}.elementor-42680 .elementor-element.elementor-element-d044309{--grid-auto-flow:row;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-42680 .elementor-element.elementor-element-16c483d{--margin-top:-6%;--margin-bottom:0%;--margin-left:0%;--margin-right:0%;--padding-top:0px;--padding-bottom:20px;--padding-left:10px;--padding-right:10px;}.elementor-42680 .elementor-element.elementor-element-79fd15b .elementor-heading-title{font-size:20px;}.elementor-42680 .elementor-element.elementor-element-4ebdb51{--grid-auto-flow:row;}.elementor-42680 .elementor-element.elementor-element-977d455 .elementor-heading-title{font-size:20px;}.elementor-42680 .elementor-element.elementor-element-9e89585 .elementor-heading-title{font-size:20px;}.elementor-42680 .elementor-element.elementor-element-4733fe1 .elementor-heading-title{font-size:20px;}.elementor-42680 .elementor-element.elementor-element-10b3cb3{--grid-auto-flow:row;}.elementor-42680 .elementor-element.elementor-element-262d0a1 .elementor-heading-title{font-size:20px;}.elementor-42680 .elementor-element.elementor-element-3205e1d{--grid-auto-flow:row;}}@media(max-width:767px){.elementor-42680 .elementor-element.elementor-element-fdcbe6f{--padding-top:10px;--padding-bottom:10px;--padding-left:10px;--padding-right:10px;}.elementor-42680 .elementor-element.elementor-element-6d39fed{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-42680 .elementor-element.elementor-element-f51aab8 > .elementor-widget-container{padding:20px 0px 30px 0px;}.elementor-42680 .elementor-element.elementor-element-f51aab8{--e-icon-list-icon-align:left;--e-icon-list-icon-margin:0 calc(var(--e-icon-list-icon-size, 1em) * 0.25) 0 0;--icon-vertical-align:flex-start;}.elementor-42680 .elementor-element.elementor-element-cf4fa35{--padding-top:10px;--padding-bottom:10px;--padding-left:10px;--padding-right:10px;}.elementor-42680 .elementor-element.elementor-element-d15e8d3 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-42680 .elementor-element.elementor-element-c03ccb8{--padding-top:10px;--padding-bottom:10px;--padding-left:10px;--padding-right:10px;}.elementor-42680 .elementor-element.elementor-element-9d240c9 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-42680 .elementor-element.elementor-element-1d01751{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-42680 .elementor-element.elementor-element-d044309{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-42680 .elementor-element.elementor-element-4e848b1 > .elementor-widget-container{margin:0% 0% -10% 0%;}.elementor-42680 .elementor-element.elementor-element-d489457 > .elementor-widget-container{margin:0% 0% -10% 0%;}.elementor-42680 .elementor-element.elementor-element-16c483d{--padding-top:10px;--padding-bottom:10px;--padding-left:10px;--padding-right:10px;}.elementor-42680 .elementor-element.elementor-element-79fd15b > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-42680 .elementor-element.elementor-element-4ebdb51{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-42680 .elementor-element.elementor-element-10b3cb3{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-42680 .elementor-element.elementor-element-3205e1d{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}}@media(min-width:768px){.elementor-42680 .elementor-element.elementor-element-6a731e53{--content-width:1260px;}}@media(max-width:1200px) and (min-width:768px){.elementor-42680 .elementor-element.elementor-element-1d01751{--width:733.133px;}}/* Start custom CSS *//* =========================================================
   PSM FASTENERS
   PFH / P-HFH / P-HFHS SELF-CLINCHING STUDS
   MERGED GLOBAL RESPONSIVE CSS

   DESKTOP:
   - Inherits website / Elementor font size

   TABLET + MOBILE:
   - Horizontal scrolling retained
   - Body: 12px
   - Headers: 11px
   - Product code: 12px
   - Same sizing on tablet, mobile and small mobile
   ========================================================= */


/* =========================================================
   GLOBAL WRAPPERS
   ========================================================= */

.psm-table-wrap,
.psm-spec-wrap,
.psm-code-wrap {
    width: 100%;
    max-width: 100%;

    margin: 0 0 24px;

    box-sizing: border-box;

    font-family: inherit !important;
    font-size: inherit !important;
    line-height: inherit !important;
    color: inherit;
}


/* =========================================================
   RESPONSIVE SCROLL
   ========================================================= */

.psm-table-scroll {
    width: 100%;
    max-width: 100%;

    overflow-x: auto;
    overflow-y: hidden;

    -webkit-overflow-scrolling: touch;
    overscroll-behavior-x: contain;
    scrollbar-width: thin;

    box-sizing: border-box;
}


/* =========================================================
   STANDARD TECHNICAL TABLE
   ========================================================= */

.psm-table,
.psm-spec-table {
    width: 100%;
    min-width: 760px;
    max-width: none;

    margin: 0;

    border-collapse: collapse;
    border-spacing: 0;

    table-layout: auto;

    background: #ffffff;
    color: #111111;

    font-family: inherit !important;
    font-size: inherit !important;
    line-height: inherit !important;
}


/* =========================================================
   TABLE WIDTH VARIANTS
   ========================================================= */

.psm-table--anvil {
    min-width: 580px;
}


.psm-table--dimensions {
    min-width: 1050px;
}


.psm-table--length {
    min-width: 1120px;
}


.psm-table--performance {
    min-width: 1200px;
}


.psm-table--tooling {
    min-width: 1000px;
}


/* =========================================================
   CELLS
   ========================================================= */

.psm-table th,
.psm-table td,
.psm-spec-table th,
.psm-spec-table td {
    border: 1px solid #1b1b1b;

    padding: 8px 9px;

    text-align: center;
    vertical-align: middle;

    box-sizing: border-box;

    font-family: inherit !important;
    font-size: inherit !important;
    line-height: 1.3;
}


/* =========================================================
   HEADERS
   ========================================================= */

.psm-table thead th,
.psm-spec-table thead th {
    background: #129eea;
    color: #ffffff;

    font-weight: 700;

    text-align: center;
    vertical-align: middle;

    white-space: normal;

    word-break: normal;
    overflow-wrap: normal;
}


/* =========================================================
   BODY
   ========================================================= */

.psm-table tbody td,
.psm-spec-table tbody td {
    background: #ffffff;

    font-weight: 600;

    white-space: nowrap;
}


/* Standard alternating rows */

.psm-table:not(.psm-table--paired) tbody tr:nth-child(even) td,
.psm-spec-table:not(.psm-table--paired) tbody tr:nth-child(even) td {
    background: #e3f0f8;
}


/* Performance paired rows */

.psm-table--paired tbody tr.psm-pair-alt td {
    background: #e3f0f8;
}


/* Header second line */

.psm-subline {
    display: block;

    margin-top: 1px;
}


/* =========================================================
   PRODUCT CODE BOX
   ========================================================= */

.psm-code-box {
    width: 100%;
    max-width: 100%;

    border: 1px solid #65a5bd;

    background: #ffffff;
    color: #111111;

    box-sizing: border-box;

    font-family: inherit !important;
    font-size: inherit !important;
    line-height: inherit !important;
}


/* =========================================================
   PRODUCT CODE TITLE
   ========================================================= */

.psm-code-title {
    width: 100%;

    padding: 12px 18px;

    border-bottom: 3px solid #168abd;

    text-align: center;

    font-weight: 700;

    box-sizing: border-box;

    font-family: inherit !important;
    font-size: inherit !important;
    line-height: inherit !important;
}


/* =========================================================
   PRODUCT CODE ROWS
   ========================================================= */

.psm-code-row {
    display: grid;

    grid-template-columns:
        minmax(220px, 42%)
        minmax(0, 1fr);

    align-items: center;

    width: 100%;
    min-height: 60px;

    border-bottom: 3px solid #168abd;

    box-sizing: border-box;
}


.psm-code-row:last-child {
    border-bottom: 0;
}


.psm-code-label,
.psm-code-value {
    padding: 10px 18px;

    box-sizing: border-box;

    font-family: inherit !important;
    font-size: inherit !important;
    line-height: inherit !important;
}


.psm-code-label {
    text-align: left;

    font-weight: 500;
}


.psm-code-value {
    text-align: center;

    font-weight: 500;

    white-space: nowrap;
}


.psm-code-highlight,
.psm-code-blue {
    color: #168abd;
}


/* =========================================================
   ELEMENTOR SAFETY
   ========================================================= */

.elementor-widget-html .psm-table-wrap,
.elementor-widget-html .psm-table-wrap *,
.elementor-widget-html .psm-spec-wrap,
.elementor-widget-html .psm-spec-wrap *,
.elementor-widget-html .psm-code-wrap,
.elementor-widget-html .psm-code-wrap * {
    box-sizing: border-box;

    font-family: inherit;
}


/* Keep Elementor containers from blocking scrolling */

.elementor-widget-html:has(.psm-table-scroll),
.elementor-widget-html:has(.psm-table-scroll) .elementor-widget-container {
    width: 100%;
    max-width: 100%;
    min-width: 0;
}


/* =========================================================
   SCROLLBAR
   ========================================================= */

.psm-table-scroll::-webkit-scrollbar {
    height: 7px;
}


.psm-table-scroll::-webkit-scrollbar-track {
    background: #eeeeee;
}


.psm-table-scroll::-webkit-scrollbar-thumb {
    background: #999999;

    border-radius: 20px;
}


/* =========================================================
   TABLET + MOBILE
   SAME FONT SIZE
   HORIZONTAL SCROLL
   ========================================================= */

@media (max-width: 1024px) {

    /* =====================================================
       WRAPPERS
       ===================================================== */

    .psm-table-wrap,
    .psm-spec-wrap,
    .psm-code-wrap {
        margin-bottom: 18px;
    }


    .psm-table-scroll {
        width: 100%;
        max-width: 100%;

        overflow-x: auto !important;
        overflow-y: hidden !important;

        -webkit-overflow-scrolling: touch;
        overscroll-behavior-x: contain;

        scrollbar-width: thin;

        padding-bottom: 5px;
    }


    /* =====================================================
       BASE TABLE
       ===================================================== */

    .psm-table,
    .psm-spec-table {
        width: auto;
        max-width: none;

        font-size: 12px !important;
        line-height: 1.2 !important;
    }


    /* =====================================================
       KEEP TECHNICAL TABLES WIDE
       DO NOT COMPRESS THEM
       ===================================================== */

    .psm-table:not(.psm-table--anvil):not(.psm-table--dimensions):not(.psm-table--length):not(.psm-table--performance):not(.psm-table--tooling),
    .psm-spec-table {
        width: 760px;
        min-width: 760px;
    }


    .psm-table--anvil {
        width: 580px;
        min-width: 580px;
        max-width: none;
    }


    .psm-table--dimensions {
        width: 1050px;
        min-width: 1050px;
        max-width: none;
    }


    .psm-table--length {
        width: 1120px;
        min-width: 1120px;
        max-width: none;
    }


    .psm-table--performance {
        width: 1200px;
        min-width: 1200px;
        max-width: none;
    }


    .psm-table--tooling {
        width: 1000px;
        min-width: 1000px;
        max-width: none;
    }


    /* =====================================================
       CELLS
       ===================================================== */

    .psm-table th,
    .psm-table td,
    .psm-spec-table th,
    .psm-spec-table td {
        font-size: 12px !important;
        line-height: 1.2 !important;

        padding: 6px 6px !important;
    }


    /* =====================================================
       HEADERS
       ===================================================== */

    .psm-table thead th,
    .psm-spec-table thead th {
        font-size: 11px !important;
        line-height: 1.15 !important;

        padding: 6px 5px !important;

        white-space: normal !important;

        word-break: normal !important;
        overflow-wrap: normal !important;
    }


    /* =====================================================
       BODY
       ===================================================== */

    .psm-table tbody td,
    .psm-spec-table tbody td {
        font-size: 12px !important;
        line-height: 1.2 !important;

        white-space: nowrap !important;
    }


    .psm-subline {
        font-size: inherit;
        line-height: inherit;
    }


    /* =====================================================
       PRODUCT CODE
       ===================================================== */

    .psm-code-box {
        width: 100%;
        max-width: 100%;

        font-size: 12px !important;
        line-height: 1.2 !important;
    }


    .psm-code-title {
        padding: 8px 10px;

        font-size: 11px !important;
        line-height: 1.15 !important;
    }


    .psm-code-row {
        grid-template-columns:
            minmax(180px, 42%)
            minmax(0, 1fr);

        min-height: auto;
    }


    .psm-code-label,
    .psm-code-value {
        font-size: 12px !important;
        line-height: 1.2 !important;
    }


    .psm-code-label {
        padding: 8px 10px;

        text-align: left;

        font-weight: 600;
    }


    .psm-code-value {
        padding: 8px 10px;

        text-align: center;

        white-space: nowrap;
    }
}


/* =========================================================
   MOBILE
   SAME FONT SIZE AS TABLET
   ========================================================= */

@media (max-width: 767px) {

    .psm-table-scroll {
        width: 100%;
        max-width: 100%;

        overflow-x: auto !important;
        overflow-y: hidden !important;

        -webkit-overflow-scrolling: touch;
    }


    /*
     * Do not force wide technical tables into
     * the phone width. Horizontal scrolling
     * keeps the content readable.
     */

    .psm-table,
    .psm-spec-table {
        max-width: none !important;

        font-size: 12px !important;
        line-height: 1.2 !important;
    }


    .psm-table th,
    .psm-table td,
    .psm-spec-table th,
    .psm-spec-table td {
        font-size: 12px !important;
        line-height: 1.2 !important;

        padding: 6px 6px !important;
    }


    .psm-table thead th,
    .psm-spec-table thead th {
        font-size: 11px !important;
        line-height: 1.15 !important;

        padding: 6px 5px !important;
    }


    .psm-table tbody td,
    .psm-spec-table tbody td {
        white-space: nowrap !important;
    }


    /* =====================================================
       PRODUCT CODE
       ===================================================== */

    .psm-code-box {
        font-size: 12px !important;
        line-height: 1.2 !important;
    }


    .psm-code-title {
        font-size: 11px !important;
        line-height: 1.15 !important;

        padding: 8px 10px;
    }


    /*
     * Stack product-code rows on mobile.
     * Technical tables continue scrolling.
     */

    .psm-code-row {
        grid-template-columns: 1fr;

        min-height: auto;
    }


    .psm-code-label,
    .psm-code-value {
        font-size: 12px !important;
        line-height: 1.2 !important;
    }


    .psm-code-label {
        padding: 8px 10px 2px;

        text-align: center;

        font-weight: 600;
    }


    .psm-code-value {
        padding: 3px 10px 8px;

        text-align: center;

        white-space: normal;
    }
}


/* =========================================================
   VERY SMALL MOBILE
   SAME SIZE AS TABLET + MOBILE
   DO NOT SHRINK TABLE TEXT
   ========================================================= */

@media (max-width: 480px) {

    .psm-table-scroll {
        overflow-x: auto !important;
        overflow-y: hidden !important;

        -webkit-overflow-scrolling: touch;
    }


    .psm-table,
    .psm-spec-table {
        font-size: 12px !important;
        line-height: 1.2 !important;
    }


    .psm-table th,
    .psm-table td,
    .psm-spec-table th,
    .psm-spec-table td {
        font-size: 12px !important;
        line-height: 1.2 !important;

        padding: 6px 6px !important;
    }


    .psm-table thead th,
    .psm-spec-table thead th {
        font-size: 11px !important;
        line-height: 1.15 !important;

        padding: 6px 5px !important;
    }


    /* Product code */

    .psm-code-box {
        font-size: 12px !important;
        line-height: 1.2 !important;
    }


    .psm-code-title {
        font-size: 11px !important;
        line-height: 1.15 !important;

        padding: 8px 10px;
    }


    .psm-code-label,
    .psm-code-value {
        font-size: 12px !important;
        line-height: 1.2 !important;
    }


    .psm-code-label {
        padding: 8px 10px 2px;
    }


    .psm-code-value {
        padding: 3px 10px 8px;
    }
}

/* =========================================================
   P-FH / P-FHS PRODUCT CODE TABLE
   MATCH TABLET + MOBILE TYPOGRAPHY
   ========================================================= */

.psm-code-wrap {
    width: 100%;
    max-width: 100%;
    overflow: hidden;
    box-sizing: border-box;
}


/* Product code table */

.psm-code-wrap .psm-code-table {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;

    border-collapse: collapse;
    border-spacing: 0;
    table-layout: fixed;

    font-family: inherit !important;
    font-size: inherit;
    line-height: inherit;

    color: inherit;
    background: #ffffff;

    border: 2px solid #168abd;
}


/* Cells */

.psm-code-wrap .psm-code-table th,
.psm-code-wrap .psm-code-table td {
    box-sizing: border-box;

    font-family: inherit !important;
    font-size: inherit;
    line-height: 1.2;

    padding: 7px 10px;

    vertical-align: middle;

    border-bottom: 2px solid #168abd;
}


/* Header */

.psm-code-wrap .psm-code-table thead th {
    background: #ffffff;
    color: inherit;

    text-align: center;

    font-weight: 700;
}


/* Remove last border */

.psm-code-wrap .psm-code-table tbody tr:last-child td {
    border-bottom: 0;
}


/* Left label */

.psm-code-wrap .psm-code-table tbody td:first-child {
    width: 42%;

    text-align: left;

    font-weight: 600;

    white-space: normal;
}


/* Right code */

.psm-code-wrap .psm-code-table tbody td:last-child {
    width: 58%;

    text-align: right;

    font-weight: 500;

    white-space: nowrap;
}


/* Blue code */

.psm-code-wrap .psm-code-blue {
    color: #168abd;
}


/* =========================================================
   TABLET + MOBILE
   SAME SIZE
   ========================================================= */

@media (max-width: 1024px) {

    .psm-code-wrap .psm-code-table {
        font-size: 12px !important;
        line-height: 1.2 !important;
    }


    .psm-code-wrap .psm-code-table th,
    .psm-code-wrap .psm-code-table td {
        font-size: 12px !important;
        line-height: 1.2 !important;

        padding: 6px 7px !important;
    }


    /* Header matches other table headers */

    .psm-code-wrap .psm-code-table thead th {
        font-size: 11px !important;
        line-height: 1.15 !important;

        padding: 6px 7px !important;
    }


    .psm-code-wrap .psm-code-table tbody td:first-child {
        width: 42%;
    }


    .psm-code-wrap .psm-code-table tbody td:last-child {
        width: 58%;
    }
}


/* =========================================================
   MOBILE
   SAME SIZE AS TABLET
   ========================================================= */

@media (max-width: 767px) {

    .psm-code-wrap .psm-code-table,
    .psm-code-wrap .psm-code-table th,
    .psm-code-wrap .psm-code-table td {
        font-size: 12px !important;
        line-height: 1.2 !important;
    }


    .psm-code-wrap .psm-code-table th,
    .psm-code-wrap .psm-code-table td {
        padding: 6px 7px !important;
    }


    .psm-code-wrap .psm-code-table thead th {
        font-size: 11px !important;
        line-height: 1.15 !important;

        padding: 6px 7px !important;
    }
}


/* =========================================================
   VERY SMALL MOBILE
   KEEP SAME SIZE
   ========================================================= */

@media (max-width: 480px) {

    .psm-code-wrap .psm-code-table,
    .psm-code-wrap .psm-code-table th,
    .psm-code-wrap .psm-code-table td {
        font-size: 12px !important;
        line-height: 1.2 !important;
    }


    .psm-code-wrap .psm-code-table th,
    .psm-code-wrap .psm-code-table td {
        padding: 6px 7px !important;
    }


    .psm-code-wrap .psm-code-table thead th {
        font-size: 11px !important;
        line-height: 1.15 !important;
    }


    .psm-code-wrap .psm-code-table tbody td:first-child {
        width: 42%;
    }


    .psm-code-wrap .psm-code-table tbody td:last-child {
        width: 58%;
    }
}/* =========================================================
   PSM FASTENERS
   PFH / P-HFH / P-HFHS SELF-CLINCHING STUDS
   MERGED GLOBAL RESPONSIVE CSS

   DESKTOP:
   - Inherits website / Elementor font size

   TABLET + MOBILE:
   - Horizontal scrolling retained
   - Body: 12px
   - Headers: 11px
   - Product code: 12px
   - Same sizing on tablet, mobile and small mobile
   ========================================================= */


/* =========================================================
   GLOBAL WRAPPERS
   ========================================================= */

.psm-table-wrap,
.psm-spec-wrap,
.psm-code-wrap {
    width: 100%;
    max-width: 100%;

    margin: 0 0 24px;

    box-sizing: border-box;

    font-family: inherit !important;
    font-size: inherit !important;
    line-height: inherit !important;
    color: inherit;
}


/* =========================================================
   RESPONSIVE SCROLL
   ========================================================= */

.psm-table-scroll {
    width: 100%;
    max-width: 100%;

    overflow-x: auto;
    overflow-y: hidden;

    -webkit-overflow-scrolling: touch;
    overscroll-behavior-x: contain;
    scrollbar-width: thin;

    box-sizing: border-box;
}


/* =========================================================
   STANDARD TECHNICAL TABLE
   ========================================================= */

.psm-table,
.psm-spec-table {
    width: 100%;
    min-width: 760px;
    max-width: none;

    margin: 0;

    border-collapse: collapse;
    border-spacing: 0;

    table-layout: auto;

    background: #ffffff;
    color: #111111;

    font-family: inherit !important;
    font-size: inherit !important;
    line-height: inherit !important;
}


/* =========================================================
   TABLE WIDTH VARIANTS
   ========================================================= */

.psm-table--anvil {
    min-width: 580px;
}


.psm-table--dimensions {
    min-width: 1050px;
}


.psm-table--length {
    min-width: 1120px;
}


.psm-table--performance {
    min-width: 1200px;
}


.psm-table--tooling {
    min-width: 1000px;
}


/* =========================================================
   CELLS
   ========================================================= */

.psm-table th,
.psm-table td,
.psm-spec-table th,
.psm-spec-table td {
    border: 1px solid #1b1b1b;

    padding: 8px 9px;

    text-align: center;
    vertical-align: middle;

    box-sizing: border-box;

    font-family: inherit !important;
    font-size: inherit !important;
    line-height: 1.3;
}


/* =========================================================
   HEADERS
   ========================================================= */

.psm-table thead th,
.psm-spec-table thead th {
    background: #129eea;
    color: #ffffff;

    font-weight: 700;

    text-align: center;
    vertical-align: middle;

    white-space: normal;

    word-break: normal;
    overflow-wrap: normal;
}


/* =========================================================
   BODY
   ========================================================= */

.psm-table tbody td,
.psm-spec-table tbody td {
    background: #ffffff;

    font-weight: 600;

    white-space: nowrap;
}


/* Standard alternating rows */

.psm-table:not(.psm-table--paired) tbody tr:nth-child(even) td,
.psm-spec-table:not(.psm-table--paired) tbody tr:nth-child(even) td {
    background: #e3f0f8;
}


/* Performance paired rows */

.psm-table--paired tbody tr.psm-pair-alt td {
    background: #e3f0f8;
}


/* Header second line */

.psm-subline {
    display: block;

    margin-top: 1px;
}


/* =========================================================
   PRODUCT CODE BOX
   ========================================================= */

.psm-code-box {
    width: 100%;
    max-width: 100%;

    border: 1px solid #65a5bd;

    background: #ffffff;
    color: #111111;

    box-sizing: border-box;

    font-family: inherit !important;
    font-size: inherit !important;
    line-height: inherit !important;
}


/* =========================================================
   PRODUCT CODE TITLE
   ========================================================= */

.psm-code-title {
    width: 100%;

    padding: 12px 18px;

    border-bottom: 3px solid #168abd;

    text-align: center;

    font-weight: 700;

    box-sizing: border-box;

    font-family: inherit !important;
    font-size: inherit !important;
    line-height: inherit !important;
}


/* =========================================================
   PRODUCT CODE ROWS
   ========================================================= */

.psm-code-row {
    display: grid;

    grid-template-columns:
        minmax(220px, 42%)
        minmax(0, 1fr);

    align-items: center;

    width: 100%;
    min-height: 60px;

    border-bottom: 3px solid #168abd;

    box-sizing: border-box;
}


.psm-code-row:last-child {
    border-bottom: 0;
}


.psm-code-label,
.psm-code-value {
    padding: 10px 18px;

    box-sizing: border-box;

    font-family: inherit !important;
    font-size: inherit !important;
    line-height: inherit !important;
}


.psm-code-label {
    text-align: left;

    font-weight: 500;
}


.psm-code-value {
    text-align: center;

    font-weight: 500;

    white-space: nowrap;
}


.psm-code-highlight,
.psm-code-blue {
    color: #168abd;
}


/* =========================================================
   ELEMENTOR SAFETY
   ========================================================= */

.elementor-widget-html .psm-table-wrap,
.elementor-widget-html .psm-table-wrap *,
.elementor-widget-html .psm-spec-wrap,
.elementor-widget-html .psm-spec-wrap *,
.elementor-widget-html .psm-code-wrap,
.elementor-widget-html .psm-code-wrap * {
    box-sizing: border-box;

    font-family: inherit;
}


/* Keep Elementor containers from blocking scrolling */

.elementor-widget-html:has(.psm-table-scroll),
.elementor-widget-html:has(.psm-table-scroll) .elementor-widget-container {
    width: 100%;
    max-width: 100%;
    min-width: 0;
}


/* =========================================================
   SCROLLBAR
   ========================================================= */

.psm-table-scroll::-webkit-scrollbar {
    height: 7px;
}


.psm-table-scroll::-webkit-scrollbar-track {
    background: #eeeeee;
}


.psm-table-scroll::-webkit-scrollbar-thumb {
    background: #999999;

    border-radius: 20px;
}


/* =========================================================
   TABLET + MOBILE
   SAME FONT SIZE
   HORIZONTAL SCROLL
   ========================================================= */

@media (max-width: 1024px) {

    /* =====================================================
       WRAPPERS
       ===================================================== */

    .psm-table-wrap,
    .psm-spec-wrap,
    .psm-code-wrap {
        margin-bottom: 18px;
    }


    .psm-table-scroll {
        width: 100%;
        max-width: 100%;

        overflow-x: auto !important;
        overflow-y: hidden !important;

        -webkit-overflow-scrolling: touch;
        overscroll-behavior-x: contain;

        scrollbar-width: thin;

        padding-bottom: 5px;
    }


    /* =====================================================
       BASE TABLE
       ===================================================== */

    .psm-table,
    .psm-spec-table {
        width: auto;
        max-width: none;

        font-size: 12px !important;
        line-height: 1.2 !important;
    }


    /* =====================================================
       KEEP TECHNICAL TABLES WIDE
       DO NOT COMPRESS THEM
       ===================================================== */

    .psm-table:not(.psm-table--anvil):not(.psm-table--dimensions):not(.psm-table--length):not(.psm-table--performance):not(.psm-table--tooling),
    .psm-spec-table {
        width: 760px;
        min-width: 760px;
    }


    .psm-table--anvil {
        width: 580px;
        min-width: 580px;
        max-width: none;
    }


    .psm-table--dimensions {
        width: 1050px;
        min-width: 1050px;
        max-width: none;
    }


    .psm-table--length {
        width: 1120px;
        min-width: 1120px;
        max-width: none;
    }


    .psm-table--performance {
        width: 1200px;
        min-width: 1200px;
        max-width: none;
    }


    .psm-table--tooling {
        width: 1000px;
        min-width: 1000px;
        max-width: none;
    }


    /* =====================================================
       CELLS
       ===================================================== */

    .psm-table th,
    .psm-table td,
    .psm-spec-table th,
    .psm-spec-table td {
        font-size: 12px !important;
        line-height: 1.2 !important;

        padding: 6px 6px !important;
    }


    /* =====================================================
       HEADERS
       ===================================================== */

    .psm-table thead th,
    .psm-spec-table thead th {
        font-size: 11px !important;
        line-height: 1.15 !important;

        padding: 6px 5px !important;

        white-space: normal !important;

        word-break: normal !important;
        overflow-wrap: normal !important;
    }


    /* =====================================================
       BODY
       ===================================================== */

    .psm-table tbody td,
    .psm-spec-table tbody td {
        font-size: 12px !important;
        line-height: 1.2 !important;

        white-space: nowrap !important;
    }


    .psm-subline {
        font-size: inherit;
        line-height: inherit;
    }


    /* =====================================================
       PRODUCT CODE
       ===================================================== */

    .psm-code-box {
        width: 100%;
        max-width: 100%;

        font-size: 12px !important;
        line-height: 1.2 !important;
    }


    .psm-code-title {
        padding: 8px 10px;

        font-size: 11px !important;
        line-height: 1.15 !important;
    }


    .psm-code-row {
        grid-template-columns:
            minmax(180px, 42%)
            minmax(0, 1fr);

        min-height: auto;
    }


    .psm-code-label,
    .psm-code-value {
        font-size: 12px !important;
        line-height: 1.2 !important;
    }


    .psm-code-label {
        padding: 8px 10px;

        text-align: left;

        font-weight: 600;
    }


    .psm-code-value {
        padding: 8px 10px;

        text-align: center;

        white-space: nowrap;
    }
}


/* =========================================================
   MOBILE
   SAME FONT SIZE AS TABLET
   ========================================================= */

@media (max-width: 767px) {

    .psm-table-scroll {
        width: 100%;
        max-width: 100%;

        overflow-x: auto !important;
        overflow-y: hidden !important;

        -webkit-overflow-scrolling: touch;
    }


    /*
     * Do not force wide technical tables into
     * the phone width. Horizontal scrolling
     * keeps the content readable.
     */

    .psm-table,
    .psm-spec-table {
        max-width: none !important;

        font-size: 12px !important;
        line-height: 1.2 !important;
    }


    .psm-table th,
    .psm-table td,
    .psm-spec-table th,
    .psm-spec-table td {
        font-size: 12px !important;
        line-height: 1.2 !important;

        padding: 6px 6px !important;
    }


    .psm-table thead th,
    .psm-spec-table thead th {
        font-size: 11px !important;
        line-height: 1.15 !important;

        padding: 6px 5px !important;
    }


    .psm-table tbody td,
    .psm-spec-table tbody td {
        white-space: nowrap !important;
    }


    /* =====================================================
       PRODUCT CODE
       ===================================================== */

    .psm-code-box {
        font-size: 12px !important;
        line-height: 1.2 !important;
    }


    .psm-code-title {
        font-size: 11px !important;
        line-height: 1.15 !important;

        padding: 8px 10px;
    }


    /*
     * Stack product-code rows on mobile.
     * Technical tables continue scrolling.
     */

    .psm-code-row {
        grid-template-columns: 1fr;

        min-height: auto;
    }


    .psm-code-label,
    .psm-code-value {
        font-size: 12px !important;
        line-height: 1.2 !important;
    }


    .psm-code-label {
        padding: 8px 10px 2px;

        text-align: center;

        font-weight: 600;
    }


    .psm-code-value {
        padding: 3px 10px 8px;

        text-align: center;

        white-space: normal;
    }
}


/* =========================================================
   VERY SMALL MOBILE
   SAME SIZE AS TABLET + MOBILE
   DO NOT SHRINK TABLE TEXT
   ========================================================= */

@media (max-width: 480px) {

    .psm-table-scroll {
        overflow-x: auto !important;
        overflow-y: hidden !important;

        -webkit-overflow-scrolling: touch;
    }


    .psm-table,
    .psm-spec-table {
        font-size: 12px !important;
        line-height: 1.2 !important;
    }


    .psm-table th,
    .psm-table td,
    .psm-spec-table th,
    .psm-spec-table td {
        font-size: 12px !important;
        line-height: 1.2 !important;

        padding: 6px 6px !important;
    }


    .psm-table thead th,
    .psm-spec-table thead th {
        font-size: 11px !important;
        line-height: 1.15 !important;

        padding: 6px 5px !important;
    }


    /* Product code */

    .psm-code-box {
        font-size: 12px !important;
        line-height: 1.2 !important;
    }


    .psm-code-title {
        font-size: 11px !important;
        line-height: 1.15 !important;

        padding: 8px 10px;
    }


    .psm-code-label,
    .psm-code-value {
        font-size: 12px !important;
        line-height: 1.2 !important;
    }


    .psm-code-label {
        padding: 8px 10px 2px;
    }


    .psm-code-value {
        padding: 3px 10px 8px;
    }
}

/* =========================================================
   P-FH / P-FHS PRODUCT CODE TABLE
   MATCH TABLET + MOBILE TYPOGRAPHY
   ========================================================= */

.psm-code-wrap {
    width: 100%;
    max-width: 100%;
    overflow: hidden;
    box-sizing: border-box;
}


/* Product code table */

.psm-code-wrap .psm-code-table {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;

    border-collapse: collapse;
    border-spacing: 0;
    table-layout: fixed;

    font-family: inherit !important;
    font-size: inherit;
    line-height: inherit;

    color: inherit;
    background: #ffffff;

    border: 2px solid #168abd;
}


/* Cells */

.psm-code-wrap .psm-code-table th,
.psm-code-wrap .psm-code-table td {
    box-sizing: border-box;

    font-family: inherit !important;
    font-size: inherit;
    line-height: 1.2;

    padding: 7px 10px;

    vertical-align: middle;

    border-bottom: 2px solid #168abd;
}


/* Header */

.psm-code-wrap .psm-code-table thead th {
    background: #ffffff;
    color: inherit;

    text-align: center;

    font-weight: 700;
}


/* Remove last border */

.psm-code-wrap .psm-code-table tbody tr:last-child td {
    border-bottom: 0;
}


/* Left label */

.psm-code-wrap .psm-code-table tbody td:first-child {
    width: 42%;

    text-align: left;

    font-weight: 600;

    white-space: normal;
}


/* Right code */

.psm-code-wrap .psm-code-table tbody td:last-child {
    width: 58%;

    text-align: right;

    font-weight: 500;

    white-space: nowrap;
}


/* Blue code */

.psm-code-wrap .psm-code-blue {
    color: #168abd;
}


/* =========================================================
   TABLET + MOBILE
   SAME SIZE
   ========================================================= */

@media (max-width: 1024px) {

    .psm-code-wrap .psm-code-table {
        font-size: 12px !important;
        line-height: 1.2 !important;
    }


    .psm-code-wrap .psm-code-table th,
    .psm-code-wrap .psm-code-table td {
        font-size: 12px !important;
        line-height: 1.2 !important;

        padding: 6px 7px !important;
    }


    /* Header matches other table headers */

    .psm-code-wrap .psm-code-table thead th {
        font-size: 11px !important;
        line-height: 1.15 !important;

        padding: 6px 7px !important;
    }


    .psm-code-wrap .psm-code-table tbody td:first-child {
        width: 42%;
    }


    .psm-code-wrap .psm-code-table tbody td:last-child {
        width: 58%;
    }
}


/* =========================================================
   MOBILE
   SAME SIZE AS TABLET
   ========================================================= */

@media (max-width: 767px) {

    .psm-code-wrap .psm-code-table,
    .psm-code-wrap .psm-code-table th,
    .psm-code-wrap .psm-code-table td {
        font-size: 12px !important;
        line-height: 1.2 !important;
    }


    .psm-code-wrap .psm-code-table th,
    .psm-code-wrap .psm-code-table td {
        padding: 6px 7px !important;
    }


    .psm-code-wrap .psm-code-table thead th {
        font-size: 11px !important;
        line-height: 1.15 !important;

        padding: 6px 7px !important;
    }
}


/* =========================================================
   VERY SMALL MOBILE
   KEEP SAME SIZE
   ========================================================= */

@media (max-width: 480px) {

    .psm-code-wrap .psm-code-table,
    .psm-code-wrap .psm-code-table th,
    .psm-code-wrap .psm-code-table td {
        font-size: 12px !important;
        line-height: 1.2 !important;
    }


    .psm-code-wrap .psm-code-table th,
    .psm-code-wrap .psm-code-table td {
        padding: 6px 7px !important;
    }


    .psm-code-wrap .psm-code-table thead th {
        font-size: 11px !important;
        line-height: 1.15 !important;
    }


    .psm-code-wrap .psm-code-table tbody td:first-child {
        width: 42%;
    }


    .psm-code-wrap .psm-code-table tbody td:last-child {
        width: 58%;
    }
}

/* =========================================================
   PSM PFH / P-HFH / P-HFHS SELF-CLINCHING STUDS
   VISIBLE HORIZONTAL SCROLL — TABLET / MOBILE

   Scope:
   - .psm-table-scroll only

   Intentionally untouched:
   - Product-code box / product-code tables
   - Desktop table behavior
   - Existing table widths and typography

   Goals:
   - Strong visible PSM-blue scrollbar
   - Always-visible swipe / scroll cue
   - Right-edge overflow hint
   - No JavaScript required
   ========================================================= */

@media (max-width: 1024px) {

    /* =====================================================
       ACTUAL SCROLL HOST
       ===================================================== */

    .psm-table-scroll {
        position: relative;

        width: 100%;
        max-width: 100%;

        overflow-x: scroll !important;
        overflow-y: hidden !important;

        -webkit-overflow-scrolling: touch;
        overscroll-behavior-x: contain;

        /* Reserve visible room for scrollbar */
        padding-bottom: 12px !important;

        /* Firefox */
        scrollbar-width: auto;
        scrollbar-color: #08658c #dbe5ea;

        /* Where supported */
        scrollbar-gutter: stable;

        /* Permanent right-edge overflow cue */
        box-shadow:
            inset -18px 0 18px -18px rgba(8, 101, 140, 0.65);
    }


    /* =====================================================
       ALWAYS-VISIBLE SCROLL MESSAGE
       ===================================================== */

    .psm-table-scroll::before {
        content: "\2190  SWIPE / SCROLL TABLE  \2192";

        display: block;
        position: sticky;
        left: 0;

        width: 100%;
        min-width: 100%;

        box-sizing: border-box;
        padding: 5px 8px 7px;

        background: #ffffff;
        color: #08658c;

        font-family: inherit;
        font-size: 10px;
        font-weight: 700;
        line-height: 1.2;
        letter-spacing: 0.04em;

        text-align: right;
        white-space: nowrap;

        pointer-events: none;
        z-index: 20;
    }


    /* =====================================================
       CHROME / EDGE / ANDROID / WEBKIT
       ===================================================== */

    .psm-table-scroll::-webkit-scrollbar {
        display: block !important;

        width: 12px;
        height: 12px !important;

        -webkit-appearance: none;
    }

    .psm-table-scroll::-webkit-scrollbar-track {
        background: #dbe5ea;

        border: 1px solid #c7d4da;
        border-radius: 20px;
    }

    .psm-table-scroll::-webkit-scrollbar-thumb {
        background: #08658c;

        border: 2px solid #dbe5ea;
        border-radius: 20px;

        min-width: 48px;
    }

    .psm-table-scroll::-webkit-scrollbar-thumb:hover {
        background: #129eea;
    }

    .psm-table-scroll::-webkit-scrollbar-thumb:active {
        background: #064c69;
    }


    /* =====================================================
       PRODUCT-CODE WRAPPERS REMAIN FITTED / NON-SCROLLING
       ===================================================== */

    .psm-code-wrap {
        overflow: hidden !important;
        box-shadow: none !important;
        padding-bottom: 0 !important;
    }

    .psm-code-wrap::before {
        content: none !important;
        display: none !important;
    }
}


/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media (max-width: 480px) {

    .psm-table-scroll::before {
        padding: 5px 6px 6px;
        font-size: 9px;
    }

    .psm-table-scroll {
        padding-bottom: 11px !important;
    }
}

/* =========================================================
   PSM PFH / P-FHS / P-HFH / P-HFHS
   PRODUCT GUIDE — CENTERED / NO HORIZONTAL SCROLL
   Updated 2026-09-18

   TARGET:
   - Product Guide page only
   - Center all Elementor HTML technical content
   - Remove horizontal scrolling / scrollbar effects
   - Remove swipe/scroll message
   - Fit all technical tables inside available width
   - Preserve PSM styling and table data
   - Keep normal vertical page scrolling
   ========================================================= */


/* ---------------------------------------------------------
   PRODUCT GUIDE PAGE SAFETY
   --------------------------------------------------------- */

body.single-product_guide {
    overflow-x: hidden !important;
}


/* Center Elementor HTML widgets that contain PFH tables */

body.single-product_guide .elementor-widget-html:has(.psm-table-wrap),
body.single-product_guide .elementor-widget-html:has(.psm-spec-wrap),
body.single-product_guide .elementor-widget-html:has(.psm-code-wrap),
body.single-product_guide .elementor-widget-html:has(.psm-table-scroll),
body.single-product_guide .elementor-widget-html:has(.psm-table-wrap) > .elementor-widget-container,
body.single-product_guide .elementor-widget-html:has(.psm-spec-wrap) > .elementor-widget-container,
body.single-product_guide .elementor-widget-html:has(.psm-code-wrap) > .elementor-widget-container,
body.single-product_guide .elementor-widget-html:has(.psm-table-scroll) > .elementor-widget-container {
    width: 100% !important;
    max-width: 1000px !important;
    min-width: 0 !important;

    margin-left: auto !important;
    margin-right: auto !important;

    overflow-x: hidden !important;
    overflow-y: visible !important;

    box-sizing: border-box !important;
}


/* Fallback centering */

body.single-product_guide .elementor-widget-html .psm-table-wrap,
body.single-product_guide .elementor-widget-html .psm-spec-wrap,
body.single-product_guide .elementor-widget-html .psm-code-wrap {
    margin-left: auto !important;
    margin-right: auto !important;
}


/* ---------------------------------------------------------
   GLOBAL PFH WRAPPERS
   --------------------------------------------------------- */

body.single-product_guide .psm-table-wrap,
body.single-product_guide .psm-spec-wrap,
body.single-product_guide .psm-code-wrap,
body.single-product_guide .psm-table-scroll {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;

    margin-left: auto !important;
    margin-right: auto !important;

    padding-left: 0 !important;
    padding-right: 0 !important;
    padding-bottom: 0 !important;

    overflow-x: hidden !important;
    overflow-y: visible !important;

    -webkit-overflow-scrolling: auto !important;
    overscroll-behavior-x: auto !important;

    scrollbar-width: none !important;
    scrollbar-gutter: auto !important;

    box-shadow: none !important;

    box-sizing: border-box !important;
}


/* Keep product-code content narrower and centered */

body.single-product_guide .psm-code-wrap {
    max-width: 700px !important;
}


/* ---------------------------------------------------------
   REMOVE SCROLL CUES / SCROLLBARS
   --------------------------------------------------------- */

body.single-product_guide .psm-table-scroll::before,
body.single-product_guide .psm-table-scroll::after,
body.single-product_guide .psm-table-wrap::before,
body.single-product_guide .psm-table-wrap::after,
body.single-product_guide .psm-spec-wrap::before,
body.single-product_guide .psm-spec-wrap::after {
    content: none !important;
    display: none !important;
}


body.single-product_guide .psm-table-scroll::-webkit-scrollbar,
body.single-product_guide .psm-table-wrap::-webkit-scrollbar,
body.single-product_guide .psm-spec-wrap::-webkit-scrollbar,
body.single-product_guide .psm-code-wrap::-webkit-scrollbar {
    display: none !important;

    width: 0 !important;
    height: 0 !important;
}


/* ---------------------------------------------------------
   ALL TECHNICAL TABLES
   Remove legacy 580 / 760 / 1000 / 1050 / 1120 / 1200px
   minimum widths and fit them to the guide content width.
   --------------------------------------------------------- */

body.single-product_guide .psm-table,
body.single-product_guide .psm-spec-table,
body.single-product_guide .psm-table--anvil,
body.single-product_guide .psm-table--dimensions,
body.single-product_guide .psm-table--length,
body.single-product_guide .psm-table--performance,
body.single-product_guide .psm-table--tooling,
body.single-product_guide .psm-code-wrap .psm-code-table {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;

    margin-left: auto !important;
    margin-right: auto !important;

    table-layout: fixed !important;

    box-sizing: border-box !important;
}


/* Allow all cells to wrap instead of forcing table overflow */

body.single-product_guide .psm-table th,
body.single-product_guide .psm-table td,
body.single-product_guide .psm-spec-table th,
body.single-product_guide .psm-spec-table td,
body.single-product_guide .psm-code-wrap .psm-code-table th,
body.single-product_guide .psm-code-wrap .psm-code-table td {
    min-width: 0 !important;
    max-width: none !important;

    white-space: normal !important;

    word-break: normal !important;
    overflow-wrap: anywhere !important;

    box-sizing: border-box !important;
}


/* ---------------------------------------------------------
   DESKTOP
   --------------------------------------------------------- */

@media (min-width: 1025px) {

    body.single-product_guide .psm-table,
    body.single-product_guide .psm-spec-table {
        font-size: 11px !important;
        line-height: 1.15 !important;
    }


    body.single-product_guide .psm-table th,
    body.single-product_guide .psm-table td,
    body.single-product_guide .psm-spec-table th,
    body.single-product_guide .psm-spec-table td {
        padding: 6px 4px !important;

        font-size: 11px !important;
        line-height: 1.15 !important;
    }


    body.single-product_guide .psm-table thead th,
    body.single-product_guide .psm-spec-table thead th {
        padding: 6px 3px !important;

        font-size: 10px !important;
        line-height: 1.1 !important;
    }


    /* Extra-wide tables use slightly tighter sizing */

    body.single-product_guide .psm-table--dimensions th,
    body.single-product_guide .psm-table--dimensions td,
    body.single-product_guide .psm-table--length th,
    body.single-product_guide .psm-table--length td,
    body.single-product_guide .psm-table--performance th,
    body.single-product_guide .psm-table--performance td,
    body.single-product_guide .psm-table--tooling th,
    body.single-product_guide .psm-table--tooling td {
        padding-left: 3px !important;
        padding-right: 3px !important;

        font-size: 10px !important;
        line-height: 1.1 !important;
    }


    body.single-product_guide .psm-table--dimensions thead th,
    body.single-product_guide .psm-table--length thead th,
    body.single-product_guide .psm-table--performance thead th,
    body.single-product_guide .psm-table--tooling thead th {
        font-size: 9px !important;
        line-height: 1.05 !important;
    }
}


/* ---------------------------------------------------------
   TABLET / SMALL DESKTOP
   --------------------------------------------------------- */

@media (max-width: 1024px) {

    body.single-product_guide .psm-table-scroll {
        overflow-x: hidden !important;
        overflow-y: visible !important;

        padding-bottom: 0 !important;

        scrollbar-width: none !important;
        box-shadow: none !important;
    }


    body.single-product_guide .psm-table-scroll::before,
    body.single-product_guide .psm-table-scroll::after {
        content: none !important;
        display: none !important;
    }


    body.single-product_guide .psm-table-scroll::-webkit-scrollbar {
        display: none !important;
        width: 0 !important;
        height: 0 !important;
    }


    body.single-product_guide .psm-table,
    body.single-product_guide .psm-spec-table,
    body.single-product_guide .psm-table--anvil,
    body.single-product_guide .psm-table--dimensions,
    body.single-product_guide .psm-table--length,
    body.single-product_guide .psm-table--performance,
    body.single-product_guide .psm-table--tooling {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;

        table-layout: fixed !important;

        font-size: 10px !important;
        line-height: 1.12 !important;
    }


    body.single-product_guide .psm-table th,
    body.single-product_guide .psm-table td,
    body.single-product_guide .psm-spec-table th,
    body.single-product_guide .psm-spec-table td {
        padding: 5px 2px !important;

        font-size: 10px !important;
        line-height: 1.12 !important;

        white-space: normal !important;
        overflow-wrap: anywhere !important;
    }


    body.single-product_guide .psm-table thead th,
    body.single-product_guide .psm-spec-table thead th {
        padding: 5px 2px !important;

        font-size: 9px !important;
        line-height: 1.05 !important;
    }


    /* Very wide table families */

    body.single-product_guide .psm-table--dimensions th,
    body.single-product_guide .psm-table--dimensions td,
    body.single-product_guide .psm-table--length th,
    body.single-product_guide .psm-table--length td,
    body.single-product_guide .psm-table--performance th,
    body.single-product_guide .psm-table--performance td,
    body.single-product_guide .psm-table--tooling th,
    body.single-product_guide .psm-table--tooling td {
        padding-left: 2px !important;
        padding-right: 2px !important;

        font-size: 9px !important;
        line-height: 1.08 !important;
    }


    body.single-product_guide .psm-table--dimensions thead th,
    body.single-product_guide .psm-table--length thead th,
    body.single-product_guide .psm-table--performance thead th,
    body.single-product_guide .psm-table--tooling thead th {
        font-size: 8px !important;
        line-height: 1 !important;
    }


    /* Product code */

    body.single-product_guide .psm-code-box,
    body.single-product_guide .psm-code-wrap .psm-code-table {
        font-size: 10px !important;
        line-height: 1.15 !important;
    }


    body.single-product_guide .psm-code-title,
    body.single-product_guide .psm-code-wrap .psm-code-table thead th {
        font-size: 9px !important;
        line-height: 1.1 !important;
    }


    body.single-product_guide .psm-code-row {
        grid-template-columns:
            minmax(0, 42%)
            minmax(0, 58%);

        min-height: auto !important;
    }


    body.single-product_guide .psm-code-label,
    body.single-product_guide .psm-code-value,
    body.single-product_guide .psm-code-wrap .psm-code-table th,
    body.single-product_guide .psm-code-wrap .psm-code-table td {
        font-size: 10px !important;
        line-height: 1.15 !important;

        white-space: normal !important;
        overflow-wrap: anywhere !important;
    }
}


/* ---------------------------------------------------------
   MOBILE
   --------------------------------------------------------- */

@media (max-width: 767px) {

    body.single-product_guide .psm-table,
    body.single-product_guide .psm-spec-table {
        font-size: 9px !important;
        line-height: 1.08 !important;
    }


    body.single-product_guide .psm-table th,
    body.single-product_guide .psm-table td,
    body.single-product_guide .psm-spec-table th,
    body.single-product_guide .psm-spec-table td {
        padding: 4px 1px !important;

        font-size: 9px !important;
        line-height: 1.08 !important;
    }


    body.single-product_guide .psm-table thead th,
    body.single-product_guide .psm-spec-table thead th {
        font-size: 8px !important;
        line-height: 1 !important;
    }


    body.single-product_guide .psm-table--dimensions th,
    body.single-product_guide .psm-table--dimensions td,
    body.single-product_guide .psm-table--length th,
    body.single-product_guide .psm-table--length td,
    body.single-product_guide .psm-table--performance th,
    body.single-product_guide .psm-table--performance td,
    body.single-product_guide .psm-table--tooling th,
    body.single-product_guide .psm-table--tooling td {
        font-size: 8px !important;
        line-height: 1.03 !important;
    }


    body.single-product_guide .psm-table--dimensions thead th,
    body.single-product_guide .psm-table--length thead th,
    body.single-product_guide .psm-table--performance thead th,
    body.single-product_guide .psm-table--tooling thead th {
        font-size: 7px !important;
        line-height: 1 !important;
    }


    /* Product code remains two-column and centered */

    body.single-product_guide .psm-code-row {
        grid-template-columns:
            minmax(0, 42%)
            minmax(0, 58%) !important;
    }


    body.single-product_guide .psm-code-label,
    body.single-product_guide .psm-code-value,
    body.single-product_guide .psm-code-wrap .psm-code-table th,
    body.single-product_guide .psm-code-wrap .psm-code-table td {
        font-size: 9px !important;
        line-height: 1.1 !important;

        padding: 5px 4px !important;
    }
}


/* ---------------------------------------------------------
   SMALL MOBILE
   --------------------------------------------------------- */

@media (max-width: 480px) {

    body.single-product_guide .psm-table,
    body.single-product_guide .psm-spec-table {
        font-size: 8px !important;
        line-height: 1.05 !important;
    }


    body.single-product_guide .psm-table th,
    body.single-product_guide .psm-table td,
    body.single-product_guide .psm-spec-table th,
    body.single-product_guide .psm-spec-table td {
        padding: 4px 1px !important;

        font-size: 8px !important;
        line-height: 1.05 !important;
    }


    body.single-product_guide .psm-table thead th,
    body.single-product_guide .psm-spec-table thead th {
        font-size: 7px !important;
        line-height: 1 !important;
    }


    body.single-product_guide .psm-table--dimensions th,
    body.single-product_guide .psm-table--dimensions td,
    body.single-product_guide .psm-table--length th,
    body.single-product_guide .psm-table--length td,
    body.single-product_guide .psm-table--performance th,
    body.single-product_guide .psm-table--performance td,
    body.single-product_guide .psm-table--tooling th,
    body.single-product_guide .psm-table--tooling td {
        font-size: 7px !important;
        line-height: 1 !important;

        padding-left: 1px !important;
        padding-right: 1px !important;
    }


    body.single-product_guide .psm-table--dimensions thead th,
    body.single-product_guide .psm-table--length thead th,
    body.single-product_guide .psm-table--performance thead th,
    body.single-product_guide .psm-table--tooling thead th {
        font-size: 6.5px !important;
        line-height: 1 !important;
    }


    body.single-product_guide .psm-code-label,
    body.single-product_guide .psm-code-value,
    body.single-product_guide .psm-code-wrap .psm-code-table th,
    body.single-product_guide .psm-code-wrap .psm-code-table td {
        font-size: 9px !important;
        line-height: 1.1 !important;

        padding: 4px 3px !important;
    }
}/* End custom CSS */