/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */

html {
  color: #222;
  font-size: 62.5%;
  line-height: 1.4;
}

/*
 * Remove text-shadow in selection highlight:
 * https://twitter.com/miketaylr/status/12228805301
 *
 * Vendor-prefixed and regular ::selection selectors cannot be combined:
 * https://stackoverflow.com/a/16982510/7133471
 *
 * Customize the background color to match your design.
 */
.info-grid-wrapper {
	 display: grid;
	 grid-template-columns: repeat(2, 1fr);
	 gap: 16px;
	 margin: 24px 0;
 }
 
 .info-grid-item {
	 background: #f7f7f7;
	 border-radius: 12px;
	 padding: 18px 20px;
 }
 
 .info-grid-label {
	 display: block;
	 font-size: 13px;
	 font-weight: 600;
	 color: #777;
	 margin-bottom: 6px;
	 text-transform: uppercase;
	 letter-spacing: .04em;
 }
 
 .info-grid-value {
	 display: block;
	 font-size: 17px;
	 font-weight: 600;
	 color: #222;
	 line-height: 1.4;
 }
 
 @media (max-width: 768px) {
	 .info-grid-wrapper {
		 grid-template-columns: 1fr;
	 }
 }
.codedropz-upload-inner h3{
	font-size: 18px !important;
}
::-moz-selection {
  background: #b3d4fc;
  text-shadow: none;
}

::selection {
  background: #b3d4fc;
  text-shadow: none;
}

.threeColGrid{
	display: flex;align-items: flex-start;
}
.threeColGrid img{
	margin-right: 2rem;
	margin-top: 3rem;
	width: 110px;
	height: auto;
	display: block;
}
@media(max-width: 600px){
	.threeColGrid{
		flex-direction: column;
	}
}
/*
 * A better looking default horizontal rule
 */

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0;
}

/*
 * Remove the gap between audio, canvas, iframes,
 * images, videos and the bottom of their containers:
 * https://github.com/h5bp/html5-boilerplate/issues/440
 */

audio,
canvas,
iframe,
img,
svg,
video {
  vertical-align: middle;
}

/*
 * Remove default fieldset styles.
 */

fieldset {
  border: 0;
  margin: 0;
  padding: 0;
}

/*
 * Allow only vertical resizing of textareas.
 */

textarea {
  resize: vertical;
}

/* ==========================================================================
   Author's custom styles
   ========================================================================== */

/* ==========================================================================
   Helper classes
   ========================================================================== */

/*
 * Hide visually and from screen readers
 */

.hidden,
[hidden] {
  display: none !important;
}

/*
 * Hide only visually, but have it available for screen readers:
 * https://snook.ca/archives/html_and_css/hiding-content-for-accessibility
 *
 * 1. For long content, line feeds are not interpreted as spaces and small width
 *    causes content to wrap 1 word per line:
 *    https://medium.com/@jessebeach/beware-smushed-off-screen-accessible-text-5952a4c2cbfe
 */

