/*
* Theme Name: by Jan Cibula, WebMultiMedia GmbH
* Description: climbandrise.com template
* Author: Jan Cibula, webmultimedia.ch
* Version: 0.1

*/


/* 




*/



@import url('https://fonts.googleapis.com/css2?family=League+Spartan:wght@100..900&family=Inria+Sans:ital,wght@0,300;0,400;0,700;1,300;1,400;1,700');

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

:root {
  --red:        rgba(255,130,140,1.00);
  --white:      rgba(247,247,245,1);
  --green:      rgba(177,202,178,1.00);
  --dark:       rgba(34,25,2,1.00);
  --warning:    rgba(255,120,40,1.00);
	
	
   --main:    		rgba(40,100,91,1.00); /*// 96,189,177,1 */ 
   --main_hell:    	rgba(96,189,177,1.00); /*// A59D8F */ 
   --main_dunkel:  rgba(28,61,56,1.00); /*46,69,63,1.00 */
}



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

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

html {
	scroll-behavior: smooth;
}

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

body {
  	font-family: "Inria Sans", 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(--dark);
	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:2.5rem;
	text-transform: lowercase;
	color:var(--main_hell);
	font-family: "League Spartan", sans-serif;
  	font-weight: 400;
  	font-style: normal;
}

h2 {
	font-size:2rem;
	color:var(--main_hell);
	font-family: "League Spartan", sans-serif;
  	font-weight: 300;
  	font-style: normal;
}




/* ============================================= */
/* HEADER 
/* ============================================= */
.header_container {
	width:100%;
	background:rgba(255,255,255,0.8);
	backdrop-filter:blur(1.5px);
	position:fixed;
	top:0;
	height:8rem;
	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;
	justify-content: space-between;
	align-items: center;
    transition:all ease-in-out 0.5s;
}

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

.page_header_image {
	height:46rem;
	width:100%;
	border-radius:5px;
	overflow: hidden;
	line-height: 0;
	position:fixed;
	top:0;
	left:0;
	right:0;
	z-index:-1;
	margin:0 auto;
	padding:0rem;
}
.page_header_image img {
	height:100%;
	width:100%;
	object-fit: cover;
}




#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.4rem;
	margin-top:55rem;
	background:rgba(255,255,255,0.9);
	padding:2rem 4rem;
	animation:main_up 2s ease-in-out forwards;
	position: relative;
}

@keyframes main_up {
	to {
		margin-top:40rem;
	}
}
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;
	/*
	min-height:50vh;*/
}
.page_content strong {
	color:black;
	text-transform: uppercase;
	font-size:2rem;
}
.page_content p {
	max-width:70ch;
	margin-bottom:1rem;
}

.page_content a {
	font-weight:bold;
	text-decoration: underline;
	color:var(--main_hell);
}
.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 a, .wp-block-button__link {
	text-decoration: none !important;
	color:white !important;
}

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

/* ============================================= */
/* STARTPANELS
/* ============================================= */


.startpanels {
	justify-content: center;
	display: flex;
	flex-wrap:wrap !important;
}
.startpanels .wp-block-column{
	background:rgba(255,255,255,0.9);
	border:1px solid var(--main_hell);
	width:30% !important;
	min-width:30% !important;
	padding:3rem;
	border-radius:5px;
}
.startpanels .wp-block-column p{
	width:100%;
}
.startpanels .wp-block-button__link{
	background:var(--main_hell);
	color:white;
	padding:.5rem 1rem;
	border-radius:5px;
    transition:all ease-in-out 0.5s;
}
.startpanels .wp-block-button__link:hover{
	background:white;
	color:var(--main_hell);
	border:1px solid var(--main_hell);
	padding:.5rem 1rem;
	border-radius:5px;
    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;
}



.warning {
	color:var(--warning);
}

.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;
	text-transform: uppercase;
}



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

nav ul li{
	margin:0rem .5rem 0rem 0rem;
}
.menu a{
	display:block;
	font-family: "League Spartan", sans-serif;
  	font-weight: 400;
	text-transform: lowercase;
    color:var(--main_hell);
	padding:0.3rem .6rem;
	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_hell);
	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:999;
	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:999;
	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:1rem 2rem;
	font-size:.8rem;
	margin-top:5rem;
	display:flex;
	flex-wrap: wrap;
	justify-content: space-between;
	border-top:1px solid var(--main_hell);
}
.footer_left,.footer_right {
}

.footer_left {
	text-align:left;
	width:44%;
}
.footer_right {
	text-align:right;
	width:55%;
}
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 {
		padding:1rem 0rem;
		height:8rem;
	}
	#nav_burger {
		display:block;
    	position:absolute;
		top:2.5rem;
		right:2.5rem;
	}
	.hamburger {
    	padding: 7px 7px;
	}

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


	.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);
	}	
	.mobile_navigation  a{
    	font-size: 1.4rem;
	}	
	
	
	#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:30rem;
		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;
	}
	
	
	
} /* end @media 1100px */
/* ---------------- */





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


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


