/*
Theme Name: Hello Biz Child
Theme URI: https://elementor.com/products/hello-biz/?utm_source=wp-themes&utm_campaign=theme-uri&utm_medium=wp-dash
Template: hello-biz
Author: Elementor Team
Author URI: https://elementor.com/?utm_source=wp-themes&utm_campaign=author-uri&utm_medium=wp-dash
Description: Hello Biz is a free, user-friendly Hybrid WordPress Theme that was crafted for seamless integration with the Elementor site builder and tailored specifically for business websites. Perfect for beginners, but far from limited to just them, it features a dedicated beginner-oriented “Home” screen to simplify and streamline the web-building process. Hello Biz also integrates with Elementor’s premium features, giving you access to tools like AI, and accessibility enhancements in one place. Whether launching a startup site or refining a company portfolio, Hello Biz offers a solid, responsive foundation for all web creators. Report security bugs through the Patchstack Vulnerability Disclosure Program. The Patchstack team validates, triages, and handles vulnerabilities. Report here: https://patchstack.com/database/wordpress/theme/hello-biz/vdp.
Tags: flexible-header,custom-colors,custom-menu,custom-logo,featured-images,rtl-language-support,threaded-comments,translation-ready,style-variations
Version: 1.2.0.1762600124
Updated: 2025-11-08 11:08:44

*/


h1, h2, h3, h4, h5, h6 {
  overflow-wrap: break-word;
  word-wrap: break-word;
  word-break: break-word;
  -ms-hyphens: auto;
  -moz-hyphens: auto;
  -webkit-hyphens: auto;
  hyphens: auto;
}


/* general spacing left and right on website */
div[data-elementor-type="wp-page"],
div[data-elementor-type="single-post"] {
  margin: 0 20px;
}

/* left align text in buttons */
.elementskit-btn {
    text-align: left !important;
}

strong {
  font-weight: 600 !important;
}

.tt-textbutton a {
  text-decoration-skip-ink: none;
  text-decoration-thickness: 2px !important;
  text-underline-offset: 1px;
  text-underline-position: from-font;
}

.tt-textbutton a:hover {
  opacity: 0.7;
}

.orange-gradient {
  background: linear-gradient(93deg, #EC6013 27.6%, #F88733 99.6%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

/* header menu overwrites */

/* main menu toggle */
.tt-mainmenu .elementor-widget-container .uc-side-menu-main-wrapper {
    width: 96px;
}

.tt-mainmenu .uc-menu-button-wrapper {
    padding: 16px 0;
}

.tt-mainmenu .open_side_menu {
    width: 100% !important;
    justify-content: flex-start !important;
}

.tt-mainmenu:hover::after,
.tt-mainmenu:hover .open_side_menu {
    color: #3A414E !important;
}

.tt-mainmenu::after {
    content: "Menü";
    color: #01091A;
    font-family: "Gabarito";
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    text-transform: uppercase;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
}

.tt-mainmenu ul.uc-list-menu li.current-menu-item > a::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0px;
    width: 2px;
    height: calc(100% + 1px);
    background: linear-gradient(180deg, #859fdd 0%, #c16242 100%);
}

/* vertically center the expand/collapse icons and align right */
.tt-mainmenu .uc-menu-item-pointer {
    margin-left: auto !important;
    display: inline-flex !important;
}


/* vertically center the search icon */
.tt-menu-wrap .elementor-widget-elementskit-header-search .ekit-wid-con {
    display: flex;
}

.tt-border-helper::before {
  content: '';
  border-bottom-left-radius: 64px !important;
  border-bottom-right-radius: 64px !important;
}

.tt-border-helper-lg::before {
  content: '';
  border-radius: 0 0 168px 168px !important;

}

.tt-border-helper-full::before {
  content: '';
  border-radius: 64px !important;
}

.tt-job-details-box {
  min-width: 460px;
}

.tt-download-btn-wrap {
    display: flex;
    flex-direction: column;
    gap: 24px;
    list-style-type: none;
    padding: 0;
}

.tt-download-btn {
  display: inline;
  border-bottom: 2px solid;
  transition: opacity .3s;
}

.tt-download-btn svg {
  transform: translateY(-1.5px);
  vertical-align: middle;
}

.tt-download-btn:hover {
    opacity: 0.7;
}


/* overwrite style of pagination bullets in carousel elements */

.owl-dots .owl-dot,
span.swiper-pagination-bullet {
    opacity: 1;
    background-color: transparent !important;
    border: 2px solid #C8C7C7 !important;
}

.owl-dots .owl-dot.active,
span.swiper-pagination-bullet-active {
    background-color: #C8C7C7 !important;    
}


/* service template page */


/* overwrite service template accordion */

.tt-service-accordion details:nth-child(odd).e-n-accordion-item {
   background-color: #F4F5F6;
}

.tt-service-accordion details:nth-child(2).e-n-accordion-item {
   background: linear-gradient(93deg, #1F2B42 8.73%, #1E377C 104.06%) !important;
}

.tt-service-accordion details.e-n-accordion-item.last-item,
.tt-service-accordion details:nth-child(4).e-n-accordion-item {
   background-color: #F9FAFB;
}

.tt-service-accordion details summary.e-n-accordion-item-title {
    justify-content: space-between !important;
  align-items: flex-start;
} 

summary.e-n-accordion-item-title,
#tt-service-accordion__item--1 div,
#tt-service-accordion__item--2 div,
#tt-service-accordion__item--3 div,
#tt-service-accordion__item--4 div {
    z-index:  1;
}

details#tt-service-accordion__item--1::after,
details#tt-service-accordion__item--3::after{
    content: '';
    background: linear-gradient(93deg, #1F2B42 8.73%, #1E377C 104.06%);
    border-radius: 0 0 64px 64px; 
    width: 100%;
    height: 100%;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 0;
}

details#tt-service-accordion__item--2::after,
details#tt-service-accordion__item--4::after {
    content: '';
    background-color: #F4F5F6;
    border-radius: 0 0 64px 64px; 
    width: 100%;
    height: 100%;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 0;
}

details#tt-service-accordion__item--2 .tt-service-accordion__item-inner {
   background: linear-gradient(93deg, #1F2B42 8.73%, #1E377C 104.06%) !important;
}

details#tt-service-accordion__item--2 .tt-service-accordion__item-inner::after {
    content: '';
    background-color: #F4F5F6;
    border-radius: 0 0 64px 64px;
    width: 100%;
    height: 100%;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: -1;
}

/* quote section overwrite */
.elementor-widget-testimonial-carousel .elementor-testimonial__text,
.elementor-testimonial--skin-default.elementor-testimonial--layout-image_left .elementor-testimonial__cite {
  font-style: normal !important;
}

/* mission accordion overwrites */ 

/* always remove paragraph spacing from last element */
#tt-mission-accordion p:last-child {
    margin-block-end: 0;
}

#tt-mission-accordion details {
    border: 1.5px solid #C8C7C7;
    border-radius: 24px;
    overflow: hidden;
    position: relative;
}

#tt-mission-accordion details summary {    
    justify-content: space-between !important;
  align-items: flex-start !important;
}

#tt-mission-accordion details:hover {
    border: 1.5px solid #C8C7C7;
    border-radius: 24px;
}

#tt-mission-accordion details::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background: none;
    opacity: 0;
    transition: background .6s, opacity .6s;
    z-index: 0;
    pointer-events: none;
}

#tt-mission-accordion details:hover::before {
    opacity: 1;
    background: linear-gradient(77deg, #274FAA 10.25%, #C16242 89.14%);
}

/* timeline styles */
#tt-timeline-carousel {
    position: static;
}

#tt-timeline-carousel .elementor-widget-container {
    position: sticky;
    top: 20%;
    height: auto;
    border-radius: 24px !important;
    overflow: hidden;
}

/* start page */

.tt-hero-section .elementor-element-85bd38e {
    aspect-ratio: 1440 / 978 !important;
}

.page-id-16 .tt-hero-img img {
    aspect-ratio: 1440 / 978;
}

.page-id-16 .tt-hero-title h1 {
    display: flex;
    flex-direction: column;
    gap: 9px;
    line-height: 1.1 !important;
    width: 100%;
    max-width: 720px;
}

