/*
 Theme Name:   GeneratePress Child
 Theme URI:    https://generatepress.com
 Description:  Default GeneratePress child theme
 Author:       Tom Usborne
 Author URI:   https://tomusborne.com
 Template:     generatepress
 Version:      0.1
*/
/*Base*/
body {
  overflow-x: hidden;
}

a {
  transition: all 0.2s ease-in-out;
}

p:last-child {
  margin-bottom: 0;
}

input:focus,
input:active {
  box-shadow: none;
  outline: none;
  border: 1px solid transparent !important;
  background-color: var(--base) !important;
}

h1 {
  hyphens: auto;
}

ul {
  list-style-type: square;
  margin-left: 20px;
}

ul li::marker {
  color: var(--accent);
}

ul li {
  margin-bottom: 15px;
}

ul li:last-child {
  margin-bottom: 0;
}

.reg-btn,
.general-btn {
  max-width: 160px;
  height: 40px;
  text-align: center;
  padding: 8px 20px !important;
  justify-content: center;
  color: var(--base-3) !important;
}

.add-btn,
.special-btn,
.immob-btn {
  min-width: 230px !important;
}

.reg-btn {
  background-color: var(--contrast) !important;
}

.general-btn {
  background-color: var(--accent) !important;
}

.reg-btn:active,
.reg-btn:hover {
  color: var(--contrast) !important;
  background-color: var(--base-3) !important;
}

.general-btn:active,
.general-btn:hover {
  color: var(--base-3) !important;
  background-color: var(--contrast) !important;
}

.special-btn:active,
.special-btn:hover {
  color: var(--base-3) !important;
  background-color: var(--accent) !important;
}

.smartcrawl-breadcrumbs a,
.smartcrawl-breadcrumbs,
.custom-breadcrumb a,
.cta-links a:hover {
  color: var(--contrast);
}

.custom-breadcrumb a:hover {
  color: var(--accent);
}

.smartcrawl-breadcrumbs a,
.custom-breadcrumb a {
  text-decoration: none;
}

.smartcrawl-breadcrumbs strong,
.custom-breadcrumb span {
  text-decoration: underline;
  font-weight: 400 !important;
}

.error404 .inside-article {
  padding-top: 80px;
}

.error404 .entry-header h1 {
  font-size: 100px;
  line-height: 100px;
  margin-bottom: 30px;
}

.error404 .entry-header h2 {
  font-size: 60px;
  line-height: 70px;
  margin-bottom: 40px;
}

.error404 .entry-content .wp-block-buttons {
  display: flex;
  gap: 20px;
  justify-content: center;
}

.error404 .entry-content .wp-block-buttons a {
  border-radius: 0 !important;
}

.list-checks .gb-shape {
  top: 5px;
  position: relative;
}

.inner-hero-section-wrap,
.inner-hero-subpage-section,
.single-projekt-section,
.hero-only-content-main {
  border-top: 8px solid #C2CBCF;
}

.fitingtext {
  align-items: flex-start !important;
  padding: 30px 30px 30px 0 !important;
}

.inner-hero-section-wrap>div,
.inner-hero-subpage-section>div,
.main-hero-section {
  padding-right: 40px;
}

.main-hero-section .background-blend:before,
.inner-hero-section .background-blend:before,
.inner-hero-subpage-section .background-blend:before,
.single-projekt-section .background-blend:before {
  content: '';
  position: absolute;
  top: 0;
  height: 100%;
  width: 100vw;
  left: -100vw;
  background-color: var(--accent);
}

/*Header/Footer*/
.site-footer ul li,
.main-navigation li,
#menu-top-menu li {
  margin-bottom: 0;
}

.site-header {
  padding-left: 40px;
  padding-right: 40px;
}

.inside-header {
  justify-content: space-between;
}

.site-header .inside-header {
  position: relative;
  max-width: 1554px;
  margin: 0 auto;
  padding-left: 13px;
  /* border-bottom: 8px solid #C2CBCF; */
}

.main-navigation ul li a,
.footer-menu ul li a {
  position: relative;
}

.main-navigation ul li a:before,
.footer-menu ul li a:before {
  content: "";
  width: 0;
  position: absolute;
  transition: width .3s ease-in;
  background-color: var(--accent);
  left: 32px;
  height: 2px;
  bottom: 0px;
}

.main-navigation ul li a:hover:before,
.main-navigation ul li.current-menu-item a:before {
  width: calc(100% - 64px);
}

.footer-menu ul li a:before {
  left: 0 !important;
}

.footer-menu ul li a:hover:before,
.footer-menu ul li.current-menu-item a:before {
  width: 100%;
}

.footer-menu ul li a:hover,
.footer-menu li.current-menu-item a {
  color: var(--accent) !important;
}

.main-navigation ul ul li a:before {
  display: none;
}

.mobile-only .top-menu ul {
  display: flex !important;
  flex-direction: column;
}

.footer-item a:hover {
  color: var(--accent) !important;
}

.footer-item.footer-main-nav ul {
  gap: 10px;
}

.footer-menu ul {
  gap: 24px;
}

.sticky-navigation-logo img {
  padding: 0 !important;
}

.top-menu-items .current-menu-item a {
  color: var(--accent) !important;
}

/*Header/Footer*/

.gform_heading {
  display: none !important;
}

.gform_fields input::placeholder {
  color: var(--contrast-3) !important;
}

.gform_validation_errors:focus,
.gform_validation_errors:active .gform_validation_errors:hover .gform_validation_errors {
  box-shadow: none !important;
  outline: none !important;
}

.gform-theme--foundation .gform_fields {
  column-gap: 24px !important;
  row-gap: 10px !important;
}

