:root {
  --text-xs: 0.75rem;
  --text-sm: 0.875rem;
  --text-base: 1rem;
  --text-lg: 1.125rem;
  --text-xl: 1.25rem;
  --text-2xl: 1.5rem;
  --text-3xl: 2rem;
  --text-4xl: 2.5rem;
  --text-5xl: 3rem;
  --text-6xl: 3.75rem;
  --text-7xl: 4rem;
  --text-8xl: 4.5rem;
  --text-9xl: 5rem;
  --text-10xl: 5.5rem;
  --text-11xl: 6rem;    
    
  --accent-color: #a0a0a0;
  --accent-color-text: #ffdc00;
  --accent-color-old:   #ffdc00;
  --bg-gray-1: #bebebe;
  --bg-gray-2: #969696;
  --bg-gray-3: #787878;
  --bg-gray-4: #4b4b4b;
  --bg-gray-5: #323232;    
  --bg-light: #f7f7f7;
  --bg-light-1: #f5f6f8;
  --bg-light-2: #F1F6F9;
  --bg-dark-1: #151515;
  --bg-dark-2: #1E2027;
  --bg-dark-3: #0D0D12;
  --bg-dark-4: #0A0A0F;
  --bg-dark-5: #212529;
  --bg-handwerk-01: #fff900;   
  --bg-einzelhandel-01: #f4f4f4;
  --bg-einzelhandel-02: #FFF;
  --bg-einzelhandel-03: #acb2b6;      
  --bg-service-01: #fff900;
  --bg-service-02: #000;
  --bg-service-03: #313138;
  --bg-gesundheit-01: #8c8f92;     
  --bg-gastronomie-01: #131419;
  --bg-gastronomie-02: #000;    
  --color-white: rgb(255, 255, 255);    
  --font-light: rgb(197, 197, 197);
  --font-dark: #454545;
  --font-orange: #ff5b3d;
  --font-neon-yellow: #edff28;
  --work-grid-x-gap: 60px;
  --work-grid-y-gap: 70px;
  --work-grid-vertical-margin: 90px;
  --preloader-image: url('../images/logo/logo-master-h9a-white.svg');
}

@media (max-width: 991px) {
:root {
    --work-grid-vertical-margin: 60px;
  }
}

.preloader__progress {
  height: 25rem;
  width: 25rem;
}
@media (max-width: 767px) {
  .preloader__progress {
    height: 60%;
    width: 60%;
  }
}

@media (min-width: 1260px) {
  .col-xl-plus {
    flex: 0 0 14.27%;
    max-width: 14.27%;
  }
}

.header__logo.js-header-logo {
    width: 300px;
}

.header__logo div,
.header__logo img {
    width: 60%;
}
@media (max-width: 767px) {
  .header__logo div,
  .header__logo img {
      width: 50%;
  }
}

.header__logo.profi-detail div,
.header__logo.profi-detail img {
    width: 0;
}

.header.-sticky-initial.-sticky-light .header__logo__dark, .header.is-sticky.-sticky-light .header__logo__dark {
    width: 55%;
}

body {
  line-height: 1.6;
}

.d-grid {
  display: grid !important;
}

.overlay-black-xl::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
}

.overlay-black-xl::after {
  background-color: rgba(0, 0, 0, 0.85);
}

.overlay-black-sm.-accent::after {
  background-color: var(--accent-color);
  opacity: 0.3;    
}

.overlay-black-md.-accent::after {
  background-color: var(--accent-color);
  opacity: 0.5;  
}

.overlay-black-lg.-accent::after {
  background-color: var(--accent-color);
  opacity: 0.7;  
}

.container-wide-pr-custom {
  padding-left: 5%;
  padding-right: 0%;
}