.sr-only {
  border: 0;
  clip: rect(0, 0, 0, 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  white-space: nowrap;
  width: 1px;
  /* 1 */
}

/*
 * Extends the .sr-only class to allow the element
 * to be focusable when navigated to via the keyboard:
 * https://www.drupal.org/node/897638
 */

.sr-only.focusable:active,
.sr-only.focusable:focus {
  clip: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  position: static;
  white-space: inherit;
  width: auto;
}

/*
 * Hide visually and from screen readers, but maintain layout
 */

.invisible {
  visibility: hidden;
}

/*
 * Clearfix: contain floats
 *
 * For modern browsers
 * 1. The space content is one way to avoid an Opera bug when the
 *    `contenteditable` attribute is included anywhere else in the document.
 *    Otherwise it causes space to appear at the top and bottom of elements
 *    that receive the `clearfix` class.
 * 2. The use of `table` rather than `block` is only necessary if using
 *    `:before` to contain the top-margins of child elements.
 */

.clearfix::before,
.clearfix::after {
  content: " ";
  display: table;
}

.clearfix::after {
  clear: both;
}

/* ==========================================================================
   EXAMPLE Media Queries for Responsive Design.
   These examples override the primary ('mobile first') styles.
   Modify as content requires.
   ========================================================================== */

@media only screen and (min-width: 35em) {
  /* Style adjustments for viewports that meet the condition */
}

@media print,
  (-webkit-min-device-pixel-ratio: 1.25),
  (min-resolution: 1.25dppx),
  (min-resolution: 120dpi) {
  /* Style adjustments for high resolution devices */
}

/* ==========================================================================
   Print styles.
   Inlined to avoid the additional HTTP request:
   https://www.phpied.com/delay-loading-your-print-css/
   ========================================================================== */

@media print {
  *,
  *::before,
  *::after {
	background: #fff !important;
	color: #000 !important;
	/* Black prints faster */
	box-shadow: none !important;
	text-shadow: none !important;
  }

  a,
  a:visited {
	text-decoration: underline;
  }

  a[href]::after {
	content: " (" attr(href) ")";
  }

  abbr[title]::after {
	content: " (" attr(title) ")";
  }

  /*
   * Don't show links that are fragment identifiers,
   * or use the `javascript:` pseudo protocol
   */
  a[href^="#"]::after,
  a[href^="javascript:"]::after {
	content: "";
  }

  pre {
	white-space: pre-wrap !important;
  }

  pre,
  blockquote {
	border: 1px solid #999;
	page-break-inside: avoid;
  }

  /*
   * Printing Tables:
   * https://web.archive.org/web/20180815150934/http://css-discuss.incutio.com/wiki/Printing_Tables
   */
  thead {
	display: table-header-group;
  }

  tr,
  img {
	page-break-inside: avoid;
  }

  p,
  h2,
  h3 {
	orphans: 3;
	widows: 3;
  }

  h2,
  h3 {
	page-break-after: avoid;
  }
}



/* ==========================================================================
   Font
   ========================================================================== */


/* montserrat-300 - latin */
   @font-face {
	 font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	 font-family: 'Montserrat';
	 font-style: normal;
	 font-weight: 300;
	 src: url('../fonts/montserrat-v25-latin-300.eot'); /* IE9 Compat Modes */
	 src: url('../fonts/montserrat-v25-latin-300.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
		  url('../fonts/montserrat-v25-latin-300.woff2') format('woff2'), /* Super Modern Browsers */
		  url('../fonts/montserrat-v25-latin-300.woff') format('woff'), /* Modern Browsers */
		  url('../fonts/montserrat-v25-latin-300.ttf') format('truetype'), /* Safari, Android, iOS */
		  url('../fonts/montserrat-v25-latin-300.svg#Montserrat') format('svg'); /* Legacy iOS */
   }
   /* montserrat-300italic - latin */
   @font-face {
	 font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	 font-family: 'Montserrat';
	 font-style: italic;
	 font-weight: 300;
	 src: url('../fonts/montserrat-v25-latin-300italic.eot'); /* IE9 Compat Modes */
	 src: url('../fonts/montserrat-v25-latin-300italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
		  url('../fonts/montserrat-v25-latin-300italic.woff2') format('woff2'), /* Super Modern Browsers */
		  url('../fonts/montserrat-v25-latin-300italic.woff') format('woff'), /* Modern Browsers */
		  url('../fonts/montserrat-v25-latin-300italic.ttf') format('truetype'), /* Safari, Android, iOS */
		  url('../fonts/montserrat-v25-latin-300italic.svg#Montserrat') format('svg'); /* Legacy iOS */
   }
   /* montserrat-regular - latin */
   @font-face {
	 font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	 font-family: 'Montserrat';
	 font-style: normal;
	 font-weight: 400;
	 src: url('../fonts/montserrat-v25-latin-regular.eot'); /* IE9 Compat Modes */
	 src: url('../fonts/montserrat-v25-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
		  url('../fonts/montserrat-v25-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
		  url('../fonts/montserrat-v25-latin-regular.woff') format('woff'), /* Modern Browsers */
		  url('../fonts/montserrat-v25-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
		  url('../fonts/montserrat-v25-latin-regular.svg#Montserrat') format('svg'); /* Legacy iOS */
   }
   /* montserrat-italic - latin */
   @font-face {
	 font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	 font-family: 'Montserrat';
	 font-style: italic;
	 font-weight: 400;
	 src: url('../fonts/montserrat-v25-latin-italic.eot'); /* IE9 Compat Modes */
	 src: url('../fonts/montserrat-v25-latin-italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
		  url('../fonts/montserrat-v25-latin-italic.woff2') format('woff2'), /* Super Modern Browsers */
		  url('../fonts/montserrat-v25-latin-italic.woff') format('woff'), /* Modern Browsers */
		  url('../fonts/montserrat-v25-latin-italic.ttf') format('truetype'), /* Safari, Android, iOS */
		  url('../fonts/montserrat-v25-latin-italic.svg#Montserrat') format('svg'); /* Legacy iOS */
   }
   /* montserrat-500 - latin */
   @font-face {
	 font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	 font-family: 'Montserrat';
	 font-style: normal;
	 font-weight: 500;
	 src: url('../fonts/montserrat-v25-latin-500.eot'); /* IE9 Compat Modes */
	 src: url('../fonts/montserrat-v25-latin-500.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
		  url('../fonts/montserrat-v25-latin-500.woff2') format('woff2'), /* Super Modern Browsers */
		  url('../fonts/montserrat-v25-latin-500.woff') format('woff'), /* Modern Browsers */
		  url('../fonts/montserrat-v25-latin-500.ttf') format('truetype'), /* Safari, Android, iOS */
		  url('../fonts/montserrat-v25-latin-500.svg#Montserrat') format('svg'); /* Legacy iOS */
   }
   /* montserrat-500italic - latin */
   @font-face {
	 font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	 font-family: 'Montserrat';
	 font-style: italic;
	 font-weight: 500;
	 src: url('../fonts/montserrat-v25-latin-500italic.eot'); /* IE9 Compat Modes */
	 src: url('../fonts/montserrat-v25-latin-500italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
		  url('../fonts/montserrat-v25-latin-500italic.woff2') format('woff2'), /* Super Modern Browsers */
		  url('../fonts/montserrat-v25-latin-500italic.woff') format('woff'), /* Modern Browsers */
		  url('../fonts/montserrat-v25-latin-500italic.ttf') format('truetype'), /* Safari, Android, iOS */
		  url('../fonts/montserrat-v25-latin-500italic.svg#Montserrat') format('svg'); /* Legacy iOS */
   }
   /* montserrat-600 - latin */
   @font-face {
	 font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	 font-family: 'Montserrat';
	 font-style: normal;
	 font-weight: 600;
	 src: url('../fonts/montserrat-v25-latin-600.eot'); /* IE9 Compat Modes */
	 src: url('../fonts/montserrat-v25-latin-600.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
		  url('../fonts/montserrat-v25-latin-600.woff2') format('woff2'), /* Super Modern Browsers */
		  url('../fonts/montserrat-v25-latin-600.woff') format('woff'), /* Modern Browsers */
		  url('../fonts/montserrat-v25-latin-600.ttf') format('truetype'), /* Safari, Android, iOS */
		  url('../fonts/montserrat-v25-latin-600.svg#Montserrat') format('svg'); /* Legacy iOS */
   }
   /* montserrat-600italic - latin */
   @font-face {
	 font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	 font-family: 'Montserrat';
	 font-style: italic;
	 font-weight: 600;
	 src: url('../fonts/montserrat-v25-latin-600italic.eot'); /* IE9 Compat Modes */
	 src: url('../fonts/montserrat-v25-latin-600italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
		  url('../fonts/montserrat-v25-latin-600italic.woff2') format('woff2'), /* Super Modern Browsers */
		  url('../fonts/montserrat-v25-latin-600italic.woff') format('woff'), /* Modern Browsers */
		  url('../fonts/montserrat-v25-latin-600italic.ttf') format('truetype'), /* Safari, Android, iOS */
		  url('../fonts/montserrat-v25-latin-600italic.svg#Montserrat') format('svg'); /* Legacy iOS */
   }
   /* montserrat-700 - latin */
   @font-face {
	 font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	 font-family: 'Montserrat';
	 font-style: normal;
	 font-weight: 700;
	 src: url('../fonts/montserrat-v25-latin-700.eot'); /* IE9 Compat Modes */
	 src: url('../fonts/montserrat-v25-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
		  url('../fonts/montserrat-v25-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
		  url('../fonts/montserrat-v25-latin-700.woff') format('woff'), /* Modern Browsers */
		  url('../fonts/montserrat-v25-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
		  url('../fonts/montserrat-v25-latin-700.svg#Montserrat') format('svg'); /* Legacy iOS */
   }
   /* montserrat-700italic - latin */
   @font-face {
	 font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	 font-family: 'Montserrat';
	 font-style: italic;
	 font-weight: 700;
	 src: url('../fonts/montserrat-v25-latin-700italic.eot'); /* IE9 Compat Modes */
	 src: url('../fonts/montserrat-v25-latin-700italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
		  url('../fonts/montserrat-v25-latin-700italic.woff2') format('woff2'), /* Super Modern Browsers */
		  url('../fonts/montserrat-v25-latin-700italic.woff') format('woff'), /* Modern Browsers */
		  url('../fonts/montserrat-v25-latin-700italic.ttf') format('truetype'), /* Safari, Android, iOS */
		  url('../fonts/montserrat-v25-latin-700italic.svg#Montserrat') format('svg'); /* Legacy iOS */
   }
   /* montserrat-800 - latin */
   @font-face {
	 font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	 font-family: 'Montserrat';
	 font-style: normal;
	 font-weight: 800;
	 src: url('../fonts/montserrat-v25-latin-800.eot'); /* IE9 Compat Modes */
	 src: url('../fonts/montserrat-v25-latin-800.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
		  url('../fonts/montserrat-v25-latin-800.woff2') format('woff2'), /* Super Modern Browsers */
		  url('../fonts/montserrat-v25-latin-800.woff') format('woff'), /* Modern Browsers */
		  url('../fonts/montserrat-v25-latin-800.ttf') format('truetype'), /* Safari, Android, iOS */
		  url('../fonts/montserrat-v25-latin-800.svg#Montserrat') format('svg'); /* Legacy iOS */
   }
   /* montserrat-800italic - latin */
   @font-face {
	 font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	 font-family: 'Montserrat';
	 font-style: italic;
	 font-weight: 800;
	 src: url('../fonts/montserrat-v25-latin-800italic.eot'); /* IE9 Compat Modes */
	 src: url('../fonts/montserrat-v25-latin-800italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
		  url('../fonts/montserrat-v25-latin-800italic.woff2') format('woff2'), /* Super Modern Browsers */
		  url('../fonts/montserrat-v25-latin-800italic.woff') format('woff'), /* Modern Browsers */
		  url('../fonts/montserrat-v25-latin-800italic.ttf') format('truetype'), /* Safari, Android, iOS */
		  url('../fonts/montserrat-v25-latin-800italic.svg#Montserrat') format('svg'); /* Legacy iOS */
   }
   /* montserrat-900 - latin */
   @font-face {
	 font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	 font-family: 'Montserrat';
	 font-style: normal;
	 font-weight: 900;
	 src: url('../fonts/montserrat-v25-latin-900.eot'); /* IE9 Compat Modes */
	 src: url('../fonts/montserrat-v25-latin-900.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
		  url('../fonts/montserrat-v25-latin-900.woff2') format('woff2'), /* Super Modern Browsers */
		  url('../fonts/montserrat-v25-latin-900.woff') format('woff'), /* Modern Browsers */
		  url('../fonts/montserrat-v25-latin-900.ttf') format('truetype'), /* Safari, Android, iOS */
		  url('../fonts/montserrat-v25-latin-900.svg#Montserrat') format('svg'); /* Legacy iOS */
   }
   /* montserrat-900italic - latin */
   @font-face {
	 font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	 font-family: 'Montserrat';
	 font-style: italic;
	 font-weight: 900;
	 src: url('../fonts/montserrat-v25-latin-900italic.eot'); /* IE9 Compat Modes */
	 src: url('../fonts/montserrat-v25-latin-900italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
		  url('../fonts/montserrat-v25-latin-900italic.woff2') format('woff2'), /* Super Modern Browsers */
		  url('../fonts/montserrat-v25-latin-900italic.woff') format('woff'), /* Modern Browsers */
		  url('../fonts/montserrat-v25-latin-900italic.ttf') format('truetype'), /* Safari, Android, iOS */
		  url('../fonts/montserrat-v25-latin-900italic.svg#Montserrat') format('svg'); /* Legacy iOS */
   }


/* ==========================================================================
   Page
   ========================================================================== */


:root{
	--primary-color: #622a80;
	--secondary-color: #ffcc01;
	--white-color: #ffffff;
	--font-family: 'Montserrat';
	--section-padding: 90px 0;
	--section-padding-single: 90px;
	--text-h1-size: 4.2rem;
	--text-h2-size: 3.5rem;
	--text-h3-size: 2.5rem;
	--text-h4-size: 1.5rem;
}

b, strong{
	font-weight: 700;
}


h3, h4{
	font-weight: 800;
	margin: 0;
}

h1{
	font-size: var(--text-h1-size);
	font-weight: 400;
	color: #111
}

h2{
	font-size: var(--text-h2-size);
	font-weight: 400;
	color: #111
}

h3{
	font-size: var(--text-h3-size);
	margin-bottom: 4rem;
}

h4{
	font-size: var(--text-h4-size);
}


.text-center{
	text-align: center;
}
.text-right{
	text-align: right;
}

.grid{
	max-width: 1300px;
	margin: 0 auto;
}
.blog__post_row{
	
	width: 1300px;
	margin: 0 auto;
}
.blog__post{
	width: 31.3333%;
	margin: 0 1%;
	background: #fff;
	margin-bottom: 3rem;
	border-radius: 0.2rem;
	overflow: hidden;
}

.blog__post figure{
	margin: 0 0 2rem 0;
}

.blog__post figure img{
	width: 100%;
	height: auto;
	display: block;
}

.blog__post .blog__post__content{
	padding: 3rem;
}

.blog__post .blog__post__content h3{
	margin-bottom: 2rem;
	margin-top: 0;
	font-weight: 700;
	font-size: 2rem;
}

.blog__post .blog__post__content h3 a{
	text-decoration: none;
	color: #111
}

.blog__post .blog__post__content p{
	font-size: 1.6rem;
}
.blog__post  .button{
}
.blog__post  .button.primary{padding-right:40px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='21.909' height='38.269' viewBox='0 0 21.909 38.269'%3E%3Cpath d='M24.426,20.985,8,37.405a2.674,2.674,0,0,1-3.782-3.782L18.752,19.094,4.223,4.565A2.674,2.674,0,0,1,8,.783L24.426,17.2a2.674,2.674,0,0,1,0,3.781' transform='translate(-3.44 0.093) rotate(-0.21)' fill='%23fff'/%3E%3C/svg%3E");background-size:20px 12px;background-repeat:no-repeat;background-position:93% 50%;transition:background-position .3s ease; background-color: var(--primary-color); 
text-align: center; box-sizing: border-box; 
margin-left: 3rem;
margin-bottom: 3rem;}

.tns-nav{
	display: flex;
	
	justify-content: center;
	margin-top: 30px;
}
.tns-nav button{
	width: 14px;
	display: inline-block;
	height: 14px;
	padding: 0;
	margin: 3px;
	background: #dadada;
	border: none;
	border-radius: 50%;
}
.tns-nav button.tns-nav-active{
	background: var(--primary-color)
}
@media(max-width: 1400px){
	.grid, .grid.alm-listing{
		width: 90%;
		margin-left: 5%
	}
	.blog__post_row{
	
	width: 90%;
}
}
@media(max-width: 1110px){

.blog__post{
	width: 48%;
	margin: 0 1% 2rem 1%;
}
}
@media(max-width: 767px){

.blog__post{
	width: 100%;
}
}

body{
	font-family:  var(--font-family);
	line-height: 1.6;
	font-size: 1.8rem;
	color: #111;
	font-weight: 300;
	/*padding-top: 100px;*/
	
	overflow-x: hidden;
	
}

section h1,
section h2{
	margin: 0 0 5rem 0;
}

section.ptb{
	padding: var(--section-padding);
}
section.pdb__no{
	padding-bottom: 0;
}
section.pd__no,
section.p__no{
	padding: 0;
}

section.ptn{
	padding: 0;
}

section.primarybg{
	background: var(--primary-color);
	color: var(--white-color);
}

section.secondarybg{
	background: var(--secondary-color);
	color: var(--white-color);
}

section.odd, body.blog{
	background: #fafafa;
}


section .teaser-text{
  margin: 0 auto;
  max-width: 70rem;
}

section .teaser-text.wide{
  max-width:100rem;
}


section .teaser-note{
	background: #efefef;
	border-radius: 0.8rem;
	padding: 2rem;
	margin-top: 5rem;
	font-size: 1.6rem;
	
}

section .teaser-note p{
	padding: 0;
	margin: 0;
}

.button{
	background: var(--secondary-color);
	color: var(--white-color);
	padding: 1.2rem 3rem;
	display: inline-block;
	text-decoration: none;
	outline: none;
	border: none;
	cursor: pointer;
	font-size: 1.6rem;
	border-radius: 25px;
	margin-right: 10px;
	box-shadow: 0px 3px 6px rgb(0 0 0 / 16%);
}

.button.icons{
	
	display: flex;
	align-content: center;
	align-items: center;
	background: none;
	box-shadow: inherit;
	border-radius: 0
}


.button.icons.secondary:before,
.button.icons.secondary:after{
	background: var(--secondary-color);
	color: #111
}

.button.icons .text{
		margin: 0 0 0 15px;
		max-width: 300px;
}

.button svg{
	height: 24px;
	width: auto;
	display: block;
}
.button.button__has__icon{
	display: inline-flex;
	align-content: center;
	align-items: center;
	width: auto;
	margin: 2rem 0 0 0;
}
.button .button__icon{
	margin-right: 14px;
	height: 24px;
	display: inline-block;
	vertical-align: middle
}

.button .button__icon img,
.button .button__icon svg{
	height: 24px;
	width: auto;
	display: block
}

.button.primary,
.button.default{	
	background: var(--primary-color);
	color: var(--white-color);
}


.button.secondary{	
	color: #111;
	background: var(--secondary-color);
}

.button-group{
	margin-top: 5rem;
}

.button-group.noPad{
  margin: 0;
}

.button-group .button{
	margin: 0 0.6rem;
}

.button-group .button:first-of-type{
	margin-left: 0;
}

.button-group .button:last-of-type{
	margin-right: 0;
}

.button-group .button{
  margin-bottom: 2rem;
}

.button.white{
	background: #fff;
	color: #111;
	font-weight: 600;
}

.buttons{
	text-align: center;
	margin-top: 5rem;
}




header{
	position: sticky;
	position: -webkit-sticky; 
	height: 80px;
	top: 0;
	left: 0;
	background: var(--white-color);
	z-index: 50;
	width: 100%;
	box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
}

header .grid{
	display: grid;
	max-width: 90%;
	grid-template-columns: repeat(12, 1fr);
	grid-template-areas: "a0 a0 a0 a0 c0 c0 c0 c0 c0 c0 c0 c0";
}

header .grid #brand{
	grid-area: a0;
}


header #brand a, 
header #brand div{
	display: block;
	height: 5rem;
	padding-top: 1.5rem;
}

header #brand a img,
header #brand div img{
	display: block;
	width: auto;
	height: 100%;
}

header .grid #brand.multiple{
	display: flex;
}
header .grid #brand.multiple .desktop__brand.campus{
	height: 3.4rem;
	padding-top: 2.2rem;
	margin-left: 3rem;
}

header .grid #brand.multiple .desktop__brand.pfh{
	height: 5.2rem;
	padding-top: 1.3rem;
	margin-left: 4rem;
}header .grid #brand.multiple .desktop__brand.stz{
	height: 3.6rem;
	padding-top: 2.4rem;
	margin-left: 4rem;
}
header #meta__links{
	
	grid-area: c0;
}
header .grid #brand.multiple .mobile__brand{
	display: none;
}

.specialButton:before,
.specialButton:after
{
	
		content: "";
		position: absolute;
		z-index: -1;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		clip-path: polygon(0 11%, 92% 0, 88% 100%, 3% 96%);
		transition: .2s all;
		background: #2fc1ff

}

.page-id-87432 .threeColInfo:last-of-type .threeColGrid {
	display: flex;
	align-items: center;
	justify-content: center;
}
.specialButton{
	width: 24rem;
	cursor: pointer;
	height: 7rem;
	position: relative;
}
.specialButton span {
	font-size: 2rem;
	font-weight: bold;
	padding: 2rem;
	display: block
}

@media(max-width: 1200px){
	header .grid #brand.multiple .desktop__brand{
		display: none;
	}
	header .grid #brand.multiple .mobile__brand{
		display: block;
	}
	header .grid #brand.multiple a,
	header .grid #brand.multiple div{
		margin: 0;
	}
	header .grid #brand.multiple .mobile__brand.campus{
	
		margin-left: 2rem;
	}
	header .grid #brand.multiple .mobile__brand.pfh{
	
		margin-left: 2rem;
	}
	header .grid #brand.multiple .mobile__brand.stz{
	
		margin-left: 2rem;
	}
}

/* STAGE */

#stage{
	min-height: 50rem;
	
}

#stage #stage__grid{
	display: grid;
	grid-template-columns: 2fr 1.1fr;
	height: 100%
}

#stage #stage__grid #stage__media{
	position: relative;
}

#stage #stage__grid.image__right #stage__media{
	order: 2;
}

