body {
    background-image: url('../img/bg.jpg');
    background-position: left top;
    background-repeat: no-repeat;
    line-height: 1.5em;
}

img {
    display: block;
}

ul {
    padding-left: 1.25em;
}

h1 {
    text-transform: none;
    font-size: 2em;
    line-height: 1.1em;
}

#wrapper {
    background: none;
    width: 830px;
}

/*#logo {
    background-image: url('../img/logo.png');
    background-repeat: no-repeat;
    width: 274px;
    height: 37px;
    left: auto;
    right: 0;
    top: 100px;
}*/

#main, #left {
    width: auto;
    float: none;
    padding: 0;
}

#main {
    margin-top: 0;
    margin-right: 0;
    background-color: #fff;
    padding: 2em;
    clear: both;
}

.home #main {
    padding: 0;
    background: none;
}

.home #main .grid > .half {
    width: 389px;
}

ul.nav-menu {
    margin: 0;
    padding: 0;
}

.menu-item {
    display: inline-block;
    margin-right: 1em;
}

#footer {
    text-align: center;
    border: none;
}

.box {
    background-color: #008CB6;
    padding: 2em;
    box-sizing: border-box;
    color: #fff;
}

.box * {
    color: #fff;
}

.shadow {
    -webkit-box-shadow: 2px 2px 6px 0 rgba(0,0,0,0.25);
    box-shadow: 2px 2px 6px 0 rgba(0,0,0,0.25);
}

.grid.white {
    /*background-color: white;
margin: -1em;
padding: 2em 1em 1em 1em;*/
}

.grid > .half {
    width: 359px;
}

.grid > .third {
    width: 225px;
}

.grid > .two-third {
    width: 450px;
}

.home .content {
    background-image: url('../img/front-bg.png');
    background-position: right top;
    background-repeat: no-repeat;
    padding-right: 15em;
}

.home .more {
    margin: 0;
    float: right;
    left: auto;
    right: -20%;
}

h2 {
    font-size: 1.5em;
    margin-bottom: 0.5em;
}

.half h2 {
    margin: 0;
}

.half h2.flag {
    margin: 0 -1em 0 0;
    position: relative;
}

.half h2.flag a {
    background-color: #53AED4;
    display: block;
    color: #fff;
    padding: 0 20% 0 2em;
    text-decoration: none;
    background-image: url('../img/link-bg.png');
    background-position: right center;
    background-repeat: no-repeat;
}

.half h2.flag a:hover {
    background-color: #008CB6;
}

.half h2.flag a span {
    display: table-cell;
    height: 70px;
    vertical-align: middle;
    width: 1000px;
}

.half h2.flag:after {
    content: '';
    border-top: 1em solid #666;
    border-right: 1em solid transparent;
    position: absolute;
    right: 0;
    bottom: -1em;
}

.half h2.flag + img {
    width: 100%;
    height: auto;
}

a.more {
    background-color: #53AED4;
    display: inline-block;
    padding: 0.5em 3em 0.5em 2em;
    text-decoration: none;
    position: relative;
    left: -1.5rem;
    font-size: 0.95em;
    background-image: url('../img/link-bg.png');
    background-position: right center;
    background-repeat: no-repeat;
}

.referenssi .image_container {
    height: 200px;
    background-color: #A4A6A8;
}

table {
    border-collapse: collapse;
}

table.full {
    width: 100%;
    margin-bottom: 1em;
}

td {
    padding: 0.1em 0.5em;
}

table.full td {
    padding: 0.5em;
}

thead th {
    color: #4EAED9;
    text-transform: uppercase;
    font-weight: bold;
    vertical-align: bottom;
    text-align: left;
}

tbody td {
    white-space: nowrap;
}

#cart tbody td {
    white-space: normal;
}

td.hidden, th.hidden, th .hidden, tr .hidden {
    display: none;
}

tbody tr:nth-child(odd) td {
    background-color: #c0c0c0;
}

table tbody td.nobg {
    background: none;
}

tfoot td {
    border-top: 2px solid #4EAED9;
}

.icon {
    display: inline-block;
    width: 24px;
    height: 24px;
    background-repeat: no-repeat; 
}

.icon.koriin {
    background-image: url('../img/koriin.png');
    height: 28px;

}

input.kpl {
    width: 2em;
    font-size: 0.95em;
    text-align: center;
}

span.varastossa {
    display: inline-block;
    width: 7px;
    height: 7px;
    -webkit-border-radius: 50%;
    border-radius: 50%;
    background-color: #4EAED9;
}

p.explanation {
    color: #4EAED9;
    text-align: right;
}

p.explanation .varastossa {
    margin-right: 0.5em;
}

.formelement label {
    display: inline-block;
    width: 33%;
}

.formelement input + label {
    width: auto;
}

#laskuri .formelement {
    padding: 0.5em 0;
}

#laskuri input[type="text"],
#laskuri select {
    padding: 0 0.5em;
    line-height: 2.5em;
}

#laskuri select {
    padding: 0.7em;
}

#laskuri h2 {
    margin-top: 1em;
}

