/*
Theme Name: COLI.org

Author: William Cook
Author URI: http://coli.org/
Description: The theme for COLI.org.
Version: 1.0
*/


@charset "utf-8";
/* CSS Document */


html {
    width:100%;
    font-family: 'Lato', Verdana, Geneva, Tahoma, sans-serif;
    font-size:16px;
}
body {
    margin:0;
}
h1, h2, h3, h4, h5, h6 {
    font-family: 'Montserrat', Verdana, Geneva, Tahoma, sans-serif;
}
a {
    color: #4d73d4;
    text-decoration: none;
}
a:hover {
    color: #6f8edc;
    border-bottom: thin dotted #6f8edc;
}
body > div {
    clear: both;
    padding: 0 1em;
}
body .content {
    height: 100%;
    width:100%;
    max-width:1000px;
    margin:0 auto;
    position: relative;
}

.btn {
    display: inline-block;
    white-space: nowrap;
    background-color: #363636;
    text-shadow:1px 0 0 #363636, 0 1px 0 #363636, -1px 0 0 #363636, 0 -1px 0 #363636;
    padding: .6em 1em;
    text-transform: uppercase;
    text-decoration: none;
    color: white;
    font-weight: bold;
    border:none;
    cursor: pointer;
	box-shadow: 0px 2px 2px 0px rgba(0,0,0,0.14), 0px 3px 1px -2px rgba(0,0,0,0.12), 0px 1px 5px 0px rgba(0,0,0,0.2);
}
.btn:hover {
    color:white;
    border:none;
    background-color: #4d4d4d;
}
.btn.blue, .btn.link, .btn.download, .btn.email {
    background-color: #4278d0;
    text-shadow: none;
}
.btn.blue:hover, .btn.link:hover, .btn.download:hover, .btn.email:hover {
    background-color: #5c8bd6;
}
.btn.download:after {
    font-family: FontAwesome;
    content: "\f019";
    font-weight: normal;
    margin-left:.75em;
}
.btn.email:after {
    font-family: FontAwesome;
    content: "\f0e0";
    font-weight: normal;
    margin-left:.75em;
}
.btn.purchase {
    background-color: #8cc633;
    text-shadow: none;
}
.btn.purchase:hover {
    background-color: #a5d55d;
}
.btn + .btn {
    margin-left: .5em;
}
.slider-btn {
    position: absolute;
    z-index: 2;
    top: 50%;
    color:white;
    font-size:1.5em;
    margin-top: -1em;
    padding: .5em .5em .4em .4em;
    cursor: pointer;
}
.slider-btn.right {
    right:0;
    padding: .5em .4em .4em .5em;
}
.slider-btn:before{
    position: absolute;
    top:0;
    left:0;
    z-index: 0;
    content: "";
    width: 100%;
    height: 100%;
    opacity:.2;
    border-radius: 5px;
    background-color:#ccc;
}
.slider-btn:hover:before {
    opacity:.7;
}
.slider-btn:after {
    position: relative;
    z-index: 1;
}
.slider-btn.left:after {
    content: "\f053";
}
.slider-btn.right:after {
    content: "\f054";
}

#topmenu {
    font-size: .8em;
    color: #777;
    background-color: #fafafa;
    padding: 1em;
}
#topmenu .fa {
    color: #BBB;
    margin-right: .4em;
}
#topmenu a {
    color: #777;
}
#colilogo a:hover, #topmenu a:hover, #topmenu a:hover .fa {
    border-bottom: none;
    color:#6f8edc;
}
#fixedheader {
    position: fixed;
    top: 0;
    width: 100%;
    background-color: white;
    box-shadow: 0px 0px 10px 0px #777;
    display: none;
    z-index: 99;
    padding: 0;
}
#fixedheader .content {
    padding: .75em 1em;
    width: auto;
}
#header {
    position:relative;
    z-index:98;
    background-color: white;    
}
#header .content {
    padding:.75em 0;
}

