/*
Theme Name:	IH GeneratePress
Author:		Hahmo
Template:	generatepress
Version:	6.1.1
*/

[id*='_link_to'] {
	color:#dd0079;
	font-weight:700;
	font-size:21px;
	cursor:pointer;
}

span._small_sc_bold {
	font-size:10px;
	text-transform: uppercase;
	font-weight:700;	
}

._section {
	margin:64px 0;
}
._img_block {
	margin:56px 0 14px;
}
._img_block:first-of-type {
	margin-top:24px;
}
._block {
	margin:0 0 16px;
}

html,
body {
  overflow-x: hidden;
}

body {
	font-size:18px;
}

.site-content * {
	word-break: keep-all !important;
}

p {
	margin-bottom:20px;
}

body.ih_yhteystiedot .palsta1,
body.ih_yhteystiedot .palsta2 {
	float:left;
}
body.ih_yhteystiedot .palsta1 {
	width:210px;
	margin-right:28px;
}
body.ih_yhteystiedot .palsta2 {
	margin-top:18px;
	width:60%;
}
@media screen and (max-width:1000px){
	body.ih_yhteystiedot .palsta1,
	body.ih_yhteystiedot .palsta2 {
		float:none;
		width:100%;
	}
	body.ih_yhteystiedot .palsta2 {
		margin-top:8px;
	}
}


a:visited,
a:active {
	fill:#dd0079;
}


#puhelin {
	padding:16px 16px 16px 17px;
	background-color:#f3a621;
	color:#fff;
	font-weight:700;
	font-size:14px;
	line-height:1.1;
	width:100%;
}

body.home #puhelin {
	position:relative;
	width:260px;
	margin-top:48px;
}
body:not(.home) #puhelin {
	margin-bottom:32px;
	box-sizing: border-box;
}
#puhelin div {
	font-size:43px;
	margin-bottom:6px;
}


#puhelin._laheisryhmat {
	font-size:24px;
	transition:background-color 200ms;
}
#puhelin._laheisryhmat:hover {
	background-color:#dd0079;
}


header#masthead,
#page,
.site-footer {
	opacity:0;
	transition:opacity 150ms;
}

body.ready header#masthead,
body.ready #page,
body.ready .site-footer {
	opacity:1;
}

ul#menu-valikko > li > a {
	line-height:40px;
}

#site-navigation .slideout-toggle {
	display:none;
}

#site-navigation .menu-toggle {
	color:#222;
	font-size:24px;
	transition:color 300ms;
	cursor:pointer;
}
#site-navigation .menu-toggle:hover {
	color:#dd0079 !important;
}

li.menu-item.menu-item-type-custom {
	display:block !important;
	height:0 !important;
}
.dropdown-menu-toggle {
	padding-right:0 !important;	
}

nav#site-navigation {
	padding-top:24px !important;
	position:relative;
	z-index:101;
}
body.home nav#site-navigation {
	background-color:#fff;
}
body:not(.home) #page {
	margin-top:-3px !important;
}





/*
disable this:
*/
/*
nav#site-navigation li a {
	padding-left:12px;
	padding-right:13px;	
}
*/


/*
activate this:
*/
nav#site-navigation li > a {
	padding-left:12px;
	padding-right:13px;	
}
nav#site-navigation li.menu-item-has-children > a {
	padding-right:5px;	
}
nav#site-navigation li.menu-item-has-children > a > span {
	padding-left:5px;	
}






nav#site-navigation li.menu-item-has-children,
ul#menu-valikko > li.pinkki {
	background-color:#dd0079;
	/*
	awareness
	background-color:#6f2a8e;
	*/
}

ul#menu-valikko > li:not(.menu-item-has-children):not(.current-menu-item):hover > a,
nav#site-navigation li.menu-item-has-children > a,
ul#menu-valikko > li.pinkki > a {
	color:#fff !important;	
}

