* {
    margin: 0;
    padding: 0;
    }

body {
    font: 1rem sans-serif;
    background: #EBDAAA;
    color: #000;
    text-align: center;
    }

a {
    text-decoration: underline;
    color: #e8653b;
    }

a:hover,
a:focus,
a:active {
    text-decoration: underline;
    outline: none;
    color: #e7893f;
    }

html,
body {
    height: 100%;
    width: 100%;
    }

q:after,
q:before {
    content: '"';
    }

#rakenne {
    background: #fff;
    max-width: 1200px;
    margin: 0 auto;
    text-align: left;
    position: relative;
    padding: 0;
    }

header, footer {
    background: #fcc;
    position: relative;
    padding: 1% 1rem;
    border-bottom: 3px solid #333;
    }

header form {
    padding: 2%;
    margin: 0;
    position: absolute;
    right: 0;
    top: 0;
    background: tomato;
    }

header label {
    padding-right: 5px;
    }

header input[type='text'] {
    width: 200px;
    margin-right: 5px;
    padding: 0.5rem;
    }

header input[type='submit'] {
    padding: 0.5rem 1rem;
    }

header h1,
header p {
    padding-bottom: 0;
    }

header h1 a {
    text-decoration: none;
    color: #737a8d;
    }

header h1 a:hover,
header h1 a:focus,
header h1 a:active {
    color: #333;
    }

header p {
    padding-top: 0;
    }

#keskiosa {
    min-height: 20em;
    padding: 0 1em 1em 1em;
    }

main,
aside {
    display: inline-block;
    float: left;
    padding: 1%;
    }

aside {
    width: 25%;
    }

main {
    width: 71%;
    }

aside dl {
    padding: 1%;
    font-size: 1.1em;
    }

aside dt {
    font-weight: bold;
    border-bottom: 1px solid #f0f0f0;
    }

aside li a {
    display: block;
    border-bottom: 1px solid #f0f0f0;
    }

aside #avoin a {
    font-weight: bold;
    }

footer {
    border: 0;
    padding: 0;
    }

footer p {
    padding: 1%;
    margin: 0;
    }

#kuvaus {
    margin: 1% 0 2% 0;
    font-size: 1.1em;
    }

#kuvaus p:first-of-type {
    font-weight: bold;
	font-size: 1.4em;
    }

article dl {
    display: inline-block;
    width: 30%;
    margin: 1% 1% 1% 0;
    vertical-align: top;
    }

article dt {
    font-weight: bold;
    font-size: 1.3em;
    padding-bottom: 1%;
    }

header,
#keskiosa,
.tyhjennys {
    display: block;
    clear: both;
    }

h1, h2, h3, h4, h5, h6 {
    padding: 1% 0 0 0;
    font: bold 2em Arial, Helvetica, sans-serif;
    line-height: 120%;
    }

h3, h4, h5, h6 {
    font-size: 1.4em;
    }

#leivanmurut {
    font-size: 1.4em;
    padding-bottom: 0;
    }

p, ul, ol, dl, form, table {
    font: 1rem sans-serif;
    line-height: 155%;
    margin: 1% 0 2% 0;
    }

ul,
ol {
    padding-left: 3%;
    }

#keskiosa ol {
    list-style-position: inside;
    }

select,
label,
button,
input[type='button'],
input[type='submit'],
input[type='checkbox'],
input[type='radio'] {
    cursor: pointer;
    }

form ul,
dd ul,
form p,
dd p {
    list-style: none;
    padding: 0;
    font-size: 1rem;
    }

main .kommentti {
    border: 1px solid #202020;
    margin: 1% 0;
    }

main .kommentti dt {
    font-weight: bold;
    color: #000;
    }

#etsi {
    text-align: center;
    font-size: 1.2rem;
    }

#etsi li {
    display: inline-block;
    clear: none;
    }

#etsi label {
    width: auto;
    float: none;
    }

#etsi input {
    width: 300px;
    }

#etsi button {
    margin-left: 0.5rem;
    }

form li {
    padding-top: 1rem;
    display: block;
    clear: both;
    }

li label {
    float: left;
    width: 150px;
    padding: 0.25rem 0.5rem 0 0;
    text-align: right;
    }

