* {
	margin: 0;
	padding: 0;
	}

body {
	font: 0.9em Arial, Helvetica, sans-serif;
	background: #f0f0f0;
	color: #444;
	text-align: center;
	}

body,
html {
	height: 100%;
	}

a {
	text-decoration: underline;
	color: #008cff;
	}

a:hover {
	color: #09f;
	}

a:active,
a:focus {
	outline: none;
	}

#rakenne {
	text-align: left;
	padding-bottom: 2%;
	}

header {
	background: #434343;
    padding: 1em 2em;
	}

header h1,
header ul,
header form {
	padding: 0;
	}

header h1,
header ul,
header form,
header nav {
	display: inline-block;
	}

header h1 {
	text-shadow: 0 1px 1px #bbb, 0 2px 0 #999, 0 3px 0 #888, 0 4px 0 #777, 0 5px 0 #666, 0 6px 0 #555, 0 7px 0 #444, 0 8px 0 #333, 0 9px 7px #302314;
	color: #fff;
	font-size: 1.8em;
	font-style: oblique;
	padding: 0.5em 1em 0.5em 0;
	cursor: default;
	}

header ul {
	list-style: none;
	font-size: 1.2em;
	font-weight: bold;
    padding-right: 1em;
	}

header li {
	display: inline-block;
    margin-bottom: 1em;
	}

header a {
	text-decoration: none;
	padding: 0.5em 1em;
	color: #f0f0f0;
    background: #333;
	-moz-border-radius: 4px;
	border-radius: 4px;
    margin-right: 0.5em;
    }

header li:last-of-type a {
    margin-right: 0;
    }

header a:hover,
header a:focus,
header a:active,
#avoin a {
	color: #fff;
	}

#avoin a {
	color: #ffc;
	}

header form {
	padding: 0.5em 1em;
    color: #fff;
    background: #6CAE86;
	-moz-border-radius: 4px;
	border-radius: 4px;
    }

header input {
	margin-right: 10px;
	min-width: 100px;
    max-width: 150px;
	background: #eee;
    color: #333;
    padding: 0.5em;
	}

header input:focus {
    background: #fff;
    color: #444;
    }

header label {
	font-weight: bold;
	padding-right: 10px;
	}

section {
	background: #fff;
	}

main,
aside {
	display: inline-block;
	padding: 1em 1%;
    vertical-align: top;
	}

main {
	width: 66%;
	}

aside {
	width: 28%;
	}

footer {
	background: #f0f0f0 url(../images/fade2.png) repeat-x 0 0;
	border-top: 1px solid #fff;
	padding: 1em 1%;
	}

footer dl {
	padding: 1em 25% 1em 1em;
	color: #666;
	}

footer dt,
footer dd {
	display: inline;
	}

footer dt:after {
	content: ":";
	padding-right: 3px;
	}

footer a {
	color: #666;
	}

footer a:hover,
footer a:focus,
footer a:active {
	color: #333;
	}

.vierekkain {
	clear: both;
    padding-left: 1em;
	}

.vierekkain div {
	display: inline-block;
	width: 32%;
    vertical-align: top;
    padding-top: 1.5em;
	}

.vierekkain ul {
	list-style: none;
	position: relative;
	}

.vierekkain a {
	display: block;
    padding-top: 0.5em;
    padding-bottom: 0.5em;
	}

.vierekkain a:hover img {
	display: block;
	position: absolute;
	top: -210px;
	left: 0;
	background: #fff;
	padding: 10px;
	z-index: 666;
	-moz-box-shadow: 0 0 3px #444;
	-webkit-box-shadow: 0 0 3px #444;
	box-shadow: 0 0 3px #444;
	-moz-border-radius: 4px;
	border-radius: 4px;
	}

.vierekkain img {
	display: none;
	}

