/*
Theme Name: Hammas Hohde 2023
Author: N2 / Jam Jam Brand Agency Oy / Mikko Hopia Oy
Author URI: https://n2.fi/
Description: Hammas Hohde sivupohja
Version: 4.0
*/

/* CSS variables */

:root {
	--brown: #493f3e;
	--dark-gray: #3c3c3c;
	--green: #86bc25;
	--light-gray: #f5f5f5;
}

/* Reset */

html, body, div, h1, h2, h3, h4, h5, h6, ul, ol, dl, li, dt, dd, p, blockquote, pre, form, fieldset, table, th, td { margin: 0; padding: 0; }

img { border: 0; }
    
ol, ul, dl { list-style: none; }

/*
font-family: 'Montserrat', sans-serif; 300, 400, 600, 800
font-family: 'Montserrat', sans-serif; 200, 300, 400, 700
*/

/* HTML5 */

article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, mark, time {  
	display:block;
}

/* Body */

body {
	color: #151515;
	font-family: 'Montserrat', sans-serif;
	font-size: 1rem;
	font-weight: 300;
}

body.page-hinnasto,
body.page-hinnasto-2022 {
	background-color: #f9f9f9;
}

/* Header */

div.mobile-header {
	background: #87bc24;
	display: none;
	font-family: 'Montserrat', sans-serif;
	font-size: 0.9rem;
	height: 100px;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

div.mobile-header li {
	display: inline-block;
	text-align: center;
	text-transform: uppercase;
	/*width: 33.33%;*/
  width: 50%;
}

div.mobile-header li.mh-paiv {
	background: url(img/hohde_paivystysnappi_blanco.jpg) center center no-repeat;
	background-size: contain;
}

div.mobile-header li.mh-ajan {
	background: url(img/hohde_ajanvarausnappi_blanco.jpg) center center no-repeat;
	background-size: contain;
}

div.mobile-header li.mh-jata {
	background: url(img/hohde_soittopyyntonappi_blanco.jpg) center center no-repeat;
	background-size: contain;
  display: none;
}

div.mobile-header li a {
	box-sizing: border-box;
	color: #fff;
	border-right: 1px solid #fff;
	display: block;
	line-height: 1;
	min-height: 100px;
	/*padding-top: 4.3rem;*/
	position: relative;
	text-decoration: none;
}

div.mobile-header li a span {
	bottom: 4px;
	left: 0;
	position: absolute;
	width: 100%;
}

div.mobile-header li.mh-paiv a span,
div.mobile-header li.mh-ajan a span { bottom: 10px; }

div.mobile-header li:last-child a {
	border-right: none;
}

.only-mobile {
	display: none;
}

header {
	background: #fff;
	box-shadow: 0px 0px 8px 2px rgba(0, 0, 0, 0.05);
	height: 116px;
	position: relative;
	transition: all 0.4s ease;
	z-index: 4;
}

header h1,
header p.site-title {
	margin: 0;
	padding: 0;
}

header h1 a,
header p.site-title a {
	background: url(img/hohde_logo_322x90px-2.png) no-repeat;
	background-size: contain;
	display: block;
	height: 44px;
	left: 0;
	overflow: hidden;
	position: absolute;
	text-indent: -9999px;
	top: 44px;
	width: 161px;
	/*left: calc(50% - 80px);
	top: 10px;*/
}

header div.wrap {
	margin: 0 auto;
	max-width: 1200px;
	position: relative;
}

body.sticky-header {
	padding-top: 116px;
}

header.sticky {
  animation: sticky-header 0.3s normal forwards ease-in-out;
  animation-iteration-count: 1;
  background-color: #fff;
  left: 0;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 9;
}

header.no-border {
	box-shadow: none;
}

@keyframes sticky-header {
  from {
    top: -80px;
  }
  to {
    top: 0;
  }
}

/*header.sticky {
	background: #fff;
	box-shadow: 0px 0px 8px 2px rgba(0, 0, 0, 0.1);
	left: 0;
	position: fixed;
	top: -15px;
	width: 100%;
	z-index: 5;
}

header.sticky.no-border {
	box-shadow: none;
}*/

/*div.parallax-mirror {
	padding-top: -116px;
}*/

/* Links, texts */

a {
	color: #151515;
	font-weight: 700;
	transition-duration: 0.5s;
}

strong + a {
	color: #86BC25;
}

div.bg-green a { color: #fff; }

a:hover {
	text-decoration: none;
}

a.btn {
	border: 1px solid #86BC25;
	color: #86BC25;
	display: inline-block;
	font-weight: 600;
	padding: 10px 25px;
	text-decoration: none;
	text-transform: uppercase;
}

div.bg-green a.btn {
	border: 1px solid #fff;
	display: inline-block;
	padding: 10px 40px;
	text-align: center;
	text-decoration: none;
	text-transform: uppercase;
}

a.btn.green {
	background-color: #86BC25;
	color: #fff;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

a.btn.white {
	background-color: #fff;
	color: #86BC25;
}

a.btn:hover {
	opacity: 0.8;
}

div.col-3 a.btn {
	box-sizing: border-box;
	display: block;
	padding: 15px 30px;
	text-align: center;
	width: 80%;
}

div.col-3 img {
	display: block;
	height: auto;
	max-width: 80%;
}

p {
	line-height: 1.5;
	margin-bottom: 1.25em; /* 20 / 16 */
}

ul,
ol {
	line-height: 1.5;
	margin-bottom: 1.25em;
}

div.wrap ol {
  counter-reset: list-counter; /* Alustetaan laskuri */
}

div.wrap ol li {
	counter-increment: list-counter;
	margin-bottom: 5px;
	padding-left: 30px;
	position: relative;
}

div.wrap ol li:last-child {
	margin-bottom: 0;
}

div.wrap ol li::before {
	background-color: #86BC25;
	border-radius: 50%;
	color: #fff;
	content: counter(list-counter);
	display: block;
	font-size: 0.8rem;
	font-weight: 700;
	height: 20px;
	left: 0;
	line-height: 20px;
	position: absolute;
	text-align: center;
	top: 0;
	width: 20px;
}

p.ingressi {
	font-size: 1.5rem;
}

p.iso {
	font-size: 2.2rem;
}

p:last-child,
ul:last-child,
ol:last-child { 
	margin-bottom: 0; 
}

h1 {
	font-family: 'Montserrat', sans-serif;
	font-size: 2.6rem; 
	font-weight: 700;
	margin-bottom: 20px;
}

h1:last-child { margin-bottom: 0; }

h1.center { text-align: center; }
h1.border { border-bottom: 2px #86BC25 solid; padding-bottom: 0.8rem; }
h1.black, div.bg-white h1.black { color: #151515; }

h1.bigger {
	color: #151515 !important;
	font-size: 4rem;
	font-weight: 200;
	text-transform: none;
}

h2 {
	font-family: 'Montserrat', sans-serif;
	/* font-size: 2.6rem; */
	font-size: 1.6rem;
	font-weight: 700;
	margin-bottom: 20px;
}

h2.paksu {
	border-bottom: 1px solid #fff;
	font-weight: 700;
	padding-bottom: 10px;
}

h2.green-line {
	border-bottom: 1px solid #86BC25;
	color: #86BC25;
	font-weight: 700;
	padding-bottom: 15px;
	text-transform: uppercase;
}

h3 {
	/* color: #616161; */
	color: #151515;
	font-family: 'Montserrat', sans-serif;
	font-size: 1rem; /* 16 / 16 */
	font-weight: 600;
	line-height: 1.4;
	margin-bottom: 0.9735em; /* 25 / 16 */
	/* text-transform: uppercase; */
}

div.col-3 h2 {
	margin-bottom: 10px;
	padding-top: 0 !important;
}

div.bg-hallinto div.col-3 img {
	border-bottom: 1px solid #86BC25;
}

h4 {
	color: #616161;
	font-family: 'Montserrat', sans-serif;
	font-size: 1rem; /* 16 / 16 */
	font-weight: 400;
	margin-bottom: 0.9735em; /* 25 / 16 */
	margin-top: 1rem;
	text-transform: uppercase;
}

p + h1 {
	padding-top: 1.875rem; /* 30 / 16 */
}

p + h2 {
	padding-top: 1.875rem; /* 30 / 16 */
}

p + h3 {
	padding-top: 1.875rem; /* 30 / 16 */
}

ol + h2,
ol + h3 {
	padding-top: 1.875rem; /* 30 / 16 */
}

div.bg-green h3 { color: #fff; }

div.bg-white h1 { color: #86BC25; }
div.bg-white h1.dark { color: #151515; }

/* Layout divs */

div.content {
	min-height: calc(100vh - 306px);
}

div.wrap {
	margin: 0 auto;
	max-width: 1155px;
	position: relative;
	z-index: 1;
}

/*div.wrap.narrow-row { max-width: 700px; }*/
div.wrap.wide-row { max-width: 100%; }
div.wrap.row, div.row { margin-bottom: 4rem; }
div.wrap.row.narrow-row { margin-bottom: 0; }
div.wrap.narrow-row.staff-wrap { max-width: 700px; }

div.wrap.top-icon {
	margin-top: -180px;
}

div.center { text-align: center; }

div.center div.left-align { text-align: left; }

div.center div.left-align.top-icon > img:first-child { display: block; margin: 0 auto 1.25em auto; }

div.bg-white {
	background: #fff;
	color: #151515;
	padding: 50px 0;
}

div.bg-lightgreen {
	background-color: #f9f9f9;
}

div.bg-white.no-pad { padding: 0; }
div.bg-white.no-pad div.col-2-2 { padding-top: 50px; padding-bottom: 50px; }

div.bg-white.no-bottom-margin {
	padding-bottom: 0;
}

div.bg-white.no-bottom-top-margin {
	padding-bottom: 0;
	padding-top: 0;
}

div.bg-white.no-bottom-margin div.row,
div.bg-white.no-bottom-top-margin div.row {
	margin-bottom: 0;
}

div.bg-green {
	background: #86BC25;
	color: #fff;
	font-weight: 400;
	padding: 50px 0;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

div.bg-gray {
	/*background: #313131;
	color: #fff;*/
	background-color: rgb(237, 237, 237);
	padding: 50px 0;
	/*-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;*/
}

div.bg-gray .col-1 {
	padding: 0;
}

div.bg-image {
	min-height: 550px;
	position: relative;
}

div.bg-image.home-video {
	min-height: calc(100vh - 116px);
}

div.service {
	margin-bottom: 40px;
}

div.service h1 {
	font-size: 1.375rem;
	margin-bottom: 0.5rem; /* 8 / 16 */
	text-transform: uppercase;
}

div.service a {
	font-weight: 300;
	text-decoration: none;
}

p.read-more {
	font-weight: 700;
	text-decoration: underline;
}

div.service-img {
	box-sizing: border-box;
	float: left;
	padding-right: 20px;
	width: 20%;
}

div.col-1 div.service-img {
	width: 10%;
}

div.service-img img {
	height: auto;
	max-width: 100%;
}

div.service-txt {
	float: left;
	padding-top: 1rem;
	width: 80%;
}

div.col-1 {
	box-sizing: border-box;
	padding: 50px 0;
}

div.nauha.bg-green {
	padding: 0;
}

div.nauha.bg-green a {
	font-weight: normal;
	text-decoration: none;
}

div.kaksi_palstaa {
	border-top: 1px solid #86BC25;
	margin-top: 50px;
	padding-top: 50px;
}

div.kaksi_palstaa_vasen {
	float: left;
	width: 60%;
}

div.kaksi_palstaa_oikea {
	float: left;
	width: 40%;
}

div.kaksi_palstaa_oikea img {
	display: block;
	float: right;
	height: auto;
	width: 300px; 
}

div.viiva-valissa .col-1 {
	padding-bottom: 0;
}

div.col-2 {
	box-sizing: border-box;
	float: left;
	padding-right: 20px;
	width: 50%;
}

div.col-2:nth-child(2) {
	padding-left: 20px;
	padding-right: 0;
}

div.wrap.wide-row div.col-2:nth-child(2) {
	padding: 0 100px;
}

div.wrap.center-and-border div.row,
div.wrap.center-only div.row,
div.wrap.center-gray-attached div.row {
	align-items: center;
	display: flex;
	position: relative;
}

div.wrap.center-and-border div.col-2:nth-child(2):before {
	background-color: #86BC25;
	content: '';
	height: 1px;
	position: absolute;
	right: 0;
	top: 0;
	width: 50%;
}

div.wrap.center-and-border div.col-2:nth-child(1),
div.wrap.center-only div.col-2:nth-child(1),
div.wrap.center-gray-attached div.col-2:nth-child(1) {
	padding-right: 0;
}

div.wrap.center-and-border div.col-2:nth-child(1) img,
div.wrap.center-only div.col-2:nth-child(1) img,
div.wrap.center-gray-attached div.col-2:nth-child(1) img {
	display: block;
}

div.col-2-1 {
	box-sizing: border-box;
	float: left;
	padding-right: 20px;
	width: 33.33%;
}

div.col-2-2 {
	box-sizing: border-box;
	float: left;
	padding-right: 20px;
	width: 66.66%;
}

div.gallery div.col-2-1,
div.gallery div.col-2-2,
div.gallery div.col-2 {
	margin-bottom: 20px;
	text-align: left;
}

div.gallery div.col-2-1 { width: 40%; }
div.gallery div.col-2-2 { width: 60%; }

div.col-3 {
	box-sizing: border-box;
	float: left;
	padding-right: 20px;
	width: 33.33%;
}

div.col-3-full {
	box-sizing: border-box;
	float: left;
	width: 33.33%;
}

div.col-5 {
	box-sizing: border-box;
	float: left;
	padding-right: 0;
	width: 20%;
}

div.clear {
	clear: both;
	height: 0;
}

div.city {
	box-sizing: border-box;
	display: inline-block;
	padding: 0 20px;
	margin-bottom: 30px;
	text-align: center;
	width: 33%;
}

/* Main menu */

ul.main-navi {
	font-family: 'Montserrat', sans-serif;
	position: absolute;
	text-transform: uppercase;
	top: 50px;
	z-index: 4;
}

ul.main-navi li {
	display: inline-block;
	padding: 0 8px 47px 8px;
	position: relative;
	z-index: 3;
}

ul.main-navi li.lang-item.current-lang {
	display: none;
}

ul.main-navi li.lang-item a {
	color: #86BC25;
	margin-left: 5px;
}

ul.main-navi li.lang-item a:hover {
	border: none;
}

ul.main-navi li.lang-item-en a {
	background-image: url(img/gb.svg);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
	display: block;
	/*overflow: hidden;*/
	text-indent: -9999px;
	width: 20px;
}

ul.main-navi li.lang-item-fi a {
	background-image: url(img/fi.svg);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
	display: block;
	/*overflow: hidden;*/
	text-indent: -9999px;
	width: 20px;
}

ul.main-navi li.omahohde {
	background-image: url(img/omahohde-icon.png);
	background-position: left top;
	background-repeat: no-repeat;
	background-size: 20px;
	margin-left: 15px;
	padding-left: 28px;
}

ul.main-navi li.ajanvaraus a {
	background-color: #86BC25;
	color: #fff;
	font-weight: 600;
	padding: 8px 16px;
	transition-duration: 0.5s;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

ul.main-navi li.ajanvaraus a:hover {
	background-color: rgba(146, 185, 68, 0.85);
	border: none;
}

ul.main-navi a {
	/*color: #131313;*/
	color: #151515;
	font-weight: 500;
	padding-bottom: 2px;
	text-decoration: none;
	transition-duration: 0s;
}

ul.main-navi ul li.subitem-margin {
	margin-bottom: 20px;
}

ul.main-navi ul li.subitem a {
	color: #555;
	font-size: 0.8rem;
	text-transform: none;
}

ul.main-navi a:hover, ul.main-navi li.current-menu-item > a, 
ul.main-navi li.current-menu-ancestor > a {
	border-bottom: 2px #86BC25 solid;
}

ul.main-navi li.current-menu-item.ajanvaraus a {
	border-bottom: none !important;
}

ul.main-navi li.subitem.current-menu-item > a, ul.main-navi li.subitem.current-menu-ancestor > a {
	border-bottom: none;
}

ul.main-navi li.subitem.current-menu-item > a:hover, ul.main-navi li.subitem.current-menu-ancestor > a:hover {
	border-bottom: 2px #86BC25 solid;
}

ul.main-navi ul {
	background: #fff;
	box-shadow: -5px 5px 5px rgba(0, 0, 0, 0.03), 5px 5px 5px rgba(0, 0, 0, 0.03);
	display: none;
	left: -20px;
	min-width: 200px;
	padding: 20px 20px 10px 20px;
	position: absolute;
	top: 66px;
	z-index: 4;
}

ul.main-navi ul li {
	display: block;
	margin-bottom: 10px;
	padding-bottom: 2px;
}

ul.main-navi-left {
	left: 250px;
	top: 50px;
}

ul.main-navi-right {
	left: 1012px;
}

a.menu-btn {
	background: url(img/valikko3.png) no-repeat;
	background-size: 50px 57px;
	display: block;
	/*eight: 114px;
	left: calc(50% - 50px);
	left: calc(50% - 25px);*/
	overflow: hidden;
	position: absolute;
	right: 0;
	/*text-indent: -9999px;*/
	top: 35px;
	/*width: 100px;*/
	height: 57px;
	width: 50px;
}

a.menu-btn.open-btn {
	background: url(img/valikko2.png) no-repeat;
	background-size: 50px 57px;
}

a.menu-btn.open-btn #nav-icon span {
	display: block;
}

span.info {
	border: 2px #86BC25 solid;
	color: #86BC25;
	display: inline-block;
	font-family: 'Montserrat', sans-serif;
	font-size: 1.5rem;
	font-weight: 600;
	padding: 10px 40px;
	text-decoration: none;
	text-transform: uppercase;
}

span.info a {
	color: #86BC25;
}

button.hamburger {
  background: none;
  border: 0;
  cursor: pointer;
  display: block;
  height: 24px;
  margin: 0;
  outline: none;
  padding: 0;
  position: absolute;
  right: 0;
  top: 47px;
  width: 26px;
  z-index: 5;
}

#nav-icon span {
  display: block;
  position: absolute;
  height: 4px;
  width: 26px;
  background: #86BC25;
  opacity: 1;
  left: 0;
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
  -webkit-transition: .25s ease-in-out;
  -moz-transition: .25s ease-in-out;
  -o-transition: .25s ease-in-out;
  transition: .25s ease-in-out;
  width: 100%;
}

#nav-icon span:nth-child(1) {
	border-top-left-radius: 10px;
	border-top-right-radius: 10px;
  top: 0;
  -webkit-transform-origin: left center;
  -moz-transform-origin: left center;
  -o-transform-origin: left center;
  transform-origin: left center;
}

#nav-icon span:nth-child(2) {
  top: 10px;
  -webkit-transform-origin: left center;
  -moz-transform-origin: left center;
  -o-transform-origin: left center;
  transform-origin: left center;
}

#nav-icon span:nth-child(3) {
	border-bottom-left-radius: 10px;
	border-bottom-right-radius: 10px;
  top: 20px;
  -webkit-transform-origin: left center;
  -moz-transform-origin: left center;
  -o-transform-origin: left center;
  transform-origin: left center;
}

#nav-icon.open span:nth-child(1) {
	border-top-left-radius: 0;
	border-top-right-radius: 0;
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 1;
  left: 0;
  width: 26px;
}

#nav-icon.open span:nth-child(2) {
  width: 0%;
  opacity: 0;
}

#nav-icon.open span:nth-child(3) {
	border-bottom-left-radius: 0;
	border-bottom-right-radius: 0;
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg);
  top: 18px;
  left: 0;
  width: 26px;
}

/* Hidden navi */

ul.hidden-navi {
	background: rgba(255, 255, 255, 0.99);
	box-shadow: 0px 0px 8px 2px rgba(0, 0, 0, 0.05);
	display: none;
	left: 0;
	margin: 0 auto;
	padding: 50px 0;
	position: absolute;
	text-align: left;
	text-transform: uppercase;
	top: 116px;
	width: 100%;
	z-index: 3;
}

body.admin-bar ul.hidden-navi { top: 148px; /* +32 */ }

ul.hidden-navi li {
	display: block;
	margin: 0 auto 5px auto;
	max-width: 200px;
	padding: 10px 0;
}


ul.hidden-navi ul li {
	padding: 0;
}

ul.hidden-navi a {
	font-weight: 400;
	text-decoration: none;
	transition-duration: 0s;
}

ul.hidden-navi a:hover {
	border-bottom: 2px #86BC25 solid;
}

/* Hidden Contact Us */

div.hidden-contact-us {
	background: #e6e6e6;
	display: none;
	left: 0;
	padding: 50px 0;
	position: absolute;
	top: 116px;
	width: 100%;
	z-index: 3;
}

body.admin-bar div.hidden-contact-us { top: 148px; /* +32 */ }

div.contact-us-col-1 {
	box-sizing: border-box;
	color: #86BC25;
	font-weight: 600;
	float: left;
	padding-right: 20px;
	width: 18%;
}

div.contact-us-col-2 {
	float: left;
	width: 40%;
}

div.contact-us-col-2-v2 {
	float: left;
	width: 80%;
}

div.contact-us-col-3 {
	float: left;
	width: 40%;
}

a.close-contact-us {
	background: #fff;
	border-radius: 20px;
	color: #151515;
	font-size: 1.5rem;
	font-weight: normal;
	height: 30px;
	line-height: 1.5rem;
	position: absolute;
	right: 20px;
	text-align: center;
	text-decoration: none;
	top: -20px;
	width: 30px;
}

a.close-contact-us:hover {
	color: #86BC25;
}

/* Big image */

div.bg-image-text {
	display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
	display: flex;
	height: 550px;
  justify-content: center;
	margin: 0 auto;
	max-width: 500px;
	position: relative;
	text-shadow: 0 0 1rem rgba(0, 0, 0, 0.5);
	text-align: center;
	z-index: 2;
}

div.bg-image.home-video div.bg-image-text {
	height: calc(100vh - 116px);
}

div.bg-image-text.normal { 
	max-width: 750px;
	text-shadow: none; 
}

div.bg-image-text.normal.left { 
	max-width: 650px;
	text-align: left; 
}

div.bg-image-text-content {
	align-self: center;
}

div.bg-image-text h1 {
	font-size: 2.8rem;
	font-weight: 400;
	margin-bottom: 10px;
}

div.bg-image-text.normal h1 {
	font-size: 1.375rem;
	font-weight: 400;
}

div.bg-image-text.light, div.bg-image-text.light h1, div.bg-image-text.light a { 
	color: #fff; 
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

div.bg-image-text.bg-light h1 {
	font-size: 1.375rem;
	font-weight: 400;
}

div.bg-image-text.light a {
	margin: 0 0.5rem;
}

div.bg-image-text.bg-light {
	max-width: 700px;
}

div.bg-image-text.bg-light div.bg-image-text-content {
	background: rgba(255, 255, 255, 0.7);
	box-sizing: border-box;
	padding: 40px;
	color: #151515;
	text-shadow: none;
}

div.bg-image-text.bg-light div.bg-image-text-content h1, div.bg-image-text.bg-light div.bg-image-text-content a {
	color: #151515;
}

/* Slideshow */

div.prev-bg, div.current-bg {
	background-size: cover;
	background-repeat: no-repeat;
	left: 0;
	min-height: 550px;
	position: absolute;
	top: 0;
	width: 100%;
	z-index: 1;
}

div.prev-bg { z-index: 2; }

div.slides { display: none; }

div.slideshow-navi {
	bottom: 20px;
	position: absolute;
	text-align: center;
	width: 100%;
	z-index: 3;
}

div.slideshow-navi a {
  background: #313131;
  border-radius: 20px;
  display: inline-block;
  height: 20px;
  margin-right: 10px;
  opacity: 0.3;
  text-indent: -9999px;
  width: 20px;
}

div.slideshow-navi a.current, div.slideshow-navi a:hover { opacity: 1; }

a.slideshow-next, a.slideshow-prev {
	display: block;
	height: 113px;
	opacity: 0.5;
	overflow: hidden;
	position: absolute;
	text-indent: -9999px;
	top: 218px;
	width: 100px;
	z-index: 2;
}

a.slideshow-next:hover, a.slideshow-prev:hover { opacity: 1; }

a.slideshow-next {
	background: url(img/nuoli_valkea_oikealle.png) no-repeat;
	right: 50px;
}

a.slideshow-prev {
	background: url(img/nuoli_valkea_vasemmalle.png) no-repeat;
	left: 50px;
}

/* News */

div.news-group-mask {
	left: 0;
	min-height: 550px;
	overflow: hidden;
	position: absolute;
	top: 70px;
	width: 1000px;
}

div.news-group {
	left: 0;
	position: absolute;
	top: 0;
	width: 9999px;
	z-index: 1;
}

div.news-group div.col-3 {
	max-width: 340px;
}

div.news {
	position: relative;
	min-height: 570px;
}

div.news div.wrap {
	padding: 80px 0 0 0;
}

div.news div.wrap > h2 {
	margin-bottom: 60px;
}

div.news h1 {
	margin-bottom: 3rem;
}

a.news-box {
	font-weight: normal;
	text-decoration: none;
	text-align: left;
}

div.news-img {
	height: 315px;
	margin-bottom: 1.4rem;
}

a.news-box h3 {
	font-weight: 800;
	/*min-height: 66px;*/
}

span.news-excerpt,
div.news-excerpt {
	display: inline-block;
	line-height: 1.4;
	margin-bottom: 0;
	min-height: 72px;
}

div.col-3-news {
	position: relative;
}

p.date {
	color: #ccc;
	font-size: 0.8rem;
}

a.news-next, 
a.news-prev {
	display: block;
	height: 113px;
	opacity: 0.5;
	overflow: hidden;
	position: absolute;
	text-indent: -9999px;
	top: 218px;
	width: 100px;
	z-index: 2;
}

a.news-prev { display: none; }

a.news-next:hover, 
a.news-prev:hover { opacity: 1; }

a.news-next {
	background: url(img/nuoli_harmaa_oikealle.png) no-repeat;
	right: 50px;
}

a.news-prev {
	background: url(img/nuoli_harmaa_vasemmalle.png) no-repeat;
	left: 50px;
}

img.news-icon {
	bottom: 0;
	position: absolute;
	right: 20px;
}

p.some-text {
	min-height: 80px;
}

/* Images */

img.wrap-top-icon {
	margin-bottom: 1.25em; /* 20 / 16 */
}

div.narrow-row div.col-2 img {
	display: block;
	margin: 0 auto;
}

div.col-2-1 img {
	height: auto;
	max-width: 100%;
}

div.col-2-2 img,
div.col-2 img {
	height: auto;
	max-width: 100%;
}

img.img-right-bottom {
	padding-top: 110px; 
	display: block; 
	width: 100%; 
}

div.gallery div.col-2-1 img,
div.gallery div.col-2-2 img {
	display: block;
	height: auto;
	margin: 0;
	max-width: none;
	width: 100%;
}

div.gallery-img {
	min-height: 470px;
}

div.col-2 div.gallery-img {
	display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
	display: flex;
  justify-content: center;
	min-height: 320px;
	text-align: center;
}

div.col-2-1 div.gallery-img,
div.col-2-2 div.gallery-img {
	display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
	display: flex;
  justify-content: center;
	text-align: center;
}

div.col-2-2-themap div.gallery-img { 
	display: block;
}

div.gallery-text {
	align-self: center;
}

div.gallery.contact div.gallery-img {
	min-height: 320px;
}

div.col-2-2-themap iframe {
	height: 320px;
	width: 100%;
}

/* Article */

article {
	border-top: 2px #86BC25 solid;
	padding: 3rem 0;
}

body.single-post article, body.single-henkilokunta article { border-top: none; }

body.single-post div.wrap.narrow-row { min-height: calc(100vh - 450px); }

/* div.bg-white article h1 {
  color: #616161;
  font-size: 1.375rem;
  font-weight: 800;
  line-height: 1.4;
  margin-bottom: 0.9735em;
  text-align: center;
} */

div.bg-white article h1 {
	text-align: center;
}

div.bg-white article h1 a {
	color: #000;
	font-weight: 300;
	text-decoration: none;
}

article p.date {
	text-align: center;
}

article img {
	height: auto;
	max-width: 100%;
}

div.more {
	border-top: 2px solid #86BC25;
	padding: 20px 0;
}

div.more h2 {
	margin-bottom: 0;
}

div.more h2 a {
	color: #616161;
	text-decoration: none;
}

/* Map */

div#themap, div#themap-jkl {
	min-height: 320px;
}

/* Video */

div.home-video-slides {
	display: none;
}

div#video-viewport {
	display: none;
  position: absolute;
  top: 0;
  overflow: hidden;
  z-index: 1;
}

