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

*/


/* 
themes
-homestory
-motherhood
-fatherhood
-reportage/travels/family
-childhood I
-childhood II
-womanhood



custom blocks
2_photoblock_1_big_1_small



*/



@import url('https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900');

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

:root {
  --white:      rgba(247,247,245,1);
  --dark:       rgba(34,34,34,1.00);
	
	
   --main:    		rgba(87,87,87,1.00); /*// A59D8F */ 
   --main_hell:    	rgba(190,190,190,1.00); /*// A59D8F */ 
   --main_dunkel:  rgba(40,40,40,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: "Roboto", 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:2rem;
	text-transform: uppercase;
	font-weight: 800;
	font-style: bold;
	color:var(--main);
}

h2 {
	font-size:1.6rem;
	font-style: normal;
	font-weight: normal;
}





/* ============================================= */
/* HEADER / LOGO
/* ============================================= */

header {
	height:6rem;
	width:100%;
	  /* position the div in center */
	margin:1rem auto 0rem auto;
	padding:3rem 0rem 1rem 0rem;
	display:flex;
	justify-content: space-between;
	align-items: center;
    transition:all ease-in-out 0.5s;
	
}
header:hover {
	background:rgba(255,255,255,1);
    transition:all ease-in-out 0.3s;
}

#logo {
	padding:0.7rem 1rem;
	font-size:1.5rem;
    position:fixed;
    top:2.5rem;
    left:1rem;
    z-index:1000;
	background:rgba(255,255,255,0.95);
	border-radius:5px;
}
#logo img{
	height:100%;
}


#to_top {
	display: none;
	cursor:pointer;
	position:fixed;
	bottom:1rem;
	right:1rem;
	border:1px solid var(--main);
	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;
}



.language_container {
	/*border-bottom:1px solid var(--main);*/
	margin-bottom:0.3rem;
	padding-bottom:0.3rem;
	text-align: right;
	position: fixed;
    top:0rem;
    right:0rem;
	padding:0.5rem 2rem 0rem 0rem;
	z-index:99999;
}
.active_lang{
	opacity:0.3;
}

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


nav {
}

.menu-main_menu-container,.menu-main_menu_de-container {
	display:flex;
    position:fixed;
	flex-direction: column;
	justify-content: space-between;
	align-items: center;
    top:2rem;
    right:0rem;
	/*
	width:100%;
	height:100%;
	*/
	z-index:1001;
	background:rgba(255,255,255,0.95);
	padding:1rem 1rem 3rem 1rem;
	border-radius:5px;
}


.menu-item-has-children {
	position:relative;
}

.sub-menu {
	position:absolute;
	top:2.2rem;
	left:0rem;
	width:100%;
	font-size:0.9rem;
}

.sub-menu .menu-item{
	width:auto;
	white-space: nowrap;
}


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



.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;
    color:var(--main_dunkel);
	padding:0.3rem .6rem;
	font-weight:500;
    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
 {
	/*transform: translateY(-0.2rem);
    border-top:1px solid lightgray;
    border-bottom:1px solid lightgray;*/
	border-radius:3px;
	 background:rgba(222,222,222,0.5);
	display:block;
	padding:0.3rem .6rem;
}



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

#nav_burger {
	display:none;
    position:fixed;
    top:1rem;
    right:2rem;
    z-index:1000;
	text-align:right;
    border-radius: 5px;    
	color: var(--main);
	padding:0.2rem 0rem 0rem 0rem;
}



.mobile_navigation {
	display:none;
	position:fixed;
	top:0rem;
	right:0;
	width:100%;
	height:100vh;
	
	border:1px solid lightgray;
	z-index:999;
	background:rgba(255,255,255,0.95);
    list-style-type:none;
	padding:7rem 2rem 2rem 2rem;
}
.mobile_navigation li{
    list-style-type:none;
	text-align:center;
	font-weight: 500;
	font-size:2.3rem;
	line-height: 2;
}


.mobile_navigation li a {
	padding:.3rem 0.5rem;
	display:block;
}
.mobile_navigation li a:hover {
	color:lightgray;
}





.mobile_navigation_open {
	display:block;
}



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