.gform-field-label {
  margin-bottom: 4px !important;
}

.gfield--type-text input,
.ginput_container_email input,
.ginput_container_phone input,
.gfield textarea,
.ginput_container_consent input,
.gfield select {
  background-color: var(--base) !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.gfield--type-text input,
.ginput_container_email input,
.ginput_container_phone input,
.gfield select {
  height: 64px !important;
}

.gfield select {
  display: flex;
  align-items: center;
}

.gfield input,
.gfield textarea:hover,
.gfield input:focus,
.gfield textarea:focus,
.ginput_container_consent input:hover,
.ginput_container_consent input:focus,
.gform_footer input#gform_submit_button_1:hover,
.gform_footer input#gform_submit_button_1:focus,
.gform_footer input#gform_submit_button_1,
.gfield select,
.gfield select:hover,
.gfield select:focus,
#gform_submit_button_2:hover,
#gform_submit_button_2:focus,
#gform_submit_button_2 {
  border: 0 !important;
  box-shadow: none !important;
  outline: none !important;
}

.gform_footer input#gform_submit_button_1 {
  min-width: 230px !important;
  position: absolute;
  right: 0;
  bottom: 24px;
}

.gform_footer input#gform_submit_button_1:focus,
.gform_footer input#gform_submit_button_1,
#gform_submit_button_2:focus,
#gform_submit_button_2 {
  background-color: var(--accent) !important;
}

.gform_footer input#gform_submit_button_1:hover,
#gform_submit_button_2:hover {
  background-color: var(--contrast) !important;
}

#gform_fields_1,
#gform_1 {
  position: relative !important;
}

#field_1_4 {
  max-width: 66%;
  position: absolute !important;
  top: 0px;
  right: 0;
  width: 100%;
}

fieldset#field_1_5 {
  position: absolute;
  bottom: 0;
  right: 0;
  max-width: 66%;
  width: 100%;
}


