/*
Theme Name: mkp 2026
Version: 1.0
Author: Ewald Natter
Author URI: http://www.freelenz.at
Description: WordPress Theme für merz kley partner
*/

::selection {
  background: #000;
  color: #fff;
  }
  
::-moz-selection {
  background: #333;
  color: #fff;
  }  

* {
	border: none;
	margin: 0;
	padding: 0;
	outline: none;
	box-sizing: border-box;
	-webkit-appearance: none;
  
  --header-height: 125px;
  --wp--preset--font-size--large: 22px;
  }
  
HTML {
  height: 100%;
  }  
  
BODY {
  height: 100%;
  font-family: 'Helvetica Neue';
  font-size: 16px;
  line-height: 1.25;
  letter-spacing: 0.03em;
  text-rendering: optimizeLegibility !important;
  -webkit-font-smoothing: antialiased !important;
  font-smoothing: antialiased !important;
  overflow-y: scroll;
  }
  
UL, LI {
  list-style-type: none;
  }  
  
A {
  transition: 0.2s;
  color: #1b1b1b;
  
  }  
  
P {
  margin-bottom: 1.5em;
  }
  
MAIN P:last-child {
  margin-bottom: 0em;
  }      
  
P A,
A.active,
.project A,
.email A,
.phone A {
  text-decoration: underline;
  text-underline-offset: 2px;
  }
  
IMG {
  vertical-align: baseline;
  }  
  
INPUT {
  font: inherit;
  }  
  
INPUT::-webkit-input-placeholder {
  color: #999;
  }

INPUT::-moz-placeholder {  
  color: #999;  
  }

INPUT:-ms-input-placeholder {  
  color: #999;  
  }
  
.compensate-for-scrollbar {
  margin-right: 0;
  }  
  
/* LAYOUT
------------------------------------------------------------------------- */  
  
#page {
  height: auto !important;
  margin-bottom: -425px;
  min-height: 100%;   
  }  
  
#push {
  height: 425px;
  }  
  
BODY.grid,
BODY.grid HEADER,
BODY.grid FOOTER {
  background: #fff url('assets/images/grid.png') repeat-y center top;
  background-size: 1180px auto;
  }  
  
BODY.grid FOOTER {
  background-color: #E8E8E8 !important;
  }  
  
MAIN > .wp-block-group:last-child {
  margin-bottom: 0;
  }  
  
/* LAYOUT
---------------------------------------------------------------------------------------------- */  

MAIN {
  padding-top: var(--header-height);
  padding-bottom: 250px;
  }
   
.columns {
  margin: 0 -10px;
  overflow: hidden;
  }  

.columns .column {
  float: left;
  padding: 0 10px;
  }  

.columns.c2 .column {
  width: 50%;
  }  
  
.columns.c3 .column {
  width: 33.3%;
  }  
  
.columns.c4 .column {
  width: 25%;
  }    
  
.columnize {
  column-count: 3;
  column-gap: 50px;
  }  
  
.nada {
  padding: 20px 10px;
  color: #999;
  }
  
.city {
  font-weight: 400;     
  opacity: 0.5;
  }
     
  
/* GRID
---------------------------------------------------------------------------------------------- */

.item {
  margin-bottom: 20px;
  display: block;
  text-decoration: none;
  }

.item FIGURE {
  padding-bottom: 70.8%;
  background: #eee;
  position: relative;
  margin-bottom: 0.75em;
  }  
  
.item FIGURE IMG {  
  position: absolute;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
  }
  
.item.eyecatcher .image {
  background: #009ca1;
  }  
  
.item.eyecatcher .text {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  color: #fff;
  padding: 20px;
  }
  
.item.eyecatcher .text H3 {    
  font-size: 50px;
  line-height: 0.9;
  margin: 0;
  padding: 0;
  margin-bottom: 20px;
  letter-spacing: 0.03em;
  }
  
.item.eyecatcher .text P {    
  font-size: 20px;
  line-height: 1.2;
  font-weight: bold;
  letter-spacing: 0.03em;
  }  
  
.item .caption {
  font-size: 16px;
  height: 4em;
  overflow: hidden;
  font-weight: 400;
  }  
  
.item .caption .title STRONG {  
  font-weight: 700;
  }
  
/* HEADER
---------------------------------------------------------------------------------------------- */

HEADER {
  background: rgba(255,255,255,0.97);
  position: fixed;
  top: 0;
  width: 100vw;
  height: var(--header-height);
  z-index: 3;
  border-bottom: 1px solid #000;
  }

HEADER #logo {
  padding: 25px 0 25px 0;
  display: block;
  width: 200px;
  overflow: hidden;
  }  