div.home-video div.bg-image-text {
	max-width: 700px;
}

div.home-video div.bg-image-text.light {
	color: #151515;
	text-shadow: none;
}

div.home-video div.bg-image-text-content h1 {
	/*color: #86BC25;*/
	color: #fff;
	font-size: 3.125rem; /* 50 / 16 */
	font-weight: 800;
	line-height: 1;
	text-transform: none;
	text-shadow: none;
}

div.home-video div.bg-image-text p {
	color: #fff;
	font-size: 1.6rem;
	margin-bottom: 40px;
}

div.home-video div.bg-image-text a {
	background: rgba(136, 153, 119, 0.5);
	border: 2px #86BC25 solid;
	color: #fff;
	font-family: 'Montserrat', sans-serif;
	font-size: 1.5rem;
	padding: 10px 40px;
	text-decoration: none;
	text-transform: uppercase;
}

div.home-video div.bg-image-text a:hover {
	background: #86BC25;
	color: #fff;
}

a.next-down {
	animation: bounce 5s infinite;
	background: url(img/alas.png) no-repeat;
	bottom: 40px;
	height: 114px;
	left: calc(50% - 50px);
	overflow: hidden;
	position: absolute;
	text-indent: -9999px;
	width: 100px;
	z-index: 2;
}

