html, body {
  color: #000000;
  height: 100%;
  padding: 0 !important;
  margin: 0;
}

div, span, applet, object, iframe, label,
h1, h2, h3, h4, h5, h6, p, ul, ol, li, blockquote, a, hr,
form, input, textarea, select, button,
table, td, th {
  background-color: transparent;
  background-repeat: no-repeat;
  background-position: top left;
  border: 0;
  border-color: #e6e6e6;
  border-style: solid;
  outline: 0;
}

:focus { outline: none; }

blockquote {
  border-width: 0 0 0 3px;
  padding: 0 0 0 20px;
}

hr {
  background: #e6e6e6;
  color: #e6e6e6;
}

table { border-spacing: 0; }

/* FORMS */

.formRequest { display: none; }

.formFieldHolder {
  margin: 0 0 10px 0;
  position: relative;
}

.formFieldHolder .formLabel {
  position: relative;
  display: block;
  padding: 0 0 0 5px;
  margin: 0 0 10px 0;
}

.formFieldHolder .formFieldRow {
  display: table;
  width: 100%;
}

.formFieldHolder .formFieldCol {
  display: table-cell;
  vertical-align: top;
}

.formFieldHolder .formFieldCol.separator {
  padding: 0 10px;
  line-height: 40px;
  vertical-align: middle;
  text-align: center;
}


form span.Required {
  margin-left: 5px;
  color: #eb471f;
  font-size: 110%;
}

