﻿
@charset "utf-8";

/**
 * Theme Name:     Dr. Verena Niederer
 * Theme URI:      www.verena-niederer.net
 * Description:    Psychologin Südtirol
 * Author:         Pircher Stefan
 * Author URI:     www.ps-design.it
 * Version:        1.0
 */

/* ============================
   > CONTENTS
   ==================
		> BODY, HTML
		> LINKS
		> PRELOADER
		> FLEXBOX
*/

/* ============================
   > BODY, HTML
   ================== */

body, html, input, button, textarea, select {
		font-family:var(--vnie_font_regular); font-size:16px;
		line-height:1.6rem; color:var(--vnie_text);
}
body { background-color:var(--vnie_med_petrol); overflow:hidden; }
body.loaded { overflow:auto; } body.menu_mobile_opened { overflow:hidden; }

/* media-queries */
@media screen and (max-width: 480px) {
		body, html, input, button, textarea, select {
				line-height:1.4rem;
				font-size:15px;
		}
}

/* ============================
   > CSS-VARIABLES
   ================== */

:root {
		/* farbwerte */
		--vnie_light_petrol:#aed6d5;
		--vnie_med_petrol:#5e9da6;
		--vnie_dark_petrol:#005665;
		--vnie_yellow:#ffc000;
		--vnie_beige:#e4dad1;
		--vnie_light_beige:#f7f3f0;
		--vnie_text:#064054;
		--vnie_black:#000;
		--vnie_white:#fff;
		/* schriften */
		--vnie_font_regular:'Poppins-Regular', Arial, Helvetica, sans-serif;
		--vnie_font_medium:'Poppins-Medium', Arial, Helvetica, sans-serif;
		--vnie_font_semibold:'Poppins-SemiBold', Arial, Helvetica, sans-serif;
		--vnie_font_handwritten:'OoohBaby-Regular', Arial, Helvetica, sans-serif;
}

/* ============================
   > FONT-EMBEDS
   ================== */

@font-face {
		font-family:'Poppins-Regular';
		src:url('fonts/Poppins-Regular.woff2') format('woff2');
}
@font-face {
		font-family:'Poppins-Medium';
		src:url('fonts/Poppins-Medium.woff2') format('woff2');
}
@font-face {
		font-family:'Poppins-SemiBold';
		src:url('fonts/Poppins-SemiBold.woff2') format('woff2');
}
@font-face {
		font-family:'OoohBaby-Regular';
		src:url('fonts/OoohBaby-Regular.woff2') format('woff2');
}

/* ============================
   > LINKS
   ================== */

a:link 			{ font-family:var(--vnie_font_regular); color:var(--vnie_text); text-decoration:underline; }
a:visited 	{ font-family:var(--vnie_font_regular); color:var(--vnie_text); text-decoration:underline; }
a:active 		{ font-family:var(--vnie_font_regular); color:var(--vnie_text); text-decoration:none; }
a:hover 		{ font-family:var(--vnie_font_regular); color:var(--vnie_text); text-decoration:none; }

/* ============================
   > PRELOADER
   ================== */

#preloader {
		position:fixed; z-index:999;
		top:0; width:100%; height:100vh;
		background:var(--vnie_dark_petrol);

		display:flex; align-items:center;
		justify-content:center;

		animation-timing-function:ease-in-out;
		animation-fill-mode:forwards;
		animation-duration:1s;
}
#preloader .logo {
		background:url('images/dvn.svg') no-repeat center;
		background-size:contain; width:150px; height:121px;
		animation:zoom-in-zoom-out 3s ease infinite;
}
#preloader .loader {
		width:48px; height:48px; background-size:48px 48px;
		background:url('images/loading.svg') no-repeat center;
		display:none; /* not-in-use */
}
/* body-loaded-and-ready */
.loaded #preloader .loader,
.loaded #preloader .logo {
		transition:all .3s ease-out;
		opacity:0;
}
.loaded #preloader {
		animation-name:fadeOut;
		animation-delay:.4s;
}
/* keyframe-animations */
@keyframes fadeOut {
		0% { opacity:1; visibility:visible; }
		100% { opacity:0; visibility:hidden; }
}
@keyframes zoom-in-zoom-out {
		0% { transform:scale(1, 1); }
		50% { transform:scale(1.2, 1.2); }
		100% { transform:scale(1, 1); }
}

/* media-queries */
@media screen and (max-width: 720px) {
		#preloader .logo {
				width:100px; height:81px;
		}
}

/* ============================
   > FLEXBOX
   ================== */

.flex {
		display:-webkit-flex;
		display:-ms-flexbox;
		display:flex;
}

/* ============================
   > H/V CENTERING
   ================== */

.halign { left:50%; transform:translateX(-50%); }
.valign { top:50%; transform:translateY(-50%); }
.hvalign { top:50%; left:50%; transform:translate(-50%,-50%); }

/* ============================
   > HEADLINES
   ================== */

h1, h2, h3, h4, h5 {
		font-weight:normal;
}
body strong {
		font-family:var(--vnie_font_semibold);
		font-weight:normal;
}

/* media-queries */

/* ============================
   > WRAPPER
   ================== */

.max1480 {
		max-width:1480px;
		margin:60px auto;
}

/* media-queries */
@media screen and (max-width: 980px) {
		.max1480 {
				margin:90px 0 0;
				position:relative;
				overflow:auto;
		}
}

/* ============================
   > HEADER
   ================== */