iframe.video {
	height: auto;
	margin-bottom: 0;
	min-height: 750px;
	width: 100%;
}

div.lightbox-video {
	background: #fff;
	box-sizing: border-box;
	height: 500px;
	left: 0;
	padding: 20px;
	position: absolute;
	top: 0;
	width: 854px;
	z-index: 11;
}

div.lightbox-video iframe.video {
	min-height: 458px;
}

div.lightbox-video div#container {
	box-sizing: border-box;
	height: 460px;
	z-index: 11;
}

div.bg-layer {
	background: rgba(0, 0, 0, 0.8);
	left: 0;
	height: 100vh;
	position: absolute;
	top: 0;
	width: 100%;
	z-index: 10;
}

a.lightbox-close {
	background: #fff;
	border-radius: 20px;
	color: #151515;
	font-size: 1.5rem;
	font-weight: normal;
	height: 30px;
	line-height: 1.5rem;
	position: absolute;
	right: -15px;
	text-align: center;
	text-decoration: none;
	top: -15px;
	width: 30px;
}

a.lightbox-close:hover {
	color: #86BC25;
}

/* Staff */

div.staff {
	border-bottom: 1px #86BC25 solid;
	padding: 5px 0 0 0;
	text-align: left;
}

h1 + div.staff {
	border-top: 1px #86BC25 solid;
}

div.staff + h1 {
	margin-top: 40px;
}

a.staff-title {
	display: block;
	font-weight: 300;
	/*line-height: 3.1875rem;*/
  line-height: 1.5;
	padding-bottom: 5px;
	text-decoration: none;
}

a.staff-title:hover {
	color: #86BC25;
}

a.staff-title:hover div.staff-arrow span {
	left: 20px;
}

a.staff-title div.staff-arrow.open span {
	left: 20px;
}

div.staff-thumb {
	float: left;
	width: 10%;
}

div.staff-thumb img {
	display: block;
}

div.staff-name {
  align-items: center;
  display: flex;
	float: left;
  height: 50px;
	width: calc(90% - 40px);
}

div.staff-arrow {
	box-sizing: border-box;
	float: left;
	height: 51px;
	position: relative;
	/*width: 10%;*/
  width: 40px;
	-webkit-transition: .25s ease-in-out;
  -moz-transition: .25s ease-in-out;
  -o-transition: .25s ease-in-out;
  transition: .25s ease-in-out;
}

div.no-descripiton div.staff-arrow {
	display: none;
}

div.no-descripiton > a {
	cursor: default;
}

div.no-descripiton > a:hover {
	color: #151515;
}

div.staff-arrow span {
	background: #86BC25;
	height: 2px;
	left: 10px;
	position: absolute;
	width: 20px;
	-webkit-transition: .25s ease-in-out;
  -moz-transition: .25s ease-in-out;
  -o-transition: .25s ease-in-out;
  transition: .25s ease-in-out;
}

div.staff-arrow span:nth-child(1) {
	top: 17px;
	-webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}