HEADER #logo IMG {
  width: 100px;
  height: auto;
  float: left;
  }

HEADER NAV.main {
  position: absolute;
  top: 0;
  left: 250px;
  right: 0;
  }
  
HEADER NAV.main UL {
  width: 100%;
  }   
  
HEADER NAV.main UL LI {
  float: left;
  position: relative;
  } 
  
HEADER NAV.main UL LI A {
  opacity: 0.5;
  font-size: 16px;
  font-weight: 500;
  text-decoration: none;
  padding: 25px 16px 25px 16px;
  display: block;
  } 
  
HEADER NAV.main UL LI A:hover,
HEADER NAV.main UL LI.current-menu-item A,
HEADER NAV.main UL LI.current-page-ancestor A {
  opacity: 1;
  } 
  
HEADER NAV.main UL UL {
  opacity: 0;
  transition: 0.2s;
  position: absolute;
  top: 60px;
  left: 0;
  visibility: hidden;
  padding-bottom: 20px;
  }
  
HEADER NAV.main UL LI:hover UL {
  opacity: 1;
  visibility: visible;
  }  
  
HEADER NAV.main UL UL LI A {  
  white-space: nowrap;
  padding-top: 1px;
  padding-bottom: 1px;
  }
  
HEADER NAV #search I {
  display: inline-block;
  opacity: 0.5;
  font-size: 16px;
  line-height: 22px;
  transition: 0.2s;
  cursor: pointer;
  padding: 25px 16px 10px 16px;
  }  
  
HEADER NAV #search:hover I {
  opacity: 1;
  } 
  
HEADER NAV #search FORM {
  position: absolute;
  top: 25px;
  right: 30px;
  transition: 0.2s;
  opacity: 0;
  transform: translateX(-50px);
  }
  
HEADER NAV #search FORM.show {
  transform: translateX(0px);
  opacity: 1;
  }  
  
HEADER NAV #search FORM INPUT { 
  font-family: inherit;
  font-weight: 500;
  letter-spacing: 0.03em;
  border-bottom: 1px solid #000;
  padding-bottom: 5px;
  }
  
HEADER NAV.social {
  position: absolute;
  right: 25px;
  top: 28px;
  transition: 0.2s;
  }  
  
HEADER NAV.social.hidden {
  opacity: 0;
  transform: translateX(50px);
  }  
  
/* SOCIAL ICONS
---------------------------------------------------------------------------------------------- */   

NAV.social UL LI {
  float: left;
  }

NAV.social LI A {
  font-size: 0;
  display: block;
  text-decoration: none;
  padding: 0;
  float: left;
  }
  
NAV.social LI A:before {
  font-family: icomoon;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  font-size: 23px;
  padding: 0 3px 0 2px;
  float: left;
  display: inline-block;
  }  
  
NAV.social LI A:hover {
  opacity: 0.5;
  }

NAV.social LI.linkedin A:before {
  content: "\e902";
  }
  
NAV.social LI.youtube A:before {
  content: "\e900";
  }  
  
NAV.social LI.instagram A:before {
  content: "\e901";
  }  
  
/* HEADLINES
---------------------------------------------------------------------------------------------- */    

H2 {
  font-size: 26px;
  line-height: 1.2;
  margin-bottom: 65px;
  }
  
H2 SPAN {
  font-weight: normal;
  }  
  
H3 {
  font-size: 26px;
  line-height: 1.2;
  margin-bottom: 65px;
  }
  
H4 {
  font-size: inherit;
  font-weight: bold;
  }  
  
/* HOME SLIDER
---------------------------------------------------------------------------------------------- */    

MAIN > .wp-block-video {
  background: #E8E8E8 url('assets/images/loading.svg') no-repeat center center;
  background-size: 24px auto;
  aspect-ratio: 1280 / 720;
  }

.wp-block-lazyblock-intro FIGURE,  
.wp-block-lazyblock-intro IMG,
MAIN > .wp-block-video,
MAIN > .wp-block-video VIDEO {
  max-height: calc(100vh - var(--header-height));
  width: 100%;
  height: 100%;
  }
  
.wp-block-lazyblock-intro IMG,
.wp-block-video VIDEO {
  object-fit: cover;
  object-position: center center;
  }  
  
/* AKTUELL
---------------------------------------------------------------------------------------------- */    
  
.page-template-aktuell MAIN {
  padding-top: 260px;
  }
  
.page-template-aktuell H2 {
  font-size: 40px;
  font-weight: 500;
  }  
  
.page-template-aktuell H3 {
  margin-bottom: 40px;
  max-width: 50%;
  } 
  
