/*
* Theme Name: by Jan Cibula, WebMultiMedia GmbH
* Description: sixthsense.ch template
* Author: Jan Cibula, webmultimedia.ch
* Version: 1.0

*/


/* 


*/

@import url('https://fonts.googleapis.com/css2?family=Prompt:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&family=Lavishly+Yours&&display=swap');

/* ============================================= */
/* CSS VARIABLES 
/* ============================================= */

:root {
  --white:      	rgba(247,247,245,1);
  --dark:       	rgba(30,30,30,1.00);
	
  --darkyellow: 	rgba(255,173,0,1.00);
  --brightyellow: 	rgba(255,173,0,.3);
	
   --main:    		rgba(255,173,0,1.00);
   --main_hell:    	rgba(255,173,0,.3); 
   --main_dunkel:  	rgba(98,66,0,1.00); 
}



/* ============================================= */
/* CSS RESET 
/* ============================================= */

*{
	box-sizing:border-box;
	padding:0;
	margin:0;
}

html {
	scroll-behavior: smooth;
}

/* ============================================= */
/* BASIC DEFINITION  
/* ==========================================o=== */

body {
  	font-family: "Prompt", sans-serif;
	background: rgb(255,255,255);
	color:var(--dark);
	font-optical-sizing: auto;
	font-weight: 300;
	font-style: normal;
	font-size:18px;
	min-height:100vh;
}
a, a:link, a:visited, a:active  {
	color:var(--main_dunkel);
	text-decoration:none;
	border-bottom:1px solid none;
	transition: all 1s ease-in-out;
}

a:hover {
	color:var(--dark);
	text-decoration:none;
	transition:all 1s ease-in-out;
}
h1 {  
	font-size:4rem;
	color:var(--main);
  	font-family: "Lavishly Yours", cursive;
  	font-weight: 100;
  	font-style: normal;
}

h2 {
	font-size:1.8rem;
	color:var(--main);
	font-family: "Prompt", sans-serif;
  	font-weight: 600;
	margin:1rem auto 2rem auto;
	animation:h2in 1s ease-in-out forwards;
	animation-delay:.2s;
	transform:translateX(1em);
}
@keyframes h2in {
	to {
	transform:translateX(0);
	}
}



/* ============================================= */
/* HEADER 
/* ============================================= */
.header_container {
	width:100%;
	background:rgba(255,255,255,0.9);
	backdrop-filter:blur(2px);
	position:fixed;
	padding:2rem 0rem 1rem 0rem;
	top:0rem;
	left:0;
	right:0;
	height:auto;
	z-index:222;
    transition:all ease-in-out 0.5s;
}
.header_container:hover {
	background:rgba(255,255,255,1);
    transition:all ease-in-out 0.3s;
}
header {
	width:100%;
	height:100%;
	  /* position the div in center */
	margin:0 auto;
	display:flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: center;
    transition:all ease-in-out 0.5s;
}

#logo {
	padding:1rem 0;
	height:11rem;
}
#logo img{
	height:100%;
}

#nav_social{
	width:20%;
	display:flex;
	justify-content: flex-end;
	flex-wrap: wrap;
	margin-right:0.7rem;
	display:none;
}
#nav_social .fab {
	padding:1rem .5rem;
	margin:.5rem;
	list-style-type: none;
	font-size:1.7rem;
	color:var(--main_hell);
	width:2.5rem;
	height:2.5rem;
	border-radius:5px;
	display:flex;
	align-items: center;
	justify-content: center;
    transition:all ease-in-out 0.5s;
}
#nav_social .fab:hover {
	color: black;
	border:1px solid black;
    transition:all ease-in-out 0.3s;
}

#to_top {
	display: none;
	cursor:pointer;
	position:fixed;
	bottom:1rem;
	right:1rem;
	border:1px solid var(--main_hell);
	border-radius:5px;
	padding:0.3rem .5rem;
	background:rgba(255,255,255,0.5);
    transition:all ease-in-out 0.5s;
}
#to_top:hover {
	background:rgba(255,255,255,1);
    transition:all ease-in-out 0.3s;
}