div.staff-arrow span:nth-child(2) {
	top: 31px;
	-webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

div.staff-arrow.open {
	-webkit-transform: rotate(90deg);
  -moz-transform: rotate(90deg);
  -o-transform: rotate(90deg);
  transform: rotate(90deg);
}

div.staff-info {
	display: none;
	padding: 0 0 20px 10%;
	position: relative;
}

div.staff-text {
	position: relative;
	width: 70%;	
	z-index: 2;
}

body.single-toimipaikka div.staff-text {
	min-height: 200px;
	/* min-height: 0; */
	width: 65%;
	/* width: 100%; */
}

div.staff-phone,
div.staff-email {
	float: left;
	position: relative;
	width: 50%;
	z-index: 2;
}

div.staff-phone {
	width: 50%;
}

img.staff-photo {
	bottom: 0;
	display: none;
	height: auto;
	/* margin-bottom: 19px; */
	right: 0;
	position: absolute;
	z-index: 1;
}

body.single-toimipaikka div.staff-info {
	padding-bottom: 0;
}

body.single-toimipaikka img.staff-photo {
	bottom: auto;
	display: block;
	position: relative;
	right: auto;
}

/* div.staff-photo {
	bottom: 40px;
	display: none;
	right: 0;
	position: absolute;
	width: 200px;
	z-index: 1;
} */

body.single-toimipaikka div.img-wrap {
	align-items: flex-end;
	display: flex;
	margin-top: -150px;
}

body.single-toimipaikka div.img-wrap > p {
	margin-bottom: 30px;
	/* min-height: 100px; */
	width: calc(100% - 238px);
}

body.single-toimipaikka div.staff-photo::before {
	background-image: url(img/kuutio.svg);
	background-position: bottom center;
	background-repeat: no-repeat;
	background-size: contain;
	bottom: 0;
	content: '';
	display: block;
	height: 300px;
	left: 10%;
	position: absolute;
	width: 80%;
	z-index: -1;
}

body.single-toimipaikka div.staff-photo::after {
	background-image: url(img/maski.svg);
	background-position: bottom center;
	background-repeat: no-repeat;
	background-size: contain;
	bottom: 0;
	content: '';
	display: block;
	height: 300px;
	left: -24px;
	position: absolute;
	width: 240px;
	z-index: 2;
}

div.vacation div.staff-arrow {
	display: none;
}

/* Accordion */

div.accordion {
	border-bottom: 1px #86BC25 solid;
	padding: 5px 0 0 0;
	text-align: left;
}

h1 + div.accordion {
	border-top: 1px #86BC25 solid;
}

div.accordion + h1 {
	margin-top: 40px;
}

a.accordion-title {
	display: block;
	font-weight: 300;
	line-height: 3.1875rem;
	padding-bottom: 5px;
	text-decoration: none;
}

a.accordion-title:hover {
	color: #86BC25;
}

a.accordion-title:hover div.staff-arrow span {
	left: 20px;
}

a.accordion-title div.staff-arrow.open span {
	left: 20px;
}

div.accordion-name {
	color: #616161;
	font-family: 'Montserrat', sans-serif;
	font-size: 1.2rem;
	font-weight: 700;
	float: left;
	text-transform: uppercase;
	width: calc(100% - 40px);
}

div.accordion-info {
	display: none;
	padding: 0 0 20px 0;
	position: relative;
}

div.accordion-search {
	margin-bottom: 40px;
	text-align: left;
}

div.accordion-with-title div.accordion-name h3 {
	margin-bottom: 0;
	line-height: 51px;
	text-transform: none;
}

div.accordion-with-title a.accordion-title {
	line-height: 1;
}

/* Päivystys */

div.location-img {
	min-height: 550px;
}

div.col-2-50 {
	float: left;
	min-height: 300px;
	position: relative;
	width: 50%;
}

div.location-text {
	background: rgba(255, 255, 255, 1);
	/*bottom: 0;*/
	box-sizing: border-box;
	/*left: 0;*/
	padding: 40px 20px;
	/*position: absolute;*/
	width: 100%;
}

div.location-text h1 {
	color: #86BC25;
}

/* Forms */

div.gform_wrapper input,
div.gform_wrapper textarea,
div.gform_wrapper select {
	appearance: none;
	background: #e6e6e6;
	border-radius: 0px;
	box-sizing: border-box;
	border: 0;
	font-family: 'Montserrat', sans-serif;
  font-size: 1rem;
  font-weight: 300;
  margin-bottom: 15px;
  padding: 5px 10px;
	width: 100%;
	-webkit-appearance: none;
  -webkit-border-radius: 0px;
}

ul.gfield_checkbox {
	margin-bottom: 15px;
}

div.gform_wrapper input[type=radio],
div.gform_wrapper input[type=checkbox] {
	appearance: none;
	background: #e6e6e6;
	border-radius: 0px;
	box-sizing: border-box;
	border: 1px solid black;
	font-family: Arial;
  margin-bottom: 15px;
  padding: 10px;
	width: auto;
	-webkit-appearance: radio;
  -webkit-border-radius: 0px;
}

div.gform_wrapper input[type=checkbox] {
	appearance: checkbox;
	-webkit-appearance: checkbox;
}

div.hidden-contact-us div.gform_wrapper input, 
div.hidden-contact-us div.gform_wrapper select,
div.hidden-contact-us div.gform_wrapper textarea {
	background: #fff;
	border: 1px #fff solid;
	box-sizing: content-box;
	font-family: 'Montserrat', sans-serif;
	font-size: 1rem;
	margin-bottom: 5px;
	padding: 10px;
	width: 80%;
}

div.hidden-contact-us div.gform_wrapper textarea {
	height: 50px;
}

div.gform_wrapper li.lahete-esitiedot textarea {
	height: 90px;
}

div.hidden-contact-us div.gform_wrapper select {
	appearance: none;
	border-radius: 0px;
	margin-right: 10px;
	-webkit-appearance: none;
	-webkit-border-radius: 0px;
}

div.hidden-contact-us div.gform_wrapper input[type=submit] {
	background: #86BC25;
	border: 1px #86BC25 solid;
	color: #fff;
	cursor: pointer;
	/*margin-top: 49px;*/
	transition-duration: 0.5s;
	width: auto;
}

div.hidden-contact-us div.gform_wrapper input[type=submit]:hover {
	background: #fff;
	border: 1px #fff solid;
	color: #86BC25;
}

li.gform_validation_container,
div.validation_message {
	display: none;
}

li.gfield_error input,
li.gfield_error select {
	border: 1px red solid;
}

div.validation_error {
	color: red;
}

div.gform_wrapper input[type=submit] {
	background: #86BC25;
	color: #fff;
	cursor: pointer;
	transition-duration: 0.5s;
	width: auto;
}

div.gform_wrapper input[type=submit]:hover {
	background: #e6e6e6;
	color: #86BC25;
}

div.hidden-contact-us div.gform_wrapper label {
	display: none; 
}

div.hidden-contact-us li {
	float: left;
	width: 33%;
}

img.gform_ajax_spinner {
	margin-left: 20px;
}

div.gform_wrapper fieldset {
	border: none;
}

div.gform_wrapper div.gchoice {
	border: 1px #86BC25 solid;
	line-height: 1.2;
	margin-bottom: 20px;
	padding: 10px;
	text-align: center;
}

div.gform_wrapper div.gchoice input {
	margin-bottom: 0 !important;
}

div.gform_wrapper button.gfield_choice_all_toggle {
	margin-bottom: 20px;
}

/* Tables */

div.content table {
	border-collapse: collapse;
	width: 100%;
}

div.content table td {
	padding: 2px;
	text-align: left;
  vertical-align: top;
}

/* Footer */

footer {
	background: #313131;
	color: #9e9e9e;
	font-size: 0.875rem; /* 14 / 16 */
	font-weight: 500;
	padding: 50px 0;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

footer a {
	color: #9e9e9e;
	font-weight: 500;
	text-decoration: none;
}

footer a:hover {
	color: #fff;
}

a.foo-some {
	background: url(img/some_napit.png) no-repeat;
	display: inline-block;
	height: 45px;
	margin-right: 8px;
	overflow: hidden;
	text-indent: -9999px;
	width: 45px;
}

a.foo-some.linkedin { background-position: -55px 0;  }
a.foo-some.instagram { background-position: -110px 0;  }
a.foo-some.youtube { background-position: -165px 0;  }
a.foo-some.vimeo { background: url(img/vimeo.png) no-repeat; }

footer div.col-5:nth-child(1) { width: 15%; }
footer div.col-5:nth-child(2) { width: 15%; }
footer div.col-5:nth-child(3) { width: 30%; }
footer div.col-5:nth-child(4) { width: 25%; }
footer div.col-5:nth-child(5) { width: 15%; }

footer input {
	background: #3a3b3b;
	box-sizing: border-box;
	color: #fff;
	font-size: 0.625rem; /* 10 / 16 */
	border: none;
	margin-bottom: 8px;
	max-width: 220px;
	padding: 4px 4px;
	width: 100%;
}

footer input[type=submit] {
	color: #5f5f5f;
	cursor: pointer;
	transition-duration: 0.5s;
	width: auto;
}

footer input[type=submit]:hover { color: #fff; }

footer input:focus{
  outline: none;
}

footer ::-webkit-input-placeholder {
   color: #5f5f5f;
}

a.anchor {
	clear: both;
  display: block;
  position: relative;
  top: -116px;
  visibility: hidden;
}

div.siirry-ajanvaraukseen div.col-1 {
	margin: 0 auto;
	max-width: 650px;
}

footer .alateksti {
	color: #fff;
}

/* Misc */

div.important { display: none; }

/* Animations */

@keyframes bounce{
	0%, 75%, 85%, 100% {
		bottom: 40px;
  }
	80% {
    bottom: 20px;
  }
	90% {
    bottom: 30px;
  }
}

/* Flow flow */

div.ff-loadmore-wrapper {
	display: none;
}

div.ff-stream {
	padding: 0;
}

article.ff-item {
  border-top: none;
  padding: 0;
}

div.ff-item-meta {
	display: none;
}

/* Hammaslääkäripäivät 2019 */

body.page-hammaslaakaripaivat2021 {
	font-family: 'Montserrat', sans-serif;
	font-size: 1rem;
	font-weight: 300;
}

body.page-hammaslaakaripaivat2021 li.gfield_html {
	padding-bottom: 20px;
}

body.page-hammaslaakaripaivat2021 div.gform_wrapper input, 
body.page-hammaslaakaripaivat2021 div.gform_wrapper textarea, 
body.page-hammaslaakaripaivat2021 div.gform_wrapper select,
body.page-qadental2023 div.gform_wrapper input, 
body.page-qadental2023 div.gform_wrapper textarea, 
body.page-qadental2023 div.gform_wrapper select,
body.page-tietotori div.gform_wrapper input, 
body.page-tietotori div.gform_wrapper textarea, 
body.page-tietotori div.gform_wrapper select,
body.page-arvonta div.gform_wrapper input, 
body.page-arvonta div.gform_wrapper textarea, 
body.page-arvonta div.gform_wrapper select {
	font-family: 'Montserrat', sans-serif;
	font-size: 1rem;
	font-weight: 300;
}

body.page-hammaslaakaripaivat2021 div.gform_wrapper,
body.page-qadental2023 div.gform_wrapper,
body.page-tietotori div.gform_wrapper,
body.page-arvonta div.gform_wrapper {
	margin-bottom: 40px;
	text-align: left;
}

body.page-hammaslaakaripaivat2021 div.wrap, 
body.page-hammaslaakaripaivat2021 div.wrap.narrow-row {
  max-width: 80%;
}

body.page-hammaslaakaripaivat2021 header,
body.page-hammaslaakaripaivat2021 footer {
	display: none;
}

body.page-hammaslaakaripaivat2021 div.content img {
	height: auto;
	max-width: 100%;
}

body.page-hammaslaakaripaivat2021 div.content img.kyselylogo {
	float: left;
	margin-bottom: 30px;
	max-width: 40%;
}

body.page-hammaslaakaripaivat2021 div.content img.kyselylogo-2 {
	float: right;
	margin-bottom: 30px;
	max-width: 40%;
}

body.page-hammaslaakaripaivat2021 p:last-child {
  margin-bottom: 1.25em;
}

body.page-hammaslaakaripaivat2021 div.gf_progressbar_wrapper,
body.page-qadental2023 div.gf_progressbar_wrapper,
body.page-tietotori div.gf_progressbar_wrapper,
body.page-arvonta div.gf_progressbar_wrapper {
	clear: both;
	text-align: center;
}

body.page-hammaslaakaripaivat2021 div.gf_progressbar,
body.page-qadental2023 div.gf_progressbar,
body.page-tietotori div.gf_progressbar,
body.page-arvonta div.gf_progressbar {
  border: 1px #86BC25 solid;
	margin-bottom: 40px;
}

body.page-hammaslaakaripaivat2021 div.gf_progressbar_percentage,
body.page-qadental2023 div.gf_progressbar_percentage,
body.page-tietotori div.gf_progressbar_percentage,
body.page-arvonta div.gf_progressbar_percentage {
	background: #86BC25;
	color: #fff;
}

body.page-hammaslaakaripaivat2021 div.gf_page_steps {
	display: none;
}

body.page-hammaslaakaripaivat2021 div.gf_page_steps > div {
	border: 1px #86BC25 solid;
	border-radius: 30px;
	display: block;
	float: left;
	height: 30px;
	margin: 0 5px;
	width: 30px;
}

body.page-hammaslaakaripaivat2021 div.gf_page_steps:after {
	content: "";
	display: table;
	clear: both;
}

body.page-hammaslaakaripaivat2021 input.gform_next_button,
body.page-hammaslaakaripaivat2021 input.gform_previous_button,
body.page-qadental2023 input.gform_next_button,
body.page-qadental2023 input.gform_previous_button,
body.page-tietotori input.gform_next_button,
body.page-tietotori input.gform_previous_button,
body.page-arvonta input.gform_next_button,
body.page-arvonta input.gform_previous_button {
	background: #86BC25;
  color: #fff;
  cursor: pointer;
  transition-duration: 0.5s;
  width: auto;
}

body.page-hammaslaakaripaivat2021 div.kysely-laatikko {
	border: 1px #86BC25 solid;
	font-size: 1.2rem;
	margin-bottom: 1.25em;
	padding: 10px;
	text-align: center;
}

body.page-hammaslaakaripaivat2021 div.gform_page_footer,
body.page-qadental2023 div.gform_page_footer,
body.page-tietotori div.gform_page_footer,
body.page-arvonta div.gform_page_footer {
	padding-top: 20px;
	text-align: center;
}

body.page-hammaslaakaripaivat2021 li.big-label > label,
body.page-arvonta li.big-label > label {
	display: block;
	font-size: 1.2rem;
	margin-bottom: 20px;
	text-align: center;
}

body.page-hammaslaakaripaivat2021 div.ginput_container_radio {
	margin-bottom: 20px;
}

body.page-hammaslaakaripaivat2021 ul.gfield_radio li,
body.page-hammaslaakaripaivat2021 li.big-label ul.gfield_checkbox li,
body.page-arvonta ul.gfield_radio li,
body.page-arvonta li.big-label ul.gfield_checkbox li {
	border: 1px #86BC25 solid;
	line-height: 1.2;
	margin-bottom: 20px;
	padding: 10px;
	text-align: center;
}

body.page-hammaslaakaripaivat2021 div.gform_wrapper input[type=radio], 
body.page-hammaslaakaripaivat2021 div.gform_wrapper input[type=checkbox],
body.page-arvonta div.gform_wrapper input[type=radio], 
body.page-arvonta div.gform_wrapper input[type=checkbox] {
	margin-bottom: 0;
}

body.page-hammaslaakaripaivat2021 div.gform_confirmation_wrapper,
body.page-arvonta div.gform_confirmation_wrapper {
	clear: both;
	font-size: 1.5rem;
	padding-bottom: 40px;
	padding-top: 40px;
}

/*body.page-hammaslaakaripaivat2021 {
	background: rgba(136, 153, 119, 0.5);
  border: 2px #86BC25 solid;
  color: #fff;
  font-family: 'Montserrat', sans-serif;
  font-size: 1.5rem;
  padding: 10px 40px;
  text-decoration: none;
  text-transform: uppercase;
}*/

/* Hammaslääkäripäivät 2019 END */

/* Koulutuskalenteri */

div#koulutuskalenteri a {
	font-weight: normal;
	text-decoration: none;
}

div#koulutuskalenteri a:hover {
	color: #86BC25;
}

span.selected-months {
	padding: 0 10px;
}

a.prev-month, 
a.next-month {
	display: inline-block;
	padding: 0 10px;
}

table.training {
	font-size: 0.875rem;
	text-align: left;
}

table.training tr {
	border-bottom: 1px solid #151515;
}

table.training tbody tr:last-child {
	border-bottom: none;
}

table.training th { 
	color: #86BC25;
	font-weight: 600;
	text-transform: uppercase;
}

div.content table.training td,
table.training th {
	border-right: 1px solid #151515;
	padding: 5px;
}

div.content table.training td:last-child,
table.training th:last-child {
	border-right: none;
}

table.training td {
	box-sizing: border-box;
	height: 200px;
	vertical-align: top;
	width: 14.28%;
}

table.training.training-season-2 td { 
	width: 20%;
}

div.training-item {
	margin-bottom: 20px;
}

div.training-item.training-item-holiday {
  background: #86BC25;
  color: #fff;
  padding: 5px;
}

div.training-item div.date {
	color: #86BC25;
	font-weight: 600;
}

div.training-item span.registered-ok {
	color: #86BC25;
	display: block;
	font-size: 12px;
	font-weight: 600;
}

div.training-item span.registered-not-ok {
	color: red;
	display: block;
	font-size: 12px;
	font-weight: 600;
}

div.training-item.training-item-holiday div.date {
  color: #fff;
}

div.training-item a {
	text-decoration: underline !important;
}

/* Koulutuskalenteri END */

/* Cookie alert */

div.cookie-alert {
  background: #86BC25;
  bottom: 0;
  box-sizing: border-box;
  color: #fff;
  display: none;
  /*left: 30px;
  max-width: 600px;*/
  padding: 30px 50px;
  position: fixed;
  text-align: left;
  /*text-align: center;
  width: calc(100% - 60px);*/
  width: 100%;
  z-index: 9;
}

div.cookie-alert div.page-2 {
  display: none;
}

div.cookie-alert p { 
  margin-bottom: 0;
  padding-right: 140px;
}

div.cookie-alert a {
  color: #fff;
}

div.cookie-alert a.btn {
  border: 1px solid #fff;
  bottom: 2px;
  display: block;
  margin: 0 auto 20px auto;
  padding: 10px 20px;
  position: absolute;
  right: 30px;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  width: 100px;
}

div.cookie-alert h2 {
  font-family: 'MetropolisBold';
  font-size: 20px;
  margin-bottom: 20px;
}

div#cookie-notice {
	padding: 40px 0;
	position: fixed;
  left: calc(50% - 200px);
  width: 400px;
  min-width: 400px;
  max-width: 400px;
  display: flex;
  align-items: center;
  top: 200px;
}