#header .content > div, #fixedheader .content > div {
    display: table-cell;
    vertical-align: middle;
    white-space: nowrap;
}
#colilogo {
    position:relative;
    font-size: 1.25em;
    font-weight: bold;
    color: #213478;
    text-transform: uppercase;
    height:5.4em;
}
#colilogo > div {
    display: table-cell;
    vertical-align: middle;
}
#mainmenu {
    position: relative;
    width:100%;
    text-align:right;
    font-weight: bold;
    font-family: 'Montserrat', Verdana, Geneva, Tahoma, sans-serif;
    text-transform: uppercase;
}
#mainmenu li, #mainmenu .mobile {
    margin: .5em;
    cursor: pointer;
}
#mainmenu .mobile {
    display: none;
}
#mainmenu .mobile:after {
    display: inline-block;
    font-family: FontAwesome;
    content:"\f0c9";
    margin-left:.75em;
}
#mainmenu li {
    list-style-type: none;
    display: inline-block;
}
#mainmenu a {
    color:black;
}
#mainmenu li:hover, #mainmenu a:hover {
    border-bottom:none;
    color:#6f8edc;
}
#mainmenu .current_page_item, #mainmenu .current_page_item a {
    color:#4178d5;
}
#headermenu {
    margin:0;
    padding:0;
    width:100%;
}
.req::-webkit-input-placeholder { color:#f00; opacity: .6;}
.req::-moz-placeholder { color:#f00; opacity: .6;} /* firefox 19+ */
.req:-ms-input-placeholder { color:#f00; opacity: .6;} /* ie */
.req:-moz-placeholder { color:#f00; opacity: .6;}

#calltoaction{
    position: relative;
    z-index:1;
    text-align: center;
    padding: 1em;
    box-shadow: 0px 0px 10px 0px #777;
    background-color: #EED202;
    font-weight: bold;
}

/* Shopping Cart Formatting */
#cartdiv {
    position:relative;
    width: 100%;
    z-index: 97;
}
#shoppingcart {
    position:absolute;
    right:1em;
    top:-100px;
    opacity: 0;
    background-color: #a5d55d;
    box-shadow: 0px 0px 10px 0px #777;
    color:#363636;
    font-weight:bold;
    z-index: 1;
    -webkit-transition: all .5s;
    -moz-transition: all .5s;
    transition: all .5s;
}
#shoppingcart.hide {
    opacity:0;
}
#shoppingcart.show {
    top:0;
    opacity: 1;
}
#cartcontent {
    padding:.75em 1em;
}
#cartlist {
    display:none;
    margin-bottom: .75em;
}
#shoppingcart td {
    vertical-align:top;
    padding:.25em;
    max-width:200px;
}
#checkoutSummary {
    border-spacing:0px;
    border-collapse: collapse;
}
#shoppingcart #checkoutSummary td {
    vertical-align:middle;
}
#shoppingcart #checkoutSummary td:first-child {
    font-size:1.25em;
    font-weight:bold;
    white-space:nowrap;
}
#shoppingcart #subtotal {
    margin-right: 2em;
}
#carttab {
    position: absolute;
    top: 100%;
    right: .5em;
    background-color:#8cc633;
    padding:.5em .75em;
    cursor: pointer;
}
#carttab:hover {
    background-color: #a5d55d;
}


#contactdiv {
    position: fixed;
    right: -350;
    z-index: 98;
    max-width:210px;
    background-color: #4278d0;
    border-radius:3px;
    color: white;
    padding: 1em 2.5em 1.5em 2em;
    transition: right .5s;
}
#contactdiv a {
    color:white;
}
#contactdiv a:hover {
    border-bottom: none;
    color:#93d1de;
}
#contactform * {
    font-family: inherit;
    padding: .25em;
    margin-bottom: .1em;
    border:none;
    width:100%;
}
#contactdiv.show {
    right:0;
}
#contactForm .address {display:none;}

.content h1{
    font-weight:normal;
    border-bottom: thin solid black;
    padding:.5em 0;
    max-width:100px;
    white-space:nowrap;
}