#stage #stage__grid.image__right #stage__caption #stage__caption__after{
	transform: scaleX(-1);
}

#stage #stage__grid.image__right #stage__media__after{
	transform: scaleX(-1);
}


#stage #stage__grid.image__right #stage__media #stage__media__before{
	transform: scaleX(-1);
	right: auto;
	left: 0px;
}

#stage #stage__grid #stage__media video{
	margin: 0;
	padding: 0;
	width: 100%;
	height: 800px;
	object-fit: cover
}


#stage #stage__grid #stage__media figure{
	margin: 0;
	padding: 0;
}

#stage #stage__grid #stage__media figure img{
	width: 100%;
	height: 800px;
	object-fit: cover
}

#stage #stage__grid.small #stage__media figure img{
	height: 420px;
}

#stage__caption__text{
	
	padding: 4rem 8rem 4rem 6rem
}

#stage #stage__grid.small #stage__caption__text{
	padding-top: 0;
}

#stage__caption__text small{
	display: inline-block;
	margin-bottom: 2.4rem;
	padding-bottom: 2.4rem;
	letter-spacing: 1px;
	border-bottom: 1px solid #fff;
}
#stage__caption__headline{
	font-weight: 500;
	font-size: 4.6rem;
	line-height: 1.3;
	letter-spacing: 2px;
}

#stage #stage__grid #stage__media #stage__media__after{
	position: absolute;
	bottom: 0;
	height: 10rem;
	left: 0;
	width: 100%;
	z-index: 0;
}

#stage #stage__grid #stage__media #stage__media__after:before, 
#stage #stage__grid #stage__media #stage__media__after:after {
	   content: "";
	   position: absolute;
	   z-index: -1;
	   top: 0;
	   left: 0;
	   right: 0;
	   bottom: 0;clip-path: polygon(0 0, 0% 100%, 100% 100%);
	   transition: 0.2s all;
	   background: #fff;
   }
   
#stage #stage__grid #stage__media #stage__media__after svg{
	width: 100%;
	height: auto;
	display: block; 
}


#stage #stage__grid #stage__media #stage__media__before{
	position: absolute;
	bottom: 0;
	right: 0px;
	height: 100%;
	z-index: 0;
	width: 10rem;
}


#stage #stage__grid #stage__media #stage__media__before:before, 
#stage #stage__grid #stage__media #stage__media__before:after {
	   content: "";
	   position: absolute;
	   z-index: -1;
	   top: 0;
	   left: 0;
	   right: 0;
	   bottom: 0;
	   clip-path: polygon(0 0%, 100% 0, 100% 100%);
	   transition: 0.2s all;
	   background: var(--primary-color);
   }
#stage #stage__grid #stage__media #stage__media__before svg{
	width: auto;
	height: 100%;
	display: block; margin-left: auto;
}

#stage #stage__grid #stage__caption{
	background: var(--primary-color);
	color: #fff;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	
}
#stage #stage__grid #stage__caption #stage__caption__after{
	position: absolute;
	bottom: 0px;
	left: 0;
	height: 10rem;
	width: 100%;
	z-index: 0;
}

#stage #stage__grid #stage__caption #stage__caption__after:before, 
#stage #stage__grid #stage__caption #stage__caption__after:after {
	   content: "";
	   position: absolute;
	   z-index: -1;
	   top: 0;
	   left: 0;
	   right: 0;
	   bottom: 0;
	   clip-path: polygon(0 100%, 100% 0, 100% 100%);
	   transition: 0.2s all;
	   background: #fff;
   }
   
#stage #stage__grid #stage__caption #stage__caption__after svg{
	width: 100%;
	height: auto;
	display: block; 
}


section{
	padding: var(--section-padding)
}
section.p__bottom{
	padding: 0 0 var(--section-padding-single) 0;
}
section.p__top{
	padding:  var(--section-padding-single) 0 0 0;
}



section .heading{margin-bottom: 10rem;

position: relative;
z-index: 5;
max-width: 700px;
}

section .heading.large{
	
	max-width: 100rem;
}

section .headline.center{
	text-align: center
}

section .heading.center{
	text-align: center;
	margin: 0 auto 12rem auto;
}

section .heading.center.small__mt{
	
	margin: 0 auto 7rem auto;

}

section .heading h2{
	margin-bottom: 0;
}
section .heading.smaller__mt{
	max-width: inherit;
	margin-bottom:  3rem;
}
section .heading h1 span,
section .heading h2 span {
	position: relative;	  
	display: inline-block;
}

section .heading h1 span::before,
section .heading h2 span::before{
	/* Highlight color */
	  background-color: #FFF1C4;
	
	  content: "";
	  position: absolute;
	  width: calc(100% + 4px);
	  height: 60%;
	  left: -2px;
	  bottom: 0;
	  z-index: -1;
	  transform: rotate(-2deg);
}


.image__text__col__grid{
	display: grid;
	grid-template-columns: 1.3fr 1fr;
	grid-gap: 5rem;
}

.image__text__col__grid .content p:first-of-type{
	margin-top: 0;
}

.image__text__col__image__buttons{
	
}

.mt__5{
	margin-top: 5rem;}

.image__text__col__grid{
	margin: 0 0 4rem 0;
}

.image__text__col__image__buttons figure{
	margin: 0;
	padding: 0;
}

.image__text__col__image__buttons figure img{
	width: 100%;
	height: auto;
	display: block;
}


.image__text__col__image__buttons .button__group__vertical{
	display: flex;
	flex-direction: column;
	align-items: flex-end;
}

.image__text__col__image__buttons .button__group__vertical .button{
	margin-bottom: 3rem;
	position: relative;
	padding-top: 2rem;
}

.image__text__col__image__buttons .button__group__vertical .button {
 background: none;
}








.grid-gallery {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  grid-template-rows: repeat(3, 1fr);
  grid-gap: 2rem;
  grid-template-areas:
	"g1 g2 g2 g4 g5 g6"
	"g3 g2 g2 g9 g9 g6"
	"g3 g7 g8 g9 g9 g10";
}



.grid-gallery > a{
	background: #fff;
	overflow: hidden;
	min-height: 160px
}
.grid-gallery > a img{
	object-fit: cover;
	width: 100%;
	height: 220px;
	overflow: hidden;
	transition: transform 1s;
}


.grid-gallery > a.g2 img,
.grid-gallery > a.g3 img,
.grid-gallery > a.g6 img,
.grid-gallery > a.g9 img{
	height: 460px;
}

.grid-gallery > a:hover img {
	transform: scale(1.5);
}
.grid-gallery .g1,
.grid-gallery .g3{
}

.grid-gallery .g11,
.grid-gallery .g6{
}

.g1 { grid-area: g1; }
.g6 { grid-area: g6; }
.g5 { grid-area: g5; }
.g4 { grid-area: g4; }
.g2 { grid-area: g2; }
.g3 { grid-area: g3; }
.g7 { grid-area: g7; }
.g8 { grid-area: g8; }
.g9 { grid-area: g9; }
.g10 { grid-area: g10; }
.g11 { grid-area: g11; }

#five__mm__audioplayer{
	margin-top: 10rem !important;
}
#outer{
}
@media(max-width: 800px){
	
	.grid-gallery {
	  display: grid;
	  grid-template-columns: 1fr 1fr 1fr;
	  grid-template-rows: 1fr 1fr 1fr 1fr 1fr 1fr;
	  
	  grid-gap: 0.6rem;
	 grid-template-areas:
		"g1 g2 g3"
		"g4 g2 g6"
		"g4 g5 g6"
		"g7 g7 g7"
		"g7 g7 g7"
		"g8 g9 g10";
	}
	.grid-gallery > a{
		min-height: inherit;
	}
	.grid-gallery > a, .grid-gallery .g1, .grid-gallery .g3,.grid-gallery .g11, .grid-gallery .g6{
		height: 87px;
		border-radius: 0;
	}
	 .grid-gallery .g2, .grid-gallery .g4,.grid-gallery .g7, .grid-gallery .g6{
		 height: 180px;
	 }
}
.study__list__item {
	margin-bottom: 80px;
	position: relative;
}

.study__list__item .study__item__link{
	position: absolute;
	z-index: 20;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	display: block;
}

.study__list__item figure{
	width: 300px;
	height: 300px;
	border-radius: 50%;
	margin: 0;
	padding: 0;
	position: relative;
	z-index: 2;
	/* background: url(...); */
	filter: drop-shadow(0px 3px 6px rgba(0, 0, 0, 0.16));
	
	flex-shrink: 0;
}

.study__list__item figure img{
	width: 100%;
	height: 100%;
	border-radius: 50%;
	object-fit: cover
}

.study__list__item__grid{
	width: 1000px;
	margin: 0 auto;
	display: flex;
	align-items: flex-start;
}
.study__list__item__heading{
	padding: 3rem;
	background: red;
	position: relative;
	font-size: 20px;
	font-weight: 600;
}

.study__list__item__heading.orange, .button.orange{
	background: #ffa145;
	color: #111;
}
.study__list__item__heading.green__dark, .button.green_dark{
	background: #4cca47
}
.study__list__item__heading.grey, .button.grey{
	background: rgb(157,157,156);
}

.study__list__item__heading.green, .button.green{
	background: #ccff40;
	color: #111
}

