/*
	Theme Name: Weistämön Lankku
	Theme URI: http://web-veistamo.fi
	Description: Weistämö WordPress Starter Theme
	Version: 0.0.3
	Author: Janne Rättyä, Web-Veistämö Oy
	Author URI: http://web-veistamo.fi

	License: MIT
	License URI: http://opensource.org/licenses/mit-license.php
*/


img {
    max-width: 100%;
    height: auto;
}
h1 {font-size: 2em;}
h2 {font-size: 1.5rem;}
h3 {font-size: 1.3rem;}
.nopadding {
	padding: 0;
}
.card.full{
	width: 100%;
}
.material-icons {
	vertical-align: middle;
}
/* Rules for sizing the icon. */
.material-icons.md-18 { font-size: 18px; }
.material-icons.md-24 { font-size: 24px; }
.material-icons.md-36 { font-size: 36px; }
.material-icons.md-48 { font-size: 48px; }

/* Rules for using icons as black on a light background. */
.material-icons.md-dark { color: rgba(0, 0, 0, 0.54); }
.material-icons.md-dark.md-inactive { color: rgba(0, 0, 0, 0.26); }

/* Rules for using icons as white on a dark background. */
.material-icons.md-light { color: rgba(255, 255, 255, 1); }
.material-icons.md-light.md-inactive { color: rgba(255, 255, 255, 0.3); }

.bg-opacity {
	position: relative;
	z-index: 1;
}
.bg-opacity:after {
    content: "";
    background: rgba(255, 255, 255, 0.4);
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: -1;
}
.screen-reader-text {
	position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0;
}
.browserupgrade {
    margin-bottom: 0;
    border-radius: 0;
}
.wrapper {
	position: relative;
}


/*------------------------------------*\
    HEADER
\*------------------------------------*/

.site-header {
    /*position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 999;*/
}
.extra-nav {
	background: #E3E3E3;
	position: relative;
	font-size: .9rem;
}
.extra-nav > ul {
	margin: 0;
	padding: 0 10px;
	list-style-type: none;
	text-align: right;
}
.extra-nav > ul > li{
	display: inline-block;
}
.extra-nav > ul > li > a{
	display: block;
	padding: 5px 8px;
}
.site-header .navbar {
	/*display: -webkit-box; 
	display: -moz-box; 
	display: -ms-flexbox; 
	display: -webkit-flex; 
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    flex-wrap: wrap;*/
    background: #fff;
}

.site-header.headroom .navbar,.site-header.headroom.headroom--not-top.headroom--pinned .navbar,.site-header.headroom.headroom--not-top.headroom--animating .navbar {
    -webkit-transition:-webkit-transform 200ms;
    -ms-transition: -ms-transform 200ms;
    transition: transform 200ms
}

.site-header.headroom--not-top .navbar,.site-header.headroom--unpinned .navbar {
    -webkit-transition: none;
    -ms-transition: none;
    transition: none
}

.site-header.headroom--not-top .navbar,.site-header.headroom--animating .navbar,.site-header.headroom--animating.headroom--top .navbar {
    -webkit-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    transform: translateY(-100%)
}

.site-header.headroom--top .navbar,.site-header.headroom--pinned .navbar {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0)
}

.site-header.headroom--not-top .navbar,.site-header.headroom--animating .navbar {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    background: #fff;
    border-bottom: 1px solid #d4d4d4
}
.site-header.headroom--not-top .navbar-brand>img,
.site-header.headroom--animating .navbar-brand>img{
    max-height: 50px;
}


.site-header-sidebar #nav-wrapper{
	flex-grow: 0;
}
.site-header-sidebar + main .page-header.has-featured-img {
	min-height: auto;
}
.site-header-sidebar .navbar .nav {
	margin: 4rem 0 2rem;
}