.showbutton {
	display:block !important;
}



.max_width {
	max-width:1400px !important;
	margin-left:auto !important;
	margin-right:auto !important;
}



/* ============================================= */
/* FORMULAR 
/* ============================================= */

#formular {
	padding:0rem;
}


#formular input {
	padding:1rem;
	min-width:400px;
  	font-family: "Roboto", sans-serif;
	font-size:1rem;
	border-radius:0.3rem;
	border:1px solid var(--main_hell);
}
#formular textarea {
	padding:1rem;
	min-width:400px;
	height:6rem;
  	font-family: "Roboto", sans-serif;
	font-size:1rem;
	border-radius:0.3rem;
	border:1px solid var(--main_hell);
}
#formular input[type=submit] {
  	font-family: "Roboto", sans-serif;
	font-size:1rem;
	background-color:var(--main_hell);
	padding:1rem;
	border-radius:0.3rem;
	margin-top:1rem;
	border:1px solid var(--main);
}
#formular input[type=submit]:hover {
	background-color:var(--main);
	padding:1rem;
	border-radius:0.3rem;
	margin-top:1rem;
	color:var(--main_hell);
	cursor: pointer;
}







/* ============================================= */
/* MAIN 
/* ============================================= */
main {
	min-height:80vh;
	padding:0 1rem;
}


.page_content {
	margin-top:10rem;
	line-height:2;
	color:gray;
}
.wp-block-list  {
	padding-left:2rem;
	padding-top:2rem;
}

.wp-block-list li {
	padding-left:.5rem;
	padding-bottom:1rem;
}
.page_content strong {
	/*
	color:gray;
	text-transform: uppercase;
	font-size:1rem;
	border-bottom:1px solid lightgray;
	*/
}
.page_content p {
	max-width:90ch;
}
.page_content img {
	border-radius:0.2rem;
}
.page_content .wp-block-group {
	margin-top:1rem;
	color:gray;
	flex-grow: 0;
}

.page_content img {
	opacity:1;
	cursor: pointer;
    transition:all ease-in-out 0.5s;
}
.page_content img:hover {
	opacity:0.8;
	transform:scale(1.02);
    transition:all ease-in-out 0.3s;
}




.page_content .wp-block-group p {
	max-width:60ch;
}

.page_content .wp-block-group figure{
	max-width:50%;
	text-align: right;
}
.page_content .wp-block-group figure img{
	align-self: flex-end;
}

/* ============================================= */
/* PHOTOBLOCKS EIGENE KLASSEN
/* ============================================= */

.livia_titel_big strong{
	font-size:1.5rem;
}



/* ------------------ PHOTOS 2+1 (2 COLS) ----------------------- */
.livia_photoblock_2_1_big_1_small {
	padding:1rem;
}
.livia_photoblock_2_1_big_1_small figure:nth-child(1)  {
	padding:3rem;
	width:40%;
}
.livia_photoblock_2_1_big_1_small figure:nth-child(2)  {
	padding:3rem;
	width:50%;
}




.livia_text_text   {
	padding:2rem;
	align-items: flex-start;
}
.livia_text_text p  {
	padding:3rem;
}

.livia_text_text p:nth-child(1)   {
	padding:3rem;
	/*text-align: right;*/
}
.livia_text_text p:nth-child(2)   {
	padding:3rem;
}

/* ------------------ TEXT + PHOTO (2 COLS) ----------------------- */
.livia_text_photo  {
	
}
.livia_text_photo p  {
	padding:3rem;
	width:70%;
	justify-content: flex-end;
	text-align: right;
}
.livia_text_photo figure {
	width:30%;
	padding:1rem;
   align-items: flex-start !important;
}
.livia_text_photo figure img{
	width:100%;
}



/* ------------------ PHOTO + TEXT (2 COLS) ----------------------- */
.livia_photo_text {
}
.livia_photo_text figure:nth-child(1)  {
	padding:3rem;
	width:40%;
}
.livia_photo_text figure:nth-child(2)  {
	padding:3rem;
	width:50%;
}



