/*

Theme Name: The Studio 4 Custom Theme (BS5)

Theme URI: https://thestudio4.co.uk

Author: The Studio 4

Author URI: https://thestudio4.co.uk

Description: Custom responsive modern theme

Version: 1.0

License: GNU General Public License v2 or later

License URI: http://www.gnu.org/licenses/gpl-2.0.html

Tags: left-sidebar, right-sidebar, custom-background, custom-colors, custom-header, editor-style, featured-images, full-width-template, rtl-language-support, sticky-post, theme-options, threaded-comments, translation-ready

Text Domain: thestudio4theme



This theme is the base for custom developed themes

*/



/* Fonts */

@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@100;200;300;400;500;600;700&display=swap');

@import url('https://fonts.googleapis.com/css2?family=Patua+One&display=swap');

@import url('https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;1,300;1,400;1,500;1,600;1,700;1,800&display=swap');

@import url('https://fonts.googleapis.com/css2?family=EB+Garamond:ital,wght@0,400;0,500;0,600;0,700;0,800;1,400;1,500;1,600;1,700;1,800&family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap');

@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap');

/* END Fonts */

/* Variables */



/*
html:root {
	
    --main-font: 'Open Sans', sans-serif;

    --header-font: 'Roboto', sans-serif;

    --main-color: #000;

    --secondary-color: #AAA;

    --link-color: #000;

    --link-hover-color: #AAA;

    --blue: #253873;

    --purple: #55405E;

    --red: #EC4C14;

    --pale-red: #914A45;

    --green:  #879F8C;

    --cyan: #29ECFC;

    --grey:  #D9D9D9;

}







a:hover{

    color:var(--link-hover-color);

}

.custom-logo{

    float:none;

    margin:0px;

}

.woocommerce div.product .stock{

	display:none;

}

#top-search{

    display: flex;

    align-items: center;

}

.top-bar{

    background-color:#424242;

    padding-top:2px;

    padding-bottom:2px;

}

#top-menu{

    list-style-type: none;

    display: flex;

    align-items: center;

    float:right;

    margin:0px;

    padding-top: 4px;

}

#top-menu li{

    display:inline;

}

#top-menu li > a{

    color:#fff;

    padding:10px 10px;

    font-family:var(--header-font);

    text-transform: uppercase;

}



.current-menu-item a{

    color:#dd9923!important;

}

.current-menu-item a{

    color:#FFF;

}

.current-menu-item > a:after{

    position:relative;

    border-color: transparent;

    top:0;

    left:0;

}




#searchform, .searchBox{

    width:100%;

}

#top-search{

    position:relative;

}

#top-search input[type=text]{

    background-color:#FFF;

    border:1px solid #7A7A7A;

    border-radius:0px;

    font-family:var(--main-font);

}

#searchsubmit{

    font-family: 'Font Awesome 5 Free';

    font-weight: 700; 

    border:0px;

    position:absolute;

    right:0px;

    top:0px;

    z-index:99;

    background:transparent;

    margin:0px;

    border-radius: 0px;

    color: #7A7A7A;

}

.blog-footer{

    background-color: var(--blue)!important;

    color:#FFF;

    border:0px;

    text-align:left!important;

    font-family:var(--main-font)!important;

    border-top: 1px solid #3E6085;

    padding: 40px 0;

}

.blog-footer a{

    color:#FFF!important;

}

.blog-footer a:hover{

    color:#DDD!important;

}

.blog-footer hr{

    background-color:#FFF;

}

.section1{

    background-image:url("images/News-Articles.jpg");

    background-size: cover;

    background-repeat:no-repeat;

    width:100%;

    padding-top:75%;

    position:relative;

}

.section2{

    background-image:url("images/SuDS-Solutions.jpg");

    background-size: cover;

    background-repeat:no-repeat;

    width:100%;

    padding-top:75%;

    position:relative;

}

.sectionTitle{

    position:absolute;

    width:100%;

    background-color:#FFFFFF90;

    bottom:0px;

    left:0px;

    font-weight:bold;

    text-align:center;

    font-size:24px;

    color:#012c5f;

    padding:10px 5px;

}

#menu-footer-menu{

    padding:0px;

}

#menu-footer-menu li{

    list-style-type: none;

}

#menu-footer-menu li a{

    color: #000!important;

}

.redLink{

    color:#fc4965!important;

}

.slick-dots li button:hover, .slick-dots li button:focus{

    background:transparent;

}

.slick-dots{

    bottom:0px!important;

}

.slick-dots li button:before{

    font-size:14px;

    color:#3e0346!important;

}

.slick-slide img{

    display: inline-block;

}

.woocommerce-breadcrumb{

    margin-top:20px!important;

}

.homeSlide{

    position:relative;

}

.homeSlide img{

    margin:0px;

}

.bannerOverlay{

    position:absolute;

    top:0;

    left:0;

    width:100%;

    height:100%;

}

.bannerOverlay .container{

    position:relative;

    height:100%;

}

.headerBtnContainer{

    position:absolute;

    bottom:10%;

    width:100%;

    text-align:center;

}

.headerBtn{

    color:#fff;

    font-size: 32px;

    font-family:var(--header-font);

    border: solid 1px #FFF;

    padding: 10px 80px;

    text-transform: uppercase;

}

.headerBtn:hover, .headerBtn:active, .headerBtn:visited{

    color:#FFF;

}

.headerBlock p{

    margin:5px;

    font-weight:200;

}

.bannerText{

    font-size:38px;

    font-family:var(--main-font);

    color:#FFF;

    font-weight:bold;

    text-align:center;

}

#site-navigation{

    float:right;

}


#mega-menu-wrap-primary{

    margin: 5px 0px;

}

#site-navigation a:after, .mega-menu-item:after{

    padding-left:25px;

    color:#3e0346;

}

#site-navigation li:last-child a:after{

    content:"";

    padding-left:0px;

}

@media only screen and (max-width: 768px) {

    #site-navigation li{

        width:100%;

    }

    #site-navigation a:after, .mega-menu-item:after{

        content:"";

        padding-left:25px;

    }

    #site-navigation{

        float:left;

    }

}

.main-navigation, .nav-menu{

    background:transparent!important;

    box-shadow:none!important;

}

.brandSlide img, .brandSlide, .slick-slide, .slick-slide *{

    outline: none!important;

}

.headerText{

    font-family:var(--header-font);

    color:#424242;

    text-transform: uppercase;

    font-size: 24px;

}

.homepageSections{

    text-align:center;

    padding-bottom:10px;

}

.centerDiv{

    text-align: center;

}

#latestProductsSection{

    background:url("images/homepage/latest-products.jpg");

    background-repeat:no-repeat;

    background-position:center;

    background-size: cover;

}

.whiteText{

    color:#FFF;

}

.whiteBox{

    background-color:#fefefe;

    min-height: 355px;

    height: 100%;

    display: flex;

    flex-direction: column;

}

.product-image{

    text-align:center;

}

.home .whiteBox{

    padding:10px;

}

.rightBlock{

    text-align:right;

}

.blog-footer ul{

    padding:0px;

}

.blog-footer li{

    list-style-type: none;

}

.blog-footer a, .blog-footer a:hover{

    font-family:var(--main-font)!important;

}

.woocommerce button.button.alt, .woocommerce #respond input#submit.alt:hover, .woocommerce a.button.alt:hover, .woocommerce button.button.alt:hover, .woocommerce input.button.alt:hover, .wc-backward{

    color: #424242;

    background-color: #FFF!important;

    font-family: var(--header-font)!important;

    font-size: 18px!important;

    padding: 5px 25px!important;

    border: solid 2px #424242!important;

    font-weight: 100!important;

    border-radius:0!important;

}

input[type=checkbox]{

    width: 18px!important;

    height: 18px;

    float: left;

    background-color: #FFFFFF;

    border-color: #333;

}

.shopSidebar h4{

    font-family:var(--header-font)!important;

}

.shopSidebar a, .shopSidebar a:visited, .shopSidebar a:hover{

    color:#424242;

    font-family:var(--main-font)!important;

    font-weight: 500;

}

.shopSidebar li{

    padding: 10px;

    border: solid 1px #3e0346;

    margin: 10px;

}

.woocommerce-breadcrumb, .woocommerce-breadcrumb a{

    font-family:var(--header-font)!important;

}

.pwb-filter-products label{

    font-family:var(--main-font)!important;

    font-weight: 100!important;

}

.woocommerce-loop-product__title{

    font-family:var(--main-font)!important;

    font-size:12px!important;

}

.woocommerce-products-header .woocommerce-products-header__title{

    color:#424242!important;

    font-family:var(--header-font)!important;

    font-size: 18px!important;

}

.woocommerce .woocommerce-ordering, .woocommerce-page .woocommerce-ordering{

    float:left;

}

.shopSidebar button{

    color: #424242;

    background-color: #FFF!important;

    font-family: var(--header-font)!important;

    font-size: 18px!important;

    padding: 5px 25px!important;

    border: solid 2px #424242!important;

    font-weight: 100!important;

    border-radius:0!important;

}

.sidebar-module{

    padding: 15px 0px;

}

.ui-slider-range, .widget_price_filter .ui-slider .ui-slider-handle, .widget_price_filter .ui-slider .ui-slider-handle{

    background-color:#3e0346!important;

}

.woocommerce-ordering select{

    border-radius:0!important;

}

.woocommerce-Price-amount{

    font-family: var(--header-font)!important;

    color: #424242;

    font-weight: 100!important;

    font-size: 16px;

}

.entry-summary .woocommerce-Price-amount{

    font-size: 24px;

}

.shopSidebar > div{

    border-bottom:solid 2px #3e0346;

}

.shopSidebar > div:last-child{

    border-bottom:0px;

}

.price_label, .orderby{

    font-family:var(--main-font);

}

.count{

    font-family:var(--main-font);

    font-size:10px;

}

.productBorderWrapper{

    border: solid 1px #ebebeb;

    position:relative;

}

.productBorderWrapper .tinv-wishlist{

    position:absolute;

    right:0px;

    top:0px;

}

.product .tinv-wishlist a{

    color:#b21817;

    border-radius: 50px;

    border: solid 1px #b21817;

    max-width: 30px!important;

    max-height: 30px!important;

    margin:5px!important;

}

.productBorderWrapper .add_to_cart_button{

    width:30px;

    height:30px;

    padding:0px!important;

    background-color:transparent!important;

    margin:5px!important;

    margin-bottom:5px!important;

    position:absolute!important;

    right:0px!important;

    bottom:0px!important;

} 

.woocommerce .productBorderWrapper #respond input#submit.added::after, .woocommerce .productBorderWrapper a.button.added::after, .woocommerce .productBorderWrapper button.button.added::after, .woocommerce .productBorderWrapper input.button.added::after {

    font-family: WooCommerce;

    content: "";

} 

.woocommerce .productBorderWrapper #respond input#submit.added::before, .woocommerce .productBorderWrapper a.button.added::before, .woocommerce .productBorderWrapper button.button.added::before, .woocommerce .productBorderWrapper input.button.added::before {

    font-family: WooCommerce;

    content: "\e017";

    position:absolute;

    right: 34px;

    top: 10px;

}

.productBorderWrapper .added_to_cart{

    position:absolute;

    bottom:0px;

    left:5px;

    font-family: var(--header-font)!important;

    color: #424242;

    font-weight: 100!important;

}

.tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart-plus.no-txt:before, .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart.no-txt:before{

    top: 45%;

    left: 43%;

}

.tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart:before, .woocommerce ul.products li.product a.tinvwl-button.tinvwl_add_to_wishlist_button.tinvwl-icon-heart:before, .woocommerce-page ul.products li.product a.tinvwl-button.tinvwl-icon-heart.tinvwl_add_to_wishlist_button:before, a.wishlist_products_counter.top_wishlist-heart:before, span.wishlist_products_counter.top_wishlist-heart:before, a.sidr-class-wishlist_products_counter.sidr-class-top_wishlist-heart:before{

    font-size: 24px;

}

.single-product .quantity{

    display:none;

}

.woocommerce div.product .product_title{

    font-family: var(--main-font)!important;

    font-weight: 100!important;

    font-size: 22px;

    line-height: 40px;

}

.woocommerce div.product form.cart{

    width:60%;

    float: left;

}

.woocommerce div.product form.cart .button{

    width:100%;

}

.cartAndWish {

    position: relative;

    clear: both;

    width: 100%;

    display: inline-block;

}

.cartAndWish .tinv-wraper{

    float:left;

}

.cartAndWish .tinv-wishlist a{

    margin:0px 10px!important;

}

.pwb-single-product-brands{

    float: right;

    overflow: hidden;

    max-height: 38px;

    vertical-align: middle;

    display: flex;

    align-items: center;

}

.pwb-single-product-brands img{

    border:transparent 0px!important;

}

.woocommerce div.product p.price, .woocommerce div.product span.price {

    width: 200px;

}

.entry-summary .instock{

    margin-top:55px;

}

.pwb-single-product-brands a{

    color: #424242;

    font-family:var(--main-font);

}

.productInformation{

    position: relative;

    display: table;

}

.related.products h2{

    text-align: left;

}

.descSection{

    width: 50%;

    float: left;

    padding: 10px;

}

.topIcons{

    float:right;

}

.topIcon{

    padding-top: 3px;

    width: 20px;

    margin-bottom:0px!important;

    margin-left:5px;

    margin-right:5px;

}

.blog-header {

    padding-top: 50px;

    padding-bottom: 50px;

}

code{

    color:#424242!important;

	background-color:transparent!important;

    font-family:var(--main-font)!important;

}

.woocommerce #respond input#submit.alt, .woocommerce a.button.alt, .woocommerce button.button.alt, .woocommerce input.button.alt,.woocommerce .cart .button, .woocommerce .cart input.button, .woocommerce #respond input#submit, .woocommerce .woocommerce-Button, .woocommerce button.button, .woocommerce input.button{

    color: #424242;

    background-color: #FFF!important;

    font-family: var(--header-font)!important;

    font-size: 18px!important;

    padding: 5px 25px!important;

    border: solid 2px #424242!important;

    font-weight: 100!important;

    border-radius: 0!important;

}

.table-bordered > thead > tr > th, .table-bordered > tbody > tr > th, .table-bordered > tfoot > tr > th, .table-bordered > thead > tr > td, .table-bordered > tbody > tr > td, .table-bordered > tfoot > tr > td {

    text-align:left;

}

.productSection{

    position: relative;

    display: inline-block;

    width: 100%;

}

.sliderProd .slick-dots{

    bottom: -40px!important;

}

.sliderProd .slick-track{

    float:left;

}

.product-template-default .woocommerce-Price-amount{

    float:left;

}

.bagIcon{

    position:relative;

}

.cart-contents{

    position: absolute;

    top: -2px;

    right: -8px;

    text-align: center;

    color: #FFF;

    font-size: 10px;

    width: 20px;

    line-height: 20px;

    height: 20px;

    background-color: #000;

    border-radius: 50%;

}

.cart{

    position:relative;

}

.cartIcon{

    max-width: 24px!important;

    padding-top: 5px;

}

.related.products .relatedHeader{

    font-family: var(--header-font)!important;

    text-align:center;

}

#product-slider:hover{

    cursor: zoom-in;

}

.productSlide{

    padding:20px;

}

.productNavSlide, .productSlide{

    border: solid 1px #ebebeb!important;

}

.productNavSlide{

    margin:5px 1px;

    display: block;

    padding:10px;

}

.zoomIcon{

    position:absolute;

    left:25px;

    top:10px;

    z-index:5;

}

.shop_table_responsive button{

    white-space: break-spaces!important;

}

.assistive-info{

    text-align:right;

}

.sitename{

    max-width: 265px;

    float: right;

}

@media only screen and (max-width: 768px) {



    .whiteBox{

        min-height:250px!important;

    }

    .headerBtn{

        font-size:20px;

    }

    .woocommerce #content table.cart .product-thumbnail, .woocommerce table.cart .product-thumbnail, .woocommerce-page #content table.cart .product-thumbnail, .woocommerce-page table.cart .product-thumbnail{

        display:block!important;

    }

    .woocommerce table.shop_table_responsive tr td::before, .woocommerce-page table.shop_table_responsive tr td::before{

        content:""!important;

    }

    .woocommerce-page table.shop_table_responsive tr td.product-thumbnail{

        text-align:center!important;

    }

    #add_payment_method table.cart img, .woocommerce-cart table.cart img, .woocommerce-checkout table.cart img{

        width:auto!important;

    }

  }



  @media only screen and (max-width: 992px) {

	  .woocommerce .addToBasketImg , .woocommerce-page .addToBasketImg {

		  max-width:80%!important;

	  }

    .footer1, .footer2, .footer3 {

        height:auto;

    }

    .whiteBox{

        min-height:400px;

    }

    .assistive-info{

        text-align:center;

    }

    .sitename{

        max-width:100%;

    }

    #site-content>.container{

		display: flex;

        flex-flow: column;

	}

    .sliderWrapper>.row{

        display: flex;

        flex-flow: column;

    } 

    .sliderWrapper>.row>.col-md-3{

        order: 2;

    }

	#site-content>.container #sidebar-left{

		display: block;

    	order: 2;

    }

    .headerBlock{

        text-align:center;

        float: right;

    }

    #top-menu{

        display: block;

        float: none;

        margin: 0px;

        padding: 5px 0px;

        text-align: center;

    }

    .topIcons{

        float:none;

        margin: auto;

        text-align: center;

    }

    .homeSlide img{

        display:none;

    }

    .homeSlide{

        background-image:url('images/slide2.jpg');

        background-position:center;

        background-size: auto 100%;

        min-height:40vh;

    }

    .nav-menu.responsive li{

        float:left;

    }



    .nav-menu li.menu-toggle{

        float: left;

        position: relative!important;

        height: 60px;

        width: 100%;

    }

    .mobileLogo img{

        max-width:100px!important;

    }

  }

  .orangeButton:visited{

      color:#FFF;

  }

  .embed-responsive{

      overflow:auto!important;

  }

  .woocommerce form .form-row .input-checkbox{

      position:relative;

  }

  .wc-stripe-elements-field, .wc-stripe-iban-element-field{

    position: relative;

    height: 30px;

  }

  #shipping_method .form-control{

      width:auto;

  }



  #top-menu li a{

    white-space: nowrap;

  }

  @media only screen and (min-width: 768px) {

    #searchBar.hidden-mobile{

        display:none!important;

    }

  }

  @media only screen and (max-width: 768px) {

    #searchBar.hidden-mobile{

        display:none;

    }

  }

  .mobileFilter{

    padding-bottom:20px;

}

.widgettitle{

    font-family: var(--header-font)!important;

    font-size: 22px;

}

.assistive-info .sitename{

	color: #373A41;

    font: normal normal bold 48px / 48px var(--main-font)!important;

	text-transform: none;

}

h4, .page h4, .widget-title, .rollover-content h2.entry-title, .flex-caption h2, .gform_wrapper .gsection .gfield_label, .gform_wrapper h2.gsection_title, .vc-carousel.vc-build .vc-carousel-slideline .vc-carousel-slideline-inner > .vc-item h2, .button-load-more, .paginator .loading-ready {

    color: #373A41;

    font: italic normal normal 28px / 33px "Merriweather Sans", Helvetica, Arial, Verdana, sans-serif;

    text-transform: none;

    margin-top: 0px;

    clear: both;

}

.email, .phone{

    position:relative;

    margin-left:52px;

    line-height:42px;

    font-weight:bold;

    font-size:18px;

}

.email:before{

    content: "";

    position: absolute;

    left: -50px;

    top: -6px;

    width: 42px;

    height: 30px;

    background-size: 42px 30px;

    background-image:url("images/envelope.JPG");

    background-repeat: no-repeat;

}

.phone:before{

    content: "";

    position: absolute;

    left: -50px;

    top: -6px;

    width: 42px;

    height: 30px;

    background-size: 42px 30px;

    background-image:url("images/phone.JPG");

    background-repeat: no-repeat;

}

.headerContact{

    float:right;

}



.homeFormText {

    float: right;

    text-align: left;

    font-size: 16px;

    line-height: 11px;

}



#homeFormSubmit {

	border-radius: 0;

}



.orangeButton {

	background-color: #DD9923;

	font-family: "Raleway", Arial, Helvetica, sans-serif;

	font-size: 18px;

	font-weight: bold;

	text-transform: uppercase;

	color: #fff;

	padding: 8px 25px;

	text-align: center;

    transition: padding 0.2s ease-in-out;

    border:0px;

}



.orangeButton:hover {

	color: #fff;

	padding: 8px 30px;

}



.elementor-section.fullWidth {

	background-size: cover;

}



.fullWidth img {

	width: 100%;

}



ul {

  margin: 0;

}

ul.dashedUl {

  list-style-type: none;

}

ul.dashedUl > li {

  text-indent: -15px;

}

ul.dashedUl > li:before {

  content: "-     ";

  text-indent: -5px;

}

img{

    margin-bottom:0px;

}



.btn-default:hover, .btn-default:focus, .btn-default.focus, .btn-default:active, .btn-default.active, .open > .dropdown-toggle.btn-default{

    background-color:#DD9923;

}

.headerSized h1{   

    font-size:80px;

    color:#3e0346;

}

.headerSized h2{   

    font-size:40px;

    color:#3e0346;

}

@media only screen and (max-width: 768px) {

    .headerSized h1{   

        font-size:40px;

    }

    .headerSized h2{   

        font-size:20px;

    }

}

.embed-responsive.embed-responsive-16by9 {

    padding-bottom: initial;

    position: relative;

    display: block;

    height: 326px;

}

.underlineH2 h2{

	position:relative;

}

.underlineH2 h2:after{

	content:"";

	position:absolute;

	bottom:0px;

	width:200px;

	height:20px;

}

.headerSized h1{

    text-transform: uppercase;

}

.headerSized{

    height:30vw;

    background-position:center;

    background-repeat:no-repeat;

    background-size:cover;

    display: flex;

    align-items: center;

}

.innerHeader{

    text-align:center;

}



.nav-menu .menu-toggle {

    display: none;

}



@media screen and (max-width:768px) {

    .nav-menu li:not(:first-child) {

	display: none;

    }

    

    .nav-menu li.menu-toggle {

	float: right;

	display: block;

    }

}



@media screen and (max-width:768px) {

    .nav-menu.responsive {

	position: relative;

    }



    .nav-menu.responsive .menu-toggle {

    	position: absolute;

    	right: 0;

    	top: 0;

    }



    .nav-menu.responsive li {

    	float: none;

    	display: inline;

    }



    .nav-menu.responsive li a {

  	display: block;

    	text-align: left;

    }

}





.children ul {

    display: none;

    box-shadow: 8px 8px 16px 0px rgba(0,0,0,0.2);

    left: 100%;

    top: 0;

}






p{

    margin:0px;

}



img {

    vertical-align: middle;

    max-width: 100%;

    height: auto;

}

.app-pagination .page-numbers {

    padding: 5px;

    border: 1px solid #cacaca;

    margin: 10px 0px;

    display: inline-block;

}

.app-pagination .page-numbers, .app-pagination .page-numbers:visited, .app-pagination .page-numbers:active{

    color:var(--link-color);

    text-decoration:none;

}

.app-pagination .page-numbers:hover{

    color:var(--link-hover-color);

    text-decoration:none;

}

.topBar{

    background-color:#000000;

    color:#FFF;

}

.headerIcons{

    display:inline-block;

    font-size:22px;

}

.searchBox .form-control::placeholder{

    font-weight:bold;

    color:#949596;

}

.menu, .nav-menu{

    list-style:none;

} 

.menu li, .nav-menu li{

    padding: 0px 10px;

    display:inline-block;

}

.mainMenuBar{

    background-color:#3E6085;

}

.topBar, .topBar a{

    color:#FFF;

}

.blog-footer .menu li, .blog-footer .nav-menu li{

    display:block;

}

#menu-top-menu li{

    position:relative;

}

#menu-top-menu li:after{

    content:"|";

    color:#FFF;

    position:absolute;

    right:-5px;

}

#menu-top-menu li:last-child:after{

    content:"";

}

.productSection .woocommerce-loop-product__title{

    text-align: center;

    padding-top: 10px;

    font-size: 16px!important;

    width: 100%;

}

.productSection .price bdi{

    text-align: center;

    font-size: 16px!important;

    color: #DB8448;

    font-weight: 700;

}

.productSection .price{

    display: block;

    text-align: center;

    width: 100%!important;

}

.productSection a.add_to_cart_button{

    margin-top: 15px;

    width: 100%;

    text-align: center;

    color: #3C6186;

    border: 2px solid #3C6186;

    border-radius: 15px;

    background-color: #fff;

}

.productSection a.add_to_cart_button:hover{

    color: #fff;

    background-color: #3C6186;

}

.add_to_cart_btn{

    display: flex;

    height: 100%;

    flex-direction: inherit;

    justify-content: flex-end;

}

.productSection .sliderProd .whiteBox{

    display: grid;

}

.productSection .sliderProd .attachment-woocommerce_thumbnail{

    background-color: #F2F2F2;

    border-radius: 15px;

}

.woocommerce div.product {

    margin: 10px 0px!important;

}

.single-product .entry-summary .product_title.entry-title{

    color: #000;

    font-weight: 700!important;

    font-size: 22px;

}

.single-product .entry-summary .price .woocommerce-Price-amount.amount bdi{

    text-align: center;

    font-size: 20px!important;

    color: #DB8448;

    font-weight: 700;

}

.single-product .entry-summary .cartAndWish .cart .single_add_to_cart_button{

    margin-top: 15px;

    width: 100%;

    text-align: center;

    color: #3C6186;

    border: 2px solid #3C6186!important;

    border-radius: 15px!important;

    background-color: #fff!important;

    font-weight: 700!important;

}

.single-product .entry-summary .cartAndWish .cart .single_add_to_cart_button:hover{

    color: #fff!important;

    background-color: #3C6186!important;

} 

.single-product .sliderWrapper #product-slider, .single-product .sliderWrapper .slick-slide{

    background-color: #F2F2F2;

    border-radius: 15px;

} 

.single-product .sliderWrapper #product-slider .productSlide.slick-slide.slick-current.slick-active{

    border: none!important;

} 

.productSection .sliderProd .whiteBox .productBorderWrapper{

    border: none!important;

}



.shop_table tr td .coupon #coupon_code{

    width: 145px!important;

}



.woocommerce-pagination .page-numbers{

    justify-content: center;

    font-size: 18px;

    font-weight: 500;

    color: #ffffff;

}

.woocommerce-pagination .page-numbers span,

.woocommerce-pagination .page-numbers a{

    border: 2px solid #ffffff;

    border-radius: 10px;

    margin: 5px!important;

}

.woocommerce-pagination .page-numbers span.page-numbers.current{

    color: #000;

    font-weight: 700;

}

.woocommerce nav.woocommerce-pagination ul,

.woocommerce nav.woocommerce-pagination ul li{

    border: none!important;

}

.blog-footer .footer6{
    text-align: center;
    margin-top: 10px;
    font-weight: 500;
}
.blog-header .headerContent{
    padding: 30px;
    font-weight: 500;
}
.blog-header .contact{
    text-align: end;
    padding: 10px!important;
}
.blog-header .contact a,
.blog-header .contact,
#site-navigation a,

.blog-footer .footerSocials{
    max-width: 125px!important;
}
.blog-footer .footer1 .wp-block-image img{
    max-width: 240px;
}
.pageMainImage{
    position: relative;
    z-index: -1;
}





.footer-container{
    background-color: #253873;
}

.footer-container a,.footer-container i{
    color:white;
}

.footer2 ul,.footer3 ul,.footer4 ul{
    display: flex;
    flex-direction: column;
}






*{

    font-family:var(--main-font);

}

h1,h2,h3,h4,h5,h6{
    font-family:var(--header-font);
}


.font-primary{
    font-family: var(--main-font);
}

.font-secondary{
    font-family: var(--header-font);
}


.footer-container{
    font-size:0.875rem;
}

.footer-container{
    font-size:0.875rem;
}

.footer-container li,.footer-container ul{
    padding:0;
}

.footer-container .footer5{
    display:flex;
    column-gap: 1rem;
}

.linearLogoColours{
    background: rgb(16,51,117);
    background: linear-gradient(90deg, rgba(16,51,117,1) 0%, rgba(236,76,20,1) 50%, rgba(4,236,252,1) 100%);
}



.sub-menu{
    display:none;
}

#primary-menu > li:hover > .sub-menu{
    display:flex;
}

#primary-menu{
    position: relative;
}

#primary-menu > li > a{
    padding-bottom:2rem;
    display:inline-block;
    color:rgb(0, 0, 0);
    text-decoration: none;
}


#primary-menu a{
    font-family: var(--main-font);
    font-size: 1rem;
    font-weight: 500;
}

#primary-menu > li > .sub-menu{
    position: absolute;
    left:0;
    top:100%;
    width:100%;
    background-color:white;
    padding:1rem;   
    display:none;
    flex-direction: column;
    row-gap: 1rem;
}



.header{
    background-color:white;
}

.trig-scroll-top .header{
    background-color:transparent;
}

.trig-scroll-top #primary-menu > li > a{
    color:white;
}

*/