@media (max-width: 991px) {
  .container-wide-pr-custom {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
}

.rubrik-iconcircle {
  background-color: #fff900;
  border-radius: 105px;
  padding: 10px;
  margin-bottom: 15px;
  min-height: 80px;
  width: 80px;
}
.rubrik-iconcircle.-sm {
  min-height: 60px;
  width: 60px;
}
.rubrik-icon {
  background-color: none;
  padding-top: 10px;
  padding-bottom: 10px;
  margin-bottom: 10px;
}
.rubrik-icon.-lg {
  min-height: 100%;
  width: 100%;
}
@media (min-width: 1230px) {
  .rubrik-icon.-lg {
    min-height: 90%;
    width: 90%;
  }
}
@media (max-width: 575px) {
  .rubrik-icon.-lg {
    min-height: 75%;
    width: 75%;
  }
}
.rubrik-icon.-md {
  min-height: 80%;
  width: 80%;
}
@media (min-width: 1230px) {
  .rubrik-icon.-md {
    min-height: 70%;
    width: 70%;
  }
}
@media (max-width: 575px) {
  .rubrik-icon.-md {
    min-height: 55%;
    width: 55%;
  }
}

.header__menu .nav-button-open:hover .icon {
  color: black !important;
  transform: scale(120%);    
}

/*--------------------------------------------------
	15.2. Navigation background
---------------------------------------------------*/
.nav__bg {
  background-color: var(--accent-color);
}
.nav .nav-button-back .icon,
.nav .nav-btn-close .icon {
  color: black;
}

/*--------------------------------------------------
	15.3. Navigation list
---------------------------------------------------*/
.navList .menu-item-has-children > a::after {
  font-size: 2.275rem;
  color: var(--color-white);    
  margin-top: -0.6rem;
}
.navList .menu-item-has-children > a:hover::after {
  color: var(--color-white);
}
.navList__wrap a:hover {
  color: var(--color-white);
}
.navList__wrap a:not([href]):not([tabindex]):hover {
  color: var(--color-white);
}
.navList li a {
  color: black;    
  font-weight: 800;
}
.navList li a.active {color: var(--color-white);}

.navList li:nth-child(1) a:hover,
.navList li:nth-child(1) a:first-of-type:hover,
.navList li:nth-child(1) a.active,
.navList li:nth-child(1) a:hover::after {color: var(--color-white);}

/*.navList li:nth-child(5) a:hover,
.navList li:nth-child(5) a:first-of-type:hover,
.navList li:nth-child(5) a.active,
.navList li:nth-child(5) a:hover::after {color: #edff28;}

.navList li:nth-child(3) a:hover,
.navList li:nth-child(3) a.active {color: #fff900;}

.navList li:nth-child(4) a:hover,
.navList li:nth-child(4) a:first-of-type:hover,
.navList li:nth-child(4) a.active,
.navList li:nth-child(4) a:hover::after {color: #fff900;}

.navList li:nth-child(5) a:hover,
.navList li:nth-child(5) a.active {color: #fff900;}*/

.nav__content__right {
  max-width: 25%;
}
@media (max-width: 767px) {
  .nav__content__left {
    flex: 0 0 70%;
    max-width: 70%;
  }
}
@media (max-width: 575px) {
  .nav__content__left {
    flex: 0 0 100%;
    max-width: 100%;
  }
}
.nav__info__content > *:last-child {
  margin-top: 0.25rem;
}
.nav__info__item a.h3, .nav__info__item p.h3 {
    font-size: var(--text-4xl);
}
.filter-button-group.text-light button.btn-active,
.filter-button-group.text-white button.btn-active{
    color: var(--accent-color);
    text-decoration: underline;
}

.invert {
  filter: invert(100%);
}
.-hover-invert:hover {
  filter: invert(100%);
}
.transition-none {
  transition: none!important;
}

.w-50 {
    width: 50%!important;
}
.w-60 {
    width: 60%!important;
}
.w-100 {
    width: 100%!important;
}

/* Font Color */
a:hover {
  text-decoration: none;
  color: var(--accent-color-text);
}
a.-hover-accent:hover {
  text-decoration: none;
  color: var(--accent-color) !important;
}
a.-hover-black:hover {
  text-decoration: none;
  color: #000!important;
}
a.-hover-white:hover {
  text-decoration: none;
  color: #FFF;
}
.text-accent-color {
  color: var(--accent-color-text);
}
.text-orange {
  color: var(--font-orange);
}
.text-neon-yellow {
  color: var(--font-neon-yellow);
}
.text-hover-accent:hover {
  color: var(--accent-color);
}
.text-hover-white:hover {
  color: #FFF;
}

.text-shadow-light {
  text-shadow: 3px 2px 10px rgba(119, 139, 165, 0.2);
}
.text-shadow-dark {
  text-shadow: 7px 2px 10px rgba(0, 0, 0, 0.6);
}
.shadow-light-sm {
  box-shadow: 0 6px 24px -2px rgba(150, 150, 150, 0.12);
}
.shadow-medium {
  box-shadow: 0 6px 24px -2px rgba(140, 140, 140, 0.3);
}
.shadow-medium-md {
  box-shadow: 0 6px 24px -2px rgba(0, 0, 0, 0.1);
}
.shadow-medium-lg {
  box-shadow: 0 6px 24px -2px rgba(0, 0, 0, 0.2);
}

.str-width-xxl {
  stroke-width: 2.25 !important;
}
.str-width-xxxl {
  stroke-width: 3.25 !important;
}

.marker-black { 
  background-color:#000; 
  padding: 5px 15px;
}

.no-word-break { 
  word-break: keep-all!important;
  hyphens: none!important;    
}

.bg-none {
  background: none!important;
}
.bg-light {
  background-color: var(--bg-light);
}
.bg-gray-1 {
  background-color: var(--bg-gray-1);
}
.bg-gray-2 {
  background-color: var(--bg-gray-2);
}
.bg-gray-3 {
  background-color: var(--bg-gray-3);
}
.bg-gray-4 {
  background-color: var(--bg-gray-4);
}
.bg-gray-5 {
  background-color: var(--bg-gray-5);
}
.bg-dark-5 {
  background-color: var(--bg-dark-5);
}
.bg-handwerk-01 {
  background-color: var(--bg-handwerk-01);
}
.bg-einzelhandel-01 {
  background-color: var(--bg-einzelhandel-01);
}
.bg-einzelhandel-02 {
  background-color: var(--bg-einzelhandel-02);
}
.bg-einzelhandel-03 {
  background-color: var(--bg-einzelhandel-03);
}
.bg-service-01 {
  background-color: var(--bg-service-01);
}
.bg-service-02 {
  background-color: var(--bg-service-02);
}
.bg-service-03 {
  background-color: var(--bg-service-03);
}
.bg-gesundheit-01 {
  background-color: var(--bg-gesundheit-01);
}
.bg-gastronomie-01 {
  background-color: var(--bg-gastronomie-01);
}
.bg-gastronomie-02 {
  background-color: var(--bg-gastronomie-02);
}
.bg-image-contain {
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
  width: 100%;
  height: 100%;
}
.bg-image.-top {
  background-position-y: top;
}
.bg-image.-bottom {
  background-position-y: bottom;
}
.bg-image.-right {
  background-position-x: right;
}
.bg-image.-left {
  background-position-x: left;
}
.size-4xl {
  width: 7rem !important;
  height: 7rem !important;
}
.size-5xl {
  width: 8rem !important;
  height: 8rem !important;
}

@media (min-width: 1230px) {
  .xl\:text-center {
    text-align: center;
  }
  .xl\:text-right {
    text-align: right;
  }
  .xl\:text-left {
    text-align: left;
  }
}

@media (min-width: 992px) {
  .lg\:hidden {
    display: none;
  }
}

.border-bottom-none {
  border-bottom: none;
}

hr {
    border: 0;
    height: 1px;
    background-image: -webkit-linear-gradient(left, rgba(0,0,0,0), rgba(0,0,0,0.20), rgba(0,0,0,0));
    background-image: -moz-linear-gradient(left, rgba(0,0,0,0), rgba(0,0,0,0.20), rgba(0,0,0,0));
    background-image: -ms-linear-gradient(left, rgba(0,0,0,0), rgba(0,0,0,0.20), rgba(0,0,0,0));
    background-image: -o-linear-gradient(left, rgba(0,0,0,0), rgba(0,0,0,0.20), rgba(0,0,0,0));
    margin: 22px 0 22px 0;
}
hr.-white {
    border: 0;
    height: 1px;
    background-image: -webkit-linear-gradient(left, rgba(255,255,255,0.4), rgba(255,255,255,1.0), rgba(255,255,255,0.4));
    background-image: -moz-linear-gradient(left, rgba(255,255,255,0.4), rgba(255,255,255,1.0), rgba(255,255,255,0.4));
    background-image: -ms-linear-gradient(left, rgba(255,255,255,0.4), rgba(255,255,255,1.0), rgba(255,255,255,0.4));
    background-image: -o-linear-gradient(left, rgba(255,255,255,0.4), rgba(255,255,255,1.0), rgba(255,255,255,0.4));
    margin: 22px 0 22px 0;
}
hr.clean {
    border: 0;
    height: 1px;
    background-color: black;
}

.sectionHeading__pfad {
  font-size: 1.0rem;
  margin-bottom: 1.5rem;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  color: black;
}

.flex-start {
  display: flex;
  align-items: flex-start !important;
}
.flex-end {
  display: flex;
  align-items: flex-end !important;
}
.reverse {
  flex-wrap: wrap-reverse;
}
@media (max-width: 575px) {
  .xs\:reverse {
    flex-wrap: wrap-reverse;
  }
}

.justify-content-start-i {
  justify-content: flex-start !important;
}

.justify-content-end-i {
  justify-content: flex-end !important;
}

.justify-content-between-i {
  justify-content: space-between !important;
}

.justify-content-center-i {
  justify-content: center !important;
}

.align-items-start-i {
  align-items: flex-start !important;
}

.align-items-end-i {
  align-items: flex-end !important;
}

.align-items-between-i {
  align-items: space-between !important;
}

.align-items-center-i {
  align-items: center !important;
}


.masthead.flex-end {
    overflow: visible;
    position: relative;
    z-index: 0;
    display: flex;
    align-items: flex-end;
    width: 100%;
    height: 100vh;
}
.masthead__content.center {
    position: relative;
    z-index: 1;
    padding-bottom: 40px;
    margin: 0 auto;
    width: 100%;
    text-align: center;
    display: flex;
    align-items: center;
    flex-flow: column;
    justify-content: center;
}
.masthead .fluid-container {
    width: 100%;
}
.masthead__shape__container {
    position: absolute;
    bottom: 80px;
}
.masthead .shapes__shape {
    width: 720px;
    height: 720px;
    border-radius: 100%;
}
.shapes__shape.-shadow-light {
    box-shadow: 0 0 60px rgb(0 0 0 / 8%);
}
.shapes__shape.-white {
    background-color: #fff;
}

.bg-black-opacity-1 {
  background-color: rgba(0, 0, 0, 0.9) !important;
}
.bg-black-opacity-2 {
  background-color: rgba(0, 0, 0, 0.85) !important;
}
.bg-black-opacity-50 {
  background-color: rgba(0, 0, 0, 0.5) !important;
}

/*--------------------------------------------------
	04. Buttons
---------------------------------------------------*/

button {
    padding: unset;
    margin: unset;
    border: unset;
    border-radius: unset;
    background-color: unset;
}
.button.-xs {
  min-width: 4.5rem;
  padding: 0.375rem 1.0875rem;
  font-size: 0.875rem;
  line-height: 1;
  font-weight: 500;
  letter-spacing: 0.03em;
}
.button.-xl {
  min-width: 8.75rem;
  padding: 1.125rem 2rem;
  font-size: 1.25rem;
  line-height: 1;
  font-weight: 500;
  /*letter-spacing: 0.03em;*/
}

@media (max-width: 767px) {
  .button.-xl {
    padding: 1.125rem 2rem;
    font-size: 1rem;
  }
}
.button.-xxl {
  min-width: 8.75rem;
  padding: 1.125rem 2rem;
  font-size: 1.5rem;
  line-height: 1;
  font-weight: 500;
  text-transform: capitalize;
  letter-spacing: 0.03em;
}

@media (max-width: 767px) {
  .button.-xxl {
    padding: 1.125rem 2rem;
    font-size: 1rem;
  }
}
.button.-accent {
  background-color: var(--accent-color-text);
  border: 0.0625rem solid var(--accent-color-text);
  text-align: center;
  border-radius: 3.75rem;    
}
.button.-accent:hover {
  background-color: transparent;
  color: #121212;
  border: 0.0625rem solid #121212;
}
.button.-sm {
  text-transform: none;
}
.button.-md {
  text-transform: none;
}
.button.-lg {
  text-transform: none;
}
.button.-xl {
  text-transform: none;
}
.button.-xxl {
  text-transform: none;
}
.button.-br0 {
  border-radius: 0;
}
.button.-ls0 {
  letter-spacing: 0;
}
.button.-white.-black-hover:hover {
  background-color: black;
  color: white;
  border: 0.0625rem solid #000;    
}
.button.-white.-accent-hover:hover {
  background-color: var(--accent-color);
  color: black;
  border: 0.0625rem solid var(--accent-color);    
}
.button.-black.-white-hover:hover {
  background-color: white;
  color: black;
  border: 0.0625rem solid #FFF;    
}
.masthead__button {
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 100%;
    /*color: #000;*/
    border: 1px solid #000;
    width: 104px;
    height: 104px;
    margin-top: 84px;
    transition: background-color .3s cubic-bezier(.165,.84,.44,1),color .3s cubic-bezier(.165,.84,.44,1);
}
@media (max-width: 767px) {
.masthead__button {
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 100%;
    /*color: #000;*/
    border: 1px solid #000;
    width: 80px;
    height: 80px;
    margin-top: 30px;
    transition: background-color .3s cubic-bezier(.165,.84,.44,1),color .3s cubic-bezier(.165,.84,.44,1);
    }
}
.masthead__button:hover {
    background-color: #000;
}
.masthead__button.-black {
  background-color: #000;
}
.masthead__button.-white-hover:hover {
  background-color: #FFF;
}
.masthead__button.-transparent-hover:hover {
  background: none;
}
.masthead__button .icon {
    width: 72px;
    height: 72px;
    stroke-width: .5;
}
@media (max-width: 767px) {
.masthead__button .icon {
    width: 48px;
    height: 48px;
    stroke-width: .7;
    }
}
.masthead__button:hover .icon {
    color: #fff;
}
.masthead__button:hover .icon.-hover-black {
    color: #000;
}
.button.-icon.-hover-white:hover .icon {
  color: #FFF;
}

/* Background */
.bg-left {
  background-position: left;
}
.bg-right {
  background-position: right;
}

/* 06. Typography */
h1, h2, h3, h5, h6 {
  line-height: 1.2;
  letter-spacing: -0.03em;
}
h1 {
  letter-spacing: -0.035em;
}
h3 {
  letter-spacing: -0.04em;
}
h4 {
  line-height: 1.4;
  letter-spacing: -0.02em;
}
h6 {
  margin-bottom: 10px;
}

.h1, .h2, .h3, .h4, .h5, .h6 {
  line-height: 1.2;
  letter-spacing: -0.03em;
  font-weight: 600;
  /*color: black;*/
}

.h1 {
  font-size: var(--text-6xl);
  letter-spacing: -0.035em;
}

.h2 {
  font-size: var(--text-5xl);
}

.h3 {
  font-size: var(--text-4xl);
  letter-spacing: -0.03em;
}
@media (max-width: 991px) {
  .h3 {
    font-size: var(--text-3xl);
  }
}

.h4 {
  line-height: 1.4;
  font-size: var(--text-3xl);
}

.h5 {
  font-size: var(--text-2xl) !important;
}

.h6 {
  font-size: var(--text-xl);
  margin-bottom: 10px;
}

.text-xs {
  font-size: var(--text-xs)!important;
}

.text-sm {
  font-size: var(--text-sm)!important;
}

.text-base {
  font-size: var(--text-base)!important;
}

.text-lg {
  font-size: var(--text-lg)!important;
}

.text-xl {
  font-size: var(--text-xl)!important;
}

.text-2xl {
  font-size: var(--text-2xl)!important;
}

.text-3xl {
  font-size: var(--text-3xl)!important;
}

.text-4xl {
  font-size: var(--text-4xl)!important;
}

.text-5xl {
  font-size: var(--text-5xl)!important;
}

.text-6xl {
  font-size: var(--text-6xl)!important;
}

.text-7xl {
  font-size: var(--text-7xl)!important;
  overflow-wrap: break-word; 
  hyphens: auto;    
}

.text-8xl {
  font-size: var(--text-8xl)!important;
  overflow-wrap: break-word; 
  hyphens: auto;    
}

.text-9xl {
  font-size: var(--text-9xl)!important;
  overflow-wrap: break-word; 
  hyphens: auto;    
}

.text-10xl {
  font-size: var(--text-10xl)!important;
  overflow-wrap: break-word; 
  hyphens: auto;    
}

.text-11xl {
  font-size: var(--text-11xl)!important;
  overflow-wrap: break-word; 
  hyphens: auto;    
}


@media (max-width: 1229px) {
  .lg\:text-xs {
    font-size: var(--text-xs)!important;
  }
  .lg\:text-sm {
    font-size: var(--text-sm)!important;
  }
  .lg\:text-base {
    font-size: var(--text-base)!important;
  }
  .lg\:text-lg {
    font-size: var(--text-lg)!important;
  }
  .lg\:text-xl {
    font-size: var(--text-xl)!important;
  }
  .lg\:text-2xl {
    font-size: var(--text-2xl)!important;
  }
  .lg\:text-3xl {
    font-size: var(--text-3xl)!important;
  }
  .lg\:text-4xl {
    font-size: var(--text-4xl)!important;
  }
  .lg\:text-5xl {
    font-size: var(--text-5xl)!important;
  }
  .lg\:text-6xl {
    font-size: var(--text-6xl)!important;
  }
  .lg\:text-7xl {
    font-size: var(--text-7xl)!important;
  }
  .lg\:text-8xl {
    font-size: var(--text-8xl)!important;
  }
  .lg\:text-9xl {
    font-size: var(--text-9xl)!important;
  }
  .lg\:ratio-1\:1::before {
    padding-bottom: 100%;
  }
  .lg\:ratio-2\:1::before {
    padding-bottom: 50%;
  }
  .lg\:ratio-2\:3::before {
    padding-bottom: 150%;
  }
  .lg\:ratio-3\:2::before {
    padding-bottom: 66.66667%;
  }
  .lg\:ratio-3\:4::before {
    padding-bottom: 133.33333%;
  }
  .lg\:ratio-4\:3::before {
    padding-bottom: 75%;
  }
  .lg\:ratio-16\:9::before {
    padding-bottom: 56.25%;
  }    
}

@media (max-width: 991px) {
  .md\:text-xs {
    font-size: var(--text-xs)!important;
  }
  .md\:text-sm {
    font-size: var(--text-sm)!important;
  }
  .md\:text-base {
    font-size: var(--text-base)!important;
  }
  .md\:text-lg {
    font-size: var(--text-lg)!important;
  }
  .md\:text-xl {
    font-size: var(--text-xl)!important;
  }
  .md\:text-2xl {
    font-size: var(--text-2xl)!important;
  }
  .md\:text-3xl {
    font-size: var(--text-3xl)!important;
  }
  .md\:text-4xl {
    font-size: var(--text-4xl)!important;
  }
  .md\:text-5xl {
    font-size: var(--text-5xl)!important;
  }
  .md\:text-6xl {
    font-size: var(--text-6xl)!important;
  }
  .md\:text-7xl {
    font-size: var(--text-7xl)!important;
  }
  .md\:text-8xl {
    font-size: var(--text-8xl)!important;
  }
  .md\:text-9xl {
    font-size: var(--text-9xl)!important;
  }
  .md\:ratio-1\:1::before {
    padding-bottom: 100%;
  }
  .md\:ratio-2\:1::before {
    padding-bottom: 50%;
  }
  .md\:ratio-2\:3::before {
    padding-bottom: 150%;
  }
  .md\:ratio-3\:2::before {
    padding-bottom: 66.66667%;
  }
  .md\:ratio-3\:4::before {
    padding-bottom: 133.33333%;
  }
  .md\:ratio-4\:3::before {
    padding-bottom: 75%;
  }
  .md\:ratio-16\:9::before {
    padding-bottom: 56.25%;
  }  
  .md\:py-88 {
    padding-top: 5.5rem !important;
    padding-bottom: 5.5rem !important;
  }
  .md\:px-88 {
    padding-left: 5.5rem !important;
    padding-right: 5.5rem !important;
  }
  .md\:pt-88 {
    padding-top: 5.5rem !important;
  }
  .md\:pb-88 {
    padding-bottom: 5.5rem !important;
  }
  .md\:pl-88 {
    padding-left: 5.5rem !important;
  }
  .md\:pr-88 {
    padding-right: 5.5rem !important;
  }
  .md\:mt-88 {
    margin-top: 5.5rem !important;
  }
  .md\:mb-88 {
    margin-bottom: 5.5rem !important;
  }
  .md\:ml-88 {
    margin-left: 5.5rem !important;
  }
  .md\:mr-88 {
    margin-right: 5.5rem !important;
  }
  .md\:py-96 {
    padding-top: 6rem;
    padding-bottom: 6rem;
  }
  .md\:px-96 {
    padding-left: 6rem !important;
    padding-right: 6rem !important;
  }
  .md\:pt-96 {
    padding-top: 6rem !important;
  }
  .md\:pb-96 {
    padding-bottom: 6rem !important;
  }
  .md\:pl-96 {
    padding-left: 6rem !important;
  }
  .md\:pr-96 {
    padding-right: 6rem !important;
  }
  .md\:mt-96 {
    margin-top: 6rem !important;
  }
  .md\:mb-96 {
    margin-bottom: 6rem !important;
  }
  .md\:ml-96 {
    margin-left: 6rem !important;
  }
  .md\:mr-96 {
    margin-right: 6rem !important;
  }
}

@media (max-width: 767px) {
  .sm\:text-xs {
    font-size: var(--text-xs)!important;
  }
  .sm\:text-sm {
    font-size: var(--text-sm)!important;
  }
  .sm\:text-base {
    font-size: var(--text-base)!important;
  }
  .sm\:text-lg {
    font-size: var(--text-lg)!important;
  }
  .sm\:text-xl {
    font-size: var(--text-xl)!important;
  }
  .sm\:text-2xl {
    font-size: var(--text-2xl)!important;
  }
  .sm\:text-3xl {
    font-size: var(--text-3xl)!important;
  }
  .sm\:text-4xl {
    font-size: var(--text-4xl)!important;
  }
  .sm\:text-5xl {
    font-size: var(--text-5xl)!important;
  }
  .sm\:text-6xl {
    font-size: var(--text-6xl)!important;
  }
  .sm\:text-7xl {
    font-size: var(--text-7xl)!important;
  }
  .sm\:text-8xl {
    font-size: var(--text-8xl)!important;
  }
  .sm\:text-9xl {
    font-size: var(--text-9xl)!important;
  }
  .sm\:ratio-1\:1::before {
    padding-bottom: 100%;
  }
  .sm\:ratio-2\:1::before {
    padding-bottom: 50%;
  }
  .sm\:ratio-2\:3::before {
    padding-bottom: 150%;
  }
  .sm\:ratio-3\:2::before {
    padding-bottom: 66.66667%;
  }
  .sm\:ratio-3\:4::before {
    padding-bottom: 133.33333%;
  }
  .sm\:ratio-4\:3::before {
    padding-bottom: 75%;
  }
  .sm\:ratio-16\:9::before {
    padding-bottom: 56.25%;
  }
  .sm\:py-88 {
    padding-top: 5.5rem !important;
    padding-bottom: 5.5rem !important;
  }
  .sm\:px-88 {
    padding-left: 5.5rem !important;
    padding-right: 5.5rem !important;
  }
  .sm\:pt-88 {
    padding-top: 5.5rem !important;
  }
  .sm\:pb-88 {
    padding-bottom: 5.5rem !important;
  }
  .sm\:pl-88 {
    padding-left: 5.5rem !important;
  }
  .sm\:pr-88 {
    padding-right: 5.5rem !important;
  }
  .sm\:mt-88 {
    margin-top: 5.5rem !important;
  }
  .sm\:mb-88 {
    margin-bottom: 5.5rem !important;
  }
  .sm\:ml-88 {
    margin-left: 5.5rem !important;
  }
  .sm\:mr-88 {
    margin-right: 5.5rem !important;
  }
  .sm\:py-96 {
    padding-top: 6rem !important;
    padding-bottom: 6rem !important;
  }
  .sm\:px-96 {
    padding-left: 6rem !important;
    padding-right: 6rem !important;
  }
  .sm\:pt-96 {
    padding-top: 6rem !important;
  }
  .sm\:pb-96 {
    padding-bottom: 6rem !important;
  }
  .sm\:pl-96 {
    padding-left: 6rem !important;
  }
  .sm\:pr-96 {
    padding-right: 6rem !important;
  }
  .sm\:mt-96 {
    margin-top: 6rem !important;
  }
  .sm\:mb-96 {
    margin-bottom: 6rem !important;
  }
  .sm\:ml-96 {
    margin-left: 6rem !important;
  }
  .sm\:mr-96 {
    margin-right: 6rem !important;
  }    
}

@media (max-width: 575px) {
  .xs\:text-xs {
    font-size: var(--text-xs)!important;
  }
  .xs\:text-sm {
    font-size: var(--text-sm)!important;
  }
  .xs\:text-base {
    font-size: var(--text-base)!important;
  }
  .xs\:text-lg {
    font-size: var(--text-lg)!important;
  }
  .xs\:text-xl {
    font-size: var(--text-xl)!important;
  }
  .xs\:text-2xl {
    font-size: var(--text-2xl)!important;
  }
  .xs\:text-3xl {
    font-size: var(--text-3xl)!important;
  }
  .xs\:text-4xl {
    font-size: var(--text-4xl)!important;
  }
  .xs\:text-5xl {
    font-size: var(--text-5xl)!important;
  }
  .xs\:text-6xl {
    font-size: var(--text-6xl)!important;
  }    
  .xs\:text-7xl {
    font-size: var(--text-7xl)!important;
  }
  .xs\:text-8xl {
    font-size: var(--text-8xl)!important;
  }
  .xs\:text-9xl {
    font-size: var(--text-9xl)!important;
  }
  .xs\:py-88 {
    padding-top: 5.5rem !important;
    padding-bottom: 5.5rem !important;
  }
  .xs\:px-88 {
    padding-left: 5.5rem !important;
    padding-right: 5.5rem !important;
  }
  .xs\:pt-88 {
    padding-top: 5.5rem !important;
  }
  .xs\:pb-88 {
    padding-bottom: 5.5rem !important;
  }
  .xs\:pl-88 {
    padding-left: 5.5rem !important;
  }
  .xs\:pr-88 {
    padding-right: 5.5rem !important;
  }
  .xs\:mt-88 {
    margin-top: 5.5rem !important;
  }
  .xs\:mb-88 {
    margin-bottom: 5.5rem !important;
  }
  .xs\:ml-88 {
    margin-left: 5.5rem !important;
  }
  .xs\:mr-88 {
    margin-right: 5.5rem !important;
  }
  .xs\:py-96 {
    padding-top: 6rem !important;
    padding-bottom: 6rem !important;
  }
  .xs\:px-96 {
    padding-left: 6rem !important;
    padding-right: 6rem !important;
  }
  .xs\:pt-96 {
    padding-top: 6rem !important;
  }
  .xs\:pb-96 {
    padding-bottom: 6rem !important;
  }
  .xs\:pl-96 {
    padding-left: 6rem !important;
  }
  .xs\:pr-96 {
    padding-right: 6rem !important;
  }
  .xs\:mt-96 {
    margin-top: 6rem !important;
  }
  .xs\:mb-96 {
    margin-bottom: 6rem !important;
  }
  .xs\:ml-96 {
    margin-left: 6rem !important;
  }
  .xs\:mr-96 {
    margin-right: 6rem !important;
  }    
  .xs\:ratio-1\:1::before {
    padding-bottom: 100%;
  }
  .xs\:ratio-2\:1::before {
    padding-bottom: 50%;
  }
  .xs\:ratio-2\:3::before {
    padding-bottom: 150%;
  }
  .xs\:ratio-3\:2::before {
    padding-bottom: 66.66667%;
  }
  .xs\:ratio-3\:4::before {
    padding-bottom: 133.33333%;
  }
  .xs\:ratio-4\:3::before {
    padding-bottom: 75%;
  }
  .xs\:ratio-16\:9::before {
    padding-bottom: 56.25%;
  }  
  .xs\:mt-minus-24 {
  margin-top: -1.5rem !important;
  } 
  .xs\:mb-minus-24 {
  margin-bottom: -1.5rem !important;
  } 
  .xs\:ml-minus-24 {
  margin-left: -1.5rem !important;
  }     
}

@media (max-width: 475px) {
  .xxs\:text-xs {
    font-size: var(--text-xs)!important;
  }
  .xxs\:text-sm {
    font-size: var(--text-sm)!important;
  }
  .xxs\:text-base {
    font-size: var(--text-base)!important;
  }
  .xxs\:text-lg {
    font-size: var(--text-lg)!important;
  }
  .xxs\:text-xl {
    font-size: var(--text-xl)!important;
  }
  .xxs\:text-2xl {
    font-size: var(--text-2xl)!important;
  }
  .xxs\:text-3xl {
    font-size: var(--text-3xl)!important;
  }
  .xxs\:text-4xl {
    font-size: var(--text-4xl)!important;
  }
  .xxs\:text-5xl {
    font-size: var(--text-5xl)!important;
  }
  .xxs\:text-6xl {
    font-size: var(--text-6xl)!important;
  }    
  .xxs\:text-7xl {
    font-size: var(--text-7xl)!important;
  }
  .xxs\:text-8xl {
    font-size: var(--text-8xl)!important;
  }
  .xxs\:text-9xl {
    font-size: var(--text-9xl)!important;
  }
  .xxs\:py-88 {
    padding-top: 5.5rem !important;
    padding-bottom: 5.5rem !important;
  }
  .xxs\:px-88 {
    padding-left: 5.5rem !important;
    padding-right: 5.5rem !important;
  }
  .xxs\:pt-88 {
    padding-top: 5.5rem !important;
  }
  .xxs\:pb-88 {
    padding-bottom: 5.5rem !important;
  }
  .xxs\:pl-88 {
    padding-left: 5.5rem !important;
  }
  .xxs\:pr-88 {
    padding-right: 5.5rem !important;
  }
  .xxs\:mt-88 {
    margin-top: 5.5rem !important;
  }
  .xxs\:mb-88 {
    margin-bottom: 5.5rem !important;
  }
  .xxs\:ml-88 {
    margin-left: 5.5rem !important;
  }
  .xxs\:mr-88 {
    margin-right: 5.5rem !important;
  }
  .xxs\:py-96 {
    padding-top: 6rem !important;
    padding-bottom: 6rem !important;
  }
  .xxs\:px-96 {
    padding-left: 6rem !important;
    padding-right: 6rem !important;
  }
  .xxs\:pt-96 {
    padding-top: 6rem !important;
  }
  .xxs\:pb-96 {
    padding-bottom: 6rem !important;
  }
  .xxs\:pl-96 {
    padding-left: 6rem !important;
  }
  .xxs\:pr-96 {
    padding-right: 6rem !important;
  }
  .xxs\:mt-96 {
    margin-top: 6rem !important;
  }
  .xxs\:mb-96 {
    margin-bottom: 6rem !important;
  }
  .xxs\:ml-96 {
    margin-left: 6rem !important;
  }
  .xxs\:mr-96 {
    margin-right: 6rem !important;
  }    
  .xxs\:ratio-1\:1::before {
    padding-bottom: 100%;
  }
  .xxs\:ratio-2\:1::before {
    padding-bottom: 50%;
  }
  .xxs\:ratio-2\:3::before {
    padding-bottom: 150%;
  }
  .xxs\:ratio-3\:2::before {
    padding-bottom: 66.66667%;
  }
  .xxs\:ratio-3\:4::before {
    padding-bottom: 133.33333%;
  }
  .xxs\:ratio-4\:3::before {
    padding-bottom: 75%;
  }
  .xxs\:ratio-16\:9::before {
    padding-bottom: 56.25%;
  }  
  .xxs\:mt-minus-24 {
    margin-top: -1.5rem !important;
  } 
  .xxs\:mb-minus-24 {
    margin-bottom: -1.5rem !important;
  } 
  .xxs\:ml-minus-24 {
    margin-left: -1.5rem !important;
  }     
  .xxs\:py-0 {
    padding-top: 0rem !important;
    padding-bottom: 0rem !important;
  }
  .xxs\:px-0 {
    padding-left: 0rem !important;
    padding-right: 0rem !important;
  }
  .xxs\:pt-0 {
    padding-top: 0rem !important;
  }
  .xxs\:pb-0 {
    padding-bottom: 0rem !important;
  }
  .xxs\:pl-0 {
    padding-left: 0rem !important;
  }
  .xxs\:pr-0 {
    padding-right: 0rem !important;
  }
  .xxs\:mt-0 {
    margin-top: 0rem !important;
  }
  .xxs\:mb-0 {
    margin-bottom: 0rem !important;
  }
  .xxs\:ml-0 {
    margin-left: 0rem !important;
  }
  .xxs\:mr-0 {
    margin-right: 0rem !important;
  }
  .xxs\:py-4 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }
  .xxs\:px-4 {
    padding-left: 0.25rem !important;
    padding-right: 0.25rem !important;
  }
  .xxs\:pt-4 {
    padding-top: 0.25rem !important;
  }
  .xxs\:pb-4 {
    padding-bottom: 0.25rem !important;
  }
  .xxs\:pl-4 {
    padding-left: 0.25rem !important;
  }
  .xxs\:pr-4 {
    padding-right: 0.25rem !important;
  }
  .xxs\:mt-4 {
    margin-top: 0.25rem !important;
  }
  .xxs\:mb-4 {
    margin-bottom: 0.25rem !important;
  }
  .xxs\:ml-4 {
    margin-left: 0.25rem !important;
  }
  .xxs\:mr-4 {
    margin-right: 0.25rem !important;
  }
  .xxs\:py-8 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }
  .xxs\:px-8 {
    padding-left: 0.5rem !important;
    padding-right: 0.5rem !important;
  }
  .xxs\:pt-8 {
    padding-top: 0.5rem !important;
  }
  .xxs\:pb-8 {
    padding-bottom: 0.5rem !important;
  }
  .xxs\:pl-8 {
    padding-left: 0.5rem !important;
  }
  .xxs\:pr-8 {
    padding-right: 0.5rem !important;
  }
  .xxs\:mt-8 {
    margin-top: 0.5rem !important;
  }
  .xxs\:mb-8 {
    margin-bottom: 0.5rem !important;
  }
  .xxs\:ml-8 {
    margin-left: 0.5rem !important;
  }
  .xxs\:mr-8 {
    margin-right: 0.5rem !important;
  }
  .xxs\:py-12 {
    padding-top: 0.75rem !important;
    padding-bottom: 0.75rem !important;
  }
  .xxs\:px-12 {
    padding-left: 0.75rem !important;
    padding-right: 0.75rem !important;
  }
  .xxs\:pt-12 {
    padding-top: 0.75rem !important;
  }
  .xxs\:pb-12 {
    padding-bottom: 0.75rem !important;
  }
  .xxs\:pl-12 {
    padding-left: 0.75rem !important;
  }
  .xxs\:pr-12 {
    padding-right: 0.75rem !important;
  }
  .xxs\:mt-12 {
    margin-top: 0.75rem !important;
  }
  .xxs\:mb-12 {
    margin-bottom: 0.75rem !important;
  }
  .xxs\:ml-12 {
    margin-left: 0.75rem !important;
  }
  .xxs\:mr-12 {
    margin-right: 0.75rem !important;
  }
  .xxs\:py-16 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }
  .xxs\:px-16 {
    padding-left: 1rem !important;
    padding-right: 1rem !important;
  }
  .xxs\:pt-16 {
    padding-top: 1rem !important;
  }
  .xxs\:pb-16 {
    padding-bottom: 1rem !important;
  }
  .xxs\:pl-16 {
    padding-left: 1rem !important;
  }
  .xxs\:pr-16 {
    padding-right: 1rem !important;
  }
  .xxs\:mt-16 {
    margin-top: 1rem !important;
  }
  .xxs\:mb-16 {
    margin-bottom: 1rem !important;
  }
  .xxs\:ml-16 {
    margin-left: 1rem !important;
  }
  .xxs\:mr-16 {
    margin-right: 1rem !important;
  }
  .xxs\:py-20 {
    padding-top: 1.25rem !important;
    padding-bottom: 1.25rem !important;
  }
  .xxs\:px-20 {
    padding-left: 1.25rem !important;
    padding-right: 1.25rem !important;
  }
  .xxs\:pt-20 {
    padding-top: 1.25rem !important;
  }
  .xxs\:pb-20 {
    padding-bottom: 1.25rem !important;
  }
  .xxs\:pl-20 {
    padding-left: 1.25rem !important;
  }
  .xxs\:pr-20 {
    padding-right: 1.25rem !important;
  }
  .xxs\:mt-20 {
    margin-top: 1.25rem !important;
  }
  .xxs\:mb-20 {
    margin-bottom: 1.25rem !important;
  }
  .xxs\:ml-20 {
    margin-left: 1.25rem !important;
  }
  .xxs\:mr-20 {
    margin-right: 1.25rem !important;
  }
  .xxs\:py-24 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }
  .xxs\:px-24 {
    padding-left: 1.5rem !important;
    padding-right: 1.5rem !important;
  }
  .xxs\:pt-24 {
    padding-top: 1.5rem !important;
  }
  .xxs\:pb-24 {
    padding-bottom: 1.5rem !important;
  }
  .xxs\:pl-24 {
    padding-left: 1.5rem !important;
  }
  .xxs\:pr-24 {
    padding-right: 1.5rem !important;
  }
  .xxs\:mt-24 {
    margin-top: 1.5rem !important;
  }
  .xxs\:mb-24 {
    margin-bottom: 1.5rem !important;
  }
  .xxs\:ml-24 {
    margin-left: 1.5rem !important;
  }
  .xxs\:mr-24 {
    margin-right: 1.5rem !important;
  }
  .xxs\:py-32 {
    padding-top: 2rem !important;
    padding-bottom: 2rem !important;
  }
  .xxs\:px-32 {
    padding-left: 2rem !important;
    padding-right: 2rem !important;
  }
  .xxs\:pt-32 {
    padding-top: 2rem !important;
  }
  .xxs\:pb-32 {
    padding-bottom: 2rem !important;
  }
  .xxs\:pl-32 {
    padding-left: 2rem !important;
  }
  .xxs\:pr-32 {
    padding-right: 2rem !important;
  }
  .xxs\:mt-32 {
    margin-top: 2rem !important;
  }
  .xxs\:mb-32 {
    margin-bottom: 2rem !important;
  }
  .xxs\:ml-32 {
    margin-left: 2rem !important;
  }
  .xxs\:mr-32 {
    margin-right: 2rem !important;
  }
  .xxs\:py-40 {
    padding-top: 2.5rem !important;
    padding-bottom: 2.5rem !important;
  }
  .xxs\:px-40 {
    padding-left: 2.5rem !important;
    padding-right: 2.5rem !important;
  }
  .xxs\:pt-40 {
    padding-top: 2.5rem !important;
  }
  .xxs\:pb-40 {
    padding-bottom: 2.5rem !important;
  }
  .xxs\:pl-40 {
    padding-left: 2.5rem !important;
  }
  .xxs\:pr-40 {
    padding-right: 2.5rem !important;
  }
  .xxs\:mt-40 {
    margin-top: 2.5rem !important;
  }
  .xxs\:mb-40 {
    margin-bottom: 2.5rem !important;
  }
  .xxs\:ml-40 {
    margin-left: 2.5rem !important;
  }
  .xxs\:mr-40 {
    margin-right: 2.5rem !important;
  }
  .xxs\:py-48 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }
  .xxs\:px-48 {
    padding-left: 3rem !important;
    padding-right: 3rem !important;
  }
  .xxs\:pt-48 {
    padding-top: 3rem !important;
  }
  .xxs\:pb-48 {
    padding-bottom: 3rem !important;
  }
  .xxs\:pl-48 {
    padding-left: 3rem !important;
  }
  .xxs\:pr-48 {
    padding-right: 3rem !important;
  }
  .xxs\:mt-48 {
    margin-top: 3rem !important;
  }
  .xxs\:mb-48 {
    margin-bottom: 3rem !important;
  }
  .xxs\:ml-48 {
    margin-left: 3rem !important;
  }
  .xxs\:mr-48 {
    margin-right: 3rem !important;
  }
  .xxs\:py-56 {
    padding-top: 3.5rem !important;
    padding-bottom: 3.5rem !important;
  }
  .xxs\:px-56 {
    padding-left: 3.5rem !important;
    padding-right: 3.5rem !important;
  }
  .xxs\:pt-56 {
    padding-top: 3.5rem !important;
  }
  .xxs\:pb-56 {
    padding-bottom: 3.5rem !important;
  }
  .xxs\:pl-56 {
    padding-left: 3.5rem !important;
  }
  .xxs\:pr-56 {
    padding-right: 3.5rem !important;
  }
  .xxs\:mt-56 {
    margin-top: 3.5rem !important;
  }
  .xxs\:mb-56 {
    margin-bottom: 3.5rem !important;
  }
  .xxs\:ml-56 {
    margin-left: 3.5rem !important;
  }
  .xxs\:mr-56 {
    margin-right: 3.5rem !important;
  }
  .xxs\:py-64 {
    padding-top: 4rem !important;
    padding-bottom: 4rem !important;
  }
  .xxs\:px-64 {
    padding-left: 4rem !important;
    padding-right: 4rem !important;
  }
  .xxs\:pt-64 {
    padding-top: 4rem !important;
  }
  .xxs\:pb-64 {
    padding-bottom: 4rem !important;
  }
  .xxs\:pl-64 {
    padding-left: 4rem !important;
  }
  .xxs\:pr-64 {
    padding-right: 4rem !important;
  }
  .xxs\:mt-64 {
    margin-top: 4rem !important;
  }
  .xxs\:mb-64 {
    margin-bottom: 4rem !important;
  }
  .xxs\:ml-64 {
    margin-left: 4rem !important;
  }
  .xxs\:mr-64 {
    margin-right: 4rem !important;
  }
  .xxs\:py-72 {
    padding-top: 4.5rem !important;
    padding-bottom: 4.5rem !important;
  }
  .xxs\:px-72 {
    padding-left: 4.5rem !important;
    padding-right: 4.5rem !important;
  }
  .xxs\:pt-72 {
    padding-top: 4.5rem !important;
  }
  .xxs\:pb-72 {
    padding-bottom: 4.5rem !important;
  }
  .xxs\:pl-72 {
    padding-left: 4.5rem !important;
  }
  .xxs\:pr-72 {
    padding-right: 4.5rem !important;
  }
  .xxs\:mt-72 {
    margin-top: 4.5rem !important;
  }
  .xxs\:mb-72 {
    margin-bottom: 4.5rem !important;
  }
  .xxs\:ml-72 {
    margin-left: 4.5rem !important;
  }
  .xxs\:mr-72 {
    margin-right: 4.5rem !important;
  }
  .xxs\:py-80 {
    padding-top: 5rem !important;
    padding-bottom: 5rem !important;
  }
  .xxs\:px-80 {
    padding-left: 5rem !important;
    padding-right: 5rem !important;
  }
  .xxs\:pt-80 {
    padding-top: 5rem !important;
  }
  .xxs\:pb-80 {
    padding-bottom: 5rem !important;
  }
  .xxs\:pl-80 {
    padding-left: 5rem !important;
  }
  .xxs\:pr-80 {
    padding-right: 5rem !important;
  }
  .xxs\:mt-80 {
    margin-top: 5rem !important;
  }
  .xxs\:mb-80 {
    margin-bottom: 5rem !important;
  }
  .xxs\:ml-80 {
    margin-left: 5rem !important;
  }
  .xxs\:mr-80 {
    margin-right: 5rem !important;
  }
}