.formNumberinput, .formTelinput, .formEmailinput, .formTextinput, .formTextarea, .formSelect,
input, select, .ui-autocomplete, .fb-share-button {
  background: #ffffff;
  border-color: #cccccc;
  border-width: 1px;
  color: #4c4c4c;
  display: inline-block;
  margin: 0;
  padding: 10px 15px;
  width: 100%;
  font-family: 'Lato', Arial, sans-serif;
  font-size: 85%;
  line-height: 1.3;
  box-shadow: inset 1px 1px 5px rgba(0, 0, 0, 0.1);
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

input[type="checkbox"] { box-shadow: none; }

.formTextarea {
  height: 100px;
  overflow: auto;
}

.formSelect {
  background: #ffffff;
  background: -moz-linear-gradient(top,  #ffffff 0%, #f3f3f3 100%);
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffffff), color-stop(100%,#f3f3f3));
  background: -webkit-linear-gradient(top,  #ffffff 0%,#f3f3f3 100%);
  background: -o-linear-gradient(top,  #ffffff 0%,#f3f3f3 100%);
  background: -ms-linear-gradient(top,  #ffffff 0%,#f3f3f3 100%);
  background: linear-gradient(to bottom,  #ffffff 0%,#f3f3f3 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#f3f3f3',GradientType=0 );
  box-shadow: 0 0 0;
  cursor: pointer;
}

.formTelinput:focus, .formEmailinput:focus, .formTextinput:focus,
.formTextarea:focus { background: #f8f8f8; }

form .formCheckboxLabelHolder,
form .formRadioLabelHolder {
  display: inline-block;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin-right: 5px;
  padding: 5px 10px;
  position: relative;
  vertical-align: top;
}

form .formCheckboxLabelHolder:hover,
form .formCheckboxLabelHolder:hover input,
form .formRadioLabelHolder:hover,
form .formRadioLabelHolder:hover input {
  background: #f3f3f3;
  cursor: pointer;
}

form .formCheckboxLabelHolder input,
form .formRadioLabelHolder input {
 /* display: inline-block;
  margin: 0;
  top: 10px;
  left: 10px;
  position: absolute;*/
  display:block;
  float:left;
  height:22px;
  width:13px;
  box-sizing:content-box;
  padding:0px;
}

form .formCheckboxLabelHolder .formCheckboxLabel,
form .formRadioLabelHolder .formRadioLabel {
  display: block;
  padding: 0 0 0 20px;
}

.formSubmit, .button, .nappi {
  background: #0567b1;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  display: inline-block;
  color: #ffffff;
  cursor: pointer;
  margin-top: 10px;
  padding: 10px 15px;
  position: relative;
  font-family: Arial, sans-serif;
  font-size: 85%;
  text-align: center;
  line-height: 1.3;
  -webkit-transition: color 400ms, background-color 400ms, linear;
  -moz-transition: color 400ms, background-color 400ms, linear;
  -o-transition: color 400ms, background-color 400ms, linear;
  transition: color 400ms, background-color 400ms, linear;
}

.events-search .formSubmit { background: #045088; }

.formSubmit:hover, .button:hover, .nappi:hover {
  background: #045088;
  color: #ffffff;
  text-decoration: none;
}

.events-search .formSubmit:hover { background: #022946; }

.formErrorHolder {
  background: #4c8930;
  color: #ffffff;
  display: inline-block;
  margin: 1em 0;
  padding: 10px;
  width: 100%;
  position: relative;
  font-family: Arial, sans-serif;
  font-size: 100%;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.formErrorHolder p, .formErrorHolder ul { margin: 0; }

.formErrorHolder p + ul { margin-top: 0.5em; }

.formFieldHolder .formIconHolder {
  position: relative;
  width: 100%;
}

.formFieldHolder .formIconHolder .icon {
  position: absolute;
  top: 3px;
  right: 3px;
}

.formFieldHolder .formIconHolder .formTextinput,
.formFieldHolder .formIconHolder .formNumberinput,
.formFieldHolder .formIconHolder .formTelinput,
.formFieldHolder .formIconHolder .formEmailinput,
.formFieldHolder .formIconHolder .formTextinput,
.formFieldHolder .formIconHolder .formTextarea,
.formFieldHolder .formIconHolder .formSelect{ padding-right: 40px; }

/* Minict */

.minict_wrapper {
  background: #ffffff;
  background: -moz-linear-gradient(top,  #ffffff 0%, #f3f3f3 100%);
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffffff), color-stop(100%,#f3f3f3));
  background: -webkit-linear-gradient(top,  #ffffff 0%,#f3f3f3 100%);
  background: -o-linear-gradient(top,  #ffffff 0%,#f3f3f3 100%);
  background: -ms-linear-gradient(top,  #ffffff 0%,#f3f3f3 100%);
  background: linear-gradient(to bottom,  #ffffff 0%,#f3f3f3 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#f3f3f3',GradientType=0 );
  border-color: #cccccc;
  border-width: 1px;
  color: #4c4c4c;
  position: relative;
  width: 100%;
  height: 40px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

body.home #calendar .minict_wrapper { height: 30px; }

.minict_wrapper * {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.minict_wrapper.disabled {
  background: #f5f5f5;
  text-shadow: 0 1px 0 #fff;
}

.minict_wrapper.disabled span { color: #bbb !important; }

.minict_wrapper:after {
  content: "\25BC";
  cursor: pointer;
  display: block;
  position: absolute;
  height: 40px;
  width: 40px;
  top: 0;
  right: 0;
  font-size: 10px;
  font-size: 0.6rem;
  line-height: 40px;
  text-align: center;
  color: #4c4c4c;
}

body.home #calendar .minict_wrapper:after {
  height: 30px;
  width: 30px;
  line-height: 30px;
}

.minict_wrapper.active:after { content: "\25B2"; }

.minict_wrapper.disabled:after { color: #bbb; }

.minict_wrapper span {
  display: block;
  border: 0;
  outline: none;
  background: none;
  color: #4c4c4c;
  font-size: 85%;
  line-height: 1.3;
  padding: 10px 33px 10px 15px;
  cursor: default;
  width: 100%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

body.home #calendar .minict_wrapper span { padding: 5px 30px 5px 10px; }

.minict_wrapper span:empty:before {
  content: attr(data-placeholder);
  color: #ADACAC;
}

.minict_wrapper ul {
  display: none;
  list-style: none;
  padding: 0;
  margin: 0 -1px;
  position: absolute;
  width: 100%;
  width: -webkit-calc(100% + 2px);
  width: -moz-calc(100% + 2px);
  width: calc(100% + 2px);
  border: 1px solid #cccccc;
  border-top: 1px dashed #cccccc;
  border-bottom-left-radius: 3px;
  border-bottom-right-radius: 3px;
  top: 37px;
  left: 0;
  max-height: 350px;
  max-height: 22rem;
  overflow-y: auto;
  z-index: 999999;
}

body.home #calendar .minict_wrapper ul { top: 27px; }

.minict_wrapper ul li {
  border-width: 0 0 1px 0;
  list-style: none;
  font-size: 85%;
  line-height: 1.3;
  padding: 10px 15px;
  cursor: pointer;
  background: #fff;
}

body.home #calendar .minict_wrapper ul li { padding: 5px 10px; }

.minict_wrapper ul li:hover {
  background: #fcfcfc;
  color: #0567b1;
}

.minict_wrapper ul li.minict_group {
  color: #4c4c4c;
  background: #f6f6f6;
  font-weight: bold;
  cursor: default;
}

.minict_wrapper ul li.minict_empty {
  display: none;
  background: #fff !important;
  color: #bbb;
  text-align: center;
  font-size: 14px;
  font-size: 0.9rem;
  height: 55px;
  height: 3.5rem;
  line-height: 50px;
  line-height: 3.3rem;
}

.minict_wrapper ul li.disabled {
  cursor: default;
  background: #fff !important;
  color: #bbb;
}

.minict_wrapper ul li.selected {
  color: #ffffff;
  background: #0567b1;
}

.minict_wrapper ul li.highlighted {
  color: #fff;
  background: #819a9a;
}

.minict_wrapper ul li.hidden { display: none; }

.minict_wrapper .minict_reset {
  color: #A9A9A9;
  bottom: 0;
  display: none;
  font-size: 18px;
  font-size: 1.1rem;
  line-height: 30px;
  line-height: 1.9rem;
  position: absolute;
  right: 35px;
  right: 2.2rem;
  text-align: center;
  top: 0;
  text-decoration: none;
  width: 20px;
  width: 1.2rem;
  -webkit-transition: all 0.35s ease-in-out;
  transition: all 0.35s ease-in-out;
}

.minict_wrapper .minict_reset:hover {
  color: #e0e0e0;
  -webkit-transition: all 0.15s ease-in-out;
  transition: all 0.15s ease-in-out;
}

.minict_wrapper .minict_reset:active { color: #636363; }

.minict_wrapper.disabled .minict_reset { display: none; }

.minict_wrapper li[data-value=''] {
  color: #ADACAC;
  font-style: italic;
}


/* GENERAL */

.menu, #langSelection {
  margin: 0;
  padding: 0;
  list-style: none;
}

table.taulukko, .formNumberinput, .formTelinput, .formEmailinput, .formTextinput, .formTextarea,
input, select, form .formCheckboxLabelHolder, form .formCheckboxLabelHolder,
.formSubmit, .button, .nappi, .formErrorHolder, .minict_wrapper,
.pagination .curPage, .pagination a {
  -moz-border-radius: 3px;
  border-radius: 3px;
}

.formFieldHolder .formLabel,
#header .topbar .menu a,
#header .translations .current-lang,
.mm-menu li.extra-links a.level1,
#footer .menu .extra-links a,
#hero .box .nappi {
  font-size: 75%;
  font-weight: 900;
  text-transform: uppercase;
}

#fixednav, #header, #hero, #body, #footer, #reasons, #copyright, #print-source {
  /*float: left;*/
  clear:both;
  width: 100%;
 position: relative;
}

.container {
  margin: 0 auto;
  width: 940px;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.pagination {
  padding-top: 10px;
  text-align: center;
}

.pagination .curPage, .pagination a {
  background: #f3f3f3;
  color: #0567b1;
  display: inline-block;
  margin: 0 2px 10px 2px;
  padding: 5px 10px;
}

.pagination a:hover, .pagination .curPage {
  background: #0567b1;
  color: #ffffff;
  text-decoration: none;
}

.icon {
  background-image: url(/media/layout/img/sprite-icons.png);
  display: inline-block;
  height: 32px;
  width: 32px;
  vertical-align: middle;
}

.icon.arrow.down.black { background-position: 0 -32px; }

.icon.arrow.right.white { background-position: -64px -96px; }

.icon.arrow.right.blue { background-position: -64px -64px; }

.icon.news { background-position: -160px 0; }

.icon.big-arrow { background-position: -192px 0; }

.icon.big-arrow-up { background-position: -224px 0; }

.icon.fb { background-position: -96px 0; }

.icon.calendar { background-position: -64px 0; }

.icon.mail { background-position: -128px 0; }

.icon.anchor-arrow {
  background-image: url(/media/layout/img/icon-anchor-arrow.png);
  height: 36px;
  width: 40px;
}

.icon.calendar-white { background-position: -256px 0; }

.loader {
  background-color: #ffffff;
  background-image: url(/media/layout/img/loader.gif);
  background-position: center;
  border-radius: 50%;
  -moz-border-radius: 50%;
  margin: -16px 0 0 -16px;
  height: 32px;
  width: 32px;
  top: 50%;
  left: 50%;
  position: absolute;
}

#map { height: 400px; }

#map img, #map table {
  max-width: none !important;
}

#map div { border-style: none; }

.scroll-wrapper {
  overflow: hidden !important;
  padding: 0 !important;
  position: relative;
}

.scroll-wrapper > .scroll-content {
  border: none !important;
  box-sizing: content-box !important;
  height: auto;
  left: 0;
  margin: 0 -28px 0 0;
  max-height: none !important;
  max-width: none !important;
  overflow-y: scroll !important;
  overflow-x: hidden !important;
  -moz-appearance: none;
  padding: 0;
  position: relative !important;
  top: 0;
  width: auto !important;
}

.scroll-wrapper > .scroll-content::-webkit-scrollbar {
  height: 0;
  width: 0;
}

.scroll-element {
  display: none;
}
.scroll-element, .scroll-element div {
  box-sizing: content-box;
}

.scroll-element.scroll-x.scroll-scrollx_visible { display: none; }
.scroll-element.scroll-y.scroll-scrolly_visible { display: block; }

.scroll-element .scroll-bar,
.scroll-element .scroll-arrow { cursor: default; }

.scroll-textarea {
  border: 1px solid #cccccc;
  border-top-color: #999999;
}

.scroll-textarea > .scroll-content { overflow: hidden !important; }

.scroll-textarea > .scroll-content > textarea {
  border: none !important;
  box-sizing: border-box;
  height: 100% !important;
  margin: 0;
  max-height: none !important;
  max-width: none !important;
  overflow: scroll !important;
  outline: none;
  padding: 2px;
  position: relative !important;
  top: 0;
  width: 100% !important;
}

.scroll-textarea > .scroll-content > textarea::-webkit-scrollbar {
  height: 0;
  width: 0;
}

.scrollbar-outer > .scroll-element,
.scrollbar-outer > .scroll-element div {
  border: none;
  margin: 0;
  padding: 0;
  position: absolute;
  z-index: 10;
}

.scrollbar-outer > .scroll-element { background-color: #ffffff; }

.scrollbar-outer > .scroll-element div {
  display: block;
  height: 100%;
  left: 0;
  top: 0;
  width: 100%;
}

.scrollbar-outer > .scroll-element.scroll-x {
  bottom: 0;
  height: 5px;
  left: 0;
  width: 100%;
}

.scrollbar-outer > .scroll-element.scroll-y {
  height: 100%;
  right: 10px;
  top: 15px;
  width: 8px;
}

.scrollbar-outer > .scroll-element.scroll-x .scroll-element_outer { height: 5px; top: 2px; }
.scrollbar-outer > .scroll-element.scroll-y .scroll-element_outer { left: 2px; width: 5px; }

.scrollbar-outer > .scroll-element .scroll-element_outer { overflow: hidden; }
.scrollbar-outer > .scroll-element .scroll-element_track { background-color: #f2f2f2; }

.scrollbar-outer > .scroll-element .scroll-element_outer,
.scrollbar-outer > .scroll-element .scroll-element_track,
.scrollbar-outer > .scroll-element .scroll-bar {
  -webkit-border-radius: 8px;
  -moz-border-radius: 8px;
  border-radius: 8px;
}

.scrollbar-outer > .scroll-element .scroll-bar { background-color: #c2c2c2; }
.scrollbar-outer > .scroll-element .scroll-bar:hover { background-color: #c2c2c2; }
.scrollbar-outer > .scroll-element.scroll-draggable .scroll-bar { background-color: #919191; }

/* scrollbar height/width & offset from container borders */

.scrollbar-outer > .scroll-content.scroll-scrolly_visible { left: -12px; margin-left: 12px; }
.scrollbar-outer > .scroll-content.scroll-scrollx_visible { top:  -12px; margin-top:  12px; }

.scrollbar-outer > .scroll-element.scroll-x .scroll-bar { min-width: 10px; }
.scrollbar-outer > .scroll-element.scroll-y .scroll-bar { min-height: 10px; }

/* update scrollbar offset if both scrolls are visible */

.scrollbar-outer > .scroll-element.scroll-x.scroll-scrolly_visible .scroll-element_track { left: -14px; }
.scrollbar-outer > .scroll-element.scroll-y.scroll-scrollx_visible .scroll-element_track { top: -14px; }

.scrollbar-outer > .scroll-element.scroll-x.scroll-scrolly_visible .scroll-element_size { left: -14px; }
.scrollbar-outer > .scroll-element.scroll-y.scroll-scrollx_visible .scroll-element_size { top: -14px; }

.table-help {
  display: none;
  color: #828282;
  margin-top: -0.5em;
  font-size: 90%;
  font-style: italic;
}

.property-storage { display: none; }

/* Fixed Menu */

#fixednav {
  background: #ffffff;
  display: block;
  height: 65px;
  top: -68px;
  left: 0;
  position: fixed;
  box-shadow: 0 3px 3px rgba(0, 0, 0, 0.04);
  z-index: 11;
}

.ie8 #fixednav { border-width: 1px; }

body.events #fixednav { display: none; }

#fixednav .container { position: relative; }

#fixednav .logo {
  background-image: url(/media/layout/img/logo.png);
  background-position: center;
  background-size: 100%;
  display: inline-block;
  margin: 15px 10px;
  width: 116px;
  height: 35px;
  text-indent: -500em;
  overflow: hidden;
}

body.palvelut.liikuntapalvelut #fixednav .logo {
  background-image: url(/media/layout/img/logo-liikuntapalvelut-second.png);
  width: 146px;
  height: 35px;
}

body.palvelut.hiihtopalvelut #fixednav .logo {
  background-image: url(/media/layout/img/logo-hiihtopalvelu-second.png);
  width: 133px;
  height: 35px;
}

/*
#fixednav .logo img {
  display: block;
  height: 35px;
}
*/

#fixednav .menu {
  position: absolute;
  top: 0;
  right: 105px;
}

body.palvelut #fixednav .menu { right: 55px; }

body.events #fixednav .menu,
body.events #fixednav-search { display: none; }

#fixednav .menu li {
  display: inline-block;
  position: relative;
}

#fixednav .menu a {
  color: #4c4c4c;
  display: inline-block;
  padding: 0 10px;
  height: 65px;
  line-height: 65px;
  font-family: 'pf_beausans_probold', 'Lato', sans-serif;
  font-size: 95%;
}

#fixednav .menu a:hover,
#fixednav .menu a.current { color: #0567b1; }

#fixednav .menu li.vaikuta { margin-right: 7px; }

#fixednav .menu li.contact a { font-family: 'pf_beausans_prothin', 'Lato', sans-serif; }

#fixednav .menu li.contact:before {
  content: '';
  display: inline-block;
  height: 30px;
  margin-right: 7px;
  margin-top: -5px;
  border-color: #e6e6e6;
  border-style: solid;
  border-width: 0 0 0 1px;
  vertical-align: middle;
}

body.palvelut #fixednav .menu li.contact:before { display: none; }

#fixednav .search {
  top: 15px;
  right: 60px;
  position: absolute;
}

#fixednav .search-icon,
#fixednav .formCustomSubmit {
  background: url(/media/layout/img/sprite-icons.png) 0 0 no-repeat;
  cursor: pointer;
  display: block;
  padding: 0;
  height: 32px;
  width: 32px;
  top: 0;
  right: 1px;
  position: absolute;
  text-indent: 5000em;
  overflow: hidden;
  z-index: 2;
}

#fixednav .formCustomSubmit {
  display: none;
}

#fixednav .formTextinput {
  background: #ffffff;
  border-radius: 32px;
  -moz-border-radius: 32px;
  border-width: 1px;
  padding: 7px 32px 7px 0px;
  top: 0;
  right: 0;
  position: absolute;
  font-size: 85%;
  line-height: 100%;
  z-index: 1;
  transition: all 0.3s ease-in-out 0s;
  box-shadow: 0 0 0;
}

#fixednav .back2top {
  background: #cccccc;
  border-radius: 50%;
  -moz-border-radius: 50%;
  top: 15px;
  right: 10px;
  position: absolute;
}

#fixednav .back2top:hover { background: #0567b1; }

/* Header & Footer */

#header { z-index: 5; }

body.events #header { display: none; }

#header .topbar {
  background: #f7f7f7;
  position: relative;
}

body.palvelut #header .topbar { display: none; }

body.events #header .topbar { display: none; }

@media screen and (max-width: 940px) {
	body.palvelut #header .topbar.show-languages { display: block; }
	body.palvelut #header .topbar.show-languages li { margin: 0; }
	body.palvelut #header .topbar li#topbar-search { display: none; }
}

#header .topbar .menu {
  display: table;
  width: 100%;
  /*table-layout: fixed;*/
}

#header .topbar .menu li {
  border-color: #dedede;
  border-width: 0 1px 0 0;
  display: table-cell;
  vertical-align: top;
  text-align: center;
}

#header .topbar .menu li.translations {
  border-width: 0;
  padding-right: 35px;
  text-align: left;
}

#header .topbar .menu a {
  display: block;
  color: #4c4c4c;
  padding: 0 10px;
  height: 35px;
  line-height: 35px;
}

#header .topbar .menu .kiilopaa a { color: #d99b00; }

#header .topbar .menu .liikuntapalvelut a { color: #8f23b3; }

#header .topbar .menu .hiihtopalvelut a { color: #eb471f; }

#header .topbar .menu a:hover {
  background-color: #eeeeee;
}

#header .topbar .menu .latupolku { padding-right: 35px; }

#header .topbar .menu .latupolku a {
  background-image: url(/media/layout/img/logo-latujapolku.png);
  background-position: center;
  background-size: 94px 15px;
  background-repeat: no-repeat;
  min-width: 94px;
  text-indent: -500em;
  overflow: hidden;
}

/*
#header .topbar .menu .latupolku img {
  display: inline-block;
  margin: 10px 0;
  height: 15px;
}
*/

#header .topbar .menu li.translations,
#header .navigation .menu li.translations { display: block; }

/*#selectLang-EN { display: none !important; }*/

#header .desktop-menu .translations {
  background: #f7f7f7;
  width: 150px;
}

#header .translations .current-lang {
  display: block;
  padding: 0 32px 0 10px;
  height: 35px;
  position: relative;
  line-height: 35px;
  white-space: nowrap;
}