/*Paterns*/
.hero-only-content-main {
  background: linear-gradient(180deg, #E3E9EC 0%, rgba(227, 233, 236, 0.00) 100%);
  mix-blend-mode: multiply;
}

.general-img-box {
  height: 200px !important;
}

.location-box span.gb-shape svg {
  width: 24px;
  height: 20px;
}

.kontakt-box:before {
  content: "";
  position: absolute;
  top: -5px;
  left: 0;
  right: 0;
  margin: 0 auto;
  transform: translateY(-50%);

  background-repeat: no-repeat;
  background-size: contain;
}

.kontakt-box.contacti-email:before {
  width: 55px;
  height: 55px;
  background-image: url("data:image/svg+xml,%3Csvg width='800px' height='800px' viewBox='-4 0 32 32' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' xmlns:sketch='http://www.bohemiancoding.com/sketch/ns' fill='%23008F49'%3E%3Cg id='SVGRepo_bgCarrier' stroke-width='0'/%3E%3Cg id='SVGRepo_tracerCarrier' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cg id='SVGRepo_iconCarrier'%3E%3Ctitle%3Elocation%3C/title%3E%3Cdesc%3ECreated with Sketch Beta.%3C/desc%3E%3Cdefs%3E%3C/defs%3E%3Cg id='Page-1' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd' sketch:type='MSPage'%3E%3Cg id='Icon-Set' sketch:type='MSLayerGroup' transform='translate(-104.000000, -411.000000)' fill='%23008F49'%3E%3Cpath d='M116,426 C114.343,426 113,424.657 113,423 C113,421.343 114.343,420 116,420 C117.657,420 119,421.343 119,423 C119,424.657 117.657,426 116,426 L116,426 Z M116,418 C113.239,418 111,420.238 111,423 C111,425.762 113.239,428 116,428 C118.761,428 121,425.762 121,423 C121,420.238 118.761,418 116,418 L116,418 Z M116,440 C114.337,440.009 106,427.181 106,423 C106,417.478 110.477,413 116,413 C121.523,413 126,417.478 126,423 C126,427.125 117.637,440.009 116,440 L116,440 Z M116,411 C109.373,411 104,416.373 104,423 C104,428.018 114.005,443.011 116,443 C117.964,443.011 128,427.95 128,423 C128,416.373 122.627,411 116,411 L116,411 Z' id='location' sketch:type='MSShapeGroup'%3E%3C/path%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
}

.kontakt-box.contact-email:before {
  width: 55px;
  height: 40px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='58' height='43' viewBox='0 0 58 43' fill='none'%3E%3Cpath d='M56.3673 1.59119H1.63281V41.5911H56.3673V1.59119Z' stroke='%23008F49' stroke-width='2' stroke-linejoin='round'/%3E%3Cpath d='M29.0001 27.4915L1.63281 1.59119H29.0001H56.3673L29.0001 27.4915Z' stroke='%23008F49' stroke-width='2' stroke-linejoin='round'/%3E%3Cpath d='M1.63281 41.5911L21.184 23.0909' stroke='%23008F49' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M36.8145 23.0909L56.3656 41.5911' stroke='%23008F49' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

.kontakt-box.contact-phone:before {
  width: 40px;
  height: 48px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='43' height='52' viewBox='0 0 43 52' fill='none'%3E%3Cpath d='M25.8668 39.4285C24.0499 38.4569 19.9563 34.323 16.3399 29.16C12.7235 23.997 10.2398 18.7363 9.94656 16.6953C12.2751 15.6259 15.374 13.9183 16.6447 12.2164L13.5975 1.30401C11.9934 0.964796 7.85951 1.05679 5.12278 3.13808C1.58688 5.82882 1.00043 9.68669 2.02958 15.5109C2.97249 20.8291 5.82421 27.1247 10.2398 33.4319C14.6554 39.739 19.5941 44.5743 24.2684 47.2765C29.3854 50.2375 33.2145 51.0079 36.9517 48.6046C39.8436 46.7418 41.3442 42.8955 41.5742 41.2684L32.3636 34.6738C30.3283 35.2832 27.6663 37.6117 25.8668 39.4343V39.4285Z' stroke='%23008F49' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

.kontakt-box.contact-fax:before {
  width: 50px;
  height: 52px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='54' height='55' viewBox='0 0 54 55' fill='none'%3E%3Cpath d='M30.2018 38.6979C29.2723 39.8094 27.9529 41.8113 26.9064 42.9292C25.8599 44.0472 23.858 43.4557 22.766 42.6108C20.4976 40.8558 18.2226 38.022 14.8687 32.2113C11.5148 26.4005 10.2018 23.0142 9.81185 20.1738C9.62336 18.8024 10.1108 16.7745 11.6058 16.4235C13.1008 16.0725 15.4927 15.936 16.9227 15.689C18.8661 15.3445 19.3146 13.3036 18.1186 8.83835C16.9227 4.37305 15.1807 2.85863 13.8222 2.76113C12.8018 2.68963 10.4618 3.02762 7.79691 4.84753C4.02701 7.42141 1.34909 11.1262 1.65458 16.833C1.96007 22.5787 3.90352 29.0784 7.9984 36.1761C12.0933 43.2737 16.7537 48.2135 21.5765 51.3464C26.3669 54.4597 30.9103 53.9917 35.0182 52.0223C37.9301 50.6249 39.3925 48.766 39.841 47.8495C40.439 46.6211 39.997 44.3592 36.7276 41.0898C33.4582 37.8205 31.4693 37.19 30.1953 38.7044L30.2018 38.6979Z' stroke='%23008F49' stroke-width='1.7' stroke-miterlimit='10'/%3E%3Cpath d='M37.1133 1.59113C41.5917 4.243 45.667 8.37031 48.293 12.9136C50.9189 17.4569 52.4529 23.0531 52.5114 28.2529' stroke='%23008F49' stroke-width='1.7' stroke-miterlimit='10'/%3E%3Cpath d='M45.0757 29.8258C45.0302 25.419 43.7238 20.6873 41.5008 16.8329C39.2779 12.9786 35.8265 9.48177 32.0371 7.23938' stroke='%23008F49' stroke-width='1.7' stroke-miterlimit='10'/%3E%3Cpath d='M37.6525 31.3988C37.6135 27.7914 36.5475 23.9111 34.7211 20.7523C32.8946 17.5934 30.0737 14.727 26.9668 12.8876' stroke='%23008F49' stroke-width='1.7' stroke-miterlimit='10'/%3E%3C/svg%3E");
}

/*Paterns*/
.projekt-single-entry-content {
  display: grid;
  grid-template-columns: 1.5fr 3fr;
  gap: 100px;
}

.projekt-single-entry-content h3 {
  color: var(--accent) !important;
}

.single-main-sidebar {
  display: flex;
  flex-direction: column;
  gap: 64px;
}

.single-main-sidebar h3 {
  margin-bottom: 20px;
}

.single-main-sidebar .p-desc {
  font-size: 18px;
  line-height: 24px;
}

a.pdf_button {
  display: inline-flex;
  min-width: 200px;
  height: 40px;
  align-items: center;
  color: var(--base-3);
  text-decoration: none;
}

a.pdf_button .pdfsvg {
  background-color: var(--contrast);
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
}

a.pdf_button span {
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 10px 20px;
  background-color: var(--accent);
  transition: all 0.2s ease-in-out;
}

a.pdf_button:hover {
  color: var(--base-3);
}

a.pdf_button:hover span {
  color: var(--base-3);
  background-color: var(--contrast);
}

.single-projekt .wp-block-gallery {
  margin-top: 60px;
}

.single-projekt .wp-block-gallery .wp-block-image img {
  height: 320px !important;
  flex: unset !important;
  object-fit: cover;
  object-position: center;
}

.single-projekt .wp-block-gallery .wp-block-image:nth-of-type(4n - 1) {
  width: 480px !important;
}

.single-projekt .wp-block-gallery .wp-block-image:nth-of-type(4n) {
  width: 354px !important;
}

.sticky-menu-main {
  position: relative;
}

#main-scroll-section {
  position: relative;
}

.sticky_left {
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  flex-direction: column;
  gap: 16px;
  z-index: 1000;
  max-width: 240px !important;
}

.sticky_left p {
  margin-bottom: 16px;
}

.sticky_left a {
  text-decoration: none;
  color: #C2CBCF;
  transition: color 0.3s;
  width: 100%;
  display: flex;
}

.sticky_left a {
  border-bottom: 2px solid transparent;
}

.sticky_left a.active,
.sticky_left a:hover {
  border-bottom: 2px solid var(--contrast);
  color: var(--contrast);
}

.page-numbers.current,
a.page-numbers:hover {
  background-color: var(--accent) !important;
  color: var(--base-3) !important;
  border: 1px solid var(--accent) !important;
}

footer.entry-meta .cat-links,
.entry-header .byline {
  display: none;
}

.single-post h1 {
  margin-bottom: 0;
}

.single-post header.entry-header {
  display: flex;
  flex-direction: column;
  gap: 5px;
  margin-bottom: 20px;
}

.single-post #nav-below {
  margin-top: 40px;
  display: flex;
  align-items: center;
  width: 100%;
  justify-content: space-between;
}

.single-post #nav-below a {
  font-size: 20px;
  text-decoration: none;
  color: var(--contrast);
}

.single-post #nav-below a:hover {
  color: var(--accent);
}