.livia_photoblock_2_1_big_1_small figure:nth-child(1), 
.livia_text_photo  p:nth-child(1), 
.livia_photo_text  figure:nth-child(1)
{
		transform:translate(-2rem);
		opacity:0;
		animation:fade_in_left 1s ease-in-out forwards;
		animation-timeline:view();
		animation-range-start: normal;
		animation-range-end: 50vh;
}


.livia_photoblock_2_1_big_1_small figure:nth-child(2), 
.livia_text_photo  figure:nth-child(2), 
.livia_photo_text  p:nth-child(2)
{
		transform:translate(2rem);
		opacity:0;
		animation:fade_in_right 1.2s ease-in-out forwards;
		animation-timeline:view();
		animation-range-start: normal;
		animation-range-end: 50vh;
}



/* ------------------ SERVICES BLOCK ----------------------- */
.services_block  {
	color:darkslategray;
	background: rgba(222,222,222,0.5);
	font-size:1.2rem;
	border:1px solid white;
	border-radius:1rem;
	width:70%;
	margin-bottom:3rem;
    transition:all ease-in-out 0.8s;
}
.services_block:hover  {
	background: rgba(222,222,222,0.1);
	border:1px solid darkslategray;
    transition:all ease-in-out 0.5s;
}

.services_block strong {
	font-weight:600;
}
.services_block li>strong {
	font-weight:normal;
}



/* ------------------ VIDEO (STARTSEITE) ----------------------- */
.wp-block-video {
	aspect-ratio:1/1;
	overflow:hidden;
	border-radius:1rem;
}
.wp-block-video video{
	height:100%;
	width:100%;
	object-fit: cover !important;
	border-radius:.5rem;
}



/* ------------------ ZITATE (BLOCKQUOTE) ----------------------- */

.wp-block-quote  {
	color:darkslategray;
	font-size:1.4rem;
	font-weight:400;
	font-style:italic;
	margin-bottom:2rem;
	padding:1rem 5rem;
	position: relative;
}

.wp-block-quote:before  {
	content:"„";
	font-size:4rem;
	color:darkslategray;
	position: absolute;
	top:0rem;
	left:3rem;
	line-height:0;
}
.wp-block-quote:after  {
	content:"“";
	font-size:4rem;
	color:darkslategray;
	position: absolute;
	bottom:1rem;
	right:3rem;
	line-height:0;
}
.wp-block-columns {
	padding:3rem 5rem;
}


.wp-block-button {
	margin:2rem 0rem !important;
}
.wp-element-button {
	color:white;
	background: gray;
    transition:all ease-in-out 0.8s;
}
.wp-element-button:hover {
	background: lightgray;
    transition:all ease-in-out 0.5s;
	transform:translateX(.5rem);
}


/* animationen definieren */

@keyframes fade_in_left {
	to {
		transform:translate(0);
		opacity:1;
	}
}
@keyframes fade_in_right {
	to {
		transform:translate(0);
		opacity:1;
	}
}














































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





/* ============================================= */
/* FOOTER  
/* ============================================= */
footer {
	color:var(--dark);
    padding:1rem 0rem;
	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:40%;
}
.footer_right {
	text-align:right;
	width:60%;
}
footer a {
    transition: all 0.5 linear;
}
footer a:hover {
    background-color: rgba(255,255,255,0.5);
    transition: all 0.3 linear;
}
.footer_right a{
	padding:0 0.2rem;
}    


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

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