#header .translations .current-lang:hover {
  background: #eeeeee;
  cursor: pointer;
}

#header .translations .current-lang .icon {
  background-position: 2px -30px;
  height: 35px;
  width: 35px;
  top: 0;
  right: 0;
  position: absolute;
}

#header .translations .current-lang img {
  display: inline-block;
  margin: -4px 5px 0 0;
  vertical-align: middle;
}

#header .translations .menu.lang-list {
  background: #f7f7f7;
  display: none;
  cursor: default;
  width: 100%;
  padding: 5px 0;
  bottom: auto;
  right: auto;
  top: 35px;
  left: 0;
  position: absolute;
  z-index: 1;
}

#header .translations .menu.lang-list li {
  border-width: 0;
  display: block;
  padding: 0 10px;
  text-align: left;
  white-space: nowrap;
}

#header .translations .menu.lang-list li.current { display: none; }

#header .translations .menu.lang-list li a {
  display: inline-block;
  padding: 0;
  height: auto;
  line-height: 1.3;
  font-size: 100%;
}

#header .translations .menu.lang-list li a:hover {
  background: none;
  color: #0567b1;
}

#topbar-search {
  display: block;
  top: 0;
  right: 0;
  position: absolute;
}

#topbar-search .search-icon,
#topbar-search .formCustomSubmit {
  background: #f7f7f7 url(/media/layout/img/sprite-icons.png) 1px 1px no-repeat;
  cursor: pointer;
  display: block;
  padding: 0;
  height: 35px;
  width: 35px;
  top: 0;
  right: 0;
  position: absolute;
  text-indent: 5000em;
  overflow: hidden;
  z-index: 2;
}

#topbar-search .formCustomSubmit {
  display: none;
}

#topbar-search .formTextinput {
  background: #f7f7f7;
  border-radius: 0;
  -moz-border-radius: 0;
  border-width: 0 0 0 1px;
  padding: 10px 35px 10px 0px;
  top: 0;
  right: 0;
  position: absolute;
  font-size: 85%;
  line-height: 100%;
  z-index: 1;
  transition: all 0.3s ease-in-out 0s;
  box-shadow: 0 0 0;
}

#topbar-search.open .formTextinput,
#topbar-search.open .search-icon,
#topbar-search.open .formCustomSubmit{ background-color: #eeeeee; }

#header .navigation {
  padding: 30px 20px 20px 20px;
  position: relative;
}

body.palvelut #header .navigation,
body.events #header .navigation { padding-top: 20px; }

#header .navigation .logo {
  background-image: url(/media/layout/img/logo.png);
  background-position: top left;
  background-size: 100%;
  display: block;
  width: 266px;
  height: 80px;
  text-indent: -500em;
  overflow: hidden;
}

#header .navigation .logo {
  background-image: url(/media/layout/img/logo.png);
  background-position: top left;
  background-size: 100%;
  display: block;
  width: 266px;
  height: 80px;
  text-indent: -500em;
  overflow: hidden;
}

body.palvelut.liikuntapalvelut #header .navigation .logo {
  background-image: url(/media/layout/img/logo-liikuntapalvelut-second.png);
  width: 292px;
  height: 70px;
}

body.palvelut.hiihtopalvelut #header .navigation .logo {
  background-image: url(/media/layout/img/logo-hiihtopalvelu-second.png);
  width: 266px;
  height: 70px;
}

/*#header .navigation .logo img { display: block; }

body.palvelut #header .navigation .logo img { height: 70px; }

body.events #header .navigation .logo img { height: 50px; }
*/

#header .navigation .menu {
  position: absolute;
  bottom: 0;
  right: 20px;
}

body.events #header .navigation .menu { display: none; }

#header .navigation .menu li {
  display: inline-block;
  position: relative;
}

#header .navigation .menu li.level1 { height: 100px; }

#header .navigation .menu li.vaikuta { padding-right: 15px; }

#header .navigation .menu li.contact:before {
  content: '';
  display: inline-block;
  height: 60px;
  margin-right: 10px;
  margin-top: -10px;
  border-color: #e6e6e6;
  border-style: solid;
  border-width: 0 0 0 1px;
  vertical-align: middle;
}

body.palvelut #header .navigation .menu li.contact:before { display: none; }

body.palvelut #header .navigation .menu li.last { padding-right: 20px; }

#header .navigation .menu a {
  color: #4c4c4c;
  display: inline-block;
}

#header .navigation .menu a.level1 {
  padding: 0 15px;
  line-height: 100px;
  font-family: 'pf_beausans_probold', 'Lato', sans-serif;
  font-size: 140%;
}

#header .navigation .menu a:hover,
#header .navigation .menu a.current { color: #0567b1; }

#header .navigation .menu li.contact a.level1 { font-family: 'pf_beausans_prothin', 'Lato', sans-serif; }

#header .navigation .menu .submenu-wrapper {
  display: none;
  top: 90px;
  right: 10px;
  position: absolute;
  z-index: 1;
}

#header .navigation .menu li.vaikuta .submenu-wrapper { width: 500px; }

#header .navigation .menu .submenu-holder {
  background: #f7f7f7;
  float: left;
  height: auto;
  margin: 0;
  padding: 30px;
  position: relative;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.ie8 #header .navigation .menu .submenu-holder { padding-left: 0px; }

#header .navigation .menu li.ulkoile .submenu-holder,
#header .navigation .menu li.vaikuta .submenu-holder {
  display: table;
  width: 100%;
  /*table-layout: fixed;*/
}

#header .navigation .menu li.ulkoile .submenu-holder ul.level2,
#header .navigation .menu li.vaikuta .submenu-holder ul.level2 {
  display: table-cell;
  vertical-align: top;
}

.ie8 #header .navigation .menu ul.level2 { padding-left: 30px !important; }

#header .navigation .menu li.vaikuta .submenu-holder ul.level2 { width: 50%; }

#header .navigation .menu li.ulkoile .submenu-holder ul.level2:first-child,
#header .navigation .menu li.vaikuta .submenu-holder ul.level2:first-child {
  border-width: 0 1px 0 0;
  border-style: dashed;
  padding: 0 30px 0 0;
}

#header .navigation .menu li.ulkoile .submenu-holder ul.level2:last-child,
#header .navigation .menu li.vaikuta .submenu-holder ul.level2:last-child { padding: 0 0 0 30px; }

#header .navigation .menu li.contact .submenu-holder { left: 0; }

#header .navigation .menu ul {
  margin-left: 0;
  margin-bottom: 0;
  padding: 0;
  list-style: none;
}

#header .navigation .menu li.level1 .arrow {
  display: none;
  top: 100px;
  left: 50%;
  border: solid transparent;
  content: " ";
  height: 0;
  width: 0;
  position: absolute;
  pointer-events: none;
  border-color: rgba(243, 243, 243, 0);
  border-bottom-color: #f7f7f7;
  border-width: 16px;
  margin-left: -16px;
  margin-top: -32px;
}

#header .navigation .menu ul ul {
  float: none;
  left: auto;
  margin: 10px 0 0 0;
  padding: 0;
}

#header .navigation .menu ul li { display: block; }

#header .navigation .menu ul li.level2 + li.level2 { margin-top: 17px; }

#header .navigation .menu ul a {
  display: block;
  padding: 3px 0;
  white-space: nowrap;
}

#header .navigation .menu li.vaikuta ul a { white-space: normal; }

#header .navigation .menu ul a.level2 { font-weight: 900; }

#header .navigation .menu ul a.level3 { font-size: 90%; }

#header .navigation .mmenu-btn {
  display: none;
  color: #4c4c4c;
  right: 20px;
  bottom: 36px;
  position: absolute;
}

#header .navigation .mmenu-btn .title {
  display: inline-block;
  margin: 0 10px 0 0;
  font-size: 110%;
  font-weight: 900;
  vertical-align: middle;
}

#header .navigation .mmenu-btn .lines {
  display: inline-block;
  height: 17px;
  width: 23px;
  position: relative;
  vertical-align: middle;
}

#header .navigation .mmenu-btn .line {
  display: block;
  height: 3px;
  width: 100%;
  background: #4c4c4c;
  margin-top: -2px;
  top: 50%;
  left: 0;
  position: absolute;
}

#header .navigation .mmenu-btn .line:first-child {
  margin-top: 0;
  top: 0;
}

#header .navigation .mmenu-btn .line:last-child {
  margin-top: 0;
  top: auto;
  bottom: 0;
}

.mm-menu li.main-links.vaikuta { padding-bottom: 10px; }

.mm-menu li:after { margin-left: 0 !important; }

.mm-menu li.main-links.liiku:after,
.mm-menu li.main-links.osallistu:after,
.mm-menu li.main-links.contact:after,
.mm-menu li.extra-links.level1:after,
.mm-menu li.other-links.level1:after { border-width: 0 !important; }

.mm-menu li.main-links.vaikuta:after { margin: 10px 20px 0 20px !important; }

.mm-menu .mm-list > li > a, .mm-list > li > span { line-height: 1.3 !important; }

.mm-menu a.level1 {
  margin-right: 60px !important;
  margin-left: 20px !important;
  padding-left: 0 !important;
}

.mm-menu li.main-links a.level1 {
  font-size: 140%;
  font-weight: 900;
}

.mm-menu li.main-links.contact a.level1 { font-weight: 400; }

.mm-menu li.level1 a.mm-subopen { right: 20px !important; }

.mm-menu li.main-links.vaikuta a.mm-subopen { top: -10px !important; }

.mm-menu li.level1 a.mm-subopen:before { border-width: 0 !important; }

/*.mm-menu li.extra-links.kiilopaa,*/
.mm-menu li.extra-links.level1.first-child,
.mm-menu li.other-links.level1.first { margin-top: 20px !important; }

.mm-menu li.suomenlatu a { color: #0567b1; }

.mm-menu li.kiilopaa a { color: #d99b00; }

.mm-menu li.liikuntapalvelut a { color: #8f23b3; }

.mm-menu li.hiihtopalvelut a { color: #eb471f; }

.mm-menu li.latupolku a.level1 {
  background-image: url(/media/layout/img/logo-latujapolku.png);
  background-position: center left;
  background-size: 94px 15px;
  background-repeat: no-repeat;
  min-width: 94px;
  text-indent: -500em;
  overflow: hidden;
}

.mm-menu li.extra-links.latupolku img { height: 15px; }

.mm-menu li.other-links a.level1 { font-weight: 700; }

#footer {
  background: url(/media/layout/img/wave-footer-default.jpg);
  background-position: top center;
  background-repeat: no-repeat;
  background-size: 100% 63px;
  margin: 30px 0 0 0;
}

body.home #footer { background: none; }

#footer .info-row {
  display: table;
  margin-top: 87px;
  width: 100%;
  /*table-layout: fixed;*/
}

body.home #footer .info-row { margin-top: 0; }

#footer .info-row .col {
  display: table-cell;
  vertical-align: middle;
}

#footer .logo { padding-right: 30px; }

#footer .logo .logo-holder {
  background-image: url(/media/layout/img/logo.png);
  background-position: center;
  background-size: 100%;
  display: block;
  margin-top: -12px;
  width: 166px;
  height: 50px;
  text-indent: -500em;
  overflow: hidden;
}