.page-template-aktuell ARTICLE {
  margin-bottom: 100px;
  }
  
.page-template-aktuell ARTICLE .date {
  font-weight: 700;
  border-bottom: 1px solid #000;
  padding-bottom: 10px;
  margin-bottom: 14px;
  }
  
.page-template-aktuell ARTICLE .content {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  }
  
.page-template-aktuell ARTICLE .text {
  width: 510px;
  } 
  
.page-template-aktuell ARTICLE .text P { 
  margin-bottom: 0;
  }
  
  
.page-template-aktuell ARTICLE FIGURE IMG {
  width: 550px;
  } 
  
.page-template-aktuell ARTICLE#post-competitionline-ranking-2024 FIGURE IMG { 
  max-height: 320px;
  object-fit: contain;
  object-position: center center;
  }
  
.page-template-aktuell ARTICLE:nth-child(even) .content FIGURE {
  order: 1;
  }
  
.page-template-aktuell ARTICLE:nth-child(even) .content FIGURE IMG {  
  max-width: 480px;
  height: auto;
  }

.page-template-aktuell ARTICLE:nth-child(even) .content .text {
  order: 2;
  width: 550px;
  }
  
.page-template-aktuell #archive .year {
  font-size: 40px;
  font-weight: 500;
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
  margin-top: -1px;
  text-decoration: none;
  padding: 15px 0;
  }
  
.page-template-aktuell #archive .year I {  
  font-size: 38px;
  }

/* PAGE
---------------------------------------------------------------------------------------------- */    
  
.page-template-default H3.title {
  padding-bottom: 2em;
  }   
  
/* PROJEKTE ÜBERSICHT
---------------------------------------------------------------------------------------------- */     
  
.page-template-archive,
.single-project {
  padding-top: var(--header-height);
  }
  
.page-template-archive MAIN,
.single-project MAIN {
  padding-top: 120px;
  }  
  
#subnav {
  padding: 10px 0;
  font-weight: 500;
  } 
  
#subnav #status {
  display: flex;
  gap: 40px;
  }
  
#subnav #status A {
  text-decoration: none;
  }  
  
#subnav #status A.active {
  text-decoration: underline;
  }    
  
#subnav .container {  
  display: flex;
  justify-content: space-between;
  }
  
#subnav #filter UL {
  display: none;
  }  
  
#subnav NAV UL {
  margin-left: -16px;
  }  
  
#subnav NAV UL LI {
  float: left;
  }  
  
#subnav NAV UL LI A {
  display: block;
  padding: 10px 16px;
  text-decoration: none;
  }  
  
#subnav NAV UL LI A:hover {
  opacity: 0.5;
  }   
  
/* PROJEKT DETAIL
---------------------------------------------------------------------------------------------- */      

.single-project MAIN {
  padding-top: 80px;
  }
  
.single-project H2 {
  margin-bottom: 34px;
  } 
  
.single-project .columns {
  margin: 0;
  margin-bottom: 100px;
  }
  
.single-project .columns .images {
  width: 550px;
  padding: 0;
  } 
  
.single-project .images A {
  display: block;
  float: left;
  overflow: hidden;
  }   
  
.single-project .images IMG {
  max-width: 100%;
  max-height: 540px;
  width: auto;
  height: auto;
  display: block;
  }  
  
.single-project .images FIGURE {
  position: relative;
  display: block;
  margin-bottom: 20px;
  overflow: hidden;
  }  
  
.single-project .images FIGCAPTION {
  position: absolute;
  bottom: 0;
  left: 0;
  background: rgba(0,0,0,0.75);
  color: #fff;
  font-size: 11px;
  letter-spacing: 0;
  line-height: 1.1;
  padding: 4px 7px 5px 7px;
  opacity: 0;
  transition: 0.2s;
  }
  
.single-project .images FIGURE:hover FIGCAPTION {    
  opacity: 1;
  }
  
.single-project .columns .column.text {
  padding: 0;
  float: right;
  width: 510px;
  }  
  
.single-project .description {
  font-weight: 500;
  padding: 0;
  margin-bottom: 50px;
  line-height: 1.375;
  } 
  
.single-project .description.empty {
  padding: 0;
  border-bottom: none;
  margin-bottom: 0.5em;
  }   
  
.single-project .metadata {
  border-top: 1px solid #000;
  padding-top: 10px;
  font-weight: 500;
  }  
  
.single-project .metadata TABLE {
  width: 100%;
  margin-top: 50px;
  }   
  
.single-project .metadata TABLE TD {
  line-height: 1.4;
  } 
  
.single-project TABLE TD:first-child {
  padding-right: 35px;
  width: 125px;
  vertical-align: top;
  }
  
