/*!
Theme Name: saho
Theme URI: http://underscores.me/
Author: DevNet
Author URI: http://underscores.me/
Description: Saho Wordpress theme
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: saho
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

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.

saho is based on Underscores https://underscores.me/, (C) 2012-2017 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 https://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;
}

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
--------------------------------------------------------------*/
body,
button,
input,
select,
optgroup,
textarea {
	color: #404040;
	font-family: sans-serif;
	font-size: 16px;
	font-size: 1rem;
	line-height: 1.5;
}

.nf-label-span,
.nf-form-fields-required {
	color:#fff;
	font-size:18px;
}

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;
}

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 https://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
	box-sizing: inherit;
}

body {
	background: #fff;
	/* Fallback for when there is no custom background color defined. */
}

hr {
	background-color: #ccc;
	border: 0;
	height: 1px;
	margin-bottom: 1.5em;
}

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

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%;
}

/*--------------------------------------------------------------
# Forms
--------------------------------------------------------------*/
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
	border: 1px solid;
	border-color: #ccc #ccc #bbb;
	border-radius: 3px;
	background: #e6e6e6;
	color: rgba(0, 0, 0, 0.8);
	font-size: 12px;
	font-size: 0.75rem;
	line-height: 1;
	padding: .6em 1em .4em;
}

button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
	border-color: #ccc #bbb #aaa;
}

button:active, button:focus,
input[type="button"]:active,
input[type="button"]:focus,
input[type="reset"]:active,
input[type="reset"]:focus,
input[type="submit"]:active,
input[type="submit"]:focus {
	border-color: #aaa #bbb #bbb;
}

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: 1px solid #ccc;
	border-radius: 3px;
	padding: 3px;
}

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;
}

select {
	border: 1px solid #ccc;
}

textarea {
	width: 100%;
}

/*--------------------------------------------------------------
# Navigation
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Links
--------------------------------------------------------------*/
a {
	color: royalblue;
}

/*--------------------------------------------------------------
## Menus
--------------------------------------------------------------*/
.main-navigation {
	clear: both;
	display: block;
	float: left;
}

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

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

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

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

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

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

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

.main-navigation a {
	display: block;
	text-decoration: none;
}

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

@media screen and (min-width: 37.5em) {
	.menu-toggle {
		display: none;
	}
	.main-navigation ul {
		display: block;
	}
}

.site-main .comment-navigation, .site-main
.posts-navigation, .site-main
.post-navigation {
	margin: 0 0 1.5em;
	overflow: hidden;
}

.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
	float: left;
	width: 50%;
}

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

/*--------------------------------------------------------------
# Accessibility
--------------------------------------------------------------*/
/* Text meant only for screen readers. */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	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;
	clip-path: none;
	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;
}

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

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

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

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

.bypostauthor {
	display: block;
}

/*--------------------------------------------------------------
# Infinite scroll
--------------------------------------------------------------*/
/* Globally hidden elements when Infinite Scroll is supported and in use. */
.infinite-scroll .posts-navigation,
.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;
}

/*--------------------------------------------------------------
# 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%;
}

/* Make sure logo link wraps around logo image. */
.custom-logo-link {
	display: inline-block;
}

/*--------------------------------------------------------------
## 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;
}
/*******************************************************************************************************************************************************************************************/
/*************************************** REAL STUFF ***************************************************************************************************************************************/
/*******************************************************************************************************************************************************************************************/
html {
	overflow-x: hidden;
}
body {
	margin: 0;
	font-family: 'Nunito Sans', sans-serif;
	/*background-color: #1a4366; */
	background: linear-gradient(to right, #102b45, #1a4365);
	word-break: normal;
	white-space: normal;
}

.site-main {
	margin: 0 103px 0 70px;
}

/* Basic for text */
p {
  font-size: 18px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: initial;
  letter-spacing: normal;
  text-align: left;
  color: #ffffff;
}

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

/* Main header */
h1 {
  font-size: 96px;
  font-weight: lighter;
  font-style: normal;
  font-stretch: normal;
  line-height: normal;
  letter-spacing: -3.2px;
  text-align: center;
  color: #ffffff;
  

  
  margin-top: 287px;
  margin-bottom: 8px;
  /*white-space: nowrap; */
}

/* Secondary headers */
h2 {
  font-size: 44px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: normal;
  letter-spacing: -1.5px;
  color: #ffffff;
}

h3 {
  font-size: 44px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.09;
  letter-spacing: -0.6px;
  text-align: left;
  color: #ffffff;
}

h4 {
  font-size: 14px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: normal;
  letter-spacing: 3px;
  text-align: left;
  color: #31bef8;
}
h5 {
	font-size: 18px;
	font-weight: 500;
	letter-spacing: 1.9px;
	text-align: left;
	color: #ffffff;
}

#myVideo {
	position: fixed;
    right: 0;
    bottom: 0;
    min-width: 100%; 
    min-height: 100%;
}

