/*
Theme Name:     Gianna von Haehling ◦ Body & Mind Flow
Theme URI:      
Description: 
Author:         André Pahl
Author URI:     https://andrepahl.com
Version:        4.0
*/

/* 
Site: Gianna von Haehling
*/


/*  =============================================================================
	Plugins
	============================================================================= */

/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */button,hr,input{overflow:visible}progress,sub,sup{vertical-align:baseline}[type=checkbox],[type=radio],legend{box-sizing:border-box;padding:0}html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button;appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:ButtonText dotted 1px}fieldset{padding:.35em .75em .625em}legend{color:inherit;display:table;max-width:100%;white-space:normal}textarea{overflow:auto}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none;appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;appearance:button;font:inherit}details{display:block}summary{display:list-item}[hidden],template{display:none}



/* swiper */
/* without swiper-container-3d, swiper-button-prev, swiper-pagination-progressbar, swiper-lazy-preloader, swiper-container-cube, swiper-container-cube, swiper-container-coverflow, swiper-pagination

/**
 * Swiper 4.1.6
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * http://www.idangero.us/swiper/
 *
 * Copyright 2014-2018 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: February 11, 2018
 */
.swiper-container{margin:0 auto;position:relative;overflow:hidden;list-style:none;padding:0;z-index:1}.swiper-container-no-flexbox .swiper-slide{float:left}.swiper-container-vertical>.swiper-wrapper{-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}.swiper-wrapper{position:relative;width:100%;height:100%;z-index:1;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-transition-property:-webkit-transform;transition-property:-webkit-transform;-o-transition-property:transform;transition-property:transform;transition-property:transform,-webkit-transform;-webkit-box-sizing:content-box;box-sizing:content-box}.swiper-container-android .swiper-slide,.swiper-wrapper{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.swiper-container-multirow>.swiper-wrapper{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.swiper-container-free-mode>.swiper-wrapper{-webkit-transition-timing-function:ease-out;-o-transition-timing-function:ease-out;transition-timing-function:ease-out;margin:0 auto}.swiper-slide{-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;width:100%;height:100%;position:relative;-webkit-transition-property:-webkit-transform;transition-property:-webkit-transform;-o-transition-property:transform;transition-property:transform;transition-property:transform,-webkit-transform}.swiper-invisible-blank-slide{visibility:hidden}.swiper-container-autoheight,.swiper-container-autoheight .swiper-slide{height:auto}.swiper-container-autoheight .swiper-wrapper{-webkit-box-align:start;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start;-webkit-transition-property:height,-webkit-transform;transition-property:height,-webkit-transform;-o-transition-property:transform,height;transition-property:transform,height;transition-property:transform,height,-webkit-transform}

.swiper-container-fade.swiper-container-free-mode .swiper-slide{-webkit-transition-timing-function:ease-out;-o-transition-timing-function:ease-out;transition-timing-function:ease-out}.swiper-container-fade .swiper-slide{pointer-events:none;-webkit-transition-property:opacity;-o-transition-property:opacity;transition-property:opacity}.swiper-container-fade .swiper-slide .swiper-slide{pointer-events:none}.swiper-container-fade .swiper-slide-active,.swiper-container-fade .swiper-slide-active .swiper-slide-active{pointer-events:auto}


/*! other helpers 
	some taken from Boilerplate
	Author: Aaron T. Grogg, based on the work of Paul Irish, Divya Manian, and Elliot Jay Stocks
	http://aarontgrogg.com/
*/
hr{display:block;height:1px;border:0;border-top:1px solid #000;margin:1em 0;padding:0}audio,canvas,img,video{vertical-align:middle}fieldset{border:0;margin:0;padding:0}textarea{resize:vertical}.hidden{display:none!important;visibility:hidden}.visuallyhidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.invisible{visibility:hidden}.clearfix:before,.clearfix:after{content:" ";display:table}.clearfix:after{clear:both}@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:.5cm}p,h2,h3{orphans:3;widows:3}h2,h3{page-break-after:avoid}}




/*  =============================================================================
	colors

	Yellow #f6c603
    Pink #fbe5d6
  	========================================================================== */



/* 	-----------------------------------------------
	fonts
	----------------------------------------------- */

@font-face {
	font-family: 'ap_m';
	src: 	url('fonts/ap_m.eot');
	src: 	url('fonts/ap_m.woff') format('woff'),
			url('fonts/ap_m.ttf') format('truetype'),
			url('fonts/ap_m.svg#webfontbZMpJVsC') format('svg');
	font-weight: normal;
	font-style: normal;
}







/* 	-----------------------------------------------
	general
	----------------------------------------------- */
	
html,
body,
button,
input,
select,
textarea {
    color: #fff;
}

html {
	font-size:100%;
	/* base 16px = 1em/rem */
}

body {
	font-family: 'ap_m', sans-serif;
	font-size: 0.9375em;	    /* 15px */
	line-height: 1.34;         /* 22px */
	color:#fff;
    width: 100vw;
	overflow-x: hidden;
	overflow-y: scroll;
	background-color:  #000;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

div,
article,
section,
aside {
	position:relative;
}

p {
	margin-top:0px;
}

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

table td {
	vertical-align:top;
	text-align:left;
	padding:0;
	margin:0;
}

.table_view {
	display:table;
	table-layout:fixed;
	width:100%;
}

.table_view_nonfix {
	display:table;
}

.table_cell_mid {
	display:table-cell;
	vertical-align:middle;
}

.table_row {
	display:table-row;
}

.table_cell {
	display:table-cell;
	vertical-align:top;
}

ul,
ol {
	list-style:none;
    list-style-image:none;
	margin:0;
	padding:0;	
}

li {
	margin:0;
	padding:0;
}

*,
*:before,
*:after {
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	box-sizing: border-box;
}

*::selection {
	background:#fffd95;
	color:#4d4d4d;
	text-shadow:none;
}

*::-moz-selection {
	background:#fffd95;
	color:#4d4d4d;
	text-shadow:none;
}

* {
	outline:0;
	-webkit-tap-highlight-color:rgba(0,0,0,0);
	-webkit-focus-ring-color:rgba(0, 0, 0, 0);
}

/* for iOS */
textarea,
input[type="text"],
input[type="button"],
input[type="submit"] {
     -webkit-appearance:none;
     appearance:none;
     border-radius:0;
}

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

.clickable,
.like_link {
	cursor: pointer;
	touch-action: manipulation;
	-ms-touch-action: manipulation;
	-webkit-user-select: none;
  	-moz-user-select: none;
  	-ms-user-select: none;
	-webkit-touch-callout: none;
	user-select: none;
}

.noselect {
	-webkit-user-select: none;
  	-moz-user-select: none;
  	-ms-user-select: none;
	-webkit-touch-callout: none;
	user-select: none;
}

a {
	color: #fff;
	text-decoration: none;
	cursor: pointer;
	touch-action: manipulation;
	-ms-touch-action: manipulation;
	-webkit-user-select: none;
  	-moz-user-select: none;
  	-ms-user-select: none;
	-webkit-touch-callout: none;
	user-select: none;
}

a:hover {
	text-decoration:none;
}

.nowrap {
	white-space:nowrap;
}

.nowrap a {
	-ms-word-break: keep-all;
	word-break:  keep-all;
	-webkit-hyphens: none;
	-moz-hyphens: none;
	hyphens: none;
}

.uppercase {
	text-transform:uppercase;
}

.pos_rel {
	position:relative;
}

figure {
	margin:0;
	padding:0;
}

.bg_center {
	background-repeat:no-repeat;
	background-size:cover;
	background-position:center center;	
}

.text_center {
	text-align:center
}


.v_center_parent {
	-webkit-transform-style: preserve-3d;
	-moz-transform-style: preserve-3d;
	transform-style: preserve-3d;
}

.v_center {
	position: relative;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}





/* 	-----------------------------------------------
	Post edit
	----------------------------------------------- */
	
.post-edit-link {
	color:red;
}


	

/* 	-----------------------------------------------
	Animations / transitions
	----------------------------------------------- */
	
.hw_acc {
	-webkit-transform: translate3d(0, 0, 0);
	-moz-transform: translate3d(0, 0, 0);
	-ms-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
}

.faded_out {
	opacity:0!important;
}

.faded_soft {
	opacity:0.3!important;
}

.opacity_fade03 {
	-webkit-transition: opacity .3s ease-in-out;
	-moz-transition: opacity .3s ease-in-out;
	-o-transition: opacity .3s ease-in-out;
	-ms-transition: opacity .3s ease-in-out;
	transition: opacity .3s ease-in-out;
}

.opacity_fade1 {
	-webkit-transition: opacity 1s ease-in-out;
	-moz-transition: opacity 1s ease-in-out;
	-o-transition: opacity 1s ease-in-out;
	-ms-transition: opacity 1s ease-in-out;
	transition: opacity 1s ease-in-out;
}

.transform_all_03 {
	-webkit-transition: all .3s ease-in-out;
	-moz-transition: all .3s ease-in-out;
	-o-transition: all .3s ease-in-out;
	-ms-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;
}

.transform_all_06 {
	-webkit-transition: all 0.6s ease-in-out;
	-moz-transition: all 0.6s ease-in-out;
	-o-transition: all 0.6s ease-in-out;
	-ms-transition: all 0.6s ease-in-out;
	transition: all 0.6s ease-in-out;
}

.transform_all_1 {
	-webkit-transition: all 1s ease-in-out;
	-moz-transition: all 1s ease-in-out;
	-o-transition: all 1s ease-in-out;
	-ms-transition: all 1s ease-in-out;
	transition: all 1s ease-in-out;
}

@-moz-keyframes spin {
  0% {
    -moz-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }

  100% {
    -moz-transform: rotate(359deg);
    -o-transform: rotate(359deg);
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg);
  }
}
@-webkit-keyframes spin {
  0% {
    -moz-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }

  100% {
    -moz-transform: rotate(359deg);
    -o-transform: rotate(359deg);
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg);
  }
}
@-o-keyframes spin {
  0% {
    -moz-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }

  100% {
    -moz-transform: rotate(359deg);
    -o-transform: rotate(359deg);
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg);
  }
}
@keyframes spin {
  0% {
    -moz-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }

  100% {
    -moz-transform: rotate(359deg);
    -o-transform: rotate(359deg);
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg);
  }
}