:root{


    --font-primary: 'Montserrat', sans-serif;

    --font-secondary: 'Montserrat', sans-serif;

    --colour-high-100: white;
    --colour-high-50: #f0f0f0;

    --colour-low-100: black;

    --colour-primary-100: #103375;
    --colour-secondary-100: #ec4c14;
    --colour-ternary-100: #04ecfc;
    

    --background-50:rgb(250, 250, 250);

    --font-size-base:0.125rem;

}


.bg-primary-100{
    background-color: var(--colour-primary-100);
}






/* ADD page-id FOR BLUE NAV*/
.page-id-107 .header-container
{
    background-color: var(--colour-primary-100);
}

.page-id-107 .header-container .blue-logo-wrapper
{
    display: none!important;
}

.page-id-107 .header-container .white-logo-wrapper
{
    display: block!important;
}

.page-id-107 .header-container nav > ul > li > a
{
    color:white;
}

.page-id-107 .header-container .headerBlock a
{
    color:white;
}







/* FONT SIZE */
.text-1{
    font-size: calc( var(--font-size-base) * 1 );
}
.text-2{
    font-size: calc( var(--font-size-base) * 2 );
}
.text-3{
    font-size: calc( var(--font-size-base) * 3 );
}
.text-4{
    font-size: calc( var(--font-size-base) * 4 );
}
.text-5{
    font-size: calc( var(--font-size-base) * 5 );
}
.text-6{
    font-size: calc( var(--font-size-base) * 6 );
}
.text-7{
    font-size: calc( var(--font-size-base) * 7 );
}
.text-8{
    font-size: calc( var(--font-size-base) * 8 );
}