/* includes logo, navbar */
header {
	/* background-image: url("../images/saho-videoheader.png"); */
	/* background-color: #1a4366; */
	width: 100%;
	
	/* position: fixed; */
	bottom: 0;
}

/* Logo image */
.sahologo {
  width: 94px;
  height: 42px;
  object-fit: contain;
  font-family: 'Roboto';
  font-size: 36px;
  font-weight: 900;
  font-style: normal;
  font-stretch: normal;
  line-height: normal;
  letter-spacing: -0.5px;
  text-align: left;
  color: #ffffff;
  
  margin: 32px 0 0 71px;
  display: inline;
  
  position: relative;
  z-index: 999;
}

.skiplink {
	left: -9999px;
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	z-index: -999;
}

/* Navigation bar */
.navbar {
	margin: 32px 75px 0 50px;
	float: right;
	right: 0px;
	list-style: none;
	display: inline;
}

/* Navigation bar item */
.navbar li {
	padding: 10px 20px 13px 20px;
	display: inline;
	border-bottom: solid 1px #ffffff;
}

.navbar li a {
  height: 16px;
  font-size: 12px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: normal;
  letter-spacing: 2.6px;
  text-align: left;
  color: #ffffff;
  text-transform: uppercase;
}

li.current-menu-item {
	border-bottom: solid 1px #31bef8;
}

#headingdiv {
	margin: auto;
	margin-bottom: 623px;
}

/* The p under the h1 */
#headingdiv p {
	font-size: 21px;
	letter-spacing: -0.3px;
	text-align: center;
	margin: 0;
}
#headingdiv .korostus {
	padding: 0 15px; 
	background-color: rgba(16, 37, 56, 0.8); 
	color: #fff;	
}

#content {
	/* Footer flush up to 2560x1440p */
	min-height: 80vh;
}

/* generic row for content */
.rowdiv {
}

/* gallery, company info */
.bluediv {
	background: linear-gradient(250deg, #1a4366, #0b2036);
}

/* rent */
.darkbluediv {
	background-color: #0c2239;
}

.rowdiv, .bluediv, .darkbluediv {
	padding: 66px 80px 0 71px;
}
.fulldiv {
	padding: 86px 80px 71px 71px;
}

/* If two half-width columns side by-side, they should have 75+75 px of padding between them */
.col-sm-6:first-child:not(:only-child) {
	padding-right: 75px;
}
.col-sm-6+.col-sm-6 {
	padding-left: 75px;
}

.patch {
	display: block;
	
}
/* When you want your p centered on screen */
.centertextdiv {
	width: 45%;
	margin: auto;
}

.centertextdiv p {
	text-align: center;
}

.textcolumn h2{
	margin-bottom: 26px;
}

.linkbutton, .haslinkbutton a {
	padding: 20px 36px 20px 41px;
	background-color: transparent;
  border: solid 1px #ffffff;
  font-family: Avenir;
  font-size: 14px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: normal;
  letter-spacing: 0.4px;
  text-align: center;
  color: #ffffff;
	transition-duration: 0.4s;
	cursor: pointer;
}
.linkbutton:hover, .haslinkbutton a:hover {
	background-color: rgba(255, 255, 255, 0.09);
	text-decoration: none;
	color: #ffffff;
}

footer {
	background-color: #101c33;
	padding: 68px 0 20px 71px;
	/*position: fixed;
	left: 0;
	bottom: 0;
	width: 100%*/
}

/* Logo by text */
#sahoOy {
  font-family: 'Roboto';
  font-size: 20px;
  font-weight: 900;
  font-style: normal;
  font-stretch: normal;
  line-height: normal;
  letter-spacing: -0.3px;
  text-align: left;
  color: #ffffff;
  text-transform: uppercase;
}