/* ============================================= */
/* MAIN 
/* ============================================= */
main {
	min-height:80vh;
	box-shadow: 0px 0px 4px 2px rgba(33,33,33,0.2);
	border-radius:0.7rem;
	margin-top:23rem;
	background:rgba(255,255,255,0.9);
	padding:2rem 4rem 2rem 2rem;
	animation:main_up 1s ease-in-out forwards;
	position: relative;
	margin-bottom:2rem;
		opacity: .8;
}

@keyframes main_up {
	to {
		opacity: 1;
		margin-top:24rem;
	}
}
main:has(.startpanels) {
	background:rgba(255,255,255,0);
	box-shadow: 0px 0px 0px 0px rgba(33,33,33,0);
}

iframe {
	border:2px solid rgba(255,255,255,0.1);
	height:80vh;
	padding:0;
}


.page_content {
	line-height:2;
	color:darkslategray;
	text-align: justify;
	padding-right:2rem;
	/*
	min-height:50vh;*/
}
.page_content strong {
	color:black;
	font-weight:600;
}
.page_content p {
	max-width:70ch;
	margin-bottom:1rem;
	padding-right:2rem;
}

.page_content ul {
	margin-top:1rem;
	margin-bottom:1rem;
	border:1px solid var(--main);
	border-radius:1rem;
	padding:1rem;
}
.page_content ul li {
	margin-left:2rem;
}
.page_content img {
	border-radius:.7rem;
    transition:all ease-in-out 0.5s;
	transform:translateX(-1em);
	animation:imgfade .7s ease-in-out forwards;
	opacity: 1;
	cursor:pointer;
}
@keyframes imgfade {
	from {
		transform:translateX(0);
		opacity: 0;
	}
	to {
		transform:translateX(0);
		opacity: 1;
	}
}
.page_content figure:hover img {
	opacity: 0.8 !important;
    transition:all ease-in-out 0.5s;
}


.page_content .wp-block-group {
	margin-top:1rem;
	color:gray;
	flex-grow: 0;
}


.page_content p, .page_content summary , .page_content details{
	max-width:80ch;
}
/*
.page_content .wp-block-group figure{
	max-width:50%;
	text-align: right;
}
.page_content .wp-block-group figure img{
	align-self: flex-end;
}
*/
.wp-element-button {
	border:1px solid var(--main_hell);
	border-radius:5px;
	background:var(--main_hell);
	padding:0.3rem .5rem;
	font-size:1.0rem;
	font-weight: 600;
    transition:all ease-in-out 0.5s;
}

.wp-element-button:hover {
	color:white;
	background:var(--main);
    transition:all ease-in-out 0.2s;
}

.kontakt_container{
	border:1px solid var(--main_hell);
	justify-content: center;
	display: flex;
	flex-wrap:wrap;
	margin:3rem 0rem;
	width:100%;
}

.formular_container {
	width:50%;
	padding:1rem;
}



.formular_container input{
	width:80%;
	font-size:1rem;
	padding:0.3rem;
	border:1px solid var(--main);
	background:var(--main_hell);
  	font-family: "Prompt", sans-serif;
	border-radius:5px;
}

.formular_container textarea{
	width:80%;
	font-size:1rem;
	padding:0.3rem;
	border:1px solid var(--main);
	background:var(--main_hell);
  	font-family: "Prompt", sans-serif;
	border-radius:5px;
	height:80px;
}

.formular_container input[type=checkbox]{
	width:20px !important;
	cursor:pointer;
	color:black;
	background:var(--main);
}
.formular_container input[type=submit]{
	cursor:pointer;
	color:black;
	background:var(--main);
}

.formular_container input[type=submit]:hover{
	cursor:pointer;
	background:var(--white);
}



.googlemaps_container {
	width:50%;
	height:350px;
	aspect-ratio:1/1 !important;
}
.googlemaps_container_map {
	width:100% !important;
	height:350px;
	aspect-ratio:1/1 !important;
	
}
/* ============================================= */
/* ANGEBOTE PANELS
/* ============================================= */


.angebote {
	justify-content: center;
	display: flex;
	flex-wrap:wrap !important;
	margin:1rem 0rem;
}
.angebote .wp-block-column{
	border:1px solid var(--main);
	width:20% !important;
	min-width:20% !important;
	border-radius:0.7rem;
	overflow:hidden;
	aspect-ratio:1/1;
	position: relative;
}
.angebote .wp-block-column figure{
	width:100%;
	height:100%;
	object-fit:cover;
    transition:all ease-in-out 0.5s;
	cursor:pointer;
}
.angebote .wp-block-column figure:hover {
	opacity:0.8;
    transition:all ease-in-out 0.5s;
}
.angebote .wp-block-column img{
	width:100%;
	height:100%;
	object-fit:cover;
}
.angebote .wp-block-column p{
	width:100%;
}

