/*
Theme Name: Bamboo Nine
Author: Philippe Bailey
Author URI: https://www.bamboonine.co.uk
Description: Bamboo Nine custom theme developed for Bamboo Nine customers.
Version: 1.0
*/

/* Browser Reset */
@import "css/defaults/browserReset.css";

/* Style Guide */
@import "css/defaults/styleGuide.css";

/* Image and text block Stylesheet */
@import "css/blocks/image-and-text.css";

/* Image and text header block stylesheet */
@import "css/blocks/image-and-text-header.css";

/* Image and text header block stylesheet */
@import "css/theme/base.css";

/* Aspect Ratio Images */
.img-responsive {
    display: block;
    max-width: 100%;
    height: auto;
}

/* All Sections */
section {
    padding: var(--containerSpacing) 0px;
}
header .container{
    max-width: 1600px;
}
main .container,
footer .container  {
    max-width: 1280px;
}
.container {
    margin-left: auto !important;
    margin-right: auto !important;
}
h1.bar, h2.bar, h3.bar, h4.bar, h5.bar, h6.bar {
    border-left: var(--safetyGreen) solid 2px;
    line-height: unset;
    padding: 6px 0 6px 20px;
}
h1.bar-white, h2.bar-white, h3.bar-white, h4.bar-white, h5.bar-white, h5.bar-white {
    border-left: var(--safetyWhite) solid 2px;
    line-height: unset;
    color: var(--safetyWhite)
}

h1.bar-bottom, h2.bar-bottom, h3.bar-bottom, h4.bar-bottom, h5.bar-bottom, h6.bar-bottom {
    border-bottom: var(--safetyGreen) solid 2px;
    line-height: unset;
    padding-bottom: 20px;
}
h1.bold, h2.bold, h3.bold, h4.bold, h5.bold, h6.bold, .bold {
    font-weight: bold;
}
.full-container.bg-grey {
    background-color: var(--lightGrey10);
}
.full-container.bg-white {
    background-color: var(--safetyWhite);
}

/* Background Overlay Colours */
.bg-grey-dark, .bg-overlay-grey-dark { background-color: var(--darkGrey); }
.bg-grey-dark20, .bg-overlay-grey-dark20 { background-color: var(--darkGrey20); }
.bg-grey-dark40, .bg-overlay-grey-dark40 { background-color: var(--darkGrey40); }
.bg-grey-dark60, .bg-overlay-grey-dark60 { background-color: var(--darkGrey60); }
.bg-grey-dark80, .bg-overlay-grey-dark80 { background-color: var(--darkGrey80); }
.bg-grey-light, .bg-overlay-grey-light { background-color: var(--lightGrey); }
.bg-grey-light10, .bg-overlay-grey-light10 { background-color: var(--lightGrey10); }
.bg-grey-light20, .bg-overlay-grey-light20 { background-color: var(--lightGrey20); }
.bg-grey-light40, .bg-overlay-grey-light40 { background-color: var(--lightGrey40); }
.bg-grey-light60, .bg-overlay-grey-light60 { background-color: var(--lightGrey60); }
.bg-grey-light80, .bg-overlay-grey-light80 { background-color: var(--lightGrey80); }
.bg-white, .bg-overlay-white { background-color: var(--safetyWhite); }
.bg-white20, .bg-overlay-white20 { background-color: var(--safetyWhite20); background-blend-mode: overlay; }
.bg-white40, .bg-overlay-white40 { background-color: var(--safetyWhite40); background-blend-mode: overlay; }
.bg-white60, .bg-overlay-white60 { background-color: var(--safetyWhite60); background-blend-mode: overlay; }
.bg-white80, .bg-overlay-white80 { background-color: var(--safetyWhite80); background-blend-mode: overlay; }
.bg-green, .bg-overlay-green { background-color: var(--safetyGreen); }
.bg-green20, .bg-overlay-green20 { background-color: var(--safetyGreen20); }
.bg-green40, .bg-overlay-green40 { background-color: var(--safetyGreen40); }
.bg-green60, .bg-overlay-green60 { background-color: var(--safetyGreen60); }
.bg-green80, .bg-overlay-green80 { background-color: var(--safetyGreen80); }

.bg-overlay-blend { background-blend-mode: multiply; }

/* Colours */
.text-green,
.text-green p,
.text-green li,
.heading.green,
.heading.text-green {
    color: var(--safetyGreen);
}
.text-grey-light,
.text-grey-light p,
.text-grey-light li,
.heading.grey-light,
.heading.text-grey-light {
    color: var(--lightGrey60);
}
.text-grey-dark,
.text-grey-dark p,
.text-grey-dark li,
.heading.grey-dark,
.heading.text-grey-dark {
    color: var(--darkGrey);
}
.text-white,
.text-white p,
.text-white li,
.heading.white,
.heading.text-white {
    color: var(--safetyWhite);
}

/* Flex Direction */
.flex-content-left { flex-direction: row; }
.flex-content-right { flex-direction: row-reverse; }

/* Flex Inner Content Position */
.align-top, .flex-row.align-left { justify-content: start }
.align-middle, .flex-row.align-center { justify-content: center }
.align-bottom, .flex-row.align-right { justify-content: end }

.flex-column.align-left { align-items: start; text-align: left;  }
.flex-column.align-center { align-items: center; text-align: center; }
.flex-column.align-right { align-items: end; text-align: right; }

/* Grid Content */
.product-category-section .product-category-inner,
.blog-posts .posts-container {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 40px;
}

/* Text Alignment */
.align-left { text-align: left;}
.align-center { text-align: center;}
.align-right { text-align: right;}

/* Buttons */
a.button.outline,
.cta-buttons a.button.outline,
.sidebar-cta .cta-buttons button.outline {
    background-color: var(--safetyWhite);
    border: var(--safetyGreen) solid 2px;
    color: var(--safetyGreen);
    padding: 14px 30px;
    border-radius: 5px;
}
a.button.outline:hover,
.cta-buttons a.button.outline:hover,
.sidebar-cta .cta-buttons button.outline:hover {
    background-color: var(--darkGrey);
    color: var(--safetyWhite);
}

.cta-buttons a.button.outline {
    padding: 15px 30px;
}



/* Header */
header {
    background-color: var(--lightGrey10);
    position: fixed;
    width: 100%;
    z-index: 100;
}
header .site-logo img {
    max-width: 140px;
    height: auto;
}

header .bar-top {
    background-color: var(--safetyGreen);
}

header .bar-top a,
header .bar-top div,
header .bar-top span {
    color: var(--white);
}

header .bar-top a {
    font-weight: bold;
}

header .nav-row {
    display: flex;
    justify-content: space-between;
    /* grid-template-columns: 1fr 2fr minmax(480px, 1fr); */
}

header .site-branding,
header .search-form,
header .main-nav {
    flex: 1 1 auto;
}
header .site-branding {
    flex-basis: 15%;
}
header .search-form {
    display: flex;
    flex-basis: 40%;
    justify-content: flex-end;
    margin: 0 20px;
}
header .search-form .search-modal-bg {
    width: 100%;
    max-width: 500px;
}

/* Header Navigation Row */
header .nav-row ul,
footer .footer-nav ul {
    list-style-type: none;
}

header .nav-row ul,
header .nav-row li,
header .nav-row li a,
footer .footer-nav ul,
footer .footer-nav li {
    padding: 0; margin: 0;
}
header .menu-wrapper a.main-link-item {
    color: var(--darkGrey80);
    font-weight: bold;
}
header .menu-wrapper a:hover {
    color: var(--safetyGreen);
}
header .nav-row .menu-wrapper .button a,
header .nav-row .menu-wrapper .button a:hover {
    color: var(--safetyWhite);
    border-radius: 3px;
    padding: 15px 30px;
}

header .menu-wrapper .button a:hover {
    background-color: var(--darkGrey);
}

header .menu-wrapper .button span {
    color: var(--safetyWhite);
}
header .site-nav {
    align-items: baseline;
}
header .site-nav button.button-modal {
    margin-left: 20px;
}

/* Email Icon */
.email-icon,
.email-icon::after {
    display: block;
    box-sizing: border-box;
    height: 14px;
    border: 2px solid
}
.email-icon {
    overflow: hidden;
    transform: scale(1.15);
    position: relative;
    width: 18px;
    border-radius: 2px
}
.email-icon::after {
    content: "";
    position: absolute;
    border-radius: 3px;
    width: 14px;
    transform: rotate(-45deg);
    bottom: 3px;
    left: 0
}
/* Download Arrow Icon */
.download-arrow {
    background: url(assets/download.svg) no-repeat;
    width: 15px;
    height: 14px;
    scale: 1.3;
}