.spin_me {
	-moz-animation: spin 5s infinite linear;
	-o-animation: spin 5s infinite linear;
	-webkit-animation: spin 5s infinite linear;
	animation: spin 5s infinite linear;
}




/* 	-----------------------------------------------
	Videos
	----------------------------------------------- */
	
.aspect1609 {
	-webkit-backface-visibility:hidden;
	backface-visibility:hidden;
	padding-bottom:56.25%;
	height:0;
	overflow:hidden;
	width:100%;
	position:relative;
}

.aspect1609 iframe,
.aspect1609 object,
.aspect1609 embed,
.aspect1609 video { 
	position:absolute;
	top:0;
	left:0;
	width:100%!important;
	height:100%!important;
}



/* 	-----------------------------------------------
	Images
	----------------------------------------------- */

img {
	width: 100%;
	max-width: 100%;
}

.lazy_img_cont {
	position: relative;
	overflow: hidden;
}

.lazy_img_cont img {
	position: absolute;
	z-index: 2;
	top: 0;
	left: 0;
	width: 100%!important;
	opacity: 0;
	
	-webkit-transition: opacity .6s ease-in-out;
	-moz-transition: opacity .6s ease-in-out;
	-o-transition: opacity .6s ease-in-out;
	-ms-transition: opacity .6s ease-in-out;
	transition: opacity .6s ease-in-out;
}