/* VIDEO STUFF */
.video-background {
  background: #000;
  position: fixed;
  top: 0; right: 0; bottom: 0; left: 0;
  z-index: -99;
}
.video-foreground,
.video-background iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 1000px; /* percentage doesn't work? */
  pointer-events: none;
  display: none;
}
@media (min-aspect-ratio: 16/9) {
  .video-foreground { height: 100%; top: -10%;}
}
@media (max-aspect-ratio: 16/9) {
  .video-foreground { width: 300%; left: -100%; }
}
/* CAROUSEL STUFF */
#carousel-wrap {
	padding-left: 80px;
	padding-right: 50px;
}
#carousel-wrap a {
	background: transparent;
}
#carousel-content {
	/*margin-left: 50px;
	margin-right: 50px;*/
	margin-left: auto;
	margin-right: auto;
	width: 90%;
	max-width: 820px;
	max-height: 468px;
}
.controldiv {
	display: inline-block;
}
#captiondiv {
	margin: auto;
	padding-left: 62px;
}
#captiondiv h5 {
	margin-bottom: 11px;
}

.row.vertical-align {
	margin-top: 60px;
	margin-bottom: 61px;
}
.carousel-inner {
	background-color: #0c2239;
	-webkit-box-shadow: 2px 0px 34px 0px rgba(0,0,0,0.5);
	-moz-box-shadow: 2px 0px 34px 0px rgba(0,0,0,0.5);
	box-shadow: 2px 0px 34px 0px rgba(0,0,0,0.5);
}

.item {
	/*max-height: 468px;*/
	/*background-color: #000;*/
	
	display: block;
	width: 100%;
	position: relative;
	height: 0;
	padding: 56.25% 0 0 0;
	overflow: hidden;
}
.carousel-inner>.item>img {
	/*max-height: 468px;*/
	position: absolute;
	display: block;
	max-width: 100%;
	max-height: 100%;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	margin: 0 auto;
	object-fit: contain;
}

.carousel-control.left {
	margin-left: -13%;
}
.carousel-control.right {
	margin-right: -13%;
}
.saho-arrow {
	position: absolute;
	width: 75%;
	max-width: 92px;
	max-height: 93px;
	top: 0;
	bottom: 0;
	margin-top: auto;
	margin-bottom: auto;
}
.saho-arrow.left {
	left: 0;
}
.saho-arrow.right {
	right: 0;
}
/*.carousel-control {
	position: static;
}*/

/* NAV BAR BUTTON STUFF */
#menuToggle
{
  display: block;
  position: relative;
  top: 50px;
  left: 50px;
  
  z-index: 1;
  
  -webkit-user-select: none;
  user-select: none;
}

#menuToggle input
{
  display: block;
  width: 40px;
  height: 32px;
  /* position: absolute; */
  top: -7px;
  left: -5px;
  cursor: pointer;
  opacity: 0; /* hide this */
  z-index: 2; /* and place it over the hamburger */
  -webkit-touch-callout: none;
  
  transform: translate(0, -32px);
}

/*
 * Just a quick hamburger
 */