.text-12{
    font-size: calc( var(--font-size-base) * 12 );
}

.text-12{
    font-size: calc( var(--font-size-base) * 12 );
}

.text-16{
    font-size:1rem;
}

.text-18{
    font-size:1.125rem;
}


.w-40{
    width:40%;
}

.inline-block{
    display: inline-block;
}





.w-logo{
    width:200px;
}

.bg-high-100{
    background-color:var(--colour-high-100);
}

*{
    font-family: var(--font-primary);
}

.linearLogoColours{
    background: rgb(16,51,117);
    background: linear-gradient(90deg, var(--colour-primary-100) 0%, var(--colour-secondary-100) 50%, var(--colour-ternary-100) 100%);
}


/*
ul{
    padding:0;
}
*/


h1,h2,h3,h4,h5,h6{
    font-family: var(--font-secondary);

}

p,a{
    font-family: var(--font-primary);

}


.font-primary *{
    font-family: var(--font-primary);
}

.font-secondary *{
    font-family: var(--font-secondary);
}




.header .white-logo-container{
    display:none;
}

.header .blue-logo-container{
    display:block;
}

.trig-scroll-top .header .white-logo-container{
    display: block;
}

.trig-scroll-top .header .blue-logo-container{
    display: none;
}

.white-logo-container a{
    display:block;
}