.lazy_img_cont .lazy_bg {
	position: absolute;
	z-index: 2;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	width: auto;
    heigth: auto;
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	opacity: 0;
	-webkit-transition: opacity .6s ease-in-out;
	-moz-transition: opacity .6s ease-in-out;
	-o-transition: opacity .6s ease-in-out;
	-ms-transition: opacity .6s ease-in-out;
	transition: opacity .6s ease-in-out;
}





/*  =============================================================================
	ICONS
	http://fontello.com
  	========================================================================== */

@font-face {
  font-family: 'fontello';
  src: url('fonts/fontello.eot?84465370');
  src: url('fonts/fontello.eot?84465370#iefix') format('embedded-opentype'),
       url('fonts/fontello.woff?84465370') format('woff'),
       url('fonts/fontello.ttf?84465370') format('truetype'),
       url('fonts/fontello.svg?84465370#fontello') format('svg');
  font-weight: normal;
  font-style: normal;
}


[class^="icon-"]:before, [class*=" icon-"]:before {
	font-family: "fontello";
	font-style: normal;
	font-weight: normal;
	speak: none;
	
	display: inline-block;
	text-decoration: inherit;
	width: 1em;
	margin-right: .2em;
	text-align: center;

	font-variant: normal;
	text-transform: none;
	
	line-height: 1em;
	margin-left: .2em;
	
	font-size: 100%;
	
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
 
.icon-fsb:before { content: '\e800'; }
.icon-fsb-squared:before { content: '\e801'; }
.icon-issgr:before { content: '\e802'; }
.icon-tirr:before { content: '\e803'; }
.icon-tirr-squared:before { content: '\e804'; }
.icon-pintst-circled:before { content: '\e805'; }
.icon-pintst-squared:before { content: '\e806'; }




/* 	-----------------------------------------------
	Typography [ttt]
	reflect changes in custom-editor-style.css 
	----------------------------------------------- */

h1,
h2,
h3 {
	margin-top: 0;
	font-size: inherit;
	line-height: inherit;
    font-weight: normal;
}

#about_us a,
h3 {
    border-bottom: 4px solid;
    display: inline;
}

#about_us a.no_ul {
    border-bottom: 4px solid transparent;
}