body.palvelut.liikuntapalvelut #footer .logo .logo-holder {
  background-image: url(/media/layout/img/logo-liikuntapalvelut-second.png);
  width: 200px;
  height: 50px;
}

body.palvelut.hiihtopalvelut #footer .logo .logo-holder {
  background-image: url(/media/layout/img/logo-hiihtopalvelu-second.png);
  width: 190px;
  height: 50px;
}

/*
#footer .logo img {
  margin-top: -12px;
  height: 50px;
}
*/

#footer .info { font-size: 85%; }

body.palvelut #footer .info,
body.events #footer .info { text-align: right; }

body.events #footer .info p { margin: 0; }

#footer .info ul {
  display: inline-block;
  margin: 0 20px 0 0;
  padding: 0;
  list-style: none;
}

#footer .tools {
  width: 300px;
  text-align: right;
}

#footer .search-footer {
  margin: 30px 0 0 0;
  position: relative;
}

#footer .search-footer .formCustomSubmit {
  background: url(/media/layout/img/sprite-icons.png) 0px 0px no-repeat;
  cursor: pointer;
  display: block;
  padding: 0;
  height: 32px;
  width: 32px;
  top: 4px;
  right: 7px;
  position: absolute;
  text-indent: 5000em;
  overflow: hidden;
  z-index: 2;
}

#footer .nappi {
  background: #ffffff;
  color: #0567b1;
  width: 120px;
  margin-bottom: 10px;
  margin-left: 10px;
  padding: 6px 10px 6px 22px;
  position: relative;
  font-size: 80%;
  text-align: left;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
}

#footer .nappi:hover { color: #4c4c4c; }

#footer .nappi .icon {
  top: -1px;
  left: -4px;
  position: absolute;
}

#footer .menu {
  border-width: 2px 0 0 0;
  display: table;
  margin: 30px 0;
  width: 100%;
  table-layout: fixed;
}

#footer .menu li {
  display: table-cell;
  padding: 30px;
  vertical-align: top;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

#footer .menu li:first-child { padding-left: 0; }

#footer .menu li:last-child { padding-right: 0;  }

#footer .menu li.contact { border-width: 0 1px; }

#footer .menu a {
  display: block;
  color: #4c4c4c;
}

#footer .menu a:hover { color: #0567b1; }

#footer .menu .main-links a.level1 {
  margin: 0 0 10px 0;
  font-size: 120%;
  font-weight: 900;
}

#footer .menu .main-links a.level2 {
  padding: 2px 0;
  font-size: 85%;
}

#footer .menu .extra-links a {
  margin: 0 0 5px 0;
  padding: 4px 0;
}

body.palvelut #footer .menu .extra-links a,
body.events #footer .menu .extra-links a {
  float: left;
  width: 50%;
}

#footer .menu .extra-links a.suomenlatu { color: #0567b1; }

#footer .menu .extra-links a.kiilopaa { color: #d99b00; }

#footer .menu .extra-links a.liikuntapalvelut { color: #8f23b3; }

#footer .menu .extra-links a.hiihtopalvelut { color: #eb471f; }

#footer .menu .extra-links a.latupolku { margin: 0px 0 0 0; }

#footer .menu .extra-links a.latupolku {
  background-image: url(/media/layout/img/logo-latujapolku.png);
  background-position: center left;
  background-size: 94px 15px;
  background-repeat: no-repeat;
  min-width: 94px;
  text-indent: -500em;
  overflow: hidden;
}

#footer .menu .extra-links a.latupolku img { height: 15px; }

/* Palvelut ja Tapahtumat footer menu */

#footer .subsitemenu {
  width: 60%;
  float: left;
}

#footer .subsitemenu__main { padding: 30px; }

#footer .subsitemenu__main .main-links {
  display: inline-block;
  margin-right: -3px;
  width: 50%;
}

#footer .subsitemenu__extra {
  float: right;
  width: 40%;
  border-left:1px;
}

#footer .subsitemenu__extra li:first-child {
  border-left: 1px solid #e6e6e6;
  padding-left: 30px;
}

#copyright {
  background: #333333;
  color: #ffffff;
  padding: 30px 0;
  font-size: 85%;
  text-transform: uppercase;
  text-align: center;
}

#copyright .addthis_sharing_toolbox { margin-bottom: 20px; }

/* Hero */

body.default #hero { z-index: 1; }

#hero .hero-wrapper {
  width: 100%;
  height: 510px;
  margin: 0 0 60px 0;
  position: relative;
  -webkit-transition: height 400ms linear;
  -moz-transition: height 400ms linear;
  -o-transition: height 400ms linear;
  transition: height 400ms linear;
}

body.home #hero .hero-wrapper {  }

body.theme-hero #hero .hero-wrapper{
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  margin-bottom: 0;
  height: 510px;
}

body.events #hero .hero-wrapper {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  margin-bottom: 0;
  height: 410px;
}

body.default-hero #hero .hero-wrapper {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  margin-bottom: 0;
  height: 300px;
}

body.no-hero #hero .hero-wrapper {
  background: url(/media/layout/img/paper-bg.jpg);
  background-repeat: repeat;
  margin-bottom: 0;
  height: 300px;
}

#hero .swiper-container,
#hero .swiper-wrapper { height: 100%; }

#hero .swiper-container { z-index: 1; }

#hero .swiper-slide {
  height: 100%;
  z-index: 1;
}

#hero .swiper-slide .slide-bg {
  background-size: cover;
  background-position: center;
  height: 100%;
  width: 100%;
}

#hero .swiper-slide .slide-bg.top { background-position: top center; }

#hero .swiper-slide .slide-bg.middle { background-position: middle center; }

#hero .swiper-slide .slide-bg.bottom { background-position: bottom center; }

#hero .swiper-slide .box { display: none; }

#hero .swiper-slides {
  width: 100%;
  top: 0;
  left: 0;
  position: absolute;
  z-index: 3;
}

#hero .swiper-slides .container .holder { position: relative; }

#hero .single-slide {
  width: 100%;
  bottom: 0;
  left: 0;
  position: absolute;
  z-index: 3;
}

#hero .single-slide .container { position: relative; }

#hero .box {
  background: rgba(5, 103, 177, 0.8);
  color: #ffffff;
  display: none;
  padding: 30px 30px 60px 30px;
  bottom: -440px;
  width: 50%;
  position: absolute;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

html.ie8 #hero .box,
html.ie9 #hero .box {
  background-color: none;
  background: url(/media/layout/img/bg-blue.png) top left repeat;
  border-width: 0;
}

#hero .single-slide .box {
  display: block;
  padding-bottom: 30px;
  bottom: 180px;
}

#hero .box.left { left: 0; }

#hero .box.right { right: 0; }

#hero .box h1 {
  color: #ffffff;
  margin: 0 0 10px 0;
}

#hero .box p {
  margin: 0;
  /*font-size: 80%;*/
}

#hero .box .nappi {
  background: none;
  border-color: rgba(255, 255, 255, 0.5);
  border-width: 1px 1px 0 1px;
  border-radius: 0;
  -moz-border-radius: 0;
  bottom: 0;
  left: 30px;
  position: absolute;
}

#hero .box .nappi:hover { background: #045088; }

#hero .box .separator { margin: 0 10px; }

#hero .hero-wave {
  background-image: url(/media/layout/img/wave-hero.png);
  background-position: center;
  background-size: 100% 40px;
  width: 100%;
  height: 40px;
  bottom: 0;
  left: 0;
  position: absolute;
  z-index: 2;
}

#hero .hero-wave img { display: none; }

#hero .swiper-pagination {
  width: 100%;
  bottom: -38px;
  left: 0%;
  position: absolute;
  text-align: center;
  z-index: 4;
}

#hero .swiper-pagination span {
  background: #eeeeee;
  border-radius: 50%;
  -moz-border-radius: 50%;
  cursor: pointer;
  display: inline-block;
  margin: 0 5px;
  height: 16px;
  width: 16px;
}

#hero .swiper-pagination span.swiper-active-switch { background: #0567b1; }

#hero .hero-msg {
  margin-top: -27px;
  width: 100%;
  top: 50%;
  left: 0;
  position: absolute;
  text-align: center;
}

/* Body */

body.theme-hero.default #body {
  margin: -60px 0 20px 0;
  z-index: 4;
}

body.default-hero #body,
body.events #body {
  margin: -60px 0 20px 0;
  z-index: 4;
}

body.no-hero #body {
  margin: -260px 0 20px 0;
  z-index: 4;
}

#body img { max-width: 100%; }

/*#body h1, #body h2 { position: relative; }*/

#body h2 .icon { margin: -5px 5px 0 0; }

#body h2 img {
  margin: 0 10px 0 0;
  height: 14px;
}

#body h1 a.title-link,
#body h2 a.title-link {
  top: 3px;
  right: 0;
  position: absolute;
  font-family: 'Lato', Arial, sans-serif;
  font-size: 70%;
}

#body h1 a.title-link {
  top: 15px;
  font-size: 48%;
}

#body h1 a.title-link .icon,
#body h2 a.title-link .icon { margin: 0; }

#body h1.theme-title {
  background: #ffffff;
  display: inline-block;
  height: 30px;
  margin: 0;
  padding: 20px 30px 0 30px;
  top: -50px;
  left: 0;
  position: absolute;
  font-family: 'pf_beausans_probold', 'Lato', sans-serif;
  font-size: 210%;
  line-height: 30px;
  z-index: 1;
}

#body h1.theme-title img { height: 27px; }

.ie8 #body h1.theme-title { top: -49px; }

body.events #body h1.theme-title {
  top: -60px;
  height: 40px;
}

#body a.link-icon {
  display: inline-block;
  padding-left: 18px;
  font-size: 85%;
  position: relative;
}

#body a.link-icon .icon {
  top: -6px;
  left: -14px;
  position: absolute;
}

#body .box,
.body-col-right .block.editor {
  background: #ffffff;
  padding: 20px;
  position: relative;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
}

.ie8 #body .box { border-width: 1px; }

#body .box .box {
  padding: 0;
  box-shadow: 0 0 0 rgba(0, 0, 0, 0.1);
}

#body .box.main { padding: 30px; }

#body .box.absolute-foot { padding-bottom: 73px; }

#body .box + .box,
#body .box + form,
#body .box + .list,
#body .menu + .box,
#body .menu + .editor { margin-top: 20px; }

#body .box .foot {
  border-width: 1px 0 0 0;
  margin: 20px -20px -10px -20px;
  padding: 10px 20px 0 20px;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

#body .box.main .foot {
  margin-left: -30px;
  margin-right: -30px;
  padding-left: 30px;
  padding-right: 30px;
}

#body .box.absolute-foot .foot {
  margin: 0;
  padding: 10px 20px 10px 20px;
  width: 100%;
  bottom: 0;
  left: 0;
  position: absolute;
}

#body .box .foot .pagination .curPage { font-size: 90%; }

.body-row {
  display: table;
  width: 100%;
  table-layout: fixed;
}

.body-row + .body-row { margin-top: 20px; }

.body-row .body-col-left,
.body-row .body-col-right {
  display: table-cell;
  vertical-align: top;
  position: relative;
}

.body-row .body-col-right { padding-left: 2%; }

.sidemenu {
  background: #0567b2;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
}

.sidemenu li {
  border-color: #3585c0;
  border-width: 0 0 1px 0;
}
.sidemenu li.last { border-width: 0; }

