/*
Theme Name: Lala
Author: La&La
Author URI: http://lala.fi
Description: La&La:n wp-teema
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: LICENSE 
Text Domain: lala
Tags:

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.

Lala is based on Underscores http://underscores.me/, (C) 2012-2016 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal http://necolas.github.io/normalize.css/
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Normalize
# Typography
# Elements
# Forms
# Navigation
	## Links
	## Menus
# Accessibility
# Alignments
# Clearings
# Widgets
# Content
	## Posts and pages
	## Comments
# Infinite scroll
# Media
	## Captions
	## Galleries
--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Normalize
--------------------------------------------------------------*/
html {
	font-family: sans-serif;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust:     100%;
}

body {
	margin: 0;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
	display: block;
}

audio,
canvas,
progress,
video {
	display: inline-block;
	vertical-align: baseline;
}

audio:not([controls]) {
	display: none;
	height: 0;
}

[hidden],
template {
	display: none;
}

a {
	background-color: transparent;
}

a:active,
a:hover {
	outline: 0;
}

abbr[title] {
	border-bottom: 1px dotted;
}

b,
strong {
	font-weight: bold;
}

dfn {
	font-style: italic;
}

h1 {
	font-size: 2em;
	margin: 0.67em 0;
	line-height: 1.1;
}

mark {
	background: #ff0;
	color: #000;
}

small {
	font-size: 80%;
}

sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sup {
	top: -0.5em;
}

sub {
	bottom: -0.25em;
}

img {
	border: 0;
}

svg:not(:root) {
	overflow: hidden;
}

figure {
	margin: 1em 40px;
}

hr {
	box-sizing: content-box;
	height: 0;
}

pre {
	overflow: auto;
}

code,
kbd,
pre,
samp {
	font-family: monospace, monospace;
	font-size: 1em;
}

button,
input,
optgroup,
select,
textarea {
	color: inherit;
	font: inherit;
	margin: 0;
}

button {
	overflow: visible;
}

button,
select {
	text-transform: none;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
	-webkit-appearance: button;
	cursor: pointer;
}

button[disabled],
html input[disabled] {
	cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
	border: 0;
	padding: 0;
}

input {
	line-height: normal;
}