.no-touch #about_us a.no_ul:hover {
    border-bottom: 4px solid #fff !important;
}

p.top_margin {
    margin-top: 16px; /* todo mehr? */
}


.no-touch #about_us a:hover {
    text-decoration: none;
    border-bottom: none !important;
}



/* 	-----------------------------------------------
	content [ccc]
	----------------------------------------------- */

#is_mobile_view {
	display: none;
	position: absolute;
	top:-10px;
	left:-10px;
	width:1px;
	height:1px;
	overflow: hidden;
}

#content {
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100%;
	z-index: 10;
	text-align: center;
	overflow: hidden;
}

#logo {
    width: 60vw;
	max-width: 850px;
    aspect-ratio: 1200 / 36;
    background: url("gfx/logo_white.png") no-repeat;
    background-size: contain;
    background-position: center center;
	font-size: 0;
	line-height: 0;
	z-index: 3;
    margin: 0 auto;
}

@media only screen and (max-width: 1023px) {
	#logo {
		width: 70vw;
		max-width: 560px;
		aspect-ratio: 775 / 100;
		background-image: url("gfx/logo_mobile_white.png");
	}
}

#logo span {
    opacity: 0;
}



/* 	-----------------------------------------------
	menu [mmm]
	----------------------------------------------- */

/* main_menu + language switch */
#main_menu {
	position: fixed;
	top: 44px;
	left: 0;
	right: 0;
    width: auto;
	margin: 0 auto;
	z-index: 100;
    text-align: center;
}

#language_switch {
    position: fixed;
	top: 44px;
	right: 34px;
    width: auto;
	margin: 0 auto;
	z-index: 101;
}

#main_menu,
#language_switch {
    font-size: 25px;
    line-height: 1.2;  
}

#main_menu ul {
    margin: 0;
    padding: 0;
}

#main_menu li {
    display: inline-block;
    margin: 0 18px;
    padding: 0;
    position: relative;
}

.lang_selected {
    border-bottom: 2px solid #fff;
    text-decoration: none;
}
.no-touch #language_switch a:hover,
.no-touch #main_menu li:hover,
.no-touch #mobile_menu a:hover,
.no-touch #mobile_menu span.clickable:hover{
    border-bottom: 2px solid #fff;
    text-decoration: none;
}




/* mobile menu */
#hamburger {
	position:fixed;
	display:none;
	z-index:1000;
}

#hamburger_inner {
	background: url(gfx/hamburger-black.svg) no-repeat;
}

#mobile_menu {
	height: 100%;
    top: 0;
	position:fixed !important;
	background-color: rgba(45, 68, 45, 0.92);
}

#mob_menu_swiper {
	position: absolute !important;
	top: 0;
	width: 100%;	
	height: 100%;
}

#mob_menu_swiper .swiper-slide {
	height: auto!important;
}

#mobile_menu p {
	margin: 0;
}

#mobile_menu .overlay_text {
    padding-top: 60px;
}

#mobile_menu a:hover {
    text-decoration: none !important;
}









/* 	-----------------------------------------------
	Overlays
	----------------------------------------------- */

.overlay {
	position:absolute;
	top:0px;
	left:0px;
	width:100%;
    background-color:rgba(5, 45, 76, 0.92);
	z-index:1000;
}