#menuToggle div span
{
  display: block;
  width: 33px;
  height: 4px;
  margin-bottom: 5px;
  position: relative;
  background: #cdcdcd;
  border-radius: 3px;
  z-index: 1;
  transform-origin: 4px 0px;
  
  transform: translate(30px, -30px);
  
  transition: transform 0.5s cubic-bezier(0.77,0.2,0.05,1.0),
              background 0.5s cubic-bezier(0.77,0.2,0.05,1.0),
              opacity 0.55s ease;
}
/*
#menuToggle div span:first-child
{
  transform-origin: 0% 0%;
}

#menuToggle div span:nth-last-child(2)
{
  transform-origin: 0% 100%;
}


 * Transform all the slices of hamburger
 * into a crossmark.
 
#menuToggle input:checked ~ div span
{
  opacity: 1;
  transform: rotate(45deg) translate(-2px, -1px);
}


 * But let's hide the middle one.
 
#menuToggle input:checked ~ div span:nth-last-child(3)
{
  opacity: 0;
  transform: rotate(0deg) scale(0.2, 0.2);
}


 * Ohyeah and the last one should go the other direction
 
#menuToggle input:checked ~ div span:nth-last-child(2)
{
  transform: rotate(-45deg) translate(0, -1px);
}
*/

#menuToggle input:checked ~ ul
{
  /* display: block; */
  margin-top: -80px;
}

#menuToggle div, #menuToggle input {
	position: relative;
	float: right;
}

/* CONTACT FORM STUFF */
.form-control {
}
label {
	color: #ffffff;
	font-size: 14px;
	font-weight: 400;
}
.caldera-grid .control-label {
	font-size: 16px;
	font-weight: 400;
}
label[for=lomakevalinta] {
	font-size: 18px;
}
#lomakevalinta {
	height: 34px;
	font-size: 12px;
}


.row.rowdiv:first-of-type {
	padding: 50px;
}
/***************************************** MEDIA QUERIES ******************************************************************************************************************************************/
@media screen and (max-width: 1599px) {
	.navbar li {
		padding-right: 10px;
		padding-left: 10px;
	}
}

@media screen and (max-width: 1199px) {
	.sahologo {
		margin-left: 31px;
	}
	
	.navbar {
		margin-right: 20px;
	}
	.navbar li a {
		font-size: 12px;
		letter-spacing: 2.5px;
	}
	
	.rowdiv, .bluediv, .darkbluediv {
		padding-right: 60px;
	}
}

/* Medium (tablet) */
@media screen and (max-width: 991px) {
	.container-fluid {
		padding: 0;
	}
	
	.video-foreground,
	.video-background, iframe {
		display: none;
	}
	header {
		/*background-color: #1a4366;*/
	}
	
	.navbar {
		/*margin: -20px 30px 0 0;*/
		margin: 0;
		padding: 0;
		width: 100%;
		border: none;
	}
	.navbar li {
		display: list-item;
		float: none;
		padding: 13px 10px 10px 10px;
	}
	.navbar li a {
		letter-spacing: 2px;
	}
	.navbar li:not(.current-menu-item){
		border-bottom: 1px solid rgba(49, 190, 248, .15)
	}
	.navbar li:first-child {
		padding-top: 90px;
	}
	
	#menuToggle {
		width: 100%;
		top: 0;
		left: 0;
	}
	#primary-menu {
		display: block;
		position: absolute;
	  width: 100%;
	  margin-top: -500px;
	  list-style-type: none;
	  -webkit-font-smoothing: antialiased;
	  /* to stop flickering of text in safari */
	  /*
	  transform-origin: 0% 0%;
	   transform: translate(-60%, 42%);*/
	  
		/*animation: not-checked-anim .2s both;
		transition: .2s;*/
		transition: margin ease .5s;
		background-color: #1a4366;
	}
	
	#headingdiv {
		width: auto;
		margin-bottom: 5%;	
	}
	#headingdiv h1 {
		margin-top: 60px;
		font-size: 80px;
		white-space: normal;
		height: auto;
		
	}
	#headingdiv p {
		white-space: normal;
	}
	
	#captiondiv h5 {
		margin-top: 11px;
		text-align: center;
	}
	
	.linkbutton, .haslinkbutton a {
		padding: 17px 41px 13px 42px
	}
	
	.row {
		margin: 0;
	}
	
	.row.rowdiv:first-of-type {
		padding: 0;
	}
}