.single-project .metadata TABLE#links {
  border-top: 1px solid #000;
  } 
  
.single-project .metadata TABLE#links TR:first-child TD {       
  padding-top: 10px;
  }
  
.single-project .metadata TABLE#downloads {
  border-top: 1px solid #000;
  } 
  
.single-project .metadata TABLE#downloads TR:first-child TD,
.single-project .metadata TABLE#links TR:first-child TD {  
  padding-top: 10px;
  padding-bottom: 50px;
  }
  
.single-project .metadata #downloads TD:first-child {
  padding-right: 0;
  }  
  
.single-project .metadata #downloads .files {
  vertical-align: top;
  column-count: 2;
  } 
  
.single-project .metadata #downloads .files .file {
  break-inside: avoid;
  }   
  
.single-project .metadata #downloads .files .file A {  
  text-decoration: none !important;
  }
  
.single-project .metadata #downloads .title {
  display: block;
  line-height: 1.2;
  } 
  
.single-project .metadata #downloads .row {   
  display: table;
  }

.single-project .metadata #downloads .col {   
  display: table-cell;
  padding-top: 0;
  vertical-align: top;
  }  
  
.single-project .metadata #downloads .info {
  padding-left: 15px;
  } 
  
.single-project .metadata #downloads A .filesize {
  display: block;
  color: #999;
  font-size: 13px;
  margin-top: 1px;
  } 
  
.single-project .metadata #downloads .img {    
  display: inline-block;
  width: 50px;
  height: 70px;
  border: 1px solid #999999;
  margin: 3px 0;
  background-size: cover !important;
  }
  
.single-project .metadata #downloads TR:last-child TD {
  border: none;
  }
  
.single-project .wp-block-button A:before {
  transform: rotate(180deg);
  }
  
/* FANCYBOX Adjustments
---------------------------------------------------------------------------------------------- */  
  
.fancybox-button--zoom {
  display: none !important;
  }  
  
.fancybox-button--play {
  display: none !important;
  } 
  
.fancybox-button--thumbs {
  display: none !important;
  }     
  
/* LISTINGS (Auszeichnungen und Wettbewerbe)
---------------------------------------------------------------------------------------------- */    

.intro {
  font-size: var(--wp--preset--font-size--large);
  line-height: 1.27;
  font-weight: 500;
  margin-bottom: 65px;
  max-width: 500px;
  }

.listing .items {
  position: relative;
  }
  
.listing .item {
  break-inside: avoid;
  padding: 0em 0 1em 0;
  margin-bottom: 0;
  font-size: 16px;
  }   
  
.listing .competition {
  break-inside: avoid;
  min-height: 115px;
  }

.listing .competition .item {
  break-inside: avoid;
  min-height: 115px;
  }    
  
.listing .year {
  border-top: 1px solid #000;
  margin-top: -1px;
  padding-top: 15px;
  margin-bottom: 50px;
  }   
  
.listing .year:last-child {  
  margin-bottom: 0;
  }
  
/* WETTBEWERBE
---------------------------------------------------------------------------------------------- */     

.page-template-wettbewerbe MAIN {
  padding-top: 275px;
  }
  
/* AUSZEICHNUNGEN
---------------------------------------------------------------------------------------------- */     

.page-template-auszeichnungen MAIN {
  padding-top: 275px;
  }  
  
.page-template-auszeichnungen .headline {
  margin-top: 1em;
  } 
  
.page-template-auszeichnungen .project {
  margin-bottom: 1em;
  }   
  
.page-template-auszeichnungen .award.item {
  border-top: none;
  border-bottom: none;
  }  
  
.page-template-auszeichnungen .project A:hover {
  color: #999;
  }    
  
/* BÜRO
---------------------------------------------------------------------------------------------- */     

.page-template-buero MAIN {
  padding-top: var(--header-height);
  padding-bottom: 100px;
  }  
  
.page-template-buero #team H3 {   
  border-top: 1px solid #000;
  padding-top: 18px;
  margin-top: 90px;
  }

.page-template-buero #team FIGURE {
  background: #eee;
  margin-bottom: 1em;
  }
  
.page-template-buero #team FIGURE IMG {  
  aspect-ratio: 3 / 2;
  object-fit: cover;
  object-position: center center;
  max-width: 100%;
  float: left;
  }
  
.page-template-buero #team .person {
  margin-bottom: 50px;
  font-size: 16px;
  font-weight: 500;
  }
  
.page-template-buero .wp-block-lazyblock-we-are-hiring {
  margin-top: 40px;
  }
  
/* SINGLE TEAM
----------------------------------------------------------------------- */    
  