#impressum.overlay {
	background-color:rgba(244, 124, 0, 0.92); 
}

#impressum a {
    text-decoration: none;
    border-bottom: 1px solid;
}


.no-touch #impressum a:hover {
    text-decoration: none;
    border-bottom: 1px solid transparent;
}

.overlay_text {
	font-family: 'ap_m', sans-serif;
	width: 70%;
	margin: 0 auto;
	max-width: 1024px;
	padding-top: 70px;
	padding-bottom: 30px;
}

.big_type {
	font-size: 56px;
	line-height: 1.25;
}

.overlay_text td {
    font-size: 33px;
	line-height: 1.2;
    padding-right: 30px;
}

.overlay_text a:hover {
	text-decoration:underline;	
}

#impressum .overlay_text {
	font-size: 19px;
	line-height: 1.2;
}

#overlay_close {
	position:fixed;
	top:55px;
	right:55px;	
	z-index:1001;
	padding:15px;
	
	-webkit-transition: all 0.4s ease-in-out;
	-moz-transition: all 0.4s ease-in-out;
	-o-transition: all 0.4s ease-in-out;
	-ms-transition: all 0.4s ease-in-out;
	transition: all 0.4s ease-in-out;
}

#overlay_close_inner {
	width:46px;
	height:46px;	
	background:url(gfx/close-01.svg) no-repeat;
}

.no-touch #overlay_close:hover {
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	transform: rotate(-45deg);
}




/* 	-----------------------------------------------
	Gallery
	----------------------------------------------- */

#gallery.overlay {
	background-color:rgba(0, 0, 0, 1); 
}

#gallery .overlay_text {
	width: 90% !important;
	max-width: 9999px;
}

.gallery_item {
    width: 50%;
    display: inline-block;
    vertical-align: top;
    padding: 0 20px;
}

.gallery_item .img {
    height: 0;
    padding-bottom: 66.666%;    
}

.gallery_item .caption {
    padding: 10px 60px 0 60px;
    text-align: center;
    height: 70px;
    overflow: hidden;
}


.gallery_item .lazy_img_cont,
.gallery_item .lazy_bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.gallery_item .portrait .lazy_bg {
    background-size: contain;
}





/* 	-----------------------------------------------
	Announcement
	----------------------------------------------- */

#announcement {
    position: fixed;
    top: 16vh;
    right: 5vw;
    width: 50vw;
    max-width: 480px;
    background-color: #fbe5d6;
    z-index: 900;
    color: #000;
    overflow: hidden;
}

#mobile_announcement {
    display: none;
}

.small_overlay_text {
     padding: 30px;
}

.small_overlay_text p:last-child {
    margin-bottom: 0;
}

.small_overlay_text a,
.small_overlay_text .like_link {
    /* todo image underline */
    color: #000;
    text-decoration: underline;
}

#newsletter_close,
#announcement_close {
	position:absolute;
	top: 2px;
	right: 4px;	
	z-index: 2;
	width: 28px;
    height: 28px;
    background:url(gfx/close-sw.svg) no-repeat;
    background-size: 14px 14px;
    background-position: center center;
	
	-webkit-transition: all 0.4s ease-in-out;
	-moz-transition: all 0.4s ease-in-out;
	-o-transition: all 0.4s ease-in-out;
	-ms-transition: all 0.4s ease-in-out;
	transition: all 0.4s ease-in-out;
}



/* 	-----------------------------------------------
	Newsletter
	----------------------------------------------- */

#newsletter {
    position: fixed;
    top: calc(50% - 150px);
    height: 300px;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 60vw;
    max-width: 600px;
    background-color: #fbe5d6;
    z-index: 901;
    color: #000;
    overflow: hidden;
}

body.has_announcement.is_mobile_view #newsletter {
    background-color: rgb(221, 178, 3);
}


#nl_form_container {
	width: 100%;
}

#nl_form_container .mc-field-group {
	clear:left;
	margin:0;
	padding:0;
}

#nl_form_container .clear {
	clear:both;
}

#nl_form_container input {
	font-family: 'ap_m', sans-serif;
	border: 0;
	width: 100%;
    color: #000;
	background: transparent;
	-webkit-appearance: none;
	appearance: none;
	border-radius: 0;
	padding: 0;
	display: inline-block;
	border-bottom: 2px solid #000;
	margin-bottom: 1rem;
}