.study__list__item__heading.blue__dark, .button.blue__dark{
	background: #004082;
	color: #fff
}
.study__list__item__heading.blue__light, .button.blue__light{
	background: #2fc1ff;
	color: #111
}

.study__list__item__heading.blue, .button.blue{
	background: #4fd7ff;
	color: #111
}
.study__list__item__heading.purple, .button.purple{
	background: #c76de7
}
.study__list__item__heading.red, .button.red{
	background: #da3800;
	color: #fff;
}

.study__list__item__heading small{
	font-weight: 400;
	
}

.study__list__headline{
	hyphens: auto;
	-webkit-hyphens: auto;
}
.study__list__item__heading::before{
	content: '';
	  position: absolute;
	  bottom: 0px;
	  left: -140px;
	  height: 100%;
	  z-index: 1;
	  width: 140px;
}
.study__list__item__heading.grey{
	color: #fff
}
.study__list__item__heading.grey::before{
	background: rgb(157,157,156);
}
.study__list__item__heading.orange::before{
	background: #ffa145;
}
.study__list__item__heading.green::before{
	background: #ccff40
}
.study__list__item__heading.blue__dark::before{
	background: #004082
}
.study__list__item__heading.blue__light::before{
	background: #2fc1ff
}

.study__list__item__heading.green__dark::before{
	background: #4cca47
}
.study__list__item__heading.blue::before{
	background: #4fd7ff
}

.study__list__item__heading.purple::before{
	background: #c76de7
}

.study__list__item__heading.red::before{
	background: #da3800
}

.revert .study__list__item__heading::before{
	left: auto;
	right: -140px;
}

.revert{
	flex-direction: row-reverse;
}


.study__list__item__heading small{
	display: block;
}

.study__list.half{
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-gap: 6rem;
}

.study__list.half .study__list__item__grid {
	width: 100%;
	margin: 0 auto;
	display: flex;
	align-items: flex-start;
}
.study__list.half  .study__list__item:nth-child(even){
	margin-top: -10rem;
}
.study__list__item__meta .btn{
	margin-top: 2rem;
}

.study__list__item__content{
	
	flex-shrink: 1;
	flex-grow: 1;
}
.study__list__item__content p{
	
	padding: 1rem 2rem 1rem 3rem;
	font-size: 15px;
}
.study__list__item__content p small{
	display: block;
	line-height: 1.4
}
.study__list__item__meta{
	padding: 1rem 3rem;
	
}
.study__list__item__meta .note,
.study__list__item__meta .btn{
	border-radius: 25px;
	background: #fff;
	margin-right: 10px;
	box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
	font-size: 1.3rem;
	padding: 1rem 1.8rem;
	display: inline-block;

}

.study__list__item__meta .btn{
	background: #111;
	color: #fff;
	text-decoration: none;
}

.study__list__item__meta .btn .button__icon{
	margin-left: 10px;
	height: 14px;
	display: inline-block;
	vertical-align: middle;
	  transition: all 0.2s ease-in-out;
}

.study__list__item__meta .btn img,
.study__list__item__meta .btn svg{
	height: 14px;
	width: auto;
	display: block
}

.study__list__item__meta .btn:hover .button__icon{
	margin-left: 18px;
}

.study__courses .cta__box.secondary .box{
	margin: 0;
}


.study__courses .cta__box.primary .box{
	margin: 4rem 0 0 0;
}

.has__bg{
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1922.414' height='2604.766' viewBox='0 0 1922.414 2604.766'%3E%3Cpath id='Pfad_63' data-name='Pfad 63' d='M10361,4121.933l1922.414-780.475-2.77,2604.766L10361,5462.186Z' transform='translate(-10361 -3341.457)' fill='%23fafafa'/%3E%3C/svg%3E%0A");
	background-size: cover;
	background-position: top left;
	background-repeat: no-repeat;
	position: relative;
}

.grid__center{
	max-width: 900px;
	margin: 0 auto;
	position: relative;
	z-index: 10;
	text-align: center
}


.cta__group{
	max-width: 800px;
	margin: 0 auto;
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-gap: 5rem;
	margin-top: 10rem;
	position: relative;
	z-index: 10;
}
.cta__group.images .cta__box {
	width: 30%;
}
.cta__group.images  {
max-width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.cta__group.full{
	max-width: inherit;
	grid-template-columns: 1fr 1fr 1fr;
}
.cta__group.full.link-group-2,
.cta__group.full.link-group-4{
	max-width: 70%;
	grid-template-columns: 1fr 1fr;
	
}
.cta__box  .box{
	position: relative;
	color: #fff;
	padding: 3rem 5rem 3rem 3rem;
}


.cta__box.bigger  .box{
	position: relative;
	color: #fff;
	padding: 5rem 7rem 5rem 5rem;
	text-align: center;
	font-size: 2.2rem;
}

.cta__box.bigger:nth-child(2)  .box{
	
	margin-top: 4rem;
}

.cta__box.secondary .box{
	color: #111;
	margin-top: 4rem
}
.cta__box .box a{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	display: block;
	z-index: 2;
}

.cta__box .cta__heading{
	font-weight: 700;
}
.cta__box p{
	margin-bottom: 0;
}
.cta__box .box:not(.image):before,
.cta__box .box:not(.image):after {
   content:"";
   position:absolute;
   z-index:-1;
   top:0;
   left:0;
   right:0;
   bottom:0;
   clip-path: polygon(0 11%, 92% 0, 88% 100%, 3% 96%);
   transition:1s all;
   background: var(--primary-color);
}

.cta__box .box__outer{
	
	cursor: pointer
}
.cta__box .box.image{
	padding: 0;
}
.cta__box .box.image img {
   
   clip-path: polygon(0 11%, 92% 0, 88% 100%, 3% 96%);
   transition:1s all;
   background: var(--primary-color);
   width: 100%;
   height: auto;
}


.box__outer .cta__heading{
	text-align: center;
	padding-top: 2rem;
	padding-right: 3rem;
}


.cta__box .box:before {
	background: var(--primary-color);
  transform:scale(1.05,1.12);
}

.cta__box.secondary .box:before,
.cta__box.secondary .box:after{
	
	background: var(--secondary-color);
}


.cta__box.green__dark .box:before,
.cta__box.green__dark .box:after{
	background: #4cca47;
	color: #111;
}

.cta__box.blue__dark .box:before,
.cta__box.blue__dark .box:after{
	background: #004082;
	color: #fff;
}
.cta__box.green__dark .box{
	color: #111;
}



.stage {
position: relative;
width: 100%;
}

.stage .stage-link {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	display: block;
	z-index: 10;
}

.stage-content {
	top: 50%;
	transform: translateY(-20%);
	position: absolute;
	width: 100%;
	left: 0;
	z-index: 5;
	text-align: center;
	padding: 0;
}

.stage img, .stage video {
	width: 100%;
	height: auto;
	display: block;
}

.stage-content h2 {
	font-size: 5.2rem;
	color: #fff;
	line-height: 1.4;
	font-weight: 800;
	letter-spacing: 4px;
	text-transform: uppercase;
}

.stage-content .svg-plus {
	height: 80px;
	margin-top: 50px;
}

.stage-content .svg-plus{
	font-size: 2rem;
	font-weight: 600;
	color: #fff;
}
.stage-content .svg-plus svg {
	width: 40px;
	-webkit-transition: all .3s ease;
	-moz-transition: all .3s ease;
	-ms-transition: all .3s ease;
	-o-transition: all .3s ease;
	transition: all .3s ease;
	height: auto;
	margin-right: 12px;
}

.stage:hover .stage-content .svg-plus svg {
	transform: rotate(90deg);
}


.image__grid__element{
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-gap: 5rem;
	margin-top: 5rem;
	
}

.image__grid__element figure{
	margin: 0;
	padding: 0;
}

.image__grid__element figure img{
	width: 100%;
	height: auto;
	display: block;
}

.image__grid__element .image__grid__element__content > div{
	width: 600px;
}

.image__grid__element .image__grid__element__content > div p:first-of-type{
	margin-top: 0;
}


.slider figure img {
		width: 100%;
		height: 100%;
		border-radius: 50%;
		object-fit: cover;
	}
.slider figure {
		width: 280px;
		height: 280px;
		border-radius: 50%;
		margin: 0 auto 3rem auto;
		padding: 0;
		position: relative;
		z-index: 2;
		/* background: url(...); */
		filter: drop-shadow(0px 3px 6px rgba(0, 0, 0, 0.16));
	}
	
	#benefits__slider, #testimonials__slider{
		text-align: center;
	}
	.slider__outer{
		position: relative;
	}
.controls{
	
	margin: 0;
	padding: 0;
}

.controls svg{
	height: 40px;
	width: auto;
	display: block;
}
	.controls li {
		display: block;
		position: absolute;
		top: 50%;
		height: 60px;
		line-height: 60px;
		margin-top: -30px;
		padding: 0 15px;
		cursor: pointer;
		transition: background 0.3s;
	}
	.controls .next {
		right: -6rem;
	}
	.controls .prev {
		left: -6rem;
	}
	
	
	.testimonial p,
	.testimonial .testimonial__heading{
		padding: 0 3rem;
	}
	.testimonial .testimonial__heading{
		font-weight: 700;
		font-size: 20px;
	}
	
	
	
	#meta__links{
		display: flex;
		height: 80px;
		align-items: center;
		justify-content: flex-end;
	}
	
	#meta__links ul{
		display: flex;
		margin: 0 50px 0 0;
		padding: 0;
	}
	
	#meta__links ul li{
		list-style: none;
		padding:  0 8px;
	}
	
	#meta__links ul li a{
		display: block;
	}
	
	#meta__links ul li a svg{
		display: block;
		height: 24px;
		width: auto;
		
	}
	
	#hamburger__action{
		display: flex;
		align-items: center;
		margin-left: 50px
	}
	
	#hamburger__action .hamburger__label{
		font-size: 14px;
		letter-spacing: 1px;
		line-height: 1;
		color: var(--primary-color);
		font-weight: 700;
	}
	.only-content{
	position: relative;
	z-index: 6;
}
	#contact__cta {
		display: flex;
		align-items: center;
		cursor: pointer;
