.elementor-22731 .elementor-element.elementor-element-e66e76a{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:center;--padding-top:50px;--padding-bottom:70px;--padding-left:50px;--padding-right:50px;}.elementor-22731 .elementor-element.elementor-element-3d61345{width:var( --container-widget-width, 50% );max-width:50%;--container-widget-width:50%;--container-widget-flex-grow:0;}.elementor-22731 .elementor-element.elementor-element-3d61345.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-22731 .elementor-element.elementor-element-3d61345 img{width:50%;}.elementor-22731 .elementor-element.elementor-element-7fc06ee{--display:flex;}.elementor-22731 .elementor-element.elementor-element-19e0baf{width:var( --container-widget-width, 100% );max-width:100%;--container-widget-width:100%;--container-widget-flex-grow:0;}.elementor-22731 .elementor-element.elementor-element-0eb5dfb > .elementor-widget-container{padding:0px 0px 0px 0px;}.elementor-22731 .elementor-element.elementor-element-0eb5dfb .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:last-child){padding-block-end:calc(10px/2);}.elementor-22731 .elementor-element.elementor-element-0eb5dfb .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:first-child){margin-block-start:calc(10px/2);}.elementor-22731 .elementor-element.elementor-element-0eb5dfb .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item{margin-inline:calc(10px/2);}.elementor-22731 .elementor-element.elementor-element-0eb5dfb .elementor-icon-list-items.elementor-inline-items{margin-inline:calc(-10px/2);}.elementor-22731 .elementor-element.elementor-element-0eb5dfb .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after{inset-inline-end:calc(-10px/2);}.elementor-22731 .elementor-element.elementor-element-0eb5dfb .elementor-icon-list-icon i{color:var( --e-global-color-be13655 );transition:color 0.3s;}.elementor-22731 .elementor-element.elementor-element-0eb5dfb .elementor-icon-list-icon svg{fill:var( --e-global-color-be13655 );transition:fill 0.3s;}.elementor-22731 .elementor-element.elementor-element-0eb5dfb{--e-icon-list-icon-size:14px;--icon-vertical-offset:0px;}.elementor-22731 .elementor-element.elementor-element-0eb5dfb .elementor-icon-list-text{color:var( --e-global-color-text );transition:color 0.3s;}.elementor-22731 .elementor-element.elementor-element-62d35f4{--display:grid;--e-con-grid-template-columns:repeat(3, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-22731 .elementor-element.elementor-element-7804631{--display:flex;border-style:solid;--border-style:solid;border-width:1px 1px 1px 1px;--border-top-width:1px;--border-right-width:1px;--border-bottom-width:1px;--border-left-width:1px;border-color:var( --e-global-color-secondary );--border-color:var( --e-global-color-secondary );--padding-top:50px;--padding-bottom:50px;--padding-left:50px;--padding-right:50px;}.elementor-22731 .elementor-element.elementor-element-73071d7 > .elementor-widget-container{padding:0px 0px 20px 0px;}.elementor-22731 .elementor-element.elementor-element-73071d7{text-align:start;}.elementor-22731 .elementor-element.elementor-element-aaf6aab{--display:flex;border-style:solid;--border-style:solid;border-width:1px 1px 1px 1px;--border-top-width:1px;--border-right-width:1px;--border-bottom-width:1px;--border-left-width:1px;border-color:var( --e-global-color-secondary );--border-color:var( --e-global-color-secondary );--padding-top:50px;--padding-bottom:50px;--padding-left:50px;--padding-right:50px;}.elementor-22731 .elementor-element.elementor-element-bf61630 > .elementor-widget-container{padding:0px 0px 20px 0px;}.elementor-22731 .elementor-element.elementor-element-bf61630{text-align:start;}.elementor-22731 .elementor-element.elementor-element-7747db3{--display:flex;border-style:solid;--border-style:solid;border-width:1px 1px 1px 1px;--border-top-width:1px;--border-right-width:1px;--border-bottom-width:1px;--border-left-width:1px;border-color:var( --e-global-color-secondary );--border-color:var( --e-global-color-secondary );--padding-top:50px;--padding-bottom:50px;--padding-left:50px;--padding-right:50px;}.elementor-22731 .elementor-element.elementor-element-27c3ae8 > .elementor-widget-container{padding:0px 0px 20px 0px;}.elementor-22731 .elementor-element.elementor-element-27c3ae8{text-align:start;}.elementor-22731 .elementor-element.elementor-element-10fa7fc{--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;--margin-top:50px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-22731 .elementor-element.elementor-element-3e1dc61{width:100%;max-width:100%;text-align:center;}.elementor-22731 .elementor-element.elementor-element-3e1dc61 > .elementor-widget-container{background-color:var( --e-global-color-text );margin:0px 0px 0px 0px;padding:10px 10px 10px 10px;}.elementor-22731 .elementor-element.elementor-element-3e1dc61 .elementor-heading-title{color:var( --e-global-color-f539929 );}.elementor-22731 .elementor-element.elementor-element-c9485c5 > .elementor-widget-container{padding:0px 0px 50px 0px;}.elementor-22731 .elementor-element.elementor-element-7f0ea58{width:100%;max-width:100%;text-align:center;}.elementor-22731 .elementor-element.elementor-element-7f0ea58 > .elementor-widget-container{background-color:var( --e-global-color-text );margin:0px 0px 0px 0px;padding:10px 10px 10px 10px;}.elementor-22731 .elementor-element.elementor-element-7f0ea58 .elementor-heading-title{color:var( --e-global-color-f539929 );}.elementor-22731 .elementor-element.elementor-element-9efa902 > .elementor-widget-container{padding:0px 0px 50px 0px;}.elementor-22731 .elementor-element.elementor-element-13d6b61f{--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;--margin-top:50px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-22731 .elementor-element.elementor-element-35d27c0a{width:100%;max-width:100%;text-align:center;}.elementor-22731 .elementor-element.elementor-element-35d27c0a > .elementor-widget-container{background-color:var( --e-global-color-text );margin:0px 0px 0px 0px;padding:10px 10px 10px 10px;}.elementor-22731 .elementor-element.elementor-element-35d27c0a .elementor-heading-title{color:var( --e-global-color-f539929 );}.elementor-22731 .elementor-element.elementor-element-4272ee1{--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:50px;--padding-right:50px;}.elementor-22731 .elementor-element.elementor-element-9a5272e img{width:93%;}.elementor-22731 .elementor-element.elementor-element-83d863a > .elementor-widget-container{padding:0px 0px 30px 0px;}.elementor-22731 .elementor-element.elementor-element-6223a37{width:100%;max-width:100%;}.elementor-22731 .elementor-element.elementor-element-6223a37 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-22731 .elementor-element.elementor-element-4eb819f{--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;}.elementor-22731 .elementor-element.elementor-element-d8d2b19{width:100%;max-width:100%;text-align:center;}.elementor-22731 .elementor-element.elementor-element-d8d2b19 > .elementor-widget-container{background-color:var( --e-global-color-text );margin:0px 0px 0px 0px;padding:10px 10px 10px 10px;}.elementor-22731 .elementor-element.elementor-element-d8d2b19 .elementor-heading-title{color:var( --e-global-color-f539929 );}.elementor-22731 .elementor-element.elementor-element-9049cf2{width:100%;max-width:100%;}.elementor-22731 .elementor-element.elementor-element-0eccc97{width:100%;max-width:100%;}@media(max-width:1200px){.elementor-22731 .elementor-element.elementor-element-e66e76a{--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-22731 .elementor-element.elementor-element-3d61345 img{width:75%;}.elementor-22731 .elementor-element.elementor-element-62d35f4{--grid-auto-flow:row;--padding-top:020px;--padding-bottom:020px;--padding-left:10px;--padding-right:10px;}.elementor-22731 .elementor-element.elementor-element-7804631{--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-22731 .elementor-element.elementor-element-aaf6aab{--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-22731 .elementor-element.elementor-element-7747db3{--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-22731 .elementor-element.elementor-element-10fa7fc{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:20px;--padding-bottom:20px;--padding-left:10px;--padding-right:10px;}.elementor-22731 .elementor-element.elementor-element-3e1dc61 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-22731 .elementor-element.elementor-element-3e1dc61 .elementor-heading-title{font-size:20px;}.elementor-22731 .elementor-element.elementor-element-c9485c5 > .elementor-widget-container{margin:10px 10px 10px 10px;padding:0px 0px 0px 0px;}.elementor-22731 .elementor-element.elementor-element-7f0ea58 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-22731 .elementor-element.elementor-element-7f0ea58 .elementor-heading-title{font-size:20px;}.elementor-22731 .elementor-element.elementor-element-9efa902 > .elementor-widget-container{margin:10px 10px 10px 10px;}.elementor-22731 .elementor-element.elementor-element-13d6b61f{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-22731 .elementor-element.elementor-element-4272ee1{--padding-top:20px;--padding-bottom:20px;--padding-left:10px;--padding-right:10px;}.elementor-22731 .elementor-element.elementor-element-9a5272e > .elementor-widget-container{padding:0px 0px 30px 0px;}.elementor-22731 .elementor-element.elementor-element-9a5272e img{width:100%;}.elementor-22731 .elementor-element.elementor-element-83d863a > .elementor-widget-container{margin:10px 10px 10px 10px;padding:0px 0px 0px 0px;}.elementor-22731 .elementor-element.elementor-element-6223a37 > .elementor-widget-container{margin:0% 0% -5% 0%;}.elementor-22731 .elementor-element.elementor-element-4eb819f{--padding-top:20px;--padding-bottom:20px;--padding-left:10px;--padding-right:10px;}.elementor-22731 .elementor-element.elementor-element-d8d2b19 .elementor-heading-title{font-size:20px;}.elementor-22731 .elementor-element.elementor-element-9049cf2 > .elementor-widget-container{margin:0% 0% -3% 0%;}.elementor-22731 .elementor-element.elementor-element-0eccc97 > .elementor-widget-container{margin:0% 0% -3% 0%;}}@media(max-width:767px){.elementor-22731 .elementor-element.elementor-element-e66e76a{--content-width:100%;--justify-content:center;--padding-top:10px;--padding-bottom:10px;--padding-left:10px;--padding-right:10px;}.elementor-22731 .elementor-element.elementor-element-3d61345{--container-widget-width:264px;--container-widget-flex-grow:0;width:var( --container-widget-width, 264px );max-width:264px;}.elementor-22731 .elementor-element.elementor-element-3d61345.elementor-element{--align-self:center;}.elementor-22731 .elementor-element.elementor-element-0eb5dfb > .elementor-widget-container{padding:20px 0px 30px 0px;}.elementor-22731 .elementor-element.elementor-element-0eb5dfb{--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-22731 .elementor-element.elementor-element-62d35f4{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;--padding-top:10px;--padding-bottom:10px;--padding-left:10px;--padding-right:10px;}.elementor-22731 .elementor-element.elementor-element-7804631{--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-22731 .elementor-element.elementor-element-aaf6aab{--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-22731 .elementor-element.elementor-element-7747db3{--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-22731 .elementor-element.elementor-element-10fa7fc{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:10px;--padding-bottom:10px;--padding-left:10px;--padding-right:10px;}.elementor-22731 .elementor-element.elementor-element-3e1dc61 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-22731 .elementor-element.elementor-element-7f0ea58 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-22731 .elementor-element.elementor-element-13d6b61f{--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-22731 .elementor-element.elementor-element-35d27c0a > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-22731 .elementor-element.elementor-element-4272ee1{--content-width:100%;--justify-content:center;--padding-top:10px;--padding-bottom:10px;--padding-left:10px;--padding-right:10px;}.elementor-22731 .elementor-element.elementor-element-4eb819f{--padding-top:10px;--padding-bottom:10px;--padding-left:10px;--padding-right:10px;}.elementor-22731 .elementor-element.elementor-element-d8d2b19 > .elementor-widget-container{margin:0px 0px 0px 0px;}}/* Start custom CSS *//* =========================================================
   PSM FASTENERS - SPRING LATCHES
   GLOBAL RESPONSIVE SPECIFICATION TABLES

   DESKTOP:
   - Full width
   - Inherits website / Elementor typography

   TABLET:
   - Full Elementor column width
   - Body / data: 11px
   - Headers: 10px
   - Horizontal scrolling available when needed
   - Clearly visible scrollbar
   - No unwanted right-side gap

   MOBILE:
   - Wrapper fills complete column width
   - Horizontal scrolling retained
   - Body / data: 11px
   - Headers: 10px
   - Small mobile does not shrink further
   - Clearly visible scrollbar
   - Exact table widths prevent trailing blank space
   ========================================================= */


/* =========================================================
   ROOT
   ========================================================= */

.psm-spring-latches,
.psm-spring-latches * {
    box-sizing: border-box;
}


.psm-spring-latches {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;

    font-family: inherit;
    font-size: inherit;
    line-height: inherit;
    color: inherit;
}


/* =========================================================
   ELEMENTOR SAFETY
   ========================================================= */

.elementor-widget-html:has(.psm-spring-latches),
.elementor-widget-html:has(.psm-spring-latches) .elementor-widget-container,
.elementor-widget-container:has(.psm-spring-latches) {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;

    margin-left: 0 !important;
    margin-right: 0 !important;
}


/* =========================================================
   TABLE WRAPPER
   ========================================================= */

.psm-spring-latches .psm-table-wrap {
    position: relative;
    display: block;

    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;

    margin: 0 0 24px !important;

    padding-left: 0 !important;
    padding-right: 0 !important;
    padding-bottom: 10px !important;

    overflow-x: auto !important;
    overflow-y: hidden !important;

    -webkit-overflow-scrolling: touch;
    overscroll-behavior-x: contain;

    scrollbar-width: auto;
    scrollbar-color: #079be5 #d9e1e6;
}


/* =========================================================
   VISIBLE HORIZONTAL SCROLLBAR
   CHROME / EDGE / SAFARI
   ========================================================= */

.psm-spring-latches .psm-table-wrap::-webkit-scrollbar {
    width: 12px;
    height: 12px;
}


.psm-spring-latches .psm-table-wrap::-webkit-scrollbar-track {
    background: #d9e1e6;

    border-radius: 20px;
}


.psm-spring-latches .psm-table-wrap::-webkit-scrollbar-thumb {
    background: #079be5;

    border: 2px solid #d9e1e6;
    border-radius: 20px;

    min-width: 44px;
}


.psm-spring-latches .psm-table-wrap::-webkit-scrollbar-thumb:hover {
    background: #067dbb;
}


/* =========================================================
   BASE TABLE
   ========================================================= */

.psm-spring-latches .psm-data-table {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;

    margin: 0 !important;
    padding: 0 !important;

    border-collapse: collapse;
    border-spacing: 0;

    table-layout: fixed;

    font-family: inherit;
    font-size: inherit;
    line-height: 1.25;

    color: inherit;
    background: #ffffff;
}


/* =========================================================
   REMOVE EXTRA TABLE MARGINS
   ========================================================= */

.psm-spring-latches .psm-table-wrap > .psm-data-table {
    margin-left: 0 !important;
    margin-right: 0 !important;
}


/* =========================================================
   CELLS
   ========================================================= */

.psm-spring-latches .psm-data-table th,
.psm-spring-latches .psm-data-table td {
    border: 1px solid #222222;

    padding: 8px 10px;

    text-align: center;
    vertical-align: middle;

    font-family: inherit;
    font-size: inherit;
    line-height: inherit;

    word-break: normal;
    overflow-wrap: normal;
}


/* =========================================================
   HEADER
   ========================================================= */

.psm-spring-latches .psm-data-table thead th {
    background: #079be5;
    color: #ffffff;

    font-weight: 600;

    text-transform: none;

    text-align: center;
    vertical-align: middle;

    white-space: normal;

    word-break: normal;
    overflow-wrap: normal;
}


/* =========================================================
   BODY
   ========================================================= */

.psm-spring-latches .psm-data-table tbody td {
    font-weight: 600;
}


.psm-spring-latches .psm-data-table tbody tr:nth-child(odd) td {
    background: #ffffff;
}


.psm-spring-latches .psm-data-table tbody tr:nth-child(even) td {
    background: #e2eef7;
}


/* =========================================================
   TABLE 1 - DIMENSIONS
   ========================================================= */

.psm-spring-latches .psm-table-dimensions {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;

    table-layout: fixed !important;
}


/* Column proportions */

.psm-spring-latches .psm-table-dimensions th:nth-child(1),
.psm-spring-latches .psm-table-dimensions td:nth-child(1) {
    width: 11%;
}


.psm-spring-latches .psm-table-dimensions th:nth-child(2),
.psm-spring-latches .psm-table-dimensions td:nth-child(2) {
    width: 14%;
}


.psm-spring-latches .psm-table-dimensions th:nth-child(3),
.psm-spring-latches .psm-table-dimensions td:nth-child(3) {
    width: 19%;
}


.psm-spring-latches .psm-table-dimensions th:nth-child(n+4),
.psm-spring-latches .psm-table-dimensions td:nth-child(n+4) {
    width: 11%;
}


/* =========================================================
   TABLE 2 - TORQUE
   ========================================================= */

.psm-spring-latches .psm-table-torque {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;

    table-layout: fixed !important;
}


.psm-spring-latches .psm-table-torque th,
.psm-spring-latches .psm-table-torque td {
    width: 16.6667% !important;
    min-width: 0 !important;
}


/* =========================================================
   TABLE 3 - FINISHES
   ========================================================= */

.psm-spring-latches .psm-table-finishes {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;

    table-layout: fixed !important;
}


/* CODE */

.psm-spring-latches .psm-table-finishes th:nth-child(1),
.psm-spring-latches .psm-table-finishes td:nth-child(1) {
    width: 9% !important;

    white-space: nowrap;
}


/* DESCRIPTION */

.psm-spring-latches .psm-table-finishes th:nth-child(2),
.psm-spring-latches .psm-table-finishes td:nth-child(2) {
    width: 38% !important;
}


/* COLOUR */

.psm-spring-latches .psm-table-finishes th:nth-child(3),
.psm-spring-latches .psm-table-finishes td:nth-child(3) {
    width: 24% !important;
}


/* USAGE */

.psm-spring-latches .psm-table-finishes th:nth-child(4),
.psm-spring-latches .psm-table-finishes td:nth-child(4) {
    width: 29% !important;
}


/* Allow descriptions to wrap */

.psm-spring-latches .psm-table-finishes th,
.psm-spring-latches .psm-table-finishes td {
    white-space: normal !important;

    word-break: normal !important;
    overflow-wrap: break-word !important;
}


.psm-spring-latches .psm-table-finishes th:first-child,
.psm-spring-latches .psm-table-finishes td:first-child {
    white-space: nowrap !important;
}


/* =========================================================
   TABLET
   768px - 1024px

   BODY / DATA: 11px
   HEADERS: 10px

   IMPORTANT:
   - Full visible Elementor column width
   - Horizontal scrolling enabled where needed
   - No unwanted blank space on right
   ========================================================= */

@media (min-width: 768px) and (max-width: 1024px) {

    .psm-spring-latches {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;

        font-size: 11px !important;
        line-height: 1.15 !important;
    }


    .psm-spring-latches .psm-table-wrap {
        position: relative;
        display: block;

        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;

        margin-left: 0 !important;
        margin-right: 0 !important;

        padding-left: 0 !important;
        padding-right: 0 !important;
        padding-bottom: 10px !important;

        overflow-x: auto !important;
        overflow-y: hidden !important;

        -webkit-overflow-scrolling: touch;
        overscroll-behavior-x: contain;

        scrollbar-width: auto;
        scrollbar-color: #079be5 #d9e1e6;
    }


    /* =====================================================
       TYPOGRAPHY
       ===================================================== */

    .psm-spring-latches .psm-data-table {
        font-size: 11px !important;
        line-height: 1.15 !important;
    }


    .psm-spring-latches .psm-data-table th,
    .psm-spring-latches .psm-data-table td {
        font-size: 11px !important;
        line-height: 1.15 !important;

        padding: 6px 6px !important;
    }


    .psm-spring-latches .psm-data-table thead th {
        font-size: 10px !important;
        line-height: 1.1 !important;

        padding: 6px 5px !important;

        white-space: normal !important;

        word-break: normal !important;
        overflow-wrap: normal !important;
    }


    /* =====================================================
       DIMENSIONS
       FULL TABLET WIDTH
       ===================================================== */

    .psm-spring-latches .psm-table-dimensions {
        width: 100% !important;
        min-width: 100% !important;
        max-width: 100% !important;

        margin-left: 0 !important;
        margin-right: 0 !important;

        table-layout: fixed !important;
    }


    /* =====================================================
       TORQUE
       FULL TABLET WIDTH
       ===================================================== */

    .psm-spring-latches .psm-table-torque {
        width: 100% !important;
        min-width: 100% !important;
        max-width: 100% !important;

        margin-left: 0 !important;
        margin-right: 0 !important;

        table-layout: fixed !important;
    }


    /* =====================================================
       FINISHES
       FULL TABLET WIDTH
       ===================================================== */

    .psm-spring-latches .psm-table-finishes {
        width: 100% !important;
        min-width: 100% !important;
        max-width: 100% !important;

        margin-left: 0 !important;
        margin-right: 0 !important;

        table-layout: fixed !important;
    }


    .psm-spring-latches .psm-table-finishes th,
    .psm-spring-latches .psm-table-finishes td {
        white-space: normal !important;

        word-break: normal !important;
        overflow-wrap: break-word !important;
    }


    /* =====================================================
       TABLET SCROLLBAR
       ===================================================== */

    .psm-spring-latches .psm-table-wrap::-webkit-scrollbar {
        height: 12px;
    }


    .psm-spring-latches .psm-table-wrap::-webkit-scrollbar-track {
        background: #d9e1e6;
        border-radius: 20px;
    }


    .psm-spring-latches .psm-table-wrap::-webkit-scrollbar-thumb {
        background: #079be5;

        border: 2px solid #d9e1e6;
        border-radius: 20px;

        min-width: 44px;
    }
}


/* =========================================================
   MOBILE
   <= 767px

   SAME TYPOGRAPHY AS TABLET

   IMPORTANT:
   - Wrapper fills complete mobile column
   - Exact table widths stop blank scroll space
   - Strong horizontal scrollbar
   ========================================================= */

@media (max-width: 767px) {

    .psm-spring-latches {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;

        font-size: 11px !important;
        line-height: 1.15 !important;
    }


    .psm-spring-latches .psm-table-wrap {
        position: relative;
        display: block;

        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;

        margin-left: 0 !important;
        margin-right: 0 !important;
        margin-bottom: 20px !important;

        padding-left: 0 !important;
        padding-right: 0 !important;
        padding-bottom: 10px !important;

        overflow-x: scroll !important;
        overflow-y: hidden !important;

        -webkit-overflow-scrolling: touch;
        overscroll-behavior-x: contain;

        scrollbar-width: auto;
        scrollbar-color: #079be5 #d9e1e6;

        /*
         * Subtle right-edge indication that
         * more table content continues.
         */
        box-shadow:
            inset -14px 0 12px -14px rgba(0, 0, 0, 0.55);
    }


    /* =====================================================
       STRONG MOBILE SCROLLBAR
       ===================================================== */

    .psm-spring-latches .psm-table-wrap::-webkit-scrollbar {
        height: 12px;
    }


    .psm-spring-latches .psm-table-wrap::-webkit-scrollbar-track {
        background: #d9e1e6;

        border-radius: 20px;
    }


    .psm-spring-latches .psm-table-wrap::-webkit-scrollbar-thumb {
        background: #079be5;

        border: 2px solid #d9e1e6;
        border-radius: 20px;

        min-width: 44px;
    }


    /* =====================================================
       ALL MOBILE CELLS
       ===================================================== */

    .psm-spring-latches .psm-data-table th,
    .psm-spring-latches .psm-data-table td {
        font-size: 11px !important;
        line-height: 1.15 !important;

        padding: 6px 7px !important;
    }


    /* HEADERS */

    .psm-spring-latches .psm-data-table thead th {
        font-size: 10px !important;
        line-height: 1.1 !important;

        padding: 6px 5px !important;

        white-space: normal !important;

        word-break: normal !important;
        overflow-wrap: normal !important;
    }


    /* =====================================================
       DIMENSIONS
       EXACT MOBILE SCROLL WIDTH

       Exact width + min + max prevents trailing
       blank scrollable area.
       ===================================================== */

    .psm-spring-latches .psm-table-dimensions {
        width: 800px !important;
        min-width: 800px !important;
        max-width: 800px !important;

        margin-left: 0 !important;
        margin-right: 0 !important;

        table-layout: fixed !important;
    }


    .psm-spring-latches .psm-table-dimensions tbody td {
        white-space: nowrap !important;
    }


    /* =====================================================
       TORQUE
       EXACT MOBILE SCROLL WIDTH
       ===================================================== */

    .psm-spring-latches .psm-table-torque {
        width: 700px !important;
        min-width: 700px !important;
        max-width: 700px !important;

        margin-left: 0 !important;
        margin-right: 0 !important;

        table-layout: fixed !important;
    }


    .psm-spring-latches .psm-table-torque th,
    .psm-spring-latches .psm-table-torque td {
        width: 16.6667% !important;
    }


    .psm-spring-latches .psm-table-torque tbody td {
        white-space: nowrap !important;
    }


    /* =====================================================
       FINISHES
       EXACT MOBILE SCROLL WIDTH
       ===================================================== */

    .psm-spring-latches .psm-table-finishes {
        width: 850px !important;
        min-width: 850px !important;
        max-width: 850px !important;

        margin-left: 0 !important;
        margin-right: 0 !important;

        table-layout: fixed !important;
    }


    .psm-spring-latches .psm-table-finishes th,
    .psm-spring-latches .psm-table-finishes td {
        white-space: normal !important;

        word-break: normal !important;
        overflow-wrap: break-word !important;
    }


    .psm-spring-latches .psm-table-finishes th:first-child,
    .psm-spring-latches .psm-table-finishes td:first-child {
        white-space: nowrap !important;
    }
}


/* =========================================================
   VERY SMALL MOBILE
   <= 480px

   SAME FONT SIZE
   DO NOT SHRINK FURTHER
   ========================================================= */

@media (max-width: 480px) {

    .psm-spring-latches {
        font-size: 11px !important;
        line-height: 1.15 !important;
    }


    .psm-spring-latches .psm-table-wrap {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;

        margin-left: 0 !important;
        margin-right: 0 !important;

        padding-left: 0 !important;
        padding-right: 0 !important;
        padding-bottom: 10px !important;

        overflow-x: scroll !important;
        overflow-y: hidden !important;

        -webkit-overflow-scrolling: touch;
    }


    .psm-spring-latches .psm-data-table th,
    .psm-spring-latches .psm-data-table td {
        font-size: 11px !important;
        line-height: 1.15 !important;

        padding: 6px 7px !important;
    }


    .psm-spring-latches .psm-data-table thead th {
        font-size: 10px !important;
        line-height: 1.1 !important;

        padding: 6px 5px !important;
    }


    /* DIMENSIONS */

    .psm-spring-latches .psm-table-dimensions {
        width: 800px !important;
        min-width: 800px !important;
        max-width: 800px !important;
    }


    /* TORQUE */

    .psm-spring-latches .psm-table-torque {
        width: 700px !important;
        min-width: 700px !important;
        max-width: 700px !important;
    }


    /* FINISHES */

    .psm-spring-latches .psm-table-finishes {
        width: 850px !important;
        min-width: 850px !important;
        max-width: 850px !important;
    }
}


/* =========================================================
   MOBILE SCROLL DISCOVERY MESSAGE

   Extra indication for touch devices where the native
   browser scrollbar may disappear automatically.
   ========================================================= */

@media (max-width: 767px) {

    .psm-spring-latches .psm-table-wrap::after {
        content: "\2190  Scroll table  \2192";

        position: sticky;
        left: 0;

        display: block;

        width: 100%;

        margin: 5px 0 -5px;

        padding: 3px 0 0;

        text-align: center;

        font-family: inherit;
        font-size: 10px;
        font-weight: 600;
        line-height: 1.2;

        color: #555555;

        pointer-events: none;
    }
}


/* =========================================================
   EXTRA ELEMENTOR TABLET + MOBILE PROTECTION
   ========================================================= */

@media (max-width: 1024px) {

    .elementor-widget-html:has(.psm-spring-latches) {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;

        align-self: stretch !important;
    }


    .elementor-widget-html:has(.psm-spring-latches)
    > .elementor-widget-container {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;

        margin-left: 0 !important;
        margin-right: 0 !important;

        padding-left: 0 !important;
        padding-right: 0 !important;
    }
}


/* =========================================================
   END
   PSM FASTENERS - SPRING LATCHES
   GLOBAL RESPONSIVE SPECIFICATION TABLES
   ========================================================= */


/* =========================================================
   FINAL TECH-SONIC EXACT SCROLL STANDARD
   PSM FASTENERS - SPRING LATCHES
   Updated 2026-09-10

   APPLIES TO:
   - Dimensions table
   - Torque table
   - Finishes table
   - Every .psm-spring-latches .psm-table-wrap

   TABLET + MOBILE:
   - Body / data: 11px
   - Headers: 10px
   - Same sizing on tablet/mobile/small mobile
   - Centered cue directly ABOVE scrollbar
   - 14px PSM-blue scrollbar
   - No right-edge shadow
   - No old "Scroll table" cue
   - No right-side blank strip
   - Existing responsive widths preserved
   - Desktop behaviour unchanged
   ========================================================= */

@media (max-width: 1024px) {

    /* -----------------------------------------------------
       ROOT / ELEMENTOR FULL-WIDTH PROTECTION
       ----------------------------------------------------- */

    .psm-spring-latches {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;

        font-size: 11px !important;
        line-height: 1.15 !important;
    }

    .elementor-widget-html:has(.psm-spring-latches),
    .elementor-widget-html:has(.psm-spring-latches) .elementor-widget-container,
    .elementor-widget-container:has(.psm-spring-latches) {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;

        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    .elementor-widget-html:has(.psm-spring-latches) {
        align-self: stretch !important;
    }


    /* -----------------------------------------------------
       ONE CONSISTENT SCROLL HOST
       ----------------------------------------------------- */

    .psm-spring-latches .psm-table-wrap {
        position: relative !important;
        display: block !important;

        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;

        margin-left: 0 !important;
        margin-right: 0 !important;

        overflow-x: scroll !important;
        overflow-y: hidden !important;

        -webkit-overflow-scrolling: touch;
        overscroll-behavior-x: contain;

        padding-left: 0 !important;
        padding-right: 0 !important;
        padding-bottom: 2px !important;

        scrollbar-width: auto !important;
        scrollbar-color: #129eea #dfe6ea !important;
        scrollbar-gutter: auto !important;

        box-shadow: none !important;
    }


    /* -----------------------------------------------------
       UNIFORM TECH-SONIC TYPOGRAPHY
       ----------------------------------------------------- */

    .psm-spring-latches .psm-data-table,
    .psm-spring-latches .psm-data-table th,
    .psm-spring-latches .psm-data-table td,
    .psm-spring-latches .psm-data-table tbody td {
        font-size: 11px !important;
        line-height: 1.15 !important;
    }

    .psm-spring-latches .psm-data-table thead th {
        font-size: 10px !important;
        line-height: 1.1 !important;

        padding: 6px 5px !important;
    }


    /* -----------------------------------------------------
       TABLET
       Preserve existing full-width table behaviour.
       ----------------------------------------------------- */

    .psm-spring-latches .psm-table-dimensions,
    .psm-spring-latches .psm-table-torque,
    .psm-spring-latches .psm-table-finishes {
        width: 100% !important;
        min-width: 100% !important;
        max-width: 100% !important;

        margin-left: 0 !important;
        margin-right: 0 !important;

        table-layout: fixed !important;
    }


    /* -----------------------------------------------------
       FINISHES WRAPPING
       ----------------------------------------------------- */

    .psm-spring-latches .psm-table-finishes th,
    .psm-spring-latches .psm-table-finishes td {
        white-space: normal !important;

        word-break: normal !important;
        overflow-wrap: break-word !important;
    }

    .psm-spring-latches .psm-table-finishes th:first-child,
    .psm-spring-latches .psm-table-finishes td:first-child {
        white-space: nowrap !important;
    }


    /* -----------------------------------------------------
       REMOVE ANY OLD TOP CUE
       ----------------------------------------------------- */

    .psm-spring-latches .psm-table-wrap::before {
        content: none !important;
        display: none !important;
    }


    /* -----------------------------------------------------
       EXACT TECH-SONIC BOTTOM CUE
       ----------------------------------------------------- */

    .psm-spring-latches .psm-table-wrap::after {
        content: "\2190  Swipe / scroll horizontally to view more  \2192" !important;

        position: sticky !important;
        left: 0 !important;

        display: flex !important;
        align-items: center !important;
        justify-content: center !important;

        width: 100% !important;
        min-width: 100% !important;
        max-width: 100% !important;

        box-sizing: border-box !important;

        margin: 0 !important;
        padding: 7px 8px 6px !important;

        background: #ffffff !important;
        color: #111111 !important;

        border-top: 1px solid #d7e3e9 !important;
        border-bottom: 1px solid #d7e3e9 !important;

        border-radius: 0 !important;

        font-family: inherit !important;
        font-size: 10px !important;
        font-weight: 700 !important;
        line-height: 1.2 !important;
        letter-spacing: 0 !important;

        text-align: center !important;
        white-space: nowrap !important;

        pointer-events: none !important;
        z-index: 20 !important;
    }


    /* -----------------------------------------------------
       EXACT 14PX TECH-SONIC SCROLLBAR
       ----------------------------------------------------- */

    .psm-spring-latches .psm-table-wrap::-webkit-scrollbar {
        display: block !important;

        width: 14px !important;
        height: 14px !important;

        -webkit-appearance: none;
    }

    .psm-spring-latches .psm-table-wrap::-webkit-scrollbar-track {
        background: #dfe6ea !important;

        border: 1px solid #c4d0d6 !important;
        border-radius: 2px !important;

        box-shadow: none !important;
    }

    .psm-spring-latches .psm-table-wrap::-webkit-scrollbar-thumb {
        background: #129eea !important;

        border: 2px solid #dfe6ea !important;
        border-radius: 999px !important;

        min-width: 44px !important;
    }

    .psm-spring-latches .psm-table-wrap::-webkit-scrollbar-thumb:hover {
        background: #087fc2 !important;
    }

    .psm-spring-latches .psm-table-wrap::-webkit-scrollbar-thumb:active {
        background: #075f90 !important;
    }
}


/* =========================================================
   MOBILE
   Preserve exact technical widths.
   ========================================================= */

@media (max-width: 767px) {

    .psm-spring-latches .psm-data-table,
    .psm-spring-latches .psm-data-table th,
    .psm-spring-latches .psm-data-table td,
    .psm-spring-latches .psm-data-table tbody td {
        font-size: 11px !important;
        line-height: 1.15 !important;
    }

    .psm-spring-latches .psm-data-table thead th {
        font-size: 10px !important;
        line-height: 1.1 !important;
    }


    /* Dimensions */

    .psm-spring-latches .psm-table-dimensions {
        width: 800px !important;
        min-width: 800px !important;
        max-width: 800px !important;

        margin-left: 0 !important;
        margin-right: 0 !important;

        table-layout: fixed !important;
    }


    /* Torque */

    .psm-spring-latches .psm-table-torque {
        width: 700px !important;
        min-width: 700px !important;
        max-width: 700px !important;

        margin-left: 0 !important;
        margin-right: 0 !important;

        table-layout: fixed !important;
    }


    /* Finishes */

    .psm-spring-latches .psm-table-finishes {
        width: 850px !important;
        min-width: 850px !important;
        max-width: 850px !important;

        margin-left: 0 !important;
        margin-right: 0 !important;

        table-layout: fixed !important;
    }


    .psm-spring-latches .psm-table-wrap::after {
        padding: 7px 6px 6px !important;

        font-size: 10px !important;
        line-height: 1.2 !important;

        text-align: center !important;
        justify-content: center !important;
    }
}


/* =========================================================
   VERY SMALL MOBILE
   SAME SIZE - DO NOT SHRINK FURTHER
   ========================================================= */

@media (max-width: 480px) {

    .psm-spring-latches .psm-data-table,
    .psm-spring-latches .psm-data-table th,
    .psm-spring-latches .psm-data-table td,
    .psm-spring-latches .psm-data-table tbody td {
        font-size: 11px !important;
        line-height: 1.15 !important;
    }

    .psm-spring-latches .psm-data-table thead th {
        font-size: 10px !important;
        line-height: 1.1 !important;
    }

    .psm-spring-latches .psm-table-dimensions {
        width: 800px !important;
        min-width: 800px !important;
        max-width: 800px !important;
    }

    .psm-spring-latches .psm-table-torque {
        width: 700px !important;
        min-width: 700px !important;
        max-width: 700px !important;
    }

    .psm-spring-latches .psm-table-finishes {
        width: 850px !important;
        min-width: 850px !important;
        max-width: 850px !important;
    }

    .psm-spring-latches .psm-table-wrap::after {
        padding: 7px 5px 6px !important;

        font-size: 10px !important;
        line-height: 1.2 !important;
    }
}/* End custom CSS */