.header .blue-logo-container figure{
    margin:0;
}

.white-logo-container img{
    width:200px;
    height:53.8692261507px;
}



/*
#primary-menu{
    display:flex;
    column-gap:1rem;
    position: relative;
    margin:0;
}
*/

.top-100{
    top:100%;
}

#primary-menu > li > .sub-menu{
    display: none;
    position: absolute;
    flex-wrap:wrap;
    flex-direction: column;
    top:100%;
    left:0;
    right:0;
    background-color: var(--colour-high-100);
    padding:2rem;
}

#primary-menu > li > .sub-menu .sub-menu{
    display: block;
}



#primary-menu > li:hover > .sub-menu{
    display: flex;
    row-gap: 2rem;
    column-gap: 2rem;
}

#primary-menu > li > .sub-menu a{
    color:var(--colour-low-100);
}

#primary-menu > li > .sub-menu > li > a{
    font-weight: bold;
}


#primary-menu > .menu-item-8 > .sub-menu{
    flex-direction: row;
    
}

.position-unset{
    position: unset!important;
}



.left-0{
    left:0;
}

.right-0{
    right:0;
}



#primary-menu > .menu-item-8 > .sub-menu > li{
    width:40%;
    display: inline-block;

}


.menu-item{
    list-style-type: none;
}