border-radius: 25px;
background: var(--primary-color); padding: 0.8rem 2rem 0.8rem 1.3rem; color: #fff; font-size: 16px;	}

	#contact__cta svg, .infodoc__icon svg{
		height: 24px;
		width: auto;
		display: block;
		margin-right: 12px;
	}
	

	
	.campus #contact__cta{
		background: #4cca47;
		color: #111
	}
	
	.campus #contact__cta svg path{
		fill: #111
	}
	
	.button__infodocs{
		display: flex;
				align-items: center;
				cursor: pointer;
		border-radius: 25px;
		text-decoration: none;
		background: var(--secondary-color); padding: 0.8rem 2rem; margin-right: 12px; color: #111; font-size: 16px;	}
		
	
	.grid__2fr{
		display: grid;
		grid-template-columns: 1fr 1fr;
		grid-gap: 5rem;
		/* align-items: start; */
	}
	
	.grid__2fr figure{
		margin: 0;
		padding: 0;
	}

	
	.grid__2fr figure img{
		width: 100%;
		height: auto;
		display: block;
	}
	
	
	.grid__2fr.reverse .ti2fr__text{
		order: 1;
	}
	.grid__2fr.reverse .ti2fr__image{
		order:2;
	}
	
	.ti2fr__image figure{
		margin-bottom: 3rem;
	}
	
	.ti2fr__image figure:last-of-type{
		margin-bottom: 0;
	}
	.page-id-2089 .ti2fr__text__inner, 
	.ti2fr__text__inner.sticky{
		position: sticky;
		position: -webkit-sticky; 
		top: 120px;
	}
	
	.ti2fr__text__inner a, .only-content a{
		color: var(--primary-color)
	}
	
	.ti2fr__text__inner h2{
		line-height: 1.4
	}
	
	.number__highlight{
		background: var(--secondary-color);
		width: 6rem;
		height: 6rem;
		display: flex;
		border-radius: 100%;
		color: #111;
		font-weight: 600;
		font-size: 2.5rem;
		justify-content: center;
		align-items: center;
		margin-bottom: 5rem;
		position: relative;
	}
	
	.number__highlight:before{
		width: 4.8rem;
		height: 4.8rem;
		border: 1px solid #111;
		position: absolute;
		top: 0.5rem;
		left: 0.5rem;
		border-radius: 100%;
		content: " ";
	}
	
	
	.benefits{
		
		display: flex;
		flex-direction: row;
		flex-wrap: wrap;
		align-items: flex-start;
	}
	.benefits .benefit {
		width: 50%;
		display: flex;
		align-items: center;
		margin-bottom: 5rem;
		box-sizing: border-box;
		position: relative;
	}
	
	.benefits .benefit a{
		position: absolute;
		top: 0;
		left: 0;
		z-index: 3;
		width: 100%;
		height: 100%;
		display: block;
	}
	

	.benefits .benefit .sp__btn{
		margin-top: 20px;
		border-radius: 25px;
			color: #111;
			margin-right: 10px;
			box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
			font-size: 1.3rem;
			padding: 1rem 1.8rem;
			display: inline-block;
			background: #fff;
			text-decoration: none;
	
	}
	
	.benefits .benefit .sp__btn .button__icon {
		margin-left: 10px;
		height: 14px;
		display: inline-block;
		vertical-align: middle;
		transition: all 0.2s ease-in-out;
	}
	
	.benefits .benefit .sp__btn .button__icon svg {
		height: 14px;
		width: auto;
		display: block;
	}
	.benefits .benefit:nth-child(even){
		padding-top: 10rem;
	}
	
	.benefits .benefit:nth-child(odd):not(:first-child){
		margin-top: -5rem;
	}
	
	.benefits .benefit .img{
		position: relative;
		 flex-shrink: 0;
	}
	.benefits .benefit figure{
		
		width: 280px;
		height: 280px;
		border-radius: 50%;
		margin: 0;
		padding: 0;
		position: relative;
		overflow: hidden;
		z-index: 2;
		/* background: url(...); */
		filter: drop-shadow(0px 3px 6px rgba(0, 0, 0, 0.16));
	}
	
	.benefits .benefit figure img{
		
		width: 100%;
		height: 100%;
		object-fit: cover;
		display: block;
	}
	
	.benefits .benefit > div.ctn{
		 flex-shrink: 1;
		 padding: 0 50px;
	 }
	 
	 .speech-bubble {
		 position: relative;
		 padding: 3rem;
		 color: #fff;
		 font-size: 1.6rem;
	 }
	 
	  .speech-bubble:after,
	   .speech-bubble:before {
			 
			  content: "";
			  position: absolute;
			  z-index: -1;
			  top: 0;
			  left: 0;
			  right: 0;
			  bottom: 0;
			  clip-path: polygon(0% 2%,96% 4%,92% 93%,5% 100%);
			  transition: 0.2s all;
			  background: var(--primary-color);
		
	 }
	 
	 
	 #applicant__days{
		 margin-top: 15rem;
	 }
	 
	 .applicant__days{
		display: flex;
		position: relative;
		z-index: 10;
		justify-content: center;
		flex-wrap: wrap;
	 }
	 
	 
	 .applicant__day{
		 
		 color: #fff;
		 padding: 3rem 5rem 3rem 3rem;
		 position: relative;
		 box-sizing: border-box;
		 margin: 1.2rem;
		 width: calc((100% / 6) - 2.4rem)
	 }
	 
	 .applicant__day:before, .applicant__day:after {
		 content: "";
		 position: absolute;
		 z-index: -1;
		 top: 0;
		 left: 0;
		 right: 0;
		 bottom: 0;
		 clip-path: polygon(0 11%,92% 0,88% 100%,3% 96%);
		 transition: 0.2s all;
		 background: var(--primary-color);
	 }
	 
	 .applicant__day a{
		position: absolute;
		top: 0;
		left: 0;
		display: block;
		text-indent: -9999px;
		z-index: 5;
		width: 100%;
		height: 100%;
		 
	 }
	 
	 .applicant__day span.date {
		 font-size: 1.8rem;
		 padding-bottom: 10px;
		 border-bottom: 1px solid #eee;
	 }
	 
	 .applicant__day span {
		 display: block;
		 padding: 0;
	 }
	 
	 .applicant__day span.city {
		 font-size: 1.4rem;
		 padding: 10px 0 0 0;
	 }
	 .applicant__day:hover{
		 color: #111
	 }
	 .applicant__day:hover:before, .applicant__day:hover:after {
		 background: var(--secondary-color)
	 }
	 .applicant__day:hover span.date {
		  border-bottom: 1px solid #111;
	  }
	 
	 
	 #stage__caption__offer{
		 position: relative;
		 margin-top: -140px;
		 padding: 7rem 4rem 4rem 4rem;
		 z-index: 20;
		 color: #fff;
		 
		 box-sizing: border-box;
	 }
	 
	 #stage__caption__offer__text{
		 
		  display: grid;
		  grid-template-columns: 1fr 1fr;
		  grid-gap: 4rem;
	 }
	 
	 #stage__caption__offer:before, #stage__caption__offer:after {
		  content: "";
		  position: absolute;
		  z-index: -1;
		  top: 0;
		  left: 0;
		  right: 0;
		  bottom: 0;
		  clip-path: polygon(0 11%,100% 0,96% 100%,3% 96%);
		  transition: 0.2s all;
		  background: var(--primary-color);
	  }
	  
	 #stage__caption__offer #stage__caption__text{
		 padding: 4rem;
	 }
	 
	 #stage__caption__offer #stage__caption__text:first-of-type{
		 padding-left: 10rem;
	 }
	  
	 #stage__caption__offer #stage__caption__text a{
		 color: #fff;
	 }
	 
	 #stage__caption__offer h1{
		 text-align: center;
		 color: #fff;
		 max-width: 94%;
		 margin: 2rem auto 0 auto;
		 font-weight: 500;
		 font-size: 4.6rem;
		 text-transform: uppercase
	 }
	 .stage__caption__offer__subline{
		 text-align: center;
		  color: #fff;
		  font-weight: 500;
		  font-size: 2.6rem;
		  text-transform: uppercase;
		  margin-bottom: 3rem;
	 }
	 #stage__caption__offer h1.has__subline{
		 margin-bottom: 0
	 }
	 
	 
	 .headline h1{
		 
		  font-weight: 500;
		  letter-spacing: 2px;
		  text-transform: uppercase
	 }
	 
	  #stage__caption__offer.orange h1,
	  #stage__caption__offer.orange .stage__caption__offer__subline,
	  #stage__caption__offer.orange,
	  #stage__caption__offer.orange #stage__caption__text a,
		 #stage__caption__offer.blue h1,
		   #stage__caption__offer.blue .stage__caption__offer__subline,
		 #stage__caption__offer.blue,
		 #stage__caption__offer.blue #stage__caption__text a,
		 #stage__caption__offer.green h1,
		   #stage__caption__offer.green .stage__caption__offer__subline,
		 #stage__caption__offer.green,
		 #stage__caption__offer.green #stage__caption__text a,
		 
		  #stage__caption__offer.green__dark h1,
			#stage__caption__offer.green__dark .stage__caption__offer__subline,
		  #stage__caption__offer.green__dark,
		  #stage__caption__offer.green__dark #stage__caption__text a
		  {
		 
		  color: #111;
	 }
	 
	 
	 #stage__caption__offer.orange:before, #stage__caption__offer.orange:after{
		 background: #ffa145;
		 color: #111;
	 }
	 #stage__caption__offer.green:before, #stage__caption__offer.green:after{
		   background: #ccff40;
			color: #111;
	   }
	   
	   #stage__caption__offer.gray:before, #stage__caption__offer.gray:after{
			 background: rgb(157,157,156);
			  color: #fff;
		 }
	  #stage__caption__offer.green__dark:before, #stage__caption__offer.green__dark:after{
		   background: #4cca47;
			color: #111;
	   }
	   
	   
	   #stage__caption__offer.blue__dark:before, #stage__caption__offer.blue__dark:after{
		   background: #004082;
		   color: #fff;
	   }
	  #stage__caption__offer.blue:before, #stage__caption__offer.blue:after{
		 background: #4fd7ff;
		  color: #111;
	 }
	   #stage__caption__offer.purple:before, #stage__caption__offer.purple:after{
		 background: #c76de7;
		  color: #111;
	 }
		#stage__caption__offer.red:before, #stage__caption__offer.red:after{
		 background: #da3800;
		 color: #fff;
	 }
	 
	 
	 #stage__caption__offer.green__dark h1{
		 margin-top: 0;
	 }
	 
	 #stage__caption__offer.green__dark #stage__caption__text{
		  padding-top: 0;
		   padding-bottom: 0;
	 }
	 
	 
	 .margin__t{
		 margin-top: 8rem;
	 }
	 
	 .more__information__grid{
		 display: grid;
		 grid-template-columns: 1.2fr 1fr;
		 grid-gap: 10rem;
	 }
	 .more__information__grid .links{
		 display: flex;
	justify-content: flex-end;
	flex-direction: column;
	align-content: flex-end;
	flex-wrap: wrap;
	 }
	 
	.more__information__grid .links .linner {
		 display: flex;
		  justify-content: flex-end;
		 width: 60%;
		 flex-direction: column;
		 padding: 7rem;
		  
	 }
	 .link__info__col a{
		 display: block;
		 border-radius: 50px;
		 border: 2px solid #111;
		 color: #111;
		 padding: 6px 20px;
		 text-align: center;
		 text-decoration: none;
			transition:0.3s all;
		 
	 }
	 .link__info__col a:hover{
		 background: var(--primary-color);
		 color: #fff;
		 border-color: var(--primary-color)
	 }
	 .link__info__col{
		 display: block;
		 margin-bottom: 20px;
	 }
	  .more__information__grid figure{margin: 0;
		  padding: 0;
		  position: relative;
		  overflow: hidden;
	  }
	  
 .more__information__grid figure .before__more__information__image {
	 position: absolute;
	 left: 0px;
	 z-index: 5;
	 top: 0;
	 height: 100%;
	 width: 10rem;
 }
 
 .more__information__grid figure .before__more__information__image:before, 
 .more__information__grid figure .before__more__information__image:after {
	   content: "";
	   position: absolute;
	   z-index: -1;
	   top: 0;
	   left: 0;
	   right: 0;
	   bottom: 0;clip-path: polygon(0 0, 0% 100%, 100% 100%);
	   transition: 0.2s all;
	   background: #fff;
   }
   
   
   
 .more__information__grid figure .before__more__information__image svg{
	 display: block;
	 height: 100%;
	 width: auto;margin-left: auto;
 } .more__information__grid figure {
	 height: 100%;
 }
	   .more__information__grid figure img{ width: 100%;
		   height: 100%;
		   object-fit: cover;
		   display: block;
	   }
	   
	   .more__information__grid p:last-of-type{
		   margin-bottom: 6rem;
	   }
	   
		  .more__information__grid .form__items p:last-of-type{
			  margin: 0;
		  }
		  
		  
			 .more__information__grid .form__items .input-field{
				 margin: 0 0 2rem 0;
			 }
			 
			 
			 
			.more__information__grid .form__items .agree{
				 margin-bottom: 3rem;
			 }
	   .open #navigation{
		   display: flex;
		 
	   }
	   
	   body.open{
		   overflow: hidden;
	   }
	  #navigation {
		  display: none;
		  position: fixed;
		  top: 80px;
		  left: 0;
		  width: 100%;
		  height: calc(100% - 80px);
		  background: var(--primary-color);
		  box-sizing: border-box;
		  z-index: 999;
	  }
	  
	  #navigation nav {
		  padding: 12rem;
	  }
	  
	  #navigation ul,
	  #navigation li {
		  margin: 0;
		  padding: 0;
		  list-style: none;
	  }
	  
	  #navigation ul {
		  position: relative;
	  }
	  
	  /* Links */
	  
	  #navigation a,
	  #navigation a:link,
	  #navigation a:visited,
	  #navigation a:hover,
	  #navigation a:focus,
	  #navigation a:active {
		  color: #fff !important;
		  text-decoration: none !important;
		  font-weight: 500 !important;
	  }
	  
	  /* Ebene 1 */
	  
	  #navigation > nav .menu {
		  position: relative;
		  width: 360px;
	  }
	  
	  #navigation > nav .menu > li > a {
		  display: inline-block;
		  padding: 1rem 2rem 1rem 0;
		  font-size: 3rem;
		  line-height: 1.2;
		  font-weight: 500 !important;
	  }
	  
	  /* Submenu nur über JS-Klassen öffnen, NICHT über current-menu-* */
	  
	  #navigation > nav .menu > li > ul {
		  display: none;
		  position: absolute;
		  top: 0;
		  left: 100%;
		  width: 600px;
		  padding-left: 10rem;
	  }
	  
	  #navigation > nav .menu > li.hover > ul,
	  #navigation > nav .menu > li.active > ul {
		  display: block;
	  }
	  
	  /* Ebene 2 direkte Links */
	  
	  #navigation > nav .menu > li > ul > li > a {
		  display: inline-block;
		  padding: .2rem 0;
		  font-size: 2rem;
		  line-height: 1.45;
		  font-weight: 500 !important;
	  }
	  
	  /* menu-label */
	  
	  #navigation li.menu-label {
		  display: block;
		  margin: 3rem 0 1rem;
	  }
	  
	  #navigation li#menu-item-87799{
			margin: 3rem 0 0 0;}
	  
	  #navigation li.menu-label:first-child {
		  margin-top: 0;
	  }
	  
	  #navigation .menu-label-title {
		  display: block;
		  padding: 0 0 0.6rem;
		  font-size: 2rem;
		  font-weight: 500 !important;
		  color: rgba(255, 255, 255, .65) !important;
		  cursor: default;
	  }
	  
	  /* menu-label-Children niemals als Flyout */
	  
	  #navigation li.menu-label > ul,
	  #navigation li.menu-label.hover > ul,
	  #navigation li.menu-label.active > ul,
	  #navigation li.menu-label.current-menu-parent > ul,
	  #navigation li.menu-label.current-menu-ancestor > ul {
		  display: block !important;
		  position: static !important;
		  top: auto !important;
		  left: auto !important;
		  width: auto !important;
		  padding-left: 0 !important;
	  }
	  
	  /* Links innerhalb menu-label */
	  
	  #navigation li.menu-label li {
		  margin-bottom: .6rem;
	  }
	  
	  #navigation li.menu-label li a {
		  display: inline-block;
		  padding: .2rem 0;
		  font-size: 2rem;
		  line-height: 1.45;
		  font-weight: 500 !important;
	  }
	  
	  /* Hover-Dimming */
	  
	  #navigation.hovered > nav .menu > li > a,
	  #navigation.hovered .sub-menu a {
		  opacity: .35;
	  }
	  
	  #navigation.hovered > nav .menu > li.hover > a,
	  #navigation.hovered > nav .menu > li.active > a,
	  #navigation.hovered .sub-menu li.hover > a,
	  #navigation.hovered .sub-menu li.active > a,
	  #navigation.hovered .sub-menu li.current-menu-item > a {
		  opacity: 1;
	  }
	  
	  #navigation.hovered .menu-label-title {
		  opacity: .65;
	  }
	  
	  /* Bildbereich */
	  
	  #navigation #navigation__image {
		  width: 33.3333%;
		  height: 100%;
		  position: relative;
		  flex-shrink: 0;
	  }
	  
	  #navigation #navigation__overlay {
		  position: absolute;
		  top: 0;
		  right: -1px;
		  height: 100%;
		  z-index: 2;
	  }
	  
	  #navigation #navigation__overlay svg {
		  display: block;
		  width: auto;
		  height: 100%;
	  }
	  
	  #navigation #navigation__image img {
		  display: none;
		  width: 100%;
		  height: 100%;
		  object-fit: cover;
	  }
	  
	  #navigation #navigation__image img.active {
		  display: block;
	  }
	  
	  /* Stage */
	  
	  #stage__offer__media figure {
		  margin: 0;
	  }
	  
	  #stage__offer__media img {
		  display: block;
		  width: 100%;
		  height: auto;
	  }
				   
				  .teaser__with__bullets  {
					   
					   display: flex;
					   align-items: center;
				   }