#header {
		background-color:var(--vnie_white);
		padding:0 90px;

		display:flex;
		align-items:center;

		border-top-left-radius:22px;
		border-top-right-radius:22px;
}
/* logo */
#header .logo {
		min-width:328px;
		margin:38px 0;
}
#header .logo a {
		display:inline-flex;
		text-decoration:none;
		align-items:center;
}
#header .logo a:before {
		display:block; content:''; margin-right:24px;
		background:url('images/dvn.svg') no-repeat center;
		background-size:contain; width:73px; height:59px;
}
#header .hl {
		white-space:nowrap;
}
#header .logo h1 {
		font-family:var(--vnie_font_semibold);
		font-size:28px; margin:0 0 8px;
}
#header .logo h1 span {
		font-family:var(--vnie_font_regular);
}
#header .logo h2 {
		font-family:var(--vnie_font_regular);
		font-size:16px; line-height:1.2rem;
}
/* mmenu */
#header .mmenu {
		width:100%;
}
/* no-menu-on-std-pages */
#header .mmenu {
		flex:1;
}
/* btn-kontakt */
.getintouch {
		text-align:right;
}
.getintouch a {
		font-family:var(--vnie_font_semibold);
		font-size:16px; letter-spacing:.5px;
		transition:background-color .3s ease;
		text-decoration:none;

		border-radius:99999px;
		padding:13px 75px 12px 25px;
		line-height:100%;

		background-color:var(--vnie_light_petrol);
		background-image:url('images/ico-mail.svg');
		background-position:85% center;
		background-repeat:no-repeat;
		background-size:25px 18px;
}
.getintouch a:hover {
		background-color:var(--vnie_med_petrol);
}
/* header-mobile */
#header.mobile {
		position:fixed; z-index:992; top:-100%;
		right:0; left:0; border-radius:0;
}
#header.mobile.active {
		/*animation:slideDown 0.35s ease-out; top:0;*/
}
/* hide-header-on-scrolldown */
#header.mobile.active { transition:top 0.2s ease-in-out; }
#header.mobile.active.nav-down { top:0; }
#header.mobile.active.nav-up { top:-100px; }

#header.mobile .logo {
		margin:13px 0;
}
#header.mobile .logo h1 {
		font-size:24px;
		margin:0;
}
/* keyframe-animation */
@keyframes slideDown {
		from { transform:translateY(-100%); }
		to { transform:translateY(0); }
}

/* media-queries */
@media screen and (max-width: 1280px) {
		#header {
				padding:0 45px;
		}
}
@media screen and (max-width: 980px) {
		#header.desktop {
				display:none;
		}
		#header.mobile {
				top:0; animation:none !important;
				justify-content:space-between;
				/*transition:top 0.2s ease-in-out;*/
		}
		#header.mobile.nav-down {
				/*top:0;*/
		}
		#header.mobile.nav-up {
				/*top:-100px;*/
		}
		#header.mobile .logo {
				flex:1;
		}
		#header.mobile .hl {
				white-space:normal;
		}
}
@media screen and (max-width: 720px) {
		#header.mobile {
				padding:0 20px;
		}
		#header.mobile .logo {
				min-width:0;
		}
		#header.mobile .logo h1 {
				font-size:20px;
		}
		.getintouch a {
				display:block; font-size:0;
				width:48px; height:48px; padding:0;
				background-position:center;
		}
}


/* ============================
   > MMENU-U-MOBILE
   ================== */

.mmenu {
		display:flex;
		list-style:none;
		justify-content:center;
		grid-gap:50px; padding:0;
}
.mmenu li {
		white-space:nowrap;
}
.mmenu li a {
		font-family:var(--vnie_font_semibold);
		text-decoration:none; padding:10px 0;
		font-size:20px; line-height:100%;
}
.mmenu li a:hover,
.mmenu li a.active,
.mmoverlay .mmenu li a:hover,
.mmoverlay .mmenu li a.active {
		color:var(--vnie_med_petrol);
}

/* media-queries */
@media screen and (max-width: 980px) {
		.mmenu {
				display:none;
		}
}

/* ============================
   > MOBILEMENU
   ================== */

.mmtrigger {
		display:none; z-index:992;
		align-items:center; justify-content:center;
		padding:25px 30px; margin-left:20px;
		transition-duration:0.5s;
}
.mmtrigger .icon,
.mmtrigger .icon:before,
.mmtrigger .icon:after {
 		position:absolute; width:40px;
		height:4px; cursor:pointer;
		background:var(--vnie_text);
}
.mmtrigger .icon:before,
.mmtrigger .icon:after {
		content:'';
}
.mmtrigger .icon {
		transition-duration:0.5s;
}
.mmtrigger .icon:before {
		transition-duration:0.5s;
		top:-12px;
}
.mmtrigger .icon:after {
		transition-duration:0.5s;
		top:12px;
}
.mmtrigger.open .icon {
		transition-duration:0.5s;
		transform:rotateZ(180deg);
}
.mmtrigger.open .icon:before {
		transform:rotateZ(-45deg) scaleX(0.75) translate(-12px, -6px);
}
.mmtrigger.open .icon:after {
		transform:rotateZ(45deg) scaleX(0.75) translate(-12px, 6px);
}
.mmtrigger:hover {
		cursor:pointer;
}
.mmoverlay {
		position:fixed; z-index:991; display:none;
		top:-100vh; left:0; right:0; bottom:0; opacity:1;
		width:100%; height:100vh; background-color:var(--vnie_dark_petrol);

		transition:top 0.5s cubic-bezier(0.46, 0.03, 0.52, 0.96), box-shadow 0.3s ease-out;
		display:flex; justify-content:center; align-items:center; overflow:hidden;
}
/* std-pages-wrapper */
.mmoverlay .std_wrapper {
		display:flex; align-items:center;
		transition:all .4s ease; opacity:0;
		bottom:-12%; transition-delay:.6s;
		position:absolute; grid-gap:12px;
}
body.menu_mobile_opened .mmoverlay .std_wrapper {
		bottom:12%; opacity:1;
}
.mmoverlay .std_wrapper,
.mmoverlay .std_wrapper a {
		color:var(--vnie_med_petrol);
}
.mmoverlay .std_wrapper a {		
		cursor:pointer;
}
.mmoverlay .std_wrapper a:after {		
		content:'•'; margin-left:12px;
}
.mmoverlay .std_wrapper a:last-of-type:after {		
		display:none;
}
.mmoverlay .std_wrapper a:hover {
		color:var(--vnie_light_petrol);
}
body.menu_mobile_opened .mmoverlay {
		top:0;
}