.page-id-16 .tt-hero-title h1 span:nth-child(2) {
    width: auto;
    align-self: flex-end;
}

.page-id-16 .tt-hero-stats .ekit-heading__description {
    display: inline;
}

.page-id-16 .ekit-heading.elementskit-section-title-wraper.text_left.ekit_heading_tablet-text_left.ekit_heading_mobile-text_center {
    display: flex;
    flex-direction: column;
    gap: 0.5vw;
}

.page-id-16 .ekit-wid-con .elementskit-section-title,
.page-id-16 .ekit-heading__description p {
    margin: 0 !important;
}

/* hide the title and first paragraph in service tabs for largest resolution */
.tt-service-tabs--start .uc-items-wrapper .owl-item .uc_dark_carousel_content .ue-title {
    display: none !important;
}

.tt-service-tabs--start .uc-items-wrapper .owl-item .uc_dark_carousel_content .ue-title + p {
    display: none !important;
}

.tt-service-tabs--start .uc-items-wrapper .owl-item .uc_dark_carousel_content p:nth-of-type(2) {
    margin-top: 0 !important;
}

/* company section - horizontal scroll widget */
.sticky-horizontal-section {
  height: auto;
  position: relative;
  overflow: hidden;
}

.sticky-wrapper {
  position: sticky;
  top: 0;
  height: auto;
  background: transparent;
}

.horizontal-scroll-container {
  display: flex;
  gap: 32px;
  height: 100%;
  width: 300vw; /* enough width for multiple cards */
  transition: transform 0.25s;
}

.scroll-card {
  flex: 0 0 330px;
  height: 100%;
  max-height: 300px;
  border-radius: 16px;
  background-position: center;
  background-size: cover;
}