.single-post #nav-below .gp-icon svg {
  width: 20px !important;
  height: 20px !important;
}

.single-post .nav-previous,
.single-post .nav-next {
  display: flex;
  align-items: center;
}

.single-post .alignfull {
  margin-left: calc(-100vw / 2 + 100% / 2);
  margin-right: calc(-100vw / 2 + 100% / 2);
  max-width: 100vw;
  width: auto;
}

#site-navigation {
  margin-right: 80px !important;
}

nav .main-nav>ul>li>a {
  padding: 75px 25px !important;
}

ul.job_listings {
  gap: 16px !important;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  border: 0 !important;
}

ul.job_listings>li {
  border: 0 !important;
  overflow: hidden;
}

ul.job_listings li a:hover {
  background-color: var(--contrast-3) !important;
}

ul.job_listings li a h4 {
  margin-bottom: 0;
  font-weight: 700;
  font-size: 20px;
}

.job_listings li a {
  min-height: 75px;
  background-color: var(--base) !important;
  display: grid !important;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  padding: 15px 80px !important;
  line-height: normal !important;
  align-items: center !important;
  height: 100%;
}

.job_listings li a .position span,
.job_listings li a .location span,
.job_listings li a .meta span,
.job_listings li a .meta .job-year-overview span,
.job_listings li a .meta .job-year-overview,
.job_listings li a .meta .internship span,
.job_listings li a .meta .internship,
.job_listings li a .position,
.job_listings li a .location,
.job_listings li a .meta {
  padding: 0 !important;
  width: 100% !important;
  float: none !important;
  font-size: 16px !important;
}

.job_listings li a .position {
  line-height: 32px !important;
}

.job_listings li a .location,
.job_listings li a .meta {
  text-align: left !important;
}

.job_listings li a .job-link {
  text-align: right !important;
  display: flex;
  align-items: center;
  justify-content: flex-end;
}

.job_listings li a .meta li,
.job_listings li a .meta li span,
.job_listings li a .location,
.job_listings li a .location span {
  font-size: 24px;
  font-weight: 400 !important;
  line-height: 32px;
  letter-spacing: 0.48px;
  color: var(--contrast) !important;
}

.job_listings li a .location {
  padding-left: 15px !important;
  padding-right: 15px !important;
}

.jobLink {
  width: 228px;
  height: 40px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  color: var(--contrast);
  background: #C2CBCF;
  transition: all 0.2s ease-in-out;
}

.job_listings li a:hover .jobLink {
  background: var(--accent);
  color: var(--base-3);
}

.search_jobs {
  display: flex;
  padding: 15px 80px !important;
  align-items: center;
  border: 0 !important;
  column-gap: 10px;
}


.job_listings .meta .job-type {
  display: none !important;
}

.job_filters {
  background: var(--base) !important;
  margin-bottom: 40px;
}

.search_jobs input:hover,
.search_jobs input:focus {
  background-color: var(--base-3) !important;
}

.search_jobs .search_submit {
  padding: 0 !important;
  order: 1;
}

input#search_keywords::placeholder {
  color: #f7f8f9;
}

.search_jobs .search_submit input {
  transition: all 0.2s ease-in-out;
}

.search_jobs .search_submit input:hover {
  background-color: var(--contrast) !important;
}

.job_filters .job_types {
  padding: 10px 65px !important;
  background: white;
  border: 0 !important;
  gap: 16px;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}

.job_filters .job_types li {
  border: 0 !important;
  background-color: var(--base) !important;
}

.job_types input[type="checkbox"] {
  width: 12px !important;
  height: 12px !important;
  border: 1px solid var(--accent) !important;
  border-radius: 0 !important;
  flex-shrink: 0 !important;
  -webkit-appearance: none !important;
  appearance: none !important;
  background-color: transparent !important;
  cursor: pointer !important;
}

.job_types input[type="checkbox"]:checked {
  background-color: var(--accent) !important;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round' xmlns='http://www.w3.org/2000/svg'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  background-size: 10px 10px !important;
}

.job_types label {
  font-size: 16px !important;
  line-height: 28px !important;
  letter-spacing: 0.32px;
}

.job_filters .showing_jobs {
  background: var(--base-3) !important;
  padding: 10px 80px;
}

.job_listing-template-default .site-main {
  padding: 80px 40px 160px 40px;
}

.hero-information h1 {
  font-weight: 700;
  margin-bottom: 35px;
}

.hero-desc-meta {
  margin-bottom: 30px;
}

.hero-desc-meta .job-year,
.hero-desc-meta .meta,
.hero-desc-meta h2 {
  font-size: 32px;
}

.hero-desc-meta h2 {
  margin-bottom: 0;
  color: var(--accent);
}

.job-hero-information {
  display: grid;
  grid-template-columns: 2fr 1fr;
  gap: 30px;
  align-items: flex-start;
}

.single-job-intro {
  margin-bottom: 75px;
}

.contact-person {
  display: grid;
  grid-template-columns: 1.5fr 2fr;
  align-items: center;
  background-color: var(--base);
  overflow: hidden;
}

.contact-person-thumbnail {
  background-color: #000;
}

.contact-person-thumbnail img {
  width: 100%;
  object-fit: cover;
  aspect-ratio: 1/1;
  min-height: 320px;
}

.contact-person-info {
  background-color: var(--base);
  padding: 0 25px;
}

.contact-topic {
  color: var(--contrast);
  margin-bottom: 20px;
}

.margin-top-position-phone {
  margin-top: 20px;
}