/* media-queries */
@media screen and (max-width: 980px) {
		.mmtrigger {
				display:flex;
		}
		.mmoverlay .mmenu {
				display:block;
		}
		.mmoverlay .mmenu li {
				text-align:center;
		}
		.mmoverlay .mmenu li a {
				font-size:28px; padding:20px 0;
				color:var(--vnie_white);
				display:block;
		}
}
@media screen and (max-width: 720px) {
		.mmoverlay .mmenu li a {
				font-size:26px;
		}
}
@media screen and (max-width: 480px) {
		.mmoverlay .mmenu li a {
				padding:15px 0;
				font-size:24px;
		}
		.mmoverlay .std_wrapper {
				bottom:-18%; grid-gap:6px;
				flex-direction:column;
		}
		.mmoverlay .std_wrapper a:after {
				display:none;
		}
}

/* ============================
   > SECTIONS
   ================== */

.section {
		position:relative;
		padding:0 180px;
}
.section h3, .popup h1 {
		font-family:var(--vnie_font_semibold);
		font-size:55px; line-height:normal;
		color:var(--vnie_text);
		position:relative;
}
.section h3:after {
		content:''; height:2px;
		width:100%; max-width:84px;
		display:flex; margin:4px auto 0;
		background:var(--vnie_yellow);
  	justify-content:center;
}
.section p, .popup p {
		margin:0 0 24px;
}

/* media-queries */
@media screen and (max-width: 1400px) {
		.section {
				padding:0 140px;
		}
}
@media screen and (max-width: 980px) {
		.section {
				padding:0 70px;
		}
		.section h3 {
				font-size:50px;
		}
}
@media screen and (max-width: 720px) {
		.section {
				padding:0 40px;
		}
		.section h3 {
				font-size:45px;
		}
}
@media screen and (max-width: 480px) {
		.section {
				padding:0 20px;
		}
		.section h3 {
				padding-top:28px;
				font-size:30px;
		}
}

/* ============================
   > WAVE-SEPARATOR
   ================== */

.wave {
		position:absolute; z-index:1;
		bottom:-1px; left:0; right:0;
}

/* media-queries */

/* ============================
   > WILLKOMMEN
   ================== */

#willkommen {
		position:relative;
		padding:0;
}
#willkommen .wave svg {
		fill:var(--vnie_light_beige);
}
/* slide-in-text */
.welcome:before {
		display:block; content:'Willkommen';
		font-family:var(--vnie_font_medium);
		font-size:20px; color:var(--vnie_text);
		letter-spacing:4px; margin-bottom:20px;
		padding:12px 28px; border-radius:4px;
		background:var(--vnie_yellow);
		text-transform:uppercase;
}
.welcome {
		position:absolute; bottom:160px;
		left:90px; display:flex; flex-direction:column;
		align-items:flex-start; color:var(--vnie_white);
}
.welcome .item {
		position:relative;
		font-family:var(--vnie_font_medium);
		text-shadow:2px 2px 8px rgba(0,0,0, 0.2);
		font-size:24px; padding:8px 0; opacity:0;

		animation-fill-mode:both;
		animation-duration:.8s;
}
/* mobile-view */
#willkommen.mobile {
		padding-bottom:90px;
		display:none;
}
#willkommen.mobile .welcome:before {
		margin-top:20px;
}
#willkommen.mobile .welcome {
		display:flex; position:relative;
		align-items:center; overflow:hidden;
		bottom:auto; left:auto;
}
#willkommen.mobile .picwave {
		position:relative;
}
#willkommen.mobile .picwave .wave svg {
		fill:var(--vnie_med_petrol);
}
.welcome .item {
		text-align:center;
}

body.loaded .welcome .item {
		animation-name:slideInLeft;
}
body.loaded .welcome .item:first-of-type { animation-delay:3s; }
body.loaded .welcome .item:nth-of-type(2) { animation-delay:4s; }
body.loaded .welcome .item:nth-of-type(3) { animation-delay:5s; }
body.loaded .welcome .item:last-of-type { animation-delay:6s; }

/* keyframe-animations */
@keyframes slideInLeft {
		0% { opacity:0; left:80%; }
		100% { opacity:1; left:0; }
}

/* media-queries */
@media screen and (max-width: 980px) {
		.welcome:before {
				font-size:18px;
				letter-spacing:3px;
				margin-bottom:10px;
				padding:8px 18px;
		}
		.welcome {
				bottom:120px; left:70px;
		}
		.welcome .item {
				font-size:20px;
				padding:6px 0;
		}
}
@media screen and (max-width: 720px) {
		#willkommen.desktop {
				display:none;
		}
		#willkommen.mobile {
				display:block;
		}
}
@media screen and (max-width: 480px) {
		#willkommen.mobile {
				padding-bottom:70px;
		}
		#willkommen.mobile .welcome .item {
				font-size:18px;
				padding:4px 0;
		}
}