.site-header a {
	color: #000;
}
.navbar-brand {
    margin-right: auto;
    width: 70%;
    max-width: 300px;
    white-space: normal;
}
.logo-img {
    max-height: 100px;
}
.site-title {
    font-size: 1.5rem;
    margin: .5rem auto;
}
.site-description {
	font-size: 1rem;
	line-height: 1.2;
	margin-bottom: 0;
    font-weight: 400;
}
.navbar-toggler {
	outline: none;
	top: 1.25rem;
	font: inherit;
    display: inline-block;
    overflow: visible;
    margin: 0;
    padding: 1rem;
    cursor: pointer;
    transition-timing-function: linear;
    transition-duration: .2s;
    transition-property: opacity,filter;
    text-transform: none;
    color: inherit;
    border: 0;
    background-color: transparent;
}
.navbar-toggler.is-active .hamburger-inner {
    transition-delay: .12s;
    transition-timing-function: cubic-bezier(.215,.61,.355,1);
    transform: rotate(45deg);
}
.hamburger-box {
    position: relative;
    display: inline-block;
    width: 30px;
    height: 24px;
}
.hamburger-inner {
    top: 50%;
    display: block;
    margin-top: -2px;
}
.hamburger-inner, 
.hamburger-inner:after, 
.hamburger-inner:before {
    position: absolute;
    width: 30px;
    height: 4px;
    transition-timing-function: cubic-bezier(.55,.055,.675,.19);
    transition-duration: 75ms;
    transition-property: transform;
    background-color: #000;
}
.hamburger-inner:after, 
.hamburger-inner:before {
    display: block;
    content: "";
}
.hamburger-inner:before {
	top: -10px;
    transition: top 75ms ease .12s,opacity 75ms ease;
}
.hamburger-inner:after {
    bottom: -10px;
    transition: bottom 75ms ease .12s,transform 75ms cubic-bezier(.55,.055,.675,.19);
}
.navbar-toggler.is-active .hamburger-inner:before {
    top: 0;
    transition: top 75ms ease,opacity 75ms ease .12s;
    opacity: 0;
}
.navbar-toggler.is-active .hamburger-inner:after {
    bottom: 0;
    transition: bottom 75ms ease,transform 75ms cubic-bezier(.215,.61,.355,1) .12s;
    transform: rotate(-90deg);
}
.navbar-toggler:focus, 
.navbar-toggler:hover {
    text-decoration: none;
    background: transparent;
    border: 0;
    outline: none;
    color: inherit;
}
.site-header .navbar .nav {
    margin: 80px 15px 2rem;
}
.navbar-nav .nav-item+.nav-item {
    margin-left: 0;
}
.navbar-nav .nav-item {
    float: none;
}
.navbar-nav .nav-link {
    text-align: center;
}
.nav-item.btn {
    padding: 0;
    text-transform: inherit;
    letter-spacing: inherit;
}
.nav-item.btn,
.nav-item.btn:hover,
.nav-item.btn:focus {
    background: transparent;
    border: 0;
    color: inherit;
}
.nav-item.btn a.nav-link {
    color: inherit;
    padding: .5rem 1rem;
    border: solid 1px #000;
}
.nav-link .nav-desc {
    display: block;
    clear: both;
}
#nav-wrapper {
	/*-webkit-flex: 0 1 100%;
    flex: 0 1 100%;
    position: absolute;
    background: rgba(0, 0, 0, 0.5);
    top: 0;
    left: 0;
    right: 0;
    z-index: -1;*/
}


/*------------------------------------*\
    MAIN
\*------------------------------------*/

.page-header {
	/*padding: 120px 0;*/
	/*margin-bottom: 2rem;*/
	background-color: #F5F5F5;
	text-align: center;
}
.page-header.has-featured-img,
.page-header.layout-slider .slide{
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
}
.page-header.has-featured-img > .container{
	width: 100%;
}
.page-header.layout-slider {
	padding: 0;
}
.page-header.layout-slider .slide-inner {
    margin: 0;
    background: transparent;
}
.page-header.layout-slider .slide-inner-wrapper {
    padding: 4rem 0;
}
.page-title {
	margin-bottom: 0;
}

/*------------------------------------*\
    PAGES
\*------------------------------------*/

.section,
.entry-content{
	padding-top: 2rem;
	padding-bottom: 2rem;
}
.page-template-template-empty .entry-content{
	padding: 0;
}


/*------------------------------------*\
    POSTS
\*------------------------------------*/