/* client logos */
.tt-gradient-icon-mask {
  display: inline-block;
  background: #3A414E;
  transition: none !important;
  height: 100%; 
}
.tt-gradient-icon-mask:hover {
  background: linear-gradient(77deg, #274FAA 10.25%, #C16242 89.14%);
}

/* service cards */
.tt-department-box .simple-card .ekit-image-box-body {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

/* career section */
.tt-career-section__header {
    margin: 0 64px !important;
}

/* service page */

.tt-service-diagram > div:nth-child(1) {
    border-right: 1px solid #3A414E;
    border-bottom: 1px solid #3A414E;
}
.tt-service-diagram > div:nth-child(2) {
    border-left: 1px solid #3A414E;
    border-bottom: 1px solid #3A414E;
}
.tt-service-diagram > div:nth-child(3) {
    border-right: 1px solid #3A414E;
    border-top: 1px solid #3A414E;
}
.tt-service-diagram > div:nth-child(4) {
    border-left: 1px solid #3A414E;
    border-top: 1px solid #3A414E;
}

/* arrow positioning */
.tt-service-diagram > div::after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    position: absolute;
}

.tt-service-diagram > div:nth-child(1)::after {
    top: 0;
    right: 0;
    transform: translate3d(calc(50% + 0.5px), -100%, 0);
    border-left: 4.325px solid transparent;
    border-right: 4.325px solid transparent;
    border-bottom: 7.5px solid #3A414E;
}

.tt-service-diagram > div:nth-child(2)::after {
    bottom: 0;
    right: 0;
    transform: translate3d(100%, calc(50% + 0.5px), 0);
    border-top: 4.325px solid transparent;
    border-bottom: 4.325px solid transparent;
    border-left: 7.5px solid #3A414E;
}

.tt-service-diagram > div:nth-child(3)::after {
    top: 0;
    left: 0;
    transform: translate3d(-100%, calc(-50% - 0.5px), 0);
    border-top: 4.325px solid transparent;
    border-bottom: 4.325px solid transparent;
    border-right: 7.5px solid #3A414E;
}

.tt-service-diagram > div:nth-child(4)::after {
    bottom: 0;
    left: 0;
    transform: translate3d(calc(-50% - 0.5px), 100%, 0);
    border-left: 4.325px solid transparent;
    border-right: 4.325px solid transparent;
    border-top: 7.5px solid #3A414E;
}



/* .elementor-422 .elementor-element.elementor-element-6688fbfa .ekit-offcanvas-toggle-wraper a.ekit_offcanvas-sidebar {
    align-items: center;
}
.elementor-422 .elementor-element.elementor-element-6688fbfa .ekit-wid-con .ekit-sidebar-widget .ekit_widget-heading.before :is(svg, i) {
  margin: 5px;
    margin-right: 5px !important;
} */

/* servicetabs section */

.tt-service-tabs .ue-remote-tabs .uc-items-wrapper {
  border-left: 2px solid rgba(200, 199, 199, 0.35);
  flex-wrap: nowrap !important;
}

.tt-service-tabs .uc-items-wrapper .ue-item:not(:last-child) {
  border-bottom: 2px solid rgba(200, 199, 199, 0.35) !important;
}

.tt-service-tabs .ue-remote-tabs .uc-items-wrapper .ue-item:hover .ue-item-title,
.tt-service-tabs .ue-remote-tabs .uc-items-wrapper .ue-item-active .ue-item-title {
  background: linear-gradient(77deg, #859FDD 10.25%, #C16242 89.14%);
  width: fit-content;
  background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.tt-service-tabs .ue-remote-tabs .uc-items-wrapper .ue-item-active::before,
.tt-service-tabs .ue-remote-tabs .uc-items-wrapper .ue-item:hover::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: -2px;
    width: 2px;
    height: calc(100% + 2px);
    background: linear-gradient(180deg, #859fdd 0%, #c16242 100%);
}

.tt-service-tabs .ue-remote-tabs .uc-items-wrapper .ue-item .ue-item-title::before {
    content: url('data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2218%22%20height%3D%2230%22%20viewBox%3D%220%200%2018%2030%22%20fill%3D%22none%22%3E%3Cpath%20d%3D%22M16.8947%200.030303C17.1081%200.163636%2017.0547%200.683636%2016.7347%201.5903C16.4414%202.49697%2015.9481%203.6703%2015.2547%205.1103C14.5614%206.5503%2013.7347%208.1503%2012.7747%209.9103C11.8414%2011.6703%2010.8414%2013.4703%209.77474%2015.3103C8.73474%2017.1503%207.6814%2018.9236%206.61474%2020.6303C5.57474%2022.3103%204.6014%2023.817%203.69474%2025.1503C2.78807%2026.457%202.01474%2027.4703%201.37474%2028.1903C0.761404%2028.9103%200.34807%2029.2036%200.134737%2029.0703C-0.0785965%2028.937%20-0.0385965%2028.417%200.254737%2027.5103C0.574737%2026.6036%201.06807%2025.4303%201.73474%2023.9903C2.42807%2022.5503%203.2414%2020.9503%204.17474%2019.1903C5.13474%2017.4303%206.13474%2015.6436%207.17474%2013.8303C8.2414%2011.9903%209.29474%2010.2303%2010.3347%208.5503C11.4014%206.84364%2012.3881%205.33697%2013.2947%204.0303C14.2014%202.69697%2014.9747%201.6703%2015.6147%200.950303C16.2547%200.203636%2016.6814%20-0.10303%2016.8947%200.030303Z%22%20fill%3D%22%23C8C7C7%22%20fill-opacity%3D%220.65%22%2F%3E%3C%2Fsvg%3E');
    display: inline-flex;
    vertical-align: middle;
}

.tt-service-tabs .ue-remote-tabs .uc-items-wrapper .ue-item-active .ue-item-title::before,
.tt-service-tabs .ue-remote-tabs .uc-items-wrapper .ue-item:hover .ue-item-title::before {
    content: url('data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2218%22%20height%3D%2230%22%20viewBox%3D%220%200%2018%2030%22%20fill%3D%22none%22%3E%3Cpath%20d%3D%22M16.8947%200.030303C17.1081%200.163636%2017.0547%200.683636%2016.7347%201.5903C16.4414%202.49697%2015.9481%203.6703%2015.2547%205.1103C14.5614%206.5503%2013.7347%208.1503%2012.7747%209.9103C11.8414%2011.6703%2010.8414%2013.4703%209.77474%2015.3103C8.73474%2017.1503%207.6814%2018.9236%206.61474%2020.6303C5.57474%2022.3103%204.6014%2023.817%203.69474%2025.1503C2.78807%2026.457%202.01474%2027.4703%201.37474%2028.1903C0.761404%2028.9103%200.34807%2029.2036%200.134737%2029.0703C-0.0785965%2028.937%20-0.0385965%2028.417%200.254737%2027.5103C0.574737%2026.6036%201.06807%2025.4303%201.73474%2023.9903C2.42807%2022.5503%203.2414%2020.9503%204.17474%2019.1903C5.13474%2017.4303%206.13474%2015.6436%207.17474%2013.8303C8.2414%2011.9903%209.29474%2010.2303%2010.3347%208.5503C11.4014%206.84364%2012.3881%205.33697%2013.2947%204.0303C14.2014%202.69697%2014.9747%201.6703%2015.6147%200.950303C16.2547%200.203636%2016.6814%20-0.10303%2016.8947%200.030303Z%22%20fill%3D%22%23859FDD%22%20%2F%3E%3C%2Fsvg%3E');
}

.tt-service-tabs .owl-carousel .owl-stage, 
.tt-service-carousel--start .owl-carousel .owl-stage {
  display: flex;
  align-items: center;
}

.tt-service-tabs .ue-remote-tabs .uc-items-wrapper::after {
  content: '';
  display: block;
  width: 0;
  height: 0;
  border-left: 4.325px solid transparent;  /* half of width */
  border-right: 4.325px solid transparent; /* half of width */
  border-top: 7.5px solid #5B6271;         /* triangle height and color */
  position: absolute;
  bottom: 0;
  left: 0;
  transform: translate3d(calc(-50% + 1px), 100%, 0);
}

.tt-servicetabs .tab-content {
  padding: 64px 0 !important;
}

.tt-servicetabs .tab-content .tab-pane {
  line-height: 1.35;
  font-size: 24px;
  margin: 0;
}

.tt-servicetabs .elementkit-nav-link {
    text-align: left !important;
}

.tt-servicetabs .elementkit-nav-link.active::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: -2px;
    width: 2px;
    height: calc(100% + 2px);
    background: linear-gradient(180deg, #859fdd 0%, #c16242 100%);
}

.tt-servicetabs .tt-servicetabs__link {
  display: block;
  margin-top: 32px !important;
  color: #FFF;

  /* Textlink */
  font-family: Syne, sans-serif;
  font-weight: 500;
  line-height: 1.2;
  text-decoration-line: underline;
  text-decoration-skip-ink: none;
  text-decoration-thickness: auto;
  text-underline-offset: auto;
  text-underline-position: from-font;
  text-transform: uppercase;
}

#tt-service-accordion__item--1 .e-n-accordion-item-title-header, 
#tt-service-accordion__item--3 .e-n-accordion-item-title-header {
    color: #fff;
}

/* service page - process */
.tt-phase-process__departments {
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.tt-phase-process__departments > div,
.tt-phase-process__departments .elementor-icon-wrapper {
  height: 100%;
  max-height: 52px;
}

.tt-phase-process__legend svg {
  margin: 0 !important;
}

.tt-phase-process__tooltip {
  position: relative !important;
  
}

.tt-phase-process__item {
  position: relative;
}

.tt-phase-process__item:nth-of-type(1)::after, 
.tt-phase-process__item:nth-of-type(2)::after {
    content: '';
    background: url('/wp-content/uploads/2025/11/next-phase-arrow.svg') #E6E6E6;
    background-repeat: no-repeat;
    background-position: center;
    border-radius: 100px;
    position: absolute;
    width: 72px;
    height: 72px;
    z-index: 1;
    left: 100%;
    top: 50%;
    transform: translate3d(calc(-50% + 4px), -50%, 0); /* add 4px to account for half the gap */
}


.tt-phase-process__tooltip::before {
      content: '';
      position: absolute;
      width: 16px;
      height: 16px;
      right: -4px;
      top: -4px;
      z-index: 2;
      background: url('/wp-content/uploads/2025/11/info-tooltip.svg') no-repeat center/contain;
      cursor: pointer;
      transition: filter 0.2s;
}

.tt-phase-process__tooltip {
  position: relative;
  display: inline-block;
}

.tt-tooltip-wrap {
  position: relative !important;
}

.tt-tooltip-wrap > .elementor-widget-html {
   pointer-events: none;
}

.tt-tooltip-wrap:hover > .elementor-widget-html .tt-tooltip-text {
  opacity: 1;
  pointer-events: none;
}

.tt-tooltip-text {
    padding: 8px 16px;
    background: linear-gradient(38deg, #1F2B42 15.53%, #1E377C 94.02%);
    color: #fff;
    border-radius: 8px;
    font-size: 14px;
  line-height: 1.35;
    opacity: 0;
  font-weight: 500;
    pointer-events: none;
    transition: opacity 0.25s;
    position: relative;
    z-index: 3;
    width: 100%;
  min-width: 320px;
  max-width: 320px;
    height: auto;
    display: inline-flex;
}

.tt-tooltip-text::before {
  content: '';
  position: absolute;
  bottom: -8px;             /* pull it just above the box */
  left: 24px;            /* offset from the left edge; adjust to taste */
  width: 0;
  height: 0;
  border-left: 8px solid transparent;
  border-right: 8px solid transparent;
  border-top: 8px solid #232446; /* matches box background */
  z-index: 4;
}

.page-id-3216 .elementkit-nav-item .elementskit-tab-title {
  display: block;         
  text-align: left;
}

/* Show pre tab title and text beneath as pseudo elements */
.page-id-3216 .elementkit-nav-link .elementskit-tab-title::before,
.page-id-3216 .elementkit-nav-link.active .elementskit-tab-title::before {
    content: '/ Phase eins';
    display: block;
    width: fit-content;   
    font-family: Syne;
    font-size: 32px;
    font-weight: 500;
    line-height: 115%;
    text-transform: uppercase;
    margin-bottom: 8px; /* Spacing below */
    text-align: left;     /* Prevent centering if inherited */
    color: rgba(200,199,199,0.65);
}

.page-id-3216 .elementkit-nav-link.active .elementskit-tab-title::before {
  background: linear-gradient(77deg, #859FDD 10.25%, #C16242 89.14%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.page-id-3216 .elementkit-nav-link .elementskit-tab-title::after {
    content: 'FAU, Industrie, NMF';
    display: flex;
    width: 100%;
    height: 100%;
    margin-top: 8px;
  color: rgba(200,199,199,0.65);
    font-family: "General Sans";
    font-size: 24px;
    font-style: normal;
    font-weight: 400;
    line-height: 135%; /* 32.4px */
}

.page-id-3216 .elementkit-nav-link.active .elementskit-tab-title::after {
  color: #fff;
}

/* service page - expertise */
.tt-service-card .elementor-widget-container .uc_long_content_box_holder .uc_overlay {
  background-image: linear-gradient(180deg, rgba(27, 28, 32, 0.00) 0%, rgba(27, 28, 32, 0.54) 65.87%, rgba(27, 28, 32, 0.60) 100%);
  background-color: transparent !important;
  opacity: 100% !important;  
}

.tt-service-card .elementor-widget-container .uc_long_content_box_holder:hover .uc_overlay {
  background: #1B1C20 !important;
  opacity: 85% !important;
}

.tt-service-card .elementor-widget-container .uc_long_content_box_holder:hover .uc_long_content_box_box .uc_box_content {
   justify-content: center; 
}

.tt-department-grid-section .uc_description {
  display: -webkit-box;          
  -webkit-box-orient: vertical;  
  -webkit-line-clamp: 8;        
  line-clamp: 8;                
  overflow: hidden;             
  text-overflow: ellipsis;      
}

/* service page - machines */
.tt-hotspot .e-hotspot__tooltip h5 {
  margin: 0 0 12px; 
  color: #1B1C20;
  font-size: 22px;
}

.tt-hotspot .e-hotspot__tooltip .p2 {
  margin: 12px 0 8px;
}


/* contact page */ 

.tt-contact-card-wrap {
  max-width: 790px !important;
}

/* form overwrites */
.tt-form .ue-confirm-field-item-label{
    align-items: flex-start !important;
}

.tt-form label {
  padding-left: 16px;
}

/* reset the background color to transparent to make semi-transparent backgrounds work */
.tt-form .ue-content-field-holder,
.tt-form .ue-phone-field-holder,
.tt-form .ue-form-email-input-error,
.tt-form .ue-email-field-holder {
  background-color: transparent !important; 
}

.tt-form .ue-confirm-field-item-input:checked + .ue-confirm-field-item-label:after {
    content: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2220%22%20height%3D%2216%22%20viewBox%3D%220%200%2020%2016%22%20fill%3D%22none%22%3E%0A%3Cpath%20d%3D%22M0.783881%205.5705C1.75345%204.66277%203.245%204.74672%204.11478%205.75925L7.67612%209.90214L15.925%200.773011C16.819%20-0.216156%2018.3118%20-0.262237%2019.2596%200.670749C20.2074%201.60374%2020.2509%203.16166%2019.3575%204.15082L9.34913%2015.2273C8.90336%2015.721%208.28218%2016%207.63317%2016C7.6235%2016%207.61382%2016%207.60354%2016C6.94365%2015.9912%206.31763%2015.6951%205.8767%2015.1825L0.603031%209.04742C-0.26674%208.03553%20-0.186295%206.47887%200.783881%205.57113V5.5705Z%22%20fill%3D%22white%22%2F%3E%0A%3C%2Fsvg%3E") !important;
    transform: rotate(0) !important;
    background: transparent !important;
    width: auto !important;
    height: auto !important;
    top: 8px;
}

.tt-form .elementor-field-type-acceptance {
  margin: 16px 0 !important;
  padding: 0 36px !important;
}

.tt-form .elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option {
    display: flex;
    flex-direction: row;
    align-items: center;
}

.tt-form .elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option input {
    width: 24px;
    height: 24px;    
}

.tt-form .elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option label {
    padding: 0 0 0 16px;
    color: #ECECEC !important;
    font-size: 16px !important;
    line-height: 1.35 !important;
}

/* company page */
/* overwrite centering of the element */
.page-id-1757 .tt-hero-content-wrap {
  margin: 0 !important;
}

.tt-company-hero {
    aspect-ratio: 1440 / 824;
}

#tt-mission-accordion details summary {
    align-items: center !important;
}

/* center the quote inside the diagram tile */
.tt-service-diagram > div:nth-child(1) .ekit-wid-con {
   height: 100%;
   display: flex;
   justify-content: center;
   align-items: center;
}

/* career page */  
.tt-masonry-grid .e-con .elementor-widget.elementor-widget {
  height: 100%;
  display: flex;
  align-items: center;
}

.tt-career-img--square img {
  aspect-ratio: 1 / 1;
}

.tt-career-img--portrait img {
  aspect-ratio: 265 / 361;
}

.tt-career-img--landscape img {
  aspect-ratio: 489 / 325;
}

/* benefits section */
.tt-flipbox {
    max-width: 237px !important;
    aspect-ratio: 237 / 288;
}

.tt-benefits-grid {
    align-self: center !important;
}

/* appliation steps slider dots */
#uc_content_slider_new_elementor_bb65330 .owl-dots {
  display: none !important;
}

/* apply overlay to image */
#tt-cta-team .elementor-widget-image {
    position: relative;
    /* Apply mask here if using mask-image */
    -webkit-mask-image: url('/wp-content/uploads/2025/11/mask-cta-team.svg');
    mask-image: url('/wp-content/uploads/2025/11/mask-cta-team.svg');
    -webkit-mask-size: contain;
    mask-size: contain;
    mask-repeat: no-repeat;
    height: 100%;
    max-height: 331px;
}

#tt-cta-team .elementor-widget-image::before {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    background: linear-gradient(180deg, rgba(31, 43, 66, 0.26) -19.18%, rgba(31, 43, 66, 0.65) 67.4%);
    z-index: 1;
}

/* Multistep Form */
#uc_simple_popup_elementor_3bc12ad .ue-simple-popup-wrapper,
#uc_simple_popup_elementor_a827e30 .ue-simple-popup-wrapper {
  width: 90vw;
  max-width: 700px;
  height: 100%;
  max-height: 90vh !important;
  overflow-y: hidden !important;
}