nav#site-navigation li.menu-item-has-children.current-menu-item > a,
ul#menu-valikko > li:not(.menu-item-has-children):not(.pinkki) > a {
	color:#000 !important;	
}


ul#menu-valikko > li.menu-item-has-children.current_page_parent > a,
ul#menu-valikko > li.menu-item-has-children.current-menu-item > a,
ul#menu-valikko > li.pinkki.current-menu-item > a {
	color:#dd0079 !important;	
}


nav#site-navigation li.menu-item-has-children:not(.current_page_parent):not(.current-menu-item):hover > a {
	color:#fff !important;	
}
nav#site-navigation .main-nav > ul > li > a {
	font-weight:700 !important;
	font-size:15px !important;
}


nav#site-navigation .main-nav ul ul li:nth-last-child(1) a {
	padding-bottom:16px !important;
}
ul#menu-valikko > li.current-menu-item:not(.menu-item-has-children):not(.pinkki) > a {
	color:#f3a621 !important;
}


.slideout-navigation a:hover,
.slideout-navigation a:visited {
	color:#fff !important;
}


#tunnus-1 {
	max-width:240px;
	margin-top:-4px;
	transition:margin-left 300ms;
}

#tunnus-2 {
	max-width:128px;
	margin:-4px auto 0;
    display:none;
}

















.fb-page {
	margin-bottom:32px;
}
h1 {
	font-weight:200;
	font-size:90px;
	line-height:1;
	clear:both;
}
body.home h1 {
	font-size:100px;
}
h1.pieni {
	font-size:76px;
	margin-top:10px;
}
.magenta {
	color:#dd0079;
}
h2 {
	font-size:36px;
	margin-top:10px;
	font-weight:900;
	color:#dd0079;
}
body.home h3 {
	font-weight:700;
	font-size:32px !important;
}
body:not(.home) h3 {
	font-size:24px;
	margin-top:10px;
	font-weight:900;
}

h3 {
	font-family: "Raleway", sans serif;
	font-size:14px;
	margin-top:16px;
	margin-bottom:7px;
	font-weight:900;	
}

h4 {
	font-size:18px;
	margin-top:10px;
	text-transform:uppercase;
	font-weight:900;
	margin-bottom:10px;	
}
.sidebar h4 {
	margin-bottom:18px;	
}

h4::before {
	content:" ";
	display:block;
	background:#dd0079;
	margin:0 0 16px 0;
	height:1px;
	width:160px;
	position:relative;
}
.entry-content h4::before {
	margin-top:40px;
}

h5 {
	font-size:18px;
	margin-top:10px;
	text-transform:uppercase;
	font-weight:900;
	margin-bottom:10px;
}
h6 {
	font-size:26px;
	line-height:34px;
}
blockquote {

	border-left:6px dotted #dd0079;
	max-width:600px;
	color:#dd0079;
	font-size:28px;
}
.syotteet {
	padding:0 20px;
}
body.home .syotteet {
	margin-top:64px;
}






header#masthead {
	overflow:visible;
	height:0;
}
#main {
	margin:0;
}

#right-sidebar aside {
	padding:0;
}
#main .inside-article {
    margin-top:48px;
	padding-bottom:64px;
	min-height:1000px;
}
.inside-right-sidebar {
	padding-top:0;
	margin:0;
	width:100%;
	padding-bottom:20px;
}
body:not(.home) .inside-right-sidebar {
	background-color:rgb(245, 246, 247);
}

header#masthead .inside-header {
	position:relative;
	padding-top:0;
	padding-right:0;
	z-index:99;
}


.inside-footer-widgets {
	padding:30px 40px;
}
.footer-widgets {
	background-color:transparent;
}
.site-footer .slogan {
	font-size:24px;
	line-height:1;
	color:#dd0079;
	font-weight:700;
	top:-4px;
	position:relative;
}
.site-footer p {
	font-size:15px;
}
.site-footer img {
	width:120px;
	height:120px;
}