.sidemenu a {
  color: #ffffff;
  display: block;
  padding: 10px 20px;
}

.sidemenu a:hover { background: #1e75b8; }

.sidemenu a.level1 {
  background: #0567b2;
  background: -moz-linear-gradient(top,  #035592 0%, #034576 100%);
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#035592), color-stop(100%,#034576));
  background: -webkit-linear-gradient(top,  #035592 0%,#034576 100%);
  background: -o-linear-gradient(top,  #035592 0%,#034576 100%);
  background: -ms-linear-gradient(top,  #035592 0%,#034576 100%);
  background: linear-gradient(to bottom,  #035592 2%,#034576 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#035592', endColorstr='#034576',GradientType=0 );
  font-size: 125%;
  font-family: 'pf_beausans_prothin', 'Lato', sans-serif;
}

.sidemenu li.level2.current a { background: #1e75b8; }

.sidemenu li.level2.current.hasSubItems a {
  background: #1e75b8;
  border-color: #3585c0;
  border-style: dashed;
  border-width: 0 0 1px 0;
}

.sidemenu li.level2.current.hasSubItems ul { display: block; }

.sidemenu ul ul {
  display: none;
  padding: 10px 20px;
  box-shadow: 0 0 0;
}

.sidemenu li.level1 li.current.hasSubItems ul ul,
.sidemenu li.level1 li.current.hasSubItems ul ul ul { display: none; }

.sidemenu li.level1 li.current.hasSubItems ul li.current ul,
.sidemenu li.level1 li.current.hasSubItems ul ul li.current ul{ display: block; }

.sidemenu li.level1 li.current.hasSubItems ul li,
.sidemenu li.level1 li.current.hasSubItems ul a { border-width: 0; }

.sidemenu li.level1 li.current.hasSubItems ul a {
  background: none;
  padding: 2px 0;
  font-size: 90%;
}

.sidemenu li.level1 li.current.hasSubItems ul a:hover { color: #9ACCF1; }

.sidemenu li.level1 li.current.hasSubItems ul a.current { font-weight: 700; }

/* Home */


body.home .body-row.row1 .body-col-left { width: 66%; }

.ie8 body.home .body-row.row1 .body-col-left { width: 630px; }

body.home .body-row.row1 .body-col-right { width: 300px; }

.ie8 body.home .body-row.row1 .body-col-right {
  width: 290px;
  padding-left: 20px;
}

/*body.home .body-row.row2 .body-col-left,
body.home .body-row.row2 .body-col-right { width: 48%; }
*/

body.home .body-row.row2 .body-col-right { width: 54.66%; }

body.home .body-row.row2 .body-col-left { width: 43.33%; }

body.home #body .list.news .image-col { width: 195px; }

body.home #body .list.news img {
  max-width: none;
  width: 195px;
  height: 130px;
}

#body .box.reasons-anchor-btn {
  background: #eb4721;
  background: -moz-linear-gradient(top,  #eb4721 0%, #d8320a 100%);
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#eb4721), color-stop(100%,#d8320a));
  background: -webkit-linear-gradient(top,  #eb4721 0%,#d8320a 100%);
  background: -o-linear-gradient(top,  #eb4721 0%,#d8320a 100%);
  background: -ms-linear-gradient(top,  #eb4721 0%,#d8320a 100%);
  background: linear-gradient(to bottom,  #eb4721 0%,#d8320a 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#eb4721', endColorstr='#d8320a',GradientType=0 );
  color: #ffffff;
  display: block;
  padding: 20px;
  position: relative;
}

.reasons-anchor-btn:hover {
  background: #eb4721;
  background: -moz-linear-gradient(top,  #e03d14 0%, #bb2d09 100%);
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#e03d14), color-stop(100%,#bb2d09));
  background: -webkit-linear-gradient(top,  #e03d14 0%,#bb2d09 100%);
  background: -o-linear-gradient(top,  #e03d14 0%,#bb2d09 100%);
  background: -ms-linear-gradient(top,  #e03d14 0%,#bb2d09  100%);
  background: linear-gradient(to bottom,  #e03d14 0%,#bb2d09 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e03d14', endColorstr='#bb2d09',GradientType=0 );
}

.reasons-anchor-btn h2, .reasons-anchor-btn p {
  color: #ffffff;
  margin: 0;
}

.reasons-anchor-btn h2 { margin: 0 0 5px 0; }

.reasons-anchor-btn p { font-size: 90%; }

.reasons-anchor-btn .icon {
  margin-top: -18px;
  right: 20px;
  top: 50%;
  position: absolute;
}

#body .box.calendar-banner {
  display: block;
  padding: 20px;
  position: relative;
}

.calendar-banner h2,
.calendar-banner p { margin: 0; }

.calendar-banner h2 { margin: 0 0 10px 0; }

/* Default */

body.default .body-row.row1 .body-col-left { width: 74.54545%; }

body.default .body-row.row1 .body-col-right { width: 23.63636%; }

.image-text {
  color: #828282;
  margin-top: -0.5em;
  font-size: 90%;
  font-style: italic;
}

/* Lists */

.list .item {
  display: block;
  color: #4c4c4c;
  position: relative;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.list a.item:hover { color: #0567b1; }

.list .item .image {
  display: block;
  width: 100%;
  position: relative;
}

.list .item .image img { display: block; }

.list .item .video {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
}

.list .item .video iframe,
.list .item .video object,
.list .item .video embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.list p { margin: 0; }

.list p.title {
  margin: 0 0 5px 0;
  font-size: 100%;
  font-weight: 900;
}

.list p.intro {
  margin: 0;
  font-size: 90%;
}

.list p.intro + p.intro { margin-top: 8px; }

.list p.read-more {
  color: #0567b1;
  margin: 5px 0 0 0;
  font-size: 90%;
}

.list p.meta,
.article p.meta {
  color: #b2b2b2;
  margin: 5px 0 0 0;
  font-size: 75%;
}

.list p.meta .separator,
.article p.meta .separator { margin: 0 5px; }

.list.vertical .item {
  margin-bottom: 20px;
  display: table;
  width: 100%;
  table-layout: fixed;
}

.list.vertical .item.last { margin: 0; }

.list.vertical .item .col {
  display: table-cell;
  vertical-align: top;
}

.list.vertical .item .image-col { width: 35%; }

.list.vertical .item .text-col {
  padding: 2px 0 2px 20px;
  width: 65%;
}

.list.horizontal .item {
  display: inline-block;
  width: 32.12121%;
  margin: 0 0 20px 1.81818%;
  vertical-align: top;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.list.horizontal .item:nth-child(3n+1) { margin-left: 0; }

.list.horizontal .item .image-col,
.list.horizontal .item .text-col { display: block; }

.list.horizontal .item .image { margin-bottom: 10px; }

.list.bullets .item { padding-left: 32px; }

.list.bullets .icon {
  top: -4px;
  left: 0;
  position: absolute;
}

.list.thumbnails .item { box-shadow: 0 0 5px rgba(0, 0, 0, 0.1); }

.list.thumbnails.folders .item { margin-right: -3px }

.box .list.thumbnails .item { box-shadow: 0 0 0; }

.list.thumbnails .item .image {
  margin-bottom: 0;
  position: relative;
}

.box .list.thumbnails .item .image { margin-bottom: 10px; }

.list.thumbnails .item .image .hover-bg {
  background: rgba(0, 0, 0, 0.5);
  display: none;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  position: absolute;
}

.list.thumbnails .item .image .hover-holder {
  display: table;
  height: 100%;
  width: 100%;
  table-layout: fixed;
}

.list.thumbnails .item .image .hover-holder .hover-text {
  color: #ffffff;
  display: table-cell;
  font-size: 85%;
  vertical-align: middle;
  text-align: center;
}

.list.thumbnails .item .text-col { padding: 20px; }

.box .list.thumbnails .item .text-col { padding: 0; }

.list.personel .image {
  background: none;
  height: auto;
  min-height: 32px;
  position: relative;
}

.list.personel .image img {
  border-radius: 50%;
  -moz-border-radius: 50%;
  behavior: url(/media/layout/pie/pie.htc);
  position: relative;
}

.list.vertical.personel .item .col { vertical-align: middle; }

.list.vertical.personel .item .image-col { width: 25%; }

.list.vertical.personel .item .text-col {
  padding: 2px 0 2px 20px;
  width: 75%;
}

.list.rss { overflow: hidden; }

.list.calendar { padding-right: 70px; }

.list.calendar hr { margin-right: -70px; }

.list.calendar hr:first-child { display: none; }

.list.calendar .date {
  float: right;
  margin: 0 -70px 0 0;
}

.list.calendar.default {
  padding-right: 0;
}

.list.calendar.default .item .date {
  float: none;
  margin: 0;
}

/* Article */

.article h1 { margin-bottom: 10px; }

.article p.meta { margin-bottom: 30px; }

.article .list { margin-top: 30px; }

.comments,
.commenting {
  border-width: 1px 0 0 0;
  margin: 30px 0 0 0;
  padding: 30px 0 0 0;
}

.comment {
  background: #f2f2f2;
  padding: 20px;
}

.comment + .comment { margin-top: 20px; }

.comment p:last-child { margin-bottom: 0; }

/* Newsletter */

#body .box.newsletter {
  background: #88c404;
  background: -moz-linear-gradient(top,  #88c404 0%, #76aa00 100%);
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#88c404), color-stop(100%,#76aa00));
  background: -webkit-linear-gradient(top,  #88c404 0%,#76aa00 100%);
  background: -o-linear-gradient(top,  #88c404 0%,#76aa00 100%);
  background: -ms-linear-gradient(top,  #88c404 0%,#76aa00 100%);
  background: linear-gradient(to bottom,  #88c404 0%,#76aa00 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#88c404', endColorstr='#76aa00',GradientType=0 );
  color: #ffffff;
  padding: 20px;
  display: table;
  width: 100%;
  table-layout: fixed;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  table-layout: fixed;
}

.newsletter .col {
  display: table-cell;
  vertical-align: middle;
}

.newsletter .left-col {
  padding-right: 5%;
  width: 40%;
}

.newsletter .right-col {
  width: 55%;
}

.newsletter h2 {
  color: #ffffff;
  margin: 0 0 5px 0;
}

.newsletter p {
  margin: 0;
  font-size: 90%;
}

.formField-newsletter { position: relative; }

.newsletter .formEmailinput {
  background: #628d00;
  border-width: 0;
  border-radius: 40px;
  -moz-border-radius: 40px;
  color: #ffffff;
  padding: 0 100px 0 20px;
  height: 40px;
  line-height: 40px;
}

.newsletter .formEmailinput::-webkit-input-placeholder {color: #ffffff;}

.newsletter .formEmailinput::-moz-placeholder {color: #ffffff;}

.newsletter .formEmailinput:-ms-input-placeholder{ color: #ffffff; }

.newsletter .formSubmit {
  background: #ffffff;
  border-radius: 40px;
  -moz-border-radius: 40px;
  color: #88c404;
  margin: 0;
  padding: 0;
  width: 85px;
  height: 40px;
  top: 0;
  right: 0;
  position: absolute;
  line-height: 40px;
  font-weight: 900;
  text-align: center;
}

/* Temporary Newsletter for desktop */

#body .box.newsletter,
.newsletter .col {
  display: block;
  width: 100%;
}

.newsletter .col { padding: 0; }

.newsletter .col + .col { margin-top: 20px; }

/* Home Calendar */

#calendar .head {
  border-width: 0 0 1px 0;
  height: 155px;
  width: 100%;
  padding: 20px;
  top: 0;
  left: 0;
  position: absolute;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

#calendar .head h2 { margin-bottom: 10px; }

#calendar .head p {
  margin: 10px 0;
  font-size: 90%;
}

#calendar .formField {
  display: inline-block;
  margin-left: -3px;
  width: 48%;
}

#calendar .formField:last-child { margin-left: 3.5%; }

#calendar .formFieldHolder { margin-bottom: 0; }

#calendar .foot { height: 43px; }

#calendar .scroll-container {
  width: 100%;
  top: 156px;
  left: 0;
  position: absolute;
}

#calendar .scroll-content-holder {
  padding: 20px 50px 20px 20px;
  -moz-padding-end: 30px;
  width: 100%;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

body.home .list.calendar .item { margin-bottom: 10px; }

body.home .list.calendar .title { font-size: 90%; }

#calendar .bottom-shadow,
#calendar .top-shadow {
  background-repeat: repeat-x;
  position: absolute;
  left: 0;
  height: 9px;
  width: 100%;
}

#calendar .bottom-shadow {
  background-image: url(/media/layout/img/calendar-shadow.png);
  background-position: 0 0;
  bottom: 43px;
}

#calendar .top-shadow {
  background-image: url(/media/layout/img/calendar-shadow.png);
  background-position: 0 -9px;
  top: 155px;
}

/* Events search */

.events-search {
  background: #0567b1;
  color: #ffffff;
  margin: -30px -30px 30px -30px;
  padding: 30px;
}

.events-search h2 { color: #ffffff; }

.events-search .formField {
  display: inline-block;
  width: 48.5%;
  margin-left: 2%;
  vertical-align: top;
}

.events-search .formField:nth-child(2n+1) { margin-left: 0; }

/* 3 syytä liittyä  */

#reasons {
  background: url(/media/layout/img/paper-bg.jpg);
  border-width: 1px 0 0 0;
  margin-top: 100px;
  position: relative;
}

#reasons .section-title {
  color: #0567b1;
  margin: -101px 0 0 0;
  height: 100px;
  line-height: 100px;
  position: relative;
  text-align: center;
  font-size: 135%;
  white-space: nowrap;
}

#reasons .section-title .label {
  background: #0567b1;
  background: -moz-linear-gradient(top,  #0567b1 0%, #045088 100%);
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#0567b1), color-stop(100%,#045088));
  background: -webkit-linear-gradient(top,  #0567b1 0%,#045088 100%);
  background: -o-linear-gradient(top,  #0567b1 0%,#045088 100%);
  background: -ms-linear-gradient(top,  #0567b1 0%,#045088 100%);
  background: linear-gradient(to bottom,  #0567b1 0%,#045088 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0567b1', endColorstr='#045088',GradientType=0 );
  border-radius: 50%;
  -moz-border-radius: 50%;
  color: #ffffff;
  display: inline-block;
  line-height: 100%;
  margin: 0 15px 0 0;
  padding: 8px 0;
  width: 36px;
  vertical-align: middle;
}

#reasons .section-title:after, #reasons .section-title:before {
  top: 100%;
  left: 50%;
  border: solid transparent;
  content: " ";
  height: 0;
  width: 0;
  position: absolute;
  pointer-events: none;
}

#reasons .section-title:after {
  border-color: rgba(255, 255, 255, 0);
  border-top-color: #fff;
  border-width: 20px;
  margin-left: -20px;
}

#reasons .section-title:before {
  border-color: rgba(230, 230, 230, 0);
  border-top-color: #e6e6e6;
  border-width: 21px;
  margin-left: -21px;
}

#reasons .home-wave {
  background-image: url(/media/layout/img/wave-footer-home.png);
  background-position: center top;
  background-size: 100% 40px;
  height: 40px;
  width: 100%;
  bottom: 0;
  left: 0;
  position: absolute;
  z-index: 2;
}

#reasons .list-wrapper {
  margin-top: 30px;
  z-index: 1;
}

#reasons .item {
  border-width: 1px 0 0 0;
  float: left;
  position: relative;
  width: 100%;
}

#reasons .item:first-child { border-width: 0; }

#reasons .item .bg1 {
  background-image: url(/media/layout/img/reasons-light.png);
  background-position: top center;
  float: left;
  width: 100%;
}

#reasons .item .bg2 {
  background-image: url(/media/layout/img/reasons-shadow.png);
  background-position: bottom center;
  float: left;
  width: 100%;
}

#reasons .item:first-child .bg1,
#reasons .item:last-child .bg2 { background: none; }

#reasons .item .text {
  float: right;
  display: inline-block;
  width: 45%;
  padding: 40px 5% 40px 0;
  vertical-align: top;
}

#reasons .item.even .text {
  float: left;
  padding-left: 5%;
  padding-right: 0;
}

#reasons .item.item-3 .text { padding-bottom: 125px; }

#reasons .item .text h1 { margin: 0 0 10px 0; }

#reasons .item .text p { margin: 0; }

#reasons .item .image {
  clear: both;
  left: 5%;
  width: 40%;
  bottom: 0;
  position: absolute;
}

#reasons .item.even .image {
  left: auto;
  right: 5%;
}

#reasons .item img {
  display: block;
  max-width: 100%;
}

#reasons .item-2 img { height: 210px; }

#reasons .item-3 img { height: 300px; }

#reasons .nappi {
  background: #88c404;
  background: -moz-linear-gradient(top,  #88c404 0%, #76aa00 100%);
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#88c404), color-stop(100%,#76aa00));
  background: -webkit-linear-gradient(top,  #88c404 0%,#76aa00 100%);
  background: -o-linear-gradient(top,  #88c404 0%,#76aa00 100%);
  background: -ms-linear-gradient(top,  #88c404 0%,#76aa00 100%);
  background: linear-gradient(to bottom,  #88c404 0%,#76aa00 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#88c404', endColorstr='#76aa00',GradientType=0 );
  border-radius: 50px;
  -moz-border-radius: 50px;
  padding: 0 65px 0 20px;
  height: 50px;
  line-height: 50px;
  bottom: 50px;
  left: 50%;
  position: absolute;
  font-family: 'pf_beausans_prothin', 'Lato', sans-serif;
  font-size: 125%;
}

#reasons .nappi:hover {
  background: #96ca1e;
  background: -moz-linear-gradient(top,  #96ca1e 0%, #80bb04 100%);
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#96ca1e), color-stop(100%,#80bb04));
  background: -webkit-linear-gradient(top,  #96ca1e 0%,#80bb04 100%);
  background: -o-linear-gradient(top,  #96ca1e 0%,#80bb04 100%);
  background: -ms-linear-gradient(top,  #96ca1e 0%,#80bb04 100%);
  background: linear-gradient(to bottom,  #96ca1e 0%,#80bb04 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#96ca1e', endColorstr='#80bb04',GradientType=0 );
}

#reasons .nappi .icon-holder {
  background: #b2e443;
  background: -moz-linear-gradient(top,  #b2e443 0%, #8ac805 100%);
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#b2e443), color-stop(100%,#8ac805));
  background: -webkit-linear-gradient(top,  #b2e443 0%,#8ac805 100%);
  background: -o-linear-gradient(top,  #b2e443 0%,#8ac805 100%);
  background: -ms-linear-gradient(top,  #b2e443 0%,#8ac805 100%);
  background: linear-gradient(to bottom,  #b2e443 0%,#8ac805 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#b2e443', endColorstr='#8ac805',GradientType=0 );
  display: block;
  border-radius: 50px;
  -moz-border-radius: 50px;
  height: 50px;
  width: 50px;
  top: 0;
  right: 0;
  position: absolute;
}

/* Tapahtumat (Events) */

#body .box.event-title {
  background: rgba(5, 103, 177, 0.8);
  color: #ffffff;
  margin-top: -130px;
  min-height: 130px;
  padding: 30px;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

html.ie8 #body .box.event-title,
html.ie9 #body .box.event-title {
  background-color: none;
  background: url(/media/layout/img/bg-blue.png) top left repeat;
  border-width: 0;
}

#body .box.event-title h1 {
  color: #ffffff;
  margin: 0 0 10px 0;
}

#body .box.event-title p {
  margin: 0;
  font-size: 80%;
}

#body .box.event-title .separator { margin: 0 10px; }

#body  .box.event-organizers  { margin-top: 0; }

.box.event-organizers .item {
  display: inline-block;
  margin-right: 10px;
}

.box.event-organizers img {
  display: inline-block;
  height: 60px;
}

.body-col-left .box.event-partners { display: none; }

.body-col-right .box.event-partners { text-align: center; }

.box.event-partners .list .item + .item { margin-top: 20px; }

.box.event-partners .list .item img { max-height: 70px; }

.body-col-right .box.event-partners .list .item img {
  display: block;
  margin: 0 auto;
}

/* Sitemap */

.sitemap li.level1 {
  display: inline-block;
  width: 23.63636%;
  margin-right: -3px;
  margin-bottom: 20px;
  padding-left: 1.81818%;
  vertical-align: top;
}

.sitemap li.level1:nth-child(4n+1) { padding-left: 0; }

.sitemap a {
  display: inline-block;
  padding-left: 15px;
  margin: 3px 0;
  width: 100%;
  font-size: 90%;
  position: relative;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.sitemap a .icon {
  top: -5px;
  left: -13px;
  position: absolute;
}

.sitemap a.level1 {
  border-width: 0 0 1px 0;
  padding: 0 0 10px 0;
  font-size: 110%;
  font-weight: 900;
}

.sitemap a.level1 .icon { display: none; }

.sitemap ul {
  margin: 10px 0;
}

.sitemap ul ul { margin-left: 16px; }

/* Tags */

.tag-cloud .menu li {
  border-width: 1px 0 0 0;
}

.tag-cloud .menu li:first-child { border-width: 0; }

a.tag {
  display: block;
  padding: 5px 0;
  font-size: 90%;
}

/* Error page */

.wrapper-404-error {
  text-align: center;
}

.wrapper-404-error hr {
  margin: 30px 0;
  height: 3px;
}

#title-404-error { margin: 0; }

#body-404-error { margin: 5px 0 0 0; }

#print-source { display: none; }

.on940-show, .on768-show, .on450-show { display: none !important; }

p.image-text.right { text-align: right; }
p.image-text.center { text-align: center; }

a.left { float :left; }
a.right { float: right; }
a.center {
  margin-right: auto !important;
  margin-left: auto !important;
}

/* REGISTER AND LOGIN SITE */
.login table,
.signup table { width: 100%; }

.login input,
.signup input { margin: 5px 0; }

.signup input[type="radio"] { width: 20%; }

/* NAVIGATION FOR LOGIN SITE */
.events-service-button {
  margin-top: -3px;
  padding: 10px 15px;
  right: auto;
  bottom: auto;
  position: relative;
  text-align: right;
}

.events-service-button span.title { margin-right: 10px; }

.events-service-button span.lines {
  display: inline-block;
  height: 17px;
  width: 23px;
  position: relative;
  vertical-align: middle;
}

.events-service-button span.line {
  display: block;
  height: 3px;
  width: 100%;
  background: #4c4c4c;
  margin-top: -2px;
  top: 50%;
  left: 0;
  position: absolute;
}

.events-service-button span.line:first-child {
    margin-top: 0;
    top: 0;
}
.events-service-button span.line:last-child {
  margin-top: 0;
  top: auto;
  bottom: 0;
}

.events-service-button {
    display: none;
    text-align: right;
}

.menu-holder {
    margin-bottom: 20px;
    text-align: center;
    font-size: 15px;
}

.events-service,
.events-service li {
    display: inline;
    margin: 0 15px;
}

#like-a-input {
    background: #ffffff;
    border-color: #cccccc;
    border-width: 1px;
    display: inline-block;
    margin: 20px 0;
    padding: 10px 30px;
    width: 100%;
    font-family: 'Lato', Arial, sans-serif;
    font-size: 85%;
    line-height: 1.3;
    text-align: center;
    box-shadow: inset 1px 1px 5px rgba(0, 0, 0, 0.1);
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
#like-a-input a { color: #4c4c4c; }
textarea { height: 100px; }

.form-field {
    width: 100%;
    margin: 0 10xp 10px 10px;
}

.label { width: 28%; }
.input { width: 71%; }
.submit { width: 47%; }

.form-col {
    display: inline-block;
    margin-bottom: 20px;
    vertical-align: top;
}

.form-col.submit:first-child {
  margin-right: 35px;
}
.form-field .error {
    color: #ff0000;
    font-weight: 900;
}

.form-col.submit .formEmailInput { text-align: center; }

.ui-autocomplete {
  width: 302px !important;
  max-height: 200px;
    overflow-y: auto;
    overflow-x: hidden;
}

/* MODAL WINDOW */
#terms {
  width: 600px;
  padding: 20px;
    top: 10px !important;
  background-color: #fff;
}

#terms span.button.b-close {
  float: right;
    position: relative;
    top: -40px;
    right: -35px;
}

span.button a {
  color: #fff;
  font-weight: 100;
}

.top20-block { margin-bottom: 50px; }
.top20-block span { font-weight: 900; }
.top20 {
    margin-bottom: 20px;
    border-bottom: 1px solid #dedede;
}

.fb-share-button {
    text-align: center;
}
.fb-share-button span { display: none !important; }

span.spacer { margin: 0 10px; }
/* DATEPICKER */
#ui-datepicker-div { background-color: #fff; }

.ui-datepicker-header {
  background-color: #0567b1;
  color: #fff;
}

.ui-datepicker-prev,
.ui-datepicker-next { color: #fff; }

.ui-datepicker-prev span,
.ui-datepicker-next span {
  margin-left: -15px !important;
  font-size: 13px;
  text-indent: 0;
  color: #fff;
}

.form-col.input #pvm,
.form-col.input #lampotila {
  width: 71%;
  float: right;
}

.list-col {
   display: inline-block;
   vertical-align: top;
}
.list-col.left { width: 20%; }
.list-col.right { width: 75%; }

.files table, .valineet table {
	width: 100% !important;
}

.files table th, .valineet table th {
	padding: 10px 10px 20px 0;
	color: #6a6a6a;
	font-size: 90%;
	text-transform: uppercase;
	font-family: "PT Sans Narrow", sans-serif;
}

th.sorting span:before {
	content: "\f0dc";
	font-family: 'FontAwesome';
	margin-right: 5px;
	font-size: 85%;
}

th.sorting_asc span:before,
th.sorting_ac span:before {
	content: "\f0d7";
	font-family: 'FontAwesome';
	margin-right: 5px;
}

th.sorting_desc span:before,
th.sorting_desc span:before {
	content: "\f0d8";
	font-family: 'FontAwesome';
	margin-right: 5px;
}

th.sorting_desc,
th.sorting_asc {
	color: #333333 !important;
}

.files table td {
	padding: 10px 10px 10px 0;
	font-size: 90%;
}

.files table td:first-child {
	width: 40px;
}

.files table td span:before  {
	content: "\f016";
	font-family: 'FontAwesome';
	color: #6a6a6a;
	margin-right: 10px;
}

.files table td span.doc:before,
.files table td span.docx:before  {
	content: "\f1c2";
}

.files table td span.pdf:before {
	content: "\f1c1";
}

.files table td span.txt:before {
	content: "\f0f6";
}

.files table td span.xls:before {
	content: "\f1c3";
}

.files table .fa-close {
	display: none;
}

@media (max-width: 940px) {

  .on940-show { display: block !important; }

  .taulukko-wrapper {
    width: 100%;
    overflow-y: auto;
    _overflow: auto;
    margin: 0 0 1em;
  }

  /* General */

  .container { width: 100%; }

  #body .container { padding: 0 20px; }

  /* Fixed Nav */

  #fixednav { display: none; }

  /* Header */

  #header .topbar {
    text-align: right;
    height: 35px;
    width: 100%;
  }

  /*body.palvelut #header .topbar { display: block; }*/

  body.palvelut #header #topbar-search { display: none; }

  #header .topbar .menu, #header .topbar .menu li { display: inline-block; }

  #header .topbar .menu li.level1 { display: none; }

  #header .topbar .menu li.translations {
    margin-right: -4px;
    padding-right: 0;
  }

  #topbar-search {
    width: 200px;
    top: auto;
    right: auto;
    position: relative;
  }

  #topbar-search .formTextinput {
    padding-left: 15px;
    width: 200px;
  }

  #header .navigation .logo {
    display: inline-block;
    width: 200px;
    height: 60px;
  }

  body.palvelut.liikuntapalvelut #header .navigation .logo {
    width: 250px;
    height: 60px;
  }

  body.palvelut.hiihtopalvelut #header .navigation .logo {
    width: 228px;
    height: 70px;
  }

  /*
  #header .navigation .logo img,
  body.palvelut #header .navigation .logo img { height: 60px; }
  */

  #header .navigation .desktop-menu { display: none; }

  #header .navigation .mmenu-btn { display: block; }

  body.events #header {
    background: #ffffff;
    display: block;
    float: right;
    width: auto;
    top: 0;
    right: 0;
    position: absolute;
  }

  body.events #header .navigation { padding: 0; }

  body.events #header .navigation .logo { display: none; }

  body.events #header .navigation .mmenu-btn {
    margin-top: -3px;
    padding: 10px 15px;
    right: auto;
    bottom: auto;
    position: relative;
  }

  #footer .container { padding: 0 20px; }

  #footer .logo { padding-right: 40px; }

  #footer .logo .logo-holder { margin-top: 0px; }

  #footer .info { font-size: 75%; }

  #footer .info ul { display: block; }

  #footer .info ul + ul { margin-top: 5px; }

  #footer .tools,
  #footer .tools .nappi { width: auto; }

  #footer .menu {
    border-width: 0;
    margin: 0 0 30px 0;
    display: block;
  }

  #footer .menu li {
    display: inline-block;
    width: 27.2%;
    padding: 20px;
  }

  #footer .menu li.liiku {
    width: 18%;
  }

  #footer .menu li.contact {
    border-width: 0;
    padding-right: 0;
  }

  #footer .menu li.extra-links {
    display: block;
    width: 100%;
  }

  #footer .menu li.extra-links {
    border-width: 2px 0 0 0;
    padding-left: 0;
    padding-right: 0;
    text-align: center;
  }

  #footer .menu li a {
    vertical-align: middle;
  }

  #footer .menu li.extra-links a,
  #footer .menu li.extra-links a.latupolku {
    display: inline-block;
    margin: 0 5px;
    padding: 0;
    height: 35px;
    line-height: 35px;
  }

  #footer .menu li.extra-links a img { margin: 10px 0; }

  #footer .subsitemenu {
    width: 100%;
    margin: 0;
    text-align: center;
  }

  #footer .subsitemenu__main .main-links {
    display: inline-block;
    width: auto;
    margin: 0 7px;
  }

  #footer .subsitemenu__main {
    float: none;
    padding: 30px 0;
  }

  #footer .subsitemenu__extra { width: 100%; }

  body.palvelut #footer .menu .extra-links a,
  body.events #footer .menu .extra-links a{
    float: none;
    width: auto;
  }

  /* Hero */

  #hero .swiper-slides .container { padding: 0 20px; }

  #hero .single-slide .container { margin: 0 20px; }

  #hero .single-slide {
    margin-top: -60px;
    bottom: auto;
    left: auto;
    position: relative;
  }

  #hero .single-slide .box { bottom: 120px; }

  /* Body */

  body.events #body { margin-top: 0; }

  /* Events search */

  .events-search .formField,
  .events-search .formField:nth-child(2n+1) {
    display: block;
    width: 100%;
    margin-left: 0%;
  }

  /* Sitemap */

  .sitemap li.level1,
  .sitemap li.level1:nth-child(4n+1) {
    width: 32.12121%;
    padding-left: 1.81818%;
  }

  .sitemap li.level1:nth-child(3n+1) { padding-left: 0; }

  /* Reasons */

  #reasons .list-wrapper { margin-top: 0px; }

  #reasons .item .text h1 { font-size: 165%; }

  #reasons .item-2 img { height: auto; }

  .events-service { display: none; }

    .events-service-button { display: block; }
}