/* Main Content */
main.content,
footer {
    position: relative;
    top: 148px;
}
/* Remove underline from menu items */
.menu-wrapper a {
    border-bottom: none;
    text-decoration: none;
}
/* Menu - Desktop */
@media screen and (min-width: 1080px) {
    /* Mobile Menu - disable scrolling when open */
    html.is-hidden, body.is-hidden {
        overflow: unset !important;
    }
    .menu-wrapper > li > a {
        text-wrap: nowrap;
    }
    .menu-wrapper > .mega-menu:hover > a {
        position: relative;
        padding: 20px 0;
    }
    /* Triangle after Mega Menu item */
    .menu-wrapper > .mega-menu:hover > a.main-link-item::after {
        content: '';
        display: block;
        position: absolute;
        width: 0;
        height: 0px;
        left:50%; 
        bottom: -1px;
        transform: translateX(-50%);
        border-left: 15px solid transparent;
        border-right: 15px solid transparent;
        border-bottom: 20px solid white;
        z-index: 10;
        /* opacity: 1; transition: border-left 0.3s 1s, border-right 0.4s 1s, border-bottom 0.5s 1s; */
    }
    .menu-wrapper > .mega-menu >  ul.sub-menu {
        position: fixed;
        background: none;
        /* clip-path: inset(50%); */
        width: 100%;
        max-width: 1280px;
        height: 1px;
        min-height: 0px;
        overflow: hidden;
        margin:  -1px auto auto;
        left: 0; right: 0;
        opacity: 0; 
        /* transition: min-height 0.5s 0.35s, opacity 0.35s, margin 0.5s 0.35s; */
    }
    .menu-wrapper > .mega-menu:hover >  ul.sub-menu {
        display: flex;
        flex-direction: column;
        position: fixed;
        background-color: white;
        box-shadow: 0px 0px 25px #00000029;
        /* clip-path: initial; */
        width: 100%;
        max-width: 1280px;
        height: auto;
        min-height: 410px;
        overflow: visible;
        margin: 20px auto auto;
        padding: 80px;

        left: 0; right: 0;
        opacity: 1; 
        /* transition: min-height 0.1s, opacity 0.5s 0.1s; */
    }
    .menu-wrapper > .mega-menu:hover > ul.sub-menu li {
        margin-bottom: 20px;
    }
    /* Disable Responsive Links in Desktop */
    .menu-wrapper > .mega-menu a.sub-menu-link,
    .menu-wrapper > .mega-menu:hover li a.sub-menu-link,
    .menu-wrapper > .mega-menu:hover ul.sub-menu li a.sub-menu-link {
        display: none;
    }
    /* First Level sub-menu item link styles */
    .menu-wrapper > .mega-menu:hover > a ~ ul.sub-menu li a {
        display: block;
        color: var(--darkGrey);
        font-size: 20px;
        font-weight: bold;
        width: 100%;
    }
    .menu-wrapper > .mega-menu> ul.sub-menu > li  > ul.sub-menu {
        display: none;
        opacity: 0;
        transition: opacity 1250ms;
    }
    .menu-wrapper > .mega-menu> ul.sub-menu > li:hover  > ul.sub-menu {
        display: grid;
        position: absolute;
        top: 0;
        left: 450px;
        width: 100%;
        max-width: 65%;
        height: 100%;
        padding: 80px 0;
        align-content: start;
        opacity: 1;
        transition: opacity 500ms;
    }    
    
    .menu-wrapper > .menu-item:hover > ul.sub-menu li a:hover {
        color: var(--safetyGreen);
    }
    
    .menu-wrapper > .mega-menu:hover > ul.sub-menu > li a {
        width: 100%;
        max-width: 300px;
        position: relative;
    }
    .menu-wrapper > .mega-menu:hover > ul.sub-menu li:hover ul.sub-menu li a {
        font-size: 16px;
        font-weight: normal;
        max-width: 450px;
    }
    /* Sub-menu arrows */
    .menu-wrapper > .mega-menu:hover > ul.sub-menu > li.menu-item-has-children > a.main-link-item::before {
        content: '';
        position: absolute;
        background: url(../bambooNine/assets/arrow.svg);
        background-repeat: no-repeat;
        background-size: cover;
        width: 20px;
        height: 20px;
        top: 50%;
        right: 0;
        transform: translateY(-50%);
    }
    .menu-wrapper > .mega-menu:hover > ul.sub-menu > li > a:hover::before {
        filter: invert(47%) sepia(84%) saturate(6526%) hue-rotate(131deg) brightness(91%) contrast(89%);
    }

    /* Mega Menu image */
    .menu-wrapper > .mega-menu > ul.sub-menu > li a ~ .mega-menu-image {
        opacity: 0;
        transition: opacity 500ms;
    }
    .menu-wrapper > .mega-menu > ul.sub-menu > li a:hover ~ .mega-menu-image {
        width: 250px;
        height: 250px;
        position: absolute;
        top: 0; right: 0;
        margin: 80px 80px 80px 0;
        box-shadow: 0px 0px 25px #00000029;
        opacity: 1;
        transition: opacity 500ms;
    } 
}
@media screen and (max-width: 1279px) {
    /* Mobile Menu - disable scrolling when open */
    html.is-hidden, body.is-hidden {
        overflow: hidden;
    }
}
/* Menu - Tablet */
@media screen and (min-width: 1081px) and (max-width: 1279px) {
    .menu-wrapper > .mega-menu:hover > ul.sub-menu {
        padding: 80px 60px;
    }
    .menu-wrapper > .mega-menu> ul.sub-menu > li:hover > ul.sub-menu {
        left: 430px;
    }
    .menu-wrapper > .mega-menu > ul.sub-menu > li a:hover ~ .mega-menu-image {
        margin: 80px 60px 80px 0;
        right:58px;
    }
}
/* Menu - below Tablet */
@media screen and (max-width: 1080px) {
    /* Remove underline from menu items */
    .menu-wrapper.is-active a {
        color: var(--darkGrey);
        font-size: 20px;
        font-weight: bold;
    }
    /* Search Button */
    .site-nav button.search-modal.is-active {
        background: white;
        position: relative;
    }
    .site-nav button.search-modal.is-active svg {
        display: none;
    }
    /* Burger Menu Button */
    button#main-mobile-menu {
        background: none;
        padding: 15px;
        border-radius: 0;
        position: relative;
    }
    button#main-mobile-menu .dropdown-icon.open,
    button#main-mobile-menu .dropdown-icon.open::before,
    button#main-mobile-menu .dropdown-icon.open::after,
    button#main-mobile-menu .dropdown-icon.close::before,
    button#main-mobile-menu .dropdown-icon.close::after,
    .site-nav button.search-modal.is-active .search-icon-text.close::before,
    .site-nav button.search-modal.is-active .search-icon-text.close::after {
        content: '';
        position: absolute;
        display: block;
        background: var(--safetyGreen);
        top: 0;
        left: 0;
        width: 100%;
        height: 5px;
    }
    button#main-mobile-menu .dropdown-icon.open::before {
        top: 9px;
    }
    button#main-mobile-menu .dropdown-icon.open::after {
        top: 18px;
    }
    .site-nav button.search-modal.is-active .search-icon-text.close::before,
    button#main-mobile-menu .dropdown-icon.close::before {
        transform: rotate(45deg);
    }
    .site-nav button.search-modal.is-active .search-icon-text.close::after,
    button#main-mobile-menu .dropdown-icon.close::after {
        transform: rotate(135deg);
    }
    .site-nav button.search-modal.is-active,
    button#main-mobile-menu.is-active {
        position: absolute;
        top: 30px;
        right: 20px;    
        z-index: 2;
        bottom: unset;
    }
    #main-mobile-menu.is-active .dropdown-icon.close {
        margin-bottom: 0;
    }
    
    /* Re-order Burger and Button */
    header .site-nav button.button-modal {
        margin: 0 auto;
        order: 0;
    }
    .menu-button-container {
        order: 1;
    }
    /* Responsive Menu */
    .main-menu-container,
    #main-mobile-menu .dropdown-icon.close,
    #main-mobile-menu.is-active .dropdown-icon.open,
    .menu-wrapper.is-active > .mega-menu ul.sub-menu {
        display: none;
    }
   .main-menu-container.is-active,
   #main-mobile-menu.is-active .dropdown-icon.close {
        display: block;
        z-index: 1;
    }
    /* Main Menu Items */
    .menu-wrapper.is-active li.menu-item {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        width: 100%;
    }
    .main-menu-container.is-active .menu-wrapper.is-active,
    .menu-wrapper.is-active > li ul.sub-menu.is-active  {
        display: flex;
        flex-direction: column;
        flex-wrap: wrap;
    }
    .menu-wrapper.is-active li.menu-item a.main-link-item {
        flex-basis: 80%;
    }
    .menu-wrapper.is-active li.menu-item a.main-link-item.active {
        flex-basis: 80%;
    }
    .menu-wrapper.is-active li.menu-item a.sub-menu-link {
        flex-basis: 20%;
    }
    .menu-wrapper.is-active a.main-link-item {
        transition-duration: 200ms;
    }
    .menu-wrapper.is-active a.main-link-item.is-active {
        color: var(--safetyGreen);
        transition: color 250ms;
    }
    /* Sub-Menu Items */
    .menu-wrapper.is-active > li.mega-menu ul.sub-menu.is-active {
        margin-left: 20px;
        margin-bottom: 0;
        width: 100%;
    }
    .menu-wrapper.is-active > li.mega-menu ul.sub-menu.is-active > li {
        margin-top: 20px;
    }
    .menu-wrapper.is-active > li.mega-menu a.sub-menu-link {
        text-align: right;
        
    }
    .menu-wrapper.is-active > li.mega-menu a.sub-menu-link img {
        transition-duration: 350ms;
    }
    .menu-wrapper.is-active > li.mega-menu a.sub-menu-link.is-active {
        text-align: right;
    }
    .menu-wrapper.is-active > li.mega-menu a.sub-menu-link.is-active img {
        transform: rotate(90deg);
        filter: invert(47%) sepia(84%) saturate(6526%) hue-rotate(131deg) brightness(91%) contrast(89%);
        transition: transform 350ms, filter 450ms;
    }
    
    .main-menu-container.is-active {
        position: absolute;
        background: white;
        top: 0;
        left: 0;
        width: 100%;
        height: 100vh;
        padding: 80px;
    }
}