.trig-scroll-top .header{
    background-color: transparent;
    box-shadow: none;
}








.header #primary-menu .menu-toggle{
    display:none;
} 

.header #primary-menu > li > a{
    font-weight:bold;
    padding-bottom:1rem;
    display: block;
    border-bottom-style: solid;
    border-bottom-width:2px;
    border-bottom-color:transparent;
} 

.header #primary-menu > li:hover > a{
    border-bottom-color:var(--colour-ternary-100);
} 


.trig-scroll-top .header #primary-menu > li:hover > a{
    border-bottom-color:transparent;
} 


.footer-container{
    background-color:var(--colour-primary-100);
}

.footer-container a,.footer-container i{
    text-decoration: none;
    color:var(--colour-high-100);
}

.footer-container i{
    font-size: 1.5rem;
}

.footer-container a,.footer-container p{
    font-size: 0.8rem;
}


.footer-container .footer5{
    display: flex;
    column-gap:1rem;
}



.is-primary-header .header a{
    color:var(--colour-low-100);
}

.is-primary-header .white-logo-container{
    display: none!important;
}

.is-primary-header .blue-logo-container{
    display: block!important;
}

.is-primary-header.trig-scroll-top #primary-menu > li:hover > a{

    border-bottom-color:var(--colour-ternary-100);

}