.tracking-xs {
    letter-spacing: -0.02em !important;
}
.tracking-xxs {
    letter-spacing: -0.035em !important;
}
.break-word {
    overflow-wrap: break-word;
    /*hyphens: auto;*/
}

.m-0 {
    margin: 0!important;
}
.p-0 {
    padding: 0!important;
}

.ml--03 {
  margin-left: -3px;
}
@media (max-width: 1229px) {
  .ml--03 {
    margin-left: -3px;
  }
}
@media (max-width: 991px) {
  .ml--03 {
    margin-left: -2px;
  }
}
.ml--05 {
  margin-left: -5px;
}
@media (max-width: 1229px) {
  .ml--05 {
    margin-left: -4px;
  }
}
@media (max-width: 767px) {
  .ml--05 {
    margin-left: -2px;
  }
}
.mt--03 {
  margin-top: -3px;
}
.mt--05 {
  margin-top: -5px;
}
.mb--03 {
  margin-bottom: -3px;
}
.mb--05 {
  margin-bottom: -5px;
}
.mt-2 {
  margin-top: 0.125rem !important;
}
.mb-2 {
  margin-bottom: 0.125rem !important;
}
.mt-6 {
  margin-top: 0.375rem !important;
}
.mb-6 {
  margin-bottom: 0.375rem !important;
}
.ml--10 {
    margin-left: -10px;
}
.mt--10 {
    margin-top: -10px;
}
.mt-minus-24 {
  margin-top: -1.5rem !important;
}
.mt-minus-48 {
  margin-top: -3rem !important;
}
.mt-minus-56 {
  margin-top: -3.5rem !important;
}
.mt-minus-64 {
  margin-top: -4rem !important;
}
.mt-minus-72 {
  margin-top: -4.5rem !important;
}
.mt-minus-80 {
  margin-top: -5rem !important;
}
.mt-minus-160 {
  margin-top: -10rem !important;
}
.mb-minus-24 {
  margin-bottom: -1.5rem !important;
}
.mb-minus-48 {
  margin-bottom: -3rem !important;
}
.mb-minus-56 {
  margin-bottom: -3.5rem !important;
}
.mb-minus-64 {
  margin-bottom: -4rem !important;
}
.mb-minus-72 {
  margin-bottom: -4.5rem !important;
}
.mb-minus-80 {
  margin-bottom: -5rem !important;
}
.mb-minus-160 {
  margin-bottom: -10rem !important;
}
.ml-minus-24 {
  margin-left: -1.5rem !important;
}
.ml-minus-48 {
  margin-left: -3rem !important;
}
.ml-minus-56 {
  margin-left: -3.5rem !important;
}
.ml-minus-64 {
  margin-left: -4rem !important;
}
.ml-minus-72 {
  margin-left: -4.5rem !important;
}
.ml-minus-80 {
  margin-left: -5rem !important;
}
.ml-minus-160 {
  margin-left: -10rem !important;
}
.pt-120 {
  padding-top: 7.5rem
}
.pt-160 {
  padding-top: 10rem
}
.pb-120 {
  padding-bottom: 7.5rem
}
.pb-160 {
  padding-bottom: 10rem
}