#nl_subscribe_link {
	display: inline;
    text-decoration: none;
}

.no-touch #nl_subscribe_link:hover {
    text-decoration: underline;
}


::-webkit-input-placeholder {
	color:#000;
}

:-moz-placeholder {
	color:#000;
}

::-moz-placeholder {
	color:#000;
    opacity: 1;
}

:-ms-input-placeholder {
	color:#000;
}

:focus::-webkit-input-placeholder {
	opacity:0.2;
}

:focus:-moz-placeholder {
	opacity:0.2;
}

:focus::-moz-placeholder {
	opacity:0.2;
}

:focus:-ms-input-placeholder {
	opacity:0.2;
}




/* 	-----------------------------------------------
	footer [fff]
	----------------------------------------------- */

#footer {
	position: fixed;
	width: 100%;
	bottom: 0;
	left: 0;
	background-color: transparent;
	padding: 60px 0 0 0;
	z-index: 100;
}

#footer .footer_right .icon {
	display: none;
}

#mobile_footer {
	display: none;
}

.spacer {
	width: 12px;
	display: inline-block;
}

.footer_inner {
	font-size: 19px;
	line-height: 1.26;
	font-weight: normal;
	font-style: normal;
	margin: 0;
	padding: 20px 34px 16px 34px;
	display: table;
	table-layout: fixed;
	width: 100%;
	color: #fff;
	position: relative;
	z-index: 2;	
}

.footer_left {
	display: table-cell;
	text-align: left;
	width: 50%;	
}

#footer p {
	margin:0;
	display:inline;
}

.footer_right {
	display: table-cell;
	text-align: right;
	width: 50%;
}

#footer a,
#footer .like_link {
	-webkit-transition: all .3s ease-out;
	-moz-transition: all .3s ease-out;
	-o-transition: all .3s ease-out;
	-ms-transition: all .3s ease-out;
	transition: all .3s ease-out;
}

.no-touch #footer a:hover,
.no-touch #footer .like_link:hover {
	color: #fbe5d6 !important;
}







/* 	-----------------------------------------------
	Slider
	----------------------------------------------- */

/* 	----------------------------------------------------------------------------------------------
	royalslider
	http://dimsemenov.com/plugins/royal-slider/documentation/
	---------------------------------------------------------------------------------------------- */

/* v1.0.6 */
/* Core RS CSS file. 95% of time you shouldn't change anything here. */
.royalSlider {
	width: 600px;
	height: 400px;
	position: relative;
	direction: ltr;
}
.royalSlider > * {
	float: left;
}

.rsFade.rsWebkit3d .rsSlide,
.rsFade.rsWebkit3d img,
.rsFade.rsWebkit3d .rsContainer {
    -webkit-transform: none;
	transform: none;
}
.rsOverflow {
	width: 100%;
	height: 100%;
	position: relative;
	overflow: hidden;
	float: left;
	-webkit-tap-highlight-color:rgba(0,0,0,0);
}
.rsVisibleNearbyWrap {
	width: 100%;
	height: 100%;
	position: relative;
	overflow: hidden;
	left: 0;
	top: 0;
	-webkit-tap-highlight-color:rgba(0,0,0,0);
}
.rsVisibleNearbyWrap .rsOverflow {
	position: absolute;
	left: 0;
	top: 0;

}
.rsContainer {
	position: relative;
	width: 100%;
	height: 100%;
	-webkit-tap-highlight-color:rgba(0,0,0,0);
}

.rsArrow,
.rsThumbsArrow {
	cursor: pointer;
}

.rsThumb {
	float: left;
	position: relative;
}

.rsArrow,
.rsNav,
.rsThumbsArrow {
	opacity: 1;
	-webkit-transition:opacity 0.3s linear;
	-moz-transition:opacity 0.3s linear;
	-o-transition:opacity 0.3s linear;
	transition:opacity 0.3s linear;
}
.rsHidden {
	opacity: 0;
	visibility: hidden;
	-webkit-transition:visibility 0s linear 0.3s,opacity 0.3s linear;
	-moz-transition:visibility 0s linear 0.3s,opacity 0.3s linear;
	-o-transition:visibility 0s linear 0.3s,opacity 0.3s linear;
	transition:visibility 0s linear 0.3s,opacity 0.3s linear;
}


.rsGCaption {
	width: 100%;
	float: left;
	text-align: center;
}