@media (max-width: 768px) {

  .on768-hide { display:none !important; }

  .on768-show { display: block !important; }

  /* Hero */

  body.default #hero .hero-wrapper.theme-page { height: 400px; }

  #hero .swiper-container, #hero .swiper-wrapper { height: 400px; }

  #hero .swiper-slides {
    margin: -60px 0 0 0;
    height: auto;
    position: relative;
  }

  #hero .single-slide .container {
    margin: 0;
    padding: 0 20px;
  }

  #hero .box {
    width: 100%;
    right: auto !important;
    left: auto !important;
    bottom: auto;
    position: relative;
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
  }

  #hero .single-slide .box {
    bottom: 0;
  }

  #hero .hero-wave {
    top: 360px;
    bottom: auto;
  }

  /* Footer */

  #footer .logo { padding-right: 20px; }

  /* Body */

  /* Home */

  .body-row,
  .body-row .body-col-left,
  .body-row .body-col-right {
    display: block;
    padding: 0 !important;
    width: 100% !important;
  }

  .body-row .body-col-right { margin-top: 20px; }

  /* Tapahtumat */

  #body .box.event-title { margin-top: -100px; }

  body.events #body h1.theme-title {
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
    height: auto;
    padding: 20px;
    margin: -20px 0 20px 0;
    width: 100%;
    top: auto;
    left: auto;
    position: relative;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }

  .body-col-left .box.event-partners { display: block; }

  .box.event-partners .list .item { display: inline-block; }

  .box.event-partners .list .item + .item {
    margin-top: 0;
    margin-right: 10px;
  }

  .box.event-partners .list .item img { height: 50px; }

  /* Calendar */

  #calendar { height: auto !important; }

  #calendar .head {
    display: block;
    width: auto;
    margin: -20px -20px 20px -20px;
    height: auto;
    top: auto;
    left: auto;
    position: relative;
    box-sizing: border-box;
  }

  #calendar .scroll-container {
    width: 100%;
    height: auto !important;
    top: auto;
    left: auto;
    position: relative;
  }

  #calendar .scroll-content-holder {
    width: 100%;
    padding: 0;
    box-sizing: border-box;
  }

  #calendar .top-shadow,
  #calendar .bottom-shadow { display: none; }

  /* Events search */


  /* Reasons */

  #reasons .item .text,
  #reasons .item .image {
    float: none;
    display: block;
    width: 100%;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }

  #reasons .item .text,
  #reasons .item.even .text {
    padding: 40px 20px;
    text-align: center;
    z-index: 2;
  }

  #reasons .item:last-child .text { padding-bottom: 40px; }

  #reasons .item .nappi {
    margin: 30px 0 0 0;
    bottom: auto;
    left: auto;
    position: relative;
    z-index: 3;
  }

  #reasons .item .image,
  #reasons .item.even .image {
    padding: 0 20px;
    bottom: auto;
    left: auto;
    right: auto;
    position: relative;
    z-index: 1;
  }

  #reasons .item-2 .image { padding-left: 0 !important; }

  #reasons .item-3 img { height: auto; }

  #reasons .item .image img { margin: 0 auto; }


  .menu-holder {
      text-align: left;
  }

  .events-service, {
    display: block;
  }
  .events-service li {
    margin-right: 20px;
      text-align: center;
  }

  /* FORM */
   .submit {
      display: block;
      width: 100%;
      margin: 20px 0;
    }

    .ui-autocomplete {
        width: 280px !important;
    }
}