/* remove standard padding around multistep items */
.tt-multistep-application .owl-item {
  padding: 0 !important;
}

/* downloads page */
.tt-downloads-hero-wrap .elementor-widget-text-editor {
  margin: 0;
    height: calc(100% - 127px);
    align-items: center;
    justify-content: center;
    display: flex;
}

/* service subpage - machines */
.tt-service-machines-hero-wrap img {
  object-fit: cover;
  object-position: 45% !important;
}

/* service subpage - expertise */
.page-id-3006 .tt-hero-section .elementor-widget-image img {
  aspect-ratio: 707 / 412;
}

/* service subpage - process */
.tt-service-tabs .uc_dark_carousel_content p:last-child {
    display: none; /* hide the last empty paragraph that adds spacing */
}

.tt-service-cta-grid .elementor-widget-elementskit-icon-box .box-body {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
}

.tt-service-cta-grid .elementor-widget-elementskit-icon-box:nth-of-type(2) .box-footer {
    width: 100%;
    padding-left: 16px;
}

.tt-service-cta-grid .elementor-widget-elementskit-icon-box:nth-of-type(2) .box-body {
    align-items: flex-end;
}

.tt-service-cta-grid .elementor-widget-elementskit-icon-box:nth-of-type(2) .box-body .btn-wraper {
    display: flex;
    justify-content: flex-end;
}

.tt-service-cta-grid .elementor-widget-elementskit-icon-box:nth-of-type(2) .box-body .btn-wraper a {
  text-align: right !important;
}

.tt-service-cta-grid .elementor-widget-elementskit-icon-box:nth-of-type(2) .box-body p {
    max-width: 430px;
}

/* job post template and career carousel tags */

.tt-job-post-tags .elementor-post-info .elementor-post-info__terms-list-item,
.tt-job-post-tags .elementor-post-info li {
	display: inline-block;
}

.tt-job-post-tags .elementor-post-info .elementor-post-info__terms-list-item {
	  color: #3a414e;
    border: 1px solid #3a414e;
    padding: 10px 16px;
    border-radius: 100px;
    line-height: 0.75;
    font-family: Syne, sans-serif;
    margin-top: 8px;
    display: inline-block !important;
}

.home .tt-job-post-tags .elementor-post-info .elementor-post-info__terms-list-item,
.page-id-1757 .tt-job-post-tags .elementor-post-info .elementor-post-info__terms-list-item {
    color: #C8C7C7;
    border: 1px solid #C8C7C7;
}


footer {
    background-color: #F4F5F6;
    max-width: 1440px;
    margin: 0 auto;
}

/* ########## START Imprint/Legal Content styling ########### */

/* Style the main imprint containers */
#lc-text-AgencyClient_DSE-de, 
#lc-text-AgencyClient_Imprint-de {
    padding: 0;
    color: #3A414E;
    line-height: 1.35;
}

#lc-text-AgencyClient_DSE-de a,
#lc-text-AgencyClient_Imprint-de a {
    color: #3A414E;
    text-decoration: underline;
    text-underline-offset: 2px;

    overflow-wrap: break-word;
    word-wrap: break-word;
    word-break: break-word;
    -ms-hyphens: auto;
    -moz-hyphens: auto;
    -webkit-hyphens: auto;
    hyphens: auto;
}

#lc-text-AgencyClient_DSE-de a:hover, 
#lc-text-AgencyClient_Imprint-de a:hover {
    color: #3a414eb3;
}

#lc-text-AgencyClient_DSE-de h2,
#lc-text-AgencyClient_DSE-de h3,
#lc-text-AgencyClient_DSE-de h4,
#lc-text-AgencyClient_DSE-de h5,
#lc-text-AgencyClient_Imprint-de h2,
#lc-text-AgencyClient_Imprint-de h3,
#lc-text-AgencyClient_Imprint-de h4,
#lc-text-AgencyClient_Imprint-de h5 {
    font-weight: 400;
    color: #1B1C20;
    line-height: 1.15;
}