/* Fullscreen options, very important ^^ */
.royalSlider.rsFullscreen {
	position: fixed !important;
	height: auto !important;
	width: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	z-index: 2147483647 !important;
	top: 0 !important;
	left: 0 !important;
	bottom: 0 !important;
	right: 0 !important;
}

.royalSlider .rsSlide.rsFakePreloader {
	opacity: 1 !important;
	-webkit-transition: 0s;
	-moz-transition: 0s;
	-o-transition:  0s;
	transition:  0s;
	display: none;
}

.rsSlide {
	position: absolute;
	left: 0;
	top: 0;
	display: block;
	overflow: hidden;
	
	height: 100%;
	width: 100%;
}

.royalSlider.rsAutoHeight,
.rsAutoHeight .rsSlide {
	height: auto;
}

.rsContent {
	width: 100%;
	height: 100%;
	position: relative;
}

.rsPreloader {
	position:absolute;
	z-index: 0;	
}

.rsNav {
	-moz-user-select: -moz-none;
	-webkit-user-select: none;
	user-select: none;
}
.rsNavItem {
	-webkit-tap-highlight-color:rgba(0,0,0,0.25);
}

.rsThumbs {
	cursor: pointer;
	position: relative;
	overflow: hidden;
	float: left;
	z-index: 22;
}
.rsTabs {
	float: left;
	background: none !important;
}
.rsTabs,
.rsThumbs {
	-webkit-tap-highlight-color:rgba(0,0,0,0);
}


.rsVideoContainer {
	/*left: 0;
	top: 0;
	position: absolute;*/
	/*width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	float: left;*/
	width: auto;
	height: auto;
	line-height: 0;
	position: relative;
}
.rsVideoFrameHolder {
	position: absolute;
	left: 0;
	top: 0;
	background: #141414;
	opacity: 0;
	-webkit-transition: .3s;
	transition: .3s;
}
.rsVideoFrameHolder.rsVideoActive {
	opacity: 1;
}
.rsVideoContainer iframe,
.rsVideoContainer video,
.rsVideoContainer embed,
.rsVideoContainer .rsVideoObj {
	position: absolute;
	z-index: 50;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
}
/* ios controls over video bug, shifting video */
.rsVideoContainer.rsIOSVideo iframe,
.rsVideoContainer.rsIOSVideo video,
.rsVideoContainer.rsIOSVideo embed {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	padding-right: 44px;
}

.rsABlock {
	left: 0;
	top: 0;
	position: absolute;
	z-index: 15;
	
}

img.rsImg {
	max-width: none;
}

.grab-cursor {
	cursor:url(grab.png) 8 8, move; 
}

.grabbing-cursor{ 
	cursor:url(grabbing.png) 8 8, move;
}

.rsNoDrag {
	cursor: auto;
}

.rsLink {
	left:0;
	top:0;
	position:absolute;
	width:100%;
	height:100%;
	display:block;	
	z-index: 20;
	background: url(blank.gif);
}



/* 	----------------------------------------------------------------------------------------------
	Slideshow
	---------------------------------------------------------------------------------------------- */

#slideshow {
	width: 100%;
	height: 100%;
	position: fixed;
	left: 0;
	top: 0;
    background-color: #000;
    z-index: 0;
}

#slideshow_inner {
	width: 100%;
	height: 100%;
	position: absolute;
	direction: ltr;
	left: 0;
	top: 0;
}

.rsDefault,
.rsDefault .rsOverflow,
.rsDefault .rsSlide,
.rsDefault .rsVideoFrameHolder,
.rsDefault .rsThumbs {
	background: #000;
	color: #FFF;
}

.royalSlider {
	overflow: hidden;
}









/* 	-----------------------------------------------
	responsive [rrr]
	----------------------------------------------- */