.angebote .angebot_buttons{
	position: absolute;
	bottom:1rem;
	left:1rem;
	background:var(--main);
	color:white;
	padding:.3rem .5rem;
	border-radius:.7rem;
    transition:all ease-in-out 0.5s;
}
.angebote .wp-block-column:hover a{
	color:black;
}
.angebote .wp-block-column:hover .angebot_buttons{
	padding:.3rem .5rem;
	left:2rem;
	background:var(--main);
	color:black;
    transition:all ease-in-out 0.3s;
}



/* ============================================= */
/* BANNER
/* ============================================= */

.banner {
	overflow:hidden;
	z-index:1;
	width:100%;
	margin:0 auto;
	padding:0;
    border-radius:0 !important;
}





.showbutton {
	display:block !important;
}



.small {
    font-size:0.8rem;
}
.bold {
    font-weight:bold;
}

.padding_1rem {
	padding:1rem;
	background:black;
}


.max_width {
	max-width:1400px !important;
	margin-left:auto !important;
	margin-right:auto !important;
}
/* ============================================= */
/* NAVIGATION MAIN 
/* ============================================= */


.nav_bar {
	display: flex;
	justify-content: space-between;
	font-size:1rem;
}



.nav-open {
	display:flex;
}
nav ul {
    list-style-type:none;
	display: flex;
	flex-direction:row;
	margin-left:0rem;
}

nav ul li{
	margin:0rem .5rem 0rem 0rem;
}
.menu a{
	display:block;
  	font-weight: 400;
    color:var(--dark);
	padding:0.3rem .6rem;
	margin-left:1rem;
	font-size:1.3rem;
    transition:all ease-in-out 0.5s;
}
nav ul li:hover a, .nav_bar_language a:hover{
	color:black;
    transition:all ease-in-out 0.3s;
	border-radius:3px;
}
nav .page_item_has_children {
    
}
.menu .current_page_item a
 {
	 background:var(--main);
	border-radius:5px;
	 color:black;
	display:block;
	padding:0.3rem .6rem;
}
.menu .menu-item-has-children a {
	color:var(--main_hell);
	padding:0;
}
.menu .menu-item-has-children>a:first-child {
}




/* ============================================= */
/* NAVIGATION MOBILE
/* ============================================= */

#nav_burger {
	display:none;
    position:absolute;
    top:.5rem;
    right:1rem;
    z-index:9999999;
	text-align:right;
	color: var(--main);
	padding:0.2rem 0rem 0rem 0rem;
}



.mobile_navigation {
	display:none;
	position:absolute;
	top:5.5rem;
	right:1rem;
	z-index:9999999;
	background:rgba(255,255,255,0.95);
    list-style-type:none;
	padding:2rem;
	border-radius:0.5rem;
}
#menu-main_menu-1 {
	padding:0rem;
    list-style-type:none;
	display: flex;
	border-radius:3px;
	flex-direction:column;
	line-height:1.3;
	justify-content: flex-end;
	font-size:1.5rem;
	text-transform: uppercase;
}
.mobile_navigation li{
    list-style-type:none;
	text-align:right;
	font-weight: 500;
}


#menu-main_menu-1 li a {
	padding:1rem;
	display:block;
	
}





.mobile_navigation_open {
	display:block;
}
.mobile_navigation_open .current_page_item a
 {
	padding:0.5rem !important;
	background:var(--main);
	transform:none;
	color:white;
	 border:none !important;
}

.mobile_navigation_open .current_page_item a
 {
	 border:none !important;
	display:block;
	padding:1rem;
}







.fade_in {
    opacity:0;
    animation:fadein 0.4s ease-in-out;
    animation-fill-mode:forwards;
}
@keyframes fadein{
    0% {
        opacity:0;
    }
    100% {
        opacity:1;
    }
}


.fancybox__caption {
    font-size:0.8rem;
}



/* ============================================= */
/* DETAILS EIGENE KLASSEN
/* ============================================= */