.contact-person-phone,
.contact-person-email {
  margin-bottom: 0;
}

.contact-title {
  margin-bottom: 15px;
}

.contact-person-position {
  margin-bottom: 10px;
  font-weight: 700;
}

.contact-person-phone {
  margin-bottom: 5px
}

.job-main-content p {
  margin-bottom: 5px;
}

.job-main-content p:last-child {
  margin-bottom: 0;
}

.job-content {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 30px;
}

.job-section {
  background-color: var(--base);
  padding: 40px 40px 50px 40px;
  min-height: 320px;
}

.job-section .job__desc ul:last-child,
.job-section .job__desc p:last-child {
  margin-bottom: 0;
}

.job-section ul li {
  line-height: 20px;
}

.job-section.job_application {
  background-color: var(--accent);
}

.job-newsletter-content {
  color: var(--base-3);
}

.job-newsletter-wrapper {
  display: grid;
  grid-template-columns: 2fr 1fr;
  align-items: end;
  gap: 20px;
  margin-bottom: 40px;
}

.job-newsletter-content a {
  color: var(--base-3);
  text-decoration: none;
}

.job-newsletter-content p {
  margin-bottom: 10px;
  line-height: 20px;
}

.application_button.button {
  background-color: var(--contrast) !important;
}

.breadcrumbs-c a {
  text-decoration: none;
  color: var(--contrast);
}

.breadcrumbs-c a:hover {
  color: var(--accent);
}

.breadcrumbs-wp {
  background: linear-gradient(180deg, #E3E9EC 0%, rgba(227, 233, 236, 0.00) 100%);
  mix-blend-mode: multiply;
}

.rss_link {
  display: none !important;
}

.icon-box img {
  transition: transform 3s linear;
}

.icon-box:hover img {
  transform: rotate(360deg);
}


.job_filters .search_jobs div.search_categories {
  padding-top: 0 !important;
}

.search_jobs .search_submit {
  margin-right: 8px !important;
}

.search_jobs .search_keywords {
  padding-right: 0 !important;
}

.search_jobs .search_location {
  display: none !important;
}

.page-id-1419 ul.job_listings li.job_listing a .meta li.job-type {
  display: none;
}

.page-id-1419 ul.job_listings li.job_listing a .meta li.job-year-overview {
  display: block;
}

h1 {
  opacity: 0;
  /* Hide initially */
  transition: opacity 0.3s ease;
}

h1.animate {
  opacity: 1;
  animation: text-focus-in 0.5s cubic-bezier(0.550, 0.085, 0.680, 0.530) both;
  -webkit-animation: text-focus-in 0.5s cubic-bezier(0.550, 0.085, 0.680, 0.530) both;
}

.navigation-stick {
  padding: 50px 0 0 0;
}

.navigation-stick .inside-navigation #menu-main-menu #menu-item-454 a {
  padding-left: 0 !important;
}

.navigation-stick .navigation-branding {
  margin-left: 100px;
}

.navigation-stick .inside-navigation {
  flex-direction: row-reverse !important;
  justify-content: space-between !important;
}

.single-job-intro.entry-content h1 {
  margin-bottom: 60px;
}

.hero-contact-person .imageWrap {
  margin-bottom: 30px;
}

.working-hours-list .right-side-data {
  width: 92%;
}

.working-hours-list .left-side-small-icon {
  width: 8%;
}

.working-hours-list .working-hours-times {
  width: 60%;
}

.working-hours-list .labelo {
  width: 30%;
}

.working-hours-list .working-hours-item:first-child {
  margin-bottom: 16px;
}

.__linkovce:hover a {
  color: #000 !important;
}

.working-hours-item,
.working-hours-list {
  display: flex;
  justify-content: flex-start;
  column-gap: 16px;
}

span.working-hours-label {
  width: 28%;
}

.__benefits__new {
  margin-top: 30px;
}

.__benefits__new div svg {
  width: 1.5em !important;
  height: 1.5em !important;
}

.__benefits__new div {
  margin-bottom: 20px;
}

.gform_drop_area:before {
  color: #028f48 !important;
}

.gform_drop_area .gform_button_select_files {
  background-color: #028f48 !important;
}

.gform_drop_area {
  border: 0 !important;
  box-shadow: none !important;
  background: #ededed !important;
}

.gform-theme--framework input[type=checkbox]:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *))::before {
  color: #028f48 !important;
}


/* Keyframes for the blur-to-focus effect */
@keyframes text-focus-in {
  0% {
    filter: blur(12px);
    opacity: 0;
  }

  100% {
    filter: blur(0px);
    opacity: 1;
  }
}

@-webkit-keyframes text-focus-in {
  0% {
    -webkit-filter: blur(12px);
    opacity: 0;
  }

  100% {
    -webkit-filter: blur(0px);
    opacity: 1;
  }
}

@media (max-width: 1600px) and (min-width: 1480px) {
  #site-navigation {
    margin-right: 85px !important;
  }

  .top-menu ul {
    padding: 5px 40px !important;
  }
}

@media (max-width: 1480px) and (min-width: 1330px) {
  #site-navigation {
    margin-right: 40px !important;
  }

  nav .main-nav>ul>li>a {
    padding: 75px 15px !important
  }

  .top-menu ul {
    padding: 5px 40px !important;
  }
}

@media (max-width: 1565px) and (min-width: 768px) {
  .hero-only-content {
    padding: 32px 40px 60px 47px !important;
  }
}

@media (max-width: 1210px) and (min-width: 1024px) {
  .job-hero-information {
    grid-template-columns: 1fr 1fr;
  }

  .widthresposnive {
    width: 70% !important;
  }
}