/* ============================
   > SECTION-ÜBERMICH
   ================== */

#uebermich {
		background:var(--vnie_light_beige);
		padding-bottom:420px;	/* 374px = height-of-zitat-kafka */
}
#uebermich .wave svg {
		fill:var(--vnie_dark_petrol);
}
#uebermich.section h3 {
		display:inline-block;
		margin-bottom:28px;
}
#uebermich .inner {
		position:relative;
		z-index:2; grid-gap:40px;
		align-items:center;
}
#uebermich .col {
		width:100%;
}
/* linke-spalte */
#uebermich .intro {
		max-width:360px;
}
#uebermich .readmore,
#uebermich .readless {
		display:inline-block; cursor:pointer;
		font-family:var(--vnie_font_medium);
		font-size:16px; color:var(--vnie_white);
		background-color:var(--vnie_dark_petrol);
		border-radius:9999px; text-align:center;
		margin-top:10px; padding:13px 37px;
		text-decoration:none;
}
/* rechte-spalte */
#uebermich .pic {
		background-image:url('images/bubble-uebermich.svg');
		background-repeat:no-repeat; padding:50px;
		position:relative;
}
#uebermich .pic img {
		border-radius:50%;
		margin-left:50px;
}
/* eigenschaften */
#uebermich .properties.mobile {
		display:none; margin-top:40px;
}
#uebermich .pic .properties {
		position:absolute; right:-64px;
		width:340px; top:20px; bottom:20px;
		align-items:flex-end;

		justify-content:space-between;
		flex-direction:column;
}
#uebermich .pic .properties div {
		max-width:180px; align-self:flex-start;
}
#uebermich .properties div {
		font-size:32px; line-height:2rem;
		font-family:var(--vnie_font_handwritten);
		color:var(--vnie_dark_petrol);
}
#uebermich .properties span {
		text-indent:-30px; padding-left:30px;
}
#uebermich .pic .properties div:first-of-type { margin-left:20px; }
#uebermich .pic .properties div:nth-of-type(2) { margin-left:100px; }
#uebermich .pic .properties div:nth-of-type(3) { margin-left:130px; }
#uebermich .pic .properties div:last-of-type { margin-left:100px; }

/* highlight-text */
#uebermich .highlight {
		font-family:var(--vnie_font_regular);
		font-size:20px; color:var(--vnie_text);
		line-height:2rem; text-align:center;
		padding:60px 120px;
}
#uebermich .highlight p {
		margin-bottom:0;
}
/* curriculum-text */
#vita {
		display:grid; grid-template-rows:0fr;
		transition:grid-template-rows 0.5s ease-out;
}
#vita.active {
		grid-template-rows:1fr;
}
#vita .inner {
		padding:0 120px;
		text-align:center;
		overflow:hidden;
}
#vita .readless {
		margin-bottom:60px;
}
/* zitat-kafka */
#uebermich .kafka {
		position:absolute; bottom:0; left:0; right:0;
		background:url('images/zitat-kafka.webp') no-repeat bottom center;
		background-size:contain; min-height:374px;

		align-items:center;
		flex-direction:column;
}
#uebermich .kafka quote,
#uebermich .kafka .author,
#angebote .satir {
		font-family:var(--vnie_font_handwritten);
		color:var(--vnie_black);
}
#uebermich .kafka quote {
		text-align:center;
		margin:40px 0 20px;
		line-height:1.8rem;
		font-size:32px;
}
#uebermich .kafka quote p {
		margin:0;
}
#uebermich .kafka .author {
		font-size:22px;
}

/* media-queries */
@media screen and (max-width: 1280px) {
		/* eigenschaften */
		#uebermich .pic .properties {
				display:none;
		}
		#uebermich .properties.mobile {
				display:flex; grid-gap:20px;
		}
}
@media screen and (max-width: 980px) {
		#uebermich {
				padding-bottom:360px;
		}
		/* highlight-text */
		#uebermich .highlight {
				padding:40px 60px;
		}
		/* curriculum-text */
		#vita .inner {
				padding:0 80px;
		}
		/* zitat-kafka */
		#uebermich .kafka {
				min-height:324px;
		}
		/* eigenschaften */
		#uebermich .properties.mobile div {
				line-height:1.8rem;
				font-size:28px;
		}
}
@media screen and (max-width: 720px) {
		#uebermich {
				padding-bottom:300px;
		}
		#uebermich .inner {
				flex-wrap:wrap;
				grid-gap:0;
		}
		/* linke-spalte */
		#uebermich .intro {
				max-width:none;
		}
		/* rechte-spalte */
		#uebermich .pic {
				background-position:center;
		}
		#uebermich .pic img {
				margin:0 auto;
		}
		/* eigenschaften */
		#uebermich .properties.mobile {
				margin-top:20px;
				grid-gap:10px 40px;
				justify-content:center;
				flex-wrap:wrap;
		}
		#uebermich .properties span {
				text-indent:0; padding-left:0;
		}
		/* highlight-text */
		#uebermich .highlight {
				line-height:1.7rem;
				font-size:18px;
		}
		/* curriculum-text */
		#vita .inner {
				padding:0 40px;
		}
		/* zitat-kafka */
		#uebermich .kafka {
				min-height:274px;
		}
		#uebermich .kafka quote {
				margin:40px 40px 20px;
				font-size:28px;
		}
		#uebermich .kafka .author {
				font-size:20px;
		}
}
@media screen and (max-width: 480px) {
		#uebermich {
				padding-bottom:240px;
		}
		#uebermich .intro {
				text-align:center;
		}
		#uebermich .readmore,
		#uebermich .readless {
				margin-top:0;
				padding:10px 30px;
				font-size:15px;
		}
		/* eigenschaften */
		#uebermich .properties.mobile {
				margin-top:0;
		}
		#uebermich .properties.mobile div {
				line-height:1.6rem;
				font-size:24px;
		}
		/* highlight-text */
		#uebermich .highlight {
				padding:20px 0 40px;
				line-height:1.6rem;
				font-size:16px;
		}
		/* curriculum-text */
		#vita .inner {
				padding:0 20px;
		}
		/* zitat-kafka */
		#uebermich .kafka {
				min-height:224px;
		}
}