button, .btn {
    background-color: #5BB1DA;
    background-image: url('../img/link-bg.png');
    background-position: center right;
    background-repeat: no-repeat;
    padding: 0 3em 0 2em;
    color: #fff;
    font-weight: bold;
    border: 0px;
    cursor: pointer;
    display: inline-block;
    text-decoration: none;
    line-height: 2.5rem;
}

.btn.prev {
    background-image: url('../img/link-bg-prev.png');
    padding: 0 2em 0 3em;
    background-position: center left;
}

button:hover, .btn:hover {
    background-color: #4381AE;
    text-decoration: none;
}

.buttons {
    text-align: right;
}

#menu-item-40 {
    float: right;
    margin-top: -0.3em;
}

#menu-item-40 > a {
    text-transform: none;
}

#menu-item-40:after {
    content: '';
    background-image: url('../img/kori.png');
    background-position: center center;
    background-repeat: no-repeat;
    display: inline-block;
    height: 28px;
    width: 28px;
    vertical-align: middle;
    margin-bottom: 5px;
    margin-left: 1em;
    margin-right: -4em;
}

.page-id-35 .wpcf7 {
    float: left;
}

.home .content {
    overflow: auto;
    margin-right: 1em;
    margin-top: -1em;
}

.home .content > .thumbnail {
    float: right;
    margin-left: 1em;
}

.product-group h3 {
    margin-bottom: 0;
}

.product-group .image {
    border: 1px solid #ddd;
    height: auto;
}

.product-group .image img,
.grid table {
    width: 100%;
}

.product .image {
    padding: 0;
    width: auto;
    height: auto;
    display: block;
}

.product h1 {
    font-size: 21px;
    margin: 0;
    text-transform: uppercase;
}
.product h2 {
    font-size: 16px;
    margin: 0.5em 0;
    text-transform: uppercase;
}

.grid.product + .grid.product {
    border-top: 1px solid #ddd;
    padding-top: 3.5em;
}

.breadcrumb {
    color: #4381AE;
    display: block;
    margin-bottom: 1em;
}

.grid > div.grid {
    width: auto;
    font-size: 12px;
}

.grid.white > div {
    margin-right: 2.4em;
}

.grid > div.grid.product {
    margin-right: 0;
}

.grid.product > .third {
    margin: 0;
    width: 235px;
}

.grid.product > .third + .third {
    margin-left: 2em;
}

.into-cart {
    text-align: right;
}

.into-cart > div {
    display: inline-block;
    vertical-align: middle;
    padding-left: 1em;
}

button.koriin {
    padding: 0;
    background-color: transparent;
}

#map_canvas {
    width: 550px;
    height: 420px;
}

.gmap.bubble h5 {
    margin: 0;
    font-size: 14px;
    margin: 0.5em 0;
}

#map_places {
    float: left;
    width: 230px;
}

#jms {
    padding: 0;
    margin: 0;
    width: 130px;
    line-height: 2.75em;
    text-align: center;
}

/* Valikko */

ul.nav-menu ul,
ul.nav-menu ul li,
ul.nav-menu ul li a {
    display: block;
    margin: 0;
}

ul.nav-menu ul {
    background-color: #53AED4;
    position: absolute;
    z-index: 1;
    padding: 0.25em 0;
}


ul.nav-menu ul li a {
    color: #fff;
    font-weight: bold;
    padding: 0.25em 0.5em;
    font-size: 1.35em;
}

ul.nav-menu ul,
ul.nav-menu .current-menu-ancestor > ul.sub-menu,
ul.nav-menu .current-menu-parent > ul.sub-menu,
ul.nav-menu .current_page_parent > ul.sub-menu,
ul.nav-menu .current_page_ancestor > ul.sub-menu,
ul.nav-menu .current-menu-item > ul.sub-menu,
ul.nav-menu .current_page_item > ul.sub-menu {
    display: none;
}

ul.nav-menu .menu-item-has-children:hover ul {
    display: block;
}

.page_item_has_children > a:after,
.menu-item-has-children > a:after {
    display: none;
}

@media (max-width: 950px) {
    #menu-item-40 {
        float: none;
        margin: 0;
    }

    #menu-item-40:after {
        display: none;
    }

    #left span.toggler {
        right: auto;
        top: -5em;
    }

    .home #main .grid > .half {
        width: 47%;
    }

    .grid > .third {
        width: 28%;
    }

    .product-group .image {
        height: auto;
    }

    .grid.product > .third {
        width: 30%;

    }
}

@media (max-width: 767px) {
    #logo {
        top: 1.75em;
    }

    #left span.toggler {
        top: 0.5em;
        bottom: auto;
    }

    div#left {
        margin: 0;
        padding-top: 50px;
    }

    .grid > .third {
        width: 26%;
    }
}

@media (max-width: 600px) {
    .grid.product > .third {
        width: 100%;
    }

    .grid.product > .third + .third {
        margin-left: 0;
    }

    .product .image {
        margin-bottom: 1em;
    }
}

@media (max-width: 500px) {
    .home #main .grid > .half,
    .grid > .third	{
        width: 100%;
    }

    .home .content {
        padding-right: 2em;
        background-image: none;
    }

    .home .more {
        right: 0;
    }
}