@media (max-width: 700px) {

  #footer .info-row, #footer .info-row .col {
    padding: 0;
    display: block;
    text-align: center;
  }

  #footer .info-row { margin: 67px 0 30px 0; }

  body.home #footer .info-row { margin-top: 0; }

  #footer .info-row .info,
  #footer .info-row .tools {
    margin-top: 20px;
  }

  body.palvelut #footer .info,
  body.events #footer .info {
  text-align: center;
  }

  #footer .info-row .info ul { margin: 0; }

  #footer .info-row .info ul + ul { margin: 0 0 0 10px; }

  #footer .nappi {
    width: auto;
    margin: 0 5px 10px 5px;
  }

  #footer .search-footer { margin: 20px 0 30px 0; }

  #footer .menu { display: none; }

  /* Lists */

  .list.horizontal:not(.thumbnails) .item {
    display: table;
    margin: 0;
    width: 100%;
    table-layout: fixed;
  }

  .list.horizontal:not(.thumbnails) .item + .item { margin-top: 20px; }

  .list.horizontal:not(.thumbnails) .item .col {
    display: table-cell;
    vertical-align: top;
  }

  .list.horizontal:not(.thumbnails) .item .image-col { width: 35%; }

  .list.horizontal:not(.thumbnails) .item .text-col {
    padding: 2px 0 2px 20px;
    width: 65%;
  }

  .list.horizontal:not(.thumbnails) .item .image { margin: 0; }

  #body .list.highlights .box.item + .box.item { margin-top: 20px; }

  .list.thumbnails .item,
  .list.thumbnails .item:nth-child(3n+1) {
    width: 49.09091%;
    margin-left:  1.81818%;
  }

  .list.thumbnails .item:nth-child(2n+1) {
    margin-left:  0;
  }

  /* Sitemap */

  .sitemap li.level1,
  .sitemap li.level1:nth-child(4n+1),
  .sitemap li.level1:nth-child(3n+1) {
    width: 49.09091%;
    padding-left: 1.81818%;
  }

  .sitemap li.level1:nth-child(2n+1) { padding-left: 0; }

  .icon,
  #fixednav .search-icon,
  #fixednav .formCustomSubmit,
  #topbar-search .search-icon,
  #topbar-search .formCustomSubmit,
  #footer .search-footer .formCustomSubmit {
    background-image: url(/media/layout/img/sprite-icons2x.png) !important;
    background-size: 256px 128px;
  }

  .icon.anchor-arrow {
    background-image: url(/media/layout/img/icon-anchor-arrow2x.png) !important;
    background-size: 40px 36px;
  }

  .list-col.left,
  .list-col.right { width: 100%; }

}