.hentry {
    margin: 2rem 0;
}
.single .hentry {
    margin: 0;
}
.post-thumbnail {
    float: left;
    margin-right: 1rem;
}
.entry-title {
    margin-bottom: .5rem;
}
.hentry .entry-meta {
    font-size: .9rem;
    margin-bottom: .5rem;
}
.single .hentry .entry-meta {
    margin-bottom: 0;
    margin-top: .5rem;
}
.hentry .sticky-post-badge {
    margin-bottom: .5rem;
    color: #fff;
    background-color: #868e96;
}
.taxonomy-description {
    margin-top: .5rem;
}
.taxonomy-description p {
    margin-bottom: .5rem;
}
.taxonomy-description p:last-of-type {
    margin-bottom: 0;
}
.post-navigation {
    background: #efefef;
    padding: 2rem;
}
.post-navigation::after {
    content: "";
    display: table;
    clear: both;
}
.post-navigation .nav-next,
.nav-next .meta-nav {
    float: right;
}
.post-navigation .nav-previous,
.nav-previous .meta-nav {
    float: left;
}
.post-navigation .meta-nav {
    margin: 0 1rem;
}

.pagination,
.page-links {
	display: block;
	text-align: center;
	clear: both;
	margin-bottom: 2rem;
}
.pagination .page-numbers,
.page-links .page-numbers {
    background-color: #f9f9f9;
    min-width: 2rem;
    padding: 8px;
    display: inline-block;
    cursor: pointer;
}
.pagination .page-numbers.dots,
.pagination .page-numbers.next, 
.pagination .page-numbers.prev {
    width: auto;
    font-size: .9em;
    background: none;
}
.pagination span.page-numbers {
    background-color: #eee;
}
.author-info {
    border-top: solid 1px #e4e4e4;
    padding-top: 2rem;
    margin-top: 2rem;
}


/*------------------------------------*\
    COMMENTS
\*------------------------------------*/

.comments {
    margin-top: 2rem;
}
.comments ul{
	padding: 0;
	list-style-type: none; 
}
.comments > ul {
	border-top: solid 1px #f4f4f4;
	font-size: 1rem;
}
.comments ul.children {
    margin-left: 1.5rem;
}
.comment-body {
    padding: 1rem 0;
    position: relative;
    border-bottom: solid 1px #f4f4f4;
}
.comment-author.vcard {
    display: inline-block;
}
.comment-author .avatar {
    margin-right: 1rem;
}
.comment-metadata {
	text-align: right;
    position: absolute;
    bottom: 1rem;
    right: 0;
    font-size: .8rem;
}
.comment-content {
    margin: .5rem 0;
}
.comment-content p{
    margin-bottom: 0;
}
.comments .reply {
    font-size: .8rem;
}
.comment-reply-link {
	display: inline-block;
	background: #f4f4f4;
	padding: 2px 12px;
}
.comment-respond {
    font-size: 1rem;
    margin: 1rem 0;
}
.comment-reply-title small {
    font-size: 1rem;
    margin-left: 1rem;
}
.comment-form label {
    display: block;
}
.comment-form #comment {
    width: 100%;
    border: solid 1px #e4e4e4;
    padding: 1rem;
    display: block;
}
.comment-form input:not([type=submit]) {
    width: 100%;
    border: solid 1px #e4e4e4;
}
.comment-form .submit {
	width: 100%;
}


/*------------------------------------*\
	WOOCOMMERCE
\*------------------------------------*/

.woocommerce .woocommerce-MyAccount-navigation ul {
	list-style-type: none;
	padding: 0;
}


/*------------------------------------*\
	FOOTER
\*------------------------------------*/

.footer{
	background-color: #D5D5D5;
}
.footer .credits,
.footer .widgets {
    padding: 2rem 0;
}
.widget {
    margin-bottom: 2rem;
}
.widget .menu,
.widget > ul {
    list-style-type: none;
    padding: 0;
}
.widget ul.children {
    list-style-type: none;
    padding-left: 1.5rem;
    margin-top: .5rem;
}
.widget .menu li,
.widget > ul > li,
.widget ul.children > li {
    margin-bottom: .5rem;
}
.footer .credits,
.footer .footer-custom{
	text-align: center;
}
.widget-title {
    font-size: 1.1rem;
}
.widget .tagcloud .tag-cloud-link {
    font-size: .9rem!important;
    display: inline-block;
    padding: .25rem .5rem;
    margin: 0 .25rem .5rem 0;
    background: #eaeaea;
}