div.cookie-notice-hidden {
	display: none !important;
}

div#cookie-notice span#cn-notice-text {
  font-size: 1.2rem;
  line-height: 2;
  margin-bottom: 20px;
}

div#cookie-notice a.cn-set-cookie {
	background-color: #fff;
	color: #000;
}

a#cn-refuse-cookie {
	opacity: 0.5;
}

div#cookie-notice .cn-close-icon {
	display: none;
	top: 30px;
}

body.home img.mobile-avainlippu {
	display: none;
}

body.page-template-intra-tmpl div#cookie-notice,
body.intrauutinen-template-default div#cookie-notice {
	display: none !important;
}

div.omahohde-splash {
	display: none;
}

/* Kampanja 2021 */

body.kampanja-2021 header {
	display: none;
}

/* Top banner */

div.top-banner {
	background-color: #86BC25;
	color: #fff;
	font-weight: 500;
	padding: 10px;
	text-align: center;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

div.top-banner a {
	color: #fff;
	font-weight: 700;
}

/* Hero image */

img.hero-image {
	display: block;
	height: 100%;
	/*max-height: 475px;*/
	max-height: 650px;
	object-fit: cover;
	object-position: center center;
	width: 100%;
}

/* Seuraavat vapaat ajat */

div.seuraavat-vapaat-hoitoajat {
	display: flex;
	margin-top: -355px;
}

div.seuraavat-vapaat-hoitoajat div.col-2 {
	box-shadow: 0 0 20px rgba(0, 0, 0, 0.2);
}

div.seuraavat-vapaat-hoitoajat div.col-2:nth-child(1) {
	align-items: center;
	background-color: #86BC25;
	color: #fff;
	display: flex;
	margin-bottom: 0;
	margin-right: 10px;
	padding: 20px 50px;
	text-align: center;
	width: 425px;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

div.seuraavat-vapaat-hoitoajat div.col-2:nth-child(1) div.col-2-content {
	width: 100%;
}

div.seuraavat-vapaat-hoitoajat div.col-2:nth-child(1) h1 {
	border-bottom: 2px solid #bdd587;
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1.1;
	margin-bottom: 40px;
	padding-bottom: 20px;
	text-transform: uppercase;
}

div.seuraavat-vapaat-hoitoajat div.col-2:nth-child(1) h2 {
	font-size: 1.5rem;
	font-weight: 600;
	margin-bottom: 10px;
	text-transform: none;
}

div.seuraavat-vapaat-hoitoajat div.col-2:nth-child(1) p {
	font-size: 1.5rem;
	font-weight: 600;
}

div.seuraavat-vapaat-hoitoajat div.col-2:nth-child(1) a {
	color: #fff;
}

div.seuraavat-vapaat-hoitoajat div.col-2:nth-child(1) a.btn {
	background-color: #fff;
	color: #86BC25;
	font-weight: 700;
	margin-bottom: 20px;
	padding: 20px 70px;
}

div.seuraavat-vapaat-hoitoajat div.col-2:nth-child(2) {
	margin-left: 10px;
	padding-left: 0;
	padding-right: 0;
	width: calc(100% - 445px);
}

div.seuraavat-vapaat-hoitoajat div.col-2:nth-child(2) img {
	display: block;
	height: auto;
	max-width: 100%;
	width: 100%;
}

/* Palvelut */

div.wrap.palvelut {
	padding: 80px 0;
}

div.wrap.palvelut h2 {
	text-align: center;
}

div.wrap.palvelut div.service-item-wrap {
	display: grid;
	grid-gap: 60px 50px;
	grid-template-columns: 1fr 1fr 1fr;
	padding-top: 50px;
}

div.wrap.palvelut img.icon {
	display: block;
	height: 60px;
	margin-bottom: 10px;
	width: auto;
}

div.wrap.palvelut div.service-item-wrap h3 {
	color: #86BC25;
	font-size: 1.4rem;
	line-height: 1;
	margin-bottom: 20px;
}

/* Toimipaikat */

div.toimipaikat {
	background-color: #86BC25;
	color: #fff;
	font-weight: 400;
	padding: 80px 0;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

div.toimipaikat div.top-content {
	margin: 0 auto 80px auto;
	max-width: 600px;
	text-align: center;
}

div.toimipaikat h2,
div.toimipaikat h3,
div.toimipaikat h4 {
	color: #fff;
}

div.toimipaikat h3 {
	font-size: 1.3rem;
	font-weight: 700;
	margin-bottom: 40px;
	text-align: center;
}

div.toimipaikat h4 {
	font-size: 1.2rem;
	font-weight: 700;
	line-height: 1;
	margin-bottom: 5px;
	text-transform: none;
}

div.toimipaikat a.btn {
	background-color: #fff;
	color: #86BC25;
	font-size: 1rem;
	font-weight: 600;
	margin-top: 10px;
	padding: 10px 30px;
}

div.toimipaikat div.post-item-wrap {
	display: grid;
	font-size: 1.2rem;
	grid-gap: 20px 40px;
	grid-template-columns: 1fr 1fr 1fr;
}

div.toimipaikat div.post-item p {
	line-height: 1.2;
	margin-bottom: 5px;
}

div.toimipaikat div.post-item a {
	color: #fff;
}

div.toimipaikat-kartta {
	background-color: #F9F9F9;
	min-height: calc(100vh - 450px);
	padding: 80px 0;
}

div.toimipaikat-kartta div.valitse-paikkakunta {
	margin: 30px auto 80px auto;
	max-width: 280px;
}

div.toimipaikat-kartta div.valitse-paikkakunta p {
	margin-bottom: 5px;
}

div.toimipaikat-kartta div.valitse-paikkakunta select {
	border: 1px solid #E3E3E3;
	font-family: 'Montserrat', sans-serif;
  font-size: 1rem;
  font-weight: 300;
  padding: 5px;
	width: 100%;
}

div.toimipaikat-kartta div.toimipaikat-google-map {
	background-color: #fff;
	border: 2px solid #E3E3E3;
	height: 650px;
}

div.toimipaikka-info {
	margin-bottom: 80px;
	text-align: center;
}

div.toimipaikka-info h2,
div.staff-wrap h2 {
	color: #86BC25;
	font-size: 2rem;
	margin-bottom: 40px;
}

div.staff-wrap > h3 {
	border-bottom: 1px #86BC25 solid;
	font-size: 1.375rem;
	margin-bottom: 0;
	margin-top: 20px;
	padding-bottom: 0.9735em;
}

div.staff + h3 {
  margin-top: 40px;
}

div.toimipaikka-info h3 {
	color: #86BC25;
	margin-bottom: 0;
}

div.toimipaikka-galleria {
	display: grid;
	grid-gap: 20px 20px;
	grid-template-columns: 1fr 2fr;
	margin-top: 80px;
}

div.toimipaikka-galleria img {
	display: block;
	height: 385px;
	object-fit: cover;
	object-position: center center;
	width: 100%;
}

/* Puhelinnumerot */

div.puhelinnumerot {
	padding: 80px 0;
	text-align: center;
}

div.puhelinnumerot h2 {
	margin-bottom: 40px;
}

div.puhelinnumerot div.post-item-wrap {
	display: grid;
	grid-gap: 40px 20px;
	grid-template-columns: 1fr 1fr 1fr;
}

div.puhelinnumerot h4 {
	font-weight: 600;
	margin-bottom: 10px;
}

/* Ajanvaraus */

body.page-ajanvaraus div.bg-color-services {
	background-color: #F9F9F9;
}

div#omahohde-splash {
	background-color: #fff;
}

div#omahohde-splash div.loading {
	align-items: center;
	animation: loading-animation 2s normal forwards ease-in-out;
  animation-iteration-count: infinite;
	display: flex;
	font-weight: 700;
	height: 100%;
	justify-content: center;
	text-align: center;
}

@keyframes loading-animation {
  0% {
    opacity: 0.2;
  }
  50% {
    opacity: 1;
  }
  100% {
    opacity: 0.2;
  }
}

/* Blogilistaus, artikkelit ja suodattimet */

div.artikkelit-ja-suodattimet.ankkuri {
	padding-top: 140px;
}

article.post-item {
	align-items: center;
	border: none;
	display: flex;
	margin-bottom: 50px;
	padding: 0;
}

article.post-item div.img {
	width: 45%;
}

article.post-item div.img img {
	aspect-ratio: 3 / 2;
	display: block;
	object-fit: cover;
	object-position: center center;
	width: 100%;
}

article.post-item div.text {
	box-sizing: border-box;
	padding-left: 50px;
	width: 55%;
}

article.post-item h3 {
  color: #86BC25;
  font-size: 1.4rem;
  line-height: 1;
  margin-bottom: 20px;
}

article.post-item h3 a {
	color: #86BC25;
	text-decoration: none;
}

article.post-item p + h3 {
	padding-top: 0;
}

div.suodatus {
	margin-bottom: 50px;
}

div.suodatus p {
	text-align: center;
	text-transform: uppercase;
}

div.suodatus ul {
	display: flex;
	flex-wrap: wrap;
}

div.suodatus li {
	margin: 0 10px 10px 0;
}

div.suodatus li a {
	white-space: nowrap;
}

/*div.pagination {
	color: #86BC25;
	margin-bottom: 50px;
	text-align: center;
}

div.pagination a {
	font-weight: normal;
	text-decoration: none;
}*/

/* Appointment Hour Booking plugin */

form.cpp_form {
	margin:  0 auto;
	max-width: 600px;
	text-align: left;
}

form.cpp_form div.fieldCalendarService,
form.cpp_form div.fieldCalendar,
form.cpp_form div.slotsCalendar {
	margin-bottom: 20px;
}

form.cpp_form div.fields {
	margin-bottom: 10px;
}

form.cpp_form input,
form.cpp_form select {
	font-size: 1rem;
	padding: 5px;
}

form.cpp_form select {
	width: 50%;
}

form.cpp_form #fbuilder .slots {
	box-shadow: none;
}

form.cpp_form button.pbSubmit {
	background-color: #86BC25 !important;
	border: none;
	color: #fff !important;
	font-family: 'Montserrat', sans-serif;
  font-size: 1rem;
  font-weight: 300;
}

form.cpp_form .ui-datepicker-calendar .ui-state-active {
	background: #86BC25;
	box-shadow: none;
}

form.cpp_form .ui-datepicker-header {
	background: #86BC25;
	box-shadow: none;
	color: #fff;
	text-shadow: none;
}

/* END Appointment Hour Booking plugin */

/* Henkilökunta single */

body.single-henkilokunta div.staff-phone {
	float: none;
	margin-bottom: 20px;
	width: 100%;
}

body.single-henkilokunta div.staff-email {
	float: none;
	margin-bottom: 20px;
	width: 100%;
}

body.single-henkilokunta img.staff-photo {
	border-bottom: 1px solid #86BC25;
	bottom: auto;
	position: relative;
	top: auto;
	width: 350px;
}

body.single-henkilokunta div.staff-photo {
	height: auto;
	right: 0;
	position: absolute;
	top: 0;
	z-index: 1;
}

body.single-henkilokunta div.staff-photo a.btn {
	box-sizing: border-box;
	text-align: center;
	width: 100%;
}

body.single-henkilokunta h1 {
	margin-bottom: 0;
}

body.single-henkilokunta h1,
body.single-henkilokunta h2 {
	color: #86BC25;
	text-align: left;
}

body.single-henkilokunta .bg-green h1,
body.single-henkilokunta .bg-green h2 {
	color: #fff;
}