details > summary:first-of-type {
    display: list-item;
    counter-increment: list-item 0;
    list-style:none;
}

details > summary{
	border-bottom:1px solid var(--main_hell);
}
details p {
	width:100% !important;
	max-width:100% !important;
}


/* ============================================= */
/* FOOTER  
/* ============================================= */
footer {
	color:var(--main);
    padding:2rem;
	font-size:1.2rem;
	margin-top:5rem;
	display:flex;
	line-height: 1.5;
	flex-wrap: wrap;
	flex-direction: column;
	justify-content: space-between;
	border-top:1px solid var(--main_hell);
}
.footer_left,.footer_right {
}

.footer_left {
	text-align:center;
	width:100%;
}
.footer_right {
	text-align:center;
	width:100%;
}
footer a {
    transition: all 0.5 linear;
	border-radius: 0.3rem;
}
footer a:hover {
    background-color: var(--main_hell);
	color:black;
    transition: all 0.3 linear;
}
footer a{
	padding:0.3rem;
}    

/* ============================================= */
/* NAVIGATION  HAMBURGER
/* ============================================= */
.hamburger {
    padding: 15px 15px;
    display: inline-block;
    cursor: pointer;
    transition-property: opacity, filter;
    transition-duration: 0.15s;
    transition-timing-function: linear;
    text-transform: none;
    background-color: transparent;
    border: 0;
    margin: 0;
    overflow: visible;
}
.hamburger:hover {
    opacity: 0.7;
    }
.hamburger.is-active:hover {
    opacity: 0.7;
}
.hamburger.is-active .hamburger-inner,
.hamburger.is-active .hamburger-inner::before,
.hamburger.is-active .hamburger-inner::after {
    background-color: black;
}

.hamburger-box {
  width: 40px;
  height: 24px;
  display: inline-block;
  position: relative;
}

.hamburger-menu-text{
	padding:0rem 0rem .7rem 0rem;
	display:block;
	text-align: right;
}


.hamburger-inner {
    display: block;
    top: 50%;
    margin-top: -2px;
}
.hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
    width: 40px;
    height: 4px;
    background-color: black !important;
    border-radius: 4px;
    position: absolute;
    transition-property: transform;
    transition-duration: 0.15s;
    transition-timing-function: ease;
}
.hamburger-inner::before, .hamburger-inner::after {
    content: "";
    display: block;
}
.hamburger-inner::before {
    top: -10px;
}
.hamburger-inner::after {
    bottom: -10px;
}