/* ============================
   > SECTION-PAGE.PHP
   ================== */

#page {
		background:var(--vnie_light_beige);
		padding-bottom:80px;
}
#page h3 {
		display:inline-block;
		margin-bottom:40px;
}
#page h4 {
		font-family:var(--vnie_font_semibold);
		font-size:20px; margin:40px 0 20px;
}

/* media-queries */
@media screen and (max-width: 720px) {
		#page h3 {
				margin-bottom:30px;
		}
		#page h4 {
				margin:30px 0 10px;
				font-size:18px;
		}
}
@media screen and (max-width: 480px) {
		#page h3 {
				margin-bottom:20px;
		}
		#page h4 {
				margin:20px 0 10px;
				font-size:16px;
		}
}

/* ============================
   > ACCORDION-STYLES
   ================== */

dl.accordion {
		display:flex; grid-gap:20px;
		flex-direction:column;

		overflow:hidden; z-index:2;
		position:relative;
}
dl.accordion dt {
		position:relative;
		cursor:pointer;
}
dl.accordion dd {
		display:none;
}
/* accordion-header */
dt.accordion-title {
		background:var(--vnie_beige);
		border-radius:40px;
}
dt.accordion-title.open {}
dt.accordion-title a {
		display:flex; align-items:center;
		justify-content:space-between;

		font-family:var(--vnie_font_medium);
		letter-spacing:.4px; text-decoration:none;
		font-size:18px; color:var(--vnie_black);
		padding:27px 60px 27px 80px;
}
/* accordion-content */
dd.accordion-content {
		padding:40px 60px 40px 80px;
		font-family:var(--vnie_font_regular);
		color:var(--vnie_black);
}
dd.accordion-content li {
		padding:8px 0;
}
/* plus-minus-icons */
dl.accordion .plus svg rect,
dl.accordion .minus svg rect {
		fill:#171010;
}
dt.accordion-title .minus,
dt.accordion-title.open .plus {
		display:none;
}
dt.accordion-title .plus,
dt.accordion-title.open .minus {
		display:block;
}

/* media-queries */
@media screen and (max-width: 720px) {
		dt.accordion-title a {
				padding:22px 40px 22px 60px;
				font-size:16px;
		}
		dd.accordion-content {
				padding:30px 40px;
		}
}
@media screen and (max-width: 480px) {
		dl.accordion {
				grid-gap:10px;
		}
		dt.accordion-title {
				border-radius:10px;
		}
		dt.accordion-title a {
				padding:20px 30px;
				font-size:15px;
		}
		dd.accordion-content {
				padding:20px 0;
		}
		dl.accordion .plus svg,
		dl.accordion .minus svg {
				width:18px;
		}
}

/* ============================
   > SECTION-ANGEBOTE
   ================== */

#angebote {
		background:var(--vnie_dark_petrol);
		color:var(--vnie_white);
		padding-bottom:220px;	/* 120px = height-of-wave-separator */
}
#angebote.section h3 {
		color:var(--vnie_white);
		display:inline-block;
}
#angebote.section h4 {
		font-family:var(--vnie_font_medium);
		font-size:20px; color:var(--vnie_yellow);
		line-height:1.5rem; margin-bottom:24px;
}
#angebote .wave svg {
		fill:var(--vnie_light_beige);
}
/* incl-tabs.php */
.tabwrap {
		position:relative;
		margin-top:60px;
		z-index:2;
}
ul.tabs {
		display:flex; column-gap:1px;
		margin:0px; padding:0px;
		justify-content:center;
		list-style:none;
}
ul.tabs li {
		flex:fit-content; cursor:pointer;
		color:var(--vnie_light_petrol); padding:40px 0;
		border-bottom:1px solid var(--vnie_yellow);

		font-family:var(--vnie_font_medium);
		font-size:26px; line-height:2rem;
}
ul.tabs li.current {
		border-top:1px solid var(--vnie_yellow);
		border-bottom:none; color:var(--vnie_yellow);
		border-right:1px solid var(--vnie_yellow);
		padding:40px 0 0;
}
ul.tabs li.current:last-of-type {
		border-left:1px solid var(--vnie_yellow);
		border-right:none;
}
ul.tabs li:last-of-type {
		text-align:right;
}
.tab-content {
		display:none;
		padding:50px 0;
		margin:0 auto;
}
.tab-content.current {
		display:inherit;
}
/* zitat-satir */
ul.tabs li quote.satir,
.tab-content .satir {
		display:none;
}
.tab-content .satir {
		font-size:24px; line-height:1.8rem;
		color:var(--vnie_white) !important;
		margin-bottom:24px;
}
.tab-content .satir i {
		display:inline-block;
		color:var(--vnie_yellow);
		font-style:normal;
		margin-top:6px;
}
ul.tabs li.current quote.satir  {
		font-size:24px; line-height:1.8rem;
		color:var(--vnie_white) !important;
		display:block; margin-top:30px;
}
ul.tabs li quote.satir span {
		display:block; margin-top:6px;
		color:var(--vnie_yellow);
}
/* accordion-inside-tab */
.tab-content .item {
		margin-bottom:20px;
		position:relative;
}
.tab-content .item a {
		position:relative; line-height:1.5rem;
		cursor:pointer; color:var(--vnie_white);
		align-items:center; grid-gap:40px;
		display:inline-flex;
}
/* plus-minus-icons */
.tab-content .item a:after {
		position:absolute; content:''; width:16px; height:16px; right:-50px;
		background:url('images/ico-plus-minus.webp') no-repeat center top;
}
.tab-content .item.active a:after {
		background-position:bottom;
}
/* slide-out-animation */
.tab-content .item .wrapper {
		display:grid; grid-template-rows:0fr;
		transition:grid-template-rows 0.5s ease-out;
}
.tab-content .item.active .wrapper {
		grid-template-rows:1fr;
}
.tab-content .item .outer {
  	overflow:hidden;
}
.tab-content .item .inner {
		padding:20px 40px 0;
}
/* box-verschwiegenheit */
#angebote .diskretion {
		border:2px solid var(--vnie_yellow);
		border-radius:18px; padding:46px;
}
#angebote .diskretion h4 {
		margin-bottom:12px;
}
#angebote .diskretion p {
		margin-bottom:0;
}