/* Top Bar */
.bar-top a {
    text-decoration: none;
    
}
.bar-top a:hover {
    color: var(--darkGrey80);
}

/* Search Form */
.search-form input,
.search-form button {
    margin: 0;
}
.search-form .search-block {
    border: var(--safetyGreen80) solid 2px;
    background-color: var(--safetyWhite);
    border-radius: 3px;
    max-width: 500px;
}
.search-form button.button {
    background-color: transparent;
    line-height: inherit;
    padding: 0;
}

.search-form .search-icon {
    -webkit-transform: scaleX(-1);
    transform: scaleX(-1);
}
.search-form .search-icon path {
    fill: var(--lightGrey60);
}

/* Simple Page Header */
.benefits-column,
.contact-form-column,
.download-column,
.simple-header-content-block {
    flex: 1 1 50%;
}
.simple-header-content-block { max-width: 66%; }

.simple-header-inner p,
.simple-header-inner h1 {
    margin-bottom: 0;
}

.simple-header-inner h1 {
    /* line-height: 60px; */
    /* padding-left: 20px; */
    border-left: var(--darkGrey) solid 2px;
}
.simple-header-inner .breadcrumbs { margin-top: 1px }

/* Breadcrumbs */
.woocommerce-breadcrumb p {
    display: inline-block;
    font-weight: bold;
    color: var(--safetyGreen);
}

/* WooCommerce Styles */
.woocommerce table.shop_attributes {
    border: none;
    margin-bottom: 10px;
}

.woocommerce table.shop_attributes.related-product th.item-label {
    /* Hide label while maintaining Screen Reader accessibility  */
    position: absolute; 
    left: -9999px; 
    width: 1px; 
    height: 1px; 
    overflow: hidden;
}
.woocommerce table.shop_attributes.related-product p {
    padding: 8px 0; 
}

.woocommerce table.shop_attributes tbody th p {
    color: var(--safetyGreen);
    font-weight: bold;
}
.woocommerce table.shop_attributes.main-product tbody tr td p.attribute-link {
    padding: 2px;
}
.woocommerce-product-attributes tbody,
.woocommerce-product-attributes tbody tr {
    display: grid;
}

.woocommerce.single-product .products-container-slider {
    padding-bottom: 0;
}
.woocommerce div.product div.single-product-main p.price {
    display: none;
}
.woocommerce div.product div.single-product-main button.enquiry-main {
    /* margin: 30px 0 40px; */
}

.woocommerce div.product div.single-product-main .product-buttons {
    display: flex;
    flex-direction: row;
    gap: 10px;
    margin: 20px 0;
    justify-content: start;
}

.woocommerce-product-attributes-item .woocommerce-product-attributes-item__value {
    justify-content: center;
}
/* WooCommerce Responsive */
@media only screen and (min-width: 1201px) {
    .woocommerce table.shop_attributes tbody tr th,
    .woocommerce table.shop_attributes tbody tr td,
    .woocommerce table.shop_attributes tbody tr:nth-child(even) th,
    .woocommerce table.shop_attributes tbody tr:nth-child(even) td {
        background: transparent;
        width: 100%;
        padding: 0;
        text-align: center;
    }
    .woocommerce-product-attributes tbody {
        grid-template-columns: repeat(10, 1fr);
    }
    .woocommerce-product-attributes tr:nth-of-type(1) .item-label,
    .woocommerce-product-attributes tr:nth-of-type(1) .item-value {
        text-align: left;
    }
    .woocommerce-product-attributes tr:nth-of-type(2) {
        grid-column: 2 / 4;
    }
    .woocommerce table.woocommerce-product-attributes.main-product tbody tr th {
        padding: 20px 0;
    }
    .woocommerce-product-attributes.featured-product th {
        display: none;
    }
}
@media only screen and (max-width: 1200px) {
    .woocommerce-product-attributes tbody {
        grid-template-columns: repeat(5, 1fr);
    }
    .woocommerce-product-attributes tr:nth-of-type(2) {
        grid-column: auto;
    }
    .woocommerce table.shop_attributes th {
        background: rgba(0,0,0,.025);
        width: auto;
        padding-top: 10px;
        padding-bottom: 10px;
    }
    .woocommerce table.shop_attributes tbody tr th {
        background: rgba(0,0,0,.025); 
    }
    .woocommerce-product-attributes td {
        text-align: center;
    }
    .woocommerce-product-attributes tr.woocommerce-product-attributes-item {
        grid-template-rows: min-content auto;
    }
    .woocommerce-product-attributes tr.woocommerce-product-attributes-item.attribute-empty {
        grid-column: 5;
        grid-row: 1 / 3;
        justify-content: center;
        align-items: center;
        grid-template-rows: auto;
    }
    .woocommerce table.shop_attributes.related-product tbody tr th.item-label {
        all: unset;
        text-align: center;
        background: rgba(0,0,0,.025);
    }
    .woocommerce table.shop_attributes.woocommerce-product-attributes tbody tr td {
        background-color: transparent;
    }
    .woocommerce table.shop_attributes.related-product tbody tr.attribute-empty th.item-label,
    table.shop_attributes.woocommerce-product-attributes tbody tr.attribute-empty th {
        display: none;
    }
    table.shop_attributes.woocommerce-product-attributes tbody tr.attribute-empty td {
        border-bottom: none;
    }
}
@media only screen and (max-width: 960px) {
    .woocommerce-product-attributes tbody {
        grid-template-columns: 2fr 2fr 1fr;
    }
    .woocommerce-product-attributes tr.woocommerce-product-attributes-item.attribute-empty {
        grid-column: 3;
        grid-row: 1 / 5;
    }
    .woocommerce-product-attributes .woocommerce-product-attributes-item__value button {
        min-width: 25px;;
    }
    .woocommerce-product-attributes .woocommerce-product-attributes-item__value .email-icon {
        transform: scale(1.75);
        margin-top: 5px
    }
    
}
@media only screen and (max-width: 782px) {

}
@media only screen and (max-width: 480px) {
    /* Main Single Product */
    .woocommerce-product-attributes tbody {
        grid-template-columns: 1fr 1fr;
    }
    .woocommerce-product-attributes tr.woocommerce-product-attributes-item.attribute-empty {
        grid-column: span 2;
        grid-row: unset;
    }    
}

.woocommerce-product-attributes tr td .item-label,
.woocommerce-product-attributes tr td .item-value {
    min-height: 40px;
}

table.woocommerce-product-attributes.shop_attributes {
    border-top: var(--lightGrey20) solid 1px;
    border-bottom: var(--lightGrey20) solid 1px;
}
table.shop_attributes.woocommerce-product-attribute tbody th {
    border-bottom: var(--safetyGreen) solid 2px;
}
table.shop_attributes.woocommerce-product-attribute tbody tr td {
    padding: 10px 0;
}

table.shop_attributes.woocommerce-product-attributes tr.attribute-empty th.item-label {
    padding: 18px 0;
}

.woocommerce-product-attributes.related-product p {
    color: var(--darkGrey60);
}
.single-product-main .woocommerce-product-gallery {
    flex-basis: calc(40%);
}
.single-product-main .summary {
    flex-basis: calc(60%);
}

.sku_title,
.product_meta .posted_in {
    font-weight: bold;
}

.more_info,
button.button.enquiry-options {
    background: transparent;
    color: var(--safetyGreen);
    font-family: var(--muli);
    font-size: 16px;
    font-style: normal;
    font-weight: var(--regular);
    line-height: 24px;
    padding: 6px 0;
    text-align: right;
    text-decoration: none;
    position: relative;
    min-width: 30px;
}