@media(max-width: 1100px) { 
	
	
	header {
		padding:0;
		height:6rem;
	}
	#nav_burger {
		display:block;
    	position:fixed;
		top:1.5rem;
		right:1.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;
	}
	

	
	
	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:absolute;*/
	}	
	
	
	
	
	
	.menu-main_menu-container {
		display:flex;
		position:relative;
		width:100%;
		height:100%;
		z-index:1001;
		background:rgba(255,255,255,.9);
		padding:1rem 1rem;
		border-radius:5px;
	}
	
	
	
	.wp-block-quote  {
		padding:2rem;
	}
	.wp-block-quote:before  {
		top:0rem;
		left:1rem;
	}
	.wp-block-quote:after  {
		right:4rem;
		bottom:2rem;
	}

	

	
	#nav_social{
		display:none;
		width:45%;
	}
	#nav_social a {
		padding: 0;
		margin: 0 ;
	}
	#nav_social .fab {
    	font-size: 1.6rem;
    	width: 2.2rem;
    	height: 2.2rem;
		padding: 0.25rem;
		margin: 0rem 0.25rem ;
	}
	
	.content {
		padding:0.5rem;
		line-height:1.2;
	}
	.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 {
	margin:2rem 2rem !important;
	}
	.wp-block-button a{
		font-size:1rem;
		padding:1rem;
		margin:0rem 1rem;
	}
	
	.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-column {
		padding:0rem !important;
	}
	
	
	.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;
	  }
	
	.page_content p {
		padding: 0.5rem;
	}
	.page_content .wp-block-group {
        padding: 1rem !important;
        margin: 2rem auto;
        width: 100%;
    }
	.services_block  {
		padding:.5rem !important;
		width:100%;
	}
	.services_block .wp-block-column {
		padding:2rem 1rem !important;
		width:100%;
		margin-top:3rem;
	}
	.services_block  ul,.services_block  li {
		padding:0;
		margin:0;
		margin-left:.5rem;
	}
	
	..wp-block-image {
		padding:2rem 1rem !important;
		width:100%;
		margin-top:3rem !important;
	}
	
		
	
	footer {
		flex-direction:column; 
		justify-content: center;
		font-size:1rem;
	}
	.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;
	}
    
	#formular {
		padding:1rem;
		margin:1rem;
	}
	
	
	#logo {
		padding:0;
	}

	#logo img {
    	height: 60px;
    	max-height: 60px;
	}
.splide {
    width:100% !important;
    height:25rem !important;
    display:block;
	padding:0;
	margin:0;
    overflow:hidden;
}


.splide__track {
    width:100% !important;
    border-radius:0 !important;
    height:100%;
	padding:0;
	margin:0;
}
.slide_image{
    height:100%;
    border-radius:0 !important;
	padding:0;
	margin:0;
}
.slide_image img, .slide_image_image{
    width:120% !important;
    height:25rem !important;
    object-fit:cover;
    border-radius:0 !important;
	padding:0;
	margin:0;
	transform:translateX(-2rem);
}


.banner, .splide .slide_image {
    height:25rem !important;
    border-radius:0 !important;
	padding:0;
	margin:0;
}
.banner_small {
	height:10rem;
	padding:0;
}

	
	
	
	
	.post_page{
		padding:1rem 0.5rem;
	}

	.page_cards, .page_content_card, .custom_gallery{
		flex-direction:column; 
		padding:0.5rem;
		height:auto;
	}
	.page_cards_container, .custom_gallery_container{
		width:80%;
		padding:0rem;
		margin-bottom: 1rem;
		aspect-ratio:1/1;
	}
	.page_content_card_container{
		width:100%;
		padding:0rem;
		margin-bottom: 1rem;
	}
	.page_content_card_container .page_content_card_title {
		padding:1rem;
	}
	
	
	.page_content_card_content, .page_content_card_images, .page_content_card_text{
		border:none;
	}
	
	
	
	.page_content .wp-block-group {
		flex-direction: column;
		padding:1rem 3rem;
		margin:2rem auto;
		width:100%;
	}
	.page_content .wp-block-group div{
		width:100%;
		padding:0;
		margin:0;
	}
	.page_content p {
		padding:1rem 3rem;
	}
	
	.page_content .wp-block-heading{
		padding:1rem 3rem;
	}
	.page_content .wp-block-group figure{
		width:100%;
    	max-width: 100%;
		padding:0;
		margin:0;
	}
	.page_content .wp-block-group figure img{
		width:100%;
    	max-width: 100%;
		padding:0;
		margin:0;
	}
	.wp-block-group p{
		text-align: left;
		width:100%;
		padding:0;
		margin-bottom:2rem;
	}
	.page_content .wp-block-image {
		margin:0rem 0rem 2rem 0rem !important;
	}
	.wp-block-list {
		padding:1rem 3rem;
	}
	
} /* end @media 1100px */
/* ---------------- */





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


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