/* media-queries */
@media screen and (max-width: 980px) {
		#angebote {
				padding-bottom:180px;
		}
		#angebote .diskretion {
				padding:38px;
		}
		ul.tabs li {
				font-size:24px;
		}
}
@media screen and (max-width: 720px) {
		#angebote {
				padding-bottom:140px;
		}
		#angebote .diskretion {
				padding:32px;
		}
		/* tabs */
		ul.tabs {
				flex-wrap:wrap;
		}
		ul.tabs li {
				text-align:center !important; font-size:22px;
				padding:20px 0 !important; border:none;
		}
		ul.tabs li:first-child {
				border-bottom:none !important;
		}
		ul.tabs li.current {
				border:1px solid var(--vnie_yellow) !important;
		}
		ul.tabs li quote.satir  {
				display:none !important;
		}
		.tab-content .item .inner {
			padding:20px 30px 0;
		}
		/* zitat-satir-tab-content */
		.tab-content .satir {
				display:block;
		}
}
@media screen and (max-width: 480px) {
		#angebote {
				padding-bottom:100px;
		}
		#angebote.section h3 {
				text-align:center;
				display:block;
		}
		#angebote.section h4 {
				line-height:1.4rem;
				margin-bottom:20px;
				font-size:16px;
		}
		#angebote .diskretion {
				padding:22px;
		}
		ul.tabs li {	
				padding:10px 0 !important;
				font-size:18px; border:none;
				border-radius:4px;
		}
		.tab-content {
				padding:30px 0;
		}
		.tab-content .item .inner {
				padding:0 20px;
		}
		.tab-content .item a {
				padding-right:40px;
		}
		.tab-content .item a:before {
				display:none;
		}
		.tab-content .item a:after {
				right:0;
		}
		/* zitat-satir-tab-content */
		.tab-content .satir {
				line-height:1.6rem;
				font-size:20px;
		}
}

/* ============================
   > SECTION-KONTAKT
   ================== */

#kontakt {
		background:var(--vnie_light_beige);
		overflow:hidden;
}
#kontakt.section h3 {
		text-align:center;
}
#kontakt .intro {
		font-family:var(--vnie_font_regular);
		font-size:16px; line-height:1.6rem;
		text-align:center; margin-top:30px;
}

/* media-queries */

/* ============================
   > #7-KONTAKT-CF7
   ================== */

.wpcf7 {
		margin:50px auto 100px;
		max-width:980px;
}
/* pflichtfelder */
.wpcf7 u {
		color:var(--vnie_yellow);
		text-decoration:none;
}
/* form-field-styles */
.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type='tel'],
.wpcf7 input[type='submit'],
.wpcf7 textarea {
		box-sizing:border-box; border:none;
		padding:16px 30px; border-radius:2px; width:100%;
		border-bottom:2px solid var(--vnie_light_petrol);
		background:var(--vnie_white); font-size:17px;
		line-height:normal; transition:all .4s ease;
}
/* focus-deaktivieren */
.wpcf7 input:focus,
.wpcf7 textarea:focus,
.wpcf7 button:focus {
    outline:none; border-bottom:2px solid var(--vnie_med_petrol);
}
/* placeholder-color-u-opacity */
::-webkit-input-placeholder { color:var(--vnie_black) !important; opacity:.4; }
:-moz-placeholder { color:var(--vnie_black) !important; opacity:.4; }
::-moz-placeholder { color:var(--vnie_black) !important; opacity:.4; }
:-ms-input-placeholder { color:var(--vnie_black) !important; opacity:.4; }

/* grid-styles */
.wpcf7 .grid { display:grid; grid-gap:24px 32px; }
.wpcf7 .grid.two { grid-template-columns:repeat(2, 1fr); }
.wpcf7 [data-name="message"] { grid-column:1 / -1; }
.wpcf7 [data-name="message"]::after { content:''; display:block; height:13px; }
.wpcf7 textarea {	max-height:148px; resize:none; }