/* Main heading styling */
#lc-text-AgencyClient_DSE-de h2,
#lc-text-AgencyClient_Imprint-de h2 {
    font-size: 30px;
    margin: 32px 0 24px;
}

/* Section headings */
#lc-text-AgencyClient_DSE-de h3,
#lc-text-AgencyClient_Imprint-de h3 {
    font-size: 24px;
    margin: 32px 0 24px;
    border-bottom: 1px solid var(--Grey-200, #D2D4D5);
    padding-bottom: 12px;
}

/* First section heading (no top margin) */
#lc-text-AgencyClient_DSE-de h3:first-of-type,
#lc-text-AgencyClient_Imprint-de h3:first-of-type {
    margin-top: 0;
}

#lc-text-AgencyClient_DSE-de h4,
#lc-text-AgencyClient_Imprint-de h4 {
    font-size: 20px;
    margin: 40px 0 24px 0;
}

/* First section heading (no top margin) */
#lc-text-AgencyClient_DSE-de h4:first-of-type,
#lc-text-AgencyClient_Imprint-de h4:first-of-type {
    margin-top: 0;
}

#lc-text-AgencyClient_DSE-de strong,
#lc-text-AgencyClient_Imprint-de strong {
    display: block;
}

#lc-text-AgencyClient_DSE-de h5,
#lc-text-AgencyClient_Imprint-de h5 {
    font-size: 20px;
    text-transform: none;
    margin: 20px 0 8px;
}

/* Paragraph styling */
#lc-text-AgencyClient_DSE-de p,
#lc-text-AgencyClient_Imprint-de p {
    color: #3A414E;
    font-size: 18px;
    line-height: 1.35;
    margin-bottom: 12px;
}

/* Address block styling */
#lc-text-AgencyClient_DSE-de div,
#lc-text-AgencyClient_Imprint-de div {
    margin-bottom: 24px;
}

/* Add spacing between sections */
#lc-text-AgencyClient_DSE-de > div,
#lc-text-AgencyClient_Imprint-de > div {
    margin-top: 0;
    padding-top: 24px;
}

/* target telefax div only */
#lc-text-AgencyClient_Imprint-de > div:nth-of-type(3) {
  /* styles for telefax div */
  padding-top: 0px !important;
  margin-bottom: 0px !important;
}

/* Style breaks */
#lc-text-AgencyClient_Imprint-de br {
    display: none;
}

#lc-text-AgencyClient_DSE-de div p:nth-child(6),
#lc-text-AgencyClient_Imprint-de div p:nth-child(6) {
    margin-bottom: 24px;
}

.tt-cookiebanner-link {
    font-family: "General Sans", Sans-serif;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.25em;
}

.tt-cookiebanner-link .elementor-icon-list-text {
    color: #FFFFFF;
    transition: color 0.3s;
}

.tt-cookiebanner-link .elementor-icon-list-text:hover {
    color: #FFFFFFB3;
}

/* fix elementskit overwrites in cookie banner */ 
#c-inr a {
    font-weight: inherit !important;
    font-family: inherit !important;
    line-height: 1.2 !important;
}

.cc-custom-btn {
    font-size: 1em !important;
    font-family: inherit !important;
    font-weight: bold !important;
    border-radius: .35em !important;
    padding: 1em 1.7em !important;
    border-width: 0 !important;
}

.cc_div .c-bn{
    font-family: inherit !important;
    font-size: .82em !important;
    font-weight: 600 !important; 
    border-width: 0 !important;
    border-radius: .35em !important;
    padding: 1em 1.7em !important;
}

.cc-custom-bold, .cc-custom-bold:hover {
    font-weight: 700 !important;
}

/* close button in cookie settings modal */
#s-c-bn {
    padding: 0 !important;
    font-size: 1.45em !important;
    font-weight: initial !important;
    border-radius: .35em !important;
}

/* cookie details accordion */
#s-cnt .b-bn .b-tl {
    border: 0px;
    color: inherit;
}

.cc_div .b-bn .exp:before, 
.cc_div .act .b-bn .exp:before {
    border-color: inherit !important;
}

/* Responsive adjustments */
@media only screen and (max-width: 768px) {
    
    #lc-text-AgencyClient_DSE-de h2,
    #lc-text-AgencyClient_Imprint-de h2 {
        font-size: 24px;
        margin-bottom: 32px;
    }
    
    #lc-text-AgencyClient_DSE-de h3,
    #lc-text-AgencyClient_Imprint-de h3 {
        font-size: 20px;
        margin: 32px 0 16px 0;
    }

    .tt-cookiebanner-link .elementor-icon-list-text {
      font-size: 14px;
      line-height: 20px;
    }

    /* adjust width of cookie banner link */
    .elementor-element-47c6787 {
      width: auto !important;
    }
}


/* ########## END Imprint/Legal Content styling ########### */



@media only screen and (min-width: 1500px) {
  /* center first 2 sections on start page */
  .page-id-3227 .e-con-full.elementor-element,
  .page-id-16 .e-con-full.elementor-element {
    margin-left: auto;
    margin-right: auto;
  }
}

@media only screen and (max-width: 1480px) {
  footer.elementor {
    margin: 0 20px;
  }
}

@media only screen and (max-width: 1280px) {
  
  .tt-service-tabs--start {
    gap: 6% !important;  
  }

  .tt-service-tabs--start .ue-remote-tabs .uc-items-wrapper {
    justify-content: space-between !important;
  }
  
  /* hide the title and first paragraph in service tabs for largest resolution */
  .tt-service-tabs--start .uc-items-wrapper .owl-item .uc_dark_carousel_content .ue-title {
    display: block !important;
  }

  .tt-service-tabs--start .uc-items-wrapper .owl-item .uc_dark_carousel_content p:nth-of-type(2) {
    margin-top: 24px !important;
  }

  .tt-service-tabs--start .ue-item-text {
    display: none !important;
  }

  .tt-service-tabs--start .ue-remote-tabs .uc-items-wrapper .ue-item-active::before, 
  .tt-service-tabs--start .ue-remote-tabs .uc-items-wrapper .ue-item:hover::before {
    content: unset;
  }

  .tt-service-tabs--start .ue-remote-tabs .ue-item {
    border: none !important;
  } 

  .tt-service-tabs--start .ue-remote-tabs .ue-item-link {
    padding: 0 !important;
  }

  .tt-service-tabs--start .ue-remote-tabs .ue-item-title {
    font-size: clamp(20px, 2vw, 32px) !important;
  }

}

@media (min-width: 1025px) and (max-width: 1200px) {
  .tt-career-hero-content {
      transform: translateY(-22vw) !important;
  }
}