body.single-henkilokunta h3 {
	font-weight: 700;
	text-transform: none;
}

body.single-henkilokunta .box-list li {
	border: 1px solid #86BC25;
	display: inline-block;
	margin: 0 20px 20px 0;
	padding: 10px 20px;
}

body.single-henkilokunta .staff-text {
	min-height: 450px;
	width: 100%;
}

body.single-henkilokunta .staff-text p:last-child {
	margin-bottom: 0;
}

body.single-henkilokunta .staff-title-wrap {
	border-bottom: 1px solid #86BC25;
	margin-bottom: 30px;
	padding-right: 300px;
	/* padding-top: 100px; */
	padding-top: 150px;
	position: relative;
}

body.single-henkilokunta .staff-title-wrap img.staff-photo {
	border-bottom: none;
	bottom: 0;
	position: absolute;
	right: 20px;
	width: 250px;
}

body.single-henkilokunta ul + h3 {
	padding-top: 20px;
}

/* Hinnasto */

div.pricelist {
	margin-bottom: 50px;
}

div.pricelist .wrap {
	background-color: #fff;
}

div.pricelist .col-1 {
	padding: 20px;
}

div.pricelist div.price-row {
	border-bottom: 1px solid #dadada;
	display: flex;
}

div.pricelist div.price-row.no-border,
div.pricelist div.price-row:last-child {
	border-bottom: none;
}

div.pricelist .price-col {
	padding: 10px 10px 10px 0;
	width: calc(100% - 300px);
}

div.pricelist .price-col-2 {
	width: 150px;
}

div.pricelist .price-col-3 {
	width: 150px;
}

div.pricelist div.price-row-title {
	border-bottom: none;
	color: #86BC25;
	font-weight: 700;
	text-transform: uppercase;
}

div.pricelist div.price-row + div.price-row-title {
	padding-top: 30px;
}

div.pricelist div.kela-jalkeen {
	display: none;
}

/* Toimipaikat lista */

div.locations-list-wrap {
	max-width: 900px;
}

div.locations-list-wrap div.col-1 {
	padding-top: 10px;
}

div.locations-list-search {
	background-color: rgb(237, 237, 237);
	border-radius: 6px;
	padding: 25px 30px;
}

div.locations-list-search p {
	margin-bottom: 20px;
}

div.locations-list-search p strong {
	font-weight: 500;
}

div.locations-list-search input[type=text] {
	border: none;
	border-radius: 6px;
	box-sizing: border-box;
	font-family: 'Montserrat', sans-serif;
	font-size: 16px;
	margin-right: 30px;
	padding: 10px 10px 10px 40px;
	width: calc(100% - 150px);
	z-index: 1;
}

div.locations-list-search form {
	position: relative;
}

div.locations-list-search form::after {
	background-image: url(img/search_vector.png);
	background-position: top left;
	background-repeat: no-repeat;
	background-size: contain;
	content: '';
	display: block;
	height: 22px;
	left: 10px;
	position: absolute;
	top: 8px;
	width: 22px;
	z-index: 2;
}

div.locations-list-search button {
	background-color: #86BC25;
	border: none;
	border-radius: 6px;
	box-sizing: border-box;
	color: #fff;
	cursor: pointer;
	font-family: 'Montserrat', sans-serif;
	font-size: 16px;
	font-weight: 700;
	padding: 10px;
	text-transform: uppercase;
	width: 120px;
	-webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

div.locations-list-search button:hover {
	background-color: rgba(146, 185, 68, 0.85);
}

div.locations-list-map-link {
	padding: 20px 0;
	text-align: right;
}

div.locations-list-map-link a {
	background-image: url(img/Location_Vector_v2.png);
	background-position: center right;
	background-repeat: no-repeat;
	background-size: contain;
	color: #86BC25;
	display: inline-block;
	font-weight: 600;
	line-height: 40px;
	padding-right: 50px;
	text-decoration: none;
}

div.locations-list-map-link a:hover {
	text-decoration: underline;
}

div.locations-list-items {
	border-bottom: 2px solid #86BC25;
	/*display: none;*/
}

div.locations-list-items.visible {
	display: block;
}

a.locations-list-item,
div.locations-list-item {
	border-top: 2px solid #86BC25;
	color: #86BC25;
	/*display: none;*/
	display: block;
	font-weight: normal;
	padding: 20px 0 15px 0;
	position: relative;
	text-decoration: none;
}

a.locations-list-item.visible,
div.locations-list-item.visible {
	display: block;
}

a.locations-list-item h2,
div.locations-list-item h2 {
	font-size: 25px;
	margin-bottom: 20px; 
}

div.locations-list-item h2 a {
	color: #86BC25;
	text-decoration: none;
}

a.locations-list-item p,
div.locations-list-item p {
	color: #151515;
	margin-bottom: 10px; 
}

a.locations-list-item p.address,
a.locations-list-item p.phone,
a.locations-list-item p.open,
a.locations-list-item p.info,
div.locations-list-item p.address,
div.locations-list-item p.phone,
div.locations-list-item p.open,
div.locations-list-item p.info {
	background-position: center left;
	background-repeat: no-repeat;
	/* background-size: contain; */
	background-size: 14px;
	display: block;
	line-height: 25px;
	/* padding-left: 35px; */
	padding-left: 30px;
}

a.locations-list-item p.address,
div.locations-list-item p.address {
	background-image: url(img/Location_Vector.png);
}

a.locations-list-item p.phone,
div.locations-list-item p.phone {
	background-image: url(img/Phone_Vector.png);
	background-size: 18px;
}

a.locations-list-item p.open,
div.locations-list-item p.open {
	background-image: url(img/clock_vector.png);
	background-size: 20px;
}

a.locations-list-item p.info,
div.locations-list-item p.info {
	background-image: url(img/info_vector_v2.png);
	background-size: 20px;
}

a.locations-list-item::after,
div.locations-list-item::after {
	background-image: url(img/toimipiste_arrow.png);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
	height: 15px;
	content: '';
	display: block;
	position: absolute;
	right: 15px;
	top: 30px;
	transition-duration: 0.3s;
	width: 15px;
}

a.locations-list-item:hover::after,
div.locations-list-item:hover::after {
	right: 5px;
}

div.locations-list-item div.btn-wrap {
	bottom: 25px;
	max-width: 50%;
	position: absolute;
	right: 0;
}

div.locations-list-item div.btn-wrap a.btn {
	display: inline-block;
	margin: 0 0 10px 10px;
}

div.accordion a.locations-list-item::after, 
div.accordion div.locations-list-item::after {
	display: none;
}

div.pagination {
	color: #86BC25;
	margin-bottom: 50px;
	padding-top: 50px;
	text-align: center;
}

div.pagination a,
div.pagination > span {
	border: 1px solid #86BC25;
	border-radius: 50%;
	box-sizing: border-box;
	color: #86BC25;
	display: inline-block;
	height: 35px;
	font-family: 'Montserrat', sans-serif;
	font-size: 20px;
	font-weight: 700;
	line-height: 35px;
	margin: 0 2px;
	padding: 0;
	text-decoration: none;
	width: 35px;
}

div.pagination a:hover {
	background-color: #86BC25;
	color: #fff;
}

div.pagination > span.current {
	background-color: #86BC25;
	color: #fff;
}

div.pagination a.next span,
div.pagination a.prev span {
	display: block;
	transform: translateY(-2px);
}

/* Toimipaikat lista END */

div#ammattilaiset a.locations-list-item {
	display: none;
}

/* Media queries */

@media only screen and (max-width : 2000px) {
  img.hero-image {
		max-height: 475px;
	}
}

/* 2000 */

@media only screen and (max-width : 1080px) {
  div.seuraavat-vapaat-hoitoajat {
		display: block;
		margin-top: -50px;
		max-width: calc(100% - 50px);
	}

	div.seuraavat-vapaat-hoitoajat div.col-2:nth-child(1) {
		margin-bottom: 20px;
		padding: 40px;
		width: 100%;
	}

	div.seuraavat-vapaat-hoitoajat div.col-2:nth-child(2) {
		margin-left: 0;
		width: 100%;
	}

	div.seuraavat-vapaat-hoitoajat div.col-2:nth-child(2) img {
		height: 100%;
		object-fit: cover;
	}

	div.suodatus ul {
		display: block;
	}

	div.suodatus ul li {
		display: inline-block;
	}
}

/* 1080 */

@media only screen and (max-width : 1580px) {
  div.cookie-alert p a {
    display: block;
  }
}

/* 1580 */

@media only screen and (max-width : 1280px) {
	div.location-img {
		min-height: 350px;
	}
}

/* 1280 */

@media only screen and (max-width : 1220px) {
	header div.wrap {
		max-width: 96%;
	}

	ul.main-navi-left {
		left: 15%;
	}

	ul.main-navi-right {
		left: 65%;
	}

	a.news-next {
		right: 10px;
	}

	a.news-prev {
		left: 10px;
	}
}
/* 1220 */

@media only screen and (max-width : 1130px) {
	ul.main-navi-left {
		font-size: 0.9rem;
		left: 18%;
	}

	ul.main-navi li {
		padding: 0 8px;
	}

	/*a.news-next, a.news-prev { display: none; }*/
}
/* 1130 */

@media only screen and (max-width : 1020px) {
	div.wrap, div.wrap.narrow-row,
	div.wrap.narrow-row.staff-wrap {
		max-width: calc(100% - 50px);
	}

	div.news div.wrap {
		width: 720px;
	}

	div.news-group-mask {
		left: 0;
		min-height: 520px;
		top: 70px;
		width: 720px;
	}

	div.news-group div.col-3 {
		max-width: 240px;
	}

	div.news-img {
	  height: 240px;
	}
}
/* 1020 */

@media only screen and (max-width : 990px) {
	/*ul.main-navi {
		display: none;
	}*/

	ul.main-navi { display: none; left: 180px; top: 42px; }
	/*ul.main-navi li { display: none; }*/
	ul.main-navi li:first-child, ul.main-navi li:nth-child(2) { display: inline-block; }

	ul.main-navi ul {
		left: auto;
		padding: 0;
		position: relative;
		top: auto;
	}

	ul.main-navi ul li {
		margin-bottom: 0;
	}

	header {
		height: 100px;
	}

	header h1 a,
	header p.site-title a {
		top: 35px;
	}

	a.menu-btn {
		top: 22px;
	}

	header.sticky {
		left: auto;
		position: relative;
		top: auto;
	}

	ul.hidden-navi, div.hidden-contact-us {
		top: 100px;
	}

	/*a.slideshow-next, a.slideshow-prev { display: none; }*/

	div.news-img {
		height: 215px;
	}

	div.lightbox-video {
		height: 500px;
		width: 96%;
	}

	div.lightbox-video div#container {
		height: 460px;
	}

	div.lightbox-video iframe.video {
		min-height: 458px;
	}

	div.hidden-contact-us input, div.hidden-contact-us select {
		width: 80%;
	}

	div.city {
		width: 30%;
	}

	body.kampanja-2021 div.col-3 {
		float: left;
		padding-right: 20px;
		width: 33.33%;
	}

	body.kampanja-2021 div.col-3 a.btn {
		font-size: 1rem;
	}

	body.sticky-header {
		padding-top: 0;
	}

	ul.hidden-navi ul.main-navi {
		display: block;
		left: auto;
		position: relative;
		top: auto;
	}

	ul.hidden-navi ul.main-navi li {
		display: block;
		padding: 10px 0;
	}

	ul.hidden-navi ul.main-navi li.omahohde {
		background-position: left center;
		box-sizing: border-box;
		margin: 0 auto 10px auto;
		padding-left: 28px;
	}

	body.single-henkilokunta h1,
	body.single-henkilokunta h2 {
		font-size: 2rem;
	}
}
/* 990 */