/* custom-checkbox-styles */
.wpcf7 label.privacy {
		display:flex; margin-top:18px;
		justify-content:center;
		align-items:center;
}
.wpcf7 .privacy > span {
		height:20px;
}
.wpcf7 .privacy div {
		line-height:27px;
		margin-left:18px;
}
.wpcf7 .privacy div,
.wpcf7 .privacy div a {
		font-size:15px;
}
.wpcf7 .privacy div a {
		color:var(--vnie_text) !important;
}
.wpcf7 input[type="checkbox"] {
		background:#e1e1e1; border:none;
		-webkit-appearance:none; outline:none;
		position:relative; width:40px; height:20px;
		transition:.5s; border-radius:10px;
}
.wpcf7 input:checked[type="checkbox"] {
		background:#b4d065;
}
.wpcf7 input[type="checkbox"]:before {
		position:absolute; content:'';
		width:20px; height:20px; top:0; left:0;
		background:#fff; transform:scale(1.1);
		box-shadow:0 2px 5px rgba(0,0,0,.2);
		transition:.5s; border-radius:10px;
}
.wpcf7 input:checked[type="checkbox"]:before {
		left:20px;
}
.wpcf7 .privacy .wpcf7-list-item {
		display:inline; margin:0;
}
/* submit-button-styles */
.wpcf7 input[type='submit'] {
		display:block; padding:15px 0;
		background-color:var(--vnie_yellow);
		font-family:var(--vnie_font_semibold);
		border-radius:9999px; margin:0 auto;
		font-size:17px; color:#fff;
		max-width:218px; border:none;
}
.wpcf7 input[type="submit"]:disabled {
		background:var(--vnie_beige) !important;
		cursor:default; color:#fff;
}
.wpcf7 input[type="submit"]:disabled:hover {
		background:var(--vnie_beige);
		cursor:not-allowed;
}
.wpcf7 input[type="submit"]:hover {
		cursor:pointer; opacity:.9 !important;
}
/* recaptcha-styles */
.wpcf7 .recaptcha {
		text-align:center;
		padding:6px 0 60px;
		display:block;
}
.wpcf7 .recaptcha,
.wpcf7 .recaptcha a {
		color:var(--vnie_text);
		font-size:14px;
}
/* recaptcha-badge-ausblenden */
.grecaptcha-badge { visibility:hidden; }

/* cf7-response-output */
.wpcf7 form.invalid u { color:#ff0000 !important; }
.wpcf7 input.wpcf7-not-valid { border-bottom:2px solid var(--vnie_yellow) !important; }
.wpcf7 span.wpcf7-not-valid-tip, div.wpcf7 div.screen-reader-response { display:none; }
.wpcf7 form .wpcf7-response-output { margin:0 0 24px; padding:18px; text-align:center; font-size:15px; }
.wpcf7 form.sent .wpcf7-response-output { border:1px solid #05e029 !important; background:#e6fce9; }
.wpcf7 form.invalid .wpcf7-response-output { border:1px solid #ff0000 !important; background:#ffe5e5; }

/* media-queries */
@media screen and (max-width: 980px) {
		.wpcf7 {
				margin:50px auto;
		}
		.wpcf7 input[type="text"],
		.wpcf7 input[type="email"],
		.wpcf7 input[type='submit'],
		.wpcf7 textarea {
				/*font-size:20px;*/
		}
		.wpcf7 label.privacy div,
		.wpcf7 .recaptcha {
				line-height:normal;
		}
}
@media screen and (max-width: 720px) {
		.wpcf7 .grid {
				grid-template-columns:auto !important;
				grid-gap:10px;
		}
		.wpcf7 input[type="text"],
		.wpcf7 input[type="email"],
		.wpcf7 input[type='submit'],
		.wpcf7 textarea {
				/*font-size:18px;*/
		}
		.wpcf7 .recaptcha {
				padding:18px 0 28px;
		}
}
@media screen and (max-width: 480px) {
		.wpcf7 {
				margin:30px auto;
		}
		#kontakt .intro {
				line-height:140%;
				font-size:15px;
		}
		.wpcf7 input[type="text"],
		.wpcf7 input[type="email"],
		.wpcf7 input[type="tel"],
		.wpcf7 textarea {
				padding:12px 22px;
				font-size:15px;
		}
		.wpbs-form-submit-button button,
		.wpcf7 input[type="submit"] {
				font-size:15px;
				padding:12px 0;
		}
		div.wpcf7 label.privacy div,
		div.wpcf7 label.privacy div a {
				font-size:14px;
		}
}

/* ============================
   > FOOTER
   ================== */

#footer {
		display:flex; flex-wrap:wrap;
		background-color:var(--vnie_dark_petrol);
		position:relative; overflow:hidden;
		padding:90px 180px 0;
}
#footer:before {
		position:absolute; content:''; transform:rotate(200deg);
		top:-100px; left:-100px; width:560px; height:506px;

		background-image:url('images/bubble-footer.svg');
		background-repeat:no-repeat; background-size:contain;
}
#footer, #footer .col a {
		color:var(--vnie_white);
}
#footer .col {
		z-index:1;
		flex:fit-content;
		/*flex:1 0 25%;*/
		/*width:100%;*/
}
#footer .col div {
		line-height:200%;
		font-size:16px;
}
#footer .col h4 {
		font-family:var(--vnie_font_semibold);
		color:var(--vnie_yellow); margin:0 0 32px;
		font-size:20px; letter-spacing:.2px;
}
#footer .col a,
#footer .subfooter a {
		cursor:pointer;
		text-decoration:none;
		position:relative;
}
/* underline-animation */
#footer .col a:after,
.tab-content .item a:before {
		position:absolute; content:'';
		width:100%; height:1px; left:0;
		bottom:0; transform:scaleX(0);
		background-color:var(--vnie_yellow);
		transition:transform 0.3s ease-out;
		transform-origin:bottom right;
}
#footer .col a:hover:after,
.tab-content .item a:hover:before {
		transform-origin:bottom left;
		transform:scaleX(1);
}
/* psychologenkammer-bz */
#footer .col.last {
		text-align:right;
}
#footer .col.last div {
		display:flex; align-items:flex-end;
		flex-direction:column; line-height:150%;
}
#footer .col.last img {
		max-width:68px; margin-top:20px;
}
#footer .col.last a:after {
		display:none;
}
/* privacy-impressum */
#footer .subfooter:before {
		position:absolute; content:'';
		top:0; left:0; right:0; height:1px;
		background:#417280;
}
#footer .subfooter {
		position:relative; flex:1 0 100%;
		text-align:center; font-size:14px;
		margin-top:90px; padding:44px 0;
}
#footer .subfooter a {
		color:var(--vnie_med_petrol);
}