@media (max-width: 1229px) {
  .lg\:pt-120 {
    padding-top: 7.5rem
  }
}

@media (max-width: 991px) {
  .md\:mt-48 {
    margin-top: 3rem !important;
  }
  .md\:my-48 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;  
  }
  .md\:my-56 {
    margin-top: 3.5rem !important;
    margin-bottom: 3.5rem !important;  
  }    
}

@media (max-width: 767px) {
  .sm\:mt-minus-48 {
    margin-top: -3rem !important;
  }
  .sm\:mt-minus-56 {
    margin-top: -3.5rem !important;
  }
  .sm\:mt-minus-64 {
    margin-top: -4rem !important;
  }
  .sm\:mt-minus-72 {
    margin-top: -4.5rem !important;
  }
  .sm\:mt-minus-80 {
    margin-top: -5rem !important;
  }
  .sm\:mb-minus-48 {
    margin-bottom: -3rem !important;
  }
  .sm\:mb-minus-56 {
    margin-bottom: -3.5rem !important;
  }
  .sm\:mb-minus-64 {
    margin-bottom: -4rem !important;
  }
  .sm\:mb-minus-72 {
    margin-bottom: -4.5rem !important;
  }
  .sm\:mb-minus-80 {
    margin-bottom: -5rem !important;
  }  
  .sm\:ml-minus-48 {
    margin-left: -3rem !important;
  }
  .sm\:ml-minus-56 {
    margin-left: -3.5rem !important;
  }
  .sm\:ml-minus-64 {
    margin-left: -4rem !important;
  }
  .sm\:ml-minus-72 {
    margin-left: -4.5rem !important;
  }
  .sm\:ml-minus-80 {
    margin-left: -5rem !important;
  }      
}

