/* STYLESHEET */

/* 
Colours
LightblueAB #16c1f3; 
Medium blue #00adef;
DarkblueAB #0072bc; 
*/

@font-face { font-family: "LatoRegular"; src: url("/library/fonts/Lato-Regular.otf"); }
@font-face { font-family: "LatoBold"; src: url("/library/fonts/Lato-Bold.otf"); }
@font-face { font-family: "AvenirRegular"; src: url("/library/fonts/AvenirLTStd-Medium.otf"); }
@font-face { font-family: "AvenirBold"; src: url("/library/fonts/AvenirLTStd-Black.otf"); }
@font-face { font-family: "SansationRegular"; src: url("/library/fonts/Sansation-Regular.otf"); }
@font-face { font-family: "SansationBold"; src: url("/library/fonts/Sansation-Bold.otf"); }

/* CSS reset */

* { background-repeat: no-repeat; background-position: center center; box-sizing: border-box; }
body {margin: 0px;padding: 0px;width: 100%;height: auto;background-color: #ffffff;color: #545454;font-family: AvenirRegular;font-size: 110%;line-height: 1.4;text-rendering: optimizeLegibility;-webkit-font-smoothing: antialiased;}
a { color: #000000; text-decoration: none; font-weight: normal; }
ul, ol { padding: 0px; margin: 0px; }
li { list-style-type: none; vertical-align: top; }
h1, h2, h3, h4, h5, h6 { padding: 0px 10px 10px 0px; margin: 0px; font-size: 100%; font-weight: normal; color: #000000; }
fieldset { padding: 0px; margin: 0px; border: none; }
input, textarea, select { font-family: AvenirRegular; font-size: 90%; background: transparent; border: solid #686868 1px; padding: 5px; color: #000000; box-sizing: border-box; }
input[type=text], input[type=password] { height: 30px; }
input[type=checkbox] { width: 20px; height: 20px; }
input[type=radio] { width: 17px; height: 17px; }
input[type=button], input[type=submit], button, a.button { font-size: 90%; cursor: pointer; background-color: #4c9bd0; color: #ffffff; padding: 10px 20px 10px 20px; border: solid #545454 1px; }
select { height: 30px; padding-right: 30px; background-image: none; background-repeat: no-repeat; background-position: right 10px center; }
p {padding: 0px 0px 20px 0px;margin: 0px;}
strong { font-weight: normal; font-family: AvenirBold; }
td, th { padding: 0px; text-align: left; vertical-align: top; }
th { font-family: AvenirBold; font-weight: normal; }
.hidden { display: none; }
.spacer { clear: both; height: 0px; }
table { border-spacing: 0px; }
td, th { padding: 0px; }


/* Layout */

.layout_standard { margin: 0px auto 0px auto; }
.layouttopmenu { clear: both; background: #000000; font-size: 90%; }
.layoutcontent { min-height: 500px; margin: 0px auto 0px auto; box-sizing: border-box; }

/* Header */

.layoutheader { background-color: #282828; }
.layoutheader .searchbar input[type=submit], .layoutheader .search input[type=submit] { display: none; }
.layoutheader .searchbar input[type=text], .layoutheader .search input[type=text] { width: 100%; height: 33px; border-radius: 15px; background-color: #ffffff; padding: 5px 30px 5px 12px; background-image: url(/images/CshRUCJhOx2bzl3xBixz01g01i.png); background-size: 26px 27px; background-position: right 1px center; background-repeat: no-repeat; }
.layoutheader .headerlogo img { max-width: 100%; height: auto; }
.fa-shopping-basket { color: #16c1f3; font-size: 30px; }
.headeraccount a { color: #16c1f3; font-size: 28px; }
.shop_basketlink .items { display: none; }


@media ( max-width: 1099px )
{
	.shop_basketlink { position: absolute; left: 60px; top: 10px; }
	.headeraccount { position: absolute; left: 20px; top: 10px; }
	.layoutheader .headerlogo { width: 100%; padding: 10px 10px 10px 10px; max-width: 500px; }
}

@media( min-width: 700px ) and ( max-width: 1099px )
{
	.layoutheader .headerlogo { margin: 0px auto 0px auto; }
}

@media( max-width: 699px )
{
	.layoutheader .headerlogo { padding: 60px 10px 10px 10px; }
}

@media( max-width: 499px )
{
	.layoutheader .searchbar { padding: 10px; height: 60px; }
}

@media( min-width: 500px ) and ( max-width: 1099px )
{
	.layoutheader .searchbar { padding: 10px; height: 60px; }
}

@media( min-width: 1100px )
{
	.layoutheader { background-image: url(/images/CCPWquJ3y4s8FDbpi8Av0em06l.png); background-position: right top; }
	.layoutheader .headerlogo { width: 50%; height: 180px; padding: 15px 45px 45px 40px; display: inline-block; }
	.searchbar { float: right; width: 368px; padding: 75px 40px 70px 40px; }
	.shop_basketlink { position: absolute; right: 20px; padding-top: 10px; }
	.headeraccount { position: absolute; right: 70px; padding-top: 10px; }
}



/* Menu */

@media( max-width: 1099px )
{
	.layouttopmenu .nav_multilevel { width: 100%; position: absolute; left: 0; top: 0; z-index: 100; }
	.layouttopmenu .nav_multilevel .toggle { position: absolute; top: 10px; right: 10px; width: 40px; height: 40px; cursor: pointer; z-index: 100; }
	.layouttopmenu .nav_multilevel .toggle svg { fill: #16c1f3; }
	.layouttopmenu .nav_multilevel .level1 { display: block; width: 100%; position: absolute; top: 0px; background-color: rgba(0,0,0,0.9); padding-top: 50px; }
	.layouttopmenu .nav_multilevel .level1 li { padding-left: 20px; }
	.layouttopmenu .nav_multilevel .level1 li a { display: block; padding: 5px; color: #ffffff; }
	.nav_multilevel .link204 { display: none; }
	.layouttopmenu .nav_multilevel .level3 { display: none; }
	.layouttopmenu .nav_multilevel.toggleoff .level1 { display: none; }
	.layouttopmenu .nav_multilevel.toggleon .level2 { display: block; }
}

@media( min-width: 1100px )
{
	.layouttopmenu { border-top: solid #ffffff 1px; background: #282828; }

	.nav_multilevel { height: 51px; text-transform: uppercase; font-family: AvenirBold; margin: 0px auto 0px auto; }
	.nav_multilevel a { display: block; color: #ffffff; padding: 0px 15px 0px 15px; line-height: 50px; }

	.nav_multilevel .toggle { display: none; }

	.nav_multilevel .level1 { text-align: center; }
	.nav_multilevel .level1>li { display: inline-block; }

	.nav_multilevel li:hover { background-color: #0072bc; }

	.nav_multilevel .level2 { font-family: AvenirRegular; text-align: left; text-transform: none; position: absolute; top: 230px; display: none; background-color: #282828; z-index: 20; }
	.nav_multilevel .level2 li { height: 40px; }
	.nav_multilevel .level2 li a { width: 280px; line-height: 40px; }
	.nav_multilevel .level1>li:hover .level2 { display: block; }
	.nav_multilevel .link204 { display: none; }
	
	.nav_multilevel .level3 { display: none; position: absolute; margin: -40px 0px 0px 280px; background-color: #282828; }
	.nav_multilevel .level2>li:hover .level3 { display: block; }
	
	.nav_multilevel .level4 { display: none; position: absolute; margin: -40px 0px 0px 250px; background-color: #282828; }
	.nav_multilevel .level3>li:hover .level4 { display: block; }
}


/* Breadcrumb (not included in Home layout) */

.layoutbreadcrumb { background: #ffffff; line-height: 1; padding: 20px 20px 20px 20px; }
.layoutbreadcrumb span { margin: 0px 11px 0px 11px; }
.layoutbreadcrumb span.first { margin-left: 0px; }

@media (max-width: 1219px)
{
	.layoutbreadcrumb { display: none; }
}


/* Footer */
.layoutfooter { clear: both; background: #ffffff; border-top: solid #ffffff 1px; }

.promobanner { margin: 40px 0px 40px 0px; background-image: linear-gradient(to right,#ff8f50, #ff8f50 50%, #7d22f2 50%, #7d22f2); }
.promobanner .imagetop { max-width: 800px; margin: 0px auto 0px auto; }
.promobanner img { max-width: 100%; width: auto; height: auto; display: block; margin: 0px auto 0px auto; }
.section12 .promobanner .imagetop { display: none; }

.footercontainer, .layoutcredits { background: #282828; color: #c1c1c0; font-size: 81.5%; }
.footercontainer a, .layoutcredits a { color: #c1c1c0; }
.footercontainer .nav_linklist li { display: inline-block; padding: 0px 10px 0px 0px; }
.footercontainer .nav_linklist svg { height: 30px; width: auto; }
.footercontainer .nav_linklist svg path { fill: #c1c1c0; }
.footercontainer .footercontact a:hover { color: #0072bc;}


.footercontainer .items { padding: 50px 10px 0px 10px; margin: 0px auto 0px auto; max-width: 1220px; box-sizing: border-box; }
/*
.fb { width: 25px; height: auto; margin: 0px 10px 22px 0px; }
.twitter { width: 35px; height: auto; margin: 0px 0px 22px 0px; }
.insta { width: 35px; height: auto; margin: 0px 0px 0px 0px; }
*/

@media( max-width: 1099px )
{
	.footercontainer .util_textbox { padding: 0px 0px 40px 0px; text-align: center;}
	.footercontainer .nav_linklist { text-align: center;}
	.footercontainer .footercontact p { padding: 0px 0px 0px 0px; line-height: 1.5;}
	.footercontainer .footercontact p a { font-family: AvenirBold;}
	.layoutcredits div.copyright,.layoutcredits div.beachshore {text-align: center; padding-bottom: 10px;}
}

@media( min-width: 1100px )
{
	.footercontainer .util_textbox { float: left; padding: 0px 140px 0px 0px; }
	.layoutcredits div.copyright { width: 50%; float: left; }
	.layoutcredits div.beachshore { width: 50%; float: right; text-align: right; }
}

.layoutcredits { padding: 0px 40px 40px 40px; }




/* Text styles */
/* For pagetitle, 169% = 27px; 238% = 38px; */ 
/*
.pagetitle, .headline, .shop_category h1 { font-family: AvenirBold; font-size: 238%; padding: 0px 0px 40px 0px; line-height: 1; }
.lightblue { color: #16c1f3; }
*/

.pagecontent h2, .leftimage .content h2, .rightimage .content h2 { color: #ffffff; font-size: 150%; font-family: AvenirBold; text-transform: uppercase; }
.pagecontent h3, .leftimage .content h3, .rightimage .content h3 {color: #dddddd;font-size: 140%;font-family: AvenirBold;}
.pagecontent h4, .leftimage .content h4, .rightimage .content h4 { color: #dddddd; font-size: 130%; font-family: AvenirBold; }
.pagecontent h5, .leftimage .content h5, .rightimage .content h5 { color: #dddddd; font-size: 120%; font-family: AvenirBold; }
.pagecontent h6, .leftimage .content h6, .rightimage .content h6 { color: #dddddd; font-size: 110%; font-family: AvenirBold; }
.pagecontent p, .leftimage .content p, .rightimage .content p { text-align: justify; }
.pagecontent a, .leftimage .content a, .rightimage .content a { color: #ffffff; }
.pagecontent a:hover, .leftimage .content a:hover, .rightimage .content a:hover { text-decoration: underline; }
.pagecontent a.button, .leftimage .content a.button, .rightimage .content a.button { color: #0072bc; background-color: #16c1f3; padding: 10px; display: inline-block; text-decoration: none; }
.pagecontent a.button:hover, .leftimage .content a.button:hover, .rightimage .content a.button:hover { color: #ffffff; background-color: #16c1f3; padding: 10px; display: inline-block; text-decoration: none; }
.pagecontent ul, .pagecontent ol, .leftimage .content ul, .rightimage .content ul, .leftimage .content ol, .rightimage .content ol { padding: 0px 0px 20px 0px; list-style-position: inside; }
.pagecontent ul li, .leftimage .content ul li, .rightimage .content ul li { list-style-type: disc; padding-right: 30px; }
.pagecontent ol li, .leftimage .content ol li, .rightimage .content ol li { list-style-type: decimal; padding-right: 30px; }


/* Content pages */

.pagebanner { display: none; }
.pagetitle {position: absolute;padding: 60px 0px 0px 0px;z-index: 10;text-align: center;width: 100%;color: #ffffff;font-size: 150%;text-transform: uppercase;font-family: AvenirBold;z-index: 10;}
.pagecontent {padding: 40px 10px 40px 10px;text-align: justify;}
.pagecontent_inner { border-top: solid transparent 60px; background-color: #0872b9bf;color: #ffffff;font-family: AvenirBold;text-align: center;padding: 20px;max-width: 1000px;margin: 0px auto 0px auto;box-shadow: 10px #000000;z-index: 10;/* clear: both; */}
.home .pagecontent_inner { border-top: none; }
.pagecomponents { clear: both; background: #ffffff; }

@media (max-width: 500px)
{
	.pagecontent_inner { border-top: solid transparent 100px; max-height: 400px; overflow-y: scroll; }
	.home .pagecontent_inner { border-top: none; }
}


.jarallax {
    position: relative;
    z-index: 0;
}
.jarallax > .jarallax-img {
    position: absolute;
    object-fit: cover;
    /* support for plugin https://github.com/bfred-it/object-fit-images */
    font-family: 'object-fit: cover;';
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
}


/* Standard text boxes */

.util_textbox .imagetop, .util_textbox .imageright, .util_textbox .imagebottom, .util_textbox .imageleft { background-size: cover; }

.leftimage, .rightimage { max-width: 1160px; margin: 0px auto 0px auto; clear: both; padding: 20px 20px 0px 20px; }
.std_newsarticlea .article, .leftimage .content, .rightimage .content { background-color: #00adef; border: solid #0072bc 0px; color: #ffffff; padding: 20px 20px 20px 20px; border-top-color: #ffffff; }

@media( max-width: 1199px )
{
	.std_newsarticlea .image, .leftimage .imagetop, .rightimage .imagetop { height: 200px; border-radius: 0px 50px 0px 0px; }
	.std_newsarticlea .article, .leftimage .content, .rightimage .content { border-radius: 0px 0px 0px 50px; }
}

@media( min-width: 1200px )
{
	.leftimage, .rightimage { min-height: 420px; }
	.std_newsarticlea .image, .leftimage .imagetop, .rightimage .imagetop { position: absolute; width: 400px; height: 400px; border-radius: 200px; border: solid #0072bc 3px; overflow: hidden; background-color: #ffffff;background-size: cover; }
	.std_newsarticlea .article, .leftimage .content { padding-left: 220px; margin-left: 200px; }
	.rightimage .content { padding-right: 220px; margin-right: 200px; }
}

@media( min-width: 1200px ) and ( max-width: 1499px )
{
	.leftimage { margin: 0px 20px 0px auto; }
	.rightimage { margin: 0px auto 0px 20px; }
	.leftimage .imagetop { right: 760px; }
	.rightimage .imagetop { left: 760px; }
	.leftimage .imagetop img, .rightimage .imagetop img { height: 100%; width: auto; }
}

@media( min-width: 1500px )
{
	.leftimage { max-width: 1460px; padding-left: 320px; }
	.rightimage { max-width: 1460px; padding-right: 320px; }
	.leftimage .imagetop { left: 50%; margin-left: -410px; }
	.rightimage .imagetop { left: 50%; margin-left: 10px; }
}


/* News articles */

.std_newsarticlea .headline { margin-bottom: 50px !important; }

/* Subsection menu */

.nav_simple { font-size: 120%; max-width: 1160px; margin: 40px auto 40px auto; }
.nav_simple .item { background-size: cover; background-position: center center; border-right: solid #ffffff 1px; height: 250px; text-align: center; background-color: #0072bc; color: #ffffff; border-top: solid #ffffff 1px; }
.nav_simple .item a { color: #ffffff; text-transform: uppercase; font-family: AvenirBold; }

.nav_simple .item .imagelink { display: none; }
.homemenu .item .imagelink { display: block; background-color: #16c1f3; width: 150px; height: 150px; display: block; border-radius: 75px; margin: 20px auto 20px auto; }
.homemenu .item .imagelink svg { height: 90px; margin: 30px 0px 30px 0px; }
.homemenu .item .textlink { padding: 0px 10px 0px 10px; display: block; }
.homemenu .item:hover { background-color: #16c1f3; }
.homemenu .item:hover .imagelink { background-color: #0072bc; }
.homemenu .item:hover .imagelink svg path, .homemenu .item:hover .imagelink svg polyline { fill: #ffffff; }

.subsectionmenu .item { padding-top: 100px; }
.subsectionmenu .item .textlink { display: block; padding: 10px; background-color: #0872b9bf; }

@media (min-width: 600px) and (max-width: 799px)
{
	.home .nav_simple .item { float: left; width: 33.33%; }
	.home .nav_simple .item:nth-child(1), .homemenu .item:nth-child(4), .homemenu .item:nth-child(6), .homemenu .item:nth-child(9) { border-left: solid #ffffff 1px; }
	.home .nav_simple .item:nth-child(4), .homemenu .item:nth-child(5), .homemenu .item:nth-child(9), .homemenu .item:nth-child(10) { width: 50%; }
}

@media (min-width: 800px) and (max-width: 1159px)
{
	.home .nav_simple .item { float: left; width: 33.33%; }
	.home .nav_simple .item:nth-child(1), .homemenu .item:nth-child(5), .homemenu .item:nth-child(8) { border-left: solid #ffffff 1px; }
	.home .nav_simple .item:nth-child(1), .homemenu .item:nth-child(2), .homemenu .item:nth-child(3), .homemenu .item:nth-child(4) { width: 25%; }
}

@media( min-width: 1160px )
{
	.home .nav_simple .item { float: left; width: 193px; }
	.home .nav_simple .item:nth-child(1) { border-left: solid #ffffff 1px; }
	.home .nav_simple .item:nth-child(7) { border-left: solid #ffffff 1px; width: 290px; }
	.home .nav_simple .item:nth-child(8), .homemenu .item:nth-child(9) { width: 289px; }
	.home .nav_simple .item:nth-child(10) { width: 290px; }
}

@media( min-width: 600px )
{
	.markets .nav_simple .item, .services .nav_simple .item { float: left; width: 33.33%; }
	.markets .nav_simple .item:nth-child(4), .markets .nav_simple .item:nth-child(5), .services .nav_simple .item:nth-child(4), .services .nav_simple .item:nth-child(5) { width: 50%; }

	.sales .nav_simple .item { float: left; width: 50%; }
}


.homemenu { margin: 0px auto 0px auto; }


/* Home */

.home .pagetitle { position: relative; font-family: SansationBold; color: #0072bc; background-color: #ffffff; padding: 50px 0px 50px 0px; font-size: 238%; text-transform: none; }
.home .pagecontent_inner { padding-top: 20px; }
.home .pagecomponents { background-color: #0072bc; }

.homeshop { border-top: solid #ffffff 1px; background-color: #16c1f3; background-image: url(/images/XXgO8ym2cQKTUdQvTABG0k305u.png); clear: both; height: 210px; padding: 65px 0px 65px 0px; font-family: LatoBold; }
.homeshop .content { height: 80px; background-color: #16c1f3; text-align: center; line-height: 80px; text-transform: uppercase; color: #ffffff; }
.homeshop:hover .content { background-image: linear-gradient(to right,#16c1f3 20%, #0072bc 50%, #16c1f3 80%); }
.homeshop:hover .content .webshop { color: #ffffff; }

.hometextboxes { clear: both; max-width: 1160px; margin: 0px auto 0px auto; }

.home .list_article { clear: left; }

.homebox { background: #0072bc; max-height: 290px; border-top: solid #ffffff 1px; border-right: solid #ffffff 1px; border-left: solid #ffffff 1px; }
.homebox:hover { background: #16c1f3; }
.homebox * { color: #ffffff; }
.homebox .titletxt, .homebox .content, .homebox .abstract { padding: 20px; }
.homebox .titletxt { float: left; padding-bottom: 0px; text-transform: uppercase; font-family: AvenirBold; font-size: 120%; }
.homebox .content, .homebox .abstract { clear: left; display: block; } 
.homebox .abstract::after { margin: 20px 0px 0px 0px; display: block; content: '+ Read more'; }
.homebox .abstract::after, .homebox a.homeboxlink { color: #16c1f3; } 
.homebox:hover .abstract::after, .homebox:hover a.homeboxlink { color: #0072bc; }
.homebox .imagetop, .homebox .bgimage { float: right; height: 290px; width: 290px; margin: 0px 0px 0px 20px; background-size: cover; }
.homebox table { margin-bottom: 20px; width: auto; }

@media (min-width: 1100px)
{
	.homebox { float: left; width: 50%; box-sizing: border-box; }
	.homebox:nth-child(2), .homebox:nth-child(4) { border-left: none; }
}

@media (max-width: 799px)
{
	.homebox .bgimage, .homebox .imagetop { width: 35%; }
	.homeshop .content { font-size: 75%; }
	.home .pagecontent { text-align: center; }
	.home .pagecontent img { float: none !important; clear: both !important; display: block; margin: 0px auto 0px auto; }
}

@media( min-width: 600px )
{
	.homeshop .content .visit { font-size: 450%; }
	.homeshop .content .our { font-size: 300%; padding: 0px 20px 0px 20px; }
	.homeshop .content .webshop { font-size: 450%; color: #0072bc; }
}

@media( max-width: 599px )
{
	.homeshop .content p { font-size: 200%; line-height: 1.3; }
	.homeshop .content .webshop { display: block; font-size: 150%; color: #0072bc; }
}



/* News page */

.std_newsarticlea { max-width: 1200px; margin: 0px auto 0px auto; padding: 0px 20px 0px 20px; }
.std_newsarticlea .headline { background-color: #0872b9bf; color: #ffffff; font-family: AvenirBold; text-align: center; padding: 20px 20px 20px 20px; max-width: 1000px; margin: 0px auto 0px auto; box-shadow: 10px #000000; z-index: 10; text-transform: uppercase; font-size: 150%; }
.std_newsarticlea .abstract, .std_newsarticlea .created { background-color: #0872b9bf; color: #ffffff; text-align: justify; padding: 0px 20px 20px 20px; max-width: 1000px; margin: 0px auto 0px auto; box-shadow: 10px #000000; z-index: 10; }


/* Shop breadcrumb */

.shop_category .breadcrumb, .shop_product .breadcrumb { position: absolute; padding: 20px 10px 20px 10px; line-height: 1; }
.shop_category .breadcrumb, .shop_product .breadcrumb { left: 70px; }
.shop_category .breadcrumb li, .shop_product .breadcrumb li { display: inline-block; }
.shop_category .breadcrumb li a, .shop_product .breadcrumb li a { margin: 0px 10px 0px 10px; }

@media (max-width: 1219px)
{
	.shop_category .breadcrumb, .shop_product .breadcrumb { display: none; }
}

@media (max-width: 799px)
{
	.shop_category .breadcrumb, .shop_product .breadcrumb { top: 180px; }
}

@media (min-width: 800px)
{
	.shop_category .breadcrumb, .shop_product .breadcrumb { top: 232px; }
}


/* Category page */

.shop_category h1 { text-align: center; background-position: center center; padding: 50px; text-transform: uppercase; font-family: AvenirBold; font-size: 120%; }
.shop_category .subcategories, .shop_category .shop_productlist, .shoppage .shop_categorylist, .hirepage .shop_categorylist
   { max-width: 1200px; margin: 50px auto 50px auto; }


/* Product page */

.shop_product { max-width: 940px; margin: 50px auto 0px auto; }
.shop_product .image { border: solid #16c1f377 0px; text-align: center; margin-bottom: 40px; background-size: contain; height: 400px; }
.shop_product .image img { display: none; }
.shop_product .details h1 { font-family: AvenirBold; font-size: 160%; padding: 0px 0px 20px 0px; }
.shop_product .details .price { font-family: AvenirBold; font-size: 160%; padding: 0px 0px 20px 0px; }
.shop_product .details .price .incvat { font-family: AvenirRegular; font-size: 60%; }
.shop_product .variants, .shop_product .accessories, .shop_product .downloads { clear: both; padding: 40px 0px 0px 0px; }
.shop_product .variants th, .shop_product .accessories th, .shop_product .downloads th { padding: 5px; }
.shop_product .variants td, .shop_product .accessories td, .shop_product .downloads td { padding: 5px; }
.shop_product .variants .price, .shop_product .accessories .price, .shop_product .accessories .link { text-align: right; }
.shop_product h2 { border-top: solid #16c1f377 3px; padding: 40px 0px 40px 0px; line-height: 1; text-transform: uppercase; font-weight: bold; font-size: 150%; }
.shop_product a { color: #0072bc; }
.shop_product table { width: 100%; }
.shop_product .stock { clear: both; }
.shop_product .basket { clear: both; }
.shop_product .disclaimer { margin: 40px 0px 0px 0px; clear: both; border-top: solid #16c1f377 3px; padding: 40px 0px 0px 0px; font-size: 80%; text-align: center; }
.shop_product .stock { padding: 20px 0px 20px 0px; border-top: solid #16c1f377 3px; }
.shop_product .stock .available { color: #00aa00; }
.shop_product .stock .outofstock { color: #ff7700; }
.shop_product .quantity { float: left; line-height: 40px; margin-right: 10px; }
.shop_product .quantity input {height: 40px;width: 80px;}
.shop_product .quantity .label { display: none; }
.shop_product .backorder { padding-top: 15px; color: red;}

@media (max-width: 879px)
{
	.shop_product { padding: 0px 10px 0px 10px; }
}

@media (min-width: 880px)
{
	.shop_product .image { float: left; width: 400px; }
	.shop_product .details { float: right; width: 420px; }
}


/* Category list */

.shop_categorylist, .shop_category .subcategories { clear: both; padding: 0px 20px 0px 20px; }
.shop_categorylist li a, .shop_category .subcategories li a { display: block; padding: 10px 0px 10px 0px; background-color: #0072bc; text-align: center; }
.shop_categorylist li:hover a, .shop_category .subcategories li:hover a { background-color: #16c1f3; }
.shop_categorylist li .image a, .shop_category .subcategories li .image a { height: 120px; }
.shop_categorylist li .name a, .shop_category .subcategories li .name a { color: #ffffff; height: 60px; text-transform: uppercase; }


/* Product list */

.shop_productlist { clear: both; }
.shop_productlist li { text-align: center; }
.shop_productlist li .bgimage { background-repeat: no-repeat; background-size: contain; display: block; min-height: 270px; }
.shop_productlist li .price { display: block; font-size: 120%; padding: 20px 0px 10px 0px; }
.shop_productlist li .name { display: block; }


/* Category and product list responsive */

@media (max-width: 599px)
{
	.shop_categorylist li, .shop_category .subcategories li, .shop_productlist li { padding: 0px 0px 10px 0px; }
}

@media (min-width: 600px) and (max-width: 999px)
{
	.shop_categorylist li, .shop_category .subcategories li, .shop_productlist li { float: left; width: 50%; }
	.shop_categorylist li:nth-of-type(2n+1), .shop_category .subcategories li:nth-of-type(2n+1), .shop_productlist li:nth-of-type(2n+1) { padding: 0px 5px 10px 0px; clear: left; }
	.shop_categorylist li:nth-of-type(2n+2), .shop_category .subcategories li:nth-of-type(2n+2), .shop_productlist li:nth-of-type(2n+2) { padding: 0px 0px 10px 5px; }
}

@media (min-width: 1000px) and (max-width: 1219px)
{
	.shop_categorylist li, .shop_category .subcategories li, .shop_productlist li { float: left; width: 33.3%; }
	.shop_categorylist li:nth-of-type(3n+1), .shop_category .subcategories li:nth-of-type(3n+1), .shop_productlist li:nth-of-type(3n+1) { padding: 0px 7px 10px 0px; clear: left; }
	.shop_categorylist li:nth-of-type(3n+2), .shop_category .subcategories li:nth-of-type(3n+2), .shop_productlist li:nth-of-type(3n+2) { padding: 0px 3px 10px 3px; }
	.shop_categorylist li:nth-of-type(3n+3), .shop_category .subcategories li:nth-of-type(3n+3), .shop_productlist li:nth-of-type(3n+3) { padding: 0px 0px 10px 7px; }
}

@media (min-width: 1220px)
{
	.shop_categorylist li, .shop_category .subcategories li, .shop_productlist li { float: left; width: 25%; }
	.shop_categorylist li:nth-of-type(4n+1), .shop_category .subcategories li:nth-of-type(4n+1), .shop_productlist li:nth-of-type(4n+1) { padding: 0px 30px 40px 0px; clear: left; }
	.shop_categorylist li:nth-of-type(4n+2), .shop_category .subcategories li:nth-of-type(4n+2), .shop_productlist li:nth-of-type(4n+2) { padding: 0px 20px 40px 10px; }
	.shop_categorylist li:nth-of-type(4n+3), .shop_category .subcategories li:nth-of-type(4n+3), .shop_productlist li:nth-of-type(4n+3) { padding: 0px 10px 40px 20px; }
	.shop_categorylist li:nth-of-type(4n+4), .shop_category .subcategories li:nth-of-type(4n+4), .shop_productlist li:nth-of-type(4n+4) { padding: 0px 0px 40px 30px; }
}


/* Contact page */

.contactpage { max-width: 1200px; padding: 0px 20px 0px 20px; margin: 0px auto 0px auto; }

.contactform h2, .contactdetails h2, .contactmap h2 { font-family: AvenirBold; font-size: 150%; color: #ffffff; }

.contactdetails a { color: #ffffff; }

.contactform .intro { background-color: #0072bc; color: #ffffff; padding: 40px 20px 40px 20px; }
.contactform .form { background-color: #efefef; padding: 40px 20px 40px 20px; }
.contactform .form input[type=text], .contactform .form textarea { background-color: #ffffff; width: 100%; }
.contactform .form .input { float: left; width: 70%; padding: 0px 0px 10px 0px; }
.contactform #fb-6-div .input { width: 100%;}
.contactform .form .field_area .label { float: none; width: 100%; padding: 0px 0px 10px 0px; }
.contactform .form .field_area .input { float: none; width: 100%; }
.contactform .form .field_area .input textarea { height: 150px; }

.contactdetails { background-color: #0072bc; color: #ffffff; padding: 40px 20px 40px 20px; margin: 40px 0px 0px 0px; }
.contactmap { background-color: #efefef; margin: 40px 0px 0px 0px; }
.contactmap h2 { padding: 40px 20px 20px 20px; color: #000000; }

@media (min-width: 800px)
{
	.contactform .intro { float: left; width: 50%; height: 600px; }
	.contactform .form { float: right; width: 50%; height: 600px; }
	.contactform .form .label { float: left; width: 30%; padding: 0px 0px 20px 0px;}
	.contactform .form .buttons { float: right; }
	
	.contactdetails { float: left; width: 50%; height: 600px; }
	.contactmap { float: left; width: 50%; height: 600px; }
	.contactmap h2 { height: 100px; }
	.contactform p, .contactdetails p {padding: 0px 0px 20px 40px;}
}

@media (max-width: 500px)
{
	.contactmap .map { max-width: 320px !important; margin: 0px auto}
}

/* Carousels */

.feat_carousel { height: 700px; margin: 40px 0px 40px 0px; }
.feat_carousel .carousel { overflow: hidden; position: relative; margin: 0px auto 0px auto; height: 700px; }
.feat_carousel .carousel>ul { width: 20000em; position: relative; }
.feat_carousel .carousel>ul>li { float: left; height: 700px; overflow: hidden; list-style-type: none; background-size: cover; background-position: center center; }
.feat_carousel .fas { color: #0072bc; font-size: 30px; padding: 20px 10px 0px 0px; }
.feat_carousel .buttons { text-align: center; box-sizing: border-box; }

.showlogos { height: 250px; }
.showlogos .carousel { height: 250px; }
.showlogos .carousel>ul>li { width: 250px !important; height: 250px; background-color: #0072bc; border-radius: 50%; margin-left: 20px; background-size: contain; }

.manufacturerlogos { height: 200px; }
.manufacturerlogos .carousel { height: 200px; }
.manufacturerlogos .carousel>ul>li { width: 200px !important; height: 200px; }


/* Gallery */

.swiper-container {
    width: 100% !important;
    padding-top: 50px !important;
    padding-bottom: 50px !important;
}
.swiper-slide {
    background-position: center !important;
    background-size: cover !important;
    /* width: 480px !important; */
    height: 500px !important;
}

.swiper-slide .caption { margin-top: 460px; height: 40px; background-color: #00000099; color: #ffffff; text-align: center; line-height: 40px; }


/* Basket */

.shop_basketpage { max-width: 1000px; margin: 40px auto 0px auto; }
.shop_basketpage h1 { text-align: center; text-transform: uppercase; font-family: AvenirBold; background-color: #0872b9bf; color: #ffffff; font-size: 150%; padding: 20px 0px 20px 0px; }
.shop_basketpage h2 { color: #00adef; text-transform: uppercase; font-family: AvenirBold; }
.shop_basketpage .topcomponents { padding: 20px 0px 20px 0px; }
.shop_basketpage .errors { color: #ff0000; padding: 0px 0px 20px 0px; text-align: center; }
.shop_basketpage table { width: 100%; margin-bottom: 40px; }
.shop_basketpage table th, .shop_basketpage table td{ padding: 5px; border-bottom: solid #efefef 1px; vertical-align: middle; }
.shop_basketpage table .baseprice, .shop_basketpage table .quantity, .shop_basketpage table .basetotal, .shop_basketpage table .tax, .shop_basketpage table .remove { text-align: right; }
.shop_basketpage table .quantity input { width: 80px; }
.shop_basketpage .formbuilder { max-width: 800px; margin: 0px auto 0px auto; padding: 0px 20px 20px 20px; background-color: #efefef; }
.shop_basketpage .formbuilder .field { clear: both; padding: 10px 0px 0px 0px; }
.shop_basketpage .formbuilder input, .shop_basketpage .formbuilder select, .shop_basketpage .formbuilder textarea { background: #ffffff; max-width: 100%; }
.shop_basketpage .formbuilder .field_group>.label, .shop_basketpage .formbuilder .field_section>.label { clear: both; float: none; width: auto; font-family: AvenirBold; padding-top: 20px; }
.shop_basketpage .formbuilder .field_group>.input, .shop_basketpage .formbuilder .field_section>.input { clear: both; float: none; width: auto; }
.shop_basketpage .pafbutton { margin-top: 10px; }
.shop_basketpage .buttons { text-align: center; padding: 40px 0px 0px 0px; }
.shop_basketpage .buttons input, a.button { margin-right: 10px; }
.shop_basketpage .payment { text-align: center; clear: both; }

.shop_basketpage .shippingmethod { max-width: 500px; margin: 0px auto 0px auto; text-align: center; }
.shop_basketpage .shippingmethod ul { margin-top: 20px; }
.shop_basketpage .shippingmethod li { padding: 10px; }
.shop_basketpage .shippingmethod li:hover { background-color: #efefef; }
.shop_basket .formbuilder #fb-24-div .label { height: 0px;}
.shop_basket .formbuilder #fb-24-div .input .help-block p { font-size: 90%;}

.shop_basketpage #basketmodeform { text-align: center; padding-bottom: 20px; }
.shop_basketpage #basketloginform { max-width: 300px; margin: 0px auto 0px auto; text-align: center; }
.shop_basketpage #basketloginform .label { float: none; width: auto; }
.shop_basketpage #basketloginform .input { float: none; width: auto; }
.shop_basketpage #basketloginform .input input { width: 100%; }

.shop_basketpage .paymentlogos { text-align: center; padding-top:50px;}
.shop_basketpage .paymentlogos li svg{ max-height: 80px; width:130px}
.shop_basketpage .paymentlogos li img {max-width: 70px; height: auto;}
#G_Pay_Acceptance_Mark { max-height: 80px; }
.paymentlogos .link2 svg { max-height: 70px;}
#Artwork {max-height: 60px; padding-top: 15px;}

@media (min-width: 501px)
{
	.shop_basketpage .paymentlogos ul { display: flex; flex-wrap: wrap; flex-direction: row; justify-content: space-evenly;}
	.shop_basket .basket .discount input[type=text] { height: 40px;}
}

@media (max-width: 500px)
{
	.shop_basketpage .paymentlogos .link1 img { max-height: 70px; width: auto;}
	#G_Pay_Acceptance_Mark { max-height: 70px;}
	.paymentlogos .link2 svg { max-height: 70px; padding-top: 20px;}
	#Artwork {max-height: 60px; padding-top: 25px;}
	.shop_basket .basket .discount { text-align: center;}
	.shop_basket .basket .discount input[type=text] { margin-bottom: 20px;}
	.shop_basket .contact, .shop_basket .billing, .shop_basket .shipping { text-align: center;}
}

@media( min-width: 820px )
{
	.shop_basketpage h2 { text-align: center; }
	.shop_basketpage .formbuilder .label { float: left; width: 200px; padding-right: 20px; }
	.shop_basketpage .formbuilder .input { float: left; width: 560px; }	
	.shop_basketpage .contact, .shop_basketpage .billing, .shop_basketpage .shipping { width: 33.3%; float: left; padding: 0px 0px 40px 0px; text-align: center; }
}

@media( max-width: 819px )
{
	.shop_basketpage .formbuilder input[type=text], .shop_basketpage .formbuilder select, .shop_basketpage .formbuilder textarea { width: 100%; }
	.shop_basketpage .contact, .shop_basketpage .billing, .shop_basketpage .shipping { padding: 0px 0px 40px 0px; }
	.shop_basketpage .buttons input { margin-bottom: 20px;}
}

@media( max-width: 1019px )
{
	.shop_basketpage { padding: 0px 10px 0px 10px; }
	.shop_basketpage table { font-size: 80%; }
	.shop_basketpage table .quantity select { width: 50px; }
}

.registerloginreminder { background-color: #16c1f3; padding: 10px; margin: 0px 0px 20px 0px; }
.registerloginreminder * { text-align: center; color: #ffffff; }

/* jQuery dialog */
 
.ui-dialog { border: none; padding: 0px; font-size: 15px; border-radius: 10px; }
.ui-dialog .ui-dialog-titlebar { background: #00adef; border: none; font-family: AvenirRegular ; text-transform: uppercase; border-radius: 10px 10px 0px 0px; padding: 10px; color: #ffffff; }
.ui-dialog .ui-dialog-titlebar .ui-dialog-titlebar-close { margin-right: 10px; }
.ui-dialog ul { padding: 0px; margin: 0px; }
.ui-dialog a { display: block; padding: 5px; }
.ui-dialog a:hover {background-color: lightgrey; }



/* Login */

.memb_loginbox { text-align: center; padding: 0px 10px 0px 10px; }
.memb_loginbox .fieldemail { padding-bottom: 10px; }
.memb_loginbox .fieldpw { padding-bottom: 20px;}
.memb_loginbox .fieldemail .label, .memb_loginbox .fieldpw .label { display: inline-block; width: 150px; text-align: right; }
.memb_loginbox .fieldemail input, .memb_loginbox .fieldpw input { width: 250px; }
.memb_loginbox .login { text-align: center; padding-bottom: 20px; }
.memb_loginbox .forgotpw { display: block; padding-bottom: 10px; }
.memb_loginbox .forgotpw a { color: #545454; }
.memb_loginbox .register { display: block; }
.memb_loginbox .register a { color: #545454;}
.memb_loginbox .stayloggedin { padding-bottom: 20px; }

.memb_loginbox .loggedin .introduction, .memb_loginbox .loggedin .status { padding-bottom: 30px; }
.memb_loginbox .loggedin .introduction li a:hover {text-decoration: underline;}

@media( max-width: 500px )
{
	.memb_loginbox .fieldemail .label, .memb_loginbox .fieldpw .label { display: block; text-align: center; width: auto; }
	.memb_loginbox .fieldemail input, .memb_loginbox .fieldpw input { width: 100%; }
}

/* Register */

@media (max-width: 899px)
{
	.memb_account { padding: 0px 10px 0px 10px; }
	.memb_account .input { padding-bottom: 10px; width: 100%; }
	.memb_account input, .memb_account textarea, .memb_account select { width: 100%; }
}

@media ( min-width: 900px ) 
{
	.memb_account { max-width: 800px; margin: 0px auto 0px auto; }
	.memb_account .spacer { padding-bottom: 10px;}
	.memb_account .label { float: left; clear: both; width: 30%;  }
	.memb_account .input { float: left; width: 70%; }
	.memb_account .input[type=text], .memb_account .formbuilder select { width: 100%; }
	.memb_account .buttons {padding-left: 240px;padding-top: 3;}
}

.memb_account .buttons { margin-top: 20px;}

/* Download centre */

.downloadlist, .preowned { max-width: 1030px; margin: 20px auto 20px auto; padding: 10px; }
.downloadlist th, .downloadlist td, .preowned th, .preowned td { padding: 5px; }
.downloadlist tr:hover, .preowned tr:hover { background-color: #eeeeee; }
.preowned th.section { background-color: #00adef; color: #ffffff; }
.downloadlist a:hover, .preowned a:hover { text-decoration: underline; }

@media (min-width: 501px)
{
	.downloadlist table, .preowned table { width: 100%; }
}
@media (max-width:500px)
{
	.downloadlist table, .preowned table { max-width: 300px !important; font-size: 80%; }
}

/* News archive */

.newsarchive { max-width: 1080px; margin: 0px auto 0px auto; padding: 50px 40px 0px 40px; }
.newsarchive .article { clear: both; padding: 0px 0px 50px 0px; min-height: 250px; }
.newsarchive .article .bgimage {  border-radius: 50%; background-size: cover; background-position: center center; border: solid #0072bc 5px; }
.newsarchive .article .created { font-size: 90%; padding: 0px 0px 5px 0px; }
.newsarchive .article .headline a { font-family: AvenirBold; }
.newsarchive .article .link { font-size: 90%; }
.newsarchive .article .link a { color: #0072bc; }
.newsarchive .article .link a:hover { text-decoration: underline; }

@media( max-width: 799px )
{
	.newsarchive .article .bgimage { float: right; margin: 0px 0px 20px 20px; }
	.newsarchive .article .bgimage { width: 100px; height: 100px;}
}

@media( min-width: 800px )
{
	.newsarchive .article { padding-left: 240px; min-height: 250px; }
	.newsarchive .article .bgimage { position: absolute; margin-left: -240px; }
	.newsarchive .article .bgimage { width: 200px; height: 200px; }
}


/* Pre-owned */

.preowned { max-width: 1000px; margin: 0px auto 0px auto; }
.preowned td, .preowned th { padding: 5px; }
.preowned th.section { background-color: #00adef; color: #ffffff; }

@media ( min-width: 501px)
{
	.preowned th {white-space: nowrap;}
}

/* GDPR cookie message */

#gdpr-cookie-message { top: auto; right: 20px; bottom: 20px; font-family: inherit; }
button#gdpr-cookie-accept { background-color: #00adef; }

@media (min-width: 1000px)
{
.util_sitesearch {max-width: 1240px; margin: 0px auto;}
}

@media (max-width: 999px)
{
	.util_sitesearch {padding: 20px 20px;}
}

.util_sitesearch .result .title { font-family: AvenirBold;}


.shop_orderhistory {padding: 40px 40px 40px 40px;}

.shop_orderhistory h1 {background-color:#4c9bd0; color: #ffffff; padding: 30px; text-align: center; font-size: 150%; text-transform: uppercase; font-family: AvenirBold;}
.shop_orderhistory .content table { width: 100%; margin: 40px;}
.shop_orderhistory .content table td {padding-bottom: 10px;}
.shop_orderhistory .content table th { font-size: 110%; font-family: AvenirRegular; padding-bottom: 10px;}
.shop_orderhistory .content table .view a:hover {text-decoration: underline;}
.shop_orderhistory .content .buttons { cursor: pointer; background-color: #4c9bd0;  padding: 10px 20px 10px 20px; border: solid #545454 1px; width: 120px; margin: 20px 0px;}
.shop_orderhistory .content .buttons a {color: #ffffff; text-align: center;}
.shop_orderhistory .content .billingaddress, .shop_orderhistory .content .shippingaddress { padding-top: 30px; }

.shop_basket .basket .introduction { border: 1px solid grey; margin-bottom:50px; }
.shop_basket .basket .introduction p { text-align: center; padding: 20px; font-size: 95%;}