@media (max-width: 1330px) and (min-width: 1024px) {
  .cta-links {
    flex-direction: column !important;
  }

  #site-navigation {
    margin-right: 20px !important;
  }

  nav .main-nav>ul>li>a {
    padding: 75px 10px !important
  }

  .top-menu ul {
    padding: 6px 24px !important;
  }

  .subpage-item .subpage-item-grid {
    flex-direction: column-reverse !important;
    grid-template-columns: 1fr !important;
    row-gap: 20px !important;
    display: flex !important;
    flex-direction: column !important;
  }

  .general-box {
    padding: 40px 20px 50px 20px !important;
  }

  .subpage-item .subpage-item-grid img {
    height: 250px;
    width: 100%;
  }

  .sub-page-left {
    row-gap: 20px !important;
    padding: 30px !important;
  }

  .sub-page-right {
    width: 100% !important;
  }

  .three-column-section h3 {
    font-size: 22px !important;
    line-height: 28px !important;
  }

  .top-menu ul {
    padding: 5px 24px !important;
  }

  ul.job_listings li a h4 {
    hyphens: auto;
  }

  .job_listings li a .meta li,
  .job_listings li a .meta li span,
  .job_listings li a .location,
  .job_listings li a .location span {
    font-size: 18px;
    line-height: 24px !important;
  }

  .job_filters {
    margin-bottom: 20px;
  }

  .job_listings li a,
  .search_jobs,
  .job_filters .showing_jobs {
    padding: 15px 15px !important;
  }

  .job_filters .job_types {
    padding: 15px 0px !important;
    justify-content: center;
  }

  .job_listings li a {
    gap: 10px !important;
  }
}

@media (max-width: 1215px) and (min-width: 1024px) {
  .site-header .header-image {
    width: 235px;
  }

  .top-menu ul {
    padding: 6px 24px !important;
  }
}

@media (max-width: 1200px) and (min-width: 1024px) {
  .footer-grid {
    column-gap: 40px !important;
  }

  .cta-links {
    flex-direction: column !important;
  }

  .cta-links p {
    margin-bottom: 0 !important;
  }

  .cta-content {
    padding: 20px !important;
    height: 260px !important;
  }

  .cta-img img {
    max-width: 260px !important;
  }

  .cta-info {
    height: 260px !important;
  }

  .cta-content p {
    margin-bottom: 20px;
  }
}

@media (max-width: 1155px) and (min-width: 1024px) {
  .main-navigation.sub-menu-right .main-nav>ul>li>a {
    padding: 55px 4px !important;
    font-size: 14px !important;
  }
}

@media (max-width: 1100px) and (min-width: 640px) {
  .gform-theme--foundation .gfield--width-third {
    grid-column: 1/-1 !important;
  }
}

@media (max-width: 1216px) {
  .__slofka__naslofka_title{
    max-width: 100% !important;
  }
}

@media (max-width: 1100px) {

  #field_1_4,
  fieldset#field_1_5,
  .gform_footer input#gform_submit_button_1 {
    max-width: 100%;
    position: relative !important;
  }

  .gform_footer input#gform_submit_button_1 {
    margin-top: 10px;
  }
}