input[type='text'],
input[type='search'],
textarea,
select {
    padding: 0.5rem;
    max-width: 300px;
    min-width: 150px;
    }

textarea {
    min-height: 50px;
    height: 100px;
    resize: vertical;
    width: 50%;
    min-width: 100px;
    max-width: 300px;
    }

input,
label,
select,
textarea,
button {
    font: 1rem sans-serif;
    }

fieldset {
    border: 1px solid #eee;
    padding: 1%;
    }

legend {
    font-size: 1.2rem;
    font-weight: bold;
    }

li button,
.zemError,
#txpCommentInputForm span,
#txpCommentPreview,
#komuista {
    margin-left: 160px;
    }

.zemError li {
    padding: 0;
    }

button,
.button {
    padding: 0.5rem 1rem;
    }

#komuista input,
#komuista label {
    float: none;
    width: auto;
    border: 0;
    padding: 0;
    vertical-align: middle;
    }

a img,
img {
    border: 0;
    }

#sivutus {
    list-style: none;
    padding: 1% 0;
    margin: 1% 0 2% 0;
    border-top: 5px solid #eee;
    }

#sivutus li {
    display: inline;
    margin-right: 1rem;
    }

aside li.avattu a {
    font-weight: bold;
    color: #333;
    }

.hakutulos dt {
    padding-bottom: 0;
    font-size: 1.3rem;
    }

#name,
#email,
#web {
    width: 160px;
    }

#txpCommentInputForm .button {
    width: auto;
    text-transform: capitalize;
    margin-right: 10px;
    }

.kommentti {
    padding: 1%;
    background: #f9f9f9;
    border: 1px dashed #f0f0f0;
    margin-bottom: 1rem;
    }

.kommentti dt {
    font-size: 1.3rem;
    }

.kommentti p {
    padding: 10px 0 0 0;
    }

p#txpCommentInputForm,
.comments_error {
    font-size: 1.3em;
    padding: 1% 0;
    text-align: center;
    font-weight: bold;
    }

abbr {
    border: 0;
    }

.tagit {
    list-style: none;
    padding-left: 15px;
    }

.tagit li {
    display: inline;
    }

.tagit a {
    float: left;
    padding: 10px 5px;
    }

.tagSizeSmallest {
    font-size: 1em;
    }

.tagSizeMedium {
    font-size: 1.2em;
    }

.tagSizeLargest {
    font-size: 2.3em;
    }

hr {
    display: none;
    }

.srtgs{float:right;position:relative;width:115px;background:#f2fafc;text-align:left;padding:5px;color:#444;font:0.85em Arial,Helvetica,sans-serif;display:block;min-height:30px;margin: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}.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}

#kartta {
    min-height: 300px;
    height: 20%;
    max-height: 600px;
    border: 11px solid #eee;
    margin: 2% 0;
    }

.laatikko {
    display: block;
    clear: both;
    border-top: 1px solid #f0f0f0;
    }

#txpCommentInputForm p {
    padding-top: 20px;
    }

.tuplat {
    display: block;
    clear: both;
    }

.tuplat div {
    float: left;
    display: inline;
    width: 47%;
    }

form#aanestys,
dl#aanestys {
    margin: 1% 0 2% 0;
    padding: 1%;
    background: #fcc;
    border: 1px dotted #ccc;
    }

dl#aanestys {
    padding-bottom: 10px;
    }

#aanestys fieldset {
    padding: 0 0 10px 0;
    border: 0;
    }

#aanestys legend {
    font-weight: bold;
    padding: 10px 10px 0 10px;
    }

#aanestys dt {
    font-weight: bold;
    background: #fff;
    border-bottom: 1px solid #ccc;
    padding: 10px;
    font-size: 1em;
    margin: 0;
    }

#aanestys ul {
    list-style: none;
    padding: 0 10px;
    margin: 0;
    font-size: 0.85em;
    }

#aanestys dd {
    font-size: 0.9em;
    }

#aanestys li {
    margin-top: 10px;
    padding: 0;
    }

#aanestys em {
    font-style: normal;
    }

#aanestys div {
    height: 10px;
    background: #444;
    display: table;
    border-bottom: 1px solid #ff0;
    min-width: 5px;
    }