input[type="checkbox"],
input[type="radio"] {
	box-sizing: border-box;
	padding: 0;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

fieldset {
	border: 1px solid #c0c0c0;
	margin: 0 2px;
	padding: 0.35em 0.625em 0.75em;
}

legend {
	border: 0;
	padding: 0;
}

textarea {
	overflow: auto;
}

optgroup {
	font-weight: bold;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

td,
th {
	padding: 0;
}

/*--------------------------------------------------------------
# Typography
--------------------------------------------------------------*/


/**
 * @license
 * MyFonts Webfont Build ID 3374861, 2017-04-17T06:32:16-0400
 * 
 * The fonts listed in this notice are subject to the End User License
 * Agreement(s) entered into by the website owner. All other parties are 
 * explicitly restricted from using the Licensed Webfonts(s).
 * 
 * You may obtain a valid license at the URLs below.
 * 
 * Webfont: Buket-FatBasic by Ahmet Altun
 * URL: http://www.myfonts.com/fonts/ahmet-altun/buket/fat-basic/
 * 
 * Webfont: Buket-RomanShiny by Ahmet Altun
 * URL: http://www.myfonts.com/fonts/ahmet-altun/buket/roman-shiny/
 * 
 * 
 * License: http://www.myfonts.com/viewlicense?type=web&buildid=3374861
 * Licensed pageviews: 500,000
 * Webfonts copyright: Copyright (c) 2017 by Ahmet Altun. All rights reserved.
 * 
 * © 2017 MyFonts Inc
*/


/* @import must be at top of file, otherwise CSS will not work */
@import url("//hello.myfonts.net/count/344741");

  
@font-face {font-family: 'Buket-FatBasic';src: url('webfonts/344741_0_0.eot');src: url('webfonts/344741_0_0.eot?#iefix') format('embedded-opentype'),url('webfonts/344741_0_0.woff2') format('woff2'),url('webfonts/344741_0_0.woff') format('woff'),url('webfonts/344741_0_0.ttf') format('truetype');}
 
  
@font-face {font-family: 'Buket-RomanShiny';src: url('webfonts/3449C9_0_0.eot');src: url('webfonts/3449C9_0_0.eot?#iefix') format('embedded-opentype'),url('webfonts/3449C9_0_0.woff2') format('woff2'),url('webfonts/3449C9_0_0.woff') format('woff'),url('webfonts/3449C9_0_0.ttf') format('truetype'),url('webfonts/3449C9_0_0.svg#wf') format('svg');}
 
 
 
.Buket-FatBasic { font-family: Buket-FatBasic; }
.Buket-RomanShiny { font-family: Buket-RomanShiny; }


html {
	font-size: 18px;
}

body,
button,
input,
select,
textarea {
	color: #404040;
	font-family: 'Alegreya', serif;
	line-height: 1.3;
}

h1 {
	font-family: Buket-RomanShiny;
	font-weight: normal;
	margin-top: 0;
	font-size: 2.4rem;
}

h2 {
	font-style: italic;
	font-weight: normal;
	margin-top: 2em
}

h3 {
	font-weight: normal;
	text-transform: uppercase;
	font-size: 1rem;
	letter-spacing: 0.05em;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	clear: both;
}

p {
	margin-bottom: 1.5em;
}

dfn,
cite,
em,
i {
	font-style: italic;
}

blockquote {
	margin: 0 1.5em;
	font-style: italic;
	position: relative;
	padding: 2rem 0 0 0;
}

blockquote:before,
q:before {
	font-size: 4rem;
	display: block;
	position: absolute;
	margin-left: -10px;
	top: 0;
	content: "\201C";
	line-height: 0.8;
	color: #96dbe2;
}


blockquote,
q {
	quotes: "" "";
}

address {
	margin: 0 0 1.5em;
}

pre {
	background: #eee;
	font-family: "Courier 10 Pitch", Courier, monospace;
	font-size: 15px;
	font-size: 0.9375rem;
	line-height: 1.6;
	margin-bottom: 1.6em;
	max-width: 100%;
	overflow: auto;
	padding: 1.6em;
}

code,
kbd,
tt,
var {
	font-family: Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
	font-size: 15px;
	font-size: 0.9375rem;
}

abbr,
acronym {
	border-bottom: 1px dotted #666;
	cursor: help;
}

mark,
ins {
	background: #fff9c0;
	text-decoration: none;
}

big {
	font-size: 125%;
}

/*--------------------------------------------------------------
# Elements
--------------------------------------------------------------*/
html {
	box-sizing: border-box;
}

*,
*:before,
*:after { /* Inherit box-sizing to make it easier to change the property for components that leverage other behavior; see http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
	box-sizing: inherit;
}

body {
	background: rgba(213,231,231,0.7);
	background: -moz-linear-gradient(top, rgba(213,231,231,0.7), rgba(255,88,88,0.7));
	background: -webkit-gradient(left top, left bottom, color-stop(0%, rgba(213,231,231,0.7)), color-stop(100%, rgba(255,88,88,0.7)));
	background: -webkit-linear-gradient(top, rgba(213,231,231,0.7), rgba(255,88,88,0.7));
	background: -o-linear-gradient(top, rgba(213,231,231,0.7), rgba(255,88,88,0.7));
	background: -ms-linear-gradient(top, rgba(213,231,231,0.7), rgba(255,88,88,0.7));
	background: linear-gradient(to bottom, rgba(213,231,231,0.7), rgba(213,231,231,0.7), rgba(255,88,88,0.8));
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#d5e7e7', endColorstr='#ff5858', GradientType=0 );
	background-image:
		url('img/texture2.png'),
		linear-gradient(
			rgba(213, 231, 231, 1),
			rgba(213, 231, 231, 1),
			rgba(255, 88, 88, 0.4),
			rgba(255, 88, 88, 0.4),
			rgba(255, 88, 88, 0.4),
			rgba(255, 88, 88, 0.4));
}

body.dots {
	background: #d5e7e7; /* For browsers that do not support gradients */
	background: -webkit-linear-gradient(#d5e7e7, #ff5858); /* For Safari 5.1 to 6.0 */
	background: -o-linear-gradient(#d5e7e7, #ff5858); /* For Opera 11.1 to 12.0 */
	background: -moz-linear-gradient(#d5e7e7, #ff5858); /* For Firefox 3.6 to 15 */
	background-image:
		linear-gradient(
			rgba(213, 231, 231, 0.4),
			rgba(213, 231, 231, 0.4), 
			rgba(255, 88, 88, 0.4)),
		url('img/dot_bg_iso.png'),
		url('img/dot_bg_iso.png'),
		url('img/dot_bg_iso.png'),
		url('img/dot_bg_iso.png'),
		url('img/dot_bg_iso.png'),
		url('img/dot_bg_iso.png'),
		linear-gradient(
			rgba(213, 231, 231, 0.4),
			rgba(213, 231, 231, 0.4),
			rgba(255, 88, 88, 0.4));
	background-size: 100%, 269px, 353px, 397px, 419px, 443px, 401px, 100%;
	background-position: top, 10px 10px, 26px 26px, 31px 31px, 33px 33px, 137px 137px, 13px 13px, top; 
}

body.cross {
	background: #d5e7e7; /* For browsers that do not support gradients */
	background: -webkit-linear-gradient(#d5e7e7, #ff5858); /* For Safari 5.1 to 6.0 */
	background: -o-linear-gradient(#d5e7e7, #ff5858); /* For Opera 11.1 to 12.0 */
	background: -moz-linear-gradient(#d5e7e7, #ff5858); /* For Firefox 3.6 to 15 */
	background-image:
		linear-gradient(
			rgba(213, 231, 231, 0.4),
			rgba(213, 231, 231, 0.4), 
			rgba(255, 88, 88, 0.4)),
		url('img/cross_bg_thin.png'),
		url('img/cross_bg_thin.png'),
		url('img/cross_diagonal_bg.png'),
		url('img/cross_diagonal_bg.png'),
		linear-gradient(
			rgba(213, 231, 231, 0.4),
			rgba(213, 231, 231, 0.4),
			rgba(255, 88, 88, 0.4));
	background-size: 100%, 20px, 21px, 20px, 21px, 100%;
	background-position: top, 10px 10px, 26px 26px, 10px 10px, 26px 26px, top; 
}

body.cross {
	background: transparent;
	background-image:
		url('img/cross_bg_thin.png'),
		url('img/cross_bg_thin.png'),
		url('img/cross_diagonal_bg.png'),
		url('img/cross_diagonal_bg.png');
	background-size: 100%, 20px, 21px, 20px, 21px, 100%;
	background-position: top, 10px 10px, 26px 26px, 10px 10px, 26px 26px, top; 
}


body.small-dots {
	background: #d5e7e7; /* For browsers that do not support gradients */
	background-image:
		linear-gradient(
			rgba(213, 231, 231, 0.4),
			rgba(213, 231, 231, 0.4), 
			rgba(255, 88, 88, 0.4)),
		url('img/dot_small_bg.png?v2'),
		url('img/dot_small_bg.png?v2'),
		url('img/dot_small_bg.png?v2'),
		url('img/dot_small_bg.png?v2'),
		linear-gradient(
			rgba(213, 231, 231,0.4),
			rgba(213, 231, 231, 0.4),
			rgba(255, 88, 88, 0.4));
	background-size: 100%, 17px, 23px, 37px, 49px, 100%;
	background-position: top, 10px 10px, 26px 26px, 15px 15px, 20px 20px, top; 
}


hr, .page .entry-title:after, .page-title:after, .single-tyonayte .entry-header:after {
	content: "";
	background: none;
	display: block;
	width: 100px;
	height: 15px;
	border: 0;
	border-top: 2px solid;
	border-bottom: 2px solid;
	margin: 0 auto;
	margin-top: 3rem;
	margin-bottom: 3rem;
	padding: 0;
	box-sizing: border-box;
}


ul,
ol {
	margin: 0 0 1.5em 1em;
}

ul {
	list-style: disc;
}

ol {
	list-style: decimal;
}

li > ul,
li > ol {
	margin-bottom: 0;
	margin-left: 1.5em;
}

dt {
	font-weight: bold;
}

dd {
	margin: 0 1.5em 1.5em;
}

img {
	height: auto; /* Make sure images are scaled correctly. */
	max-width: 100%; /* Adhere to container width. */
}

figure {
	margin: 1em 0; /* Extra wide images within figure tags don't overflow the content area. */
}

table {
	margin: 0 0 1.5em;
	width: 100%;
}

/* Header */

.site-header, .site-footer {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: justify;
	justify-content: space-between;
	width: 100%;
	align-items: center;
	padding: 20px 20px;
	border: 10px solid #ffc758;
  	border-image: repeating-linear-gradient( 45deg, #ffc758, #ffc758 0.5%, transparent 0.5%, transparent 1.2%) 10;
	border-top: 0;
	border-left: 0;
	border-right: 0;
}

.site-header {
	background: #e2eeee;
	position: fixed;
	top: 0;
	z-index: 1000;
	padding: 15px 20px 15px 20px;
}

.site-header svg, .site-footer svg {
	width: 35px;
	height: 35px;
}

.site-header svg path, .site-footer svg path  {
	fill: #ff5858;
}

.site-header .logoborder, .site-footer .logoborder {
	display: none;
}

.site-content {
	margin-top: 110px;
}

.home .site-header {
	padding: 20px;
}

.home .site-content {
	margin-top: 70px;
}


.site-footer {
	border-top: 10px solid;
	border-left: 0;
	border-right: 0;
	border-bottom: 0;
}


.home .site-branding {
	display: none;
}

.site-title {
	font-size: 18px;
	font-size: 1rem;
	font-weight: 400;
	margin: 0;
	max-width: 60px;
}

/* .reflect {
	-moz-transform: scaleX(-1);
	-o-transform: scaleX(-1);
	-webkit-transform: scaleX(-1);
	transform: scaleX(-1); 
	filter: FlipH;
	-ms-filter: "FlipH";
} */


/* Footer */

.site-footer {
	background: #d5e7e7;
}

.site-info {
	width: 100%;
	text-align: center;
	font-size: 0.8rem;
}

.site-footer section {
	max-width: 420px;
	margin: 0 auto;
}


/* Content area */

.content-area {
	/* max-width: 1100px; */
	margin: 0 auto;
	padding: 0 40px;
}

/*--------------------------------------------------------------
# Forms
--------------------------------------------------------------*/
button,
input[type="button"],
input[type="reset"],
input[type="submit"],
.posts-navigation a {
	border: none;
	border-radius: 0;
	background: #fe5e5e;
	color: #fff;
	font-family: Buket-FatBasic;
	font-size: 18px;
	font-size: 1rem;
	line-height: 1;
	padding: .6em 1em .4em;
	text-transform: uppercase;
}

button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover,
.posts-navigation a:hover {
	background: #333;
}

button:focus,
input[type="button"]:focus,
input[type="reset"]:focus,
input[type="submit"]:focus,
button:active,
input[type="button"]:active,
input[type="reset"]:active,
input[type="submit"]:active,
.posts-navigation a:active {
	position: relative;
	top: 2px;
	outline: none;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
	color: #666;
	border: none;
	border-radius: 0;
	padding: 5px;
	background: #e2eeee;
	width: 100%;
}

select {
	border: 1px solid #ccc;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="range"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="color"]:focus,
textarea:focus {
	color: #111;
	outline: none;
	border: 1px solid #ffc758;
}

textarea {
	width: 100%;
}

label {
	display: block;
	margin-bottom: 10px;
	text-transform: uppercase;
	letter-spacing: 0.05em;
}

.gform_body, .gform_footer {
	max-width: 500px;
	margin: 0 auto;
}

.gform_body h2 {
	text-align: center;
}

.gform_wrapper ul, .gform_wrapper li { 
	list-style: none;
	margin-left: 0;
	padding-left: 0;
	margin-top: 2.7rem;
}

.gform_wrapper .gfield {
	margin-top: 2rem
}

.gform_wrapper fieldset {
	border: none;
	padding: 5px 0;
}

.gfield_required_text {
	font-size: 80%;
	margin-left: 5px;
}

.gform_wrapper label {
	margin-bottom: 3px;
	text-transform: none;
	letter-spacing: normal;
}

.gfield_label {
	font-size: 1.15rem;
}


ul.gfield_radio, ul.gfield_checkbox {
	margin-top: 10px;
}

.gfield_radio label, .gfield_checkbox label,
.ginput_container_consent label {
	display: inline;
	text-transform: none;
	margin-left: 10px;
}

input[aria-label="Muu"] {
	width: auto;
	margin-left: 10px;
}

.gfield_radio li, .gfield_checkbox li {
	margin: 0 0 10px 0;
}

.gfield_description {
	font-style: italic;
	margin-top: 5px;
}

.ginput_container_fileupload {
	background: #e2eeee;
	padding: 1.5rem 1rem 0.1rem 1rem;
	text-align: center;
}


.gform_body input[type="button"] {
	background: #ffc758;
	margin-right: 20px;
}

.ginput_container_fileupload button, .ginput_container_fileupload input[type="button"] {
	font-family: inherit;
	background: #fff;
	color: #111;
	margin-left: 10px;
}

.gform_page_footer {
	margin-top: 4rem;
}


.gf_progressbar_wrapper {
	text-align: center;
	margin-top: 4rem;
}

.gf_progressbar {
	background: #eee;
}

.gf_progressbar_percentage {
	background: #ffc758;
	padding: 5px;
}

.validation_message {
	color: #ff5858;
}

.validation_error {
	background: #fedede;
	padding: 10px 5px;
	text-align: center;
	max-width: 500px;
	margin: 2rem auto;
}

.ui-datepicker {
	background: #fff;
	padding: 10px 20px 0;
}

.ui-datepicker-header {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 250px;
}

.ui-datepicker-header > * {
	padding: 5px 0;
}

.ui-datepicker-calendar {
	margin-top: 10px;
	text-align: center;
}

.ui-datepicker-calendar td {
	padding: 2px;
}

/* Radios to slider */

.rangeslider > label {
	display: none;
}


.rangeslider li {
	display: inline;
	margin: 0;
}

.radios-to-slider {
    background-color: #e2eeee;
    display: block;
    position: relative;
    margin-bottom: 80px;
    -webkit-box-sizing: content-box;
    -moz-box-sizing: content-box;
    -o-box-sizing: content-box;
    box-sizing: content-box;
}

.radios-to-slider.medium {
    height: 22px;
    -webkit-border-radius: 25px;
    -moz-border-radius: 25px;
    -o-border-radius: 25px;
    border-radius: 25px;
    padding: 5px;
}


/* Levels */

.radios-to-slider .slider-level {
    background-color: #fff;
    cursor: pointer;
    position: absolute;
    display: block;
}

.radios-to-slider.medium .slider-level {
    width: 22px;
    height: 22px;
    -webkit-border-radius: 22px;
    -moz-border-radius: 22px;
    -o-border-radius: 22px;
    border-radius: 22px;
    z-index: 2;
}


/* Labels */

.slider-label {
    position: absolute;
    display: block;
    cursor: pointer;
    color: #5e5e5e;
    text-align: center;
}

.slider-label-active {
    font-weight: bold;
}

.radios-to-slider.medium .slider-label {
    top: 35px;
    width: 44px;
    margin-left: 0;
    font-size: 0.9rem;
}


/* Slider bar */

.radios-to-slider .slider-bar {
    background-color: transparent;
    float: left;
    height: 100%;
    width: 0;
    pointer-events: none;
    display: none;
    position: absolute;
    left: 0;
    top: 0;
    min-width: 32px !important;
}

.slider-bar.transition-enabled {
    -webkit-transition: .2s;
    -moz-transition: .2s;
    -o-transition: .2s;
    transition: .2s;
}

.radios-to-slider.medium .slider-bar {
    -webkit-border-radius: 22px;
    -moz-border-radius: 22px;
    -o-border-radius: 22px;
    border-radius: 22px;
}


/* Slider Knob */

.slider-knob {
    float: right;
    background-color: #ffc758;
}

.radios-to-slider.medium .slider-knob {
    width: 32px;
    height: 32px;
    -webkit-border-radius: 25px;
    -moz-border-radius: 25px;
    -o-border-radius: 25px;
    border-radius: 25px;
}

.gfield--type-honeypot {
	height: 0;
	overflow: hidden;
}

fieldset.gfield {
	margin: 20px 0;
}

/*--------------------------------------------------------------
# Navigation
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Links
--------------------------------------------------------------*/
a {
	color: #ff5858;
	text-decoration: none;
}


a:hover,
a:focus,
a:active {
	color: inherit;
}

a:focus {
	outline: thin dotted;
}

a:hover,
a:active {
	outline: 0;
}

/*--------------------------------------------------------------
## Menus
--------------------------------------------------------------*/
.main-navigation {
	clear: both;
	display: block;
	float: left;
	width: 100%;
	font-family: Buket-FatBasic;
	font-size: 17px;
	font-size: 0.9444rem;
	text-transform: uppercase;
	text-align: center;
	margin: 0 20px;
}

.main-navigation > div {
	max-width: 900px;
	margin: 0 auto;
}

.home .main-navigation > div {
	max-width: none;
	margin: 0 auto;
}

.main-navigation ul {
	display: none;
	list-style: none;
	margin: 0;
	padding-left: 0;
	text-align: center;
}

.main-navigation li {
	float: left;
	position: relative;
}

.main-navigation a {
	display: block;
	padding: 8px 10px 4px 10px;
}

.main-navigation ul ul {
	box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
	float: left;
	position: absolute;
	top: 1.5em;
	left: -999em;
	z-index: 99999;
}

.main-navigation ul ul ul {
	left: -999em;
	top: 0;
}

.main-navigation ul ul a {
	width: 200px;
}

.main-navigation ul ul li {

}

.main-navigation li:hover > a,
.main-navigation li.focus > a {
}

.main-navigation ul ul :hover > a,
.main-navigation ul ul .focus > a {
}

.main-navigation ul ul a:hover,
.main-navigation ul ul a.focus {
}

.main-navigation ul li:hover > ul,
.main-navigation ul li.focus > ul {
	left: auto;
}

.main-navigation ul ul li:hover > ul,
.main-navigation ul ul li.focus > ul {
	left: 100%;
}

.main-navigation .current_page_item > a,
.main-navigation .current-menu-item > a,
.main-navigation .current_page_ancestor > a,
.main-navigation .current-menu-ancestor > a,
.single-tyonayte .tyonaytteet-menu-item > a,
.tax-tyonaytteet_tag .tyonaytteet-menu-item > a {
	background: #96dbe2;
	color: inherit;

}

/* Small menu. */
.menu-toggle,
.main-navigation.toggled ul {
	display: block;
	float: none;
}

.menu-toggle {
	margin: 5px auto 0;
	background: transparent;
	border-bottom: 5px solid #ff5858;
	border-top:  5px solid #ff5858;
	position: relative;
	width: 40px;
	height: 26px;
}

.menu-toggle:hover, .menu-toggle:active {
	background: transparent;
	border-bottom: 5px solid #ff5858;
	border-top:  5px solid #ff5858;
	position: relative;
	top: 0;
}

.menu-toggle:focus {
	outline: none;
	border-bottom: 5px solid #ff5858;
	border-top:  5px solid #ff5858;
}

.menu-toggle:before {
	content: "";
	height: 5px;
	width: 40px;
	background: #ff5858;
	position: absolute;
	left: 0;
	top: calc(50% - 2px);
}



.main-navigation.toggled ul {
	margin-top: 2.5em;
	text-align: center;
}

.main-navigation.toggled li {
	float: none;
	margin: 0 0 10px 0;
}

.main-navigation.toggled a {
	display: inline;
}

.site-main .comment-navigation,
.site-main .posts-navigation,
.site-main .post-navigation {
	margin: 0 auto 5rem auto;
	overflow: hidden;
	max-width: 940px;
}

.post-navigation h1 {
	text-align: center;
}

.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
	float: left;
	width: calc(50% - 75px);
}

.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
	float: right;
	text-align: right;
	width: calc(50% - 75px);
}

.site-main .posts-navigation {
	margin-top: 2rem;
	text-align: center;
}

.posts-navigation .nav-previous, .posts-navigation .nav-next {
	float: none;
	display: inline;
}

.nav-box {
	position: relative;
	background: #fff;
    padding: 20px;
}

.nav-box img {
	width: 100%;
}

.nav-box h2 {
	text-align: center;
	font-size: 1.2rem;
	margin: 0.5em 0 0;
}

.nav-previous {
	margin-left: 40px;
}

.nav-previous:before {
	content: " ";
	z-index: 1000;
	position: absolute;
	top: calc(50% - 30px);
	left: 0;
	margin-left: -40px;
	width: 0; 
	height: 0; 
	border-top: 30px solid transparent;
	border-bottom: 30px solid transparent; 
  	border-right:30px solid #fff;
}

.nav-next {
	margin-right: 40px;
}

.nav-next:after {
	content: " ";
	z-index: 1000;
	position: absolute;
	top: calc(50% - 30px);
	right: 0;
	margin-right: -40px;
	width: 0; 
	height: 0; 
	border-top: 30px solid transparent;
	border-bottom: 30px solid transparent; 
  	border-left:30px solid #fff;
}

.posts-navigation .nav-previous, .posts-navigation .nav-next {
	margin:0;
}

.posts-navigation .nav-previous:before, .posts-navigation .nav-next:after {
	display: none;
}

.posts-navigation a {
	display: inline-block;
	margin: 0 20px;
}

.posts-navigation a:hover {
	color: #fff;
}

/*--------------------------------------------------------------
# Accessibility
--------------------------------------------------------------*/
/* Text meant only for screen readers. */
.screen-reader-text {
	clip: rect(1px, 1px, 1px, 1px);
	position: absolute !important;
	height: 1px;
	width: 1px;
	overflow: hidden;
	word-wrap: normal !important; /* Many screen reader and browser combinations announce broken words as they would appear visually. */
}

.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	color: #21759b;
	display: block;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: bold;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000; /* Above WP toolbar. */
}

/* Do not show the outline on the skip link target. */
#content[tabindex="-1"]:focus {
	outline: 0;
}

/*--------------------------------------------------------------
# Alignments
--------------------------------------------------------------*/
.alignleft {
	display: inline;
	float: left;
	margin-right: 1.5em;
}

.alignright {
	display: inline;
	float: right;
	margin-left: 1.5em;
}

.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
}

/*--------------------------------------------------------------
# Clearings
--------------------------------------------------------------*/
.clear:before,
.clear:after,
.entry-content:before,
.entry-content:after,
.comment-content:before,
.comment-content:after,
.site-header:before,
.site-header:after,
.site-content:before,
.site-content:after,
.site-footer:before,
.site-footer:after {
	content: "";
	display: table;
	table-layout: fixed;
}

.clear:after,
.entry-content:after,
.comment-content:after,
.site-header:after,
.site-content:after,
.site-footer:after {
	clear: both;
}

/*--------------------------------------------------------------
# Widgets
--------------------------------------------------------------*/
.widget {
	margin: 0 0 1.5em;
}

/* Make sure select elements fit in widgets. */
.widget select {
	max-width: 100%;
}

/*--------------------------------------------------------------
# Content
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Posts and pages
--------------------------------------------------------------*/
.sticky {
	display: block;
}

.hentry {
	margin: 0 0 1.5em;
}

.byline,
.updated:not(.published) {
	display: none;
}

.single .byline,
.group-blog .byline {
	display: inline;
}

.single article, .page article, .error404 article  {
	max-width: 860px;
	margin: 70px auto;
	padding: 10px;
}

.page article .border, .single article .border,
.error404 .border {
	padding: 40px;
}

.entry-header h1 {
	margin-top: 0;
	/* These are technically the same, but use both */
  overflow-wrap: break-word;
  word-wrap: break-word;

  -ms-word-break: break-all;
  /* This is the dangerous one in WebKit, as it breaks things wherever */
  word-break: break-all;
  /* Instead use this non-standard one: */
  word-break: break-word;

  /* Adds a hyphen where the word breaks, if supported (No Blink) */
  -ms-hyphens: auto;
  -moz-hyphens: auto;
  -webkit-hyphens: auto;
  hyphens: auto;
}

.page .entry-header, .single-tyonayte .entry-header,
.error404 .entry-header {
	text-align: center;
}

.featured-image {
	margin: 0 0 50px 0;
}

.page-content,
.entry-content,
.entry-summary {
	margin: 1.5em 0 0;
}

.entry-footer {
	margin-top: 2rem;
}

.entry-content > *:last-child,
.entry-content > *:last-child > *:last-child,
.entry-content > *:last-child > *:last-child > *:last-child,
.entry-content-sidebar > *:last-child {
  margin-bottom: 0;
}

.entry-content > *:first-child,
.entry-content > *:first-child > *:first-child,
.entry-content > *:first-child > *:first-child > *:first-child,
.entry-content-sidebar > *:first-child {
  margin-top: 0;
}

.page-links {
	clear: both;
	margin: 0 0 1.5em;
}

.single-tyonayte .entry-content img {
	width: 100%;
}

.entry-content-main {
	width: calc( 100% - 250px);
	float: left;
}

.entry-content-sidebar {
	width: 200px;
	float: right;
	font-size: 0.9em;
}



/* Home page / Masonry */


.masonry {
	margin: 30px auto;
}

.masonry-item, .masonry-lar {
	/* width: 27%; */
	/*width: 286px;*/
	width: 261px;
	display: block;
	background-color: #fff;
	margin: 50px 0;
	padding: 20px;
}

.masonry-large-item {
	display: block;
	background-color: #fff;
	margin: 50px 0;
	padding: 20px;
}

.masonry-large-item img {
	margin-bottom: 1em;
}

.masonry-large-item p {
	font-size: 0.9em;
	line-height: 1.5;
}

a.masonry-item:hover {
	transform: rotate(1deg);
}

.masonry-item *:first-child {
	margin-top: 0;
}

.masonry-item *:last-child {
	margin-bottom: 0;
}

.percent-item-sizer {
	width: 45%;
	height: 0;
}

.percent-gutter-sizer { 
	width: 10%;
}

.gutter-sizer { 
	width: 100px;
}

.border-wrapper {
	border: 10px #fff solid;
	background-color: transparent;
	padding: 10px;
	display: block;
}

.border-wrapper.cross {
	background: transparent;
	background-image:
		url('img/cross_diagonal_bg.png'),
		url('img/cross_diagonal_bg.png');
	background-size: 21px, 20px, 21px, 100%;
	background-position: 26px 26px, top;
}

.border {
	background: #fff;
	padding: 20px;
}

.stamp {
  position: absolute;
}

.big-logo {
  left: calc(50% - 143px);
  top: 0;
  /* width: 27%; */
  padding: 0;
  background: transparent;
  border: 0;
} 

.big-logo img {
	display: block;
}

.big-logo svg {
	width: 100%;
	height: auto;
	display: none;	
}
.big-logo svg:first-of-type {
	display: block;	
}

.big-logo svg path {
	fill: #ffc758;
}


/*.big-logo:hover svg {
	-webkit-filter: url(#filter-4) url(#filter-1);
	filter: url(#filter-4) url(#filter-1);	
}*/

/*
.logo-border {
    border: 13px #ffc758 solid;
    padding: 0 0 0 13px;
}
*/

.lala-description {
  background: #fff;
  padding: 20px;
  margin-top: 100px;
  font-style: italic;
  font-size: 1.11rem;
  text-align: center;
}

.lala-description p {
	margin: 0;
}

.tag-link {
	font-family: 'Buket-RomanShiny', serif;
	font-size: 36px;
	font-size: 2rem;
	text-align: center;
}

.masonry-item.project {
	text-align: center;
}

.ribbon {
	position: absolute;
    height: 0px; 
    width: 111px; 
    padding: 0px; 
    background-color: transparent; 
    top: 12px; 
    right: -23px;
    transform: rotate(41deg); 
    -webkit-transform: rotate(41deg); 
    border-top: 0px transparent; 
    border-left: 30px solid transparent; 
    border-right: 23px solid transparent; 
    border-bottom: 25px solid #96DBE2; 

}

.ribbon-text {
	position: absolute;
	top: 22px;
	right: 0;
	font-family: Buket-FatBasic;
	text-transform: uppercase;
	font-size: 0.6rem;
	transform: rotate(41deg); 
    -webkit-transform: rotate(41deg); 
    color: #000;
}

.masonry-item .project-content > h2:last-of-type {
	font-size: 1.2rem;
	margin-top: 0.5rem;
}

.masonry-item.article h2 {
	text-transform: uppercase;
	font-style: normal;
	letter-spacing: 0.1em;
}

.masonry-item.article p {
	color: #404040;
	font-size: 14px;
	font-size: 0.777rem;
}

.masonry-item.article p.readmore {
	color: inherit;
}

.masonry-item blockquote {
	margin: 0;
}

/* archives */

.archive .page-header, .blog .page-header {
	text-align: center;
	margin: 4em 0 0 0;
}

.archive .page-header a, .blog .page-header a {
	display: inline-block;
	margin: 0 7px;
}

.masonry-large, .infinite-wrap {
	max-width: 1100px;
	margin: 0 auto;
}

.infinite-loader {
	margin: 0 auto;
	text-align: center;
	width: 40px;
}

.percent-item-sizer, .masonry-large-item {
	width: 45%;
}

.masonry-large-item h2 {
	margin-top: 0;
	text-align: center;
}

.masonry-large-item .entry-meta {
	text-align: center;
	margin-top: -1rem;
}

.tyonaytteet-tags {
	max-width: 600px;
	margin: 0 auto 1rem auto;
}


/*--------------------------------------------------------------
## Comments
--------------------------------------------------------------*/
.comment-content a {
	word-wrap: break-word;
}

.bypostauthor {
	display: block;
}

#comments {
	max-width: 860px;
	margin: 0 auto 80px auto;
	background: transparent;
	padding: 10px;
	border: 10px solid #fff;
}

#reply-title {
	font-family: Buket-RomanShiny;
    font-weight: normal;
    font-size: 2.4rem;
    background: #fff;
    margin: 0;
}

.comments-title, .comment-respond {
	background: #fff;
    margin: 0;
    padding: 30px;
}

#comments:before {
	content: "~";
	display: block;
	text-align: center;
	font-family: Buket-FatBasic;
	font-size: 2rem;
	font-style: normal;
	color: #fff;
	margin-top: -75px;
	margin-bottom: 30px;
}

.comment-list {
	background: #fff;
	margin: 0;
	padding: 20px;
	list-style: none;
}

.comment-list li {
	margin-bottom: 2em;
	border-left: 1px dashed #4ec9d6;
	padding-left: 10px;
	margin-left: 10px;
}

.comment-list article {
	margin: 0;
}

.comment-author img {
	display: none;
}

.comment-reply-link {
	text-transform: uppercase;
	font-size: 0.9rem;
	letter-spacing: 0.05rem;
	margin-bottom: 0.5rem;
	display: inline-block;
}

/*--------------------------------------------------------------
# Infinite scroll
--------------------------------------------------------------*/
/* Globally hidden elements when Infinite Scroll is supported and in use. */
.infinite-scroll .posts-navigation, /* Older / Newer Posts Navigation (always hidden) */
.infinite-scroll.neverending .site-footer { /* Theme Footer (when set to scrolling) */
	display: none;
}

/* When Infinite Scroll has reached its end we need to re-display elements that were hidden (via .neverending) before. */
.infinity-end.neverending .site-footer {
	display: block;
}

#infinite-handle {
	text-align: center;
	margin-bottom: 4rem;
}

#infinite-handle span {
	border: none;
    border-radius: 0;
    background: #fe5e5e;
    color: #fff;
    font-family: Buket-FatBasic;
    font-size: 18px;
    font-size: 1rem;
    line-height: 1;
    padding: .6em 1em .4em;
    text-transform: uppercase;
}



