/* THEME - DEFAULT */

html, body {min-height: 100%;}

html {
    position: relative;
    /* This image will be displayed fullscreen */
	/*background:url('/images/xyz 2.jpg') no-repeat center center;*/

	/* Ensure the html element always takes up the full height of the browser window */
	/*min-height:100%;*/

	/* The Magic */
	/*background-size:cover;*/
}

body{
	/* Workaround for some mobile browsers */
	min-height:100%;
    margin-bottom: 130px;/*60px;*/
    font-family: 'Open Sans', sans-serif;
}

.floatleft {float:left}
.floatright {float:right}
.alignleft {float:left;margin-right:15px;margin-bottom: 15px}
.alignright {float:right;margin-left:15px;margin-bottom: 15px}
.aligncenter {display:block;margin:0 auto 15px}
.nopadding {padding:0;}
.spacebox {margin-bottom: 20px;}

.textcenter {text-align:center;}
.displayinherit {display:inherit !important;}

a:focus {outline:0px solid}
img {max-width:100%;height:auto}
.fix {overflow:hidden}
p {margin:0 0 15px;}
h1, h2, h3, h4, h5, h6 {
  margin: 0 0 15px;
}

a {transition: all 0.3s ease 0s;text-decoration:none;color:#777}
a:hover {
  color: #ec4445;
  text-decoration: none;
}
a:active, a:hover {
  outline: 0 none;
}
ul{ list-style: outside none none; margin: 0; padding: 0; padding-left: 13px;}

hr {
       display: block;
       position: relative;
       padding: 0;
       margin: 8px auto;
       height: 0;
       width: 100%;
       max-height: 0;
       font-size: 1px;
       line-height: 0;
       clear: both;
       border: none;
       border-top: 1px solid #aaaaaa;
       border-bottom: 1px solid #ffffff;
    }
    
.multicolor {
    background: linear-gradient(330deg, #e05252 0%, #99e052 25%, #52e0e0 50%, #9952e0 75%, #e05252 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

nav.affix {
    left: 0;
    top: 0;
    width: 100%;
    z-index: 1000;
}

/*.affix + .container-fluid {
    padding-top: 160px;
}*/

.thumbnail { /*customize bootstrap*/
    padding: 1px;
    border-radius: 0;
    object-fit: cover;
    width:100%;
    height:100%;
    margin-bottom: 15px;
}

#background-image {
    z-index: 1;
}

#background-image:before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    
    background: no-repeat center center fixed;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    
    opacity: 0.6;
    filter:alpha(opacity=40);
    height:100%;
    width:100%;
}

#background-image-carousel {
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    


    background: no-repeat center center fixed;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    
    opacity: 1;
    height:100%;
    width:100%;
}

.main-container {
    height: 100%;
    margin: auto;
    padding: 0;
    width: 100%;
}

.main-header {
    padding: 16px 0;
}

.headbox, footer {
    background-color: #57a639;
    /*height: 96px;*/
}

footer {
    margin-bottom: 30px;
    text-align:center;
    color:white;

    bottom: 0;
    position: absolute;
    width: 100%;
}

footer span {
    line-height: 30px;
    vertical-align: middle;
    height: 30px;
}

#logo {
    line-height:normal;
    display: inline-block;
    vertical-align:bottom;
}

.imglogo {
    vertical-align:bottom;
}

.titlecontainer {
    /*line-height: 75px;*/
    min-height: 75px;
    text-align: center;
    display:table;
}

.titletext {
    color: white;
    font-family: serif;
    font-size: 190%;
    font-style: italic;
    display: inline-block;
    vertical-align: middle;
    line-height: normal;
}

.titletext-bold {
    color: white;
    font-family: sans-serif;
    font-size: 260%;
    font-style: normal;
    display: inline-block;
    vertical-align: middle;
    line-height: normal;
    font-weight: bold;
}

.titlesubcontainer {
    text-align: right;
    display:table;
    color:white;
}

.titlesubcontainer span {
    font-style: italic;
}

.producttext {
    font-family: sans-serif;   
    font-style: normal;
    font-weight: bold;
}

.menucontainer {
    background-color: #011b4a;
}

/*Products*/
.productcontainer {
    padding-left: 100px;
    padding-right: 100px;
    padding-top: 30px;

    /*box-shadow: 0 0px 0 0 white, 0px 50px 0 0 white, 0px 17px 21px 1px gray, 0px 17px 21px 1px gray*/
}

.productdetailcontainer {
    padding-top: 30px;

    /*box-shadow: 0 0px 0 0 white, 0px 50px 0 0 white, 0px 17px 21px 1px gray, 0px 17px 21px 1px gray*/
}

.productcontainer a {
    color: white;
}