.single-team MAIN {
  padding-top: 230px;
  }

/* NATIVE VIDEO CONTROLS
----------------------------------------------------------------------- */  

.mejs-controls .mejs-time-rail .mejs-time-current {
  background: #009ca1 !important;
  }
  
/* STÖRER
---------------------------------------------------------------------------------------------- */    
  
#stoerer {
  position: absolute;
  z-index: 1;
  width: 150px;
  height: 150px;
  border-radius: 150px;
  display: flex;
  justify-content: center;
  align-items: center;
  letter-spacing: 0.05em;
  font-size: 28px;
  line-height: 1.1;
  font-weight: bold;
  text-align: center;
  transform: rotate(-9deg);
  }  
  
#stoerer.blue {  
  background: #00acb1;
  color: #fff;
  } 
  
#stoerer.grey {  
  background: #dadada;
  color: #039ca2;
  }     
  
#stoerer.header {
  top: 20px;
  left: 300px;
  }  
  
#stoerer.upload {
  bottom: 500px;
  left: 120px;
  font-weight: normal;
  font-size: 20px;
  }   
  
/* GRAVITY FORMS
----------------------------------------------------------------------- */        

.page-template-bewerbungsformular MAIN {
  padding-bottom: 0;
  }
  
.page-template-bewerbungsformular HEADER .content {
  border-color: #009ca1;
  }

.gform_wrapper {
  background: #E8E8E8;
  padding: 100px 0;
  margin-bottom: 0;
  }
  
.gform_wrapper FORM {
  max-width: 1180px;
  padding: 0 30px;
  margin: 0 auto;
  position: relative;
  }  
  
.gform_wrapper ul.gform_fields li.gfield {
  padding-right: 0;
  margin-right: 0;
  }  
  
.gform_wrapper ul.gform_fields li.gsection {
  margin-bottom: 25px !important;
  }  
  
.gform_wrapper .gfield_required {
  color: #f59005;
  margin-right: -10px;
  }
  
.validation_message {
  max-width: 50%;
  margin-left: 50% !important;
  }
  
.gfield_validation_message {
  color: #f59005 !important;
  }
  
.gform_legacy_markup_wrapper .gfield_error .gfield_label {
  color: #000 !important;
  }  
  
.gform_legacy_markup_wrapper li.gfield.gfield_error, .gform_legacy_markup_wrapper li.gfield.gfield_error.gfield_contains_required.gfield_creditcard_warning {
  background: none;
  }  
  
.gform_wrapper ul.gform_fields:not(.top_label) .gfield_label {
  padding-top: 20px;
  text-align: right;
  width: 50%;
  padding-right: 40px;
  }
  
.gform_wrapper .left_label input.small,
input.small, .gform_wrapper .left_label select.small {
  width: 25%;
  }    
  
.gform_wrapper .left_label input.medium,
.ginput_container_date INPUT {
  width: 50%;
  }  
  
input.large, .gform_wrapper .left_label select.large {
  width: 100%;
  }  
  
.gform_legacy_markup_wrapper li.gfield.field_description_below+li.gsection {
  margin-top: 48px !important;
  }  
  
.gform_wrapper ul.gform_fields li.gsection {
  border-bottom: none;
  border-top: 1px solid #000;
  padding-top: 0 !important;
  
  } 
  
.gform_wrapper ul.gform_fields li.gsection H2 {
  padding-top: 15px !important;
  font-size: 26px;
  }
  
.gform_wrapper .gform-body INPUT,
.gform_wrapper SELECT {
  border: 2px solid #000 !important;
  background: none;
  padding: 18px 32px !important;
  width: 100% !important;
  max-width: 100% !important;
  margin-bottom: 0px;
  font-size: 16px;
  font-family: inherit;
  font-weight: 700;
  border-radius: 0;
  }  
  
.gform_button_select_files {
  padding: 10px 20px !important;
  font-weight: 500 !important;
  border-radius: 30px;
  background: #dadada;
  cursor: pointer;
  transition: 0.2s;
  }
  
.gform_button_select_files:hover {
  background: rgba(0,0,0,1);
  color: #fff;
  }

LEGEND {
  width: 100% !important;
  }  
  
.ginput_container_date {
  position: relative;
  }  
  
body .gform_legacy_markup_wrapper img.ui-datepicker-trigger {
  position: absolute;
  top: 18px;
  width: 20px !important;
  height: auto !important;
  right: 20px;
  }
  
.gfield_html {
  width: 30%;
  float: left;
  margin-left: 0 !important;
  }  
  
.gform_wrapper form ul.gform_fields:not(.top_label) li.gfield_html_formatted {
  margin-top: 7px;
  margin-left:  0 !important;
  width: 200px;
  color: #999;
  position: absolute;
  }  
  