h1, h2, h3, h4, h5, h6 {
	padding: 0 0 10px 0;
	font: bold 1.1em Arial, Helvetica, sans-serif;
	line-height: 120%;
	}

section h2 {
	font-size: 2em;
	background: url(../images/n1b.png) no-repeat 0 0;
	padding-left: 35px;
	}

h2.nimi {
	padding-bottom: 0;
	}

.nimi {
	padding-left: 35px;
	}

p, ul, ol, dl, form {
	font: 1em Arial, Helvetica, sans-serif;
	line-height: 150%;
	padding: 0 0 10px 0;
	}

ol, ul {
	list-style-position: inside;
	}

header,
section,
.tyhjennys,
footer {
	display: block;
	clear: both;
	}

form ul {
	padding: 0;
	list-style: none;
	}

form li {
	padding-bottom: 10px;
	}

fieldset {
	padding: 20px 20px 10px 20px;
	}

input,
button,
textarea {
	font: 1em Arial, Helvetica, sans-serif;
    padding: 0.5em;
	}

label,
button,
input[type=submit],
input[type=checkbox],
input[type=radio] {
	cursor: pointer;
	}

li label {
	float: left;
	width: 150px;
	padding-top: 5px;
	}

input[type=text],
textarea {
	max-width: 300px;
	padding: 1em 1.5em;
	-moz-border-radius: 4px;
	border-radius: 4px;
	background: #f0f0f0;
	color: #444;
	border: 0;
	}

textarea {
	max-height: 200px;
	}

button,
.button {
	padding: 0.5em 1.5em;
	}

#txpCommentPreview {
	text-transform: capitalize;
	margin: 0 5px 0 150px;
	}

#komuista label,
#komuista input {
	vertical-align: middle;
	padding: 0;
	float: none;
	display: inline;
	border: 0;
	background: none;
	}

main button,
#komuista,
#pakolliset-tiedot,
#arvostele span {
	margin-left: 150px;
	}

#pakolliset-tiedot {
	padding-bottom: 0;
	}

a img,
img {
	border: 0;
	}

#kartta {
	width: 100%;
	height: 100%;
	min-height: 50em;
	}

.kupla {
	min-height: 80px;
	padding: 1em 2em 0 2em;
	-moz-border-radius: 4px;
	border-radius: 4px;
	border: 2px solid #f0f0f0;
	}

.kupla p {
	color: #555;
	}

#sivutus {
	list-style: none;
	color: #666;
	padding: 1em 0;
	margin-top: 1em;
	border-top: 1px solid #ccc;
	font-size: 2em;
	}

#sivutus li {
	display: inline-block;
	margin-right: 1.5em;
	}

.arvostelu {
	list-style: none;
	padding: 10px 3px 10px 10px;
	float: right;
	background: #f0f0f0;
	-moz-border-radius: 4px;
	border-radius: 4px;
	}

.arvostelu ul {
	list-style: none;
	padding: 0;
	}

.arvostelu li {
	display: inline;
	margin-right: 10px;
	border: 0;
	}

.thecount,
.arvostelu a {
	-moz-border-radius: 3px;
	border-radius: 3px;
	}

.arvostelu .thecount {
	padding: 0 5px;
	cursor: default;
	border: 1px solid #000;
	background: #323232;
	color: #fff;
	}

.arvostelu a {
	margin-left: 2px;
	padding: 0 10px;
	text-decoration: none;
	color: #ff9;
	border: 1px outset #000;
	}

.arvostelu a:hover {
	color: #fff;
	}

.autoliikkeet {
	list-style: none;
	padding-left: 0;
	margin-left: -5px;
	}

.autoliikkeet li {
	display: inline-block;
    padding: 0.5em;
	}

.autoliikkeet a {
	padding: 0.5em;
	}

.tagSizeSmallest {
	font-size: 1.1em;
	}

.tagSizeMedium {
	font-size: 1.4em;
	}

.tagSizeLargest {
	font-size: 2.3em;
	}