@media (min-width: 1025px) and (max-width: 1280px) {

  /* start page */

  .tt-hero-section div.elementor-element-85bd38e {
      gap: 4vw !important;
  }

  .page-id-16 .tt-hero-title {
    width: 100% !important;
  }

  .page-id-16 .tt-hero-title h1 {
    gap: 0.5vw !important;
    font-size: 5.5vw !important;
  }

  .tt-hero-section .elementor-element-ba14d98 p {
    font-size: 2.5vw !important;
  }

  .tt-hero-section .elementor-widget-button {
    margin-top: 2.5vw !important;
  }

  .page-id-16 .tt-hero-title h1 span:nth-child(2) {
    align-self: flex-start !important;
  }

  .tt-service-tabs--start .uc_dark_carousel_content {
    min-height: 444px !important;
    padding: 6% !important;
  }

  .tt-service-carousel--start {
    display: block !important;
  }
 
  /* downloads page - hero area overwrites */
  body:not(.rtl) .elementor-2973 .elementor-element.elementor-element-f1c8aa7 {
      right: 32px; /* h1 in hero area */
  }
  
  .tt-downloads-hero-wrap {
    grid-template-columns: 1fr 45% !important;
    gap: 48px 48px !important;
  }
  
  /* contact page - help area overwrites */
  .tt-contact-hero-wrap {
    grid-template-columns: 1fr 52% !important;
    gap: 48px 48px !important;
    padding-top: 100px !important;
  }
  
  .tt-contact-hero-wrap .elementor-widget-image img {
    height: 340px !important;
  }
  
  .tt-contact-form-section .elementor-element-36b0dde {
    gap: 48px;
    grid-template-columns: 33.3% 1fr !important;
  }
  
  /* address grid adjustments */
  .tt-company-address {
    grid-template-columns: repeat(auto-fit, minmax(171px, 1fr)) !important;
    gap: 16px 0px !important;
  }
  
  .tt-contact-person-section,
  .tt-contact-location-section > .e-grid {
    gap: 80px !important;
  }
  
  .tt-contact-person-wrap {
      grid-template-columns: 1fr !important;
    gap: 56px !important;
  }

  /* service page */
  .tt-xxl-text p {
    font-size: 40px !important;
  }

  /* service subpage - machines */
  .page-id-2777 .tt-hero-section .elementor-widget-heading {
    position: static !important;
  }

  .tt-service-machines-hero-wrap .e-con-inner {
    grid-template-columns: 1fr 45% !important;
    gap: 0 !important;
    padding-top: 48px !important;
  }

  .tt-service-machines-hero-wrap .e-con-inner .elementor-widget-text-editor {
      align-self: flex-start !important;
      padding: 0 !important;
      margin: 40px 0 0 0 !important;
      width: 420px !important;
      max-width: none !important;
      transform: translateX(-64px) !important;
  }

  /* service subpage - expertise */
  .page-id-3006 .tt-hero-section {
      grid-template-columns: 55% 1fr;
  }

  .page-id-3006 .tt-hero-section .elementor-element-8669192 {
      align-self: flex-end !important;
      margin-top: 188px !important;
  }

  .tt-service-expertise-hero-wrap {
      margin-top: 16px !important;
      justify-content: flex-end !important;
  }

  .page-id-3006 .tt-hero-section .elementor-widget-heading {
      position: absolute;
      width: 130%;
      top: 0;
      max-width: 800px !important;
  }

  .page-id-3006 .tt-hero-section .elementor-widget-text-editor {
      transform: translateY(-3.5vw);
  }

  .tt-department-grid-section .elementor-element-00fcdac .e-con-inner {
    grid-template-columns: 1fr !important;
    gap: 48px !important;
  }

  .tt-department-grid-section .elementor-element-00fcdac .elementor-widget-heading {
      max-width: 900px !important;
  }

  .tt-department-grid-section .elementor-element-46fb953 .elementor-grid {
    gap: 32px !important;
  }

  /* service subpage - process */

  .page-id-3227 .tt-hero-section .elementor-element-5ad17eb {
      align-self: flex-end !important;
      margin-top: 188px !important;
  }

  .page-id-3227 .tt-hero-section .elementor-widget-heading {
      position: absolute;
      width: 200%;
      top: 0;
      max-width: 800px !important;
  }

  .page-id-3227 .tt-hero-section .elementor-widget-text-editor {
      transform: translateY(216px);
  }

  .tt-phase-process__item .tt-slash-btn {
    font-size: 18px !important;
  }

  .tt-phase-process__item  .elementor-heading-title {
    font-size: 26px !important;
  }

  .tt-phase-process__item {
    padding: 32px !important;
  }

  .tt-phase-process__item:nth-of-type(1)::after, .tt-phase-process__item:nth-of-type(2)::after {
    width: 64px;
    height: 64px;
  }

    /* service tabs overwrites */

  .tt-service-tabs {
    grid-template-columns: 1fr !important;
  }

  .tt-service-tabs .ue-remote-tabs .uc-items-wrapper {
    flex-direction: row !important;
    border-left: none !important;
  }

  .tt-service-tabs .ue-remote-tabs .uc-items-wrapper::after {
    content: unset !important;
  }

  .tt-service-tabs--process .uc_dark_carousel_content {
    padding: 64px !important;
    min-height: 520px !important;
  }

  .tt-service-tabs .uc-items-wrapper .ue-item:not(:last-child) {
    border-bottom: none !important;
  }

  .tt-service-tabs--process .uc-items-wrapper .ue-item {
    border-left: 2px solid rgba(200, 199, 199, 0.35) !important;
  }

  .tt-service-tabs--process .uc-items-wrapper .ue-item-link {
    padding: 16px 5.5vw 16px 20px !important;
}

  .tt-service-tabs .ue-item-text {
    font-size: 30px !important;
    margin-top: 4px !important;
  }

  .ue-remote-tabs .ue-item-title {
    font-size: 20px !important;
  }

  .tt-service-tabs .ue-remote-tabs .uc-items-wrapper .ue-item .ue-item-title::before {
    transform: scale(0.75);
  }

  /* career page */
  .tt-benefits-grid {
    grid-template-columns: repeat(3, 1fr) !important;
    max-width: 760px;
  }

  /* hide the image box */
  .tt-benefits-grid > div:nth-child(2) {
    display: none !important;
  }

  .tt-career-workplace-section {
    padding: 64px 0 128px !important;
  }

  /* workplace section - adjust column width of text tile */
  .elementor-3053 .elementor-element.elementor-element-d3014e9 {
    grid-template-columns: 40% 1fr !important;
  }

}


@media only screen and (max-width: 1024px) {
  
  /* general spacing left and right on website */
  div[data-elementor-type="wp-page"],
  div[data-elementor-type="single-post"],
  footer.elementor {
    margin: 0 10px;
  }
  
  .tt-download-btn span {
    font-size: 20px;
  }

  /* start page */

  .page-id-16 .tt-hero-title h1 {
    gap: 0.5vw !important;
    font-size: clamp(34px, 6vw, 72px) !important;
  }

  .tt-career-section__header {
      margin: 0 !important;
  }
  
  /* contact page */
  
  .tt-contact-form-section .tt-form {
    max-width: 740px;
  }

  /* career carousel overwrites */
  #tt-career-carousel .elementor-swiper-button {
      display: none;
  }
  
  .elementskit-menu-overlay {
    background-color: transparent !important;
  }

  .karriere-slider .elementor-widget-n-carousel .e-n-carousel.offset-both
    {
      padding-inline-start: unset;
    }
  .karriere-slider .elementor-widget-n-carousel .e-n-carousel.offset-both, 
  .karriere-slider .elementor-widget-n-carousel .e-n-carousel.offset-right {
      padding-inline-end: unset;
    }
  .elementor-422 .elementor-element.elementor-element-7305eeb .elementskit-nav-identity-panel
     {
     padding: 10px 0px 10px 0px;
     top: 30px;
    }
  .job-das-section .ekit-wid-con ul,
  .job-warum-neue-section .ekit-wid-con ul {
    font-size: 20px;
  }
  
  /* service page */

  .tt-service-hero-section {
    min-height: clamp(640px, 70vh, 942px) !important;
  }

  /* service template page */
  .tt-service-accordion details summary .e-n-accordion-item-title-icon {
      transform: translateX(8px); /* the svg icon is now 48px high but still 64px wide, move it by half the difference to the right */
  }

  .page-id-16 .elementor-swiper-button-prev,
  .page-id-16 .elementor-swiper-button-next,
  .elementor-page-1162 .elementor-swiper-button-prev,
  .elementor-page-1162 .elementor-swiper-button-next,
  .elementor-page-1757 .elementor-swiper-button-prev,
  .elementor-page-1757 .elementor-swiper-button-next {
    display: none !important; /* hide arrows on smaller screens */
  }

  /* service subpage - machines */
  .tt-hotspot .e-hotspot__tooltip h5 {
    font-size: 20px;
  }

  .page-id-2777 .tt-hero-section .elementor-widget-heading {
    position: static !important;
  }

  .tt-service-machines-hero-wrap .e-con-inner .elementor-widget-text-editor {
    width: 360px !important;
    max-width: none !important;
  }

  /* service subpage - process */
  .page-id-3227 .tt-hero-section .elementor-element-074b155 img {
    aspect-ratio: 740 / 412; 
    max-height: 360px;
  }

  .tt-phase-process__item {
    max-width: 475px;
  }

  .tt-phase-process__item:nth-of-type(1)::after, .tt-phase-process__item:nth-of-type(2)::after {
    left: 50%;
    top: 100%;
    transform: translate3d(-50%, 8px, 0) rotate(90deg);
  }

  /* service tabs overwrites */

  .tt-service-tabs .ue-remote-tabs .uc-items-wrapper {
    flex-direction: row !important;
    gap: 30px !important;
    border-left: none !important;
  }

  .tt-service-tabs .ue-remote-tabs .uc-items-wrapper::after {
    content: unset !important;
  }

  .tt-service-tabs .uc-items-wrapper .ue-item:not(:last-child) {
    border-bottom: none !important;
  }

  .tt-service-tabs .uc-items-wrapper .ue-item {
    border-left: 2px solid rgba(200, 199, 199, 0.35) !important;
  }

  .tt-service-tabs .ue-item-text {
    font-size: 26px !important;
    margin-top: 4px !important;
  }

  .tt-service-tabs .ue-remote-tabs .ue-item-title {
    font-size: 18px !important;
  }

  .tt-service-tabs .ue-remote-tabs .uc-items-wrapper .ue-item .ue-item-title::before {
    transform: scale(0.75);
  }

  .tt-service-cta-grid .elementor-widget-elementskit-icon-box {
    max-width: 568px !important;
  }

  .tt-service-cta-grid .elementor-widget-elementskit-icon-box .box-body p {
    max-width: 380px !important;
  }

  /* career page */
  .tt-benefits-grid {
    max-width: 760px;
  }

  .tt-team-grid {
    max-width: 292px;
  }
  

}