.teaser__with__bullets ul{
	margin: 0;
	padding: 0;
}
.teaser__with__bullets li { list-style: none; margin: 1em 0; padding-left: 4.5rem; position: relative }
.teaser__with__bullets  li:before { content: '\2713'; display: inline-block;  width: 24px; height: 24px; margin-right: 8px; padding: 2px;
position: absolute;
left: 0;
top: 0;
	font-size: 14px; font-weight: bold; line-height: 24px; color: var(--primary-color); border: 2px solid var(--primary-color); border-radius: 50%; text-align: center; }



#sub__nav{
	position: sticky;
	position: -webkit-sticky; 
	top: 80px;
	left: 0;
	margin-top: 10rem;
	padding:  1.5rem 0;
	color: #fff;

width: 100%;
z-index: 40;}
.myObserver {
  height: 1px;
  width: 1px;
  pointer-events: none;
  position: relative;
  top:auto;
  z-index: -1;
  overflow: hidden;
}

#sub__nav.is__pinned{
	background: #fafafa;
}

#offer__nav{
	display: flex;
	margin-bottom: 4rem;
	margin-top: 4rem;
	justify-content: center;
}


#offer__nav a{
	text-decoration: none;
	font-size: 1.6rem;
	border-radius: 50px;
	border: 1px solid #111;
	padding: 1rem 2rem;
	color: #111;
	display: block;
	   transition:0.3s all;
	   margin-bottom: 2.2rem;
	   margin: 0 8px;
}

@media(max-width: 750px){
	#offer__nav{
	flex-direction: column;
	text-align: center;
	align-items: center;
	}
	
	#offer__nav a{
		width: 70%;
		margin-bottom: 12px;
	}
}

.sub__nav__mobile{
	display: none;
}

#sub__nav__mobile{
	display: none;
}

@media(max-width: 500px){
	
	#offer__nav a{
		width: 80%;
	}
}
#stage__caption__offer.purple  #offer__nav a,
#stage__caption__offer.gray  #offer__nav a{
	border-color: #fff;
	color: #fff
}


#sub__nav ul,
#sub__nav li{
	list-style: none;
	margin: 0;
	padding: 0;
}

#sub__nav ul{
	max-width: 90%;
	margin: 0 auto;
	display: flex;
	align-items: center;
	justify-content: center;
	
	flex-wrap: wrap;
}
#sub__nav li{
	margin-right: 4rem;
}
#sub__nav li a{
	text-decoration: none;
	font-size: 1.6rem;
	border-radius: 50px;
	border: 1px solid #111;
	padding: 1rem 2rem;
	display: block;
	   transition:0.3s all;
	   margin-bottom: 2.2rem;
}
#sub__nav.is__pinned li a{
	padding: 0;
	border: none;
	margin: 0;
}

 #sub__nav a{
	  color: #111;
	 
 }

 
 
 #sub__nav li.current_page_item a{
	 font-weight: 600;
 }
 
 .semesters{
	 display: grid;
	 grid-template-columns: repeat(6, 1fr);
	 grid-gap: 2rem;
 }
 .semesters .semester{
	 
	 display: flex;
	 flex-direction: column;
	 justify-content: flex-end;
 }
 .semesters .semester div{
	 font-size: 1.4rem;
	 margin-bottom: 1.4rem;
	 cursor: pointer;
	 height: 10rem;
	 display: flex;
	 align-items: center;
	justify-content: center;
	 box-sizing: border-box;
	 padding: 1.5rem 2rem;
	 position: relative;
	 text-align: center;
 }
 
  .semesters .semester div.heigher{
	  height: 22rem;
  }
  
 
 .semesters .semester div:before,
 .semesters .semester div:after {
	content:"";
	position:absolute;
	z-index:-1;
	top:0;
	left:0;
	right:0;
	bottom:0;
	clip-path: polygon(0 5%,100% 0,96% 100%,3% 100%);
	transition:1s all;
	 background: #efefef;
 }
 
 
 .semesters .semester div.colored{
	  color: #111;
	}
	
	 .semesters.orange .semester div.colored:before,
	  .semesters.orange .semester div.colored:after{
		  
		  background: #ffa145;
		  color: #111;
	  }
	  
		.semesters.blue .semester div.colored:before,
		 .semesters.blue .semester div.colored:after{
			 
			 background: #4fd7ff;
			 color: #111;
		 }
		   .semesters.green .semester div.colored:before,
			.semesters.green .semester div.colored:after{
				
				background: #ccff40;
				color: #111;
			}
			
			input::file-selector-button {
				background: #dadada;
				color: #111;
				padding: 1.2rem 3rem;
				display: inline-block;
				text-decoration: none;
				outline: none;
				border: none;
				cursor: pointer;
				font-size: 1.6rem;
				border-radius: 25px;
				margin-right: 10px;
			}

	.file-wrapper{
		margin-bottom: 2rem;
		padding-bottom: 2rem;
		width: 30%
	}
	
	.file-wrappers{
		
		display: flex;
		align-items: center;
		justify-content: space-between;
	}
  .form__3fr{
	  display: grid; 
	  grid-gap: 3rem;
	  grid-template-columns: 1fr 1fr 1fr;
  }
	.form__2fr{
		 display: grid; 
		 grid-gap: 3rem;
		 grid-template-columns: 1fr 1fr;
	 }
	 .form__2fr__1fr{
		  display: grid; 
		  grid-gap: 3rem;
		  grid-template-columns: 2fr 1fr;
	  }
		.form__1fr{
			display: grid; 
			grid-gap: 3rem;
			grid-template-columns: 1fr;
		}
		
	.form__items{
		
	}	
		.input-field input[type=text], .input-field input[type=email], .input-field input[type=tel], .input-field textarea {
			border: 1px solid #dadada;
			width: 100%;
			padding: 15px;
			font-size: 1.6rem;
			box-sizing: border-box
		}
		
		.agree .wpcf7-list-item{
		margin-left: 0
		}.agree a {
			color: #622a80;
			font-weight: 600;
		}
	.download__area {
		margin-top: 4rem;
	}
	.download__area .button{
		margin-bottom: 2rem;
	}
	footer{
		background: #222;
		padding: 3rem 0;
		}	
	footer .grid{
		color: #fff;
		display: grid;
		grid-template-columns: 1fr 2fr 1fr;
	}
	
	footer .tright{
		text-align: right;
	}
	
	footer a{
		color: #fff;
		text-decoration: none;
	}
		
		
		
		
.link-modal-overlay {
		background: #efefef;
		opacity: .6;
		left: 0;
		top: 0;
		bottom: 0;
		display: none;
		right: 0;
		position: fixed;
		z-index: 90;
		width: 100%;
		height: 100%;
	}
	h1.has__no_subline small{
		font-size: 2rem;
	}
