@charset "UTF-8";
/* 
CSS Document 
Jarno Marttila
*/

html,body{
	/*min-height: 100%;*/
	min-height: 100vh;
/*	font-family: "museo-sans",sans-serif;*/
	font-family: 'Nunito Sans', sans-serif;
	letter-spacing: 0.7px;
}
.container.arch-container{
	padding-bottom: 5rem;
	padding-top: 5rem;
}
.tg-grid-slider{
background-color: #424242!important;
}
.topnavi{
position: absolute;
z-index: 20;
top: 10px;
right: 10px;
color: #94948b;
width: 100%;
text-align: right;
}
span.date{
display: inline-block;
font-size: 0.9em;
letter-spacing: 0;
}
.submenu span.date{
display: block;
}
.container-fluid.link-list{
padding-bottom: 2em;
}
.link-list ul.sitemap, .link-list h2{
padding-left: 30px;
}
ul.sitemap{
list-style: none;
}
ul.sitemap li{
}
.subpage .topnavi{
position: relative;
z-index: 20;
top: 0px;
text-align: right;
margin-top: 10px;
margin-bottom: -10px;
right: 10px;
color: #94948b;
}
.topnavi div{
display: inline-block;
margin-left: 2em;
}
.topnavi div.somed{
float: left;
}
.topnavi div.textwidget{
margin-left: 0;
}
.topnavi a{
color: #94948b;
display: inline-block;
padding: 3px;
font-size: 1.25em;
margin-left: 0.5em;
margin-right: 0.5em;
font-weight: 300;
letter-spacing: 1px;
}
.topnavi a.sos-icon{
background-color: #f7f7f7;
border-radius: 4px;
font-size: 1em;
letter-spacing: 0;
min-width: 1.6em;
padding: 2px 6px;
text-align: center;
transform:translateY(-0.2em);
}
.topnavi a.flag-icon, .topnavi ul li{
background-color: transparent;
border-radius: 0;
font-size: 1em;
min-width: 1.6em;
min-height: 1.6em;
padding: 0;
text-align: center;
transform: translateY(0.2em);
background-repeat: no-repeat;
background-size: contain;
margin: 0 0.3em;
}
.topnavi ul li{
display: inline-block;
position: relative;
}
.topnavi a.flag-icon.flag-fi{
	background-image: url(../images/flag-fi.png);
}
.flag-icon.flag-eng{
	background-image: url(../images/flag-eng-uk.png);
}
.flag-icon.flag-de{
	background-image: url(../images/flag-de.png);
}
.topnavi ul{
list-style: none;
margin:0;
padding:0;
}
.topnavi li ul.submenu{
display:none;
position: absolute;
line-height: 1em;
min-width: 160px;
left: 50%;
-ms-transform: translateX(-50%);
-webkit-transform: translateX(-50%);
-moz-transform: translateX(-50%);
transform: translateX(-50%);
background-color: rgba(255,255,255,0.75);
padding: 10px 0;
}
.topnavi li.opened ul.submenu{
display: block;
}
ul.submenu li{
	display:block;
	font-size: 0.8em;
	padding: 5px 0;
	padding-bottom: 0;
} 
ul.submenu li a{
color: #20201e;
border-bottom: solid 1px #979797;
padding-bottom: 10px;
display: block;
}
ul.submenu li:last-child a{
border-bottom: solid 0px #979797;
padding-bottom: 0px;
}
.img-responsive.top-logo{
max-width: 533px;
width: 50%;
}
.img-responsive.article-img{
width: 100%;
max-width: 1920px;
margin-left: auto;
margin-right: auto;
}
.hero{
	min-height: 100vh;
	position: relative;
}
.fs-slideshow {
overflow: hidden;
width: 100%;
height: 100%;
max-height: 100%;
max-width: 100%;
position: absolute;
top: 0;
left: 0;
margin: 0;
padding: 0;
box-sizing: border-box;
	z-index: 1;
}
.logo-over-hero{
position: absolute;
top: 85%;
left: 50%;
z-index: 10;
transform: translateX(-50%) translateY(-50%);
width: 40%;
height: auto;
}
.title-over-image{
position: absolute;
left: 0;
top: 50%;
width: 100%;
transform: translateY(-50%);
padding-left: 2em;
padding-right: 2em;
text-align: center;
z-index: 10;
font-size: 4.5em;
font-weight: 300;
color: #ffffff;
text-shadow: 0 0 5px rgba(0, 0, 0, 0.9), 0 0 4px rgba(0, 0, 0, 0.9);
}
.fs-slideshow li{
width: 100%;
height: 100%;
position: absolute;
top: 0px;
left: 0px;
	opacity: 0;
	overflow: hidden;

}
.fs-slideshow li div.slide-content{
	-webkit-backface-visibility: hidden;
	position: absolute;
	top:50%;
	left: 50%;
	display: block;
	transform: translateX(-50%) translateY(-50%) scale(1);
	opacity: 0;
	transition-delay: 2s;
	transition-duration: 1s;
	transition-property: opacity;
	transition-timing-function: ease-in-out;
}
.fs-slideshow li.in div.slide-content{
	-webkit-backface-visibility: hidden;
	opacity: 1;
	transition-delay: 2s;
	transition-duration: 1s;
	transition-property: opacity;
	transition-timing-function: ease-in;
}
.fs-slideshow li.out div.slide-content{
/*	opacity: 0;
	transform: translateX(-50%) translateY(-50%) scale(1);
	transition-delay: 0s;
	transition-duration: 0.5s;
	transition-property: opacity;
	transition-timing-function: ease-out;*/
}
.fs-slideshow li div.slide-bg{
-webkit-backface-visibility: hidden;
transform: scale(1);
	display: block;
	width: 100%;
height: 100%;
position: absolute;
top: 0px;
left: 0px;
	background-position: 50% 50%;
	background-size: cover;
}
.fs-slideshow li.in{
    z-index: 1000;
	opacity: 1;
	-webkit-backface-visibility: hidden;
}
.fs-slideshow li.in div.slide-bg{
	-webkit-animation: imageIn 10s linear;
    -moz-animation: imageIn 10s linear;
    -o-animation: imageIn 10s linear;
    -ms-animation: imageIn 10s linear;
    animation: imageIn 10s linear;
	transform: scale(1.1);
}
.fs-slideshow li.out{
		transition-duration: 1s;
		transition-property: opacity;
		transition-timing-function: ease-in-out;
		z-index: 1;
		opacity: 0;
		-o-transform: scale(1.1);
		-ms-transform: scale(1.1);
		-moz-transform: scale(1.1);
		-webkit-transform: scale(1.1); 
		transform: scale(1.1); 
	
	 /*   -webkit-animation: imageOut 2s linear;
    -moz-animation: imageOut 2s linear;
    -o-animation: imageOut 2s linear;
    -ms-animation: imageOut 2s linear;
    animation: imageOut 2s linear;*/
}
@-webkit-keyframes imageIn { 
	0% {
	    opacity: 0;
		-webkit-transform: scale(1);
	    -webkit-animation-timing-function: ease-in;
	}
	10% {
	    opacity: 1;
	    -webkit-transform: scale(1);
	    -webkit-animation-timing-function: ease-out;
	}
	100% {
	    -webkit-transform: scale(1.1); 
	}
}
@-moz-keyframes imageIn { 
	0% {
	    opacity: 0;
		-moz-transform: scale(1);
	    -moz-animation-timing-function: ease-in;
	}
	10% {
	    opacity: 1;
	    -moz-transform: scale(1);
	    -moz-animation-timing-function: ease-out;
	}

	100% {
		-moz-transform: scale(1.1);
	}
}
@-o-keyframes imageIn { 
	0% {
	    opacity: 0;
		 -o-transform: scale(1);
	    -o-animation-timing-function: ease-in;
	}
	10% {
	    opacity: 1;
	    -o-transform: scale(1);
	    -o-animation-timing-function: ease-out;
	}
	100% {  
		-o-transform: scale(1.1);
	}
}
@-ms-keyframes imageIn { 
	0% {
	    opacity: 0;
		 -ms-transform: scale(1);
	    -ms-animation-timing-function: ease-in;
	}
	10% {
	    opacity: 1;
	    -ms-transform: scale(1);
	    -ms-animation-timing-function: ease-out;
	}
	100% { 
	-ms-transform: scale(1.1);
	}
}
@keyframes imageIn { 
	0% {
	    opacity: 0;
		transform: scale(1);
	    animation-timing-function: ease-in;
	}
	10% {
	    opacity: 1;
	    transform: scale(1);
	    animation-timing-function: ease-out;
	}
	100% {
	 transform: scale(1.1);
	}
}
@-webkit-keyframes imageOut { 
		0% {
		opacity: 1;
	    -webkit-animation-timing-function: ease-in;
	}
	100% {
		z-index: 1;
		opacity: 0;
	}
	
}
@-moz-keyframes imageOut { 
		0% {
		opacity: 1;
	    -moz-animation-timing-function: ease-in;
	}
	100% {
		z-index: 1;
		opacity: 0;
	}

}
@-o-keyframes imageOut { 
		0% {
		opacity: 1;
	    -o-animation-timing-function: ease-out;
	}
	100% {
		z-index: 1;
		opacity: 0;
	}
	
}
@-ms-keyframes imageOut { 
		0% {
		opacity: 1;
	    -ms-animation-timing-function: ease-in;
	}
	100% {
		z-index: 1;
		opacity: 0;
	}
	
}
@keyframes imageOut { 
	0% {

	    animation-timing-function: ease-in;
	}
	100% {
		z-index: 1;
		opacity: 0;
	}
}
/* Show at least something when animations not supported */
.no-cssanimations .fs-slideshow li{
	/*opacity: 1;*/
}
@media screen and (max-width: 1140px) { 
	.fs-slideshow li div h3 { font-size: 100px }
}
@media screen and (max-width: 600px) { 
	.fs-slideshow li div h3 { font-size: 50px }
}
h1{
font-family: Arial;
font-weight: 600;
font-size: 2.8em;
margin-top: 0.75em;
margin-bottom: 0.75em;
}
figcaption.wp-caption-text{
font-size: 0.9em;
margin-bottom: 2em;
margin-top: 1em
}
/*figcaption.wp-caption-text::after{
content:' © ';
}*/
.copyright-info{
font-size: 0.75em;
position: relative;
z-index: 100;
margin-top: -2em;
padding-bottom: 5px;
color: #ffffff;
padding-left: 10px;
text-shadow: 0 0 3px #000000;
}
.brasilia .tg-item-content.cust-ro .tg-item-title, .brasilia .tg-item-content.cust-ro .tg-item-title a{
font-weight: 600;
font-size: 1.3em;
line-height: 1.1em;
word-break: normal;
word-wrap: normal;
-webkit-hyphens: none;
-moz-hyphens: none;
-ms-hyphens: none;
hyphens: none;
}
.brasilia .tg-item-content.cust-ro  .tg-item-title, .brasilia:hover .tg-item-content.cust-ro  .tg-item-title{
position: absolute;
top: 50%;
left: 0;
width: 100%;
transform: translateY(-50%);
text-align: center;
}
.brasilia .tg-item-content.cust-ro h2 a:hover, .brasilia .tg-item-content.cust-ro .tg-cats-holder a:hover, .brasilia .tg-item-content.cust-ro .tg-media-button:hover{
opacity:1;
}
.brasilia .tg-item-content{
margin: 10px 10px
}
.tg-left-arrow.tg-disabled, .tg-left-arrow.tg-force-disabled, .tg-pagination-number .tg-page-number.tg-loading, .tg-right-arrow.tg-disabled, .tg-right-arrow.tg-force-disabled{
opacity:0!important;
}
blockquote{
border: none;
padding-left: 0;
padding-right: 0;
font-weight: 700;
}
.flexbox .flxbox{
	display: flex; /* or inline-flex */
 	align-items: stretch;
 	flex-direction:row;
 	padding-top: 1em;
	padding-bottom: 1em;
}
.col-sm-8.col-lg-9.main-content-col{
padding: 2em 4em;
}
.flexbox .flxbox .col-sm-8.col-lg-9.main-content-col{
	order:1;
	flex-grow:9;
	padding-top: 2em;
}
.flexbox .flxbox .col-sm-8.col-lg-9.main-content-col h1{
margin-top: 0;
font-size: 2.4em;
}
.main-content-col{
font-size: 1em;
padding-top: 1em;
}
.main-content-col>em{
display: block;
margin-bottom: 1em;
font-size: 1.2em;
font-style: normal;
}
.main-content-col h2{
font-size: 2em;
margin-bottom: 0.5em;
margin-top: 1em;
}
.main-content-col p{
margin-bottom: 1.3em;
-webkit-hyphens: auto;
-moz-hyphens: auto;
-ms-hyphens: auto;
hyphens: auto;
}
.main-content-col p>img.img-responsive{
margin-bottom: 2em;
}
.main-content-col p>img.img-responsive+div.copyright-info{
margin-top: -5em;
}
.main-content-col ol{
padding-left: 1.5em;
}
.side-content-col{
background-color:#e2e2dd;
padding: 2em;
}
.side-content-col h3{
font-weight: 600;
}
.side-content-col h3:first-of-type{
margin-top: 0;
 }