.inherit {
  display: inherit;
}
.leading-md-lg {
  line-height: 1.35 !important;
}
.leading-xss {
    line-height: 1.05 !important;
}
.leading-xxs {
    line-height: 1.0 !important;
}
.leading-xxxs {
    line-height: 0.95 !important;
}

.x-gap-8 {
  margin-left: -0.25rem;
  margin-right: -0.25rem;
}

.x-gap-8 > * {
  padding-left: 0.25rem;
  padding-right: 0.25rem;
}

.x-gap-16 {
  margin-left: -0.5rem;
  margin-right: -0.5rem;
}

.x-gap-16 > * {
  padding-left: 0.5rem;
  padding-right: 0.5rem;
}

.x-gap-24 {
  margin-left: -0.75rem;
  margin-right: -0.75rem;
}

.x-gap-24 > * {
  padding-left: 0.75rem;
  padding-right: 0.75rem;
}

.y-gap-8 {
  margin-top: -0.25rem;
  margin-bottom: -0.25rem;
}

.y-gap-8 > * {
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
}

.y-gap-16 {
  margin-top: -0.5rem;
  margin-bottom: -0.5rem;
}

.y-gap-16 > * {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}

.y-gap-24 {
  margin-top: -0.75rem;
  margin-bottom: -0.75rem;
}

.y-gap-24 > * {
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
}


/* 15.3. Navigation list */
.navList li a {
  letter-spacing: -0.04em;
}


/* 23. Contact */
.contact-form.-type-1 label .form__error {
  color: var(--accent-color-text);
}
.contact-form.-type-1 input.-error,
.contact-form.-type-1 textarea.-error {
  border-color: var(--accent-color-text) !important;
}

/*--------------------------------------------------
	24. Section heading
---------------------------------------------------*/
@media (max-width: 767px) {
  .sectionHeading.-sm .sectionHeading__title {
    font-size: 1.75rem;
    line-height: 1.3;
    margin-bottom: 1.1rem;
  }
}
.sectionHeading.-sm .sectionHeading__title {
  letter-spacing: -0.018em;
}

qm {
  top: -1em;
}
qm, qm {
  position: relative;
  font-size: 45%;
  line-height: 0;
  vertical-align: baseline;
  font-weight: 400;
}

/*--------------------------------------------------
	48. Masonry
---------------------------------------------------*/