@media only screen and (max-width : 800px) {
	div.bg-image, iframe.video, div.current-bg, div.prev-bg {
		min-height: 300px;
	}

	div.bg-image-text {
		height: auto;
		min-height: 300px;
	}

	div.bg-image-text h1 {
		font-size: 2rem;
		text-shadow: 0 0 0.5rem rgba(0, 0, 0, 0.5);
	}

	div.bg-image-text.normal h1 { text-shadow: none; }

	img.wrap-top-icon {
		height: auto;
		width: 100px;
	}

	div.wrap.top-icon {
		margin-top: -108px;
	}

	div.service-img {
		padding-right: 10px;
	}
	
	div.service-img img {
		height: auto;
		width: 100%;
	}

	div.col-2 {
		float: none;
		padding-right: 0;
		width: 100%;
	}

	div.col-2:first-child, div.col-2-1:first-child, div.col-2-2:first-child {
		margin-bottom: 2rem;
	}

	div.col-2-1 {
		float: none;
		padding-right: 0;
		width: 100%;
	}

	div.col-2-2 {
		float: none;
		padding-right: 0;
		width: 100%;
	}

	div.gallery div.col-2-1 { width: 100%; }
	div.gallery div.col-2-2 { width: 100%; }

	div.col-2-50 {
		float: none;
		min-height: 400px;
		width: 100%;
	}

	div.location-img {
		min-height: 400px;
	}

	div.location-text {
    bottom: auto;
    left: auto;
    position: relative;
	}

	div.col-3 {
		float: none;
		margin-bottom: 1.25rem;
		padding-right: 0;
		width: 100%;
	}

	div.news div.col-3 {
		float: left;
		padding-right: 20px;
		width: 33.33%;
	}

	div.news-group-mask {
    width: 230px;
	}

	div.col-5 {
		float: none;
		padding-right: 0;
		width: 100%;
	}

	img.img-right-bottom {
		padding-top: 0; 
	}

	footer div.col-5 { text-align: center;  }

	footer div.col-5:nth-child(1), footer div.col-5:nth-child(2), footer div.col-5:nth-child(3), footer div.col-5:nth-child(4), footer div.col-5:nth-child(5) { width: 100%; }

	footer div.col-5:nth-child(2), footer div.col-5:nth-child(3), footer div.col-5:nth-child(4) {
		margin-bottom: 20px;
	}

	footer input[type=text] {
		display: block;
		margin: 0 auto;
	}

	a.close-contact-us {
		right: 0px;
		top: -20px;
	}

	div#video-viewport {
		display: none;
	}

	div.bg-image.home-video, div.bg-image.home-video div.bg-image-text {
		min-height: 250px;
		height: 250px;
	}

	div.home-video div.bg-image-text-content h1 {
		font-size: 1.5rem; 
		font-weight: 800;
	}

	div.home-video div.bg-image-text p {
		font-size: 1rem;
		margin-bottom: 40px;
	}

	div.home-video div.bg-image-text a {
		font-size: 1rem;
		padding: 10px;
	}

	a.next-down { display: none; }

	/*div.news div.wrap {
		width: 240px;
	}*/

	a.slideshow-next, a.slideshow-prev { top: 100px; }

	div.col-3-full {
		float: none;
		width: 100%;
	}

	/* Uusi mobiili etusivu */

	div.bg-image.home-video {
    min-height: 250px;
    height: calc(100vh - 100px);
    padding: 0;
	}

	div.bg-image.home-video div.bg-image-text {
		display: none !important;
	}

	a.next-down {
		background-position: center center;
		background-size: contain;
		bottom: 80px;
    display: block;
    height: 80px;
    left: calc(50% - 40px);
    width: 80px;
	}

	@keyframes bounce{
		0%, 75%, 85%, 100% {
			bottom: 80px;
	  }
		80% {
	    bottom: 60px;
	  }
		90% {
	    bottom: 70px;
	  }
  }	


	/*body.home div.news {
		display: none;
	}*/

	.only-mobile {
		display: block;
	}

	div.mobiili-etusivun-ajanvaraus {
		padding: 16px 10px;
	}

	a.appointment-btn {
		background: #86BC25;
    color: #fff;
    display: block;
    font-size: 2rem;
    font-weight: 200;
    padding: 20px;
    text-decoration: none;
	}

	div.mobiili-etusivun-toimipaikat {
		padding: 20px;
	}

	div.mobiili-etusivun-toimipaikat div.wrap {
		max-width: 100%;
	}	

	div.mobiili-etusivun-toimipaikat h2 {
		font-size: 2rem;
    font-weight: 200;
    text-transform: none;
	}

	div.mobiili-etusivun-toimipaikat div.mobile-city-wrap {
		border-top: 1px solid #86BC25;
		padding: 10px 0;
		text-align: left;
	}

	div.mobiili-etusivun-toimipaikat div.mobile-city-wrap:last-child {
		border-bottom: 1px solid #86BC25;
	}

	div.mobiili-etusivun-toimipaikat div.mobile-city-wrap:after {
		content: "";
		display: table;
		clear: both;
	}

	div.mobiili-etusivun-toimipaikat div.mobile-city-left {
		float: left;
		width: calc(100% - 150px);
	}

	div.mobiili-etusivun-toimipaikat div.mobile-city-left h3 {
		color: #151515;
		font-size: 20px;
		margin-bottom: 0;
		text-transform: none;
	}

	div.mobiili-etusivun-toimipaikat div.mobile-city-right {
		float: left;
		text-align: right;
		width: 150px;
	}

	div.mobiili-etusivun-toimipaikat a.btn {
		background-color: #86BC25;
		color: #fff;
		display: inline-block;
		font-size: 16px;
		font-weight: 400;
		padding: 10px;
		text-align: center;
		text-decoration: none;
	}

	body.home div.paivystys,
	body.home div.parallax-kuva,
	body.home div.parallax-mirror,
	body.home div#hoitotarinoita,
	body.home div.slideshow {
		display: none !important;
	}

	body.home h1.bigger {
		font-size: 3.5rem;
		margin-bottom: 10px;
	}

	body.home div#palvelut {
		padding-left: 20px;
		padding-right: 20px;
		padding-top: 20px;
	}

	body.home div#palvelut div.wrap {
		max-width: 100%;
	}

	body.home div.service-txt h1 {
		font-size: 1rem;
		margin-bottom: 5px;
	}

	body.home div.service-txt p {
		margin-bottom: 0;
		max-height: 100px;
		overflow: hidden;
		position: relative;
	}

	body.home div.service-txt h1 + p:after {
		background-image: linear-gradient(to bottom, rgba(255,255,255,0), rgba(255,255,255, 1) 90%);
		bottom: 0;
 		content: "";
 		height: 3em;
 		left: 0;
 		pointer-events: none;	
  	position: absolute;
  	width: 100%;
  	z-index: 1;
	}

	body.home div.service-txt p.read-more {
		font-weight: normal;
	}

	body.home div.service {
		margin-bottom: 20px;
	}

	body.home div.service-img img {
		position: relative;
		top: -3px;
	}

	body.home div#etusivu-tutustu,
	body.home div#ammattilaiset-yhteistyossa {
		background: #86BC25;
		color: #fff;
		text-align: left;
	}

	body.home div#etusivu-tutustu h1,
	body.home div#etusivu-tutustu a {
		color: #fff !important;
	}

	body.home div#etusivu-tutustu a,
	body.home div#ammattilaiset-yhteistyossa a {
		font-weight: normal;
	}

	body.home div#etusivu-tutustu h1,
	body.home div#ammattilaiset-yhteistyossa h1 {
    font-size: 2rem;
    font-weight: 200;
    margin-bottom: 30px;
    text-align: center;
    text-transform: none;
	}

	body.home div#etusivu-tutustu div.wrap,
	body.home div#ammattilaiset-yhteistyossa div.wrap {
		padding-left: 13%;
		padding-right: 13%;
	}

	body.home img.mobile-avainlippu {
		display: block;
		height: auto;
		position: absolute;
		right: 20px;
		top: 20px;
		width: 90px;
	}

	ul.hidden-navi a {
		font-size: 20px;
		font-weight: 200;
	}

	/*ul.main-navi li:first-child, 
	ul.main-navi li:nth-child(2) {
    display: none;
	}*/

	ul.sub-menu {
    display: none;
	}

	/* Uusi mobiili etusivu END */

	div.top-banner {
		font-size: 12px;
	}

	header {
		height: 68px;
	}

	header div.wrap {
		max-width: calc(100% - 50px);
	}

	header h1 a,
	header p.site-title a {
		background-size: 132px;
		height: 28px;
		top: 22px;
		width: 132px;
	}

	button.hamburger {
		top: 22px;
	}

	div.wrap.palvelut div.service-item-wrap,
	div.toimipaikat div.post-item-wrap {
		grid-template-columns: 1fr 1fr;
	}

	div.wrap.center-and-border div.row,
	div.wrap.center-only div.row,
	div.wrap.center-gray-attached div.row {
		display: block;
	}

	div.wrap.wide-row.center-and-border div.col-2:nth-child(1),
	div.wrap.wide-row.center-only div.col-2:nth-child(1),
	div.wrap.wide-row.center-gray-attached div.col-2:nth-child(1) {
		width: 100%;
	}

	div.wrap.wide-row.center-and-border div.col-2:nth-child(2),
	div.wrap.wide-row.center-only div.col-2:nth-child(2),
	div.wrap.wide-row.center-gray-attached div.col-2:nth-child(2) {
		padding: 40px 20px;
		width: 100%;
	}

	div.wrap.wide-row div.col-2:nth-child(2) h2 {
		font-size: 2rem;
	}

	div.wrap.center-and-border div.col-2:nth-child(2):before {
		display: none;
	}

	div.toimipaikka-galleria img {
		height: 300px;
	}

	article.post-item {
		display: block;
	}

	article.post-item div.img {
		margin-bottom: 20px;
		width: 100%;
	}

	article.post-item div.text {
		padding-left: 0;
		width: 100%;
	}

	ul.hidden-navi, div.hidden-contact-us {
		top: 68px;
	}

	footer .alateksti {
		text-align: center;
	}
}

/* 800 */

@media only screen and (max-width : 750px) {
	body.single-henkilokunta .staff-title-wrap img.staff-photo {
		right: 0;
		width: 150px;
	}

	body.single-henkilokunta .staff-title-wrap {
		padding-right: 170px;
		padding-top: 50px;
	}

	body.single-henkilokunta h1, body.single-henkilokunta h2 {
    font-size: 1.4rem;
	}

	body.single-henkilokunta img.staff-photo {
		opacity: 1;
	}
}

/* 750 */