.link-modal {
		text-align: left;
		display: none;
		position: fixed;
		width: 700px;
		z-index: 100;
		box-sizing: border-box;
		padding: 70px 70px;
		left: 50%;
		transform: translateY(-50%);
		top: 50%;
		margin-left: -300px;
	}
	.link-modal.green .close{
		color: #111
	}
	.link-modal.green:after,
	
	.link-modal.green:before
	{
		background: #4cca47
	}
	
.link-modal:before,
.link-modal:after {
	   content:"";
	   position:absolute;
	   z-index:-1;
	   top:0;
	   left:0;
	   right:0;
	   bottom:0;
	   clip-path: polygon(0 4%,100% 0,96% 100%,3% 98%);
	   transition:1s all;
	   background: var(--primary-color);
	}
.secondary.link-modal:before,
.secondary.link-modal:after {
	   background: var(--secondary-color);
	}	
	
	.secondary.link-modal h4,
	.secondary.link-modal a, 
	.secondary.link-modal .close{
		color: #111;
	}
	.secondary.link-modal a{
		border-color: #111
	}
	.link-modal .close {
		color: #fff;
		text-align: center;
		vertical-align: middle;
		font-weight: 600;
		width: 50px;
		font-size: 4rem;
		transform: rotate(45deg);
		height: 50px;
		cursor: pointer;
		position: absolute;
		right: 10px;
		top: 10px;
	}
	
	.link-modal h4 {
		font-size: 2rem;
		color: #fff;
		margin-top: 20px;
		margin-bottom: 20px;
	}
	
	.link-modal a {
		position: static;
		padding: 12px 40px 12px 0;
		font-size: 1.6rem;
		border-bottom: 1px solid #fff;
		display: block;
		text-indent: 0;
		color: #fff;
		text-decoration: none;
	}
	.link-col a, .link-info-col a, .threeCol a, .cta__box .link-modal-handler {
		display: block;
		position: absolute;
		z-index: 3;
		top: 0;
		left: 0;
		cursor: pointer;
		width: 100%;
		height: 100%;
		text-indent: -99999px;
	}
	
	body.noScroll{
		overflow: hidden;
	}
	
	
	section.heading{
		background: var(--primary-color);
		padding: 5rem 0 12rem 0;
		color: #fff;
		clip-path: polygon(0 0, 100% 0, 100% 100%, 0 85%);
	}
	
	section.heading h2,
	section.heading h1{
		
		color: #fff;
		margin-bottom: 0;
	}
	section.heading.blue{}
	
	#stage.orange #stage__grid #stage__caption{
		background: #ffa145;
		color: #111;
	}
	#stage.orange #stage__media__before svg path{
		fill:  #ffa145;
	}
	
	 #stage.orange #stage__grid #stage__media #stage__media__before:before, 
	 #stage.orange #stage__grid #stage__media #stage__media__before:after{
		 background: #ffa145
	 }
	
	section.heading.orange{
		background: #ffa145;
		color: #111;
	}
	
	#stage.green #stage__grid #stage__caption{
		background: #ccff40;
		color: #111;
	}
	#stage.green #stage__media__before svg path{
		fill:  #ccff40;
	}
	#stage.green #stage__grid #stage__media #stage__media__before:before, 
	 #stage.green #stage__grid #stage__media #stage__media__before:after{
		 background: #ccff40
	 }
	section.heading.green{
		background: #ccff40;
		color: #111
	}
	
	#stage.blue #stage__grid #stage__caption{
		background: #4fd7ff;
		color: #111;
	}
	#stage.blue #stage__media__before svg path{
		fill:  #4fd7ff;
	}#stage.blue #stage__grid #stage__media #stage__media__before:before, 
	 #stage.blue #stage__grid #stage__media #stage__media__before:after{
		 background: #4fd7ff
	 }
	
	section.heading.blue{
		background: #4fd7ff;
		color: #111
	}
	section.heading.blue h1,
	section.heading.blue h2,
	section.heading.orange h1,
	section.heading.orange h2,
	section.heading.green h1,
	section.heading.green h2{
		color: #111
	}
	
	#stage.purple #stage__grid #stage__caption{
		background: #c76de7;
	}
	#stage.purple #stage__media__before svg path{
		fill:  #c76de7;
	}#stage.purple #stage__grid #stage__media #stage__media__before:before, 
	 #stage.purple #stage__grid #stage__media #stage__media__before:after{
		 background: #c76de7
	 }
	 
	 
	 
	 #stage.green__dark #stage__grid #stage__caption{
		 background: #4cca47;
		 color: #111
	 }
	 #stage.green__dark #stage__media__before svg path{
		 fill:  #4cca47;
	 }#stage.green__dark #stage__grid #stage__media #stage__media__before:before, 
	  #stage.green__dark #stage__grid #stage__media #stage__media__before:after{
		  background: #4cca47
	  }
	  
	  
	  
	section.heading.purple{
		background: #c76de7
	}
	section.heading.red{
		background: #da3800;
		color: #fff;
	}
	
	
	.video-container {
		position: relative;
		padding-bottom: 56.25%;
		padding-top: 0;
		height: 0;
		overflow: hidden;
	}
	.video-container iframe, .video-container object, .video-container embed {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
	}
	.video__grid{
		display: grid;
		grid-template-columns: 1fr 1fr;
		grid-gap: 5rem;
	}
	
	.video__grid .video-container{
		
		margin-top: 100px;
	}
	.video__grid .content__video > div{
		width: 60%;
	}
	
	.content__video{
		margin-bottom: 9rem;
	}
	
	.contact__persons{
		display: grid;
		grid-template-columns: 1fr 1fr;
		grid-gap: 5rem;
		max-width: 70rem;
		margin: 0 auto;
	}
	.contact__persons.counts__3{
		grid-template-columns: 1fr 1fr 1fr;
		max-width: 90rem;
		
	}
	.contact__person{
		
	}
	
	.contact__person figure{
		width: 250px;
		height: 250px;
		border-radius: 50%;
		margin: 0 auto;
		padding: 0;
		position: relative;
		z-index: 2;
		/* background: url(...); */
		filter: drop-shadow(0px 3px 6px rgba(0, 0, 0, 0.16));
	}
	
	.contact__person figure img{
		width: 100%;
		height: 100%;
		border-radius: 50%;
		object-fit: cover
	}
	
	.contact__person__content{
		text-align: center;
		margin-top: 4rem;
	}
	.contact__person__content p{
		margin-top: 0;
	}
	.contact__person__content h4{
		font-size: 2rem;
		font-weight: 500;
		margin-bottom: 1rem;
	}
	
	.icons{
		display: grid;
		grid-template-columns: repeat(4, 1fr);
		grid-gap: 4rem;
		text-align: center;
	}
	
	.icons .icon{
		background: #fff;
		border-radius: 12px;
		box-shadow: 0px 3px 6px rgb(0 0 0 / 16%);
		padding: 3rem 1rem;
		display: flex;
		flex-direction: column;
		justify-content: center;
	}
	
	.icons .icon__heading{
		display: flex;
		justify-content: center;
		align-items: center;
	}
	
	.icons .icon__heading .icon__holder svg{
		width: 46px;
		height: auto;
	}
	.icon__heading__text{
		font-weight: 600;
		color: var(--primary-color)
	}
	
	.icons .icon__heading .icon__holder{
		margin-right: 2rem;
	}
	
	.icons  a{
		color: var(--primary-color);
		text-decoration: none;
	}
	.infobox {
		color: #fff;
		background: #622a80;
		padding: 30px;
		position: absolute;
		font-size: 1.6rem;
	}
	
	#map{
		width: 100%;
		height: 500px;
		position: relative;
	}
	.docents{
		max-width: 1100px;
	}
	.docent{
		display: flex;
		margin-bottom: 20rem;
		
	}
	
		
	.docent figure{
		width: 300px;
		height: 300px;
		border-radius: 50%;
		position: sticky;
		position: -webkit-sticky; 
		top: 120px;
		flex-shrink: 0;
		padding: 0;
		z-index: 2;
		margin-right: 5rem;
		/* background: url(...); */
		filter: drop-shadow(0px 3px 6px rgba(0, 0, 0, 0.16));
	}
	
	.docent figure img{
		width: 100%;
		height: 100%;
		border-radius: 50%;
		object-fit: cover
	}
	
	.docent:nth-child(odd) figure{
		margin-right: 0;
		margin-left: 5rem;
	}
	.docent:nth-child(odd){
		
		flex-direction: row-reverse;
	}
	
	.grid__cols{
		display: grid;
		grid-template-columns: 1fr 1fr;
		grid-gap: 5rem;
	}.grid__cols_3fr{
		display: grid;
		grid-template-columns: 1fr 1fr 1fr;
		grid-gap: 5rem;
	}
	
	.threeColInfo:nth-child(even){
		margin-top: 100px;
	}
	
	.grid__cols_3fr img{
		width: 100%;
		height: auto;
	}
	
	.blog__grid{
		display: grid;
		grid-template-columns: 2fr 1fr;
		grid-gap: 5rem;
	}
	.blog__grid aside .widget ul,
	.blog__grid aside .widget ul li{
		margin: 0;
		padding: 0;
		list-style: none;
	}
	
	.blog__grid .blog__content a{
		color: var(--primary-color)
	}
	
	.blog__grid .blog__content img{
		width: 100%;
		height: auto;
	}
	.blog__grid aside .widget li a{
		display: flex;
	}
	.blog__grid aside .widget img{
		width: 120px;
		height: auto;
		display: block;
		margin-right: 20px;
		flex-shrink: 0;
	}
	.blog__grid aside .widgets{
		position: sticky;
		position: -webkit-sticky; 
		top: 150px;
	}
	.blog__grid aside .widget{
		margin-bottom: 5rem;
	}
	