.filter-button-group button.btn-active.-active-bg-black {
  background-color: #121212;
  color: #FFF !important;
  text-decoration: none;
}
.filter-button-group button.btn-active.-active-bg-white {
  background-color: #FFF;
  color: #000 !important;
  text-decoration: none;
}
.filter-button-group button.btn-active.-active-bg-accent {
  background-color: var(--accent-color);
  color: #000 !important;
  text-decoration: none;
  border: 0.0625rem solid var(--accent-color);
}
.filter-button-group button.text-hover-white:hover {
  color: #FFF !important;
}
.filter-button-group button.text-hover-black:hover {
  color: #000 !important;
}
.masonry.-col-5 .masonry__sizer {
  width: 20%;
}

.masonry.-col-5 .masonry__item {
  width: 20%;
}

.masonry.-col-5 .masonry__item.-long {
  width: 20%;
}

.masonry.-col-5 .masonry__item.-big {
  width: 40%;
}

.masonry.-col-5 .masonry__item.-wide {
  width: 40%;
}

@media (max-width: 991px) {
  .masonry.-col-5 .masonry__sizer {
    width: 25%;
  }
  .masonry.-col-5 .masonry__item {
    width: 25%;
  }
  .masonry.-col-5 .masonry__item.-long {
    width: 25%;
  }
  .masonry.-col-5 .masonry__item.-big {
    width: 50%;
  }
  .masonry.-col-5 .masonry__item.-wide {
    width: 50%;
  }
}

@media (max-width: 767px) {
  .masonry.-col-5 .masonry__sizer {
    width: 33.33333%;
  }
  .masonry.-col-5 .masonry__item {
    width: 33.33333%;
  }
  .masonry.-col-5 .masonry__item.-long {
    width: 33.33333%;
  }
  .masonry.-col-5 .masonry__item.-big {
    width: 66.66666%;
  }
  .masonry.-col-5 .masonry__item.-wide {
    width: 66.66666%;
  }
}

@media (max-width: 575px) {
  .masonry.-col-5 .masonry__sizer {
    width: 50%;
  }
  .masonry.-col-5 .masonry__item {
    width: 50%;
  }
  .masonry.-col-5 .masonry__item.-long {
    width: 50%;
  }
  .masonry.-col-5 .masonry__item.-big {
    width: 50%;
  }
  .masonry.-col-5 .masonry__item.-wide {
    width: 50%;
  }
}

.masonry.-gap-8 {
  margin-left: -0.25rem;
  margin-right: -0.25rem;
}

.masonry.-gap-8 .masonry__item {
  padding: 0 0.25rem;
  margin-bottom: 0.5rem;
}

.masonry.-gap-8 .masonry__item .ratio {
  padding-bottom: 100%;
}

.masonry.-gap-8 .masonry__item.-long .ratio {
  padding-bottom: calc(200% + 0.5rem);
}

.masonry.-gap-8 .masonry__item.-big .ratio {
  padding-bottom: 100%;
}

.masonry.-gap-8 .masonry__item.-wide .ratio {
  padding-bottom: calc(50% - 0.25rem);
}

.masonry.-gap-16 {
  margin-left: -0.5rem;
  margin-right: -0.5rem;
}

.masonry.-gap-16 .masonry__item {
  padding: 0 0.5rem;
  margin-bottom: 1rem;
}

.masonry.-gap-16 .masonry__item .ratio {
  padding-bottom: 100%;
}

.masonry.-gap-16 .masonry__item.-long .ratio {
  padding-bottom: calc(200% + 1rem);
}

.masonry.-gap-16 .masonry__item.-big .ratio {
  padding-bottom: 100%;
}

.masonry.-gap-16 .masonry__item.-wide .ratio {
  padding-bottom: calc(50% - 0.5rem);
}

.masonry.-gap-16 .masonry__item .ratio.ratio-4-3 {
  padding-bottom: 75%;
}

.masonry.-gap-16 .masonry__item.-long .ratio.ratio-4-3 {
  padding-bottom: calc(150% + 1rem);
}

.masonry.-gap-16 .masonry__item.-big .ratio.ratio-4-3 {
  padding-bottom: 75%;
}

.masonry.-gap-16 .masonry__item.-wide .ratio.ratio-4-3 {
  padding-bottom: calc(37.5% - 0.5rem);
}


/*--------------------------------------------------
	LANDINGPAGE Startseite stukram
---------------------------------------------------*/
.fluid-container.-grid {
    padding-left: 70px;
    padding-right: 70px;
}
@media (max-width: 1229px) {
.fluid-container, .fluid-container.-content, .fluid-container.-grid {
    padding-left: 8vw;
    padding-right: 8vw;
  }
}
.work-section {
    padding-top: 180px;
    padding-bottom: 180px;
}
.work-grid {
    margin-left: calc(var(--work-grid-x-gap)/2*-1);
    margin-right: calc(var(--work-grid-x-gap)/2*-1);
}
.work-grid>* {
    padding-left: calc(var(--work-grid-x-gap)/2);
    padding-right: calc(var(--work-grid-x-gap)/2);
}
.work-grid>:nth-child(1n+4) {
    margin-top: var(--work-grid-vertical-margin);
}
@media (max-width: 991px) {
.work-grid>:nth-child(3n+2) {
    margin-top: 0;
    }
}
@media (max-width: 991px) {
.work-grid>:nth-child(2n+2) {
    margin-top: var(--work-grid-vertical-margin);
    }
}
@media (max-width: 767px) {
.work-grid>:nth-child(2n+2) {
    margin-top: 0;
    }
}
@media (max-width: 767px) {
.work-grid>:nth-child(1n+2) {
    padding-top: var(--work-grid-vertical-margin);
    }
.work-grid>:nth-child(1n+4) {
    margin-top: 0;
}
}

.workItem-content {
    text-align: center;
}
.workItem-img {
    overflow: hidden;
    position: relative;
    width: 100%;
    box-shadow: 0 2px 15px rgb(0 0 0 / 10%);
}
.workItem .workItem-img, .workItem .workItem-img-inner {
    transition: transform .5s cubic-bezier(.165,.84,.44,1);
}
.workItem:hover .workItem-img {
    transform: scale(.95);
}
.workItem-title {
    line-height: 1.3;
    font-weight: 600;
    letter-spacing: -.01em;
    font-size: 22px;
    margin-top: 24px;
}
.workItem .workItem-title {
    transition: color .5s cubic-bezier(.165,.84,.44,1),transform .5s cubic-bezier(.165,.84,.44,1);
}
.workItem:hover .workItem-title {
    transform: translateY(10px);
    color: var(--theme-color);
}
.s-work-content {
    text-align: center;
    margin-bottom: 92px;
}
.s-work-title {
    font-weight: 700;
    font-size: 52px;
    line-height: 1.3;
    letter-spacing: -.02em;
}
.s-work-text {
    margin-top: 16px;
    font-size: 18px;
    line-height: 1.7;
    color: rgba(0,0,0,.7);
}

/* 27. UI elements */
.ui-element__scroll {
  text-transform: none;
  letter-spacing: 0.01em;
  font-weight: 500;
}


.sliderMain.-type-2 .slider__img.-cover-dark-1::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.6);
}
.sliderMain.-type-2 .slider__img.-cover-dark-2::after {
    background-color: rgba(0, 0, 0, 0.5);
}
.sliderMain.-type-2 .slider__img.-cover-dark-3::after {
    background-color: rgba(0, 0, 0, 0.4);
}
.sliderMain.-type-2 .slider__img.-cover-dark-4::after {
    background-color: rgba(0, 0, 0, 0.3);
}

/* 30. Main slider type-1 */
.sliderMain.-type-1 .sliderMain__title {
  line-height: 0.95;
}
.sliderMain.-type-2.bottom .slider__content {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-flow: column;
    width: 100%;
    height: 100%;
    padding-bottom: 8rem;
}
.sliderMain__img.-cover-dark-1::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.6);
}
.sliderMain__img.-cover-dark-2::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.5);
}
.sliderMain__img.-cover-dark-3::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.4);
}
.sliderMain__img.-cover-dark-4::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.3);
}

.swiper-slide.slider-slide.-hover {
  transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);    
}
.swiper-slide.slider-slide.-hover:hover {
  transform: scale(1.1);
}


/* 33. Masthead base */
.masthead.-type-1 .masthead__img {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}
.masthead__img.-cover-dark::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.7);
}
.masthead__img.-cover-dark-1::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.6);
}
.masthead__img.-cover-dark-2::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.5);
}
.masthead__img.-cover-dark-3::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.4);
}
.masthead__img.-cover-dark-4::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.3);
}

/*--------------------------------------------------
	35. Masthead type-1
---------------------------------------------------*/
.masthead.-type-1.bottom {
  overflow: visible;
  display: flex;
  align-items: flex-end;
  height: 100vh;
  width: 100%;
  padding-bottom: 8rem;
}

.masthead.-type-1 .masthead__title {
  line-height: 1.02;
}
.masthead.-type-work-1 .masthead__title {
  line-height: 1.05;
  letter-spacing: -0.03em;
}
.sliderMain.-type-1.bottom .container-fluid {
  overflow: visible;
  display: flex;
  align-items: flex-end;
  height: 100vh;
  width: 100%;
  padding-bottom: 8rem;
}
@media (min-width: 992px) {
.sliderMain.-type-1.bottom .container-fluid.lg\:flex-center {
  overflow: visible;
  display: flex;
  align-items: center;
  height: 100vh;
  width: 100%;
  padding-bottom: 0rem;
  }
}
.sliderMain.-type-2 .slider__title {
  display: block;
  line-height: 1.02;
  letter-spacing: -0.03em;
  font-size: 5vw;
}

/* ImageGalerie */
.gslide-image img {
    max-height: 70vh;
}
@media (min-width: 769px) {
.gslide-image img {
    max-height: 70vh;
    }
}
/* Checkbox */
/* Customize the label (the container) */
.container-checkbox {
  display: block;
  position: relative;
  padding-left: 40px!important;
  margin-bottom: 12px;
  cursor: pointer;
  line-height: 1.3em;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

/* Hide the browser's default checkbox */
.container-checkbox input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}

/* Create a custom checkbox */
.checkmark-checkbox {
  position: absolute;
  top: 0;
  left: 0;
  height: 25px;
  width: 25px;
  background-color: #eee;
}
.checkmark-checkbox.-blackwhite {
  background-color: #FFF;
}

/* On mouse-over, add a grey background color */
.container-checkbox:hover input ~ .checkmark-checkbox {
  background-color: #ccc;
}

/* When the checkbox is checked, add a blue background */
.container-checkbox input:checked ~ .checkmark-checkbox {
  background-color: var(--accent-color);
}
.container-checkbox.-blackwhite input:checked ~ .checkmark-checkbox {
  background-color: #000;
}

/* Create the checkmark/indicator (hidden when not checked) */
.checkmark-checkbox:after {
  content: "";
  position: absolute;
  display: none;
}

/* Show the checkmark when checked */
.container-checkbox input:checked ~ .checkmark-checkbox:after {
  display: block;
}

/* Style the checkmark/indicator */
.container-checkbox .checkmark-checkbox:after {
  left: 8px;
  top: 0px;
  width: 10px;
  height: 18px;
  border: solid white;
  border-width: 0 3px 3px 0;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
} 