/* Small (landscape phone) */
@media screen and (max-width: 767px) {
	.sahologo {
		margin-left: 5px;
		margin-top: 5px;
	}
	.navbar li:first-child {
		padding-top: 60px;
	}
	#menuToggle input:checked ~ ul
	{
	  /* display: block; */
	  margin-top: -50px;
	}
	
	#headingdiv {
		width: auto;
	}
	#headingdiv h1 {
		font-size: 80px;
	}
	
	.centertextdiv {
		width: 100%;
	}
	
	.rowdiv, .bluediv, .darkbluediv {
		padding: 30px 5px 5px 5px;
	}
	
	.col-sm-6+.col-sm-6 {
		padding-left: 15px;
	}
	
	#carousel-wrap {
		padding-left: 60px;
		padding-right: 60px;
	}
	
	#captiondiv {
		padding-left: 30px;
	}
	
	h4 {
		margin-top: 12px;
	}
	
	footer {
		padding: 20px 5px 5px 10px;
	}
	
}

/* Very small (portrait phone) */
@media screen and (max-width: 575px) {
	.sahologo {
		width: 52px;
		height: 24px;
	}
	#headingdiv {
		margin-bottom: 0;
		transform: translate(0, -50px);
	}
	#headingdiv h1 {
		font-size: 36px;
		margin-top: 0;
	}
	h2 {
		font-size: 24px;
		letter-spacing: -0.3px;
	}
	p {
		font-size: 16px;
	}
	#headingdiv p {
		font-size: 16px;
	}
	
	#menuToggle div span {
		transform: translate(30px, -23px);
	}
	
	.row, .row.vertical-align {
		margin-top: 0;
		margin-bottom: 0;
	}
	
	#captionheading{
		display: none;
	}
	
	#carousel-wrap {
		padding-left: 35px;
		padding-right: 35px;
	}
	
	.col-sm-6, .col-lg-6, .col-md-6 {
		padding-left: 5px;
		padding-right: 5px;
	}
	
	/* Or maybe md? */
	.col-sm-6:first-child:not(:only-child) {
		padding-left: 5px;
		padding-right: 5px;
	}
	.col-sm-6+.col-sm-6 {
		padding-left: 5px;
	}
}
@media screen and (max-width: 430px) {
	#headingdiv + .row {
		margin-top: -17%;
	}
}
@media screen and (max-width: 360px) {
	#headingdiv + .row {
		margin-top: -25%;
		padding-top: 50px;
	}
}
@media screen and (max-width: 330px) {
	
}


/* Large devices (desktops, 992px and up) */
@media screen and (min-width: 992px) {
	.container-fluid {	
		background-image: none !important; /* Gets rid of wordpress's background image */
		background: transparent;
	}
	
	.video-foreground,
	.video-background iframe {
		display: block;
	}
	
	#menuToggle input, #menuToggle div span {
		display: none;
	}
	#menuToggle {
		top: 0;
		left: 0;
	}
	.navbar li:first-child {
	padding-left: 10px;
	}
	.navbar li:last-child {
	padding-right: 10px;
	}
}

@media screen and (min-width: 1601px) {
	.video-foreground,
	.video-background iframe {
		height: 1200px;
	}
	#headingdiv {
		margin-bottom: 400px;
	}
}
@media screen and (min-width: 2500px) {
	.video-foreground,
	.video-background iframe {
		height: 1500px;
	}
	
	.navbar {
		margin-right: 95px;
	}
	.navbar li {
		padding-right: 22px;
		padding-left: 22px;
	}
	
	#headingdiv {
		margin-bottom: 700px;
	}
	
	.rowdiv, .bluediv, .darkbluediv {
		padding-right: 100px;
	}
	
	.centertextdiv {
		width: 35%;
	}
	
	#carousel-wrap {
		padding-left: 15px;
		padding-right: 15px;
	}
	
	#captiondiv {
		padding-left: 15px;
	}
}
}
/* almost 4k ? */
@media screen and (min-width: 3800px) { /*
	#headingdiv {
		margin-bottom: 1300px;
	}
	
	.rowdiv, .bluediv, .darkbluediv {
		padding-left: 700px;
		padding-right: 700px;
	}*/
}