/*--------------------------------------------------------------
# Media
--------------------------------------------------------------*/
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
	border: none;
	margin-bottom: 0;
	margin-top: 0;
	padding: 0;
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
	max-width: 100%;
}

/*--------------------------------------------------------------
## Captions
--------------------------------------------------------------*/
.wp-caption {
	margin-bottom: 1.5em;
	max-width: 100%;
}

.wp-caption img[class*="wp-image-"] {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.wp-caption .wp-caption-text {
	margin: 0.8075em 0;
}

.wp-caption-text {
	text-align: center;
}

/*--------------------------------------------------------------
## Galleries
--------------------------------------------------------------*/
.gallery {
	margin-bottom: 1.5em;
}

.gallery-item {
	display: inline-block;
	text-align: center;
	vertical-align: top;
	width: 100%;
}

.gallery-columns-2 .gallery-item {
	max-width: 50%;
}

.gallery-columns-3 .gallery-item {
	max-width: 33.33%;
}

.gallery-columns-4 .gallery-item {
	max-width: 25%;
}

.gallery-columns-5 .gallery-item {
	max-width: 20%;
}

.gallery-columns-6 .gallery-item {
	max-width: 16.66%;
}

.gallery-columns-7 .gallery-item {
	max-width: 14.28%;
}

.gallery-columns-8 .gallery-item {
	max-width: 12.5%;
}

.gallery-columns-9 .gallery-item {
	max-width: 11.11%;
}

.gallery-caption {
	display: block;
}




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

	.gutter-sizer {
		width: 70px;
	}
	
	.masonry-item {
		margin: 35px 0;
	}
	
	.lala-description {
		margin-top: 70px;
	}
	
	.percent-item-sizer, .masonry-large-item {
		width: 48%;
	}
	
	.percent-gutter-sizer { 
		width: 4%;
	}

}


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

	html {
		font-size: 16px;
	}

}


