/* CSS Document 
Theme Name: TRIMT GmbH
Author: EDB
Version: 1.0
*/
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,address,cite,code,del,dfn,em,img,ins,q,small,strong,sub,sup,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td{border:0;margin:0;padding:0}article,aside,figure,figure img,figcaption,hgroup,footer,header,nav,section,video,object{display:block}a img{border:0}figure,figure img{padding: 0; margin: 0;}
@font-face {    font-family: 'Oxanium';
    src: url('fonts/Oxanium-Light.eot');
    src: url('fonts/Oxanium-Light.eot?#iefix') format('embedded-opentype'),
        url('fonts/Oxanium-Light.woff2') format('woff2'),
        url('fonts/Oxanium-Light.woff') format('woff'),
        url('fonts/Oxanium-Light.ttf') format('truetype'),
        url('fonts/Oxanium-Light.svg#Oxanium-Light') format('svg');
    font-weight: 300;    font-style: normal;}
@font-face {    font-family: 'Oxanium';
    src: url('fonts/Oxanium-SemiBold.eot');
    src: url('fonts/Oxanium-SemiBold.eot?#iefix') format('embedded-opentype'),
        url('fonts/Oxanium-SemiBold.woff2') format('woff2'),
        url('fonts/Oxanium-SemiBold.woff') format('woff'),
        url('fonts/Oxanium-SemiBold.ttf') format('truetype'),
        url('fonts/Oxanium-SemiBold.svg#Oxanium-SemiBold') format('svg');
    font-weight: 600;    font-style: normal;}
@font-face {    font-family: 'Fira Sans';
    src: url('fonts/FiraSans-Bold.eot');
    src: url('fonts/FiraSans-Bold.eot?#iefix') format('embedded-opentype'),
        url('fonts/FiraSans-Bold.woff2') format('woff2'),
        url('fonts/FiraSans-Bold.woff') format('woff'),
        url('fonts/FiraSans-Bold.ttf') format('truetype'),
        url('fonts/FiraSans-Bold.svg#FiraSans-Bold') format('svg');
    font-weight: bold;    font-style: normal;}
@font-face {    font-family: 'Fira Sans';
    src: url('fonts/FiraSans-Medium.eot');
    src: url('fonts/FiraSans-Medium.eot?#iefix') format('embedded-opentype'),
        url('fonts/FiraSans-Medium.woff2') format('woff2'),
        url('fonts/FiraSans-Medium.woff') format('woff'),
        url('fonts/FiraSans-Medium.ttf') format('truetype'),
        url('fonts/FiraSans-Medium.svg#FiraSans-Medium') format('svg');
    font-weight: 500;    font-style: normal;}
@font-face {    font-family: 'Fira Sans';
    src: url('fonts/FiraSans-Regular.eot');
    src: url('fonts/FiraSans-Regular.eot?#iefix') format('embedded-opentype'),
        url('fonts/FiraSans-Regular.woff2') format('woff2'),
        url('fonts/FiraSans-Regular.woff') format('woff'),
        url('fonts/FiraSans-Regular.ttf') format('truetype'),
        url('fonts/FiraSans-Regular.svg#FiraSans-Regular') format('svg');
    font-weight: normal;    font-style: normal;}