@media (max-width: 1024px) {
  .navigation-stick .navigation-branding {
    margin-right: 0;
  }

  header.site-header .inside-header.grid-container {
    flex-direction: row !important;
  }

  .navigation-stick .inside-navigation {
    flex-direction: row-reverse !important;
  }

  .inner-hero-section-wrap>div,
  .inner-hero-subpage-section>div,
  .main-hero-section {
    padding-right: 20px;
  }

  .widthresposnive {
    width: 100% !important;
    padding-left: 0 !important;
  }

  .hero-contact-person .imageWrap {
    margin-bottom: 15px;
  }

  .hero-desc-meta .job-year,
  .hero-desc-meta .meta,
  .hero-desc-meta h2 {
    font-size: 22px;
  }

  .single-job-intro.entry-content h1 {
    margin-bottom: 30px;
  }

  .single-main-sidebar {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    row-gap: 30px;
  }

  .job-hero-information {
    grid-template-columns: 1fr;
    gap: 20px;
  }

  .single-job-intro {
    margin-bottom: 40px;
  }

  .job-content {
    gap: 15px;
  }

  .job-section {
    padding: 20px;
  }

  .job-newsletter-wrapper {
    grid-template-columns: 1fr;
    gap: 20px;
    margin-bottom: 20px;
  }

  .projekt-single-entry-content {
    grid-template-columns: 1fr;
    gap: 50px;
  }

  ul.job_listings li a h4 {
    hyphens: auto;
  }

  .job_listings li a .meta li,
  .job_listings li a .meta li span,
  .job_listings li a .location,
  .job_listings li a .location span {
    font-size: 18px !important;
    line-height: 24px !important;
  }

  .job_filters {
    margin-bottom: 20px;
  }

  .job_listings li a,
  .search_jobs,
  .job_filters .showing_jobs {
    padding: 15px 15px !important;
  }

  .job_filters .job_types {
    padding: 15px 0px !important;
    justify-content: center;
  }

  .job_listings li a {
    gap: 10px !important;
  }

  .jobLink {
    width: 100%;
    font-size: 14px !important;
  }

  .top-menu-items .current-menu-item a {
    color: var(--base-3) !important;
  }

  .sticky_left {
    max-width: 160px !important;
  }

  .slideout-navigation:not(.do-overlay) .main-nav ul ul li a {
    padding-top: 10px !important;
  }

  .top-menu-wrapper.desktop-only {
    display: none;
  }

  .main-navigation.navigation-stick.has-sticky-branding .inside-navigation.grid-container {
    padding-left: 0px;
    padding-right: 2%;
  }

  .site-header .inside-header {
    display: flex;
    padding: 35px 0 !important;
    flex-direction: row-reverse;
    justify-content: space-between;
  }

  .site-header .inside-header #mobile-menu-control-wrapper {
    margin-right: 0 !important;
  }

  .main-navigation .menu-toggle {
    background-color: var(--base-3) !important;
    padding: 0 !important;
  }

  .main-navigation .menu-toggle svg {
    width: 40px !important;
    height: 40px !important;
  }

  #sticky-navigation {
    padding: 15px 20px;
  }

  #sticky-navigation .navigation-branding {
    margin-left: 0 !important;
  }

  #sticky-navigation .navigation-branding img {
    padding: 0 !important;
    height: 30px !important;
  }

  #sticky-navigation .menu-toggle {
    line-height: 40px;
    height: 40px;
  }

  #sticky-navigation .menu-toggle svg {
    top: 0 !important;
  }

  #generate-slideout-menu .inside-navigation {
    padding: 37px 0px 45px 0px !important;
    position: relative;
  }

  .main-navigation.offside {
    width: 85% !important;
    height: 64vh !important;
    box-shadow: -4px 4px 10px 0px rgba(0, 0, 0, 0.50);
  }

  .offside-js--is-open .slideout-overlay {
    visibility: hidden !important;
  }

  button.slideout-exit.has-svg-icon {
    padding: 0 !important;
    text-align: left !important;
    padding-bottom: 35px !important;
    padding-left: 46px !important;
  }

  button.slideout-exit.has-svg-icon svg {
    width: 60px !important;
    height: 60px !important;
    top: 0 !important;
    fill: var(--contrast) !important;
  }

  .slideout-navigation:not(.do-overlay) .main-nav {
    padding: 0 40px 0 50px;
  }

  .slideout-navigation:not(.do-overlay) .main-nav ul {
    gap: 30px;
    box-shadow: none;
  }

  .slideout-navigation:not(.do-overlay) .main-nav ul li.menu-item-has-children a {
    border-bottom: 1px solid var(--base-3);
  }

  .slideout-navigation:not(.do-overlay) .main-nav ul li a {
    padding: 0 0 16px 0 !important;
  }

  .menu-item-has-children .dropdown-menu-toggle {
    padding-right: 0 !important;
  }

  .top-menu-wrapper.mobile-only {
    border-top: 2px solid var(--contrast);
    width: 100%;
    padding: 24px 40px 45px 50px;
  }

  .mobile-only .top-menu ul {
    gap: 24px;
  }

  .mobile-only .top-menu ul li a {
    font-size: 18px;
    color: var(--contrast);
    line-height: 24px;
  }

  .error404 .entry-header h1 {
    font-size: 80px;
    line-height: 80px;
  }

  .error404 .entry-header h2 {
    font-size: 50px;
    line-height: 60px;
    margin-bottom: 30px;
  }

  .error404 .entry-content .wp-block-buttons {
    gap: 10px;
  }

  .single-main-sidebar h3 {
    margin-bottom: 10px;
  }

  .single-main-sidebar .p-desc {
    font-size: 20px;
    line-height: 26px;
  }

  .job_filters .search_jobs div.search_keywords {
    padding-right: 0 !important;
  }

  .search_jobs .search_submit {
    padding: 0 0 0 5px !important;
  }
}

@media (max-width: 768px) {
  .hero-only-content {
    padding: 20px 20px 30px 27px !important;
  }

  .job_listings li a .location {
    padding-left: 0px !important;
    padding-right: 0px !important;
  }

  .job_filters .showing_jobs {
    padding: 15px 15px 30px 15px !important;
  }

  .job_filters .job_types li {
    float: none !important;
    padding: 5px 20px;
    margin: 0 5px 10px 5px !important;
  }

  .search_jobs .search_submit {
    padding: 0 0 0 0px !important;
  }

  .contact-title {
    margin-bottom: 0;
  }

  .contact-person-info {
    padding: 24px;
  }

  .contact-person {
    grid-template-columns: 1fr;
    height: auto;
    padding: 20px;
  }

  .job-content {
    grid-template-columns: 1fr;
    gap: 20px;
  }

  .hero-information h1 {
    margin-bottom: 20px;
  }

  .job_listing-template-default .site-main {
    padding: 0 20px 80px 20px;
  }

  .job_listings li a {
    grid-template-columns: 1fr;
  }

  .job_filters .job_types {
    gap: 0px;
  }

  .job_filters .search_jobs div.search_location,
  .job_filters .search_jobs div.search_keywords {
    width: 100% !important;
  }

  .search_jobs .search_submit input {
    margin-top: 0px;
  }

  .search_jobs {
    flex-direction: column;
    align-items: baseline;
    gap: 5px;
  }

  .job_filters .search_jobs div.search_location,
  .job_filters .search_jobs div.search_keywords {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }

  .single-projekt .wp-block-gallery {
    margin-top: 20px;
  }

  .single-main-sidebar h3 {
    margin-bottom: 5px;
  }

  .single-main-sidebar .p-desc {
    font-size: 16px;
    line-height: 22px;
  }

  .single-main-sidebar {
    grid-template-columns: 1fr;
    row-gap: 20px;
  }

  .single-projekt .wp-block-gallery .wp-block-image img {
    height: 200px !important;
  }

  .single-projekt .wp-block-gallery .wp-block-image:nth-of-type(4n - 1),
  .single-projekt .wp-block-gallery .wp-block-image:nth-of-type(4n) {
    width: 100% !important;
  }

  .sticky_left {
    position: inherit;
  }

  .site-header .inside-header {
    padding: 20px 0 !important;
  }

  .error404 .entry-header h1 {
    font-size: 60px;
    line-height: 60px;
    margin-bottom: 20px;
  }

  .error404 .entry-header h2 {
    font-size: 40px;
    line-height: 50px;
  }

  .error404 .entry-content .wp-block-buttons {
    flex-direction: column;
  }

  .site-header {
    padding-left: 20px;
    padding-right: 20px;
  }

  .site-header .header-image {
    width: 169px;
  }

  .main-navigation.offside {
    height: 90vh !important;
  }

  .error404 .inside-article {
    padding-top: 40px;
  }
}