.productcontainer .sq {
    padding-bottom:30px;
    display: table-cell;
}

.productbox {
    height: 100%;
    background: no-repeat center center scroll;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    border-radius: 5px;
}

.productbox span {
    line-height: 50px;
    background-color: #011b4a;
    width:1%;
    text-align: center;
    border-radius: 5px 5px 0 0;
    font-size: 125%;
    
    display: table-cell;
    vertical-align:middle;
}

.productbox span {
    opacity: 0.9;
        transition: opacity 0.5s ease-out; /* vendorless fallback */
         -o-transition: opacity 0.5s ease-out; /* opera */
        -ms-transition: opacity 0.5s ease-out; /* IE 10 betas, not needed in final build. */
       -moz-transition: opacity  0.5s ease-out; /* Firefox */
    -webkit-transition: opacity 0.5s ease-out; /*safari and chrome */
}

.productbox:hover span {
    opacity: 1;    
            transition: opacity 0.5s ease-in; /* vendorless fallback */
         -o-transition: opacity 0.5s ease-in; /* opera */
        -ms-transition: opacity 0.5s ease-in; /* IE 10 betas, not needed in final build. */
       -moz-transition: opacity  0.5s ease-in; /* Firefox */
    -webkit-transition: opacity 0.5s ease-in; /*safari and chrome */
}

.videobox {
    margin-bottom:20px;
    border: solid 2px #fff;
}

/* Pro Opera */
@supports (-webkit-appearance:none) {
.videobox {
    min-height:260px;
    border-bottom: none;
}
}

#video {
    width:100%;
    display:table;
    object-fit: inherit;
}

.infoboxwhite {
    background-color: #fff;
    color:#000;
}

.infobox {
    background-color: #011b4a;
    color:white;
    margin-bottom:20px;
}