.ginput_container,
.gform_wrapper .gform_footer:not(.top_label) {
  width: 50% !important;
  margin-left: 50% !important;
  }  
 
.itsg_single_ajax {
  width: 100% !important;
  min-width: 100% !important;
  }  
  
.gform_wrapper ul.gform_fields:not(.top_label) .gform_fileupload_multifile .gform_drop_area {
  width: 100%;
  margin-left: 0;
  }
  
html:not([dir=rtl]) .gform_wrapper ul.gform_fields:not(.top_label) .gfield_description.gform_fileupload_rules {
  display: block;
  color: #999;
  font-size: 13px !important;
  margin-top: -10px !important;
  margin-bottom: 25px !important;
  margin-left: 0 !important;
  padding: 0;
  width: 100% !important;
  }
  
.gform_wrapper .field_description_below .gfield_description {
  padding-top: 7px !important;
  padding-bottom: 5px;
  margin-left: 50% !important;
  width: 50% !important;
  }  
  
.gform_wrapper .gform_fileupload_multifile .gform_drop_area {
  padding: 30px 20px 35px 20px;
  }    
  
.ginput_container_fileupload .gfield_validation_message {
  width: auto !important;
  margin-top: -10px !important;
  color: #f59005 !important;
  font-weight: 500 !important;
  }
  
.gform_legacy_markup_wrapper span.gform_drop_instructions {
  margin-bottom: 15px;
  }  
  
.gform_wrapper div.validation_error {
  display: none;
  }
  
.gform_wrapper li.gfield.gfield_error, 
.gform_wrapper li.gfield.gfield_error.gfield_contains_required.gfield_creditcard_warning {
  border: none !important;
  }  
  
.gform_wrapper.gform_validation_error .gform_body ul li.gfield.gfield_error:not(.gf_left_half):not(.gf_right_half) {
  max-width: 100% !important;
  }  
  
.ginput_preview {
  margin-left: 50%;
  font-weight: normal;
  font-size: 13px;
  letter-spacing: 0;
  }  
  
.ginput_preview IMG {
  margin-right: 5px;
  width: 16px;
  height: auto;
  }  
  
.ginput_preview STRONG {
  font-weight: normal;
  }  
  
.gfield_fileupload_filesize {
  color: #999 !important;
  padding: 20px;
  text-transform: uppercase;
  }  
  
.gfield_fileupload_progress {
  float: right;
  }  

.gform_legacy_markup_wrapper .gform_delete {  
  content: url("assets/images/icon-close.svg");  
  width: 12px;
  margin-top: -2px;
  }
  
.gform_button {
  height: 63px;
  background: #000 url('assets/images/arrow-right-thick-white.svg') no-repeat 30px center;
  background-size: auto 16px;
  color: #fff;
  padding: 0 32px 0 60px !important;
  font-size: 20px !important;
  font-weight: 700;
  border-radius: 100px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  margin-top: 20px !important;
  cursor: pointer;
  transition: 0.2s;
  }  
  
.gform_button:hover {
  background-color: #444;
  }  
  
/* DATEPICKER STYLING
---------------------------------------------------------------------------------- */ 

.ui-datepicker {
  background-color: #fff;
  box-shadow: 0 1px 10px 0 rgba(0, 0, 0, 0.1) !important;
  position: relative;
  border: 1px solid #e3e3e3;
  border-radius: 3px;
  padding: 20px;
  width: 350px;
  display: none;
  margin-top: 0;
  }

.ui-datepicker:before {
  content: '';
  position: absolute;
  display: block;
  left: 30px;  
  width: 0;
  height: 0;
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-bottom: 10px solid #ddd;
  top: -11px;
  display: none;
  }

.ui-datepicker:after {
  content: '';
  position: absolute;
  left: 30px;
  display: block;
  width: 0;
  height: 0;
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-bottom: 10px solid white;
  top: -10px;
  display: none;
  }
  
.ui-datepicker td a, .ui-datepicker td span {
  width: 35px !important;
  height: 35px !important;
  line-height: 34px;
  }  

.ui-datepicker-group {
  float: left !important;
  padding: 20px 20px 20px 0;
  }
  
table.ui-datepicker-calendar {
  border: none;
  }  

.ui-datepicker-header {
  background: none !important;
  text-shadow: none !important;
  color: #333 !important;
  border: 0 !important;
  margin-bottom: 6px !important;
  }

.ui-datepicker-title {
  font-size: 15px !important;
  }

.ui-datepicker-year {
  font-weight: normal !important;
  }