#footer {
    margin-top:3em;
    padding:1em;
    background-color: #323232;
    color:white;
}
#footer a {
    color:white;
}
#footer a:hover {
    border-bottom: none;
    color:#93d1de;
}

#footer .content > div {
    display: table-cell;
    text-align: left;
    vertical-align: top;
}
#footer .content > div > div {
    margin:0 3em 0 0;
}
#footer .info {
    display: inline-block;
}
#footer .info p {
    white-space: nowrap;
}
#footer .info .fa {
    margin-right:.5em;
}
.socnetbtns {
    margin: .5em 0;
}
.socnetbtns i {
    margin-right:.75em;
}


#homeslider {
    position: relative;
    background-color: #EEEFEA;
    height: 440px;
}
#homeslider .slides {
    position: relative;
    height: 100%;
    width:100%;
    overflow: hidden;
}
#homeslider .slide {
    width: 100%;
    height: 100%;
    transition: opacity .3s linear;
    background-size: cover;
}
#homeslider .slide:first-child:not(.current) {
    opacity: .2;
}
#homeslider .slide + .slide {
    position: absolute;
    top: 0;
    left: 105%;
    box-shadow: 0px 0px 10px 0px #777;
    width: 100%;
    height: 100%;
    transition: left .3s linear;
    background-size: cover;
}
#homeslider .slide.current {
    left:0;
}

#homeslider .slidetxt {
    display: table-cell;
    vertical-align: middle;
    height: 100%;
    color:white;
    padding: 2em 0 0 4em;
}
#homeslider h1 {
    font-size: 3.5em;
    letter-spacing: -4px;
    margin:0;
    padding: 0;
    white-space: nowrap;
    border-bottom: none;
}
#homeslider p {
    max-width: 40%;
    white-space: normal;
    font-size: 1.4em;
    margin-left:.15em;
    margin-bottom:2em;
}
#homeslider .btn {
    margin-left:.15em;
}
#homeslider .slidemarkers {
    position: absolute;
    bottom:15px;
    width:100%;
    text-align: center;
}
#homeslider .marker {
    display: inline-block;
    margin:0 .25em;
    width:12px;
    height: 12px;
    background-color: white;
    border-radius: 6px;
}
#homeslider .marker.current {
    background-color: #4278d0;
}
#homeproducts {
    background-color: #fafafa;
    text-align: center;
    padding: 2em 0;
}
#homeproducts .product {
    text-align: left;
    display: inline-block;
    vertical-align: top;
    width:27%;
    padding: 0 3%;
}
#homeproducts .product:nth-child(3n-2) {
    padding: 0 6% 0 0;
}
#homeproducts .product:nth-child(3n) {
    padding: 0 0 0 6%;
}
#homeproducts h2 {
    font-size:1.3em;
    margin:0;
    text-transform: uppercase;
}
#homeproducts p {
    color: #262626;
    margin: .75em 0;
}
#homeproducts a {
    text-transform: uppercase;
    font-weight: bold;
}

#callforparticipants {
    background-color: #ff9933;
    background-color: #F86515;
    background-color: #ff8c1a;
    color: white;
    padding: 1em;
}
#callforparticipants .content > div {
    display: table-cell;
    vertical-align: middle;
}
#callforparticipants .content > div:first-child {
    padding-right:3em;
    width:100%;
}
#callforparticipants h2 {
    margin:0;
}
#callforparticipants p {
    margin: .25em 0 0;
    font-size: 1.2em;
}
#homenews {
    display: flex;
    padding-bottom: 3em;
}
#homenews .newsitem {
    position: relative;
    float: left;
    width: 33.3%;
    height: 500px;
    background-color: #fafafa;
    margin: 0;
    border:0px;
}
#homenews .newsitem > div {
    width:100%;
    height:50%;
}
#homenews .newsimg {
    position:relative;
}
#homenews .newsimg > a {
    display: inline-block;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: top right;
    border: none;
}
#homenews .newsimg:after {
    content:"";
    position: absolute;
    border: 25px solid #fafafa;
    border-left-color: transparent;
    border-right-color: transparent;
    left:1.5em;
}
#homenews .newsitem:nth-child(odd) .newsimg {
    position: absolute;
    bottom:0;
}
#homenews .newsitem:nth-child(even) .newsimg:after {
    bottom:0;
    border-top:none;
}
#homenews .newsitem:nth-child(odd) .newsimg:after {
    top:0;
    border-bottom:none;
}
#homenews .newsdesc > div {
    padding:1.5em;
}
#homenews .newsdesc .cat-item {
    list-style-type: none;
    font-weight: bold;
    margin:1.25em 0 .25em;
}
#homenews .newsdesc .cat-item + h2 {
    margin:0 0 .65em;
}