html{width: 100%;  overflow-x: hidden !important;height: auto;}
body{font-family: 'Fira Sans'; font-size:16px; font-weight: 400; color: #4f4f4f;  width: 100%; font-variant-ligatures: none; }
*{box-sizing: border-box;}
.text-center{text-align: center;}
.text-right{text-align: left;}
.text-left{text-align: left;}
.clear{clear: both;}
figure{width: 100%; height: auto; position: relative; display: inline-block; text-align: center;}
strong{font-weight: 700;}
p{margin-bottom: 15px; line-height: 1.6em; text-align: left;}
a{cursor: pointer; text-decoration: none;}
h1,h2,h3,h4,h5,h6{font-family: 'Oxanium'; font-weight: 600; color: #00659f; margin-bottom: 30px;}
h1{font-size: 2.5em; }
h2{font-size: 1.7em; margin-top: 30px;}
h3{font-size: 1.1em; margin-top: 20px; margin-bottom: 10px;}
footer h2{color: #fff; position: relative; margin-top: 0;}
footer h2::after{content: ""; position: absolute; display: block; width: 20px; height: 3px; background: #fff; left: 0; bottom: -5px;}
main a{color: #00659f; font-weight: 600; text-decoration: none;}
main ul, main ol{margin-left: 15px; margin-bottom: 30px;} 
main ul li, main ol li{margin-bottom: 10px;}

.row, 
main .wp-block-group, 
footer .wp-block-group{width: 1300px; margin: 0 auto; padding: 0 10px; position: relative;}
main, 
footer{width: 100%; margin: 0 auto; padding: 0; position: relative;}


/* HEADER & FOOTER*/
header{position: relative; width: 100%; display: inline-block;} 
header .header-container{width: 100%; height: auto; position: fixed; display: inline-block; padding: 10px 0; background: #fff; box-shadow: 0 8px 8px -4px #4f4f4f; z-index: 1000; top: 0; left: 0; right: 0;}
header .header-container .logo{width: 100%; height: auto; display: inline-block; float: right; text-align: right;}
header .header-container .logo img{width: 100%; height: auto;}

.header-image {    width: 100%;    min-height: 420px;    background-size: cover;    background-position: center;    background-repeat: no-repeat;    display: flex;    align-items: center; margin-top: 100px;}
.header-content {    width: 100%;    max-width: 1200px;    margin: 0 auto;}
.header-content span,
.header-content p { font-family: 'Oxanium'; color: #fff;}
.header-content span{font-size: 2.7em; font-weight: 600;}
.header-content p{font-size: 1.7em; font-weight: 200;}

/* NAVIGATION */

.main-navigation {  color: #4f4f4f;  font-weight: 600;  display: none;  flex-direction: column;  padding: 30px 10px 10px 10px; font-family: 'Oxanium';}
.main-navigation.menu-open {  display: flex;}
.main-navigation ul {  list-style: none;  padding: 0;  margin: 0;}
.main-navigation li {  position: relative;  width: 100%;}
.main-navigation li a,
.main-navigation li button {  display: inline-block;  padding: 15px 20px;  color: #4f4f4f;  text-decoration: none;  font-size: 1.0em;  background: none;  border: none;  width: 100%;  text-align: left;    letter-spacing: 0.05em;}
.main-navigation li.menu-item-has-children > a::after {  content: '+';  float: right;  color: #3badb5;  font-weight: bold;padding-left: 10px;}
.main-navigation li.menu-item-has-children.active > a::after {  content: '-';}
.main-navigation .sub-menu {  display: none;  background-color: #fff;  padding: 0;}
.main-navigation .menu-item-has-children.active > .sub-menu {  display: block;}
.main-navigation li a:focus,
.main-navigation li button:focus {  outline: 3px solid #00609d;}
.main-navigation li a:hover,
.main-navigation li a.active,
.main-navigation li button:hover {  background: #00609d;  color: #fff;}
.main-navigation .current-menu-ancestor > a {  color: #00609d;  background: none;}
.main-navigation .current-menu-item > a {  color: #00609d;  background-color: #f0f0f0;}
.main-navigation li .sub-menu li a{color: #00609d;}
.main-navigation li .sub-menu li a:hover{background: #00609d;  color: #fff;}
.mobile_menu_button {  display: flex;  background: linear-gradient(90deg, #214b86 0%, #102f63 100%); color: #fff;  border: none;  padding: 20px;  cursor: pointer;  align-items: center;  z-index: 9999;  position: relative; float: right;}
.menu-icon {  display: flex;  flex-direction: column;  gap: 5px;  margin-right: 10px;}
.menu-icon div {  width: 25px;  height: 3px;  background: #fff;}

.main-navigation li.linkedin{display: block; width: 55px; height: 40px;background:url(images/LI-In-Bug.png) no-repeat center center; background-size: contain; margin-left: 15px; margin-top:5px;}
.main-navigation li.linkedin a{ text-indent: -9999px; width: 100%; height: auto;}
.main-navigation li.linkedin a:hover{background: none;} 


.no-scroll {  overflow: hidden;}

@media (min-width: 960px) {
  .mobile_menu_button {    display: none;  }
  .main-navigation {    display: flex !important;    flex-direction: row;    justify-content: flex-start;    align-items: center;  }
  .main-navigation ul {    flex-direction: row;    display: flex;    width: 100%;  }
  .main-navigation li {    width: auto;  }
  .main-navigation .sub-menu {    position: absolute;    top: 100%;    left: 0;    min-width: 230px;    background: #fff;    display: none;    z-index: 1000;  }
  .main-navigation li:hover > .sub-menu {    display: block;  }
	header .logo{width: 35%;}
}

footer{background: #1BAD98; background: linear-gradient(90deg, rgba(27, 173, 152, 1) 0%, rgba(6, 81, 136, 1) 100%); color: #fff; padding: 50px 0 30px 0;}
footer .wp-block-media-text{width: auto !important; grid-template-columns: 0% auto !important;}
footer .wp-block-media-text figure img{width: 25px !important; height: auto !important;}
footer a{color: #fff;}
footer .wp-block-media-text p.wp-block-paragraph a{padding-top: 15px;    position: relative;    display: inline-block;}
footer .widget_nav_menu ul {    list-style: none;    padding: 0;    margin: 0;}
footer .widget_nav_menu ul li{margin-bottom: 7px; }
footer .widget_nav_menu li a::before {    content: "\00BB"; /* » */    margin-right: 6px;}
footer .widget_nav_menu li:hover a , footer .widget_nav_menu li.current-menu-item{ font-weight: 600;}


/* CONTENT */
.wrap{width: 100%; height: auto; position: relative; clear: both;}

.pipeline-chart {  width: 100%;  max-width: 900px;  font-size: 15px;  color: #555;}
.pipeline-header,
.pipeline-row {  display: grid;  grid-template-columns: 1.15fr 2.1fr 1fr 1fr 1fr;  align-items: center;  column-gap: 18px;}
.pipeline-header {  padding: 0 12px 10px;  font-weight: 700;  color: #4b4f55;}
.pipeline-row {  min-height: 58px;  padding: 10px 12px;}
.pipeline-row:nth-child(odd) {  background: #f7f9fb;}
.pipeline-row:nth-child(even) {  background: #fff;}
.pipeline-compound {  font-weight: 500;  color: #5a5f66;}
.pipeline-target {  line-height: 1.25;  color: #4f555c;}
.pipeline-progress {  grid-column: 3 / 6;  height: 24px;  display: flex;  align-items: center;}
.pipeline-progress span {  display: block;  width: var(--progress);  height: 18px;  border-radius: 999px;}
.pipeline-bar-dark {  background: linear-gradient(90deg, #214b86 0%, #102f63 100%);}
.pipeline-bar-light {  background: linear-gradient(90deg, #58a9c8 0%, #1f5f7f 100%);}
.pipeline-bar-turquoise {  background: linear-gradient(90deg, #75d6c4 0%, #2f9b8b 100%);}

@media (max-width: 768px) {  .pipeline-header {    display: none;  }
  .pipeline-row {    grid-template-columns: 1fr;    gap: 6px;    padding: 14px 12px;  }
  .pipeline-progress {    grid-column: auto;    width: 100%;    margin-top: 6px;  }
}

details.wp-block-details{width: 100%; margin: 15px 0;}
details.wp-block-details summary{width: 100%; padding: 20px; font-family: 'Oxanium'; font-weight: 600; color: #00659f; border: 2px solid #DCDCDC; border-radius: 15px;}
details.wp-block-details .wp-block-column{padding: 30px 0;}
main figcaption{font-size: 0.8em;}

main .wp-block-group{ padding: 70px 10px;}
.wp-block-group[id] {
  scroll-margin-top: 120px;
}
main article#page-11 .wp-block-group.grau, main article#page-103 .wp-block-group.grau{ padding: 50px; background: #fafafa;}
main article#page-11 .wp-block-group.grau::before, main article#page-103 .wp-block-group.grau::before{    content: "";    position: absolute;    top: 0;    bottom: 0;    left: calc(50% - 50vw);    width: 100vw;    background: #fafafa;    z-index: -1;}
main article#page-15 .wp-block-group{padding: 70px 10px 10px 10px;}

main hr.wp-block-separator{margin: 20px 0;}

main #page-11 hr.wp-block-separator{border: none;height: 20px; width: 20%; float: left; background: #1BAD98; background: linear-gradient(90deg, rgba(27, 173, 152, 1) 0%, rgba(6, 81, 136, 1) 100%); position: relative; margin: 0; margin-top: -10px; z-index: 30;} 
main #page-11 hr.wp-block-separator:nth-of-type(odd) {float: right;}

.star-color {    color: #1bad97;}

/* FORMULAR */
form{margin-top: 30px;}
form fieldset.daten {width: 99%; clear: none; padding: 0 10px 10px 10px; border: 1px solid rgba(162,162,162,0.30); margin-bottom: 20px; float: left; margin-right: 1%;}
form fieldset legend {width: 100%; clear: both; margin-bottom: 20px; font-size: 1.15em; color: #00609d; font-weight: 600;}
form fieldset.full {float: left; clear: none; padding: 0 10px 10px 10px; border: 1px solid rgba(162,162,162,0.30); margin-bottom: 20px; margin-right: 1%; width: 100%;}
form fieldset.full label{float: left; margin-right: 30px;}
form fieldset.daten span.data{width: auto; display: block; float: left; margin-right: 10px;}
form fieldset.daten span.wpcf7-form-control-wrap input, 
form fieldset.full span.wpcf7-form-control-wrap input{width: 250px;}

form fieldset.full textarea{width: 100%;}
form input.send{display: inline-block; padding: 20px 30px; background: #3badb5; color: #fff; border: none; font-size: 1.1em; font-weight: 600; border-radius: 30px;}
form p.hinweis{margin: 20px 0 50px 0;}
form .wpcf7-form-control.wpcf7-radio{padding: 20px 0; display: inline-block;}
form .wpcf7-form-control.wpcf7-radio span.first{margin-left: 0;}


/* =========================================================
   MOBILE / RESPONSIVE
========================================================= */

@media (max-width: 1300px) {
  .row,
  main .wp-block-group,
  footer .wp-block-group {
    width: 100%;
    max-width: 1300px;
  }
}

@media (max-width: 1069px) {
  header .header-container {
    padding: 10px 10px 20px 10px;
  }

  header .header-container .logo {
    width: 220px;
    float: right;
    text-align: left;
	position: absolute;
	top: 10px;
	right: 10px;
  }

  .mobile_menu_button {
    float: left;
  }

  .main-navigation {
    clear: both;
    width: 100%;
  }

  .main-navigation li.button-contact a {
    margin-left: 0;
    margin-top: 10px;
  }

  .header-image {
    margin-top: 85px;
    min-height: 340px;
    padding: 40px 20px;
  }

  .header-content span {
    font-size: 2.1em;
  }

  .header-content p {
    font-size: 1.3em;
  }
}

@media (max-width: 768px) {
  body {
    font-size: 15px;
  }

  h1 {
    font-size: 2em;
  }

  h2 {
    font-size: 1.45em;
  }

  main .wp-block-group,
  main article#page-11 .wp-block-group.grau,
  main article#page-103 .wp-block-group.grau {
    padding: 40px 20px;
  }

  .header-image {
    min-height: 280px;
    margin-top: 85px;
  }

  .header-content span {
    font-size: 1.7em;
  }

  .header-content p {
    font-size: 1.1em;
  }

  main #page-11 hr.wp-block-separator {
    width: 35%;
    height: 14px;
  }

  details.wp-block-details summary {
    padding: 15px;
  }

  details.wp-block-details .wp-block-column {
    padding: 20px 0;
  }

  footer {
    padding: 40px 0 25px;
  }

  footer .wp-block-group {
    padding: 0 20px;
  }

  form fieldset.daten,
  form fieldset.full {
    width: 100%;
    float: none;
    margin-right: 0;
  }

  form fieldset.full label,
  form fieldset.daten span.data {
    float: none;
    display: block;
    margin-right: 0;
    margin-bottom: 8px;
  }

  form fieldset.daten span.wpcf7-form-control-wrap input,
  form fieldset.full span.wpcf7-form-control-wrap input,
  form input,
  form textarea {
    width: 100%;
    max-width: 100%;
  }
}

@media (max-width: 480px) {
  header .header-container .logo {
    width: 180px;
  }

  .mobile_menu_button {
    padding: 15px;
  }

  .mobile_menu_button span:not(.menu-icon) {
    display: none;
  }

  .header-image {
    min-height: 230px;
    margin-top: 75px;
  }

  .header-content span {
    font-size: 1.35em;
  }

  .header-content p {
    font-size: 1em;
  }

  main .wp-block-group,
  main article#page-11 .wp-block-group.grau,
  main article#page-103 .wp-block-group.grau {
    padding: 30px 15px;
  }

  main #page-11 hr.wp-block-separator {
    width: 45%;
  }

  .main-navigation li a,
  .main-navigation li button {
    padding: 13px 10px;
  }
}