/*------------------------------------*\
    RESPONSIVE
\*------------------------------------*/

/* Extra small devices (portrait phones, less than 544px)
// No media query since this is the default in Bootstrap

// Small devices (landscape phones, 544px and up)*/
@media (min-width: 544px) {
	h1 {font-size: 2.5em;}
    h2 {font-size: 2rem;}
    h3 {font-size: 1.75rem;}
	.flex {
		display: -webkit-box; 
		display: -moz-box; 
		display: -ms-flexbox; 
		display: -webkit-flex; 
	    display: flex;
	    /*align-items: center;*/
	    -webkit-box-align: stretch;
	    -webkit-align-items: stretch;
	    -ms-flex-align: stretch;
	    align-items: stretch;
    	flex-wrap: wrap;
	}
	.comments ul.children{
		margin-left: 3rem; 
	}
	.comment-form .submit {
		width: auto;
	}
}

/* Medium devices (tablets, 768px and up)*/
@media (min-width: 768px) {
	#nav-wrapper {
		/*float: right;
	    flex: 0 1 auto;
	    background: transparent;
	    position: relative;
	    top: auto;
	    left: auto;
	    right: auto;
	    z-index: auto;*/
	}
	.navbar-brand {
	    width: auto; /* fixes safari bug */
	}
	.site-header .navbar .nav {
	    margin: auto;
	}
	.site-header-sidebar .navbar .nav {
		margin: 4rem 0 2rem;
	}
	.navbar-nav .nav-item+.nav-item {
	    margin-left: 1rem;
	}
	.navbar-nav .dropdown .nav-item+.nav-item {
	    margin-left: 0;
	}
	.navbar-nav .nav-item {
	    float: left;
	}
	.dropdown-menu li {
	    display: block;
	    width: 100%;
	    clear: both;
	}
	/*.page-header {
		padding: 120px 2rem;
	}*/
	.comment-metadata {
		float: right;
	    position: relative;
	    bottom: auto;
    	right: auto;
    	margin-top: 12px;
	}
	.comment-body {
	    padding: 1rem;
	}
	.comment-content{
	    margin: 0 4rem;
	}
	.comments .reply {
		position: absolute;
	    bottom: 1rem;
	    right: 1rem;
	}
	.sidebar {
	    position: relative;
	    float: right;
	    width: 33.333333%;
	    padding: 2rem 0 2rem 15px;
	}
	.page.has-sidebar .entry-content:not(.page-template-template-empty),
	.blog.has-sidebar .primary,
	.archive.has-sidebar .primary,
	.search-results.has-sidebar .primary,
	.page.has-sidebar .comments {
		float: left;
	    width: 66.666667%;
	    padding-right: 15px;
	}
}

/* Large devices (desktops, 992px and up)*/
@media (min-width: 992px) {
	.site-header-sidebar {
		width: 20%;
	    float: left;
	    min-height: 100vh;
	    position: fixed;
	}
	.admin-bar .site-header-sidebar {
	    min-height: calc(100vh - 32px);
	}
	.site-header-sidebar + main{
		width: 80%;
	    float: right;
	}
	.site-header-sidebar + main + footer{
		width: 80%;
	    float: right;
	}
	.site-header-sidebar .navbar {
	    flex-direction: column;
	    align-items: flex-start;
	}
	.site-header-sidebar .navbar-brand {
	    margin-bottom: 4rem;
	}
	.site-header-sidebar .navbar .nav {
		margin: auto;
	}
}

/* Extra large devices (large desktops, 1200px and up)*/
@media (min-width: 1200px) {}

/* Extra small devices (portrait phones, less than 543px)*/
@media (max-width: 543px) {}

/* Small devices (landscape phones, less than 767px)*/
@media (max-width: 767px) {}

