/*
 * Theme Name: Praxis Sabine Adler
 * Author: Felicitas Horn
 * Version: 999
 * */

/*


    font-family: 'Cormorant SC', serif;

    font-family: 'Assistant', sans-serif;


*/

/* cormorant-sc-regular - latin */
@font-face {
  font-family: 'Cormorant SC';
  font-style: normal;
  font-weight: 400;
  src: local(''),
       url('./fonts/cormorant-sc-v14-latin-regular.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
       url('./fonts/cormorant-sc-v14-latin-regular.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}

/* assistant-regular - latin */
@font-face {
  font-family: 'Assistant';
  font-style: normal;
  font-weight: 400;
  src: local(''),
       url('./fonts/assistant-v15-latin-regular.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
       url('./fonts/assistant-v15-latin-regular.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}

/* assistant-700 - latin */
@font-face {
  font-family: 'Assistant';
  font-style: normal;
  font-weight: 700;
  src: local(''),
       url('./fonts/assistant-v15-latin-700.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
       url('./fonts/assistant-v15-latin-700.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}
html, body {
  margin:0;
  padding:0;
  background:#fff;
	font-family: 'Assistant', sans-serif;
}
html, body,
select, option,
input[type="text"],
input[type="tel"],
input[type="email"],
textarea {
	font-family: 'Assistant', sans-serif;
  letter-spacing: normal;
	  font-size: 16px;
  font-weight: normal;
  line-height: 1.38;
  color: #787878;
}
select, option,
input[type="text"],
input[type="email"],
textarea {
      font-family: 'Assistant', sans-serif !important;
}
* {
  box-sizing: border-box;
  outline:0;
}
ul, ul li {
  list-style-type: none;
  margin: 0;
  padding:0;
}
button, input[type="submit"], select {
  -webkit-appearance: none;
  border-radius:0; margin:0;border:0;
}
button::-moz-focus-inner {
  border: 0;
}
iframe,
svg,
img {
    display: block;
    max-width:100%;
    height: auto;
}
iframe {
  border:0;
}
iframe,
p,
h1,
h2,
h3,
h4,
h5,
h6 {
  margin:0;padding:0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
	font-size: 16px;
  font-weight: bold;
  line-height: 1.38;
}
h1 {
	font-family: 'Cormorant SC', serif;
	font-weight: normal;
	  font-size: 36px;
  line-height: 1.17;
	text-transform: uppercase;
}
h2 {
	font-weight: normal;
	font-size: 20px;
  line-height: 1.4;
}
h3, h4, h5, h6 {
	font-weight: bold;
	font-size: 100%;
}
strong, em {
  font-weight: bold;
}
header ul:after,
.clearfix:after {
  content: "";
  display: table;
  clear: both;
}

input[type="text"],
input[type="tel"],
input[type="email"] {
    border-radius:0;
}

a {
	color: #e1b500;
	text-decoration: underline;
}

/* COOKIE CONSENT */
.cc-window {
	font-family: 'Assistant', sans-serif;
    font-weight: normal;
    font-size: 14px;
    letter-spacing: normal;
 	background: rgba(234, 232, 226, 0.85) !important;
  color: #787878;
  line-height: 1.43;
  padding: 1em 0 !important;
  max-width: none !important;
  width:100%;
  bottom: 0 !important;
  -ms-flex-direction: row !important;
  flex-direction: row !important;
  align-items: center !important;
}
.cc-window .restrain {
	max-width: 100%;
	width: 954px;
	margin: 0 auto;
}
.cc-floating .cc-message {
   margin-bottom: 0;
   flex:1;
}
.cc-link {
    opacity: 1;
    padding: 0;
    text-decoration: none;
    position: relative;
    line-height:1;

    color:#e1b500 !important;
    font-weight: normal;
    text-decoration: underline;
}
.cc-banner .cc-message {
    display: block;
	margin-bottom: 5px;
}

.cc-btn {
    display: inline-block;
    font-weight: normal;
    color:#e1b500 !important;
    background-color: transparent;

    text-decoration: underline;
    font-size:1em;
	padding:0 1.5em 0 0 !important;
	border: 0 !important;
}

.cc-compliance {
  display: inline !important;
  flex: none !important;
}
@media (max-width: 1120px) {
    .cc-window,
    .cc-window.cc-banner {
        padding-left: 40px !important;
        padding-right: 40px !important;
    }
}

@media screen and (max-width: 450px) {
    .cc-message span {
        display: block;
        padding-right:0;
    }
    .cc-banner .cc-message,
    .cc-floating .cc-message {
        padding-right: 0;
        display: block;
        margin-bottom: 1em;
    }
    .cc-window, .cc-window.cc-banner {
        display: block;
    }
	.cc-window, .cc-window.cc-banner {
		padding-left: 16px !important;
		padding-right: 16px !important;
	}
}



/* HEADER */
header .cont {
	width: 1156px;
	max-width: 100%;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	padding: 33px 0 23px 0;
	align-items: flex-end;
}
header #branding a {
	width: 176px;
	height: 143px;
	display: block;
	background: url(./img/logo.png) no-repeat;
	background-size: 100% auto;
	overflow:hidden;
	text-indent:-1000px;
}
header .menu li {
	font-size: 14px;
	line-height: 1.29;
	display: inline-block;
	margin-left: 0;
	flex: 1 1 auto;
}
header .menu li:last-child {
	flex: 0 1 auto;
}
header .menu a,
footer .menu a {
	text-transform: uppercase;
	color:#787878;
}
header .menu a {
	text-decoration: none;
}
header .menu .current-menu-item a.anchor-active,
footer .menu .current-menu-item a {
	color: #3f3f3f;
}
footer .menu a:hover,
header .menu a:hover {
	color: #a7a7a7 !important;
}
header nav {
	width: 764px;
	padding-bottom: 1.2em;
}
header .menu {
	display: flex;
	justify-content: space-between;
}
footer {
	position: relative;
	z-index:2;
}
header {
	position: fixed;
	top:0;
	left:0;right:0;
	height: 200px;
	transition: height 300ms ease;
	z-index:200;
	overflow:hidden;
	background:rgba(255,255,255,0.8);
}
#wrapper {
	padding-top: 200px;
}
.hide-navi header {
	height:0;
}

/* FOOTER */
footer .cont {
	width: 1156px;
	max-width: 100%;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	padding: 25px 0 28px 0;
}
footer .menu li {
	display: inline-block;
	margin-left: 1.5em;
}

/* FORMULAR */
.wpcf7 form .wpcf7-response-output {
 	margin-left: 0;
	margin-right:0;
}
.show-danke .wpcf7,
.wpcf7 + .danke-text {
	display: none;
}
.show-danke .wpcf7 + .danke-text {
	display: block;
}
.wpcf7 + .danke-text {
	padding-top:8em;
	padding-bottom: 10em;
}
.danke-text .show-form-again {
	cursor: pointer;
}
input[type="reset"] {
	display: none;
}
label,
select, option,
input[type="text"],
input[type="tel"],
input[type="email"],
textarea {
	background: transparent;
	box-shadow: none;
	display: block;
	width: 100%;
}
select,
input[type="text"],
input[type="tel"],
input[type="email"],
textarea {
	color: #3f3f3f;
	border: solid 1px #787878;
	border-radius: 0px;
	padding: 10px 12px 8px 10px;
	margin-top: 3px;
	background:#fff;
}
textarea {
	height: 95px;
}
form .col-2 {
	display: flex;
	align-items: flex-start;
	justify-content:space-between;
}
form .col-2 > * {
  flex: 0 0 48.5%;
}
form .col-2 > .small {
  flex: 0 0 18%;
}
form .col-2 > .big {
  flex: 0 0 79%;
}
label.select .wpcf7-form-control-wrap {
	position: relative;
	display: block;
}
label.select .wpcf7-form-control-wrap:after {
	position: absolute;
	content:"";
	display: block;
	top:12px;right:14px;
	width: 12px;height:12px;
	border-left: 2px solid #979797;
	border-bottom: 2px solid #979797;
	transform: rotate(-45deg);
	pointer-events:none;
}
form .pflicht {
	margin-top: -0.5em;
	margin-bottom: 1.7em;
}

form .pflicht, form p.small {
	font-size: 14px;
}
form .buttons + p.small {
	clear: both;
	text-align: right;
	padding-top: 0.3em;
}
form .captcha-container {
	margin-bottom: 18px;
	display: flex;
	align-items: flex-end;
	justify-content:space-between;
}
form .captcha-container p.captcha {
	margin-bottom:0;
	display: flex;
	flex-wrap:wrap;
	align-items: center;
	flex: 1 1 75%;
}
form .captcha-container p.pflicht {
	text-align: right;
	margin: 0 0 1em 0 !important;
	flex: 1 1 25%;
}
form .captcha-container p.captcha > span:first-child {
	display: block;
	margin-bottom: 3px;
	flex: 0 0 100%;
}
form .captcha-container p.captcha img {
	flex: 0 0 auto;
}
form .captcha-container p.captcha .wpcf7-form-control-wrap {
	flex: 0 1 188px;
}
span[data-name="zustimmung"], span.zustimmung {
	display: block;
	padding-left:0;
	font-size: 14px;
}
span.wpcf7-list-item {
	display: block;
	margin-left:0;
	position: relative;
}
span[data-name="zustimmung"] input,
span.zustimmung input {
    position: absolute;
    top: 0;
    left: 0;
    margin: 0;
    padding: 0;
    cursor: inherit;
    opacity: 0;
}

span[data-name="zustimmung"] label,
span.zustimmung label {
	display: block;
	padding-left: 30px;
}
.checkmark {
	content:"";
	display: block;
  position: absolute;
  top: 0;
  left: 0;
  height: 20px;
  width: 20px;
	border: solid 1px #787878;
  background-color: #fff;
}
/* Create the checkmark/indicator (hidden when not checked) */
.checkmark:after {
  content: "";
  position: absolute;
  display: none;
}

/* Show the checkmark when checked */
span[data-name="zustimmung"] input:checked ~ .wpcf7-list-item-label .checkmark:after,
span.zustimmung input:checked ~ .wpcf7-list-item-label .checkmark:after {
  display: block;
}

/* Style the checkmark/indicator */
span[data-name="zustimmung"] .checkmark:after,
span.zustimmung .checkmark:after {
  left: 6px;
  top: 2px;
  width: 5px;
  height: 10px;
  border: solid #787878;
  border-width: 0 2px 2px 0;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

input[type="submit"] {
	display: block;
	background-color: #f2dfdf;
	font-family: 'Cormorant SC', serif;
  font-size: 16px;
  font-weight: bold;
  font-style: normal;
  line-height: 1.25;
  letter-spacing: normal;
  color: #636363;
  text-transform: uppercase;
	padding: 12px 14px;
	cursor: pointer;
	min-width: 174px;
	float: right;
	margin-top: 0.8em;
	transition: all 200ms ease;
}
input.wpcf7-submit[disabled] {
	background-color: #a7a7a7;
	  color: #eae8e2;
}
input[type="submit"]:hover {
	background-color: #e3c8c8;
}

div.wpcf7-validation-errors, div.wpcf7-acceptance-missing {
    border: none;
}
div.wpcf7-response-output {
    margin: 0;
    padding: 0;
    border: none;
	margin-bottom: 1.2em;
}
.wpcf7-validation-errors {
	color: #c50000;
	font-size: 14px;
}
label span.wpcf7-not-valid-tip {
	display: none;
}
label.error,
textarea.wpcf7-not-valid,
select.wpcf7-not-valid,
input.wpcf7-not-valid {
	color: #c50000;
	border-color: #c50000;
}
span.kurswahl {
	display: block;
	width:100%;
	overflow:hidden;
}

span.kurswahl:after {
  content:"";
	display: block;
  width: 12px;
  height: 12px;
  transform: rotate(45deg);
  border: solid 2px #979797;
	border-left:0;
	border-top:0;
	position: absolute;
	top:14px;right:18px;
}
header .menu-footer-container,
header .menu li.not-desktop,
#menu-toggle {
	display: none;
}

@media (max-width: 1160px) {
	html, body {
		-webkit-text-size-adjust: 100%;
	}
	footer .cont, header .cont {
		width:100%;
		padding-left: 16px;
		padding-right: 16px;
	}
	header nav {
		padding-left: 30px;
	}
}
@media (max-width: 830px) {
	header .menu li:not(:last-child) {
	  margin-right: 1em;
	}
	header .menu li {
	  flex: 1 1;
	}
}
@media (max-width: 700px) {
	header {
		background: transparent;
	}
	header nav {
		display: none;
		padding:0;
		width:100%;
		background: rgba(242,223,223, 0.95);
		height: calc(100vh - 132px);
		padding: 36px 16px 0px 16px;
		flex-direction: column;
		justify-content:space-between;
		overflow:auto;
	}
	header nav > :last-child {
		padding-bottom: 50px;
	}
	header .menu li.not-desktop {
		display: block;
	}
	.menu-is-open header nav {
		display: flex;
	}
	.menu-is-open {
		overflow: hidden;
	}
	textarea {
      height: 130px;
    }
	input[type="submit"] {
		width: 100%;
		float:none;
	}
	div.wpcf7 .ajax-loader, div.wpcf7 .wpcf7-spinner {
		position: absolute; bottom:0;left:0; right:auto;
	}
	footer .cont {
		display: block;
	}
	footer .menu li:first-child {
		margin-left:0;
	}
	footer nav {
		margin-top: 15px;
	}
	header {
		height: 188px;
	}
	.menu-is-open header {
		height: 100vh;
	}
	header .cont {
		padding:0;
		position: relative;
		display: block;
    }
	header #branding {
		padding: 12px 16px 12px 16px;
		position: relative;
		display: block;
		background: rgba(255,255,255,0.85);
		transition: background 300ms ease;
    }
	header #branding a {
		width: 132px;
		height: 108px;
	}
	.menu-is-open header #branding {
		background: #fff;
    }
	#wrapper {
		padding-top: 142px;
	}
	
	#menu-toggle {
            display: block;
            position: absolute;
            top:91px;right:16px;
            width:30px;
            height:20px;
            border-top: 2px solid #636363;
            border-bottom: 2px solid #636363;
            cursor: pointer;
	}
	#menu-toggle:before,
	#menu-toggle:after {
		display: block;
		content:"";
		height:2px;
		background: #636363;
		width:100%;
		position: absolute;
		top:50%;
		margin-top:-1px;
		left:0;
		transition:all 150ms ease;
	}
	.menu-is-open #menu-toggle {
            /*top:91px;*/
			right:18px;
            width:22px;
            height:22px;
            border-top: 0;
            border-bottom: 0;
	}
	.menu-is-open #menu-toggle:after,
	.menu-is-open #menu-toggle:before {
		left: -15%;
		width: 130%;
	}
	.menu-is-open #menu-toggle:before {
		transform: rotate(-45deg);
	}
	.menu-is-open #menu-toggle:after {
		transform: rotate(45deg);
	}
	header .menu li,
	header .menu a {
		line-height:1;
		font-size: 20px;
	}
	header .menu li,
	header .menu {
		display: block;
	}
	header .menu li:not(:last-child) {
		margin-bottom: 30px;
	}
	header .menu li.current-menu-item:not(.menu-item-type-custom) a {
		color:#3f3f3f;
	}
	header .menu-footer-container {
		margin-top: 30px;
		display: block;
	}
	header .menu-footer-container .menu li,
	header .menu-footer-container .menu a {
		font-size: 14px;
		line-height: 1;
	}
	header .menu-footer-container .menu li:not(:last-child) {
		margin-bottom: 20px;
	}	
}

a.pfeil:before {
	display: inline-block;
	content: ">";
	padding-right: 0.2em;
	padding-left: 0.1em;
}
.wp-video {
  width: 100% !important;
  overflow: hidden;
  height: 0 !important;
  padding-bottom: 56.25%;
  position: relative;
}
.wp-video .mejs-video {
  width: 100% !important;
  height: 100% !important;
  min-width: 0;
  object-fit: contain;
  position: absolute;
  top: 0;
  left: 0;
}