input[type="button"] {
	background-color:#dd0079 !important;
	border:0;
	font-weight:700 !important;
	transition:background-color 300ms;
}
input[type="button"]:hover {
	background-color: #000 !important;
}


input[type="text"],
input[type="tel"],
input[type="email"],
textarea {
	background-color: rgba(220,0,120,0.1);
	border:0;
}



#cookie-law-info-bar,
#cookie-law-info-again {
	box-shadow: none !important;
}














.sidebar .widget {
	background-color:transparent !important;
}



/* etusivu */

body.home #tunnuksen_tausta {
	position:absolute;
	right:-33px; top:0;
	width:3000px; height:210px;
	background-color:#fff;
	z-index:-1;
}


body.home #kuvakaruselli {
	position:relative;
	left:0; top:0;
	width:100%; height:500px;
	opacity:0;
	transition:opacity 600ms;
	z-index:0;
}
body.home #kuvakaruselli .kuvan_tekstit {
	position:absolute;
	right:10%; bottom:32px;
	width:300px;
	text-align:right;
	padding:8px 48px 0 32px;
	color:#fff;
	text-shadow:0 1px 3px rgba(0,0,0,0.1), 0 3px 10px rgba(0,0,0,0.15);	
}
body.home #kuvakaruselli h3 {
	font-size:26px;
	color:#fff;
}
body.home #kuvakaruselli p {
	font-weight:900;
	font-size:14px;
	text-transform:uppercase;
	color:#fff;
}
body.home .karusellin_kuva {
	position:absolute;
	left:0; top:0;
	width:100%; height:100%;
	background-position:center center;
	background-repeat:no-repeat;
	background-size:cover;
	opacity:0;
}
body.home .karusellin_kuva:nth-child(1) {
	opacity:1;
}

body.home .karusellin_kuva .tummennus {
	position:absolute;
	left:0; top:0;
	width:100%; height:100%;
}
body.home.ready .karusellin_kuva .tummennus {
	background-color:rgba(0,0,0,0.1);
}



/* alasivut */

body:not(.home) {
	background-color:#fbeacd;
}

body:not(.home).vaaleanpunainen {
	background-color:rgba(220, 0, 120, 0.1);
}

body:not(.home) #main .inside-article {
	margin-top:32px;
}

body:not(.home):not(.vaaleanpunainen):not(.error404) {
	background-color:#fbeacd;
}

body:not(.home):not(.vaaleanpunainen):not(.error404) .footer-widget-1 {
	width:33%;
}

body:not(.home):not(.vaaleanpunainen):not(.error404) .footer-widget-1 .textwidget {
	background:#000;
	padding:26px 20px 30px 40px;
	box-sizing:border-box;
}
body:not(.home):not(.vaaleanpunainen):not(.error404) .footer-widget-1 .textwidget p,
body:not(.home):not(.vaaleanpunainen):not(.error404) .footer-widget-1 .textwidget a:hover {
	color:#fff;
}

body:not(.home):not(.vaaleanpunainen):not(.error404) .footer-widget-1 .textwidget a {
	font-weight:700;
}


body:not(.home):not(.vaaleanpunainen):not(.error404) .footer-widgets .slogan {
	color:#fff;
	font-size:34px;
	text-shadow:0 1px 3px rgba(40,10,0,0.05), 0 3px 6px rgba(40,10,0,0.1);	
}

body:not(.home) .inside-article {
	margin-top:110px;
	margin-left:40px;
	background-color:#fff;
}


body.ih_medialle h1,
body:not(.home).page-parent h1 {
	color:#dd0079;
}



body:not(.home) #taustakuva {
	position:fixed;
	left:0; bottom:0;
	width:100%; height:70%;
	background-size:cover;
	background-repeat:no-repeat;
	z-index:-1;
	opacity:0;
	transition:opacity 900ms;
}