@media only screen and (max-width: 767px) {

  #uc_ue_side_menu_elementor_b0fdbed .menu-right-open {
      width: 90% !important;
  }

  .tt-mainmenu::after {
    content: unset;
  } 
  
  .tt-mainmenu .open_side_menu {
    justify-content: flex-end !important;
  }

  .tt-border-helper::before {
    content: '';
    border-bottom-left-radius: 32px !important;
    border-bottom-right-radius: 32px !important;
  }

  .tt-border-helper-lg::before {
    border-radius: 0 0 112px 112px !important;
  }

  .tt-border-helper-full::before {
    content: '';
    border-radius: 32px !important;
  }


  /* general spacing left and right on website */
  div[data-elementor-type="wp-page"],
  div[data-elementor-type="single-post"],
  footer.elementor {
    margin: 0;
  }
  
  .tt-textbutton a {
    text-decoration-thickness: 1px !important;
  }
  
  .tt-download-btn {
    border-bottom: 1px solid;
  }
  
  .tt-download-btn span {
    font-size: 18px;
  }
  
  /* start page */
  #tt-start-nl-form {
    position: relative !important;
    right: unset;
    top: unset;
  }

  .page-id-16 .tt-hero-section .elementor-widget-text-editor p {
    font-size: clamp(20px, 4vw, 34px) !important;
  }

  .page-id-16 .ekit-heading.elementskit-section-title-wraper.text_left.ekit_heading_tablet-text_left.ekit_heading_mobile-text_center {
    gap: 1.5vw !important; /* increase gap for stats */
  }

  .page-id-16 .tt-hero-img img {
    min-height: 380px;
  }

  /* company section - horizontal scroll widget */
  .horizontal-scroll-container {
    gap: 16px;
  }

  .scroll-card {
    flex: 0 0 260px;
    max-height: 195px;
  }
  
  /* contact page */
  .tt-contact-form-section .tt-form {
    max-width: 512px;
  }
  .tt-contact-form-section .tt-form {
    grid-template-columns: 1fr !important;
  }

  /* service page */

  .tt-service-hero-section {
    min-height: clamp(640px, 75vh, 700px) !important;
  }

  .tt-service-diagram > div {
      border-color: #C8C7C7 !important;
  }

  /* do not show diagram borders for quote */
  .tt-service-diagram > div:nth-child(1) {
    border: 0 !important;
  }
  
  /* do not show diagram arrows for quote */
  .tt-service-diagram > div:nth-child(1)::after {
    content: unset;
  }

  .tt-service-diagram > div:nth-child(2)::after {
    transform: translate3d(0, calc(50% + 0.5px), 0);
    border-left-color: #C8C7C7 !important;
  }

  .tt-service-diagram > div:nth-child(2)::before {
    top: 0;
    left: 0;
    transform: translate3d(calc(-50% - 0.5px),0, 0);
    border-left: 4.325px solid transparent;
    border-right: 4.325px solid transparent;
    border-bottom: 7.5px solid #C8C7C7;
  }

  .tt-service-diagram > div:nth-child(3)::after {
    transform: translate3d(0, calc(-50% - 0.5px), 0);
    border-right-color: #C8C7C7 !important;
  }

  .tt-service-diagram > div:nth-child(3)::before {
      bottom: 0;
      right: 0;
      transform: translate3d(calc(50% + 0.5px),0, 0);
      border-left: 4.325px solid transparent;
      border-right: 4.325px solid transparent;
      border-top: 7.5px solid #C8C7C7;
  }

  .tt-service-diagram > div:nth-child(4)::after {
    transform: translate3d(calc(-50% - 0.5px), 0%, 0);
    border-top-color: #C8C7C7 !important;
  }

  .tt-service-diagram > div:nth-child(4)::before {
    top: 0;
    right: 0;
    transform: translate3d(0,calc(-50% - 0.5px),0);
    border-top: 4.325px solid transparent;
    border-bottom: 4.325px solid transparent;
    border-left: 7.5px solid #C8C7C7;
  }

  /* arrow positioning */
  .tt-service-diagram > div::before {
      content: '';
      display: block;
      width: 0;
      height: 0;
      position: absolute;
  }

  
  /* service template page */
  .tt-service-accordion details summary .e-n-accordion-item-title-icon {
      transform: translateX(12px); /* the svg icon is now 40px high but still 64px wide, move it by half the difference to the right */
  }

  /* service subpage - machines */
  .tt-service-machines-hero-wrap .e-con-inner .elementor-widget-text-editor {
    width: 100% !important;
  }

  .tt-machines-tabs .uc_tab_content {
    border-top-right-radius: 24px !important; 
  }

  .tt-machines-tabs .uc_tab_content .ue-item-content-wrapper .ue-content-title {
    display: none !important;
  }

  .tt-machines-tabs .uc_tab_content .ue-item-content-wrapper .ue-content-text {
    display: flex;
    flex-direction: column;
    line-height: 1.5 !important;
  }

  .tt-machines-tabs .uc_tab_content .ue-item-content-wrapper .ue-content-text h5 {
    margin: 0 0 12px; 
  } 
  
  .tt-machines-tabs .uc_tab_content .ue-item-content-wrapper .ue-content-text .p2 {
    margin: 12px 0 8px;
  }

  .tt-machines-tabs .uc_tab_content .ue-item-content-wrapper .ue-content-text ul {
    padding-inline-start: 24px !important;
  }

  /* service subpage - process */
  .page-id-3227 .tt-hero-section .elementor-element-074b155 img {
    max-height: 300px;
  }

  .tt-phase-process__item:nth-of-type(1)::after, .tt-phase-process__item:nth-of-type(2)::after {
    width: 64px;
    height: 64px;    
  }

  .tt-service-tabs .ue-remote-tabs .uc-items-wrapper {
    gap: 5vw !important;
  }

  .tt-service-tabs .ue-item-text {
    display: none !important;
  }

  .tt-service-tabs .ue-remote-tabs .uc-items-wrapper .ue-item-active::before, .tt-service-tabs .ue-remote-tabs .uc-items-wrapper .ue-item:hover::before {
    content: unset;
  }

  .tt-service-tabs .ue-remote-tabs .ue-item {
      border-left: none !important;
  }

  .tt-service-tabs .ue-remote-tabs .ue-item-title {
    font-size: 22px !important;
  }

  .tt-service-tabs .ue-remote-tabs .uc-items-wrapper .ue-item .ue-item-title::before {
      transform: scale(0.65);
      width: 16px;
  }

  .tt-service-cta-grid .elementor-widget-elementskit-icon-box .elementskit-infobox {
    width: 100% !important;
    max-width: 480px !important;
  }

  .tt-service-cta-grid .elementor-widget-elementskit-icon-box:nth-of-type(2) .box-footer {
    padding-left: 32px !important;
  }

  /* career page */
  #tt-cta-team .elementor-widget-image {
    position: relative;
    /* Apply mask here if using mask-image */
    -webkit-mask-size: cover;
    mask-size: cover;
    max-height: 331px;
  }

  #tt-cta-team .elementor-widget-image::before {
    content: unset;
  }

  .tt-career-img--square img, 
  .tt-career-img--portrait img,
  .tt-career-img--landscape img {
    aspect-ratio: auto;
  }

  .tt-benefits-grid {
    max-width: 490px;
  }

  .tt-flipbox .elementor-icon-wrapper {
    margin-bottom: 8px !important;
  }

  .tt-flipbox .elementor-flip-box__layer__overlay {
    padding: clamp(16px, 9vw, 64px) 16px 16px !important;
  }
	
  .tt-flipbox .elementor-flip-box__layer__overlay h4 {
    font-size: 15px !important;
  }

  /* appliation steps slider dots */
  #uc_content_slider_new_elementor_bb65330 .owl-dots {
    display: block !important;
  }

  .tt-career-workplace-section .tt-masonry-grid {
    grid-template-rows: 1fr !important;
  }

  /* hide the image cell of the image and text cell grid */
  .tt-masonry-grid .e-con .elementor-widget.elementor-widget:first-child {
      display: none;
  }

  .tt-team-grid {
    max-width: 585px;
  }

  /* Multistep form */
  .tt-multistep-application .ue-multi-step-form-container {
    padding: 8% 5% 0;
  }

  /* company page */
  #tt-timeline-carousel {
    position: sticky;
    top: 5%;
    left: 100%;
    max-width: calc(100vw - 64px - 20px - 10%);
    background: linear-gradient(180deg, #F9FAFB 0%, rgba(249, 250, 251, 0.20) 64.78%, rgba(249, 250, 251, 0.00) 100%);
    backdrop-filter: blur(2px);
    display: flex;
    justify-content: flex-end;
    padding: 16px 0 32px 32px;
    margin-top: -32px;
  }

  #tt-timeline-carousel > .elementor-widget-container {
      width: 100%;
      max-width: 300px;
      max-height: 400px;
  }

  
}