form .col div{
    display: flex;
    flex-direction: column;
}

form input[type="submit"]{
    background-color: var(--colour-primary-100);
    color:var(--colour-high-100);
}

ul{
    margin:0;
}




#header a{
    color:black;
    text-decoration: none;
}

#primary-menu .sub-menu{
    display: block;
}

#primary-menu > div > li > a{
    font-weight: bold;
}





.header button::before{
    font-family: "Font Awesome 5 Free"; 
    font-weight: 900; 
    content: "\f0c9";

}

.nav-is-open .header button::before{
    content: "\f00d";
}



.nav-is-open .header{
    position: fixed;
    left:0;
    right:0;
    top:0;
    bottom:0;
}

body.nav-is-open{
    overflow: hidden;
}

.max-w-logo{
    max-width:200px;
}





.header .white-logo-wrapper{
    display: none;
}



/*

.page-id-24 .header{
    position: absolute;
    left:0;
    right:0;
    top:0;
    background-color: transparent;
}


.page-id-24 .header button::before{
    color:white;
}


.page-id-24 .white-logo-wrapper{
    display: block;
}

.page-id-24 .blue-logo-wrapper{
    display: none;
}


*/


.nav-is-open .header{
    background-color: white;
}

.nav-is-open .header button::before{
    color:black;
}