@media screen and (min-width: 990px) {
	.menu-toggle {
		display: none;
	}
	.main-navigation ul {
		display: -ms-flexbox;
		display: flex;
		-ms-flex-pack: justify;
		justify-content: space-around;
	}

	.home .main-navigation ul {
		justify-content: space-between;
	}
}


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


	.site-header {
		align-items: flex-start		
	}

	.main-navigation {
		margin: 0;
	}
}

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

	.entry-content-main, .entry-content-sidebar  {
		width: 100%;
		float: none;
	}

	.entry-content-sidebar {
		padding-top: 0.5rem;
	}

	.entry-content-sidebar:before {
		content: "";
		background: none;
		display: block;
		width: 100px;
		height: 15px;
		border: 0;
		border-top: 2px solid;
		border-bottom: 2px solid;
		margin: 0 auto;
		margin-top: 3rem;
		margin-bottom: 3rem;
		padding: 0;
		box-sizing: border-box;
}

}

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

	.item-sizer, .masonry-item, .percent-item-sizer, .masonry-large-item {
		width: 100%;
		margin: 20px 0;
	}
	
	.masonry-item {
		width: 261px;
		margin-left: auto;
		margin-right: auto;
	}

	.lala-description {
		margin-top: 40px;
	}

	.big-logo {
		left: 0;
	}

	.content-area {
		padding: 0 10px;
	}

	.page article .border, .single article .border, .error404 .border {
		padding: 20px;
	}

	.nav-box img {
    	display: none;
	}
	.nav-box {
		padding: 10px 5px;
			/* These are technically the same, but use both */
	  overflow-wrap: break-word;
	  word-wrap: break-word;

	  -ms-word-break: break-all;
	  /* This is the dangerous one in WebKit, as it breaks things wherever */
	  word-break: break-all;
	  /* Instead use this non-standard one: */
	  word-break: break-word;

	  /* Adds a hyphen where the word breaks, if supported (No Blink) */
	  -ms-hyphens: auto;
	  -moz-hyphens: auto;
	  -webkit-hyphens: auto;
	  hyphens: auto;
	}
	.comment-navigation .nav-previous, .posts-navigation .nav-previous, .post-navigation .nav-previous,
	.comment-navigation .nav-next, .posts-navigation .nav-next, .post-navigation .nav-next {
    	width: calc(50% - 45px);
	}
	.single article, .page article, .error404 article {
		margin: 0px auto 50px auto;
	}

	.site-footer {
		display: block;
		text-align: center;
	}

	.site-footer .site-title {
		margin: 0 auto;
	}

	.site-footer div:last-of-type .site-title {
		display: none;
	}



}	