/* Medium devices (tablets, less than 991px)*/
@media (max-width: 991px) {}

/* Large devices (desktops, less than 1199px)*/
@media (max-width: 1199px) {}



/*------------------------------------*\
    MISC
\*------------------------------------*/

::selection {
	background:#04A4CC;
	color:#FFF;
	text-shadow:none;
}
::-webkit-selection {
	background:#04A4CC;
	color:#FFF;
	text-shadow:none;
}
::-moz-selection {
	background:#04A4CC;
	color:#FFF;
	text-shadow:none;
}

/*------------------------------------*\
    WORDPRESS CORE
\*------------------------------------*/

.aligncenter,
div.aligncenter {
	display:block;
	margin:5px auto 5px auto;
}
a img.aligncenter {
	display:block;
	margin-left:auto;
	margin-right:auto;
}
.wp-caption {
	background:#FFF;
	border:1px solid #F0F0F0;
	max-width:96%;
	padding:5px 3px 10px;
	text-align:center;
}

.wp-caption img {
	border:0 none;
	height:auto;
	margin:0;
	max-width:98.5%;
	padding:0;
	width:auto;
}
.wp-caption .wp-caption-text,
.gallery-caption {
	font-size:11px;
	line-height:17px;
	margin:0;
	padding:0 4px 5px;
}
.sticky {

}
.bypostauthor {

}

.gallery {
	position: relative;
    margin: 2rem 0;
}
.gallery-item {
    display: inline-block;
    width: 50%;
    padding: 0 1rem;
    text-align: center;
    vertical-align: middle;
}
.gallery-icon {
	
}
.gallery-columns-1 .gallery-item {
    width: 100%;
}
.gallery-icon img {
    margin: auto;
}
@media (min-width: 544px) {
	.alignnone {
		margin:5px 20px 20px 0;
	}
	.alignright {
		float:right;
		margin:5px 0 20px 20px;
	}
	.alignleft {
		float:left;
		margin:5px 20px 20px 0;
	}
	a img.alignright {
		float:right;
		margin:5px 0 20px 20px;
	}
	a img.alignnone {
		margin:5px 20px 20px 0;
	}
	a img.alignleft {
		float:left;
		margin:5px 20px 20px 0;
	}
	.wp-caption.alignnone {
		margin: 5px 20px 0 0;
	}
	.wp-caption.alignleft {
		margin: 5px 40px 20px 0;
	}
	.wp-caption.alignright {
		margin:5px 0 20px 40px;
	}
	.gallery-columns-2 .gallery-item {
	    width: 50%;
	}
	.gallery-columns-3 .gallery-item {
	    width: 33.33%;
	}
	.gallery-columns-4 .gallery-item {
	    width: 25%;
	}
	.gallery-columns-5 .gallery-item {
	    width: 20%;
	}
	.gallery-columns-6 .gallery-item {
	    width: 16.66%;
	}
	.gallery-columns-7 .gallery-item {
	    width: 14.285%;
	}
	.gallery-columns-8 .gallery-item {
	    width: 12.5%;
	}
	.gallery-columns-9 .gallery-item {
	    width: 11.11%;
	}
}

/*------------------------------------*\
    PRINT
\*------------------------------------*/

@media print {
	* {
		background:transparent !important;
		color:#000 !important;
		box-shadow:none !important;
		text-shadow:none !important;
	}
	a,
	a:visited {
		text-decoration:underline;
	}
	a[href]:after {
		content:" (" attr(href) ")";
	}
	abbr[title]:after {
		content:" (" attr(title) ")";
	}
	.ir a:after,
	a[href^="javascript:"]:after,
	a[href^="#"]:after {
		content:"";
	}
	pre,blockquote {
		border:1px solid #999;
		page-break-inside:avoid;
	}
	thead {
		display:table-header-group;
	}
	tr,img {
		page-break-inside:avoid;
	}
	img {
		max-width:100% !important;
	}
	@page {
		margin:0.5cm;
	}
	p,
	h2,
	h3 {
		orphans:3;
		widows:3;
	}
	h2,
	h3 {
		page-break-after:avoid;
	}
}