.flexbox .flxbox .side-content-col{
	order:2;
	flex-grow:3;
}
.side-content-col a{
color:#446486;
word-break: break-word;
}
.side-content-col blockquote{
border-left: none;
padding: 0;
margin: 1em 0;
font-size: 1.3em;
color: #94948b;
font-family: 'Crimson Text', serif;
font-weight: 600;
font-style: italic;
letter-spacing: 1px;
}
figure{
max-width: 100%;
margin-top: 3em;
margin-bottom: 3em;
width: 100%!important;
}
figure.aligncenter{
display:block;
max-width: 100%;
margin-top: 3em;
margin-bottom: 3em;
margin-left: auto;
margin-right: auto;
width: initial !important;
}
.footer{
padding-top: 2em;
padding-bottom: 3em;
background-color: #b2b3aa;
color:#ffffff;
}
.footer a{
color:#ffffff;
}
.footer-content{
max-width: 1200px;
margin-left: auto;
margin-right: auto;
}
ul.instagram-pics{
list-style:none;
padding: 0;
margin: 0;
margin-left: -5px;
margin-right: -5px;
max-width: 440px;
overflow: hidden;
text-align: center;
}
ul.instagram-pics li{
width: 100px;
height: 100px;
padding: 5px;
float: none;
display: inline-block;
box-sizing: border-box;
-moz-box-sizing: border-box;
}
ul.instagram-pics li a{
display: block;
}
ul.instagram-pics li a img{
width: 100%;
height: auto;
margin: 0;
padding: 0;
}
.topnavi div.mob-menu-btn{
display:none;
}
@media (max-width: 1020px){
.title-over-image{
font-size: 3.5em;
line-height: 1.1em;
}
}
@media (max-width: 810px){
ul.instagram-pics li:nth-child(9){
display:none;
}
.title-over-image{
font-size: 3em;
line-height: 1.1em;
}
.main-content-col{
font-size: 1.1em;
}
}
@media (min-width: 811px){
.main-content-col{
font-size: 1.1em;
}
}