@media only screen and (max-width: 640px) {
  
   .tt-flipbox .elementor-flip-box__layer__overlay {
   	 padding: clamp(16px, 9vw, 64px) 16px 16px !important;
	}

  /* service subpage - process */
  .tt-service-tabs .ue-remote-tabs .ue-item-title {
    font-size: 19px !important;
  }

  .tt-service-tabs .ue-remote-tabs .uc-items-wrapper {
    gap: 3.9vw !important;
  }

  .tt-service-tabs .ue-remote-tabs .uc-items-wrapper .ue-item .ue-item-title::before {
    transform: scale(0.6);
    width: 15px;
  }
}

@media only screen and (max-width: 480px) {

  /* start page */
  .page-id-16 .tt-hero-stats .elementskit-section-title {
    font-size: clamp(28px, 3.6vw, 50px) !important;
  }

  .page-id-16 .tt-hero-content-wrapper, 
  .page-id-16 .tt-hero-img img {
    min-height: 50vh;
  }

  .page-id-16 .tt-hero-title h1 {
    font-size: clamp(30px, 7vw, 72px) !important;
  }

  .page-id-16 .tt-hero-stats .elementskit-section-title-wraper p {
    font-size: clamp(12px, 1.5vw, 22px) !important;
  }

  /* service subpage - process */
  .tt-service-tabs--process {
    padding-top: 8% !important;
    padding-bottom: 8% !important;
  }

  .tt-service-tabs .ue-remote-tabs .ue-item-title {
    font-size: 4vw !important;
  }

  .tt-service-tabs .ue-remote-tabs .uc-items-wrapper {
    gap: 3.5vw !important;
  }

  .tt-service-tabs .ue-remote-tabs .uc-items-wrapper .ue-item .ue-item-title::before {
    transform: scale(0.55);
    width: 14px;
  }

  .home-karriere-tag {
    top: -20px;
  }

  .home-karriere-tag span {
    line-height: 50px;
  }

  .tt-job-post-tags .elementor-post-info .elementor-post-info__terms-list-item {
    margin-top: 8px;
  }

  /* career page */
  .tt-flipbox  .elementor-icon {
      font-size: 60px !important;
  }

  .tt-flipbox  .elementor-flip-box__layer__title {
      font-size: 14px !important;
  }

  .tt-flipbox .elementor-flip-box__layer__overlay {
    padding: 16px !important;
    justify-content: center !important;
  }

  /* Multistep Form */
  #uc_simple_popup_elementor_3bc12ad .ue-simple-popup-wrapper,
  #uc_simple_popup_elementor_a827e30 .ue-simple-popup-wrapper {
    overflow-y: auto !important;
  }

  /* make submit button full width */
  #uc_multi_step_form_elementor_f5c29f7 .ue-multi-step-form-button-submit,
  #uc_multi_step_form_elementor_25ba942 .ue-multi-step-form-button-submit,
  #uc_multi_step_form_elementor_7dea53e .ue-multi-step-form-button-submit {
      width: 100%;
  }

  /* company page */
  .tt-company-hero {
    aspect-ratio: auto;
  }
  
  .tt-quote-section .elementor-widget-testimonial-carousel .swiper-slide {
    padding: 0px 20px;    
  }

  .tt-quote-section .elementor-testimonial {
      flex-direction: column-reverse !important;
      gap: 20px;
  }
}

#uc_multi_step_form_elementor_f5c29f7 .ue-multi-step-form-buttons,
#uc_multi_step_form_elementor_25ba942 .ue-multi-step-form-buttons,
#uc_multi_step_form_elementor_a827e30 .ue-multi-step-form-buttons {
    flex-wrap: wrap;
}

#uc_multi_step_form_elementor_f5c29f7 .owl-carousel .owl-stage-outer,
#uc_multi_step_form_elementor_25ba942 .owl-carousel .owl-stage-outer,
#uc_multi_step_form_elementor_a827e30 .owl-carousel .owl-stage-outer{
    min-height: 20px !important;
}

#uc_simple_popup_elementor_3bc12ad .ue-simple-popup-overlay.uc-active,
#uc_simple_popup_elementor_a827e30 .ue-simple-popup-overlay.uc-active {
    z-index: 100;
}

/*  file upload field centering */
.elementor-widget-ucaddon_file_field {
    text-align: center;
}

#uc_multi_step_form_elementor_f5c29f7 .ue-multi-step-form-button-submit,
#uc_multi_step_form_elementor_25ba942 .ue-multi-step-form-button-submit,
#uc_multi_step_form_elementor_7dea53e .ue-multi-step-form-button-submit {
    border-color: transparent;
}

#uc_simple_popup_elementor_3bc12ad:focus-visible,
#uc_simple_popup_elementor_a827e30:focus-visible,
#uc_simple_popup_elementor_a827e30 .ue-simple-popup-trigger-wrapper:focus-visible,
#uc_simple_popup_elementor_3bc12ad .ue-simple-popup-trigger-wrapper:focus-visible,
#uc_simple_popup_elementor_a827e30 .ue-simple-popup-trigger:focus-visible,
#uc_simple_popup_elementor_3bc12ad .ue-simple-popup-trigger:focus-visible,
#uc_simple_popup_elementor_a827e30 .ue-simple-popup-btn:focus-visible,
#uc_simple_popup_elementor_3bc12ad .ue-simple-popup-btn:focus-visible {
    outline: -webkit-focus-ring-color auto 0px !important;
}

/* fix not visible popup overlaying job posting links */
#uc_simple_popup_elementor_a827e30 .ue-simple-popup-overlay {
    display: none !important;
}
#uc_simple_popup_elementor_a827e30 .ue-simple-popup-overlay.uc-active {
    display: flex !important;
}

.section-post-full-link {
  width: 100% !important;
	height: 106px !important;
  position: absolute !important;
  top: 0;
	z-index: 100 !important;
}