/* Spring effect */
.hamburger--spring .hamburger-inner {
    top: 2px;
    transition: background-color 0s 0.13s linear;
}
.hamburger--spring .hamburger-inner::before {
    top: 10px;
    transition: top 0.1s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--spring .hamburger-inner::after {
    top: 20px;
    transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--spring.is-active .hamburger-inner {
    transition-delay: 0.22s;
    background-color: transparent !important;
}
.hamburger--spring.is-active .hamburger-inner::before {
    top: 0;
    transition: top 0.1s 0.15s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
    transform: translate3d(0, 10px, 0) rotate(45deg);
}
.hamburger--spring.is-active .hamburger-inner::after {
    top: 0;
    transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
    transform: translate3d(0, 10px, 0) rotate(-45deg);
}

/* ============================================= */
/* responsive media queries
/* ============================================= */

/* ---------------- */
/* 1100px */
/* ---------------- */




@media(max-width: 1100px) { 
	
	.header_container {
		width: 100%;
		background: rgba(255, 255, 255, 0.9);
		z-index: 222;
	}
	h1 {
		font-size:2rem;
	}
	
	header {
		padding:0rem 2rem;
		height:auto;
		z-index:9 !important;
		justify-content: flex-start !important;
		align-items: flex-start;
		text-align:left !important;
	}
	#nav_burger {
		display:block;
    	position:absolute;
		top:2.5rem;
		right:2.5rem;
		z-index:10000 !important;
	}
	.hamburger {
    	padding: 7px 7px;
		z-index:10001 !important;
	}

	.hamburger-box {
	  width: 30px;
	  height: 24px;
	  display: inline-block;
	  position: relative; 
		z-index:10004 !important;
	}


	.hamburger-inner {
		display: block;
		top: 50%;
		margin-top: -2px;
	}
	.hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
		width: 30px;
		height: 4px;
	}
	
	.page_header_image {
	height:20rem;
	width:100%;
	border-radius:5px;
		top:8rem;
}
	
	
	nav{
		display:none;
	}
	.nav_bar_language {
		width:100%;
		display:flex;
		justify-content: flex-end;
		font-weight:500;
		margin:0.25rem 1rem 0rem 0rem;
	}
	.sub-menu {
		display:none !important;
	}
	.mobile_navigation  {
		position:fixed;
		top:5rem;
		width:80%;
		padding:3rem;
		background:white;
		box-shadow: 0px 0px 4px 2px rgba(33,33,33,0.2);
		z-index: 2224444 !important;
	}	
	.mobile_navigation  a{
    	font-size: 1.4rem;
		z-index: 2224446 !important;
	}	
	
	
	#nav_social{
		display:none;
		width:45%;
	}
	#nav_social a {
		padding: 0;
		margin: 0 ;
		font-size:2rem !important;
	}
	#nav_social .fab {
    	width: 2.2rem;
    	height: 2.2rem;
		padding: 0.25rem;
		margin: 0rem 0.25rem ;
	}
	
	
	main {
		min-height:80vh;
		box-shadow: 0px 0px 4px 2px rgba(33,33,33,0.2);
		border-radius:0.4rem;
		margin-top:15rem;
		background:rgba(255,255,255,0.9);
		padding:4rem;
		animation:none 2s ease-in-out forwards;
		position: relative;
	}

	
	
	
	.content {
		padding:0.5rem 1rem 0.5rem 1rem;
		line-height:1.3;
	}
	.post_page {
		font-size:1rem;
		line-height:1.3;
	}
	
	h2 {
		font-size:1.5rem;
		line-height:1.2;
		margin-bottom:1rem;
	}
	h3 {
		font-size:1.2rem;
		margin-bottom:2rem;
	}
	
	.post_page_sidebar {
		width:100%;
		margin:0;
	}
	
	.post_page_sidebar li {
		margin:0;
	}
	.wp-block-buttons{
		display:flex;
		flex-wrap:wrap;
		/*justify-content: center;*/
	}
	
	.wp-block-button a{
		font-size:0.9rem;
		padding:0.5rem 1rem;
		margin:0rem;
	}
	
	.wp-block-list li{
		margin-left:.5rem;
		padding-left:0rem;
	}
	
	#cookiePopup {
		width: 60%;
	}

	.post_page_sidebar li {
		list-style-type: none;
		border-radius:3px;
		margin: 0;
		padding: 0;
		border: 1px solid var(--main) !important;
	}
	.post_page_sidebar li a {
		border:none;
	}
	
	
	.post_page_content{
		width:100%;
	}
	
	
	
	.wp-block-media-text {
		margin-bottom:1.5rem;
		padding-bottom:1.5rem;
		grid-column-gap: 2rem;
      	grid-template-columns: 1fr !important;
      	grid-template-rows: 1fr !important;
	}
	
	  .wp-block-media-text, .wp-block-media-text__content {
		grid-column: auto !important;
		grid-row: auto !important;
	  }
	
	
		
	
	footer {
		flex-direction:column; 
		justify-content: center;
		font-size:1rem;
		align-items: center;
		flex-grow: 0;
	}
	.footer_left {
		width:100%; 
		display:flex;
		flex-direction:column; 
		text-align:center;
		justify-content: center;
		line-height:1.5;
	}
	.footer_right {
		width:100%; 
		display:flex;
		flex-direction:column; 
		text-align:center;
		justify-content: center;
		line-height:2;
	}
	.hide_mobile {
		display:none;
	}
	footer a {
		display: inline-block;
		width:auto !important;
		flex-grow: 0 !important;
		align-self: center;
		padding:0.3rem 1rem;
	}

	
	footer .fab,.fab {
		font-size:1.2rem !important;
	}
	
	
	#logo {
		padding:1rem 0;
		height:8rem;
		z-index:10;
	}
	
} /* end @media 1100px */
/* ---------------- */





/* ---------------- */
/* 800px */
/* ---------------- */
@media(max-width: 800px) { 
	
	
} /* end 800px */


/* ---------------- */
/* 640px */
/* ---------------- */
@media(max-width: 640px) { 
	
	
    
} /* end 640px */