#homenews .newsitem:hover {
    background-color: #d6e2f5;
}
#homenews .newsitem:hover .newsimg {
    opacity: .8;
}
#homenews .newsitem:hover .newsimg:after {
    border-top-color: #d6e2f5;
    border-bottom-color: #d6e2f5;
}
#homeclients {
    background-color: #fafafa;
    padding: 2.5em 0;    
}


#page-image {
    float: right;
    max-width:40%;
    margin-left:1em;
}
.updateitem {
    padding:1em;
}
.updateitem+.updateitem {
    border-top: thin solid #ccc;
}
#page-image img, .updateitem img {
    height: auto;
    width: 100%;
}
.borderBottom {
	border-bottom-width: thin;
	border-bottom-style: solid;
	border-bottom-color: #000;
}
.borderRight {
	border-right-width: thin;
	border-right-style: solid;
	border-right-color: #000;
}



.productlist {
    margin-bottom: 3em;
    width:100%;
}
.productlist.highlight {
    margin-bottom: 1em;
}
.productlist > div {
    display: table-cell;
    vertical-align: top;
}
.producttabs > div {
    background-color: #f2f2f2;
    border-left: 3px solid #f2f2f2;
    padding: 1em;
    margin-bottom: .5em;
    font-weight: bold;
    border-radius: 5px 0 0 5px;
    width: 155px;
}
.producttabs > div:last-child {
    margin-bottom: 0;
}
.producttabs > div.current {
    background-color: #fafafa;
    border-left-color: #4278d0;
    color: #4278d0;
}
.producttabs > div:not(.current):hover {
    border-left-color: #888;
    cursor: pointer;
}
.productdetails {
    position:relative;
    overflow: hidden;
    background-color: #fafafa;
    width: 100%;
}
.productdetails > div {
    position:absolute;
    top:0;
    left:105%;
    box-shadow: 0px 0px 10px 0px #777;
    background-color: #fafafa;
    width:100%;
    height:100%;
    transition: left .3s linear;
}
.productdetails > div.current {
    left:0;
}
.productdetails > div.placeholder {
    position: relative;
    visibility: hidden;
    left:0;
    /*min-height: 310px;*/
}
.productdetails .detail {
    padding: 1em 2em 4.75em;
}
.highlight .productdetails .detail {
    padding: 1em 2em;
}
.productdetails .detail img {
    width: 40%;
    float:right;
    margin:.5em;
}
.highlight .productdetails .detail img {
    width: 30%;
    float:left;
    margin: 0 2em 0 0;
}
.productdetails h2 {
    margin-top:0;
}
.productbtns {
    display: block;
    position: absolute;
    bottom: 1.5em;
    right: 2em;
}
.highlight .productbtns {
    position: relative;
    text-align: right;
    margin-top: 3em;
}
.productdetails .purchase-box {
    position: absolute;
    right:-27.5em;
    top:0;
    width:24.5em;
    height: 100%;
    background-color: #8cc633;
    box-shadow: 0px 0px 10px 0px #777;
    color:white;
    font-weight: bold;
    padding: 1em;
    transition:.2s right linear;
}
.purchase-box .close-box {
    font-size:1.15em;
    font-weight: bold;
    position: absolute;
    top:.25em;
    left:.5em;
    color:#363636;
}
.purchase-box .close-box:hover {
    cursor: pointer;
    color:red;
}
.purchase-box table {
    min-width:50%;
}
.purchase-box th, .purchase-box td {
    color:white;
    padding:.2em 0;
    vertical-align: middle;
    font-weight: bold;
}
.purchase-box td:first-child {
    white-space: nowrap;
}
.purchase-box td + td {
    text-align: center;
    width:33%;
}
.purchase-box .btn {
    padding: .3em .5em;
}
.purchase-box .btn + .btn {
    margin-left:.75em;
}
.purchase-box td .btn {
    width: 50%;
}
.purchase-box .btn span, .purchase-box .btn:after {
    -webkit-transition: all .25s;
    -moz-transition: all .25s;
    transition: all .25s;
}
.purchase-box .btn:after {
    font-family: FontAwesome;
    content: "\f00c";
    margin-left:.25em;
    opacity:0;
    font-size: .001em;
}
.purchase-box .btn.checked span {
    opacity:0;
    font-size: .001em;
}
.purchase-box .btn.checked:after {
    opacity:1;
    font-size: 1em;
}