.ui-datepicker thead {
  border: 0 !important;
  background: none !important;
  }

.ui-datepicker th {
  font-size: 14px !important;
  font-weight: bold;
  color: #ccc !important;
  border: none;
  }

.ui-datepicker tbody tr {
  border: 0 !important;
  }

.ui-datepicker tbody td {
  background-color: transparent;
  border: 0 !important;
  text-align: center;
  }

.ui-datepicker-prev {
  position: absolute;
  left: 25px;
  top: 25px;
  line-height: 30px !important;
  background: url('assets/images/arrow-calendar-left.svg') no-repeat center center !important;
  background-size: 24px auto !important;
  opacity: 0.3;
  transition: 0.2s;
  }

.ui-icon.ui-icon-circle-triangle-w {
  display: none;
  }

.ui-datepicker-next {
  position: absolute;
  right: 25px;
  top: 25px;
  line-height: 30px !important;
  background: url('assets/images/arrow-calendar-right.svg') no-repeat center center !important;
  background-size: 24px auto !important;
  opacity: 0.3;
  }
  
.ui-datepicker-prev:hover,
.ui-datepicker-next:hover {  
  opacity: 1;
  }

.ui-icon-circle-triangle-e {
  display: none;
  }

.ui-state-disabled.ui-datepicker-next:after {
  color: #ccc !important;
  }

.ui-datepicker-calendar .ui-state-default {
  background: none !important;
  font-weight: normal !important;
  font-size: 14px !important;
  text-shadow: none !important;
  box-shadow: none !important;
  -webkit-box-shadow: none !important;
  text-align: center;
  display: inline-block;
  margin: 0 auto;
  }
  
.gform-legacy-datepicker.ui-datepicker td a, 
.gform-legacy-datepicker.ui-datepicker td span  {
  background: none;
  line-height: 35px;
  }

.ui-datepicker-calendar .ui-datepicker-today a {
  font-weight: bold !important;
  color: #000;
  }

.ui-datepicker-calendar .ui-datepicker-current-day a {
  background-color: #009ca1 !important;
  color: #fff !important;
  border: 1px solid #009ca1 !important;
  border-radius: 50px;
  }

.ui-datepicker-calendar .ui-state-hover {
  background-color: #009ca1 !important;
  color: #fff !important;
  border-radius: 50px;
  cursor: pointer;
  }

.ui-datepicker-unselectable.ui-state-disabled {
  background: none !important;
  }

.ui-datepicker-unselectable.ui-state-disabled span {
  background: none !important;
  font-weight: normal !important;
  color: #eee !important;
  border: 1px solid transparent !important;
  }

.ui-datepicker-calendar .ui-datepicker-other-month span {
  color: #ccc !important;
  }

.ui-datepicker-calendar .wrong {
  background-color: #ff0000 !important;
}

div.ui-datepicker-group-first td:not(.ui-datepicker-other-month) ~ td.ui-datepicker-other-month {
  visibility: hidden;
  }

div.ui-datepicker-group-last td {
  visibility: hidden;
  }

div.ui-datepicker-group-last td.ui-datepicker-other-month ~ td:not(.ui-datepicker-other-month),
div.ui-datepicker-group-last td:not(.ui-datepicker-other-month),
div.ui-datepicker-group-last td:not(.ui-datepicker-other-month) ~ td.ui-datepicker-other-month {
  visibility: visible;
  }
  
.ui-datepicker-title select {
  appearance: none;
  -webkit-appearance: none;
  border: none;
  background: none;
  font: 16px Arial !important;
  margin: 5px 2px 20px 2px;
  background: none !important;
  outline: none;
  }  
  
.ui-datepicker-title select.ui-datepicker-month {
  font-weight: bold !important;
  }   
  
/* SUCHE
----------------------------------------------------------------------- */            
  
.search MAIN {
  padding-top: 250px;
  }  
        
/* MEDIATHEK
----------------------------------------------------------------------- */          

.page-template-mediathek MAIN {
  padding-top: 220px;
  }

.page-template-mediathek HEADER #social UL #menu-item-46 A {
  opacity: 1;
  }
  
.page-template-mediathek .videos {  
  margin: 0 -10px;
  overflow: hidden;
  }
  
.page-template-mediathek .video {
  width: 50%;
  float: left;
  padding: 10px;
  } 
  
.page-template-mediathek .video .player {
  position: relative;
  padding-bottom: 66%;
  margin-bottom: 10px;
  }     
  
.page-template-mediathek .video .player IFRAME {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  }  
  
.page-template-mediathek .video .title {
  font-weight: 700;
  line-height: 1.3;
  } 
  
/* BEWERBUNGSFORMULAR
----------------------------------------------------------------------- */   
  