@media only screen and (max-width : 600px) {
	ul.main-navi {
		top: 35px;
	}

	ul.main-navi li:nth-child(1), ul.main-navi li:nth-child(2) {
		display: block;
		font-size: 0.8rem;
		margin-bottom: 10px;
	}

	a.staff-title {
		line-height: 1.3rem;
	}

	div.staff-thumb img {
		height: auto;
		max-width: 100%;
	}

	div.staff-name {
		box-sizing: border-box;
		padding-left: 10px;
		padding-top: 5px;
	}

	div.staff-phone {
		width: 100%;
	}

	div.contact-us-col-1 {
		float: none;
		margin-bottom: 10px;
		padding-right: 0;
		width: 100%;
	}

	div.contact-us-col-2 {
		float: none;
		width: 100%;
	}

	div.contact-us-col-3 {
		float: none;
		width: 100%;
	}

	div.hidden-contact-us input, div.hidden-contact-us select {
		box-sizing: border-box;
		width: 100%;
	}

	div.contact-us-col-2-v2 {
    float: none;
    width: 100%;
	}

	div.hidden-contact-us li {
		float: none;
		width: 100%;
	}

	div.hidden-contact-us div.gform_wrapper input,
	div.hidden-contact-us div.gform_wrapper select {
		box-sizing: border-box;
		width: 100%;
	}

  article.ff-item {
    display: none;
  }

  article.ff-item:first-child {
    display: block;
    width: 100%;
  }

  div#ff-stream-1 {
    min-height: 200px !important;
  }

  div.ff-stream-wrapper {
    height: 480px !important;
  }

  div.toimipisteet div.col-3 {
    float: left;
    font-size: 12px;
    width: 50%;
  }

  div.toimipisteet div.col-3:nth-child(1) {
    padding-right: 20px;
  }

  body.page-paivystys img.size-full {
    display: none;
  }

  ul.sub-menu {
    display: none;
  }

  div.gallery.contact.wrap > div {
    display: none;
  }

  div.gallery.contact.wrap > div.col-2-2-themap {
    display: block;
  }

  div.cookie-alert {
    padding: 20px;
  }

  div.cookie-alert a.btn {
    bottom: auto;
    margin-top: 20px;
    position: relative;
    right: auto;
  }

  div.cookie-alert p {
    padding-right: 0;
  }

  /*body.page-toimipaikat div.bg-image,
  body.page-toimipaikat div.bg-white {
  	display: none;
  }*/

  div.omahohde-splash {
		display: block;
	}

	a.next-down {
		display: none;
	}

	ul#menu-alasvetovalikko li#menu-item-119,
	ul#menu-alasvetovalikko li#menu-item-235,
	ul#menu-alasvetovalikko li#menu-item-7778,
	ul#menu-alasvetovalikko li#menu-item-118,
	ul#menu-alasvetovalikko li#menu-item-8140 {
		display: none;
	}

	h1.bigger {
		font-size: 2rem;
	}

	p.ingressi {
		font-size: 1.2rem;
	}

	div.kaksi_palstaa {
		margin-top: 20px;
		padding-top: 20px;
	}

	div.kaksi_palstaa_vasen,
	div.kaksi_palstaa_oikea {
		float: none;
		width: 100%;
	}

	a.btn {
		font-size: 1.2rem;
	}

	div.city {
		font-size: 0.9rem;
		padding: 0 10px;
		width: 48%;
	}

	p.iso {
		font-size: 1.5rem;
	}

	body.kampanja-2021 div.col-3 {
    float: none;
    margin-bottom: 40px;
    padding-right: 0;
    width: 100%;
	}

	div.col-3 a.btn {
		width: 100%;
	}

	div#cookie-notice {
	  left: calc(50% - 150px);
	  width: 300px;
	  min-width: 300px;
	  max-width: 300px;
	  top: 100px;
	}

	div.toimipaikat-kartta {
		padding: 40px 0;
	}

	div.toimipaikat-kartta div.valitse-paikkakunta {
		margin-bottom: 40px;
	}

	div.toimipaikat-kartta div.toimipaikat-google-map {
		height: 100vw;
	}

	div.toimipaikka-info h2,
	div.staff-wrap h2 {
		font-size: 1.5rem;
	}

	div.toimipaikka-info {
		margin-bottom: 40px;
	}

	div.toimipaikka-galleria {
		margin-top: 40px;
	}

	div.toimipaikka-galleria {
		display: block;
	}

	div.toimipaikka-galleria img {
		height: calc(100vw - 50px);
		margin-bottom: 20px;
	}

	div.puhelinnumerot div.post-item-wrap {
		grid-template-columns: 1fr;
	}

	div.staff-wrap > h3 {
		font-size: 1rem;
	}

	form.cpp_form select {
		width: 100%;
	}

	div.pricelist div.price-col {
		width: calc(100% - 100px);
	}

	div.pricelist div.price-col-1 {
		font-weight: 600;
	}
	
	div.pricelist div.price-col-2 {
		text-align: right;
		width: 100px;
	}

	div.pricelist div.price-col-3,
	div.pricelist div.price-row-title div.price-col-2 {
		display: none;
	}

	div.pricelist div.kela-jalkeen {
		display: block;
		font-size: 12px;
		font-weight: 300;
	}

	div.pricelist div.wrap {
		max-width: 100%;
	}

	div.pricelist div.price-row + div.price-row-title {
		padding-top: 10px;
	}

	div.pricelist .price-row-title .price-col {
		padding-bottom: 0;
	}

	body.single-henkilokunta img.staff-photo {
		border: none;
		bottom: -30px;
		width: 250px;
	}

	div.locations-list-search {
    padding: 20px;
	}

	div.locations-list-search p {
		font-size: 14px;
	}

	div.locations-list-search input[type=text] {
		font-size: 16px;
		margin-bottom: 10px;
		width: 100%;
	}

	div.locations-list-search button {
		font-size: 16px;
		width: 100%;
	}

	a.locations-list-item h2,
	div.locations-list-item h2 {
		font-size: 22px;
	}

	a.locations-list-item p,
	div.locations-list-item p {
		font-size: 14px;
	}

	/* a.locations-list-item p.address, 
	a.locations-list-item p.phone, 
	a.locations-list-item p.open {
		background-position: top 4px left;
		background-size: 16px;
		padding-left: 30px;
	} */

	a.locations-list-item p.address,
	div.locations-list-item p.address {
		background-position: top left;
	}

	a.locations-list-item p.open,
	div.locations-list-item p.open {
		background-position: top 3px left;
	}

	a.locations-list-item p.info,
	div.locations-list-item p.info {
		background-position: top 3px left;
	}

	div.locations-list-item div.btn-wrap {
    bottom: auto;
		max-width: 100%;
    position: relative;
    right: auto;
	}

	a.accordion-title {
		line-height: 1.3;
	}

	body.single-toimipaikka div.staff-text {
		width: 100%;
	}

	body.single-toimipaikka div.img-wrap {
		margin-top: 0;
	}
}
/* 600 */

@media only screen and (max-width : 500px) {
	div.bg-image {
		min-height: 200px;
		padding: 2rem 0;
	}

	iframe.video { min-height: 200px; }

	div.bg-image-text {
		height: auto;
		min-height: 200px;
	}

	div.bg-image-text h1 {
		font-size: 1.5rem;
		text-shadow: 0 0 0.2rem rgba(0, 0, 0, 0.5);
	}

	div.bg-image-text.normal h1 { text-shadow: none; }

	div.bg-image-text.bg-light {
		display: block;
		height: auto;
	  justify-content: initial;
	}

	div.bg-light div.bg-image-text-content {
		align-self: initial;
	}

	div.bg-image-text h1 {
		font-size: 2.8rem;
		font-weight: 400;
		margin-bottom: 10px;
	}

	div.bg-image-text.bg-light {
		max-width: 80%;
		font-size: 0.8rem;
	}

	div.bg-image-text.bg-light h1 {
		font-size: 1rem;
	}

	div.bg-image-text.bg-light div.bg-image-text-content {
		padding: 20px;
	}

	div.slideshow-navi {
		bottom: 0px;
	}

	div.slideshow-navi a {
	  border-radius: 10px;
	  height: 10px;
	  margin-right: 10px;
	  width: 10px;
	}

	ul.main-navi li:nth-child(1), ul.main-navi li:nth-child(2) {
		font-size: 0.6rem;
	}

	img.staff-photo {
		opacity: 0.5;
	}

	body.single-toimipaikka div.img-wrap {
		display: block;
	}

	body.single-toimipaikka div.img-wrap > p {
		min-height: 0;
		width: 100%;
	}

	body.single-toimipaikka img.staff-photo {
		bottom: -30px;
		margin-top: -200px;
		/* opacity: 1; */
		opacity: 0.3;
		position: absolute;
		right: -20px;
		z-index: -1;
	}

	div.lightbox-video {
		height: 300px;
	}

	div.lightbox-video div#container {
		height: 260px;
	}

	div.lightbox-video iframe.video {
		min-height: 258px;
	}

	ul.main-navi li:nth-child(1), ul.main-navi li:nth-child(2) {
    display: none;
  }

	/*div.mobile-header {
		display: block;
	}*/

	div.col-2-50 {
		background-position: bottom center !important;
		min-height: 200px;
	}

	div.location-img {
		min-height: 200px;
	}

	a.menu-btn {
		background: url(img/valikko2.png) no-repeat;
		background-size: 50px 57px;
	}

	#nav-icon span {
	  display: block;
	}

	a.slideshow-next, a.news-next {
		right: 0;
	}

	a.slideshow-prev, a.news-prev {
		left: 0;
	}

	span.info span {
		display: block;
	}

	div.bg-hallinto div.col-3 {
		text-align: center;
	}

	div.bg-hallinto div.col-3 img {
		display: block;
		margin: 0 auto;
	}

	div.staff-text {
		width: 100%;	
	}

	/* Force table to not be like tables anymore */
	table, thead, tbody, th, td, tr { 
		display: block; 
	}

	form.cpp_form table {
		display: table;
	}
	form.cpp_form thead {
		display: table-header-group;
	}
	form.cpp_form tbody {
		display: table-row-group;
	}
	form.cpp_form tr {
		display: table-row;
	}
	form.cpp_form th {
		display: table-cell;
	}
	form.cpp_form td {
		display: table-cell;
	}

	form.cpp_form #fbuilder .ui-datepicker-inline {
		max-width: 100%;
	}
	
	/* Hide table headers (but not display: none;, for accessibility) */
	table.training thead tr,
  table.hinnasto thead tr { 
		position: absolute;
		top: -9999px;
		left: -9999px;
	}
	
	table.training tr,
  table.hinnasto tr { 
		border-bottom: none;
		margin-bottom: 10px;
	}
	
	div.content table.training td,
  div.content table.hinnasto td { 
		/* Behave  like a "row" */
		/*border: none;
		border-bottom: 1px solid #ededed; */
		border-bottom: 1px solid #151515;
		border-right: none;
		height: auto;
		min-height: 50px;
		position: relative;
		padding-left: 120px !important; 
		text-align: left;
		width: 100%;
	}

  div.content table.hinnasto td { 
    border-bottom: 1px solid #ccc;
    min-height: 0;
    width: calc(100% - 120px);
  }

  div.content table.hinnasto td.no-border { 
    border: none;
  }

  div.content table.hinnasto td.full-width { 
    padding-left: 0 !important;
    width: 100%;
  }
	
	table.training td:before,
  table.hinnasto td:before { 
		/* Now like a table header */
		position: absolute;
		/* Top/left values mimic padding */
		top: 5px;
		left: 2px;
		width: 45%; 
		padding-right: 10px; 
		white-space: nowrap;
	}

	table.training td:before,
  table.hinnasto td:before { 
		content: attr(data-label);
		color: #86BC25;
    font-weight: 600;
    text-transform: uppercase; 
	}

  table.hinnasto td:before { 
    color: #151515;
    font-weight: bold;
    text-transform: none;
  }

  div.col-2:nth-child(2) {
  	padding-left: 0;
  }

  div.service-img {
  	width: 15%;
  }

  div.service-txt {
  	padding-top: 0;
  	width: 85%;
  }

	div.service h1 {
		font-size: 1rem;
		hyphens: auto;
	}

	div.col-1 div.service-img {
    padding-top: 16px;
  }

  a.menu-btn {
  	right: 20px;
  }

  /*header h1 a {
  	left: 20px;
  	top: 37px;
  }*/

  img.hero-image {
  	height: 214px;
  }

  div.seuraavat-vapaat-hoitoajat div.col-2:nth-child(1) {
  	padding: 40px 20px;
  }

  div.seuraavat-vapaat-hoitoajat div.col-2:nth-child(1) h1 {
  	font-size: 1.4rem;
  	margin-bottom: 20px;
  	padding-bottom: 15px;
  }

  div.seuraavat-vapaat-hoitoajat div.col-2:nth-child(1) h2,
  div.seuraavat-vapaat-hoitoajat div.col-2:nth-child(1) p {
  	font-size: 1.2rem;
  }

  div.seuraavat-vapaat-hoitoajat div.col-2:nth-child(1) a.btn {
  	padding: 15px 40px;
  }

  div.wrap.palvelut,
  div.toimipaikat {
  	padding: 60px 0;
  }

  h2 {
  	font-size: 1.6rem;
  }

  div.wrap.palvelut div.service-item-wrap h3 {
  	font-size: 1.2rem;
  }

  div.wrap.palvelut div.service-item-wrap, 
  div.toimipaikat div.post-item-wrap {
  	grid-gap: 40px 0;
  	grid-template-columns: 1fr;
  }

  div.toimipaikat div.post-item-wrap {
  	grid-gap: 20px 0;
  }

  div.news div.wrap {
  	padding-top: 60px;
  }

  div.news div.col-3 {
  	float: none;
  	padding-right: 0;
  	width: 100%;
  }

  div.news-img {
  	height: calc(100vw - 50px);
  }

  div.wrap.wide-row.center-and-border div.col-2:nth-child(2),
	div.wrap.wide-row.center-only div.col-2:nth-child(2),
	div.wrap.wide-row.center-gray-attached div.col-2:nth-child(2) {
  	padding: 20px 25px 40px 25px;
  }

  div.bg-green {
  	padding: 20px 0;
  }

  ul.hidden-navi {
  	padding: 20px 0;
  }

  ul.hidden-navi li {
  	margin-bottom: 0;
  	max-width: calc(100% - 50px);
  }

  ul.hidden-navi a {
  	font-size: 16px;
  	font-weight: 400;
  }

  div.toimipaikat div.post-item-wrap {
  	font-size: 1rem;
  }

  div.bg-white {
  	padding: 30px 0;
  }

  h1 {
  	font-size: 1.8rem;
  }

  ul.filtterikategoriat a.btn {
  	font-size: 1rem;
  }

	body.single-henkilokunta .staff-title-wrap img.staff-photo {
		width: 120px;
	}

	body.single-henkilokunta .staff-title-wrap {
		padding-right: 140px;
	}

	body.single-henkilokunta h1, body.single-henkilokunta h2 {
    font-size: 1.2rem;
	}
}
/* 500 */

@media only screen and (max-width : 420px) {
	ul.main-navi li:nth-child(1), ul.main-navi li:nth-child(2) {
		font-size: 0.5rem;
	}

  div.staff {
    padding: 10px 0;
  }
}
/* 420 */

@media only screen and (max-width : 330px) {
	div.mobiili-etusivun-toimipaikat div.mobile-city-left {
		width: calc(100% - 110px);
	}

	div.mobiili-etusivun-toimipaikat div.mobile-city-left h3 {
		font-size: 18px;
	}

	div.mobiili-etusivun-toimipaikat div.mobile-city-right {
		width: 110px;
	}

	div.mobiili-etusivun-toimipaikat a.btn {
		font-size: 12px;
		padding: 5px 7px;
	}

	h2 {
		font-size: 1.8rem;
	}

	div.bg-green a.btn {
		padding: 10px 30px;
	}
}

/* 330 */