body:not(.home) .maski {
	position:fixed;
	left:0; top:0;
	width:100%; height:260px;
	background:#fbeacd;
	z-index:-1;
}
body:not(.home) #taustakuva .savytys {
	position:absolute;
	left:0; top:0;
	width:100%; height:100%;
	background:rgba(244,166,33,0.3);
}



body:not(.home) .sidebar {
	margin-top:12px !important;	
}

body:not(.home) #puhelin div {
	font-size:39px !important;	
}

body:not(.home) #main {
	background-position:90% 30px;
	background-repeat:no-repeat;
	background-size:40% auto;
	position:relative;
}


body:not(.home).page-parent,
body:not(.home).page-child,
body.ih_malli,
body.error404 {
	background-color:rgba(220,0,120,0.1) !important;
}




#taite-lehdet .kehys {
	margin:0 32px 16px 0;
	width:180px;
	height:370px;
	float:left;
}
#taite-lehdet .kuva {
	width:160px;
	cursor:pointer;
}
#taite-lehdet img {
	width:100%;
	box-shadow:0 1px 3px rgba(0,0,0,0.1), 0 3px 10px rgba(0,0,0,0.15);
}
#taite-lehdet p {
	margin:6px 0;
}
#taite-lehdet p.small {
	word-wrap:normal;
	font-size:12px;
	line-height:1.6;
	color:rgb(58, 58, 58);
}



.nf-response-msg {
	font-size:28px;
	line-height:1;
}
.nf-form-fields-required {
	visibility:hidden;
}


.liima{
	white-space: nowrap;
}

@media screen and (max-width:1220px){
	footer {
		margin-left:0;
	}
}

@media screen and (min-width:1200px){
	#tunnus-1 {
		float:left;
	}
}

@media screen and (max-width:1199px){
	.content-area {
		width:70% !important;
	}
	.inside-article {
		margin-left:0 !important;
	}
	.sidebar {
		width:30% !important;
	}
	
	.footer-widgets {
		padding:0;
	}

	.inside-footer-widgets > * {
		float:none;
		padding:0 0 8px 0;	
		margin:-8px 0 32px;
		min-width:340px !important;
	}
	.site-info {
		padding:0;
	}
}



@media screen and (max-width:900px){
	.content-area {
		width:66% !important;
	}
	.sidebar {
		width:34% !important;
	}
}

@media screen and (max-width:1150px){
	#tunnus-1 {
		margin-left:24px;
	}
	.main-nav {
		margin-top:24px;
	}
}

@media (max-width: 850px) {
    
    #tunnus-1 {
        display:none;
    }
    #tunnus-2 {
        display:block;
    }  
    .main-navigation .menu-toggle,
    .main-navigation .mobile-bar-items,
    .sidebar-nav-mobile:not(#sticky-placeholder) {
        display: block;
    }
    .main-nav {
    	margin-top:0;
    }
    #cookie-law-info-again {
    	display:none !important;
    }
}


@media screen and (max-width:768px){
	.content-area {
		width:100% !important;
	}
	.sidebar {
		display:none;
	}
	#taite-lehdet .kehys {
		margin:0 16px 16px 0;
	}	
	body.home #puhelin {
		position:absolute;
		bottom:-16px;
		left:0;
		text-align:left !important;
		padding-left:36px !important;
	}
	
	body.home #kuvakaruselli .kuvan_tekstit {
		position:absolute;
		top:auto;
		bottom:80px;
		left:0;
		width:200px;
	}
	body.home  #kuvakaruselli .kuvan_tekstit * {
		text-align:left;
		text-shadow:0 1px 3px rgba(0,0,0,0.1), 0 3px 10px rgba(0,0,0,0.15);	
	}
	body.home  #kuvakaruselli .kuvan_tekstit h3 {
		font-size:24px !important;
	}
	
	.site-info {
		margin-top:-48px;
	}
}