/* media-queries */
@media screen and (max-width: 1280px) {
		#footer {
				padding:90px 120px 0;
		}
}
@media screen and (max-width: 1130px) {
		#footer {
				padding:60px 60px 0;
		}
}
@media screen and (max-width: 980px) {
		#footer {
				grid-gap:40px;
		}
		#footer .col {
				flex:auto;
		}
		/* privacy-impressum */
		#footer .subfooter {
				margin-top:60px;
		}
}
@media screen and (max-width: 720px) {
		#footer {
				padding:40px 40px 0;
		}
		#footer:before {
				display:none;
		}
		#footer .col {
				text-align:center !important;
				width:100%;
		}
		#footer .col.last div {
				align-items:center;
		}
		#footer .col h4 {
				margin:0 0 16px;
		}
		#footer .col .outer {
				display:grid; grid-template-rows:0fr;
				transition:grid-template-rows 0.5s ease-out;
		}
		#footer .col.active .outer {
				grid-template-rows:1fr;
		}
		#footer .col .inner {
				overflow:hidden;
		}
		/* privacy-impressum */
		#footer .subfooter {
				margin-top:30px;
		}
}
@media screen and (max-width: 480px) {
		#footer {
				padding:40px 20px 0;
				grid-gap:20px;
		}
		#footer .col div {
				line-height:150%;
				font-size:15px;
		}
		#footer .col h4 {
				margin:0 0 8px;
		}
		/* privacy-impressum */
		#footer .subfooter {
				padding:22px 0;
				margin-top:0;
		}
}

/* ============================
   > POPUP-FANCYBOX
   ================== */

.popup {
		display:none; width:100%;
		max-width:95%; padding:40px;
		border-radius:3px;
}
.popup a:focus {
    outline:none;
}

/* media-queries */

/* ============================
   > STD-PAGES
   ================== */

.stdpage {
		font-family:var(--vnie_font_regular);
		color:var(--vnie_text); font-size:16px;
		line-height:1.6rem; padding:0 0 40px 0;
}
.stdpage h1 {
		margin:0 !important;
		font-size:32px;
}
.stdpage h4 {
		font-family:var(--vnie_font_semibold);
		font-size:18px; margin:20px 0 10px;
}
.stdpage ul {
		padding:0 20px 24px 30px;
}
.stdpage ul li {
		padding:8px 0;
}
.stdpage .fancybox-close-small {
  	top:15px; right:10px;
}
.stdpage .content-header {
		border-bottom:1px solid #eee;
		padding:20px 40px;
}
.stdpage .content-scroll {
		padding:10px 40px 0; overflow:auto;
		max-height:calc(100vh - 200px);
}

/* media-queries */
@media screen and (max-width: 720px) {
		.stdpage h1 {
				font-size:28px;
		}
}
@media screen and (max-width: 480px) {
		.stdpage {
				font-size:15px;
				padding:0 0 20px 0;
				line-height:1.4rem;
		}
		.stdpage h1 {
				font-size:22px;
		}
		.stdpage h4 {
				font-size:16px;
		}
		.stdpage .content-header {
				padding:20px;
		}
		.stdpage .content-scroll {
				padding:10px 20px 0;
		}
}

/* ============================
   > COMPLIANZ-GDPR
   ================== */

div#cmplz-manage-consent .cmplz-manage-consent {
		bottom:0 !important;
}

/* media-queries */

/* ============================
   > WPML-STYLES
   ================== */

/* wpml-banner-dev-site-ausblenden */
.otgs-development-site-front-end {
		display:none;
}
/* wpml-lang-switcher-reset */
.wpml-ls-legacy-list-horizontal {
		border:none !important;
		padding:0 !important;
}
.wpml-ls-legacy-list-horizontal a {
		display:flex !important;
		padding:0 !important;
}
.wpml-ls-legacy-list-horizontal .wpml-ls-item {
		display:inline !important;
}

/* media-queries */

/* ============================
   > BACKTOP
   ================== */

.backtop {
		position:fixed; z-index:7; cursor:pointer;
		bottom:-100px; right:10px; width:50px; height:50px;
		border-radius:4px; background:var(--vnie_light_petrol);
		display:flex; align-items:center; border-radius:50%;
		justify-content:center; opacity:0;
		transition:all .3s ease-in-out;
}
.backtop.active {
		bottom:10px; opacity:1;
}
.backtop:after {
		border:solid var(--vnie_white);
		display:inline-block; content:'';
		border-width:0 2px 2px 0; padding:5px;
		margin-top:5px; transform:rotate(-135deg);
		-webkit-transform:rotate(-135deg);
}