#tulos,
#viesti {
    display: block;
    text-align: center;
    background: #fff;
    border: 1px solid #ccc;
    -moz-border-radius: 3px;
    border-radius: 3px;
    padding: 2px;
    color: #444;
    font-weight: normal;
    }

#aanestys #viesti {
    margin-top: 5px;
    }

#aanestys label {
    float: none;
    width: auto;
    padding: 0 0 0 5px;
    text-align: left;
    display: inline;
    }

#aanestys input {
    border: 0;
    width: auto;
    padding: 0;
    vertical-align: middle;
    }

#aanestys li button {
    margin: 0;
    }

.luettelo li {
    display: inline-block;
    width: 20%;
    vertical-align: top;
    padding: 2%;
    }

.luettelo a,
.luettelo strong {
    display: block;
    }

.luettelo strong {
    font-size: 1.2em;
    }

caption {
    display: none;
    }

table {
    border-collapse: collapse;
    }

thead th {
    background: #eee;
    cursor: pointer;
    text-decoration: underline;
    color: #09a;
    }

th, td {
    padding: 10px 0 10px 5px;
    }

th {
    font-size: 1.2em;
    border-bottom: 1px solid #ccc;
    }

thead th:nth-child(1),
tbody td:nth-child(1) {
    width: 1%;
    font-weight: bold;
    border-right: 1px solid #ccc;
    padding-right: 5px;
    }

th:nth-child(5) {
    width: 20%;
    }

td {
    border-bottom: 1px solid #f0f0f0;
    }

td a,
th a {
    display: block;
    }

th.ei-sorttausta {
    text-decoration: none;
    cursor: default;
    color: #444;
    }

td img {
    vertical-align: middle;
    }

.headerSortUp:before {
    content: "\25b2 ";
    }

.headerSortDown:before {
    content: "\25bc ";
    }

tr:nth-child(odd) td {
    background: #fcfcfc;
    }

main nav ul {
    list-style: none;
    padding: 1% 0 0 0;
    }

main nav li {
    display: inline-block;
    padding-right: 5px;
    line-height: 240%;
    }

main nav ul a {
    padding: 5px 10px;
    text-decoration: none;
    background: #09a;
    color: #fff;
    }

main nav ul a:hover,
main nav ul a:focus,
main nav ul a:active,
main nav ul .avattu a {
    text-decoration: none;
    color: #fff;
    background: #333;
    }

.vanhentunut #kuvaus {
    text-decoration: line-through;
    }

#vanhentunut {
    background: #A960E2;
    color: #fff;
    padding: 2%;
    margin: 1% 0 2% 0;
    font-size: 1.6em;
    }

#vanhentunut a {
    color: #ff0;
    }

#vanhentunut a:hover,
#vanhentunut a:focus,
#vanhentunut a:active {
    color: #fff;
    }

.ilmoitus {
    padding: 2em;
    margin-bottom: 1em;
    border: 1px solid #ccc;
    }

.ilmoitus dt {
    font-size: 1.3em;
    font-weight: bold;
    padding-bottom: 1em;
    }

.ilmoitus blockquote {
    padding: 1em;
    margin: 1em 0;
    border: 1px solid #fcc;
    border-left-width: 2em;
    }

@media screen and (max-width: 960px) {
    body {
        background: #fff;
    }
    #rakenne {
        max-width: 100%;
        border: 0;
        margin: auto;
        position: relative;
        font-size: 1.1em;
        }
    header {
        padding-top: 1%;
        padding-bottom: 1%;
        }
    aside dt {
        padding: 5px 10px;
        }
    nav a {
        padding: 5px 0;
        }
    main ul,
    main ol {
        line-height: 180%;
        }
    main li a {
        padding: 5px;
        }
    .tuplat div {
        float: none;
        display: block;
        width: auto;
        }
    }

@media screen and (max-width: 960px) {
    header h1,
    header form {
        text-align: center;
        }
    header form {
        display: block;
        position: static;
        background: none;
        }
    table {
        font-size: 0.85em;
        }
    table th:nth-child(1),
    table td:nth-child(1) {
        display: none;
        }
    main, aside {
        display: block;
        float: none;
        width: auto;
        padding-bottom: 0;
        }
    main {
        border-top: 5px solid #ccc;
        }
    }