@media screen and (max-width:400px){
	
	
	.inside-footer-widgets > div {
		margin-left:-10px;
	}
	
	body:not(.ih_malli):not(.error404):not(.vaaleanpunainen):not(.home) .footer-widget-1 {
		margin-left:-40px;
	}

	body:not(.ih_malli):not(.error404):not(.vaaleanpunainen):not(.home) .footer-widget-1 .textwidget {
		width:400px !important;
	}
	body.home #puhelin {
		transform-origin: center left;
		transform:scale(0.8);
	}
}











.footer-bar {
	margin:0 40px;
	float:none !important;
	clear:both !important;
	margin-bottom:64px;
	text-align:left !important;
}

.some-linkit::before {
	content:" ";
	display:block;
	border-top:1px solid rgba(0,0,0,0.4);
	margin:0 0 24px 8px;
	width:180px;
}
.some-linkit a {
	margin:0 18px 18px 0;
	opacity:1;
	transition:opacity 300ms;
}

.some-linkit a:hover svg {
	fill:#dd0079;
}
body:not(.home):not(.vaaleanpunainen):not(.error404) .some-linkit a:hover svg {
	fill:#fff;
}

.copyright-bar {
	margin:0 40px;
	float:none !important;
	text-align:left !important;
	margin-bottom:64px;
	font-size:11px;
	text-transform: uppercase;
}






.palstanpaa {
	position:relative;
	left:5px;
	height:150px;
	z-index:2;
}
body.ih_vapaaehtoisille .palstanpaa {
	height:230px;
}
body.ih_kayttajille .palstanpaa {
	height:210px;
}
body.ih_jasenille .palstanpaa {
	height:130px;
	left:24px;
}
body.ih_medialle .palstanpaa {
	height:180px;
}
body.ih_huumeista  .palstanpaa {
	height:130px;
	margin-bottom:12px;
}



body.page-child .palstanpaa {
	height:90px;
}
body.page-child.ih_vapaaehtoisille .palstanpaa {
	height:138px;
}
body.page-child.ih_kayttajille .palstanpaa {
	height:126px;
}
body.page-child.ih_jasenille .palstanpaa {
	height:78px;
}
body.page-child.ih_medialle .palstanpaa {
	height:108px;
}
body.page-child.ih_huumeista  .palstanpaa {
	height:70px;
	margin-bottom:0;
}



.rooli_ulompi {
	margin-bottom:24px;
}


.rooli{
	font-weight:700;
	font-size:48px;
	left:20px;
	color:#dd0079;
	font-size:18px;
	position:relative;
}

body.ih_kayttajille .rooli {
	top:-60px;
}
body.page-child.ih_vapaaehtoisille .rooli {
	top:-40px;
	left:30px;
}
body.page-child.ih_toipujille .rooli_ulompi {
	margin-bottom:32px;
}
body.page-child.ih_jasenille .rooli {
	left:36px;
}
body.page-child.ih_huumeista .rooli {
	top:-32px;
	left:25px;
}

@media screen and (max-width:768px){

	body.page-child .palstanpaa {
		display:none;
	}
	.rooli {
		top:0 !important;
		left:0 !important;
	}
	.rooli_ulompi {
		margin-bottom:8px;
	}
		.palstanpaa {
		height:90px;
	}
	body.ih_vapaaehtoisille .palstanpaa {
		height:138px;
	}
	body.ih_kayttajille .palstanpaa {
		height:126px;
	}
	body.ih_jasenille .palstanpaa {
		height:78px;
		left:20px;
	}
	body.ih_medialle .palstanpaa {
		height:108px;
	}
	body.ih_huumeista  .palstanpaa {
		height:70px;
		margin-bottom:0;
	}
}


._large_heading {
	margin-top:48px;
}
._large_heading .nf-field-label > label {
	font-size:22px;
	color:#e2027a;
}