.nav-is-open .header .white-logo-wrapper{
    display: none;
}

.nav-is-open .header .blue-logo-wrapper{
    display: block;
}




figure{
    margin:0;
}


.flex-1{
    flex:1;
}

.flex-md-1{
    flex:1;
}


.header .primary-menu-container{
    display: none;
}

.nav-is-open .header .primary-menu-container{
    display: block;
}



.header li{
    display:flex;
    flex-direction:column;
}

.header nav a{
    text-align:center;
}



.header .sub-menu .sub-menu{
    display: none;
}


.header a{
    text-decoration: none;
    color: var(--colour-low-100);
}

.header li{
    text-decoration: none;
    color: var(--colour-low-100);
}

.header .sub-menu li.is-open > a::after{

    content: '\f107'!important;
}

.header .sub-menu li.menu-item-has-children > a::after{
    display: inline-block;
      font-style: normal;
      font-variant: normal;
      text-rendering: auto;
      -webkit-font-smoothing: antialiased;
      font-family: "Font Awesome 5 Free"; font-weight: 900;
    content: '\f106';
}

.header .sub-menu li.menu-item-has-children > a{
    display:flex;
    justify-content: center;
    column-gap:1rem;
}

.header li.is-open > .sub-menu{
    display: block;
}




.header nav > ul > li > a{
    font-weight:bold;
}


.primary-slider .swiper-slide{
    padding:0 1rem;
}


.primary-slider .swiper-slide-inner{
    height:200px!important;
}

.primary-slider .swiper-slide img{
    height:100%!important;
    object-fit: contain;
    object-position: center;
}









/* sm */
@media screen and (min-width:576px){

}

/* md */
@media screen and (min-width:768px){

    .header nav{
        position: relative;
        
    }





    .header nav > ul > li > .sub-menu{
        display: none;
        position: absolute;
        left:0;
        right:0;
    }


    .header nav > ul > li:hover > .sub-menu{
        display: flex;
        z-index: 10000;
        background-color: white;
        top:100%;
        flex-wrap: wrap;
    }

    .header nav > ul > li:hover > .sub-menu > li{
        width:50%;
    }



    .header nav > ul{
        column-gap:1rem;
    }

    .header nav > ul > li > a{
        padding-bottom:1rem;
        border-width:0 0 2px;
        border-color:var(--colour-high-100);
        border-style: solid;
    }

    .header nav > ul > li > a:hover{
        border-color:var(--colour-ternary-100);
    }

    .header .sub-menu .sub-menu{
        display: block!important;
    }


    .header nav > ul > li > ul > li > a{
        font-weight:bold;
    }


    .header .sub-menu li.menu-item-has-children > a::after{
        content: ''!important;
    }



    .header nav > ul > li > .sub-menu{
        padding:1rem 2rem 2rem 2rem;
    }

    .header #menu-item-7 > .sub-menu{
        row-gap:1rem;
        flex-direction: column;
    }

    .header #menu-item-7 > .sub-menu > li > a{
        text-align: start;
    }


    .header #menu-item-8 .sub-menu a{
        text-align: start;
        justify-content: start;
    }


    .header #menu-item-8 > .sub-menu{
        row-gap:1rem;
    }

    .header #menu-item-9 > .sub-menu{
        row-gap:1rem;
    }

    .header #menu-item-9 > .sub-menu > li > a{
        text-align: start;
    }




  .home .primary-slider .swiper-wrapper > div:nth-child(1) img{
    height:80%!important;
  }


  
  .home .primary-slider .swiper-wrapper > div:nth-child(9){
    width:180px!important;
  }

  .home .primary-slider .swiper-wrapper > div:nth-child(9){
    width:200px!important;
  }

  .home .primary-slider .swiper-wrapper > div:nth-child(20){
    width:180px!important;
  }

  .home .primary-slider .swiper-wrapper > div:nth-child(29){
    width:200px!important;
  }
  .home .primary-slider .swiper-wrapper > div:nth-child(30){
    width:200px!important;
  }
  .home .primary-slider .swiper-wrapper > div:nth-child(31){
    width:230px!important;
  }
  .home .primary-slider .swiper-wrapper > div:nth-child(35){
    width:240px!important;
  }


  


}

/* lg */
@media screen and (min-width:992px){

}

/* xl */
@media screen and (min-width:1200px){

}

/* xxl */
@media screen and (min-width:1400px){

}


.elementor-swiper-button-next{
    right:-2rem!important;
}

.elementor-swiper-button-prev{
    left:-2rem!important;
}


.primary-slider .elementor-swiper-button{
    color:var(--colour-primary-100)!important;
}

.primary-slider .eicon-chevron-right,.primary-slider .eicon-chevron-left{
    font-size:3rem;
}





.swiper-pagination-bullet{
    background-color:white!important;
    width:0.5rem!important;
    height:0.5rem!important;
}



/* BORDER WIDTH */
.border-2{
    border-width:0.125rem;
}

/* BORDER STYLE */
.border-solid{
    border-style: solid;
}

/* BORDER COLOR */
.border-ternary-100{
    border-color: var(--colour-ternary-100);
}

/* BACKGROUND */
.bg-high-50{
    background-color:var(--colour-high-50);
}

/* TEXT COLOR */
.text-low-100{
    color:var(--colour-low-100);
}



.dots-slider .fas.fa-circle{
    font-size:1rem;
    opacity: 50%;
}

.dots-slider .slick-active .fas.fa-circle{
    opacity: 100%;
}






/*

html:is([data-scroll='0']) .page-id-24 .header{
    position: fixed;
    left:0;
    right:0;
    z-index: 10000000;
}

*/




.bg-background-50{
    background-color: var(--background-50);
}


.h-tile-description{
    height:12.5rem;
}

.h-tile-thumbnail,.h-tile-thumbnail img{
    height:18.75rem!important;
}