.infobox .infoboxtitle, .infobox .infoboxbutton {
    background: #57a639; /* Old browsers */
    background: -moz-linear-gradient(left, #57a639 33%, #011b4a 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(left, #57a639 33%,#011b4a 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to right, #57a639 33%,#011b4a 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#57a639', endColorstr='#011b4a',GradientType=1 ); /* IE6-9 */
}

.infobox .externalbutton {
    background: #011b4a;
    border:solid 1px #fff;
}

.infobox .externalbutton:hover {
    background: #fff;
}

.infobox .infoboxtitle span {
    font-size: 125%;
    padding-left:10px;
    line-height: 35px;
}

.infobox .infoboxcontent {
    padding:5px 30px 5px 30px;
}

.infobox .infoboxcontent a {
    color:white;
}

.infobox .infoboxcontent a:hover > .infoboxbutton span {
    text-decoration: underline;
}

.infobox .infoboxcontent h1 {
    color: #57a639;
    font-size:20px;
    font-weight: bold;
    margin: 0 0 0px;
}

.infobox .infoboxcontent h2 {
    color: #000;
    font-size:20px;
    font-weight: bold;
    margin: 0 0 0px;
}

.infobox .infoboxcontent h3 {
    color: #000;
    font-size:18px;
    font-weight: bold;
    margin: 0 0 0px;
}

.infobox .infoboxcontent h4 {
    color: #000;
    font-size:15px;
    font-weight: bold;
    margin: 0 0 0px;
}

.infobox .infoboxwhite a {
    color:black;
    text-decoration: underline;
    line-height: 26px;
}

.infobox .infoboxwhite a:hover {
    color: #57a639;
}

.infobox .infoboxbutton {
    float: right;
    height: 30px;
    margin-bottom: 15px;
    position: relative;
    width: 120px;
}

.infobox .infoboxbutton a.external:hover {
    color: #011b4a;
}

.infobox .infoboxbutton a {
    display: block;
    height: 100%;
    padding-top: 4px;
    text-align: center;
    width: 100%;
}

.infobox .infoboxbutton a:hover {
    text-decoration: underline;
}

.infobox ul {
    list-style-type: disc;
    padding-bottom:15px;
}
    
.infobox ul li {
    color: #57a639;
    padding-left: 10px;
    padding-bottom: 10px;
}

.infobox ul li > span {
    color:white;
    line-height: 26px;
}

.infoboxwhite ul li > span {
    color:black;
    line-height: 20px;
}

.imagegroup {
    padding-bottom: 15px;
}

.imagegroup .row .nopadding{
    height: 300px;
    /*overflow:hidden;*/
}

.imagegroup .thumbnailgrp1 {
    width:100%;
    height: 100%;
    padding-right:10px;
    object-fit: cover;
}

.imagegroup .thumbnailgrp2, .imagegroup .thumbnailgrp3 {
    width:100%;
    height: 150px;
    padding-right:10px;
    object-fit: cover;
}

.imagegroup .thumbnailgrp2 {
    padding-bottom: 10px;
}

.showmore { }
.showmore_content { position:relative; overflow:hidden; }           
.showmore_trigger { background-color: white;
    padding-top: 10px;
    position: relative;
    top: -17px;
    width: 100%; }
.showmore_trigger span { display:block; cursor:pointer;}
.showmore_trigger span.more { color: #57a639; }
.showmore_trigger span.less { color: #57a639; }

.showmoretop { }
.showmoretop_head { position:relative; float:left; position:relative }
.showmoretop_content { position:relative; overflow:hidden; }           
.showmoretop_trigger { background-color: white;
    /*padding-top: 10px;*/
    position: relative;
    top: -12px;
    float:right;
    height:0;
    /*width: 100%;*/ }
.showmoretop_trigger span { display:block; cursor:pointer;}
.showmoretop_trigger span.more { color: #57a639; }
.showmoretop_trigger span.less { color: #57a639; }


.image-link img.gi {
    padding-bottom: 15px;
}


table { display: table; width:100%; border: solid 1px #ddd; text-align:center}
tr { display: table-row; }
tbody { display: table-row-group; }
tfoot { display: table-footer-group; }
td, th { display: table-cell; border-bottom: solid 1px #ddd; /*min-height:33px; line-height:30px;*/ padding:7px; white-space: nowrap; }
th { background-color: #57a639; text-align:center;}
tr:nth-child(even) {background: #ecf1db}
tr:nth-child(odd) {background: #cdddac}
td.first {background: #c2d69b}

.privacy {
    bottom: 6px;
    position: absolute;
    color: black;
    width: 100%;
}

.privacy .container {
    text-align: right;
}

/* Large desktops and laptops */
@media (min-width: 1200px) {

}

/* Landscape tablets and medium desktops */
@media (min-width: 992px) and (max-width: 1199px) {
    .productbox span {
        line-height: 20px;
        font-size: 100%;
        height: 40px;
    }
    .imagegroup .row .nopadding {max-height: 250px;}
    .imagegroup .thumbnailgrp2, .imagegroup .thumbnailgrp3 {height: 125px;}
    
    body {margin-bottom: 100px;}
}

/* Portrait tablets and small desktops */
@media (min-width: 768px) and (max-width: 991px) {
    .productbox span {
        line-height: 20px;
        font-size: 90%;
        height: 40px;
    }
    
    .productcontainer {
        padding-left: 20px;
        padding-right: 20px;
    }
    
    .imagegroup .row .nopadding {max-height: 230px;}
    .imagegroup .thumbnailgrp2, .imagegroup .thumbnailgrp3 {height: 115px;}
    
    body {margin-bottom: 100px;}
}

/* Landscape phones and portrait tablets */
@media (max-width: 767px) {
    .productbox span {
        line-height: 20px;
        font-size: 90%;
        height: 40px;
    }
    
    .productcontainer {
        padding-left: 20px;
        padding-right: 20px;
    }
    
    .productcontainer .sq {
        padding-bottom:10px;
        padding-left:5px;
        padding-right:5px;
    }
    
    .imagegroup .row .nopadding {max-height: 219px; }
    .imagegroup .thumbnailgrp2, .imagegroup .thumbnailgrp3 {height: 110px;}
    
    body {margin-bottom: 130px;}
}

/* Portrait phones and smaller */
@media (max-width: 480px) {
    .productbox span {
        /*line-height: 15px;*/
        font-size: 100%;
        /*height: 30px;*/
    }
    
    .productcontainer {
        padding-left: 20px;
        padding-right: 20px;
    }
    
    .productcontainer .sq {
        padding-bottom:10px;
        padding-left:5px;
        padding-right:5px;
        width:50%;
    }
    
    footer span {
        line-height: 15px;
        vertical-align: middle;
        height: 15px;
        font-size:90%;
    }
    
    .imagegroup .row .nopadding {max-height: 139px; }
    .imagegroup .thumbnailgrp2, .imagegroup .thumbnailgrp3 {height: 70px;}
    
    body {margin-bottom: 130px;}
}


/* back to top */
a.back-to-top, a.back-to-info {
	display: none;
	width: 60px;
	height: 60px;
	text-indent: -9999px;
	position: fixed;
	z-index: 999;
	right: 20px;
	bottom: 20px;
	background: #011b4a url("/images/up-arrow.png") no-repeat center 43%;
	-webkit-border-radius: 30px;
	-moz-border-radius: 30px;
	border-radius: 30px;
    transition: none;
}
a:hover.back-to-top, a:hover.back-to-info {
	background-color: #57a639;
}

a.back-to-info {
    right: 20px;
    top:160px;
    transform: rotate(-90deg);
}