/*
Theme Name: Impreza Child
Template: Impreza
Version: 1.0
Author:	UpSolution
Theme URI: http://impreza.us-themes.com/
Author URI: http://us-themes.com/
*/

/*Add your own styles here:*/


.h3-green h3,
.h4-green h4,
.post-129 .post_title { /* Suse Name grün */
	color: var(--color-green);
}

.layout_180 .post-129 .toggle-box { /* Suse Lebenslauf grün */
	background: var(--color-light-green-20) !important; 
}

.layout_186 .w-grid-item h3 { 
	font-size: var(--h4-font-size);
}

.kiwi {
	height: 12rem;
}
.kiwi img {
	height: 100%;
	width: auto;
}

.toggle-box {
	display: none;
	box-sizing: border-box;
}

.nowrap {
	white-space: nowrap;
}

.col-pad .g-cols > .wpb_column,
.g-cols.col-pad > .wpb_column,
.row-pad {
	padding: 1.5rem !important;
}

@media (min-width: 601px) {
	.schmal {
		margin-left: 10%;
		margin-right: 10%;
	}
	.col-pad .g-cols > .wpb_column,
	.g-cols.col-pad > .wpb_column,
	.row-pad {
		padding: 1.5rem 2.5rem !important;
	}
}
@media (min-width: 901px) {
	.col-pad .g-cols > .wpb_column,
	.g-cols.col-pad > .wpb_column,
	.row-pad {
		padding: 2.5rem !important;
	}
}

@media screen and (max-width: 900px) {
    footer .l-section.width_full {
        --padding-inline: 1.5rem;
    }
}
@media screen and (max-width: 1200px) {
	#termininfos .g-cols.row-pad {
		grid-template-columns: 100%;
	}
}


/*** MENU ***/

.w-nav .menu-item > a.w-btn {
	margin-left: 1rem;
	margin-right: 1rem;
}
.w-nav .menu-item > .w-btn-wrapper {
	margin-left: 1rem;
	margin-right: 0;
}

@media (max-width: 900px) {
	.w-nav-open .w-nav.type_mobile.m_layout_dropdown .w-nav-list.level_1 {
        padding-top: 1rem !important;
        padding-bottom: 1rem !important;
	}
    .header_hor .w-nav.type_mobile.m_layout_dropdown .w-nav-list.level_1 > .menu-item {
		float: left;
		margin-bottom: 1rem;
		line-height: 1;
    }
	.header_hor .w-nav.type_mobile.m_layout_dropdown .w-nav-list.level_1 > .menu-item.menu-item-object-page {
		margin-right: 1rem;
	}
	.w-nav.type_mobile .menu-item > a.w-btn,
	.w-nav.type_mobile .menu-item > .w-btn-wrapper {
		margin: 0;
	}
	.w-nav-open .l-header.bg_transparent:not(.sticky) .l-subheader.at_middle {
		background: #FFF;
	}
}

.w-toplink:not(.w-btn) {
    border-radius: 50%;
}


/*** Wavy Underline ***/

.layout_185 .post_title a,
.layout_185 .post_title a:hover,
.layout_186 .w-grid-item:not(:last-child) > .w-grid-item-h .w-vwrapper,
.layout_113 .w-grid-item:not(:last-child) > .w-grid-item-h .w-vwrapper,
.wave-underline {
	background-image: url("data:image/svg+xml;utf8,\
		<svg xmlns='http://www.w3.org/2000/svg' width='20' height='6' viewBox='0 0 20 6'> \
		<path d='M0 3 Q5 0 10 3 T20 3' stroke='%2308B587' fill='none' stroke-width='1.5'/> \
		</svg>");
	background-repeat: repeat-x;
	background-size: 20px 6px;
	background-position: 0 100%;
	padding-bottom: 8px; /* space for underline */
    line-height: 1.5;
}

.layout_185 .post_title a:hover {
	text-decoration: none;
	animation: wave-move 1s linear infinite;
}

.w-separator.wave-underline:empty {
	height: 1.5rem !important;
	margin-bottom: 1.125rem !important;
}


@media (max-width: 900px) {
	#oeffnungszeiten .w-separator.wave-underline:empty {
		height: 0.5rem !important;
		margin-bottom: 0 !important;
		background-image: none;
	}
}

@keyframes wave-move {
  0% {
    background-position-x: 0;
  }
  100% {
    background-position-x: -40px; /* shift by one wave length */
  }
}