@media only screen and (min-width : 1366px) { 
    #main_menu,
    #language_switch {
        font-size: 28px;
        line-height: 1.2;  
    }
 
    .footer_inner {
        font-size: 19px;
        line-height: 1.26;
    }

}
  

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

    #gallery  .overlay_text {
        width: 96% !important;
    }
    
    .gallery_item .caption {
        padding: 10px 0 0 0;
    }
    
     #main_menu li {
        margin: 0 6px;
    }
    
    #main_menu,
    #language_switch {
        font-size: 20px;
    }
    
    
    #language_switch {
        right: 24px;
    }

    .footer_inner {
        font-size: 17px;
        padding: 20px 24px 16px 24px;
    }

}


    
@media only screen and (max-width : 880px) {
    
	#footer .footer_right .icon {
		display: inline;
	}
	
	#footer .footer_right .spacer {
		width: 1px;
	}
	
	#footer .footer_right .txt {
		display: none;
	}
	
	#footer_bg {
		height: 60%;
	}
	
	.overlay_text {
		width: 80%;
		padding-top: 50px;
		padding-bottom: 30px;
	}
	
	.big_type {
		font-size: 40px;

	}
    
    .overlay_text td {
        font-size: 23px;
        padding-right: 22px;
    }
    
    #about_us a,
    h3 {
        border-bottom: 3px solid;
    }
    
    #about_us a.no_ul {
        border-bottom: 3px solid transparent;
    }

    .no-touch #about_us a.no_ul:hover {
        border-bottom: 3px solid #fff !important;
    }

	#overlay_close {
		top:25px;
		right:25px;	
	}
	
	#overlay_close_inner {
		width:36px;
		height:36px;	
	}
	
}


@media only screen and (max-width : 768px) {
    
    .gallery_item {
        width: 100%;
    }
    
    .gallery_item .caption {
        padding: 10px 60px 0 60px;
    }

}



@media only screen and (max-width : 767px) { 
    /* 
    mobile view [vvv]
    */
    
    #is_mobile_view {
		display: block;
	}
    
    #main_menu,
    #language_switch,
    #announcement {
        display: none !important;
    }
    
    #mobile_announcement {
        display: block;
        position: fixed;
        top: 0;
        left: 0;
        width: 100vw;
        background-color: #fbe5d6;
        color: #000;
        z-index: 0;
    }
   
    #content {
        position: absolute;
        top: auto;
        left: 0;
        width: 100vw;
        height: 100vh;
        z-index: 10;
        overflow: hidden;
    }
    
    #slideshow {
        width: 100vw;
        left: 0;
        height: 100vh;
        position: absolute;
        z-index: 1;
        overflow: hidden;
    }
    
    body.has_announcement.is_mobile_view #slideshow,
    body.has_announcement.is_mobile_view #slideshow_inner,
    body.has_announcement.is_mobile_view {
        background-color: #fbe5d6 !important;
    }
    
    .mobile_announcement_text {
       padding: 30px 80px 30px 30px; 
    }
    
    .mobile_announcement_text a,
    .mobile_announcement_text .like_link {
        /* todo image underline */
        color: #000;
        text-decoration: underline;
    }
    
    
 
    .small_overlay_text {
         padding: 15px 55px 15px 20px;
    }
    
    #newsletter_close {
        width: 38px;
        height: 43px;
    }
    
    #newsletter {
        width: 80vw;
    }
    
	.overlay_text {
		width: 90%;
		padding-top: 70px;
		padding-bottom: 30px;
	}
	
	.big_type {
		font-size: 29px;
	}
    
    .overlay_text td {
        font-size: 18px;
        padding-right: 16px;
    }
	
	#overlay_close {	
		top:3px;
		right:0px;
		padding-right:5%;	
	}
	
	#overlay_close_inner {
		width:30px;
		height:30px;
	}
	
	#hamburger {
		display: block;
		right: 0;
		top: 0;
		padding: 24px;
	}
	
	#hamburger_inner {
		width:30px;
		height:30px;
	}


	#footer,
	#footer_bg {
		display:none;
	}
    
    .gallery_item .caption {
        padding: 10px 0 0 0;
    }
    
}

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

    #gallery .overlay_text {
        width: 100% !important;
    }

}



@media only screen and (max-width : 375px) { 
	
    .big_type {
		font-size: 24px;
		line-height: 1.45;
	}
    
    .overlay_text td {
        font-size: 16px;
	    line-height: 1.3125;
        padding-right: 16px;
    }
    
    #about_us a,
    h3 {
        border-bottom: 2px solid;
    }
    
    #about_us a.no_ul {
        border-bottom: 2px solid transparent;
    }

    .no-touch #about_us a.no_ul:hover {
        border-bottom: 2px solid #fff !important;
    }
    
	
}

@media only screen and (max-width : 320px) { 
    
    
    #newsletter {
        width: 90vw;
    }
}