dt {
	font-weight: bold;
	}

aside dt {
	font-size: 1.2em;
	padding-bottom: 5px;
	}

aside dd ul {
	list-style: none;
	padding: 0;
	}

aside strong {
	display: block;
	}

aside span {
	font-weight: normal;
	color: #666;
	}

aside dd img {
	-moz-border-radius: 3px;
	border-radius: 3px;
	}

.description p {
	font-size: 1.3em;
	line-height: 140%;
	}

.kommentti {
	padding: 10px;
	background: #f9f9f9;
	border: 1px dashed #f0f0f0;
	margin-bottom: 10px;
	}

.kommentti dt {
	font-size: 1.3em;
	}

.kommentti p {
	padding: 10px 0 0 0;
	}

p#txpCommentInputForm,
.comments_error {
	font-size: 1.3em;
	padding: 10px 0 20px 0;
	text-align: center;
	font-weight: bold;
	}

abbr {
	border: 0;
	}

.srtgs{float:right;position:relative;width:115px;border:1px solid #69c;border-top-width:3px;border-bottom-width:3px;background:#f2fafc;text-align:left;padding:5px;-moz-border-radius:4px;border-radius:4px;color:#444;font:0.85em Arial,Helvetica,sans-serif;-moz-box-shadow:2px 2px 0 #fff;-webkit-box-shadow:2px 2px 0 #fff;box-shadow:2px 2px 0 #fff;display:block;min-height:30px;margin:5px 10px 0 10px}.srtgs .stars,.srtgs .d_rtg,.srtgs .totalrate{width:110px}.srtgs .stars{position:relative;height:20px;margin:0;background:url(../tahtiarvostelu/arvosana-tahti-0.png) repeat-x 0 0;padding:1px}.srtgs .d_rtg{position:absolute;top:0;left:0;margin:0;height:20px}.srtgs .totalrate{position:relative;text-align:center;font-weight:bold}.srtgs .d_rtg span{display:block;width:11px;float:left;cursor:pointer}.srtgs .star_n{position:relative;height:20px;margin:0;background:url(../tahtiarvostelu/arvosana-tahti-1.png) repeat-x 0 0}

.hlisting li,
main dd {
    padding-top: 0.2em;
    padding-bottom: 0.2em;
    }

main dl {
    padding-bottom: 1em;
    border-bottom: 5px solid #eee;
    margin-bottom: 1em;
    }

#bensalaskuri {
	margin: 0 auto;
	width: 98%;
	text-align: left;
	}

#bensalaskuri form {
	padding: 0;
	margin: 0;
	}

#bensalaskuri fieldset {
	border: 1px solid #ccc;
	padding: 10px;
	margin-bottom: 10px;
	display: block;
	}

#bensalaskuri legend {
	font-size: 1.1em;
	font-weight: bold;
	}

#bensalaskuri li,
#bensalaskuri p {
	padding-bottom: 10px;
	}

#bensalaskuri input[type=text] {
	width: 200px;
	}

#bensalaskuri #tai {
	text-align: center;
	font-size: 2.3em;
    color: #690;
	}

#bensalaskuri label {
	padding: 5px;
	}

#bensalaskuri #laske {
	padding-bottom: 0;
	}

#bensalaskuri #laske button {
	padding: 10px 20px;
	margin: 0;
	}

#bensalaskuri #tulos {
	padding: 10px;
	background: #ffc;
	border: 3px dashed #fcc;
	}

@media all and (max-width: 1300px) {
    header ul,
    header form {
        margin-top: 1em;
        }
    header {
        padding-bottom: 2em;
        }
    main,
    aside {
        display: block;
        width: auto;
        }
    aside {
        background: #CAE6D5;
        padding: 1em;
        margin-top: 2%;
        }
    }

@media all and (max-width: 1000px) {
    .vierekkain div {
        width: 48%;
        }
    }