@media (min-width: 1036px){
ul.instagram-pics li:nth-child(9){
display:none;
}
.title-over-image{
font-size: 5em;
line-height: 1.1em;
}
.main-content-col{
font-size: 1.15em;
}
}


@media (max-width: 767px){

.flexbox .flxbox{
	display: flex; /* or inline-flex */
 	align-items: stretch;
 	flex-direction:column;
}
.flexbox .flxbox .col-sm-8.col-lg-9.main-content-col{
	order:1;
	flex-grow:1;
	padding: 2em 2em;
}
.flexbox .flxbox .side-content-col{
	order:2;
	flex-grow:1;
}
}
@media (max-width: 720px){
.subpage .img-responsive.top-logo{
max-width: 933px;
width: 90%;
margin-top: 10px;
margin-bottom: 10px
}

.subpage .topnavi{
right: 0;
position: relative;
z-index: 20;
top: 40px;
text-align: right;
margin-top: 10px;
margin-bottom: -10px;
}
div.mob-menu-btn.act .fa-bars:before{
content: "\f00d";
}
.subpage .container-fluid.navitop{
pointer-events: none;
position: absolute;
top: 0;
left: 0;
width:100%;
padding-left: 0;
padding-right: 0;
/* margin-left: -15px; */
/* margin-right: -30px; */
}
.topnavi div.main-menu{
display:none;
}
.topnavi div.main-menu.act{
display: block;
width: 150px;
position: absolute;
top: 1em;
right: 5em;
background-color: rgb(247, 247, 247);
border-radius: 5px;
padding: 1em;
}
.topnavi div.main-menu.act div{
margin-left:0;
}
.topnavi div.main-menu.act a{
pointer-events: auto;
}
.topnavi div.main-menu.act div:nth-of-type(1){
margin-bottom:0.5em;
}
.topnavi div.mob-menu-btn{
display: block;
position: absolute;
right: 0.5em;
top: 0.5em;
cursor: pointer;
background-color: #f7f7f7;
border-radius: 4px;
font-size: 2em;
letter-spacing: 0;
min-width: 1.6em;
padding: 2px 6px;
text-align: center;
transform: none;
margin-right: 0;
pointer-events: auto;
}
.topnavi a.sos-icon{
transform: none;
display: block;
margin-top: 0.5em;
font-size: 1.5em;
pointer-events: auto;
}
.subpage .topnavi div.somed {
float: left;
margin-left: 0em;
margin-top: 0.5em;
}
.topnavi ul li{
text-align: right;
}
.topnavi li ul.submenu{
position: relative;
min-width: 0;
background-color:transparent;
}
ul.submenu li{

} 
ul.submenu li a{

}
ul.submenu li:last-child a{
border-bottom: solid 1px #979797;
padding-bottom: 10px;
}
.title-over-image{
font-size: 2.5em;
line-height: 1.1em;
}
}
@media (max-width: 600px){

.title-over-image{
font-size: 2em;
}
.main-content-col{
font-size: 1em;
}
.container-fluid.hero{
min-height: 450px!important;
}
.fs-slideshow li div.slide-bg{
background-position: 40% 50%;
}
.logo-over-hero{
min-width: 270px;
}
}
@media (max-height: 500px) and (orientation: landscape){
.container-fluid.hero{
min-height: 100vh!important;
}
}
@media (min-width:980px) and (max-width:1200px){
.brasilia .tg-item-content.cust-ro .tg-item-title, .brasilia .tg-item-content.cust-ro .tg-item-title a{
font-weight: 600;
font-size: 1.25em;
}
}
.tg-grid-wrapper{
background-color: #333;
}
.video-container { position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;margin-bottom: 2em;}
.video-container iframe, .video-container object, .video-container embed, .video-container video { position: absolute; top: 0; left: 0; width: 100%; height: 100%; max-width: 100%!important;}

.row.kirjat{
background-color: #3e3e3e;
}
.kirja {
padding:10px 0px;
}
.kirjakuva{
text-align:center;
z-index:1;
}
.kirjakuva img{
display:block;
margin:0 auto;
}
.kirja.kirja-uusi .kirjakuva img {
max-width: 100%;
height: auto;
display: block;
margin: 0 auto;
}
.kirja-uusi .ro-text .ro-text-cell {
font-size: 20px;
}
.kirja a{
	display:block;
	position:relative;
}
.kirja .tg-icon-add{
font-size: 28px;right: 5px;left: auto;bottom: 5px;position: absolute;
}
.ro-text{
	display:none;
background-color: rgba(255,255,255,0.9);
height: 100%;
left: 0;
padding: 15px;
position: absolute;
top: 0;
vertical-align: middle;
width: 100%;
z-index: 10;
}
.kirja:hover .ro-text{
	display: block;
}
.ro-text .ro-text-cell{
color: #505050;
display: block;
font-size: 28px;
/* height: 100%; */
text-align: center;
vertical-align: middle;
position: absolute;
top: 50%;
transform: translateY(-50%);
width: 100%;
width: calc(100% - 30px);
}
@media (min-width:1200px){
.container {
width: 920px;
}
}