@media (max-width: 565px) {
  .form-col { display: block; }
  .form-col.input,
  .form-col.label { width: 100%; }

  .form-col.input #pvm,
  .form-col.input #lampotila {
    width: 100%;
    float: none;
  }
}

@media (max-width: 450px) {

  .on450-hide { display:none !important; }

  .on450-show { display: block !important; }

  /* Editor */

  h1, #reasons .item .text h1 { font-size: 155%; }

  /* General */

  #body .container { padding: 0 00px; }

  /* Header & Footer */

  #header { box-shadow: 0 3px 3px rgba(0, 0, 0, 0.04); }

  #header .topbar .menu, #header .topbar .menu li { display: inline-block; }

  #header .topbar .menu li.translations,
  #header .topbar .menu li#topbar-search { width: 49.5%; display: inline-block; }

  body.palvelut #header .topbar .menu li.translations { width: 100%; }

  #topbar-search { width: 50%; }

  #topbar-search .formTextinput { width: 100% !important; }

  #header .navigation { padding: 20px; }

  #header .navigation .logo {
    display: inline-block;
    width: 116px;
    height: 35px;
  }

  body.palvelut.liikuntapalvelut #header .navigation .logo {
    width: 146px;
    height: 35px;
  }

  body.palvelut.hiihtopalvelut #header .navigation .logo {
    width: 133px;
    height: 35px;
  }

  /*
  #header .navigation .logo img,
  body.palvelut #header .navigation .logo img,
  body.events #header .navigation .logo img { height: 35px; }
  */

  /*#header .navigation .logo img#logo-liikuntapalvelut { width: 133px; }*/

  #header .navigation .mmenu-btn { bottom: 28px; }

  #header .navigation .mmenu-btn .title {
    font-size: 75%;
    font-weight: 900;
    text-transform: uppercase;
  }

  #header .navigation .mmenu-btn .lines {
    height: 15px;
    width: 20px;
  }

  /* Hero */

  body.default #hero .hero-wrapper.theme-page {
    display: block;
    height: 300px;
  }

  #hero .swiper-container, #hero .swiper-wrapper { height: 300px; }

  #hero .hero-wave { top: 260px; }

  body.theme-page #hero .hero-wave { display: none; }

  body.no-hero #hero { display: none; }

  /* Body */

  body.no-hero #body { margin-top: 0; }

  #body h1.theme-title { padding-left: 20px; }

  #body h1 a.title-link {
    display: block;
    margin: 10px 0 0 0;
    top: auto;
    right: auto;
    position: relative;
    font-size: 55%;
  }

  #body .box, #body .box.main {
    padding: 20px;
    box-shadow: 0 0 0;
  }

  #body .box + .box,
  #body .box + form,
  #body .box + .list,
  body.home #body .body-row.row1 .box:first-child,
  #body #lp-blog {
    margin: 0;
    box-shadow: inset 0 3px 3px rgba(0, 0, 0, 0.04);
  }

  #body .box.main .foot {
    margin-right: -20px;
    margin-left: -20px;
    padding-left: 20px;
    padding-right: 20px;
  }

  .body-row + .body-row { margin-top: 0; }

  .body-row,
  .body-row .body-col-left {
    display: block;
    padding: 0 !important;
    width: 100% !important;
  }

  .body-row .body-col-right {
    display: block;
    /*padding: 0 20px !important;*/
    margin: 0;
    width: 100% !important;
    box-sizing: border-box;
  }

  .body-col-right {
    padding: 0 20px;
    box-sizing: border-box;
  }

  /* Lists */

  .list.horizontal .item,
  .list.horizontal:not(.thumbnails) .item,
  .list.vertical .item,
  .list.horizontal .item .col,
  .list.horizontal:not(.thumbnails) .item .col,
  .list.vertical .item .col {
    display: block;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }

  .list.horizontal .item + .item,
  .list.horizontal:not(.thumbnails) .item + .item,
  .list.vertical .item + .item { margin-top: 20px; }

  .list.horizontal .item .image-col,
  .list.horizontal:not(.thumbnails) .item .image-col,
  .list.vertical .item .image-col {
    margin-bottom: 10px;
    width: 100%;
  }

  .list.horizontal .item .text-col,
  .list.horizontal:not(.thumbnails) .item .text-col,
  .list.vertical .item .text-col {
    padding: 2px 0;
    width: 100%;
  }

  .list.thumbnails .item,
  .list.thumbnails .item:nth-child(3n+1),
  .list.thumbnails .item:nth-child(2n+1) {
    width: 100%;
    margin-left: 0;
  }

  .list.thumbnails { padding: 20px 20px 0 20px; }

  .box .list.thumbnails { padding: 0; }

  .list.thumbnails .item { margin-bottom: 0; }

  .list.thumbnails .item .image-col { margin-bottom: 0; }

  /*.list.thumbnails .item .image { height: 200px; }*/

  .list.thumbnails .item .text-col { padding: 20px; }

  .list.personel { text-align: center; }

  .list.vertical.personel .item .image-col {
    margin: 0 auto 10px auto;
    width: 70%;
  }

  .list.vertical.personel .item .text-col {
    width: 100%;
    padding-left: 0;
  }

  body.home #body .list.news .image-col { width: 100%; }

  body.home #body .list.news img {
    max-width: 100%;
    width: auto;
    height: auto;
  }

  /* Event search */

  .events-search {
    margin: -20px -20px 20px -20px;
    padding: 20px;
  }

  .events-search .formSubmit { width: 100%; }

  /* Events */

  .article.events  .taulukko tbody td {
    float: left;
    border-width: 0;
    display: block;
    width: 100%;
    box-sizing: border-box;
  }

  .article.events  .taulukko tbody tr td:first-child {
    padding: 9px 9px 2px 9px;
    font-weight: 700;
  }

  .article.events  .taulukko tbody tr td:last-child {
    border-width: 0 0 1px 0;
    padding: 2px 9px 9px 9px;
  }

  .article.events  .taulukko tbody tr:last-child td:last-child { border-width: 0; }

  /* Sitemap */

  .sitemap li.level1,
  .sitemap li.level1:nth-child(4n+1),
  .sitemap li.level1:nth-child(3n+1),
  .sitemap li.level1:nth-child(2n+1) {
    width: 100%;
    padding-left: 0;
  }

  /* Newsletter */

  #body .box.newsletter,
  .newsletter .col {
    display: block;
    width: 100%;
  }

  .newsletter .col { padding: 0; }

  .newsletter .col + .col { margin-top: 20px; }

  /* Reasons */

  #reasons .section-title {
    font-size: 115%;
    box-shadow: inset 0 3px 3px rgba(0, 0, 0, 0.04);
  }

  #reasons .section-title .label {
    margin: 0 5px 0 0;
    padding: 4px 0;
    width: 26px;
  }

  /* LOGIN AND SIGNUP FORM */
  .login td,
  .signup td,
  .res-table td{
    width: 100%;
  display: block;
  }
  .res-table { width: 100%; }

    .events-service li { display: block; text-align: left; }

    .ui-autocomplete { width: 168px !important; }

  #terms {
    width: auto;
        top: 0 !important;
    left: 0 !important;
  }
  #terms span.button.b-close {
    top: 0;
    right: 0;
  }
}

@media only screen and (-moz-min-device-pixel-ratio: 1.5), only screen and (-o-min-device-pixel-ratio: 3/2), only screen and (-webkit-min-device-pixel-ratio: 1.5), only screen and (min-devicepixel-ratio: 1.5), only screen and (min-resolution: 1.5dppx) {

  .icon,
  #fixednav .search-icon,
  #fixednav .formCustomSubmit,
  #topbar-search .search-icon,
  #topbar-search .formCustomSubmit,
  #footer .search-footer .formCustomSubmit {
    background-image: url(/media/layout/img/sprite-icons2x.png) !important;
    background-size: 256px 128px;
  }

  .icon.anchor-arrow {
    background-image: url(/media/layout/img/icon-anchor-arrow2x.png) !important;
    background-size: 40px 36px;
  }

}