.w-tile-thumbnail,.w-tile-thumbnail img{
    width:100%;
}


.object-fit-cover,.object-fit-cover img{
    object-fit: cover;
}

.object-position-center,.object-position-center img{
    object-position: center;
}



@media screen and (min-width:768px) {
    .heading-buttons-container{
        position: absolute!important;
        bottom:1rem;
    }
}


@media screen and (min-width:768px) {
    .bg-linear-background-secondary{
    }
    
    .bg-linear-primary-background{
        background-color: #103375;
    }    
}


.heading-buttons-container > div > div > div{
    column-gap:1rem;
    row-gap:1rem;
}





.dots-secondary-100 .swiper-pagination-bullet{
    background-color:var(--colour-secondary-100)!important;
}

a{
    color:var(--colour-secondary-100);
}



.text-secondary-100{
    color:var(--colour-secondary-100);
}


@media screen and (min-width:768px){

    .spotlight-img-container > div > div,
    .spotlight-img-container > div > div > div,
    .spotlight-img-container > div > div > div > img
    {
        height:100%;        
    }

    .spotlight-img-container > div > div > div > img
    {
        object-fit: cover;
        object-position: ceter;        
    }

}



.site-image-slider .elementor-image-carousel-wrapper,
.product-image-slider .elementor-image-carousel-wrapper{
    padding:0!important;
}

.site-image-slider .elementor-image-carousel img,
.product-image-slider .elementor-image-carousel img
{
    height:25rem;
    width:100%;
    object-fit: cover;
    object-position: center;
}

@media screen and (min-width:768px) {
    .site-image-slider .elementor-image-carousel img,
    .product-image-slider .elementor-image-carousel img{
        height:18rem;
    }
}

body{
    font-family: var(--font-secondary);
}

.page-id-105 .the-title{
    font-family: var(--font-secondary);
    font-weight: bold;
    font-size: 1rem;
    color:black;
}

.page-id-105 .the-excerpt{
    font-family: var(--font-secondary);
    font-size: 1rem;
    color:black;
}

.page-id-105 .read-more{
    font-family: var(--font-secondary);
    font-size: 1rem;
    font-weight: bold;
    color:black;
}

.page-id-105 .attachment-post-thumbnail{
    height:18.75rem!important;
    width:100%;
    object-fit: cover;
    object-position: center;
}

.single-newsandproject #the-banner{
    height:20rem;
    background-position: center;
    background-size: cover;
}

.single-newsandproject #the-title{
    font-size: 2rem;
    font-weight: bold;
}

.product-image-slider img,
.page-id-1430 .site-image-slider img{
    object-fit: contain!important;
    object-position: center!important;
}





#the-header #contact-info-container{
    display: none;
}

#the-header nav > ul{
    padding:0;
}

#the-header .headerContact img{
    height:auto;
    width:100%;
    max-width:15rem;
}

#the-header #logo-container{
    display: flex;
    justify-content: center;
}

#info-menu-container a{
    color:var(--e-global-color-secondary);
}



@media screen and (min-width:992px) {
    #the-header #contact-info-container{
        display: block;
    }

    #info-menu-container{
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        align-items: flex-end;
    }



    #mega-menu-primary{
        position: relative!important;   
    }

    #mega-menu-primary > li{
        position: unset!important;  
    }

    #mega-menu-primary > li > ul{
        position: absolute!important;
        left:0!important;
        right:0!important;
    }

    #the-header{
        padding:1rem 0;
    }

}

.footer1 img{
    height:auto;
    width:100%;

}



.mega-sub-menu{
    background-color:white!important;
}


#wpcf7-f4-p107-o1 label{
    width:100%;
}


#the-footer{
    background-color: var(--colour-primary-100);
}

#the-footer .footer1 img{
    width:13rem;
}

#the-footer .footer5 i{
    color:white;
    font-size: 1.5rem;
}



#the-footer #logo-socials-container{
    display: flex;
    justify-content: center;
}

#the-footer #footer-nav-container{
    display: flex;
    justify-content: space-evenly;
}

#the-footer #footer-nav-container ul{
    padding:0;
}

#the-footer #footer-nav-container a{
    text-align: center;
    color:white;
}

#the-footer{
    padding-bottom: 1rem;
    padding-top: 1rem;
    font-size: .8rem;
}

#the-footer #logo-container{
    display: flex;
    justify-content: center;
}

#the-footer .footer2,
#the-footer .footer3{
    text-align: center;
}

#the-footer #socials-container{
    display: flex;
    justify-content: center;
}

#the-footer #footer6{
    text-align: center;
}


#the-footer .footer6{
    text-align: center;
}


@media screen and (min-width:768px) {
    #the-footer #socials-container{
        justify-content:flex-end;
    }
}   




form label{
    width:100%;
    color:white;
}



.page-id-3194 form label{
    font-weight: 500;
}

.page-id-3194 .wpcf7-submit{
    width:100%;
}

.page-id-3194 .wpcf7-submit:hover,
.page-id-3194 .wpcf7-submit:active,
.page-id-3194 .wpcf7-submit:focus{
    background-color: var(--colour-secondary-100);
    color:var(--colour-high-50);
}

.page-id-3194 .wpcf7-response-output{
    color:var(--colour-high-50);
}



#header-info-strip{
    background-color: var(--colour-primary-100);
}

#header-info-strip .the-text{
    text-align: center;
    color: var(--wp--preset--color--white) !important;
    text-decoration: none;
}

#header-info-strip{
    text-align: center;
}



.postid-3246 #the-banner{
    background-image: url(/wp-content/uploads/2024/06/office-scaled.jpg);
}

.postid-3293 #the-banner{
	background-image: url(/wp-content/uploads/2025/03/ADVANCED-Blog-Banner.png);
}

.page-id-107 form label{
    color:black;
}


.info-banner{
    padding: 0.125rem;
    text-align: center;
    background-color: #103375;
}

.info-banner .the-info{
    text-align: center;
    color:white;
    font-weight: 500;
    font-size: 0.9rem;
    margin:0;
}

.widget-visible iframe{
	bottom:20px!important;
}