.purchaseheader {
    display: block;
    text-align: center;
}
.purchaseheader:first-child {
    font-size: 120%;
}
.purchaseheader:not(:first-child) {
    text-decoration: underline;
    margin:.25em 0;
}

.ctcform {
    float:right;
    margin-top:.5em;
    margin-left: .5em;
    padding: .75em;
    border: thin solid #8cc633;
    border-radius: 3px;
}
.ctcform select {
    /*-webkit-appearance: none;  Removes default chrome and safari style*/
    /*-moz-appearance: none;  Removes Default Firefox style
    appearance:none;*/
    display: block;
    width: 100%;
    margin:.5em 0;
    padding:.25em;
}
.ctcform .btn {
    width: 100%;
    text-align: center;
}

/*
@media all and (max-width:1005px) {
	#colilogo > div + div {
        position: absolute;
        top:0;
        width:11em;
        text-align: center;
        z-index: -1;
        opacity: .15;
    }
}
@media all and (max-width:830px) {
    #mainmenu li, #mainmenu .mobile {
        font-size: 120%;
    }
    #mainmenu .mobile {
        display: inline-block;
    }
    #headermenu {
        display: none;
        position: absolute;
        z-index: 99;
        right: 0;
        width: auto;
        background-color: white;
        border: thin solid #ccc;
        border-top:none;
        -webkit-transition: height 2s;
        -moz-transition: height 2s;
        transition: height 2s;
    }
    #headermenu.hover {
        display: block;
    }
    #headermenu li {
        display: block;
        margin: 0;
        padding: .75em 1em;
        border-top: thin solid #ccc;
        height: 0;
        -webkit-transition: height 2s;
        -moz-transition: height 2s;
        transition: height 2s;
    }
    #headermenu.hover li {
        height: 1em;
    }
    #headermenu li.current_page_item {
        display: none;
    }
    #headermenu li:hover {
        background-color: #4278d0;
    }
    #headermenu li:hover a {
        color:white;
    }
}
@media all and (max-width:675px) {
	.productlist > div.producttabs {
        display: block;
    }
    .producttabs > div {
        width: auto;
        border-bottom: thin solid #4278d0;
        border-right: 3px solid #4278d0;
        margin-bottom: 0;
        font-weight: bold;
        border-radius: 5px;
    }
    .producttabs > div.current {
        border-radius: 5px;
        background-color: #4278d0;
        color:white;
        font-size: 120%;
        padding: .6em;
    }
    .producttabs > div.current:hover {
        cursor: pointer;
        opacity: .8;
    }
    .producttabs > div.current:after {
        display: inline-block;
        font-family: FontAwesome;
        content: "\f0c9";
        margin-left: .75em;
    }
    .producttabs > div:not(.current) {
        display: none;
    }
    .productdetails {
        border: thin solid #ccc;
    }
}*/