/*** Notrufnummern ***/

.emergency-items {
	justify-content: center;
	gap: 1rem;
}
.emergency-items .w-vwrapper {
	width: 300px;
	aspect-ratio: 1 / 1;
}
.emergency-items .w-vwrapper:not(:first-child) {
	padding: 2.5rem;
	border-radius: 30px;
}
.emergency-items .w-vwrapper a,
.emergency-items .w-vwrapper a:hover {
	color: var(--color-black);
	font-size: 1.25rem;
}

.emergency-items .w-vwrapper .w-image {
	width: 60px;
}
 
@media (min-width: 601px) {	
	.emergency-items {
		gap: 3rem;
	}
}
@media (min-width: 1201px) {	
	.emergency-items .w-vwrapper {
		width: calc((100% - 3rem * 2) / 3);
		aspect-ratio: 1 / 1;
	}
}

/*** GALLERY ***/

.royalSlider .rsArrow:after {
	font-weight: 300;
}
.w-slider.fit_cover .w-slider-h img {
    object-position: right;
}

#praxis-galerie .w-gallery-item {
	height: 600px;
}

@media (max-width: 1024px) {
    .w-gallery.type_masonry .w-gallery-item {
    	width: calc(100% / var(--columns, 1));
    }
}

#praxis-galerie .w-gallery-item .w-gallery-item-img img {
	border-radius: 30px;
	width: auto;
	height: auto;
	max-width: 500px;  /* landscape limit */
	max-height: 500px; /* portrait limit */
	background: none;
}
@media (max-width: 1200px) {
	#praxis-galerie .w-gallery-item .w-gallery-item-img img {
		max-width: 400px;  /* landscape limit */
		max-height: 400px; /* portrait limit */
	}
}

#praxis-galerie .w-gallery-item .w-gallery-item-img {
	position: relative;
	left: 0;	
	top: 0;
	z-index: 5;
	--scroll-speed: 0;
}

#praxis-galerie .w-gallery-item:nth-child(1) .w-gallery-item-img {	left: -6%;	top: 0;		--scroll-speed: 0;	}
#praxis-galerie .w-gallery-item:nth-child(2) .w-gallery-item-img {	left: -4%;	top: 120px;	--scroll-speed: 7;	}
#praxis-galerie .w-gallery-item:nth-child(3) .w-gallery-item-img {	left: -12%;	top: -90px;	--scroll-speed: 3;	}
#praxis-galerie .w-gallery-item:nth-child(4) .w-gallery-item-img {	left: 6%;	top: 0;		--scroll-speed: 10;	}
#praxis-galerie .w-gallery-item:nth-child(5) .w-gallery-item-img {	left: 0;	top: 150px;	--scroll-speed: 12;	}
#praxis-galerie .w-gallery-item:nth-child(6) .w-gallery-item-img {	left: 4%;	top: -30px;	--scroll-speed: 3;	}
#praxis-galerie .w-gallery-item:nth-child(7) .w-gallery-item-img {	left: 12%;	top: 0;		--scroll-speed: 0;	}
#praxis-galerie .w-gallery-item:nth-child(8) .w-gallery-item-img {	left: 0;	top: 150px;	--scroll-speed: 7;	z-index: 3; }
#praxis-galerie .w-gallery-item:nth-child(9) .w-gallery-item-img {	left: 8%;	top: -30px;	--scroll-speed: 5;	}
#praxis-galerie .w-gallery-item:nth-child(10) .w-gallery-item-img {	left: 18%;	top: 160px;	--scroll-speed: 3;	z-index: 3;	}
#praxis-galerie .w-gallery-item:nth-child(11) .w-gallery-item-img {	left: 64%;	top: 340px;	--scroll-speed: 10;	}
#praxis-galerie .w-gallery-item:nth-child(12) .w-gallery-item-img {	left: -12%;	top: -40px;	--scroll-speed: 7;	}



/*** CONTACT FLAG ***/

#contact-flag {
	position: fixed;
	right: 0;
	bottom: 40%;
	z-index: 10;
	transition: all 0.2s ease-out;
}
#contact-flag:not(.active) {
	right: -220px;
}
.contact-flag-handle {
    display: flex;
    align-items: center;
    justify-content: center;
}
.contact-flag-handle .w-text-value {
    transform: rotate(180deg);
    writing-mode: vertical-rl;
}