.container-checkbox label.error{
	margin-top: 10px;
}

form textarea[name="nachricht"] {
	height: 22.65rem;
    /*height: 20.35rem;*/
}

#cookieInfo{
	position: fixed;
	width: 100%;
	color: #ccc;	
	background: rgba(19, 20, 25, 0.9);
	z-index: 9999;
	bottom: 0;
}

#cookieContent{
	padding:10px;
	font-size:12px;
}

#cookieContent a.small{
	margin: 0;
	padding: 6px 11px;
	font-size: 12px;
} 

input.hideMe {
   position: absolute;
   top: -9999px;
   left: -9999px;
}
.footer .footer__bottom.-line {
    border-top: 1px solid rgba(0, 0, 0, 0.1);
}
.footer.bg-dark-1 .footer__bottom.-line {
    border-top: 1px solid rgba(255, 255, 255, 0.1);
}
.footer .footer__bottom .social__item{
	color: #000;
}
.footer.bg-dark-1 .footer__bottom p{
	color: var(--font-light);
}
.footer.bg-dark-1 .footer__bottom .social__item{
	color: #FFF;
}
.footer .footer__bottom .social__item:hover,
.footer.bg-dark-1 .footer__bottom .social__item:hover{
  color: var(--accent-color);
}
.footer.bg-gray-1 .footer__bottom.-line {
    border-top: 1px solid rgba(255, 255, 255, 0.1);
}
.footer.bg-gray-1 .footer__bottom p{
	color: var(--font-light);
}
.footer.bg-gray-1 .footer__bottom .social__item{
	color: #FFF;
}
.footer .footer__bottom .social__item:hover,
.footer.bg-gray-1 .footer__bottom .social__item:hover{
  color: var(--accent-color);
}


/*--------------------------------------------------
	14. Blog sidebar
---------------------------------------------------*/
/*--------------------------------------------------
	blogSidebar
---------------------------------------------------*/
.blogSidebar {
  padding-left: 4.875rem;
}

.blogSidebar.left {
    padding-left: 0;
    padding-right: 6rem;
    /*padding-right: 6.875rem;*/
}

@media (max-width: 991px) {
  .blogSidebar.left {
    padding-left: 0;
    padding-right: 3rem;
    margin-top: 0;
    margin-bottom: 5rem;
  }
}

.blogSidebar .widget_search .search__button .icon {
  width: 2rem;
  height: 2rem;
  stroke-width: 1.75;
}

.blogSidebar .widget_search .search__button:hover {
  color: black !important;
  transform: scale(120%);
  background: none;    
}

.blogSidebar label {
  display: inline-flex;
  align-items: baseline;
  margin-bottom: 0rem;
  line-height: 1.3 !important;
}

.blogPost.-single .blogPost__content p, .blogPost.-single .blogPost__content li, .blogPost.-single .blogPost__content figcaption, .blogPost.-single .blogPost__content cite, .blogPost.comments .blogPost__content .comments__text p {
  line-height: 1.5;
  letter-spacing: 0em;    
}
@media (max-width: 767px) {
    .blogPost.-single .blogPost__content p, .blogPost.-single .blogPost__content li, .blogPost.-single .blogPost__content figcaption, .blogPost.-single .blogPost__content cite {
    font-size: var(--text-base);
    }
}

.h-placeholder-header {
    margin-top: 6rem
}
@media (max-width: 767px) {
    .h-placeholder-header {
    margin-top: 3.75rem
    }
}

.h-full--header {
    height: calc( 100vh - 6rem )
}
@media (max-width: 767px) {
    .h-full--header {
    height: calc( 100vh - 3.75rem )
    }
}

.h-60vh {
  height: 60vh;
}
.h-50vh {
  height: 50vh;
}
.h-100 {
    height: 100%!important;
}
.h-90 {
    height: 90%!important;
}
.h-75 {
    height: 75% !important;
}
.h-60 {
    height: 60%!important;
}
.h-50 {
    height: 50%!important;
}
@media (max-width: 1229px) {
  .lg\:h-unset {
    height: unset;
  }
  .lg\:h-70vh {
    height: 70vh;
  }
  .lg\:h-80vh {
    height: 80vh;
  }
  .lg\:h-90vh {
    height: 90vh;
  }
  .lg\:h-100vh {
    height: 100vh;
  }
}
@media (max-width: 991px) {
  .md\:h-40vh {
    height: 40vh;
  }     
  .md\:h-50vh {
    height: 50vh;
  }    
  .md\:h-60vh {
    height: 60vh;
  }
}
@media (max-width: 767px) {
  .sm\:h-unset {
    height: unset;
  }
  .sm\:h-40vh {
    height: 40vh;
  }    
  .sm\:h-50vh {
    height: 50vh;
  }
  .sm\:h-60vh {
    height: 60vh;
  }
  .sm\:h-70vh {
    height: 70vh;
  }
  .sm\:h-80vh {
    height: 80vh;
  }
  .sm\:h-90vh {
    height: 90vh;
  }
  .sm\:h-100vh {
    height: 100vh;
  }
}
.clientsItem.-hover:hover .clientsItem__img.-no-transform {
  transform: none;
}
.clientsItem__content.-hover-white {
  background-color: rgba(255, 255, 255, 0.85);
}
.clientsItem__content.-hover-black {
  background-color: rgba(0, 0, 0, 0.75);
}
.portfolioItem.-hover:hover .portfolioItem__img.-no-transform {
  transform: none;
}
.portfolioCard__content.-hover-white {
  background-color: rgba(255, 255, 255, 0.85);
}
.portfolioCard__content.-hover-black {
  background-color: rgba(0, 0, 0, 0.75);
}
.portfolioCard.-type-2 .portfolioCard__img-text {
  position: absolute;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.2);
  flex-direction: column;
  display: flex;
  /*justify-content: center;
  align-items: center;*/
  width: 100%;
  height: 100%;
}

.portfolioCard.-type-2 .portfolioCard__img-text a {
  position: relative;
  z-index: 4;
}