.blog__grid aside .widget ul li a{
	color: #111;
	text-decoration: none;
}
	.blog__grid aside .widget ul li{
		
		margin-bottom: 30px;
	}
	
	
	
	
	.selectbox{
		width: 100%;
		display: block
	}
	
	.selectbox .wpcf7-form-control-wrap{
		width: 100%;
		display: block
		
	}
		
		.popup{
		  background: rgb(255, 254, 254);
		  padding: 25px;
		  border-radius: 15px;
		  top: 10%;
		  max-width: 500px;
		  width: 100%;
		  position: fixed;
		  top: 140px;
		  right: 60px;
		  z-index: 999;
		  opacity: 0;
		  pointer-events: none;
		  box-shadow: 0px 10px 15px rgba(0,0,0,0.1);
		  transition: top 0s 0.2s ease-in-out,
					  opacity 0.2s 0s ease-in-out,
					  transform 0.2s 0s ease-in-out;
		}
		.popup.show{
		  opacity: 1;
		  pointer-events: auto;
		  transition: top 0s 0s ease-in-out,
					  opacity 0.2s 0s ease-in-out,
					  transform 0.2s 0s ease-in-out;
		
		}
		.popup :is(header, .icons, .field){
		  display: flex;
		  align-items: center;
		  justify-content: space-between;
		}
		.popup header{
		  padding-bottom: 15px;
		  border-bottom: 1px solid #ebedf9;
		}
		.header span{
		  font-size: 21px;
		  font-weight: 600;
		}
		.header .close, .icons a{
		  display: flex;
		  align-items: center;
		  border-radius: 50%;
		  justify-content: center;
		  transition: all 0.3s ease-in-out;
		} 
		.header .close{
		  color: #fff;
		  transform: rotate(45deg);
		  font-size: 2.2rem;
		  background: var(--primary-color);
		  font-weight: 600;
		  height: 33px;
		  position: absolute;
		  right: 20px;
		  top: 20px;
		
		  width: 33px;
		  cursor: pointer;
		}
		.header .close:hover{
		  background: #ebedf9;
		  color: var(--primary-color)
		}
		.popup .content{
		  margin: 20px 0;
		}
		.popup .icons{
		  margin: 15px 0 20px 0;
		}
		.popup .content p{
		  font-size: 16px;
		}
		
		.popup ul, .form__grid__cels{
			display: grid;
			grid-template-columns: 1fr 1fr;
			grid-gap: 2rem;
			margin: 0;
			padding: 0;
		}
		.popup ul li, .form__grid__cels li{
			list-style: none;
			padding: 0;
			margin:  0;
		}
		
		.popup ul li a, .form__grid__cels li a{
			display: flex;
			color: #444;
			text-decoration: none;
			padding: 1rem;
			border-radius: 8px;
			align-items: center;
			font-size: 1.6rem;
		}
		.popup ul li a:hover, .form__grid__cels li a:hover{
			background: #efefef;
		}
		
		.popup ul li a .tab-icon svg, .form__grid__cels li a .tab-icon svg{
			width: 40px;
			height: auto;
		}
		
		
		.popup ul li a .tab-icon, .form__grid__cels li a .tab-icon {
			flex-shrink: 0;
			margin-right: 1.2rem;
		}
		
		
		.semester__tooltip:focus{
			font-weight: 600;
		}
		
		.tippy-box[data-theme~='module'] {
		  background-color: transparent;
		  color: #111;
		  border-radius: 0;
		 width: 700px;
		 padding: 5rem;
		 
		   filter: drop-shadow(-1px 6px 3px rgba(0, 0, 0, 0.2));
		 font-size: 1.6rem;
		}
		
		.module__headline{
			font-size: 1.8rem;
			font-weight: 600;
			margin-bottom: 2rem;
		}
		
		.module__meta{
			margin-top: 3rem;
			display: grid;
			grid-template-columns: 1fr 1fr;
			
		}
		
		.module__meta .credits{
			text-align: right;
		}
		
		.tippy-box[data-theme~='module']:before, .tippy-box[data-theme~='module']:after {
			content: "";
			position: absolute;
			z-index: -1;
			top: 0;
			left: 0;
			right: 0;
			bottom: 0;
			clip-path: polygon(0 5%,100% 0,96% 100%,3% 100%);
			transition: 1s all;
			background: #efefef;	
		}
		
		.page-id-78117 section{
			position: relative;
			z-index: 99;
		}
		
		.medium .only-content {
			max-width: 80%;
			margin: 0 auto;
		}
		
		@media(max-width: 600px) {
			
		
		  .disable-aos-mobile [data-aos],
		  .disable-aos-mobile[data-aos] {
		 /*CSS transitions*/
				opacity: 1 !important;
				-o-transition-property: none !important;
				-moz-transition-property: none !important;
				-ms-transition-property: none !important;
				-webkit-transition-property: none !important;
				transition-property: none !important;
				/*CSS transforms*/
				-o-transform: none !important;
				-moz-transform: none !important;
				-ms-transform: none !important;
				-webkit-transform: none !important;
				transform: none !important;
				/*CSS animations*/
				-webkit-animation: none !important;
				-moz-animation: none !important;
				-o-animation: none !important;
				-ms-animation: none !important;
				animation: none !important;
		  }
		}
		
		.video__testimonial{
			position: relative;
		}
		.video__testimonial:before,
		.video__testimonial:after {
		   content:"";
		   position:absolute;
		   z-index:-1;
		   top:0;
		   left:0;
		   right:0;
		   bottom:0;
		   clip-path: polygon(0 60%, 100% 0, 100% 47%, 0 83%);
		   transition:1s all;
		   background: var(--primary-color);
		}
		
		.video__testimonial__grid{
			width: 900px;
			margin: 0 auto;
			display: grid;
			grid-template-columns: 1fr 2fr;
			grid-gap: 5rem;
			align-items: end;
		}
		.video__testimonial__grid .name{
			font-size: 2.2rem;
			font-weight: 700;
			margin-bottom: 5rem;
		}
		
		.video__testimonial__grid .video video{
			width: 100%;
			height: 100%;
			border-radius: 50%;
		}
		.video__testimonial__grid .video{
			width: 400px;
			height: 400px;
			border-radius: 50%;
			position: relative;
		}
		
		.video__testimonial__grid .video .play{
			width: 80px;
			height: 80px;
			position: absolute;
			left: 50%;
			top: 50%;
			margin-top: -40px;
			margin-left: -40px;
			cursor: pointer;
		}
		.video__testimonial__grid .video .play.playing{
			display: none;
		}
		
		.video__testimonial__grid .video .play svg{
			width: 80px;
			height: auto;
		}
		
		.campus .button.primary{
			
			background: #4cca47;
			color: #111
		}
		.content__gallery{
			display: flex;
			flex-wrap: wrap
		}
		.grid__2fr p a{
			color: var(--primary-color);
			text-decoration: none;
		}
		.bubbles{
			display: flex;
			flex-wrap: wrap;
			gap: 2rem;
		}
		
		.bubbles a{
			background: var(--white-color);
			color: var(--primary-color);
			padding: 1.2rem 2rem;
			display: inline-block;
			text-decoration: none;
			outline: none;
			border: none;
			cursor: pointer;
			font-size: 1.6rem;
			border-radius: 25px;
			box-shadow: 0px 3px 6px rgb(0 0 0/16%);
		}
		
		@media(max-width: 600px){
				
			.bubbles a{
				padding: 1.2rem 2rem;
				font-size: 1.4rem;
			}
			
		}
		
		.bubbles a:hover{
			
			color: var(--white-color);
			background: var(--primary-color);
		}
		
		.grid__2fr h3{
			font-weight: 400;
		}
		.content__gallery figure{
			margin: 0;
			width: 25%;
			padding: 0;
		}
		@media(max-width: 600px){
			
			.content__gallery figure{
				width: 50%
			}
			form .grid{
				width: 100%;
				margin-left: 0;
			}
		}
		
		.content__gallery figure img{
			display: block;
			height: auto;
			width: 100%;
		}
		
		
		
		.campus .agree a{
			color: #4cca47;
		}
		
		.pfh .button.primary{
			
			background: #004082;
		}
		
		.pfh .agree a{
			color: #004082;
		}
		
		.page-id-87432 #stage #stage__grid #stage__caption{
			background: #2FC1FF;
			color: #111
		}
		.page-id-87432 .button.primary, 
		.page-id-87432 .button.default,
		.page-id-87432 #stage #stage__grid #stage__media #stage__media__before:before, 
		.page-id-87432 #stage #stage__grid #stage__media #stage__media__before:after{
			background: #2FC1FF;
			color: #111
		}
	
	
	.page-id-87432 .threeColInfo h3{
		margin-bottom: 1rem;
	}
	
	
	
	.preisoptionen{
		margin-top: 4rem;
		margin-bottom: 4rem;
	}
	
	.preis-grid {
	  display: grid;
	  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
	  gap: 20px;
	}
	
	.preis-box {
	  background: #f0f0f0;
	  color: #fff;
	  padding: 1.5rem;
	  box-shadow: 0 4px 10px rgba(0,0,0,0.05);
	}
	
	.preis-box h4 {
	  margin-top: 0;
	  font-size: 1.6rem;
	  margin-bottom: 1rem;
	}
	
	.fakten, .zusatz {
	  display: grid;
	  grid-template-columns: 1fr;
	  gap: 0.5rem;
	  margin-top: 1rem;
	  padding-top: 1rem;
	  font-size: 1.6rem;
	  border-top: 1px dotted #fff;
	}
	.fakten div, .zusatz div{
		display: flex;
		gap: 2rem;
	}
	
	.fakten div span, .zusatz div span{
		min-width: 100px;
	}
	.zusatz strong {
	  display: block;
	}
	
	/* Farben */
	.hellgruen { background-color: #4cca47; }
	.mittelgruen { background-color: #4cca47; }
	.grau { background-color: #4cca47; }
	.petrol { background-color: #4cca47; }
	
	@media (max-width: 600px) {
	  .preis-box {
		text-align: left;
	  }
	}
	.semester-toggle {
	  -webkit-tap-highlight-color: transparent;
	}
	.semester-grid {
	  
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	  gap: 10px;
	  margin: 6rem 0 2rem 0;
	}
	
	.semester {
	}
	
	.semester-headline {
	  margin-top: 3rem;
	  font-size: 1.4rem;
	  margin-bottom: 1.2rem; text-align: center
	}
	.module .line {
	  display: block;
	  line-height: 1.2;
	  margin-bottom: 8px;
	}
	.module {
	  padding: 0.8rem;
	  margin-bottom: 0.5rem;
	  text-align: center;
	  font-size: 1.2rem;
	  
	   
		 display: flex;
		 align-items: center;
		 flex-direction: column;
		 justify-content: center;
	}
	
	/* Farben */
	.bg-1 { background-color: #ffffff; }
	.bg-2 { background-color: #dddddd; }
	.bg-3 { background-color: #4cca47; color: #111 }
	
	.page-id-87744 .bg-3{
		background-color: #ccff40; 
	}
	.page-id-87636 .bg-3,
	.page-id-87639 .bg-3,
	.page-id-87642 .bg-3,
	.page-id-87645 .bg-3,
	.page-id-87648 .bg-3{
		background-color: 	#9d9d9c; 
	}

	/* Zeilenhöhe (optional visuell darstellen) */
	.rows-2 { height: 221px; }
	.rows-1 { height: 100px; }
	.rows-2_5 { height: 283px; }
	
	@media (max-width: 1100px) {
	  .semester-grid {
	  
	  grid-template-columns: repeat(3, 1fr);
	  }
	}
	
	@media (max-width: 800px) {
	  .semester-grid {
	  
	  grid-template-columns: repeat(2, 1fr);
	  }
	}@media (max-width: 600px) {
	  .semester-grid {
	  
	  grid-template-columns: 1fr;
	  }
	  
	  .rows-2 { height: auto; }
	  .rows-1 { height: auto; }
	  .rows-2_5 { height: auto; }
	}
	
	.is__module.medium .only-content{
	  max-width: 100%
	}
	
	
	
	.icons.is_fact .icon__heading{
		flex-direction: column
	}
	
	.icons.is_fact .icon__heading .icon__holder{
		margin-right: 0;
		margin-bottom: 2rem;
	}
	
	.is_fact .icon__heading__text{
		color: #111; font-size: 1.6rem;
	}
	
	.icons.is_fact .icon{
		box-shadow: none;
		background: #efefef;
	}
	
	/* Nur auf Mobile */
	@media (max-width: 768px) {
	  .semester-modules {
		display: none;
	  }
	
	  .semester.open .semester-modules {
		display: block;
	  }
	
	  .semester-toggle {
		width: 100%;
		text-align: left;
		background: #fff;
		border: none;
		font-size: 1.2em;
		padding: 0.5em 1em;
		display: flex;
		justify-content: space-between;
		align-items: center;
		cursor: pointer;
	  }
	
	  .semester .arrow {
		transition: transform 0.3s ease;
	  }
	
	  .semester.open .arrow {
		transform: rotate(180deg);
	  }
	}
	
	/* Desktop: sieht aus wie normales H2/Div */
	@media (min-width: 769px) {
	  .semester-toggle {
		all: unset; /* entfernt alle button styles */
		font-size: 1.6rem;
		font-weight: bold;
		margin-bottom: 0.5em;
		display: block;
		cursor: default;
	  }
	
	  .semester .arrow {
		display: none;
	  }
	
	  .semester-modules {
		display: block !important;
	  }
	}
	
	