.more_info::after,
button.button.enquiry-options::after {
    content: '';
    display: block;
    position: absolute;
    background: url(../bambooNine/assets/green-arrow.svg);
    top: 1px;
    right: -19px;
    width: 19px;
    height: 17px;
    transform: translate(50%, 50%);
}
.more_info:hover::after,
button.button.enquiry-options:hover::after {
    filter: invert(31%) sepia(36%) saturate(0%) hue-rotate(150deg) brightness(91%) contrast(101%);
}
button.button.enquiry-options:hover {
    background: transparent;
}

/* Woo Thumbnails */
.woocommerce-product-gallery {
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.woocommerce div.product div.images .flex-control-thumbs {
    display: flex;
    gap: 10px;
}
.woocommerce div.product div.images .flex-control-thumbs li {
    flex-basis: 16%;
}

/* Product Accordion */
.accordion {
    overflow: hidden;
}

.accordion__label {
    display: block;
    cursor: pointer;
    position: relative;
}

.accordion__label::after {
    content: "";
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 0px;
    width: 17px;
    height: 17px;
    background: url('../bambooNine/assets/arrow.svg');
    background-repeat: no-repeat;
    background-size: contain;
    transition: transform 0.4s;
}

input.accordion__input,
.accordion__content {
    display: none;
    margin-bottom: 0;
}

input.accordion__input:checked ~ .accordion__content {
    display: flex;
    margin-bottom: 40px;
}

input.accordion__input:checked ~ .accordion__label .heading {
    margin-bottom: 80px;
}
input.accordion__input:checked ~ .accordion__label .downloads-heading {
    margin-bottom: 30px;
}

input.accordion__input:checked ~ .accordion__label::after {
    transform: translateY(-50%) rotate(90deg);
}

.accordion__content a.download-link {
    margin-top: 5px;
    margin-bottom: 0;
    text-decoration: none;
}
.accordion__content a.download-link span {
    font-weight: bold;
}
.accordion__content a.download-link span.download-button {
    color: var(--safetyGreen);
}

/* Modal Form */
.modal {
    position: relative;
    max-width: 656px;
    padding: 50px 50px 10px;
    border: none;
    box-shadow: 0 0 30px #00000012;
}
.modal::backdrop {
    background: rgba(0, 0, 0, 0.4);
}
.modal .heading {
    color: var(--safetyGreen);
    text-align: left;
    line-height: unset;
}
.modal button.close-modal {
    content: "Close";
    background-color: white;
    position: absolute;
    top: 0;
    right: 0;
    width: 38px;
    height: 38px;
    border: 2px solid white;
    border-radius: 50%;
    box-shadow: 0 0 20px #ededed;
    margin: 20px;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}
.modal button.close-modal::after {
    content: "";
    background: var(--safetyGreen);
    width: 19px;
    height: 19px;
    clip-path: polygon(0 15%, 15% 0, 50% 35%, 85% 0, 100% 15%, 65% 50%, 100% 85%, 85% 100%, 50% 65%, 15% 100%, 0 85%, 35% 50%);
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(calc(-50%), calc(-50% + 1px));
    /* clip-path: polygon(40% 0%, 60% 0, 60% 40%, 100% 40%, 100% 60%, 60% 60%, 60% 100%, 40% 100%, 40% 60%, 0 60%, 0 40%, 40% 40%);
    position: absolute;
    top: 50%;
    left: 50%;
    rotate: 45deg;
    transform: translate(-25%, -25%);  */
}
  
.modal button.button.close-modal:hover {
    background-color: white;
    border: 2px solid var(--safetyGreen);
    transition: border 0.5s ease;
}
.modal-label,
.modal button.close-modal > .screen-reader-text {
    border: 0;
    clip: rect (0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}
button.button-modal span.screen-reader-text {
    margin: 0;
}

/* Contact Form 7 Modal Form */
.modal .wpcf7-text {
    padding: 8px 16px;
}

.modal .wpcf7-text.product-title {
    background: transparent;
    padding: 0;
    border: none;
    font-weight: bold;
    font-style: italic;
}

.modal .wpcf7-list-item {
    display: inline-flex;
    gap: 10px;
}

.modal .wpcf7-list-item input[type="checkbox"]{
    width: 20px; height: 20px;
    min-width: 20px;
}

.modal .wpcf7-list-item-label {
    font-size: 0.85em;
    text-align: left;
} 

.modal span.wpcf7-form-control-wrap,
.modal input.wpcf7-form-control {
    margin-bottom: 0;
}

.modal .wpcf7-textarea {
    max-height: 150px;
    margin-bottom: 0;
    width: 100%;
}

.modal .wpcf7-not-valid {
    border: 2px solid #df0000;
}

.modal .wpcf7-not-valid-tip {
    font-size: 0.85em;
    margin-bottom: 0;
}

.modal .wpcf7 form .wpcf7-response-output {
    font-family: var(--muli);
    margin: 0;
    padding: 5px 10px;
}
button.button.enquiry-header,
button.button.enquiry-main,
.product-buttons .button.dl-specs {
    color: var(--safetyWhite);
    background-color: var(--safetyGreen);
    border-radius: 3px;
    padding: 15px 30px;
}
.product-buttons .button.dl-specs {
    background-color: var(--lightGrey10);
    color: var(--safetyGreen);
}

/* Product Information Section */
.embed-container { 
    position: relative; 
    padding-bottom: 56.25%;
    overflow: hidden;
    width: 100%;
    max-width: 100%;
    height: auto;
} 

.embed-container iframe,
.embed-container object,
.embed-container embed { 
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.product-download-link {
    border-bottom: var(--darkGrey) solid 1px;
}

/* Contact Form Section */
.contact-form-cf7-block .wpcf7-submit:enabled {
    cursor: pointer;
}

.download-section-block.bg-white,
.contact-form-cf7-block {
    background-color: white;
    border-radius: 6px;
    box-shadow: 0px 0px 30px #00000012;
    opacity: 1;
}
.contact-form-cf7-block { padding-bottom: 0;}
.contact-form-cf7-block input {
    border-radius: 3px;
}
.contact-form-cf7-block span,
.contact-form-cf7-block input {
    margin-bottom: 0;
}
.contact-form-section .contact-google-map iframe {
    width: 100%;

}
.company-info span, .company-info p {  margin-bottom: 0; }
.company-name p { font-size: 20px; font-weight: bold;}
.company-info b { font-weight: bold; }

.contact-map-image,
.product-category-image,
.product-multi-col-image,
.download-image-block img {
    width: 100%;
    height: auto;
}
/* Downloads Section Block */
.download-section-block,
.download-section-inner { width: 100%; }
.download-content-block { justify-content: center; }

.download-content-block { padding-right: 0; }
.download-content-block .heading { font-weight: bold; }
.download-section-block {
    border-radius: 6px;
}
.downloads-section .download-content-block { padding: 80px }
.downloads-section .download-image-block img {
    width: fit-content;
    margin-top: 50px;
    margin-left: -100px;
    margin-bottom: -50px;
}
.icon-download { margin-left: 10px; margin-bottom: -1px; }
.download-content-block .button { width: fit-content; border-radius: 4px; }
.contact-form-section .download-image-block { justify-content: end;}
.download-image-block .download-image { width: auto; }
.wpcf7-acceptance span { margin: 0; }
.contact-form-cf7-block .wpcf7-textarea { height: 160px; width: 100%; }
.contact-form-section .download-image {
    margin-bottom: -20px;
    margin-right: -20px;
}

/* CTA & Hero Section */
.cta-container.bg-overlay { background-blend-mode: multiply; }
.cta-container,
.hero-container {
    background-size: cover;
    background-position: center center;
    overflow: hidden;
}
.cta-container.bg-img,
.hero-container.bg-img {
    min-height: 600px;
}
.hero-container h1 {
    color: var(--safetyGreen);
    font-size: 40px;
    font-weight: bold;
    line-height: 60px;
}
.cta-inner.content-center,
.hero-inner.content-center {
    justify-content: center;
}
.cta-inner.content-right,
.hero-inner.content-right {
    justify-content: right;
}
.cta-content-block,
.hero-content-block {
    flex-basis: 40%;
    max-width: 40%;   
}
.cta-image-block,
.hero-image-block {
    flex-basis: 60%;
    max-width: 60%;
}
.cta-content-block {
    justify-content: center;
}

.cta-image-block img,
.hero-image-block img,
.woocommerce img.cta-image, 
.woocommerce-page img.cta-image {
    width: auto;
    height: auto;
    max-width: none;
}
.cta-image-block img,
.woocommerce img.cta-image, 
.woocommerce-page img.cta-image {
    max-height: 800px;
}
.hero-image-block img {
    max-height: 700px;
}
/* Products & Product Category Section */
.products-inner,
.product-category-inner {
    flex-wrap: wrap;
}
.product-item,
.product-category-term,
.product-category-content {
    align-items: center;
    box-shadow: 0px 0px 25px #00000012;
    border-radius: 6px;
    opacity: 1;
}
.product-item {
    /* flex: 1 1 calc(25% - 40px); */
    /* max-width: calc(25% - 30px); */
}
.product-category-term,
.product-category-content {
    flex: 1 1 calc(33% - 30px);
    /* max-width: calc(33% - 30px); */
}
.product-category-content.two-columns {
    grid-column: span 2;
    /* flex: 1 1 calc(66% - 20px);
    max-width: calc(66% - 20px); */
}
.product-category-content-image,
.product-category-content-block {
    flex: 1 1 50%;
    max-width: 50%;
}
.product-category-content-block {
    height: 100%;
}
.product-category-content-image {
    justify-content: end;
}
.product-category-content-image .content-image {
    margin-top: -30px;
}
.product-item,
.product-category-term { 
    background-color: var(--white);
    justify-content: space-between; 
}
.product-category-content {
    background-size: cover;
}
.products-inner .product-img-block .product-image,
.product-category-image {
    width: 100%;
    height: auto;
    max-width: 300px;
    max-height: 300px;
}
.product-img-block {
    height: 100%;
    max-height: 320px;
}
.product-excerpt {
    border-top: var(--lightGrey10) solid 1px;
}
.product-excerpt .product-link {
    text-decoration: none;
    flex-wrap: wrap;
}
.product-link-block,
.product-category-link-block {
    background-color: var(--safetyGreen);
    border-radius: 0 0 6px 6px;
    width: 100%;
}
.product-link-block .product-link,
.product-category-link {
    color: var(--white);
    text-decoration: none;
    justify-content: space-between;
    align-items: center;
}
.product-category-link.small-links {
    font-size: 18px;
    font-weight: bold;
}
.product-category-link.large-links {
    font-size: 24px;
    font-weight: bold;
}
.product-link-block .product-link .arrow,
.product-category-link .arrow {
    width: 21px ; height: 19px;
}
.category-products-list {
    border-top: 2px solid var(--lightGrey10);
    flex-basis: 100%;
    width: 100%;
}
.category-products-list p {
    margin-bottom: 0;
}
.category-products-list a {
    color: var(--darkGrey);
    font-weight: bold;
    text-decoration: none;
}
.category-products-list a:hover {
    color: var(--safetyGreen);
}

/* Related Products Slick Slider */
.products-inner-slider.small-container {
    /* Adjust the slider for slide margins */
    max-width: calc( var(--small-container-width) + 40px );
}
.products-inner-slider .product-item .product-img-block img {
    width: 100%;
    max-width: 100%;
    max-height: 320px;
    object-fit: contain;
}
.products-container-slider .slick-track {
    display: flex;
}
.products-container-slider .slick-slide,
.products-container-slider .slick-initialized .slick-slide {
    height: inherit;
    display: flex;
    margin: 20px 20px;
    justify-content: space-between;
    gap: inherit;
}
/* Related Products Slider Arrows  */
.products-container-slider .slick-arrow,
.products-container-slider .slick-arrow:focus {
    background: url(../bambooNine/assets/arrow-green.svg) no-repeat;
    background-size: contain;
    width: 25px;
    height: 25px;
}
.products-container-slider .slick-arrow::before {
    color: transparent;
}
.products-container-slider .slick-arrow:hover {
    background: url(../bambooNine/assets/arrow-dark.svg) no-repeat;
    background-size: contain;
    color: var(--safetyGreen);
}
.products-container-slider .slick-prev {
    transform: rotate(180deg);
    top: calc(50% - 10px);
}
.products-container-slider .slick-next {
    top: calc(50% + 5px);
}

/* Related Products Slider Buttons  */
.products-container-slider .slick-dots {
    padding: 0 20px;
    text-align: left;
}
.products-container-slider .slick-dots li button {
    width: 20px; height: 20px;
    background: var(--safetyWhite);
    border: 2px solid var(--safetyGreen);
    border-radius: 50%;
} 
.products-container-slider .slick-dots li button:before,
.products-container-slider .slick-dots li.slick-active button:before {
    color: transparent;
}
.products-container-slider .slick-dots li.slick-active button {
    background: var(--safetyGreen);
}
/**/
.woocommerce-page .product-img-block img.product-image {
    object-fit: contain;
    z-index: 0;
}

/* Multi-Column Content Layout Sectioin */
.product-multi-col-block.col-1-2 { width: calc(50% - 20px); }
.product-multi-col-block.col-2-2 { width: 100%; column-count: 2; column-gap: 40px; }
.product-multi-col-block.col-1-3 { width: calc(33% - 10px); }
.product-multi-col-block.col-2-3 { width: calc(66% - 10px); column-count: 2; column-gap: 40px; }
.product-multi-col-block.col-3-3 { width: 100%; column-count: 3; column-gap: 40px; }
.product-multi-col-block.col-1-4 { width: calc(25% - 20px); }
.product-multi-col-block.col-3-4 { width: calc(75% - 20px); column-count: 3; column-gap: 40px; }
.product-multi-col-block.col-4-4 { width: 100%; column-count: 4; column-gap: 40px; }


/* Benefits Checklist Section */
.benefits-checklist-block ul {
    border-radius: 6px;
    list-style: none;
    margin: 0 80px;
    display: flex;
    flex-direction: column;
    list-style-image: url('../bambooNine/assets/checked.svg');
}
.benefits-checklist-block ul li {
    margin-bottom: 0;
    margin-left: 30px;
    padding-left: 10px;
}

/* Overlap Image Section */
.overlap-footer.bg-color-white { background-color: var(--safetyWhite); }
.overlap-footer.bg-color-grey { background-color: var(--lightGrey20); }
.overlap-content-block { padding-bottom: var(--px160);}
.overlap-image-block,
.overlap-content-block {
    flex-basis: 50%;
}
.overlap-image { 
    margin-bottom: -16px;
    width: 100%;
    height: calc(100% + 160px);
    object-fit: cover;
    border-radius: 6px;
}
.overlap-footer {
    min-height: 320px;
    padding: 160px 0 0;
}
.overlap-section.content .overlap-footer {
    min-height: unset;
}

/* Blog Posts */
.blog-post.post-block,
.blog-post.latest-post-block {
    background: #FFFFFF 0% 0% no-repeat padding-box;
    box-shadow: 0px 0px 25px #00000012;
    border-radius: 5px;
    overflow: hidden;
    opacity: 1;
}

.post-block .featured-image img {
    max-width: 435px;
    width: 100%;
    height: auto;
    object-fit: cover;
    max-height: 250px;
}

.latest-post-block .featured-image {
    flex-basis: 60%;
}
.latest-post-block .heading,
.latest-post-block a,
.latest-post-block .featured-image a {
    margin-bottom: 0;
}
.latest-post-block .featured-image img {
    display: flex;
    object-fit: cover;
    width: 100%;
    height: auto;
    max-height: 500px;
}
.latest-post-block .post-text {
    flex-basis: 40%;
    justify-content: center;
}
.blog-post.post-block {
    justify-content: space-between;
}
.post-block .post-text {
    padding: 40px;
}
a.link.mailto, a.link.phone,
.pagination-inner-container a,
.post-text a.read-more-link,
.post-text a.post-link {
    text-decoration: none;
}
.post-block a.button {
    border-radius: 0;
    margin-bottom: 0;
    position: relative;
    text-align: left;
    width: 100%;
}
.latest-post-block a.read-more-link {
    text-align: right;
    width: 100%;
    margin-right: 50px;
}

.latest-post-block a.read-more-link::after,
.post-block a.button::after {
    content: '';
    background: url(../bambooNine/assets/arrow-white.svg);
    display: inline-flex;
    position: absolute;
    right: 0;
    transform: translate( calc(-50% - 10px), calc(50% - 8px));
    width: 20px;
    height: 18px;
}
.latest-post-block a.read-more-link::after {
    background: url(../bambooNine/assets/green-arrow.svg);
    transform: translate( calc(-50% - 40px), calc(50% - 5px));
}
.latest-post-block a.read-more-link:hover::after {
    filter: invert(5%) sepia(15%) saturate(20%) hue-rotate(314deg) brightness(60%) contrast(80%);
}
.pagination-inner-container {
    display: flex;
    justify-content: center;
    gap: 10px;
}

/* Single Blog Posts */
.single .post-section {
    overflow: hidden;
}
.single .blog-area {
    flex-basis: 70%;
}
.single .sidebar-content {
    flex-basis: 30%;
}
.single .sidebar-content-blocks {
    position: relative;
    z-index: 1;
}
.single .sidebar-content-blocks .bar-grey {
    border-left: var(--darkGrey) solid 2px;
    line-height: unset;
    padding: 0px 0 0px 20px;
}
.single .sidebar-bg {
    content: '';
    background-color: var(--lightGrey20);
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: 0;
}
.single .sidebar-related-text a {
    color: var(--darkGrey80);
    text-decoration: none;
}
.single .sidebar-related-text a:hover {
    text-decoration: underline;
    text-underline-offset: 3px;
}

.single .sidebar-featured-text {
    display: flex;
    align-items: center;
}

.single .sidebar-featured-text a {
    color: var(--darkGrey); 
    text-decoration: none;
}
.single .sidebar-featured-text a:hover {
    color: var(--safetyGreen);
}

/* Sidebar Single Post - Related Posts */
img.related_post_image {
    border-radius: 5px;
    max-width: 80px;
    max-height: 80px;
}
img.post-featured-image {
    object-fit: cover;
    width: 100%;
    height: auto;
    max-height: 500px;
}
/* Sidebar Single Post - Featured Product */
.sidebar-featured.featured-product {
    justify-content: space-between;
}
.sidebar-featured a.product-heading-link {
    text-decoration: none;
}
.sidebar-featured .short-description,
.sidebar-featured a.product-heading-link:hover h3 {
    color: var(--darkGrey);
}
.sidebar-featured.featured-product {
    background: #FFFFFF 0% 0% no-repeat padding-box;
    box-shadow: 0px 0px 25px #00000029;
    border-radius: 5px;
    opacity: 1;
    overflow: auto;
}
.sidebar-featured .featured-product-image img {
    object-fit: contain;
    width: 100%;
    height: 100%;
    max-height: 200px;
}
a.button.featured-product-button {
    text-align: left;
    padding: 15px 20px;
    border-radius: 0;
    position: relative;
}
a.button.featured-product-button::after {
    content: '';
    background: url(../bambooNine/assets/arrow-white.svg);
    display: block;
    position: absolute;
    top: 10px; right: 8px;
    transform: translate(-50%, 50%);
    width: 20px; height: 17px;
}
/* Single Post - CTA */
.sidebar-cta .post-cta-container {
    border-radius: 5px;
    overflow: auto;
}
.sidebar-cta .cta-image .post-cta-image {
    vertical-align: bottom;
}
.sidebar-cta img.post-cta-image {
    object-fit: cover;
    width: 100%;
    height: auto;
    max-height: 300px;
}
.sidebar-cta a.post-cta-button {
    border-radius: 5px;
}


/* Logos */
.home .small-container.logos-inner {
    padding: 40px 0;
}
.home .logo-block img {
    max-height: 80px;
}
.logos .white { background-color: var(--safetyWhite); }
.logos .green { background-color: var(--safetyGreen); }
.logos .grey { background-color: var(--lightGrey10); }

/* Search Results Page */
.search-results-container {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
}
.search-pagination a,
.search-results-container a {
    text-decoration: none;
}
.search-term {
    font-style: italic;
}
.search-result .author {
    display: none;
}
/* Stretch first result across 3 columns */
.search-result.article-1 {
    grid-column: span 3;
}

/* Footer */
footer {
    background-color: var(--darkGrey);
    color: var(--safetyWhite);
    font-family: var(--muli);
    font-size: 16px;
    font-weight: var(--regular);
    line-height: 24px;
}
footer .footer-logo img {
    max-width: 200px;
}
footer .footer-info a,
footer .footer-info p {
    color: var(--safetyWhite);
    font-weight: 300;
}

footer .footer-info .label {
    color: var(--safetyWhite);
    font-weight: 700;
}
footer .footer-info a {
    color: var(--safetyWhite);
    border-bottom: var(--safetyWhite) solid 1px;
    text-decoration: none;
}
footer .footer-info a:hover {
    color: var(--safetyGreen);
    border-bottom: none;
}

footer .footer-logo,
footer .footer-links,
footer .footer-info {
    flex: 1 1 auto;
}

footer .footer-logo {
    flex-basis: 40%;
}

footer .footer-links,
footer .footer-info {
    flex-basis: calc(30% - 40px);
}
footer .footer-links li a {
    color: var(--safetyWhite);
    text-decoration: none;
    padding-bottom: 5px;
}
footer .footer-links li a:hover {
    border-bottom: var(--safetyGreen) solid 2px;
    color: var(--safetyGreen);
}
footer .footer-links li a span {
    color: inherit;
}

/* Media Queries */

/* WP $break-huge: 1440px */
@media screen and (max-width: 1440px) {
    header .nav-row.ph80,
    .full-container:not(.overlap-container),
    .full-container .overlap-inner {
        padding-left: 40px;
        padding-right: 40px;
    }
    /* Logos */
    .logos-inner .logos-row {
        display: grid;
        grid-template-columns: repeat(6, 1fr);
        justify-items: center;
    }
    
}
/* Weird Glitch */
@media screen and (min-width: 1083px) and (max-width: 1300px) {
    .product-category-content-image .content-image {
        margin-top: 15px;
    }
}
/* WP $break-wide: 1280px */
@media screen and (max-width: 1280px) {
    /* Homepage Contact Area */
    .contact-form-container .contact-form-inner {
        flex-wrap: wrap;
    }
    .contact-form-container .contact-form-cf7-block {
        max-width: 660px;
        margin: auto
    }
    .contact-form-container .contact-form-content-block {
        flex-direction: row;
    }
    .contact-form-container .contact-info-block,
    .contact-form-container .contact-google-map,
    .contact-form-container .download-section-block {
        flex-basis: 50%;
        max-width: 50%;
    }
    .contact-form-container .download-section-inner {
        flex-direction: column;
    }

    .contact-form-container .download-image-block img {
        width: 80%;
        margin: 0 auto 20px;
    }
    .simple-header-section .simple-header-container.pb80 {
        padding-bottom: 40px;
    }
    .downloads-section .download-image-block img.download-image {
        margin-left: -75px;
    }
    /* Logos */
    .logos-inner .logos-row {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        justify-items: center;
    }
    /* Products Grid */
    .products-section .products-inner {
        grid-template-columns: repeat(3, 1fr);
        gap: 20px;
    }
    
}
@media screen and (min-width: 1081px) and (max-width: 1280px) {
    .home .product-category-link-block {
        padding: 20px;
    }
    .home .product-category-link.large-links {
        font-size: 20px;
    }
}
@media screen and (min-width: 1081px) {
    .menu-button-container {
        display: none;
    }
    /* Homepage Hero Section */
    .home .hero-inner {
        flex-direction: row-reverse;
    }
}
/* WP $break-xlarge: 1080px */
@media screen and (max-width: 1080px) {
    /* General Styles */
    .gap80 { gap: 40px; }
    .home .product-category-inner,
    .blog-posts .posts-container,
    .product-category-section .product-category-inner,
    .search-results .search-results-container {
        grid-template-columns: repeat(2, 1fr);
    }
    .heading.h1 {
        font-size: 50px;
        line-height: 75px;
    }
    
    .search-results .search-result.article-1 {
        grid-column: span 2;
    }
    .home .cta-image-block,
    .home .cta-content-block,
    .home .hero-image-block,
    .home .hero-content-block {
        flex-basis: 50%;
        max-width: 50%;
    }
    /* Overlap Section */
    .overlap-section .overlap-footer {
        min-height: 160px;
    }
    .overlap-section .overlap-container .overlap-inner.small-container {
        gap: 40px;
    }
    /* Benefits Section */
    .benefits-checklist-block ul {
        margin: 0 40px;
    }
    .benefits-section .benefits-container .benefits-inner {
        gap: 30px;
    }
    /* Blog Posts */
    .blog-posts-section.mt80 {
        margin-top: 0;
    }
    .downloads-section .download-image-block img.download-image {
        margin-left: -50px;
    }
    /* Logos */
    .logos-inner .logos-row {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        justify-items: center;
    }
}
/* WP $break-medium: 960px */
@media screen and (max-width: 960px) {
    /* General Styles */
    .pv80, .pv100, .pv120, 
    .pt80, .pt100, .pt140 {
        padding-top: 60px;
    }
    .pv80, .pv100, .pv120 {
        padding-bottom: 60px;
    }
    /* Homepage Hero & CTA Section */
    .home .cta-inner,
    .home .hero-inner {
        flex-direction: column-reverse;
    }
    .cta-section .cta-inner > *,
    .home .cta-content-block,
    .home .hero-content-block {
        flex-basis: 100%;
        max-width: 100%;
    }
    .products-section .products-inner {
        grid-template-columns: repeat(2, 1fr);
    }
    /* Logos */
    .logos-inner .logos-row {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        justify-items: center;
    }
    /* Homepage - Product Block */
    .home .product-category-link-block {
        padding: 30px;
    }
    /* Sections */
    .cta-section .cta-inner,
    .benefits-section .benefits-container .benefits-inner,
    .overlap-section .overlap-container .overlap-inner.small-container,
    .blog .latest-post-block {
        display: grid;
        gap: 40px;
    }
    .cta-section .cta-inner .cta-image-block,
    .overlap-section .overlap-image-block,
    .blog .latest-post-block .featured-image {
        order: 1;
    }
    .blog .latest-post-block .featured-image img.wp-post-image {
        object-fit: unset;
        /* width: auto; height: auto; */
        margin: auto;
        width: auto;
        max-height: 400px;
    }
    .cta-section .cta-inner .cta-image-block img.cta-image {
        margin: 0 auto !important;
        width: 100%;
    }
    /* Downloads Section */
    .downloads-section .download-content-block {
        padding: 60px;
    }
    /* Overlap Section */
    .overlap-section img.overlap-image {
        height: auto;
    }
    .overlap-section .overlap-content-block {
        padding-bottom: inherit;
    }
    .overlap-section .overlap-image-block {
        max-height: 500px;
        margin-bottom: 30px;
        overflow: hidden;
        border-radius: 10px;
    }
    .overlap-section .overlap-footer {
        display: none;
    }
    /* Product Features */
    .product-multi-col-block.col-2-3 {
        width: calc(50% - 10px);
        column-count: auto;
    }
    .product-multi-col-block.col-1-3 {
        width: calc(50% - 10px);
    }
    .product-info-video .embed-container {
        margin: unset;
    }
    .product-info-download .download-link {
        gap: 20px;
    }
    .product-info-download .download-link .download-button {
        min-width: 100px;
    }
}

@media screen and (min-width: 783px) and (max-width: 960px) {
    .home .product-category-link.large-links {
        font-size: 20px;
    }
}

@media screen and (min-width: 783px) {
    .email-icon,
    .download-arrow,
    .main-nav .site-nav button.search-modal {
        display: none;
    }
    .main-nav .site-nav {
        gap: 30px;
    }
    /* Header Modal Button */
    .product-buttons .screen-reader-text {
        all: unset;
        position: relative!important; /* !important used to override WooCommerce */

    }
}

/* WP $break-medium: 782px */
@media screen and (max-width: 782px) {
    /* General Styles */
    .heading.h1 {
        font-size: 40px;
        line-height: 60px;
    }
    .heading.h2 {
        font-size: 36px;
        line-height: 54px;
    }
    /* Homepage Hero & CTA */
    .simple-header-content-block,
    .product-multi-col-block.col-1-3,
    .product-multi-col-block.col-2-3,
    .blog .simple-header-content-block,
    .home .cta-image-block,
    .home .cta-content-block,
    .home .hero-image-block,
    .home .hero-content-block {
        flex-basis: 100%;
        max-width: 100%;
    }
    
    .home .cta-image-block img.cta-image,
    .home .hero-image-block img.hero-image {
        width: 100%;
    }
    /* Homepage - Contact Form */
    .contact-form-container .contact-form-content-block {
        flex-direction: column;
    }
    .contact-form-container .contact-form-content-block > * {
        flex-basis: 100%;
        max-width: 100%;
    }
    .contact-form-container .download-section-inner {
        flex-direction: row;
    }
    .contact-form-container .download-image-block img {
        width: 99%;
        margin: auto -20px -20px auto;
    }
    /* Homepage - Product Block */
    .blog-posts .posts-container,
    .downloads-section .download-section-inner,
    .product-category-section .product-category-inner,
    .home .product-category-inner {
        grid-template-columns: 1fr;
    }
    .post-block .featured-image img {
        max-width: none;
    }
    /* Header */
    header .nav-row {
        gap: 20px;
    }
    header .nav-row .main-nav .site-nav {
        justify-content: end;
        gap: 20px;
    }
    /* Header Modal Buttons */
    button.button.enquiry-header.open-modal {
        padding: 12px;
        border-radius: 50%;
    }
    /* Header Search Form & Buttons */
    header .search-form {
        margin-right: 0;
        display: grid;
        justify-content: end;
    }
    .search-form .search-modal-bg {
        display: none;
    }
    .site-nav button.search-modal {
        padding: 0;
        background: transparent;
    }
    .site-nav button.search-modal .search-icon-text.open {
        background: var(--safetyGreen);
        border-radius: 50%;
        padding: 11px;
        width: 40px;
        height: 40px;
    }
    .site-nav .search-modal.is-active .search-icon-text.open {
        display: none;
    }
    .site-nav .search-modal.is-active .search-icon-text.close {
        width: 30px;
        z-index: 2;
    }
    .site-nav button.search-modal svg.search-icon {
        position: relative;
        top: -3px;
        left: -3px;
        transform: scaleX(-1) scale(1.3);
    }
    .site-nav button.search-modal svg.search-icon path {
        fill: white;
    }
    header .site-nav {
        align-items: center;
    }
    .site-nav .menu-button-container {
        height: 25px;
    }
    .search-form .search-modal-bg.is-active {
        display: grid;
        justify-content: center;
        align-items: center;
        position: absolute;
        width: 100%;
        height: 100vh;
        top: 0;
        left: 0;
        background: #ffffff;
        z-index: 1;
    }
    /* Multi-Column */
    .product-multi-col-section .product-multi-col-inner {
        flex-wrap: wrap;
    }
    /* Contact Page Section */
    .contact-form-section .full-container .small-container {
        margin: 0 auto;
        padding: 0;
    }
    /* Downloads Section */
    .downloads-section .download-section-inner {
        display: grid;
    }
    .downloads-section .download-content-block {
        padding: 30px;
    }
    .downloads-section .download-image-block {
        align-items: center;
        padding: 30px;
    }
    .downloads-section .download-image-block img.download-image {
        margin: 0 auto;
        max-height: 300px;
    }
    /* Sub-Category */
    .product-category-content.two-columns {
        grid-column: span 1;
    }
    .product-category-content-image {
        height: 100%;
        align-items: end;
        flex: 1 1 40%;
        max-width: 40%;
    }
    .product-category-content-image img.content-image {
        margin: 0;
        width: 100%;
        height: auto;
        object-fit: cover;
    }
    .product-category-content-block {
        flex: 1 1 60%;
        max-width: 60%;
    }
    .woocommerce div.product div.single-product-main .product-buttons {
        justify-content: center;
    }
    
}
/* WP $break-small: 600px */
@media screen and (max-width: 600px) {
    /* General Styles */
    .pv80, .pv100, .pv120, 
    .pt80, .pt100, .pt140 {
        padding-top: 60px;
    }
    .pv80, .pv100, .pv120 {
        padding-bottom: 60px;
    }
    .heading.h1 {
        font-size: 40px;
        line-height: 60px;
    }
    /* Header */
    header .bar-top .contact-details.flex-row {
        display: grid;
        gap: 5px;
        grid-template-columns: 1fr;
        justify-content: center;
    }
    header .bar-top .contact-details.flex-row .email {
        display: none;
    }
    header .bar-top .contact-details.flex-row .phone {
        text-align: center;
    }
    /* Homepage - Hero */
    .home .hero-content-block .hero-buttons {
        flex-direction: column;
        max-width: 300px;
        margin: auto;
    }
    .download-content-block,
    .hero-content-block,
    .cta-content-block {
        text-align: center;
    }
    .download-content-block .button {
        margin: auto;
    }
    /* Benefits Section */
    .benefits-checklist-block ul {
        margin: 0 20px;
    }
    /* Contact Forms */
    .wpcf7 .contact-form .email-phone {
        display: grid;
        grid-template-columns: 1fr;
    }
    .contact-form-section .download-content-block {
        padding-right: 40px;
        padding-bottom: 20px;
    }
    .contact-form-container .contact-form-inner.small-container {
        margin: 0;
    }
    .contact-form-container .contact-form-inner.small-container img.download-image {
        width: 60%;
        margin: 20px auto;
    }
    .contact-form-cf7-block {
        padding: 30px;
    }
    .contact-form-section .download-section-inner,
    .products-section .products-inner {
        display: grid;
        grid-template-columns: 1fr;
    }
    /* Product Category Block */
    .product-category-content.two-columns {
        flex-wrap: wrap;
    }
    .product-category-content.two-columns > * {
        flex: 1 1 100%;
        max-width: 100%;
    }
    .product-category-content .product-category-content-block {
        padding: 30px 30px 0;
        text-align: center;
    }
    .product-category-content .product-category-content-block a {
        margin: 0 auto;
    }
    .product-category-content-image {
        height: auto;
        order: 1;
        justify-content: center;
    } 
    .product-category-content-image img.content-image {
        width: 50%;
    }

    .single-product .single-product-main {
        flex-wrap: wrap;
        flex-direction: column-reverse;
        gap: 0;
    }

    .single-product-main .woocommerce-product-gallery,
    .single-product-main .summary {
        flex-basis: 100%;
    }
    .single-product .single-product-main .flex-viewport {
        max-width: 300px;
        margin: auto;
    }
    /* Product Features */
    .product-info-features.accordion__content,
    .product-info-extras.accordion__content {
        flex-wrap: wrap;
    }
    .product-multi-col-block.col-2-2 {
        column-count: auto;
    }
    /* Search Results */
    .search-results .search-results-container {
        grid-template-columns: 1fr;
    }
    .search-results .search-result.article-1 {
        grid-column: span 1;
    }
    /* Logos */
    .logos .logos-row {
        gap: 30px;
    }
    .logos .logos-row img {
        width: auto;
        height: 100%;
    }
    /* Product Features */
    .product-info-download .download-link {
        flex-wrap: wrap;
        gap: 10px;
    }

    /* Footer */
    footer .small-container {
        display: grid;
        grid-template-columns: 1fr;
        justify-items: center;
    }
    footer .footer-menu-wrapper {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        justify-items: center;
        gap: 20px;    
    }
    footer .company-info {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
    }
    footer .info-address {
        grid-column: span 2;
    }
    .main-menu-container.is-active {
        padding: 80px 40px 40px;
    }
    .product-category-content-image {
        display: none;
    }
    .product-category-content .product-category-content-block {
        padding-bottom: 30px;
    }

    .download-content-block a.button,
    .cta-buttons a.button {
        margin: 0 auto;
    }
    .blog-posts-section.full-container:not(.overlap-container) {
        margin-top: 30px;
        padding-left: 20px;
        padding-right: 20px;
    }
}

/* WP $break-small: 480px */
@media screen and (max-width: 480px) {
    /* General Styles */
    .pv80, .pv100, .pv120, 
    .pt80, .pt100, .pt120, .pt140 {
        padding-top: 40px;
    }
    .pb80, .pb100, .pb120,
    .pv80, .pv100, .pv120 {
        padding-bottom: 40px;
    }
    .product-category-content-block.flex-column.bottom {
        justify-content: start;
    }
    header .nav-row {
        padding-left: 25px;
        padding-right: 25px;
        justify-content: space-evenly;
        gap: 0;
    }
    header .site-branding {
        flex-basis: 20%;
    }
    header .main-nav {
        flex-basis: 80%;
    }
    .hero-content-block {
        margin-top: 0;
        padding-top: 0;
    }
    /* Modal */
    .modal {
        padding: 20px 25px;
        margin: 15px;
    }
    .modal .wpcf7-list-item-label,
    .modal .wpcf7-text {
        padding: 4px 10px;
        line-height: 1;
    }
    .modal .wpcf7-textarea {
        max-height: 100px;
    }
    .main-contact-form {
        gap: 15px;
    }
    /* Logos */
    .logos .logos-row {
        display: grid;
        grid-template-columns: 1fr;
    }
    /* Benefits Section */
    .benefits-checklist-block ul {
        margin: 0;
    }
    /* Contact Section */
    .contact-form-section .download-content-block,
    .contact-form-section .download-content-block .button {
        text-align: center;
        margin: auto;
    }
    /* Product Slider */
    .woocommerce-page .product-img-block img.product-image {
        max-width: 250px;
        margin-inline: auto;
    }
    /* Footer */
    footer .company-info {
        grid-template-columns: repeat(1, 1fr);
    }
    footer .footer-menu-wrapper {
        grid-template-columns: repeat(2, 1fr);
    }
    footer .info-address {
        grid-column: span 1;
    }
    footer .company-info .info-phone,
    footer .company-info .info-email,
    footer .company-info .info-address {
        text-align: center;
    }
    .overlap-section-title {
        padding-left: 40px;
        padding-right: 40px;
    }
}

/* Firefox-specific styles here */
@-moz-document url-prefix() {
    .modal button.close-modal::after {
        transform: translate(-50%, -50%);
    }
    button.button.enquiry-options::after {
        top: 0px;
    }
    .more_info::after {
        top: -1px;
        right: -18px;
    }
    .latest-post-block a.read-more-link::after {
        transform: translate( calc(-50% - 50px), calc(50% - 7px));
    }
    .post-block a.button::after {
        transform: translate( calc(-50% - 10px), calc(50% - 6px));
    }
    .heading.bar {
        padding: 11px 0 3px 20px;
    }

    @media screen and (min-width: 1080px) {
        .menu-wrapper > .mega-menu:hover > a.main-link-item::after {
            bottom: -4px;
        }
    }
}

.products-inner .product-img-block .product-image, .product-category-image {
    width: 600px;
    height: 400px;
    max-width: 100%;
    max-height: 100%;
    object-fit: cover;
}
.products-inner .product-img-block .product-image, .product-category-image img {
    object-fit: cover;
}
section.products-section.pv0 .product-img-block.pv20 {
    padding-top: 0px;
    padding-bottom: 0px;
}
.woocommerce div.product div.images img {
    display: block;
    width: 100%;
    max-height: 500px;
    box-shadow: none;
    object-fit: contain;
}
.sidebar-content-blocks.sidebar-featured-product.flex-column.gap40.pd40 {
    display: none;
}
.menu-wrapper > .mega-menu > ul.sub-menu li a:hover ~ .img-economy-galvanised-safety-stores {
    background: url(/wp-content/uploads/2026/02/Economy-Galvanised-Safety-Mega-Menu.jpg) no-repeat center center !important;
background-size: cover !important;
}
    .menu-wrapper > .mega-menu:hover > ul.sub-menu {
        max-width: 1500px !important;
    }
.postid-4584 tbody.woocommerce-product-attributes-container.main-product td.woocommerce-product-attributes-item__value.item-value {
    display: none;
}
.postid-4584 .related-products-container a.more_info {
    display: none;
}
.postid-4582 tbody.woocommerce-product-attributes-container.main-product td.woocommerce-product-attributes-item__value.item-value {
    display: none;
}
.postid-458 .related-products-container a.more_info {
    display: none;
}
.postid-4576 tbody.woocommerce-product-attributes-container.main-product td.woocommerce-product-attributes-item__value.item-value {
    display: none;
}
.postid-4576 .related-products-container a.more_info {
    display: none;
}
.postid-4578 tbody.woocommerce-product-attributes-container.main-product td.woocommerce-product-attributes-item__value.item-value {
    display: none;
}
.postid-4578 .related-products-container a.more_info {
    display: none;
}
.postid-4580 tbody.woocommerce-product-attributes-container.main-product td.woocommerce-product-attributes-item__value.item-value {
    display: none;
}
.postid-4580 .related-products-container a.more_info {
    display: none;
}
.postid-4558 tbody.woocommerce-product-attributes-container.main-product td.woocommerce-product-attributes-item__value.item-value {
    display: none;
}
.postid-4558 .related-products-container a.more_info {
    display: none;
}
.postid-4561 tbody.woocommerce-product-attributes-container.main-product td.woocommerce-product-attributes-item__value.item-value {
    display: none;
}
.postid-4561 .related-products-container a.more_info {
    display: none;
}
.postid-4566 tbody.woocommerce-product-attributes-container.main-product td.woocommerce-product-attributes-item__value.item-value {
    display: none;
}
.postid-4566 .related-products-container a.more_info {
    display: none;
}
.postid-4569 tbody.woocommerce-product-attributes-container.main-product td.woocommerce-product-attributes-item__value.item-value {
    display: none;
}
.postid-4569 .related-products-container a.more_info {
    display: none;
}
.postid-4570 tbody.woocommerce-product-attributes-container.main-product td.woocommerce-product-attributes-item__value.item-value {
    display: none;
}
.postid-4570 .related-products-container a.more_info {
    display: none;
}
.postid-4571 tbody.woocommerce-product-attributes-container.main-product td.woocommerce-product-attributes-item__value.item-value {
    display: none;
}
.postid-4571 .related-products-container a.more_info {
    display: none;
}
.postid-4572 tbody.woocommerce-product-attributes-container.main-product td.woocommerce-product-attributes-item__value.item-value {
    display: none;
}
.postid-4572 .related-products-container a.more_info {
    display: none;
}
.postid-4573 tbody.woocommerce-product-attributes-container.main-product td.woocommerce-product-attributes-item__value.item-value {
    display: none;
}
.postid-4573 .related-products-container a.more_info {
    display: none;
}
.postid-4574 tbody.woocommerce-product-attributes-container.main-product td.woocommerce-product-attributes-item__value.item-value {
    display: none;
}
.postid-4574 .related-products-container a.more_info {
    display: none;
}
.postid-4586 tbody.woocommerce-product-attributes-container.main-product td.woocommerce-product-attributes-item__value.item-value {
    display: none;
}
.postid-4586 .related-products-container a.more_info {
    display: none;
}
.postid-4582 tbody.woocommerce-product-attributes-container.main-product td.woocommerce-product-attributes-item__value.item-value {
    display: none;
}
.postid-4582 .related-products-container a.more_info {
    display: none;
}