@media (min-width: 1025px) {
  .main-navigation.sticky-navigation-transition .main-nav>ul>li>a {
    padding-top: 15px !important;
    padding-bottom: 15px !important;
  }

  .main-navigation.sticky-navigation-transition:not(.toggled) ul li:hover>ul {
    top: 75px;
  }

  .sticky-navigation-logo img {
    height: 45px;
  }

  .menu-item-has-children .dropdown-menu-toggle {
    padding-right: 0 !important;
    padding-left: 0px !important;
    top: 2px;
    position: relative;
  }

  .top-menu-wrapper {
    display: flex;
    justify-content: center;
    position: fixed;
    top: 0;
    right: 160px;
    z-index: 999999999;
  }

  .top-menu ul {
    list-style: none;
    margin: 0;
    display: flex;
    gap: 40px;
    justify-content: center;
    padding: 12px 40px;
    background-color: var(--base);
    border-radius: 0px 0px 0px 20px;
    position: relative;
  }

  .top-menu ul::after {
    content: '';
    position: absolute;
    top: 0;
    right: -100vw;
    height: 100%;
    width: 100vw;
    background-color: var(--base);
  }

  .top-menu ul li a {
    color: var(--contrast);
    font-size: 14px;
    line-height: 20px;
    text-decoration: none;
  }

  .top-menu ul li a:hover {
    color: var(--accent);
  }

  nav .main-nav .mega-menu {
    position: static;
  }

  nav .main-nav .mega-menu>ul {
    position: absolute;
    width: 100%;
    right: 0 !important;
    display: flex;
    flex-wrap: wrap;
    min-width: 808px;
  }

  nav .main-nav .mega-menu>ul>li>a {
    display: flex;
    align-items: center;
    transition: all 0.3s ease-in-out;
  }

  .menu__texts {
    flex: 1;
    margin-left: 10px;
  }

  nav .main-nav .mega-menu>ul>li a img {
    max-width: 100%;
    height: 55px;
  }

  .main-navigation .main-nav ul ul li a {
    padding: 17px 20px;
    border-bottom: 1px solid var(--base);
  }

  .main-nav .mega-menu>ul>li:nth-child(even) a {
    margin-left: 12px;
  }

  .main-nav .mega-menu>ul>li:nth-child(odd) a {
    margin-right: 12px;
  }

  span.menu__title {
    display: block;
  }

  nav .main-nav .mega-menu>ul>li {
    display: inline-block;
    width: 50%;
    vertical-align: top;
  }

  nav .main-nav .mega-menu>ul>li:hover>a,
  nav .main-nav .mega-menu>ul>li:focus>a,
  nav .main-nav .mega-menu>ul>li[class*="current-"]>a,
  nav .main-nav .mega-menu ul ul {
    background-color: transparent !important;
  }

  .main-navigation:not(.toggled) ul li:hover>ul {
    border-radius: 0;
    padding: 40px 80px;
    top: 131px;
  }

  nav .main-nav .mega-menu ul .sub-menu {
    position: static;
    display: block;
    opacity: 1;
    visibility: visible;
    width: 100%;
    box-shadow: 0 0 0;
    left: 0;
    height: auto;
    pointer-events: auto;
  }

  nav .main-nav .mega-menu ul.toggled-on .sub-menu {
    pointer-events: auto;
  }

  nav .main-nav .mega-menu .sub-menu .menu-item-has-children .dropdown-menu-toggle {
    display: none;
  }
}

.nachhaltigkeit a:hover,
.geschftsleitung a:hover,
.meilensteine a:hover,
.organisation a:hover {
  color: var(--accent) !important;
}

.nachhaltigkeit a,
.geschftsleitung a,
.meilensteine a,
.organisation a {
  color: #000 !important;
}


.hyphens-auto__ p {
  hyphens: auto !important;
}

.sharewrapper {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  column-gap: 30px;
  margin-top: 30px;
}

.share-popup ul li {
  margin-bottom: 0;
}

.share__artikel {
  display: flex;
  align-items: center;
  cursor: pointer;
}

.share__artikel span {
  margin-left: 9px;
  font-size: 16px;
  line-height: 120%;
  font-weight: 600;
}

.share__artikel svg {
  width: 24px;
  height: 28px;
}

.share-popup ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.share-popup ul li svg {
  width: 30px;
  height: 30px;
  border-radius: 5px;
}

.share-popup ul {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  justify-content: flex-start;
}

.share-popup ul li svg {
  display: flex;
  width: 30px;
  min-height: 30px;
  border-radius: 5px;
  transition: transform 0.3s ease;
}

.share-popup h4 {
  margin-bottom: 10px;
  text-align: center;
}

.share-popup .close-share-popup {
  font-size: 30px;
  cursor: pointer;
  padding: 0;
  height: 20px;
  line-height: 20px;
  width: 20px;
}

.entry__meta__links .share__artikel {
  margin-bottom: 0;
}

.entry__meta__links .share__artikel span {
  margin-bottom: 0;
}