.portfolioCard.-type-2.-hover .portfolioCard__img-text {
  opacity: 1;
  transition: opacity 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.portfolioCard.-type-2.-hover .portfolioCard__img-text p,
.portfolioCard.-type-2.-hover .portfolioCard__img-text a {
  opacity: 1;
  transform: translateY(2rem);
  transition: opacity 0.4s cubic-bezier(0.165, 0.84, 0.44, 1), transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.portfolioCard.-type-2.-hover .portfolioCard__img-text h3 {
  opacity: 1;
  transform: translateY(2rem);
  transition: opacity 0.4s cubic-bezier(0.165, 0.84, 0.44, 1) 0.06s, transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1) 0.06s;
}

.portfolioCard.-type-2.-hover:hover .portfolioCard__img-text {
  opacity: 0;
}

.portfolioCard.-type-2.-hover:hover .portfolioCard__img-text a,
.portfolioCard.-type-2.-hover:hover .portfolioCard__img-text p,
.portfolioCard.-type-2.-hover:hover .portfolioCard__img-text h3 {
  opacity: 0;
  transform: none;
}

/* Profis der Region (Porto) */

.position-relative {
    position: relative!important;
}
.position-absolute {
    position: absolute!important;
}

/* Elements Shadow Icon */
.elements-list-shadow-icon {
	font-size: 64px;
	font-size: 4rem;
	position: absolute;
	top: -18px;
	opacity: 0.05;
	right: -18px;
}

/* Text Color Default */
.text-default,
.text-color-default {
	color: #777 !important;
}

/* Featured Box */
.featured-box {
	background: #FFF;
	box-sizing: border-box;
	border-bottom: 1px solid #DFDFDF;
	border-left: 1px solid #ECECEC;
	border-radius: 8px;
	border-right: 1px solid #ECECEC;
	box-shadow: 0 2px 4px 0px rgba(0, 0, 0, 0.05);
	margin-bottom: 20px;
	margin-left: auto;
	margin-right: auto;
	margin-top: 20px;
	min-height: 100px;
	position: relative;
	text-align: center;
	z-index: 1;
}

.featured-box h4 {
	font-size: 1.3em;
	font-weight: 400;
	letter-spacing: -0.7px;
	margin-top: 5px;
	margin-bottom: 5px;
}

.featured-box .box-content {
	border-radius: 8px;
	border-top: 1px solid rgba(0, 0, 0, 0.06);
	border-top-width: 4px;
	padding: 28.8px;
	padding: 1.8rem;
	position: relative;
}

.featured-box .box-content:not(.box-content-border-0) {
	top: -1px;
	border-top-width: 4px;
}

.featured-box .box-content.box-content-border-0 {
	border-top: 1px solid rgba(0, 0, 0, 0.06) !important;
	border-bottom: 0 !important;
}

.featured-box .box-content.box-content-border-bottom {
	top: 1px;
}

.featured-box .box-content-border-bottom {
	border-top: 1px solid rgba(0, 0, 0, 0.06) !important;
	border-bottom: 4px solid rgba(0, 0, 0, 0.06);
}

/* Featured Box Left */
.featured-box-text-left {
	text-align: left;
}

/* Featured Boxes - Flat */
.featured-boxes-flat .featured-box {
	box-shadow: none;
	margin: 10px 0;
}

.featured-boxes-flat .featured-box .box-content {
	background: #FFF;
	margin-top: 65px;
}

.featured-boxes-flat .featured-box .icon-featured {
	display: inline-block;
	font-size: 2em;
	height: 90px;
	line-height: 90px;
	padding: 0;
	width: 90px;
	margin: -100px 0 -15px;
	position: relative;
	top: -40px;
}

/* Featured Boxes - Style 2 */
.featured-boxes-style-2 .featured-box {
	background: none;
	border: 0;
	margin: 10px 0;
	box-shadow: none;
}

.featured-boxes-style-2 .featured-box .box-content {
	border: 0;
	padding-top: 0;
	padding-bottom: 0;
}

.featured-boxes-style-2 .featured-box .icon-featured {
	display: inline-block;
	font-size: 1.8em;
	height: 75px;
	line-height: 75px;
	padding: 0;
	width: 75px;
	margin-top: 0;
}

/* Featured Boxes - Style 3 */
.featured-boxes-style-3 .featured-box {
	margin: 10px 0;
}

.featured-boxes-style-3 .featured-box .icon-featured {
	display: inline-block;
	font-size: 1.8em;
	height: 75px;
	line-height: 75px;
	padding: 0;
	width: 75px;
	margin-top: -37px;
	top: -37px;
	background: #FFF;
	border: 2px solid rgba(0, 0, 0, 0.06);
	color: rgba(0, 0, 0, 0.06);
}

.featured-boxes-style-3:not(.featured-boxes-flat) .featured-box {
	background: none;
	border: 0;
	box-shadow: none;
}

.featured-boxes-style-3:not(.featured-boxes-flat) .featured-box .box-content {
	border: 0;
	padding-top: 0;
	padding-bottom: 0;
}

/* Featured Boxes - Style 4 */
.featured-boxes-style-4 .featured-box {
	background: none;
	border: 0;
	margin: 10px 0;
	box-shadow: none;
}

.featured-boxes-style-4 .featured-box .box-content {
	border: 0;
	padding-top: 0;
	padding-bottom: 0;
}

.featured-boxes-style-4 .featured-box .icon-featured {
	display: inline-block;
	font-size: 35px;
	height: 45px;
	line-height: 45px;
	padding: 0;
	width: 45px;
	margin-top: 0;
	margin-bottom: 10px;
	background: transparent;
	color: rgba(0, 0, 0, 0.06);
	border-radius: 0;
}

/* Featured Boxes - Style 5, 6 and 7 */
.featured-boxes-style-5 .featured-box, .featured-boxes-style-6 .featured-box, .featured-boxes-style-7 .featured-box {
	background: none;
	border: 0;
	box-shadow: none;
	margin: 10px 0;
}

.featured-boxes-style-5 .featured-box .box-content, .featured-boxes-style-6 .featured-box .box-content, .featured-boxes-style-7 .featured-box .box-content {
	border: 0;
	padding-top: 0;
	padding-bottom: 0;
}

.featured-boxes-style-5 .featured-box .box-content h4, .featured-boxes-style-6 .featured-box .box-content h4, .featured-boxes-style-7 .featured-box .box-content h4 {
	color: #333940;
}

.featured-boxes-style-5 .featured-box .icon-featured, .featured-boxes-style-6 .featured-box .icon-featured, .featured-boxes-style-7 .featured-box .icon-featured {
	display: inline-block;
	font-size: 2em;
	height: 75px;
	padding: 0;
	width: 75px;
	margin-top: 0;
	margin-bottom: 10px;
	background: #FFF;
	border: 1px solid #dfdfdf;
	color: #777;
	line-height: 73px;
}

/* Featured Boxes - Style 6 */
.featured-boxes-style-6 .featured-box .icon-featured {
	border: 1px solid #cecece;
	color: #777;
}

.featured-boxes-style-6 .featured-box .icon-featured:after {
	border: 5px solid #f7f7f7;
	border-radius: 50%;
	box-sizing: content-box;
	content: "";
	display: block;
	height: 100%;
	left: -6px;
	padding: 1px;
	position: absolute;
	top: -6px;
	width: 100%;
}

/* Featured Boxes - Style 7 */
.featured-boxes-style-7 .featured-box .icon-featured {
	border: 1px solid #dfdfdf;
	color: #777;
}

/* Featured Boxes - Style 8 */
.featured-boxes-style-8 .featured-box .icon-featured {
	display: inline-block;
	font-size: 2em;
	height: 75px;
	padding: 0;
	width: 75px;
	margin: -15px -15px 0 0;
	background: #FFF;
	line-height: 75px;
	border: 0;
	color: #777;
}

.featured-boxes-style-8 .featured-box .icon-featured:after {
	display: none;
}

/* Featured Boxes Modern */
.featured-boxes-modern-style-1 .featured-box {
	position: relative;
	overflow: hidden;
	border-radius: 0;
	height: auto !important;
	margin: 0 !important;
}

.featured-boxes-modern-style-1 .featured-box .featured-box-background {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	transition: cubic-bezier(0.39, 0.66, 0.42, 0.99) all 2s;
	transform: scale(1);
}

.featured-boxes-modern-style-1 .featured-box .box-content {
	padding: 64px;
	padding: 4rem;
	border: none;
	z-index: 3;
}

.featured-boxes-modern-style-1 .featured-box .box-content .icon-featured {
	color: #FFF;
	background: transparent;
	width: auto;
	height: auto;
	line-height: 1.4;
	font-size: 46.4px;
	font-size: 2.9rem;
	margin: 0 0 16px;
	margin: 0 0 1rem;
}

.featured-boxes-modern-style-1 .featured-box .box-content h2 {
	color: #FFF;
	font-weight: 600;
	font-size: 19.2px;
	font-size: 1.2rem;
	line-height: 1.3;
	margin-bottom: 11.2px;
	margin-bottom: 0.7rem;
}

.featured-boxes-modern-style-1 .featured-box .box-content p {
	color: #999;
	margin-bottom: 25.6px;
	margin-bottom: 1.6rem;
}

.featured-boxes-modern-style-1 .featured-box:hover .featured-box-background {
	transform: scale(1.1);
}

@media (max-width: 575px) {
	.featured-boxes-modern-style-1 .featured-box .box-content {
		padding: 2rem 1.5rem;
	}
}

.featured-boxes-modern-style-2 .featured-box {
	position: relative;
	background: var(--accent-color);
	/*background: linear-gradient(135deg, #6c6ef1 0%, #e2498e 100%);*/
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#6c6ef1', endColorstr='#e2498e', GradientType=1 );
	border-radius: 0;
	margin: 0 !important;
	overflow: hidden;
    height: 100%;
}

.featured-boxes-modern-style-2 .featured-box:before {
	content: '';
	position: absolute;
	top: 8px;
	right: 8px;
	bottom: 8px;
	left: 8px;
	background: #FFF;
}

.featured-boxes-modern-style-2 .featured-box .box-content {
	padding: 64px;
	padding: 4rem;
	border: none;
}

.featured-boxes-modern-style-2 .featured-box .box-content .icon-featured {
	color: #FFF;
	background: transparent;
	width: auto;
	height: auto;
	line-height: 1.4;
	font-size: 46.4px;
	font-size: 2.9rem;
	margin: 0 0 16px;
	margin: 0 0 1rem;
}

.featured-boxes-modern-style-2 .featured-box .box-content h2 {
	color: #212529;
	font-weight: 700;
	font-size: 19.2px;
	font-size: 1.2rem;
	line-height: 1.3;
	margin-bottom: 11.2px;
	margin-bottom: 0.7rem;
}

.featured-boxes-modern-style-2 .featured-box .box-content p {
	/*color: #999;*/
	margin-bottom: 25.6px;
	margin-bottom: 1.6rem;
}

@media (max-width: 575px) {
	.featured-boxes-modern-style-2 .featured-box .box-content {
		padding: 2rem 1.5rem;
	}
}

.featured-boxes-modern-style-2-hover-only .featured-box:before {
	top: 1px;
	right: 1px;
	bottom: 1px;
	left: 1px;
	transition: cubic-bezier(0.39, 0.66, 0.42, 0.99) all 200ms;
}

.featured-boxes-modern-style-2-hover-only:not(:hover) .featured-box {
	background: rgba(0, 0, 0, 0.06) !important;
	box-shadow: none;
	border: 0;
}

.featured-boxes-modern-style-2-hover-only:not(:hover) .featured-box-no-borders {
	background: none !important;
}

.featured-boxes-modern-style-2-hover-only:not(:hover) .featured-box-box-shadow {
	box-shadow: 0px 1px 0px 0px rgba(0, 0, 0, 0.1);
}

.featured-boxes-modern-style-2-hover-only:hover .featured-box:before {
	top: 5px;
	right: 5px;
	bottom: 5px;
	left: 5px;
}

/* Featured Boxes */
.featured-boxes {
	position: relative;
    display: flex;
    flex-direction: column;
    height: 100%;
}
.featured-boxes .featured-box {
	margin-bottom: 24px;
	margin-bottom: 1.5rem;
	margin-top: 24px;
	margin-top: 1.5rem;
}

.border-nocolor {
  border: 1px transparent !important;
}

.boxteaser {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: bottom;
  position: relative;
  border-radius: 0;
  /*color: #FFF;*/    
}
.boxteaser.-hover-accent:hover {
  background-color: var(--accent-color);  
}
.boxteaser.-hover-dark-5:hover {
  background-color: var(--bg-dark-5);
}

.topic .boxteaser {
  word-break: break-word;
}
.boxteaser__dim {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-image: linear-gradient(208deg,rgba(0,0,0,.25),rgba(0,0,0,.91));
  border-radius: 0;
}
.boxteaser--no-br, .boxteaser--no-br .boxteaser__dim {
  border-radius: 0;
}
.boxteaser__content {
  padding: 40px;
  position: relative;
  z-index: 1;
  min-height: 210px;
  display: flex;
  flex-direction: column;
}
.boxteaser--centered .boxteaser__content {
  display: flex;
  /*justify-content: center;*/
  align-items: center;
  flex-direction: row;
}
.topic .boxteaser__content {
  min-height: 158px;
}
@media (min-width: 768px) {
  .topic .boxteaser__content {
    min-height: 210px;
  }
}
.boxteaser__icon-left {
  height: 36px;
}
.boxteaser--centered .boxteaser__icon-left {
  padding-right: 16px;
}
.topic .boxteaser__icon-left {
  transition: transform .5s;
}
.boxteaser__header {
  flex-direction: row;
  display: flex;
  justify-content: space-between;
}
.boxteaser__title {
  min-height: 2.2em;
  font-size: var(--text-3xl);
  letter-spacing: -0.025em;
  font-weight: 700;
  line-height: 1;
  display: inline-block;
  margin-right: 24px;
      
}
.boxteaser--centered .boxteaser__title {
  min-height: 1px;
}
.boxteaser__list {
  margin-top: 20px;
  margin-bottom: 18px;
}
.boxteaser__full-link {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.gs-box {
  /*background: #fff;*/
}
.gs-box:hover {
  background: #000;
}
.gs-box.-hover-white:hover {
  background: #FFF;
}
.gs-box--pxs {
  padding: 3px;
}

.branchenseiten__grid {
  display: grid;
  grid-template-columns: 1fr;
  grid-gap: 28px;
}
@media (min-width: 768px) {
  .branchenseiten__grid {
    /*grid-gap: 24px;*/
    grid-gap: 32px;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
  }
}
@media (min-width: 768px) {
  @supports (display:grid) {
    .branchenseiten__grid {
      display: grid;
      grid-template-columns: 1fr 1fr;
      /*grid-gap: 24px;*/
      grid-gap: 32px;
      grid-auto-flow: dense;
    }
  }
}
@media (min-width: 996px) {
  .branchenseiten__grid {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
  }
}
@media (min-width: 996px) {
  @supports (display:grid) {
    .branchenseiten__grid {
      display: grid;
      grid-template-columns: 1fr 1fr 1fr;
      grid-auto-flow: dense;
    }
  }
}
@media (min-width: 768px) {
  .branchenseiten__grid-item {
    width: 50%;
    padding: 12px;
  }
}
@media (min-width: 768px) {
  @supports (display:grid) {
    .branchenseiten__grid-item {
      width: inherit;
      padding: 0;
    }
  }
}
@media (min-width: 996px) {
  .branchenseiten__grid-item {
    width: 33%;
    padding: 12px;
  }
}
@media (min-width: 996px) {
  @supports (display:grid) {
    .branchenseiten__grid-item {
      width: inherit;
      padding: 0;
    }
  }
}
@media (min-width: 768px) {
  @supports (display:grid) {
    .branchenseiten__grid-item:last-child:nth-child(2n+1) {
      grid-column: span 2;
    }
  }
}
@media (min-width: 996px) {
  @supports (display:grid) {
    .branchenseiten__grid-item:last-child:nth-child(2n+1) {
      grid-column: span 1;
    }
  }
}
@media (min-width: 996px) {
  @supports (display:grid) {
    .branchenseiten__grid-item:last-child:nth-child(3n-1) {
      grid-column: span 2;
    }
  }
}

.border-none {
  border: none;
}

.profi-detail {
    opacity: 0;
}