.page-template-bewerbungsformular MAIN {
  padding-top: 275px;
  }
  
/* JOB DETAILSEITE
----------------------------------------------------------------------- */  

.single-job {
  padding-top: var(--header-height);
  }
  
.single-job MAIN {
  padding-top: 120px;
  padding-bottom: 200px;
  }
  
.single-job MAIN {
  padding-top: 100px;
  padding-bottom: 150px;
  }
  
.single-job H1 {
  max-width: 50%;
  }
  
.single-job FIGURE {
  margin-bottom: 80px;
  }  
  
.single-job FIGURE IMG {
  max-width: 100%;
  height: auto;
  aspect-ratio: 1120 / 460;
  object-fit: cover;
  object-position: center center;
  }
  
.single-job .description {
  font-size: 22px;
  font-weight: 500;
  column-count: 2;
  column-gap: 170px;
  }
  
.single-job .description P.empty {  
  display: none;
  }
  
.single-job .description > P > STRONG {  
  font-size: 26px;
  padding-top: 24px;
  border-top: 1px solid #000;
  display: block;
  }
  
.single-job .description UL {
  break-inside: avoid;
  margin-bottom: 50px;
  }
  
.single-job .description UL LI {
  list-style-type: disc;
  margin-left: 1em;
  }
  
.single-job .description TABLE {
  margin-bottom: 30px;
  border-spacing: 0;
  }  
  
.single-job .description TABLE TR {
  break-inside: avoid;
  }    
  
.single-job .description TABLE TD {
  padding: 7px 20px 7px 0;
  vertical-align: top !important;
  border-bottom: 1px solid #000;
  } 
  
.single-job .description TABLE TD:nth-child(2) {   
  font-weight: 400;
  }
  
.single-job .description TABLE TD:last-child {  
  padding-right: 0;
  }
  
.single-job .description TABLE ~ P {
  font-size: 14px;
  font-weight: 400;
  }    
  
.single-job .description P.empty {  
  break-before: avoid;
  }
  
.single-job .description .button-apply {
  margin-top: 20px;
  }
  
/* ANIMATION
----------------------------------------------------------------------- */   
  
  

  
/* ERROR 404
----------------------------------------------------------------------- */   

.error404 .icon {
  width: 122px;
  height: auto;
  margin: 50px 0 30px 0;
  }
  
.error404 MAIN {
  text-align: left;
  padding-top: 200px;
  padding-bottom: 150px;
  }  
  
/* FOOTER
----------------------------------------------------------------------- */   

FOOTER {
  background: #E8E8E8;
  height: 425px;
  padding-top: 10px;
  font-size: 16px;
  line-height: 1.25;
  font-weight: bold;
  }
  
FOOTER .container {
  display: flex;
  justify-content: space-between;
  } 
  
FOOTER .location {
  float: left;
  width: 285px;
  margin-top: 50px;
  }  
  
FOOTER .location .title {
  margin-bottom: 1.2em;
  }  
  
FOOTER .location ADDRESS {
  font-style: normal;
  }
  
FOOTER .location .phone A {
  text-decoration: none;
  }
  
FOOTER .links {  
  min-width: 265px;
  padding-top: 50px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  }
  
FOOTER .icon-edit-page {
  position: absolute;
  right: -20px;
  bottom: -30px;
  opacity: 0.2;
  font-size: 40px;
  transition: 0.2s;
  padding: 20px;
  } 
  
FOOTER .icon-edit-page:hover {   
  opacity: 0.5;
  }
  
/* SEARCH RESULTS
---------------------------------------------------------------------------------------------- */     

BODY.search MAIN {
  padding-top: 225px;
  padding-bottom: 150px;
  }
  
BODY.search .wp-block-heading {
  margin-top: 60px;
  }  
  
BODY.search .result {
  display: flex;
  gap: 110px;
  font-size: 22px;
  font-weight: 500;
  margin-bottom: 50px;
  }
  
BODY.search .result.project .text {
  font-size: 26px;
  }  
  
BODY.search .result.project .more {
  font-size: 16px;
  margin-top: 30px;
  }    
  
BODY.search .result FIGURE IMG {
  width: 360px;
  margin-top: 7px;
  float: left;
  }
  
BODY.search .result FIGURE IMG {
  width: 360px;
  height: auto;
  }  
  
BODY.search .result H3 {
  margin-bottom: 25px;
  } 
  
BODY.search .result .excerpt {
  margin-bottom: 1em;
  max-width: 380px;
  }    
  
BODY.search .nada {
  padding-left: 0;
  }  
  
  
    
  
  
  
    
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
    
    
  
